/* Only content entering the viewport moves; chapter backdrops stay still. */
@media (prefers-reduced-motion: no-preference) {
  .scroll-reveal {
    transition: opacity 760ms ease, transform 900ms cubic-bezier(.22, 1, .36, 1);
    transition-delay: var(--reveal-delay, 0ms);
  }
  .scroll-reveal.is-pending {
    opacity: 0;
    transform: translate3d(0, 36px, 0);
  }
  .scroll-reveal:focus-within {
    opacity: 1;
    transform: none;
    transition-delay: 0ms;
  }
}
@media (max-width: 640px) and (prefers-reduced-motion: no-preference) {
  .scroll-reveal.is-pending { transform: translate3d(0, 22px, 0); }
}
