@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap');

:root{--ink:#171713;--paper:#f2f0e8;--acid:#dfff3f;--orange:#ff6038;--blue:#5c79ff;--line:rgba(23,23,19,.2)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif}
a{color:inherit}
.site-header{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-bottom:1px solid var(--line);position:relative;z-index:10}
.wordmark{text-decoration:none;font-weight:800;letter-spacing:-.04em;font-size:20px}.wordmark span{background:var(--ink);color:var(--paper);padding:4px 6px;margin-right:4px}
.header-link{font:500 12px 'DM Mono',monospace;text-transform:uppercase;text-underline-offset:5px}
.hero{min-height:calc(100vh - 78px);padding:8vh 5vw 5vh;position:relative;overflow:hidden;border-bottom:1px solid var(--line)}
.eyebrow,.section-kicker{font:500 11px 'DM Mono',monospace;text-transform:uppercase;letter-spacing:.12em}.eyebrow{display:flex;align-items:center;gap:10px}.eyebrow span{width:32px;height:2px;background:var(--orange)}
h1{font-size:clamp(58px,9.5vw,142px);line-height:.82;letter-spacing:-.075em;margin:7vh 0 6vh;position:relative;z-index:2;max-width:1200px}h1 em{font-style:normal;color:var(--orange)}
.hero-bottom{display:flex;align-items:flex-end;gap:8vw;position:relative;z-index:2}.hero-bottom p{font-size:clamp(17px,1.6vw,23px);line-height:1.55;max-width:610px;margin:0 0 0 28vw}.round-cta{width:105px;height:105px;border-radius:50%;background:var(--acid);display:flex;flex-direction:column;align-items:center;justify-content:center;text-decoration:none;font:500 11px 'DM Mono';gap:10px;transition:transform .3s}.round-cta:hover{transform:rotate(7deg) scale(1.05)}.round-cta b{font-size:24px}
.orbit{position:absolute;border:1px solid rgba(23,23,19,.16);border-radius:50%;pointer-events:none}.orbit-one{width:52vw;height:52vw;right:-22vw;top:2vh}.orbit-two{width:31vw;height:31vw;right:-9vw;top:17vh}.node{position:absolute;border-radius:50%;display:grid;place-items:center;font:500 12px 'DM Mono';z-index:1}.node-a{width:45px;height:45px;background:var(--blue);color:white;right:21vw;top:14vh}.node-b{width:62px;height:62px;background:var(--acid);right:3vw;top:47vh}.node-c{width:38px;height:38px;border:1px solid var(--ink);right:31vw;top:57vh}
.premise{padding:120px 5vw}.premise h2,.why h2{font-size:clamp(42px,6vw,86px);line-height:.98;letter-spacing:-.06em;margin:26px 0 80px}.steps{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink)}.steps article{padding:28px 5vw 20px 0;border-right:1px solid var(--line);min-height:260px}.steps article+article{padding-left:3vw}.steps strong{font:500 11px 'DM Mono';color:var(--orange)}.steps h3{font-size:32px;letter-spacing:-.04em;margin:48px 0 14px}.steps p{line-height:1.6;max-width:290px;color:#54544c}
.prototype{background:var(--ink);color:var(--paper);padding:100px 5vw;display:grid;grid-template-columns:minmax(260px,.72fr) minmax(520px,1.28fr);gap:7vw}.section-kicker.light{color:var(--acid)}.prototype-intro h2{font-size:clamp(50px,6vw,90px);line-height:.92;letter-spacing:-.065em;margin:24px 0 34px}.prototype-intro>p:not(.section-kicker){font-size:18px;line-height:1.65;color:#c8c5ba}.lesson-tag{display:inline-block;border:1px solid #5a5a51;border-radius:20px;padding:10px 15px;margin-top:28px;font:11px 'DM Mono';text-transform:uppercase}
.game-panel{background:#fbfaf5;color:var(--ink);padding:24px;box-shadow:16px 16px 0 var(--orange)}.scene-status{display:flex;justify-content:space-between;font:10px 'DM Mono';letter-spacing:.1em;border-bottom:1px solid var(--line);padding-bottom:15px}.map{height:350px;position:relative;border-bottom:1px solid var(--line)}.map svg{position:absolute;inset:0;width:100%;height:100%}.map line{stroke:#aaa99f;stroke-width:2;stroke-dasharray:6 7;transition:stroke .4s,stroke-width .4s}.map line.active{stroke:var(--orange);stroke-width:5;stroke-dasharray:none}.character{position:absolute;border:0;background:transparent;display:flex;flex-direction:column;align-items:center;font:inherit;cursor:pointer}.character b{width:68px;height:68px;border-radius:50%;display:grid;place-items:center;font-size:24px;border:2px solid var(--ink);background:#fff;transition:transform .2s}.character:hover b,.character:focus-visible b{transform:scale(1.08)}.character span{font-weight:800;margin-top:7px}.character small{font:9px 'DM Mono';color:#777}.maya{left:12%;top:52px}.leo{right:12%;top:52px}.noor{left:calc(50% - 34px);bottom:18px}.maya b{background:var(--acid)}.leo b{background:var(--blue);color:white}.noor b{background:var(--orange)}.deadline{position:absolute;left:calc(50% - 45px);top:94px;width:90px;text-align:center;background:var(--ink);color:white;padding:10px}.deadline span,.deadline small{display:block;font:8px 'DM Mono'}.deadline b{font-size:19px}
.choices{border:0;padding:22px 0 0;margin:0}.choices legend{font:500 10px 'DM Mono';text-transform:uppercase;letter-spacing:.1em;margin-bottom:10px}.choices label{display:block;cursor:pointer}.choices input{position:absolute;opacity:0}.choices label>span{display:flex;justify-content:space-between;gap:15px;padding:13px 12px;border-top:1px solid var(--line);transition:background .2s}.choices input:checked+span{background:#e9e7df;box-shadow:inset 4px 0 0 var(--orange)}.choices b{font-size:13px}.choices small{font-size:11px;color:#686860;text-align:right}.run-button{width:100%;border:0;background:var(--acid);padding:17px 19px;display:flex;justify-content:space-between;font:800 14px Manrope;cursor:pointer;margin-top:18px;transition:background .2s}.run-button:hover{background:#c9ec1d}.run-button:active{transform:translateY(1px)}
.outcome{margin-top:16px;border:1px solid var(--ink);padding:15px;min-height:104px}.outcome-label{font:500 9px 'DM Mono';text-transform:uppercase;color:var(--orange)}.outcome p{margin:8px 0 0;line-height:1.5;font-size:14px}.outcome.flash{animation:flash .45s ease}@keyframes flash{50%{background:#fff4c6}}
.why{padding:120px 5vw;display:grid;grid-template-columns:1.15fr .85fr;gap:9vw}.why h2{margin-bottom:0}.why-copy{padding-top:65px}.why-copy>p{font-size:20px;line-height:1.6}.why ul{list-style:none;padding:0;margin:45px 0 0;border-top:1px solid var(--ink)}.why li{padding:17px 0;border-bottom:1px solid var(--line);line-height:1.5}.why li span{display:inline-block;width:100px;font:10px 'DM Mono';text-transform:uppercase;color:var(--orange)}
.vision{background:var(--orange);padding:100px 5vw}.vision>p{font:11px 'DM Mono';letter-spacing:.12em}.vision h2{font-size:clamp(44px,7vw,100px);line-height:.98;letter-spacing:-.065em;max-width:1200px;margin:40px 0 60px}.vision a{font:12px 'DM Mono';text-transform:uppercase;text-underline-offset:7px}
footer{background:var(--ink);color:#aaa99f;display:flex;justify-content:space-between;padding:30px 5vw;font:9px 'DM Mono';letter-spacing:.08em}
@media(max-width:850px){.hero{min-height:780px}.hero-bottom p{margin-left:0}.orbit{opacity:.45}.steps{grid-template-columns:1fr}.steps article{border-right:0;border-bottom:1px solid var(--line);min-height:auto;padding:28px 0 40px}.steps article+article{padding-left:0}.steps h3{margin-top:22px}.prototype{grid-template-columns:1fr}.why{grid-template-columns:1fr}.why-copy{padding-top:0}}
@media(max-width:560px){.site-header{padding:0 20px}.header-link{font-size:9px}.hero,.premise,.prototype,.why,.vision{padding-left:20px;padding-right:20px}.hero{padding-top:55px;min-height:720px}h1{font-size:58px;margin-top:55px}.hero-bottom{align-items:center}.hero-bottom p{font-size:16px}.round-cta{min-width:78px;width:78px;height:78px}.game-panel{padding:15px;box-shadow:8px 8px 0 var(--orange)}.map{height:300px}.character b{width:56px;height:56px}.choices label>span{flex-direction:column;gap:3px}.choices small{text-align:left}.why li span{display:block;margin-bottom:6px}footer{gap:25px;line-height:1.5}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
