/* ============================================================
   motion.css — motion safety + hints
   Initial reveal states are set in JS (gsap.set) so that if the
   GSAP CDN ever fails, all content stays fully visible (graceful).
   ============================================================ */

[data-parallax] { will-change: transform; }
.brandcard, .btn { will-change: transform; }

/* Hero entrance choreography happens in JS; give the video a calm settle */
.hero__video { will-change: transform; }

/* Reduced motion: kill all non-essential animation, reveal everything */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
    scroll-behavior: auto !important;
  }
  [data-reveal] { opacity: 1 !important; transform: none !important; }
  .hero__scroll-line::after { display: none; }
  /* still allow looping hero video; users who want it stopped can pause via OS */
}
