:root {
  --stage-red: #ff321f;
  --stage-gold: #f0b84b;
  --stage-white: #f4f4ef;
  --stage-muted: rgba(244, 244, 239, .68);
  --stage-black: #050505;
}
* { box-sizing: border-box; }
html, body { margin: 0; min-height: 100%; }
body {
  background: #050505;
  color: var(--stage-white);
  font-family: Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif;
}
a { color: inherit; }
.stage-home {
  min-height: 100svh;
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background: #050505;
}
.stage-bg,
.stage-overlay {
  position: absolute;
  inset: 0;
  z-index: -3;
}
.stage-bg {
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  transition: opacity .38s ease, filter .38s ease, transform 10s ease;
}
.stage-bg-dark { background-image: var(--dark-bg); opacity: 1; filter: contrast(1.06) saturate(1.03); }
.stage-bg-light { background-image: var(--light-bg); opacity: 0; filter: brightness(1.05) contrast(.98); }
.stage-home.is-lit .stage-bg-dark { opacity: .18; filter: brightness(1.8) grayscale(.2); }
.stage-home.is-lit .stage-bg-light { opacity: .92; }
.stage-overlay {
  z-index: -2;
  background:
    radial-gradient(circle at center, rgba(0,0,0,.18), rgba(0,0,0,.68) 65%, rgba(0,0,0,.96)),
    linear-gradient(to bottom, rgba(0,0,0,.35), rgba(0,0,0,.68));
  transition: background .35s ease;
}
.stage-home.is-lit .stage-overlay {
  background:
    radial-gradient(circle at center, rgba(255,255,255,.06), rgba(255,255,255,.18) 55%, rgba(0,0,0,.18)),
    linear-gradient(to bottom, rgba(255,255,255,.06), rgba(255,255,255,.18));
}
.stage-content {
  min-height: 100svh;
  display: grid;
  grid-template-rows: auto 1fr auto;
  padding: clamp(18px, 3vw, 42px);
}
.stage-mini-logo,
.stage-custom-logo img {
  max-width: 180px;
  height: auto;
}
.stage-mini-logo {
  display: inline-block;
  text-decoration: none;
  font-size: clamp(1.6rem, 3vw, 2.4rem);
  letter-spacing: .02em;
  text-transform: uppercase;
  transform: skew(-8deg);
  text-shadow: 0 0 20px rgba(255,255,255,.25);
}
.stage-center {
  align-self: center;
  text-align: center;
  padding: 7vh 0 3vh;
}
.stage-center h1 {
  margin: 0;
  font-size: clamp(4.6rem, 13vw, 11.5rem);
  line-height: .82;
  letter-spacing: .02em;
  text-transform: uppercase;
  transform: skew(-7deg);
  text-shadow: 0 8px 0 rgba(0,0,0,.42), 0 0 32px rgba(255,255,255,.23);
}
.stage-tagline {
  margin: clamp(14px, 2vw, 26px) 0 clamp(28px, 4vw, 44px);
  color: var(--stage-muted);
  font-family: 'Arial Narrow', Arial, sans-serif;
  font-size: clamp(.82rem, 1.6vw, 1.1rem);
  letter-spacing: .7em;
  text-transform: uppercase;
}
.stage-actions {
  display: flex;
  justify-content: center;
  gap: clamp(14px, 3vw, 36px);
  flex-wrap: wrap;
}
.stage-button {
  min-width: min(360px, 88vw);
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 14px;
  min-height: 74px;
  padding: 18px 28px;
  border: 1px solid rgba(255,255,255,.55);
  border-radius: 16px;
  background: rgba(0,0,0,.48);
  color: var(--stage-white);
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .18em;
  font-size: clamp(.95rem, 1.55vw, 1.2rem);
  backdrop-filter: blur(12px);
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease, color .25s ease;
}
.stage-button svg,
.stage-social svg { width: 28px; height: 28px; fill: currentColor; flex: none; }
.stage-button:hover,
.stage-button:focus-visible {
  transform: translateY(-3px) scale(1.02);
  background: rgba(255,255,255,.92);
  color: #080808;
  outline: none;
}
.stage-button-youtube { border-color: rgba(255,50,31,.72); box-shadow: 0 0 26px rgba(255,50,31,.2); }
.stage-button-listen { border-color: rgba(255,255,255,.72); box-shadow: 0 0 26px rgba(255,255,255,.12); }
.stage-button-youtube:hover,
.stage-button-youtube:focus-visible { box-shadow: 0 0 38px rgba(255,50,31,.58); }
.stage-button-listen:hover,
.stage-button-listen:focus-visible { box-shadow: 0 0 38px rgba(255,255,255,.4); }
.stage-footer {
  text-align: center;
  align-self: end;
}
.stage-socials {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: clamp(18px, 4vw, 46px);
  flex-wrap: wrap;
  margin-bottom: 14px;
}
.stage-social {
  display: grid;
  justify-items: center;
  gap: 8px;
  min-width: 60px;
  text-decoration: none;
  color: rgba(255,255,255,.82);
  transition: transform .25s ease, color .25s ease, filter .25s ease;
}
.stage-social span {
  font-family: Arial, sans-serif;
  font-size: .66rem;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.stage-social:hover,
.stage-social:focus-visible {
  color: #fff;
  transform: translateY(-2px);
  filter: drop-shadow(0 0 10px rgba(255,255,255,.55));
  outline: none;
}
.stage-bio,
.stage-copyright {
  margin: 8px auto 0;
  max-width: 680px;
  color: rgba(255,255,255,.58);
  font-family: Arial, sans-serif;
  font-size: .78rem;
  letter-spacing: .08em;
}
.stage-copyright { font-size: .72rem; opacity: .75; }
.stage-page {
  min-height: 100svh;
  position: relative;
  isolation: isolate;
  padding: clamp(20px, 5vw, 64px);
  display: grid;
  place-items: center;
}
.stage-page-bg,
.stage-page-overlay { position: absolute; inset: 0; z-index: -3; }
.stage-page-bg { background: var(--dark-bg) center/cover no-repeat fixed; filter: brightness(.58); }
.stage-page-overlay { z-index: -2; background: radial-gradient(circle at center, rgba(0,0,0,.35), rgba(0,0,0,.9)); }
.stage-page-card {
  width: min(980px, 100%);
  padding: clamp(24px, 5vw, 56px);
  background: rgba(0,0,0,.72);
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 24px;
  box-shadow: 0 24px 80px rgba(0,0,0,.45);
  backdrop-filter: blur(12px);
}
.stage-page-card h1 {
  margin: 0 0 24px;
  font-size: clamp(2.4rem, 8vw, 5.5rem);
  text-transform: uppercase;
  transform: skew(-6deg);
}
.stage-page-content {
  font-family: Arial, sans-serif;
  line-height: 1.7;
  color: rgba(255,255,255,.86);
}
.stage-page-content iframe,
.stage-page-content embed,
.stage-page-content video { max-width: 100%; }
.stage-back {
  display: inline-block;
  margin-bottom: 24px;
  font-family: Arial, sans-serif;
  text-decoration: none;
  color: rgba(255,255,255,.75);
}
.stage-back:hover { color: #fff; }
@media (max-width: 720px) {
  .stage-content { padding: 18px; }
  .stage-bg { background-position: center top; }
  .stage-center { padding-top: 5vh; }
  .stage-center h1 { font-size: clamp(4rem, 22vw, 6.4rem); }
  .stage-tagline { letter-spacing: .36em; font-size: .72rem; }
  .stage-actions { display: grid; gap: 14px; }
  .stage-button { min-height: 62px; min-width: min(330px, 92vw); border-radius: 14px; }
  .stage-socials { gap: 20px; }
  .stage-social span { display: none; }
  .stage-bio { font-size: .72rem; max-width: 330px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}
