
:root{
  --bg:#0b0b0d;
  --bg-soft:#111215;
  --card:#14161b;
  --text:#f4ecdc;
  --muted:#c7bea9;
  --line:#2c2f36;
  --gold:#b78b4a;
  --gold-soft:#d7bf85;
  --gold-deep:#8f6a30;
  --white:#ffffff;
  --max:1180px;
  --radius:24px;
  --shadow:0 12px 40px rgba(0,0,0,.25);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:
    radial-gradient(circle at top left, rgba(183,139,74,.10), transparent 35%),
    radial-gradient(circle at bottom right, rgba(183,139,74,.06), transparent 30%),
    var(--bg);
  color:var(--text);
  font:16px/1.65 system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.container{width:min(var(--max),calc(100% - 2rem));margin:0 auto}
.topbar{
  position:sticky; top:0; z-index:40;
  backdrop-filter:blur(18px);
  background:rgba(11,11,13,.78);
  border-bottom:1px solid rgba(255,255,255,.06);
}
.nav{
  display:flex; align-items:center; justify-content:space-between; gap:1rem;
  min-height:74px;
}
.brand{
  display:flex; align-items:center; gap:.85rem; font-weight:800; letter-spacing:.04em;
}
.brand-mark{
  width:42px;height:42px;border-radius:12px;border:1px solid rgba(183,139,74,.5);
  display:grid; place-items:center;
  color:var(--gold-soft);
  background:linear-gradient(180deg, rgba(183,139,74,.12), rgba(183,139,74,.04));
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.03);
}
.nav-links{display:flex; gap:1rem; flex-wrap:wrap; align-items:center}
.nav-links a{
  color:var(--muted); padding:.55rem .9rem; border-radius:999px; transition:.2s ease;
}
.nav-links a:hover{background:rgba(255,255,255,.04); color:var(--white)}
.nav-cta{
  display:inline-flex; align-items:center; justify-content:center;
  padding:.9rem 1.15rem; border-radius:999px; font-weight:700;
  background:linear-gradient(180deg, var(--gold-soft), var(--gold));
  color:#18120b; box-shadow:0 10px 22px rgba(183,139,74,.18);
}
.hero{
  padding:5rem 0 3rem;
}
.hero-grid{
  display:grid; grid-template-columns:1.2fr .8fr; gap:2rem; align-items:center;
}
.hero-card,.panel,.book-card,.info-card,.faq-item{
  background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.01));
  border:1px solid rgba(255,255,255,.08);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
}
.hero-copy{
  padding:2.4rem;
}
.kicker{
  display:inline-flex; gap:.5rem; align-items:center;
  color:var(--gold-soft); font-weight:700; letter-spacing:.08em;
  text-transform:uppercase; font-size:.84rem;
  margin-bottom:1rem;
}
h1,h2,h3{
  margin:0 0 1rem; line-height:1.08; letter-spacing:-.025em;
}
h1{font-size:clamp(2.2rem,5vw,4.4rem)}
h2{font-size:clamp(1.6rem,3vw,2.5rem)}
h3{font-size:1.35rem}
.lead{font-size:1.08rem; color:var(--muted); max-width:60ch}
.cta-row{display:flex; gap:.9rem; flex-wrap:wrap; margin-top:1.4rem}
.btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:1rem 1.15rem; border-radius:999px; font-weight:700; transition:.2s ease;
}
.btn-primary{
  color:#18120b;
  background:linear-gradient(180deg, var(--gold-soft), var(--gold));
}
.btn-secondary{
  color:var(--text);
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.02);
}
.btn:hover{transform:translateY(-1px)}
.hero-visual{padding:1.2rem}
.frame{
  overflow:hidden; border-radius:20px; border:1px solid rgba(255,255,255,.08);
  background:#0d0f12;
}
.metrics{
  display:grid; grid-template-columns:repeat(3,1fr); gap:.8rem; margin-top:1.5rem;
}
.metric{
  border:1px solid rgba(255,255,255,.06); border-radius:18px; padding:1rem;
  background:rgba(255,255,255,.02);
}
.metric strong{display:block;font-size:1.45rem}
section{padding:1.8rem 0}
.section-head{display:flex; justify-content:space-between; align-items:end; gap:1rem; margin-bottom:1.2rem}
.grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:1rem}
.grid-2{display:grid; grid-template-columns:repeat(2,1fr); gap:1rem}
.book-card{overflow:hidden}
.book-cover{aspect-ratio:3/4; object-fit:cover; width:100%}
.book-body{padding:1.25rem}
.book-meta{
  display:inline-block; margin-bottom:.55rem; font-size:.84rem; color:var(--gold-soft);
  text-transform:uppercase; letter-spacing:.08em;
}
.book-body p,.panel p,.info-card p,.faq-item p, .page-intro p{color:var(--muted); margin:.5rem 0 0}
.list{
  margin:1rem 0 0; padding-left:1.1rem; color:var(--muted)
}
.panel{padding:1.5rem}
.info-card{padding:1.4rem}
.quote{
  font-size:1.12rem; color:var(--text); font-weight:600;
}
.footer{
  margin-top:3rem; border-top:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.02);
}
.footer-grid{
  display:grid; grid-template-columns:1.2fr .8fr .8fr; gap:1rem;
  padding:2rem 0;
}
.footer small,.muted{color:var(--muted)}
.footer-links{display:grid; gap:.5rem}
.page-hero{padding:3.4rem 0 1.6rem}
.page-intro{max-width:760px}
.book-layout{
  display:grid; grid-template-columns:.86fr 1.14fr; gap:1.25rem; align-items:start;
}
.cover-sticky{position:sticky; top:96px}
.badges{display:flex; gap:.6rem; flex-wrap:wrap; margin:.75rem 0 1rem}
.badge{
  padding:.45rem .75rem; border-radius:999px; border:1px solid rgba(183,139,74,.30);
  color:var(--gold-soft); background:rgba(183,139,74,.06); font-size:.92rem; font-weight:600;
}
.split{display:grid; grid-template-columns:repeat(2,1fr); gap:1rem}
.faq-list{display:grid; gap:.9rem}
.faq-item{padding:1.1rem 1.2rem}
.notice{
  padding:1rem 1.2rem; border-left:3px solid var(--gold);
  border-radius:18px; background:rgba(183,139,74,.08); color:var(--muted);
}
.breadcrumbs{
  display:flex; flex-wrap:wrap; gap:.5rem; color:var(--muted); margin-bottom:1rem;
}
.breadcrumbs a:hover{color:var(--white)}
.text-columns{columns:2; column-gap:2rem}
.card-link{display:block}
hr.sep{border:none; border-top:1px solid rgba(255,255,255,.08); margin:1.6rem 0}
@media (max-width: 980px){
  .hero-grid,.book-layout,.footer-grid,.grid-3,.grid-2,.split{grid-template-columns:1fr}
  .cover-sticky{position:relative; top:auto}
  .text-columns{columns:1}
}
@media (max-width: 760px){
  .nav{padding:.6rem 0; align-items:flex-start}
  .nav-links{display:none}
  h1{font-size:2.25rem}
  .hero-copy,.panel,.info-card,.book-body{padding:1.15rem}
  .metrics{grid-template-columns:1fr}
  .container{width:min(var(--max),calc(100% - 1rem))}
}
