/* ==========================================================================
   Atlas — responsive
   ========================================================================== */

/* ---------- Tablet ---------- */
@media (max-width: 1024px) {
  .hero-inner { grid-template-columns: 1fr; gap: 48px; text-align: center; }
  .hero-text { max-width: none; }
  .hero-actions { justify-content: center; }
  .hero-sub { margin-left: auto; margin-right: auto; }
  .hero-visual { max-width: 420px; margin: 0 auto; }
  .why-layout { grid-template-columns: 1fr; gap: 40px; }
  .why-head { max-width: none; }
  .map-grid { grid-template-columns: repeat(2, 1fr); }
  .map-grid::before { display: none; }
  .courses-grid { grid-template-columns: repeat(2, 1fr); }
}

/* ---------- Mobile ---------- */
@media (max-width: 768px) {
  .nav-links { display: none; }
  .nav-cta { display: none; }
  .menu-toggle { display: flex; }

  .hero { padding: 6.5rem 0 var(--space-section); }
  .hero-inner { min-height: auto; gap: 40px; }
  .hero h1 { font-size: clamp(32px, 8.5vw, 46px); }
  .hero-sub { font-size: 16px; }

  .section { padding: 4.5rem 0; }
  .section-head { margin-bottom: 36px; }

  .courses-grid,
  .map-grid,
  .pricing-grid { grid-template-columns: 1fr; }
  .map-step p { max-width: none; }

  .why-layout { gap: 32px; }
  #approach .why-item { padding: 14px 0; }

  .cta-inner { padding: 48px 20px; }
  .cta-form { gap: var(--space-sm); }

  .footer-inner { flex-direction: column; gap: 16px; }
  .footer-inner .brand { order: -1; }
}
