.text-type__accessible {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0, 0, 0, 0); clip-path: inset(50%);
  white-space: nowrap; border: 0; user-select: none;
}
.text-type__word { white-space: nowrap; }
.hero-description-line { display: block; }
.text-type__char { position: relative; visibility: hidden; }
.text-type__char.is-typed { visibility: visible; }
.text-type__char.is-current::after {
  content: ''; position: absolute; left: calc(100% + .04em); top: .04em;
  width: max(1px, .035em); height: .94em; background: currentColor;
  visibility: visible; pointer-events: none;
  animation: text-type-cursor 1s ease-in-out infinite;
}
.text-type__char.is-current:not(.is-typed)::after { left: 0; }
@keyframes text-type-cursor { 0%, 100% { opacity: .9; } 50% { opacity: .12; } }
@media (prefers-reduced-motion: reduce) {
  .text-type__char { visibility: visible; }
  .text-type__char.is-current::after { display: none; }
}
