/* =========================================================
   ThetaSound Core — Page Styles
========================================================= */

.section-kicker {
  color: #9be8ff !important;
  text-transform: uppercase;
  letter-spacing: .34em;
  font-size: 12px;
  font-weight: 800;
  margin: 0 0 18px;
}

.fade-up,
.stagger {
  opacity: 0;
  transform: translateY(42px);
  transition: opacity .9s ease, transform .9s ease;
}

.fade-up.visible,
.visible .stagger,
.stagger.visible {
  opacity: 1;
  transform: translateY(0);
}

/* Simple Credits Hero */
.theta-hero-simple {
  position: relative;
  overflow: hidden;
  text-align: center;
  padding: 150px 24px 95px !important;
  background:
    radial-gradient(circle at 50% 12%, rgba(155,232,255,.15), transparent 34%),
    radial-gradient(circle at 20% 80%, rgba(180,156,255,.08), transparent 32%),
    linear-gradient(180deg, #020204 0%, #050508 58%, #030305 100%) !important;
  border-bottom: 1px solid rgba(255,255,255,.06);
}

.theta-hero-simple::before {
  content: "";
  position: absolute;
  inset: -20%;
  background:
    linear-gradient(115deg, transparent 0%, rgba(155,232,255,.045) 45%, transparent 58%),
    radial-gradient(circle at 50% 0%, rgba(255,255,255,.07), transparent 28%);
  opacity: .75;
  pointer-events: none;
}

.theta-hero-simple::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(to bottom, rgba(0,0,0,.15), rgba(0,0,0,0) 45%, rgba(0,0,0,.25)),
    radial-gradient(circle at center, transparent 0%, rgba(0,0,0,.28) 72%);
  pointer-events: none;
}

.theta-hero-simple > * {
  position: relative;
  z-index: 2;
}

.theta-hero-simple .theta-kicker {
  display: inline-block;
  color: #9be8ff !important;
  letter-spacing: .42em;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 900;
  margin-bottom: 26px;
  text-shadow: 0 0 24px rgba(155,232,255,.28);
}

.theta-hero-simple h1 {
  max-width: 1320px;
  margin: 0 auto 30px !important;
  color: #fff !important;
  font-size: clamp(54px, 7.4vw, 132px) !important;
  line-height: .82 !important;
  letter-spacing: -0.075em !important;
  text-transform: uppercase;
  text-wrap: balance;
  text-shadow:
    0 26px 90px rgba(0,0,0,.70),
    0 0 1px rgba(255,255,255,.7);
}

.theta-hero-simple p {
  max-width: 760px;
  margin: 0 auto !important;
  color: #b9bfd6 !important;
  font-size: clamp(16px, 1.35vw, 22px) !important;
  line-height: 1.55 !important;
}

/* Credits page spacing fixes */
.theta-credits-section {
  padding-top: 70px !important;
}

.theta-credits-section .theta-credits-head {
  display: none !important;
}

.theta-credit-filters {
  margin-top: 0 !important;
  margin-bottom: 54px !important;
}

/* Mobile credits overlay fix */
@media (max-width: 900px) {
  .theta-credit-overlay {
    opacity: 0 !important;
    transform: translateY(18px) !important;
  }

  .theta-credit-card:hover .theta-credit-overlay,
  .theta-credit-card:focus-within .theta-credit-overlay,
  .theta-credit-card.is-open .theta-credit-overlay {
    opacity: 1 !important;
    transform: translateY(0) !important;
  }
}

@media (max-width: 768px) {
  .theta-hero-simple {
    padding: 112px 18px 68px !important;
  }

  .theta-hero-simple .theta-kicker {
    font-size: 11px;
    letter-spacing: .32em;
    margin-bottom: 20px;
  }

  .theta-hero-simple h1 {
    font-size: clamp(42px, 14vw, 72px) !important;
    line-height: .86 !important;
    letter-spacing: -0.06em !important;
  }

  .theta-hero-simple p {
    font-size: 15px !important;
    line-height: 1.55 !important;
  }

  .theta-credits-section {
    padding-top: 48px !important;
  }

  .theta-credit-filters {
    margin-bottom: 36px !important;
  }
}
