:root{--ink:#252c30;--soft:#747c80;--line:#d9dddc;--bg:#f6f6f3;--blue:#c7d5db}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,'Helvetica Neue',sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.site-header{height:84px;padding:0 5%;display:flex;align-items:center;gap:3vw;border-bottom:1px solid var(--line);background:#fff;position:relative;z-index:10}.brand{display:flex;align-items:center;gap:10px;margin-right:auto;white-space:nowrap}.brand .mark{width:38px;height:28px;object-fit:contain}.brand .wordmark{width:102px;height:auto}.brand span,.footer-brand span{font-size:9px;letter-spacing:.22em;color:#55635d;align-self:flex-end;margin-bottom:5px}.site-header nav{display:flex;gap:31px;font-size:13px}.site-header nav a:hover,.header-contact:hover{color:#748c98}.header-contact{border:1px solid #b7c0c3;padding:13px 18px;font-size:13px;margin-left:2vw}.header-contact span,.text-link span{margin-left:25px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:45% 55%;min-height:610px;background:#eef0ee}.hero-text{padding:75px 7% 27px 11%;display:flex;flex-direction:column}.kicker,.index,.overline{font-size:10px;font-weight:700;letter-spacing:.18em;color:#6a787d}.kicker .dot{display:inline-block;width:3px;height:3px;background:#8899a0;border-radius:50%;margin:0 9px 2px}.hero h1{font-size:clamp(43px,4.5vw,76px);font-weight:400;letter-spacing:-.065em;line-height:1.03;margin:80px 0 26px}.hero-text>p{font-size:16px;line-height:1.65;max-width:420px;color:#586367;margin:0 0 32px}.text-link{font-size:13px;border-bottom:1px solid #8e9a9c;width:max-content;padding-bottom:12px}.hero-foot{display:flex;justify-content:space-between;gap:12px;margin-top:auto;padding-top:60px;font-size:9px;letter-spacing:.14em;color:#6c797d}.hero-image{position:relative;overflow:hidden;background:#26445b}.hero-image img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:56% center}.image-credit{position:absolute;bottom:25px;right:30px;color:#fff;font-size:9px;letter-spacing:.15em;text-shadow:0 1px 6px #122}.section-wrap{max-width:1500px;margin:auto;padding:120px 7%}.intro{display:grid;grid-template-columns:28% 72%;gap:25px}.intro-main{max-width:830px}.intro h2,.section-top h2,.feature h2,.sectors h2,.approach h2,.contact h2{font-size:clamp(38px,4.1vw,65px);line-height:1.08;letter-spacing:-.055em;font-weight:400;margin:24px 0 35px}.intro h2 span,.section-top h2 span,.feature h2 span,.sectors h2 span,.approach h2 span,.contact h2 span{color:#93a5aa}.intro p{font-size:16px;line-height:1.85;color:#677175;max-width:720px}.intro p.large{font-size:21px;line-height:1.65;color:#354146}.feature{display:grid;grid-template-columns:54% 46%;min-height:540px;background:#e5e9e8}.feature-image{overflow:hidden}.feature-image img,.sectors-photo img{width:100%;height:100%;object-fit:cover}.feature-image img{object-position:45% center}.feature-copy{padding:90px 12%;display:flex;flex-direction:column;justify-content:center}.feature-copy p,.sectors-copy>p{max-width:440px;line-height:1.8;color:#677175;font-size:15px}.section-top{display:flex;align-items:start;justify-content:space-between;gap:30px}.section-top h2{margin:0 0 75px;width:67%}.service-list{border-top:1px solid var(--line)}.service-list article{display:grid;grid-template-columns:10% 36% 54%;padding:31px 0;border-bottom:1px solid var(--line);gap:10px;align-items:start}.service-number{color:#859298;font-size:11px}.service-list h3{font-size:22px;letter-spacing:-.025em;font-weight:400;margin:0}.service-list p{font-size:14px;line-height:1.8;max-width:450px;color:#6c7478;margin:0}.sectors{display:grid;grid-template-columns:53% 47%;background:#e8edee}.sectors-copy{padding:100px 12% 105px 13%}.sectors-copy h2{margin:38px 0 26px}.sector-rows{margin-top:50px}.sector-rows div{padding:18px 0;border-bottom:1px solid #c9d1d2;font-size:15px;display:flex;gap:25px}.sector-rows div:first-child{border-top:1px solid #c9d1d2}.sector-rows span{font-size:10px;color:#86969c;padding-top:4px}.sectors-photo{overflow:hidden}.sectors-photo img{object-position:65% center}.approach{display:grid;grid-template-columns:28% 72%;gap:25px}.approach h2{margin:0 0 70px}.approach-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.approach-grid article{border-top:1px solid #b8c0c2;padding-top:22px}.approach-grid span{font-size:10px;letter-spacing:.13em;color:#7e8c90}.approach-grid p{line-height:1.8;color:#657074;font-size:14px}.contact{display:grid;grid-template-columns:47% 53%;gap:50px;background:#edf0f0;max-width:none}.contact h2{margin:45px 0 22px}.contact>div>p{line-height:1.8;max-width:370px;color:#647175}.location{font-size:11px;letter-spacing:.12em;line-height:2;margin-top:85px;color:#7a8588}.contact form{max-width:650px}.contact label{display:block;font-size:12px;margin-bottom:22px;color:#4c585c}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact input:not([type=checkbox]),.contact select,.contact textarea{display:block;width:100%;border:0;border-bottom:1px solid #b6c1c3;background:transparent;outline:none;padding:14px 0;font-size:14px;color:#253137;border-radius:0}.contact input:focus,.contact select:focus,.contact textarea:focus{border-color:#223942}.contact textarea{resize:vertical}.contact .consent{display:flex;gap:10px;align-items:flex-start;line-height:1.5;font-size:11px}.consent input{margin:2px 0}.submit{border:0;background:#283e49;color:white;width:100%;padding:17px 19px;display:flex;justify-content:space-between;cursor:pointer}.submit:hover{background:#405a66}.contact small{display:block;color:#879195;line-height:1.5;font-size:10px;margin-top:13px}.trap{position:absolute;left:-10000px}#form-status{font-size:12px}footer{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:35px 5%;background:#fff;color:#798488;font-size:10px;letter-spacing:.06em}.footer-brand{display:flex;align-items:center;gap:7px}.footer-brand img{width:100px}.footer-brand span{margin-bottom:3px}footer>div:last-child{display:flex;gap:18px}footer button{border:0;background:transparent;color:inherit;cursor:pointer;padding:0;font-size:inherit}.cookie-banner{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);z-index:100;background:white;border:1px solid #c9d2d5;box-shadow:0 12px 45px #1e293b24;padding:20px;max-width:760px;width:calc(100% - 32px);display:flex;gap:30px;align-items:center}.cookie-banner[hidden]{display:none}.cookie-banner strong{font-size:14px}.cookie-banner p{font-size:12px;line-height:1.5;color:#687578;margin:6px 0 0}.cookie-buttons{display:flex;gap:8px;flex-shrink:0}.cookie-buttons button{padding:12px;border:1px solid #b5c2c6;background:white;cursor:pointer;font-size:12px}.cookie-buttons button:last-child{background:#263e49;color:white}@media(max-width:900px){.site-header{height:70px}.site-header nav{display:none;position:absolute;top:70px;left:0;right:0;background:white;padding:20px 6%;flex-direction:column;border-bottom:1px solid var(--line)}.site-header nav.open{display:flex}.menu-toggle{display:block;border:0;background:transparent;font-size:13px}.header-contact{margin-left:auto}.hero{grid-template-columns:1fr}.hero-text{min-height:470px;padding:60px 7% 25px}.hero h1{margin:65px 0 22px}.hero-image{height:400px}.intro,.approach{grid-template-columns:1fr}.feature,.sectors{grid-template-columns:1fr}.feature-image,.sectors-photo{height:390px}.feature-copy,.sectors-copy{padding:65px 7%}.sectors-photo{order:-1}.contact{grid-template-columns:1fr}.section-wrap{padding:75px 7%}footer{flex-wrap:wrap}}@media(max-width:570px){.brand .mark{width:30px}.brand .wordmark{width:82px}.brand span{font-size:7px}.header-contact{display:none}.hero h1{font-size:49px}.hero-image{height:290px}.intro h2,.section-top h2,.feature h2,.sectors h2,.approach h2,.contact h2{font-size:39px}.section-top{display:block}.section-top h2{width:100%;margin-top:28px}.service-list article{grid-template-columns:35px 1fr;gap:12px}.service-list p{grid-column:2}.approach-grid{grid-template-columns:1fr}.form-row{grid-template-columns:1fr;gap:0}.cookie-banner{display:block}.cookie-buttons{margin-top:15px;flex-wrap:wrap}.footer-brand{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Responsive and keyboard-accessibility refinements */
.intro,.approach{grid-template-columns:minmax(0,28fr) minmax(0,72fr)}
.contact{grid-template-columns:minmax(0,47fr) minmax(0,53fr)}
.service-list article{grid-template-columns:minmax(0,10fr) minmax(0,36fr) minmax(0,54fr)}
section[id]{scroll-margin-top:28px} :focus-visible{outline:2px solid #365d6a;outline-offset:5px}
.skip-link{position:fixed;top:-100px;left:20px;padding:14px;background:white;z-index:200}.skip-link:focus{top:12px}
.preview-note{font-size:12px;line-height:1.5;color:#586367;border-left:2px solid #93a5aa;padding-left:12px}
.hero-image img{transition:transform 1s ease}.hero-image:hover img{transform:scale(1.025)}
.service-list article:hover{background:#edf0ed}.service-list article{transition:background .2s}
@media(max-width:900px){.intro,.approach,.contact{grid-template-columns:minmax(0,1fr)}.hero-text{min-width:0}.contact{gap:35px}.location{margin-top:30px}}
@media(max-width:570px){.service-list article{grid-template-columns:25px minmax(0,1fr)}.kicker{line-height:1.8;font-size:9px}.hero h1{font-size:clamp(40px,11vw,49px)}footer>div:last-child{flex-wrap:wrap}.brand{gap:7px}.site-header{gap:12px}.hero-text{padding-top:38px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important}}

.arrow{display:inline-block;width:14px;height:14px;vertical-align:middle}.menu-toggle span{font-size:0}.menu-toggle span:after{content:"";display:inline-block;width:16px;height:10px;border-top:1px solid;border-bottom:1px solid;margin-left:8px}
#cookie-dialog{border:1px solid #c9d2d5;padding:30px;max-width:480px;width:calc(100% - 32px);color:var(--ink);background:var(--bg)}#cookie-dialog::backdrop{background:#152c3666}#cookie-dialog h2{font-weight:400;font-size:28px;letter-spacing:-.03em}#cookie-dialog p{font-size:14px;line-height:1.7}#cookie-dialog a{display:inline-block;text-decoration:underline;margin:8px 0 24px}

.legal-copy{font-size:17px;line-height:1.8;color:#59676b}.legal-copy h2{font-size:24px;letter-spacing:-.02em;margin:32px 0 10px}.legal-date{font-size:13px;margin-top:35px}button:disabled{opacity:.65;cursor:wait}.preview-note a{text-decoration:underline}

.cookie-banner{position:fixed;bottom:20px;left:20px;right:20px;max-width:720px;padding:20px 24px;background:#fff;color:#293c40;border:1px solid #cad3d2;box-shadow:0 8px 35px #142f3020;z-index:90;display:flex;gap:24px;align-items:center;font-size:14px;line-height:1.5}.cookie-banner[hidden]{display:none}.cookie-banner strong{font-weight:600}.cookie-banner p{margin:6px 0}.cookie-banner a{text-decoration:underline}.cookie-banner button{background:#405d66;color:#fff;border:0;padding:12px 18px;cursor:pointer;font:inherit;white-space:nowrap}@media(max-width:570px){.cookie-banner{left:12px;right:12px;bottom:12px;padding:16px;gap:12px;align-items:flex-start;flex-direction:column}.cookie-banner button{align-self:flex-end}}
