@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/archivo-latin-400-normal-C81ewxNO.woff2)format("woff2"),url(/assets/archivo-latin-400-normal-Bl602Mgc.woff)format("woff")}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/archivo-latin-500-normal-CGugC8dq.woff2)format("woff2"),url(/assets/archivo-latin-500-normal-pkzA7jw9.woff)format("woff")}@font-face{font-family:Fragment Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fragment-mono-latin-400-normal-yxdJ5AmL.woff2)format("woff2"),url(/assets/fragment-mono-latin-400-normal-BYwT3kSJ.woff)format("woff")}@font-face{font-family:Bagel Fat One;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/bagel-fat-one-latin-400-normal-CB1T13M1.woff2)format("woff2"),url(/assets/bagel-fat-one-latin-400-normal-BFAfIXLM.woff)format("woff")}:root{--cream:#fffdfc;--ink:#0a0a0a;--black:#000;--grey:#666;--mute:#8a8784;--faint:#b9b5b0;--focus:red;--focus-blended:#00fdfc;--ease-out:cubic-bezier(.23, 1, .32, 1);--font-sans:"Archivo", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-mono:"Fragment Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--text-s:.6875rem;--text-base:.75rem;--text-l:2.25rem;--pad-xs:.3125rem;--pad-s:.625rem;--pad-m:1.25rem;--pad-l:2.5rem;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-size:clamp(14px,1.1111vw,48px)}@media (max-width:480px){:root{font-size:16px}}*,:before,:after{box-sizing:border-box}html,body{overscroll-behavior:none;background:var(--cream);height:100%;margin:0;overflow:hidden}body{color:var(--ink);font:400 var(--text-base) / 1.25 var(--font-sans);letter-spacing:.01em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;font-synthesis:none}a{color:inherit;text-decoration:none}button,input{font:inherit;color:inherit;letter-spacing:inherit}button{cursor:pointer;text-align:inherit;background:0 0;border:0;padding:0}p,h1,h2,ul,ol,dl,dd{margin:0;padding:0}h1,h2{font:inherit}ul,ol{list-style:none}[hidden]{display:none!important}::selection{background:var(--ink);color:var(--cream)}:focus{outline:none}:focus-visible{outline:1px solid var(--focus);outline-offset:3px}[tabindex="-1"]:focus-visible{outline:none}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.link{cursor:pointer;display:inline-block;position:relative}.link:after{content:"";height:1px;transform-origin:var(--underline-origin,left);transition:transform .4s var(--ease-out);background:currentColor;position:absolute;bottom:-.06em;left:0;right:0;transform:scaleX(0)}.link:hover:after,.link[aria-current=page]:after,.link[aria-pressed=true]:after,.link[aria-selected=true]:after{transform:scaleX(1)}.roll{vertical-align:top;white-space:nowrap;display:inline-block;position:relative;overflow:hidden}.roll__line{display:inline-block}.roll__line.is-leaving{position:absolute;top:0;left:0}.deboss{--bevel:-2px;--bevel-blur:4px;--halo:30px;font-family:var(--font-sans);letter-spacing:-.05em;text-transform:uppercase;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;margin:0;font-weight:500;line-height:.82;position:relative}.deboss__shadow{color:#0000;-webkit-text-stroke:2px #fff;text-shadow:0 0 var(--halo) #e8e9ed1f;position:absolute;inset:0}.deboss__face{color:#0000;background:#e8e9ed;text-shadow:var(--bevel) var(--bevel) var(--bevel-blur) var(--cream);-webkit-background-clip:text;background-clip:text;display:block;position:relative}@media (max-width:480px){.deboss{--bevel:-1.2px;--bevel-blur:2.4px;--halo:18px}}.cover-media{object-fit:cover;width:100%;height:100%;display:block}.grain{z-index:100;pointer-events:none;opacity:.07;mix-blend-mode:overlay;position:fixed;inset:0;overflow:hidden}.grain:before{content:"";background-image:var(--grain);background-size:192px;animation:.8s step-end infinite grain;position:absolute;inset:-50%}@keyframes grain{0%{transform:translate(0)}17%{transform:translate(-7%,4%)}33%{transform:translate(5%,-6%)}50%{transform:translate(-3%,-9%)}67%{transform:translate(8%,3%)}83%{transform:translate(-6%,7%)}}.noscript{text-align:center;max-width:24em;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.gl{z-index:1;touch-action:none;width:100%;height:100%;display:block;position:fixed;inset:0}body:not([data-route=home]) .gl{pointer-events:none}#views{z-index:2;pointer-events:none;position:fixed;inset:0}.view{background:var(--cream);pointer-events:auto;position:absolute;inset:0}.proxy{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.is-still .gl,.is-still .proxy__hint,body.is-still:not([data-route=home]) .proxy{display:none}.is-still .proxy{clip-path:none;pointer-events:auto;scrollbar-width:none;place-items:center;width:auto;height:auto;display:grid;inset:0;overflow-y:auto}.is-still .proxy::-webkit-scrollbar{display:none}.is-still .proxy__list{padding:6rem var(--pad-m);font:500 clamp(1.25rem, 3vw, var(--text-l)) / 1.1 var(--font-sans);white-space:normal;letter-spacing:-.02em;text-align:center;margin:0;list-style:none}.is-still .proxy__link{transition:opacity .35s var(--ease-out)}.is-still .proxy__list:has(.proxy__link:hover) .proxy__link:not(:hover){opacity:.35}.mark{z-index:0;pointer-events:none;transition:opacity .8s var(--ease-out);flex-direction:column;align-items:center;gap:clamp(1rem,3.2vh,2.25rem);display:flex;position:fixed;bottom:clamp(2.75rem,7vh,4.5rem);left:0;right:0}.mark__logo{position:relative}.mark svg{width:clamp(3.5rem,6.5vw,11rem);height:auto;display:block}.mark__shadow{color:#0000;stroke:#fff;stroke-width:5px;stroke-linejoin:round;filter:drop-shadow(0 0 30px #e8e9ed1f);position:absolute;inset:0}.mark__face{color:#e8e9ed;filter:drop-shadow(-2px -2px 4px var(--cream));position:relative}.mark__name{--bevel:-2.5px;--bevel-blur:5px;font-family:"Bagel Fat One", var(--font-sans);letter-spacing:0;font-size:8.4vw;font-weight:400;line-height:.9}.mark__name .deboss__face{background-color:#f0f0f2}@media (max-width:600px){.mark__name{--bevel:-1.4px;--bevel-blur:2.8px;text-align:center;white-space:normal;font-size:14vw}}.nav__logo{width:.95em;height:1.1em;display:block}body:not([data-route=home]) .mark{opacity:0}.nav{z-index:30;color:#fff;mix-blend-mode:difference;pointer-events:none;transition:opacity .7s var(--ease-out);position:fixed;inset:0}.nav.is-idle{opacity:0}.nav__row{white-space:nowrap;transition:transform 1.1s var(--ease-out);pointer-events:auto;align-items:baseline;gap:0 .95em;font-weight:500;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.nav[data-dock=top] .nav__row{transform:translate(-50%, calc(-50svh + var(--pad-m)))}.nav.is-concealed .nav__row{pointer-events:none}.nav__mask{vertical-align:top;display:inline-block;overflow:hidden}.nav__text{display:inline-block}.nav.is-concealed .nav__text{transform:translateY(105%)}.nav.is-concealed .nav__title{visibility:hidden}.nav.is-concealed .link:after,.nav__brand .link[aria-current=page]:not(:hover):after{transform:scaleX(0)}.nav__sound{color:inherit;font:inherit;background:0 0;border:0;padding:0}.nav__short{display:none}.nav__brand{position:relative}.nav__ghost{opacity:0;white-space:nowrap;pointer-events:none;transition:opacity .35s ease-out;position:absolute;left:0}.nav__ghost--above{padding-bottom:.75em;bottom:100%}.nav__ghost--below{padding-top:.75em;top:100%}.nav__brand:hover .nav__ghost{opacity:.4;pointer-events:auto}.nav__brand .nav__ghost:hover{opacity:1;transition-duration:.2s}.nav__title{transition:width .45s var(--ease-out), margin .45s var(--ease-out)}.nav__title[data-empty]{margin-right:-.95em}.nav :focus-visible{outline-color:var(--focus-blended)}@media (max-width:480px){.nav__long{display:none}.nav__short{display:inline}.nav__row{width:calc(100vw - 2 * var(--pad-s));flex-wrap:wrap;justify-content:center;row-gap:.55em}.nav__title{text-align:center;flex-basis:100%;order:10;width:auto!important}.nav__title .roll__line.is-leaving{left:50%;translate:-50%}}.intro{z-index:31;color:#fff;white-space:nowrap;mix-blend-mode:difference;pointer-events:none;font-weight:500;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.hud{right:var(--pad-m);bottom:var(--pad-m);left:var(--pad-m);z-index:30;color:#fff;font:400 var(--text-s) / 1.2 var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:.02em;text-transform:uppercase;mix-blend-mode:difference;pointer-events:none;transition:opacity .6s var(--ease-out);justify-content:space-between;align-items:flex-end;display:flex;position:fixed}body[data-route=project] .hud,body[data-route=index] .hud__counter,body[data-route=info] .hud__counter{opacity:0}.hud__counter,.hud__clock{transition:opacity .6s var(--ease-out)}.hud__clock{flex-direction:column;align-items:flex-end;gap:.15em;display:flex}@media (max-width:480px){.hud{right:var(--pad-s);bottom:var(--pad-s);left:var(--pad-s)}}.stage__cover{z-index:1}.flight{z-index:25;pointer-events:none;position:fixed;overflow:hidden}.index{overflow:hidden}.index__backdrop{position:absolute;inset:0}.index__cover{opacity:0;transition:opacity .8s var(--ease-out);position:absolute;inset:0}.index__cover.is-active{opacity:1}@starting-style{.index__cover.is-active{opacity:0}}.titles{mix-blend-mode:difference;pointer-events:none;position:absolute;inset:0;overflow:hidden}.titles__track{will-change:transform}.titles__item{font:500 10.5vw / 1 var(--font-sans);letter-spacing:-.05em;text-transform:uppercase;white-space:nowrap;margin:-.1em 0;padding-left:.02em;position:relative}.titles__fill{color:#111}.titles__stroke{color:#0000;-webkit-text-stroke:2px #fff;opacity:0;transition:opacity .5s var(--ease-out);position:absolute;top:0;left:.02em}.titles__item.is-active .titles__stroke{opacity:1}.index__panel{top:var(--pad-m);bottom:var(--pad-m);left:var(--pad-m);overscroll-behavior:contain;color:#fff;mix-blend-mode:difference;scrollbar-width:none;width:min(34rem,max(20rem,50vw - 14rem));position:absolute;overflow-y:auto}.index__panel::-webkit-scrollbar{display:none}.index__head{align-items:baseline;gap:.6em;margin-bottom:.9em;display:flex}.index__heading{opacity:.5}.index__count{font:400 var(--text-s) / 1 var(--font-mono);opacity:.5}.filters{gap:.2em;margin-bottom:1.6em;display:grid}.filters__group{flex-wrap:wrap;gap:0 .8em;display:flex}.filters__label{opacity:.5;min-width:6.5em}.filters__chip{opacity:.5;transition:opacity .3s var(--ease-out)}.filters__chip:hover,.filters__chip[aria-pressed=true]{opacity:1}.index__link{grid-template-columns:2.6em minmax(7em,1.1fr) minmax(6em,1fr) minmax(7em,1.3fr);align-items:baseline;gap:.8em;padding:.08em 0;display:grid}.index__row{transition:opacity .35s var(--ease-out)}.index__list.has-active .index__row:not(.is-active){opacity:.35}.index__row.is-active .link:after{transform:scaleX(1)}.index__id{font:400 var(--text-s) / 1 var(--font-mono)}.index__name{font-weight:500}.index__kind,.index__languages{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.index__empty{opacity:.5}@media (max-width:1100px){.index__link{grid-template-columns:2.6em minmax(7em,1.1fr) minmax(6em,1fr)}.index__languages{display:none}}@media (max-width:480px){.index__panel{top:5rem;right:var(--pad-s);left:var(--pad-s);width:auto}.titles__item{font-size:19vw}}.info{overscroll-behavior:contain;overflow:hidden auto}.info__wordmark{font-size:16.2vw;position:absolute;top:1.1rem;left:50%;transform:translate(-50%)}.info__column{top:max(24vh,21vw);right:var(--pad-m);gap:2.4em;width:min(25rem,29vw);padding-bottom:5rem;display:grid;position:absolute}.info__label{color:var(--mute);margin-bottom:.15em}.info__block p+p{margin-top:.9em}.info__note{color:var(--mute)}.info__socials{flex-wrap:wrap;gap:.15em 1em;display:flex}@media (max-width:900px){.info__column{width:min(25rem,40vw)}}@media (max-width:480px){.info__wordmark{font-size:15.4vw;top:4.5rem}.info__column{width:auto;margin:calc(4.5rem + 20vw) var(--pad-s) 0;position:relative;top:auto;right:auto}}.project{column-gap:var(--pad-m);padding:3.6rem var(--pad-m) 0;grid-template:"info stage"1fr"ghost ghost"/minmax(16rem,23vw) 1fr;display:grid;overflow:hidden}.project__ghost{grid-area:ghost;margin:.25rem 0 -.07em -.03em;font-size:8.5vw}.project__info{z-index:1;scrollbar-width:none;min-height:0;font:400 var(--text-s) / 1.5 var(--font-mono);letter-spacing:.03em;text-transform:uppercase;flex-direction:column;grid-area:info;gap:1.9rem;display:flex;position:relative;overflow-y:auto}.project__info::-webkit-scrollbar{display:none}.project__meta{gap:.15em;display:grid}.project__row{grid-template-columns:8.5em 1fr;gap:1em;display:grid}.project__row dt{color:var(--mute)}.project__description{max-width:44ch;min-height:7.5em}.is-typing:after{content:"";vertical-align:-.12em;background:currentColor;width:.55em;height:1em;margin-left:.1em;animation:.9s step-end infinite caret;display:inline-block}@keyframes caret{50%{opacity:0}}.project__actions{font:500 var(--text-base) / 1.3 var(--font-sans);letter-spacing:.01em;text-transform:none;justify-items:start;gap:.3em;display:grid}.project__secondary{color:var(--mute);transition:color .3s var(--ease-out)}.project__secondary:hover{color:var(--ink)}.project__tag{color:var(--mute);font:400 var(--text-s) / 1 var(--font-mono);letter-spacing:.03em;text-transform:uppercase;margin-left:.9em}.project__pager{font:500 var(--text-base) / 1.3 var(--font-sans);letter-spacing:.01em;text-transform:none;gap:1em;margin-top:auto;padding-bottom:.2em;display:flex}.project__stage{z-index:1;background:var(--cream);grid-area:stage;min-height:0;position:relative;overflow:hidden}.project__stage.is-fullscreen{--chrome-height:calc(2.75rem + env(safe-area-inset-top));width:100%;height:100%}.is-fullscreen .stage__cover,.is-fullscreen .stage__frame{top:var(--chrome-height);height:calc(100% - var(--chrome-height))}.has-stage-overlay .project__stage{z-index:50;height:100dvh;position:fixed;inset:0}.has-stage-overlay .project{overflow:hidden}.has-stage-overlay .nav,.has-stage-overlay .hud{visibility:hidden}.stage__chrome{z-index:3;height:var(--chrome-height);padding:env(safe-area-inset-top) max(var(--pad-m), env(safe-area-inset-right)) 0 max(var(--pad-m), env(safe-area-inset-left));font:400 var(--text-s) / 1.2 var(--font-mono);letter-spacing:.03em;text-transform:uppercase;transition:opacity .7s var(--ease-out);justify-content:space-between;align-items:center;display:flex;position:absolute;top:0;left:0;right:0}.project__stage:not(.is-fullscreen) .stage__chrome{display:none}.stage__chrome.is-idle{opacity:0}.stage__offer{z-index:3;background:var(--ink);color:var(--cream);font:400 var(--text-s) / 1.2 var(--font-mono);letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .4s var(--ease-out);padding:.7em .9em;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.project__stage.is-offering .stage__offer{opacity:1;pointer-events:auto}.stage__cover,.stage__frame,.stage__source{border:0;width:100%;height:100%;position:absolute;inset:0}.stage__cover{pointer-events:none}.stage__frame{background:var(--cream);display:block}.stage__source{z-index:2;background:var(--cream)}.project__stage:focus-visible{outline:none}@media (max-width:480px){.project{padding:4.9rem var(--pad-s) var(--pad-l);overscroll-behavior:contain;flex-direction:column;display:flex;overflow-y:auto}.project>*{flex:none}.project__stage{flex:none;order:-1;height:62svh;margin-bottom:1.6rem}.project__info{gap:1.6rem;overflow:visible}.project__row{grid-template-columns:7.5em 1fr}.project__description{min-height:0}.project__pager{margin-top:.5rem}.project__ghost{order:2;margin:2.5rem 0 -.07em;font-size:21vw}}.source{font:400 var(--text-s) / 1.6 var(--font-mono);flex-direction:column;display:flex;position:absolute;inset:0}.source__bar{justify-content:space-between;align-items:baseline;gap:1.5em;padding:.95rem 1.15rem .6rem;display:flex}.source__tabs{scrollbar-width:none;gap:1.3em;min-width:0;display:flex;overflow-x:auto}.source__tabs::-webkit-scrollbar{display:none}.source__tab{color:var(--mute);transition:color .3s var(--ease-out);flex:none}.source__tab:hover,.source__tab[aria-selected=true]{color:var(--ink)}.source__tab[aria-selected=true]{position:relative}.source__tab[aria-selected=true]:after{content:"";background:currentColor;height:1px;position:absolute;bottom:-.1em;left:0;right:0}.source__tools{color:var(--mute);text-transform:uppercase;letter-spacing:.03em;flex:none;gap:1.3em;display:flex}.source__copy{color:var(--ink)}.source__panel{overscroll-behavior:contain;flex:1;min-height:0;padding:.4rem 1.15rem 3rem;transition:opacity .25s ease-out;position:relative;overflow:auto}.source.is-loading .source__panel{opacity:.4}.source pre.shiki{font:inherit;tab-size:2;margin:0;line-height:1.75;background:0 0!important}.source code{counter-reset:line;display:block}.source .line:before{content:counter(line);counter-increment:line;width:3ch;color:var(--faint);text-align:right;-webkit-user-select:none;user-select:none;margin-right:2.4ch;display:inline-block}.source__veil{filter:blur(2.5px);opacity:.75;pointer-events:none;-webkit-user-select:none;user-select:none;position:relative;-webkit-mask-image:linear-gradient(#000,#0000 90%);mask-image:linear-gradient(#000,#0000 90%)}.source__veil:not([hidden])+.source__lock{margin-top:-3.5rem}.source__veil code{counter-reset:line var(--line-start)}.source__lock{text-transform:uppercase;letter-spacing:.03em;justify-items:start;gap:.9em;max-width:30rem;margin-top:2.2rem;padding-left:5.4ch;display:grid;position:relative}.source__lock-title{color:var(--ink)}.source__lock-text{color:var(--mute)}.source__request{text-transform:none;font:500 var(--text-base) / 1.3 var(--font-sans);letter-spacing:.01em}.pin{gap:.6em;margin:.5em 0 .2em;display:grid}.pin__cells{gap:.7em;display:flex}.pin__cell{border:0;border-bottom:1px solid var(--ink);width:2.1em;height:2.6em;color:var(--ink);font:400 1.35rem / 1 var(--font-mono);text-align:center;caret-color:var(--focus);background:0 0;border-radius:0;padding:0;transition:border-color .3s ease-out,color .3s ease-out}.pin__cell::placeholder{color:var(--faint)}.pin__cell:focus-visible{border-bottom-color:var(--focus);outline:none}.pin.is-wrong .pin__cell{border-bottom-color:var(--focus);color:var(--focus)}.pin.is-right .pin__cell{border-bottom-color:#0000}.pin.is-cooling{opacity:.4}.pin__status{min-height:1.6em;color:var(--mute)}@media (max-width:480px){.source__bar{flex-direction:column;gap:.4em;padding:.8rem .8rem .5rem}.source__panel{padding:.3rem .8rem 2.5rem}.pin__cell{width:1.8em}}
