.contact-page main h1 { font-size: var(--text-display); margin: 0; }
.contact-intro { color: var(--color-ink-2); line-height: 1.6; }
.contact-email { color: var(--color-accent); overflow-wrap: anywhere; }
.contact-page form { max-width: 760px; margin-top: var(--space-xl); border-top: 1px solid var(--color-rule); padding-top: var(--space-lg); }
.contact-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-md); }
.contact-fields label { display: flex; flex-direction: column; gap: var(--space-2xs); font-size: var(--text-sm); font-weight: 600; min-width: 0; }
.contact-fields label span { color: var(--color-ink-2); font-weight: 400; }
.contact-fields input, .contact-fields select, .contact-fields textarea { width: 100%; min-width: 0; border: 1px solid var(--color-rule); border-radius: var(--radius-input); padding: var(--space-xs); background: var(--color-paper-2); color: var(--color-ink); font: inherit; font-size: var(--text-md); }
.contact-fields input, .contact-fields select { min-height: 48px; }
.contact-fields textarea { resize: vertical; min-height: 160px; }
.contact-fields input:focus-visible, .contact-fields select:focus-visible, .contact-fields textarea:focus-visible { outline: 2px solid var(--color-focus); outline-offset: 3px; }
.contact-message { grid-column: 1 / -1; }
.contact-privacy { font-size: var(--text-xs); color: var(--color-ink-2); margin: var(--space-md) 0; }
.contact-page button[type="submit"] { display: inline-flex; align-items: center; gap: var(--space-xs); min-height: 48px; border: none; padding: var(--space-xs) var(--space-md); border-radius: var(--radius-input); background: var(--color-accent); color: var(--color-accent-ink); font: inherit; font-weight: 700; cursor: pointer; }
.contact-page button[type="submit"]:hover { background: var(--color-accent-hover); }
#contactStatus { max-width: 760px; line-height: 1.6; margin-top: var(--space-md); }
#contactStatus[data-state="error"] { color: var(--color-live); }
#contactStatus[data-state="success"] { color: var(--color-success); }
@media (max-width: 767px) {
  .contact-page main h1 { font-size: var(--text-display-mobile); }
  .contact-fields { grid-template-columns: minmax(0, 1fr); }
}
