:root{
  --bg:#08050c;
  --panel:#130d18;
  --panel-2:#1d1124;
  --text:#fff7fb;
  --muted:#c8b8c4;
  --line:rgba(255,255,255,.13);
  --pink:#ff3f9d;
  --red:#ff5c5c;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,Arial,sans-serif;
  background:radial-gradient(circle at 85% 10%,rgba(255,63,157,.2),transparent 32%),var(--bg);
  color:var(--text);
  line-height:1.6;
}
a{color:inherit;text-decoration:none}
.site-header{
  position:fixed;
  inset:0 0 auto;
  z-index:20;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  padding:18px 6vw;
  background:rgba(8,5,12,.72);
  border-bottom:1px solid var(--line);
  backdrop-filter:blur(16px);
}
.brand{font-size:28px;font-weight:950;letter-spacing:.12em}
nav{display:flex;gap:24px;color:var(--muted);font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
nav a:hover{color:var(--pink)}
.btn{
  display:inline-flex;
  min-height:46px;
  align-items:center;
  justify-content:center;
  border:1px solid transparent;
  border-radius:8px;
  padding:0 18px;
  background:var(--pink);
  color:#160812;
  font-weight:950;
}
.btn.small{min-height:38px}
.btn.ghost{background:transparent;color:var(--text);border-color:var(--line)}
.hero{
  position:relative;
  min-height:900px;
  display:grid;
  align-items:center;
  padding:150px 6vw 110px;
  overflow:hidden;
}
.hero>img,.shade{position:absolute;inset:0;width:100%;height:100%}
.hero>img{object-fit:cover}
.shade{background:linear-gradient(90deg,rgba(8,5,12,.94),rgba(8,5,12,.34),rgba(8,5,12,.88))}
.hero-copy{position:relative;max-width:760px}
.eyebrow{
  margin:0 0 12px;
  color:var(--pink);
  font-size:12px;
  font-weight:950;
  letter-spacing:.14em;
  text-transform:uppercase;
}
h1,h2,h3,p{margin-top:0}
h1{margin:0 0 18px;font-size:clamp(74px,14vw,210px);line-height:.8;letter-spacing:-.07em}
h2{font-size:clamp(36px,5vw,72px);line-height:.95;margin-bottom:18px}
.lead{max-width:620px;color:#eadde7;font-size:21px}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.release-card{
  position:absolute;
  right:6vw;
  bottom:86px;
  width:min(440px,88vw);
  display:grid;
  grid-template-columns:120px 1fr;
  gap:16px;
  padding:16px;
  border:1px solid var(--line);
  border-radius:8px;
  background:rgba(19,13,24,.86);
  backdrop-filter:blur(16px);
}
.release-card img{width:120px;height:120px;object-fit:cover;border-radius:8px}
.release-card span{color:var(--pink);font-size:12px;font-weight:950;text-transform:uppercase}
.release-card strong{display:block;margin:4px 0;font-size:24px}
.release-card p{margin:0;color:var(--muted)}
.stats{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
  padding:20px 6vw 80px;
}
.stats div,.track-list,.media-card,.tour-list article,.booking,.video-grid article{
  border:1px solid var(--line);
  border-radius:8px;
  background:rgba(19,13,24,.9);
}
.stats div{padding:20px}
.stats strong{display:block;font-size:34px}
.stats span{color:var(--muted);font-size:13px;font-weight:850}
.section{padding:84px 6vw}
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.72fr);gap:36px;align-items:end}
.section-copy{color:var(--muted);font-size:19px}
.music-grid{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(340px,1.1fr);
  gap:16px;
  padding:0 6vw 84px;
}
.track-list,.media-card{padding:24px}
.track-list h3,.media-card h3{font-size:28px}
ol{display:grid;gap:14px;margin:20px 0 0;padding:0;list-style:none}
ol li{display:grid;grid-template-columns:45px 1fr auto;gap:14px;padding:12px 0;border-bottom:1px solid var(--line)}
ol span{color:var(--pink);font-weight:950}
.media-card{display:grid;grid-template-columns:minmax(180px,.7fr) 1fr;gap:22px;align-items:center}
.media-card img{width:100%;height:280px;object-fit:cover;border-radius:8px}
.section-heading{margin-bottom:26px}
.tour-list{display:grid;gap:12px;background:transparent;border:0}
.tour-list article{
  display:grid;
  grid-template-columns:120px 1fr 1fr auto;
  gap:18px;
  align-items:center;
  padding:18px;
}
.tour-list time{color:var(--pink);font-weight:950}
.tour-list span{color:var(--muted)}
.tour-list a{padding:10px 14px;border:1px solid var(--line);border-radius:8px;font-weight:950}
.gallery-grid,.video-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.gallery-grid img,.video-grid img{width:100%;height:280px;object-fit:cover;border-radius:8px}
.video-section{padding:0 6vw 84px}
.video-grid{grid-template-columns:repeat(3,1fr);margin-top:24px}
.video-grid article{padding:12px}
.video-grid strong{display:block;margin-top:12px}
.booking{
  display:grid;
  grid-template-columns:minmax(0,.75fr) minmax(360px,1fr);
  gap:30px;
  margin:0 6vw 84px;
  padding:28px;
  background:linear-gradient(135deg,var(--panel),#240d1d);
}
.booking p{color:var(--muted)}
form{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
input,textarea{
  width:100%;
  min-height:48px;
  border:1px solid var(--line);
  border-radius:8px;
  padding:0 12px;
  background:#0e0812;
  color:var(--text);
}
textarea{grid-column:1/-1;min-height:130px;padding-top:12px;resize:vertical}
form .btn{grid-column:1/-1}
footer{display:flex;justify-content:space-between;gap:20px;padding:36px 6vw;color:var(--muted);border-top:1px solid var(--line)}
@media(max-width:1040px){
  nav{display:none}
  .release-card{position:relative;right:auto;bottom:auto;margin-top:34px}
  .stats,.split,.music-grid,.media-card,.booking,.tour-list article{grid-template-columns:1fr}
  .gallery-grid,.video-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:640px){
  .site-header{padding:14px 18px}
  .hero,.section,.music-grid,.video-section{padding-left:18px;padding-right:18px}
  .stats{grid-template-columns:1fr;padding-left:18px;padding-right:18px}
  .gallery-grid,.video-grid,form{grid-template-columns:1fr}
  .booking{margin-left:18px;margin-right:18px}
  footer{flex-direction:column}
}
