/* ==============================
   RESPONSIVIDADE GERAL
============================== */

/* Garantir que todas as imagens sejam responsivas */
img {
    max-width: 100%;
    height: auto;
}

/* Container geral responsivo */
.container-header,
.bloco,
.destaque-ao-vivo {
    max-width: 100%;
    padding-left: 15px;
    padding-right: 15px;
}

@media (max-width: 1100px) {
    .container-header {
        padding: 0 15px;
    }

    .carrossel-texto {
        max-width: 60%;
        bottom: 20px;
        left: 20px;
        padding: 15px;
    }
}

/* ==============================
   TABLET
============================== */
@media (max-width: 900px) {

    /* Player */
    .player-container {
        height: 150px;
    }

    /* Notícias */
    .noticias-grid {
        grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
    }

    /* Carrossel principal */
    .hero-carrossel {
        width: 100%;
        overflow: hidden;
    }
    
    .carrossel-wrapper {
        height: 300px;
    }
    
    .carrossel-slide img {
        height: 300px;
        width: 100%;
        object-fit: contain;
    }
    
    /* Patrocinadores - Carrossel responsivo */
    .patrocinadores-wrapper {
        justify-content: center;
        flex-wrap: wrap;
    }
    
    .pat-card {
        width: 45%;
        min-width: 180px;
        max-width: 250px;
        height: 120px;
    }
    
    .pat-img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
}

/* ==============================
   MOBILE
============================== */
@media (max-width: 600px) {

    /* Logo */
    .logo-img {
        height: 48px;
        max-width: 100%;
        object-fit: cover;
    }

    /* Player */
    .player-container {
        height: 110px;
    }

    /* Carrossel - Totalmente responsivo */
    .hero-carrossel {
        width: 100%;
        overflow: hidden;
    }
    
    .carrossel-wrapper {
        height: 250px;
    }
    
    .carrossel-slide {
        width: 100%;
        height: 100%;
    }
    
    .carrossel-slide img {
        height: 250px;
        width: 100%;
        object-fit: contain;
        object-position: center;
    }

    .carrossel-texto {
        max-width: 90%;
        bottom: 10px;
        left: 10px;
        padding: 12px;
    }

    .carrossel-texto h2 {
        font-size: 18px;
        margin-bottom: 5px;
    }

    .carrossel-texto p {
        font-size: 14px;
    }

    /* Notícias */
    .noticias-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    /* Patrocinadores - Responsivo no mobile */
    .patrocinadores-carrossel {
        width: 100%;
        overflow: hidden;
        padding: 20px 0;
    }
    
    .patrocinadores-wrapper {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 15px;
    }
    
    .pat-card {
        width: 90%;
        max-width: 350px;
        height: 110px;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 10px;
    }
    
    .pat-img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    /* Chat */
    .chat-box {
        height: 260px;
    }
    
    /* Layout de 3 colunas vira vertical */
    .linha-3-col {
        flex-direction: column;
    }
    
    .col {
        width: 100% !important;
        max-width: 100% !important;
    }

    /* Rodapé */
    .rodape-container {
        flex-direction: column;
        text-align: center;
    }

    .rodape-col {
        min-width: 100%;
        margin-bottom: 20px;
    }

    .social-icons {
        justify-content: center;
        gap: 15px;
    }
    
    .social-icons a {
        font-size: 0 !important;
    }
}

/* ==============================
   MINI MOBILE (≤ 400px)
============================== */
@media (max-width: 400px) {

    .player-container {
        height: 100px;
    }

    /* Carrossel ainda menor */
    .carrossel-wrapper {
        height: 200px;
    }
    
    .carrossel-slide img {
        height: 200px;
        object-fit: contain;
    }

    .carrossel-texto {
        padding: 10px;
        bottom: 6px;
        left: 6px;
    }

    .carrossel-texto h2 {
        font-size: 16px;
    }
    
    .carrossel-texto p {
        font-size: 12px;
    }

    .chat-input-area button {
        padding: 8px;
        font-size: 14px;
    }
    
    /* Patrocinadores ainda mais compactos */
    .pat-card {
        width: 95%;
        height: 100px;
    }
}
