.contact-page { max-width: 760px; padding-top: 64px; padding-bottom: 80px; }
.contact-page h1 { font-size: clamp(38px, 6vw, 56px); line-height: 1.1; letter-spacing: -.04em; margin: 16px 0; }
.contact-intro { color: var(--muted); font-size: 18px; line-height: 1.65; margin-bottom: 28px; }
.contact-form { background: #fff; border: 1px solid #dfe6d8; border-radius: 14px; padding: 32px; }
.contact-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.contact-form label, .request-filters label { min-width: 0; }
.contact-form textarea { resize: vertical; min-height: 160px; }
.contact-form .button { align-self: flex-start; }
.contact-note { margin-top: 24px; color: var(--muted); font-size: 13px; line-height: 1.7; }
.contact-note a, .contact-form .help a { text-decoration: underline; text-underline-offset: 3px; }
.request-tabs { margin-bottom: 22px; }
.request-filters { display: grid; grid-template-columns: minmax(0, 2fr) minmax(150px, 1fr) auto; gap: 20px; align-items: end; margin-bottom: 16px; }
.contact-requests td { max-width: 320px; overflow-wrap: anywhere; }
.contact-message { white-space: pre-wrap; overflow-wrap: anywhere; line-height: 1.7; font-size: 15px; border-top: 1px solid #e3e9e3; padding-top: 20px; }
.contact-subject { overflow-wrap: anywhere; }
@media (max-width: 700px) {
    .contact-page { padding-top: 40px; padding-bottom: 48px; }
    .contact-form { padding: 22px 16px; }
    .contact-fields, .request-filters { grid-template-columns: minmax(0, 1fr); }
    .contact-form .button { width: 100%; }
}
