
:root{
  --bg:#070707;--panel:#111;--panel2:#151515;--text:#eee;--muted:#aaa;
  --red:#b40018;--red2:#e21a32;--line:#292929;--max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;line-height:1.65}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.site-header{position:sticky;top:0;z-index:20;background:rgba(5,5,5,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:15px 5vw}
.logo{font-weight:900;letter-spacing:.08em;font-size:1.05rem}
.logo span{color:var(--red2)}
nav{display:flex;gap:22px;align-items:center}
nav a{color:#bbb;font-size:.92rem}
nav a:hover,nav a.active{color:#fff}
nav a.active{border-bottom:2px solid var(--red2);padding-bottom:4px}
.menu-toggle{display:none;background:none;border:0;color:#fff;font-size:1.7rem}
.hero{min-height:74vh;display:grid;place-items:center;position:relative;overflow:hidden;
background:radial-gradient(circle at 75% 35%,#2a080d 0,#100307 22%,#070707 58%),linear-gradient(135deg,#050505,#15070a)}
.hero:after{content:"";position:absolute;inset:0;opacity:.14;background-image:repeating-linear-gradient(120deg,transparent 0 90px,#fff 91px 92px,transparent 93px 180px);pointer-events:none}
.hero-content{position:relative;z-index:2;width:min(760px,90%);padding:80px 0}
.eyebrow{font-size:.75rem;letter-spacing:.22em;color:#d51a30;font-weight:800;margin:0 0 12px;text-transform:uppercase}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.05;margin:.2em 0 .45em}
h1{font-size:clamp(3.4rem,9vw,7rem);text-transform:uppercase}
h2{font-size:clamp(2rem,5vw,3.3rem)}
h3{font-size:1.5rem}
em{color:var(--red2);font-style:normal}
.hero-copy{font-size:1.15rem;max-width:600px;color:#cfcfcf}
.buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.button{display:inline-block;background:var(--red);border:1px solid var(--red);padding:12px 20px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:.8rem}
.button:hover{background:var(--red2)}
.button-ghost{background:transparent;border-color:#666}
.section{max-width:var(--max);margin:auto;padding:80px 5vw}
.intro{text-align:center;max-width:900px}
.intro p:last-child{color:#bbb;font-size:1.08rem}
.section-heading{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:28px}
.text-link{color:#ddd;font-weight:700}
.text-link:hover{color:var(--red2)}
.book-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.book-card{background:var(--panel);border:1px solid var(--line);padding:14px;transition:.2s}
.book-card:hover{transform:translateY(-4px);border-color:#555}
.book-cover{width:100%;aspect-ratio:2/3;object-fit:cover;background:#000}
.book-card h3{margin:16px 4px 4px}
.book-card p{margin:0 4px;color:#aaa;font-size:.9rem}
.dark-panel{max-width:none;background:linear-gradient(100deg,#16070a,#080808);border-top:1px solid #241014;border-bottom:1px solid #241014}
.dark-panel>div{max-width:var(--max);margin:auto;padding:80px 5vw}
.counter-wrap{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);margin-top:40px;border:1px solid var(--line)}
.counter{background:#0d0d0d;padding:28px;text-align:center}
.counter-number{font:900 2.6rem Georgia,serif;color:var(--red2)}
.counter small{display:block;color:#999;text-transform:uppercase;letter-spacing:.16em}
.newsletter{background:#0f0f0f;border:1px solid var(--line);padding:34px;margin-top:40px}
.newsletter form{display:flex;gap:10px;max-width:700px}
.newsletter input{flex:1;min-width:0;background:#050505;border:1px solid #444;color:#fff;padding:13px}
.page-hero{padding:90px 5vw 60px;max-width:var(--max);margin:auto;border-bottom:1px solid var(--line)}
.page-hero h1{font-size:clamp(3rem,7vw,5.5rem)}
.page-hero p:last-child{color:#aaa;max-width:720px;font-size:1.08rem}
.book-list{display:grid;gap:25px}
.book-large{display:grid;grid-template-columns:190px 1fr;gap:28px;background:var(--panel);border:1px solid var(--line);padding:18px}
.book-cover.tall{aspect-ratio:2/3}
.book-large p{color:#aaa}
.split{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.quote{font:italic 1.8rem Georgia,serif;color:#ddd;border-left:3px solid var(--red);padding-left:25px}
.story-columns{display:grid;grid-template-columns:repeat(2,1fr);gap:25px}
.story-columns>div{background:var(--panel);border:1px solid var(--line);padding:25px}
ul{padding-left:20px;color:#bbb}
li{margin:7px 0}
.special{border-color:#4d121a;background:linear-gradient(135deg,#14070a,#0c0c0c)}
.coming-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:25px}
.coming-card{background:var(--panel);border:1px solid var(--line);padding:30px}
.coming-card h2{color:#eee}
.mini-label{color:var(--red2);text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;font-weight:800}
footer{border-top:1px solid var(--line);padding:35px 5vw;color:#777}
.footer-inner{max-width:var(--max);margin:auto;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.notice{font-size:.85rem;color:#777;margin-top:10px}
@media(max-width:760px){
 nav{display:none;position:absolute;left:0;right:0;top:64px;background:#080808;border-bottom:1px solid var(--line);padding:15px 5vw;flex-direction:column;align-items:flex-start}
 nav.open{display:flex}
 .menu-toggle{display:block}
 .book-grid,.story-columns,.coming-grid,.split{grid-template-columns:1fr}
 .book-large{grid-template-columns:120px 1fr;gap:18px}
 .section{padding-top:55px;padding-bottom:55px}
 .newsletter form{flex-direction:column}
 .hero{min-height:68vh}
}
