/* ============================================================
   responsive.css
============================================================ */

@media (max-width: 1024px) {
    .stats-grid        { grid-template-columns: repeat(2, 1fr); }
    .deportes-grid     { grid-template-columns: repeat(2, 1fr); }
    .equipo-stats-grid { grid-template-columns: repeat(2, 1fr); }
    .barra-item        { grid-template-columns: 120px 1fr; }
}

@media (max-width: 768px) {
    .navbar__nav       { display: none; }
    .navbar__hamburger { display: flex; }

    .navbar__nav.open {
        display: flex;
        flex-direction: column;
        position: fixed;
        top: var(--navbar-height); left: 0; right: 0;
        background: var(--navbar-bg);
        backdrop-filter: blur(20px);
        border-bottom: 1px solid var(--border-color);
        padding: var(--space-4);
        gap: var(--space-1);
        z-index: 999;
        animation: fadeInUp 0.2s ease;
    }

    .navbar__nav.open .navbar__link {
        width: 100%;
        padding: var(--space-3) var(--space-4);
    }

    .hero__title { font-size: clamp(2.5rem, 10vw, 3.5rem); }
    .sede-cards         { grid-template-columns: 1fr; }
    .partidos-home-grid { grid-template-columns: 1fr; }
    .stats-destacadas   { grid-template-columns: 1fr; }
    .deportes-grid      { grid-template-columns: 1fr 1fr; }

    .deporte-header {
        flex-direction: column;
        align-items: flex-start;
        padding: var(--space-5);
    }
    .deporte-header__title { font-size: var(--text-3xl); }

    .equipo-header { flex-direction: column; align-items: flex-start; padding: var(--space-5); }
    .equipo-stats-grid { grid-template-columns: repeat(2, 1fr); }

    .final-equipo__logo { width: 52px; height: 52px; }
    .final-score__number { font-size: var(--text-3xl); }

    .tabs { flex-wrap: wrap; }
    .tab-btn { flex: unset; font-size: var(--text-xs); padding: var(--space-2) var(--space-3); }

    .barra-item { grid-template-columns: 90px 1fr; }
    .barra-label { font-size: var(--text-xs); }
}

@media (max-width: 480px) {
    .container { padding: 0 var(--space-4); }
    .stats-grid { grid-template-columns: repeat(2, 1fr); gap: var(--space-3); }
    .deportes-grid { grid-template-columns: 1fr; }
    h1 { font-size: var(--text-4xl); }
    .section__title { font-size: var(--text-3xl); }

    .partido-card__logo { width: 40px; height: 40px; }
    .partido-card__marcador { font-size: var(--text-3xl); }
    .partido-card__nombre { font-size: 0.65rem; }

    .equipo-stats-grid { grid-template-columns: repeat(2, 1fr); gap: var(--space-3); }
    .stats-grid { grid-template-columns: 1fr 1fr; }
}