:root{--kw-red:#730b20;--kw-red2:#9e1730;--kw-burgundy:#3b0712;--kw-gold:#d9a74d;--kw-gold2:#f3cf87;--kw-cream:#fff8ec;--kw-paper:#fffdf9;--kw-ink:#2a1d20;--kw-muted:#78686d;--kw-line:#ead9d7;--kw-shadow:0 24px 70px rgba(74,9,28,.16)}
.kw-theme{background:#fffaf5;color:var(--kw-ink)}
.kw-topline{background:linear-gradient(90deg,#2f0610,#6f0d22 45%,#9d1830);color:#ffe8bc;padding:8px 6%;display:flex;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:1.6px;text-transform:uppercase;border-bottom:1px solid rgba(255,224,166,.2)}
.kw-header{position:sticky;top:0;z-index:25;padding:12px 5.5%;background:rgba(255,252,248,.95);backdrop-filter:blur(14px);box-shadow:0 8px 30px rgba(49,12,22,.08);border-bottom:1px solid #f0e3df}
.kw-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--kw-red2)}
.kw-brand img{width:52px;height:52px;object-fit:contain;filter:drop-shadow(0 5px 9px rgba(80,12,25,.12))}
.kw-brand b{display:block;font-size:27px;line-height:1;font-weight:900;letter-spacing:-1.5px}
.kw-brand small{display:block;margin-top:6px;font-size:8px;letter-spacing:2px;color:#6d5b60}
.kw-header nav{margin-left:auto;display:flex;gap:26px}
.kw-header nav a{font-weight:700;text-decoration:none;font-size:13px;position:relative}
.kw-header nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-5px;height:2px;background:var(--kw-gold);transition:.2s}
.kw-header nav a:hover:after{right:0}
.kw-header .header-actions{display:flex;align-items:center;gap:18px;font-size:13px}
.kw-header .header-actions>a:not(.cartlink){text-decoration:none;font-weight:700}
.kw-testbar{padding:9px 5%;text-align:center;background:#fff2cd;color:#704813;border-bottom:1px solid #e9d08a;font-size:11px;font-weight:800;letter-spacing:.2px}
.kw-hero{position:relative;overflow:hidden;min-height:700px;background:radial-gradient(circle at 18% 20%,rgba(255,196,104,.16),transparent 28%),radial-gradient(circle at 82% 35%,rgba(255,231,186,.1),transparent 25%),linear-gradient(135deg,#31040d 0%,#660b1d 42%,#95172d 100%);display:grid;grid-template-columns:1.05fr .95fr;gap:65px;padding:64px 7% 58px;color:#fff}
.kw-hero:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle,#f7d18a 0 1px,transparent 1.4px);background-size:47px 47px;opacity:.12;pointer-events:none}
.kw-hero:after{content:"";position:absolute;inset:auto 0 0;height:150px;background:linear-gradient(0deg,rgba(28,3,9,.45),transparent)}
.kw-glow{position:absolute;border-radius:50%;filter:blur(10px);opacity:.7}.kw-g1{width:260px;height:260px;background:rgba(224,160,55,.16);top:12%;left:1%}.kw-g2{width:300px;height:300px;background:rgba(255,235,185,.08);right:8%;bottom:7%}
.kw-hero-copy{align-self:center;position:relative;z-index:2}
.kw-kicker{font-size:10px;letter-spacing:2.4px;font-weight:900;color:#f4cf83;text-transform:uppercase}.kw-kicker.dark{color:#9c6b1c}
.kw-hero h1{font-family:Georgia,serif;font-size:clamp(55px,6vw,92px);line-height:.92;letter-spacing:-4px;margin:16px 0 24px;max-width:680px}.kw-hero h1 em{font-weight:400;color:#f6ce78;text-shadow:0 4px 22px rgba(0,0,0,.28)}
.kw-lead{max-width:590px;font-size:18px;line-height:1.72;color:#f7e4df}
.kw-meta{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0}.kw-meta span{min-width:145px;padding:14px 15px;border:1px solid rgba(244,207,131,.28);border-radius:12px;background:rgba(255,255,255,.06);backdrop-filter:blur(4px)}.kw-meta b{display:block;font-size:18px;color:#fff}.kw-meta small{color:#e7c9c6;font-size:10px}
.kw-actions{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.kw-btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;border:1px solid #7d132a;border-radius:999px;padding:14px 22px;background:linear-gradient(135deg,#8c1028,#bd2141);color:#fff;text-decoration:none;font-weight:900;box-shadow:0 10px 28px rgba(74,7,25,.22);min-height:49px;transition:.2s}.kw-btn:hover{transform:translateY(-2px);box-shadow:0 16px 35px rgba(74,7,25,.28)}.kw-btn-gold{background:linear-gradient(135deg,#c78a2e,#efc66f);color:#3b160b;border-color:#f2d491;box-shadow:0 13px 35px rgba(0,0,0,.22)}
.kw-link{color:#f4dca9;font-weight:800;font-size:13px;text-decoration:none;border-bottom:1px solid rgba(244,220,169,.4)}.kw-reserve-note{font-size:11px;color:#d8bcbf;margin-top:22px}
.kw-poster-wrap{position:relative;display:grid;place-items:center;z-index:2}.kw-poster{width:min(470px,100%);max-height:620px;object-fit:contain;border-radius:12px;box-shadow:0 32px 80px rgba(0,0,0,.45);border:1px solid rgba(255,220,160,.35);position:relative;z-index:2}.kw-poster-glow{position:absolute;width:70%;height:70%;background:#ffb648;filter:blur(70px);opacity:.12}
.kw-trust{position:relative;z-index:4;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;max-width:1300px;margin:-24px auto 0;padding:0 5%}.kw-trust>span{background:#fff;border:1px solid #eadad7;border-radius:16px;padding:19px 22px;box-shadow:var(--kw-shadow);display:grid;grid-template-columns:auto 1fr;column-gap:12px}.kw-trust b{grid-row:1/3;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#f6e9dc;color:#9a681c;font-size:11px}.kw-trust strong{font-size:14px}.kw-trust small{font-size:10px;color:var(--kw-muted)}
.kw-ticket-section{padding:74px 6% 76px;max-width:1500px;margin:auto}.kw-section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px}.kw-section-head h2{font-family:Georgia,serif;font-size:clamp(34px,4vw,54px);letter-spacing:-2px;margin:8px 0}.kw-section-head.light h2{color:#fff}.kw-status{display:inline-flex;padding:8px 12px;border-radius:999px;background:#fff2d8;color:#79531b;font-size:11px;font-weight:900;border:1px solid #efd9a9;white-space:nowrap}
.kw-ticket-card{display:grid;grid-template-columns:minmax(320px,.8fr) 1.2fr;background:#fff;border-radius:22px;overflow:hidden;border:1px solid #ead9d8;box-shadow:var(--kw-shadow)}.kw-ticket-visual{background:linear-gradient(135deg,#3a0713,#89172b);padding:28px;display:grid;place-items:center}.kw-ticket-visual img{max-height:570px;max-width:100%;object-fit:contain;border-radius:10px;box-shadow:0 20px 50px rgba(0,0,0,.28)}.kw-ticket-info{padding:48px 50px}.kw-pill{display:inline-flex;padding:7px 10px;border-radius:999px;background:#f5e8d2;color:#7f5314;font-size:9px;letter-spacing:1.6px;font-weight:900}.kw-ticket-info h3{font-family:Georgia,serif;font-size:44px;line-height:1.05;margin:17px 0}.kw-ticket-info>p{max-width:650px;color:#6f6165}
.kw-facts{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:30px 0;border-top:1px solid #ede1df}.kw-facts div{padding:14px 0;border-bottom:1px solid #ede1df}.kw-facts dt{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#9a7c65}.kw-facts dd{font-size:13px;font-weight:800;margin:3px 0 0;padding-right:20px}.kw-buyline{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:30px}.kw-buyline small{display:block;color:#88777c}.kw-buyline strong{font-size:30px;color:#7f1128}
.kw-artists{position:relative;overflow:hidden;background:radial-gradient(circle at 15% 20%,rgba(231,170,72,.09),transparent 25%),linear-gradient(135deg,#2b050c,#4b0814 60%,#6f0d20);padding:74px 6% 80px}.kw-artist-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:1500px;margin:auto}.kw-artist-grid article{background:#fff8f0;border:1px solid rgba(239,203,139,.28);border-radius:16px;overflow:hidden;box-shadow:0 18px 45px rgba(0,0,0,.24)}.kw-artist-grid img{display:block;width:100%;height:290px;object-fit:cover;object-position:center top}.kw-artist-grid article:nth-child(2) img{filter:grayscale(1)}.kw-artist-grid div{padding:18px}.kw-artist-grid h3{margin:0 0 6px;font-family:Georgia,serif;font-size:21px;color:#681127}.kw-artist-grid p{margin:0;font-size:12px;color:#756267}.kw-brass{max-width:900px;margin:30px auto 0;padding:20px 26px;border:1px solid rgba(243,207,135,.35);background:rgba(255,255,255,.06);border-radius:999px;color:#fff;display:flex;align-items:center;justify-content:center;gap:24px;text-align:center}.kw-brass span{font-size:28px}.kw-brass small{display:block;letter-spacing:1.7px;color:#dcbf89}.kw-brass strong{display:block;font-family:Georgia,serif;font-size:25px;color:#f4d08a}
.kw-rommerskirchen{position:relative;min-height:520px;background:linear-gradient(180deg,#fffaf5,#f8eee6);overflow:hidden;display:grid;grid-template-columns:1.4fr .6fr;align-items:center;padding:45px 6% 55px}.kw-rommerskirchen img{width:100%;max-height:420px;object-fit:contain}.kw-rommerskirchen-copy{padding:30px}.kw-rommerskirchen-copy h2{font-family:Georgia,serif;font-size:42px;line-height:1.08;letter-spacing:-1.5px}
.kw-event-page{max-width:1450px;margin:auto;padding:55px 6% 80px}.kw-back{font-size:12px;font-weight:800;text-decoration:none;color:#7b182b}.kw-event-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;margin-top:30px}.kw-event-poster{background:linear-gradient(145deg,#3b0713,#8d162d);padding:28px;border-radius:22px;box-shadow:var(--kw-shadow);display:grid;place-items:center}.kw-event-poster img{width:100%;max-height:760px;object-fit:contain;border-radius:11px;box-shadow:0 18px 50px rgba(0,0,0,.28)}.kw-event-buy{align-self:start}.kw-event-buy h1{font-family:Georgia,serif;font-size:clamp(45px,5vw,68px);letter-spacing:-2.5px;margin:12px 0}.kw-event-buy .description{color:#675a5e;max-width:720px}.kw-event-facts{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:28px 0}.kw-event-facts div{padding:17px;background:#fff;border:1px solid #eadbd8;border-radius:12px}.kw-event-facts small{display:block;color:#9a7b67;text-transform:uppercase;letter-spacing:.9px}.kw-event-facts strong{display:block;margin-top:3px}.kw-event-price{display:flex;align-items:end;justify-content:space-between;padding:18px 0;border-top:1px solid #eadbd8;border-bottom:1px solid #eadbd8}.kw-event-price span{font-size:12px;color:#79686e}.kw-event-price strong{font-size:38px;color:#7d1028}.kw-reserve-form{display:flex;gap:14px;align-items:end;margin:25px 0}.kw-reserve-form label{margin:0;min-width:190px}.kw-reserve-form input{margin-top:6px}.kw-reservation-info{display:grid;grid-template-columns:auto 1fr;gap:14px;background:#fff4dd;border:1px solid #efd7a6;border-radius:12px;padding:15px 17px;color:#704d19}.kw-reservation-info span{font-size:12px}
.kw-footer{background:linear-gradient(120deg,#21050b,#390812);border-top:3px solid #bd7e26;color:#f9ead8;padding:38px 6%;display:flex;justify-content:space-between;gap:35px}.kw-footer-brand{display:flex;align-items:center;gap:14px}.kw-footer-brand img{width:58px;height:58px;object-fit:contain}.kw-footer-brand p{margin:3px 0;color:#d5bcb9}.kw-footer-links{display:flex;gap:18px;flex-wrap:wrap;align-items:center;font-size:11px}.kw-footer-links a{color:#ead8d4;text-decoration:none}.kw-footer-links a:hover{color:#f4cf83}
.kw-theme .cartlink{border-color:#e7d2d2;background:#fff;box-shadow:0 6px 16px rgba(75,13,28,.08)}.kw-theme .cartlink b{background:#8d142b}.kw-theme .form-page h1,.kw-theme .panel h1{font-family:Georgia,serif;color:#6f0d20}.kw-theme .panel{border-radius:16px;box-shadow:0 12px 34px rgba(72,16,31,.08)}
@media(max-width:1100px){.kw-header nav{display:none}.kw-hero{grid-template-columns:1fr .8fr;padding:50px 5%;gap:35px}.kw-ticket-card{grid-template-columns:.8fr 1.2fr}.kw-artist-grid{grid-template-columns:repeat(2,1fr)}.kw-event-grid{gap:35px}.kw-rommerskirchen{grid-template-columns:1fr}}
@media(max-width:760px){.kw-topline span{display:none}.kw-topline{justify-content:center}.kw-header{padding:10px 4%}.kw-brand img{width:42px;height:42px}.kw-brand b{font-size:21px}.kw-brand small{font-size:6px}.kw-header .header-actions>a:not(.cartlink){display:none}.kw-hero{grid-template-columns:1fr;padding:38px 6% 45px}.kw-hero h1{font-size:55px;letter-spacing:-2.5px}.kw-poster-wrap{margin-top:10px}.kw-poster{max-height:520px}.kw-meta span{flex:1;min-width:120px}.kw-trust{grid-template-columns:1fr;margin-top:0;padding-top:14px}.kw-ticket-section{padding:48px 5%}.kw-section-head{display:block}.kw-ticket-card{grid-template-columns:1fr}.kw-ticket-visual img{max-height:500px}.kw-ticket-info{padding:28px}.kw-ticket-info h3{font-size:34px}.kw-facts{grid-template-columns:1fr}.kw-buyline{align-items:stretch;flex-direction:column}.kw-artist-grid{grid-template-columns:1fr}.kw-artist-grid img{height:360px}.kw-brass{border-radius:18px}.kw-rommerskirchen{padding:32px 5%}.kw-rommerskirchen-copy{padding:15px 0}.kw-rommerskirchen-copy h2{font-size:34px}.kw-event-grid{grid-template-columns:1fr}.kw-event-page{padding:35px 5% 55px}.kw-event-buy h1{font-size:44px}.kw-event-facts{grid-template-columns:1fr}.kw-reserve-form{flex-direction:column;align-items:stretch}.kw-footer{flex-direction:column}.kw-footer-links{gap:14px}.kw-kicker{letter-spacing:1.7px}}
@media(prefers-reduced-motion:reduce){.kw-btn,.kw-header nav a:after{transition:none!important}}
/* Vollbreites Weihnachtsbanner vor dem Footer */
.kw-bottom-banner{width:100%;margin:0;padding:0;overflow:hidden;background:#2b050c;line-height:0}
.kw-bottom-banner img{display:block;width:100%;height:auto;max-width:none;object-fit:cover;object-position:center}
@media(max-width:760px){.kw-bottom-banner img{width:100%;min-height:230px;object-fit:cover;object-position:center}}

/* Abschlusskarte unter dem Weihnachtsbanner */
.kw-bottom-card-wrap{padding:34px 6% 46px;background:linear-gradient(180deg,#2b050c 0,#fff8f0 18%,#fffaf5 100%)}
.kw-bottom-card{max-width:1050px;margin:0 auto;background:rgba(255,253,249,.97);border:1px solid #ead4cf;border-top:4px solid #b47b2b;border-radius:18px;padding:34px 40px;text-align:center;box-shadow:0 18px 50px rgba(73,12,29,.12)}
.kw-bottom-card h2{font-family:Georgia,serif;font-size:clamp(30px,3.4vw,46px);line-height:1.08;letter-spacing:-1.5px;margin:8px auto 12px;max-width:780px;color:#5f0b1b}
.kw-bottom-card p:not(.kw-kicker){max-width:680px;margin:0 auto 22px;color:#6d5b60}
.kw-bottom-card .kw-btn{margin-top:4px}
@media(max-width:760px){.kw-bottom-card-wrap{padding:22px 5% 34px}.kw-bottom-card{padding:26px 20px;border-radius:14px}.kw-bottom-card h2{font-size:31px}}

/* ===== Premium Checkout · Kölsche Weihnacht ===== */
.co-page{max-width:1480px;margin:0 auto;padding:48px 5.5% 78px}
.co-head{margin-bottom:26px}.co-head h1{font-family:Georgia,serif;font-size:clamp(42px,5vw,66px);letter-spacing:-2.5px;line-height:1;margin:8px 0 10px;color:#4f0918}.co-head>p:last-child{color:#78696d;margin:0}
.co-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:26px 0 22px}.co-steps div{position:relative;display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid #eadfdb;border-radius:12px;background:#fff;color:#8a7d80;font-size:11px;font-weight:800}.co-steps b{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:#f1e9e6;color:#8f767d}.co-steps .active{border-color:#d7b064;background:#fff9ed;color:#691126}.co-steps .active b,.co-steps .done b{background:#8b142c;color:white}.co-steps .done{color:#691126}
.co-timer{display:grid;grid-template-columns:auto 1fr;gap:17px;align-items:center;padding:18px 22px;margin-bottom:28px;background:linear-gradient(135deg,#4b0814,#7d1026);color:white;border-radius:16px;box-shadow:0 12px 34px rgba(82,10,27,.2)}.co-timer-icon{width:48px;height:48px;border:1px solid rgba(255,222,165,.4);border-radius:50%;display:grid;place-items:center;font-size:25px;color:#f2c86f}.co-timer small{display:block;color:#e5bd85;font-size:9px;letter-spacing:1.7px;font-weight:900}.co-timer strong{display:block;font-size:29px;line-height:1.1;margin-top:2px}.co-timer p{font-size:11px;color:#ead7d8;margin:5px 0 0}.co-timer.compact{max-width:560px;padding:13px 18px}.co-timer.compact .co-timer-icon{width:40px;height:40px}.co-timer.compact strong{font-size:24px}
.co-grid,.co-review-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(330px,.55fr);gap:24px;align-items:start}.co-card,.co-summary-card{background:#fff;border:1px solid #e9deda;border-radius:18px;box-shadow:0 16px 45px rgba(68,13,27,.08);overflow:hidden}.co-card-title{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid #eee4e1}.co-card-title span{font-weight:900;color:#4f333b}.co-card-title small{color:#9a858b}.co-card-title a{font-size:11px;color:#8b1730;font-weight:800;text-decoration:none}
.co-item{display:grid;grid-template-columns:auto minmax(0,1fr) 190px auto;gap:18px;align-items:center;padding:24px 22px;border-bottom:1px solid #f0e8e5}.co-item:last-child{border-bottom:0}.co-item-date{width:64px;height:72px;border-radius:12px;background:linear-gradient(145deg,#6c0c20,#9e1c38);color:white;display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:10px;box-shadow:0 8px 18px rgba(85,10,29,.16)}.co-item-date b{font-size:27px}.co-item-date span{font-size:8px;line-height:1.35;color:#f3d9cf}.co-tag{display:inline-block;font-size:8px;letter-spacing:1.5px;font-weight:900;color:#986b21;background:#fbf0dc;border-radius:999px;padding:5px 8px}.co-item-info h3,.co-review-ticket h3{margin:8px 0 5px;font-family:Georgia,serif;font-size:23px;color:#5a0b1c}.co-item-info p,.co-review-ticket p{margin:2px 0;font-size:11px;color:#85777b}.co-price-note{font-weight:800!important;color:#5d4b50!important}
.co-qty label,.co-label{display:block;font-size:10px;font-weight:900;color:#76676c}.co-qty>div{display:flex;gap:7px;margin-top:6px}.co-qty input{width:72px;padding:10px;border:1px solid #ddd0cc;border-radius:9px;background:#fff}.co-update{padding:9px 11px;border-radius:9px;border:1px solid #d8c9c5;background:#f9f5f3;color:#6d2538;font-size:10px;font-weight:800;cursor:pointer}.co-qty small{font-size:9px;color:#a18f94}.co-line-total{font-size:21px;color:#691126;white-space:nowrap}
.co-info-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px}.co-info-row>div{display:flex;gap:10px;padding:14px;background:#fff;border:1px solid #ece1de;border-radius:12px}.co-info-row>div>span{width:30px;height:30px;flex:0 0 30px;display:grid;place-items:center;border-radius:50%;background:#f7ecd8;color:#8c6220;font-weight:900}.co-info-row p{margin:0;font-size:10px;line-height:1.45;color:#83757a}.co-info-row b{color:#5c464d}
.co-summary{position:relative}.co-summary-card{padding:24px}.co-summary-card.sticky{position:sticky;top:112px}.co-summary-card h2{font-family:Georgia,serif;font-size:28px;color:#541021;margin:0 0 20px}.co-summary-line{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #eee4e1;font-size:12px;color:#77696d}.co-total{display:flex;justify-content:space-between;align-items:end;padding:17px 0 8px}.co-total span{font-weight:900}.co-total strong{font-size:30px;color:#7c1029}.co-vat-note{font-size:10px;color:#99888e;margin:0 0 20px}.co-next-box{padding-top:18px;border-top:1px solid #eee4e1}.co-next-kicker{font-size:9px;letter-spacing:1.4px;color:#aa7a2e;font-weight:900}.co-next-box h3{font-size:20px;line-height:1.25;margin:7px 0}.co-next-box p{font-size:11px;line-height:1.55;color:#7f7075}.co-primary{width:100%;margin-top:10px}.co-secondary-link{display:block;text-align:center;margin-top:13px;font-size:11px;font-weight:800;color:#8b1730}
.co-account-ok{display:flex;gap:10px;align-items:center;padding:12px;margin:6px 0 15px;background:#f4f8f2;border:1px solid #d9e7d4;border-radius:10px}.co-account-ok>span{width:30px;height:30px;border-radius:50%;background:#537744;color:white;display:grid;place-items:center}.co-account-ok small,.co-method small,.co-group small{display:block;font-size:8px;letter-spacing:1px;color:#8c7a80}.co-account-ok b{font-size:11px}.co-alert{padding:11px 12px;border-radius:9px;background:#fff3d9;border:1px solid #ecd49d;color:#72511d;font-size:10px;margin-bottom:14px}.co-checkout-form{display:flex;flex-direction:column;gap:12px}.co-method{padding:12px 13px;border:1px solid #e9deda;background:#fcfaf9;border-radius:10px}.co-method b{display:block;margin:3px 0;color:#5c303b;font-size:12px}.co-method span{font-size:9px;color:#8f7c82}.co-label span{font-weight:400;color:#9c8d91}.co-label input{width:100%;margin-top:6px;padding:11px 12px;border:1px solid #ddd0cc;border-radius:9px}.co-details{border:1px solid #e8ddda;border-radius:10px;padding:12px;font-size:11px}.co-details summary{font-weight:800;color:#6f2436}.co-contact-hint{font-size:10px;color:#86787c;margin:0}.co-contact-hint a{color:#8b1730;font-weight:800}.co-backshop{display:block;text-align:center;margin:14px 0 0;font-size:11px;color:#7b5f66;text-decoration:none}.co-empty{max-width:700px;margin:40px auto;text-align:center;background:white;border:1px solid #e8deda;border-radius:18px;padding:50px 30px;box-shadow:0 15px 40px rgba(70,13,28,.07)}.co-empty>span{font-size:42px}.co-empty h2{font-family:Georgia,serif;color:#5a0b1c}
.co-review-main{display:flex;flex-direction:column;gap:16px}.co-review-ticket{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:22px}.co-review-qty{text-align:right}.co-review-qty b{display:block;color:#701128}.co-review-qty strong{font-size:10px;color:#95858a}.co-data-card{padding-bottom:5px}.co-data-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:20px 22px}.co-data-grid small,.co-method-review small{display:block;font-size:8px;letter-spacing:1.1px;color:#a08289}.co-data-grid b{font-size:12px;color:#563d44;line-height:1.5}.co-method-review{padding:18px 22px}.co-method-review>div{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid #eee4e1}.co-method-review>div:last-child{border-bottom:0}.co-method-review>div>span{width:35px;height:35px;border-radius:50%;background:#f7ecd8;display:grid;place-items:center;color:#8d6220}.co-method-review p{margin:0}.co-method-review b{display:block;margin:3px 0;color:#59313b}.co-method-review em{font-style:normal;font-size:10px;line-height:1.45;color:#85767b}.co-invoice-badge{display:flex;gap:10px;align-items:center;padding:12px;margin:12px 0;background:#fff7e7;border:1px solid #ead3a6;border-radius:10px}.co-invoice-badge>span{width:32px;height:32px;border-radius:50%;background:#a67628;color:white;display:grid;place-items:center}.co-invoice-badge small{display:block;font-size:8px;letter-spacing:1px;color:#9b762e}.co-invoice-badge b{font-size:11px}.co-group{padding:10px 0}.co-group b{font-size:12px}.co-note{font-size:10px;color:#817278}.co-terms{display:flex;align-items:flex-start;gap:9px;font-size:10px;line-height:1.45;color:#6f6065;margin:14px 0}.co-terms input{margin-top:3px}.co-terms a{color:#8b1730}.co-final-note{font-size:9px;line-height:1.45;color:#97868b;text-align:center;margin:11px 0 0}
@media(max-width:980px){.co-grid,.co-review-grid{grid-template-columns:1fr}.co-summary-card.sticky{position:static}.co-info-row{grid-template-columns:1fr}.co-summary{max-width:none}}
@media(max-width:680px){.co-page{padding:32px 4% 55px}.co-steps{gap:5px}.co-steps div{padding:8px 6px;justify-content:center}.co-steps span{display:none}.co-steps b{width:30px;height:30px}.co-timer{padding:15px}.co-timer p{font-size:10px}.co-item{grid-template-columns:auto 1fr;gap:12px}.co-qty{grid-column:1/-1}.co-line-total{grid-column:2;text-align:right}.co-card-title{padding:15px}.co-data-grid{grid-template-columns:1fr}.co-review-ticket{align-items:flex-start}.co-summary-card{padding:20px}.co-head h1{font-size:44px}}

/* ===== Premium Mein Konto ===== */
.acct-page{max-width:1480px;margin:0 auto;padding:46px 5.5% 78px}
.acct-hero{position:relative;overflow:hidden;display:flex;justify-content:space-between;align-items:center;gap:36px;padding:34px 38px;margin-bottom:24px;border-radius:22px;background:radial-gradient(circle at 85% 10%,rgba(240,190,92,.18),transparent 30%),linear-gradient(135deg,#3a0711,#701026 65%,#8e1730);color:white;box-shadow:0 20px 55px rgba(66,8,24,.18)}
.acct-hero:after{content:"";position:absolute;width:320px;height:320px;border:1px solid rgba(255,255,255,.07);border-radius:50%;right:-130px;bottom:-220px;box-shadow:0 0 0 55px rgba(255,255,255,.025),0 0 0 110px rgba(255,255,255,.02)}
.acct-hero>div{position:relative;z-index:1}.acct-hero .kw-kicker{color:#f0c875}.acct-hero h1{font-family:Georgia,serif;font-size:clamp(40px,5vw,62px);line-height:1;letter-spacing:-2px;margin:8px 0 12px}.acct-hero>div>p:last-child{margin:0;color:#e8ced2;max-width:650px;font-size:13px;line-height:1.6}
.acct-status-card{min-width:330px;display:flex;align-items:center;gap:14px;padding:16px 18px;border:1px solid rgba(246,211,145,.3);border-radius:15px;background:rgba(255,255,255,.07);backdrop-filter:blur(8px)}
.acct-avatar{width:52px;height:52px;flex:0 0 52px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#e3b75f,#f4d898);color:#52101c;font-family:Georgia,serif;font-size:18px;font-weight:900;box-shadow:0 7px 18px rgba(0,0,0,.2)}
.acct-status-card small{display:block;font-size:8px;letter-spacing:1.4px;color:#d9b6bc}.acct-status-card strong{display:block;font-size:12px;margin:4px 0 7px}.acct-verified,.acct-unverified{display:inline-flex;align-items:center;padding:4px 7px;border-radius:999px;font-size:8px;font-weight:900}.acct-verified{background:rgba(104,155,82,.22);color:#d6efca;border:1px solid rgba(166,209,145,.22)}.acct-unverified{background:rgba(255,190,83,.16);color:#ffe0a4;border:1px solid rgba(255,210,128,.2)}
.acct-alert{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:15px 18px;margin:0 0 22px;border:1px solid #ecd4a1;border-radius:14px;background:#fff6df;color:#6b4c18}.acct-alert-icon{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#b7812c;color:white;font-weight:900}.acct-alert strong{display:block;font-size:12px}.acct-alert p{font-size:10px;margin:3px 0 0}.acct-small-btn{border:1px solid #d5b372;background:white;color:#704c16;border-radius:999px;padding:9px 13px;font-size:10px;font-weight:900;cursor:pointer}
.acct-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(390px,.95fr);gap:22px;align-items:start}.acct-card{background:#fff;border:1px solid #e9deda;border-radius:19px;box-shadow:0 16px 45px rgba(68,13,27,.08);overflow:hidden}.acct-card-head{display:flex;justify-content:space-between;align-items:center;padding:20px 23px;border-bottom:1px solid #eee5e2}.acct-card-head small{display:block;font-size:8px;letter-spacing:1.4px;color:#a07d83;font-weight:900}.acct-card-head h2{font-family:Georgia,serif;font-size:27px;color:#571020;margin:4px 0 0}.acct-count,.acct-card-symbol{min-width:34px;height:34px;padding:0 9px;border-radius:999px;display:grid;place-items:center;background:#f7ead5;color:#90651f;font-size:11px;font-weight:900}
.acct-order-row{display:grid;grid-template-columns:auto 1fr auto auto;gap:14px;align-items:center;padding:19px 22px;border-bottom:1px solid #f0e8e5;text-decoration:none;color:inherit;transition:.18s}.acct-order-row:hover{background:#fffaf5;transform:translateX(2px)}.acct-order-icon{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(145deg,#6d0d21,#9e1b38);font-size:19px;box-shadow:0 7px 15px rgba(91,11,31,.13)}.acct-order-main small{display:block;font-size:7px;letter-spacing:1.2px;color:#a38f94}.acct-order-main strong{display:block;color:#5c2736;font-size:12px;margin:3px 0}.acct-order-main span{font-size:10px;color:#8e7d82}.acct-order-status{text-align:right}.acct-order-status span{display:block;font-size:8px;padding:4px 7px;background:#f0f6ed;color:#547246;border-radius:999px;margin-bottom:5px}.acct-order-status b{font-size:14px;color:#6d1026}.acct-order-arrow{color:#a77a35;font-size:20px}
.acct-empty{text-align:center;padding:46px 28px}.acct-empty-icon{font-size:38px}.acct-empty h3{font-family:Georgia,serif;color:#5a0c1d;font-size:25px;margin:12px 0 8px}.acct-empty p{font-size:11px;line-height:1.6;color:#85767b;max-width:420px;margin:0 auto 18px}.acct-order-help{display:flex;gap:11px;align-items:center;margin:0 22px 22px;padding:13px 14px;border-radius:11px;background:#fff8e8;border:1px solid #ead6ab}.acct-order-help>span{width:31px;height:31px;border-radius:50%;background:#a57729;color:white;display:grid;place-items:center}.acct-order-help p{margin:0;font-size:10px;line-height:1.45;color:#756248}
.acct-email-box{margin:20px 22px 4px;padding:14px 15px;border-radius:11px;background:#f8f4f1;border:1px solid #ebe0dd}.acct-email-box small{display:block;font-size:8px;letter-spacing:1.2px;color:#9d848b}.acct-email-box strong{display:block;font-size:12px;color:#573440;margin:3px 0}.acct-email-box span{font-size:9px;color:#9b898e}
.acct-form{padding:18px 22px 23px}.acct-form-section{padding:0 0 19px;margin-bottom:19px;border-bottom:1px solid #eee5e2}.acct-section-label{font-size:11px;font-weight:900;color:#5e3b45;margin-bottom:14px}.acct-section-label span{display:inline-grid;place-items:center;width:25px;height:25px;margin-right:8px;border-radius:7px;background:#f6ead6;color:#95671f;font-size:8px}
.acct-form label{display:block;font-size:10px;font-weight:900;color:#6f5e63;margin-bottom:12px}.acct-form label em{font-style:normal;font-weight:400;color:#a49599}.acct-form input,.acct-form select{display:block;width:100%;margin-top:6px;padding:11px 12px;border:1px solid #ded2cf;border-radius:9px;background:#fcfbfa;color:#3f3035;min-height:44px;box-shadow:none}.acct-form input:focus,.acct-form select:focus{outline:3px solid rgba(187,139,56,.13);border-color:#c4994b;background:#fff}.acct-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.acct-street-grid{grid-template-columns:2fr .75fr}.acct-city-grid{grid-template-columns:.7fr 1.3fr}.acct-form .errorlist{margin:5px 0 0;padding:8px 10px 8px 25px;border-radius:7px;background:#fff0f1;color:#9a1730;font-size:9px}
.acct-save-row{display:flex;align-items:center;justify-content:space-between;gap:18px}.acct-save-row p{font-size:9px;line-height:1.45;color:#998a8e;max-width:290px;margin:0}.acct-save-btn{width:auto;white-space:nowrap}
.acct-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:20px;padding:0 4px}.acct-back-link{font-size:11px;color:#795f65;text-decoration:none}.acct-logout{border:1px solid #d8c9c5;background:#fff;color:#7a243a;border-radius:999px;padding:10px 16px;font-size:10px;font-weight:900;cursor:pointer}.acct-logout:hover{background:#f9f2f0}
@media(max-width:1000px){.acct-grid{grid-template-columns:1fr}.acct-status-card{min-width:0}.acct-hero{align-items:flex-start}}
@media(max-width:700px){.acct-page{padding:30px 4% 55px}.acct-hero{display:block;padding:27px 22px}.acct-status-card{margin-top:22px}.acct-alert{grid-template-columns:auto 1fr}.acct-alert form{grid-column:1/-1}.acct-small-btn{width:100%}.acct-form-grid,.acct-street-grid,.acct-city-grid{grid-template-columns:1fr}.acct-save-row{display:block}.acct-save-btn{width:100%;margin-top:15px}.acct-order-row{grid-template-columns:auto 1fr auto}.acct-order-status{grid-column:2;text-align:left}.acct-order-arrow{grid-column:3;grid-row:1/3}.acct-bottom{gap:15px;align-items:stretch;flex-direction:column}.acct-logout{width:100%}.acct-back-link{text-align:center}}

/* ===== Lesbarkeit Webshop ===== */
.kw-theme{font-size:16px;line-height:1.55}
.kw-theme p,.kw-theme li,.kw-theme dd,.kw-theme dt,.kw-theme label,.kw-theme input,.kw-theme select,.kw-theme textarea,.kw-theme button{font-size:inherit}
.kw-theme p{color:#5f5156}
.kw-header nav a,.kw-header .header-actions{font-size:14px}
.kw-kicker{font-size:11px}
.kw-lead{font-size:19px}
.kw-ticket-info>p{font-size:15px;line-height:1.65}
.kw-facts dt{font-size:11px}
.kw-facts dd{font-size:14px}
.kw-artist-grid p{font-size:13px}
.co-item-info p,.co-review-ticket p{font-size:12px}
.co-info-row p{font-size:11px}
.co-summary-line{font-size:13px}
.co-next-box p,.co-contact-hint,.co-final-note{font-size:11px}

/* Mein Konto: größer, aber weiterhin kompakt */
.acct-page{font-size:15px}
.acct-hero>div>p:last-child{font-size:14px}
.acct-status-card strong{font-size:13px}
.acct-verified,.acct-unverified{font-size:9px}
.acct-card-head small{font-size:9px}
.acct-card-head h2{font-size:30px}
.acct-order-main small{font-size:8px}
.acct-order-main strong{font-size:13px}
.acct-order-main span{font-size:11px}
.acct-order-status span{font-size:9px}
.acct-order-status b{font-size:15px}
.acct-order-help p{font-size:11px}
.acct-email-box small{font-size:9px}
.acct-email-box strong{font-size:13px}
.acct-email-box span{font-size:10px}
.acct-section-label{font-size:12px}
.acct-form label{font-size:11px}
.acct-form label em{font-size:9px}
.acct-form input,.acct-form select{font-size:13px}
.acct-save-row p{font-size:10px}
.acct-back-link,.acct-logout{font-size:10px}

/* Kompaktmodus: Lesbarkeit vor maximaler Verdichtung */


/* Eingabefeld-Beschriftungen deutlich lesbarer */
.acct-form label{
  font-size:13px;
  font-weight:800;
  color:#4f3940;
  letter-spacing:.1px;
}
.acct-form label em{
  font-size:10px;
  font-weight:500;
  color:#8d7a80;
}
.acct-section-label{
  font-size:13px;
  font-weight:900;
}

@media (max-width:700px){
  .acct-form label{font-size:13px}
  .acct-section-label{font-size:13px}
}


/* ===== Herrensitzung 2027 ===== */
.hs-nav-link{display:flex!important;align-items:center;gap:7px;color:#7f1028!important}
.hs-nav-link small{display:inline-flex;padding:3px 7px;border-radius:999px;background:#e8f5ec;color:#25704b;font-size:8px;letter-spacing:.2px;font-weight:900;white-space:nowrap}
.hs-section{scroll-margin-top:105px;padding:76px 6% 86px;background:linear-gradient(180deg,#f8f8f8 0,#fff 42%,#f4f0ef 100%);border-top:8px solid #d71920;position:relative;overflow:hidden}
.hs-section:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(135deg,transparent 0 46%,rgba(215,25,32,.025) 46% 54%,transparent 54% 100%);background-size:110px 110px}
.hs-section-head{position:relative;z-index:1;max-width:1500px;margin:0 auto 28px;display:flex;align-items:end;justify-content:space-between;gap:30px}
.hs-section-head>div:first-child{max-width:850px}
.hs-kicker{margin:0;color:#c7181e;font-size:11px;font-weight:950;letter-spacing:2.1px;text-transform:uppercase}
.hs-section-head h2{font-family:Georgia,serif;font-size:clamp(40px,5vw,64px);line-height:1;letter-spacing:-2.5px;margin:8px 0 12px;color:#1d1d1f}
.hs-section-head p:last-child{margin:0;color:#655d5e;font-size:15px;line-height:1.6}
.hs-stock{min-width:190px;border:1px solid #d9e7dc;background:#f2faf4;border-radius:14px;padding:13px 16px;display:grid;grid-template-columns:auto 1fr;column-gap:9px;align-items:center}
.hs-stock-dot{width:10px;height:10px;border-radius:50%;background:#2e9b63;box-shadow:0 0 0 5px rgba(46,155,99,.12);grid-row:1/3}
.hs-stock strong{font-size:14px;color:#20593c}
.hs-stock small{font-size:10px;color:#62806d}
.hs-wide-banner{position:relative;z-index:1;max-width:1500px;margin:0 auto 28px;border-radius:18px;overflow:hidden;background:#fff;border:1px solid #e3dddd;box-shadow:0 16px 46px rgba(29,24,24,.10);line-height:0}
.hs-wide-banner img{display:block;width:100%;height:auto;max-height:680px;object-fit:contain;background:white}
.hs-ticket-card{position:relative;z-index:1;max-width:1500px;margin:0 auto;display:grid;grid-template-columns:minmax(320px,.82fr) 1.18fr;background:#fff;border:1px solid #dfdada;border-radius:22px;overflow:hidden;box-shadow:0 22px 65px rgba(29,24,24,.13)}
.hs-ticket-visual{padding:30px;display:grid;place-items:center;background:linear-gradient(145deg,#151515,#2d2d2f 58%,#9f1117)}
.hs-ticket-visual img{display:block;width:min(560px,100%);max-height:620px;object-fit:contain;border-radius:12px;box-shadow:0 26px 55px rgba(0,0,0,.4)}
.hs-ticket-copy{padding:48px 52px;align-self:center}
.hs-pill{display:inline-flex;padding:7px 11px;border-radius:999px;background:#eaf6ee;border:1px solid #cfe7d6;color:#27724c;font-size:9px;font-weight:950;letter-spacing:1.2px}
.hs-ticket-copy h3{font-family:Georgia,serif;font-size:clamp(35px,4vw,50px);line-height:1.05;letter-spacing:-1.8px;margin:17px 0 14px;color:#1c1c1e}
.hs-ticket-copy>p{color:#665d60;line-height:1.65;max-width:680px}
.hs-facts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:28px 0}
.hs-facts div{padding:14px 15px;border:1px solid #e8e1e1;border-radius:11px;background:#fbfafa}
.hs-facts small{display:block;font-size:9px;color:#968789;text-transform:uppercase;letter-spacing:1px}
.hs-facts strong{display:block;margin-top:4px;font-size:14px;color:#292426}
.hs-availability{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:26px 0;padding:16px 18px;border-radius:12px;background:#fff4f4;border:1px solid #f0c8ca;color:#8a161a}
.hs-availability span{font-size:11px;font-weight:800}
.hs-availability strong{font-size:21px}
.hs-btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:14px 23px;border-radius:999px;background:linear-gradient(135deg,#c80d14,#ed252b)!important;border:1px solid #b30c12!important;color:#fff!important;text-decoration:none;font-weight:950;box-shadow:0 12px 30px rgba(191,17,24,.22)}
.hs-btn:hover{transform:translateY(-2px);box-shadow:0 17px 38px rgba(191,17,24,.30)}
.hs-note{margin:12px 0 0!important;font-size:10px!important;color:#928487!important}
.hs-live-stock{display:inline-flex;margin:10px 0 6px;padding:8px 12px;border-radius:999px;background:#eaf6ee;border:1px solid #cfe7d6;color:#246946;font-size:12px}
.hs-event-page .kw-event-poster{background:linear-gradient(145deg,#121212,#353537 60%,#a21318)}
.hs-event-page .kw-event-price strong{color:#c81218}
.hs-event-program{margin-top:45px;border:1px solid #e1dada;border-radius:18px;overflow:hidden;background:white;box-shadow:0 16px 45px rgba(32,24,25,.10);line-height:0}
.hs-event-program img{display:block;width:100%;height:auto;object-fit:contain}
@media(max-width:1100px){
 .kw-header nav{display:flex;gap:12px}
 .kw-header nav a:not(.hs-nav-link){display:none}
 .hs-nav-link{font-size:11px!important}
 .hs-section{padding-left:5%;padding-right:5%}
 .hs-ticket-card{grid-template-columns:.8fr 1.2fr}
 .hs-ticket-copy{padding:38px 34px}
}
@media(max-width:760px){
 .kw-header nav{order:3;width:100%;margin:8px 0 0}
 .kw-header nav .hs-nav-link{width:100%;justify-content:center;padding:8px 10px;border:1px solid #efd8d8;border-radius:10px;background:#fff7f7}
 .hs-section{padding:48px 5% 58px;scroll-margin-top:145px}
 .hs-section-head{display:block}
 .hs-stock{margin-top:18px;width:100%}
 .hs-wide-banner{border-radius:12px}
 .hs-wide-banner img{min-height:210px;object-fit:cover;object-position:center}
 .hs-ticket-card{grid-template-columns:1fr}
 .hs-ticket-visual{padding:20px}
 .hs-ticket-visual img{max-height:500px}
 .hs-ticket-copy{padding:28px 22px}
 .hs-facts{grid-template-columns:1fr}
 .hs-availability{align-items:flex-start;flex-direction:column;gap:4px}
 .hs-btn{width:100%;text-align:center}
 .hs-event-program{margin-top:28px;border-radius:12px}
}


/* ===== Raleway · elegant & minimalistisch ===== */
@font-face{
  font-family:'Raleway';
  font-style:normal;
  font-weight:100 900;
  font-display:swap;
  src:url('/static/shop/fonts/raleway-latin-variable.woff2') format('woff2');
}
@font-face{
  font-family:'Raleway';
  font-style:italic;
  font-weight:100 900;
  font-display:swap;
  src:url('/static/shop/fonts/raleway-latin-variable-italic.woff2') format('woff2');
}

.kw-theme,
.kw-theme button,
.kw-theme input,
.kw-theme select,
.kw-theme textarea{
  font-family:'Raleway',Arial,Helvetica,sans-serif;
}

.kw-brand b{
  font-family:'Raleway',sans-serif;
  font-weight:800;
  letter-spacing:-.05em;
}
.kw-brand small,
.kw-topline,
.kw-header nav a,
.kw-header .header-actions,
.kw-kicker,
.kw-pill,
.hs-kicker,
.hs-pill{
  font-family:'Raleway',sans-serif;
}

.kw-hero h1,
.kw-section-head h2,
.kw-ticket-info h3,
.kw-artist-grid h3,
.kw-brass strong,
.kw-rommerskirchen-copy h2,
.kw-event-buy h1,
.kw-theme .form-page h1,
.kw-theme .panel h1,
.kw-bottom-card h2,
.co-head h1,
.co-item-info h3,
.co-review-ticket h3,
.co-summary-card h2,
.co-empty h2,
.acct-hero h1,
.acct-card-head h2,
.acct-empty h3,
.hs-section-head h2,
.hs-ticket-copy h3{
  font-family:'Raleway',Arial,Helvetica,sans-serif!important;
  font-weight:300;
  letter-spacing:-.045em;
}

.kw-hero h1{font-weight:300}
.kw-hero h1 em{
  font-family:'Raleway',Arial,Helvetica,sans-serif;
  font-weight:750;
  font-style:italic;
  letter-spacing:-.035em;
}
.kw-section-head h2,
.kw-ticket-info h3,
.kw-event-buy h1,
.co-head h1,
.acct-hero h1,
.hs-section-head h2{
  font-weight:350;
}
.kw-artist-grid h3,
.kw-brass strong,
.co-item-info h3,
.co-review-ticket h3,
.co-summary-card h2,
.acct-card-head h2,
.acct-empty h3,
.hs-ticket-copy h3{
  font-weight:600;
}

.kw-kicker,
.hs-kicker{
  font-weight:750;
  letter-spacing:.18em;
}
.kw-pill,
.hs-pill{
  font-weight:800;
  letter-spacing:.13em;
}
.kw-header nav a,
.kw-header .header-actions>a,
.kw-btn,
.hs-btn,
.auth-submit{
  font-weight:650;
}
.kw-meta b,
.kw-buyline strong,
.kw-event-price strong,
.hs-availability strong,
.co-total strong,
.acct-order-status b{
  font-weight:750;
  letter-spacing:-.025em;
}
.kw-theme strong,
.kw-theme b{font-family:'Raleway',Arial,Helvetica,sans-serif}

.kw-ticket-info>p,
.kw-lead,
.hs-ticket-copy>p,
.auth-intro{
  font-weight:400;
  letter-spacing:.005em;
}
.kw-facts dt,
.kw-event-facts small,
.hs-facts small{
  font-weight:600;
  letter-spacing:.09em;
}
.kw-facts dd,
.kw-event-facts strong,
.hs-facts strong{
  font-weight:650;
}
.kw-header nav a{
  letter-spacing:.01em;
}
.kw-btn,.hs-btn{
  letter-spacing:.01em;
}


/* ===== Bebas Neue · elegant & minimalistisch ===== */
@font-face{
  font-family:'Bebas Neue';
  font-style:normal;
  font-weight:400;
  font-display:swap;
  src:url('/static/shop/fonts/bebas-neue-latin-400-normal.woff2') format('woff2');
}

/* Fließtext bleibt bewusst ruhig und gut lesbar */
.kw-theme,
.kw-theme input,
.kw-theme select,
.kw-theme textarea{
  font-family:'Raleway',Arial,Helvetica,sans-serif;
}

/* Bebas Neue prägt die komplette visuelle Hierarchie */
.kw-brand b,
.kw-brand small,
.kw-topline,
.kw-header nav a,
.kw-header .header-actions,
.kw-kicker,
.kw-pill,
.hs-kicker,
.hs-pill,
.kw-hero h1,
.kw-section-head h2,
.kw-ticket-info h3,
.kw-artist-grid h3,
.kw-brass strong,
.kw-rommerskirchen-copy h2,
.kw-event-buy h1,
.kw-theme .form-page h1,
.kw-theme .panel h1,
.kw-bottom-card h2,
.co-head h1,
.co-item-info h3,
.co-review-ticket h3,
.co-summary-card h2,
.co-empty h2,
.acct-hero h1,
.acct-card-head h2,
.acct-empty h3,
.hs-section-head h2,
.hs-ticket-copy h3,
.kw-btn,
.hs-btn,
.co-primary,
.auth-submit,
.kw-meta b,
.kw-buyline strong,
.kw-event-price strong,
.hs-availability strong,
.co-total strong,
.acct-order-status b{
  font-family:'Bebas Neue','Arial Narrow',Arial,sans-serif!important;
  font-weight:400!important;
  text-transform:uppercase;
}

/* Elegant statt massiv: viel Luft, schmale Formen, klare Achsen */
.kw-hero h1,
.kw-section-head h2,
.kw-ticket-info h3,
.kw-event-buy h1,
.co-head h1,
.acct-hero h1,
.hs-section-head h2,
.hs-ticket-copy h3{
  letter-spacing:.025em!important;
  line-height:.96;
}
.kw-hero h1{font-size:clamp(62px,7vw,105px)}
.kw-section-head h2{font-size:clamp(42px,4.7vw,64px)}
.kw-ticket-info h3{font-size:50px}
.kw-event-buy h1{font-size:clamp(52px,5.7vw,78px)}
.hs-section-head h2{font-size:clamp(48px,5.6vw,76px)}
.hs-ticket-copy h3{font-size:clamp(42px,4.8vw,58px)}
.co-head h1{font-size:clamp(50px,5.5vw,74px)}
.acct-hero h1{font-size:clamp(48px,5.4vw,70px)}

/* Ruhige Akzente wie bei einem Editorial-Layout */
.kw-hero h1 em{
  font-family:'Raleway',Arial,Helvetica,sans-serif!important;
  font-style:italic;
  font-weight:650!important;
  text-transform:none;
  letter-spacing:-.02em!important;
}
.kw-kicker,
.hs-kicker,
.kw-pill,
.hs-pill{
  letter-spacing:.18em;
  font-size:11px;
}
.kw-brand b{
  font-size:31px;
  letter-spacing:.035em;
}
.kw-brand small{
  letter-spacing:.19em;
  font-size:9px;
}
.kw-header nav a{
  letter-spacing:.07em;
  font-size:16px;
}
.kw-header .header-actions{
  letter-spacing:.04em;
}

/* Buttons / Preise: plakativ aber reduziert */
.kw-btn,
.hs-btn,
.co-primary,
.auth-submit{
  letter-spacing:.075em;
  font-size:17px;
  line-height:1;
}
.kw-meta b,
.kw-buyline strong,
.kw-event-price strong,
.hs-availability strong,
.co-total strong,
.acct-order-status b{
  letter-spacing:.035em;
}
.kw-buyline strong{font-size:35px}
.kw-event-price strong{font-size:44px}
.hs-availability strong{font-size:25px}

/* Kleinteile bewusst in Raleway belassen */
.kw-theme p,
.kw-theme li,
.kw-theme dd,
.kw-theme dt,
.kw-theme label,
.kw-theme small,
.kw-theme .description,
.hs-ticket-copy>p,
.auth-intro{
  font-family:'Raleway',Arial,Helvetica,sans-serif;
  text-transform:none;
}

@media(max-width:760px){
  .kw-hero h1{font-size:61px}
  .kw-section-head h2{font-size:43px}
  .kw-ticket-info h3{font-size:40px}
  .kw-event-buy h1{font-size:48px}
  .hs-section-head h2{font-size:48px}
  .hs-ticket-copy h3{font-size:42px}
  .kw-btn,.hs-btn,.co-primary,.auth-submit{font-size:16px}
}


/* ===== Arial · klar & klassisch ===== */
.kw-theme,
.kw-theme *,
.kw-theme button,
.kw-theme input,
.kw-theme select,
.kw-theme textarea{
  font-family:Arial,Helvetica,sans-serif!important;
}

.kw-hero h1,
.kw-hero h1 em,
.kw-section-head h2,
.kw-ticket-info h3,
.kw-artist-grid h3,
.kw-brass strong,
.kw-rommerskirchen-copy h2,
.kw-event-buy h1,
.kw-theme .form-page h1,
.kw-theme .panel h1,
.kw-bottom-card h2,
.co-head h1,
.co-item-info h3,
.co-review-ticket h3,
.co-summary-card h2,
.co-empty h2,
.acct-hero h1,
.acct-card-head h2,
.acct-empty h3,
.hs-section-head h2,
.hs-ticket-copy h3{
  font-family:Arial,Helvetica,sans-serif!important;
  font-style:normal!important;
  text-transform:none!important;
  letter-spacing:-.025em!important;
}

.kw-hero h1,
.kw-section-head h2,
.kw-event-buy h1,
.acct-hero h1,
.hs-section-head h2{
  font-weight:700!important;
}
.kw-ticket-info h3,
.kw-artist-grid h3,
.kw-brass strong,
.co-item-info h3,
.co-review-ticket h3,
.co-summary-card h2,
.acct-card-head h2,
.acct-empty h3,
.hs-ticket-copy h3{
  font-weight:700!important;
}

.kw-brand b,
.kw-brand small,
.kw-topline,
.kw-header nav a,
.kw-header .header-actions,
.kw-kicker,
.kw-pill,
.hs-kicker,
.hs-pill,
.kw-btn,
.hs-btn,
.co-primary,
.auth-submit,
.kw-meta b,
.kw-buyline strong,
.kw-event-price strong,
.hs-availability strong,
.co-total strong,
.acct-order-status b{
  font-family:Arial,Helvetica,sans-serif!important;
  text-transform:none!important;
}

.kw-brand b{font-weight:700!important;letter-spacing:-.04em!important}
.kw-brand small{font-weight:600!important;letter-spacing:.12em!important}
.kw-header nav a{font-weight:700!important;letter-spacing:0!important;font-size:14px!important}
.kw-kicker,.hs-kicker{font-weight:700!important;letter-spacing:.12em!important}
.kw-pill,.hs-pill{font-weight:700!important;letter-spacing:.08em!important}
.kw-btn,.hs-btn,.co-primary,.auth-submit{font-weight:700!important;letter-spacing:0!important;font-size:14px!important}
.kw-meta b,.kw-buyline strong,.kw-event-price strong,.hs-availability strong,.co-total strong,.acct-order-status b{font-weight:700!important;letter-spacing:0!important}


/* ===== Mein Konto: Scrollen nur wenn erforderlich ===== */
@media (min-width:1001px){
  body:has(.acct-page){
    overflow-y:auto!important;
    overflow-x:hidden
  }
  .acct-page{
    height:auto!important;
    max-height:none!important;
    min-height:calc(100vh - 118px);
    overflow:visible!important;
    padding-bottom:28px!important
  }
  .acct-grid{
    flex:0 0 auto!important;
    min-height:auto!important;
    align-items:start
  }
  .acct-card{
    min-height:0!important
  }
  .acct-profile,
  .acct-orders{
    height:auto!important;
    max-height:none!important
  }
  .acct-form{
    overflow:visible!important
  }
  .acct-bottom{
    margin-top:16px!important;
    padding-bottom:12px
  }
}


/* ===== E-Mail-Bestätigung als zentrales Popup ===== */
.verify-overlay{
  position:fixed;
  inset:0;
  z-index:120;
  display:grid;
  place-items:center;
  padding:24px;
  background:rgba(28,16,20,.58);
  backdrop-filter:blur(5px);
}
.verify-overlay.is-hidden{display:none}
.verify-popup{
  position:relative;
  width:min(520px,100%);
  padding:34px 36px 30px;
  border:1px solid #ead9d7;
  border-radius:20px;
  background:#fffdfb;
  box-shadow:0 28px 90px rgba(29,11,18,.28);
  text-align:center;
}
.verify-close{
  position:absolute;
  right:14px;
  top:12px;
  width:38px;
  height:38px;
  min-height:38px;
  padding:0;
  border:0;
  border-radius:50%;
  background:#f5efed;
  color:#6d4b54;
  font-size:24px;
  line-height:1;
  cursor:pointer;
}
.verify-close:hover{background:#ece2df}
.verify-icon{
  width:62px;
  height:62px;
  margin:0 auto 15px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:linear-gradient(145deg,#7e1227,#aa1d3a);
  color:white;
  font-size:27px;
  box-shadow:0 10px 25px rgba(107,13,34,.18);
}
.verify-kicker{
  margin:0 0 8px!important;
  color:#9b6c24!important;
  font-size:10px!important;
  font-weight:800!important;
  letter-spacing:1.5px;
}
.verify-popup h2{
  margin:0 0 12px;
  color:#541020;
  font-size:30px;
  line-height:1.15;
  letter-spacing:-.8px;
}
.verify-popup>p:not(.verify-kicker){
  max-width:420px;
  margin:0 auto 20px;
  color:#74656a;
  font-size:14px;
  line-height:1.55;
}
.verify-mail{
  margin:18px 0;
  padding:14px 16px;
  border:1px solid #eadfdb;
  border-radius:12px;
  background:#faf7f5;
  text-align:left;
}
.verify-mail small{
  display:block;
  margin-bottom:4px;
  color:#9b878d;
  font-size:9px;
  letter-spacing:1.1px;
}
.verify-mail strong{
  display:block;
  color:#4c333b;
  font-size:15px;
  overflow-wrap:anywhere;
}
.verify-resend-form{margin:0}
.verify-resend{
  width:100%;
  min-height:50px;
  margin:0;
}
.verify-later{
  margin:13px auto 0;
  padding:7px 12px;
  min-height:0;
  border:0;
  background:transparent;
  color:#806d73;
  font-size:11px;
  font-weight:700;
  cursor:pointer;
}
.verify-later:hover{text-decoration:underline}
@media(max-width:640px){
  .verify-overlay{padding:16px}
  .verify-popup{padding:30px 20px 24px;border-radius:16px}
  .verify-popup h2{font-size:25px}
  .verify-popup>p:not(.verify-kicker){font-size:13px}
}


/* ===== Erfolgs-Popup nach neuer Bestellung ===== */
.order-success-overlay{
  position:fixed;
  inset:0;
  z-index:140;
  display:grid;
  place-items:center;
  padding:24px;
  background:rgba(27,15,19,.62);
  backdrop-filter:blur(6px);
}
.order-success-overlay.is-hidden{display:none}
.order-success-popup{
  position:relative;
  width:min(680px,100%);
  max-height:calc(100vh - 48px);
  overflow:auto;
  padding:34px 36px 30px;
  border:1px solid #eadbd8;
  border-radius:22px;
  background:#fffdfb;
  box-shadow:0 32px 100px rgba(31,10,18,.32);
  color:#32282c;
}
.order-success-close{
  position:absolute;
  top:13px;
  right:14px;
  width:40px;
  height:40px;
  min-height:40px;
  padding:0;
  border:0;
  border-radius:50%;
  background:#f4eeec;
  color:#76545d;
  font-size:25px;
  line-height:1;
  cursor:pointer;
}
.order-success-close:hover{background:#eadfdd}
.order-success-check{
  width:68px;
  height:68px;
  margin:0 auto 14px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:linear-gradient(145deg,#2e8b57,#4aa46f);
  color:#fff;
  font-size:34px;
  font-weight:700;
  box-shadow:0 12px 30px rgba(46,139,87,.22);
}
.order-success-kicker{
  margin:0 0 7px!important;
  text-align:center;
  color:#9a6b22!important;
  font-size:10px!important;
  font-weight:800!important;
  letter-spacing:1.5px;
}
.order-success-popup h2{
  margin:0;
  text-align:center;
  color:#5d1021;
  font-size:32px;
  line-height:1.15;
  letter-spacing:-.9px;
}
.order-success-intro{
  margin:8px auto 20px!important;
  text-align:center;
  color:#786a6f!important;
  font-size:14px!important;
}
.order-success-number{
  margin:18px 0 14px;
  padding:13px 16px;
  border:1px solid #eadfdb;
  border-radius:12px;
  background:#faf7f5;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}
.order-success-number small{
  color:#9b868c;
  font-size:9px;
  letter-spacing:1.1px;
}
.order-success-number strong{
  color:#661126;
  font-size:20px;
  overflow-wrap:anywhere;
  text-align:right;
}
.order-success-lines{
  border:1px solid #eadfdb;
  border-radius:13px;
  overflow:hidden;
  background:#fff;
}
.order-success-line{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:14px 16px;
  border-bottom:1px solid #eee6e3;
}
.order-success-line:last-child{border-bottom:0}
.order-success-line>div:first-child{min-width:0}
.order-success-line small{
  display:block;
  color:#a37932;
  font-size:9px;
  font-weight:700;
  letter-spacing:.7px;
}
.order-success-line strong{
  display:block;
  margin:4px 0 2px;
  color:#4f2632;
  font-size:16px;
}
.order-success-line span{
  display:block;
  color:#8a7a7f;
  font-size:11px;
  line-height:1.35;
}
.order-success-line-price{
  flex:0 0 auto;
  text-align:right;
}
.order-success-line-price b{
  display:block;
  color:#79152b;
  font-size:13px;
}
.order-success-line-price strong{
  margin-top:5px;
  color:#3f3136;
  font-size:12px;
}
.order-success-total{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:17px 4px 11px;
}
.order-success-total span{
  font-size:13px;
  font-weight:700;
  color:#62545a;
}
.order-success-total strong{
  color:#7e132b;
  font-size:34px;
}
.order-success-mail{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:12px;
  align-items:center;
  padding:13px 15px;
  margin:5px 0 18px;
  border:1px solid #ead5a8;
  border-radius:11px;
  background:#fff7e7;
}
.order-success-mail>span{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#a8772b;
  color:white;
}
.order-success-mail p{
  margin:0!important;
  color:#745f3f!important;
  font-size:11px!important;
  line-height:1.45;
}
.order-success-mail b{color:#5a4528}
.order-success-actions{
  display:grid;
  grid-template-columns:1fr auto;
  gap:12px;
  align-items:center;
}
.order-success-done{
  width:100%;
  min-height:48px;
}
.order-success-account{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:11px 17px;
  border:1px solid #dccbc8;
  border-radius:999px;
  color:#78152b;
  background:#fff;
  font-size:12px;
  font-weight:700;
  text-decoration:none;
  white-space:nowrap;
}
.order-success-account:hover{background:#faf4f2}
@media(max-width:640px){
  .order-success-overlay{padding:14px}
  .order-success-popup{padding:29px 19px 22px;border-radius:17px}
  .order-success-popup h2{font-size:26px}
  .order-success-number{display:block}
  .order-success-number strong{display:block;text-align:left;margin-top:4px;font-size:17px}
  .order-success-line{align-items:flex-start}
  .order-success-line-price b{font-size:11px}
  .order-success-total strong{font-size:29px}
  .order-success-actions{grid-template-columns:1fr}
  .order-success-account{width:100%}
}


/* ===== Warenkorb / Bestellablauf: kompakt wenn Platz da ist, sonst Scroll ===== */
.co-cart-page-body{overflow-y:auto!important;overflow-x:hidden}
.co-cart-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center}
.co-cart-top .co-head{margin-bottom:0}
.co-cart-top .co-timer{margin:0;min-width:280px}
.verify-page{min-height:calc(100vh - 180px);display:grid;place-items:center;padding:38px 20px}
.verify-page-card{width:min(620px,100%);background:#fff;border:1px solid #e8deda;border-radius:20px;padding:38px;box-shadow:0 20px 60px rgba(68,13,27,.1);text-align:center}
.verify-page-icon{width:62px;height:62px;border-radius:50%;display:grid;place-items:center;margin:0 auto 15px;background:#8d142b;color:#fff;font-size:26px}
.verify-page-card h1{margin:4px 0 12px;font-size:40px;color:#5a0d20}
.verify-page-card>p{max-width:480px;margin:0 auto 20px;color:#72656a;line-height:1.55}
.verify-page-mail{margin:18px 0;padding:13px 15px;background:#faf7f5;border:1px solid #e8dedb;border-radius:11px;text-align:left}
.verify-page-mail small{display:block;font-size:9px;letter-spacing:1px;color:#9b888e}
.verify-page-mail strong{display:block;margin-top:4px;font-size:14px;overflow-wrap:anywhere}
.verify-page-card form .kw-btn{width:100%;max-width:360px;margin:0 auto}
.verify-page-note{font-size:11px!important;margin-top:16px!important;color:#8b7c81!important}



@media (max-width:980px){
  .co-cart-top{grid-template-columns:1fr}
  .co-cart-top .co-timer{min-width:0;width:100%}
}


/* ===== E-Mail-Bestätigung: kleiner Resend-Link + Spam-Hinweis ===== */
.verify-resend-form{
  margin:10px 0 0;
  text-align:center;
}
.verify-resend{
  width:auto!important;
  min-height:36px!important;
  padding:8px 14px!important;
  margin:0 auto!important;
  border-radius:999px!important;
  font-size:11px!important;
  font-weight:700!important;
  box-shadow:none!important;
}
.verify-spam-hint{
  margin:12px auto 0!important;
  max-width:390px;
  color:#8a747b!important;
  font-size:11px!important;
  line-height:1.45!important;
  text-align:center;
}
@media(max-width:640px){
  .verify-resend{
    min-height:38px!important;
    padding:9px 13px!important;
    font-size:11px!important;
  }
  .verify-spam-hint{font-size:10.5px!important}
}


/* ===== Mobile Navigation & Touch-Ziele ===== */
.mobile-account-link{display:none}
@media(max-width:1100px){
  .kw-header{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:8px 10px;
  }
  .kw-header nav{
    display:grid!important;
    grid-template-columns:1fr 1fr;
    grid-column:1/-1;
    order:3;
    width:100%;
    gap:7px;
    margin:8px 0 0;
  }
  .kw-header nav a,
  .kw-header nav a:not(.hs-nav-link),
  .kw-header nav .hs-nav-link,
  .kw-header nav .mobile-account-link{
    display:flex!important;
    min-width:0;
    min-height:42px;
    padding:8px 9px;
    align-items:center;
    justify-content:center;
    gap:5px;
    border:1px solid #ead8d7;
    border-radius:10px;
    background:#fffaf8;
    color:#7a182d!important;
    font-size:11px!important;
    font-weight:700!important;
    line-height:1.2;
    text-align:center;
    text-decoration:none;
  }
  .kw-header nav .hs-nav-link{background:#fff5f5}
  .kw-header nav .hs-nav-link small{
    padding:2px 5px;
    font-size:7px;
  }
  .mobile-account-link{display:flex!important}
  .kw-header .header-actions>a:not(.cartlink){display:none!important}

  .kw-footer-links{
    gap:4px 12px;
  }
  .kw-footer-links a{
    display:inline-flex;
    align-items:center;
    min-height:40px;
    padding:6px 0;
  }
  .kw-back,
  .co-backshop{
    display:inline-flex;
    align-items:center;
    min-height:40px;
    padding:6px 0;
  }
}

/* Mobile QA 2026-10-05: Lesbarkeit, vollständige Grafiken und erreichbare Formulare. */
.kw-theme .kw-hero .kw-kicker,
.kw-theme .kw-artists .kw-kicker{color:#f4cf83}
.kw-theme .kw-hero .kw-lead{color:#f7e4df}
.kw-theme .kw-hero .kw-reserve-note{color:#ead1d4}
.kw-theme .kw-footer-brand p{color:#d5bcb9}
.co-terms input[type="checkbox"]{
  width:20px;height:20px;min-height:20px;flex:0 0 20px;margin:3px 0 0
}
.verify-overlay,.order-success-overlay{
  --popup-gap:24px;padding:var(--popup-gap);overflow-y:auto
}
.verify-popup,.order-success-popup{
  max-height:calc(100vh - 2 * var(--popup-gap));
  max-height:calc(100dvh - 2 * var(--popup-gap));
  overflow-y:auto;overscroll-behavior:contain
}
.verify-close,.order-success-close{width:44px;height:44px;min-height:44px}
.verify-popup .verify-resend,.verify-popup .verify-later{min-height:44px!important}

@media(max-width:1100px){
  .kw-header{position:relative}
  .kw-header .header-actions{margin-left:0}
  .kw-footer{display:flex!important}
  .kw-ticket-section,.kw-artists,.hs-section{scroll-margin-top:16px}
  .kw-bottom-banner img,.hs-wide-banner img{
    height:auto;min-height:0;object-fit:contain
  }
  .kw-theme input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
  .kw-theme select,.kw-theme textarea{font-size:16px!important;min-height:44px!important}
  .kw-btn,.hs-btn,.co-primary,.co-update,.acct-save-btn,.acct-logout{min-height:44px!important}
  .co-review-page-body,.co-order-page-body{overflow-y:auto!important}
  .co-review-page,.co-order-page{height:auto!important;max-height:none!important;overflow:visible!important}
  .co-grid,.co-review-grid{grid-template-columns:minmax(0,1fr)!important}
  .co-review-main{display:flex!important;flex-direction:column}
  .co-summary-card.sticky{position:static}
  .co-data-grid b,.co-account-ok b,.co-summary-line strong,
  .acct-status-card strong,.acct-email-box strong{min-width:0;overflow-wrap:anywhere}
  .kw-footer-links a,.kw-back,.co-backshop{min-height:44px}
}
@media(max-width:760px){
  .hs-section-head h2{font-size:clamp(32px,10vw,48px);overflow-wrap:anywhere}
  .co-head h1{font-size:clamp(30px,8vw,44px);overflow-wrap:anywhere}
  .co-steps div{flex-direction:column;gap:4px;font-size:11px;padding:8px 4px}
  .co-steps span{display:block;line-height:1.2}
  .co-terms{font-size:13px}
  .co-final-note{font-size:12px}
  .verify-overlay,.order-success-overlay{--popup-gap:14px}
}
