.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-2121 .elementor-element.elementor-element-66aabecc .elementor-menu-toggle{margin:0 auto;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS for nav-menu, class: .elementor-element-66aabecc */width: auto; flex-grow: 1; flex-shrink: 1; flex-basis: auto; & .elementor-item { color: var(--grafite); font-size: 14.5px; font-weight: 600; letter-spacing: 0.005em; padding-inline-start: 10px; padding-inline-end: 10px; white-space: nowrap; transition: color 200ms cubic-bezier(0.16,1,0.3,1); } & .elementor-item:hover, & .elementor-item.elementor-item-active { color: var(--azul-marca); }/* End custom CSS */
/* Start custom CSS *//* ---- Menu principal ---- */
header nav.elementor-nav-menu--main ul.elementor-nav-menu > li > a.elementor-item{font-family:"Inter",system-ui,sans-serif !important;color:#181818 !important;font-size:14.5px !important;font-weight:600 !important;padding:10px 13px !important;position:relative;background:none !important;fill:#181818 !important;transition:color 180ms;}
header nav.elementor-nav-menu--main ul.elementor-nav-menu > li > a.elementor-item::after{content:'' !important;position:absolute;left:13px;right:13px;bottom:4px;height:2px;background-color:#0040B8;transform:scaleX(0);transform-origin:left center;transition:transform 240ms cubic-bezier(0.16,1,0.3,1);border:0 !important;opacity:1 !important;}
header nav.elementor-nav-menu--main ul.elementor-nav-menu > li > a.elementor-item:hover,
header nav.elementor-nav-menu--main ul.elementor-nav-menu > li > a.elementor-item:focus,
header nav.elementor-nav-menu--main ul.elementor-nav-menu > li > a.elementor-item.elementor-item-active,
header nav.elementor-nav-menu--main ul.elementor-nav-menu > li > a.elementor-item.highlighted{color:#0040B8 !important;background:none !important;fill:#0040B8 !important;}
header nav.elementor-nav-menu--main ul.elementor-nav-menu > li > a.elementor-item:hover::after,
header nav.elementor-nav-menu--main ul.elementor-nav-menu > li > a.elementor-item.elementor-item-active::after{transform:scaleX(1);}
header nav.elementor-nav-menu--main .sub-arrow{color:inherit !important;}
header nav.elementor-nav-menu--main .sub-arrow i{color:inherit !important;}

/* ---- Submenu de Servicos em duas colunas ---- */
header nav.elementor-nav-menu--main ul.sub-menu{width:600px !important;max-width:calc(100vw - 40px) !important;columns:2 !important;column-gap:12px !important;padding:16px 12px !important;border-radius:10px !important;box-shadow:0 22px 54px rgba(0,18,56,0.18),0 4px 12px rgba(0,18,56,0.08) !important;border:1px solid #E1E5EC !important;background-color:#fff !important;}
header nav.elementor-nav-menu--main ul.sub-menu > li{break-inside:avoid !important;width:100% !important;display:block !important;}
header nav.elementor-nav-menu--main ul.sub-menu > li.menu-item-2246{break-before:column !important;}

/* rotulos de grupo */
header nav.elementor-nav-menu--main ul.sub-menu > li.menu-item-2245 > a,
header nav.elementor-nav-menu--main ul.sub-menu > li.menu-item-2246 > a{pointer-events:none !important;cursor:default !important;font-size:10.5px !important;font-weight:800 !important;letter-spacing:0.16em !important;color:#0040B8 !important;padding:4px 10px 9px !important;border-bottom:1px solid #E1E5EC !important;margin-bottom:7px !important;background:none !important;}
header nav.elementor-nav-menu--main ul.sub-menu > li.menu-item-2245 > a::before,
header nav.elementor-nav-menu--main ul.sub-menu > li.menu-item-2246 > a::before{display:none !important;}

/* itens do submenu */
header nav.elementor-nav-menu--main ul.sub-menu > li > a{font-family:"Inter",system-ui,sans-serif !important;display:flex !important;align-items:center !important;gap:9px !important;padding:9px 11px !important;border-radius:6px !important;font-size:13.5px !important;font-weight:600 !important;color:#181818 !important;line-height:1.3 !important;background:none !important;transition:background-color 180ms, color 180ms;}
header nav.elementor-nav-menu--main ul.sub-menu > li > a::before{content:'';flex:0 0 7px;width:7px;height:7px;border-radius:2px;background-color:#9FC0FF;transition:background-color 180ms;}
header nav.elementor-nav-menu--main ul.sub-menu > li.menu-item-2246 ~ li > a::before{background-color:#F3A9B4;}
header nav.elementor-nav-menu--main ul.sub-menu > li > a:hover,
header nav.elementor-nav-menu--main ul.sub-menu > li > a.highlighted{background-color:#F2F4F7 !important;color:#0040B8 !important;}
header nav.elementor-nav-menu--main ul.sub-menu > li > a:hover::before{background-color:#0040B8;}
header nav.elementor-nav-menu--main ul.sub-menu > li.menu-item-2246 ~ li > a:hover::before{background-color:#E00828;}

@media (max-width:1024px){
header nav.elementor-nav-menu--main ul.sub-menu{width:auto !important;columns:1 !important;box-shadow:none !important;border:0 !important;padding:4px 0 !important;}
header nav.elementor-nav-menu--main ul.sub-menu > li.menu-item-2246{break-before:auto !important;margin-top:10px !important;}
}

/* menu lateral do celular */
.elementor-nav-menu--dropdown .elementor-item{font-family:"Inter",system-ui,sans-serif !important;}
.elementor-nav-menu--dropdown .sub-menu{columns:1 !important;width:auto !important;box-shadow:none !important;border:0 !important;}
.elementor-nav-menu--dropdown .menu-item-2245 > a,
.elementor-nav-menu--dropdown .menu-item-2246 > a{pointer-events:none !important;font-size:10.5px !important;font-weight:800 !important;letter-spacing:0.16em !important;color:#0040B8 !important;}

/* ---------------------------------------------------------------
   Tipografia da marca (25/09/2026, revisto em 28/09/2026)

   Archivo nos titulos, Inter em todo o resto, conforme o brand-guide.

   As familias globais agora estao corretas no Kit do Elementor
   (Ajustes do site > Tipografia), que e o lugar certo delas. NAO
   redeclarar --e-global-typography-* aqui: alem de redundante, com
   !important passaria por cima de quem editasse pelo painel, sem
   aviso nenhum.

   O que continua precisando de CSS:

   1) o tema define a fonte do SISTEMA no body (-apple-system no Mac,
      Segoe UI no Windows, Roboto no Android) e os elementos atomicos
      do Elementor V4 nao herdam a tipografia do Kit. Sem as regras
      abaixo, a maior parte do site volta a renderizar na fonte do
      aparelho de quem visita;

   2) o MENU le a variavel "primary", que e a de TITULO. Como navegacao
      nao e titulo, a familia dele e declarada na mao, la em cima.
   --------------------------------------------------------------- */

body{font-family:"Inter",system-ui,sans-serif;}

body h1,body h2,body h3,body h4,body h5,body h6,
body .e-heading-base,
body .elementor-heading-title{font-family:"Archivo",system-ui,sans-serif;}

body .e-paragraph-base,
body .e-button-base,
body button,body input,body textarea,body select,
body .elementor-button{font-family:"Inter",system-ui,sans-serif;}

/* ---------------------------------------------------------------
   Estrutura da pagina (28/09/2026)
   --------------------------------------------------------------- */

/* PROIBIDO: qualquer vao entre o cabecalho e a capa.

   O WordPress deixa um <p> contendo so tabulacoes entre o <header> e
   o conteudo. Ele tem altura zero, mas carrega margin-bottom de 16px,
   e era dali que vinha a faixa branca no topo de TODAS as paginas.

   Atencao ao corrigir: esse <p> NAO casa com :empty, porque espaco em
   branco conta como conteudo. Tambem nao vale esconder "body > p",
   que na politica de privacidade sao paragrafos de verdade. O alvo
   certo e o irmao imediato do cabecalho. */
header + p{margin:0 !important;}

/* A capa encosta no cabecalho. Se uma pagina nova aparecer com vao,
   a causa esta na primeira secao dela, nao aqui. */
header.elementor-location-header + * > .e-con:first-child,
header.elementor-location-header + * > section:first-child{margin-top:0 !important;}

/* Cabecalho acompanha a rolagem */
header.elementor-location-header{
  position:sticky;
  top:0;
  z-index:999;
  background-color:#fff;
}

/* ancora de menu nao pode parar atras do cabecalho fixo */
html{scroll-padding-top:110px;}

/* Rodape encostado embaixo: a regra vive no CSS global (kit 2117).

   Aqui havia "footer{position:sticky;top:100vh}". Saiu em 29/09/2026:
   o sticky ficou empilhado com a tecnica nova e as duas brigavam. Nao
   reintroduzir. Explicacao completa no kit 2117. */

/* ---------------------------------------------------------------
   Paginas de texto puro (politica de privacidade e afins)

   Essas paginas nao sao documentos do Elementor: o tema despeja o
   conteudo DIRETO no body, sem contentor nenhum, e o texto ficava de
   ponta a ponta em 1440px. O seletor "body > ..." so alcanca esse
   caso, porque em pagina do Elementor tudo fica dentro de .elementor.
   --------------------------------------------------------------- */

body > h1,body > h2,body > h3,body > h4,
body > p,body > ul,body > ol,body > figure,body > blockquote,body > table{
  max-width:820px;
  margin-inline:auto;
  padding-inline:24px;
  line-height:1.7;
}
body > h1{font-size:40px;line-height:1.15;margin-block:56px 20px;color:#002E85;}
body > h2{font-size:26px;line-height:1.25;margin-block:36px 12px;color:#002E85;}
body > h3{font-size:20px;margin-block:28px 10px;color:#002E85;}
body > p,body > ul,body > ol{margin-block:0 16px;color:#181818;font-size:16.5px;}
body > ul,body > ol{padding-inline-start:48px;}
body > *:last-child{margin-bottom:64px;}/* End custom CSS */