/* 1. Tokens. */
:root.mx{
--mx-ease-out: cubic-bezier(.16,1,.3,1);
--mx-ease-in-out: cubic-bezier(.65,0,.35,1);
--mx-ease-in: cubic-bezier(.55,0,1,.45);
--mx-ease-draw: cubic-bezier(.45,0,.2,1);
--mx-dur-1:160ms;--mx-dur-2:280ms;--mx-dur-3:480ms;
--mx-dur-4:720ms;--mx-dur-5:1100ms;--mx-dur-6:1600ms;
--mx-stagger:60ms;--mx-k:1;--mx-spoken-at:1300ms;
}
@media (max-width:700px){
:root.mx{--mx-dur-4:560ms;--mx-dur-5:820ms;--mx-dur-6:1150ms;--mx-stagger:40ms;--mx-k:.7}
}

/* 2. Entrances. */
:root.mx .slide :is(.slide-text,.slide-visual),
:root.mx .slide[data-anim]:not(#hero) .slide-line .w{
opacity:1;transform:none;filter:none;
}
:root.mx.slide-motion .slide.is-playing .slide-text{animation:none;opacity:1}
:root.mx :is(.slide-text,.stay-block)>:nth-child(1){--mx-n:0}
:root.mx :is(.slide-text,.stay-block)>:nth-child(2){--mx-n:1}
:root.mx :is(.slide-text,.stay-block)>:nth-child(3){--mx-n:2}
:root.mx :is(.slide-text,.stay-block)>:nth-child(4){--mx-n:3}
:root.mx :is(.slide-text,.stay-block)>:nth-child(5){--mx-n:4}
:root.mx :is(.slide-text,.stay-block)>:nth-child(6){--mx-n:5}
@media screen and (prefers-reduced-motion:no-preference){
:root.mx.slide-motion .slide[data-anim]:not(#hero):not(.is-playing) .slide-line .w,
:root.mx.slide-motion .slide:not(.is-playing) :is(.spoken,.slide-visual),
:root.mx.slide-motion .slide:not(.is-playing) .slide-text>:not(.slide-line,.spoken,.hero-copy,.hero-bottom,#partner-body){opacity:0}
:root.mx.slide-motion .slide[data-anim]:not(#hero).is-playing .slide-line .w{
  animation:mx-word var(--mx-dur-4) var(--mx-ease-out) both;
  animation-delay:calc((var(--w) * 45ms + 60ms) * var(--mx-k));
 }
:root.mx.slide-motion .slide.is-playing .slide-text>:not(.slide-line,.spoken,.hero-copy,.hero-bottom,#partner-body){
  animation:mx-copy var(--mx-dur-4) var(--mx-ease-out) both;
  animation-delay:calc((380ms + var(--mx-n,0) * 90ms) * var(--mx-k));
 }
:root.mx.slide-motion .is-playing .spoken{
  animation:mx-spoken var(--mx-dur-5) var(--mx-ease-out) both;
  animation-delay:calc(var(--mx-spoken-at) * var(--mx-k));
 }
:root.mx.slide-motion .is-playing .slide-visual{
  animation:mx-stage var(--mx-dur-5) var(--mx-ease-out) calc(160ms * var(--mx-k)) both;
 }
}
@keyframes mx-word{from{opacity:0;transform:translateY(.55em);filter:blur(8px)}}
@keyframes mx-copy{from{opacity:0;transform:translateY(14px);filter:blur(4px)}}
@keyframes mx-spoken{from{opacity:0;transform:translateY(8px)}}
@keyframes mx-stage{from{opacity:0;transform:scale(.975);filter:blur(6px)}}

/* 3. Light pass. */
:root.mx.slide-motion .slide[data-anim]:not(#hero).is-playing::after{
animation:mx-vignette var(--mx-dur-6) var(--mx-ease-in-out) calc(100ms * var(--mx-k)) both;
}
:root.mx.slide-motion .is-playing .stage-bloom{
animation:mx-bloom var(--mx-dur-5) var(--mx-ease-in-out) calc(min(var(--bloom-at,1100ms), 1300ms) * var(--mx-k)) both;
}
@keyframes mx-vignette{0%,100%{opacity:0} 34%{opacity:.6}}
@keyframes mx-bloom{0%{opacity:0;transform:scale(.96)} 38%{opacity:.45} 100%{opacity:0;transform:scale(1)}}

/* 4. Acts. */
:root.mx .mx-ambient{position:fixed;inset:0;z-index:0;pointer-events:none;contain:strict}
:root.mx .mx-ambient-layer{position:absolute;inset:-10%;opacity:0;background:radial-gradient(ellipse at var(--mx-at,70% 30%),var(--mx-tone),transparent 65%);transition:opacity var(--mx-dur-6) var(--mx-ease-in-out)}
:root.mx [data-tone=teal]{--mx-at:75% 40%}
:root.mx [data-tone=blue]{--mx-at:25% 30%}
:root.mx [data-tone=red]{--mx-at:70% 60%}
:root.mx[data-mx-act=ask] [data-tone=blue],
:root.mx[data-mx-act=trap] [data-tone=red],
:root.mx:is([data-mx-act=turn],[data-mx-act=machine],[data-mx-act=offer]) [data-tone=gold],
:root.mx:is([data-mx-act=motion],[data-mx-act=volume],[data-mx-act=week],[data-mx-act=show]) [data-tone=teal]{opacity:1}
:root.mx [data-tone=blue],
:root.mx section[data-act="The ask"]{--mx-tone:rgba(122,162,255,.09)}
:root.mx [data-tone=red],
:root.mx section[data-act="The trap"]{--mx-tone:rgba(242,88,91,.07)}
:root.mx [data-tone=gold],
:root.mx section:is([data-act="The turn"],[data-act="The machine"],[data-act="The offer"]){--mx-tone:rgba(232,185,35,.10)}
:root.mx [data-tone=teal],
:root.mx section:is([data-act="The motion"],[data-act="Volume"],[data-act="The week"],[data-act="The show"]){--mx-tone:rgba(52,225,200,.09)}
:root.mx .mx-act-start::before{
content:"";position:absolute;inset:0;pointer-events:none;z-index:0;opacity:0;
background:radial-gradient(ellipse at 65% 40%,var(--mx-tone),transparent 70%);
}
:root.mx.slide-motion .mx-act-start.is-playing::before{animation:mx-wash var(--mx-dur-6) var(--mx-ease-in-out) both}
:root.mx .slide-text,
:root.mx .slide-visual{position:relative;z-index:1}
@keyframes mx-wash{0%,100%{opacity:0} 35%{opacity:.55}}
:root.mx #convergence-scene,
:root.mx .scene-backdrop{
transition:opacity var(--mx-dur-5) var(--mx-ease-in-out),transform var(--mx-dur-5) var(--mx-ease-in-out),visibility 0s linear var(--mx-dur-5);
}
:root.mx:is([data-active-page=hero],[data-active-page=close],:not([data-active-page])) :is(#convergence-scene,.scene-backdrop){transition-delay:0s}

/* 5. Present mode. */
:root.mx.slide-motion body.present-mode .page.is-present-slide{
animation:mx-page var(--mx-dur-4) var(--mx-ease-out) both;
}
:root.mx[data-mx-dir=back]{--mx-page-x:-28px}
@keyframes mx-page{from{opacity:0;transform:translate3d(var(--mx-page-x,28px),0,0)}}

/* 6. Pause. */
:root.mx .mx-offscreen,
:root.mx .mx-offscreen::before,
:root.mx .mx-offscreen::after,
:root.mx .mx-offscreen *,
:root.mx .mx-offscreen *::before,
:root.mx .mx-offscreen *::after{animation-play-state:paused !important}

/* 7. Composable hover/focus. */
:root.mx :is(a,button,input,[tabindex]){--mx-ui:var(--mx-dur-2) var(--mx-ease-out);--mx-h:0}
:root.mx :is(.primary-button,.secondary-button,.present-toggle,.audience-option,.cal-tab,.stay-submit){
--mx-lift:-1px;translate:0 calc(var(--mx-lift) * var(--mx-h));
transition:translate var(--mx-ui),scale var(--mx-dur-1) var(--mx-ease-out),border-color var(--mx-ui),color var(--mx-ui),outline-offset var(--mx-ui);
}
:root.mx .primary-button{--mx-lift:-2px;position:relative;isolation:isolate;transform:none;box-shadow:0 5px 35px var(--teal-glow)}
:root.mx .primary-button::after{content:"";position:absolute;inset:0;border-radius:inherit;z-index:-1;pointer-events:none;box-shadow:0 8px 45px var(--teal-glow);opacity:var(--mx-h);transition:opacity var(--mx-ui)}
:root.mx .primary-button span[aria-hidden]{display:inline-block;translate:calc(2px * var(--mx-h)) calc(-2px * var(--mx-h));transition:translate var(--mx-ui)}
:root.mx :is(.tier-card,.venture-card){--mx-h:0;translate:0 calc(-4px * var(--mx-h));transition-property:translate,border-color,box-shadow;transition-duration:var(--mx-dur-3);transition-timing-function:var(--mx-ease-out)}
:root.mx :is(.tier-talk,.quiet-link,.maxima-cite a,.offer-fineprint a){position:relative;text-decoration:none;border-bottom:0}
:root.mx :is(.tier-talk,.quiet-link,.maxima-cite a,.offer-fineprint a)::after{
content:"";position:absolute;inset:auto 0 -.2em;height:1px;background:currentColor;pointer-events:none;
transform:scaleX(var(--mx-h));transform-origin:left;transition:transform var(--mx-ui);
}
@media (hover:hover) and (prefers-reduced-motion:no-preference){
:root.mx :is(.primary-button,.secondary-button,.present-toggle,.audience-option,.cal-tab):hover{--mx-h:1;border-color:var(--teal)}
:root.mx :is(.tier-card,.venture-card,.tier-talk,.quiet-link,.maxima-cite a,.offer-fineprint a):hover{--mx-h:1}
}
:root.mx :focus-visible{--mx-h:1;outline-offset:5px;border-color:var(--teal)}
:root.mx :is(.primary-button,.secondary-button,.present-toggle,.audience-option,.cal-tab):active{scale:.98;transition-duration:var(--mx-dur-1)}

/* 8. Stay block. */
:root.mx .stay-block>*{opacity:1;transform:none}
@media screen and (prefers-reduced-motion:no-preference){
:root.mx.slide-motion .stay-block:not(.mx-in)>*{opacity:0;transform:translateY(16px)}
:root.mx.slide-motion .stay-block.mx-in>*{
  transition:opacity var(--mx-dur-4) var(--mx-ease-out),transform var(--mx-dur-4) var(--mx-ease-out);
  transition-delay:calc(var(--mx-n,0) * var(--mx-stagger) * var(--mx-k));
 }
}

/* 9-10. All content at rest. */
@media print,(prefers-reduced-motion: reduce){
:root.mx *,
:root.mx *::before,
:root.mx *::after{animation:none !important;transition:none !important}
:root.mx :is(.slide-text,.slide-visual,.slide-text>*,.slide-line .w,.spoken,.stay-block>*),
:root.mx body.present-mode .page.is-present-slide{
  opacity:1 !important;transform:none !important;filter:none !important;
 }
:root.mx :is(a,button,.tier-card,.venture-card),
:root.mx .primary-button span[aria-hidden]{translate:none !important;scale:none !important}
:root.mx :is(.tier-talk,.quiet-link,.maxima-cite a,.offer-fineprint a)::after{transform:scaleX(1) !important}
:root.mx .stage-bloom,
:root.mx .slide[data-anim]:not(#hero)::after,
:root.mx .mx-act-start::before{
  opacity:0 !important;transform:none !important;
 }
:root.mx .mx-flow,
:root.mx .mx-orbit,
:root.mx .mx-ripples{display:none !important}
}
/* S1: shared dispatch replaces complete legacy animation lists. */
:root.mx .slide[data-anim]:is(#partner,#hero,#ledger,#sameness,#jeffrey,#trap,#maxima,#swap,#posture,#turn,#channel) :where(.slide-visual *:not(.stage-bloom),.hero-statement,.hero-asking,.hero-offering,.hero-actions>*,.audience-switch,.quiet-link,.hero-bottom,.scroll-stem::after,#partner-body blockquote,#partner-body .prose,.maxima-kicker,.maxima-quote,.maxima-cite,.swap-line,.swap-out,.swap-in) { animation:none; }
:root.mx :is(#ledger,#sameness,#trap,#posture).is-playing :is(.ledger-book,.inbox-stack,.flame-cell,.flame-label,.posture-offer)::after,
:root.mx #trap.is-playing .flame-cell::before { animation:none; }
:root.mx.slide-motion :is(#partner,#hero,#ledger,#sameness,#jeffrey,#trap,#maxima,#swap,#posture,#turn,#channel).is-playing :is(.prose,[id=partner-tier],.secondary-button,.hero-statement,.hero-asking,.hero-offering,.hero-actions>*,.audience-switch,.quiet-link,.hero-bottom,.led-row,.led-what,.led-plus,.led-minus,.led-balance-fill,.led-balance-zero,.inbox-stack,.inbox-row,.jf-filter,.jf-envelope,.jf-person,.jf-name,.flame-cell,.flame,.maxima-kicker,.maxima-quote,.maxima-cite,.ridge,.you,.peak,.dash,.lab,.sub,.swap-out,.swap-in,.swap-hand-take,.swap-hand-give,.swap-arc,.posture-ask,.posture-offer,.venn-set circle,.venn-labels,.venn-meet,.venn-pulse,.ch-envelope,.ch-cone,.ch-flap,.ch-ask,.ch-give),
:root.mx.slide-motion #ledger.is-playing .ledger-book::after,
:root.mx.slide-motion #sameness.is-playing .inbox-stack::after,
:root.mx.slide-motion #trap.is-playing .flame-cell:not(.is-lit)::before,
:root.mx.slide-motion #trap.is-playing .flame-cell:not(.is-lit) .flame-label::after,
:root.mx.slide-motion #swap.is-playing .swap-out::after,
:root.mx.slide-motion #posture.is-playing .posture-offer::after {
  animation:var(--s1-a,mx1-in) var(--s1-d,var(--mx-dur-4)) var(--s1-e,var(--mx-ease-out)) calc(var(--s1-t,250ms) * var(--mx-k)) both;
}
@keyframes mx1-in { from { opacity:0; transform:translate(var(--s1-x,0px),var(--s1-y,14px)) scale(var(--s1-s,1)); filter:blur(var(--s1-b,0px)); } to { opacity:1; transform:none; filter:none; } }
@keyframes mx1-wipe { from { clip-path:inset(0 100% 0 0); } to { clip-path:inset(0); } }
@keyframes mx1-draw { from { stroke-dashoffset:var(--len); } to { stroke-dashoffset:0; } }
@keyframes mx1-strike { from { transform:scaleX(0); } to { transform:scaleX(1); } }

/* partner: replaces partner-rise; three thoughts, then the offer's weight. */
:root.mx #partner-body .prose { --s1-b:5px; --s1-t:250ms; }
:root.mx #partner-body .prose:nth-child(2) { --s1-t:340ms; }
:root.mx #partner-body .prose:nth-child(3) { --s1-t:430ms; }
:root.mx #partner-tier { --s1-t:900ms; --s1-s:.96; }
:root.mx #partner .secondary-button { --s1-t:1100ms; }

/* hero: replaces ask-hang, offer-land, scroll-hint; giving lands last. */
:root.mx #hero .hero-statement { --s1-t:90ms; --s1-y:0px; --s1-b:8px; }
:root.mx #hero :is(.hero-asking,.hero-offering) { display:inline-block; }
:root.mx #hero .hero-asking { --s1-t:330ms; --s1-d:var(--mx-dur-3); --s1-b:4px; }
:root.mx #hero .hero-offering { --s1-a:mx1-offer; --s1-t:720ms; }
:root.mx #hero .hero-actions>* { --s1-t:1280ms; }
:root.mx #hero .hero-actions>:nth-child(2) { --s1-t:1370ms; }
:root.mx #hero .audience-switch { --s1-t:1460ms; }
:root.mx #hero .quiet-link { --s1-t:1550ms; }
:root.mx #hero .hero-bottom { --s1-t:1640ms; }
:root.mx body:not(.present-mode) #hero.is-playing .slide-text { translate:0 calc(var(--mx-exit,0) * -56px); opacity:calc(1 - var(--mx-exit,0) * .8); }
@keyframes mx1-offer { from { opacity:0; transform:translateY(.3em) scale(1.04); filter:blur(10px); } 55% { opacity:1; filter:blur(0) drop-shadow(0 0 12px var(--teal)); } to { opacity:1; transform:none; filter:none; } }

/* ledger: replaces led-*, ledger-trace, stage-breathe; three withdrawals. */
:root.mx #ledger .led-row { --s1-a:mx1-wipe; --s1-d:var(--mx-dur-2); --s1-e:var(--mx-ease-draw); --s1-t:calc(250ms + var(--n) * 480ms); }
:root.mx #ledger :is(.led-plus,.led-minus,.led-what) { --s1-d:var(--mx-dur-2); --s1-e:var(--mx-ease-in-out); --s1-t:calc(600ms + var(--n) * 480ms); }
:root.mx #ledger .led-plus { --s1-a:mx1-out; }
:root.mx #ledger .led-minus { --s1-a:mx1-in; --s1-y:7px; }
:root.mx #ledger .led-what { --s1-a:mx1-red; }
:root.mx #ledger .led-balance-fill { --s1-a:mx1-drain; --s1-d:calc(var(--mx-dur-3) * 3); --s1-t:600ms; }
:root.mx #ledger .led-balance-zero { --s1-t:1650ms; --s1-s:1.08; --s1-y:0px; --s1-b:5px; }
:root.mx #ledger .ledger-book::after { --s1-a:mx1-wipe; --s1-t:1600ms; --s1-e:var(--mx-ease-draw); }
@keyframes mx1-out { from { opacity:1; transform:none; } to { opacity:0; transform:rotateY(90deg); } }
@keyframes mx1-red { from { color:var(--teal); } to { color:var(--red); } }
@keyframes mx1-drain { 0% { transform:scaleX(1); } 18%,33.333% { transform:scaleX(.66); } 51.333%,66.666% { transform:scaleX(.33); } 84.666%,100% { transform:scaleX(0); } }

/* sameness: replaces row-in, break-out, stack-blur, stage-drift; no match. */
:root.mx #sameness .inbox-stack { position:relative; --s1-a:mx1-soft; --s1-t:1850ms; --s1-d:var(--mx-dur-3); }
:root.mx #sameness .inbox-row { --s1-a:mx1-stamp; --s1-d:var(--mx-dur-1); --s1-e:linear; --s1-t:calc(250ms + var(--n) * 55ms); }
:root.mx.slide-motion #sameness.is-playing .inbox-row.is-odd { animation:mx1-stamp var(--mx-dur-1) var(--s1-e) calc(580ms * var(--mx-k)) both,mx1-break var(--mx-dur-4) var(--mx-ease-in-out) calc(1470ms * var(--mx-k)) forwards; }
:root.mx #sameness .inbox-stack::after { content:''; position:absolute; top:0; left:0; width:100%; height:2px; background:var(--teal); opacity:0; --s1-a:mx1-scan; --s1-d:var(--mx-dur-3); --s1-t:1000ms; --s1-e:linear; }
@keyframes mx1-stamp { from { opacity:0; transform:translateY(4px); } to { opacity:1; transform:none; } }
@keyframes mx1-soft { from { filter:none; } to { filter:blur(1.1px) saturate(0); } }
@keyframes mx1-scan { 0% { opacity:0; transform:none; } 8% { opacity:.25; } 92% { opacity:.25; } 100% { opacity:0; transform:translateY(13450%); } }
@keyframes mx1-break { 0%,100% { transform:none; filter:none; } 45%,60% { transform:translateX(28px); filter:brightness(2); } }

/* jeffrey: replaces filter-hit, teal-glow, envelope-run, led-land, fade-in. */
:root.mx #jeffrey .jf-filter { transform-box:fill-box; transform-origin:bottom; stroke:var(--line); }
:root.mx.slide-motion #jeffrey.is-playing .jf-filters .jf-filter { animation:mx1-gate var(--mx-dur-2) var(--mx-ease-out) calc((250ms + var(--n) * 60ms) * var(--mx-k)) both,mx1-hit var(--mx-dur-1) var(--mx-ease-out) calc(650ms * var(--mx-k) + var(--mx-dur-6) * (.2 + var(--n) * .16)) both; }
:root.mx #jeffrey .jf-envelope { --s1-a:mx1-run; --s1-d:var(--mx-dur-6); --s1-e:var(--mx-ease-in-out); --s1-t:650ms; }
:root.mx #jeffrey .jf-person { --s1-a:mx1-person; --s1-d:var(--mx-dur-4); --s1-t:1500ms; }
:root.mx #jeffrey .jf-name { --s1-t:1850ms; --s1-d:var(--mx-dur-3); }
@keyframes mx1-gate { from { transform:scaleY(0); } to { transform:none; } }
@keyframes mx1-hit { 0%,100% { stroke:var(--line); } 8%,45% { stroke:var(--red); } }
@keyframes mx1-person { from { opacity:.25; } to { opacity:1; } }
@keyframes mx1-run {
  0% { transform:translate(-40px,110px); opacity:1; }
  20% { transform:translate(155px,102px) rotate(7deg); }
  27% { transform:translate(148px,110px) rotate(-6deg); }
  36% { transform:translate(245px,104px) rotate(5deg); }
  43% { transform:translate(237px,110px) rotate(-5deg); }
  52% { transform:translate(335px,106px) rotate(6deg); }
  59% { transform:translate(327px,112px) rotate(-5deg); }
  68% { transform:translate(425px,110px) rotate(5deg); }
  75%,82% { transform:translate(416px,114px) rotate(-8deg); }
  88% { transform:translate(482px,124px) rotate(-12deg); opacity:.42; }
  94% { transform:translate(489px,170px) rotate(-29deg); }
  100% { transform:translate(486px,166px) rotate(-26deg); opacity:.18; }
}

/* trap: replaces snuff, glyph-light/gold, flame-hold/idle, glow-swell. */
:root.mx #trap .flame-cell { position:relative; --s1-d:var(--mx-dur-2); --n:0; }
:root.mx #trap .flame-cell:nth-child(2) { --n:1; }
:root.mx #trap .flame-cell:nth-child(3) { --n:2; }
:root.mx #trap .flame-cell:nth-child(4) { --n:3; }
:root.mx #trap .flame-cell:nth-child(5) { --n:4; }
:root.mx #trap .flame { --s1-a:mx1-snuff; --s1-d:var(--mx-dur-1); --s1-t:calc(570ms + var(--n) * 380ms); }
:root.mx #trap .flame-cell:not(.is-lit)::before { content:''; position:absolute; inset:8% auto auto 45%; width:8px; height:8px; border-radius:50%; background:var(--ink2); filter:blur(3px); opacity:0; --s1-a:mx1-smoke; --s1-d:var(--mx-dur-2); --s1-t:calc(650ms + var(--n) * 380ms); }
:root.mx #trap .flame-label { position:relative; }
:root.mx :is(#trap .flame-cell:not(.is-lit) .flame-label,#swap .swap-out)::after { content:''; position:absolute; left:0; top:50%; width:100%; height:1px; background:var(--red); transform:scaleX(1); transform-origin:left; --s1-a:mx1-strike; --s1-d:var(--mx-dur-2); --s1-t:calc(650ms + var(--n,0) * 380ms); }
:root.mx #trap .is-lit .flame { --s1-a:mx1-ignite; --s1-d:var(--mx-dur-3); --s1-t:1900ms; }
@keyframes mx1-snuff { from { opacity:1; transform:none; } to { opacity:0; transform:scale(.25); } }
@keyframes mx1-smoke { 0% { opacity:0; transform:none; } 20% { opacity:.4; } 100% { opacity:0; transform:translateY(-18px) scale(2); } }
@keyframes mx1-ignite { from { opacity:.1; transform:scaleY(.4); filter:none; } 45% { opacity:1; filter:drop-shadow(0 0 9px var(--gold)); } to { opacity:1; transform:none; filter:none; } }

/* maxima: replaces ridge-draw, peak-land, dash-travel, all three glow/breath loops. */
:root.mx #maxima .maxima .ridge { stroke-dasharray:var(--len); stroke-dashoffset:0; --s1-a:mx1-draw; --s1-d:var(--mx-dur-5); --s1-e:var(--mx-ease-draw); }
:root.mx #maxima .you { --s1-t:650ms; --s1-x:-50px; --s1-y:40px; }
:root.mx #maxima :is(.lab,.sub) { --s1-t:1850ms; --s1-y:0px; --s1-d:var(--mx-dur-3); }
:root.mx #maxima .lab.g { --s1-t:1120ms; }
:root.mx #maxima .dash { --s1-a:mx1-dash; --s1-d:var(--mx-dur-4); --s1-e:var(--mx-ease-draw); --s1-t:1300ms; }
:root.mx #maxima .peak { --s1-t:1800ms; --s1-y:0px; --s1-s:.6; --s1-d:var(--mx-dur-3); }
:root.mx #maxima .maxima-kicker { --s1-t:250ms; }
:root.mx #maxima .maxima-quote { --s1-t:430ms; }
:root.mx #maxima .maxima-cite { --s1-t:610ms; }
@keyframes mx1-dash { from { opacity:0; stroke-dashoffset:60; } 20% { opacity:.7; } to { opacity:.7; stroke-dashoffset:0; } }

/* swap: replaces slide-out/in, swap-draw, hand-take/give/rock, line-breathe. */
:root.mx #swap .swap-out { position:relative; --s1-a:mx1-dim; --s1-t:600ms; }
:root.mx #swap .swap-out::after { background:currentColor; --s1-t:800ms; }
:root.mx #swap .swap-start { display:inline-block; perspective:1200px; }
:root.mx #swap .swap-in { transform-origin:50% 60%; text-shadow:none; --s1-a:mx1-give; --s1-t:1000ms; }
:root.mx #swap .swap-hand-take { --s1-a:mx1-take; --s1-d:var(--mx-dur-5); }
:root.mx #swap .art-swap .swap-arc { stroke-dasharray:var(--len); stroke-dashoffset:0; --s1-a:mx1-reverse; --s1-e:var(--mx-ease-draw); --s1-t:650ms; }
:root.mx #swap .swap-hand-give { --s1-x:60px; --s1-y:0px; --s1-t:1000ms; }
@keyframes mx1-dim { from { filter:brightness(1.8); } to { filter:none; } }
@keyframes mx1-give { from { opacity:0; transform:rotateX(-90deg); filter:none; } 60% { opacity:1; filter:drop-shadow(0 0 10px var(--gold)); } to { opacity:1; transform:none; filter:none; } }
@keyframes mx1-take { 0% { opacity:0; transform:translateX(-70px); } 50% { opacity:1; transform:translateX(14px); } 100% { opacity:1; transform:none; } }
@keyframes mx1-reverse { from { stroke-dashoffset:calc(var(--len) * -1); } to { stroke-dashoffset:0; } }

/* posture: replaces posture-cross-left/right, posture-float, sheen-pass. */
:root.mx #posture .posture-pair { perspective:1200px; }
:root.mx #posture .posture-ask { --s1-a:mx1-recede; --s1-d:var(--mx-dur-5); }
:root.mx #posture .posture-offer { --s1-a:mx1-face; --s1-t:650ms; backface-visibility:visible; }
:root.mx #posture .posture-offer::after { --s1-a:mx1-sheen; --s1-t:1350ms; }
@keyframes mx1-recede { 0%,25% { transform:scale(1); filter:brightness(1); } 65% { transform:rotateY(-14deg) scale(.93); } 100% { transform:scale(.93); filter:brightness(.8); } }
@keyframes mx1-face { from { transform:rotateY(90deg) scale(1.04); } to { transform:scale(1.04); } }
@keyframes mx1-sheen { 0% { opacity:0; transform:translateX(-120%); } 25% { opacity:.55; } 100% { opacity:0; transform:translateX(130%); } }

/* turn: replaces venn-collide, circle-float, meet-land/glow, pill-breathe, venn-ring. */
:root.mx #turn .venn-email { --s1-x:-90px; --s1-y:0px; }
:root.mx #turn .venn-show { --s1-x:90px; --s1-y:0px; --s1-t:330ms; }
:root.mx #turn .venn-money { --s1-y:80px; --s1-t:410ms; }
:root.mx #turn .venn-labels { --s1-t:1150ms; --s1-y:0px; }
:root.mx #turn .venn-meet { --s1-t:1450ms; --s1-s:.96; }
:root.mx #turn .venn-pulse { --s1-a:mx1-pulse; --s1-d:var(--mx-dur-5); --s1-t:1300ms; }
@keyframes mx1-pulse { 0% { opacity:0; transform:scale(.5); } 20% { opacity:.65; } 100% { opacity:0; transform:scale(1.4); } }

/* channel: replaces envelope-light/arrive/rock, cone-*, flap-open, glyph-out/in. */
:root.mx #channel .ch-envelope { --s1-y:14px; --s1-d:var(--mx-dur-3); }
:root.mx #channel .ch-cone { transform-box:view-box; transform-origin:320px 0; --s1-a:mx1-cone; --s1-t:750ms; }
:root.mx #channel .ch-flap { --s1-a:mx1-flap; --s1-t:850ms; --s1-d:var(--mx-dur-4); }
:root.mx #channel .ch-ask { --s1-a:mx1-out; --s1-d:var(--mx-dur-2); --s1-t:1350ms; }
:root.mx #channel .ch-give { --s1-a:mx1-turn; --s1-t:1630ms; }
@keyframes mx1-cone { from { opacity:0; transform:scaleY(0); } to { opacity:.14; transform:none; } }
@keyframes mx1-flap { from { transform:rotateX(-148deg); } to { transform:none; } }
@keyframes mx1-turn { from { opacity:0; transform:rotateY(-90deg); } to { opacity:1; transform:none; } }

@media print, (prefers-reduced-motion: reduce) {
  :root.mx :is(#partner,#hero,#ledger,#sameness,#jeffrey,#trap,#maxima,#swap,#posture,#turn,#channel) :is(.slide-visual *,.hero-statement,.hero-asking,.hero-offering,.hero-actions>*,.audience-switch,.quiet-link,.hero-bottom,#partner-body .prose,.maxima-kicker,.maxima-quote,.maxima-cite,.swap-in,.swap-out) { animation:none !important; clip-path:none; stroke-dashoffset:0; }
  :root.mx body:not(.present-mode) #hero.is-playing .slide-text { translate:none; opacity:1; }
  :root.mx #hero .scroll-stem::after { animation:none !important; transform:none; }
  :root.mx #ledger .led-plus { opacity:0; }
  :root.mx #ledger .led-what { color:var(--red); }
  :root.mx #ledger .led-balance-fill { transform:scaleX(0); }
  :root.mx #ledger .ledger-book::after { animation:none !important; clip-path:inset(0); }
  :root.mx #sameness .inbox-stack { filter:blur(1.1px) saturate(0); }
  :root.mx #jeffrey .jf-envelope { transform:translate(486px,166px) rotate(-26deg); opacity:.18; }
  :root.mx #trap .flame { opacity:0; }
  :root.mx #trap .is-lit .flame { opacity:1; }
  :root.mx #trap .flame-label { opacity:.85; }
  :root.mx :is(#trap .flame-label,#swap .swap-out)::after { animation:none !important; transform:scaleX(1); }
  :root.mx :is(#sameness .inbox-stack,#posture .posture-offer)::after,
  :root.mx #trap .flame-cell:not(.is-lit)::before { animation:none !important; opacity:0; transform:none; }
  :root.mx #maxima .dash { opacity:.7; }
  :root.mx #posture .posture-ask { transform:scale(.93); filter:brightness(.8); }
  :root.mx #posture .posture-offer { transform:scale(1.04); }
  :root.mx #channel .ch-cone { opacity:.14; }
  :root.mx :is(#turn .venn-pulse,#channel .ch-ask) { opacity:0; }
  :root.mx :is(#partner,#hero,#ledger,#sameness,#jeffrey,#trap,#maxima,#swap,#posture,#turn,#channel) :is(.stage-bloom,.mx-flow,.mx-orbit,.mx-ripples) { opacity:0; }
}
/* S2 entrance dispatch. Timings are milliseconds; counter delays bypass mx-k. */
:root.mx :is(#onemotion,#loop,#volume,#whichsix,#delivery,#hood,#funnel,#shots,#morning,#offer,#keys,#close).is-playing :is(.mo-arrow,.mo-fused,.mo-head,.mo-cal,.lp-spin,.lp-show,.lp-open,.lp-chase,.dot,.dot-readout,.dot-thumb,.mbox,.rg-spoke,.rg-node,.rg-inbox,.fn-line,.fn-teal,.fn-inbox,.mx-inbox-fill,.cal-ev,.cal-tab,.week-key,.mc-hand,.mc-ticks circle,.mblock,.tier-card,.tier-total,.tier-show,.offer-fineprint,.ky-hand-left,.ky-hand-right,.ky-key,.ky-door,.mk-ring,.mk-ring2,.mk-dot,.close-button) {animation:var(--s2-n,mx2-in) var(--s2-d,var(--mx-dur-4)) var(--s2-e,var(--mx-ease-out)) var(--s2-at,calc(var(--s2-t,250ms) * var(--mx-k))) both;}
:root.mx :is(#onemotion,#hood,#funnel,#close) :is(.mo-arrow,.mo-fused,.rg-spoke,.fn-line,.fn-teal,.mk-ring,.mk-ring2) {stroke-dasharray:var(--len);stroke-dashoffset:0;--s2-n:mx2-draw;--s2-e:var(--mx-ease-draw);}
:root.mx :is(#onemotion,#funnel) .mx-p {fill:var(--ink2);stroke:none;}
:root.mx #onemotion .mx-p-blue {fill:var(--blue);}
:root.mx :is(#onemotion,#funnel) .mx-p-teal {fill:var(--teal);}
:root.mx #onemotion .mx-p-gold {fill:var(--gold);}

/* onemotion: draw-line, fuse-flash, head-pop, fade-up, cal-breathe, mo-travel/mo-cycle. */
:root.mx .mo-fused {--s2-t:970ms;--s2-d:var(--mx-dur-3);}
:root.mx .mo-head {--s2-t:1400ms;--s2-f:scale(.6);}
:root.mx .mo-cal {--s2-t:1450ms;}
:root.mx #onemotion.is-playing .mo-pulse {animation:none;opacity:0;}
:root.mx #onemotion.is-playing .mo-cal path:last-child {animation:mx2-fade var(--mx-dur-4) var(--mx-ease-out) calc(1700ms * var(--mx-k)) both;}

/* loop: loop-spin/lp-turn, drop-in/node-glow/lp-pulse and draw-line. */
:root.mx .lp-spin {--s2-o:.3;--s2-n:mx2-chase;--s2-d:var(--mx-dur-5);}
:root.mx .lp-chase {opacity:.25;--s2-o:.25;--s2-n:mx2-recede;--s2-t:1550ms;}
:root.mx .lp-show {--s2-f:translateY(-26px) scale(.6);--s2-b:6px;--s2-t:1250ms;}
:root.mx .lp-open {stroke-dasharray:var(--len);stroke-dashoffset:0;transform-box:view-box;transform-origin:320px 250px;--s2-n:mx2-open;--s2-e:var(--mx-ease-draw);--s2-t:1700ms;}

/* volume: dot-drop/dot-shimmer and readout-rise/readout-glow. */
:root.mx #volume .dot {--s2-o:.45;--s2-f:scale(.2);--s2-d:var(--mx-dur-2);--s2-at:calc(var(--i) * 24ms);}
:root.mx #volume .dot.is-six {--s2-o:1;--s2-n:mx2-six;--s2-d:var(--mx-dur-2);}
:root.mx #volume .dot.is-deal {position:relative;}
:root.mx #volume .dot.is-deal::after {content:"";position:absolute;inset:-3px;border:1px solid var(--gold);border-radius:50%;opacity:0;pointer-events:none;}
:root.mx #volume.is-playing .dot.is-deal::after {animation:mx2-ring var(--mx-dur-4) var(--mx-ease-out) calc(var(--i) * 24ms) both;}
:root.mx #volume .dot-readout {--s2-t:0ms;--s2-d:var(--mx-dur-5);--s2-f:translateY(16px) scale(.96);}

/* whichsix: dot-drop, dim-down, six-pop/six-glow and swell. */
:root.mx #whichsix .dot {--s2-o:.45;--s2-n:mx2-field;--s2-d:var(--mx-dur-3);--s2-t:calc(250ms + var(--i) * 2ms);}
:root.mx #whichsix .dot.is-dim {--s2-o:.22;}
:root.mx #whichsix :is(.is-six,.is-face) {--s2-o:1;--s2-n:mx2-in;--s2-f:scale(.6);--s2-b:4px;--s2-d:var(--mx-dur-4);--s2-t:calc(850ms + var(--r) * 150ms);}
:root.mx .dot-thumb {transform:translate(-50%,-50%);--s2-f:translate(-50%,-50%) scale(.6);--s2-t:calc(900ms + var(--r,0) * 150ms);}

/* delivery: warm-up/box-wave and bounce-off with sends, then rejection. */
:root.mx #delivery .mbox {--s2-o:.85;--s2-f:translateY(-10px);--s2-d:var(--mx-dur-3);--s2-t:calc(250ms + var(--i) * 18ms);}
:root.mx #delivery .mbox.is-dark {position:relative;--s2-o:1;}
:root.mx #delivery.is-playing .mbox.is-dark {animation:mx2-in var(--mx-dur-3) var(--mx-ease-out) calc(var(--s2-t) * var(--mx-k)) both, mx2-reject calc(var(--mx-dur-1) * 2.25) var(--mx-ease-in-out) calc((750ms + var(--i) * 18ms) * var(--mx-k)) none;}
:root.mx #delivery .mbox.is-dark::after {content:"";position:absolute;inset:0;border-radius:inherit;background:var(--red);opacity:0;pointer-events:none;}
:root.mx #delivery.is-playing .mbox.is-dark::after {animation:mx2-flash var(--mx-dur-3) var(--mx-ease-out) calc((750ms + var(--i) * 18ms) * var(--mx-k)) both;}

/* hood: ring-turn, draw-spoke, node-assemble/node-current, drop-in/inbox-glow, track-breathe. */
:root.mx #hood.is-playing :is(.rg-spin,.rg-track) {animation:none;transform:none;}
:root.mx .rg-spoke {--s2-d:var(--mx-dur-3);--s2-t:calc(250ms + var(--i) * 120ms);}
:root.mx .rg-node {--s2-f:scale(.4);--s2-b:4px;}
:root.mx #hood.is-playing .art-ring .rg-node {animation:mx2-in var(--mx-dur-4) var(--mx-ease-out) calc((500ms + var(--i) * 120ms) * var(--mx-k)) both, mx2-current calc(var(--mx-dur-1) * 37.5) var(--mx-ease-out) calc(2500ms + var(--i) * 1000ms) infinite none;}
:root.mx .rg-inbox {transform-box:fill-box;transform-origin:center;--s2-t:1400ms;}
:root.mx .mx-orbit {opacity:0;transform-box:view-box;transform-origin:260px 200px;}
:root.mx .mx-orbit circle {fill:var(--gold);stroke:none;}
:root.mx #hood.is-playing .mx-orbit {animation:mx2-orbit calc(var(--mx-dur-1) * 37.5) linear 2500ms infinite none;}

/* funnel: draw-line/teal-breathe, inbox-land/inbox-glow and fn-ring/fn-echo. */
:root.mx .fn-line {--s2-t:calc(250ms + var(--i) * 100ms);}
:root.mx .fn-teal {--s2-t:1100ms;}
:root.mx .fn-inbox {--s2-t:1550ms;}
:root.mx #funnel.is-playing .fn-pulse {animation:none;opacity:0;}
:root.mx #funnel .mx-p:not(.mx-p-teal) {fill-opacity:.85;}
:root.mx .mx-inbox-fill {fill:var(--teal);opacity:.16;transform:scaleY(.86);transform-box:fill-box;transform-origin:bottom;--s2-n:mx2-fill;--s2-d:var(--mx-dur-5);--s2-e:var(--mx-ease-in-out);--s2-t:1300ms;}

/* shots: wipe-down, ev-land/taping-light/taping-hold and tab-rise. */
:root.mx #shots.is-playing .cal-col {animation:none;clip-path:none;}
:root.mx .cal-ev {transform-origin:top;--s2-f:scaleY(.4);--s2-d:var(--mx-dur-2);--s2-t:calc(250ms + var(--day) * 180ms + min(var(--t),13) * 90ms);}
:root.mx .cal-ev.kind-taping::before {content:"";position:absolute;inset:0;border-radius:inherit;background:var(--teal);opacity:0;pointer-events:none;}
:root.mx #shots.is-playing .cal-ev.kind-taping::before {animation:mx2-flash var(--mx-dur-1) var(--mx-ease-out) calc((400ms + var(--day) * 180ms + min(var(--t),13) * 80ms) * var(--mx-k)) both;}
:root.mx .week-key {display:inline-block;--s2-t:calc(1000ms + var(--s2-j,0) * 120ms);}
:root.mx .week-key:nth-child(2) {--s2-j:1;}
:root.mx .week-key:nth-child(3) {--s2-j:2;}
:root.mx .week-key:nth-child(4) {--s2-j:3;}

/* morning: clock-sweep/hand-tick, tick-in and mblock-land/mblock-wave. */
:root.mx .mc-hand {--s2-n:mx2-clock;--s2-d:calc(var(--mx-dur-1) * 10);--s2-t:0ms;--s2-e:linear;}
:root.mx #morning :is(.mblock,.mc-ticks circle) {--s2-at:calc(var(--i) * 178ms);}
:root.mx .mc-ticks circle {--s2-f:scale(.2);--s2-d:var(--mx-dur-1);}
:root.mx .mblock {position:relative;--s2-f:translateY(-18px) scale(.96);--s2-b:4px;}
:root.mx .mblock::before {content:"";position:absolute;top:7px;right:7px;width:5px;height:5px;border-radius:50%;background:var(--teal);opacity:0;}
:root.mx #morning.is-playing .mblock::before {animation:mx2-flash var(--mx-dur-4) var(--mx-ease-out) calc(var(--i) * 178ms) both;}

/* offer: column-rise/card-breathe, card-sheen and draw-underline. */
:root.mx .tier-card {--s2-j:0;--s2-f:translateY(40px) scale(.97);--s2-b:6px;--s2-d:var(--mx-dur-5);--s2-t:calc(250ms + var(--s2-j) * 140ms);}
:root.mx .tier-card:nth-child(2) {--s2-j:1;}
:root.mx .tier-card:nth-child(3) {--s2-j:2;}
:root.mx .tier-total {--s2-n:mx2-price;--s2-d:var(--mx-dur-2);--s2-e:var(--mx-ease-draw);--s2-t:calc(1350ms + var(--s2-j) * 140ms);}
:root.mx .tier-show {--s2-n:mx2-fade;--s2-d:var(--mx-dur-2);--s2-t:calc(1650ms + var(--s2-j) * 140ms);}
:root.mx #offer.is-playing .tier-show::after {animation:mx2-open var(--mx-dur-3) var(--mx-ease-draw) calc((1500ms + var(--s2-j) * 140ms) * var(--mx-k)) both;}
:root.mx .offer-fineprint {--s2-n:mx2-fade;--s2-d:var(--mx-dur-2);--s2-t:1900ms;}
:root.mx #offer.is-playing .tier-card::after {animation:card-sheen var(--mx-dur-4) var(--mx-ease-in-out) calc((1300ms + var(--s2-j) * 140ms) * var(--mx-k)) both;}

/* keys: hand-arrive-l/r, key-hand and door-light/door-warm. */
:root.mx .ky-hand-left {--s2-f:translateX(-56px);}
:root.mx .ky-hand-right {--s2-f:translateX(56px);--s2-t:1500ms;}
:root.mx .ky-key {--s2-n:mx2-key;--s2-d:var(--mx-dur-6);--s2-e:var(--mx-ease-in-out);--s2-t:500ms;}
:root.mx .ky-door {--s2-n:mx2-door;--s2-t:1650ms;}

/* close: mark-draw/mark-turn/back, dot-arrive/dot-beat and button fade-up;title belongs to core. */
:root.mx .mk-ring {--s2-d:var(--mx-dur-5);}
:root.mx .mk-ring2 {--s2-t:700ms;}
:root.mx .mk-dot {--s2-f:scale(.2);--s2-t:1450ms;}
:root.mx .mx-ripples circle {stroke:var(--teal);stroke-width:1.2;fill:none;opacity:0;transform-box:view-box;transform-origin:160px 160px;--s2-t:2500ms;}
:root.mx .mx-ripples circle:nth-child(2) {--s2-t:3700ms;}
:root.mx .mx-ripples circle:nth-child(3) {--s2-t:4900ms;}
:root.mx #close.is-playing .mx-ripples circle {animation:mx2-ring calc(var(--mx-dur-1) * 22.5) var(--mx-ease-out) var(--s2-t) infinite none;}
:root.mx .close-button {--s2-t:1550ms;}
:root.mx #close.is-playing .close-title {animation:none;}

@keyframes mx2-in {from {opacity:0;transform:var(--s2-f,translateY(18px) scale(.96));filter:blur(var(--s2-b,0px));} }
@keyframes mx2-draw {from {stroke-dashoffset:var(--len);} }
@keyframes mx2-fade {from {opacity:0;} }
@keyframes mx2-open {from {transform:scaleX(0);} }
@keyframes mx2-chase {from {transform:rotate(-540deg);opacity:1;} }
@keyframes mx2-recede {from {opacity:1;} }
/* The six land with one brighter beat; no loop. */
@keyframes mx2-six {0% {opacity:0;transform:scale(.2);} 30% {opacity:1;transform:scale(1.35);filter:brightness(1.8);} 100% {opacity:1;transform:none;filter:none;} }
@keyframes mx2-field {0% {opacity:0;transform:scale(.2);} 45% {opacity:.45;transform:none;} }
@keyframes mx2-ring {from {opacity:.45;transform:scale(1);} to {opacity:0;transform:scale(1.7);} }
@keyframes mx2-reject {0%,100% {transform:none;} 14%,43%,72% {transform:translateX(-5px);} 28%,57%,86% {transform:translateX(5px);} }
@keyframes mx2-flash {0%,100% {opacity:0;} 30% {opacity:.8;} }
@keyframes mx2-current {0%,100% {opacity:1;} 9%,94% {opacity:.6;} }
@keyframes mx2-orbit {from {opacity:1;transform:rotate(0deg);} to {opacity:1;transform:rotate(360deg);} }
@keyframes mx2-fill {from {transform:scaleY(0);} }
@keyframes mx2-clock {from {transform:rotate(-300deg);} }
@keyframes mx2-price {from {clip-path:inset(100% 0 0 0);} to {clip-path:inset(-20%);} }
@keyframes mx2-key {0% {transform:translate(150px,110px) rotate(0deg);opacity:0;} 18% {opacity:1;} 62% {transform:translate(320px,110px) rotate(0deg);opacity:1;} 100% {transform:translate(320px,110px) rotate(80deg);opacity:1;} }
@keyframes mx2-door {0% {opacity:.15;filter:none;} 58% {opacity:1;filter:drop-shadow(0 0 18px var(--gold-glow));} 100% {opacity:1;filter:none;} }

@media print, (prefers-reduced-motion: reduce) {
  :root.mx :is(#onemotion,#loop,#volume,#whichsix,#delivery,#hood,#funnel,#shots,#morning,#offer,#keys,#close) .slide-visual *,
  :root.mx :is(#shots .week-key,#offer .offer-fineprint,#close .close-button,#close .close-title) {animation:none !important;opacity:1;transform:none;filter:none;clip-path:none;stroke-dashoffset:0;}
  :root.mx :is(#volume,#whichsix,#delivery,#loop) :is(.dot,.mbox,.lp-spin,.lp-chase) {opacity:var(--s2-o);}
  :root.mx #whichsix .dot-thumb {transform:translate(-50%,-50%);}
  :root.mx #keys .ky-key {transform:translate(320px,110px) rotate(80deg);}
  :root.mx #funnel .mx-inbox-fill {animation:none !important;opacity:.16;transform:scaleY(.86);}
  :root.mx #offer .tier-show::after {animation:none !important;opacity:1;transform:scaleX(1);}
  :root.mx :is(#volume .is-deal,#delivery .is-dark,#offer .tier-card)::after,
  :root.mx :is(#morning .mblock,#shots .kind-taping)::before,
  :root.mx :is(#onemotion .mo-pulse,#funnel .fn-pulse) {animation:none !important;opacity:0;transform:none;}
  :root.mx :is(#onemotion,#funnel,#hood,#close) :is(.mx-flow,.mx-orbit,.mx-ripples,.mx-ripples circle) {animation:none !important;display:none;opacity:0;transform:none;}
}

/* Settle: motion.js adds .mx-settled 2500ms after a section starts playing (a
   timer, not an animation or rAF event), so any entrance the animation clock
   never ran is forced to its authored end state. Entrances are timed to finish
   by then. The three loops that should keep running restart from their start,
   which lines up because their first iteration is also scheduled at 2500ms. */
:root.mx .mx-settled,
:root.mx .mx-settled::before,
:root.mx .mx-settled::after,
:root.mx .mx-settled *,
:root.mx .mx-settled *::before,
:root.mx .mx-settled *::after{animation:none !important}
:root.mx .mx-settled [data-reveal],
:root.mx .mx-settled.stay-block>*{transition-duration:0s !important;transition-delay:0s !important}
:root.mx .mx-settled .slide-line .w,
:root.mx .mx-settled .spoken,
:root.mx .mx-settled .slide-visual,
:root.mx .mx-settled .slide-text>*,
:root.mx .mx-settled.stay-block>*{opacity:1}
@media screen and (prefers-reduced-motion:no-preference){
:root.mx #hood.mx-settled .art-ring .rg-node{animation:mx2-current 6000ms var(--mx-ease-out) calc(var(--i) * 1000ms) infinite none !important}
:root.mx #hood.mx-settled .mx-orbit{animation:mx2-orbit 6000ms linear 0s infinite none !important}
:root.mx #close.mx-settled .mx-ripples circle{animation:mx2-ring 3600ms var(--mx-ease-out) calc(var(--s2-t) - 2500ms) infinite none !important}
:root.mx #hero.mx-settled .scroll-stem::after{animation:scroll-hint 2.6s ease-in-out infinite !important}
}
/* Phone: flame labels wrap onto two lines, where a drawn midline would fall
   between them, so the dead labels take a plain red line-through instead. */
@media (max-width:700px){
:root.mx #trap .flame-cell:not(.is-lit) .flame-label::after{display:none}
:root.mx #trap .flame-cell:not(.is-lit) .flame-label{text-decoration:line-through;text-decoration-color:var(--red)}
}
