.elementor-kit-6{--e-global-color-primary:#7136FF;--e-global-color-secondary:#FF6633;--e-global-color-text:#4D4D4D;--e-global-color-accent:#61CE70;--e-global-color-2ecdbae:#FFFFFF;--e-global-color-f8d1c6b:#33000000;--e-global-color-35a96e4:#000000;--e-global-color-74a0b5d:#180644;--e-global-color-6ece2bf:#F7F8FA;--e-global-color-8b512ff:#E6E6E6;--e-global-color-0986437:#180644;--e-global-color-cda97cd:#242424;--e-global-color-e89e705:#242424;--e-global-color-3834c8f:#180644;--e-global-color-886e1be:#F7F8FA;--e-global-color-379858b:#BEA3FF;--e-global-color-ccc7761:#242424C2;--e-global-typography-primary-font-family:"Montserrat";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Montserrat";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Montserrat";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Montserrat";--e-global-typography-accent-font-weight:500;--e-global-typography-3095f06-font-family:"Montserrat";--e-global-typography-3095f06-font-size:14px;--e-global-typography-3095f06-font-weight:400;--e-global-typography-3095f06-line-height:22px;--e-global-typography-c8a11b3-font-family:"Montserrat";--e-global-typography-c8a11b3-font-size:18px;--e-global-typography-c8a11b3-font-weight:400;--e-global-typography-c8a11b3-line-height:26px;--e-global-typography-6c83448-font-family:"Montserrat";--e-global-typography-6c83448-font-size:16px;--e-global-typography-6c83448-font-weight:600;--e-global-typography-6c83448-line-height:24px;--e-global-typography-990021e-font-family:"Montserrat";--e-global-typography-990021e-font-size:18px;--e-global-typography-990021e-font-weight:600;--e-global-typography-990021e-line-height:26px;font-family:"Montserrat", Sans-serif;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 a{color:var( --e-global-color-secondary );font-family:"Montserrat", Sans-serif;}.elementor-kit-6 a:hover{color:var( --e-global-color-primary );}.elementor-kit-6 h1{font-family:"Montserrat", Sans-serif;font-size:40px;font-weight:600;line-height:44px;}.elementor-kit-6 h2{font-family:"Montserrat", Sans-serif;font-size:36px;font-weight:600;line-height:39px;}.elementor-kit-6 h3{font-family:"Montserrat", Sans-serif;font-size:30px;font-weight:600;line-height:33px;}.elementor-kit-6 h4{font-family:"Montserrat", Sans-serif;font-size:24px;font-weight:400;line-height:28px;}.elementor-kit-6 h5{font-family:"Montserrat", Sans-serif;font-size:20px;font-weight:400;line-height:24px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1348px;}.e-con{--container-max-width:1348px;--container-default-padding-top:0px;--container-default-padding-right:24px;--container-default-padding-bottom:0px;--container-default-padding-left:24px;}.elementor-widget:not(:last-child){--kit-widget-spacing: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:1700px){.elementor-kit-6{--e-global-typography-3095f06-font-size:12px;--e-global-typography-3095f06-line-height:20px;--e-global-typography-c8a11b3-font-size:16px;--e-global-typography-c8a11b3-line-height:24px;--e-global-typography-6c83448-font-size:14px;--e-global-typography-6c83448-line-height:18px;--e-global-typography-990021e-font-size:16px;--e-global-typography-990021e-line-height:26px;}.elementor-kit-6 h1{font-size:36px;line-height:40px;}.elementor-kit-6 h2{font-size:30px;line-height:36px;}.elementor-kit-6 h3{font-size:26px;line-height:30px;}.elementor-kit-6 h4{font-size:20px;line-height:26px;}.elementor-kit-6 h5{font-size:18px;line-height:20px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1248px;}.e-con{--container-max-width:1248px;--container-default-padding-top:0px;--container-default-padding-right:60px;--container-default-padding-bottom:0px;--container-default-padding-left:60px;}}@media(max-width:1024px){.elementor-kit-6{--e-global-typography-3095f06-font-size:12px;--e-global-typography-3095f06-line-height:20px;--e-global-typography-c8a11b3-font-size:14px;--e-global-typography-c8a11b3-line-height:22px;--e-global-typography-6c83448-font-size:12px;--e-global-typography-6c83448-line-height:20px;--e-global-typography-990021e-font-size:14px;--e-global-typography-990021e-line-height:22px;}.elementor-kit-6 h1{font-size:30px;line-height:34px;}.elementor-kit-6 h2{font-size:26px;line-height:30px;}.elementor-kit-6 h3{font-size:22px;line-height:26px;}.elementor-kit-6 h4{font-size:18px;line-height:24px;}.elementor-kit-6 h5{font-size:16px;line-height:18px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1048px;}.e-con{--container-max-width:1048px;--container-default-padding-top:0px;--container-default-padding-right:16px;--container-default-padding-bottom:0px;--container-default-padding-left:16px;}}@media(max-width:767px){.elementor-kit-6{--e-global-typography-3095f06-font-size:12px;--e-global-typography-3095f06-line-height:20px;--e-global-typography-c8a11b3-font-size:14px;--e-global-typography-c8a11b3-line-height:22px;--e-global-typography-6c83448-font-size:12px;--e-global-typography-6c83448-line-height:20px;--e-global-typography-990021e-font-size:14px;--e-global-typography-990021e-line-height:22px;}.elementor-kit-6 h1{font-size:30px;line-height:34px;}.elementor-kit-6 h2{font-size:26px;line-height:30px;}.elementor-kit-6 h3{font-size:22px;line-height:26px;}.elementor-kit-6 h4{font-size:18px;line-height:24px;}.elementor-kit-6 h5{font-size:16px;line-height:18px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;--container-default-padding-top:0px;--container-default-padding-right:16px;--container-default-padding-bottom:0px;--container-default-padding-left:16px;}}/* Start custom CSS *//* ===== INÍCIO — CORREÇÕES MOBILE (Vime Digital / Claude — 18-09-2026) =====
   Para desfazer: apague deste comentário até o comentário "FIM — CORREÇÕES MOBILE".
   Nada acima desta linha foi alterado.
   Escopo: apenas telas até 767px (breakpoint "mobile" do Elementor).
   ========================================================================== */

@media (max-width: 767px) {

  /* --- 1. HEADER MOBILE: uma única linha e alvos de toque de 44px ---
     Problema: o header mobile ocupava 113px (duas linhas). Na home ele ainda
     é fixo e 100% transparente, então ficava por cima do texto do hero.
     As regras abaixo valem para qualquer variante do header mobile
     (header do Elementor marcado como "oculto no desktop"). */

  .elementor-location-header header.e-con.elementor-hidden-desktop {
    padding: 8px 12px !important;
    gap: 8px !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
  }

  /* logo compacto */
  .elementor-location-header header.e-con.elementor-hidden-desktop > .elementor-widget-image {
    flex: 0 0 auto !important;
    width: 118px !important;
    margin: 0 !important;
  }
  .elementor-location-header header.e-con.elementor-hidden-desktop > .elementor-widget-image img {
    width: 118px !important;
    height: auto !important;
    display: block !important;
  }

  /* grupo à direita (hambúrguer + login + CTA) numa linha só */
  .elementor-location-header header.e-con.elementor-hidden-desktop > .e-con {
    flex: 1 1 auto !important;
    flex-wrap: nowrap !important;
    flex-direction: row !important;
    justify-content: flex-end !important;
    align-items: center !important;
    gap: 4px !important;
    width: auto !important;
  }
  .elementor-location-header header.e-con.elementor-hidden-desktop > .e-con > .elementor-widget {
    width: auto !important;
    margin: 0 !important;
  }

  /* fundo sólido só no header da home, que é fixo e transparente */
  header.elementor-element-66d1430 {
    background-color: rgba(23, 10, 48, 0.92) !important;
    -webkit-backdrop-filter: saturate(140%) blur(10px) !important;
    backdrop-filter: saturate(140%) blur(10px) !important;
    box-shadow: 0 1px 0 rgba(255, 255, 255, 0.08) !important;
  }

  /* hambúrguer: era menor que 44px */
  header .elementskit-menu-hamburger {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 44px !important;
    min-height: 44px !important;
    padding: 8px !important;
    border: 0 !important;
  }
  header .elementskit-menu-hamburger .ekit-menu-icon { font-size: 22px !important; }

  /* ícone "Entrar": era 24x24 */
  header .elementor-widget-icon .elementor-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 44px !important;
    min-height: 44px !important;
    padding: 8px !important;
  }

  /* CTA "Teste Grátis": era 30px de altura e 12px de fonte */
  header .vime-button {
    min-height: 40px !important;
    padding: 9px 12px !important;
    white-space: nowrap !important;
  }
  header .vime-button .vime-button__text { font-size: 13px !important; }


  /* --- 2. MENU OFF-CANVAS: legibilidade e alvos de toque ---
     Problema: itens com 28px de altura e fonte 12px. */

  .elementskit-menu-container.elementskit-menu-offcanvas-elements {
    width: min(88vw, 340px) !important;
    padding-bottom: 32px !important;
  }
  .elementskit-navbar-nav > li > a.ekit-menu-nav-link {
    font-size: 16px !important;
    line-height: 1.35 !important;
    min-height: 52px !important;
    padding: 14px 20px !important;
    display: flex !important;
    align-items: center !important;
  }
  .elementskit-navbar-nav .elementskit-dropdown > li > a.ekit-menu-nav-link {
    font-size: 14.5px !important;
    min-height: 46px !important;
    padding: 12px 20px 12px 32px !important;
  }
  .elementskit-navbar-nav .elementskit-submenu-indicator {
    min-width: 44px !important;
    min-height: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
  .elementskit-menu-close {
    min-width: 44px !important;
    min-height: 44px !important;
  }


  /* --- 3. ABAS QUE ESCONDIAM CONTEÚDO ---
     Problema: barras de abas com rolagem horizontal e sem indicação nenhuma.
     .vd-nav  → 848px de conteúdo dentro de 273px (6 de 7 abas invisíveis)
     .abas-construtoras-nav → 784px dentro de 303px (2 de 3 abas invisíveis) */

  .vd-nav {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    overflow: visible !important;
    padding-bottom: 0 !important;
  }
  .vd-nav .vd-btn {
    width: 100% !important;
    min-height: 48px !important;
    padding: 10px 8px !important;
    justify-content: center !important;
    text-align: center !important;
    white-space: normal !important;
  }
  .vd-nav .vd-btn .vd-title { font-size: 13px !important; line-height: 1.25 !important; }

  .abas-construtoras-nav {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    overflow: visible !important;
    padding-right: 0 !important;
    height: auto !important;
  }
  .abas-construtoras-nav .aba-btn {
    width: 100% !important;
    min-height: 48px !important;
    justify-content: flex-start !important;
  }
  .abas-construtoras-nav .aba-texto { font-size: 14px !important; }


  /* --- 4. PAINÉIS DAS SOLUÇÕES: recuperar largura útil ---
     Problema: 35px de padding em contêiner interno + 32px no painel = só
     273px de 375px aproveitados; e .vd-grid com coluna fixa de 300px. */

  .e-con.e-child:has(.vd-abas),
  .e-con.e-child:has(.abas-construtoras-wrap),
  .e-con.e-child:has(.bs-wrap) {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
  .vd-panel { padding: 20px 16px !important; }
  .vd-grid { grid-template-columns: 1fr !important; gap: 16px !important; }
  .vd-col-imagem, .vd-col-imagem img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
  }


  /* --- 5. (removido) A grade de soluções é um carrossel intencional:
     tem setas de navegação e barra de progresso, então os 8 cards são
     alcançáveis. Nada foi alterado ali. --- */


  /* --- 6. BUSCA DE SOLUÇÕES ---
     Problema: o campo ficava com 85px e o placeholder cortado ("Chama…").
     Fonte <16px também fazia o iOS dar zoom ao focar. */

  .bs-search-row { flex-wrap: wrap !important; gap: 10px !important; align-items: center !important; }
  .bs-input-wrap { flex: 1 1 180px !important; }
  .bs-input {
    width: 100% !important;
    font-size: 16px !important;
    min-height: 48px !important;
  }
  .bs-btn { flex: 1 0 100% !important; width: 100% !important; min-height: 48px !important; justify-content: center !important; }


  /* --- 7. LISTAS EM LINHA: quebrar em vez de encostar nas bordas --- */

  .elementor-icon-list-items.elementor-inline-items {
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 8px 14px !important;
  }
  .elementor-icon-list-items.elementor-inline-items .elementor-inline-item {
    margin: 0 !important;
    padding: 0 !important;
  }
  .elementor-icon-list-items.elementor-inline-items .elementor-inline-item::after { content: none !important; }


  /* --- 8. TIPOGRAFIA MÍNIMA E ÁREAS DE TOQUE ---
     Problema: textos de 8px, 10px e 12px; links de 16px de altura. */

  .vime-button__text { font-size: 14px !important; }
  .vime-button { min-height: 44px !important; }
  .elementor-widget-icon-list .elementor-icon-list-text { font-size: 14px !important; }

  footer .elementor-nav-menu .elementor-item {
    font-size: 14px !important;
    min-height: 40px !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
    align-items: center !important;
  }
  footer .elementor-icon-list-item > a { min-height: 40px !important; display: flex !important; align-items: center !important; }

}

/* --- 9. AJUSTES DE TABLET (as mesmas abas também cortam até 1024px) --- */
@media (min-width: 768px) and (max-width: 1024px) {
  .vd-nav { flex-wrap: wrap !important; overflow: visible !important; }
  .vd-nav .vd-btn { flex: 0 0 auto !important; min-height: 44px !important; }
  .abas-construtoras-nav { flex-wrap: wrap !important; overflow: visible !important; }
}

/* ===== FIM — CORREÇÕES MOBILE ===== *//* End custom CSS */