*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#050609;color:#eee;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}.topbar{position:fixed;z-index:20;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:22px 28px;mix-blend-mode:difference}.logo{font-size:21px;font-weight:700;letter-spacing:.22em}.nav{display:flex;gap:28px;font-size:11px;letter-spacing:.2em}.nav a:hover,.links a:hover,.mail:hover{opacity:.55}.menu-button{display:none;border:0;background:none;color:#fff;font:inherit;font-size:11px;letter-spacing:.2em}.hero{height:100svh;min-height:620px;position:relative;overflow:hidden;background:#02030a}.hero img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 44%;filter:saturate(1.15) contrast(1.06) brightness(.76);transform:scale(1.015)}.veil{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.22),transparent 45%,rgba(0,0,0,.12)),linear-gradient(0deg,rgba(0,0,0,.5),transparent 40%)}.hero-title{position:absolute;left:6vw;bottom:9vh}.hero-title h1{margin:0;font-size:clamp(72px,16vw,240px);font-weight:600;line-height:.72;letter-spacing:-.06em}.hero-title p{margin:25px 0 0 5px;font:11px/1.2 monospace;letter-spacing:.3em}.enter{position:absolute;right:30px;bottom:28px;font:11px monospace;letter-spacing:.15em}.section{position:relative;min-height:70vh;padding:110px 7vw;border-top:1px solid #191b24;display:flex;flex-direction:column;justify-content:center}.index{font:10px monospace;letter-spacing:.2em;color:#6670a8}.section h2{margin:22px 0 45px;font-size:clamp(64px,13vw,180px);line-height:.8;letter-spacing:-.055em;font-weight:500}.links{display:flex;flex-direction:column;width:min(700px,100%)}.links a{display:flex;justify-content:space-between;padding:17px 0;border-bottom:1px solid #25283a;font:14px monospace;letter-spacing:.12em}.muted,.bio{font:14px/1.7 monospace;color:#9699aa;letter-spacing:.06em}.mail{display:inline-block;margin-top:42px;font:13px monospace;border-bottom:1px solid #4b527c;padding-bottom:5px;width:max-content}footer{display:flex;justify-content:space-between;padding:30px 7vw 45px;font:10px monospace;letter-spacing:.15em;color:#656878;border-top:1px solid #191b24}@media(max-width:700px){.topbar{padding:20px}.menu-button{display:block}.nav{display:none;position:absolute;top:60px;right:20px;flex-direction:column;align-items:flex-end;background:#080910;padding:22px}.nav.open{display:flex}.hero-title{left:22px;bottom:13vh}.hero-title h1{font-size:23vw}.enter{right:20px}.section{padding:90px 22px;min-height:62vh}.section h2{font-size:21vw}footer{padding-left:22px;padding-right:22px}}
.section-action{
  position:absolute;
  top:110px;
  right:7vw;
  margin:0;
  font:10px monospace;
  letter-spacing:.2em;
  color:#6670a8;
}
@media(max-width:700px){
  .section-action{top:90px;right:22px}
}

.live-list{width:min(900px,100%);margin-top:4px;border-top:1px solid #25283a}
.live-date{display:grid;grid-template-columns:minmax(140px,.7fr) 1.5fr;gap:40px;padding:24px 0;border-bottom:1px solid #25283a;font:13px/1.5 monospace;letter-spacing:.1em}
.live-date time{color:#eee}
.live-place{display:grid;grid-template-columns:.65fr 1fr 1.25fr;gap:24px}
.live-place strong{font-weight:400;color:#eee}
.live-place span{color:#9699aa}
.booking{display:flex;gap:34px;margin-top:46px;align-items:baseline;font:11px monospace;letter-spacing:.14em}
.booking span{color:#6670a8}
.booking a{border-bottom:1px solid #4b527c;padding-bottom:5px}
.booking a:hover{opacity:.55}
@media(max-width:700px){.live-date{grid-template-columns:1fr;gap:12px}.live-place{grid-template-columns:1fr;gap:4px}.booking{flex-direction:column;gap:12px;margin-top:38px}}
.video-list{width:min(900px,100%);border-top:1px solid #25283a}
.video-list a{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding:24px 0;border-bottom:1px solid #25283a;transition:opacity .2s}
.video-list a:hover{opacity:.55}.video-list strong{font-size:clamp(22px,3vw,42px);font-weight:400;letter-spacing:-.02em}.video-list span{font:10px monospace;letter-spacing:.14em;color:#9699aa}
.info .bio{max-width:1050px;font-size:clamp(18px,2.25vw,31px);line-height:1.5;color:#c9cbd4;letter-spacing:0}.contact{display:flex;gap:34px;flex-wrap:wrap}
@media(max-width:700px){.video-list a{align-items:flex-start;flex-direction:column;gap:8px}.info .bio{font-size:18px}.contact{gap:0;flex-direction:column}}
/* final flow */
.hero:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:30vh;background:linear-gradient(to bottom,transparent 0%,rgba(5,6,9,.42) 38%,#050609 100%);pointer-events:none}.first-section{border-top:0;padding-top:150px}.live-videos{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:64px}.live-videos article{min-width:0}.live-videos video{display:block;width:100%;aspect-ratio:16/9;background:#000;object-fit:cover}.live-videos h3{font-size:15px;font-weight:400;letter-spacing:.04em;margin:15px 0 5px}.live-videos p{font:10px monospace;letter-spacing:.18em;color:#6670a8;margin:0}@media(max-width:800px){.live-videos{grid-template-columns:1fr;gap:42px}.first-section{padding-top:110px}}

.show-group{width:min(900px,100%);margin-top:4px}
.show-group+.show-group{margin-top:58px}
.show-label{margin:0 0 14px;font:10px monospace;letter-spacing:.2em;color:#6670a8}
.past-shows{opacity:.62}
.past-shows .live-date{padding:18px 0}
.past-shows .live-date time,.past-shows .live-place strong{color:#b7b9c3}
@media(max-width:700px){.show-group+.show-group{margin-top:44px}}
.track-samples{width:min(700px,100%);margin:0 0 38px}.track{padding:0 0 18px;margin:0 0 18px;border-bottom:1px solid #25283a}.track h3{margin:0 0 10px;font:13px monospace;font-weight:400;letter-spacing:.12em;color:#d8d9df}.track iframe{display:block;background:#0b0c12;border:0}@media(max-width:700px){.track-samples{margin-bottom:30px}.track iframe{height:120px}}

/* MUSIC song examples: keep embedded SoundCloud players visually aligned with the dark JOYST layout */
.samples-label{margin:0 0 24px;font:13px monospace;letter-spacing:.2em;color:#d8d9df;text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}.full-albums-label{margin-top:2px;margin-bottom:18px}
.track iframe{background:#000;border-radius:0}

.video-group-label{width:min(900px,100%);margin:0 0 22px;font:13px monospace;font-weight:400;letter-spacing:.2em;color:#d8d9df;text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}.live-group-label{margin-top:64px;margin-bottom:22px}.live-group-label+.live-videos{margin-top:0}


/* v19 — SONG EXAMPLES */
.track{
  display:grid;
  grid-template-columns:120px minmax(0,1fr);
  gap:20px;
  align-items:center;
  padding:0 0 22px;
  margin:0 0 22px;
}
.track-cover{
  display:block;
  width:120px;
  height:120px;
  object-fit:cover;
  filter:none !important;
  opacity:1;
}
.track-player{min-width:0}
.track-player h3{margin:0 0 10px}
.track-player iframe{
  display:block;
  width:100%;
  height:120px;
  background:#050609;
}
@media(max-width:700px){
  .track{
    grid-template-columns:88px minmax(0,1fr);
    gap:14px;
  }
  .track-cover{
    width:88px;
    height:88px;
  }
  .track-player iframe{height:120px}
}

/* v19 — invert SoundCloud player only */
.track-player iframe{
  filter:invert(1) hue-rotate(180deg);
}
