/* Contact Us page-specific styles - leverage base.css tokens and utilities */
.section { padding-block: var(--space-11); }
.section-header { margin-bottom: var(--space-7); }
.section-header p { color: var(--color-text-muted); }

.form-grid { display: grid; gap: var(--space-6); grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (max-width: 720px) { .form-grid { grid-template-columns: 1fr; } }

.help-text { color: var(--gray-600); font-size: var(--fs-sm); margin-top: var(--space-2); }
.status { margin-top: var(--space-4); color: var(--color-text); min-height: 1.25rem; }

/* FAQ */
.faq { display: grid; gap: var(--space-4); }
.faq-item { background: var(--color-surface); border: 1px solid var(--gray-200); border-radius: var(--radius-lg); padding: var(--space-5) var(--space-6); box-shadow: var(--shadow-sm); }
.faq-item[open] { box-shadow: var(--shadow-md); }
.faq-item summary { cursor: pointer; list-style: none; font-weight: 600; display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); }
.faq-item summary::-webkit-details-marker { display: none; }
.faq-content { margin-top: var(--space-3); color: var(--color-text); }

/* Minor accessibility helpers */
.text-muted { color: var(--color-text-muted); }

/* Cards spacing harmonization */
.card + .card { margin-top: var(--space-7); }
