.contact-page { padding-top: 0; padding-bottom: 75px; }
.contact-intro { background: #eff7fa; padding: 60px 0; text-align: center; margin-bottom: 60px; }
.contact-intro .eyebrow { justify-content: center; }
.contact-intro h1 { margin: 20px 0; }
.contact-intro p { font-size: 16px; line-height: 26px; color: var(--muted); }
.contact-layout { display: grid; grid-template-columns: .8fr 1.3fr; gap: 65px; max-width: 1080px; margin: auto; align-items: start; }
.contact-aside { background: #eff7fa; padding: 32px; border-top: 3px solid var(--blue); }
.contact-page h2 { font-size: 23px; line-height: 30px; letter-spacing: 0; margin-bottom: 18px; }
.contact-aside p { color: var(--muted); font-size: 16px; line-height: 25px; }
.contact-aside ul { padding-left: 20px; margin: 24px 0; color: var(--muted); font-size: 15px; line-height: 2; }
.contact-aside li::marker { color: var(--blue); }
.contact-aside a { color: #007fa9; font-weight: 600; font-size: 15px; }
.contact-aside a span { margin-left: 12px; }
.contact-field { display: grid; gap: 10px; min-width: 0; margin-top: 8px; }
.contact-form-panel form input, .contact-form-panel form textarea { width: 100%; background: white; }
.contact-form-panel form label { font-size: 14px; }
.contact-form-panel form label span { color: #007fa9; }
.contact-form-panel .form-note { font-size: 12px; line-height: 20px; color: var(--muted); }
.contact-form-panel #form-status { font-size: 14px; line-height: 22px; color: #007fa9; }
@media (max-width: 760px) {
 .contact-page { padding-top: 0; padding-bottom: 45px; }
 .contact-layout { grid-template-columns: 1fr; gap: 30px; }
 .contact-intro h1 { font-size: 28px; line-height: 36px; }
 .contact-intro { padding: 40px 0; margin-bottom: 40px; }
 .contact-aside { padding: 24px; }
}
@media (max-width: 420px) {
 .contact-form-panel form { display: flex; flex-direction: column; }
 .contact-form-panel form .button { align-self: flex-start; }
}
