.elementor-kit-1078{--e-global-color-primary:#094F94;--e-global-color-secondary:#2A416D;--e-global-color-text:#1B2433;--e-global-color-accent:#FFFFFF;--e-global-color-b717f3b:#073D73;--e-global-color-faixa001:#F1F5FB;--e-global-color-borda001:#D9E2EF;--e-global-color-texto002:#4A5568;--e-global-typography-primary-font-family:"Plus Jakarta Sans";--e-global-typography-primary-font-size:36px;--e-global-typography-primary-font-weight:700;--e-global-typography-primary-line-height:1.2em;--e-global-typography-primary-letter-spacing:-0.4px;--e-global-typography-secondary-font-family:"Plus Jakarta Sans";--e-global-typography-secondary-font-size:50px;--e-global-typography-secondary-font-weight:800;--e-global-typography-secondary-line-height:1.12em;--e-global-typography-secondary-letter-spacing:-1px;--e-global-typography-text-font-family:"Plus Jakarta Sans";--e-global-typography-text-font-size:17px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.7em;--e-global-typography-accent-font-family:"Plus Jakarta Sans";--e-global-typography-accent-font-size:19px;--e-global-typography-accent-font-weight:600;--e-global-typography-accent-line-height:1.45em;--e-global-typography-interface-font-family:"Plus Jakarta Sans";--e-global-typography-interface-font-size:15px;--e-global-typography-interface-font-weight:600;--e-global-typography-interface-line-height:1.3em;--e-global-typography-interface-letter-spacing:0.1px;--e-global-typography-rotulo-font-family:"Plus Jakarta Sans";--e-global-typography-rotulo-font-size:13px;--e-global-typography-rotulo-font-weight:700;--e-global-typography-rotulo-text-transform:uppercase;--e-global-typography-rotulo-line-height:1.3em;--e-global-typography-rotulo-letter-spacing:1.4px;background-color:#FFFFFF;color:#1B2433;}.elementor-kit-1078 button,.elementor-kit-1078 input[type="button"],.elementor-kit-1078 input[type="submit"],.elementor-kit-1078 .elementor-button{background-color:#094F94;font-family:"Plus Jakarta Sans", Sans-serif;font-weight:700;color:#FFFFFF;box-shadow:0px 6px 18px -8px rgba(9,79,148,0.45);border-radius:10px 10px 10px 10px;padding:15px 28px 15px 28px;}.elementor-kit-1078 button:hover,.elementor-kit-1078 button:focus,.elementor-kit-1078 input[type="button"]:hover,.elementor-kit-1078 input[type="button"]:focus,.elementor-kit-1078 input[type="submit"]:hover,.elementor-kit-1078 input[type="submit"]:focus,.elementor-kit-1078 .elementor-button:hover,.elementor-kit-1078 .elementor-button:focus{background-color:#073D73;color:#FFFFFF;}.elementor-kit-1078 e-page-transition{background-color:#FFBC7D;}.elementor-kit-1078 a{color:#094F94;}.elementor-kit-1078 a:hover{color:#073D73;}.elementor-kit-1078 input:not([type="button"]):not([type="submit"]),.elementor-kit-1078 textarea,.elementor-kit-1078 .elementor-field-textual{font-family:"Plus Jakarta Sans", Sans-serif;font-weight:400;color:#1B2433;accent-color:#094F94;background-color:#FFFFFF;border-style:solid;border-width:1px 1px 1px 1px;border-color:#C3CFDF;border-radius:10px 10px 10px 10px;padding:13px 16px 13px 16px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1320px;}.e-con{--container-max-width:1320px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-1078{--e-global-typography-primary-font-size:30px;--e-global-typography-secondary-font-size:40px;--e-global-typography-text-font-size:17px;--e-global-typography-accent-font-size:19px;--e-global-typography-interface-font-size:15px;--e-global-typography-rotulo-font-size:13px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-1078{--e-global-typography-primary-font-size:27px;--e-global-typography-secondary-font-size:33px;--e-global-typography-text-font-size:16px;--e-global-typography-accent-font-size:18px;--e-global-typography-interface-font-size:15px;--e-global-typography-rotulo-font-size:12px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ==========================================================================
   CSS do Kit Zapvix 2026. Fonte da verdade: este arquivo. Vai para o campo
   custom_css do Kit pelo importador; nao editar no painel.
   O seletor do Kit (.elementor-kit-ID) e escrito pelo importador.
   ========================================================================== */

/* Fallback da mesma classe visual (Art. 24): sem serifa cai em sem serifa. A
   pilha entra dentro da variavel, antes do ", Sans-serif" do Elementor. */
.elementor-kit-1078 {
  --e-global-typography-primary-font-family: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", Arial;
  --e-global-typography-secondary-font-family: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", Arial;
  --e-global-typography-text-font-family: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", Arial;
  --e-global-typography-accent-font-family: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", Arial;
  --e-global-typography-interface-font-family: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", Arial;
  --e-global-typography-rotulo-font-family: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", Arial;
}

/* Movimento: a regra que DESLIGA vem primeiro. */
@media (prefers-reduced-motion: reduce) {
  .elementor-element { animation: none !important; transition: none !important; }
  .elementor-invisible { visibility: visible !important; opacity: 1 !important; }
  .zvx-cartao:hover, .elementor-button:hover { transform: none !important; }
}

/* Cartao: sobe 4px ao passar o mouse. So o cartao. */
.zvx-cartao { transition: transform .22s ease, box-shadow .22s ease; }
.zvx-cartao:hover {
  transform: translateY(-4px);
  box-shadow: 0 2px 6px rgba(15,30,54,.06), 0 22px 44px -24px rgba(15,30,54,.42);
}

/* Link de cartao: alvo de toque de 44px (gramatica: alvo_toque_min). Na
   previa de 22/10 media 21px - o texto do link, e nada em volta. */
.zvx-cartao .elementor-widget-text-editor a {
  display: inline-flex; align-items: center; min-height: 44px;
  font-weight: 700; text-decoration: none !important;
}
.zvx-cartao .elementor-widget-text-editor a:hover { text-decoration: underline !important; }
.zvx-cartao .elementor-widget-text-editor p:last-child { margin-bottom: 0; }

.elementor-button, .elementor-nav-menu .elementor-item {
  transition: background-color .2s ease, color .2s ease, transform .18s ease, box-shadow .2s ease;
}
.elementor-button:hover { transform: translateY(-2px); }

/* Icone de cartao numa pastilha: o icone solto sobre branco le como clip-art. */
.zvx-cartao .elementor-icon-box-icon .elementor-icon {
  width: 52px; height: 52px; border-radius: 14px; font-size: 22px;
  display: inline-flex; align-items: center; justify-content: center;
  background: var(--e-global-color-faixa001);
}
.zvx-cartao .elementor-icon-box-icon .elementor-icon svg { width: 22px; height: 22px; }

/* Sanfona: a resposta aberta vinha numa caixa com borda (padrao do widget),
   que le como campo de formulario. A divisoria de baixo ja separa. */
.e-n-accordion-item > .e-con { border: 0 !important; }

/* Rodape v2 (22/10/2026, "melhorar rodape"). Hierarquia por peso, nao por
   tamanho: titulo de coluna e rotulo do Kit (caixa alta pequena, <p>), links um degrau
   abaixo do branco puro, e a linha juridica separada por filete. */
.elementor-location-footer ul { list-style: none; margin: 0; padding: 0; }
.elementor-location-footer li a,
.elementor-location-footer p a {
  display: inline-flex; align-items: center; min-height: 44px;
  text-decoration: none !important; opacity: .82; transition: opacity .2s ease;
}
.elementor-location-footer li a:hover,
.elementor-location-footer p a:hover { opacity: 1; text-decoration: underline !important; }
.elementor-location-footer p { margin-bottom: 0; }
.elementor-location-footer .elementor-widget-text-editor { font-size: 15px; }
.elementor-location-footer .elementor-widget-heading .elementor-heading-title { opacity: .7; margin-bottom: 4px; }
/* a marca: o texto de apresentacao mais claro que os links, nao mais escuro */
.elementor-location-footer .zvx-logo-rodape + * { opacity: .9; }
/* linha final: filete em cima, texto menor */
.elementor-location-footer .e-con-inner > .elementor-widget-text-editor:last-child,
.elementor-location-footer > .e-con > .elementor-widget-text-editor:last-child {
  border-top: 1px solid rgba(255,255,255,.16); padding-top: 24px; margin-top: 16px;
}
.elementor-location-footer .e-con-inner > .elementor-widget-text-editor:last-child p { font-size: 14px; opacity: .8; }

/* Link de WhatsApp e de e-mail sozinho num paragrafo (contato, rodape): e
   alvo de toque, nao texto corrido. Media 21px na previa de 22/10. */
.elementor-widget-text-editor p > a[href^="https://wa.me"],
.elementor-widget-text-editor p > a[href^="mailto:"] {
  display: inline-flex; align-items: center; min-height: 44px;
}

/* Grade de plataformas (home, secao Marketing com IA): duas linhas de tres
   (um widget por linha), chip com icone em pastilha e duas linhas de texto. Monocromatico: os icones das
   marcas na cor do Kit formam um conjunto, nao um mosaico de logos. */
.zvx-plat { list-style: none; margin: 0; padding: 0; display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.zvx-plat-item { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; padding: 16px 18px;
  border: 1px solid var(--e-global-color-borda001); border-radius: 14px;
  background: var(--e-global-color-accent);
  transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease; }
.zvx-plat-item:hover { border-color: var(--e-global-color-primary); transform: translateY(-2px);
  box-shadow: 0 16px 32px -24px rgba(9,79,148,.55); }
.zvx-plat-ic { flex: none; width: 46px; height: 46px; border-radius: 12px; display: flex;
  align-items: center; justify-content: center; color: var(--e-global-color-primary);
  background: var(--e-global-color-faixa001); }
.zvx-plat-txt { display: flex; flex-direction: column; min-width: 0; line-height: 1.35; }
.zvx-plat-txt strong { font-size: 16px; color: var(--e-global-color-text); }
.zvx-plat-txt span { font-size: 14px; color: var(--e-global-color-texto002); }
/* celular: tres por linha, so icone e nome - seis cartoes empilhados viravam
   quase uma tela inteira de rolagem (previa 390px, 22/10/2026) */
@media (max-width: 767px) {
  .zvx-plat { gap: 10px; }
  .zvx-plat-item { align-items: center; text-align: center; padding: 14px 8px; gap: 8px; }
  .zvx-plat-txt strong { font-size: 13px; }
  .zvx-plat-txt span { display: none; }
}
@media (prefers-reduced-motion: reduce) { .zvx-plat-item:hover { transform: none; } }

/* Submenu do cabecalho. O Elementor pinta o submenu de cinza-escuro (#3F444B)
   por padrao, e o hover herdava o azul do Kit: azul sobre cinza, ilegivel
   (print do Barone, 22/10/2026). Vira cartao branco com o item ativo em faixa
   azul-clara - o mesmo par de cores das pastilhas de icone. */
.elementor-location-header .elementor-nav-menu--main .sub-menu {
  background: var(--e-global-color-accent) !important; padding: 8px !important;
  border: 1px solid var(--e-global-color-borda001); border-radius: 12px;
  box-shadow: 0 24px 48px -28px rgba(15,30,54,.45); min-width: 290px !important;
}
.elementor-location-header .elementor-nav-menu--main .sub-menu a.elementor-sub-item {
  background: transparent !important; color: var(--e-global-color-text) !important;
  border-radius: 8px; padding: 12px 16px !important; border: 0 !important;
  font-weight: 600; transition: background-color .15s ease, color .15s ease;
}
.elementor-location-header .elementor-nav-menu--main .sub-menu a.elementor-sub-item:hover,
.elementor-location-header .elementor-nav-menu--main .sub-menu a.elementor-sub-item:focus,
.elementor-location-header .elementor-nav-menu--main .sub-menu a.elementor-sub-item.highlighted,
.elementor-location-header .elementor-nav-menu--main .sub-menu a.elementor-sub-item.elementor-item-active {
  background: var(--e-global-color-faixa001) !important; color: var(--e-global-color-primary) !important;
}
/* menu do celular (sanduiche): fundo branco, item ativo na mesma faixa */
.elementor-location-header .elementor-nav-menu--dropdown { background: var(--e-global-color-accent) !important; }
.elementor-location-header .elementor-nav-menu--dropdown a {
  background: transparent !important; color: var(--e-global-color-text) !important;
}
.elementor-location-header .elementor-nav-menu--dropdown a:hover,
.elementor-location-header .elementor-nav-menu--dropdown a.highlighted,
.elementor-location-header .elementor-nav-menu--dropdown a.elementor-item-active {
  background: var(--e-global-color-faixa001) !important; color: var(--e-global-color-primary) !important;
}

/* Redes sociais no rodape: circulos de 44px (alvo de toque), contorno claro
   sobre o marinho e preenchimento no hover. */
.zvx-redes { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 4px; }
.zvx-redes .zvx-rede {
  width: 44px; height: 44px; border-radius: 50%; display: inline-flex;
  align-items: center; justify-content: center; color: var(--e-global-color-accent) !important;
  border: 1px solid rgba(255,255,255,.28); opacity: 1 !important;
  transition: background-color .2s ease, color .2s ease, border-color .2s ease;
}
.zvx-redes .zvx-rede:hover {
  background: var(--e-global-color-accent); color: var(--e-global-color-secondary) !important;
  border-color: var(--e-global-color-accent);
}

/* Cabecalho no celular: logo + sanduiche + botao nao cabem em 390px (o botao
   descia para uma segunda linha). O botao flutuante do WhatsApp ja esta em
   toda tela no celular; o do cabecalho sai so ali. */
@media (max-width: 767px) {
  .elementor-location-header .elementor-widget-button { display: none; }
}

/* ---------------------------------------------------------------- esquema */
/* gerado por: node montar.js --css-esquema (criarsites/paginas) */
.zvx-esq{display:flex;flex-direction:column;max-width:460px;margin-left:auto;width:100%}.zvx-esq-item{display:flex;gap:14px;align-items:center;padding:16px 18px;border-radius:14px;background:var(--e-global-color-accent);border:1px solid var(--e-global-color-borda001);box-shadow:0 16px 32px -24px rgba(15,30,54,.5)}.zvx-esq-item.zvx-ativo{border-color:var(--e-global-color-primary);box-shadow:0 0 0 4px rgba(9,79,148,.1),0 18px 36px -22px rgba(9,79,148,.55)}.zvx-esq-ic{flex:none;width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:19px;background:var(--e-global-color-faixa001);color:var(--e-global-color-primary)}.zvx-ativo .zvx-esq-ic{background:var(--e-global-color-primary);color:var(--e-global-color-accent)}.zvx-esq-txt{min-width:0}.zvx-esq-rot{margin:0;font-size:11px;line-height:1.3;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--e-global-color-texto002)}.zvx-esq-tit{margin:2px 0 0;font-size:16px;line-height:1.35;font-weight:700;color:var(--e-global-color-text)}.zvx-esq-det{margin:2px 0 0;font-size:14px;line-height:1.45;color:var(--e-global-color-texto002)}.zvx-esq-liga{width:2px;height:22px;margin-left:40px;background:repeating-linear-gradient(var(--e-global-color-primary) 0 4px,transparent 4px 8px)}@media(max-width:767px){.zvx-esq{margin-left:0;max-width:none}}/* End custom CSS */