/* Approved motion-only layer. No production layout, color, type, or copy overrides. */
html.xlr-motion { scroll-behavior:smooth; }
body.xlr-motion { --motion-ease:cubic-bezier(.22,1,.36,1); }

body.xlr-motion .site-header {
  animation:xlrHeaderIn .72s var(--motion-ease) both;
  will-change:transform,opacity;
}

body.xlr-motion .hero-video {
  transform:scale(1.02);
  transform-origin:center 44%;
}
body.xlr-motion .hero-copy > p { animation:xlrSoftRise .7s .08s var(--motion-ease) both; }
body.xlr-motion .hero-copy > h1 { animation:xlrSoftRise .86s .16s var(--motion-ease) both; }
body.xlr-motion .hero-copy > span { animation:xlrSoftRise .82s .25s var(--motion-ease) both; }
body.xlr-motion .hero-copy > a { animation:xlrSoftRise .82s .32s var(--motion-ease) both; }

body.xlr-motion .primary-action,
body.xlr-motion .header-date,
body.xlr-motion .hero-copy > a,
body.xlr-motion .evolve-action button,
body.xlr-motion .apply-action,
body.xlr-motion .footer-primary button {
  transition:color .16s ease,background-color .16s ease,border-color .16s ease;
}
body.xlr-motion .primary-action:hover,
body.xlr-motion .header-date:hover,
body.xlr-motion .hero-copy > a:hover,
body.xlr-motion .evolve-action button:hover,
body.xlr-motion .apply-action:hover,
body.xlr-motion .footer-primary button:hover {
  transform:none;
  box-shadow:none;
}

body.xlr-motion.motion-page-enter .site-page { animation:xlrPageIn .42s var(--motion-ease) both; }
body.xlr-motion.motion-page-exit .site-page { animation:xlrPageOut .25s ease both; }

@keyframes xlrHeaderIn { from { opacity:0; transform:translateY(-18px); } to { opacity:1; transform:none; } }
@keyframes xlrSoftRise { from { opacity:0; transform:translateY(18px); } to { opacity:1; transform:none; } }
@keyframes xlrPageIn { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:none; } }
@keyframes xlrPageOut { to { opacity:0; transform:translateY(-8px); } }

@media(min-width:521px) {
  body.xlr-motion .site-header { animation-duration:.5s; }
  body.xlr-motion .hero-copy > p,
  body.xlr-motion .hero-copy > h1,
  body.xlr-motion .hero-copy > span,
  body.xlr-motion .hero-copy > a { animation-duration:.6s; }
  body.xlr-motion.motion-page-enter .site-page { animation-duration:.3s; }
}

@media(max-width:520px) {
  body.xlr-motion .hero-video { transform:scale(1.012); }
}

@media(prefers-reduced-motion:reduce) {
  html.xlr-motion { scroll-behavior:auto; }
  body.xlr-motion *,body.xlr-motion *::before,body.xlr-motion *::after { animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important; }
  body.xlr-motion .hero-video,body.xlr-motion .hero-copy { opacity:1 !important; filter:none !important; transform:none !important; }
}
