/* Contact: a human welcome and two clear ways to get in touch. */
body.page-contact{background:#f4f7f8;padding-bottom:0}
.page-contact .contact-hero{grid-template-columns:1.05fr 1fr;gap:75px;background:radial-gradient(ellipse at 90% 30%,#20445a,transparent 70%),#091e2c;min-height:650px;padding-top:65px;padding-bottom:65px}
.page-contact .contact-hero .eyebrow{padding:0;border:0;font-size:10px;letter-spacing:.23em;color:#95c0d7}
.page-contact .contact-hero h1{font-size:clamp(34px,3.5vw,51px);line-height:1.6;letter-spacing:-.045em;color:#e9f5fa;margin-bottom:28px}
.page-contact .contact-hero h1 span{color:#b6dae9}
.page-contact .contact-hero .page-lead{color:#b9d0dd;font-size:15px;line-height:2.1;margin:0 0 30px}
.contact-hero-photo{margin:0;min-width:0;align-self:stretch;overflow:hidden;border:1px solid #809fa83d}
.contact-hero-photo img{display:block;width:100%;height:100%;min-height:460px;object-fit:cover;object-position:27% center}
.contact-hero-actions>p{font-size:10px;line-height:1.8;color:#91b0c3;margin:12px 0 0}
.contact-phone-jump{display:inline-flex;align-items:center;gap:12px;margin-top:28px;min-height:44px;color:#b9d8e7;font-size:12px;text-decoration:underline;text-underline-offset:6px}
.contact-phone-jump:hover{color:#fff}
.page-contact .contact-phone-jump>.action-icon{width:18px;height:18px;flex-basis:18px;margin:0}
.page-contact .contact-content{max-width:none;padding:0}
.page-contact .contact-content>.detail-section{padding:75px max(var(--space),calc((100vw - 1280px)/2));border:0;scroll-margin-top:110px}
.contact-section-label{display:flex;align-items:center;gap:25px;margin-bottom:32px}.contact-section-label>span{font-size:10px;letter-spacing:.15em;color:#60879c}.contact-section-label>p{font-size:11px;color:#6b8796;margin:0}
.contact-topics-heading{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:40px}
.page-contact .contact-topics-heading h2{font-size:clamp(30px,3.3vw,46px);line-height:1.5;margin:0}.contact-topics-heading h2 span{color:#006e9b}.contact-topics-heading>p{font-size:14px;line-height:2;color:#587789;margin:0 0 7px}
.contact-topic-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.contact-topic-grid article{min-width:0;padding-bottom:20px;border-bottom:1px solid #b9ced9}
.contact-topic-grid figure{margin:0 0 25px;aspect-ratio:1.7;background:#082737;overflow:hidden}.contact-topic-grid img{display:block;width:100%;height:100%;object-fit:cover}.contact-topic-grid article:nth-child(3) img{object-position:50% 80%}
.contact-topic-grid small{display:block;font-size:8px;line-height:1.8;letter-spacing:.08em;color:#6d8c9e;margin-bottom:12px}
.contact-topic-grid h3{font-size:21px;line-height:1.6;letter-spacing:-.025em;margin:0 0 18px;color:#133c52}
.contact-topic-grid p{font-size:13px;line-height:2;color:#587789;margin:0}
.page-contact .contact-content>.contact-online{display:grid;grid-template-columns:1fr 1fr;gap:100px;background:#0c2b3d;color:#dceef6}
.contact-online .contact-section-label>span{color:#9cbfd2}.contact-online .contact-section-label>p{color:#9cb4c3}
.page-contact .contact-online h2{font-size:clamp(30px,3.1vw,44px);line-height:1.55;color:#e8f5fa;margin:0 0 28px}.contact-online h2 span{color:#b0d8e8}
.contact-online-intro>p{font-size:14px;line-height:2.1;color:#acc7d7;margin:0 0 30px}
.contact-online-intro .contact-button{margin-top:4px}
.contact-online-intro>p.contact-external-note{font-size:10px;margin:13px 0 0;color:#91aebf}
.contact-preparation{border-left:1px solid #779aad44;padding-left:45px}
.contact-preparation-label{font-size:13px;line-height:1.8;color:#d6eaf4;margin:0 0 22px}
.contact-preparation ol{list-style:none;padding:0;margin:0}
.contact-preparation li{display:flex;gap:22px;border-top:1px solid #779aad44;padding:24px 0}
.contact-preparation li small{font-size:11px;letter-spacing:.08em;color:#efb26d;padding-top:7px}
.contact-preparation h3{font-size:22px;color:#dbeef7;margin:0 0 12px;font-weight:500}
.contact-preparation li p{font-size:13px;line-height:2;color:#a7c4d4;margin:0}
.contact-preparation-note{font-size:11px;line-height:2;color:#8dafc1;border-top:1px solid #779aad44;padding-top:22px;margin:0}
.page-contact .contact-content>.contact-phone-section{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;background:#e8f0f4}
.page-contact .contact-phone-section h2{font-size:32px;margin-bottom:25px}
.contact-phone-section>div>p{font-size:13px;color:#638296}
.page-contact .contact-phone-section .phone-link{display:flex;align-items:center;justify-content:center;gap:20px;font-size:clamp(26px,3vw,42px);font-weight:500;letter-spacing:.025em;padding:25px 20px;border:1px solid #adc7d6;background:white;color:#123b51;text-decoration:none;border-radius:6px}
.page-contact .phone-link>.action-icon{width:27px;height:27px;flex:0 0 27px;margin:0}
.contact-phone-section .phone-link:hover{background:#d7edf8;border-color:#78a4bc}
.contact-privacy{padding:28px max(var(--space),calc((100vw - 1280px)/2)) 40px;background:#e8f0f4}
.contact-privacy a{display:inline-flex;align-items:center;min-height:44px;font-size:12px;line-height:1.8;text-decoration:underline;text-underline-offset:5px;color:#4e7289}
body.page-contact .persistent-contact{display:none}
@media(max-width:1100px){.page-contact .contact-hero{gap:40px}.page-contact .contact-hero h1{font-size:38px}.page-contact .contact-content>.contact-online{gap:45px}.contact-preparation{padding-left:30px}.contact-topic-grid{grid-template-columns:1fr 1fr;gap:35px}.contact-topic-grid figure{aspect-ratio:2.2}.page-contact .contact-phone-section .phone-link{font-size:28px}.page-contact .contact-content>.contact-phone-section{gap:30px}}
@media(max-width:700px){
.page-contact .contact-hero{grid-template-columns:1fr;padding:42px 24px;gap:35px;min-height:0}.page-contact .contact-hero h1{font-size:clamp(28px,7.2vw,40px);line-height:1.65}.page-contact .contact-hero .page-lead{font-size:14px;line-height:2}.page-contact .contact-hero .page-lead br{display:none}.contact-hero-actions .contact-button{width:100%}.contact-hero-actions>p{font-size:9px}.contact-phone-jump{font-size:12px;margin-top:22px}.contact-hero-photo img{min-height:0;height:280px;object-position:25% center}
.page-contact .contact-content>.detail-section{padding:45px 24px;scroll-margin-top:95px}.contact-section-label{display:block;margin-bottom:26px}.contact-section-label>span{font-size:9px}.contact-section-label>p{font-size:10px;margin-top:10px}
.contact-topics-heading{display:block;margin-bottom:30px}.page-contact .contact-topics-heading h2{font-size:28px}.contact-topics-heading>p{font-size:13px;margin:24px 0 0}.contact-topics-heading>p br{display:none}
.contact-topic-grid{grid-template-columns:1fr;gap:32px}.contact-topic-grid figure{aspect-ratio:2.2;margin-bottom:23px}.contact-topic-grid h3{font-size:23px;margin-bottom:17px}.contact-topic-grid p{font-size:14px}.contact-topic-grid small{font-size:8px}
.page-contact .contact-content>.contact-online{grid-template-columns:1fr;gap:40px}.page-contact .contact-online h2{font-size:28px}.contact-online-intro>p{font-size:14px}.contact-online-intro>p br{display:none}.contact-online-intro .contact-button{width:100%}.contact-preparation{padding:0;border:0}.contact-preparation h3{font-size:21px}.contact-preparation li p{font-size:14px}.contact-preparation li{gap:20px}.contact-preparation-label{font-size:12px}.contact-preparation-note{font-size:12px}
.page-contact .contact-content>.contact-phone-section{display:block;padding-bottom:20px}.page-contact .contact-phone-section h2{font-size:27px}.page-contact .contact-phone-section .phone-link{font-size:clamp(21px,6.4vw,31px);gap:14px;padding:22px 15px;margin-top:30px}.page-contact .phone-link>.action-icon{width:22px;height:22px;flex-basis:22px}.contact-privacy{padding:0 24px 30px}
}

.page-contact .contact-hero-photo{background:#e1e2e8}.page-contact .contact-hero-photo img{object-position:29% 0%}@media(max-width:700px){.page-contact .contact-hero-photo img{height:360px;object-position:29% 0%}}

/* Service-specific form routing, verified against the user's live forms. */
.page-contact .contact-routing>h2,.page-contact .contact-form-preparation>h2{font-size:clamp(29px,3.3vw,45px);line-height:1.55}
.contact-routing h2 span,.contact-form-preparation h2 span{color:#006e9b}
.contact-routing-intro{font-size:14px;line-height:2;color:#55778a;margin-bottom:32px}
.contact-route-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:35px}
.contact-route-card{display:flex;align-items:flex-start;gap:22px;padding:30px;background:#fff;color:#153c53;text-decoration:none;border:1px solid #afc8d7;border-radius:6px;transition:background .2s,border-color .2s}
.contact-route-card>.action-icon{flex:0 0 25px;width:25px;height:25px;margin:5px 0 0;color:#377896}
.contact-route-card h3{font-size:22px;line-height:1.6;color:#153c53;margin:0 0 13px;letter-spacing:-.02em}
.contact-route-card p{font-size:13px;line-height:1.9;color:#5b7b8d;margin:0 0 21px}
.contact-route-card span{display:inline-flex;align-items:center;min-height:40px;font-size:12px;color:#123b51;border-bottom:1px solid #7396aa;font-weight:600}
.contact-route-card:hover,.contact-route-card:focus-visible{background:#dfedf6;border-color:#628fa8;color:#153c53}
.contact-route-note{font-size:11px;line-height:1.8;color:#678698;margin:22px 0 0}
.page-contact .contact-content>.contact-form-preparation{background:#e8f0f4}
.contact-form-preparation .contact-preparation{border:0;padding:0;margin-top:35px}
.contact-form-preparation ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}
.contact-form-preparation .contact-preparation li{border-top-color:#a9c0ce}
.contact-form-preparation .contact-preparation h3{color:#153c53;font-size:20px}
.contact-form-preparation .contact-preparation li p{color:#567587;font-size:13px}
.contact-form-preparation .contact-preparation li small{color:#9d6b30}
@media(max-width:700px){.page-contact .contact-routing>h2,.page-contact .contact-form-preparation>h2{font-size:27px}.contact-route-grid{grid-template-columns:1fr;gap:17px;margin-top:27px}.contact-route-card{padding:25px 21px;gap:17px}.contact-route-card h3{font-size:21px}.contact-route-card p{font-size:13px}.contact-route-card>.action-icon{flex-basis:23px;width:23px;height:23px}.contact-form-preparation ol{grid-template-columns:1fr;gap:0}.contact-form-preparation .contact-preparation h3{font-size:21px}.contact-routing-intro{font-size:14px}}

.contact-route-break{display:none}@media(max-width:700px){.contact-route-break{display:block}}
