
:root{--gold:#d8b35f;--red:#c34532;--ink:#0b0a08;--paper:#efe5d3;--muted:#c8bda9;--line:#3a3127}
.west-albums-page{background:#0a0907;color:#eee}
.album-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 78% 35%,rgba(216,179,95,.25),transparent 25%),linear-gradient(135deg,#080806 0%,#17100b 44%,#39160f 100%);border-bottom:1px solid #68492d}
.album-grid-bg{position:absolute;inset:-15% -5% 0;opacity:.12;background-image:linear-gradient(rgba(255,255,255,.15) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.15) 1px,transparent 1px);background-size:52px 52px;transform:perspective(520px) rotateX(58deg) scale(1.5);transform-origin:center bottom}
.album-sun{position:absolute;width:330px;height:330px;border-radius:50%;right:6%;top:18%;background:linear-gradient(#e8c77d,#a43f2a);opacity:.24;box-shadow:0 0 90px rgba(216,179,95,.18)}
.album-hero-inner{position:relative;padding:72px 0 40px;min-height:600px}
.album-kicker,.entry-kicker{font-size:12px;font-weight:950;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}
.big-25{position:absolute;right:1%;top:8px;font-size:clamp(180px,29vw,390px);line-height:.8;font-weight:1000;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.1);letter-spacing:-.08em}
.route-stamp{display:inline-block;margin-top:26px;border:2px solid var(--gold);padding:8px 12px;font-weight:1000;letter-spacing:.12em;line-height:1.05;color:var(--gold);transform:rotate(-2deg)}
.album-hero h1{position:relative;max-width:980px;margin:22px 0 16px;font-size:clamp(47px,8vw,98px);line-height:.87;letter-spacing:-.055em;color:#fff;text-transform:uppercase}
.album-hero h1 em{font-style:normal;color:var(--gold)}
.album-deck{position:relative;max-width:780px;font-size:clamp(20px,2.8vw,31px);line-height:1.22;color:#eee0cc;margin:0 0 16px;font-weight:650}
.album-byline{font-size:14px;color:#c9bda9;margin:24px 0}.city-strip{display:flex;gap:8px;flex-wrap:wrap;margin-top:28px}.city-strip span{border:1px solid rgba(255,255,255,.22);background:rgba(0,0,0,.28);padding:7px 9px;font-size:11px;font-weight:900;letter-spacing:.1em;color:#f1e3ca}
.album-article{max-width:1080px;padding-top:44px;padding-bottom:70px}.album-intro{font-size:19px;line-height:1.72;color:#ddd3c4}.album-intro p{max-width:900px}.album-rule{margin:26px 0;padding:20px 23px;border-left:5px solid var(--gold);background:#17130f;border-top:1px solid #3b3025;border-bottom:1px solid #3b3025}.album-rule span{display:block;color:var(--gold);font-weight:1000;font-size:12px;letter-spacing:.17em;margin-bottom:8px}.album-rule p{margin:0;color:#eee3d2}
.album-jump{display:flex;gap:10px;flex-wrap:wrap;margin:32px 0 24px}.album-jump a{color:#111;background:var(--gold);text-decoration:none;font-weight:900;padding:11px 14px;font-size:13px}.album-jump a:nth-child(2){background:#fff}.album-jump a:nth-child(3){background:transparent;color:#fff;border:1px solid #665139}
.album-rank{display:grid;grid-template-columns:90px 230px minmax(0,1fr);gap:25px;align-items:start;padding:38px 0;border-top:1px solid #302920;scroll-margin-top:115px}
.album-rank-no{font-size:76px;line-height:.86;font-weight:1000;color:transparent;-webkit-text-stroke:1px #836c4b;letter-spacing:-.08em;text-align:right;padding-top:6px}
.album-cover-wrap,.hm-art{position:relative;background:#17130f;aspect-ratio:1/1;overflow:hidden;border:1px solid #4d3f2f;box-shadow:0 18px 55px rgba(0,0,0,.23)}
.album-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .28s ease;z-index:2}.album-art.art-ready{opacity:1}
.art-fallback{position:absolute;inset:0;padding:18px;display:flex;flex-direction:column;justify-content:flex-end;background:radial-gradient(circle at 70% 20%,rgba(216,179,95,.26),transparent 32%),linear-gradient(145deg,#19120e,#3a160f);z-index:1}.art-fallback small{color:var(--gold);font-weight:900;letter-spacing:.08em;text-transform:uppercase}.art-fallback strong{font-size:22px;line-height:1.02;margin:7px 0;color:#fff}.art-fallback span{color:#bdb09d;font-weight:800}
.album-copy h2{font-size:clamp(32px,4.7vw,56px);line-height:.94;margin:5px 0 10px;color:#fff;letter-spacing:-.04em}.album-meta{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 15px;color:#d8c9b5;font-size:13px;font-weight:750}.album-meta span,.album-meta strong{border:1px solid #473b2f;background:#12100d;padding:6px 8px}.album-meta strong{color:#fff}
.key-tracks{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin:0 0 16px}.key-tracks b{font-size:10px;letter-spacing:.15em;color:var(--gold)}.key-tracks span{font-size:12px;border:1px solid #665139;background:#1a1510;padding:6px 8px;color:#eadfcf}
.album-copy p{font-size:17px;line-height:1.68;color:#d7cebf;margin:0}.album-copy p strong{color:#fff}.album-rank.top-ten{background:linear-gradient(90deg,rgba(216,179,95,.05),transparent);margin-left:-20px;margin-right:-20px;padding-left:20px;padding-right:20px}.album-rank.top-ten .album-rank-no{color:var(--gold);-webkit-text-stroke:0}.album-rank.top-five{border-top-color:#6b4c2d}.album-rank.top-five .album-copy h2{font-size:clamp(38px,5.4vw,65px)}
.album-rank.champion{background:radial-gradient(circle at 15% 10%,rgba(216,179,95,.18),transparent 30%),linear-gradient(145deg,#18120d,#30130d);padding:38px 24px;border:1px solid #765631;margin-top:12px}.album-rank.champion .album-rank-no{font-size:104px;color:#fff0c8}.album-rank.champion .album-copy p{font-size:18px;color:#f2e7d5}
.tier-break{margin:52px 0 8px;padding:18px 20px;border-top:3px solid var(--gold);border-bottom:1px solid #54442f;display:flex;justify-content:space-between;align-items:center;gap:20px;background:#11100d}.tier-break span{font-size:14px;font-weight:1000;letter-spacing:.18em;color:var(--gold)}.tier-break strong{font-size:24px}.tier-break.five{border-top-color:#bd513b;background:linear-gradient(90deg,#25110d,#100f0c)}
.hm-section{margin:70px 0 35px;padding-top:34px;border-top:4px solid var(--gold);scroll-margin-top:110px}.hm-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:22px}.hm-head span{font-size:11px;font-weight:900;letter-spacing:.18em;color:var(--gold)}.hm-head h2{font-size:clamp(34px,5vw,58px);line-height:.9;margin:5px 0 0}.hm-head p{margin:0;color:#c5b9a5;max-width:420px}
.hm-album-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.hm-album-card{display:grid;grid-template-columns:145px 1fr;gap:16px;background:#12100d;border:1px solid #3b3025;padding:13px}.hm-album-card .hm-art{width:145px;height:145px}.hm-album-card .art-fallback{padding:12px}.hm-album-card .art-fallback strong{font-size:15px}.hm-label{font-size:9px;font-weight:1000;letter-spacing:.16em;color:var(--gold)}.hm-album-copy h3{font-size:23px;line-height:1.03;margin:5px 0 5px}.hm-meta{font-size:11px;color:#bfb3a0;margin-bottom:8px}.hm-album-copy p{font-size:13.5px;line-height:1.48;color:#d4cab9;margin:0 0 10px}.hm-tracks{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.hm-tracks b{font-size:9px;color:var(--gold);letter-spacing:.1em}.hm-tracks span{font-size:10px;border:1px solid #4f4132;padding:4px 6px;color:#dfd3c1}
.album-closing{margin-top:60px;padding:40px;background:#efe6d5;color:#16120e}.album-closing .eyebrow{font-size:11px;font-weight:1000;letter-spacing:.17em;color:#8c311f}.album-closing h2{font-size:clamp(36px,6vw,65px);line-height:.94;margin:8px 0 18px}.album-closing p{font-size:18px;line-height:1.65;max-width:820px}.album-closing .button-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.album-closing .button{display:inline-block;background:#111;color:#fff;text-decoration:none;font-weight:900;padding:13px 17px}.album-closing .button.outline{background:transparent;color:#111;border:1px solid #111}
@media(max-width:840px){.album-rank{grid-template-columns:66px 160px 1fr;gap:16px}.album-rank-no{font-size:56px}.album-copy p{font-size:16px}.hm-album-grid{grid-template-columns:1fr}}
@media(max-width:620px){.album-hero-inner{padding-top:44px;min-height:auto}.big-25{right:-28px;top:38px;font-size:185px}.album-sun{width:220px;height:220px;right:-70px;top:110px}.album-hero h1{margin-top:25px}.album-article{padding-top:28px}.album-rank{grid-template-columns:54px 1fr;gap:13px;padding:30px 0}.album-rank-no{font-size:46px;grid-row:1/3}.album-cover-wrap{width:min(210px,72vw);grid-column:2}.album-copy{grid-column:2}.album-copy h2{font-size:35px}.album-copy p{font-size:16px;line-height:1.62}.album-rank.top-ten{margin-left:-8px;margin-right:-8px;padding-left:8px;padding-right:8px}.album-rank.champion{grid-template-columns:48px 1fr;padding:24px 12px}.album-rank.champion .album-rank-no{font-size:62px}.hm-head{display:block}.hm-head p{margin-top:9px}.hm-album-card{grid-template-columns:105px 1fr;gap:12px;padding:10px}.hm-album-card .hm-art{width:105px;height:105px}.hm-album-copy h3{font-size:19px}.hm-album-copy p{font-size:12.5px}.album-closing{padding:28px 20px}}
