:root{--teal:#183d40;--deep:#102d30;--ochre:#b78135;--ink:#203338;--muted:#667477;--line:#d5dedd;--paper:#f6f7f5;--white:#fff;--max:1450px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:var(--white);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}a{color:inherit}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--ochre);outline-offset:4px}
.skip-link{position:absolute;top:-100px;left:12px;z-index:1000;background:#fff;padding:12px 18px}.skip-link:focus{top:12px}
.site-header{height:86px;border-bottom:1px solid #e0e5e3;background:#fff;position:relative;z-index:20}
.header-inner{height:100%;max-width:var(--max);padding:0 40px;margin:auto;display:flex;align-items:center;gap:34px}
.brand{display:flex;align-items:center;flex:0 0 auto;width:221px}.brand img{width:100%;height:auto}
.primary-nav{display:flex;align-items:stretch;gap:6px;height:100%;margin-left:auto}
.primary-nav a{height:100%;display:flex;align-items:center;position:relative;text-decoration:none;padding:2px 20px 0;text-transform:uppercase;font-size:12px;font-weight:700;letter-spacing:.12em;color:#35484b;white-space:nowrap}
.primary-nav a:hover,.primary-nav a[aria-current="page"]{color:var(--teal)}.primary-nav a[aria-current="page"]:after,.primary-nav a:hover:after{content:"";position:absolute;height:3px;background:var(--ochre);left:20px;right:20px;bottom:0}
.header-contact{margin-left:12px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;color:var(--teal);border:1px solid #aab9b6;height:41px;padding:0 19px;text-transform:uppercase;font-size:11px;font-weight:700;letter-spacing:.13em;white-space:nowrap;transition:background .2s,color .2s}
.header-contact:hover{background:var(--teal);color:#fff}.menu-button{display:none}
.eyebrow{font-size:11px;line-height:1.3;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--ochre)}
.home-hero{display:grid;grid-template-columns:minmax(370px,39%) minmax(0,61%);min-height:620px;max-height:750px;height:calc(100svh - 86px);background:var(--deep)}
.hero-copy{padding:clamp(42px,5vw,84px) clamp(35px,4.2vw,78px) 38px max(40px,calc((100vw - var(--max))/2 + 40px));display:flex;flex-direction:column;justify-content:center;color:#fff;position:relative}
.hero-copy .eyebrow{margin-bottom:27px}.hero-copy h1{font-size:clamp(42px,4.1vw,67px);font-weight:700;line-height:1.04;letter-spacing:-.042em;margin:0;max-width:640px}
.hero-copy h1 span{color:#d1a163}.hero-summary{font-size:17px;line-height:1.53;max-width:480px;color:#d7e0dd;margin:28px 0 35px}
.arrow-link{align-self:flex-start;display:inline-flex;align-items:center;gap:34px;text-decoration:none;text-transform:uppercase;letter-spacing:.13em;font-size:11px;font-weight:700;padding:0 0 13px;border-bottom:1px solid var(--ochre);color:#fff}.arrow-link:hover{color:#e1b272}.arrow-link svg{width:20px;height:20px;transition:transform .2s}.arrow-link:hover svg{transform:translateX(4px)}
.hero-count{position:absolute;bottom:29px;left:max(40px,calc((100vw - var(--max))/2 + 40px));font-size:11px;letter-spacing:.15em;color:#abc0bc}
.hero-stage{position:relative;overflow:hidden;background:#5b6463}.hero-slide{position:absolute;inset:0;margin:0;opacity:0;z-index:0}.hero-slide.is-active{opacity:1;z-index:2}.hero-stage.is-ready .hero-slide.is-active{animation:reveal-from-left .85s cubic-bezier(.2,.65,.3,1) both}
.hero-slide img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-slide:after{content:"";position:absolute;inset:48% 0 0;background:linear-gradient(0deg,rgba(7,22,24,.63),transparent)}
.hero-slide figcaption{position:absolute;z-index:2;left:35px;bottom:29px;color:#fff;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;text-shadow:0 1px 6px #0007}
@keyframes reveal-from-left{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
.hero-controls{position:absolute;z-index:5;right:34px;bottom:24px;display:flex;align-items:center;gap:12px}.hero-controls button{border:0;background:#ffffffea;color:var(--teal);width:38px;height:38px;display:grid;place-items:center;cursor:pointer}.hero-controls button:hover{background:#fff}.hero-controls svg{width:17px;height:17px}
.hero-progress{position:absolute;z-index:5;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(3,1fr);gap:0}.hero-progress button{border:0;border-top:3px solid #ffffff75;background:transparent;height:12px;cursor:pointer;padding:0}.hero-progress button[aria-current="true"]{border-top-color:var(--ochre)}
.home-intro{max-width:var(--max);padding:35px 40px 39px;margin:auto;display:grid;grid-template-columns:170px minmax(0,1fr) 185px;gap:34px;align-items:center}.home-intro .eyebrow{color:var(--ochre)}.home-intro p{margin:0;font-size:18px;line-height:1.43;font-weight:600;max-width:810px;letter-spacing:-.013em}.text-link{font-size:11px;text-transform:uppercase;letter-spacing:.13em;text-decoration:none;border-bottom:1px solid var(--ochre);padding-bottom:9px;font-weight:700;white-space:nowrap}.text-link:hover{color:var(--ochre)}
.page-shell{max-width:var(--max);margin:auto;padding:0 40px}.page-banner{background:var(--paper);border-bottom:1px solid var(--line)}.page-banner-inner{max-width:var(--max);margin:auto;padding:55px 40px 51px;display:grid;grid-template-columns:230px 1fr;gap:30px}.page-banner h1{font-size:clamp(43px,4.7vw,68px);line-height:1;letter-spacing:-.048em;margin:0;color:var(--teal)}.page-banner p{font-size:17px;line-height:1.5;color:#526367;max-width:710px;margin:12px 0 0}.page-banner .eyebrow{padding-top:7px}
.services-list{padding:19px 0 30px}.service-row{display:grid;grid-template-columns:95px minmax(250px,.82fr) minmax(0,1.3fr);gap:30px;padding:32px 0;border-bottom:1px solid var(--line)}.service-index{font-size:13px;font-weight:700;color:var(--ochre);padding-top:5px}.service-row h2{margin:0;font-size:28px;letter-spacing:-.03em;line-height:1.1;color:var(--teal)}.service-row p{margin:0;font-size:16px;line-height:1.55;max-width:710px}.service-row ul{margin:13px 0 0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:7px}.service-row li{font-size:11px;text-transform:uppercase;letter-spacing:.1em;border:1px solid var(--line);padding:7px 9px;color:#637376}
.leadership{background:#edf1ee;border-top:1px solid var(--line)}.leadership-inner{max-width:var(--max);margin:auto;padding:39px 40px;display:grid;grid-template-columns:220px 1fr 1fr;gap:30px;align-items:start}.leadership h2{font-size:25px;line-height:1.1;letter-spacing:-.025em;margin:0;color:var(--teal)}.leadership p{margin:0;font-size:15px;line-height:1.55}.leadership strong{color:var(--teal)}
.region-tabs{display:flex;gap:0;border-bottom:1px solid var(--line);margin-top:14px}.region-tabs button{border:0;background:none;padding:19px 23px 16px 0;margin-right:27px;cursor:pointer;font-size:11px;text-transform:uppercase;letter-spacing:.13em;font-weight:700;color:#637376;border-bottom:3px solid transparent}.region-tabs button[aria-selected="true"]{color:var(--teal);border-bottom-color:var(--ochre)}
.work-panel[hidden]{display:none}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 35px;padding-bottom:38px}.work-item{display:grid;grid-template-columns:40px 1fr;gap:18px;border-bottom:1px solid var(--line);padding:23px 0 25px}.work-item .num{color:var(--ochre);font-size:12px;font-weight:700;padding-top:5px}.work-item h2{font-size:22px;letter-spacing:-.026em;line-height:1.15;margin:0 0 10px;color:var(--teal)}.work-item p{font-size:14.5px;line-height:1.53;margin:0;color:#3c4b4e}.work-item .sector{display:block;margin:0 0 12px;font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#6d7a7c;font-weight:700}
.privacy-content{padding:33px 40px 65px;display:grid;grid-template-columns:minmax(0,730px) minmax(220px,1fr);gap:clamp(60px,12vw,210px)}.privacy-content section{border-bottom:1px solid var(--line);padding:21px 0}.privacy-content section:first-child{padding-top:0}.privacy-content h2{font-size:22px;color:var(--teal);margin:0 0 10px}.privacy-content p,.privacy-content li{font-size:15px;line-height:1.6;margin:0 0 10px}.privacy-aside{border-left:1px solid var(--line);padding-left:25px}.privacy-aside p{font-size:14px;line-height:1.55}
.site-footer{background:var(--deep);color:#d6e1df}.footer-inner{max-width:var(--max);padding:41px 40px 26px;margin:auto;display:grid;grid-template-columns:1fr 1.15fr 1.18fr;gap:55px}.footer-brand img{width:235px;max-width:100%;height:auto}.footer-col h2{margin:0 0 16px;font-size:11px;text-transform:uppercase;letter-spacing:.15em;color:#c99b5b}.footer-col p{font-size:14px;line-height:1.55;margin:0 0 9px}.footer-col a{text-decoration:none}.footer-col a:hover{text-decoration:underline;color:#fff}.footer-contact{font-size:22px!important;color:#fff;font-weight:700;letter-spacing:-.025em}.footer-meta{max-width:var(--max);margin:auto;border-top:1px solid #ffffff2b;padding:17px 40px 22px;display:flex;gap:20px;justify-content:space-between;color:#a8bbb7;font-size:11px;letter-spacing:.03em}.footer-meta a{color:inherit;text-decoration:none}.footer-meta a:hover{color:#fff}
@media(max-width:1050px){.header-inner{padding:0 28px}.primary-nav a{padding-left:12px;padding-right:12px}.primary-nav a:after{left:12px!important;right:12px!important}.home-hero{grid-template-columns:42% 58%;min-height:560px}.hero-copy{padding-left:30px;padding-right:25px}.hero-count{left:30px}.home-intro{grid-template-columns:130px 1fr;gap:20px}.home-intro .text-link{grid-column:2}.page-banner-inner{grid-template-columns:160px 1fr}}
@media(max-width:760px){.site-header{height:72px}.header-inner{padding:0 20px}.brand{width:184px}.menu-button{display:grid;place-items:center;margin-left:auto;border:1px solid var(--line);background:#fff;width:39px;height:39px;cursor:pointer}.menu-button svg{width:21px;height:21px}.header-contact{display:none}.primary-nav{position:absolute;top:72px;left:0;right:0;height:auto;margin:0;background:#fff;border-bottom:1px solid var(--line);padding:10px 20px 16px;display:flex;flex-direction:column;gap:0}.js .primary-nav:not(.is-open){display:none}.primary-nav a{height:48px;padding:0 8px}.primary-nav a:after{display:none}.home-hero{display:flex;flex-direction:column;height:auto;max-height:none;min-height:0}.hero-copy{min-height:385px;padding:48px 25px 65px}.hero-copy .eyebrow{margin-bottom:17px}.hero-copy h1{font-size:clamp(40px,10vw,57px)}.hero-summary{font-size:16px;margin:20px 0 25px}.hero-count{bottom:24px;left:25px}.hero-stage{height:430px}.hero-slide img{object-position:center}.hero-slide figcaption{left:21px;bottom:25px;font-size:10px;max-width:50%}.hero-controls{right:20px;bottom:18px}.home-intro{display:block;padding:29px 25px 34px}.home-intro p{font-size:17px;margin:12px 0 22px}.page-shell{padding:0 25px}.page-banner-inner{display:block;padding:39px 25px 38px}.page-banner h1{font-size:45px;margin-top:16px}.page-banner p{font-size:16px}.service-row{grid-template-columns:38px 1fr;gap:13px;padding:27px 0}.service-row h2{font-size:25px}.service-row>div:last-child{grid-column:2}.service-row p{font-size:15px}.leadership-inner{display:block;padding:32px 25px}.leadership-inner>*{margin-bottom:15px!important}.work-grid{grid-template-columns:1fr}.work-item{padding:20px 0}.work-item h2{font-size:21px}.privacy-content{display:block;padding:25px 25px 55px}.privacy-aside{border-left:0;padding:20px 0 0}.footer-inner{grid-template-columns:1fr 1fr;gap:27px;padding:34px 25px 20px}.footer-col:last-child{grid-column:1/-1}.footer-meta{padding:17px 25px 25px;display:block;line-height:1.6}.footer-meta span{display:block}}
@media(max-width:470px){.hero-stage{height:310px}.hero-controls button{width:32px;height:32px}.footer-inner{display:block}.footer-col{margin-bottom:25px}.footer-col:last-child{margin:0}.hero-copy{min-height:370px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Landing image stage: editorial composition, with content integrated into the image. */
.home-hero{display:block;position:relative;height:calc(100svh - 86px);min-height:620px;max-height:760px;overflow:hidden;background:var(--deep)}
.hero-stage{position:absolute;inset:0;z-index:1;overflow:hidden}
.hero-stage:after{content:"";position:absolute;z-index:3;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(6,24,27,.89) 0%,rgba(6,24,27,.7) 28%,rgba(6,24,27,.25) 63%,rgba(6,24,27,.08) 100%),linear-gradient(0deg,rgba(6,24,27,.52) 0%,transparent 48%)}
.hero-slide{opacity:0;z-index:0}.hero-slide.is-previous{opacity:1;z-index:1}.hero-slide.is-active{opacity:1;z-index:2}.hero-slide:after,.hero-slide figcaption{display:none}
.hero-slide:nth-child(1) img,.hero-slide:nth-child(2) img{transform:scaleX(-1)}
.hero-copy{position:absolute;z-index:4;top:0;bottom:0;left:max(40px,calc((100vw - var(--max))/2 + 40px));width:min(750px,62vw);padding:0 0 135px;justify-content:flex-end;background:none}
.hero-copy h1{font-size:clamp(54px,4.8vw,72px);line-height:1.02;letter-spacing:-.05em;max-width:720px;text-wrap:balance}.hero-copy h1 span{color:#fff}
.hero-summary{font-size:18px;line-height:1.46;color:#f0f4f2;margin:24px 0 32px;max-width:510px}.hero-count{display:none}
.arrow-link{border-bottom:2px solid var(--ochre);padding-bottom:14px}.hero-copy .arrow-link{margin-top:33px}.hero-controls{top:26px;right:max(40px,calc((100vw - var(--max))/2 + 40px));bottom:auto;gap:7px}.hero-controls button{width:42px;height:42px;background:#0b2427a8;color:#fff;border:1px solid #ffffff91}.hero-controls button:hover{background:#0b2427e8}.hero-controls [data-toggle] span{font-size:14px;font-weight:700;line-height:1}
.hero-progress{left:auto;right:0;bottom:0;width:min(720px,60vw);height:91px;grid-template-columns:repeat(3,1fr);background:#0b292bd9;backdrop-filter:blur(10px)}
.hero-progress button{height:100%;border:0;border-top:3px solid transparent;border-left:1px solid #ffffff40;color:#d9e1df;text-align:left;padding:14px 20px 12px;display:flex;flex-direction:column;gap:9px;transition:background .2s,color .2s}.hero-progress button:first-child{border-left:0}.hero-progress button:hover{background:#ffffff14}.hero-progress button[aria-current="true"]{border-top-color:var(--ochre);color:#fff}.hero-progress button span{font-size:10px;font-weight:700;letter-spacing:.14em;color:#d1a166}.hero-progress button strong{font-size:13px;font-weight:700;letter-spacing:.015em}
.home-intro{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:35px;padding:30px 40px 34px}.home-intro p{font-size:18px;max-width:980px}.home-intro .text-link{grid-column:auto}
.page-banner-inner{display:block;padding:44px 40px 38px}.page-banner h1{font-size:clamp(43px,4.7vw,68px)}
@media(max-width:760px){.home-hero{display:block;height:calc(100svh - 72px);min-height:610px;max-height:760px}.hero-stage{height:auto;inset:0}.hero-stage:after{background:linear-gradient(0deg,rgba(5,24,26,.9) 0%,rgba(5,24,26,.64) 41%,rgba(5,24,26,.11) 82%),linear-gradient(90deg,rgba(5,24,26,.1),transparent 60%)}.hero-slide img{object-position:52% center}.hero-copy{top:0;bottom:0;left:25px;right:25px;width:auto;padding:0 0 100px;justify-content:flex-end;min-height:0}.hero-copy h1{font-size:clamp(41px,10.6vw,55px);max-width:500px}.hero-summary{font-size:16px;line-height:1.44;max-width:410px;margin:19px 0 23px}.hero-controls{top:18px;right:18px;bottom:auto}.hero-controls button{width:36px;height:36px}.hero-progress{width:100%;height:94px;left:0;right:0}.hero-progress button{padding:12px 10px 8px;gap:7px}.hero-progress button strong{font-size:11px;line-height:1.2}.home-intro{display:block;padding:27px 25px 32px}.home-intro p{font-size:16.5px;line-height:1.45;margin:0 0 20px}.page-banner-inner{padding:37px 25px 30px}.page-banner h1{margin:0;font-size:44px}}
@media(max-width:470px){.home-hero{min-height:610px;max-height:720px}.hero-copy{padding-bottom:100px}.hero-controls [data-prev],.hero-controls [data-next]{display:none}.hero-progress{height:91px}.hero-progress button strong{font-size:10.5px}}
.board-role{display:block;margin-top:5px}
