/* Text Line Reveal — masked line lift on scroll */

.text-reveal .line {
  display: block;
  overflow: hidden;
  padding-bottom: 0.15rem;
}

.text-reveal .line > span {
  display: block;
  transform: translateY(110%);
}

.text-reveal.is-visible .line > span {
  animation: text-line-lift 760ms var(--ease-editorial) forwards;
  animation-delay: calc(var(--i) * 90ms);
}

@keyframes text-line-lift {
  to {
    transform: translateY(0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .text-reveal .line > span {
    transform: none;
    animation: none;
  }
}
