/* ==========================================
   ARQUIVO: cineclubes.css
   ESTILOS ESPECÍFICOS PARA A PÁGINA CINECLUBES
   ========================================== */

/* ESTILO DO MAPA DE CINECLUBES */
.map-section {
    background-color: var(--cor-fundo);         /* COR DE FUNDO DA SEÇÃO */
    border-radius: 8px;                      /* BORDAS ARREDONDADAS */
    padding: 30px;                           /* ESPAÇAMENTO INTERNO */
    margin-bottom: 30px;                     /* ESPAÇO ABAIXO DA SEÇÃO */
    box-shadow: var(--sombra);               /* SOMBRA PADRÃO */
}

/* TÍTULO DA SEÇÃO DO MAPA */
.map-section h2 {
    color: var(--verde-escuro);              /* COR DO TÍTULO */
    margin-top: 0;                           /* REMOVE MARGEM SUPERIOR */
    margin-bottom: 20px;                     /* ESPAÇO ABAIXO DO TÍTULO */
    display: flex;                           /* LAYOUT FLEXÍVEL */
    align-items: center;                     /* ALINHA ITENS VERTICALMENTE */
    gap: 10px;                              /* ESPAÇO ENTRE ÍCONE E TEXTO */
}

/* CONTAINER RESPONSIVO PARA O MAPA DO GOOGLE */
.map-container {
    position: relative;                      /* POSICIONAMENTO RELATIVO */
    padding-bottom: 56.25%;                  /* PROPORÇÃO 16:9 PARA O MAPA */
    height: 0;                               /* ALTURA ZERO PARA ASPECT RATIO */
    overflow: hidden;                        /* ESCONDE CONTEÚDO EXCEDENTE */
    max-width: 100%;                         /* LARGURA MÁXIMA */
    background: var(--cor-fundo);          /* COR DE FUNDO ENQUANTO CARREGA */
}

/* IFRAME DO MAPA */
.map-container iframe {
    position: absolute;                      /* POSICIONAMENTO ABSOLUTO */
    top: 0;
    left: 0;
    width: 100%;                            /* OCUPA TODA A LARGURA */
    height: 100%;                           /* OCUPA TODA A ALTURA */
}

/* LISTA DE EXEMPLOS COM ÍCONES */
.example ul {
    list-style: none;                        /* REMOVE MARCADORES PADRÃO */
    padding: 0;                              /* REMOVE PADDING PADRÃO */
}

/* ITENS DA LISTA DE EXEMPLOS */
.example li {
    padding: 8px 0;                          /* ESPAÇAMENTO VERTICAL */
    border-bottom: 1px solid var(--cinza-claro);  /* LINHA DIVISÓRIA */
    position: relative;                      /* PARA POSICIONAR O ÍCONE */
    padding-left: 25px;                      /* ESPAÇO PARA O ÍCONE */
}

/* ÍCONE ANTES DOS ITENS DA LISTA */
.example li:before {
    content: "▶";                            /* ÍCONE DE SETA */
    color: var(--verde-ifmg);                /* COR DO ÍCONE */
    position: absolute;                      /* POSICIONAMENTO ABSOLUTO */
    left: 0;                                 /* ALINHA À ESQUERDA */
}

/* ESTILOS PARA ACORDEÕES DO BOOTSTRAP */
.accordion-item {
    background-color: var(--cor-fundo);
    border-radius: 8px;
    box-shadow: var(--sombra);
    margin-bottom: 30px;
    padding: 20px;
    transition: var(--transicao);
}

.accordion-item:hover {
    transform: translateY(-8px);
    box-shadow: 0 15px 25px rgba(0,0,0,0.2);
}

.accordion-button {
    background-color: transparent;
    color: var(--verde-escuro);
    font-weight: bold;
    border-bottom: 2px solid var(--verde-ifmg);
    padding: 0 0 10px 0; /* Top, Right, Bottom, Left */
    border-radius: 0;
    border: none;
    font-size: 1.2em;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: flex-start; /* Alinha o conteúdo à esquerda */
}

.accordion-button:not(.collapsed) {
    background-color: transparent;
    color: var(--verde-escuro);
}

.accordion-button:focus {
    box-shadow: none;
    border-color: transparent;
}

.accordion-body {
    padding: 20px;
}

/* ESTILOS PARA DESTAQUES QUADRADOS DENTRO DOS ACORDEÕES */
.destaque-quadrado-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 20px;
    margin-top: 20px;
}

.destaque-quadrado {
    background-color: var(--cinza-medio);
    padding: 20px;
    border-radius: 8px;
    text-align: center;
    box-shadow: var(--sombra-leve);
}

.destaque-quadrado i {
    font-size: 2.5em;
    color: var(--verde-ifmg);
    margin-bottom: 10px;
}

.destaque-quadrado h4 {
    color: var(--verde-escuro);
    margin-bottom: 10px;
}

.destaque-quadrado p {
    font-size: 0.9em;
    color: var(--cinza-escuro);
}

.destaque-quadrado h3 a {
    color: var(--verde-ifmg);
    text-decoration: none;
    font-weight: bold;
    display: inline-flex;
    align-items: center;
    margin-top: 10px;
}

.destaque-quadrado h3 a i {
    margin-right: 5px;
    font-size: 1em;
}

.destaque-quadrado h3 a:hover {
    text-decoration: underline;
}

.btn-animado {
    display: inline-block;
    background-color: var(--verde-ifmg);
    color: var(--branco);
    padding: 8px 15px;
    border-radius: 4px;
    text-decoration: none;
    transition: var(--transicao);
    margin-top: 10px;
}

.btn-animado:hover {
    background-color: var(--verde-escuro);
    transform: scale(1.05);
    color: var(--branco);
}

.btn-animado i {
    margin-right: 5px;
}

.accordion-button::after {
    display: none;
}

.accordion-button i {
    margin-right: 10px;
}

.expand-icon {
    margin-left: auto;
    transition: transform 0.3s ease;
}

.accordion-button:not(.collapsed) .expand-icon {
    transform: rotate(180deg);
}

/* MEDIA QUERIES PARA RESPONSIVIDADE */
    .destaque-quadrado-grid {
        grid-template-columns: 1fr;
    }
