
:root{
 --cream:#fdf7f2;--cream2:#fbeee6;--blush:#f7e4d9;--red:#c62828;--crimson:#b21f1f;
 --dark:#2a1414;--gold:#e0a83e;--ink:#2a1a16;--line:#ecd9cd;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Nunito Sans',system-ui,sans-serif;color:var(--ink);background:var(--cream);line-height:1.7;font-size:17px}
h1,h2,h3,h4,.logo{font-family:'Poppins',system-ui,sans-serif;line-height:1.2;color:var(--dark)}
.wrap{max-width:1120px;margin:0 auto;padding:0 22px}
a{color:var(--crimson);text-decoration:none}
img{max-width:100%;height:auto;display:block}

/* promo bar */
.promo{background:var(--crimson);color:#fff;text-align:center;font-size:.86rem;padding:8px 12px;letter-spacing:.2px}
.promo strong{color:var(--gold)}

/* header */
.site-head{position:sticky;top:0;z-index:40;background:rgba(253,247,242,.96);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;gap:18px;padding:12px 22px}
.logo{font-weight:800;font-size:1.32rem;color:var(--dark);letter-spacing:-.5px}
.logo span{color:var(--red)}
.main-nav{display:flex;align-items:center;gap:18px;margin-left:auto}
.main-nav>a,.drop-t{font-size:.93rem;font-weight:600;color:var(--ink);background:none;border:0;cursor:pointer;font-family:inherit}
.main-nav>a:hover,.drop-t:hover{color:var(--crimson)}
.drop{position:relative}
.drop-m{position:absolute;top:150%;left:0;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 34px rgba(80,20,20,.14);padding:8px;min-width:266px;opacity:0;visibility:hidden;transform:translateY(6px);transition:.16s}
.drop:hover .drop-m{opacity:1;visibility:visible;transform:translateY(0)}
.drop-m a{display:block;padding:9px 12px;border-radius:8px;font-size:.9rem;font-weight:600;color:var(--ink)}
.drop-m a:hover{background:var(--cream2);color:var(--crimson)}
.cta-btn{display:inline-block;background:var(--red);color:#fff;font-weight:700;padding:11px 20px;border-radius:32px;box-shadow:0 8px 20px rgba(198,40,40,.28);font-size:.92rem;transition:.16s}
.cta-btn:hover{background:var(--crimson);transform:translateY(-1px)}
.cta-btn.gold{background:var(--gold);color:#3a2410;box-shadow:0 8px 20px rgba(224,168,62,.34)}
.menu-btn{display:none;margin-left:auto;background:none;border:0;font-size:1.5rem;color:var(--dark);cursor:pointer}

/* hero */
.hero{background:linear-gradient(160deg,var(--cream) 0%,var(--cream2) 60%,var(--blush) 100%);padding:56px 0 48px}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center}
.hero .pills{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}
.pill{background:#fff;border:1px solid var(--line);color:var(--crimson);font-size:.78rem;font-weight:700;padding:6px 14px;border-radius:22px}
.hero h1{font-size:2.75rem;font-weight:800;margin-bottom:16px}
.hero h1 em{color:var(--red);font-style:normal}
.hero .lead{font-size:1.12rem;margin-bottom:24px;color:#5a3f38}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.hero-img{background:radial-gradient(circle at 50% 40%,#fff 0%,var(--blush) 100%);border-radius:28px;padding:20px;border:1px solid var(--line);box-shadow:0 24px 60px rgba(120,40,40,.14)}
.guar-line{font-size:.9rem;font-weight:700;color:var(--dark)}
.guar-line b{color:var(--gold)}

/* sections */
.band{padding:60px 0}
.band.soft{background:var(--cream2)}
.band.soft-2{background:var(--cream)}
.band.dark{background:var(--dark);color:#f3e2da}
.band.dark h2,.band.dark h3{color:#fff}
.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:.76rem;font-weight:800;color:var(--red);margin-bottom:10px}
.band.dark .eyebrow{color:var(--gold)}
.sec-h{font-size:2.05rem;font-weight:800;margin-bottom:14px}
.sec-lead{max-width:720px;color:#6a4d45;margin-bottom:34px}
.band.dark .sec-lead{color:#d9c3ba}
.center{text-align:center}.center .sec-lead{margin-left:auto;margin-right:auto}

/* feature strip */
.feat{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.feat .f{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;text-align:center}
.feat .f .ic{font-size:1.7rem;margin-bottom:8px}
.feat .f h4{font-size:1rem;margin-bottom:6px}
.feat .f p{font-size:.9rem;color:#6a4d45}

/* cards / grid */
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px;box-shadow:0 10px 26px rgba(120,40,40,.06)}
.card h3{font-size:1.16rem;margin-bottom:8px}
.card p{font-size:.96rem;color:#5f453d}
.card .ic{font-size:1.9rem;margin-bottom:10px}

/* steps */
.steps{counter-reset:s;display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.steps .st{background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px 24px;position:relative}
.steps .st::before{counter-increment:s;content:counter(s);position:absolute;top:-16px;left:24px;width:36px;height:36px;background:var(--red);color:#fff;border-radius:50%;display:grid;place-items:center;font-weight:800;font-family:'Poppins'}
.steps .st h3{margin:6px 0 8px;font-size:1.1rem}
.steps .st p{font-size:.94rem;color:#5f453d}

/* ingredients list */
.inci{display:grid;gap:16px}
.inci .row{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px 24px;display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:start}
.inci .row .dot{width:46px;height:46px;border-radius:12px;background:var(--blush);display:grid;place-items:center;font-size:1.3rem}
.inci .row h3{font-size:1.12rem;margin-bottom:4px}
.inci .row p{font-size:.95rem;color:#5f453d}

/* reviews */
.revs{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.rev{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px}
.rev .stars{color:var(--gold);font-size:1.15rem;letter-spacing:2px;margin-bottom:10px}
.rev p{font-size:1.02rem;color:var(--ink);margin-bottom:14px;font-style:italic}
.rev .who{font-weight:700;font-size:.9rem;color:var(--dark)}
.band.dark .rev p,.band.dark .rev .who{color:var(--ink)}

/* pricing */
.prices{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:stretch}
.price{background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px 24px;text-align:center;position:relative;display:flex;flex-direction:column}
.price.best{border:2px solid var(--gold);box-shadow:0 18px 44px rgba(198,40,40,.16);transform:scale(1.03)}
.price .tag{position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:var(--gold);color:#3a2410;font-weight:800;font-size:.72rem;padding:5px 16px;border-radius:20px;text-transform:uppercase;letter-spacing:1px;white-space:nowrap}
.price.pop .tag{background:var(--red);color:#fff}
.price h3{font-size:1.2rem;margin-bottom:2px}
.price .sub{font-size:.86rem;color:#8a6a60;margin-bottom:14px}
.pack-img{object-fit:contain;height:190px;max-width:230px;margin:0 auto 12px}
.price.best .pack-img{max-width:250px}
.price .per{font-size:2.5rem;font-weight:800;color:var(--dark);font-family:'Poppins'}
.price .per small{font-size:.9rem;font-weight:600;color:#8a6a60}
.price .tot{font-size:.94rem;color:#6a4d45;margin:4px 0 16px}
.price .tot s{color:#b79a90}
.price .btn{margin-top:auto}
.ship{font-size:.8rem;color:#8a6a60;margin-top:10px}

/* generic prose page */
.page-head{background:linear-gradient(160deg,var(--cream2),var(--blush));padding:48px 0 40px;border-bottom:1px solid var(--line)}
.page-head .eyebrow{margin-bottom:8px}
.page-head h1{font-size:2.4rem;font-weight:800;max-width:820px}
.page-head p{max-width:720px;margin-top:12px;color:#6a4d45;font-size:1.08rem}
.crumb{font-size:.82rem;color:#8a6a60;margin-bottom:14px}
.crumb a{color:var(--crimson)}
.prose-wrap{max-width:820px;margin:0 auto;padding:52px 22px}
.prose-wrap h2{font-size:1.6rem;margin:34px 0 12px}
.prose-wrap h3{font-size:1.22rem;margin:26px 0 8px}
.prose-wrap p{margin-bottom:16px}
.prose-wrap ul,.prose-wrap ol{margin:0 0 16px 22px}
.prose-wrap li{margin-bottom:8px}
.keybox{background:var(--cream2);border-left:4px solid var(--gold);border-radius:10px;padding:20px 24px;margin:24px 0}
.keybox h3{margin-top:0}
.cmp-table{width:100%;border-collapse:collapse;margin:22px 0;font-size:.95rem}
.cmp-table th,.cmp-table td{border:1px solid var(--line);padding:12px 14px;text-align:left}
.cmp-table th{background:var(--dark);color:#fff;font-family:'Poppins'}
.cmp-table td.hl{background:#fdeee6;font-weight:600}
.checklist{list-style:none;margin-left:0!important}
.checklist li{padding-left:30px;position:relative}
.checklist li::before{content:"\2714";position:absolute;left:0;color:var(--red);font-weight:800}

/* faq */
.faq{max-width:820px;margin:0 auto}
.faq details{background:#fff;border:1px solid var(--line);border-radius:14px;margin-bottom:12px;padding:0 22px}
.faq summary{cursor:pointer;list-style:none;padding:18px 0;font-weight:700;font-family:'Poppins';display:flex;justify-content:space-between;gap:16px;font-size:1.04rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--red);font-size:1.5rem;line-height:1;transition:.2s}
.faq details[open] summary::after{content:"\00d7"}
.faq details p{padding:0 0 20px;color:#5f453d}

/* cta band */
.cta-band{background:linear-gradient(135deg,var(--crimson),var(--red));color:#fff;text-align:center;padding:56px 0}
.cta-band h2{color:#fff;font-size:2rem;margin-bottom:12px}
.cta-band p{max-width:640px;margin:0 auto 24px;color:#ffe6dd}
.cta-band .cta-btn{background:#fff;color:var(--crimson)}
.cta-band .cta-btn:hover{background:var(--gold);color:#3a2410}

/* trust pills */
.tpills{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:22px}
.tpills span{background:#fff;border:1px solid var(--line);border-radius:22px;padding:8px 16px;font-size:.84rem;font-weight:700;color:var(--dark)}
.band.dark .tpills span{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.16);color:#fff}

/* guarantee */
.guar{display:grid;grid-template-columns:auto 1fr;gap:28px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:20px;padding:32px}
.guar .seal{width:130px;height:130px;border-radius:50%;background:radial-gradient(circle,#fff6e6,var(--gold));border:6px solid var(--gold);display:grid;place-items:center;text-align:center;color:#3a2410;font-family:'Poppins';font-weight:800;line-height:1.1}
.guar .seal b{display:block;font-size:1.9rem}
.guar h3{font-size:1.4rem;margin-bottom:8px}

footer.site-foot{background:var(--dark);color:#d9c3ba;padding:48px 0 26px;margin-top:0}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:30px;padding-bottom:26px;border-bottom:1px solid rgba(255,255,255,.12)}
.foot-col h4{color:#fff;font-size:.95rem;margin-bottom:12px}
.foot-col a{display:block;color:#c9afa5;font-size:.9rem;margin-bottom:8px}
.foot-col a:hover{color:var(--gold)}
.foot-brand .logo{color:#fff}.foot-brand .logo span{color:var(--gold)}
.foot-brand p{font-size:.9rem;color:#c1a79d;margin-top:10px;max-width:280px}
.foot-fine{padding-top:20px;font-size:.78rem;color:#9c8178}
.foot-fine p{margin-bottom:8px}

@media(max-width:920px){
 .hero-grid,.grid-2{grid-template-columns:1fr}
 .feat,.grid-3,.steps,.revs,.prices{grid-template-columns:1fr}
 .foot-grid{grid-template-columns:1fr 1fr}
 .main-nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;background:#fff;border-bottom:1px solid var(--line);padding:14px 22px;gap:6px;align-items:flex-start}
 body.nav-open .main-nav{display:flex}
 .menu-btn{display:block}
 .nav-cta{display:none}
 .drop-m{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;padding:4px 0 4px 14px;min-width:0}
 .price.best{transform:none}
 .hero h1{font-size:2.1rem}
 .guar{grid-template-columns:1fr;text-align:center}.guar .seal{margin:0 auto}
}
