/* Olympos Games · sponsor pitch deck (sponsor.html). One fullscreen slide at a time: text on one side, an animated visual on the other. */
:root{
  --bg:#081215; --bg-2:#0c1a1f; --panel:#0f2127; --panel-2:#132a31;
  --ink:#f4f7f8; --ink-2:rgba(244,247,248,.72); --ink-3:rgba(244,247,248,.46); --ink-4:rgba(244,247,248,.22);
  --line:rgba(244,247,248,.10); --line-2:rgba(244,247,248,.22);
  --volt:#d8ff3e; --volt-ink:#0b1a12;
  --disp:"Eurostile Extd","Archivo",system-ui,sans-serif; --body:"Archivo",system-ui,sans-serif; --mono:"JetBrains Mono",ui-monospace,monospace;
  --hud:68px; --padx:clamp(24px,5.4vw,96px);
  --cut:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,14px 100%,0 calc(100% - 14px));
}
*{box-sizing:border-box;margin:0;padding:0;border-radius:0}
html,body{height:100%;background:var(--bg);color:var(--ink);overflow:hidden}
body{font-family:var(--body);-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;overscroll-behavior:none}
body:after{content:"";position:fixed;inset:0;pointer-events:none;z-index:100;opacity:.07;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
a{color:inherit}
.mono{font-family:var(--mono);font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-3)}
.v{color:var(--volt)}

/* ---------- deck + slides ---------- */
.deck{position:fixed;inset:0 0 var(--hud) 0}
.slide{position:absolute;inset:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);visibility:hidden}
.slide.on{visibility:visible}
.slide.rev .txt{order:2}
.txt{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(28px,6vh,72px) var(--padx);overflow-y:auto;scrollbar-width:none;min-height:0}
.txt::-webkit-scrollbar{display:none}
.vis{position:relative;overflow:hidden;background:radial-gradient(70% 60% at 50% 48%,#12313a 0,var(--bg) 78%);display:grid;place-items:center;min-height:0;border-left:1px solid var(--line)}
.slide.rev .vis{border-left:0;border-right:1px solid var(--line)}
.vlabel{position:absolute;left:0;right:0;bottom:clamp(18px,4vh,40px);text-align:center}

/* typography */
.kick{font-family:var(--mono);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--volt)}
h1,h2{font-family:var(--disp);font-style:italic;font-weight:900;font-stretch:125%;text-transform:uppercase;letter-spacing:-.02em;line-height:.92;margin-top:clamp(14px,2.6vh,24px)}
h1{font-size:clamp(40px,min(6vw,10.5vh),112px)}
h2{font-size:clamp(28px,min(3.5vw,6.8vh),70px)}
/* each line is a rise mask with room for Turkish accents above (İ Ü Ö) and cedillas below (Ç Ş); the margins cancel the padding exactly */
.ln{display:block;overflow:hidden;padding:.36em .08em .24em;margin:-.36em -.08em 0}
.ln + .ln{margin-top:-.6em}
.ln:last-child{margin-bottom:-.24em}
.ln > span{display:inline-block}
.lead{font-size:clamp(15px,min(1.25vw,2.3vh),20px);color:var(--ink-2);margin-top:clamp(16px,3vh,28px);max-width:44ch;line-height:1.5}
.lead.small{font-size:clamp(14px,min(1.05vw,2vh),17px)}
.tags{margin-top:clamp(14px,2.6vh,24px)} .tags b{color:var(--volt);font-weight:500;margin:0 5px}
.hint{margin-top:clamp(28px,6vh,64px)} .hint b{color:var(--volt);font-weight:500}
.items{display:grid;gap:0;margin-top:clamp(18px,3.4vh,34px);width:100%;max-width:560px;border-top:1px solid var(--line-2)}
.items > div{display:grid;gap:4px;padding:clamp(10px,1.7vh,16px) 0;border-bottom:1px solid var(--line)}
.items b,.cats b,.cols b,.days b,.phases b,.steps b{font-family:var(--disp);font-style:italic;font-weight:900;font-stretch:125%;text-transform:uppercase;font-size:clamp(14px,min(1.15vw,2.1vh),18px);line-height:1.15}
.items span,.cats span,.cols span,.days span,.phases span,.steps span{font-size:clamp(13px,min(.98vw,1.8vh),15.5px);color:var(--ink-2);line-height:1.45}
.items.two{grid-template-columns:1fr 1fr;column-gap:24px}
.cats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:clamp(18px,3.4vh,34px);width:100%;max-width:560px}
.cats > div{border:1px solid var(--line-2);background:var(--bg-2);padding:clamp(12px,2vh,20px);display:grid;gap:6px;align-content:start}
.cats > div:first-child b{color:var(--volt)}
.cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:clamp(18px,3.4vh,34px);width:100%;max-width:620px;border-top:1px solid var(--line-2);padding-top:clamp(12px,2vh,18px)}
.cols > div{display:grid;gap:8px;align-content:start}
.days{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:clamp(18px,3.4vh,34px);width:100%;max-width:600px}
.days > div{border:1px solid var(--line-2);background:var(--bg-2);padding:clamp(12px,2vh,20px);display:grid;gap:10px;align-content:start}
.days > div:first-child b{color:var(--volt)}
.phases{display:grid;margin-top:clamp(16px,3vh,30px);width:100%;max-width:580px;border-top:1px solid var(--line-2)}
.phases > div{display:grid;grid-template-columns:120px 1fr;grid-template-rows:auto auto;column-gap:16px;row-gap:2px;padding:clamp(9px,1.5vh,14px) 0;border-bottom:1px solid var(--line)}
.phases b{grid-row:1} .phases i{grid-row:2;font-style:normal;color:var(--volt);font-size:10.5px;letter-spacing:.14em}
.phases span{grid-column:2;grid-row:1 / 3;align-self:center}
.steps{list-style:none;display:grid;margin-top:clamp(18px,3.4vh,32px);width:100%;max-width:540px;border-top:1px solid var(--line-2)}
.steps li{display:grid;gap:3px;padding:clamp(9px,1.5vh,14px) 0 clamp(9px,1.5vh,14px) 18px;border-bottom:1px solid var(--line);position:relative;transition:color .3s}
.steps li:before{content:"";position:absolute;left:0;top:50%;width:8px;height:8px;margin-top:-4px;border:1.5px solid var(--ink-3);transition:background .3s,border-color .3s}
.steps li b{color:var(--ink-3);transition:color .3s}
.steps li.cur b{color:var(--ink)} .steps li.cur:before{background:var(--volt);border-color:var(--volt)}
.flow{list-style:none;display:grid;margin-top:clamp(18px,3.4vh,32px);width:100%;max-width:520px;border-top:1px solid var(--line-2)}
.flow li{display:flex;gap:16px;align-items:center;padding:clamp(10px,1.7vh,15px) 0;border-bottom:1px solid var(--line);font-family:var(--disp);font-style:italic;font-weight:900;font-stretch:125%;text-transform:uppercase;font-size:clamp(14px,min(1.15vw,2.1vh),18px)}
.flow li b{font-family:var(--mono);font-style:normal;font-weight:500;font-size:11px;color:var(--volt);width:22px}
.note{margin-top:14px;text-transform:none;letter-spacing:.06em;max-width:52ch;line-height:1.5}
.cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:clamp(20px,4vh,40px)}
.btn{display:inline-flex;align-items:center;gap:12px;height:48px;padding:0 24px;background:var(--volt);color:var(--volt-ink);font-family:var(--disp);font-style:italic;font-weight:900;font-stretch:125%;font-size:14px;text-transform:uppercase;text-decoration:none;clip-path:var(--cut)}
.btn.ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line-2);clip-path:none}
.end-flame{width:38px;height:auto;margin-bottom:18px}
.org{display:grid;gap:4px;margin-top:clamp(18px,3.4vh,32px);padding-top:clamp(14px,2.4vh,22px);border-top:1px solid var(--line-2);width:100%;max-width:520px}
.org b{font-family:var(--disp);font-style:italic;font-weight:900;font-stretch:125%;text-transform:uppercase;font-size:clamp(20px,min(1.9vw,3.4vh),30px);line-height:1.05}
.org .mono.w{color:var(--ink-2)}
.org .mono:first-child{color:var(--volt)}

/* ---------- visuals ---------- */
.vis.photo .bg{position:absolute;inset:0;background-size:cover;background-position:center}
.vis.photo .veil{position:absolute;inset:0;background:radial-gradient(60% 50% at 50% 50%,rgba(8,18,21,.55) 0,rgba(8,18,21,.82) 100%)}
.cv-logo{position:relative;width:min(62%,420px);height:auto;overflow:visible}

/* 02 · who we are */
.chain{margin-top:clamp(16px,3vh,28px)} .chain b{color:var(--volt);font-weight:500;margin:0 6px}
.who{width:min(86%,620px);display:grid;gap:clamp(40px,8vh,90px)}
.who-stats{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,.8fr) minmax(0,1.3fr);border-top:1px solid var(--line-2)}
.who-stats > div{display:grid;gap:8px;padding:18px 12px 0 0}
.who-stats > div + div{padding-left:16px;border-left:1px solid var(--line)}
.who-stats b{font-family:var(--disp);font-style:italic;font-weight:900;font-stretch:125%;font-size:clamp(30px,min(3.4vw,6.6vh),64px);line-height:.85;font-variant-numeric:tabular-nums}
.who-stats > div:first-child b{color:var(--volt)}
.who-stats .mono{font-size:10.5px;letter-spacing:.14em}
.wl{position:relative;height:120px;margin:0 6px}
.wl-track{position:absolute;left:0;right:0;top:50%;height:3px;margin-top:-1.5px;background:var(--ink-4)}
.wl-fill{position:absolute;left:0;top:0;bottom:0;width:0;background:var(--ink)}
.wl-span{position:absolute;top:-5px;height:13px;background:rgba(244,247,248,.18);border:1px solid var(--ink-3)}
.wl-dot{position:absolute;top:50%;width:14px;height:14px;margin:-7px 0 0 -7px;background:var(--bg);border:2px solid var(--ink)}
.wl-dot.v{background:var(--volt);border-color:var(--volt);width:18px;height:18px;margin:-9px 0 0 -9px}
.wl-ms{position:absolute;display:grid;gap:3px;transform:translateX(-50%);white-space:nowrap;text-align:center;justify-items:center}
.wl-ms.up{bottom:calc(50% + 18px)} .wl-ms.dn{top:calc(50% + 18px)}
.wl-ms:first-of-type{transform:none;text-align:left;justify-items:start}
.wl-ms.last,.wl-ms.end{transform:translateX(-100%);text-align:right;justify-items:end}
.wl-ms.end{transform:translateX(-50%)}
.wl-ms b{font-family:var(--disp);font-style:italic;font-weight:900;font-stretch:125%;font-size:clamp(14px,min(1.4vw,2.6vh),22px)}
.wl-ms .mono{font-size:10px;letter-spacing:.14em}
.wl-ms.v b{color:var(--volt)}
/* 03 · purpose */
.ga{width:min(82%,68vh);height:auto;overflow:visible}
#gaLab{transition:color .3s} #gaLab.v{color:var(--volt)}

/* 02 · salon salona */
.facts{display:grid;margin-top:clamp(18px,3.4vh,34px);width:100%;max-width:560px;border-top:1px solid var(--line-2)}
.facts > div{display:grid;grid-template-columns:110px 1fr;gap:16px;align-items:baseline;padding:clamp(11px,1.9vh,17px) 0;border-bottom:1px solid var(--line)}
.facts i{font-style:normal;color:var(--volt);font-size:10.5px}
.facts b{font-family:var(--disp);font-style:italic;font-weight:900;font-stretch:125%;text-transform:uppercase;font-size:clamp(14px,min(1.2vw,2.2vh),19px);line-height:1.15}
.vs .bg{transform-origin:50% 45%}
.vs .veil{background:linear-gradient(180deg,rgba(8,18,21,.35) 0,rgba(8,18,21,.15) 40%,rgba(8,18,21,.6) 72%,rgba(8,18,21,.92) 100%)}
.vs-line{position:absolute;left:50%;top:8%;bottom:30%;width:3px;margin-left:-1.5px;background:var(--volt);transform-origin:50% 0}
.vs-teams{position:absolute;left:0;right:0;bottom:clamp(36px,9vh,90px);display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,5vw,80px)}
.vs-teams > div{display:grid;gap:12px}
.vs-a{justify-items:end} .vs-b{justify-items:start}
.vs-teams > div > div{display:flex;gap:clamp(6px,.7vw,10px)}
.vs-teams i{display:block;width:clamp(16px,1.7vw,26px);aspect-ratio:1;background:var(--ink)}
.vs-b i{background:transparent;box-shadow:inset 0 0 0 2px var(--ink)}
.vs-teams .mono{color:var(--ink);font-size:11px}
/* 02 · montage window (unused) */
.big6{position:absolute;font-family:var(--disp);font-style:italic;font-weight:900;font-stretch:125%;font-size:min(62vh,46vw);line-height:.8;color:transparent;-webkit-text-stroke:2px rgba(244,247,248,.12);user-select:none}
.mwin{position:relative;width:min(56%,46vh);aspect-ratio:4/5;overflow:hidden;background:var(--bg-2)}
.mwin > i{position:absolute;inset:0;background-size:cover;background-position:center}

/* 03 · progress */
.yr{width:min(82%,620px)}
.yr-nums,.yr-labels{position:relative;height:clamp(54px,9vh,96px)}
.yr-labels{height:42px;margin-top:22px}
.yr-nums span,.yr-labels span{position:absolute;transform:translateX(-50%);white-space:nowrap}
.yr-nums span{bottom:12px;font-family:var(--disp);font-style:italic;font-weight:900;font-stretch:125%;font-size:clamp(34px,min(4vw,7vh),72px);line-height:.85;color:transparent;-webkit-text-stroke:1.5px var(--ink-3);transition:color .4s,-webkit-text-stroke-color .4s}
.yr-nums span.cur{color:var(--ink);-webkit-text-stroke-color:var(--ink)}
.yr-labels span{font-family:var(--disp);font-style:italic;font-weight:900;font-stretch:125%;text-transform:uppercase;font-size:clamp(12px,min(1.1vw,2vh),17px);color:var(--ink-3);transition:color .4s}
.yr-labels span.cur{color:var(--volt)}
.yr-nums span:first-child,.yr-labels span:first-child{transform:none}
.yr-nums span:last-child,.yr-labels span:last-child{transform:translateX(-100%)}
.yr-track{position:relative;height:3px;background:var(--ink-4)}
.yr-track i{position:absolute;left:0;top:0;bottom:0;width:0;background:var(--ink)}
.yr-track b{position:absolute;top:50%;width:18px;height:18px;margin:-9px 0 0 -9px;background:var(--volt);z-index:2}
.yr-track .tk{position:absolute;top:-12px;width:2px;height:27px;margin-left:-1px;background:var(--ink-2);transform-origin:50% 100%}
.yr-track .tk:first-of-type{margin-left:0} .yr-track .tk:last-of-type{margin-left:-2px}

/* 04 · team slots */
.tm{width:min(86%,640px)}
.tm-slots{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(8px,1vw,14px)}
.tm-slot{position:relative;aspect-ratio:134/172;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(8px,1vw,14px)}
.tm-slot .bd{position:absolute;inset:0;border:2px solid rgba(244,247,248,.8)}
.tm-slot .fk{position:absolute;inset:0;background:var(--ink);transform-origin:50% 100%}
.tm-slot small{position:relative;font-family:var(--mono);font-size:clamp(8px,.7vw,11px);letter-spacing:.12em;color:var(--ink-2)}
.tm-slot b{position:relative;font-family:var(--disp);font-style:italic;font-weight:900;font-stretch:125%;font-size:clamp(26px,3.6vw,60px);line-height:1}
.tm-slot.k small,.tm-slot.k b{color:#0c191c}
.tm-slot.cap .bd{border-color:var(--volt)} .tm-slot.cap .fk{background:var(--volt)}
.tm-slot.cap small,.tm-slot.cap b{color:var(--volt-ink)}
.tm-slot .lead-tag{position:absolute;left:0;right:0;top:-30px;text-align:center;font-style:normal;font-family:var(--mono);font-size:11px;letter-spacing:.2em;color:var(--volt)}
.tm-eq{display:flex;justify-content:center;align-items:baseline;gap:14px;margin-top:clamp(28px,6vh,56px);font-family:var(--disp);font-style:italic;font-weight:900;font-stretch:125%;text-transform:uppercase;font-size:clamp(16px,1.8vw,28px);flex-wrap:wrap}
.tm-eq b{color:var(--ink-3)}

/* 05 · capacities */
.caps{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:8px;width:min(84%,66vh)}
.caps figure{position:relative;aspect-ratio:4/5;background-size:cover;background-position:center;overflow:hidden}
.caps figcaption{position:absolute;left:0;right:0;bottom:0;padding:clamp(10px,1.6vh,16px);background:linear-gradient(transparent,rgba(6,14,17,.9));display:grid;gap:3px}
.caps figcaption b{font-family:var(--disp);font-style:italic;font-weight:900;font-stretch:125%;text-transform:uppercase;font-size:clamp(12px,min(1.05vw,2vh),17px)}
.caps figcaption span{font-size:clamp(11px,min(.85vw,1.6vh),13.5px);color:var(--ink-2)}
.caps-hl{position:absolute;border:3px solid var(--volt);pointer-events:none;z-index:2}

/* 06 · sync */
.sy{width:min(80%,560px);display:grid;justify-items:center}
.sy-lab{position:relative;height:16px;width:100%;text-align:center;margin-bottom:clamp(40px,9vh,90px)}
.sy-lab span{position:absolute;left:0;right:0;font-size:13px}
.sy-row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(10px,1.4vw,22px);width:100%}
.sy-row i{display:block;aspect-ratio:1;background:var(--ink)}
.sy-row i:first-child{background:var(--volt)}
.sy-base{width:100%;height:2px;background:var(--ink-4);margin-top:18px}

/* 07 · leaderboard */
.lb{width:min(86%,600px)}
.lb-cap{margin-bottom:16px}
.lb-head,.lb .row{display:grid;grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(0,.7fr)) minmax(0,1fr);align-items:center;gap:8px}
.lb-head{padding:0 16px 10px;font-size:10.5px}
.lb-head span:last-child,.lb .row .t{text-align:right}
.lb-body{position:relative}
.lb .row{position:absolute;left:0;right:0;top:0;height:clamp(46px,7.4vh,64px);padding:0 16px;border:1px solid var(--line-2);background:var(--bg-2);transition:background .4s,border-color .4s,color .4s}
.lb .row b{font-family:var(--disp);font-style:italic;font-weight:900;font-stretch:125%;text-transform:uppercase;font-size:clamp(13px,min(1.1vw,2vh),17px)}
.lb .row .w{font-family:var(--mono);font-size:13px;color:var(--ink-2)}
.lb .row .t{font-family:var(--disp);font-style:italic;font-weight:900;font-stretch:125%;font-size:clamp(18px,min(1.6vw,3vh),26px)}
.lb .row.win{background:var(--volt);border-color:var(--volt);color:var(--volt-ink)}
.lb .row.win .w{color:rgba(11,26,18,.7)}
.lb .row.win b:after{content:"  ★ Şampiyon";font-size:.7em}

/* 08 · map */
.vis.map{background:radial-gradient(70% 60% at 45% 40%,#12313a 0,var(--bg) 78%)}
.mp{width:100%;height:100%}

/* 09 · network */
.nt{width:min(84%,66vh);height:auto;overflow:visible}
.nt text{font-family:var(--mono);font-size:13px;letter-spacing:.16em;fill:var(--ink-2);text-transform:uppercase}

/* 10 · equation */
.eq{width:min(80%,520px);display:grid;justify-items:center}
.eq-top{font-family:var(--disp);font-style:italic;font-weight:900;font-stretch:125%;text-transform:uppercase;font-size:clamp(40px,min(5.4vw,10vh),96px);line-height:.9;color:transparent;-webkit-text-stroke:2px var(--ink)}
.eq-arrow{height:clamp(40px,8vh,80px);display:grid;place-items:center;margin:14px 0}
.eq-arrow i{display:block;width:3px;height:100%;background:var(--volt);position:relative}
.eq-arrow i:after{content:"";position:absolute;left:50%;bottom:-2px;width:14px;height:14px;border-right:3px solid var(--volt);border-bottom:3px solid var(--volt);transform:translateX(-50%) rotate(45deg)}
.eq-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}
.eq-grid > div{border:1px solid var(--line-2);background:var(--bg-2);padding:clamp(14px,2.4vh,24px);display:grid;gap:8px;transition:background .35s,border-color .35s}
.eq-grid i{width:12px;height:12px;background:var(--volt)}
.eq-grid b{font-family:var(--disp);font-style:italic;font-weight:900;font-stretch:125%;text-transform:uppercase;font-size:clamp(15px,min(1.4vw,2.6vh),22px)}
.eq-grid .mono{font-size:10.5px;letter-spacing:.14em}
.eq-grid > div.on{background:var(--panel-2);border-color:var(--volt)}

/* 11 · phone */
.vis.film{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(14px,2.4vh,22px);padding:clamp(20px,4vh,48px) 0}
.phone{position:relative;flex:none;height:min(calc(100vh - var(--hud) - 150px),720px);aspect-ratio:9/16;border:1px solid var(--line-2);background:#000;box-shadow:0 50px 100px -30px rgba(0,0,0,.85),0 0 0 8px rgba(244,247,248,.04)}
.film-cap{letter-spacing:.18em}
.igf{flex:none;width:min(400px,80%);height:min(calc(100vh - var(--hud) - 150px),760px);overflow:hidden;background:#fff;border:1px solid var(--line-2);box-shadow:0 50px 100px -30px rgba(0,0,0,.85),0 0 0 8px rgba(244,247,248,.04)}
.igf iframe{display:block;width:100%;height:100%;border:0}
.phone video{width:100%;height:100%;object-fit:cover;display:block}

/* 12 · road */
.rd{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto 1fr;column-gap:clamp(30px,4vw,64px);width:min(84%,600px);height:min(80%,620px)}
.rd-cap{grid-column:1 / 3}
.rd-num{grid-column:1;grid-row:2;align-self:center;display:grid}
.rd-num b{font-family:var(--disp);font-style:italic;font-weight:900;font-stretch:125%;font-size:clamp(80px,min(11vw,22vh),220px);line-height:.82;color:var(--ink)}
.rd-num span{font-family:var(--disp);font-style:italic;font-weight:900;font-stretch:125%;text-transform:uppercase;font-size:clamp(22px,2.6vw,44px);color:var(--volt)}
.rd-line{grid-column:2;grid-row:2;position:relative;margin:26px 0 10px 8px;border-left:3px solid var(--ink-4)}
.rd-line > i{position:absolute;left:-3px;top:0;width:3px;height:0;background:var(--ink)}
.rd-line > i:after{content:"";position:absolute;left:-6px;bottom:-7px;width:15px;height:15px;background:var(--volt)}
.rd-ms{position:absolute;left:22px;transform:translateY(-50%);display:grid;gap:3px;white-space:nowrap}
.rd-ms:before{content:"";position:absolute;left:-30px;top:50%;width:14px;height:2px;background:var(--ink-2)}
.rd-ms b{font-family:var(--disp);font-style:italic;font-weight:900;font-stretch:125%;text-transform:uppercase;font-size:clamp(14px,min(1.4vw,2.6vh),22px)}
.rd-ms.v b{color:var(--volt)}

/* 13 · sponsor wall */
.wall{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:min(82%,560px)}
.wall > div{aspect-ratio:5/3;padding:clamp(14px,2.4vh,22px);display:grid;align-content:space-between}
.w-main{border:1px solid var(--ink-3);background:var(--bg-2)}
.w-main img{width:min(80%,220px);height:auto}
.w-open{border:1.5px dashed var(--line-2);transition:border-color .4s}
.w-open b{font-family:var(--disp);font-style:italic;font-weight:900;font-stretch:125%;text-transform:uppercase;font-size:clamp(18px,1.8vw,28px);color:var(--ink-3);transition:color .4s}
.w-open.on{border-color:var(--volt)} .w-open.on b{color:var(--volt)}

/* ---------- wipe ---------- */
#wipe{position:fixed;top:-20%;bottom:-20%;left:0;width:34vw;background:var(--volt);transform:skewX(-14deg);z-index:60;visibility:hidden;pointer-events:none}

/* ---------- hud ---------- */
.hud{position:fixed;left:0;right:0;bottom:0;height:var(--hud);z-index:70;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(16px,3vw,48px);padding:0 var(--padx);background:rgba(8,18,21,.9);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--line)}
.hb{display:flex;align-items:center;gap:12px;text-decoration:none}
.hb .lockup{height:24px;width:auto;display:block}
.hb b{font-family:var(--disp);font-style:italic;font-weight:900;font-stretch:125%;font-size:13px;text-transform:uppercase;white-space:nowrap}
.hb .mono{white-space:nowrap}
.hp-lab{display:flex;justify-content:space-between;gap:12px;margin-bottom:10px}
.hp-lab #hCount{color:var(--ink);flex:none;white-space:nowrap}
.hp-lab #hName{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hp-track{position:relative;height:2px;background:var(--ink-4)}
.hp-track i{position:absolute;left:0;top:0;bottom:0;width:0;background:var(--ink);transition:width .7s cubic-bezier(.2,.7,.2,1)}
.hp-track i:after{content:"";position:absolute;right:-5px;top:-4px;width:10px;height:10px;background:var(--volt)}
.hn{display:flex;gap:6px}
.hn button{appearance:none;width:44px;height:44px;border:1px solid var(--line-2);background:transparent;color:var(--ink);font-size:18px;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.hn button:hover:not(:disabled){background:var(--volt);color:var(--volt-ink);border-color:var(--volt)}
.hn button:disabled{opacity:.25;cursor:default}

/* ---------- portrait / phones: visual on top, text below ---------- */
@media (max-aspect-ratio:1/1),(max-width:820px){
  :root{--hud:60px;--padx:20px}
  .slide{grid-template-columns:1fr;grid-template-rows:minmax(0,42%) minmax(0,58%)}
  .slide .txt,.slide.rev .txt{order:2;justify-content:flex-start;padding:22px var(--padx) 26px}
  .vis,.slide.rev .vis{border:0;border-bottom:1px solid var(--line)}
  .lead{max-width:none}
  .items.two,.cols{grid-template-columns:1fr 1fr}
  .cols{grid-template-columns:1fr}
  .hb .mono{display:none} .hb .lockup{height:20px}
  .hn button{width:40px;height:40px}
  .hn #fs{display:none}
  .mwin{width:auto;height:84%}
  .caps{width:auto;height:92%;aspect-ratio:4/5}
  .nt{width:auto;height:90%}
  .vis.film{padding:12px 0;gap:8px} .igf{width:min(260px,70%);height:calc(40svh - 60px)} .phone{height:calc(40svh - 70px)} .film-cap{font-size:9.5px}
  .rd{height:88%}
  .cv-logo{width:56%}
  .slide{grid-template-rows:minmax(0,40%) minmax(0,60%)}
  .eq{width:86%} .eq-top{font-size:clamp(28px,9vw,46px)} .eq-arrow{height:26px;margin:6px 0} .eq-grid > div{padding:10px 12px;gap:4px} .eq-grid .mono{display:none} .eq-grid b{font-size:14px}
  .lb{width:92%} .lb-cap{display:none} .lb-head{padding:0 12px 6px} .lb .row{height:36px;padding:0 12px} .lb .row .t{font-size:17px} .lb .row .w{font-size:11px}
  .rd{width:92%;column-gap:22px} .rd-num b{font-size:clamp(56px,17vw,96px)} .rd-num span{font-size:20px} .rd-ms b{font-size:13px} .rd-ms .mono{font-size:9px;letter-spacing:.1em}
  .tm{width:92%} .yr{width:88%}
  .who{width:90%;gap:28px} .who-stats b{font-size:clamp(24px,7.4vw,40px)} .who-stats > div + div{padding-left:10px} .wl{height:96px} .wl-ms b{font-size:12px} .wl-ms .mono{font-size:8.5px} .ga{width:auto;height:76%}
}
@media (max-width:420px){
  .days,.cats{grid-template-columns:1fr}
  .phases > div{grid-template-columns:96px 1fr}
}
@media (prefers-reduced-motion:reduce){ .hp-track i{transition:none} }
