:root{
  --bg-dark:#0b0b0f;
  --border-glass:rgba(255,255,255,0.08);
  --text-main:#f1f5f9;
  --text-muted:#94a3b8;
  --primary:#8b5cf6;
  --blue:#3b82f6;
  --font-heading:'Outfit',sans-serif;
  --font-body:'Inter',sans-serif;
}

/* Reset */
*{margin:0;padding:0;box-sizing:border-box}

body{
  background:var(--bg-dark);
  color:var(--text-main);
  font-family:var(--font-body);
  overflow-x:hidden;
}

/* Container */
.container{width:90%;max-width:1100px;margin:0 auto}

/* Background glows */
.glow-bg{
  position:fixed;
  width:640px;height:640px;
  border-radius:50%;
  filter:blur(170px);
  z-index:-3;
  opacity:.9;
}
.top-left{
  top:-240px;left:-240px;
  background:radial-gradient(circle,rgba(139,92,246,.55),transparent 60%);
}
.bottom-right{
  bottom:-260px;right:-260px;
  background:radial-gradient(circle,rgba(59,130,246,.42),transparent 60%);
}

/* Grid overlay */
.grid-overlay{
  position:fixed;
  inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,0.015) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.015) 1px, transparent 1px);
  background-size:64px 64px;
  pointer-events:none;
  z-index:-2;
  opacity:.65;
}

/* Sections */
section{padding:120px 0;text-align:center}

/* Badge */
.badge{
  display:inline-block;
  padding:8px 16px;
  border-radius:999px;
  background:rgba(255,255,255,0.04);
  border:1px solid var(--border-glass);
  font-size:.78rem;
  letter-spacing:.10em;
  text-transform:uppercase;
  color:rgba(226,232,240,0.9);
}

/* Highlight */
.highlight{
  background:linear-gradient(90deg,var(--primary),var(--blue));
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}
.highlight-grad{
  background:linear-gradient(90deg,var(--primary),var(--blue));
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}

/* Buttons */
.cta-button{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:16px 34px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--primary),var(--blue));
  color:white;
  font-weight:800;
  text-decoration:none;
  overflow:hidden;
  transition:.25s ease;
  border:1px solid rgba(255,255,255,0.10);
}
.cta-button:hover{
  transform:translateY(-3px);
  box-shadow:0 16px 38px rgba(139,92,246,0.33);
}
.cta-text{letter-spacing:.02em}

.cta-glow{
  position:absolute;
  inset:-40%;
  background:radial-gradient(circle at 30% 30%, rgba(255,255,255,0.18), transparent 45%);
  opacity:.55;
  pointer-events:none;
}

/* Ghost CTA */
.ghost-cta{
  background:rgba(255,255,255,0.03);
  border:1px solid rgba(139,92,246,0.28);
}
.ghost-cta:hover{
  box-shadow:0 16px 38px rgba(59,130,246,0.22);
  border-color:rgba(59,130,246,0.38);
}

/* Glass panel */
.glass-panel{
  background:rgba(255,255,255,0.03);
  border:1px solid var(--border-glass);
  backdrop-filter:blur(12px);
  border-radius:20px;
  padding:40px;
}

/* HERO */
.hero{padding:140px 0 110px}
.hero-content{max-width:920px;margin:0 auto}

.hero-title{
  font-family:var(--font-heading);
  font-size:clamp(2.8rem,6vw,5rem);
  font-weight:900;
  line-height:1.03;
  letter-spacing:-0.03em;
  margin-top:12px;
}
.hero-contrast{
  margin:22px auto 0;
  max-width:60ch;
  color:#cbd5e1;
  font-size:clamp(1.05rem,1.55vw,1.35rem);
  line-height:1.45;
}
.hc-line{display:block}

.hero-subline{
  margin:18px auto 0;
  max-width:62ch;
  color:rgba(148,163,184,0.95);
  font-size:1rem;
  line-height:1.5;
}
.hero-micro{
  margin:10px auto 0;
  max-width:62ch;
  color:rgba(226,232,240,0.88);
  font-weight:600;
  font-size:0.98rem;
}
.hero-contrast strong,
.hero-subline strong{color:var(--text-main)}

.hero-contrast .accent{
  background:linear-gradient(90deg,var(--primary),var(--blue));
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  font-weight:800;
}
.hero-contrast .underline{
  position:relative;
  display:inline-block;
  color:var(--text-main);
  font-weight:800;
}
.hero-contrast .underline::after{
  content:"";
  position:absolute;
  left:-2px;right:-2px;
  bottom:-7px;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,rgba(139,92,246,0.95),rgba(59,130,246,0.95));
  transform:scaleX(0);
  transform-origin:left;
  animation:underlineIn 900ms ease forwards;
  animation-delay:900ms;
}
@keyframes underlineIn{to{transform:scaleX(1)}}

/* CTA under text */
.cta-under{
  margin:10px auto 0;
  max-width:72ch;
  color:rgba(148,163,184,0.92);
  font-size:.92rem;
  line-height:1.45;
}

/* Proof pills */
.hero-proof{
  margin-top:16px;
  display:flex;
  gap:10px;
  justify-content:center;
  flex-wrap:wrap;
  opacity:.95;
}
.proof-pill{
  padding:8px 12px;
  border-radius:999px;
  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.08);
  color:rgba(148,163,184,0.95);
  font-size:.85rem;
}

/* Ticker */
.hero-ticker{
  margin:24px auto 0;
  max-width:720px;
  border-radius:999px;
  padding:10px 0;
  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.08);
  overflow:hidden;
  position:relative;
}
.hero-ticker::before,
.hero-ticker::after{
  content:"";
  position:absolute;
  top:0;bottom:0;
  width:85px;
  z-index:2;
  pointer-events:none;
}
.hero-ticker::before{
  left:0;
  background:linear-gradient(90deg,rgba(11,11,15,1),rgba(11,11,15,0));
}
.hero-ticker::after{
  right:0;
  background:linear-gradient(270deg,rgba(11,11,15,1),rgba(11,11,15,0));
}
.ticker-track{
  display:inline-flex;
  align-items:center;
  gap:14px;
  white-space:nowrap;
  will-change:transform;
  animation:tickerMove 18s linear infinite;
  padding-left:16px;
}
@keyframes tickerMove{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}
.ticker-item{
  white-space:nowrap;
  color:rgba(226,232,240,0.86);
  font-size:.95rem;
}
.ticker-dot{color:rgba(148,163,184,0.55)}

/* Hero entrance sequence */
.hero-seq > *{
  opacity:0;
  transform:translateY(14px);
  filter:blur(8px);
}
body.loaded .hero-seq > *{
  animation:heroIn 900ms cubic-bezier(.2,.8,.2,1) forwards;
}
body.loaded .hero-seq > *:nth-child(1){animation-delay:120ms}
body.loaded .hero-seq > *:nth-child(2){animation-delay:260ms}
body.loaded .hero-seq > *:nth-child(3){animation-delay:420ms}
body.loaded .hero-seq > *:nth-child(4){animation-delay:560ms}
body.loaded .hero-seq > *:nth-child(5){animation-delay:700ms}
body.loaded .hero-seq > *:nth-child(6){animation-delay:820ms}
body.loaded .hero-seq > *:nth-child(7){animation-delay:940ms}
body.loaded .hero-seq > *:nth-child(8){animation-delay:1080ms}
@keyframes heroIn{
  0%{opacity:0;transform:translateY(14px);filter:blur(10px)}
  100%{opacity:1;transform:translateY(0);filter:blur(0)}
}
body.loaded .hero-seq{
  animation:heroFloat 6s ease-in-out infinite;
  animation-delay:1.4s;
}
@keyframes heroFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-6px)}
}

/* Titles */
.section-title{
  font-family:var(--font-heading);
  font-size:clamp(1.8rem,3vw,2.4rem);
  font-weight:800;
  line-height:1.2;
}
.section-subtitle{
  margin-top:10px;
  font-family:var(--font-heading);
  font-size:clamp(1.4rem,2.6vw,2rem);
  font-weight:800;
}
.section-note{
  margin:14px auto 0;
  max-width:70ch;
  color:rgba(148,163,184,0.95);
  line-height:1.55;
}

/* Cards */
.cards-grid{
  display:flex;
  gap:20px;
  justify-content:center;
  margin-top:40px;
  flex-wrap:wrap;
}
.glass-card{
  background:rgba(255,255,255,0.03);
  border:1px solid var(--border-glass);
  padding:30px;
  border-radius:18px;
  width:250px;
  transition:.25s ease;
}
.glass-card:hover{
  transform:translateY(-6px);
  border-color:rgba(139,92,246,0.35);
}
.card-icon{font-size:28px;margin-bottom:12px}

.alert-text{
  margin-top:40px;
  font-size:1.08rem;
  font-weight:600;
  color:rgba(226,232,240,0.95);
}

/* Mechanics */
.mechanics{
  display:flex;
  flex-direction:column;
  gap:40px;
  max-width:920px;
  margin:0 auto;
}
.step-card{
  display:flex;
  gap:26px;
  align-items:flex-start;
  text-align:left;
  padding:18px 16px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,0.06);
  background:rgba(255,255,255,0.02);
}
.step-number{
  font-family:var(--font-heading);
  font-size:2rem;
  font-weight:900;
  color:var(--primary);
  min-width:48px;
}
.step-content h3{
  font-family:var(--font-heading);
  font-size:1.2rem;
  margin-bottom:8px;
}
.step-content p{
  color:var(--text-muted);
  line-height:1.6;
}
.highlight-box{
  margin-top:14px;
  padding:14px 14px;
  background:rgba(139,92,246,0.08);
  border:1px solid rgba(139,92,246,0.18);
  border-radius:12px;
  color:rgba(226,232,240,0.96);
  font-weight:600;
}

/* Soft CTA */
.soft-cta{margin-top:10px;text-align:center}
.soft-cta-micro{
  margin-top:10px;
  color:rgba(148,163,184,0.9);
  font-size:.95rem;
}

/* About */
.about-panel{max-width:900px;margin:0 auto;text-align:left}
.about-eyebrow{
  text-transform:uppercase;
  font-size:.8rem;
  letter-spacing:.12em;
  color:var(--text-muted);
  margin-bottom:10px;
}
.about-header{
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  flex-wrap:wrap;
  gap:14px;
}
.about-title{
  font-family:var(--font-heading);
  font-size:clamp(2rem,4vw,3rem);
  font-weight:900;
}
.about-chip{
  background:rgba(255,255,255,0.05);
  border:1px solid var(--border-glass);
  padding:6px 14px;
  border-radius:999px;
  font-size:.82rem;
  color:rgba(226,232,240,0.9);
}
.about-subtitle{
  margin:16px 0 26px;
  color:rgba(148,163,184,0.95);
  max-width:65ch;
}
.about-copy p{
  margin-bottom:16px;
  color:var(--text-muted);
  line-height:1.7;
}
.about-copy strong{color:rgba(226,232,240,0.96)}
.about-actions{margin-top:28px}
.about-micro{margin-top:10px;color:rgba(148,163,184,0.9);font-size:.95rem}

/* Cred mini */
.cred-mini{
  margin:18px 0 18px;
  padding:16px 16px;
  border-radius:14px;
  background:rgba(255,255,255,0.02);
  border:1px solid rgba(255,255,255,0.06);
}
.cred-mini p{margin-bottom:10px;color:rgba(226,232,240,0.92)}
.cred-mini ul{
  margin-left:18px;
  display:grid;
  gap:8px;
  color:rgba(148,163,184,0.95);
  line-height:1.55;
}
.cred-close{margin-top:10px;color:rgba(203,213,225,0.92)}

/* Impact */
.impact-wrap{max-width:980px;margin:0 auto}
.impact-kicker{
  display:inline-block;
  margin-bottom:14px;
  padding:8px 14px;
  border-radius:999px;
  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.08);
  color:rgba(148,163,184,0.95);
  font-size:.78rem;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.impact-title{
  font-family:var(--font-heading);
  font-size:clamp(2.1rem,4.8vw,3.4rem);
  font-weight:900;
  line-height:1.12;
  letter-spacing:-0.03em;
}
.impact-lead{
  margin:18px auto 0;
  max-width:70ch;
  color:rgba(203,213,225,0.92);
  font-size:1.05rem;
  line-height:1.6;
}
.impact-lead strong{color:var(--text-main)}
.impact-card{
  margin-top:34px;
  max-width:880px;
  margin-left:auto;
  margin-right:auto;
  padding:34px;
  text-align:left;
  position:relative;
  overflow:hidden;
}
.impact-card::before{
  content:"";
  position:absolute;
  inset:-40%;
  background:
    radial-gradient(circle at 30% 30%, rgba(139,92,246,0.18), transparent 45%),
    radial-gradient(circle at 80% 70%, rgba(59,130,246,0.14), transparent 45%);
  transform: rotate(8deg);
  pointer-events:none;
}
.impact-lines{position:relative;display:grid;gap:10px}
.impact-lines p{
  color:rgba(226,232,240,0.9);
  font-weight:600;
  display:flex;
  align-items:center;
  gap:10px;
}
.impact-lines .dot{
  width:8px;height:8px;border-radius:999px;
  background:linear-gradient(90deg,var(--primary),var(--blue));
  box-shadow:0 0 18px rgba(139,92,246,0.35);
  flex:0 0 auto;
}
.separator{
  width:100%;
  height:1px;
  background:rgba(255,255,255,0.08);
  margin:18px 0;
}
.impact-close{
  margin-top:16px;
  position:relative;
  color:rgba(203,213,225,0.9);
  line-height:1.55;
}
.impact-close strong{color:var(--text-main)}
.impact-cta{margin-top:22px;width:100%;justify-content:center}

/* Deliver section layout (COM CAPA) */
.deliver-wrap{max-width:980px;margin:0 auto}
.deliver-layout{
  margin-top:34px;
  display:grid;
  grid-template-columns: 0.92fr 1.38fr;
  gap:18px;
  align-items:start;
}
.deliver-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:18px;
}
.deliver-card{
  text-align:left;
  padding:22px 18px;
  border-radius:18px;
  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.08);
  transition:.25s ease;
}
.deliver-card:hover{
  transform:translateY(-6px);
  border-color:rgba(59,130,246,0.22);
}
.deliver-icon{font-size:26px;margin-bottom:10px}
.deliver-card h3{
  font-family:var(--font-heading);
  font-size:1.08rem;
  margin-bottom:8px;
}
.deliver-card p{
  color:rgba(148,163,184,0.95);
  line-height:1.55;
}
.deliver-cta{margin-top:26px}
.deliver-micro{
  margin-top:10px;
  color:rgba(148,163,184,0.9);
  font-size:.95rem;
}

/* CAPA (imagem) */
.cover-card{
  text-align:left;
  border-radius:18px;
  padding:18px;
  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.08);
  box-shadow:0 30px 80px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.06);
  backdrop-filter: blur(10px);
}
.cover-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}
.cover-chip{
  display:inline-flex;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.10);
  color:rgba(226,232,240,0.88);
  font-size:.78rem;
  letter-spacing:.10em;
  text-transform:uppercase;
}
.cover-hint{
  font-size:.78rem;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(148,163,184,0.95);
}
.cover-frame{
  position:relative;
  border-radius:14px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,0.10);
  background:radial-gradient(1200px 600px at 10% 10%, rgba(124,92,255,.18), transparent 55%), rgba(0,0,0,.25);
  aspect-ratio: 3 / 4;
}
.cover-frame img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transform:scale(1.01);
  filter:contrast(1.03) saturate(1.04);
}
.cover-frame::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(700px 340px at 20% 15%, rgba(124,92,255,.22), transparent 55%),
    radial-gradient(900px 440px at 80% 85%, rgba(45,167,255,.14), transparent 60%),
    linear-gradient(to bottom, rgba(0,0,0,.10), rgba(0,0,0,.35));
  pointer-events:none;
}
.cover-fallback{
  position:absolute;
  inset:0;
  display:none;
  padding:18px;
  align-content:center;
  text-align:center;
  gap:10px;
  color:rgba(255,255,255,.82);
}
.cover-card.is-missing .cover-frame img{display:none}
.cover-card.is-missing .cover-fallback{display:grid}
.fallback-title{font-size:16px;font-weight:800}
.fallback-sub{font-size:13px;color:rgba(255,255,255,.65)}
.cover-foot{
  margin-top:12px;
  font-size:13px;
  color:rgba(255,255,255,.65);
  line-height:1.35;
}

/* FAQ */
.faq-wrap{max-width:980px;margin:0 auto;text-align:left}
.faq-list{margin-top:22px;display:grid;gap:12px}
.faq-item{
  border-radius:16px;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.02);
  overflow:hidden;
}
.faq-item summary{
  cursor:pointer;
  list-style:none;
  padding:16px 18px;
  font-weight:700;
  font-family:var(--font-heading);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{
  content:"+";
  color:rgba(226,232,240,0.85);
  font-size:1.2rem;
  font-weight:900;
  line-height:1;
}
.faq-item[open] summary::after{content:"–"}
.faq-body{
  padding:0 18px 16px;
  color:rgba(148,163,184,0.95);
  line-height:1.6;
}
.faq-cta{margin-top:20px;text-align:center}
.faq-micro{
  margin-top:10px;
  color:rgba(148,163,184,0.9);
  font-size:.95rem;
}

/* Final CTA */
.price-card{max-width:720px;margin:0 auto}
.price-header h2{
  font-family:var(--font-heading);
  font-size:2rem;
  font-weight:900;
}
.price-header p{color:rgba(148,163,184,0.95);margin-top:8px}
.price-action{margin-top:22px}

.risk-row{
  margin-top:12px;
  display:flex;
  gap:10px;
  justify-content:center;
  flex-wrap:wrap;
}
.risk-pill{
  padding:8px 12px;
  border-radius:999px;
  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.08);
  color:rgba(148,163,184,0.95);
  font-size:.85rem;
}

.guarantee{
  margin-top:18px;
  color:rgba(148,163,184,0.95);
  font-size:.95rem;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  text-align:center;
}
.shield-icon{font-size:1.05rem}

.price-anchor{
  margin-top:14px;
  color:rgba(148,163,184,0.92);
  font-size:.92rem;
}

/* Reveal */
.reveal{
  opacity:0;
  transform:translateY(40px);
  transition:0.8s ease;
}
.reveal.active{
  opacity:1;
  transform:translateY(0);
}

/* Footer */
footer{
  text-align:center;
  padding:42px 0;
  font-size:.85rem;
  color:rgba(148,163,184,0.95);
}

/* Mobile */
@media (max-width: 900px){
  .deliver-layout{grid-template-columns:1fr}
  .deliver-grid{grid-template-columns:repeat(2, minmax(0, 1fr))}
}
@media (max-width: 768px){
  section{padding:85px 0}
  .hero{padding:115px 0 90px}
  .step-card{flex-direction:column}
  .cards-grid{flex-direction:column;align-items:center}
  .hero-ticker::before,.hero-ticker::after{width:55px}
  .ticker-track{animation-duration:16s}
  .deliver-grid{grid-template-columns:1fr}
}