/* Contact page: native form controls, matching the shared dark theme. */
.contact-layout { max-width: var(--max); margin: 0 auto; padding: 40px var(--gutter); display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr); gap: 48px; align-items: start; }
.contact-intro { max-width: 38ch; }
.contact-intro h2 { font-size: 30px; margin-bottom: 18px; }
.contact-intro h2 b { display: block; color: var(--brand-accent); margin-top: 8px; }
.contact-intro p { color: #becbde; }
.contact-intro a { overflow-wrap: anywhere; }
.contact-form { min-width: 0; padding: 28px; background: var(--panel); border: 1px solid var(--line); border-radius: 8px; }
.contact-field { margin-bottom: 22px; }
.contact-field label { display: block; margin-bottom: 8px; font-weight: 700; }
.contact-field input, .contact-field textarea { display: block; width: 100%; padding: 12px 14px; border: 1px solid #52647e; border-radius: 4px; background: var(--ground); color: var(--ink); font: inherit; }
.contact-field textarea { min-height: 160px; resize: vertical; }
.contact-field .fine { margin: 6px 0 0; }
.contact-form > .fine { margin: 0 0 22px; }
.contact-form .btn { margin: 0; cursor: pointer; font: 700 16px/1.4 var(--body); }
.contact-honey { display: none; }
@media (max-width: 820px) { .contact-layout { grid-template-columns: 1fr; gap: 24px; } .contact-intro { max-width: 60ch; } }
@media (max-width: 520px) { .contact-layout { padding-top: 28px; } .contact-form { padding: 20px; } }
.report-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 18px; }
@media (max-width: 520px) { .report-facts { grid-template-columns: 1fr; } }
