/* Reconquista Fatal – cores da página original: branco, café (#4A2C20), caramelo (#D8B48A) e preto */

:root{
  --fundo:#FAF6F2;
  --branco:#FFFFFF;
  --cafe:#4A2C20;
  --cafe-2:#2E1B14;
  --cafe-grad:linear-gradient(135deg, #6A4130 0%, #4A2C20 48%, #2E1B14 100%);
  --caramelo:#D8B48A;
  --caramelo-claro:#F1DCC0;
  --caramelo-grad:linear-gradient(135deg, #F3E1C8 0%, #D8B48A 45%, #B98A5A 100%);
  --preto:#140D0A;
  --tinta:#1E1512;
  --texto:#55463F;
  --texto-suave:#7C6A61;
  --borda:rgba(74,44,32,.10);
  --sombra:0 26px 60px -32px rgba(74,44,32,.45);
  --sombra-leve:0 14px 34px -22px rgba(74,44,32,.35);

  --fonte:"Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --wrap:1140px;
  --gutter:clamp(20px, 5vw, 44px);
  --secao:clamp(44px, 5.5vw, 72px);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;position:relative;background:var(--fundo);color:var(--texto);
  font-family:var(--fonte);font-size:17px;line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
img{display:block;max-width:100%;height:auto}
p{margin:0}
h1,h2,h3{margin:0}
strong{font-weight:700;color:var(--tinta)}
a{color:inherit}
svg{display:block}
s{text-decoration-thickness:1.5px;text-decoration-color:#C2453A}
:focus-visible{outline:2px solid var(--cafe);outline-offset:4px;border-radius:12px}

.wrap{position:relative;z-index:2;width:100%;max-width:calc(var(--wrap) + var(--gutter)*2);margin:0 auto;padding:0 var(--gutter)}

/* brilhos suaves de fundo */
.brilhos{position:absolute;inset:0;overflow:hidden;z-index:0;pointer-events:none}
.glow{position:absolute;border-radius:50%;filter:blur(110px)}
.glow--1{width:760px;height:560px;left:50%;top:-220px;transform:translateX(-50%);background:rgba(216,180,138,.35)}
.glow--2{width:600px;height:600px;right:-260px;top:38%;background:rgba(216,180,138,.22)}
.glow--3{width:640px;height:640px;left:-300px;top:68%;background:rgba(216,180,138,.2)}

/* tipografia */
.titulo{
  font-weight:800;color:var(--tinta);
  font-size:clamp(30px, 3.8vw, 46px);line-height:1.12;letter-spacing:-.03em;text-wrap:balance;
}
.titulo--menor{font-size:clamp(24px, 2.8vw, 32px)}
.cabeca{text-align:center;max-width:700px;margin:0 auto clamp(26px, 3.4vw, 40px)}
.sub{margin-top:14px;font-size:clamp(17px, 1.6vw, 19px);color:var(--texto);text-wrap:pretty}

/* ---------- Botão ---------- */
.btn{
  position:relative;isolation:isolate;overflow:hidden;
  display:inline-flex;align-items:center;justify-content:space-between;gap:18px;
  min-height:64px;padding:8px 8px 8px 30px;border-radius:999px;
  background:var(--cafe-grad);color:#fff;text-decoration:none;
  font-family:var(--fonte);font-size:16px;font-weight:800;letter-spacing:.04em;line-height:1.2;
  box-shadow:0 20px 44px -16px rgba(74,44,32,.75), inset 0 1px 0 rgba(255,255,255,.18);
  transition:transform .3s cubic-bezier(.2,.7,.2,1), box-shadow .3s ease;
}
.btn__ico{
  flex:none;display:grid;place-items:center;width:48px;height:48px;border-radius:50%;
  background:var(--caramelo-grad);color:var(--cafe-2);
  transition:transform .3s cubic-bezier(.2,.7,.2,1);
}
.btn__ico svg{width:20px;height:20px}
.btn:hover{transform:translateY(-2px);box-shadow:0 26px 54px -16px rgba(74,44,32,.85), inset 0 1px 0 rgba(255,255,255,.18)}
.btn:hover .btn__ico{transform:rotate(45deg)}
.btn::after{
  content:"";position:absolute;z-index:-1;top:0;bottom:0;width:36%;left:-60%;
  background:linear-gradient(100deg, rgba(255,255,255,0) 0%, rgba(241,220,192,.38) 50%, rgba(255,255,255,0) 100%);
  transform:skewX(-18deg);
}
@media (prefers-reduced-motion: no-preference){
  .btn::after{animation:brilho 4.6s ease-in-out infinite}
}
@keyframes brilho{0%,60%{left:-60%}100%{left:130%}}
.btn--cheio{display:flex;width:100%}
.btn--cheio > span:first-child{flex:1;text-align:center}

.check{
  flex:none;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;
  background:var(--caramelo-grad);color:var(--cafe-2);box-shadow:0 6px 16px -8px rgba(185,138,90,.9);
}
.check svg{width:17px;height:17px}

/* ---------- Topo + VSL ---------- */
.topo{position:relative;padding:clamp(32px, 5vw, 56px) 0 var(--secao)}
.topo__inner{text-align:center}
.topo__logo{width:clamp(170px, 20vw, 230px);margin:0 auto clamp(18px, 2.6vw, 28px)}
.topo__titulo{
  font-weight:800;color:var(--tinta);
  font-size:clamp(38px, 5.6vw, 66px);line-height:1.04;letter-spacing:-.04em;
}
.topo__sub{max-width:640px;margin:16px auto clamp(26px, 3.4vw, 38px);font-size:clamp(17px, 1.7vw, 20px);line-height:1.55;color:var(--texto);text-wrap:balance}
.vsl{
  max-width:820px;margin:0 auto;padding:clamp(6px, 1vw, 10px);border-radius:28px;
  background:linear-gradient(145deg, rgba(255,255,255,.95), rgba(241,220,192,.6));
  border:1px solid rgba(216,180,138,.55);
  box-shadow:0 50px 90px -40px rgba(46,27,20,.55), 0 0 0 10px rgba(216,180,138,.12);
}
.vsl > div{border-radius:20px;overflow:hidden;background:var(--preto)}
.som{
  display:inline-flex;align-items:center;gap:10px;margin-top:22px;padding:10px 18px;border-radius:999px;
  font-size:15px;font-weight:700;color:var(--cafe);background:var(--branco);
  border:1px solid var(--borda);box-shadow:var(--sombra-leve);
}
.som svg{width:20px;height:20px;color:var(--cafe)}
@media (prefers-reduced-motion: no-preference){
  .topo__logo,.topo__titulo,.topo__sub,.vsl,.som{animation:sobe .9s cubic-bezier(.2,.7,.2,1) both}
  .topo__titulo{animation-delay:.1s}
  .topo__sub{animation-delay:.2s}
  .vsl{animation-delay:.3s}
  .som{animation-delay:.45s}
}
@keyframes sobe{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}

/* ---------- Seções ---------- */
.secao{position:relative;padding:var(--secao) 0}

/* depoimentos em esteira */
.carrossel{position:relative;z-index:2}
.esteira{
  overflow-x:auto;overflow-y:hidden;scroll-behavior:auto;overscroll-behavior-x:contain;
  scrollbar-width:none;cursor:pointer;touch-action:pan-x pan-y;
}
.esteira::-webkit-scrollbar{display:none}
.esteira.is-pausada{scroll-snap-type:x mandatory}
.esteira.is-arrastando{cursor:grabbing;scroll-snap-type:none}
.esteira__trilho{display:flex;gap:20px;width:max-content;padding:10px var(--gutter) 30px}
.print{
  flex:none;scroll-snap-align:center;margin:0;width:clamp(200px, 19vw, 248px);
  padding:8px;border-radius:30px;background:var(--branco);
  border:1px solid var(--borda);box-shadow:var(--sombra);
  transition:transform .3s ease, box-shadow .3s ease;
  -webkit-user-select:none;user-select:none;
}
.print img{border-radius:23px;aspect-ratio:9/16;object-fit:cover;pointer-events:none;-webkit-user-drag:none}

/* controles: anterior, pausar/continuar, próximo */
.carrossel__ctrl{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:4px}
.carrossel__btn{
  display:grid;place-items:center;width:46px;height:46px;border-radius:50%;cursor:pointer;
  border:1px solid var(--borda);background:var(--branco);color:var(--cafe);
  box-shadow:var(--sombra-leve);transition:transform .2s ease, background-color .2s ease, color .2s ease;
}
.carrossel__btn:hover{transform:translateY(-1px)}
.carrossel__btn svg{width:20px;height:20px}
.carrossel__btn--play{width:54px;height:54px;background:var(--cafe-grad);color:var(--caramelo-claro);border:0}
.carrossel__btn--play .i-play{display:none}
.carrossel.is-pausado .carrossel__btn--play .i-play{display:block}
.carrossel.is-pausado .carrossel__btn--play .i-pause{display:none}
.carrossel.is-pausado .print{box-shadow:0 0 0 2px rgba(216,180,138,.55), var(--sombra)}

/* aulas */
.aulas{display:grid;grid-template-columns:repeat(4, 1fr);gap:16px}
.aula{
  display:flex;flex-direction:column;gap:10px;padding:26px 22px 24px;border-radius:24px;
  background:var(--branco);border:1px solid var(--borda);box-shadow:var(--sombra-leve);
  transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.aula:hover{transform:translateY(-3px);box-shadow:var(--sombra);border-color:rgba(216,180,138,.6)}
.aula__ico{
  display:grid;place-items:center;width:50px;height:50px;border-radius:16px;margin-bottom:6px;
  background:linear-gradient(145deg, #FBF1E4, #F1DCC0);color:var(--cafe);
  box-shadow:inset 0 0 0 1px rgba(216,180,138,.6);
}
.aula__ico svg{width:24px;height:24px}
.aula h3{font-size:18px;font-weight:800;line-height:1.3;letter-spacing:-.015em;color:var(--tinta)}
.aula p{font-size:15.5px;line-height:1.55;color:var(--texto)}
.aula--bonus{background:var(--cafe-grad);border-color:transparent}
.aula--bonus h3{color:#fff}
.aula--bonus p{color:#E8DCD3}
.aula--bonus .aula__ico{background:var(--caramelo-grad);color:var(--cafe-2);box-shadow:none}

/* pra quem */
.praquem__grade{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px, 5vw, 64px);align-items:center}
.praquem__foto{border-radius:32px;overflow:hidden;box-shadow:var(--sombra);border:8px solid var(--branco)}
.praquem__foto img{width:100%;aspect-ratio:4/3.4;object-fit:cover}
.praquem__texto .titulo{text-align:left}
.checks{list-style:none;margin:26px 0 0;padding:0;display:grid;gap:12px}
.checks li{
  display:flex;align-items:center;gap:14px;padding:14px 18px 14px 14px;border-radius:18px;
  font-size:17px;font-weight:600;color:var(--tinta);
  background:var(--branco);border:1px solid var(--borda);box-shadow:var(--sombra-leve);
}

/* o que você recebe — painel escuro */
.painel{
  position:relative;overflow:hidden;border-radius:36px;
  padding:clamp(40px, 6vw, 72px) clamp(20px, 4vw, 56px);
  background:radial-gradient(90% 70% at 50% 0%, rgba(216,180,138,.22), rgba(216,180,138,0) 60%), var(--preto);
  box-shadow:0 50px 100px -50px rgba(20,13,10,.8);
}
.cabeca--escura .titulo{color:#fff}
.cabeca--escura .sub{color:#E8E2DD}
.entregas{display:grid;grid-template-columns:repeat(3, 1fr);gap:16px}
.entrega{
  padding:28px 24px;border-radius:24px;text-align:center;
  background:linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.02));
  border:1px solid rgba(216,180,138,.22);
}
.entrega__ico{
  display:grid;place-items:center;width:56px;height:56px;margin:0 auto 16px;border-radius:50%;
  background:var(--caramelo-grad);color:var(--cafe-2);box-shadow:0 12px 28px -12px rgba(216,180,138,.8);
}
.entrega__ico svg{width:26px;height:26px}
.entrega h3{font-size:21px;font-weight:800;color:var(--caramelo);letter-spacing:-.015em;margin-bottom:8px}
.entrega p{font-size:16px;line-height:1.6;color:#E8E2DD}

/* bônus + preço */
.bonus{list-style:none;margin:0 auto clamp(30px, 4vw, 44px);padding:0;max-width:880px;display:grid;grid-template-columns:repeat(3, 1fr);gap:14px}
.bonus li{
  display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;
  padding:22px 18px;border-radius:22px;font-size:16.5px;font-weight:700;line-height:1.4;color:var(--tinta);
  background:var(--branco);border:1px solid var(--borda);box-shadow:var(--sombra-leve);
}
.bonus__ico{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:linear-gradient(145deg, #FBF1E4, #F1DCC0);color:var(--cafe);box-shadow:inset 0 0 0 1px rgba(216,180,138,.6)}
.bonus__ico svg{width:24px;height:24px}

.preco{
  max-width:560px;margin:0 auto;text-align:center;
  padding:clamp(32px, 4.5vw, 48px) clamp(20px, 4vw, 44px) clamp(26px, 3.5vw, 36px);border-radius:34px;
  border:1.5px solid transparent;
  background:linear-gradient(var(--branco), var(--branco)) padding-box, var(--caramelo-grad) border-box;
  box-shadow:0 50px 90px -44px rgba(74,44,32,.6);
}
.preco__titulo{font-size:clamp(28px, 3.2vw, 36px);font-weight:800;letter-spacing:-.03em;color:var(--tinta)}
.preco__sub{margin-top:6px;font-size:17px;color:var(--texto-suave)}
.preco__lista{list-style:none;margin:22px 0 0;padding:0;text-align:left}
.preco__lista li{
  display:flex;justify-content:space-between;align-items:baseline;gap:16px;
  padding:12px 2px;border-bottom:1px dashed rgba(74,44,32,.18);font-size:15.5px;line-height:1.4;color:var(--texto);
}
.preco__lista s{flex:none;font-weight:600;color:#9A8A82}
.preco__total{margin-top:16px;font-size:17px;font-weight:600;color:var(--tinta)}
.preco__total s{color:#C2453A;font-weight:700}
.preco__hoje{
  margin:22px 0 22px;padding:22px 16px 20px;border-radius:24px;
  background:linear-gradient(145deg, #FBF3E8, #F4E3CC);border:1px solid rgba(216,180,138,.6);
}
.preco__chamada{font-size:16px;font-weight:600;color:var(--cafe)}
.preco__parc{margin:6px 0 4px;font-size:20px;font-weight:700;color:var(--cafe)}
.preco__parc strong{display:block;font-size:clamp(50px, 6vw, 64px);font-weight:800;line-height:1;letter-spacing:-.045em;color:var(--cafe-2);font-variant-numeric:lining-nums}
.preco__vista{font-size:17px;font-weight:600;color:var(--texto)}
.seguro{margin-top:16px;font-size:13.5px;color:var(--texto-suave)}

/* garantia */
.garantia__cartao{
  display:flex;align-items:center;gap:clamp(20px, 3.4vw, 40px);max-width:820px;margin:0 auto;
  padding:clamp(24px, 3.4vw, 36px);border-radius:30px;
  background:var(--branco);border:1px solid var(--borda);box-shadow:var(--sombra);
}
.garantia__cartao img{flex:none;width:clamp(110px, 13vw, 150px);filter:drop-shadow(0 14px 22px rgba(20,13,10,.25))}
.garantia__cartao p{margin-top:10px;font-size:17px;line-height:1.65}

/* faixa 90 mil */
.faixa{
  position:relative;overflow:hidden;text-align:center;border-radius:32px;
  padding:clamp(36px, 5vw, 56px) 24px;
  background:radial-gradient(70% 120% at 50% 0%, rgba(216,180,138,.28), rgba(216,180,138,0) 60%), var(--preto);
  box-shadow:0 40px 80px -44px rgba(20,13,10,.8);
}
.faixa__num{
  font-size:clamp(34px, 5.2vw, 60px);font-weight:800;letter-spacing:-.035em;line-height:1.05;
  background:var(--caramelo-grad);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;
}
.faixa__sub{margin-top:12px;font-size:clamp(16px, 1.7vw, 20px);color:#E8E2DD}

/* quem sou eu */
.sobre__grade{display:grid;grid-template-columns:5fr 6fr;gap:clamp(28px, 5vw, 64px);align-items:center}
.sobre__foto{border-radius:34px;overflow:hidden;box-shadow:var(--sombra);border:8px solid var(--branco);background:var(--branco)}
.sobre__foto img{width:100%;height:auto}
.sobre__texto p{margin:18px 0 30px;font-size:clamp(17px, 1.6vw, 19px);line-height:1.7}

/* faq */
.faq__wrap{max-width:860px}
.faq__lista{display:grid;gap:12px}
.faq details{border-radius:20px;background:var(--branco);border:1px solid var(--borda);box-shadow:var(--sombra-leve);transition:border-color .3s ease}
.faq details[open]{border-color:rgba(216,180,138,.8)}
.faq summary{
  list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:18px;
  padding:18px 18px 18px 24px;font-size:17px;font-weight:700;line-height:1.4;color:var(--tinta);
}
.faq summary::-webkit-details-marker{display:none}
.faq__ico{
  flex:none;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;
  color:var(--cafe);background:#FBF1E4;box-shadow:inset 0 0 0 1px rgba(216,180,138,.7);
  transition:transform .35s cubic-bezier(.2,.7,.2,1), background-color .3s ease, color .3s ease;
}
.faq__ico svg{width:18px;height:18px}
.faq details[open] .faq__ico{transform:rotate(45deg);background:var(--cafe);color:var(--caramelo-claro)}
.faq__r{padding:0 24px 22px}
.faq__r p{font-size:16px;line-height:1.7;color:var(--texto)}
.faq__r a{color:var(--cafe);font-weight:700;text-decoration-color:var(--caramelo);text-underline-offset:3px}
@media (prefers-reduced-motion: no-preference){
  .faq details[open] .faq__r{animation:abre .4s ease both}
}
@keyframes abre{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}

/* rodapé */
.rodape{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:12px;padding:8px 20px 48px;text-align:center}
.rodape::before{
  content:"";display:block;width:100%;max-width:860px;height:1px;margin-bottom:30px;
  background:linear-gradient(90deg, rgba(74,44,32,0) 0%, rgba(185,138,90,.6) 50%, rgba(74,44,32,0) 100%);
}
.rodape img{width:130px}
.rodape p{font-size:13.5px;color:var(--texto-suave)}

/* entrada ao rolar */
.js-reveal .reveal{opacity:0;transform:translateY(24px);transition:opacity .85s cubic-bezier(.2,.7,.2,1), transform .85s cubic-bezier(.2,.7,.2,1)}
.js-reveal .reveal.is-in{opacity:1;transform:none}
.js-reveal .aula:nth-child(4n+2){transition-delay:.06s}
.js-reveal .aula:nth-child(4n+3){transition-delay:.12s}
.js-reveal .aula:nth-child(4n+4){transition-delay:.18s}

/* ---------- Responsivo ---------- */
@media (max-width: 980px){
  .aulas{grid-template-columns:repeat(2, 1fr)}
  .entregas{grid-template-columns:1fr}
  .bonus{grid-template-columns:1fr}
  .bonus li{flex-direction:row;text-align:left;padding:16px 18px}
}
@media (max-width: 760px){
  body{font-size:16px}
  .praquem__grade,.sobre__grade{grid-template-columns:1fr}
  .praquem__texto .titulo{text-align:center}
  .praquem__texto .sub{text-align:center}
  .sobre__texto{text-align:center}
  .sobre__foto{max-width:420px;margin:0 auto}
  .garantia__cartao{flex-direction:column;text-align:center}
  .btn{width:100%;padding-left:24px;font-size:15px}
  .btn > span:first-child{flex:1;text-align:center}
}
@media (max-width: 520px){
  .aulas{grid-template-columns:1fr}
  .aula{flex-direction:row;flex-wrap:wrap;align-items:center;column-gap:14px;row-gap:4px;padding:18px}
  .aula__ico{margin:0;width:44px;height:44px;border-radius:14px}
  .aula h3{flex:1;font-size:17px}
  .aula p{flex-basis:100%}
  .preco__lista li{flex-direction:column;gap:2px}
  .painel,.faixa{border-radius:28px}
  .print{width:62vw}
  .faq summary{font-size:16px;padding:16px 14px 16px 18px}
  .faq__r{padding:0 18px 18px}
}
