:root{--g:#4E8B46;--g2:#3c6f35;--gl:#eef5ec;--gb:#d7e8d3;--t:#2e2e2e;--t2:#5d5d5d;--r:#d64545;--y:#fff6d6;--bg:#fff;--rad:14px}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{font-family:Nunito,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--t);background:var(--bg);font-size:16px;line-height:1.45;min-height:100vh}
img{max-width:100%;height:auto;display:block}
button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}
.top{display:flex;align-items:center;justify-content:space-between;padding:10px 16px 6px;max-width:560px;margin:0 auto}
.top .logo{height:38px;width:auto}
.back,.sp{width:36px;height:36px}
.back{font-size:30px;line-height:30px;color:var(--g);border-radius:50%}
@media (hover:hover){.back:hover{background:var(--gl)}}
.bar{max-width:528px;margin:4px auto 0;height:6px;background:var(--gl);border-radius:6px;overflow:hidden;width:calc(100% - 32px)}
.bar div{height:100%;width:0;background:var(--g);border-radius:6px;transition:width .35s}
main{max-width:560px;margin:0 auto;padding:14px 16px 40px}
.step{animation:in .28s ease}
@keyframes in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
h1{font-size:26px;line-height:1.18;font-weight:900;color:var(--g);text-align:center;margin:6px 0 10px}
h2{font-size:22px;line-height:1.22;font-weight:900;text-align:center;margin:8px 0 6px}
h2 em,h1 em{font-style:normal;color:var(--g)}
h3{font-size:18px;font-weight:800;margin:18px 0 8px}
.sub{color:var(--t2);text-align:center;margin-bottom:16px}
.hint{color:var(--t2);text-align:center;font-size:14px;margin:-2px 0 14px}
.pill{display:inline-block;background:var(--gl);color:var(--g2);font-weight:800;font-size:13px;padding:5px 12px;border-radius:30px}
.center{text-align:center}
.trust{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;color:var(--t2);font-size:13px;margin:14px 0 4px}
.cover{border-radius:var(--rad);overflow:hidden;margin:4px 0 14px}
/* opções */
.opts{display:grid;gap:10px}
.opt{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:#fff;border:1.5px solid #dcdcdc;border-radius:var(--rad);padding:15px 16px;font-weight:700;font-size:16px;box-shadow:0 2px 8px rgba(0,0,0,.05);transition:border-color .15s,background .15s,transform .1s}
@media (hover:hover){.opt:hover{border-color:var(--g)}}
.opt:active{transform:scale(.985)}
.opt.on{border-color:var(--g);background:var(--gl)}
.opt .em{font-size:24px;width:30px;text-align:center;flex:none}
.opt .tx{flex:1}
.opt .tx small{display:block;font-weight:600;color:var(--t2);font-size:14px}
.opt .ck{width:22px;height:22px;border:2px solid #c9c9c9;border-radius:6px;flex:none;display:grid;place-items:center;font-size:14px;color:#fff}
.opt.on .ck{background:var(--g);border-color:var(--g)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.card{background:#fff;border:1.5px solid #dcdcdc;border-radius:var(--rad);overflow:hidden;box-shadow:0 2px 10px rgba(0,0,0,.06);text-align:center;font-weight:800;transition:border-color .15s,transform .1s}
.card.on{border-color:var(--g)}
@media (hover:hover){.card:hover{border-color:var(--g)}}
.card:active{transform:scale(.98)}
.card img{width:100%;aspect-ratio:4/5;object-fit:cover;background:var(--gl)}
.card span{display:block;padding:10px 6px;font-size:15px;line-height:1.2}
.card span small{display:block;font-weight:600;color:var(--t2);font-size:13px;margin-top:2px}
.card.g span{background:var(--g);color:#fff;font-size:17px}
/* botões */
.btn{display:block;width:100%;background:var(--g);color:#fff;font-weight:900;font-size:18px;padding:17px 18px;border-radius:var(--rad);text-align:center;box-shadow:0 6px 16px rgba(78,139,70,.35);margin-top:16px;text-decoration:none;letter-spacing:.2px}
@media (hover:hover){.btn:hover{background:var(--g2)}}
.btn[disabled]{opacity:.45;box-shadow:none;cursor:default}
.btn.pulse{animation:pulse 1.8s infinite}
@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.025)}}
/* número */
.num{display:flex;align-items:center;justify-content:center;gap:10px;margin:22px 0 6px}
.num input{width:150px;font:inherit;font-size:42px;font-weight:900;text-align:center;border:2px solid var(--gb);border-radius:var(--rad);padding:8px;color:var(--g);outline:none}
.num input:focus{border-color:var(--g)}
.num input::-webkit-outer-spin-button,.num input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.num input{-moz-appearance:textfield}
.num .u{font-size:22px;font-weight:800;color:var(--t2)}
.err{color:var(--r);text-align:center;font-size:14px;min-height:20px;font-weight:700}
/* blocos */
.box{background:var(--gl);border-radius:var(--rad);padding:16px;margin:14px 0}
.box.y{background:var(--y)}
.box.w{background:#fff;border:1.5px solid var(--gb)}
.box p+p{margin-top:8px}
.list{list-style:none;display:grid;gap:8px;margin-top:6px}
.list li{position:relative;padding-left:31px}
.list li:before{content:"✓";position:absolute;left:0;top:1px;width:22px;height:22px;border-radius:50%;background:var(--g);color:#fff;font-size:13px;font-weight:900;display:grid;place-items:center}
.list.x li:before{content:"✕";background:var(--r)}
.big{font-size:44px;font-weight:900;color:var(--g);text-align:center;line-height:1}
.ba{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0}
.ba figure{border-radius:12px;overflow:hidden;position:relative}
.ba figcaption{position:absolute;left:0;right:0;bottom:0;padding:6px;font-size:13px;font-weight:800;color:#fff;text-align:center}
.ba .sem figcaption{background:rgba(214,69,69,.9)}
.ba .com figcaption{background:rgba(78,139,70,.95)}
.shots{display:grid;gap:10px;margin:10px 0}
.shots img{border-radius:12px;width:100%}
.scroll{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px;margin:8px -16px;padding-left:16px;padding-right:16px}
.scroll img{flex:none;width:78%;max-width:360px;border-radius:12px;scroll-snap-align:center;border:1px solid #eee}
.quote{background:#fff;border:1.5px solid var(--gb);border-radius:var(--rad);padding:14px;margin:10px 0}
.quote .st{color:#f5a623;letter-spacing:2px}
.quote b{display:block;margin-top:6px;font-size:14px}
.quote small{color:var(--t2)}
/* gauge IMC */
.gauge{margin:16px 0 6px}
.gauge .tr{height:12px;border-radius:12px;background:linear-gradient(90deg,#7cc36b 0 33%,#f3c23c 33% 66%,#e2574c 66%);position:relative}
.gauge .pt{position:absolute;top:50%;width:22px;height:22px;border-radius:50%;background:#fff;border:4px solid var(--t);transform:translate(-50%,-50%)}
.gauge .lb{display:flex;justify-content:space-between;font-size:12px;color:var(--t2);margin-top:6px;font-weight:700}
/* gráfico meta */
.chart{background:#fff;border:1.5px solid var(--gb);border-radius:var(--rad);padding:12px 10px 6px;margin:12px 0}
.chart svg{width:100%;height:auto;display:block}
/* carregando */
.load{text-align:center;padding-top:20px}
.ring{width:150px;height:150px;margin:18px auto;position:relative}
.ring svg{transform:rotate(-90deg)}
.ring b{position:absolute;inset:0;display:grid;place-items:center;font-size:34px;font-weight:900;color:var(--g)}
.steps-l{list-style:none;text-align:left;max-width:330px;margin:10px auto;display:grid;gap:8px;color:var(--t2);font-weight:700}
.steps-l li.ok{color:var(--g)}
.steps-l li.ok:before{content:"✓ "}
/* oferta */
.stack{background:#fff;border:2px solid var(--g);border-radius:var(--rad);overflow:hidden;margin:16px 0}
.stack .hd{background:var(--g);color:#fff;font-weight:900;text-align:center;padding:10px;font-size:17px}
.stack ul{list-style:none;padding:6px 14px}
.stack li{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px dashed #ddd;font-weight:700}
.stack li:last-child{border-bottom:0}
.stack li s{color:var(--t2);font-weight:600;white-space:nowrap}
.stack li small{display:block;color:var(--t2);font-weight:600;font-size:13px}
.price{text-align:center;padding:14px 14px 18px;background:var(--gl)}
.price .de{color:var(--t2);font-weight:700}
.price .de s{color:var(--r)}
.price .por{font-size:46px;font-weight:900;color:var(--g);line-height:1.05}
.price .por small{font-size:20px}
.price .ob{font-size:14px;color:var(--t2);font-weight:700}
.seal{display:flex;gap:12px;align-items:center;margin:14px 0}
.seal img{width:96px;flex:none}
.faq details{border:1.5px solid #e2e2e2;border-radius:12px;margin:8px 0;background:#fff}
.faq summary{padding:14px;font-weight:800;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:10px}
.faq summary:after{content:"+";color:var(--g);font-size:22px;line-height:18px}
.faq details[open] summary:after{content:"–"}
.faq details p{padding:0 14px 14px;color:var(--t2)}
.secure{text-align:center;color:var(--t2);font-size:13px;margin-top:8px}
.tag{display:inline-block;background:var(--r);color:#fff;font-weight:900;font-size:13px;padding:4px 10px;border-radius:6px}
footer{text-align:center;color:#999;font-size:12px;padding:20px 16px 30px;max-width:560px;margin:0 auto}
@media (min-width:600px){h1{font-size:30px}h2{font-size:25px}}

/* v2 */
.cover.hero{margin:10px 0 4px}
.alert{background:var(--y);border:1.5px solid #f3d36b;border-radius:12px;padding:10px 12px;text-align:center;font-weight:800;font-size:15px;margin-top:12px}
.gbtns{display:grid;gap:10px}
.gbtn{display:flex;align-items:center;gap:12px;width:100%;background:var(--g);color:#fff;border-radius:var(--rad);padding:8px 16px 8px 8px;font-weight:900;font-size:19px;box-shadow:0 6px 16px rgba(78,139,70,.35);animation:pulse 1.8s infinite}
.gbtn:nth-child(2){animation-delay:.9s}
.gbtn img{width:52px;height:64px;object-fit:cover;border-radius:10px;flex:none;background:#fff}
.gbtn span{flex:1;text-align:left;letter-spacing:.5px}
.gbtn b{font-size:28px;line-height:1}
.kpis{display:flex;align-items:stretch;gap:8px;margin:12px 0}
.kpis>div{flex:1;background:#fff;border:1.5px solid #e4e4e4;border-radius:12px;padding:8px;text-align:center}
.kpis>div.arr{flex:none;border:0;background:none;display:grid;place-items:center;font-size:22px;color:var(--g);padding:0}
.kpis>div.ok{border-color:var(--g);background:var(--gl)}
.kpis small{display:block;font-size:12px;color:var(--t2);font-weight:700}
.kpis b{font-size:19px;font-weight:900}
.kpis b.r{color:var(--r)}
.lbl{font-size:12px;font-weight:900;letter-spacing:.6px;color:var(--t2)}
.trava{font-size:19px;font-weight:900;color:var(--r);margin-top:2px}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.chip{background:#fdecec;color:#b03a3a;font-weight:800;font-size:14px;padding:5px 10px;border-radius:20px}
.tent{margin-top:12px;font-size:15px;color:var(--t2)}
.plan{display:grid;gap:8px}
.pi{display:flex;gap:12px;align-items:center;background:var(--gl);border-radius:12px;padding:12px}
.pi .ic{font-size:26px;width:40px;height:40px;display:grid;place-items:center;background:#fff;border-radius:50%;flex:none}
.pi b{display:block}
.pi small{display:block;color:var(--t2);font-size:14px;line-height:1.35}
.stk{position:fixed;left:0;right:0;bottom:0;padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));background:rgba(255,255,255,.96);box-shadow:0 -4px 16px rgba(0,0,0,.1);z-index:20}
.stk .btn{max-width:528px;margin:0 auto;padding:15px;font-size:17px}
/* v3 */
.h1big{font-size:29px;margin:10px 0 8px}
.opts.tight{gap:8px}
.opts.tight .opt{padding:11px 14px}
.opt.off{opacity:.4}
.foot{position:sticky;bottom:0;background:linear-gradient(rgba(255,255,255,0),#fff 30%);padding:14px 0 calc(8px + env(safe-area-inset-bottom,0px));margin-top:-6px}
.foot .btn{margin-top:0}
.guar{text-align:center;font-weight:800;font-size:14px;color:var(--g2);margin-top:6px}
.price .pix{font-weight:800;color:var(--g2);margin-top:-2px}
.price .parc{font-size:16px;margin-top:4px}
.stack.mini{margin-top:6px}
.stack.mini .price{padding-top:12px}
.cover.prod{max-width:300px;margin:6px auto 4px}
.chip.g{background:var(--gb);color:var(--g2)}
/* v4: carrossel com setas e placeholder claro */
.num input::placeholder{color:#cfd8cd;opacity:1}
.car{position:relative;margin:10px 0 4px}
.car .trk{display:flex;overflow-anchor:none;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;border-radius:14px;-webkit-overflow-scrolling:touch}
.car .trk::-webkit-scrollbar{display:none}
.car .sl{flex:0 0 100%;scroll-snap-align:start;display:flex;justify-content:center;background:var(--gl)}
.car .sl img{max-height:440px;width:auto;max-width:100%;object-fit:contain}
.car .nav{position:absolute;top:calc(50% - 22px);transform:translateY(-50%);width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.95);color:var(--g);font-size:28px;line-height:36px;font-weight:900;box-shadow:0 2px 10px rgba(0,0,0,.2)}
.car .prv{left:8px}
.car .nxt{right:8px}
.car .dots{display:flex;justify-content:center;gap:6px;margin-top:10px}
.car .dots i{width:8px;height:8px;border-radius:50%;background:#d5dfd3;transition:all .2s}
.car .dots i.on{background:var(--g);width:20px;border-radius:5px}
/* v5: régua do IMC na escala certa (16 a 40) e aviso no rodapé */
.gauge .tr{background:linear-gradient(90deg,#9db8d9 0 10.4%,#7cc36b 10.4% 37.5%,#f3c23c 37.5% 58.3%,#e2574c 58.3%)}
.gauge .lb{position:relative;display:block;height:18px}
.gauge .lb span{position:absolute;transform:translateX(-50%);white-space:nowrap}
.foot .err{min-height:0;margin-bottom:6px}
.opts.tight{padding-bottom:8px}

button,a{-webkit-tap-highlight-color:transparent}
