@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-vietnamese-wght-normal-CnvboYUG.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:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-ext-wght-normal-Ca2vKHc0.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:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-wght-normal-ukD16Tqj.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:Fraunces Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-vietnamese-wght-italic-BicUS2cM.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:Fraunces Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-ext-wght-italic-BfTTTDIL.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:Fraunces Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-wght-italic-Py8at3oI.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:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-ext-wght-normal-BOFOeGcA.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:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-wght-normal-Xz1IZZA0.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:DM Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-mono-latin-ext-400-normal-C2zvOubV.woff2)format("woff2"),url(/assets/dm-mono-latin-ext-400-normal-1aZr6b2b.woff)format("woff");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:DM Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-mono-latin-400-normal-4GdczIuU.woff2)format("woff2"),url(/assets/dm-mono-latin-400-normal--0xN8mdc.woff)format("woff");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}:root{--cream:#fff3df;--cream-dim:#fff3dfb8;--cream-faint:#fff3df75;--line:#fff3df2e;--coral:#ff9a6b;--sea:#6fe0d8;--panel:#041828bd;--abyss:#04192a;--serif:"Fraunces Variable", Georgia, serif;--sans:"DM Sans Variable", system-ui, sans-serif;--mono:"DM Mono", ui-monospace, monospace;--gutter:clamp(20px, 5vw, 72px)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--abyss);-webkit-text-size-adjust:100%}body{color:var(--cream);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:17px;line-height:1.6;overflow-x:clip}a{color:inherit}:focus-visible{outline:2px solid var(--sea);outline-offset:3px;border-radius:3px}ol,ul{margin:0;padding:0;list-style:none}#world{width:100%;height:100lvh;display:block;position:fixed;inset:0}.no-world body{background:linear-gradient(#16255a 0,#8a4f86 34vh,#ff9456 62vh,#0f6f6c 66vh,#06273d 110vh,#04192a 100%)}.no-world #world{display:none}main,.nav,.gauge{z-index:1;position:relative}.nav{z-index:10;padding:22px var(--gutter);font-family:var(--mono);letter-spacing:.02em;justify-content:space-between;align-items:center;font-size:13px;display:flex;position:fixed;inset:0 0 auto}.nav:before{content:"";z-index:-1;opacity:0;pointer-events:none;background:linear-gradient(#031422eb 45%,#03142200);transition:opacity .4s;position:absolute;inset:0 0 -28px}.nav.is-under:before{opacity:1}.nav a{color:var(--cream);padding:6px 0;text-decoration:none;transition:color .2s}.nav a:hover{color:var(--coral)}.nav.is-under a:hover{color:var(--sea)}.nav nav{gap:clamp(16px,3vw,34px);display:flex}.gauge{z-index:9;right:calc(var(--gutter) * .42);font-family:var(--mono);color:var(--cream-dim);flex-direction:column;align-items:center;gap:12px;font-size:11px;display:flex;position:fixed;top:50%;translate:0 -50%}.gauge-track{background:var(--line);width:1px;height:180px;display:block;position:relative;container-type:size}.gauge-mark{background:var(--coral);width:7px;height:7px;box-shadow:0 0 10px var(--coral);border-radius:50%;position:absolute;top:-3px;left:-3px}.gauge-read{writing-mode:vertical-rl;min-height:56px}.no-world .gauge{display:none}.hero{min-height:100svh;padding:0 var(--gutter) clamp(28px, 6vh, 56px);flex-direction:column;justify-content:flex-end;display:flex}.hero-title{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:0;position:absolute;overflow:hidden}.no-world .hero-title{clip-path:none;white-space:normal;width:auto;height:auto;font-family:var(--serif);margin:auto 0;font-size:clamp(64px,14vw,200px);font-weight:600;line-height:1;position:static;overflow:visible}.hero-foot{flex-direction:column;align-items:flex-start;gap:18px;display:flex}.hero-tagline{max-width:21em;font-family:var(--serif);text-shadow:0 1px 22px #0318288c;margin:0;font-size:clamp(21px,2.5vw,31px);line-height:1.25}.dive-cue{font-family:var(--mono);align-items:center;gap:12px;font-size:13px;text-decoration:none;display:flex}.dive-cue-line{background:var(--line);width:1px;height:36px;display:block;position:relative;overflow:hidden}.dive-cue-line:after{content:"";background:var(--cream);animation:2.4s cubic-bezier(.65,0,.35,1) infinite sound;position:absolute;inset:0}@keyframes sound{0%{transform:translateY(-100%)}55%,to{transform:translateY(100%)}}.dive-gap{height:85vh}.section{padding:clamp(60px, 10vh, 120px) var(--gutter);max-width:1320px;margin:0 auto}.section-title{font-family:var(--serif);letter-spacing:-.015em;text-shadow:0 2px 34px #02142280;margin:0 0 clamp(36px,7vh,72px);font-size:clamp(52px,9vw,124px);font-weight:500;line-height:1}.project-list{gap:clamp(64px,14vh,150px);display:grid}.project{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:center;display:grid}.project:nth-child(2n){grid-template-columns:minmax(0,5fr) minmax(0,7fr)}.project:nth-child(2n) .project-media{order:2}.project-media{aspect-ratio:16/10;background:#04182880;border-radius:6px;overflow:hidden;box-shadow:0 30px 70px -28px #000810d9}.project-media img{object-fit:cover;width:100%;height:100%;display:block}.media-empty{height:100%;font-family:var(--mono);color:var(--cream-faint);border:1px dashed var(--line);border-radius:inherit;background:repeating-radial-gradient(circle at 50% 118%,#0000 0 34px,#6fe0d814 34px 35px);place-items:center;font-size:13px;display:grid}.project-body{z-index:1;background:var(--panel);border-radius:6px;margin-left:clamp(-90px,-6vw,-32px);padding:clamp(24px,3vw,42px);position:relative}.project:nth-child(2n) .project-body{margin-left:0;margin-right:clamp(-90px,-6vw,-32px)}.project-meta{font-family:var(--mono);color:var(--cream-dim);gap:18px;margin:0 0 12px;font-size:12.5px;display:flex}.project-meta span:first-child{color:var(--sea)}.project-title{font-family:var(--serif);margin:0 0 12px;font-size:clamp(30px,3.6vw,48px);font-weight:500;line-height:1.08}.project-desc{color:var(--cream-dim);margin:0 0 18px}.project-tags{font-family:var(--mono);color:var(--sea);flex-wrap:wrap;gap:6px 16px;margin-bottom:24px;font-size:12.5px;display:flex}.project-links{flex-wrap:wrap;gap:10px;display:flex}.pill{border:1px solid var(--cream-faint);border-radius:999px;align-items:baseline;gap:8px;padding:9px 18px;font-size:15px;text-decoration:none;transition:background .2s,color .2s,border-color .2s;display:inline-flex}a.pill:hover{background:var(--cream);border-color:var(--cream);color:var(--abyss)}.is-soon{color:var(--cream-faint);cursor:default}.pill.is-soon{border-style:dashed;border-color:var(--line)}.contact-link.is-soon{color:var(--cream-dim);text-shadow:0 1px 14px #021422e6}.is-soon small{font-family:var(--mono);font-size:.72em}.about{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:32px;padding-top:clamp(100px,20vh,220px);display:grid}.about-body p{font-family:var(--serif);text-shadow:0 1px 22px #021422bf;margin:0 0 1em;font-size:clamp(21px,2.3vw,30px);line-height:1.36}.contact{flex-direction:column;min-height:100svh;padding-top:clamp(100px,20vh,220px);padding-bottom:28px;display:flex}.contact-title{font-family:var(--serif);letter-spacing:-.02em;text-shadow:0 2px 40px #02142299;margin:0 0 16px;font-size:clamp(60px,12vw,176px);font-style:italic;font-weight:500;line-height:.98}.contact-text{max-width:34em;color:var(--cream-dim);text-shadow:0 1px 14px #021422e6;margin:0 0 40px}.contact-links{flex-wrap:wrap;gap:12px clamp(28px,5vw,64px);display:flex}.contact-link{font-family:var(--serif);text-underline-offset:6px;align-items:baseline;gap:10px;font-size:clamp(25px,3vw,38px);text-decoration-thickness:1px;transition:color .2s;display:inline-flex}a.contact-link:hover{color:var(--sea)}.footer{font-family:var(--mono);color:var(--cream-dim);flex-wrap:wrap;justify-content:space-between;gap:8px 24px;margin-top:auto;padding-top:72px;font-size:13px;display:flex}.surface-link{color:var(--cream);text-decoration:none}.surface-link:hover{color:var(--coral)}.reveal{opacity:0;transition:opacity .9s,transform .9s cubic-bezier(.2,.7,.2,1);transform:translateY(28px)}.reveal.in{opacity:1;transform:none}@media (width<=820px){.project,.project:nth-child(2n){grid-template-columns:minmax(0,1fr)}.project:nth-child(2n) .project-media{order:0}.project-body,.project:nth-child(2n) .project-body{margin:-28px 12px 0;padding:22px}.about{grid-template-columns:minmax(0,1fr)}.gauge-track{display:none}.gauge{top:auto;bottom:14px;right:14px;translate:none}.gauge-read{writing-mode:horizontal-tb;min-height:0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transition:none;transform:none}.dive-cue-line:after{animation:none;transform:none}}
