/* Shared inquiry form and contact page. No effects on other page content. */
.cm-inquiry,.cm-contact{box-sizing:border-box;color:#142c42;font:16px/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.cm-inquiry *,.cm-contact *{box-sizing:border-box}
.cm-inquiry{width:calc(100% - 40px);max-width:960px;margin:56px auto;padding:clamp(24px,4vw,44px);border:1px solid #dce5ee;border-radius:22px;background:#fff;box-shadow:0 16px 48px #102b4610;scroll-margin-top:24px}
.cm-inquiry .cm-inquiry-heading h2{margin:0 0 12px;font-size:clamp(25px,2.6vw,32px);line-height:1.2;letter-spacing:-.025em;color:#102b46}
.cm-inquiry .cm-inquiry-heading p{margin:0;color:#526477;font-size:15px;line-height:1.7}
.cm-inquiry .cm-inquiry-required{margin:18px 0 20px;padding:10px 14px;border-left:3px solid #ffc400;background:#f6f8fb;font-size:13px;color:#526477}
.cm-inquiry form{margin:0;min-width:0}
.cm-inquiry label{display:block;min-width:0;margin:0 0 20px;font-size:14px;line-height:1.5;font-weight:650;color:#19354f}
.cm-inquiry input,.cm-inquiry textarea{display:block;width:100%;max-width:100%;margin-top:8px;padding:13px 15px;min-height:50px;border:1px solid #c3d0dd;border-radius:9px;background:#fafcfe;color:#142c42;font:400 16px/1.5 system-ui,sans-serif;transition:border-color .15s,box-shadow .15s}
.cm-inquiry textarea{min-height:150px;resize:vertical}
.cm-inquiry input:hover,.cm-inquiry textarea:hover{border-color:#7b96b0}
.cm-inquiry input:focus,.cm-inquiry textarea:focus{background:#fff;border-color:#1765a2;box-shadow:0 0 0 3px #1765a216}
.cm-inquiry textarea::placeholder{color:#65778a;opacity:1}
.cm-inquiry-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 20px}
.cm-inquiry [data-turnstile]{display:flex;justify-content:center;min-height:70px;max-width:100%;margin:4px 0 18px}
.cm-inquiry-actions{display:flex;justify-content:center;text-align:center}
.cm-inquiry .cm-inquiry-actions button{display:block;max-width:100%;min-width:240px;min-height:54px;margin:0 auto;padding:15px 28px;border:1px solid #f0b900;border-radius:10px;background:#ffc400;color:#102b46;font:750 16px/1.4 system-ui,sans-serif;cursor:pointer;box-shadow:0 5px 14px #d9a90020;transition:background .15s,box-shadow .15s}
.cm-inquiry .cm-inquiry-actions button:hover:not(:disabled){background:#ffd335;box-shadow:0 6px 18px #d9a90035}
.cm-inquiry .cm-inquiry-actions button:disabled{opacity:.58;cursor:not-allowed}
.cm-inquiry :focus-visible,.cm-contact a:focus-visible{outline:3px solid #1765a2;outline-offset:4px}
.cm-inquiry [data-inquiry-status]{margin:16px 0 0;min-height:1.6em;font-size:14px;line-height:1.6;text-align:center;overflow-wrap:anywhere}
.cm-inquiry .cm-inquiry-fallback{margin:16px 0 0;padding-top:20px;border-top:1px solid #e4eaf0;font-size:13px;text-align:center;color:#526477;overflow-wrap:anywhere}
.cm-inquiry a{color:#1264a5;text-underline-offset:3px}
.cm-inquiry-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.cm-contact{margin:0;padding:0 0 72px;background:#f4f7fa}
.cm-contact-container{width:calc(100% - 64px);max-width:1180px;margin:0 auto}
.cm-contact-hero{margin:0;padding:64px 0 46px;background:#102d4b;color:#fff;border-top:1px solid #ffffff16}
.cm-contact .cm-contact-eyebrow{margin:0 0 18px;color:#226595;font-size:12px;font-weight:750;letter-spacing:.16em;line-height:1.5}
.cm-contact-hero .cm-contact-eyebrow{color:#ffd14b}
.cm-contact h1{max-width:860px;margin:0 0 20px;color:#fff;font-size:clamp(36px,4.8vw,62px);line-height:1.08;letter-spacing:-.04em}
.cm-contact .cm-contact-lead{max-width:720px;margin:0;color:#d0dfed;font-size:clamp(16px,1.6vw,19px);line-height:1.75}
.cm-contact .cm-contact-jump{display:inline-flex;gap:16px;align-items:center;margin:26px 0 0;color:#fff;font-size:14px;font-weight:650;text-decoration:none;border-bottom:1px solid #94aec7;padding:4px 0}
.cm-contact-hero a:focus-visible{outline-color:#ffc400}
.cm-contact-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:64px;align-items:start;padding-top:48px}
.cm-contact-details{min-width:0;padding:20px 0 0}
.cm-contact-details h2{margin:0 0 16px;color:#102b46;font-size:clamp(26px,2.5vw,34px);line-height:1.2;letter-spacing:-.025em}
.cm-contact-details>p:not(.cm-contact-eyebrow){margin:0 0 26px;color:#526477;font-size:16px}
.cm-contact-methods{display:grid;gap:12px}
.cm-contact .cm-contact-method{display:flex;align-items:center;gap:14px;min-height:82px;padding:16px;border:1px solid #dce5ee;border-radius:12px;background:#fff;color:#142c42;text-decoration:none;overflow-wrap:anywhere}
.cm-contact-method>span:nth-child(2){flex:1;min-width:0}
.cm-contact-method strong{display:block;font-size:14px;line-height:1.5}
.cm-contact-method strong+span{display:block;font-size:14px;line-height:1.6;color:#526477}
.cm-contact .cm-contact-symbol{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;border-radius:10px;background:#eaf2f8;color:#165f94;font-size:23px;font-weight:600}
.cm-contact .cm-contact-method:hover{border-color:#83a7c6;background:#fafdff}
.cm-contact-checklist{margin:28px 0 0;padding:24px;border-radius:12px;background:#e8eff6}
.cm-contact-checklist h3{margin:0 0 14px;font-size:16px;color:#17354f}
.cm-contact-checklist ul{margin:0;padding-left:20px;color:#40576d;font-size:14px}
.cm-contact-checklist li{margin:8px 0;padding-left:4px}
.cm-contact-checklist p{margin:18px 0 0;padding-top:16px;border-top:1px solid #cddbe7;color:#526477;font-size:13px}
.cm-contact-grid>.cm-inquiry{width:100%;max-width:none;margin:0;padding:32px}
@media(max-width:900px){.cm-contact-grid{gap:28px;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.cm-contact-grid>.cm-inquiry{padding:24px}.cm-contact-grid .cm-inquiry-grid{grid-template-columns:1fr}.cm-contact .cm-contact-method{gap:10px;padding:14px}.cm-contact-method>span:last-child{display:none}}
@media(max-width:700px){.cm-contact{padding-bottom:40px}.cm-contact-container{width:calc(100% - 36px)}.cm-contact-hero{padding:38px 0 32px}.cm-contact .cm-contact-eyebrow{margin-bottom:14px}.cm-contact h1{font-size:38px}.cm-contact-grid{grid-template-columns:minmax(0,1fr);gap:28px;padding-top:28px}.cm-contact-details{padding:0}.cm-contact-grid>.cm-inquiry{grid-row:1;padding:24px 16px}.cm-contact-checklist{padding:20px}.cm-contact-details h2{font-size:27px}.cm-inquiry{width:calc(100% - 32px);margin:32px auto;padding:24px 20px;border-radius:16px}.cm-inquiry-grid{grid-template-columns:1fr}.cm-inquiry .cm-inquiry-actions button{width:100%;min-width:0}.cm-inquiry label{margin-bottom:18px}.cm-inquiry .cm-inquiry-heading h2{font-size:26px}.cm-inquiry input,.cm-inquiry textarea{font-size:16px}}
@media(max-width:360px){.cm-contact-container{width:calc(100% - 24px)}.cm-contact-grid>.cm-inquiry,.cm-inquiry{padding:20px 14px}.cm-contact h1{font-size:34px}}
@media(prefers-reduced-motion:reduce){.cm-inquiry input,.cm-inquiry textarea,.cm-inquiry button{transition:none}}

/* Legacy contact containers share the functional form without a second outer card. */
.leadbox>.cm-inquiry{width:100%;margin:20px 0 0;max-width:none;box-shadow:none;padding:24px 16px}
.cm-contact h1,.cm-contact h2,.cm-inquiry h2{overflow-wrap:anywhere}

.cm-inquiry .cm-inquiry-consent{display:flex;align-items:flex-start;gap:10px;font-weight:400;font-size:13px;margin:4px 0 10px}.cm-inquiry .cm-inquiry-consent input{flex:0 0 18px;width:18px;height:18px;min-height:18px;padding:0;margin:2px 0 0;accent-color:#1765a2}.cm-inquiry .cm-inquiry-privacy{margin:0 0 20px;font-size:12px;line-height:1.65;color:#526477}

.contact-grid .map-box iframe{width:100%;max-width:100%;box-sizing:border-box}
