/* Contact page form. */
.contact { margin-top: 28px; }
.contact-card { max-width: 720px; }
.contact-form { display: grid; gap: 14px; }
.contact-form .row2 { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.contact-form label { display: grid; gap: 6px; font-size: 13px; font-weight: 700; color: var(--text-secondary); }
.contact-form input, .contact-form textarea {
  font: 400 15.5px/1.5 var(--font-ui); color: var(--text-primary);
  background: var(--surface-secondary); border: 1px solid var(--border-strong);
  border-radius: var(--radius-small); padding: 10px 12px; width: 100%;
}
.contact-form textarea { resize: vertical; min-height: 120px; }
.contact-form input:focus, .contact-form textarea:focus { outline: 2px solid var(--brand-sand); outline-offset: 1px; border-color: var(--brand-teal); }
.contact-form .hp { position: absolute; left: -9999px; }
.contact-form .actions { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; }
.contact-form button {
  font: 700 15px/1 var(--font-ui); color: var(--brand-paper); background: var(--brand-teal);
  border: none; border-radius: 10px; padding: 13px 26px; min-height: 44px; cursor: pointer;
}
.contact-form button:hover { background: var(--brand-teal-light); }
.contact-form button:disabled { opacity: 0.6; cursor: default; }
.form-status { margin: 0; font-size: 14px; font-weight: 600; color: var(--text-secondary); }
.form-status.ok { color: var(--evidence-solid); }
.form-status.err { color: var(--evidence-refuted); }
@media (max-width: 560px) { .contact-form .row2 { grid-template-columns: 1fr; } }
