*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:#172e3e;background:#fff;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #2f9ed0;outline-offset:5px}header{min-height:104px;padding:10px 5%;display:flex;align-items:center;justify-content:space-between;background:#fff;gap:28px;border-bottom:1px solid #dce3e7}.brand{display:flex;align-items:center;gap:14px}.brand img{width:76px;height:76px;object-fit:contain}.brand>span{font-size:23px;font-weight:700;letter-spacing:.17em;line-height:1.2}nav{display:flex;gap:30px;align-items:center;font-size:14px}nav a:hover{color:#2677a2}.nav-cta{border:1px solid #b9c6ce;padding:12px 19px}.nav-cta span{margin-left:15px}.menu{display:none}.hero{background:#142c3d;color:white;display:grid;grid-template-columns:1.05fr 1fr;position:relative;padding:64px 5% 0;gap:35px}.hero-copy{padding:15px 0 45px;position:relative;z-index:1}.eyebrow{font-size:12px;letter-spacing:.18em;font-weight:700;margin:0 0 25px}.hero .eyebrow{color:#afc3cf}h1{font-weight:500;font-size:clamp(44px,5.1vw,78px);letter-spacing:-.055em;line-height:1.04;margin:0 0 27px}h1 em{font-weight:500;font-style:normal;color:#a9cee3}.intro{max-width:480px;font-size:18px;color:#d4dfe6;line-height:1.7;margin-bottom:32px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:30px;padding:16px 24px;border:0;cursor:pointer;font-weight:600;font-size:14px;transition:background .2s}.light{background:#fff;color:#172e3e}.light:hover{background:#d8e9f2}.text-link{display:block;font-size:14px;margin-top:24px;max-width:max-content;border-bottom:1px solid #8197a6;padding-bottom:5px}.text-link span{padding-left:20px}.hero-image{margin:0;position:relative;min-width:0;align-self:stretch;overflow:hidden}.hero-image img{width:100%;height:100%;min-height:450px;object-fit:cover}.hero-image figcaption{position:absolute;bottom:18px;left:20px;font-size:10px;letter-spacing:.12em;color:white;background:#142c3dbd;padding:8px 12px}.hero-bottom{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid #456072;padding:20px 0;font-size:13px;color:#c5d4dd}.section{padding:92px 5%;scroll-margin-top:15px}.section-heading{display:grid;grid-template-columns:1fr 1.35fr;gap:0 60px;margin-bottom:48px}.section-heading .eyebrow{grid-column:1/-1}.section-heading>p:last-child{max-width:460px;margin:0;align-self:end;color:#546773}.section h2{font-size:clamp(34px,3.6vw,52px);font-weight:500;letter-spacing:-.045em;line-height:1.12;margin:0}.services{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #d7e0e6;border-left:1px solid #d7e0e6}.services article{padding:32px;border-right:1px solid #d7e0e6;border-bottom:1px solid #d7e0e6}.number{font-size:12px;color:#6a8394}.services h3{font-size:25px;line-height:1.2;font-weight:500;letter-spacing:-.025em;margin:24px 0 16px}.services p{color:#546773;font-size:15px}.services ul{list-style:none;margin:24px 0 0;padding:0;font-size:14px}.services li{padding:6px 0;border-bottom:1px solid #edf0f2}.services .service-cta{background:#e9f0f5}.service-cta h3{font-size:42px}.service-cta .eyebrow{font-size:11px}.approach{background:#f1f4f6}.paths{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.paths article{border-top:2px solid #244e69;padding-top:24px}.paths span{font-size:11px;letter-spacing:.09em}.paths h3{font-size:23px;font-weight:500;line-height:1.3;margin:20px 0 16px}.paths p{color:#546773;font-size:15px}.about{display:grid;grid-template-columns:1fr 1.35fr;gap:60px}.about-copy>p:first-child{margin-top:0}.large{font-size:23px;line-height:1.5;letter-spacing:-.015em}.about-copy>p:not(.large){color:#546773}.values{display:grid;grid-template-columns:1fr 1fr;gap:25px;border-top:1px solid #d7e0e6;margin-top:32px;padding-top:16px}.values h3{font-size:15px}.values p{font-size:14px;color:#546773}.contact{background:#142c3d;color:white;display:grid;grid-template-columns:1fr 1.1fr;gap:80px}.contact h2{font-size:clamp(42px,4.5vw,66px)}.contact>div>p:not(.eyebrow){max-width:380px;color:#c3d2dc}.contact .contact-detail{font-size:14px;margin-top:34px}form{display:grid;gap:18px}label{display:grid;gap:7px;font-size:13px}input,select,textarea{width:100%;min-width:0;background:#203c4e;color:white;border:1px solid #607585;border-radius:0;padding:11px 12px;font-size:16px}textarea{resize:vertical}textarea::placeholder{color:#b1c3cf}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}form .button{justify-self:start}.form-note,#form-status{font-size:12px;color:#c3d2dc;margin:0}footer{padding:25px 5%;display:flex;justify-content:space-between;gap:20px;font-size:12px}.skip{position:fixed;top:-100px;left:15px;background:white;color:#142c3d;padding:10px;z-index:5}.skip:focus{top:10px}@media(min-width:1600px){header,.section,.hero,footer{padding-left:max(5%,calc((100vw - 1440px)/2));padding-right:max(5%,calc((100vw - 1440px)/2))}}@media(max-width:950px){nav{gap:15px}.brand>span{font-size:18px}.hero{grid-template-columns:1fr 1fr;padding-top:40px;gap:20px}.hero-image img{min-height:440px}.services article{padding:24px}.services h3{font-size:22px}.contact{gap:40px}.section-heading,.about{gap:30px}.paths{gap:24px}}@media(max-width:700px){header{flex-wrap:wrap;min-height:88px;gap:0}.brand img{width:60px;height:60px}.menu{display:block;background:white;border:1px solid #b9c6ce;padding:8px 15px;color:#142c3d}nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0;padding:15px 0}nav.open{display:flex}nav a{padding:12px}.hero{grid-template-columns:1fr;padding-top:38px;gap:0}.hero-copy{padding-bottom:35px}h1{font-size:55px}.hero-image{height:300px}.hero-image img{min-height:0;height:300px}.hero-bottom{margin-top:25px;font-size:12px;gap:20px}.hero-bottom span:last-child{display:none}.section{padding-top:60px;padding-bottom:60px}.section-heading,.about,.contact{grid-template-columns:1fr;gap:28px}.section-heading .eyebrow{margin-bottom:0}.services{grid-template-columns:1fr}.services article{padding:28px}.services h3{font-size:27px}.paths{grid-template-columns:1fr;gap:25px}.paths h3{margin:13px 0}.values{gap:20px}.contact{gap:35px}.contact .contact-detail{margin-top:22px}.form-row{grid-template-columns:1fr}footer{flex-direction:column;gap:8px}.hero-image figcaption{font-size:9px;left:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Capability imagery: preserve the detailed examples while giving each service a visual anchor. */
.services .service-card{padding:0;overflow:hidden;min-width:0;background:#fff}
.service-image{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;background:#142c3d}
.service-body{padding:27px 30px 32px}
.service-body h3{margin-top:15px}
.service-body ul{margin-top:20px}
.services .service-cta{display:flex;flex-direction:column;justify-content:center;padding:38px}
.services .service-cta h3{font-size:clamp(36px,3.5vw,52px)}
.concept{background:#142c3d;color:#fff;padding-top:65px;padding-bottom:55px}
.concept-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:35px}
.concept-heading>p{color:#c5d4dd;margin:0;font-size:18px}
.concept .eyebrow{color:#afc3cf}
.concept-figure{margin:0}
.concept-figure>img{display:block;width:100%;height:auto;background:#142c3d}
.concept-figure figcaption{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;border-top:1px solid #456072;padding-top:20px;margin-top:18px;font-size:12px;letter-spacing:.12em;text-align:center}
.about{padding-top:70px;padding-bottom:70px}
.about .values{margin-top:24px}
@media(min-width:701px) and (max-width:1000px){.services{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.service-body{padding:25px 28px 30px}.services .service-cta{padding:35px 28px}.concept-heading{display:block}.concept-heading>p{margin-top:24px}.concept-figure figcaption{font-size:10px;letter-spacing:.04em;gap:6px}.concept{padding-top:50px;padding-bottom:40px}.about{padding-top:55px;padding-bottom:55px}}

.concept-figure>img{aspect-ratio:2.6/1;object-fit:cover;object-position:center 47%;}

/* Larger logo and a single-line company name. */
header{min-height:132px;gap:24px}
.brand{gap:18px;flex-shrink:0}
.brand img{width:112px;height:112px;flex-shrink:0}
.brand>.brand-name{font-size:25px;font-weight:700;letter-spacing:.055em;line-height:1.2;white-space:nowrap}
header nav{flex-shrink:0}
@media(max-width:1150px){
 header{flex-wrap:wrap;column-gap:20px;row-gap:0}
 header .menu{display:block;background:white;border:1px solid #b9c6ce;padding:8px 15px;color:#142c3d}
 header nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0;padding:15px 0}
 header nav.open{display:flex}
 header nav a{padding:12px}
}
@media(max-width:600px){
 header{min-height:0;padding-top:10px;padding-bottom:14px;row-gap:8px}
 .brand{gap:10px;flex-basis:100%}
 .brand img{width:84px;height:84px}
 .brand>.brand-name{font-size:clamp(.875rem,4.4vw,1.125rem);letter-spacing:.045em}
 header .menu{margin-left:auto}
 header nav{padding-bottom:0}
}
