:root{--ink:#1E0F1F;--forest:#4A2545;--forest2:#2E1730;--kraft:#C9A66B;--kraftl:#EADBBB;--paper:#F7F0E0;--cream:#FBF6EA;--fire:#C2453D;--fire2:#9E2F2A;--iron:#1B1A18;--plaid:#8E2B2B;--mute:#6B6455}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:'Source Sans 3',system-ui,Arial,sans-serif;background:var(--paper);color:var(--iron);font-size:17px;line-height:1.55;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
h1,h2,h3,h4{font-family:'Fraunces',Georgia,serif;line-height:1.08;letter-spacing:-.01em}
.wrap{max-width:1040px;margin:0 auto;padding:0 20px}.narrow{max-width:760px}.center{text-align:center}
.kick{font:600 12px 'Oswald',sans-serif;letter-spacing:.28em;text-transform:uppercase;color:var(--fire2)}
.top{background:var(--fire2);color:#FFF3DF;text-align:center;font:600 10px/1.2 'Oswald',sans-serif;letter-spacing:.08em;text-transform:uppercase;padding:9px 8px;display:flex;justify-content:center;gap:6px;flex-wrap:nowrap;white-space:nowrap}
@media(min-width:500px){.top{font-size:11.5px;letter-spacing:.14em}}
.top i{opacity:.6;font-style:normal}
.btn{display:inline-block;background:linear-gradient(180deg,#E0605A,#B23A32);color:#fff;font:700 18px/1.1 'Source Sans 3',sans-serif;text-align:center;padding:18px 26px;border-radius:12px;text-decoration:none;box-shadow:0 10px 26px rgba(194,69,61,.45),inset 0 1px 0 rgba(255,255,255,.35);border:0;cursor:pointer}
.btn small{display:block;font-weight:500;font-size:12.5px;opacity:.92;margin-top:6px}
.btn.alt{background:transparent;box-shadow:none;border:2px solid var(--fire);color:#FBE3B0}
/* hero */
.hero{position:relative;overflow:hidden;background:var(--ink);color:var(--cream);padding:22px 0 30px}
.hero-bg{position:absolute;inset:0;background:url(img/scene.jpg) center/cover;opacity:.22;filter:saturate(.9)}
.hero:after{content:"";position:absolute;inset:0;background:radial-gradient(110% 80% at 70% 0%,rgba(92,48,88,.55),rgba(30,15,31,.92) 70%)}
#embers{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none}
.hero-grid{position:relative;z-index:2;display:grid;gap:14px;grid-template-columns:1fr;grid-template-areas:'txt' 'book' 'buy'}
.h-txt{grid-area:txt}.h-book{grid-area:book}.h-buy{grid-area:buy}
.pill{display:inline-block;color:#F2B8C6;border:1px solid rgba(242,184,198,.4);padding:6px 12px;border-radius:99px;font-size:10.5px}
.hero h1{font-size:28px;font-weight:800;color:#FFF6E2;margin-top:12px}
.hero h1 em{color:#F2B8C6;font-weight:600}
.hero h1 span{display:block;font-size:.55em;font-weight:600;color:#EADFC3;margin-top:8px;line-height:1.2;letter-spacing:0}
.sub{font-size:15.5px;line-height:1.4;color:#E4D9BD;margin-top:10px}
.book{position:relative;width:min(50vw,208px);margin:2px auto 0;perspective:900px}
.book .b{transform:rotateY(-18deg) rotateX(2deg);transition:transform .25s;transform-style:preserve-3d}
.book img{border-radius:3px 7px 7px 3px;box-shadow:16px 18px 34px rgba(0,0,0,.55),0 0 0 1px rgba(255,255,255,.08)}
.book .shadow{position:absolute;left:8%;right:-4%;bottom:-16px;height:18px;background:radial-gradient(ellipse at center,rgba(0,0,0,.55),transparent 70%);filter:blur(4px)}
.h-buy{display:flex;flex-direction:column}.wins{list-style:none;display:grid;gap:7px;order:3;margin:16px 0 0}
.wins li{padding-left:26px;position:relative;font-size:15px;line-height:1.3;color:#EFE6CE}
.wins li:before{content:"✓";position:absolute;left:0;top:0;color:#F2B8C6;font-weight:800}
.wins b{color:#FFF6E2}
.pricebox{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:10px}
.price{font:800 40px 'Fraunces',serif;color:#FFF6E2;line-height:1}
.pmeta{font-size:13px;color:#E0D2AE;line-height:1.3}.pmeta b{color:#F2B8C6}
.h-buy .btn{width:100%;max-width:430px;display:block;margin:0 auto}
.h-buy .pricebox,.h-buy .ticks{order:0}.h-buy .ticks{order:2}
.ticks{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 14px;font-size:12.5px;color:#DCCFAA;margin-top:10px}
.ticks span:before{content:"✓ ";color:#F2B8C6;font-weight:700}
@media(min-width:800px){.wins{order:0;margin:0 0 14px}.hero{padding:52px 0 60px}.hero-grid{grid-template-columns:1.1fr .9fr;grid-template-areas:'txt book' 'buy book';align-items:center;gap:24px 40px}.hero h1{font-size:50px}.sub{font-size:19px}.book{width:330px}.h-buy .btn{margin:0;max-width:440px}.pricebox{justify-content:flex-start}.ticks{justify-content:flex-start}}
/* sections */
section{padding:52px 0}
.dark{background:var(--forest2);color:var(--cream)}
h2{font-size:30px;font-weight:800;color:var(--forest);margin-top:8px}
.dark h2{color:#FFF3DA}
.lead{font:italic 400 18px/1.5 'Fraunces',serif;color:#3d3a2c;margin-top:12px}
.dark .lead{color:#E7DBBE}
@media(min-width:800px){h2{font-size:40px}section{padding:76px 0}}
/* cost */
.cost{background:#EFE4C8}
.cost-grid{display:grid;gap:12px;margin-top:22px}
.cc{background:#fff;border-left:5px solid var(--plaid);border-radius:0 12px 12px 0;padding:16px 18px;box-shadow:0 6px 18px rgba(0,0,0,.06)}
.cc b{font:800 19px 'Fraunces',serif;color:var(--forest);display:block;margin-bottom:4px}.cc p{font-size:16px}
@media(min-width:800px){.cost-grid{grid-template-columns:repeat(3,1fr)}}
/* quiz */
.quiz{margin-top:24px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:18px;padding:20px 18px 22px}
.qprog{height:5px;border-radius:9px;background:rgba(255,255,255,.14);overflow:hidden;margin-bottom:16px}
.qprog i{display:block;height:100%;width:0;background:var(--fire);transition:width .35s}
.qn{font:600 11px 'Oswald',sans-serif;letter-spacing:.24em;color:#F2B8C6;text-transform:uppercase}
.qq{font:800 22px/1.15 'Fraunces',serif;color:#FFF3DA;margin:6px 0 14px}
.qopt{display:block;width:100%;text-align:left;background:rgba(255,255,255,.08);color:#F6ECD3;border:1.5px solid rgba(255,255,255,.18);border-radius:12px;padding:14px 16px;margin-bottom:9px;font:600 16px/1.3 'Source Sans 3',sans-serif;cursor:pointer;transition:.15s}
.qopt:hover,.qopt:focus-visible{border-color:var(--fire);background:rgba(194,69,61,.14);outline:0}
.res h3{font-size:24px;color:#FFF3DA}
.res .cul{background:rgba(255,255,255,.07);border-left:5px solid var(--fire);border-radius:0 12px 12px 0;padding:12px 14px;margin:10px 0}
.res .cul b{color:#F2B8C6;display:block;font:700 12px 'Oswald',sans-serif;letter-spacing:.16em;text-transform:uppercase}
.res .cul p{font-size:15.5px;margin-top:3px}
.res .btn{width:100%;margin-top:12px}
.res .again{background:none;border:0;color:#CDBF99;text-decoration:underline;cursor:pointer;margin-top:10px;font-size:14px}
/* sample recipe */
.recipe{margin-top:22px;background:#FFFBEF;border:1px solid #E2D6B8;border-radius:16px;box-shadow:0 18px 44px rgba(74,37,69,.16);padding:22px 18px}
.rk{font:600 11px 'Oswald',sans-serif;letter-spacing:.24em;text-transform:uppercase;color:var(--fire2)}
.rec-top h3{font-size:30px;color:var(--forest);margin:4px 0}
.rh{font:italic 400 16px/1.4 'Fraunces',serif;color:#4a4536}
.rec-head{margin:14px 0}.chip{display:inline-block;margin:0 6px 6px 0;padding:4px 10px;background:var(--forest);color:#F6E7C6;font:600 11px 'Oswald',sans-serif;letter-spacing:.1em;text-transform:uppercase;border-radius:3px}.chip.cost{background:var(--fire2);color:#fff}
.rec-cols{display:grid;gap:16px}
.recipe h4{font:700 12px 'Oswald',sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--forest);border-bottom:2px solid var(--kraft);padding-bottom:4px;margin-bottom:8px}
.rec-ing div{padding:5px 0;border-bottom:1px dotted #d4c7a4;font-size:15.5px}.rec-ing b{color:var(--plaid)}
.rec-stp ol{list-style:none;counter-reset:s}.rec-stp li{counter-increment:s;position:relative;padding-left:32px;margin-bottom:10px;font-size:15.8px;line-height:1.45}
.rec-stp li:before{content:counter(s);position:absolute;left:0;top:1px;width:22px;height:22px;border-radius:50%;background:var(--forest);color:#F6E7C6;font:700 11px/22px 'Oswald',sans-serif;text-align:center}
.rec-trick{margin-top:16px;background:var(--kraftl);border-left:5px solid var(--fire);padding:12px 16px;font:600 20px/1.2 'Caveat',cursive;color:#3b2f17}
.rec-trick small{display:block;font:700 10px 'Oswald',sans-serif;letter-spacing:.24em;color:var(--plaid);text-transform:uppercase;margin-bottom:3px}
.rec-mist{margin-top:14px}.rec-mist div{position:relative;padding:4px 0 4px 20px;font-size:15px}.rec-mist div:before{content:"✕";position:absolute;left:0;color:var(--plaid);font-weight:700}
.rec-keep{font-size:14px;color:#4a4536;margin-top:12px;border-top:2px solid var(--kraft);padding-top:8px}
@media(min-width:800px){.recipe{padding:32px 34px}.rec-cols{grid-template-columns:.85fr 1.15fr;gap:32px}.rec-top h3{font-size:38px}}
/* rail */
.rail{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 20px 18px;margin:22px -20px 0;-webkit-overflow-scrolling:touch}
.rail figure{flex:0 0 min(74vw,330px);scroll-snap-align:center;background:#fff;border-radius:6px;box-shadow:0 10px 26px rgba(0,0,0,.35);overflow:hidden;cursor:zoom-in}
.rail figcaption{font-size:13px;padding:8px 10px;color:#3d3a2c;line-height:1.3;font-weight:600}
.hint{font:600 11px 'Oswald',sans-serif;letter-spacing:.2em;text-transform:uppercase;color:#cdbf99;text-align:center;margin-top:4px}
/* list/stats/chs */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:26px}
.stats div{background:var(--forest);color:var(--cream);border-radius:12px;padding:16px 6px;text-align:center}
.stats b{display:block;font:800 34px 'Fraunces',serif;color:#F2B8C6;line-height:1}
.stats span{font:600 10.5px 'Oswald',sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#D9CCAA}
.list{margin-top:22px}.list div{display:grid;grid-template-columns:1fr auto;gap:12px;padding:14px 4px;border-bottom:1px dotted #bfae82;font-size:17px}
.list b{font-family:'Fraunces',serif;font-weight:700;color:var(--forest)}.list span{font:600 12px 'Oswald',sans-serif;letter-spacing:.14em;color:var(--fire2);white-space:nowrap;align-self:center}
.chs{display:grid;grid-template-columns:1fr;gap:8px;margin-top:22px}.chs div{background:#fff;border-left:5px solid var(--fire);padding:10px 14px;border-radius:0 8px 8px 0;font-size:15.5px}.chs b{font-family:'Fraunces',serif;color:var(--forest)}
@media(min-width:700px){.chs{grid-template-columns:1fr 1fr}}
/* compare */
.compare{background:#EFE4C8}
.tbl{margin:22px auto 0;max-width:820px;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 14px 36px rgba(0,0,0,.12)}
.tr{display:grid;grid-template-columns:1.25fr 1fr 1fr;border-bottom:1px solid #eadfc4;font-size:14.5px}.tr span{padding:12px 10px}
.tr.th{background:var(--forest);color:#F6E7C6;font:700 12px 'Oswald',sans-serif;letter-spacing:.12em;text-transform:uppercase}
.tr .no{color:#8b8472}.tr .us{background:#F7EED6;font-weight:700;color:var(--forest)}.tr.th .us{background:var(--fire2);color:#fff}.tr .yes:before{content:"✓ ";color:var(--fire2)}
/* offer */
.offer{background:linear-gradient(180deg,#F1E6CB,#EADBBB)}
.box{max-width:640px;margin:26px auto 0;background:#fff;border-radius:18px;box-shadow:0 16px 44px rgba(74,37,69,.25);overflow:hidden;border:2px solid var(--forest)}
.box .hd{background:var(--forest);color:#F5E7C4;text-align:center;font:700 13px 'Oswald',sans-serif;letter-spacing:.22em;text-transform:uppercase;padding:11px}
.box .in{padding:22px 20px 26px;display:grid;gap:16px;justify-items:center;text-align:center}
.box img{width:160px;border-radius:3px;box-shadow:8px 10px 22px rgba(0,0,0,.35)}
.stack{list-style:none;text-align:left;width:100%;max-width:470px}.stack li{padding:8px 0 8px 30px;position:relative;border-bottom:1px dotted #d4c7a4;font-size:16px;line-height:1.35}
.stack li:before{content:"✓";position:absolute;left:0;color:var(--fire2);font-weight:800}.stack b{color:var(--forest)}
.price.big{color:var(--forest);font-size:46px}.price.big small{display:block;font:500 13px 'Source Sans 3',sans-serif;color:var(--mute);margin-top:4px}
.box .btn{width:100%}.micro{font-size:13.5px;color:var(--mute);max-width:440px}
/* bonus/why */
.bon{display:grid;gap:14px;margin-top:24px}
.bon .it{display:grid;grid-template-columns:78px 1fr;gap:14px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:14px;align-items:center}
.bon .it.col{grid-template-columns:1fr}.bon .n{font:800 34px 'Fraunces',serif;color:#F2B8C6;text-align:center;line-height:1}
.bon .n small{display:block;font:600 10px 'Oswald',sans-serif;letter-spacing:.16em;color:#D9CCAA;margin-top:4px}
.bon h3{font-size:19px;color:#FFF3DA}.bon p{font-size:15px;color:#D9CFB2;margin-top:3px}
@media(min-width:800px){.bon{grid-template-columns:repeat(3,1fr)}.bon .it:not(.col){grid-template-columns:1fr;text-align:center}}
/* ole */
.ole{display:grid;gap:22px;align-items:center}.ole img{border-radius:14px;box-shadow:0 14px 34px rgba(0,0,0,.35)}.ole p{margin-top:12px}
.note{font-size:13.5px;color:var(--mute);border-left:3px solid var(--kraft);padding:2px 0 2px 12px;margin-top:16px}
@media(min-width:800px){.ole{grid-template-columns:.9fr 1.1fr;gap:44px}}
/* faq/guarantee */
details{background:#fff;border:1px solid #E2D6B8;border-radius:12px;margin-top:10px}
summary{cursor:pointer;list-style:none;padding:16px 46px 16px 16px;font:700 17px 'Fraunces',serif;color:var(--forest);position:relative}
summary::-webkit-details-marker{display:none}
summary:after{content:"+";position:absolute;right:16px;top:50%;transform:translateY(-50%);font:700 24px sans-serif;color:var(--fire)}
details[open] summary:after{content:"–"}details p{padding:0 16px 16px;font-size:16.5px;color:#34322a}
.gar{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center;max-width:720px;margin:0 auto;background:#fff;border:2px dashed var(--kraft);border-radius:16px;padding:20px}
.gar h2{font-size:23px;margin:0}.gar p{margin-top:6px;font-size:16px}
.seal{width:84px;height:84px;border-radius:50%;background:var(--forest);color:#F2B8C6;display:flex;flex-direction:column;align-items:center;justify-content:center;border:3px double #F2B8C6;transform:rotate(-8deg)}
.seal b{font:800 32px/1 'Fraunces',serif}.seal small{font:600 8px/1.1 'Oswald',sans-serif;letter-spacing:.14em;text-align:center}
.final{text-align:center}.final .btn{width:100%;max-width:440px;margin-top:18px}
footer{background:#0C1710;color:#9CA08F;font-size:12.5px;padding:28px 0 96px;line-height:1.5}
/* sticky + modal + lightbox */
.sticky{position:fixed;left:0;right:0;bottom:0;z-index:50;background:rgba(30,15,31,.97);padding:10px 14px calc(10px + env(safe-area-inset-bottom));display:flex;gap:12px;align-items:center;justify-content:center;transform:translateY(110%);transition:transform .3s;border-top:2px solid var(--fire)}
.sticky.on{transform:none}.sticky .t{color:#F6E9C9;font:700 15px 'Fraunces',serif;line-height:1.1}.sticky .t small{display:block;font:500 12px 'Source Sans 3',sans-serif;color:#cdbf99}
.sticky .btn{padding:13px 22px;font-size:16px;white-space:nowrap}
.modal{position:fixed;inset:0;z-index:80;background:rgba(0,0,0,.72);display:flex;align-items:center;justify-content:center;padding:20px}.modal[hidden],.lightbox[hidden]{display:none}
.mcard{position:relative;background:var(--paper);border-radius:18px;max-width:440px;width:100%;padding:28px 24px;text-align:center;box-shadow:0 30px 80px rgba(0,0,0,.6)}
.mcard h3{font-size:28px;color:var(--forest);margin:8px 0}.mcard p{margin-bottom:16px}.mcard .btn{display:block;width:100%;margin-top:10px}.mcard .btn.alt{color:var(--fire2)}
.mx{position:absolute;right:12px;top:8px;background:none;border:0;font-size:30px;cursor:pointer;color:var(--mute)}
.lightbox{position:fixed;inset:0;z-index:90;background:rgba(18,8,18,.94);display:flex;align-items:center;justify-content:center}
.lightbox img{max-height:92vh;max-width:min(92vw,760px);border-radius:4px;box-shadow:0 20px 70px rgba(0,0,0,.7)}
.lbx,.lbp,.lbn{position:absolute;background:rgba(255,255,255,.12);color:#fff;border:0;width:46px;height:46px;border-radius:50%;font-size:28px;cursor:pointer}
.lbx{top:14px;right:14px}.lbp{left:10px}.lbn{right:10px}
/* reveal */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s,transform .7s}.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}
@media(min-width:800px){.sticky{display:none}}
