/* =========================================================================
   global.css - Estilos Base do Site
   ========================================================================= */

/* 1. Variáveis Globais (Padronizadas com diretoria.css) */
:root {
    /* Cores Institucionais */
    --primary-blue: #0056b3;  /* Era --primary */
    --dark-blue:    #003366;  /* Era --dark */
    --accent:       #E1306C;  /* Cor de destaque (ex: Instagram/Avisos) */
    
    /* Cores Base */
    --light-bg:     #f4f7f6;  /* Era --light */
    --white:        #ffffff;
    
    /* Texto */
    --text-color:   #333333;  /* Era --text */
    --text-light:   #666666;
    
    /* Utilitários */
    --border-radius: 8px;
    --shadow: 0 4px 6px rgba(0,0,0,0.1);
}

/* 2. Reset Básico */
* { margin: 0; padding: 0; box-sizing: border-box; }

body { 
    font-family: 'Open Sans', sans-serif; 
    background-color: var(--light-bg); 
    color: var(--text-color); 
    line-height: 1.6; 
    /* Garante que o footer fique no fim mesmo com pouco conteúdo */
    display: flex; 
    flex-direction: column; 
    min-height: 100vh; 
}

a { text-decoration: none; color: inherit; transition: 0.3s; }
ul { list-style: none; }

/* 3. Header & Navegação */
header { 
    background-color: var(--white); 
    box-shadow: 0 2px 10px rgba(0,0,0,0.1); 
    position: sticky; 
    top: 0; 
    z-index: 1000; 
}

.header-container { 
    max-width: 1200px; 
    margin: 0 auto; 
    padding: 1rem; 
    display: flex; 
    justify-content: space-between; 
    align-items: center; 
}

/* Ajuste da Logo para aceitar Texto e Imagem */
.logo { 
    font-size: 1.5rem; 
    font-weight: 800; 
    color: var(--primary-blue); 
    text-transform: uppercase; 
    display: flex;       /* Alinha imagem e texto */
    align-items: center; 
    gap: 10px;           /* Espaço entre img e texto */
}

/* Caso a logo seja uma imagem, limitamos a altura */
.header-logo-img {
    height: 40px;
    width: auto;
}

/* Menu Desktop */
.nav-menu { display: flex; gap: 15px; flex-wrap: wrap; }

.nav-menu a { 
    font-size: 0.9rem; 
    font-weight: 600; 
    padding: 0.5rem 0.8rem; 
    border-radius: 4px; 
    color: var(--text-color);
}

.nav-menu a:hover, .nav-menu a.active { 
    background-color: var(--primary-blue); 
    color: var(--white); 
}

/* Botão Mobile (Hambúrguer) */
.mobile-btn { 
    display: none; 
    font-size: 1.5rem; 
    background: none; 
    border: none; 
    cursor: pointer; 
    color: var(--primary-blue); 
}

/* 4. Rodapé */
footer { 
    background-color: var(--dark-blue); 
    color: var(--white); 
    text-align: center; 
    padding: 2rem 1rem; 
    margin-top: auto; /* Empurra o footer para baixo */
}

/* 5. Responsividade Global */
@media (max-width: 900px) {
    .mobile-btn { display: block; }
    
    .nav-menu { 
        display: none; 
        flex-direction: column; 
        position: absolute; 
        top: 100%; 
        left: 0; 
        width: 100%; 
        background-color: var(--white); 
        padding: 1rem; 
        box-shadow: 0 5px 10px rgba(0,0,0,0.1); 
        text-align: center; 
    }
    
    .nav-menu.active { display: flex; }
    
    .nav-menu a { 
        border-bottom: 1px solid #eee; 
        padding: 15px; /* Mais fácil de clicar com o dedo */
    }
}