/* ========== DECLARAÇÃO DE FONTES LOCAIS DEFINITIVA (WOFF2 + WOFF) ========== */
@font-face {
    font-family: 'Greycliff CF';
    src: url('fonts/greycliff_cf_regular-webfont.woff2') format('woff2'),
         url('fonts/greycliff_cf_regular-webfont.woff') format('woff');
    font-weight: 200; /* Regular: textos corridos */
    font-style: normal;
}

@font-face {
    font-family: 'Greycliff CF';
    src: url('fonts/greycliff_cf_medium-webfont.woff2') format('woff2'),
         url('fonts/greycliff_cf_medium-webfont.woff') format('woff');
    font-weight: 300; /* Medium: caixas altas / botões */
    font-style: normal;
}

@font-face {
    font-family: 'Greycliff CF';
    src: url('fonts/greycliff_cf_demi_bold-webfont.woff2') format('woff2'),
         url('fonts/greycliff_cf_demi_bold-webfont.woff') format('woff');
    font-weight: 400; /* Demi Bold: títulos, subtítulos e tags strong/b */
    font-style: normal;
}

/* Espelho de compatibilidade para chamadas escritas com hífen */
@font-face {
    font-family: 'greycliff-cf';
    src: url('fonts/greycliff_cf_regular-webfont.woff2') format('woff2'),
         url('fonts/greycliff_cf_regular-webfont.woff') format('woff');
    font-weight: 200;
}
@font-face {
    font-family: 'greycliff-cf';
    src: url('fonts/greycliff_cf_medium-webfont.woff2') format('woff2'),
         url('fonts/greycliff_cf_medium-webfont.woff') format('woff');
    font-weight: 300;
}
@font-face {
    font-family: 'greycliff-cf';
    src: url('fonts/greycliff_cf_demi_bold-webfont.woff2') format('woff2'),
         url('fonts/greycliff_cf_demi_bold-webfont.woff') format('woff');
    font-weight: 400;
}

/* 
   BWE LANDING PAGE 
  
   Cores Oficiais:
   Azul claro: #28b1cf
   Verde: #80b741
   Amarelo ícones (mais escuro): #eec22a
   Amarelo linha rodapé: #ffda12
   Azul escuro: #0e247a
   Cinza textos: #585757

   Regular: font-weight: 200
   Medium: font-weight: 300
   Demibold: font-weight: 400
*/


:root {
    --blue-dark: #0e247a;
    --cyan: #28b1cf;
    --green: #80b741;
    --yellow: #ffda12;
    --gray-text: #585757; 
    --light-bg: #F8F9FA;
    --white: #FFFFFF;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;   
    color: var(--gray-text);
    line-height: 1.6;
    font-weight: 200; /* Regular */
    background-color: var(--white);
    font-size: 20px !important; 
}

h2 {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;    
    font-size: 60px !important; 
    font-weight: 400 !important; /* Demi bold */
    color: var(--blue-dark);
    text-align: center;
    line-height: 1.2;
    margin: 20px auto 60px auto !important; /* O auto centraliza a caixa inteira na tela */
}

h3 {
    color: var(--gray-text) !important; /* Corrigido de grey-dark para gray-text */
    margin-bottom: 30px;
    text-align: center;
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;    
    font-size: 30px !important; 
    font-weight: 400 !important; /* Demi bold */
    margin: 30px auto 50px auto !important; /* O auto centraliza a caixa inteira na tela */

}

p {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;      
    font-size: 20px !important; 
    color: var(--gray-text);
    line-height: 1.6;
    text-align: center; 
    max-width: 700px; 
    margin-bottom: 1.5rem;
    margin-left: auto !important;  /* Garante que o bloco fique centralizado */
    margin-right: auto !important; /* Garante que o bloco fique centralizado */
    font-weight: 200; /* Regular */
}

.container {
    width: 100% !important;
    max-width: 1280px !important; 
    margin: 0 auto !important;
    padding: 0 20px !important;    
    box-sizing: border-box !important;
}

header .container.header-wrapper {
    padding-right: 60px !important; 
}

strong, b {
font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;   
font-weight: 400; 
    color: inherit;
}

.text-uppercase-medium {
    font-weight: 300; 
    text-transform: uppercase;
    letter-spacing: 1px; 
}


/* ========== HEADER ========== */

header {
    background: var(--white);
    padding: 0 auto 40px !important;
    position: relative;
    z-index: 100;
    width: 100% !important;
}

.header-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
}

header .container.header-wrapper {
    max-width: 100% !important; /* <--- MUDADO: Libera para ocupar 100% da tela */
    width: 100% !important;
    
    /* Espaçamento interno elegante para a logo e o menu respirarem nas pontas da tela */
    padding-left: 60px !important;  /* <--- Afasta a logo da borda esquerda do monitor */
    padding-right: 60px !important; /* <--- Afasta o menu/idioma da borda direita do monitor */
    
    display: flex !important;
    justify-content: space-between !important; /* <--- Empurra a logo para a esquerda e o menu para a direita */
    align-items: stretch !important;
    box-sizing: border-box !important;
}

.header-left {
    display: flex;
    flex-direction: column;
    gap: 5px;
    justify-content: center !important; 
}

header, 
.navbar {
    padding: 20px 0 !important;         
    background: var(--white) !important;
}

.logo img, 
.navbar-brand img,
header .container img {
    width: auto !important;
    height: auto !important;
    max-height: 95px !important;       
    max-width: 280px !important;        
    object-fit: contain !important;     
    transition: all 0.3s ease !important;
    display: inline-block !important;
}

.header-right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    margin-right: 0 !important;
    gap: 0 !important; 
    justify-content: flex-start !important;
}

nav {
    display: block !important; /* Volta ao padrão original */
    width: auto !important;
    padding: 0 !important;
    margin-bottom: 20px !important; /* <--- Aumenta o espaço vertical ENTRE o menu e a frase azul */
}

nav a {
    text-decoration: none;
    color: var(--gray-text);
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-weight: 400 !important; /* Demi bold conforme pedido */
    margin-left: 34px;
    font-size: 20px !important; 
}

nav a:first-of-type {
    margin-left: 0 !important;     /* <--- COLA O 'SOBRE' NO LIMITE DA ESQUERDA DO BLOCO */
}

.header-subtitle {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 16px !important;
    color: var(--blue-dark);
    font-weight: 200; /* Regular */
    width: auto !important;
    max-width: 100% !important;            /* <--- TRAVA DE COMPATIBILIDADE */
    text-align: right !important;          
    margin-top: auto !important; /* <--- Empurra a frase cirurgicamente para alinhar com o fundo do logotipo */
    padding-bottom: 0 !important; /* Ajuste fino de linha */
    white-space: nowrap !important; /* Impede a quebra de linha errada */
}

nav a:hover {
    color: var(--cyan);
}


/* ========== TOPO - ÁREA 1: HERO COM BOX ========== */

.hero-section {
    background: url('./img/hero01.jpg') no-repeat center bottom;
    background-size: cover;
    height: auto !important;             /* <--- MUDADO: Não trava em 100vh fixo no mobile */
    min-height: 650px !important;        /* <--- REDUZIDO: Evita que o fundo estoure em notebooks */
    width: 100%;    
    display: flex;
    align-items: center;
    justify-content: center;             /* <--- Centraliza o bloco em telas menores */
    position: relative;
    padding: 80px 20px !important;       
    color: var(--white);
    overflow: hidden !important;    
}

.hero-box {
    position: relative !important;       /* <--- Flexibilidade em vez de absolute rígido */
    top: 0 !important;
    transform: none !important;
    width: 100% !important;
    max-width: 580px !important;         /* <--- Caixa controlada */
    background: rgba(0, 0, 0, 0.4) !important; /* <--- Dá leitura ao texto branco sobre a foto */
    padding: 40px !important;
    border-radius: 12px;
    z-index: 2;                  
    box-shadow: none !important;
    text-align: center !important;       /* <--- Melhor leitura no celular */
}

.hero-box h1 {
    font-size: calc(26px + 1vw) !important; /* <--- Fonte fluida que diminui sozinha */
    font-weight: 300 !important;   
    line-height: 1.2;
    margin-bottom: 250px;
    color: var(--white); 
    margin-top: 0;
}

/* Quando a tela for grande (Desktop), o Hero volta para a direita */
@media (min-width: 992px) {
    .hero-section {
        height: 85vh !important;
        min-height: 750px !important;
        justify-content: flex-end;
        padding-right: 10% !important;
    }
    .hero-box {
        position: absolute !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        background: transparent !important;
        text-align: right !important;
        padding-right: 0 !important;
    }
}


/* ========== ÁREA 2: CONTEÚDO FUNDO BRANCO ========== */

img { 
    width: 100%; 
    height: auto; 
    display: block; 
    margin: 0 auto; 
    max-height: 100%; 
}

.wedge-section {
    display: block !important;       /* Força comportamento de bloco isolado */
    width: 100% !important;         
    float: none !important;
    clear: both !important;          
    position: relative;
    background: var(--white);
    padding: 20px 0 80px;           
    text-align: center;
    margin-top: 0px !important;  
    z-index: 10;
	max-width: 1280px !important;    

}

.wedge-content {
    position: relative;
    z-index: 2;
    width: 100% !important;
    max-width: 700px !important;    
    margin: 0 auto !important;       
}

.wedge-content h3 {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 30px !important;         
    font-weight: 400 !important;        /* Demi Bold */
    color: #585757 !important;          /* Cinza oficial */
    text-align: center !important;
    line-height: 1.3 !important;
    max-width: 420px !important;        /* <--- Força "a energia eólica no Brasil" a ir para a segunda linha sozinha */
    margin: 30px auto 50px auto !important; /* O auto centraliza a caixa inteira na tela */
}

.wedge-content p {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    color: var(--gray-text);
    max-width: 780px !important;     
    margin: 0 auto 25px auto !important; 
    text-align: center !important;   
    line-height: 1.6;
    font-size: 16px;
}

.buttons-group {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 40px !important;            /* <--- AUMENTADO DE 20px PARA 40px: Garante o distanciamento elegante entre os blocos */
    margin-top: 60px !important;    /* Afasta simetricamente do parágrafo de cima */
    flex-wrap: wrap !important;
    width: 100% !important;
}

.btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    
    /* Cores e Fundos */
    background: transparent !important;       
    border: 2px solid #28b1cf !important;     
    color: #585757 !important;                
    
    /* Tipografia (Idêntica ao Print) */
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 15px !important; 
    font-weight: 300 !important; /* Medium */
    text-transform: uppercase !important;     
    letter-spacing: 1.5px !important;     
    text-decoration: none !important;         
    
    /* Formato e Espaçamento Interno */
    padding: 14px 35px !important;            
    border-radius: 12px !important;           
    
    /* Transição suave para o efeito de passar o mouse */
    transition: all 0.3s ease !important;
    cursor: pointer !important;
}

/* Efeito sutil ao passar o mouse por cima (Inverte a cor) */
.btn:hover {
    background: #28b1cf !important;
    color: #FFFFFF !important;
}

/* Limpeza de classes conflitantes antigas */
.btn-primary {
    background: transparent !important;
    color: #585757 !important;
    border-color: #28b1cf !important;
}

.btn-primary:hover {
    background: #28b1cf !important;
    color: #FFFFFF !important;
}

/* ========== ÁREA 3: IMAGEM DESTAQUE ========== */
.panorama-section {
    width: 100% !important; 
    clear: both !important; 
    display: block !important; 
    margin: 0 auto !important; 
    padding: 0 !important; 
    position: relative !important; 
    height: auto !important;
	max-width: 100% !important;        
}

.panorama-section img {
    width: 100% !important;
    height: auto !important;           /* <--- Garante que a altura mude proporcionalmente com a largura */
    max-height: none !important;        /* <--- MUDADO: Arranca o teto de 500px e deixa a foto respirar */
    object-fit: contain !important;        /* <--- MUDADO: Garante que o arquivo seja exibido na íntegra sem cortes de zoom */
    display: block !important;
}

 

/* ========== ÁREA 4: PARCERIAS ========== */


.parcerias-section {
    display: block !important;       /* Força a seção a se comportar como um bloco completo */
    width: 100% !important;          /* Ocupa toda a largura horizontal da tela */
    float: none !important;          /* Mata qualquer float herdado que empurre para os lados */
    clear: both !important;
    position: relative;
    background: var(--white);
    padding: 80px 0 60px;
    text-align: center;
    margin-top: 60px;
    z-index: 10;
	max-width: 1280px !important;    

}

.parcerias-section .container {
    max-width: 700px !important;    
    margin: 0 auto !important;       
    padding: 0 20px !important;
    float: none !important;          
}

.parcerias-content {
    position: relative;
    z-index: 2;
    width: 100% !important;
    max-width: 700px !important;    
    margin: 0 auto !important;
    float: none !important;
    text-align: center !important;
}

.parcerias-content p {
    text-align: center !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.parcerias-section h2 {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 60px !important;    
    color: #0e247a !important;     
    font-weight: 400 !important;   
    text-align: center !important;
    margin: 20px auto 60px auto !important; /* O auto centraliza a caixa inteira na tela */
    line-height: 1.2 !important;
}

.parcerias-section h3,
.parcerias-section .subtitle {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 30px !important;
    font-weight: 400 !important;
    color: #585757 !important;
    text-align: center !important;
    line-height: 1.3 !important;
    max-width: 420px !important;       /* <--- TRAVA CIRÚRGICA: Força "para investidores globais" a ir para a segunda linha */
        margin: 30px auto 50px auto !important; /* O auto centraliza a caixa inteira na tela */

}


/* ========== SEÇÕES GERAIS ========== */
section {
    padding: 80px 0;
}

/* ========== SOBRE O PROGRAMA ========== */
.sobre-section {
    background: var(--light-bg);
}

.foco-content {
    position: relative !important;
    z-index: 2 !important;
    clear: both !important; 
    display: block !important; 
    float: none !important;
    text-align: center !important; 
    width: 100% !important;
}

.foco-content > p {
    text-align: center !important;
    margin: 0 auto 20px auto !important;
}

.triangles-container {
    display: flex;
    justify-content: center;
    gap: 0;
    margin: 100px 0 50px 0;
}

.sobre-section h2 {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 60px !important;    
    color: #0e247a !important;     
    font-weight: 400 !important;   
    text-align: center !important;
    margin: 20px auto 60px auto !important; /* O auto centraliza a caixa inteira na tela */
    line-height: 1.2 !important;
}

.sobre-section > .container > p,
.sobre-section p:not(.resource-card p) {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 20px !important;       
    font-weight: 300 !important;        /* Regular */
    color: var(--gray-text) !important;
    text-align: center !important;      
    max-width: 700px !important;        
    margin: 0 auto 40px auto !important; 
    line-height: 1.6 !important;
}

.triangles-container img {
    width: 966px !important;    
    max-width: 100% !important; 
    height: auto !important;
}

.resources-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
    width: 100%;
    max-width: 1280px !important;	
    margin: 60px auto 100px auto !important;  
    padding: 0 40px !important;          
    box-sizing: border-box !important;
}

.resource-card {
    background: transparent;
    display: flex !important;
    flex-direction: column !important;      
    align-items: center !important;         
    text-align: center !important;
}

.resource-card img {
    width: auto !important;           
    height: auto !important;          /* <--- Limpa as duas alturas conflitantes antigas */
    max-width: 100% !important;       /* <--- Teto de segurança para o mobile */
    display: block !important;
    
    object-fit: none !important;      /* <--- Impede o navegador de esmagar o ícone */
    margin-bottom: 25px !important;
    margin-left: auto !important;     /* Garante a centralização */
    margin-right: auto !important;    /* Garante a centralização */
}

.resource-card p {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 20px !important;           
    color: var(--grey-text) !important; 
    font-weight: 200 !important;        
    line-height: 1.15 !important;
    margin: 0 auto !important;
    padding: 0 !important;
    max-width: 280px !important;
    margin-top: 15px !important;
}

.foco-grid {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important; 
    gap: 30px !important;                             
    margin: 40px auto !important;                     
    max-width: 900px !important;                     
    width: 100% !important;
    line-height: 1.15 !important;
}

.foco-card {
    background: transparent !important;               
    background-color: transparent !important;
    border: none !important;                          
    box-shadow: none !important;                        
    overflow: hidden;
    display: flex !important;          
    flex-direction: column !important;
    align-items: center !important;                   
    height: max-content;   
    padding: 0 !important;                         
}

.foco-card img {
    width: 100% !important;
    max-width: 420px !important;    /* Mantém o limite de largura para casar com o grid de 2 colunas */
    height: auto !important;         /* <--- MUDADO: Deixa a altura livre para mostrar a proporção real da foto */
    object-fit: contain !important;  /* <--- MUDADO: Garante que a foto inteira apareça sem nenhum corte de "zoom" */
    border-radius: 8px !important;   
    display: block !important;
    margin: 0 auto !important;
}

.foco-card p {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    padding: 15px 20px 0 20px !important;             
    font-size: 20px !important;                       
    color: var(--grey-text) !important;               
    font-weight: 200 !important;                      
    text-align: center !important;                   
    margin: 0 !important;                             
    line-height: 1.1 !important;
}


/* ========== PROPOSTA DE VALOR ========== */


.proposta-section {
    display: block !important;
    width: 100% !important;
    background: #FFFFFF !important; 
    padding-top: 40px !important;    
    margin-top: 0px !important;
    position: relative !important;
    margin-bottom: 0 !important;
    padding-bottom: 80px !important; 
 clear: both !important;
    float: none !important;
}

.proposta-section h2 {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 60px !important;    
    color: #0e247a !important;     
    font-weight: 400 !important;   
    text-align: center !important;
    margin: 20px auto 60px auto !important; /* O auto centraliza a caixa inteira na tela */
    line-height: 1.2 !important;
}

.proposta-section h3 {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 30px !important;
    color: #585757 !important; /* Cinza oficial */
    font-weight: 300 !important; /* Versão Medium */
    text-align: center !important;
        margin: 30px auto 50px auto !important; /* O auto centraliza a caixa inteira na tela */

}

.proposta-section p {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 20px !important;
    color: #585757 !important;
    text-align: center !important; 
    max-width: 600px !important;     
    margin: 0 auto 50px auto !important; 
    line-height: 1.5 !important;

}

.value-band {
    display: block !important;              
    position: relative !important;          
    height: 600px !important;               
    margin-top: -65px !important;          
    margin-bottom: 0px !important;
    padding: 0px !important;                
    overflow: visible !important;           
}

.value-band:first-of-type {
    margin-top: 0px !important;
}

.value-band-img {
    width: 100% !important;
    height: 120% !important;                
    position: absolute !important;          
    top: 0 !important;
    left: 0 !important;
    z-index: 1 !important;                  
    background-size: cover !important;      
    background-position: center center !important;
    vertical-align: bottom !important;      
}

.value-band-text {
    position: absolute !important;          
    top: 55% !important;                   
    right: 12% !important;                  
    transform: translateY(-50%) !important; 
    width: 100% !important;                  
    max-width: 450px !important;            
    z-index: 3 !important;                  
    margin: 0 !important;
    text-align: left !important;            
}

.value-band-text h3 {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 33px !important;            
    font-weight: 400 !important;            
    line-height: 1.3 !important;            
    margin: 0 !important;
    color: #FFFFFF !important;   
    letter-spacing: 0.5px !important;
    text-align: left !important;            

}

.value-band, 
section.value-band,
div.value-band {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    border: none !important; /* Remove qualquer micro borda invisível que o navegador coloque */
}

.resource-card p,
.value-band-text p {
    font-size: 24px !important;
    line-height: 1.15 !important;    
    margin-top: 15px !important;
}

/* Se no seu HTML uma faixa estiver colada logo após a outra, 
   o CSS abaixo zera matematicamente qualquer folga entre elas */
.value-band + .value-band {
    margin-top: 0 !important;
}

/* Se as suas faixas estiverem dentro de <section> individuais, esse seletor elimina o espaço delas */
section:has(.value-band) + section:has(.value-band) {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* ========== MERCADOS PRIORITÁRIOS ========== */

.mercados-section {
    background: var(--light-bg);
    display: block !important;
    width: 100% !important;
    padding: 120px 0 80px 0 !important;
    clear: both !important;
    text-align: center !important;
}

.mercados-section p:not(.map-legend-group p):not(.map-footer-text) {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 20px !important;       
    font-weight: 200 !important;        /* Regular */
    color: var(--gray-text) !important;
    text-align: center !important;      
    max-width: 700px !important;
    margin: 0 auto 30px auto !important; 
    line-height: 1.6 !important;
}

.mercados-section #meu-mapa-svg + p,
.mercados-section .map-container + p,
.mercados-section p:has(span), 
.mercados-section .container > p:nth-of-type(2) {
    display: table !important;    
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 18.5px !important;       
    font-weight: 400 !important;        
    color: #585757 !important;     
    text-transform: uppercase !important;
    letter-spacing: 2px !important;    
    text-align: center !important;
    max-width: 1100px !important;       
    width: auto !important;
    white-space: nowrap !important;     
    margin: 40px auto 0 auto !important; 
}

.mercados-section h3 {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 30px !important;
    font-weight: 400 !important;
    color: #585757 !important;
    text-align: center !important;
    line-height: 1.3 !important;
    max-width: 580px !important;       /* <--- TRAVA CIRÚRGICA: Isola "mercados globais" sozinho na linha de baixo */
    margin: 30px auto 50px auto !important; /* O auto centraliza a caixa inteira na tela */

}

.map-container + p,
.mercados-section .container > p:last-of-type {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 20px !important;       /* 20pt convertido para px */
    font-weight: 200 !important;        /* Regular */
    color: var(--gray-text) !important;
    text-align: center !important;      
    max-width: 700px !important;        /* Limita a largura para gerar a quebra idêntica ao print */
    margin: 40px auto 0 auto !important;
    line-height: 1.6 !important;
}

.map-container {
    margin: 50px 0;
    text-align: center;
}

.map-container img {
    max-width: 100%;
    height: auto;
}

#meu-mapa-svg {
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
    border: none !important;                  
    box-shadow: none !important;              
    padding: 10px;
    background: transparent !important;
    background-color: transparent !important;
}

/* Alvo direto em qualquer div de background gerada pelo plugin do mapa */
.svgMap-map-wrapper,
.svgMap-map-background,
.svgMap-map-container {
    background: transparent !important;
    background-color: transparent !important;
}

/* Remove a tag de fundo retangular do mapa mundial */
#meu-mapa-svg svg rect:first-of-type,
#meu-mapa-svg svg > rect {
    display: none !important;
    fill: transparent !important;
    opacity: 0 !important;
}

.svgMap-map-controls-wrapper,
.svgMap-control-button,
.svgMap-zoom-button,
.svgMap-zoom-in,
.svgMap-zoom-out {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* Pinta todos os países mundiais de cinza */
.svgMap-map-wrapper .svgMap-country {
    fill: #929497 !important; 
    stroke: #FFFFFF !important; 
    stroke-width: 0.5px !important;
}

/* Pinta os 6 parceiros internacionais */
.svgMap-map-wrapper .svgMap-country[data-id="CN"],
.svgMap-map-wrapper .svgMap-country[data-id="DE"],
.svgMap-map-wrapper .svgMap-country[data-id="DK"],
.svgMap-map-wrapper .svgMap-country[data-id="US"],
.svgMap-map-wrapper .svgMap-country[data-id="FR"],
.svgMap-map-wrapper .svgMap-country[data-id="GB"] {
    fill: #28b1cf !important; 
    cursor: pointer !important;
}

.svgMap-map-wrapper .svgMap-country[data-id="CN"]:hover,
.svgMap-map-wrapper .svgMap-country[data-id="DE"]:hover,
.svgMap-map-wrapper .svgMap-country[data-id="DK"]:hover,
.svgMap-map-wrapper .svgMap-country[data-id="US"]:hover,
.svgMap-map-wrapper .svgMap-country[data-id="FR"]:hover,
.svgMap-map-wrapper .svgMap-country[data-id="GB"]:hover {
    fill: #0e247a !important; 
}

.mercados-section h2:nth-of-type(2) {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 60px !important;    
    color: #0e247a !important;     /* Mantém o azul padrão */
    font-weight: 400 !important;   
    text-align: center !important;
     margin: 20px auto 60px auto !important; /* O auto centraliza a caixa inteira na tela */

}

/* ========== BLINDAGEM E ACABAMENTO DO MAPA DO BRASIL ========== */

#container-mapa-brasil {
    width: 100% !important;
    max-width: 650px !important;    
    margin: 40px auto !important;
    position: relative !important;
    background: transparent !important;
    overflow: visible !important;   
}

#mapa-geochart {
    width: 100% !important;
    height: auto !important;
    min-height: auto !important;    
    background: transparent !important;
}

/* Força o fundo retangular externo do Google a ficar invisível */
#mapa-geochart svg > rect,
#mapa-geochart svg > g > rect {
    fill: transparent !important;
}

/* Desenha os contornos brancos bem nítidos em todos os estados do Brasil */
#mapa-geochart svg path {
    stroke: #FFFFFF !important; 
    stroke-width: 1.5px !important; 
    transition: fill 0.3s ease !important;
}

/* Interatividade ao passar o mouse apenas nos estados ativos */
#mapa-geochart svg g path:hover {
    fill: #0e247a !important; 
    cursor: pointer !important;
}

/* Customização dos balões flutuantes (Tooltips) */
.google-visualization-tooltip {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important; 
    font-size: 14px !important;
    border-radius: 6px !important;
    padding: 8px 12px !important;
    border: none !important;
    box-shadow: 0 4px 15px rgba(0,0,0,0.15) !important;
    z-index: 2000 !important;
}

/* === ÁREA DA LEGENDA DO MAPA === */

.map-legend-container {
    text-align: center !important;
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important; 
    margin-top: 40px !important;
    padding-top: 30px !important;
    border-top: 1px solid #CCC !important;
    width: 100% !important;
    max-width: 950px !important; 
    margin-left: auto !important;
    margin-right: auto !important;
}

.map-legend-group {
    margin-bottom: 35px !important; 
}

.map-legend-group h5 {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 18.5px !important;  
    font-weight: 300 !important;   
    color: #585757 !important;     
    text-transform: uppercase !important;
    letter-spacing: 1.5px !important; 
    margin: 0 0 10px 0 !important;
}

.map-legend-group p {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 20px !important;    
    font-weight: 200 !important;   
    color: #585757 !important;
    text-transform: uppercase !important;
    margin: 0 auto !important;
    letter-spacing: 1px !important;
    max-width: 800px !important;   
    line-height: 1.5 !important;
}

.map-legend-container h3 {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 30px !important;    
    font-weight: 400 !important;   
    color: #4A4A4A !important;     
    text-align: center !important;
    margin-top: 50px !important;
    margin-bottom: 20px !important;
    line-height: 1.3 !important;
    max-width: 420px !important;
}

.map-footer-text {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 20px !important;  
    font-weight: 200 !important;   
    color: #585757 !important;
    max-width: 850px !important;   
    margin: 0 auto 40px auto !important;
    line-height: 1.6 !important;
    text-align: center !important;
}

.map-footer-text strong {
    font-weight: 400 !important;   
    color: #4A4A4A !important;
}

/* ========== FRENTES ========== */

.frentes-section {
    padding: 80px 0;
    width: 100% !important;
    display: block !important;
}

.frentes-list-custom {
    display: flex !important;
    flex-direction: column !important;
    gap: 40px !important; 
    max-width: 680px !important;    
    margin: 50px auto !important;  
}

.frente-item-custom {
    display: flex !important;
    align-items: center !important; 
    gap: 30px !important; 
    text-align: left !important;
    width: 100% !important;
}

.frente-icon-wrap {
    flex-shrink: 0 !important; 
    width: 100px !important; 
    height: 100px !important;
}

.frente-icon-wrap img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important; 
}

.frente-content-custom {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
    text-align: left !important;     
    align-items: flex-start !important; 
}

.frente-content-custom h4 {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 25px !important;        
    font-weight: 600 !important;      
    color: #4A4A4A !important; 
    margin: 0 !important;
    text-align: left !important;      
}

.frente-content-custom p {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 20px !important;      /* <--- MEDIDA DO CORPO DO PSD */
    color: #585757 !important;
    margin: 0 !important;
    line-height: 1.4 !important;
    text-align: left !important;     
    max-width: 100% !important;     
}

.frentes-section .buttons-group {
    text-align: center !important;
    margin-top: 50px !important;
    width: 100% !important;
}

/* ========== GOVERNANÇA ========== */

.governanca-section {
    background: var(--light-bg);
    display: block !important;
    width: 100% !important;
    padding: 80px 0 !important;
    clear: both !important;
    text-align: center !important; 
	max-width: 1280px !important;    

}

.governanca-section h3 {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 30px !important;
    font-weight: 400 !important;
    color: #585757 !important;
    text-align: center !important;
    line-height: 1.3 !important;
    max-width: 580px !important; 
    margin: 30px auto 50px auto !important; /* O auto centraliza a caixa inteira na tela */

}

.governanca-section p:not(.gov-item p):not(.map-footer-text):not(.bwe-gov-card p) {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 20px !important;       
    font-weight: 200 !important;        
    color: var(--gray-text) !important;
    text-align: center !important;      
    max-width: 700px !important;
    margin: 0 auto 30px auto !important; 
    line-height: 1.6 !important;
}

.gov-box + p,
.governanca-section .container > p:last-of-type {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 20px !important;       
    font-weight: 200 !important;      
    color: var(--gray-text) !important;
    text-align: center !important;      
    max-width: 700px !important;        
    margin: 40px auto 0 auto !important; 
    line-height: 1.6 !important;
}

.bwe-gov-wrapper {
    position: relative !important;
    max-width: 1020px !important;   
    margin: 50px auto !important;
    padding: 20px !important;
}

/* Grid estrutural de 2 colunas para Desktop */
.bwe-gov-grid {
    display: grid !important;
    grid-template-columns: 420px 420px !important; 
    justify-content: space-between !important;     
    gap: 40px 0 !important;                                               
    width: 100% !important;
}

/* Cards com contorno ciano oficial */
.bwe-gov-card {
    background: transparent !important;
    border: 3px solid #00AEEF !important; /* var(--cyan) */
    border-radius: 18px !important; 
    padding: 40px 35px !important;        
    height: 220px !important;             
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    box-sizing: border-box !important;
}



/* ========================================================
   CORREÇÃO CIRÚRGICA DE ALINHAMENTO ESPELHADO (ECOSSISTEMA)
   ======================================================== */

/* LADO ESQUERDO (ABEEólica e Estados): Tudo 100% alinhado à DIREITA */
.bwe-gov-card.left-align { 
    text-align: right !important; 
    align-items: flex-end !important;
}
.bwe-gov-card.left-align h4,
.bwe-gov-card.left-align p {
    text-align: right !important; /* <--- Alinha o título e o texto na direita */
}

/* LADO DIREITO (ApexBrasil e Consórcio): Tudo 100% alinhado à ESQUERDA */
.bwe-gov-card.right-align { 
    text-align: left !important; 
    align-items: flex-start !important;
}
.bwe-gov-card.right-align h4,
.bwe-gov-card.right-align p {
    text-align: left !important; /* <--- Alinha o título e o texto na esquerda */
}

.bwe-gov-center-circle {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: 200px !important;              
    height: 200px !important;
    background: transparent !important;
    border: 3px solid #80b741 !important;    
    border-radius: 50% !important;
    padding: 15px;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 4px 15px rgba(0,0,0,0.05) !important;
    z-index: 10 !important;
}

.bwe-gov-center-circle img {
    /* === TRAVA CIRÚRGICA: Força a imagem a respeitar o tamanho real do PSD === */
    width: 111px !important; 
    height: 70px !important;
    
    /* Garante que ela fique centralizada no meio da bola verde */
    margin: 0 auto !important; 
    object-fit: contain !important;
}

/* COMPORTAMENTO MOBILE */
@media (max-width: 768px) {
    .bwe-gov-grid {
        grid-template-columns: 1fr !important;
        gap: 25px !important;
    }
    .bwe-gov-card.left-align,
    .bwe-gov-card.right-align {
        text-align: center !important;
        align-items: center !important;
        padding: 25px 20px !important;
        height: auto !important; 
    }
    .bwe-gov-card.left-align h4, .bwe-gov-card.left-align p,
    .bwe-gov-card.right-align h4, .bwe-gov-card.right-align p {
        text-align: center !important;
    }
    .bwe-gov-center-circle {
        display: none !important; 
    }
}

/* ======================= IMPACTO ======================== */

.impacto-real-section {
    display: block !important;
    padding: 100px 0 !important;
    background: #FFFFFF !important;
    text-align: center !important;
    width: 100% !important;
    clear: both !important;
}

.impacto-real-section p {
    text-align: center !important;
    margin: 0 auto 30px auto !important;
    display: block !important;
    width: 100% !important;
}

.bwe-diagrama-renderizado {
    width: 100% !important;
    max-width: 694px !important;   
    margin: 50px auto 0 auto !important;
    display: block !important;
}

.bwe-diagrama-renderizado img {
    width: 100% !important;
    height: auto !important;
    max-width: 100% !important;     
    display: block !important;
}

.bwe-roda-blindada, .bwe-blindada-legenda, .bwe-blindada-satelite {
    display: none !important;
}


/* ========== AGENDAS ESTADUAIS ========== */

.agendas-estaduais-section {
    display: block !important;
    width: 100% !important;
    background: var(--light-bg);
    padding: 60px 0 !important;      
    text-align: center !important;  
    clear: both !important;
    float: none !important;
	max-width: 1280px !important;    

}

.agendas-estaduais-section p:not(.bwe-agenda-item p) {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 20px !important; 
    color: var(--gray-text) !important; 
    font-weight: 200 !important; 
    line-height: 1.2 !important;
    margin: 0 auto 40px auto !important;
    max-width: 700px !important;
    text-align: center !important;
}

.bwe-agendas-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 40px !important;
    max-width: 950px !important; 
    margin: 0 auto !important;
}
.bwe-agenda-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    background: transparent !important; 
    box-shadow: none !important;        
    border: none !important;            
    padding: 10px !important;
}

.bwe-agenda-item img {
    width: auto !important;           
    height: auto !important;         
    max-width: 100% !important;       /* <--- Teto de segurança para nunca estourar no mobile */
    display: block !important;
    object-fit: none !important;      
    margin-bottom: 25px !important;               
    margin-left: auto !important;     
    margin-right: auto !important;    
}

.bwe-agenda-item p {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important; 
    font-size: 20px !important;
    color: #585757 !important;
    font-weight: 300 !important;
    line-height: 1.2 !important;
    margin: 0 !important;
    max-width: 280px;                 
}

/* ========== SEU PASSO ========== */
.passo-section {
    background: var(--white);
line-height: 1.4 !important;
}

.logo-simbolo {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    margin: 0 auto 30px auto !important; /* Centraliza a caixinha e afasta do H3 de baixo */
}

.logo-simbolo img {
    /* === TRAVA CIRÚRGICA DE TAMANHO === */
    width: 90px !important;       /* <--- Defina aqui a largura ideal do seu ícone (ex: 70px ou 80px) */
    height: auto !important;
    display: block !important;
    margin: 0 auto !important;    /* Força o ícone a ficar bem no meio da tela */
}


/* ========== CONTATO ========== */

.contato-section {
    display: block !important;
    width: 100% !important;
    clear: both !important;
    text-align: center !important;
    padding: 80px 0 !important;
}

.contato-section p,
.contato-section div p {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 20px !important;      
    font-weight: 200 !important;       
    text-align: center !important;    
    display: block !important;
    width: 100% !important;
    max-width: 800px !important;
    margin: 0 auto 15px auto !important; 
    color: var(--gray-text) !important;
    line-height: 1.6 !important;
}

.contato-section h2,
.contato-section h3,
.contato-section div h3 {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    text-align: center !important;
    color: var(--blue-dark) !important;
    margin-bottom: 20px !important;
    font-weight: 400 !important;
}

.form-container {
    width: 100% !important;
    max-width: 550px !important; 
    margin: 0 auto !important;   
    text-align: left !important; 
}

.form-group {
    margin-bottom: 20px;
}

.form-group input, 
.form-group textarea {
    width: 100% !important;
    background: transparent !important; 
    border: none !important;            
    border-bottom: 1px solid #D1D3D4 !important; 
    padding: 12px 0 !important;
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 16px !important;
    color: var(--gray-text) !important;
    outline: none !important;           
    box-sizing: border-box !important;
    border-radius: 0 !important;        
}

.form-group input::placeholder,
.form-group textarea::placeholder {
    color: #808285 !important;
    font-weight: 200 !important;
}

.form-container form {
    display: flex !important;
    flex-direction: column !important;
}

.form-group textarea {
    resize: vertical;
    min-height: 120px;
}

.btn-submit {
    align-self: flex-end !important;   
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
    border: 2px solid #28b1cf !important; 
    color: #585757 !important;
    padding: 12px 50px !important;     
    border-radius: 12px !important;    
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    text-transform: uppercase !important;
    letter-spacing: 1.5px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    margin-top: 20px !important;       
}

.btn-submit:hover {
    background: #28b1cf !important;
    color: #FFFFFF !important;
}


/* ========== APP BWE & MECÂNICA DE CLIQUE ========== */

.app-section h3.app-subtexto {
    color: #585757 !important;
    font-weight: 400 !important;
    max-width: 600px !important; 
    margin: 0 auto 40px auto !important;
}

/* Contêiner das imagens do app */
.app-icone {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 auto 40px auto !important;
    max-width: 450px !important;
}

/* Imagem do Celular */
.app-icone .img-celular {
    width: 100% !important;
    max-width: 140px !important;
    height: auto !important;
    display: block !important;
    margin: 0 auto 20px auto !important;
}

.app-icone p {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 18.5px !important;
    font-weight: 400 !important;
    color: #585757 !important;
    text-transform: uppercase !important;
    letter-spacing: 1.5px !important;
    text-align: center !important;
    margin: 0 auto 15px auto !important; 
    padding: 0 !important;
    width: 100% !important;
}

/* A Linha/Link clicável */
.app-icone .img-linha-link {
    width: 100% !important;
    max-width: 260px !important;
    height: auto !important;
    display: block !important;
    cursor: pointer !important; 
    transition: transform 0.2s ease !important;
    margin: 0 auto !important;
}

.app-icone .img-linha-link:hover {
    transform: scale(1.02) !important; /* Efeito sutil ao passar o mouse */
}

/* === MECÂNICA DO FORMULÁRIO ESCONDIDO === */
.form-hidden {
    max-height: 0 !important;
    opacity: 0 !important;
    overflow: hidden !important;
    transition: all 0.5s cubic-bezier(0, 1, 0, 1) !important; /* Animação suave de abertura */
}

/* Classe ativada via clique na imagem da linha */
.form-hidden.active {
    max-height: 800px !important; /* Libera o espaço para o formulário descer */
    opacity: 1 !important;
    margin-top: 30px !important;
    padding-bottom: 40px !important;
    transition: all 0.5s ease-in-out !important;
}

/* Ajuste específico para os inputs casarem com o estilo minimalista do print */
.form-container .form-group input {
    font-size: 18px !important;
    color: #585757 !important;
    padding: 15px 0 !important;
}

/* Reduz o padding vertical do bloco final de contato para não criar um espaço gigante vazio */
.rodape-contato {
    padding: 60px 0 !important;
    background: #FFFFFF !important;
}

/* ========== FOOTER ========== */

footer {
    background: var(--white);
    color: #585757;
    padding: 30px 0 !important; 
    text-align: center;
    width: 100% !important;
    clear: both !important;
    display: block !important;
}

footer p,
.container-copyrights p {
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 14px !important;         
    font-weight: 200 !important;        
    color: #929497 !important;          
    text-align: center !important;      
    margin: 0 auto !important;
    padding: 0 !important;
    letter-spacing: 0.5px !important;   
    line-height: 1.2 !important;
}

/* Área Cinza das 4 Marcas */
.footer-brands-section {
    display: block !important;
    width: 100% !important;
    background: var(--white);
    padding: 60px 0 !important;
    clear: both !important;
    border-top: 1px solid #80b741 !important;
}

.footer-brands-container {
    display: flex !important;                  
    justify-content: space-between !important;  
    align-items: center !important;
    width: 100% !important;
    max-width: 1280px !important;               
    margin: 0 auto !important;
    padding: 0 !important;
} 

.brand-col {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important; 
    width: 24% !important;                     
}

.brand-col img {
    width: 100% !important;        
    max-width: 280px !important;               
    height: auto !important;
    max-height: 85px !important;               
    object-fit: contain !important;
    filter: grayscale(100%) !important;
    opacity: 0.7 !important;
    transition: all 0.3s ease !important;
}

.brand-col img:hover {
    filter: grayscale(0%) !important;
    opacity: 1 !important;
}

.container-copyrights {
    width: 100% !important;
    max-width: 1280px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
    height: 20px;
    align-items: center !important;
    box-sizing: border-box !important;
}


/* ========== BOTÃO FLUTUANTE: IR PARA O TOPO ========== */
#btnScrollToTop {
    display: none; 
    position: fixed; 
    bottom: 30px; 
    right: 30px; 
    z-index: 999; 
    width: 50px;
    height: 50px;
    background-color: #FFFFFF;
    border: 2px solid #28b1cf; 
    border-radius: 12px;       
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1); 
}

#btnScrollToTop::before {
    content: "▲"; 
    font-size: 18px;
    color: #585757; 
    font-weight: bold;
    transition: all 0.3s ease;
}

#btnScrollToTop:hover {
    background-color: #28b1cf !important;
}

#btnScrollToTop:hover::before {
    color: #FFFFFF !important; 
}

@media (max-width: 768px) {
    #btnScrollToTop {
        bottom: 20px;
        right: 20px;
        width: 45px;
        height: 45px;
    }
}

/* ========== SELETOR DE IDIOMAS ACIMA DO MENU ========== */
.header-right {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important; 
}

.lang-switcher-flags {
    display: flex !important;
    align-items: center !important; 
    margin-bottom: 25px !important; 
    padding-right: 5px; 
margin-top: -15px !important;
}

/* Estilo geral para os textos PT e EN quando inativos */
.lang-switcher-flags a {
    display: inline-block !important;
    text-decoration: none !important;
    font-family: 'Greycliff CF', 'greycliff-cf', sans-serif !important;
    font-size: 11px !important;
    font-weight: 200 !important; 
    color: #585757 !important;   
    transition: color 0.2s ease-in-out !important;
}

/* Quando o idioma estiver selecionado (active) ou com o mouse por cima (hover) */
.lang-switcher-flags a.active,
.lang-switcher-flags a:hover {
    color: #0e247a !important;   /* Acende no Azul oficial BWE */
    font-weight: 300 !important;   /* Ganha o destaque Demi Bold */
}

/* ========== MALHA DE RESPONSIVIDADE COMPLETA E REVISADA ========== */

@media (max-width: 991px) {
    h2 {
        font-size: 36px !important; 
        margin-bottom: 30px !important;
    }
    
    header .container.header-wrapper {
        padding-left: 20px !important;  
        padding-right: 20px !important; 
    }
}

@media (max-width: 768px) {
    body {
        font-size: 18px !important; 
        overflow-x: hidden !important; /* Mata qualquer rolagem lateral fantasma */
    }
    
    /* === 7. CORREÇÃO DO CABEÇALHO NO MOBILE === */
    header .container.header-wrapper {
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        gap: 15px !important;
        padding: 10px 20px !important;
    }

    .header-right {
        align-items: center !important;
        margin-right: 0 !important;
        width: 100% !important;
    }

    nav {
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: center !important;
        gap: 10px 15px !important;
        margin-bottom: 15px !important;
        width: 100% !important;
    }

    nav a {
        margin: 0 5px !important;
        font-size: 16px !important;
    }

    .header-subtitle {
        text-align: center !important;
        font-size: 13px !important;
        white-space: normal !important; /* <--- MUDADO: Permite quebra de linha da frase azul no celular */
        line-height: 1.3 !important;
        margin-top: 5px !important;
    }

    /* === 7. CORREÇÃO DO HERO BOX E TITULO H1 === */
    .hero-section {
        min-height: 450px !important;
        padding: 40px 20px !important;
    }

    .hero-box {
        background: transparent !important; /* <--- ARRANCA O FUNDO CINZA ESCURO DO TITULO */
        padding: 0 !important;
        transform: none !important;
        top: 0 !important;
        position: relative !important;
    }

    .hero-box h1 {
        font-size: 26px !important;
        text-align: center !important;
        line-height: 1.3 !important;
        margin-bottom: 0 !important;
        text-shadow: 2px 2px 8px rgba(0, 0, 0, 0.8) !important; /* Cria contraste legível sobre a foto */
    }

    /* === 3 e 6. CORREÇÃO DAS FOTOS PANORÂMICAS ESTICADAS === */
    .panorama-section {
        height: auto !important;
        min-height: auto !important;
        overflow: hidden !important;
    }

    .panorama-section img {
        width: 100% !important;
        height: auto !important;
        max-height: 280px !important; /* Trava uma altura elegante para telas de celular */
        object-fit: cover !important; /* Corta as laterais mantendo a proporção real sem achatar */
    }

    /* === 5. CORREÇÃO DOS TEXTOS DAS FAIXAS DE VALOR === */
    .value-band {
        height: auto !important;
        min-height: auto !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important; /* Centraliza o texto verticalmente na faixa */
        align-items: center !important;
		position: relative !important;
    }
	
	.value-band-img {
        position: relative !important;   
        width: 100% !important;
        max-width: 100% !important;     /* <--- Garante que não passe da tela */
        height: auto !important;         /* <--- Força a proporção perfeita */
        max-height: none !important;     /* <--- Libera qualquer trava de altura */
        transform: none !important;
        top: 0 !important;
        left: 0 !important;
        display: block !important;
    }

    .value-band-text {
        position: absolute !important;    /* Mantém o texto flutuando exatamente sobre a foto */
        top: 50% !important;
        left: 50% !important;
        right: auto !important;
        transform: translate(-50%, -50%) !important; /* Centraliza a frase como um alvo no meio da foto */
        width: 90% !important;            /* Dá uma margem de respiro nas bordas do celular */
        max-width: 100% !important;
        background: transparent !important; /* <--- ARRANCADO O FUNDO CINZA/PRETO DAQUI! */
        padding: 0 !important;
        text-align: center !important;
        z-index: 3 !important;
    }

    .value-band-text h3 {
        font-size: 22px !important;
        text-align: center !important;
        line-height: 1.4 !important;
    }

    /* === 4. CORREÇÃO DA LISTA DE PAÍSES ESTOURANDO A TELA === */
    .mercados-section p:has(span), 
    .mercados-section .container > p:nth-of-type(2),
    .mercados-section #meu-mapa-svg + p {
        white-space: normal !important; /* <--- MUDADO: Obriga os países a quebrarem linha */
        display: block !important;
        font-size: 16px !important;
        line-height: 1.5 !important;
        width: 100% !important;
        text-align: center !important;
        letter-spacing: 1px !important;
    }

    /* === 2. CORREÇÃO DO RODAPÉ (MARCAS MICRAS) === */
    .footer-brands-section {
        padding: 40px 0 !important;
    }

    .footer-brands-container {
        display: flex !important;
        flex-direction: column !important; /* <--- Transforma o grid espremido em lista vertical */
        align-items: center !important;
        gap: 30px !important;
        width: 100% !important;
    }

    .brand-col {
        width: 100% !important;
        max-width: 200px !important; /* Garante tamanho nítido e perfeito no celular */
        display: flex !important;
        justify-content: center !important;
    }

    .brand-col img {
        max-height: 60px !important;
        width: auto !important;
        object-fit: contain !important;
    }

    /* Ajuste de grids globais */
    .resources-grid, 
    .bwe-agendas-grid,
    .foco-grid {
        grid-template-columns: 1fr !important;
        gap: 30px !important;
        padding: 0 20px !important;
    }
}