:root{--ink:#191c1c;--muted:#606868;--paper:#fafafa;--line:#d9dddd;--red:#b80e20;--dark:#181d1e;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif;--gutter:clamp(22px,5vw,100px);--max:1640px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.65 var(--sans);-webkit-font-smoothing:antialiased}body.locked{overflow:hidden}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea{touch-action:manipulation}button{color:inherit;cursor:pointer}button:disabled{cursor:wait;opacity:.6}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #ce1837;outline-offset:5px}img{max-width:100%;display:block}p,h1,h2,h3,h4,figure{margin:0}p+p{margin-top:1em}h1,h2,h3,h4{font-weight:400}h1,h2,h3{line-height:1.12}p{text-wrap:pretty}h1,h2{text-wrap:balance}.wrap{width:min(100% - var(--gutter)*2,var(--max));margin-inline:auto}.serif{font-family:var(--serif)}.eyebrow{font-size:12px;line-height:1.5;letter-spacing:.17em;text-transform:uppercase;font-weight:600}.eyebrow .index{color:var(--red);margin-right:1.15em}.muted{color:var(--muted)}.skip{position:fixed;top:10px;left:12px;transform:translateY(-200%);z-index:200;background:#fff;padding:12px 20px}.skip:focus{transform:none}.arrow{display:inline-block;font:400 25px/1 var(--sans);flex:none;transition:transform .25s}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;padding:16px 22px;min-height:56px;border:1px solid currentColor;font-size:14px;font-weight:500;background:transparent;transition:background .2s,color .2s,border-color .2s}.button:hover{background:var(--red);border-color:var(--red);color:white}.button:hover .arrow,.text-link:hover .arrow{transform:translateX(4px)}.button.red{background:var(--red);color:#fff;border-color:var(--red)}.button.red:hover{background:#920617}.text-link{display:inline-flex;align-items:center;gap:30px;padding:12px 0;border-bottom:1px solid currentColor;font-size:14px;font-weight:500}.heading{font-family:var(--serif);font-size:clamp(38px,4.2vw,74px);letter-spacing:-.025em}.small-heading{font-size:clamp(28px,2.4vw,42px);font-family:var(--serif);letter-spacing:-.01em}.section{padding-block:110px}.section-top{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:48px}.section-top .eyebrow{margin-bottom:20px}.section-top .text-link{flex-shrink:0}.red-rule{width:42px;height:2px;background:var(--red);margin-bottom:25px}
.site-header{height:92px;background:#fff;border-bottom:1px solid #ddd;position:sticky;top:0;z-index:50}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{flex:none}.brand img{width:180px;height:50px;object-fit:contain}.nav{display:flex;align-items:center;gap:29px}.nav a{font-size:14px;white-space:nowrap;position:relative;padding:12px 0}.nav a:after{position:absolute;content:'';bottom:5px;left:0;right:100%;height:1px;background:var(--red);transition:right .25s}.nav a:hover:after,.nav a[aria-current=page]:after{right:0}.nav .nav-contact{border:1px solid #242929;padding:11px 17px;display:flex;gap:23px;align-items:center}.nav .nav-contact:after{display:none}.nav .nav-contact:hover{border-color:var(--red);color:var(--red)}.languages{display:flex;gap:10px;align-items:center;border-left:1px solid var(--line);padding-left:20px;font-size:12px}.languages span{color:#afb5b5}.languages a{padding:12px 0;color:#808888}.languages a[aria-current=true]{color:var(--ink);font-weight:700}.menu-toggle{display:none;background:transparent;border:0;padding:12px 0 12px 12px;font-size:14px;gap:10px;align-items:center}.menu-lines{width:22px;height:12px;border-block:1px solid;display:block}
.hero{position:relative;isolation:isolate;min-height:min(790px,calc(100svh - 92px));color:#fff;background:#263334;display:flex;align-items:center;overflow:hidden}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 52%;z-index:-3}.hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(13,25,29,.77),rgba(13,25,29,.3) 57%,rgba(13,25,29,.07)),linear-gradient(0deg,rgba(13,25,29,.48),transparent 40%)}.hero-content{padding:90px 0 132px}.hero .eyebrow{display:flex;align-items:center;gap:16px;margin-bottom:30px;color:#f2f2f2}.hero .eyebrow:before{content:'';height:2px;width:32px;background:#e6384a}.hero h1{font-family:var(--serif);font-size:clamp(55px,6.5vw,112px);max-width:1000px;letter-spacing:-.025em;line-height:1.04}.hero h1 em{font-style:italic;font-weight:400}.hero-copy{max-width:465px;line-height:1.7;font-size:16px;margin-top:27px;color:#f3f3f3}.hero .button{margin-top:34px;color:#fff;background:rgba(0,0,0,.06)}.hero .button:hover{background:var(--red)}.hero-foot{position:absolute;bottom:30px;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;align-items:end;gap:20px;font-size:12px}.hero-foot .location{letter-spacing:.08em;text-transform:uppercase}.hero-foot .location:before{content:'+';color:#f96975;font-size:20px;margin-right:14px}.hero-tools{display:flex;gap:25px;align-items:center}.hero-tools small{font-size:12px;color:#ededed}.hero-controls{display:flex;align-items:center;gap:15px}.round-btn{width:42px;height:42px;border:1px solid #ffffff7a;background:transparent;display:grid;place-items:center;color:#fff}.round-btn:hover{background:#ffffff22}.count{font-size:12px;font-variant-numeric:tabular-nums;min-width:50px;text-align:center}.metrics{background:white;border-bottom:1px solid var(--line)}.metrics-inner{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding-block:34px}.metric{padding:0 30px;border-right:1px solid var(--line)}.metric:first-child{padding-left:0}.metric:last-child{border:0}.metric strong{font-weight:400;font-family:var(--serif);font-size:38px;line-height:1.2;display:block}.metric small{display:block;margin-top:7px;color:var(--muted);font-size:13px}.metric strong .pre{font-family:var(--sans);font-size:13px;margin-right:7px}.intro-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:10%;padding-top:32px}.intro-grid p{max-width:565px}.intro-grid .text-link{margin-top:25px}.expertise-links{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;border-top:1px solid var(--line);margin-top:66px;padding-top:26px}.expertise-link{display:flex;align-items:center;justify-content:space-between;gap:16px}.expertise-link span:first-child{font-size:13px;color:#777}.expertise-link h3{font-size:22px;flex:1}.expertise-link .arrow{color:var(--red)}.feature{background:#edf0f0;padding-block:80px}.feature-grid{display:grid;grid-template-columns:1.13fr .87fr;align-items:center;gap:8%}.image-wrap{position:relative;overflow:hidden;background:#dde1df}.image-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.image-wrap:hover img{transform:scale(1.035)}.feature .image-wrap{aspect-ratio:1.12}.image-label{position:absolute;left:18px;bottom:14px;padding:5px 10px;background:#172124bc;color:white;font-size:11px;letter-spacing:.05em}.feature-copy .eyebrow{margin-bottom:22px}.feature-copy h2{font-size:clamp(36px,3.8vw,62px)}.feature-copy p{margin-top:25px;color:#4c5555}.feature-copy .text-link{margin-top:23px}.dark{background:var(--dark);color:white}.dark .eyebrow{color:#b8c0c0}.dark .muted{color:#b8c0c0}.dark .section-top .text-link{color:#e0e5e5}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.project-card .image-wrap{aspect-ratio:1.35;margin-bottom:23px}.project-card .meta{font-size:12px;color:#bbc3c3;letter-spacing:.05em;text-transform:uppercase;display:flex;gap:10px;justify-content:space-between}.project-card h3{font:400 clamp(26px,2.2vw,36px)/1.2 var(--serif);margin:12px 0}.project-card .card-bottom{display:flex;gap:20px;align-items:start;justify-content:space-between}.project-card .arrow{border:1px solid #667071;width:37px;height:37px;display:grid;place-items:center;font-size:22px;margin-top:13px}.project-card:hover .arrow{background:var(--red);border-color:var(--red)}.project-card .card-sub{font-size:14px;color:#b3bebe}.partner-strip{display:grid;grid-template-columns:1fr 2fr;gap:9%;align-items:center;padding-block:66px;border-bottom:1px solid var(--line)}.partner-strip .logos{display:flex;align-items:center;justify-content:space-around;gap:40px}.partner-strip img{max-width:210px;max-height:70px;width:auto;object-fit:contain;mix-blend-mode:multiply}.partner-strip .eyebrow{margin-bottom:13px}.partner-strip p{font-size:15px;color:var(--muted)}
.contact-band{padding-block:86px}.contact-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:10%;align-items:end}.contact-band h2{font:400 clamp(45px,5.2vw,86px)/1.06 var(--serif);letter-spacing:-.03em}.contact-band h2 em{color:var(--red);font-weight:400}.contact-band .eyebrow{margin-bottom:26px}.contact-right{padding-bottom:8px}.contact-right p{color:var(--muted);max-width:350px}.contact-right .button{margin-top:27px}.footer{border-top:1px solid var(--line);background:white;padding-top:48px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;padding-bottom:45px}.footer .brand img{width:180px;height:50px}.footer-tag{font-size:13px;color:var(--muted);margin-top:19px}.footer-address{font-size:14px;color:#505a5a}.footer-address strong{font-weight:500;display:block;color:var(--ink);margin-bottom:8px}.footer-contact{font-size:14px;display:flex;align-items:start;flex-direction:column;gap:5px;overflow-wrap:anywhere}.footer-contact a:hover{color:var(--red)}.footer-bottom{padding-block:19px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:24px;font-size:12px;color:var(--muted)}.footer-legal{display:flex;gap:22px}
.page-heading{padding:78px 0 60px}.page-heading .eyebrow{margin-bottom:25px}.page-heading h1{font:400 clamp(54px,6vw,100px)/1.04 var(--serif);letter-spacing:-.025em;max-width:1000px}.page-heading .lead{max-width:600px;font-size:18px;color:var(--muted);margin-top:28px}.page-heading .page-heading-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:9%;align-items:end}.page-heading .page-heading-grid .lead{margin:0;padding-bottom:4px}.filterbar{display:flex;gap:12px;border-block:1px solid var(--line);padding-block:21px;margin-bottom:45px;flex-wrap:wrap}.filter-btn{border:1px solid var(--line);padding:10px 20px;border-radius:0;background:transparent;font-size:14px;min-height:44px}.filter-btn[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}.project-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:60px 32px}.project-list .project-card:first-child{grid-column:1/-1}.project-list .project-card:first-child .image-wrap{aspect-ratio:2.25}.project-list .project-card .image-wrap{aspect-ratio:1.65}.project-list .project-card .meta{color:#6c7474}.project-list .project-card .card-sub{color:var(--muted)}[hidden]{display:none!important}.project-list .project-card.feature-filter-off:first-child{grid-column:auto}.history{display:grid;grid-template-columns:.8fr 1.3fr;gap:12%;border-top:1px solid var(--line);padding-top:50px;margin-top:90px}.history .small-heading{margin-top:20px}.history-item+.history-item{border-top:1px solid var(--line);padding-top:30px;margin-top:30px}.history-item h3{font-size:22px;margin-bottom:15px}.history-item p{color:var(--muted)}
.project-hero{position:relative;background:#222;overflow:hidden;color:white;min-height:600px;display:flex;align-items:end}.project-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.project-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#111d24d9,transparent 90%)}.project-hero .wrap{position:relative;z-index:1;padding-block:75px}.project-hero .eyebrow{margin-bottom:24px}.project-hero h1{font:400 clamp(52px,6vw,98px)/1.04 var(--serif);letter-spacing:-.025em;max-width:1100px}.project-hero .image-label{inset:auto 20px 18px auto;z-index:2}.crumbs{display:flex;align-items:center;gap:12px;padding-block:22px;border-bottom:1px solid var(--line);font-size:13px;flex-wrap:wrap}.crumbs a:hover{color:var(--red)}.project-body{display:grid;grid-template-columns:1.45fr .8fr;gap:12%;align-items:start}.project-body .heading{font-size:clamp(36px,3.5vw,58px);margin:24px 0 30px}.project-body p{color:#4f5959}.project-facts{border-top:2px solid var(--red);padding-top:25px}.project-facts h3{font-size:20px;margin-bottom:20px}.fact-row{border-bottom:1px solid var(--line);padding:17px 0;display:grid;grid-template-columns:1fr 1fr;gap:15px;font-size:14px}.fact-row dt{color:var(--muted)}.fact-row dd{margin:0;font-weight:500}.project-facts .button{width:100%;margin-top:28px}.planning-note{font-size:13px;margin-top:20px!important;color:#6f7676!important}.concept-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin-top:46px}.concept-item{border-top:1px solid #bfc7c7;padding-top:25px}.concept-item .number{font-size:13px;color:var(--red)}.concept-item h3{font:400 32px/1.15 var(--serif);margin:24px 0 18px}.concept-item p{font-size:16px;color:#5c6565}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.gallery-button{position:relative;display:block;padding:0;border:0;background:#eee;overflow:hidden;aspect-ratio:1.5;cursor:zoom-in;text-align:left}.gallery-button:first-child{grid-column:span 2;grid-row:span 2;aspect-ratio:auto;min-height:350px}.gallery-button img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.gallery-button:hover img{transform:scale(1.045)}.gallery-button .zoom{position:absolute;bottom:15px;right:15px;width:34px;height:34px;background:#fff;display:grid;place-items:center;font-size:20px}.gallery-caption{color:var(--muted);font-size:13px;margin-top:17px}.location-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.location-grid .heading{margin:25px 0}.location-grid .image-wrap{aspect-ratio:1.45}.bullet-list{padding-left:20px;margin-block:25px}.bullet-list li{padding:5px 0}.back-link{display:inline-flex;gap:15px;align-items:center;padding-bottom:8px;border-bottom:1px solid;font-size:14px}.project-next{padding-block:55px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:30px}.project-next h3{font-family:var(--serif);font-size:32px}.project-next small{font-size:12px;color:var(--muted);display:block;margin-bottom:8px}
.team-intro{padding-block:42px 70px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:9%}.team-intro p{color:var(--muted)}.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}.team-card .portrait{aspect-ratio:4/4.5;overflow:hidden;background:#e4e7e6}.team-card .portrait img{width:100%;height:100%;object-fit:cover;object-position:center 25%;filter:grayscale(1)}.team-card h2{font-family:var(--serif);font-size:31px;margin-top:26px}.team-role{font-size:13px;color:var(--red);display:block;margin:8px 0 16px}.team-card p{font-size:15px;color:var(--muted)}.new-partners{display:grid;grid-template-columns:1fr 1fr;gap:45px;margin-top:50px}.new-partner{border-top:1px solid var(--line);padding-top:28px}.new-partner h3{font-family:var(--serif);font-size:36px}.new-partner p{max-width:520px;color:var(--muted)}.network-note{padding:38px 0 0;margin-top:50px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:9%}.network-note h2{font-family:var(--serif);font-size:36px}.network-note p{color:var(--muted)}
.service-list{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:80px 1fr 1.35fr;gap:30px;padding-block:44px;border-bottom:1px solid var(--line);scroll-margin-top:120px}.service-row .number{color:var(--red);font-size:14px}.service-row h2{font:400 36px/1.2 var(--serif)}.service-row p{color:var(--muted)}.service-row ul{padding-left:18px;font-size:15px;color:var(--muted)}.service-row .text-link{margin-top:10px}.service-extras{display:grid;grid-template-columns:1fr 1fr;gap:50px}.service-extras article{border-top:1px solid var(--line);padding-top:26px}.service-extras h3{font:400 35px/1.2 var(--serif);margin-bottom:22px}.service-extras p{color:var(--muted)}.partner-row{display:grid;grid-template-columns:.8fr 1.4fr;gap:10%;padding-block:50px;border-top:1px solid var(--line)}.partner-logo{padding:25px 25px 25px 0;display:flex;align-items:center}.partner-logo img{max-width:270px;max-height:145px;width:100%;object-fit:contain;mix-blend-mode:multiply}.partner-row h2{font-family:var(--serif);font-size:36px;margin-bottom:24px}.partner-row p{color:var(--muted)}.partner-row .text-link{margin-top:22px}.prose{max-width:900px;margin-inline:auto;padding-block:10px 85px}.prose h2{font:400 32px/1.2 var(--serif);margin:32px 0 20px}.prose h3{font-size:22px;margin:28px 0 17px}.prose p{color:var(--muted);overflow-wrap:anywhere}.prose .hero-inline{margin:25px 0 45px}.prose .hero-inline img{width:100%}
.contact-page{display:grid;grid-template-columns:1fr 1.15fr;gap:13%;padding-bottom:95px}.contact-details{border-top:2px solid var(--red);padding-top:30px}.contact-details h2{font-family:var(--serif);font-size:35px;margin-bottom:25px}.contact-details dl{margin:35px 0}.contact-details dt{font-size:12px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);margin-top:24px}.contact-details dd{margin:5px 0 0;font-size:20px;overflow-wrap:anywhere}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:24px}.field{display:flex;flex-direction:column;gap:7px;min-width:0}.field.full,.form-info,.form-status,.form-actions{grid-column:1/-1}.field label{font-size:13px}.field input,.field textarea{border:0;border-bottom:1px solid #8d9595;background:transparent;padding:10px 0;border-radius:0;width:100%;min-height:46px;color:var(--ink)}.field textarea{min-height:128px;resize:vertical}.form-info{font-size:12px;color:var(--muted);line-height:1.6}.form-info a{text-decoration:underline}.form-status{font-size:14px}.form-actions{display:flex;align-items:center;justify-content:space-between;gap:15px}.form-actions small{font-size:12px;color:var(--muted)}.honey{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-error{color:#a30c1c}
.lightbox{width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;color:#fff;background:#111719f5;overflow:hidden}.lightbox::backdrop{background:#111}.lightbox-inner{height:100%;display:flex;flex-direction:column}.lightbox-bar{padding:20px 30px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex:none;font-size:14px}.lightbox-close{color:white;background:transparent;border:1px solid #ffffff66;width:46px;height:46px;font-size:26px}.lightbox-figure{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;position:relative;padding:0 80px 30px}.lightbox-figure img{max-width:100%;max-height:100%;object-fit:contain}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);background:#1119;border:1px solid #aaa;width:46px;height:55px;color:white;font-size:28px}.lightbox-nav.prev{left:20px}.lightbox-nav.next{right:20px}.lightbox-caption{padding:0 30px 25px;text-align:center;font-size:13px;color:#d1d7d7}.reveal{transition:opacity .7s,transform .7s}.js-motion .reveal:not(.seen){opacity:0;transform:translateY(18px)}
@media(min-width:1800px){.hero-content{padding-block:135px 160px}.hero{min-height:850px}.hero-foot{left:max(var(--gutter),calc((100vw - var(--max))/2));right:max(var(--gutter),calc((100vw - var(--max))/2))}}
@media(max-width:1180px){.nav{gap:17px}.nav a{font-size:13px}.languages{padding-left:13px;gap:8px}.brand img{width:158px}.header-inner{gap:18px}.section{padding-block:80px}.intro-grid{gap:7%}.feature-grid{gap:6%}.metric{padding-inline:20px}.metric strong{font-size:32px}.hero h1{font-size:clamp(56px,7.3vw,90px)}.service-row{grid-template-columns:45px 1fr 1.25fr}}
@media(max-width:960px){.site-header{height:78px}.header-inner{gap:15px}.brand{margin-right:auto}.brand img{width:158px;height:44px}.languages{border-left:0;padding:0;margin-right:12px}.menu-toggle{display:flex}.nav{position:fixed;inset:78px 0 auto 0;background:white;border-bottom:1px solid var(--line);padding:25px var(--gutter) 35px;display:none;flex-direction:column;align-items:stretch;gap:0;max-height:calc(100dvh - 78px);overflow-y:auto}.nav.open{display:flex}.nav a{font-size:25px;font-family:var(--serif);padding:13px 0;border-bottom:1px solid #eee}.nav a:after{display:none}.nav .nav-contact{margin-top:15px;font:400 16px var(--sans);padding:16px}.nav .nav-contact .arrow{margin-left:auto}.hero{min-height:700px;min-height:min(820px,calc(100svh - 78px))}.hero-content{padding-block:75px 120px}.hero-copy{max-width:450px}.hero h1{font-size:clamp(57px,8.8vw,82px)}.hero-foot .hero-tools small{display:none}.intro-grid{grid-template-columns:1fr;gap:30px}.intro-grid .heading{max-width:700px}.intro-grid p{max-width:700px}.feature-grid{gap:40px}.feature .image-wrap{aspect-ratio:.85}.project-grid{gap:18px}.project-card .image-wrap{aspect-ratio:1.1}.project-card .meta{font-size:11px;flex-direction:column;gap:3px}.project-card h3{font-size:28px}.partner-strip{grid-template-columns:1fr;gap:35px}.partner-strip .logos{justify-content:start;gap:65px}.contact-grid{gap:7%}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid .footer-contact{grid-column:2;grid-row:2;margin-top:-25px}.footer-grid .footer-address{grid-column:2}.page-heading .page-heading-grid{grid-template-columns:1fr;gap:30px}.project-body{gap:6%;grid-template-columns:1.2fr .9fr}.project-hero{min-height:540px}.concept-grid{gap:25px}.team-grid{gap:20px}.team-card h2{font-size:27px}.service-row{grid-template-columns:40px 1fr;gap:20px}.service-row>div:last-child{grid-column:2}.contact-page{gap:7%}.contact-form{grid-template-columns:1fr}.field{grid-column:1}.contact-details dd{font-size:18px}}
@media(max-width:640px){body{font-size:16px}.site-header{height:74px}.nav{top:74px}.brand img{width:142px;height:40px}.languages{font-size:12px;gap:7px;margin:0}.menu-toggle{font-size:0;gap:0;padding:12px 0 12px 7px}.hero{min-height:680px;min-height:max(650px,calc(100svh - 74px));max-height:none}.hero-image{object-position:62% center}.hero:after{background:linear-gradient(90deg,#101d25bd,#101d255c),linear-gradient(0deg,#101d25b3,transparent)}.hero-content{padding-block:65px 145px}.hero .eyebrow{font-size:11px;letter-spacing:.1em;gap:11px;margin-bottom:25px}.hero .eyebrow:before{width:20px}.hero h1{font-size:clamp(44px,11.8vw,71px);line-height:1.05;letter-spacing:-.02em}.hero-copy{font-size:15px;max-width:330px;margin-top:25px}.hero .button{margin-top:28px}.hero-foot{bottom:25px;align-items:center}.hero-foot .location{font-size:10px;letter-spacing:.04em;max-width:155px;line-height:1.8}.hero-foot .location:before{display:none}.hero-controls{gap:8px}.round-btn{width:35px;height:35px}.hero-tools{gap:0}.count{min-width:39px;font-size:11px}.metrics-inner{grid-template-columns:1fr 1fr;padding-block:0}.metric{padding:23px 0;border-bottom:1px solid var(--line)}.metric:nth-child(2n){border-right:0;padding-left:22px}.metric:nth-child(3),.metric:nth-child(4){border-bottom:0}.metric strong{font-size:31px}.metric small{font-size:12px;line-height:1.5}.metric strong .pre{font-size:11px}.section{padding-block:60px}.heading{font-size:39px}.eyebrow{font-size:11px;letter-spacing:.13em}.intro-grid{padding-top:24px;gap:28px}.intro-grid .text-link{margin-top:18px}.expertise-links{grid-template-columns:1fr;gap:0;margin-top:40px;padding-top:0}.expertise-link{padding-block:20px;border-bottom:1px solid var(--line)}.expertise-link h3{font-size:22px}.feature{padding-block:50px}.feature-grid{grid-template-columns:1fr;gap:36px}.feature .image-wrap{aspect-ratio:1.15}.feature-copy h2{font-size:39px}.feature-copy p{margin-top:22px}.section-top{align-items:start;flex-direction:column;gap:22px;margin-bottom:32px}.section-top .eyebrow{margin-bottom:17px}.project-grid{grid-template-columns:1fr;gap:40px}.project-card .image-wrap{aspect-ratio:1.45;margin-bottom:19px}.project-card .meta{flex-direction:row;font-size:11px}.project-card h3{font-size:31px}.project-card .arrow{margin-top:10px}.partner-strip{padding-block:40px;gap:30px}.partner-strip .logos{gap:30px;justify-content:space-between}.partner-strip img{max-width:42%;max-height:55px}.contact-band{padding-block:58px}.contact-grid{grid-template-columns:1fr;gap:30px}.contact-band h2{font-size:48px}.contact-right .button{margin-top:23px}.footer{padding-top:35px}.footer-grid{grid-template-columns:1fr;gap:28px;padding-bottom:35px}.footer-grid .footer-address,.footer-grid .footer-contact{grid-column:auto;grid-row:auto;margin-top:0}.footer-bottom{flex-direction:column;align-items:start;gap:13px;font-size:11px}.page-heading{padding-block:52px 42px}.page-heading h1{font-size:54px;overflow-wrap:anywhere}.page-heading .lead{font-size:17px;margin-top:24px}.page-heading .page-heading-grid{gap:24px}.project-list{grid-template-columns:1fr;gap:40px}.project-list .project-card:first-child{grid-column:auto}.project-list .project-card:first-child .image-wrap{aspect-ratio:1.35}.project-list .project-card .image-wrap{aspect-ratio:1.45}.filterbar{gap:8px;padding-block:16px}.filter-btn{font-size:12px;padding:9px 13px}.history{grid-template-columns:1fr;gap:28px;margin-top:60px;padding-top:35px}.history .small-heading{font-size:34px}.project-hero{min-height:510px}.project-hero>img{object-position:60% center}.project-hero .wrap{padding-block:70px}.project-hero h1{font-size:clamp(44px,11.4vw,68px)}.project-hero .eyebrow{font-size:11px;max-width:250px}.project-hero .image-label{font-size:10px}.crumbs{font-size:12px;padding-block:17px}.project-body{grid-template-columns:1fr;gap:40px}.project-body .heading{font-size:38px;margin-top:20px}.project-facts{padding-top:23px}.fact-row{font-size:14px}.concept-grid{grid-template-columns:1fr;gap:30px}.concept-item h3{margin-block:12px 15px}.gallery-grid{grid-template-columns:1fr 1fr;gap:12px}.gallery-button:first-child{grid-column:1/-1;grid-row:auto;min-height:0;aspect-ratio:1.4}.gallery-button{aspect-ratio:1.15}.gallery-button .zoom{right:10px;bottom:10px;width:28px;height:28px;font-size:17px}.location-grid{grid-template-columns:1fr;gap:30px}.location-grid .heading{margin-block:18px}.project-next h3{font-size:27px}.project-next{padding-block:35px}.project-next .text-link{gap:15px}.team-intro{grid-template-columns:1fr;gap:24px;padding-block:30px 45px}.team-grid{grid-template-columns:1fr;gap:45px}.team-card .portrait{aspect-ratio:1/1.05;max-width:450px}.team-card h2{font-size:32px}.new-partners{grid-template-columns:1fr;gap:30px;margin-top:40px}.network-note{grid-template-columns:1fr;gap:25px;margin-top:40px}.service-row{grid-template-columns:24px 1fr;gap:20px;padding-block:30px}.service-row h2{font-size:32px}.service-extras{grid-template-columns:1fr;gap:35px}.partner-row{grid-template-columns:1fr;gap:20px;padding-block:30px}.partner-logo{padding:10px 0 20px}.partner-logo img{max-width:230px;max-height:100px}.partner-row h2{font-size:32px}.prose{padding-bottom:55px}.contact-page{grid-template-columns:1fr;gap:45px;padding-bottom:60px}.form-actions{flex-wrap:wrap}.contact-details dl{margin-block:25px}.lightbox-bar{padding:14px 16px}.lightbox-figure{padding:0 14px 75px}.lightbox-nav{top:auto;bottom:0;transform:none}.lightbox-nav.prev{left:calc(50% - 60px)}.lightbox-nav.next{right:calc(50% - 60px)}.lightbox-caption{padding:12px 18px 18px}.lightbox-close{width:40px;height:40px}.lightbox-bar span{font-size:12px}}
@media(max-height:600px) and (min-width:641px){.hero{min-height:650px}.hero-content{padding-block:65px 125px}.hero h1{font-size:72px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.js-motion .reveal:not(.seen){opacity:1;transform:none}}
@media print{.site-header,.hero-controls,.contact-band,.footer,.lightbox{display:none}.hero{min-height:350px}.section{padding-block:30px}.reveal{opacity:1!important;transform:none!important}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
body.admin-bar .site-header{top:32px}@media(max-width:782px){body.admin-bar .site-header{top:46px}}

/* v2.2 — portfolio simplification & responsive polish */
body{overflow-x:clip}.filterbar,.filter-btn,#filter-count{display:none!important}.project-list{align-items:start}.project-card>a{display:block}.project-body>div>p{max-width:72ch}.history-item p{max-width:72ch}.page-heading .lead{max-width:68ch}.gallery-grid--stacked{grid-template-columns:minmax(0,2fr) minmax(260px,1fr);grid-template-rows:repeat(3,minmax(0,1fr));min-height:clamp(540px,52vw,820px)}.gallery-grid--stacked .gallery-button:first-child{grid-column:1;grid-row:1/-1;min-height:0;aspect-ratio:auto}.gallery-grid--stacked .gallery-button:not(:first-child){grid-column:2;min-height:0;aspect-ratio:auto}.gallery-grid--stacked .gallery-button img{object-position:center}.project-list .project-card:first-child .image-wrap{max-height:760px}
@media(max-width:960px){.history{grid-template-columns:1fr;gap:34px;margin-top:72px}.history>div:first-child{max-width:620px}.project-body{grid-template-columns:1fr;gap:48px}.project-facts{width:min(100%,720px)}.contact-page{grid-template-columns:1fr;gap:48px}.contact-details{width:min(100%,720px)}.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 24px}.gallery-grid--stacked{min-height:560px;grid-template-columns:minmax(0,1.6fr) minmax(220px,.9fr)}.page-heading h1{max-width:14ch}.project-hero h1{max-width:13ch}}
@media(max-width:720px){.page-heading h1{font-size:clamp(44px,12.5vw,58px);overflow-wrap:normal;word-break:normal;hyphens:auto}.page-heading .lead{max-width:none}.gallery-grid--stacked{display:grid;grid-template-columns:1fr;grid-template-rows:none;min-height:0;gap:12px}.gallery-grid--stacked .gallery-button:first-child,.gallery-grid--stacked .gallery-button:not(:first-child){grid-column:1;grid-row:auto;aspect-ratio:1.5;min-height:0}.gallery-grid--stacked .gallery-button:first-child{aspect-ratio:1.35}.history{margin-top:54px}.history-item+.history-item{margin-top:26px;padding-top:26px}.team-grid{grid-template-columns:1fr}.project-body{gap:38px}.project-facts{width:100%}.contact-page{gap:40px}.section-top{width:100%}}
@media(max-width:390px){:root{--gutter:18px}.hero h1{font-size:clamp(41px,12vw,52px)}.heading{font-size:36px}.contact-band h2{font-size:43px}.project-card h3{font-size:29px}.fact-row{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}}
