:root{--bg:#070707;--panel:#111;--red:#e20b18;--orange:#ff6a00;--cream:#fff4df;--muted:#c7c0b8;--line:#35231c}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:#080808;color:#fff;line-height:1.55}.wrap{width:min(1180px,92%);margin:auto}.narrow{width:min(850px,92%)}a{color:inherit}.topbar{background:#050505;border-bottom:1px solid #29201c;font-size:14px}.topbar .wrap{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:20px}.topbar a{text-decoration:none;color:#eee}.topbar a:hover{color:#ff6a00}header{position:sticky;top:0;z-index:20;background:rgba(5,5,5,.96);border-bottom:1px solid #31231d;backdrop-filter:blur(10px)}.nav{min-height:88px;display:flex;align-items:center;gap:28px}.brand-logo img{width:132px;display:block;filter:drop-shadow(0 4px 10px #000)}nav{display:flex;align-items:center;justify-content:center;gap:24px;flex:1;flex-wrap:wrap}nav a{text-decoration:none;font-weight:800;font-size:14px}nav a:hover{color:var(--red)}.nav-cta,.btn{background:linear-gradient(180deg,#f21b27,#c90914);border:1px solid #ff3b44;color:#fff!important;text-decoration:none;font-weight:900;text-transform:uppercase;padding:13px 19px;border-radius:6px;display:inline-block;box-shadow:0 7px 22px #0008;cursor:pointer}.hero{position:relative;overflow:hidden;background:radial-gradient(circle at 18% 25%,#b12c00aa,transparent 24%),radial-gradient(circle at 85% 30%,#7c1800aa,transparent 28%),linear-gradient(120deg,#090909,#1a0903 50%,#070707);border-bottom:1px solid #422316}.hero:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(115deg,transparent 0 65px,#ff5a0012 66px 68px);opacity:.5}.hero-grid{position:relative;min-height:570px;display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:center;padding:55px 0}.hero-logo{width:min(470px,100%);filter:drop-shadow(0 15px 22px #000)}.hero-copy h1,.legal h1{font-size:clamp(44px,6.6vw,78px);line-height:.95;margin:8px 0 18px;text-transform:uppercase;font-weight:1000;font-style:italic;letter-spacing:-3px;text-shadow:3px 4px 0 #000}.hero-copy h1 em{display:block;color:var(--red);font-style:italic}.eyebrow{color:#ff3a26;font-weight:900;letter-spacing:2px;font-size:13px;text-transform:uppercase}.lead{font-size:20px;color:#eee;max-width:690px}.slogan{display:inline-block;margin:18px 0 4px;padding:8px 16px;background:var(--red);transform:rotate(-1deg);font-weight:900;font-style:italic;text-transform:uppercase}.quick{background:linear-gradient(#160b07,#090706);border-top:1px solid #47251a;border-bottom:1px solid #47251a}.quick-grid{display:grid;grid-template-columns:repeat(5,1fr)}.quick-item{padding:25px 14px;text-align:center;border-right:1px solid #51251c;font-weight:800}.quick-item:last-child{border:0}.quick-icon{width:54px;height:54px;border:3px solid var(--red);border-radius:50%;display:grid;place-items:center;margin:0 auto 9px;font-size:25px}.booking-strip{background:linear-gradient(#3b1c0d,#1c0d07),repeating-linear-gradient(90deg,#4a2918 0 6px,#2c170d 7px 12px);padding:28px 0;border-bottom:1px solid #5a2d1d}.booking-strip .wrap{display:flex;justify-content:center;align-items:center;gap:55px}.booking-strip h2{font-size:32px;margin:0;text-transform:uppercase;font-style:italic}.booking-strip p{margin:3px 0;color:#ddd}.section{padding:78px 0}.section.alt{background:radial-gradient(circle at 50% 0,#351006 0,transparent 35%),#080808}.section h2{font-size:clamp(32px,4.6vw,52px);margin:5px 0 12px;text-transform:uppercase;font-style:italic}.section h2 em{color:var(--red);font-style:italic}.sub{color:var(--muted);max-width:800px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:34px}.cards article,.modules label{background:linear-gradient(180deg,#18110e,#0b0b0b);border:1px solid #6c1e18;border-radius:9px;padding:22px;box-shadow:0 14px 35px #0008}.cards article span{font-size:35px}.cards h3{margin:10px 0 5px;text-transform:uppercase}.cards p,.modules span{color:var(--muted)}.modules{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:32px}.modules label{cursor:pointer;display:grid;grid-template-columns:26px 1fr;column-gap:9px;transition:.2s}.modules label:hover{transform:translateY(-3px);border-color:var(--red)}.modules input{accent-color:var(--red);width:18px;height:18px}.modules b{text-transform:uppercase}.modules span{grid-column:2}.form-wrap{display:grid;grid-template-columns:.78fr 1.22fr;gap:50px}.info{margin-top:28px;border-left:4px solid var(--red);padding:13px 18px;background:#14100e}form{background:linear-gradient(180deg,#17110e,#0c0c0c);border:1px solid #542018;padding:30px;border-radius:10px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:15px}form label{display:block;font-weight:700;margin-bottom:15px}input,select,textarea{width:100%;margin-top:6px;padding:13px;border:1px solid #54332b;border-radius:5px;background:#080808;color:#fff;font:inherit}textarea{min-height:95px;resize:vertical}.consent{display:flex;gap:10px;align-items:flex-start;font-weight:400}.consent input{width:auto;margin-top:5px}.small{font-size:13px;color:#aaa}.legal{padding:75px 0;min-height:75vh;background:radial-gradient(circle at 50% 0,#351006,transparent 32%),#080808}.legal-card{background:linear-gradient(180deg,#17110e,#0c0c0c);border:1px solid #542018;border-radius:10px;padding:32px;margin:25px 0;box-shadow:0 18px 45px #0008}.legal-card h2{font-size:20px;color:#ff5b39;margin-top:28px}.legal-card h2:first-child{margin-top:0}.legal-card a{color:#ff5b39}footer{border-top:1px solid #482117;padding:34px 0;background:#050505}.footer{display:flex;justify-content:space-between;align-items:center;gap:30px}.footer-logo{width:120px}.footer p{color:#999;margin:8px 0 0}.footer a{text-decoration:none}.footer a:hover{color:var(--red)}@media(max-width:900px){.hero-grid,.form-wrap{grid-template-columns:1fr}.hero-grid{text-align:center}.hero-logo{margin:auto}.quick-grid{grid-template-columns:repeat(2,1fr)}.quick-item{border-bottom:1px solid #51251c}.cards,.modules{grid-template-columns:1fr 1fr}.booking-strip .wrap{flex-direction:column;gap:15px;text-align:center}.nav{flex-wrap:wrap;padding:12px 0}nav{order:3;flex-basis:100%}header{position:relative}}@media(max-width:560px){.topbar .wrap{flex-direction:column;padding:8px 0;gap:2px}.cards,.modules,.grid2,.quick-grid{grid-template-columns:1fr}.section{padding:58px 0}.footer{align-items:flex-start;flex-direction:column}.hero-grid{min-height:auto;padding:38px 0}.hero-copy h1{letter-spacing:-1px}.nav-cta{display:none}}
.package-title{margin:32px 0 14px;font-size:1.5rem;text-transform:uppercase}.package-title span{font-size:.75rem;background:#e31b23;padding:5px 9px;border-radius:20px;margin-left:8px}.modules label strong{grid-column:2;display:block;color:#ffb13b;font-size:1.05rem;margin-top:8px}.main-packages label:has(input:checked){border-color:#ff2b2b;box-shadow:0 0 0 2px rgba(255,43,43,.25),0 10px 30px rgba(0,0,0,.35);background:linear-gradient(180deg,rgba(120,0,0,.28),rgba(20,20,20,.92))}.extras-lock{border:1px solid #6c4b1c;background:rgba(80,50,0,.28);padding:16px 18px;border-radius:12px;margin-bottom:15px;color:#ffd48b}.extras-lock.hidden{display:none}.extras.disabled{opacity:.42;filter:grayscale(.7);pointer-events:none}.extras:not(.disabled) label{transition:.2s}.extras:not(.disabled) label:hover{transform:translateY(-2px);border-color:#e31b23}

.package-description{grid-column:2;margin-top:14px;padding-top:12px;border-top:1px solid #3a2822}.package-description em{display:block;color:#ff6a00;font-style:normal;font-weight:900;text-transform:uppercase;font-size:.9rem;margin-bottom:5px}.package-description p{margin:0;color:#d7d0ca;font-size:.93rem;line-height:1.5}

/* Cookie banner & consent-based Google Maps */
.cookie-banner{position:fixed;left:0;right:0;bottom:0;z-index:9999;background:rgba(8,8,8,.98);border-top:1px solid #6c1e18;box-shadow:0 -12px 35px #000a;padding:18px}.cookie-banner.hidden{display:none}.cookie-inner{width:min(1180px,100%);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.cookie-inner strong{font-size:19px;color:#fff}.cookie-inner p{margin:5px 0 0;color:#c7c0b8;max-width:760px}.cookie-actions{display:flex;gap:10px;flex-wrap:wrap}.cookie-btn{border:1px solid #ff3b44;background:linear-gradient(180deg,#f21b27,#c90914);color:#fff;font-weight:900;text-transform:uppercase;padding:12px 16px;border-radius:6px;cursor:pointer}.cookie-btn.secondary{background:#16110f;border-color:#654038}.map-wrap{margin:15px 0 28px;border:1px solid #542018;border-radius:10px;overflow:hidden;background:#0b0b0b}.map-wrap iframe{display:block;width:100%;height:360px;border:0}.map-placeholder{min-height:300px;display:grid;place-items:center;text-align:center;padding:35px;background:radial-gradient(circle at 50% 50%,#351006,transparent 60%),#0b0b0b}.map-placeholder[hidden],.map-wrap iframe[hidden]{display:none}.map-placeholder p{color:#c7c0b8;max-width:540px}.map-placeholder strong{font-size:22px}.map-placeholder .btn{border:1px solid #ff3b44}@media(max-width:700px){.cookie-inner{align-items:flex-start;flex-direction:column}.cookie-actions{width:100%}.cookie-btn{flex:1}.map-wrap iframe{height:300px}}

.cookie-banner a{color:#ff6a00;font-weight:800}.cookie-settings-link{background:none;border:0;padding:0;color:#ff5b39;text-decoration:underline;font:inherit;font-weight:800;cursor:pointer}.cookie-settings-link:hover{color:#ff6a00}

.vat-note{display:block;color:#c7c0b8;font-size:.72rem;font-weight:700;margin-top:2px;text-transform:none;}
.price-box{margin:8px 0 18px;padding:18px;border:1px solid #6c1e18;border-radius:9px;background:linear-gradient(180deg,#20110d,#0b0b0b)}.price-box span,.price-box small{display:block}.price-box strong{display:block;color:#ffb13b;font-size:2rem;line-height:1.15;margin:4px 0}.price-box small{color:#c7c0b8}
.payment-box{margin:20px 0;padding:20px;border:1px solid #ddd;border-radius:14px;background:#fafafa}.payment-box h3{margin-top:0}.payment-option{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-bottom:1px solid #e6e6e6}.payment-option:last-of-type{border-bottom:0}.payment-option input{margin-top:5px}.payment-option span{display:flex;flex-direction:column;gap:3px}.payment-option small{opacity:.75}.paypal-area{margin-top:14px}.hidden{display:none!important}.form-status{margin-top:14px;padding:0}.form-status.success,.form-status.error{padding:12px 14px;border-radius:10px}.form-status.success{background:#eef8ef}.form-status.error{background:#fff0f0}.paypal-btn{width:100%}

/* Zahlungsbereich: dunkles Design + gut lesbare Schrift */
.payment-box{background:linear-gradient(180deg,#18110e,#0b0b0b);border:1px solid #6c1e18;color:#fff;box-shadow:0 14px 35px #0008}
.payment-box h3{color:#fff}
.payment-option{color:#fff;border-bottom:1px solid #3a2822}
.payment-option span,.payment-option b{color:#fff}
.payment-option small{color:#d7d0ca;opacity:1}
.payment-option input{width:18px;height:18px;flex:0 0 18px;accent-color:var(--red)}
.paypal-area{color:#fff}
.paypal-area .small{color:#c7c0b8}

/* Fix v12.2: Buchungsbutton und Rückmeldung im dunklen Design */
#bankSubmit{background:linear-gradient(180deg,#f21b27,#c90914)!important;border:1px solid #ff3b44!important;color:#fff!important;-webkit-text-fill-color:#fff!important;}
#bankSubmit:hover,#bankSubmit:focus{background:linear-gradient(180deg,#ff313b,#d30a16)!important;color:#fff!important;}
.form-status.success{background:linear-gradient(180deg,#17110e,#0c0c0c)!important;border:1px solid #4f7d4f!important;color:#fff!important;}
.form-status.error{background:linear-gradient(180deg,#21100f,#0c0c0c)!important;border:1px solid #8b2d2d!important;color:#fff!important;}
.form-status.success *, .form-status.error *{color:#fff!important;}

/* Erschwert das Markieren/Kopieren normaler Seiteninhalte; Formulare bleiben bedienbar. */
body { -webkit-user-select: none; user-select: none; }
input, textarea, select, option { -webkit-user-select: text; user-select: text; }
img { -webkit-user-drag: none; user-drag: none; }

.paypal-direct-btn{width:100%;margin-top:8px}.paypal-direct-btn:disabled{opacity:.6;cursor:wait}

/* Copyright footer */
.copyright{width:100%;text-align:center;margin-top:18px;padding-top:16px;border-top:1px solid rgba(255,255,255,.14);font-size:.9rem;opacity:.78}
@media(max-width:700px){.copyright{margin-top:14px;padding-top:14px;font-size:.82rem}}

/* Galerie, News & Bewertungen v17 */
.media-gallery,.review-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin-top:28px}.media-card,.review-card,.news-card{background:linear-gradient(180deg,#18110e,#0b0b0b);border:1px solid #6c1e18;border-radius:10px;padding:18px;box-shadow:0 14px 35px #0008}.media-card img,.media-card video{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;background:#000;border-radius:7px}.media-card h3{margin:14px 0 6px}.news-list{display:grid;gap:18px;margin-top:28px}.news-card h2{font-size:1.55rem!important;margin:10px 0!important}.news-status{display:inline-block;background:#7e1717;color:#fff;padding:5px 9px;border-radius:999px;font-size:.78rem;font-weight:900;text-transform:uppercase}.review-stars{color:#ffb13b;font-size:1.5rem;letter-spacing:2px}.review-card p{line-height:1.6}.review-success{border-left:4px solid #4f8b58;padding:10px 14px;background:#132318}.review-error{border-left:4px solid #a43c3c;padding:10px 14px;background:#2d1414}.hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}

/* Startseiten-Erweiterung v17.1 */
.home-live{background:radial-gradient(circle at 15% 0,#351006 0,transparent 30%),#080808;border-bottom:1px solid #35231c}.home-content-block{margin-top:42px}.home-section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:16px;border-bottom:1px solid #442219;padding-bottom:12px}.home-section-head h3{margin:0;font-size:1.65rem;text-transform:uppercase;font-style:italic}.home-section-head a{color:#ff6a00;font-weight:900;text-decoration:none}.home-news-grid,.home-review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.home-gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.home-news-card,.home-review-card,.home-media-card{background:linear-gradient(180deg,#18110e,#0b0b0b);border:1px solid #542018;border-radius:10px;overflow:hidden;box-shadow:0 14px 35px #0008}.home-news-card,.home-review-card{padding:20px}.home-news-card h4{font-size:1.2rem;margin:12px 0 5px}.home-news-card p,.home-review-card p,.home-media-card p{color:#d7d0ca}.home-meta{font-size:.86rem;color:#ffb13b;font-weight:800}.home-media-card img,.home-media-card video{width:100%;aspect-ratio:16/10;display:block;object-fit:cover;background:#000}.home-media-card>div{padding:13px}.home-media-card p{font-size:.88rem;margin:5px 0 0}.home-review-card .review-stars{margin-bottom:8px}.home-review-card p{font-size:1rem;line-height:1.65}.home-review-cta{text-align:center;margin-top:24px}.home-empty{grid-column:1/-1;color:#aaa;padding:18px 0}@media(max-width:900px){.home-news-grid,.home-review-grid{grid-template-columns:1fr 1fr}.home-gallery-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.home-news-grid,.home-review-grid,.home-gallery-grid{grid-template-columns:1fr}.home-section-head{align-items:flex-start;flex-direction:column;gap:5px}.home-content-block{margin-top:32px}}
.event-flyer{display:block;width:100%;max-height:620px;object-fit:contain;background:#090909;border-radius:8px;margin:0 0 18px}.home-news-card{padding:0}.home-news-body{padding:20px}.home-event-image{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#000}.home-more{display:inline-block;margin-top:8px;text-decoration:none}

/* v17.4: Startseiten-Vorschauen verlinken */
.home-card-link{display:block;color:inherit;text-decoration:none}
.home-card-link:hover h4{text-decoration:underline}
.home-gallery-info{display:block;color:inherit;text-decoration:none}
.home-gallery-info:hover strong{text-decoration:underline}
.home-media-card>a:first-child{display:block}

/* v18.7: Aktuelle Ticket-Events automatisch auf der Startseite */
.home-tickets-section{background:radial-gradient(circle at 85% 0,#351006 0,transparent 32%),#0a0909;border-bottom:1px solid #35231c}.home-ticket-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:28px}.home-ticket-heading h2{margin-bottom:8px}.home-ticket-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:22px}.home-ticket-card{background:linear-gradient(180deg,#18110e,#0b0b0b);border:1px solid #6c1e18;border-radius:14px;overflow:hidden;box-shadow:0 14px 35px #0008}.home-ticket-flyer{display:block;width:100%;height:340px;object-fit:contain;background:#070707}.home-ticket-body{padding:22px}.home-ticket-badge{display:inline-block;background:#7e1717;color:#fff;padding:5px 10px;border-radius:999px;font-size:.78rem;font-weight:900;text-transform:uppercase}.home-ticket-body h3{font-size:1.55rem;margin:12px 0 8px;text-transform:uppercase}.home-ticket-meta{color:#eee}.home-ticket-desc{color:#cfc7c1;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.home-ticket-bottom{margin-top:20px;padding-top:18px;border-top:1px solid #3a2822;display:flex;align-items:end;justify-content:space-between;gap:18px}.home-ticket-bottom>div>span,.home-ticket-bottom small{display:block;color:#aaa}.home-ticket-price{display:block;color:#ffb13b;font-size:1.55rem}.home-ticket-soldout{font-weight:900;color:#aaa;text-transform:uppercase}@media(max-width:700px){.home-ticket-heading,.home-ticket-bottom{align-items:flex-start;flex-direction:column}.home-ticket-flyer{height:auto;max-height:480px}.home-ticket-bottom .btn{width:100%;text-align:center}}

/* v18.8: kompakter Ticketverkauf unter Aktuelles & Events */
.home-ticket-mini{margin:0 0 18px}.home-ticket-mini-card{display:grid;grid-template-columns:92px minmax(0,1fr) auto auto;align-items:center;gap:16px;padding:12px;background:linear-gradient(180deg,#18110e,#0b0b0b);border:1px solid #6c1e18;border-radius:10px;color:#fff;text-decoration:none;box-shadow:0 10px 24px #0006}.home-ticket-mini-card img{width:92px;height:72px;object-fit:cover;border-radius:7px;background:#050505}.home-ticket-mini-icon{width:92px;height:72px;display:grid;place-items:center;font-size:2rem;background:#100b09;border-radius:7px}.home-ticket-mini-copy{min-width:0}.home-ticket-mini-label{display:block;color:#ff6a00;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.home-ticket-mini-copy strong{display:block;margin:3px 0;font-size:1.08rem;text-transform:uppercase}.home-ticket-mini-copy small{display:block;color:#cfc7c1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-ticket-mini-price{text-align:right}.home-ticket-mini-price span,.home-ticket-mini-price small{display:block;color:#aaa;font-size:.75rem}.home-ticket-mini-price b{color:#ffb13b;font-size:1.15rem}.home-ticket-mini-btn{background:#8b1f17;padding:9px 13px;border-radius:7px;font-weight:900;white-space:nowrap}.home-ticket-mini-card:hover{border-color:#ff6a00;transform:translateY(-1px)}@media(max-width:700px){.home-ticket-mini-card{grid-template-columns:72px 1fr auto}.home-ticket-mini-card img,.home-ticket-mini-icon{width:72px;height:60px}.home-ticket-mini-price{display:none}.home-ticket-mini-btn{grid-column:2/4;justify-self:start}.home-ticket-mini-copy small{white-space:normal}}
