@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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) 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:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-cyrillic-wght-normal-Dvxsihut.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-greek-wght-normal-DL7QRZyv.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:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-vietnamese-wght-normal-usUDDRr7.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:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-ext-wght-normal-Ch3YOpNY.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:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-wght-normal-DHIcAJRg.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 Serif";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/instrument-serif-latin-400-normal-DnYpCC2O.woff2) format("woff2"),url(/assets/instrument-serif-latin-400-normal-BVbkICAY.woff) format("woff")}@font-face{font-family:"Instrument Serif";font-style:italic;font-display:swap;font-weight:400;src:url(/assets/instrument-serif-latin-400-italic-DKMiL14s.woff2) format("woff2"),url(/assets/instrument-serif-latin-400-italic-u__WvvIK.woff) format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff) format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-latin-500-normal-BWZEU5yA.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-500-normal-CJOVTJB7.woff) format("woff")}:root{--bg: #f5f2ec;--bg-tint: #ece7de;--surface: #fbf9f5;--ink: #141412;--ink-2: #3a3934;--muted: #69665f;--line: #dbd5ca;--line-strong: #c4bdaf;--accent: #b4441f;--accent-soft: #f1dccf;--dark: #141412;--dark-ink: #ede8df;--dark-muted: #a29d93;--dark-line: #2e2d29;--font-sans: "Manrope Variable", "Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;--font-serif: "Instrument Serif", "Times New Roman", Georgia, serif;--font-mono: "JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--container: 1320px;--gutter: clamp(20px, 4vw, 48px);--section: clamp(96px, 12vw, 176px);--header-h: 72px;--radius: 6px;--ease: cubic-bezier(.2, .7, .1, 1)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body.no-scroll{overflow:hidden}h1,h2,h3,p,ul,ol,dl,dd,figure,blockquote{margin:0}ul,ol{padding:0;list-style:none}img,svg{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}em{font-family:var(--font-serif);font-style:italic;font-weight:400}::selection{background:var(--accent);color:#fff}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}main:focus{outline:none}.container{width:100%;max-width:calc(var(--container) + var(--gutter) * 2);margin-inline:auto;padding-inline:var(--gutter)}.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.skip-link{position:fixed;top:12px;left:12px;z-index:100;padding:10px 16px;background:var(--ink);color:var(--bg);border-radius:var(--radius);transform:translateY(-160%);transition:transform .2s var(--ease)}.skip-link:focus{transform:none}.placeholder{background:var(--accent-soft);color:var(--accent);border-radius:3px;padding:0 .25em;font-style:normal;box-decoration-break:clone;-webkit-box-decoration-break:clone}.page{animation:page-in .6s var(--ease) both}@keyframes page-in{0%{opacity:0}}.eyebrow{display:flex;align-items:center;gap:12px;font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.eyebrow__index{color:var(--ink)}.eyebrow__rule{width:32px;height:1px;background:currentColor;opacity:.6}.section-head{display:grid;gap:24px;margin-bottom:clamp(48px,6vw,88px)}.section-title{max-width:16ch;font-size:clamp(2.4rem,5.4vw,4.6rem);font-weight:500;line-height:1.02;letter-spacing:-.035em}.section-intro{max-width:52ch;color:var(--muted);font-size:1.1rem}.section-head--light .eyebrow,.section-head--light .eyebrow__index{color:var(--dark-muted)}.mini-title{font-family:var(--font-mono);font-size:12px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:20px}.statement{font-size:clamp(1.7rem,3.2vw,2.7rem);font-weight:500;line-height:1.18;letter-spacing:-.025em}.empty-state{padding:48px;border:1px dashed var(--line-strong);border-radius:var(--radius);color:var(--muted);text-align:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 26px;border:1px solid transparent;border-radius:999px;font-size:15px;font-weight:600;letter-spacing:-.005em;transition:background .3s var(--ease),color .3s var(--ease),border-color .3s var(--ease),transform .3s var(--ease)}.btn svg{transition:transform .3s var(--ease)}.btn:hover svg{transform:translate(3px)}.btn--primary{background:var(--ink);color:var(--bg)}.btn--primary:hover{background:var(--accent)}.btn--primary:disabled{opacity:.6;cursor:progress}.btn--outline{border-color:var(--ink)}.btn--outline:hover{background:var(--ink);color:var(--bg)}.btn--outline:hover svg{transform:translateY(2px)}.btn--ghost{padding-inline:6px;border-radius:0;background:linear-gradient(currentColor,currentColor) left calc(100% - 12px) / 100% 1px no-repeat}.btn--ghost:hover{color:var(--accent);background-size:0 1px;background-position:right calc(100% - 12px);transition:background-size .4s var(--ease),color .3s}.btn--small{min-height:40px;padding:0 18px;font-size:14px}.link-btn{display:inline-flex;align-items:center;gap:8px;padding:6px 0;border:0;background:none;font-size:14px;color:var(--muted);transition:color .2s}.link-btn:hover{color:var(--ink)}.back-link{display:inline-flex;align-items:center;gap:8px;margin-bottom:40px;font-size:14px;font-weight:600;color:var(--muted);transition:color .2s,gap .3s var(--ease)}.back-link:hover{color:var(--ink);gap:12px}.tag-list{display:flex;flex-wrap:wrap;gap:8px}.tag-list li{padding:4px 12px;border:1px solid var(--line-strong);border-radius:999px;font-family:var(--font-mono);font-size:11.5px;color:var(--ink-2)}.tag-list--accent li{border-color:transparent;background:var(--accent-soft);color:var(--accent)}.status-dot{position:relative;width:8px;height:8px;border-radius:50%;background:var(--accent);flex-shrink:0}.status-dot:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:inherit;animation:pulse 2.4s var(--ease) infinite}@keyframes pulse{to{transform:scale(2.8);opacity:0}}.site-header{position:fixed;inset:0 0 auto;z-index:50;transition:background .3s var(--ease),border-color .3s var(--ease);border-bottom:1px solid transparent}.site-header.is-scrolled,.site-header.is-open{background:var(--bg);border-bottom-color:var(--line)}.site-header__inner{display:flex;align-items:center;gap:32px;height:var(--header-h)}.brand{display:inline-flex;align-items:center;gap:12px;font-weight:600;letter-spacing:-.01em}.brand__mark{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--ink);color:var(--bg);font-family:var(--font-serif);font-style:italic;font-size:16px;transition:background .3s var(--ease)}.brand:hover .brand__mark{background:var(--accent)}.nav{margin-left:auto}.nav ul{display:flex;gap:4px}.nav__link{position:relative;display:block;padding:8px 14px;font-size:14.5px;font-weight:500;color:var(--muted);transition:color .2s}.nav__link:after{content:"";position:absolute;left:14px;right:14px;bottom:2px;height:1px;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}.nav__link:hover,.nav__link.is-active{color:var(--ink)}.nav__link:hover:after,.nav__link.is-active:after{transform:scaleX(1)}.menu-toggle{display:none;position:relative;width:44px;height:44px;margin-left:auto;border:1px solid var(--line-strong);border-radius:50%;background:transparent}.menu-toggle span{position:absolute;left:13px;right:13px;height:1.5px;background:var(--ink);transition:transform .35s var(--ease)}.menu-toggle span:first-child{transform:translateY(-3.5px)}.menu-toggle span:last-child{transform:translateY(3.5px)}.is-open .menu-toggle span:first-child{transform:rotate(45deg)}.is-open .menu-toggle span:last-child{transform:rotate(-45deg)}.mobile-nav{position:fixed;inset:var(--header-h) 0 0;display:flex;flex-direction:column;justify-content:space-between;padding:32px var(--gutter) 40px;background:var(--bg);visibility:hidden;opacity:0;transition:opacity .3s var(--ease),visibility 0s linear .3s}.is-open .mobile-nav{visibility:visible;opacity:1;transition:opacity .3s var(--ease)}.mobile-nav li{border-bottom:1px solid var(--line);opacity:0;transform:translateY(16px);transition:opacity .5s var(--ease),transform .5s var(--ease);transition-delay:calc(var(--i) * 50ms + 80ms)}.is-open .mobile-nav li{opacity:1;transform:none}.mobile-nav a{display:flex;align-items:baseline;gap:16px;padding:18px 0;font-size:clamp(2rem,8vw,2.8rem);font-weight:500;letter-spacing:-.03em}.mobile-nav__index{font-family:var(--font-mono);font-size:12px;color:var(--muted)}.mobile-nav__meta{font-size:14px;color:var(--muted)}.hero{padding-top:calc(var(--header-h) + clamp(40px,8vw,110px));padding-bottom:clamp(64px,8vw,112px)}.hero__grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(40px,6vw,96px);align-items:end}.hero__title{margin:28px 0 32px;font-size:clamp(3rem,7.6vw,7rem);font-weight:500;line-height:.98;letter-spacing:-.045em}.hero__title em{color:var(--accent);letter-spacing:-.02em}.hero__title .line{display:block;overflow:hidden;padding-bottom:.08em}.hero__title .line>span{display:block;animation:rise 1.1s var(--ease) both;animation-delay:calc(var(--i) * .11s + .1s)}@keyframes rise{0%{transform:translateY(105%)}}.hero__in{animation:fade-up .9s var(--ease) both;animation-delay:calc(var(--i, 0) * .11s + .1s)}@keyframes fade-up{0%{opacity:0;transform:translateY(18px)}}.hero__lead{max-width:54ch;font-size:clamp(1.05rem,1.4vw,1.2rem);color:var(--ink-2)}.hero__ctas{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px;margin-top:40px}.hero__visual{position:relative}.hero__visual-frame{position:relative;aspect-ratio:4 / 5;overflow:hidden;border-radius:var(--radius);background:var(--dark)}.hero__visual-frame img,.hero__visual-frame .project-cover{width:100%;height:100%;object-fit:cover}.parallax-inner{transform:translate3d(0,var(--parallax, 0px),0) scale(1.12);will-change:transform}.hero__monogram{position:absolute;left:28px;bottom:18px;font-family:var(--font-serif);font-style:italic;font-size:clamp(5rem,10vw,9rem);line-height:1;color:var(--dark-ink);mix-blend-mode:difference}.hero__visual figcaption{display:flex;align-items:center;gap:10px;margin-top:16px;font-size:13.5px;color:var(--muted)}.hero__meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:clamp(56px,7vw,96px);padding-top:24px;border-top:1px solid var(--line)}.hero__meta dt,.cs-meta dt,.contact__details dt{margin-bottom:6px;font-family:var(--font-mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.hero__meta dd{font-weight:500}.hero__stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:48px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.hero__stats li{display:grid;gap:4px;padding:28px 24px 28px 0}.hero__stats li+li{padding-left:24px;border-left:1px solid var(--line)}.hero__stat-value{font-size:clamp(2rem,4vw,3.2rem);font-weight:500;letter-spacing:-.04em;line-height:1}.hero__stat-label{font-size:14px;color:var(--muted)}.section{padding-block:var(--section);scroll-margin-top:var(--header-h)}.section--compact{padding-block:calc(var(--section) * .7)}.section--tint{background:var(--bg-tint)}.section--dark{background:var(--dark);color:var(--dark-ink)}.split{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(32px,6vw,96px)}.split__aside .section-head{position:sticky;top:calc(var(--header-h) + 32px)}.about__body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 48px;margin-top:48px;color:var(--ink-2)}.about__body p:first-child{grid-column:1 / -1;font-size:1.15rem;color:var(--ink)}.about__focus{margin-top:64px;padding-top:32px;border-top:1px solid var(--line)}.focus-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 32px}.focus-list li{position:relative;padding-left:20px;font-size:15px}.focus-list li:before{content:"";position:absolute;left:0;top:.7em;width:8px;height:1px;background:var(--accent)}.reveal{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease),transform .9s var(--ease);transition-delay:var(--delay, 0ms)}.reveal.is-visible{opacity:1;transform:none}.work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(56px,7vw,104px) clamp(24px,4vw,64px)}.work-grid>:nth-child(2n){margin-top:clamp(0px,9vw,140px)}.project-card__link{display:block}.project-card__media{position:relative;aspect-ratio:4 / 3;overflow:hidden;border-radius:var(--radius);background:var(--bg-tint)}.project-card__media .project-cover{width:100%;height:100%;transition:transform 1.1s var(--ease)}.project-card__link:hover .project-cover,.project-card__link:focus-visible .project-cover{transform:scale(1.05)}.project-card__cta{position:absolute;right:16px;bottom:16px;display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;background:var(--bg);font-size:13.5px;font-weight:600;opacity:0;transform:translateY(10px);transition:opacity .4s var(--ease),transform .4s var(--ease)}.project-card__link:hover .project-card__cta,.project-card__link:focus-visible .project-card__cta{opacity:1;transform:none}.project-card__meta{display:flex;flex-wrap:wrap;gap:6px 20px;margin:24px 0 12px;font-family:var(--font-mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.project-card__meta span:first-child{color:var(--accent)}.project-card__title{font-size:clamp(1.4rem,2.2vw,1.85rem);font-weight:600;line-height:1.2;letter-spacing:-.025em}.project-card__headline{font-weight:400;color:var(--muted);transition:color .3s}.project-card__link:hover .project-card__headline{color:var(--ink)}.project-card__desc{margin-top:14px;max-width:56ch;color:var(--ink-2);font-size:15.5px}.project-card__role{margin:12px 0 18px;font-size:14px;font-weight:600}.expertise-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line-strong)}.expertise-card{padding:32px 28px 40px 0;transition:background .4s var(--ease)}.expertise-card+.expertise-card{padding-left:28px;border-left:1px solid var(--line-strong)}.expertise-card__index{font-family:var(--font-mono);font-size:12px;color:var(--accent)}.expertise-card h3{margin:48px 0 12px;font-size:1.4rem;font-weight:600;letter-spacing:-.02em}.expertise-card p{min-height:3.3em;color:var(--muted);font-size:15px}.expertise-card ul{margin-top:28px}.expertise-card li{padding:10px 0;border-top:1px solid var(--line);font-size:15px;transition:padding .3s var(--ease),color .3s}.expertise-card li:hover{padding-left:6px;color:var(--accent)}.tools-list__row{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,7fr);gap:24px;padding:28px 0;border-top:1px solid var(--line)}.tools-list__row:last-child{border-bottom:1px solid var(--line)}.tools-list dt{padding-top:8px;font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.tools-list ul{display:flex;flex-wrap:wrap;gap:4px 0}.tools-list li{font-size:clamp(1.25rem,2.2vw,1.75rem);font-weight:500;letter-spacing:-.02em;transition:color .25s}.tools-list li:not(:last-child):after{content:"/";margin:0 14px;font-weight:300;color:var(--line-strong)}.tools-list li:hover{color:var(--accent)}.timeline__item{display:grid;grid-template-columns:minmax(0,2.5fr) minmax(0,3.5fr) minmax(0,6fr);gap:24px clamp(24px,4vw,56px);padding:48px 0;border-top:1px solid var(--line-strong)}.timeline__item:last-child{border-bottom:1px solid var(--line-strong)}.timeline__period{font-family:var(--font-mono);font-size:13px;color:var(--muted);padding-top:6px}.timeline__head h3{font-size:clamp(1.4rem,2.2vw,1.9rem);font-weight:600;line-height:1.15;letter-spacing:-.025em}.timeline__role{margin-top:8px;color:var(--accent);font-size:15px;font-weight:500}.timeline__body>p{color:var(--ink-2)}.timeline__list{margin:20px 0 24px}.timeline__list li,.cs-list li{position:relative;padding:10px 0 10px 24px;border-top:1px solid var(--line);font-size:15.5px}.timeline__list li:before,.cs-list li:before{content:"";position:absolute;left:0;top:1.35em;width:10px;height:1px;background:var(--accent)}.education{margin-top:72px}.education li{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,5fr) minmax(0,2fr);gap:16px;padding:18px 0;border-top:1px solid var(--line)}.education__degree{font-weight:600}.education__school{color:var(--ink-2)}.education__period{justify-self:end;font-family:var(--font-mono);font-size:13px;color:var(--muted)}.philosophy__quote p{max-width:22ch;font-family:var(--font-serif);font-size:clamp(2.2rem,5.2vw,4.6rem);line-height:1.08;letter-spacing:-.015em}.principles{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin-top:clamp(64px,9vw,128px);border-top:1px solid var(--dark-line)}.principles li{padding:28px 24px 0 0}.principles li+li{padding-left:24px;border-left:1px solid var(--dark-line)}.principles__index{font-family:var(--font-mono);font-size:12px;color:#e0673b}.principles h3{margin:32px 0 10px;font-size:1.15rem;font-weight:600;letter-spacing:-.015em}.principles p{font-size:15px;color:var(--dark-muted)}.testimonials{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.testimonial{display:flex;flex-direction:column;padding:36px 32px 32px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);transition:border-color .3s var(--ease),transform .4s var(--ease)}.testimonial:hover{border-color:var(--line-strong);transform:translateY(-4px)}.testimonial__mark{font-family:var(--font-serif);font-size:4.5rem;line-height:.6;color:var(--accent)}.testimonial blockquote{flex:1;margin:24px 0 36px;font-size:1.1rem;line-height:1.55}.testimonial figcaption{display:grid;gap:2px;padding-top:20px;border-top:1px solid var(--line);font-size:14px}.testimonial__name{font-weight:600}.testimonial__title{color:var(--muted)}.section--contact{background:var(--bg-tint)}.section--contact .section-head{margin-bottom:32px}.contact__title{max-width:20ch;font-size:clamp(2.6rem,6.4vw,5.8rem);font-weight:500;line-height:1;letter-spacing:-.045em}.contact__title em{display:block;color:var(--accent);letter-spacing:-.02em}.contact__grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:clamp(40px,7vw,120px);margin-top:clamp(56px,7vw,96px)}.contact__details dl{display:grid;gap:28px;margin-bottom:40px}.contact__details dd{font-size:1.15rem;font-weight:500}.contact__details dd a{display:inline-flex;align-items:center;gap:6px;border-bottom:1px solid var(--line-strong);transition:color .2s,border-color .2s}.contact__details dd a:hover{color:var(--accent);border-color:var(--accent)}.contact__details .social-list{margin-top:32px}.social-list{display:flex;gap:10px}.social-list a{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line-strong);border-radius:50%;transition:background .3s var(--ease),color .3s var(--ease),border-color .3s var(--ease)}.social-list a:hover{background:var(--ink);border-color:var(--ink);color:var(--bg)}.contact-form{display:grid;gap:24px}.field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.field{display:grid;gap:6px}.field label{font-size:13.5px;font-weight:600}.field input,.field textarea{width:100%;padding:14px 0;border:0;border-bottom:1px solid var(--line-strong);border-radius:0;background:transparent;font:inherit;color:var(--ink);transition:border-color .25s}.field textarea{resize:vertical;min-height:140px}.field input:hover,.field textarea:hover{border-bottom-color:var(--ink-2)}.field input:focus,.field textarea:focus{outline:none;border-bottom-color:var(--accent);box-shadow:0 1px 0 0 var(--accent)}.field.has-error input,.field.has-error textarea{border-bottom-color:#a32020}.field__error{font-size:13px;color:#a32020}.contact-form__footer{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px;margin-top:8px}.form-status{flex:1;min-width:220px;font-size:14px;color:#a32020}.form-success{display:grid;gap:12px;justify-items:start;padding:40px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface)}.form-success__title{font-size:1.5rem;font-weight:600;letter-spacing:-.02em}.site-footer{padding:64px 0 32px;border-top:1px solid var(--line)}.site-footer__inner{display:grid;grid-template-columns:1fr auto;gap:32px;align-items:center}.site-footer__brand p{margin-top:12px;font-size:14px;color:var(--muted)}.site-footer__bottom{grid-column:1 / -1;display:flex;justify-content:space-between;align-items:center;padding-top:24px;border-top:1px solid var(--line);color:var(--muted)}.cs-hero{padding-top:calc(var(--header-h) + clamp(40px,6vw,88px));padding-bottom:clamp(40px,5vw,64px)}.cs-hero__title{margin:24px 0 28px;font-size:clamp(3rem,8vw,7.2rem);font-weight:500;line-height:.95;letter-spacing:-.05em}.cs-hero__title span{display:block;max-width:22ch;margin-top:20px;font-family:var(--font-serif);font-style:italic;font-weight:400;font-size:clamp(1.6rem,3.4vw,2.8rem);line-height:1.1;letter-spacing:-.01em;color:var(--accent)}.cs-hero__lead{max-width:60ch;font-size:1.15rem;color:var(--ink-2)}.cs-meta{display:grid;grid-template-columns:2fr 2fr 2fr 4fr;gap:24px;margin-top:56px;padding-top:24px;border-top:1px solid var(--line)}.cs-meta dd{font-weight:500;font-size:15px}.cs-cover{aspect-ratio:16 / 8;overflow:hidden;border-radius:var(--radius)}.cs-cover .project-cover{width:100%;height:100%}.cs-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin:clamp(48px,6vw,80px) 0 clamp(40px,5vw,72px);border-top:1px solid var(--line-strong)}.cs-metrics li{display:grid;align-content:start;gap:8px;padding:28px 24px 0 0}.cs-metrics li+li{padding-left:24px;border-left:1px solid var(--line)}.cs-metrics__value{font-size:clamp(1.8rem,3.4vw,2.8rem);font-weight:500;line-height:1.05;letter-spacing:-.04em}.cs-metrics__label{font-size:14px;color:var(--muted)}.cs-section{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:24px clamp(32px,6vw,96px);padding:clamp(48px,6vw,80px) 0;border-top:1px solid var(--line)}.cs-section__label{display:flex;gap:14px;align-self:start;position:sticky;top:calc(var(--header-h) + 24px);font-size:1.3rem;font-weight:600;letter-spacing:-.02em}.cs-section__label span{padding-top:6px;font-family:var(--font-mono);font-size:12px;font-weight:400;color:var(--accent)}.cs-section__body{display:grid;gap:20px;color:var(--ink-2)}.cs-lead{font-size:clamp(1.2rem,2vw,1.55rem);line-height:1.45;letter-spacing:-.015em;color:var(--ink)}.cs-list li{font-size:1.05rem;padding-block:14px}.cs-list li:last-child{border-bottom:1px solid var(--line)}.cs-list--ordered{counter-reset:goal}.cs-list--ordered li{counter-increment:goal;padding-left:40px}.cs-list--ordered li:before{content:counter(goal,decimal-leading-zero);width:auto;height:auto;top:1.15em;background:none;font-family:var(--font-mono);font-size:12px;color:var(--accent)}.arch{padding:clamp(20px,3vw,36px);border-radius:var(--radius);background:var(--dark);color:var(--dark-ink)}.arch__layers{display:grid;gap:0}.arch__layer{position:relative;display:grid;grid-template-columns:120px 1fr;gap:16px;align-items:center;padding:14px 0}.arch__layer+.arch__layer:before{content:"";position:absolute;top:-7px;left:50%;width:1px;height:14px;background:var(--dark-muted)}.arch__label{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--dark-muted)}.arch__nodes{display:flex;flex-wrap:wrap;gap:8px}.arch__nodes li{flex:1 1 140px;padding:12px 14px;border:1px solid #3c3a35;border-radius:4px;font-size:14px;text-align:center;transition:border-color .3s}.arch__layer.is-accent .arch__nodes li{border-color:#e0673b;background:#e0673b1f}.arch__nodes li:hover{border-color:var(--dark-ink)}.arch .placeholder{background:#e0673b33;color:#f2a27f}.arch figcaption{margin-top:16px;font-size:13px;color:var(--dark-muted)}.decisions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.decision{padding:28px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);transition:border-color .3s}.decision:hover{border-color:var(--line-strong)}.decision__index{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-family:var(--font-mono);font-size:12px}.decision h3{margin:20px 0 8px;font-size:1.1rem;font-weight:600;color:var(--ink);letter-spacing:-.015em}.decision p{font-size:15px}.cs-next{margin-top:clamp(48px,6vw,96px);background:var(--dark);color:var(--dark-ink)}.cs-next__link{display:grid;gap:16px;padding-block:clamp(64px,9vw,128px)}.cs-next .eyebrow{color:var(--dark-muted)}.cs-next__title{display:inline-flex;align-items:center;gap:.3em;font-size:clamp(2.6rem,7vw,6rem);font-weight:500;line-height:1;letter-spacing:-.045em}.cs-next__title svg{width:.6em;height:.6em;transition:transform .4s var(--ease)}.cs-next__link:hover .cs-next__title svg{transform:translate(12px)}.cs-next__headline{font-family:var(--font-serif);font-style:italic;font-size:clamp(1.3rem,2.4vw,2rem);color:#e0673b}.page-loader{display:grid;place-items:center;gap:16px;min-height:80vh;align-content:center}.page-loader__bar{position:relative;width:160px;height:1px;overflow:hidden;background:var(--line)}.page-loader__bar:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--accent);transform:translate(-100%);animation:load 1.1s var(--ease) infinite}@keyframes load{to{transform:translate(100%)}}.page-loader__label{font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.not-found{display:grid;justify-items:start;gap:24px;min-height:80vh;align-content:center;padding-top:var(--header-h)}.not-found h1{font-size:clamp(3rem,8vw,6.5rem);font-weight:500;line-height:1;letter-spacing:-.045em}.not-found h1 em{color:var(--accent)}.not-found p:not(.eyebrow){color:var(--muted);font-size:1.1rem}@media(max-width:1100px){.expertise-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.expertise-card:nth-child(3){padding-left:0;border-left:0}.expertise-card:nth-child(n+3){border-top:1px solid var(--line-strong)}.principles{grid-template-columns:repeat(2,minmax(0,1fr))}.principles li,.principles li+li{padding:28px 24px 32px 0;border-left:0}.focus-list{grid-template-columns:repeat(2,minmax(0,1fr))}.timeline__item{grid-template-columns:minmax(0,4fr) minmax(0,8fr)}.timeline__period{grid-column:1 / -1}}@media(max-width:900px){.nav,.header-cta{display:none}.menu-toggle{display:block}.hero__grid,.split,.contact__grid,.cs-section{grid-template-columns:1fr}.hero__visual{max-width:520px}.hero__meta,.cs-meta,.hero__stats{grid-template-columns:repeat(2,minmax(0,1fr))}.hero__stats li:nth-child(3){padding-left:0;border-left:0}.hero__stats li:nth-child(n+3){border-top:1px solid var(--line)}.split__aside .section-head,.cs-section__label{position:static}.split__aside .section-head{margin-bottom:0}.testimonials{grid-template-columns:1fr}.work-grid>:nth-child(2n){margin-top:0}}@media(max-width:680px){body{font-size:16px}.work-grid,.expertise-grid,.principles,.about__body,.focus-list,.decisions,.field-row{grid-template-columns:1fr}.expertise-card,.expertise-card+.expertise-card{padding:28px 0 32px;border-left:0;border-top:1px solid var(--line-strong)}.expertise-card h3{margin-top:24px}.expertise-card p{min-height:0}.tools-list__row,.timeline__item,.education li{grid-template-columns:1fr;gap:12px}.education__period{justify-self:start}.arch__layer{grid-template-columns:1fr;gap:8px}.arch__layer+.arch__layer:before{display:none}.cs-cover{aspect-ratio:4 / 3}.cs-metrics li,.cs-metrics li+li{padding:20px 0;border-left:0;border-bottom:1px solid var(--line)}.site-footer__inner{grid-template-columns:1fr}.site-footer__bottom{flex-direction:column;align-items:flex-start;gap:12px}.hero__ctas .btn--primary{width:100%}}@media(hover:none){.project-card__cta{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0ms!important}.reveal{opacity:1;transform:none}.parallax-inner{transform:none}}
