[class*='hint--'] {
  position: relative;
  display: inline-block;
}
[class*='hint--']:before,
[class*='hint--']:after {
  position: absolute;
  transform: translate3d(0, 0, 0);
  visibility: hidden;
  opacity: 0;
  z-index: 1000000;
  pointer-events: none;
  transition: 0.3s ease;
  transition-delay: 0ms;
}
[class*='hint--']:hover:before,
[class*='hint--']:hover:after {
  visibility: visible;
  opacity: 1;
}
[class*='hint--']:hover:before,
[class*='hint--']:hover:after {
  transition-delay: 100ms;
}
[class*='hint--']:before {
  content: '';
  position: absolute;
  background: transparent;
  border: 6px solid transparent;
  background-color: #272727 !important;
  border-color: #272727 !important;
  clip-path: polygon(0% 0%, 100% 0%, 100% 100%);
  z-index: 1000001;
}
[class*='hint--']:after {
  background: #272727 !important;
  color: white;
  padding: 8px 10px;
  font-size: 12px !important;
  font-family: 'Nunito', sans-serif !important;
  min-width: 220px !important;
  max-width: 410px !important;
  line-height: 16px !important;
  text-align: center;
}
[class*='hint--'][aria-label]:after {
  content: attr(aria-label);
}
[class*='hint--'][data-hint]:after {
  content: attr(data-hint);
}

[aria-label='']:before,
[aria-label='']:after,
[data-hint='']:before,
[data-hint='']:after {
  display: none !important;
}
.hint--top {
  --rotation: 135deg;
}
.hint--top:before {
  margin-bottom: -5.5px;
  transform: rotate(var(--rotation));
}
.hint--top:before,
.hint--top:after {
  bottom: 100%;
  left: 50%;
}
.hint--top:before {
  left: calc(50% - 6px);
}
.hint--top:after {
  transform: translateX(-50%);
}
.hint--top:hover:before {
  transform: translateY(-8px) rotate(var(--rotation));
}
.hint--top:hover:after {
  transform: translateX(-50%) translateY(-8px);
}
.hint--bottom {
  --rotation: -45deg;
}
.hint--bottom:before {
  margin-top: -5.5px;
  transform: rotate(var(--rotation));
}
.hint--bottom:before,
.hint--bottom:after {
  top: 100%;
  left: 50%;
}
.hint--bottom:before {
  left: calc(50% - 6px);
}
.hint--bottom:after {
  transform: translateX(-50%);
}
.hint--bottom:hover:before {
  transform: translateY(8px) rotate(var(--rotation));
}
.hint--bottom:hover:after {
  transform: translateX(-50%) translateY(8px);
}
.hint--right {
  --rotation: -135deg;
}
.hint--right:before {
  margin-left: -5.5px;
  margin-bottom: -6px;
  transform: rotate(var(--rotation));
}
.hint--right:after {
  margin-bottom: calc(-1 * (1rem + 16px) / 2);
}
.hint--right:before,
.hint--right:after {
  left: 100%;
  bottom: 50%;
}
.hint--right:hover:before {
  transform: translateX(8px) rotate(var(--rotation));
}
.hint--right:hover:after {
  transform: translateX(8px);
}
.hint--left {
  --rotation: 45deg;
}
.hint--left:before {
  margin-right: -5.5px;
  margin-bottom: -6px;
  transform: rotate(var(--rotation));
}
.hint--left:after {
  margin-bottom: calc(-1 * (1rem + 16px) / 2);
}
.hint--left:before,
.hint--left:after {
  right: 100%;
  bottom: 50%;
}
.hint--left:hover:before {
  transform: translateX(-8px) rotate(var(--rotation));
}
.hint--left:hover:after {
  transform: translateX(-8px);
}
.hint--top-left {
  --rotation: 135deg;
}
.hint--top-left:before {
  margin-bottom: -5.5px;
  transform: rotate(var(--rotation));
}
.hint--top-left:before,
.hint--top-left:after {
  bottom: 100%;
  left: 50%;
}
.hint--top-left:before {
  left: calc(50% - 6px);
}
.hint--top-left:after {
  transform: translateX(-100%);
}
.hint--top-left:after {
  margin-left: 12px;
}
.hint--top-left:hover:before {
  transform: translateY(-8px) rotate(var(--rotation));
}
.hint--top-left:hover:after {
  transform: translateX(-100%) translateY(-8px);
}
.hint--top-right {
  --rotation: 135deg;
}
.hint--top-right:before {
  margin-bottom: -5.5px;
  transform: rotate(var(--rotation));
}
.hint--top-right:before,
.hint--top-right:after {
  bottom: 100%;
  left: 50%;
}
.hint--top-right:before {
  left: calc(50% - 6px);
}
.hint--top-right:after {
  transform: translateX(0);
}
.hint--top-right:after {
  margin-left: -12px;
}
.hint--top-right:hover:before {
  transform: translateY(-8px) rotate(var(--rotation));
}
.hint--top-right:hover:after {
  transform: translateY(-8px);
}
.hint--bottom-left {
  --rotation: -45deg;
}
.hint--bottom-left:before {
  margin-top: -5.5px;
  transform: rotate(var(--rotation));
}
.hint--bottom-left:before,
.hint--bottom-left:after {
  top: 100%;
  left: 50%;
}
.hint--bottom-left:before {
  left: calc(50% - 6px);
}
.hint--bottom-left:after {
  transform: translateX(-100%);
}
.hint--bottom-left:after {
  margin-left: 12px;
}
.hint--bottom-left:hover:before {
  transform: translateY(8px) rotate(var(--rotation));
}
.hint--bottom-left:hover:after {
  transform: translateX(-100%) translateY(8px);
}
.hint--bottom-right {
  --rotation: -45deg;
}
.hint--bottom-right:before {
  margin-top: -5.5px;
  transform: rotate(var(--rotation));
}
.hint--bottom-right:before,
.hint--bottom-right:after {
  top: 100%;
  left: 50%;
}
.hint--bottom-right:before {
  left: calc(50% - 6px);
}
.hint--bottom-right:after {
  transform: translateX(0);
}
.hint--bottom-right:after {
  margin-left: -12px;
}
.hint--bottom-right:hover:before {
  transform: translateY(8px) rotate(var(--rotation));
}
.hint--bottom-right:hover:after {
  transform: translateY(8px);
}
.hint--small:after,
.hint--medium:after,
.hint--large:after,
.hint--fit:after {
  box-sizing: border-box;
  white-space: normal;
  line-height: 1.4em;
  word-wrap: break-word;
}

.hint--small:after {
  width: 80px;
}

.hint--medium:after {
  width: 150px;
}

.hint--large:after {
  width: 300px;
}

.hint--fit:after {
  width: 100%;
}
[class*='hint--']:after {
  text-shadow: 0 1px 0px black;
  box-shadow: 4px 4px 8px rgba(0, 0, 0, 0.3);
}
.hint--error:after {
  background-color: hsl(1, 40%, 50%);
  text-shadow: 0 1px 0px #592726;
}
.hint--error:before {
  background-color: hsl(1, 40%, 50%);
}

/**
 * Warning
 */
.hint--warning:after {
  background-color: hsl(38, 46%, 54%);
  text-shadow: 0 1px 0px #6c5328;
}
.hint--warning:before {
  background-color: hsl(38, 46%, 54%);
}
.hint--info:after {
  background-color: hsl(200, 50%, 45%);
  text-shadow: 0 1px 0px #1a3c4d;
}
.hint--info:before {
  background-color: hsl(200, 50%, 45%);
}
.hint--success:after {
  background-color: hsl(121, 32%, 40%);
  text-shadow: 0 1px 0px #1a321a;
}
.hint--success:before {
  background-color: hsl(121, 32%, 40%);
}
.hint--always:after,
.hint--always:before {
  opacity: 1;
  visibility: visible;
}
.hint--always.hint--top:before {
  transform: translateY(-8px) rotate(var(--rotation));
}
.hint--always.hint--top:after {
  transform: translateX(-50%) translateY(-8px);
}
.hint--always.hint--top-left:before {
  transform: translateY(-8px) rotate(var(--rotation));
}
.hint--always.hint--top-left:after {
  transform: translateX(-100%) translateY(-8px);
}
.hint--always.hint--top-right:before {
  transform: translateY(-8px) rotate(var(--rotation));
}
.hint--always.hint--top-right:after {
  transform: translateY(-8px);
}
.hint--always.hint--bottom:before {
  transform: translateY(8px) rotate(var(--rotation));
}
.hint--always.hint--bottom:after {
  transform: translateX(-50%) translateY(8px);
}
.hint--always.hint--bottom-left:before {
  transform: translateY(8px) rotate(var(--rotation));
}
.hint--always.hint--bottom-left:after {
  transform: translateX(-100%) translateY(8px);
}
.hint--always.hint--bottom-right:before {
  transform: translateY(8px) rotate(var(--rotation));
}
.hint--always.hint--bottom-right:after {
  transform: translateY(8px);
}
.hint--always.hint--left:before {
  transform: translateX(-8px) rotate(var(--rotation));
}
.hint--always.hint--left:after {
  transform: translateX(-8px);
}
.hint--always.hint--right:before {
  transform: translateX(8px) rotate(var(--rotation));
}
.hint--always.hint--right:after {
  transform: translateX(8px);
}
.hint--rounded:before {
  border-radius: 0 4px 0 0;
}
.hint--rounded:after {
  border-radius: 4px;
}
.hint--no-animate:before,
.hint--no-animate:after {
  transition-duration: 0ms;
}
.hint--bounce:before,
.hint--bounce:after {
  transition:
    opacity 0.3s ease,
    visibility 0.3s ease,
    transform 0.3s cubic-bezier(0.71, 1.7, 0.77, 1.24);
}
@supports (transition-timing-function: linear(0, 1)) {
  .hint--bounce:before,
  .hint--bounce:after {
    --spring-easing: linear(
      0,
      0.009,
      0.035 2.1%,
      0.141 4.4%,
      0.723 12.9%,
      0.938,
      1.077 20.4%,
      1.121,
      1.149 24.3%,
      1.159,
      1.163 27%,
      1.154,
      1.129 32.8%,
      1.051 39.6%,
      1.017 43.1%,
      0.991,
      0.977 51%,
      0.975 57.1%,
      0.997 69.8%,
      1.003 76.9%,
      1
    );
    transition:
      opacity 0.3s ease,
      visibility 0.3s ease,
      transform 0.5s var(--spring-easing);
  }
}
.hint--no-shadow:before,
.hint--no-shadow:after {
  text-shadow: initial;
  box-shadow: initial;
}
.hint--no-arrow:before {
  display: none;
}
.hint--bottom-left:before,
.hint--bottom-right:before,
.hint--bottom:before {
  border-bottom-color: #272727;
}
[class*='hint--']:after {
  background: #272727;
}
.hint--bottom:hover:after {
  -webkit-transform: translateX(-50%) translateY(8px);
  -moz-transform: translateX(-50%) translateY(8px);
  transform: translateX(-50%) translateY(8px);
  font-size: 10px;
  font-weight: 400;
  width: 180px;
  white-space: pre-line;
  text-align: center;
}
.hint--bottom:after,
.hint--bottom:before {
  top: 60%;
}