:root{--sc-canvas:#0b0c0e;--sc-surface:#14161a;--sc-ink:#f1f0ec;--sc-ink-soft:#a3a49e;--sc-accent:#e6c979;--sc-accent-ink:#141109;--sc-font-display:-apple-system, "SF Pro Display", "Helvetica Neue", system-ui, sans-serif;--sc-font-text:-apple-system, "SF Pro Text", "Helvetica Neue", system-ui, sans-serif;--sc-font-mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace}body{background:var(--sc-canvas);color:var(--sc-ink)}a{color:inherit;text-decoration-color:var(--sc-accent);text-underline-offset:.18em}a:hover{color:var(--sc-accent)}a:focus-visible{outline:2px solid var(--sc-accent);outline-offset:3px;border-radius:4px}.bar{inset-inline:0;z-index:var(--sc-z-chrome);padding:clamp(.9rem, 2.4vh, 1.4rem) var(--sc-gutter);pointer-events:none;justify-content:space-between;align-items:center;display:flex;position:fixed;top:0}.bar>*{pointer-events:auto}.bar .mark{font:600 var(--sc-t-sm) / 1 var(--sc-font-display);letter-spacing:var(--sc-track-snug);color:var(--sc-ink);text-decoration:none}.bar .cta{font:500 var(--sc-t-xs) / 1 var(--sc-font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--sc-ink);border:1px solid var(--sc-hairline-strong);border-radius:var(--sc-r-pill);transition:border-color .16s var(--sc-ease-out), color .16s var(--sc-ease-out);padding:.6rem .9rem;text-decoration:none}.bar .cta:hover{border-color:var(--sc-accent);color:var(--sc-accent)}.hero{position:relative}.hero .light{pointer-events:none;z-index:0;background:radial-gradient(42rem 42rem at calc(var(--sc-mx,.5) * 100%) calc(var(--sc-my,.45) * 100%), #e6c9791c, transparent 62%);position:absolute;inset:0}.hero .frame{z-index:1;box-sizing:border-box;align-content:center;height:100svh;padding-block:clamp(4rem,10vh,6rem) clamp(2rem,6vh,4rem);display:grid;position:relative}.hero h1{letter-spacing:var(--sc-track-tight);cursor:default;user-select:none;touch-action:pan-y;margin:0;font-size:clamp(3.4rem,1.2rem + 9vw,9.5rem);line-height:.92}.hero h1 .ch{will-change:transform;animation:ch-in .7s var(--sc-ease-out) both;animation-delay:calc(var(--i) * 38ms + .12s);display:inline-block}.hero h1 .sp{width:.26em}@keyframes ch-in{0%{opacity:0;transform:translateY(.35em)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.hero h1 .ch{animation:none}}.hero .lines{margin-top:var(--sc-6);min-height:3.2em;font-size:var(--sc-t-xl);letter-spacing:var(--sc-track-snug);max-width:24ch;color:var(--sc-ink-soft);line-height:1.25;position:relative}.hero .lines p{text-wrap:pretty;margin:0}.hero .lines b{color:var(--sc-ink);font-weight:600}.hero .caret{vertical-align:-.12em;background:var(--sc-accent);width:.08em;height:1em;margin-left:.08em;animation:1s steps(2,start) infinite caret;display:inline-block}@keyframes caret{to{visibility:hidden}}.hero .dwell{margin:var(--sc-4) 0 0;font-size:var(--sc-t-sm);color:var(--sc-ink-soft);opacity:0;transition:opacity .5s var(--sc-ease-out), transform .5s var(--sc-ease-out);transform:translateY(6px)}.hero.is-dwell .dwell{opacity:1;transform:none}.hero .dwell a{color:var(--sc-ink)}.sc-grain{opacity:calc(.045 + var(--vel,0) * .13);transition:opacity .12s linear}.hero .light{filter:brightness(calc(1 + var(--vel,0) * 1.6))}.hero .links{margin-top:var(--sc-8);font-size:var(--sc-t-sm);color:var(--sc-ink-soft)}.hero .links a{color:var(--sc-ink)}.hero .links span{margin-inline:.6em}.hero .rail{left:var(--sc-gutter);right:var(--sc-gutter);background:var(--sc-hairline);z-index:1;height:1px;position:absolute;bottom:clamp(1.25rem,4vh,2.5rem)}.hero .rail i{height:100%;width:calc(var(--sc-p,0) * 100%);background:var(--sc-accent);position:absolute;top:0;left:0}.hero .cue{left:var(--sc-gutter);z-index:1;font:500 var(--sc-t-xs) / 1 var(--sc-font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--sc-ink-soft);opacity:clamp(0, 1 - var(--sc-p,0) * 7, 1);align-items:center;gap:.75rem;margin:0;transition:opacity .16s linear;display:flex;position:absolute;bottom:calc(clamp(1.25rem,4vh,2.5rem) + 1.25rem)}.hero .cue .tick{background:var(--sc-hairline-strong);width:1px;height:2.25rem;position:relative;overflow:hidden}.hero .cue .tick:after{content:"";background:var(--sc-accent);width:100%;height:45%;animation:cue-drop 1.6s var(--sc-ease-in-out) infinite;position:absolute;top:0;left:0}@keyframes cue-drop{0%{transform:translateY(-100%)}60%{transform:translateY(230%)}to{transform:translateY(230%)}}@media (prefers-reduced-motion:reduce){.hero .cue .tick:after{animation:none;transform:translateY(60%)}}.boxes li{scroll-margin-top:clamp(4.5rem,10vh,6rem)}.work{padding-block:clamp(1rem,3vh,2.5rem) clamp(3rem,8vh,6rem)}.work-head{justify-content:space-between;align-items:end;gap:var(--sc-5);flex-wrap:wrap;display:flex}.work-head h2{font-size:var(--sc-t-2xl);letter-spacing:var(--sc-track-snug);margin:0}.work-head p{margin:var(--sc-2) 0 0;color:var(--sc-ink-soft);max-width:44ch}.filter{gap:var(--sc-2);flex-wrap:wrap;display:flex}.filter button{font:500 var(--sc-t-xs) / 1 var(--sc-font-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--sc-ink-soft);border:1px solid var(--sc-hairline-strong);border-radius:var(--sc-r-pill);cursor:pointer;transition:color .14s var(--sc-ease-out), border-color .14s var(--sc-ease-out), transform .1s var(--sc-ease-out);background:0 0;padding:.55rem .85rem}.filter button:hover{color:var(--sc-ink);border-color:var(--sc-ink-soft)}.filter button:active{transform:scale(.97)}.filter button[aria-pressed=true]{color:var(--sc-accent-ink);background:var(--sc-accent);border-color:var(--sc-accent)}.filter button:focus-visible{outline:2px solid var(--sc-accent);outline-offset:3px}.boxes{margin:var(--sc-8) 0 0;perspective:1600px;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1rem,2.5vw,2rem);padding:0;list-style:none;display:grid}.boxes li[hidden]{display:none}.box{color:inherit;background:var(--sc-surface);border-radius:var(--sc-r-lg);height:100%;box-shadow:0 30px 60px -40px #000000e6, inset 0 1px 0 var(--sc-edge), 0 0 0 1px #ffffff0d;transform-style:preserve-3d;transition:box-shadow .2s var(--sc-ease-out);text-decoration:none;display:block;overflow:hidden}.box:hover{color:inherit;box-shadow:0 40px 70px -40px #000000f2, inset 0 1px 0 var(--sc-edge), 0 0 0 1px #e6c97973}.box:focus-visible{outline:2px solid var(--sc-accent);outline-offset:4px}.box .cover{aspect-ratio:1200/630;object-fit:cover;width:100%;height:auto;display:block}.box .body{padding:clamp(1.1rem,2.2vw,1.75rem)}.box .top{justify-content:space-between;align-items:baseline;gap:var(--sc-4);display:flex}.box h3{font-size:var(--sc-t-xl);letter-spacing:var(--sc-track-snug);margin:0}.box .status{font:500 var(--sc-t-xs) / 1 var(--sc-font-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--sc-ink-soft);white-space:nowrap}.box .summary{margin:var(--sc-3) 0 0;color:var(--sc-ink-soft);text-wrap:pretty}.box .metrics{margin:var(--sc-5) 0 0;gap:var(--sc-2);flex-wrap:wrap;padding:0;list-style:none;display:flex}.box .metrics li{font:500 var(--sc-t-xs) / 1 var(--sc-font-mono);color:var(--sc-ink);border:1px solid var(--sc-hairline-strong);border-radius:var(--sc-r-sm);padding:.5rem .65rem}.box .stack{margin:var(--sc-5) 0 0;font-size:var(--sc-t-xs);color:var(--sc-ink-soft)}.box .more{margin-top:var(--sc-5);font-size:var(--sc-t-sm);color:var(--sc-ink);text-decoration:underline;text-decoration-color:var(--sc-accent);text-underline-offset:.18em;display:inline-block}.box:hover .more{color:var(--sc-accent)}.empty{margin:var(--sc-6) 0 0;color:var(--sc-ink-soft);font-size:var(--sc-t-sm)}.close{padding:0 var(--sc-gutter);align-content:center;justify-items:start;display:grid}.close h2{font-size:var(--sc-t-3xl);letter-spacing:var(--sc-track-tight);max-width:14ch;margin:0;line-height:.98}.close .cta{margin-top:var(--sc-7);font:600 var(--sc-t-base) / 1 var(--sc-font-display);color:var(--sc-accent-ink);background:var(--sc-accent);border-radius:var(--sc-r-pill);transition:box-shadow .16s var(--sc-ease-out);padding:1rem 1.5rem;text-decoration:none;display:inline-block;box-shadow:0 18px 40px -22px #e6c97999}.close .cta:hover{color:var(--sc-accent-ink);box-shadow:0 22px 48px -20px #e6c979bf}.close .cta:active{transform:scale(.97)}.close .cta:focus-visible{outline:2px solid var(--sc-ink);outline-offset:4px}.foot{inset-inline:var(--sc-gutter);justify-content:space-between;gap:var(--sc-4);font-size:var(--sc-t-xs);color:var(--sc-ink-soft);flex-wrap:wrap;display:flex;position:absolute;bottom:clamp(1.25rem,4vh,2.5rem)}.foot a{color:var(--sc-ink)}.foot span{margin-inline:.5em}@media (width<=860px){.hero h1{font-size:clamp(3rem,1rem + 13vw,4.6rem)}.hero .lines{font-size:var(--sc-t-lg);max-width:26ch;min-height:4.2em}.hero .links{margin-top:var(--sc-6)}.boxes{grid-template-columns:1fr}.close h2{font-size:var(--sc-t-2xl)}.foot{justify-content:flex-start}}
