/* ==========================================================================
   MUSIC — page-specific layout
   Uses a short banner-style hero (not the tall shared .hero pattern) since
   this is a content/listing page, not an immersive landing hero. Depends
   on global.css, header.css, footer.css.
   ========================================================================== */

.music-hero{
  height:clamp(250px,17.465vw,335px);
  margin-top:var(--header-h);
  position:relative;
  overflow:hidden;
  border-bottom:1px solid rgba(211,162,46,.16);
}
.music-hero picture,
.music-hero img{
  width:100%;height:100%;
  object-fit:cover;
  display:block;
}
.music-hero::after{
  content:"";
  position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(10,10,10,.13) 0%,rgba(10,10,10,.02) 52%,rgba(10,10,10,.28) 100%);
  pointer-events:none;
}

.music-shell{
  width:min(1500px,100%);
  margin:0 auto;
  padding:48px var(--page-pad) 80px;
}

.feature-card{
  display:grid;
  grid-template-columns:minmax(0,1.52fr) minmax(330px,.92fr);
  border:1px solid rgba(211,162,46,.46);
  background:linear-gradient(100deg,rgba(29,29,29,.92),rgba(18,18,18,.96));
  min-height:338px;
}
.video-wrap{padding:12px;border-right:1px solid rgba(211,162,46,.35)}
.video-frame{
  height:100%;min-height:312px;
  background:#050505;
  border:1px solid rgba(211,162,46,.55);
  overflow:hidden;
  display:flex;align-items:center;
}
.video-frame video{width:100%;height:100%;object-fit:cover;background:#000}

.release-copy{
  display:flex;flex-direction:column;justify-content:center;
  padding:44px clamp(32px,4vw,64px);
}
.release-title{
  margin:0;
  font-family:var(--font-display);
  font-weight:400;
  font-size:clamp(46px,4.25vw,74px);
  letter-spacing:.045em;
  line-height:.95;
  text-transform:uppercase;
}
.release-meta{
  margin:16px 0 0;
  color:var(--gold);
  font-size:13px;font-weight:600;
  letter-spacing:.22em;text-transform:uppercase;
}
.release-rule{width:48px;height:1px;background:var(--gold);margin:29px 0 25px}
.release-description{
  margin:0;color:rgba(247,247,243,.76);
  font-size:15px;line-height:1.75;max-width:410px;
}

.coming-soon{
  min-height:90px;
  display:grid;place-items:center;text-align:center;
  padding:26px 20px 22px;
}
.coming-soon h2{
  margin:0;
  font-family:var(--font-display);
  font-weight:400;
  font-size:clamp(30px,2.5vw,43px);
  letter-spacing:.1em;
  text-transform:uppercase;
}

.signup-strip{
  border:1px solid rgba(211,162,46,.34);
  background:linear-gradient(90deg,rgba(30,30,30,.92),rgba(17,17,17,.96));
  display:grid;
  grid-template-columns:auto minmax(300px,1fr) minmax(430px,.9fr);
  align-items:center;gap:28px;
  padding:17px clamp(24px,3vw,42px);
  margin-bottom:18px;
}
.mail-icon{width:45px;height:36px;color:var(--gold);flex:none}
.mail-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.5}
.signup-copy h2{
  margin:0;
  font-family:var(--font-display);
  font-size:31px;font-weight:400;letter-spacing:.055em;
  text-transform:uppercase;
}
.signup-copy p{margin:3px 0 0;color:rgba(247,247,243,.66);font-size:12px;letter-spacing:.02em}
.signup-strip .signup-form{display:grid;grid-template-columns:1fr auto;gap:12px}

@media (max-width:980px){
  .music-hero{height:220px}
  .feature-card{grid-template-columns:1fr}
  .video-wrap{border-right:0;border-bottom:1px solid rgba(211,162,46,.35)}
  .release-copy{padding:34px 28px}
  .signup-strip{grid-template-columns:auto 1fr}
  .signup-strip .signup-form{grid-column:1/-1}
}

@media (max-width:640px){
  .music-hero{height:clamp(270px,70vw,350px);margin-top:var(--header-h)}
  .music-hero img{object-position:center 28%}
  .music-shell{padding:34px var(--page-pad-mobile) 64px}
  .video-frame{min-height:0;aspect-ratio:16/9}
  .release-title{font-size:48px}
  .coming-soon{min-height:76px}
  .signup-strip{grid-template-columns:1fr;text-align:center;justify-items:center}
  .signup-strip .signup-form{width:100%;grid-template-columns:1fr}
}
