:root{--c-ink: #141413;--c-paper: #F4F2EE;--c-mute: #5A5955;--c-line: #D9D6CF;--ff-serif: "Instrument Serif", "Times New Roman", serif;--ff-sans: "IBM Plex Sans", system-ui, -apple-system, sans-serif;--ff-mono: "IBM Plex Mono", ui-monospace, Menlo, monospace;--ff-mark: "Oranienbaum", "Instrument Serif", serif;--fs-mono: clamp(11px, .62rem + .12vw, 13px);--fs-body: clamp(1rem, .9rem + .4vw, 1.3rem);--fs-statement: clamp(2.1rem, .9rem + 5.6vw, 7.6rem);--fs-head: clamp(2.8rem, 1rem + 8.4vw, 10.5rem);--fs-work: clamp(3.6rem, .8rem + 12.6vw, 14.5rem);--fs-card: clamp(2.4rem, .8rem + 6.4vw, 8rem);--fs-num: clamp(6rem, 1rem + 20vw, 24rem);--gutter: clamp(16px, .6rem + 1.6vw, 36px);--side-l: max(var(--gutter), env(safe-area-inset-left, 0px));--side-r: max(var(--gutter), env(safe-area-inset-right, 0px));--nav-h: 4rem;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-io: cubic-bezier(.76, 0, .24, 1)}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{scroll-behavior:auto;-webkit-text-size-adjust:100%;background:var(--c-paper);color-scheme:light}body{background:var(--c-paper);color:var(--c-ink);font:400 var(--fs-body)/1.5 var(--ff-sans);font-synthesis:none;-webkit-font-smoothing:antialiased;overflow-x:clip}body.is-loading{overflow:hidden}ol,ul{padding:0;list-style:none}h1,h2,h3,p,dd,dt{font:inherit}a{color:inherit;text-decoration:none}img,canvas{display:block;max-width:100%}::selection{background:var(--c-ink);color:var(--c-paper)}:focus-visible{outline:2px solid currentColor;outline-offset:4px}html.has-cursor,html.has-cursor *{cursor:none!important}.u-skip{position:fixed;left:var(--side-l);top:-6rem;z-index:200;padding:.7rem 1rem;background:var(--c-ink);color:var(--c-paper);font:500 var(--fs-mono)/1 var(--ff-mono);letter-spacing:.08em;text-transform:uppercase;transition:top .3s var(--ease-out)}.u-skip:focus{top:var(--gutter)}.u-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.u-mono{font:500 var(--fs-mono)/1.35 var(--ff-mono);letter-spacing:.08em;text-transform:uppercase}.t-serif{font-family:var(--ff-serif);font-weight:400;text-transform:uppercase;letter-spacing:-.005em}.t-sans{font-family:var(--ff-sans);font-weight:600;text-transform:uppercase;letter-spacing:-.045em}.c-label{display:flex;align-items:center;gap:1rem;margin-bottom:clamp(2rem,5vw,4.5rem)}.c-rule{flex:1;height:1px;background:currentColor}.c-head{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:1rem;margin-bottom:clamp(1.5rem,4vw,4rem)}.c-head>:last-child{justify-self:end}.c-head__title{font:400 var(--fs-head)/.86 var(--ff-serif);letter-spacing:-.02em;text-align:center}@media(max-width:719px){.c-head{grid-template-columns:1fr auto}.c-head__title{grid-column:1 / -1;grid-row:2;text-align:left}}html,body{height:100%;overflow:hidden}body{background:var(--c-paper)}.g-app{position:fixed;inset:0}.g-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;image-rendering:pixelated;cursor:grab}.g-canvas,.gs-hops,.gs-hold,.g-ask,.g-door,html.is-pressing,html.is-pressing *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.g-canvas:active{cursor:grabbing}.g-canvas--ink{image-rendering:auto}[hidden]{display:none!important}.u-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.gs-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}.gs-hops{position:absolute;inset:0;pointer-events:none;overflow:hidden}.gs-hop{position:absolute;left:0;top:0;pointer-events:auto;cursor:pointer;display:flex;align-items:center;gap:.55rem;white-space:nowrap;font:500 .78rem/1 var(--ff-mono);letter-spacing:.08em;text-transform:uppercase;padding:.7rem 1rem .7rem .8rem;border:1px solid var(--c-ink);border-radius:999px;background:color-mix(in srgb,var(--c-paper) 88%,transparent);color:var(--c-ink);animation:g-fade .4s both}.gs-hop[hidden]{display:none}.gs-hop:hover,.gs-hop:focus-visible{background:var(--c-ink);color:var(--c-paper)}.gs-hop i{width:.55rem;height:.55rem;border-radius:50%;background:currentColor;animation:gs-blink 1.6s ease-in-out infinite}.gs-hop[data-edge=l]:before{content:"←"}.gs-hop[data-edge=r]:after{content:"→"}.gs-back{left:max(var(--gutter),env(safe-area-inset-left,0px));top:auto;bottom:calc(var(--gutter) + env(safe-area-inset-bottom,0px));padding-left:1rem;animation:none}.gs-back:before{content:"←"}:root:has(.gs-hops:not([hidden])>.gs-back:not([hidden]),.g-app>.gs-back:not([hidden])){--gz-motion-lift: calc(.78rem + 1.4rem + 2px + .5rem)}.gs-hold{position:absolute;left:0;top:0;width:76px;height:76px;margin:-38px 0 0 -38px;pointer-events:none;opacity:0;transition:opacity .2s}.gs-hold.is-on{opacity:1}.gs-hold:before,.gs-hold:after{content:"";position:absolute;inset:0;border-radius:50%}.gs-hold:after{background:color-mix(in srgb,var(--c-paper) 45%,transparent);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 6px),#000 calc(100% - 5px));mask:radial-gradient(farthest-side,transparent calc(100% - 6px),#000 calc(100% - 5px))}.gs-hold:before{z-index:1;background:conic-gradient(var(--c-ink) calc(var(--p, 0) * 360deg),transparent 0);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 6px),#000 calc(100% - 5px));mask:radial-gradient(farthest-side,transparent calc(100% - 6px),#000 calc(100% - 5px))}.gs-hold span{position:absolute;left:50%;bottom:calc(100% + .6rem);transform:translate(-50%);white-space:nowrap;font:500 .7rem/1 var(--ff-mono);letter-spacing:.08em;text-transform:uppercase;padding:.45rem .7rem;border-radius:999px;background:var(--c-ink);color:var(--c-paper)}.gs-hold.is-done:before,.gs-hold.is-done:after{animation:gs-pop .45s ease-out forwards}@keyframes gs-pop{to{transform:scale(1.7);opacity:0}}@media(pointer:coarse){.gs-hold{width:110px;height:110px;margin:-55px 0 0 -55px}}@keyframes gs-blink{0%,56%,to{transform:scale(1);opacity:.45}28%{transform:scale(1.5);opacity:1}}@media(prefers-reduced-motion:reduce){:where(:root:not(.is-motion)) .gs-hop i{animation:none}}.gs-path{stroke:var(--c-mute);stroke-width:1;stroke-dasharray:3 4;fill:none}.gs-tag polyline{stroke:var(--c-ink);stroke-width:1;fill:none}.gs-tag circle{fill:var(--c-ink)}.gs-num{font:500 10px/1 var(--ff-mono);letter-spacing:.08em;fill:var(--c-mute)}.gs-label{font:500 11px/1 var(--ff-mono);letter-spacing:.08em;text-transform:uppercase;fill:var(--c-ink)}.gs-tag.is-hover .gs-label{font-weight:700;text-decoration:underline}.gs-tag{transition:opacity .25s}.gs-steam{stroke:var(--c-ink);stroke-width:1;fill:none;stroke-linecap:round}.g-title{position:absolute;z-index:2;left:max(var(--gutter),env(safe-area-inset-left,0px));top:calc(var(--gutter) + env(safe-area-inset-top,0px));max-width:22rem;display:grid;gap:.5rem;pointer-events:none}.g-title a{pointer-events:auto}.g-back{color:var(--c-ink);margin-bottom:.75rem;width:max-content}.g-back:hover{text-decoration:underline;text-underline-offset:.25em}.g-fallback{position:absolute;inset:auto 0 45%;text-align:center;padding:1rem}@media(max-width:760px){.g-title{max-width:calc(100% - 2 * var(--gutter))}}.g-cue{position:absolute;z-index:2;left:50%;transform:translate(-50%);bottom:calc(var(--gutter) + .2rem + env(safe-area-inset-bottom,0px));margin:0;white-space:nowrap;pointer-events:none;font:400 clamp(2.4rem,1.2rem + 3.6vw,4.6rem)/1 var(--ff-serif);letter-spacing:-.02em;color:var(--c-ink)}.g-cue .w{display:inline-block;overflow:hidden;vertical-align:bottom;padding:0 .02em .12em;margin-bottom:-.12em}.g-cue .c{display:inline-block;animation:g-rise 1s var(--ease-out) both;animation-delay:calc(.5s + var(--i) * 28ms)}@keyframes g-rise{0%{transform:translateY(110%)}to{transform:none}}.g-cue-blink{opacity:calc(.22 + .78 * var(--b, 1))}.g-cue-tap{display:none}@media(hover:none){.g-cue-tap{display:inline}.g-cue-click{display:none}}@media(max-width:760px){.g-cue{bottom:calc(16vh + env(safe-area-inset-bottom,0px))}}@media(prefers-reduced-motion:reduce){:where(:root:not(.is-motion)) .g-cue .c{animation:none}}[data-gt-version=paper] .g-title{--c-ink: #F4F2EE;--c-mute: rgba(244, 242, 238, .62)}[data-gt-pov] .g-cue{visibility:hidden}.g-ask{position:absolute;z-index:3;left:50%;transform:translate(-50%);bottom:calc(var(--gutter) + .2rem + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;align-items:center;gap:1.1rem;width:max-content;max-width:calc(100vw - 2 * var(--gutter))}.g-ask[hidden]{display:none}.g-ask-act{display:flex;gap:.6rem;animation:g-fade .5s .15s both}.g-ask-act button{font:500 .78rem/1 var(--ff-mono);letter-spacing:.08em;text-transform:uppercase;padding:.85rem 1.3rem;border:1px solid var(--c-ink);background:var(--c-paper);color:var(--c-ink);cursor:pointer}.g-ask-act button.is-go{background:var(--c-ink);color:var(--c-paper)}.g-ask-act button:focus-visible{outline:2px solid var(--c-ink);outline-offset:3px}@keyframes g-fade{0%{opacity:0}to{opacity:1}}@media(max-width:760px){.g-ask{bottom:calc(12vh + env(safe-area-inset-bottom,0px))}}@media(prefers-reduced-motion:reduce){:where(:root:not(.is-motion)) .g-ask-act{animation:none}}.g-door{position:fixed;inset:0;z-index:5;background:#fff1d6;opacity:0;pointer-events:none;transition:opacity .8s ease}.g-door.is-on{opacity:1;pointer-events:auto;transition-duration:.35s}.g-music{position:absolute;z-index:3;cursor:pointer;right:max(var(--gutter),env(safe-area-inset-right,0px));bottom:calc(var(--gutter) + env(safe-area-inset-bottom,0px));width:44px;height:44px;padding:0 11px 13px;display:flex;align-items:flex-end;justify-content:space-between;background:color-mix(in srgb,var(--c-paper) 92%,transparent);border:1px solid var(--c-line);border-radius:50%}.g-music i{display:block;width:3px;height:3px;background:var(--c-ink);transition:height .4s var(--ease-out)}.g-music.is-on i{animation:g-eq 1s ease-in-out infinite alternate}.g-music.is-on i:nth-child(1){animation-duration:.9s}.g-music.is-on i:nth-child(2){animation-duration:.62s;animation-delay:-.3s}.g-music.is-on i:nth-child(3){animation-duration:1.1s;animation-delay:-.5s}.g-music.is-on i:nth-child(4){animation-duration:.74s;animation-delay:-.2s}@keyframes g-eq{0%{height:3px}to{height:18px}}.g-music:focus-visible{outline:2px solid var(--c-ink);outline-offset:3px}@media(prefers-reduced-motion:reduce){:where(:root:not(.is-motion)) .g-music.is-on i{animation:none;height:12px}}.g-cur{--cur-ink: var(--c-ink);--cur-halo: var(--c-paper);position:fixed;left:0;top:0;z-index:60;width:0;height:0;pointer-events:none;opacity:0}[data-gt-version=paper] .g-cur{--cur-ink: #F4F2EE;--cur-halo: #141413}.g-cur.is-on{opacity:1}.g-cur-chev{position:absolute;left:-13px;top:-11px;width:16px;height:22px;overflow:visible}.g-cur-chev path{fill:none;stroke-linecap:round;stroke-linejoin:round}.g-cur-chev .g-cur-b{stroke:var(--cur-halo);stroke-width:6}.g-cur-chev .g-cur-f{stroke:var(--cur-ink);stroke-width:2.2}.g-cur-word{position:absolute;left:0;top:0;translate:-50% -55%;display:none;white-space:nowrap;font:400 26px/1 var(--ff-serif);letter-spacing:-.01em}.g-cur-word i{font-style:inherit;visibility:hidden}.g-cur-word.g-cur-b{color:var(--cur-halo);-webkit-text-stroke:6px var(--cur-halo)}.g-cur-word.g-cur-f{color:var(--cur-ink)}.g-cur.is-word .g-cur-chev{display:none}.g-cur.is-word .g-cur-word{display:block}html.has-cur,html.has-cur *{cursor:none!important}.gs-hop.is-locked{border-color:var(--c-mute);color:var(--c-mute)}.gs-hop.is-locked:hover,.gs-hop.is-locked:focus-visible{background:color-mix(in srgb,var(--c-paper) 88%,transparent);color:var(--c-ink)}.gs-hop.is-locked i{animation:none;opacity:.45}.gs-hop.is-shake{animation:gs-shake .38s ease-in-out}@keyframes gs-shake{0%,to{translate:0}20%{translate:-6px 0}40%{translate:5px 0}60%{translate:-3px 0}80%{translate:2px 0}}.gs-hop.is-unlock{animation:gs-unlock .9s ease-out}@keyframes gs-unlock{0%{background:var(--c-ink);color:var(--c-paper);scale:1.15}to{scale:1}}.gs-hop-q{position:absolute;left:50%;bottom:calc(100% + .55rem);translate:-50% 4px;padding:.5rem .75rem;border-radius:999px;background:var(--c-ink);color:var(--c-paper);text-transform:none;letter-spacing:.02em;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s,translate .2s}.gs-hop-q.is-on{opacity:1;translate:-50% 0}@media(prefers-reduced-motion:reduce){:where(:root:not(.is-motion)) .gs-hop.is-shake,:where(:root:not(.is-motion)) .gs-hop.is-unlock{animation:none}}
