@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-cyrillic-ext-opsz-normal-DIwfbPUE.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:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-cyrillic-opsz-normal-C0olyEE-.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-greek-opsz-normal-DrHU7SY7.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:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-vietnamese-opsz-normal-BOyYyU_V.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:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-latin-ext-opsz-normal-HoL-AExg.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:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-latin-opsz-normal-BpEBLj1O.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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/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(/assets/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(/assets/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(/assets/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(/assets/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(/assets/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(/assets/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:Caveat;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/caveat-latin-400-normal-D6LQsQ_v.woff2) format("woff2"),url(/assets/caveat-latin-400-normal-BzhAQZkN.woff) format("woff")}@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/caveat-latin-ext-400-normal-D7hBUiug.woff2) format("woff2"),url(/assets/caveat-latin-ext-400-normal-DtiRFvw0.woff) format("woff")}:root{--bg: #f5f3ee;--card: #faf9f5;--ink: #1d1c1a;--text: #3a3834;--muted: #6f6b63;--faint: #9b978d;--line: #e1ddd3;--line-strong: #c4beb1;--serif: "Source Serif 4 Variable", Georgia, serif;--sans: "Inter Variable", system-ui, sans-serif;--hand: "Caveat", cursive;--max: 1200px;--pad: clamp(16px, 5vw, 56px);--edge: max(var(--pad), calc((100vw - var(--max)) / 2))}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}body{margin:0;background:var(--bg);color:var(--text);font:400 15px/1.6 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}h1,h2,h3,p,ol,ul,dl,dd{margin:0;padding:0}ol,ul{list-style:none}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}section{scroll-margin-top:16px}:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.wrap{max-width:calc(var(--max) + 2 * var(--pad));margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}.rule{border-top:1px solid var(--line)}.wrap.rule{border-top:0;background:linear-gradient(var(--line),var(--line)) no-repeat top / calc(100% - 2 * var(--pad)) 1px}.section{padding-top:48px;padding-bottom:48px}.label{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}.h2{font:400 clamp(30px,3.4vw,40px)/1.1 var(--serif);color:var(--ink);letter-spacing:-.01em}.lead{color:var(--muted);font-size:14px;margin-top:14px;max-width:48ch}.link-arrow{display:inline-flex;gap:6px;margin-top:22px;font-size:13px;color:var(--ink);white-space:nowrap}.link-arrow:hover,.contact-links a:hover{text-decoration:underline;text-underline-offset:4px}.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;font-size:13px;border:1px solid var(--ink);transition:background-color .2s,color .2s}.btn-dark{background:var(--ink);color:var(--bg)}.btn-dark:hover{background:#000}.btn-line:hover{background:var(--ink);color:var(--bg)}.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:16px}.tag{font-size:10.5px;line-height:1.4;padding:3px 8px;border:1px solid var(--line);background:var(--bg);color:var(--muted)}.photo{width:100%;height:100%;object-fit:cover;background:#d8d2c5}.nav{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:22px;padding-bottom:22px}.brand img{width:auto;height:20px}.nav-links{display:flex;gap:40px;font-size:13px}.nav-links a:hover,.footer-links a:hover{color:var(--ink)}.nav-end{display:flex;align-items:center;gap:18px;font-size:12px;color:var(--muted)}.lang{display:flex;gap:6px;color:var(--faint)}.lang a:hover{color:var(--ink)}.lang a[aria-current]{color:var(--ink);font-weight:600}.hero{display:grid;grid-template-columns:1fr 1.08fr;gap:clamp(32px,7vw,100px);padding-top:28px;padding-bottom:48px}.hero-text{padding-top:36px}.hero h1{font:400 clamp(40px,5.2vw,66px)/1.02 var(--serif);color:var(--ink);letter-spacing:-.025em;margin-bottom:28px}.hero-text>p:not(.label,.meta){font-size:16px;max-width:42ch}.hero-text>p+p:not(.meta){margin-top:16px}.cta{display:flex;flex-wrap:wrap;gap:14px;margin:30px 0 22px}.meta{font-size:12px;color:var(--muted)}.hero-art{position:relative}.hero-photo{aspect-ratio:1 / .98}.note{position:absolute;font:400 21px/1.05 var(--hand);color:var(--text)}.note-a{left:-118px;top:30px;transform:rotate(-8deg)}.note-a svg{display:block;width:70px;height:110px;margin:6px 0 0 26px;fill:none;stroke:var(--text);stroke-width:1.1}.note-b{right:-26px;bottom:-16px;background:var(--bg);padding:16px 10px 10px 18px}.note-b span{display:block;transform:rotate(-7deg)}.split{display:grid;grid-template-columns:1fr 1.1fr;gap:48px;align-items:center;padding-top:44px;padding-bottom:44px}.icons{display:grid;grid-template-columns:repeat(5,1fr);gap:28px 12px;text-align:center;font-size:11.5px}.icons svg{display:block;width:24px;height:24px;margin:0 auto 8px;fill:var(--ink)}.services{display:grid;grid-template-columns:.9fr 2fr;gap:48px;padding-top:48px;padding-bottom:48px}.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.card{position:relative;display:flex;flex-direction:column;padding:22px 20px 18px;background:var(--card);border:1px solid var(--line)}.card-num{position:absolute;top:8px;left:9px;font-size:9px;color:var(--faint)}.card-icon{width:22px;height:22px;margin-bottom:18px;fill:none;stroke:var(--ink);stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}.card h3{font:400 21px/1.2 var(--serif);color:var(--ink);margin-bottom:8px}.card p{flex:1;font-size:13px;line-height:1.55}.work-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px}.projects{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.project{display:flex;flex-direction:column;padding:14px 14px 18px;background:var(--card);border:1px solid var(--line);transition:border-color .2s}.project:hover{border-color:var(--line-strong)}.p-head{display:flex;align-items:baseline;gap:14px}.p-name{font-size:14px;font-weight:500;color:var(--ink)}.p-year{font-size:11px;color:var(--faint)}.p-arrow{margin-left:auto;color:var(--ink);transition:transform .2s}.project:hover .p-arrow{transform:translate(2px,-2px)}.p-kind{font-size:11.5px;color:var(--muted);margin:2px 0 12px}.p-shot{width:100%;aspect-ratio:16 / 10;object-fit:cover;object-position:top;border:1px solid var(--line)}.p-title{font:400 20px/1.25 var(--serif);color:var(--ink);margin:18px 0 6px}.p-text{font-size:13px}.p-open{margin-top:16px;font-size:12.5px;color:var(--ink)}.project:hover .p-open{text-decoration:underline;text-underline-offset:4px}.steps{display:grid;grid-template-columns:repeat(4,1fr);margin-top:28px;border-top:1px solid var(--line)}.step{padding:22px 24px 0 0}.step+.step{padding-left:24px;border-left:1px solid var(--line)}.step-num{font:400 32px/1 var(--serif);color:var(--ink)}.step h3{font-size:14px;font-weight:500;color:var(--ink);margin:12px 0 6px}.step p{font-size:13px;color:var(--muted)}.bleed{display:grid;grid-template-columns:minmax(0,34%) 1fr;margin-top:16px}#contact{grid-template-columns:minmax(0,30%) 1fr}.bleed .photo{min-height:340px}#contact .photo{object-position:center 70%}.bleed-body{display:grid;gap:40px;padding:32px var(--edge) 32px clamp(24px,4vw,48px)}.bleed-body p:not(.label){font-size:14px;max-width:64ch;margin-top:14px}.about-body{grid-template-columns:1fr 170px}.stats{display:flex;flex-direction:column;justify-content:center;gap:24px;padding-left:32px;border-left:1px solid var(--line)}.stats dt{font:400 32px/1 var(--serif);color:var(--ink)}.stats dd{font-size:12px;color:var(--muted);margin-top:4px}.contact-body{grid-template-columns:1fr minmax(280px,.85fr);gap:clamp(32px,5vw,72px)}.contact-links{display:flex;flex-wrap:wrap;gap:16px 44px;margin-top:28px;font-size:13px;color:var(--ink)}.contact-links a{display:inline-flex;align-items:center;gap:10px}.contact-links svg{width:15px;height:15px;fill:var(--ink)}.contact-links svg.stroke{fill:none;stroke:var(--ink);stroke-width:1.6}.form{display:grid;gap:20px}.field>span{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.field input,.field textarea{display:block;width:100%;padding:6px 0 8px;font:inherit;font-size:15px;color:var(--ink);background:transparent;border:0;border-bottom:1px solid var(--line-strong);border-radius:0;resize:vertical;transition:border-color .2s}.field input:focus,.field textarea:focus{outline:none;border-bottom-color:var(--ink)}.hp{position:absolute;left:-9999px}.form-foot{display:flex;align-items:center;justify-content:space-between;gap:16px}.form-status{font-size:12.5px;color:var(--muted)}.form-status.error{color:#a1382a}.contact-cta{display:inline-flex;align-items:center;gap:14px;margin-left:auto;padding:0;font:inherit;font-size:14px;color:var(--ink);background:none;border:0;cursor:pointer;white-space:nowrap}.contact-cta:disabled{opacity:.6;cursor:wait}.circle{display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--ink);border-radius:50%;transition:background-color .2s,color .2s}.contact-cta:hover .circle{background:var(--ink);color:var(--bg)}.footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px 36px;margin-top:16px;padding-top:24px;padding-bottom:28px;font-size:12px;color:var(--muted);border-top:1px solid var(--line)}.footer-links{display:flex;gap:36px}@media (max-width: 1100px){.note-a{display:none}}@media (max-width: 900px){.hero,.split,.services,.about-body,.contact-body{grid-template-columns:1fr}.hero-text{padding-top:8px}.note-b{right:0;bottom:-10px}.bleed,#contact{grid-template-columns:1fr}.bleed .photo{min-height:260px}.bleed-body{padding:32px var(--pad)}.stats{flex-direction:row;flex-wrap:wrap;padding:24px 0 0;border-left:0;border-top:1px solid var(--line)}.steps{grid-template-columns:repeat(2,1fr)}.step:nth-child(3){padding-left:0;border-left:0}}@media (max-width: 640px){.nav{flex-wrap:wrap}.nav-links{order:3;width:100%;gap:22px;overflow-x:auto}.city{display:none}.cards,.projects,.steps{grid-template-columns:1fr}.step,.step+.step{padding-left:0;border-left:0}.work-head{flex-direction:column;align-items:flex-start}.icons{grid-template-columns:repeat(4,1fr)}.footer-links{gap:20px}}@media (min-width: 901px){.project:first-child{grid-column:1 / -1;display:grid;grid-template-columns:1.35fr 1fr;grid-template-rows:repeat(5,auto) 1fr;column-gap:28px;align-items:start}.project:first-child .p-shot{grid-column:1;grid-row:1 / -1}.project:first-child>:not(.p-shot){grid-column:2}.project:first-child .p-title{font-size:26px;margin-top:18px}}
