:root{
  --bg:#FBF7EE;--card:#fff;--ink:#2A2118;--muted:#6E6250;--line:#E8DDC7;
  --green:#2F5E35;--green-2:#3F7B46;--green-dk:#1F4224;--green-soft:#EEF4EA;
  --gold:#C79A3E;--gold-dk:#9C7424;--gold-soft:#F7EDD3;
  --wine:#7E1D22;--wine-2:#A0302F;--red:#C0392B;--red-soft:#FBEDEA;
  --r:14px;--shadow:0 2px 10px rgba(70,50,15,.06);
  --serif:'Playfair Display',Georgia,'Times New Roman',serif;
  --sans:'Nunito Sans',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--ink);font:16px/1.5 var(--sans);min-height:100vh;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
[hidden]{display:none!important}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;-webkit-tap-highlight-color:transparent}
a{color:inherit}
b,strong{font-weight:800}

/* Header */
.top{position:sticky;top:0;z-index:20;background:rgba(251,247,238,.94);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:10px 16px 0;padding-top:max(10px,env(safe-area-inset-top))}
.logo{display:flex;align-items:center;justify-content:center;gap:7px;height:30px;font:700 15px/1 var(--serif);color:var(--green);letter-spacing:.2px}
.back{position:absolute;left:8px;top:max(6px,env(safe-area-inset-top));width:40px;height:40px;display:grid;place-items:center;color:var(--muted);border-radius:50%}
.back:active{background:var(--line)}
.bar{height:6px;background:#EDE4D0;border-radius:9px;margin:8px 0 0;overflow:hidden}
.bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--gold),var(--green-2));border-radius:9px;transition:width .4s ease}
.top.noline{padding-bottom:6px}

/* Layout */
.wrap{max-width:460px;margin:0 auto;padding:18px 16px 40px}
.screen{animation:in .32s ease both}
@keyframes in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.q-title{font:800 25px/1.22 var(--serif);text-align:center;margin:4px 0 6px;letter-spacing:-.2px}
.q-title.lg{font-size:28px}
.q-sub{text-align:center;color:var(--muted);font-size:15px;margin:0 0 14px}
.hl{color:var(--green)}
.hl-gold{color:var(--gold-dk)}
.hl-wine{color:var(--wine-2)}
.center{text-align:center}
.mt{margin-top:16px}.mt2{margin-top:24px}
.lead{font-size:16px;text-align:center;margin:14px 2px}
.small{font-size:13px;color:var(--muted)}

/* Options */
.opts{display:flex;flex-direction:column;gap:10px;margin-top:14px}
.opt{display:flex;align-items:center;gap:12px;width:100%;min-height:62px;padding:12px 14px;background:var(--card);border:1.5px solid var(--line);border-radius:var(--r);text-align:left;font-size:15.5px;line-height:1.3;box-shadow:var(--shadow);transition:border-color .15s,background .15s,transform .1s}
.opt:hover{border-color:#D3C4A3}
.opt:active{transform:scale(.985)}
.opt .ic{width:34px;height:34px;flex:0 0 34px}
.opt .tx{flex:1}
.opt .chev{flex:0 0 28px;width:28px;height:28px;border:1.6px solid var(--green-2);border-radius:50%;display:grid;place-items:center;color:var(--green-2)}
.opt .box{flex:0 0 24px;width:24px;height:24px;border:1.6px solid #CDBF9F;border-radius:7px;display:grid;place-items:center;color:#fff;transition:.15s}
.opt.sel{border-color:var(--green-2);background:var(--green-soft)}
.opt.sel .chev{background:var(--green-2);color:#fff}
.opt.sel .box{background:var(--green-2);border-color:var(--green-2)}
.opt .box svg{opacity:0}.opt.sel .box svg{opacity:1}

/* Gender cards */
.gender{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}
.gcard{background:var(--card);border:1.5px solid var(--line);border-radius:18px;padding:10px 10px 14px;display:flex;flex-direction:column;align-items:center;gap:10px;box-shadow:var(--shadow);transition:.15s}
.gcard img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:12px}
.gcard span{font-weight:700;font-size:16px}
.gcard .chev{width:30px;height:30px;border:1.6px solid var(--green-2);border-radius:50%;display:grid;place-items:center;color:var(--green-2)}
.gcard.sel,.gcard:hover{border-color:var(--green-2)}
.gcard:active{transform:scale(.98)}

/* Side image layout */
.side{display:grid;grid-template-columns:40% 1fr;gap:10px;align-items:start;margin-top:12px}
.side>img{width:100%;mix-blend-mode:multiply;position:sticky;top:90px;border-radius:16px}
.side .opts{margin-top:0}
.side .opt{min-height:56px;font-size:14.5px;padding:10px 10px 10px 12px}

/* Buttons */
.btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:17px 18px;border-radius:var(--r);background:linear-gradient(180deg,var(--green-2),var(--green));color:#fff;font:800 17px/1.2 var(--sans);text-align:center;text-decoration:none;letter-spacing:.2px;box-shadow:0 4px 0 var(--green-dk),0 10px 22px rgba(47,94,53,.22);transition:transform .08s,box-shadow .08s,opacity .2s}
.btn:active{transform:translateY(3px);box-shadow:0 1px 0 var(--green-dk),0 4px 10px rgba(47,94,53,.2)}
.btn[disabled]{opacity:.45;pointer-events:none}
.btn-sm{padding:13px 16px;font-size:15px;width:auto;white-space:nowrap}
.btn.pulse{animation:pulse 2s infinite}
@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.025)}}
.sticky-btn{position:sticky;bottom:12px;margin-top:16px;z-index:5}

/* Checklist */
.checks{list-style:none;display:flex;flex-direction:column;gap:9px;margin:14px 0}
.checks li{display:flex;gap:10px;font-size:15.5px;line-height:1.4}
.checks li:before{content:"";flex:0 0 22px;height:22px;margin-top:1px;border-radius:6px;background:var(--green-2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7'/%3E%3C/svg%3E") center/15px no-repeat}
.leafs li:before{background:none;content:"🌿";font-size:18px;line-height:22px;text-align:center}

/* Intro */
.hero{position:relative;width:100%;margin:14px auto 6px}
.hero img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:20px;border:3px solid var(--gold);box-shadow:0 12px 30px rgba(90,60,10,.18)}
.badge{position:absolute;left:50%;bottom:-12px;transform:translateX(-50%);white-space:nowrap;background:var(--wine);color:#fff;font:700 12.5px/1 var(--sans);padding:7px 12px;border-radius:30px;border:2px solid var(--gold);letter-spacing:.3px}
.trust{display:flex;justify-content:center;gap:6px;align-items:center;margin-top:10px;font-size:13px;color:var(--muted)}

/* Info images */
.pic{width:100%;border-radius:18px;margin:12px 0 4px;box-shadow:0 10px 24px rgba(70,50,15,.12);aspect-ratio:3/2;object-fit:cover}
.pic-wrap{position:relative}
.pill-over{position:absolute;left:50%;bottom:-14px;transform:translateX(-50%);background:var(--green);color:#fff;font:800 13px/1 var(--sans);padding:10px 16px;border-radius:30px;white-space:nowrap;border:2px solid var(--gold);box-shadow:0 6px 16px rgba(31,66,36,.3)}

/* Bars chart */
.chart{background:var(--card);border:1.5px solid var(--line);border-radius:18px;padding:16px 14px 10px;margin-top:14px;display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:8px}
.cgroup{display:flex;gap:10px;justify-content:center;align-items:flex-end;height:150px}
.cbar{width:42px;border-radius:10px 10px 4px 4px;position:relative;animation:grow .9s ease both}
.cbar em{position:absolute;top:-22px;left:50%;transform:translateX(-50%);font:800 10.5px/1 var(--sans);font-style:normal;white-space:nowrap;letter-spacing:.3px}
@keyframes grow{from{height:0!important}}
.clabel{text-align:center;font:800 12px/1 var(--sans);letter-spacing:.6px;color:var(--muted);padding-top:8px}
.carrow{color:var(--green-2);font-size:22px;padding-bottom:60px}
.auth{display:flex;gap:12px;align-items:center;background:var(--gold-soft);border:1.5px solid #EBD9AE;border-radius:16px;padding:12px;margin-top:16px;font-size:14.5px;line-height:1.4}
.auth img{width:62px;height:62px;border-radius:50%;object-fit:cover;object-position:60% 30%;border:2px solid var(--gold);flex:0 0 62px}

/* Compare cards */
.cmp{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center;margin-top:16px}
.ccard{border-radius:16px;padding:14px 10px;text-align:center;border:1.5px solid}
.ccard.bad{background:var(--red-soft);border-color:#F2C9C2}
.ccard.good{background:var(--green-soft);border-color:#C7DCC3}
.ccard h4{font:800 11.5px/1.2 var(--sans);letter-spacing:.6px;padding:5px 8px;border-radius:20px;display:inline-block;margin-bottom:10px}
.bad h4{background:#F6D5CF;color:var(--red)}
.good h4{background:#D3E6CF;color:var(--green)}
.ccard ol{list-style:none;font-weight:700;font-size:14px;display:flex;flex-direction:column;gap:2px}
.ccard ol li:not(:last-child):after{content:"↓";display:block;color:var(--muted);font-weight:400}
.ccard .tag{display:inline-block;margin-top:10px;font:800 11.5px/1.2 var(--sans);color:#fff;padding:6px 9px;border-radius:20px}
.bad .tag{background:var(--red)}.good .tag{background:var(--green-2)}

/* Diagram */
.diag{display:flex;flex-direction:column;align-items:center;margin-top:16px}
.diag .row{display:flex;gap:28px}
.chip{display:flex;align-items:center;gap:6px;background:#fff;border:1.5px solid var(--line);border-radius:12px;padding:8px 12px;font-weight:800;font-size:15px;box-shadow:var(--shadow)}
.chip img{width:22px;height:22px}
.dash{width:2px;height:22px;border-left:2px dashed var(--green-2);margin:2px 0}
.bigpill{background:linear-gradient(180deg,var(--green-2),var(--green));color:#fff;font:800 18px/1 var(--serif);padding:14px 22px;border-radius:40px;box-shadow:0 8px 18px rgba(31,66,36,.25)}
.meter-card{width:100%;background:var(--green-soft);border:1.5px solid #C7DCC3;border-radius:16px;padding:14px 16px 12px;text-align:center}
.meter-card h3{font:800 20px/1.1 var(--serif);color:var(--green)}
.meter-card h3 small{display:block;font:800 12px/1.6 var(--sans);color:var(--ink);letter-spacing:1px}
.grad{position:relative;height:12px;border-radius:9px;background:linear-gradient(90deg,#D9473B,#E9A23B,#E6C84A,#7DB55A,#3F7B46);margin:12px 4px 6px}
.grad i{position:absolute;top:50%;width:22px;height:22px;border-radius:50%;background:#fff;border:4px solid var(--green-2);transform:translate(-50%,-50%);box-shadow:0 2px 6px rgba(0,0,0,.2);transition:left 1.2s cubic-bezier(.2,.8,.2,1)}
.grad-l{display:flex;justify-content:space-between;font:800 11.5px/1 var(--sans)}
.grad-l span:first-child{color:var(--red)}.grad-l span:last-child{color:var(--green)}

/* Ruler */
.unit-sw{display:flex;justify-content:center;margin:6px 0 2px}
.val{display:flex;align-items:baseline;justify-content:center;gap:4px;margin:12px 0 4px}
.val b{font:800 52px/1 var(--sans);letter-spacing:-1px}
.val span{font-weight:800;font-size:18px}
.ruler{position:relative;margin:4px -16px 0;user-select:none}
.rl-track{display:flex;overflow-x:scroll;scroll-snap-type:x mandatory;scrollbar-width:none;padding:0 calc(50% - var(--gap)/2);cursor:grab;touch-action:pan-x;-webkit-mask:linear-gradient(90deg,transparent,#000 22%,#000 78%,transparent);mask:linear-gradient(90deg,transparent,#000 22%,#000 78%,transparent)}
.rl-track::-webkit-scrollbar{display:none}
.rl-track.drag{scroll-snap-type:none;cursor:grabbing}
.tk{flex:0 0 var(--gap);height:74px;scroll-snap-align:center;position:relative}
.tk:before{content:"";position:absolute;left:50%;top:6px;width:1.5px;height:20px;background:#C8BBA0}
.tk.mj:before{height:34px;background:#8E7F63;width:2px}
.tk em{position:absolute;left:50%;top:46px;transform:translateX(-50%);font:600 13px/1 var(--sans);font-style:normal;color:var(--muted)}
.rl-ind{position:absolute;left:50%;top:0;width:3px;height:56px;background:var(--green);transform:translateX(-50%);border-radius:3px;pointer-events:none}
.rl-ind:after{content:"";position:absolute;bottom:-8px;left:50%;transform:translateX(-50%);border:7px solid transparent;border-bottom-color:var(--green)}
.rl-hint{text-align:center;font-size:13px;color:var(--muted);margin-top:4px}
.stepper{display:flex;justify-content:center;gap:14px;margin-top:6px}
.stepper button{width:44px;height:44px;border-radius:50%;border:1.5px solid var(--line);background:#fff;font:700 22px/1 var(--sans);color:var(--green)}

/* Summary */
.sum-card{background:var(--card);border:1.5px solid var(--line);border-radius:18px;padding:16px;margin-top:12px}
.sum-card h3{font:800 16px/1.2 var(--sans)}
.sum-card .sv{color:var(--muted);font-size:14.5px;margin-top:4px}
.zone{display:flex;justify-content:space-between;font-size:12.5px;color:var(--muted);margin-top:2px}
.sum-img{display:flex;justify-content:center;margin-top:10px}
.sum-img img{height:260px;width:auto;mix-blend-mode:multiply;border-radius:16px}
.callout{border-radius:16px;padding:14px 16px;font-size:15px;line-height:1.45;margin-top:10px}
.callout.warn{background:#FDF5E2;border:1.5px solid #F0DDA8;color:#7A5410}
.callout.bad{background:var(--red-soft);border:1.5px solid #F2C9C2;color:#8E2A20}
.callout.ok{background:var(--green-soft);border:1.5px solid #C7DCC3;color:var(--green-dk)}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.chips span{background:#fff;border:1px solid var(--line);border-radius:20px;padding:5px 10px;font-size:13px;font-weight:700}

/* Loading */
.ld-top{display:flex;justify-content:flex-end;font-weight:800;font-size:15px;margin-top:10px}
.ld-bar{height:12px;background:#EDE4D0;border-radius:9px;overflow:hidden;margin-top:6px}
.ld-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--gold),var(--green-2));border-radius:9px;transition:width .25s linear}
.ld-status{text-align:center;color:var(--muted);font-size:15px;margin:12px 0 4px;min-height:24px}
.ld-steps{list-style:none;margin:10px 0 0;display:flex;flex-direction:column;gap:8px}
.ld-steps li{display:flex;align-items:center;gap:10px;font-size:14.5px;color:#A89A80;transition:color .3s}
.ld-steps li i{width:20px;height:20px;border-radius:50%;border:2px solid #D9CCB0;flex:0 0 20px;display:grid;place-items:center;transition:.3s}
.ld-steps li.done{color:var(--ink)}
.ld-steps li.done i{background:var(--green-2);border-color:var(--green-2)}
.ld-steps li.done i:after{content:"";width:9px;height:5px;border:2.5px solid #fff;border-top:0;border-right:0;transform:rotate(-45deg) translate(1px,-1px)}
.car-title{text-align:center;font:800 21px/1.2 var(--serif);margin-top:22px}
.car{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:12px -16px 0;padding:0 16px 4px}
.car::-webkit-scrollbar{display:none}
.slide{flex:0 0 88%;scroll-snap-align:center;background:var(--card);border:1.5px solid var(--line);border-radius:18px;padding:16px;box-shadow:var(--shadow)}
.slide h4{font:800 17px/1.25 var(--serif);margin:8px 0 6px;color:var(--green)}
.slide p{font-size:14.5px;color:#4A3F31}
.slide .kicker{display:inline-block;font:800 11px/1 var(--sans);letter-spacing:.8px;color:var(--gold-dk);background:var(--gold-soft);padding:6px 9px;border-radius:20px}
.slide .who{display:flex;align-items:center;gap:8px;font-weight:800;font-size:14px}
.stars{color:#E2A93B;letter-spacing:1px}
.dots{display:flex;justify-content:center;gap:6px;margin-top:10px}
.dots i{width:7px;height:7px;border-radius:50%;background:#DCCFB3;transition:.2s}
.dots i.on{background:var(--green-2);width:18px;border-radius:5px}

/* Result */
.res-hl{font:800 21px/1.25 var(--serif);color:var(--green);text-align:center;margin-top:4px}
.res-chart{background:var(--card);border:1.5px solid var(--line);border-radius:18px;padding:12px 10px 8px;margin-top:12px}
.res-chart svg{width:100%;height:auto;overflow:visible}
.draw{stroke-dasharray:600;stroke-dashoffset:600;animation:draw 1.6s .2s ease forwards}
@keyframes draw{to{stroke-dashoffset:0}}
.fadein{opacity:0;animation:fade .6s 1.2s forwards}
@keyframes fade{to{opacity:1}}
.plan{background:var(--card);border:1.5px solid var(--line);border-radius:18px;margin-top:12px;overflow:hidden}
.plan-row{display:flex;gap:12px;align-items:center;padding:12px 14px;border-top:1px solid var(--line)}
.plan-row:first-child{border-top:0}
.plan-row img{width:30px;height:30px;flex:0 0 30px}
.plan-row small{display:block;color:var(--muted);font-size:12.5px;font-weight:700;letter-spacing:.3px;text-transform:uppercase}
.plan-row b{font-size:15.5px;line-height:1.3}
.duo{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
.duo>div{background:var(--card);border:1.5px solid var(--line);border-radius:16px;padding:12px 10px;text-align:center;font-size:14px;line-height:1.7}
.duo h4{font:800 15px/1.4 var(--sans);margin-bottom:4px}
.r{color:var(--red);font-weight:800}.g{color:var(--green-2);font-weight:800}

/* Offer */
.timer{background:linear-gradient(180deg,var(--wine-2),var(--wine));color:#fff;text-align:center;border-radius:16px;padding:10px;margin-top:14px;border:2px solid var(--gold)}
.timer small{font-weight:700;font-size:14px}
.timer b{display:block;font:800 34px/1.1 var(--sans);letter-spacing:1px}
.seals{display:flex;justify-content:space-between;gap:6px;margin-top:12px}
.seal{display:flex;align-items:center;gap:6px;font-size:11.5px;line-height:1.15;color:var(--muted)}
.seal svg{flex:0 0 26px}
.seal b{display:block;color:var(--ink);font-size:12.5px;letter-spacing:.2px}
.offer-img{width:100%;border-radius:18px;box-shadow:0 14px 34px rgba(70,50,15,.18);margin-top:14px}
.sec{margin-top:30px}
.sec-t{font:800 22px/1.25 var(--serif);text-align:center;margin-bottom:8px}
.feat{display:flex;flex-direction:column;gap:10px;margin-top:12px}
.feat>div{background:var(--card);border:1.5px solid var(--line);border-radius:16px;padding:12px 14px}
.feat h4{font:800 16px/1.3 var(--sans);color:var(--green);display:flex;gap:6px;align-items:center}
.feat p{font-size:14.5px;color:#4A3F31;margin-top:2px}
.quote{background:var(--gold-soft);border-left:4px solid var(--gold);border-radius:12px;padding:14px 16px;font-size:15px;margin-top:12px}
.price-box{background:var(--card);border:2px solid var(--gold);border-radius:20px;padding:20px 16px;text-align:center;margin-top:16px;box-shadow:0 10px 26px rgba(150,110,30,.14)}
.price-box .tagline{display:inline-block;background:var(--green-soft);color:var(--green);font:800 12px/1 var(--sans);padding:7px 11px;border-radius:20px;letter-spacing:.4px}
.price-box .de{color:var(--muted);font-size:15px;margin-top:10px}
.price-box .de s{color:var(--red)}
.price-box .parc{font:800 18px/1.2 var(--sans);margin-top:8px}
.price-box .big{font:800 46px/1 var(--serif);color:var(--wine);margin:6px 0 2px}
.price-box .vista{color:var(--muted);font-size:14px;margin-bottom:14px}
.guar{display:flex;gap:14px;align-items:center;background:var(--card);border:1.5px solid var(--line);border-radius:18px;padding:16px;margin-top:16px}
.guar svg{flex:0 0 64px}
.guar h4{font:800 17px/1.25 var(--serif)}
.guar p{font-size:14px;color:#4A3F31;margin-top:3px}
.faq{margin-top:10px;display:flex;flex-direction:column;gap:8px}
.faq details{background:var(--card);border:1.5px solid var(--line);border-radius:14px;padding:0 14px}
.faq summary{list-style:none;cursor:pointer;padding:14px 0;font-weight:800;font-size:15px;display:flex;justify-content:space-between;gap:10px}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";color:var(--green-2);font-size:20px;line-height:1}
.faq details[open] summary:after{content:"–"}
.faq details p{padding:0 0 14px;font-size:14.5px;color:#4A3F31}
.disc{font-size:12px;color:var(--muted);text-align:center;margin-top:28px;line-height:1.5}
.foot{font-size:12px;color:var(--muted);text-align:center;margin-top:14px}

/* Sticky CTA */
.sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:30;background:rgba(255,255,255,.97);border-top:1px solid var(--line);box-shadow:0 -6px 20px rgba(70,50,15,.1);padding:10px 16px;padding-bottom:max(10px,env(safe-area-inset-bottom));transform:translateY(110%);transition:transform .3s}
.sticky-cta.on{transform:none}
.sticky-in{max-width:460px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:10px}
.sticky-price small{display:block;font-size:12px;color:var(--muted)}
.sticky-price b{font:800 20px/1.1 var(--serif);color:var(--wine)}

@media (max-width:360px){
  .q-title{font-size:22px}.q-title.lg{font-size:24px}
  .opt{font-size:14.5px}.side{grid-template-columns:36% 1fr}
  .val b{font-size:44px}.seal{font-size:10.5px}.seal b{font-size:11.5px}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.draw{stroke-dashoffset:0}.fadein{opacity:1}}
