:root{--paper:#f7f9fc;--ink:#002d72;--spirit:#68ace5;--slate:#42536b;--line:#d7e0ec;--live:#ffb700;--grid-line:#002d720e;--font-display:"Clash Display", "Avenir Next", sans-serif;--font-body:"Satoshi", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"Space Mono", ui-monospace, monospace;--gutter:clamp(1.25rem, 5vw, 5rem)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:93.75%}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:1.0625rem;line-height:1.6}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}::selection{background:var(--spirit);color:var(--ink)}.chapter-grid{background-image:linear-gradient(var(--grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line) 1px, transparent 1px);background-size:68px 68px;position:relative}.eyebrow,.chapter-label{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--slate);font-size:.75rem}.chapter-label{border-bottom:1px solid var(--ink);align-items:baseline;gap:.5rem;margin-bottom:clamp(2rem,5vh,3.5rem);padding-bottom:.4rem;display:inline-flex}.chapter-label span{color:var(--ink);font-weight:700}.chapter-label-light,.chapter-label-light span{color:#fff;border-color:#fff}.section-title{font-family:var(--font-display);letter-spacing:-.02em;font-size:clamp(2.25rem,5.15vw,4rem);font-weight:600;line-height:1.05}.btn{line-height:1.2;font-family:var(--font-body);border:1.5px solid var(--ink);border-radius:999px;justify-content:center;align-items:center;padding:.85rem 1.75rem;font-size:1rem;font-weight:700;transition:transform .18s,background .18s,color .18s;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn:focus-visible{outline:3px solid var(--spirit);outline-offset:3px}.btn-primary{background:var(--ink);color:#fff}.btn-primary:hover{background:#013a8f}.btn-ghost{color:var(--ink);background:0 0}.btn-ghost:hover{background:#68ace529}.btn-large{padding:1.1rem 2.5rem;font-size:1.15rem}.badge{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--line);color:var(--slate);background:#fff;border-radius:999px;margin-bottom:1rem;padding:.3rem .75rem;font-size:.7rem;display:inline-block}.badge-live{border-color:var(--live);background:var(--live);color:var(--ink);font-weight:700}.progress-bar{background:var(--spirit);transform-origin:0;z-index:200;width:100%;height:3px;position:fixed;top:0;left:0;transform:scaleX(0)}.site-nav{z-index:100;padding:1rem var(--gutter);justify-content:space-between;align-items:center;transition:background .25s,box-shadow .25s;display:flex;position:fixed;top:0;left:0;right:0}.site-nav.is-scrolled{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 1px 0 var(--line);background:#f7f9fce0}.nav-wordmark{font-family:var(--font-display);letter-spacing:-.01em;font-size:1.35rem;font-weight:700}.nav-links{align-items:center;gap:1.75rem;font-size:.95rem;font-weight:500;display:flex}.nav-links a:not(.nav-cta):hover{color:var(--spirit)}.nav-cta{background:var(--ink);color:#fff;border-radius:999px;padding:.55rem 1.25rem;font-weight:700;transition:background .18s}.nav-cta:hover{background:#013a8f}@media (width<=767px){.nav-links a:not(.nav-cta){display:none}}.hero{min-height:100svh;padding:clamp(5.5rem, 11vh, 7.5rem) var(--gutter) 0;flex-direction:column;justify-content:space-between;display:flex}.hero-inner{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;gap:clamp(2rem,4vw,4.5rem);display:grid}.hero-eyebrow{margin-bottom:1.5rem}.hero-title{font-family:var(--font-display);letter-spacing:-.03em;text-wrap:balance;font-size:clamp(3rem,7vw,6.75rem);font-weight:600;line-height:.98}.hero-title-line{display:block}.hero-title em{color:var(--spirit);font-style:italic;font-weight:500}.hero-period{color:var(--spirit)}.hero-tagline{max-width:34rem;color:var(--slate);margin-top:1.75rem;font-size:clamp(1.05rem,1.5vw,1.25rem)}.hero-actions{flex-wrap:wrap;gap:1rem;margin-top:2.25rem;display:flex}.hero-terminal{font-family:var(--font-mono);cursor:text;background:#001d4a;border:1px solid #68ace559;border-radius:14px;font-size:.82rem;overflow:hidden;transform:rotate(-1.5deg);box-shadow:0 32px 80px #001d4a59}@media (prefers-reduced-motion:no-preference){.hero-title-line,.hero-eyebrow,.hero-tagline,.hero-actions,.hero-terminal{opacity:0}.hero-title-line{transform:translateY(60%)}.hero-eyebrow,.hero-tagline,.hero-actions{transform:translateY(24px)}.hero-terminal{transform:rotate(-1.5deg)translateY(48px)scale(.96)}}.term-bar{border-bottom:1px solid #68ace538;align-items:center;gap:.5rem;padding:.7rem 1rem;display:flex}.term-dot{border:1px solid #68ace58c;border-radius:50%;width:.7rem;height:.7rem}.term-dot:first-child{background:var(--spirit);border-color:var(--spirit)}.term-title{letter-spacing:.1em;color:#68ace5b3;margin-left:auto;margin-right:auto;font-size:.7rem}.term-body{color:#cfe4f7;flex-direction:column;justify-content:flex-end;height:19rem;padding:1rem 1.1rem;display:flex}.term-line{white-space:pre-wrap;word-break:break-word;line-height:1.7}.term-out{color:#cfe4f7bf}.term-prompt{color:var(--spirit);white-space:nowrap;font-weight:700}.term-input-row{align-items:center;gap:.55rem;margin-top:.2rem;display:flex}.term-input-row input{color:#fff;min-width:0;font:inherit;caret-color:var(--spirit);background:0 0;border:none;outline:none;flex:1}@media (width<=1023px){.hero-inner{grid-template-columns:1fr}.hero-terminal{display:none}}.hero-foot{padding-bottom:2rem}.hero-scroll-hint{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--slate);font-size:.7rem}.outcomes{border-top:1px solid var(--line);padding-top:1.25rem}.outcomes-topline{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:1.25rem;display:flex}.outcomes-label{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--slate);font-size:.7rem}.outcomes-marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000);mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000)}.outcomes-track{align-items:center;gap:4rem;width:max-content;animation:28s linear infinite marquee;display:flex}.outcomes-track img{object-fit:contain;filter:grayscale()opacity(.55);width:auto;max-width:16rem;height:3.5rem;transition:filter .2s}.outcomes-track img:hover{filter:none}@keyframes marquee{to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.outcomes-track{flex-wrap:wrap;width:auto;animation:none}}.story{padding:clamp(5rem, 12vh, 8rem) var(--gutter)}.story-pin{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;gap:clamp(2.5rem,6vw,6rem);min-height:60vh;display:grid}.story-line{font-family:var(--font-display);letter-spacing:-.02em;max-width:20ch;margin-bottom:1.25rem;font-size:clamp(1.75rem,4.2vw,3.5rem);font-weight:500;line-height:1.15}.story-line em{color:var(--spirit);font-style:italic}.story-line-final strong{border-bottom:4px solid var(--spirit);font-weight:700}.story-detail{border-left:2px solid var(--spirit);max-width:26rem;color:var(--slate);padding-left:clamp(1.25rem,2vw,1.75rem);font-size:1.1rem}@media (width<=767px){.story-pin{grid-template-columns:1fr;align-items:start;gap:2rem}}.builds{background:var(--ink);color:#fff;flex-direction:column;justify-content:space-between;min-height:100svh;display:flex;overflow:hidden}.builds-head{padding:clamp(3.5rem, 9vh, 5.5rem) var(--gutter) clamp(1.25rem, 3vh, 2rem);--grid-line:#ffffff0d}.builds-head .chapter-label,.builds-head .chapter-label span{color:var(--spirit);border-color:var(--spirit)}.builds-head-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:2rem;display:flex}.builds-title{font-size:clamp(1.9rem,3.2vw,2.9rem)}.builds-stats{gap:2.5rem;display:flex}.stat-value{font-family:var(--font-display);color:var(--spirit);font-size:clamp(1.6rem,2.8vw,2.25rem);font-weight:700;display:block}.stat-label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:#ffffffa6;font-size:.7rem}.builds-track{padding:0 var(--gutter);will-change:transform;gap:clamp(1rem,2.5vw,2rem);width:max-content;display:flex}.build-card{width:min(70vw,980px);min-height:54vh;color:var(--ink);background:#fff;border-radius:24px;grid-template-columns:1.05fr .95fr;gap:clamp(1.25rem,3vw,3rem);padding:clamp(1.5rem,3vw,3rem);display:grid;position:relative;overflow:hidden}.build-num{font-family:var(--font-display);color:#002d720f;-webkit-user-select:none;user-select:none;pointer-events:none;font-size:clamp(7rem,15vw,13rem);font-weight:700;line-height:1;position:absolute;top:-1.5rem;right:.5rem}.build-copy{flex-direction:column;justify-content:center;align-items:flex-start;display:flex;position:relative}.build-title{font-family:var(--font-display);letter-spacing:-.02em;margin-bottom:1rem;font-size:clamp(2rem,3.75vw,3.25rem);font-weight:600;line-height:1.05}.build-desc{color:var(--slate);max-width:28rem;margin-bottom:1.75rem;font-size:1.15rem}.build-art{justify-content:center;align-items:center;display:flex;position:relative}.build-art img{object-fit:contain;width:100%;max-height:42vh}.builds-progress{padding:clamp(1.25rem, 3vh, 2rem) var(--gutter) clamp(2rem, 5vh, 3rem);font-family:var(--font-mono);color:var(--spirit);align-items:center;gap:1rem;font-size:.85rem;display:flex}.builds-total{color:#ffffff73}.builds-progress-line{background:#ffffff26;flex:1;height:2px}.builds-progress-fill{background:var(--spirit);transform-origin:0;height:100%;display:block;transform:scaleX(0)}@media (width<=767px){.builds{min-height:0;display:block}.builds-track-wrap{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;overflow-x:auto}.builds-track{padding-bottom:.5rem}.build-card{scroll-snap-align:center;grid-template-columns:1fr;width:86vw;min-height:0}.build-art img{max-height:32vh}}.gains{padding:clamp(5rem, 12vh, 8rem) var(--gutter)}.gain-list{grid-template-columns:repeat(2,1fr);gap:clamp(1.25rem,2.5vw,2rem);margin-top:clamp(2.5rem,6vh,4rem);list-style:none;display:grid}.gain-row{border:1px solid var(--line);background:#ffffff80;border-radius:3px;flex-direction:column;padding:clamp(1.5rem,3vw,2.25rem);display:flex}.gain-icon{border:1px solid var(--line);width:2.75rem;height:2.75rem;color:var(--ink);border-radius:3px;justify-content:center;align-items:center;margin-bottom:1.25rem;display:inline-flex}.gain-icon svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:1.5rem;height:1.5rem}.gain-line{font-family:var(--font-display);letter-spacing:-.02em;font-size:clamp(1.75rem,2.8vw,2.5rem);font-weight:600;line-height:1.05;position:relative}.gain-line-stroke{color:#0000;-webkit-text-stroke:1px #002d7252;display:block}.gain-line-fill{color:var(--ink);display:block;position:absolute;inset:0}.gain-note{margin-top:1.1rem;position:relative}.gain-leader{transform-origin:0;background:var(--ink);width:clamp(1.5rem,3.5vw,3.5rem);height:1.5px;margin-bottom:.9rem;display:block;position:relative}.gain-leader:before{content:"";background:var(--spirit);border-radius:50%;width:.5rem;height:.5rem;position:absolute;top:50%;left:-.3rem;transform:translateY(-50%)}.gain-note-copy{color:var(--slate)}.gain-note strong{color:var(--ink);background:linear-gradient(#0000 62%,#68ace573 62%);font-weight:700}.gain-note-featured .gain-note-copy{color:var(--ink);font-size:1.1rem}.gain-kicker{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--slate);margin-bottom:.9rem;font-size:.7rem}@media (width<=767px){.gain-list{grid-template-columns:1fr}}.social{align-items:flex-end;min-height:100svh;display:flex;position:relative;overflow:hidden}.social-media{position:absolute;inset:0}.social-media img{object-fit:cover;will-change:transform;width:100%;height:115%}.social-overlay{z-index:1;width:100%;padding:45vh var(--gutter) clamp(3rem, 8vh, 6rem);color:#fff;background:linear-gradient(#0000 0%,#00102a59 35%,#00102ab3 60%,#00102af5 100%);position:relative}.social-title{font-family:var(--font-display);letter-spacing:-.02em;text-shadow:0 2px 30px #000a1ea6;margin-bottom:1rem;font-size:clamp(2.5rem,5.6vw,5rem);font-weight:600;line-height:1.02}.social-copy{color:#fff;text-shadow:0 1px 18px #000a1ebf;max-width:36rem;font-size:clamp(1.05rem,1.5vw,1.3rem);font-weight:500}.join{padding:clamp(5rem, 12vh, 8rem) var(--gutter) clamp(4rem, 10vh, 7rem)}.pair-row{padding:0 var(--gutter);border-top:1px solid var(--line);grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:clamp(2.5rem,6vw,6rem);display:grid}.pair-row>.sponsors,.pair-row>.join{border-top:0;padding:clamp(4rem,10vh,7rem) 0}.pair-row .join-title{font-size:clamp(2.25rem,4vw,3.5rem)}.pair-row .join-roles{gap:1rem}.join-head{max-width:46rem}.join-title{font-size:clamp(3rem,7.5vw,6rem)}.join-sub{color:var(--slate);margin:1.5rem 0 2.25rem;font-size:1.15rem}.join-roles{grid-template-columns:repeat(3,1fr);gap:1.15rem;margin-top:clamp(2.25rem,5vh,3.5rem);display:grid}.role-card{border:1px solid var(--slate);background:#fff;border-radius:12px;padding:1.15rem;box-shadow:0 2px 8px #002d7214}.role-icon{width:1.75rem;height:1.75rem;margin-bottom:.75rem;display:inline-block}.role-icon svg{width:100%;height:100%;display:block}.role-card h4{font-family:var(--font-display);margin-bottom:.35rem;font-size:1.15rem;font-weight:600}.role-card p{color:var(--slate);font-size:.9rem}.sponsors{padding:clamp(4rem, 10vh, 7rem) var(--gutter) clamp(2rem, 5vh, 3rem);border-top:1px solid var(--line)}.sponsors-head{max-width:46rem}.sponsors-copy{color:var(--slate);margin-top:1.5rem;font-size:1.15rem}.sponsors-logos{align-items:center;margin-top:clamp(3rem,7vh,5rem);display:flex}.sponsor-logo{object-fit:contain;width:auto;height:clamp(2.5rem,5.6vw,4rem)}@media (width<=767px){.join-roles{grid-template-columns:1fr}.pair-row{grid-template-columns:1fr;gap:0;padding:0}.pair-row>.sponsors,.pair-row>.join{padding:clamp(4rem, 10vh, 7rem) var(--gutter)}}.arcade{padding:clamp(4rem, 10vh, 7rem) var(--gutter) clamp(4rem, 10vh, 6rem);border-top:1px solid var(--line)}.arcade-head{max-width:52rem}.arcade-copy{color:var(--slate);margin-top:1.25rem;font-size:1.15rem}.arcade-game{background:#001d4a;border:1px solid #68ace559;border-radius:14px;max-width:52rem;margin:clamp(2.5rem,6vh,4rem) auto 0;overflow:hidden;box-shadow:0 32px 80px #001d4a47}.arcade-hud{font-family:var(--font-mono);border-bottom:1px solid #68ace538;align-items:center;gap:1rem;padding:.9rem 1.25rem;display:flex}.arcade-stat{flex-direction:column;line-height:1.25;display:flex}.arcade-stat-time{text-align:center;margin-left:auto;margin-right:auto}.arcade-stat:last-child{text-align:right}.arcade-stat-label{letter-spacing:.14em;text-transform:uppercase;color:#68ace5b3;font-size:.62rem}.arcade-stat-value{color:#fff;font-variant-numeric:tabular-nums;font-size:1.25rem;font-weight:700}.arcade-stat-time .arcade-stat-value{color:var(--spirit)}.arcade-game.is-urgent .arcade-stat-time .arcade-stat-value{color:var(--live)}.arcade-timer-line{background:#68ace52e;height:2px}.arcade-timer-fill{background:var(--spirit);transform-origin:0;width:100%;height:100%;display:block}.arcade-game.is-urgent .arcade-timer-fill{background:var(--live)}.arcade-stage{text-align:center;color:#cfe4f7;justify-content:center;align-items:center;min-height:19rem;padding:2rem 1.5rem;display:flex}.arcade-panel-title{font-family:var(--font-display);color:#fff;font-size:clamp(1.6rem,3.75vw,2.25rem);font-weight:600;line-height:1.15}.arcade-panel-sub{font-family:var(--font-mono);color:#cfe4f7bf;max-width:26rem;margin:.85rem auto 1.75rem;font-size:.8rem;line-height:1.7}.arcade-panel .btn-primary{background:var(--spirit);color:#001d4a;border-color:var(--spirit)}.arcade-panel .btn-primary:hover{background:#fff;border-color:#fff}.arcade-play{width:100%}.arcade-problem{font-family:var(--font-mono);letter-spacing:-.01em;color:#fff;font-variant-numeric:tabular-nums;font-size:clamp(2.25rem,6.6vw,3.5rem);font-weight:700}.arcade-input{text-align:center;width:min(100%,12rem);font-family:var(--font-mono);color:var(--spirit);caret-color:var(--spirit);font-variant-numeric:tabular-nums;background:0 0;border:none;border-bottom:2px solid #68ace580;outline:none;margin:1.5rem auto 0;padding:.5rem .25rem;font-size:clamp(1.75rem,4.7vw,2.5rem);font-weight:700;transition:border-color .15s;display:block}.arcade-input:focus{border-bottom-color:var(--spirit)}.arcade-play.is-wrong .arcade-input{border-bottom-color:var(--live);animation:.24s arcade-shake}@keyframes arcade-shake{25%{transform:translate(-6px)}75%{transform:translate(6px)}}.arcade-hint{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:#68ace599;margin-top:1.5rem;font-size:.7rem}.arcade-save{width:100%}.arcade-fields{flex-direction:column;align-items:center;gap:.6rem;display:flex}.arcade-privacy{font-family:var(--font-mono);color:#cfe4f78c;max-width:24rem;margin:.9rem auto 0;font-size:.68rem;line-height:1.6}.arcade-name-input{text-align:center;width:min(100%,18rem);font-family:var(--font-mono);color:#fff;caret-color:var(--spirit);background:#68ace514;border:1px solid #68ace566;border-radius:8px;outline:none;margin:0 auto;padding:.6rem .75rem;font-size:1.05rem;transition:border-color .15s;display:block}.arcade-name-input::placeholder{color:#cfe4f773}.arcade-name-input:focus{border-color:var(--spirit)}.arcade-save-error{font-family:var(--font-mono);color:var(--live);margin-top:.85rem;font-size:.75rem}.arcade-save-actions{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:1.5rem;display:flex}.arcade-save .btn-ghost{color:#cfe4f7cc;border-color:#68ace566}.arcade-save .btn-ghost:hover{color:#fff;background:#68ace529}.arcade-save .btn[disabled]{opacity:.55;cursor:default;transform:none}.arcade-board{border:1px solid var(--line);background:#fff;border-radius:14px;max-width:52rem;margin:1.5rem auto 0;padding:1.5rem clamp(1.25rem,3vw,2rem)}.arcade-board-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:1rem;padding-bottom:.9rem;display:flex}.arcade-board-title,.arcade-board-refresh{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--slate);font-size:.7rem}.arcade-board-refresh{cursor:pointer;background:0 0;border:none;padding:0;transition:color .15s}.arcade-board-refresh:hover{color:var(--ink)}.arcade-board-list{overscroll-behavior:contain;scrollbar-gutter:stable;max-height:22rem;list-style:none;position:relative;overflow-y:auto}.arcade-board-list:focus-visible{outline:2px solid var(--spirit);outline-offset:4px}.arcade-board-list{scrollbar-width:thin;scrollbar-color:var(--line) transparent}@keyframes arcade-row-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.arcade-row{border-bottom:1px solid var(--line);font-family:var(--font-mono);animation:.4s cubic-bezier(.16,1,.3,1) backwards arcade-row-in;animation-delay:calc(var(--i,0) * 50ms);grid-template-columns:2.75rem 1fr auto;align-items:center;gap:1rem;padding:.7rem 0;display:grid}.arcade-row:last-child{border-bottom:none}.arcade-row-rank{color:var(--slate);font-size:.8rem}.arcade-row-name{font-family:var(--font-body);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.arcade-row-score{font-variant-numeric:tabular-nums;font-weight:700}.arcade-row-new .arcade-row-rank,.arcade-row-new .arcade-row-name,.arcade-row-new .arcade-row-score{color:var(--spirit)}.arcade-board-empty{font-family:var(--font-mono);color:var(--slate);padding:1.25rem 0 .25rem;font-size:.72rem}@media (prefers-reduced-motion:reduce){.arcade-play.is-wrong .arcade-input,.arcade-row{animation:none}}.site-footer{padding:1.5rem var(--gutter) 2rem;border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.footer-links{gap:1.75rem;font-size:.95rem;font-weight:500;display:flex}.footer-links a:hover{color:var(--spirit)}.footer-copy{font-family:var(--font-mono);color:var(--slate);font-size:.75rem}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.build-card{position:static}.builds{-webkit-overflow-scrolling:touch;overflow-x:auto}.builds-track-wrap{overflow-x:auto}.builds-progress{display:none}}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:hidden}.lenis.lenis-smooth iframe{pointer-events:none}
