@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,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(./inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-greek-wght-normal-CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-vietnamese-wght-normal-CBcvBZtf.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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-latin-ext-wght-normal-DO1Apj_S.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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-latin-wght-normal-Dx4kXJAl.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:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./fraunces-vietnamese-wght-normal-CnvboYUG.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(./fraunces-latin-ext-wght-normal-Ca2vKHc0.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(./fraunces-latin-wght-normal-ukD16Tqj.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:Fraunces Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(./fraunces-vietnamese-wght-italic-BicUS2cM.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:italic;font-display:swap;font-weight:100 900;src:url(./fraunces-latin-ext-wght-italic-BfTTTDIL.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:italic;font-display:swap;font-weight:100 900;src:url(./fraunces-latin-wght-italic-Py8at3oI.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:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(./space-grotesk-vietnamese-wght-normal-D0rl6rjA.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:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(./space-grotesk-latin-ext-wght-normal-D9tNdqV9.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:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(./space-grotesk-latin-wght-normal-BhU9QXUp.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:Syne Variable;font-style:normal;font-display:swap;font-weight:400 800;src:url(./syne-greek-wght-normal-5tOOQDeJ.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Syne Variable;font-style:normal;font-display:swap;font-weight:400 800;src:url(./syne-latin-ext-wght-normal-JjI8ZrW1.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:Syne Variable;font-style:normal;font-display:swap;font-weight:400 800;src:url(./syne-latin-wght-normal-BVsvWWA4.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:Playfair Display Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(./playfair-display-cyrillic-wght-normal-5WvUvBgz.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Playfair Display Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(./playfair-display-vietnamese-wght-normal-Cabi7G8-.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:Playfair Display Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(./playfair-display-latin-ext-wght-normal-CT1r92Rl.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:Playfair Display Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(./playfair-display-latin-wght-normal-BOwq7MWX.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:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./bricolage-grotesque-vietnamese-wght-normal-BUzh504Q.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:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./bricolage-grotesque-latin-ext-wght-normal-CcLUaPy7.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:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./bricolage-grotesque-latin-wght-normal-DLoelf7F.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{--bg: #f5efe6;--bg-alt: #ece3d6;--surface: #fffaf3;--ink: #2a1f1a;--muted: #7a6a5f;--line: rgba(42, 31, 26, .14);--accent: #b5533c;--accent-ink: #fff;--shadow: 0 20px 50px -20px rgba(70, 40, 25, .35);--radius: 20px;--display: "Fraunces Variable", Georgia, serif;--sans: "Inter Variable", system-ui, -apple-system, "Segoe UI", sans-serif;--gutter: clamp(18px, 5vw, 64px);--max: 1240px;color-scheme:light}:root[data-theme=dark]{--bg: #14110f;--bg-alt: #1c1815;--surface: #221d19;--ink: #f3ebe0;--muted: #a39687;--line: rgba(243, 235, 224, .14);--accent: #e08a6e;--accent-ink: #1a110d;--shadow: 0 20px 50px -20px rgba(0, 0, 0, .7);color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px;scrollbar-gutter:stable;-webkit-text-size-adjust:100%;text-size-adjust:100%}a,button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:1.05rem;line-height:1.6;-webkit-font-smoothing:antialiased;transition:background .3s,color .3s}img{max-width:100%;display:block}a{color:inherit}ul{list-style:none;margin:0;padding:0}:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:6px}em{font-style:italic;color:var(--accent)}.skip{position:fixed;left:12px;top:-60px;z-index:1000;background:var(--ink);color:var(--bg);padding:10px 16px;border-radius:10px;transition:top .2s}.skip:focus{top:12px}.nav{position:sticky;top:12px;z-index:50;margin:12px auto 0;width:min(calc(100% - 2 * var(--gutter) + 24px),calc(var(--max) + 24px));display:flex;align-items:center;justify-content:space-between;padding:8px 10px 8px 14px;background:color-mix(in srgb,var(--surface) 78%,transparent);-webkit-backdrop-filter:blur(14px) saturate(1.4);backdrop-filter:blur(14px) saturate(1.4);border:1px solid var(--line);border-radius:999px}.nav-logo{display:inline-flex;align-items:center;min-height:44px;padding-inline:8px;font-family:var(--display);font-weight:600;font-size:1.4rem;text-decoration:none;letter-spacing:-.02em}.nav-logo span{color:var(--accent)}.nav.scrolled{box-shadow:0 10px 30px -14px #28140a59}.nav-links{position:relative;display:flex;gap:2px}.nav-pill{position:absolute;top:0;bottom:0;left:0;width:0;background:var(--bg-alt);border-radius:999px;opacity:0;transition:transform .35s cubic-bezier(.2,.7,.2,1),width .35s cubic-bezier(.2,.7,.2,1),opacity .25s;pointer-events:none}.nav-links a[aria-current=true]{color:var(--ink)}.nav-links a{position:relative;display:inline-flex;align-items:center;min-height:44px;text-decoration:none;font-size:.95rem;padding:0 16px;border-radius:999px;color:var(--muted);transition:color .2s,background .2s}.nav-links a:hover{color:var(--ink)}.nav-actions{display:flex;align-items:center;gap:8px}.icon-btn{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line);background:transparent;color:var(--ink);border-radius:50%;cursor:pointer;transition:background .2s,transform .2s}.icon-btn:hover{background:var(--bg-alt);transform:rotate(15deg)}.btn{display:inline-flex;align-items:center;gap:8px;font:inherit;font-weight:500;font-size:.97rem;text-decoration:none;min-height:44px;padding:0 24px;border-radius:999px;border:1px solid transparent;cursor:pointer;transition:transform .2s,background .2s,color .2s,box-shadow .2s}.btn:hover{transform:translateY(-2px)}.btn:active{transform:translateY(0) scale(.97)}.arrow,.mail span{display:inline-block;transition:transform .3s cubic-bezier(.2,.7,.2,1)}.btn:hover .arrow{transform:translateY(3px)}.mail:hover .arrow{transform:translate(4px,-4px)}.icon-btn:active{transform:scale(.9)}.chip:active{transform:scale(.96)}.tile button:active{transform:translateY(-3px) scale(.99)}.btn-solid{background:var(--ink);color:var(--bg)}.btn-solid:hover{background:var(--accent);color:var(--accent-ink);box-shadow:var(--shadow)}.btn-ghost{border-color:var(--line);background:transparent;color:var(--ink)}.btn-ghost:hover{background:var(--bg-alt)}.nav-cta{padding:0 20px}main>section,.contact{max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)}.section{padding-block:clamp(64px,10vw,120px)}.h2{margin:0;font-family:var(--display);font-weight:500;font-size:clamp(2.2rem,5vw,3.6rem);line-height:1.05;letter-spacing:-.025em}.hero{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:clamp(24px,5vw,72px);padding-block:clamp(48px,8vw,110px) clamp(48px,7vw,90px);min-height:min(86vh,820px);min-height:min(86svh,820px)}.hero-title{margin:0 0 22px;font-family:var(--display);font-weight:500;font-size:clamp(2.8rem,7.2vw,6rem);line-height:.98;letter-spacing:-.035em;text-wrap:balance}.lede{max-width:34ch;margin:0 0 32px;font-size:clamp(1.1rem,2vw,1.3rem);color:var(--muted)}.hero-cta{display:flex;flex-wrap:wrap;gap:12px}.hero-art{position:relative;width:100%;max-width:560px;aspect-ratio:1 / 1.02;margin-inline:auto}.layer{position:absolute;--d: 1;translate:calc(var(--mx, 0) * var(--d) * -16px) calc(var(--my, 0) * var(--d) * -12px + var(--sy, 0) * var(--d) * -70px);will-change:translate}.layer-1{width:52%;left:4%;top:6%;z-index:2;--d: 1.2}.layer-2{width:44%;right:0;top:0;--d: .6}.layer-3{width:48%;right:12%;bottom:0;z-index:3;--d: 1.7}.card{margin:0;background:var(--surface);border-radius:14px;overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--line);opacity:0;animation:card-in 1s both cubic-bezier(.2,.7,.2,1),float 7s ease-in-out 1s infinite}.card img{width:100%;height:auto}.layer-1 .card{rotate:-6deg;animation-delay:.15s,1.15s}.layer-2 .card{rotate:7deg;animation-delay:.3s,-1s}.layer-3 .card{rotate:-2deg;animation-delay:.45s,-3s}@keyframes card-in{0%{opacity:0;transform:translateY(60px) scale(.92)}to{opacity:1;transform:none}}@keyframes float{50%{translate:0 -12px}}.marquee{overflow:hidden;border-block:1px solid var(--line);background:var(--bg-alt);padding:18px 0}.marquee-track{display:flex;width:max-content;gap:36px;font-family:var(--display);font-size:clamp(1.4rem,3vw,2.2rem);font-style:italic;white-space:nowrap;animation:scroll 40s linear infinite}.marquee{-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.marquee:hover .marquee-track{animation-play-state:paused}.marquee-track i{color:var(--accent);font-style:normal;margin-left:36px}@keyframes scroll{to{transform:translate(-50%)}}.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease var(--d, 0ms),transform .8s cubic-bezier(.2,.7,.2,1) var(--d, 0ms)}.reveal.in{opacity:1;transform:none}.wi.stack{display:inline-grid}.wi.stack>.f{grid-area:1 / 1;white-space:nowrap}.f em{font-style:normal}.f0{opacity:var(--o0, 1)}.f1{opacity:var(--o1, 0);font-family:"Space Grotesk Variable",var(--sans);font-weight:600;letter-spacing:-.045em}.f2{opacity:var(--o2, 0);font-family:Playfair Display Variable,Georgia,serif;font-weight:600;letter-spacing:-.03em}.f3{opacity:var(--o3, 0);font-family:"Syne Variable",var(--sans);font-weight:600;letter-spacing:-.04em}.f4{opacity:var(--o4, 0);font-family:"Bricolage Grotesque Variable",var(--sans);font-weight:700;letter-spacing:-.04em}.f0 em{font-style:italic}.contact-title .wi.stack{justify-items:center}.w{display:inline-block;overflow:hidden;vertical-align:top;padding:0 .08em .14em;margin:0 -.08em -.14em}.wi{display:inline-block;transform:translateY(115%) rotate(4deg);transform-origin:left bottom;transition:transform .9s cubic-bezier(.2,.7,.2,1) calc(var(--base, 0ms) + var(--i) * 70ms)}.words.in .wi{transform:none}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.progress{position:fixed;inset:0 0 auto;height:3px;z-index:300;background:var(--accent);transform:scaleX(0);transform-origin:left;pointer-events:none}.section-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:40px}.chips-inner{display:flex;flex-wrap:wrap;gap:8px}.chip{font:inherit;font-size:.92rem;display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--ink);cursor:pointer;transition:background .2s,color .2s,border-color .2s}.chip:hover{background:var(--bg-alt)}.chip[aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}.masonry{columns:3 280px;column-gap:24px}.tile{break-inside:avoid;margin-bottom:24px}.tile button{position:relative;display:block;width:100%;padding:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overflow:hidden;cursor:pointer;text-align:left;color:inherit;font:inherit;transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s}.tile button:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.tile img{width:100%;height:auto;transition:transform .6s cubic-bezier(.2,.7,.2,1)}.tile button:hover img{transform:scale(1.04)}.tile-meta{position:absolute;inset:auto 0 0;display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding:40px 18px 16px;color:#fff;background:linear-gradient(to top,rgba(20,12,8,.78),transparent);opacity:0;transform:translateY(8px);transition:opacity .3s,transform .3s}.tile-meta b{display:block;font-weight:600;line-height:1.2}.tile-meta small{opacity:.8;font-size:.8rem}.tile-arrow{width:36px;height:36px;flex:none;display:grid;place-items:center;background:#fff;color:#2a1f1a;border-radius:50%}.tile button:hover .tile-meta,.tile button:focus-visible .tile-meta{opacity:1;transform:none}@media(hover:none){.tile-meta{opacity:1;transform:none}}.about{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(28px,6vw,90px);padding:clamp(28px,5vw,64px);background:var(--surface);border:1px solid var(--line);border-radius:calc(var(--radius) + 12px)}.about-body p{margin:0 0 18px;font-size:1.12rem}.about-body p:first-child{font-family:var(--display);font-size:clamp(1.3rem,2.4vw,1.7rem);line-height:1.35}.tags{display:flex;flex-wrap:wrap;gap:8px;margin:26px 0 28px}.tags li{font-size:.88rem;padding:6px 14px;border-radius:999px;background:var(--bg-alt);border:1px solid var(--line)}.contact{padding-bottom:max(20px,env(safe-area-inset-bottom))}.contact-card{text-align:center;padding:clamp(40px,8vw,100px) clamp(20px,4vw,48px);background:var(--ink);color:var(--bg);border-radius:calc(var(--radius) + 12px)}.contact-title{margin:0 auto 28px;max-width:16ch;font-family:var(--display);font-weight:500;font-size:clamp(2.2rem,6vw,4.6rem);line-height:1.02;letter-spacing:-.03em;text-wrap:balance}.contact-card em{color:var(--accent)}:root[data-theme=dark] .contact-card{background:var(--accent);color:var(--accent-ink)}:root[data-theme=dark] .contact-card em{color:var(--surface)}.mail{display:inline-block;font-size:clamp(1.05rem,3vw,1.8rem);text-decoration:none;border-bottom:2px solid currentColor;min-height:44px;padding-block:10px 4px;overflow-wrap:anywhere;transition:opacity .2s}.mail:hover{opacity:.75}.socials{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:44px}.socials a{display:flex;flex-direction:column;align-items:flex-start;min-width:150px;padding:14px 20px;text-decoration:none;border:1px solid currentColor;border-color:color-mix(in srgb,currentColor 30%,transparent);border-radius:16px;line-height:1.3;transition:background .2s,transform .2s}.socials a:hover{background:color-mix(in srgb,currentColor 12%,transparent);transform:translateY(-3px)}.socials span{font-weight:600}.socials small{opacity:.7;font-size:.85rem}.footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;padding-top:26px;font-size:.88rem;color:var(--muted)}.footer a{display:inline-flex;align-items:center;min-height:44px;padding-inline:8px;margin-right:-8px;text-decoration:none}.footer a:hover{color:var(--ink)}.lightbox{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:max(64px,env(safe-area-inset-top)) max(72px,env(safe-area-inset-right)) max(64px,env(safe-area-inset-bottom)) max(72px,env(safe-area-inset-left));background:#0e0906e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@supports not (view-transition-name: none){.lightbox{animation:fade .25s both}}@keyframes fade{0%{opacity:0}}.lb-fig{margin:0;display:flex;flex-direction:column;align-items:center;gap:14px;max-height:100%}.lb-fig[data-dir="1"]{animation:slide-from-right .4s both cubic-bezier(.2,.7,.2,1)}.lb-fig[data-dir="-1"]{animation:slide-from-left .4s both cubic-bezier(.2,.7,.2,1)}@keyframes slide-from-right{0%{opacity:0;transform:translate(60px)}}@keyframes slide-from-left{0%{opacity:0;transform:translate(-60px)}}.lb-fig figcaption{animation:fade .5s .15s both}.lb-fig img{view-transition-name:design;max-width:100%;max-height:calc(100vh - 170px);max-height:calc(100dvh - 170px);width:auto;height:auto;border-radius:12px;box-shadow:0 30px 80px #0009}.lb-fig figcaption{display:flex;gap:14px;align-items:baseline;color:#f3ebe0;font-size:.95rem}.lb-fig figcaption span{opacity:.65}.lb-btn{position:absolute;width:48px;height:48px;display:grid;place-items:center;font-size:1.2rem;color:#fff;background:#ffffff1f;border:1px solid rgba(255,255,255,.2);border-radius:50%;cursor:pointer;transition:background .2s}.lb-btn:hover{background:#ffffff40}.lb-close{top:18px;right:18px}.lb-prev{left:18px;top:50%;translate:0 -50%}.lb-next{right:18px;top:50%;translate:0 -50%}@media(max-width:900px){.hero{grid-template-columns:1fr;min-height:0}.hero-art{order:-1;max-width:min(460px,100%)}.about{grid-template-columns:1fr}}@media(max-width:640px){.nav{padding-left:8px}.nav-links a{padding:0 10px;font-size:.88rem}.nav-cta{display:none}.hero-art{max-width:min(380px,100%)}.section-head{align-items:flex-start}.masonry{columns:2 140px;column-gap:14px}.tile{margin-bottom:14px}.tile-meta{padding:28px 12px 10px;font-size:.85rem}.tile-arrow{display:none}.lightbox{padding:max(64px,env(safe-area-inset-top)) 12px max(88px,calc(env(safe-area-inset-bottom) + 72px))}.lb-prev,.lb-next{top:auto;bottom:max(18px,env(safe-area-inset-bottom));translate:none}.lb-prev{left:calc(50% - 60px)}.lb-next{right:calc(50% - 60px)}.lb-fig img{max-height:calc(100dvh - 220px)}}@media(max-width:380px){.nav-links a{padding:0 7px;font-size:.82rem}.nav-logo{padding-inline:4px}.nav-actions{gap:4px}}@media(max-height:500px)and (orientation:landscape){.lightbox{padding-block:12px}.lb-fig img{max-height:calc(100dvh - 24px)}.lb-fig figcaption{display:none}.lb-prev,.lb-next{top:50%;bottom:auto;translate:0 -50%}.lb-prev{left:12px}.lb-next{right:12px}.hero{min-height:0}}@media(hover:none){.btn:hover{transform:none}.btn-solid:hover{background:var(--ink);color:var(--bg);box-shadow:none}.btn-ghost:hover{background:transparent}.icon-btn:hover{background:transparent;transform:none}.chip:hover:not([aria-pressed=true]){background:transparent}.tile button:hover{transform:none;box-shadow:none}.tile button:hover img{transform:none}.socials a:hover{background:transparent;transform:none}.mail:hover{opacity:1}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}.wi{transform:none}.card{opacity:1}.marquee-track{animation:none}.layer{translate:none}}::view-transition-group(*){animation-duration:.5s;animation-timing-function:cubic-bezier(.2,.7,.2,1)}::view-transition-group(root){animation-duration:.3s}html.theme-vt::view-transition-old(root),html.theme-vt::view-transition-new(root){animation:none;mix-blend-mode:normal}html.theme-vt::view-transition-old(root){z-index:1}html.theme-vt::view-transition-new(root){z-index:2}
