/* ============================================================
   TERMOPRO SERVICE LTDA — Folha de estilo principal
   Paleta: preto, branco, vermelho, azul
   ============================================================ */
:root{
  --preto:#0d1117;
  --grafite:#161c26;
  --grafite-2:#1e2632;
  --vermelho:#d92323;
  --vermelho-escuro:#b01a1a;
  --azul:#1273b8;
  --azul-claro:#2aa7e0;
  --branco:#ffffff;
  --cinza-bg:#f4f6f8;
  --cinza-linha:#e3e8ee;
  --texto:#2a323d;
  --texto-suave:#5b6672;
  --sombra:0 10px 30px rgba(13,17,23,.10);
  --raio:14px;
  --largura:1180px;
  --fonte-titulo:"Barlow Condensed","Arial Narrow",sans-serif;
  --fonte-corpo:"Inter","Segoe UI",Arial,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--fonte-corpo);color:var(--texto);background:var(--branco);line-height:1.65;font-size:16px}
img{max-width:100%;display:block}
a{color:var(--azul);text-decoration:none}
a:hover{color:var(--vermelho)}
.container{max-width:var(--largura);margin:0 auto;padding:0 22px}
h1,h2,h3,h4{font-family:var(--fonte-titulo);color:var(--preto);line-height:1.15;font-weight:700;letter-spacing:.3px}
h1{font-size:clamp(2.1rem,4.5vw,3.4rem);text-transform:uppercase}
h2{font-size:clamp(1.7rem,3.2vw,2.4rem);text-transform:uppercase}
h3{font-size:1.35rem}
p.lead{font-size:1.12rem;color:var(--texto-suave)}
section{padding:72px 0}
.kicker{display:inline-block;font-family:var(--fonte-titulo);text-transform:uppercase;letter-spacing:2.5px;font-weight:600;font-size:.95rem;color:var(--vermelho);margin-bottom:10px}
.kicker::before{content:"";display:inline-block;width:28px;height:3px;background:var(--vermelho);margin-right:10px;vertical-align:middle;border-radius:2px}
.center{text-align:center}
.center .kicker::after{content:"";display:inline-block;width:28px;height:3px;background:var(--vermelho);margin-left:10px;vertical-align:middle;border-radius:2px}

/* ---------- Botões ---------- */
.btn{display:inline-block;padding:14px 30px;border-radius:8px;font-weight:700;font-family:var(--fonte-titulo);font-size:1.05rem;letter-spacing:1.2px;text-transform:uppercase;transition:.25s;border:2px solid transparent;cursor:pointer;text-align:center}
.btn-red{background:var(--vermelho);color:#fff}
.btn-red:hover{background:var(--vermelho-escuro);color:#fff;transform:translateY(-2px)}
.btn-outline{border-color:#fff;color:#fff;background:transparent}
.btn-outline:hover{background:#fff;color:var(--preto)}
.btn-outline-dark{border-color:var(--preto);color:var(--preto)}
.btn-outline-dark:hover{background:var(--preto);color:#fff}
.btn-wpp{background:#1eb955;color:#fff}
.btn-wpp:hover{background:#169645;color:#fff;transform:translateY(-2px)}
.btn-blue{background:var(--azul);color:#fff}
.btn-blue:hover{background:#0d5a91;color:#fff}
.btn svg{vertical-align:-3px;margin-right:8px}

/* ---------- Barra superior ---------- */
.topbar{background:var(--preto);color:#c8d0da;font-size:.85rem;padding:7px 0}
.topbar .container{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}
.topbar a{color:#c8d0da}
.topbar a:hover{color:#fff}
.topbar .tb-item{display:inline-flex;align-items:center;gap:6px;margin-right:18px}
.topbar svg{flex:none}

/* ---------- Header ---------- */
header.site{position:sticky;top:0;z-index:900;background:#fff;box-shadow:0 2px 14px rgba(13,17,23,.08)}
.nav-wrap{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 22px;max-width:var(--largura);margin:0 auto}
.logo{flex:none}
.logo img{height:70px;width:auto;max-width:none}
nav.main{display:flex;align-items:center;gap:4px}
nav.main > ul{display:flex;list-style:none;gap:2px;align-items:center}
nav.main a{display:block;padding:10px 11px;color:var(--preto);font-weight:600;font-size:.9rem;border-radius:6px;white-space:nowrap}
nav.main a:hover,nav.main a.ativo{color:var(--vermelho)}
.has-sub{position:relative}
.has-sub > a::after{content:"▾";font-size:.7rem;margin-left:5px;color:var(--vermelho)}
.submenu{position:absolute;top:100%;left:0;background:#fff;min-width:250px;box-shadow:var(--sombra);border-radius:0 0 10px 10px;list-style:none;padding:8px 0;opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s;border-top:3px solid var(--vermelho)}
.has-sub:hover .submenu,.has-sub:focus-within .submenu{opacity:1;visibility:visible;transform:translateY(0)}
.submenu a{padding:9px 18px;font-weight:500}
.nav-cta{margin-left:10px;white-space:nowrap;padding:11px 20px;font-size:.95rem}
.burger{display:none;background:none;border:none;cursor:pointer;padding:8px}
.burger span{display:block;width:26px;height:3px;background:var(--preto);margin:5px 0;border-radius:2px;transition:.3s}

/* ---------- Hero ---------- */
.hero{position:relative;background:linear-gradient(135deg,#0d1117 0%,#141d2b 55%,#10263a 100%);color:#fff;padding:110px 0 120px;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:46px 46px;mask-image:radial-gradient(ellipse at 70% 30%,#000 0%,transparent 70%)}
.hero::after{content:"";position:absolute;width:560px;height:560px;border-radius:50%;right:-160px;top:-160px;background:radial-gradient(circle,rgba(42,167,224,.22),transparent 65%)}
.hero .glow-red{position:absolute;width:480px;height:480px;border-radius:50%;left:-140px;bottom:-200px;background:radial-gradient(circle,rgba(217,35,35,.25),transparent 65%)}
.hero .container{position:relative;z-index:2;max-width:900px}
.hero .kicker{color:var(--azul-claro)}
.hero .kicker::before{background:var(--azul-claro)}
.hero h1{color:#fff}
.hero h1 .vermelho{color:var(--vermelho)}
.hero p{margin:22px 0 34px;font-size:1.18rem;color:#c9d4e0;max-width:640px}
.hero .acoes{display:flex;gap:14px;flex-wrap:wrap}
.hero .acoes .btn{padding:14px 22px;font-size:1rem}
.hero-tags{margin-top:44px;display:flex;flex-wrap:wrap;gap:10px}
.hero-tags span{border:1px solid rgba(255,255,255,.22);color:#aeb9c6;padding:6px 14px;border-radius:30px;font-size:.83rem}

/* Hero interno (páginas) */
.hero-int{background:linear-gradient(135deg,#0d1117,#152238 75%,#12314a);color:#fff;padding:70px 0 60px;position:relative;overflow:hidden}
.hero-int::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:42px 42px}
.hero-int .container{position:relative;z-index:2}
.hero-int h1{color:#fff;max-width:850px}
.hero-int p{color:#c9d4e0;max-width:720px;margin-top:14px;font-size:1.1rem}
.breadcrumb{font-size:.85rem;color:#8fa0b3;margin-bottom:18px}
.breadcrumb a{color:#8fa0b3}
.breadcrumb a:hover{color:#fff}

/* ---------- Cards de soluções ---------- */
.grid{display:grid;gap:24px}
.g3{grid-template-columns:repeat(3,1fr)}
.g2{grid-template-columns:repeat(2,1fr)}
.g4{grid-template-columns:repeat(4,1fr)}
.card{background:#fff;border:1px solid var(--cinza-linha);border-radius:var(--raio);padding:30px 26px;transition:.28s;position:relative;overflow:hidden;display:flex;flex-direction:column}
.card:hover{transform:translateY(-6px);box-shadow:var(--sombra);border-color:transparent}
.card::before{content:"";position:absolute;left:0;top:0;height:4px;width:0;background:linear-gradient(90deg,var(--vermelho),var(--azul));transition:.35s}
.card:hover::before{width:100%}
.card .icone{width:58px;height:58px;border-radius:12px;background:linear-gradient(135deg,rgba(217,35,35,.09),rgba(18,115,184,.10));display:flex;align-items:center;justify-content:center;margin-bottom:18px;color:var(--vermelho)}
.card h3{margin-bottom:10px}
.card p{color:var(--texto-suave);font-size:.95rem;flex:1}
.card .link{margin-top:16px;font-weight:700;color:var(--vermelho);font-size:.9rem;text-transform:uppercase;letter-spacing:1px;font-family:var(--fonte-titulo)}
.card .link::after{content:" →"}

/* ---------- Seções alternadas ---------- */
.bg-cinza{background:var(--cinza-bg)}
.bg-escuro{background:var(--grafite);color:#cbd5df}
.bg-escuro h2,.bg-escuro h3{color:#fff}
.bg-escuro p{color:#aeb9c6}

/* ---------- Destaques / diferenciais ---------- */
.dif-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;margin-top:40px}
.dif{background:var(--grafite-2);border-radius:var(--raio);padding:26px 20px;text-align:center;border:1px solid rgba(255,255,255,.06);transition:.25s}
.dif:hover{transform:translateY(-5px);border-color:var(--vermelho)}
.dif .ic{color:var(--azul-claro);margin-bottom:12px}
.dif h3{font-size:1.15rem;letter-spacing:1.5px;color:#fff}
.dif p{font-size:.85rem;margin-top:8px}

/* ---------- Lista de checagem ---------- */
.check-list{list-style:none;display:grid;grid-template-columns:repeat(2,1fr);gap:12px 28px;margin-top:24px}
.check-list li{padding-left:32px;position:relative;font-size:.98rem}
.check-list li::before{content:"";position:absolute;left:0;top:4px;width:20px;height:20px;border-radius:50%;background:var(--vermelho);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");background-size:12px;background-position:center;background-repeat:no-repeat}
.check-list.uma-col{grid-template-columns:1fr}

/* ---------- Segmentos ---------- */
.seg-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.seg{background:#fff;border:1px solid var(--cinza-linha);border-radius:12px;padding:24px 18px;text-align:center;transition:.25s}
.seg:hover{border-color:var(--azul);transform:translateY(-4px);box-shadow:var(--sombra)}
.seg .ic{color:var(--azul);margin-bottom:10px}
.seg h3{font-size:1.05rem;letter-spacing:1px}

/* ---------- CTA faixa ---------- */
.cta-faixa{background:linear-gradient(120deg,var(--vermelho) 0%,#a31515 100%);color:#fff;padding:56px 0;position:relative;overflow:hidden}
.cta-faixa::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:40px 40px}
.cta-faixa .container{position:relative;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.cta-faixa h2{color:#fff;margin-bottom:6px}
.cta-faixa p{color:#ffd9d9}
.cta-faixa .btn-outline:hover{color:var(--vermelho)}

/* ---------- Página de solução ---------- */
.sol-layout{display:grid;grid-template-columns:2fr 1fr;gap:44px;align-items:start}
.sol-aside{background:var(--cinza-bg);border-radius:var(--raio);padding:28px;position:sticky;top:110px}
.sol-aside h3{margin-bottom:14px}
.sol-aside ul{list-style:none}
.sol-aside li{border-bottom:1px solid var(--cinza-linha)}
.sol-aside li:last-child{border-bottom:none}
.sol-aside a{display:block;padding:10px 4px;color:var(--texto);font-weight:600;font-size:.93rem}
.sol-aside a:hover,.sol-aside a.ativo{color:var(--vermelho);padding-left:10px;transition:.2s}
.sol-aside .btn{width:100%;margin-top:18px}
.bloco-info{background:#fff;border:1px solid var(--cinza-linha);border-left:4px solid var(--azul);border-radius:10px;padding:22px 24px;margin:26px 0}
.bloco-info.vermelho{border-left-color:var(--vermelho)}

/* ---------- Etapas / fluxo ---------- */
.fluxo{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:38px}
.etapa{background:#fff;border:1px solid var(--cinza-linha);border-radius:12px;padding:24px 20px;position:relative}
.etapa .num{font-family:var(--fonte-titulo);font-size:2.4rem;font-weight:700;color:rgba(217,35,35,.18);line-height:1}
.etapa h3{font-size:1.05rem;margin:8px 0 6px}
.etapa p{font-size:.87rem;color:var(--texto-suave)}

/* ---------- Formulários ---------- */
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form-grid .full{grid-column:1/-1}
label{font-weight:600;font-size:.88rem;display:block;margin-bottom:6px;color:var(--preto)}
input,select,textarea{width:100%;padding:12px 14px;border:1.5px solid var(--cinza-linha);border-radius:8px;font-family:var(--fonte-corpo);font-size:.95rem;background:#fff;transition:.2s;color:var(--texto)}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--azul)}
textarea{min-height:120px;resize:vertical}
.form-card{background:#fff;border:1px solid var(--cinza-linha);border-radius:var(--raio);padding:36px;box-shadow:var(--sombra)}
.form-nota{font-size:.83rem;color:var(--texto-suave);margin-top:14px}
.contato-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:40px;align-items:start}
.info-contato{display:flex;flex-direction:column;gap:18px}
.info-item{display:flex;gap:16px;background:#fff;border:1px solid var(--cinza-linha);border-radius:12px;padding:20px}
.info-item .ic{flex:none;width:46px;height:46px;border-radius:10px;background:linear-gradient(135deg,rgba(217,35,35,.09),rgba(18,115,184,.12));display:flex;align-items:center;justify-content:center;color:var(--vermelho)}
.info-item h3{font-size:1.02rem;margin-bottom:3px}
.info-item p,.info-item a{font-size:.92rem;color:var(--texto-suave)}
.mapa iframe{width:100%;height:340px;border:0;border-radius:var(--raio);box-shadow:var(--sombra)}

/* ---------- Projetos / cases ---------- */
.case{background:#fff;border:1px solid var(--cinza-linha);border-radius:var(--raio);overflow:hidden;transition:.25s}
.case:hover{box-shadow:var(--sombra);transform:translateY(-4px)}
.case .topo{background:linear-gradient(135deg,var(--grafite),#1a2c42);color:#fff;padding:22px 24px}
.case .topo .seg-tag{display:inline-block;background:var(--vermelho);color:#fff;font-size:.72rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;padding:4px 12px;border-radius:20px;margin-bottom:10px}
.case .topo h3{color:#fff}
.case .corpo{padding:22px 24px}
.case .corpo dt{font-family:var(--fonte-titulo);text-transform:uppercase;letter-spacing:1px;font-size:.82rem;color:var(--vermelho);font-weight:700;margin-top:12px}
.case .corpo dd{font-size:.92rem;color:var(--texto-suave)}

/* ---------- Footer ---------- */
footer.site{background:var(--preto);color:#9aa7b5;padding:64px 0 0;font-size:.92rem}
.foot-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.2fr;gap:40px;padding-bottom:44px}
footer.site h4{color:#fff;font-size:1.05rem;letter-spacing:1.5px;margin-bottom:16px;text-transform:uppercase}
footer.site ul{list-style:none}
footer.site li{margin-bottom:9px}
footer.site a{color:#9aa7b5}
footer.site a:hover{color:#fff}
.foot-logo img{height:80px;width:auto;margin-bottom:16px;filter:drop-shadow(0 0 10px rgba(255,255,255,.25))}
.foot-contato li{display:flex;gap:10px;align-items:flex-start}
.foot-contato svg{flex:none;margin-top:3px;color:var(--vermelho)}
.foot-base{border-top:1px solid rgba(255,255,255,.09);padding:18px 0;font-size:.8rem;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}

/* ---------- WhatsApp flutuante ---------- */
.wpp-flut{position:fixed;right:22px;bottom:22px;z-index:990}
.wpp-btn{width:62px;height:62px;border-radius:50%;background:#1eb955;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px rgba(30,185,85,.45);cursor:pointer;border:none;transition:.25s;animation:pulso 2.4s infinite}
.wpp-btn:hover{transform:scale(1.08)}
@keyframes pulso{0%{box-shadow:0 0 0 0 rgba(30,185,85,.45)}70%{box-shadow:0 0 0 18px rgba(30,185,85,0)}100%{box-shadow:0 0 0 0 rgba(30,185,85,0)}}
.wpp-menu{position:absolute;bottom:76px;right:0;width:300px;background:#fff;border-radius:14px;box-shadow:0 14px 44px rgba(13,17,23,.28);overflow:hidden;opacity:0;visibility:hidden;transform:translateY(12px);transition:.25s}
.wpp-menu.aberto{opacity:1;visibility:visible;transform:translateY(0)}
.wpp-menu .cab{background:#1eb955;color:#fff;padding:16px 18px;font-weight:600;font-size:.95rem}
.wpp-menu .cab small{display:block;font-weight:400;opacity:.9;font-size:.8rem}
.wpp-menu ul{list-style:none;padding:8px 0}
.wpp-menu li a{display:block;padding:11px 20px;color:var(--texto);font-size:.92rem;font-weight:500}
.wpp-menu li a:hover{background:var(--cinza-bg);color:#169645}

/* ---------- LGPD ---------- */
.lgpd{position:fixed;left:18px;right:18px;bottom:18px;z-index:995;background:var(--preto);color:#c8d0da;border-radius:12px;padding:18px 22px;display:none;gap:18px;align-items:center;justify-content:space-between;flex-wrap:wrap;box-shadow:0 10px 40px rgba(0,0,0,.4);font-size:.87rem}
.lgpd.visivel{display:flex}
.lgpd a{color:var(--azul-claro)}
.lgpd .btn{padding:10px 22px;font-size:.9rem}

/* ---------- Tabela comparativa contratos ---------- */
.planos{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:40px}
.plano{background:#fff;border:1.5px solid var(--cinza-linha);border-radius:var(--raio);padding:32px 28px;transition:.25s;display:flex;flex-direction:column}
.plano:hover{transform:translateY(-6px);box-shadow:var(--sombra)}
.plano.destaque{border-color:var(--vermelho);position:relative}
.plano.destaque::before{content:"MAIS CONTRATADO";position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--vermelho);color:#fff;font-size:.7rem;font-weight:700;letter-spacing:1.6px;padding:5px 16px;border-radius:20px;font-family:var(--fonte-titulo)}
.plano h3{font-size:1.4rem;text-transform:uppercase;letter-spacing:1px}
.plano .sub{color:var(--texto-suave);font-size:.88rem;margin:6px 0 18px}
.plano ul{list-style:none;flex:1}
.plano li{padding:8px 0 8px 28px;position:relative;font-size:.92rem;border-bottom:1px dashed var(--cinza-linha)}
.plano li::before{content:"✓";position:absolute;left:2px;color:var(--vermelho);font-weight:700}
.plano .btn{margin-top:22px}

/* ---------- Números ---------- */
.numeros{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:center}
.numero .val{font-family:var(--fonte-titulo);font-size:2.8rem;font-weight:700;color:var(--vermelho);line-height:1}
.numero .rot{font-size:.88rem;color:inherit;margin-top:6px;text-transform:uppercase;letter-spacing:1.2px}

/* ---------- Hero com ilustração ---------- */
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:center}
.hero-art{position:relative}
.hero-art > svg{width:100%;height:auto;display:block;filter:drop-shadow(0 18px 40px rgba(0,0,0,.45))}
.badge-flut{position:absolute;display:flex;align-items:center;gap:10px;background:rgba(22,28,38,.88);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(6px);border-radius:12px;padding:12px 16px;color:#e8eef4;font-size:.85rem;font-weight:600;box-shadow:0 10px 30px rgba(0,0,0,.35)}
.badge-flut .bic{width:34px;height:34px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex:none}
.badge-flut.b1{left:-14px;top:14%}.badge-flut.b1 .bic{background:rgba(217,35,35,.18);color:#ff6b6b}
.badge-flut.b2{right:-8px;bottom:10%}.badge-flut.b2 .bic{background:rgba(42,167,224,.16);color:var(--azul-claro)}
.badge-flut small{display:block;font-weight:400;color:#93a1b1;font-size:.72rem}

/* Ilustração nas páginas internas */
.hero-int .art-int{position:absolute;right:3%;top:50%;transform:translateY(-50%);width:360px;opacity:.85;pointer-events:none;filter:drop-shadow(0 10px 30px rgba(0,0,0,.4))}
.hero-int .art-int svg{width:100%;height:auto}

/* ---------- Animações de entrada ---------- */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .65s ease,transform .65s ease}
.reveal.d1{transition-delay:.08s}.reveal.d2{transition-delay:.16s}
.reveal.visto{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.wpp-btn{animation:none}html{scroll-behavior:auto}}

/* ---------- Acessibilidade / detalhes ---------- */
:focus-visible{outline:3px solid var(--azul-claro);outline-offset:2px;border-radius:4px}
.btn:active{transform:translateY(0) scale(.98)}
.btn-red{box-shadow:0 6px 18px rgba(217,35,35,.28)}
.btn-wpp{box-shadow:0 6px 18px rgba(30,185,85,.28)}
::selection{background:var(--vermelho);color:#fff}

/* ---------- Responsivo ---------- */
@media(max-width:1024px){
  .hero-grid{grid-template-columns:1fr}
  .hero-art{max-width:520px;margin:10px auto 0}
  .hero-int .art-int{display:none}
  .g3,.g4{grid-template-columns:repeat(2,1fr)}
  .dif-grid{grid-template-columns:repeat(3,1fr)}
  .seg-grid{grid-template-columns:repeat(3,1fr)}
  .fluxo{grid-template-columns:repeat(2,1fr)}
  .foot-grid{grid-template-columns:1fr 1fr}
  .sol-layout{grid-template-columns:1fr}
  .sol-aside{position:static}
  .contato-layout{grid-template-columns:1fr}
  .planos{grid-template-columns:1fr;max-width:560px;margin-left:auto;margin-right:auto}
  .numeros{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:840px){
  .burger{display:block}
  nav.main{position:fixed;inset:0;top:0;background:#fff;flex-direction:column;padding:90px 30px 40px;transform:translateX(100%);transition:.3s;overflow-y:auto;z-index:960}
  nav.main.aberto{transform:translateX(0)}
  nav.main > ul{flex-direction:column;width:100%;gap:0}
  nav.main a{padding:14px 6px;font-size:1.05rem;border-bottom:1px solid var(--cinza-linha)}
  .submenu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border-top:none;padding-left:16px;display:none}
  .has-sub.aberto .submenu{display:block}
  .nav-cta{margin:22px 0 0;width:100%}
  .burger.ativo span:nth-child(1){transform:rotate(45deg) translate(6px,6px)}
  .burger.ativo span:nth-child(2){opacity:0}
  .burger.ativo span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}
  .burger{position:relative;z-index:970}
  .topbar .tb-dir{display:none}
}
@media(max-width:640px){
  section{padding:52px 0}
  .tb-mail{display:none}
  .badge-flut{display:none}
  .g2,.g3,.g4{grid-template-columns:1fr}
  .check-list{grid-template-columns:1fr}
  .dif-grid{grid-template-columns:repeat(2,1fr)}
  .seg-grid{grid-template-columns:repeat(2,1fr)}
  .fluxo{grid-template-columns:1fr}
  .form-grid{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr;gap:28px}
  .hero{padding:70px 0 80px}
  .logo img{height:52px}
  .numeros{grid-template-columns:repeat(2,1fr)}
  .topbar .tb-item{margin-right:10px}
}
