.elementor-kit-5{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.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:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ===== CORREÇÃO GERAL MOBILE / OVERFLOW ===== */
html, body {
  margin: 0;
  padding: 0;
  width: 100%;
  max-width: 100%;
  overflow-x: hidden !important;
}

body {
  position: relative;
}

/* WordPress / Elementor */
.site,
.site-content,
.elementor,
.elementor-section,
.elementor-container,
.elementor-column,
.elementor-widget-wrap {
  max-width: 100%;
}

/* impede qualquer bloco de passar da tela */
section, div, img, video, canvas {
  max-width: 100%;
}

/* imagens e vídeos responsivos */
img, video {
  display: block;
  height: auto;
}

/* evita elementos absolutos vazando */
.hero,
.vx-hero,
.vx-cta,
.banner,
.main-hero {
  position: relative;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
}

/* qualquer fundo ou layer absoluto */
.hero::before,
.hero::after,
.vx-hero::before,
.vx-hero::after,
.vx-cta::before,
.vx-cta::after {
  max-width: 100%;
}

/* ===== AJUSTES ESPECÍFICOS MOBILE ===== */
@media (max-width: 767px) {

  html, body {
    overflow-x: hidden !important;
  }

  .elementor-section,
  .elementor-container,
  .elementor-column,
  .elementor-widget-wrap {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  /* se algum bloco estiver com largura fixa */
  .hero,
  .vx-hero,
  .vx-cta,
  .main-hero,
  .banner {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    overflow: hidden !important;
  }

  /* títulos */
  .hero h1,
  .vx-hero h1,
  .vx-cta h1,
  .hero-title {
    font-size: clamp(34px, 9vw, 52px) !important;
    line-height: 0.98 !important;
    letter-spacing: -0.04em !important;
    max-width: 100% !important;
    word-break: normal;
  }

  /* subtítulo */
  .hero p,
  .vx-hero p,
  .vx-cta p,
  .hero-subtitle,
  .sub {
    font-size: 16px !important;
    line-height: 1.55 !important;
    max-width: 100% !important;
  }

  /* botão */
  .hero .btn,
  .vx-hero .btn,
  .vx-cta .btn,
  .vx-cta__btn,
  .hero-button {
    max-width: 100% !important;
  }

  .vx-cta__btn-text,
  .hero .btn-text,
  .hero-button {
    white-space: nowrap !important;
  }

  /* remove truques desktop que quebram no mobile */
  [style*="transform"],
  .parallax,
  .floating,
  .move-x,
  .move-y {
    transform: none !important;
  }
}
/* ── Exceções Vexo — evita conflito com o CSS responsivo global ── */

/* Hero Vimeo — mantém o posicionamento correto */
.vxhero__content {
  transform: translateY(-50%) !important;
}

@media (max-width: 700px) {
  .vxhero__content {
    top: auto !important;
    bottom: 0 !important;
    transform: none !important;
    padding: 0 16px 32px !important;
  }

  /* Não deixa o iframe do Vimeo ser resetado */
  .vxhero__iframe {
    transform: translate(-50%, -50%) !important;
    width: max(100vw, 177.78vh) !important;
    height: max(56.25vw, 100vh) !important;
  }

  .vxhero__video-wrap--mobile .vxhero__iframe {
    width: max(100vw, 56.25vh) !important;
    height: max(177.78vw, 100vh) !important;
    top: 0% !important;
    transform: translate(-50%, 0%) !important;
  }
}

/* CTA inner — mantém padding vertical */
@media (max-width: 767px) {
  .vx-cta__inner {
    padding: 52px 20px !important;
  }
}/* End custom CSS */