@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/SourceSerif4-Regular.woff2) format("woff2")}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/SourceSerif4-Italic.woff2) format("woff2")}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/SourceSerif4-SemiBold.woff2) format("woff2")}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:600;font-display:swap;src:url(/fonts/SourceSerif4-SemiBold-Italic.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/Inter-Regular.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/Inter-Medium.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/IBMPlexMono-Regular.woff2) format("woff2")}:root{--paper: #F8F5EE;--ink: #1A1A1A;--slate: #3D4852;--slate-soft: #3D4852;--hairline: rgba(61, 72, 82, .28);--bronze: #8B6F47;--petrol: #1F3A4A;--serif: "Source Serif 4", "Source Serif Pro", Georgia, "Times New Roman", serif;--sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--measure: 65ch;--gutter: clamp(20px, 4vw, 48px);--section-y: clamp(72px, 11vw, 144px)}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink)}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:var(--sans);font-size:17px;line-height:1.65;font-weight:400;letter-spacing:.005em}::selection{background:#8b6f4738;color:var(--ink)}.page{max-width:720px;margin:0 auto;padding:0 var(--gutter)}h1,h2,h3,h4{font-family:var(--serif);font-weight:600;font-style:normal;color:var(--ink);letter-spacing:-.005em;margin:0;text-wrap:balance}p{margin:0;max-width:var(--measure);color:var(--ink);text-wrap:pretty}p+p{margin-top:1.1em}a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--hairline);padding-bottom:1px;transition:border-color .15s ease}a:hover{border-bottom-color:var(--ink)}a:focus-visible{outline:2px solid var(--bronze);outline-offset:3px;border-radius:1px}.mono{font-family:var(--mono);font-feature-settings:"tnum" 1,"lnum" 1}.slate{color:var(--slate)}.small{font-size:13.5px;line-height:1.55}.rule{border:0;border-top:1px solid var(--hairline);margin:0}section{padding-top:var(--section-y);padding-bottom:var(--section-y)}section+section{padding-top:0}.sect-rule{max-width:720px;margin:0 auto}.sect-rule hr{margin:0 var(--gutter);border:0;border-top:1px solid var(--hairline)}.eyebrow{font-family:var(--serif);font-weight:600;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--slate);margin-bottom:28px}.wordmark{font-family:var(--serif);font-weight:600;font-size:18px;letter-spacing:.02em;color:var(--ink)}.wordmark .dot{color:var(--bronze)}.hero{padding-top:clamp(56px,8vw,96px);padding-bottom:var(--section-y)}.hero-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-bottom:clamp(72px,12vw,132px)}.hero-head .meta{font-family:var(--mono);font-size:11.5px;letter-spacing:.04em;color:var(--slate);text-transform:uppercase;text-align:right;line-height:1.5}.tagline{font-family:var(--serif);font-weight:600;font-size:clamp(40px,7.4vw,78px);line-height:1.04;letter-spacing:-.018em;color:var(--ink);margin:0}.tagline .stop{color:var(--bronze)}.tagline-sub{font-family:var(--serif);font-weight:400;font-style:italic;font-size:clamp(20px,2.4vw,26px);line-height:1.35;color:var(--slate);margin-top:18px}.hero-sentence{margin-top:clamp(56px,8vw,96px);font-size:clamp(19px,2vw,22px);line-height:1.55;color:var(--ink);max-width:28em}.portrait-wrap{margin-top:clamp(56px,8vw,96px)}.portrait{width:100%;aspect-ratio:4 / 5;background:repeating-linear-gradient(180deg,rgba(61,72,82,.06) 0 1px,transparent 1px 14px),#efeae0;border:1px solid var(--hairline);position:relative;display:flex;align-items:flex-end;justify-content:flex-start}.portrait:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 38% 46% at 50% 42%,rgba(26,26,26,.04),transparent 70%);pointer-events:none}.portrait .cap{font-family:var(--mono);font-size:11px;letter-spacing:.04em;color:var(--slate);padding:14px 16px;text-transform:uppercase}.hero[data-portrait=side] .hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.78fr);gap:clamp(32px,6vw,80px);align-items:end}.hero[data-portrait=side] .portrait-wrap{margin-top:0}.hero[data-portrait=side] .portrait{aspect-ratio:4 / 5.2}.hero[data-portrait=below] .hero-grid{display:block}@media(max-width:720px){.hero[data-portrait=side] .hero-grid{grid-template-columns:1fr;gap:56px}.hero[data-portrait=side] .portrait-wrap{margin-top:24px}}.approach h3{font-size:22px;line-height:1.25;margin-bottom:14px;margin-top:48px}.approach h3:first-of-type{margin-top:0}.approach p{color:var(--ink)}.bio p{font-size:17.5px}.work-list{margin-top:28px;border-top:1px solid var(--hairline)}.work-list .item{padding:26px 0;border-bottom:1px solid var(--hairline)}.work-list .desc{font-size:17px;line-height:1.55;color:var(--ink);max-width:62ch}.stats{display:grid;grid-template-columns:1fr;margin-top:28px;border-top:1px solid var(--hairline)}.stat{display:grid;grid-template-columns:minmax(180px,30%) 1fr;gap:clamp(18px,4vw,40px);align-items:baseline;padding:28px 0;border-bottom:1px solid var(--hairline)}.stat .num{font-family:var(--serif);font-weight:600;font-size:clamp(34px,4.4vw,48px);line-height:1;letter-spacing:-.01em;color:var(--ink);font-variant-numeric:tabular-nums}.stat .num .unit{font-size:.58em;font-weight:600;color:var(--slate);margin-left:6px;letter-spacing:0}.stat .lbl{font-size:16px;line-height:1.5;color:var(--ink);max-width:48ch}.stat .lbl em{font-style:normal;font-family:var(--serif);font-weight:600}.stats-foot{margin-top:22px;color:var(--slate);font-size:14px;line-height:1.55;max-width:60ch;font-style:italic;font-family:var(--serif)}@media(max-width:560px){.stat{grid-template-columns:1fr;gap:6px}}.contact-list{list-style:none;padding:0;margin:24px 0 0;display:flex;flex-direction:column;gap:18px}.contact-list li{font-size:18px;line-height:1.45}.contact-list .lbl{display:inline-block;width:92px;font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;color:var(--slate);text-transform:uppercase;vertical-align:baseline}.contact-list a{border-bottom-color:var(--hairline)}footer{padding:32px var(--gutter) 56px;max-width:720px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px;color:var(--slate);font-size:13.5px;border-top:1px solid var(--hairline);margin-top:var(--section-y)}footer nav{display:flex;gap:24px;align-items:center}footer a{color:var(--slate);border-bottom:0}footer a:hover{color:var(--ink)}.lang{display:flex;gap:0;align-items:center;font-family:var(--mono);font-size:11.5px;letter-spacing:.08em}.lang a{appearance:none;background:transparent;border:0;padding:4px 6px;color:var(--slate);font:inherit;font-family:var(--mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;text-decoration:none}.lang a[aria-current=true]{color:var(--ink)}.lang .sep{color:var(--hairline);margin:0 2px}.legal-page{padding-top:clamp(56px,8vw,96px);padding-bottom:var(--section-y)}.legal-page h1{font-size:clamp(32px,5vw,48px);line-height:1.1;margin-bottom:48px}.legal-page h2{font-size:18px;line-height:1.3;margin-top:40px;margin-bottom:10px}.legal-page h2:first-of-type{margin-top:0}.legal-page p{font-size:16px;color:var(--ink)}.legal-page p+p{margin-top:.7em}.legal-page a{border-bottom-color:var(--hairline)}.coming-soon-page{min-height:100svh;display:flex;flex-direction:column;justify-content:center}.coming-soon-page .inner{padding:var(--section-y) var(--gutter);max-width:720px;margin:0 auto}.coming-soon-page h1{font-size:clamp(36px,6vw,64px);line-height:1.08;margin-bottom:20px}.coming-soon-page p{color:var(--slate);font-size:18px}.coming-soon-page .back{margin-top:40px;display:inline-block;font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--slate);border-bottom:0}.coming-soon-page .back:hover{color:var(--ink)}@media print{:root{--paper: #fff;--ink: #000;--slate: #222;--hairline: #999;--bronze: #000 }body{font-size:11pt}.portrait{background:#f4f4f4}.lang{display:none}section{break-inside:avoid}}@media(prefers-contrast:more){:root{--slate: #1A1A1A;--hairline: #1A1A1A }}
