@font-face{font-family:"Instrument Serif";font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/instrument-serif-latin-ext-400-normal.C2je3j2s.woff2) format("woff2"),url(/_astro/instrument-serif-latin-ext-400-normal.CFCUzsTy.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:"Instrument Serif";font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/instrument-serif-latin-400-normal.DnYpCC2O.woff2) format("woff2"),url(/_astro/instrument-serif-latin-400-normal.BVbkICAY.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Instrument Serif";font-style:italic;font-display:swap;font-weight:400;src:url(/_astro/instrument-serif-latin-ext-400-italic.C9HzH3YL.woff2) format("woff2"),url(/_astro/instrument-serif-latin-ext-400-italic.D7-lnxEk.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:"Instrument Serif";font-style:italic;font-display:swap;font-weight:400;src:url(/_astro/instrument-serif-latin-400-italic.DKMiL14s.woff2) format("woff2"),url(/_astro/instrument-serif-latin-400-italic.u__WvvIK.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/space-mono-vietnamese-400-normal.BNOj0Qhp.woff2) format("woff2"),url(/_astro/space-mono-vietnamese-400-normal.B0PMp_xB.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/space-mono-latin-ext-400-normal.DTLbW2xa.woff2) format("woff2"),url(/_astro/space-mono-latin-ext-400-normal.D4cJI_B-.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Space Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/space-mono-latin-400-normal.Rg4St2Dn.woff2) format("woff2"),url(/_astro/space-mono-latin-400-normal._3DlpgIW.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Mono;font-style:italic;font-display:swap;font-weight:400;src:url(/_astro/space-mono-vietnamese-400-italic.CyQIvI4V.woff2) format("woff2"),url(/_astro/space-mono-vietnamese-400-italic.DvlTUS1j.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Mono;font-style:italic;font-display:swap;font-weight:400;src:url(/_astro/space-mono-latin-ext-400-italic.x3PrlAeq.woff2) format("woff2"),url(/_astro/space-mono-latin-ext-400-italic.DYA_DB_l.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Space Mono;font-style:italic;font-display:swap;font-weight:400;src:url(/_astro/space-mono-latin-400-italic.YylcN9Ay.woff2) format("woff2"),url(/_astro/space-mono-latin-400-italic.zmx7Qf09.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/space-mono-vietnamese-700-normal.DWQgDHuA.woff2) format("woff2"),url(/_astro/space-mono-vietnamese-700-normal.D-KrLuLr.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/space-mono-latin-ext-700-normal.B2s3bDs2.woff2) format("woff2"),url(/_astro/space-mono-latin-ext-700-normal.B_E7P90g.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Space Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/space-mono-latin-700-normal.mWgeinG7.woff2) format("woff2"),url(/_astro/space-mono-latin-700-normal.D7A851RN.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #1a1320;--ink: #e9e6df;--bg-soft: color-mix(in srgb, var(--ink) 6%, var(--bg));--ink-dim: color-mix(in srgb, var(--ink) 72%, var(--bg));--ink-faint: color-mix(in srgb, var(--ink) 58%, var(--bg));--line: color-mix(in srgb, var(--ink) 14%, transparent);--blink-bg: var(--bg);--accent: oklch(.72 .13 300);--fog: #e9e6df;--fog-amt: .3;--blend-ink: var(--ink);--grain-blend: screen;color-scheme:dark;--serif: "Instrument Serif", Georgia, serif;--mono: "Space Mono", ui-monospace, monospace;--pad: clamp(20px, 4vw, 64px);--ease: cubic-bezier(.16, 1, .3, 1);--hero-fade-in: 55%;--hero-fade-out: 115%}:root[data-theme=light]{--bg: #ffffff;--ink: #1f3346;--blink-bg: var(--ink);--accent: oklch(.72 .13 56);--fog: #4080bb;--fog-amt: 1;--vig: .1;--blend-ink: #fff;--grain-blend: multiply;--ink-dim: color-mix(in srgb, var(--ink) 90%, var(--bg));--ink-faint: color-mix(in srgb, var(--ink) 80%, var(--bg));color-scheme:light;--hero-fade-in: 80%;--hero-fade-out: 130%}:root[data-theme=light] .header{color:color-mix(in srgb,var(--blend-ink) 85%,var(--ink))}:root[data-theme=light] .footer__bottom{color:var(--ink)}:root[data-theme=light] .cursor{background:color-mix(in srgb,var(--blend-ink) 70%,var(--ink));mix-blend-mode:difference}*{margin:0;padding:0;box-sizing:border-box}html{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;background:var(--bg);background:radial-gradient(120% 85% at 18% 20%,color-mix(in srgb,var(--fog) calc(var(--fog-amt) * 55%),transparent),transparent 62%),radial-gradient(110% 75% at 82% 60%,color-mix(in srgb,var(--fog) calc(var(--fog-amt) * 40%),transparent),transparent 60%),color-mix(in srgb,var(--fog) calc(var(--fog-amt) * 30%),var(--bg));scrollbar-width:none}html::-webkit-scrollbar{display:none}body{background:transparent;color:var(--ink);font-family:var(--mono);font-size:14px;line-height:1.5;overflow-x:hidden;cursor:none}#glbg{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;display:block}main,.header,.footer{position:relative;z-index:1}.page-wipe{position:fixed;inset:0;z-index:9300;background:var(--bg);transform:scaleY(1);transform-origin:top center;pointer-events:none;will-change:transform;animation:wipeReveal .9s cubic-bezier(.16,1,.3,1) forwards}.page-wipe.is-covering{transform-origin:bottom center;pointer-events:auto;animation:wipeCover .65s cubic-bezier(.16,1,.3,1) forwards}@keyframes wipeReveal{0%{transform:scaleY(1)}to{transform:scaleY(0)}}@keyframes wipeCover{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@media(prefers-reduced-motion:reduce){.page-wipe{display:none;animation:none}}@property --blink-r{syntax: "<length-percentage>"; inherits: false; initial-value: 150%;}.theme-blink{position:fixed;inset:0;z-index:9999;background:var(--blink-bg);pointer-events:none;--blink-r: 150%;-webkit-mask-image:radial-gradient(circle at center,transparent var(--blink-r),#000 calc(var(--blink-r) + 60%));mask-image:radial-gradient(circle at center,transparent var(--blink-r),#000 calc(var(--blink-r) + 60%))}.theme-blink.is-closing{animation:blinkClose .26s var(--ease) forwards}.theme-blink.is-opening{animation:blinkOpen .42s var(--ease) forwards}@keyframes blinkClose{0%{--blink-r: 150%}to{--blink-r: -60%}}@keyframes blinkOpen{0%{--blink-r: -60%}to{--blink-r: 150%}}@media(prefers-reduced-motion:reduce){.theme-blink{animation:none}}@view-transition{navigation:auto}html.vt .page-wipe{display:none}::view-transition-old(root){animation:vtHold .5s both}::view-transition-new(root){animation:vtRiseIn .5s var(--ease) both}@keyframes vtHold{0%,to{opacity:1}}@keyframes vtRiseIn{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media(prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none}}.scrollbar{position:fixed;inset:0 0 0 auto;width:10px;z-index:9100;pointer-events:none;opacity:0;transition:opacity .6s var(--ease)}.scrollbar.is-ready{opacity:1}.scrollbar.can-scroll{pointer-events:auto;touch-action:none}.menu-open .scrollbar{opacity:0;pointer-events:none}.scrollbar__thumb{position:absolute;top:0;right:4px;width:2px;height:40px;border-radius:2px;background:var(--ink-dim);will-change:transform,height}@media(prefers-reduced-motion:reduce){.scrollbar{transition:none}}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-stopped{overflow:hidden}::selection{background:var(--ink);color:var(--bg)}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.skip-link{position:fixed;top:8px;left:8px;z-index:9500;padding:8px 14px;background:var(--ink);color:var(--bg);font-family:var(--mono);font-size:12px;letter-spacing:.04em;text-transform:uppercase;transform:translateY(-150%)}.skip-link:focus-visible{transform:translateY(0)}.meta{font-family:var(--mono);font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-dim)}.paren{color:var(--ink-faint)}.grain{position:fixed;inset:-50%;width:200%;height:200%;pointer-events:none;z-index:9000;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:grainShift .6s steps(2) infinite;mix-blend-mode:var(--grain-blend)}@keyframes grainShift{0%{transform:translate(0)}50%{transform:translate(-3%,2%)}to{transform:translate(2%,-2%)}}.stars{display:none}:root:not([data-theme=light]) .stars{display:block;position:fixed;inset:0;z-index:0;pointer-events:none;--star: color-mix(in srgb, var(--ink) 90%, transparent)}:root:not([data-theme=light]) .stars:before,:root:not([data-theme=light]) .stars:after{content:"";position:absolute;inset:0}:root:not([data-theme=light]) .stars:before{background-image:radial-gradient(2px 2px at 20% 30%,var(--star),transparent),radial-gradient(1px 1px at 70% 60%,var(--star),transparent),radial-gradient(3px 3px at 40% 80%,var(--star),transparent),radial-gradient(2px 2px at 85% 15%,var(--star),transparent),radial-gradient(1px 1px at 55% 45%,var(--star),transparent);background-size:320px 320px;opacity:.5;animation:starTwinkle 6s ease-in-out infinite}:root:not([data-theme=light]) .stars:after{background-image:radial-gradient(3px 3px at 10% 70%,var(--star),transparent),radial-gradient(2px 2px at 60% 20%,var(--star),transparent),radial-gradient(1px 1px at 90% 50%,var(--star),transparent),radial-gradient(3px 3px at 30% 10%,var(--star),transparent);background-size:400px 400px;opacity:.35;animation:starTwinkle 9s ease-in-out 2s infinite}@keyframes starTwinkle{0%,to{opacity:.15}50%{opacity:.55}}@media(prefers-reduced-motion:reduce){:root:not([data-theme=light]) .stars:before,:root:not([data-theme=light]) .stars:after{animation:none}}.cursor{position:fixed;top:0;left:0;width:8px;height:8px;border-radius:50%;background:var(--blend-ink);pointer-events:none;z-index:9500;transform:translate(-50%,-50%);transition:width .35s var(--ease),height .35s var(--ease),background .35s var(--ease),opacity .3s;mix-blend-mode:difference}.cursor.is-hover{width:56px;height:56px}.cursor-label{position:fixed;top:0;left:0;z-index:9501;font-family:var(--mono);font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);text-shadow:0 0 2px var(--bg),0 0 4px var(--bg);transform:translate(-50%,-50%);margin-top:2.4rem;pointer-events:none;opacity:0;transition:opacity .3s}@media(hover:none){body{cursor:auto}.cursor,.cursor-label{display:none}}.loader{position:fixed;inset:0;z-index:9999;background:var(--bg);display:flex;align-items:flex-end;justify-content:space-between;padding:var(--pad)}.loader__count{font-family:var(--serif);font-size:clamp(80px,22vw,320px);line-height:.8;color:var(--ink);font-feature-settings:"tnum"}.loader__label{text-align:right}.loader.is-done{pointer-events:none}html.loader-seen .loader{display:none}.header{position:fixed;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:clamp(16px,2.4vw,28px) var(--pad);z-index:8000;mix-blend-mode:difference;color:var(--blend-ink);transition:opacity .4s var(--ease)}.header__mark{font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase}.header__nav{display:flex;align-items:baseline;gap:28px}.header__nav a,.header__nav .lang-switch{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;position:relative;padding-bottom:2px}.header__nav a:after,.header__nav .lang-switch:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .5s var(--ease)}.header__nav a:hover:after,.header__nav .lang-switch:hover:after{transform:scaleX(1);transform-origin:left}.theme-toggle,.lang-switch{background:none;border:0;padding:0;cursor:none;color:inherit}.theme-toggle{font-size:14px;line-height:1}.i18n-pending .header,.i18n-pending .nav-panel,.i18n-pending .footer{visibility:hidden}.nav-toggle,.nav-panel{display:none}@media(max-width:720px){.header__nav{display:none}.nav-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;width:28px;height:28px;padding:0;background:none;border:0;cursor:none;color:inherit;position:relative;z-index:1}.nav-toggle span{display:block;width:22px;height:2px;background:currentColor;transform-origin:center;transition:transform .4s var(--ease)}.nav-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.nav-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.nav-panel{display:flex;flex-direction:column;justify-content:center;gap:clamp(28px,6vh,56px);position:fixed;inset:0;z-index:7900;padding:var(--pad);background:var(--bg);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .5s var(--ease),visibility 0s linear .5s}.nav-panel.is-open{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .5s var(--ease)}.nav-panel__nav{display:flex;flex-direction:column;gap:clamp(16px,3.5vh,32px)}.nav-panel__nav a{font-family:var(--serif);font-size:clamp(40px,12vw,64px);line-height:1;letter-spacing:-.01em;color:var(--ink)}.nav-panel__controls{display:flex;align-items:baseline;gap:32px}.nav-panel__controls .theme-toggle,.nav-panel__controls .lang-switch{font-family:var(--mono);font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink)}.nav-panel__controls .theme-toggle{font-size:16px}}.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;padding:var(--pad);padding-bottom:clamp(24px,4vh,48px)}.hero__bg{position:absolute;inset:0;z-index:0;overflow:hidden}.hero__bg .placeholder{width:100%;height:100%;opacity:.5}.hero__bg:after{content:"";position:absolute;inset:0;background:radial-gradient(120% 80% at 50% 30%,transparent var(--hero-fade-in),var(--bg) var(--hero-fade-out))}.hero__inner{position:relative;z-index:2;width:100%;pointer-events:none}.hero__title{font-family:var(--serif);font-weight:400;font-size:clamp(64px,15.5vw,320px);line-height:.82;letter-spacing:-.01em;margin-bottom:clamp(16px,3vh,40px)}.hero__title .line{display:block;overflow:hidden;line-height:1.11}.hero__title .line:not(:last-child){margin-bottom:-.23em}.hero__title .line>span{display:inline-block;will-change:transform}.hero__canvas,.phero__canvas{position:absolute;inset:0;z-index:1;width:100%;height:100%;pointer-events:none}.hero__canvas.is-active,.phero__canvas.is-active{pointer-events:auto}.phero__index,.phero__sub,.pd-sub{position:relative;z-index:2}.phero__index,.phero__sub{pointer-events:none}.balloons-pending .hero__title,.balloons-pending .phero__title,.balloons-pending .pd-title{opacity:0;pointer-events:none}.hero__reset,.phero__reset{display:none;padding:0;border:0;background:transparent;color:var(--ink);font-size:14px;line-height:1;cursor:none}.hero__reset.is-active,.phero__reset.is-active{display:inline-block}@media(hover:none){.hero__reset,.phero__reset{cursor:auto}}.hero__role{font-family:var(--serif);font-style:italic;font-size:clamp(22px,4.2vw,64px);line-height:1;color:var(--ink);margin-left:.06em}.hero__foot{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-top:clamp(24px,5vh,64px);flex-wrap:wrap}.hero__meta{font-family:var(--mono);font-size:clamp(11px,1.05vw,14px);letter-spacing:.02em;color:var(--ink-dim);max-width:62ch}.hero__meta b{color:var(--ink);font-weight:400}.scroll-cue{display:flex;align-items:center;gap:10px;white-space:nowrap}.scroll-cue .dot{width:7px;height:7px;border-radius:50%;background:var(--accent);animation:pulse 2.4s var(--ease) infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.9);opacity:.4}}.statement{padding:clamp(120px,24vh,320px) var(--pad);display:flex;flex-direction:column;gap:clamp(40px,8vh,120px)}.statement__index{display:flex;gap:16px;align-items:center;color:var(--ink-dim)}.statement__index .rule{flex:1;height:1px;background:var(--line)}.statement__quote{font-family:var(--serif);font-weight:400;font-size:clamp(40px,8vw,150px);line-height:.96;letter-spacing:-.015em}.statement__quote .line{display:block;overflow:hidden;white-space:nowrap;line-height:1.11}.statement__quote .line:not(:last-child){margin-bottom:-.14em}.statement__quote .line>span{display:inline-block;will-change:transform}.statement__quote em{font-style:italic;color:var(--accent)}.statement__attr{align-self:flex-end;text-align:right;color:var(--ink-dim);max-width:30ch}.reel{padding:0 var(--pad) clamp(80px,16vh,200px)}.reel__head{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid var(--line);padding:22px 0 40px}.reel__head h2{font-family:var(--serif);font-size:clamp(26px,3.4vw,46px);font-weight:400}.reel__grid{display:grid;grid-template-columns:repeat(6,1fr);gap:clamp(8px,1vw,16px);grid-auto-rows:auto}.reel__tile{display:flex;flex-direction:column}.reel__tile-media{position:relative;overflow:hidden;cursor:none;background:var(--bg-soft);width:100%;aspect-ratio:16 / 9}.reel__tile-cap{display:block;padding-top:8px;cursor:none;color:var(--ink);text-decoration:none;transition:color .3s var(--ease)}.reel__tile-cap:hover{color:var(--accent)}.reel__tile .placeholder{width:100%;height:100%}.reel__tile .tile-no{position:absolute;top:10px;left:10px;z-index:3;font-family:var(--mono);font-size:10px;color:var(--blend-ink);mix-blend-mode:difference}.reel__tile.s2{grid-column:span 2}.reel__tile.s3{grid-column:span 3}.reel__tile img.placeholder,.reel__tile .ph-motion{transition:transform 1.1s var(--ease)}.reel__tile:hover .ph-motion{transform:scale(1.05)}.reel__cta{display:flex;justify-content:center;margin-top:clamp(40px,8vh,90px)}.reel__cta button{font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);background:none;border:1px solid var(--line);border-radius:100px;padding:16px 30px;cursor:none;transition:all .5s var(--ease);display:inline-flex;gap:12px;align-items:center}.reel__cta button:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}.reel__cta button .tri{width:0;height:0;border-left:7px solid currentColor;border-top:5px solid transparent;border-bottom:5px solid transparent}.showreel{position:fixed;inset:0;z-index:9200;background:#000;display:flex;flex-direction:column;opacity:0;visibility:hidden;transition:opacity .6s var(--ease),visibility .6s}.showreel.is-open{opacity:1;visibility:visible}.showreel__player{flex:1;position:relative;overflow:hidden}.showreel__player .placeholder{width:100%;height:100%}.showreel__video{width:100%;height:100%;object-fit:contain;display:block;background:#000}.showreel__bar{display:flex;justify-content:space-between;align-items:center;padding:18px var(--pad)}.showreel__close{background:none;border:none;color:var(--ink);cursor:none;font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase}.reel-open .header{opacity:0;pointer-events:none}.work{padding:clamp(80px,14vh,160px) var(--pad)}.work__list{border-top:1px solid var(--line)}.work__row{display:grid;grid-template-columns:48px 1fr auto auto;gap:24px;align-items:center;padding:clamp(20px,3vw,40px) 0;border-bottom:1px solid var(--line);position:relative;cursor:none}.work__row .idx{font-family:var(--mono);font-size:12px;color:var(--ink-faint)}.work__row .name{font-family:var(--serif);font-size:clamp(30px,5.4vw,84px);font-weight:400;line-height:.95;transition:transform .6s var(--ease),color .6s var(--ease);transform-origin:left;color:var(--ink-dim)}.work__row .cat{font-family:var(--mono);font-size:11px;text-transform:uppercase;color:var(--ink-dim);letter-spacing:.04em}.work__row .yr{font-family:var(--mono);font-size:11px;color:var(--ink-dim)}.work__row:hover .name{transform:translate(28px);color:var(--ink)}.work__row:hover .idx,.work__row:hover .cat,.work__row:hover .yr{color:var(--ink)}.work__preview{position:fixed;top:0;left:0;width:320px;height:220px;pointer-events:none;z-index:7000;overflow:hidden;transform:translate(-50%,-50%) scale(.85);opacity:0;transition:opacity .4s var(--ease),transform .4s var(--ease)}.work__preview .placeholder{width:100%;height:100%}.work__preview img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1}.work__preview.is-active{opacity:1}.footer{padding:clamp(60px,10vh,120px) 0 0}.footer__head{padding:0 var(--pad) 28px;display:flex;justify-content:space-between;align-items:baseline}.footer__head h2{font-family:var(--serif);font-weight:400;font-size:clamp(24px,3vw,40px)}.carousel{display:flex;gap:clamp(10px,1.4vw,22px);padding:0 var(--pad) 40px;overflow-x:auto;scroll-snap-type:x mandatory;cursor:none;scrollbar-width:none}.carousel::-webkit-scrollbar{display:none}.carousel__item{flex:0 0 clamp(220px,26vw,380px);scroll-snap-align:start}.carousel__media{aspect-ratio:4/5;overflow:hidden}.carousel__media .placeholder{width:100%;height:100%}.carousel__cap{display:flex;justify-content:space-between;margin-top:12px;color:var(--ink-dim);font-size:11px}.footer__grid{display:grid;grid-template-columns:repeat(12,1fr);gap:24px;padding:clamp(60px,10vh,120px) var(--pad) 40px;border-top:1px solid var(--line);align-items:end}.footer__contact{grid-column:span 6}.footer__contact .big{appearance:none;background:none;border:0;padding:0;margin:0;color:inherit;cursor:none;text-align:left;font-family:var(--serif);font-size:clamp(40px,8vw,140px);line-height:.9;font-weight:400}.footer__col{grid-column:span 2;display:flex;flex-direction:column;gap:8px}.footer__col h4{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-faint);margin-bottom:6px}.footer__col a,.footer__col span{font-size:12px;color:var(--ink-dim);transition:color .3s}.footer__col a:hover{color:var(--ink)}.footer__bottom{display:flex;justify-content:flex-end;padding:20px var(--pad) 28px;border-top:1px solid var(--line);color:var(--ink-faint);font-size:10px;text-transform:uppercase;letter-spacing:.06em;flex-wrap:wrap;gap:12px}.placeholder{position:relative;display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(45deg,color-mix(in srgb,var(--ink) 7%,var(--bg)) 0 10px,var(--bg) 10px 20px);overflow:hidden}.placeholder span{position:relative;z-index:2;font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint)}.placeholder.ph-motion:before{content:"";position:absolute;inset:-40%;background:conic-gradient(from 0deg,transparent,color-mix(in srgb,var(--ink) 7%,transparent),transparent 40%);animation:sweep 6s linear infinite}@keyframes sweep{to{transform:rotate(360deg)}}.phero{position:relative;padding:clamp(140px,22vh,260px) var(--pad) clamp(60px,10vh,120px);border-bottom:1px solid var(--line)}.phero__index{display:flex;gap:16px;align-items:center;color:var(--ink-dim);margin-bottom:clamp(28px,5vh,56px)}.phero__index .rule{flex:1;height:1px;background:var(--line)}.phero__title{font-family:var(--serif);font-weight:400;font-size:clamp(72px,17vw,300px);line-height:.82;letter-spacing:-.01em}.phero__title .line{display:block;overflow:hidden;line-height:1.11}.phero__title .line>span{display:inline-block;will-change:transform}.phero__sub{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-top:clamp(24px,4vh,48px);flex-wrap:wrap}.phero__lede{font-family:var(--serif);font-style:italic;font-size:clamp(20px,2.6vw,38px);line-height:1.15;max-width:22ch;color:var(--ink)}.about-intro{padding:clamp(100px,18vh,220px) var(--pad)}.about-intro__quote{font-family:var(--serif);font-weight:400;font-size:clamp(32px,5.2vw,88px);line-height:1.04;letter-spacing:-.015em}.about-intro__quote .line{display:block;overflow:hidden;padding-right:.08em;line-height:1.11}.about-intro__quote .line:not(:last-child){margin-bottom:-.06em}.about-intro__quote .line>span{display:inline-block;will-change:transform}.about-intro__quote em{font-style:italic;color:var(--accent)}.about-cols{display:grid;grid-template-columns:repeat(12,1fr);gap:24px;padding:0 var(--pad) clamp(80px,14vh,160px);align-items:start}.about-cols__label{grid-column:span 3}.about-cols__body{grid-column:4 / 11;display:flex;flex-direction:column;gap:22px}.about-cols__body p{font-size:clamp(15px,1.5vw,19px);line-height:1.55;color:var(--ink);max-width:80ch}.about-cols__body p .dim{color:var(--ink-dim)}.about-portrait{padding:0 var(--pad) clamp(80px,14vh,160px)}.about-portrait .frame{aspect-ratio:16/9;overflow:hidden}.about-portrait .frame .placeholder{width:100%;height:100%}.about-portrait .cap{display:flex;justify-content:space-between;margin-top:12px;color:var(--ink-dim)}.idx-list{border-top:1px solid var(--line);padding:0 var(--pad)}.idx-list__head{display:flex;justify-content:space-between;align-items:baseline;padding:22px 0 8px}.idx-list__head h2{font-family:var(--serif);font-weight:400;font-size:clamp(24px,3vw,42px)}summary.idx-list__head{cursor:pointer;list-style:none;justify-content:flex-start;gap:16px}summary.idx-list__head::-webkit-details-marker{display:none}summary.idx-list__head .meta{margin-left:auto}.fold-chev{flex:none;align-self:center;width:10px;height:10px;border-right:2px solid var(--ink-dim);border-bottom:2px solid var(--ink-dim);transform:rotate(-45deg);transition:transform .3s ease}details[open]>summary .fold-chev{transform:rotate(45deg)}details.idx-list{interpolate-size:allow-keywords}details.idx-list::details-content{block-size:0;overflow:clip;transition:block-size .5s var(--ease),content-visibility .5s allow-discrete}details.idx-list[open]::details-content{block-size:auto}@media(prefers-reduced-motion:reduce){details.idx-list::details-content{transition:none}}.idx-row{display:grid;grid-template-columns:56px 1fr auto;gap:24px;align-items:baseline;padding:clamp(16px,2.4vw,30px) 0;border-bottom:1px solid var(--line)}.idx-row .n{font-family:var(--mono);font-size:12px;color:var(--ink-faint)}.idx-row .t{font-family:var(--serif);font-size:clamp(22px,3.2vw,44px);font-weight:400;line-height:1}.idx-row .d{font-family:var(--mono);font-size:12px;color:var(--ink-dim);text-align:right;max-width:36ch}.tech{display:flex;gap:clamp(28px,5vw,64px);list-style:none;margin:clamp(20px,4vh,44px) 0 0;padding:8px 0 20px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;color:var(--ink);scrollbar-width:none}.tech::-webkit-scrollbar{display:none}.tech:focus-visible{outline:1px solid var(--accent);outline-offset:6px}.tech-scroll{position:relative;height:14px;opacity:0;pointer-events:none;transition:opacity .6s var(--ease)}.tech-scroll.is-ready{opacity:1;pointer-events:auto;touch-action:none}.tech-scroll__thumb{position:absolute;top:6px;left:0;height:2px;border-radius:2px;background:var(--ink-dim);will-change:transform,width}@media(prefers-reduced-motion:reduce){.tech-scroll{transition:none}}.tech__item{flex:0 0 auto;scroll-snap-align:start;display:flex;flex-direction:column;align-items:center;gap:12px}.tech__logo svg{display:block;width:clamp(40px,6vw,64px);height:auto;fill:currentColor}.tech__name{color:var(--ink-dim)}.work-filter{display:flex;gap:10px;flex-wrap:wrap;padding:clamp(28px,5vh,56px) var(--pad) 0}.work-filter button{font-family:var(--mono);font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-dim);background:none;border:1px solid var(--line);border-radius:100px;padding:9px 18px;cursor:none;transition:all .4s var(--ease)}.work-filter button:hover{color:var(--ink);border-color:var(--ink-dim)}.work-filter button.is-active{background:var(--ink);color:var(--bg);border-color:var(--ink)}.proj-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(24px,4vw,72px) clamp(20px,3vw,48px);padding:clamp(40px,7vh,90px) var(--pad) clamp(80px,14vh,160px)}.proj{cursor:none}.proj.is-wide{grid-column:span 2}.proj__media{position:relative;aspect-ratio:4/3;overflow:hidden}.proj.is-wide .proj__media{aspect-ratio:21/9}.proj__media .placeholder{width:100%;height:100%}.proj__media .ph-motion{transition:transform 1.1s var(--ease)}.proj:hover .proj__media .placeholder,.proj:hover .proj__media .media-img{transform:scale(1.04)}.proj__no{position:absolute;top:12px;left:12px;z-index:3;font-family:var(--mono);font-size:10px;mix-blend-mode:difference;color:var(--blend-ink)}.proj__meta{display:flex;justify-content:space-between;align-items:baseline;margin-top:16px;gap:16px}.proj__name{font-family:var(--serif);font-size:clamp(24px,2.8vw,42px);font-weight:400;line-height:1}.proj__cat{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-dim)}.proj__yr{font-family:var(--mono);font-size:11px;color:var(--ink-dim)}.proj.is-hidden{display:none}.arch{padding:clamp(40px,7vh,90px) var(--pad) clamp(60px,10vh,120px)}.arch__table{border-top:1px solid var(--ink)}.arch__row{display:grid;grid-template-columns:64px 1.4fr 1fr .8fr 96px;gap:24px;align-items:center;padding:clamp(14px,1.8vw,22px) 0;border-bottom:1px solid var(--line);cursor:none;transition:padding-left .5s var(--ease),background .5s var(--ease)}.arch__row.head{color:var(--ink-faint);font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.arch__row:not(.head):hover{padding-left:18px}.arch__row .yr{font-family:var(--mono);font-size:13px;color:var(--ink-dim)}.arch__row .ttl{font-family:var(--serif);font-size:clamp(20px,2.4vw,32px);font-weight:400;line-height:1;transition:color .4s}.arch__row:not(.head):hover .ttl{color:var(--ink)}.arch__row .ty,.arch__row .ro{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-dim)}.arch__row .lk{text-align:right;font-family:var(--mono);font-size:12px;color:var(--ink-faint)}.arch__row:not(.head):hover .lk{color:var(--accent)}@media(max-width:720px){.arch__row{grid-template-columns:48px 1.4fr 64px}.arch__row .ty,.arch__row .ro{display:none}}.pd-hero{position:relative;padding:clamp(140px,22vh,260px) var(--pad) clamp(40px,7vh,80px)}.pd-hero .phero__index{margin-bottom:clamp(24px,5vh,52px)}.pd-title{font-family:var(--serif);font-weight:400;font-size:clamp(56px,12vw,200px);line-height:.84;letter-spacing:-.01em}.pd-title .line{display:block;overflow:hidden;padding-right:.06em;line-height:1.11}.pd-title .line>span{display:inline-block;will-change:transform}.pd-sub{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-top:clamp(20px,4vh,44px);flex-wrap:wrap}.pd-lede{font-family:var(--serif);font-style:italic;font-size:clamp(20px,2.6vw,38px);line-height:1.15;max-width:24ch}@media(min-width:861px){.pd-lede{max-width:40ch}}.pd-lede-link{display:inline-block;margin-top:16px;color:var(--accent);text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--accent) 40%,transparent)}.pd-lede-link:hover{border-bottom-color:var(--accent)}.pd-tags{white-space:nowrap}.pd-cover{padding:0 var(--pad) clamp(60px,10vh,120px)}.pd-cover .frame{aspect-ratio:16/9;overflow:hidden}.pd-cover .frame .placeholder{width:100%;height:100%}.pd-info{display:grid;grid-template-columns:repeat(12,1fr);gap:24px;padding:0 var(--pad) clamp(80px,14vh,160px);border-top:1px solid var(--line);padding-top:clamp(40px,7vh,80px)}.pd-info__meta{grid-column:span 4;display:flex;flex-direction:column}.pd-meta-row{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}.pd-meta-row .k{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint)}.pd-meta-row .v{font-family:var(--mono);font-size:12px;color:var(--ink-dim);text-align:right;max-width:24ch}.pd-info__body{grid-column:6 / 12;display:flex;flex-direction:column;gap:22px}.pd-info__body p{font-family:var(--serif);font-size:clamp(22px,2.6vw,40px);line-height:1.28;letter-spacing:-.01em;max-width:40ch}.pd-gallery{display:grid;grid-template-columns:repeat(2,1fr);align-items:start;gap:12px clamp(16px,2vw,32px);padding:0 var(--pad) clamp(60px,10vh,120px)}.pd-shot.full{grid-column:span 2}.pd-shot.full .placeholder,.pd-shot.full .media-img{aspect-ratio:16/9}.pd-shot.half .placeholder,.pd-shot.half .media-img{aspect-ratio:4/5}.pd-shot .placeholder,.pd-shot .media-img{width:100%;height:auto}.pd-shot figcaption{margin-top:12px}.pd-quote{padding:clamp(80px,16vh,200px) var(--pad);font-family:var(--serif);font-weight:400;font-size:clamp(36px,6.5vw,120px);line-height:.98;letter-spacing:-.015em;text-align:center}.pd-quote .line{display:block;overflow:hidden;line-height:1.11}.pd-quote .line:not(:last-child){margin-bottom:-.12em}.pd-quote .line>span{display:inline-block;will-change:transform}.pd-quote em{font-style:italic;color:var(--accent)}.pd-next{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:clamp(40px,7vh,80px) var(--pad) clamp(80px,14vh,160px);border-top:1px solid var(--line)}.pd-nav-link{display:flex;flex-direction:column;gap:12px;cursor:none}.pd-nav-link.next{grid-column:2;text-align:right;align-items:flex-end}.pd-nav-link .t{font-family:var(--serif);font-size:clamp(28px,5vw,72px);font-weight:400;line-height:.95;color:var(--ink-dim);transition:color .5s var(--ease),transform .5s var(--ease);transform-origin:left}.pd-nav-link.next .t{transform-origin:right}.pd-nav-link:hover .t{color:var(--ink)}.pd-nav-link.prev:hover .t{transform:translate(14px)}.pd-nav-link.next:hover .t{transform:translate(-14px)}@media(max-width:860px){.pd-info__meta{grid-column:span 12;margin-bottom:32px}.pd-info__body{grid-column:span 12}.pd-info__body p{max-width:none}.pd-gallery{grid-template-columns:1fr}.pd-shot.full{grid-column:span 1}.pd-shot.half .placeholder,.pd-shot.half .media-img{aspect-ratio:16/9}.pd-next{grid-template-columns:1fr}.pd-nav-link.next{grid-column:auto;text-align:left;align-items:flex-start}}.section-index{position:fixed;left:var(--pad);bottom:clamp(16px,3vh,28px);z-index:7000;color:var(--ink-dim);pointer-events:none;opacity:0;transition:opacity .5s var(--ease)}.section-index.is-visible{opacity:1}@media(max-width:720px){.section-index{display:none}}[data-magnetic]{display:inline-block;will-change:transform}.footer__avail{display:inline-flex;align-items:center;gap:8px;color:var(--ink)}.avail-dot{width:7px;height:7px;border-radius:50%;background:var(--accent);flex:0 0 auto;animation:pulse 2.4s var(--ease) infinite}.voices{padding:clamp(80px,16vh,200px) var(--pad);display:flex;flex-direction:column;gap:clamp(48px,9vh,120px)}.voices__item{display:flex;flex-direction:column;gap:clamp(20px,3vh,36px)}.voices__item:nth-of-type(2n){text-align:right}.voices__quote{font-family:var(--serif);font-weight:400;font-size:clamp(32px,5.2vw,88px);line-height:1.02;letter-spacing:-.015em;max-width:18ch}.voices__item:nth-of-type(2n) .voices__quote{margin-left:auto}.voices__attr{color:var(--ink-dim)}.notfound__links{display:flex;gap:clamp(20px,3vw,40px);margin-top:clamp(28px,5vh,56px)}.notfound__links a{font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-dim);position:relative;padding-bottom:3px;transition:color .4s var(--ease)}.notfound__links a:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .5s var(--ease)}.notfound__links a:hover{color:var(--ink)}.notfound__links a:hover:after{transform:scaleX(1);transform-origin:left}@media(max-width:860px){.reel__grid{grid-template-columns:repeat(2,1fr)}.reel__tile.s2,.reel__tile.s3{grid-column:span 2}.header__nav{gap:16px}.footer__contact{grid-column:span 12}.footer__col{grid-column:span 6}.footer__grid .footer__col:nth-child(3){grid-row:span 2}.work__row{grid-template-columns:30px 1fr}.work__row .cat,.work__row .yr{display:none}.about-cols__label,.about-cols__body{grid-column:span 12}.proj-grid{grid-template-columns:1fr}.proj.is-wide{grid-column:span 1}.proj.is-wide .proj__media{aspect-ratio:4/3}.idx-row{grid-template-columns:36px 1fr;gap:8px 24px}.idx-row .d{grid-column:2;text-align:left}}@media(prefers-reduced-motion:reduce){.grain{animation:none}}.media-img[data-astro-cid-vh5pro65]{width:100%;height:100%;object-fit:cover;display:block}
