/* Event-specific orb override — cyan/lime palette for this edition 
.orb-1 { background: radial-gradient(circle, #00C8FF 0%, transparent 68%); opacity: 0.45; }
.orb-2 { background: radial-gradient(circle, #C3FF00 0%, transparent 68%); opacity: 0.28; }
.orb-3 { background: radial-gradient(circle, #BF00FF 0%, transparent 68%); opacity: 0.38; }
.orb-4 { background: radial-gradient(circle, #00C8FF 0%, transparent 68%); opacity: 0.2; } */

/* Immersive hero mesh gradient unique to this event */
.event-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 80% 60% at 70% 20%, rgba(195,255,0,0.12) 0%, transparent 60%),
    radial-gradient(ellipse 60% 80% at 20% 70%, rgba(0,200,255,0.1) 0%, transparent 60%);
  z-index: 0;
  pointer-events: none;
}

/* Countdown bar */
.countdown {
  display: flex;
  gap: 4px;
  flex-wrap: wrap;
  margin-bottom: 32px;
}

.countdown-unit {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 10px 18px;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: var(--radius-sm);
  min-width: 72px;
}

.countdown-num {
  font-size: 2rem;
  font-weight: 900;
  letter-spacing: -0.04em;
  line-height: 1;
  color: var(--text);
}

.countdown-label {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--text-subtle);
  margin-top: 4px;
}

.countdown-sep {
  font-size: 2rem;
  font-weight: 900;
  color: var(--text-subtle);
  padding: 10px 0;
  line-height: 1;
  align-self: flex-start;
}

/* Edition badge strip */
.edition-strip {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 40px;
  padding: 10px 28px;
  background: rgba(195,255,0,0.08);
  border-bottom: 1px solid rgba(195,255,0,0.15);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(195,255,0,0.7);
  overflow: hidden;
  visibility: hidden;
}

.edition-strip span { white-space: nowrap; }

/* Map / venue card */
.venue-card {
  padding: 28px 32px;
  border-radius: var(--radius);
  display: flex;
  align-items: center;
  gap: 20px;
}

.venue-icon {
  width: 52px;
  height: 52px;
  border-radius: var(--radius-sm);
  background: rgba(0,200,255,0.1);
  border: 1px solid rgba(0,200,255,0.2);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
  flex-shrink: 0;
}

.venue-name {
  font-size: 1.1rem;
  font-weight: 700;
  margin-bottom: 3px;
}

.venue-address {
  font-size: 13px;
  color: var(--text-muted);
}

.venue-link {
  margin-top: 6px;
  font-size: 12px;
  color: var(--cyan);
  font-weight: 600;
  transition: opacity 0.2s;
}

.venue-link:hover { opacity: 0.7; }

/* Sticky ticket CTA on mobile */
.sticky-cta {
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 90;
  padding: 16px 20px;
  background: rgba(6,0,14,0.92);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border-top: 1px solid var(--card-border);
}

@media (max-width: 768px) {
  .sticky-cta { display: block; }
  body { padding-bottom: 80px; }
}

/* ══════════════════════════════════════════════════════════
   EVENT COLOUR SCHEMES
   data-event-scheme on <body> drives orbs / strip / cta
   ══════════════════════════════════════════════════════════ */

/* ── PINK / MAGENTA ── */
[data-event-scheme="pink"] .orb-1,
body:not([data-event-scheme]) .orb-1 { background: radial-gradient(circle,#FF2A6D 0%,transparent 68%); opacity:.50; }
[data-event-scheme="pink"] .orb-2,
body:not([data-event-scheme]) .orb-2 { background: radial-gradient(circle,#FF007A 0%,transparent 68%); opacity:.30; }
[data-event-scheme="pink"] .orb-3,
body:not([data-event-scheme]) .orb-3 { background: radial-gradient(circle,#BF00FF 0%,transparent 68%); opacity:.38; }
[data-event-scheme="pink"] .orb-4,
body:not([data-event-scheme]) .orb-4 { background: radial-gradient(circle,#FF2A6D 0%,transparent 68%); opacity:.18; }

[data-event-scheme="pink"] .event-hero::before,
body:not([data-event-scheme]) .event-hero::before {
  background:
    radial-gradient(ellipse 80% 60% at 70% 20%, rgba(255,42,109,.16) 0%, transparent 60%),
    radial-gradient(ellipse 60% 80% at 20% 70%, rgba(255,0,122,.10) 0%, transparent 60%);
}
[data-event-scheme="pink"] .edition-strip,
body:not([data-event-scheme]) .edition-strip {
  background: rgba(255,42,109,.08);
  border-bottom-color: rgba(255,42,109,.18);
  color: rgba(255,100,140,.85);
}
[data-event-scheme="pink"] .gradient-text-warm,
body:not([data-event-scheme]) .gradient-text-warm {
  background-image: linear-gradient(135deg, #FF2A6D 0%, #FF007A 50%, #BF00FF 100%);
}
[data-event-scheme="pink"] .btn-lime,
body:not([data-event-scheme]) .btn-lime {
  background: linear-gradient(135deg, #FF2A6D 0%, #C4005A 100%);
  color: #fff;
  box-shadow: 0 0 28px rgba(255,42,109,.4);
}
[data-event-scheme="pink"] .btn-lime:hover,
body:not([data-event-scheme]) .btn-lime:hover {
  background: linear-gradient(135deg, #FF5590 0%, #FF2A6D 100%);
  box-shadow: 0 0 40px rgba(255,42,109,.55);
}
[data-event-scheme="pink"] .venue-icon,
body:not([data-event-scheme]) .venue-icon { background: rgba(255,42,109,.1); border-color: rgba(255,42,109,.22); }
[data-event-scheme="pink"] .venue-link,
body:not([data-event-scheme]) .venue-link  { color: #FF2A6D; }

/* ── CYAN / ELECTRIC ── */
[data-event-scheme="cyan"] .orb-1 { background: radial-gradient(circle,#00C8FF 0%,transparent 68%); opacity:.52; }
[data-event-scheme="cyan"] .orb-2 { background: radial-gradient(circle,#0066FF 0%,transparent 68%); opacity:.35; }
[data-event-scheme="cyan"] .orb-3 { background: radial-gradient(circle,#00C8FF 0%,transparent 68%); opacity:.28; }
[data-event-scheme="cyan"] .orb-4 { background: radial-gradient(circle,#BF00FF 0%,transparent 68%); opacity:.20; }

[data-event-scheme="cyan"] .event-hero::before {
  background:
    radial-gradient(ellipse 80% 60% at 70% 20%, rgba(0,200,255,.16) 0%, transparent 60%),
    radial-gradient(ellipse 60% 80% at 20% 70%, rgba(0,102,255,.12) 0%, transparent 60%);
}
[data-event-scheme="cyan"] .edition-strip {
  background: rgba(0,200,255,.08);
  border-bottom-color: rgba(0,200,255,.18);
  color: rgba(0,200,255,.85);
}
[data-event-scheme="cyan"] .gradient-text-warm {
  background-image: linear-gradient(135deg, #00C8FF 0%, #0066FF 50%, #BF00FF 100%);
}
[data-event-scheme="cyan"] .btn-lime {
  background: linear-gradient(135deg, #00C8FF 0%, #0077CC 100%);
  color: #fff;
  box-shadow: 0 0 28px rgba(0,200,255,.4);
}
[data-event-scheme="cyan"] .btn-lime:hover {
  background: linear-gradient(135deg, #33D4FF 0%, #00C8FF 100%);
  box-shadow: 0 0 40px rgba(0,200,255,.55);
}
[data-event-scheme="cyan"] .venue-icon { background: rgba(0,200,255,.1); border-color: rgba(0,200,255,.22); }
[data-event-scheme="cyan"] .venue-link  { color: #00C8FF; }

/* ── FIRE / SUNSET ── */
[data-event-scheme="fire"] .orb-1 { background: radial-gradient(circle,#FF6432 0%,transparent 68%); opacity:.52; }
[data-event-scheme="fire"] .orb-2 { background: radial-gradient(circle,#FF2A6D 0%,transparent 68%); opacity:.35; }
[data-event-scheme="fire"] .orb-3 { background: radial-gradient(circle,#FFAA00 0%,transparent 68%); opacity:.30; }
[data-event-scheme="fire"] .orb-4 { background: radial-gradient(circle,#FF4500 0%,transparent 68%); opacity:.20; }

[data-event-scheme="fire"] .event-hero::before {
  background:
    radial-gradient(ellipse 80% 60% at 70% 20%, rgba(255,100,50,.16) 0%, transparent 60%),
    radial-gradient(ellipse 60% 80% at 20% 70%, rgba(255,42,109,.10) 0%, transparent 60%);
}
[data-event-scheme="fire"] .edition-strip {
  background: rgba(255,100,50,.08);
  border-bottom-color: rgba(255,100,50,.18);
  color: rgba(255,150,80,.9);
}
[data-event-scheme="fire"] .gradient-text-warm {
  background-image: linear-gradient(135deg, #FFAA00 0%, #FF6432 50%, #FF2A6D 100%);
}
[data-event-scheme="fire"] .btn-lime {
  background: linear-gradient(135deg, #FF6432 0%, #CC2800 100%);
  color: #fff;
  box-shadow: 0 0 28px rgba(255,100,50,.4);
}
[data-event-scheme="fire"] .btn-lime:hover {
  background: linear-gradient(135deg, #FF8855 0%, #FF6432 100%);
  box-shadow: 0 0 40px rgba(255,100,50,.55);
}
[data-event-scheme="fire"] .venue-icon { background: rgba(255,100,50,.1); border-color: rgba(255,100,50,.22); }
[data-event-scheme="fire"] .venue-link  { color: #FF6432; }

/* ── MYSTIC / AURORA ── */
[data-event-scheme="mystic"] .orb-1 { background: radial-gradient(circle,#BF00FF 0%,transparent 68%); opacity:.52; }
[data-event-scheme="mystic"] .orb-2 { background: radial-gradient(circle,#6600FF 0%,transparent 68%); opacity:.38; }
[data-event-scheme="mystic"] .orb-3 { background: radial-gradient(circle,#FF2A6D 0%,transparent 68%); opacity:.28; }
[data-event-scheme="mystic"] .orb-4 { background: radial-gradient(circle,#9900CC 0%,transparent 68%); opacity:.22; }

[data-event-scheme="mystic"] .event-hero::before {
  background:
    radial-gradient(ellipse 80% 60% at 70% 20%, rgba(191,0,255,.16) 0%, transparent 60%),
    radial-gradient(ellipse 60% 80% at 20% 70%, rgba(102,0,255,.12) 0%, transparent 60%);
}
[data-event-scheme="mystic"] .edition-strip {
  background: rgba(191,0,255,.08);
  border-bottom-color: rgba(191,0,255,.18);
  color: rgba(191,0,255,.85);
}
[data-event-scheme="mystic"] .gradient-text-warm {
  background-image: linear-gradient(135deg, #BF00FF 0%, #6600FF 50%, #FF2A6D 100%);
}
[data-event-scheme="mystic"] .btn-lime {
  background: linear-gradient(135deg, #BF00FF 0%, #5500BB 100%);
  color: #fff;
  box-shadow: 0 0 28px rgba(191,0,255,.4);
}
[data-event-scheme="mystic"] .btn-lime:hover {
  background: linear-gradient(135deg, #CC33FF 0%, #BF00FF 100%);
  box-shadow: 0 0 40px rgba(191,0,255,.55);
}
[data-event-scheme="mystic"] .venue-icon { background: rgba(191,0,255,.1); border-color: rgba(191,0,255,.22); }
[data-event-scheme="mystic"] .venue-link  { color: #BF00FF; }

/* ── LIME / DEFAULT ── (same values as the unscoped base styles; orb opacity left to base) */
[data-event-scheme="lime"] .orb-1 { background: radial-gradient(circle,var(--pink) 0%,transparent 68%); }
[data-event-scheme="lime"] .orb-2 { background: radial-gradient(circle,var(--purple) 0%,transparent 68%); }
[data-event-scheme="lime"] .orb-3 { background: radial-gradient(circle,var(--cyan) 0%,transparent 68%); }
[data-event-scheme="lime"] .orb-4 { background: radial-gradient(circle,var(--lime) 0%,transparent 68%); }

[data-event-scheme="lime"] .event-hero::before {
  background:
    radial-gradient(ellipse 80% 60% at 70% 20%, rgba(195,255,0,.12) 0%, transparent 60%),
    radial-gradient(ellipse 60% 80% at 20% 70%, rgba(0,200,255,.10) 0%, transparent 60%);
}
[data-event-scheme="lime"] .edition-strip {
  background: rgba(195,255,0,.08);
  border-bottom-color: rgba(195,255,0,.15);
  color: rgba(195,255,0,.7);
}
[data-event-scheme="lime"] .gradient-text-warm {
  background-image: linear-gradient(135deg, var(--lime) 0%, var(--cyan) 50%, var(--purple) 100%);
}
[data-event-scheme="lime"] .btn-lime {
  background: var(--lime);
  color: #000;
  box-shadow: 0 0 24px var(--lime-glow);
}
[data-event-scheme="lime"] .btn-lime:hover {
  background: var(--lime);
  box-shadow: 0 0 40px var(--lime-glow);
}
[data-event-scheme="lime"] .venue-icon { background: rgba(0,200,255,.1); border-color: rgba(0,200,255,.2); }
[data-event-scheme="lime"] .venue-link  { color: var(--cyan); }

/* ── Light-mode scheme overrides (edition strip colour stays on-brand) ── */
[data-theme="light"] [data-event-scheme="pink"] .edition-strip,
[data-theme="light"] body:not([data-event-scheme]) .edition-strip { background: rgba(255,42,109,.1);  border-bottom-color: rgba(255,42,109,.18);  color: rgba(200,0,60,.65); }
[data-theme="light"] [data-event-scheme="cyan"]   .edition-strip { background: rgba(0,200,255,.1);   border-bottom-color: rgba(0,200,255,.18);   color: rgba(0,140,190,.75); }
[data-theme="light"] [data-event-scheme="fire"]   .edition-strip { background: rgba(255,100,50,.1);  border-bottom-color: rgba(255,100,50,.18);  color: rgba(200,60,0,.75); }
[data-theme="light"] [data-event-scheme="mystic"] .edition-strip { background: rgba(191,0,255,.08);  border-bottom-color: rgba(191,0,255,.16);   color: rgba(140,0,200,.7); }

[data-theme="light"] [data-event-scheme="pink"] .event-hero::before,
[data-theme="light"] body:not([data-event-scheme]) .event-hero::before { background: radial-gradient(ellipse 80% 60% at 70% 20%, rgba(255,42,109,.18) 0%, transparent 60%), radial-gradient(ellipse 60% 80% at 20% 70%, rgba(255,0,122,.12) 0%, transparent 60%); }
[data-theme="light"] [data-event-scheme="cyan"]   .event-hero::before { background: radial-gradient(ellipse 80% 60% at 70% 20%, rgba(0,200,255,.20) 0%, transparent 60%), radial-gradient(ellipse 60% 80% at 20% 70%, rgba(0,102,255,.14) 0%, transparent 60%); }
[data-theme="light"] [data-event-scheme="fire"]   .event-hero::before { background: radial-gradient(ellipse 80% 60% at 70% 20%, rgba(255,100,50,.18) 0%, transparent 60%), radial-gradient(ellipse 60% 80% at 20% 70%, rgba(255,42,109,.12) 0%, transparent 60%); }
[data-theme="light"] [data-event-scheme="mystic"] .event-hero::before { background: radial-gradient(ellipse 80% 60% at 70% 20%, rgba(191,0,255,.18) 0%, transparent 60%), radial-gradient(ellipse 60% 80% at 20% 70%, rgba(102,0,255,.14) 0%, transparent 60%); }

/* Lime light mode = the light values from styles.css (needed so the scheme rules above don't override them) */
[data-theme="light"] [data-event-scheme="lime"] .edition-strip { background: rgba(195,255,0,.15); border-bottom-color: rgba(21,0,37,.07); color: rgba(21,0,37,.45); }
[data-theme="light"] [data-event-scheme="lime"] .event-hero::before { background: radial-gradient(ellipse 80% 60% at 70% 20%, rgba(195,255,0,.2) 0%, transparent 60%), radial-gradient(ellipse 60% 80% at 20% 70%, rgba(0,200,255,.16) 0%, transparent 60%); }
[data-theme="light"] [data-event-scheme="lime"] .venue-icon { background: rgba(0,200,255,.12); border-color: rgba(0,200,255,.22); }


/* Texture stripe on event hero */
.edition-number {
  position: absolute;
  right: -20px;
  top: 50%;
  transform: translateY(-50%) rotate(90deg);
  font-size: 14vw;
  font-weight: 900;
  letter-spacing: -0.05em;
  color: transparent;
  -webkit-text-stroke: 1px rgba(255,255,255,0.04);
  pointer-events: none;
  user-select: none;
  white-space: nowrap;
}

/* Responsive 16:9 YouTube embed */
.video-container {
  position: relative;
  width: 100%;
  max-width: 650px;
  height: 0;
  padding-bottom: 56.25%;
  margin: 16px 0;
}

.video-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
