/* ══════════════════════════════════════════════════
   CADIMEP — Responsive
   ══════════════════════════════════════════════════ */

/* ─── Tablet (≤ 1024px) ─────────────────────────── */
@media (max-width: 1024px) {
  :root { --section-pad: 5rem 0; }

  .hero {
    grid-template-columns: 1fr;
    padding-top: 7rem;
    text-align: center;
    gap: 3rem;
  }
  .hero-badge, .hero-actions { justify-content: center; }
  .hero-desc { margin-left: auto; margin-right: auto; }
  .hero-stats { justify-content: center; }
  .hero-visual { order: -1; }
  .scales-icon { width: 180px; height: 220px; }

  .nosotros-grid { grid-template-columns: 1fr; gap: 3rem; }
  .contact-grid { grid-template-columns: 1fr; gap: 3rem; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
}

/* ─── Mobile (≤ 768px) ──────────────────────────── */
@media (max-width: 768px) {
  .hamburger { display: flex; }

  .nav-links {
    display: none;
    position: fixed;
    inset: 0;
    background: var(--navy-mid);
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 1.5rem;
    z-index: 999;
    animation: fadeInDown 0.3s var(--ease);
  }
  .nav-links.open { display: flex; }
  .nav-link { font-size: 1.3rem; padding: 0.75rem 2rem; }
  .nav-cta { font-size: 1.1rem; padding: 0.85rem 2.5rem; }

  .hero-title { font-size: clamp(2rem, 8vw, 3rem); }
  .hero-desc { font-size: 1rem; }

  .nosotros-features { grid-template-columns: 1fr; }

  .services-grid,
  .reglamento-grid,
  .courses-grid { grid-template-columns: 1fr; }

  .team-grid { grid-template-columns: repeat(2, 1fr); }

  .footer-grid {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  .footer-bottom {
    flex-direction: column;
    text-align: center;
  }

  .costs-table th:nth-child(3),
  .costs-table td:nth-child(3) { display: none; }

  .contact-grid { gap: 2rem; }

  .hero-stats { gap: 1.25rem; }
}

/* ─── Small mobile (≤ 480px) ────────────────────── */
@media (max-width: 480px) {
  .container { padding: 0 1.25rem; }
  .team-grid { grid-template-columns: 1fr; }
  .hero-actions { flex-direction: column; align-items: center; }
  .hero-actions a { width: 100%; justify-content: center; }
  .costs-calculator { padding: 1.5rem; }
  .contact-form { padding: 1.5rem; }
}
