@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&family=Source+Sans+3:wght@400;500;600;700&display=swap');
:root{
  --bg:#0e0b0a;
  --bg-soft:#171210;
  --paper:#f8f2e8;
  --cream:#f3eadb;
  --ink:#241d18;
  --text:#e8decd;
  --muted:#cdbfa9;
  --gold:#c79a45;
  --gold-soft:#dfbe7b;
  --bronze:#8d6730;
  --line:rgba(215,185,126,.26);
  --panel:rgba(22,17,14,.8);
  --shadow:0 18px 40px rgba(0,0,0,.28);
  --max:1140px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font:18px/1.7 'Source Sans 3',Arial,sans-serif}
a{color:#765321}
a:hover{text-decoration:none}
img{max-width:100%;display:block}
h1,h2,h3,blockquote,.brand,.quote,.stat b{font-family:'Cormorant Garamond',Georgia,serif;line-height:1.06;margin:0 0 .45em}
h1{font-size:clamp(3rem,7vw,5.8rem);font-weight:600;letter-spacing:-.035em}
h2{font-size:clamp(2rem,4vw,3.3rem);font-weight:600;letter-spacing:-.025em}
h3{font-size:1.35rem;font-weight:600}
p{margin:0 0 1.15rem}
.container{width:min(var(--max),calc(100% - 44px));margin:auto}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;background:#fff;padding:12px;z-index:30}
.site-header{position:sticky;top:0;z-index:50;background:rgba(13,10,9,.94);backdrop-filter:blur(8px);border-bottom:1px solid rgba(223,190,123,.18)}
.nav{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;gap:12px;align-items:center;text-decoration:none;color:var(--paper);font-size:1.05rem;font-weight:700;letter-spacing:.03em;line-height:1.05;text-transform:uppercase}
.brand-mark{border:1px solid var(--gold);color:var(--gold-soft);border-radius:50%;width:42px;height:42px;display:grid;place-items:center;font-size:1.2rem;background:rgba(255,255,255,.03)}
.navlinks{display:flex;gap:28px;align-items:center}
.navlinks a{font-weight:600;text-decoration:none;font-size:.98rem;color:var(--muted)}
.navlinks a[aria-current=page]{color:#fff;border-bottom:2px solid var(--gold);padding-bottom:5px}
.nav-toggle{display:none}
.btn{display:inline-flex;justify-content:center;align-items:center;gap:8px;padding:13px 23px;border-radius:999px;border:1px solid var(--gold);background:var(--gold);color:#1d140a;text-decoration:none;font-weight:700;line-height:1.2;transition:transform .15s,background .15s,color .15s,border-color .15s;cursor:pointer;box-shadow:var(--shadow)}
.btn:hover{background:#ddb465;border-color:#ddb465;color:#1d140a;transform:translateY(-1px)}
.btn-outline{background:transparent;color:var(--text);border-color:rgba(223,190,123,.65);box-shadow:none}.btn-outline:hover{background:rgba(255,255,255,.06);color:#fff;border-color:var(--gold-soft)}
.eyebrow{font-size:.82rem;text-transform:uppercase;letter-spacing:.23em;color:var(--gold);font-weight:700;margin-bottom:10px}
.hero{position:relative;color:#fff;background:
linear-gradient(180deg,rgba(10,8,7,.78),rgba(10,8,7,.88)),
radial-gradient(circle at 88% 24%,rgba(233,183,94,.16),transparent 30%),
radial-gradient(circle at 80% 68%,rgba(206,143,36,.11),transparent 34%),
#0f0c0b;overflow:hidden}
.hero:before{content:'';position:absolute;inset:0;background:url('assets/scene.webp') center/cover no-repeat;opacity:.12;mix-blend-mode:screen;pointer-events:none}
.hero-inner{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center;padding:96px 0 106px}
.hero p{max-width:640px;font-size:1.09rem;color:var(--muted)}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
.hero-tagline{font:600 clamp(1.9rem,3.8vw,3rem)/1.05 'Cormorant Garamond',Georgia,serif;color:var(--gold-soft);max-width:500px;margin:0 0 16px}
.cover-card{justify-self:center;width:min(430px,100%)}
.cover-frame{background:rgba(255,255,255,.03);border:1px solid rgba(223,190,123,.2);padding:16px;border-radius:26px;box-shadow:0 30px 60px rgba(0,0,0,.35)}
.cover-frame img{border-radius:18px;box-shadow:0 20px 40px rgba(0,0,0,.38)}
.cover-caption{font-size:.87rem;color:var(--muted);margin-top:14px;text-align:center}
.section{padding:84px 0}
.section-dark{background:var(--bg);color:var(--text)}
.section-soft{background:#efe4d3}
.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.pill{display:inline-block;background:#efe1c9;padding:5px 11px;border-radius:999px;color:#74531f;font-size:.8rem;font-weight:700}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.card{background:#fffdfa;border:1px solid rgba(131,96,40,.18);padding:28px;border-radius:20px;box-shadow:0 8px 28px rgba(37,28,19,.06)}
.section-dark .card{background:rgba(255,255,255,.04);border-color:rgba(223,190,123,.17);box-shadow:none;color:var(--text)}
.card h3{margin:6px 0 10px}
.card p{font-size:.97rem;color:#5c5145}
.section-dark .card p{color:var(--muted)}
.small{font-size:.92rem}.muted{color:#72675b}
.section-dark .muted{color:var(--muted)}
.quote{border-left:3px solid var(--gold);padding:14px 0 14px 24px;font-size:1.5rem;line-height:1.45;color:#2b221b}
.section-dark .quote{color:var(--paper)}
.footer{background:#0b0908;color:var(--muted);padding:42px 0;border-top:1px solid rgba(223,190,123,.12)}
.footer a{color:var(--muted)}
.footer-inner{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap}
.page-header{position:relative;background:
linear-gradient(180deg,rgba(12,9,8,.74),rgba(12,9,8,.82)),
url('assets/scene.webp') center/cover no-repeat;
color:#fff;padding:76px 0 64px;border-bottom:1px solid rgba(223,190,123,.2)}
.page-header p{max-width:740px;color:var(--muted)}
.page-header h1{margin-bottom:.2em}
.mini-stat{display:flex;gap:26px;flex-wrap:wrap;margin-top:22px}.mini-stat b{font-size:2rem;color:#fff;margin-right:5px}
.content-narrow{max-width:860px}
.content-narrow h2{margin-top:36px}
.spaced-list li{margin-bottom:10px}
.book-layout{display:grid;grid-template-columns:minmax(260px,.85fr) 1.15fr;gap:52px;align-items:start}
.book-meta{display:grid;gap:14px}
.meta-panel{background:#fffdfa;border:1px solid rgba(131,96,40,.18);padding:24px;border-radius:20px;box-shadow:0 8px 28px rgba(37,28,19,.06)}
.meta-panel p{margin-bottom:.85rem}
.cover-spread{margin-top:30px;background:#130f0d;border-radius:22px;padding:18px;box-shadow:0 18px 36px rgba(0,0,0,.2)}
.cover-spread img{border-radius:12px}
.lead-list{padding-left:20px}.lead-list li{margin-bottom:10px}
.guide-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:32px;align-items:start}
.side{position:sticky;top:100px;border:1px solid rgba(131,96,40,.18);border-radius:16px;background:#fffdfa;padding:18px;max-height:calc(100vh - 116px);overflow:auto;box-shadow:0 8px 28px rgba(37,28,19,.06)}
.side h3{font:700 .82rem 'Source Sans 3',Arial,sans-serif;text-transform:uppercase;letter-spacing:.12em;margin:0 0 12px}
.chapter-jump{display:block;padding:8px 10px;color:var(--ink);text-decoration:none;border-radius:8px;font-size:.9rem;line-height:1.42}.chapter-jump:hover,.chapter-jump.active{background:#efe4d3}
.filters{display:grid;grid-template-columns:1fr 210px;gap:12px;margin-bottom:10px}.filters input,.filters select{border:1px solid #ceb58d;background:white;border-radius:12px;padding:12px;font:inherit;width:100%;color:var(--ink)}
.filter-note{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:space-between;margin-bottom:25px;color:#685d51;font-size:.92rem}.filter-note .btn{padding:8px 14px;font-size:.84rem;border-radius:999px}
.chapter-block{margin:0 0 31px;scroll-margin-top:98px}.chapter-block>h2{font-size:1.5rem;background:#ede0cb;padding:16px 20px;margin:0;border:1px solid rgba(131,96,40,.18);border-bottom:0;border-radius:16px 16px 0 0}.ref-item{background:#fffdfa;padding:17px 20px;border:1px solid rgba(131,96,40,.18);border-top:0}.ref-item:last-child{border-radius:0 0 16px 16px}.ref-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px}.ref-id{color:#8c6327;font-weight:700;font-size:.77rem;letter-spacing:.07em}.access{font-size:.73rem;padding:3px 8px;border-radius:20px;background:#e4ecdf;color:#3b624e}.access.index{background:#f4ead6;color:#7e5a24}.access.context{background:#eee6e7;color:#845f64}.access.passage{background:#e4edf2;color:#355d73}.ref-item p{font-size:.95rem;line-height:1.63;margin-bottom:10px}.source-link{font-weight:700;font-size:.89rem}.access-note{color:#6d6358;font-size:.82rem;margin-left:9px}.extra-links{font-size:.84rem;margin-top:5px}.notice{background:#f8f0df;border:1px solid rgba(199,154,69,.3);border-left:4px solid var(--gold);padding:18px 20px;margin:0 0 29px;font-size:.95rem;border-radius:14px}.empty{padding:38px;text-align:center;background:#fffdfa;border:1px solid rgba(131,96,40,.18);border-radius:18px}
.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:26px}.stat{background:#fffdfa;border:1px solid rgba(131,96,40,.18);padding:22px;border-radius:18px;text-align:center}.stat b{display:block;font-size:2rem;color:#6a4b1e}
@media(max-width:960px){
  .hero-inner,.split,.book-layout{grid-template-columns:1fr;gap:34px}
  .cards,.stat-grid{grid-template-columns:1fr 1fr}
  .guide-layout{grid-template-columns:1fr}
  .side{position:relative;top:auto;max-height:none}
  .side .chapter-list{display:grid;grid-template-columns:1fr 1fr;gap:4px}
}
@media(max-width:620px){
  body{font-size:17px}
  .nav{min-height:72px}.nav-toggle{display:block;border:1px solid rgba(223,190,123,.25);background:#17110f;color:#fff;border-radius:8px;padding:7px 12px;font-size:1.4rem}
  .navlinks{display:none;position:absolute;top:72px;left:0;right:0;flex-direction:column;align-items:flex-start;gap:0;background:#120e0c;border-bottom:1px solid rgba(223,190,123,.18);padding:12px 21px}.navlinks.open{display:flex}.navlinks a{padding:13px 0;width:100%}
  .hero-inner{padding:64px 0 74px}.section{padding:54px 0}.cards,.stat-grid{grid-template-columns:1fr}.filters{grid-template-columns:1fr}.side .chapter-list{grid-template-columns:1fr}.footer-inner{display:block}.page-header{padding:56px 0}.container{width:calc(100% - 34px)}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Official cover imagery v3: backgrounds never contain typography. */
.hero:before { background-image: url('assets/scene.webp'); opacity:.18; mix-blend-mode:normal; }
.hero { background: linear-gradient(90deg,rgba(8,6,5,.95) 0%,rgba(12,8,6,.86) 47%,rgba(15,10,7,.70) 100%), #0d0908; }
.page-header { background-image:linear-gradient(90deg,rgba(8,6,5,.91),rgba(15,10,7,.70)),url('assets/scene.webp');background-position:center;background-size:cover; }
.cover-frame img { width:100%;height:auto;aspect-ratio:1381/2048;object-fit:cover; }
.cover-spread {background:#1b1410;padding:18px;margin-top:24px;}
.cover-spread h3 {color:#e7d4b4;font-size:1.35rem;margin:0 0 12px;text-align:center;}
.cover-spread img {width:100%;height:auto;object-fit:contain;}
.visual-pause {background:#17100c;padding:36px 0 52px;}
.full-art-figure {margin:0 auto;max-width:1020px;border:1px solid rgba(223,190,123,.23);border-radius:18px;overflow:hidden;box-shadow:var(--shadow);}
.full-art-figure img {width:100%;height:auto;}
.full-art-figure figcaption {text-align:center;color:#cdbfa9;font-size:.9rem;padding:10px;}
.artwork-details {color:#f2e5d0;max-width:1020px;margin:auto;}
.artwork-details summary {padding:18px 22px;cursor:pointer;border:1px solid rgba(223,190,123,.28);border-radius:12px;color:#e5bf80;font-weight:600;}
.artwork-details[open] summary {border-radius:12px 12px 0 0;}
.artwork-details img {width:100%;height:auto;border-radius:0 0 12px 12px;}
