/* Definição da Fonte Metropolis */
@font-face {
  font-family: 'Metropolis';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/Metropolis-Regular.woff2') format('woff2');
}

@font-face {
  font-family: 'Metropolis';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/fonts/Metropolis-Regular.woff2') format('woff2');
}

@font-face {
  font-family: 'Metropolis';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/fonts/Metropolis-SemiBold.woff2') format('woff2');
}

@font-face {
  font-family: 'Metropolis';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/Metropolis-SemiBold.woff2') format('woff2');
}

/* Definição da Fonte Takota */
@font-face {
  font-family: 'Takota';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/Takota.woff2') format('woff2');
}

@font-face {
  font-family: 'Takota';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/Takota.woff2') format('woff2');
}

/* Aplicação Global da Fonte Metropolis */
body, 
p, 
h1, h2, h3, h4, h5, h6, 
span, div, a, button, input, select, textarea,
.elementor, .elementor * {
  font-family: 'Metropolis', sans-serif !important;
}

/* REMOÇÃO COMPLETA DO FILTRO DE BOLINHAS / OVERLAY GLOBAL NO SITE (body::after) */
body::after,
html body::after,
.elementor-page-8470::after {
  display: none !important;
  content: none !important;
  background: none !important;
  background-image: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
}

/* ==========================================================================
   SISTEMA DE PALETA MULTI-TONAL DE VERDES
   ========================================================================== */

/* 1. GRADIENTE MULTI-TOM EM TÍTULOS DE DESTAQUE (.destaque em Times New Roman) */
.destaque,
span.destaque,
h1 .destaque,
h2 .destaque,
h3 .destaque,
h4 .destaque,
.elementor-image-box-title .destaque,
.elementor-heading-title .destaque {
  font-family: 'Times New Roman', Times, serif !important;
  font-style: italic !important;
  background: linear-gradient(89deg, #065F46 -20%, #34D399 50%, #047857 120%) !important;
  background-clip: text !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

h1 .destaque,
h1.elementor-image-box-title .destaque {
  font-size: 51px !important;
}

/* OCULTAR IMAGEM "NEGÓCIO FECHADO" ACIMA DO TÍTULO HERO */
.elementor-element-3cd2d51 .elementor-image-box-img {
  display: none !important;
}

/* OCULTAR CURSOR ANIMADO DA SEÇÃO HERO (.selecao::before) */
.selecao::before,
span.selecao::before {
  display: none !important;
  content: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  animation: none !important;
}

/* CENTRALIZAÇÃO VERTICAL EXACTA E BALANCEADA DA SEÇÃO HERO (.elementor-element-49cd9e6) */
html body .elementor-element.elementor-element-c846d49 > .e-con-inner,
html body .elementor-8470 .elementor-element.elementor-element-c846d49 > .e-con-inner {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
}

html body .elementor-element.elementor-element-49cd9e6,
html body .elementor-8470 .elementor-element.elementor-element-49cd9e6 {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-self: center !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: translateY(-45px) !important;
}

/* 2. BACKGROUND DAS SEÇÕES "PORTFÓLIO", "OFERTA" E "RODAPÉ" EM PRETO ABSOLUTO (#0A0A0A) SEM LINHAS */
.elementor-element.elementor-element-243fff6,
.elementor-8470 .elementor-element.elementor-element-243fff6,
.elementor-element.elementor-element-5154194,
.elementor-8470 .elementor-element.elementor-element-5154194,
.elementor-element.oferta,
.elementor-element.elementor-element-3c06095,
.elementor-8470 .elementor-element.elementor-element-3c06095,
.elementor-element.rodape,
.elementor-element-243fff6::before,
.elementor-element-243fff6::after,
.elementor-element-5154194::before,
.elementor-element-5154194::after,
.elementor-element-3c06095::before,
.elementor-element-3c06095::after,
.oferta::before,
.oferta::after,
.rodape::before,
.rodape::after {
  background-image: none !important;
  background-color: #0A0A0A !important;
  background: #0A0A0A !important;
}

/* 3. SEÇÃO "OS BÔNUS" (.elementor-element-6cfc5c5) - FUNDO BRANCO E TEXTO ESCURO */
.elementor-element.elementor-element-6cfc5c5,
.elementor-8470 .elementor-element.elementor-element-6cfc5c5,
.elementor-element-6cfc5c5::before,
.elementor-element-6cfc5c5::after {
  background-image: none !important;
  background-color: #FFFFFF !important;
  background: #FFFFFF !important;
}

.elementor-element.elementor-element-6cfc5c5 .elementor-heading-title,
.elementor-element.elementor-element-6cfc5c5 h2,
.elementor-element.elementor-element-6cfc5c5 h2.elementor-heading-title {
  color: #0F172A !important;
}

.elementor-element.elementor-element-82417f1,
.elementor-element-82417f1.bonus-container {
  background: #F8FAFC !important;
  background-color: #F8FAFC !important;
  background-image: none !important;
  border-radius: 32px !important;
  padding: 40px 24px !important;
  border: 1px solid #E2E8F0 !important;
}

/* 4. SEPARAÇÃO RESPONSIVA DAS ABAS DE PORTFÓLIO (EXCLUSIVAMENTE .elementor-element-57f340c) */

.elementor-element-57f340c .e-n-tabs-content,
.conteudo {
  width: 100% !important;
  max-width: 1000px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

.conteudo .elementor-widget-container {
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

/* DESKTOP (> 1024PX): GRID DE 2 COLUNAS LADO A LADO E BARRA DE ABAS PORTFÓLIO COM LEFT 35% */
@media (min-width: 1025px) {
  .elementor-8470 .elementor-element.elementor-element-57f340c .e-n-tabs-heading,
  .elementor-element-57f340c .e-n-tabs-heading {
    position: relative !important;
    left: 35% !important;
    transform: translateX(-50%) !important;
    width: 907px !important;
    max-width: 907px !important;
    margin: 0 auto 24px auto !important;
    gap: 0 !important;
    border-radius: 100px !important;
    flex-wrap: nowrap !important;
  }

  .portfolio-slider-wrapper {
    position: relative !important;
    width: 100% !important;
    max-width: 1000px !important;
    margin: 0 auto !important;
  }

  .portfolio-arrow {
    display: none !important; /* Sem setas no desktop */
  }

  .portfolio-grid {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 28px !important;
    width: 100% !important;
    padding: 20px 0 !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  .portfolio-card {
    width: 100% !important;
    max-width: 100% !important;
    flex: none !important;
    background: #FFFFFF !important;
    border: 1px solid #E2E8F0 !important;
    border-radius: 20px !important;
    overflow: hidden !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08) !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease !important;
    display: flex !important;
    flex-direction: column !important;
    text-align: left !important;
  }

  .portfolio-img-wrapper {
    height: 220px !important;
  }

  .portfolio-content {
    padding: 28px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
  }

  .portfolio-tag {
    margin-bottom: 2px !important;
  }

  .portfolio-title {
    font-size: 1.28rem !important;
    line-height: 1.4 !important;
    margin-top: 2px !important;
    margin-bottom: 4px !important;
  }

  .portfolio-desc {
    font-size: 0.92rem !important;
    line-height: 1.65 !important;
    margin-top: 2px !important;
    margin-bottom: 6px !important;
  }

  .portfolio-pills {
    gap: 10px !important;
    margin-top: 6px !important;
    margin-bottom: 8px !important;
  }

  .portfolio-link {
    margin-top: 10px !important;
  }
}

/* MOBILE E TABLETS (<= 1024PX): SLIDER DE 1 CARD COM SETAS COMPACTAS E DESLIZE TOUCH */
@media (max-width: 1024px) {
  .portfolio-slider-wrapper {
    position: relative !important;
    width: 100% !important;
    margin: 0 auto !important;
  }

  .portfolio-arrow {
    display: flex !important;
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 32px !important;
    height: 32px !important;
    border-radius: 50% !important;
    background-color: #FFFFFF !important;
    background: #FFFFFF !important;
    border: 1px solid #E2E8F0 !important;
    color: #059669 !important;
    font-size: 1.1rem !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
    z-index: 30 !important;
    transition: all 0.25s ease !important;
  }

  .portfolio-arrow-prev {
    left: 4px !important;
  }

  .portfolio-arrow-next {
    right: 4px !important;
  }

  .portfolio-grid {
    display: flex !important;
    flex-direction: row !important;
    gap: 0 !important;
    width: 100% !important;
    padding: 10px 0 !important;
    box-sizing: border-box !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    scroll-behavior: smooth !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
  }

  .portfolio-grid::-webkit-scrollbar {
    display: none !important;
  }

  .portfolio-card {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    scroll-snap-align: center !important;
    scroll-snap-stop: always !important;
    background: #FFFFFF !important;
    border: 1px solid #E2E8F0 !important;
    border-radius: 20px !important;
    overflow: hidden !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08) !important;
    display: flex !important;
    flex-direction: column !important;
    text-align: left !important;
    box-sizing: border-box !important;
  }

  .portfolio-img-wrapper {
    height: 200px !important;
  }

  .portfolio-content {
    padding: 22px 20px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
  }

  .portfolio-tag {
    margin-bottom: 2px !important;
  }

  .portfolio-title {
    font-size: 1.15rem !important;
    line-height: 1.38 !important;
    margin-top: 2px !important;
    margin-bottom: 2px !important;
  }

  .portfolio-desc {
    font-size: 0.88rem !important;
    line-height: 1.6 !important;
    margin-top: 2px !important;
    margin-bottom: 4px !important;
  }

  .portfolio-pills {
    gap: 8px !important;
    margin-top: 4px !important;
    margin-bottom: 6px !important;
  }

  .portfolio-link {
    margin-top: 8px !important;
  }
}

.portfolio-card:hover {
  box-shadow: 0 20px 45px rgba(16, 185, 129, 0.18) !important;
  border-color: #10B981 !important;
}

.portfolio-img-wrapper img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  transition: transform 0.4s ease !important;
}

.portfolio-card:hover .portfolio-img-wrapper img {
  transform: scale(1.03) !important;
}

.portfolio-tag {
  align-self: flex-start !important;
  background-color: #D1FAE5 !important;
  color: #059669 !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  padding: 5px 14px !important;
  border-radius: 100px !important;
  border: 1px solid #A7F3D0 !important;
  text-transform: uppercase !important;
}

.portfolio-title {
  font-weight: 700 !important;
  color: #0F172A !important;
}

.portfolio-desc {
  color: #475569 !important;
}

.portfolio-pills {
  display: flex !important;
  flex-wrap: wrap !important;
}

.portfolio-pill {
  background: #F1F5F9 !important;
  color: #334155 !important;
  font-size: 0.76rem !important;
  font-weight: 600 !important;
  padding: 5px 12px !important;
  border-radius: 8px !important;
  border: 1px solid #E2E8F0 !important;
}

.portfolio-link {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  color: #10B981 !important;
  font-weight: 700 !important;
  font-size: 0.92rem !important;
  text-decoration: none !important;
  transition: gap 0.2s ease !important;
}

.portfolio-card:hover .portfolio-link {
  gap: 10px !important;
}

/* 2. ELEMENTO DE SELEÇÃO ("web designers") NA SEÇÃO HERO - BORDA E CANTONEIRAS EM VERDE */
.selecao,
span.selecao {
  border: 2px solid #10B981 !important;
}

.quadrado,
.selecao .quadrado,
span.quadrado {
  border-color: #10B981 !important;
  background-color: #10B981 !important;
}

/* 3. BORDA DO CONTAINER .elementor-element-d7512bb EM VERDE ESMERALDA */
.elementor-element.elementor-element-d7512bb > .elementor-widget-container,
.elementor-8470 .elementor-element.elementor-element-d7512bb > .elementor-widget-container {
  border-color: #10B981 !important;
}

/* 4. BACKGROUND E OVERLAY ESCURO COM BLUR PARA A SEÇÃO .elementor-element-26da95a ("SOA FAMILIAR?") */
.elementor-element.elementor-element-26da95a,
.elementor-8470 .elementor-element.elementor-element-26da95a {
  position: relative !important;
  background-image: url('/images/bg-secao-familiar-green.png') !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  background-color: #000000 !important;
  overflow: hidden !important;
}

.elementor-element.elementor-element-26da95a::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  background: rgba(0, 0, 0, 0.45) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

.elementor-element.elementor-element-26da95a > .e-con-inner,
.elementor-element.elementor-element-26da95a > .elementor-widget-container,
.elementor-element.elementor-element-26da95a > * {
  position: relative !important;
  z-index: 2 !important;
}

/* 6. CORREÇÃO DO RÓTULO "PORTFÓLIO DE SERVIÇOS" (.elementor-element-14f4878) - FONTE REFINADA (0.75rem) */
.elementor-element-14f4878,
.elementor-element-14f4878 .elementor-widget-container,
.elementor-element-14f4878 .elementor-icon-list-items {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 auto !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
}

.elementor-element-14f4878 *::before,
.elementor-element-14f4878 *::after {
  display: none !important;
  content: none !important;
}

.elementor-element-14f4878 .elementor-icon-list-item {
  background-color: #FFFFFF !important;
  background: #FFFFFF !important;
  border-radius: 100px !important;
  border: 1px solid #E2E8F0 !important;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.12) !important;
  padding: 8px 20px !important;
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  margin: 0 auto !important;
}

.elementor-element-14f4878 .elementor-icon-list-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
}

.elementor-element-14f4878 .elementor-icon-list-icon svg {
  width: 20px !important;
  height: 20px !important;
  display: block !important;
  margin: 0 !important;
}

.elementor-element-14f4878 .elementor-icon-list-icon svg path,
.elementor-element-14f4878 svg path {
  stroke: #059669 !important;
  fill: none !important;
}

.elementor-element-14f4878 .elementor-icon-list-text {
  color: #059669 !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  font-size: 0.75rem !important;
  line-height: 1 !important;
  margin: 0 !important;
  padding: 0 !important;
  display: inline-block !important;
  position: relative !important;
  top: 1px !important;
}

/* 7. ESTILIZAÇÃO RESPONSIVA DAS ABAS DE PORTFÓLIO (EXCLUSIVAMENTE .elementor-element-57f340c) */

.elementor-element-57f340c,
.elementor-element-57f340c > .elementor-widget-container,
.elementor-element-57f340c .e-n-tabs {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* ESTILO DESKTOP (> 1024PX): BARRA ÚNICA CONTINUA PARA O PORTFÓLIO */
@media (min-width: 1025px) {
  .elementor-element-57f340c .e-n-tabs-heading {
    position: relative !important;
    left: 35% !important;
    transform: translateX(-50%) !important;
    width: 907px !important;
    max-width: 907px !important;
    margin: 0 auto 24px auto !important;
    gap: 0 !important;
    border-radius: 100px !important;
    flex-wrap: nowrap !important;
    background-color: #FFFFFF !important;
    background: #FFFFFF !important;
    border: 2px solid #E2E8F0 !important;
    padding: 6px !important;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15) !important;
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    box-sizing: border-box !important;
  }

  .elementor-element-57f340c .e-n-tabs-heading::before {
    display: block !important;
    content: "" !important;
    background-color: #10B981 !important;
    background-image: linear-gradient(93deg, #047857 0%, #10B981 100%) !important;
    background: linear-gradient(93deg, #047857 0%, #10B981 100%) !important;
    border-radius: 100px !important;
    box-shadow: 0 4px 15px rgba(16, 185, 129, 0.35) !important;
    z-index: 1 !important;
  }

  .elementor-element-57f340c .e-n-tab-title {
    position: relative !important;
    z-index: 2 !important;
    background-color: transparent !important;
    background-image: none !important;
    background: transparent !important;
    border-radius: 100px !important;
    border: none !important;
    box-shadow: none !important;
    padding: 12px 6px !important;
    margin: 0 !important;
    flex: 1 1 0px !important;
    width: 20% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    box-sizing: border-box !important;
    transition: all 0.3s ease !important;
  }

  .elementor-element-57f340c .e-n-tab-title .e-n-tab-title-text {
    position: relative !important;
    z-index: 3 !important;
    color: #334155 !important;
    -webkit-text-fill-color: #334155 !important;
    font-weight: 700 !important;
    font-size: 0.78rem !important;
    letter-spacing: 0.02em !important;
    white-space: nowrap !important;
  }

  .elementor-element-57f340c .e-n-tab-title[aria-selected="true"] .e-n-tab-title-text {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    font-weight: 700 !important;
  }
}

/* ESTILO MOBILE (<= 1024PX): GRID DE CARDS PARA O PORTFÓLIO */
@media (max-width: 1024px) {
  .elementor-element-57f340c .e-n-tabs-heading::before {
    display: none !important;
    content: none !important;
  }

  .elementor-element-57f340c .e-n-tabs-heading {
    position: static !important;
    left: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: 540px !important;
    margin: 0 auto 20px auto !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 12px !important;
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
    box-sizing: border-box !important;
  }

  .elementor-element-57f340c .e-n-tab-title {
    width: 100% !important;
    flex: none !important;
    background-color: #FFFFFF !important;
    background: #FFFFFF !important;
    border: 1px solid #E2E8F0 !important;
    border-radius: 14px !important;
    padding: 16px 8px !important;
    margin: 0 !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }

  .elementor-element-57f340c .e-n-tab-title:nth-child(5) {
    grid-column: 1 / -1 !important;
    max-width: 60% !important;
    margin: 0 auto !important;
  }

  .elementor-element-57f340c .e-n-tab-title[aria-selected="true"] {
    background: #10B981 !important;
    background-image: linear-gradient(93deg, #047857 0%, #10B981 100%) !important;
    border-color: #047857 !important;
    border-radius: 14px !important;
    box-shadow: 0 8px 20px rgba(16, 185, 129, 0.4) !important;
  }

  .elementor-element-57f340c .e-n-tab-title .e-n-tab-title-text {
    color: #334155 !important;
    -webkit-text-fill-color: #334155 !important;
    font-size: 0.8rem !important;
    font-weight: 700 !important;
  }

  .elementor-element-57f340c .e-n-tab-title[aria-selected="true"] .e-n-tab-title-text {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    font-weight: 700 !important;
  }
}

/* ==========================================================================
   RESTAURAÇÃO EXCLUÍDA E EXACTA DAS ABAS DO FAQ (.elementor-element-06c8e0e): POSICIONAMENTO À ESQUERDA E VERDE ESMERALDA
   ========================================================================== */
.elementor-element-06c8e0e .e-n-tabs-heading {
  position: static !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 auto 20px 0 !important;
  background: #FFFFFF !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 100px !important;
  padding: 4px !important;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05) !important;
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 4px !important;
}

.elementor-element-06c8e0e .e-n-tabs-heading::before {
  display: none !important;
  content: none !important;
}

.elementor-element-06c8e0e .e-n-tab-title {
  position: relative !important;
  background: transparent !important;
  border: none !important;
  border-radius: 100px !important;
  padding: 8px 18px !important;
  font-size: 0.78rem !important;
  font-weight: 700 !important;
  color: #7E92AF !important;
  box-shadow: none !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
}

.elementor-element-06c8e0e .e-n-tab-title .e-n-tab-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.elementor-element-06c8e0e .e-n-tab-title .e-n-tab-icon svg path,
.elementor-element-06c8e0e .e-n-tab-title .e-n-tab-icon svg circle {
  stroke: #7E92AF !important;
  transition: stroke 0.25s ease !important;
}

.elementor-element-06c8e0e .e-n-tab-title .e-n-tab-title-text {
  color: #7E92AF !important;
  -webkit-text-fill-color: #7E92AF !important;
  font-size: 0.78rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  transition: color 0.25s ease !important;
}

/* ABA ATIVA (SELECIONADA) DO FAQ: FUNDO VERDE CLARINHO, TEXTO VERDE E ÍCONE VERDE */
.elementor-element-06c8e0e .e-n-tab-title[aria-selected="true"] {
  background: #D1FAE5 !important;
  border: none !important;
  border-radius: 100px !important;
  box-shadow: none !important;
}

.elementor-element-06c8e0e .e-n-tab-title[aria-selected="true"] .e-n-tab-title-text {
  color: #059669 !important;
  -webkit-text-fill-color: #059669 !important;
  font-weight: 700 !important;
}

.elementor-element-06c8e0e .e-n-tab-title[aria-selected="true"] .e-n-tab-icon svg path,
.elementor-element-06c8e0e .e-n-tab-title[aria-selected="true"] .e-n-tab-icon svg circle {
  stroke: #059669 !important;
}

/* Organização Vertical do Rótulo ACIMA do Título */
.container-modulo {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
}

.container-modulo .tag,
.conteudo .container-modulo .tag {
  display: inline-block !important;
  margin-bottom: 14px !important;
  margin-right: 0 !important;
  background-color: #D1FAE5 !important;
  color: #059669 !important;
  padding: 4px 12px !important;
  border-radius: 100px !important;
  border: 1px solid #A7F3D0 !important;
}

.container-modulo .modulo,
.conteudo .container-modulo .modulo {
  display: block !important;
  color: #0E0F10 !important;
  font-weight: 700 !important;
}

.container-aulas ul li {
  color: #1F2937 !important;
}

.container-aulas ul li::marker {
  color: #10B981 !important;
}

.conteudo .quadrado,
.conteudo span.quadrado {
  border-color: #10B981 !important;
  background-color: #10B981 !important;
}

/* 8. TEXTOS DE BADGES, TAGS E TOPOS */
.tag,
span.tag,
.elementor-icon-list-text,
.elementor-icon-list-item > .elementor-icon-list-text,
.elementor-icon-list-item > a,
.elementor-element-c50dc3a .elementor-icon-list-text,
.elementor-element-e35b3f9 .elementor-icon-list-text {
  color: #34D399 !important;
}

/* 9. SUBTÍTULOS E CARGOS */
.elementor-testimonial-job,
.elementor-testimonial-name span,
.elementor-widget-testimonial .elementor-testimonial-job,
.elementor-icon-box-title,
.elementor-icon-box-title a,
.elementor-widget-icon-box .elementor-icon-box-title,
.elementor-widget-icon-box .elementor-icon-box-title a,
.elementor-widget-heading .elementor-heading-title a {
  color: #10B981 !important;
}

/* 10. SEÇÃO "SOA FAMILIAR?" - Borda da Caixa e Tag */
.elementor-element-6e90bd5 .tag,
.soa-familiar .tag {
  color: #34D399 !important;
}

/* 11. SEÇÃO DE BÔNUS */
.bonus .tag,
.elementor-element-f2a7b6a .tag,
.elementor-element-a548bbd .tag,
[class*="bonus"] .tag {
  background-color: #D1FAE5 !important;
  color: #059669 !important;
  border: 1px solid #A7F3D0 !important;
  border-radius: 100px !important;
  padding: 4px 12px !important;
  display: inline-block !important;
}

.bonus .elementor-image-box-title,
.bonus h3.elementor-image-box-title,
[class*="bonus"] .elementor-image-box-title {
  color: #047857 !important;
}

.bonus .elementor-image-box-description b,
.bonus p b,
[class*="bonus"] b {
  color: #059669 !important;
}

/* 12. SEÇÃO DE OFERTA E PREÇO */
.preco-antigo,
.de-preco,
del, s, strike {
  color: #6EE7B7 !important;
}

.preco-par,
span.preco-par {
  color: #10B981 !important;
  font-weight: 700 !important;
}

.preco-avista,
.elementor-widget-heading b {
  color: #047857 !important;
}

/* 13. SEÇÃO DE FAQ & CONTATOS: COMPORTAMENTO DOS TÍTULOS DO ACCORDION */

/* CARDS DE WHATSAPP E EMAIL */
.elementor-element-57394e2 .elementor-image-box-title b,
.elementor-element-0fa8d0e .elementor-image-box-title b,
.elementor-element-0fa8d0e .elementor-image-box-description b,
.whatsapp .elementor-image-box-title b,
.email .elementor-image-box-title b,
.email .elementor-image-box-description b,
.whatsapp b,
.email b,
.email a {
  color: #059669 !important;
  -webkit-text-fill-color: #059669 !important;
}

/* ESTADO NORMAL (FECHADO E SEM HOVER): COR PRETA/ESCURA PADRÃO DO SITE (#1E293B) */
.e-n-accordion-item-title,
.e-n-accordion-item-title-text,
details.e-n-accordion-item > summary .e-n-accordion-item-title-text {
  color: #1E293B !important;
  -webkit-text-fill-color: #1E293B !important;
  transition: color 0.25s ease !important;
}

.e-n-accordion-item-title-icon,
.e-n-accordion-item-title-icon svg,
.e-n-accordion-item-title-icon svg path,
.e-n-accordion-item-title-icon svg line,
.e-n-accordion-icon,
.e-n-accordion-icon-svg,
details.e-n-accordion-item summary svg,
details.e-n-accordion-item summary svg path {
  color: #7E92AF !important;
  stroke: #7E92AF !important;
  fill: none !important;
  transition: stroke 0.25s ease, color 0.25s ease !important;
}

/* ESTADO HOVER: TEXTO E ÍCONE FICAM VERDE (#059669) */
details.e-n-accordion-item > summary:hover .e-n-accordion-item-title-text,
.e-n-accordion-item-title:hover,
.e-n-accordion-item-title:hover .e-n-accordion-item-title-text {
  color: #059669 !important;
  -webkit-text-fill-color: #059669 !important;
}

details.e-n-accordion-item > summary:hover svg path,
.e-n-accordion-item-title:hover .e-n-accordion-item-title-icon svg path {
  stroke: #059669 !important;
  color: #059669 !important;
}

/* ESTADO CLICADO (ABERTO / details[open]): TEXTO E ÍCONE FICAM VERDE (#059669) */
details.e-n-accordion-item[open] > summary .e-n-accordion-item-title-text,
.e-n-accordion-item[open] .e-n-accordion-item-title-text,
.e-n-accordion-item[open] .e-n-accordion-item-title {
  color: #059669 !important;
  -webkit-text-fill-color: #059669 !important;
}

details.e-n-accordion-item[open] > summary svg path,
.e-n-accordion-item[open] .e-n-accordion-item-title-icon svg path {
  stroke: #059669 !important;
  color: #059669 !important;
}

/* 14. MAPEAMENTO DE ÍCONES SVG */
.elementor-icon-list-icon svg path[stroke="#80B4FF"],
.elementor-icon-list-icon svg path[stroke="#BBD6FB"],
svg path[stroke="#80B4FF"],
svg path[stroke="#BBD6FB"] {
  stroke: #4ADE80 !important;
  fill: none !important;
}

.elementor-icon-list-icon svg path[stroke="#7E92AF"],
.elementor-icon-list-icon svg path[stroke="#5E99ED"],
.elementor-widget-icon-box .elementor-icon svg path[stroke="#7E92AF"],
svg path[stroke="#7E92AF"],
svg path[stroke="#5E99ED"] {
  stroke: #34D399 !important;
  fill: none !important;
}

.elementor-icon-list-icon svg path,
.elementor-widget-icon-box .elementor-icon svg path,
.elementor-icon svg path {
  stroke: #34D399 !important;
}

.elementor-icon-list-icon svg[fill="none"] path,
.elementor-widget-icon-box .elementor-icon svg[fill="none"] path,
.elementor-icon svg[fill="none"] path,
svg path[stroke] {
  fill: none !important;
}

.elementor-icon-list-icon svg:not([fill="none"]) path:not([stroke]),
.elementor-widget-icon-box .elementor-icon svg:not([fill="none"]) path:not([stroke]) {
  fill: #10B981 !important;
}

.elementor-icon-list-icon i,
.elementor-widget-icon-box .elementor-icon i {
  color: #34D399 !important;
}

/* 15. TEXTO EM CURVA NO SELO DOS 6 PILARES */
.pilares svg path[fill="#80B4FF"],
.pilares svg g#textos-internos path,
.pilares svg g#textos-externos path {
  fill: #34D399 !important;
}

/* 16. ROSETA DOS 6 PILARES (Círculo Perfeito) */
.elementor-element-51d63b2,
.pilares {
  align-self: center !important;
  flex-shrink: 0 !important;
  width: min(328px, 90vw) !important;
  height: min(328px, 90vw) !important;
  aspect-ratio: 1 / 1 !important;
  margin: 0 auto !important;
}

.pilares .elementor-widget-container,
.pilares .elementor-icon-wrapper,
.pilares .elementor-icon {
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: 1 / 1 !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
}

.pilares svg {
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: 328 / 327 !important;
  object-fit: contain !important;
}

/* 17. BOTÕES PRINCIPAIS EM DEGRADÊ VERDE MULTI-TOM */
.botao .elementor-button {
  box-shadow: 0 -3px 0 #064E3B inset, 0 8px 20px rgba(4, 120, 87, 0.22) !important;
}

.botao .elementor-button:hover {
  box-shadow: 0 -3px 0 #064E3B inset, 0 10px 24px rgba(4, 120, 87, 0.28) !important;
}

.botao .elementor-button::before,
.elementor-button::before,
.elementor-widget-button .elementor-button::before {
  background: linear-gradient(93deg, #047857 0.98%, #10B981 50.31%, #047857 99.64%) !important;
  border-top: 2px solid #4ADE80 !important;
  box-shadow: 0px -3px 0px 0px #064E3B inset, 0 4px 15px rgba(16, 185, 129, 0.4) !important;
}

.botao .elementor-button::after,
.elementor-button::after,
.elementor-widget-button .elementor-button::after {
  background: linear-gradient(93deg, #065F46 0%, #34D399 50%, #065F46 100%) !important;
  border-top: 2px solid #86EFAC !important;
  box-shadow: 0px -3px 0px 0px #064E3B inset, 0 8px 25px rgba(16, 185, 129, 0.5) !important;
}

html body .elementor-button,
html body .elementor-button-link,
html body a.elementor-button,
html body .elementor-widget-button .elementor-button,
html body .elementor-widget-button a,
html body .botao .elementor-button,
html body .botao a,
html body a[href*="hotmart.com"]:not(.rodape a):not(.elementor-element-5575e76 a) {
  background-color: #10B981 !important;
  background-image: linear-gradient(93deg, #047857 0.98%, #10B981 50.31%, #047857 99.64%) !important;
  color: #FFFFFF !important;
  border-color: #047857 !important;
}

html body .elementor-button .elementor-button-icon i,
html body .elementor-button .elementor-button-icon svg,
html body .elementor-button svg,
html body .elementor-button svg path {
  color: #FFFFFF !important;
  fill: #FFFFFF !important;
  stroke: #FFFFFF !important;
}

html body .elementor-button-text,
html body .elementor-button .elementor-button-text {
  color: #FFFFFF !important;
}

/* 18. EXCEÇÃO EXCLUSIVA 'INSCREVA-SE' NO RODAPÉ */
html body .rodape .elementor-heading-title,
html body .rodape .elementor-heading-title a,
html body .elementor-element-3c06095 .elementor-heading-title a,
html body .elementor-element-5575e76 .elementor-heading-title a,
html body .elementor-element-5575e76 a {
  font-family: 'Takota', sans-serif !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  border: none !important;
  box-shadow: none !important;
}

html body .rodape .elementor-heading-title a::before,
html body .rodape .elementor-heading-title a::after,
html body .elementor-element-5575e76 a::before,
html body .elementor-element-5575e76 a::after {
  display: none !important;
  background: transparent !important;
}

html body .rodape .elementor-heading-title a:hover,
html body .elementor-element-5575e76 a:hover {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  color: #E2E8F0 !important;
  -webkit-text-fill-color: #E2E8F0 !important;
  box-shadow: none !important;
  transform: none !important;
}

/* 19. CABEÇALHO FIXO DE 1200PX NO TOPO DA TELA COM ANIMAÇÃO SUAVE AO ROLAR (.barra / .elementor-element-5da872f) */
html body .elementor-element.elementor-element-5da872f,
html body .elementor-8470 .elementor-element.elementor-element-5da872f,
html body .barra {
  position: fixed !important;
  top: 20px !important;
  bottom: auto !important;
  left: 50% !important;
  right: auto !important;
  transform: translate(-50%, -40px) !important;
  width: min(1200px, 95vw) !important;
  max-width: 1200px !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  padding: 10px 32px !important;
  box-sizing: border-box !important;
  border-radius: 100px !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  z-index: 99999 !important;
  box-shadow: 0px -3px 0px 0px #C7D4EB inset, 
              0px 10px 35px 0px rgba(16, 185, 129, 0.25), 
              0px 20px 45px 0px rgba(4, 120, 87, 0.15) !important;
  transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.35s ease-in-out, visibility 0.35s ease-in-out !important;
}

html body .elementor-element.elementor-element-5da872f.show,
html body .elementor-8470 .elementor-element.elementor-element-5da872f.show,
html body .barra.show {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translate(-50%, 0) !important;
}

/* LOGO DO CABEÇALHO (ARGEN) */
.header-logo-img,
.elementor-element-7a80eea img {
  height: 30px !important;
  width: auto !important;
  display: block !important;
  object-fit: contain !important;
}

/* MENU CENTRAL DO CABEÇALHO */
.header-nav-menu {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 28px !important;
  margin: 0 auto !important;
}

.header-nav-menu a {
  font-family: 'Metropolis', sans-serif !important;
  font-size: 0.9rem !important;
  font-weight: 600 !important;
  color: #1E293B !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
  white-space: nowrap !important;
}

.header-nav-menu a:hover {
  color: #10B981 !important;
}

/* AJUSTE DO BOTÃO DO CABEÇALHO (.elementor-element-b7e025e) */
.page-header-top .elementor-button,
.barra .elementor-button,
.elementor-element-b7e025e .elementor-button,
.elementor-element-b7e025e a.elementor-button {
  padding: 14px 32px !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  min-height: unset !important;
}

/* ESTILO DO CABEÇALHO SUPERIOR DA PÁGINA (ESTÁTICO NO TOPO) */
.page-header-top {
  width: 100% !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  padding: 24px 0 10px 0 !important;
  box-sizing: border-box !important;
  position: relative !important;
  z-index: 100 !important;
}

.page-header-top-inner {
  width: min(1200px, 95vw) !important;
  max-width: 1200px !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  padding: 0 16px !important;
  box-sizing: border-box !important;
}

@media (max-width: 1024px) {
  .header-nav-menu {
    gap: 16px !important;
  }
  .header-nav-menu a {
    font-size: 0.82rem !important;
  }
}

@media (max-width: 767px) {
  html body .elementor-element.elementor-element-5da872f,
  html body .elementor-8470 .elementor-element.elementor-element-5da872f,
  html body .barra {
    top: 12px !important;
    width: 94vw !important;
    padding: 12px 18px !important;
    min-height: 62px !important;
    height: auto !important;
  }
  .header-logo-img,
  .elementor-element-7a80eea img {
    height: 30px !important;
  }
  .mobile-hamburger-btn {
    width: 40px !important;
    height: 40px !important;
    margin-right: 8px !important;
  }
  .mobile-hamburger-btn svg {
    width: 26px !important;
    height: 26px !important;
  }
  .header-nav-menu {
    display: none !important;
  }
  .page-header-top {
    padding: 14px 0 4px 0 !important;
  }
  html body .elementor-element.elementor-element-49cd9e6,
  html body .elementor-8470 .elementor-element.elementor-element-49cd9e6 {
    transform: none !important;
  }
}

/* 20. ESPAÇAMENTO SUPERIOR DA SEÇÃO HERO (.elementor-element-c846d49) */
.elementor-element.elementor-element-c846d49,
.elementor-8470 .elementor-element.elementor-element-c846d49 {
  margin-top: 1rem !important;
}

@media (max-width: 767px) {
  .elementor-element.elementor-element-c846d49,
  .elementor-8470 .elementor-element.elementor-element-c846d49 {
    margin-top: 0.5rem !important;
  }
}

/* ALINHAMENTO VERTICAL DA IMAGEM DO HERO COM O BLOCO DE TEXTO */
@media (min-width: 1025px) {
  html body .elementor-element.elementor-element-c846d49 > .e-con-inner,
  html body .elementor-8470 .elementor-element.elementor-element-c846d49 > .e-con-inner {
    transform: translateY(-40px) !important;
  }

  .elementor-element.elementor-element-b3615ec,
  .elementor-8470 .elementor-element.elementor-element-b3615ec {
    transform: translateY(-70px) !important;
  }
}


/* 21. MENU HAMBÚRGUER E MENU LATERAL OFF-CANVAS (MOBILE) */
.elementor-element-e61329d h2:not(.argen-growth-title) {
  display: none !important;
}

/* OCULTA REFERÊNCIAS VISUAIS DO CONTEÚDO ANTIGO ATÉ A TROCA DAS IMAGENS */
.elementor-testimonial-image,
.elementor-element-a358488,
.elementor-element-2d05394,
.elementor-element-51d63b2 {
  display: none !important;
}

.elementor-element-d79d8a8 img {
  content: url('/images/logo-argen.png') !important;
  width: 180px !important;
  height: auto !important;
  object-fit: contain !important;
}

/* REMOVE A ANTIGA LOGO ANIMADA DO RODAPÉ */
.elementor-element-0a4c355 {
  display: none !important;
}

/* REMOVE O BLOCO VAZIO DA ANTIGA IMAGEM ANTES DA SEÇÃO QUEM SOMOS */
.elementor-element-a431dc7,
.elementor-element-8e80d65 {
  display: none !important;
}

/* A BIO SOBREPOUNHA A ANTIGA IMAGEM; AGORA VOLTA AO FLUXO NORMAL */
.elementor-element-d3d9bd6 {
  margin-top: 0 !important;
  translate: none !important;
  transform: none !important;
}

/* QUEM SOMOS — MOSAICO INSTITUCIONAL NO FORMATO ORIGINAL */
.elementor-element-0eb56ba img {
  content: url('/images/quem-somos-mosaico-argen-v2.png') !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 701 / 542 !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
  border-radius: 18px !important;
}

.elementor-element-0eb56ba .elementor-widget-container {
  border-radius: 18px !important;
  overflow: hidden !important;
}

/* QUEM SOMOS — PROPORÇÃO EQUILIBRADA ENTRE IMAGEM E TEXTO */
@media (min-width: 1025px) {
  .elementor-element-d3d9bd6 {
    --min-height: auto !important;
    --padding-top: 6rem !important;
    min-height: auto !important;
  }

  .elementor-element-d3d9bd6 > .e-con-inner {
    display: grid !important;
    grid-template-columns: minmax(0, 54%) minmax(0, 1fr) !important;
    column-gap: clamp(48px, 4vw, 68px) !important;
    align-items: center !important;
  }

  .elementor-element-0eb56ba,
  .elementor-element-2fd1f62 {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }
}

/* VISUAL DA JORNADA INTEGRADA: AQUISIÇÃO, CONVERSÃO E OPERAÇÃO */
.elementor-element-fd4e217 img {
  content: url('/images/crescimento-integrado-argen-v1.png') !important;
  width: 100% !important;
  max-width: 620px !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center !important;
}

/* FUNDO DA INFRAESTRUTURA DE CRESCIMENTO */
.elementor-element-b926ab7 img {
  content: url('/images/fundo-infraestrutura-crescimento-v3.png') !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}

/* DIFERENCIAIS — IMAGENS COERENTES COM CADA ETAPA */
.elementor-element-f2a7b6a .elementor-image-box-img img {
  content: url('/images/diferencial-diagnostico-estrategico-v1.png') !important;
}

.elementor-element-f993485 .elementor-image-box-img img {
  content: url('/images/diferencial-mensuracao-integracoes-v1.png') !important;
}

.elementor-element-c0c2a59 .elementor-image-box-img img {
  content: url('/images/diferencial-implantacao-assistida-v1.png') !important;
}

.elementor-element-f2a7b6a .elementor-image-box-img img,
.elementor-element-f993485 .elementor-image-box-img img,
.elementor-element-c0c2a59 .elementor-image-box-img img {
  width: 100% !important;
  aspect-ratio: 356 / 213 !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
  border-radius: 16px !important;
}

.elementor-element-f2a7b6a .elementor-image-box-img,
.elementor-element-f993485 .elementor-image-box-img,
.elementor-element-c0c2a59 .elementor-image-box-img {
  border-radius: 16px !important;
  overflow: hidden !important;
}

.bonus .tag-bonus {
  color: #047857 !important;
  background: #D1FAE5 !important;
  border: 1px solid #A7F3D0 !important;
}

.bonus h3.elementor-image-box-title,
.elementor-element-f2a7b6a h3.elementor-image-box-title,
.elementor-element-f993485 h3.elementor-image-box-title,
.elementor-element-c0c2a59 h3.elementor-image-box-title {
  color: #111827 !important;
}

/* FAQ — EXIBE DIRETAMENTE O CONTEÚDO EM TEXTO */
.elementor-element-06c8e0e .e-n-tabs-heading {
  display: none !important;
}

.elementor-element-06c8e0e .e-n-tabs {
  gap: 0 !important;
}

.elementor-element-06c8e0e .e-n-tabs-content {
  display: block !important;
  width: 100% !important;
}

#e-n-tab-content-71142541 {
  display: flex !important;
  width: 100% !important;
}

#e-n-tab-content-71142542 {
  display: none !important;
}

/* FAQ — ÍCONE DE EXPANSÃO VERDE */
.elementor-element-3246093 summary.e-n-accordion-item-title::after {
  content: "" !important;
  width: 24px !important;
  height: 24px !important;
  flex: 0 0 24px !important;
  background-image:
    linear-gradient(#059669, #059669),
    linear-gradient(#059669, #059669) !important;
  background-position: center, center !important;
  background-size: 2px 20px, 20px 2px !important;
  background-repeat: no-repeat !important;
  transition: transform 0.2s ease !important;
}

.elementor-element-3246093 details[open] > summary.e-n-accordion-item-title::after {
  transform: rotate(45deg) !important;
}

/* FAQ — COMPOSIÇÃO CENTRALIZADA SEM CARDS DE CONTATO */
.elementor-element-57394e2,
.elementor-element-0fa8d0e {
  display: none !important;
}

.elementor-element-8d5e098 > .e-con-inner {
  display: flex !important;
  flex-direction: column !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 36px !important;
}

.elementor-element-47fe1db {
  --width: 100% !important;
  width: 100% !important;
  max-width: 780px !important;
  align-items: center !important;
  text-align: center !important;
}

.elementor-element-04d8021,
.elementor-element-04d8021 .elementor-widget-container,
.elementor-element-04d8021 .elementor-heading-title {
  width: 100% !important;
  max-width: 100% !important;
  text-align: center !important;
}

.elementor-element-04d8021 .descricao {
  display: block !important;
  max-width: 680px !important;
  margin: 18px auto 0 !important;
  text-align: center !important;
}

.elementor-element-06c8e0e {
  --container-widget-width: 100% !important;
  width: min(100%, 960px) !important;
  max-width: 960px !important;
  margin: 0 auto !important;
  align-self: center !important;
}

/* OFERTA / DIAGNÓSTICO — COMPOSIÇÃO LIMPA EM DUAS COLUNAS */
.elementor-element-5154194 {
  min-height: auto !important;
  padding: clamp(76px, 8vw, 120px) 24px !important;
  overflow: hidden !important;
}

.elementor-element-5154194 > .e-con-inner {
  display: grid !important;
  grid-template-columns: minmax(0, 0.9fr) minmax(420px, 1.1fr) !important;
  align-items: center !important;
  gap: clamp(48px, 6vw, 84px) !important;
  width: min(1180px, 100%) !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

.elementor-element-f11ecec,
.elementor-element-70d48c7 {
  position: relative !important;
  inset: auto !important;
  translate: none !important;
  transform: none !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
}

.elementor-element-f11ecec {
  align-items: flex-start !important;
  justify-content: center !important;
  padding: 0 !important;
}

.elementor-element-b1e9475 {
  align-self: flex-start !important;
  translate: none !important;
  transform: none !important;
  width: auto !important;
  margin: 0 0 24px !important;
  padding: 0 !important;
}

.elementor-element-b1e9475 .elementor-widget-container,
.elementor-element-b1e9475 .elementor-icon-list-items {
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-element-b1e9475 .elementor-icon-list-item {
  background: #ffffff !important;
  border: 1px solid #dce7f3 !important;
  border-radius: 999px !important;
  padding: 10px 16px !important;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.18) !important;
}

.elementor-element-b1e9475 .elementor-icon-list-text {
  color: #34d399 !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.16em !important;
}

.elementor-element-b1e9475 .elementor-icon-list-icon svg path {
  stroke: #059669 !important;
}

.elementor-element-a548bbd,
.elementor-element-a548bbd .elementor-widget-container,
.elementor-element-a548bbd .elementor-image-box-wrapper {
  width: 100% !important;
  text-align: left !important;
}

.elementor-element-a548bbd .elementor-image-box-title {
  max-width: 560px !important;
  margin: 0 0 24px !important;
  color: #f8fafc !important;
  font-size: clamp(40px, 4.2vw, 62px) !important;
  line-height: 1.04 !important;
  letter-spacing: -0.045em !important;
}

.elementor-element-a548bbd .elementor-image-box-description {
  max-width: 540px !important;
  margin: 0 !important;
  color: #aebbd0 !important;
  font-size: 18px !important;
  line-height: 1.7 !important;
}

.elementor-element-70d48c7 {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 0 !important;
  padding: clamp(34px, 4vw, 54px) !important;
  background: #f3f7fd !important;
  border: 1px solid rgba(255, 255, 255, 0.92) !important;
  border-radius: 30px !important;
  box-shadow: 0 28px 70px rgba(0, 0, 0, 0.28) !important;
  overflow: hidden !important;
}

.elementor-element-d79d8a8,
.elementor-element-f2fcd10,
.elementor-element-d7b38d9 {
  display: none !important;
}

.elementor-element-60fa37d {
  width: auto !important;
  min-height: 0 !important;
  margin: 0 0 24px !important;
  padding: 0 !important;
  background: transparent !important;
}

.elementor-element-13fcbd4 .elementor-icon-list-item {
  background: #ffffff !important;
  border: 1px solid #d9e5f4 !important;
  border-radius: 999px !important;
  padding: 10px 16px !important;
  box-shadow: none !important;
}

.elementor-element-13fcbd4 .elementor-icon-list-text {
  color: #059669 !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
}

.elementor-element-938d02e {
  width: 100% !important;
  margin: 0 0 30px !important;
}

.elementor-element-938d02e .elementor-heading-title {
  margin: 0 !important;
  color: #172033 !important;
  font-size: clamp(34px, 3.6vw, 50px) !important;
  line-height: 1.08 !important;
  letter-spacing: -0.045em !important;
  text-align: left !important;
}

.elementor-element-938d02e .preco,
.elementor-element-938d02e .preco-par {
  display: inline !important;
  color: #0abf83 !important;
  font: inherit !important;
}

.elementor-element-e89eacd {
  width: auto !important;
  margin: 0 0 22px !important;
}

.elementor-element-e89eacd .elementor-button {
  min-width: 0 !important;
  padding: 18px 26px !important;
  border-radius: 999px !important;
  box-shadow: 0 14px 30px rgba(5, 150, 105, 0.24) !important;
}

.elementor-element-27b79e3 {
  width: 100% !important;
  margin: 0 !important;
}

.elementor-element-27b79e3 .elementor-heading-title {
  margin: 0 !important;
  color: #7e92af !important;
  font-size: 15px !important;
  line-height: 1.5 !important;
  text-align: left !important;
}

@media (max-width: 880px) {
  .elementor-element-5154194 {
    padding: 70px 20px !important;
  }

  .elementor-element-5154194 > .e-con-inner {
    grid-template-columns: 1fr !important;
    gap: 42px !important;
  }

  .elementor-element-a548bbd .elementor-image-box-title,
  .elementor-element-a548bbd .elementor-image-box-description {
    max-width: 680px !important;
  }

  .elementor-element-70d48c7 {
    max-width: 680px !important;
  }
}

@media (max-width: 520px) {
  .elementor-element-5154194 {
    padding: 56px 16px !important;
  }

  .elementor-element-a548bbd .elementor-image-box-title {
    font-size: 38px !important;
  }

  .elementor-element-a548bbd .elementor-image-box-description {
    font-size: 16px !important;
  }

  .elementor-element-70d48c7 {
    padding: 30px 22px !important;
    border-radius: 24px !important;
  }

  .elementor-element-938d02e .elementor-heading-title {
    font-size: 34px !important;
  }

  .elementor-element-e89eacd,
  .elementor-element-e89eacd .elementor-button {
    width: 100% !important;
  }
}

/* HERO — AJUSTE EXCLUSIVO PARA CELULARES */
@media (max-width: 767px) {
  .elementor-8470 .elementor-element.elementor-element-49cd9e6 {
    width: 100% !important;
    padding: 0 18px !important;
    box-sizing: border-box !important;
  }

  .elementor-8470 .elementor-element.elementor-element-3cd2d51 > .elementor-widget-container {
    margin: 0 0 18px !important;
  }

  .elementor-8470 .elementor-element.elementor-element-3cd2d51 .elementor-image-box-wrapper,
  .elementor-8470 .elementor-element.elementor-element-3cd2d51 .elementor-image-box-content {
    width: 100% !important;
    text-align: center !important;
  }

  .elementor-8470 .elementor-element.elementor-element-3cd2d51 .elementor-image-box-title {
    max-width: 330px !important;
    margin: 0 auto 16px !important;
    font-size: 29px !important;
    line-height: 1.12 !important;
    letter-spacing: -0.045em !important;
    text-wrap: balance !important;
  }

  .elementor-8470 .elementor-element.elementor-element-3cd2d51 .elementor-image-box-title .destaque,
  .elementor-8470 .elementor-element.elementor-element-3cd2d51 h1 .destaque {
    display: block !important;
    max-width: 330px !important;
    margin: 4px auto 0 !important;
    font-size: 36px !important;
    line-height: 0.98 !important;
    letter-spacing: -0.045em !important;
    text-wrap: balance !important;
  }

  .elementor-8470 .elementor-element.elementor-element-3cd2d51 .elementor-image-box-description {
    max-width: 315px !important;
    margin: 0 auto !important;
    font-size: 15px !important;
    line-height: 1.5 !important;
    letter-spacing: -0.015em !important;
    text-wrap: pretty !important;
  }

  .elementor-8470 .elementor-element.elementor-element-5003c38 {
    width: 100% !important;
    max-width: 330px !important;
    align-self: center !important;
  }

  .elementor-8470 .elementor-element.elementor-element-5003c38 .elementor-button {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 58px !important;
    padding: 15px 18px !important;
    justify-content: center !important;
  }

  .elementor-8470 .elementor-element.elementor-element-5003c38 .elementor-button-content-wrapper {
    flex-wrap: nowrap !important;
    justify-content: center !important;
    gap: 8px !important;
  }

  .elementor-8470 .elementor-element.elementor-element-5003c38 .elementor-button-text {
    font-size: 12px !important;
    line-height: 1 !important;
    letter-spacing: -0.01em !important;
    white-space: nowrap !important;
  }

  .elementor-8470 .elementor-element.elementor-element-5003c38 .elementor-button-icon svg {
    width: 17px !important;
    height: auto !important;
  }

  .elementor-8470 .elementor-element.elementor-element-d57cd48 {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 18px !important;
    box-sizing: border-box !important;
    text-align: center !important;
  }

  .elementor-8470 .elementor-element.elementor-element-d57cd48 > .elementor-widget-container {
    margin: 0 0 28px !important;
  }

  .elementor-8470 .elementor-element.elementor-element-d57cd48 .elementor-heading-title {
    max-width: 340px !important;
    margin: 0 auto !important;
    font-size: 28px !important;
    line-height: 1.08 !important;
    letter-spacing: -0.045em !important;
    text-align: center !important;
  }

  .elementor-8470 .elementor-element.elementor-element-d57cd48 .argen-journey-lead {
    display: block !important;
    max-width: 315px !important;
    margin: 0 auto !important;
    text-wrap: balance !important;
  }

  .elementor-8470 .elementor-element.elementor-element-d57cd48 .destaque {
    display: block !important;
    max-width: 330px !important;
    margin: 5px auto 0 !important;
    font-size: 32px !important;
    line-height: 1 !important;
    letter-spacing: -0.04em !important;
    text-wrap: balance !important;
  }

  .elementor-8470 .elementor-element.elementor-element-d57cd48 .descricao {
    display: block !important;
    max-width: 325px !important;
    margin: 18px auto 0 !important;
    color: #7e92af !important;
    font-size: 15px !important;
    line-height: 1.5 !important;
    letter-spacing: -0.015em !important;
    text-align: center !important;
    text-wrap: pretty !important;
  }
}

.mobile-hamburger-btn,
.mobile-menu-overlay,
.mobile-menu-drawer {
  display: none !important;
}

@media (max-width: 1024px) {
  .elementor-element-b7e025e,
  .elementor-element-5da872f .elementor-element-b7e025e,
  .header-cta-desktop {
    display: none !important;
  }

  .mobile-hamburger-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    width: 38px !important;
    height: 38px !important;
    padding: 0 !important;
    cursor: pointer !important;
    margin-left: auto !important;
    margin-right: 16px !important;
    transition: transform 0.2s ease !important;
  }

    .mobile-hamburger-btn i {
    font-size: 1.85rem !important;
    color: #0F172A !important;
    line-height: 1 !important;
    display: block !important;
  }

  .mobile-menu-close-btn i {
    font-size: 1.25rem !important;
    color: #0F172A !important;
    line-height: 1 !important;
    display: block !important;
  }

  .mobile-hamburger-btn svg path {
    stroke: #0F172A !important;
  }

  .mobile-hamburger-btn:active {
    transform: scale(0.92) !important;
  }

  .mobile-menu-overlay {
    display: block !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    background: rgba(15, 23, 42, 0.5) !important;
    backdrop-filter: blur(6px) !important;
    -webkit-backdrop-filter: blur(6px) !important;
    z-index: 999998 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transition: opacity 0.3s ease, visibility 0.3s ease !important;
  }

  .mobile-menu-overlay.active {
    opacity: 1 !important;
    visibility: visible !important;
  }

  .mobile-menu-drawer {
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    width: 82vw !important;
    max-width: 320px !important;
    height: 100vh !important;
    height: 100dvh !important;
    background: #FFFFFF !important;
    z-index: 999999 !important;
    box-shadow: -10px 0 40px rgba(0, 0, 0, 0.18) !important;
    transform: translateX(100%) !important;
    transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
    padding: 24px 20px !important;
    box-sizing: border-box !important;
  }

  .mobile-menu-drawer.active {
    transform: translateX(0) !important;
  }

  .mobile-menu-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding-bottom: 20px !important;
    border-bottom: 1px solid #F1F5F9 !important;
  }

  .mobile-menu-logo {
    height: 28px !important;
    width: auto !important;
  }

  .mobile-menu-close-btn {
    background: #F8FAFC !important;
    border: 1px solid #E2E8F0 !important;
    border-radius: 50% !important;
    width: 36px !important;
    height: 36px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
  }

  .mobile-menu-close-btn svg {
    display: block !important;
    width: 20px !important;
    min-width: 20px !important;
    height: 20px !important;
    color: #0F172A !important;
    stroke: #0F172A !important;
  }

  .mobile-menu-nav {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    margin: 24px 0 !important;
    flex: 1 !important;
  }

  .mobile-menu-link {
    font-family: 'Metropolis', sans-serif !important;
    font-size: 1.05rem !important;
    font-weight: 600 !important;
    color: #1E293B !important;
    text-decoration: none !important;
    padding: 12px 16px !important;
    border-radius: 12px !important;
    transition: background 0.2s ease, color 0.2s ease !important;
  }

  .mobile-menu-link:hover,
  .mobile-menu-link:active {
    background: #ECFDF5 !important;
    color: #059669 !important;
  }

  .mobile-menu-footer {
    padding-top: 16px !important;
    border-top: 1px solid #F1F5F9 !important;
  }

  .mobile-menu-cta-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    padding: 14px 20px !important;
    background: linear-gradient(93deg, #047857 0%, #10B981 100%) !important;
    color: #FFFFFF !important;
    font-family: 'Metropolis', sans-serif !important;
    font-size: 0.95rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    border-radius: 100px !important;
    text-decoration: none !important;
    box-shadow: 0 8px 20px rgba(16, 185, 129, 0.35) !important;
    box-sizing: border-box !important;
  }
}
