/* ===========================================================
   KIT NATAL LUCRATIVO — estilos
   Paleta vinho/creme · tipografia Playfair + DM Sans + Caveat
   Animações inspiradas no site original (brilho, reflexo, revelações)
   =========================================================== */
:root{
  --wine-900:#2a0908;
  --wine-800:#3a0d0b;
  --wine-700:#4a1210;
  --wine-600:#6a1a16;
  --wine-500:#8b2420;
  --red:#b02a24;
  --cream-50:#faf4ea;
  --cream-100:#f5ebe0;
  --cream-200:#ecdcc8;
  --gold-400:#d4af6a;
  --gold-500:#c9a24b;
  --gold-600:#b08536;
  --ink:#2a1512;
  --ink-soft:#6b4b43;
  --green:#2f7d4f;
  --radius:18px;
  --radius-lg:26px;
  --maxw:1180px;
  --shadow-sm:0 10px 26px rgba(42,9,8,.10);
  --shadow:0 20px 48px rgba(42,9,8,.16);
  --shadow-lg:0 30px 70px rgba(42,9,8,.24);
  --font-serif:"Playfair Display",Georgia,serif;
  --font-sans:"Poppins",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  --font-hand:"Caveat","Playfair Display",cursive;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:86px;-webkit-text-size-adjust:100%;overflow-x:hidden;overscroll-behavior-x:none}
body{
  margin:0;
  font-family:var(--font-sans);
  color:var(--ink);
  background:var(--cream-100);
  line-height:1.6;
  overflow-x:hidden;
  position:relative;
  width:100%;
}
img{max-width:100%;display:block;height:auto}
a{color:inherit;text-decoration:none}
h1,h2,h3{font-family:var(--font-sans);font-weight:800;line-height:1.2;margin:0 0 .5em;letter-spacing:-.02em}
.container{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:20px}
.skip{position:absolute;left:-9999px;top:0;background:#fff;color:var(--wine-700);padding:10px 16px;border-radius:0 0 10px 0;z-index:200}
.skip:focus{left:0}

/* progresso de leitura */
.progress{position:fixed;top:0;left:0;height:3px;width:0;z-index:120;
  background:linear-gradient(90deg,var(--gold-400),var(--red));transition:width .12s linear}

/* ============ BOTÕES ============ */
.btn{
  --b1:var(--gold-400);--b2:var(--gold-600);
  display:inline-flex;align-items:center;gap:.5em;justify-content:center;
  font-family:var(--font-sans);font-weight:800;font-size:15px;letter-spacing:.02em;
  color:var(--wine-900);background:linear-gradient(135deg,var(--b1),var(--b2));
  padding:14px 26px;border:none;border-radius:999px;cursor:pointer;
  box-shadow:0 12px 26px rgba(176,133,54,.38),inset 0 1px 1px rgba(255,255,255,.6);
  transition:transform .25s ease,box-shadow .25s ease,filter .25s ease;
  text-transform:uppercase;line-height:1.2;position:relative;overflow:hidden;
}
.btn::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);
  transform:translateX(-120%);transition:none}
.btn:hover{transform:translateY(-3px);box-shadow:0 18px 36px rgba(176,133,54,.5),inset 0 1px 1px rgba(255,255,255,.7);filter:saturate(1.08)}
.btn:hover::after{animation:btnShine .8s ease}
@keyframes btnShine{to{transform:translateX(120%)}}
.btn:focus-visible{outline:3px solid var(--wine-700);outline-offset:3px}
.btn-lg{font-size:16px;padding:17px 32px}
.btn-block{width:100%}
.btn-gold{--b1:#e7c67e;--b2:#c08a2d}

/* ============ TOPBAR ============ */
.topbar{
  background:linear-gradient(90deg,var(--wine-800),var(--red),var(--wine-800));
  background-size:200% auto;animation:bgSlide 12s linear infinite;
  color:#fff;font-size:12.5px;font-weight:700;letter-spacing:.15em;
  padding:10px 0;text-transform:uppercase;overflow:hidden;white-space:nowrap;text-shadow:0 1px 3px rgba(0,0,0,.35)}
.topbar strong{color:#fff}
.topbar-track{display:inline-flex;will-change:transform;animation:topbarScroll 26s linear infinite}
.topbar-track span{padding-right:0}
@keyframes bgSlide{to{background-position:200% center}}
@keyframes topbarScroll{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.topbar-track{animation:none}}

/* ============ HEADER ============ */
.header{position:sticky;top:0;z-index:100;
  background:linear-gradient(to bottom,rgba(42,13,11,.92),rgba(42,13,11,.45) 62%,transparent);
  transition:background .3s ease,box-shadow .3s ease,backdrop-filter .3s ease}
.header.is-scrolled{background:rgba(42,13,11,.92);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 26px rgba(0,0,0,.28)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-block:12px}
.logo{display:flex;align-items:center;gap:9px;color:#fff}
.logo-spark{font-size:20px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.4))}
.logo-word{display:flex;flex-direction:row;align-items:baseline;gap:7px;line-height:1;font-family:var(--font-serif)}
.logo-word em{font-style:italic;font-weight:600;font-size:23px;letter-spacing:.01em;
  background:linear-gradient(175deg,#fbe9b5 0%,#e7c67e 45%,#c9a24b 75%,#a9803a 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;
  filter:drop-shadow(0 1px 2px rgba(0,0,0,.35))}
.logo-word strong{font-size:21px;letter-spacing:.14em;font-weight:800;color:#fff6e9;
  text-shadow:0 1px 3px rgba(0,0,0,.45)}
/* logo em imagem (dourado) — ocupa melhor o topo */
/* logo em texto maior no mobile — preenche o topo sem aumentar o header */
@media (max-width:640px){
  .logo-spark{font-size:28px}
  .logo-word{gap:9px}
  .logo-word em{font-size:31px}
  .logo-word strong{font-size:28px;letter-spacing:.12em}
}
.nav{display:flex;gap:22px;font-size:14px;font-weight:600}
.nav a{color:rgba(255,255,255,.86);transition:color .2s}
.nav a:hover{color:var(--gold-400)}
.header:not(.is-scrolled) .nav a{color:rgba(255,255,255,.92);text-shadow:0 1px 3px rgba(0,0,0,.4)}
.header-cta{padding:11px 22px;font-size:13px}

/* ============ HERO ============ */
.hero{position:relative;min-height:100vh;min-height:100svh;display:flex;align-items:center;overflow:hidden;isolation:isolate;color:#fff;background:#2a0d0b}
/* camadas do hero com z-index POSITIVOS: z-index negativo + contexto isolado
   fazia a foto do fundo não pintar no 1º load em vários Androids/Chrome.
   translateZ(0) força a camada da foto a compor na hora. */
.hero-picture,.hero-picture img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.hero-picture{transform:translateZ(0);will-change:transform;backface-visibility:hidden}
.hero-tint{position:absolute;inset:0;z-index:1;
  background:linear-gradient(100deg,rgba(26,6,5,.93) 0%,rgba(42,13,11,.72) 40%,rgba(42,13,11,.40) 68%,rgba(42,13,11,.26) 100%),
    linear-gradient(0deg,rgba(26,6,5,.72),transparent 42%)}
.hero .floatie{z-index:2}
.hero-inner{padding-block:118px 70px;position:relative;z-index:3}
.hero-copy{max-width:620px}
.hero-badge{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:#ffe9c7;background:rgba(201,162,75,.18);border:1px solid rgba(212,175,106,.5);
  padding:7px 15px;border-radius:999px;margin-bottom:20px}
.hero h1{font-size:clamp(30px,5.4vw,54px);font-weight:800;margin-bottom:14px;text-shadow:0 4px 24px rgba(0,0,0,.4);line-height:1.08}
.hero h1 span{color:#ffce6b;font-size:1.06em;font-weight:800;white-space:nowrap;
  text-shadow:0 2px 12px rgba(0,0,0,.35),0 0 22px rgba(255,201,92,.6)}
.hero-kicker{font-size:clamp(15px,1.9vw,18px);color:rgba(255,255,255,.9);max-width:430px;margin:0 0 18px;line-height:1.45}
.hero p{font-size:clamp(16px,2vw,19px);color:rgba(255,255,255,.9);max-width:540px;margin:0 0 10px}
.hero p strong{color:#ffe1b0}
.hero-note{font-family:var(--font-hand);font-size:clamp(22px,3vw,30px);color:var(--gold-400);
  transform:rotate(-4deg);margin:6px 0 22px;display:inline-block;text-shadow:0 2px 10px rgba(0,0,0,.35)}
.hero-note.note--dark{color:var(--red);text-shadow:none}
.hero .btn{margin-bottom:14px}
.hero-trust{font-size:13.5px;font-weight:600;color:rgba(255,255,255,.85);letter-spacing:.01em;margin:0 0 10px}
.hero-mini{list-style:none;display:flex;flex-wrap:wrap;gap:26px;margin:0;padding:0}
.hero-mini li{display:flex;align-items:center;gap:10px;font-size:13px;line-height:1.2;color:#fff;font-weight:700;text-shadow:0 1px 4px rgba(0,0,0,.5)}
.hero-mini-ic{width:48px;height:48px;display:grid;place-items:center;font-size:23px;border-radius:50%;
  background:linear-gradient(135deg,#fff6e8,#efd6a3);border:1.5px solid var(--gold-600);box-shadow:0 5px 14px rgba(0,0,0,.4)}
.hero-mini em{font-style:normal}

/* flutuantes temáticos */
.floatie{position:absolute;z-index:-1;font-size:34px;opacity:.5;filter:drop-shadow(0 6px 10px rgba(0,0,0,.25));
  animation:floatY 7s ease-in-out infinite;pointer-events:none;will-change:transform}
.floatie--1{top:22%;right:8%;font-size:46px;animation-duration:8s}
.floatie--2{bottom:20%;right:22%;font-size:38px;animation-duration:6.5s;animation-delay:-2s}
.floatie--3{top:34%;right:30%;font-size:30px;animation-duration:9s;animation-delay:-1s}
.floatie--4{bottom:30%;right:5%;font-size:26px;animation-duration:7.5s;animation-delay:-3s}
.floatie--r1{top:12%;left:4%;font-size:40px;opacity:.35}
.floatie--r2{bottom:14%;left:40%;font-size:30px;opacity:.35;animation-delay:-2s}
.floatie--s1{top:8%;left:6%;font-size:40px;opacity:.28}
.floatie--s2{bottom:10%;right:7%;font-size:34px;opacity:.28;animation-delay:-3s}
.floatie--b1{top:12%;right:8%;font-size:46px;opacity:.3}
.floatie--f1{top:16%;left:5%;font-size:40px;opacity:.3}
.floatie--f2{bottom:14%;right:6%;font-size:38px;opacity:.3;animation-delay:-2.5s}
@keyframes floatY{0%,100%{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-22px) rotate(6deg)}}

/* ============ SEÇÕES BASE ============ */
section{position:relative}
.section-cream{background:var(--cream-50)}
.eyebrow{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;
  color:var(--red);margin-bottom:12px}
.eyebrow.gold{color:var(--gold-600)}
.eyebrow.light{color:#ffd9a3}
.section-head{max-width:720px;margin-bottom:38px}
.section-head.centered{margin-inline:auto;text-align:center}
.section-head h2{font-size:clamp(27px,3.6vw,42px);color:var(--wine-700)}
.section-head p{color:var(--ink-soft);font-size:17px;margin-top:6px}
.section-head em,h2 em,h2 span,h1 span{font-style:normal}
.section-head em,h2 em{color:var(--red)}

/* título com brilho (estilo original) */
.shimmer,.shimmer-dark{
  background:linear-gradient(110deg,var(--gold-600) 20%,#f0cd85 45%,#fff2d6 52%,var(--gold-600) 75%);
  background-size:220% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  animation:shimmer 6s linear infinite}
.shimmer-dark{background:linear-gradient(110deg,var(--wine-700) 25%,var(--red) 50%,var(--gold-600) 60%,var(--wine-700) 80%);
  background-size:220% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
@keyframes shimmer{0%{background-position:200% center}100%{background-position:-200% center}}

/* revelações no scroll */
/* Conteúdo visível por padrão; só esconde p/ animar quando o JS confirma (.has-js).
   Assim, se o JS não rodar, NADA fica invisível (nunca mais página em branco). */
.reveal{transition:opacity .7s ease,transform .7s ease;transition-delay:var(--delay,0s)}
.has-js .reveal{opacity:0;transform:translateY(28px)}
.has-js .reveal--left{transform:translateX(-34px) translateY(10px)}
.has-js .reveal--right{transform:translateX(34px) translateY(10px)}
.reveal.visible{opacity:1;transform:none}

/* ============ KIT PREVIEW ============ */
.kit-preview{padding-block:70px 80px}
.kit-preview-inner{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:center}
.kit-preview-copy p{color:var(--ink-soft);font-size:17px;margin-bottom:22px}
.mini-feats{list-style:none;padding:0;margin:0 0 26px;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.mini-feats li{display:flex;align-items:center;gap:12px;font-size:14.5px;
  background:#fff;border:1px solid rgba(201,162,75,.4);border-radius:14px;
  padding:12px 14px;box-shadow:0 5px 16px rgba(123,17,19,.07);transition:transform .25s ease,box-shadow .25s ease}
.mini-feats li:hover{transform:translateY(-3px);box-shadow:0 10px 22px rgba(123,17,19,.12)}
.mini-feats .mf-ic{width:42px;height:42px;min-width:42px;display:grid;place-items:center;font-size:20px;border-radius:50%;
  background:linear-gradient(135deg,#fff7e8,#efd49b);border:1.5px solid var(--gold-500);
  box-shadow:0 3px 9px rgba(123,17,19,.14)}
.mini-feats strong{font-weight:700;color:var(--wine-700);line-height:1.2}
.kit-preview-image{position:relative;filter:drop-shadow(0 30px 44px rgba(42,9,8,.26))}
.kit-badge{position:absolute;top:-6px;right:2px;z-index:3;width:92px;height:92px;border-radius:50%;
  display:grid;place-content:center;text-align:center;font-size:10px;font-weight:600;letter-spacing:.06em;line-height:1.35;
  color:#fff;background:radial-gradient(circle at 35% 30%,var(--red),var(--wine-700));
  border:2px dashed rgba(255,255,255,.55);box-shadow:var(--shadow);transform:rotate(9deg);text-transform:uppercase;
  animation:floatY 6s ease-in-out infinite}
.kit-badge strong{font-size:12px}

/* ============ RECEITAS ============ */
.receitas{background:linear-gradient(160deg,var(--cream-100),var(--cream-200));padding-block:74px;overflow:hidden}
.receitas-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:46px;align-items:center}
.receitas-copy h2{font-size:clamp(27px,3.6vw,44px);color:var(--wine-700)}
.receitas-copy p{color:var(--ink-soft);font-size:17px;margin:4px 0 22px;max-width:460px}
.receitas-art img{border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}
/* ===== CARROSSEL DE RECEITAS (rolagem infinita suave) ===== */
.receitas-head{max-width:700px;margin-inline:auto;text-align:center}
.receitas-head .hero-note{display:inline-block}
.receitas-head p{color:var(--ink-soft);font-size:17px;margin:6px auto 0;max-width:580px}
.recipe-carousel{margin-top:16px;overflow:hidden;padding-block:12px;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
/* base = carrossel de RECEITAS (aceleracao leve) */
.recipe-track{display:flex;width:max-content;animation:recipeScroll 48s linear infinite;will-change:transform}
/* provas sociais (reviews + comunidade) voltam para velocidade calma de antes */
.recipe-track--rev,.recipe-track--feed{animation-duration:72s}
/* carrossel travado: nunca pausa, não recebe cliques nem deixa baixar/arrastar as imagens */
.recipe-carousel{pointer-events:none}
.recipe-card{flex:none;width:300px;margin:0 20px 0 0;border-radius:20px;overflow:hidden}
.recipe-card img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;
  -webkit-user-drag:none;-webkit-touch-callout:none;user-select:none;pointer-events:none}
@keyframes recipeScroll{to{transform:translateX(-50%)}}
@media (max-width:640px){
  .recipe-card{width:232px;margin-right:14px;border-radius:16px}
  .recipe-track{animation-duration:40s}
  .recipe-track--rev,.recipe-track--feed{animation-duration:58s}
  .receitas-head p{font-size:15.5px}
}
@media (prefers-reduced-motion:reduce){.recipe-track{animation:none}}

/* ===== GARANTIA (selo animado, antes do preço) ===== */
.guarantee{padding-block:60px}
.guarantee-inner{display:flex;align-items:center;gap:36px;background:#fff;border:1px solid var(--cream-200);
  border-radius:var(--radius-lg);padding:32px 40px;box-shadow:var(--shadow);max-width:900px;margin-inline:auto;
  position:relative;overflow:hidden}
.guarantee-inner::before{content:"";position:absolute;top:-80%;left:-45%;width:50%;height:260%;
  background:linear-gradient(90deg,transparent,rgba(212,175,106,.35),transparent);transform:rotate(22deg);
  animation:reflexo 6.5s ease-in-out infinite;pointer-events:none}
.guarantee-selo-wrap{flex:none}
.guarantee-selo{width:min(220px,50vw);height:auto;display:block;
  animation:sealPulse 2.8s ease-in-out infinite;filter:drop-shadow(0 12px 26px rgba(42,9,8,.3))}
@keyframes sealPulse{0%,100%{transform:scale(1) rotate(-1.5deg)}50%{transform:scale(1.06) rotate(1.5deg)}}
.guarantee-copy h2{font-size:clamp(23px,3.2vw,34px);color:var(--wine-700);margin:2px 0 8px}
.guarantee-copy h2 em{color:var(--red);font-style:normal}
.guarantee-copy p{margin:0 0 14px;color:var(--ink-soft);font-size:16px}
.guarantee-copy p strong{color:var(--wine-700)}
.guarantee-badges{display:flex;flex-wrap:wrap;gap:8px}
.guarantee-badges span{font-size:12.5px;font-weight:700;color:var(--wine-700);background:var(--cream-100);
  border:1px solid var(--cream-200);border-radius:999px;padding:7px 13px}
@media (max-width:640px){
  .guarantee-inner{flex-direction:column;text-align:center;gap:16px;padding:26px 20px}
  .guarantee-badges{justify-content:center}
  .guarantee-selo{width:min(190px,56vw)}
}
@media (prefers-reduced-motion:reduce){.guarantee-selo{animation:none}}

/* avatar do pop-up agora é foto real */
img.popnote-av{object-fit:cover;background:#e9ddcb;padding:0;border:2px solid rgba(255,255,255,.9)}

/* carrossel social: sentido invertido e nota de receitas centralizada */
.recipe-track--rev{animation-direction:reverse}
.receitas-foot{text-align:center;margin-top:14px}
.receitas-foot .hero-note{display:inline-block}

/* mini-feats alinhados e bonitos */
.mini-feats li{display:flex;align-items:center;gap:11px;font-size:14px;min-height:44px}
.mini-feats li span{flex:none}
.mini-feats li div{display:flex;align-items:center}

/* ===== ESPAÇAMENTOS ENXUTOS (menos espaço vão entre seções) ===== */
.kit-preview{padding-block:52px 56px}
.receitas,.steps,.showcase,.video,.story,.personas,.bonus,.reviews,.faq{padding-block:56px}
.section-head{margin-bottom:28px}
@media (max-width:640px){
  .kit-preview,.receitas,.steps,.showcase,.video,.story,.personas,.bonus,.reviews,
  .finaloffer,.faq,.scarcity,.guarantee{padding-block:26px !important}
  .kit-preview-inner,.receitas-grid,.video-grid,.story-grid,.finaloffer-grid,.guarantee-inner{gap:18px !important}
  .mini-feats{margin-bottom:4px !important}
  .kit-preview-copy p,.story-copy p,.receitas-copy p{margin-bottom:12px}
  .section-head,.receitas-head{margin-bottom:16px}
  .receitas-head{margin-bottom:4px}
  .recipe-carousel{margin-top:8px}
  .receitas-foot{margin-top:6px}
}

/* ============ PASSO A PASSO ============ */
.steps{padding-block:74px}
.steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.step{background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm);
  border:1px solid var(--cream-200);transition:transform .3s ease,box-shadow .3s ease}
.step:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.step-img{aspect-ratio:4/3;overflow:hidden;background:var(--cream-200)}
.step-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.step:hover .step-img img{transform:scale(1.06)}
.step-body{display:flex;gap:12px;align-items:flex-start;padding:18px 18px 22px}
.step-num{font-family:var(--font-serif);font-size:34px;font-weight:800;line-height:1;color:var(--gold-500);flex:none}
.step-body h3{font-size:19px;color:var(--wine-700);margin:0 0 4px}
.step-body p{font-size:14px;color:var(--ink-soft);margin:0}

/* ============ VITRINE (dark) ============ */
.showcase{background:radial-gradient(130% 100% at 50% 0%,var(--wine-600),var(--wine-800) 60%,var(--wine-900));
  color:#fff;padding-block:76px;overflow:hidden}
.showcase .section-head h2{color:#fff}
.showcase .section-head em{color:var(--gold-400)}
.showcase-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.shot{margin:0;background:rgba(255,255,255,.06);border:1px solid rgba(212,175,106,.26);border-radius:var(--radius);
  overflow:hidden;box-shadow:0 18px 40px rgba(0,0,0,.3);transition:transform .3s ease,border-color .3s ease}
.shot:hover{transform:translateY(-6px);border-color:rgba(212,175,106,.6)}
.shot img{width:100%;aspect-ratio:1/1;object-fit:cover}
.shot figcaption{display:flex;flex-direction:column;gap:3px;padding:14px 16px 18px}
.shot figcaption strong{font-size:15px}
.shot figcaption span{font-size:12.5px;color:rgba(255,255,255,.66)}

/* ============ OFERTA 1 ============ */
.offerband{background:var(--cream-50);padding-block:40px}
.offerband-card{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:28px;
  background:linear-gradient(135deg,#fff,var(--cream-100));border:1px solid var(--cream-200);
  border-radius:var(--radius-lg);padding:26px 32px;box-shadow:var(--shadow);position:relative;overflow:hidden}
.offerband-card::before{content:"";position:absolute;top:-80%;left:-45%;width:50%;height:260%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.6),transparent);transform:rotate(22deg);
  animation:reflexo 6.5s ease-in-out infinite;pointer-events:none}
@keyframes reflexo{0%,65%{left:-50%}100%{left:135%}}
.offerband-left h3{font-size:22px;color:var(--wine-700);margin:0 0 4px}
.offerband-left p{margin:0;color:var(--ink-soft)}
.offerband-left strong{color:var(--red);font-size:20px}
.offerband-right{text-align:right}
.offerband-from{margin:0;font-size:13px;color:var(--ink-soft)}
.offerband-now{display:flex;flex-direction:column;align-items:flex-end}
.offerband-now .price{font-family:var(--font-serif);font-size:34px;font-weight:800;color:var(--green)}
.offerband-now .parc{font-size:13px;color:var(--ink-soft)}

/* ============ VÍDEO ============ */
.video{padding-block:74px}
.video-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:46px;align-items:center}
.video-player{position:relative}
.video-thumb{position:relative;display:block;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg)}
.video-thumb img{width:100%;aspect-ratio:3/2;object-fit:cover;transition:transform .5s ease}
.video-thumb:hover img{transform:scale(1.04)}
.video-play{position:absolute;top:50%;left:50%;width:76px;height:76px;transform:translate(-50%,-50%);border-radius:50%;
  background:rgba(176,42,36,.92);box-shadow:0 10px 30px rgba(0,0,0,.4);display:grid;place-items:center}
.video-play::before{content:"";margin-left:5px;border-style:solid;border-width:14px 0 14px 23px;border-color:transparent transparent transparent #fff}
.video-play::after{content:"";position:absolute;inset:-14px;border-radius:50%;border:2px solid rgba(255,255,255,.55);
  animation:pulseRing 2.2s ease-out infinite}
@keyframes pulseRing{0%{transform:scale(.85);opacity:.9}100%{transform:scale(1.5);opacity:0}}
.video-note{position:absolute;top:-18px;left:-6px;z-index:4;transform:rotate(-8deg)}
.video-copy h2{font-size:clamp(26px,3.4vw,40px);color:var(--wine-700)}
.video-copy p{color:var(--ink-soft);font-size:17px;margin:4px 0 22px}

/* ============ STORY / MERCADO ============ */
.story{background:var(--cream-50);padding-block:74px;overflow:hidden}
.story-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:46px;align-items:center}
.story-copy h2{font-size:clamp(26px,3.4vw,40px);color:var(--wine-700)}
.story-copy h2 span{color:var(--red);font-style:italic}
.story-quote{font-family:var(--font-sans);font-style:normal;font-weight:600;font-size:18px;color:var(--wine-600);
  border-left:4px solid var(--gold-400);padding-left:16px;margin:16px 0 20px}
.story-list{list-style:none;padding:0;margin:0 0 24px;display:grid;gap:12px}
.story-list li{display:block;position:relative;padding-left:27px;font-size:15.5px;color:var(--ink)}
.story-list li>span{position:absolute;left:0;top:2px;color:var(--green);font-weight:800}
.story-list strong{color:var(--wine-700)}
.story-art img{border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}

/* ============ PERSONAS ============ */
.personas{padding-block:74px}
.personas-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.persona{background:#fff;border:1px solid var(--cream-200);border-radius:var(--radius);padding:26px 24px;
  box-shadow:var(--shadow-sm);transition:transform .3s ease,box-shadow .3s ease}
.persona:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.persona-ic{font-size:32px;display:block;margin-bottom:10px}
.persona h3{font-size:18px;color:var(--wine-700);margin:0 0 6px}
.persona p{font-size:14.5px;color:var(--ink-soft);margin:0}

/* ============ BÔNUS (dark) ============ */
.bonus{background:radial-gradient(130% 100% at 50% 0%,var(--wine-600),var(--wine-800) 65%,var(--wine-900));
  color:#fff;padding-block:76px;overflow:hidden}
.bonus .section-head h2{color:#fff}
.bonus .section-head em{color:var(--gold-400)}
.bonus .section-head p{color:rgba(255,255,255,.72)}
.bonus-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:20px}
.bonus-card{background:rgba(255,255,255,.06);border:1px solid rgba(212,175,106,.26);border-radius:var(--radius);
  padding:16px 16px 20px;text-align:center;box-shadow:0 18px 40px rgba(0,0,0,.3);
  transition:transform .3s ease,border-color .3s ease}
.bonus-card:hover{transform:translateY(-6px);border-color:rgba(212,175,106,.6)}
.bonus-card img{width:100%;aspect-ratio:1.6/1;object-fit:contain;border-radius:12px;margin-bottom:12px;background:rgba(255,255,255,.04)}
.bonus-card h3{font-size:16px;margin:0 0 6px}
.bonus-card p{font-size:13px;color:rgba(255,255,255,.72);margin:0 0 12px;min-height:34px}
.bonus-val{display:flex;align-items:center;justify-content:center;gap:8px;font-size:14px}
.bonus-val s{color:rgba(255,255,255,.55)}
.bonus-val strong{color:#9be6a8;font-weight:800;letter-spacing:.04em}

/* ============ FAIXA RESULTADOS ============ */
.resultband{background:linear-gradient(135deg,var(--wine-800),var(--red));color:#fff;padding-block:64px;text-align:center;overflow:hidden}
.resultband .section-head{margin-inline:auto}
.resultband .section-head h2{font-size:clamp(26px,3.6vw,42px)}
.resultband-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:10px}
.resultfeat{display:flex;flex-direction:column;align-items:center;gap:4px;
  background:rgba(255,255,255,.06);border:1px solid rgba(212,175,106,.3);border-radius:var(--radius);padding:24px 16px}
.resultfeat span{font-size:30px;margin-bottom:6px}
.resultfeat strong{font-size:16px}
.resultfeat em{font-style:normal;font-size:13.5px;color:rgba(255,255,255,.72)}

/* ============ DEPOIMENTOS ============ */
.reviews{padding-block:70px}
.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.review-ph{background:#fff;border:1px dashed var(--cream-200);border-radius:var(--radius);padding:30px 24px;text-align:center;color:var(--ink-soft)}
.review-ph span{font-size:30px;display:block;margin-bottom:10px}
.review-ph p{margin:0;font-size:14px}

/* ============ OFERTA FINAL ============ */
.finaloffer{background:radial-gradient(120% 90% at 50% 0%,var(--wine-700),var(--wine-900));color:#fff;padding-block:80px;overflow:hidden}
.finaloffer-grid{display:grid;grid-template-columns:1fr .9fr;gap:46px;align-items:center}
.finaloffer-left h2{font-size:clamp(28px,3.8vw,44px)}
.finaloffer-left h2 span{color:var(--gold-400);font-style:italic}
.finaloffer-list{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:12px}
.finaloffer-list li{display:flex;gap:10px;align-items:baseline;font-size:15.5px;color:rgba(255,255,255,.92)}
.finaloffer-list span{color:#9be6a8;font-weight:800}
.finaloffer-list .fo-ck{flex:none}
.finaloffer-list .fo-item{flex:1;color:rgba(255,255,255,.94);font-weight:600}
.finaloffer-list s{color:#ff8a76;font-weight:700;white-space:nowrap;letter-spacing:.01em}
.finaloffer-list .fo-free{color:#9be6a8;font-weight:800;white-space:nowrap}
.finaloffer-list .fo-bonus .fo-item{color:var(--gold-400);font-weight:800}
.finaloffer-list .fo-gift{color:var(--gold-400);font-weight:800;white-space:nowrap;letter-spacing:.04em}
.finaloffer-box{background:linear-gradient(135deg,#fff,var(--cream-100));color:var(--ink);border-radius:var(--radius-lg);
  padding:34px 30px;text-align:center;box-shadow:var(--shadow-lg);position:relative;overflow:hidden;
  border:2px solid var(--gold-400)}
.finaloffer-box::before{content:"";position:absolute;top:-80%;left:-45%;width:50%;height:260%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.65),transparent);transform:rotate(22deg);
  animation:reflexo 6.5s ease-in-out infinite;pointer-events:none}
.finaloffer-ribbon{display:inline-block;background:var(--red);color:#fff;font-size:12px;font-weight:800;letter-spacing:.08em;
  padding:7px 16px;border-radius:999px;text-transform:uppercase;margin-bottom:16px}
.finaloffer-from{margin:0;color:var(--ink-soft);font-size:14px}
.finaloffer-from s{opacity:.8}
.finaloffer-price{font-family:var(--font-serif);font-size:54px;font-weight:800;color:var(--green);line-height:1;margin:6px 0 0}
.finaloffer-price small{font-size:16px;color:var(--ink-soft);font-weight:600}
.finaloffer-box .btn-lg{margin-top:22px}
.finaloffer-parc{margin:0 0 16px;color:var(--ink-soft);font-size:14px}
.finaloffer-save{background:var(--cream-200);border-radius:14px;padding:12px;margin-bottom:18px;display:grid;gap:2px}
.finaloffer-save strong{color:var(--wine-700);font-size:16px}
.finaloffer-save span{font-size:13px;color:var(--ink-soft)}
.finaloffer-secure{margin-top:14px;font-size:12.5px;color:var(--ink-soft)}

/* ============ GARANTIA ============ */
.guarantee{padding-block:60px}
.guarantee-inner{display:flex;align-items:center;gap:30px;background:#fff;border:1px solid var(--cream-200);
  border-radius:var(--radius-lg);padding:32px 36px;box-shadow:var(--shadow-sm);max-width:900px;margin-inline:auto}
.guarantee-seal{flex:none;width:104px;height:104px;border-radius:50%;display:grid;place-content:center;text-align:center;
  color:#fff;background:radial-gradient(circle at 35% 30%,var(--green),#1f5a38);box-shadow:var(--shadow);
  border:3px solid rgba(255,255,255,.6)}
.guarantee-seal span{font-family:var(--font-serif);font-size:38px;font-weight:800;line-height:1}
.guarantee-seal small{font-size:12px;letter-spacing:.12em}
.guarantee-copy h2{font-size:26px;color:var(--wine-700);margin:2px 0 6px}
.guarantee-copy p{margin:0;color:var(--ink-soft)}

/* ============ FAQ ============ */
.faq{padding-block:70px;background:var(--cream-50)}
.faq-list{max-width:780px;margin-inline:auto;display:grid;gap:12px}
.faq details{background:#fff;border:1px solid var(--cream-200);border-radius:14px;padding:4px 20px;box-shadow:var(--shadow-sm)}
.faq summary{display:flex;justify-content:space-between;align-items:center;gap:14px;cursor:pointer;list-style:none;
  padding:16px 0;font-family:var(--font-sans);font-size:16px;font-weight:700;color:var(--wine-700)}
.faq summary::-webkit-details-marker{display:none}
.faq summary span{font-size:24px;color:var(--gold-500);transition:transform .25s ease;flex:none}
.faq details[open] summary span{transform:rotate(45deg)}
.faq details p{margin:0 0 16px;color:var(--ink-soft);font-size:15px}

/* ============ ESCASSEZ ============ */
.scarcity{background:linear-gradient(135deg,var(--red),var(--wine-700));color:#fff;text-align:center;padding-block:66px}
.scarcity-tag{display:inline-block;background:#ffe9c7;color:var(--wine-700);font-weight:800;font-size:13px;letter-spacing:.08em;
  padding:6px 16px;border-radius:999px;margin-bottom:14px}
.scarcity h2{font-size:clamp(26px,3.6vw,40px);margin-bottom:10px}
.scarcity p{max-width:620px;margin:0 auto 24px;color:rgba(255,255,255,.9)}
.scarcity s{opacity:.8}

/* ============ FOOTER ============ */
.footer{background:var(--wine-900);color:rgba(255,255,255,.7);padding-block:46px;text-align:center}
.footer-inner{display:flex;flex-direction:column;align-items:center;gap:12px}
.logo-footer{justify-content:center}
.footer-tag{margin:0;font-size:14.5px;max-width:420px}
.footer-legal{margin:0;font-size:12.5px;color:rgba(255,255,255,.45)}

/* ============ STICKY CTA MOBILE ============ */
.sticky-cta{position:fixed;left:12px;right:12px;bottom:12px;z-index:90;
  display:none;align-items:center;justify-content:space-between;gap:14px;
  background:rgba(42,13,11,.97);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
  color:#fff;border:1px solid rgba(212,175,106,.4);border-radius:16px;padding:11px 14px;
  box-shadow:0 14px 34px rgba(0,0,0,.4);transform:translateY(130%);transition:transform .35s ease}
.sticky-cta.show{transform:none}
.sticky-cta div{display:flex;flex-direction:column;line-height:1.2}
.sticky-cta span{font-size:11px;color:rgba(255,255,255,.72)}
.sticky-cta span s{opacity:.7}
.sticky-cta strong{font-size:19px;color:var(--gold-400);font-family:var(--font-serif)}
.sticky-cta a{background:linear-gradient(135deg,#e7c67e,#c08a2d);color:var(--wine-900);font-weight:800;
  padding:11px 18px;border-radius:12px;font-size:14px;white-space:nowrap}

/* ============ POP-UP FLUTUANTE (prova social) ============ */
.popnote{position:fixed;left:16px;bottom:16px;z-index:95;max-width:300px;
  display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--cream-200);
  border-left:4px solid var(--green);border-radius:14px;padding:12px 14px;box-shadow:var(--shadow);
  transform:translateY(24px);opacity:0;transition:transform .45s ease,opacity .45s ease}
.popnote.show{transform:none;opacity:1}
.popnote-ic{width:40px;height:40px;min-width:40px;display:grid;place-items:center;font-size:20px;border-radius:10px;background:var(--cream-100)}
.popnote-txt{display:flex;flex-direction:column;line-height:1.3;font-size:13px}
.popnote-txt strong{color:var(--wine-700);font-size:13.5px}
.popnote-txt span{color:var(--ink-soft);font-size:12px}
.popnote-x{position:absolute;top:6px;right:8px;background:none;border:none;font-size:16px;color:var(--ink-soft);cursor:pointer;line-height:1}

/* ============ NEVE ============ */
.snow{position:fixed;inset:0;z-index:80;pointer-events:none;overflow:hidden}
.snow i{position:absolute;top:-10px;color:#fff;opacity:.8;animation:snowFall linear infinite;will-change:transform}
@keyframes snowFall{to{transform:translateY(105vh) rotate(360deg)}}

/* ============ MODAL CHECKOUT ============ */
.modal{border:none;border-radius:var(--radius-lg);padding:0;max-width:440px;width:calc(100% - 32px);box-shadow:var(--shadow-lg)}
.modal::backdrop{background:rgba(26,6,5,.55);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
.checkout-modal-content{padding:34px 30px;text-align:center}
.checkout-modal-icon{font-size:36px;display:block;margin-bottom:10px}
.checkout-modal h3{font-size:22px;color:var(--wine-700);margin:0 0 10px}
.checkout-modal p{color:var(--ink-soft);font-size:14.5px;margin:0 0 20px}
.checkout-modal code{background:var(--cream-100);padding:2px 6px;border-radius:6px;font-size:13px;color:var(--red)}
.modal-close{position:absolute;top:10px;right:14px;background:none;border:none;font-size:26px;color:var(--ink-soft);cursor:pointer}

/* ===========================================================
   RESPONSIVO
   =========================================================== */
@media (max-width:980px){
  .nav{display:none}
  .kit-preview-inner,.receitas-grid,.video-grid,.story-grid,.finaloffer-grid{grid-template-columns:1fr}
  .kit-preview-image{order:-1;max-width:460px;margin-inline:auto}
  .receitas-art,.video-player{order:-1}
  .steps-grid{grid-template-columns:repeat(2,1fr)}
  .showcase-grid{grid-template-columns:repeat(3,1fr)}
  .bonus-grid{grid-template-columns:repeat(3,1fr)}
  .resultband-grid{grid-template-columns:repeat(2,1fr)}
  .personas-grid{grid-template-columns:repeat(2,1fr)}
  .offerband-card{grid-template-columns:1fr;text-align:center;gap:16px}
  .offerband-right{text-align:center}
  .offerband-now{align-items:center}
}
@media (max-width:860px){
  .finaloffer-box{max-width:460px;margin-inline:auto}
  .guarantee-inner{flex-direction:column;text-align:center;gap:18px}
}
@media (max-width:640px){
  .header-cta{display:none}
  .hero-inner{padding-block:96px 56px}
  .hero-note{transform:rotate(-3deg)}
  .hero-mini{gap:16px 20px}
  .hero-mini li{font-size:11.5px}
  .showcase-grid{grid-template-columns:repeat(2,1fr)}
  .bonus-grid{grid-template-columns:repeat(2,1fr)}
  .reviews-grid{grid-template-columns:1fr}
  .sticky-cta{display:flex}
  /* prova social discreta no mobile: compacta, canto, sem poluir */
  .popnote{left:10px;right:auto;bottom:calc(86px + env(safe-area-inset-bottom));
    max-width:248px;min-width:0;gap:9px;padding:8px 12px 8px 8px;border-radius:12px}
  .popnote-av{width:32px;height:32px;min-width:32px;font-size:14px}
  .popnote-txt strong{font-size:12px}
  .popnote-stars{font-size:9.5px;letter-spacing:1px}
  .popnote-txt span{font-size:10px}
  .popnote-x{font-size:13px;top:4px;right:6px}
  .floatie{display:none}
  .snow{display:none}
  body{padding-bottom:0}
  .steps-grid{gap:16px}
  .step-num{font-size:28px}
}
@media (max-width:420px){
  .showcase-grid,.bonus-grid,.personas-grid,.steps-grid,.mini-feats{grid-template-columns:1fr}
  .resultband-grid{grid-template-columns:1fr}
  .hero h1{font-size:30px}
  .finaloffer-price{font-size:46px}
}

/* ===========================================================
   ESTILO DE MARCA (ref. bifit) — faixa marquee, pop-up premium,
   reveals com pop e textura quente
   =========================================================== */
/* faixa diagonal com benefícios rolando (assinatura visual) */
.ribbon{overflow:hidden;transform:rotate(-2deg);width:108%;margin-inline:-4%;
  background:linear-gradient(90deg,var(--red),var(--wine-600) 50%,var(--red));
  border-block:2px solid rgba(212,175,106,.55);box-shadow:0 16px 40px rgba(42,9,8,.22);position:relative;z-index:2}
.ribbon--a{margin-top:-20px;margin-bottom:46px}
.ribbon--b{margin-top:42px;margin-bottom:-20px}
.ribbon-track{display:flex;width:max-content;animation:ribbonScroll 32s linear infinite}
.ribbon-track--rev{animation-direction:reverse}
.ribbon{pointer-events:none}
.ribbon-track b{display:inline-flex;align-items:center;gap:10px;flex:none;
  color:#ffe9c7;font-weight:800;font-size:14px;letter-spacing:.04em;text-transform:uppercase;
  padding:13px 30px;position:relative}
.ribbon-track b::after{content:"✦";position:absolute;right:-6px;top:50%;transform:translateY(-50%);color:var(--gold-400);font-size:11px}
@keyframes ribbonScroll{to{transform:translateX(-50%)}}
/* 3ª faixa — variante dourada, inclinação oposta */
.ribbon--gold{background:linear-gradient(90deg,var(--gold-600),#efd79a 50%,var(--gold-600));
  border-block-color:rgba(74,18,16,.38)}
.ribbon--gold .ribbon-track b{color:var(--wine-800)}
.ribbon--gold .ribbon-track b::after{color:var(--red)}
.ribbon--c{transform:rotate(1.6deg);margin-block:44px}

/* números que sobem contando (prova de mercado) */
.countup{font-variant-numeric:tabular-nums}

/* brilho pulsante no CTA principal (chama o olhar) */
@keyframes ctaGlow{
  0%,100%{box-shadow:0 12px 26px rgba(176,133,54,.4),0 0 0 0 rgba(231,198,126,.55)}
  50%{box-shadow:0 14px 32px rgba(176,133,54,.52),0 0 0 12px rgba(231,198,126,0)}}
.hero .btn-lg,#checkout-main{animation:ctaGlow 2.8s ease-in-out infinite}
.hero .btn-lg:hover,#checkout-main:hover{animation-play-state:paused}

/* borda com glow na caixa de oferta final */
@keyframes boxGlow{
  0%,100%{box-shadow:var(--shadow-lg),0 0 0 2px var(--gold-400),0 0 28px rgba(231,198,126,.28)}
  50%{box-shadow:var(--shadow-lg),0 0 0 2px var(--red),0 0 44px rgba(201,162,75,.5)}}
.finaloffer-box{animation:boxGlow 3.4s ease-in-out infinite}
/* valor com pulso + brilho animado na faixa de oferta */
@keyframes pricePulse{0%,100%{transform:scale(1)}50%{transform:scale(1.06)}}
.finaloffer-price{display:inline-block;transform-origin:center;animation:pricePulse 1.8s ease-in-out infinite;
  filter:drop-shadow(0 2px 10px rgba(47,125,79,.35))}
#checkout-main{animation:ctaGlow 1.6s ease-in-out infinite}

@media (prefers-reduced-motion:reduce){
  .hero .btn-lg,#checkout-main,.finaloffer-box{animation:none}
}

/* textura quente nas seções creme (menos "flat", mais artesanal) */
.section-cream,.kit-preview{
  background-image:radial-gradient(circle at 16% 10%,rgba(212,175,106,.10),transparent 42%),
    radial-gradient(circle at 86% 90%,rgba(176,42,36,.06),transparent 46%)}

/* pop-up de prova social repaginado (avatar + estrelas + selo) */
.popnote{gap:13px;border-left-width:4px;padding:13px 16px 13px 13px;min-width:252px}
.popnote-av{width:42px;height:42px;min-width:42px;display:grid;place-items:center;border-radius:50%;
  font-family:var(--font-serif);font-weight:800;font-size:19px;color:#fff;
  background:radial-gradient(circle at 35% 30%,var(--red),var(--wine-700));box-shadow:0 6px 14px rgba(42,9,8,.3)}
.popnote-stars{color:#f0b429;font-size:12px;letter-spacing:2px;line-height:1;margin:1px 0}
.popnote .popnote-txt{gap:2px}
.popnote-txt strong{display:flex;align-items:center;gap:6px}
.popnote-txt strong::after{content:"✓";display:grid;place-items:center;width:15px;height:15px;min-width:15px;border-radius:50%;
  background:var(--green);color:#fff;font-size:9px;font-weight:900}

/* reveals com pop/zoom nos cards (entrada mais viva) */
.has-js .shot.reveal,.has-js .bonus-card.reveal,.has-js .persona.reveal,
.has-js .step.reveal,.has-js .resultfeat.reveal{transform:translateY(26px) scale(.94)}
.has-js .shot.reveal.visible,.has-js .bonus-card.reveal.visible,.has-js .persona.reveal.visible,
.has-js .step.reveal.visible,.has-js .resultfeat.reveal.visible{transform:none}

@media (prefers-reduced-motion:reduce){ .ribbon-track{animation:none} }
@media (max-width:640px){
  .ribbon{transform:rotate(-1.5deg);width:114%;margin-inline:-7%}
  .ribbon--a{margin-bottom:34px}.ribbon--b{margin-top:30px}
  .ribbon-track b{font-size:12.5px;padding:11px 22px}
  .ribbon-track{animation-duration:24s}
}

/* ===========================================================
   MOBILE CONVERSION (v3) — iOS/Android, low-ticket
   =========================================================== */
@media (max-width:640px){
  /* safe-area do iPhone: CTA fixo acima do indicador home + espaço no fim */
  .sticky-cta{left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom))}
  body{padding-bottom:env(safe-area-inset-bottom)}
  .popnote{bottom:calc(92px + env(safe-area-inset-bottom))}
  /* menos rolagem: respiro vertical mais enxuto */
  .kit-preview,.receitas,.steps,.showcase,.video,.story,.personas,.bonus,
  .resultband,.reviews,.finaloffer,.faq,.scarcity,.guarantee{padding-block:clamp(44px,9vw,58px)}
  .section-head{margin-bottom:24px}
  /* conforto de toque */
  .btn{padding:15px 24px}
  .btn-lg{padding:17px 26px;font-size:16px}
  .faq summary{padding:18px 0}
  a,button{-webkit-tap-highlight-color:rgba(176,133,54,.25)}
  /* CTA fixo: barra inteira clicável e legível */
  .sticky-cta a{padding:12px 18px}
}
/* densidade: manter 2 colunas em telas pequenas (menos scroll que 1 coluna) */
@media (max-width:420px){
  .showcase-grid,.bonus-grid,.personas-grid,.steps-grid{grid-template-columns:repeat(2,1fr);gap:12px}
  .mini-feats{grid-template-columns:1fr 1fr;gap:12px 16px}
  .shot figcaption{padding:10px 12px 14px}
  .shot figcaption strong{font-size:13.5px}
  .shot figcaption span{font-size:11.5px}
  .bonus-card{padding:12px 12px 16px}
  .bonus-card h3{font-size:14px}
  .bonus-card p{min-height:0;font-size:12px}
  .step-body{padding:14px 14px 18px}
  .hero h1{font-size:clamp(26px,8.5vw,34px)}
  .hero p{font-size:15px}
}
/* telas muito estreitas (<=360) */
@media (max-width:360px){
  .hero h1{font-size:25px}
  .finaloffer-price{font-size:42px}
  .container{padding-inline:16px}
}

/* reduz movimento */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;scroll-behavior:auto!important}
  .reveal{opacity:1!important;transform:none!important}
  .btn:hover{transform:none}
}

/* ===== HERO NO MOBILE: banner vertical (img 35), leitura no topo + chef embaixo ===== */
@media (max-width:700px){
  .hero-picture img{object-position:center 54%}
  .hero-tint{background:linear-gradient(to bottom,
     rgba(26,6,5,.95) 0%, rgba(30,8,7,.86) 28%,
     rgba(42,13,11,.40) 50%, rgba(42,13,11,.10) 76%, rgba(42,13,11,.32) 100%)}
  .hero{min-height:88vh;min-height:88svh;align-items:flex-start}
  .hero-inner{padding-block:22px 30px !important}
  /* ESPACAMENTO A PROVA DE CONFLITO: flex-gap uniforme no lugar de margens
     (margens de .hero p venciam .hero-kicker e achatavam). Nunca espreme. */
  .hero-copy{display:flex;flex-direction:column;align-items:center;gap:22px;text-align:center}
  .hero-badge,.hero h1,.hero-kicker,.hero .btn,.hero-mini{margin:0 !important}
  .hero h1,.hero-kicker{width:100%}
  .hero h1{line-height:1.16}
  .hero-mini{gap:16px}
}

/* ===== PASSOS: card com imagem GRANDE no topo (bem visível no mobile) ===== */
@media (max-width:600px){
  .steps-grid{grid-template-columns:1fr !important;gap:18px}
  .step{display:block}
  .step-img{aspect-ratio:16/10;width:100%;min-width:0}
  .step-body{padding:16px 18px 20px;align-items:center;justify-content:flex-start}
  .step-num{font-size:34px}
  .step-body h3{font-size:20px}
  .step-body p{font-size:15.5px}
  .step:active .step-img img{transform:scale(1.05)}
}

/* ===== DOCES FLUTUANTES com parallax no scroll ===== */
/* isola o empilhamento para o doce (z-index:-1) aparecer acima do fundo e atrás do texto */
.receitas,.showcase,.story,.personas,.bonus,.finaloffer{isolation:isolate}
.cookie{position:absolute;z-index:-1;pointer-events:none;will-change:transform}
.cookie img{display:block;width:100%;height:auto;
  filter:drop-shadow(0 14px 20px rgba(42,9,8,.34));animation:floatY 7.5s ease-in-out infinite}
.cookie--a{width:132px;top:7%;right:2%}
.cookie--b{width:94px;bottom:7%;left:1%;animation-delay:-2s}
.cookie--c{width:150px;top:10%;left:-20px}
.cookie--d{width:108px;bottom:5%;right:3%;animation-delay:-3s}
.cookie--e{width:120px;top:9%;right:5%;animation-delay:-1.5s}
.cookie--f{width:100px;bottom:8%;left:3%;animation-delay:-2.5s}
@media (max-width:640px){
  .cookie img{filter:drop-shadow(0 8px 12px rgba(42,9,8,.3))}
  .cookie--a{width:74px;right:-8px;top:5%}
  .cookie--b{width:58px;left:-8px}
  .cookie--c{width:82px;left:-26px}
  .cookie--d{width:64px;right:-8px}
  .cookie--e{width:68px;right:-10px}
  .cookie--f{width:58px;left:-8px}
}
@media (prefers-reduced-motion:reduce){ .cookie img{animation:none} .cookie{transform:none !important} }

/* bônus: imagem quadrada preenchendo o card (sem moldura/borda cinza) */
.bonus-card img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:12px;margin-bottom:12px;background:none}

/* ===========================================================
   PASS DE CONVERSÃO MOBILE — topo, centralização, legibilidade
   =========================================================== */
@media (max-width:640px){
  /* TOPO: cabeçalho sólido (acaba a faixa branca/invisível) e menos espaço */
  .header{background:rgba(42,13,11,.97);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
    box-shadow:0 6px 18px rgba(0,0,0,.28)}
  .header-inner{justify-content:center}
  .hero-inner{padding-block:26px 30px}
  .hero-badge{margin-bottom:12px}

  /* CENTRALIZAÇÃO */
  .hero-copy,.section-head,.kit-preview-copy,.receitas-copy,.video-copy,.story-copy,.finaloffer-left{text-align:center}
  .hero-copy{margin-inline:auto}
  .hero-note{display:block;text-align:center;transform:rotate(-2deg);margin-inline:auto}
  .hero-mini,.mini-feats{justify-content:center}
  .mini-feats li{justify-content:center}
  /* 3 ícones do hero numa linha só, empilhados (ícone sobre texto) */
  .hero-mini{gap:16px;width:100%}
  .hero-mini li{flex-direction:column;gap:7px;text-align:center;font-size:12px;flex:1}
  .hero-mini em{text-align:center}
  .story-quote{border-left:none;padding-left:0;text-align:center}
  .story-list{max-width:430px;margin-inline:auto;text-align:left}
  .finaloffer-list{max-width:360px;margin-inline:auto;text-align:left}
  /* cards "É para você" centralizados */
  .persona{text-align:center}
  /* 5º bônus (órfão) centralizado para não quebrar o fim da seção */
  .bonus-card:last-child{grid-column:1 / -1;max-width:calc(50% - 8px);margin-inline:auto}

  /* LEGIBILIDADE: mais contraste e corpo maior */
  .hero p{color:#fff;font-size:16.5px}
  .hero p strong{color:#ffdf9e}
  .kit-preview-copy p,.receitas-copy p,.video-copy p,.section-head p,.guarantee-copy p{color:var(--ink);font-size:16px}
  .story-list li{color:var(--ink);font-size:15.5px}
  .mini-feats strong,.mini-feats li{color:var(--wine-700)}
}

/* ===== SEÇÃO COMUNIDADE: galeria deslizável de feedbacks ===== */
.community-proof{padding-block:18px 10px;background:var(--cream-50);overflow:hidden;isolation:isolate}
.proof-gallery{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch;scrollbar-width:none;
  padding:4px clamp(16px,5vw,40px) 6px;scroll-padding-inline:clamp(16px,5vw,40px)}
.proof-gallery::-webkit-scrollbar{display:none}
.proof-slide{margin:0;flex:0 0 auto;width:min(86%,440px);scroll-snap-align:center;
  border-radius:18px;overflow:hidden;box-shadow:var(--shadow);background:#fff}
.proof-slide img{width:100%;height:auto;display:block}
.proof-hint{display:flex !important;color:var(--wine-700);margin-top:4px}
.proof-hint::before,.proof-hint::after{background:rgba(176,133,54,.45)}
@media (min-width:900px){ .proof-gallery{justify-content:center;flex-wrap:wrap} .proof-slide{width:340px} .proof-hint{display:none !important} }

/* ===== CARROSSEL SOCIAL: cards maiores que o de receitas ===== */
.recipe-track--rev .recipe-card{width:340px}
@media (max-width:640px){ .recipe-track--rev .recipe-card{width:270px} }
/* carrossel comunidade (feedbacks/WhatsApp) — mesmo tamanho, sentido contrário (esquerda) */
.recipe-track--feed .recipe-card{width:340px}
@media (max-width:640px){ .recipe-track--feed .recipe-card{width:270px} }
/* 2ª faixa colada logo abaixo da 1ª (sem título, sem espaço entre elas) */
#depoimentos{padding-bottom:0 !important}
#comunidade{padding-top:0 !important;padding-bottom:16px !important}
#comunidade .recipe-carousel{margin-top:0;padding-top:0}

/* ===== ESPAÇAMENTOS AINDA MAIS ENXUTOS (mobile) ===== */
@media (max-width:640px){
  .kit-preview,.receitas,.steps,.showcase,.video,.story,.personas,.bonus,.reviews,
  .finaloffer,.faq,.scarcity,.guarantee{padding-block:20px !important}
  /* faixas RETAS e coladas (sem cunhas/bandas de fundo = sem espaço quebrado) */
  .ribbon{transform:none !important;width:100% !important;margin-inline:0 !important;border-block-width:1px}
  .ribbon--a,.ribbon--b,.ribbon--c{margin-block:0 !important}
  .receitas-foot{margin-top:2px}
  .community-proof{padding:0 !important}
}

/* ===========================================================
   IMAGENS GRANDES, NÍTIDAS E INTERATIVAS NO MOBILE (v20)
   =========================================================== */
@media (max-width:600px){
  /* VITRINE (inclui WhatsApp): carrossel deslizável, imagem grande e tangível */
  .showcase-grid{display:flex !important;grid-template-columns:none !important;
    gap:14px;overflow-x:auto;overflow-y:visible;scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;scroll-padding-inline:20px;
    padding:4px 2px 14px;margin-inline:-2px;scrollbar-width:none}
  .showcase-grid::-webkit-scrollbar{display:none}
  .shot{min-width:82%;scroll-snap-align:center;margin:0}
  .shot img{aspect-ratio:4/3}
  .shot figcaption{padding:14px 18px 18px}
  .shot figcaption strong{font-size:16px}
  .shot figcaption span{font-size:13px}
  .shot:active img{transform:scale(1.04)}
  .showcase .section-head{margin-bottom:16px}
  .swipe-hint{display:flex !important}
}
/* dica "arraste" só aparece no mobile */
.swipe-hint{display:none;align-items:center;justify-content:center;gap:8px;
  margin-top:12px;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;
  color:rgba(255,255,255,.62);font-weight:700}
.swipe-hint::before,.swipe-hint::after{content:"";width:22px;height:1px;background:rgba(212,175,106,.5)}
.swipe-hint span{animation:swipeNudge 1.8s ease-in-out infinite}
@keyframes swipeNudge{0%,100%{transform:translateX(0)}50%{transform:translateX(5px)}}

/* overlay "abrindo checkout seguro" - feedback imediato no clique de compra */
#checkout-loading{position:fixed;inset:0;z-index:9999;display:none;flex-direction:column;
  align-items:center;justify-content:center;gap:18px;text-align:center;padding:24px;
  background:rgba(26,6,5,.94);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);color:#fff}
#checkout-loading.show{display:flex}
#checkout-loading .ck-spin{width:56px;height:56px;border-radius:50%;
  border:4px solid rgba(255,255,255,.22);border-top-color:#e9c46a;animation:ckspin .8s linear infinite}
@keyframes ckspin{to{transform:rotate(360deg)}}
#checkout-loading strong{font-size:18px;font-weight:700;letter-spacing:.01em}
#checkout-loading small{font-size:13.5px;color:rgba(255,255,255,.82);max-width:300px;line-height:1.4}
@media (prefers-reduced-motion:reduce){#checkout-loading .ck-spin{animation:none}}

/* ===== HERO: altura/posicao da foto no celular (espacamento vem do bloco ≤700) ===== */
@media (max-width:640px){
  .hero{min-height:94vh;min-height:94svh}
  .hero-picture img{object-position:center 52%}
}
