.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-173 .elementor-element.elementor-element-d7e2894 .elementor-menu-toggle{margin-left:auto;}/* Start custom CSS *//* =========================================================
   VANTOR AUTO STUDIO — V4 · CSS da página
   Só o que não dá para fazer direto nos widgets fica aqui.
   Estilos base (cores, fontes, espaçamentos) estão nas
   classes globais "v-*" e nos próprios widgets.
   JS dos carrosséis e do comparador: Elementor → Custom Code → "Vantor V4 — Carrosséis e comparador antes/depois".
   Hero anterior salvo em Modelos → Seções → "Modelo — Hero V4 original (backup)".
   Performance: todas as animações usam só transform/opacity (GPU).
   ========================================================= */

/* 0. Landing page: esconde header/footer do tema + âncoras abaixo do cabeçalho fixo (96 / 88 / 84px) */
.site-header, .site-footer { display: none !important; }
html { scroll-behavior: smooth; }
section[id] { scroll-margin-top: 96px; }
@media (max-width: 1024px) { section[id] { scroll-margin-top: 88px; } }
@media (max-width: 767px) { section[id] { scroll-margin-top: 84px; } }

/* 1. Títulos em dois pesos (.v-mix): linha forte em Sora 800 + linha em Sora 500
   <span> = linha clara  |  <em> = linha vermelha */
.v-mix span, .v-mix em { font-weight: 500; text-transform: none; font-style: normal; }
.v-mix span { color: var(--vantor-soft); }
.v-mix em   { color: var(--vantor-red-bright); }
.v-cta-title span { color: #FFFFFF; }

/* 2. Hero: ícone de localização (.v-pin) desenhado com máscara SVG */
.v-pin {
  -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2a7 7 0 0 0-7 7c0 5.2 7 13 7 13s7-7.8 7-13a7 7 0 0 0-7-7zm0 9.5A2.5 2.5 0 1 1 12 6.5a2.5 2.5 0 0 1 0 5z'/></svg>") center / contain no-repeat;
          mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2a7 7 0 0 0-7 7c0 5.2 7 13 7 13s7-7.8 7-13a7 7 0 0 0-7-7zm0 9.5A2.5 2.5 0 1 1 12 6.5a2.5 2.5 0 0 1 0 5z'/></svg>") center / contain no-repeat;
}

/* 2b. Cabeçalho fixo com efeito vidro (.v-header) — desce junto com a barra de admin quando logado */
.v-header { top: var(--wp-admin--admin-bar--height, 0px) !important; -webkit-backdrop-filter: blur(18px) saturate(140%); }

/* 3. Faixa de serviços infinita: dois trilhos idênticos lado a lado,
   cada um anda 100% da própria largura — o segundo entra exatamente onde o primeiro sai. */
@keyframes vMarquee { from { transform: translate3d(0,0,0); } to { transform: translate3d(-100%,0,0); } }
.v-marquee-track { animation: vMarquee 40s linear infinite; will-change: transform; }

/* 4. Ponto "ao vivo" pulsando (usado no modelo do hero anterior) */
@keyframes vPulse { 0%, 100% { opacity: 1; } 50% { opacity: .4; } }
.v-live { animation: vPulse 1.6s ease-in-out infinite; }

/* 5. Cards de serviço: zoom na foto + destaque do PPF */
.v-card .v-photo { transition: transform .6s ease; }
.v-card:hover .v-photo { transform: scale(1.05); }
.v-services > :first-child { border: 1.5px solid var(--vantor-red) !important; }
.v-services > :first-child .v-card-media { position: relative; }
.v-services > :first-child .v-card-media::after {
  content: "MAIS PROCURADO"; position: absolute; top: 16px; left: 16px;
  font: 700 10px/1 Inter; letter-spacing: .14em; color: #fff;
  background: var(--vantor-red); padding: 6px 12px 8px; border-radius: 100px;
}
.v-services > :first-child .v-arrow-sm { background: var(--vantor-red); border-color: var(--vantor-red); }
/* 5b. Setas dos cards: o link ocupa o círculo inteiro (área de clique maior).
   Seletor reforçado porque o Elementor zera o estilo dos links dentro de parágrafos. */
.elementor .v-arrow-sm a.e-paragraph-link-base {
  position: absolute; inset: 0; display: flex; align-items: center; justify-content: center;
  color: inherit; text-decoration: none; border-radius: inherit; cursor: pointer;
}

/* 6. Antes/depois: anel pulsando na alça (transform + opacity, sem repintar) */
@keyframes vRing { 0% { transform: scale(1); opacity: .55; } 100% { transform: scale(1.65); opacity: 0; } }
.v-handle::after {
  content: ""; position: absolute; inset: 0; border-radius: inherit;
  border: 2px solid rgba(255,255,255,.6); pointer-events: none;
  animation: vRing 2.2s ease-out infinite; will-change: transform, opacity;
}
.v-metrics > :first-child p:first-child { color: var(--vantor-red-bright) !important; }

/* 7. Método: números vazados; etapa 04 em vermelho sólido */
.v-num-outline { -webkit-text-stroke: 1.5px rgba(255,255,255,.25); }
.v-steps > :last-child .v-num-outline { color: var(--vantor-red-bright) !important; -webkit-text-stroke: 0; }
.v-steps > :last-child > div:first-child { background: rgba(255,255,255,.15) !important; }

/* 8. Pacotes: "a partir de" ao lado do preço (hover dos cards fica nas classes v-pkg / v-pkg-hl) */
.v-pkg-price span { font: 400 14px Inter; letter-spacing: 0; color: var(--vantor-muted); margin-left: 6px; }
.v-pkg-hl .v-pkg-price { font-size: 52px; }
@media (max-width: 767px) { .v-pkg-hl .v-pkg-price { font-size: 36px; } }

/* 9. Carrosséis (depoimentos e galeria): setas via JS + arrastar no touch
   Todas as fotos da galeria têm o mesmo tamanho (definido no componente "Slide Galeria"). */
.v-track { overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; -webkit-overflow-scrolling: touch; overscroll-behavior-x: contain; }
.v-track::-webkit-scrollbar { display: none; }
.v-track > * { scroll-snap-align: start; flex-shrink: 0; }
.v-prev, .v-next { user-select: none; -webkit-tap-highlight-color: transparent; }
.v-progress-bar { will-change: transform; }
/* Depoimentos: 3 por vez no desktop */
@media (min-width: 1025px) { #avaliacoes .v-track > * { flex: 0 0 calc((100% - 40px) / 3) !important; width: auto !important; } }

/* 10. FAQ (accordion nativo) com ícone + / − */
.v-faq summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.v-faq summary::-webkit-details-marker { display: none; }
.v-faq summary > :first-child { flex: 1 1 auto; min-width: 0; }
.v-faq summary > :last-child { flex: 0 0 auto; width: auto !important; min-width: 0; }
.v-faq summary > :last-child::after { content: "+"; display: block; font: 300 26px/1 Inter; color: #fff; transition: color .3s; }
.v-faq details[open] summary > :last-child::after { content: "−"; color: var(--vantor-red-bright); }

/* 11. Formulário */
.v-field:focus-within { border-color: var(--vantor-red); }
.v-field-input::placeholder { color: #5E5E66; }
.v-field-input option { background: #16161A; color: #fff; }

/* 12. Menu do header (widget Nav Menu)
   !important porque a tipografia global do kit (Sora 800) se aplica ao widget */
.elementor-nav-menu--main .elementor-item {
  font-family: Inter !important; font-size: 14px !important; font-weight: 500 !important;
  color: #CFCFD4 !important; padding: 0 16px !important; transition: color .25s;
}
.elementor-nav-menu--main .elementor-item:hover,
.elementor-nav-menu--main .elementor-item:focus { color: #FFFFFF !important; }
/* Botão "Menu" (tablet/mobile) como pílula vermelha */
.elementor-menu-toggle {
  background: var(--vantor-red) !important; color: #fff !important;
  border-radius: 100px; padding: 11px 16px; font-size: 18px;
}
.elementor-menu-toggle::before { content: "Menu"; font: 600 14px Inter; margin-right: 8px; }
@media (max-width: 1024px) {
  .elementor-widget-nav-menu { position: relative; }
  nav.elementor-nav-menu--dropdown {
    position: absolute !important; top: calc(100% + 14px) !important; right: -6px !important; left: auto !important;
    width: calc(100vw - 32px) !important; max-width: 720px; z-index: 30;
    background: #0E0E10 !important; border: 1px solid rgba(255,255,255,.1);
    border-radius: 16px; overflow: hidden; box-shadow: 0 24px 60px rgba(0,0,0,.6);
  }
}
.elementor-nav-menu--dropdown a.elementor-item {
  font: 500 16px Inter !important; color: #fff !important; padding: 16px 24px !important;
  border-bottom: 1px solid rgba(255,255,255,.06); background: transparent !important;
}
.elementor-nav-menu--dropdown a.elementor-item:hover { background: rgba(225,6,0,.15) !important; }

/* 14. Microinterações (hover) — discretas, só transform/opacity/borda */

/* 14a. Cards de métrica (antes/depois): sobem e a borda acende */
.v-metrics > * { transition: transform .35s ease, border-color .35s ease, background-color .35s ease; }
.v-metrics > *:hover { transform: translateY(-4px); border-color: rgba(255,255,255,.2) !important; background-color: #16161A !important; }
.v-metrics > :first-child:hover { border-color: rgba(225,6,0,.55) !important; }

/* 14b. Selo "48h": flutua devagar + brilho que atravessa o card */
@keyframes vFloat { 0%, 100% { transform: translate3d(0,0,0); } 50% { transform: translate3d(0,-8px,0); } }
@keyframes vShine { 0%, 60% { transform: translate3d(-120%,0,0) skewX(-20deg); } 100% { transform: translate3d(220%,0,0) skewX(-20deg); } }
.v-badge-float { animation: vFloat 4s ease-in-out infinite; will-change: transform;
  box-shadow: 0 16px 40px rgba(225,6,0,.35); }
.v-badge-float::after {
  content: ""; position: absolute; top: 0; left: 0; width: 45%; height: 100%; pointer-events: none;
  background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.35) 50%, rgba(255,255,255,0) 100%);
  animation: vShine 4.5s ease-in-out infinite; will-change: transform;
}

/* 14c. Galeria: zoom suave, escurecimento na base e nome em vermelho */
.v-gallery > * { cursor: pointer; }
.v-gallery > * > div:first-child { position: relative; }
.v-gallery > * > div:first-child::after {
  content: ""; position: absolute; inset: 0; pointer-events: none; border-radius: inherit;
  background: linear-gradient(180deg, rgba(7,7,8,0) 55%, rgba(7,7,8,.55) 100%);
  opacity: 0; transition: opacity .5s ease;
}
.v-gallery .v-photo { transition: transform .8s cubic-bezier(.2,.7,.2,1); }
.v-gallery > *:hover .v-photo { transform: scale(1.06); }
.v-gallery > *:hover > div:first-child::after { opacity: 1; }
.v-gallery h3 { transition: color .3s ease; }
.v-gallery > *:hover h3 { color: var(--vantor-red-bright) !important; }

/* 15. Botão flutuante de WhatsApp (.v-wa) — círculo vermelho com anel pulsando.
   Hover discreto: sobe 2px, a sombra fica um pouco mais forte e aparece um contorno fino.
   (O texto "Fale no WhatsApp" fica oculto; sem link por enquanto.) */
.v-wa {
  background: linear-gradient(135deg, #FF2A1F 0%, #B30000 100%) !important;
  box-shadow: 0 10px 28px rgba(225,6,0,.35), inset 0 1px 0 rgba(255,255,255,.22);
  overflow: visible; text-decoration: none; cursor: pointer;
  transition: transform .4s cubic-bezier(.2,.8,.2,1), box-shadow .4s ease;
}
.v-wa:hover {
  transform: translate3d(0,-2px,0);
  box-shadow: 0 14px 34px rgba(225,6,0,.45), 0 0 0 1px rgba(255,255,255,.18), inset 0 1px 0 rgba(255,255,255,.28);
}
.v-wa:active { transform: translate3d(0,0,0) scale(.97); }
.v-wa-icon {
  -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M17.47 14.38c-.3-.15-1.76-.87-2.03-.97-.27-.1-.47-.15-.67.15-.2.3-.77.97-.94 1.16-.17.2-.35.22-.64.07-.3-.15-1.26-.46-2.39-1.47-.88-.79-1.48-1.76-1.65-2.06-.17-.3-.02-.46.13-.61.13-.13.3-.35.45-.52.15-.17.2-.3.3-.5.1-.2.05-.37-.03-.52-.07-.15-.67-1.61-.92-2.21-.24-.58-.49-.5-.67-.51h-.57c-.2 0-.52.07-.79.37-.27.3-1.04 1.02-1.04 2.48 0 1.46 1.07 2.88 1.21 3.07.15.2 2.1 3.2 5.08 4.49.71.31 1.26.49 1.69.63.71.23 1.36.2 1.87.12.57-.09 1.76-.72 2.01-1.41.25-.69.25-1.29.17-1.41-.07-.12-.27-.2-.57-.35zM12.05 21.79h-.01a9.87 9.87 0 0 1-5.03-1.38l-.36-.21-3.74.98 1-3.65-.24-.37a9.86 9.86 0 0 1-1.51-5.26c0-5.45 4.44-9.88 9.89-9.88 2.64 0 5.12 1.03 6.99 2.9a9.83 9.83 0 0 1 2.89 6.99c0 5.45-4.44 9.88-9.88 9.88zm8.41-18.3A11.82 11.82 0 0 0 12.05 0C5.5 0 .16 5.34.16 11.89c0 2.1.55 4.14 1.59 5.95L.06 24l6.3-1.65a11.88 11.88 0 0 0 5.68 1.45h.01c6.55 0 11.89-5.34 11.89-11.89 0-3.18-1.24-6.17-3.48-8.42z'/></svg>") center / contain no-repeat;
          mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M17.47 14.38c-.3-.15-1.76-.87-2.03-.97-.27-.1-.47-.15-.67.15-.2.3-.77.97-.94 1.16-.17.2-.35.22-.64.07-.3-.15-1.26-.46-2.39-1.47-.88-.79-1.48-1.76-1.65-2.06-.17-.3-.02-.46.13-.61.13-.13.3-.35.45-.52.15-.17.2-.3.3-.5.1-.2.05-.37-.03-.52-.07-.15-.67-1.61-.92-2.21-.24-.58-.49-.5-.67-.51h-.57c-.2 0-.52.07-.79.37-.27.3-1.04 1.02-1.04 2.48 0 1.46 1.07 2.88 1.21 3.07.15.2 2.1 3.2 5.08 4.49.71.31 1.26.49 1.69.63.71.23 1.36.2 1.87.12.57-.09 1.76-.72 2.01-1.41.25-.69.25-1.29.17-1.41-.07-.12-.27-.2-.57-.35zM12.05 21.79h-.01a9.87 9.87 0 0 1-5.03-1.38l-.36-.21-3.74.98 1-3.65-.24-.37a9.86 9.86 0 0 1-1.51-5.26c0-5.45 4.44-9.88 9.89-9.88 2.64 0 5.12 1.03 6.99 2.9a9.83 9.83 0 0 1 2.89 6.99c0 5.45-4.44 9.88-9.88 9.88zm8.41-18.3A11.82 11.82 0 0 0 12.05 0C5.5 0 .16 5.34.16 11.89c0 2.1.55 4.14 1.59 5.95L.06 24l6.3-1.65a11.88 11.88 0 0 0 5.68 1.45h.01c6.55 0 11.89-5.34 11.89-11.89 0-3.18-1.24-6.17-3.48-8.42z'/></svg>") center / contain no-repeat;
}
.v-wa-label { display: none; }
@keyframes vWaPulse { 0% { transform: scale(1); opacity: .45; } 100% { transform: scale(1.5); opacity: 0; } }
.v-wa-pulse { border: 2px solid rgba(255,42,31,.7); pointer-events: none; animation: vWaPulse 2.6s ease-out infinite; will-change: transform, opacity; }
.v-wa:hover .v-wa-pulse { animation: none; opacity: 0; }

/* 13. Acessibilidade: quem prefere menos movimento */
@media (prefers-reduced-motion: reduce) {
  .v-marquee-track, .v-live, .v-handle::after, .v-badge-float, .v-badge-float::after, .v-wa-pulse { animation: none !important; }
  html { scroll-behavior: auto; }
}/* End custom CSS */