:root{
  --black:#0A0A0A;
  --panel:#141414;
  --panel-line:#242424;
  --pink:#E56997;
  --pink-deep:#C94E76;
  --white:#F5F5F3;
  --muted:#8F8B8C;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  background:var(--black);
  color:var(--white);
  font-family:'Montserrat',sans-serif;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
.wrap{max-width:720px;margin:0 auto;padding:0 24px;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}

/* ---------- SITE HEADER (logo + nav, on every page incl. home) ---------- */
.site-header{
  padding:20px 0;
  border-bottom:1px solid var(--panel-line);
}
.site-header .header-wrap{
  max-width:1180px;
  margin:0 auto;
  padding:0 32px;
  display:flex;
  justify-content:space-between;
  align-items:center;
}
.site-header .brand-logo{height:38px;display:block;}
.site-header nav{display:flex;align-items:center;}
.site-header nav a.nav-link{
  font-size:14px;
  color:var(--muted);
  font-weight:600;
  margin-left:26px;
}
.site-header nav a.nav-link:hover{color:var(--pink);}

/* ---------- HERO (split-screen, full viewport on desktop) ---------- */
.hero-viewport{
  min-height:calc(100vh - 80px);
  display:flex;
  align-items:center;
  max-width:1180px;
  margin:0 auto;
  padding:48px 32px;
}
.hero-grid{
  display:grid;
  grid-template-columns:1.1fr 0.9fr;
  gap:56px;
  align-items:center;
  width:100%;
}
.hero-left{max-width:560px;}
.hero-cta-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
.hero-price-note{font-size:13px;color:var(--muted);}
.hero-right{display:flex;justify-content:center;}
.hero-right img{
  width:100%;
  max-width:320px;
  border-radius:8px;
  box-shadow:0 30px 70px -15px rgba(229,105,151,0.25), 0 0 0 1px var(--panel-line);
}

@media (max-width:900px){
  .hero-viewport{min-height:auto;padding:32px 24px 44px;}
  .hero-grid{grid-template-columns:1fr;gap:32px;}
  .hero-right{order:-1;}
  .hero-right img{max-width:220px;}
  .hero-left{max-width:none;}
}
@media (max-width:480px){
  .site-header .header-wrap{padding:0 20px;}
  .site-header .brand-logo{height:30px;}
}

/* ---------- TYPOGRAPHY ---------- */
.eyebrow{
  font-size:12px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--pink);font-weight:700;margin-bottom:18px;
}
h1{font-size:clamp(30px,7vw,44px);font-weight:800;letter-spacing:-0.01em;line-height:1.12;margin-bottom:18px;}
h1 .accent{color:var(--pink);}
h2{font-size:clamp(24px,5vw,32px);font-weight:800;margin-bottom:18px;letter-spacing:-0.01em;}
h3{font-size:19px;font-weight:700;margin-bottom:10px;}
p{font-size:16px;color:#D9D6D4;margin-bottom:14px;}
strong{color:var(--white);}
.sub{font-size:17px;color:#D9D6D4;font-weight:400;max-width:520px;margin-bottom:28px;}

/* ---------- SECTION GENERIC (home/landing) ---------- */
section{padding:52px 0;border-bottom:1px solid var(--panel-line);}
.kicker{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--pink);font-weight:700;margin-bottom:14px;}

/* ---------- POSTS / PAGES CONTENT ---------- */
.post-header{padding:36px 0 10px;}
.post-meta{font-size:12px;color:var(--muted);margin-bottom:14px;text-transform:uppercase;letter-spacing:.08em;}
.post-content{padding:10px 0 30px;}
.post-content p{margin-bottom:16px;}
.post-content h2{margin-top:32px;}
.post-content img{border-radius:4px;margin:20px 0;}
.post-content a{color:var(--pink);text-decoration:underline;}

/* ---------- ARCHIVE / BLOG LIST ---------- */
.article-list a.article-row{
  display:block;padding:20px 0;border-bottom:1px solid var(--panel-line);color:var(--white);
}
.article-list a.article-row .title{font-size:18px;font-weight:700;}
.article-list a.article-row .date{font-size:12px;color:var(--muted);display:block;margin-top:6px;}

/* ---------- AD / AFFILIATE SLOT ---------- */
.ad-slot{
  background:var(--panel);border:1px solid var(--panel-line);border-radius:4px;
  padding:16px;margin:24px 0;font-size:13px;color:var(--muted);
}

/* ---------- EMAIL GATE ---------- */
.locked-fade{position:relative;max-height:70px;overflow:hidden;color:#D9D6D4;}
.gate{
  background:var(--panel);border:1px solid var(--panel-line);border-radius:6px;
  padding:28px;margin:24px 0;text-align:center;
}
.gate p{color:#D9D6D4;margin-bottom:16px;}
.gate input[type=email]{
  width:100%;padding:12px 14px;border-radius:3px;border:1px solid var(--panel-line);
  background:#0A0A0A;color:var(--white);font-family:inherit;margin-bottom:12px;
}
.gate button{
  background:var(--pink);color:#0A0A0A;border:none;font-weight:700;
  padding:14px 24px;border-radius:3px;font-family:inherit;cursor:pointer;width:100%;
}
.gate button:hover{background:var(--pink-deep);}
.error{color:var(--pink);font-size:13px;margin-bottom:12px;}

/* ---------- MODULE / VAULT BLOCKS (reused on home + can reuse in posts) ---------- */
.module{display:flex;gap:18px;padding:20px 0;border-top:1px solid var(--panel-line);}
.module:first-of-type{border-top:none;}
.module-num{font-size:13px;font-weight:800;color:var(--pink);min-width:28px;padding-top:3px;}
.module-title{font-size:17px;font-weight:700;margin-bottom:6px;}
.module-desc{font-size:14.5px;color:var(--muted);}

.vault-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px;}
.vault-card{background:var(--panel);border:1px solid var(--panel-line);border-radius:4px;padding:16px;}
.vault-card .range{font-size:11px;color:var(--pink);font-weight:700;letter-spacing:.06em;margin-bottom:6px;}
.vault-card .name{font-size:14.5px;font-weight:700;margin-bottom:4px;}
.vault-card .num{font-size:12px;color:var(--muted);}

.get-list{list-style:none;margin-top:16px;}
.get-list li{display:flex;gap:12px;padding:12px 0;border-top:1px solid var(--panel-line);font-size:15px;color:#D9D6D4;}
.get-list li:first-child{border-top:none;}
.get-list .mark{color:var(--pink);font-weight:800;}

.split{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:10px;}
.split-col{padding:18px;border-radius:4px;background:var(--panel);border:1px solid var(--panel-line);}
.split-col.no{opacity:.7;}
.split-title{font-size:13px;font-weight:800;letter-spacing:.04em;margin-bottom:12px;}
.split-title.yes{color:var(--pink);}
.split-col ul{list-style:none;font-size:14px;color:#CFCBC9;}
.split-col li{margin-bottom:8px;padding-left:16px;position:relative;}
.split-col li::before{content:"—";position:absolute;left:0;color:var(--muted);}

.faq-item{border-top:1px solid var(--panel-line);padding:18px 0;}
.faq-item:first-of-type{border-top:none;}
.faq-q{font-size:15.5px;font-weight:700;margin-bottom:8px;}
.faq-a{font-size:14.5px;color:var(--muted);}

/* ---------- HERO / VAULT COUNTER / PRICE (home only) ---------- */
.who-picker{margin-bottom:32px;}
.who-label{font-size:12px;color:var(--muted);margin-bottom:10px;}
.who-pills{display:flex;gap:8px;flex-wrap:wrap;}
.who-pill{
  font-family:'Montserrat',sans-serif;font-size:13px;font-weight:600;background:var(--panel);
  border:1px solid var(--panel-line);color:#D9D6D4;padding:9px 16px;border-radius:20px;cursor:pointer;
  transition:all .15s ease;
}
.who-pill:hover{border-color:var(--pink);}
.who-pill.active{background:var(--pink);border-color:var(--pink);color:#0A0A0A;}

.cover-shot{display:flex;justify-content:center;margin-bottom:32px;}
.cover-shot img{width:180px;border-radius:6px;box-shadow:0 24px 60px -12px rgba(229,105,151,0.25), 0 0 0 1px var(--panel-line);}

.vault-counter{background:var(--panel);border:1px solid var(--panel-line);border-radius:4px;padding:22px 24px;margin-bottom:28px;}
.vault-counter .row{display:flex;justify-content:space-between;align-items:baseline;}
.vault-counter .label{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:600;}
.vault-counter .count{font-size:38px;font-weight:900;letter-spacing:-0.02em;font-variant-numeric:tabular-nums;}
.vault-counter .count .taken{color:var(--pink);}
.vault-counter .count .slash{color:var(--muted);font-weight:400;}
.vault-counter .bar{margin-top:14px;height:6px;background:#242424;border-radius:3px;overflow:hidden;}
.vault-counter .bar-fill{height:100%;width:26%;background:var(--pink);}
.vault-counter .fine{margin-top:12px;font-size:13px;color:var(--muted);}

.price-row{display:flex;align-items:baseline;gap:16px;margin-bottom:8px;flex-wrap:wrap;}
.price-now{font-size:44px;font-weight:900;color:var(--pink);}
.price-was{font-size:20px;color:var(--muted);text-decoration:line-through;}
.price-tag{font-size:13px;color:var(--muted);}
.price-clarify{font-size:13px;color:var(--muted);margin-bottom:24px;max-width:480px;}

.cta{
  display:inline-block;background:var(--pink);color:#0A0A0A;font-weight:700;font-size:16px;
  padding:16px 30px;border-radius:3px;letter-spacing:.01em;transition:background .15s ease;
}
.cta:hover{background:var(--pink-deep);}
.cta-note{font-size:12px;color:var(--muted);margin-top:10px;}

.final{text-align:center;padding:64px 0 72px;border-bottom:none;}
.final h2{font-size:clamp(26px,6vw,36px);}
.final .sub{margin:0 auto 30px;}

/* ---------- FOOTER ---------- */
.site-footer{padding:30px 0;text-align:center;font-size:12px;color:var(--muted);}

@media (max-width:520px){
  .vault-grid,.split{grid-template-columns:1fr;}
  .price-now{font-size:36px;}
}
