@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-vietnamese-opsz-normal-Czevyj-6.woff2) format("woff2-variations");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:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-ext-opsz-normal-CJcjJNj7.woff2) format("woff2-variations");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:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-opsz-normal-DihXLNYH.woff2) format("woff2-variations");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 Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/assets/instrument-sans-latin-ext-wght-normal-B5bTHO_g.woff2) format("woff2-variations");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 Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/assets/instrument-sans-latin-wght-normal-BbzFLZTg.woff2) format("woff2-variations");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{--paper: #f7f4ee;--ink: #201d18;--body: #4a443a;--muted: #6f675b;--hairline: #e2dacb;--accent: #b0482b;--accent-text: #8f3a22;--serif: "Fraunces Variable", Georgia, "Times New Roman", serif;--sans: "Instrument Sans Variable", system-ui, -apple-system, "Segoe UI", sans-serif;--ease-out: cubic-bezier(.22, 1, .36, 1);--pad: clamp(1.5rem, 5vw, 3rem);--measure: 40rem;--gap: clamp(3.25rem, 8vw, 5.5rem)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--body);font-family:var(--sans);font-size:1.0625rem;line-height:1.7;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}main{max-width:var(--measure);margin:0 auto;padding:clamp(4rem,12vh,7rem) var(--pad) clamp(4rem,10vh,6rem)}.masthead{margin-bottom:var(--gap)}.kicker{font-size:.8rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-text);margin:0 0 1.4rem}.name{font-family:var(--serif);font-optical-sizing:auto;font-weight:560;font-size:clamp(2.9rem,2.2rem + 6vw,5.6rem);line-height:.98;letter-spacing:-.02em;color:var(--ink);margin:0 0 1.7rem}.lede{font-size:clamp(1.1rem,1rem + .5vw,1.28rem);line-height:1.6;color:var(--body);max-width:34ch;margin:0}section{margin-bottom:var(--gap)}.rule{font-family:var(--serif);font-weight:540;font-size:1.3rem;color:var(--ink);margin:0 0 1.4rem;padding-bottom:.7rem;border-bottom:1px solid var(--hairline)}.work{list-style:none;margin:0;padding:0}.work li{display:grid;gap:.3rem;padding:1.1rem 0;border-bottom:1px solid var(--hairline)}.work li:last-child{border-bottom:none}.co{font-weight:600;color:var(--ink);font-size:1.02rem}.note{color:var(--body);font-size:.97rem;line-height:1.55}.projects .co{color:var(--accent-text);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .16s var(--ease-out)}@media(hover:hover)and (pointer:fine){.projects .co:hover{border-bottom-color:var(--accent)}}.prose{margin:0;max-width:52ch}.contact{list-style:none;margin:0;padding:0}.contact li{padding:.5rem 0}.contact a{color:var(--accent-text);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .16s var(--ease-out)}@media(hover:hover)and (pointer:fine){.contact a:hover{border-bottom-color:var(--accent)}}a:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}.colophon{margin-top:var(--gap);padding-top:1.4rem;border-top:1px solid var(--hairline);font-size:.82rem;letter-spacing:.02em;color:var(--muted)}.colophon p{margin:0}.js .reveal,.js .work li{opacity:0}.reveal.in,.reveal.in .work li{opacity:1}@media(max-width:560px){body{font-size:1rem}main{padding-top:3.5rem}.name{line-height:1.06}}@media(prefers-reduced-motion:reduce){.js .reveal,.js .work li{opacity:1}}
