@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/Portfolio/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/Portfolio/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/Portfolio/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/Portfolio/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/Portfolio/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/Portfolio/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/Portfolio/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/Portfolio/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/Portfolio/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/Portfolio/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/Portfolio/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/Portfolio/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Meshed Display;src:url(/Portfolio/assets/MeshedDisplay-Bold-BBIJaeC3.woff2)format("woff2");font-weight:700;font-display:swap;unicode-range:U+0-2C,U+2E-2012,U+2015-FFFF}@font-face{font-family:Meshed Display;src:url(/Portfolio/assets/MeshedDisplay-Black-BB2G9t28.woff2)format("woff2");font-weight:900;font-display:swap;unicode-range:U+0-2C,U+2E-2012,U+2015-FFFF}@font-face{font-family:Alte Haas Grotesk;src:url(/Portfolio/assets/AlteHaasGrotesk-Bold-DCuBJgsO.ttf)format("truetype");font-weight:700;font-display:swap}:root{--bg:#fff;--fg:#111;--muted:#6b6b6b;--border:#e6e6e6;--accent:#1110e4;--accent-fill:#1110e4;--on-accent:#fff;--paper:#fbfaf8;--bloom-mist:#e8e8fc;--bloom-powder:#bfbff8;--bloom-sky:#7271f4;--bloom-cornflower:#3434f4;--bloom-navy:#060561;--font-body:"Alte Haas Grotesk", "Inter Variable", system-ui, sans-serif;--font-display:"Alte Haas Grotesk", "Inter Variable", system-ui, sans-serif;--font-mono:"JetBrains Mono Variable", ui-monospace, monospace;--font-letter-bold-1:"Anton", "Impact", sans-serif;--font-letter-bold-2:"Archivo Black", "Arial Black", sans-serif;--font-letter-italic-1:"Playfair Display", Georgia, serif;--font-letter-italic-2:"Instrument Serif", Georgia, serif;--font-letter-sans-1:"Inter Variable", system-ui, sans-serif;--font-letter-sans-2:"Space Grotesk Variable", system-ui, sans-serif;--font-letter-serif-1:"DM Serif Display", Georgia, serif;--font-letter-serif-2:"Bodoni Moda Variable", "Bodoni 72", serif;--weight-body:700;--weight-heading:700;--text-body:18px;--leading-body:1.5;--text-h1:clamp(40px, 4.5vw, 57px);--text-h2:32px;--text-letters:24px;--font-index:"Alte Haas Grotesk", "Inter Variable", system-ui, sans-serif;--text-index-group:32px;--text-index:28px;--index-w:264px;--leading-heading:1.1;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px;--gutter:var(--space-6);--reading:62ch;--target:44px;--nav-h:76px;--ease-out:cubic-bezier(.22, 1, .36, 1);--dur-fast:.15s;--dur-base:.25s;--dur-slow:.45s}@media (width<=760px){:root{--gutter:var(--space-4);--nav-h:108px}}@media (height<=760px){:root{--text-index-group:26px;--text-index:23px}}@media (height<=700px){:root{--text-index-group:22px;--text-index:20px}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}html,:root{--ink:var(--fg);--surface:var(--bg)}.on-accent{--ink:var(--on-accent);--surface:var(--accent-fill);background:var(--surface);color:var(--ink)}body{background:var(--bg);color:var(--fg);font-family:var(--font-body);font-weight:var(--weight-body);font-size:var(--text-body);line-height:var(--leading-body);-webkit-font-smoothing:antialiased;margin:0;overflow-x:clip}img{max-width:100%;display:block}a{color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.mono{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;font-size:13px}.display{font-family:var(--font-display);text-transform:uppercase;font-weight:var(--weight-heading);letter-spacing:-.03em;line-height:.9}h1.display{font-size:var(--text-h1);line-height:var(--leading-heading)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.tr-word{white-space:nowrap;display:inline-block}.tr-unit{will-change:transform, filter, opacity;display:inline-block}.letter--bold-1{font-family:var(--font-letter-bold-1);font-weight:400}.letter--bold-2{font-family:var(--font-letter-bold-2);font-weight:400}.letter--italic-1{font-family:var(--font-letter-italic-1);font-style:italic;font-weight:400}.letter--italic-2{font-family:var(--font-letter-italic-2);font-style:italic;font-weight:400}.letter--sans-1{font-family:var(--font-letter-sans-1);font-weight:500}.letter--sans-2{font-family:var(--font-letter-sans-2);font-weight:500}.letter--serif-1{font-family:var(--font-letter-serif-1);font-weight:400}.letter--serif-2{font-family:var(--font-letter-serif-2);font-weight:500}.reveal-word{opacity:0;filter:blur(10px);transition:opacity var(--dur-slow) var(--ease-out), filter var(--dur-slow) var(--ease-out), transform var(--dur-slow) var(--ease-out);display:inline-block;transform:translateY(15px)}.reveal--in .reveal-word{opacity:1;filter:none;transform:none}.reveal--instant .reveal-word{transition:none}.index{z-index:30;left:var(--gutter);top:calc(20svh + var(--space-5));bottom:var(--space-6);width:var(--index-w);color:var(--accent);transition:opacity var(--dur-base) var(--ease-out);flex-direction:column;display:flex;position:fixed}.index--away{opacity:0;pointer-events:none}.index [data-zoom-cover]{transition:opacity var(--dur-fast) var(--ease-out)}.index [data-covered]{opacity:0}.index-label{margin:0 0 var(--space-4)}.index-list{scrollbar-width:none;overflow-y:auto}.index-group+.index-group{margin-top:var(--space-4)}.index-group-title{grid-template-columns:var(--space-7) 1fr;margin:0 0 var(--space-1);font-family:var(--font-index);font-weight:700;font-size:var(--text-index-group);line-height:var(--leading-heading);letter-spacing:-.04em;align-items:baseline;display:grid}.index-items{margin:0;padding:0;list-style:none}.index-items li{grid-template-columns:var(--space-7) var(--space-5) 1fr;align-items:center;display:grid}.index-key{grid-column:2}.index-marker{align-self:center}.index-link{--band:calc(50% - .23em);min-height:var(--space-6);padding:0 var(--space-1);margin-left:calc(var(--space-1) * -1);color:inherit;font-family:var(--font-index);font-weight:700;font-size:var(--text-index);letter-spacing:-.03em;white-space:nowrap;cursor:pointer;background:0 0;border:0;grid-column:3;justify-self:start;align-items:center;line-height:1.2;text-decoration:none;display:inline-flex;position:relative}.index-link:before,.index-link:after{pointer-events:none;clip-path:inset(var(--band) 100% var(--band) 0);position:absolute;inset:0}.index-link:before{content:"";background:currentColor}.index-link:after{content:attr(data-label);padding:inherit;color:var(--bg);align-items:center;display:flex}.index-link[data-strike=in]:before,.index-link[data-strike=in]:after{animation:.4s cubic-bezier(.25,1,.5,1) forwards strike-in}.index-link[data-strike=out]:before,.index-link[data-strike=out]:after{animation:.4s cubic-bezier(.25,1,.5,1) forwards strike-out}.index-link[aria-current=page]:before,.index-link[aria-current=page]:after{clip-path:inset(var(--band) 0 var(--band) 0);animation:none}@keyframes strike-in{0%{clip-path:inset(var(--band) 100% var(--band) 0)}to{clip-path:inset(var(--band) 0 var(--band) 0)}}@keyframes strike-out{0%{clip-path:inset(var(--band) 0 var(--band) 0)}to{clip-path:inset(var(--band) 0 var(--band) 100%)}}.index-link:focus-visible{outline-offset:2px;outline:2px solid}.index-count{padding-top:var(--space-4);margin:auto 0 0}.index.is-twitching{animation:.32s steps(2,end) index-twitch}@keyframes index-twitch{33%{transform:translate(1px,-1px)}66%{transform:translate(-1px,1px)}}.index-toggle{display:none}@media (width<=760px){.index{display:none}.index-toggle{z-index:45;top:var(--space-4);left:var(--gutter);min-height:var(--target);padding:0 var(--space-5);border:1.5px solid var(--accent);background:var(--bg);color:var(--accent);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;cursor:pointer;border-radius:999px;align-items:center;font-size:13px;display:inline-flex;position:fixed}.index-toggle.is-open{background:var(--accent);color:var(--bg)}.index-dialog{z-index:44;padding:calc(var(--space-9) + var(--space-4)) var(--gutter) var(--space-6);background:var(--bg);color:var(--accent);flex-direction:column;display:flex;position:fixed;inset:0;overflow-y:auto}.index-list--big .index-group-title{font-size:var(--text-h2)}.index-list--big .index-link{min-height:var(--target);font-size:var(--text-index-group)}}@media (prefers-reduced-motion:reduce){.index-link[data-strike]:before,.index-link[data-strike]:after{animation-duration:1ms}.index.is-twitching{animation:none}}@media (height<=640px){.index-count{display:none}}.tissue-scrim{z-index:40;background:#11111114;position:fixed;inset:0}.tissue{z-index:41;left:calc(var(--gutter) + var(--index-w));bottom:var(--space-8);width:min(380px, calc(100vw - 2 * var(--gutter)));max-height:min(78svh,680px);padding:var(--space-6) var(--space-5) var(--space-5);--ink:var(--on-accent);--surface:var(--accent-fill);color:var(--ink);background-color:var(--surface);isolation:isolate;border-radius:6px;outline:none;position:fixed;overflow:auto;box-shadow:inset 0 1px #ffffff59,0 24px 60px #11111138,0 4px 12px #1111111f}.tissue:before{content:"";z-index:-1;border-radius:inherit;mix-blend-mode:multiply;opacity:.55;pointer-events:none;background-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='480' height='480'><filter id='t' x='0' y='0' width='100%25' height='100%25'><feTurbulence type='fractalNoise' baseFrequency='0.009 0.014' numOctaves='5' seed='11' stitchTiles='stitch' result='n'/><feDiffuseLighting in='n' lighting-color='%23ffffff' surfaceScale='3.2' diffuseConstant='1.05'><feDistantLight azimuth='225' elevation='48'/></feDiffuseLighting></filter><rect width='100%25' height='100%25' filter='url%28%23t%29'/></svg>");background-size:480px 480px;position:absolute;inset:0}.tissue--white{--ink:var(--fg);--surface:var(--paper);background-color:var(--paper)}.tissue--white:before{opacity:.4}.tissue:focus-visible{outline:2px solid var(--ink);outline-offset:4px}.tissue-close{top:var(--space-2);right:var(--space-2);min-height:var(--target);padding:0 var(--space-3);color:var(--ink);cursor:pointer;background:0 0;border:0;position:absolute}.tissue h2{margin:0 0 var(--space-2);font-size:var(--text-h2);line-height:.95}.tissue p{margin:0 0 var(--space-4);font-size:var(--text-body);line-height:var(--leading-body)}.tissue .meta{margin-bottom:var(--space-4);padding-right:6.5em;display:block}.tissue ul{margin:0 0 var(--space-4);gap:var(--space-2);font-size:var(--text-body);line-height:var(--leading-body);padding:0;list-style:none;display:grid}.tissue li{padding-left:var(--space-4);position:relative}.tissue li:before{content:"";background:var(--ink);border-radius:50%;width:6px;height:6px;position:absolute;top:.6em;left:0}.tissue-links{margin-bottom:var(--space-4);gap:0;display:grid}.tissue-links a,.tissue-links span{min-height:var(--target);font-size:var(--text-body);border-bottom:1px solid #1111112e;justify-content:space-between;align-items:center;text-decoration:none;display:flex}.tissue-links a:hover{text-underline-offset:3px;text-decoration:underline}.tissue .btn--ink{justify-content:center;width:100%}@media (width<=760px){.tissue{left:var(--gutter);bottom:var(--gutter);max-height:72svh}}.talk{z-index:30;right:var(--gutter);bottom:var(--space-6);line-height:var(--leading-body);color:var(--accent);text-transform:none;transition:color var(--dur-base) var(--ease-out);text-decoration:none;position:fixed}.talk:after{content:"";height:var(--target);position:absolute;inset:50% 0 auto;transform:translateY(-50%)}.talk:hover{text-underline-offset:3px;text-decoration:underline}.talk:focus-visible{outline-offset:2px;outline:2px solid}.talk--on-blue{color:var(--on-accent)}@media (width<=760px){.talk{bottom:var(--space-4)}}.roll-slot{z-index:20;top:var(--space-5);right:var(--gutter);pointer-events:none;position:fixed}.roll-cell{perspective:900px}.roll-link{--ratio:1.7917;--h:clamp(72px, 14.7svh, 168px);width:calc(var(--h) * var(--ratio));height:var(--h);pointer-events:auto;cursor:pointer;transition:opacity var(--dur-fast) var(--ease-out);display:block}.roll-link:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.roll-box{width:100%;height:100%;transform-style:preserve-3d;transform:translateZ(calc(var(--h) / -2)) rotateX(calc(var(--turn,0) * 90deg));transition:transform calc(var(--dur-slow) + var(--dur-base)) var(--ease-out);display:block;position:relative}.roll-face{background:var(--bg);transition:background var(--dur-slow) var(--ease-out);backface-visibility:hidden;transform:rotateX(calc(var(--k) * -90deg)) translateZ(calc(var(--h) / 2));display:block;position:absolute;inset:0;overflow:hidden}.roll-face img{object-fit:cover;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;inset:0}.roll-img{transition:opacity var(--dur-slow) var(--ease-out)}.roll-img--on-blue{opacity:0}.roll-slot--on-blue .roll-face{background:var(--accent-fill)}.roll-slot--on-blue .roll-img--on-blue{opacity:1}.roll-slot--on-blue .roll-img:not(.roll-img--on-blue):has(+.roll-img--on-blue){opacity:0}.roll-slot--on-blue .roll-link:focus-visible{outline-color:var(--on-accent)}.hero{background:var(--bg);height:320svh;position:relative}.hero-stage{height:100svh;position:sticky;top:0;overflow:hidden}.hero-media{background:var(--bg);width:100%;height:100%;display:block;position:absolute;inset:0}.hero-flood{background:var(--accent-fill);pointer-events:none;position:absolute;inset:0}.hero--static{height:100svh;overflow:hidden}.hero-hello{z-index:1;top:calc(20svh + var(--space-5));left:calc(53% + var(--space-9));right:var(--gutter);color:var(--accent);transition:opacity var(--dur-fast) var(--ease-out);position:absolute}.hero-hello[data-covered]{opacity:0}.hero-hello-title{margin:0 0 var(--space-4);font-family:var(--font-display);font-weight:var(--weight-heading);font-size:var(--text-h1);line-height:var(--leading-heading);letter-spacing:-.03em}.hero-hello-summary{max-width:40ch;font-size:var(--text-body);line-height:var(--leading-body);margin:0}@media (width<=1100px){.hero-hello{top:auto;bottom:var(--space-9);left:calc(var(--gutter) + var(--index-w) + var(--space-7))}}@media (width<=760px){.hero-hello{top:auto;bottom:var(--space-7);left:var(--gutter);right:var(--gutter);max-width:none}}.globe{--ink:var(--on-accent);--surface:var(--accent-fill);height:300svh;color:var(--ink);margin-top:-122svh;position:relative}.globe-stage{background:var(--surface);height:100svh;position:sticky;top:0;overflow:hidden}.globe-canvas{width:100%;height:100%;position:absolute;inset:0}.globe-caption{left:var(--gutter);right:var(--gutter);bottom:var(--space-7);font-weight:inherit;text-align:center;margin:0;position:absolute}.globe--static{height:auto;margin-top:0}.globe--static .globe-stage{height:100svh;position:relative}.road{--ink:var(--on-accent);--surface:var(--accent-fill);background:var(--surface);height:400svh;color:var(--ink);position:relative}.road-stage{height:100svh;position:sticky;top:0;overflow:hidden}.road-canvas{width:100%;height:100%;position:absolute;inset:0}.road-title{top:calc(20svh + var(--space-5));left:var(--gutter);max-width:22ch;font-size:var(--text-h2);line-height:var(--leading-heading);text-transform:none;margin:0;position:absolute}.road-steps-wrap{left:0;right:0;bottom:var(--space-8);position:absolute}.road-steps{justify-content:space-around;gap:var(--space-3) var(--space-5);padding:0 var(--gutter);flex-wrap:wrap;margin:0;list-style:none;display:flex}.road-steps li{align-items:center;gap:var(--space-1);text-align:center;flex-direction:column;flex:1 1 0;max-width:18ch;display:flex}.road-role{font-size:var(--text-body);line-height:var(--leading-heading)}.road-when,.road-org{opacity:.8}@media (width<=760px){.road-steps li{flex:40%}}.road-hopper{left:0;bottom:calc(100% + var(--space-2));width:var(--space-5);height:var(--space-5);opacity:0;pointer-events:none;transform-origin:50% 100%;position:absolute}.road-hopper svg{width:100%;height:100%;fill:var(--ink);display:block}.road-hopper path{transition:d .6s var(--ease-out)}@media (prefers-reduced-motion:reduce){.road-hopper path{transition:none}}.road-hopper-eyes{fill:var(--surface);transform-box:fill-box;transform-origin:50%}.road-hopper.is-blinking .road-hopper-eyes{animation:.16s ease-in-out road-blink}@keyframes road-blink{50%{transform:scaleY(.1)}}.rack{--ink:var(--on-accent);--surface:var(--accent-fill);background:var(--surface);height:420svh;color:var(--ink);position:relative}.rack-stage{height:100svh;padding:0 var(--gutter);place-content:center;display:grid;position:sticky;top:0;overflow:hidden}.rack-glow{opacity:0;filter:blur(70px);pointer-events:none;border-radius:50%;position:absolute}.rack-glow--a{background:var(--bloom-cornflower);width:50vmax;height:50vmax;top:10vh;left:-10vmax}.rack-glow--b{background:var(--bloom-navy);width:40vmax;height:40vmax;bottom:-5vh;right:-8vmax}.rack-lines{text-align:center;margin:0;padding:0;list-style:none;position:relative}.rack-line{text-transform:none;will-change:filter, opacity;font-size:clamp(36px,6vw,88px);line-height:1.05}.rack--static{height:auto}.rack--static .rack-glow{display:none}.rack--static .rack-stage{min-height:100svh;position:static}.ask{min-height:100svh;padding:var(--space-9) var(--gutter);--ink:var(--on-accent);--surface:var(--accent-fill);background:var(--surface);color:var(--ink);align-items:center;display:grid}.ask-inner{width:min(100%,1000px);margin:0 auto}.ask-form{border-bottom:2px solid var(--ink);display:flex}.ask-form:focus-within{border-bottom-style:dashed}.ask-form input{min-width:0;padding:0 0 var(--space-2);color:var(--ink);font:var(--weight-heading) clamp(32px, 4.4vw, 60px) / 1.1 var(--font-display);background:0 0;border:0;outline:none;flex:1}.ask-form input::placeholder{color:var(--ink);opacity:.4}.ask-tries{gap:0 var(--space-4);margin:var(--space-2) 0 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}.ask-tries button{min-height:var(--target);color:var(--ink);font:inherit;text-transform:inherit;letter-spacing:inherit;opacity:.7;cursor:pointer;background:0 0;border:0;padding:0}.ask-tries button:hover{opacity:1;text-underline-offset:3px;text-decoration:underline}.ask-tries button:focus-visible{opacity:1;outline:2px solid var(--ink);outline-offset:2px}.ask-q{margin:0 0 var(--space-4);font:var(--weight-heading) var(--text-body) / var(--leading-heading) var(--font-display);opacity:.7;transform-origin:0 0;animation:ask-q-out var(--dur-slow) var(--ease-out) both}@keyframes ask-q-out{0%{transform:scale(var(--from,1));opacity:1}}.ask-a{max-width:28ch;font:var(--weight-heading) clamp(28px, 3.4vw, 46px) / 1.25 var(--font-display);margin:0}.ask-word{white-space:pre;animation:ask-word var(--dur-slow) var(--ease-out) both;display:inline-block}@keyframes ask-word{0%{opacity:0;transform:translateY(.3em)}}@media (prefers-reduced-motion:reduce){.ask-word,.ask-q{animation:none}}.ask-next{align-items:center;gap:var(--space-5);margin-top:var(--space-6);flex-wrap:wrap;display:flex}.ask-again{min-height:var(--target);color:var(--ink);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.ask-again:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.handoff{--ink:var(--on-accent);--surface:var(--accent-fill);background:var(--surface);height:220svh;color:var(--ink)}.handoff-stage{align-content:center;justify-items:center;gap:var(--space-5);height:100svh;padding:0 var(--gutter);text-align:center;display:grid;position:sticky;top:0}.handoff--static{height:auto}.handoff--static .handoff-stage{min-height:100svh;position:static}.handoff-lead{max-width:40ch;font-size:var(--text-body);line-height:var(--leading-body);margin:0}.handoff-actions{justify-content:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.btn--ink,.btn--outline{min-height:var(--target);padding:0 var(--space-5);border:1.5px solid var(--ink);font:500 15px/1 var(--font-body);transition:transform var(--dur-fast) var(--ease-out), background var(--dur-base) var(--ease-out), color var(--dur-base) var(--ease-out);border-radius:999px;align-items:center;text-decoration:none;display:inline-flex}.btn--ink{background:var(--ink);color:var(--surface)}.btn--outline{color:var(--ink);background:0 0}.btn--outline:hover{background:var(--ink);color:var(--surface)}.btn--ink:hover,.btn--outline:hover{transform:translateY(-2px)}.handoff :focus-visible{outline-color:var(--ink)}.handoff-label{font:var(--weight-heading) var(--text-body) / var(--leading-heading) var(--font-display);opacity:.8;margin:0}.next{--ink:var(--on-accent);--surface:var(--accent-fill);align-content:center;justify-items:center;gap:var(--space-5);min-height:100svh;padding:calc(20svh + var(--space-5)) var(--gutter) var(--space-9);background:var(--surface);color:var(--ink);text-align:center;margin-bottom:-1px;display:grid;position:relative;overflow:hidden}.next>:not(.next-glows){position:relative}.next-glows{pointer-events:none;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 25% 75%,#0000);mask-image:linear-gradient(#0000,#000 25% 75%,#0000)}.next-glows-grow{position:absolute;inset:0}.next-glow{filter:blur(70px);border-radius:50%;position:absolute}.next-glow--a{background:var(--bloom-cornflower);width:50vmax;height:50vmax;top:5%;right:-12vmax}.next-glow--b{background:var(--bloom-navy);width:40vmax;height:40vmax;bottom:0;left:-8vmax}.next-text{max-width:34ch;font-family:var(--font-display);font-size:var(--text-h2);line-height:var(--leading-heading);margin:0}.next :focus-visible{outline-color:var(--ink)}@media (width<=760px){.next-text{font-size:var(--text-body);line-height:var(--leading-body)}}.close-cross{width:var(--space-8);height:var(--space-8);padding:var(--space-3);margin-right:calc(var(--space-3) * -1);color:var(--accent);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;display:grid}.close-cross svg{width:100%;height:100%;overflow:visible}.close-cross path{fill:none;stroke:currentColor;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.close-cross:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.dish-menu{margin:var(--space-8) 0 var(--space-5)}.dish-menu-title{margin:0 0 var(--space-4);color:var(--accent);font-weight:400}.dish-list{border-top:1px solid var(--accent);margin:0;padding:0;list-style:none}.dish{border-bottom:1px solid var(--accent)}.dish-row{grid-template-columns:var(--space-7) 1fr;width:100%;min-height:44px;padding:var(--space-3) 0;color:var(--accent);text-align:left;cursor:pointer;background:0 0;border:0;align-items:baseline;text-decoration:none;display:grid}.dish-name{--band:calc(50% - .23em);font-family:var(--font-display);font-weight:700;font-size:var(--text-h2);line-height:var(--leading-heading);letter-spacing:-.03em;justify-self:start;position:relative}.dish-name:before,.dish-name:after{pointer-events:none;clip-path:inset(var(--band) 100% var(--band) 0);position:absolute;inset:0}.dish-name:before{content:"";background:currentColor}.dish-name:after{content:attr(data-label);color:var(--bg)}.dish-row[data-strike=in] .dish-name:before,.dish-row[data-strike=in] .dish-name:after{animation:.4s cubic-bezier(.25,1,.5,1) forwards dish-strike-in}.dish-row[data-strike=out] .dish-name:before,.dish-row[data-strike=out] .dish-name:after{animation:.4s cubic-bezier(.25,1,.5,1) forwards dish-strike-out}@keyframes dish-strike-in{0%{clip-path:inset(var(--band) 100% var(--band) 0)}to{clip-path:inset(var(--band) 0 var(--band) 0)}}@keyframes dish-strike-out{0%{clip-path:inset(var(--band) 0 var(--band) 0)}to{clip-path:inset(var(--band) 0 var(--band) 100%)}}.dish-row:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.dish-float{z-index:40;pointer-events:none;width:0;height:0;position:fixed;top:0;left:0}.dish-float-img{width:clamp(160px,15vw,230px);max-width:none;height:auto;transform:translate(var(--space-5), -50%) scale(.92);opacity:0;transition:opacity var(--dur-base) var(--ease-out), transform var(--dur-slow) var(--ease-out);position:absolute}.dish-float-img[data-on]{opacity:1;transform:translate(var(--space-5), -50%) scale(1)}@media (prefers-reduced-motion:reduce){.dish-row[data-strike] .dish-name:before,.dish-row[data-strike] .dish-name:after{animation-duration:1ms}.dish-float-img{transition:opacity var(--dur-fast) linear;transform:translate(var(--space-5), -50%)}}.flex-carousel{cursor:grab;touch-action:pan-y;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;overscroll-behavior:contain;width:100%;height:100%;color:var(--accent);outline:none;position:relative;overflow:hidden}.flex-carousel[data-hover=open]{cursor:zoom-in}.flex-carousel[data-hover=close]{cursor:zoom-out}.flex-carousel[data-dragging]{cursor:grabbing}.flex-carousel:focus-visible{box-shadow:inset 0 0 0 2px var(--accent)}.flex-carousel__caption{left:0;right:0;top:calc(50% + var(--flex-carousel-half) * var(--flex-carousel-lift,1) + var(--space-4));align-items:center;gap:var(--space-1);padding:0 var(--space-4);pointer-events:none;text-align:center;animation:flex-carousel-reveal .9s var(--ease-out) both;flex-direction:column;display:flex;position:absolute}.flex-carousel__title{max-width:100%;font-family:var(--font-display);font-weight:700;font-size:var(--text-body);line-height:var(--leading-heading);animation:flex-carousel-title .52s var(--ease-out);flex-direction:column;align-items:center;display:flex}.flex-carousel__subtitle{font-family:var(--font-body);opacity:.7;font-size:14px;font-weight:400}.flex-carousel__count{font-family:var(--font-mono);font-variant-numeric:tabular-nums;opacity:.7;align-items:center;gap:3px;font-size:12px;line-height:1;transition:opacity .4s;display:inline-flex}.flex-carousel__count[data-hidden]{opacity:0}.flex-carousel__digits{display:inline-flex}.flex-carousel__digit{height:1em;display:inline-block;overflow:hidden}.flex-carousel__reel{transition:transform .6s var(--ease-out);flex-direction:column;display:flex}.flex-carousel__reel span{height:1em}.flex-carousel__slash{opacity:.6}.flex-carousel__live{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes flex-carousel-title{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes flex-carousel-reveal{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.flex-carousel__caption,.flex-carousel__title{animation:none}.flex-carousel__reel{transition:none}}.world-cup{margin:var(--space-7) 0 var(--space-5)}.world-cup-reel{width:min(980px, calc(100vw - var(--index-w) - var(--gutter) * 4));height:460px;margin-left:50%;position:relative;translate:-50%}@media (width<=760px){.world-cup-reel{width:100%;height:380px;margin-left:0;translate:none}}.pp{margin:var(--space-6) 0 var(--space-5);color:var(--accent)}.pp-tabs{gap:var(--space-2) var(--space-5);margin-bottom:var(--space-5);flex-wrap:wrap;display:flex}.pp-tab{color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.pp-tab-name,.pp-row-title{--band:calc(50% - .23em);font-family:var(--font-display);letter-spacing:-.03em;font-weight:700;display:inline-block;position:relative}.pp-tab-name{font-size:var(--text-h2);line-height:var(--leading-heading);opacity:.55;transition:opacity var(--dur-base) var(--ease-out)}.pp-tab[aria-selected=true] .pp-tab-name,.pp-tab:hover .pp-tab-name,.pp-tab:focus-visible .pp-tab-name{opacity:1}.pp-tab-name:before,.pp-tab-name:after,.pp-row-title:before,.pp-row-title:after{pointer-events:none;clip-path:inset(var(--band) 100% var(--band) 0);transition:clip-path .4s cubic-bezier(.25,1,.5,1);position:absolute;inset:0}.pp-tab-name:before,.pp-row-title:before{content:"";background:currentColor}.pp-tab-name:after,.pp-row-title:after{content:attr(data-label);color:var(--bg)}.pp-tab:hover .pp-tab-name:before,.pp-tab:hover .pp-tab-name:after,.pp-tab:focus-visible .pp-tab-name:before,.pp-tab:focus-visible .pp-tab-name:after,.pp-tab[aria-selected=true] .pp-tab-name:before,.pp-tab[aria-selected=true] .pp-tab-name:after,.pp-row:hover .pp-row-title:before,.pp-row:hover .pp-row-title:after,.pp-row:focus-visible .pp-row-title:before,.pp-row:focus-visible .pp-row-title:after,.pp-row[aria-current=true] .pp-row-title:before,.pp-row[aria-current=true] .pp-row-title:after{clip-path:inset(var(--band) 0 var(--band) 0)}.pp-tab:focus-visible,.pp-row:focus-visible,.pp-btn:focus-visible,.pp-play:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.pp-now{gap:var(--space-5);grid-template-columns:minmax(120px,200px) 1fr;align-items:end;display:grid}.pp-art{aspect-ratio:1;object-fit:cover;width:100%;height:auto;display:block}.pp-title{margin:0 0 var(--space-1);font-size:var(--text-h2);line-height:var(--leading-heading);text-transform:none}.pp-artist{font-size:var(--text-body);line-height:var(--leading-body);margin:0}.pp-bar{margin-top:var(--space-5)}.pp-seek{appearance:none;cursor:pointer;width:100%;height:20px;color:var(--accent);background:0 0;margin:0;display:block}.pp-seek::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--accent) var(--pp-progress,0%), color-mix(in srgb, var(--accent) 30%, transparent) 0);height:1px}.pp-seek::-moz-range-track{background:color-mix(in srgb, var(--accent) 30%, transparent);height:1px}.pp-seek::-moz-range-progress{background:var(--accent);height:1px}.pp-seek::-webkit-slider-thumb{-webkit-appearance:none;background:var(--accent);border:0;border-radius:50%;width:10px;height:10px;margin-top:-5px}.pp-seek::-moz-range-thumb{background:var(--accent);border:0;border-radius:50%;width:10px;height:10px}.pp-seek:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.pp-times{margin-top:var(--space-1);justify-content:space-between;display:flex}.pp-controls{justify-content:center;align-items:center;gap:var(--space-6);margin:var(--space-4) 0 var(--space-6);display:flex}.pp-btn,.pp-play{color:var(--accent);cursor:pointer;transition:background var(--dur-base) var(--ease-out), color var(--dur-base) var(--ease-out);background:0 0;border:1.5px solid;border-radius:50%;place-items:center;display:grid}.pp-btn{border-color:#0000;width:44px;height:44px}.pp-play{width:64px;height:64px}.pp-btn:hover,.pp-play:hover{background:var(--accent);color:var(--bg)}.pp-icon{width:26px;height:26px}.pp-icon path{stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round}.pp-list{border-top:1px solid var(--accent);margin:0;padding:0;list-style:none}.pp-list li{border-bottom:1px solid var(--accent)}.pp-row{grid-template-columns:var(--space-7) 1fr auto;align-items:baseline;gap:var(--space-3);width:100%;min-height:44px;padding:var(--space-3) 0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;display:grid}.pp-row-title{font-size:var(--text-body);line-height:var(--leading-heading);justify-self:start}.pp-row-artist{opacity:.7;font-size:14px}.pp-more{margin:var(--space-3) 0 0;padding:var(--space-2) 0;color:inherit;text-underline-offset:4px;cursor:pointer;background:0 0;border:0;text-decoration:underline;display:block}.pp-more:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.pp-foot{margin:var(--space-4) 0 0}.pp-foot a{color:inherit}@media (width<=760px){.pp-now{grid-template-columns:1fr}.pp-art{max-width:240px}.pp-row{grid-template-columns:var(--space-6) 1fr}.pp-row-artist{grid-column:2}}@media (prefers-reduced-motion:reduce){.pp-tab-name:before,.pp-tab-name:after,.pp-row-title:before,.pp-row-title:after{transition-duration:1ms}}.skills{margin:var(--space-6) 0 var(--space-5);border-top:1px solid var(--accent);color:var(--accent);padding:0;list-style:none}.skills-group{grid-template-columns:var(--space-7) 1fr;padding:var(--space-6) 0;border-bottom:1px solid var(--accent);align-items:baseline;gap:0;display:grid}.skills-name{font-family:var(--font-display);font-weight:var(--weight-heading);font-size:var(--text-h2);line-height:var(--leading-heading);letter-spacing:-.03em;margin:0}.skills-items{gap:var(--space-2);max-width:var(--reading);margin:var(--space-4) 0 0;font-size:var(--text-body);line-height:var(--leading-heading);grid-column:2;padding:0;list-style:none;display:grid}.skills-items:not(.skills-items--tags) li{padding-left:var(--space-5);position:relative}.skills-items:not(.skills-items--tags) li:before{content:"";width:var(--space-2);height:var(--space-2);background:currentColor;position:absolute;top:.45em;left:0}.skills-items--tags{gap:var(--space-2);flex-wrap:wrap;display:flex}.skills-items--tags li{padding:var(--space-1) var(--space-3);border:1px solid;border-radius:999px}.book3d{--w:190px;--h:268px;--d:24px;width:var(--w);height:calc(var(--h) + 70px);margin:var(--space-5) auto var(--space-3);perspective:900px;position:relative}.book3d-float,.book3d-tilt,.book3d-spin{width:var(--w);height:var(--h);transform-style:preserve-3d;position:absolute;top:20px;left:0}.book3d-float{animation:5s ease-in-out infinite book-bob}.book3d-tilt{top:0;transform:rotateX(-9deg)}.book3d-spin{animation:16s linear infinite book-turn;top:0}.book3d:hover .book3d-spin,.book3d:hover .book3d-float,.book3d:hover .book3d-shadow{animation-play-state:paused}.book3d-face{backface-visibility:hidden;display:block;position:absolute}.book3d-front{width:var(--w);height:var(--h);object-fit:cover;transform:translateZ(calc(var(--d) / 2));border-radius:0 3px 3px 0}.book3d-back{width:var(--w);height:var(--h);object-fit:cover;transform:rotateY(180deg) translateZ(calc(var(--d) / 2))}.book3d-spine{left:calc(50% - var(--d) / 2);width:var(--d);height:var(--h);object-fit:cover;transform:rotateY(-90deg) translateZ(calc(var(--w) / 2))}.book3d-pages{background:repeating-linear-gradient(#f4f1ea 0 2px,#e2ded4 2px 3px)}.book3d-right{left:calc(50% - var(--d) / 2);width:var(--d);height:var(--h);transform:rotateY(90deg) translateZ(calc(var(--w) / 2 - 2px))}.book3d-top,.book3d-bottom{width:var(--w);height:var(--d);top:calc(50% - var(--d) / 2);background:repeating-linear-gradient(90deg,#f4f1ea 0 2px,#e2ded4 2px 3px)}.book3d-top{transform:rotateX(90deg) translateZ(calc(var(--h) / 2 - 2px))}.book3d-bottom{transform:rotateX(-90deg) translateZ(calc(var(--h) / 2 - 2px))}.book3d-shadow{width:var(--w);height:18px;margin-left:calc(var(--w) / -2);filter:blur(12px);background:#00000047;border-radius:50%;animation:5s ease-in-out infinite book-shadow;position:absolute;bottom:0;left:50%}@keyframes book-turn{to{transform:rotateY(360deg)}}@keyframes book-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes book-shadow{0%,to{opacity:.9;transform:scale(1)}50%{opacity:.6;transform:scale(.82)}}@media (prefers-reduced-motion:reduce){.book3d-float,.book3d-shadow{animation:none}.book3d-spin{animation:none;transform:rotateY(-32deg)}}.artifacts{margin:var(--space-7) 0 var(--space-5);color:var(--accent)}.artifacts-title{margin:0 0 var(--space-5);font-size:var(--text-h2);line-height:var(--leading-heading);text-transform:none}.artifacts-list{border-top:1px solid var(--accent);margin:0;padding:0;list-style:none}.artifact{padding:var(--space-4) 0 var(--space-5);border-bottom:1px solid var(--accent)}.artifact-head{grid-template-columns:var(--space-7) 1fr;margin:0 0 var(--space-4);align-items:baseline;display:grid}.artifact-num{grid-row:1/span 2}.artifact-name{font-family:var(--font-display);font-weight:700;font-size:var(--text-body);line-height:var(--leading-heading);letter-spacing:-.01em}.artifact-detail{opacity:.7;grid-column:2;font-size:14px}.artifact-img{width:auto;max-width:min(100%,280px);height:auto;max-height:340px;margin:0 auto;display:block}.mapfig{--figure-mode:arrows;width:min(980px, calc(100vw - var(--index-w) - var(--gutter) * 4));margin:var(--space-6) 0 var(--space-5);color:var(--accent);margin-left:50%;position:relative;translate:-50%}.mapfig-media{width:min(480px,100% - 440px);margin:0 auto;position:relative}.mapfig-media img{width:100%;height:auto;display:block}.mapfig-media svg{width:100%;height:100%;position:absolute;inset:0}.mapfig-label{column-gap:var(--space-2);grid-template-columns:auto 1fr;grid-template-areas:"num name"".note";align-items:baseline;width:200px;display:grid;position:absolute;top:26%;right:0}.mapfig-num{grid-area:num;line-height:1}.mapfig-name{font-family:var(--font-display);font-weight:700;font-size:var(--text-body);line-height:var(--leading-heading);letter-spacing:-.01em;grid-area:name}.mapfig-note{grid-area:note;font-size:14px;line-height:1.35}.mapfig-line{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1px}.mapfig-circle{stroke:var(--accent)}.mapfig-arrow{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.mapfig-blue{stroke:var(--accent)}.mapfig-stem.mapfig-blue,.mapfig-head.mapfig-blue{stroke-width:1.2px}.mapfig[data-seen] .mapfig-circle{animation:mapfig-draw 1s var(--ease-out) .2s forwards}.mapfig[data-seen] .mapfig-stem{animation:mapfig-draw .8s var(--ease-out) 1s forwards}.mapfig[data-seen] .mapfig-head{animation:mapfig-draw .25s var(--ease-out) 1.75s forwards}@keyframes mapfig-draw{to{stroke-dashoffset:0}}@media (width<=760px){.mapfig{--figure-mode:list;width:100%;margin-left:0;translate:none}.mapfig-media{width:min(100%,420px)}.mapfig-arrow{display:none}.mapfig-label{width:auto;margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--accent);grid-template-columns:var(--space-6) 1fr;position:static}}@media (prefers-reduced-motion:reduce){.mapfig-line{stroke-dashoffset:0}.mapfig[data-seen] .mapfig-line{animation:none}}.lp-shell{background:var(--bg);height:100svh;overflow:hidden}.lp{overscroll-behavior:contain;scrollbar-width:none;height:100%;padding:20svh var(--gutter) var(--space-9);color:var(--accent);-webkit-mask-image:linear-gradient(to bottom, transparent 0, transparent 12svh, #000 20svh, #000 calc(100% - var(--space-8)), transparent 100%);-webkit-mask-image:linear-gradient(to bottom, transparent 0, transparent 12svh, #000 20svh, #000 calc(100% - var(--space-8)), transparent 100%);mask-image:linear-gradient(to bottom, transparent 0, transparent 12svh, #000 20svh, #000 calc(100% - var(--space-8)), transparent 100%);place-items:start center;display:grid;overflow-y:auto}.lp::-webkit-scrollbar{display:none}.lp:focus{outline:none}.lp-column{width:min(100%, var(--reading))}.lp-title,.lp-sub{text-transform:none}.lp-head{justify-content:space-between;align-items:center;gap:var(--space-5);margin:0 0 var(--space-7);display:flex}.lp-title{font-size:var(--text-h1);line-height:var(--leading-heading);color:var(--accent);margin:0}.lp-sub{margin:0 0 var(--space-4);font-size:var(--text-h2);line-height:var(--leading-heading);color:var(--accent)}.lp-text{margin:0 0 var(--space-5);text-align:justify;font-size:var(--text-body);line-height:var(--leading-body)}@media (width>=761px){.lp{padding-left:calc(var(--index-w) + var(--gutter) * 2)}}.lp-figure{margin:var(--space-7) 0 var(--space-5);text-align:center}.lp-figure img{width:min(100%,280px);height:auto;margin:0 auto var(--space-3)}.dish-figure{--label-w:clamp(150px, 15vw, 210px);--figure-mode:arrows;width:min(980px, calc(100vw - var(--index-w) - var(--gutter) * 4));margin:0 0 var(--space-6);color:var(--accent);margin-left:50%;position:relative;translate:-50%}.dish-figure-media{width:min(320px, calc(340px * var(--ratio,1)), calc(100% - var(--label-w) * 2 - var(--space-8) * 2));margin:0 auto;position:relative}.dish-figure-img{width:100%;height:auto;display:block}.dish-figure-labels{margin:0;padding:0;list-style:none}.dish-figure-label{width:var(--label-w);column-gap:var(--space-2);grid-template-columns:auto 1fr;grid-template-areas:"num name"".note";align-items:baseline;display:grid;position:absolute}.dish-figure-label[data-side=left]{text-align:right;grid-template-columns:1fr auto;grid-template-areas:"name num""note.";left:0}.dish-figure-label[data-side=right]{right:0}.dish-figure-num{grid-area:num}.dish-figure-name{grid-area:name}.dish-figure-note{grid-area:note}.dish-figure-name{font-family:var(--font-display);font-weight:700;font-size:var(--text-body);line-height:var(--leading-heading);letter-spacing:-.01em}.dish-figure-note{font-size:14px;line-height:1.35}.dish-figure-num{line-height:1}.dish-figure-arrows{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.dish-figure-arrows path{fill:none;stroke:var(--accent);stroke-width:1px;stroke-linecap:round;stroke-linejoin:round}.dish-figure-line{stroke-dasharray:var(--len);stroke-dashoffset:var(--len);animation:dish-arrow-draw .6s var(--ease-out) forwards;animation-delay:calc(.5s + var(--i) * 80ms)}.dish-figure-head{opacity:0;animation:dish-arrow-tip var(--dur-fast) linear forwards;animation-delay:calc(1s + var(--i) * 80ms)}@keyframes dish-arrow-draw{to{stroke-dashoffset:0}}@keyframes dish-arrow-tip{to{opacity:1}}.dish-figure-pin{display:none}@media (width<=760px){.dish-figure{--figure-mode:list;width:100%;margin-left:0;translate:none}.dish-figure-media{width:min(100%, 280px, calc(300px * var(--ratio,1)))}.dish-figure-arrows{display:none}.dish-figure-pin{background:var(--accent);width:22px;height:22px;color:var(--on-accent);border-radius:50%;place-items:center;font-size:11px;display:grid;position:absolute;translate:-50% -50%}.dish-figure-labels{margin-top:var(--space-5);border-top:1px solid var(--accent)}.dish-figure-label,.dish-figure-label[data-side=left]{text-align:left;grid-template-columns:var(--space-6) 1fr;width:auto;padding:var(--space-3) 0;border-bottom:1px solid var(--accent);grid-template-areas:"num name"".note";position:static}}@media (prefers-reduced-motion:reduce){.dish-figure-line,.dish-figure-head{stroke-dashoffset:0;opacity:1;animation:none}}.lp-title.dish-title{font-size:var(--text-h2)}.nf{--ink:var(--accent);--surface:var(--bg);min-height:100svh;padding:var(--space-9) var(--gutter);background:var(--bg);color:var(--accent);text-align:center;place-items:center;display:grid;position:relative;overflow:hidden}.nf-sea{margin-bottom:var(--space-6);pointer-events:none;place-items:center;display:grid;position:relative}.nf-ripples{z-index:-1;fill:none;width:min(110vmin,900px);height:auto;stroke:var(--bloom-powder);stroke-width:1px;vector-effect:non-scaling-stroke;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.nf-ripples path{opacity:.12;animation:3.5s ease-in-out infinite nf-ripple}@keyframes nf-ripple{50%{opacity:.4}}.nf-drop{width:clamp(72px,12vmin,120px);height:auto}.nf-drop-shadow{fill:var(--bloom-navy)}.nf-drop-body{fill:var(--accent-fill)}.nf-text{z-index:0;justify-items:center;gap:var(--space-3);display:grid;position:relative}.nf-code,.nf-title,.nf-sub{margin:0}.nf-title{font-family:var(--font-display);font-weight:var(--weight-heading);font-size:var(--text-h1);line-height:var(--leading-heading);letter-spacing:-.03em}.nf-sub{max-width:34ch;font-size:var(--text-body);line-height:var(--leading-body)}.nf :focus-visible{outline-color:var(--ink)}@media (prefers-reduced-motion:reduce){.nf-ripples path{animation:none}}
