body {
    font-family: 'Poppins', sans-serif;
    font-weight: 400; /* peso normal */
    font-size: 14px;
}

.barra-topo {
    background-color: #002f6b;
    height: 40px;
    margin: 0; /* remove qualquer espaço */
}

.logo {
    width: 150px;
    height: auto;
}

.navbar-nav .nav-link {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    padding-left: 1rem !important;
    padding-right: 1rem !important;
}

.navbar-nav .nav-link:hover {
    color: #002f6b; 
}

.dropdown-menu .dropdown-item:hover {
    background-color: #fc8037 !important; /* Laranja institucional claro */
    color: #FFFFFF !important; /* Texto branco para dar contraste */
}
/* Estilização para o Nível 3 Desdobrável (Bootstrap v5) */
.level3-menu {
    background-color: #eee !important;
    padding-top: 4px;
    padding-bottom: 4px;
    margin-top: 2px;
    margin-bottom: 2px;
}

/* Recuo para os links internos do nível 3 */
.level3-menu .dropdown-item {
    padding-left: 2.5rem !important;
    font-size: 11px !important;
    font-weight: normal !important;
    color: #000 !important;
}

/* Efeito de Hover dentro do nível 3 */
    .level3-menu .dropdown-item:hover {
        background-color: #fc8037 !important; /* Inverte para o laranja escuro no hover */
        color: #fff !important;
    }

.dropdown-item.level3-toggle {
    display: flex !important;
    justify-content: space-between; /* Texto na esquerda, seta na direita */
    align-items: center; /* Alinha verticalmente no meio */
    gap: 15px; /* Garante um espaço seguro entre o texto e a seta */
}

/* Ajuste posicional para a setinha indicadora do Nível 2 */
    .dropdown-item.level3-toggle::after {
        margin: 0 !important; /* Limpa margens padrões do Bootstrap */
        display: inline-block;
        transform: rotate(-90deg); /* Aponta para o lado indicando que há mais coisas */
        transition: transform 0.2s ease;
    }

/* Gira a setinha para baixo quando o menu expandir */
    .dropdown-item.level3-toggle[aria-expanded="true"]::after {
        transform: rotate(0deg);
    }


/* Submenus */
.dropdown-menu .dropdown-item {
    font-size: 80%;
}

.bg-primary {
    background-color: #e96f28 !important;
}

.btn-primary {
    background-color: #e96f28 !important;
    border-color: #e96f28 !important;
}

.btn-primary:hover {
    background-color: #d15c1e !important;
    border-color: #d15c1e !important;
}

.barra-busca {
    width: 250px;
    padding: 5px 0;
}


.rodape {
    background-color: #f57c00;
    color: #fff;
    font-size: 80%;
    padding: 20px;
}


.rodape-colunas {
    display: flex;
    flex-wrap: wrap; /* Permite quebra para o mobile */
    justify-content: flex-start;
    gap: 40px; /* Espaço entre as 3 colunas */
}

.rodape-coluna {
    flex: 1; 
    /*min-width: 200px;*/
}

    .rodape ul,
    .rodape li {
        list-style: none !important;
        list-style-type: none !important;
        padding-left: 0 !important;
        margin-left: 0 !important;
    }
        .rodape li.menu-pai {
            margin-top: 25px; /* Espaço ANTES do bloco pai */
            margin-bottom: 10px; /* Espaço após o título pai antes dos filhos */
        }

    .rodape a {
        color: #fff;
        text-decoration: none;
        display: inline-block;
        padding: 2px 0;
    }

        .rodape a:hover {
            text-decoration: underline;
            opacity: 0.9;
        }

    .rodape li.menu-pai > a strong {
        font-size: 1.1em;
        text-transform: uppercase;
    }

    .rodape ul.submenu {
        margin-top: 5px;
        /*margin-bottom: 15px;*/
    }

    .rodape ul.submenu li {
        margin-bottom: 4px;
        font-weight: normal;
    }


/* =============================
   CONTAINER DA GALERIA
   ============================= */
.galeria_container {
    display: flex;
    flex-wrap: wrap; /* permite quebrar linha */
    gap: 0; /* sem espaços extras entre os itens */
    margin-top: 20px;
}

/* =============================
   ITEM DA GALERIA
   ============================= */
.galeria_imagem {
    width: 25%; /* 4 por linha no desktop */
    padding: 10px;
    box-sizing: border-box;
    display: block;
}

    /* =============================
   IMAGEM COM ALTURA FIXA
   ============================= */
    .galeria_imagem img {
        width: 100%;
        height: 180px; /* ALTURA PADRÃO */
        object-fit: cover; /* corta de forma elegante */
        display: block;
        border-radius: 4px;
        box-shadow: 0 4px 12px rgba(0,0,0,0.15);
        transition: all 0.3s ease;
    }

        /* hover */
        .galeria_imagem img:hover {
            transform: scale(1.03);
            box-shadow: 0 8px 20px rgba(0,0,0,0.25);
        }

/* =============================
   RESPONSIVO
   ============================= */

/* galeria tablets */
@media (max-width: 992px) {
    .galeria_imagem {
        width: 50%; /* 2 por linha */
    }

        .galeria_imagem img {
            height: 160px;
        }
}

/* galeria celulares */
@media (max-width: 576px) {
    .galeria_imagem {
        width: 100%; /* 1 por linha */
    }

        .galeria_imagem img {
            height: 200px; /* fica mais bonito no mobile */
        }
}

/* rodape em celulares */
@media (max-width: 768px) {
    .rodape-colunas {
        gap: 0px; /* Remove o espaçamento de 40px entre as colunas empilhadas */
    }

    .rodape-coluna {
        flex: 0 0 100%; /* Força cada coluna a ocupar 100% da largura, eliminando espaços vazios */
    }

        /* Opcional: Remove o espaço do primeiro item de cada coluna mobile 
       para manter o ritmo do margin-top idêntico ao menu contínuo */
        .rodape-coluna:not(:first-child) li.menu-pai:first-child {
            margin-top: 0px;
        }
}