/**
 * FISav - Responsive Styles
 * Media queries para diferentes tamaños de pantalla
 */

/* Tablet y Mobile */
@media (max-width: 991px) {
    /* Typography */
    :root {
        --h1-size: 32px;
        --h2-size: 28px;
        --h3-size: 22px;
        --h4-size: 18px;
    }
    
    /* Section padding */
    .section {
        padding: var(--section-padding-sm) 0;
    }
    
    /* Hero */
    .hero-section {
        height: 500px;
    }
    
    .hero-title {
        font-size: 36px;
    }
    
    .hero-subtitle {
        font-size: var(--font-size-md);
    }
    
    /* Grid */
    .col-md-3,
    .col-md-4,
    .col-md-6 {
        flex: 0 0 100%;
        max-width: 100%;
    }
}

/* Mobile */
@media (max-width: 768px) {
    /* Typography */
    :root {
        --h1-size: 28px;
        --h2-size: 24px;
        --h3-size: 20px;
        --font-size-base: 15px;
    }
    
    /* Container */
    .container {
        padding: 0 20px;
    }
    
    /* Hero */
    .hero-section {
        height: 400px;
    }
    
    .hero-title {
        font-size: 28px;
    }
    
    .hero-subtitle {
        font-size: var(--font-size-sm);
    }
    
    .hero-buttons {
        flex-direction: column;
    }
    
    .hero-buttons .btn {
        width: 100%;
    }
    
    /* Section title */
    .sec-title p {
        padding: 0;
    }
    
    /* Stats */
    .stat-item {
        margin-bottom: var(--spacing-md);
    }
    
    /* News card */
    .news-card {
        margin-bottom: var(--spacing-md);
    }
    
    /* Event card */
    .event-card {
        flex-direction: column;
        text-align: center;
    }
    
    .event-date {
        margin: 0 auto;
    }
    
    /* Filters */
    .news-filters,
    .results-filters {
        flex-direction: column;
    }
    
    .news-filters select,
    .news-filters input,
    .results-filters select {
        width: 100%;
        min-width: 100%;
    }
    
    /* Federation card */
    .federation-card {
        flex-direction: column;
        text-align: center;
    }
    
    .federation-logo {
        margin: 0 auto;
    }
    
    .federation-meta {
        justify-content: center;
    }
    
    /* Table */
    .table {
        font-size: var(--font-size-sm);
    }
    
    .table th,
    .table td {
        padding: 8px 4px;
    }
    
    /* Buttons */
    .btn,
    .thm-btn {
        padding: 10px 25px 8px;
        font-size: var(--font-size-xs);
    }
}

/* Small Mobile */
@media (max-width: 480px) {
    /* Typography */
    :root {
        --h1-size: 24px;
        --h2-size: 20px;
        --h3-size: 18px;
    }
    
    /* Hero */
    .hero-section {
        height: 350px;
    }
    
    .hero-title {
        font-size: 24px;
    }
    
    /* Stats */
    .stat-number {
        font-size: 36px;
    }
    
    .stat-item i {
        font-size: 36px;
    }
    
    /* Events tabs */
    .events-tabs {
        overflow-x: auto;
    }
    
    .events-tabs button {
        padding: 10px 16px;
        font-size: var(--font-size-sm);
        white-space: nowrap;
    }
    
    /* Continent filter */
    .continent-filter {
        gap: 8px;
    }
    
    .continent-filter button {
        padding: 8px 16px;
        font-size: var(--font-size-sm);
    }
    
    /* Error 404 */
    .error-404 h1 {
        font-size: 80px;
    }
}

/* Large Desktop */
@media (min-width: 1400px) {
    /* Container más ancho en pantallas grandes */
    .container {
        max-width: 1320px;
    }
}

/* Print styles */
@media print {
    .header,
    .footer,
    .mobile-menu-toggle,
    .back-to-top,
    .hero-buttons,
    .btn,
    .social-links {
        display: none !important;
    }
    
    body {
        font-size: 12pt;
        line-height: 1.5;
        color: #000;
    }
    
    .container {
        max-width: 100%;
    }
    
    a {
        color: #000;
        text-decoration: underline;
    }
}
