/** --------------------------------------------------------------------

  A11Y Tool Tips

--------------------------------------------------------------------- */
.js .a11y-tip__help,
.no-js [role="tooltip"].a11y-tip__help, .js .a11y-tip__help:after,
.no-js [role="tooltip"].a11y-tip__help:after {
  opacity: 0;
  pointer-events: none;
  -webkit-transition: opacity 0.2s 1s ease-in-out, -webkit-transform 0.2s 1s ease-in-out;
          transition: opacity 0.2s 1s ease-in-out, transform 0.2s 1s ease-in-out;
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
  visibility: hidden;
}

.a11y-tip {
  display: inline-block;
  position: relative;
}
.a11y-tip__trigger[tabindex] {
  border-bottom: 1px dotted #666;
}
.a11y-tip__trigger[aria-describedby]:hover + .a11y-tip__help,
.a11y-tip__trigger[aria-describedby]:hover + .a11y-tip__help:after, .a11y-tip__trigger[aria-describedby]:focus + .a11y-tip__help,
.a11y-tip__trigger[aria-describedby]:focus + .a11y-tip__help:after {
  opacity: 1;
  pointer-events: auto;
  visibility: visible;
}
.a11y-tip__trigger[aria-describedby]:hover + .a11y-tip__help, .a11y-tip__trigger[aria-describedby]:hover + .a11y-tip__help:after, .a11y-tip__trigger[aria-describedby]:focus + .a11y-tip__help, .a11y-tip__trigger[aria-describedby]:focus + .a11y-tip__help:after {
  -webkit-transform: translate(-50%, 0px);
          transform: translate(-50%, 0px);
}
@media screen and (min-width: 41.25em) {
  .a11y-tip__trigger[aria-describedby]:hover + .a11y-tip__help--left, .a11y-tip__trigger[aria-describedby]:hover + .a11y-tip__help--left:after, .a11y-tip__trigger[aria-describedby]:focus + .a11y-tip__help--left, .a11y-tip__trigger[aria-describedby]:focus + .a11y-tip__help--left:after {
    -webkit-transform: translate(0px, -50%);
            transform: translate(0px, -50%);
  }
  .a11y-tip__trigger[aria-describedby]:hover + .a11y-tip__help--right, .a11y-tip__trigger[aria-describedby]:hover + .a11y-tip__help--right:after, .a11y-tip__trigger[aria-describedby]:focus + .a11y-tip__help--right, .a11y-tip__trigger[aria-describedby]:focus + .a11y-tip__help--right:after {
    -webkit-transform: translate(0px, -50%);
            transform: translate(0px, -50%);
  }
}
.a11y-tip--no-delay .a11y-tip__help,
.a11y-tip--no-delay .a11y-tip__help:after {
  -webkit-transition: opacity .2s ease-in-out, -webkit-transform .2s ease-in-out;
          transition: opacity .2s ease-in-out, transform .2s ease-in-out;
}

.js .a11y-tip__help,
.no-js [role="tooltip"].a11y-tip__help {
  background: rgba(255, 255, 255, 0.7);
  border-radius: 4px;
  color: #fff;
  font-size: 14px;
  left: 50%;
  margin-top: 12px;
  max-width: 400px;
  min-width: 220px;
  padding: .5em 1em;
  position: absolute;
  text-align: left;
  top: 100%;
  -webkit-transform: translate(-50%, 10px);
          transform: translate(-50%, 10px);
  width: 100%;
  z-index: 10;
}
.js .a11y-tip__help:after,
.no-js [role="tooltip"].a11y-tip__help:after {
  background: no-repeat url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="36px" height="12px"><path fill="rgba(255, 255, 255, 0.7)" transform="rotate(180 18 6)" d="M2.658,0.000 C-13.615,0.000 50.938,0.000 34.662,0.000 C28.662,0.000 23.035,12.002 18.660,12.002 C14.285,12.002 8.594,0.000 2.658,0.000 Z"/></svg>');
  background-size: 100% auto;
  height: 6px;
  width: 18px;
  bottom: 100%;
  content: '';
  left: 50%;
  margin-top: 6px;
  position: absolute;
  -webkit-transform: translate(-50%, 10px);
          transform: translate(-50%, 10px);
  z-index: 10;
}
.js .a11y-tip__help--top,
.no-js [role="tooltip"].a11y-tip__help--top {
  bottom: 100%;
  left: 50%;
  margin-bottom: 12px;
  -webkit-transform-origin: center top;
          transform-origin: center top;
  -webkit-transform: translate(-50%, 10px);
          transform: translate(-50%, 10px);
  margin-top: 0;
  top: auto;
}
.js .a11y-tip__help--top:after,
.no-js [role="tooltip"].a11y-tip__help--top:after {
  background: no-repeat url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="36px" height="12px"><path fill="rgba(255, 255, 255, 0.7)" transform="rotate(0)" d="M2.658,0.000 C-13.615,0.000 50.938,0.000 34.662,0.000 C28.662,0.000 23.035,12.002 18.660,12.002 C14.285,12.002 8.594,0.000 2.658,0.000 Z"/></svg>');
  background-size: 100% auto;
  height: 6px;
  width: 18px;
  left: 50%;
  margin-bottom: 6px;
  top: 100%;
  -webkit-transform-origin: center top;
          transform-origin: center top;
  -webkit-transform: translate(-50%, -10px);
          transform: translate(-50%, -10px);
  margin-top: 0;
}
@media screen and (min-width: 41.25em) {
  .js .a11y-tip__help--left,
  .no-js [role="tooltip"].a11y-tip__help--left {
    margin-right: 11px;
    right: 100%;
    top: 50%;
    -webkit-transform: translate(10px, -50%);
            transform: translate(10px, -50%);
    left: auto;
    margin-top: 0;
  }
  .js .a11y-tip__help--left:after,
  .no-js [role="tooltip"].a11y-tip__help--left:after {
    background: no-repeat url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="12px" height="36px"><path fill="rgba(255, 255, 255, 0.7)" transform="rotate(-90 18 18)" d="M2.658,0.000 C-13.615,0.000 50.938,0.000 34.662,0.000 C28.662,0.000 23.035,12.002 18.660,12.002 C14.285,12.002 8.594,0.000 2.658,0.000 Z"/></svg>');
    background-size: 100% auto;
    height: 18px;
    width: 6px;
    left: 100%;
    margin-right: 5px;
    top: 50%;
    -webkit-transform: translate(-10px, -50%);
            transform: translate(-10px, -50%);
    margin-top: 0;
  }
  .js .a11y-tip__help--right,
  .no-js [role="tooltip"].a11y-tip__help--right {
    left: 100%;
    margin-left: 11px;
    top: 50%;
    -webkit-transform: translate(10px, -50%);
            transform: translate(10px, -50%);
    margin-top: 0;
  }
  .js .a11y-tip__help--right:after,
  .no-js [role="tooltip"].a11y-tip__help--right:after {
    background: no-repeat url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="12px" height="36px"><path fill="rgba(255, 255, 255, 0.7)" transform="rotate(90 6 6)" d="M2.658,0.000 C-13.615,0.000 50.938,0.000 34.662,0.000 C28.662,0.000 23.035,12.002 18.660,12.002 C14.285,12.002 8.594,0.000 2.658,0.000 Z"/></svg>');
    background-size: 100% auto;
    height: 18px;
    width: 6px;
    margin-left: 5px;
    right: 100%;
    top: 50%;
    -webkit-transform: translate(10px, -50%);
            transform: translate(10px, -50%);
    bottom: auto;
    left: auto;
    margin-top: 0;
  }
}

.a11y-tip--hide .a11y-tip__help {
  display: none;
}

.no-js .a11y-tip__help:not([role]) {
  font-size: .85em;
}
.no-js .a11y-tip__help:not([role]):before {
  content: "(";
}
.no-js .a11y-tip__help:not([role]):after {
  content: ")";
}
