:root{--ink:#12262a;--paper:#f4f1e9;--white:#fff;--aqua:#8ee8e1;--mint:#bcefd9;--orange:#ff6b3d;--line:rgba(18,38,42,.18)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:100%;object-fit:cover}button{font:inherit}.site-header{height:92px;padding:0 4.5vw;display:flex;align-items:center;justify-content:space-between;position:absolute;z-index:20;color:white;width:100%;border-bottom:1px solid rgba(255,255,255,.24)}.brand{display:flex;align-items:center;gap:14px;font-family:Manrope,sans-serif;font-weight:700;font-size:17px}.brand small{display:block;text-transform:uppercase;font-size:8px;font-weight:500;letter-spacing:1.5px;margin-top:3px}.brand-mark{width:31px;height:31px;display:flex;gap:3px;align-items:center;justify-content:center}.brand-mark i{display:block;width:5px;border-radius:4px;background:var(--aqua);transform:skew(-13deg)}.brand-mark i:nth-child(1){height:15px}.brand-mark i:nth-child(2){height:28px}.brand-mark i:nth-child(3){height:20px}.site-header nav{display:flex;align-items:center;gap:34px;font-size:13px}.site-header nav a:not(.nav-cta){opacity:.86}.nav-cta{border:1px solid rgba(255,255,255,.65);padding:12px 20px}.menu-toggle{display:none;background:none;border:0}.hero{min-height:92vh;height:780px;position:relative;color:white;overflow:hidden;background:#17373b}.hero-image{position:absolute;inset:0;filter:saturate(.75)}.hero-wash{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,33,36,.88) 0%,rgba(9,33,36,.52) 48%,rgba(9,33,36,.08) 78%),linear-gradient(0deg,rgba(3,20,22,.55),transparent 50%)}.hero-content{position:absolute;left:9vw;top:52%;transform:translateY(-46%);max-width:820px;z-index:2}.eyebrow,.kicker{text-transform:uppercase;font-size:11px;letter-spacing:2.2px;font-weight:600}.eyebrow{display:flex;align-items:center;gap:12px}.eyebrow:before{content:"";width:30px;height:1px;background:var(--aqua)}h1,h2,h3{font-family:Manrope,sans-serif;letter-spacing:0;margin:0}h1{font-size:clamp(58px,7vw,104px);line-height:.93;font-weight:500;margin:28px 0 30px}h1 em,.contact h2 em{font-family:Georgia,serif;font-weight:400;color:var(--aqua)}.hero-lead{font-size:17px;line-height:1.65;max-width:590px;color:rgba(255,255,255,.82)}.hero-actions{display:flex;gap:32px;align-items:center;margin-top:36px}.button{display:inline-flex;align-items:center;gap:42px;padding:17px 22px;font-size:13px;font-weight:600}.button-primary{background:var(--aqua);color:var(--ink)}.button span{font-size:20px}.text-link{font-size:13px;border-bottom:1px solid rgba(255,255,255,.45);padding:12px 0;display:flex;gap:20px}.hero-note{position:absolute;bottom:38px;right:5vw;z-index:2;display:flex;align-items:center;gap:18px}.hero-note strong{font-size:30px}.hero-note span{font-size:10px;text-transform:uppercase;letter-spacing:1.4px;max-width:100px}.hero-index{position:absolute;right:4.5vw;top:48%;z-index:3;display:flex;flex-direction:column;gap:9px;align-items:center;font-size:9px}.hero-index i{height:64px;width:1px;background:rgba(255,255,255,.55)}.air-lines{position:absolute;right:-5vw;top:24%;z-index:1}.air-lines span{display:block;width:42vw;height:95px;border-top:1px solid rgba(142,232,225,.5);border-radius:50%;transform:rotate(-12deg);margin:-36px}.manifesto{padding:125px 8vw 130px;display:grid;grid-template-columns:180px 1fr;gap:6vw}.section-number{font-size:9px;letter-spacing:1.8px;padding-top:5px}.manifesto-copy{max-width:1040px}.kicker{color:#5b7475;margin:0 0 24px}.manifesto h2,.projects h2,.process h2{font-size:clamp(42px,5vw,68px);line-height:1.08;font-weight:500}.manifesto h2 span{color:#7c9391}.manifesto-grid{display:grid;grid-template-columns:1fr 1fr;gap:7vw;margin:56px 0 45px;padding-left:15%}.manifesto-grid p{font-size:15px;line-height:1.75;color:#4d6162}.signature{margin-left:15%;padding-top:24px;border-top:1px solid var(--line);display:flex;align-items:end;gap:18px}.signature span{font-family:Georgia,serif;font-style:italic;font-size:30px}.signature small{color:#6b7b7b;font-size:10px;text-transform:uppercase;letter-spacing:1px}.expertise{background:#15383b;color:white;padding:110px 8vw 0}.section-heading{display:grid;grid-template-columns:180px 1fr;margin-bottom:70px}.light{color:rgba(255,255,255,.6)}.section-heading h2{font-size:clamp(40px,4vw,64px);line-height:1.05;font-weight:500}.expertise-list{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.2)}.expertise-list article{padding:28px 2.2vw 60px;border-right:1px solid rgba(255,255,255,.15);min-height:360px}.expertise-list article:last-child{border:0}.expertise-list article>span{font-size:9px;color:var(--aqua)}.service-icon{font-size:30px;color:var(--aqua);margin:45px 0 24px}.fan{font-size:38px}.expertise-list h3{font-size:24px;line-height:1.18;font-weight:500}.expertise-list p{color:rgba(255,255,255,.58);font-size:13px;line-height:1.65;margin-top:22px}.energy-strip{margin:0 -8vw;padding:28px 8vw;background:var(--aqua);color:var(--ink);display:flex;align-items:center;gap:35px}.energy-strip>span{text-transform:uppercase;font-size:9px;letter-spacing:1.6px}.energy-strip i{height:1px;background:rgba(18,38,42,.35);flex:1}.energy-strip p{font-family:Manrope,sans-serif;font-size:15px}.projects{padding:125px 8vw}.projects-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:62px}.projects-head .section-number{margin-bottom:45px}.filters{display:flex;gap:8px}.filters button{border:1px solid var(--line);background:transparent;padding:9px 14px;font-size:11px;cursor:pointer}.filters button.active{background:var(--ink);color:white}.project-grid{display:grid;grid-template-columns:1.3fr .7fr;grid-auto-rows:450px;gap:10px}.project{position:relative;overflow:hidden;background:#1b3e40;color:white;transition:opacity .25s,transform .25s}.project[hidden]{display:none}.project-large{grid-row:span 2}.project img{transition:transform .7s}.project:hover img{transform:scale(1.025)}.project-overlay{position:absolute;inset:0;padding:34px;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(0deg,rgba(9,25,27,.85),transparent 65%)}.project-overlay span,.project-text>p{font-size:9px;text-transform:uppercase;letter-spacing:1.5px;margin-bottom:14px}.project-overlay h3,.project-text h3{font-size:30px;line-height:1.12;font-weight:500}.project-overlay p{font-size:11px;color:rgba(255,255,255,.7)}.project-text{padding:38px;display:flex;flex-direction:column;justify-content:flex-end;background:var(--mint);color:var(--ink)}.project-text.warm{background:#e7ddd0}.project-no{position:absolute;top:35px;right:35px;font-size:12px}.project-text small{max-width:330px;margin-top:22px;color:#526867;line-height:1.5}.project-list{color:var(--ink);background:#fff;padding:34px}.project-list ul{list-style:none;margin:20px 0 0;padding:0}.project-list li{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:17px 0}.project-list li span{font-family:Manrope;font-weight:600}.project-list li small{color:#758584}.portfolio-note{font-size:9px;color:#758584;margin-top:18px}.process{padding:105px 8vw 0;background:#102c2f;color:white;display:grid;grid-template-columns:180px 1fr}.process-title{padding-bottom:70px}.process ol{grid-column:2;display:grid;grid-template-columns:repeat(4,1fr);list-style:none;margin:0;padding:0;border-top:1px solid rgba(255,255,255,.2)}.process li{padding:30px 25px 60px;border-right:1px solid rgba(255,255,255,.14);min-height:210px}.process li span{color:var(--aqua);font-size:9px}.process li strong{font-family:Manrope;display:block;font-size:18px;margin:35px 0 15px}.process li p{font-size:12px;line-height:1.6;color:rgba(255,255,255,.55)}.contact{display:grid;grid-template-columns:1fr 1fr;background:var(--aqua);min-height:660px}.contact-image{min-height:600px}.contact-copy{padding:90px 8vw 70px 7vw}.contact h2{font-size:clamp(48px,5vw,72px);line-height:.98;font-weight:500;margin:25px 0 35px}.contact h2 em{color:#446c6d}.contact-copy>p:not(.kicker){line-height:1.7;max-width:480px;color:#405c5c}.button-dark{background:var(--ink);color:white;margin-top:28px}.contact-copy>small{display:block;margin-top:14px;font-size:9px;opacity:.6}footer{min-height:125px;background:#091f21;color:white;display:flex;align-items:center;justify-content:space-between;padding:0 4.5vw}footer>p{font-size:8px;letter-spacing:1.4px;color:rgba(255,255,255,.52)}footer>a:last-child{font-size:11px}.footer-brand{font-size:14px}
@media(max-width:900px){.site-header{height:72px;padding:0 22px}.site-header nav{position:absolute;display:none;top:72px;left:0;width:100%;background:#102c2f;padding:30px;flex-direction:column;align-items:flex-start}.site-header.open nav{display:flex}.menu-toggle{display:block;width:34px;height:34px}.menu-toggle span{display:block;width:22px;height:1px;background:white;margin:6px}.hero{height:720px;min-height:100svh}.hero-content{left:24px;right:24px;top:48%}h1{font-size:58px}.hero-lead{font-size:15px}.hero-note,.hero-index{display:none}.manifesto,.process{grid-template-columns:1fr;padding:85px 24px}.manifesto .section-number,.process>.section-number{margin-bottom:45px}.manifesto-grid{grid-template-columns:1fr;padding:0;gap:10px;margin:40px 0}.signature{margin:0;align-items:flex-start;flex-direction:column}.expertise{padding:80px 24px 0}.section-heading{grid-template-columns:1fr;gap:38px}.expertise-list{grid-template-columns:1fr 1fr}.expertise-list article{min-height:300px;border-bottom:1px solid rgba(255,255,255,.15)}.energy-strip{margin:0 -24px;padding:22px 24px}.energy-strip i{display:none}.projects{padding:85px 24px}.projects-head{display:block}.filters{overflow:auto;margin-top:30px}.filters button{white-space:nowrap}.project-grid{grid-template-columns:1fr;grid-auto-rows:450px}.project-large{grid-row:span 1}.process ol{grid-column:1;grid-template-columns:1fr 1fr}.contact{grid-template-columns:1fr}.contact-image{height:420px;min-height:0}.contact-copy{padding:70px 24px}.contact h2{font-size:54px}footer{padding:35px 24px;flex-wrap:wrap;gap:25px}footer>p{order:3;width:100%}}
@media(max-width:560px){.hero-actions{align-items:flex-start;flex-direction:column;gap:8px}.hero{height:760px}.hero-content{top:47%}h1{font-size:51px}.manifesto h2,.projects h2,.process h2{font-size:39px}.expertise-list{grid-template-columns:1fr}.expertise-list article{padding:28px 10px 45px;min-height:250px}.service-icon{margin:26px 0 18px}.energy-strip{align-items:flex-start;flex-direction:column;gap:8px}.energy-strip p{margin:0}.project-grid{grid-auto-rows:355px}.process ol{grid-template-columns:1fr}.process li{min-height:160px}.contact-image{height:320px}.contact h2{font-size:47px}.button{gap:20px}.project-overlay,.project-text,.project-list{padding:27px}}

.hero-image{object-position:center 58%;filter:saturate(.78) contrast(1.03)}
.experience-stat{display:flex;align-items:center;gap:24px;margin:42px 0 0;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);max-width:700px}
.experience-stat strong{font-family:Manrope,sans-serif;font-size:54px;line-height:1;color:#1a595b}
.experience-stat span{max-width:380px;font-size:12px;line-height:1.55;text-transform:uppercase;letter-spacing:1px;color:#5b7475}
.manifesto-grid{margin-top:46px}
@media(max-width:560px){.experience-stat{align-items:flex-start;flex-direction:column;gap:10px}}
@media(max-width:560px){.hero-content{left:24px;right:auto;width:calc(100vw - 48px);max-width:340px;overflow:hidden}.hero-content h1{font-size:41px;line-height:.96}.hero-content .eyebrow{font-size:9px;line-height:1.4}.hero-content .hero-lead{width:100%;max-width:100%;font-size:14px;line-height:1.65;overflow-wrap:break-word}}

.company-stats{display:grid;grid-template-columns:1fr 1fr;gap:32px;max-width:900px;margin-top:42px}
.company-stats .experience-stat{margin:0;max-width:none}
.company-stats .experience-stat strong{font-size:46px;white-space:nowrap}
.signature span{font-family:Manrope,sans-serif;font-style:normal;font-weight:600;font-size:23px}
.expertise-list{grid-template-columns:repeat(3,1fr)}
.expertise-list article{border-bottom:1px solid rgba(255,255,255,.15)}
@media(max-width:900px){.company-stats{grid-template-columns:1fr}.expertise-list{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.company-stats .experience-stat strong{font-size:40px}.expertise-list{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.hero-wash{background:linear-gradient(90deg,rgba(7,27,30,.94) 0%,rgba(7,27,30,.75) 35%,rgba(7,27,30,.32) 58%,rgba(7,27,30,.08) 100%),linear-gradient(0deg,rgba(3,20,22,.58),transparent 58%)}
.brand,h1,h2,h3,.energy-strip p,.project-list li span,.process li strong,.signature span,.experience-stat strong{font-family:"Plus Jakarta Sans",sans-serif}
.hero-content{max-width:980px}
.hero-content h1{font-size:clamp(52px,6vw,92px);line-height:.98;font-weight:600}
.hero-content h1 em{font-family:"Plus Jakarta Sans",sans-serif;font-style:normal;font-weight:500;color:var(--aqua)}

@media(max-width:900px){
  .hero-wash{background:linear-gradient(90deg,rgba(7,27,30,.94) 0%,rgba(7,27,30,.7) 64%,rgba(7,27,30,.18) 100%),linear-gradient(0deg,rgba(3,20,22,.62),transparent 62%)}
}

@media(max-width:560px){
  .hero-content h1{font-size:39px;line-height:1.02}
  .hero-content h1 em{display:inline-block;margin-top:4px}
}

.expertise-list article{padding-top:38px}
.expertise-list article>span{display:none}
.service-icon{width:48px;height:48px;margin:0 0 30px;display:grid;place-items:center;color:var(--aqua);border:1px solid rgba(142,232,225,.42);background:rgba(142,232,225,.06)}
.service-icon svg{width:23px;height:23px;stroke:currentColor}
@media(max-width:560px){.service-icon{margin:0 0 24px}}

/* One full-bleed photograph at a time, with a soft crossfade. */
.hero-slideshow{position:absolute;inset:0;background:#102c2f}
.hero-slide{position:absolute;inset:0;opacity:0;object-position:center 58%;filter:saturate(.78) contrast(1.03);transform:scale(1.015);transition:opacity 1.45s ease}
.hero-slide.is-active{opacity:1}
.hero-index{right:4.5vw;top:50%;gap:11px;font-size:0}
.hero-index button{width:8px;height:8px;padding:0;border:1px solid rgba(255,255,255,.72);border-radius:50%;background:rgba(9,31,33,.25);cursor:pointer;transition:background-color .25s,border-color .25s,transform .25s}
.hero-index button.is-active{background:var(--aqua);border-color:var(--aqua);transform:scale(1.25)}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}}

/* Improved readability for service descriptions and project stages. */
.expertise-list p{font-size:15px;line-height:1.7}
.process li span{font-size:15px;font-weight:600;letter-spacing:.5px}
.process li p{font-size:15px;line-height:1.65}

@media(max-width:560px){
  .expertise-list p,.process li p{font-size:14px}
  .process li span{font-size:14px}
}

.project-list-long{grid-column:1/-1}
.project-auschwitz img{object-position:center 25%}
.project-list-long ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:48px}
.project-list-long li span{min-width:0;padding-right:16px}
.project-list-long li small{flex:0 0 auto}

@media(max-width:900px){
  .project-list-long ul{grid-template-columns:1fr}
}

.contact-actions{display:flex;align-items:center;gap:28px;margin-top:28px;flex-wrap:wrap}
.contact-actions .button-dark{margin-top:0}
.contact-phone{font-family:Manrope,sans-serif;font-size:18px;font-weight:600;border-bottom:1px solid rgba(18,38,42,.45);padding:12px 0}
