/* ── contact.css ── */

/* Contact Section */
.contact-section {
  padding: 120px 0 80px;
  background: var(--color-cream);
}
.contact-layout {
  display: grid;
  grid-template-columns: 1fr 1.4fr;
  gap: 80px;
  align-items: start;
}
@media (max-width: 1024px) { .contact-layout { grid-template-columns: 1fr; gap: 48px; } }

/* Contact Info */
.contact-info { padding-top: 8px; }
.contact-info .section-label { margin-bottom: 12px; }
.contact-info h1 { margin-bottom: 20px; }
.contact-intro { color: var(--color-muted); font-size: 1.05rem; margin-bottom: 40px; line-height: 1.7; }
.contact-details { display: flex; flex-direction: column; gap: 20px; margin-bottom: 32px; }
.contact-detail { display: flex; gap: 16px; align-items: flex-start; }
.contact-detail-icon {
  width: 40px; height: 40px;
  background: var(--color-teal-pale);
  border-radius: var(--radius-sm);
  display: flex; align-items: center; justify-content: center;
  color: var(--color-teal);
  flex-shrink: 0;
}
.contact-detail-icon svg { width: 18px; height: 18px; }
.contact-detail strong { display: block; font-size: 0.85rem; font-weight: 700; margin-bottom: 2px; text-transform: uppercase; letter-spacing: 0.05em; color: var(--color-muted); }
.contact-detail a, .contact-detail span { font-size: 0.95rem; color: var(--color-ink); }
.contact-detail a:hover { color: var(--color-teal); }
.contact-badges { display: flex; gap: 12px; flex-wrap: wrap; }
.contact-badge {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 6px 14px;
  background: var(--color-linen);
  border-radius: 100px;
  font-size: 0.8rem;
  font-weight: 600;
  color: var(--color-navy);
}
.contact-badge svg { width: 14px; height: 14px; color: var(--color-teal); }

/* Calendly Placeholder */
.calendly-placeholder {
  background: var(--color-navy);
  border-radius: var(--radius-xl);
  padding: 64px 40px;
  text-align: center;
  color: white;
  margin-bottom: 32px;
}
.calendly-placeholder svg { width: 48px; height: 48px; color: var(--color-teal-light); margin: 0 auto 20px; display: block; }
.calendly-placeholder h3 { color: white; margin-bottom: 12px; }
.calendly-placeholder p { color: rgba(255,255,255,0.7); margin-bottom: 24px; font-size: 0.95rem; line-height: 1.6; }
.calendly-note { font-size: 0.8rem; color: rgba(255,255,255,0.4); margin-bottom: 0 !important; }

/* Contact Form */
.contact-form-section {
  background: var(--color-white);
  border-radius: var(--radius-xl);
  padding: 40px;
  box-shadow: var(--shadow-md);
  border: 1px solid var(--color-border);
}
.contact-form-section h3 { margin-bottom: 24px; }
.contact-form-section .form-group { margin-bottom: 20px; }

/* FAQ */
.faq-section { max-width: 760px; margin: 0 auto; }
.faq-section .faq-list { border-top: 1px solid var(--color-border); }
