:root{--ink:#10293b;--blue:#1b5364;--accent:#aa422b;--coral:#f5a58e;--paper:#f5f5f0;--white:#fff;--pale:#e9eeea;--muted:#455d65;--line:#c6d0cb;--serif:Georgia,'Times New Roman',serif;--sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:6.5rem}body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.6 var(--sans)}a{color:var(--blue);text-underline-offset:.22em;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}button{font:inherit;cursor:pointer}img{display:block;max-width:100%;height:auto}figure{margin:0}h1,h2,h3,p{overflow-wrap:break-word}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.12}h1{font-size:clamp(2.5rem,5.2vw,4.9rem);letter-spacing:-.045em}h2{font-size:clamp(2rem,3.6vw,3.3rem);letter-spacing:-.035em}h3{font-size:1.6rem;letter-spacing:-.015em}p{margin:0 0 1.2rem}h2,h3{margin:0 0 1rem}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #a43c24;outline-offset:5px}.hero :focus-visible,.footer :focus-visible,.approach :focus-visible{outline-color:#ffbfaa}.wrap{width:min(1200px,calc(100% - 64px));margin-inline:auto}.skip-link{position:fixed;top:8px;left:8px;padding:12px 18px;background:var(--white);z-index:30;transform:translateY(-160%)}.skip-link:focus{transform:none}.topline{background:var(--ink);color:#d7e4df;font-size:.875rem}.topline .wrap{display:flex;justify-content:space-between;padding:8px 0;gap:20px}.header{position:sticky;top:0;z-index:10;background:var(--paper);border-bottom:1px solid var(--line)}.nav{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{flex-shrink:0;display:inline-flex;align-items:center;min-height:44px}.brand img{width:195px}.navlinks{display:flex;align-items:center;gap:25px;font-size:.9375rem;font-weight:600}.navlinks a{color:var(--ink);text-decoration:none;display:inline-flex;min-height:44px;align-items:center}.navlinks a:hover{text-decoration:underline}.navlinks .nav-contact{background:var(--ink);color:white;padding:8px 16px}.language{display:flex;align-items:center;gap:10px;border-left:1px solid var(--line);padding-left:20px}.language a,.language span{min-width:28px;text-align:center}.language [aria-current]{text-decoration:underline;text-underline-offset:5px}.menu-toggle{display:none;background:none;border:1px solid var(--line);font-size:1.55rem;width:46px;height:46px;color:var(--ink)}
.hero{background:var(--ink);color:white}.hero-grid{display:grid;grid-template-columns:1.12fr .88fr;align-items:center;gap:58px;padding-block:65px}.eyebrow,.kicker{font-size:.875rem;letter-spacing:.075em;text-transform:uppercase;font-weight:650}.eyebrow{color:var(--coral)}.kicker{color:var(--blue);margin-bottom:14px}.hero h1{font-size:clamp(3.15rem,6vw,5.8rem);margin:22px 0 25px;line-height:1.03}.hero h1 em{font-weight:400;color:#b5d3c9}.hero .lead{font-size:1.125rem;color:#d6e2dd;max-width:580px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.button{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:16px;background:var(--ink);color:white;padding:12px 20px;border:1px solid var(--ink);text-decoration:none;font-weight:650;font-size:.9375rem}.button:hover{background:var(--blue);text-decoration:underline}.hero .button{background:var(--coral);border-color:var(--coral);color:var(--ink)}.hero .button.secondary{background:transparent;border-color:#92ada9;color:white}.hero-visual{background:#081c2a;padding:14px}.hero-visual img{width:100%;aspect-ratio:1.8;object-fit:contain}.hero-visual figcaption{font-size:.875rem;line-height:1.55;color:#d6e2dd;padding-top:14px}.hero-visual a{color:#fff}.hero-note{border-top:1px solid #617b82;color:#d6e2dd;font-size:.9375rem;padding-top:17px;margin:25px 0 0}.hero-note strong{display:block;color:white;font-weight:500}.section{padding-block:70px}.tint{background:var(--pale)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:38px;margin-bottom:32px}.section-head h2{margin:0}.section-head p{max-width:370px;margin:0;color:var(--muted)}.grid-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-card{padding:27px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;align-items:start}.service-card .number{font-size:.875rem;color:var(--muted)}.service-card h3{margin:23px 0 15px}.service-card p{color:var(--muted)}.text-link{font-size:.9375rem;font-weight:650;display:inline-flex;align-items:center;gap:12px;min-height:44px}.service-card .text-link{margin-top:auto}.project-list{border-top:1px solid var(--line)}.project{display:grid;grid-template-columns:52px minmax(0,1fr) minmax(0,1.1fr) 150px;gap:24px;align-items:center;border-bottom:1px solid var(--line);padding:25px 0}.project-number{font-size:.875rem;color:var(--muted);align-self:start;padding-top:4px}.project h3{margin-bottom:7px}.project h3 a{color:var(--ink);text-decoration:none}.project h3 a:hover{text-decoration:underline}.project p{color:var(--muted);margin:0}.status{font-size:.875rem;color:var(--muted)}.project-link{display:inline-flex;min-height:48px;align-items:center;justify-content:space-between;gap:10px;color:var(--accent);font-size:.9375rem;font-weight:650}.project-link span{font-size:1.35rem}.relation-note{font-size:.9375rem;color:var(--muted);margin:24px 0 0}.story-summary{display:grid;grid-template-columns:1fr 1.2fr;gap:70px}.story-summary p{color:var(--muted)}.values-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 40px;margin-top:32px}.value{border-top:1px solid var(--line);padding-top:18px}.value h3{font-size:1.4rem}.value p{color:var(--muted);margin:0}.approach{background:var(--blue);color:white}.approach .kicker{color:#ffd0bf}.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin-top:30px}.step{border-top:1px solid #92b3b8;padding-top:18px}.step span{color:#ffd0bf;font-size:.875rem}.step h3{font-size:1.5rem;margin:12px 0}.step p{color:#e0eae6;margin:0}.contact-band{display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:center}.contact-band h2{max-width:580px}.contact-band p{color:var(--muted)}.email-link{font-size:clamp(1rem,2vw,1.4rem);font-weight:600;overflow-wrap:anywhere;display:inline-block;min-height:44px}.copy-button,.print-button{background:none;border:1px solid var(--blue);padding:10px 16px;color:var(--blue);min-height:44px}.copy-status{font-size:.875rem;min-height:1.6em;margin:8px 0 0;color:var(--muted)}[hidden]{display:none!important}.footer{background:var(--ink);color:#d6e2dd;padding-block:36px 24px;font-size:.9375rem}.foot-top{display:flex;justify-content:space-between;gap:45px}.footer .brand{background:#fff;padding:4px 8px}.footer .brand img{width:175px}.footer p{max-width:380px;margin:15px 0}.footer a{color:#e0ebe7}.foot-links{display:flex;gap:24px;flex-wrap:wrap;align-items:start}.foot-links a{display:inline-flex;min-height:44px;align-items:center}.foot-bottom{display:flex;justify-content:space-between;gap:25px;border-top:1px solid #617b82;margin-top:25px;padding-top:20px;font-size:.875rem}.foot-bottom p{margin:0}.footer-logo{background:#fff}.sub-hero{padding:46px 0 44px;background:var(--pale);border-bottom:1px solid var(--line)}.breadcrumbs{display:flex;gap:12px;flex-wrap:wrap;font-size:.875rem;margin-bottom:32px}.sub-hero h1{margin:15px 0 22px;max-width:960px}.sub-hero .lead{font-size:1.25rem;color:var(--muted);max-width:820px}.meta{display:flex;gap:12px 24px;flex-wrap:wrap;font-size:.875rem;color:var(--muted);margin:22px 0 0}.meta span{border-left:2px solid var(--blue);padding-left:12px}.detail-layout{display:grid;grid-template-columns:minmax(0,760px) minmax(220px,1fr);gap:75px}.prose{max-width:780px}.prose h2{font-size:2rem;margin-top:38px}.prose h2:first-child{margin-top:0}.prose h3{font-size:1.4rem;margin-top:26px}.prose p,.prose li{color:var(--muted)}.prose ul{padding-left:22px}.prose li{margin-bottom:9px}.side-panel{border-top:2px solid var(--blue);padding-top:20px;align-self:start}.side-panel h2{font-size:1.5rem}.side-panel p{color:var(--muted)}.side-panel a{display:block;margin-bottom:16px;min-height:32px}.related{display:flex;gap:22px;flex-wrap:wrap;margin-top:32px;padding-top:24px;border-top:1px solid var(--line)}.facts{margin:26px 0 32px}.facts div{display:grid;grid-template-columns:160px 1fr;gap:25px;border-bottom:1px solid var(--line);padding:14px 0}.facts dt{font-weight:650}.facts dd{margin:0;color:var(--muted)}.resource{padding:23px 0;border-top:1px solid var(--line)}.resource h3{margin-bottom:10px}.resource p{margin-bottom:8px}.label{color:var(--muted);font-size:.875rem}.person{border-top:1px solid var(--line);padding:22px 0}.person h2{font-size:1.75rem;margin:0 0 8px}.person .role{font-weight:650;color:var(--blue)}.notice{border-left:3px solid var(--blue);padding:18px 24px;background:var(--pale);margin:25px 0}.section-small{padding-block:45px}
@media(max-width:1100px){.navlinks{gap:16px}.brand img{width:175px}.hero-grid{gap:34px}.detail-layout{gap:40px}.project{grid-template-columns:35px 1fr 1fr 130px;gap:18px}}
@media(max-width:980px){.wrap{width:calc(100% - 44px)}.menu-toggle{display:block}.nav{min-height:72px}.navlinks{display:none;position:absolute;top:100%;left:0;right:0;max-height:calc(100dvh - 80px);overflow-y:auto;background:var(--paper);padding:18px 24px 24px;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line);gap:6px}.navlinks.is-open{display:flex}.language{border:0;padding:0;gap:20px}.navlinks .nav-contact{align-self:start}.hero-grid{grid-template-columns:1.1fr 1fr;gap:28px;padding-block:45px}.hero h1{font-size:3.55rem}.grid-three{grid-template-columns:1fr}.service-card{display:grid;grid-template-columns:38px 1fr;gap:0 20px;padding:24px}.service-card h3{margin:0 0 12px}.service-card p,.service-card .text-link{grid-column:2}.project{grid-template-columns:36px 1fr 150px}.project p{grid-column:2;grid-row:2}.project-link{grid-column:3;grid-row:1/3}.project-number{grid-row:1/3}.story-summary{gap:36px}.steps{grid-template-columns:1fr 1fr;gap:30px}.detail-layout{grid-template-columns:minmax(0,1fr)}.side-panel{max-width:780px}.contact-band{grid-template-columns:1fr 1fr;gap:30px}.foot-top{flex-direction:column;gap:10px}}
@media(max-width:700px){.topline .wrap span:last-child{display:none}.hero-grid{grid-template-columns:1fr;gap:30px}.hero h1{font-size:clamp(3rem,10.5vw,4.4rem)}.hero-visual{padding:12px}.hero-note{margin-top:16px}.section{padding-block:48px}.section-head{align-items:start;flex-direction:column;gap:18px}.section-head p{max-width:100%}.story-summary{grid-template-columns:1fr;gap:22px}.project{grid-template-columns:25px 1fr;gap:7px 14px;padding:21px 0}.project-number{grid-row:1}.project p{grid-column:2;grid-row:auto}.project-link{grid-column:2;grid-row:auto;justify-content:start;gap:18px;padding:6px 0;width:max-content;max-width:100%}.project h3{font-size:1.6rem}.values-grid{gap:22px}.contact-band{grid-template-columns:1fr;gap:12px}.foot-bottom{flex-direction:column;gap:12px}.foot-links{gap:10px 25px}.sub-hero{padding-block:28px 32px}.sub-hero h1{font-size:clamp(2.4rem,8vw,3.4rem)}.sub-hero .lead{font-size:1.125rem}.breadcrumbs{margin-bottom:24px}.facts div{grid-template-columns:1fr;gap:5px}.detail-layout{gap:35px}}
@media(max-width:380px){.wrap{width:calc(100% - 32px)}.hero h1{font-size:2.95rem}.service-card{padding:20px 16px;grid-template-columns:24px 1fr;gap:0 12px}.values-grid,.steps{grid-template-columns:1fr}.brand img{width:170px}.topline{font-size:.8125rem}.eyebrow{font-size:.8125rem}.actions .button{width:100%}.foot-links{flex-direction:column;gap:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media print{.header,.topline,.footer,.skip-link,.copy-button,.print-button,.side-panel,.contact-band,.actions{display:none!important}body{background:white;font-size:11pt}.wrap{width:100%}.section,.sub-hero{padding:12pt 0;background:white}.detail-layout{display:block}.prose{max-width:none}h1{font-size:28pt}h2{font-size:19pt}a{color:inherit}h1,h2,h3{break-after:avoid}.person,.resource,.value{break-inside:avoid}}

/* The supplied two-tone logo sits directly on a light footer surface. */
.footer{background:var(--pale);color:var(--ink)}.footer .brand{background:transparent;padding:0}.footer .brand img{mix-blend-mode:multiply}.footer a{color:var(--blue)}.foot-bottom{border-color:var(--line)}.footer :focus-visible{outline-color:var(--accent)}.hero-visual img{aspect-ratio:4/3}

@media(max-width:700px){.values-grid{grid-template-columns:1fr}}
@media(max-width:520px){.steps{grid-template-columns:1fr}.hero .lead{font-size:1rem}.hero-grid{padding-block:34px}.hero h1{margin:18px 0 22px}.section{padding-block:40px}.service-card{padding-block:20px}.step{padding-top:14px}.step h3{margin:8px 0}.hero-note{font-size:.875rem}}

/* Keep grid children shrinkable when the reader enlarges text. */
.hero-grid>*,.grid-three>*,.service-card>*,.project>*,.story-summary>*,.section-head>*,.contact-band>*,.detail-layout>*,.values-grid>*,.steps>*{min-width:0;max-width:100%}.button,.copy-button,.print-button{overflow-wrap:anywhere;max-width:100%}.project-link{width:auto}.hero-grid,.project,.service-card{min-width:0}.hero h1{overflow-wrap:anywhere}.menu-toggle{line-height:1;width:max(46px,2.5rem);height:max(46px,2.5rem);flex-shrink:0}
@media(max-width:700px){.hero-grid,.story-summary,.contact-band{grid-template-columns:minmax(0,1fr)}.project{grid-template-columns:25px minmax(0,1fr)}.project-link{justify-self:start}}
@media(max-width:980px){.service-card{grid-template-columns:38px minmax(0,1fr)}}
@media(max-width:380px){.service-card{grid-template-columns:24px minmax(0,1fr)}}

/* Refinements: persistent language controls and a tighter satellite frame. */
.language a,.language span{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;color:var(--ink)}
.hero-visual img{aspect-ratio:1.8;object-fit:cover;object-position:center}
.page-contact{margin-top:38px;padding:26px;background:var(--pale);border-top:2px solid var(--blue)}
.page-contact h2{margin-top:0;font-size:1.7rem}.page-contact .actions{margin-top:12px}
[id],a,button{scroll-margin-top:7rem}
.resource h3{margin-top:0}.resource .label{font-size:.875rem}
@media(max-width:980px){.nav{gap:12px}.nav>.brand{margin-right:auto}.nav>.language{order:2;gap:0}.menu-toggle{order:3}.navlinks{order:4}.nav>.brand img{width:145px}}
@media(max-width:380px){.nav{gap:8px}.nav>.brand img{width:135px}.language a,.language span{min-width:40px}.page-contact{padding:20px}}
@media print{@page{size:A4;margin:18mm}.breadcrumbs,.related,.page-contact{display:none!important}.sub-hero h1{font-size:28pt}.sub-hero .lead{font-size:12pt}.prose h2{font-size:18pt;margin-top:18pt}.prose li,.prose p{orphans:3;widows:3}.facts div{break-inside:avoid}.meta{font-size:10pt}}
.single-column{grid-template-columns:minmax(0,780px)}
@media print{body{font-size:11pt;line-height:1.4}.section,.sub-hero{padding:6pt 0}.sub-hero h1{margin:8pt 0 12pt}.sub-hero .lead{margin-bottom:8pt}.meta{margin-top:10pt}.prose p{margin-bottom:8pt}.prose h2{margin:14pt 0 8pt}.prose li{margin-bottom:5pt}.prose ul{margin:8pt 0}}
