/* ------------------- */
/* FONTES E VARIÁVEIS  */
/* ------------------- */
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;600;700&display=swap');

:root {
    --cor-primaria: #75c004;
    --cor-secundaria: #112525;
    --cor-texto: #333333;
    --cor-texto-claro: #cccccc;
    --cor-texto-escuro-claro: #5f5f5f;
    --cor-fundo: #ffffff;
    --cor-fundo-secao: #f7f9fa;
    --cor-borda: #e0e0e0;
    
    --fonte-principal: 'Poppins', sans-serif;
    --container-width: 1200px;
}

/* ... (Estilos Globais, Componentes, Header, etc. - Sem alterações) ... */

* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { font-family: var(--fonte-principal); color: var(--cor-texto); background-color: var(--cor-fundo); line-height: 1.6; }
.container { max-width: var(--container-width); margin: 0 auto; padding: 0 20px; }
.container-split { display: grid; align-items: center; gap: 40px; max-width: var(--container-width); margin: 0 auto; padding: 0 20px; }
h1, h2, h3 { line-height: 1.2; font-weight: 700; }
.titulo-secao { text-align: center; font-size: 2.5rem; margin-bottom: 20px; color: var(--cor-secundaria); }
.subtitulo-secao { text-align: center; font-size: 1.1rem; color: var(--cor-texto-escuro-claro); max-width: 700px; margin: 0 auto 50px auto; }
img { max-width: 100%; height: auto; display: block; }
ul { list-style: none; }
a { text-decoration: none; color: inherit; }
.botao { display: inline-block; padding: 12px 28px; border-radius: 8px; font-weight: 600; text-align: center; transition: background-color 0.3s, transform 0.3s; border: 2px solid transparent; }
.botao-primario { background-color: var(--cor-primaria); color: var(--cor-fundo); }
.botao-primario:hover { background-color: #5a9103; transform: translateY(-2px); }
.botao-secundario { background-color: transparent; color: var(--cor-primaria); border-color: var(--cor-primaria); }
.botao-secundario:hover { background-color: var(--cor-primaria); color: var(--cor-fundo); }
section { padding: 80px 0; }
.cabecalho { padding: 15px 0; background-color: var(--cor-fundo); border-bottom: 1px solid var(--cor-borda); position: sticky; top: 0; z-index: 1000; }
.cabecalho .container { display: flex; justify-content: space-between; align-items: center; }
.logo img { max-height: 80px; }
.navegacao-principal ul { display: flex; gap: 30px; }
.navegacao-principal a { font-weight: 600; padding: 5px 0; position: relative; }
.navegacao-principal a::after { content: ''; position: absolute; bottom: 0; left: 0; width: 0; height: 2px; background-color: var(--cor-primaria); transition: width 0.3s; }
.navegacao-principal a:hover::after { width: 100%; }
.menu-mobile-botao { display: none; background: none; border: none; cursor: pointer; }
.hero { background-image: url(../img/background.gif); background-size: cover; background-position: center; background-color: var(--cor-secundaria); }
.hero .container-split { grid-template-columns: 1fr 0.8fr; min-height: 80vh; }
.hero-titulo { font-size: 3rem; margin-bottom: 20px; color:#fff; }
.hero-subtitulo { font-size: 1.1rem; margin-bottom: 30px; color:#e2e8f0; }
.hero-link { font-weight: 600; color: var(--cor-primaria); display: inline-block; margin-top: 15px; }
.hero .formulario { background-color: var(--cor-secundaria); padding: 35px; border-radius: 12px; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2); color: #e2e8f0; }
.hero .formulario .form-titulo { font-size: 1.5rem; text-align: center; margin-bottom: 25px; color: #fff; }
.hero .formulario label { display: block; font-size: 0.875rem; font-weight: 500; color: #cbd5e1; margin-bottom: 8px; }
.hero .formulario input[type="text"], .hero .formulario input[type="tel"], .hero .formulario select { width: 100%; padding: 12px 16px; background-color: rgba(255, 255, 255, 0.07); border: 1px solid #475569; border-radius: 8px; font-size: 0.95rem; color: #ffffff; transition: border-color 0.3s, box-shadow 0.3s; }
.hero .formulario > div { margin-bottom: 20px; }
.hero .formulario ::placeholder { color: #94a3b8; opacity: 1; }
.hero .formulario input:focus, .hero .formulario select:focus { outline: none; border-color: var(--cor-primaria); box-shadow: 0 0 0 3px rgba(117, 192, 4, 0.4); }
.form-grid-cidade-estado { display: grid; grid-template-columns: 2fr 1fr; gap: 16px; }
.hero .formulario select option { background-color: #1e2b3b; color: #ffffff; }
.hero .formulario .submit-btn { width: 100%; padding: 12px 16px; border: none; border-radius: 8px; font-size: 1.125rem; font-weight: 700; color: #1e293b; background-color: #facc15; cursor: pointer; transition: background-color 0.3s, transform 0.2s; margin-top: 10px; }
.hero .formulario .submit-btn:hover { background-color: #eab308; transform: translateY(-2px); }
.como-funciona { background-color: var(--cor-fundo-secao); }

.passos-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 40px; text-align: center; }
.passo-item .passo-titulo { font-size: 1.25rem; margin-bottom: 10px; color: var(--cor-secundaria); }
.passo-item .passo-numero i{ font-size: 40px;   color: var(--cor-primaria);   margin-bottom: 20px;}



.solucoes-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; }
.solucao-card { border: 1px solid var(--cor-borda); border-radius: 12px; padding: 30px; text-align: center; transition: transform 0.3s, box-shadow 0.3s; }
.solucao-card:hover { transform: translateY(-5px); box-shadow: 0 10px 20px rgba(0,0,0,0.05); }
.solucao-card h3 { font-size: 1.5rem; margin-bottom: 15px; color: var(--cor-secundaria); }
.solucao-card p { margin-bottom: 25px; color: var(--cor-texto-escuro-claro); }
.depoimentos { background-color: var(--cor-fundo-secao); }
.depoimentos-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; }
.depoimento-item { background-color: var(--cor-fundo); padding: 30px; border-radius: 12px; border-left: 5px solid var(--cor-primaria); }
.depoimento-item blockquote { font-style: italic; margin-bottom: 20px; }
.depoimento-item cite { display: flex; align-items: center; gap: 15px; font-style: normal; font-weight: 600; }
.depoimento-item cite img { width: 50px; height: 50px; border-radius: 50%; object-fit: cover; }



.hero-consumidor, .hero-usina, .hero-contato { padding: 100px 0; text-align: center; color: white; background-color: var(--cor-secundaria); }
.hero-consumidor h1, .hero-usina h1, .hero-contato h1 { font-size: 2.8rem; margin-bottom: 15px; }
.hero-consumidor p, .hero-usina p, .hero-contato p { max-width: 750px; margin: 0 auto 30px auto; font-size: 1.1rem; opacity: 0.9; }

.prova-social .prova-social-split { display: grid; grid-template-columns: 1fr 1fr; gap: 50px; align-items: center; }
.prova-social-imagem img { border-radius: 12px; box-shadow: 0 10px 20px rgba(0,0,0,0.1); }
.prova-social-texto h3 { font-size: 1.8rem; margin-bottom: 20px; }
.resultado-economia { margin-top: 30px; background: var(--cor-fundo-secao); padding: 20px; border-radius: 8px; }
.resultado-economia li { display: flex; justify-content: space-between; padding: 10px 0; border-bottom: 1px solid var(--cor-borda); }
.resultado-economia li:last-child { border: none; }
.resultado-economia .economia-destaque { font-weight: 700; color: var(--cor-primaria); font-size: 1.1rem; }
.faq { background-color: var(--cor-fundo-secao); }
.faq-lista { max-width: 800px; margin: 0 auto; }
.faq-item { border-bottom: 1px solid var(--cor-borda); padding: 20px 0; }
.faq-item:last-child { border: none; }
.faq-item h4 { font-size: 1.2rem; margin-bottom: 10px; cursor: pointer; }
.faq-item p { color: var(--cor-texto-escuro-claro); }
.cta-final { background-color: var(--cor-secundaria); color: white; text-align: center; }
.cta-final h2 { font-size: 2.2rem; margin-bottom: 15px; }
.cta-final p { margin-bottom: 30px; }
.vantagens-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 30px; }

.vantagem-item { text-align: center; padding: 20px; }
.vantagem-icone i { font-size: 40px; color: var(--cor-primaria); margin-bottom: 20px; }
.passo-icone i { font-size: 40px; color: var(--cor-primaria); margin-bottom: 20px; }



.formulario-proposta { max-width: 800px; margin: 0 auto; background-color: var(--cor-fundo); padding: 40px; border-radius: 12px; border: 1px solid var(--cor-borda); }
.formulario-proposta .form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 25px; }
.formulario-proposta .form-campo { margin-bottom: 25px; }
.formulario-proposta label { display: block; font-weight: 600; color: var(--cor-texto); margin-bottom: 8px; }
.formulario-proposta input, .formulario-proposta textarea { width: 100%; padding: 12px 16px; border: 1px solid var(--cor-borda); background-color: #fff; border-radius: 8px; color: var(--cor-texto); font-size: 1rem; font-family: inherit; transition: border-color 0.3s, box-shadow 0.3s; }
.formulario-proposta ::placeholder { color: #999; }
.formulario-proposta input:focus, .formulario-proposta textarea:focus { outline: none; border-color: var(--cor-primaria); box-shadow: 0 0 0 3px rgba(117, 192, 4, 0.4); }

/* ============================================= */
/* (CORRIGIDO) ESTILOS PÁGINA DE CONTATO         */
/* ============================================= */
.hero-contato{
    background-image: url('../img/bck-contato.webp');
    background-size: cover;
}


.contato-principal { background-color: var(--cor-fundo-secao); }
.contato-grid { display: grid; grid-template-columns: 1.5fr 1fr; gap: 50px; align-items: start; }
.formulario-contato h2 { font-size: 1.8rem; margin-bottom: 30px; }
.formulario-contato .form-row { display: grid; grid-template-columns: 200px 1fr; gap: 20px; align-items: center; margin-bottom: 20px; }
.formulario-contato .form-row.message-row { align-items: start; }
.formulario-contato label { font-weight: 700; font-size: 1.1rem; text-align: right; }
.formulario-contato input, .formulario-contato select, .formulario-contato textarea { width: 100%; padding: 10px 15px; border: 1px solid #ccc; border-radius: 5px; font-size: 1rem; font-family: inherit; box-shadow: inset 0 1px 2px rgba(0,0,0,0.1); }
.formulario-contato input:focus, .formulario-contato select:focus, .formulario-contato textarea:focus { outline: none; border-color: var(--cor-primaria); box-shadow: 0 0 0 3px rgba(117, 192, 4, 0.4); }
.formulario-contato .form-actions { padding-left: 220px; /* Alinha o botão com os inputs */ }
.botao-form-contato { padding: 10px 25px; border: 2px solid var(--cor-primaria); background-color: rgba(117, 192, 4, 0.1); color: var(--cor-secundaria); font-weight: 700; font-size: 1rem; border-radius: 5px; cursor: pointer; transition: all 0.3s; }
.botao-form-contato:hover { background-color: var(--cor-primaria); color: #fff; }

.info-contato .info-bloco { margin-bottom: 30px; }
.info-contato h3 { font-size: 1.3rem; color: var(--cor-secundaria); margin-bottom: 5px; display: flex; align-items: center; gap: 10px; }
.info-contato h3 i { font-size: 1.1rem; color: var(--cor-secundaria); width: 25px; text-align: center; }
.info-contato p { color: var(--cor-texto-escuro-claro); margin-bottom: 5px; }
.info-contato a { font-weight: 600; color: var(--cor-primaria); text-decoration: none; }
.info-contato a:hover { text-decoration: underline; }
.mapa-container { border-radius: 12px; overflow: hidden; border: 1px solid var(--cor-borda); }

/* ------------------- */
/* RODAPÉ              */
/* ------------------- */
.rodape { background-color: var(--cor-secundaria); color: var(--cor-texto-claro); padding: 60px 0 0 0; }
.rodape-grid { display: grid; grid-template-columns: 2fr 1fr 1.5fr; gap: 50px; padding-bottom: 50px; }
.rodape-logo { max-width: 150px; margin-bottom: 20px; }
.rodape-titulo { font-size: 1.2rem; color: var(--cor-fundo); margin-bottom: 20px; }
.rodape-links li { margin-bottom: 10px; }
.rodape-links a { color: var(--cor-texto-claro); transition: color 0.3s; }
.rodape-links a:hover { color: var(--cor-primaria); }
.formulario-newsletter { display: flex; gap: 10px; }
.formulario-newsletter input { flex-grow: 1; padding: 12px; border: 1px solid #475569; background-color: rgba(255, 255, 255, 0.07); border-radius: 5px; color: #fff; }
.rodape-info { text-align: center; padding: 20px 0; border-top: 1px solid #444; font-size: 0.9rem; }

/* ------------------- */
/* RESPONSIVIDADE      */
/* ------------------- */
@media (max-width: 1024px) {
    .titulo-secao { font-size: 2.2rem; }
    .hero .container-split { grid-template-columns: 1fr; text-align: center; }
    .hero-titulo { font-size: 2.5rem; }
    #formContainer { margin-top: 40px; text-align: left; }
    .rodape-grid { grid-template-columns: 1fr 1fr; }
    .passos-grid, .solucoes-grid, .depoimentos-grid { grid-template-columns: 1fr; }
    .prova-social-split { grid-template-columns: 1fr; }
    .contato-grid { grid-template-columns: 1fr; }
    .formulario-proposta .form-grid { grid-template-columns: 1fr; gap: 0; }
}

@media (max-width: 768px) {
    section { padding: 60px 0; }
    .titulo-secao { font-size: 1.8rem; }
    .navegacao-principal, .cabecalho-botao { display: none; }
    .menu-mobile-botao { display: block; }
    .hero-titulo { font-size: 2rem; }
    .rodape-grid { grid-template-columns: 1fr; text-align: center; }
    .rodape-logo { margin: 0 auto 20px auto; }
    .formulario-newsletter { flex-direction: column; }
    .formulario-proposta { padding: 25px; }
    
    /* (CORRIGIDO) Responsividade do Formulário de Contato */
    .formulario-contato .form-row { grid-template-columns: 1fr; text-align: left; }
    .formulario-contato label { text-align: left; margin-bottom: 5px; }
    .formulario-contato .form-actions { padding-left: 0; text-align: left; }
}