*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:5rem}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
:root{--bg:#f7f4ed;--ink:#242321;--acc:#ec008c;--rule:1px solid rgb(36 35 33/22%);--g:clamp(1rem,4vw,4.5rem);--hf:Inter,Arial,Helvetica,sans-serif}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
::selection{background:var(--acc);color:#fff}a{color:inherit;text-underline-offset:.25em}:focus-visible{outline:3px solid var(--ink);outline-offset:4px}
.skip{position:fixed;top:1rem;left:1rem;z-index:100;transform:translateY(-200%);background:var(--ink);color:var(--bg);padding:.75rem 1rem}.skip:focus{transform:none}
.top{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:2rem;padding:.6rem var(--g);background:var(--bg);border-bottom:var(--rule)}
.mark{display:inline-flex;align-items:baseline;gap:.65rem;text-decoration:none;min-height:44px}.mark b{font-size:2.1rem;font-weight:900;letter-spacing:-.09em;line-height:1.1}.mark span{font-size:.7rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.index{margin-left:auto;display:flex;gap:1.2rem;white-space:nowrap}.mark span,button{white-space:nowrap}@media(max-width:1180px){.index a:nth-child(n+4){display:none}}.index a{font-size:.78rem;font-weight:600;text-decoration:none;padding:.5rem 0}.index a:hover{text-decoration:underline;text-decoration-color:var(--acc);text-decoration-thickness:3px}
button{font:inherit;cursor:pointer;min-height:44px;padding:.5rem 1rem;border:1px solid var(--ink);background:transparent;color:var(--ink);font-size:.8rem;font-weight:600}
.layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:start}.flip .layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.flip main{order:2}.flip #stage{order:1;border-right:var(--rule);border-left:0}
#stage{position:sticky;top:calc(44px + 1.2rem);height:calc(100vh - 44px - 1.2rem);width:100%;display:block;border-left:var(--rule);order:2}
main{order:1;padding:0 var(--g)}
.hero{min-height:calc(100vh - 80px);display:flex;flex-direction:column;justify-content:center;padding:4rem 0}
.eyebrow{margin:0 0 1.5rem;font-size:.7rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
h1,h2{margin:0;font-weight:800;letter-spacing:-.075em;text-wrap:balance;font-family:var(--hf)}
h1{font-size:clamp(3rem,6.6vw,7.4rem);line-height:.95}h2{font-size:clamp(2.2rem,4.4vw,4.6rem);line-height:1}
.lead{max-width:38ch;margin:1.8rem 0;font-size:clamp(1rem,1.3vw,1.25rem);line-height:1.65}
.row{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;align-items:center}
.btn{display:inline-flex;align-items:center;min-height:44px;padding:.9rem 1.4rem;background:var(--ink);color:var(--bg);text-decoration:none;font-size:.85rem;font-weight:600;border:1px solid var(--ink)}.btn:hover{background:var(--acc);border-color:var(--acc)}
.tl{font-size:.85rem;font-weight:600;min-height:44px;display:inline-flex;align-items:center}.tl::after{content:"\2197";margin-left:.5rem}
.sec{min-height:80vh;display:flex;flex-direction:column;justify-content:center;padding:4rem 0;border-top:var(--rule)}
.idx{font-size:.75rem;font-weight:700;letter-spacing:.18em;color:var(--acc);margin-bottom:1.2rem}
.sec p{max-width:44ch;font-size:1.05rem;line-height:1.7;margin:1.4rem 0 0}.offs{max-width:44ch;padding:0;list-style:none;margin:1.4rem 0 0}.offs li{padding:.9rem 0;border-top:var(--rule);font-weight:600}.offs li:last-child{border-bottom:var(--rule)}
footer{border-top:var(--rule);padding:2rem 0 4rem;font-size:.85rem}footer p{margin:0}
.no-webgl #stage{background:linear-gradient(135deg,var(--acc),var(--bg))}
@media(max-width:900px){.index{display:none}button{margin-left:auto}.layout,.flip .layout{display:block}#stage,.flip #stage{position:sticky;top:60px;height:34vh;border:0;border-bottom:var(--rule);z-index:5}main{padding-top:0}.hero,.sec{min-height:auto;padding:3rem 0}}
:root{--acc:#1d3fd1;--hf:Georgia,"Times New Roman",serif}h1,h2{font-weight:600;letter-spacing:-.04em}.idx,.index a{font-family:ui-monospace,Menlo,Consolas,monospace}.btn{background:var(--acc);border-color:var(--acc)}.btn:hover{background:#ff7a1a;border-color:#ff7a1a}