@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+460-52F,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(/_astro/manrope-cyrillic-wght-normal.Dvxsihut.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/manrope-greek-wght-normal.DL7QRZyv.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/manrope-vietnamese-wght-normal.usUDDRr7.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/manrope-latin-ext-wght-normal.Ch3YOpNY.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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(/_astro/manrope-latin-wght-normal.DHIcAJRg.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@layer reset{*,:before,:after{box-sizing:border-box}*{margin:0}html{scroll-behavior:smooth;scroll-padding-top:120px}body{min-width:320px}img,svg{max-width:100%;display:block}img{height:auto}button,input,select{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer;color:inherit;background:0 0;border:0}address{font-style:normal}figure{margin:0}[hidden]{display:none!important}}@layer base{:root{--ink:#111414;--paper:#f0f0e9;--soft:#e4e6dd;--accent:#b3ce57;--lime:#96b92b;--sage:#566159;--line:#1114142e;--gutter:clamp(22px, 4.8vw, 88px);--ease:cubic-bezier(.22, 1, .36, 1)}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:Manrope Variable,sans-serif;font-size:15px;line-height:1.65}::selection{background:var(--lime);color:var(--ink)}h1,h2,h3{letter-spacing:-.055em;font-weight:500;line-height:1.08}h1{font-size:clamp(50px,6.5vw,110px)}h2{font-size:clamp(36px,4.1vw,70px)}h3{font-size:24px}p{max-width:68ch}em{font-style:normal}a,button,input,select{touch-action:manipulation;-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:6px;outline:3px solid #667d21}input:focus-visible,select:focus-visible{outline-offset:2px}section[id]{scroll-margin-top:130px}.container{width:min(calc(100% - var(--gutter) * 2), 1440px);margin-inline:auto}.section{padding-block:clamp(80px,9vw,144px)}.muted{color:var(--sage)}.small{font-size:13px;line-height:1.8}.eyebrow{letter-spacing:.13em;text-transform:uppercase;align-items:center;gap:12px;font-size:10px;font-weight:650;line-height:1.4;display:flex}.eyebrow>span:first-child:not(.status-dot){color:var(--sage)}.status-dot{background:var(--lime);border-radius:50%;flex:none;width:7px;height:7px;display:inline-block}.arrow{width:23px;height:23px;transition:transform .35s var(--ease);flex:none}.arrow.diagonal{transform:rotate(-45deg)}.text-link{align-items:center;gap:26px;min-height:44px;font-size:12px;font-weight:650;line-height:1.5;display:inline-flex}.text-link:hover .arrow{transform:translate(4px)}.text-link:hover .diagonal{transform:rotate(-45deg)translate(4px)}.button-row{flex-wrap:wrap;align-items:center;gap:26px;display:flex}.button{border-radius:3px;justify-content:space-between;align-items:center;gap:30px;min-height:50px;padding:15px 21px;font-size:12px;font-weight:650;line-height:1.5;transition:background .25s,color .25s,transform .25s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button:hover .arrow{transform:translate(4px)}.button.dark{background:var(--ink);color:var(--paper)}.button.dark:hover{background:#303a30}.button.lime{background:var(--accent);color:var(--ink)}.button.lime:hover{background:#cae37b}.button.outline{border:1px solid var(--line);background:0 0}.button.outline:hover{background:var(--soft)}.image-reveal{background:#343b37;height:100%;overflow:hidden}.image-reveal img{object-fit:cover;width:100%;height:100%;transition:transform 1s var(--ease)}.skip-link{z-index:100;background:var(--accent);color:var(--ink);padding:12px 20px;position:fixed;top:15px;left:20px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}[data-reveal]{transition:opacity .9s var(--ease), transform .9s var(--ease)}.reveal-pending{opacity:0;transform:translateY(25px)}}@layer components{.site-header{z-index:50;top:23px;left:var(--gutter);right:var(--gutter);background:var(--paper);border-radius:5px;justify-content:space-between;align-items:center;max-width:1440px;height:86px;margin-inline:auto;padding:10px 14px 10px 24px;transition:box-shadow .3s,background .3s;display:flex;position:absolute}.site-header.is-scrolled{position:fixed;top:12px;box-shadow:0 4px 30px #0000000d}.brand{align-items:center;gap:22px;display:flex}.brand img{object-fit:contain;width:61px;height:62px}.brand-caption{letter-spacing:.11em;border-left:1px solid var(--line);padding-left:20px;font-size:8px;line-height:1.6}.site-header nav{align-items:center;gap:28px;display:flex}.site-header nav>a{align-items:center;min-height:44px;font-size:11px;font-weight:600;display:inline-flex;position:relative}.site-header nav>a:not(.header-cta):after{content:"";background:var(--sage);width:0;height:2px;transition:width .25s;position:absolute;bottom:5px;left:0}.site-header nav>a:hover:after,.site-header nav>a[aria-current]:after{width:100%}.site-header nav .header-cta{background:var(--accent);border-radius:3px;gap:22px;margin-left:12px;padding:11px 16px}.header-cta:hover .arrow{transform:rotate(-45deg)translate(4px)}.menu-toggle{display:none}.hero{height:max(840px,100svh);max-height:1120px;color:var(--paper);background:var(--ink);position:relative;overflow:hidden}.hero-image{position:absolute;inset:0}.hero-image img{object-position:50% 55%;animation:image-in 1.8s var(--ease) both}.hero-shade{background:linear-gradient(90deg,#070d0cb8,#070d0c3d),linear-gradient(#0000 30%,#070d0ce6);position:absolute;inset:0}.hero-content{flex-direction:column;justify-content:flex-end;height:100%;padding-top:160px;padding-bottom:130px;display:flex;position:relative}.hero-content>.eyebrow{letter-spacing:.16em;margin-bottom:34px;font-size:10px}.hero h1{letter-spacing:-.065em;max-width:1100px;font-size:clamp(58px,6.7vw,113px);line-height:1.02}.hero h1 em{color:#d1d8bc}.hero-base{justify-content:space-between;align-items:flex-end;gap:30px;margin-top:35px;display:flex}.hero-description{color:#e0e4dd;margin-bottom:25px;font-size:14px;line-height:1.8}.hero-secondary{border-bottom:1px solid #ffffff5e;align-items:center;gap:16px;min-height:48px;font-size:12px;display:inline-flex}.hero-secondary:hover .arrow{transform:rotate(-45deg)translate(5px)}.hero-project{border-top:1px solid #ffffff54;flex:none;width:220px;padding-top:18px}.hero-project>.eyebrow{color:#d2d8cb;margin-bottom:10px;font-size:9px}.hero-project>span:last-child{padding-right:30px;font-size:14px;line-height:1.6;display:block;position:relative}.hero-project .arrow{position:absolute;bottom:2px;right:0}.hero-rail{letter-spacing:.13em;text-transform:uppercase;border-top:1px solid #ffffff38;justify-content:space-between;align-items:center;padding-top:22px;font-size:9px;display:flex;position:absolute;bottom:28px;left:0;right:0}.hero-rail a{align-items:center;gap:32px;display:flex}.hero-rail a span{font-size:20px;line-height:1}.hero-enter{animation:text-in 1.1s var(--ease) both}.hero h1{animation-delay:.1s}.hero-base>.hero-enter{animation-delay:.2s}.hero-base>.hero-project{animation-delay:.3s}.intro-grid{grid-template-columns:1.4fr 1fr;gap:8%;margin-top:45px;display:grid}.intro-grid h2{font-size:clamp(32px,3.6vw,60px);line-height:1.16}.intro-copy{max-width:425px;padding-top:3px}.intro-copy p{margin-bottom:22px;font-size:14px}.intro-copy p:first-child{font-size:17px;line-height:1.7}.intro-copy .text-link{margin-top:8px}.intro-baseline{border-top:1px solid var(--line);color:var(--sage);justify-content:space-between;align-items:center;margin-top:64px;padding-top:25px;font-size:11px;display:flex}.intro-baseline>span:first-child{align-items:center;gap:20px;display:flex}.intro-baseline strong{letter-spacing:-.05em;color:var(--ink);font-size:31px;font-weight:500}.projects-section{background:var(--soft)}.section-heading{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:50px;display:flex}.section-heading h2{max-width:800px;margin-top:24px}.section-heading>.text-link{flex:none;margin-bottom:4px}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:50px 27px;display:grid}.editorial-grid{grid-template-columns:1.2fr 1fr;gap:60px 65px}.editorial-grid .project-card:nth-child(2n){padding-top:100px}.project-card{min-width:0}.project-link{display:block}.project-visual{border-radius:3px;height:320px;position:relative;overflow:hidden}.project-visual .image-reveal{height:100%}.project-link:hover img{transform:scale(1.045)}.project-open{background:var(--paper);border-radius:50%;place-items:center;width:40px;height:40px;transition:background .25s;display:grid;position:absolute;bottom:15px;right:15px}.project-link:hover .project-open{background:var(--accent)}.image-tag{background:var(--paper);border-radius:2px;padding:6px 11px;font-size:10px;line-height:1.3;position:absolute;top:16px;left:16px}.project-meta{justify-content:space-between;gap:15px;padding-top:17px;display:flex}.project-location{color:#4e5852;letter-spacing:.015em;margin-bottom:6px;font-size:10px}.project-location>span{margin-inline:5px}.project-meta h3{letter-spacing:-.035em;max-width:500px;font-size:19px;line-height:1.3}.project-index{color:var(--sage);padding-top:3px;font-size:10px}.editorial-grid .project-visual{height:460px}.editorial-grid .project-card:nth-child(2n) .project-visual{height:350px}.editorial-grid .project-meta h3{font-size:23px}.archive-callout{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:25px;margin-top:64px;padding-top:28px;display:flex}.archive-callout p{font-size:16px;line-height:1.6}.expertise-grid{grid-template-columns:.75fr 1.5fr;gap:9%;margin-top:70px;display:grid}.expertise-intro>p{max-width:290px;margin-bottom:28px;font-size:15px}.service-row{border-top:1px solid var(--line);align-items:center;gap:25px;padding-block:30px;transition:padding .3s;display:flex}.service-row:last-child{border-bottom:1px solid var(--line)}.service-row h3{letter-spacing:-.04em;flex:1;font-size:24px;line-height:1.3}.service-number{color:var(--sage);font-size:10px}.service-row:hover{padding-left:12px}.service-row:hover>.arrow{transform:rotate(-45deg)translate(4px)}.technical-mark{background-color:#0000;background-image:linear-gradient(#11141408 1px,#0000 1px),linear-gradient(90deg,#11141408 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:20px 20px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;width:170px;height:160px;margin-top:55px;position:relative}.technical-mark>span{border:1px solid #8a9586;width:110px;height:90px;position:absolute;top:20px;left:20px;transform:skewY(-20deg)}.technical-mark>span:nth-child(2){top:30px;left:30px}.technical-mark>span:nth-child(3){top:40px;left:40px}.technical-mark>span:nth-child(4){border-color:var(--lime);top:50px;left:50px}.technical-mark i{letter-spacing:.1em;font-size:8px;font-style:normal;position:absolute;bottom:-25px;left:0}.experience-section{background:var(--ink);color:var(--paper);grid-template-columns:1.05fr 1fr;display:grid}.experience-photo{min-height:700px;position:relative}.experience-photo .image-reveal{position:absolute;inset:0}.experience-photo img{object-position:50% 45%}.photo-caption{color:#fff;background:#111414c9;width:fit-content;padding:7px 12px;font-size:10px;position:absolute;bottom:24px;left:30px;right:30px}.experience-copy{padding:90px clamp(35px,6vw,120px)}.experience-copy>.eyebrow{color:#b7c0af;margin-bottom:30px}.experience-copy h2{margin-bottom:35px;font-size:clamp(38px,4vw,66px);line-height:1.13}.experience-copy h2 em{color:var(--accent)}.experience-copy>p:not(.eyebrow){color:#bdc5ba;max-width:390px;margin-bottom:20px;font-size:13px}.experience-copy .text-link{margin-top:10px}.cta-section{background:var(--accent);padding-block:80px 60px}.cta-section .status-dot{background:var(--ink)}.cta-line{justify-content:space-between;align-items:center;gap:30px;margin-top:30px;padding-bottom:45px;display:flex}.cta-line h2{font-size:clamp(42px,5.4vw,90px);line-height:1.1}.cta-line em{color:#36422a}.circle-link{border:1px solid #11141477;border-radius:50%;flex:none;place-items:center;width:98px;height:98px;transition:background .3s,transform .3s;display:grid}.circle-link .arrow{width:46px;height:46px}.circle-link:hover{background:var(--ink);color:var(--accent);transform:rotate(45deg)}.cta-bottom{border-top:1px solid #1114144a;justify-content:space-between;align-items:center;gap:30px;padding-top:27px;display:flex}.cta-bottom p{font-size:12px}.site-footer{background:var(--ink);color:var(--soft);padding-block:65px 25px}.footer-grid{grid-template-columns:1fr .8fr 1.4fr 1.2fr;gap:40px;display:grid}.footer-brand{width:105px}.footer-brand img{filter:invert();width:105px;height:auto}.footer-grid .eyebrow{color:#acb6a8;margin-bottom:23px;font-size:9px}.footer-grid nav{flex-direction:column;align-items:flex-start;display:flex}.footer-grid a:not(.footer-brand),.footer-grid address{font-size:11px;line-height:1.9}.footer-grid>div>a{overflow-wrap:anywhere;margin-bottom:8px;display:block}.footer-grid>div>a.text-link{gap:16px;width:fit-content;margin-top:10px;display:flex}.footer-grid a:hover{color:var(--accent)}.footer-grid nav a{min-height:29px;padding-block:4px}.footer-bottom{color:#a7b0a3;border-top:1px solid #ffffff28;justify-content:space-between;gap:20px;margin-top:55px;padding-top:22px;font-size:9px;display:flex}.page-intro{padding-top:185px;padding-bottom:70px}.page-intro>.eyebrow{margin-bottom:36px}.page-intro-grid{grid-template-columns:1.5fr .7fr;align-items:end;gap:9%;display:grid}.page-intro-grid h1{font-size:clamp(48px,6.8vw,108px);line-height:1.08}.page-intro-grid>div{max-width:340px;padding-bottom:7px}.page-intro-grid>div>p{margin-bottom:23px;font-size:16px}.page-intro-grid>div>p.small{margin-bottom:0;font-size:12px}.portfolio-section{padding-bottom:90px}.portfolio-tools{border-block:1px solid var(--line);grid-template-columns:1.5fr .75fr 1.1fr auto;align-items:end;gap:20px;margin-bottom:28px;padding:28px 0;display:grid}.portfolio-tools label{text-transform:uppercase;letter-spacing:.08em;margin-bottom:11px;font-size:10px;display:block}.portfolio-tools input,.portfolio-tools select{width:100%;height:45px;color:var(--ink);background:0 0;border:0;border-bottom:1px solid #9a9f92;border-radius:0;padding:8px 3px;font-size:12px}.portfolio-tools select{padding-right:18px}.reset-filters{text-underline-offset:4px;min-height:45px;padding-inline:10px;font-size:11px;text-decoration:underline}.results-line{color:var(--sage);justify-content:space-between;gap:20px;margin-bottom:35px;font-size:10px;display:flex}.portfolio-section .project-visual{height:290px}.project-text-visual{background:var(--soft);border:1px solid var(--line);border-radius:3px;flex-direction:column;justify-content:space-between;height:290px;padding:25px;transition:background .3s;display:flex;position:relative}.project-text-visual:before{content:"";background:var(--line);height:1px;position:absolute;top:65px;left:25px;right:25px}.project-text-visual>.eyebrow{color:var(--sage);font-size:8px}.project-text-visual h3{letter-spacing:-.04em;max-width:90%;margin-top:35px;margin-bottom:auto;padding-top:20px;font-size:26px;line-height:1.17}.project-text-visual>.arrow{align-self:end}.project-link:hover .project-text-visual{background:#d6dcc7}.empty-state{text-align:center;padding:100px 20px}.empty-state>span{color:var(--sage);margin-bottom:15px;font-size:60px;display:block}.empty-state h2{font-size:38px}.empty-state p{margin:20px auto}.empty-state .button{margin-top:10px}.archive-note{border-top:1px solid var(--line);grid-template-columns:1fr 2fr;gap:40px;margin-top:70px;padding-top:27px;display:grid}.archive-note>p:last-child{color:var(--sage);max-width:760px;font-size:12px}.project-intro{padding-top:165px;padding-bottom:50px}.back-link{margin-bottom:45px;font-size:11px}.project-title-row{justify-content:space-between;gap:20px;margin-bottom:27px;display:flex}.project-intro h1{max-width:1050px;font-size:clamp(42px,6vw,92px)}.project-facts{border-top:1px solid var(--line);gap:80px;margin-top:45px;padding-top:25px;display:flex}.project-facts p{margin-top:10px;font-size:13px}.project-facts .eyebrow{color:var(--sage);font-size:8px}.historical-notice{color:var(--sage);margin-top:25px;font-size:12px}.project-cover .image-reveal{background:#d7dbd0;height:auto}.project-cover img{object-fit:contain;height:auto;max-height:850px}.project-cover figcaption,.services-banner figcaption{color:var(--sage);margin-top:12px;font-size:10px}.project-scope{grid-template-columns:1fr 2fr;gap:60px;padding-block:65px;display:grid}.project-scope h2{letter-spacing:-.04em;max-width:850px;font-size:clamp(28px,3.1vw,48px);line-height:1.3}.project-scope .small{margin-top:24px}.project-scope .text-link{margin-top:20px}.next-project{border-top:1px solid var(--line);padding-block:35px 65px}.next-project>a{letter-spacing:-.04em;justify-content:space-between;align-items:center;gap:25px;margin-top:25px;font-size:clamp(24px,3vw,40px);line-height:1.3;display:flex}.next-project>a>.arrow{width:40px;height:40px}.services-banner .image-reveal{height:480px}.services-banner img{object-position:50% 55%}.service-jump{flex-wrap:wrap;gap:10px 25px;padding-top:35px;display:flex}.service-jump>a{border-bottom:1px solid var(--line);align-items:center;min-height:35px;font-size:10px;display:flex}.service-detail{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:13%;padding-block:55px;display:grid}.service-detail:last-child{border-bottom:1px solid var(--line)}.service-title .service-number{margin-bottom:25px;display:block}.service-title h2{font-size:clamp(32px,3.6vw,54px);line-height:1.15}.service-title>p{color:var(--sage);max-width:320px;margin-top:25px;font-size:13px}.service-items>div+div{border-top:1px solid var(--line);margin-top:25px;padding-top:25px}.service-items h3{letter-spacing:-.025em;font-size:19px;line-height:1.4}.service-items p{color:var(--sage);margin-top:10px;font-size:13px;line-height:1.8}.about-feature{grid-template-columns:1.05fr 1fr;align-items:center;gap:8%;margin-bottom:20px;display:grid}.about-feature>.image-reveal{height:680px}.about-feature>div:not(.image-reveal){padding-block:20px}.about-feature h2{margin-top:25px;margin-bottom:35px;font-size:clamp(34px,4vw,65px);line-height:1.15}.about-feature p:not(.eyebrow){margin-bottom:22px;font-size:14px}.inline-caption{color:var(--sage);background:0 0;margin-top:30px;padding:0;font-size:10px;display:block;position:static}.about-philosophy{grid-template-columns:1fr 1fr;gap:35px 10%;display:grid}.about-philosophy>.eyebrow{grid-column:1/-1}.about-philosophy h2{font-size:clamp(38px,4.7vw,72px);line-height:1.14}.about-philosophy h2 em{color:#5b701d}.philosophy-copy>p{margin-bottom:22px;font-size:14px}.about-values{grid-template-columns:repeat(3,1fr);gap:60px;margin-bottom:100px;display:grid}.about-values>div{border-top:1px solid var(--line);padding-top:25px}.about-values .eyebrow{color:var(--sage);font-size:9px}.about-values h3{margin-top:28px;margin-bottom:18px;font-size:24px}.about-values p{color:var(--sage);font-size:13px}.contact-intro{padding-bottom:80px}.contact-intro .button{margin-top:10px}.contact-grid{grid-template-columns:1.3fr 1fr;gap:9%;padding-bottom:90px;display:grid}.contact-primary{background:var(--soft);padding:45px}.contact-primary h2{margin-top:30px;margin-bottom:50px;font-size:clamp(36px,4vw,60px);line-height:1.14}.contact-email{letter-spacing:-.04em;overflow-wrap:anywhere;font-size:clamp(17px,2.05vw,31px);line-height:1.5;display:block}.contact-email>.arrow{vertical-align:middle;display:inline-block}.contact-phone{border-top:1px solid var(--line);align-items:center;gap:25px;margin-top:35px;padding-top:30px;font-size:22px;display:flex}.contact-other>div{border-top:1px solid var(--line);padding-top:30px}.contact-other>div+div{margin-top:40px}.contact-other address{margin-top:25px;font-size:20px;line-height:1.65}.contact-other .text-link{margin-top:15px}.contact-other p{color:var(--sage);margin-top:22px;margin-bottom:4px;font-size:11px}.contact-other a:not(.text-link){overflow-wrap:anywhere;font-size:13px}.contact-note{border-top:1px solid var(--line);grid-template-columns:1fr 2fr;gap:45px;padding-block:30px 90px;display:grid}.contact-note p{color:var(--sage);max-width:680px;font-size:13px}.error-page{min-height:75vh;padding-bottom:100px}.error-page>p:not(.eyebrow){margin-top:30px;margin-bottom:30px}@keyframes text-in{0%{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}@keyframes image-in{0%{opacity:.5;transform:scale(1.045)}to{opacity:1;transform:scale(1)}}}@layer responsive{@media (width>=1800px){.hero-content{padding-bottom:155px}.hero h1{font-size:118px}.hero-rail{bottom:35px}.hero{max-height:1160px}}@media (width<=1100px){.site-header nav{gap:18px}.brand-caption{display:none}.site-header nav .header-cta{gap:15px;margin-left:0}.hero{height:900px;max-height:none}.hero-project{width:180px}.hero h1{font-size:clamp(58px,7.5vw,88px)}.editorial-grid{gap:50px 35px}.editorial-grid .project-visual{height:380px}.editorial-grid .project-card:nth-child(2n) .project-visual{height:310px}.expertise-grid{grid-template-columns:.7fr 1.3fr;gap:6%}.service-row h3{font-size:21px}.experience-copy{padding:70px 40px}.experience-photo{min-height:640px}.footer-grid{gap:25px}.project-grid:not(.editorial-grid){grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-tools{grid-template-columns:1.4fr .7fr 1fr;gap:15px}.portfolio-tools .reset-filters{grid-column:1/-1;justify-self:end;min-height:30px}.page-intro-grid{grid-template-columns:1.3fr .9fr;gap:8%}.contact-primary{padding:30px}.contact-grid{gap:6%}.about-feature>.image-reveal{height:600px}}@media (width<=900px){.site-header{height:76px;padding:8px 20px;top:16px}.brand img{width:52px;height:56px}.brand-caption{display:block}.menu-toggle{z-index:2;align-items:center;gap:15px;min-width:80px;min-height:48px;font-size:12px;display:flex}.menu-icon{border-block:1px solid;width:22px;height:13px;transition:transform .2s;position:relative}.site-header nav{background:var(--paper);border-bottom:1px solid var(--line);visibility:hidden;opacity:0;border-radius:0 0 5px 5px;flex-direction:column;align-items:stretch;gap:0;max-height:calc(100svh - 120px);padding:20px 25px 30px;transition:opacity .25s,transform .25s,visibility .25s;display:flex;position:absolute;top:75px;left:0;right:0;overflow:auto;transform:translateY(-8px)}.site-header nav>a{letter-spacing:-.04em;border-bottom:1px solid var(--line);min-height:65px;font-size:28px;font-weight:500}.site-header nav>a:after{display:none}.site-header nav .header-cta{letter-spacing:0;border:0;justify-content:space-between;min-height:52px;margin-top:25px;font-size:14px}.site-header.menu-open nav{visibility:visible;opacity:1;transform:translateY(0)}.menu-open .menu-icon{border-bottom:0;height:1px;transform:rotate(45deg)}.menu-open .menu-icon:before{content:"";background:currentColor;width:22px;height:1px;position:absolute;top:-1px;left:0;transform:rotate(90deg)}body.menu-is-open{overflow:hidden}.hero h1{font-size:72px}.hero-project{display:none}.intro-grid{grid-template-columns:1.1fr 1fr;gap:6%}.intro-grid h2{font-size:34px}.intro-copy p:first-child{font-size:15px}.intro-copy p{font-size:12px}.section-heading{align-items:flex-start}.section-heading h2{max-width:520px}.expertise-grid{grid-template-columns:1fr;gap:40px}.expertise-intro{justify-content:space-between;align-items:center;gap:40px;display:flex}.expertise-intro>p{max-width:420px;margin:0}.technical-mark{display:none}.experience-copy{padding:50px 30px}.experience-copy h2{font-size:38px}.experience-photo{min-height:610px}.footer-grid{grid-template-columns:.6fr 1fr 1.2fr}.footer-grid>div:last-child{grid-column:2/-1}.page-intro{padding-top:155px}.page-intro-grid{grid-template-columns:1fr;gap:35px}.page-intro-grid>div{align-items:start;gap:35px;max-width:600px;display:flex}.page-intro-grid>div>p{max-width:380px;margin-bottom:0}.page-intro-grid>div>.small{max-width:260px}.contact-intro .page-intro-grid>div{display:block}.contact-intro .button{margin-top:25px}.about-feature{gap:5%}.about-feature>.image-reveal{height:610px}.about-feature p:not(.eyebrow){font-size:12px}.about-feature h2{font-size:38px}.about-values{gap:28px}.about-values h3{font-size:20px}.service-detail{gap:8%}.service-title h2{font-size:36px}.contact-grid{grid-template-columns:1.2fr 1fr;gap:5%}.contact-email{font-size:20px}.contact-other address{font-size:18px}}@media (width<=600px){:root{--gutter:22px}html{scroll-padding-top:108px}.site-header{border-radius:4px;height:72px;padding-inline:16px;left:14px;right:14px}.site-header.is-scrolled{top:10px}.brand img{width:49px;height:52px}.brand-caption{padding-left:13px;font-size:6px}.brand{gap:13px}.site-header nav{top:71px}.hero{height:900px;min-height:100svh;max-height:1000px}.hero-image img{object-position:57% 50%}.hero-shade{background:linear-gradient(#070d0c22,#070d0c66 25%,#070d0cfa),linear-gradient(90deg,#070d0c66,#0000)}.hero-content{padding-top:150px;padding-bottom:150px}.hero-content>.eyebrow{letter-spacing:.08em;gap:9px;margin-bottom:30px;font-size:8px}.hero h1{letter-spacing:-.06em;font-size:clamp(44px,9.8vw,62px);line-height:1.08}.hero-base{margin-top:30px;display:block}.hero-description{max-width:290px;margin-bottom:24px;font-size:12px}.desktop-break{display:none}.hero-base .button-row{flex-direction:column;align-items:flex-start;gap:13px}.hero .button{gap:30px;min-height:50px;font-size:11px}.hero-secondary{min-height:44px;font-size:11px}.hero-rail{gap:25px;padding-top:20px;font-size:7px;line-height:1.7;bottom:25px}.hero-rail>span{max-width:150px}.hero-rail a{white-space:nowrap;gap:14px}.section{padding-block:70px}.intro-section>.eyebrow{font-size:9px}.intro-grid{grid-template-columns:1fr;gap:32px;margin-top:30px}.intro-grid h2{font-size:clamp(30px,7.7vw,43px);line-height:1.18}.intro-copy{max-width:100%}.intro-copy p:first-child{font-size:16px}.intro-copy p{font-size:13px}.intro-baseline{align-items:flex-start;gap:25px;margin-top:35px}.intro-baseline>span:first-child{flex-direction:column;align-items:flex-start;gap:4px}.intro-baseline>span:last-child{text-align:right;max-width:130px;font-size:10px}.intro-baseline strong{font-size:32px}.section-heading{flex-direction:column;gap:15px;margin-bottom:30px}.section-heading h2{margin-top:20px;font-size:36px;line-height:1.12}.section-heading .eyebrow{font-size:9px}.section-heading>.text-link{align-self:flex-end;font-size:11px}.project-grid,.editorial-grid{grid-template-columns:minmax(0,1fr);gap:35px}.editorial-grid .project-card:nth-child(2n){padding-top:0}.editorial-grid .project-visual,.editorial-grid .project-card:nth-child(2n) .project-visual{height:370px}.editorial-grid .project-card:nth-child(2) .project-visual{height:270px}.editorial-grid .project-card:nth-child(4) .project-visual{height:300px}.editorial-grid .project-meta h3{font-size:22px}.project-meta{padding-top:14px}.project-location{font-size:9px}.archive-callout{margin-top:40px;padding-top:25px;display:block}.archive-callout p{font-size:15px}.archive-callout .text-link{margin-top:20px}.expertise-grid{gap:30px;margin-top:35px}.expertise-intro{display:block}.expertise-intro>p{margin-bottom:24px;font-size:14px}.service-row{gap:20px;min-height:95px;padding-block:24px}.service-row h3{font-size:22px;line-height:1.25}.service-row .arrow{width:20px}.experience-section{grid-template-columns:1fr}.experience-photo{min-height:420px}.experience-copy{padding:55px var(--gutter) 60px}.experience-copy h2{font-size:43px;line-height:1.1}.experience-copy>p:not(.eyebrow){max-width:100%;font-size:13px}.photo-caption{font-size:8px;bottom:20px;left:20px}.cta-section{padding-block:55px 40px}.cta-section .eyebrow{font-size:8px}.cta-line{align-items:end;gap:20px;margin-top:30px;padding-bottom:30px}.cta-line h2{font-size:clamp(34px,8.2vw,48px);line-height:1.1}.circle-link{width:48px;height:48px;margin-bottom:4px}.circle-link .arrow{width:25px;height:25px}.cta-bottom{padding-top:24px;display:block}.cta-bottom p{margin-bottom:25px;font-size:12px}.cta-bottom .button-row{gap:15px}.cta-bottom .text-link{gap:12px;font-size:11px}.cta-bottom .button{gap:20px;padding-inline:16px;font-size:11px}.site-footer{padding-block:50px 24px}.footer-grid{grid-template-columns:.8fr 1.2fr;gap:35px 20px}.footer-brand,.footer-brand img{width:80px}.footer-grid>div:nth-child(3),.footer-grid>div:last-child{grid-column:1/-1}.footer-grid .eyebrow{margin-bottom:15px}.footer-grid a:not(.footer-brand),.footer-grid address{font-size:12px;line-height:1.8}.footer-grid nav a{min-height:36px}.footer-bottom{flex-wrap:wrap;gap:15px;margin-top:35px;font-size:9px}.footer-bottom>span:nth-child(2){order:3;width:100%}.footer-bottom>a{margin-left:auto}.page-intro{padding-top:142px;padding-bottom:45px}.page-intro>.eyebrow{margin-bottom:28px;font-size:8px}.page-intro-grid{gap:27px}.page-intro-grid h1{letter-spacing:-.06em;font-size:clamp(45px,11vw,65px);line-height:1.08}.page-intro-grid>div{display:block}.page-intro-grid>div>p{max-width:100%;margin-bottom:20px;font-size:14px}.page-intro-grid>div>p.small{max-width:100%;font-size:12px}.portfolio-tools{grid-template-columns:1fr 1fr;gap:18px 15px;padding-block:25px}.portfolio-tools .search-field{grid-column:1/-1}.portfolio-tools .reset-filters{justify-self:start;padding:0}.portfolio-tools label{margin-bottom:4px;font-size:9px}.portfolio-tools input,.portfolio-tools select{font-size:11px}.results-line{margin-bottom:25px;font-size:9px}.project-grid:not(.editorial-grid){grid-template-columns:minmax(0,1fr);gap:32px}.portfolio-section .project-visual{height:330px}.project-text-visual{height:280px}.project-text-visual h3{max-width:95%;font-size:29px}.project-meta h3{font-size:20px}.portfolio-section{padding-bottom:60px}.archive-note{margin-top:50px;padding-top:25px;display:block}.archive-note>p:last-child{margin-top:18px;font-size:11px}.empty-state{padding:50px 0}.empty-state h2{font-size:30px}.project-intro{padding-top:135px;padding-bottom:30px}.back-link{margin-bottom:30px}.project-title-row{margin-bottom:20px}.project-title-row .eyebrow{font-size:8px}.project-intro h1{overflow-wrap:anywhere;font-size:clamp(37px,10vw,55px);line-height:1.12}.project-facts{flex-wrap:wrap;gap:25px;margin-top:30px;padding-top:20px}.project-facts>div{min-width:100px}.project-facts p{font-size:12px}.project-cover{width:100%}.project-cover figcaption{margin-inline:var(--gutter);font-size:9px}.project-cover img{max-height:none}.project-scope{grid-template-columns:1fr;gap:20px;padding-block:40px}.project-scope h2{font-size:29px;line-height:1.3}.project-scope .small{font-size:11px}.project-scope .text-link{gap:20px;font-size:11px}.next-project{padding-block:25px 40px}.next-project>a{font-size:27px}.next-project .eyebrow{font-size:9px}.services-banner{width:100%}.services-banner .image-reveal{height:340px}.services-banner figcaption{margin-inline:var(--gutter);max-width:300px;font-size:9px}.service-jump{gap:8px 18px;padding-top:25px}.service-jump>a{max-width:100%;font-size:9px;line-height:1.6}.service-detail{grid-template-columns:1fr;gap:32px;padding-block:35px}.service-title .service-number{margin-bottom:18px}.service-title h2{font-size:35px;line-height:1.14}.service-title>p{margin-top:18px;font-size:12px}.service-items h3{font-size:19px}.service-items p{font-size:12px}.about-feature{grid-template-columns:1fr;gap:30px}.about-feature>.image-reveal{height:460px}.about-feature>div:not(.image-reveal){padding:0}.about-feature h2{margin-bottom:25px;font-size:40px;line-height:1.13}.about-feature p:not(.eyebrow){font-size:13px}.about-feature .inline-caption{margin-top:25px;font-size:9px}.about-philosophy{grid-template-columns:1fr;gap:27px}.about-philosophy h2{font-size:44px;line-height:1.1}.philosophy-copy>p{font-size:13px}.about-values{grid-template-columns:1fr;gap:32px;margin-bottom:65px}.about-values>div{padding-top:20px}.about-values h3{margin-top:20px;margin-bottom:12px;font-size:25px}.contact-intro{padding-bottom:40px}.contact-grid{grid-template-columns:1fr;gap:40px;padding-bottom:50px}.contact-primary{padding:28px 23px}.contact-primary .eyebrow{font-size:8px}.contact-primary h2{margin-top:25px;margin-bottom:32px;font-size:40px;line-height:1.1}.contact-email{font-size:clamp(18px,5.4vw,28px)}.contact-phone{margin-top:28px;padding-top:22px;font-size:22px}.contact-other>div{padding-top:25px}.contact-other address{font-size:21px}.contact-other a:not(.text-link){font-size:12px}.contact-note{grid-template-columns:1fr;gap:20px;padding-bottom:60px}.contact-note p{font-size:12px}.error-page h1{font-size:48px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.reveal-pending{opacity:1;transform:none}}}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
