/* Welcome header concept. Remove its link in index.php to restore the previous header. */
html body.page-index.page-welcome .site-header.si-header-organic {
  --welcome-logo-size: 148px;
  padding:0!important;
  background:radial-gradient(ellipse at 0 20%,#41205a80,transparent 28%),radial-gradient(ellipse at 100% 90%,#49226166,transparent 30%),#09060f!important;
  border-bottom:1px solid #9861bd66!important;
  box-shadow:0 12px 32px #0005!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
html body.page-index.page-welcome .site-header.si-header-organic::after {height:1px!important;background:linear-gradient(90deg,#a9e53444,#ac63dc88,#a9e53444)!important;box-shadow:none!important}
html body.page-index.page-welcome .site-header.si-header-organic .main-nav {
  display:grid!important;grid-template-columns:var(--welcome-logo-size) minmax(0,1fr) 100px!important;
  grid-template-rows:auto auto!important;gap:0 32px!important;
  width:min(calc(100% - 64px),1400px)!important;max-width:1400px!important;
  min-height:0!important;margin:0 auto!important;padding:28px 0 0!important;
}
html body.page-index.page-welcome .site-header.si-header-organic .si-brand-cluster {display:contents!important}
html body.page-index.page-welcome .site-header.si-header-organic .brand,
html body.page-index.page-welcome .site-header.si-header-organic .brand-logo-shell,
html body.page-index.page-welcome .site-header.si-header-organic .brand-logo {
  width:var(--welcome-logo-size)!important;min-width:var(--welcome-logo-size)!important;max-width:var(--welcome-logo-size)!important;
  height:var(--welcome-logo-size)!important;min-height:var(--welcome-logo-size)!important;max-height:var(--welcome-logo-size)!important;
  margin:0!important;padding:0!important;flex-basis:auto!important;border-radius:50%!important;
  object-fit:contain!important;transform:none!important;filter:none!important;box-shadow:none!important;
}
html body.page-index.page-welcome .site-header.si-header-organic .brand {grid-column:1!important;grid-row:1!important;align-self:center!important;justify-self:center!important}
html body.page-index.page-welcome .site-header.si-header-organic .brand-logo-shell::before {display:none!important}
html body.page-index.page-welcome .site-header.si-header-organic .brand-logo-replay {display:none!important}
html body.page-index.page-welcome .site-header.si-header-organic .si-brand-copy {
  grid-column:2!important;grid-row:1!important;align-self:center!important;justify-self:center!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  width:100%!important;max-width:850px!important;height:auto!important;transform:none!important;gap:12px!important;
}
html body.page-index.page-welcome .site-header.si-header-organic .si-brand-label,
html body.page-index.page-welcome .site-header.si-header-organic .si-brand-label-image {
  width:100%!important;max-width:100%!important;height:auto!important;max-height:none!important;
  margin:0!important;object-fit:contain!important;object-position:center!important;transform:none!important;filter:none!important;
}
html body.page-index.page-welcome .site-header.si-header-organic .si-brand-tagline {
  width:100%!important;margin:0!important;padding:0!important;text-align:center!important;
  font-size:clamp(10px,1vw,14px)!important;line-height:1.4!important;font-weight:500!important;letter-spacing:.28em!important;color:#c8bcd9!important;
}
html body.page-index.page-welcome .site-header.si-header-organic .si-language-switch {
  grid-column:3!important;grid-row:1!important;justify-self:end!important;align-self:center!important;
  padding:0!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;
}
html body.page-index.page-welcome .site-header.si-header-organic .si-language-switch a {border-radius:0!important;background:none!important;min-height:44px!important}
html body.page-index.page-welcome .site-header.si-header-organic .si-language-switch a.active {color:#c9ff43!important;box-shadow:inset 0 -2px #c9ff43!important}
html body.page-index.page-welcome .site-header.si-header-organic .nav-links {
  grid-column:1 / -1!important;grid-row:2!important;display:flex!important;justify-content:space-evenly!important;align-items:stretch!important;
  width:100%!important;max-width:none!important;gap:12px!important;margin:24px 0 0!important;padding:0!important;
  border:0!important;border-top:1px solid #a578bf40!important;border-radius:0!important;background:none!important;box-shadow:none!important;
}
html body.page-index.page-welcome .site-header.si-header-organic .nav-links a {
  display:flex!important;align-items:center!important;justify-content:center!important;position:relative!important;
  width:auto!important;min-width:0!important;max-width:none!important;min-height:56px!important;padding:0 8px!important;
  border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;
  font-size:15px!important;font-weight:500!important;color:#ddd4e9!important;text-shadow:none!important;transform:none!important;
}
html body.page-index.page-welcome .site-header.si-header-organic .nav-links a::before,
html body.page-index.page-welcome .site-header.si-header-organic .nav-links a::after {display:none!important}
html body.page-index.page-welcome .site-header.si-header-organic .nav-links a.active,
html body.page-index.page-welcome .site-header.si-header-organic .nav-links a:hover {color:#c9ff43!important;box-shadow:inset 0 -3px #c9ff43!important}
html body.page-index.page-welcome .site-header.si-header-organic a:focus-visible,
html body.page-index.page-welcome .site-header.si-header-organic button:focus-visible {outline:2px solid #c9ff43!important;outline-offset:4px!important}
@media(min-width:768px) and (max-width:1050px){
  html body.page-index.page-welcome .site-header.si-header-organic {--welcome-logo-size:100px}
  html body.page-index.page-welcome .site-header.si-header-organic .main-nav {width:calc(100% - 40px)!important;gap:0 18px!important;grid-template-columns:100px minmax(0,1fr) 88px!important;padding-top:20px!important}
  html body.page-index.page-welcome .site-header.si-header-organic .nav-links {gap:4px!important;margin-top:20px!important}
  html body.page-index.page-welcome .site-header.si-header-organic .nav-links a {font-size:13px!important}
}
@media(max-width:767px){
  html body.page-index.page-welcome .site-header.si-header-organic {--welcome-logo-size:44px;min-height:80px!important}
  html body.page-index.page-welcome .site-header.si-header-organic .main-nav {
    grid-template-columns:44px minmax(0,1fr) 44px!important;grid-template-rows:auto!important;
    width:100%!important;gap:10px!important;padding:max(14px,env(safe-area-inset-top)) 12px 14px!important;min-height:80px!important;
  }
  html body.page-index.page-welcome .site-header.si-header-organic .si-brand-copy {gap:6px!important}
  html body.page-index.page-welcome .site-header.si-header-organic .si-brand-tagline {font-size:clamp(6px,1.7vw,10px)!important;letter-spacing:.09em!important;white-space:nowrap!important}
  html body.page-index.page-welcome .site-header.si-header-organic .nav-links,
  html body.page-index.page-welcome .site-header.si-header-organic .si-language-switch {display:none!important}
  html body.page-index.page-welcome .site-header.si-header-organic .si-mobile-menu-toggle {
    grid-column:3!important;grid-row:1!important;display:grid!important;grid-template-columns:24px!important;grid-template-rows:repeat(3,2px)!important;
    gap:5px!important;place-content:center!important;width:44px!important;height:44px!important;border:1px solid #ad81d03b!important;
    border-radius:10px!important;background:#21142b!important;box-shadow:none!important;
  }
  html body.page-index.page-welcome .site-header.si-header-organic .si-mobile-menu-toggle span,
  html body.page-index.page-welcome .site-header.si-header-organic .si-mobile-menu-toggle::before,
  html body.page-index.page-welcome .site-header.si-header-organic .si-mobile-menu-toggle::after {position:static!important;content:""!important;width:24px!important;height:2px!important;border-radius:1px!important;background:#e1d5ef!important;transform:none!important}
}

/* Home composition: keep the DJ and its player together below the header. */
@media(min-width:768px){
  html body.page-index.page-welcome .site-header.si-header-organic {--welcome-logo-size:108px}
  html body.page-index.page-welcome .site-header.si-header-organic .main-nav {grid-template-columns:108px minmax(0,1fr) 100px!important;padding-top:12px!important;gap:0 24px!important}
  html body.page-index.page-welcome .site-header.si-header-organic .si-brand-copy {max-width:760px!important;gap:2px!important}
  html body.page-index.page-welcome .site-header.si-header-organic .si-brand-label-image {max-height:104px!important}
  html body.page-index.page-welcome .site-header.si-header-organic .si-brand-tagline {font-size:12px!important;letter-spacing:.2em!important}
  html body.page-index.page-welcome .site-header.si-header-organic .nav-links {margin-top:10px!important}
  html body.page-index.page-welcome .site-header.si-header-organic .nav-links a {min-height:44px!important}
}
html body.page-index.page-welcome .page-hero {display:block!important;min-height:0!important;padding:0!important;margin:0!important;background:#09060f!important}
html body.page-index.page-welcome .page-hero::before,
html body.page-index.page-welcome .page-hero::after {display:none!important}
html body.page-index.page-welcome .home-dj-stage {position:relative;isolation:isolate;width:100%;max-width:1440px;height:clamp(520px,62svh,700px);margin:0 auto;overflow:hidden}
html body.page-index.page-welcome .home-dj-artwork {display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 12%}
html body.page-index.page-welcome .home-dj-stage .synaptic-live-fx {position:absolute!important;inset:0!important;width:100%!important;height:100%!important;z-index:2!important;mix-blend-mode:normal!important}
html body.page-index.page-welcome .home-dj-stage .si-energy {display:none!important}
html body.page-index.page-welcome .home-dj-stage .si-glow-music-button {opacity:1!important;visibility:visible!important;pointer-events:auto!important;min-width:80px!important}
html body.page-index.page-welcome .page-hero > .container {width:min(calc(100% - 40px),1100px)!important;padding:20px 0 28px!important;margin:0 auto!important;position:relative!important;inset:auto!important;transform:none!important}
html body.page-index.page-welcome .home-hero-layout {display:block!important;margin:0!important}
html body.page-index.page-welcome .home-hero-copy {display:block!important;max-width:none!important;text-align:center!important}
html body.page-index.page-welcome .page-lead {max-width:none!important;margin:0 0 6px!important;font-size:clamp(15px,1.2vw,18px)!important}
html body.page-index.page-welcome .home-booking-note {margin:0!important}
html body.page-index.page-welcome .page-hero-actions {justify-content:center!important;margin:16px 0 0!important;gap:12px!important}
@media(max-width:767px){
  html body.page-index.page-welcome .home-dj-stage {height:clamp(350px,58svh,500px)}
  html body.page-index.page-welcome .home-dj-artwork {min-height:600px}
  html body.page-index.page-welcome .page-hero > .container {padding:16px 0 24px!important}
}

/* Event artwork remains fully visible inside the home card. */
body.page-index .home-events-card .home-event-poster {display:block;margin:12px 0 20px}
body.page-index .home-events-card .home-event-poster img {display:block;width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;border-radius:12px}
body.page-index .home-events-card h4 {margin:0 0 10px;font-size:1.1rem;line-height:1.4}
body.page-index .home-events-card .contact-card-btn {max-width:100%;white-space:normal}
