/* ===== tokens ===== */
:root{
  --ink:#14183a; --text:#2b2e47; --muted:#646882;
  --line:#e8e6f0; --bg:#ffffff; --soft:#f6f4fc; --soft-2:#faf9f6;
  --brand:#5a43d6; --brand-2:#3f2bb5; --brand-soft:#efebff;
  --gold:#f5a524; --gold-2:#ffc24d; --gold-edge:#d68708;
  --green:#178a50; --green-soft:#e5f5ec; --red:#d63c3c;
  --r:16px; --r-lg:20px;
  --sec:48px; --gut:16px;
}
@media(min-width:960px){:root{--sec:80px}}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:Inter,system-ui,sans-serif;font-size:16px;line-height:1.55;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;overflow-x:hidden}
@media(min-width:960px){body{font-size:17px}}
img,svg,video{display:block;max-width:100%}
button{font:inherit;color:inherit}
h1,h2,h3{font-family:Fraunces,Georgia,serif;font-weight:600;line-height:1.15;letter-spacing:-.01em;color:var(--ink)}
b,strong{color:var(--ink)}
.wrap{max-width:1140px;margin:0 auto;padding:0 var(--gut)}
section{padding:var(--sec) 0}
.alt{background:var(--soft)}
.eyebrow{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--brand)}
.sec-head{text-align:center;max-width:640px;margin:0 auto 28px}
.sec-head h2{font-size:clamp(26px,6.4vw,40px);margin:8px 0 10px}
.sec-head p{color:var(--muted);font-size:15.5px}
h1,h2,.sec-head p,.quote,.bridge{text-wrap:balance}
p{text-wrap:pretty}
@media(min-width:960px){.sec-head{margin-bottom:40px}.sec-head p{font-size:17px}}
.tag-exemplo{display:inline-block;font:700 10.5px/1.4 Inter;letter-spacing:.06em;text-transform:uppercase;background:#fff3cd;color:#8a6100;border:1px dashed #d9a400;border-radius:6px;padding:1px 6px;vertical-align:middle;white-space:nowrap}

/* carrossel genérico (mobile) */
.rail{display:grid;grid-auto-flow:column;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 calc(var(--gut)*-1);padding:4px var(--gut) 16px;scrollbar-width:none;overscroll-behavior-x:contain}
.rail::-webkit-scrollbar{display:none}
.rail>*{scroll-snap-align:start}
.dots{display:flex;justify-content:center;gap:6px;margin-top:2px}
.dots i{width:6px;height:6px;border-radius:50%;background:#d6d2e6;transition:all .2s}
.dots i.on{width:18px;border-radius:3px;background:var(--brand)}

/* ===== barra de anúncio + header ===== */
.announce{background:var(--ink);color:#fff;font-size:12.5px;font-weight:700;letter-spacing:.02em;padding:8px 0;overflow:hidden;white-space:nowrap}
.announce .track{display:inline-flex;gap:40px;animation:marq 28s linear infinite;padding-left:16px}
@keyframes marq{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.announce .track{animation:none}}
header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30}
header .wrap{display:flex;align-items:center;justify-content:space-between;height:56px}
.logo{display:flex;align-items:center;gap:8px;color:var(--ink);font:600 20px/1 Fraunces,serif;text-decoration:none}
.logo img{height:34px;width:auto}
@media(min-width:960px){.logo img{height:40px}}
footer .logo img{height:44px}
.head-trust{font-size:12.5px;font-weight:600;color:var(--muted);display:flex;align-items:center;gap:5px}

/* ===== HERO ===== */
.hero{padding:16px 0 var(--sec)}
.hero-grid{display:grid;gap:20px}
.hero-grid>*{min-width:0}
@media(min-width:960px){.hero{padding-top:36px}.hero-grid{grid-template-columns:1.05fr 1fr;gap:56px;align-items:start}.gallery{position:sticky;top:76px}}
.stage{position:relative;aspect-ratio:1/1;border-radius:var(--r-lg);overflow:hidden;background:radial-gradient(circle at 50% 38%,#ffffff 0%,#efeaff 55%,#e2dbff 100%)}
.slide{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s;pointer-events:none}
.slide.on{opacity:1;pointer-events:auto}
.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.stage:has(.slide.on .hero-img) .badge-float{display:none}
.badge-float{position:absolute;left:12px;top:12px;background:#fff;color:var(--ink);font-size:12.5px;font-weight:700;padding:6px 11px;border-radius:999px;box-shadow:0 4px 14px -6px rgba(20,24,58,.3)}
.slide-card{width:84%;background:#fff;border-radius:18px;padding:22px;box-shadow:0 18px 40px -24px rgba(20,24,58,.45)}
.slide-card h3{font-size:22px;margin-bottom:10px}
.slide-card li{list-style:none;padding:9px 0;border-bottom:1px solid var(--line);display:flex;gap:10px;font-size:15px}
.slide-card li:last-child{border:0}
.thumbs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:10px}
.thumbs button{height:44px;border-radius:10px;border:1.5px solid var(--line);background:#fff;cursor:pointer;font-size:11.5px;font-weight:700;color:var(--muted);padding:2px;position:relative}
.thumbs button.on{border-color:var(--brand);color:var(--brand);background:var(--brand-soft)}
.thumbs .t-img{padding:0;overflow:hidden}
.thumbs .t-img img{width:100%;height:100%;object-fit:cover}
.gallery .thumbs{grid-template-columns:repeat(3,72px);justify-content:center}
.gallery .thumbs button{height:72px}
.life img,.p-img img,.s-img img,.r-photo img{width:100%;height:100%;object-fit:cover}
.life img{object-position:70% 40%}
.thumbs .vt:after{content:"▶";position:absolute;top:2px;right:5px;font-size:8px;color:var(--brand)}

.rating{display:flex;align-items:center;gap:6px;font-size:13.5px;color:var(--muted);flex-wrap:wrap}
.rating b{color:var(--ink)}
.stars{color:var(--gold);letter-spacing:1px;font-size:15px}
.hero h1{font-size:clamp(28px,7.6vw,46px);margin:8px 0 8px}
.hero .sub{color:var(--muted);font-size:16px}
@media(min-width:960px){.hero .sub{font-size:18px}}

/* stories */
.stories-label{font-size:12.5px;font-weight:600;color:var(--muted);margin-top:16px}
.stories{display:flex;gap:12px;margin:8px calc(var(--gut)*-1) 0;padding:2px var(--gut);overflow-x:auto;scrollbar-width:none}
.stories::-webkit-scrollbar{display:none}
.story{flex:none;width:62px;text-align:center;cursor:pointer;background:none;border:0;font:600 11.5px Inter;color:var(--text)}
.story .ring{width:60px;height:60px;margin:0 auto 4px;border-radius:50%;padding:2.5px;background:conic-gradient(var(--gold),#ff7aa8,var(--brand),var(--gold))}
.story .ring>div{width:100%;height:100%;border-radius:50%;border:2.5px solid #fff;background:var(--brand-soft);display:flex;align-items:center;justify-content:center;font-size:19px;overflow:hidden;position:relative}
.story .ring img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

/* seletor de pacotes */
.bundle-title{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);margin:22px 0 14px}
.bundle-title:before,.bundle-title:after{content:"";flex:1;height:1px;background:var(--line)}
.bundles{display:grid;gap:12px}
.bundle{position:relative;display:grid;grid-template-columns:22px minmax(0,1fr) auto;column-gap:12px;align-items:center;background:#fff;border:1.5px solid #dcd8ea;border-radius:var(--r);padding:16px 14px 14px;cursor:pointer;transition:border-color .15s,box-shadow .15s,background .15s;-webkit-tap-highlight-color:transparent}
.bundle.on{border:2px solid var(--brand);background:#faf8ff;box-shadow:0 8px 22px -14px rgba(90,67,214,.55);padding:15.5px 13.5px 13.5px}
.radio{width:22px;height:22px;border-radius:50%;border:2px solid #bdb8d4;display:flex;align-items:center;justify-content:center}
.bundle.on .radio{border-color:var(--brand);background:var(--brand)}
.bundle.on .radio:after{content:"";width:8px;height:8px;border-radius:50%;background:#fff}
.b-top{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.b-name{font-weight:800;font-size:16.5px;color:var(--ink)}
.b-pct{font-size:11.5px;font-weight:800;color:#fff;background:var(--green);border-radius:6px;padding:2px 6px}
.b-meta{font-size:13px;color:var(--muted);margin-top:1px}
.b-unit{font-size:12.5px;font-weight:700;color:var(--brand-2)}
.b-price{text-align:right;white-space:nowrap}
.b-price s{display:block;font-size:12.5px;color:#a3a5b8}
.b-price strong{display:block;font-size:20px;font-weight:800;letter-spacing:-.02em;line-height:1.15}
.b-save{display:block;font-size:12px;font-weight:700;color:var(--green)}
.ribbon{position:absolute;top:-10px;left:48px;font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:3px 9px;border-radius:999px;white-space:nowrap}
.ribbon.pop{background:var(--brand);color:#fff}
.ribbon.best{background:var(--ink);color:#fff}

/* CTA */
.cta{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;min-height:58px;border:0;border-bottom:3px solid var(--gold-edge);cursor:pointer;background:linear-gradient(180deg,var(--gold-2),var(--gold));color:var(--ink);border-radius:14px;padding:12px 16px;font:800 17px/1.2 Inter;letter-spacing:.01em;text-decoration:none;text-align:center;transition:transform .1s,filter .15s;-webkit-tap-highlight-color:transparent}
.cta small{font-weight:600;font-size:12.5px;opacity:.85;letter-spacing:0;margin-top:2px}
.cta:hover{filter:brightness(1.04)}
.cta:active{transform:translateY(2px);border-bottom-width:1px}
.pulse{animation:pulse 2.6s ease-in-out infinite}
@keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(245,165,36,.45)}50%{box-shadow:0 0 0 9px rgba(245,165,36,0)}}
@media(prefers-reduced-motion:reduce){.pulse{animation:none}}
.cta-wrap{margin-top:16px}
.micro{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:12px;text-align:center;font-size:12px;font-weight:600;color:var(--muted);line-height:1.3}
.micro span{display:flex;flex-direction:column;align-items:center;gap:3px}
.micro i{font-style:normal;font-size:18px}
.stock{margin-top:14px;display:flex;align-items:center;gap:10px;font-size:13.5px;color:var(--text);background:var(--green-soft);border-radius:12px;padding:10px 12px}
.dot{flex:none;width:9px;height:9px;border-radius:50%;background:#22b866;animation:ping 1.8s infinite}
@keyframes ping{0%{box-shadow:0 0 0 0 rgba(34,184,102,.55)}70%,100%{box-shadow:0 0 0 8px rgba(34,184,102,0)}}
.benefits{margin-top:20px;display:grid;gap:10px;border-top:1px solid var(--line);padding-top:18px}
.benefits li{list-style:none;display:flex;gap:10px;align-items:flex-start;font-size:15px}
.chk{flex:none;width:22px;height:22px;border-radius:50%;background:var(--brand-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;margin-top:1px}

/* faixa de confiança */
.trust{background:var(--soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0}
.trust .wrap{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px}
@media(min-width:760px){.trust .wrap{grid-template-columns:repeat(4,1fr)}}
.trust-item{display:flex;gap:10px;align-items:center;font-size:12.5px;color:var(--muted);line-height:1.3}
.trust-item b{display:block;font-size:14px}
.t-ico{flex:none;width:38px;height:38px;border-radius:11px;background:#fff;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:18px}

/* placeholders de mídia */
.ph{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;height:100%;text-align:center;color:#8a86ad;font-size:12px;font-weight:600;line-height:1.3;padding:10px;background:repeating-linear-gradient(135deg,#f3f1fa 0 12px,#eeebf7 12px 24px);border:1.5px dashed #cfc8ef;border-radius:inherit;overflow:hidden}
.ph .i{font-size:24px}
.ph.dk{background:repeating-linear-gradient(135deg,#1d2257 0 12px,#1a1f50 12px 24px);border-color:#3b4392;color:#a3a8e2}
.ph img,.ph video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

/* vídeos */
.vids{grid-auto-columns:62%}
@media(min-width:760px){.vids{grid-auto-columns:31%}}
@media(min-width:1060px){.vids{grid-auto-columns:calc(25% - 9px);margin:0;padding:4px 0 16px}}
.vcard{position:relative;aspect-ratio:9/16;border-radius:18px;overflow:hidden;cursor:pointer;border:0;padding:0;text-align:left;background:#1b2158;box-shadow:0 14px 30px -20px rgba(20,24,58,.6)}
.vcard .ph{position:absolute;inset:0;border-radius:18px;justify-content:flex-start;padding-top:44px}
.vcard .shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(8,10,30,.9) 100%);pointer-events:none}
.vcard .play{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);width:56px;height:56px;border-radius:50%;background:rgba(255,255,255,.95);display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px rgba(0,0,0,.35)}
.vcard .play:after{content:"";margin-left:4px;border-left:16px solid var(--ink);border-top:10px solid transparent;border-bottom:10px solid transparent}
.vcard .cap{position:absolute;left:12px;right:12px;bottom:12px;color:#fff}
.vcard .cap q{display:block;font:500 16px/1.3 Fraunces,serif;margin-bottom:6px}
.vcard .cap span{font-size:12px;color:#d8dbff;font-weight:600}
.vcard .dur{position:absolute;top:10px;right:10px;background:rgba(0,0,0,.55);color:#fff;font-size:11.5px;font-weight:700;border-radius:6px;padding:2px 7px}
.vnav{display:none;justify-content:flex-end;gap:8px;margin:-12px 0 14px}
@media(min-width:1060px){.vnav{display:flex}}
.vnav button{width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:#fff;cursor:pointer;font-size:18px}

/* problema */
.life{border-radius:var(--r-lg);overflow:hidden;margin-bottom:20px;aspect-ratio:16/10}
@media(min-width:760px){.life{aspect-ratio:21/8;margin-bottom:28px}}
.pains{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
@media(min-width:960px){.pains{grid-template-columns:repeat(4,1fr);gap:16px}}
.pain{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:16px 14px}
.pain .em{font-size:26px;margin-bottom:8px}
.pain h3{font:700 15.5px/1.3 Inter;margin-bottom:4px}
.pain p{color:var(--muted);font-size:13.5px;line-height:1.45}
.bridge{max-width:680px;margin:28px auto 0;text-align:center;font:500 20px/1.4 Fraunces,serif;color:var(--ink)}
.bridge b{color:var(--brand)}
@media(min-width:960px){.bridge{font-size:24px}}

/* diferencial */
.quote{max-width:780px;margin:0 auto 28px;text-align:center;font:500 clamp(21px,5.4vw,30px)/1.35 Fraunces,serif;color:var(--ink)}
.quote em{font-style:normal;color:var(--brand);background:linear-gradient(transparent 62%,#ffe3a8 62%)}
.pillars{grid-auto-columns:82%}
@media(min-width:860px){.pillars{grid-auto-flow:row;grid-template-columns:repeat(3,1fr);gap:20px;overflow:visible;margin:0;padding:0}}
.pillar{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:14px 14px 20px}
.pillar .p-img{aspect-ratio:16/9;border-radius:12px;margin-bottom:14px;overflow:hidden}
@media(min-width:860px){.pillar .p-img{aspect-ratio:4/3}}
.pillar .num{font:800 12px Inter;color:var(--brand);letter-spacing:.12em;padding:0 4px}
.pillar h3{font-size:22px;margin:6px 0;padding:0 4px}
.pillar p{color:var(--muted);font-size:15px;padding:0 4px}

/* ritual */
.steps{display:grid;gap:12px}
@media(min-width:860px){.steps{grid-template-columns:repeat(3,1fr);gap:20px}}
.step{display:grid;grid-template-columns:104px minmax(0,1fr);gap:14px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:12px}
.step .s-img{aspect-ratio:1/1;border-radius:12px;overflow:hidden}
.step .s-img .ph{font-size:10.5px;padding:6px}
.step .s-img .ph .i{font-size:20px}
.step .time{display:inline-block;font-size:11.5px;font-weight:700;background:var(--brand-soft);color:var(--brand-2);border-radius:999px;padding:3px 9px;margin-bottom:6px}
.step h3{font-size:18px;margin-bottom:3px}
.step p{color:var(--muted);font-size:14px;line-height:1.45}
@media(min-width:860px){.step{grid-template-columns:1fr;padding:14px 14px 22px;align-items:start}.step .s-img{aspect-ratio:4/3}.step h3{font-size:22px}.step p{font-size:15px}}

/* comparativo */
.compare{max-width:720px;margin:0 auto;background:#fff;border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--line);box-shadow:0 20px 50px -34px rgba(20,24,58,.4)}
.compare table{width:100%;border-collapse:collapse;font-size:14px;table-layout:fixed}
.compare col.c1{width:52%}
.compare th,.compare td{padding:13px 8px;text-align:center;border-bottom:1px solid var(--line);line-height:1.3}
.compare tr:last-child td{border-bottom:0}
.compare th:first-child,.compare td:first-child{text-align:left;padding-left:14px}
.compare thead th{font-size:12.5px;font-weight:800;color:var(--muted)}
.compare thead th.us{background:var(--brand);color:#fff;font-size:13px}
.compare td.us{background:#f8f6ff}
.y{display:inline-flex;width:24px;height:24px;border-radius:50%;background:var(--green);color:#fff;align-items:center;justify-content:center;font-weight:800;font-size:13px}
.x{display:inline-flex;width:24px;height:24px;border-radius:50%;background:#efeef3;color:#a5a7b8;align-items:center;justify-content:center;font-weight:800;font-size:12px}
@media(min-width:760px){.compare table{font-size:16px}.compare th,.compare td{padding:15px 12px}.compare th:first-child,.compare td:first-child{padding-left:22px}}

/* avaliações */
.reviews-top{display:flex;justify-content:center;align-items:center;gap:12px;margin-bottom:20px}
.big-rate{font:600 42px/1 Fraunces,serif;color:var(--ink)}
.reviews-top small{display:block;font-size:13px;color:var(--muted)}
.ugc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-bottom:24px}
@media(min-width:760px){.ugc-grid{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:32px}}
.ugc{aspect-ratio:1/1;border-radius:12px;cursor:zoom-in;border:0;padding:0;background:none;overflow:hidden}
.ugc .ph{font-size:10.5px;padding:6px}
.ugc .ph .i{font-size:18px}
.ugc:nth-child(1){grid-column:span 2;grid-row:span 2;aspect-ratio:auto}
.ugc:nth-child(n+7){display:none}
@media(min-width:760px){.ugc:nth-child(n+6){display:none}}
.reviews{grid-auto-columns:84%}
@media(min-width:860px){.reviews{grid-auto-flow:row;grid-template-columns:repeat(3,1fr);overflow:visible;margin:0;padding:0;gap:20px}}
.review{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:12px 12px 18px;display:flex;flex-direction:column}
.r-photo{aspect-ratio:4/3;border-radius:10px;margin-bottom:12px;overflow:hidden}
.review .stars,.review h3,.review p,.review .who{padding:0 4px}
.review h3{font:700 16px/1.3 Inter;margin:6px 0 5px}
.review p{color:var(--text);font-size:14.5px;flex:1}
.who{display:flex;align-items:center;gap:10px;margin-top:14px;font-size:13.5px}
.avatar{width:36px;height:36px;border-radius:50%;background:var(--brand-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;font-weight:800}
.verified{color:var(--green);font-size:12px;font-weight:700}

/* oferta */
.offer{background:linear-gradient(180deg,var(--soft) 0%,#fff 100%)}
.offer-box{max-width:560px}
.offer .sec-head{margin-bottom:22px}

/* garantia */
.guarantee{display:grid;gap:18px;align-items:center;text-align:center;background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px 20px;max-width:880px;margin:0 auto;box-shadow:0 20px 50px -36px rgba(20,24,58,.4)}
@media(min-width:760px){.guarantee{grid-template-columns:170px 1fr;text-align:left;padding:40px}}
.seal{width:124px;height:124px;margin:0 auto;border-radius:50%;background:conic-gradient(var(--gold),var(--gold-2),var(--gold));display:flex;align-items:center;justify-content:center;box-shadow:0 12px 26px -12px rgba(245,165,36,.9)}
@media(min-width:760px){.seal{width:160px;height:160px}}
.seal div{width:80%;height:80%;border-radius:50%;background:var(--ink);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;border:2px dashed rgba(255,255,255,.35);line-height:1.1}
.seal b{font:600 38px/1 Fraunces,serif;color:#fff}
.seal span{font-size:9.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-top:3px}
.guarantee h2{font-size:clamp(24px,6vw,34px);margin:6px 0 8px}
.guarantee p{color:var(--muted);font-size:15px}

/* como funciona */
.cod{display:grid;gap:10px;max-width:880px;margin:0 auto}
@media(min-width:860px){.cod{grid-template-columns:repeat(3,1fr);gap:20px}}
.cod-step{display:flex;gap:14px;align-items:center;background:var(--soft);border-radius:var(--r);padding:14px}
.cod-step .ic{flex:none;width:52px;height:52px;border-radius:50%;background:#fff;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:23px}
.cod-step h3{font:700 15.5px/1.3 Inter;margin-bottom:2px}
.cod-step p{color:var(--muted);font-size:13.5px;line-height:1.45}
@media(min-width:860px){.cod-step{flex-direction:column;text-align:center;padding:24px 18px}.cod-step .ic{width:64px;height:64px;font-size:28px}}
.cod-cta{max-width:420px;margin:24px auto 0}

/* FAQ */
.faq{max-width:720px;margin:0 auto;display:grid;gap:8px}
.faq details{background:#fff;border:1px solid var(--line);border-radius:14px;padding:0 16px}
.faq summary{list-style:none;cursor:pointer;padding:16px 0;font-weight:700;font-size:15.5px;color:var(--ink);display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:52px}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";flex:none;width:26px;height:26px;border-radius:50%;background:var(--brand-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;font-size:18px;transition:transform .2s}
.faq details[open] summary:after{transform:rotate(45deg)}
.faq details p{padding:0 0 16px;color:var(--muted);font-size:15px}

footer{background:var(--soft);border-top:1px solid var(--line);color:var(--muted);font-size:13px;padding:32px 0 calc(110px + env(safe-area-inset-bottom));text-align:center}
footer .logo{justify-content:center}
footer .disclaimer{max-width:720px;margin:14px auto 0;line-height:1.6;font-size:12px}

/* barra fixa */
.sticky{position:fixed;left:0;right:0;bottom:0;z-index:40;background:rgba(255,255,255,.97);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid var(--line);box-shadow:0 -10px 30px -18px rgba(20,24,58,.35);padding:10px var(--gut) calc(10px + env(safe-area-inset-bottom));display:flex;gap:12px;align-items:center;transform:translateY(110%);transition:transform .3s}
.sticky.show{transform:none}
.sticky .info{flex:none;font-size:12px;line-height:1.25;color:var(--muted)}
.sticky .info b{display:block;font-size:17px}
.sticky .cta{min-height:50px;padding:8px 12px;font-size:15px;flex:1}
@media(min-width:960px){.sticky{max-width:520px;left:50%;transform:translate(-50%,140%);bottom:16px;border-radius:16px;border:1px solid var(--line)}.sticky.show{transform:translate(-50%,0)}}

/* player de vídeo */
.vmodal{position:fixed;inset:0;z-index:80;background:rgba(5,6,18,.94);display:none;align-items:center;justify-content:center;padding:16px}
.vmodal.open{display:flex}
.vbox{position:relative;width:100%;max-width:420px;aspect-ratio:9/16;max-height:88vh;max-height:88dvh;border-radius:18px;overflow:hidden;background:#000}
.vbox video,.vbox img{width:100%;height:100%;object-fit:contain;background:#000}
.vbox .ph{position:absolute;inset:0;border-radius:18px;font-size:14px;padding:30px}
.vclose{position:absolute;top:12px;right:12px;z-index:2;width:42px;height:42px;border-radius:50%;border:0;background:rgba(255,255,255,.18);color:#fff;font-size:24px;cursor:pointer}
.vcta{position:absolute;left:14px;right:14px;bottom:14px;z-index:2}
.vcta .cta{min-height:50px;font-size:15px}

/* ===== site estático: acréscimos ===== */
/* Espaços de foto/vídeo vazios e etiquetas de revisão só aparecem com ?editar no endereço */
body:not(.edit) [data-ph],body:not(.edit) .tag-exemplo,body:not(.edit) [data-ph-thumb]{display:none!important}
body:not(.edit) .step:has(>.s-img[data-ph]){grid-template-columns:1fr}
body.edit::before{content:"MODO DE EDIÇÃO · espaços tracejados e etiquetas amarelas não aparecem para o cliente";position:fixed;left:0;right:0;top:0;z-index:100;background:#fff3cd;color:#8a6100;font:700 12px Inter,sans-serif;text-align:center;padding:6px 10px;border-bottom:1px dashed #d9a400}
body.edit{padding-top:28px}
[hidden]{display:none!important}
.visually-hidden{position:absolute!important;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
.footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 16px;margin-top:14px;list-style:none}
.footer-links a{color:inherit}
.copyright{margin-top:12px;font-size:12px}

/* botão de WhatsApp */
.wa{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:45;width:56px;height:56px;border-radius:50%;background:#25d366;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 24px -8px rgba(0,0,0,.45);transition:bottom .3s}
.wa svg{width:30px;height:30px}
body.sticky-on .wa{bottom:calc(86px + env(safe-area-inset-bottom))}
@media(min-width:960px){body.sticky-on .wa{bottom:24px}}

/* páginas de políticas */
.page{max-width:760px;margin:0 auto;padding:40px var(--gut) 60px}
.page h1{font-size:clamp(28px,6vw,40px);margin-bottom:8px}
.page .updated{color:var(--muted);font-size:14px;margin-bottom:28px}
.page h2{font-size:22px;margin:28px 0 8px}
.page p,.page li{margin-bottom:10px}
.page ul{padding-left:1.3em}
.back{display:inline-block;margin-top:28px;color:var(--brand);font-weight:700}

/* um único vídeo de depoimento: centralizado */
.vids.vids--single{display:flex;justify-content:center;overflow:visible;margin:0;padding:4px 0 8px}
.vids--single .vcard{width:min(300px,78vw);flex:none}

/* nota da economia (transparência do preço riscado) */
.save-note{margin:8px 2px 0;font-size:11.5px;color:var(--muted);line-height:1.35}

/* 2 ou 3 vídeos: carrossel no celular, centralizados no computador */
@media(min-width:760px){.vids.vids--few{display:flex;justify-content:center;gap:16px;overflow:visible;margin:0;padding:4px 0 8px}.vids--few .vcard{width:260px;flex:none}}

/* chamada final */
.final-cta{margin-top:32px;text-align:center}
.final-title{font:600 clamp(22px,5.6vw,30px)/1.2 Fraunces,serif;color:var(--ink);margin-bottom:14px;text-wrap:balance}

/* ===== composição (seção escura, no clima das artes da marca) ===== */
.formula{background:radial-gradient(900px 500px at 85% 0%,rgba(122,98,255,.28),transparent 60%),linear-gradient(180deg,#14183a 0%,#1a1640 100%);color:#d9dbf5}
.formula .eyebrow{color:#a99bff}
.formula .sec-head h2{color:#fff}
.formula .sec-head p{color:#b9bce0}
.formula .sec-head b{color:#c4b8ff}
.f-groups{display:grid;gap:14px}
@media(min-width:900px){.f-groups{grid-template-columns:1fr 1.35fr 1.15fr;gap:20px;align-items:start}}
.f-group{background:rgba(255,255,255,.04);border:1px solid rgba(169,155,255,.22);border-radius:var(--r-lg);padding:16px}
.f-tag{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#14183a;background:#a99bff;border-radius:999px;padding:4px 10px;margin-bottom:6px}
.f-item{padding:12px 0;border-bottom:1px solid rgba(169,155,255,.15)}
.f-item:last-child{border-bottom:0;padding-bottom:2px}
.f-top{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.f-top b{color:#fff;font-size:16px}
.f-top span{flex:none;font-size:13px;font-weight:800;color:#c4b8ff;white-space:nowrap}
.f-item p{font-size:13.5px;line-height:1.45;color:#b9bce0;margin-top:3px}
.f-note{max-width:720px;margin:22px auto 0;text-align:center;font-size:12px;line-height:1.5;color:#9a9dc4}
