/* ============================================================
   TABLET  (≤ 900px)
   ============================================================ */
@media (max-width: 900px) {
    .nav__links { display: none; flex-direction: column; position: fixed; inset: 0; background: var(--black); justify-content: center; align-items: center; gap: 2.5rem; z-index: 999; }
    .nav__links.open { display: flex; animation: fadeUp .35s var(--ease-out-expo); }
    .nav__link { font-size: 1.1rem; }
    .nav__hamburger { display: flex; z-index: 1001; }

    .hero__stats { position: static; flex-direction: row; justify-content: flex-start; gap: 2.5rem; margin-top: 3rem; }
    .hero { flex-direction: column; justify-content: flex-end; padding-bottom: 5rem; }
    .hero__content { max-width: 100%; }

    .nosotros__grid { grid-template-columns: 1fr; gap: 3rem; }
    .nosotros__visual { height: 320px; order: 2; }

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

    .horarios__grid { grid-template-columns: 1fr; }

    .coaches__grid { grid-template-columns: 1fr 1fr; }

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

    .tarifas__grid--4 { grid-template-columns: repeat(2, 1fr); }
    .tarifas__grid--2 { max-width: 100%; }
    .promo__tiers { grid-template-columns: 1fr; }

    .contacto__grid { grid-template-columns: 1fr; gap: 3rem; }
    .contacto__map iframe { min-height: 340px; }

    .footer__inner { grid-template-columns: 1fr 1fr; gap: 2.5rem; }
}

/* ============================================================
   MOBILE  (≤ 600px)
   ============================================================ */
@media (max-width: 600px) {
    :root { --section-pad: 4rem; }

    .hero__title { font-size: clamp(3.5rem, 16vw, 5rem); }
    .hero__stats { flex-direction: column; gap: 1.25rem; }
    .hero__ctas { flex-direction: column; }
    .hero__ctas .btn { width: 100%; justify-content: center; }

    .clases__grid { grid-template-columns: 1fr; }
    .coaches__grid { grid-template-columns: 1fr; }
    .instalaciones__grid { grid-template-columns: 1fr; }
    .tarifas__grid--4,
    .tarifas__grid--2 { grid-template-columns: 1fr; }


    .footer__inner { grid-template-columns: 1fr; }

    .phone-card { padding: 1rem 1.1rem; gap: .75rem; }
    .phone-card__number { font-size: 1.1rem; }
    .phone-card--whatsapp .phone-card__number { font-size: .95rem; }

    .cursor, .cursor-follower { display: none; }
}

/* ============================================================
   FIXES MÓVIL
   ============================================================ */
@media (max-width: 600px) {
    /* Bajar el scroll-hint para que no se monte sobre las stats */
    .hero__scroll-hint {
        bottom: 0;
    }
}

/* Menú abierto: fondo siempre negro sólido aunque el nav tenga scrolled */
@media (max-width: 900px) {
    .nav.scrolled .nav__links.open {
        background: var(--black);
        backdrop-filter: none;
    }
}

/* Ocultar estrellas decorativas en móvil */
@media (max-width: 600px) {
    .hero__bg-strokes .stroke { display: none; }
}
