@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#032540;--blue:#008eca;--ink:#193648;--muted:#5a6e7a;--pale:#f2f7fa;--line:#dce6eb}*{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.7}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea{touch-action:manipulation}button{cursor:pointer}img{display:block;max-width:100%;height:auto}.wrap{max-width:1280px;margin:auto;padding:0 48px}header{background:white;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.header-inner{display:flex;align-items:center;gap:28px;min-height:105px;justify-content:space-between}.brand{width:205px;flex-shrink:0}nav{display:flex;gap:22px;align-items:center}nav>a{font-size:12px;white-space:nowrap;font-weight:600;padding:10px 0;position:relative}nav>a[aria-current=page]:after{content:'';position:absolute;bottom:4px;height:2px;background:var(--blue);left:0;right:0}.nav-contact{border:1px solid var(--line);padding:10px 14px}nav a:hover{color:var(--blue)}.menu-toggle{display:none}.hero{background:linear-gradient(90deg,rgba(3,24,40,.88),rgba(3,24,40,.23)),url('assets/shutterstock_1122127649-scaled.jpg') center 61%/cover;color:#fff;min-height:680px;position:relative}.hero-inner{padding-top:100px;padding-bottom:150px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.17em;text-transform:uppercase;color:var(--blue);margin:0 0 24px}.hero .eyebrow{color:#85d4f4}.hero h1{font-size:clamp(40px,4.3vw,66px);letter-spacing:-.045em;line-height:1.13;max-width:840px;font-weight:500;margin:0 0 30px}.hero h1 em{font-style:normal;color:#80d2ee}.hero p:not(.eyebrow){font-size:17px;color:#d5e6ed}.hero-actions{display:flex;gap:14px;margin-top:35px}.button{display:inline-flex;gap:28px;justify-content:space-between;align-items:center;background:var(--blue);color:white;border:1px solid var(--blue);font-size:13px;font-weight:600;padding:15px 24px;border-radius:2px}.button:hover{background:#0077aa;border-color:#0077aa}.button span,.text-link span{font-size:19px}.outline{background:transparent;border-color:#89a6b7}.outline:hover{background:#ffffff18;border-color:white}.white{background:white;color:var(--navy);border-color:white}.white:hover{background:#deeff5;border-color:#deeff5}.hero-caption{position:absolute;bottom:27px;right:max(48px,calc((100vw - 1184px)/2));font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#b7cad4}.section{padding:90px 0}h1,h2,h3{font-family:Manrope,Arial,sans-serif}h2{font-weight:500;font-size:clamp(30px,3vw,44px);line-height:1.22;letter-spacing:-.035em;margin:0 0 24px}h2 em{font-style:normal;color:var(--blue)}h3{line-height:1.3;letter-spacing:-.02em}p{margin:0 0 22px;color:var(--muted)}.split{display:grid;grid-template-columns:1fr 1fr;gap:90px}.large{font-size:21px;line-height:1.65;color:var(--ink)}.text-link{border:0;background:none;padding:0 0 9px;display:inline-flex;align-items:center;gap:35px;color:var(--blue);font-size:13px;font-weight:600;border-bottom:1px solid #add5e7}.text-link:hover{color:var(--navy)}.pale{background:var(--pale)}.feature-split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.feature-image img{width:100%;border-radius:3px}.feature-image{position:relative}.feature-image:after{content:'';position:absolute;width:48px;height:4px;background:var(--blue);left:0;bottom:-16px}.principles{display:grid;gap:18px;margin:30px 0}.principles>div{display:grid;grid-template-columns:30px 110px 1fr;align-items:baseline;border-top:1px solid var(--line);padding-top:17px;gap:10px}.principles span{color:var(--blue);font-size:11px}.principles h3{margin:0;font-size:16px}.principles p{font-size:13px;margin:0}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:40px;gap:20px}.section-heading h2{margin:0}.portfolio-feature{display:grid;grid-template-columns:1.15fr 1fr;background:var(--pale);border:1px solid var(--line)}.portfolio-image{overflow:hidden}.portfolio-image img{height:100%;width:100%;object-fit:cover;object-position:center 72%}.portfolio-copy{padding:45px}.portfolio-copy h3{font-size:32px;margin:0 0 22px;font-weight:500}.portfolio-copy p{font-size:15px}.portfolio-copy .eyebrow{font-size:9px;margin-bottom:22px}.cta{padding:68px 0;background:var(--navy);color:#fff}.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:50px}.cta h2{font-size:40px;margin-bottom:18px}.cta p{color:#c2d4e0}.cta .eyebrow{color:#78ccea}.cta .button{white-space:nowrap}footer{background:#061e2e;color:#c6d5de;padding:55px 0 20px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:50px}.footer-brand img{max-width:205px;max-height:90px;object-fit:contain}.footer-brand p{margin-top:20px}.footer-grid h3{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:white;margin:10px 0 22px}.footer-grid a,.footer-grid span,.footer-grid p{display:block;font-size:12px;color:#adc1ce;margin-bottom:9px}.footer-grid a:hover{color:white}.footer-bottom{border-top:1px solid #294252;margin-top:35px;padding-top:22px;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#829cae}.page-intro{padding:70px 0 75px;background:var(--pale);border-bottom:1px solid var(--line)}.page-intro h1{font-size:clamp(40px,4vw,58px);line-height:1.16;letter-spacing:-.045em;font-weight:500;margin:0 0 25px}.page-intro .lead{font-size:17px;max-width:670px;margin-bottom:0}.quote-section{padding:65px 0;background:var(--pale)}blockquote{font-family:Manrope,Arial,sans-serif;max-width:920px;font-size:32px;line-height:1.4;margin:0 0 24px;letter-spacing:-.02em}.quote-section p:last-child{font-size:12px}.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:38px 24px}.person{border:1px solid var(--line);background:white;overflow:hidden}.person>img{aspect-ratio:1/1;width:100%;object-fit:cover;object-position:center 25%}.person-info{padding:22px}.person h2{font-size:19px;letter-spacing:-.025em;margin:0 0 10px}.person p{font-size:12px;line-height:1.6;min-height:58px;margin-bottom:20px}.person .text-link{font-size:11px;gap:15px}.partner-row{display:grid;grid-template-columns:45px 1.1fr 1fr;gap:30px;border-top:1px solid var(--line);padding:38px 0}.partner-row:last-child{border-bottom:1px solid var(--line)}.partner-number{font-size:12px;color:var(--blue);padding-top:7px}.partner-row h2{font-size:28px;margin:0}.partner-row .eyebrow{font-size:9px;margin:0 0 15px}.partner-row p:last-child{font-size:15px;margin:0}.news-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.news-card{border:1px solid var(--line)}.news-card>img{height:290px;width:100%;object-fit:cover;object-position:center 24%;background:var(--pale)}.news-card:nth-child(2)>img{object-fit:contain;padding:30px}.news-card>div{padding:32px}.news-card h2{font-size:26px}.news-card p{font-size:14px}.contact-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:80px}.contact-detail{margin:35px 0}.contact-detail span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:8px}.contact-detail strong{font-size:15px;font-weight:500}.contact-grid form{padding:36px;border:1px solid var(--line);background:var(--pale)}form h2{font-size:25px;margin-bottom:12px}.form-note{font-size:12px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:block;font-size:12px;font-weight:600;margin-bottom:19px}input,textarea{width:100%;background:white;border:1px solid #cddde6;border-radius:2px;color:var(--ink);padding:12px;font-size:14px;display:block;margin-top:6px}textarea{resize:vertical}input:focus,textarea:focus{outline:2px solid #8ac5df;outline-offset:1px}#form-result{padding:16px;background:#e0f0e8;border:1px solid #a8cfbd;font-size:13px;margin:20px 0 0;color:#24523c}dialog{border:0;border-radius:4px;width:min(680px,calc(100vw - 32px));padding:44px;max-height:85vh;color:var(--ink);box-shadow:0 25px 100px #00172960}dialog::backdrop{background:#001729aa;backdrop-filter:blur(4px)}.dialog-close{position:absolute;right:15px;top:10px;font-size:30px;border:0;background:transparent;color:var(--ink)}#bio-content img{width:110px;height:110px;object-fit:cover;margin-bottom:25px;border-radius:3px}#bio-content h2{font-size:30px;margin-bottom:10px}#bio-content p{font-size:14px}#bio-content .bio-role{font-size:12px;color:var(--blue)}.skip{position:absolute;left:10px;top:-100px;background:white;padding:12px;z-index:100}.skip:focus{top:10px}:focus-visible{outline:3px solid #62b8dd;outline-offset:4px}
@media(min-width:1450px){.hero{min-height:720px}}@media(max-width:1150px){.wrap{padding-left:32px;padding-right:32px}nav{gap:14px}nav>a{font-size:11px}.brand{width:165px}.header-inner{gap:18px;min-height:90px}.split{gap:50px}.team-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:950px){.menu-toggle{display:flex;flex-direction:column;gap:5px;background:none;border:1px solid var(--line);padding:12px}.menu-toggle span{height:2px;width:21px;background:var(--navy)}nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;padding:20px 32px;box-shadow:0 16px 30px #022b4614;flex-direction:column;align-items:stretch;gap:0}nav.open{display:flex}nav>a{font-size:14px;padding:12px 0;border-bottom:1px solid var(--line)}nav>a[aria-current=page]:after{display:none}nav>a[aria-current=page]{color:var(--blue)}.nav-contact{border:0}.hero{min-height:620px}.hero-inner{padding-top:85px;padding-bottom:130px}.feature-split{gap:40px}.principles>div{grid-template-columns:25px 1fr}.principles p{grid-column:2}.team-grid{grid-template-columns:repeat(2,1fr)}.contact-grid{gap:40px}.footer-grid{gap:30px;grid-template-columns:1fr 1fr}.partner-row{grid-template-columns:28px 1fr 1fr;gap:20px}}
@media(max-width:650px){body{font-size:15px}.wrap{padding-left:22px;padding-right:22px}.header-inner{min-height:80px}.brand{width:155px}.hero{min-height:580px;background-position:60% center}.hero-inner{padding-top:66px;padding-bottom:115px}.hero h1{font-size:39px;line-height:1.18}.hero p:not(.eyebrow){font-size:15px}.hero .eyebrow{font-size:9px;letter-spacing:.12em}.hero-actions{gap:10px;flex-wrap:wrap}.button{padding:13px 18px;font-size:12px;gap:18px}.hero-caption{right:22px;left:22px;font-size:8px}.section{padding:55px 0}.split,.feature-split,.portfolio-feature,.contact-grid,.news-grid{grid-template-columns:1fr;gap:30px}.large{font-size:18px}h2{font-size:32px}.feature-image img{max-height:380px;object-fit:cover}.principles>div{grid-template-columns:25px 100px 1fr}.principles p{grid-column:auto;font-size:12px}.section-heading{align-items:start;flex-direction:column;gap:22px}.portfolio-feature{gap:0}.portfolio-image{max-height:300px}.portfolio-copy{padding:28px}.portfolio-copy h3{font-size:27px}.cta{padding:48px 0}.cta-inner{align-items:start;flex-direction:column;gap:12px}.cta h2{font-size:32px}.footer-grid{gap:28px 20px}.footer-brand{grid-column:1/-1}.footer-grid>div:last-child{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:10px}.page-intro{padding:45px 0}.page-intro h1{font-size:38px}.page-intro .lead{font-size:15px}.quote-section{padding:40px 0}blockquote{font-size:25px}.team-grid{gap:18px 12px}.person-info{padding:16px 13px}.person h2{font-size:17px}.person p{font-size:10px;min-height:55px}.person .text-link{font-size:10px;gap:9px}.partner-row{grid-template-columns:24px 1fr;gap:15px;padding:28px 0}.partner-row p:last-child{grid-column:2;font-size:14px}.partner-row h2{font-size:26px}.news-card>img{height:240px}.news-card>div{padding:25px}.news-card h2{font-size:24px}.contact-grid form{padding:24px}.form-grid{grid-template-columns:1fr;gap:0}dialog{padding:32px 24px}}
@media(prefers-reduced-motion:no-preference){a,button{transition:background .18s,color .18s}.hero-inner{animation:entrance .55s ease-out}@keyframes entrance{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}}
.nav-partners{position:relative;font-size:12px;font-weight:600;white-space:nowrap}.nav-partners summary{cursor:pointer;list-style:none;padding:10px 0;display:flex;gap:8px;align-items:center}.nav-partners summary::-webkit-details-marker{display:none}.nav-partners.active summary,.nav-partners summary:hover{color:var(--blue)}.partners-menu{position:absolute;top:100%;left:-18px;min-width:205px;background:#fff;border:1px solid var(--line);padding:10px 0;box-shadow:0 12px 25px #022b4614}.partners-menu a{display:block;padding:10px 18px;font-size:12px}.partners-menu a:hover{background:var(--pale)}.prose>h2:not(:first-child){margin-top:45px}
@media(max-width:1150px){.nav-partners{font-size:11px}}@media(max-width:950px){.nav-partners{font-size:14px}.nav-partners summary{padding:12px 0;border-bottom:1px solid var(--line)}.partners-menu{position:static;box-shadow:none;border:0;background:var(--pale)}}@media(max-width:650px){}

/* Portfolio logo and two-member leadership layout. */
.portfolio-image:has(.portfolio-logo){display:flex;align-items:center;justify-content:center;background:#fff;padding:40px;min-height:300px}
.portfolio-image .portfolio-logo{width:100%;height:auto;object-fit:contain;object-position:center}
.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:820px;margin-inline:auto}
.formation-news>img{object-fit:contain;padding:30px}
.news-grid:has(>.news-card:only-child){grid-template-columns:minmax(0,720px);justify-content:center}
@media(max-width:650px){.portfolio-image:has(.portfolio-logo){padding:24px;min-height:220px}.team-grid{grid-template-columns:1fr;max-width:400px}}





/* Matching portrait frames keep leadership faces at a similar height and scale. */
.person>img{aspect-ratio:25/16;object-position:center top}
.person>img.portrait-spaced{padding:0 16%;object-fit:cover;object-position:center bottom;background:linear-gradient(to bottom,rgb(125,126,132) 0%, rgb(125,126,132) 0.411%, rgb(125,126,132) 1.744%, rgb(125,126,132) 3.076%, rgb(125,126,132) 4.408%, rgb(125,126,132) 5.741%, rgb(125,126,132) 7.073%, rgb(125,126,132) 8.405%, rgb(125,126,132) 9.737%, rgb(125,126,132) 11.070%, rgb(125,126,132) 12.402%, rgb(125,126,132) 13.734%, rgb(125,126,132) 15.067%, rgb(125,126,132) 16.399%, rgb(125,126,132) 17.731%, rgb(125,126,132) 19.063%, rgb(125,126,132) 20.396%, rgb(125,126,132) 21.728%, rgb(125,126,132) 23.060%, rgb(125,126,132) 24.393%, rgb(125,126,132) 25.725%, rgb(125,126,132) 27.057%, rgb(125,126,132) 28.389%, rgb(125,126,132) 29.722%, rgb(125,126,132) 31.054%, rgb(125,126,132) 32.386%, rgb(125,126,132) 33.719%, rgb(124,125,132) 35.051%, rgb(126,127,132) 36.383%, rgb(125,126,132) 37.716%, rgb(126,127,133) 39.048%, rgb(126,127,132) 40.380%, rgb(127,128,133) 41.712%, rgb(128,129,134) 43.045%, rgb(128,130,135) 44.377%, rgb(129,130,136) 45.709%, rgb(130,131,137) 47.042%, rgb(132,133,138) 48.374%, rgb(133,134,140) 49.706%, rgb(135,136,141) 51.038%, rgb(136,138,143) 52.371%, rgb(139,140,145) 53.703%, rgb(141,142,147) 55.035%, rgb(143,144,149) 56.368%, rgb(145,146,151) 57.700%, rgb(148,149,154) 59.032%, rgb(151,152,157) 60.364%, rgb(154,155,160) 61.697%, rgb(158,159,163) 63.029%, rgb(161,162,166) 64.361%, rgb(164,165,169) 65.694%, rgb(169,170,173) 67.026%, rgb(173,174,177) 68.358%, rgb(178,178,182) 69.690%, rgb(182,182,186) 71.023%, rgb(186,187,190) 72.355%, rgb(192,193,195) 73.687%, rgb(197,197,200) 75.020%, rgb(203,203,206) 76.352%, rgb(209,209,211) 77.684%, rgb(214,214,216) 79.016%, rgb(220,221,222) 80.349%, rgb(227,227,228) 81.681%, rgb(234,234,235) 83.013%, rgb(241,241,241) 84.346%, rgb(248,248,248) 85.678%, rgb(252,252,252) 87.010%, rgb(245,245,246) 88.342%, rgb(238,238,239) 89.675%, rgb(231,231,232) 91.007%, rgb(225,225,227) 92.339%, rgb(218,219,220) 93.672%, rgb(213,213,215) 95.004%, rgb(207,207,210) 96.336%, rgb(201,201,204) 97.668%, rgb(196,196,199) 99.001%, rgb(192,192,195) 100.000%)}
