@font-face{font-family:Manrope;src:url('fonts/manrope-400.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Manrope;src:url('fonts/manrope-500.woff2') format('woff2');font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:Manrope;src:url('fonts/manrope-600.woff2') format('woff2');font-style:normal;font-weight:600;font-display:swap}
:root{--paper:#ffffff;--ink:#252925;--muted:#71756b;--line:#e1e3dc;--accent:#626468;--dark:#252d28;--pad:clamp(24px,5.2vw,88px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;width:100%;height:100%;object-fit:cover}::selection{background:var(--accent);color:var(--ink)}:focus-visible{outline:2px solid #81965d;outline-offset:6px}.skip-link{position:absolute;top:-100px;left:20px;z-index:20;background:var(--paper);padding:15px}.skip-link:focus{top:15px}.site-header{height:112px;padding:0 var(--pad);display:flex;align-items:center;justify-content:space-between;position:relative;z-index:10}.brand{width:88px;display:block}.brand img{height:auto}.navigation{display:flex;align-items:center;gap:36px}.navigation a{font-size:12px;font-weight:500;position:relative;padding:10px 0}.navigation a:after{content:'';position:absolute;bottom:2px;left:0;width:0;height:1px;background:currentColor;transition:width .25s}.navigation a:hover:after,.navigation a[aria-current=page]:after{width:100%}.nav-right{display:flex;align-items:center;gap:32px}.language{font-size:11px;border-left:1px solid var(--line);padding-left:26px;letter-spacing:.06em}.language span{font-size:13px;margin-right:8px}.menu-toggle{display:none}.shell{padding-left:var(--pad);padding-right:var(--pad)}.eyebrow{font-size:10px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;display:flex;align-items:center;gap:12px}.eyebrow:before{content:'';width:6px;height:6px;background:currentColor;border-radius:50%;flex-shrink:0}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400}h1{font-size:clamp(52px,6.1vw,94px);letter-spacing:-.065em;line-height:1.09}h2{font-size:clamp(36px,4.1vw,62px);letter-spacing:-.052em;line-height:1.15}h3{font-size:24px;letter-spacing:-.035em}.muted{color:var(--muted)}.hero-intro{padding-top:57px;padding-bottom:51px}.hero-title-row{display:flex;justify-content:space-between;gap:45px;align-items:flex-end;margin-top:28px}.hero-title-row h1{max-width:830px}.hero-aside{max-width:245px;padding-bottom:8px}.hero-aside p{font-size:13px;line-height:1.9;color:var(--muted)}.text-link{display:inline-flex;align-items:center;gap:35px;font-size:11px;font-weight:600;margin-top:27px;padding-bottom:10px;border-bottom:1px solid var(--ink)}.arrow{font-size:21px;line-height:1;transition:transform .25s}.text-link:hover .arrow,.button:hover .arrow{transform:translate(3px,-3px)}.hero-image{position:relative;margin:0 20px;height:clamp(380px,41vw,630px);overflow:hidden;background:#273842}.hero-image>img{object-position:center 48%;animation:image-in 1.5s ease-out both}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,#07181699)}.image-caption{position:absolute;bottom:36px;left:calc(var(--pad) - 20px);right:calc(var(--pad) - 20px);z-index:1;color:#fff;display:flex;justify-content:space-between;align-items:flex-end}.image-caption p{font-size:11px;letter-spacing:.04em}.image-caption span{font-size:10px;opacity:.7}.circle-link{border:1px solid #ffffff70;border-radius:50%;height:45px;width:45px;display:grid;place-items:center;transition:background .2s}.circle-link:hover{background:#ffffff20}.intro-grid{padding-top:112px;padding-bottom:112px;display:grid;grid-template-columns:1fr 2fr;gap:70px}.intro-grid .eyebrow{align-self:start;margin-top:12px}.intro-copy h2{max-width:840px}.intro-copy>p{max-width:490px;font-size:14px;line-height:1.95;margin:29px 0 0;color:var(--muted)}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:45px}.section-head h2{margin-top:20px}.section-head .text-link{flex-shrink:0}.companies-section{border-top:1px solid var(--line);padding-top:70px;padding-bottom:90px}.company-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.company-card{background:var(--paper);min-height:260px;padding:25px;display:flex;flex-direction:column;transition:background .3s}.company-card:hover{background:#e9eddf}.card-top{display:flex;justify-content:space-between;color:var(--muted);font-size:9px;letter-spacing:.08em}.company-mark{height:125px;display:flex;align-items:center;justify-content:center}.company-mark img{width:87px;height:auto;opacity:.64;mix-blend-mode:multiply}.company-card h3{font-size:15px}.company-card>p{font-size:10px;color:var(--muted);margin-top:5px}.perspective{background:var(--dark);color:var(--paper);display:grid;grid-template-columns:1fr 1fr;min-height:570px}.perspective-image{overflow:hidden;min-height:450px}.perspective-image img{object-position:center}.perspective-copy{padding:75px var(--pad);display:flex;align-items:flex-start;flex-direction:column;justify-content:center}.perspective-copy h2{margin-top:30px;max-width:500px}.perspective-copy p{font-size:13px;line-height:1.9;color:#bdc5bc;margin-top:25px;max-width:360px}.perspective .text-link{border-color:#b8c4b2;color:var(--accent);margin-top:36px}.values-strip{padding-top:75px;padding-bottom:75px;display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.value{border-top:1px solid var(--line);padding-top:23px}.value>span{font-size:10px;color:var(--muted)}.value h3{margin:25px 0 14px;font-size:23px}.value p{font-size:12px;line-height:1.9;color:var(--muted);max-width:310px}.cta{margin:25px 20px 0;background:var(--accent);padding:64px calc(var(--pad) - 20px);display:flex;align-items:center;justify-content:space-between;gap:35px}.cta h2{max-width:650px;font-size:clamp(36px,4.2vw,64px)}.cta .eyebrow{margin-bottom:23px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:45px;padding:18px 24px;background:var(--ink);color:var(--paper);font-size:11px;white-space:nowrap}.site-footer{padding:70px var(--pad) 26px}.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px;padding-bottom:65px}.footer-brand img{width:83px;height:auto}.footer-brand p{font-size:12px;line-height:1.9;color:var(--muted);margin-top:22px;max-width:260px}.footer-label{font-size:9px;text-transform:uppercase;letter-spacing:.13em;color:var(--muted);margin-bottom:20px}.footer-links{display:flex;flex-direction:column;gap:12px;font-size:12px}.footer-links a:hover{text-decoration:underline;text-underline-offset:4px}.footer-bottom{border-top:1px solid var(--line);padding-top:23px;display:flex;justify-content:space-between;gap:20px;font-size:9px;color:var(--muted)}.page-intro{padding-top:65px;padding-bottom:65px;border-top:1px solid var(--line);margin:0 var(--pad)}.breadcrumb{font-size:10px;color:var(--muted);margin-bottom:45px;display:flex;gap:13px}.page-intro h1{margin-top:25px;max-width:950px}.page-intro .lead{font-size:15px;line-height:1.9;color:var(--muted);max-width:500px;margin-top:30px}.page-image{margin:0 var(--pad);height:520px;overflow:hidden}.page-image img{object-position:center 45%}.about-story{padding-top:100px;padding-bottom:100px;display:grid;grid-template-columns:1fr 1fr;gap:100px}.about-story h2{margin-top:25px}.prose p{font-size:14px;line-height:2;color:var(--muted);margin-bottom:22px}.prose{padding-top:36px}.principles{background:#e9ece3;padding-top:75px;padding-bottom:35px}.principles .values-strip{padding-left:0;padding-right:0}.portfolio{padding-bottom:100px}.portfolio .company-card{min-height:295px}.portfolio .company-mark{height:165px}.portfolio-meta{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:22px 0;font-size:10px;letter-spacing:.06em}.portfolio-meta span:last-child{color:var(--muted)}.note{font-size:11px;line-height:1.8;color:var(--muted);margin-top:24px;max-width:570px}.sector-layout{display:grid;grid-template-columns:1fr 1fr;gap:85px;padding-bottom:100px}.sector-photo{height:650px;position:sticky;top:35px}.sector-list{border-top:1px solid var(--line)}.sector-list details{border-bottom:1px solid var(--line);padding:0 0 0 0}.sector-list summary{cursor:pointer;list-style:none;display:flex;gap:24px;align-items:center;min-height:125px}.sector-list summary::-webkit-details-marker{display:none}.sector-number{font-size:10px;color:var(--muted)}.sector-list summary h2{font-size:28px;letter-spacing:-.04em}.plus{margin-left:auto;font-size:25px;font-weight:400}.sector-list details[open] .plus{transform:rotate(45deg)}.sector-list details p{font-size:13px;line-height:1.9;color:var(--muted);padding:0 35px 28px}.contact-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:90px;padding-bottom:100px}.contact-image{height:650px}.contact-content{padding-top:20px}.contact-content h2{font-size:35px}.contact-content>p{font-size:13px;color:var(--muted);line-height:1.9;margin:22px 0 40px}.contact-row{border-top:1px solid var(--line);padding:24px 0;display:flex;justify-content:space-between;gap:25px;font-size:12px}.contact-row span{color:var(--muted)}.contact-note{padding:25px;background:#e9ece3;margin-top:20px}.contact-note .eyebrow{font-size:9px}.contact-note p{font-size:12px;color:var(--muted);line-height:1.85;margin-top:15px}.will-reveal{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s ease}.will-reveal.is-visible{opacity:1;transform:translateY(0)}@keyframes image-in{from{transform:scale(1.035)}to{transform:scale(1)}}
@media(min-width:1700px){body{max-width:1920px;margin:auto}.hero-intro{padding-top:75px}}
@media(max-width:1100px){.navigation{gap:23px}.nav-right{gap:22px}.hero-aside{max-width:215px}.intro-grid{gap:40px}.company-card{padding:20px}.perspective-copy{padding:50px 40px}.contact-layout,.sector-layout{gap:45px}}
@media(max-width:900px){.site-header{height:90px}.brand{width:73px}.menu-toggle{display:flex;align-items:center;gap:12px;border:0;padding:10px 0;background:none;font-size:11px}.menu-icon{width:22px;height:12px;border-top:1px solid;border-bottom:1px solid;transition:transform .25s}.menu-open .menu-icon{transform:rotate(-45deg)}.nav-right{gap:25px}.language{border:0;padding:0}.navigation{display:none;position:absolute;top:90px;left:0;right:0;background:var(--paper);padding:25px var(--pad) 35px;border-bottom:1px solid var(--line);box-shadow:0 15px 25px #25292515}.menu-open .navigation{display:flex;flex-direction:column;align-items:stretch;gap:10px}.navigation a{font-size:18px;width:fit-content}.hero-intro{padding-top:40px}.hero-title-row{align-items:flex-start;flex-direction:column;gap:25px}.hero-aside{max-width:100%;display:flex;align-items:center;justify-content:space-between;width:100%;gap:30px}.hero-aside p{max-width:300px}.hero-aside .text-link{margin:0;white-space:nowrap}.intro-grid{grid-template-columns:1fr;padding-top:75px;padding-bottom:75px;gap:30px}.company-grid{grid-template-columns:repeat(2,1fr)}.perspective{min-height:450px}.perspective-image{min-height:420px}.perspective-copy{padding:40px 30px}.values-strip{gap:25px}.cta{padding-top:45px;padding-bottom:45px}.about-story{gap:45px}.page-image{height:420px}.sector-photo{height:560px}.contact-layout{gap:35px}.contact-image{height:570px}}
@media(max-width:600px){h1{font-size:clamp(43px,10.8vw,64px)}.hero-intro{padding-top:33px;padding-bottom:32px}.hero-title-row{margin-top:22px}.hero-aside{display:block}.hero-aside p{max-width:285px;font-size:12px}.hero-aside .text-link{margin-top:22px;gap:27px}.eyebrow{font-size:9px}.hero-image{margin:0 12px;height:390px}.image-caption{bottom:23px;left:20px;right:20px}.image-caption p{font-size:9px}.image-caption span{font-size:8px}.intro-grid{padding-top:60px;padding-bottom:60px;gap:25px}.intro-copy>p{font-size:13px}.section-head{align-items:flex-start;flex-direction:column;gap:0;margin-bottom:30px}.section-head h2{margin-top:16px}.companies-section{padding-top:45px;padding-bottom:55px}.company-card{padding:18px;min-height:220px}.company-mark{height:105px}.company-mark img{width:69px}.card-top{font-size:8px}.company-card h3{font-size:13px}.perspective{grid-template-columns:1fr}.perspective-image{height:340px;min-height:0}.perspective-copy{padding:45px 24px 55px}.perspective-copy h2{margin-top:24px}.values-strip{grid-template-columns:1fr;padding-top:50px;padding-bottom:40px;gap:30px}.value h3{margin:17px 0 12px}.value p{max-width:100%}.cta{margin:20px 12px 0;padding:40px 20px;align-items:flex-start;flex-direction:column}.cta h2{font-size:37px}.button{padding:17px 22px}.site-footer{padding-top:45px}.footer-top{grid-template-columns:1fr 1fr;gap:35px;padding-bottom:40px}.footer-brand{grid-column:1/-1}.footer-brand p{max-width:250px}.footer-bottom{flex-direction:column;gap:12px;line-height:1.7}.page-intro{padding-top:25px;padding-bottom:40px}.breadcrumb{margin-bottom:35px}.page-intro .lead{font-size:13px}.page-image{margin:0 12px;height:320px}.about-story{grid-template-columns:1fr;gap:5px;padding-top:55px;padding-bottom:45px}.prose{padding-top:22px}.principles{padding-top:45px;padding-bottom:5px}.portfolio{padding-bottom:55px}.portfolio .company-card{min-height:240px}.portfolio .company-mark{height:125px}.portfolio-meta{font-size:8px}.sector-layout{grid-template-columns:1fr;gap:35px;padding-bottom:55px}.sector-photo{position:static;height:320px}.sector-list summary{min-height:105px}.sector-list summary h2{font-size:25px}.sector-list details p{padding-left:0}.contact-layout{grid-template-columns:1fr;gap:30px;padding-bottom:50px}.contact-image{height:380px}.contact-content{padding-top:10px}.contact-row{font-size:11px}.language span{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Immersive home carousel and tighter vertical rhythm */
.hero-slider{height:clamp(600px,calc(100svh - 112px),790px);min-height:600px;margin:0 20px;position:relative;overflow:hidden;background:var(--dark);color:#fff}.hero-slides,.hero-slide{position:absolute;inset:0}.hero-slide{opacity:0;visibility:hidden;transition:opacity 1s ease,visibility 1s}.hero-slide.is-active{opacity:1;visibility:visible;z-index:1}.hero-slide>img{position:absolute;inset:0;transform:scale(1.06);transition:transform 8s cubic-bezier(.2,.65,.25,1);object-position:center}.hero-slide.is-active>img{transform:scale(1)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,22,19,.78) 0%,rgba(12,22,19,.42) 48%,rgba(12,22,19,.06) 78%),linear-gradient(0deg,rgba(10,18,16,.38),transparent 50%)}.hero-content{position:absolute;z-index:2;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding-top:30px}.hero-content h1{max-width:930px;margin-top:25px;color:#fff}.hero-content .eyebrow{color:var(--accent)}.hero-lead{max-width:410px;margin-top:25px;font-size:14px;line-height:1.8;color:#e5e8e1}.hero-content .text-link{color:#fff;border-color:#fff;margin-top:27px}.slider-controls{position:absolute;z-index:4;left:0;right:0;bottom:30px;display:flex;align-items:center;gap:26px}.slider-dots{display:flex;gap:9px}.slider-dots button{width:34px;height:2px;padding:8px 0;border:0;background:transparent;position:relative;cursor:pointer}.slider-dots button:after{content:'';position:absolute;left:0;right:0;top:7px;height:1px;background:#ffffff66;transition:height .25s,background .25s}.slider-dots button.is-active:after{height:2px;background:#fff}.slider-count{display:flex;align-items:center;gap:8px;font-size:9px;letter-spacing:.08em}.slider-count i{display:block;width:32px;height:1px;background:#ffffff55}.slider-arrows{margin-left:auto;display:flex;gap:9px}.slider-arrows button{width:45px;height:45px;border:1px solid #ffffff70;border-radius:50%;background:transparent;color:#fff;cursor:pointer;transition:background .25s,transform .25s}.slider-arrows button:hover{background:#ffffff20;transform:scale(1.05)}.intro-grid{padding-top:78px;padding-bottom:78px}.companies-section{padding-top:58px;padding-bottom:68px}.perspective{min-height:500px}.perspective-copy{padding-top:55px;padding-bottom:55px}.values-strip{padding-top:58px;padding-bottom:58px}.cta{padding-top:52px;padding-bottom:52px}.site-footer{padding-top:55px}.footer-top{padding-bottom:45px}.page-intro{padding-top:44px;padding-bottom:44px}.breadcrumb{margin-bottom:30px}.page-intro h1{margin-top:19px}.page-intro .lead{margin-top:20px}.page-image{height:470px}.about-story{padding-top:70px;padding-bottom:70px}.principles{padding-top:58px;padding-bottom:20px}.portfolio{padding-bottom:70px}.sector-layout,.contact-layout{padding-bottom:70px}.sector-photo,.contact-image{height:570px}.sector-list summary{min-height:105px}
@media(max-width:900px){.hero-slider{height:650px;min-height:580px}.hero-content{justify-content:flex-end;padding-bottom:115px}.hero-content h1{max-width:730px}.intro-grid{padding-top:58px;padding-bottom:58px}.about-story{padding-top:58px;padding-bottom:58px}.page-intro{padding-top:34px;padding-bottom:38px}.breadcrumb{margin-bottom:25px}.sector-photo,.contact-image{height:500px}}
@media(max-width:600px){.hero-slider{margin:0 12px;height:590px;min-height:590px}.hero-slide>img{object-position:56% center}.hero-shade{background:linear-gradient(0deg,rgba(9,17,15,.88) 0%,rgba(9,17,15,.45) 60%,rgba(9,17,15,.1) 100%)}.hero-content{padding:0 22px 103px;justify-content:flex-end}.hero-content h1{font-size:43px;margin-top:17px}.hero-lead{font-size:12px;line-height:1.7;margin-top:17px;max-width:295px}.hero-content .text-link{margin-top:19px}.slider-controls{padding:0 22px;bottom:24px}.slider-count{display:none}.slider-arrows button{width:39px;height:39px}.intro-grid{padding-top:46px;padding-bottom:46px}.companies-section{padding-top:40px;padding-bottom:45px}.perspective-copy{padding-top:38px;padding-bottom:45px}.values-strip{padding-top:40px;padding-bottom:32px;gap:24px}.cta{padding-top:34px;padding-bottom:34px}.site-footer{padding-top:38px}.footer-top{padding-bottom:32px}.page-intro{padding-top:20px;padding-bottom:30px}.breadcrumb{margin-bottom:20px}.page-intro h1{margin-top:16px}.page-intro .lead{margin-top:16px}.page-image{height:290px}.about-story{padding-top:42px;padding-bottom:35px}.principles{padding-top:38px}.portfolio{padding-bottom:45px}.sector-layout,.contact-layout{padding-bottom:45px}.sector-photo{height:290px}.contact-image{height:340px}.sector-list summary{min-height:92px}}
