/*
Theme Name: Rock66
Theme URI: https://www.rock66.ch
Author: Rock66 Team
Description: Theme für The Rock66 Band – Foto-Hero, Gigs als Tickets, Bandmitglieder, Galerie mit Lightbox, Presse, Booking, Newsletter, Teilen, SEO. Drei Design-Varianten (Stage, Vinyl, Neon). Ohne Tracker; Schriften lokal gehostet (Anton, Inter, Playfair Display, Bungee – SIL Open Font License).
Version: 7.0.0
Requires at least: 6.4
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: rock66
*/
@font-face{font-family:Anton;src:url(assets/fonts/anton_latin-400-normal.woff2) format("woff2");font-display:swap}
@font-face{font-family:Inter;font-weight:400;src:url(assets/fonts/inter_latin-400-normal.woff2) format("woff2");font-display:swap}
@font-face{font-family:Inter;font-weight:700;src:url(assets/fonts/inter_latin-700-normal.woff2) format("woff2");font-display:swap}
@font-face{font-family:"Barlow Condensed";font-weight:700;src:url(assets/fonts/barlow-condensed_latin-700-normal.woff2) format("woff2");font-display:swap}
@font-face{font-family:Playfair;font-weight:800;src:url(assets/fonts/playfair-display_latin-800-normal.woff2) format("woff2");font-display:swap}
@font-face{font-family:Playfair;font-weight:800;font-style:italic;src:url(assets/fonts/playfair-display_latin-800-italic.woff2) format("woff2");font-display:swap}
@font-face{font-family:Bungee;src:url(assets/fonts/bungee_latin-400-normal.woff2) format("woff2");font-display:swap}
:root{--bg:#0a0a0b;--fg:#f3f0ea;--mut:#a39e94;--acc:#e30613;--acc2:#ffb300;--onacc:#fff;--line:#26262a;--card:#141416;--dbg:#050506;--dfg:#f3f0ea;
--hf:Anton,Impact,"Arial Narrow",sans-serif;--bf:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;--hs:clamp(5.2rem,17vw,15rem);--ht:uppercase;--hls:.01em;--hst:normal;
--photo:none;--grain:.09;--ov1:rgba(0,0,0,.78);--ov2:rgba(0,0,0,.25);--r:2px;--glow:0 0 0 transparent;--grad:linear-gradient(90deg,var(--acc),var(--acc2))}
[data-variant=vinyl]{--bg:#efe4cf;--fg:#1d1712;--mut:#6d5f4d;--acc:#c8431a;--acc2:#1f6f6a;--line:#cdbd9d;--card:#f8f0df;--dbg:#241a11;--dfg:#f3e8d2;
--hf:Playfair,Georgia,serif;--hs:clamp(3.6rem,13vw,11rem);--ht:none;--hls:-.02em;--hst:italic;--photo:sepia(.45) contrast(1.05) saturate(1.1);--grain:.18;--ov1:rgba(30,16,6,.8);--ov2:rgba(30,16,6,.3);--r:10px}
[data-variant=neon]{--bg:#070516;--fg:#eef0ff;--mut:#9aa0d6;--acc:#00e5ff;--acc2:#ff2bd6;--onacc:#05041a;--line:#28246a;--card:rgba(255,255,255,.05);--dbg:#0c0828;--dfg:#eef0ff;
--hf:Bungee,Anton,sans-serif;--hs:clamp(2.8rem,11vw,9.5rem);--ht:uppercase;--hls:0;--ov1:rgba(14,4,50,.85);--ov2:rgba(70,0,110,.35);--r:14px;--glow:0 0 24px color-mix(in srgb,var(--acc) 55%,transparent);--grain:.05}
*{box-sizing:border-box}html{overflow-x:clip;scroll-behavior:smooth;scroll-padding-top:70px}
body{margin:0;background:var(--bg);color:var(--fg);font:17px/1.65 var(--bf);-webkit-font-smoothing:antialiased;overflow-x:clip}
body::after{content:"";position:fixed;inset:0;z-index:90;pointer-events:none;opacity:var(--grain);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .9 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");mix-blend-mode:overlay}
[data-variant=neon] body{background:radial-gradient(900px 600px at 85% 0,#3b0f7a 0,transparent 60%),radial-gradient(800px 600px at 0 40%,#07407a 0,transparent 55%),var(--bg);background-attachment:fixed}
img{max-width:100%;height:auto;display:block}a{color:var(--acc);text-underline-offset:3px}a:hover{color:var(--acc2)}
h1,h2,h3{font-family:var(--hf);font-weight:400;text-transform:var(--ht);letter-spacing:var(--hls);font-style:var(--hst);line-height:1;margin:0 0 .5em}
[data-variant=vinyl] h1,[data-variant=vinyl] h2,[data-variant=vinyl] h3{font-weight:800}
h2{font-size:clamp(2.4rem,6vw,4.8rem)}h3{font-size:1.5rem}
.wrap{width:min(1200px,92vw);margin:auto}.main-x{}main{overflow-x:clip}.sec{padding:clamp(64px,10vw,130px) 0;position:relative}
.sec.dark{background:var(--dbg);color:var(--dfg)}.sec.dark .small,.sec.dark .quote cite{color:var(--acc)}
.kicker{display:inline-flex;align-items:center;gap:12px;color:var(--acc);font:700 .78rem/1 var(--bf);letter-spacing:.3em;text-transform:uppercase;margin-bottom:1.2rem}
.kicker::before{content:"";width:34px;height:3px;background:var(--acc);box-shadow:var(--glow)}
.sr{position:absolute;left:-999px}.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:#fff;color:#000;padding:8px;z-index:200}
/* Header */
.hd{position:fixed;top:0;left:0;right:0;z-index:80;transition:background .3s,box-shadow .3s}
.hd .wrap{display:flex;align-items:center;justify-content:space-between;height:76px}
.hd.solid,body.is-sub .hd{background:color-mix(in srgb,var(--dbg) 92%,transparent);backdrop-filter:blur(12px);box-shadow:0 1px 0 var(--line)}
.hd,.hd a{color:#f3f0ea}.hd a:hover{color:var(--acc)}
.logo{font:400 1.9rem/.85 var(--hf);letter-spacing:.04em;text-decoration:none;text-transform:uppercase;display:inline-flex;flex-direction:column}[data-variant=vinyl] .logo,[data-variant=neon] .logo{font-size:1.5rem}
.logo span{font:700 .6rem var(--bf);letter-spacing:.5em}.logo b{color:var(--acc);font-weight:400}
.nav ul{display:flex;gap:30px;list-style:none;margin:0;padding:0}.nav a{text-decoration:none;font:700 .8rem var(--bf);letter-spacing:.16em;text-transform:uppercase;position:relative;padding:6px 0}
.nav a::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--acc);transition:width .25s}.nav a:hover::after{}
.burger{display:none;background:none;border:0;width:44px;height:44px;cursor:pointer;position:relative}.burger span{position:absolute;left:10px;right:10px;height:2px;background:#fff;transition:.25s}.burger span:nth-child(1){top:15px}.burger span:nth-child(2){top:21px}.burger span:nth-child(3){top:27px}
.burger[aria-expanded=true] span:nth-child(1){top:21px;transform:rotate(45deg)}.burger[aria-expanded=true] span:nth-child(2){opacity:0}.burger[aria-expanded=true] span:nth-child(3){top:21px;transform:rotate(-45deg)}
@media(max-width:900px){.burger{display:block}.nav{position:fixed;inset:76px 0 auto 0;background:var(--dbg);padding:20px 6vw 30px;transform:translateY(-130%);transition:transform .35s;border-bottom:3px solid var(--acc)}.nav.open{transform:none}.nav ul{flex-direction:column;gap:6px}.nav a{font-size:1.4rem;display:block;padding:10px 0;font-family:var(--hf);letter-spacing:.05em}}
/* Buttons */
.btn{display:inline-block;background:var(--acc);color:var(--onacc);padding:16px 34px;border-radius:var(--r);font:700 .85rem var(--bf);letter-spacing:.18em;text-transform:uppercase;text-decoration:none;border:2px solid var(--acc);cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s;box-shadow:var(--glow);clip-path:polygon(0 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%)}
[data-variant=vinyl] .btn,[data-variant=neon] .btn{clip-path:none}
.btn:hover{color:var(--onacc);transform:translateY(-3px);background:var(--acc2);border-color:var(--acc2)}
.btn.ghost{background:transparent;color:inherit;border-color:currentColor}.btn.ghost:hover{background:var(--acc);border-color:var(--acc);color:var(--onacc)}
[data-variant=neon] .btn:not(.ghost){background:var(--grad);border-color:transparent;color:var(--onacc)}
/* Hero */
.hero{position:relative;min-height:100svh;display:flex;align-items:center;overflow:hidden;color:#f3f0ea;background:#000;clip-path:polygon(0 0,100% 0,100% calc(100% - 4vw),0 100%)}
.slides,.slide,.hero-fx{position:absolute;inset:0}.slide{background-size:cover;background-position:center 35%;opacity:0;animation:kb 28s infinite;filter:var(--photo)}
.s2{animation-delay:7s}.s3{animation-delay:14s}.s4{animation-delay:21s}
@keyframes kb{0%{opacity:0;transform:scale(1.04)}4%{opacity:1}25%{opacity:1}29%{opacity:0;transform:scale(1.16)}100%{opacity:0;transform:scale(1.16)}}
.hero-fx{background:radial-gradient(ellipse 95% 85% at 0% 85%,rgba(0,0,0,.93) 0,rgba(0,0,0,.84) 45%,transparent 80%),linear-gradient(90deg,var(--ov1) 0,var(--ov2) 65%,transparent),linear-gradient(0deg,var(--bg) 0,transparent 30%),radial-gradient(ellipse at 20% 50%,transparent 40%,rgba(0,0,0,.55))}
[data-variant=neon] .hero-fx{background:linear-gradient(90deg,var(--ov1) 0,var(--ov2) 70%,rgba(0,229,255,.12)),linear-gradient(0deg,var(--bg) 0,transparent 30%)}
.hero-in{position:relative;padding:130px 0 14vw}
.hero h1{margin:0 0 .3em;display:flex;flex-direction:column;line-height:.82}
.hero .l2{font-size:var(--hs);text-shadow:0 8px 40px rgba(0,0,0,.6)}.hero .l2 b{font-weight:inherit;color:var(--acc);text-shadow:var(--glow)}
[data-variant=neon] .hero .l2 b{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 18px rgba(255,43,214,.6))}
.hero .l3{font-size:clamp(1.3rem,3.6vw,2.8rem);margin-top:.5em;color:transparent;-webkit-text-stroke:1.5px #f3f0ea;letter-spacing:.06em}
.hero .lead{font-size:clamp(1.05rem,1.6vw,1.3rem);max-width:36em;color:#e4dfd4}.hero .cta{display:flex;gap:16px;flex-wrap:wrap;margin-top:32px}
.hero .kicker{color:#fff}.scroll{position:absolute;left:50%;bottom:6vw;width:28px;height:46px;border:2px solid #fff;border-radius:16px;transform:translateX(-50%);opacity:.8}.scroll i{position:absolute;left:11px;top:8px;width:4px;height:8px;border-radius:2px;background:#fff;animation:sc 1.6s infinite}@keyframes sc{50%{transform:translateY(14px);opacity:.2}}
@media(max-width:700px){.scroll{display:none}}
/* Laufband */
.band{background:var(--acc);color:var(--onacc);overflow:hidden;white-space:nowrap;padding:14px 0;font:400 1.5rem var(--hf);text-transform:uppercase;letter-spacing:.08em;transform:rotate(-1.6deg) scale(1.04);margin:-5vw 0 40px;position:relative;z-index:3;box-shadow:0 10px 40px rgba(0,0,0,.4)}
[data-variant=neon] .band{background:var(--grad);font-size:1.1rem}.band .trk{display:inline-block;animation:mq 40s linear infinite}.band span{display:inline-block}@keyframes mq{to{transform:translateX(-33.33%)}}
/* Stats */
.stats{padding:40px 0 10px}.stats .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:center}
.st b{display:block;font:400 clamp(2.6rem,6.5vw,5.4rem)/1 var(--hf);color:transparent;-webkit-text-stroke:2px var(--acc);font-style:var(--hst)}.st span{font:700 .72rem var(--bf);letter-spacing:.2em;text-transform:uppercase;color:var(--mut)}
@media(max-width:700px){.stats .wrap{grid-template-columns:1fr 1fr}}
/* Tickets */
.tix{display:grid;gap:16px}
.tk{display:grid;grid-template-columns:150px 1fr 60px;align-items:stretch;background:var(--card);border:1px solid var(--line);border-radius:var(--r);text-decoration:none;color:var(--fg);transition:transform .25s,border-color .25s;position:relative;overflow:hidden}
.tk:hover{transform:translateX(8px);border-color:var(--acc);color:var(--fg)}
.tk-d{background:var(--acc);color:var(--onacc);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:18px 10px;text-align:center;position:relative;border-right:3px dashed color-mix(in srgb,var(--onacc) 40%,transparent)}
[data-variant=neon] .tk-d{background:var(--grad)}.tk-d b{font:400 2.6rem/1 var(--hf)}.tk-d span{font:700 .8rem var(--bf);letter-spacing:.2em;text-transform:uppercase}
.tk-d::before,.tk-d::after{content:"";position:absolute;right:-12px;width:22px;height:22px;border-radius:50%;background:var(--bg)}.tk-d::before{top:-11px}.tk-d::after{bottom:-11px}
.tk-m{padding:22px 28px}.tk-m h3{margin:0 0 .2em;font-size:1.7rem}.tk-m p{margin:0;color:var(--mut)}.tk-a{display:grid;place-items:center;font-size:2rem;color:var(--acc);transition:transform .25s}.tk:hover .tk-a{transform:translateX(6px)}
@media(max-width:600px){.tk{grid-template-columns:100px 1fr}.tk-a{display:none}.tk-d b{font-size:1.5rem}.tk-m{padding:16px}}
/* Video */
.vids{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px}
.yt{position:relative;aspect-ratio:16/9;background:#000 center/cover;border-radius:var(--r);overflow:hidden;cursor:pointer;border:0;width:100%;display:block;color:#fff;padding:0;box-shadow:0 20px 60px rgba(0,0,0,.5);transition:transform .3s}.yt:hover{transform:scale(1.015)}
.yt iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.yt .play{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;background:linear-gradient(0deg,rgba(0,0,0,.7),rgba(0,0,0,.15));text-align:center;padding:12px}
.yt .play i{display:block;width:84px;height:84px;border-radius:50%;background:var(--acc);position:relative;box-shadow:var(--glow);transition:transform .25s}.yt:hover i{transform:scale(1.12)}.yt .play i::after{content:"";position:absolute;left:33px;top:24px;border:18px solid transparent;border-left:28px solid var(--onacc)}
.yt small{margin-top:12px;opacity:.85;font-size:.74rem}
/* Band */
.crew{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:28px}
.mem{background:var(--card);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;transition:transform .3s,border-color .3s}.mem:hover{transform:translateY(-8px);border-color:var(--acc)}
.mph{position:relative;aspect-ratio:4/3.4;overflow:hidden;background:#000}.mph img{width:100%;height:100%;object-fit:cover;filter:grayscale(.85) contrast(1.1);transition:filter .5s,transform .8s}[data-variant=vinyl] .mph img{filter:sepia(.7) contrast(1.05)}.mem:hover .mph img{filter:var(--photo);transform:scale(1.06)}
.mph::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.55),transparent 50%)}
.since{position:absolute;left:0;top:18px;z-index:2;background:var(--acc);color:var(--onacc);font:700 .7rem var(--bf);letter-spacing:.18em;text-transform:uppercase;padding:6px 14px 6px 16px}
.mtx{padding:22px 24px 28px}.mtx h3{margin:0;font-size:1.7rem}.role{color:var(--acc);font:700 .78rem var(--bf);letter-spacing:.16em;text-transform:uppercase;margin:.4em 0 1em}.bio{margin:0;color:var(--mut);font-size:.97rem}
.sec.dark .mem{background:rgba(255,255,255,.04)}
/* Break */
.break{position:relative;padding:clamp(100px,16vw,220px) 0;background-size:cover;background-position:center;background-attachment:fixed;color:#fff;text-align:center;filter:none}
.break::before{content:"";position:absolute;inset:0;background:linear-gradient(var(--ov1),var(--ov2) 50%,var(--ov1))}[data-variant=vinyl] .break{filter:sepia(.4)}
.break blockquote{position:relative;margin:0 auto;max-width:18em;font:400 clamp(2rem,6vw,4.6rem)/1.05 var(--hf);text-transform:var(--ht);font-style:var(--hst);text-shadow:0 6px 30px rgba(0,0,0,.6)}
@media(max-width:900px){.break{background-attachment:scroll}}
/* Galerie */
.mason{columns:3 300px;column-gap:14px}.ph{display:block;position:relative;margin:0 0 14px;break-inside:avoid;overflow:hidden;border-radius:var(--r);background:#000;cursor:zoom-in}
.ph img{width:100%;transition:transform .6s,filter .4s;filter:var(--photo)}.ph:hover img{transform:scale(1.07)}
.ph span{position:absolute;left:0;right:0;bottom:0;padding:30px 14px 12px;background:linear-gradient(0deg,rgba(0,0,0,.85),transparent);color:#fff;font:700 .72rem var(--bf);letter-spacing:.15em;text-transform:uppercase;opacity:0;transform:translateY(10px);transition:.3s}.ph:hover span,.ph:focus span{opacity:1;transform:none}
.lb{position:fixed;inset:0;z-index:300;background:rgba(0,0,0,.94);display:grid;place-items:center}.lb[hidden]{display:none}.lb figure{margin:0;max-width:92vw;text-align:center}.lb img{max-height:82vh;max-width:92vw;margin:auto}.lb figcaption{color:#ccc;font-size:.85rem;margin-top:10px;letter-spacing:.1em}
.lb button{position:absolute;background:none;border:0;color:#fff;font-size:3rem;cursor:pointer;padding:10px 18px;line-height:1}.lb-x{top:8px;right:12px}.lb-p{left:8px;top:50%}.lb-n{right:8px;top:50%}.lb button:hover{color:var(--acc)}
/* Presse */
.pressgrid{display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:start}@media(max-width:900px){.pressgrid{grid-template-columns:1fr}}
.quote{margin:0 0 24px;padding:28px 30px;border-left:4px solid var(--acc);background:rgba(255,255,255,.05);font-size:1.12rem;font-style:italic;border-radius:0 var(--r) var(--r) 0}.quote cite{display:block;margin-top:14px;font:700 .82rem var(--bf);font-style:normal;letter-spacing:.14em;text-transform:uppercase;color:var(--acc)}
.scans{display:grid;grid-template-columns:1fr 1fr;gap:14px}.scans a{display:block;border-radius:var(--r);overflow:hidden;box-shadow:0 14px 40px rgba(0,0,0,.5);transition:transform .3s}.scans a:nth-child(1){transform:rotate(-2deg)}.scans a:nth-child(2){transform:rotate(2deg) translateY(20px)}.scans a:hover{transform:scale(1.04) rotate(0)}
/* Booking */
.book{background:#000;color:#f3f0ea;overflow:hidden}.bgph{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.7;filter:var(--photo)}.book::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#000 5%,rgba(0,0,0,.25));z-index:1}.book .wrap{position:relative;z-index:2}
.book .lead{font-size:1.2rem;color:#ddd}
.grid{display:grid;gap:36px}.g2{grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}.g3{grid-template-columns:repeat(auto-fit,minmax(290px,1fr))}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:30px}.book .card{background:rgba(15,15,17,.8);backdrop-filter:blur(8px);color:#f3f0ea;border-color:rgba(255,255,255,.15)}
.form{display:grid;gap:14px}.form label{font:700 .72rem var(--bf);letter-spacing:.14em;text-transform:uppercase;display:grid;gap:6px}
.form input,.form textarea,.form select{width:100%;padding:14px;border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.06);color:inherit;font:400 1rem var(--bf);letter-spacing:0;text-transform:none}
[data-variant=vinyl] .sec:not(.book):not(.dark) .form input,[data-variant=vinyl] .sec:not(.book):not(.dark) .form textarea{background:#fffaf0}
.form input:focus,.form textarea:focus{outline:2px solid var(--acc);outline-offset:1px}.form .row{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:600px){.form .row{grid-template-columns:1fr}}
.form .chk{font:400 .8rem var(--bf);text-transform:none;letter-spacing:0}.form .chk input{width:auto;margin-right:8px}
.hp{position:absolute;left:-9999px}.notice{padding:14px 18px;border-radius:var(--r);margin-bottom:6px;font-weight:700;border:1px solid var(--line)}.notice.ok{background:rgba(46,204,113,.18);border-color:#2ecc71}.notice.err{background:rgba(231,76,60,.18);border-color:#e74c3c}
.small{font-size:.85rem;color:var(--mut)}
.share{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:18px}.share>span{font:700 .72rem var(--bf);letter-spacing:.16em;text-transform:uppercase;margin-right:6px}
.share a,.share button{border:1px solid currentColor;background:transparent;color:inherit;border-radius:999px;padding:7px 15px;font:700 .75rem var(--bf);text-decoration:none;cursor:pointer;opacity:.85}.share a:hover,.share button:hover{background:var(--acc);border-color:var(--acc);color:var(--onacc);opacity:1}
.soc{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.soc a{color:inherit;text-decoration:none;font:700 .78rem var(--bf);letter-spacing:.14em;text-transform:uppercase;border-bottom:2px solid var(--acc);padding-bottom:2px}
/* Unterseiten */
.pagehero{position:relative;padding:190px 0 90px;background:#000 center/cover;color:#fff}.pagehero::before{content:"";position:absolute;inset:0;background:linear-gradient(var(--ov1),var(--ov2) 60%,var(--bg))}.pagehero .wrap{position:relative}.pagehero h1{font-size:clamp(3rem,10vw,8rem);margin:0}.pagehero.slim{padding:150px 0 40px;background:var(--dbg)}.pagehero.slim::before{display:none}.pagehero.slim h1{font-size:clamp(2.4rem,6vw,4.8rem)}
.entry{width:min(780px,92vw);margin:auto}.entry img{border-radius:var(--r)}.entry hr{border:0;border-top:1px solid var(--line);margin:40px 0}
.tl{list-style:none;margin:40px 0 0;padding:0;border-left:3px solid var(--acc)}.tl li{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:0 0 38px 30px;position:relative}.tl li::before{content:"";position:absolute;left:-11px;top:8px;width:19px;height:19px;border-radius:50%;background:var(--acc);box-shadow:0 0 0 6px var(--bg)}.tl b{font:400 2.8rem/1 var(--hf);color:var(--acc)}.tl h3{margin:0 0 .3em}.tl p{margin:0;color:var(--mut)}@media(max-width:600px){.tl li{grid-template-columns:1fr;gap:4px}}
.postcard{padding:0;overflow:hidden}.postcard>*:not(img){margin-left:24px;margin-right:24px}.postcard time{display:block;margin-top:18px;color:var(--mut);font-size:.85rem}.postcard h3 a{color:var(--fg);text-decoration:none}.postcard p{margin-bottom:24px}
/* Footer */
.ft{background:var(--dbg);color:var(--dfg);padding:0 0 30px;position:relative;overflow:hidden;border-top:4px solid var(--acc)}.ft a{color:inherit}
.bigword{font:400 clamp(6rem,27vw,26rem)/.8 var(--hf);text-align:center;color:transparent;-webkit-text-stroke:2px color-mix(in srgb,var(--dfg) 20%,transparent);letter-spacing:.02em;padding-top:40px;user-select:none;font-style:var(--hst)}
.ft .cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:40px;padding:50px 0}.ft ul{list-style:none;padding:0;margin:0}.ft li{margin:6px 0}.cp{border-top:1px solid #333;padding-top:20px}.ft .small{color:#a39e94}
/* Effekte */
.rv{opacity:0;transform:translateY(30px);transition:opacity .8s,transform .8s}.rv.in{opacity:1;transform:none}.no-js .rv{opacity:1;transform:none}
.scans .rv.in:nth-child(1){transform:rotate(-2deg)}.scans .rv.in:nth-child(2){transform:rotate(2deg) translateY(20px)}
@media(prefers-reduced-motion:reduce){.slide{animation:none}.s1{opacity:1}.band .trk,.scroll i{animation:none}.rv{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}
[data-variant=neon] .tk{grid-template-columns:200px 1fr 60px}[data-variant=neon] .tk-d b{font-size:1.8rem}[data-variant=neon] .tk-m h3{font-size:1.3rem}[data-variant=neon] .mtx h3{font-size:1.25rem}
@media(max-width:600px){[data-variant=neon] .tk{grid-template-columns:130px 1fr}[data-variant=neon] .tk-d b{font-size:1.2rem}}

/* v3: Lesbarkeit, Handy-Hero, Umschalter */
.hero .lead{color:#fff;text-shadow:0 1px 14px rgba(0,0,0,.8)}.hero .kicker{text-shadow:0 1px 10px rgba(0,0,0,.9)}
@media(max-width:700px){
.hero{align-items:flex-end;min-height:100svh}.hero-in{width:100%;margin:0;padding:90px 4vw 15vw;background:linear-gradient(0deg,rgba(0,0,0,.96) 0,rgba(0,0,0,.92) 72%,transparent)}
.slide{background-size:auto 58%;background-position:58% 10%;background-repeat:no-repeat}
.hero .kicker{font-size:.66rem;letter-spacing:.16em;gap:8px}.hero .kicker::before{width:22px}
.hero-fx{background:linear-gradient(0deg,rgba(0,0,0,.97) 0,rgba(0,0,0,.93) 62%,rgba(0,0,0,.55) 74%,transparent 92%),linear-gradient(180deg,rgba(0,0,0,.55) 0,transparent 16%)}
.hero .l2{font-size:clamp(4.6rem,22vw,7rem)}.hero .l3{font-size:1.3rem;margin-top:.35em}.hero .lead{font-size:1.02rem;margin:.9em 0 0}
.hero .cta{flex-wrap:nowrap;gap:10px;margin-top:20px}.hero .cta .btn{flex:1;padding:15px 8px;text-align:center;font-size:.72rem;letter-spacing:.1em}}
.sw{position:fixed;left:10px;bottom:10px;z-index:120;display:flex;flex-direction:column;align-items:flex-start;gap:6px;font:700 12px var(--bf)}
.sw-t,.sw-p button{border:1px solid #666;background:rgba(0,0,0,.85);color:#fff;border-radius:999px;padding:6px 12px;cursor:pointer;font:inherit;opacity:.85}.sw-t{font-size:11px}
.sw-p{display:flex;gap:6px;background:rgba(0,0,0,.9);padding:6px;border-radius:999px;border:1px solid #444}.sw-p[hidden]{display:none}.sw-p button[aria-pressed=true]{background:#fff;color:#000}
/* v4: helleres Hero-Foto, Handy-Layout, einzeiliges Logo */
html:not([data-variant=vinyl]):not([data-variant=neon]) .slide{filter:brightness(1.18) saturate(1.12) contrast(1.04)}
html:not([data-variant=vinyl]):not([data-variant=neon]) .hero-fx{background:linear-gradient(90deg,rgba(0,0,0,.82) 0,rgba(0,0,0,.6) 26%,rgba(0,0,0,.18) 48%,transparent 62%),linear-gradient(0deg,var(--bg) 0,transparent 16%),linear-gradient(180deg,rgba(0,0,0,.35) 0,transparent 14%)}
@media(max-width:700px){
.slide{inset:0 0 auto 0;height:60svh;background-size:cover;background-position:center 18%}
html:not([data-variant=vinyl]):not([data-variant=neon]) .hero-fx{background:linear-gradient(180deg,rgba(0,0,0,.45) 0,transparent 14%,transparent 40%,rgba(0,0,0,.75) 57%,#000 66%)}
.hero-in{padding:52px 4vw 13vw;background:linear-gradient(180deg,transparent 0,rgba(0,0,0,.88) 46px,rgba(0,0,0,.94) 100%)}
.hero h1{margin-bottom:.15em}.hero .lead{margin:.6em 0 0}.hero .cta{margin-top:16px}}

.logo{flex-direction:row;align-items:baseline;gap:.4em;white-space:nowrap}.logo span{font-size:.72rem;letter-spacing:.3em;color:#fff}
@media(min-width:701px){html:not([data-variant=vinyl]):not([data-variant=neon]) .hero-fx{background:radial-gradient(ellipse 46% 34% at 28% 70%,rgba(0,0,0,.86) 0,rgba(0,0,0,.7) 55%,transparent 100%),linear-gradient(90deg,rgba(0,0,0,.7) 0,rgba(0,0,0,.4) 26%,transparent 50%),linear-gradient(0deg,var(--bg) 0,transparent 16%),linear-gradient(180deg,rgba(0,0,0,.35) 0,transparent 14%)}.hero .lead{max-width:30em}}
@media(min-width:701px){.hero .kicker{background:rgba(0,0,0,.72);padding:7px 14px 7px 0;width:fit-content;margin-bottom:6px}.hero .kicker::before{margin-left:0}.hero .cta .btn.ghost{background:rgba(0,0,0,.6)}}
.logo b{margin-left:-.4em}.logo{text-shadow:0 2px 10px rgba(0,0,0,.9)}.logo span{font-size:.8rem;font-weight:800;letter-spacing:.22em;padding:2px 6px;background:var(--acc);color:#fff;text-shadow:none;align-self:center;line-height:1.2}
@media(max-width:700px){html:not([data-variant=vinyl]):not([data-variant=neon]) .hero-fx{background:linear-gradient(180deg,rgba(0,0,0,.7) 0,rgba(0,0,0,.3) 9%,transparent 16%,transparent 40%,rgba(0,0,0,.75) 57%,#000 66%)}}
/* v5: Für Veranstalter */
.vfacts{list-style:none;padding:0;margin:22px 0;display:grid;gap:14px}.vfacts li{display:flex;align-items:baseline;gap:16px}.vfacts b{font:400 clamp(2.4rem,5vw,3.6rem)/1 var(--hf);color:var(--acc);min-width:2.2em}.vfacts span{font-size:1rem}
.ph{font-style:normal;background:#fff3b0;color:#4a3b00;padding:1px 6px;border-radius:3px;font-size:.82em;white-space:nowrap}.sec.dark .ph{background:#fff3b0;color:#4a3b00}
.tech{width:100%;border-collapse:collapse;margin:10px 0}.tech th,.tech td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line);vertical-align:top}.tech th{width:38%;font-weight:700}
.cta-row{margin:24px 0 8px}.reply{font-weight:700;border-left:4px solid var(--acc);padding-left:12px}
.refs{margin-top:24px;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;align-items:start}
.ry{border:1px solid rgba(255,255,255,.18);border-radius:var(--r);background:rgba(255,255,255,.04)}.ry summary{display:flex;justify-content:space-between;align-items:baseline;cursor:pointer;padding:14px 18px;list-style:none}.ry summary::-webkit-details-marker{display:none}
.ry summary b{font:400 1.9rem/1 var(--hf);color:var(--acc)}.ry summary span{font-size:.9rem;opacity:.85}.ry ul{list-style:none;margin:0;padding:0 18px 14px}.ry li{padding:7px 0;border-top:1px solid rgba(255,255,255,.1);font-size:.95rem}.ry .rm{display:inline-block;width:3.2em;opacity:.65;font-size:.82rem;text-transform:uppercase;letter-spacing:.06em}
.hero-more{margin:14px 0 0;font-size:.9rem}.hero-more a{color:#fff;text-decoration:underline;text-underline-offset:4px;text-shadow:0 1px 10px #000}
.pagehero .kicker{color:#fff;text-shadow:0 1px 10px #000}.pagehero .kicker::before{background:var(--acc)}.sec.dark #referenzen .small,#referenzen .small{color:#d9d5cc}
/* v6: Kontrast der Seite «Für Veranstalter» (mind. 4.5:1) */
html:not([data-variant=vinyl]):not([data-variant=neon]) .vp .kicker,html:not([data-variant=vinyl]):not([data-variant=neon]) .vp .vfacts b,html:not([data-variant=vinyl]):not([data-variant=neon]) .vp .ry summary b,html:not([data-variant=vinyl]):not([data-variant=neon]) .vp .small a{color:#ff5a63}
html:not([data-variant=vinyl]):not([data-variant=neon]) .vp .kicker::before{background:var(--acc)}.vp .small a{text-decoration:underline;text-underline-offset:3px}
html:not([data-variant=vinyl]):not([data-variant=neon]) .pagehero::before{background:linear-gradient(rgba(0,0,0,.78),rgba(0,0,0,.66) 60%,var(--bg))}

/* ===== v7: Hero-Video, Steuerung, Sprachumschalter ===== */
.slide.poster{opacity:1;animation:none;background-size:cover}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 35%;opacity:0;transition:opacity .9s;background:#000;filter:var(--photo)}
.hero-video.on{opacity:1}
html:not([data-variant=vinyl]):not([data-variant=neon]) .hero-video{filter:brightness(1.18) saturate(1.12) contrast(1.04)}
.hero-ctl{position:absolute;right:max(16px,3vw);bottom:calc(4vw + 72px);z-index:3;display:flex;gap:10px}
.hero-ctl button{width:46px;height:46px;border-radius:50%;border:2px solid #fff;background:rgba(0,0,0,.72);color:#fff;cursor:pointer;display:grid;place-items:center;padding:0}
.hero-ctl button:hover,.hero-ctl button:focus-visible{background:var(--acc);border-color:var(--acc)}
.hero-ctl button[hidden]{display:none}
.hero-ctl i{display:block;width:14px;height:16px;border-left:4px solid #fff;border-right:4px solid #fff}
.hero-ctl button[aria-pressed=true].hc-v i,.hero-ctl .hc-v.paused i{width:0;height:0;border:0;border-left:14px solid #fff;border-top:9px solid transparent;border-bottom:9px solid transparent}
.hc-s i{width:8px;height:12px;border:0;background:#fff;position:relative;margin-right:8px}.hc-s i::before{content:"";position:absolute;left:8px;top:-4px;border-right:11px solid #fff;border-top:10px solid transparent;border-bottom:10px solid transparent;transform:translateX(-12px)}
.hc-s i::after{content:"";position:absolute;left:12px;top:-3px;width:10px;height:18px;border:3px solid #fff;border-left:0;border-radius:0 50% 50% 0;opacity:0}
.hc-s[aria-pressed=true] i::after{opacity:1}
.hc-s[aria-pressed=false] i{opacity:.75}
.lang{display:flex;gap:4px;margin-left:22px}
.lang a{font:700 .74rem var(--bf);letter-spacing:.12em;text-decoration:none;padding:8px 7px;min-width:32px;text-align:center;border-bottom:2px solid transparent;text-shadow:0 1px 8px rgba(0,0,0,.8)}
.lang a[aria-current]{border-bottom-color:var(--acc)}
@media(min-width:901px) and (max-width:1180px){.nav ul{gap:18px}}
@media(max-width:900px){.hd .wrap{justify-content:flex-start}.lang{margin-left:auto}.burger{margin-left:4px}}
@media(max-width:700px){.hero-ctl{bottom:auto;top:calc(60svh - 62px);right:14px}.hero-ctl button{width:42px;height:42px}}
@media(prefers-reduced-motion:reduce){.hero-video{display:none}}
main code{background:#ffe27a;color:#111;padding:.05em .35em;font:inherit;font-weight:700}
