:root{
  color-scheme:dark;
  --noche:#06101D; --noche2:#091629; --marino:#0C1E36; --marino2:#14294A;
  --celeste:#75B8EA; --celeste-hi:#AAD5F6; --celeste-lo:rgba(117,184,234,.16);
  --hueso:#F3F7FA; --niebla:#8DA3BA; --niebla2:#5F7690; --linea:rgba(170,213,246,.14);
  --calido:#F0B77A;
  --u:min(.96vw,1.7vh);
  --t-hero:calc(var(--u)*7.4); --t-h1:calc(var(--u)*4.7); --t-h2:calc(var(--u)*2.5);
  --t-lead:calc(var(--u)*1.75); --t-body:calc(var(--u)*1.38); --t-small:calc(var(--u)*1.06); --t-micro:calc(var(--u)*.86);
  --padx:calc(var(--u)*6); --padt:calc(var(--u)*7.5); --padb:calc(var(--u)*7);
  --pw:min(max(250px,calc(var(--u)*22)),37vh);
  --ease:cubic-bezier(.2,.7,.1,1);
  --ease-in:cubic-bezier(.33,1,.68,1);
  --d-micro:180ms;--d-ui:500ms;--d-scene:1200ms;--stagger:120ms;
  --noche2:#091629;--marino2:#14294A;--atencion:#FFD65A;
  --f-display:"Barlow Condensed","Arial Narrow",sans-serif;
  --f-body:"Instrument Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --f-mono:"JetBrains Mono",ui-monospace,Menlo,monospace;
}
html,body{height:100%}
body{margin:0;background:var(--noche);color:var(--hueso);font-family:var(--f-body);font-size:var(--t-body);line-height:1.45;overflow:hidden;-webkit-font-smoothing:antialiased}
*,*::before,*::after{box-sizing:border-box}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0}
button:focus-visible,a:focus-visible,textarea:focus-visible{outline:2px solid var(--celeste);outline-offset:3px;border-radius:6px}
h1,h2,h3,p{margin:0}
svg{display:block}

/* ---------- chrome ---------- */
.progress{position:fixed;top:0;left:0;right:0;height:3px;background:rgba(117,184,234,.12);z-index:50}
.progress i{display:block;height:100%;background:var(--celeste);width:0;transition:width .6s var(--ease)}
.topbar{position:fixed;top:0;left:0;right:0;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:calc(env(safe-area-inset-top,0px) + max(14px,calc(var(--u)*2))) var(--padx) 0;pointer-events:none;font-size:var(--t-micro);letter-spacing:.14em;text-transform:uppercase;color:var(--niebla)}
.brand{display:flex;align-items:center;gap:.8em}
.brand b{font-family:var(--f-display);font-weight:800;font-size:1.9em;letter-spacing:.04em;color:var(--hueso)}
.brand .x{color:var(--celeste)}
.counter{font-family:var(--f-mono);letter-spacing:.06em;font-size:13px;color:var(--hueso);margin-left:4px;white-space:nowrap}.counter span{color:var(--niebla2)}
.counter span{color:var(--niebla2)}
.bottombar{position:fixed;left:0;right:0;bottom:0;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 var(--padx) calc(env(safe-area-inset-bottom,0px) + max(14px,calc(var(--u)*2)))}
.disclaimer{font-size:var(--t-micro);color:var(--niebla2);letter-spacing:.04em}
.navbtns{display:flex;gap:10px;align-items:center}
.navbtn{width:max(40px,calc(var(--u)*3.4));height:max(40px,calc(var(--u)*3.4));border-radius:50%;border:1px solid var(--linea);display:grid;place-items:center;color:var(--hueso);transition:background .2s,border-color .2s}
.navbtn:hover{background:var(--celeste-lo);border-color:var(--celeste)}
.navbtn:disabled{opacity:.3;cursor:default;background:none;border-color:var(--linea)}
.notesbtn{font-size:var(--t-micro);letter-spacing:.12em;text-transform:uppercase;color:var(--niebla);padding:.7em 1em;border:1px solid var(--linea);border-radius:999px}
.notesbtn:hover{color:var(--hueso);border-color:var(--celeste)}
.swipehint{display:none;position:fixed;left:50%;bottom:92px;transform:translateX(-50%);z-index:55;align-items:center;gap:8px;padding:.6em 1em;border-radius:999px;background:rgba(9,22,41,.92);border:1px solid var(--linea);font-size:13px;color:var(--hueso);opacity:0;transition:opacity .4s;pointer-events:none;white-space:nowrap}
.swipehint.on{opacity:1}
.notes{position:fixed;left:50%;bottom:calc(var(--u)*6.5);transform:translate(-50%,20px);width:min(760px,calc(100% - 32px));background:rgba(9,22,41,.96);border:1px solid var(--linea);border-radius:14px;padding:18px 22px;z-index:60;font-size:max(14px,var(--t-small));color:var(--hueso);opacity:0;visibility:hidden;transition:.3s var(--ease);backdrop-filter:blur(10px)}
.notes.on{opacity:1;visibility:visible;transform:translate(-50%,0)}
.notes h4{margin:0 0 6px;font-size:.75em;letter-spacing:.16em;text-transform:uppercase;color:var(--celeste);font-weight:600}
.notes p{line-height:1.55;color:#D6E2EE}

/* ---------- slides ---------- */
.deck{position:fixed;inset:0}
.slide{position:absolute;inset:0;padding:var(--padt) var(--padx) var(--padb);display:grid;align-content:center;opacity:0;visibility:hidden;transition:opacity .7s var(--ease),visibility 0s .7s;overflow:hidden}
.slide.active{opacity:1;visibility:visible;transition:opacity .7s var(--ease),visibility 0s}
.slide:not(.active){pointer-events:none}
.slide .rise{opacity:0;transform:translateY(18px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.slide.active .rise{opacity:1;transform:none}
.slide.active .rise.d1{transition-delay:.12s}.slide.active .rise.d2{transition-delay:.24s}.slide.active .rise.d3{transition-delay:.36s}.slide.active .rise.d4{transition-delay:.48s}.slide.active .rise.d5{transition-delay:.6s}

.eyebrow{display:flex;flex-wrap:wrap;align-items:center;gap:.7em;font-size:var(--t-micro);letter-spacing:.18em;text-transform:uppercase;color:var(--niebla);margin-bottom:calc(var(--u)*1.6)}
.tag{display:inline-flex;align-items:center;gap:.45em;padding:.35em .75em;border-radius:999px;font-size:var(--t-micro);letter-spacing:.14em;text-transform:uppercase;font-weight:600;white-space:nowrap}
.tag-dato{border:1px solid rgba(243,247,250,.35);color:var(--hueso)}
.tag-concepto{background:var(--celeste);color:var(--noche)}
.tag-mock{border:1px dashed rgba(117,184,234,.55);color:var(--celeste-hi)}
.display{font-family:var(--f-display);font-weight:800;text-transform:uppercase;line-height:.88;letter-spacing:-.005em;text-wrap:balance}
.h1{font-size:var(--t-h1)}
.hero{font-size:var(--t-hero)}
.h2{font-family:var(--f-display);font-weight:700;text-transform:uppercase;font-size:var(--t-h2);line-height:1;letter-spacing:.01em}
.lead{font-size:var(--t-lead);line-height:1.35;color:#D5E3F0;max-width:34ch;text-wrap:pretty}
.body{max-width:52ch;color:#C5D4E3;text-wrap:pretty}
.small{font-size:var(--t-small)}
.micro{font-size:var(--t-micro);color:var(--niebla)}
.cel{color:var(--celeste)}
.dim{color:var(--niebla)}
.mono{font-family:var(--f-mono)}
.split{display:grid;grid-template-columns:1.05fr .95fr;gap:calc(var(--u)*5);align-items:center}
.stack{display:flex;flex-direction:column;gap:calc(var(--u)*1.8)}
.src{font-size:var(--t-micro);color:var(--niebla2);line-height:1.5}
.src a{color:var(--niebla);text-decoration:underline;text-decoration-color:rgba(141,163,186,.35);text-underline-offset:2px}

/* stripes motif */
.stripes{background:repeating-linear-gradient(90deg,var(--celeste) 0 14%,var(--hueso) 14% 28%)}

/* ---------- jersey ---------- */
.jersey-wrap{position:relative;display:grid;place-items:center}
.jersey-wrap .spot{position:absolute;inset:-12% -20% -6%;background:radial-gradient(50% 55% at 50% 38%,rgba(117,184,234,.22),rgba(117,184,234,.05) 55%,transparent 72%);pointer-events:none}
.jersey{width:min(100%,calc(var(--u)*34));max-height:62vh;filter:drop-shadow(0 30px 40px rgba(0,0,0,.55))}
.nfc-glow{animation:glow 3.2s ease-in-out infinite}
@keyframes glow{0%,100%{opacity:.35}50%{opacity:1}}

/* ---------- phone ---------- */
.phone{position:relative;width:var(--pw);aspect-ratio:9/19.2;border-radius:15%/7%;background:linear-gradient(160deg,#1c2d45,#070d17 40%);padding:2.6%;box-shadow:0 0 0 1px rgba(170,213,246,.18),0 40px 80px -20px rgba(0,0,0,.8),0 0 120px -30px rgba(117,184,234,.35);container-type:inline-size;flex:none}
.screen{position:relative;width:100%;height:100%;border-radius:12.5%/5.9%;overflow:hidden;background:linear-gradient(180deg,#0A1A2F,#06101D 60%);font-size:4.1cqw;line-height:1.35}
.island{position:absolute;top:2.4%;left:50%;transform:translateX(-50%);width:30%;height:3.2%;background:#000;border-radius:999px;z-index:5}
.sbar{display:flex;justify-content:space-between;padding:6.5cqw 8cqw 0;font-family:var(--f-mono);font-size:3.4cqw;color:var(--hueso);opacity:.9}
.pview{position:absolute;inset:0;padding:15cqw 6.5cqw 6cqw;display:flex;flex-direction:column;gap:3.6cqw;opacity:0;visibility:hidden;transform:translateY(4%);transition:opacity .5s var(--ease),transform .5s var(--ease),visibility 0s .5s}
.pview.on{opacity:1;visibility:visible;transform:none;transition:opacity .5s var(--ease),transform .5s var(--ease),visibility 0s}
.p-eyebrow{font-size:2.9cqw;letter-spacing:.16em;text-transform:uppercase;color:var(--niebla)}
.p-title{font-family:var(--f-display);font-weight:800;text-transform:uppercase;font-size:10cqw;line-height:.9}
.p-card{background:rgba(20,41,74,.7);border:1px solid var(--linea);border-radius:4.5cqw;padding:4.5cqw}
.p-btn{display:flex;align-items:center;justify-content:center;gap:2cqw;width:100%;padding:4.4cqw;border-radius:3.5cqw;background:var(--celeste);color:var(--noche);font-family:var(--f-display);font-weight:800;font-size:5.6cqw;letter-spacing:.05em;text-transform:uppercase;transition:transform .15s,background .2s}
.p-btn:hover{background:var(--celeste-hi)}
.p-btn:active{transform:scale(.97)}
.p-btn.ghost{background:transparent;color:var(--hueso);border:1px solid var(--linea);font-size:4.2cqw}
.p-row{display:flex;align-items:center;gap:3cqw}
.p-muted{color:var(--niebla);font-size:3.3cqw}
.ok{display:inline-flex;align-items:center;gap:1.4cqw;color:#8FE3B7;font-size:3.3cqw;font-weight:600}
.crestdot{width:13cqw;height:13cqw;border-radius:50%;flex:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.25)}
.crest-rac{background:repeating-linear-gradient(90deg,var(--celeste) 0 20%,var(--hueso) 20% 40%)}
.crest-riv{background:linear-gradient(135deg,#f5f5f5 0 40%,#C8102E 40% 58%,#f5f5f5 58%)}
.tabbar{position:absolute;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(5,1fr);padding:2.5cqw 2cqw 5cqw;background:rgba(6,16,29,.94);border-top:1px solid var(--linea);z-index:4}
.tabbar button{display:flex;flex-direction:column;align-items:center;gap:1.2cqw;font-size:2.35cqw;letter-spacing:.02em;color:var(--niebla2);padding:1cqw 0}
.tabbar button svg{width:5.6cqw;height:5.6cqw}
.tabbar button.on{color:var(--celeste)}

/* icons */
.ic{width:1em;height:1em;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* ---------- scenes (photo slots) ---------- */
.scene{position:relative;overflow:hidden;border-radius:calc(var(--u)*1.2);background:var(--marino);isolation:isolate}
[data-photo]>.ph{position:absolute;inset:0;background-size:cover;background-position:center;background-repeat:no-repeat;opacity:0;transition:opacity .6s;z-index:3;pointer-events:none}
[data-photo].has-photo>.ph{opacity:1}
.has-photo>.art,.has-photo>svg,.has-photo>.woven,.has-photo>.spot{opacity:0}
.jersey-wrap>.ph{z-index:1;-webkit-mask-image:radial-gradient(70% 62% at 50% 50%,#000 52%,transparent 98%);mask-image:radial-gradient(70% 62% at 50% 50%,#000 52%,transparent 98%)}
.frame>.ph{inset:calc(var(--u)*1.2)}
.hem.has-photo::after{opacity:.35}
.hem.has-photo .ring{left:46%;bottom:54%}
.scene .label{position:absolute;left:12px;top:12px;z-index:4}
.scene .shade{position:absolute;inset:0;z-index:3;background:linear-gradient(180deg,transparent 40%,rgba(6,16,29,.85));pointer-events:none}
.art{position:absolute;inset:0}
.art-stadium{background:
  radial-gradient(28% 22% at 12% 4%,rgba(255,255,255,.55),transparent 70%),
  radial-gradient(28% 22% at 88% 4%,rgba(255,255,255,.5),transparent 70%),
  radial-gradient(90% 60% at 50% 0%,rgba(117,184,234,.35),transparent 70%),
  linear-gradient(180deg,#1A3558 0%,#0C1E36 45%,#06101D 100%)}
.crowd{position:absolute;left:-5%;right:-5%;height:34%;background-image:radial-gradient(circle,rgba(170,213,246,.9) 0 1.2px,transparent 2px),radial-gradient(circle,rgba(243,247,250,.7) 0 1px,transparent 1.8px);background-size:13px 11px,17px 14px;background-position:0 0,6px 5px;filter:blur(1.2px);opacity:.55}
.crowd.c1{top:22%;opacity:.35}.crowd.c2{top:40%;opacity:.55;background-size:16px 13px,21px 17px}
.pitchglow{position:absolute;left:0;right:0;top:58%;height:12%;background:linear-gradient(180deg,rgba(117,184,234,.0),rgba(170,213,246,.25),rgba(117,184,234,0));filter:blur(6px)}
.silh{position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:78%;max-width:520px}
.art-home{background:radial-gradient(40% 50% at 20% 30%,rgba(240,183,122,.45),transparent 70%),linear-gradient(180deg,#2A2230,#12151F 70%)}
.art-bar{background:radial-gradient(circle at 20% 20%,rgba(240,183,122,.5) 0 3%,transparent 4%),radial-gradient(circle at 75% 15%,rgba(240,183,122,.4) 0 2.5%,transparent 3.5%),radial-gradient(circle at 55% 30%,rgba(243,247,250,.3) 0 2%,transparent 3%),linear-gradient(180deg,#221A1F,#0E1119)}
.art-city{background:linear-gradient(180deg,#0B1830,#132A4C 55%,#0A1424)}
.tv{position:absolute;left:50%;top:20%;transform:translateX(-50%);width:46%;aspect-ratio:16/9;border-radius:4px;background:linear-gradient(180deg,#3E7CAF,#1E4D39 60%,#2B6B4A);box-shadow:0 0 60px rgba(117,184,234,.55)}
.windows{position:absolute;inset:18% 8% 30%;background-image:linear-gradient(90deg,transparent 0 30%,rgba(6,16,29,.9) 30% 36%,transparent 36%),radial-gradient(rgba(240,183,122,.55) 0 30%,transparent 32%);background-size:22% 100%,11% 16%;opacity:.8}

/* ---------- slide specifics ---------- */
.tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:calc(var(--u)*1.4);margin-top:calc(var(--u)*3)}
.tile{border-top:2px solid var(--celeste);padding-top:calc(var(--u)*1.4);display:flex;flex-direction:column;gap:calc(var(--u)*.8)}
.tile .big{font-family:var(--f-display);font-weight:800;font-size:calc(var(--u)*3.6);line-height:.9;text-transform:uppercase}
.tile p{font-size:var(--t-small);color:#BFD0E0}

.flow{display:flex;align-items:center;gap:calc(var(--u)*1.6);font-family:var(--f-display);font-weight:800;text-transform:uppercase;font-size:calc(var(--u)*5.4);line-height:1}
.flow .arr{color:var(--niebla2);font-weight:500}
.flow .q{color:transparent;-webkit-text-stroke:1.5px var(--celeste);animation:blink 2.4s ease-in-out infinite}
@keyframes blink{50%{opacity:.35}}

.tapstage{position:relative;display:grid;grid-template-columns:1fr auto;align-items:center;gap:calc(var(--u)*3)}
.hem{position:relative;aspect-ratio:1/1;width:min(100%,calc(var(--u)*34));border-radius:calc(var(--u)*1.5);overflow:hidden;background:repeating-linear-gradient(90deg,#7DBDEB 0 18%,#EEF4F8 18% 36%);box-shadow:inset 0 -40px 80px rgba(0,0,0,.35),inset 0 0 0 1px rgba(255,255,255,.1)}
.hem::after{content:"";position:absolute;inset:0;background:radial-gradient(120% 80% at 30% 20%,transparent 40%,rgba(6,16,29,.55)),repeating-linear-gradient(0deg,rgba(0,0,0,.03) 0 2px,transparent 2px 4px)}
.woven{position:absolute;left:14%;bottom:16%;width:34%;aspect-ratio:1.5;background:#0C1E36;border-radius:6px;display:grid;place-items:center;align-content:center;gap:4px;color:var(--hueso);font-family:var(--f-display);font-weight:700;font-size:max(11px,calc(var(--u)*1.1));letter-spacing:.14em;z-index:2;box-shadow:0 2px 0 rgba(0,0,0,.2)}
.woven svg{width:36%;color:var(--celeste)}
.ring{position:absolute;left:31%;bottom:27%;width:10px;height:10px;margin:-5px;border-radius:50%;border:2px solid var(--celeste);opacity:0;z-index:3}
.tapstage.tapped .ring{animation:ring 1.4s var(--ease) .55s 2}
.tapstage.tapped .ring.r2{animation-delay:.85s}
@keyframes ring{0%{opacity:1;width:10px;height:10px;margin:-5px}100%{opacity:0;width:220px;height:220px;margin:-110px}}
.tapstage .phone{transition:transform 1s var(--ease);position:relative;z-index:6}
.tapstage.tapped .phone{animation:tapmove 1.8s var(--ease) forwards}
@keyframes tapmoveM{0%{transform:none}35%,55%{transform:translateY(-34%) scale(.9) rotate(-6deg)}100%{transform:none}}
@keyframes tapmove{0%{transform:none}35%,55%{transform:translateX(-58%) translateY(18%) rotate(-14deg) scale(.92)}100%{transform:none}}

.memcard{background:var(--hueso);color:var(--noche);padding:calc(var(--u)*.9) calc(var(--u)*.9) calc(var(--u)*1.6);border-radius:6px;box-shadow:0 30px 60px -20px rgba(0,0,0,.7);transform:rotate(-3deg);width:min(100%,calc(var(--u)*26))}
.memcard .scene{border-radius:3px;aspect-ratio:4/3}
.memcard p{font-family:var(--f-body);font-weight:500;font-size:var(--t-small);margin-top:calc(var(--u)*1);line-height:1.3}
.memcard .meta{font-family:var(--f-mono);font-size:var(--t-micro);color:#4C6480;margin-top:6px}

.timeline{position:relative;display:flex;flex-direction:column;gap:calc(var(--u)*1.1);padding-left:calc(var(--u)*3.2)}
.timeline::before{content:"";position:absolute;left:calc(var(--u)*.9);top:6px;bottom:6px;width:2px;background:linear-gradient(180deg,var(--celeste),rgba(117,184,234,.1))}
.tl{position:relative;display:grid;grid-template-columns:1fr auto;gap:calc(var(--u)*1.2);align-items:center;padding:calc(var(--u)*1.1) calc(var(--u)*1.4);border:1px solid var(--linea);border-radius:calc(var(--u)*.9);background:rgba(12,30,54,.55)}
.tl::before{content:"";position:absolute;left:calc(var(--u)*-2.75);top:50%;width:calc(var(--u)*1.1);height:calc(var(--u)*1.1);min-width:9px;min-height:9px;border-radius:50%;background:var(--noche);border:2px solid var(--celeste);transform:translateY(-50%)}
.tl h4{margin:0;font-family:var(--f-display);font-weight:700;text-transform:uppercase;font-size:calc(var(--u)*1.8);letter-spacing:.02em;line-height:1}
.tl .where{font-size:var(--t-micro);letter-spacing:.12em;text-transform:uppercase;color:var(--niebla)}
.tl .quote{font-size:var(--t-small);color:#D5E3F0;margin-top:4px}
.thumbs{display:flex;gap:6px}
.thumbs i{width:calc(var(--u)*3.4);height:calc(var(--u)*3.4);min-width:28px;min-height:28px;border-radius:6px;display:block;background:linear-gradient(160deg,#27507F,#0C1E36);position:relative;overflow:hidden}
.thumbs i.v::after{content:"";position:absolute;left:38%;top:32%;border-left:9px solid rgba(243,247,250,.9);border-top:6px solid transparent;border-bottom:6px solid transparent}
.thumbs i.w{background:linear-gradient(160deg,#6A4B3A,#221A1F)}
.thumbs i.a{background:var(--marino2);display:grid;place-items:center}
.tl.new{border-color:var(--celeste);box-shadow:0 0 0 1px var(--celeste),0 0 40px -10px rgba(117,184,234,.6)}
.newbadge{display:none}
.tl.new .newbadge{display:inline-flex}
.bignum{font-family:var(--f-display);font-weight:800;font-size:calc(var(--u)*9);line-height:.85}
.stat-row{display:flex;gap:calc(var(--u)*3);flex-wrap:wrap}
.stat-row div{display:flex;flex-direction:column;gap:4px}
.stat-row b{font-family:var(--f-display);font-weight:800;font-size:calc(var(--u)*5);line-height:.9;color:var(--celeste)}

.world{display:grid;grid-template-columns:repeat(4,1fr);gap:calc(var(--u)*1.3);margin-top:calc(var(--u)*2.6)}
.world .scene{aspect-ratio:4/4.3}
.world .cap{position:absolute;left:0;right:0;bottom:0;z-index:4;padding:calc(var(--u)*1.3)}
.world .cap h4{margin:0;font-family:var(--f-display);font-weight:800;text-transform:uppercase;font-size:calc(var(--u)*2.2);line-height:1}
.world .time{font-family:var(--f-mono);font-size:var(--t-micro);color:var(--celeste-hi);margin-top:4px}
.world .chip{display:inline-flex;align-items:center;gap:6px;margin-top:calc(var(--u)*.9);font-size:var(--t-micro);padding:.4em .7em;border-radius:999px;background:rgba(6,16,29,.7);border:1px solid var(--linea)}

.tablist{display:flex;flex-direction:column;gap:4px}
.tablist button{display:grid;grid-template-columns:auto 1fr;gap:calc(var(--u)*.3) calc(var(--u)*1.2);align-items:baseline;text-align:left;padding:calc(var(--u)*.75) calc(var(--u)*1.2);border-radius:10px;border:1px solid transparent;transition:.2s}
.tablist button b{font-family:var(--f-display);font-weight:800;text-transform:uppercase;font-size:calc(var(--u)*2);line-height:1;color:var(--niebla)}
.tablist button span:not(.n){font-size:var(--t-small);color:var(--niebla2);grid-column:2}
.tablist button .n{font-family:var(--f-mono);font-size:var(--t-micro);color:var(--niebla2);grid-row:span 2}
.tablist button.on{border-color:var(--linea);background:rgba(12,30,54,.6)}
.tablist button.on b{color:var(--hueso)}
.tablist button.on span{color:#C5D4E3}
.tablist button:hover b{color:var(--hueso)}

.chain{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative;margin:calc(var(--u)*3.2) 0}
.chain::before{content:"";position:absolute;left:12.5%;right:12.5%;top:calc(var(--u)*3.4);height:2px;background:linear-gradient(90deg,var(--niebla2),var(--celeste))}
.node{display:flex;flex-direction:column;align-items:center;text-align:center;gap:calc(var(--u)*1);padding:0 calc(var(--u)*1)}
.node .disc{position:relative;width:calc(var(--u)*6.8);height:calc(var(--u)*6.8);min-width:56px;min-height:56px;border-radius:50%;display:grid;place-items:center;background:var(--noche);border:1px solid var(--linea);font-size:calc(var(--u)*2.6);color:var(--celeste)}
.node.k8z .disc{background:var(--celeste);color:var(--noche);border:0;font-family:var(--f-display);font-weight:800;font-size:calc(var(--u)*2)}
.node h4{margin:0;font-family:var(--f-display);font-weight:700;text-transform:uppercase;font-size:calc(var(--u)*2);line-height:1}
.node p{font-size:var(--t-small);color:#BFD0E0;max-width:24ch}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip2{font-size:var(--t-small);padding:.45em .9em;border-radius:999px;border:1px solid var(--linea);color:#D5E3F0}

.compare{display:grid;gap:calc(var(--u)*2.2)}
.cmp .k{font-size:var(--t-micro);letter-spacing:.16em;text-transform:uppercase;color:var(--niebla);margin-bottom:8px}
.cmp .row{display:flex;flex-wrap:wrap;align-items:center;gap:.3em .5em;font-family:var(--f-display);font-weight:800;text-transform:uppercase;font-size:calc(var(--u)*2.8);line-height:1}
.cmp .row i{font-style:normal;color:var(--niebla2);font-weight:500}
.cmp.before .row{color:var(--niebla)}
.plus{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center;font-size:var(--t-small)}
.plus span{padding:.35em .75em;border-radius:6px;background:rgba(12,30,54,.8);border:1px solid var(--linea)}
.plus i{font-style:normal;color:var(--celeste)}

.gains{display:grid;grid-template-columns:repeat(4,1fr);gap:calc(var(--u)*2);margin-top:calc(var(--u)*3)}
.gain{display:flex;flex-direction:column;gap:calc(var(--u)*.8)}
.gain .dim-k{font-family:var(--f-mono);font-size:var(--t-micro);color:var(--celeste);letter-spacing:.06em}
.gain h3{font-family:var(--f-display);font-weight:800;text-transform:uppercase;font-size:calc(var(--u)*2.9);line-height:.92}
.gain p{font-size:var(--t-small);color:#BFD0E0}
.privacy{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:calc(var(--u)*3);padding-top:calc(var(--u)*1.6);border-top:1px solid var(--linea);font-size:var(--t-small);color:#D5E3F0}
.privacy span{display:inline-flex;align-items:center;gap:8px}
.privacy svg{color:var(--celeste)}

.specs{display:flex;gap:calc(var(--u)*4);flex-wrap:wrap;margin:calc(var(--u)*2.2) 0}
.specs div{display:flex;flex-direction:column}
.specs b{font-family:var(--f-display);font-weight:800;font-size:calc(var(--u)*5.2);line-height:.85}
.specs span{font-size:var(--t-small);color:var(--niebla);text-transform:uppercase;letter-spacing:.12em;margin-top:6px}
.metrics{display:grid;grid-template-columns:1fr 1fr;gap:calc(var(--u)*.7) calc(var(--u)*2.4);counter-reset:m}
.metrics li{list-style:none;font-size:var(--t-small);color:#D5E3F0;display:flex;gap:10px;align-items:baseline;padding-bottom:calc(var(--u)*.7);border-bottom:1px solid var(--linea)}
.metrics li::before{counter-increment:m;content:counter(m,decimal-leading-zero);font-family:var(--f-mono);font-size:var(--t-micro);color:var(--celeste)}
.metrics{padding:0;margin:0}
.phases{display:grid;grid-template-columns:repeat(3,1fr);gap:calc(var(--u)*1.2)}
.phase{padding:calc(var(--u)*1.3);border:1px solid var(--linea);border-radius:10px;display:flex;flex-direction:column;gap:6px}
.phase.now{border-color:var(--celeste);background:rgba(117,184,234,.08)}
.phase .k{font-family:var(--f-mono);font-size:var(--t-micro);color:var(--celeste)}
.phase h4{margin:0;font-family:var(--f-display);font-weight:700;text-transform:uppercase;font-size:calc(var(--u)*1.9);line-height:1}
.phase p{font-size:var(--t-micro);color:var(--niebla)}

.cta{display:inline-flex;align-items:center;gap:.8em;padding:.9em 1.6em;border-radius:999px;background:var(--celeste);color:var(--noche);font-family:var(--f-display);font-weight:800;text-transform:uppercase;letter-spacing:.06em;font-size:calc(var(--u)*2);transition:transform .2s,background .2s;box-shadow:0 20px 50px -15px rgba(117,184,234,.7)}
.cta:hover{background:var(--celeste-hi);transform:translateY(-2px)}
.contact{display:flex;align-items:center;flex-wrap:wrap;gap:10px 14px;font-size:var(--t-small);color:#D5E3F0}
.contact .mono{user-select:all;color:var(--hueso)}
.copybtn{font-size:var(--t-micro);letter-spacing:.12em;text-transform:uppercase;padding:.5em .9em;border-radius:999px;border:1px solid var(--linea);color:var(--niebla)}
.copybtn:hover{color:var(--hueso);border-color:var(--celeste)}

.frame{position:relative;padding:calc(var(--u)*2.4);background:linear-gradient(180deg,#0C1E36,#091629);border:1px solid rgba(170,213,246,.2);box-shadow:inset 0 0 0 calc(var(--u)*.6) #06101D,inset 0 0 0 calc(var(--u)*.7) rgba(170,213,246,.15),0 40px 90px -30px rgba(0,0,0,.9)}
.frame .plate{position:absolute;left:50%;bottom:calc(var(--u)*-1.4);transform:translateX(-50%);background:#0F223D;border:1px solid rgba(170,213,246,.25);padding:.35em 1em;font-family:var(--f-mono);font-size:var(--t-micro);color:var(--celeste-hi);white-space:nowrap}

/* phone internals: slide 5 */
.media{display:grid;grid-template-columns:repeat(5,1fr);gap:1.8cqw}
.media button{display:flex;flex-direction:column;align-items:center;gap:1.2cqw;padding:2.6cqw 0;border-radius:3cqw;border:1px solid var(--linea);font-size:2.5cqw;color:var(--niebla)}
.media button svg{width:5.2cqw;height:5.2cqw}
.media button.sel{border-color:var(--celeste);color:var(--celeste);background:var(--celeste-lo)}
.pthumb{border-radius:3.5cqw;aspect-ratio:16/10}
.pnote{width:100%;min-height:15cqw;resize:none;border-radius:3cqw;border:1px solid var(--linea);background:rgba(6,16,29,.6);color:var(--hueso);font:inherit;font-size:3.7cqw;padding:3cqw}
.invite{display:flex;align-items:center;gap:2cqw;font-size:3.2cqw;color:#D5E3F0}
.avatar{width:7cqw;height:7cqw;border-radius:50%;display:grid;place-items:center;background:var(--marino2);font-size:2.8cqw;font-weight:600;color:var(--celeste-hi);border:1px solid var(--linea)}
.checkburst{width:16cqw;height:16cqw;border-radius:50%;display:grid;place-items:center;background:var(--celeste);color:var(--noche);margin:2cqw auto 0}
.pview.on .checkburst{animation:pop .6s var(--ease)}
@keyframes pop{0%{transform:scale(.3);opacity:0}70%{transform:scale(1.1)}100%{transform:none;opacity:1}}
.minitl{display:flex;flex-direction:column;gap:2.4cqw}
.minitl .it{display:grid;grid-template-columns:14cqw 1fr;gap:3cqw;align-items:center;padding:2.6cqw;border-radius:3cqw;border:1px solid var(--linea);background:rgba(20,41,74,.5)}
.minitl .it.fresh{border-color:var(--celeste);animation:slidein .8s var(--ease)}
@keyframes slidein{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}
.minitl .th{width:14cqw;aspect-ratio:1;border-radius:2.4cqw}
.minitl b{font-family:var(--f-display);text-transform:uppercase;font-size:4.2cqw;line-height:1;display:block}
.minitl span{font-size:3cqw;color:var(--niebla)}

/* phone internals: slide 9 */
.pv9{padding-bottom:22cqw}
.pgrid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1.6cqw}
.pgrid i{aspect-ratio:1;border-radius:2cqw;display:block;background:linear-gradient(160deg,#27507F,#0C1E36);position:relative}
.pgrid i:nth-child(3n+2){background:linear-gradient(160deg,#6A4B3A,#221A1F)}
.pgrid i:nth-child(4n){background:linear-gradient(160deg,#3E7CAF,#14294A)}
.plist{display:flex;flex-direction:column;gap:2cqw}
.plist .li{display:flex;justify-content:space-between;align-items:center;padding:2.8cqw 3.4cqw;border-radius:3cqw;background:rgba(20,41,74,.55);border:1px solid var(--linea);font-size:3.4cqw}
.plist .li b{font-family:var(--f-display);text-transform:uppercase;font-size:4.2cqw}
.prod{display:grid;grid-template-columns:1fr 1fr;gap:2.4cqw}
.prod div{border-radius:3cqw;background:rgba(20,41,74,.55);border:1px solid var(--linea);padding:2.4cqw;display:flex;flex-direction:column;gap:1.4cqw;font-size:3cqw}
.prod div i{aspect-ratio:1;border-radius:2cqw;display:block}


/* ---------- modelo económico ---------- */
.slide.tall{align-content:start;overflow-y:auto;padding-top:calc(var(--u)*8);padding-bottom:calc(var(--u)*8)}
.eco{display:grid;grid-template-columns:1.1fr .9fr;gap:calc(var(--u)*3);align-items:start;margin-top:calc(var(--u)*.8)}
.ecoblk{display:flex;flex-direction:column;gap:calc(var(--u)*1.3)}
.ecoitem{display:grid;grid-template-columns:auto 1fr;gap:calc(var(--u)*1.2);padding:calc(var(--u)*.7) 0;border-top:1px solid var(--linea)}
.ecoitem .n{font-family:var(--f-mono);font-size:var(--t-micro);color:var(--celeste);padding-top:.35em}
.ecoitem h4{margin:0;font-family:var(--f-display);font-weight:700;text-transform:uppercase;font-size:calc(var(--u)*1.9);line-height:1}
.ecoitem p{font-size:var(--t-micro);color:#C5D4E3;margin-top:4px;text-wrap:pretty;line-height:1.4}
.tiers{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.tier{padding:.45em .8em;border-radius:8px;border:1px solid var(--linea);background:rgba(12,30,54,.6);font-size:var(--t-small);display:flex;flex-direction:column;gap:2px}
.tier b{font-family:var(--f-display);font-size:calc(var(--u)*2);line-height:1;color:var(--hueso)}
.tier span{font-size:var(--t-micro);color:var(--niebla)}
.opts{display:grid;grid-template-columns:1fr 1fr}
.tier.no{opacity:.65}
.tier.yes{border-color:var(--celeste);background:rgba(117,184,234,.1)}
.tier.yes b{color:var(--celeste)}
.tier.no b,.tier.yes b{font-size:calc(var(--u)*1.6);text-transform:uppercase}
.tier span{line-height:1.35}
.splitbar{display:flex;height:calc(var(--u)*2.2);min-height:24px;border-radius:999px;overflow:hidden;margin-top:10px;font-family:var(--f-display);font-weight:800;font-size:var(--t-small);text-transform:uppercase;letter-spacing:.06em}
.splitbar span{flex:1;display:grid;place-items:center}
.splitbar .r{background:var(--celeste);color:var(--noche)}
.splitbar .k{background:var(--hueso);color:var(--noche)}
.calc{border:1px solid var(--linea);border-radius:calc(var(--u)*1.2);padding:calc(var(--u)*1.2);background:rgba(12,30,54,.5);display:flex;flex-direction:column;gap:calc(var(--u)*.55)}
.calc .k{font-size:var(--t-micro);letter-spacing:.16em;text-transform:uppercase;color:var(--niebla)}
.ctrl{display:grid;grid-template-columns:1fr auto;gap:0 12px;align-items:center;font-size:var(--t-small);color:#D5E3F0}
.ctrl output{font-family:var(--f-mono);color:var(--hueso);font-size:var(--t-small)}
.ctrl input[type=range]{grid-column:1/-1;width:100%;accent-color:var(--celeste);margin:0}
.totals{display:grid;grid-template-columns:1fr 1fr;gap:calc(var(--u)*1);margin-top:4px}
.tot{padding:calc(var(--u)*.6) calc(var(--u)*.9);border-radius:10px;background:var(--noche);border:1px solid var(--linea)}
.tot.big{grid-column:1/-1;border-color:var(--celeste)}
.tot .k{margin-bottom:4px}
.tot b{font-family:var(--f-display);font-weight:800;font-size:calc(var(--u)*2.8);line-height:.95;display:block;font-variant-numeric:tabular-nums}
.tot.big b{font-size:calc(var(--u)*3.6);color:var(--celeste)}
.tot small{font-size:var(--t-micro);color:var(--niebla)}

.opts2{display:grid;grid-template-columns:1fr 1fr;gap:calc(var(--u)*1.4);margin-top:calc(var(--u)*1.4)}
.opt{border:1px solid var(--linea);border-radius:calc(var(--u)*1.2);padding:calc(var(--u)*1.3) calc(var(--u)*1.6);display:flex;flex-direction:column;gap:calc(var(--u)*.7)}
.opt .k{font-family:var(--f-mono);font-size:var(--t-micro);letter-spacing:.1em;text-transform:uppercase;color:var(--niebla)}
.opt h4{margin:0;font-family:var(--f-display);font-weight:700;text-transform:uppercase;font-size:calc(var(--u)*2.1);line-height:1}
.opt ul{margin:0;padding-left:1.1em;display:flex;flex-direction:column;gap:4px;font-size:var(--t-small);color:#C5D4E3;line-height:1.35}
.opt .verdict{margin-top:auto;padding-top:calc(var(--u)*.8);font-family:var(--f-display);font-weight:800;text-transform:uppercase;letter-spacing:.06em;font-size:var(--t-body)}
.opt.no{opacity:.7}.opt.no .verdict{color:var(--niebla)}
.opts2 .opt:not(.yes){background:rgba(12,30,54,.45)}
.opt.yes{border-color:var(--celeste);background:rgba(117,184,234,.08)}.opt.yes .k,.opt.yes .verdict{color:var(--celeste)}
.y1{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:calc(var(--u)*1.2);margin-top:calc(var(--u)*1.2)}
.y1c{padding:calc(var(--u)*1) calc(var(--u)*1.3);border-radius:10px;background:rgba(12,30,54,.55);border:1px solid var(--linea)}
.y1c .k{font-size:var(--t-micro);letter-spacing:.14em;text-transform:uppercase;color:var(--niebla);margin-bottom:4px}
.y1c>b{font-family:var(--f-display);font-weight:800;font-size:calc(var(--u)*3);line-height:.95;display:block;color:var(--hueso)}
.y1c small b{color:var(--hueso);font-weight:600}
.y1c small{font-size:var(--t-micro);color:#BFD0E0;display:block;margin-top:4px;line-height:1.4}
.y1c.pil{border-color:var(--celeste)}.y1c.pil>b{color:var(--celeste)}

.presets{display:inline-flex;gap:6px}
.preset{font-size:var(--t-micro);letter-spacing:.06em;text-transform:none;padding:.35em .7em;border-radius:999px;border:1px solid var(--linea);color:var(--niebla)}
.preset.on{background:var(--celeste);color:var(--noche);border-color:var(--celeste)}
.preset:hover{color:var(--hueso);border-color:var(--celeste)}
.preset.on:hover{color:var(--noche)}
.rules .gain p b{color:var(--hueso)}

/* ---------- responsive ---------- */
@media (max-width:860px),(max-aspect-ratio:1/1){
  :root{--t-hero:clamp(44px,12vw,72px);--t-h1:clamp(34px,9.5vw,54px);--t-h2:22px;--t-lead:18px;--t-body:16px;--t-small:14px;--t-micro:11.5px;--padx:18px;--padt:74px;--padb:96px;--u:4.4px;--pw:min(280px,74vw)}
  .slide{align-content:start;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
  .split,.tapstage{grid-template-columns:1fr!important;gap:32px}
  .bottombar{background:linear-gradient(180deg,rgba(6,16,29,0),var(--noche) 45%);padding-top:28px}
  .navbtns{gap:6px;flex-wrap:nowrap}
  .notesbtn{white-space:nowrap;padding:.7em .7em;font-size:10px}
  .counter{font-size:11px;margin-left:2px}
  .navbtn{width:38px;height:38px}
  .topbar{background:linear-gradient(180deg,var(--noche) 60%,rgba(6,16,29,0));padding-bottom:14px}
  .fit{font-size:var(--t-h1)!important}
  h2.h1,h1.hero{font-size:var(--t-h1)!important}
  p.h2{font-size:var(--t-h2)!important}
  .jn h4{font-size:20px!important}
  .fit2{font-size:22px!important}
  .slide.tall{padding-top:74px;padding-bottom:96px}
  .rules .gain h3{font-size:22px}
  .eco{grid-template-columns:1fr!important}
  .opts{grid-template-columns:1fr}
  .opts2,.y1{grid-template-columns:1fr}
  .opt h4{font-size:20px}.y1c>b{font-size:28px}
  .ecoitem h4{font-size:19px}
  .tot b{font-size:26px}.tot.big b{font-size:34px}.tier b{font-size:18px}
  .notes{bottom:84px}
  .tl{grid-template-columns:1fr}
  .tl .thumbs{justify-content:flex-start}
  .tapstage .phone-col{order:1}
  .tapstage.tapped .phone{animation-name:tapmoveM}
  .swipehint{display:flex}
  .hem{max-width:320px;margin:0 auto}
  .tiles,.gains{grid-template-columns:1fr 1fr;gap:18px}
  .world{grid-template-columns:1fr 1fr}
  .chain{grid-template-columns:1fr 1fr;row-gap:26px}
  .chain::before{display:none}
  .phases{grid-template-columns:1fr}
  .metrics{grid-template-columns:1fr}
  .flow{font-size:42px}
  .jersey{max-height:44vh}
  .phone-col{justify-self:center}
  .disclaimer{display:none}
  .topbar .sub{display:none}
  .bignum{font-size:72px}
  .tl h4{font-size:19px}
  .world .cap h4{font-size:19px}
  .node h4,.phase h4{font-size:19px}
  .gain h3{font-size:24px}
  .tile .big{font-size:30px}
  .tablist button b{font-size:20px}
  .cmp .row{font-size:26px}
  .specs b{font-size:48px}
  .stat-row b{font-size:40px}
  .cta{font-size:18px}
  .hem{width:100%}
  .memcard{width:min(100%,300px)}
}
@media (max-width:420px){.tiles,.gains,.world{grid-template-columns:1fr}.world .scene{aspect-ratio:16/10}}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
  .slide .rise{opacity:1;transform:none}
}

/* ================= K8Z × SPORTS · additions ================= */
.modesw{display:inline-flex;border:1px solid var(--linea);border-radius:999px;padding:3px;background:rgba(12,30,54,.55);gap:3px}
.modesw button{padding:.55em 1.1em;border-radius:999px;font-size:var(--t-micro);letter-spacing:.1em;text-transform:uppercase;color:var(--niebla);display:inline-flex;align-items:center;gap:.6em;transition:.2s}
.modesw .short{display:none}
.modesw button b{font-family:var(--f-mono);font-weight:500;color:var(--niebla2);letter-spacing:0;text-transform:none}
.modesw button.on{background:var(--celeste);color:var(--noche)}
.modesw button.on b{color:var(--noche);opacity:.7}
.modesw button:not(.on):hover{color:var(--hueso)}
.modepill{display:none;align-items:center;gap:.5em;padding:.35em .8em;border-radius:999px;border:1px solid var(--celeste);color:var(--celeste);font-size:var(--t-micro);letter-spacing:.12em;text-transform:uppercase;pointer-events:auto;cursor:pointer;margin-left:.6em}
.modepill.on{display:inline-flex}
.modehint{font-size:var(--t-micro);color:var(--niebla2)}
@media (max-width:860px),(max-aspect-ratio:1/1){.modesw button{padding:.5em .8em}.modesw button b{display:none}.modepill{margin-left:0}}

#vcalc{gap:calc(var(--u)*.35)}
#vcalc .ctrl{font-size:var(--t-micro)}
#vcalc input[type=range]{height:14px}
#vcalc .tot{padding:calc(var(--u)*.5) calc(var(--u)*.9)}
#vcalc .tot b{font-size:calc(var(--u)*2.4)}
#vcalc .tot.big b{font-size:calc(var(--u)*3)}
#vzBar{font-size:var(--t-micro);letter-spacing:.02em}
#vzBar span{white-space:nowrap;overflow:hidden;padding:0 .3em}
.eco-voz .ecoitem p{font-size:var(--t-micro)}
.narrbtn{display:inline-flex;align-items:center;gap:.5em;color:var(--hueso);border-color:rgba(117,184,234,.45)}
.narrbtn .ic{width:1em;height:1em}
.narrbtn.on{background:var(--celeste);color:var(--noche);border-color:var(--celeste)}
.narrbtn.guided{box-shadow:0 0 0 2px rgba(117,184,234,.35)}
.narrbar{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + max(14px,calc(var(--u)*2)) + calc(var(--u)*4.6));transform:translate(-50%,8px);z-index:45;display:flex;align-items:center;gap:10px;padding:.5em .9em;border-radius:999px;background:rgba(9,22,41,.94);border:1px solid rgba(117,184,234,.35);font-size:var(--t-micro);color:var(--hueso);opacity:0;visibility:hidden;transition:.3s var(--ease);backdrop-filter:blur(8px);max-width:min(720px,calc(100vw - 32px))}
.narrbar.on{opacity:1;visibility:visible;transform:translate(-50%,0)}
.narrbar .eq{display:flex;align-items:flex-end;gap:2px;height:12px}
.narrbar .eq i{display:block;width:3px;background:var(--celeste);border-radius:1px;animation:wv 1s ease-in-out infinite}
.narrbar .eq i:nth-child(2){animation-delay:.15s}.narrbar .eq i:nth-child(3){animation-delay:.3s}.narrbar .eq i:nth-child(4){animation-delay:.45s}
.narrbar .t{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#D5E3F0}
.narrbar .src-tag{font-family:var(--f-mono);color:var(--niebla);letter-spacing:.08em}
@media (max-width:860px),(max-aspect-ratio:1/1){.narrbar{bottom:calc(env(safe-area-inset-bottom,0px) + 70px);left:16px;right:auto;transform:translate(0,8px);max-width:calc(100vw - 32px)}.narrbar.on{transform:none}.narrbtn span{display:none}.narrbtn{padding:.7em .9em}}

/* tarjeta de propiedad */
.titlecard{position:relative;width:calc(var(--u)*22);aspect-ratio:1.586;border-radius:12px;background:linear-gradient(135deg,#0F1720,#05090F);border:1px solid rgba(117,184,234,.45);box-shadow:0 30px 60px -20px rgba(0,0,0,.8),inset 0 0 0 1px rgba(255,255,255,.04);padding:calc(var(--u)*1.2) calc(var(--u)*1.4);display:flex;flex-direction:column;justify-content:space-between;color:var(--hueso)}
.titlecard .tk{font-family:var(--f-mono);font-size:var(--t-micro);letter-spacing:.14em;text-transform:uppercase;color:var(--niebla)}
.titlecard .tn{font-family:var(--f-display);font-weight:800;text-transform:uppercase;font-size:calc(var(--u)*1.9);line-height:1}
.titlecard .brand-k{font-family:var(--f-display);font-weight:800;font-size:calc(var(--u)*1.8);letter-spacing:.06em}
.titlecard .chipic{position:absolute;right:calc(var(--u)*1.4);top:calc(var(--u)*1.2);width:calc(var(--u)*2.6);height:calc(var(--u)*2.6);color:var(--celeste)}
.titlecard .row2{display:flex;gap:calc(var(--u)*2);font-size:var(--t-micro)}
.titlecard .row2 b{display:block;font-family:var(--f-mono);font-weight:500;color:var(--hueso)}
.pairline{position:absolute;left:50%;top:0;height:calc(var(--u)*3);width:2px;background:linear-gradient(180deg,transparent,var(--celeste));transform:translate(-50%,-100%)}
.pair{position:relative;display:flex;flex-direction:column;align-items:center;gap:calc(var(--u)*3.2)}
.tri{display:grid;grid-template-columns:repeat(3,1fr);gap:calc(var(--u)*1.2)}
/* voz oficial */
.voice{display:flex;flex-direction:column;align-items:center;gap:2.4cqw;padding:5cqw 4cqw 3cqw}
.orb{width:34cqw;height:34cqw;border-radius:50%;background:radial-gradient(circle at 40% 35%,#AAD5F6,#75B8EA 40%,#14294A 75%);box-shadow:0 0 60px -10px rgba(117,184,234,.8);position:relative}
.orb::after{content:"";position:absolute;inset:-8%;border-radius:50%;border:1px solid rgba(117,184,234,.45);animation:orb 2.4s ease-out infinite}
@keyframes orb{0%{transform:scale(.9);opacity:.9}100%{transform:scale(1.25);opacity:0}}
.wave{display:flex;align-items:flex-end;gap:1.2cqw;height:9cqw}
.wave i{display:block;width:1.6cqw;background:var(--celeste);border-radius:2px;animation:wv 1s ease-in-out infinite}
.wave i:nth-child(2){animation-delay:.1s}.wave i:nth-child(3){animation-delay:.2s}.wave i:nth-child(4){animation-delay:.3s}.wave i:nth-child(5){animation-delay:.4s}.wave i:nth-child(6){animation-delay:.5s}.wave i:nth-child(7){animation-delay:.6s}
@keyframes wv{0%,100%{height:20%}50%{height:100%}}
.packs{display:grid;grid-template-columns:1fr 1fr;gap:2cqw}
.pack{border:1px solid var(--linea);border-radius:3cqw;padding:3cqw;display:flex;flex-direction:column;gap:.6cqw}
.pack b{font-family:var(--f-display);text-transform:uppercase;font-size:5.4cqw;line-height:1}
.pack span{font-size:2.9cqw;color:var(--niebla)}
.pack.sel{border-color:var(--celeste);background:var(--celeste-lo)}
.rules4{display:grid;grid-template-columns:1fr 1fr;gap:calc(var(--u)*1)}
.rule{padding:calc(var(--u)*1) calc(var(--u)*1.2);border:1px solid var(--linea);border-radius:10px;display:flex;gap:10px;align-items:flex-start;font-size:var(--t-small);color:#D5E3F0}
.rule svg{color:var(--celeste);flex:none;margin-top:.15em}
@media (max-width:860px),(max-aspect-ratio:1/1){.tri{grid-template-columns:1fr}.rules4{grid-template-columns:1fr}.titlecard{width:min(78vw,300px)}}

[hidden]{display:none!important}
.gatepic{width:calc(var(--u)*12);aspect-ratio:1;border-radius:12px;flex:none;box-shadow:0 18px 40px -18px rgba(0,0,0,.8)}
.lotpic{aspect-ratio:16/7;border-radius:10px}
.lotpic.has-photo{display:block!important}
.timeline.compact{gap:calc(var(--u)*.7)}
.timeline.compact .tl{padding:calc(var(--u)*.55) calc(var(--u)*1.1)}
.timeline.compact .tl h4{font-size:calc(var(--u)*1.6)}
.timeline.compact .tl .quote{font-size:var(--t-micro)}
.slide.black{background:#020508}
.tag-hyp{border:1px dashed rgba(240,183,122,.6);color:var(--calido)}
.tag-demo{border:1px dashed rgba(117,184,234,.55);color:var(--celeste-hi)}
.actbar{position:fixed;right:var(--padx);top:calc(env(safe-area-inset-top,0px) + max(14px,calc(var(--u)*2)) + calc(var(--u)*3));z-index:41;pointer-events:none;opacity:0;transition:opacity .4s}
.actbar.on{opacity:1}

/* hero object (la misma camiseta) */
.hero-obj{position:fixed;left:0;top:0;width:calc(var(--u)*24);z-index:30;pointer-events:none;opacity:0;transform:translate(-50%,-50%) scale(.6);transition:transform 1s var(--ease),opacity .6s var(--ease),width 1s var(--ease);will-change:transform;filter:drop-shadow(0 30px 40px rgba(0,0,0,.6))}
.hero-obj.on{opacity:1}
.hero-obj .ph,.hero-obj>svg{transform-style:preserve-3d;backface-visibility:visible;transition:transform .5s var(--ease)}
.hero-obj.tilt .ph,.hero-obj.tilt>svg{transform:perspective(900px) rotateY(var(--ry,0deg)) rotateX(var(--rx,0deg))}
.hero-obj.spin .ph,.hero-obj.spin>svg{animation:spin360 1.4s var(--ease) 1}
@keyframes spin360{from{transform:perspective(900px) rotateY(0)}to{transform:perspective(900px) rotateY(360deg)}}
.hero-obj .ph{position:absolute;inset:0;background-size:contain;background-position:center;background-repeat:no-repeat;opacity:0}
.hero-obj.has-photo .ph{opacity:1}.hero-obj.has-photo>svg{opacity:0}
.hero-obj .glow{position:absolute;left:50%;bottom:8%;width:60%;height:12%;transform:translateX(-50%);background:radial-gradient(50% 50% at 50% 50%,rgba(117,184,234,.35),transparent 70%);filter:blur(10px)}
.objslot{min-height:calc(var(--u)*30)}
.objframe{position:relative;width:calc(var(--u)*30);aspect-ratio:1/1.12;margin:0 auto;border:1px solid rgba(170,213,246,.25);box-shadow:inset 0 0 0 calc(var(--u)*.6) #06101D,inset 0 0 0 calc(var(--u)*.7) rgba(170,213,246,.18),0 40px 90px -30px rgba(0,0,0,.9);background:linear-gradient(180deg,#0C1E36,#091629);opacity:0;transform:scale(.96);transition:opacity .8s var(--ease) .3s,transform .8s var(--ease) .3s}
.slide.active .objframe{opacity:1;transform:none}
.objframe .plate{position:absolute;left:50%;bottom:calc(var(--u)*-1.4);transform:translateX(-50%);background:#0F223D;border:1px solid rgba(170,213,246,.25);padding:.35em 1em;font-family:var(--f-mono);font-size:var(--t-micro);color:var(--celeste-hi);white-space:nowrap}

/* ficha mono */
.ficha{display:grid;grid-template-columns:auto 1fr;gap:calc(var(--u)*.7) calc(var(--u)*2);font-family:var(--f-mono);font-size:var(--t-small);align-content:start}
.ficha dt{color:var(--niebla2);letter-spacing:.1em;text-transform:uppercase;font-size:var(--t-micro);padding-top:.25em}
.ficha dd{margin:0;color:var(--hueso)}
.ficha dd.cel{color:var(--celeste)}
.ficha.type dd{opacity:0;transform:translateX(6px);transition:opacity .5s,transform .5s}
.slide.active .ficha.type dd{opacity:1;transform:none}
.slide.active .ficha.type dd:nth-of-type(1){transition-delay:.5s}.slide.active .ficha.type dd:nth-of-type(2){transition-delay:.7s}.slide.active .ficha.type dd:nth-of-type(3){transition-delay:.9s}.slide.active .ficha.type dd:nth-of-type(4){transition-delay:1.1s}.slide.active .ficha.type dd:nth-of-type(5){transition-delay:1.3s}.slide.active .ficha.type dd:nth-of-type(6){transition-delay:1.5s}.slide.active .ficha.type dd:nth-of-type(7){transition-delay:1.7s}.slide.active .ficha.type dd:nth-of-type(8){transition-delay:1.9s}.slide.active .ficha.type dd:nth-of-type(9){transition-delay:2.1s}

/* status chips */
.st{display:inline-flex;align-items:center;gap:.4em;padding:.28em .65em;border-radius:999px;font-size:var(--t-micro);letter-spacing:.12em;text-transform:uppercase;font-weight:600;white-space:nowrap}
.st::before{content:"";width:.55em;height:.55em;border-radius:50%;background:currentColor}
.st-ver{background:var(--celeste);color:var(--noche)}
.st-reg{border:1px solid rgba(243,247,250,.45);color:var(--hueso)}
.st-usr{border:1px dashed rgba(240,183,122,.7);color:var(--calido)}
.legend{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;font-size:var(--t-micro);color:var(--niebla)}

/* layers row (slide 2) */
.layers{display:flex;flex-wrap:wrap;align-items:center;gap:calc(var(--u)*.8);margin-top:calc(var(--u)*2.4)}
.layer{font-family:var(--f-display);font-weight:800;text-transform:uppercase;font-size:calc(var(--u)*2.05);line-height:1;padding:.35em .6em;border:1px solid var(--linea);border-radius:10px;background:rgba(12,30,54,.5)}
.layer.k{background:var(--celeste);color:var(--noche);border-color:var(--celeste)}
.layers .plus{font-family:var(--f-display);font-size:calc(var(--u)*3);color:var(--niebla2)}
.gate{display:grid;grid-template-columns:auto 1fr auto;gap:calc(var(--u)*2);align-items:center;margin-top:calc(var(--u)*2.2);padding:calc(var(--u)*1.4) calc(var(--u)*1.8);border:1px solid var(--linea);border-radius:14px;background:rgba(12,30,54,.4)}
.gate .big{font-family:var(--f-display);font-weight:800;text-transform:uppercase;font-size:calc(var(--u)*2.4);line-height:1}
.gate .expand{font-size:var(--t-micro);letter-spacing:.12em;text-transform:uppercase;color:var(--niebla2);border:1px dashed var(--linea);padding:.6em 1em;border-radius:999px;white-space:nowrap}

/* journey nodes (sorteo, transfers) */
.journey{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:calc(var(--u)*1.2);align-items:center;margin-top:calc(var(--u)*2)}
.jn{padding:calc(var(--u)*1.3);border-radius:14px;border:1px solid var(--linea);background:rgba(12,30,54,.5);display:flex;flex-direction:column;gap:6px;min-height:calc(var(--u)*13)}
.jn .k{font-family:var(--f-mono);font-size:var(--t-micro);letter-spacing:.12em;text-transform:uppercase;color:var(--niebla)}
.jn h4{margin:0;font-family:var(--f-display);font-weight:800;text-transform:uppercase;font-size:calc(var(--u)*2.6);line-height:.95}
.jn p{font-size:var(--t-small);color:#BFD0E0}
.jn.origin{border-color:rgba(240,183,122,.5)}.jn.origin .k{color:var(--calido)}
.jn.owner{border-color:var(--celeste)}.jn.owner .k{color:var(--celeste)}
.jn.event{border-style:dashed}
.jarrow{font-family:var(--f-display);font-size:calc(var(--u)*4);color:var(--niebla2);text-align:center}
.jarrow.on{color:var(--celeste)}

/* transfer phone */
.tcard{border-radius:3.5cqw;padding:3.4cqw;border:1px solid var(--linea);background:rgba(20,41,74,.5);display:flex;flex-direction:column;gap:1cqw}
.tcard .k{font-size:2.7cqw;letter-spacing:.14em;text-transform:uppercase;color:var(--niebla)}
.tcard b{font-family:var(--f-display);text-transform:uppercase;font-size:5.4cqw;line-height:1}
.tcard.origin{border-color:rgba(240,183,122,.5)}.tcard.origin .k{color:var(--calido)}
.tcard.owner{border-color:var(--celeste)}.tcard.owner .k{color:var(--celeste)}
.tarrow{text-align:center;font-family:var(--f-display);font-size:7cqw;color:var(--niebla2);line-height:1}
.trow{display:flex;justify-content:space-between;align-items:center;font-size:3.2cqw;padding:2cqw 0;border-bottom:1px solid var(--linea)}
.trow:last-child{border-bottom:0}
.trow span:first-child{color:var(--niebla)}
.trow .ok{font-size:3cqw}

/* hoja de vida timeline (reuse .timeline/.tl) */
.tl .yr{font-family:var(--f-mono);font-size:var(--t-micro);color:var(--celeste);letter-spacing:.08em}
.tl.pending{opacity:.45;border-style:dashed}

/* auction */
.lot{border:1px solid var(--linea);border-radius:16px;padding:calc(var(--u)*1.8);background:rgba(12,30,54,.55);display:flex;flex-direction:column;gap:calc(var(--u)*1.2)}
.lot h3{margin:0;font-family:var(--f-display);font-weight:800;text-transform:uppercase;font-size:calc(var(--u)*3.2);line-height:.95}
.lot .rows{display:grid;grid-template-columns:1fr auto;gap:calc(var(--u)*.6) calc(var(--u)*2);font-size:var(--t-small);align-items:center}
.lot .rows span:nth-child(odd){color:var(--niebla)}
.bids{display:flex;flex-direction:column;gap:6px}
.bid{display:flex;justify-content:space-between;align-items:center;padding:.6em .9em;border-radius:10px;border:1px solid var(--linea);background:var(--noche);font-size:var(--t-small);opacity:0;transform:translateY(8px);transition:opacity .5s,transform .5s}
.slide.active .bid{opacity:1;transform:none}
.slide.active .bid:nth-child(1){transition-delay:1.2s}.slide.active .bid:nth-child(2){transition-delay:1.9s}.slide.active .bid:nth-child(3){transition-delay:2.6s}.slide.active .bid:nth-child(4){transition-delay:3.3s}
.bid .who{color:var(--niebla)}
.bid .amt{font-family:var(--f-mono);color:var(--hueso)}
.bid .amt i{display:inline-block;width:5.5em;height:.9em;border-radius:3px;background:repeating-linear-gradient(90deg,var(--niebla2) 0 .6em,transparent .6em .8em);opacity:.6;vertical-align:middle}
.sold{align-self:flex-start;font-family:var(--f-display);font-weight:800;text-transform:uppercase;letter-spacing:.1em;font-size:calc(var(--u)*2);padding:.4em .9em;border:2px solid var(--celeste);color:var(--celeste);transform:rotate(-4deg);opacity:0;transition:opacity .4s 4.2s,transform .4s 4.2s}
.slide.active .sold{opacity:1;transform:rotate(-4deg) scale(1)}

/* procedencia chain */
.prov{display:flex;flex-direction:column;gap:0;position:relative}
.pv{display:grid;grid-template-columns:auto 1fr auto;gap:calc(var(--u)*1.2);align-items:center;padding:calc(var(--u)*.55) 0;position:relative}
.pv+.pv::before{content:"";position:absolute;left:calc(var(--u)*1.1);top:calc(var(--u)*-.9);height:calc(var(--u)*1.8);width:2px;background:linear-gradient(180deg,rgba(117,184,234,.1),var(--celeste))}
.pv .dot{width:calc(var(--u)*2.2);height:calc(var(--u)*2.2);min-width:14px;min-height:14px;border-radius:50%;border:2px solid var(--celeste);background:var(--noche);display:grid;place-items:center}
.pv.ver .dot{background:var(--celeste)}
.pv.usr .dot{border-color:var(--calido)}
.pv h4{margin:0;font-family:var(--f-display);font-weight:700;text-transform:uppercase;font-size:calc(var(--u)*2.2);line-height:1}
.pv p{font-size:var(--t-micro);color:var(--niebla);margin-top:3px}
.pv .sts{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}
.pv{opacity:0;transform:translateY(10px);transition:opacity .5s var(--ease),transform .5s var(--ease)}
.slide.active .pv{opacity:1;transform:none}
.slide.active .pv:nth-child(1){transition-delay:.3s}.slide.active .pv:nth-child(2){transition-delay:.55s}.slide.active .pv:nth-child(3){transition-delay:.8s}.slide.active .pv:nth-child(4){transition-delay:1.05s}.slide.active .pv:nth-child(5){transition-delay:1.3s}.slide.active .pv:nth-child(6){transition-delay:1.55s}

/* receive list */
.recv{display:flex;flex-direction:column;gap:6px;margin-top:calc(var(--u)*1.2)}
.recv span{display:flex;align-items:center;gap:8px;font-family:var(--f-display);font-weight:700;text-transform:uppercase;font-size:calc(var(--u)*1.8);line-height:1}
.recv span::before{content:"+";color:var(--celeste);font-weight:500}
.recv span:first-child::before{content:"";width:.5em}

/* big typographic */
.mega{font-family:var(--f-display);font-weight:800;text-transform:uppercase;line-height:.9;font-size:calc(var(--u)*9.5);text-wrap:balance}
.mega .l2{display:block;color:var(--celeste)}

/* año 10 reveal */
.reveal-wrap{position:relative}
.day1,.year10{transition:opacity .6s var(--ease),transform .6s var(--ease)}
.year10{position:absolute;inset:0;opacity:0;transform:translateY(16px);pointer-events:none;overflow-y:auto}
.slide.reveal .day1{opacity:0;transform:translateY(-16px);pointer-events:none}
.slide.reveal .year10{opacity:1;transform:none;pointer-events:auto}
.stack-items{display:flex;flex-direction:column;gap:4px;margin-top:calc(var(--u)*1)}
.stack-items span{font-family:var(--f-display);font-weight:800;text-transform:uppercase;font-size:calc(var(--u)*2.1);line-height:1;opacity:0;transform:translateX(-10px);transition:opacity .45s,transform .45s}
.stack-items span::before{content:"+ ";color:var(--celeste);font-weight:500}
.stack-items span:first-child::before{content:""}
.slide.reveal .stack-items span{opacity:1;transform:none}
.slide.reveal .stack-items span:nth-child(1){transition-delay:.1s}.slide.reveal .stack-items span:nth-child(2){transition-delay:.35s}.slide.reveal .stack-items span:nth-child(3){transition-delay:.6s}.slide.reveal .stack-items span:nth-child(4){transition-delay:.85s}.slide.reveal .stack-items span:nth-child(5){transition-delay:1.1s}.slide.reveal .stack-items span:nth-child(6){transition-delay:1.35s}
.slide.reveal .objframe{box-shadow:inset 0 0 0 calc(var(--u)*.6) #06101D,inset 0 0 0 calc(var(--u)*.7) rgba(117,184,234,.5),0 0 80px -10px rgba(117,184,234,.45)}

/* assets grid */
.assets{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:calc(var(--u)*1);margin-top:calc(var(--u)*2.4)}
.asset{min-width:0;overflow-wrap:anywhere;padding:calc(var(--u)*.9) calc(var(--u)*1);border:1px solid var(--linea);border-radius:12px;background:rgba(12,30,54,.45);font-family:var(--f-display);font-weight:700;text-transform:uppercase;font-size:calc(var(--u)*2.2);line-height:1;display:flex;align-items:center;gap:12px}
.asset i{width:8px;height:8px;border-radius:50%;background:var(--celeste);flex:none}

/* monetization columns */
.mon{display:grid;grid-template-columns:repeat(3,1fr);gap:calc(var(--u)*1.4);margin-top:calc(var(--u)*2.4)}
.mcol{border:1px solid var(--linea);border-radius:14px;padding:calc(var(--u)*1.5);display:flex;flex-direction:column;gap:calc(var(--u)*.9)}
.mcol .k{font-family:var(--f-mono);font-size:var(--t-micro);letter-spacing:.12em;text-transform:uppercase}
.mcol h4{margin:0;font-family:var(--f-display);font-weight:800;text-transform:uppercase;font-size:calc(var(--u)*2.4);line-height:1}
.mcol ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:5px;font-size:var(--t-small);color:#D5E3F0}
.mcol ul li::before{content:"·";color:var(--celeste);margin-right:.5em}
.mcol.now{border-color:var(--celeste);background:rgba(117,184,234,.07)}.mcol.now .k{color:var(--celeste)}
.mcol.next .k{color:var(--hueso)}.mcol.later{border-style:dashed}.mcol.later .k{color:var(--niebla)}

/* secondary market chain */
.smchain{display:flex;flex-wrap:wrap;align-items:center;gap:calc(var(--u)*.8);margin-top:calc(var(--u)*2.4);font-family:var(--f-display);font-weight:700;text-transform:uppercase;font-size:calc(var(--u)*2.1);line-height:1}
.smchain span{padding:.5em .8em;border:1px solid var(--linea);border-radius:10px;background:rgba(12,30,54,.5)}
.smchain span.o{border-color:var(--celeste)}
.smchain i{font-style:normal;color:var(--niebla2)}
.actors{display:flex;flex-wrap:wrap;gap:8px;margin-top:calc(var(--u)*1.6)}
.actors span{padding:.45em .9em;border-radius:999px;border:1px dashed var(--linea);font-size:var(--t-small);color:#D5E3F0}

/* scale */
.scale{display:flex;flex-wrap:wrap;align-items:center;gap:calc(var(--u)*1);margin-top:calc(var(--u)*2.6);font-family:var(--f-display);font-weight:800;text-transform:uppercase;line-height:1}
.scale span{font-size:calc(var(--u)*3.6)}
.scale i{font-style:normal;color:var(--celeste);font-size:calc(var(--u)*3)}
.scale span:nth-child(1){font-size:calc(var(--u)*3)}.scale span:nth-child(3){font-size:calc(var(--u)*3.4)}.scale span:nth-child(5){font-size:calc(var(--u)*3.8)}.scale span:nth-child(7){font-size:calc(var(--u)*4.2)}.scale span:nth-child(9){font-size:calc(var(--u)*4.6)}.scale span:nth-child(11){font-size:calc(var(--u)*5)}

/* collaboration */
.collab{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:calc(var(--u)*1);align-items:stretch;margin-top:calc(var(--u)*2.4)}
.cc{border:1px solid var(--linea);border-radius:14px;padding:calc(var(--u)*1.6);background:rgba(12,30,54,.5);display:flex;flex-direction:column;gap:calc(var(--u)*.8)}
.cc h4{margin:0;font-family:var(--f-display);font-weight:800;text-transform:uppercase;font-size:calc(var(--u)*3);line-height:.95}
.cc ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:3px;font-family:var(--f-display);font-weight:600;text-transform:uppercase;font-size:calc(var(--u)*1.55);letter-spacing:.04em;color:#D5E3F0}
.cc .k{font-family:var(--f-mono);font-size:var(--t-micro);letter-spacing:.12em;text-transform:uppercase;color:var(--niebla)}
.cplus{display:grid;place-items:center;font-family:var(--f-display);font-size:calc(var(--u)*5);color:var(--niebla2)}
.result{margin-top:calc(var(--u)*1.6);display:flex;align-items:center;gap:calc(var(--u)*1.6);flex-wrap:wrap}
.result .arr{font-family:var(--f-display);font-size:calc(var(--u)*3.6);color:var(--niebla2)}
.result b{font-family:var(--f-display);font-weight:800;text-transform:uppercase;font-size:calc(var(--u)*3.6);line-height:1;color:var(--celeste)}


/* cover / portada con imagen */
.slide.cover{padding:0;display:block;background:#050B14;overflow:hidden!important}
.coverbg{position:absolute;inset:0;background:#050B14 url("assets/portada-desktop.jpg") center/contain no-repeat;transform:translate(var(--px,0),var(--py,0));transition:transform .6s var(--ease);will-change:transform;overflow:hidden}
.slide.cover.active .coverbg{animation:kenburns 14s var(--ease) both}
@keyframes kenburns{from{scale:1.06;filter:brightness(.6)}to{scale:1;filter:brightness(1)}}
.coverbg::before{content:"";position:absolute;left:55%;top:-30%;width:40%;height:160%;background:linear-gradient(180deg,rgba(170,213,246,.22),transparent 70%);clip-path:polygon(35% 0,65% 0,100% 100%,0 100%);filter:blur(24px);opacity:0;transform:translateX(-30%)}
.slide.cover.active .coverbg::before{animation:hazsweep 2.4s var(--ease) .4s 1}
@keyframes hazsweep{0%{opacity:0;transform:translateX(-40%)}30%{opacity:1}100%{opacity:0;transform:translateX(40%)}}
.coverbg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,11,20,.55) 0%,transparent 22%,transparent 72%,rgba(5,11,20,.85) 100%)}
.covertop{position:absolute;left:var(--padx);top:calc(var(--padt) + var(--u)*.5);display:flex;align-items:center;gap:calc(var(--u)*1.2);z-index:5}
.covertop .eyebrow-txt{font-family:var(--f-mono);font-size:var(--t-micro);letter-spacing:.16em;text-transform:uppercase;color:var(--hueso);background:rgba(5,11,20,.6);padding:.45em .8em;border-radius:999px}
.coverbot{position:absolute;right:var(--padx);bottom:calc(var(--padb) + var(--u)*.6);display:flex;flex-direction:column;gap:calc(var(--u)*.7);align-items:flex-end;text-align:right;z-index:5;max-width:min(46vw,60ch)}
.coverbot .micro{background:rgba(5,11,20,.6);padding:.4em .8em;border-radius:6px}
.slide.cover .modesw{background:rgba(5,11,20,.7);backdrop-filter:blur(6px)}
.slide.cover .modehint{color:var(--niebla)}
@media (max-width:860px),(max-aspect-ratio:1/1){
  .coverbg{background-image:url("assets/portada-mobile.jpg");background-size:contain;background-position:center 46%}
  .coverbg::after{background:linear-gradient(180deg,rgba(5,11,20,.7) 0%,transparent 18%,transparent 62%,rgba(5,11,20,.92) 100%)}
  .covertop{left:16px;top:56px;flex-wrap:wrap;gap:8px}
  .coverbot{left:16px;right:16px;bottom:84px;max-width:none;align-items:center;text-align:center}
  .coverbot .micro{background:none}
  .slide.cover .modehint{display:none}
}


/* guía: flecha flotante y siguiente en neón */
.hintarrow{position:fixed;left:0;top:0;z-index:46;display:flex;flex-direction:column;align-items:center;gap:2px;color:var(--celeste);pointer-events:none;opacity:0;transform:translate(-50%,0) translateY(6px);transition:opacity .35s;filter:drop-shadow(0 0 8px rgba(117,184,234,.8))}
.hintarrow.on{opacity:1;animation:hintbob .9s ease-in-out infinite}
.hintarrow svg{width:max(28px,calc(var(--u)*3));height:max(28px,calc(var(--u)*3))}
.hintarrow span{font-family:var(--f-mono);font-size:var(--t-micro);letter-spacing:.14em;text-transform:uppercase;background:rgba(5,11,20,.85);border:1px solid rgba(117,184,234,.5);padding:.3em .7em;border-radius:999px;color:var(--celeste-hi)}
@keyframes hintbob{0%,100%{transform:translate(-50%,0) translateY(6px)}50%{transform:translate(-50%,0) translateY(16px)}}
.navbtn.neon{border-color:var(--celeste);color:var(--celeste-hi);background:rgba(117,184,234,.12);animation:neonblink 1.1s ease-in-out infinite}
@keyframes neonblink{0%,100%{box-shadow:0 0 0 0 rgba(117,184,234,.0),0 0 6px rgba(117,184,234,.4)}50%{box-shadow:0 0 0 4px rgba(117,184,234,.25),0 0 22px rgba(117,184,234,.95)}}


/* play grande y titilando hasta el primer play */
.narrbtn.attract{transform:scale(1.12);margin-right:4px;transform-origin:center;background:#08131F;border-color:rgba(255,214,90,.6);color:#FFF6C2;position:relative;isolation:isolate;z-index:2}
.narrbtn.attract::before,.narrbtn.attract::after{content:"";position:absolute;inset:-2px;border-radius:999px;z-index:-1;pointer-events:none;
  background:conic-gradient(from var(--sw),transparent 0 58%,rgba(255,179,0,.35) 66%,#FFD65A 74%,#FFF6C2 78%,#FFB300 84%,rgba(255,179,0,.25) 92%,transparent 100%);animation:swspin 2.8s linear infinite}
.narrbtn.attract::after{inset:-7px;filter:blur(9px);opacity:.75}
.narrbtn.attract.on{color:#FFF6C2;background:rgba(255,214,90,.14)}
.navbtns .counter{margin-right:6px}
@media (prefers-reduced-motion:reduce){.narrbtn.attract::before,.narrbtn.attract::after{animation:none}}
@keyframes glowpulse{0%,100%{opacity:.35}50%{opacity:1}}
@media (max-width:860px),(max-aspect-ratio:1/1){.narrbtn.attract{transform:scale(1.1);margin-right:2px}}
.hintarrow.down{transform:translate(-50%,-100%) translateY(-6px);flex-direction:column-reverse}
.hintarrow.down svg{transform:rotate(180deg)}
.hintarrow.down.on{animation:hintbobd .9s ease-in-out infinite}
@keyframes hintbobd{0%,100%{transform:translate(-50%,-100%) translateY(-6px)}50%{transform:translate(-50%,-100%) translateY(-16px)}}

/* switch versión completa / resumen: luz dorada girando alrededor */
@property --sw{syntax:"<angle>";inherits:false;initial-value:0deg}
@keyframes swspin{to{--sw:360deg}}


/* ===== Dirección de arte 1a · Tráiler nocturno (Claude Design, turno 3) ===== */
/* haz de luz frío sobre el objeto héroe */
.hero-obj .haz{position:absolute;left:50%;bottom:38%;width:180%;height:190%;transform:translateX(-50%);pointer-events:none;z-index:-1;
  background:radial-gradient(45% 55% at 50% 100%,rgba(170,213,246,.28),rgba(117,184,234,.08) 55%,transparent 72%);
  clip-path:polygon(38% 0,62% 0,100% 100%,0 100%);filter:blur(14px);opacity:0;transition:opacity var(--d-scene) var(--ease)}
.hero-obj.on .haz{opacity:1}
.hero-obj .spot{position:absolute;left:50%;top:50%;width:140%;height:120%;transform:translate(-50%,-50%);border-radius:50%;pointer-events:none;z-index:-2;
  background:radial-gradient(50% 50% at 50% 50%,rgba(117,184,234,.16),transparent 70%);filter:blur(20px)}
/* láminas translúcidas detrás de la camiseta (Año 10) */
.laminas{position:absolute;inset:0;pointer-events:none;z-index:0}
.lam{position:absolute;left:50%;top:50%;width:calc(var(--u)*24);aspect-ratio:1/1.12;border:1px solid rgba(117,184,234,.45);border-radius:6px;
  background:linear-gradient(180deg,rgba(117,184,234,.06),rgba(117,184,234,.02));box-shadow:0 0 18px -6px rgba(117,184,234,.6),inset 0 0 0 1px rgba(170,213,246,.08);
  transform:translate(-50%,-50%);opacity:0;transition:transform var(--d-scene) var(--ease),opacity var(--d-ui) var(--ease)}
.slide.active .lam{opacity:1}
.slide.active .lam.l1{transform:translate(-50%,-50%) translate(calc(var(--u)*-2.2),calc(var(--u)*-1.6)) scale(1.02);transition-delay:calc(var(--stagger)*1)}
.slide.active .lam.l2{transform:translate(-50%,-50%) translate(calc(var(--u)*-4.4),calc(var(--u)*-3.2)) scale(1.04);transition-delay:calc(var(--stagger)*2);opacity:.7}
.slide.active .lam.l3{transform:translate(-50%,-50%) translate(calc(var(--u)*-6.6),calc(var(--u)*-4.8)) scale(1.06);transition-delay:calc(var(--stagger)*3);opacity:.45}
.slide.reveal .lam{border-color:rgba(170,213,246,.85);box-shadow:0 0 28px -6px rgba(117,184,234,.9)}
.objframe{position:relative;z-index:1}
/* teléfono con canto iluminado */
.phone{box-shadow:0 0 0 1px rgba(170,213,246,.22),inset 1px 0 0 rgba(170,213,246,.4),0 40px 80px -20px rgba(0,0,0,.9),0 0 90px -30px rgba(117,184,234,.6)}
/* estados: brillo solo en Verificado */
.st-ver{box-shadow:0 0 14px -2px rgba(117,184,234,.8)}
.st-reg{border-color:rgba(243,247,250,.6)}
.st-usr{border-color:rgba(255,214,90,.75);color:var(--atencion)}
/* procedencia: la línea es un filamento de luz */
.pv+.pv::before{width:2px;background:linear-gradient(180deg,rgba(117,184,234,.15),var(--celeste-hi));box-shadow:0 0 8px rgba(117,184,234,.8)}
.pv.ver .dot{box-shadow:0 0 12px rgba(117,184,234,.9)}
.pv.usr .dot{border-color:var(--atencion)}
.tl.new,.tl.ver{box-shadow:0 0 24px -8px rgba(117,184,234,.7)}
/* cierre: vitrina con haz y polvo */
.slide[data-title="Cierre"] .objslot{position:relative}
.slide[data-title="Cierre"] .objslot::before{content:"";position:absolute;left:50%;top:-12%;width:70%;height:120%;transform:translateX(-50%);pointer-events:none;
  background:radial-gradient(40% 60% at 50% 0%,rgba(170,213,246,.22),transparent 70%);clip-path:polygon(42% 0,58% 0,100% 100%,0 100%);filter:blur(10px)}
.slide[data-title="Cierre"] .objslot::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.7;
  background-image:radial-gradient(circle,rgba(243,247,250,.9) 0 1px,transparent 1.6px),radial-gradient(circle,rgba(170,213,246,.7) 0 1px,transparent 1.6px);
  background-size:140px 160px,90px 120px;background-position:20px 30px,60px 10px;animation:polvo 18s linear infinite;mask-image:radial-gradient(50% 60% at 50% 40%,#000 30%,transparent 100%)}
@keyframes polvo{to{background-position:20px -130px,60px -110px}}
.slide[data-title="Cierre"] .objframe{box-shadow:inset 0 0 0 calc(var(--u)*.6) #020508,inset 0 0 0 calc(var(--u)*.7) rgba(117,184,234,.3),0 40px 90px -30px rgba(0,0,0,.9),0 0 80px -20px rgba(117,184,234,.35)}
/* mail: dorado solo para atención */
.contact #mail{border:1px solid rgba(255,214,90,.7);padding:.3em .7em;border-radius:6px;color:#FFF6C2;background:rgba(255,214,90,.06);box-shadow:0 0 18px -6px rgba(255,214,90,.6)}
.slide.active .contact #mail{animation:mailpulse 1.6s var(--ease) 2.2s 1}
@keyframes mailpulse{0%,100%{box-shadow:0 0 18px -6px rgba(255,214,90,.6)}50%{box-shadow:0 0 34px -4px rgba(255,214,90,1)}}
/* tap: ondas desde la etiqueta */
.tapstage .ring{box-shadow:0 0 12px rgba(117,184,234,.7)}
/* tarjeta: canto celeste y brillo especular */
.titlecard{box-shadow:0 30px 60px -20px rgba(0,0,0,.9),0 0 50px -14px rgba(117,184,234,.6),inset 0 1px 0 rgba(243,247,250,.08),inset 1px 0 0 rgba(170,213,246,.35)}
.titlecard::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(115deg,transparent 30%,rgba(243,247,250,.08) 45%,transparent 60%);background-size:250% 100%;animation:specular 7s var(--ease) infinite}
@keyframes specular{0%{background-position:120% 0}60%,100%{background-position:-60% 0}}
/* origen cálido en el sorteo */
.jn.origin{box-shadow:0 0 24px -12px rgba(240,183,122,.6)}
@media (prefers-reduced-motion:reduce){.titlecard::after,.slide[data-title="Cierre"] .objslot::after,.contact #mail{animation:none}}
@media (max-width:860px),(max-aspect-ratio:1/1){.hero-obj .haz,.hero-obj .spot{display:none}.pair .objslot{background:url("assets/pieza-jersey.png") center/contain no-repeat;min-height:150px!important;width:100%;margin-bottom:-40px}.lam{width:min(56vw,210px)}.slide[data-title="Cierre"] .objslot::after{display:none}}


/* barrido de luz al entrar en cada slide (turno 3) */
.slide::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:2;opacity:0;
  background:linear-gradient(105deg,transparent 42%,rgba(170,213,246,.10) 50%,transparent 58%) no-repeat;background-size:300% 100%;background-position:150% 0}
.slide.active::after{animation:barrido var(--d-scene) var(--ease) .1s 1}
@keyframes barrido{0%{opacity:0;background-position:150% 0}15%{opacity:1}100%{opacity:0;background-position:-100% 0}}
.slide.cover::after{display:none}
@media (prefers-reduced-motion:reduce){.slide.active::after{animation:none}}


/* WhatsApp */
.wabtn{display:inline-flex;align-items:center;gap:.5em;padding:.45em .9em .45em .7em;border-radius:999px;border:1px solid rgba(37,211,102,.55);background:rgba(37,211,102,.08);color:#DFF7E8;font-size:var(--t-micro);letter-spacing:.1em;text-transform:uppercase;text-decoration:none;transition:background var(--d-micro),box-shadow var(--d-micro)}
.wabtn svg{width:1.4em;height:1.4em;color:#25D366}
.wabtn b{font-family:var(--f-mono);font-weight:500;letter-spacing:0;text-transform:none;color:#9BE7B8}
.wabtn:hover{background:rgba(37,211,102,.18);box-shadow:0 0 18px -6px rgba(37,211,102,.7)}
.contact{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
@media (max-width:860px),(max-aspect-ratio:1/1){.wabtn{width:100%;justify-content:center;padding:.8em}.wabtn b{display:none}.assets{grid-template-columns:repeat(2,minmax(0,1fr))!important}.asset{font-size:14px!important;overflow-wrap:normal}}


/* switch en el pie */
.navbtns{flex-wrap:nowrap;flex:none}
.navbtns .notesbtn,.navbtns .modesw button{white-space:nowrap}
.navbtns .modesw{margin-left:10px}
.navbtns .modesw button{padding:.55em .8em;font-size:10px}
.bottombar>.foot,.bottombar>p,.bottombar>div:first-child{min-width:0}
.navbtns .modesw button b{display:none}
@media (max-width:860px),(max-aspect-ratio:1/1){
  .navbtns{flex-wrap:nowrap;gap:4px;width:100%;justify-content:space-between}
  .bottombar{padding-left:10px;padding-right:10px}
  .navbtns .notesbtn{letter-spacing:.06em}
  .navbtns .counter{letter-spacing:0;font-size:10.5px}
  .navbtns .modesw button{padding:.6em .45em;letter-spacing:.04em}
  .navbtns .modesw button::before{content:""}
  .navbtns .kb{display:none}
  .navbtns .notesbtn{padding:.7em .6em;font-size:10px}
  .navbtns .counter{font-size:11px;margin-left:0}
  .navbtns .modesw{margin-left:0;padding:2px;gap:0}
  .navbtns .modesw button.on{display:none}
  .navbtns .modesw button{font-size:9.5px;padding:.6em .6em;letter-spacing:.06em;color:var(--celeste-hi);border:1px solid rgba(117,184,234,.4)}
  .navbtns .modesw .long{display:none}.navbtns .modesw .short{display:inline}
  .navbtns .navbtn,.navbtns .notesbtn,.navbtns .modesw{flex:none}
  .navbtns .navbtn{width:36px;height:36px}
}


/* motion turno 4: ondas NFC dentro del teléfono */
.nfcwaves{position:relative;width:26cqw;height:26cqw;margin:2cqw auto;display:grid;place-items:center}
.nfcwaves i{position:absolute;inset:0;border-radius:50%;border:2px solid var(--celeste);opacity:0;transform:scale(.3)}
.nfcwaves .ic{width:9cqw;height:9cqw;color:var(--celeste);position:relative;z-index:2;filter:drop-shadow(0 0 8px rgba(117,184,234,.8))}
.nfcwaves .chk{position:absolute;width:9cqw;height:9cqw;color:var(--noche);background:var(--celeste);border-radius:50%;padding:1.5cqw;opacity:0;transform:scale(.4);z-index:3}
.tapstage.tapped .nfcwaves i{animation:nfcw 1.1s var(--ease) infinite}
.tapstage.tapped .nfcwaves i:nth-child(2){animation-delay:.35s}.tapstage.tapped .nfcwaves i:nth-child(3){animation-delay:.7s}
@keyframes nfcw{0%{opacity:.9;transform:scale(.3)}100%{opacity:0;transform:scale(1.15)}}
.tapstage.tapped .nfcwaves .chk{animation:chkin .5s var(--ease) 1.9s forwards}
.tapstage.tapped .nfcwaves .ic{animation:icout .3s var(--ease) 1.9s forwards}
@keyframes chkin{to{opacity:1;transform:scale(1)}}
@keyframes icout{to{opacity:0;transform:scale(.6)}}
@media (prefers-reduced-motion:reduce){.slide.cover.active .coverbg,.slide.cover.active .coverbg::before,.hero-obj.spin .ph,.hero-obj.spin>svg,.tapstage.tapped .nfcwaves i{animation:none}}

/* closing */
.three{display:flex;flex-direction:column;gap:calc(var(--u)*.6)}
.three span{font-family:var(--f-display);font-weight:800;text-transform:uppercase;font-size:calc(var(--u)*2.7);line-height:1}
.three span b{color:var(--celeste);font-weight:800}
.triad{display:flex;flex-direction:column;gap:2px;font-size:var(--t-lead);color:#D5E3F0}

/* quote */
.quote-big{font-family:var(--f-display);font-weight:600;text-transform:none;font-size:calc(var(--u)*4.4);line-height:1.05;letter-spacing:0;max-width:26ch;text-wrap:balance}

@media (max-width:860px),(max-aspect-ratio:1/1){
  .actbar{right:auto;left:16px;top:52px}
  .slide[data-act]{padding-top:calc(env(safe-area-inset-top,0px) + 110px)}
  .tag{white-space:normal;text-align:left}
  .actbar{max-width:calc(100vw - 32px)}
  .phone-col{order:2}
  .hero-obj{width:64px;filter:drop-shadow(0 8px 12px rgba(0,0,0,.6))}
  .objslot{min-height:0}
  .objframe{width:min(70vw,260px)}
  .objframe::before{content:'';position:absolute;inset:12%;background:url("assets/pieza-jersey.png") center/contain no-repeat;filter:drop-shadow(0 10px 14px rgba(0,0,0,.6))}
  .journey{grid-template-columns:1fr!important}
  .jarrow{transform:rotate(90deg);font-size:28px}
  .jn h4{font-size:22px}.jn{min-height:0}
  .layer{font-size:20px}.layers .plus{font-size:18px}
  .gate{grid-template-columns:1fr;padding:12px}
  .gatepic{width:100%;aspect-ratio:16/10;border-radius:10px}
  .assets{grid-template-columns:1fr 1fr}.mon{grid-template-columns:1fr}
  .asset{font-size:18px}
  .mega{font-size:clamp(40px,11vw,64px)}
  .stack-items span{font-size:26px}
  .scale span,.scale i{font-size:24px!important}
  .collab{grid-template-columns:1fr}
  .cplus{font-size:28px}
  .cc h4{font-size:24px}.cc ul{font-size:14px}
  .three span{font-size:26px}
  .quote-big{font-size:28px}
  .lot h3{font-size:24px}
  .pv h4{font-size:18px}
  .pv{grid-template-columns:auto 1fr}
  .pv .sts{grid-column:2;justify-content:flex-start}
  .recv span{font-size:18px}
  .mcol h4{font-size:20px}
  .smchain{font-size:15px}
  .result b,.result .arr{font-size:24px}
  .year10{position:relative;inset:auto;display:none}
  .year10 h2{font-size:22px!important}
  .year10 .lead{font-size:15px!important;line-height:1.4}
  .slide.reveal .year10{display:block}
  .slide.reveal .day1{display:none}
  .ficha{grid-template-columns:1fr;gap:2px 0}
  .ficha dd{margin-bottom:8px}
}

