/* ==========================================
   RESPONSIVE - MÓVIL Y TABLET
   ========================================== */

/* Tablet */
@media (max-width: 992px) {
  .hero h1 {
    font-size: 2.5rem;
  }

  .hero p {
    font-size: 1.1rem;
  }

  .section-title {
    font-size: 2rem;
  }
}

/* Móvil */
@media (max-width: 768px) {
  .hamburger {
    display: flex;
  }

  .nav-menu {
    position: fixed;
    top: 70px;
    right: -100%;
    flex-direction: column;
    background-color: var(--blanco);
    width: 80%;
    max-width: 300px;
    height: calc(100vh - 70px);
    padding: 2rem;
    gap: 1.5rem;
    box-shadow: -4px 0 12px rgba(0, 0, 0, 0.1);
    transition: right 0.4s ease;
  }

  .nav-menu.active {
    right: 0;
  }

  .hero {
    padding: 4rem 0;
  }

  .hero h1 {
    font-size: 2rem;
  }

  .section {
    padding: 3rem 0;
  }

  .section-title {
    font-size: 1.8rem;
  }

  .formulario {
    padding: 1.5rem;
  }

  .tabla-cuotas {
    font-size: 0.9rem;
  }

  .tabla-cuotas th,
  .tabla-cuotas td {
    padding: 0.7rem;
  }
}

/* Móvil pequeño */
@media (max-width: 480px) {
  .hero h1 {
    font-size: 1.7rem;
  }

  .btn {
    padding: 0.7rem 1.5rem;
    font-size: 0.9rem;
  }
}
@media (max-width: 768px) {
  .contacto-grid {
    grid-template-columns: 1fr !important;
    gap: 2rem !important;
  }
}