/* Contact Us page-specific styles (keeps consistent with base.css) */

.page-header { padding-block: var(--space-12) var(--space-9); background: linear-gradient(180deg, rgba(212,175,55,0.06), transparent 30%); border-bottom: 1px solid rgba(255,255,255,0.06); }
.page-header .lead { color: var(--color-text-muted); max-width: 72ch; }

.section { padding-block: var(--space-12); }

/* Layout grids */
.contact-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-9); }
.form-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-9); align-items: start; }
.newsletter-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-9); }

@media (max-width: 1000px) {
  .contact-grid, .form-grid, .newsletter-grid { grid-template-columns: 1fr; }
}

/* Definition list formatting for contact details */
.contact-list { display: grid; gap: var(--space-6); }
.contact-list dt { font-weight: 600; color: var(--color-text); margin-bottom: var(--space-2); }
.contact-list dd { margin: 0; color: var(--color-text); }

/* Support list and CTA row */
.support-list { display: grid; gap: var(--space-3); }
.cta-row { display: inline-flex; gap: var(--space-5); margin-top: var(--space-6); flex-wrap: wrap; }

/* Forms */
.form-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-7); }
.form-field { display: grid; gap: var(--space-3); }
.form-field--full { grid-column: 1 / -1; }
.form-actions { display: inline-flex; gap: var(--space-5); align-items: center; }
.form-status { margin-top: var(--space-5); min-height: 1.25rem; color: var(--color-text-muted); }
.muted { color: var(--color-text-muted); }

.checkbox { display: inline-flex; align-items: flex-start; gap: var(--space-4); }
.checkbox input { margin-top: 4px; }

/* FAQ */
.faq { display: grid; gap: var(--space-4); }
.faq details { border: 1px solid rgba(255,255,255,0.08); border-radius: var(--radius-md); background: rgba(255,255,255,0.04); padding: var(--space-5) var(--space-6); }
.faq summary { cursor: pointer; font-weight: 600; }
.faq summary::-webkit-details-marker { display: none; }
.faq details[open] { background: color-mix(in srgb, var(--color-elevated) 82%, transparent); }
.faq details > p { margin-top: var(--space-4); }

/* Newsletter form */
.newsletter-form { display: grid; gap: var(--space-5); }
.newsletter-row { display: grid; grid-template-columns: 1fr auto; gap: var(--space-4); }
.consent-inline { color: var(--color-text-muted); }

@media (max-width: 600px) {
  .form-fields { grid-template-columns: 1fr; }
  .newsletter-row { grid-template-columns: 1fr; }
}
