:root{--green:#6dbb2f;--green-dark:#4c8b22;--ink:#10191b;--ink-2:#172326;--paper:#fff;--soft:#f2f5f3;--soft-2:#e8ede9;--muted:#637075;--line:#dbe2de;--max:1320px;--header:88px;--radius:2px;--shadow:0 24px 70px rgba(4,18,13,.14)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;overflow-x:clip;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}body.nav-open{overflow:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.wrap{width:min(var(--max),calc(100% - 64px));margin-inline:auto}.skip-link{position:fixed;z-index:9999;left:16px;top:12px;transform:translateY(-150%);background:#fff;padding:10px 14px;box-shadow:var(--shadow)}.skip-link:focus{transform:none}.eyebrow{margin:0 0 18px;font-size:12px;line-height:1.2;letter-spacing:.19em;text-transform:uppercase;font-weight:800}.eyebrow.green{color:var(--green-dark)}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.045em;line-height:1.02}h1{font-size:clamp(58px,7vw,112px)}h2{font-size:clamp(42px,5.2vw,78px)}h3{font-size:clamp(26px,2.3vw,38px)}p{color:var(--muted)}.lead{font-size:clamp(20px,2vw,28px);line-height:1.48;color:var(--ink)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;min-height:56px;padding:0 22px;border:0;background:var(--green);color:#0c160d;font-size:13px;font-weight:800;letter-spacing:.02em;transition:transform .2s ease,background .2s ease}.button:hover{transform:translateY(-2px);background:#7cca35}.button.dark{background:var(--ink);color:#fff}.button.dark:hover{background:#253336}.text-link{display:inline-flex;gap:12px;align-items:center;font-size:13px;font-weight:800;border-bottom:1px solid currentColor;padding-bottom:4px}.text-link.light{color:#fff}.section{padding:120px 0}.section-intro{max-width:860px;margin-bottom:64px}.section-intro>p:last-child{max-width:720px;font-size:19px}.split-heading{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:end;margin-bottom:60px}.split-heading>p{font-size:18px;margin:0}.reveal{opacity:0;transform:translateY(22px);transition:opacity .75s ease,transform .75s ease}.reveal.visible{opacity:1;transform:none}
.site-header{position:fixed;z-index:1000;inset:0 0 auto;height:var(--header);background:rgba(255,255,255,.94);backdrop-filter:blur(18px);border-bottom:1px solid transparent;transition:height .25s ease,box-shadow .25s ease,border-color .25s ease}.site-header.scrolled{height:76px;border-color:rgba(16,25,27,.08);box-shadow:0 10px 28px rgba(14,30,20,.07)}.navwrap{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;height:100%;padding:6px 0}.logo{width:auto;height:72px;max-width:236px;object-fit:contain;transition:height .25s ease}.site-header.scrolled .logo{height:60px}.mainnav{display:flex;align-items:center;gap:31px;font-size:13px;font-weight:500}.mainnav>a{position:relative;padding:31px 0}.mainnav>a:after{content:"";position:absolute;left:0;right:100%;bottom:22px;height:2px;background:var(--green);transition:right .22s}.mainnav>a:hover:after{right:0}.langs{display:flex;gap:4px;margin-left:3px;padding-left:20px;border-left:1px solid var(--line)}.lang{display:grid;place-items:center;min-width:34px;height:34px;border-radius:50%;font-size:11px;font-weight:600}.lang.active{background:var(--green);color:#10200e}.navtoggle{display:none;width:46px;height:46px;border:0;background:transparent;flex-direction:column;align-items:center;justify-content:center;gap:5px}.navtoggle span{width:24px;height:2px;background:var(--ink);transition:.2s}
.hero{position:relative;min-height:860px;height:100svh;max-height:1080px;padding-top:var(--header);overflow:hidden;background:var(--ink)}.hero-media,.hero-slide{position:absolute;inset:0}.hero-slide{opacity:0;transition:opacity 1s ease}.hero-slide.active{opacity:1}.hero-slide img{width:100%;height:100%;object-fit:cover}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,14,16,.9) 0%,rgba(6,14,16,.65) 45%,rgba(6,14,16,.08) 82%),linear-gradient(0deg,rgba(3,10,11,.48),transparent 42%)}.hero-content{position:relative;z-index:2;display:flex;min-height:calc(100svh - var(--header));max-height:992px;flex-direction:column;justify-content:center;align-items:flex-start;padding:90px 0}.hero-content .eyebrow{color:#fff}.hero h1{max-width:930px;margin-bottom:26px;color:#fff}.hero-copy{max-width:760px;font-size:clamp(18px,1.55vw,24px);color:rgba(255,255,255,.82);line-height:1.55}.hero-actions{display:flex;align-items:center;gap:34px;margin-top:30px}.hero-controls{position:absolute;z-index:3;right:40px;top:50%;display:flex;flex-direction:column;gap:12px}.hero-dot{width:10px;height:10px;padding:0;border:1px solid rgba(255,255,255,.75);border-radius:50%;background:transparent}.hero-dot.active{background:var(--green);border-color:var(--green)}.hero-caption{position:absolute;z-index:2;right:40px;bottom:30px;color:#fff;font-size:11px;letter-spacing:.1em;text-transform:uppercase}.services-section{background:#fff}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-card{min-height:360px;padding:34px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column}.service-card>span{color:var(--green-dark);font-size:12px;font-weight:800}.service-card h3{margin:70px 0 18px}.service-card p{margin-bottom:0}.external-note{display:grid;grid-template-columns:70px 1fr;gap:20px;align-items:start;margin-top:34px;padding:26px 0;border-top:1px solid var(--line)}.external-note span{font-size:28px;color:var(--green-dark)}.external-note p{max-width:940px;margin:0;font-size:17px}.feature-project{background:var(--ink);color:#fff}.section-intro.light h2,.section-intro.light .eyebrow{color:#fff}.section-intro.light p{color:rgba(255,255,255,.65)}.flagship-feature{position:relative;display:block;min-height:650px;overflow:hidden;background:#0b1113}.flagship-feature img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s ease}.flagship-feature:hover img{transform:scale(1.025)}.flagship-feature-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,12,14,.86),rgba(5,12,14,.12) 76%),linear-gradient(0deg,rgba(4,10,12,.45),transparent 50%)}.flagship-feature-copy{position:absolute;left:clamp(28px,6vw,86px);bottom:clamp(35px,6vw,78px);max-width:700px}.flagship-feature-copy small{display:inline-block;margin-bottom:20px;color:var(--green);font-size:11px;letter-spacing:.15em;font-weight:800}.flagship-feature-copy h3{font-size:clamp(58px,8vw,120px);margin-bottom:16px}.flagship-feature-copy p{max-width:650px;color:rgba(255,255,255,.78);font-size:18px}.flagship-feature-copy>span{font-size:13px;font-weight:800;border-bottom:1px solid #fff;padding-bottom:5px}.gp-section{background:var(--soft)}.project-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:20px}.project-card{grid-column:span 4;background:#fff;overflow:hidden;min-width:0}.project-card-link{display:flex;flex-direction:column;height:100%}.project-card figure{position:relative;margin:0;height:280px;overflow:hidden;background:var(--ink)}.project-card img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}.project-card:hover img{transform:scale(1.04)}.project-card figcaption{position:absolute;left:12px;bottom:10px;padding:5px 8px;background:rgba(4,12,13,.72);color:#fff;font-size:9px;letter-spacing:.06em;text-transform:uppercase}.project-card-copy{display:flex;flex:1;flex-direction:column;padding:26px}.project-card-copy small{font-size:10px;letter-spacing:.15em;color:var(--green-dark);font-weight:800}.project-card-copy h3{margin:16px 0 10px}.project-card-copy p{font-size:14px}.project-card-meta{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:auto;padding-top:18px;border-top:1px solid var(--line);font-size:12px}.project-card-meta strong{font-weight:800}.project-card-meta span{color:var(--green-dark);font-weight:800}.locations-section{background:#fff}.location-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:30px}.filter{height:42px;padding:0 18px;border:1px solid var(--line);background:#fff;font-size:12px;font-weight:750}.filter.active,.filter:hover{background:var(--ink);border-color:var(--ink);color:#fff}.locations-layout{display:grid;grid-template-columns:1.03fr .97fr;gap:48px;align-items:start}.project-map{position:sticky;top:110px;background:var(--soft);padding:24px}.project-map svg{width:100%;height:auto}.map-region{stroke:#b9c6be;stroke-width:2;fill:#e3e9e5}.map-region.de{fill:#edf1ee}.map-region.ch{fill:#dce5de}.map-country{font-size:54px;font-weight:900;fill:#c7d1ca}.map-point circle{fill:var(--green);stroke:#fff;stroke-width:3;transition:r .2s,fill .2s}.map-point.map-gu circle{fill:var(--ink);stroke:var(--green);stroke-width:4}.map-point text{font-size:11px;font-weight:700;fill:#253034;paint-order:stroke;stroke:#f2f5f3;stroke-width:3px;stroke-linejoin:round}.map-point:hover circle,.map-point.active circle{r:12;fill:var(--ink)}.map-note{display:block;text-align:right;font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.12em}.location-list{border-top:1px solid var(--line)}.location-row{display:grid;grid-template-columns:42px 1fr auto 22px;gap:16px;align-items:center;padding:17px 4px;border-bottom:1px solid var(--line);transition:background .2s,padding .2s}.location-row:hover,.location-row.active{background:var(--soft);padding-left:12px;padding-right:12px}.location-index{font-size:10px;color:var(--green-dark);font-weight:800}.location-row strong{display:block}.location-row small{display:block;color:var(--muted);font-size:12px}.location-row b{font-size:12px}.location-row em{font-style:normal;color:var(--green-dark)}.location-row[hidden]{display:none}.gu-row{background:#10191b;color:#fff}.gu-row small{color:rgba(255,255,255,.65)}.gu-row .location-index,.gu-row em{color:var(--green)}.company-section{background:var(--soft)}.company-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:100px;align-items:start}.company-copy h2{max-width:800px}.company-copy>p:not(.eyebrow){max-width:760px}.process-stack{border-top:1px solid #bec8c1}.process-stack>div{display:grid;grid-template-columns:60px 1fr;align-items:center;min-height:120px;border-bottom:1px solid #bec8c1}.process-stack span{color:var(--green-dark);font-size:11px;font-weight:800}.process-stack strong{font-size:clamp(24px,2.4vw,36px);letter-spacing:-.035em}.contact-section{background:var(--green);color:var(--ink)}.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px}.contact-copy h2{max-width:650px}.contact-copy>p{color:#20331c;font-size:18px}.direct-contact{display:flex;flex-direction:column;align-items:flex-start;margin-top:60px}.direct-contact small{margin-bottom:15px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.direct-contact a{font-size:clamp(24px,3vw,42px);line-height:1.25;letter-spacing:-.04em}.direct-contact span{margin-top:20px}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:38px;background:#fff;box-shadow:var(--shadow)}.contact-form label{display:flex;flex-direction:column;gap:8px}.contact-form label>span{font-size:12px;font-weight:750}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid var(--line);border-radius:0;background:#fff;padding:14px 15px;color:var(--ink);outline:0}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--green-dark);box-shadow:0 0 0 3px rgba(109,187,47,.15)}.contact-form .full{grid-column:1/-1}.contact-form .check{display:grid;grid-template-columns:22px 1fr;align-items:start;gap:10px}.contact-form .check input{width:18px;height:18px;margin-top:2px;accent-color:var(--green)}.contact-form .check span{font-weight:500;line-height:1.45}.contact-form .check a{text-decoration:underline}.form-actions{display:flex;align-items:center;gap:18px}.form-status{display:none;margin:0;font-size:13px}.form-status.show{display:block}.form-status.success{color:#2f7614}.form-status.error{color:#a42424}.hp{position:absolute!important;left:-9999px!important}.site-footer{padding:70px 0 25px;background:var(--ink);color:#fff}.footergrid{display:grid;grid-template-columns:1.5fr 1fr 1fr .7fr;gap:40px}.footergrid img{width:220px;height:auto;max-height:96px;object-fit:contain;filter:brightness(0) invert(1);opacity:.95}.footergrid p{color:rgba(255,255,255,.62);font-size:13px}.footergrid>div{display:flex;flex-direction:column;align-items:flex-start}.footergrid a{font-size:14px;margin-bottom:8px}.footerlinks a{border-bottom:1px solid rgba(255,255,255,.35)}.footnote{display:flex;justify-content:space-between;gap:20px;margin-top:50px;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.45);font-size:11px}.to-top{position:fixed;z-index:700;right:20px;bottom:20px;width:48px;height:48px;border:0;background:var(--ink);color:#fff;opacity:0;pointer-events:none;transform:translateY(12px);transition:.25s}.to-top.show{opacity:1;pointer-events:auto;transform:none}
/* Project detail */
.project-detail{padding-top:var(--header)}.detail-hero{position:relative;min-height:690px;height:76svh;max-height:900px;overflow:hidden;background:var(--ink)}.detail-hero>img,.detail-hero picture,.detail-hero picture img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.detail-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,12,14,.86),rgba(4,12,14,.12) 78%),linear-gradient(0deg,rgba(4,10,12,.48),transparent 45%)}.detail-hero-copy{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;padding-bottom:70px;color:#fff}.detail-hero-copy h1{margin:0 0 12px}.detail-hero-copy>p:last-of-type{color:rgba(255,255,255,.78);font-size:18px}.status-pill{display:inline-flex;margin-top:14px;padding:8px 12px;background:var(--green);color:#12200f;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.asset-note{position:absolute;z-index:2;right:28px;bottom:25px;color:rgba(255,255,255,.75);font-size:10px;letter-spacing:.1em;text-transform:uppercase}.detail-layout{display:grid;grid-template-columns:1.25fr .75fr;gap:100px;align-items:start}.detail-layout>*{min-width:0}.detail-copy{max-width:850px}.backlink{display:inline-flex;margin-bottom:50px;font-size:12px;font-weight:800;border-bottom:1px solid var(--line)}.detail-copy h2{font-size:clamp(42px,4.7vw,72px);margin-bottom:32px;hyphens:auto;overflow-wrap:anywhere}.detail-copy>p{font-size:18px}.detail-copy .lead{font-size:24px}.detail-note{padding-top:20px;border-top:1px solid var(--line);font-size:14px!important}.facts-card{position:sticky;top:110px;background:var(--soft);padding:30px}.facts-card dl{margin:0}.facts-card dl>div{padding:17px 0;border-top:1px solid var(--line)}.facts-card dt{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.facts-card dd{margin:6px 0 0;font-size:16px;font-weight:400;line-height:1.45;color:var(--ink);hyphens:auto;overflow-wrap:anywhere}.detail-next{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;padding:60px max(32px,calc((100vw - var(--max))/2));background:var(--green)}.detail-next>a:first-child{display:grid;grid-template-columns:1fr auto;gap:4px 30px;align-items:center}.detail-next>a:first-child span{font-size:11px;letter-spacing:.12em;text-transform:uppercase}.detail-next>a:first-child strong{font-size:clamp(34px,4vw,62px);letter-spacing:-.04em}.detail-next>a:first-child em{grid-row:1/3;grid-column:2;font-style:normal;font-size:36px}.detail-next .button{background:var(--ink);color:#fff}.project-gallery{background:var(--soft)}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.gallery-item{position:relative;min-height:390px;padding:0;border:0;background:var(--ink);overflow:hidden}.gallery-item.wide{grid-column:1/-1;min-height:620px}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .55s}.gallery-item:hover img{transform:scale(1.025)}.gallery-item span{position:absolute;left:18px;bottom:16px;background:rgba(5,12,14,.78);color:#fff;padding:7px 10px;font-size:10px;letter-spacing:.09em;text-transform:uppercase}.lightbox{position:fixed;z-index:2000;inset:0;display:grid;place-items:center;background:rgba(4,10,12,.94);padding:50px}.lightbox[hidden]{display:none}.lightbox figure{margin:0;max-width:1500px;max-height:88vh}.lightbox img{max-width:100%;max-height:82vh;object-fit:contain}.lightbox figcaption{padding-top:12px;color:#fff;text-align:center}.lightbox-close{position:absolute;right:20px;top:15px;width:48px;height:48px;border:0;background:transparent;color:#fff;font-size:38px}.legal-hero{padding:190px 0 90px;background:var(--soft)}.legal-hero h1{margin-bottom:0}.legal-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px 90px}.legal-grid article.wide{grid-column:1/-1}.legal-content h2{font-size:28px}.legal-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.legal-list li{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:18px 0;border-bottom:1px solid var(--line)}.legal-list span{color:var(--muted)}.small{font-size:12px}.legal-stack{max-width:900px}.legal-stack article{padding:0 0 30px;margin-bottom:30px;border-bottom:1px solid var(--line)}
:focus-visible{outline:3px solid var(--green);outline-offset:4px}
@media(max-width:1120px){.services-grid{grid-template-columns:repeat(2,1fr)}.project-card{grid-column:span 6}.locations-layout{grid-template-columns:1fr}.project-map{position:relative;top:auto}.company-layout{gap:55px}.contact-layout{grid-template-columns:1fr;gap:55px}.detail-layout{grid-template-columns:1fr;gap:55px}.facts-card{position:relative;top:auto}.footergrid{grid-template-columns:1.2fr 1fr 1fr}}
@media(max-width:900px){:root{--header:76px}.wrap{width:min(var(--max),calc(100% - 36px))}.logo{width:auto;height:60px;max-width:204px}.site-header.scrolled .logo{height:54px}.navtoggle{display:flex}.mainnav{position:fixed;display:flex;inset:var(--header) 0 0;background:#fff;flex-direction:column;align-items:flex-start;gap:0;padding:28px 22px 60px;overflow:auto;transform:translateX(100%);opacity:0;pointer-events:none;transition:.3s}.mainnav.open{transform:none;opacity:1;pointer-events:auto}.mainnav>a{width:100%;padding:12px 0;font-size:30px;letter-spacing:-.04em}.mainnav>a:after{display:none}.langs{width:100%;margin:22px 0 0;padding:24px 0 0;border-left:0;border-top:1px solid var(--line)}.hero{min-height:780px}.hero-content{padding:60px 0 150px}.hero h1{font-size:clamp(52px,10vw,82px)}.hero-controls{top:auto;right:18px;bottom:80px;flex-direction:row}.hero-caption{left:18px;right:auto;bottom:77px}.split-heading{grid-template-columns:1fr;gap:22px}.company-layout{grid-template-columns:1fr}.process-stack{margin-top:20px}.footergrid{grid-template-columns:1fr 1fr}.detail-hero{min-height:600px}.gallery-item.wide{min-height:480px}.detail-next{grid-template-columns:1fr;align-items:start}.detail-next .button{justify-self:start}}
@media(max-width:650px){.section{padding:82px 0}.section-intro{margin-bottom:42px}.section-intro>p:last-child{font-size:17px}.hero{min-height:760px;height:100svh}.hero-overlay{background:linear-gradient(0deg,rgba(4,12,14,.9),rgba(4,12,14,.12) 74%),linear-gradient(90deg,rgba(4,12,14,.55),transparent)}.hero-content{justify-content:flex-end;padding:80px 0 135px}.hero h1{font-size:49px}.hero-copy{font-size:16px}.hero-actions{width:100%;align-items:flex-start;flex-direction:column;gap:22px}.hero-actions .button{width:100%}.services-grid{grid-template-columns:1fr}.service-card{min-height:0;padding:26px}.service-card h3{margin-top:38px}.external-note{grid-template-columns:35px 1fr}.flagship-feature{min-height:600px}.flagship-feature-copy{left:22px;right:22px;bottom:34px}.flagship-feature-copy h3{font-size:64px}.flagship-feature-copy p{font-size:15px}.project-grid{display:block}.project-card{margin-bottom:16px}.project-card figure{height:245px}.locations-section .section-intro{margin-bottom:32px}.location-filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:5px;margin-right:-18px}.filter{white-space:nowrap}.project-map{padding:8px}.map-point text{display:none}.location-row{grid-template-columns:32px 1fr 20px;gap:10px}.location-row b{display:none}.location-row em{grid-column:3}.company-copy h2{font-size:44px}.process-stack>div{min-height:90px}.contact-form{grid-template-columns:1fr;padding:24px}.contact-form .full{grid-column:auto}.form-actions{align-items:stretch;flex-direction:column}.form-actions .button{width:100%}.footergrid{grid-template-columns:1fr}.footnote{align-items:flex-start;flex-direction:column}.detail-hero{height:70svh;min-height:530px}.detail-hero-copy{padding-bottom:42px}.detail-hero-copy h1{font-size:58px}.asset-note{right:16px;bottom:12px}.detail-copy h2{font-size:42px}.detail-copy>p{font-size:16px}.detail-copy .lead{font-size:20px}.facts-card{padding:24px}.gallery-grid{grid-template-columns:1fr}.gallery-item,.gallery-item.wide{grid-column:auto;min-height:290px}.lightbox{padding:50px 12px 20px}.legal-hero{padding:150px 0 65px}.legal-grid{grid-template-columns:1fr;gap:45px}.legal-grid article.wide{grid-column:auto}.legal-list li{grid-template-columns:1fr;gap:5px}.detail-next{padding:45px 18px}.detail-next>a:first-child strong{font-size:40px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-slide,.project-card img,.flagship-feature img,.gallery-item img,.reveal{transition:none}.reveal{opacity:1;transform:none}}

/* V3.5 portfolio metrics */
.portfolio-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:34px 0 46px;background:#dfe5df;border:1px solid #dfe5df}
.portfolio-metrics>span{min-height:112px;background:#f5f7f4;display:flex;flex-direction:column;justify-content:center;padding:20px 22px}
.portfolio-metrics em{font-style:normal;font-size:clamp(27px,3vw,44px);line-height:1;color:#111b1d;font-weight:500;letter-spacing:-.04em}
.portfolio-metrics small{margin-top:10px;text-transform:uppercase;letter-spacing:.09em;font-size:10px;line-height:1.35;color:#66706d;font-weight:500}
@media(max-width:760px){.portfolio-metrics{grid-template-columns:repeat(3,minmax(0,1fr));margin:24px 0 34px}.portfolio-metrics>span{min-height:92px;padding:15px}.portfolio-metrics em{font-size:27px}}

/* V3.4 flagship metrics */
.flagship-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;max-width:780px;margin:28px 0 24px;background:rgba(255,255,255,.22);border:1px solid rgba(255,255,255,.22)}
.flagship-stats>span{display:flex;min-height:90px;flex-direction:column;justify-content:center;padding:14px 18px;background:rgba(5,12,14,.58);backdrop-filter:blur(8px)}
.flagship-stats em{font-style:normal;font-size:clamp(20px,2vw,30px);line-height:1.05;color:#fff;font-weight:500;letter-spacing:-.03em;white-space:nowrap;font-variant-numeric:tabular-nums}
.flagship-stats small{margin:7px 0 0;color:rgba(255,255,255,.68);font-size:10px;line-height:1.25;letter-spacing:.08em;text-transform:uppercase;font-weight:500}
.flagship-link{display:inline-block;font-size:13px;font-weight:600;border-bottom:1px solid #fff;padding-bottom:5px}
@media(max-width:900px){
  .site-header{overflow:visible}
  .mainnav{position:absolute;inset:auto 0 auto 0;top:100%;height:calc(100vh - var(--header));height:calc(100dvh - var(--header));max-height:calc(100dvh - var(--header));z-index:1001;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:26px 22px max(56px,env(safe-area-inset-bottom));}
  .mainnav>a,.mainnav .langs{flex:0 0 auto}
  .mainnav>a{font-size:27px;line-height:1.12;padding:11px 0}
  .mainnav.open{transform:translateX(0);opacity:1;pointer-events:auto}
  .flagship-stats{grid-template-columns:repeat(2,minmax(0,1fr));max-width:560px}
}
@media(max-width:650px){
  .flagship-feature{min-height:680px}
  .flagship-feature-copy{left:22px;right:22px;bottom:30px;max-width:none}
  .flagship-feature-copy h3{font-size:60px}
  .flagship-feature-copy p{font-size:15px;line-height:1.5}
  .flagship-stats{margin:20px 0 18px}
  .flagship-stats>span{min-height:72px;padding:11px 12px}
  .flagship-stats em{font-size:18px}
  .mainnav{padding-top:18px}
  .mainnav>a{font-size:25px;padding:9px 0}
  .langs{margin-top:14px;padding-top:18px}
}


/* V3.6.1 - refined MTM performance panel and two business areas */
.mtm-performance{position:relative;padding:34px 0 38px;background:linear-gradient(120deg,#0c1517 0%,#111d1f 60%,#0d1719 100%);color:#fff;overflow:hidden}
.mtm-performance:before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,var(--green),rgba(109,187,47,.15) 58%,transparent)}
.mtm-performance-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.performance-card{position:relative;min-height:156px;display:flex;flex-direction:column;justify-content:flex-end;padding:24px 26px 25px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.10);overflow:hidden}
.performance-card:before{content:"";position:absolute;left:26px;top:23px;width:28px;height:2px;background:var(--green)}
.performance-card small{order:-2;margin:0 0 auto;padding-top:18px;color:rgba(255,255,255,.55);font-size:9px;line-height:1.25;letter-spacing:.14em;text-transform:uppercase;font-weight:500}
.performance-card em{font-style:normal;font-size:clamp(30px,2.8vw,46px);font-weight:350;line-height:1;letter-spacing:-.045em;color:#fff;white-space:nowrap;font-variant-numeric:tabular-nums}
.performance-card span{margin-top:10px;color:rgba(255,255,255,.7);font-size:11px;line-height:1.35;letter-spacing:.035em;font-weight:400}
.business-areas{background:#fff}
.business-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:20px}
.business-card{position:relative;min-height:620px;overflow:hidden;background:var(--ink);color:#fff}
.business-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .75s ease}
.business-card:hover img{transform:scale(1.025)}
.business-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,12,14,.9) 0%,rgba(5,12,14,.52) 46%,rgba(5,12,14,.08) 78%)}
.business-copy{position:absolute;z-index:2;left:clamp(24px,4vw,54px);right:clamp(24px,4vw,54px);bottom:clamp(28px,4vw,52px)}
.business-copy small{display:block;margin-bottom:14px;color:var(--green);font-size:10px;letter-spacing:.15em;text-transform:uppercase;font-weight:600}
.business-copy h3{max-width:620px;margin-bottom:18px;font-size:clamp(38px,4.3vw,66px);color:#fff}
.business-copy p{max-width:650px;margin-bottom:26px;color:rgba(255,255,255,.8);font-size:16px;line-height:1.55}
.business-copy>span{display:inline-block;padding-bottom:4px;border-bottom:1px solid rgba(255,255,255,.8);font-size:12px;font-weight:500}
@media(max-width:900px){.mtm-performance{padding:24px 0 28px}.mtm-performance-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.performance-card{min-height:132px;padding:20px 22px}.performance-card:before{left:22px;top:20px}.performance-card em{font-size:clamp(28px,5vw,40px)}.business-grid{grid-template-columns:1fr}.business-card{min-height:570px}}
@media(max-width:650px){.mtm-performance{padding:18px 0 22px}.mtm-performance-grid{gap:8px}.performance-card{min-height:116px;padding:16px 15px 17px}.performance-card:before{left:15px;top:15px;width:22px}.performance-card small{padding-top:14px;font-size:8px}.performance-card em{font-size:clamp(22px,6.4vw,28px)}.performance-card span{margin-top:7px;font-size:9px}.business-card{min-height:520px}.business-copy h3{font-size:42px}.business-copy p{font-size:15px}}


/* V3.7 - dedicated residential construction section */
.residential-hero{position:relative;min-height:760px;height:86svh;padding-top:var(--header);overflow:hidden;background:var(--ink);color:#fff}
.residential-hero>picture,.residential-hero>picture img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.residential-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,12,14,.88) 0%,rgba(5,12,14,.54) 45%,rgba(5,12,14,.05) 78%),linear-gradient(0deg,rgba(5,12,14,.42),transparent 48%)}
.residential-hero-copy{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;padding:100px 0 92px}
.residential-hero-copy .eyebrow{color:#fff}.residential-hero-copy h1{max-width:900px;margin-bottom:22px;color:#fff}.residential-hero-copy>p:not(.eyebrow){max-width:760px;color:rgba(255,255,255,.84);font-size:clamp(18px,1.6vw,24px)}
.residential-projects{background:#fff}.res-project-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:20px}.res-project-card{position:relative;min-height:680px;overflow:hidden;background:var(--ink);color:#fff}.res-project-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s ease}.res-project-card:hover img{transform:scale(1.025)}.res-project-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,12,14,.92) 0%,rgba(5,12,14,.44) 50%,rgba(5,12,14,.04) 78%)}.res-project-copy{position:absolute;z-index:2;left:clamp(24px,4vw,54px);right:clamp(24px,4vw,54px);bottom:clamp(28px,4vw,52px)}.res-project-copy small{display:block;margin-bottom:13px;color:var(--green);font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.res-project-copy h3{margin-bottom:16px;font-size:clamp(42px,5vw,74px);color:#fff}.res-project-copy p{max-width:640px;color:rgba(255,255,255,.8);font-size:15px}.res-project-meta{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;margin-top:24px;padding-top:17px;border-top:1px solid rgba(255,255,255,.28);font-size:12px}.res-project-meta span{color:rgba(255,255,255,.72)}.res-project-meta b{font-weight:600}.residential-capabilities{background:var(--soft)}.res-cap-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.res-cap-grid article{min-height:330px;padding:28px;display:flex;flex-direction:column;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,255,255,.48)}.res-cap-grid article>span{font-size:10px;color:var(--green-dark);font-weight:700}.res-cap-grid h3{margin:72px 0 16px;font-size:30px}.res-cap-grid p{margin:0;font-size:15px}.residential-cta{padding:90px 0;background:var(--green);color:var(--ink)}.residential-cta .wrap{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:end}.residential-cta .eyebrow{grid-column:1/-1;margin-bottom:0}.residential-cta h2{margin:0;font-size:clamp(42px,5vw,72px)}.residential-cta .button{background:var(--ink);color:#fff}.home-residential-showcase{background:#fff}.home-res-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:20px}.home-res-card{display:grid;grid-template-rows:minmax(330px,50vh) auto;background:var(--soft);overflow:hidden}.home-res-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.home-res-card:hover img{transform:scale(1.025)}.home-res-card>div{padding:26px 28px 30px}.home-res-card small{font-size:10px;color:var(--green-dark);font-weight:700}.home-res-card h3{margin:9px 0 8px}.home-res-card p{margin:0;font-size:14px}.residential-more{margin-top:28px}.berg-gallery .gallery-item:not(.wide){min-height:430px}
@media(max-width:900px){.residential-hero{min-height:700px;height:80svh}.residential-hero-copy{padding:90px 0 70px}.res-project-grid,.home-res-grid{grid-template-columns:1fr}.res-project-card{min-height:590px}.res-cap-grid{grid-template-columns:repeat(2,1fr)}.residential-cta .wrap{grid-template-columns:1fr}.residential-cta .eyebrow{grid-column:auto}.residential-cta .button{justify-self:start}.home-res-card{grid-template-rows:minmax(300px,44vh) auto}}
@media(max-width:650px){.residential-hero{min-height:680px;height:86svh}.residential-hero-shade{background:linear-gradient(0deg,rgba(5,12,14,.91) 0%,rgba(5,12,14,.28) 72%),linear-gradient(90deg,rgba(5,12,14,.35),transparent)}.residential-hero-copy{padding:70px 0 55px}.residential-hero-copy h1{font-size:48px}.residential-hero-copy>p:not(.eyebrow){font-size:16px}.res-project-card{min-height:560px}.res-project-copy h3{font-size:46px}.res-project-meta{align-items:flex-start;flex-direction:column;gap:9px}.res-cap-grid{grid-template-columns:1fr}.res-cap-grid article{min-height:0}.res-cap-grid h3{margin-top:42px}.residential-cta{padding:65px 0}.home-res-card{grid-template-rows:260px auto}.berg-gallery .gallery-item:not(.wide){min-height:300px}}

/* V3.7.2 - second-level project navigation */
.nav-dropdown{position:relative;align-self:stretch;display:flex;align-items:center}
.nav-dropdown-head{display:flex;align-items:center;height:100%}
.nav-parent{position:relative;display:flex;align-items:center;height:100%;padding:31px 0}
.nav-parent:after{content:"";position:absolute;left:0;right:100%;bottom:22px;height:2px;background:var(--green);transition:right .22s}
.nav-dropdown:hover .nav-parent:after,.nav-dropdown:focus-within .nav-parent:after{right:0}
.nav-subtoggle{display:none}
.nav-submenu{position:absolute;z-index:1100;top:calc(100% - 7px);left:-24px;width:max-content;min-width:285px;padding:10px;background:rgba(255,255,255,.98);border:1px solid rgba(16,25,27,.09);box-shadow:0 20px 48px rgba(10,24,18,.14);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(8px);transition:opacity .18s ease,transform .18s ease,visibility .18s ease}
.nav-submenu:before{content:"";position:absolute;left:22px;top:0;width:32px;height:2px;background:var(--green)}
.nav-submenu a{display:block;padding:12px 14px;color:var(--ink);font-size:13px;line-height:1.35;font-weight:500;white-space:nowrap;transition:background .18s ease,color .18s ease,padding-left .18s ease}
.nav-submenu a:hover,.nav-submenu a:focus-visible{background:var(--soft);color:var(--green-dark);padding-left:18px;outline:none}
@media(min-width:901px){.nav-dropdown:hover .nav-submenu,.nav-dropdown:focus-within .nav-submenu{opacity:1;visibility:visible;pointer-events:auto;transform:none}}
@media(max-width:900px){
  .mainnav>.nav-dropdown{flex:0 0 auto;width:100%;display:block;align-self:auto}
  .nav-dropdown-head{display:grid;grid-template-columns:minmax(0,1fr) 48px;width:100%;height:auto;align-items:center}
  .nav-parent{height:auto;width:100%;padding:12px 0;font-size:30px;line-height:1.12;letter-spacing:-.04em}
  .nav-parent:after{display:none}
  .nav-subtoggle{display:grid;place-items:center;width:48px;height:48px;padding:0;border:0;background:transparent;color:var(--ink)}
  .nav-subtoggle span{display:block;width:10px;height:10px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translate(-2px,-2px);transition:transform .2s ease}
  .nav-dropdown.submenu-open .nav-subtoggle span{transform:rotate(225deg) translate(-1px,-1px)}
  .nav-submenu{position:static;width:100%;min-width:0;max-height:0;margin:0;padding:0 0 0 16px;border:0;border-left:1px solid var(--line);box-shadow:none;background:transparent;opacity:0;visibility:hidden;pointer-events:none;transform:none;overflow:hidden;transition:max-height .24s ease,opacity .2s ease,margin .2s ease,padding .2s ease}
  .nav-submenu:before{display:none}
  .nav-dropdown.submenu-open .nav-submenu{max-height:170px;margin:2px 0 12px;padding:2px 0 5px 16px;opacity:1;visibility:visible;pointer-events:auto}
  .nav-submenu a{padding:8px 0;font-size:15px;line-height:1.35;color:var(--muted);white-space:normal}
  .nav-submenu a:hover,.nav-submenu a:focus-visible{padding-left:0;background:transparent;color:var(--green-dark)}
}
@media(max-width:650px){
  .nav-parent{font-size:25px;padding:9px 0}
  .nav-dropdown-head{grid-template-columns:minmax(0,1fr) 44px}
  .nav-subtoggle{width:44px;height:44px}
  .nav-submenu a{font-size:14px;padding:7px 0}
}

/* V3.7.3 - subpage navigation, active menu state and residential spacing */
.mainnav>a.is-active,.nav-parent.is-active{color:var(--green-dark)}
.mainnav>a.is-active:after,.nav-parent.is-active:after{right:0}
.nav-dropdown.is-active>.nav-dropdown-head .nav-parent{color:var(--green-dark)}
.nav-submenu a.is-active{background:var(--soft);color:var(--green-dark);padding-left:18px}
.subpage-bar{position:relative;z-index:8;display:flex;min-height:62px;align-items:center;background:#fff;border-bottom:1px solid var(--line)}
.subpage-bar .wrap{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:62px}
.subpage-back{display:inline-flex;align-items:center;gap:11px;color:var(--ink);font-size:12px;line-height:1.25;font-weight:500;letter-spacing:.015em;transition:color .18s ease,transform .18s ease}
.subpage-back:before{content:"←";font-size:17px;line-height:1;color:var(--green-dark);transition:transform .18s ease}
.subpage-back:hover,.subpage-back:focus-visible{color:var(--green-dark);outline:none}
.subpage-back:hover:before,.subpage-back:focus-visible:before{transform:translateX(-3px)}
.subpage-context{color:var(--muted);font-size:10px;line-height:1.25;letter-spacing:.12em;text-transform:uppercase;text-align:right}
.residential-page main.has-subpage-bar{padding-top:var(--header)}
.residential-page main.has-subpage-bar .residential-hero{padding-top:0}
.detail-page main.has-subpage-bar:not(.project-detail){padding-top:var(--header)}
.detail-page main.has-subpage-bar:not(.project-detail) .legal-hero{padding-top:92px}
.detail-copy>.backlink{display:none}
@media(max-width:900px){
  .mainnav>a.is-active,.nav-dropdown.is-active>.nav-dropdown-head{background:linear-gradient(90deg,rgba(109,187,47,.11),rgba(109,187,47,0) 72%)}
  .mainnav>a.is-active{padding-left:14px}
  .nav-dropdown.is-active .nav-parent{padding-left:14px}
  .nav-submenu a.is-active{padding-left:0;background:transparent;color:var(--green-dark)}
  .subpage-bar,.subpage-bar .wrap{min-height:58px}
  .subpage-context{font-size:9px}
}
@media(max-width:650px){
  .subpage-bar,.subpage-bar .wrap{min-height:54px}
  .subpage-bar .wrap{gap:14px}
  .subpage-back{font-size:11px}
  .subpage-context{max-width:48%;font-size:8px;letter-spacing:.09em}
  .detail-page main.has-subpage-bar:not(.project-detail) .legal-hero{padding-top:68px}
}

/* V3.8 SEO landing pages */
.seo-page-hero{padding:calc(var(--header) + 86px) 0 78px;background:linear-gradient(180deg,#f5f7f4 0,#fff 100%);border-bottom:1px solid var(--line)}
.seo-page-hero h1{max-width:930px;margin:12px 0 18px;font-size:clamp(50px,6.4vw,92px);line-height:.96;letter-spacing:-.055em;font-weight:500}
.seo-page-lead{max-width:760px;font-size:clamp(19px,2.1vw,27px);line-height:1.45;color:var(--muted)}
.seo-project-categories{padding-top:70px}.seo-project-list{background:#f5f7f4}.seo-project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.seo-project-card{display:block;background:#fff;border:1px solid var(--line);overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}.seo-project-card:hover{transform:translateY(-4px);box-shadow:0 18px 42px rgba(10,25,18,.08)}.seo-project-card img{width:100%;aspect-ratio:4/3;object-fit:cover}.seo-project-card>div{padding:24px}.seo-project-card h3{font-size:24px;margin:0 0 10px}.seo-project-card p{font-size:14px;line-height:1.55;color:var(--muted);min-height:66px}.seo-project-card span{display:block;margin-top:18px;font-size:13px;font-weight:600}.seo-residential-link{border-top:1px solid var(--line)}
@media(max-width:900px){.seo-page-hero{padding:calc(var(--header) + 54px) 0 54px}.seo-project-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.seo-project-grid{grid-template-columns:1fr}.seo-project-card p{min-height:0}}
