﻿/* -------------------------------------------------------------------
   PREMIUM TYPOGRAPHY & CONTRAST � Dra. Bruna Xisto
   Autoria: UI Designer S�nior + CRO Specialist
   Objetivo: Legibilidade AA/AAA, hierarquia visual, impacto de convers�o
   ------------------------------------------------------------------- */

/* ------------------------------------------------------------------
   1. VARI�VEIS DE CONTRASTE PREMIUM
   ------------------------------------------------------------------ */
:root {
  --ink-strong:  #1e1408;        /* t�tulos em fundo claro � AAA */
  --ink-base:    #2e1f12;        /* var(--ink) original */
  --ink-mid:     #4a3020;        /* corpo em fundo claro � AA+ */
  --ink-soft:    #6b4d35;        /* secund�rio claro � AA */

  --light-98:    rgba(229,218,209,.98);
  --light-92:    rgba(229,218,209,.92);
  --light-84:    rgba(229,218,209,.84);
  --light-72:    rgba(229,218,209,.72);
  --light-62:    rgba(229,218,209,.62);
  --light-55:    rgba(229,218,209,.55);

  --white-96:    rgba(255,255,255,.96);
  --white-92:    rgba(255,255,255,.92);
  --white-85:    rgba(255,255,255,.85);
  --white-75:    rgba(255,255,255,.75);
}

/* ------------------------------------------------------------------
   2. TIPOGRAFIA GLOBAL � HIERARQUIA PREMIUM
   ------------------------------------------------------------------ */

/* Renderiza��o premium em todos os textos */
* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

/* Labels de se��o � mais impacto */
.lbl {
  font-weight: 800 !important;
  letter-spacing: 3.8px !important;
  font-size: 10px !important;
}

/* ------------------------------------------------------------------
   3. URGENCY BAR � Legibilidade m�xima
   ------------------------------------------------------------------ */
.urgency-bar p {
  color: #ffffff !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  letter-spacing: .55px !important;
}

.urgency-bar strong {
  color: #ffffff !important;
  font-weight: 800 !important;
}

/* ------------------------------------------------------------------
   4. HERO � Fundo escuro (contraste cr�tico)
   ------------------------------------------------------------------ */

/* Kicker � identifica��o da Dra. */
.hero-kicker-txt {
  color: var(--c3) !important;
  opacity: 1 !important;
  font-weight: 700 !important;
  letter-spacing: 2.8px !important;
}

/* H1 � impacto m�ximo */
.hero-h1 {
  font-weight: 500 !important;
  letter-spacing: -.6px !important;
}

/* Subt�tulo hero � ERA .70, agora leg�vel */
.hero-sub {
  color: var(--light-92) !important;
  font-size: clamp(16px, 1.8vw, 18.5px) !important;
  line-height: 1.82 !important;
  font-weight: 400 !important;
}

/* Bloco de refor�o � ERA .82, cr�tico para convers�o */
.hero-reinforce {
  color: var(--light-92) !important;
  font-size: 16px !important;
  line-height: 1.78 !important;
}

.hero-reinforce strong {
  color: #ffffff !important;
  font-weight: 700 !important;
  font-size: 15.5px !important;
  display: block !important;
  margin-bottom: 5px !important;
}

/* Tags de obje��o */
.hero-obj-tag {
  color: var(--light-92) !important;
  font-weight: 600 !important;
  font-size: 12.5px !important;
}

/* Trust items � ERA .46, quase invis�vel */
.hero-trust-item {
  color: var(--light-72) !important;
  font-weight: 500 !important;
  font-size: 12px !important;
}

/* Micro-texto do CTA � ERA .55 com `opacity` */
.cta-micro {
  color: var(--light-72) !important;
  opacity: 1 !important;
  font-size: 12px !important;
}

.cta-micro span {
  color: var(--light-72) !important;
  opacity: 1 !important;
}

/* Scroll indicator */
.hero-scroll-lbl {
  color: var(--light-55) !important;
  letter-spacing: 2.8px !important;
}

/* HV Card sub � ERA .38, invis�vel */
.hv-card-sub {
  color: var(--light-62) !important;
  font-size: 11px !important;
  font-weight: 600 !important;
}

/* HV Card nome */
.hv-card-name {
  color: var(--light-98) !important;
  font-weight: 700 !important;
}

/* M�dulos do card */
.hv-m-done span {
  color: var(--light-72) !important;
}

.hv-m-active span {
  color: var(--light-98) !important;
  font-weight: 600 !important;
}

.hv-m-locked span {
  color: var(--light-55) !important;
}

/* Stat no card */
.hv-stat-num {
  color: var(--light-92) !important;
  font-weight: 500 !important;
}

.hv-stat-lbl {
  color: var(--light-55) !important;
  font-size: 9.5px !important;
  letter-spacing: .08em !important;
}

/* Progress label */
.hv-progress-label {
  color: var(--light-72) !important;
}

.hv-progress-pct {
  color: rgba(170,140,115,.92) !important;
  font-weight: 700 !important;
}

/* Badge "Ativo" */
.hv-card-badge {
  color: rgba(175,188,167,.95) !important;
  font-weight: 700 !important;
}

/* ------------------------------------------------------------------
   5. SE��O PROBLEMA � Fundo claro (contraste cr�tico)
   ------------------------------------------------------------------ */

/* Par�grafos � ERA var(--soft) = #8a6a52, baixo contraste no bg claro */
.problema-p {
  color: var(--ink-mid) !important;     /* #4a3020 � contraste AAA */
  font-size: 16.5px !important;
  line-height: 1.94 !important;
  font-weight: 450 !important;
}

/* Bloco de destaque */
.problema-highlight {
  color: var(--ink-strong) !important;
  font-size: 15.5px !important;
  line-height: 1.78 !important;
  font-weight: 500 !important;
}

.problema-highlight strong {
  color: var(--ink-base) !important;
  font-weight: 800 !important;
}

/* Cita��es de d�vidas */
.doubt q {
  color: var(--ink-base) !important;
  font-size: 22px !important;
  font-weight: 500 !important;
  line-height: 1.48 !important;
}

.doubt-tag {
  color: var(--c1d) !important;
  font-weight: 700 !important;
  opacity: 1 !important;
  letter-spacing: 1.2px !important;
}

/* ------------------------------------------------------------------
   6. SE��O FORMATO � Fundo escuro (CR�TICO: .48 ? .84)
   ------------------------------------------------------------------ */

/* H2 do formato */
.formato-h2 {
  color: var(--light-98) !important;
  font-weight: 500 !important;
}

/* T�tulos de cada item */
.formato-title {
  color: var(--light-98) !important;
  font-weight: 700 !important;
  font-size: 22px !important;
  line-height: 1.22 !important;
}

/* Textos � ERA .48, VIOLA��O CR�TICA de contraste */
.formato-text {
  color: var(--light-84) !important;   /* ERA .48 ? agora leg�vel */
  font-size: 14.5px !important;
  line-height: 1.78 !important;
  font-weight: 400 !important;
}

/* Tag objetivo */
.formato-obj {
  color: var(--c1) !important;
  font-weight: 700 !important;
  opacity: 1 !important;
  letter-spacing: 1.5px !important;
}

/* Label "Como � entregue" em fundo escuro */
#formato .lbl {
  color: rgba(229,218,209,.65) !important;
  opacity: 1 !important;
}

#formato .formato-intro em {
  color: rgba(229,218,209,.88) !important;
  opacity: 1 !important;
}

/* ------------------------------------------------------------------
   7. SE��O COMO FUNCIONA � Fundo claro
   ------------------------------------------------------------------ */
#como-funciona h3 {
  color: var(--ink-base) !important;
  font-weight: 600 !important;
  letter-spacing: -.1px !important;
}

#como-funciona p {
  color: var(--ink-mid) !important;
  font-size: 14.5px !important;
  line-height: 1.78 !important;
  font-weight: 450 !important;
}

/* ------------------------------------------------------------------
   8. STATS � Fundo escuro (ERA .40, invis�vel)
   ------------------------------------------------------------------ */
.stat-num {
  color: #ffffff !important;
  font-weight: 300 !important;
}

.stat-num span {
  color: var(--c1) !important;
}

/* ERA .40 � muito fraco para leitura */
.stat-label {
  color: var(--light-72) !important;
  letter-spacing: 2.2px !important;
  font-weight: 700 !important;
  font-size: 11px !important;
}

/* ------------------------------------------------------------------
   9. SE��O BENEF�CIOS � Fundo claro
   ------------------------------------------------------------------ */
.beneficios-hd h2 em {
  color: var(--c1) !important;
  opacity: 1 !important;
}

/* ERA var(--soft), baixo contraste */
.beneficios-hd p {
  color: var(--ink-mid) !important;
  font-size: 16px !important;
  line-height: 1.92 !important;
  font-weight: 450 !important;
}

/* T�tulo do benef�cio */
.ben-title {
  color: var(--ink-strong) !important;
  font-weight: 700 !important;
  font-size: 20px !important;
  line-height: 1.28 !important;
}

/* Texto do benef�cio � ERA var(--soft) baixo contraste */
.ben-text {
  color: var(--ink-mid) !important;
  font-size: 14px !important;
  line-height: 1.78 !important;
  font-weight: 450 !important;
}

/* Resultado ? tag */
.ben-result {
  color: var(--c1d) !important;
  font-weight: 700 !important;
  font-size: 12px !important;
}

/* ------------------------------------------------------------------
   10. SE��O DEPOIMENTOS � Fundo quase-branco
   ------------------------------------------------------------------ */

/* Texto do depoimento */
#depoimentos [style*="font-style:italic"] {
  color: var(--ink-base) !important;
  font-size: 17.5px !important;
  line-height: 1.72 !important;
  font-weight: 400 !important;
}

/* Rating e sub */
#depoimentos [style*="4.9"] {
  opacity: 1 !important;
  font-weight: 700 !important;
  color: var(--ink-base) !important;
}

/* ------------------------------------------------------------------
   11. SE��O SUPORTE � Fundo verde (ERA .68 ? .92)
   ------------------------------------------------------------------ */
.suporte-copy h2 {
  color: #ffffff !important;
  font-weight: 500 !important;
}

/* ERA .68 � baixo contraste no verde */
.suporte-copy p {
  color: var(--white-92) !important;
  font-size: 16px !important;
  line-height: 1.90 !important;
  font-weight: 400 !important;
}

/* Corpo dos features */
.suporte-feat-body {
  color: var(--white-92) !important;   /* ERA .78 */
  font-size: 15px !important;
  line-height: 1.68 !important;
}

.suporte-feat-body strong {
  color: #ffffff !important;
  font-weight: 700 !important;
  font-size: 15.5px !important;
  letter-spacing: .1px !important;
}

/* ------------------------------------------------------------------
   12. SE��O TRANSFORMA��O � Fundo claro
   ------------------------------------------------------------------ */
.t-col-b .t-txt {
  color: var(--ink-mid) !important;
  font-weight: 500 !important;
}

/* ERA .80 � ok mas pode melhorar */
.t-col-a .t-txt {
  color: var(--light-92) !important;
  font-weight: 500 !important;
}

.t-col-b .t-col-label {
  color: var(--ink-soft) !important;
  font-weight: 700 !important;
}

.t-col-a .t-col-label {
  color: var(--c1) !important;
  font-weight: 700 !important;
}

/* ------------------------------------------------------------------
   13. SE��O FAQ � Fundo claro
   ------------------------------------------------------------------ */
.faq-q {
  color: var(--ink-strong) !important;
  font-weight: 700 !important;
  font-size: 20px !important;
  line-height: 1.3 !important;
}

/* ERA var(--soft) � baixo contraste */
.faq-a {
  color: var(--ink-mid) !important;
  font-size: 15px !important;
  line-height: 1.84 !important;
  font-weight: 450 !important;
}

/* ------------------------------------------------------------------
   14. SE��O CTA � Fundo cobre (CR�TICO: .68 e .50)
   ------------------------------------------------------------------ */
.cta-h2 {
  color: #ffffff !important;
  font-weight: 400 !important;
}

.cta-h2 em,
.cta-h2 strong {
  color: #ffffff !important;
}

/* ERA .68 � baixo contraste no cobre */
.cta-sub {
  color: var(--white-92) !important;
  font-size: 17.5px !important;
  line-height: 1.86 !important;
  font-weight: 400 !important;
}

/* ERA .50 � VIOLA��O CR�TICA no cobre */
.cta-urgency-text {
  color: var(--white-85) !important;
  font-style: italic !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}

/* Tabela de pre�os � labels secund�rios */
.cta-price-block [style*="rgba(255,255,255,.35)"] {
  color: rgba(255,255,255,.65) !important;
}
.cta-price-block [style*="rgba(255,255,255,.40)"] {
  color: rgba(255,255,255,.68) !important;
}
.cta-price-block [style*="rgba(255,255,255,.45)"] {
  color: rgba(255,255,255,.72) !important;
}
.cta-price-block [style*="rgba(255,255,255,.70)"] {
  color: rgba(255,255,255,.92) !important;
}
.cta-price-block [style*="rgba(255,255,255,.80)"] {
  color: rgba(255,255,255,.96) !important;
}

/* "Ou parcele no cart�o" */
.cta-price-block [style*="rgba(255,255,255,.35)"][style*="letter-spacing:2.5px"] {
  color: rgba(255,255,255,.70) !important;
}

/* "pagamento �nico" */
.cta-price-block [style*="rgba(255,255,255,.40)"][style*="letter-spacing:.4px"] {
  color: rgba(255,255,255,.68) !important;
}

/* R$ 24,75 / R$ 13,22 */
.cta-price-block [style*="rgba(255,255,255,.70)"][style*="Cormorant"] {
  color: rgba(255,255,255,.95) !important;
}

/* "Acesso imediato ap�s pagamento" badge */
.cta-btn-wrap ~ div [style*="rgba(255,255,255,.55)"] {
  color: rgba(255,255,255,.82) !important;
  font-weight: 700 !important;
}

/* Micro-texto do bot�o CTA */
.cta-sub-micro span {
  color: rgba(255,255,255,.72) !important;
  font-weight: 500 !important;
}

/* ------------------------------------------------------------------
   15. SE��O FECHAMENTO � Fundo escuro (ERA .52)
   ------------------------------------------------------------------ */
.fech-quote {
  color: var(--light-98) !important;
  font-weight: 400 !important;
}

.fech-quote em {
  color: var(--c3) !important;
  opacity: 1 !important;
}

/* ERA .52 � VIOLA��O CR�TICA */
.fech-body {
  color: var(--light-84) !important;
  font-size: 16.5px !important;
  line-height: 1.96 !important;
  font-weight: 400 !important;
}

.fech-cta-meta {
  color: var(--light-55) !important;
  font-size: 11.5px !important;
  letter-spacing: .5px !important;
}

/* ------------------------------------------------------------------
   16. SE��O AUTORIDADE � Fundo escuro (ERA .46 e .52)
   ------------------------------------------------------------------ */
.aut-intro h2 {
  color: var(--light-98) !important;
  font-weight: 500 !important;
}

.aut-intro h2 em {
  color: var(--c3) !important;
  opacity: 1 !important;
}

/* ERA .46 � quase invis�vel */
.aut-intro p {
  color: var(--light-80, rgba(229,218,209,.80)) !important;
  font-size: 15px !important;
  line-height: 1.84 !important;
  font-weight: 400 !important;
}

/* Card das m�dicas */
.doc-name {
  color: #ffffff !important;
  font-weight: 500 !important;
}

/* ERA .68 com opacity */
.doc-spec {
  color: rgba(229,218,209,.90) !important;
  font-style: italic !important;
  font-weight: 500 !important;
  font-size: 12.5px !important;
}

/* ERA .52 */
.doc-bio {
  color: rgba(229,218,209,.82) !important;
  font-size: 13.5px !important;
  line-height: 1.76 !important;
  font-weight: 400 !important;
}

/* ERA .50 */
.doc-cred {
  color: rgba(229,218,209,.80) !important;
  font-size: 12.5px !important;
  font-weight: 450 !important;
  line-height: 1.5 !important;
}

.doc-card:hover .doc-cred {
  color: rgba(229,218,209,.95) !important;
}

/* Badge das Dras */
.doc-badge {
  color: var(--c1) !important;
  opacity: 1 !important;
  font-weight: 800 !important;
  letter-spacing: 3.5px !important;
}

/* Footer do autoridade */
.aut-footer p {
  color: var(--light-55) !important;
  font-size: 12px !important;
  letter-spacing: .4px !important;
}

/* ------------------------------------------------------------------
   17. SE��O GARANTIA � Fundo claro
   ------------------------------------------------------------------ */
#garantia h3 {
  color: var(--ink-strong) !important;
  font-weight: 500 !important;
}

#garantia h3 em {
  color: var(--c1) !important;
}

#garantia p {
  color: var(--ink-mid) !important;
  font-size: 15.5px !important;
  line-height: 1.80 !important;
}

#garantia [style*="color:var(--c2d)"] {
  color: #6a8f6e !important;
  font-weight: 700 !important;
}

/* ------------------------------------------------------------------
   18. FOOTER � Fundo muito escuro (ERA .20, .18 � invis�veis)
   ------------------------------------------------------------------ */
.ft-card-name {
  color: var(--light-98) !important;
  font-weight: 500 !important;
  letter-spacing: .2px !important;
}

/* ERA .28 */
.ft-card-crm {
  color: var(--light-62) !important;
  font-size: 11.5px !important;
  line-height: 1.8 !important;
}

.ft-card-specialty {
  color: var(--c1) !important;
  font-weight: 800 !important;
  letter-spacing: 2.8px !important;
}

/* ERA .50 */
.ft-contact-row {
  color: var(--light-72) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
}

.ft-contact-row:hover {
  color: var(--light-98) !important;
}

/* ERA .38 */
.ft-bottom-name {
  color: var(--light-72) !important;
  font-weight: 500 !important;
}

/* ERA .20 � VIOLA��O EXTREMA */
.ft-bottom-crm {
  color: var(--light-55) !important;
  letter-spacing: .6px !important;
}

/* ERA .18 � VIOLA��O EXTREMA */
.ft-bottom-copy {
  color: var(--light-55) !important;
  letter-spacing: .5px !important;
}

/* ------------------------------------------------------------------
   19. BOT�ES � Contraste m�ximo nos CTAs
   ------------------------------------------------------------------ */
.btn-main-cta,
.btn-cta-main,
.btn-copper,
.sticky-btn {
  font-weight: 800 !important;
  letter-spacing: .95px !important;
}

/* ------------------------------------------------------------------
   20. DESTAQUES CRO � Palavras de convers�o
   Aplicados via classes no HTML
   ------------------------------------------------------------------ */

/* Destaque de risco/medo � vermelho quente suave */
.kw-risk {
  font-weight: 800;
  color: #8B4A35;
  position: relative;
}

/* Destaque de seguran�a � verde da paleta */
.kw-safe {
  font-weight: 800;
  color: #5a7c5e;
}

/* Destaque de autoridade m�dica */
.kw-med {
  font-weight: 700;
  color: var(--c1d);
  border-bottom: 1.5px solid rgba(170,140,115,.40);
  padding-bottom: 1px;
}

/* Destaque neutro � bronze suave */
.kw-val {
  font-weight: 700;
  background: rgba(170,140,115,.11);
  padding: 0 4px 1px;
  border-radius: 4px;
  color: inherit;
}

/* Vers�o clara (para fundos escuros) */
.kw-safe-light {
  font-weight: 800;
  color: rgba(175,188,167,.95);
}

.kw-risk-light {
  font-weight: 800;
  color: rgba(229,218,209,.98);
  text-decoration: underline;
  text-decoration-color: rgba(229,218,209,.35);
  text-underline-offset: 3px;
}

.kw-val-light {
  font-weight: 700;
  background: rgba(229,218,209,.10);
  padding: 0 5px 1px;
  border-radius: 4px;
  color: rgba(229,218,209,.98);
}

/* ------------------------------------------------------------------
   21. MINI-STICKY � Legibilidade
   ------------------------------------------------------------------ */
.mini-sticky-label {
  color: var(--light-72) !important;
  font-weight: 600 !important;
}

/* ------------------------------------------------------------------
   22. SE��O "COMO FUNCIONA" � Textos inline (step cards)
   ------------------------------------------------------------------ */

/* Os textos dos steps s�o inline styles � override espec�fico */
#como-funciona [style*="color:var(--soft)"] {
  color: var(--ink-mid) !important;
}

#como-funciona [style*="color:var(--ink)"] {
  color: var(--ink-strong) !important;
}

/* ------------------------------------------------------------------
   23. SE��O DEPOIMENTOS � Textos inline
   ------------------------------------------------------------------ */

/* Subt�tulo abaixo das estrelas */
#depoimentos [style*="opacity:.65"] {
  opacity: 1 !important;
  color: rgba(46,31,18,.70) !important;
  font-weight: 700 !important;
}

/* Cidade/role do depoente */
#depoimentos [style*="font-size:11.5px"][style*="color:var(--soft)"],
#depoimentos [style*="margin-top:1px"] {
  color: var(--ink-soft) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
}

/* ------------------------------------------------------------------
   24. RESPONSIVE � M�nimo 14px no mobile
   ------------------------------------------------------------------ */
@media (max-width: 640px) {

  /* Nenhum texto abaixo de 14px no mobile */
  .problema-p,
  .ben-text,
  .faq-a,
  .formato-text,
  .suporte-feat-body,
  .doc-bio {
    font-size: 15px !important;
    line-height: 1.80 !important;
  }

  .cta-sub {
    font-size: 16px !important;
  }

  .fech-body {
    font-size: 15.5px !important;
    line-height: 1.90 !important;
  }

  .hero-sub {
    font-size: 16.5px !important;
  }

  /* FAQ mobile */
  .faq-q {
    font-size: 17.5px !important;
  }

  .faq-a {
    font-size: 14.5px !important;
  }

  /* Cards de depoimento mobile */
  #depoimentos [style*="font-style:italic"] {
    font-size: 16px !important;
  }

  /* Trust items no mobile */
  .hero-trust-item {
    font-size: 11.5px !important;
  }
}

/* ------------------------------------------------------------------
   25. MELHORIAS ADICIONAIS DE TIPOGRAFIA PREMIUM
   ------------------------------------------------------------------ */

/* Melhorar espa�amento de linha global para textos de par�grafo */
.formato-text,
.ben-text,
.problema-p,
.faq-a,
.suporte-feat-body,
.doc-bio {
  letter-spacing: .01em;
}

/* H2 de se��es � melhorar letter-spacing */
#beneficios h2,
#suporte .suporte-copy h2,
#transformacao .transf-hd h2,
#faq h2,
#depoimentos h2,
#como-funciona h2 {
  letter-spacing: -.3px;
  line-height: 1.12;
}

/* Se��o stats � N�meros mais impactantes */
.stat-num {
  letter-spacing: -1.5px !important;
  font-variant-numeric: tabular-nums;
}

/* ------------------------------------------------------------------
   26. ACESSIBILIDADE � prefers-reduced-motion
   ------------------------------------------------------------------ */
@media (prefers-reduced-motion: reduce) {
  .kw-risk,
  .kw-safe,
  .kw-med,
  .kw-val {
    transition: none !important;
  }
}


/* ------------------------------------------------------------------
   DESTAQUE M�XIMO � "fazendo algo errado?"
   100% dentro da paleta do site: --c1 #AA8C73 � --c3 #E5DAD1 � --c1d #8a6e57
   ------------------------------------------------------------------ */

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@1,400;1,500;1,600&display=swap');

.hero-errado {
  display: inline-block;
  position: relative;
  font-style: italic;
  line-height: 1.10 !important;
}

/* Glow pulsante de fundo suave */
.hero-errado::before {
  content: '';
  position: absolute;
  inset: -10px -24px;
  background: radial-gradient(ellipse 80% 70% at 50% 60%,
    rgba(170, 140, 115, .22) 0%,
    transparent 70%
  );
  filter: blur(18px);
  animation: errGlow 4s ease-in-out infinite;
  pointer-events: none;
  z-index: 0;
}

@keyframes errGlow {
  0%, 100% { opacity: .70; transform: scaleX(1) scaleY(1);    }
  50%       { opacity: 1;   transform: scaleX(1.06) scaleY(1.08); }
}

/* O texto em si � elegante, serif it�lico com gradiente refinado */
.hero-errado-inner {
  position: relative;
  z-index: 1;

  font-family: 'Playfair Display', 'Free Serif', Georgia, serif !important;
  font-weight: 500 !important;
  font-style: italic !important;
  font-size: 1em !important;
  letter-spacing: .01em !important;
  text-transform: none;

  /* gradiente luminoso da paleta: bege frio ? dourado cobre ? branco quente */
  background: linear-gradient(
    160deg,
    #fdf6ee  0%,
    #f0e2cd 18%,
    #d4ad8a 38%,
    #AA8C73 52%,
    #e8d5bf 72%,
    #faf3eb 100%
  );
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;

  filter:
    drop-shadow(0 1px 0   rgba(255,255,255,.08))
    drop-shadow(0 4px 32px rgba(170, 140, 115, .50))
    drop-shadow(0 0  12px  rgba(229, 218, 209, .22));
}

/* Sublinhado elegante � tra�o fino com brilho central */
.hero-errado::after {
  content: '';
  position: absolute;
  bottom: -4px;
  left: 4%;
  right: 4%;
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent           0%,
    rgba(170,140,115,.30) 15%,
    rgba(229,218,209,.75) 50%,
    rgba(170,140,115,.30) 85%,
    transparent           100%
  );
  border-radius: 1px;
  animation: errLine 4s ease-in-out infinite;
  pointer-events: none;
}

@keyframes errLine {
  0%, 100% { opacity: .55; transform: scaleX(.94); }
  50%       { opacity: 1;   transform: scaleX(1);   }
}

/* -- Mobile -- */
@media (max-width: 640px) {
  .hero-errado::before {
    inset: -6px -14px;
    filter: blur(12px);
  }
  .hero-errado::after {
    bottom: -3px;
    height: 1px;
  }
}


/* ------------------------------------------------------------------
   EMAIL VIS�VEL NO RODAP�
   ------------------------------------------------------------------ */
.ft-contact-row[href^="mailto:"] {
  color: rgba(229,218,209,.92) !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  letter-spacing: .1px !important;
}

.ft-contact-row[href^="mailto:"] svg {
  opacity: .85 !important;
  width: 15px !important;
  height: 15px !important;
}

.ft-contact-row[href^="mailto:"]:hover {
  color: #ffffff !important;
}

/* ------------------------------------------------------------------
   AJUSTES MOBILE � indicador "Continue lendo" + n�meros mais leg�veis
   ------------------------------------------------------------------ */
@media (max-width: 640px) {
  .hero-scroll-indicator {
    margin-top: 40px !important;
    gap: 8px !important;
  }

  .hsi-line {
    height: 42px !important;
    background: linear-gradient(to bottom, transparent, rgba(229,218,209,.58)) !important;
  }

  .hsi-label {
    font-size: 12px !important;
    font-weight: 800 !important;
    letter-spacing: 3.2px !important;
    color: rgba(229,218,209,.72) !important;
    text-shadow: 0 0 10px rgba(170,140,115,.22);
  }

  .hsi-chevrons {
    color: rgba(229,218,209,.70) !important;
  }

  .hsi-chevrons svg {
    width: 18px !important;
    height: 18px !important;
  }

  .ben[data-num]::before {
    font-size: 56px !important;
    top: -2px !important;
    right: 10px !important;
    opacity: .10 !important;
  }

  .formato-item-num {
    font-size: 36px !important;
    opacity: .20 !important;
  }
}


/* Ajuste solicitado: subir o "Continue lendo" */
.hero-scroll-indicator {
  bottom: 8px !important;
}

@media (max-width: 768px) {
  .hero-scroll-indicator {
    bottom: 4px !important;
  }
}
/* =========================
   SCROLL INDICATOR PREMIUM
========================= */

/* Fade no final do hero (sensa��o de continuidade) */
#hero::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 120px;
  background: linear-gradient(
    to bottom,
    rgba(0,0,0,0) 0%,
    rgba(0,0,0,0.15) 40%,
    rgba(0,0,0,0.35) 100%
  );
  pointer-events: none;
  z-index: 2;
}

/* Container do "Continue lendo" */
.hero-scroll-indicator {
  position: absolute;
  left: 50%;
  bottom: 12px !important;
  transform: translateX(-50%);
  z-index: 5;
  opacity: 0.95;
  text-align: center;
}

/* Texto */
.hsi-label {
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 1px;
  color: #fff;
}

/* Anima��o setas */
.hsi-chevrons svg {
  animation: bounceDown 1.6s infinite;
}

/* Keyframe anima��o */
@keyframes bounceDown {
  0% { transform: translateY(0); opacity: 0.4; }
  50% { transform: translateY(6px); opacity: 1; }
  100% { transform: translateY(0); opacity: 0.4; }
}

/* Espa�o extra no hero (respira��o) */
.hero-inner {
  padding-bottom: 80px;
}

/* Mobile ajuste fino */
@media (max-width: 768px) {
  .hero-scroll-indicator {
    bottom: 6px !important;
  }

  .hsi-label {
    font-size: 13px;
  }
}

/* Ajustes de alinhamento pedidos pelo cliente (mobile) */
@media (max-width: 768px) {
  #cta .cta-inner {
    width: min(100%, 420px);
    margin-inline: auto;
    padding-inline: 18px !important;
  }

  #cta .cta-h2 {
    max-width: 20ch;
    margin-inline: auto;
    text-wrap: balance;
  }

  #cta .cta-sub {
    max-width: 34ch;
    margin-inline: auto;
    text-wrap: pretty;
    overflow-wrap: break-word;
  }

  #cta .cta-urgency-text {
    max-width: 34ch;
    margin-inline: auto;
    text-wrap: pretty;
  }

  #fechamento .fech-inner {
    width: min(100%, 430px);
    margin-inline: auto;
    padding-inline: 18px !important;
  }

  #fechamento .fech-quote {
    max-width: 24ch;
    margin-inline: auto;
    text-wrap: balance;
  }

  #fechamento .fech-body {
    max-width: 34ch;
    margin-inline: auto;
    text-wrap: pretty;
  }

  #beneficios .ben {
    align-items: flex-start;
  }

  #beneficios .ben-title {
    text-wrap: balance;
  }

  #beneficios .ben-text {
    text-wrap: pretty;
  }

  #beneficios .ben-result {
    width: fit-content !important;
    max-width: none !important;
    align-self: flex-start !important;
    justify-content: flex-start !important;
    text-align: left !important;
    line-height: 1.4 !important;
    white-space: nowrap !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    letter-spacing: 0 !important;
    font-size: clamp(10px, 2.7vw, 11.5px) !important;
    padding-inline: 11px !important;
  }
}

/* Refino visual profissional: FAQ + cartões */
#faq .faq-list {
  display: grid;
  gap: 14px;
}

#faq .faq-item {
  border-radius: 16px !important;
  border: 1px solid rgba(170, 140, 115, 0.14) !important;
  background: linear-gradient(165deg, #ffffff 0%, #fcfaf8 100%) !important;
  box-shadow:
    0 2px 10px rgba(0, 0, 0, 0.035),
    0 0 0 1px rgba(170, 140, 115, 0.05) !important;
  overflow: hidden;
}

#faq .faq-q {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 22px 22px 14px !important;
  cursor: pointer;
}

#faq .faq-q::after {
  content: "+";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  border: 1px solid rgba(170, 140, 115, 0.35);
  background: rgba(170, 140, 115, 0.08);
  color: var(--c1);
  font-family: Inter, sans-serif;
  font-size: 19px;
  font-weight: 700;
  line-height: 1;
  margin-left: auto;
  flex-shrink: 0;
  margin-top: 0;
  opacity: 0.8;
  transition:
    transform 0.25s cubic-bezier(0.22, 1, 0.36, 1),
    background 0.25s ease,
    border-color 0.25s ease,
    opacity 0.25s ease;
}

#faq .faq-item.open .faq-q::after {
  content: "−";
  transform: scale(1.04);
  background: rgba(170, 140, 115, 0.14);
  border-color: rgba(170, 140, 115, 0.55);
  opacity: 1;
}

#faq .faq-a {
  padding: 0 22px !important;
  max-height: 0 !important;
  margin-top: 0 !important;
  opacity: 0 !important;
  transform: translateY(-6px) !important;
  overflow: hidden !important;
  transition:
    max-height 0.44s cubic-bezier(0.22, 1, 0.36, 1),
    opacity 0.28s ease,
    transform 0.28s ease,
    margin-top 0.28s ease,
    padding-bottom 0.28s ease !important;
}

#faq .faq-item.open .faq-a {
  max-height: var(--faq-max, 340px) !important;
  margin-top: 2px !important;
  padding-bottom: 20px !important;
  opacity: 1 !important;
  transform: translateY(0) !important;
}

#beneficios .ben {
  border-radius: 18px !important;
  padding: 30px 24px 24px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: 6px;
  min-height: 100%;
}

#beneficios .ben-title {
  margin: 0 0 10px !important;
  text-wrap: balance;
}

#beneficios .ben-text {
  flex: 1 1 auto;
  margin: 0;
  text-wrap: pretty;
}

#beneficios .ben-result {
  margin-top: 14px !important;
  display: inline-flex !important;
  align-self: flex-start !important;
  line-height: 1.4 !important;
}

#como-funciona .step-card {
  min-height: 280px;
  padding: 30px 22px 24px;
  border-radius: 18px;
}

#como-funciona .steps-title {
  margin: 8px auto 10px;
  max-width: 18ch;
  text-wrap: balance;
}

#como-funciona .steps-text {
  margin: 0 auto;
  max-width: 31ch;
  text-wrap: pretty;
}

@media (max-width: 768px) {
  #faq .faq-q {
    padding: 18px 16px 12px !important;
  }

  #faq .faq-a {
    padding-inline: 16px !important;
  }

  #faq .faq-item.open .faq-a {
    padding-bottom: 16px !important;
  }

  #como-funciona .step-card {
    min-height: auto;
    padding: 24px 18px 20px;
  }

  #beneficios .ben {
    padding: 24px 18px 20px !important;
  }
}

@media (max-width: 420px) {
  #beneficios .ben-result {
    font-size: 9.6px !important;
    padding-inline: 10px !important;
  }
}
