@font-face{font-family:Inter;src:url('assets/inter-latin.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
:root{--blue:#09649e;--ink:#242831;--teal:#58959d;--orange:#c65000}
*{box-sizing:border-box}
body{margin:0;color:var(--ink);font-family:Inter,Arial,sans-serif;-webkit-font-smoothing:antialiased}
button,a{-webkit-tap-highlight-color:transparent}
button{font:inherit;cursor:pointer}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:4px}
a:focus-visible,button:focus-visible{outline:3px solid var(--orange);outline-offset:5px}
img{display:block;max-width:100%}
[hidden]{display:none!important}
h1,h2,h3,p{margin-top:0}
h2{font-size:32px;line-height:1.2;font-weight:750;letter-spacing:-1px;margin-bottom:42px}
.container{width:min(1180px,calc(100% - 80px));margin-inline:auto}
.site-header{position:sticky;top:0;z-index:20;background:#fff;min-height:95px;display:flex;align-items:center;justify-content:space-between;gap:42px;padding:22px 30px;box-shadow:0 1px 0 #00000008}
.brand{flex-shrink:0}
.brand img{width:230px;height:auto}
nav{flex:1;max-width:1050px}
nav>ul{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0;padding:0;list-style:none}
nav>ul>li{position:relative;text-align:center;font-size:13px;line-height:1.15;font-weight:500}
nav>ul>li>a,nav>ul>li>button{display:block;padding:8px 0}
nav button{border:0;background:none;color:inherit;font-weight:inherit;font-size:inherit;line-height:inherit}
.dropdown>button span{font-size:12px}
.submenu{position:absolute;top:100%;left:-15px;min-width:235px;max-width:300px;padding:10px 0;margin:0;list-style:none;background:white;box-shadow:0 8px 28px #142c3f26;border-radius:4px;text-align:left}
.submenu a{display:block;padding:12px 20px;line-height:1.4}
.submenu a:hover{background:#eef5f8;color:var(--blue)}
.menu-toggle{display:none}
.hero{position:relative;background:var(--blue);color:white}
.hero-slide{position:relative;min-height:540px;height:54.8vw;max-height:780px;overflow:hidden}
.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.hero-copy{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-height:100%;width:47%;padding:65px 0 65px 4.8vw}
.hero h1{font-size:clamp(28px,3.25vw,48px);font-weight:500;line-height:1.03;letter-spacing:-1.25px;margin:0 0 70px}
.pill{display:inline-flex;justify-content:center;align-items:center;min-width:200px;min-height:50px;padding:13px 30px;border-radius:50px;background:white;color:var(--orange);font-size:20px;font-weight:700;text-transform:uppercase}
.pill:hover{background:#f0f5f8;text-decoration:none}
.carousel-controls{position:absolute;right:3.4%;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:0}
.dot{display:grid;place-items:center;background:transparent;border:0;width:30px;height:30px;padding:7px}
.dot:after{content:'';display:block;width:14px;height:14px;border:2px solid #ffffff70;border-radius:50%}
.dot[aria-pressed=true]:after{border:3px solid white;background:#ffffff35}
.services{padding-block:62px 75px}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px 28px}
.service-card{border:1px solid var(--teal);border-radius:11px;overflow:hidden;display:flex;flex-direction:column;background:white;transition:box-shadow .18s ease,transform .18s ease}
.service-card:hover{box-shadow:0 10px 25px #143e5212;transform:translateY(-3px)}
.service-card>img{width:100%;aspect-ratio:1.87;object-fit:cover}
.service-copy{padding:28px 22px 25px;min-height:245px;display:flex;flex-direction:column;align-items:flex-start}
.service-copy h3{font-size:23px;font-weight:650;line-height:1.12;letter-spacing:-.6px;margin-bottom:12px}
.service-copy p{font-size:15px;line-height:1.55;color:#60636a;margin-bottom:28px;max-width:290px}
.service-link{color:var(--blue);font-size:15px;font-weight:600;text-decoration:underline;text-underline-offset:3px;margin-top:auto;padding-block:6px}
.testimonials{position:relative;min-height:420px;background:var(--blue);color:white;display:flex;align-items:center;overflow:hidden}
.testimonial-image{position:absolute;width:100%;height:100%;inset:0;object-fit:cover;object-position:center}
.testimonial-copy{position:relative;width:42%;margin-left:58%;padding:55px 80px 55px 0}
.testimonials h2{font-size:25px;line-height:1.2;letter-spacing:-.6px;margin-bottom:28px}
blockquote{font-size:16px;line-height:1.55;margin:0}
blockquote:before{content:'“'}
blockquote:after{content:'”'}
.recognitions{padding-block:70px 80px}
.award-grid{border:2px solid #72a6ac;border-radius:46px;padding:58px 40px;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:35px 24px;align-items:center;justify-items:center}
.award-grid img{width:100%;height:100px;object-fit:contain}
.footer-top{background:#f4f4f4;padding:60px 0 55px}
.footer-slogan{display:flex;align-items:center;justify-content:space-between;gap:70px;padding-bottom:42px;border-bottom:1px solid #92949b}
.footer-slogan img{width:330px;height:auto}
.footer-slogan p{border-left:1px solid #92949b;padding-left:55px;font-size:27px;line-height:1.3;font-weight:500;letter-spacing:-.6px;margin:0}
.footer-slogan strong{color:var(--blue)}
.footer-columns{display:grid;grid-template-columns:1fr 1fr 1.25fr;gap:60px;padding-top:45px}
.footer-columns h2{font-size:17px;font-weight:650;margin-bottom:20px;letter-spacing:0}
.footer-columns ul{list-style:none;margin:0;padding:0}
.footer-columns li{margin-bottom:13px;color:#666;font-size:13px;line-height:1.5}
.footer-bottom{background:#232730;color:#fff;padding:58px 0 30px}
.brand-family{display:flex;justify-content:center;align-items:center;gap:40px;flex-wrap:wrap;margin-bottom:60px}
.brand-family img{width:auto;max-width:110px;height:65px;object-fit:contain}
.brand-family img:first-child{max-width:none;width:100%;height:65px;margin-bottom:6px}
.footer-bottom-row{border-top:1px solid #8d9097;padding-top:22px;display:flex;align-items:center;justify-content:space-between;gap:30px}
small{font-size:12px}
.social-links{display:flex;align-items:center;gap:28px}
.social-links a{display:grid;place-items:center;width:30px;height:32px}
.social-links img{width:24px;height:24px;object-fit:contain}
@media(min-width:1600px){.hero-copy{padding-left:max(4.8vw,calc((100vw - 1400px)/2))}}
@media(max-width:1100px){
 .site-header{gap:26px;padding-inline:24px}.brand img{width:190px}nav>ul{gap:15px}nav>ul>li{font-size:12px}
 .hero h1{margin-bottom:45px}.container{width:calc(100% - 56px)}.service-copy{padding:24px 20px;min-height:260px}.service-copy h3{font-size:21px}
 .testimonial-copy{width:46%;margin-left:54%;padding-right:65px}.testimonials{min-height:400px}
 .footer-slogan{gap:35px}.footer-slogan img{width:280px}.footer-slogan p{font-size:23px;padding-left:30px}
}
@media(max-width:850px){
 .site-header{min-height:78px;padding:17px 24px}.brand img{width:200px}
 .menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;border:1px solid #cbd2d8;border-radius:5px;width:44px;height:42px;background:white;padding:10px}
 .menu-toggle span{display:block;width:22px;height:2px;background:var(--blue)}
 nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;max-height:calc(100dvh - 78px);overflow:auto;box-shadow:0 10px 20px #0001;padding:10px 24px 22px}
 nav.open{display:block}nav>ul{display:block}nav>ul>li{text-align:left;font-size:15px;border-bottom:1px solid #e9edef}nav>ul>li>a,nav>ul>li>button{padding:16px 0;width:100%;text-align:left}
 .submenu{position:static;box-shadow:none;max-width:none;padding:0 0 10px 8px}.submenu a{padding:12px 10px}
 .hero-slide{min-height:510px;height:65vw}.hero-copy{width:48%;padding-top:40px;padding-bottom:40px}.hero h1{font-size:28px;letter-spacing:-.8px}.pill{font-size:16px;min-width:160px;min-height:46px}
 .service-grid{gap:25px 20px}.service-copy{min-height:290px;padding:22px 16px}.service-copy h3{font-size:20px}.service-copy p{font-size:14px}
 .testimonials{min-height:440px}.testimonial-copy{width:47%;margin-left:53%;padding-right:50px}.testimonials h2{font-size:23px}blockquote{font-size:15px}
 .award-grid{grid-template-columns:repeat(3,minmax(0,1fr));padding:35px;gap:24px}.award-grid img{height:100px}
 .footer-slogan{gap:25px}.footer-slogan img{width:220px}.footer-slogan p{font-size:20px;padding-left:25px}.footer-columns{gap:25px}
}
@media(max-width:600px){
 .container{width:calc(100% - 40px)}h2{font-size:27px;letter-spacing:-.8px;margin-bottom:28px}
 .site-header{padding:15px 20px;min-height:74px}.brand img{width:185px}
 .hero-slide{height:auto;min-height:0;padding-top:62vw;display:flex;flex-direction:column}
 .hero-image{height:65vw;object-fit:cover;object-position:right top;width:150%;max-width:none;left:-50%}
 .hero-copy{width:100%;min-height:350px;padding:34px 30px 68px;background:linear-gradient(150deg,#09649e,#457f79)}
 .hero h1{font-size:28px;line-height:1.12;letter-spacing:-.7px;margin-bottom:30px;max-width:430px}
 .hero .carousel-controls{top:auto;right:auto;left:23px;bottom:18px;transform:none;flex-direction:row}.dot{width:36px;height:32px}
 .services{padding-block:42px 48px}.service-grid{grid-template-columns:1fr;gap:26px}.service-copy{min-height:225px;padding:26px 22px}.service-copy h3{font-size:24px}.service-copy p{font-size:15px;max-width:none}.service-card>img{aspect-ratio:1.87}
 .testimonials{display:block;padding-top:54vw;min-height:0}.testimonial-image{height:54vw;width:180%;max-width:none;object-fit:cover;object-position:left top}
 .testimonial-copy{margin-left:0;width:100%;padding:34px 30px 74px;min-height:355px}.testimonials h2{font-size:25px;margin-bottom:22px}blockquote{font-size:15px;line-height:1.65}
 .testimonials .carousel-controls{top:auto;bottom:20px;left:23px;right:auto;transform:none;flex-direction:row}
 .recognitions{padding-block:46px 50px}.award-grid{padding:28px 20px;border-radius:28px;gap:24px 18px}.award-grid img{height:72px}
 .footer-top{padding:38px 0}.footer-slogan{flex-direction:column;align-items:flex-start;padding-bottom:30px;gap:25px}.footer-slogan img{width:255px}.footer-slogan p{border:0;padding:0;font-size:23px}
 .footer-columns{grid-template-columns:1fr 1fr;padding-top:30px;gap:28px 22px}.footer-columns>div:last-child{grid-column:1/-1}.footer-columns li{font-size:12px}.footer-columns h2{font-size:16px}
 .footer-bottom{padding-top:38px}.brand-family{gap:30px;margin-bottom:35px}.brand-family img{height:52px;max-width:85px}.footer-bottom-row{flex-direction:column-reverse;align-items:flex-start;gap:22px}.social-links{gap:24px}small{font-size:11px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
