:root{--bg:#f5f5f2;--ink:#23292c;--muted:#62696c;--line:rgba(35,41,44,.2);--accent:#c92523;--header:rgba(245,245,242,.86);--gutter:clamp(24px,4vw,80px);color-scheme:light;font-family:Arial,Helvetica,sans-serif;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-size:16px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{color:inherit;cursor:pointer}button:disabled{cursor:default}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:6px}button{background:none;border:0}::selection{background:var(--accent);color:white}[data-theme=dark]{--bg:#151b1e;--ink:#f4f5f1;--muted:#b6bdc0;--line:rgba(240,245,245,.22);--accent:#fa6259;--header:rgba(21,27,30,.85);color-scheme:dark}.skip{position:fixed;top:-80px;left:20px;z-index:100;background:var(--bg);padding:15px}.skip:focus{top:12px}.site-header{position:fixed;inset:0 var(--gutter) auto;z-index:20;height:104px;display:flex;align-items:center;gap:40px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;font-size:29px;font-weight:700;letter-spacing:.09em;line-height:1}.brand img{width:52px;height:56px;object-fit:contain}.desktop-nav{margin-left:auto;display:flex;gap:36px;align-items:center}.desktop-nav a{font-size:14px;position:relative}.desktop-nav a:after{content:'';position:absolute;left:0;right:100%;bottom:-9px;height:2px;background:var(--accent);transition:right .2s}.desktop-nav a:hover:after,.desktop-nav a[aria-current=page]:after{right:0}.header-actions{display:flex;align-items:center;gap:28px}.theme-toggle{width:40px;height:44px;display:grid;place-items:center}.theme-toggle svg{width:23px;height:23px}.contact-link{border:1px solid var(--ink);padding:14px 22px;font-size:14px;display:flex;gap:22px;align-items:center;transition:background .2s,color .2s}.contact-link:hover{background:var(--ink);color:var(--bg)}.menu-toggle{display:none;width:44px;height:44px}.menu-toggle span{height:1px;display:block;background:currentColor;margin:7px 0}.mobile-menu{inset:0;margin:0 0 0 auto;width:min(430px,100%);height:100%;max-height:none;background:var(--bg);color:var(--ink);border:0;padding:100px 32px 40px;max-width:none}.mobile-menu::backdrop{background:#0008}.mobile-menu nav{display:flex;flex-direction:column;gap:24px;margin-bottom:50px;font-size:36px;letter-spacing:-.04em}.menu-close{position:absolute;right:24px;top:24px;font-size:36px;width:44px;height:44px}
@font-face{font-family:Manrope;src:url('/assets/manrope-400.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:Manrope;src:url('/assets/manrope-500.ttf') format('truetype');font-weight:500;font-display:swap}@font-face{font-family:Manrope;src:url('/assets/manrope-600.ttf') format('truetype');font-weight:600;font-display:swap}@font-face{font-family:Manrope;src:url('/assets/manrope-700.ttf') format('truetype');font-weight:700;font-display:swap}@font-face{font-family:Manrope;src:url('/assets/manrope-800.ttf') format('truetype');font-weight:800;font-display:swap}
:root{font-family:Manrope,Arial,Helvetica,sans-serif}.hero-copy h1{font-weight:500}.inner-page .site-header{position:sticky;top:0;margin:0 var(--gutter);background:var(--header);backdrop-filter:blur(18px)}.inner-page .site-header:before{content:'';position:absolute;inset:0 calc(-1 * var(--gutter));background:var(--header);z-index:-1}.page-intro{padding:100px var(--gutter) 80px}.page-intro h1{font-size:clamp(45px,6.4vw,96px);font-weight:500;line-height:1.06;letter-spacing:-.065em;margin:0 0 48px}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;max-width:1250px}.intro-grid>p{margin:0}.lead{font-size:clamp(22px,2.25vw,34px);letter-spacing:-.04em;line-height:1.45}.intro-grid p:not(.lead),.editorial-section p:not(.eyebrow),.service-detail p,.contact-preparation>div>p{line-height:1.8;color:var(--muted);font-size:16px}.narrow{max-width:700px}.studio-figure{margin:0 var(--gutter);position:relative;overflow:hidden;height:480px;border:1px solid var(--line)}.studio-figure img{width:100%;height:100%;object-fit:cover}.studio-figure>span{position:absolute;bottom:0;left:0;padding:16px 22px;background:var(--bg);font-size:12px}.editorial-section{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding:120px var(--gutter)}h2{font-size:clamp(34px,3.7vw,56px);font-weight:500;letter-spacing:-.055em;line-height:1.15;margin:0 0 32px}h3{font-size:22px;font-weight:500;letter-spacing:-.025em;margin:0 0 14px}.principles article{padding:0 0 32px;margin-bottom:32px;border-bottom:1px solid var(--line)}.principles article:last-child{margin-bottom:0}.principles p{margin-bottom:0}.site-footer{padding:64px var(--gutter) 24px;background:var(--ink);color:var(--bg)}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-bottom:70px}.footer-top>p{font-size:clamp(30px,3.5vw,52px);line-height:1.15;letter-spacing:-.05em;margin:0}.footer-bottom{border-top:1px solid currentColor;padding-top:24px;display:flex;gap:35px;align-items:center;font-size:12px}.footer-brand{font-weight:700;font-size:22px;letter-spacing:.1em;margin-right:auto}.service-index{display:flex;margin:0 var(--gutter) 50px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service-index a{padding:28px 28px 28px 0;margin-right:40px;display:flex;gap:30px;font-size:16px}.service-index a:hover{color:var(--accent)}.service-detail{display:grid;grid-template-columns:1fr 1fr;gap:10%;margin:0 var(--gutter);padding:80px 0;border-bottom:1px solid var(--line);scroll-margin-top:105px}.service-detail:last-child{border-bottom:0;padding-bottom:120px}.service-title{display:flex;gap:25px;align-items:flex-start}.service-title h2{font-size:clamp(28px,3.4vw,48px)}.service-symbol{font-size:40px;line-height:1.1;color:var(--accent)}.service-detail .service-lead{font-size:24px;line-height:1.4;color:var(--ink);margin-top:0;letter-spacing:-.03em}.scope-list{list-style:none;margin:30px 0;padding:0}.scope-list li{font-size:14px;line-height:1.65;padding:12px 0;border-bottom:1px solid var(--line)}.scope-list li:before{content:'+';color:var(--accent);padding-right:15px}.project-hero{margin:0 var(--gutter)}.project-hero img{width:100%;height:min(64vw,680px);object-fit:cover;display:block}.project-hero figcaption{display:flex;justify-content:space-between;gap:24px;font-size:12px;line-height:1.6;padding:18px 0;border-bottom:1px solid var(--line)}.project-contact{margin:0 var(--gutter) 100px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:60px}.contact-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:10%;padding:0 var(--gutter) 100px}.small-label{font-size:13px;color:var(--muted);margin:0 0 16px}.email-large{font-size:clamp(20px,2.5vw,38px);letter-spacing:-.04em;display:inline-flex;gap:20px;border-bottom:1px solid var(--ink);padding-bottom:12px;overflow-wrap:anywhere}.contact-primary>p:not(.small-label){font-size:14px;line-height:1.7;color:var(--muted);margin-top:20px}.phone-row{display:flex;gap:70px;margin-top:50px}.phone-row a{font-size:24px;letter-spacing:-.03em}.address-block{border-left:1px solid var(--line);padding-left:45px}.address-block address{font-style:normal;font-size:19px;line-height:1.8;margin-bottom:25px}.contact-preparation{margin:0 var(--gutter) 100px;border-top:1px solid var(--line);padding-top:50px;display:grid;grid-template-columns:1fr 1fr;column-gap:10%}.contact-preparation>.eyebrow{grid-column:1/-1}.solid-link{background:var(--ink);color:var(--bg);display:inline-flex;gap:40px;align-items:center;padding:18px 24px;font-size:14px;margin-top:20px}.contact-preparation .fine-print{font-size:12px}.legal-copy{max-width:800px;margin:0 var(--gutter) 100px}.legal-copy h2{font-size:26px;margin:45px 0 15px}.legal-copy p{color:var(--muted);line-height:1.8}.legal-copy a{text-decoration:underline}.inner-page:has(.contact-intro) .footer-top{display:none}.inner-page:has(.contact-intro) .site-footer{padding-top:25px}@media(max-width:800px){.page-intro{padding-top:65px;padding-bottom:55px}.intro-grid,.editorial-section,.service-detail,.contact-grid,.contact-preparation{grid-template-columns:1fr;gap:35px}.page-intro h1{margin-bottom:30px}.studio-figure{height:340px}.editorial-section{padding-top:65px;padding-bottom:60px}.service-detail{padding:50px 0}.service-title h2{margin:0}.service-index{overflow-x:auto}.service-index a{margin-right:15px;gap:15px;white-space:nowrap;font-size:14px}.project-hero figcaption{display:block}.project-hero figcaption span{display:block;margin-bottom:5px}.address-block{border-left:0;padding:30px 0 0;border-top:1px solid var(--line)}.contact-grid{padding-bottom:55px}.contact-preparation{margin-bottom:60px;gap:10px}.contact-preparation>.eyebrow{grid-column:auto}.footer-bottom{flex-wrap:wrap;gap:20px}.footer-bottom>span:first-of-type{width:100%;order:2}.footer-brand{font-size:20px}.footer-top{align-items:flex-start;padding-bottom:50px}.footer-top .text-link{flex-shrink:0}.project-contact{display:block;margin-bottom:60px}}@media(max-width:480px){.page-intro h1{font-size:43px}.footer-top{display:block}.footer-top .text-link{margin-top:28px}.phone-row{gap:30px}.phone-row a{font-size:20px}.email-large{font-size:22px;gap:8px}.address-block address{font-size:17px}.studio-figure>span{font-size:11px}.service-detail .service-lead{font-size:22px}.project-hero{margin:0}.project-hero figcaption{padding:15px var(--gutter)}.project-hero img{height:380px}}

@media(max-width:900px){.site-header{gap:20px;height:86px}.desktop-nav{gap:22px}.header-actions{gap:12px}.brand{font-size:24px}.brand img{width:44px;height:46px}}@media(max-width:640px){.site-header{height:78px}.desktop-nav,.contact-link{display:none}.header-actions{margin-left:auto;gap:12px}.menu-toggle{display:block}.brand{font-size:22px}.brand img{width:37px;height:44px}}.menu-open{overflow:hidden}.discover-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;background:#23292c;color:#fff;padding:17px 23px;font-size:14px;line-height:1.4;border:1px solid #23292c}.discover-cta:hover{background:#363f44}.discover-cta span{font-size:22px;line-height:1}[data-theme=dark] .discover-cta{border-color:#70797e}[data-theme=dark] .brand img{background:#f5f5f2;border-radius:3px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
