/* =====================================================================
   MEU SLIM — ESTILOS
   Cores principais ficam em :root. Troque aqui para mudar a paleta toda.
   ===================================================================== */
:root {
  --green-950: #062A20;
  --green-900: #0B3B2E;
  --green-800: #0F4A39;
  --green-700: #155C46;
  --green-100: #E3F1EA;
  --mint: #F0F7F3;
  --cream: #FBF6EC;
  --gold: #D9B45A;
  --gold-600: #B98A2E;
  --gold-100: #F7EBCB;
  --cta: #17A34A;
  --cta-dark: #0E7A35;
  --red: #E0303F;
  --star: #F5B301;
  --ink: #15211C;
  --ink-2: #44514B;
  --line: #E4E2DA;
  --white: #FFFFFF;
  --radius: 18px;
  --shadow: 0 10px 30px -12px rgba(11, 59, 46, .25);
  --font-h: 'Plus Jakarta Sans', system-ui, sans-serif;
  --font-b: 'Inter', system-ui, sans-serif;
  --font-brand: 'Cormorant Garamond', Georgia, serif;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body { margin: 0; font-family: var(--font-b); font-size: 16px; line-height: 1.6; color: var(--ink); background: var(--white); overflow-x: hidden; }
img, video { max-width: 100%; display: block; }
svg { width: 1em; height: 1em; flex-shrink: 0; }
a { color: inherit; }
h1, h2, h3, h4 { font-family: var(--font-h); line-height: 1.18; margin: 0; letter-spacing: -.012em; }
p { margin: 0; }
ul, ol { margin: 0; padding: 0; list-style: none; }
b, strong { font-weight: 700; }

.wrap { width: 100%; max-width: 1140px; margin: 0 auto; padding: 0 16px; }
.wrap--narrow { max-width: 820px; }
.center { text-align: center; }
.hl { color: var(--green-700); }
.hl-gold { color: var(--gold); }

/* ---------- Botões ---------- */
.btn {
  --bg: var(--cta); --bg-dark: var(--cta-dark); --fg: #fff;
  display: inline-flex; align-items: center; justify-content: center; gap: .5em;
  font-family: var(--font-h); font-weight: 700; letter-spacing: -.005em; text-decoration: none; text-align: center;
  color: var(--fg); background: var(--bg); border: 0; border-radius: 12px; cursor: pointer;
  padding: 14px 22px; font-size: 15.5px; line-height: 1.2;
  box-shadow: 0 1px 0 rgba(255, 255, 255, .25) inset, 0 10px 22px -10px rgba(14, 122, 53, .7);
  transition: transform .15s, box-shadow .15s, filter .15s;
}
.btn:hover { filter: brightness(1.06); transform: translateY(-1px); }
.btn:active { transform: translateY(1px); }
.btn--sm { padding: 10px 18px; font-size: 14px; border-radius: 10px; }
.btn--xl { padding: 18px 26px; font-size: 17px; width: 100%; max-width: 460px; }
.btn--block { width: 100%; }
.btn--gold { --bg: linear-gradient(180deg, #F1D58A, #D9B45A); --bg-dark: #9C7424; --fg: var(--green-950); box-shadow: 0 1px 0 rgba(255, 255, 255, .4) inset, 0 10px 22px -10px rgba(217, 180, 90, .7); }
.btn--whats { --bg: #25D366; --bg-dark: #128C4A; }
.btn--pulse { animation: pulse 2.6s infinite; }
@keyframes pulse { 0% { box-shadow: 0 0 0 0 rgba(23, 163, 74, .45); } 70%, 100% { box-shadow: 0 0 0 14px rgba(23, 163, 74, 0); } }
.link-arrow { display: inline-block; margin-top: 18px; font-family: var(--font-h); font-weight: 700; color: var(--green-700); text-decoration: none; border-bottom: 2px solid var(--gold); }

/* ---------- Faixa superior ---------- */
.topbar { background: var(--green-950); color: var(--gold-100); font-family: var(--font-h); font-weight: 600; font-size: 12px; letter-spacing: .03em; overflow: hidden; white-space: nowrap; }
.topbar__track { display: inline-flex; gap: 40px; padding: 9px 0; animation: marquee 26s linear infinite; }
.topbar__track span::after { content: '•'; margin-left: 40px; color: var(--gold); }
@keyframes marquee { to { transform: translateX(-50%); } }

/* ---------- Cabeçalho ---------- */
.header { position: sticky; top: 0; z-index: 40; background: rgba(255, 255, 255, .94); backdrop-filter: blur(10px); border-bottom: 1px solid var(--line); }
.header__in { display: flex; align-items: center; justify-content: space-between; gap: 16px; height: 62px; }
.logo { display: inline-flex; align-items: center; gap: 9px; text-decoration: none; color: var(--green-900); }
.logo__mark { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: var(--green-900); color: var(--gold); font-family: var(--font-brand); font-weight: 700; font-size: 17px; border: 1.5px solid var(--gold); }
.logo__word { font-family: var(--font-brand); font-weight: 700; font-size: 26px; letter-spacing: -.01em; }
.logo--light { color: #fff; }
.nav { display: none; gap: 28px; font-family: var(--font-h); font-weight: 600; font-size: 14px; }
.nav a { text-decoration: none; color: var(--ink-2); }
.nav a:hover { color: var(--green-700); }

/* ---------- Hero ---------- */
.hero { background: radial-gradient(120% 70% at 50% 0%, var(--cream) 0%, #fff 70%); padding: 16px 0 40px; }
.hero__in { display: grid; gap: 22px; }
.hero__media { position: relative; border-radius: 22px; overflow: hidden; box-shadow: var(--shadow); aspect-ratio: 4 / 3.3; }
.hero__media img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 40%; }
.hero__seal { position: absolute; right: 12px; top: 12px; width: 72px; height: 72px; border-radius: 50%; display: grid; place-content: center; text-align: center; background: var(--green-900); color: #fff; font-family: var(--font-h); line-height: 1; box-shadow: 0 8px 18px -8px rgba(0, 0, 0, .5); outline: 1px solid rgba(217, 180, 90, .6); outline-offset: -5px; }
.hero__seal strong { font-size: 21px; font-weight: 800; color: var(--gold); }
.hero__seal small { font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: .06em; margin-top: 4px; }
.rating { display: flex; align-items: center; flex-wrap: wrap; gap: 6px 8px; font-size: 14px; color: var(--ink-2); margin-bottom: 12px; }
.rating b { color: var(--ink); }
.stars { display: inline-flex; gap: 2px; color: var(--star); font-size: 17px; }
.stars--sm { font-size: 15px; }
.hero h1 { font-size: clamp(28px, 7.6vw, 48px); font-weight: 800; color: var(--green-950); letter-spacing: -.02em; line-height: 1.12; }
.lead { margin-top: 14px; font-size: 17px; line-height: 1.55; color: var(--ink-2); }
.checks { display: grid; gap: 10px; margin: 20px 0 24px; }
.checks li { display: flex; gap: 10px; align-items: flex-start; font-weight: 500; font-size: 15.5px; }
.checks svg, .benefits svg { margin-top: 2px; padding: 4px; width: 20px; height: 20px; border-radius: 50%; background: var(--green-100); color: var(--green-700); }
.timer { display: flex; align-items: center; justify-content: center; gap: 7px; flex-wrap: wrap; max-width: 460px; margin-top: 14px; padding: 9px 12px; border-radius: 10px; background: #FFF4F2; color: #9F2A2A; font-size: 13.5px; font-weight: 500; }
.timer b { font-family: var(--font-h); font-weight: 700; font-variant-numeric: tabular-nums; font-size: 16px; }
.timer--light { background: rgba(255, 255, 255, .1); color: #fff; margin: 18px auto 0; }
.timer--light b { color: var(--gold); }
.trust { display: flex; flex-wrap: wrap; gap: 8px 18px; margin-top: 16px; font-size: 13.5px; font-weight: 500; color: var(--ink-2); }
.trust li { display: flex; align-items: center; gap: 6px; }
.trust svg { color: var(--green-700); font-size: 18px; }

/* ---------- Ticker ---------- */
.ticker { background: var(--green-900); color: rgba(255, 255, 255, .92); overflow: hidden; white-space: nowrap; }
.ticker__track { display: inline-flex; align-items: center; gap: 22px; padding: 12px 0; font-family: var(--font-h); font-weight: 700; font-size: 13px; letter-spacing: .08em; animation: marquee 30s linear infinite; }
.ticker i { color: var(--gold); font-style: normal; }

/* ---------- Seções ---------- */
.sec { padding: 56px 0; }
.sec--cream { background: var(--cream); }
.sec--mint { background: var(--mint); }
.sec--green { background: radial-gradient(90% 60% at 50% 40%, var(--green-700), var(--green-900) 70%); color: #fff; }
.sec--offer { background: linear-gradient(180deg, var(--green-950), var(--green-900)); color: #fff; }
.sec__head { text-align: center; max-width: 640px; margin: 0 auto 30px; }
.sec__head h2 { font-size: clamp(26px, 6.4vw, 38px); font-weight: 800; color: var(--green-950); }
.sec__head p { margin-top: 10px; font-size: 16px; color: var(--ink-2); }
.sec__head--light h2 { color: #fff; }
.sec__head--light p { color: rgba(255, 255, 255, .8); }
.tag { display: inline-block; margin-bottom: 12px; padding: 6px 12px; border-radius: 999px; background: transparent; color: var(--gold-600); font-family: var(--font-h); font-weight: 700; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; padding: 0; }
.tag--gold { color: var(--gold); }
.tag--red { color: #FF9B9B; }
.note { font-size: 13px !important; color: #7A847F !important; font-style: italic; }
.sub-title { display: flex; align-items: center; gap: 8px; margin: 34px 0 14px; font-size: 16px; font-weight: 700; color: var(--green-900); }
.sub-title:first-of-type { margin-top: 0; }
.sub-title svg { color: var(--gold-600); }

/* ---------- Identificação ---------- */
.pains { display: grid; gap: 12px; }
.pain { display: flex; gap: 14px; align-items: flex-start; padding: 18px; background: #fff; border-radius: var(--radius); border: 1px solid var(--line); }
.pain__ic { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 14px; flex-shrink: 0; background: var(--cream); color: var(--gold-600); font-size: 22px; }
.pain h3 { font-size: 16.5px; font-weight: 700; color: var(--green-950); }
.pain p { margin-top: 4px; font-size: 14.5px; color: var(--ink-2); }

/* ---------- Virada ---------- */
.split { display: grid; gap: 30px; align-items: center; }
.split__media { position: relative; margin: 0; }
.split__media img { border-radius: 22px; aspect-ratio: 16 / 11; object-fit: cover; object-position: 50% 22%; width: 100%; height: auto; box-shadow: var(--shadow); }
.float-card { position: absolute; left: 14px; bottom: 14px; display: flex; align-items: center; gap: 10px; padding: 12px 16px; border-radius: 14px; background: #fff; box-shadow: var(--shadow); font-size: 14px; line-height: 1.3; }
.float-card svg { padding: 5px; width: 28px; height: 28px; border-radius: 50%; background: var(--green-100); color: var(--green-700); }
.split__copy h2 { font-size: clamp(26px, 6.4vw, 38px); font-weight: 800; color: var(--green-950); margin-bottom: 16px; }
.split__copy p { font-size: 16.5px; color: var(--ink-2); margin-bottom: 12px; }
.callout { margin-top: 18px; padding: 18px 20px; border-left: 5px solid var(--gold); border-radius: 0 14px 14px 0; background: var(--cream); }
.callout p { margin: 0; color: var(--ink); font-size: 17px; }

/* ---------- Produto ---------- */
.showcase { display: grid; grid-template-columns: 1fr; gap: 10px; align-items: center; max-width: 900px; margin: 0 auto; }
.showcase__bottle { order: -1; display: grid; place-items: center; position: relative; padding: 10px 0 20px; }
.showcase__bottle::before { content: ''; position: absolute; width: 250px; height: 250px; border-radius: 50%; background: radial-gradient(circle, rgba(217, 180, 90, .35), transparent 65%); }
.showcase__bottle svg { position: relative; width: 190px; height: auto; filter: drop-shadow(0 22px 26px rgba(0, 0, 0, .35)); animation: float 5s ease-in-out infinite; }
@keyframes float { 50% { transform: translateY(-10px); } }
.showcase__col { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.showcase__col li { display: grid; justify-items: center; text-align: center; gap: 4px; padding: 16px 10px; border-radius: 16px; background: rgba(255, 255, 255, .07); border: 1px solid rgba(217, 180, 90, .3); }
.showcase__col span { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; background: var(--gold); color: var(--green-950); font-size: 22px; margin-bottom: 4px; }
.showcase__col b { font-family: var(--font-h); font-weight: 700; font-size: 16px; }
.showcase__col small { font-size: 13px; color: rgba(255, 255, 255, .75); line-height: 1.35; }
.benefits { display: grid; gap: 0; max-width: 760px; margin: 28px auto 30px; }
.benefits li { display: flex; gap: 12px; align-items: flex-start; padding: 13px 4px; border-bottom: 1px solid rgba(255, 255, 255, .12); color: #fff; font-weight: 500; font-size: 15.5px; }
.benefits svg { background: var(--gold); color: var(--green-950); }

/* ---------- Depoimentos ---------- */
.rail { display: grid; grid-auto-flow: column; grid-auto-columns: 62%; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: 10px; margin-inline: -16px; padding-inline: 16px; scrollbar-width: thin; }
.rail > * { scroll-snap-align: start; }
.slot-video, .vid { aspect-ratio: 9 / 16; border-radius: 18px; overflow: hidden; width: 100%; object-fit: cover; background: #000; }
.slot-video { position: relative; display: flex; flex-direction: column; justify-content: flex-end; gap: 2px; padding: 16px; color: #fff; background: linear-gradient(180deg, rgba(6, 42, 32, .1) 30%, rgba(6, 42, 32, .92)), repeating-linear-gradient(135deg, #1b5a46 0 14px, #17503e 14px 28px); border: 2px dashed rgba(217, 180, 90, .55); }
.slot-video b { font-family: var(--font-h); font-weight: 700; font-size: 15px; }
.slot-video small { font-size: 12.5px; opacity: .8; }
.slot-video__play { position: absolute; inset: 0; margin: auto; display: grid; place-items: center; width: 62px; height: 62px; border-radius: 50%; background: rgba(255, 255, 255, .92); color: var(--green-900); font-size: 26px; box-shadow: 0 0 0 10px rgba(255, 255, 255, .15); }
.prints { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.print { width: 100%; border-radius: 16px; border: 1px solid var(--line); box-shadow: var(--shadow); }
.slot-print { display: flex; flex-direction: column; gap: 8px; padding: 0 12px 12px; border-radius: 16px; background: #EAE3D8; border: 2px dashed #CDBFA8; min-height: 250px; overflow: hidden; }
.slot-print__bar { display: flex; align-items: center; gap: 8px; margin: 0 -12px 4px; padding: 10px 12px; background: #075E54; }
.slot-print__bar i { width: 22px; height: 22px; border-radius: 50%; background: #9fc9c0; }
.slot-print__bar span { width: 60px; height: 8px; border-radius: 4px; background: rgba(255, 255, 255, .7); }
.b { height: 34px; border-radius: 10px; width: 78%; }
.b--in { background: #fff; }
.b--out { background: #D9FDD3; align-self: flex-end; }
.b--s { width: 50%; height: 24px; }
.b--m { width: 66%; height: 46px; }
.slot-print small { margin-top: auto; text-align: center; font-family: var(--font-h); font-weight: 700; font-size: 12.5px; color: #6F6553; }
.reviews { display: grid; gap: 14px; }
.review { display: flex; flex-direction: column; gap: 12px; padding: 22px; border-radius: var(--radius); background: #fff; border: 1px solid var(--line); box-shadow: 0 6px 20px -14px rgba(0, 0, 0, .3); }
.review p { color: var(--ink-2); font-size: 15px; font-style: italic; }
.review footer { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-top: auto; }
.review footer div { display: grid; line-height: 1.25; }
.review footer small { color: #7A847F; font-size: 13px; }
.avatar { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: var(--green-100); color: var(--green-700); font-family: var(--font-h); font-weight: 800; }
.verified { display: inline-flex; align-items: center; gap: 4px; margin-left: auto; font-size: 12px; font-weight: 700; color: var(--cta-dark); }
#depoimentos .center { margin-top: 34px; }

/* ---------- Fórmula ---------- */
.ingredients { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.ingr { position: relative; padding: 20px 16px; border-radius: var(--radius); background: #fff; border: 1px solid var(--line); }
.ingr__n { position: absolute; top: 14px; right: 16px; font-family: var(--font-h); font-weight: 800; font-size: 26px; color: var(--green-100); }
.ingr__ic { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 14px; background: var(--green-900); color: var(--gold); font-size: 24px; margin-bottom: 12px; }
.ingr h3 { font-size: 16px; font-weight: 700; color: var(--green-950); }
.ingr p { margin-top: 6px; font-size: 14px; color: var(--ink-2); line-height: 1.5; }
.free { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 26px; }
.free li { display: inline-flex; align-items: center; gap: 6px; padding: 9px 14px; border-radius: 999px; background: #fff; border: 1px solid var(--green-100); font-weight: 600; font-size: 14px; color: var(--green-800); }
.free svg { color: var(--cta); }

/* ---------- Jornada ---------- */
.journey { display: grid; gap: 14px; counter-reset: j; }
.journey li { position: relative; padding: 22px 20px 22px 74px; border-radius: var(--radius); background: var(--cream); counter-increment: j; }
.journey li::before { content: counter(j); position: absolute; left: 20px; top: 22px; display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; background: var(--green-900); color: var(--gold); font-family: var(--font-h); font-weight: 700; }
.journey__when { display: inline-block; font-family: var(--font-h); font-weight: 700; font-size: 12px; letter-spacing: .08em; text-transform: uppercase; color: var(--gold-600); }
.journey h3 { margin-top: 4px; font-size: 18px; font-weight: 700; color: var(--green-950); }
.journey p { margin-top: 6px; font-size: 15px; color: var(--ink-2); }
.journey + .note { margin-top: 16px; }

/* ---------- Comparativo ---------- */
.compare { border-radius: var(--radius); overflow: hidden; background: #fff; box-shadow: var(--shadow); }
.compare__row { display: grid; grid-template-columns: 1fr 84px 104px; align-items: center; border-top: 1px solid var(--line); }
.compare__row > span { padding: 14px 14px; font-size: 15px; font-weight: 500; }
.compare__row > span:not(:first-child) { display: grid; place-items: center; height: 100%; }
.compare__row--head { border-top: 0; font-family: var(--font-h); font-weight: 700; font-size: 13px; text-align: center; }
.compare__row--head > span { font-size: 13px; font-weight: 700; color: var(--ink-2); }
.compare__row--head .compare__us { color: var(--gold); font-size: 14px; white-space: nowrap; }
.compare__us { background: var(--green-900); color: #fff; }
.compare svg { width: 24px; height: 24px; padding: 5px; border-radius: 50%; }
.compare .yes { background: var(--cta); color: #fff; }
.compare .no { background: #F1F0EC; color: #A3A39C; }

/* ---------- Como tomar ---------- */
.steps { display: grid; gap: 14px; }
.steps li { position: relative; display: grid; justify-items: center; text-align: center; padding: 28px 20px 24px; border-radius: var(--radius); border: 1px solid var(--line); }
.steps__n { position: absolute; top: -13px; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: var(--gold); color: var(--green-950); font-family: var(--font-h); font-weight: 700; font-size: 14px; }
.steps__ic { display: grid; place-items: center; width: 64px; height: 64px; border-radius: 50%; background: var(--mint); color: var(--green-700); font-size: 30px; margin-bottom: 12px; }
.steps h3 { font-size: 17px; font-weight: 700; color: var(--green-950); }
.steps p { margin-top: 6px; color: var(--ink-2); font-size: 15px; }

/* ---------- Kits ---------- */
.kits { display: grid; gap: 22px; max-width: 1020px; margin: 0 auto; }
.kit { position: relative; display: flex; flex-direction: column; align-items: center; text-align: center; padding: 26px 20px 20px; border-radius: 22px; background: #fff; color: var(--ink); box-shadow: 0 18px 40px -20px rgba(0, 0, 0, .6); }
.kit--best { border: 3px solid var(--gold); padding-top: 34px; order: -1; }
.kit__ribbon { position: absolute; top: -15px; left: 50%; transform: translateX(-50%); white-space: nowrap; padding: 7px 16px; border-radius: 999px; background: var(--gold); color: var(--green-950); font-family: var(--font-h); font-weight: 700; font-size: 12px; text-transform: uppercase; letter-spacing: .06em; }
.kit__ribbon--alt { background: var(--green-900); color: var(--gold); box-shadow: 0 0 0 1px rgba(217, 180, 90, .5); }
.kit__head h3 { font-size: 22px; font-weight: 800; color: var(--green-950); }
.kit__head span { font-size: 14px; color: var(--ink-2); font-weight: 500; }
.kit__img { display: flex; justify-content: center; align-items: flex-end; height: 150px; margin: 16px 0 6px; }
.kit__img svg { width: 92px; height: auto; filter: drop-shadow(0 10px 10px rgba(0, 0, 0, .18)); }
.kit__img--3 svg { width: 78px; }
.kit__img--3 svg + svg { margin-left: -30px; }
.kit__img--3 svg:nth-child(2) { width: 96px; z-index: 1; position: relative; }
.kit__img--5 svg { width: 64px; }
.kit__img--5 svg + svg { margin-left: -28px; }
.kit__img--5 svg:nth-child(2), .kit__img--5 svg:nth-child(4) { width: 74px; position: relative; z-index: 1; }
.kit__img--5 svg:nth-child(3) { width: 86px; position: relative; z-index: 2; }
.kit__off { display: inline-block; padding: 4px 12px; border-radius: 8px; background: #FDEEEE; color: #C42B36; font-family: var(--font-h); font-weight: 700; font-size: 13px; }
.kit__from { margin-top: 10px; font-size: 14.5px; color: var(--ink-2); }
.kit__from s { color: var(--red); }
.kit__price { font-family: var(--font-h); font-weight: 800; font-size: 36px; line-height: 1.1; color: var(--green-950); letter-spacing: -.02em; }
.kit__price small { font-size: 15px; font-weight: 600; letter-spacing: 0; }
.kit__cash { margin: 4px 0 16px; font-size: 14.5px; font-weight: 600; color: var(--cta-dark); }
.kit__cash em { display: block; font-style: normal; font-weight: 500; color: var(--ink-2); font-size: 13px; }
.kit__perks { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px 14px; margin-top: 14px; font-size: 13px; font-weight: 500; color: var(--ink-2); }
.kit__perks li { display: inline-flex; align-items: center; gap: 5px; }
.kit__perks svg { color: var(--green-700); font-size: 16px; }
.pay { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 22px; margin-top: 30px; font-size: 14px; font-weight: 500; color: rgba(255, 255, 255, .85); }
.pay li { display: inline-flex; align-items: center; gap: 7px; }
.pay svg { color: var(--gold); font-size: 18px; }

/* ---------- Garantia ---------- */
.guarantee { display: grid; gap: 24px; justify-items: center; text-align: center; max-width: 900px; }
.seal svg { width: 170px; height: 170px; filter: drop-shadow(0 14px 20px rgba(11, 59, 46, .3)); }
.guarantee h2 { font-size: clamp(26px, 6.4vw, 36px); font-weight: 800; color: var(--green-950); margin-bottom: 12px; }
.guarantee p { color: var(--ink-2); font-size: 16.5px; }

/* ---------- FAQ ---------- */
.faq { display: grid; gap: 10px; }
.faq details { border-radius: 14px; background: #fff; border: 1px solid var(--line); overflow: hidden; }
.faq details[open] { border-color: var(--green-700); box-shadow: 0 6px 20px -14px rgba(11, 59, 46, .5); }
.faq summary { position: relative; padding: 17px 52px 17px 18px; cursor: pointer; list-style: none; font-family: var(--font-h); font-weight: 600; font-size: 15.5px; color: var(--green-950); }
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after { content: '+'; position: absolute; right: 16px; top: 50%; transform: translateY(-50%); display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; background: var(--green-100); color: var(--green-700); font-size: 18px; font-weight: 700; transition: transform .2s; }
.faq details[open] summary::after { content: '–'; background: var(--green-900); color: var(--gold); }
.faq details p { padding: 0 18px 18px; color: var(--ink-2); font-size: 15px; }
.help { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 12px 14px; margin-top: 26px; padding: 18px; border-radius: var(--radius); background: var(--mint); }
.help__ic { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 50%; background: #25D366; color: #fff; font-size: 26px; }
.help div { display: grid; line-height: 1.35; }
.help b { font-family: var(--font-h); color: var(--green-950); }
.help small { color: var(--ink-2); font-size: 14px; }
.help .btn { grid-column: 1 / -1; box-shadow: 0 4px 0 #128C4A; }

/* ---------- Chamada final ---------- */
.final { padding: 56px 0; background: radial-gradient(80% 90% at 20% 50%, var(--green-700), var(--green-950)); color: #fff; overflow: hidden; }
.final__in { display: grid; gap: 26px; justify-items: center; text-align: center; }
.final__bottles { display: flex; align-items: flex-end; }
.final__bottles svg { width: 88px; height: auto; filter: drop-shadow(0 16px 18px rgba(0, 0, 0, .4)); }
.final__bottles svg:nth-child(2) { width: 112px; margin: 0 -26px; position: relative; z-index: 1; }
.final h2 { font-size: clamp(25px, 6.2vw, 36px); font-weight: 800; max-width: 620px; }
.final p { margin: 14px 0 24px; color: rgba(255, 255, 255, .85); font-size: 16.5px; }

/* ---------- Reembolso ---------- */
.policy { display: grid; gap: 12px; }
.policy article { display: grid; grid-template-columns: auto 1fr; column-gap: 14px; align-items: start; padding: 18px; border-radius: var(--radius); background: #fff; border: 1px solid var(--line); }
.policy article p { grid-column: 2; }
.policy__ic { grid-row: span 2; display: grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; background: var(--green-100); color: var(--green-700); font-size: 21px; }
.policy h3 { font-size: 16px; font-weight: 700; color: var(--green-950); }
.policy p { margin-top: 6px; font-size: 14.5px; color: var(--ink-2); }
.policy-full { margin-top: 18px; border-radius: var(--radius); background: #fff; border: 1px solid var(--line); }
.policy-full summary { padding: 18px 20px; cursor: pointer; font-family: var(--font-h); font-weight: 700; color: var(--green-700); text-align: center; }
.policy-full__body { padding: 0 22px 24px; color: var(--ink-2); font-size: 14.5px; }
.policy-full__body h4 { margin: 18px 0 6px; font-size: 15px; color: var(--green-950); }

/* ---------- Rodapé ---------- */
.footer { background: var(--green-950); color: rgba(255, 255, 255, .78); padding: 44px 0 0; font-size: 14px; }
.footer__in { display: grid; gap: 28px; }
.footer__brand p { margin: 10px 0 14px; }
.footer__whats { display: inline-flex; align-items: center; gap: 8px; padding: 10px 14px; border-radius: 10px; background: rgba(37, 211, 102, .14); color: #7CE7A6; font-weight: 700; text-decoration: none; }
.footer__whats svg { font-size: 20px; }
.footer__links { display: grid; gap: 10px; }
.footer__links a { text-decoration: none; }
.footer__links a:hover { color: var(--gold); }
.footer__pay ul { display: flex; flex-wrap: wrap; gap: 6px; margin: 10px 0 14px; }
.footer__pay li { padding: 5px 10px; border-radius: 6px; background: #fff; color: var(--green-950); font-family: var(--font-h); font-weight: 700; font-size: 12px; }
.footer__pay > span:first-child { font-family: var(--font-h); font-weight: 700; color: #fff; }
.footer__safe { display: inline-flex; align-items: center; gap: 6px; color: var(--gold); font-weight: 600; }
.footer__legal { margin-top: 30px; padding-top: 22px; padding-bottom: 24px; border-top: 1px solid rgba(255, 255, 255, .12); display: grid; gap: 10px; font-size: 12.5px; color: rgba(255, 255, 255, .55); }
.demo-note { padding: 12px 16px 92px; text-align: center; background: #2A1B05; color: #F7D58A; font-size: 13px; font-weight: 600; }
.demo-note[hidden] { display: none; }

/* ---------- Barra fixa e WhatsApp ---------- */
.buybar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 50; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 16px calc(10px + env(safe-area-inset-bottom)); background: #fff; border-top: 1px solid var(--line); box-shadow: 0 -10px 30px -12px rgba(0, 0, 0, .25); transform: translateY(110%); transition: transform .3s; }
.buybar.show { transform: none; }
.buybar__info { display: flex; align-items: center; gap: 10px; min-width: 0; }
.buybar__info svg { width: 30px; height: 42px; }
.buybar__info div { display: grid; line-height: 1.2; }
.buybar small { font-size: 12px; color: #C42B36; font-weight: 600; }
.buybar b { font-family: var(--font-h); font-weight: 800; color: var(--green-950); font-size: 16px; }
.fab { position: fixed; right: 16px; bottom: 84px; z-index: 49; display: grid; place-items: center; width: 56px; height: 56px; border-radius: 50%; background: #25D366; color: #fff; font-size: 30px; box-shadow: 0 10px 24px -8px rgba(37, 211, 102, .8); transition: transform .2s; }
.fab:hover { transform: scale(1.08); }
.toast { position: fixed; left: 50%; bottom: 150px; z-index: 60; max-width: calc(100% - 32px); padding: 12px 18px; border-radius: 12px; background: var(--ink); color: #fff; font-size: 14px; text-align: center; opacity: 0; pointer-events: none; transform: translate(-50%, 10px); transition: .25s; }
.toast.show { opacity: 1; transform: translate(-50%, 0); }

/* ---------- Animações de entrada ---------- */
.animate .reveal { opacity: 0; transform: translateY(22px); transition: opacity .6s ease, transform .6s ease; }
.animate .reveal.visible { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; }
  html { scroll-behavior: auto; }
}

/* =====================================================================
   TABLET E DESKTOP
   ===================================================================== */
@media (min-width: 640px) {
  .pains { grid-template-columns: 1fr 1fr; }
  .rail { grid-auto-columns: 34%; }
  .prints { grid-template-columns: repeat(4, 1fr); }
  .ingredients { grid-template-columns: repeat(4, 1fr); }
  .policy { grid-template-columns: 1fr 1fr; }
  .help { grid-template-columns: auto 1fr auto; }
  .help .btn { grid-column: auto; }
}
@media (min-width: 900px) {
  .nav { display: flex; }
  .sec { padding: 80px 0; }
  .hero { padding: 44px 0 64px; }
  .hero__in { grid-template-columns: 1.05fr 1fr; gap: 48px; align-items: center; }
  .hero__media { aspect-ratio: 1 / 1.02; }
  .hero__media img { object-position: 50% 50%; }
  .hero__seal { width: 92px; height: 92px; right: 18px; top: 18px; }
  .hero__seal strong { font-size: 26px; }
  .pains { grid-template-columns: repeat(3, 1fr); gap: 16px; }
  .pain { flex-direction: column; padding: 24px; }
  .split { grid-template-columns: 1fr 1.2fr; gap: 56px; }
  .split__media { max-width: 440px; justify-self: end; }
  .split__media img { aspect-ratio: 4 / 4.2; }
  .compare__row { grid-template-columns: 1fr 150px 150px; }
  .showcase { grid-template-columns: 1fr 300px 1fr; gap: 24px; }
  .showcase__bottle { order: 0; }
  .showcase__bottle svg { width: 250px; }
  .showcase__bottle::before { width: 340px; height: 340px; }
  .showcase__col { grid-template-columns: 1fr; gap: 16px; }
  .showcase__col li { padding: 22px 16px; }
  .benefits { grid-template-columns: 1fr 1fr; column-gap: 40px; }
  .rail { grid-auto-columns: calc(25% - 9px); overflow: visible; margin: 0; padding: 0; }
  .reviews { grid-template-columns: repeat(3, 1fr); }
  .journey, .steps { grid-template-columns: repeat(3, 1fr); gap: 20px; }
  .kits { grid-template-columns: 1.08fr 1fr 1fr; align-items: center; }
  .kit--best { padding-block: 44px 28px; order: 0; }
  .guarantee { grid-template-columns: auto 1fr; text-align: left; justify-items: start; gap: 44px; }
  .seal svg { width: 210px; height: 210px; }
  .final__in { grid-template-columns: auto 1fr; text-align: left; justify-items: start; gap: 60px; }
  .final__bottles svg { width: 120px; }
  .final__bottles svg:nth-child(2) { width: 150px; margin: 0 -36px; }
  .policy { grid-template-columns: repeat(3, 1fr); }
  .footer__in { grid-template-columns: 1.4fr 1fr 1fr; }
  .buybar { display: none; }
  .fab { bottom: 24px; }
  .demo-note { padding-bottom: 12px; }
}

/* =====================================================================
   VERSÃO NATU TOP — paleta turquesa do rótulo + fotos reais do produto
   ===================================================================== */
:root {
  /* Verde-sálvia pedido pela Amanda (folha clara + verde escuro suave + dourado) */
  --green-950: #24391F;
  --green-900: #33502C;
  --green-800: #426436;
  --green-700: #557A43;
  --green-100: #E4ECDA;
  --mint: #F0F4EA;
  --cream: #F7F6EF;
  --gold: #CDA954;
  --gold-600: #A9873A;
  --gold-100: #F3EAD0;
  --cta: #2F8F45;
  --cta-dark: #1F6E33;
  --leaf: #8FAF6E;
}
.showcase__bottle img { position: relative; width: 230px; height: auto; filter: drop-shadow(0 24px 26px rgba(0, 0, 0, .4)); animation: float 5s ease-in-out infinite; }
.kit__img img { height: 150px; width: auto; object-fit: contain; filter: drop-shadow(0 10px 10px rgba(0, 0, 0, .15)); }
.final__bottles img { width: 260px; height: auto; filter: drop-shadow(0 18px 20px rgba(0, 0, 0, .45)); }
.buybar__info img { width: 34px; height: 42px; object-fit: contain; }
.formula { display: grid; gap: 16px; }
.formula__label { margin: 0; position: relative; border-radius: var(--radius); overflow: hidden; background: #fff; border: 1px solid var(--line); }
.formula__label img { width: 100%; height: 300px; object-fit: cover; object-position: 50% 58%; }
.formula__label figcaption { position: absolute; left: 12px; bottom: 12px; padding: 6px 12px; border-radius: 999px; background: rgba(255, 255, 255, .92); font-family: var(--font-h); font-weight: 700; font-size: 12.5px; color: var(--green-900); }
@media (min-width: 640px) {
  .ingredients--8 { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 900px) {
  .showcase__bottle img { width: 280px; }
  .formula { grid-template-columns: 340px 1fr; align-items: stretch; }
  .formula__label img { height: 100%; min-height: 420px; }
  .ingredients--8 { grid-template-columns: repeat(4, 1fr); }
  .final__bottles img { width: 340px; }
}
.slot-video { background: linear-gradient(180deg, rgba(5, 39, 45, .1) 30%, rgba(5, 39, 45, .92)), repeating-linear-gradient(135deg, #0f5a63 0 14px, #0c4f57 14px 28px); }
.slot-print__bar { background: #0C535D; }
/* Depoimentos reais */
.shot { display: block; border-radius: 16px; overflow: hidden; border: 1px solid var(--line); box-shadow: 0 10px 24px -16px rgba(0, 0, 0, .35); background: #fff; }
.shot img { width: 100%; height: auto; display: block; }
.rail--shots { grid-auto-columns: 78%; align-items: start; }
.shots-2 { display: grid; grid-template-columns: 1fr; gap: 14px; align-items: start; max-width: 440px; margin: 0 auto; }
@media (min-width: 640px) { .shots-2 { grid-template-columns: 1fr 1fr; max-width: 760px; } }
@media (min-width: 640px) { .rail--shots { grid-auto-columns: 44%; } }
@media (min-width: 900px) {
  .rail--shots { grid-auto-columns: calc(25% - 9px); }
  .shots-2 { max-width: 760px; margin: 0 auto; gap: 20px; }
}

/* ---------- Carrossel com bolinhas ---------- */
.carousel { position: relative; }
.carousel__viewport { overflow: hidden; touch-action: pan-y; }
.rail.is-carousel { --pv: 1; display: flex; gap: 12px; margin: 0; padding: 0; overflow: visible; align-items: flex-start; transition: transform .45s ease; }
.rail.is-carousel > * { flex: 0 0 calc((100% - 12px * (var(--pv) - 1)) / var(--pv)); min-width: 0; }
.carousel__dots { display: flex; justify-content: center; gap: 8px; margin-top: 16px; }
.carousel__dots button { width: 9px; height: 9px; padding: 0; border: 0; border-radius: 999px; background: #CFD6D2; cursor: pointer; transition: width .25s, background .25s; }
.carousel__dots button[aria-current="true"] { width: 26px; background: var(--green-700); }
.carousel__arrow { position: absolute; top: calc(50% - 24px); transform: translateY(-50%); z-index: 2; display: grid; place-items: center; width: 42px; height: 42px; border-radius: 50%; border: 1px solid var(--line); background: rgba(255, 255, 255, .95); color: var(--green-900); font-size: 26px; line-height: 1; cursor: pointer; box-shadow: 0 8px 20px -10px rgba(0, 0, 0, .4); }
.carousel__arrow--prev { left: 6px; }
.carousel__arrow--next { right: 6px; }
.carousel__arrow:disabled { opacity: 0; pointer-events: none; }
.carousel--static .carousel__dots, .carousel--static .carousel__arrow { display: none; }
@media (max-width: 639px) { .rail.is-carousel > * { flex-basis: 84%; } .carousel__arrow { display: none; } }
@media (min-width: 900px) {
  .rail.is-carousel { gap: 16px; }
  .rail.is-carousel > * { flex-basis: calc((100% - 16px * (var(--pv) - 1)) / var(--pv)); }
  .carousel__arrow--prev { left: -21px; }
  .carousel__arrow--next { right: -21px; }
}

/* =====================================================================
   ALTERAÇÕES DA AMANDA (out/2026)
   ===================================================================== */
.logo__mark { background: var(--green-900); padding: 2px; color: var(--gold); border: 0; }
.logo__mark svg { width: 100%; height: 100%; }
.logo--light .logo__mark { background: transparent; color: var(--gold); }
.sec--green { background: radial-gradient(90% 60% at 50% 40%, #6B8F55, var(--green-900) 75%); }
.sec--offer { background: linear-gradient(180deg, var(--green-900), #46683A); }
.final { background: radial-gradient(80% 90% at 20% 50%, #7C9E63, var(--green-900)); }
.hero__media { aspect-ratio: 1 / 1; }
.hero__media img { object-position: 50% 50%; }
@media (min-width: 900px) { .hero__media { aspect-ratio: 1 / 1; } }

/* Imagem depois das 6 dores */
.pains__img { margin: 22px auto 0; max-width: 560px; border-radius: 22px; overflow: hidden; box-shadow: var(--shadow); }
.pains__img img { width: 100%; height: auto; }

/* Lista de benefícios com ícones */
.perks { display: grid; gap: 12px; max-width: 900px; margin: 32px auto 30px; }
.perks li { display: flex; align-items: center; gap: 14px; padding: 14px 18px 14px 14px; border-radius: 999px 22px 22px 999px; background: rgba(255, 255, 255, .94); color: var(--ink); }
.perks__ic { display: grid; place-items: center; flex-shrink: 0; width: 56px; height: 56px; border-radius: 50%; background: var(--green-100); color: var(--green-900); font-size: 28px; box-shadow: inset 0 0 0 2px #fff, 0 0 0 1px var(--green-100); }
.perks p { font-size: 15px; line-height: 1.45; color: var(--ink-2); }
.perks b { color: var(--green-950); }
@media (min-width: 900px) { .perks { grid-template-columns: 1fr 1fr; gap: 16px 20px; } }

/* Fórmula com benefícios por ingrediente */
.ingredients--8 { grid-template-columns: 1fr; }
.ingr__type { display: block; margin-top: 2px; font-family: var(--font-h); font-size: 11.5px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--gold-600); }
.ingr ul { margin-top: 10px; display: grid; gap: 6px; }
.ingr li { position: relative; padding-left: 20px; font-size: 14px; line-height: 1.45; color: var(--ink-2); }
.ingr li::before { content: ''; position: absolute; left: 0; top: .35em; width: 11px; height: 11px; border-radius: 2px 50% 2px 50%; background: var(--leaf); }
@media (min-width: 640px) { .ingredients--8 { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 900px) { .ingredients--8 { grid-template-columns: repeat(4, 1fr); } }

/* O que você pode sentir */
.feel { display: grid; gap: 28px; align-items: start; }
.feel__img { margin: 0; border-radius: 22px; overflow: hidden; box-shadow: var(--shadow); max-width: 520px; justify-self: center; }
.feel__img img { width: 100%; height: auto; aspect-ratio: 4 / 4.6; object-fit: cover; object-position: 50% 20%; }
.sec__head--left { text-align: left; margin: 0 0 18px; }
.feel__list { display: grid; gap: 10px; }
.feel__list li { display: flex; gap: 12px; align-items: flex-start; padding: 14px 16px; border-radius: 14px; background: var(--mint); font-size: 16px; color: var(--ink); }
.feel__list svg { flex-shrink: 0; margin-top: 2px; padding: 4px; width: 22px; height: 22px; border-radius: 50%; background: var(--green-700); color: #fff; }
.feel .note { margin-top: 12px; }
.warn { margin-top: 22px; padding: 20px; border-radius: 18px; background: #fff; border: 1px solid var(--green-100); border-left: 5px solid var(--gold); box-shadow: 0 10px 24px -18px rgba(36, 57, 31, .5); }
.warn__title { display: flex; align-items: center; gap: 8px; font-family: var(--font-h); font-weight: 800; font-size: 17px; color: var(--green-950); margin-bottom: 6px; }
.warn__title svg { color: var(--gold-600); font-size: 20px; }
.warn > p { font-size: 15px; color: var(--ink-2); }
.warn ul { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 14px 0; }
.warn li { display: flex; align-items: center; gap: 8px; padding: 10px; border-radius: 12px; background: var(--mint); font-size: 13.5px; line-height: 1.3; color: var(--ink); }
.warn li svg { flex-shrink: 0; font-size: 20px; color: var(--green-700); }
.warn__foot { padding-top: 12px; border-top: 1px dashed var(--green-100); }
.warn__foot b { color: var(--green-950); }
@media (min-width: 900px) {
  .feel { grid-template-columns: .9fr 1.1fr; gap: 56px; align-items: center; }
  .feel__img { justify-self: stretch; }
}

/* Kits */
.kit__gift { color: var(--green-800); font-weight: 700; }
.kit__gift svg { color: var(--gold-600); }
.kits__note { display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 22px; font-size: 14px; color: rgba(255, 255, 255, .85); text-align: center; }
.kits__note svg { color: var(--gold); font-size: 18px; flex-shrink: 0; }

/* Rodapé */
.footer__col { display: grid; gap: 10px; align-content: start; }
.footer__col a { display: inline-flex; align-items: center; gap: 8px; text-decoration: none; }
.footer__col a:hover { color: var(--gold); }
.footer__col a svg { font-size: 17px; color: var(--gold); }
.footer__title { font-family: var(--font-h); font-weight: 700; color: #fff; }
.footer__title--gap { margin-top: 10px; }
.footer__pay { display: flex; flex-wrap: wrap; gap: 6px; }
.footer__pay li { padding: 5px 10px; border-radius: 6px; background: #fff; color: var(--green-950); font-family: var(--font-h); font-weight: 700; font-size: 12px; }
.footer { background: #1E301A; }

/* Janelas de política */
.modal { width: min(680px, calc(100% - 24px)); max-height: 86vh; padding: 0; border: 0; border-radius: 20px; background: #fff; color: var(--ink); box-shadow: 0 30px 80px -20px rgba(0, 0, 0, .5); }
.modal::backdrop { background: rgba(20, 30, 18, .55); backdrop-filter: blur(2px); }
.modal__box { position: relative; padding: 26px 22px 24px; }
.modal h3 { font-size: 21px; font-weight: 800; color: var(--green-950); padding-right: 40px; }
.modal__body { margin-top: 10px; font-size: 14.5px; color: var(--ink-2); }
.modal__body h4 { margin: 18px 0 6px; font-size: 15px; color: var(--green-950); }
.modal__close { position: absolute; top: 14px; right: 14px; width: 36px; height: 36px; border: 0; border-radius: 50%; background: var(--mint); color: var(--green-900); font-size: 22px; line-height: 1; cursor: pointer; }
.faq__list { padding-top: 0 !important; }
.hero h1 { font-size: clamp(25px, 6.6vw, 40px); }
/* Vídeos de depoimento */
.rail--videos .vid { display: block; width: 100%; aspect-ratio: 9 / 16; object-fit: cover; border-radius: 18px; background: #1E301A; box-shadow: 0 12px 28px -16px rgba(0, 0, 0, .5); }
#videos .note { margin-top: 14px; }
@media (min-width: 900px) { #videos .carousel { max-width: 900px; margin: 0 auto; } }


/* ===== Alterações 25/10 (Amanda): títulos fortes, 8 em 1, kits compactos ===== */
:root { --font-x: 'Archivo', 'Plus Jakarta Sans', system-ui, sans-serif; }
.hero h1.h1-impact { font-family: var(--font-x); font-weight: 900; text-transform: uppercase; font-size: clamp(27px, 7.4vw, 46px); line-height: 1.08; letter-spacing: -.01em; color: var(--green-950); }
.h1-impact mark { background: var(--green-700); color: #fff; padding: 0 .18em; border-radius: 6px; -webkit-box-decoration-break: clone; box-decoration-break: clone; }
.sec__head h2, .split__copy h2, .final h2, .oito__t { font-family: var(--font-x); font-weight: 900; letter-spacing: -.01em; }
.sec__head h2 { font-size: clamp(30px, 7.4vw, 46px); }
.reseller { display: inline-flex; align-items: center; gap: 6px; margin-bottom: 10px; padding: 6px 12px; border-radius: 999px; background: var(--green-100); color: var(--green-900); font-weight: 700; font-size: 13px; }
.reseller svg { width: 16px; height: 16px; color: var(--green-700); }
.hero__media { aspect-ratio: 1000 / 1389; }
.hero__media img { object-fit: cover; }

.oito { padding: 34px 0 40px; background: #fff; }
.oito__t { text-align: center; font-size: clamp(24px, 6vw, 36px); color: var(--green-950); text-transform: uppercase; }
.oito__t span { color: var(--green-700); }
.oito__grid { list-style: none; margin: 22px auto 0; display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; max-width: 980px; }
.oito__grid li { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 10px; padding: 18px 10px; border-radius: 18px; background: var(--mint); border: 1px solid var(--green-100); }
.oito__ic { display: grid; place-items: center; width: 64px; height: 64px; border-radius: 18px; background: linear-gradient(160deg, #7FB25C, var(--green-700)); color: #fff; box-shadow: 0 10px 20px -12px rgba(36, 57, 31, .7); }
.oito__ic svg { width: 32px; height: 32px; }
.oito__grid b { font-size: 14px; line-height: 1.3; color: var(--green-950); }
@media (min-width: 760px) { .oito__grid { grid-template-columns: repeat(4, 1fr); gap: 16px; } .oito__grid b { font-size: 15px; } }

/* Dores no estilo da arte dos benefícios (ícone em círculo + texto em pílula) */
.pain { align-items: center; border-radius: 999px 22px 22px 999px; padding: 12px 18px 12px 12px; background: #fff; }
.pain__ic { width: 58px; height: 58px; border-radius: 50%; background: var(--green-100); color: var(--green-900); box-shadow: inset 0 0 0 3px #fff, 0 0 0 1px var(--green-100); flex-shrink: 0; }
.pain__ic svg { width: 28px; height: 28px; }

/* Kits compactos */
.kits-c { display: grid; gap: 14px; max-width: 820px; margin: 0 auto; }
.kc { position: relative; display: grid; grid-template-columns: 120px 1fr; gap: 14px; align-items: center; padding: 14px; border-radius: 20px; background: #fff; color: var(--ink); box-shadow: 0 16px 34px -22px rgba(0, 0, 0, .6); }
.kc--best { outline: 3px solid var(--gold); }
.kc__selo { position: absolute; top: -12px; right: 16px; padding: 5px 12px; border-radius: 999px; background: var(--gold); color: var(--green-950); font-family: var(--font-x); font-weight: 800; font-size: 12px; text-transform: uppercase; letter-spacing: .04em; }
.kc__thumb { position: relative; padding: 0; border: 0; border-radius: 14px; overflow: hidden; background: var(--mint); cursor: zoom-in; aspect-ratio: 2 / 3; }
.kc__thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.kc__thumb span { position: absolute; left: 0; right: 0; bottom: 0; padding: 6px 4px; background: rgba(36, 57, 31, .85); color: #fff; font-size: 10.5px; font-weight: 700; line-height: 1.2; }
.kc h3 { font-family: var(--font-x); font-weight: 900; font-size: 18px; color: var(--green-950); text-transform: uppercase; }
.kc__inc { margin-top: 4px; font-size: 13px; color: var(--ink-2); line-height: 1.35; }
.kc__price { margin-top: 8px; font-family: var(--font-x); font-weight: 900; font-size: 28px; color: var(--green-950); line-height: 1; }
.kc__price small { font-size: 14px; font-weight: 700; }
.kc__cash { margin: 4px 0 10px; font-size: 12.5px; color: var(--ink-2); }
.kc__cash b { color: var(--cta-dark); }
.kc .btn { padding: 12px 16px; font-size: 15px; }
@media (min-width: 760px) { .kc { grid-template-columns: 170px 1fr; padding: 18px; gap: 22px; } .kc__price { font-size: 34px; } .kc h3 { font-size: 21px; } .kc__inc { font-size: 14.5px; } }

/* Galeria dos kits */
.modal--gal { width: min(560px, calc(100% - 20px)); }
.modal--gal .modal__box { padding: 46px 14px 16px; }
.gal { position: relative; overflow: hidden; border-radius: 14px; background: var(--mint); }
.gal__track { display: flex; transition: transform .35s ease; touch-action: pan-y; }
.gal__track figure { flex: 0 0 100%; margin: 0; display: grid; place-items: center; max-height: 68vh; }
.gal__track img { max-width: 100%; max-height: 68vh; object-fit: contain; display: block; }
.gal__nav { position: absolute; top: 50%; transform: translateY(-50%); width: 40px; height: 40px; border: 0; border-radius: 50%; background: rgba(255, 255, 255, .92); color: var(--green-900); font-size: 26px; line-height: 1; cursor: pointer; box-shadow: 0 6px 16px -8px rgba(0, 0, 0, .5); }
.gal__nav--prev { left: 8px; } .gal__nav--next { right: 8px; }
.gal__dots { display: flex; justify-content: center; gap: 6px; margin: 12px 0 4px; }
.gal__dots button { width: 8px; height: 8px; padding: 0; border: 0; border-radius: 999px; background: #CFD6D2; cursor: pointer; }
.gal__dots button[aria-current="true"] { width: 22px; background: var(--green-700); }
.gal__cap { text-align: center; font-weight: 700; font-size: 14px; color: var(--green-950); margin-bottom: 12px; }
@media (min-width: 900px) {
  .pain { flex-direction: row; align-items: center; padding: 14px 20px 14px 14px; }
  .hero h1.h1-impact { font-size: 38px; }
}

/* 27/10 — logo Meu Slim Pro e selo ANVISA */
.logo__img { width: 46px; height: 46px; border-radius: 50%; display: block; flex: none; }
.logo--light .logo__img { box-shadow: 0 0 0 2px var(--gold); }
.anvisa { display: inline-flex; align-items: center; gap: 8px; margin: 8px 0 0; padding: 6px 12px; border-radius: 999px; background: #fff; border: 1px solid var(--line, #dfe7d6); color: var(--green-900); font-size: 14px; }
.anvisa svg { width: 16px; height: 16px; color: var(--green-700, #2e7d32); flex: none; }

/* 27/10 — botões no estilo link da bio (Grupo VIP / Preciso de ajuda) */
.links { display: grid; gap: 14px; max-width: 620px; margin: 32px auto 0; }
.lk { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 22px 24px; border-radius: 28px; text-decoration: none; box-shadow: 0 10px 24px rgba(20,40,20,.10); transition: transform .15s ease; }
.lk:hover { transform: translateY(-2px); }
.lk b { display: block; font-family: var(--font-display, inherit); font-weight: 800; font-size: clamp(20px, 5vw, 26px); text-transform: uppercase; letter-spacing: -.01em; line-height: 1.05; }
.lk small { display: block; margin-top: 6px; font-size: 15px; opacity: .85; }
.lk i { flex: none; display: grid; place-items: center; width: 52px; height: 52px; border-radius: 50%; font-style: normal; font-size: 24px; font-weight: 700; }
.lk--vip { background: var(--green-900, #10301c); color: #fff; }
.lk--vip i { background: #1f9d5b; color: #fff; }
.lk--help { background: #fff; color: var(--green-900, #10301c); border: 1px solid #e3e8dc; }
.lk--help i { background: var(--gold, #c9a54a); color: var(--green-900, #10301c); }

.kits__trust { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin: 18px 0 0; }
.kits__trust span { display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; border-radius: 999px; background: rgba(255,255,255,.12); color: #fff; font-size: 15px; }
.kits__trust svg { width: 16px; height: 16px; color: var(--gold); flex: none; }
