:root{
  --bg:#0b0d10;
  --bg2:#0f1217;
  --text:#e9edf1;
  --muted:#a7b0bb;
  --line:rgba(255,255,255,.10);
  --accent:#18D184; /* só para texto/detalhes, sem degradê */
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif;
  background: var(--bg); /* sem degradê */
  color:var(--text);
}

.wrap{width:100%}
.container{
  width:min(980px, 100%);
  margin:0 auto;
  padding:18px 16px 64px;
}

.hero{padding-top:10px}
.title{
  margin:0 0 10px;
  font-size:clamp(26px,4vw,44px);
  line-height:1.05;
  font-weight:800;
  letter-spacing:-.02em;
  text-align:center;
}
.accent{color:var(--accent)}
.sub{
  margin:0 0 18px;
  color:var(--muted);
  text-align:center;
  font-size:clamp(14px,2vw,16px);
}

.vsl{display:flex; flex-direction:column; gap:14px; align-items:center}
.videoShell{
  width:100%;
  background: var(--bg2);
  border:1px solid var(--line);
  border-radius:16px;
  overflow:hidden;
  position:relative;
  aspect-ratio: 16 / 9;
}
.videoShell iframe{width:100%; height:100%}

.videoGate{
  position:absolute; inset:0;
  display:flex; flex-direction:column;
  justify-content:center; align-items:center;
  gap:10px;
  background:rgba(0,0,0,.72);
  border:0;
  color:var(--text);
  cursor:pointer;
  z-index:2;
  padding:18px;
}
.gateBig{font-weight:900; font-size:clamp(18px,3vw,28px)}
.gateSmall{color:rgba(255,255,255,.85); font-size:14px}
.videoGate.hidden{display:none}

.metaRow{
  width:100%;
  display:flex;
  gap:10px;
  justify-content:space-between;
  align-items:center;
  flex-wrap:wrap;
}
.watching{
  color:var(--muted);
  font-size:14px;
}
.watchingN{font-weight:800; color:#cfd6de}
.pulseMsg{
  color:var(--muted);
  font-size:14px;
  text-align:right;
}

.btn{
  width:100%;
  max-width:520px;
  display:inline-flex;
  justify-content:center;
  align-items:center;
  padding:14px 16px;
  border-radius:14px;
  font-weight:800;
  text-decoration:none;
  border:1px solid rgba(255,255,255,.14);
  background:#151a21;
  color:#fff; /* texto branco conforme pediu */
}
.btn.primary{
  background:#18D184;
  color:#fff; /* branco no botão */
  border-color:rgba(0,0,0,.15);
}
.btn.primary:hover{filter:brightness(.96)}
.btn:hover{filter:brightness(1.03)}

.section{
  padding:26px 0;       /* “solto”, sem caixa */
  border-top:1px solid var(--line);
}
.kicker{
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:12px;
  color:var(--muted);
  margin-bottom:10px;
}
.h2{
  margin:0 0 10px;
  font-size:clamp(20px,3vw,32px);
  letter-spacing:-.01em;
}
.p{margin:0; color:var(--muted); line-height:1.55}

.gridVideos{
  margin-top:14px;
  display:grid;
  grid-template-columns:1fr;
  gap:14px;
}
.ratio{
  border:1px solid var(--line);
  border-radius:16px;
  overflow:hidden;
  background:var(--bg2);
  aspect-ratio:16/9;
}
.ratio iframe{width:100%; height:100%}

.testimonials{
  margin-top:14px;
  display:grid;
  grid-template-columns:1fr;
  gap:14px;
}
.t-card{
  border:1px solid var(--line);
  border-radius:16px;
  padding:16px;
  background:var(--bg2); /* tema escuro */
  text-align:center;
}
.avatar{
  width:72px; height:72px;
  border-radius:999px;
  object-fit:cover;
  border:1px solid rgba(255,255,255,.18);
  margin-bottom:10px;
}
.t-text{
  margin:0 0 10px;
  font-weight:800;
  line-height:1.35;
}
.stars{color:#f6c945; letter-spacing:2px; margin-bottom:8px}
.t-name{color:var(--muted); font-size:14px}

.list{
  margin-top:12px;
  display:grid;
  gap:10px;
}
.li{
  display:flex;
  gap:12px;
  align-items:flex-start;
  padding:12px 0;
  border-bottom:1px dashed rgba(255,255,255,.10);
}
.num{
  min-width:42px;
  font-weight:900;
  color:#dbe4ee;
}

.strike{margin:0; color:var(--muted); text-decoration:line-through}
.price{font-size:34px; font-weight:900; margin:10px 0 14px}

.safe{
  width:100%;
  max-width:520px;
  margin-top:14px;
  opacity:.95;
}

.faq{
  border:1px solid var(--line);
  border-radius:14px;
  padding:12px 14px;
  background:var(--bg2);
  margin-top:10px;
}
.faq summary{
  cursor:pointer;
  font-weight:800;
}
.faq p{margin:10px 0 0; color:var(--muted); line-height:1.55}

.footer{
  padding:26px 0 0;
  text-align:center;
  color:var(--muted);
}

/* BLOQUEIO */
.locked{display:none}
.locked.unlocked{display:block}

/* Desktop */
@media (min-width: 900px){
  .gridVideos{grid-template-columns:1fr 1fr}
  .testimonials{grid-template-columns:1fr 1fr 1fr}
  .metaRow{flex-wrap:nowrap}
}