/* Visible without JS; only observer-enhanced elements begin hidden. */
.scroll-reveal {
  opacity: 0;
  translate: 0 26px;
  transition: opacity 650ms ease var(--reveal-delay, 0ms),
    translate 650ms cubic-bezier(.2,.75,.25,1) var(--reveal-delay, 0ms);
}
.scroll-reveal.is-revealed,
.scroll-reveal:focus-within {
  opacity: 1;
  translate: 0 0;
}
@media (prefers-reduced-motion: reduce) {
  .scroll-reveal { opacity: 1; translate: none; transition: none; }
}
@media print {
  .scroll-reveal { opacity: 1; translate: none; transition: none; }
}
