﻿/* Contact page specific styles */
.hero {
  padding: var(--space-16) 0 var(--space-12);
  background: linear-gradient(180deg, color-mix(in srgb, var(--color-primary) 6%, transparent), transparent);
}
.hero h1 { margin-bottom: var(--space-3); }
.hero-actions { display: flex; gap: var(--space-3); flex-wrap: wrap; margin-top: var(--space-4); }

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

/* Grid utilities for this page */
.grid-columns-3 {
  display: grid;
  gap: var(--space-5);
  grid-template-columns: 1fr;
}
.grid-columns-2 {
  display: grid;
  gap: var(--space-5);
  grid-template-columns: 1fr;
}
@media (min-width: 800px) {
  .grid-columns-3 { grid-template-columns: repeat(3, 1fr); }
  .grid-columns-2 { grid-template-columns: repeat(2, 1fr); }
}

.contact-card h2 { margin-bottom: var(--space-2); }
.hours { margin: 0; padding-left: var(--space-5); }

/* Forms */
.form-grid {
  display: grid;
  gap: var(--space-4);
  grid-template-columns: 1fr;
}
.form-grid .full { grid-column: 1 / -1; }
.form-grid .actions { display: flex; gap: var(--space-3); flex-wrap: wrap; margin-top: var(--space-2); }
.form-grid .inline { display: inline-flex; align-items: center; gap: var(--space-2); }

/* FAQ */
.faq-list { display: grid; gap: var(--space-3); }
.faq-list details { border: 1px solid var(--color-border); border-radius: var(--radius-md); padding: var(--space-3) var(--space-4); background: var(--color-surface); }
.faq-list summary { cursor: pointer; font-weight: 700; outline: none; }
.faq-list details[open] { box-shadow: var(--shadow-sm); }
.faq-list details > div { margin-top: var(--space-2); color: var(--color-text); }

/* Social */
.social-list { margin: 0; padding-left: var(--space-5); }

/* Validation helpers */
input.input-error, textarea.input-error, select.input-error { border-color: var(--color-danger); }

/* Minor spacing tweaks */
.card + .card { margin-top: var(--space-5); }


