/* ═══════════════════════════════════════════════════════════════
   MAPA NUMEROLÓGICO CABALÍSTICO : Aura Estelar
   Estilo principal
   ═══════════════════════════════════════════════════════════════ */

/* ─── FONTES LOCAIS ─── */
@font-face {
  font-family: 'Jost';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('../fonts/jost-normal-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF,
    U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020,
    U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Jost';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('../fonts/jost-normal.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
    U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193,
    U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Jost';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url('../fonts/jost-italic-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF,
    U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020,
    U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Jost';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url('../fonts/jost-italic.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
    U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193,
    U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ─── VARIÁVEIS ─── */
:root {
  /* Backgrounds */
  --bg-0:      #07050F;
  --bg-1:      #0F0C21;
  --bg-2:      #14103A;
  --bg-3:      #1B1648;
  --bg-card:   #130F2E;
  --bg-glass:  rgba(15, 12, 33, 0.7);

  /* Dourado (paleta principal) */
  --g0:        #1a0e00;
  --g1:        #3d2200;
  --g2:        #7a4800;
  --g3:        #b07020;
  --g4:        #c4922a;   /* gold primário */
  --g5:        #d4a840;
  --g6:        #e8c86a;
  --g7:        #f2dca0;
  --g8:        #faf0d8;

  /* Texto */
  --t0:        #faf4ea;   /* título */
  --t1:        #e8dcc8;   /* corpo */
  --t2:        #c8ae8e;   /* secundário — contraste mínimo 6:1 nos fundos escuros */
  --t3:        #9c8464;   /* terciário — contraste mínimo 4.5:1 nos fundos escuros */

  /* Acentos */
  --crimson:   #7a1a28;
  --crimson-l: #a83040;
  --indigo:    #1B1648;
  --indigo-l:  #2A1F6E;
  --violet:    #3A1870;

  /* Roxo (acento complementar) */
  --purple:    #5B4BCE;
  --purple-l:  #7B6EE8;
  --purple-m:  #3D3499;

  /* Seção clara */
  --light-bg:     #F4F2FB;
  --light-card:   #FFFFFF;
  --light-text:   #16123A;
  --light-text-m: #5a5677;

  /* Glows */
  --glow-sm:   0 0 12px rgba(196,146,42,.35);
  --glow-md:   0 0 28px rgba(196,146,42,.40), 0 0 6px rgba(196,146,42,.20);
  --glow-lg:   0 0 60px rgba(196,146,42,.35), 0 0 20px rgba(196,146,42,.20);
  --glow-btn:  0 0 40px rgba(196,146,42,.50), 0 8px 32px rgba(0,0,0,.60);

  /* Bordas */
  --border-gold:   1px solid rgba(196,146,42,.25);
  --border-gold-h: 1px solid rgba(196,146,42,.60);

  /* Tipografia (base 18px — leitura confortável para público 40+) */
  --font:      'Jost', system-ui, sans-serif;
  --fs-xs:     0.833rem;   /* ~15px — só para rótulos/badges */
  --fs-sm:     0.944rem;   /* ~17px — texto secundário */
  --fs-base:   1rem;       /* 18px  — corpo principal */
  --fs-lg:     1.167rem;   /* ~21px */
  --fs-xl:     1.333rem;   /* ~24px */
  --fs-2xl:    1.556rem;   /* ~28px */
  --fs-3xl:    1.889rem;   /* ~34px */
  --fs-4xl:    2.222rem;   /* 40px  */
  --fs-5xl:    2.778rem;   /* 50px  */
  --fs-6xl:    3.333rem;   /* 60px  */
  --fs-7xl:    4rem;       /* 72px  */
  --fs-8xl:    5.333rem;   /* 96px  */

  /* Espaçamento */
  --section-y: clamp(3rem, 6vw, 5rem);
  --container: min(1180px, 92vw);

  /* Transições */
  --ease-out:  cubic-bezier(0.22, 1, 0.36, 1);
  --ease-back: cubic-bezier(0.34, 1.56, 0.64, 1);
}

/* ─── RESET ─── */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; font-size: 18px; -webkit-text-size-adjust: 100%; }
body {
  font-family: var(--font);
  background: var(--bg-0);
  color: var(--t1);
  line-height: 1.8;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
img, svg { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
ul, ol { list-style: none; }
button { cursor: pointer; font-family: var(--font); border: none; background: none; }
input, textarea, select { font-family: var(--font); }

/* ─── CURSOR (custom cursor desabilitado) ─── */
#cursor, #cursor-dot { display: none !important; }

/*#cursor {
  position: fixed; top: 0; left: 0; z-index: 9999;
  width: 20px; height: 20px;
  border: 1.5px solid var(--g5);
  border-radius: 50%;
  pointer-events: none;
  transform: translate(-50%, -50%);
  transition: width .25s var(--ease-out), height .25s var(--ease-out),
              background .25s, border-color .25s, opacity .3s;
  mix-blend-mode: normal;
}
#cursor-dot {
  position: fixed; top: 0; left: 0; z-index: 10000;
  width: 4px; height: 4px;
  background: var(--g6);
  border-radius: 50%;
  pointer-events: none;
  transform: translate(-50%, -50%);
}
body:has(a:hover) #cursor,
body:has(button:hover) #cursor {
  width: 40px; height: 40px;
  background: rgba(196,146,42,.08);
  border-color: var(--g6);
}
*/
/* ─── UTILITÁRIOS ─── */
.container { width: var(--container); margin-inline: auto; }
.text-center { text-align: center; }
.text-gold { color: var(--g5); }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }

/* Reveal on scroll */
.reveal {
  opacity: 0;
  transform: translateY(40px);
  transition: opacity .8s var(--ease-out), transform .8s var(--ease-out);
}
.reveal.visible { opacity: 1; transform: translateY(0); }
.reveal-delay-1 { transition-delay: .1s; }
.reveal-delay-2 { transition-delay: .2s; }
.reveal-delay-3 { transition-delay: .3s; }
.reveal-delay-4 { transition-delay: .4s; }
.reveal-delay-5 { transition-delay: .5s; }
.reveal-delay-6 { transition-delay: .6s; }

/* Linha decorativa dourada */
.gold-line {
  display: block; width: 60px; height: 1px;
  background: linear-gradient(90deg, transparent, var(--g5), transparent);
  margin-inline: auto;
}

/* Badge de seção */
.section-badge {
  display: inline-flex; align-items: center; gap: .5rem;
  font-size: var(--fs-xs);
  font-weight: 600;
  letter-spacing: .15em;
  text-transform: uppercase;
  color: var(--g5);
  border: var(--border-gold);
  border-radius: 100px;
  padding: .35rem 1rem;
  margin-bottom: 1.5rem;
}
.section-badge::before { content: '✦'; font-size: .6em; }

/* Título de seção */
.section-title {
  font-size: clamp(var(--fs-3xl), 4vw, var(--fs-5xl));
  font-weight: 300;
  color: var(--t0);
  line-height: 1.2;
  letter-spacing: -.02em;
  margin-bottom: 1rem;
}
.section-title strong {
  font-weight: 700;
  background: linear-gradient(135deg, var(--g6), var(--g4), var(--g6));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.section-desc {
  font-size: var(--fs-lg);
  color: var(--t2);
  max-width: 60ch;
  margin-inline: auto;
  line-height: 1.8;
}

/* ─── SEÇÃO CLARA ─── */
#features.section-light,
#bonus.section-light {
  background: var(--light-bg);
}
.section-light .section-badge {
  color: #3D2FA8;
  border: 1px solid rgba(91, 75, 206, 0.30);
  background: rgba(91, 75, 206, 0.06);
}
.section-light .section-badge::before { color: #3D2FA8; }
.section-light .section-title { color: var(--light-text); }
.section-light .section-title strong {
  background: linear-gradient(135deg, var(--g3), var(--g5), var(--g4));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.section-light .section-desc  { color: var(--light-text-m); }
.section-light .feature-card {
  background: var(--light-card);
  border-color: rgba(91, 75, 206, 0.13);
  box-shadow: 0 2px 16px rgba(91, 75, 206, 0.07), 0 1px 4px rgba(0,0,0,0.05);
}
.section-light .feature-card:hover {
  border-color: rgba(196,146,42,.45);
  box-shadow: var(--glow-md), 0 20px 48px rgba(0,0,0,0.08);
}
.section-light .feature-card-title { color: var(--light-text); }
.section-light .feature-card-desc  { color: var(--light-text-m); }
.section-light .feature-card-list li { color: var(--light-text-m); }
.section-light .feature-card-num { color: rgba(91, 75, 206, 0.08); }
#bonus.section-light .bonus-card {
  box-shadow: var(--glow-md), 0 20px 60px rgba(0,0,0,0.22);
}

/* Texto shimmer */
.shimmer {
  background: linear-gradient(110deg, var(--g4) 0%, var(--g7) 45%, var(--g4) 55%, var(--g6) 100%);
  background-size: 300% 100%;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  animation: shimmer 4s linear infinite;
}
@keyframes shimmer {
  0% { background-position: 100% 0; }
  100% { background-position: -100% 0; }
}

/* ─── BOTÕES ─── */
.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: .6rem;
  font-size: var(--fs-base);
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  padding: 1.1rem 2.8rem;
  border-radius: 4px;
  transition: all .35s var(--ease-out);
  position: relative;
  overflow: hidden;
}
.btn::before {
  content: '';
  position: absolute; inset: 0;
  background: rgba(255,255,255,.08);
  transform: translateX(-100%) skewX(-15deg);
  transition: transform .5s var(--ease-out);
}
.btn:hover::before { transform: translateX(100%) skewX(-15deg); }

.btn-primary {
  background: linear-gradient(135deg, var(--g5), var(--g7), var(--g6));
  background-size: 200% 200%;
  color: #000;
  box-shadow: 0 0 40px rgba(232,200,106,.55), 0 8px 32px rgba(0,0,0,.60);
  animation: btn-pulse 3s ease-in-out infinite;
}
.btn-primary:hover {
  transform: translateY(-3px) scale(1.02);
  box-shadow: 0 0 70px rgba(242,220,160,.70), 0 12px 40px rgba(0,0,0,.7);
}
@keyframes btn-pulse {
  0%, 100% { box-shadow: 0 0 40px rgba(232,200,106,.55), 0 8px 32px rgba(0,0,0,.60); background-position: 0% 50%; }
  50% { box-shadow: 0 0 65px rgba(242,220,160,.65), 0 8px 40px rgba(0,0,0,.70); background-position: 100% 50%; }
}

.btn-outline {
  border: var(--border-gold-h);
  color: var(--g6);
  background: transparent;
}
.btn-outline:hover {
  background: rgba(196,146,42,.08);
  box-shadow: var(--glow-sm);
  transform: translateY(-2px);
}

.btn-lg { font-size: var(--fs-lg); padding: 1.3rem 3.5rem; }
.btn-xl { font-size: var(--fs-xl); padding: 1.5rem 4rem; letter-spacing: .08em; }

/* ─── NAVEGAÇÃO ─── */
#nav {
  position: fixed; top: 0; left: 0; right: 0; z-index: 1000;
  padding: 1.25rem 0;
  transition: all .4s var(--ease-out);
}
#nav.scrolled {
  background: rgba(2,2,8,.92);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  padding: .85rem 0;
  border-bottom: var(--border-gold);
  box-shadow: 0 4px 40px rgba(0,0,0,.6);
}
.nav-inner {
  display: flex; align-items: center; justify-content: space-between;
}
.nav-logo {
  font-size: var(--fs-lg);
  font-weight: 700;
  letter-spacing: .1em;
  color: var(--t0);
  display: flex; align-items: center; gap: .6rem;
}
.nav-logo-symbol {
  width: 32px; height: 32px;
  filter: drop-shadow(0 0 8px rgba(196,146,42,.6));
}
.nav-cta { font-size: var(--fs-sm); padding: .7rem 1.8rem; }

/* ─── HERO ─── */
#hero {
  position: relative;
  min-height: 100svh;
  display: flex; align-items: center; justify-content: center;
  overflow: hidden;
  padding: 120px 0 80px;
}
#sacred-canvas {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  pointer-events: none;
}
.hero-gradient {
  position: absolute; inset: 0;
  background:
    radial-gradient(ellipse 80% 60% at 50% 30%, rgba(30,10,70,.55) 0%, transparent 70%),
    radial-gradient(ellipse 60% 80% at 80% 80%, rgba(90,40,0,.20) 0%, transparent 60%),
    radial-gradient(ellipse 50% 60% at 10% 70%, rgba(10,5,40,.30) 0%, transparent 60%),
    linear-gradient(180deg, var(--bg-0) 0%, rgba(7,5,15,.85) 50%, var(--bg-0) 100%);
  pointer-events: none;
}
.hero-inner {
  position: relative; z-index: 2;
  text-align: center;
  max-width: 900px;
  margin-inline: auto;
  padding-inline: 1.5rem;
}
.hero-badge {
  display: inline-flex; align-items: center; gap: .6rem;
  font-size: var(--fs-xs);
  font-weight: 600;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--g6);
  border: 1px solid rgba(196,146,42,.35);
  border-radius: 100px;
  padding: .45rem 1.2rem;
  margin-bottom: 2rem;
  background: rgba(196,146,42,.05);
  backdrop-filter: blur(8px);
  animation: fade-down .8s var(--ease-out) both;
}
.hero-badge::before { content: '✦'; opacity: .7; }
.hero-badge::after  { content: '✦'; opacity: .7; }

.hero-title {
  font-size: clamp(var(--fs-4xl), 6vw, var(--fs-7xl));
  font-weight: 300;
  color: var(--t0);
  line-height: 1.15;
  letter-spacing: -.03em;
  margin-bottom: 1.5rem;
  animation: fade-up .9s var(--ease-out) .1s both;
}
.hero-title strong {
  display: block;
  font-weight: 800;
  font-size: 1.05em;
}
.hero-sub {
  font-size: clamp(var(--fs-lg), 2vw, var(--fs-xl));
  font-weight: 300;
  color: var(--t2);
  max-width: 65ch;
  margin: 0 auto 2.5rem;
  line-height: 1.75;
  animation: fade-up .9s var(--ease-out) .2s both;
}
.hero-cta-wrap {
  display: flex; flex-direction: column; align-items: center; gap: 1rem;
  animation: fade-up .9s var(--ease-out) .3s both;
}
.hero-price-hint {
  font-size: var(--fs-base);
  color: var(--t3);
  letter-spacing: .04em;
}
.hero-price-hint strong { color: var(--g5); font-weight: 600; }

.hero-trust {
  display: flex; flex-wrap: wrap; justify-content: center; gap: .5rem 2rem;
  margin-top: 2.5rem;
  animation: fade-up .9s var(--ease-out) .4s both;
}
.hero-trust span {
  display: flex; align-items: center; gap: .4rem;
  font-size: var(--fs-base);
  color: var(--t2);
}
.hero-trust span::before {
  content: '✓';
  color: var(--g4);
  font-weight: 700;
  font-size: .8em;
}

/* ─── SEÇÃO REVELAÇÃO ─── */
#revelation {
  padding: clamp(3rem, 6vw, 5rem) 0;
  background: linear-gradient(180deg, var(--bg-0) 0%, var(--bg-1) 50%, var(--bg-0) 100%);
  position: relative;
  overflow: hidden;
}
#revelation::before {
  content: '';
  position: absolute; top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  width: 600px; height: 600px;
  background: radial-gradient(circle, rgba(196,146,42,.06) 0%, transparent 70%);
  pointer-events: none;
}
.revelation-inner {
  max-width: 800px; margin-inline: auto;
  text-align: center; padding-inline: 1.5rem;
}
.revelation-ornament {
  font-size: var(--fs-4xl);
  color: var(--g4);
  opacity: .3;
  letter-spacing: .5em;
  display: block;
  margin-bottom: 2rem;
}
.revelation-quote {
  font-size: clamp(var(--fs-xl), 3vw, var(--fs-3xl));
  font-weight: 300;
  color: var(--t0);
  line-height: 1.7;
  letter-spacing: -.01em;
}
.revelation-quote em {
  font-style: italic;
  color: var(--g6);
}
.revelation-quote strong {
  font-weight: 700;
  color: var(--t0);
}
.revelation-separator {
  display: flex; align-items: center; gap: 1.5rem;
  margin: 3rem auto;
  max-width: 400px;
}
.revelation-separator::before,
.revelation-separator::after {
  content: ''; flex: 1; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(196,146,42,.4), transparent);
}
.revelation-separator-symbol {
  color: var(--g5); font-size: var(--fs-lg);
  animation: rotate-slow 20s linear infinite;
}
@keyframes rotate-slow { to { transform: rotate(360deg); } }

/* ─── SEÇÃO O QUE VOCÊ VAI ENCONTRAR ─── */
#features {
  padding: var(--section-y) 0;
  background: var(--bg-1);
  position: relative;
}
#features::before,
#features::after {
  content: '';
  position: absolute; left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(196,146,42,.35), transparent);
}
#features::before { top: 0; }
#features::after  { bottom: 0; }

.features-header { text-align: center; margin-bottom: 4rem; }
.features-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 1.5rem;
}
.feature-card {
  background: var(--bg-card);
  border: var(--border-gold);
  border-radius: 12px;
  padding: 2.5rem 2rem;
  position: relative;
  overflow: hidden;
  transition: transform .4s var(--ease-out), box-shadow .4s var(--ease-out), border-color .4s;
}
.feature-card::before {
  content: '';
  position: absolute; inset: 0; border-radius: 12px;
  background: linear-gradient(135deg, rgba(196,146,42,.06) 0%, transparent 60%);
  opacity: 0;
  transition: opacity .4s;
}
.feature-card:hover {
  transform: translateY(-6px);
  box-shadow: var(--glow-md), 0 20px 60px rgba(0,0,0,.5);
  border-color: rgba(196,146,42,.5);
}
.feature-card:hover::before { opacity: 1; }
.feature-card-icon {
  width: 60px; height: 60px;
  margin: 0 auto 1.5rem;
  transform-origin: center center;
  will-change: transform, filter;
  animation: icon-spin-glow 9s linear infinite;
}
/* Fases distintas para cada card — evita rotação sincronizada */
.feature-card:nth-child(2) .feature-card-icon { animation-delay: -1.5s; }
.feature-card:nth-child(3) .feature-card-icon { animation-delay: -3s; }
.feature-card:nth-child(4) .feature-card-icon { animation-delay: -4.5s; }
.feature-card:nth-child(5) .feature-card-icon { animation-delay: -6s; }
.feature-card:nth-child(6) .feature-card-icon { animation-delay: -7.5s; }
@keyframes icon-spin-glow {
  0%   { transform: rotate(0deg);   filter: drop-shadow(0 0 8px  rgba(196,146,42,.35)); }
  50%  { transform: rotate(180deg); filter: drop-shadow(0 0 22px rgba(196,146,42,.70)); }
  100% { transform: rotate(360deg); filter: drop-shadow(0 0 8px  rgba(196,146,42,.35)); }
}
.section-light .feature-card-icon {
  animation-name: icon-spin-glow-light;
}
@keyframes icon-spin-glow-light {
  0%   { transform: rotate(0deg);   filter: saturate(1.6) brightness(0.78) drop-shadow(0 0 5px  rgba(140,80,0,.55)); }
  50%  { transform: rotate(180deg); filter: saturate(1.6) brightness(0.75) drop-shadow(0 0 12px rgba(140,80,0,.85)); }
  100% { transform: rotate(360deg); filter: saturate(1.6) brightness(0.78) drop-shadow(0 0 5px  rgba(140,80,0,.55)); }
}
.feature-card-num {
  position: absolute; top: 1.5rem; right: 1.5rem;
  font-size: var(--fs-5xl);
  font-weight: 800;
  color: rgba(196,146,42,.06);
  line-height: 1;
  letter-spacing: -.05em;
}
.feature-card-title {
  font-size: var(--fs-xl);
  font-weight: 600;
  color: var(--t0);
  margin-bottom: .75rem;
  letter-spacing: -.01em;
}
.feature-card-desc {
  color: var(--t2);
  font-size: var(--fs-base);
  line-height: 1.8;
}
.feature-card-list {
  margin-top: 1rem;
  display: flex; flex-direction: column; gap: .4rem;
}
.feature-card-list li {
  font-size: var(--fs-base);
  color: var(--t2);
  display: flex; align-items: flex-start; gap: .6rem;
  line-height: 1.75;
}
.feature-card-list li::before {
  content: '◆';
  color: var(--g4);
  font-size: .55em;
  flex-shrink: 0;
  margin-top: .45em;
}

/* ─── COMO FUNCIONA ─── */
#how {
  padding: var(--section-y) 0;
  background: #191440;
  position: relative;
  overflow: hidden;
}
.how-bg-img {
  position: absolute; inset: 0;
  background: url('../images/how-bg.webp') center/cover no-repeat;
  opacity: .08;
  filter: blur(2px) saturate(0.3) brightness(0.5);
  pointer-events: none;
}
.how-bg-grad {
  position: absolute; inset: 0;
  background: linear-gradient(180deg, #191440 0%, rgba(25,20,64,.25) 40%, rgba(25,20,64,.25) 60%, #191440 100%);
  pointer-events: none;
}
.how-header { text-align: center; margin-bottom: 4.5rem; position: relative; z-index: 1; }
.how-steps {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 3rem;
  position: relative;
  z-index: 1;
}
.how-connector {
  position: absolute;
  top: 55px;
  left: calc(16.66% + 55px);
  right: calc(16.66% + 55px);
  height: 1px;
  pointer-events: none;
  z-index: 0;
  background: linear-gradient(90deg, var(--g4), var(--g6), var(--g4));
  opacity: .3;
}
.how-step {
  text-align: center;
  position: relative;
  z-index: 1;
  display: flex; flex-direction: column; align-items: center;
}
.how-step-badge {
  width: 110px; height: 110px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--bg-2), var(--bg-3));
  border: 1.5px solid rgba(196,146,42,.45);
  display: flex; align-items: center; justify-content: center;
  margin-bottom: 2rem;
  position: relative;
  box-shadow: 0 0 40px rgba(196,146,42,.12), inset 0 0 30px rgba(196,146,42,.06);
  transition: all .4s var(--ease-out);
}
.how-step-badge::before {
  content: '';
  position: absolute; inset: -8px;
  border-radius: 50%;
  border: 1px solid rgba(196,146,42,.12);
  animation: spin-slow 25s linear infinite;
}
.how-step-badge::after {
  content: '';
  position: absolute; inset: -18px;
  border-radius: 50%;
  border: 1px dashed rgba(196,146,42,.06);
}
.how-step:hover .how-step-badge {
  box-shadow: var(--glow-md);
  border-color: rgba(196,146,42,.75);
  transform: translateY(-5px);
}
.how-step-num {
  font-size: var(--fs-3xl);
  font-weight: 800;
  background: linear-gradient(135deg, var(--g5), var(--g7));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  line-height: 1;
}
.how-step-title {
  font-size: var(--fs-xl);
  font-weight: 600;
  color: var(--t0);
  margin-bottom: .75rem;
  letter-spacing: -.01em;
}
.how-step-desc {
  color: var(--t2);
  font-size: var(--fs-base);
  line-height: 1.85;
  max-width: 28ch;
}

/* ─── DIFERENCIAL ─── */
#differential {
  padding: var(--section-y) 0;
  background: var(--bg-1);
  position: relative;
  overflow: hidden;
}
.diff-inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 5rem;
  align-items: center;
}
.diff-content {}
.diff-quote-block {
  margin: 2rem 0;
  padding: 2rem;
  background: var(--bg-card);
  border-left: 3px solid var(--g4);
  border-radius: 0 8px 8px 0;
}
.diff-quote {
  font-size: var(--fs-xl);
  font-weight: 300;
  color: var(--t0);
  font-style: italic;
  line-height: 1.7;
}
.diff-points { margin-top: 2rem; display: flex; flex-direction: column; gap: .8rem; }
.diff-point {
  display: flex; gap: 1rem; align-items: flex-start;
}
.diff-point-icon {
  width: 24px; height: 24px;
  background: linear-gradient(135deg, var(--g3), var(--g5));
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
  font-size: .6em;
  color: #000;
  font-weight: 700;
  margin-top: .2rem;
}
.diff-point-text { color: var(--t1); line-height: 1.7; }

/* Árvore da Vida (SVG) */
.sefirot-wrap {
  position: relative;
  display: flex; align-items: center; justify-content: center;
}
#sefirot-svg {
  width: 100%;
  max-width: 420px;
  filter: drop-shadow(0 0 30px rgba(196,146,42,.15));
}

/* ─── TRANSFORMAÇÃO ─── */
#transformation {
  padding: var(--section-y) 0;
  background: linear-gradient(180deg, var(--bg-0) 0%, var(--indigo) 50%, var(--bg-0) 100%);
  position: relative;
  text-align: center;
}
.transform-header { margin-bottom: 4rem; }
.transform-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 1.5rem;
  margin-top: 3rem;
}
.transform-item {
  background: var(--bg-card);
  border: var(--border-gold);
  border-radius: 12px;
  overflow: hidden;
  transition: all .4s var(--ease-out);
  display: flex;
  flex-direction: column;
}
.transform-item:hover {
  border-color: rgba(196,146,42,.5);
  transform: translateY(-6px);
  box-shadow: var(--glow-md);
}
.transform-item-img-wrap {
  position: relative;
  height: 200px;
  overflow: hidden;
}
.transform-item-img {
  width: 100%; height: 100%;
  object-fit: cover;
  transition: transform .55s var(--ease-out), filter .4s;
  filter: saturate(0.55) brightness(0.72);
}
.transform-item:hover .transform-item-img {
  transform: scale(1.07);
  filter: saturate(0.75) brightness(0.85);
}
.transform-item-img-overlay {
  position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(196,146,42,.06) 0%, rgba(7,11,23,.75) 100%);
}
.transform-item-body {
  padding: 1.5rem;
  flex: 1;
  text-align: left;
}
.transform-item-title {
  font-size: var(--fs-lg);
  font-weight: 600;
  color: var(--t0);
  margin-bottom: .5rem;
  letter-spacing: -.01em;
}
.transform-item-desc {
  font-size: var(--fs-base);
  color: var(--t2);
  line-height: 1.75;
}

/* ─── BÔNUS ─── */
#bonus {
  padding: var(--section-y) 0;
  background: var(--bg-1);
  position: relative;
}
#bonus::before,
#bonus::after {
  content: '';
  position: absolute; left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(196,146,42,.35), transparent);
}
#bonus::before { top: 0; }
#bonus::after  { bottom: 0; }
.bonus-card {
  max-width: 800px;
  margin-inline: auto;
  background: linear-gradient(135deg, var(--bg-card) 0%, var(--g0) 100%);
  border: 1px solid rgba(196,146,42,.4);
  border-radius: 16px;
  padding: 3.5rem;
  position: relative;
  overflow: hidden;
  text-align: center;
  box-shadow: var(--glow-md), 0 30px 80px rgba(0,0,0,.6);
}
.bonus-card::before {
  content: '';
  position: absolute; inset: 0;
  background: radial-gradient(ellipse 80% 60% at 50% 0%, rgba(196,146,42,.12) 0%, transparent 70%);
  pointer-events: none;
}
.bonus-tag {
  display: inline-block;
  background: linear-gradient(90deg, var(--g3), var(--g5));
  color: #000;
  font-size: var(--fs-xs);
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  padding: .3rem .9rem;
  border-radius: 3px;
  margin-bottom: 1.5rem;
}
.bonus-title {
  font-size: var(--fs-3xl);
  font-weight: 700;
  color: var(--t0);
  margin-bottom: 1rem;
}
.bonus-desc {
  font-size: var(--fs-lg);
  color: var(--t2);
  max-width: 55ch;
  margin-inline: auto;
  line-height: 1.8;
}
.bonus-items {
  display: flex; flex-wrap: wrap; justify-content: center; gap: .75rem;
  margin-top: 2rem;
}
.bonus-item {
  display: flex; align-items: center; gap: .5rem;
  background: rgba(196,146,42,.08);
  border: var(--border-gold);
  border-radius: 8px;
  padding: .6rem 1.2rem;
  font-size: var(--fs-base);
  color: var(--g6);
}
.bonus-item::before { content: '✦'; font-size: .7em; }
.bonus-value {
  margin-top: 2rem;
  font-size: var(--fs-base);
  color: var(--t3);
  letter-spacing: .04em;
}
.bonus-value strong { color: var(--g5); font-weight: 600; }
.bonus-free-label {
  font-size: clamp(2.6rem, 8vw, 4.2rem);
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
  line-height: 1;
  margin-bottom: 1.2rem;
  background: linear-gradient(110deg,
    var(--g3) 0%, var(--g5) 20%, var(--g7) 45%,
    var(--g8) 50%, var(--g7) 55%, var(--g5) 80%, var(--g3) 100%
  );
  background-size: 300% 100%;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  animation: free-shine 2.8s linear infinite;
}
@keyframes free-shine {
  0%   { background-position: 100% 0; }
  100% { background-position: -100% 0; }
}
.bonus-value-wrap {
  margin-top: 2rem;
  display: flex; flex-direction: column; gap: .5rem; align-items: center;
}
.bonus-value-old {
  font-size: var(--fs-sm);
  color: var(--t3);
  text-decoration: line-through;
  opacity: .75;
}
.bonus-value-free {
  font-size: var(--fs-xl);
  font-weight: 700;
  background: linear-gradient(90deg, #4ade80, #a3e635, #4ade80, #86efac, #4ade80);
  background-size: 300% 100%;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  animation: green-flow 3s linear infinite;
}
@keyframes green-flow {
  0%   { background-position: 0% 50%; }
  100% { background-position: 200% 50%; }
}

/* ─── OBJEÇÃO ─── */
#objection {
  padding: clamp(2.5rem, 5vw, 5rem) 0;
  background: var(--bg-0);
  text-align: center;
}
.objection-inner { max-width: 700px; margin-inline: auto; }
.objection-title {
  font-size: clamp(var(--fs-3xl), 4vw, var(--fs-5xl));
  font-weight: 300;
  color: var(--t0);
  line-height: 1.3;
  margin-bottom: 1.5rem;
  letter-spacing: -.02em;
}
.objection-title strong { font-weight: 700; color: var(--g5); }
.objection-text {
  font-size: var(--fs-xl);
  color: var(--t2);
  line-height: 1.8;
  max-width: 55ch;
  margin-inline: auto;
}

/* ─── PREÇO / CTA PRINCIPAL ─── */
#pricing {
  padding: var(--section-y) 0;
  background: var(--bg-1);
  position: relative;
  overflow: hidden;
}
#pricing.section-light {
  background: var(--light-bg);
}
#pricing.section-light .pricing-bg { opacity: 0; }
#pricing.section-light::before {
  background:
    linear-gradient(180deg, var(--light-bg) 0%, transparent 30%, transparent 70%, var(--light-bg) 100%),
    radial-gradient(ellipse 80% 60% at 50% 50%, rgba(196,146,42,.05) 0%, transparent 70%);
}
#pricing.section-light::after {
  content: '';
  position: absolute; left: 0; right: 0; top: 0; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(196,146,42,.35), transparent);
}
#pricing.section-light .section-badge { color: #3D2FA8; border: 1px solid rgba(91,75,206,.30); background: rgba(91,75,206,.06); }
#pricing.section-light .section-badge::before { color: #3D2FA8; }
#pricing.section-light .section-title { color: var(--light-text); }
#pricing.section-light .pricing-includes li { color: var(--light-text); }
#pricing.section-light .pricing-box {
  box-shadow: var(--glow-md), 0 20px 60px rgba(0,0,0,0.20);
}
.pricing-bg {
  position: absolute; inset: 0;
  background: url('../images/pricing-bg.webp') center 30% / cover no-repeat;
  opacity: .07;
  filter: saturate(0.4) brightness(0.6);
  pointer-events: none;
}
#pricing::before {
  content: '';
  position: absolute; inset: 0;
  background:
    linear-gradient(180deg, var(--bg-1) 0%, transparent 30%, transparent 70%, var(--bg-1) 100%),
    radial-gradient(ellipse 80% 60% at 50% 50%, rgba(196,146,42,.06) 0%, transparent 70%);
  pointer-events: none;
}
.pricing-inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4rem;
  align-items: center;
}
.pricing-left {}
.pricing-includes {
  margin-top: 2rem;
  display: flex; flex-direction: column; gap: .75rem;
}
.pricing-includes li {
  display: flex; align-items: center; gap: .8rem;
  font-size: var(--fs-base);
  color: var(--t1);
}
.pricing-includes li::before {
  content: '✦';
  color: var(--g5);
  font-size: .7em;
  flex-shrink: 0;
}
.pricing-right {}
.pricing-box {
  background: var(--bg-card);
  border: 1px solid rgba(196,146,42,.35);
  border-radius: 16px;
  padding: 3rem 2.5rem;
  text-align: center;
  position: relative;
  overflow: hidden;
  box-shadow: var(--glow-md), 0 30px 80px rgba(0,0,0,.5);
}
.pricing-box::before {
  content: '';
  position: absolute; top: 0; left: 0; right: 0; height: 2px;
  background: linear-gradient(90deg, transparent, var(--g5), transparent);
}
.pricing-box-badge {
  background: linear-gradient(135deg, var(--crimson), var(--crimson-l));
  color: #fff;
  font-size: var(--fs-xs);
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  padding: .35rem .9rem;
  border-radius: 100px;
  display: inline-block;
  margin-bottom: 1.5rem;
}
.pricing-original {
  font-size: var(--fs-lg);
  color: var(--t3);
  text-decoration: line-through;
  margin-bottom: .25rem;
}
.pricing-price {
  font-size: clamp(var(--fs-5xl), 7vw, var(--fs-8xl));
  font-weight: 800;
  color: var(--t0);
  line-height: 1;
  letter-spacing: -.04em;
  margin-bottom: .5rem;
}
.pricing-price sup {
  font-size: .35em;
  font-weight: 400;
  vertical-align: super;
  color: var(--g6);
}
.pricing-price-note {
  font-size: var(--fs-base);
  color: var(--t3);
  margin-bottom: 2rem;
}
.pricing-cta { width: 100%; }
.pricing-safe {
  display: flex; align-items: center; justify-content: center;
  flex-wrap: wrap; gap: .35rem 1rem;
  margin-top: 1.2rem;
  padding: .6rem 1rem;
  background: rgba(50,180,80,.07);
  border: 1px solid rgba(80,210,100,.18);
  border-radius: 8px;
  font-size: var(--fs-sm);
}
.pricing-safe-secure {
  display: flex; align-items: center; gap: .4rem;
  color: #5ed47a;
  font-weight: 600;
}
.pricing-safe-delivery { color: var(--t2); }
.pricing-safe-sep { color: var(--t3); opacity: .6; }

/* ─── FAQ ─── */
#faq {
  padding: var(--section-y) 0;
  background: var(--bg-1);
  position: relative;
}
#faq::before, #faq::after {
  content: '';
  position: absolute; left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(196,146,42,.2), transparent);
}
#faq::before { top: 0; }
#faq::after  { bottom: 0; }
.faq-header { text-align: center; margin-bottom: 3.5rem; }
.faq-list { max-width: 800px; margin-inline: auto; }
.faq-item {
  border-bottom: 1px solid rgba(196,146,42,.15);
  overflow: hidden;
}
.faq-item:first-child { border-top: 1px solid rgba(196,146,42,.15); }
.faq-question {
  display: flex; justify-content: space-between; align-items: center;
  padding: 1.5rem 0;
  font-size: var(--fs-lg);
  font-weight: 500;
  color: var(--t0);
  cursor: pointer;
  gap: 1.5rem;
  transition: color .3s;
  user-select: none;
}
.faq-question:hover { color: var(--g6); }
.faq-question.open { color: var(--g5); }
.faq-icon {
  width: 24px; height: 24px;
  border: var(--border-gold);
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
  font-size: var(--fs-lg);
  color: var(--g5);
  transition: transform .4s var(--ease-out), background .3s, border-color .3s;
  line-height: 1;
}
.faq-question.open .faq-icon {
  transform: rotate(45deg);
  background: rgba(196,146,42,.1);
  border-color: var(--g5);
}
.faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height .5s var(--ease-out), padding .4s;
}
.faq-answer-inner {
  padding-bottom: 1.5rem;
  color: var(--t2);
  font-size: var(--fs-base);
  line-height: 1.85;
  max-width: 70ch;
}

/* ─── GARANTIA ─── */
#guarantee {
  padding: 0px 0px 20px 0px;
  background: var(--bg-0);
  text-align: center;
}
.guarantee-inner { max-width: 700px; margin-inline: auto; }
.guarantee-icon {
  font-size: 4rem;
  margin-bottom: 1.5rem;
  display: block;
  filter: drop-shadow(0 0 16px rgba(196,146,42,.4));
}
.guarantee-title {
  font-size: var(--fs-3xl);
  font-weight: 700;
  color: var(--t0);
  margin-bottom: 1rem;
}
.guarantee-text {
  font-size: var(--fs-lg);
  color: var(--t2);
  line-height: 1.8;
  max-width: 55ch;
  margin-inline: auto;
}

/* ─── CTA FINAL ─── */
#final-cta {
  padding: var(--section-y) 0;
  background: linear-gradient(135deg, var(--bg-1) 0%, var(--indigo) 50%, var(--bg-1) 100%);
  position: relative;
  text-align: center;
  overflow: hidden;
}
#final-cta::before {
  content: '';
  position: absolute; inset: 0;
  background: radial-gradient(ellipse 70% 80% at 50% 50%, rgba(196,146,42,.08) 0%, transparent 70%);
}
.final-cta-inner { position: relative; z-index: 1; max-width: 700px; margin-inline: auto; }
.final-cta-title {
  font-size: clamp(var(--fs-3xl), 5vw, var(--fs-6xl));
  font-weight: 300;
  color: var(--t0);
  line-height: 1.2;
  letter-spacing: -.03em;
  margin-bottom: 1.5rem;
}
.final-cta-title strong {
  display: block;
  font-weight: 800;
}
.final-cta-sub {
  font-size: var(--fs-lg);
  color: var(--t2);
  max-width: 50ch;
  margin: 0 auto 2.5rem;
  line-height: 1.7;
}

/* ─── FOOTER ─── */
footer {
  background: var(--bg-1);
  border-top: var(--border-gold);
  padding: 4rem 0 2rem;
}
.footer-grid {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr;
  gap: 3rem;
  padding-bottom: 3rem;
  border-bottom: 1px solid rgba(196,146,42,.1);
}
.footer-brand-logo {
  display: flex; align-items: center; gap: .7rem;
  font-size: var(--fs-lg);
  font-weight: 700;
  color: var(--t0);
  letter-spacing: .08em;
  margin-bottom: 1rem;
}
.footer-brand-logo svg { filter: drop-shadow(0 0 6px rgba(196,146,42,.4)); }
.footer-tagline {
  font-size: var(--fs-base);
  color: var(--t3);
  line-height: 1.8;
  max-width: 36ch;
}
.footer-services {
  margin-top: 1rem;
  font-size: var(--fs-sm);
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--g4);
}
.footer-heading {
  font-size: var(--fs-base);
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--t0);
  margin-bottom: 1.2rem;
}
.footer-links { display: flex; flex-direction: column; gap: .6rem; }
.footer-links a {
  font-size: var(--fs-base);
  color: var(--t3);
  transition: color .25s;
  display: flex; align-items: center; gap: .4rem;
}
.footer-links a:hover { color: var(--g5); }
.footer-links a::before { content: '›'; color: var(--g4); }
.footer-social a {
  display: inline-flex; align-items: center; gap: .6rem;
  font-size: var(--fs-base);
  color: var(--t2);
  transition: color .25s;
}
.footer-social a:hover { color: var(--g5); }
.footer-bottom {
  padding-top: 2rem;
  text-align: center;
}
.footer-copyright {
  font-size: var(--fs-sm);
  color: var(--t3);
  margin-bottom: .5rem;
}
.footer-legal {
  font-size: var(--fs-sm);
  color: #7a6a54;   /* fixo — deliberadamente mais suave que --t3, mas ainda legível */
  line-height: 1.8;
  max-width: 80ch;
  margin-inline: auto;
}
.footer-cnpj {
  font-size: var(--fs-sm);
  color: #6e6050;   /* fixo — hierarquia visual sem perder legibilidade */
  margin-top: .5rem;
}

/* ─── MODAIS ─── */
.modal-overlay {
  position: fixed; inset: 0; z-index: 2000;
  background: rgba(0,0,0,.85);
  backdrop-filter: blur(8px);
  display: flex; align-items: center; justify-content: center;
  opacity: 0; pointer-events: none;
  transition: opacity .3s;
  padding: 1.5rem;
}
.modal-overlay.open { opacity: 1; pointer-events: all; }
.modal-box {
  background: var(--bg-2);
  border: var(--border-gold);
  border-radius: 12px;
  padding: 2.5rem;
  max-width: 680px;
  width: 100%;
  max-height: 80vh;
  overflow-y: auto;
  transform: scale(.95) translateY(20px);
  transition: transform .4s var(--ease-back);
}
.modal-overlay.open .modal-box { transform: scale(1) translateY(0); }
.modal-box::-webkit-scrollbar { width: 4px; }
.modal-box::-webkit-scrollbar-track { background: var(--bg-2); }
.modal-box::-webkit-scrollbar-thumb { background: var(--g3); border-radius: 2px; }
.modal-title {
  font-size: var(--fs-2xl);
  font-weight: 700;
  color: var(--t0);
  margin-bottom: 1.5rem;
  padding-right: 2rem;
}
.modal-content {
  font-size: var(--fs-base);
  color: var(--t2);
  line-height: 1.9;
}
.modal-content h3 { color: var(--g5); font-weight: 600; margin: 1.5rem 0 .5rem; }
.modal-close {
  position: absolute; top: 1.25rem; right: 1.25rem;
  width: 32px; height: 32px;
  border-radius: 50%;
  border: var(--border-gold);
  color: var(--t2);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.2rem;
  transition: all .25s;
}
.modal-close:hover { background: rgba(196,146,42,.1); color: var(--g5); }
.modal-box { position: relative; }

/* ─── ANIMAÇÕES ─── */
@keyframes fade-up {
  from { opacity: 0; transform: translateY(30px); }
  to   { opacity: 1; transform: translateY(0); }
}
@keyframes fade-down {
  from { opacity: 0; transform: translateY(-20px); }
  to   { opacity: 1; transform: translateY(0); }
}
@keyframes fade-in {
  from { opacity: 0; }
  to   { opacity: 1; }
}
@keyframes scale-in {
  from { opacity: 0; transform: scale(.85); }
  to   { opacity: 1; transform: scale(1); }
}
@keyframes float {
  0%, 100% { transform: translateY(0); }
  50%       { transform: translateY(-12px); }
}
@keyframes glow-pulse {
  0%, 100% { filter: drop-shadow(0 0 8px rgba(196,146,42,.3)); }
  50%       { filter: drop-shadow(0 0 20px rgba(196,146,42,.6)); }
}
@keyframes path-flow {
  0%   { stroke-dashoffset: 1000; opacity: .3; }
  50%  { opacity: .9; }
  100% { stroke-dashoffset: 0; opacity: .3; }
}
@keyframes sefirot-pulse {
  0%, 100% { r: 14; opacity: .7; }
  50%       { r: 17; opacity: 1; }
}
@keyframes spin-slow { to { transform: rotate(360deg); } }
@keyframes spin-rev  { to { transform: rotate(-360deg); } }
@keyframes hex-rotate { to { transform: rotate(60deg); } }

/* Hexagrama decorativo */
.deco-hex {
  position: absolute;
  opacity: .04;
  animation: spin-slow 80s linear infinite;
  pointer-events: none;
}

/* ─── RESPONSIVO ─── */
@media (max-width: 1024px) {
  .diff-inner { grid-template-columns: 1fr; gap: 3rem; }
  .pricing-inner { grid-template-columns: 1fr; gap: 3rem; }
  .sefirot-wrap { order: -1; }
  #sefirot-svg { max-width: 320px; }
}
@media (max-width: 768px) {
  :root { --section-y: 3rem; }
  /* Nav mobile */
  .nav-logo { font-size: var(--fs-base); }
  .nav-logo-symbol { width: 26px; height: 26px; }
  .nav-cta { font-size: var(--fs-xs); padding: .55rem 1.1rem; letter-spacing: .04em; }
  /* Hero */
  .hero-title { font-size: var(--fs-4xl); }
  /* Revelation */
  .revelation-quote { font-size: clamp(var(--fs-xl), 5.5vw, var(--fs-3xl)); }
  .revelation-quote br { display: none; }
  /* How */
  .how-steps { grid-template-columns: 1fr; }
  .how-connector { display: none; }
  .how-step-badge::before, .how-step-badge::after { display: none; }
  .how-step-badge { width: 90px; height: 90px; }
  .how-step-desc { max-width: 100%; }
  /* Features / Pricing / Footer */
  .footer-grid { grid-template-columns: 1fr; gap: 2rem; }
  .features-grid { grid-template-columns: 1fr; }
  .pricing-box { padding: 2rem 1.5rem; }
  .bonus-card { padding: 2.5rem 1.5rem; }
  * { cursor: auto !important; }
  #cursor, #cursor-dot { display: none; }
}
@media (max-width: 480px) {
  .hero-trust { flex-direction: column; align-items: center; }
  .btn-xl { font-size: var(--fs-base); padding: 1.2rem 2.5rem; }
  .transform-grid { grid-template-columns: 1fr; }
}

/* ─── SCROLLBAR ─── */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: var(--bg-0); }
::-webkit-scrollbar-thumb { background: var(--g3); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: var(--g4); }

/* ─── SELECTION ─── */
::selection { background: rgba(196,146,42,.25); color: var(--t0); }
