/* ============================================================
   COMING SOON BANNER — scientek.html
   To remove: delete this <link> tag and the #comingSoonBanner
   block in the HTML, plus <script src="coming-soon.js"></script>
   ============================================================ */

.cs-banner {
  position: relative;
  width: 100%;
  min-height: 720px;
  background: radial-gradient(ellipse at 50% 60%, #1a1000 0%, #0a0800 50%, #050508 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  margin-bottom: 2rem;
  border-radius: 24px;
  border: 1px solid rgba(232,184,75,0.15);
}
.cs-stars {
  position: absolute;
  inset: 0;
  pointer-events: none;
}
.cs-star {
  position: absolute;
  background: #fff;
  border-radius: 50%;
  animation: csTwinkle var(--dur) ease-in-out infinite;
  opacity: 0;
}
@keyframes csTwinkle {
  0%,100%{opacity:0} 50%{opacity:var(--op)}
}
.cs-content {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.2rem;
  padding: 3rem 2rem;
  text-align: center;
}
.cs-eyebrow {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  font-size: 1.4rem;
  letter-spacing: 0.3em;
  color: var(--gold);
  font-family: 'DM Mono', monospace;
}
.cs-dot {
  width: 5px; height: 5px;
  border-radius: 50%;
  background: var(--gold);
  animation: csPulse 1.5s ease-in-out infinite;
}
@keyframes csPulse {
  0%,100%{opacity:0.3;transform:scale(1)} 50%{opacity:1;transform:scale(1.4)}
}
.cs-art-wrap {
  position: relative;
  width: 460px;
  height: 460px;
  max-width: 90vw;
  margin: 0.5rem 0;
}
.cs-art-glow {
  position: absolute;
  inset: -40px;
  background: radial-gradient(ellipse, rgba(232,184,75,0.45) 0%, transparent 70%);
  border-radius: 50%;
  animation: csGlow 3s ease-in-out infinite;
  z-index: 0;
}
@keyframes csGlow {
  0%,100%{opacity:0.6;transform:scale(1)} 50%{opacity:1;transform:scale(1.08)}
}
.cs-art {
  width: 100%; height: 100%;
  object-fit: cover;
  border-radius: 20px;
  position: relative;
  z-index: 1;
  box-shadow: 0 20px 60px rgba(0,0,0,0.8), 0 0 0 1px rgba(232,184,75,0.3);
  animation: csFloat 4s ease-in-out infinite;
}
@keyframes csFloat {
  0%,100%{transform:translateY(0)} 50%{transform:translateY(-10px)}
}
.cs-art-shine {
  position: absolute;
  inset: 0;
  border-radius: 20px;
  background: linear-gradient(135deg, rgba(255,255,255,0.12) 0%, transparent 50%);
  z-index: 2;
  pointer-events: none;
}
.cs-title {
  font-family: 'Bebas Neue', sans-serif;
  font-size: clamp(3rem, 7vw, 5.5rem);
  letter-spacing: 4px;
  background: linear-gradient(135deg, #fff 0%, var(--gold) 50%, #fff 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  line-height: 1;
}
.cs-artist {
  font-size: 0.75rem;
  letter-spacing: 6px;
  color: var(--gold);
  font-family: 'DM Mono', monospace;
  opacity: 0.8;
}
.cs-release {
  font-size: 0.7rem;
  letter-spacing: 4px;
  color: var(--muted);
  font-family: 'DM Mono', monospace;
}
.cs-countdown {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  margin: 0.5rem 0;
}
.cs-unit {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.2rem;
  background: rgba(232,184,75,0.07);
  border: 1px solid rgba(232,184,75,0.2);
  border-radius: 12px;
  padding: 0.8rem 1.2rem;
  min-width: 85px;
}
.cs-num {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 3.2rem;
  color: var(--gold);
  line-height: 1;
  text-shadow: 0 0 20px rgba(232,184,75,0.5);
}
.cs-lbl {
  font-size: 0.55rem;
  letter-spacing: 3px;
  color: var(--muted);
  font-family: 'DM Mono', monospace;
}
.cs-sep {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 2rem;
  color: var(--gold);
  opacity: 0.4;
  margin-bottom: 1rem;
}
