/* ══ /comece — passo a passo ═══════════════════════════════ */
.intro{padding:clamp(38px,6vw,64px) 0 clamp(20px,3vw,30px)}
.intro .badge{margin-bottom:4px}
.intro h1{font-size:clamp(28px,4vw,46px);letter-spacing:-.03em;line-height:1.06;margin:18px 0 16px;text-wrap:balance}
.pt0{padding-top:0}

/* vídeo */
.video-box{margin-top:6px}
.video-holder{
  position:relative;aspect-ratio:16/9;border-radius:18px;overflow:hidden;
  background:linear-gradient(150deg,#141414,#232323);
  border:1px solid rgba(255,255,255,.08);box-shadow:0 26px 60px -28px rgba(20,20,20,.5);
  display:grid;place-items:center;text-align:center;padding:24px;
}
.video-holder iframe,.video-holder video{position:absolute;inset:0;width:100%;height:100%;border:0}
.video-holder p{color:#fff;display:flex;flex-direction:column;gap:7px}
.video-holder b{font-family:var(--font-display);font-size:clamp(17px,2.4vw,22px);font-weight:600}
.video-holder span{font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;color:rgba(255,255,255,.5)}

/* trilha de passos */
.steps-v{list-style:none;margin:32px 0 0;padding:0;display:flex;flex-direction:column;gap:14px;position:relative}
.steps-v > li{
  display:flex;gap:18px;align-items:flex-start;
  background:var(--paper);border:1px solid var(--rule);border-radius:var(--r-card);
  padding:24px 24px 26px;box-shadow:var(--sh-card);position:relative;
  transition:transform .3s cubic-bezier(.16,.84,.44,1),box-shadow .3s;
}
.steps-v > li:hover{transform:translateY(-3px);box-shadow:var(--sh-lift)}
.steps-v > li.destaque{border-color:color-mix(in srgb,var(--green) 42%,var(--rule));background:linear-gradient(150deg,#fff,color-mix(in srgb,var(--accent) 60%,#fff))}
.steps-v .dot{
  flex:none;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;
  font-family:var(--font-mono);font-size:15px;font-weight:600;
  background:var(--ink);color:var(--green-bright);
}
.steps-v > li.destaque .dot{background:var(--green);color:#06301a}
.steps-v > li > div{min-width:0;flex:1}
.steps-v h3{font-size:19.5px;letter-spacing:-.02em;margin-bottom:7px}
.steps-v h3 em{font-style:normal;color:var(--green-deep)}
.steps-v p{color:var(--ink-mute);font-size:15.5px;line-height:1.58;margin-bottom:12px}
.steps-v .note{margin-bottom:0}
.steps-v .fine{margin-bottom:0;margin-top:9px}
.steps-v .btn{margin-top:2px}
.btn-row{display:flex;flex-wrap:wrap;gap:10px}

/* celulares */
.fones{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:28px 0 24px}
.fones article{padding:24px 22px 26px;display:flex;flex-direction:column;gap:9px;position:relative}
.fone-tag{
  align-self:flex-start;font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;
  text-transform:uppercase;background:var(--green);color:#06301a;border-radius:var(--r-pill);
  padding:5px 11px;font-weight:600;margin-bottom:2px;
}
.fones h3{font-size:21px;letter-spacing:-.02em}
.faixa{font-family:var(--font-mono);font-size:13px;color:var(--ink-fade);letter-spacing:.03em}
.faixa b{font-family:var(--font-display);font-size:20px;color:var(--green-deep);letter-spacing:-.02em}
.fones p:not(.faixa){color:var(--ink-mute);font-size:14.5px;line-height:1.55;flex:1}
.fones .btn{margin-top:6px}

/* bônus */
.bonus{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:26px;
  background:var(--paper);border:1px solid var(--rule);border-radius:var(--r-card);overflow:hidden;box-shadow:var(--sh-card)}
.bonus div{padding:22px 18px;border-right:1px solid var(--rule-faint);display:flex;flex-direction:column;gap:5px}
.bonus div:last-child{border-right:0}
.bonus b{font-family:var(--font-display);font-size:28px;font-weight:600;letter-spacing:-.03em;color:var(--green-deep);line-height:1}
.bonus span{color:var(--ink-mute);font-size:13.5px;line-height:1.45}

/* link ainda não configurado */
.is-pending{opacity:.5;cursor:not-allowed}

@media(max-width:768px){
  .fones{grid-template-columns:1fr}
  .bonus{grid-template-columns:repeat(2,1fr)}
  .bonus div{border-bottom:1px solid var(--rule-faint)}
  .bonus div:nth-child(2n){border-right:0}
  .bonus div:nth-last-child(-n+2){border-bottom:0}
  .steps-v > li{padding:20px 18px 22px;gap:14px}
  .steps-v .dot{width:34px;height:34px;font-size:14px}
  .steps-v > li > div{min-width:0;flex:1}
.steps-v h3{font-size:18px}
  .btn-row .btn{flex:1;min-width:130px}
}

/* ── microvídeo de apoio dentro do passo ────────────────── */
.passo-video{
  margin-top:14px;border-radius:var(--r-card);overflow:hidden;
  border:1px solid var(--rule);background:#0e0f10;
  box-shadow:0 10px 30px -18px rgba(20,20,20,.5);max-width:340px;
}
.passo-video video{display:block;width:100%;height:auto}
@media(max-width:768px){.passo-video{max-width:none}}

/* link alternativo discreto */
.link-alt{color:var(--ink-mute);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.link-alt:hover{color:var(--ink)}

/* ── quem convidou ─────────────────────────────────────── */
.convite{
  display:flex;align-items:center;gap:13px;margin:16px 0 4px;padding:12px 16px 12px 12px;
  background:var(--paper);border:1px solid var(--rule);border-radius:var(--r-pill);
  box-shadow:var(--sh-card);max-width:max-content;
}
.convite img{width:44px;height:44px;border-radius:50%;object-fit:cover;flex:none;
  border:2px solid var(--green);background:var(--paper-cool)}
.convite p{margin:0;font-size:15px;color:var(--ink-soft);line-height:1.35;display:flex;flex-direction:column}
.convite b{font-weight:600;color:var(--ink)}
.convite span{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.05em;color:var(--ink-fade);margin-top:3px}
@media(max-width:480px){
  .convite{border-radius:var(--r-card);max-width:none}
  .convite p{font-size:14px}
}

/* ── progresso do checklist ────────────────────────────── */
.progresso{margin:22px 0 6px}
.progresso .barra{height:6px;border-radius:99px;background:var(--rule);overflow:hidden}
.progresso .barra span{display:block;height:100%;width:0;border-radius:99px;
  background:linear-gradient(90deg,var(--green),var(--green-bright));
  transition:width .5s cubic-bezier(.16,.84,.44,1);box-shadow:0 0 10px rgba(15,217,107,.5)}
.progresso p{margin:10px 0 0;font-family:var(--font-mono);font-size:12px;color:var(--ink-mute);letter-spacing:.03em}
.progresso b{color:var(--green-deep);font-weight:600}
.progresso #progresso-msg{color:var(--ink-fade)}

/* ── marcar passo como feito ───────────────────────────── */
.feito-btn{
  display:inline-flex;align-items:center;gap:9px;margin-top:14px;cursor:pointer;
  font-family:var(--font-mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--ink-fade);background:none;border:0;padding:8px 0;min-height:44px;
}
.feito-btn i{
  width:22px;height:22px;border-radius:7px;border:1.5px solid var(--rule-ink);flex:none;
  display:grid;place-items:center;transition:background .2s,border-color .2s;
}
.feito-btn i::after{content:"";width:10px;height:6px;border-left:2px solid #fff;border-bottom:2px solid #fff;
  transform:rotate(-45deg) scale(0);transition:transform .22s cubic-bezier(.16,.84,.44,1);margin-top:-3px}
.feito-btn:hover i{border-color:var(--green)}
.steps-v > li.ok .feito-btn{color:var(--green-deep)}
.steps-v > li.ok .feito-btn i{background:var(--green);border-color:var(--green)}
.steps-v > li.ok .feito-btn i::after{transform:rotate(-45deg) scale(1)}
.steps-v > li.ok{opacity:.72}
.steps-v > li.ok .dot{background:var(--green);color:#06301a}
.steps-v > li.ok h3{text-decoration:line-through;text-decoration-color:var(--ink-fade);text-decoration-thickness:1.5px}

/* ── "o que vai acontecer" — reduz abandono de quem é leigo ── */
.oquevem{
  margin-top:16px;padding:16px 18px;border-radius:var(--r-card);
  background:var(--paper-warm);border:1px dashed var(--rule-ink);
}
.oquevem b{font-family:var(--font-display);font-size:14.5px;letter-spacing:-.01em;display:block;margin-bottom:10px}
.oquevem ol{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:9px}
.oquevem li{font-size:15px;line-height:1.55;color:var(--ink-soft);margin:0}
.oquevem li b{display:inline;font-family:var(--font-sans);font-size:inherit;font-weight:600}
.oquevem .fine{margin:11px 0 0}
