:root {
  --scroll-reveal-duration: 560ms;
  --scroll-reveal-distance: 16px;
  --scroll-reveal-stagger: 60ms;
  --scroll-reveal-ease: cubic-bezier(0.22, 1, 0.36, 1);
}

/* Only JavaScript can arm a block; without it all content remains visible. */
.scroll-reveal-pending { opacity: 0; }
.scroll-reveal-pending:focus-within { opacity: 1; }

@media (max-width: 52rem) {
  :root {
    --scroll-reveal-duration: 460ms;
    --scroll-reveal-distance: 10px;
  }
}

@media (prefers-reduced-motion: reduce), print {
  .scroll-reveal-pending { opacity: 1 !important; }
}
