:root{
  --purple:#462d60;
  --lavender:#7a6ba9;
  --acid:#d5e092;
  --ink:#08070a;
  --panel:#111015;
  --text:#f5f2f6;
  --muted:#bdb7c3;
  --line:rgba(255,255,255,.14);
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--ink)}
body{margin:0;background:var(--ink);color:var(--text);font-family:Arial,Helvetica,sans-serif;line-height:1.55}
a{color:inherit} img{display:block;max-width:100%}
::selection{background:var(--acid);color:#151018}
.skip-link{position:fixed;left:1rem;top:-5rem;z-index:999;background:var(--acid);color:#111;padding:.7rem 1rem;font-weight:800}.skip-link:focus{top:1rem}
.site-header{height:76px;position:fixed;inset:0 0 auto;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1rem,4vw,3rem);background:linear-gradient(#08070ae8,#08070a00);transition:.25s}
.site-header.scrolled{background:#08070af3;border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}
.brand img{width:145px}.header-social{display:flex;align-items:center;gap:.55rem;margin-left:auto;margin-right:1.4rem}.social-icon{width:34px;height:34px;border:1px solid #ffffff3d;border-radius:50%;display:inline-grid;place-items:center;text-decoration:none;font-size:.63rem;font-weight:900;letter-spacing:-.02em;transition:.2s;background:#08070a80}.social-icon:hover{background:var(--acid);border-color:var(--acid);color:#151018;transform:translateY(-2px)}.mail-icon{font-size:.95rem}.disabled-icon{opacity:.38;cursor:not-allowed}.main-nav{display:flex;gap:1.6rem;align-items:center}.main-nav>a{text-decoration:none;text-transform:uppercase;font-weight:800;font-size:.8rem;letter-spacing:.13em}.main-nav>a:hover{color:var(--acid)}
.shop-link{border:1px solid var(--acid);padding:.65rem .9rem}.menu-social{display:none}.menu-toggle{display:none;background:none;border:1px solid var(--line);color:white;padding:.65rem .8rem;font-weight:800;letter-spacing:.08em}
.hero{min-height:100svh;position:relative;display:grid;place-items:center;background:url('assets/hero.jpg') center 45%/cover no-repeat;overflow:hidden}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,7,10,.84) 0%,rgba(8,7,10,.45) 52%,rgba(8,7,10,.15) 100%),linear-gradient(0deg,#08070ae8 0%,transparent 42%)}
.hero-content{position:relative;width:min(var(--max),92vw);padding-top:72px}.hero-logo{width:min(660px,72vw);filter:drop-shadow(0 14px 22px #0008);margin-bottom:1.2rem}.eyebrow,.kicker,.date,.release-year{font-size:.74rem;letter-spacing:.22em;font-weight:900;color:var(--acid);margin:0 0 .5rem;text-transform:uppercase}.hero h1{font-size:clamp(3.6rem,10vw,8.8rem);line-height:.83;margin:.05em 0 .1em;letter-spacing:-.06em}.hero-copy{font-size:clamp(1rem,2.1vw,1.35rem);max-width:520px;color:#e2dde5}.button{display:inline-block;text-decoration:none;text-transform:uppercase;font-weight:900;letter-spacing:.08em;padding:1rem 1.25rem;margin-top:1rem}.button-primary{background:var(--acid);color:#171019}.button-primary:hover{transform:translateY(-2px);box-shadow:0 10px 30px #0007}.scroll-cue{position:absolute;bottom:1rem;left:50%;font-size:2rem;text-decoration:none;color:var(--acid);animation:bob 1.5s infinite}@keyframes bob{50%{transform:translateY(7px)}}
.section{padding:clamp(4.5rem,9vw,8rem) clamp(1rem,4vw,3rem)}.section-dark{background:#0b0a0d}.section-purple{background:linear-gradient(140deg,#1a1021,var(--purple))}.section-live{background:var(--acid);color:#161217}.section-live .kicker{color:var(--purple)}.section-head{width:min(var(--max),100%);margin:0 auto 2.5rem}.section-head h2,.about h2,.follow h2{font-size:clamp(3rem,8vw,6.8rem);line-height:.88;margin:.05em 0 .16em;letter-spacing:-.055em}.section-head>p:last-child{max-width:650px;color:var(--muted)}.section-live .section-head>p:last-child{color:#423b43}
.video-grid{width:min(var(--max),100%);margin:auto;display:grid;grid-template-columns:2fr 1fr;gap:1.1rem}.video-card{position:relative;min-height:260px;overflow:hidden;background:#111;text-decoration:none}.video-card.video-embed{width:100%}.video-consent{position:absolute;inset:0;width:100%;height:100%;border:0;padding:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.video-consent:focus-visible{outline:3px solid var(--acid);outline-offset:-3px;z-index:4}.video-card.video-loaded{background:#000}.video-card.video-loaded::after{display:none}.video-card.video-loaded iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.video-card-main{grid-row:span 2;min-height:540px}.video-card img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:.35s}.video-card::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#08070ae6 0%,transparent 60%)}.video-card:hover img{transform:scale(1.035)}.play{position:absolute;z-index:2;left:1.2rem;top:1.2rem;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--acid);color:#171019}.card-label{position:absolute;z-index:2;left:1.2rem;bottom:1.1rem}.card-label strong{display:block;font-size:clamp(1.4rem,2.8vw,2.5rem);line-height:1}.card-label small{color:#ddd}.center{text-align:center;margin-top:2rem}.text-link{font-weight:900;letter-spacing:.08em;text-decoration:none;border-bottom:2px solid var(--acid);padding-bottom:.2rem}
.music-grid{width:min(var(--max),100%);margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,4vw,3.5rem)}.release{display:grid;grid-template-columns:minmax(160px,45%) 1fr;background:#0b0a0db5;border:1px solid #ffffff17}.release img{width:100%;height:100%;object-fit:cover}.release-copy{padding:clamp(1rem,3vw,2rem);align-self:center}.release h3{font-size:clamp(1.6rem,3vw,2.8rem);margin:.15rem 0 1rem;line-height:1}.release-links{display:flex;flex-direction:column;align-items:flex-start;gap:.45rem}.release-links a{text-decoration:none;border-bottom:1px solid #ffffff4a}.release-links a:hover{color:var(--acid)}
.live-wrap{width:min(var(--max),100%);margin:auto;display:grid;grid-template-columns:1.45fr .75fr;gap:1px;background:#171019}.shows-panel,.booking{padding:clamp(1.5rem,4vw,3.4rem)}.shows-panel{background:var(--acid);color:#161217}.show-list{border-top:1px solid #171019;margin-top:1rem}.show-row{display:grid;grid-template-columns:150px minmax(170px,1fr) minmax(120px,.65fr) auto;align-items:center;gap:1rem;padding:1.25rem 0;border-bottom:1px solid #171019}.show-row time,.past-list time{font-weight:900;letter-spacing:.04em}.show-row time span{font-size:1.25rem}.show-row time sup,.past-list sup{font-size:.62em;font-weight:700;opacity:.72;margin-left:.2em;vertical-align:super}.show-row strong{font-size:1.15rem;letter-spacing:.04em}.show-place{font-weight:700}.show-row a{color:var(--purple);font-weight:900;white-space:nowrap}.past-shows{margin-top:2.2rem;border-top:2px solid #171019}.past-shows summary{list-style:none;cursor:pointer;padding:1.1rem 0;font-weight:900;letter-spacing:.09em;display:flex;justify-content:space-between}.past-shows summary::-webkit-details-marker{display:none}.past-shows[open] summary span{transform:rotate(45deg)}.past-shows summary span{font-size:1.5rem;line-height:.7;transition:transform .2s}.past-list{border-top:1px solid #171019}.past-list>div{display:grid;grid-template-columns:150px minmax(160px,1fr) minmax(120px,.7fr);gap:1rem;padding:.72rem 0;border-bottom:1px solid #17101999;align-items:center}.booking{background:#161217;color:white}.booking h3{font-size:clamp(2rem,4vw,3.8rem);line-height:.9;margin:.2rem 0 1.2rem}.booking>p:not(.kicker){color:#c9c3cd;line-height:1.55;margin:0 0 1.4rem}.booking a{display:block;color:var(--acid);font-weight:900;word-break:break-word}.booking-mail{font-size:clamp(1.05rem,2vw,1.45rem);margin-bottom:2rem}.booking-request{font-size:.9rem;letter-spacing:.08em}.about{display:grid;grid-template-columns:1fr 1fr;min-height:760px;background:#111015}.about-image{min-height:600px}.about-image img{width:100%;height:100%;object-fit:cover;object-position:center top}.about-copy{padding:clamp(3rem,7vw,7rem);align-self:center}.about-copy .lead{font-size:clamp(1.2rem,2vw,1.55rem);color:white}.about-copy p{color:#c9c3cd}.lineup{margin-top:2rem;border-top:1px solid var(--line)}.lineup div{display:flex;justify-content:space-between;gap:1rem;padding:.7rem 0;border-bottom:1px solid var(--line)}.lineup strong{color:var(--acid);letter-spacing:.08em}.lineup span{text-align:right}.live-note{font-size:.85rem}
.news-grid{width:min(var(--max),100%);margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}.news-card{background:#141218;border:1px solid var(--line);display:grid;grid-template-columns:44% 1fr}.news-card img{width:100%;height:100%;min-height:330px;object-fit:cover}.news-copy{padding:clamp(1.2rem,3vw,2.2rem);align-self:center}.news-copy h3{font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.05;margin:.3rem 0 .8rem}.news-copy p:not(.date){color:var(--muted)}.news-copy a{font-weight:800;color:var(--acid)}
.follow{text-align:center;padding:clamp(5rem,10vw,9rem) 1rem;background:radial-gradient(circle at 50% 10%,#462d6066,transparent 40%),#08070a}.hands{width:min(250px,48vw);margin:0 auto 1.5rem}.social-links{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;max-width:950px;margin:2rem auto 0}.social-links a,.social-links span{padding:.8rem 1rem;border:1px solid var(--line);text-decoration:none;font-weight:900;text-transform:uppercase;font-size:.78rem;letter-spacing:.08em}.social-links a:hover{background:var(--acid);border-color:var(--acid);color:#151018}.social-links .disabled{opacity:.4;cursor:not-allowed}
.footer{border-top:1px solid var(--line);padding:2rem clamp(1rem,4vw,3rem);display:flex;align-items:center;gap:2rem;justify-content:space-between;color:#aaa;background:#070609;font-size:.82rem}.footer-logo img{width:110px}.footer nav{display:flex;gap:1rem}.footer a{text-decoration:none}.footer a:hover{color:var(--acid)}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}.reveal.visible{opacity:1;transform:none}
.brand-icon{width:16px;height:16px;display:block;fill:currentColor}.menu-social .brand-icon{width:17px;height:17px}.follow-social-icon{width:52px;height:52px!important;padding:0!important;border-radius:50%;display:inline-grid!important;place-items:center}.follow-social-icon .brand-icon{width:22px;height:22px}.follow-social-icon.mail-icon{font-size:1.15rem}
@media (max-width:900px){.header-social{display:none}.menu-toggle{display:block;position:relative;z-index:202}.main-nav{display:none;position:fixed;inset:0;z-index:200;background:#121214f8;backdrop-filter:blur(8px);padding:clamp(7rem,17vh,10rem) 2rem 2.5rem;flex-direction:column;align-items:center;justify-content:center;gap:.7rem;overflow:auto}.main-nav.open{display:flex}.main-nav>a{font-size:clamp(1.8rem,7vw,3.2rem);line-height:1.06;letter-spacing:.02em}.main-nav .shop-link{border:0;padding:0}.menu-social{display:flex;flex-wrap:wrap;justify-content:center;gap:.65rem;margin-top:2.2rem;max-width:520px}.menu-social .social-icon{width:38px;height:38px;background:transparent}.site-header.menu-open .brand{position:relative;z-index:202}.site-header.menu-open .menu-toggle{font-size:0;border:0;width:46px;height:46px}.site-header.menu-open .menu-toggle::before,.site-header.menu-open .menu-toggle::after{content:'';position:absolute;left:9px;top:22px;width:28px;height:2px;background:white}.site-header.menu-open .menu-toggle::before{transform:rotate(45deg)}.site-header.menu-open .menu-toggle::after{transform:rotate(-45deg)}.hero{background-position:53% center}.hero-shade{background:linear-gradient(0deg,#08070af1 0%,#08070a60 75%,#08070a80)}.hero-content{align-self:end;padding-bottom:7rem}.video-grid,.music-grid,.live-wrap,.about,.news-grid{grid-template-columns:1fr}.video-card-main{grid-row:auto;min-height:390px}.video-card{min-height:280px}.release{grid-template-columns:38% 1fr}.show-row{grid-template-columns:1fr auto;gap:.3rem 1rem}.show-row time{grid-column:1}.show-row strong{grid-column:1}.show-row .show-place{grid-column:1}.show-row a{grid-column:2;grid-row:1/4;align-self:center}.past-list>div{grid-template-columns:1fr}.past-list>div>*{grid-column:1}.about-image{min-height:70svh}.news-card{grid-template-columns:38% 1fr}.footer{flex-wrap:wrap}}
@media (max-width:560px){.brand img{width:120px}.hero-logo{width:86vw}.hero h1{font-size:3.8rem}.release,.news-card{grid-template-columns:1fr}.release img{aspect-ratio:1/1}.news-card img{min-height:0;aspect-ratio:16/10}.lineup div{display:block}.lineup span{display:block;text-align:left}.footer{display:block;text-align:center}.footer>*{margin:.8rem auto}.footer nav{justify-content:center}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.scroll-cue{animation:none}}

body.nav-open{overflow:hidden}


/* Hinweis beim lokalen file://-Test: YouTube benötigt für Embeds eine Web-Origin. */
.video-local-fallback {
  width: 100%;
  min-height: 100%;
  aspect-ratio: 16 / 9;
  display: grid;
  place-items: center;
  padding: 2rem;
  text-align: center;
  background: #111;
}
.video-local-fallback div { max-width: 34rem; }
.video-local-fallback strong { display: block; font-size: clamp(1.25rem, 2vw, 2rem); margin-bottom: .75rem; }
.video-local-fallback p { margin: 0 0 1rem; opacity: .8; }
.video-local-fallback a { font-weight: 800; text-transform: uppercase; }

/* Legal pages */
.legal-shell{min-height:100vh;background:radial-gradient(circle at 82% 8%,#462d6038,transparent 28%),#08070a;color:var(--text)}
.legal-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem clamp(1rem,4vw,3rem);background:#08070af2;border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}
.legal-header .brand img{width:145px}.legal-back{color:var(--acid);text-decoration:none;font-weight:900;letter-spacing:.06em;text-transform:uppercase;font-size:.8rem}.legal-back:hover{text-decoration:underline}
.legal-page{width:min(900px,calc(100% - 2rem));margin:0 auto;padding:clamp(4rem,8vw,7rem) 0 6rem}.legal-kicker{margin:0 0 .65rem;color:var(--acid);font-size:.74rem;letter-spacing:.22em;font-weight:900;text-transform:uppercase}.legal-page h1{font-size:clamp(3.2rem,9vw,7rem);line-height:.86;margin:.05em 0 .55em;letter-spacing:-.055em}.legal-page h2{font-size:clamp(1.45rem,3vw,2.25rem);line-height:1.05;margin:2.8rem 0 .85rem;color:var(--acid)}.legal-page h3{font-size:1.1rem;margin:2rem 0 .6rem}.legal-page p,.legal-page li{color:#d2ccd6}.legal-page strong{color:#fff}.legal-page a{color:var(--acid);text-decoration-thickness:1px;text-underline-offset:.2em}.legal-page ul{padding-left:1.25rem}.legal-page address{font-style:normal;color:#d2ccd6}.legal-page .legal-note{padding:1rem 1.1rem;border-left:3px solid var(--acid);background:#ffffff08}.legal-page .legal-contact{margin-top:1.5rem;padding:1.3rem;border:1px solid var(--line);background:#111015}.legal-page .legal-contact p{margin:.25rem 0}.legal-footer{border-top:1px solid var(--line);padding:2rem clamp(1rem,4vw,3rem);display:flex;align-items:center;justify-content:space-between;gap:1rem;color:#aaa;background:#070609;font-size:.82rem}.legal-footer img{width:110px}.legal-footer nav{display:flex;gap:1rem;flex-wrap:wrap}.legal-footer a{text-decoration:none}.legal-footer a:hover{color:var(--acid)}
@media(max-width:620px){.legal-header{align-items:center}.legal-header .brand img{width:120px}.legal-back{font-size:.68rem}.legal-page{width:min(100% - 2rem,900px)}.legal-footer{align-items:flex-start;flex-direction:column}}
