/* Generated by motion-apply.mjs -- DO NOT EDIT BY HAND. Source: _motion/motion.json
 * Non-destructive motion overlay (ADR 0026). Tier-1 CSS motion only here;
 * tier-2 runtime hooks live in site.motion.js. Reduced-motion guarded.
 */
:root{
  --mo-fast:150ms; --mo-base:250ms; --mo-slow:450ms;
  --mo-ease-spring:linear(0, 0.013, 0.048, 0.097, 0.156, 0.22, 0.286, 0.353, 0.417, 0.479, 0.538, 0.592, 0.642, 0.687, 0.728, 0.765, 0.798, 0.826, 0.852, 0.874, 0.894, 0.911, 0.925, 0.938, 0.948, 0.958, 0.965, 0.972, 0.977, 0.982, 0.985, 0.989, 0.991, 0.993, 0.995, 0.996);            /* MUTED spring, settle 425ms */
  --mo-ease-out:cubic-bezier(0.22,1,0.36,1);
  --mo-rise:16px;
}

/* Reduced-motion guard (the ONLY place !important is permitted -- a11y reset). */
@media (prefers-reduced-motion: reduce){
  html.mo-js .mo-reveal,
  html.mo-js .mo-stagger > *{ opacity:1 !important; transform:none !important; transition:none !important; }
  [class*="mo-"]{ animation:none !important; }
}

/* Scroll-reveal utilities. Hidden state applies ONLY when site.motion.js has
 * added html.mo-js -- so no-JS visitors always see content (no-JS-safe). */
@media (prefers-reduced-motion: no-preference){
  html.mo-js .mo-reveal:not(.mo-stagger){ opacity:0; transform:translateY(var(--mo-rise)); transition:opacity var(--mo-slow) ease, transform var(--mo-slow) var(--mo-ease-spring); will-change:opacity,transform; }
  html.mo-js .mo-reveal:not(.mo-stagger).mo-in{ opacity:1; transform:none; }
  html.mo-js .mo-reveal.mo-fade:not(.mo-stagger){ transform:none; }
  html.mo-js .mo-reveal.mo-scale:not(.mo-stagger){ transform:scale(0.96); }
  html.mo-js .mo-reveal.mo-scale:not(.mo-stagger).mo-in{ transform:none; }
  html.mo-js .mo-stagger > *{ opacity:0; transform:translateY(var(--mo-rise)); transition:opacity var(--mo-slow) ease, transform var(--mo-slow) var(--mo-ease-spring); will-change:opacity,transform; }
  html.mo-js .mo-stagger > *.mo-in{ opacity:1; transform:none; }
}
html.mo-js .mo-b0a77d{ --mo-rise:18px; }
html.mo-js .mo-fe8b38{ --mo-rise:22px; }
html.mo-js .mo-8bd1be{ --mo-rise:16px; }
