html,body{max-width:100%;overflow-x:hidden}
.topbar{padding-top:calc(14px + env(safe-area-inset-top))}
.hero{display:flex;min-height:70vh;position:relative;background-color:#080808;background-image:linear-gradient(90deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.82) 42%,rgba(0,0,0,.18) 78%),url('/russ-x-hero.webp');background-size:cover,contain;background-position:center,right center;background-repeat:no-repeat;border-bottom:1px solid var(--line)}
.hero-copy{position:relative;z-index:1;width:100%;max-width:680px}
.hero-mark{display:none}

@media(max-width:760px){
  .topbar{padding-left:18px;padding-right:18px}
  .brand{font-size:1.1rem;white-space:nowrap}
  .install{padding:8px 12px;font-size:.88rem}
  .hero{padding:225px 20px 48px;min-height:700px;align-items:flex-end;background-image:linear-gradient(0deg,rgba(0,0,0,.98) 0%,rgba(0,0,0,.76) 48%,rgba(0,0,0,.04) 72%),url('/russ-x-hero.webp');background-size:cover,100% auto;background-position:center,center top;background-repeat:no-repeat}
  .hero h1{font-size:clamp(3.15rem,16vw,5.1rem);line-height:.86;letter-spacing:-.055em}
  .intro{margin:24px 0}
  .hero-actions,.mix-actions{display:grid;grid-template-columns:minmax(0,1fr);width:100%}
  .hero-actions .button,.mix-actions .button{width:100%}
  .album-card,.mix-result,.backstage{grid-template-columns:minmax(0,1fr)}
  .album-art{padding:22px}
  .album-art strong{font-size:clamp(3.8rem,20vw,6rem)}
  .album-copy{padding:28px 22px}
  .service-row{gap:16px}
  .mood-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .mood{min-width:0;padding:10px 6px}
  .mix-result{gap:24px;padding:26px 20px}
  .mix-result ol{padding-left:24px}
  .backstage{width:auto;padding:44px 24px}
  .socials a:nth-child(2n){border-right:0}
  .dates article{grid-template-columns:72px minmax(0,1fr);gap:16px}
  .hero,.latest,.mixer,.dates,.connect{padding-left:20px;padding-right:20px}
  footer{padding-bottom:calc(32px + env(safe-area-inset-bottom))}
  dialog{width:calc(100% - 32px);padding:38px 24px}
}

.radio{width:100%;max-width:1120px;margin:auto;padding:78px 24px;border-top:1px solid var(--line)}
.playlist-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.playlist-card{position:relative;padding:28px;background:#151312;border:1px solid #3b3531;overflow:hidden}
.playlist-card h3{max-width:80%;margin:4px 0 8px;font-family:var(--serif);font-size:clamp(1.65rem,3vw,2.35rem);line-height:1}
.playlist-number{position:absolute;top:16px;right:20px;color:#4a403c;font-size:2.2rem;font-weight:900}
.playlist-kicker{margin:0;color:#ef3943;font-size:.72rem;font-weight:900;letter-spacing:.15em}
.playlist-note{min-height:50px;color:var(--muted)}
.playlist-player{position:relative;width:100%;aspect-ratio:16/9;margin:18px 0;background:#080707;border:1px solid #3b3531}
.playlist-player iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.playlist-link{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--red);background:var(--red);color:#fff;padding:11px 15px;font-weight:850;text-decoration:none}
.playlist-link:hover{background:#a4141d;border-color:#a4141d}
.playlist-card details{border-top:1px solid #3b3531;border-bottom:1px solid #3b3531;padding:12px 0;margin:18px 0}
.playlist-card summary{cursor:pointer;font-weight:850}
.playlist-card ol{margin:12px 0 5px;padding-left:24px;color:#c9c1ba}
.playlist-card li{padding:4px 0}
.copy-playlist{border:1px solid #665951;background:transparent;color:var(--bone);padding:10px 14px;font:inherit;font-weight:800;cursor:pointer}
.copy-playlist:hover{border-color:var(--red);color:white}
.featured-playlist{grid-column:1/-1;background:linear-gradient(120deg,#360d10,#151312 62%)}
.radio-services{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:20px;color:var(--muted)}
.radio-services p{margin-right:auto}.radio-services a{color:var(--bone);font-weight:850;text-underline-offset:5px}
@media(max-width:760px){.radio{padding:55px 20px}.playlist-grid{grid-template-columns:minmax(0,1fr)}.featured-playlist{grid-column:auto}.playlist-card{padding:24px 20px}.playlist-card h3{max-width:82%}.playlist-note{min-height:0}.radio-services{align-items:flex-start;flex-direction:column}.radio-services p{margin:0 0 4px}}
