:root{
  --violet:#002fff;
  --pink:#a442ff;
  --amber:#d15cff;
  --fos-card-volume-color:#a442ff;
  --fos-card-title-color:#a442ff;
  --release-accent:#b667ff;
  --release-accent-alt:#7791ff;
  --release-accent-soft:#dbbdff;
}

:root[data-theme="light"]{
  --release-accent:#7725bd;
  --release-accent-alt:#334fc2;
  --release-accent-soft:#633190;
}

h3.release-page{
  position:relative;
  left:50%;
  width:max-content;
  max-width:none;
  transform:translateX(-50%);
  white-space:nowrap;
}

.hero h1.release-page{
  position:relative;
  left:50%;
  width:max-content;
  max-width:none;
  transform:translateX(-50%);
  white-space:nowrap;
}

.feature-listen{
  width:min(760px, calc(100% - 2rem));
  margin:3rem auto 0;
  padding:0;
}

.feature-card{
  display:grid;
  gap:1.25rem;
  padding:clamp(1rem, 3vw, 1.5rem);
  border:1px solid var(--border);
  border-radius:24px;
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.035));
  box-shadow:0 24px 70px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.06);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}

.feature-card h2{
  margin:0;
  color:var(--release-accent-alt);
  font-size:clamp(1.35rem, 4vw, 2.2rem);
  line-height:1.1;
  text-align:center;
}

.soundcloud-embed{
  min-width:0;
  overflow:hidden;
  border:1px solid var(--border);
  border-radius:18px;
  background:var(--surface);
}

.soundcloud-embed iframe{
  display:block;
  width:100%;
  height:166px;
  border:0;
}

.soundcloud-credit{
  display:flex;
  gap:.35rem;
  padding:.7rem .85rem;
  overflow:hidden;
  color:var(--release-accent-soft);
  font-size:.72rem;
  line-height:1.4;
  white-space:nowrap;
}

.soundcloud-credit a{
  min-width:0;
  overflow:hidden;
  color:inherit;
  text-decoration:none;
  text-overflow:ellipsis;
}

.soundcloud-credit a:hover{
  color:var(--release-accent);
}

.vps-release-player{
  display:grid;
  gap:1rem;
  padding-top:1.25rem;
  border-top:1px solid var(--border);
}

.vps-release-copy{
  display:grid;
  gap:.35rem;
  text-align:center;
}

.vps-release-copy .kicker{
  margin:0;
  color:var(--release-accent);
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.vps-release-copy h3{
  margin:0;
  color:var(--release-accent-soft);
  font-size:clamp(1.1rem, 3vw, 1.45rem);
}

.vps-release-copy > p:last-child{
  margin:0;
  color:var(--muted);
  font-size:.8rem;
  line-height:1.5;
}

.vps-release-player .btn-music{
  width:100%;
  margin:0;
}

.vps-release-player .btn-music.is-open,
.vps-release-player .btn-music:has(.inline-player.active){
  padding:.45rem;
  border-color:var(--border);
  background:linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.035));
  box-shadow:0 24px 70px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.06);
}

@media (max-width:640px){
  h3.release-page,
  .hero h1.release-page{
    left:auto;
    width:auto;
    max-width:100%;
    transform:none;
    white-space:normal;
    overflow-wrap:anywhere;
  }

  .hero h1.release-page{
    font-size:clamp(2.7rem, 15vw, 4.5rem);
    line-height:.95;
  }

  .feature-listen{
    margin-top:2rem;
  }

  .feature-card{
    border-radius:20px;
  }
}
