:root{--bg:#0c0b10;--panel:#16141c;--ink:#e9e4d8;--muted:#a59f92;--gold:#c9a45c;--blood:#8e2a2a;--line:#2a2633}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.65 Georgia,"Times New Roman",serif}
a{color:var(--gold)}a:hover{color:#e8c98a}
nav{position:sticky;top:0;z-index:5;background:rgba(12,11,16,.92);backdrop-filter:blur(6px);border-bottom:1px solid var(--line);display:flex;flex-wrap:wrap;gap:.2rem 1.2rem;justify-content:center;padding:.7rem 1rem;font:600 .8rem/1 system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase}
nav a{color:var(--muted);text-decoration:none}nav a:hover{color:var(--gold)}
.hero{min-height:min(78vh,640px);display:grid;place-items:center;text-align:center;padding:4rem 1.2rem;background:radial-gradient(ellipse at 50% 35%,rgba(201,164,92,.16),transparent 55%),radial-gradient(ellipse at 50% 120%,rgba(142,42,42,.35),transparent 60%),var(--bg)}
.hero h1{font-size:clamp(2.8rem,9vw,5.6rem);margin:0;letter-spacing:.06em;font-weight:400;text-shadow:0 0 30px rgba(201,164,92,.25)}
.hero p{max-width:36rem;margin:1rem auto 2rem;color:var(--muted);font-size:1.15rem;font-style:italic}
.btn{display:inline-block;border:1px solid var(--gold);padding:.7rem 1.4rem;margin:.3rem;text-decoration:none;font:600 .8rem system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase}
.btn:hover{background:var(--gold);color:var(--bg)}
section{padding:4.5rem 1.2rem;border-top:1px solid var(--line)}
.wrap{max-width:1100px;margin:0 auto}
h2{font-weight:400;font-size:2.1rem;text-align:center;margin:0 0 .4rem;letter-spacing:.04em}
.sub{text-align:center;color:var(--muted);margin:0 0 2.5rem}
h3.series{color:var(--gold);font-weight:400;letter-spacing:.08em;border-bottom:1px solid var(--line);padding-bottom:.4rem;margin:2.5rem 0 1.2rem}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1.6rem}
.book{background:var(--panel);border:1px solid var(--line);border-radius:6px;overflow:hidden;display:flex;flex-direction:column}
.book img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block}
.book .b{padding:1rem 1.1rem 1.2rem;display:flex;flex-direction:column;flex:1}
.book h4{margin:0 0 .2rem;font-weight:400;font-size:1.15rem}
.book .meta{font:.75rem system-ui,sans-serif;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:.5rem}
.book p{margin:0 0 1rem;font-size:.95rem;color:#cfc9bc;flex:1}
.links a{font:600 .78rem system-ui,sans-serif;margin-right:.9rem;text-transform:uppercase;letter-spacing:.08em}
.horror h3.series{color:#c46a5f}
blockquote{margin:0;background:var(--panel);border-left:3px solid var(--gold);padding:1.3rem 1.5rem;border-radius:4px}
blockquote p{margin:0 0 .7rem;font-style:italic;font-size:1.05rem}
blockquote footer{font:.85rem system-ui,sans-serif;color:var(--muted)}
.quotes{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.3rem}
.award{text-align:center;margin:0 auto 2.2rem;max-width:40rem;padding:1.2rem;border:1px solid var(--gold);color:var(--gold);letter-spacing:.05em}
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.8rem}
.gallery img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:4px;filter:saturate(.9);transition:transform .2s}
.gallery img:hover{transform:scale(1.03)}
.post{background:var(--panel);border:1px solid var(--line);padding:1.5rem;border-radius:6px;margin:0 auto 1.3rem;max-width:46rem}
.post h3{margin:.2rem 0 .6rem;font-weight:400}.post time{font:.78rem system-ui,sans-serif;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.sample{display:inline-block;background:var(--blood);color:#fff;font:700 .68rem system-ui,sans-serif;padding:.15rem .5rem;border-radius:3px;letter-spacing:.08em;margin-left:.5rem}
.merch{text-align:center;max-width:36rem;margin:0 auto;padding:2.2rem;border:1px dashed var(--line);border-radius:6px}
footer.site{padding:2.5rem 1rem;text-align:center;color:var(--muted);font:.9rem system-ui,sans-serif;border-top:1px solid var(--line)}
footer.site a{margin:0 .7rem}
@media(max-width:600px){body{font-size:16px}section{padding:3.2rem 1rem}.hero{min-height:min(64vh,560px)}}
.gallery img{cursor:zoom-in}
.lightbox{position:fixed;inset:0;background:rgba(5,5,8,.985);display:none;align-items:center;justify-content:center;flex-direction:column;z-index:1000;padding:1rem}
.lightbox.open{display:flex}
.lightbox img{max-width:94vw;max-height:82vh;object-fit:contain;border-radius:4px;box-shadow:0 0 40px rgba(0,0,0,.8)}
.lightbox p{color:#ccc;margin:.8rem 0 0;text-align:center;max-width:700px;font-size:.95rem}
.lightbox button{position:absolute;background:none;border:0;color:#eee;font-size:2.4rem;cursor:pointer;padding:.5rem 1rem;line-height:1}
.lb-close{top:.5rem;right:.5rem}.lb-prev{left:.3rem;top:50%;transform:translateY(-50%)}.lb-next{right:.3rem;top:50%;transform:translateY(-50%)}

.award-card{display:flex;align-items:center;justify-content:center;gap:1.6rem;margin:0 auto 2.4rem;max-width:44rem;flex-wrap:wrap}
.award-card img{width:220px;max-width:70%;border-radius:6px;border:1px solid var(--gold);box-shadow:0 0 30px rgba(201,164,92,.18)}
.award-card .award{margin:0;flex:1;min-width:220px;line-height:1.7}
.post-img{float:right;width:150px;margin:0 0 .8rem 1.2rem;border-radius:4px;border:1px solid var(--line)}
.post::after{content:"";display:block;clear:both}
@media(max-width:600px){.post-img{float:none;display:block;width:60%;margin:.6rem auto 1rem}}
