/* Contact Us page (/contact-us/) — builds on home.css + about.css (dark theme, page banner, cards) */

/* Contact channels: 4 cards */
.contact-channels-section { padding-bottom: 72px; }
.contact-channels { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; margin: 0; padding: 0; list-style: none; }
.contact-channels li { display: flex; }
.contact-channel { flex: 1; padding: 24px; }
.contact-channel h2 { margin: 6px 0 0; font-size: 1.12rem; line-height: 1.35; }
.contact-channel__value { color: var(--text); font-size: 0.95rem; font-weight: 600; line-height: 1.5; overflow-wrap: break-word; }
.contact-channel .card__more { margin-top: auto; }

/* Form + steps */
.contact-grid { display: grid; grid-template-columns: 1fr minmax(0, 560px); gap: 64px; align-items: start; }
.contact-intro { position: sticky; top: 120px; }
.contact-intro h2 { margin: 0 0 16px; font-size: clamp(1.8rem, 3.4vw, 2.5rem); line-height: 1.18; text-wrap: balance; }
.contact-intro > p:not(.eyebrow) { margin: 0 0 28px; color: var(--muted); font-size: 1.05rem; line-height: 1.8; }
.contact-steps { display: grid; gap: 14px; margin: 0 0 24px; padding: 0; list-style: none; }
.contact-steps li { display: grid; grid-template-columns: auto 1fr; gap: 16px; align-items: start; padding: 18px 20px; border-radius: 16px; background: var(--surface, rgba(255, 255, 255, 0.05)); border: 1px solid rgba(255, 255, 255, 0.08); }
.contact-steps__num { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 12px; background: var(--gold); color: #111827; font: 700 1rem/1 var(--font-heading); }
.contact-steps strong { display: block; margin: 2px 0 4px; color: var(--heading, #fff); font-family: var(--font-heading); }
.contact-steps span:not(.contact-steps__num) { color: var(--muted); line-height: 1.6; }
.contact-intro__trust { display: flex; align-items: center; gap: 10px; margin: 0; color: var(--text); font-weight: 600; }
.contact-intro__trust .icon { width: 22px; height: 22px; color: var(--gold); }
.contact-card .lead-card__notice { margin: 0 0 18px; }

/* Map */
.contact-map { overflow: hidden; border-radius: 22px; border: 1px solid rgba(255, 255, 255, 0.12); box-shadow: 0 30px 70px rgba(0, 0, 0, 0.45); background: #0d1630; }
.contact-map iframe { display: block; width: 100%; height: 420px; border: 0; }

@media (max-width: 1024px) {
  .contact-channels { grid-template-columns: repeat(2, 1fr); }
  .contact-grid { grid-template-columns: 1fr; gap: 40px; }
  .contact-intro { position: static; }
}
@media (max-width: 560px) {
  .contact-channels { grid-template-columns: 1fr; }
  .contact-map iframe { height: 320px; }
}
