*{box-sizing:border-box}
:root{--bg:#080808;--panel:#111;--panel2:#171717;--line:#2a2a2a;--text:#eee;--muted:#9d9d9d;--red:#d42020;--cream:#e8ded1}
html,body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif}
body{min-height:100vh;background-image:radial-gradient(circle at 75% 5%,rgba(125,0,0,.2),transparent 32%)}
a{color:var(--cream);text-decoration:none}a:hover{color:#fff}.wrap{width:min(1120px,calc(100% - 40px));margin:auto}
.top{border-bottom:1px solid var(--line);padding:18px 0}.top .wrap{display:flex;justify-content:space-between;gap:20px;align-items:center}.brand{font-weight:900;letter-spacing:.12em}.top nav a{margin-left:18px;color:#aaa}
.hero,.small-hero{border-bottom:1px solid var(--line)}.hero{min-height:64vh;display:flex;align-items:center;padding:70px 0}.small-hero{padding:55px 0}
.eyebrow,.label{font-size:.72rem;font-weight:900;letter-spacing:.22em;color:var(--red);text-transform:uppercase}
h1,h2,h3{font-family:Georgia,serif}h1{font-size:clamp(3.4rem,9vw,7.5rem);line-height:.86;letter-spacing:-.05em;margin:18px 0;color:var(--cream)}h1 span{color:var(--red)}
.hero p,.lead{max-width:720px;color:#bbb;font-size:1.1rem;line-height:1.7}.button{display:inline-block;border:1px solid var(--red);padding:13px 18px;margin-top:18px;text-transform:uppercase;font-size:.78rem;font-weight:800;letter-spacing:.12em}
main{padding:55px 0 100px}section{margin-bottom:65px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:18px}
.card,.panel,.chapter-link{border:1px solid var(--line);background:linear-gradient(145deg,var(--panel2),#0d0d0d);padding:22px}.card{display:flex;flex-direction:column;min-height:260px}.card img,.cover{width:100%;aspect-ratio:1/1;object-fit:cover;border:1px solid var(--line);background:#0b0b0b}.card h2{margin:18px 0 6px}.card p,.muted{color:var(--muted);line-height:1.55}.card a.more{margin-top:auto;color:var(--red);font-weight:800}
.album-head{display:grid;grid-template-columns:minmax(220px,340px) 1fr;gap:36px;align-items:center}.album-head .cover{max-width:340px}
.track{display:grid;grid-template-columns:56px 1fr auto;gap:15px;align-items:center;padding:17px 0;border-bottom:1px solid var(--line)}.track-no{color:#666;font-weight:800}.track-title{font-family:Georgia,serif;font-size:1.25rem}.track a{color:var(--red)}
.player{width:100%;margin:22px 0}.relationship{border-left:3px solid var(--red);padding-left:18px;color:#bbb;line-height:1.65}.chapter-link{margin:12px 0}.chapter-link .label{margin-bottom:8px}
@media(max-width:700px){.album-head{grid-template-columns:1fr}.top .wrap{align-items:flex-start;flex-direction:column}.top nav a{margin:0 15px 0 0}.track{grid-template-columns:40px 1fr}.track>a{grid-column:2}}
