.elementor-7728 .elementor-element.elementor-element-54ccd004{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-7728 .elementor-element.elementor-element-54ccd004.e-con{--flex-grow:1;--flex-shrink:0;}:root{--page-title-display:none;}/* Start custom CSS for container, class: .elementor-element-54ccd004 *//* Quebra o encaixotamento do widget HTML que contém a LP */
.elementor-widget-html,
.elementor-widget-html .elementor-widget-container,
.elementor-widget-html .elementor-section,
.elementor-column,
.elementor-col-100,
.elementor-element {
  overflow: visible !important;
  max-width: 100% !important;
}

/* Garante que o body e o wrapper não limitem */
.elementor-section-wrap,
.elementor-inner,
.elementor-container {
  max-width: 100% !important;
  padding: 0 !important;
  overflow: visible !important;
}

/* A seção que contém o widget precisa ser full-width */
.elementor-widget-html > .elementor-widget-container {
  padding: 0 !important;
  margin: 0 !important;
}/* End custom CSS */
/* Start custom CSS */.site-header {
  position: relative !important;
  width: 100vw !important;
  max-width: 100vw !important;
  left: 50% !important;
  right: auto !important;
  transform: translateX(-50%) !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  overflow: hidden !important;
  background: #0a0a0a !important;
}

.site-topbar {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 20 !important;
  padding: 0 20px !important;
  background: linear-gradient(to bottom, rgba(0,0,0,.78) 0%, rgba(0,0,0,.25) 65%, transparent 100%) !important;
}

.site-topbar-inner {
  max-width: 1320px !important;
  margin: 0 auto !important;
  min-height: 76px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  padding: 12px 0 !important;
}

.header-logo {
  display: inline-flex !important;
  align-items: center !important;
  min-width: 0 !important;
  max-width: 70% !important;
}

.header-logo img {
  display: block !important;
  width: auto !important;
  height: 52px !important;
  max-width: 100% !important;
}

.header-cta,
.hero-main-cta {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #c8f135 !important;
  color: #0a0a0a !important;
  border-radius: 4px !important;
  font-family: 'Barlow', system-ui, sans-serif !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

.header-cta {
  padding: 10px 18px !important;
  font-size: 12px !important;
  letter-spacing: .05em !important;
  line-height: 1 !important;
  flex-shrink: 0 !important;
}

.hero-image-wrap {
  position: relative !important;
  min-height: 760px !important;
  display: flex !important;
  align-items: flex-end !important;
}

.hero-bg-img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center top !important;
}

.hero-image-overlay {
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(180deg, rgba(0,0,0,.28) 0%, rgba(0,0,0,.34) 18%, rgba(0,0,0,.72) 72%, rgba(0,0,0,.92) 100%),
    linear-gradient(105deg, rgba(0,0,0,.82) 0%, rgba(0,0,0,.50) 52%, rgba(0,0,0,.12) 100%) !important;
}

.hero-content {
  position: relative !important;
  z-index: 2 !important;
  width: 100% !important;
  max-width: 1320px !important;
  margin: 0 auto !important;
  padding: 160px 20px 72px !important;
}

.hero-eyebrow {
  display: inline-block !important;
  margin-bottom: 22px !important;
  color: #c8f135 !important;
  font: 700 11px/1.4 'Barlow', system-ui, sans-serif !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
}

.hero-content h1 {
  max-width: 860px !important;
  margin: 0 0 20px !important;
  color: #fafaf8 !important;
  font: 900 clamp(38px, 6vw, 76px)/.96 'Barlow Condensed', system-ui, sans-serif !important;
  letter-spacing: -.02em !important;
  text-transform: uppercase !important;
}

.hero-content h1 em {
  color: #c8f135 !important;
  font-style: normal !important;
}

.hero-sub {
  max-width: 620px !important;
  margin: 0 0 32px !important;
  color: rgba(255,255,255,.72) !important;
  font: 400 clamp(15px, 2vw, 18px)/1.7 'Barlow', system-ui, sans-serif !important;
}

.hero-meta {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  width: min(100%, 980px) !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  border-radius: 6px !important;
  overflow: hidden !important;
  margin-bottom: 30px !important;
}

.hero-meta-item {
  padding: 14px 18px !important;
  background: rgba(255,255,255,.04) !important;
  border-right: 1px solid rgba(255,255,255,.08) !important;
  color: #fafaf8 !important;
  font: 600 12px/1.45 'Barlow', system-ui, sans-serif !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
  min-width: 0 !important;
}

.hero-meta-item:last-child {
  border-right: 0 !important;
}

.hero-ctas {
  display: flex !important;
  gap: 12px !important;
}

.hero-main-cta {
  padding: 14px 24px !important;
  font-size: 13px !important;
  letter-spacing: .06em !important;
  line-height: 1 !important;
}

@media (max-width: 1024px) {
  .hero-image-wrap {
    min-height: 680px !important;
  }

  .hero-content {
    padding-top: 148px !important;
    padding-bottom: 56px !important;
  }

  .hero-meta {
    grid-template-columns: 1fr !important;
    width: 100% !important;
  }

  .hero-meta-item {
    border-right: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.08) !important;
  }

  .hero-meta-item:last-child {
    border-bottom: 0 !important;
  }
}

@media (max-width: 767px) {
  .site-topbar-inner {
    min-height: 64px !important;
    gap: 12px !important;
  }

  .header-logo {
    max-width: 58% !important;
  }

  .header-logo img {
    height: 38px !important;
  }

  .header-cta {
    padding: 10px 12px !important;
    font-size: 11px !important;
  }

  .hero-image-wrap {
    min-height: 620px !important;
  }

  .hero-content {
    padding: 118px 20px 38px !important;
  }

  .hero-content h1 {
    max-width: 100% !important;
    font-size: clamp(34px, 12vw, 56px) !important;
  }

  .hero-content h1 br {
    display: none !important;
  }

  .hero-sub {
    max-width: 100% !important;
    margin-bottom: 26px !important;
  }

  .hero-ctas {
    display: block !important;
  }

  .hero-main-cta {
    width: 100% !important;
    text-align: center !important;
  }
}

@media (max-width: 380px) {
  .site-topbar {
    padding: 0 14px !important;
  }

  .site-topbar-inner {
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: center !important;
    padding: 10px 0 14px !important;
  }

  .header-logo {
    max-width: 100% !important;
    justify-content: center !important;
  }

  .header-logo img {
    height: 34px !important;
    margin: 0 auto !important;
  }

  .header-cta {
    width: 100% !important;
  }

  .hero-content {
    padding: 132px 14px 32px !important;
  }
}

/* muito importante: libera o container do Elementor/tema */
.elementor-widget-text-editor,
.elementor-widget-text-editor .elementor-widget-container,
.elementor-widget-html,
.elementor-widget-html .elementor-widget-container,
.elementor-column,
.elementor-widget-wrap,
.elementor-section,
.elementor-container,
.e-con,
.e-con-inner,
.entry-content,
.site-content,
.ast-container,
.container,
.wp-block-group {
  overflow: visible !important;
}

/* evita largura central do tema prender o header */
.elementor-widget-text-editor .site-header,
.elementor-widget-html .site-header {
  width: 100vw !important;
  max-width: 100vw !important;
}/* End custom CSS */