/* Research deck (research.html). Same palette, Coolvetica and motion kit as the concept deck.
   Rules that keep the motion safe:
   - entrances use only `from` keyframes on translate / scale / opacity, so the resting state is the final state and
     step changes (data-step / is-current) stay free to move things;
   - when motion is paused every entrance is switched off, so each slide simply shows its finished state. */

.rr-deck{--mk-coral:#e2562f;--mk-blue:#2273a8;--mk-grey:#8f8b7d;--card:#fff}
body[data-tone=coral]{--muted:#5b3a2c;--line:rgba(48,47,43,.24)}
body[data-tone=blue]{--muted:#3f5560}

/* Tighter motion for this deck: quicker words, quicker beat reveals, quicker slide changes. */
.rr-deck .scene.active .rw>span{animation-duration:.62s;animation-timing-function:var(--spring-snap);animation-delay:calc(.05s + var(--i,0) * 32ms)}
.rr-deck .on-rise{transition:opacity .3s ease,translate .55s var(--spring-snap),filter .3s ease}
.rr-deck .on-fade{transition:opacity .35s ease}
.rr-deck .scene{transition:opacity .38s ease,transform .6s cubic-bezier(.16,1,.3,1),filter .3s ease,visibility .6s}

/* ---------- Shared slide parts ---------- */
.rr{height:100%;min-height:0;display:flex;flex-direction:column;justify-content:center;gap:clamp(12px,2.4vh,26px)}
.rr-split{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);column-gap:4.2vw;align-items:center}
.rr-copy{display:flex;flex-direction:column;gap:clamp(12px,2.2vh,24px);min-width:0}
.rr-k{display:flex;align-items:center;gap:10px;font:700 11px/1 Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#bd4127}
.rr-k:before{content:'';width:7px;height:7px;border-radius:50%;background:var(--coral);flex:none}
body[data-tone=ink] .rr-k{color:var(--coral)}
body[data-tone=coral] .rr-k{color:var(--ink)}body[data-tone=coral] .rr-k:before{background:var(--ink)}
.rr-head h2{font-size:min(3.9vw,7.1vh);line-height:.96;letter-spacing:-.035em;margin-top:clamp(8px,1.3vh,14px)}
.rr-sub{font-family:Coolvetica,Arial,sans-serif;font-size:clamp(17px,min(1.4vw,2.6vh),23px);line-height:1.15;color:var(--muted);margin-top:clamp(8px,1.4vh,14px);max-width:34em}
.scene.active .rr-sub{animation:rr-fade .65s ease .3s both}
@keyframes rr-fade{from{opacity:0;translate:0 10px}}
@keyframes rr-rise{from{opacity:0;translate:0 14px;filter:blur(4px)}}
@keyframes rr-pop{from{opacity:0;scale:.6}}
@keyframes rr-grow{from{transform:scaleX(0)}}
@keyframes rr-drop{from{opacity:0;translate:0 -12px;scale:.92}}

/* A number with what it means and where it came from. Inside .rr-facts the numbers line up in one column. */
.rr-facts{display:grid;grid-template-columns:max-content minmax(0,1fr);column-gap:18px;row-gap:clamp(8px,1.5vh,15px)}
.rr-fact{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:18px;align-items:start;padding-top:clamp(8px,1.4vh,14px);border-top:1px solid var(--line);transition:opacity .3s}
.rr-facts>.rr-fact{grid-column:1/-1;grid-template-columns:subgrid}
.rr-facts>:not(.rr-fact){grid-column:1/-1}
.rr-num{font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:clamp(28px,min(2.5vw,4.6vh),42px);line-height:.92;letter-spacing:-.03em;white-space:nowrap;font-variant-numeric:tabular-nums}
.rr-num small{font-size:.42em;letter-spacing:0;margin-left:.25em;color:var(--muted)}
.rr-fact p{font-size:clamp(14px,min(1.05vw,2vh),16.5px);line-height:1.35}
.scene.active .rr-fact{animation:rr-rise .58s ease calc(.39s + var(--n,0) * .06s) both}
.rr-facts>.rr-fact:nth-child(2){--n:1}.rr-facts>.rr-fact:nth-child(3){--n:2}

/* Citations: S-number, a short label and a trust flag. */
.rr-src{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;margin-top:6px;font:11.5px/1.3 Arial,sans-serif;color:var(--muted)}
.rr-src>b{font:700 10px/1 Arial,sans-serif;padding:3px 5px;border-radius:4px;background:rgba(48,47,43,.09);color:var(--ink)}
.rr-flag{display:inline-flex;align-items:center;gap:4px;font:700 9.5px/1 Arial,sans-serif;letter-spacing:.07em;text-transform:uppercase;padding:3px 7px 3px 5px;border-radius:20px;border:1px solid rgba(48,47,43,.38);color:var(--ink);cursor:help;white-space:nowrap}
.rr-flag i{font-style:normal;font-size:10px}
.rr-flag-claim{background:rgba(255,104,64,.16);border-color:rgba(226,86,47,.65)}
.rr-flag-sec{background:rgba(48,47,43,.05)}
.rr-flag-unv{border-style:dashed;border-color:var(--ink)}
.rr-flag-est{background:rgba(173,217,237,.5);border-color:rgba(45,111,142,.55)}
body[data-tone=ink] .rr-src>b{background:rgba(247,245,239,.14);color:var(--paper)}
body[data-tone=ink] .rr-flag{color:var(--paper);border-color:rgba(247,245,239,.4)}
body[data-tone=ink] .rr-flag-claim{background:rgba(255,104,64,.22);border-color:var(--coral)}
body[data-tone=ink] .rr-flag-unv{border-color:var(--paper)}
body[data-tone=coral] .rr-src>b{background:rgba(48,47,43,.14)}
body[data-tone=coral] .rr-flag-claim{background:rgba(247,245,239,.4);border-color:rgba(48,47,43,.5)}
body[data-tone=blue] .rr-flag-est{background:rgba(247,245,239,.6)}

.rr-cav{display:flex;gap:10px;align-items:baseline;font-size:13px;line-height:1.4;color:var(--muted);max-width:46em}
.rr-cav b{flex:none;font:700 9.5px/1 Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);padding:4px 7px;border-radius:4px;box-shadow:inset 0 0 0 1px var(--line)}
body[data-tone=ink] .rr-cav b{color:var(--paper)}
.scene.active .rr-cav{animation:rr-fade .58s ease .71s both}

.rr-legend{display:flex;gap:18px;font-size:13px;font-weight:700}
.rr-legend span{display:inline-flex;align-items:center;gap:8px}
.rr-legend i{width:12px;height:12px;border-radius:50%}
.k-w{background:var(--mk-coral)}.k-m{background:var(--ink)}.k-up{background:var(--mk-blue)}.k-down{background:var(--mk-coral)}

/* Progress rings: the value draws round from the top. */
.rr-dial{position:relative;width:min(100%,21vh);aspect-ratio:1}
.rr-ring{display:block;width:100%;height:100%;transform:rotate(-90deg);overflow:visible}
.rr-ring circle{fill:none;stroke-width:9}
.rr-ring-t{stroke:rgba(48,47,43,.1)}
.rr-ring-v{stroke:var(--mk-coral);stroke-linecap:round;stroke-dasharray:var(--v) 100}
.scene.active .rr-ring-v{animation:rr-ring 1.22s cubic-bezier(.2,.8,.2,1) .25s both}
@keyframes rr-ring{from{stroke-dasharray:0 100}}
.rr-dial-n{position:absolute;inset:0;display:grid;place-items:center;font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:clamp(26px,min(2.5vw,4.6vh),42px);letter-spacing:-.03em}
body[data-tone=ink] .rr-ring-t{stroke:rgba(247,245,239,.14)}body[data-tone=ink] .rr-ring-v{stroke:var(--coral)}
body[data-tone=coral] .rr-ring-t{stroke:rgba(48,47,43,.16)}body[data-tone=coral] .rr-ring-v{stroke:var(--ink)}

/* Hover details */
#rr-tip{position:fixed;left:0;top:0;z-index:70;pointer-events:none;max-width:300px;padding:8px 12px;border-radius:10px;background:var(--ink);color:var(--paper);font:13px/1.35 Arial,sans-serif;box-shadow:0 12px 30px -12px rgba(0,0,0,.5);opacity:0;transform:translateY(4px);transition:opacity .15s,transform .15s}
#rr-tip.show{opacity:1;transform:none}
body[data-tone=ink] #rr-tip{background:var(--paper);color:var(--ink)}

/* ---------- 1 · Cover: two circles, introductions and bookings, with an empty middle ---------- */
.rc{height:100%;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;column-gap:3vw}
.rc-copy{display:flex;flex-direction:column;gap:clamp(14px,2.5vh,28px)}
.rc-credit,.rc-team{color:var(--muted)}
.rc-word{font-size:min(11vw,20vh);line-height:.8;letter-spacing:-.065em;margin-left:-.04em}
.rc-tag{font-family:Coolvetica,Arial,sans-serif;font-size:clamp(22px,min(2.2vw,4vh),36px);line-height:1.04;letter-spacing:-.02em}
.rc-stats{display:flex;flex-wrap:wrap;gap:14px clamp(20px,2.6vw,44px);padding-top:clamp(12px,2vh,20px);border-top:1px solid var(--line)}
.rc-stats b{display:block;font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:clamp(30px,min(3vw,5.4vh),50px);line-height:1;letter-spacing:-.03em}
.rc-stats>div>span{font-size:12px;color:var(--muted)}
.scene.active .rc-stats>div{animation:rr-rise .58s ease calc(.58s + var(--i) * .06s) both}
.scene.active .rc-team{animation:rr-fade .58s ease .88s both}
.rc-stage{--d:min(40vh,23vw);--ax:calc(var(--d) * -.62);--bx:calc(var(--d) * .62);position:relative;align-self:stretch;min-height:calc(var(--d) * 1.1)}
.scene:is([data-step="1"],[data-step="2"]) .rc-stage{--ax:calc(var(--d) * -.27);--bx:calc(var(--d) * .27)}
.scene.active .rc-stage{animation:rc-sway 10s ease-in-out .99s infinite alternate}
@keyframes rc-sway{to{translate:0 -1vh}}
.rc-ring,.rc-lens i,.rc-lens u{position:absolute;left:50%;top:50%;width:var(--d);height:var(--d);margin:calc(var(--d) / -2) 0 0 calc(var(--d) / -2);border-radius:50%}
.rc-ring{display:flex;align-items:center;box-shadow:inset 0 0 0 1.5px var(--ink);transition:transform .98s var(--spring-soft)}
.rc-a{transform:translateX(var(--ax));padding-left:calc(var(--d) * .1)}
.rc-b{transform:translateX(var(--bx));justify-content:flex-end;padding-right:calc(var(--d) * .1);text-align:right}
.rc-ring span{display:flex;flex-direction:column;gap:4px;width:calc(var(--d) * .4)}
.rc-ring small{font-size:12px;color:var(--muted)}
.rc-ring b{font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:clamp(22px,min(2.1vw,3.8vh),34px);line-height:1;letter-spacing:-.02em}
.rc-ring em{font-style:normal;font-size:12px;line-height:1.35;color:var(--muted)}
.scene.active .rc-a{animation:rc-in-a 1.15s var(--spring-soft) .08s both}
.scene.active .rc-b{animation:rc-in-b 1.15s var(--spring-soft) .17s both}
@keyframes rc-in-a{from{translate:-30vw 0;scale:.5;opacity:0}}
@keyframes rc-in-b{from{translate:30vw 0;scale:.5;opacity:0}}
.rc-lens{position:absolute;inset:0;pointer-events:none;mix-blend-mode:multiply;clip-path:circle(calc(var(--d) / 2) at calc(50% + var(--bx)) 50%);transition:clip-path .98s var(--spring-soft)}
.rc-lens i{background:var(--coral);transform:translateX(var(--ax)) scale(.2);opacity:0;transition:transform .98s var(--spring-soft),opacity .3s}
.rc-lens:before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(45deg,rgba(48,47,43,.16) 0 1.5px,transparent 1.5px 9px);clip-path:circle(calc(var(--d) / 2) at calc(50% + var(--ax)) 50%);opacity:0;transition:opacity .36s,clip-path .98s var(--spring-soft)}
.scene[data-step="1"] .rc-lens:before{opacity:1;transition-delay:.6s,0s}
.scene[data-step="2"] .rc-lens i{transform:translateX(var(--ax));opacity:1;transition-delay:.15s}
.rc-mid{position:absolute;left:50%;top:50%;translate:-50% -50%;text-align:center;font-family:Coolvetica,Arial,sans-serif;line-height:.95;opacity:0;scale:.8;transition:opacity .27s,scale .62s var(--spring-snap)}
.rc-q{font-size:clamp(14px,1.15vw,18px);background:var(--stone);padding:6px 9px;border-radius:12px}
.rc-dd{font-size:clamp(22px,min(2.2vw,4vh),34px);letter-spacing:-.03em}
.scene[data-step="1"] .rc-q{opacity:1;scale:1;transition-delay:.8s}
.scene[data-step="2"] .rc-dd{opacity:1;scale:1;transition-delay:.7s}

/* ---------- 2 · Method ---------- */
.rm-q{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.rm-q li{display:grid;grid-template-columns:44px 1fr;padding:clamp(7px,1.3vh,13px) 0;border-bottom:1px solid var(--line)}
.rm-q b{font:700 12px/1.9 Arial,sans-serif;color:#bd4127}
.rm-q span{font-family:Coolvetica,Arial,sans-serif;font-size:clamp(19px,min(1.55vw,2.9vh),25px);line-height:1.05}
.rm-q small{display:block;font:clamp(13px,min(1vw,1.9vh),15px)/1.35 Arial,sans-serif;color:var(--muted);margin-top:3px}
.scene.active .rm-q li{animation:rr-rise .5s ease calc(.33s + var(--i) * .05s) both}
.rm-viz{display:flex;flex-direction:column;gap:clamp(14px,2.4vh,26px)}
.rm-units{display:grid;grid-template-columns:repeat(20,1fr);gap:min(.42vw,.75vh);width:min(100%,64vh)}
.rm-units i{aspect-ratio:1;border-radius:24%;transition:opacity .3s,scale .55s var(--spring-snap)}
.rm-g1{background:var(--ink)}.rm-g2{background:var(--mk-coral)}.rm-g3{background:var(--mk-grey)}
.scene.active .rm-units i{animation:rr-pop .4s var(--spring-snap) calc(.19s + var(--i) * 4ms) both}
.scene[data-step="0"] .rm-units i:not(.rm-g1),.scene[data-step="1"] .rm-units i:not(.rm-g2),.scene[data-step="2"] .rm-units i:not(.rm-g3){opacity:.18}
.rm-legend{display:flex;flex-direction:column;gap:10px}
.rm-l{display:grid;grid-template-columns:14px 56px 1fr;align-items:center;gap:12px;opacity:.42;transition:opacity .3s,translate .55s var(--spring-snap)}
.rm-l.is-current,.scene[data-step="3"] .rm-l{opacity:1}
.rm-l.is-current{translate:8px 0}
.rm-l>i{width:14px;height:14px;border-radius:4px}
.rm-l1>i{background:var(--ink)}.rm-l2>i{background:var(--mk-coral)}.rm-l3>i{background:var(--mk-grey)}
.rm-l>b{font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:clamp(26px,min(2.2vw,4vh),36px);line-height:1}
.rm-l>span{font-family:Coolvetica,Arial,sans-serif;font-size:19px;line-height:1.1}
.rm-l small{display:block;font:13px/1.3 Arial,sans-serif;color:var(--muted)}
.rm-flags{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;padding:14px 16px;border-radius:18px;background:var(--stone)}
.rm-flags-h{grid-column:1/-1;font:700 11px/1 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase}
.rm-flags div{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted)}

/* ---------- 3 · The market on one line ---------- */
.ra-map{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(8px,1vw,16px)}
.ra-lane{position:relative;z-index:1;display:flex;flex-direction:column;gap:12px;padding:clamp(12px,1.8vh,18px) clamp(10px,1vw,16px);border-radius:22px;min-height:min(40vh,340px);background:rgba(247,245,239,.62);transition:background .36s,box-shadow .36s,opacity .36s}
.ra-empty{background:rgba(247,245,239,.18);box-shadow:inset 0 0 0 1.5px rgba(48,47,43,.22)}
.scene.active .ra-lane{animation:rr-rise .58s ease calc(.19s + var(--l) * .04s) both}
.ra-h{display:flex;gap:8px;align-items:baseline;font-family:Coolvetica,Arial,sans-serif;font-size:clamp(17px,min(1.35vw,2.5vh),22px);line-height:1.05}
.ra-h b{font:700 11px Arial,sans-serif;color:#bd4127;flex:none}
.ra-chips{display:flex;flex-wrap:wrap;gap:6px;align-content:flex-start;flex:1}
.ra-chips span{font-size:13px;font-weight:700;padding:7px 11px;border-radius:30px;background:#fff;box-shadow:0 6px 14px -8px rgba(48,47,43,.45);transition:opacity .3s,scale .36s var(--spring-snap)}
.scene.active .ra-chips span{animation:rr-drop .58s var(--spring-snap) calc(.33s + var(--l) * .06s + var(--j) * .03s) both}
.scene[data-step="1"] .ra-l0 .ra-chips span,.scene[data-step="0"] .ra-l2 .ra-chips span{opacity:.38;scale:.96}
.scene:is([data-step="2"],[data-step="3"]) .ra-full .ra-chips span{opacity:.38}
.scene[data-step="0"] .ra-l0,.scene[data-step="1"] .ra-l2{background:var(--paper);box-shadow:0 18px 40px -26px rgba(48,47,43,.6)}
.scene:is([data-step="2"],[data-step="3"]) .ra-empty{box-shadow:inset 0 0 0 2px var(--ink);background:rgba(247,245,239,.4)}
.ra-none{font-size:13px;line-height:1.4;color:var(--muted)}
.ra-none b{display:block;font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:clamp(22px,min(1.9vw,3.6vh),30px);color:var(--ink);margin-bottom:4px}
.ra-dd{display:flex;align-items:center;min-height:52px;font-size:13px;font-weight:700;line-height:1.25;padding:8px 12px;border-radius:14px;background:var(--coral);color:var(--ink);opacity:0;translate:0 12px;transition:opacity .24s,translate .62s var(--spring-bounce)}
.scene[data-step="3"] .ra-dd{opacity:1;translate:0 0;transition-delay:calc(.25s + var(--l) * .14s)}
.ra-line{position:absolute;z-index:0;left:10%;right:10%;bottom:calc(clamp(12px,1.8vh,18px) + 26px);height:3px;border-radius:2px;background:var(--ink);transform-origin:left;transform:scaleX(0);transition:transform .18s}
.scene[data-step="3"] .ra-line{transform:none;transition:transform .86s cubic-bezier(.6,0,.2,1) .1s}
.ra-src{margin-top:-4px}

/* ---------- 4 · The leak: two grids of 100 matches ---------- */
.rl-viz{display:grid;grid-template-columns:1fr 1fr;gap:clamp(18px,2.4vw,40px);align-items:end}
.rl-cap{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
.rl-cap b{font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:clamp(40px,min(4vw,7.4vh),68px);line-height:.9;letter-spacing:-.04em}
.rl-cap b small{font-size:.3em;letter-spacing:0;margin-left:.35em;color:var(--muted)}
.rl-cap>span{font-size:14px;line-height:1.35;color:var(--muted)}
.rl-cap strong{color:var(--ink)}
.rl-dots{display:grid;grid-template-columns:repeat(10,1fr);gap:min(.6vw,1.05vh);width:min(100%,38vh)}
.rl-dots i{aspect-ratio:1;border-radius:50%;background:rgba(48,47,43,.12);transition:background .21s ease calc(var(--i,0) * 40ms),scale .55s var(--spring-bounce) calc(var(--i,0) * 40ms)}
.scene.active .rl-dots i{animation:rr-pop .36s var(--spring-snap) .17s both}
.scene:is([data-step="1"],[data-step="2"]) .rl-f .on,.scene[data-step="2"] .rl-m .on{background:var(--mk-coral);scale:1.12}
.rl-src{grid-column:1/-1}

/* ---------- 5 · The delay: a timeline with evenly spaced marks ---------- */
.rd-line{position:relative;height:64px;margin:clamp(2px,1vh,10px) 0 0}
.rd-track{position:absolute;left:0;right:0;top:44px;height:2px;background:var(--line);border-radius:2px}
.rd-fill{position:absolute;inset:0;background:var(--ink);transform-origin:left;transform:scaleX(.1667);transition:transform 1.01s var(--spring-soft)}
.scene[data-step="1"] .rd-fill{transform:scaleX(.5)}.scene[data-step="2"] .rd-fill{transform:scaleX(.8333)}
.rd-mark{position:absolute;top:0;left:var(--x);display:flex;flex-direction:column;align-items:center;translate:-50% 0}
.rd-mark:first-of-type{translate:0 0;align-items:flex-start}
.rd-mark b{font:700 12px/1 Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.rd-mark i{width:12px;height:12px;margin-top:21px;border-radius:50%;background:var(--stone);box-shadow:inset 0 0 0 2px var(--ink)}
.rd-dot{position:absolute;top:45px;left:16.667%;width:22px;height:22px;margin:-11px 0 0 -11px;border-radius:50%;background:var(--coral);box-shadow:0 0 0 5px var(--stone),0 8px 18px -6px rgba(48,47,43,.6);transition:left 1.01s var(--spring-soft)}
.scene[data-step="1"] .rd-dot{left:50%}.scene[data-step="2"] .rd-dot{left:83.333%}
.scene.active .rd-dot{animation:rd-pulse 1.8s ease-in-out .88s infinite}
@keyframes rd-pulse{50%{scale:1.08}}
.rd-scale,.rlg .rd-scale{position:absolute;right:0;bottom:-2px;font-size:11px;color:var(--muted)}
.rd-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.6vw,26px)}
.rd-card{position:relative;padding:clamp(14px,2vh,20px) clamp(14px,1.4vw,22px);border-radius:22px;background:var(--paper);box-shadow:0 20px 44px -30px rgba(48,47,43,.55)}
.rd-card:before{content:'';position:absolute;left:50%;top:-14px;width:1px;height:14px;background:var(--ink);opacity:.4}
.rd-card strong{display:block;font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:clamp(30px,min(2.8vw,5vh),46px);line-height:1;letter-spacing:-.03em;margin-bottom:6px}
.rd-card p{font-size:clamp(14px,min(1.05vw,2vh),16px);line-height:1.35}
.rd-foot{display:grid;grid-template-columns:1fr 1fr 1fr;gap:clamp(14px,2vw,32px);align-items:start}

/* ---------- 6 · The standoff: dumbbells, women vs men ---------- */
.rs-viz{display:flex;flex-direction:column;gap:clamp(12px,2.2vh,22px)}
.db{display:flex;flex-direction:column;gap:clamp(14px,2.6vh,26px)}
.db-row{display:flex;flex-direction:column;gap:6px;opacity:.38;transition:opacity .3s}
.db-row.is-current{opacity:1}
.db-l{font-family:Coolvetica,Arial,sans-serif;font-size:clamp(17px,min(1.4vw,2.6vh),22px);line-height:1.1}
.db-track{position:relative;height:44px;background:linear-gradient(var(--line),var(--line)) 0 32px/100% 1px no-repeat}
.db-bar{position:absolute;top:30px;height:5px;border-radius:3px;background:rgba(48,47,43,.22);left:calc(min(var(--w),var(--m)) * 1%);width:calc((max(var(--w),var(--m)) - min(var(--w),var(--m))) * 1%)}
.db-dot{position:absolute;top:32px;width:16px;height:16px;margin:-8px 0 0 -8px;border-radius:50%;box-shadow:0 0 0 3px var(--paper)}
.db-w{left:calc(var(--w) * 1%);background:var(--mk-coral)}
.db-m{left:calc(var(--m) * 1%);background:var(--ink)}
.db-dot b{position:absolute;bottom:calc(100% + 5px);left:50%;translate:-50% 0;font:700 14px Arial,sans-serif;white-space:nowrap;color:var(--ink)}
.scene.active .db-dot{animation:db-in .94s var(--spring-snap) calc(.28s + var(--i) * .08s) both}
.scene.active .db-bar{animation:db-bar .94s var(--spring-snap) calc(.28s + var(--i) * .08s) both}
@keyframes db-in{from{left:0;opacity:0}}
@keyframes db-bar{from{width:0;opacity:0}}
.db-axis{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);margin-top:-8px}

/* ---------- 7 · Burnout ---------- */
.rb-row{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,.75fr) minmax(0,1.25fr) minmax(0,.95fr);gap:clamp(16px,2.4vw,40px);align-items:start}
.rb-row>*{margin:0;opacity:.45;transition:opacity .3s}
.rb-row>.is-current{opacity:1}
.rb-fig figcaption{font-size:clamp(14px,min(1.05vw,2vh),16px);line-height:1.35;margin-top:14px}
.scene.active .rb-fig{animation:rr-rise .58s ease calc(.22s + var(--n,0) * .07s) both}
.rb-fig+.rb-fig{--n:1}
.rb-h,.rw2-flag,.rpo .rr-k{font:700 11px/1 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase}
.rb-waves{display:flex;flex-direction:column;gap:12px;padding:clamp(14px,2vh,22px);border-radius:22px;background:rgba(247,245,239,.07);box-shadow:inset 0 0 0 1px var(--line)}
.rb-steps{display:flex;justify-content:space-between;position:relative;padding-top:4px}
.rb-steps:before{content:'';position:absolute;left:6px;right:6px;top:10px;height:2px;background:linear-gradient(90deg,rgba(247,245,239,.25),var(--coral))}
.rb-steps span{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;font-size:11px;color:var(--muted)}
.rb-steps i{width:14px;height:14px;border-radius:50%;background:var(--coral);box-shadow:0 0 0 3px var(--ink)}
.scene.active .rb-steps i{animation:rr-pop .43s var(--spring-snap) calc(.55s + var(--i) * .08s) both}
.rb-waves>p:not(.rb-h){font-size:clamp(14px,min(1.05vw,2vh),16px);line-height:1.4}
.rb-meta{display:flex;flex-direction:column;gap:8px}
.rb-meta>b{font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:clamp(44px,min(4.4vw,8vh),76px);line-height:.9;letter-spacing:-.04em}
.rb-meta>span{font-size:clamp(14px,min(1.05vw,2vh),16px);line-height:1.4}

/* ---------- 8 · The shift: diverging bars ---------- */
.rf-viz{display:flex;flex-direction:column;gap:clamp(10px,1.8vh,18px)}
.rf-t{font:700 11px/1 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.dv{display:flex;flex-direction:column;gap:clamp(8px,1.5vh,14px)}
.dv-row{display:grid;grid-template-columns:minmax(140px,12vw) 1fr;align-items:center;gap:14px;opacity:.38;transition:opacity .3s}
.dv-row.is-current,.scene[data-step="2"] .dv-row{opacity:1}
.dv-l{font-size:15px;font-weight:700;line-height:1.2}
.dv-l small{display:block;font-weight:400;font-size:12px;color:var(--muted)}
.dv-track{position:relative;height:min(24px,3.4vh)}
.dv-track:before{content:'';position:absolute;left:50%;top:-8px;bottom:-8px;width:1px;background:var(--ink);opacity:.45}
.dv-track i{position:absolute;top:0;bottom:0;width:calc(var(--v) * 50%)}
.dv-up i{left:50%;background:var(--mk-blue);border-radius:0 4px 4px 0;transform-origin:left}
.dv-down i{right:50%;background:var(--mk-coral);border-radius:4px 0 0 4px;transform-origin:right}
.dv-track b{position:absolute;top:50%;translate:0 -50%;font:700 14px Arial,sans-serif;white-space:nowrap}
.dv-up b{left:calc(50% + var(--v) * 50% + 8px)}
.dv-down b{right:calc(50% + var(--v) * 50% + 8px)}
.scene.active .dv-track i{animation:rr-grow .79s var(--spring-snap) calc(.28s + var(--i) * .04s) both}
.rf-spain{padding:12px 14px;border-radius:16px;background:var(--stone)}
.rf-spain b{font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:20px}
.rf-spain p{font-size:14px;line-height:1.4;margin-top:4px}

/* ---------- 9 · What singles ask for (coral) ---------- */
.rw2-rings{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,2.4vw,40px)}
.rw2-fig{margin:0;display:flex;flex-direction:column;gap:12px;opacity:.45;transition:opacity .3s}
.rw2-fig.is-current{opacity:1}
.scene.active .rw2-fig{animation:rr-rise .58s ease calc(.22s + var(--i) * .06s) both}
.rw2-fig p{font-size:clamp(14px,min(1.05vw,2vh),16px);line-height:1.35}
.rw2-spain{display:grid;grid-template-columns:auto repeat(3,minmax(0,1fr));gap:2vw;align-items:start;padding-top:clamp(10px,2vh,20px);border-top:1px solid var(--line);opacity:.45;transition:opacity .3s}
.rw2-spain.is-current{opacity:1}
.rw2-spain .rr-fact{border-top:0;padding-top:0}
.rw2-flag{padding-top:6px}

/* ---------- 10 · The AI paradox ---------- */
.rai-cols{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,3vw,56px)}
.rai-col{opacity:.42;transition:opacity .3s}
.rai-col.is-current,.scene[data-step="2"] .rai-col{opacity:1}
.rai-h{display:flex;align-items:center;gap:10px;font-family:Coolvetica,Arial,sans-serif;font-size:clamp(20px,min(1.6vw,3vh),26px);margin-bottom:clamp(8px,1.6vh,16px)}
.rai-h i{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:15px;color:var(--paper)}
.rai-yes .rai-h i{background:var(--mk-blue)}.rai-no .rai-h i{background:var(--mk-coral)}
.b2{display:flex;flex-direction:column;gap:clamp(8px,1.6vh,16px)}
.b2-row{display:grid;grid-template-columns:3.4em 1fr;column-gap:14px;row-gap:5px;align-items:center}
.b2-row>b{grid-row:span 3;align-self:start;font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:clamp(26px,min(2.2vw,4vh),36px);line-height:1}
.b2-track{height:10px;border-radius:5px;background:rgba(48,47,43,.08)}
.b2-track i{display:block;height:100%;width:calc(var(--v) * 100%);border-radius:0 4px 4px 0;background:var(--mk-blue);transform-origin:left}
.rai-no .b2-track i{background:var(--mk-coral)}
.scene.active .b2-track i{animation:rr-grow .79s var(--spring-snap) calc(.33s + var(--i) * .06s) both}
.rai-no .b2-track i{animation-delay:calc(.9s + var(--i) * .1s)!important}
.b2-row p{font-size:clamp(13.5px,min(1vw,1.9vh),15.5px);line-height:1.35}
.b2-row .rr-src{margin-top:0}
.rai-rule{display:grid;grid-template-columns:auto 1fr;align-items:baseline;column-gap:20px;padding:clamp(10px,1.8vh,16px) 20px;border-radius:18px;background:var(--stone);opacity:.5;transition:opacity .3s,scale .55s var(--spring-snap)}
.rai-rule.is-current{opacity:1;scale:1.01}
.rai-rule>b{font:700 11px/1 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase}
.rai-rule>p{font-family:Coolvetica,Arial,sans-serif;font-size:clamp(22px,min(2vw,3.6vh),32px);line-height:1.05}
.rai-rule>span{grid-column:2;font-size:13px;color:var(--muted);display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:4px}

/* ---------- 11 · Incumbents: ten features in two rows ---------- */
.ri-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(8px,1vw,14px)}
.ri-card{display:flex;flex-direction:column;gap:6px;padding:clamp(10px,1.6vh,16px) clamp(12px,1vw,16px);border-radius:18px;background:var(--paper);box-shadow:0 14px 30px -24px rgba(48,47,43,.6);opacity:.5;transition:opacity .3s,translate .55s var(--spring-snap)}
.ri-card.is-current,.scene[data-step="3"] .ri-card{opacity:1}
.ri-card.is-current{translate:0 -4px}
.scene.active .ri-card{animation:rr-rise .5s ease calc(.22s + var(--i) * .03s) both}
.ri-brand{font:700 10px/1 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#bd4127}
.ri-top{display:flex;justify-content:space-between;align-items:center;gap:6px}
.ri-name{font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:clamp(17px,min(1.35vw,2.5vh),21px);line-height:1.05}
.ri-card>p{font-size:clamp(12.5px,min(.95vw,1.8vh),14px);line-height:1.35;flex:1}
.rr-st{flex:none;display:inline-flex;align-items:center;gap:4px;font:700 9.5px/1 Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase;padding:4px 7px 4px 5px;border-radius:20px;white-space:nowrap;transition:scale .36s var(--spring-bounce)}
.rr-st i{font-style:normal;font-size:10px}
.rr-st-yes{background:var(--ink);color:var(--paper)}
.rr-st-no{box-shadow:inset 0 0 0 1.5px var(--mk-coral);color:var(--ink);background:rgba(255,104,64,.12)}
.rr-st-unk{box-shadow:inset 0 0 0 1px rgba(48,47,43,.45);color:var(--ink)}
.scene[data-step="3"] .rr-st{scale:1.12}
.ri-verdict{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 24px;font-size:15px}
.ri-verdict>b{font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:20px}

/* ---------- 12 · AI matchmakers (blue) ---------- */
.rx{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);column-gap:3.6vw;align-items:center}
.rx-copy{display:flex;flex-direction:column;gap:clamp(12px,2.2vh,22px)}
.rx-zero{display:flex;align-items:baseline;gap:14px;opacity:.5;transition:opacity .3s}
.rx-zero.is-current{opacity:1}
.rx-zero b{font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:clamp(44px,min(4.4vw,8vh),76px);line-height:.9;letter-spacing:-.04em}
.rx-zero>span{font-family:Coolvetica,Arial,sans-serif;font-size:22px}
.rx-take{font-size:clamp(15px,min(1.15vw,2.2vh),18px);line-height:1.4;max-width:30em}
.rx-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(8px,1vw,14px)}
.rx-card{display:flex;flex-direction:column;gap:7px;padding:clamp(12px,1.8vh,18px) clamp(12px,1vw,16px);border-radius:20px;background:var(--paper);box-shadow:0 16px 34px -26px rgba(48,47,43,.6);opacity:.55;transition:opacity .3s}
.rx-card.is-current,.scene[data-step="2"] .rx-card{opacity:1}
.scene.active .rx-card{animation:rr-rise .5s ease calc(.25s + var(--i) * .04s) both}
.rx-name{font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:clamp(20px,min(1.6vw,3vh),26px);line-height:1}
.rx-card>p{font-size:clamp(12.5px,min(.95vw,1.8vh),14px);line-height:1.35;flex:1}
.rx-k{width:fit-content;font-size:12px;font-weight:700;padding:4px 9px;border-radius:20px;background:var(--stone)}
.rx-where{display:flex;align-items:center;gap:7px;font-size:12.5px;font-weight:700}
.rx-where i{width:10px;height:10px;border-radius:50% 50% 50% 0;rotate:-45deg;background:var(--ink);transition:background .3s,scale .36s var(--spring-bounce)}
.scene[data-step="2"] .rx-where i{background:var(--mk-coral);scale:1.3}

/* ---------- 13 · Groups and failures ---------- */
.rgp-spec{position:relative;display:grid;grid-template-columns:repeat(3,1fr);align-items:end;padding-bottom:6px}
.rgp-spec:after{content:'More people at the table →';position:absolute;left:8%;right:8%;bottom:-14px;font-size:11px;color:var(--muted);text-align:right;border-top:1px solid var(--line);padding-top:4px}
.rgp-item{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}
.rgp-item b{font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:clamp(17px,min(1.4vw,2.6vh),22px)}
.rgp-item>span{font-size:12.5px;color:var(--muted)}
.rgp-ico,.rgp-table{position:relative;width:min(10vh,86px);height:min(10vh,86px);margin-bottom:8px}
.rgp-ico i{position:absolute;inset:8% 22%;border-radius:10px;background:#fff;box-shadow:0 8px 18px -10px rgba(48,47,43,.6)}
.rgp-ico i:nth-child(2){rotate:-8deg;background:var(--stone)}
.rgp-ico i:nth-child(3){animation:rgp-swipe 3s ease-in-out .66s infinite}
@keyframes rgp-swipe{0%,30%{translate:0 0;rotate:0deg;opacity:1}55%{translate:70% -10%;rotate:22deg;opacity:0}56%,80%{translate:0 0;rotate:0deg;opacity:0}100%{opacity:1}}
.rgp-table{border-radius:50%;background:#fff;box-shadow:0 12px 24px -16px rgba(48,47,43,.6)}
.rgp-table i{position:absolute;left:50%;top:50%;width:26%;height:26%;margin:-13% 0 0 -13%;border-radius:50%;background:var(--ink)}
.rgp-two .rgp-table i:first-child{translate:-150% 0;background:var(--coral)}
.rgp-two .rgp-table i:last-child{translate:150% 0}
.rgp-six .rgp-table i{transform:rotate(calc(var(--k) * 60deg)) translateY(-150%);background:var(--mk-grey)}
.rgp-two .rgp-table{box-shadow:0 0 0 3px var(--coral),0 12px 24px -16px rgba(48,47,43,.6)}
.scene.active .rgp-table i{animation:rr-pop .43s var(--spring-snap) calc(.44s + var(--k,0) * .04s) both}
.scene.active .rgp-two .rgp-table{animation:rgp-glow 2.4s ease-in-out .88s infinite alternate}
@keyframes rgp-glow{to{box-shadow:0 0 0 7px rgba(255,104,64,.45),0 12px 24px -16px rgba(48,47,43,.6)}}
.rgp-cols{display:grid;grid-template-columns:1.1fr 1fr .8fr;gap:clamp(16px,2.4vw,40px);align-items:start;margin-top:clamp(8px,2vh,20px)}
.rgp-cols>div{opacity:.45;transition:opacity .3s}
.rgp-cols>.is-current{opacity:1}
.rgp-grow{display:flex;flex-direction:column;gap:10px}
.rgp-grow .rr-fact{grid-template-columns:clamp(110px,9vw,150px) 1fr}
.rgp-fail{display:flex;flex-direction:column;gap:8px}
.rgp-fail>div{padding:8px 12px;border-radius:14px;background:var(--stone)}
.rgp-fail>div>b,.rgp-lessons>b{font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:18px}
.rgp-fail p{font-size:13.5px;line-height:1.35}
.rgp-fail .rr-src{margin-top:2px}
.rgp-lessons{padding:16px 18px;border-radius:18px;background:var(--ink);color:var(--paper)}
.rgp-lessons b{display:block;font:700 10px/1 Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--coral);margin-bottom:4px}
.rgp-lessons p{font-family:Coolvetica,Arial,sans-serif;font-size:clamp(18px,min(1.5vw,2.8vh),24px);line-height:1.08;margin-bottom:12px}

/* ---------- 14 · Breeze (ink) ---------- */
.rz-flow{position:relative;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));padding-top:4px}
.rz-flow:before,.rz-flow:after{content:'';position:absolute;top:18px;height:2px}
.rz-flow:before{left:6.25%;width:62.5%;background:rgba(247,245,239,.45)}
.rz-flow:after{left:68.75%;width:25%;background:var(--coral);transform-origin:left;transform:scaleX(0);transition:transform .18s}
.scene[data-step="2"] .rz-flow:after{transform:none;transition:transform .86s cubic-bezier(.6,0,.2,1) .18s}
.rz-node{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:5px;padding:0 4px}
.rz-node>i{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--ink);box-shadow:inset 0 0 0 1.5px var(--paper);font:700 12px Arial,sans-serif;font-style:normal;margin-bottom:6px}
.rz-node b{font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:clamp(15px,min(1.2vw,2.2vh),19px);line-height:1.05}
.rz-node span{font-size:12px;line-height:1.3;color:var(--muted)}
.scene.active .rz-node{animation:rr-rise .5s ease calc(.22s + var(--i) * .04s) both}
.rz-dd{opacity:.3;transition:opacity .3s}
.rz-dd>i{background:var(--coral);color:var(--ink);box-shadow:none}
.rz-dd span{color:var(--coral)}
.scene[data-step="2"] .rz-dd{opacity:1;transition-delay:.7s}
.rz-stop{position:absolute;left:75%;top:-4px;bottom:-6px;width:0;border-left:2px dashed rgba(247,245,239,.5);opacity:.35;transition:opacity .3s}
.rz-stop b{position:absolute;top:100%;left:0;translate:-50% 8px;white-space:nowrap;font:700 10px/1 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;padding:5px 9px;border-radius:20px;background:var(--paper);color:var(--ink)}
.rz-stop.is-current{opacity:1}
.rz-token{position:absolute;top:19px;left:6.25%;width:16px;height:16px;margin:-8px 0 0 -8px;border-radius:50%;background:var(--coral);box-shadow:0 0 0 4px rgba(255,104,64,.3);transition:left 1.09s var(--spring-soft)}
.scene[data-step="0"] .rz-token{animation:rz-run 2.45s cubic-bezier(.5,0,.3,1) .28s both}
.scene[data-step="1"] .rz-token{left:68.75%;animation:rz-halt 1s ease-in-out infinite alternate}
.scene[data-step="2"] .rz-token{left:93.75%}
@keyframes rz-run{to{left:68.75%}}
@keyframes rz-halt{to{scale:1.35}}
.rz-stats{display:grid;grid-template-columns:repeat(6,auto) 1fr;align-items:end;gap:6px clamp(14px,2vw,34px);padding-top:clamp(18px,3vh,30px)}
.rz-stats>div b{display:block;font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:clamp(24px,min(2.2vw,4vh),36px);line-height:1;letter-spacing:-.02em;white-space:nowrap}
.rz-stats>div>span{font-size:12px;color:var(--muted)}
.rz-stats>p{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;color:var(--muted)}
.rz-where{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.rz-where>span{font:700 11px/1 Arial,sans-serif;letter-spacing:.06em;padding:6px 8px;border-radius:8px;background:rgba(247,245,239,.12)}
.rz-where>.rz-es{background:transparent;box-shadow:inset 0 0 0 1.5px var(--coral);color:var(--coral)}
.rz-where>p{flex:1 1 24em;font-size:13px;line-height:1.4;color:var(--muted);margin-left:14px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}

/* ---------- 15 · Pricing: a dot plot ---------- */
.rp-viz{display:flex;flex-direction:column;gap:clamp(10px,1.8vh,16px)}
.rp-t{font:700 11px/1 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.rp-plot{--lc:86px;position:relative;display:flex;flex-direction:column;gap:clamp(6px,1.2vh,12px);padding:30px 0 26px}
.rp-band{position:absolute;top:24px;bottom:20px;left:calc(var(--lc) + 14px + (100% - var(--lc) - 14px) * 10 / 35);width:calc((100% - var(--lc) - 14px) * 5 / 35);border-radius:10px;background:rgba(173,217,237,.55);opacity:.5;transition:opacity .3s,background .3s}
.rp-band.is-current{opacity:1;background:rgba(173,217,237,.9)}
.rp-band span{position:absolute;top:-22px;left:50%;translate:-50% 0;white-space:nowrap;font:700 11px/1 Arial,sans-serif;letter-spacing:.06em}
.rp-row{position:relative;display:grid;grid-template-columns:var(--lc) 1fr;gap:14px;align-items:center;min-height:min(34px,5vh)}
.rp-l{font-weight:700;font-size:14px}
.rp-track{position:relative;height:100%;min-height:22px;background:linear-gradient(var(--line),var(--line)) 0 50%/100% 1px no-repeat}
.rp-mark{position:absolute;top:50%;left:calc(var(--a) * 100%);width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:var(--ink);box-shadow:0 0 0 2px var(--stone)}
.rp-range{width:calc((var(--b) - var(--a)) * 100% + 14px);border-radius:8px}
.rp-track b{position:absolute;top:50%;translate:0 -50%;left:calc(var(--b) * 100% + 14px);font-size:13px;white-space:nowrap}
.rp-left .rp-track b{left:auto;right:calc((1 - var(--a)) * 100% + 14px)}
.scene.active .rp-mark{animation:rp-in .86s var(--spring-snap) calc(.28s + var(--i) * .06s) both}
.scene.active .rp-track b{animation:rr-fade .43s ease calc(.6s + var(--i) * .06s) both}
@keyframes rp-in{from{left:0;opacity:0}}
.rp-axis{position:absolute;left:calc(var(--lc) + 14px);right:0;bottom:0;height:16px}
.rp-axis span{position:absolute;left:calc(var(--a) * 100%);translate:-50% 0;font-size:11px;color:var(--muted)}
.rp-note{font-size:12px;color:var(--muted);display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.rp-subs{display:grid;grid-template-columns:max-content minmax(0,1fr);column-gap:18px;row-gap:12px;opacity:.45;transition:opacity .3s}
.rp-subs>.rr-fact{grid-column:1/-1;grid-template-columns:subgrid}
.rp-subs.is-current{opacity:1}

/* ---------- 16 · The comparison matrix ---------- */
.rmx{gap:clamp(8px,1.6vh,16px)}
.rmx-top{display:flex;justify-content:space-between;align-items:flex-end;gap:30px}
.rmx-top .rr-head h2{font-size:min(3.4vw,6.2vh)}
.rmx-key{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:12.5px;font-weight:700;padding-bottom:6px}
.rmx-key span{display:inline-flex;align-items:center;gap:7px}
.mx{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}
.mx th,.mx td{padding:0;text-align:center;vertical-align:middle;border-bottom:1px solid var(--line);height:min(34px,4.1vh);transition:background .3s}
.mx thead th{height:auto;padding:0 4px 8px;font:700 11.5px/1.2 Arial,sans-serif;color:var(--muted);vertical-align:bottom;border-bottom:1.5px solid var(--ink)}
.mx thead th:first-child{width:15%}
.mx tbody th{text-align:left;font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:clamp(15px,min(1.2vw,2.3vh),19px);white-space:nowrap}
.mx tbody th small{font:11px Arial,sans-serif;color:var(--muted);margin-left:7px}
.mx i,.rmx-key i{display:inline-block;width:15px;height:15px;border-radius:50%;vertical-align:middle;position:relative}
.mx-y{background:var(--ink)}
.mx-p{background:linear-gradient(90deg,var(--ink) 50%,transparent 50%);box-shadow:inset 0 0 0 1.5px var(--ink)}
.mx-n{box-shadow:inset 0 0 0 1.5px rgba(48,47,43,.32)}
.mx-u{box-shadow:inset 0 0 0 1.5px rgba(48,47,43,.32)}
.mx-u:after{content:'?';position:absolute;inset:0;font:700 10px/15px Arial,sans-serif;color:var(--muted)}
.mx-pl{border:2px dashed var(--mk-coral)}
.mx-dd .mx-y{background:var(--mk-coral)}
.scene.active .mx td i{animation:rr-pop .36s var(--spring-snap) calc(.22s + var(--c) * .04s + var(--r) * .01s) both}
.rmx-foot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 20px}
.rmx-call{font-family:Coolvetica,Arial,sans-serif;font-size:clamp(17px,min(1.4vw,2.6vh),22px)}
.rmx-foot .rr-src{margin-top:0}

/* ---------- 17 · Evidence strength ---------- */
.rev-list{display:flex;flex-direction:column}
.rev-row{display:grid;grid-template-columns:1fr auto 9.5em;align-items:center;gap:16px;padding:clamp(6px,1.15vh,11px) 0;border-bottom:1px solid var(--line);opacity:.4;transition:opacity .3s}
.rev-row.is-current,.scene[data-step="2"] .rev-row{opacity:1}
.rev-l{font-family:Coolvetica,Arial,sans-serif;font-size:clamp(16px,min(1.3vw,2.4vh),21px);line-height:1.05}
.rev-l small{display:block;font:12.5px/1.3 Arial,sans-serif;color:var(--muted);margin-top:3px}
.rev-m{display:flex;gap:4px}
.rev-m i{width:clamp(18px,1.9vw,28px);height:10px;border-radius:5px;background:rgba(48,47,43,.12)}
.rev-m .on{background:var(--mk-coral)}
.rev-m .half{background:linear-gradient(90deg,var(--mk-coral) 50%,rgba(48,47,43,.12) 50%)}
.scene.active .rev-m i{animation:rr-pop .36s var(--spring-snap) calc(.28s + var(--i) * .04s) both}
.rev-t{font-size:12.5px}
.rev-src{margin-top:10px}
.rev-verdict{display:grid;grid-template-columns:auto 1fr;gap:6px 16px;align-items:baseline;padding:16px 18px;border-radius:18px;background:var(--paper);opacity:.45;transition:opacity .3s}
.rev-verdict.is-current{opacity:1}
.rev-verdict b{font:700 10px/1 Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#bd4127}
.rev-verdict p{font-family:Coolvetica,Arial,sans-serif;font-size:clamp(17px,min(1.4vw,2.6vh),22px);line-height:1.1}

/* ---------- 18 · Introductions ---------- */
.rcu-viz{display:flex;flex-direction:column;gap:clamp(10px,2vh,20px)}
.rcu-panel{position:relative;padding:clamp(14px,2.2vh,22px) clamp(16px,1.6vw,24px);border-radius:22px;background:var(--card);box-shadow:0 18px 40px -30px rgba(48,47,43,.55);opacity:.5;transition:opacity .3s}
.rcu-panel.is-current{opacity:1}
.rcu-t{font:700 11px/1.3 Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:12px;max-width:70%}
.rcu-panel:first-child .rcu-t{min-height:58px}
.rcu-cards{position:absolute;right:clamp(16px,1.6vw,24px);top:14px;width:70px;height:56px}
.rcu-cards i{position:absolute;inset:0 20px 0 0;border-radius:8px;background:var(--stone);box-shadow:0 4px 10px -6px rgba(48,47,43,.6);transform:rotate(calc(var(--k) * 6deg - 15deg)) translateX(calc(var(--k) * 4px));transform-origin:50% 120%}
.scene.active .rcu-cards i:last-child{animation:rcu-swipe 2.6s ease-in-out .55s infinite}
@keyframes rcu-swipe{0%,40%{translate:0 0;opacity:1}70%{translate:-60px -6px;opacity:0;rotate:-18deg}71%,100%{translate:0 0;opacity:0}}
.rcu-bars{display:flex;flex-direction:column;gap:8px;margin-bottom:8px}
.rcu-bars>div{display:grid;grid-template-columns:clamp(110px,9vw,140px) 1fr 4.2em;gap:12px;align-items:center;font-size:13.5px}
.rcu-bars i{height:16px;width:calc(var(--v) * 100%);border-radius:0 4px 4px 0;background:var(--ink);transform-origin:left}
.rcu-bars>div+div i{background:var(--mk-coral)}
.rcu-bars b{font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:20px}
.scene.active .rcu-bars i{animation:rr-grow .79s var(--spring-snap) .33s both}
.rcu-r>div+div i{background:var(--mk-blue)}
.rcu-also{font-size:13.5px;line-height:1.4;margin-top:8px;display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center}

/* ---------- 19 · The shared moment (blue) ---------- */
.rsc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(10px,1.4vw,22px)}
.rsc-card{display:flex;flex-direction:column;gap:8px;padding:clamp(14px,2vh,22px) clamp(14px,1.4vw,22px);border-radius:22px;background:var(--paper);box-shadow:0 18px 40px -30px rgba(48,47,43,.6);opacity:.55;transition:opacity .3s,translate .55s var(--spring-snap)}
.rsc-card.is-current{opacity:1;translate:0 -6px}
.scene.active .rsc-card{animation:rr-rise .58s ease calc(.22s + var(--n,0) * .06s) both}
.rsc-card:nth-child(2){--n:1}.rsc-card:nth-child(3){--n:2}
.rsc-k{font:700 11px/1 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#bd4127}
.rsc-big{font-family:Coolvetica,Arial,sans-serif;font-size:clamp(26px,min(2.4vw,4.4vh),40px);line-height:1}
.rsc-card>p:not(.rsc-k):not(.rsc-big){font-size:clamp(13.5px,min(1vw,1.9vh),15.5px);line-height:1.38}
.rsc-card .rsc-also{font-size:13px;color:var(--muted);display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center;margin-top:auto}
.rsc-dots{padding:30px 0 6px}
.rsc-scale{position:relative;height:2px;background:var(--line)}
.rsc-scale i{position:absolute;top:1px;left:calc(var(--v) * 100%);width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:var(--ink);box-shadow:0 0 0 2px var(--paper)}
.rsc-scale .rsc-hi{background:var(--mk-coral)}
.rsc-scale b{position:absolute;bottom:calc(100% + 6px);left:50%;translate:-50% 0;font:700 13px Arial,sans-serif}
.rsc-scale small{position:absolute;top:calc(100% + 6px);left:50%;translate:-50% 0;font-size:11px;color:var(--muted);white-space:nowrap}
.rsc-scale i:first-child small{left:auto;right:50%;translate:0 0}
.rsc-scale .rsc-hi small{left:50%;translate:0 0}
.rsc-scale i:first-child b{left:auto;right:50%;translate:-3px 0}
.rsc-scale .rsc-hi b{left:50%;translate:3px 0}
.rsc-ax{display:flex;justify-content:space-between;margin-top:26px;font-size:11px;color:var(--muted)}
.scene.active .rsc-scale i{animation:rp-in .94s var(--spring-snap) .44s both}
.rsc-curve{width:100%;height:auto;max-height:15vh;overflow:visible}
.rsc-base{stroke:var(--line);stroke-width:1}
.rsc-zone{fill:rgba(255,104,64,.16)}
.rsc-arc{fill:none;stroke:var(--ink);stroke-width:2.5;stroke-linecap:round;stroke-dasharray:1 1}
.scene.active .rsc-arc{animation:rsc-draw 1.15s cubic-bezier(.5,0,.2,1) .49s both}
@keyframes rsc-draw{from{stroke-dashoffset:1}}
.rsc-curve text{font:700 10px Arial,sans-serif;fill:var(--ink)}
.rsc .rr-cav{margin-top:-2px}

/* ---------- 20 · The chosen signal (coral) ---------- */
.rg-hero{display:flex;flex-direction:column;gap:10px}
.rg-hero>b{font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:min(9vw,16vh);line-height:.85;letter-spacing:-.06em}
.rg-hero>p{font-size:clamp(15px,min(1.2vw,2.2vh),19px);line-height:1.35;max-width:26em}
.rg-viz{display:flex;flex-direction:column;gap:clamp(10px,2vh,20px)}
.rg-stage{position:relative;height:min(20vh,170px)}
.rg-req{position:absolute;left:8%;top:50%;translate:0 -50%;display:flex;align-items:center;gap:14px;padding:16px 22px;border-radius:22px;background:var(--paper);box-shadow:0 22px 44px -26px rgba(48,47,43,.7)}
.rg-req .ui-avatar{width:44px;height:44px}
.rg-req b{font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:22px}
.rg-stamp{position:absolute;right:-24px;top:-18px;font:700 12px/1 Arial,sans-serif;font-style:normal;letter-spacing:.12em;text-transform:uppercase;padding:8px 12px;border-radius:20px;background:var(--ink);color:var(--paper);rotate:8deg}
.rg-gift{position:absolute;left:calc(8% + 6px);top:calc(50% - 64px);width:52px;height:52px;display:grid;place-items:center;font-size:28px;border-radius:50%;background:var(--paper);box-shadow:0 10px 20px -10px rgba(48,47,43,.7)}
.scene[data-step="0"] .rg-gift{animation:rg-fly 1.08s var(--spring-snap) .22s both}
.scene[data-step="0"] .rg-stamp{animation:rr-pop .5s var(--spring-snap) .94s both}
@keyframes rg-fly{from{translate:62vw 30px;rotate:40deg;scale:.6}}
.rg-why,.rg-rule{opacity:.45;transition:opacity .3s}
.rg-why.is-current,.rg-rule.is-current{opacity:1}
.rg-why{display:flex;flex-direction:column;gap:10px}
.rg-rule{padding:16px 18px;border-radius:18px;background:var(--ink);color:var(--paper)}
.rg-rule>b{font:700 10px/1 Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--coral)}
.rg-rule p{font-family:Coolvetica,Arial,sans-serif;font-size:clamp(19px,min(1.7vw,3.1vh),27px);line-height:1.08;margin:6px 0 4px}
.rg-rule .rr-src{color:#c8c8be}
.rg-rule .rr-src>b{background:rgba(247,245,239,.14);color:var(--paper)}

/* ---------- 21 · The private yes (ink) ---------- */
.ry-viz{display:flex;flex-direction:column;gap:clamp(14px,2.6vh,26px)}
.ry-reveal{position:relative;display:flex;justify-content:center;gap:16px;padding-bottom:46px}
.ry-card{position:relative;width:min(12vw,130px);aspect-ratio:3/4;border-radius:20px;background:rgba(247,245,239,.08);box-shadow:inset 0 0 0 1.5px rgba(247,245,239,.3);display:grid;place-items:center}
.ry-card span{position:absolute;top:12px;left:14px;font:700 10px/1 Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.ry-card b{position:absolute;font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:clamp(26px,min(2.6vw,4.6vh),40px)}
.ry-v{color:var(--coral)}
.ry-q{opacity:0}
.scene.active .ry-q{animation:ry-q 7s ease infinite}
.scene.active .ry-v{animation:ry-v 7s var(--spring-bounce) infinite}
.scene.active .ry-b .ry-q{animation-delay:.5s}.scene.active .ry-b .ry-v{animation-delay:.5s}
@keyframes ry-q{0%,14%{opacity:1;scale:1}20%,100%{opacity:0;scale:.6}}
@keyframes ry-v{0%,16%{opacity:0;scale:.4}24%,90%{opacity:1;scale:1}100%{opacity:0;scale:.9}}
.ry-match{position:absolute;bottom:0;left:50%;translate:-50% 0;white-space:nowrap;font:700 12px/1 Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase;padding:10px 16px;border-radius:30px;background:var(--coral);color:var(--ink)}
.scene.active .ry-match{animation:ry-m 7s var(--spring-bounce) infinite}
@keyframes ry-m{0%,30%{opacity:0;scale:.5}38%,88%{opacity:1;scale:1}96%,100%{opacity:0;scale:.9}}
.ry-bars{display:flex;flex-direction:column;gap:8px;padding:16px 18px;border-radius:20px;box-shadow:inset 0 0 0 1px var(--line);opacity:.5;transition:opacity .3s}
.ry-bars.is-current{opacity:1}
.ry-t{font:700 11px/1 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}
.ry-bars>div{display:grid;grid-template-columns:80px 1fr 4em;gap:12px;align-items:center;font-size:14px}
.ry-bars>div i{height:14px;width:calc(var(--v) * 100%);border-radius:0 4px 4px 0;background:var(--coral);transform-origin:left}
.ry-bars>div b{font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:20px}
.scene.active .ry-bars>div i{animation:rr-grow .79s var(--spring-snap) calc(.33s + var(--i) * .06s) both}
.ry-so{font-size:14px;line-height:1.4;margin-top:4px}
.ry .rr-fact{transition:opacity .3s}
.ry .rr-facts>.rr-fact{opacity:.5}
.ry .rr-facts>.rr-fact.is-current{opacity:1}

/* ---------- 22 · The dare ---------- */
.rpl-viz{display:flex;flex-direction:column;gap:clamp(12px,2.2vh,22px)}
.rpl-yes{display:grid;grid-template-columns:max-content minmax(0,1fr);column-gap:18px;row-gap:12px;opacity:.5;transition:opacity .3s}
.rpl-yes>.rr-fact{grid-column:1/-1;grid-template-columns:subgrid}
.rpl-yes.is-current{opacity:1}
.rpl-bridge{display:grid;grid-template-columns:min(30%,200px) 1fr;column-gap:20px;row-gap:6px;align-items:center;padding:16px 18px;border-radius:20px;background:var(--stone);opacity:.5;transition:opacity .3s}
.rpl-bridge.is-current{opacity:1}
.rpl-bridge svg{grid-row:span 3;width:100%;overflow:visible}
.rpl-rope,.rpl-deck,.rpl-hang{fill:none;stroke:var(--ink);stroke-width:1.5}
.rpl-deck{stroke-width:3}
.scene.active .rpl-bridge svg{animation:rpl-wobble 2.4s ease-in-out infinite}
@keyframes rpl-wobble{25%{rotate:.6deg}75%{rotate:-.6deg}}
.rpl-x{fill:none;stroke:var(--mk-coral);stroke-width:4;stroke-linecap:round;stroke-dasharray:1 1;stroke-dashoffset:1;transition:stroke-dashoffset .62s cubic-bezier(.6,0,.2,1)}
.rpl-bridge.is-current .rpl-x,.scene[data-step="2"] .rpl-x{stroke-dashoffset:0}
.rpl-bridge p{font-size:14px;line-height:1.4}
.rpl-bridge p b{font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:19px;display:block}
.rpl-also{color:var(--muted);font-size:13px!important;display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center}
.rpl-rule{padding:18px 20px;border-radius:20px;background:var(--ink);color:var(--paper);opacity:.5;transition:opacity .3s}
.rpl-rule.is-current{opacity:1}
.rpl-rule>b{font:700 10px/1 Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--coral)}
.rpl-rule p{font-family:Coolvetica,Arial,sans-serif;font-size:clamp(19px,min(1.6vw,3vh),26px);line-height:1.1;margin-top:6px}

/* ---------- 23 · Spain ---------- */
.rsp-hero{display:flex;flex-direction:column;gap:8px;opacity:.5;transition:opacity .3s}
.rsp-hero.is-current{opacity:1}
.rsp-hero>b{font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:min(8vw,14vh);line-height:.85;letter-spacing:-.05em}
.rsp-hero>p{font-size:clamp(15px,min(1.15vw,2.2vh),18px);line-height:1.4;max-width:28em}
.rsp .rr-facts>.rr-fact{opacity:.5}.rsp .rr-facts>.rr-fact.is-current{opacity:1}
.rsp-viz{display:flex;flex-direction:column;gap:clamp(12px,2vh,20px);padding:clamp(16px,2.4vh,26px) clamp(16px,1.8vw,28px);border-radius:24px;background:var(--card);box-shadow:0 20px 44px -32px rgba(48,47,43,.6);opacity:.55;transition:opacity .3s}
.rsp-viz.is-current{opacity:1}
.rsp-t{font:700 11px/1 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.rsp-bars{display:flex;flex-direction:column;gap:clamp(8px,1.4vh,14px)}
.rsp-row{display:grid;grid-template-columns:70px 1fr;gap:14px;align-items:center;font-weight:700;font-size:14px}
.rsp-track{position:relative;height:min(24px,3.4vh)}
.rsp-track i{position:absolute;left:0;top:0;bottom:0;width:calc(var(--a) * 100%);border-radius:0 4px 4px 0;background:var(--ink);transform-origin:left}
.rsp-track .rsp-rng{left:calc(var(--a) * 100% + 2px);width:calc((var(--b) - var(--a)) * 100%);background:repeating-linear-gradient(45deg,var(--ink) 0 2px,rgba(48,47,43,.3) 2px 5px)}
.rsp-hinge .rsp-track i{background:var(--mk-coral)}
.rsp-track b{position:absolute;top:50%;translate:0 -50%;left:calc(var(--b) * 100% + 10px);font-weight:400;font-size:13px;white-space:nowrap}
.scene.active .rsp-track i{animation:rr-grow .79s var(--spring-snap) calc(.28s + var(--i) * .04s) both}
.rsp-note{font-size:13px;line-height:1.4;color:var(--muted);display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center}

/* ---------- 24 · Who's on the apps ---------- */
.rbl-viz{display:flex;flex-direction:column;gap:clamp(12px,2.2vh,22px)}
.rbl-picto{display:flex;flex-direction:column;gap:10px;opacity:.5;transition:opacity .3s}
.rbl-picto.is-current{opacity:1}
.rbl-g{display:grid;grid-template-columns:7.5em 1fr;align-items:center;gap:12px}
.rbl-g>p{font-size:14px}
.rbl-g>p b{display:block;font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:clamp(26px,min(2.4vw,4.4vh),40px);line-height:1}
.rbl-g>div{display:grid;grid-template-columns:repeat(18,1fr);gap:4px;max-width:min(100%,54vh)}
.rbl-g i,.rbl-key i{position:relative;display:block;aspect-ratio:3/5;max-width:22px}
.rbl-g i:before,.rbl-key i:before{content:'';position:absolute;left:28%;right:28%;top:0;aspect-ratio:1;border-radius:50%;background:currentColor}
.rbl-g i:after,.rbl-key i:after{content:'';position:absolute;left:8%;right:8%;bottom:0;height:52%;border-radius:40% 40% 10% 10%;background:currentColor}
.rbl-m i{color:var(--ink)}.rbl-w i{color:var(--mk-coral)}
.scene.active .rbl-g i{animation:rr-pop .35s var(--spring-snap) calc(.22s + var(--i) * 12ms) both}
.rbl-key{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:12px;color:var(--muted)}
.rbl-key i{width:12px;color:var(--ink)}
.rbl-key .rr-src{margin-top:0}
.rbl-time{display:grid;grid-template-columns:auto auto 1fr;align-items:end;gap:6px 26px;opacity:.5;transition:opacity .3s}
.rbl-time.is-current{opacity:1}
.rbl-time>div>b{display:block;font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:clamp(26px,min(2.4vw,4.4vh),40px);line-height:1}
.rbl-time>div>span{font-size:13px;color:var(--muted)}
.rbl-time .rr-src{grid-column:1/-1}
.rbl-safe{display:flex;flex-direction:column;gap:10px;padding:clamp(14px,2vh,20px) clamp(16px,1.6vw,22px);border-radius:22px;background:var(--paper);opacity:.5;transition:opacity .3s}
.rbl-safe.is-current{opacity:1}
.rbl-t{font:700 11px/1 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.rbl-row{display:grid;grid-template-columns:3.6em 1fr;column-gap:14px;row-gap:3px;align-items:center}
.rbl-row>b{grid-row:span 3;align-self:start;font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:clamp(22px,min(2vw,3.6vh),32px);line-height:1}
.rbl-track{height:8px;border-radius:4px;background:rgba(48,47,43,.08)}
.rbl-track i{display:block;height:100%;width:calc(var(--v) * 100%);border-radius:0 4px 4px 0;background:var(--ink);transform-origin:left}
.rbl-row:last-child .rbl-track i{background:var(--mk-coral)}
.scene.active .rbl-track i{animation:rr-grow .79s var(--spring-snap) calc(.44s + var(--i) * .06s) both}
.rbl-row p{font-size:13.5px;line-height:1.35}
.rbl-row .rr-src{margin-top:0}

/* ---------- 25 · Barcelona (blue) ---------- */
.rcy-stats{display:grid;grid-template-columns:repeat(4,auto);justify-content:start;gap:8px clamp(14px,1.8vw,30px)}
.rcy-stats>div{opacity:.5;transition:opacity .3s}
.rcy-stats>.is-current{opacity:1}
.rcy-stats b{display:block;font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:clamp(24px,min(2.2vw,4vh),36px);line-height:1;letter-spacing:-.02em;white-space:nowrap}
.rcy-stats>div>span{font-size:12px;line-height:1.3;color:var(--muted)}
.rcy-src{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:-8px}
.rcy-map{position:relative;align-self:stretch;max-height:62vh;border-radius:28px;overflow:hidden;background:var(--paper);box-shadow:0 24px 50px -34px rgba(48,47,43,.6)}
.rcy-grid{position:absolute;left:-12%;top:-14%;width:124%;height:124%;display:grid;grid-template-columns:repeat(10,1fr);grid-template-rows:repeat(8,1fr);gap:7px;rotate:-44deg;scale:.92}
.rcy-grid i{position:relative;border-radius:2px;background:var(--stone);clip-path:polygon(18% 0,82% 0,100% 18%,100% 82%,82% 100%,18% 100%,0 82%,0 18%)}
.rcy-grid i:after{content:'';position:absolute;left:50%;top:50%;width:18%;aspect-ratio:1;margin:-9% 0 0 -9%;border-radius:50%;background:var(--mk-coral);opacity:0}
.scene.active .rcy-grid i:nth-child(3n+1):after{animation:rcy-light 4.2s ease-in-out calc(var(--i) * 53ms % 2.2s) infinite}
@keyframes rcy-light{0%,100%{opacity:0;scale:.5}40%,60%{opacity:.85;scale:1}}
.rcy-sea{position:absolute;inset:0;clip-path:polygon(100% 52%,100% 100%,46% 100%);background:repeating-linear-gradient(-44deg,rgba(45,111,142,.18) 0 2px,rgba(173,217,237,.85) 2px 12px);display:flex;align-items:flex-end;justify-content:flex-end;padding:0 22px 64px 0;font:700 10px/1 Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--mk-blue)}
.rcy-z{position:absolute;display:grid;place-items:center;width:clamp(62px,6.6vw,96px);aspect-ratio:1;border-radius:50%;background:rgba(255,104,64,.24);box-shadow:inset 0 0 0 2px var(--mk-coral);translate:-50% -50%;transition:scale .62s var(--spring-bounce),background .3s}
.rcy-z b{font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:clamp(15px,1.25vw,19px);padding:4px 9px;border-radius:12px;background:var(--paper)}
.rcy-gr{left:34%;top:20%}.rcy-ex{left:46%;top:45%}.rcy-cv{left:60%;top:68%}
.scene.active .rcy-z{animation:rr-pop .58s var(--spring-snap) calc(.55s + var(--n,0) * .08s) both}
.rcy-ex{--n:1}.rcy-cv{--n:2}
.rcy-map.is-current .rcy-z{background:rgba(255,104,64,.4);scale:1.06}
.rcy-cap{position:absolute;left:16px;right:16px;bottom:14px;display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;font-size:13px;padding:10px 12px;border-radius:14px;background:rgba(247,245,239,.94)}
.rcy-more{margin-top:4px}

/* ---------- 26 · Venues ---------- */
.rv .rr-head h2{font-size:min(3.5vw,6.4vh)}
.rv-n{color:#bd4127}
.rv-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(10px,1.2vw,18px)}
.rv-card{display:flex;flex-direction:column;gap:6px;padding:clamp(12px,2vh,20px) clamp(14px,1.4vw,22px);border-radius:22px;background:var(--card);box-shadow:0 18px 40px -32px rgba(48,47,43,.6);opacity:.5;transition:opacity .3s}
.rv-card.is-current{opacity:1}
.scene.active .rv-card{animation:rr-rise .5s ease calc(.22s + var(--n,0) * .04s) both}
.rv-card:nth-child(2){--n:1}.rv-card:nth-child(3){--n:2}.rv-card:nth-child(4){--n:3}.rv-card:nth-child(5){--n:4}.rv-card:nth-child(6){--n:5}
.rv-card>b{font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:clamp(30px,min(2.8vw,5vh),46px);line-height:1;letter-spacing:-.03em}
.rv-card>span{font-size:clamp(13.5px,min(1vw,1.9vh),15.5px);line-height:1.35}
.rv-t{font:700 11px/1 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.rv-bar{display:flex;gap:2px;height:38px;margin:4px 0}
.rv-bar i{display:flex;align-items:center;padding:0 10px;font-size:12px;font-style:normal;white-space:nowrap;overflow:visible}
.rv-a{flex:40;background:var(--mk-coral);border-radius:4px 0 0 4px}
.rv-b{flex:60;background:rgba(48,47,43,.12);border-radius:0 4px 4px 0}
.rv-bar b{font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:18px;margin-right:6px}
.scene.active .rv-bar i{animation:rv-flex .86s var(--spring-snap) .49s both}
@keyframes rv-flex{from{flex-grow:50}}
.rv-cost>div{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid var(--line);padding:6px 0;font-size:14px}
.rv-cost>div b{font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:clamp(22px,min(2vw,3.6vh),30px)}
.rv-cost .rr-flag{width:fit-content;margin-top:4px}

/* ---------- 27 · The rules ---------- */
.rlg-line{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(10px,1.4vw,22px);padding-top:40px}
.rlg-track{position:absolute;left:0;right:0;top:14px;height:2px;background:var(--line)}
.rlg-track i{position:absolute;inset:0;background:var(--ink);transform-origin:left;transform:scaleX(.75)}
.scene.active .rlg-track i{animation:rr-grow 1.3s cubic-bezier(.5,0,.2,1) .22s both}
.rlg-line .rd-scale{top:22px;bottom:auto}
.rlg-ev{position:relative;display:flex;flex-direction:column;gap:5px;padding:14px 16px;border-radius:20px;background:var(--paper);box-shadow:0 16px 36px -28px rgba(48,47,43,.6);opacity:.55;transition:opacity .3s}
.rlg-ev.is-current{opacity:1}
.rlg-ev>i{position:absolute;left:50%;top:-33px;width:14px;height:14px;margin-left:-7px;border-radius:50%;background:var(--ink);box-shadow:0 0 0 4px var(--stone)}
.rlg-ev[data-active="2"]>i{background:var(--stone);box-shadow:inset 0 0 0 2px var(--ink),0 0 0 4px var(--stone)}
.scene.active .rlg-ev{animation:rr-rise .5s ease calc(.28s + var(--i) * .07s) both}
.rlg-ev>b{font:700 11px/1 Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#bd4127}
.rlg-ev strong{font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:clamp(18px,min(1.5vw,2.8vh),23px);line-height:1.05}
.rlg-ev p{font-size:clamp(13px,min(.98vw,1.85vh),15px);line-height:1.35}
.rlg-now{position:absolute;top:2px;left:var(--x);translate:-50% 0;opacity:.4;transition:opacity .3s}
.rlg-now.is-current{opacity:1}
.rlg-now span{display:block;font:700 10px/1 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;padding:5px 9px;border-radius:20px;background:var(--coral)}
.scene.active .rlg-now span{animation:rd-pulse 1.8s ease-in-out .88s infinite}
.rlg-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(10px,1.4vw,22px)}
.rlg-cards>div{padding-top:12px;border-top:1.5px solid var(--ink)}
.rlg-cards>div>b{font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:clamp(17px,min(1.4vw,2.6vh),21px)}
.rlg-cards p{font-size:clamp(13px,min(.98vw,1.85vh),15px);line-height:1.38;margin-top:4px}
.scene.active .rlg-cards>div{animation:rr-rise .5s ease calc(.6s + var(--n,0) * .06s) both}
.rlg-cards>div:nth-child(2){--n:1}.rlg-cards>div:nth-child(3){--n:2}

/* ---------- 28 · Openings 1-3 (coral) ---------- */
.rwn-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(10px,1.4vw,22px)}
.rwn-card{position:relative;display:flex;flex-direction:column;gap:8px;padding:clamp(14px,2.2vh,24px) clamp(16px,1.5vw,24px);border-radius:24px;background:var(--paper);box-shadow:0 24px 48px -30px rgba(48,47,43,.6);opacity:.62;transition:opacity .3s,translate .62s var(--spring-snap)}
.rwn-card.is-current{opacity:1;translate:0 -8px}
.scene.active .rwn-card{animation:rr-rise .58s ease calc(.25s + var(--i) * .07s) both}
.rwn-n{position:absolute;right:18px;top:12px;font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:clamp(40px,min(4vw,7vh),64px);line-height:1;color:var(--coral)}
.rwn-card h3{font-size:clamp(20px,min(1.75vw,3.2vh),28px);line-height:1.02;padding-right:46px}
.rwn-card dl{margin:0;display:flex;flex-direction:column;gap:2px}
.rwn-card dt{font:700 9.5px/1 Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#bd4127;margin-top:6px}
.rwn-card dd{margin:2px 0 0;font-size:clamp(12.5px,min(.95vw,1.8vh),14.5px);line-height:1.36}

/* ---------- 29 · Openings 4-7 ---------- */
.rw4-window{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:15px}
.rw4-window b{font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:24px}
.rw4-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;border-top:1px solid var(--line)}
.rw4-list li{display:grid;grid-template-columns:56px 1fr;gap:12px;padding:clamp(8px,1.6vh,16px) 0;border-bottom:1px solid var(--line);opacity:.4;transition:opacity .3s,translate .55s var(--spring-snap)}
.rw4-list li.is-current{opacity:1;translate:8px 0}
.scene.active .rw4-list li{animation:rr-rise .5s ease calc(.28s + var(--i) * .06s) both}
.rw4-list li>b{font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:clamp(34px,min(3.2vw,5.8vh),52px);line-height:.9;color:var(--mk-coral)}
.rw4-list h3{font-size:clamp(18px,min(1.55vw,2.9vh),25px);line-height:1.05}
.rw4-list p{font-size:clamp(13.5px,min(1vw,1.9vh),15.5px);line-height:1.38;margin-top:4px}

/* ---------- 30 · Positioning (blue) ---------- */
.rpo{gap:clamp(16px,3vh,32px)}
.rpo-swap{display:flex;flex-direction:column;gap:clamp(10px,2vh,20px)}
.rpo-from{position:relative;width:fit-content;font-family:Coolvetica,Arial,sans-serif;font-size:clamp(20px,min(1.8vw,3.3vh),30px);color:var(--muted)}
.rpo-from span{font:700 11px/1 Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;margin-right:10px;color:var(--ink)}
.rpo-from:after{content:'';position:absolute;left:0;right:0;top:55%;height:3px;border-radius:2px;background:var(--mk-coral);transform-origin:left}
.scene.active .rpo-from:after{animation:rr-grow .58s cubic-bezier(.6,0,.2,1) .49s both}
.rpo-to{font-size:min(4.6vw,8.2vh);line-height:.95;letter-spacing:-.04em;max-width:16em}
.rpo-to em{color:var(--ink);background:linear-gradient(transparent 62%,rgba(255,104,64,.55) 62%)}
.rpo-roles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(10px,1.4vw,22px);opacity:.55;transition:opacity .3s}
.rpo-roles.is-current{opacity:1}
.rpo-roles>div{padding:clamp(14px,2vh,20px) clamp(14px,1.4vw,22px);border-radius:22px;background:var(--paper);box-shadow:0 20px 44px -32px rgba(48,47,43,.6)}
.scene.active .rpo-roles>div{animation:rr-rise .58s ease calc(.66s + var(--i) * .07s) both}
.rpo-roles span{font:700 10px/1 Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#bd4127}
.rpo-roles b{display:block;font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:clamp(20px,min(1.75vw,3.2vh),28px);line-height:1.04;margin:6px 0 4px}
.rpo-roles p{font-size:14px;line-height:1.38}

/* ---------- 31 · Risks ---------- */
.rk-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.6vw,26px);align-items:start}
.rk-col{display:flex;flex-direction:column;gap:8px;opacity:.5;transition:opacity .3s}
.rk-col.is-current{opacity:1}
.rk-sev{display:flex;align-items:center;gap:10px;font-family:Coolvetica,Arial,sans-serif;font-size:clamp(19px,min(1.6vw,3vh),26px);padding-bottom:6px;border-bottom:1.5px solid var(--ink)}
.rk-sev i{font-style:normal;font-size:12px;letter-spacing:2px;color:var(--mk-coral)}
.rk-card{padding:clamp(8px,1.4vh,13px) 14px;border-radius:16px;background:var(--card);box-shadow:0 12px 28px -24px rgba(48,47,43,.6)}
.rk-0 .rk-card{box-shadow:inset 3px 0 0 var(--mk-coral),0 12px 28px -24px rgba(48,47,43,.6)}
.scene.active .rk-card{animation:rr-rise .43s ease calc(.22s + var(--i) * .04s) both}
.rk-card b{display:block;font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:clamp(16px,min(1.3vw,2.4vh),20px);line-height:1.05}
.rk-card p{font-size:clamp(12.5px,min(.95vw,1.8vh),14px);line-height:1.35;color:var(--muted);margin-top:3px;max-height:0;opacity:0;overflow:hidden;transition:max-height .55s var(--spring-soft),opacity .3s}
.rk-col.is-current .rk-card p{max-height:5em;opacity:1}

/* ---------- 32 · The name (coral) ---------- */
.rn{gap:clamp(14px,2.8vh,30px)}
.rn-word{display:flex;align-items:baseline;font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:min(12vw,21vh);line-height:.9;letter-spacing:-.06em;white-space:nowrap}
.rn-flip{position:relative;display:inline-block;width:.3em;height:.92em;overflow:hidden;vertical-align:baseline;margin:0 -.015em 0 -.03em}
.rn-flip i{position:absolute;left:50%;top:0;margin-left:-.5em;width:1em;text-align:center;font-style:normal;line-height:.9;transition:translate .7s var(--spring-bounce)}
.rn-t{translate:0 110%;color:var(--paper)}
.scene[data-step="1"] .rn-r{translate:0 -110%}
.scene[data-step="1"] .rn-t{translate:0 0}
.scene.active .rn-word{animation:rr-rise .72s ease .11s both}
.rn-cols{display:grid;grid-template-columns:1fr 1fr;gap:clamp(16px,3vw,48px)}
.rn-cols>div{opacity:.5;transition:opacity .3s}
.rn-cols>.is-current{opacity:1}
.rn-h{font-family:Coolvetica,Arial,sans-serif;font-size:clamp(19px,min(1.6vw,3vh),26px);line-height:1.08;margin-bottom:10px}
.rn-cols ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.rn-cols li{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;padding:9px 0;border-bottom:1px solid var(--line);font-size:clamp(14px,min(1.05vw,2vh),16px);line-height:1.35}
.rn-cols li>b{font:700 11px/1 Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase;min-width:6.5em}
.rn-cols li .rr-src{margin-top:0}

/* ---------- 33 · Open questions ---------- */
.rq-cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(10px,1.4vw,22px);align-items:start}
.rq-cols>div{padding:clamp(14px,2vh,22px) clamp(14px,1.4vw,22px);border-radius:22px;background:var(--paper);box-shadow:0 18px 40px -32px rgba(48,47,43,.6);opacity:.55;transition:opacity .3s,translate .55s var(--spring-snap)}
.rq-cols>.is-current{opacity:1;translate:0 -6px}
.scene.active .rq-cols>div{animation:rr-rise .5s ease calc(.22s + var(--i) * .06s) both}
.rq-h{font-family:Coolvetica,Arial,sans-serif;font-size:clamp(18px,min(1.5vw,2.8vh),23px);line-height:1.05;margin-bottom:10px}
.rq-h b{display:block;font:700 10px/1 Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#bd4127;margin-bottom:6px}
.rq-cols ul{margin:0;padding:0 0 0 1.1em;display:flex;flex-direction:column;gap:6px}
.rq-cols li{font-size:clamp(13px,min(1vw,1.9vh),15px);line-height:1.38}
.rq-cols li::marker{color:var(--mk-coral)}

/* ---------- 34 · Sources (ink) ---------- */
.ro-types{display:flex;flex-direction:column;gap:7px}
.ro-types>div{display:grid;grid-template-columns:10em 1fr 2.4em;gap:12px;align-items:center;font-size:13.5px}
.ro-types i{height:10px;width:calc(var(--v) * 100%);border-radius:0 4px 4px 0;background:var(--paper);transform-origin:left}
.ro-types>div:first-child i{background:var(--coral)}
.ro-types b{font-family:Coolvetica,Arial,sans-serif;font-weight:500;font-size:19px;text-align:right}
.scene.active .ro-types i{animation:rr-grow .72s var(--spring-snap) calc(.33s + var(--i) * .04s) both}
.ro .primary{background:var(--coral);border-color:var(--coral);color:var(--ink);font-weight:700}
.ro .primary:hover{background:var(--paper);border-color:var(--paper)}
.ro-report{font-size:13px;color:var(--muted)}
.ro-out{display:flex;flex-direction:column;gap:clamp(6px,1.2vh,12px);padding:clamp(16px,2.4vh,26px) clamp(16px,1.8vw,28px);border-radius:24px;box-shadow:inset 0 0 0 1px var(--line)}
.ro-h{font:700 11px/1 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--coral);margin-bottom:4px}
.ro-x{font-family:Coolvetica,Arial,sans-serif;font-size:clamp(17px,min(1.45vw,2.7vh),23px);line-height:1.15}
.ro-x span{background:linear-gradient(var(--coral),var(--coral)) 0 56%/0 2px no-repeat;transition:background-size .55s cubic-bezier(.6,0,.2,1) calc(var(--i) * .13s),color .36s calc(var(--i) * .13s)}
.ro-out.is-current .ro-x span{background-size:100% 2px;color:rgba(247,245,239,.5)}

/* ---------- System pass: one spacing scale, one card style, and the brand blue alongside the coral ----------
   Rule of thumb: coral marks the slide (kicker, key numbers, Double Dare); blue marks structure inside it
   (labels in cards, source chips, positive states, the current card). */
.rr-deck{--blue-ink:#2273a8;--blue-wash:rgba(173,217,237,.45);--gap:clamp(10px,1.2vw,18px);--card-pad:clamp(14px,2vh,20px) clamp(16px,1.4vw,22px);--panel-pad:clamp(10px,1.6vh,14px) clamp(14px,1.2vw,18px);--card-rad:20px;--panel-rad:16px;--card-shadow:0 16px 36px -28px rgba(48,47,43,.55)}

/* Cards: same padding, corners and shadow everywhere. */
:is(.rd-card,.ri-card,.rx-card,.rsc-card,.rv-card,.rlg-ev,.rwn-card,.rq-cols>div,.rpo-roles>div,.rcu-panel,.rsp-viz,.rbl-safe){padding:var(--card-pad);border-radius:var(--card-rad);box-shadow:var(--card-shadow)}
.rk-card{border-radius:14px;padding:clamp(9px,1.4vh,12px) 14px}
.rk-0 .rk-card{box-shadow:inset 3px 0 0 var(--mk-coral),var(--card-shadow)}
:is(.rd-card,.ri-card,.rx-card,.rsc-card,.rv-card,.rlg-ev,.rwn-card,.rq-cols>div,.rcu-panel).is-current{box-shadow:0 0 0 2px var(--blue),var(--card-shadow)}

/* Grids: one gutter, so columns on the same slide line up. */
:is(.ri-grid,.rx-grid,.rsc-grid,.rv-grid,.rwn-cards,.rq-cols,.rpo-roles,.rlg-cards,.rlg-line,.rd-cards,.rk-cols,.ra-map){gap:var(--gap)}

/* Tinted panels inside a slide use the blue wash; dark panels share the same shape. */
:is(.rf-spain,.rai-rule,.rm-flags,.rev-verdict,.rgp-fail>div){background:var(--blue-wash);border-radius:var(--panel-rad);padding:var(--panel-pad)}
:is(.rgp-lessons,.rg-rule,.rpl-rule){border-radius:var(--panel-rad);padding:var(--panel-pad)}
.rpl-bridge{border-radius:var(--card-rad);padding:var(--card-pad)}

/* Blue labels inside cards. */
:is(.ri-brand,.rsc-k,.rq-h b,.rlg-ev>b,.rpo-roles span,.rwn-card dt,.rev-verdict b,.ra-h b,.rcu-t,.rv-t,.rbl-t,.rsp-t,.rf-t,.rp-t,.ry-t){color:var(--blue-ink)}
body[data-tone=ink] .ry-t{color:var(--blue)}
.rr-k:before{background:var(--blue-ink)}
body[data-tone=ink] .rr-k:before{background:var(--blue)}

/* Source chips and caveat badges. */
.rr-src>b{background:var(--blue-wash);color:var(--ink)}
body[data-tone=blue] .rr-src>b{background:rgba(255,255,255,.6)}
body[data-tone=coral] .rr-src>b{background:rgba(247,245,239,.55)}
body[data-tone=ink] .rr-src>b{background:rgba(173,217,237,.2);color:var(--paper)}
.rr-cav b{background:var(--blue-wash);box-shadow:none}
body[data-tone=blue] .rr-cav b{background:rgba(255,255,255,.6)}
body[data-tone=ink] .rr-cav b{background:rgba(173,217,237,.2)}

/* Positive states are blue, negative states coral, unknown stays outlined. */
.rr-st-yes{background:var(--blue-ink);color:#fff}
.rx-where i{background:var(--blue-ink)}

/* The step bar under each slide fills in blue. */
.rr-deck .sequence-footer .is-current i:after{background:var(--blue-ink)}
body.rr-deck[data-tone=ink] .sequence-footer .is-current i:after,body.rr-deck[data-tone=blue] .sequence-footer .is-current i:after{background:var(--blue-ink)}
body.rr-deck[data-tone=ink] .sequence-footer .is-current i:after{background:var(--blue)}

/* The flipping letter keeps the word's baseline: the "r" stays in the flow, the "t" slides over it. */
.rn-flip .rn-r{position:relative;display:block;left:auto;margin:0;width:auto}
/* The ten feature cards keep a slightly smaller inset so the slide keeps its breathing room. */
.ri-card{padding:clamp(11px,1.7vh,16px) clamp(12px,1.1vw,16px)}

/* Comparison table: one even tint on the three middle columns, a thin gap between them, no row fills. */
.mx :is(td,th):is(.mx-c2,.mx-c3,.mx-c6){background:#fbece6}
.mx :is(td,th).mx-c3{box-shadow:inset 4px 0 0 var(--paper)}
.scene:is([data-step="1"],[data-step="2"]) .mx :is(td,th):is(.mx-c2,.mx-c3,.mx-c6){background:#f9e0d6}
.mx thead :is(.mx-c2,.mx-c3,.mx-c6){color:#bd4127}
.mx thead th{font-size:12.5px;color:var(--ink);padding-top:8px}
.mx-dd th{color:#bd4127}
.mx tbody tr:last-child>*{border-bottom:0}

/* Slide text uses Coolvetica, like the concept deck: the book cut for running text, the regular cut for bold. */
.rr-deck .scene *,#rr-tip{font-family:Coolvetica,Arial,sans-serif}
.rr-src{font-size:12px}
.rr-flag{font-size:10px;letter-spacing:.05em}
.rr-fact p,.b2-row p,.rbl-row p{letter-spacing:.005em}

/* Mina and Alex stand in on the profile cards. */
.rgp-ico i,.rcu-cards i{background-color:#fff;background-size:cover;background-position:50% 22%;border:3px solid #fff}
.rcu-cards i{border-width:2px}
.ry-card{padding-top:4px}
.ry-pic{position:absolute;top:30px;left:50%;width:46px;height:46px;margin-left:-23px;border-radius:50%;object-fit:cover;object-position:50% 25%;box-shadow:0 0 0 2px rgba(247,245,239,.35)}
.ry-card b{bottom:14%}

/* ---------- Paused motion: show every slide in its finished state ---------- */
body.motion-paused .scene *,body.motion-paused .scene *:before,body.motion-paused .scene *:after{animation:none!important}
body.motion-paused .ry-q{opacity:0}

/* ---------- Smaller laptop screens ---------- */
@media (max-height:760px){
 .rr{gap:clamp(10px,1.8vh,18px)}
 .rr-src{font-size:11px}
 .rr-cav{font-size:12px}
 .ri-card>p:not(.ri-brand),.rx-card>p{font-size:12.5px}
 .rsc-card .rsc-also{display:none}
 .ri .rr-sub,.rgp .rr-sub,.rmx .rr-k,.ri .rr-k{display:none}
 .rgp-ico,.rgp-table{width:8vh;height:8vh;margin-bottom:4px}
 .rgp-cols{margin-top:clamp(8px,1.6vh,16px)}
 .mx th,.mx td{height:3.45vh}
 .ri-card{gap:4px}
}
/* Very short screens (a phone held sideways): tighter table rows so the comparison fits above the footer. */
@media (max-height:680px) and (min-width:901px){
 .mx th,.mx td{height:3.3vh}
 .mx thead th{padding-bottom:4px}
 .rmx-foot .rr-src span{display:none}
}
/* Mid-size windows: drop the subtitle on the densest slides so they keep their breathing room. */
@media (max-width:1100px) and (min-width:901px){
 .ri .rr-sub,.rgp .rr-sub,.ri-verdict .rr-cav{display:none}
 .mx th,.mx td{height:min(34px,3.6vh)}
 .rmx-top .rr-head h2{font-size:min(3.2vw,5.6vh)}
 .rev-row{padding:clamp(5px,.9vh,9px) 0}
}
/* Narrow windows: stack the two halves and let the slide scroll. */
@media (max-width:900px){
 .scene.active{overflow-y:auto}
 .rr,.rc{height:auto;min-height:100%}
 .rr-split,.rc,.rx{grid-template-columns:1fr;row-gap:24px}
 .ra-map,.ri-grid,.rx-grid,.rsc-grid,.rv-grid,.rwn-cards,.rq-cols,.rk-cols,.rlg-line,.rlg-cards,.rd-cards,.rd-foot,.rgp-cols,.rw2-rings,.rpo-roles,.rb-row,.rai-cols,.rn-cols{grid-template-columns:1fr 1fr}
 .rz-flow{grid-template-columns:repeat(4,1fr);row-gap:16px}
 .rz-flow:before,.rz-flow:after,.rz-stop,.rz-token{display:none}
 .rz-stats{grid-template-columns:repeat(3,auto)}
 .rc-stage{min-height:46vh}
 .mx{font-size:11px}
}
