.elementor-kit-5{--e-global-color-primary:#0A2C6A;--e-global-color-secondary:#54595F;--e-global-color-text:#151414;--e-global-color-accent:#FF6201;--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){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-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 *//* Garante largura total e previne rolagem horizontal */
html, body {
  width: 100% !important;
  overflow-x: hidden !important;
}

/* Zoom em imagem com bordas arredondadas */
.imagem-zoom {
  overflow: hidden;
  position: relative;
  border-radius: 10px;
}
.imagem-zoom img {
  transition: transform 0.6s cubic-bezier(0.25, 0.8, 0.25, 1), border-radius 0.6s ease;
  display: block;
  width: 100%;
  height: auto;
  border-radius: 0px;
}
.imagem-zoom:hover img {
  transform: scale(1.15);
  border-radius: 10px;
}

/* Imagem em formato paisagem */
.card-paisagem .elementor-widget-image {
  height: 170px;
  overflow: hidden;
  border-radius: 10px 10px 0 0;
  position: relative;
}

/* Altura igual no loop carousel */
.elementor-loop-carousel .swiper-slide {
  height: auto !important;
  display: flex !important;
  align-items: stretch !important;
}
.elementor-loop-item {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
}
.elementor-loop-item > .elementor-container,
.elementor-loop-item > .elementor-widget-wrap {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

/* Sombra moderna para cards */
.sombra-box {
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
  border-radius: 12px;
  background: #fff;
  transition: box-shadow 0.3s ease, transform 0.3s ease;
}
.sombra-box:hover {
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.12);
  transform: translateY(-8px);
}

/* Espaço interno à esquerda dos campos do formulário */
.elementor-form input,
.elementor-form select,
.elementor-form textarea {
  padding-left: 52px !important;
}

/* Ícones SVG nos campos do formulário */
.elementor-form .elementor-field-group::before {
  position: absolute;
  content: "";
  width: 24px;
  height: 24px;
  top: 70%;
  left: 16px;
  transform: translateY(-50%);
  background-repeat: no-repeat !important;
  background-size: contain;
  background-position: center;
  z-index: 2;
  pointer-events: none;
  opacity: 100;
  filter: brightness(0) saturate(100%) invert(54%) sepia(96%) saturate(752%) hue-rotate(356deg) brightness(103%) contrast(108%);
}

/* Ícone - Nome */
.elementor-form .elementor-field-group-name::before {
  background-image: url("https://solut-e.com/wp-content/uploads/2025/07/nome.svg");
}

/* Ícone - Telefone */
.elementor-form .elementor-field-group-telefone::before {
  background-image: url("https://solut-e.com/wp-content/uploads/2025/07/telefone.svg");
}

/* Ícone - Email */
.elementor-form .elementor-field-group-email::before {
  background-image: url("https://solut-e.com/wp-content/uploads/2025/07/email.svg");
}

/* Ícone - Nome da Empresa */
.elementor-form .elementor-field-group-nome_empresa::before {
  background-image: url("https://solut-e.com/wp-content/uploads/2025/07/empresa.svg");
}

/* Ícone - Estado */
.elementor-form .elementor-field-group-estado::before {
  background-image: url("https://solut-e.com/wp-content/uploads/2025/07/local.svg");
}

/* Ícone - Gasto Mensal com Energia */
.elementor-form .elementor-field-group-gasto_mensal::before {
  background-image: url("https://solut-e.com/wp-content/uploads/2025/07/gastp.svg");
}

/* Espaço entre o último campo e o botão */
.elementor-form .elementor-field-group-gasto_mensal {
  margin-bottom: 30px !important;
}

/* Sombra forte com zoom suave */
.sombra-ok {
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.38);
  transition: box-shadow 0.3s ease, transform 0.3s ease;
}
.sombra-ok:hover {
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.38);
  transform: scale(1.03);
}
/* POPUP sempre acima do header/overlays */
.elementor-popup-modal {
  z-index: 999999 !important;
}
.elementor-popup-modal .dialog-widget-content {
  position: relative;
  z-index: 1000000;
  pointer-events: auto;
}
/* Botão de fechar visível e clicável */
.elementor-popup-modal .dialog-close-button {
  position: absolute;
  top: 10px; right: 10px;
  width: 44px; height: 44px;            /* área de toque confortável */
  display: flex; align-items: center; justify-content: center;
  opacity: 1 !important;
  z-index: 1000001 !important;
  pointer-events: auto !important;
}

/* Evita que camadas decorativas capturem o toque */
.elementor-background-overlay,
.elementor-shape,
.elementor-widget::before,
.elementor-widget::after,
.elementor-section::before,
.elementor-section::after {
  pointer-events: none;
}

/* iPad/Tablet em modo retrato: neutraliza as causas comuns do bug */
@media (max-width: 1024px) and (orientation: portrait) {
  /* headers/ stickies não podem ficar acima do popup */
  header, .elementor-section-sticky, .elementor-sticky--active {
    z-index: 10 !important;
  }

  /* remove transforms/animations que quebram hit-test no iOS */
  .elementor-popup-modal,
  .elementor-popup-modal .dialog-widget-content {
    -webkit-transform: none !important;
    transform: none !important;
    animation: none !important;
  }

  /* se houver camadas/“masks” no template, não capturam toque */
  .elementor-popup-modal .e-con::before,
  .elementor-popup-modal .e-con::after {
    pointer-events: none !important;
  }
}



/* ===== Correção de PNG com “fundo” no MOBILE ===== */
@media (max-width: 767px) {
  /* Zera qualquer fundo no <img> e wrappers comuns */
  .elementor img,
  .elementor-widget-image,
  .elementor-widget-image .elementor-widget-container,
  picture img,
  img[src$=".png"] {
    background: transparent !important;
    box-shadow: none !important;
    outline: 0 !important;
    mix-blend-mode: normal !important;
  }

  /* Lazy-load placeholders (Litespeed, Jetpack, etc.) */
  img.lazyload, img.lazyloading, img.lazyloaded,
  .lazyload, .lazyloading, .lazyloaded,
  .ls-is-cached,
  .jetpack-lazy-image, .jetpack-lazy-image--handled {
    background: transparent !important;
  }

  /* iOS: evita artefato com composição/blur/transform em ancestrais */
  .elementor-widget-image { isolation: isolate; }
  .elementor-widget-image img {
    backface-visibility: hidden;
    transform: translateZ(0);
    -webkit-transform: translateZ(0);
    image-rendering: -webkit-optimize-contrast;
  }

  /* Caso algum “overlay” de seção esteja pintando atrás da PNG */
  .elementor-image, .wp-block-image {
    background: transparent !important;
  }
}

/* Se você usa dark mode que inverte cores, não aplique em imagens */
@media (prefers-color-scheme: dark) {
  img, picture img { filter: none !important; }
}/* End custom CSS */