
/* Contact page: uses existing AgentCheck branding; no JS or remote assets. */
.contact-layout { max-width: 1040px; }
.contact-intro { max-width: 780px; margin-bottom: 44px; }
.contact-intro h1 { max-width: none; margin-top: 17px; margin-bottom: 16px; }
.contact-intro h1 span { color: #1b5fae; }
.contact-intro .intro { margin-bottom: 0; }
.contact-grid { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(280px, .8fr); align-items: stretch; gap: 22px; }
.contact-main { padding: clamp(28px, 5vw, 50px); border: 1px solid #d7e2f0; border-radius: 24px; background: linear-gradient(145deg, #fff 0%, #f8fbff 100%); box-shadow: 0 18px 48px rgba(16, 41, 75, .05); }
.contact-overline { display: block; color: #2164b8; font-size: 12px; font-weight: 800; letter-spacing: .14em; margin-bottom: 15px; }
.contact-main h2 { margin-bottom: 18px; max-width: 17ch; font-size: clamp(28px, 3vw, 38px); letter-spacing: -.04em; line-height: 1.18; }
.contact-main p { color: #4b5e76; }
.contact-address { display: flex; flex-direction: column; gap: 9px; padding: 27px 0; border-top: 1px solid #dfe8f2; border-bottom: 1px solid #dfe8f2; margin: 28px 0; }
.contact-address-label { color: #536985; font-size: 12px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.contact-address a { color: #134d9f; font-size: clamp(20px, 2.8vw, 30px); font-weight: 750; line-height: 1.25; overflow-wrap: anywhere; text-decoration-thickness: 1px; }
.contact-action { display: inline-flex; gap: 18px; align-items: center; justify-content: space-between; min-width: 190px; border-radius: 999px; padding: 14px 24px; color: white; background: #175fcb; font-size: 16px; font-weight: 800; text-decoration: none; }
.contact-action:hover { background: #104a9b; color: white; }
.contact-action:focus-visible, .contact-address a:focus-visible { outline: 3px solid #3385ef; outline-offset: 4px; }
.contact-main .contact-note { font-size: 14px; margin-top: 23px; line-height: 1.6; }
.contact-aside { padding: clamp(25px, 3vw, 36px); border-radius: 24px; background: #0a1b34; color: #f2f7ff; }
.contact-aside h2 { font-size: 25px; line-height: 1.2; margin-bottom: 24px; letter-spacing: -.035em; }
.contact-topic { padding-top: 19px; border-top: 1px solid rgba(220,232,255,.17); margin-top: 21px; }
.contact-topic h3 { font-size: 17px; line-height: 1.4; margin: 0 0 7px; }
.contact-topic p { color: #c4d1e3; font-size: 15px; line-height: 1.7; margin-bottom: 0; }
.contact-government { margin-top: 27px; display: grid; grid-template-columns: 1.6fr 1fr; gap: 25px; align-items: center; padding: clamp(25px, 4vw, 36px); background: #e8f0fb; border: 1px solid #d4e1f1; border-radius: 19px; }
.contact-government h2 { margin: 12px 0 13px; font-size: clamp(23px, 2.5vw, 29px); }
.contact-government p { color: #455a74; font-size: 16px; line-height: 1.7; margin: 0; }
.contact-government-links { display: grid; gap: 11px; }
.contact-government-links a { display: block; padding: 13px 15px; border-radius: 11px; background: #fff; color: #1554a6; font-size: 15px; font-weight: 750; text-decoration: none; }
.contact-government-links a:hover { text-decoration: underline; }
.contact-next { display: flex; flex-wrap: wrap; gap: 14px 28px; margin-top: 37px; padding-top: 22px; border-top: 1px solid #d5e0ec; font-size: 15px; font-weight: 700; }
@media (max-width: 740px) {
 .contact-intro { margin-bottom: 30px; }
 .contact-grid, .contact-government { grid-template-columns: 1fr; }
 .contact-aside { padding: 28px 24px; }
 .contact-main { padding: 30px 23px; }
 .contact-government-links { grid-template-columns: 1fr; }
}
@media (max-width: 380px) {
 .contact-main h2 { font-size: 28px; }
 .contact-address a { font-size: 21px; }
}
