:root{
  /* design-system.md */
  --navy:#1E3854; --petroleo:#063E52; --azul:#01486B; --azul-claro:#015A81; --azul-profundo:#012842;
  --amarelo:#FFC924; --amarelo-sol:#FECB01; --creme:#FFF8E1; --branco:#FFFFFF;
  --fundo:#EEF2F5; --linha:#D9E1E7; --texto:#1E3854; --texto-suave:#4F6478;
  --fonte:"Plus Jakarta Sans",system-ui,sans-serif;
  --raio-botao:4px; --raio-painel:28px; --raio-card:20px;
  --gutter:clamp(16px,4vw,56px); --max:1240px;
}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth}
body{font-family:var(--fonte);color:var(--texto);background:var(--fundo);line-height:1.6;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:inherit}
:focus-visible{outline:3px solid var(--amarelo-sol);outline-offset:3px;border-radius:4px}
.wrap{max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* tipografia: mistura Light + Bold como nos posts */
h1,h2,h3{line-height:1.12;letter-spacing:-.02em;font-weight:300}
h1 b,h2 b{font-weight:800}
h1{font-size:clamp(2.3rem,5.4vw,4.1rem)}
h2{font-size:clamp(1.9rem,3.6vw,2.9rem)}
h3{font-size:1.2rem;font-weight:700;letter-spacing:-.01em}
.lead{font-size:1.08rem;color:var(--texto-suave);max-width:52ch}

/* sol da logo como marcador */
.sol{width:18px;height:18px;flex:none}
.tag{display:inline-flex;align-items:center;gap:8px;padding:6px 14px 6px 8px;border-radius:999px;font-size:.85rem;font-weight:600;background:var(--branco);color:var(--navy)}

/* botões */
.btn{display:inline-flex;align-items:center;gap:10px;padding:15px 24px;border-radius:var(--raio-botao);font-weight:700;font-size:.98rem;text-decoration:none;border:0;cursor:pointer;font-family:inherit;transition:background .15s,transform .15s}
.btn:active{transform:translateY(1px)}
.btn-sol{background:var(--amarelo-sol);color:var(--navy)}
.btn-sol:hover{background:var(--amarelo)}
.btn-navy{background:var(--navy);color:var(--branco)}
.btn-navy:hover{background:var(--petroleo)}
.btn-linha{background:transparent;color:var(--branco);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.6)}
.btn-linha:hover{box-shadow:inset 0 0 0 1.5px var(--branco)}
.btn svg{width:20px;height:20px}

/* ---------- cabeçalho ---------- */
.topo{position:sticky;top:0;z-index:20;background:rgba(238,242,245,.92);backdrop-filter:blur(10px)}
.topo .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;height:76px}
.topo .logo img{height:58px;width:auto}
.menu{display:flex;gap:30px;list-style:none;padding:0;font-size:.95rem;font-weight:600}
.menu a{text-decoration:none;padding:6px 0;border-bottom:2px solid transparent}
.menu a:hover,.menu a[aria-current]{border-color:var(--amarelo-sol)}
.topo .btn{padding:11px 18px;font-size:.9rem}
.menu-mob{display:none}

/* ---------- 1. hero ---------- */
.hero{padding:0 12px}
.hero-painel{position:relative;border-radius:var(--raio-painel);overflow:hidden;color:var(--branco);background:var(--azul-profundo)}
.hero-painel>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% 50%}
.hero-painel::before{content:"";position:absolute;inset:0;z-index:1;background:
  linear-gradient(90deg,rgba(1,40,66,.94) 0%,rgba(1,60,95,.74) 40%,rgba(1,60,95,.22) 58%,rgba(1,40,66,.12) 100%),
  linear-gradient(0deg,rgba(1,40,66,.75) 0%,transparent 40%)}
.hero-conteudo{position:relative;z-index:2;padding-block:clamp(56px,8vw,100px) clamp(150px,16vw,190px);min-height:640px}
.hero .tag{background:rgba(255,255,255,.12);color:var(--branco);backdrop-filter:blur(6px)}
.hero h1{margin:22px 0 22px;max-width:15ch}
.hero h1 b{color:var(--amarelo-sol)}
.hero .lead{color:rgba(255,255,255,.86)}
.acoes{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}
.provas{display:flex;flex-wrap:wrap;gap:12px 30px;list-style:none;padding:0;margin-top:46px;max-width:620px}
.provas li{display:flex;align-items:center;gap:12px;font-size:.9rem;line-height:1.35;color:rgba(255,255,255,.9)}
.provas svg{width:38px;height:38px;flex:none;padding:9px;border-radius:50%;background:rgba(255,255,255,.12);color:var(--amarelo-sol)}

/* formulário que avança sobre o bloco 2 */
.form-ancora{position:relative;z-index:5}
.form-card{position:absolute;right:var(--gutter);top:-560px;width:min(400px,100%);background:var(--branco);color:var(--texto);border-radius:var(--raio-card);padding:30px;box-shadow:0 30px 60px -20px rgba(1,40,66,.35)}
.form-card h2{font-size:1.6rem;margin:10px 0 6px}
.form-card .sub{font-size:.9rem;color:var(--texto-suave);margin-bottom:20px}
.campo{display:block;margin-bottom:12px}
.campo span{display:block;font-size:.8rem;font-weight:600;margin-bottom:6px}
.campo input,.campo textarea{width:100%;font:inherit;font-size:.95rem;color:var(--texto);background:#F5F8FA;border:1.5px solid var(--linha);border-radius:8px;padding:12px 14px}
.campo textarea{resize:vertical;min-height:72px}
.campo input:focus,.campo textarea:focus{outline:none;border-color:var(--azul-claro);background:var(--branco)}
.interesse{border:0;padding:0;margin:4px 0 16px}
.interesse legend{font-size:.8rem;font-weight:600;margin-bottom:8px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips label{cursor:pointer}
.chips input{position:absolute;opacity:0;pointer-events:none}
.chips span{display:inline-block;padding:8px 14px;border-radius:999px;font-size:.85rem;font-weight:600;border:1.5px solid var(--linha);background:#F5F8FA;transition:background .15s,border-color .15s}
.chips input:checked+span{background:var(--navy);border-color:var(--navy);color:var(--branco)}
.chips input:focus-visible+span{outline:3px solid var(--amarelo-sol);outline-offset:2px}
.form-card .btn{width:100%;justify-content:center}
.form-nota{font-size:.78rem;color:var(--texto-suave);margin-top:10px;text-align:center}
.erro{display:none;font-size:.8rem;color:#B42318;margin-top:4px}
.campo.invalido input{border-color:#B42318}
.campo.invalido .erro{display:block}

/* ---------- 2. sobre / economia ---------- */
.sobre{padding:48px 0 clamp(56px,7vw,96px)}
.sobre-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,88px);align-items:center;padding-top:190px}
.foto-sol{position:relative}
.foto-sol .forma{border-radius:46% 54% 42% 58% / 52% 40% 60% 48%;overflow:hidden;aspect-ratio:1/1;box-shadow:0 30px 60px -30px rgba(1,40,66,.45)}
.foto-sol .forma img{width:100%;height:100%;object-fit:cover}
.foto-sol .sol-grande{position:absolute;width:30%;top:-9%;left:-6%;color:var(--amarelo-sol)}
.foto-sol .selo{position:absolute;right:2%;bottom:6%;background:var(--branco);border-radius:16px;padding:14px 18px;display:flex;gap:12px;align-items:center;box-shadow:0 20px 40px -20px rgba(1,40,66,.4);font-size:.85rem;line-height:1.3}
.foto-sol .selo strong{display:block;font-size:1.05rem}
.sobre h2{margin:18px 0 18px}
.sobre .lead+.lead{margin-top:12px}
.publicos{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:34px 0 34px;padding:0;list-style:none}
.publicos svg{width:42px;height:42px;padding:9px;border-radius:12px;background:var(--creme);color:var(--navy);margin-bottom:12px}
.publicos h3{font-size:1rem;margin-bottom:4px}
.publicos p{font-size:.88rem;color:var(--texto-suave);line-height:1.5}

.numeros{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:clamp(56px,7vw,88px)}
.numero{background:var(--branco);border-radius:var(--raio-card);padding:24px 24px 22px}
.numero strong{display:block;font-size:clamp(1.6rem,2.6vw,2.15rem);font-weight:800;letter-spacing:-.02em;line-height:1.1;color:var(--navy)}
.numero span{display:block;font-size:.88rem;color:var(--texto-suave);margin-top:8px}
.numeros-rodape{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-top:16px;font-size:.88rem;color:var(--texto-suave)}
.link-seta{font-weight:700;color:var(--navy);text-decoration:none;border-bottom:2px solid var(--amarelo-sol);padding-bottom:2px}

/* ---------- 3. vídeo ---------- */
.video{padding:0 12px}
.video-painel{background:var(--petroleo);color:var(--branco);border-radius:var(--raio-painel);padding:clamp(56px,8vw,100px) 0}
.video-topo{display:flex;justify-content:space-between;align-items:end;gap:32px;flex-wrap:wrap;margin-bottom:40px}
.video-topo h2{max-width:16ch}
.video-topo .lead{color:rgba(255,255,255,.75);max-width:40ch}
.player{position:relative;display:block;width:100%;aspect-ratio:16/9;border-radius:var(--raio-card);overflow:hidden;border:0;padding:0;cursor:pointer;background:var(--azul-profundo)}
.player img{width:100%;height:100%;object-fit:cover;opacity:.7;transition:opacity .2s}
.player:hover img{opacity:.85}
.player .play{position:absolute;inset:0;margin:auto;width:96px;height:96px;border-radius:50%;background:var(--amarelo-sol);display:grid;place-items:center;color:var(--navy);box-shadow:0 0 0 14px rgba(254,203,1,.22)}
.player .play svg{width:34px;height:34px;margin-left:5px}
.placeholder{position:absolute;left:20px;bottom:20px;font-size:.8rem;font-weight:600;background:rgba(1,40,66,.8);color:var(--branco);padding:8px 12px;border-radius:999px;border:1px dashed rgba(255,255,255,.5)}

/* ---------- 4. três frentes ---------- */
.frentes{padding:clamp(72px,9vw,120px) 0}
.frentes-grid{display:grid;grid-template-columns:minmax(260px,.8fr) 2fr;gap:clamp(32px,5vw,64px);align-items:center}
.frentes h2{margin:18px 0}
.frentes .acoes{margin-top:28px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.card{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:440px;border-radius:var(--raio-card);overflow:hidden;color:var(--branco);text-decoration:none;padding:24px;background:var(--navy)}
.card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s}
.card:hover img{transform:scale(1.04)}
.card::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(1,40,66,0) 15%,rgba(1,40,66,.88) 55%,rgba(1,40,66,.97) 100%);z-index:1}
.card>*:not(img){position:relative;z-index:2}
.card .icone{width:48px;height:48px;border-radius:50%;background:var(--branco);color:var(--navy);display:grid;place-items:center;margin-bottom:16px}
.card .icone svg{width:24px;height:24px}
.card h3{font-size:1.35rem;margin-bottom:8px}
.card p{font-size:.9rem;color:rgba(255,255,255,.82);line-height:1.5}
.card .ir{margin-top:16px;font-weight:700;font-size:.9rem;color:var(--amarelo-sol)}
.card-vazio{background:repeating-linear-gradient(135deg,var(--navy) 0 18px,#22405F 18px 36px)}
.card>.placeholder{position:absolute;top:20px;bottom:auto}

/* ---------- 5. crédito ---------- */
.credito{padding:0 0 clamp(72px,9vw,110px)}
.credito-faixa{display:flex;align-items:center;gap:clamp(24px,4vw,56px);flex-wrap:wrap;background:var(--branco);border-radius:var(--raio-card);padding:26px clamp(20px,4vw,40px)}
.credito-faixa p{font-weight:700;max-width:20ch;line-height:1.35}
.logos{display:flex;align-items:center;gap:clamp(18px,3.5vw,44px);flex-wrap:wrap;list-style:none;padding:0;flex:1;justify-content:space-between}
.logos img{height:58px;width:auto;border-radius:10px;filter:grayscale(1);opacity:.75;transition:filter .2s,opacity .2s}
.logos img:hover{filter:none;opacity:1}
.logos .logo-larga{height:26px;border-radius:0}

/* ---------- 6. avaliações + CTA ---------- */
.fechamento{padding:0 0 clamp(72px,9vw,110px)}
.fechamento-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:14px}
.avaliacoes{min-width:0;overflow:hidden}
.avaliacoes{position:relative;background:var(--branco);border-radius:var(--raio-card);padding:clamp(28px,4vw,44px);min-height:280px}
.cta{background:var(--amarelo-sol);border-radius:var(--raio-card);padding:clamp(28px,4vw,44px);display:flex;flex-direction:column;justify-content:space-between;gap:24px}
.cta h2{font-size:clamp(1.7rem,2.8vw,2.3rem);color:var(--navy)}
.cta p{color:var(--navy)}

/* ---------- 7. localização ---------- */
.local{padding:0 12px clamp(72px,9vw,110px)}
.local-painel{position:relative;overflow:hidden;border-radius:var(--raio-painel);color:var(--branco);background:var(--gradiente-azul,radial-gradient(circle at 85% 15%,var(--azul-claro),var(--azul) 45%,var(--azul-profundo)));padding:clamp(56px,7vw,96px) 0}
.local-painel::after{content:"";position:absolute;width:420px;height:420px;right:-140px;top:-160px;border-radius:50%;border:2px dashed rgba(254,203,1,.25);pointer-events:none}
.local-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(32px,5vw,72px);align-items:center}
.local .tag{background:rgba(255,255,255,.12);color:var(--branco)}
.local h2{margin:18px 0 10px}
.local-cidade{font-size:1.05rem;font-weight:700;color:var(--amarelo-sol)}
.local-desc{color:rgba(255,255,255,.78);margin-top:10px;max-width:44ch}
.local-lista{list-style:none;padding:0;margin:28px 0 32px;display:grid;gap:16px}
.local-lista li{display:flex;gap:14px;align-items:center;font-size:1rem;line-height:1.45}
.local-lista svg{width:42px;height:42px;flex:none;padding:10px;border-radius:12px;background:rgba(255,255,255,.1);color:var(--amarelo-sol)}
.local-lista a{text-decoration:none}
.local-lista a:hover{text-decoration:underline}
.local-foto{position:relative}
.local-foto img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:var(--raio-card);box-shadow:0 30px 60px -24px rgba(0,0,0,.5)}
.local-foto .selo{position:absolute;left:-18px;bottom:24px;background:var(--branco);color:var(--navy);border-radius:14px;padding:12px 16px;display:flex;gap:10px;align-items:center;font-size:.85rem;line-height:1.3;box-shadow:0 20px 40px -16px rgba(0,0,0,.45)}
.local-foto .selo strong{display:block;font-size:.98rem}
.local-mapa{display:block;width:100%;height:340px;border:0;border-radius:var(--raio-card);margin-top:clamp(36px,5vw,56px);background:var(--azul-profundo)}

/* ---------- rodapé ---------- */
.rodape .redes{display:flex;gap:10px}
.rodape .redes a{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--fundo);color:var(--navy);transition:background .15s,color .15s}
.rodape .redes a:hover{background:var(--navy);color:var(--amarelo-sol);text-decoration:none}
.rodape .redes svg{width:20px;height:20px}
.rodape{background:var(--branco);padding:56px 0 28px}
.rodape-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr .7fr;gap:32px}
.rodape img{height:46px;width:auto;margin-bottom:14px}
.rodape p,.rodape li{font-size:.9rem;color:var(--texto-suave)}
.rodape h3{font-size:.95rem;margin-bottom:12px}
.rodape ul{list-style:none;padding:0;display:grid;gap:8px}
.rodape a{text-decoration:none}
.rodape a:hover{color:var(--navy);text-decoration:underline}
.rodape-base{border-top:1px solid var(--linha);margin-top:40px;padding-top:20px;font-size:.82rem;color:var(--texto-suave)}

.zap{position:fixed;right:20px;bottom:20px;z-index:30;width:60px;height:60px;border-radius:50%;background:#25D366;color:#fff;display:grid;place-items:center;box-shadow:0 12px 30px -8px rgba(0,0,0,.35)}
.zap svg{width:30px;height:30px}

/* entrada única do hero */
@media (prefers-reduced-motion:no-preference){
  .hero-conteudo>*{animation:sobe .7s cubic-bezier(.2,.7,.2,1) both}
  .hero-conteudo>*:nth-child(2){animation-delay:.08s}.hero-conteudo>*:nth-child(3){animation-delay:.16s}
  .hero-conteudo>*:nth-child(4){animation-delay:.24s}.hero-conteudo>*:nth-child(5){animation-delay:.32s}
  .form-card{animation:sobe .8s .3s cubic-bezier(.2,.7,.2,1) both}
  @keyframes sobe{from{opacity:0;transform:translateY(18px)}}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* ---------- responsivo ---------- */
@media (max-width:1080px){
  .form-card{position:relative;top:auto;right:auto;margin:-120px auto 0;width:min(560px,100%)}
  .hero-conteudo{padding-bottom:170px;min-height:0}
  .hero-painel::before{background:linear-gradient(180deg,rgba(1,40,66,.88),rgba(1,72,107,.62) 45%,rgba(1,40,66,.9))}
  .sobre{padding-top:56px}.sobre-grid{padding-top:0}
  .numeros{grid-template-columns:repeat(2,1fr)}
  .frentes-grid{grid-template-columns:1fr}
}
@media (max-width:900px){
  .local-grid{grid-template-columns:1fr}
  .local-painel::after{display:none}
  .local-foto .selo{left:12px}
  .local-mapa{height:300px}
  .menu,.topo .btn{display:none}
  .menu-mob{display:block;position:relative}
  .menu-mob summary{list-style:none;cursor:pointer;width:44px;height:44px;display:grid;place-items:center;border-radius:8px;background:var(--branco)}
  .menu-mob summary::-webkit-details-marker{display:none}
  .menu-mob ul{position:absolute;right:0;top:54px;background:var(--branco);border-radius:14px;padding:12px;list-style:none;min-width:220px;box-shadow:0 20px 40px -16px rgba(1,40,66,.35)}
  .menu-mob a{display:block;padding:10px 12px;text-decoration:none;font-weight:600;border-radius:8px}
  .menu-mob a:hover{background:var(--fundo)}
  .sobre-grid,.fechamento-grid{grid-template-columns:1fr}
  .foto-sol{max-width:480px;margin-inline:auto}
  .cards{grid-template-columns:1fr}
  .card{min-height:340px}
  .rodape-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:560px){
  .credito-faixa p{max-width:none}
  .logos{display:grid;grid-template-columns:repeat(3,1fr);justify-items:center;gap:20px}
  .logos li:has(.logo-larga){grid-column:1/-1}
  .hero,.video{padding:0 8px}
  .publicos{grid-template-columns:1fr}
  .numeros{grid-template-columns:1fr 1fr;gap:10px}
  .numero{padding:18px}
  .form-card{padding:22px}
  .acoes .btn{width:100%;justify-content:center}
  .rodape-grid{grid-template-columns:1fr}
}

/* =========================================================
   PÁGINAS INTERNAS
   ========================================================= */
.hero-int .hero-conteudo{min-height:560px;padding-block:clamp(56px,8vw,96px)}
.hero-int h1{max-width:17ch}
.secao{padding:clamp(72px,9vw,120px) 0}
.secao-topo{max-width:640px;margin-bottom:40px}
.secao-topo h2{margin:16px 0 14px}
.secao-topo.centro{margin-inline:auto;text-align:center}
.secao-topo.centro .lead{margin-inline:auto}
.cards-perfil .card{min-height:400px}

/* bloco texto + foto */
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,6vw,88px);align-items:center}
.split+.split{margin-top:clamp(72px,9vw,120px)}
.split.inverso .split-foto{order:2}
.split h2{margin:16px 0 16px}
.split-foto img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:var(--raio-card);box-shadow:0 30px 60px -30px rgba(1,40,66,.45)}
.beneficios{display:grid;grid-template-columns:1fr 1fr;gap:12px;list-style:none;padding:0;margin:28px 0 32px}
.beneficios li{background:var(--branco);border-radius:16px;padding:18px 20px}
.beneficios strong{display:block;font-size:1.45rem;font-weight:800;letter-spacing:-.02em;color:var(--navy);line-height:1.15}
.beneficios span{display:block;font-size:.88rem;color:var(--texto-suave);margin-top:4px;line-height:1.4}

/* como funciona */
.passos-painel{background:var(--petroleo);color:var(--branco);border-radius:var(--raio-painel);padding:clamp(56px,8vw,100px) 0}
.passos-painel .lead{color:rgba(255,255,255,.75)}
.passos{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;list-style:none;padding:0;counter-reset:passo}
.passos li{position:relative;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:var(--raio-card);padding:24px 20px 26px}
.passos li::before{counter-increment:passo;content:counter(passo);position:absolute;top:18px;right:20px;font-size:2.4rem;font-weight:800;line-height:1;color:rgba(254,203,1,.22)}
.passos svg{width:48px;height:48px;padding:11px;border-radius:50%;background:var(--amarelo-sol);color:var(--navy);margin-bottom:18px}
.passos h3{font-size:1.02rem;margin-bottom:8px}
.passos p{font-size:.88rem;line-height:1.5;color:rgba(255,255,255,.75)}

/* galeria */
.galeria{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:220px;gap:14px;list-style:none;padding:0}
.galeria li:first-child{grid-column:span 2;grid-row:span 2}
.galeria img{width:100%;height:100%;object-fit:cover;border-radius:var(--raio-card)}

/* economia (contas) */
.contas{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.contas figure{margin:0;background:var(--branco);border-radius:var(--raio-card);padding:18px}
.contas img{width:100%;height:auto;border-radius:10px}
.contas figcaption{font-size:.85rem;color:var(--texto-suave);margin-top:12px}

/* pagamento */
.pagamento{background:var(--branco);border-radius:var(--raio-painel);padding:clamp(32px,5vw,64px);display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(32px,5vw,64px);align-items:center}
.pagamento h2{margin:16px 0}
.pagamento .lead+.lead{margin-top:12px}
.pagamento .logos{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.pagamento .logos li{flex:0 0 calc((100% - 24px)/3);height:96px;display:grid;place-items:center;background:var(--branco);border:1px solid var(--linha);border-radius:16px;padding:14px}
.pagamento .logos img{height:56px;width:auto;max-width:100%;object-fit:contain;border-radius:8px}
.pagamento .logos .logo-larga{height:auto;width:82%;max-height:30px;border-radius:0}

/* perguntas frequentes */
.faq-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:clamp(32px,5vw,72px);align-items:start}
.faq-grid .acoes{margin-top:28px}
.faq{display:grid;gap:10px}
.faq details{background:var(--branco);border-radius:16px;padding:0 22px}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 0;font-weight:700;font-size:1.02rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";flex:none;width:28px;height:28px;border-radius:50%;background:var(--creme) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231E3854' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E") center/16px no-repeat;transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{color:var(--texto-suave);padding-bottom:20px;margin-top:-4px}
.faq details p+p{margin-top:-8px}

/* orçamento no fim das páginas */
.orc-painel{background:radial-gradient(circle at 85% 15%,var(--azul-claro),var(--azul) 45%,var(--azul-profundo));color:var(--branco);border-radius:var(--raio-painel);padding:clamp(48px,7vw,88px) 0}
.orc-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,420px);gap:clamp(32px,5vw,72px);align-items:center}
.orc-grid h2{margin:16px 0}
.orc-grid .lead{color:rgba(255,255,255,.8)}
.orc-grid .tag{background:rgba(255,255,255,.12);color:var(--branco)}
.form-card.estatico{position:relative;top:auto;right:auto;width:100%;margin:0;animation:none}

@media (max-width:1080px){
  .passos{grid-template-columns:repeat(2,1fr)}
  .faq-grid,.orc-grid,.pagamento{grid-template-columns:1fr}
}
@media (max-width:900px){
  .split{grid-template-columns:1fr}
  .split.inverso .split-foto{order:0}
  .galeria{grid-template-columns:1fr 1fr;grid-auto-rows:160px}
  .contas{grid-template-columns:1fr}
}
@media (max-width:560px){
  .passos{grid-template-columns:1fr}
  .beneficios{grid-template-columns:1fr 1fr}
  .beneficios strong{font-size:1.2rem}
}

/* ---------- hero de produto (páginas internas) ---------- */
.hero-produto{padding:0 12px}
.hp-painel{background:var(--branco);border-radius:var(--raio-painel);overflow:hidden}
.hp-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(32px,5vw,72px);align-items:center;padding-block:clamp(40px,6vw,72px)}
.trilha{display:flex;gap:8px;list-style:none;padding:0;font-size:.85rem;color:var(--texto-suave);margin-bottom:22px}
.trilha li+li::before{content:"/";margin-right:8px;color:var(--linha)}
.trilha a{text-decoration:none}
.trilha a:hover{text-decoration:underline}
.trilha [aria-current]{color:var(--navy);font-weight:600}
.hero-produto h1{margin:18px 0 20px;font-size:clamp(2.1rem,3.7vw,3.25rem)}
.hero-produto h1 b{color:var(--navy);-webkit-box-decoration-break:clone;box-decoration-break:clone;background:linear-gradient(transparent 60%,var(--amarelo-sol) 60% 90%,transparent 90%)}
.hero-produto .provas{margin-top:36px}
.hero-produto .provas li{color:var(--texto)}
.hero-produto .provas svg{background:var(--creme);color:var(--navy)}
.hp-visual{position:relative;padding:0 0 28px 28px}
.hp-visual::before{content:"";position:absolute;left:0;bottom:0;width:72%;height:78%;background:var(--amarelo-sol);border-radius:var(--raio-painel) var(--raio-painel) 0 var(--raio-painel)}
.hp-visual img{position:relative;width:100%;height:auto;aspect-ratio:4/3.4;object-fit:cover;border-radius:var(--raio-painel)}
.hp-chip{position:absolute;display:flex;gap:12px;align-items:center;background:var(--branco);border-radius:16px;padding:14px 18px;box-shadow:0 20px 40px -18px rgba(1,40,66,.45);font-size:.85rem;line-height:1.3}
.hp-chip strong{display:block;font-size:1.25rem;font-weight:800;color:var(--navy);letter-spacing:-.02em}
.hp-chip svg{width:34px;height:34px;flex:none;color:var(--amarelo-sol)}
.hp-chip.c1{right:-14px;top:28px}
.hp-chip.c2{left:0;bottom:56px}

/* ---------- perfis empilhados (empresas / residências) ---------- */
.perfil{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(24px,4vw,56px);align-items:stretch;background:var(--branco);border-radius:var(--raio-painel);padding:clamp(16px,2vw,20px)}
.perfil-corpo{align-self:center}
.perfil+.perfil{margin-top:20px}
.perfil-foto{position:relative}
.perfil-foto img{width:100%;height:100%;min-height:300px;object-fit:cover;border-radius:var(--raio-card)}
.perfil-foto .perfil-tag{position:absolute;left:16px;top:16px;box-shadow:0 12px 30px -10px rgba(1,40,66,.55)}
.perfil-corpo{padding:clamp(12px,2vw,24px) clamp(12px,3vw,40px) clamp(12px,2vw,24px) 0}
.perfil-tag{display:inline-flex;align-items:center;gap:12px;padding:8px 20px 8px 8px;border-radius:999px;background:var(--navy);color:var(--branco);font-size:1.05rem;font-weight:800;letter-spacing:-.01em}
.perfil-tag svg{width:38px;height:38px;padding:8px;border-radius:50%;background:var(--amarelo-sol);color:var(--navy)}
.perfil-corpo h2{font-size:clamp(1.6rem,2.4vw,2.05rem);margin:0 0 12px}
.perfil-numeros{display:grid;grid-template-columns:1fr 1fr;list-style:none;padding:0;margin:24px 0;border-top:1px solid var(--linha);border-bottom:1px solid var(--linha)}
.perfil-numeros li{padding:14px 14px 14px 0}
.perfil-numeros li:nth-child(even){padding-left:18px;border-left:1px solid var(--linha)}
.perfil-numeros li:nth-child(-n+2){border-bottom:1px solid var(--linha)}
.perfil-numeros strong{display:block;font-size:1.3rem;font-weight:800;letter-spacing:-.02em;color:var(--navy);line-height:1.15;white-space:nowrap}
.perfil-numeros span{display:block;font-size:.8rem;color:var(--texto-suave);margin-top:4px;line-height:1.35}

@media (max-width:1080px){
}
@media (max-width:900px){
  .hp-grid{grid-template-columns:1fr}
  .hp-chip.c1{right:8px}
  .perfil{grid-template-columns:1fr}
  .perfil-foto img{height:auto;min-height:0;aspect-ratio:16/10}
  .perfil-corpo{padding:4px 8px 12px}
}

/* orçamento: coluna de apoio */
.orc-lista{list-style:none;padding:0;margin:28px 0;display:grid;gap:14px}
.orc-lista li{display:flex;gap:14px;align-items:center;font-size:1rem}
.orc-lista svg{width:40px;height:40px;flex:none;padding:9px;border-radius:12px;background:rgba(255,255,255,.1);color:var(--amarelo-sol)}
.orc-contato{display:flex;flex-wrap:wrap;gap:12px 28px;padding-top:24px;border-top:1px solid rgba(255,255,255,.15);font-size:.95rem}
.orc-contato span{display:block;font-size:.8rem;color:rgba(255,255,255,.6)}
.orc-contato a{text-decoration:none;font-weight:700}
.orc-contato a:hover{text-decoration:underline}

/* ajustes mobile das páginas internas */
@media (max-width:560px){
  .cards-perfil .card{min-height:260px}
  .passos li{display:grid;grid-template-columns:44px 1fr;column-gap:14px;padding:18px 16px}
  .passos svg{width:44px;height:44px;padding:10px;margin:0;grid-row:span 2}
  .passos h3{margin:2px 0 4px;padding-right:28px}
  .passos li::before{top:14px;right:16px;font-size:1.6rem}
  .perfil-corpo .btn{width:100%;justify-content:center}
  .rodape-grid{grid-template-columns:1fr 1fr;gap:28px 20px}
  .rodape-grid>div:first-child,.rodape-grid>div:nth-child(3),.rodape-grid>div:nth-child(4){grid-column:1/-1}
  .rodape-grid>div:nth-child(3){order:2}
  .rodape-grid>div:nth-child(4){order:3}
  .rodape-grid>div:nth-child(5){order:1}
}

/* =========================================================
   AQUECIMENTO
   ========================================================= */
.atalhos{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.atalhos .card{min-height:300px}

.solucoes{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;list-style:none;padding:0;margin-top:20px}
.solucoes>li{grid-column:span 2;display:flex;flex-direction:column;background:var(--branco);border-radius:var(--raio-card);overflow:hidden}
.solucoes>li:nth-child(4),.solucoes>li:nth-child(5){grid-column:span 3}
.solucao-img{height:200px;background:#F5F8FA;padding:16px;overflow:hidden}
.solucao-img img{display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;border-radius:10px}
.solucao-corpo{padding:22px 24px 26px;display:flex;flex-direction:column;flex:1}
.solucao-corpo h3{font-size:1.15rem;margin-bottom:6px}
.solucao-corpo p{font-size:.92rem;color:var(--texto-suave);line-height:1.5}
.selos{display:flex;flex-wrap:wrap;gap:6px;list-style:none;padding:0;margin-top:auto;padding-top:16px}
.selos li{font-size:.76rem;font-weight:700;color:var(--navy);background:var(--creme);border-radius:999px;padding:5px 10px}

.comparativo{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px}
.comparativo>div{background:var(--branco);border-radius:16px;padding:20px 22px}
.comparativo>div.destaque{background:var(--navy);color:var(--branco)}
.comparativo h3{font-size:1rem;margin-bottom:6px}
.comparativo strong{display:block;font-size:1.6rem;font-weight:800;letter-spacing:-.02em;line-height:1.1}
.comparativo .destaque strong{color:var(--amarelo-sol)}
.comparativo p{font-size:.85rem;margin-top:8px;color:var(--texto-suave);line-height:1.45}
.comparativo .destaque p{color:rgba(255,255,255,.75)}

.solis{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(24px,4vw,56px);align-items:center;background:var(--branco);border-radius:var(--raio-painel);padding:clamp(24px,4vw,48px)}
.solis-img{background:#F5F8FA;border-radius:var(--raio-card);padding:20px;display:grid;place-items:center}
.solis-img img{mix-blend-mode:multiply;max-height:280px;width:auto}
.solis ul{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:22px}
.solis li{border-top:3px solid var(--amarelo-sol);padding-top:14px}
.solis li strong{display:block;font-size:1.05rem;color:var(--navy)}
.solis li span{font-size:.88rem;color:var(--texto-suave)}

.tholz{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:center;margin-top:clamp(40px,5vw,64px)}
.tholz-img{background:var(--branco);border-radius:var(--raio-card);padding:24px;display:grid;place-items:center}
.tholz-img img{width:100%;height:auto}
.tholz h3{font-size:clamp(1.4rem,2.2vw,1.8rem);font-weight:300;letter-spacing:-.02em;margin:14px 0 14px}
.tholz h3 b{font-weight:800}
.check{list-style:none;padding:0;display:grid;gap:10px}
.check li{position:relative;padding-left:30px;font-size:.95rem;line-height:1.5;color:rgba(255,255,255,.85)}
.check li::before{content:"";position:absolute;left:0;top:3px;width:20px;height:20px;border-radius:50%;background:var(--amarelo-sol) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231E3854' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12 4 4 8-8'/%3E%3C/svg%3E") center/12px no-repeat}
.check strong{color:var(--branco)}
.modos{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin-top:20px}
.modos li{background:rgba(255,255,255,.1);border-radius:999px;padding:8px 14px;font-size:.85rem}
.modos strong{color:var(--amarelo-sol)}

.case{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:center;background:var(--branco);border-radius:var(--raio-painel);padding:clamp(24px,4vw,48px)}
.case-vazio{aspect-ratio:4/3;border-radius:var(--raio-card);border:2px dashed var(--linha);display:grid;place-items:center;text-align:center;color:var(--texto-suave);font-size:.9rem;padding:24px;background:repeating-linear-gradient(135deg,#F5F8FA 0 16px,#EEF2F5 16px 32px)}
.case .perfil-numeros strong{color:var(--texto-suave)}

.faixa-numeros{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}

@media (max-width:1080px){
  .solucoes{grid-template-columns:1fr 1fr}
  .solucoes>li,.solucoes>li:nth-child(4),.solucoes>li:nth-child(5){grid-column:span 1}
  .solis,.tholz,.case{grid-template-columns:1fr}
  .faixa-numeros{grid-template-columns:1fr 1fr}
}
@media (max-width:560px){
  .atalhos,.solucoes,.comparativo{grid-template-columns:1fr}
  .atalhos .card{min-height:220px}
  .solis ul{grid-template-columns:1fr}
}
.passos-painel .perfil-tag{background:var(--branco);color:var(--navy)}

/* =========================================================
   ELETROPOSTOS / SOBRE
   ========================================================= */
.hp-visual .foto-pendente{position:relative;aspect-ratio:4/3.4;border-radius:var(--raio-painel);background:radial-gradient(circle at 70% 30%,var(--azul-claro),var(--azul) 50%,var(--azul-profundo));display:grid;place-items:center;color:var(--branco);text-align:center;overflow:hidden}
.foto-pendente svg.raio-grande{width:38%;height:auto;color:var(--amarelo-sol);opacity:.95}
.foto-pendente .placeholder{left:50%;transform:translateX(-50%);white-space:nowrap}
.tipos{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.tipo{background:var(--branco);border-radius:var(--raio-painel);padding:clamp(24px,3.5vw,40px)}
.tipo.escuro{background:var(--navy);color:var(--branco)}
.tipo-topo{display:flex;align-items:center;gap:14px;margin-bottom:16px}
.tipo-topo svg{width:52px;height:52px;padding:12px;border-radius:14px;background:var(--creme);color:var(--navy)}
.tipo.escuro .tipo-topo svg{background:var(--amarelo-sol)}
.tipo h3{font-size:1.4rem;font-weight:800;letter-spacing:-.02em}
.tipo h3 small{display:block;font-size:.8rem;font-weight:600;color:var(--texto-suave);letter-spacing:0}
.tipo.escuro h3 small{color:rgba(255,255,255,.65)}
.tipo>p{color:var(--texto-suave)}
.tipo.escuro>p{color:rgba(255,255,255,.8)}
.tipo .selos{margin-top:18px;padding-top:0}
.tipo.escuro .selos li{background:rgba(255,255,255,.12);color:var(--branco)}
.usos{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;list-style:none;padding:0}
.usos li{background:var(--branco);border-radius:var(--raio-card);padding:24px}
.usos svg{width:46px;height:46px;padding:11px;border-radius:12px;background:var(--creme);color:var(--navy);margin-bottom:14px}
.usos h3{font-size:1.05rem;margin-bottom:6px}
.usos p{font-size:.9rem;color:var(--texto-suave);line-height:1.5}
.solar-ev{background:radial-gradient(circle at 85% 15%,var(--azul-claro),var(--azul) 45%,var(--azul-profundo));color:var(--branco);border-radius:var(--raio-painel);padding:clamp(40px,6vw,72px) 0}
.solar-ev-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(32px,5vw,64px);align-items:center}
.solar-ev .lead{color:rgba(255,255,255,.8)}
.solar-ev h2{margin:16px 0}
.fluxo{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}
.fluxo{flex-wrap:nowrap}
.fluxo div{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);border-radius:18px;padding:16px 8px;text-align:center;font-size:.82rem;font-weight:600;flex:1 1 0;min-width:0}
.fluxo svg{width:36px;height:36px;color:var(--amarelo-sol);display:block;margin:0 auto 8px}
.fluxo .seta-f{width:22px;height:22px;color:rgba(255,255,255,.5);flex:none}

/* sobre */
.citacao{font-size:clamp(1.4rem,2.6vw,2.1rem);font-weight:300;letter-spacing:-.02em;line-height:1.3;max-width:30ch;margin:0 auto;text-align:center;color:var(--navy)}
.citacao b{font-weight:800}
.linha-tempo{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;list-style:none;padding:0;margin-top:32px}
.linha-tempo li{position:relative;background:var(--branco);border-radius:var(--raio-card);padding:26px 24px}
.linha-tempo strong{display:block;font-size:2rem;font-weight:800;letter-spacing:-.03em;color:var(--navy);line-height:1}
.linha-tempo strong::after{content:"";display:block;width:40px;height:4px;border-radius:4px;background:var(--amarelo-sol);margin:12px 0 14px}
.linha-tempo h3{font-size:1.05rem;margin-bottom:6px}
.linha-tempo p{font-size:.92rem;color:var(--texto-suave);line-height:1.5}
.valores{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;list-style:none;padding:0}
.valores li{background:var(--branco);border-radius:var(--raio-card);padding:28px}
.valores svg{width:52px;height:52px;padding:12px;border-radius:50%;background:var(--amarelo-sol);color:var(--navy);margin-bottom:16px}
.valores h3{font-size:1.15rem;margin-bottom:8px}
.valores p{font-size:.92rem;color:var(--texto-suave);line-height:1.55}

@media (max-width:1080px){
  .usos{grid-template-columns:1fr 1fr}
  .solar-ev-grid{grid-template-columns:1fr}
}
@media (max-width:900px){
  .tipos,.linha-tempo,.valores{grid-template-columns:1fr}
}
@media (max-width:560px){
  .usos{grid-template-columns:1fr}
  .fluxo{gap:4px}
  .fluxo div{padding:12px 4px;font-size:.72rem}
  .fluxo svg{width:28px;height:28px}
  .fluxo .seta-f{width:14px;height:14px}
}
.linha-tempo.passos-4{grid-template-columns:repeat(4,1fr)}
@media (max-width:900px){.linha-tempo.passos-4{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.linha-tempo.passos-4{grid-template-columns:1fr}}

/* =========================================================
   SOBRE NÓS (formato institucional, diferente das páginas de produto)
   ========================================================= */
.inst-hero{padding:0 12px}
.inst-painel{position:relative;overflow:hidden;background:var(--petroleo);color:var(--branco);border-radius:var(--raio-painel);padding:clamp(48px,7vw,88px) 0 0;text-align:center}
.inst-painel .sol-fundo{position:absolute;width:min(900px,120vw);left:50%;top:-38%;transform:translateX(-50%);color:var(--amarelo-sol);opacity:.09;pointer-events:none}
.inst-painel .trilha{justify-content:center}
.inst-painel .trilha,.inst-painel .trilha [aria-current]{color:rgba(255,255,255,.7)}
.inst-painel .trilha [aria-current]{color:var(--branco)}
.inst-painel h1{position:relative;font-size:clamp(2.6rem,7vw,5.6rem);line-height:1.02;margin:14px 0 18px}
.inst-painel h1 b{color:var(--amarelo-sol)}
.inst-painel .lead{position:relative;margin:0 auto;color:rgba(255,255,255,.8);max-width:56ch}
.inst-foto{position:relative;margin-top:clamp(36px,5vw,56px)}
.inst-foto img{display:block;width:100%;height:auto;aspect-ratio:21/9;object-fit:cover;object-position:50% 55%;border-radius:var(--raio-card) var(--raio-card) 0 0}
.inst-numeros{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,1fr);background:var(--branco);color:var(--texto);border-radius:var(--raio-card);box-shadow:0 30px 60px -30px rgba(1,40,66,.4);margin:-64px auto 0;width:calc(100% - 2*var(--gutter));max-width:1100px;text-align:left}
.inst-numeros div{padding:26px 28px}
.inst-numeros div+div{border-left:1px solid var(--linha)}
.inst-numeros strong{display:block;font-size:clamp(1.5rem,2.4vw,2rem);font-weight:800;letter-spacing:-.02em;color:var(--navy);line-height:1.1}
.inst-numeros span{display:block;font-size:.85rem;color:var(--texto-suave);margin-top:6px}

.historia{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,96px);align-items:start}
.historia blockquote{margin:0;position:relative;font-size:clamp(1.6rem,2.8vw,2.4rem);font-weight:300;letter-spacing:-.02em;line-height:1.25;color:var(--navy);padding-top:56px}
.historia blockquote::before{content:"“";position:absolute;top:-22px;left:-4px;font-size:7rem;font-weight:800;line-height:1;color:var(--amarelo-sol)}
.historia blockquote b{font-weight:800}
.historia .lead+.lead{margin-top:14px}

.trajetoria{position:relative;display:grid;grid-template-columns:repeat(3,1fr);list-style:none;padding:0;margin-top:clamp(48px,6vw,80px)}
.trajetoria::before{content:"";position:absolute;left:0;right:0;top:11px;height:2px;background:var(--linha)}
.trajetoria li{position:relative;padding:44px 28px 0 0}
.trajetoria li::before{content:"";position:absolute;left:0;top:0;width:24px;height:24px;border-radius:50%;background:var(--amarelo-sol);box-shadow:0 0 0 6px var(--fundo)}
.trajetoria li:last-child::before{background:var(--navy)}
.trajetoria strong{display:block;font-size:2.4rem;font-weight:800;letter-spacing:-.03em;color:var(--navy);line-height:1}
.trajetoria h3{font-size:1.05rem;margin:12px 0 6px}
.trajetoria p{font-size:.92rem;color:var(--texto-suave);line-height:1.55;max-width:34ch}

.valores-painel{background:var(--amarelo-sol);color:var(--navy);border-radius:var(--raio-painel);padding:clamp(48px,7vw,88px) 0}
.valores-painel h2{margin-bottom:clamp(28px,4vw,48px)}
.valores-2{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,40px);list-style:none;padding:0}
.valores-2 li{border-top:2px solid rgba(30,56,84,.25);padding-top:22px}
.valores-2 svg{width:52px;height:52px;padding:12px;border-radius:50%;background:var(--navy);color:var(--amarelo-sol);margin-bottom:16px}
.valores-2 h3{font-size:1.25rem;font-weight:800;margin-bottom:8px}
.valores-2 p{font-size:.95rem;line-height:1.55}

@media (max-width:900px){
  .inst-numeros{grid-template-columns:1fr 1fr;margin-top:-40px}
  .inst-numeros div:nth-child(3){border-left:0}
  .inst-numeros div:nth-child(n+3){border-top:1px solid var(--linha)}
  .inst-foto img{aspect-ratio:16/10}
  .historia,.valores-2{grid-template-columns:1fr}
  .trajetoria{grid-template-columns:1fr;gap:28px}
  .trajetoria::before{left:11px;right:auto;top:0;bottom:0;width:2px;height:auto}
  .trajetoria li{padding:0 0 0 48px}
}
@media (max-width:560px){
  .inst-numeros div{padding:18px}
}
.logo-parceiro{width:min(280px,80%);height:auto;margin-bottom:20px}

/* =========================================================
   BLOG
   ========================================================= */
.blog-topo{display:flex;justify-content:space-between;align-items:end;gap:24px;flex-wrap:wrap;margin-bottom:28px}
.temas{display:flex;flex-wrap:wrap;gap:8px;border:0;padding:0;margin:0}
.temas label{cursor:pointer}
.temas input{position:absolute;opacity:0;pointer-events:none}
.temas span{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;font-size:.9rem;font-weight:700;background:var(--branco);color:var(--navy);border:1.5px solid var(--linha);transition:background .15s,border-color .15s}
.temas span i{font-style:normal;font-size:.75rem;font-weight:700;background:var(--fundo);border-radius:999px;padding:2px 8px}
.temas input:checked+span{background:var(--navy);border-color:var(--navy);color:var(--branco)}
.temas input:checked+span i{background:var(--amarelo-sol);color:var(--navy)}
.temas input:focus-visible+span{outline:3px solid var(--amarelo-sol);outline-offset:2px}

.destaque-post{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);background:var(--branco);border-radius:var(--raio-painel);overflow:hidden;text-decoration:none;margin-bottom:20px}
.destaque-post .img{position:relative;min-height:380px}
.destaque-post img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.destaque-post .corpo{padding:clamp(28px,4vw,52px);display:flex;flex-direction:column;justify-content:center}
.destaque-post h2{font-size:clamp(1.6rem,2.6vw,2.2rem);margin:14px 0 12px;font-weight:800}

.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;list-style:none;padding:0}
.post{display:flex;flex-direction:column;height:100%;background:var(--branco);border-radius:var(--raio-card);overflow:hidden;text-decoration:none;transition:transform .2s}
.post:hover{transform:translateY(-3px)}
.post .img{position:relative;aspect-ratio:16/10;overflow:hidden}
.post img{width:100%;height:100%;object-fit:cover}
.post .corpo{padding:22px 24px 26px;display:flex;flex-direction:column;flex:1}
.post h3{font-size:1.15rem;line-height:1.3;margin:12px 0 8px}
.post p,.destaque-post p{font-size:.92rem;color:var(--texto-suave);line-height:1.55}
.meta{display:flex;gap:14px;margin-top:auto;padding-top:16px;font-size:.8rem;color:var(--texto-suave)}
.tema{display:inline-block;align-self:flex-start;font-size:.75rem;font-weight:800;padding:5px 12px;border-radius:999px;background:var(--creme);color:var(--navy)}
.tema.t-aquecimento{background:#E3F0F7}
.tema.t-eletropostos{background:var(--navy);color:var(--amarelo-sol)}
.tema.t-dicas{background:#E8F3EA}
.post[hidden]{display:none}
.exemplo{position:absolute;left:12px;top:12px;font-size:.72rem;font-weight:700;background:rgba(1,40,66,.8);color:#fff;padding:5px 10px;border-radius:999px}
.vazio-filtro{display:none;text-align:center;color:var(--texto-suave);padding:40px 0}

.paginacao{display:flex;justify-content:center;gap:8px;margin-top:40px}
.paginacao a{width:44px;height:44px;display:grid;place-items:center;border-radius:12px;background:var(--branco);text-decoration:none;font-weight:700}
.paginacao a[aria-current]{background:var(--navy);color:var(--branco)}

.newsletter{background:var(--amarelo-sol);border-radius:var(--raio-painel);padding:clamp(32px,5vw,56px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:center}
.newsletter h2{font-size:clamp(1.6rem,2.6vw,2.2rem)}
.newsletter p{margin-top:10px}
.newsletter form{display:flex;gap:10px;flex-wrap:wrap}
.newsletter input{flex:1 1 220px;font:inherit;padding:15px 16px;border-radius:var(--raio-botao);border:0}

@media (max-width:1080px){.posts{grid-template-columns:1fr 1fr}}
@media (max-width:900px){.destaque-post,.newsletter{grid-template-columns:1fr}.destaque-post .img{min-height:240px}}
@media (max-width:560px){.posts{grid-template-columns:1fr}.temas{flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px;width:100%}.temas span{white-space:nowrap}}
.post .img .foto-pendente{position:absolute;inset:0;aspect-ratio:auto}
.post .img .foto-pendente{display:grid;place-items:center;background:radial-gradient(circle at 70% 30%,var(--azul-claro),var(--azul) 50%,var(--azul-profundo))}
.post .img .foto-pendente svg{width:22%;height:auto;color:var(--amarelo-sol)}

/* páginas legais */
.legal{background:var(--branco);border-radius:var(--raio-painel);padding:clamp(28px,5vw,64px);max-width:860px;margin:0 auto}
.legal h2{font-size:1.35rem;font-weight:800;letter-spacing:-.01em;margin:36px 0 12px}
.legal h2:first-child{margin-top:0}
.legal p,.legal li{color:var(--texto-suave);font-size:1rem;line-height:1.7}
.legal p+p{margin-top:12px}
.legal ul{padding-left:20px;margin:10px 0;display:grid;gap:8px}
.legal .atualizado{font-size:.85rem;margin-top:32px;padding-top:20px;border-top:1px solid var(--linha)}
.temas{min-width:0;max-width:100%}
.temas label{position:relative}

/* carrossel em looping (aquecimento) */
.carrossel{position:relative;margin-top:20px;overflow:hidden;-webkit-mask:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);mask:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.solucoes.trilho{display:flex;gap:14px;width:max-content;margin:0;animation:trilho 40s linear infinite}
.solucoes.trilho>li,.solucoes.trilho>li:nth-child(4),.solucoes.trilho>li:nth-child(5){grid-column:auto;flex:0 0 320px}
.carrossel:hover .trilho,.carrossel:focus-within .trilho,.carrossel.pausado .trilho{animation-play-state:paused}
@keyframes trilho{to{transform:translateX(calc(-50% - 7px))}}
.carrossel-ctrl{display:flex;justify-content:flex-end;margin-top:14px}
.carrossel-pausa{width:40px;height:40px;border-radius:50%;border:0;background:var(--navy);color:var(--branco);display:grid;place-items:center;cursor:pointer}
.carrossel-pausa svg{width:18px;height:18px}
@media (prefers-reduced-motion:reduce){
  .carrossel{overflow-x:auto;-webkit-mask:none;mask:none}
  .solucoes.trilho{animation:none}
  .solucoes.trilho>li[aria-hidden]{display:none}
  .carrossel-pausa{display:none}
}
@media (max-width:560px){.solucoes.trilho>li,.solucoes.trilho>li:nth-child(4),.solucoes.trilho>li:nth-child(5){flex-basis:270px}}
.menu a,.topo .btn{white-space:nowrap}
@media (max-width:1180px){.menu{gap:20px;font-size:.9rem}.topo .logo img{height:48px}}
@media (max-width:1040px){.menu,.topo .btn{display:none}.menu-mob{display:block;position:relative}
  .menu-mob summary{list-style:none;cursor:pointer;width:44px;height:44px;display:grid;place-items:center;border-radius:8px;background:var(--branco)}
  .menu-mob summary::-webkit-details-marker{display:none}
  .menu-mob ul{position:absolute;right:0;top:54px;background:var(--branco);border-radius:14px;padding:12px;list-style:none;min-width:220px;box-shadow:0 20px 40px -16px rgba(1,40,66,.35)}
  .menu-mob a{display:block;padding:10px 12px;text-decoration:none;font-weight:600;border-radius:8px}}

/* =========================================================
   ANIMAÇÕES + DESFOQUE INFERIOR
   ========================================================= */
/* desfoque gaussiano leve na base da tela */
.desfoque-base{position:fixed;left:0;right:0;bottom:0;height:90px;z-index:25;pointer-events:none;
  -webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);
  -webkit-mask:linear-gradient(to top,#000 0%,rgba(0,0,0,.6) 40%,transparent 100%);mask:linear-gradient(to top,#000 0%,rgba(0,0,0,.6) 40%,transparent 100%);
  background:linear-gradient(to top,rgba(238,242,245,.35),transparent)}

@media (prefers-reduced-motion:no-preference){
  /* revelar ao rolar */
  .anim .rev{opacity:0;transform:translateY(28px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1);transition-delay:var(--d,0s)}
  .anim .rev.foto{transform:translateY(28px) scale(.97)}
  .anim .rev.visivel{opacity:1;transform:none}
  /* foto do topo com leve aproximação contínua */
  .hero-painel>img{animation:zoom 18s ease-out both}
  @keyframes zoom{from{transform:scale(1.08)}to{transform:scale(1)}}
  .hp-chip{animation:flutua 5s ease-in-out infinite}
  .hp-chip.c2{animation-delay:-2.5s}
  @keyframes flutua{50%{transform:translateY(-6px)}}
  .inst-painel .sol-fundo{animation:gira 90s linear infinite}
  @keyframes gira{to{transform:translateX(-50%) rotate(360deg)}}
  /* interações */
  .btn{transition:background .15s,transform .2s,box-shadow .2s}
  .btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px -12px rgba(1,40,66,.5)}
  .perfil-foto img,.split-foto img,.local-foto img,.destaque-post img{transition:transform .6s cubic-bezier(.2,.7,.2,1)}
  .perfil:hover .perfil-foto img,.destaque-post:hover img{transform:scale(1.03)}
  .play{animation:pulso 2.4s ease-out infinite}
  @keyframes pulso{0%{box-shadow:0 0 0 0 rgba(254,203,1,.45)}100%{box-shadow:0 0 0 22px rgba(254,203,1,0)}}
  .zap{animation:entra .6s 1.2s both}
  @keyframes entra{from{opacity:0;transform:scale(.6)}}
}
.desfoque-base{transition:opacity .4s}.desfoque-base.oculto{opacity:0}

/* ---------- formulário do hero (home) ---------- */
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:clamp(32px,5vw,72px);align-items:center;padding-block:clamp(48px,6vw,80px)!important;min-height:0!important}
.hero-grid h1{font-size:clamp(2.2rem,4.4vw,3.6rem)}
.sobre-grid{padding-top:0}
.sobre{padding-top:clamp(72px,9vw,120px)}
.form-hero{background:var(--branco);color:var(--texto);border-radius:var(--raio-card);overflow:hidden;box-shadow:0 40px 80px -30px rgba(0,0,0,.55)}
.fh-topo{background:var(--navy);color:var(--branco);padding:22px 26px;border-bottom:4px solid var(--amarelo-sol)}
.fh-topo h2{font-size:1.45rem;font-weight:300}
.fh-topo h2 b{color:var(--amarelo-sol)}
.fh-topo p{font-size:.85rem;color:rgba(255,255,255,.75);margin-top:6px;line-height:1.45}
.fh-corpo{padding:22px 26px 20px}
.segmento{border:0;padding:0;margin:0 0 16px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.segmento legend{font-size:.8rem;font-weight:700;margin-bottom:8px}
.segmento label{position:relative;cursor:pointer}
.segmento input{position:absolute;opacity:0;pointer-events:none}
.segmento span{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;padding:12px 4px;border:1.5px solid var(--linha);border-radius:12px;font-size:.78rem;font-weight:700;line-height:1.2;background:#F5F8FA;transition:border-color .15s,background .15s}
.segmento svg{width:22px;height:22px;color:var(--texto-suave)}
.segmento input:checked+span{border-color:var(--navy);background:var(--creme);box-shadow:inset 0 0 0 1px var(--navy)}
.segmento input:checked+span svg{color:var(--navy)}
.segmento input:focus-visible+span{outline:3px solid var(--amarelo-sol);outline-offset:2px}
.form-hero .campo{margin-bottom:12px}
.form-hero .campo em{font-style:normal;font-weight:400;color:var(--texto-suave)}
.form-hero .btn{width:100%;justify-content:center;margin-top:4px;padding:16px}
.fh-garantias{list-style:none;padding:0;margin:14px 0 0;display:flex;justify-content:center;flex-wrap:wrap;gap:6px 16px;font-size:.76rem;color:var(--texto-suave)}
.fh-garantias li{display:flex;align-items:center;gap:6px}
.fh-garantias svg{width:15px;height:15px;color:var(--azul-claro)}
@media (prefers-reduced-motion:no-preference){.form-hero{animation:sobe .8s .25s cubic-bezier(.2,.7,.2,1) both}}
@media (max-width:1080px){
  .hero-grid{grid-template-columns:1fr}
  .form-hero{max-width:560px;width:100%}
  .sobre{padding-top:56px}
}
.fh-garantias a{color:inherit}
.form-hero{border:1px solid rgba(255,255,255,.18)}
@media (max-width:1080px){.fh-topo{background:var(--azul-profundo)}}

/* formulário do hero: opção A (branco com faixa amarela) + vazado na base */
.fh-topo{background:var(--branco);color:var(--navy);border-bottom:1px solid var(--linha);border-top:6px solid var(--amarelo-sol)}
.fh-topo h2 b{color:var(--navy)}
.fh-topo p{color:var(--texto-suave)}
.hero:has(.form-hero) .hero-painel{overflow:visible}
.hero:has(.form-hero) .hero-painel>img,.hero:has(.form-hero) .hero-painel::before{border-radius:var(--raio-painel)}
.hero:has(.form-hero) .hero-painel>img{animation:none}
.form-hero{position:relative;top:110px;z-index:3;border:0;box-shadow:0 40px 80px -30px rgba(1,40,66,.45)}
.hero:has(.form-hero)+.sobre,.hero:has(.form-hero)~.sobre{padding-top:190px}
@media (max-width:1080px){
  .form-hero{top:0}
  .hero:has(.form-hero)~.sobre{padding-top:56px}
  .fh-topo{background:var(--branco)}
}
/* tipo de projeto (pílulas) */
.tipo-projeto{border:0;padding:0;margin:0 0 14px}
.tipo-projeto legend{font-size:.8rem;font-weight:700;margin-bottom:8px}
.pilulas{display:grid;grid-template-columns:repeat(3,1fr);background:#F5F8FA;border:1.5px solid var(--linha);border-radius:10px;padding:3px;gap:3px}
.pilulas label{position:relative;cursor:pointer}
.pilulas input{position:absolute;opacity:0;pointer-events:none}
.pilulas span{display:block;text-align:center;padding:9px 4px;border-radius:7px;font-size:.82rem;font-weight:700;color:var(--texto-suave);transition:background .15s,color .15s}
.pilulas label:hover span{color:var(--navy)}
.pilulas input:checked+span{background:var(--navy);color:var(--branco);box-shadow:0 4px 10px -4px rgba(1,40,66,.5)}
.pilulas input:focus-visible+span{outline:3px solid var(--amarelo-sol);outline-offset:1px}
.tipo-projeto.invalido .pilulas{border-color:#B42318}
.tipo-projeto.invalido .erro{display:block}

/* ---------- menu Serviços (submenu) ---------- */
.menu{align-items:center}
.tem-sub{position:relative}
.sub-btn{display:flex;align-items:center;gap:4px;background:none;border:0;padding:6px 0;font:inherit;font-weight:600;color:var(--texto);cursor:pointer;border-bottom:2px solid transparent}
.sub-btn svg{width:16px;height:16px;transition:transform .2s}
.tem-sub.ativo .sub-btn,.sub-btn:hover{border-color:var(--amarelo-sol)}
.submenu{position:absolute;left:50%;top:calc(100% + 14px);transform:translate(-50%,8px);min-width:300px;list-style:none;padding:10px;margin:0;background:var(--branco);border-radius:16px;box-shadow:0 24px 50px -20px rgba(1,40,66,.4);opacity:0;visibility:hidden;transition:opacity .18s,transform .18s,visibility .18s;z-index:40}
.submenu::before{content:"";position:absolute;left:0;right:0;top:-16px;height:16px}
.submenu a{display:flex;gap:12px;align-items:center;padding:10px 12px;border-radius:10px;border:0!important;text-decoration:none}
.submenu a:hover,.submenu a[aria-current]{background:var(--fundo)}
.submenu svg{width:38px;height:38px;flex:none;padding:9px;border-radius:10px;background:var(--creme);color:var(--navy)}
.submenu a[aria-current] svg{background:var(--amarelo-sol)}
.submenu strong{display:block;font-size:.95rem;color:var(--navy)}
.submenu span{font-size:.8rem;font-weight:400;color:var(--texto-suave);line-height:1.3}
.tem-sub:hover .submenu,.tem-sub:focus-within .submenu,.tem-sub.aberto .submenu{opacity:1;visibility:visible;transform:translate(-50%,0)}
.tem-sub:hover .sub-btn svg,.tem-sub.aberto .sub-btn svg{transform:rotate(180deg)}
.mob-grupo{padding:10px 12px 4px;font-size:.75rem;font-weight:700;color:var(--texto-suave);text-transform:none}
.mob-sub a{padding-left:24px!important}
.rodape .selo-weg{height:auto;width:170px;margin:18px 0 0}
.player iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.player img{opacity:.85}

/* vídeo de fundo do hero (home) */
.hero-painel>.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:var(--raio-painel)}

/* hero da home mais baixo */
.hero-grid{padding-block:clamp(32px,4vw,52px)!important}
.hero-grid h1{margin:16px 0 16px}
.hero-grid .acoes{margin-top:26px}
.hero-grid .provas{margin-top:30px}
.fh-topo{padding:16px 24px}
.fh-topo h2{font-size:1.3rem}
.fh-topo p{margin-top:4px}
.fh-corpo{padding:16px 24px 16px}
.segmento{margin-bottom:12px}
.segmento span{padding:9px 4px;gap:4px}
.tipo-projeto{margin-bottom:10px}
.pilulas span{padding:7px 4px}
.form-hero .campo{margin-bottom:9px}
.form-hero .campo span{margin-bottom:4px}
.form-hero .campo input{padding:10px 14px}
.form-hero .btn{padding:14px;margin-top:2px}
.fh-garantias{margin-top:10px}
.form-hero{top:90px}
.hero:has(.form-hero)~.sobre{padding-top:160px}
@media (max-width:1080px){.form-hero{top:0}.hero:has(.form-hero)~.sobre{padding-top:56px}}
@media (min-width:1081px){
  .form-hero{top:0;align-self:start;margin-bottom:-110px}
  .hero-grid{padding-bottom:clamp(40px,4vw,56px)!important}
}

/* sol animado e selo flutuando (bloco Sobre da home) */
.foto-sol .sol-grande{top:-3%;left:1%;width:28%;z-index:2;filter:drop-shadow(0 6px 14px rgba(254,203,1,.35))}
.foto-sol .selo{z-index:2}
@media (prefers-reduced-motion:no-preference){
  .foto-sol .sol-grande{animation:sol-gira 24s linear infinite,sol-brilha 3.2s ease-in-out infinite}
  .foto-sol .selo{animation:selo-flutua 5s ease-in-out infinite}
  .foto-sol .selo .sol{animation:sol-gira 10s linear infinite}
  @keyframes sol-gira{to{transform:rotate(360deg)}}
  @keyframes sol-brilha{50%{scale:1.06;filter:drop-shadow(0 6px 22px rgba(254,203,1,.6))}}
  @keyframes selo-flutua{50%{transform:translateY(-8px)}}
}
@media (prefers-reduced-motion:no-preference){
  .foto-sol .selo span{animation:texto-desliza 5s ease-in-out infinite}
  @keyframes texto-desliza{50%{transform:translateX(3px)}}
}
.rodape .selo-weg{width:150px;margin-top:20px;opacity:.9}
.player-cta{font-family:var(--fonte);position:absolute;left:50%;top:calc(50% + 70px);transform:translateX(-50%);white-space:nowrap;background:rgba(1,40,66,.72);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--branco);font-weight:700;font-size:.95rem;padding:10px 18px;border-radius:999px;border:1px solid rgba(255,255,255,.25);transition:background .2s}
.player:hover .player-cta{background:var(--navy)}
@media (max-width:560px){.player .play{width:68px;height:68px}.player .play svg{width:26px;height:26px}.player-cta{top:calc(50% + 48px);font-size:.8rem;padding:7px 12px}}
/* CTA do vídeo: modelo 2 (texto limpo com sublinhado amarelo) */
.player-cta{display:flex;align-items:center;gap:8px;background:none!important;border:0;-webkit-backdrop-filter:none;backdrop-filter:none;padding:4px 2px 6px;border-radius:0;font-size:1rem;letter-spacing:.01em;text-shadow:0 2px 12px rgba(1,40,66,.8);top:calc(50% + 66px)}
.player-cta svg{width:20px;height:20px;color:var(--amarelo-sol);filter:drop-shadow(0 2px 6px rgba(1,40,66,.7))}
.player-cta::after{content:"";position:absolute;left:28px;right:2px;bottom:0;height:2px;border-radius:2px;background:var(--amarelo-sol);transform-origin:left;transform:scaleX(.35);transition:transform .35s}
.player:hover .player-cta::after{transform:scaleX(1)}
@media (prefers-reduced-motion:no-preference){.player-cta svg{animation:toque 1.8s ease-in-out infinite}@keyframes toque{50%{transform:translateY(-3px)}}}
@media (max-width:560px){.player-cta{top:calc(50% + 46px);font-size:.85rem}}

/* ---------- pop-up de orçamento ---------- */
.modal-orc{border:0;padding:0;background:transparent;width:min(440px,calc(100% - 24px));max-height:calc(100dvh - 24px);overflow:auto;border-radius:var(--raio-card)}
.modal-orc::backdrop{background:rgba(1,40,66,.55);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.modal-orc .form-hero{position:relative;top:0;margin:0;animation:none;box-shadow:0 40px 80px -20px rgba(0,0,0,.5)}
.modal-fechar{position:absolute;right:12px;top:16px;width:36px;height:36px;border-radius:50%;border:0;background:var(--fundo);color:var(--navy);display:grid;place-items:center;cursor:pointer;z-index:2}
.modal-fechar:hover{background:var(--linha)}
.modal-fechar svg{width:18px;height:18px}
.modal-orc .fh-topo{padding-right:60px}
@media (prefers-reduced-motion:no-preference){
  .modal-orc[open]{animation:modal-entra .35s cubic-bezier(.2,.7,.2,1)}
  .modal-orc[open]::backdrop{animation:fundo-entra .3s ease}
  @keyframes modal-entra{from{opacity:0;transform:translateY(20px) scale(.98)}}
  @keyframes fundo-entra{from{opacity:0}}
}
.campo.invalido input{border-color:#B42318}
.campo.invalido .erro{display:block}
.modal-orc{margin:auto;inset:0;position:fixed}

/* =========================================================
   CONTATO
   ========================================================= */
.contato-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(32px,5vw,72px);align-items:start}
.canais{list-style:none;padding:0;display:grid;gap:10px}
.canais a{display:flex;gap:16px;align-items:center;background:var(--branco);border-radius:16px;padding:16px 18px;text-decoration:none;transition:transform .2s,box-shadow .2s}
.canais a:hover{transform:translateX(4px);box-shadow:0 14px 30px -18px rgba(1,40,66,.4)}
.canais svg{width:46px;height:46px;flex:none;padding:12px;border-radius:12px;background:var(--creme);color:var(--navy)}
.canais strong{display:block;font-size:.8rem;font-weight:700;color:var(--texto-suave)}
.canais span{font-weight:600;color:var(--navy);line-height:1.4}
.canais-redes{display:flex;align-items:center;gap:10px;margin:22px 0 28px;font-size:.9rem;color:var(--texto-suave)}
.canais-redes a{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--branco);color:var(--navy)}
.canais-redes a:hover{background:var(--navy);color:var(--amarelo-sol)}
.canais-redes svg{width:19px;height:19px}
.aviso-orc{background:var(--navy);color:var(--branco);border-radius:var(--raio-card);padding:24px}
.aviso-orc p{color:rgba(255,255,255,.78);font-size:.92rem;margin:6px 0 16px}
.form-contato{background:var(--branco);border-radius:var(--raio-painel);padding:clamp(24px,4vw,44px);border-top:6px solid var(--amarelo-sol)}
.form-contato h2{font-size:clamp(1.6rem,2.6vw,2.1rem)}
.form-contato .sub{color:var(--texto-suave);margin:6px 0 22px}
.assuntos{display:flex;flex-wrap:wrap;gap:8px}
.assuntos label{position:relative;cursor:pointer}
.assuntos input{position:absolute;opacity:0;pointer-events:none}
.assuntos span{display:inline-block;padding:9px 14px;border-radius:999px;border:1.5px solid var(--linha);background:#F5F8FA;font-size:.85rem;font-weight:700;color:var(--texto-suave)}
.assuntos input:checked+span{background:var(--navy);border-color:var(--navy);color:var(--branco)}
.assuntos input:focus-visible+span{outline:3px solid var(--amarelo-sol);outline-offset:2px}
.campos-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.form-contato .campo em{font-style:normal;font-weight:400;color:var(--texto-suave)}
.form-contato .campo.invalido textarea{border-color:#B42318}
.form-contato .btn{margin-top:6px}
.form-contato .form-nota{text-align:left;margin-top:12px}
.form-ok{margin-top:14px;padding:12px 14px;border-radius:10px;background:#E8F3EA;color:#1F5130;font-size:.9rem;font-weight:600}
.mapa-contato{display:block;width:100%;height:380px;border:0;border-radius:var(--raio-painel);background:var(--linha)}
@media (max-width:900px){.contato-grid{grid-template-columns:1fr}}
@media (max-width:560px){.campos-2{grid-template-columns:1fr}.form-contato .btn{width:100%;justify-content:center}}

/* =========================================================
   REVISÃO MOBILE
   ========================================================= */
@media (max-width:560px){
  /* rodapé: área de toque maior e espaço para o botão flutuante */
  .rodape ul{gap:2px}
  .rodape ul a{display:inline-block;padding:7px 0}
  .rodape-base{padding-bottom:84px;line-height:1.9}
  .rodape-base a{padding:6px 0}
  /* links de contato em blocos azuis */
  .orc-contato a,.local-lista a{display:inline-block;padding:6px 0}
  .link-seta{display:inline-block;padding:8px 0}
  /* formulário do topo: rótulos dos 3 serviços em uma linha */
  .segmento span{font-size:.72rem;padding:9px 2px}
  /* chips de interesse dos formulários internos em 3 colunas */
  .orc-grid .chips{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
  .orc-grid .chips span{display:block;text-align:center;padding:9px 2px;font-size:.78rem}
  /* logos de crédito em Formas de pagamento */
  .pagamento .logos{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
  .pagamento .logos li{flex:none;height:74px;padding:10px}
  .pagamento .logos img{height:44px}
  .pagamento .logos .logo-larga{width:92%;max-height:22px}
  .pagamento .logos li:has(.logo-larga){grid-column:auto}
  /* números da Home sem quebrar "milhões" */
  .numero strong{font-size:1.45rem}
  /* endereço com CEP inteiro */
  .local-lista span,.canais span{text-wrap:pretty}
}
.cep{white-space:nowrap}
@media (max-width:560px){.pagamento .logos{justify-items:stretch}.pagamento .logos li{width:auto}}
/* formulário padrão também no fim das páginas internas */
.orc-grid .form-hero.estatico{top:0;margin:0;align-self:center;box-shadow:0 30px 60px -24px rgba(0,0,0,.45)}
@media (min-width:1081px){.orc-grid .form-hero.estatico{margin-bottom:0}}

/* logos de crédito da Home: grade organizada em telas menores */
@media (max-width:900px){
  .credito-faixa{flex-direction:column;align-items:stretch;gap:18px}
  .credito-faixa p{max-width:none}
  .credito-faixa .logos{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;justify-items:stretch;align-items:stretch}
  .credito-faixa .logos li,.credito-faixa .logos li:has(.logo-larga){grid-column:auto;height:84px;display:grid;place-items:center;padding:12px;border:1px solid var(--linha);border-radius:14px;background:var(--branco)}
  .credito-faixa .logos img{height:52px;width:auto;max-width:100%;object-fit:contain}
  .credito-faixa .logos .logo-larga{height:auto;width:92%;max-height:26px}
}
@media (max-width:560px){
  .credito-faixa .logos li,.credito-faixa .logos li:has(.logo-larga){height:72px;padding:10px}
  .credito-faixa .logos img{height:42px}
  .credito-faixa .logos .logo-larga{max-height:20px}
}

/* =========================================================
   LOGOS DE BANCOS (padrão único: Home e Energia Solar)
   ========================================================= */
.logos.logos-bancos{display:grid!important;gap:10px;list-style:none;padding:0;margin:0;justify-content:stretch}
.logos.logos-bancos li,.logos.logos-bancos li:has(.logo-larga){grid-column:auto!important;flex:none!important;width:auto;height:auto;aspect-ratio:9/4;display:grid;place-items:center;padding:2px 6px;background:var(--branco);border:1px solid var(--linha);border-radius:14px;transition:border-color .2s,box-shadow .2s}
.logos.logos-bancos img{width:100%!important;height:100%!important;max-height:none!important;object-fit:contain;border-radius:0;filter:grayscale(1);opacity:.7;transition:filter .2s,opacity .2s}
.logos.logos-bancos li:hover{border-color:var(--amarelo-sol);box-shadow:0 10px 24px -16px rgba(1,40,66,.4)}
.logos.logos-bancos li:hover img{filter:none;opacity:1}
/* Home: faixa com 6 logos em linha no desktop */
.credito-faixa .logos-bancos{grid-template-columns:repeat(6,1fr);flex:1}
/* Energia Solar: grade 3x2 */
.pagamento .logos-bancos{grid-template-columns:repeat(3,1fr)}
@media (max-width:1180px){.credito-faixa .logos-bancos{grid-template-columns:repeat(3,1fr)}}
@media (max-width:900px){.credito-faixa{flex-direction:column;align-items:stretch}}
@media (max-width:560px){
  .credito-faixa .logos-bancos,.pagamento .logos-bancos{grid-template-columns:repeat(3,1fr);gap:8px}
  .logos.logos-bancos li{padding:4px 6px;border-radius:12px}
}
.logos.logos-bancos li{min-width:0}.credito-faixa .logos-bancos{min-width:0;width:100%}
/* logos de bancos sem molduras */
.logos.logos-bancos li,.logos.logos-bancos li:has(.logo-larga){border:0!important;background:transparent!important;box-shadow:none!important;padding:0 4px}
.logos.logos-bancos li:hover{box-shadow:none}
.logos.logos-bancos{gap:clamp(8px,2vw,24px)}
/* Formas de pagamento: texto mais compacto */
.pagamento h2{font-size:clamp(1.6rem,2.6vw,2.2rem);margin:14px 0 14px}
.pagamento .lead{font-size:.98rem;max-width:46ch}
.pagamento{padding:clamp(28px,4vw,52px)}
.pagamento .logos-bancos{row-gap:clamp(4px,1vw,10px)}
/* Formas de pagamento v2: texto em duas colunas e logos embaixo */
.pagamento.pagamento-v2{display:block}
.pg-topo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,72px);align-items:end}
.pagamento-v2 h2{margin:14px 0 0}
.pagamento-v2 .lead{max-width:none}
.pagamento-v2 .lead+.lead{margin-top:10px}
.pg-rotulo{margin:clamp(28px,4vw,44px) 0 14px;padding-top:clamp(20px,3vw,28px);border-top:1px solid var(--linha);font-size:.8rem;font-weight:700;color:var(--texto-suave);text-align:center}
.pagamento-v2 .logos-bancos{grid-template-columns:repeat(6,1fr)}
@media (max-width:900px){.pg-topo{grid-template-columns:1fr;gap:14px}.pagamento-v2 .logos-bancos{grid-template-columns:repeat(3,1fr)}}

/* ---------- menu mobile em tela cheia ---------- */
.menu-full{position:fixed;inset:0;z-index:60;display:flex;flex-direction:column;overflow-y:auto;padding:16px 20px calc(24px + env(safe-area-inset-bottom));color:var(--branco);background:radial-gradient(circle at 90% 0%,var(--azul-claro),var(--azul) 40%,var(--azul-profundo))}
@media (prefers-reduced-motion:no-preference){.menu-full.aberto{animation:mf-entra .28s cubic-bezier(.2,.7,.2,1)}.menu-full.aberto .mf-lista li{animation:mf-item .35s cubic-bezier(.2,.7,.2,1) both}.menu-full.aberto .mf-lista li:nth-child(2){animation-delay:.04s}.menu-full.aberto .mf-lista li:nth-child(3){animation-delay:.08s}@keyframes mf-entra{from{opacity:0;transform:translateY(-12px)}}@keyframes mf-item{from{opacity:0;transform:translateX(-10px)}}}
.menu-full[hidden]{display:none}
.mf-topo{display:flex;justify-content:space-between;align-items:center;height:56px;margin-bottom:12px}
.mf-logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:1.2rem;text-decoration:none;color:var(--branco)}
.mf-logo svg{width:30px;height:30px;color:var(--amarelo-sol)}
.mf-fechar{width:46px;height:46px;border-radius:50%;border:0;background:rgba(255,255,255,.12);color:var(--branco);display:grid;place-items:center;cursor:pointer}
.mf-fechar svg{width:22px;height:22px}
.mf-grupo{font-size:.78rem;font-weight:700;color:rgba(255,255,255,.55);margin:14px 4px 6px}
.mf-lista{list-style:none;padding:0;margin:0;display:grid;gap:6px}
.mf-lista+.mf-lista{margin-top:6px}
.mf-lista a{display:flex;align-items:center;gap:14px;padding:12px;border-radius:16px;text-decoration:none;color:var(--branco);background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08)}
.mf-lista a:active,.mf-lista a:hover{background:rgba(255,255,255,.12)}
.mf-lista svg{width:44px;height:44px;flex:none;padding:11px;border-radius:12px;background:rgba(255,255,255,.1);color:var(--amarelo-sol)}
.mf-lista strong{display:block;font-size:1.02rem}
.mf-lista span{font-size:.8rem;color:rgba(255,255,255,.65);line-height:1.3}
.mf-lista a[aria-current]{background:var(--branco);color:var(--navy)}
.mf-lista a[aria-current] svg{background:var(--amarelo-sol);color:var(--navy)}
.mf-lista a[aria-current] span{color:var(--texto-suave)}
.mf-base{margin-top:auto;padding-top:22px;display:grid;gap:14px}
.mf-base .btn{justify-content:center;width:100%}
.mf-redes{display:flex;justify-content:center;gap:12px}
.mf-redes a{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.12);color:var(--branco)}
.mf-redes svg{width:20px;height:20px}
.menu-mob ul{display:none!important}
@media (min-width:1041px){.menu-full{display:none!important}}


/* =========================================================
   TRABALHE CONOSCO
   ========================================================= */
.canais-info div{display:flex;gap:16px;align-items:center;background:var(--branco);border-radius:16px;padding:16px 18px}
.honey{position:absolute;left:-9999px}
.campo-arquivo input{padding:10px;background:#F5F8FA;cursor:pointer}
.campo-arquivo input::file-selector-button{font:inherit;font-weight:700;font-size:.85rem;border:0;border-radius:999px;padding:8px 14px;margin-right:12px;background:var(--navy);color:var(--branco);cursor:pointer}
.aceite{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-start;font-size:.85rem;color:var(--texto-suave);cursor:pointer}
.aceite input{width:18px;height:18px;margin-top:2px;accent-color:var(--navy);flex:none}
.aceite > span{flex:1;font-weight:400;font-size:.85rem;margin:0}
.aceite .erro{flex-basis:100%}
.form-contato .campo.invalido input[type=file]{border-color:#B42318}
@media (max-width:900px){#form-curriculo{order:-1}}

/* =========================================================
   DEPOIMENTOS (Google, sem widget de terceiros)
   ========================================================= */
.dep-topo{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin:20px 0 18px}
.dep-nota{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:.88rem;color:var(--texto-suave)}
.dep-nota strong{font-size:1.6rem;font-weight:800;color:var(--navy);line-height:1}
.dep-estrelas{color:var(--amarelo-sol);letter-spacing:2px;font-size:1.05rem;line-height:1}
.dep-ctrl{display:flex;gap:8px}
.dep-btn{width:44px;height:44px;border-radius:50%;border:1.5px solid var(--linha);background:var(--branco);color:var(--navy);display:grid;place-items:center;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.dep-btn:hover,.dep-btn:focus-visible{background:var(--navy);border-color:var(--navy);color:var(--amarelo-sol)}
.dep-btn svg{width:18px;height:18px}
.dep-janela{container-type:inline-size}
.dep-trilho{list-style:none;padding:0;margin:0;display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}
.dep-trilho::-webkit-scrollbar{display:none}
.dep-trilho:focus-visible{outline:3px solid var(--amarelo-sol);outline-offset:4px;border-radius:12px}
.dep-card{flex:0 0 100%;scroll-snap-align:start;display:flex;flex-direction:column;gap:14px;background:#F5F8FA;border-radius:16px;padding:22px}
@container (min-width:560px){.dep-card{flex-basis:calc((100% - 14px)/2)}}
@container (min-width:900px){.dep-card{flex-basis:calc((100% - 28px)/3)}}
.dep-card p{color:var(--texto);line-height:1.6;font-size:.95rem;flex:1}
.dep-autor{display:flex;align-items:center;gap:12px;font-size:.78rem;color:var(--texto-suave)}
.dep-autor strong{display:block;font-size:.92rem;color:var(--navy)}
.dep-avatar{width:40px;height:40px;flex:none;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:var(--amarelo-sol);font-weight:800}
.dep-link{display:inline-block;margin-top:16px;padding:8px 0;font-weight:700;font-size:.9rem;color:var(--azul)}
/* bloco próprio nas páginas internas */
.depoimentos-painel{background:var(--branco);border-radius:var(--raio-painel);padding:clamp(28px,4vw,48px)}
.depoimentos-painel .dep-card{background:var(--fundo)}
.dep-card blockquote{margin:0;flex:1}

/* =========================================================
   ARTIGO DO BLOG
   ========================================================= */
.artigo-topo{max-width:860px;padding-top:clamp(28px,4vw,48px)}
.artigo-topo h1{font-size:clamp(2rem,4.2vw,3.1rem);line-height:1.12;font-weight:800;margin:16px 0 14px}
.artigo-topo .lead{max-width:none}
.artigo-meta{margin-top:18px;font-size:.88rem;color:var(--texto-suave)}
.artigo-meta a{color:var(--navy);font-weight:700}
.artigo-capa{max-width:1080px;margin-top:clamp(24px,3vw,36px)}
.artigo-capa img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:var(--raio-painel)}
.artigo-corpo{max-width:760px;margin:clamp(32px,4vw,52px) auto 0;padding:0 var(--gutter);font-size:1.06rem;line-height:1.75;color:var(--texto)}
.artigo-corpo>*+*{margin-top:1.1em}
.artigo-corpo h2{font-size:clamp(1.45rem,2.4vw,1.85rem);line-height:1.25;font-weight:800;margin-top:2.1em}
.artigo-corpo h3{font-size:1.18rem;font-weight:800;margin-top:1.6em}
.artigo-corpo ul,.artigo-corpo ol{padding-left:1.3em}
.artigo-corpo li+li{margin-top:.45em}
.artigo-corpo li::marker{color:var(--azul);font-weight:800}
.artigo-corpo a:not(.btn){color:var(--azul);font-weight:600;text-underline-offset:3px}
.resposta{background:var(--creme);border-left:5px solid var(--amarelo-sol);border-radius:0 16px 16px 0;padding:20px 24px;font-size:1.08rem}
.formula{background:var(--navy);color:var(--branco);border-radius:14px;padding:16px 22px;font-weight:700;text-align:center}
.nota{font-size:.9rem;color:var(--texto-suave)}
.tabela{width:100%;border-collapse:collapse;font-size:.95rem;line-height:1.5;background:var(--branco);border-radius:16px;overflow:hidden;display:block;overflow-x:auto}
.tabela th,.tabela td{padding:12px 16px;text-align:left;vertical-align:top;border-bottom:1px solid var(--linha)}
.tabela thead th{background:var(--navy);color:var(--branco);font-weight:700}
.tabela tbody tr:last-child td{border-bottom:0}
.tabela td:first-child{font-weight:700;color:var(--navy)}
.artigo-faq{margin-top:2.6em}
.artigo-faq .faq{margin-top:18px;font-size:1rem}
.artigo-cta{margin-top:2.6em;background:var(--navy);color:var(--branco);border-radius:var(--raio-card);padding:clamp(24px,3vw,34px);display:grid;gap:18px}
.artigo-cta strong{font-size:1.2rem;line-height:1.3;display:block}
.artigo-cta p{color:rgba(255,255,255,.78);font-size:.95rem;margin-top:6px}
.artigo-cta-botoes{display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.artigo-cta .link-seta{color:var(--amarelo-sol)!important}
@media (max-width:560px){.artigo-corpo{font-size:1rem}.artigo-cta .btn{width:100%;justify-content:center}}

/* energia solar: bloco local */
.local-es{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr);gap:clamp(24px,5vw,72px);align-items:start;background:var(--branco);border-radius:var(--raio-painel);padding:clamp(28px,4vw,52px)}
.local-es .tag svg{width:16px;height:16px;color:var(--azul)}
.local-es-texto p{color:var(--texto-suave);line-height:1.7}
.local-es-texto p+p{margin-top:14px}
@media (max-width:900px){.local-es{grid-template-columns:1fr}}

/* página local: energia solar em Fazenda Rio Grande */
.local-motivos{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.local-motivos li{background:var(--branco);border-radius:var(--raio-card);padding:26px}
.local-motivos svg{width:46px;height:46px;padding:11px;border-radius:12px;background:var(--creme);color:var(--navy)}
.local-motivos h3{margin:16px 0 8px}
.local-motivos p,.local-etapas p{color:var(--texto-suave);font-size:.95rem;line-height:1.55}
.local-etapas{list-style:none;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.local-etapas li{background:var(--branco);border-radius:var(--raio-card);padding:24px}
.local-etapas strong{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--amarelo-sol);color:var(--navy);font-weight:800}
.local-etapas h3{margin:14px 0 6px}
.posts-2{grid-template-columns:1fr 1fr}
@media (max-width:1080px){.local-motivos{grid-template-columns:1fr 1fr}.local-etapas{grid-template-columns:repeat(3,1fr)}}
@media (max-width:560px){.local-motivos,.local-etapas,.posts-2{grid-template-columns:1fr}}
.tag>svg:not(.sol){width:16px;height:16px;flex:none;color:var(--azul)}

/* página local: cartão da sede dentro do orçamento */
.sede-mini{display:flex;gap:16px;align-items:center;margin-top:28px;padding:16px;border-radius:18px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14)}
.sede-mini img{width:112px;height:84px;object-fit:cover;border-radius:12px;flex:none}
.sede-mini strong{display:block;font-size:1rem}
.sede-mini p{font-size:.9rem;color:rgba(255,255,255,.78);line-height:1.45;margin:2px 0 8px}
.sede-mini a{color:var(--amarelo-sol);font-weight:700;font-size:.9rem;text-decoration:none}
@media (max-width:560px){.sede-mini{flex-direction:column;align-items:flex-start}.sede-mini img{width:100%;height:150px}}
