/* Estilos comuns/utilitários - Deve ser carregado primeiro */
@font-face {
    font-family: 'ChunkFive';
    src: url('https://fonts.cdnfonts.com/s/17235/ChunkFive.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
.font-chunkfive {
    font-family: 'ChunkFive', serif;
}
.font-inter {
    font-family: 'Inter', sans-serif;
}
.font-open-sans {
    font-family: 'Open Sans', sans-serif;
}

.bg-custom-gray {
    background-color: #495965;
}

.bg-custom-dark-gray {
    background-color: #72808a;
}

.bg-custom-green {
    background-color: #346933;
}

.bg-custom-green:active,
.bg-custom-green:focus,
.bg-custom-green:hover {
    /* Define a cor de fundo (a mesma cor ou uma cor mais escura se quiser um feedback visual) */
    background-color: #346933; 
    /* Garante que a borda não mude (se o Bootstrap estiver aplicando uma cor de borda) */
    border-color: #346933;
}

.bg-custom-light-gray {
    background-color: #f4f4f4;
}

/* No seu arquivo style.css (ou similar) */
.btn-tema-custom {
    /* Define o novo background-color */
    background-color: #F4F4F4; 
    /* Garante que a cor da borda combine com o fundo */
    border-color: #F4F4F4; 
    /* Opcional: define uma cor de texto diferente, já que o fundo é claro */
    color: #333; 
}

/* Opcional: Define como o botão deve se comportar ao passar o mouse */
.btn-tema-custom:hover{
    background-color: #e0e0e0;
    border-color: #e0e0e0;
    color: #333;
}

/* Simula os valores de margem negativa do Bootstrap 5 */

/* Margem Negativa Média (Aproximadamente mt-n4) */
.mt-neg-medium {
    margin-top: -1.5rem; /* ~ -24px */
}

/* Margem Negativa Grande (Aproximadamente mt-n5) */
.mt-neg-large {
    margin-top: -3rem; /* ~ -48px */
}

/* Margem para o valor que você estava usando de -150px (Use com cautela!) */
.mt-neg-150 {
    margin-top: -90px; 
}

.text-custom-dark-gray {
    color: #55616c;
}

.text-custom-brown {
    color: #a7674c;
}

.text-custom-dark {
    color: #222222;
}

.shadow-custom {
    /* Mantenha o box-shadow longo em uma única linha para legibilidade */
    box-shadow: 0px 0px 0px 1px rgba(14,9,72,0.08), 0px 1px 2px 0px rgba(14,9,72,0.08), 0px 4px 10px 0px rgba(18,7,143,0.08), 0px 8px 12px 0px rgba(18,7,143,0.04);
}

body{
    min-width: 300px;
    font-family: 'Montserrat', 'Arial', sans-serif;
    font-weight: 400;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Montserrat', 'Arial', sans-serif;
    font-weight: 600;
}

.btn {
    font-family: 'Montserrat', 'Arial', sans-serif;
    font-weight: 600;
}

input, textarea, select {
    font-family: 'Montserrat', 'Arial', sans-serif;
}

.nav-link {
    color: #000 !important;
}

.nav-link.active {
    font-weight: bold;
}

.nav-logo-img {
    height: auto;
    max-height: 45px;
}

.nav-logo-text-1 {
    width: auto;
    
}

.nav-logo-text-2 {
    width: auto;
    
}

.navbar-brand {
    row-gap: 0.25rem !important;
}

/* Filter Wrapper - Espaçamento Flexbox */
.filter-wrapper {
    display: flex; 
    flex-wrap: wrap; 
    gap: 0.5rem; 
    position: relative;
}

/* Estilos específicos da Hero Section */

.hero-overlay {
    background-color: rgba(73, 89, 101, 0.8) !important;
}

.divider {
    height: 6px;
    background-color: #72808a;
    position: relative;
    z-index: 1;
}

.divider-footer {
    height: 12px;
    background-color: #72808a;
    position: relative;
    z-index: 1;
}

/* Estilos de Paginação */
.pagination-circle {
    width: 30px; 
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50% !important; 
    padding: 0; 
}

/* Estilos de Logo e Navbar */
.footer-logo-container {
    max-width: 450px;
    width: 90%;
}

/* Ajustes de layout para mobile */
@media (max-width: 992px) {
    .navbar-collapse {
        padding: 15px;
        border-radius: 10px;
        margin-top: 10px;
    }

    #navbarNav {
        z-index: 1030 !important; 
        top: 100% !important; 
    }

    .hero-title{
        margin-top: 9rem;
    }

    .display-4 {
        font-size: 2rem;
    }
}

@media (max-width: 768px) {
    .display-4 {
        font-size: 1.5rem;
    }

    .h1 {
        font-size: 1.75rem;
    }
}


@media (max-width: 576px) {
    .pagination .page-link {
        padding: 0.3rem 0.6rem;
        font-size: 0.9rem;
    }

    .pagination-next {
        width: 2rem;
        height: 2rem;
    }

    .display-4 {
        font-size: 1.25rem;
    }

    .h1 {
        font-size: 1.5rem;
    }
}

@media (max-width: 480px) {
    .hero-section div > nav > div{
        flex-direction: column;
        align-items: center;
    }

    .navbar-brand{
        flex-direction: column;
        margin: 0;
    }

    .navbar-brand div{
        align-items: center !important;
        margin: 0 !important;
    }

    .navbar > div{
        row-gap: 0.25rem !important;
    }

    .custom-scroll-nav {
        min-width: 250px;
        overflow-x: auto;
    }

    .hero-title{
        margin-top: 12rem;
    }
}