/* =========================================================================
   POUSO DE PÉ — design system
   Paleta sage/warm elevada. Contrastes anotados (WCAG AA = 4.5:1 texto).
   ========================================================================= */
:root{
  /* superfícies */
  --paper:#FBF8F4;          /* fundo da página */
  --surface:#FFFFFF;
  --surface-2:#F4F1EB;
  --surface-3:#EDE9E1;

  /* texto  (ratio sobre --paper) */
  --ink:#262320;            /* 14.9:1  */
  --ink-2:#554E46;          /* 7.6:1   */
  --muted:#71695F;          /* 5.1:1   */

  /* linhas — ratio sobre --paper
     --line   decorativa (divisória, hairline de card)
     --line-2 borda de COMPONENTE interativo: 3,09:1, cumpre WCAG 1.4.11 */
  --line:#DDD6C9;           /* 1,38:1 */
  --line-2:#978D7D;         /* 3,09:1 · 3,27:1 sobre branco */

  /* marca */
  --brand:#2F5D43;          /* branco sobre brand 7.6:1 */
  --brand-dk:#23472F;
  --brand-ink:#255039;      /* 7.3:1 sobre paper */
  --brand-10:#E8EFE9;
  --brand-20:#AFC6B6;       /* 1,76:1 — decorativa */

  /* acento quente — economia, urgência honesta */
  --clay:#A8482A;           /* branco sobre clay 5.6:1 · sobre paper 5.4:1 */
  --clay-10:#FBEDE7;
  --gold:#B8860B;           /* estrelas */

  --ok:#2F7D4F;
  --warn:#9A3B2C;

  /* tipografia */
  --serif:'Fraunces',Georgia,'Times New Roman',serif;
  --sans:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;

  --fs-display:clamp(30px,8.2vw,56px);
  --fs-h2:clamp(25px,6.2vw,40px);
  --fs-h3:clamp(17px,4.2vw,21px);
  --fs-lead:clamp(15px,3.9vw,18px);
  --fs-body:16px;
  --fs-sm:14px;
  --fs-xs:12.5px;
  --fs-micro:11px;

  /* espaçamento */
  --s1:4px;  --s2:8px;  --s3:12px; --s4:16px; --s5:20px;
  --s6:24px; --s7:32px; --s8:40px; --s9:56px; --s10:72px; --s11:96px;
  --gutter:18px;
  --maxw:1180px;

  /* forma */
  --r-sm:10px; --r:16px; --r-lg:22px; --r-xl:28px; --r-full:999px;
  --sh-1:0 1px 2px rgba(38,35,32,.05);
  --sh-2:0 2px 10px rgba(38,35,32,.07);
  --sh-3:0 10px 34px rgba(38,35,32,.11);
  --sh-up:0 -6px 24px rgba(38,35,32,.10);

  --t-fast:.15s cubic-bezier(.4,0,.2,1);
  --t:.24s cubic-bezier(.4,0,.2,1);

  --bar-h:34px;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:76px;-webkit-text-size-adjust:100%}
body{
  background:var(--paper);color:var(--ink);
  font-family:var(--sans);font-size:var(--fs-body);line-height:1.6;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
  padding-bottom:env(safe-area-inset-bottom);
}
img,video{display:block;max-width:100%}
img{height:auto}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}
button,a,summary,label,input{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:2.5px solid var(--brand);outline-offset:3px;border-radius:4px}
h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.12;letter-spacing:-.018em}
h1{font-size:var(--fs-display)}
h2{font-size:var(--fs-h2)}
h3{font-size:var(--fs-h3);line-height:1.25}
strong{font-weight:650}
::selection{background:var(--brand-20)}

.wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

.eyebrow{
  font-size:var(--fs-micro);font-weight:700;text-transform:uppercase;
  letter-spacing:.15em;color:var(--brand-ink);
}
.section{padding-block:var(--s9)}
.section-head{max-width:640px;margin-inline:auto;text-align:center;margin-bottom:var(--s7)}
.section-head .eyebrow{display:block;margin-bottom:var(--s3)}
.section-head p{color:var(--ink-2);font-size:var(--fs-lead);margin-top:var(--s4)}

/* ---------------------------------------------------------------- avisos */
.announce{
  position:relative;z-index:60;background:var(--brand-dk);color:#F3F6F2;
  height:var(--bar-h);overflow:hidden;
  font-size:var(--fs-micro);letter-spacing:.11em;text-transform:uppercase;font-weight:600;
}
.announce ul{list-style:none}
.announce li{height:var(--bar-h);display:flex;align-items:center;justify-content:center;padding-inline:var(--s3);text-align:center;white-space:nowrap;overflow:hidden}
@media(max-width:400px){.announce{font-size:10px;letter-spacing:.06em}}

/* --------------------------------------------------------------- cabeçalho */
.site-header{
  position:sticky;top:0;z-index:55;
  background:rgba(251,248,244,.86);backdrop-filter:saturate(180%) blur(14px);
  -webkit-backdrop-filter:saturate(180%) blur(14px);
  border-bottom:1px solid var(--line);
}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);min-height:56px}
.brand{display:flex;align-items:center;gap:9px;font-family:var(--serif);font-size:19px;letter-spacing:-.01em;font-weight:600}
.brand-mark{
  flex:0 0 28px;width:28px;height:28px;border-radius:9px;background:var(--brand);
  display:grid;place-items:center;color:#fff;
}
.brand-mark svg{width:17px;height:17px}
.header-rating{display:flex;align-items:center;gap:6px;font-size:var(--fs-xs);color:var(--ink-2);white-space:nowrap}
.header-rating .stars{--star:13px}
.header-rating b{color:var(--ink);font-weight:700}
.header-rating span{display:none}
@media(min-width:430px){.header-rating span{display:inline}}

/* ------------------------------------------------------------------ hero */
.pdp{display:grid;grid-template-columns:1fr;gap:var(--s6);padding-top:var(--s5);padding-bottom:var(--s8)}

.pdp-intro{text-align:center;max-width:620px;margin-inline:auto}
.pdp-intro h1{margin-bottom:var(--s3)}
.pdp-intro p{color:var(--ink-2);font-size:var(--fs-lead)}

/* galeria */
.gallery{position:relative;min-width:0}
.gallery-track{
  list-style:none;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;
  border-radius:var(--r-lg);background:var(--surface-2);
  scrollbar-width:none;-webkit-overflow-scrolling:touch;
}
.gallery-track::-webkit-scrollbar{display:none}
.gallery-track li{position:relative;flex:0 0 100%;scroll-snap-align:center;aspect-ratio:1/1;max-height:42svh}
.gallery-track img{width:100%;height:100%;object-fit:cover;object-position:50% 42%}
.gallery-tag{
  position:absolute;left:12px;top:12px;z-index:2;
  background:rgba(35,71,47,.92);color:#fff;font-size:var(--fs-micro);font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;padding:7px 12px;border-radius:var(--r-full);
  backdrop-filter:blur(6px);
}
.ba-labels{position:absolute;inset:auto 0 12px;display:flex;justify-content:space-around;pointer-events:none;z-index:2}
.ba-label{
  display:inline-flex;align-items:center;gap:5px;background:rgba(255,255,255,.93);
  color:var(--ink);font-size:var(--fs-micro);font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;padding:6px 12px;border-radius:var(--r-full);box-shadow:var(--sh-1);
}
.ba-label b{display:grid;place-items:center;width:15px;height:15px;border-radius:50%;color:#fff;font-size:10px}
.ba-no b{background:var(--warn)} .ba-yes b{background:var(--ok)}
.gallery-dots{display:flex;justify-content:center;gap:2px;margin-top:var(--s3)}
.gallery-dots button{width:26px;height:26px;display:grid;place-items:center}
.gallery-dots button::before{content:'';width:7px;height:7px;border-radius:var(--r-full);background:var(--line-2);opacity:.55;transition:width var(--t),background var(--t),opacity var(--t)}
.gallery-dots button[aria-current="true"]::before{width:22px;background:var(--brand);opacity:1}

/* ------------------------------------------------------------- buy box */
.buy{min-width:0}
.buy .eyebrow{display:block;margin-bottom:var(--s2)}
.buy h1{margin-bottom:var(--s3)}

.rating-row{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s2) var(--s3);margin-bottom:var(--s4);font-size:var(--fs-sm);color:var(--ink-2)}
.rating-row b{color:var(--ink)}
.rating-row a{color:var(--brand-ink);text-decoration:underline;text-underline-offset:3px;font-weight:600}

.stars{--star:15px;display:inline-flex;gap:1.5px;position:relative;line-height:0;min-width:calc(var(--star)*5 + 6px);height:var(--star)}
.stars svg{width:var(--star);height:var(--star);fill:var(--gold);flex:0 0 var(--star)}
.stars-partial{--star:17px;display:inline-block;position:relative;width:calc(var(--star)*5 + 6px);height:var(--star)}
.stars-partial .stars{position:absolute;inset:0;min-width:0}
.stars-partial .bg svg{fill:var(--line-2)}
.stars-partial .fill{overflow:hidden;white-space:nowrap}

.price-row{display:flex;align-items:baseline;flex-wrap:wrap;gap:var(--s2) var(--s3)}
.price-now{font-family:var(--serif);font-size:clamp(30px,8vw,40px);font-weight:600;letter-spacing:-.02em;line-height:1}
.price-was{font-size:var(--fs-sm);color:var(--muted);text-decoration:line-through}
.price-off{
  font-size:var(--fs-micro);font-weight:800;letter-spacing:.07em;text-transform:uppercase;
  background:var(--clay-10);color:var(--clay);padding:5px 10px;border-radius:var(--r-full);
}
.price-sub{font-size:var(--fs-sm);color:var(--ink-2);margin-top:var(--s2)}
.price-sub b{color:var(--ink)}

.short-desc{color:var(--ink-2);margin:0;font-size:14.5px}

.benefits{list-style:none;display:grid;gap:9px;margin:var(--s6) 0 var(--s4)}
.benefits li{display:flex;align-items:flex-start;gap:10px;font-size:var(--fs-sm);line-height:1.45}
.benefits svg{flex:0 0 17px;width:17px;height:17px;margin-top:1px;color:var(--brand)}

/* seletor de kit */
.kits{border:0;display:grid;gap:8px;margin-bottom:var(--s5)}
.kits legend{font-size:var(--fs-micro);font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:var(--brand-ink);margin-bottom:10px;padding:0}
.kit{
  position:relative;display:flex;align-items:center;gap:var(--s3);
  padding:11px var(--s4);background:var(--surface);
  border:1.5px solid var(--line-2);border-radius:var(--r);
  cursor:pointer;transition:border-color var(--t-fast),background var(--t-fast),box-shadow var(--t-fast);
  min-height:56px;
}
.kit:hover{border-color:var(--brand)}
.kit input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.kit-dot{flex:0 0 21px;width:21px;height:21px;border:1.6px solid var(--line-2);border-radius:50%;display:grid;place-items:center;transition:border-color var(--t-fast)}
.kit-dot::after{content:'';width:11px;height:11px;border-radius:50%;background:var(--brand);transform:scale(0);transition:transform var(--t-fast)}
.kit-info{flex:1;min-width:0}
.kit-title{display:block;font-size:var(--fs-sm);font-weight:700;letter-spacing:-.005em}
.kit-sub{display:block;font-size:var(--fs-xs);color:var(--muted);line-height:1.38;margin-top:2px}
.kit-cost{text-align:right;white-space:nowrap}
.kit-price{display:block;font-size:var(--fs-sm);font-weight:700}
.kit-unit{display:block;font-size:var(--fs-micro);color:var(--muted);margin-top:1px}
.kit[data-on="1"]{border-color:var(--brand);background:var(--brand-10);box-shadow:0 0 0 1px var(--brand)}
.kit[data-on="1"] .kit-dot{border-color:var(--brand)}
.kit[data-on="1"] .kit-dot::after{transform:scale(1)}
.kit input:focus-visible ~ .kit-dot{outline:2.5px solid var(--brand);outline-offset:3px}
.kit-flag{
  position:absolute;top:-9px;right:14px;background:var(--clay);color:#fff;
  font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;
  padding:3px 9px;border-radius:var(--r-full);
}

/* botões */
.btn{
  display:flex;align-items:center;justify-content:center;gap:8px;
  width:100%;min-height:56px;padding:15px 22px;border-radius:var(--r-full);
  font-size:15px;font-weight:700;letter-spacing:.01em;text-align:center;
  transition:background var(--t-fast),transform var(--t-fast),box-shadow var(--t-fast);
}
.btn-primary{background:var(--brand);color:#fff;box-shadow:0 4px 14px rgba(47,93,67,.26)}
.btn-primary:hover{background:var(--brand-dk)}
.btn-primary:active{transform:translateY(1px)}
.btn-primary svg{width:18px;height:18px}
.btn-ghost{background:var(--surface);color:var(--ink);border:1.5px solid var(--line-2)}
.btn-ghost:hover{border-color:var(--brand);color:var(--brand-ink)}

.cta-note{display:flex;align-items:center;justify-content:center;gap:7px;font-size:var(--fs-xs);color:var(--ink-2);margin-top:var(--s3);text-align:center;line-height:1.4}
.cta-note svg{flex:0 0 14px;width:14px;height:14px;color:var(--brand)}

/* confiança */
.trust{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s2);margin:var(--s6) 0;padding:var(--s5) 0;border-block:1px solid var(--line)}
.trust li{display:flex;flex-direction:column;align-items:center;text-align:center;gap:7px;font-size:var(--fs-xs);line-height:1.35;color:var(--ink-2)}
.trust b{display:block;color:var(--ink);font-weight:700;font-size:var(--fs-xs)}
.trust svg{width:25px;height:25px;color:var(--brand);stroke-width:1.5}

.paylines{margin-bottom:var(--s6)}
.paylines p{font-size:var(--fs-micro);text-transform:uppercase;letter-spacing:.13em;color:var(--muted);font-weight:700;margin-bottom:10px}
.paylist{list-style:none;display:flex;flex-wrap:wrap;gap:6px}
.paylist li{
  background:var(--surface);border:1px solid var(--line);border-radius:7px;
  padding:5px 9px;font-size:var(--fs-micro);font-weight:700;color:var(--ink-2);letter-spacing:.02em;
}
.paylist li.pix{color:#0a7f72;border-color:#bfe3de;background:#f0fbf9}

/* frete */
.ship{border-top:1px solid var(--line);padding-top:var(--s6)}
.ship-label{display:block;font-size:var(--fs-micro);font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:var(--brand-ink);margin-bottom:var(--s3)}
.ship-field{display:flex;background:var(--surface);border:1.5px solid var(--line-2);border-radius:var(--r-full);overflow:hidden;transition:border-color var(--t-fast)}
.ship-field:focus-within{border-color:var(--brand)}
.ship-field input{flex:1;min-width:0;border:0;background:none;padding:0 20px;min-height:54px;font:inherit;font-size:16px;color:var(--ink)}
.ship-field input::placeholder{color:var(--muted)}
.ship-field input:focus-visible{outline:none}
.ship-field button{background:var(--brand);color:#fff;padding:0 24px;min-width:118px;font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:.12em;transition:background var(--t-fast)}
.ship-field button:hover{background:var(--brand-dk)}
.ship-field button:disabled{opacity:.6;cursor:default}
.ship-help{display:inline-block;font-size:var(--fs-xs);color:var(--muted);text-decoration:underline;text-underline-offset:3px;margin:10px 0 0 20px}
.ship-out:empty{display:none}
.ship-out{margin-top:var(--s4)}
.ship-place{font-size:var(--fs-xs);color:var(--muted);margin-bottom:10px}
.ship-place strong{color:var(--ink)}
.ship-opts{list-style:none;display:grid;gap:8px}
.ship-opts li{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);padding:12px var(--s4)}
.ship-name{display:flex;flex-direction:column;font-size:var(--fs-sm);font-weight:700}
.ship-name small{font-size:var(--fs-xs);font-weight:400;color:var(--muted)}
.ship-cost{font-size:var(--fs-sm);font-weight:700;white-space:nowrap}
.ship-cost.free{color:var(--brand);background:var(--brand-10);padding:4px 10px;border-radius:var(--r-full);font-size:var(--fs-micro);text-transform:uppercase;letter-spacing:.07em}
.ship-err{font-size:var(--fs-xs);color:var(--warn)}
.ship-wait{font-size:var(--fs-xs);color:var(--muted)}

/* =========================================================== faixa de prova */
.proofbar{background:var(--brand-10);border-block:1px solid var(--brand-20)}
.proofbar ul{list-style:none;display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s4) var(--s5);padding-block:var(--s6)}
.proofbar li{display:flex;align-items:center;gap:10px;font-size:var(--fs-xs);line-height:1.35;color:var(--brand-dk)}
.proofbar svg{flex:0 0 20px;width:20px;height:20px;color:var(--brand);stroke-width:1.6}
.proofbar b{display:block;font-size:var(--fs-sm);font-weight:800;color:var(--brand-dk);letter-spacing:-.01em}

/* ================================================================== dor */
.pain{background:var(--surface-2)}
.pain-inner{max-width:680px;margin-inline:auto}
.pain h2{margin-bottom:var(--s5)}
.pain p{color:var(--ink-2);font-size:var(--fs-lead);margin-bottom:var(--s4)}
.pain p:last-child{margin-bottom:0}
.pain p strong{color:var(--ink)}

/* ====================================================== antes e depois */
.ba{position:relative}
.ba-figure{position:relative;border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-3);background:var(--surface-2)}
.ba-figure img{width:100%;aspect-ratio:1/1;object-fit:cover}
.ba-split{position:absolute;inset:0;display:grid;grid-template-columns:1fr 1fr;pointer-events:none}
.ba-side{position:relative}
.ba-side span{
  position:absolute;left:50%;bottom:14px;transform:translateX(-50%);
  display:inline-flex;align-items:center;gap:6px;white-space:nowrap;
  background:rgba(255,255,255,.95);color:var(--ink);font-size:var(--fs-micro);
  font-weight:800;letter-spacing:.07em;text-transform:uppercase;
  padding:7px 13px;border-radius:var(--r-full);box-shadow:var(--sh-2);
}
.ba-side i{display:grid;place-items:center;width:16px;height:16px;border-radius:50%;color:#fff;font-size:10px;font-style:normal;line-height:1}
.ba-a i{background:var(--warn)} .ba-b i{background:var(--ok)}
.ba-caption{text-align:center;color:var(--ink-2);font-size:var(--fs-sm);margin-top:var(--s4);max-width:520px;margin-inline:auto}

/* ============================================================ mecanismo */
.how{counter-reset:step}
.how-list{list-style:none;display:grid;gap:var(--s5);max-width:720px;margin-inline:auto}
.how-list li{
  counter-increment:step;display:grid;grid-template-columns:44px 1fr;gap:var(--s4);
  align-items:start;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--r);padding:var(--s5);
}
.how-list li::before{
  content:counter(step);grid-row:span 2;
  display:grid;place-items:center;width:44px;height:44px;border-radius:50%;
  background:var(--brand-10);color:var(--brand-dk);
  font-family:var(--serif);font-size:19px;font-weight:600;
}
.how-list h3{margin-bottom:5px}
.how-list p{color:var(--ink-2);font-size:var(--fs-sm)}

/* ================================================================ usos */
.uses-grid{list-style:none;display:grid;gap:var(--s5)}
.use{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-1)}
.use img{width:100%;aspect-ratio:1/1;object-fit:cover;background:var(--surface-2)}
.use-body{padding:var(--s5)}
.use-body h3{margin-bottom:6px}
.use-body p{color:var(--ink-2);font-size:var(--fs-sm)}

/* ============================================================== vídeos
   Celular/tablet: carrossel com o vídeo da frente centralizado e os vizinhos
   espiando dos dois lados. Desktop (>=960): grade de 4, todos rodando. */
.videos{background:var(--surface-2)}
.reels{--card:min(70vw,280px)}
.reels-track{
  position:relative;list-style:none;display:flex;gap:var(--s4);
  overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
  padding:var(--s2) calc(50% - var(--card) / 2) var(--s3);
}
.reels-track::-webkit-scrollbar{display:none}
.reel{flex:0 0 var(--card);scroll-snap-align:center;transition:transform var(--t)}
.reel:not(.is-active){transform:scale(.94)}
.reel-media{
  position:relative;aspect-ratio:9/16;border-radius:var(--r-lg);overflow:hidden;
  background:#1d1c1a;box-shadow:var(--sh-2);cursor:pointer;
  transition:box-shadow var(--t);
}
.reel.is-active .reel-media{box-shadow:var(--sh-3)}
.reel-media video{width:100%;height:100%;object-fit:cover}
.reel-ctrl{position:absolute;right:10px;bottom:10px;z-index:2;display:flex;gap:8px;transition:opacity var(--t)}
.reel:not(.is-active) .reel-ctrl{opacity:0;pointer-events:none}
.reel-btn{
  width:44px;height:44px;border-radius:50%;display:grid;place-items:center;
  background:rgba(20,19,17,.6);color:#fff;
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  transition:background var(--t-fast);
}
.reel-btn:hover{background:rgba(20,19,17,.85)}
.reel-btn svg{width:18px;height:18px}
.reel-btn .b-on,.loop-toggle .b-on{display:none}
.reel-btn[data-on="1"] .b-off,.loop-toggle[data-on="1"] .b-off{display:none}
.reel-btn[data-on="1"] .b-on,.loop-toggle[data-on="1"] .b-on{display:block}
.reel-cap{display:flex;gap:var(--s3);align-items:baseline;padding:var(--s4) 2px 0}
.reel-num{flex:0 0 22px;font-family:var(--serif);font-size:15px;font-weight:600;color:var(--brand)}
.reel-cap p{font-size:var(--fs-xs);line-height:1.45;color:var(--ink-2)}
.reel-cap strong{display:block;font-size:var(--fs-sm);line-height:1.35;color:var(--ink);margin-bottom:2px}
.reels-dots{display:flex;justify-content:center;gap:2px;margin-top:var(--s4)}
.reels-dots button{width:26px;height:26px;display:grid;place-items:center}
.reels-dots button::before{content:'';width:7px;height:7px;border-radius:var(--r-full);background:var(--line-2);opacity:.55;transition:width var(--t),background var(--t),opacity var(--t)}
.reels-dots button[aria-current="true"]::before{width:22px;background:var(--brand);opacity:1}

@media(min-width:960px){
  .reels{max-width:1120px;margin-inline:auto;padding-inline:var(--gutter)}
  .reels-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s5);overflow:visible;padding:0;scroll-snap-type:none}
  .reel,.reel:not(.is-active){transform:none}
  .reel:not(.is-active) .reel-ctrl{opacity:1;pointer-events:auto}
  .reel-media{cursor:default}
  .reels-dots{display:none}
}

/* =========================================================== superfícies */
.surf-panels{display:grid;gap:var(--s5)}
.surf-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--s5);box-shadow:var(--sh-1)}
.surf-panel.no{background:#FDF6F4;border-color:#F0D9D2}
.surf-pill{
  display:inline-flex;align-items:center;gap:7px;font-size:var(--fs-micro);font-weight:800;
  letter-spacing:.1em;text-transform:uppercase;padding:6px 12px;border-radius:var(--r-full);
  margin-bottom:var(--s4);
}
.surf-panel.ok .surf-pill{background:var(--brand-10);color:var(--brand-dk)}
.surf-panel.no .surf-pill{background:#F7E2DC;color:var(--warn)}
.surf-pill svg{width:13px;height:13px;stroke-width:2.6}
.surf-grid{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s3)}
.surf-tile{text-align:center;min-width:0}
.surf-img{position:relative;display:block;border-radius:var(--r-sm);overflow:hidden;background:var(--surface-2);margin-bottom:8px}
.surf-img img{width:100%;aspect-ratio:1/1;object-fit:cover}
.surf-badge{position:absolute;right:5px;top:5px;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;color:#fff}
.surf-panel.ok .surf-badge{background:var(--ok)} .surf-panel.no .surf-badge{background:var(--warn)}
.surf-badge svg{width:11px;height:11px;stroke-width:3}
.surf-tile strong{display:block;font-size:var(--fs-xs);font-weight:700;line-height:1.25}
.surf-tile span{display:block;font-size:var(--fs-micro);color:var(--muted);line-height:1.3;margin-top:3px}

.size-check{
  display:grid;gap:var(--s4);align-items:center;margin-top:var(--s6);
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);
  padding:var(--s5);box-shadow:var(--sh-1);
}
.size-check img{width:100%;max-width:230px;margin-inline:auto;border-radius:var(--r-sm);background:var(--surface-2)}
.size-check h3{margin-bottom:6px}
.size-check p{color:var(--ink-2);font-size:var(--fs-sm)}

/* ========================================================== instalação */
.install{background:var(--surface-2)}
.steps{list-style:none;display:grid;gap:var(--s5);counter-reset:inst}
.step{counter-increment:inst;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-1)}
.step-img{position:relative;display:block;background:var(--surface-3)}
.step-img img{width:100%;aspect-ratio:4/3;object-fit:cover}
.step-num{
  position:absolute;left:12px;top:12px;width:32px;height:32px;border-radius:50%;
  background:var(--brand);color:#fff;display:grid;place-items:center;
  font-family:var(--serif);font-size:16px;font-weight:600;box-shadow:var(--sh-2);
}
.step-tag{position:absolute;right:12px;top:12px;background:rgba(255,255,255,.94);color:var(--ink-2);font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;padding:5px 9px;border-radius:var(--r-full)}
.step-body{padding:var(--s4) var(--s5) var(--s5)}
.step-body h3{margin-bottom:5px}
.step-body p{color:var(--ink-2);font-size:var(--fs-sm)}

/* aviso de segurança */
.safety{
  display:flex;gap:var(--s4);align-items:flex-start;
  background:#FFFBF0;border:1px solid #EDDFBE;border-radius:var(--r);
  padding:var(--s5);margin-top:var(--s6);
}
.safety svg{flex:0 0 22px;width:22px;height:22px;color:#9A7B1E;stroke-width:1.7;margin-top:1px}
.safety p{font-size:var(--fs-xs);line-height:1.55;color:#6B5718}
.safety strong{color:#54440F}

/* ============================================================ avaliações */
.rv-top{display:grid;gap:var(--s6);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--s6);box-shadow:var(--sh-1);margin-bottom:var(--s7)}
.rv-score{display:flex;align-items:center;gap:var(--s5)}
.rv-num{font-family:var(--serif);font-size:54px;font-weight:600;line-height:.9;letter-spacing:-.03em}
.rv-score .stars{--star:17px}
.rv-count{display:block;font-size:var(--fs-xs);color:var(--muted);margin-top:6px}
.rv-dist{list-style:none;display:grid;gap:6px}
.rv-dist li{display:grid;grid-template-columns:52px 1fr 26px;align-items:center;gap:10px;font-size:var(--fs-xs);color:var(--muted)}
.rv-bar{height:7px;border-radius:var(--r-full);background:var(--surface-3);overflow:hidden}
.rv-bar span{display:block;height:100%;border-radius:var(--r-full);background:var(--gold)}
.rv-dist-n{text-align:right;font-variant-numeric:tabular-nums}

.rv-note{background:var(--brand-10);border:1px solid var(--brand-20);border-radius:var(--r);padding:var(--s5);margin-bottom:var(--s7)}
.rv-note strong{display:block;font-size:var(--fs-sm);margin-bottom:6px;color:var(--brand-dk)}
.rv-note p{font-size:var(--fs-xs);line-height:1.55;color:var(--ink-2)}

.rv-grid{display:grid;gap:var(--s4)}
.rv-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:var(--s5);box-shadow:var(--sh-1)}
.rv-head{display:flex;align-items:center;gap:11px;margin-bottom:10px}
.rv-avatar{width:38px;height:38px;border-radius:50%;object-fit:cover;background:var(--surface-2);flex:0 0 38px}
.rv-who{min-width:0}
.rv-who strong{display:block;font-size:var(--fs-sm);font-weight:700;line-height:1.2}
.rv-who span{font-size:var(--fs-micro);color:var(--muted)}
.rv-card .stars{--star:14px;margin-bottom:9px}
.rv-text{font-size:var(--fs-sm);line-height:1.55;color:var(--ink-2)}
.rv-tags{list-style:none;display:grid;gap:4px;margin:10px 0}
.rv-tags li{font-size:var(--fs-xs);color:var(--ink-2)}
.rv-tags span{font-weight:700;color:var(--ink)}
.rv-photos{display:flex;gap:8px;margin-top:11px;flex-wrap:wrap}
.rv-photo{width:62px;height:62px;border-radius:9px;overflow:hidden;border:1px solid var(--line);background:var(--surface-2);padding:0}
.rv-photo img{width:100%;height:100%;object-fit:cover}
.rv-ok{display:inline-flex;align-items:center;gap:5px;font-size:var(--fs-micro);color:var(--ok);font-weight:700;margin-top:11px}
.rv-ok svg{width:13px;height:13px;stroke-width:2.4}

.rv-lightbox{border:0;padding:0;background:none;max-width:92vw;max-height:88vh}
.rv-lightbox::backdrop{background:rgba(25,23,21,.82)}
.rv-lightbox img{max-width:92vw;max-height:88vh;border-radius:var(--r);object-fit:contain}
.rv-close{position:absolute;top:8px;right:8px;width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.94);font-size:21px;line-height:1;display:grid;place-items:center}

/* ================================================ fotos de clientes */
.ugc{margin-top:var(--s7)}
.ugc-title{font-size:var(--fs-micro);font-weight:800;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);margin-bottom:var(--s4);text-align:center}
.ugc-grid{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s3);max-width:620px;margin-inline:auto}
.ugc-grid .rv-photo{width:100%;height:auto;aspect-ratio:3/4;border-radius:var(--r-sm)}

/* ============================================== galeria em loop contínuo
   O movimento é feito no JS (medindo a largura real), então nunca sobra
   buraco à direita, em tela nenhuma. */
.reallife{background:var(--surface-2);padding-block:var(--s8) var(--s9);overflow:hidden}
.reallife-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--s4);margin-bottom:var(--s6)}
.reallife-head .eyebrow{display:block;margin-bottom:var(--s2)}
.reallife-head h2{font-size:clamp(23px,5.6vw,34px)}
.loop-toggle{
  flex:0 0 44px;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;
  background:var(--surface);border:1.5px solid var(--line-2);color:var(--ink);
  transition:border-color var(--t-fast),color var(--t-fast);
}
.loop-toggle:hover{border-color:var(--brand);color:var(--brand-ink)}
.loop-toggle svg{width:15px;height:15px}
.loop{
  --tile:168px;overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 3.5%,#000 96.5%,transparent 100%);
  mask-image:linear-gradient(90deg,transparent 0,#000 3.5%,#000 96.5%,transparent 100%);
}
.loop-track{list-style:none;display:flex;gap:12px;width:max-content;will-change:transform}
.loop.is-on .loop-track{animation:loop-anda var(--loop-dur,40s) linear infinite}
.loop.is-paused .loop-track{animation-play-state:paused}
@keyframes loop-anda{from{transform:translate3d(0,0,0)}to{transform:translate3d(calc(-1 * var(--loop-w)),0,0)}}
.loop-track li{flex:0 0 var(--tile);width:var(--tile)}
.loop-track img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:var(--r);background:var(--surface-3)}
@media(min-width:720px){.loop{--tile:224px}.loop-track{gap:16px}}
@media(min-width:1280px){.loop{--tile:256px}}

/* =============================================================== garantia */
.guarantee{background:var(--brand-dk);color:#EDF2EC}
.guarantee .wrap{max-width:720px;text-align:center}
.guarantee h2{color:#fff;margin-bottom:var(--s4)}
.guarantee>.wrap>p{color:#C9D8C9;font-size:var(--fs-lead);margin-bottom:var(--s7)}
.g-seal{width:74px;height:74px;border-radius:50%;background:rgba(255,255,255,.1);border:1.5px solid rgba(255,255,255,.26);display:grid;place-items:center;margin:0 auto var(--s5)}
.g-seal svg{width:34px;height:34px;color:#fff;stroke-width:1.4}
.g-steps{list-style:none;display:grid;gap:var(--s4);text-align:left;counter-reset:g}
.g-steps li{counter-increment:g;display:grid;grid-template-columns:30px 1fr;gap:var(--s3);align-items:start;font-size:var(--fs-sm);color:#D7E2D6}
.g-steps li::before{content:counter(g);display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:rgba(255,255,255,.13);color:#fff;font-weight:700;font-size:var(--fs-xs)}
.g-steps b{color:#fff}
.g-fine{font-size:var(--fs-micro);color:#9EB3A0;margin-top:var(--s6);line-height:1.55}

/* ==================================================================== FAQ */
.faq-list{max-width:760px;margin-inline:auto;display:grid;gap:10px}
.faq-item{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;transition:border-color var(--t-fast)}
.faq-item[open]{border-color:var(--line-2);box-shadow:var(--sh-1)}
.faq-item summary{
  display:flex;align-items:center;justify-content:space-between;gap:var(--s4);
  padding:var(--s5);cursor:pointer;list-style:none;
  font-size:var(--fs-sm);font-weight:700;line-height:1.4;min-height:58px;
}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{
  content:'';flex:0 0 11px;width:11px;height:11px;margin-right:2px;
  border-right:2px solid var(--brand);border-bottom:2px solid var(--brand);
  transform:rotate(45deg) translateY(-2px);transition:transform var(--t);
}
.faq-item[open] summary::after{transform:rotate(225deg) translateY(-2px)}
.faq-item p{padding:0 var(--s5) var(--s5);font-size:var(--fs-sm);color:var(--ink-2);line-height:1.6}
.faq-item p + p{padding-top:0;margin-top:-6px}

/* =============================================================== sobre */
.about{background:var(--surface-2)}
.about-grid{display:grid;gap:var(--s5)}
.about-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:var(--s5);box-shadow:var(--sh-1)}
.about-card h3{margin-bottom:8px;font-size:var(--fs-h3)}
.about-card p{font-size:var(--fs-sm);color:var(--ink-2)}
.about-card a{color:var(--brand-ink);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.about-contact{list-style:none;display:grid;gap:10px;margin-top:var(--s4)}
.about-contact li{display:flex;align-items:center;gap:10px;font-size:var(--fs-sm)}
.about-contact svg{flex:0 0 17px;width:17px;height:17px;color:var(--brand);stroke-width:1.7}

/* =========================================================== CTA final */
.final{text-align:center}
.final .wrap{max-width:600px}
.final h2{margin-bottom:var(--s4)}
.final>.wrap>p{color:var(--ink-2);font-size:var(--fs-lead);margin-bottom:var(--s6)}
.final .btn{max-width:420px;margin-inline:auto}

/* ================================================================ rodapé */
.site-footer{background:var(--surface-3);border-top:1px solid var(--line);padding-block:var(--s8) var(--s9);font-size:var(--fs-xs);color:var(--ink-2)}
.foot-top{display:grid;gap:var(--s6);padding-bottom:var(--s6);border-bottom:1px solid var(--line-2)}
.foot-brand{display:flex;align-items:center;gap:9px;font-family:var(--serif);font-size:18px;font-weight:600;color:var(--ink);margin-bottom:10px}
.foot-col h4{font-size:var(--fs-micro);text-transform:uppercase;letter-spacing:.13em;color:var(--ink);margin-bottom:11px;font-family:var(--sans);font-weight:800}
.foot-col ul{list-style:none;display:grid;gap:8px}
.foot-col a{text-decoration:none}
.foot-col a:hover{color:var(--brand-ink);text-decoration:underline;text-underline-offset:3px}
.foot-legal{padding-top:var(--s6);display:grid;gap:var(--s3);line-height:1.6}
.foot-legal p{font-size:var(--fs-micro);color:var(--muted)}
.foot-col .foot-pay{display:flex;flex-wrap:wrap;gap:6px;margin-top:var(--s4)}
.foot-pay li{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:4px 8px;font-size:10px;font-weight:700;color:var(--ink-2);list-style:none}

/* ======================================================== barra sticky */
.sticky-bar{
  position:fixed;left:0;right:0;bottom:0;z-index:70;
  background:rgba(251,248,244,.97);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border-top:1px solid var(--line-2);box-shadow:var(--sh-up);
  padding:10px var(--gutter) calc(10px + env(safe-area-inset-bottom));
  display:flex;align-items:center;gap:var(--s3);
  transform:translateY(110%);transition:transform .28s cubic-bezier(.4,0,.2,1);
  visibility:hidden;
}
.sticky-bar.show{transform:translateY(0);visibility:visible}
.sticky-thumb{flex:0 0 44px;width:44px;height:44px;border-radius:11px;object-fit:cover;background:var(--surface-2);border:1px solid var(--line)}
.sticky-info{flex:1;min-width:0;line-height:1.25}
.sticky-price{display:block;font-size:16px;font-weight:800;letter-spacing:-.01em}
.sticky-sub{display:block;font-size:var(--fs-micro);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sticky-bar .btn{width:auto;flex:0 0 auto;min-height:48px;padding:12px 20px;font-size:var(--fs-sm);white-space:nowrap}
body.has-sticky{padding-bottom:84px}

/* ============================================================ responsivo */
@media(min-width:720px){
  :root{--gutter:26px}
  .proofbar ul{grid-template-columns:repeat(4,1fr)}
  .uses-grid{grid-template-columns:repeat(3,1fr)}
  .steps{grid-template-columns:repeat(2,1fr)}
  .surf-panels{grid-template-columns:1fr 1fr}
  .rv-grid{grid-template-columns:repeat(2,1fr)}
  .rv-top{grid-template-columns:auto 1fr;align-items:center;gap:var(--s8);padding:var(--s7)}
  .size-check{grid-template-columns:230px 1fr;text-align:left}
  .about-grid{grid-template-columns:repeat(3,1fr)}
  .foot-top{grid-template-columns:1.4fr 1fr 1fr}
  .ba-figure img{aspect-ratio:16/10}
}
@media(min-width:960px){
  :root{--gutter:32px}
  .gallery-track li{max-height:none}
  .pdp{grid-template-columns:minmax(0,1.05fr) minmax(400px,440px);gap:var(--s9);align-items:start;padding-top:var(--s7)}
  .pdp-intro{display:none}
  .buy{position:sticky;top:76px}
  .gallery-track{border-radius:var(--r-xl)}
  .steps{grid-template-columns:repeat(4,1fr)}
  .rv-grid{grid-template-columns:repeat(3,1fr)}
  .sticky-bar{display:none}
  body.has-sticky{padding-bottom:0}
  .section{padding-block:var(--s11)}
}

/* =============================================== movimento reduzido */
@media(prefers-reduced-motion:reduce){
  *:not(.loop-track),*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
}

/* atalho de teclado */
.skip{position:absolute;left:-9999px;top:0;z-index:99;background:var(--brand);color:#fff;padding:12px 18px;border-radius:0 0 var(--r-sm) 0;font-size:var(--fs-sm);font-weight:700}
.skip:focus{left:0}

/* ======================================================= livro (mockup 3D) */
.book{
  position:relative;flex:0 0 auto;width:150px;aspect-ratio:560/795;
  transform:perspective(900px) rotateY(-18deg);transform-style:preserve-3d;
  filter:drop-shadow(12px 16px 18px rgba(38,35,32,.26));
}
.book img{width:100%;height:100%;object-fit:cover;border-radius:2px 7px 7px 2px}
.book::before{
  content:'';position:absolute;top:2.5%;bottom:2.5%;right:-8px;width:9px;
  background:repeating-linear-gradient(90deg,#F6F1E8 0 1px,#E1D9CA 1px 2px);
  transform:rotateY(62deg);transform-origin:left center;border-radius:0 3px 3px 0;
}
.book::after{
  content:'';position:absolute;inset:0 auto 0 0;width:8%;
  background:linear-gradient(90deg,rgba(0,0,0,.30),rgba(0,0,0,0));border-radius:2px 0 0 2px;
}
.book-sm{width:64px;filter:drop-shadow(6px 8px 9px rgba(38,35,32,.24))}
.book-sm::before{right:-5px;width:6px}
.book-lg{width:min(58vw,230px)}

/* ===================================================== página do bônus */
.ty-main{max-width:860px;padding-block:var(--s8) var(--s10)}
.ty-hero{display:grid;gap:var(--s7);justify-items:center;text-align:center;margin-bottom:var(--s9)}
.ty-txt .eyebrow{display:block;margin-bottom:var(--s3)}
.ty-txt h1{font-size:clamp(28px,7vw,44px);margin-bottom:var(--s4)}
.ty-txt>p{color:var(--ink-2);font-size:var(--fs-lead);max-width:520px;margin:0 auto var(--s6)}
.ty-txt .btn{max-width:360px;margin-inline:auto}
.ty-nota{font-size:var(--fs-xs);color:var(--muted);max-width:420px;margin:var(--s4) auto 0}
.ty-bloco{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--s6);margin-bottom:var(--s5);box-shadow:var(--sh-1)}
.ty-bloco h2{font-size:clamp(20px,5vw,26px);margin-bottom:var(--s4)}
.ty-passos{list-style:none;display:grid;gap:var(--s3);counter-reset:t}
.ty-passos li{counter-increment:t;position:relative;padding-left:40px;font-size:var(--fs-sm);color:var(--ink-2)}
.ty-passos li::before{content:counter(t);position:absolute;left:0;top:-2px;width:28px;height:28px;border-radius:50%;background:var(--brand-10);color:var(--brand-dk);display:grid;place-items:center;font-family:var(--serif);font-weight:600;font-size:14px}
.ty-passos b{color:var(--ink)}
.ty-ajuda p{font-size:var(--fs-sm);color:var(--ink-2)}
.ty-ajuda a{color:var(--brand-ink);font-weight:700;text-decoration:underline;text-underline-offset:3px}
@media(min-width:720px){
  .ty-hero{grid-template-columns:auto 1fr;text-align:left;justify-items:start;align-items:center;gap:var(--s9)}
  .ty-txt>p,.ty-nota{margin-left:0}
  .ty-txt .btn{margin-left:0}
}

/* ============================================ benefícios pré-compra */
.perks{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:var(--s4) 0 var(--s5)}
.perks li{display:flex;align-items:center;gap:8px;min-height:38px;padding:7px 10px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);font-size:var(--fs-xs);font-weight:650;color:var(--ink);line-height:1.25}
.perks svg{flex:0 0 17px;width:17px;height:17px;color:var(--brand)}

/* ============================================ escada de quantidade */
.kit-thumb{position:relative;flex:0 0 52px;width:52px;height:52px;border-radius:12px;background:#fff;border:1px solid var(--line);overflow:visible}
.kit-thumb img{width:100%;height:100%;object-fit:contain;border-radius:11px;padding:3px}
.kit-thumb b{
  position:absolute;right:-7px;top:-7px;min-width:24px;height:24px;padding:0 6px;border-radius:99px;
  background:var(--ink);color:#fff;font-size:11px;font-weight:800;display:grid;place-items:center;
  box-shadow:0 0 0 2px var(--surface);
}
.kit[data-on="1"] .kit-thumb b{box-shadow:0 0 0 2px var(--brand-10)}
.kit-unit s{color:var(--muted);font-size:var(--fs-micro)}
.kit-save{display:inline-block;margin-top:3px;font-size:10.5px;font-weight:800;letter-spacing:.02em;color:var(--clay);background:var(--clay-10);padding:2px 7px;border-radius:99px}
.kit{padding:12px 14px}
.kits legend{margin-bottom:12px}

/* bônus no bloco de compra */
.bonus-strip{
  display:flex;align-items:center;gap:var(--s4);margin:-6px 0 var(--s5);
  padding:12px 14px 12px 18px;border-radius:var(--r);
  background:linear-gradient(135deg,#FFFBF0,#FBF3DF);border:1px solid #EADBB4;
}
.bonus-strip p{font-size:var(--fs-xs);line-height:1.4;color:#6A5420}
.bonus-strip strong{display:block;font-size:var(--fs-sm);color:var(--ink);margin:2px 0 1px;font-family:var(--serif);font-weight:600;letter-spacing:-.01em}
.bonus-tag{display:inline-block;font-size:9.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#7A5E12;background:#F4E6BF;padding:2px 7px;border-radius:99px}

/* ======================================================= seção de oferta */
.offer{background:linear-gradient(180deg,var(--surface-2) 0%,var(--paper) 100%)}
.offer-panel{
  display:grid;gap:var(--s6);background:var(--surface);border:1px solid var(--line);
  border-radius:var(--r-xl);padding:var(--s5);box-shadow:var(--sh-3);
}
.offer-label{font-size:var(--fs-micro);font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:var(--brand-ink);margin-bottom:var(--s3)}
.stack{list-style:none;display:grid}
.stack li{display:grid;grid-template-columns:52px 1fr auto;gap:var(--s3);align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}
.stack li:last-child{border-bottom:0}
.stack li>span:nth-child(2){font-size:var(--fs-xs);line-height:1.45;color:var(--ink-2)}
.stack strong{display:block;font-size:var(--fs-sm);color:var(--ink);line-height:1.3;margin-bottom:1px}
.stack-ico{width:52px;height:52px;border-radius:12px;background:var(--brand-10);color:var(--brand);display:grid;place-items:center}
.stack-ico svg{width:24px;height:24px}
.stack-img{background:#fff;border:1px solid var(--line)}
.stack-img img{width:100%;height:100%;object-fit:contain;padding:3px;border-radius:11px}
.stack-qty{font-size:var(--fs-sm);font-weight:800;color:var(--ink);background:var(--surface-2);border-radius:99px;padding:3px 10px}
.stack-bonus .book-sm{width:44px;margin-left:4px}
.stack-bonus .bonus-tag{margin-bottom:3px}

.offer-buy .kits{margin-bottom:var(--s4)}
.offer-total{display:flex;align-items:baseline;justify-content:space-between;padding:var(--s3) 2px var(--s4);border-top:1px dashed var(--line-2);margin-top:var(--s2)}
.offer-total span{font-size:var(--fs-sm);color:var(--ink-2);font-weight:650}
.offer-total strong{font-family:var(--serif);font-size:28px;font-weight:600;letter-spacing:-.02em}

/* vitrine do e-book */
.ebook-show{display:grid;gap:var(--s7);align-items:center;margin-top:var(--s9);padding:var(--s7) var(--s5);border-radius:var(--r-xl);background:var(--brand-dk);color:#E6EEE5;overflow:hidden;position:relative}
.ebook-show::before{content:'';position:absolute;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(233,217,184,.16),rgba(233,217,184,0) 70%);left:-120px;top:-120px;pointer-events:none}
.ebook-cover{display:grid;place-items:center;position:relative}
.ebook-show .eyebrow{color:#E9D9B8;display:block;margin-bottom:var(--s3)}
.ebook-show h3{font-size:clamp(22px,5.6vw,32px);color:#fff;line-height:1.15;margin-bottom:var(--s4)}
.ebook-txt>p{font-size:var(--fs-sm);color:#C9D8C9;line-height:1.6;margin-bottom:var(--s5)}
.ebook-caps{list-style:none;display:grid;gap:7px;margin-bottom:var(--s5)}
.ebook-caps li{display:flex;gap:10px;align-items:baseline;font-size:var(--fs-sm);color:#EEF3EC;padding-bottom:7px;border-bottom:1px solid rgba(255,255,255,.1)}
.ebook-caps b{font-family:var(--serif);font-weight:500;color:#E9D9B8;min-width:24px}
.ebook-fine{font-size:var(--fs-micro)!important;color:#9EB3A0!important;margin:0!important}

@media(min-width:720px){
  .perks{grid-template-columns:repeat(4,auto);justify-content:start}
  .ebook-caps{grid-template-columns:1fr 1fr;column-gap:var(--s6)}
}
@media(min-width:960px){
  .perks{grid-template-columns:1fr 1fr}
  .offer-panel{grid-template-columns:1fr 1fr;gap:var(--s8);padding:var(--s8)}
  .ebook-show{grid-template-columns:300px 1fr;padding:var(--s9);gap:var(--s9)}
  .ebook-show .book-lg{width:240px}
}
@media(max-width:480px){
  .offer-panel{padding:var(--s4) 14px;border-radius:var(--r-lg)}
  .kit{gap:10px;padding:11px 12px}
  .kit-thumb{flex-basis:44px;width:44px;height:44px;border-radius:10px}
  .kit-title{font-size:13.5px}
  .kit-flag{right:10px;font-size:9.5px}
}

/* =====================================================================
   v4 — ajustes do agente 32 (Dih Santana)
   ===================================================================== */

/* cabeçalho: ★ 4,3 (75) sempre visível, texto só em tela larga */
.header-rating{gap:5px}
.header-rating .hr-star{display:inline-flex;width:15px;height:15px}
.header-rating .hr-star svg{width:15px;height:15px;fill:var(--gold)}
.header-rating .hr-n{display:inline;color:var(--ink-2)}
.header-rating .hr-txt{display:none;color:var(--ink-2)}
@media(min-width:430px){.header-rating .hr-txt{display:inline}}

/* hero */
.buy h1{margin-bottom:var(--s2)}
.buy-sub{font-size:var(--fs-lead);color:var(--ink-2);line-height:1.45;margin-bottom:var(--s3);max-width:34em}
.rating-row .stars-partial{--star:16px}
.price-sub{margin:var(--s2) 0 var(--s5)}
.gallery-track li{max-height:36svh}

/* escada: espaço pros selos, selo em tinta (argila só pra dinheiro) */
.kits{gap:12px}
.kit.has-flag{margin-top:6px}
.kit-flag{background:var(--ink);top:-10px}
.kit-unit{display:block;font-size:var(--fs-micro);color:var(--muted);margin-top:1px}
.kit-cost{display:flex;flex-direction:column;align-items:flex-end;gap:1px}
.kit-price{font-variant-numeric:tabular-nums}

/* capa de PDF (plana, com selo): é arquivo digital, não livro impresso */
.pdf-cover{position:relative;flex:0 0 46px;width:46px;height:65px;border-radius:4px;overflow:visible;box-shadow:0 3px 10px rgba(38,35,32,.22)}
.pdf-cover img{width:100%;height:100%;object-fit:cover;border-radius:4px}
.pdf-cover b{position:absolute;right:-6px;bottom:-6px;background:var(--clay);color:#fff;font-size:9px;font-weight:800;letter-spacing:.06em;padding:2px 5px;border-radius:4px}
.pdf-cover-sm{width:40px;height:57px;flex-basis:40px;margin-left:6px}

.bonus-strip{align-items:flex-start;margin:var(--s3) 0 var(--s5);padding:12px 14px}
.bonus-body{min-width:0;font-size:var(--fs-xs);line-height:1.4;color:#6A5420}
.bonus-body strong{display:block;font-family:var(--serif);font-weight:600;font-size:15px;color:var(--ink);margin:3px 0 1px;letter-spacing:-.01em}
.bonus-line{display:block}
.bonus-caps{margin-top:6px}
.bonus-caps summary{cursor:pointer;font-weight:700;color:#7A5E12;text-decoration:underline;text-underline-offset:3px;list-style:none;display:inline-block;min-height:24px}
.bonus-caps summary::-webkit-details-marker{display:none}
.bonus-caps ol{margin:6px 0 0 18px;display:grid;gap:2px;color:#5E4A1C}

/* chips: abaixo do botão, 2 linhas */
.perks{margin:var(--s5) 0 var(--s5);gap:8px}
.perks li{align-items:flex-start;min-height:48px;padding:9px 11px;font-weight:400}
.perks li span{display:flex;flex-direction:column;font-size:11.5px;color:var(--muted);line-height:1.3}
.perks li b{font-size:13px;font-weight:700;color:var(--ink)}
.perks svg{margin-top:1px}
@media(min-width:720px){.perks{grid-template-columns:1fr 1fr}}

/* celular com o guia na tela */
.phone{
  position:relative;display:block;width:96px;aspect-ratio:9/19;border-radius:18px;
  background:#1d1c1a;padding:5px;box-shadow:0 10px 28px rgba(38,35,32,.28),inset 0 0 0 1.5px #3a3835;
}
.phone::before{content:'';position:absolute;top:8px;left:50%;transform:translateX(-50%);width:30%;height:5px;border-radius:99px;background:#000;z-index:2}
.phone img{width:100%;height:100%;object-fit:cover;object-position:50% 0;border-radius:13px;background:#23472F}
.phone-lg{width:170px;border-radius:28px;padding:7px}
.phone-lg::before{top:12px;height:7px}
.phone-lg img{border-radius:22px}

/* slide "Seu pedido" na galeria */
.slide-pedido{background:radial-gradient(120% 90% at 30% 30%,#FFFFFF 0%,#F1EEE7 70%)}
.pedido-cena{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:4%;padding:8% 8% 14%}
.pedido-produto{width:58%;height:auto!important;object-fit:contain;mix-blend-mode:multiply}
.pedido-cena .phone{width:24%;transform:rotate(4deg)}
.pedido-legenda{position:absolute;left:50%;bottom:16px;transform:translateX(-50%);white-space:nowrap;background:rgba(255,255,255,.94);color:var(--ink);font-size:var(--fs-micro);font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:7px 13px;border-radius:99px;box-shadow:var(--sh-1)}

/* faixa de prova escrita (substitui a faixa que repetia o anúncio) */
.quotes{background:var(--brand-10);border-block:1px solid var(--brand-20);padding-block:var(--s7)}
.quotes-head{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:var(--s5);text-align:center}
.quotes-head .hr-star svg{width:18px;height:18px;fill:var(--gold)}
.quotes-head strong{font-family:var(--serif);font-weight:600;font-size:clamp(18px,4.6vw,22px);color:var(--brand-dk);letter-spacing:-.01em}
.quotes-list{list-style:none;display:grid;gap:10px;max-width:980px;margin-inline:auto}
.quotes-list li{background:var(--surface);border:1px solid var(--brand-20);border-radius:var(--r);padding:14px 16px}
.quotes-list p{font-family:var(--serif);font-style:italic;font-size:15px;line-height:1.5;color:var(--ink)}
.quotes-foot{text-align:center;font-size:var(--fs-micro);color:var(--ink-2);margin-top:var(--s4)}
.quotes-foot a{color:var(--brand-ink);font-weight:700;text-decoration:underline;text-underline-offset:3px}
@media(min-width:720px){.quotes-list{grid-template-columns:repeat(3,1fr)}}

/* oferta */
.offer-each{font-size:var(--fs-xs);color:var(--ink-2);text-align:right;margin:-8px 2px var(--s4)}
.final .cta-note a{color:var(--brand-ink);font-weight:700;text-decoration:underline;text-underline-offset:3px}

/* vitrine do guia: celular + 2 páginas reais em leque */
.ebook-visual{position:relative;height:330px;display:grid;place-items:center}
.ebook-visual .pg{position:absolute;width:150px;height:auto;border-radius:6px;box-shadow:0 10px 26px rgba(0,0,0,.35);background:#fff}
.ebook-visual .pg-a{transform:translateX(-78px) rotate(-9deg)}
.ebook-visual .pg-b{transform:translateX(78px) rotate(8deg)}
.ebook-visual .phone-lg{position:relative;z-index:2}
.pdf-badge{position:absolute;z-index:3;bottom:2px;left:50%;transform:translateX(-50%);background:#E9D9B8;color:#3D2F0E;font-size:var(--fs-micro);font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:6px 12px;border-radius:99px;white-space:nowrap}
.ebook-pills{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin-bottom:var(--s5)}
.ebook-pills li{font-size:var(--fs-xs);font-weight:700;color:#23472F;background:#DCE9DD;padding:5px 11px;border-radius:99px}

/* desktop: a galeria acompanha a coluna de compra; pontos viram miniaturas */
@media(min-width:960px){
  .buy{position:static}
  .gallery{position:sticky;top:76px}
  .gallery-dots{justify-content:flex-start;gap:8px;margin-top:var(--s4)}
  .gallery-dots button{width:64px;height:64px;border-radius:10px;background:var(--thumb) center/cover no-repeat,#F1EEE7;border:2px solid transparent;opacity:.72;transition:opacity var(--t-fast),border-color var(--t-fast)}
  .gallery-dots button::before{display:none}
  .gallery-dots button:hover{opacity:1}
  .gallery-dots button[aria-current="true"]{border-color:var(--brand);opacity:1}
  .offer-buy{position:sticky;top:96px;align-self:start}
  .ebook-visual{height:360px}
}
/* slide "Seu pedido": a regra geral de imagem da galeria não vale aqui */
.gallery-track .slide-pedido .pedido-produto{width:54%;height:auto;max-height:78%;object-fit:contain}
.gallery-track .slide-pedido .phone{flex:0 0 25%;width:25%}
.gallery-track .slide-pedido .phone img{width:100%;height:100%}
/* a tela do celular mostra a página inteira, como um leitor de PDF */
.phone img{object-fit:contain;object-position:50% 50%}
.pdf-badge{bottom:-4px}
/* o fundo da foto do produto é #FCFCFC: slide no mesmo tom, sem blend (o blend sumia com o produto branco) */
.slide-pedido{background:#FCFCFC}
.gallery-track .slide-pedido .pedido-produto{mix-blend-mode:normal}
.gallery-track .slide-pedido .pedido-produto{background:#fff;border-radius:18px;box-shadow:0 8px 24px rgba(38,35,32,.10)}
@media(min-width:960px){
  .gallery-track li{max-height:none}                 /* a trava de altura é só do celular */
  .pdp{grid-template-columns:minmax(0,1fr) minmax(420px,480px)}
  .buy h1{font-size:clamp(34px,3.1vw,40px)}
  .buy-sub{font-size:16px}
  .kits{gap:10px}
  .kit{min-height:60px;padding:10px 14px}
  .bonus-strip{margin:var(--s3) 0 var(--s4)}
}

/* ===================================== ajustes de responsividade (telas estreitas) */
.offer-panel>*,.offer-buy,.offer-stack{min-width:0}
.stack li>span:nth-child(2){min-width:0;overflow-wrap:anywhere}
@media(max-width:360px){
  .offer-panel{padding:var(--s4) 10px}
  .kit{gap:8px;padding:10px}
  .kit-thumb{flex-basis:38px;width:38px;height:38px}
  .stack li{grid-template-columns:44px 1fr auto;gap:10px}
  .stack-ico{width:44px;height:44px}
}
fieldset.kits{min-width:0;min-inline-size:0}
@media(max-width:330px){.kit-thumb{display:none}.kit-flag{font-size:9px}}
.cta-note{flex-wrap:wrap}.cta-note a{white-space:nowrap}
