:root{--ink:#183454;--navy:#102e51;--blue:#146aa0;--light:#e4f3fe;--line:#d8e8f4;--muted:#526b81}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:180px}body{margin:0;font:16px/1.7 Arial,sans-serif;color:var(--ink);background:#f5faff}img{max-width:100%}a{color:#126da3}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #2492cc;outline-offset:4px}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.6}[hidden]{display:none!important}
.skip-link{position:fixed;top:10px;left:16px;z-index:100;background:var(--navy);color:#fff;padding:12px 20px;transform:translateY(-200%);border-radius:5px}.skip-link:focus{transform:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
header{position:sticky;top:0;z-index:20;background:#fff;box-shadow:0 3px 20px #12345a0d;border-bottom:1px solid #e0edf6}header .bar{max-width:1320px;margin:auto;padding:8px 28px;display:flex;align-items:center;justify-content:space-between;gap:38px}.brand{display:flex;align-items:center;flex:0 0 auto;text-decoration:none}.brand img{display:block;width:226px;height:151px;object-fit:contain}.brand span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;gap:8px 18px;max-width:940px;flex:1}nav a{display:inline-flex;align-items:center;min-height:44px;padding:7px 0;color:#244769;font-size:13px;line-height:1.35;font-weight:700;text-decoration:none;border-bottom:2px solid transparent}nav a:hover,nav a.active{color:#1377af;border-bottom-color:#66b3dc}nav a[aria-current=page]{color:#1377af}nav a:last-child{grid-column:5;grid-row:2;justify-content:center;padding:11px 18px;background:var(--blue);color:#fff;border:0;border-radius:7px}nav a:last-child:hover{background:#105984}.mobile-menu{display:none;border:1px solid #bdd9eb;background:#e8f5ff;color:#17375d;padding:11px 15px;border-radius:8px;font-size:14px;font-weight:700;min-height:44px}
h1,h2,h3{font-family:Georgia,serif;color:var(--navy);line-height:1.17}h1{font-size:clamp(38px,4.6vw,64px);letter-spacing:-.025em;margin:14px 0 24px}h2{font-size:clamp(29px,3.3vw,42px);letter-spacing:-.015em;margin:14px 0 22px}h3{font-size:23px}p{margin:0 0 20px}.hero{background:linear-gradient(115deg,#d7efff,#f2faff);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:440px}.hero .copy{padding:62px max(30px,calc((100vw - 1180px)/2));padding-right:48px;align-self:center;min-width:0}.hero .photo{position:relative;min-height:350px;background-size:cover;background-position:center}.hero .photo a{position:absolute;inset:0;display:block}.hero p{font-size:18px;max-width:650px;line-height:1.75}.eyebrow{color:#1675ad;text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:800}.breadcrumb{font-size:12px;margin:0 0 24px;color:#526b81}.breadcrumb a{color:#24668e;text-decoration:none}.breadcrumb a:hover{text-decoration:underline}
.btn{display:inline-flex;justify-content:center;align-items:center;min-height:48px;background:var(--blue);color:#fff;padding:12px 22px;border:1px solid transparent;border-radius:7px;text-decoration:none;font-weight:700;margin:10px 8px 0 0;line-height:1.5;transition:background .15s,transform .15s}.btn:hover{background:#105984;transform:translateY(-1px)}.btn.alt{background:#fff;color:#155d8c;border-color:#a6d1eb}.btn.alt:hover{background:#e8f5ff}.wrap{max-width:1220px;margin:auto;padding:64px 28px}.intro{max-width:850px;color:var(--muted);font-size:18px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:32px}.card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 8px 25px #173c600b;transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-4px);box-shadow:0 14px 32px #173c601c}.card img{display:block;width:100%;height:200px;object-fit:cover;background:#e5f2fa}.card .inner{display:flex;flex:1;flex-direction:column;padding:25px}.card h3{margin:0 0 14px}.card p{margin:0 0 20px;color:var(--muted)}.card a{color:#126da3;font-weight:700;text-decoration:none}.card .inner>a:last-child{margin-top:auto;min-height:28px}.card a:hover{text-decoration:underline}.card .image-link{display:block;overflow:hidden}.card .image-link img{transition:transform .3s}.card:hover .image-link img{transform:scale(1.035)}.card .image-link:focus-visible{outline-offset:-5px}.card h3 a{color:var(--navy)}.band{background:var(--light);border-block:1px solid #d7eaf7}.two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:44px;align-items:center}.two img{display:block;width:100%;border-radius:12px;max-height:350px;object-fit:cover}.photo-link{display:block;border-radius:12px;overflow:hidden}.photo-link img{transition:transform .2s}.photo-link:hover img{transform:scale(1.02)}.list{padding-left:22px}.list li{margin:11px 0}.notice{background:#fff;border:1px solid var(--line);border-left:4px solid #5aa7d1;border-radius:0 8px 8px 0;padding:22px 26px;color:var(--muted);margin-top:30px}.notice h2{font-size:30px}.notice h3{font-size:22px;margin:25px 0 10px}.notice p:last-child{margin-bottom:0}.service-nav{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:32px}.service-nav a{display:inline-flex;align-items:center;min-height:44px;background:#e5f4ff;color:#175b87;padding:9px 15px;border:1px solid #bbdff5;border-radius:24px;font-size:13px;font-weight:700;text-decoration:none;line-height:1.45}.service-nav a:hover{background:#cceafb}.cta{text-align:center;background:#143b63;color:#fff;padding:58px 24px}.cta h2{color:#fff;margin-top:0}.cta p{max-width:700px;margin:0 auto 16px}footer{background:#0d2b49;color:#c7d8e7;padding:32px 24px;text-align:center;font-size:14px}footer a{color:#e2f4ff}footer small{display:inline-block;max-width:900px;font-size:12px;line-height:1.75;margin-top:12px}
form{max-width:820px;background:#fff;padding:32px;border:1px solid var(--line);border-radius:12px;box-shadow:0 8px 28px #173c600a}label{display:block;font-weight:700;margin:20px 0 7px}input,select,textarea{width:100%;border:1px solid #b9d2e4;border-radius:6px;padding:12px;color:var(--ink);background:#fff;min-height:48px}textarea{resize:vertical}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:22px}.small{font-size:13px;color:#526b81;line-height:1.65}.form-help{margin-top:18px}.draft-panel{margin-top:26px;padding-top:20px;border-top:1px solid var(--line)}.draft-panel h3{margin:0 0 10px}.draft-panel textarea{background:#f5faff}.status{font-size:14px;font-weight:700;color:#175b87;margin:15px 0 0}.form-actions{display:flex;flex-wrap:wrap;gap:4px}
@media(min-width:1600px){.hero .copy{padding-left:max(50px,calc((100vw - 1180px)/2))}}
@media(max-width:1100px){header .bar{gap:24px;padding-inline:24px}.brand img{width:210px;height:140px}nav{gap:2px 14px}nav a{font-size:12px}.hero .copy{padding:48px 32px}.grid{gap:20px}}
@media(max-width:950px){html{scroll-padding-top:145px}header .bar{flex-wrap:wrap;gap:0 20px;padding:4px 24px}.brand img{width:188px;height:125px}.mobile-menu{display:block;margin-left:auto}header nav{display:none;flex-basis:100%;max-width:none;flex-direction:column;align-items:stretch;gap:2px;padding:12px 0 14px;border-top:1px solid #dcecf6;max-height:calc(100dvh - 140px);overflow:auto}header nav.is-open{display:flex}header nav a:last-child{grid-column:auto;grid-row:auto}header nav a{font-size:15px;min-height:44px;padding:9px 12px;border:0;border-radius:6px}header nav a:hover,header nav a.active{background:#e8f4fb}header nav a:last-child{margin-top:5px;justify-content:center}header nav a:last-child:hover,header nav a:last-child.active{background:#105984;color:#fff}.hero{grid-template-columns:1fr}.hero .copy{padding:44px 32px;max-width:820px}.hero .photo{min-height:300px;max-height:360px}.hero h1{font-size:clamp(38px,5.6vw,58px)}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.two{grid-template-columns:1fr;gap:28px}.two img{max-height:380px}.wrap{padding:48px 28px}.card img{height:215px}.breadcrumb{margin-bottom:18px}}
@media(max-width:620px){html{scroll-padding-top:135px}header .bar{padding:3px 16px;gap:0 12px}.brand img{width:174px;height:116px}.mobile-menu{padding:10px 13px}header nav{max-height:calc(100dvh - 128px)}.hero .copy{padding:35px 22px}.hero h1{font-size:clamp(34px,9vw,44px);margin:13px 0 20px}.hero p{font-size:17px}.hero .photo{min-height:230px}.grid{grid-template-columns:minmax(0,1fr);gap:22px;margin-top:26px}.wrap{padding:40px 20px}.card .inner{padding:24px}.card img{height:220px}.two{gap:24px}.two img{max-height:300px}.notice{padding:20px}.service-nav{gap:8px}.service-nav a{font-size:12px;padding:10px 13px}.intro{font-size:17px}.btn{padding:12px 18px}.cta{padding:44px 22px}footer{padding:28px 22px}form{padding:22px}.field-row{grid-template-columns:1fr;gap:0}h2{font-size:31px}.eyebrow{font-size:11px;letter-spacing:.14em}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Team page, extending the existing light-blue identity. */
.team-hero{grid-template-columns:minmax(0,1fr);min-height:0}.team-hero .copy{width:100%;max-width:1220px;margin:auto;padding:38px 28px}.team-hero .breadcrumb{margin-bottom:18px}.team-hero h1{margin:10px 0 14px}.team-hero p:not(.breadcrumb){margin-bottom:12px}.team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:30px}.team-member{display:flex;align-items:center;gap:24px;min-width:0;padding:30px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 8px 25px #173c600b}.team-avatar{display:flex;align-items:center;justify-content:center;width:76px;height:76px;flex:0 0 76px;border-radius:50%;background:#e5f4ff;border:1px solid #bbdff5;color:#146aa0;font:700 25px Georgia,serif;letter-spacing:.04em}.team-member h3{font-size:25px;margin:0 0 10px}.team-role{color:#175b87;font-size:15px;font-weight:700;line-height:1.6;margin:0}
@media(max-width:950px){.team-grid{gap:20px}.team-member{align-items:flex-start;flex-direction:column;gap:18px;padding:26px}}
@media(max-width:620px){.team-hero .copy{padding:30px 22px}.team-grid{grid-template-columns:minmax(0,1fr);gap:18px;margin-top:24px}.team-member{flex-direction:row;align-items:center;gap:18px;padding:24px 20px}.team-avatar{width:62px;height:62px;flex-basis:62px;font-size:22px}.team-member h3{font-size:22px;margin-bottom:7px}.team-role{font-size:14px}}
