/* ==========================================================================
   apex-v2 motion — deliberately minimal. Transitions + one optional fade.
   No marquees, count-ups, radar sweeps, pings, or pulses.
   ========================================================================== */

/* single optional fade: applied by JS only (html.js), so JS-off renders complete */
html.js .reveal {
  opacity: 0;
  transform: translateY(6px);
  transition: opacity 400ms ease, transform 400ms ease;
}

html.js .reveal.is-visible {
  opacity: 1;
  transform: none;
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }

  html.js .reveal {
    opacity: 1;
    transform: none;
  }
}
