html, body {
  overflow-x: hidden;
}

img {
  max-width: 100%;
  height: auto;
}

/* ===== CORREÇÃO GLOBAL ELEMENTOR ===== */

/* Evita conteúdo colado nas bordas */
body .elementor-section,
body .elementor-container,
body .elementor-column,
body .elementor-widget-wrap {
  padding-left: 20px !important;
  padding-right: 20px !important;
  box-sizing: border-box;
}

/* Garante centralização */
body .elementor-container {
  max-width: 1200px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Corrige títulos (seção do Blog principalmente) */
body .elementor-widget-heading .elementor-heading-title {
  margin-left: 0 !important;
  padding-left: 0 !important;
}

/* Corrige textos gerais */
body .elementor-widget-text-editor {
  margin-left: 0 !important;
}

/* Evita overflow lateral */
html, body {
  overflow-x: hidden;
}

/* ===== RESET BÁSICO ===== */
* {
  box-sizing: border-box;
}

/* ===== EVITA SCROLL LATERAL (layout quebrado) ===== */
html, body {
  overflow-x: hidden;
}

/* ===== IMAGENS RESPONSIVAS ===== */
img {
  max-width: 100%;
  height: auto;
  display: block;
}

/* ===== GARANTE QUE NADA ESTOURE A TELA ===== */
.elementor-section,
.elementor-container,
.elementor-column,
.elementor-widget-wrap {
  max-width: 100%;
}

/* ===== PADRÃO DE ESPAÇAMENTO LATERAL ===== */
body .elementor-section,
body .elementor-container {
  padding-left: 20px !important;
  padding-right: 20px !important;
}

/* ===== CENTRALIZA CONTEÚDO ===== */
body .elementor-container {
  max-width: 1200px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* ===== TEXTOS NÃO QUEBRAM LAYOUT ===== */
h1, h2, h3, h4, h5, h6, p {
  word-break: break-word;
}

/* ===== BOTÕES NÃO ESTOURAM ===== */
.elementor-button {
  white-space: normal;
}

/* ===== CORRIGE VÍDEOS / IFRAMES ===== */
iframe {
  max-width: 100%;
}

/* ===== CORRIGE PROBLEMAS COM SEÇÕES FULL WIDTH ===== */
.elementor-section.elementor-top-section {
  overflow: hidden;
}

/* ===== EVITA ELEMENTOS ABSOLUTOS QUEBRANDO TELA ===== */
.elementor-widget {
  max-width: 100%;
}

/* ===== CORREÇÃO FORTE PARA SEÇÕES FULL WIDTH QUEBRADAS ===== */

/* Força TODOS os conteúdos a respeitarem margem lateral */
body .elementor-section > .elementor-container,
body .elementor-section > .elementor-column-gap-no > .elementor-row,
body .elementor-top-section > .elementor-container {
  max-width: 1200px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
}

/* Se NÃO tiver container (caso do seu título), força no conteúdo direto */
body .elementor-widget-wrap {
  padding-left: 20px !important;
  padding-right: 20px !important;
}

/* Corrige especificamente títulos */
body .elementor-heading-title {
  max-width: 1200px;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Corrige hero interno quebrando ao carregar */
.hero-interno-fix {
  position: relative;
  overflow: hidden;
}

/* Seção clássica do Elementor */
.hero-interno-fix > .elementor-container {
  min-height: inherit;
  align-items: center;
}

/* Container Flexbox do Elementor */
.hero-interno-fix > .e-con-inner {
  min-height: inherit;
  align-items: center;
}

/* Garante estabilidade visual dos widgets internos */
.hero-interno-fix .elementor-widget-wrap,
.hero-interno-fix .elementor-element {
  position: relative;
  z-index: 2;
}

/* MOBILE: evita pulo da seção ao carregar */
@media (max-width: 767px) {
  .hero-interno-fix {
    min-height: 520px !important;
  }
}

/* Corrige hero interna abaixo do header mobile */
@media (max-width: 767px) {
    .hero-interno-fix {
        margin-top: 0 !important;
        padding-top: 5px !important;
        position: relative !important;
        z-index: 1 !important;
    }

    body .hero-interno-fix {
        min-height: auto !important;
    }