/* Contact Us page-specific styles */
.hero { padding: var(--space-12) 0; color: #fff; }
.hero__inner { display: grid; gap: var(--space-6); }
.hero__tagline { max-width: 60ch; color: #eef3ff; }
.hero__actions { display: flex; flex-wrap: wrap; gap: var(--space-4); }

.section { padding-block: var(--space-11); }
.smallprint { color: var(--gray-600); font-size: var(--font-size-sm); margin-top: var(--space-4); }

/* FAQ */
.faq details { border: 1px solid var(--gray-200); border-radius: var(--radius-md); background: var(--color-surface); padding: var(--space-4) var(--space-5); box-shadow: var(--shadow-sm); }
.faq details + details { margin-top: var(--space-4); }
.faq summary { cursor: pointer; font-weight: 600; outline: none; }
.faq summary:focus-visible { box-shadow: var(--focus-ring); border-radius: var(--radius-sm); }
.faq__content { margin-top: var(--space-3); color: var(--gray-700); }

/* Forms helpers */
.grid__full { grid-column: 1 / -1; }
.checkbox { display: inline-flex; gap: var(--space-3); align-items: flex-start; }
.checkbox input { margin-top: 6px; }

/* Map */
.location .map__embed { width: 100%; aspect-ratio: 16 / 9; border-radius: var(--radius-lg); overflow: hidden; }

/* Social list */
.social-list { display: flex; flex-wrap: wrap; gap: var(--space-5); }
.social-list__link { display: inline-flex; align-items: center; gap: var(--space-3); font-weight: 600; }
.social-list__link .fa-brands { font-size: 1.125rem; color: var(--color-primary); }

/* Newsletter */
.newsletter__fields { display: grid; grid-template-columns: 1fr auto; gap: var(--space-4); max-width: 640px; }
.newsletter__consent { display: flex; margin-top: var(--space-4); max-width: 60ch; }

@media (max-width: 640px) {
  .newsletter__fields { grid-template-columns: 1fr; }
}
