:root {
  color-scheme: dark;
  --bg: #07070a;
  --panel: #111117;
  --panel-2: #17171f;
  --text: #f6f7fb;
  --muted: #a6a8b3;
  --cyan: #29d8ff;
  --pink: #ff3faf;
  --lime: #a5ff4f;
  --border: rgba(255,255,255,.10);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  min-height: 100vh;
  font-family: Arial, Helvetica, sans-serif;
  background:
    radial-gradient(ellipse at 0% 18%, rgba(24,142,168,.20) 0%, rgba(12,63,77,.13) 20%, transparent 46%),
    radial-gradient(ellipse at 100% 22%, rgba(139,42,111,.18) 0%, rgba(70,22,58,.12) 22%, transparent 48%),
    radial-gradient(ellipse at 50% 0%, rgba(228,190,101,.055) 0%, transparent 32%),
    linear-gradient(90deg, #071216 0%, #080b10 24%, #090a0f 50%, #0c0910 76%, #160b14 100%);
  color: var(--text);
}

a { color: inherit; text-decoration: none; }
.is-hidden { display: none !important; }

.site-header {
  position: sticky;
  top: 0;
  z-index: 20;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 18px 5vw;
  background: rgba(7,7,10,.88);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--border);
}

.brand {
  font-weight: 900;
  letter-spacing: .04em;
}

.site-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  color: var(--muted);
  font-size: .95rem;
}
.site-nav a:hover { color: var(--cyan); }

.hero {
  min-height: 62vh;
  display: grid;
  align-content: center;
  justify-items: start;
  padding: 8vw 8vw 6vw;
  max-width: 1250px;
  margin: 0 auto;
}

.eyebrow {
  color: var(--lime);
  font-weight: 800;
  letter-spacing: .14em;
  font-size: .78rem;
}

.hero h1 {
  margin: 8px 0 18px;
  font-size: clamp(3.2rem, 9vw, 8rem);
  line-height: .88;
  max-width: 900px;
}

.hero-copy {
  max-width: 700px;
  color: var(--muted);
  font-size: clamp(1.05rem, 2vw, 1.35rem);
  line-height: 1.55;
}

.hero-actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 24px; }
.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 18px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: var(--panel);
  font-weight: 800;
}
.button.primary {
  background: linear-gradient(90deg, var(--cyan), var(--pink));
  color: #050509;
  border: none;
}

.status-strip {
  margin: 0 auto 42px;
  max-width: 1100px;
  padding: 16px 18px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: rgba(17,17,23,.82);
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
  color: var(--muted);
}
.status-strip strong { color: var(--cyan); }
#public-live-text{
  color:#f2d487;
  font-weight:700;
  text-shadow:0 1px 0 rgba(76,45,10,.85),0 0 10px rgba(232,190,94,.10);
}
.status-strip.is-live {
  border-color: rgba(85,255,145,.45);
  box-shadow: 0 0 28px rgba(85,255,145,.08);
}
.status-strip.is-live strong { color: #77f5a7; }
.public-live-button { margin-left: auto; min-height: 38px; }

.home-content-section,
.home-featured-section {
  max-width: 1100px;
  margin: 0 auto 36px;
  padding: 28px;
  border: 1px solid var(--border);
  border-radius: 20px;
  background: linear-gradient(180deg, rgba(23,23,31,.92), rgba(13,13,18,.94));
}
.home-content-section h2,
.home-featured-section h2 { margin: 0 0 10px; font-size: clamp(1.7rem, 3vw, 2.4rem); }
.home-content-section > p,
.home-featured-section p { color: var(--muted); line-height: 1.6; }
.home-video-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; margin-top: 22px; }
.home-video-slot { min-height: 220px; display: grid; place-items: center; border-radius: 14px; overflow: hidden; background: #090a0e; }
.home-video-slot iframe { width: 100%; aspect-ratio: 16 / 9; border: 0; display: block; }
.home-featured-section { display: flex; justify-content: space-between; align-items: center; gap: 24px; }
.home-featured-section > div { max-width: 760px; }

.home-people-section {
  max-width: 1100px;
  margin: 0 auto 36px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
.home-person-card {
  overflow: hidden;
  border: 1px solid var(--border);
  border-radius: 20px;
  background: linear-gradient(180deg, rgba(23,23,31,.94), rgba(13,13,18,.96));
}
.home-person-media {
  min-height: 250px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border-bottom: 1px solid var(--border);
  background: #090a0e;
}
.home-person-media img,
.home-person-media video {
  width: 100%;
  max-height: 420px;
  display: block;
  object-fit: contain;
  background: #050609;
}
.home-person-media iframe {
  width: 100%;
  aspect-ratio: 16 / 9;
  display: block;
  border: 0;
  background: #050609;
}
.home-person-media .button { margin: 30px; }
.home-person-copy { padding: 26px 28px 30px; }
.home-person-copy h2 {
  margin: 0 0 12px;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(2rem, 3.2vw, 2.7rem);
  font-weight: 900;
  letter-spacing: .11em;
  line-height: 1;
  color: #e6d0ba;
  background: linear-gradient(180deg,#fff4e2 0%,#e7d0b8 24%,#c2a487 47%,#92735d 69%,#ead6c0 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(0 2px 0 rgba(42,25,16,.95)) drop-shadow(0 5px 8px rgba(0,0,0,.48));
  text-shadow: 0 0 18px rgba(194,164,135,.12);
}
.home-person-copy p {
  margin: 0;
  color: #c2a487;
  line-height: 1.65;
  white-space: pre-wrap;
  text-shadow: 0 1px 1px rgba(0,0,0,.45);
}

.section-grid {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 5vw 80px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.panel {
  min-height: 210px;
  padding: 28px;
  border: 1px solid var(--border);
  border-radius: 20px;
  background: linear-gradient(180deg, rgba(23,23,31,.96), rgba(15,15,21,.96));
}
.panel > span { color: var(--pink); font-weight: 900; }
.panel h2 { margin: 18px 0 10px; font-size: 1.8rem; }
.panel p { margin: 0; color: var(--muted); line-height: 1.5; }
.shows-public-panel { grid-column: 1 / -1; }

.shows-public-intro {
  max-width: 720px;
  color:#b8ff5a!important;
  font-weight:700;
  text-shadow:0 0 10px rgba(165,255,79,.12);
}
.public-shows-list {
  display: grid;
  gap: 14px;
  margin-top: 22px;
}
.public-show-card {
  display: grid;
  grid-template-columns: 190px minmax(0,1fr);
  gap: 18px;
  align-items: center;
  padding: 14px;
  border: 1px solid var(--border);
  border-radius: 16px;
  background: rgba(8,8,12,.58);
}
.public-show-card.live {
  border-color: rgba(86,244,157,.4);
  background: linear-gradient(90deg, rgba(26,66,44,.32), rgba(8,8,12,.7));
}
.public-show-image {
  width: 190px;
  height: 120px;
  border-radius: 12px;
  overflow: hidden;
  display: grid;
  place-items: center;
  background: #0b0c10;
  color: #737a86;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .08em;
}
.public-show-image img {
  width: 100%;
  height: 100%;
  display: block;
  box-sizing:border-box;
  padding:12px;
  object-fit: contain;
  object-position: center;
}
.public-show-title-row {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.public-show-title-row h3 { margin: 0; font-size: 1.35rem; }
.public-show-badge {
  padding: 5px 8px;
  border: 1px solid rgba(80,255,150,.4);
  border-radius: 999px;
  background: rgba(31,106,63,.22);
  color: #7cf5a9;
  font-size: .67rem;
  font-weight: 900;
  letter-spacing: .08em;
}
.public-show-date { margin: 7px 0; color: var(--cyan); font-size: .88rem; font-weight: 800; }
.public-show-body p { margin-bottom: 12px; }
.public-show-watch { margin-top: 4px; min-height: 40px; }
.public-shows-empty {
  padding: 24px;
  border: 1px dashed var(--border);
  border-radius: 14px;
  color: var(--muted);
  text-align: center;
}

.site-footer {
  padding: 28px 5vw;
  border-top: 1px solid var(--border);
  color: var(--muted);
  display: flex;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
}
.site-footer strong { color: var(--text); }

@media (max-width: 760px) {
  .site-header { align-items: flex-start; flex-direction: column; }
  .site-nav { gap: 10px 14px; }
  .hero { padding-top: 80px; }
  .section-grid { grid-template-columns: 1fr; }
  .shows-public-panel { grid-column: auto; }
  .public-live-button { margin-left: 0; width: 100%; }
  .public-show-card { grid-template-columns: 1fr; }
  .public-show-image { width: 100%; height: 180px; }
  .home-video-grid { grid-template-columns: 1fr; }
  .home-featured-section { align-items: flex-start; flex-direction: column; }
  .home-featured-section .button { width: 100%; }
  .home-people-section { grid-template-columns: 1fr; }
}

/* ------------------------------------------------------------------
   LOCKED PROJECT STANDARD · 2026-09-17
   Public readability + luxury-gold section-header language.
   Larger minimum text stays readable on laptops/mobile and !important
   prevents later module files from quietly shrinking it back down.
   ------------------------------------------------------------------ */

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  font-size: 18px;
  line-height: 1.58;
  text-rendering: optimizeLegibility;
}

body main :where(p,li,label,input,select,textarea,button,a.button) {
  font-size: 17px !important;
  line-height: 1.58 !important;
}
body main small,
body footer small {
  font-size: 14.5px !important;
  line-height: 1.5 !important;
}
body main :where(input,select,textarea,button,a.button) {
  min-height: 42px;
}

/* Major public section headings use one metallic luxury-gold treatment. */
body main :where(section,article) > h2,
body main .panel h2,
body main .home-person-copy h2,
body main .public-contact-copy h2,
body main .music-suggestion-copy h2,
body main .album-panel-head h2,
body main .lbx-tier-heading h2,
body main .lbx-champions-head h2,
body main .lbx-section-title strong,
body main .featured-bin-label,
body main .music-store-explainer > div > strong {
  font-family: Georgia,'Times New Roman',serif !important;
  color: #f4d27f !important;
  background: linear-gradient(180deg,#fffdf5 0%,#fff0bf 18%,#e5bf68 40%,#a66b1e 58%,#f3d98f 78%,#fff9e7 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  -webkit-text-stroke: .24px rgba(255,245,215,.58);
  text-shadow: none !important;
  filter: drop-shadow(0 1px 0 rgba(255,247,220,.20)) drop-shadow(0 3px 0 rgba(73,43,14,.72)) drop-shadow(0 6px 12px rgba(0,0,0,.40));
}

/* Capital section kickers remain visible, not microscopic. */
body main :where(.eyebrow,.music-shop-kicker,.music-suggestion-copy>small,.lbx-page-header,.lbx-tier-heading span,.lbx-champions-head span) {
  color: #e8c56e !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.35 !important;
  letter-spacing: .09em !important;
}

body main .featured-bin-label {
  font-size: 16px !important;
  line-height: 1.2 !important;
  letter-spacing: .055em !important;
}
body main .featured-bin-song {
  font-size: 17px !important;
  line-height: 1.3 !important;
}
body main .featured-bin-action {
  font-size: 14px !important;
  line-height: 1.3 !important;
}
body .site-footer,
body .site-footer span,
body .site-footer a {
  font-size: 15.5px;
  line-height: 1.5;
}

@media (max-width: 820px) {
  body { font-size: 17px; }
  body main :where(p,li,label,input,select,textarea,button,a.button) { font-size: 16.5px !important; }
  body main small,
  body footer small { font-size: 14px !important; }
}

@media (max-width: 520px) {
  body { font-size: 17px; }
  body main :where(section,article) > h2,
  body main .panel h2,
  body main .public-contact-copy h2,
  body main .music-suggestion-copy h2 {
    line-height: 1.08 !important;
  }
}

/* 2026-09-18 homepage grid placement: full-width Videos above Shows. */
.videos-home-panel{
  grid-column:1 / -1;
  min-height:210px;
  background:#090a0e!important;
}
@media(max-width:760px){
  .videos-home-panel{grid-column:auto}
}

/* Homepage section rows are intentionally NOT fixed here.
   Admin → Site Content → Homepage Sections controls the DOM order. */
