/* bdils.com motion tokens. Owner: Zephyrus.
   Extends Apollo's tokens.css (--bd-dur-*, --bd-ease-*, which stay the UI defaults).
   Every choreography value lives here under --bd-m-*. Themes override the SAME names
   under [data-theme="skeuomorph|postmodern|retro"]; the base block is Modern (default theme).
   Theme ids (Brian 2026-10-13): modern (v1), skeuomorph (v2), postmodern (v3), retro (v4). The v-numbers are history only.
   Rules:
   - Only transform, opacity and clip-path are animated by these tokens. Never height, top, box-shadow.
   - Reduced motion collapses every duration to 1ms (not 0, so animationend/transitionend still fire)
     and every distance to 0. Two triggers: the OS media query and [data-motion="reduced"] on <html>.
   - [data-motion="lite"] keeps the micro-interactions, cuts the ambient layer (drift, glint, parallax, autoplay).
   - Phones (pointer:coarse or <=860px) get the mobile block at the bottom. Hero is static there (locked). */

:root{
  /* ---- generic easings (adds to Apollo's five) ---- */
  --bd-m-ease-spring:cubic-bezier(.34,1.56,.64,1);   /* visible overshoot; v2 default, v1 uses it only on toggles */
  --bd-m-ease-drop:cubic-bezier(.2,.7,.2,1);         /* heavy object coming to rest */
  --bd-m-ease-step:cubic-bezier(.16,1,.3,1);         /* overwritten by steps(n) in v4 */

  /* 1. page load and hero entrance */
  --bd-m-hero-headline-dur:440ms;  --bd-m-hero-headline-ease:var(--bd-ease-out);  --bd-m-hero-headline-y:12px;
  --bd-m-hero-headline-stagger:55ms;                 /* per line */
  --bd-m-hero-piece-dur:400ms;     --bd-m-hero-piece-ease:var(--bd-m-ease-drop);   --bd-m-hero-piece-y:-28px;
  --bd-m-hero-piece-rot:-4deg;     --bd-m-hero-piece-stagger:14ms;  --bd-m-hero-piece-cap:700ms;   /* total stagger never exceeds cap */
  --bd-m-hero-piece-delay:180ms;                     /* pieces start after the first headline line is readable */
  --bd-m-nav-dur:280ms;            --bd-m-nav-delay:0ms;            --bd-m-nav-y:-8px;
  --bd-m-cta-dur:280ms;            --bd-m-cta-delay:320ms;          --bd-m-cta-stagger:45ms;  --bd-m-cta-y:6px;

  /* 2. scroll choreography */
  --bd-m-reveal-dur:360ms;   --bd-m-reveal-ease:var(--bd-ease-out);  --bd-m-reveal-y:12px;  --bd-m-reveal-scale:1;
  --bd-m-reveal-stagger:40ms; --bd-m-reveal-stagger-max:6;            /* items past the 6th share the last delay */
  --bd-m-reveal-threshold:0.18;                                        /* unitless; JS reads it for IntersectionObserver */
  --bd-m-hero-exit-scrim:0.55;        /* scrim opacity when hero is fully scrolled out */
  --bd-m-hero-exit-parallax:0.18;     /* bench moves 18% of scroll distance (CSS scroll-timeline) */
  --bd-m-hero-exit-scale:0.96;        /* bench scale at full exit */
  --bd-m-hero-exit-pieces:1;          /* 1 = pieces freeze in place and dim; 0 = pieces also parallax */
  --bd-m-nav-shrink-dur:var(--bd-dur-base); --bd-m-nav-shrink-ease:var(--bd-ease-standard);

  /* 3. logo wall */
  --bd-m-logo-in-dur:320ms;   --bd-m-logo-in-stagger:28ms;  --bd-m-logo-in-y:8px;  --bd-m-logo-in-ease:var(--bd-ease-out);
  --bd-m-logo-drift-dur:9000ms; --bd-m-logo-drift-amp:2px;  /* idle: +-2px vertical, per-mark phase offset */
  --bd-m-logo-hover-dur:160ms;  --bd-m-logo-hover-y:-2px;   --bd-m-logo-hover-ease:var(--bd-ease-out);
  --bd-m-logo-glint-dur:900ms;  --bd-m-logo-glint-every:6000ms; /* one mark at a time catches light */

  /* 4. expertise grid */
  --bd-m-tile-hover-dur:150ms;  --bd-m-tile-hover-y:-2px;  --bd-m-tile-hover-ease:var(--bd-ease-out);
  --bd-m-tile-press-scale:0.985; --bd-m-tile-press-dur:var(--bd-dur-instant);

  /* 5. quotes carousel */
  --bd-m-slide-dur:360ms;  --bd-m-slide-ease:var(--bd-ease-out);  --bd-m-slide-x:20px;  --bd-m-slide-rot:0deg;
  --bd-m-advance-every:7000ms;  --bd-m-dot-dur:var(--bd-dur-fast);

  /* 6. case cards, press, modal */
  --bd-m-card-hover-dur:180ms;  --bd-m-card-hover-y:-3px;  --bd-m-card-hover-ease:var(--bd-ease-out);
  --bd-m-press-dur:var(--bd-dur-instant);    --bd-m-press-scale:0.98;   --bd-m-press-ease:var(--bd-ease-press);
  --bd-m-press-release-dur:140ms; --bd-m-press-release-ease:var(--bd-ease-out);
  --bd-m-modal-in-dur:220ms;  --bd-m-modal-in-ease:var(--bd-ease-out);  --bd-m-modal-y:8px;  --bd-m-modal-scale:0.97;
  --bd-m-modal-out-dur:140ms; --bd-m-modal-out-ease:var(--bd-ease-in);
  --bd-m-scrim-dur:180ms;
  --bd-m-shake-dur:320ms;  --bd-m-shake-x:4px;  --bd-m-shake-ease:var(--bd-ease-standard);
  --bd-m-unlock-dur:360ms; --bd-m-unlock-ease:var(--bd-ease-out);  --bd-m-unlock-y:6px;

  /* 7. forms */
  --bd-m-focus-dur:var(--bd-dur-fast);  --bd-m-error-dur:var(--bd-dur-base);  --bd-m-error-y:-4px;
  --bd-m-submit-dur:var(--bd-dur-fast); --bd-m-success-dur:360ms;  --bd-m-success-ease:var(--bd-ease-out);

  /* 8. micro */
  --bd-m-toggle-dur:180ms;  --bd-m-toggle-ease:var(--bd-ease-settle);
  --bd-m-tab-dur:200ms;  --bd-m-tab-ease:var(--bd-ease-out);
  --bd-m-link-dur:200ms; --bd-m-mute-dur:var(--bd-dur-fast);
  --bd-m-cursor-lift-dur:120ms;  --bd-m-cursor-lift-scale:1.045;  /* hero hover, from r2 build */

  /* control bar (bottom centre, hero only) */
  --bd-m-bar-in-dur:300ms;  --bd-m-bar-in-ease:var(--bd-ease-out);  --bd-m-bar-out-dur:220ms;  --bd-m-bar-out-ease:var(--bd-ease-in);
  --bd-m-bar-y:120%;                   /* off-screen distance (percent of bar height plus margin) */
  --bd-m-bar-threshold:0.35;           /* bar visible while at least this fraction of the hero is in view */
  --bd-m-bar-stagger:40ms;             /* buttons settle one after another on return */
  --bd-m-shake-impulse:14;  --bd-m-shake-dur:420ms;  --bd-m-shake-spin:18deg;     /* hero: velocity px/step, demo: offset px */
  --bd-m-align-dur:520ms;   --bd-m-align-ease:var(--bd-m-ease-drop);  --bd-m-align-stagger:12ms;  --bd-m-align-cap:500ms;
  --bd-m-scatter-dur:640ms; --bd-m-scatter-ease:cubic-bezier(.1,.8,.3,1);  --bd-m-scatter-force:1.0;  --bd-m-scatter-spin:40deg;
  --bd-m-crazy-dur:3200ms;  --bd-m-crazy-rate:70ms;  --bd-m-crazy-settle:600ms;   /* one activation every rate ms, round-robin */

  /* theme switch */
  --bd-m-theme-dur:280ms;  --bd-m-theme-ease:var(--bd-ease-standard);  --bd-m-theme-cover:#efece5;  /* cover colour = target paper */

  /* frame stepping (retro only; 0 = continuous) and pixel grid snap (retro: logical px per device px, 0 = sub-pixel smooth) */
  --bd-m-steps:0;  --bd-m-pixel:0;
  /* Modern rule: sub-pixel smooth, ease-out everywhere, overshoot only on toggles, nothing over 440ms except ambient. */
}

/* ================= SKEUOMORPH (v2) EARLY-2010s: heavier, bouncy, glossy ================= */
[data-theme="skeuomorph"]{
  --bd-ease-settle:cubic-bezier(.34,1.56,.64,1);
  --bd-m-hero-headline-dur:640ms; --bd-m-hero-headline-y:26px; --bd-m-hero-headline-ease:var(--bd-m-ease-spring);
  --bd-m-hero-piece-dur:620ms; --bd-m-hero-piece-y:-60px; --bd-m-hero-piece-rot:-10deg; --bd-m-hero-piece-ease:cubic-bezier(.22,1.3,.36,1); --bd-m-hero-piece-stagger:24ms; --bd-m-hero-piece-cap:1100ms;
  --bd-m-cta-dur:480ms; --bd-m-cta-y:16px; --bd-m-cta-delay:520ms;
  --bd-m-reveal-dur:560ms; --bd-m-reveal-y:28px; --bd-m-reveal-scale:.96; --bd-m-reveal-ease:var(--bd-m-ease-spring); --bd-m-reveal-stagger:70ms;
  --bd-m-hero-exit-scrim:.4; --bd-m-hero-exit-parallax:.26; --bd-m-hero-exit-scale:.94;
  --bd-m-logo-in-dur:520ms; --bd-m-logo-in-y:18px; --bd-m-logo-in-ease:var(--bd-m-ease-spring); --bd-m-logo-in-stagger:45ms;
  --bd-m-logo-drift-amp:3px; --bd-m-logo-hover-y:-5px; --bd-m-logo-hover-dur:260ms; --bd-m-logo-hover-ease:var(--bd-m-ease-spring);
  --bd-m-logo-glint-dur:1200ms; --bd-m-logo-glint-every:5000ms;
  --bd-m-tile-hover-dur:260ms; --bd-m-tile-hover-y:-5px; --bd-m-tile-hover-ease:var(--bd-m-ease-spring); --bd-m-tile-press-scale:.97;
  --bd-m-slide-dur:560ms; --bd-m-slide-x:60px; --bd-m-slide-rot:4deg; --bd-m-slide-ease:cubic-bezier(.22,1.2,.36,1);
  --bd-m-card-hover-y:-7px; --bd-m-card-hover-dur:280ms; --bd-m-card-hover-ease:var(--bd-m-ease-spring);
  --bd-m-press-scale:.95; --bd-m-press-release-dur:260ms;
  --bd-m-modal-in-dur:420ms; --bd-m-modal-in-ease:cubic-bezier(.22,1.35,.36,1); --bd-m-modal-y:40px; --bd-m-modal-scale:.9;
  --bd-m-modal-out-dur:220ms; --bd-m-scrim-dur:320ms;
  --bd-m-shake-dur:480ms; --bd-m-shake-x:8px;
  --bd-m-unlock-dur:640ms; --bd-m-unlock-y:14px;
  --bd-m-toggle-dur:320ms; --bd-m-toggle-ease:var(--bd-m-ease-spring);
  --bd-m-theme-dur:440ms; --bd-m-theme-cover:#d8cfbf;
  --bd-m-bar-in-dur:520ms; --bd-m-bar-in-ease:var(--bd-m-ease-spring); --bd-m-bar-out-dur:280ms; --bd-m-bar-stagger:60ms;
  --bd-m-shake-impulse:18; --bd-m-shake-spin:26deg; --bd-m-align-dur:680ms; --bd-m-align-ease:var(--bd-m-ease-spring); --bd-m-scatter-dur:800ms; --bd-m-scatter-spin:60deg; --bd-m-crazy-rate:90ms;
}

/* ================= POSTMODERN (v3) EXPERIMENTAL: PROVISIONAL. Final values come from ================= */
/* Provisional language: weightless. Long ease-outs, things drift in from off-axis with a slight turn, nothing bounces. */
[data-theme="postmodern"]{
  --bd-m-hero-headline-dur:900ms; --bd-m-hero-headline-y:0px; --bd-m-hero-headline-ease:cubic-bezier(.1,.9,.2,1);
  --bd-m-hero-piece-dur:1100ms; --bd-m-hero-piece-y:40px; --bd-m-hero-piece-rot:14deg; --bd-m-hero-piece-ease:cubic-bezier(.1,.9,.2,1); --bd-m-hero-piece-stagger:30ms; --bd-m-hero-piece-cap:1400ms;
  --bd-m-reveal-dur:800ms; --bd-m-reveal-y:0px; --bd-m-reveal-scale:.92; --bd-m-reveal-ease:cubic-bezier(.1,.9,.2,1); --bd-m-reveal-stagger:40ms;
  --bd-m-hero-exit-scrim:.7; --bd-m-hero-exit-parallax:.4; --bd-m-hero-exit-scale:1.06; --bd-m-hero-exit-pieces:0;
  --bd-m-logo-in-dur:900ms; --bd-m-logo-in-y:0px; --bd-m-logo-drift-dur:14000ms; --bd-m-logo-drift-amp:6px;
  --bd-m-logo-hover-y:-8px; --bd-m-logo-hover-dur:500ms; --bd-m-logo-glint-dur:2400ms; --bd-m-logo-glint-every:4000ms;
  --bd-m-tile-hover-y:-6px; --bd-m-tile-hover-dur:500ms;
  --bd-m-slide-dur:900ms; --bd-m-slide-x:0px; --bd-m-slide-rot:0deg; --bd-m-slide-ease:cubic-bezier(.1,.9,.2,1);
  --bd-m-card-hover-y:-10px; --bd-m-card-hover-dur:600ms;
  --bd-m-modal-in-dur:700ms; --bd-m-modal-y:0px; --bd-m-modal-scale:.8; --bd-m-modal-in-ease:cubic-bezier(.1,.9,.2,1); --bd-m-modal-out-dur:300ms;
  --bd-m-shake-dur:360ms; --bd-m-shake-x:5px;
  --bd-m-unlock-dur:900ms; --bd-m-unlock-y:0px;
  --bd-m-theme-dur:600ms; --bd-m-theme-cover:#101014;
  --bd-m-bar-in-dur:800ms; --bd-m-bar-in-ease:cubic-bezier(.1,.9,.2,1); --bd-m-bar-out-dur:400ms; --bd-m-bar-stagger:30ms;
  --bd-m-shake-impulse:10; --bd-m-shake-dur:900ms; --bd-m-shake-spin:30deg; --bd-m-align-dur:1100ms; --bd-m-align-ease:cubic-bezier(.1,.9,.2,1); --bd-m-scatter-dur:1400ms; --bd-m-scatter-ease:cubic-bezier(.1,.9,.2,1); --bd-m-scatter-spin:90deg; --bd-m-crazy-rate:50ms; --bd-m-crazy-dur:4000ms;
}

/* ================= RETRO (v4) 16-BIT, SUPER MARIO WORLD CLASS UI: frame-stepped, no fades, hard offsets ================= */
[data-theme="retro"]{
  --bd-m-steps:4; --bd-m-pixel:4;  /* 4 device px per logical px at 1x (scale for DPR in JS); every travel value below is a multiple of 4 */
  --bd-ease-standard:steps(4,end); --bd-ease-out:steps(4,end); --bd-ease-in:steps(3,end); --bd-ease-press:steps(1,end); --bd-ease-settle:steps(3,end);
  --bd-m-hero-headline-dur:280ms; --bd-m-hero-headline-y:0px; --bd-m-hero-headline-ease:steps(4,end);
  --bd-m-hero-piece-dur:240ms; --bd-m-hero-piece-y:-24px; --bd-m-hero-piece-rot:0deg; --bd-m-hero-piece-ease:steps(3,end); --bd-m-hero-piece-stagger:40ms; --bd-m-hero-piece-cap:1200ms;
  --bd-m-nav-dur:120ms; --bd-m-cta-dur:160ms; --bd-m-cta-y:0px; --bd-m-cta-stagger:120ms;
  --bd-m-reveal-dur:240ms; --bd-m-reveal-y:8px; --bd-m-reveal-scale:1; --bd-m-reveal-ease:steps(3,end); --bd-m-reveal-stagger:80ms;
  --bd-m-hero-exit-scrim:.6; --bd-m-hero-exit-parallax:0; --bd-m-hero-exit-scale:1; --bd-m-hero-exit-pieces:1;
  --bd-m-nav-shrink-dur:1ms;
  --bd-m-logo-in-dur:160ms; --bd-m-logo-in-y:0px; --bd-m-logo-in-stagger:60ms; --bd-m-logo-in-ease:steps(2,end);
  --bd-m-logo-drift-amp:0px; --bd-m-logo-hover-y:-4px; --bd-m-logo-hover-dur:1ms; --bd-m-logo-glint-dur:400ms; --bd-m-logo-glint-every:4000ms;
  --bd-m-tile-hover-y:-4px; --bd-m-tile-hover-dur:1ms; --bd-m-tile-press-scale:1;
  --bd-m-slide-dur:200ms; --bd-m-slide-x:16px; --bd-m-slide-rot:0deg; --bd-m-slide-ease:steps(4,end);
  --bd-m-card-hover-y:-4px; --bd-m-card-hover-dur:1ms;
  --bd-m-press-dur:1ms; --bd-m-press-scale:1; --bd-m-press-release-dur:1ms;
  --bd-m-modal-in-dur:200ms; --bd-m-modal-in-ease:steps(5,end); --bd-m-modal-y:0px; --bd-m-modal-scale:.2; --bd-m-modal-out-dur:120ms; --bd-m-modal-out-ease:steps(3,end); --bd-m-scrim-dur:1ms;
  --bd-m-shake-dur:240ms; --bd-m-shake-x:4px; --bd-m-shake-ease:steps(6,end);
  --bd-m-unlock-dur:600ms; --bd-m-unlock-ease:steps(6,end); --bd-m-unlock-y:0px;
  --bd-m-focus-dur:1ms; --bd-m-error-dur:1ms; --bd-m-submit-dur:1ms; --bd-m-success-dur:480ms; --bd-m-success-ease:steps(4,end);
  --bd-m-toggle-dur:120ms; --bd-m-toggle-ease:steps(3,end); --bd-m-tab-dur:1ms; --bd-m-link-dur:1ms; --bd-m-mute-dur:1ms;
  --bd-m-cursor-lift-dur:1ms; --bd-m-cursor-lift-scale:1;
  --bd-m-theme-dur:360ms; --bd-m-theme-ease:steps(6,end); --bd-m-theme-cover:#0b0c10;
  --bd-m-bar-in-dur:200ms; --bd-m-bar-in-ease:steps(4,end); --bd-m-bar-out-dur:120ms; --bd-m-bar-out-ease:steps(2,end); --bd-m-bar-stagger:50ms;
  --bd-m-shake-impulse:16; --bd-m-shake-dur:300ms; --bd-m-shake-spin:0deg; --bd-m-align-dur:320ms; --bd-m-align-ease:steps(5,end); --bd-m-align-stagger:20ms; --bd-m-scatter-dur:400ms; --bd-m-scatter-ease:steps(6,end); --bd-m-scatter-spin:0deg; --bd-m-crazy-rate:60ms;
}

/* ================= REDUCED MOTION: same rules in every theme ================= */
/* Everything stays usable and visible. Durations 1ms so end events still fire. Distances 0. Ambient layer off (JS reads data-motion / media). */
@media (prefers-reduced-motion:reduce){:root{--bd-m-reduced:1}}
[data-motion="reduced"]{--bd-m-reduced:1}
@media (prefers-reduced-motion:reduce){:root,[data-theme]{
  --bd-m-hero-headline-dur:1ms;--bd-m-hero-piece-dur:1ms;--bd-m-nav-dur:1ms;--bd-m-cta-dur:1ms;--bd-m-reveal-dur:1ms;--bd-m-logo-in-dur:1ms;
  --bd-m-logo-drift-amp:0px;--bd-m-logo-glint-dur:1ms;--bd-m-logo-hover-dur:1ms;--bd-m-tile-hover-dur:1ms;--bd-m-slide-dur:1ms;--bd-m-card-hover-dur:1ms;
  --bd-m-press-dur:1ms;--bd-m-press-release-dur:1ms;--bd-m-modal-in-dur:1ms;--bd-m-modal-out-dur:1ms;--bd-m-scrim-dur:1ms;--bd-m-shake-dur:1ms;--bd-m-unlock-dur:1ms;
  --bd-m-focus-dur:1ms;--bd-m-error-dur:1ms;--bd-m-submit-dur:1ms;--bd-m-success-dur:1ms;--bd-m-toggle-dur:1ms;--bd-m-tab-dur:1ms;--bd-m-link-dur:1ms;--bd-m-mute-dur:1ms;--bd-m-cursor-lift-dur:1ms;--bd-m-theme-dur:1ms;--bd-m-nav-shrink-dur:1ms;
  --bd-m-hero-headline-y:0px;--bd-m-hero-piece-y:0px;--bd-m-hero-piece-rot:0deg;--bd-m-nav-y:0px;--bd-m-cta-y:0px;--bd-m-reveal-y:0px;--bd-m-reveal-scale:1;--bd-m-logo-in-y:0px;--bd-m-logo-hover-y:0px;--bd-m-tile-hover-y:0px;--bd-m-tile-press-scale:1;
  --bd-m-slide-x:0px;--bd-m-slide-rot:0deg;--bd-m-card-hover-y:0px;--bd-m-press-scale:1;--bd-m-modal-y:0px;--bd-m-modal-scale:1;--bd-m-shake-x:0px;--bd-m-unlock-y:0px;--bd-m-error-y:0px;--bd-m-cursor-lift-scale:1;
  --bd-m-hero-exit-parallax:0;--bd-m-hero-exit-scale:1;--bd-m-hero-piece-stagger:0ms;--bd-m-reveal-stagger:0ms;--bd-m-logo-in-stagger:0ms;--bd-m-cta-stagger:0ms;--bd-m-hero-headline-stagger:0ms;--bd-m-steps:0;--bd-m-bar-in-dur:1ms;--bd-m-bar-out-dur:1ms;--bd-m-bar-y:0%;--bd-m-bar-stagger:0ms;--bd-m-shake-impulse:0;--bd-m-shake-dur:1ms;--bd-m-shake-spin:0deg;--bd-m-align-dur:1ms;--bd-m-align-stagger:0ms;--bd-m-scatter-dur:1ms;--bd-m-scatter-force:0;--bd-m-scatter-spin:0deg;--bd-m-crazy-rate:140ms;--bd-m-crazy-dur:2400ms;
}}
[data-motion="reduced"],[data-motion="reduced"] [data-theme],[data-motion="reduced"][data-theme]{
  --bd-m-hero-headline-dur:1ms;--bd-m-hero-piece-dur:1ms;--bd-m-nav-dur:1ms;--bd-m-cta-dur:1ms;--bd-m-reveal-dur:1ms;--bd-m-logo-in-dur:1ms;
  --bd-m-logo-drift-amp:0px;--bd-m-logo-glint-dur:1ms;--bd-m-logo-hover-dur:1ms;--bd-m-tile-hover-dur:1ms;--bd-m-slide-dur:1ms;--bd-m-card-hover-dur:1ms;
  --bd-m-press-dur:1ms;--bd-m-press-release-dur:1ms;--bd-m-modal-in-dur:1ms;--bd-m-modal-out-dur:1ms;--bd-m-scrim-dur:1ms;--bd-m-shake-dur:1ms;--bd-m-unlock-dur:1ms;
  --bd-m-focus-dur:1ms;--bd-m-error-dur:1ms;--bd-m-submit-dur:1ms;--bd-m-success-dur:1ms;--bd-m-toggle-dur:1ms;--bd-m-tab-dur:1ms;--bd-m-link-dur:1ms;--bd-m-mute-dur:1ms;--bd-m-cursor-lift-dur:1ms;--bd-m-theme-dur:1ms;--bd-m-nav-shrink-dur:1ms;
  --bd-m-hero-headline-y:0px;--bd-m-hero-piece-y:0px;--bd-m-hero-piece-rot:0deg;--bd-m-nav-y:0px;--bd-m-cta-y:0px;--bd-m-reveal-y:0px;--bd-m-reveal-scale:1;--bd-m-logo-in-y:0px;--bd-m-logo-hover-y:0px;--bd-m-tile-hover-y:0px;--bd-m-tile-press-scale:1;
  --bd-m-slide-x:0px;--bd-m-slide-rot:0deg;--bd-m-card-hover-y:0px;--bd-m-press-scale:1;--bd-m-modal-y:0px;--bd-m-modal-scale:1;--bd-m-shake-x:0px;--bd-m-unlock-y:0px;--bd-m-error-y:0px;--bd-m-cursor-lift-scale:1;
  --bd-m-hero-exit-parallax:0;--bd-m-hero-exit-scale:1;--bd-m-hero-piece-stagger:0ms;--bd-m-reveal-stagger:0ms;--bd-m-logo-in-stagger:0ms;--bd-m-cta-stagger:0ms;--bd-m-hero-headline-stagger:0ms;--bd-m-steps:0;--bd-m-bar-in-dur:1ms;--bd-m-bar-out-dur:1ms;--bd-m-bar-y:0%;--bd-m-bar-stagger:0ms;--bd-m-shake-impulse:0;--bd-m-shake-dur:1ms;--bd-m-shake-spin:0deg;--bd-m-align-dur:1ms;--bd-m-align-stagger:0ms;--bd-m-scatter-dur:1ms;--bd-m-scatter-force:0;--bd-m-scatter-spin:0deg;--bd-m-crazy-rate:140ms;--bd-m-crazy-dur:2400ms;
}

/* ================= LITE (slow machine or user choice): micro stays, ambient goes ================= */
[data-motion="lite"],[data-motion="lite"][data-theme]{
  --bd-m-logo-drift-amp:0px;--bd-m-logo-glint-dur:1ms;--bd-m-hero-exit-parallax:0;--bd-m-hero-exit-scale:1;--bd-m-hero-piece-stagger:6ms;--bd-m-hero-piece-cap:400ms;
}

/* ================= MOBILE / TOUCH: hero static (locked). Keep reveals, modal, forms, carousel swipe. Cut hover, parallax, ambient. ================= */
@media (pointer:coarse),(max-width:860px){
  :root,[data-theme]{
    --bd-m-hero-piece-dur:1ms;--bd-m-hero-piece-y:0px;--bd-m-hero-piece-rot:0deg;--bd-m-hero-piece-stagger:0ms;
    --bd-m-hero-exit-parallax:0;--bd-m-hero-exit-scale:1;--bd-m-hero-exit-scrim:0;
    --bd-m-reveal-y:10px;--bd-m-reveal-scale:1;--bd-m-reveal-stagger:40ms;--bd-m-reveal-stagger-max:3;
    --bd-m-logo-drift-amp:0px;--bd-m-logo-glint-dur:1ms;--bd-m-logo-in-stagger:20ms;
    --bd-m-logo-hover-y:0px;--bd-m-tile-hover-y:0px;--bd-m-card-hover-y:0px;--bd-m-cursor-lift-scale:1;
    --bd-m-advance-every:0ms; /* no autoplay on touch; swipe and dots only */
    --bd-m-modal-y:40px;--bd-m-modal-scale:1; /* sheet-up */
    --bd-m-slide-rot:0deg;
    --bd-m-bar-threshold:2; /* never visible on touch: hero is static */
  }
}
