/* ============================================================
   BOBBIE GOODS CRISTÃO — Landing Page
   Design: premium · infantil · minimalista · cristão
   ============================================================ */

:root{
  --white:#ffffff;
  --bg:#fff5f7;
  --soft:#ffe8f0;
  --soft-blue:#e0f0ff;
  --ink:#2c1b3d;
  --muted:#6b5d7e;
  --line:#f0d6e4;

  --brand:#f08cb8;
  --brand-2:#7ec8ff;
  --pink:#ff6b9d;
  --pink-soft:#ffe0ec;
  --pink-deep:#ff3d7a;
  --blue-soft:#d4ecff;
  --gold:#ffb84d;
  --green:#4dd9a8;

  --coral:#ff7f7f;
  --lilac:#c49bff;
  --sky:#7ec8ff;
  --mint:#4dd9a8;
  --peach:#ffb07c;
  --sunshine:#ffd166;

  --grad: linear-gradient(135deg,#ff6b9d 0%,#c49bff 50%,#7ec8ff 100%);
  --grad-warm: linear-gradient(135deg,#ffb07c 0%,#ffd166 50%,#ff6b9d 100%);
  --grad-cool: linear-gradient(135deg,#d4ecff 0%,#c49bff 100%);
  --grad-playful: linear-gradient(135deg,#ff7f7f 0%,#ff6b9d 30%,#c49bff 65%,#7ec8ff 100%);

  --shadow-sm:0 6px 18px rgba(255,107,157,.1),0 2px 8px rgba(126,200,255,.08);
  --shadow:0 20px 48px rgba(196,155,255,.16),0 6px 18px rgba(255,107,157,.1);
  --shadow-lg:0 36px 76px rgba(196,155,255,.22),0 10px 30px rgba(255,107,157,.14);
  --shadow-xl:0 50px 100px rgba(196,155,255,.25),0 15px 40px rgba(255,107,157,.18);

  --radius:26px;
  --radius-sm:16px;
  --container:1120px;
  --ease:cubic-bezier(.16,.84,.44,1);
  --ease-out:cubic-bezier(0,0,.2,1);
  --ease-spring:cubic-bezier(.34,1.56,.64,1);
}

*{box-sizing:border-box;margin:0;padding:0}
[hidden]{display:none!important}
html{scroll-behavior:smooth}
body{
  font-family:"Nunito",system-ui,sans-serif;
  color:var(--ink);
  background:
    radial-gradient(circle at 8% 12%, rgba(255,107,157,.10) 0, transparent 42%),
    radial-gradient(circle at 92% 18%, rgba(126,200,255,.12) 0, transparent 40%),
    radial-gradient(circle at 50% 92%, rgba(196,155,255,.10) 0, transparent 45%),
    radial-gradient(circle at 80% 60%, rgba(255,209,102,.08) 0, transparent 35%),
    radial-gradient(circle at 20% 80%, rgba(77,217,168,.06) 0, transparent 30%),
    var(--bg);
  line-height:1.6;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
  position:relative;
}
/* textura leve de pontinhos coloridos — divertido e aconchegante */
body::before{
  content:"";
  position:fixed;inset:0;z-index:-1;pointer-events:none;
  background-image:
    radial-gradient(rgba(255,107,157,.18) 1.4px, transparent 1.4px),
    radial-gradient(rgba(126,200,255,.15) 1.4px, transparent 1.4px);
  background-size:26px 26px, 30px 30px;
  background-position:0 0, 13px 13px;
  opacity:.5;
}

/* Grain/Noise overlay sutil — textura cinematográfica */
body::after{
  content:"";
  position:fixed;inset:0;z-index:-1;pointer-events:none;
  opacity:.025;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-repeat:repeat;
  background-size:256px 256px;
  mix-blend-mode:multiply;
}
h1,h2,h3,.btn,.eyebrow,.badge{font-family:"Baloo 2",system-ui,sans-serif;line-height:1.15}
h2{font-size:clamp(1.7rem,3.6vw,2.6rem);letter-spacing:-.3px}
h3{font-size:1.2rem}
p{color:var(--muted)}
a{text-decoration:none;color:inherit}
img,svg{max-width:100%;display:block}

.container{width:100%;max-width:var(--container);margin:0 auto;padding:0 22px}
.narrow{max-width:760px}
.center{text-align:center}
.center .lead,.center p{margin-left:auto;margin-right:auto}
.lead{font-size:1.12rem;max-width:640px}
.grad{background:var(--grad-playful);-webkit-background-clip:text;background-clip:text;color:transparent;background-size:200% 200%;animation:gradShift 6s ease infinite}

.eyebrow{
  display:inline-block;font-size:.82rem;font-weight:700;letter-spacing:1.4px;
  text-transform:uppercase;color:var(--pink-deep);margin-bottom:12px;
}

.section{padding:clamp(56px,9vw,110px) 0;position:relative;overflow:hidden}
.section--soft{background:linear-gradient(180deg,var(--soft) 0%,var(--soft-blue) 50%,#fff 100%)}
.section h2{margin-bottom:14px}
.section .lead{margin-bottom:34px}

/* divisor ondulado entre secoes */
.section-divider{line-height:0;margin-top:-1px}
.section-divider svg{width:100%;height:60px;display:block}

/* doodles decorativos flutuantes (estrelas, coracoes, nuvens) */
.doodle{position:absolute;pointer-events:none;user-select:none;opacity:.5;z-index:0;filter:saturate(1.15)}
.doodle--star{font-size:1.8rem;animation:doodleSpin 7s ease-in-out infinite}
.doodle--heart{font-size:1.6rem;animation:doodleFloat 6s ease-in-out infinite}
.doodle--cloud{font-size:2.2rem;animation:doodleDrift 12s ease-in-out infinite}
.doodle--scribble{font-size:1.7rem;animation:doodleFloat 5.5s ease-in-out infinite}
@keyframes doodleFloat{0%,100%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-16px) rotate(8deg)}}
@keyframes doodleSpin{0%,100%{transform:rotate(-12deg) scale(1)}50%{transform:rotate(14deg) scale(1.12)}}
@keyframes doodleDrift{0%,100%{transform:translateX(0)}50%{transform:translateX(22px)}}
@media (prefers-reduced-motion:reduce){.doodle{animation:none}}
@media (max-width:640px){.doodle{display:none}}

/* ---------- BUTTONS ---------- */
.btn{
  --pad:16px 30px;
  display:inline-flex;flex-direction:column;align-items:center;gap:3px;
  padding:var(--pad);border-radius:100px;font-weight:700;font-size:1.05rem;
  cursor:pointer;border:none;position:relative;transition:transform .35s var(--ease-spring),box-shadow .35s var(--ease),filter .35s;
  text-align:center;
  will-change:transform;
}
.btn__hint{font-family:"Nunito";font-weight:600;font-size:.76rem;opacity:.85}
.btn--primary{background:var(--grad-playful);background-size:200% 200%;animation:gradShift 5s ease infinite;color:#fff;box-shadow:0 14px 30px rgba(255,107,157,.35)}
.btn--primary:hover{transform:translateY(-4px) scale(1.04);box-shadow:0 24px 48px rgba(255,107,157,.45),0 0 50px rgba(196,155,255,.2);filter:brightness(1.08)}
.btn--primary:active{transform:translateY(-1px) scale(1.01)}
.btn--lg{--pad:19px 40px;font-size:1.15rem}
.btn--xl{--pad:22px 46px;font-size:1.25rem;width:100%;max-width:520px}
.btn::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:0 0 0 0 rgba(255,107,157,.4);animation:pulseBtn 2.6s var(--ease) infinite}
@keyframes pulseBtn{0%{box-shadow:0 0 0 0 rgba(255,107,157,.35)}70%{box-shadow:0 0 0 18px rgba(255,107,157,0)}100%{box-shadow:0 0 0 0 rgba(255,107,157,0)}}
@media (prefers-reduced-motion:reduce){.btn::after{animation:none}}

/* Botão com efeito glass outline */
.btn--outline{background:transparent;color:var(--pink-deep);border:2px solid rgba(255,107,157,.2);box-shadow:none}
.btn--outline:hover{background:rgba(255,107,157,.06);border-color:var(--pink);transform:translateY(-3px);box-shadow:0 12px 28px rgba(255,107,157,.12)}

/* Botão de cópia PIX melhorado */
.btn--copy{background:var(--ink);color:#fff;width:100%;font-size:.98rem;padding:14px;margin:6px 0 10px;border-radius:14px;transition:transform .3s var(--ease-spring),background .3s,box-shadow .3s}
.btn--copy:hover{transform:translateY(-2px);background:#38405f;box-shadow:0 8px 24px rgba(44,51,82,.3)}
.btn--copy::after{display:none}

.badge{
  display:inline-block;background:linear-gradient(135deg,#fff,#fff5f9);border:1.5px solid var(--pink-soft);
  color:var(--pink-deep);font-weight:700;font-size:.85rem;padding:8px 16px;border-radius:100px;
  box-shadow:0 4px 14px rgba(255,107,157,.1);margin-bottom:18px;
  animation:pulseGlow 3s ease-in-out infinite;
}

/* ---------- TOPBAR ---------- */
.topbar{
  position:sticky;top:0;z-index:60;
  background:rgba(44,51,82,.92);
  backdrop-filter:blur(12px) saturate(1.3);
  -webkit-backdrop-filter:blur(12px) saturate(1.3);
  color:#fff;
  text-align:center;font-size:.9rem;padding:10px 14px;
  display:flex;align-items:center;justify-content:center;gap:10px;
  border-bottom:1px solid rgba(255,255,255,.06);
  transition:background .3s var(--ease);
}
.topbar strong{color:var(--gold)}
.topbar__timer{font-variant-numeric:tabular-nums;font-weight:800;color:#fff;background:rgba(255,255,255,.12);padding:2px 10px;border-radius:6px;letter-spacing:.5px}
.topbar__pulse{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 0 rgba(56,199,147,.5);animation:pulseBtn 2s infinite}

/* ---------- HERO ---------- */
.hero{position:relative;background:linear-gradient(180deg,#fef6f9 0%,#f5f0ff 50%,#f0f8ff 100%);padding:clamp(48px,7vw,86px) 0 90px;overflow:hidden}
.hero__glow{position:absolute;border-radius:50%;filter:blur(80px);opacity:.55;z-index:0;will-change:transform}
.hero__glow--1{width:520px;height:520px;background:linear-gradient(135deg,#ffc8dc,#ff8fb5);top:-200px;right:-120px;animation:glowFloat1 8s ease-in-out infinite}
.hero__glow--2{width:440px;height:440px;background:linear-gradient(135deg,#b8dcff,#7ec8ff);bottom:-200px;left:-140px;animation:glowFloat2 10s ease-in-out infinite}
@keyframes glowFloat1{0%,100%{transform:translate(0,0) scale(1)}33%{transform:translate(-25px,25px) scale(1.08)}66%{transform:translate(15px,-20px) scale(.95)}}
@keyframes glowFloat2{0%,100%{transform:translate(0,0) scale(1)}33%{transform:translate(30px,20px) scale(.95)}66%{transform:translate(-20px,-15px) scale(1.08)}}
.hero__grid{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr .95fr;gap:50px;align-items:center}
.hero__title{font-size:clamp(2.1rem,5.2vw,3.5rem);font-weight:800;letter-spacing:-1px;margin-bottom:16px;line-height:1.12}
.hero__sub{font-size:1.18rem;margin-bottom:24px;max-width:540px;color:var(--muted);line-height:1.7}
.hero__chips{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px}
.hero__chips li{background:rgba(255,255,255,.8);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.6);padding:8px 15px;border-radius:100px;font-size:.9rem;font-weight:700;color:var(--ink);box-shadow:0 4px 12px rgba(255,107,157,.08);transition:transform .3s var(--ease-spring),box-shadow .3s var(--ease),background .3s}
.hero__chips li:nth-child(1):hover{transform:translateY(-3px) scale(1.05);box-shadow:0 8px 20px rgba(255,107,157,.15);background:#fff;border-color:var(--pink)}
.hero__chips li:nth-child(2):hover{transform:translateY(-3px) scale(1.05);box-shadow:0 8px 20px rgba(196,155,255,.15);background:#fff;border-color:var(--lilac)}
.hero__chips li:nth-child(3):hover{transform:translateY(-3px) scale(1.05);box-shadow:0 8px 20px rgba(126,200,255,.15);background:#fff;border-color:var(--sky)}
.hero__chips li:nth-child(4):hover{transform:translateY(-3px) scale(1.05);box-shadow:0 8px 20px rgba(77,217,168,.15);background:#fff;border-color:var(--mint)}
.hero__proof{display:flex;align-items:center;gap:12px;margin-top:22px;font-size:.92rem;color:var(--muted);font-weight:600}
.stars{color:var(--gold);letter-spacing:2px;font-size:1.1rem}
.stars--big{font-size:1.5rem;display:flex;align-items:center;gap:12px;justify-content:center;margin-bottom:30px}
.stars--big span{font-family:"Nunito";font-size:.95rem;color:var(--muted);font-weight:600;letter-spacing:0}

.hero__media{display:flex;justify-content:center}
.mockup{position:relative;animation:float 6s ease-in-out infinite;filter:drop-shadow(0 20px 60px rgba(139,124,245,.2))}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
.mockup__book{width:min(320px,80vw);border-radius:24px;box-shadow:var(--shadow-xl);overflow:hidden;transform:rotate(-3deg);transition:transform .5s var(--ease-spring)}
.mockup__book:hover{transform:rotate(-1deg) scale(1.02)}
.mockup__cover{width:100%;display:block}
.mockup__tag{position:absolute;bottom:-14px;left:50%;transform:translateX(-50%);white-space:nowrap;background:rgba(255,255,255,.9);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.8);box-shadow:var(--shadow);padding:9px 16px;border-radius:100px;font-size:.82rem;font-weight:800;color:var(--brand)}
.hero__wave{position:absolute;bottom:-1px;left:0;width:100%;line-height:0}
.hero__wave svg{width:100%;height:70px}

/* ---------- PROBLEMA ---------- */
.pain-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:36px}
.pain{background:#fff;border:1px solid var(--line);border-radius:var(--radius-sm);padding:22px 14px;font-size:2rem;box-shadow:var(--shadow-sm);transition:transform .4s var(--ease-spring),box-shadow .4s var(--ease),border-color .3s}
.pain:nth-child(1):hover{transform:translateY(-8px) rotate(-2deg);box-shadow:var(--shadow-lg);border-color:#ff7f7f}
.pain:nth-child(2):hover{transform:translateY(-8px) rotate(-2deg);box-shadow:var(--shadow-lg);border-color:#7ec8ff}
.pain:nth-child(3):hover{transform:translateY(-8px) rotate(-2deg);box-shadow:var(--shadow-lg);border-color:#c49bff}
.pain:nth-child(4):hover{transform:translateY(-8px) rotate(-2deg);box-shadow:var(--shadow-lg);border-color:#ffd166}
.pain span{display:block;font-family:"Nunito";font-size:.92rem;font-weight:700;color:var(--ink);margin-top:8px}

/* ---------- TWO COL ---------- */
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.two-col__text .eyebrow{margin-top:0}
.two-col__text h2{margin-bottom:14px}
.glass-card{background:linear-gradient(160deg,rgba(255,255,255,.9) 0%,rgba(238,246,255,.6) 100%);border:1px solid rgba(255,255,255,.8);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.check{list-style:none;margin:22px 0 28px;display:grid;gap:14px}
.check li{position:relative;padding-left:34px;font-weight:600;color:var(--ink);line-height:1.5}
.check li::before{content:"✓";position:absolute;left:0;top:1px;width:22px;height:22px;border-radius:50%;background:var(--grad);color:#fff;font-size:.8rem;display:grid;place-items:center;box-shadow:var(--shadow-sm)}

/* ---------- CARDS ---------- */
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:14px}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px 22px;text-align:left;box-shadow:var(--shadow-sm);transition:transform .4s var(--ease-spring),box-shadow .4s var(--ease),border-color .3s;position:relative;overflow:hidden}
.card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;border-radius:var(--radius) var(--radius) 0 0}
.card:nth-child(odd)::before{background:linear-gradient(90deg,var(--pink-soft),var(--pink))}
.card:nth-child(even)::before{background:linear-gradient(90deg,var(--blue-soft),var(--brand-2))}
.card:hover{transform:translateY(-10px) scale(1.02);box-shadow:var(--shadow-xl);border-color:rgba(139,124,245,.15)}
.card__ico{width:56px;height:56px;border-radius:16px 16px 16px 4px;background:var(--grad-cool);display:grid;place-items:center;font-size:1.7rem;margin-bottom:16px;box-shadow:var(--shadow-sm);transition:transform .3s var(--ease)}
.card:hover .card__ico{transform:scale(1.1) rotate(-4deg)}
.card h3{margin-bottom:6px}
.card p{font-size:.95rem}

/* ---------- INCLUSO ---------- */
.count-badge{
  display:inline-flex;flex-direction:column;align-items:center;gap:2px;
  margin:6px auto 28px;padding:14px 28px;
  background:linear-gradient(135deg,var(--pink-soft) 0%,#fff0d6 100%);
  border:2px solid var(--pink);border-radius:18px;
  box-shadow:0 10px 24px rgba(255,107,157,.18);
  font-family:"Baloo 2";color:var(--ink);
}
.count-badge strong{
  font-size:clamp(1.6rem,3.4vw,2.1rem);font-weight:800;
  background:var(--grad-playful);-webkit-background-clip:text;background-clip:text;color:transparent;
  letter-spacing:-.5px;line-height:1;
}
.count-badge span{font-size:.82rem;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.8px}

/* contador em destaque dentro do texto da solução */
.count-pill{
  display:inline-flex;align-items:center;gap:8px;
  background:linear-gradient(135deg,#fff 0%,var(--pink-soft) 100%);
  border:1.5px dashed var(--pink);border-radius:100px;
  padding:9px 18px;margin:4px 0 6px;
  font-family:"Baloo 2";font-size:1rem;color:var(--ink);
  box-shadow:0 6px 16px rgba(255,107,157,.12);
}
.count-pill strong{
  font-size:1.25rem;font-weight:800;
  background:var(--grad-playful);-webkit-background-clip:text;background-clip:text;color:transparent;
}

/* qtd adicional no order bump */
.bump__qty{
  display:inline-block;margin:4px 0 4px;
  background:var(--grad-warm);color:#fff;
  font-family:"Baloo 2";font-weight:800;font-size:.78rem;
  padding:3px 10px;border-radius:100px;letter-spacing:.4px;
  box-shadow:0 4px 10px rgba(255,184,77,.35);
}

/* ---------- GALLERY ---------- */
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:14px 0 34px}
.gallery__item{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:14px;box-shadow:var(--shadow-sm);transition:transform .4s var(--ease-spring),box-shadow .4s var(--ease);position:relative}
.gallery__item:nth-child(odd):hover{transform:translateY(-8px) rotate(-2deg)}
.gallery__item:nth-child(even):hover{transform:translateY(-8px) rotate(2deg)}
.gallery__item:hover{box-shadow:var(--shadow-lg);border-color:rgba(139,124,245,.15)}
.thumb{aspect-ratio:4/3;border-radius:var(--radius-sm);position:relative;overflow:hidden}
.thumb img{width:100%;height:100%;object-fit:cover;display:block}
.thumb--a{background:linear-gradient(135deg,#dcefff,#a8d4ff)}
.thumb--b{background:linear-gradient(135deg,#ffe3ec,#ffbfcf)}
.thumb--c{background:linear-gradient(135deg,#e6e0ff,#c4b8ff)}
.thumb--d{background:linear-gradient(135deg,#d7f7e8,#a8eccf)}
.thumb--e{background:linear-gradient(135deg,#fff0d6,#ffdba6)}
.thumb--f{background:linear-gradient(135deg,#e9e4ff,#d4c8ff)}
.gallery__item figcaption{font-weight:800;color:var(--ink);font-size:.95rem;margin-top:12px;text-align:center;font-family:"Baloo 2"}
.include-list{list-style:none;display:inline-grid;gap:12px;text-align:left;margin-bottom:34px}
.include-list li{font-weight:700;color:var(--ink);font-size:1.05rem}

/* ---------- STEPS ---------- */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:14px;counter-reset:s}
.step{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px 20px;box-shadow:var(--shadow-sm);position:relative;transition:transform .4s var(--ease-spring),box-shadow .4s var(--ease)}
.step:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg)}
.step__n{width:48px;height:48px;border-radius:14px;background:var(--grad);color:#fff;font-family:"Baloo 2";font-weight:800;font-size:1.3rem;display:grid;place-items:center;margin:0 auto 16px;box-shadow:0 6px 16px rgba(139,124,245,.25);transition:transform .3s var(--ease-spring)}
.step:hover .step__n{transform:scale(1.1)}
.step h3{margin-bottom:6px}
.step p{font-size:.92rem}

/* ---------- REVIEWS ---------- */
.reviews{columns:3;column-gap:20px;margin-top:6px}
.review{break-inside:avoid;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px;margin-bottom:20px;box-shadow:var(--shadow-sm);text-align:left;transition:transform .4s var(--ease-spring),box-shadow .4s var(--ease),border-color .3s}
.review:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);border-color:rgba(139,124,245,.15)}
.review__head{display:flex;align-items:center;gap:12px;margin-bottom:10px}
.avatar{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;color:#fff;font-family:"Baloo 2";font-weight:800;font-size:1.1rem;flex-shrink:0}
.review__name{font-family:"Baloo 2";font-weight:700;color:var(--ink);font-size:1rem;line-height:1.1}
.review__city{font-size:.8rem;color:var(--muted);font-weight:600}
.review__stars{color:var(--gold);letter-spacing:1px;font-size:.95rem;margin-bottom:6px}
.review p{color:var(--ink);font-weight:500;font-size:.96rem}
.review__verified{display:inline-block;margin-top:10px;font-size:.75rem;color:var(--green);font-weight:800}

/* ---------- OFFER ---------- */
.offer{background:#fff;border:1px solid rgba(255,255,255,.6);border-radius:28px;padding:clamp(28px,5vw,50px);box-shadow:var(--shadow-xl);text-align:center;position:relative;overflow:hidden}
.offer::before{content:"";position:absolute;top:-80px;right:-80px;width:220px;height:220px;background:var(--grad);opacity:.12;border-radius:50%}
.offer::after{content:"";position:absolute;bottom:-90px;left:-90px;width:240px;height:240px;background:var(--grad-cool);opacity:.4;border-radius:50%}
.offer__flag{display:inline-block;background:linear-gradient(135deg,var(--pink-soft),#fff0d6,var(--pink-soft));background-size:200% 200%;color:#d9487a;font-weight:800;font-size:.85rem;padding:8px 18px;border-radius:100px;margin-bottom:16px;animation:gradShift 4s ease infinite}
.offer h2{margin-bottom:8px}
.offer__stack{margin-bottom:22px}
.price{margin:10px 0 26px}
.price__old{display:block;color:var(--muted);text-decoration:line-through;font-weight:700;font-size:1.05rem}
.price__now{display:block;font-family:"Baloo 2";font-weight:800;font-size:clamp(2.6rem,7vw,3.6rem);color:var(--ink);line-height:1}
.price__now small{display:block;font-size:.9rem;color:var(--muted);font-weight:600;letter-spacing:1px}
.price__pix{display:inline-block;margin-top:8px;color:var(--green);font-weight:800;font-size:.9rem;animation:pulseGlow 2.6s ease-in-out infinite}

/* order bump */
.bump{display:flex;align-items:flex-start;gap:14px;text-align:left;background:#fffaf0;border:2px dashed var(--gold);border-radius:var(--radius-sm);padding:18px;margin-bottom:26px;cursor:pointer;transition:background .25s,border-color .25s}
.bump:hover{background:#fff6e3}
.bump input{position:absolute;opacity:0;pointer-events:none}
.bump__box{width:26px;height:26px;border-radius:8px;border:2px solid var(--gold);flex-shrink:0;display:grid;place-items:center;transition:background .2s;margin-top:2px}
.bump__box::after{content:"✓";color:#fff;font-weight:900;opacity:0;transform:scale(.5);transition:.2s}
.bump input:checked + .bump__box{background:var(--gold)}
.bump input:checked + .bump__box::after{opacity:1;transform:scale(1)}
.bump input:focus-visible + .bump__box{outline:3px solid var(--brand);outline-offset:2px}
.bump__text{font-size:.92rem;color:var(--muted)}
.bump__text strong{display:block;color:var(--ink);font-family:"Baloo 2";font-size:1rem;margin-bottom:2px}
.bump__price{margin-left:auto;font-family:"Baloo 2";font-weight:800;color:#e0a020;white-space:nowrap}
.cta--buy{margin:0 auto}
.offer__timer{margin-top:18px;font-size:.92rem;color:var(--muted);font-weight:700}
.offer__timer strong{color:var(--pink);font-variant-numeric:tabular-nums}
.trust{list-style:none;display:flex;flex-wrap:wrap;gap:18px;justify-content:center;margin-top:22px;font-size:.9rem;font-weight:700;color:var(--muted)}
.trust li{background:rgba(255,255,255,.7);padding:6px 14px;border-radius:100px;box-shadow:0 2px 8px rgba(255,107,157,.06);transition:transform .3s var(--ease-spring)}
.trust li:hover{transform:translateY(-2px) scale(1.04)}

/* ---------- (removed — guarantee section) ---------- */

/* ---------- FAQ ---------- */
.faq{margin-top:24px;display:grid;gap:12px}
.faq__item{background:#fff;border:1px solid var(--line);border-radius:var(--radius-sm);overflow:hidden;box-shadow:var(--shadow-sm);transition:border-color .3s,box-shadow .3s}
.faq__item:hover{border-color:rgba(139,124,245,.15);box-shadow:var(--shadow)}
.faq__item.open{border-color:rgba(139,124,245,.2)}
.faq__q{width:100%;text-align:left;background:none;border:none;cursor:pointer;padding:20px 22px;font-family:"Baloo 2";font-weight:700;font-size:1.05rem;color:var(--ink);display:flex;justify-content:space-between;align-items:center;gap:14px;transition:color .3s}
.faq__q:hover{color:var(--brand)}
.faq__q::after{content:"+";font-size:1.5rem;color:var(--brand);transition:transform .35s var(--ease)}
.faq__item.open .faq__q::after{transform:rotate(45deg)}
.faq__a{max-height:0;overflow:hidden;transition:max-height .4s var(--ease)}
.faq__a p{padding:0 22px 20px;font-size:.98rem}

/* ---------- FINAL ---------- */
.section--final{background:var(--grad-playful);background-size:200% 200%;animation:gradShift 8s ease infinite;color:#fff}
.section--final h2,.section--final .lead{color:#fff}
.section--final .lead{opacity:.92}
.section--final .btn--primary{background:#fff;color:var(--pink-deep);box-shadow:0 18px 40px rgba(0,0,0,.2)}
.section--final .btn--primary:hover{transform:translateY(-4px) scale(1.04);box-shadow:0 24px 48px rgba(0,0,0,.3)}
.final__timer{margin-top:18px;font-weight:700;opacity:.95}
.final__timer strong{font-variant-numeric:tabular-nums}

/* ---------- FOOTER ---------- */
.footer{background:var(--ink);color:#c3ccdf;padding:44px 0;text-align:center;font-size:.9rem}
.footer__brand{font-family:"Baloo 2";font-weight:800;color:#fff;font-size:1.3rem;margin-bottom:8px}
.footer p{color:#aab4cc;margin-bottom:6px}
.footer__small{font-size:.78rem;color:#7d879e;max-width:640px;margin:8px auto 0}

/* ---------- SEO TAGS ---------- */
.seo-tags{margin-top:32px;padding-top:24px;border-top:1px solid rgba(255,255,255,.08)}
.seo-tags__btn{
  display:inline-flex;align-items:center;gap:10px;
  background:rgba(255,255,255,.06);color:#e8ecf6;
  font-family:"Baloo 2";font-weight:700;font-size:.95rem;
  border:1.5px solid rgba(255,255,255,.12);border-radius:100px;
  padding:11px 22px;cursor:pointer;
  transition:all .25s var(--ease);
}
.seo-tags__btn:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.22);transform:translateY(-1px)}
.seo-tags__btn:focus-visible{outline:2px solid var(--pink);outline-offset:3px}
.seo-tags__icon{font-size:1.1rem}
.seo-tags__label{letter-spacing:.3px}
.seo-tags__count{
  font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.8px;
  background:var(--grad-warm);color:#2c1b3d;
  padding:3px 10px;border-radius:100px;
}
.seo-tags__arrow{
  font-size:.85rem;line-height:1;
  transition:transform .3s var(--ease);
  display:inline-block;
}
.seo-tags__btn[aria-expanded="true"] .seo-tags__arrow{transform:rotate(180deg)}

.seo-tags__panel{
  margin-top:20px;text-align:left;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;padding:22px 20px;
  max-height:420px;overflow-y:auto;
  animation:tagsFade .4s var(--ease);
  scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.18) transparent;
}
.seo-tags__panel::-webkit-scrollbar{width:8px}
.seo-tags__panel::-webkit-scrollbar-track{background:transparent}
.seo-tags__panel::-webkit-scrollbar-thumb{background:rgba(255,255,255,.18);border-radius:100px}
@keyframes tagsFade{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}

.seo-tags__intro{
  font-size:.78rem;color:#9aa3bd;margin-bottom:14px;line-height:1.5;
}
.seo-tags__intro kbd{
  display:inline-block;background:rgba(255,255,255,.1);
  border:1px solid rgba(255,255,255,.15);border-radius:4px;
  padding:1px 6px;font-size:.72rem;font-family:inherit;
  color:#e8ecf6;
}

.seo-tags__list{
  display:flex;flex-wrap:wrap;gap:6px;
}
.seo-tags__tag{
  display:inline-block;
  font-size:.78rem;font-weight:600;
  background:rgba(255,255,255,.06);
  color:#c3ccdf;
  border:1px solid rgba(255,255,255,.1);
  border-radius:100px;
  padding:5px 12px;
  transition:all .2s var(--ease);
  cursor:default;
}
.seo-tags__tag:hover{
  background:var(--grad-warm);color:#2c1b3d;
  border-color:transparent;transform:translateY(-1px);
}

@media (max-width:640px){
  .seo-tags__btn{font-size:.85rem;padding:10px 16px;gap:8px}
  .seo-tags__count{font-size:.65rem;padding:2px 8px}
  .seo-tags__panel{padding:16px 14px;max-height:340px}
  .seo-tags__tag{font-size:.72rem;padding:4px 10px}
}

/* ---------- STICKY MOBILE CTA ---------- */
.sticky-cta{position:fixed;bottom:14px;left:50%;transform:translateX(-50%) translateY(120px);z-index:70;background:var(--grad);color:#fff;font-family:"Baloo 2";font-weight:800;padding:15px 30px;border-radius:100px;box-shadow:0 16px 48px rgba(139,124,245,.45);width:calc(100% - 28px);max-width:440px;text-align:center;transition:transform .5s var(--ease-spring)}
.sticky-cta.show{transform:translateX(-50%) translateY(0)}
.sticky-cta:hover{filter:saturate(1.1) brightness(1.05)}
@media (min-width:860px){.sticky-cta{display:none}}

/* ---------- MODAL CHECKOUT ---------- */
.modal{position:fixed;inset:0;z-index:100;display:none;align-items:center;justify-content:center;padding:16px}
.modal.open{display:flex}
.modal__overlay{position:absolute;inset:0;background:rgba(20,30,60,.6);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:fade .3s}
@keyframes fade{from{opacity:0}to{opacity:1}}
.modal__box{position:relative;background:#fff;width:100%;max-width:460px;max-height:92vh;overflow-y:auto;border-radius:24px;padding:30px 26px;box-shadow:0 40px 80px rgba(20,30,60,.3);animation:pop .4s var(--ease-spring)}
@keyframes pop{from{opacity:0;transform:translateY(30px) scale(.96)}to{opacity:1;transform:none}}
.modal__close{position:absolute;top:14px;right:16px;background:var(--soft);border:none;width:36px;height:36px;border-radius:50%;font-size:1.4rem;line-height:1;color:var(--muted);cursor:pointer;transition:background .2s}
.modal__close:hover{background:#e7edf9}
.modal__title{font-size:1.5rem;margin-bottom:4px}
.modal__sub{font-size:.92rem;margin-bottom:18px}
.modal__secure{text-align:center;font-size:.8rem;color:var(--muted);margin-top:14px}

.summary{background:var(--soft);border-radius:var(--radius-sm);padding:14px 16px;margin-bottom:16px}
.summary__row{display:flex;justify-content:space-between;font-size:.95rem;color:var(--muted);padding:5px 0}
.summary__row strong{color:var(--ink)}
.summary__total{border-top:1px dashed var(--line);margin-top:6px;padding-top:10px;font-size:1.05rem}
.summary__total strong{color:var(--brand);font-family:"Baloo 2";font-size:1.25rem}

.bump--modal{margin:0 0 18px;padding:14px}
.bump--modal .bump__text strong{font-size:.92rem}

.field{margin-bottom:14px;text-align:left}
.field label{display:block;font-weight:700;font-size:.88rem;color:var(--ink);margin-bottom:6px}
.field input{width:100%;padding:13px 15px;border:2px solid var(--line);border-radius:12px;font-family:"Nunito";font-size:1rem;transition:border-color .2s}
.field input:focus{outline:none;border-color:var(--brand)}
.field__err{display:block;color:#e0568a;font-size:.8rem;font-weight:700;margin-top:5px}
#genPixBtn,#genPixBtn.btn{width:100%;margin-top:6px}

.qr{width:220px;height:220px;margin:6px auto 14px;border:1px solid var(--line);border-radius:16px;padding:10px;background:#fff;display:grid;place-items:center}
.qr img{width:100%;height:100%;object-fit:contain;image-rendering:pixelated}
.qr__load{font-size:.85rem;color:var(--muted)}
.pix-timer{text-align:center;font-size:.9rem;color:var(--muted);margin-bottom:12px}
.pix-timer strong{color:var(--pink);font-variant-numeric:tabular-nums}
.pix-code{width:100%;height:64px;resize:none;font-size:.78rem;padding:10px;border:2px solid var(--line);border-radius:12px;color:var(--muted);font-family:monospace;margin-bottom:12px}
.pix-status{display:flex;align-items:center;justify-content:center;gap:10px;font-weight:700;color:var(--brand);background:var(--soft);border-radius:12px;padding:12px;margin-bottom:14px}
.pix-help{text-align:left;color:var(--muted);font-size:.88rem;padding-left:20px;display:grid;gap:6px}
.spinner{width:18px;height:18px;border:3px solid #d9d2ff;border-top-color:var(--brand);border-radius:50%;animation:spin 1s linear infinite;flex-shrink:0}
@keyframes spin{to{transform:rotate(360deg)}}

.modal__step--ok{text-align:center}
.ok-check{width:72px;height:72px;margin:0 auto 14px;border-radius:50%;background:var(--green);color:#fff;font-size:2.4rem;display:grid;place-items:center;box-shadow:0 12px 30px rgba(56,199,147,.4);animation:pop .4s var(--ease)}
.downloads{display:grid;gap:12px;margin:18px 0}
.downloads a{display:block;background:var(--grad);color:#fff;font-family:"Baloo 2";font-weight:800;padding:16px;border-radius:14px;box-shadow:0 12px 26px rgba(124,108,240,.35);transition:transform .25s}
.downloads a:hover{transform:translateY(-3px)}
.modal__error{background:#ffe9ef;color:#c0396a;border-radius:12px;padding:12px 14px;font-size:.9rem;font-weight:700;margin-top:14px;animation:shake .4s var(--ease)}
@keyframes shake{0%,100%{transform:translateX(0)}25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}

/* ---------- REVEAL ANIMATIONS ---------- */
.reveal{opacity:0;transform:translateY(30px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.reveal.in{opacity:1;transform:translateY(0)}

/* Stagger reveals — delay progressivo */
.reveal-1{transition-delay:0s}
.reveal-2{transition-delay:.1s}
.reveal-3{transition-delay:.2s}
.reveal-4{transition-delay:.3s}

/* Blur reveal para titulos */
.reveal-blur{opacity:0;transform:translateY(20px);filter:blur(8px);transition:opacity .8s var(--ease),transform .8s var(--ease),filter .8s var(--ease)}
.reveal-blur.in{opacity:1;transform:translateY(0);filter:blur(0)}

/* Scale reveal para cards (entrada com zoom suave) */
.reveal-scale{opacity:0;transform:scale(.92);transition:opacity .6s var(--ease),transform .6s var(--ease-spring)}
.reveal-scale.in{opacity:1;transform:scale(1)}

@media (prefers-reduced-motion:reduce){
  .reveal,.reveal-blur,.reveal-scale{opacity:1;transform:none;filter:none;transition:none}
  .mockup{animation:none}
  .doodle{animation:none}
  .hero__glow{animation:none}
}

/* ---------- MOUSE GLOW (cursor-follow) ---------- */
.mouse-glow{position:fixed;width:350px;height:350px;border-radius:50%;background:radial-gradient(circle,rgba(255,107,157,.05) 0%,rgba(196,155,255,.05) 40%,transparent 70%);pointer-events:none;z-index:9999;transform:translate(-50%,-50%);will-change:transform;transition:opacity .3s}

/* ---------- FLOATING PARTICLES ---------- */
.particles{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden}
.particle{position:absolute;width:4px;height:4px;border-radius:50%;animation:particleFloat linear infinite}
.particle:nth-child(1){background:rgba(255,107,157,.2)}
.particle:nth-child(2){background:rgba(126,200,255,.2)}
.particle:nth-child(3){background:rgba(196,155,255,.2)}
.particle:nth-child(4){background:rgba(77,217,168,.2)}
.particle:nth-child(5){background:rgba(255,107,157,.15)}
.particle:nth-child(6){background:rgba(255,209,102,.2)}
.particle:nth-child(7){background:rgba(126,200,255,.15)}
.particle:nth-child(8){background:rgba(196,155,255,.15)}
.particle:nth-child(9){background:rgba(77,217,168,.15)}
.particle:nth-child(10){background:rgba(255,107,157,.2)}
.particle:nth-child(11){background:rgba(255,209,102,.15)}
.particle:nth-child(12){background:rgba(126,200,255,.2)}
.particle:nth-child(1){left:10%;width:3px;height:3px;animation-duration:22s;animation-delay:0s}
.particle:nth-child(2){left:30%;width:5px;height:5px;animation-duration:28s;animation-delay:2s}
.particle:nth-child(3){left:50%;width:3px;height:3px;animation-duration:25s;animation-delay:4s}
.particle:nth-child(4){left:70%;width:4px;height:4px;animation-duration:30s;animation-delay:1s}
.particle:nth-child(5){left:85%;width:3px;height:3px;animation-duration:24s;animation-delay:3s}
.particle:nth-child(6){left:20%;width:5px;height:5px;animation-duration:32s;animation-delay:5s}
.particle:nth-child(7){left:65%;width:3px;height:3px;animation-duration:26s;animation-delay:7s}
.particle:nth-child(8){left:45%;width:4px;height:4px;animation-duration:29s;animation-delay:6s}
.particle:nth-child(9){left:92%;width:3px;height:3px;animation-duration:23s;animation-delay:8s}
.particle:nth-child(10){left:8%;width:5px;height:5px;animation-duration:27s;animation-delay:9s}
.particle:nth-child(11){left:75%;width:3px;height:3px;animation-duration:31s;animation-delay:10s}
.particle:nth-child(12){left:35%;width:4px;height:4px;animation-duration:26s;animation-delay:11s}
@keyframes particleFloat{0%{top:-10px;opacity:0;transform:translateX(0)}10%{opacity:1}90%{opacity:1}100%{top:calc(100% + 10px);opacity:0;transform:translateX(30px)}}
@media (prefers-reduced-motion:reduce){.mouse-glow{display:none}.particles{display:none}}

/* ---------- ANIMAÇÕES GLOBAIS ---------- */
@keyframes gradShift{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}
@keyframes pulseGlow{0%,100%{box-shadow:0 0 0 0 rgba(255,107,157,.2)}50%{box-shadow:0 0 20px 4px rgba(255,107,157,.1)}}

/* ---------- SECTION ENTRANCE REFINEMENTS ---------- */
.section--soft{background:linear-gradient(180deg,var(--soft) 0%,var(--soft-blue) 50%,#fff 100%);position:relative}
.section--offer{background:linear-gradient(180deg,var(--soft) 0%,var(--soft-blue) 50%,#fff5f9 100%);position:relative}
.section--final{background:var(--grad-playful);background-size:200% 200%;animation:gradShift 8s ease infinite;color:#fff;position:relative}
.section--final::before{content:"";position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.6' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:128px 128px;opacity:.04;pointer-events:none}

/* ---------- RESPONSIVE ---------- */
@media (max-width:1100px){
  .container{padding:0 28px}
}
@media (max-width:980px){
  .cards{grid-template-columns:repeat(2,1fr)}
  .steps{grid-template-columns:repeat(2,1fr)}
  .reviews{columns:2}
  .hero__grid{grid-template-columns:1fr;text-align:center;gap:34px}
  .hero__sub{margin-left:auto;margin-right:auto}
  .hero__chips,.hero__proof{justify-content:center}
  .two-col{grid-template-columns:1fr}
  .two-col__media{order:2}
  .pain-grid{grid-template-columns:repeat(4,1fr)}
}
@media (max-width:768px){
  .pain-grid{grid-template-columns:repeat(2,1fr)}
  .pain{padding:18px 12px}
  .hero__title{font-size:clamp(1.8rem,6vw,2.5rem)}
  .hero__sub{font-size:1.05rem}
  .hero{padding:clamp(32px,5vw,60px) 0 60px}
  .section{padding:clamp(40px,7vw,70px) 0}
  .container{padding:0 20px}
  .two-col{gap:30px}
}
@media (max-width:640px){
  .cards,.steps{grid-template-columns:1fr}
  .gallery{grid-template-columns:1fr}
  .reviews{columns:1}
  .bump{flex-wrap:wrap}
  .bump__price{margin-left:0}
  .topbar{font-size:.78rem;padding:8px 12px}
  .topbar__pulse{display:none}
  .hero__chips{gap:6px}
  .hero__chips li{font-size:.82rem;padding:6px 12px}
  .badge{font-size:.78rem}
  .eyebrow{font-size:.75rem}
  .pain-grid{gap:10px}
  .cards{gap:14px}
  .card{padding:22px 18px}
  .offer{padding:clamp(22px,4vw,30px)}
  .price__now{font-size:clamp(2.2rem,9vw,3rem)}
  .modal__box{padding:22px 18px;border-radius:20px}
  .mockup__book{width:min(240px,75vw)}
  .hero__wave svg{height:40px}
  .steps{gap:14px}
  .step{padding:24px 16px}
}
@media (max-width:420px){
  .pain-grid{grid-template-columns:repeat(2,1fr);gap:8px}
  .pain{padding:14px 10px;font-size:1.6rem}
  .hero__title{font-size:clamp(1.5rem,7vw,2rem)}
  .btn--xl{padding:18px 30px;font-size:1.1rem}
  .sticky-cta{padding:13px 24px;font-size:.95rem}
}
