
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:Arial,Helvetica,sans-serif;background:#050505;color:white;overflow-x:hidden}
#loader{position:fixed;inset:0;background:#030303;z-index:9999;display:grid;place-items:center;transition:.8s ease}
#loader.hide{opacity:0;pointer-events:none}
.loader-inner{text-align:center;animation:pulse 1.4s infinite alternate}
.loader-inner h1{font-size:90px;color:#e00000;letter-spacing:-8px}
.loader-inner p{letter-spacing:8px;color:#aaa}
@keyframes pulse{from{transform:scale(.96);opacity:.65}to{transform:scale(1);opacity:1}}

header{position:fixed;top:0;width:100%;display:flex;justify-content:space-between;align-items:center;padding:18px 5%;background:rgba(0,0,0,.72);z-index:100;backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.08)}
.logo{font-size:28px;font-weight:900;color:#e00000;letter-spacing:4px}
nav{display:flex;gap:18px}
nav a{color:white;text-decoration:none;text-transform:uppercase;font-size:12px;letter-spacing:1px}
.menu-btn{display:none;background:none;border:0;color:white;font-size:28px}

.hero{position:relative;height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden}
.hero-img{position:absolute;width:100%;height:100%;object-fit:cover;filter:brightness(.37);animation:slowZoom 18s ease-in-out infinite alternate}
@keyframes slowZoom{from{transform:scale(1)}to{transform:scale(1.08)}}
.grain{position:absolute;inset:0;background:radial-gradient(circle,rgba(255,255,255,.08) 1px,transparent 1px);background-size:5px 5px;opacity:.12}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,#050505 4%,transparent 45%)}
.hero-content{position:relative;z-index:2;text-align:center;padding:20px;max-width:950px}
.eyebrow{color:#ff2323;letter-spacing:4px;font-size:13px;font-weight:900;text-transform:uppercase;margin-bottom:14px}
h1{font-size:clamp(4.5rem,11vw,9rem);line-height:.85;letter-spacing:-7px}
h2{font-size:clamp(2.6rem,7vw,5rem);line-height:.95;margin-bottom:25px}
h3{font-size:1.8rem;margin-bottom:12px}
.sub{font-size:22px;color:#ddd;margin:25px 0}
.buttons{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.buttons.left{justify-content:flex-start;margin-top:20px}
.buttons a,.booking-form button{padding:14px 20px;background:#d90000;color:white;text-decoration:none;border:0;border-radius:6px;font-weight:900;text-transform:uppercase;letter-spacing:1px}
.section{padding:110px 7%;position:relative}
.section-copy{color:#bbb;max-width:800px;font-size:18px;margin-bottom:25px}

.release{display:grid;grid-template-columns:380px 1fr;gap:35px;align-items:center;background:#101010;padding:28px;border-radius:16px;border:1px solid rgba(255,255,255,.08)}
.release img{width:100%;border-radius:12px}
.release p,.epk p{color:#ccc;font-size:18px;line-height:1.7}
.embed-card{margin-top:25px;background:#050505;border:1px dashed #555;padding:25px;border-radius:10px;color:#999}

.countdown-section{background:linear-gradient(135deg,#090909,#180303)}
.timer{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;max-width:900px}
.timer div{background:#111;border:1px solid rgba(255,255,255,.1);padding:28px;text-align:center;border-radius:12px}
.timer span{font-size:48px;font-weight:900;color:#ff2323;display:block}
.timer small{text-transform:uppercase;letter-spacing:2px;color:#aaa}

.visualizer-section{background:#080808;text-align:center}
.motion-video-wrap{
  max-width:900px;
  margin:30px auto;
  border-radius:18px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 30px 100px rgba(0,0,0,.6);
  background:#000;
}
.motion-video{
  width:100%;
  display:block;
  max-height:75vh;
  object-fit:cover;
}

.visualizer{height:180px;display:flex;align-items:center;justify-content:center;gap:9px;margin:30px auto}
.visualizer span{width:12px;background:#e00000;border-radius:100px;animation:bars 1s infinite ease-in-out}
.visualizer span:nth-child(1){height:40px;animation-delay:.1s}.visualizer span:nth-child(2){height:90px;animation-delay:.3s}.visualizer span:nth-child(3){height:130px;animation-delay:.2s}.visualizer span:nth-child(4){height:65px;animation-delay:.5s}.visualizer span:nth-child(5){height:150px;animation-delay:.15s}.visualizer span:nth-child(6){height:75px;animation-delay:.4s}.visualizer span:nth-child(7){height:120px;animation-delay:.25s}.visualizer span:nth-child(8){height:55px;animation-delay:.6s}.visualizer span:nth-child(9){height:100px;animation-delay:.35s}.visualizer span:nth-child(10){height:45px;animation-delay:.2s}
@keyframes bars{0%,100%{transform:scaleY(.45);opacity:.6}50%{transform:scaleY(1.25);opacity:1}}

.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:15px}
.gallery img{width:100%;height:420px;object-fit:cover;border-radius:12px;filter:saturate(1.08) contrast(1.08);transition:.35s ease}
.gallery img:hover{transform:scale(1.025);filter:saturate(1.25) contrast(1.15)}

.epk{background:#0b0b0b}
.epk-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.epk-grid div,.contact-box{background:#111;border:1px solid rgba(255,255,255,.08);padding:25px;border-radius:12px}
.booking-form{display:grid;gap:12px;max-width:680px;margin-bottom:25px}
.booking-form input,.booking-form textarea{width:100%;padding:16px;background:#111;border:1px solid #333;color:white;border-radius:8px;font-size:16px}
.booking-form textarea{min-height:150px}
.contact-box{border-left:4px solid #e00000;max-width:680px}
.contact-box p{margin-bottom:8px;color:#ccc}
footer{padding:30px;text-align:center;color:#777;border-top:1px solid #222}

.reveal{opacity:0;transform:translateY(35px);transition:1s ease}
.reveal.active{opacity:1;transform:translateY(0)}

@media(max-width:850px){
.menu-btn{display:block}
nav{display:none;position:absolute;top:70px;left:5%;right:5%;background:#111;padding:20px;flex-direction:column;border:1px solid #333}
nav.open{display:flex}
.release,.epk-grid,.timer{grid-template-columns:1fr}
.section{padding:90px 6%}
h1{letter-spacing:-4px}
.gallery img{height:360px}
}

.featured-quote{
  margin:25px 0 30px;
  padding:34px;
  background:linear-gradient(135deg,rgba(224,0,0,.22),rgba(255,255,255,.04));
  border-left:5px solid #e00000;
  border-radius:14px;
  max-width:950px;
}
.featured-quote p{
  font-size:clamp(2rem,5vw,4.2rem);
  line-height:1;
  font-weight:900;
  color:#fff;
  letter-spacing:-2px;
}
.featured-quote span{
  display:block;
  margin-top:16px;
  color:#bbb;
  text-transform:uppercase;
  letter-spacing:3px;
  font-size:13px;
}
.press-card{
  display:grid;
  grid-template-columns:1fr auto;
  gap:24px;
  align-items:center;
  background:#111;
  border:1px solid rgba(255,255,255,.1);
  border-radius:14px;
  padding:28px;
  margin:0 0 25px;
  box-shadow:0 20px 80px rgba(0,0,0,.35);
}
.press-card h3{
  font-size:clamp(1.6rem,3vw,2.6rem);
  line-height:1.05;
}
.press-card p{
  color:#ccc;
  margin-top:12px;
  max-width:850px;
}
.press-button{
  display:inline-block;
  white-space:nowrap;
  padding:15px 20px;
  background:#e00000;
  color:white;
  text-decoration:none;
  border-radius:7px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:1px;
}
@media(max-width:850px){
  .press-card{
    grid-template-columns:1fr;
  }
  .press-button{
    text-align:center;
  }
}

.artist-bio-card{
  max-width:1100px;
  background:linear-gradient(135deg,rgba(255,255,255,.03),rgba(224,0,0,.08));
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  padding:38px;
  box-shadow:0 30px 100px rgba(0,0,0,.35);
}

.artist-bio-card p{
  color:#d0d0d0;
  font-size:20px;
  line-height:1.9;
  margin-bottom:24px;
}

.bio-quote{
  margin-top:18px;
  font-size:clamp(2rem,4vw,3.8rem);
  font-weight:900;
  line-height:1;
  color:#fff;
  letter-spacing:-2px;
  border-left:5px solid #e00000;
  padding-left:20px;
}

.mailing-list{
  background:
    radial-gradient(circle at center, rgba(224,0,0,.18), transparent 38%),
    linear-gradient(180deg,#080808,#050505);
  text-align:center;
}

.mailing-list .section-copy{
  margin-left:auto;
  margin-right:auto;
}

.mailing-form{
  display:flex;
  gap:12px;
  justify-content:center;
  flex-wrap:wrap;
  max-width:860px;
  margin:30px auto 12px;
}

.mailing-form input{
  min-width:240px;
  flex:1;
  padding:16px;
  background:#111;
  border:1px solid #333;
  color:white;
  border-radius:8px;
  font-size:16px;
}

.mailing-form button{
  padding:16px 22px;
  background:#e00000;
  color:white;
  border:0;
  border-radius:8px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:1px;
}

.form-note{
  color:#888;
  font-size:14px;
  margin-top:10px;
}

@media(max-width:850px){
  .mailing-form{
    flex-direction:column;
  }
  .mailing-form input,
  .mailing-form button{
    width:100%;
  }
}

.manager-card{
  margin-bottom:26px;
  padding-bottom:22px;
  border-bottom:1px solid rgba(255,255,255,.08);
}

.manager-label{
  color:#ff2a2a !important;
  text-transform:uppercase;
  letter-spacing:3px;
  font-size:12px;
  margin-bottom:10px;
  font-weight:900;
}

.manager-role{
  color:#bbb;
  text-transform:uppercase;
  letter-spacing:2px;
  font-size:13px;
  margin-top:-4px;
  margin-bottom:18px;
}

.manager-contact p,
.artist-contact p{
  color:#d0d0d0;
}

.manager-contact a{
  color:#fff;
  text-decoration:none;
}
