/* ============================================
   Responsive - Media queries para dispositivos
   Tablets (≤991px): menú hamburguesa, grids de
   2-3 columnas, footer apilado.
   Móviles (≤767px): grids de 1-2 columnas,
   padding reducido, elementos ajustados.
   ============================================ */

@media (max-width: 991px) {
    .nav-toggle { display: block; }
    .nav-menu {
        position: fixed; top: 0; right: -100%; width: 280px; height: 100vh;
        background: var(--dark); flex-direction: column; padding: 80px 30px 30px;
        transition: var(--transition); gap: 0;
    }
    .nav-menu.active { right: 0; }
    .nav-link { padding: 14px 0; border-bottom: 1px solid rgba(255,255,255,0.1); width: 100%; }
    .experience-grid { grid-template-columns: repeat(2, 1fr); }
    .events-grid { grid-template-columns: repeat(2, 1fr); }
    .formats-grid { grid-template-columns: repeat(2, 1fr); }
    .extra-grid { grid-template-columns: repeat(3, 1fr); }
    .why-grid { grid-template-columns: repeat(2, 1fr); }
    .gallery-grid { grid-template-columns: repeat(3, 1fr); }
    .testimonials-grid { grid-template-columns: 1fr; }
    .contact-grid { grid-template-columns: 1fr; }
    .footer-content { grid-template-columns: 1fr; text-align: center; }
    .social-icons { justify-content: center; }
}
@media (max-width: 767px) {
    .section { padding: 60px 0; }
    .experience-grid { grid-template-columns: 1fr; }
    .events-grid { grid-template-columns: 1fr; }
    .formats-grid { grid-template-columns: 1fr; }
    .extra-grid { grid-template-columns: repeat(2, 1fr); }
    .why-grid { grid-template-columns: 1fr; }
    .gallery-grid { grid-template-columns: repeat(2, 1fr); }
    .hero-buttons { flex-direction: column; align-items: center; }
    .whatsapp-float { bottom: 20px; right: 20px; }
    .scroll-top { right: 90px; bottom: 20px; }
}
