/* Cabeçalho único (barra do topo, menu, mega menu, ilha, hambúrguer, menu do celular).
   Carrega em todas as páginas, inclusive nas LPs v3. Não depende de site.css nem de main.css. */
:root{
  --cab-escuro:#16595E;--cab-mega:#0C3235;--cab-verde:#28BB05;--cab-verde-claro:#6DBC7E;--cab-verde-texto:#C8F6D1;
  --cab-azul:#6ABFC5;--cab-mola:cubic-bezier(.32,.72,0,1);
}
.cab-wrap{width:100%;max-width:1140px;margin-inline:auto;padding-inline:10px;box-sizing:border-box}
.pular{position:absolute;left:-999px;top:8px;background:var(--cab-verde);color:#fff;padding:8px 16px;border-radius:8px;z-index:100;text-decoration:none}
.pular:focus{left:8px}
.cabecalho .ico,.barra-sa .ico,.nav-ilha .ico{fill:none;stroke:none;flex:none}
.cabecalho .ico *,.nav-ilha .ico *{vector-effect:none}
html.js .cabecalho a,html.js .nav-ilha a{text-decoration:none}

/* ---------- barra do topo ---------- */
.barra-sa{background:var(--cab-escuro);margin-top:-1px}
.barra-sa-in{position:relative;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:10px 20px;min-height:72px;border-bottom:1px solid #287479;background:linear-gradient(79deg,#0C3235 0%,#1A4245 100%);overflow:hidden;box-sizing:border-box}
.sa-glow{position:absolute;left:50%;top:-270px;width:560px;height:340px;margin-left:-280px;background:radial-gradient(closest-side,rgba(109,188,126,.22),rgba(0,0,0,0));pointer-events:none}
.sa-badge{position:relative;display:inline-flex;align-items:center;gap:9px;padding:8px 16px 8px 13px;border-radius:999px;border:1px solid rgba(109,188,126,.34);background:linear-gradient(rgba(109,188,126,.16),rgba(109,188,126,.07));color:var(--cab-verde-texto);font-size:10px;font-weight:500;letter-spacing:1.4px;text-transform:uppercase;white-space:nowrap}
.sa-dot{width:8px;height:8px;border-radius:50%;background:var(--cab-verde-claro);box-shadow:0 0 0 0 rgba(109,188,126,.55);animation:sa-pulso 2s infinite}
@keyframes sa-pulso{0%{box-shadow:0 0 0 0 rgba(109,188,126,.55)}70%{box-shadow:0 0 0 8px rgba(109,188,126,0)}100%{box-shadow:0 0 0 0 rgba(109,188,126,0)}}
.sa-titulo{position:relative;margin:0;font-size:16px;font-weight:500;line-height:1.1;letter-spacing:-.16px;color:#F3F8F4;text-align:center}
.sa-titulo strong{font-weight:800;color:var(--cab-verde-claro)}
.sa-titulo b{font-weight:800;background:linear-gradient(rgba(0,0,0,0) 68%,rgba(109,188,126,.3) 0)}
.sa-cta{position:relative;display:inline-flex;align-items:center;padding:15px 28px;border-radius:999px;border:1px solid rgba(109,188,126,.35);background:rgba(9,32,32,.55);color:#F3F8F4;font-size:15px;font-weight:500;letter-spacing:.15px;white-space:nowrap;text-decoration:none;transition:transform .5s var(--cab-mola),background .4s var(--cab-mola),border-color .4s var(--cab-mola)}
.sa-cta:hover{transform:translateY(-1px);background:rgba(9,32,32,.8);border-color:var(--cab-verde-claro)}
/* feixe que gira na borda, igual ao site atual (sa-cta-beam) */
@property --sa-angle{syntax:'<angle>';initial-value:0deg;inherits:false}
.sa-cta{isolation:isolate;border-color:transparent}
.sa-cta-track,.sa-cta-beam{position:absolute;inset:-1px;border-radius:inherit;padding:2px;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.sa-cta-track{background:rgba(109,188,126,.22)}
.sa-cta-beam{background:conic-gradient(from var(--sa-angle),transparent 0deg 62deg,#6dbc7e 88deg,#c8f6d1 108deg,#6dbc7e 128deg,transparent 154deg 242deg,#6dbc7e 268deg,#c8f6d1 288deg,#6dbc7e 308deg,transparent 334deg 360deg);filter:drop-shadow(0 0 5px rgba(109,188,126,.55));animation:sa-spin 4s linear infinite}
.sa-cta:hover .sa-cta-beam{animation-duration:1.6s}
.sa-label{position:relative;z-index:1}
@keyframes sa-spin{to{--sa-angle:360deg}}
@supports not (background:conic-gradient(from var(--sa-angle),red,blue)){.sa-cta-beam{background:#6dbc7e;animation:none;opacity:.7}}
.sa-label{display:inline-flex;align-items:center;gap:9px}
.sa-label span{color:var(--cab-verde-texto);transition:transform .5s var(--cab-mola)}
.sa-cta:hover .sa-label span{transform:translateX(3px)}
.barra-simples .barra-sa-in{justify-content:center;min-height:40px;padding:10px}
.barra-simples .sa-titulo{font-size:15px;font-weight:400}

/* ---------- cabeçalho ---------- */
.cabecalho{position:relative;background:var(--cab-escuro);color:#fff;z-index:50}
.cabecalho-in{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:10px;min-height:81px}
.logo{display:flex}
.logo img{display:block;width:177px;height:58px}
.menu ul{display:flex;justify-content:flex-end;margin:0;padding:0;list-style:none}
.menu li{position:relative}
.menu a,.menu-sol{position:relative;display:flex;align-items:center;gap:5px;padding:8px 16px;font:inherit;font-size:19px;font-weight:500;line-height:1.5;color:#fff;background:none;border:0;cursor:pointer;transition:color .4s var(--cab-mola)}
.menu a::after,.menu-sol::after{content:"";position:absolute;left:16px;right:16px;bottom:4px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .5s var(--cab-mola)}
.menu a:hover,.menu-sol:hover,.menu-sol[aria-expanded="true"]{color:var(--cab-verde-claro)}
.menu a:hover::after,.menu-sol:hover::after,.menu a[aria-current="page"]::after{transform:scaleX(1)}
.menu-sol .chev{width:19px;height:19px;padding:5px;box-sizing:border-box;transition:transform .5s var(--cab-mola)}
.menu-sol[aria-expanded="true"] .chev{transform:rotate(180deg)}

/* mega menu */
.mega{position:absolute;top:100%;left:50%;width:420px;margin-left:-210px;padding:14px;border-radius:24px;background:var(--cab-mega);display:flex;flex-direction:column;gap:2px;z-index:60;transform-origin:top center;box-shadow:0 0 0 1px rgba(255,255,255,.08),0 1px 2px rgba(0,0,0,.08),0 32px 64px -28px rgba(0,0,0,.45);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(8px) scale(.98);transition:opacity .4s var(--cab-mola),transform .5s var(--cab-mola),visibility 0s .4s}
.mega.on{opacity:1;visibility:visible;pointer-events:auto;transform:none;transition:opacity .4s var(--cab-mola),transform .5s var(--cab-mola),visibility 0s}
html:not(.js) .mega{display:none}
html:not(.js) .tem-sub:hover .mega{display:flex;opacity:1;visibility:visible;pointer-events:auto;transform:none}
.mega-item{display:flex;align-items:center;gap:15px;padding:12px 14px;border-radius:14px;color:#fff;text-decoration:none;transition:background .4s var(--cab-mola),transform .5s var(--cab-mola)}
.mega-item:hover{background:rgba(255,255,255,.07);transform:translateX(3px)}
.mega-item .mega-ico{width:44px;height:44px;flex:none;border-radius:10px;transition:transform .5s var(--cab-mola),background .4s var(--cab-mola)}
.mega-item .mega-ico path[stroke]{transition:stroke .3s var(--cab-mola)}
.mega-item .mega-ico rect[stroke]{transition:stroke .3s var(--cab-mola)}
.mega-item:hover .mega-ico{transform:scale(1.06);background:#0c3235}
.mega-item:hover .mega-ico path[stroke]{stroke:#fff}
.mega-item:hover .mega-ico rect[stroke]{stroke:rgba(255,255,255,.35)}
.mega-item span{display:flex;flex-direction:column;gap:2px}
.mega-item strong{font-size:19px;font-weight:600;line-height:1.2;transition:color .3s var(--cab-mola)}
.mega-item small{font-size:15px;font-weight:400;line-height:1.3;color:#8C9479}
.mega-item:hover strong{color:var(--cab-verde-claro)}

/* ações: login / telefone / demonstração / hambúrguer */
.cab-acoes{display:flex;align-items:center;gap:14px}
.cab-fone{font-size:15px;font-weight:700;color:rgba(255,255,255,.9);text-decoration:none;white-space:nowrap}
.btn-login{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 8px 14px 22px;border-radius:999px;border:2px solid var(--cab-azul);background:transparent;color:var(--cab-azul);font-size:15px;font-weight:700;line-height:1;text-transform:uppercase;text-decoration:none;white-space:nowrap;transition:transform .5s var(--cab-mola),background .4s var(--cab-mola),color .4s var(--cab-mola)}
.btn-login .btn-ico{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:rgba(106,191,197,.14);transition:transform .5s var(--cab-mola),background .4s var(--cab-mola)}
.btn-login .btn-ico .ico{width:14px;height:13px}
.btn-login:hover{background:var(--cab-azul);color:var(--cab-escuro);transform:translateY(-1px)}
.btn-login:hover .btn-ico{background:rgba(22,89,94,.2);transform:translate(3px,-1px) scale(1.06)}
.btn-login:active{transform:scale(.98)}
.btn-demo{border-color:var(--cab-verde);background:var(--cab-verde);color:#fff}
.btn-demo .btn-ico{background:rgba(0,0,0,.14)}
.btn-demo:hover{background:#22a204;border-color:#22a204;color:#fff}
.hamb{position:relative;z-index:80;display:none;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.06);cursor:pointer;transition:background .4s var(--cab-mola)}
.hamb span{display:block;width:20px;height:2px;border-radius:2px;background:#fff;transition:transform .5s var(--cab-mola),opacity .3s var(--cab-mola)}
.hamb[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.hamb[aria-expanded="true"] span:nth-child(2){opacity:0;transform:scaleX(.2)}
.hamb[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* menu do celular (tela cheia) */
.menu-movel{position:fixed;inset:0;z-index:75;display:block;padding:120px 24px 40px;background:var(--cab-mega);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-8px);transition:opacity .5s var(--cab-mola),transform .6s var(--cab-mola),visibility 0s .5s;overflow:auto;box-sizing:border-box}
.menu-movel.on{opacity:1;visibility:visible;pointer-events:auto;transform:none;transition:opacity .5s var(--cab-mola),transform .6s var(--cab-mola),visibility 0s}
.menu-movel ul{margin:0;padding:0;list-style:none}
.menu-movel > ul > li{opacity:0;transform:translateY(24px);transition:opacity .6s var(--cab-mola),transform .7s var(--cab-mola)}
.menu-movel.on > ul > li{opacity:1;transform:none}
.menu-movel.on > ul > li:nth-child(1){transition-delay:.06s}.menu-movel.on > ul > li:nth-child(2){transition-delay:.11s}.menu-movel.on > ul > li:nth-child(3){transition-delay:.16s}.menu-movel.on > ul > li:nth-child(4){transition-delay:.21s}.menu-movel.on > ul > li:nth-child(5){transition-delay:.26s}.menu-movel.on > ul > li:nth-child(6){transition-delay:.31s}
.menu-movel a,.menu-movel button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:14px 8px;border:0;border-radius:12px;background:none;font:inherit;font-size:26px;font-weight:600;line-height:1.1;color:#fff;text-align:left;text-decoration:none;cursor:pointer}
.menu-movel a[aria-current="page"]{color:var(--cab-verde-claro)}
.menu-movel .chev{width:12px;height:12px;transition:transform .5s var(--cab-mola)}
.menu-movel .tem-sub.on > button .chev{transform:rotate(180deg)}
.menu-movel .sub-caixa{display:grid;grid-template-rows:0fr;transition:grid-template-rows .5s var(--cab-mola)}
.menu-movel .sub-caixa > ul{overflow:hidden;padding-left:8px}
.menu-movel .tem-sub.on .sub-caixa{grid-template-rows:1fr}
.menu-movel .tem-sub ul a{padding:10px 8px;font-size:18px;font-weight:500;color:#B2E9EE}
.menu-movel .menu-movel-cta{margin-top:16px;justify-content:center;padding:16px 20px;border-radius:999px;background:var(--cab-verde);font-size:15px;font-weight:700;text-transform:uppercase;text-align:center}
body.menu-aberto{overflow:hidden}

/* ilha flutuante (aparece ao rolar, só desktop) */
.nav-ilha{position:fixed;left:50%;top:14px;z-index:60;display:flex;align-items:center;gap:4px;padding:6px 6px 6px 12px;border-radius:999px;background:rgba(12,50,53,.8);color:#fff;box-shadow:0 0 0 1px rgba(255,255,255,.08),0 1px 2px rgba(0,0,0,.08),0 32px 64px -28px rgba(0,0,0,.45);backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);transform:translate(-50%,-140%);opacity:0;transition:transform .7s var(--cab-mola),opacity .5s var(--cab-mola);will-change:transform}
html.rolou .nav-ilha{transform:translate(-50%,0);opacity:1}
.nav-ilha-logo{display:flex;margin-right:6px}
.nav-ilha-logo img{width:32px;height:32px;display:block}
.nav-ilha a,.ilha-sub > button{display:inline-flex;align-items:center;gap:6px;padding:9px 12px;border:0;border-radius:999px;background:none;font:inherit;font-size:15px;font-weight:500;line-height:1;color:#fff;white-space:nowrap;cursor:pointer;text-decoration:none;transition:background .4s var(--cab-mola)}
.nav-ilha a:hover,.ilha-sub > button:hover,.ilha-sub > button[aria-expanded="true"]{background:rgba(255,255,255,.08)}
.ilha-sub{position:relative}
.ilha-sub .chev{width:14px;height:14px;padding:3px;box-sizing:border-box;transition:transform .5s var(--cab-mola)}
.ilha-sub > button[aria-expanded="true"] .chev{transform:rotate(180deg)}
.ilha-menu{position:absolute;top:calc(100% + 10px);left:50%;width:260px;margin-left:-130px;padding:8px;border-radius:18px;background:var(--cab-mega);box-shadow:0 0 0 1px rgba(255,255,255,.08),0 32px 64px -28px rgba(0,0,0,.45);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(6px);transition:opacity .35s var(--cab-mola),transform .45s var(--cab-mola),visibility 0s .35s}
.ilha-sub.on .ilha-menu{opacity:1;visibility:visible;pointer-events:auto;transform:none;transition:opacity .35s var(--cab-mola),transform .45s var(--cab-mola),visibility 0s}
.ilha-menu a{display:flex;width:100%;gap:10px;padding:10px 12px;border-radius:12px;font-size:15px;box-sizing:border-box}
.ilha-menu a:hover{background:rgba(255,255,255,.08);color:var(--cab-verde-claro)}
.ilha-ico{width:26px;height:26px}
.nav-ilha .nav-ilha-cta{margin-left:4px;padding:10px 18px;background:var(--cab-verde);color:#fff;font-weight:700;font-size:13px;text-transform:uppercase}
.nav-ilha .nav-ilha-cta:hover{background:#22a204}

/* modo LP e reduzido */
[data-modo="lp"] .so-organico{display:none!important}
html:not([data-modo="lp"]) .cabecalho .so-lp{display:none!important}
[data-modo="lp"] .nav-ilha{display:none}
@media (prefers-reduced-motion:reduce){.nav-ilha,.menu-movel,.mega,.mega-item,.btn-login,.sa-cta,.menu-movel > ul > li{transition:none}.sa-dot{animation:none}.sa-cta-beam{animation:none;opacity:.6}}

/* ---------- responsivo ---------- */
@media (max-width:1024px){
  .menu,.nav-ilha{display:none}
  .hamb{display:flex}
  .cabecalho-in{flex-wrap:wrap}
  .cab-fone{display:none}
}
@media (max-width:767px){
  .barra-sa-in{flex-direction:column;gap:14px;padding:10px;text-align:center}
  .logo img{width:146px;height:48px}
  .cabecalho-in{gap:12px}
  .cab-acoes{gap:10px}
  .btn-login{padding:12px 6px 12px 18px;font-size:14px}
  .btn-login .btn-ico{width:28px;height:28px}
  .menu-movel{padding:110px 20px 32px}
  .menu-movel a,.menu-movel button{font-size:23px}
}
