:root{
  --cream:#FBF3E7;
  --maroon:#6B1F2C;
  --maroon-2:#8C2A3A;
  --gold:#C9A227;
  --gold-light:#F3D9AE;
  --ink:#2E211B;
  --ink-soft:#6B5C50;
  --line:#E8DAC4;
  --radius:18px;
  --shadow: 0 10px 30px rgba(46,33,27,0.10);
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0; background:var(--cream); color:var(--ink);
  font-family:'Be Vietnam Pro', sans-serif; line-height:1.55;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%; display:block;}
.wrap{max-width:760px; margin:0 auto; padding:0 20px;}

.topbar{
  display:flex; align-items:center; gap:8px; font-size:12px; color:var(--ink-soft);
  padding:8px 20px; border-bottom:1px solid var(--line); background:#fff;
}
.topbar__tag{font-weight:600;}
.topbar__tag--muted{opacity:.7; font-weight:400;}
.topbar__dot{opacity:.4;}

.hero{
  position:relative; overflow:hidden;
  background:linear-gradient(180deg, var(--maroon) 0%, var(--maroon-2) 100%);
  color:var(--cream); padding:48px 0 56px; text-align:center;
}
.eyebrow{text-transform:uppercase; letter-spacing:.14em; font-size:12px; font-weight:700; color:var(--gold); margin:0 0 10px;}
.hero h1{font-size:clamp(24px,4.6vw,32px); font-weight:800; margin:0 0 14px; line-height:1.32;}
.hero__meta{font-size:13px; opacity:.75; margin:0;}

.btn{
  font-family:inherit; font-weight:700; font-size:15px; border-radius:999px;
  border:none; padding:15px 28px; cursor:pointer;
  transition:transform .15s ease, box-shadow .15s ease, background .15s ease;
}
.btn--primary{background:var(--gold); color:var(--maroon); box-shadow:0 8px 20px rgba(201,162,39,0.35);}
.btn--primary:hover{background:#B08E1F; transform:translateY(-1px);}
.btn--outline{background:transparent; color:var(--maroon); border:2px solid var(--maroon);}
.btn--outline:hover{background:var(--maroon); color:#fff;}
.btn--block{width:100%;}

main.wrap{padding-top:28px; padding-bottom:40px;}
.card{background:#fff; border-radius:var(--radius); box-shadow:var(--shadow); padding:26px 22px; margin-bottom:18px;}
.card h2{font-size:21px; font-weight:800; color:var(--maroon); margin:0 0 14px; line-height:1.3;}
.card p{margin:0 0 12px;}
.card p:last-child{margin-bottom:0;}

.author-card{
  display:flex; align-items:center; gap:14px; background:var(--gold-light);
  border-radius:14px; padding:14px 16px; margin:18px 0;
}
.author-card img{width:52px; height:52px; border-radius:50%; flex-shrink:0;}
.author-card strong{display:block; color:var(--maroon); font-size:14.5px;}
.author-card span{font-size:12.5px; color:var(--ink-soft);}

.pain-list{list-style:none; margin:14px 0 18px; padding:0;}
.pain-list li{position:relative; padding-left:26px; margin-bottom:9px; font-size:14.5px;}
.pain-list li::before{content:"↻"; position:absolute; left:0; top:0; color:var(--maroon-2); font-weight:800;}

.warn-banner{
  background:var(--gold-light); border-left:4px solid var(--gold);
  border-radius:10px; padding:14px 16px; font-size:14px; margin:16px 0;
}

.reveal-box{
  border:1.5px dashed var(--gold); border-radius:14px; padding:18px; margin:18px 0;
  background:var(--gold-light); text-decoration:none; color:var(--ink); display:block;
  transition:border-color .15s ease, background .15s ease;
}
.reveal-box:hover{border-color:var(--maroon); background:#F6E7CE;}
.reveal-box strong{color:var(--maroon);}

.product-detail{width:100%; border-collapse:collapse; margin:16px 0;}
.product-detail th, .product-detail td{text-align:left; padding:10px 12px; font-size:13.5px; border-bottom:1px solid var(--line);}
.product-detail th{color:var(--maroon); font-weight:700; width:40%;}

.ginseng-grid{display:grid; grid-template-columns:repeat(5,1fr); gap:10px; margin:16px 0;}
.ginseng-card{text-align:center; font-size:11px;}
.ginseng-card img{margin:0 auto 6px;}
.ginseng-card strong{display:block; color:var(--maroon); font-size:12px; margin-bottom:2px;}
.ginseng-card span{color:var(--ink-soft);}

.signs-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin:16px 0;}
.sign-card{text-align:center; background:var(--cream); border-radius:12px; padding:14px 8px;}
.sign-card img{margin:0 auto 8px; width:40px;}
.sign-card span{font-size:12.5px; color:var(--ink); font-weight:600;}

.checklist{list-style:none; margin:14px 0 20px; padding:0;}
.checklist li{position:relative; padding-left:26px; margin-bottom:8px; font-size:14.5px;}
.checklist li::before{content:"✓"; position:absolute; left:0; top:0; color:var(--maroon-2); font-weight:800;}

.stat-row{display:grid; grid-template-columns:repeat(2,1fr); gap:12px;}
.stat-box{background:var(--gold-light); border-radius:12px; padding:16px 10px; text-align:center;}
.stat-box strong{display:block; font-size:15px; color:var(--maroon); margin-bottom:2px;}
.stat-box span{font-size:12px; color:var(--ink-soft);}

.callout{background:var(--gold-light); border-left:4px solid var(--maroon-2); border-radius:10px; padding:14px 16px; font-size:14.5px;}

.discount-block{text-align:center;}
.discount-block__badge{
  display:inline-block; background:var(--maroon); color:var(--gold-light);
  font-weight:800; font-size:13px; padding:6px 16px; border-radius:999px; margin-bottom:10px;
}
.discount-block__price{font-size:34px; font-weight:800; color:var(--maroon); margin:6px 0;}
.discount-block__sold{font-size:13px; color:var(--ink-soft); margin-bottom:14px;}
.countdown{display:flex; justify-content:center; gap:10px; margin:14px 0;}
.countdown div{background:var(--maroon); color:#fff; border-radius:12px; padding:10px 14px; min-width:56px;}
.countdown span{display:block; font-size:22px; font-weight:800;}
.countdown small{display:block; font-size:10px; opacity:.75; text-transform:uppercase; letter-spacing:.05em;}

.multi-cta{display:flex; flex-direction:column; gap:10px; max-width:360px; margin:16px auto 0;}

.footer{text-align:center; font-size:12px; color:var(--ink-soft); padding:24px 20px 100px;}
.footer p{margin:0 0 6px;}
.footer__links a{color:var(--ink-soft);}

.sticky-cta{position:fixed; left:0; right:0; bottom:0; background:#fff; padding:12px 16px; box-shadow:0 -8px 24px rgba(0,0,0,0.08); z-index:50;}

@media (max-width:600px){
  .ginseng-grid{grid-template-columns:repeat(3,1fr);}
  .signs-grid{grid-template-columns:repeat(2,1fr);}
  .stat-row{grid-template-columns:1fr;}
}

@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto;}
  *{transition:none !important;}
}
button:focus-visible, a:focus-visible, input:focus-visible{outline:3px solid var(--maroon-2); outline-offset:2px;}
