/* mutify Neubau - NACHT-Schicht (30.09.2026, Michael: "Die Grafik ist tot. Du darfst mich gerne ueberraschen.")
   Liegt ueber design.css (Paket B + Apple-Schichten) und gewinnt per :root-Praefix. Ausgehen am Abend:
   tiefes Nachtblau, Lichtflecken Orange -> Magenta -> Violett, Glas, Koernung, Display-Schrift Bricolage Grotesque (OFL).
   Zurueck zum hellen Stand: bauen.py --altes-design (ganz alt) bzw. nacht.css aus design.py nehmen. */
@font-face{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",Roboto,"Helvetica Neue",Arial;src:url("/assets/neu/bricolage-grotesque-latin-wght-normal.woff2") format("woff2");font-weight:200 800;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",Roboto,"Helvetica Neue",Arial;src:url("/assets/neu/bricolage-grotesque-latin-ext-wght-normal.woff2") format("woff2");font-weight:200 800;font-style:normal;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

:root:root:root{
  --nx-bg:#07060D; --nx-bg2:#0D0B18; --nx-bg3:#141126;
  --nx-ink:#F6F3FF; --nx-ink2:#BDB7D3; --nx-ink3:#8E88A8;
  --nx-line:rgba(255,255,255,.09); --nx-line2:rgba(255,255,255,.16);
  --nx-glas:rgba(255,255,255,.045); --nx-glas2:rgba(255,255,255,.075);
  --nx-or:#FF7A1A; --nx-or2:#FF9A3D; --nx-mag:#FF2E88; --nx-vio:#A855F7;
  --nx-verlauf:linear-gradient(100deg,#FFC15E 0%,#FF7A1A 28%,#FF2E88 62%,#A855F7 100%);
  --nx-knopf:linear-gradient(100deg,#D9410B 0%,#CC1F6A 58%,#8B35D6 100%);
  --nx-knopf-hover:linear-gradient(100deg,#F0520F 0%,#E0287A 58%,#9B44E8 100%);
  --nx-display:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",Roboto,"Helvetica Neue",Arial,-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,"Helvetica Neue",Arial,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  /* alte Variablen: das Altdesign war dunkel, Inline-Stile arbeiten mit diesen Namen */
  --night:#07060D; --night2:#0D0B18; --ink:#F6F3FF; --muted:#BDB7D3; --glass:rgba(255,255,255,.05); --card:rgba(255,255,255,.05);
  --stroke:rgba(255,255,255,.1); --coral:#FF7A1A; --amber:#FF9A3D; --gold:#FFC15E;
  --n-grund:#07060D; --n-flaeche:rgba(255,255,255,.05); --n-text:#F6F3FF; --n-text2:#BDB7D3; --n-blass:#8E88A8; --n-linie:rgba(255,255,255,.1);
  --n-orange:#FF7A1A; --n-orange-dunkel:#FF9A3D; --n-orange-hell:rgba(255,122,26,.14);
  color-scheme:dark;
}
:root body{background:
    radial-gradient(1100px 620px at 8% -8%,rgba(255,106,26,.20),transparent 62%),
    radial-gradient(900px 560px at 96% 2%,rgba(168,85,247,.20),transparent 60%),
    radial-gradient(700px 420px at 55% 28%,rgba(255,46,136,.08),transparent 70%),
    var(--nx-bg)!important;
  color:var(--nx-ink);overflow-x:hidden}
/* Koernung: einmal gerastertes Rauschen, fest, ohne Mischmodus (billig beim Scrollen) */
:root body::after{content:"";position:fixed;inset:0;z-index:2147483000;pointer-events:none;opacity:.07;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .55 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
:root body ::selection{background:rgba(255,46,136,.45);color:#fff}

/* ---------- Schrift ---------- */
:root body :is(h1,h2,.tbt,.band-titel,.hlb-t,.invite-h){font-family:var(--nx-display)!important;font-optical-sizing:auto}
:root body :is(h1,h2,h3){color:var(--nx-ink)}
:root body :is(p,li){color:inherit}
:root body main a:not([class]),:root body article a:not([class]),:root body .txt a:not([class]){color:var(--nx-or2)}

/* ---------- Baender des Apple-Stands neutralisieren: alles liegt auf der Nacht ---------- */
:root body :is(.pagehead,.wrap>header:first-child,.themenband,.mehr-ueber,.band-dunkel-innen,body>.wrap:has(>.mag),body>.wrap:has(>.ueber-grid),footer,.band-grau-innen)::before{background:transparent!important}
:root body :is(.bar,.pagehead,.wrap>header:first-child,.band-dunkel-innen,.mehr-ueber,.band-dunkel,.themenband,.band-grau-innen,.band-grau){--n-text:#F6F3FF;--n-text2:#BDB7D3;--n-flaeche:rgba(255,255,255,.05);--n-linie:rgba(255,255,255,.1);color:var(--nx-ink)}

/* ---------- Kopfleiste: Glas ---------- */
:root body .bar::before{background:rgba(7,6,13,.55)!important;-webkit-backdrop-filter:saturate(160%) blur(18px);backdrop-filter:saturate(160%) blur(18px);border-bottom:1px solid rgba(255,255,255,.06)}
:root body .wrap>header:first-child .topbar{position:relative;z-index:5}
:root body :is(.bar,.topbar) .barnav a{color:rgba(246,243,255,.82)!important;font-weight:500}
:root body :is(.bar,.topbar) .barnav a:hover{background:rgba(255,255,255,.1)!important;color:#fff!important}
:root body :is(.bar,.topbar) .barnav a[href="/fuer-veranstalter"]{background:var(--nx-knopf)!important;color:#fff!important;font-weight:600;box-shadow:0 6px 24px -8px rgba(255,46,136,.7)}
:root body :is(.bar,.topbar) .barnav a[href="/fuer-veranstalter"]:hover{background:var(--nx-knopf-hover)!important}
:root body :is(.bar,.topbar) .barnav.open{background:rgba(16,13,30,.96)!important;border:1px solid var(--nx-line)!important;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}
:root body :is(.bar,.topbar) .burger span{background:#fff!important}

/* ---------- Hero ---------- */
:root body :is(.wrap>header:first-child,.pagehead){position:relative;isolation:isolate;overflow:visible}
:root body .wrap>header:first-child{padding:0 0 150px;min-height:min(820px,92vh)}
:root body .pagehead{padding:150px 22px 110px;min-height:520px;display:flex;flex-direction:column;align-items:center;justify-content:center}
:root body :is(.pagehead h1,.wrap>header:first-child h1){font-family:var(--nx-display)!important;font-weight:800;font-size:clamp(2.9rem,7.4vw,6.6rem);line-height:.98;letter-spacing:-.045em;max-width:14ch;margin:18px auto 0;color:var(--nx-ink);text-wrap:balance;position:relative;z-index:3}
:root body .pagehead h1{font-size:clamp(2.5rem,5.4vw,4.9rem);max-width:17ch;background:linear-gradient(180deg,#FFFFFF 30%,#D9D1F5 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
:root body .wrap>header:first-child h1 span{background:var(--nx-verlauf)!important;-webkit-background-clip:text!important;background-clip:text!important;-webkit-text-fill-color:transparent!important;color:transparent!important;padding-right:.04em}
:root body .pagehead h1 .h1-rest{-webkit-text-fill-color:var(--nx-ink2)!important;color:var(--nx-ink2)!important;font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,"Helvetica Neue",Arial,system-ui,sans-serif!important;font-weight:500;letter-spacing:-.01em;font-size:clamp(1.15rem,2.1vw,1.6rem);max-width:34ch;margin-top:18px}
:root body :is(.pagehead .lead,.wrap>header:first-child .sub){color:var(--nx-ink2);font-size:clamp(1.1rem,1.6vw,1.3rem);line-height:1.5;max-width:40rem;margin:22px auto 0;position:relative;z-index:3}
:root body .pagehead .lead a{color:#fff}
:root body .wrap>header:first-child .today{position:relative;z-index:3;display:inline-flex;align-items:center;gap:10px;margin:88px auto 0;padding:7px 16px 7px 12px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid var(--nx-line2);color:var(--nx-ink)!important;font-size:.875rem;font-weight:600;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
:root body .wrap>header:first-child .today::before{content:"";width:8px;height:8px;border-radius:50%;background:#FF4D6D;box-shadow:0 0 0 0 rgba(255,77,109,.7);flex:0 0 auto}
:root body .wrap>header:first-child{text-align:center}
:root body :is(.pagehead .crumb,.pagehead .crumb a,.pagehead .crumb span){position:relative;z-index:3;color:var(--nx-ink3)!important}
:root body .pagehead .crumb{display:inline-flex;gap:6px;align-items:center;padding:6px 14px;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid var(--nx-line)}
:root body .pagehead .crumb a:hover{color:#fff!important}

/* Lichtflecken */
.nx-glow{position:absolute;z-index:0;pointer-events:none;top:0;bottom:0;left:50%;width:100vw;transform:translateX(-50%);overflow:hidden}
.nx-glow i{position:absolute;border-radius:50%;filter:blur(70px);opacity:.55;will-change:transform}
.nx-glow i:nth-child(1){width:46vw;height:46vw;max-width:680px;max-height:680px;left:-8vw;top:-12vw;background:radial-gradient(circle,#FF7A1A 0%,rgba(255,122,26,0) 68%)}
.nx-glow i:nth-child(2){width:40vw;height:40vw;max-width:600px;max-height:600px;right:-6vw;top:-6vw;background:radial-gradient(circle,#A855F7 0%,rgba(168,85,247,0) 68%)}
.nx-glow i:nth-child(3){width:36vw;height:36vw;max-width:560px;max-height:560px;left:34%;bottom:-18vw;background:radial-gradient(circle,#FF2E88 0%,rgba(255,46,136,0) 66%);opacity:.4}

/* Collage echter Veranstalterbilder */
.nx-collage{position:absolute;z-index:1;pointer-events:none;top:0;bottom:0;left:50%;width:100vw;transform:translateX(-50%);overflow:hidden}
.nx-collage::after{content:"";position:absolute;inset:0;background:
   radial-gradient(ellipse 46% 56% at 50% 50%,rgba(7,6,13,.94) 0%,rgba(7,6,13,.72) 55%,rgba(7,6,13,0) 100%),
   linear-gradient(180deg,rgba(7,6,13,.2) 0%,rgba(7,6,13,0) 30%,rgba(7,6,13,0) 70%,var(--nx-bg) 100%)}
.nx-c{position:absolute;display:block;aspect-ratio:4/5;border-radius:20px;overflow:hidden;background:#1a1530;border:1px solid rgba(255,255,255,.14);box-shadow:0 30px 60px -20px rgba(0,0,0,.9),0 0 40px -10px rgba(255,46,136,.25);opacity:0;transition:opacity 1.2s ease}
.nx-c.da{opacity:.78}
.nx-c img{width:100%;height:100%;object-fit:cover;display:block}
.nx-c1{left:3%;top:15%;width:clamp(120px,13vw,210px);--r:-7deg}
.nx-c2{right:3.5%;top:12%;width:clamp(120px,14vw,220px);--r:6deg}
.nx-c3{left:10%;top:58%;width:clamp(100px,11vw,170px);--r:5deg}
.nx-c4{right:11%;top:56%;width:clamp(100px,11vw,170px);--r:-5deg}
.nx-c5{left:19%;top:13%;width:clamp(80px,7.5vw,120px);--r:4deg}
.nx-c6{right:21%;top:19%;width:clamp(80px,7.5vw,120px);--r:-3deg}
.nx-c7{left:-1%;top:70%;width:clamp(90px,9vw,150px);--r:-3deg}
.nx-c8{right:-1%;top:74%;width:clamp(90px,9vw,150px);--r:4deg}
.nx-c9{left:22%;top:78%;width:clamp(70px,6.5vw,110px);--r:-6deg}
.nx-c10{right:23%;top:80%;width:clamp(70px,6.5vw,110px);--r:7deg}
.nx-c{transform:rotate(var(--r,0deg))}
@media (prefers-reduced-motion:no-preference){
  .nx-c{animation:nx-drift 22s ease-in-out infinite alternate}
  .nx-c2,.nx-c7,.nx-c10{animation-duration:27s;animation-delay:-6s}
  .nx-c3,.nx-c6,.nx-c9{animation-duration:31s;animation-delay:-12s}
  .nx-c4,.nx-c5,.nx-c8{animation-duration:25s;animation-delay:-3s}
  .nx-glow i{animation:nx-schweb 18s ease-in-out infinite alternate}
  .nx-glow i:nth-child(2){animation-duration:23s;animation-delay:-8s}
  .nx-glow i:nth-child(3){animation-duration:29s;animation-delay:-4s}
  :root body .wrap>header:first-child .today::before{animation:nx-puls 2.2s ease-out infinite}
}
@keyframes nx-drift{0%{transform:translate3d(0,0,0) rotate(var(--r,0deg))}100%{transform:translate3d(10px,-26px,0) rotate(calc(var(--r,0deg) * -.4))}}
@keyframes nx-schweb{0%{transform:translate3d(0,0,0) scale(1)}100%{transform:translate3d(6vw,4vw,0) scale(1.15)}}
@keyframes nx-puls{0%{box-shadow:0 0 0 0 rgba(255,77,109,.7)}70%{box-shadow:0 0 0 10px rgba(255,77,109,0)}100%{box-shadow:0 0 0 0 rgba(255,77,109,0)}}
@media(max-width:734px){
  .nx-c{width:26vw!important;opacity:0}
  .nx-c.da{opacity:.42}
  .nx-c1{left:-5%;top:9%}.nx-c2{right:-5%;top:7%;left:auto}.nx-c3{left:-3%;top:70%}.nx-c4{right:-3%;top:72%;left:auto}
  .nx-c5,.nx-c6,.nx-c7,.nx-c8,.nx-c9,.nx-c10{display:none}
  .nx-collage::after{background:radial-gradient(ellipse 80% 55% at 50% 48%,rgba(7,6,13,.9) 0%,rgba(7,6,13,.55) 60%,rgba(7,6,13,.1) 100%),linear-gradient(180deg,rgba(7,6,13,0) 70%,var(--nx-bg) 100%)}
  :root body .wrap>header:first-child{padding:0 0 118px;min-height:0}
  :root body .wrap>header:first-child .today{margin-top:56px;font-size:.8125rem}
  :root body .pagehead{padding:104px 20px 72px;min-height:0}
  :root body :is(.pagehead h1,.wrap>header:first-child h1){font-size:clamp(2.6rem,12.4vw,3.6rem);max-width:none;letter-spacing:-.04em}
  :root body .pagehead h1{font-size:clamp(2.3rem,10.5vw,3.2rem)}
  :root body .pagehead h1 .h1-rest{font-size:1.15rem}
}

/* ---------- Such-Panel (Startseite): Glas, ragt in den Hero ---------- */
:root body .band-grau-innen{padding:0 0 40px!important;margin-top:0;position:relative;z-index:4}
:root body .nx-panel{position:relative;margin:-96px auto 0;max-width:1060px;padding:34px 36px 30px;border-radius:30px;background:linear-gradient(180deg,rgba(28,22,52,.72),rgba(14,11,28,.72));border:1px solid rgba(255,255,255,.12);box-shadow:0 40px 90px -30px rgba(0,0,0,.9),0 0 0 1px rgba(255,255,255,.03) inset,0 1px 0 rgba(255,255,255,.12) inset;-webkit-backdrop-filter:blur(22px) saturate(150%);backdrop-filter:blur(22px) saturate(150%)}
:root body .nx-panel::before{content:"";position:absolute;left:12%;right:12%;top:-1px;height:1px;background:linear-gradient(90deg,transparent,rgba(255,154,61,.9),rgba(255,46,136,.9),transparent)}
:root body .nx-panel .band-titel{font-size:clamp(1.6rem,2.6vw,2.1rem)!important;text-align:left!important;margin:0 0 6px!important;letter-spacing:-.03em;color:var(--nx-ink)}
:root body .nx-panel .band-sub{text-align:left!important;margin:0 0 22px!important;font-size:1rem!important;color:var(--nx-ink3)!important;max-width:none}
:root body .nx-panel .tsearchrow{margin:0!important}
:root body .nx-panel{overflow:hidden}
:root body .nx-panel .topstats .tdays .chips{margin:0!important;padding:2px 0 8px!important;width:100%!important}
:root body :is(.tmap,.tdays,.tstat,.card,.box,.panel,.tile,.kachel,#nx-id){border-color:var(--nx-line)}
:root body :is(body>.wrap:has(>.mag),body>.wrap:has(>.ueber-grid),.themenband){--n-flaeche:rgba(255,255,255,.05)}

/* ---------- Suchfelder, Chips ---------- */
:root body :is(.searchbar input,input[type=search],input[type=text]){background:rgba(255,255,255,.06) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23BDB7D3' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") no-repeat 18px 50%!important;color:var(--nx-ink)!important;border:1px solid rgba(255,255,255,.14)!important;border-radius:999px!important;min-height:56px;padding-left:50px!important;font-size:1.0625rem!important;box-shadow:0 1px 0 rgba(255,255,255,.06) inset!important}
:root body #qo{background-repeat:no-repeat!important;background-position:18px 50%!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23BDB7D3' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6.2-7-11.5A7 7 0 0 1 19 9.5C19 14.8 12 21 12 21z'/%3E%3Ccircle cx='12' cy='9.5' r='2.5'/%3E%3C/svg%3E")!important}
:root body :is(.searchbar input,input[type=search],input[type=text])::placeholder{color:var(--nx-ink3)!important}
:root body :is(.searchbar input,input[type=search],input[type=text]):focus{background-color:rgba(255,255,255,.09)!important;border-color:rgba(255,122,26,.7)!important;box-shadow:0 0 0 4px rgba(255,122,26,.18),0 0 40px -6px rgba(255,46,136,.45)!important;outline:0}
:root body .band-grau-innen :is(.searchbar input,input[type=search],input[type=text]){background-color:rgba(255,255,255,.06)!important}
:root body :is(.chip,.pill,.filter-chip,.topstats .tdays .chip,.bl-auswahl summary,.bl-auswahl .tmap .blcol>*,.band-grau-innen .topstats .tdays .chip:not(.on),.band-grau-innen .topstats .bl-auswahl summary,.band-grau-innen .bl-auswahl .tmap .blcol>*){background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.1)!important;color:var(--nx-ink)!important}
:root body :is(.chip,.pill,.filter-chip,.bl-auswahl summary):hover{background:rgba(255,255,255,.12)!important;border-color:rgba(255,255,255,.22)!important;color:#fff!important}
:root body :is(.chip,.pill).on,:root body :is(.chip,.pill).active,:root body .chip[aria-pressed="true"],:root body .topstats .tdays .chip.on,:root body :is(#suchzone,.topstats,.tdays,.tmap) :is(.chip,.pill).on,:root body :is(.tmap,.tdays,.tstat) :is(.on,.active,[aria-pressed="true"]),:root body .band-grau-innen :is(.tmap,.tdays,.tstat) :is(.on,.active,[aria-pressed="true"]){background:var(--nx-knopf)!important;border-color:transparent!important;color:#fff!important;box-shadow:0 8px 26px -10px rgba(255,46,136,.8)}
:root body .topstats #stSel *{color:var(--nx-ink3)!important}
:root body .topstats #stSel :is(b,strong,.num,.n,.big,#stN){color:var(--nx-ink)!important;font-weight:700!important}
:root body .tstat *{color:var(--nx-ink)!important}

/* ---------- Themen als Story-Leiste (Startseite, unter dem Such-Panel) ---------- */
:root body .themenband{padding:40px 0 8px!important;margin:0}
:root body .themenband .tbhead{margin-bottom:18px}
:root body .themenband .tbhead .tbt{font-size:clamp(1.5rem,2.4vw,1.9rem)!important;color:var(--nx-ink)}
:root body .themenband .tbhead .tbt::after{color:var(--nx-ink3)!important;font-size:1rem!important;margin-top:6px!important}
:root body .tball2{color:var(--nx-or2)!important}
:root body .themenband .tbband{gap:18px;padding:6px 4px 10px}
:root body .themenband .tbtile{flex:0 0 92px;text-align:center}
:root body .themenband .tbtile .im{width:84px!important;height:84px!important;margin:0 auto;border-radius:50%!important;padding:3px;border:0!important;background:conic-gradient(from 200deg,#FFC15E,#FF7A1A,#FF2E88,#A855F7,#FFC15E)!important;box-shadow:0 10px 30px -12px rgba(255,46,136,.7)}
:root body .themenband .tbtile .im img{border-radius:50%!important;border:3px solid var(--nx-bg)!important;width:100%;height:100%}
:root body .themenband .tbtile:hover .im{box-shadow:0 12px 36px -8px rgba(255,122,26,.9)}
:root body .themenband .tbtile .cap{color:var(--nx-ink2)!important;font-size:.8125rem!important;font-weight:600!important;margin-top:8px;line-height:1.25}
:root body .themenband .tbtile.tb-alle .im{background:rgba(255,255,255,.06)!important;border:1px dashed rgba(255,255,255,.3)!important;color:var(--nx-ink)!important;font-size:.8rem;padding:0}
:root body .themenband .tbarrow{background:rgba(20,17,38,.85)!important;color:#fff!important;border:1px solid var(--nx-line2)!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}

/* ---------- Abschnittstitel ---------- */
:root body :is(.themenband .tbhead .tbt,.tbt,h2.sec,h2.seclabel,h2.bmon,h2.invite-h,.pdz h2,.mehr-ueber h2#mehr-ueber,.band-titel){font-family:var(--nx-display)!important;letter-spacing:-.035em;color:var(--nx-ink)}
:root body :is(h2.sec,h2.seclabel,h2.invite-h){font-size:clamp(2.1rem,4.4vw,3.6rem)!important;font-weight:800;line-height:1.02}
:root body :is(.band-sub,.invite-sub,p.pdzhint,p.nbhint,.abschnitt-sub){color:var(--nx-ink3)!important}
:root body h2.seclabel{margin-top:56px!important}

/* ---------- Karte: dunkle Kacheln ---------- */
:root body :is(.mapframe,#map,.leaflet-container){border-radius:26px!important;background:#0f0d1c!important}
:root body .mapframe{border:1px solid var(--nx-line2)!important;box-shadow:0 30px 80px -40px rgba(168,85,247,.55)}
:root body .leaflet-tile-pane{filter:grayscale(.35) brightness(1.03) contrast(.95)}
:root body :is(.leaflet-popup-content-wrapper,.leaflet-popup-tip){background:#16122a!important;color:var(--nx-ink)!important;border:1px solid var(--nx-line2)}
:root body .leaflet-bar a{background:#16122a!important;color:#fff!important;border-color:var(--nx-line)!important}
:root body :is(.auswahlzeile,.mapnote){color:var(--nx-ink3)}

/* ---------- Tagesueberschriften ---------- */
:root body .day{border:0}
:root body .day h2{font-family:var(--nx-display)!important;font-size:clamp(1.6rem,2.6vw,2.1rem)!important;font-weight:800;letter-spacing:-.03em;color:var(--nx-ink)!important;margin:64px 0 18px!important}
:root body .day small{color:var(--nx-ink3)!important;padding:4px 12px;border-radius:999px;border:1px solid var(--nx-line)}
:root body :is(.day,.dayline)::after{background:linear-gradient(90deg,rgba(255,122,26,.7),rgba(255,46,136,.4),transparent)!important}

/* ---------- EINE Terminkarte: dunkles Glas ---------- */
:root body :is(.ev,#nx-id){background:linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.025))!important;border:1px solid rgba(255,255,255,.09)!important;border-radius:22px!important;box-shadow:0 1px 0 rgba(255,255,255,.06) inset!important;color:var(--nx-ink);transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s,border-color .35s!important;isolation:isolate}
:root body .ev::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;border-radius:inherit;opacity:0;transition:opacity .35s;background:radial-gradient(420px circle at var(--mx,50%) var(--my,0%),rgba(255,122,26,.16),rgba(255,46,136,.08) 40%,transparent 70%)}
:root body .ev:hover{transform:translateY(-5px)!important;border-color:rgba(255,122,26,.45)!important;box-shadow:0 26px 60px -24px rgba(255,46,136,.55),0 0 0 1px rgba(255,122,26,.18),0 1px 0 rgba(255,255,255,.08) inset!important}
:root body .ev:hover::before{opacity:1}
:root body .ev:focus-visible{outline:2px solid var(--nx-or);outline-offset:3px}
:root body :is(.ev,#nx-id).spon{background:linear-gradient(180deg,rgba(255,122,26,.12),rgba(255,46,136,.05))!important;border-color:rgba(255,122,26,.35)!important}
:root body :is(.ev,#nx-id).dauer{background:linear-gradient(180deg,rgba(168,85,247,.10),rgba(255,255,255,.02))!important}
:root body .ev.mitbild .evbild{position:relative;background:#120f22!important;overflow:hidden}
:root body .ev.mitbild .evbild::after{content:"";position:absolute;inset:auto 0 0 0;height:45%;background:linear-gradient(180deg,transparent,rgba(10,8,20,.75));pointer-events:none}
:root body .ev .evfoto{transition:transform .6s cubic-bezier(.2,.8,.2,1)}
:root body .ev:hover .evfoto{transform:scale(1.045)}
:root body .ev .tx{position:static!important}
:root body .ev .ev-zeile{align-self:flex-start;display:inline-block;font-size:.8125rem!important;font-weight:700!important;letter-spacing:.01em;line-height:1.35!important;color:#FFE1C7!important;padding:6px 12px;border-radius:999px;background:linear-gradient(100deg,rgba(255,122,26,.22),rgba(255,46,136,.16));border:1px solid rgba(255,154,61,.45);box-shadow:0 0 22px -4px rgba(255,106,26,.45);margin-bottom:12px!important;font-variant-numeric:tabular-nums}
:root body .ev.mitbild .ev-zeile{margin-top:-40px;background:linear-gradient(100deg,rgba(40,20,30,.82),rgba(60,18,48,.82));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
:root body .ev .ev-zeile,:root body .ev:not(.mitbild) .ev-zeile{padding-right:12px!important}
:root body .ev:not(.mitbild) .ev-zeile{margin-right:84px;max-width:calc(100% - 84px)}
:root body .ev h3{color:var(--nx-ink)!important;font-size:1.25rem!important;font-weight:700!important;letter-spacing:-.015em;line-height:1.22!important}
:root body .ev .tx .meta,:root body .ev .meta,:root body .ev .desc{color:var(--nx-ink3)!important}
:root body .ev .price,:root body .ev .tx .price{color:var(--nx-ink2)!important;font-weight:600}
:root body .ev .ev-badge{background:rgba(255,255,255,.08)!important;color:var(--nx-ink2)!important;border:1px solid var(--nx-line)}
:root body .ev .spon-badge{background:var(--nx-knopf)!important;color:#fff!important}
:root body .ev .symbol{background:rgba(7,6,13,.7)!important;color:var(--nx-ink2)!important}
:root body .ev-pill{min-height:44px!important;padding:0 22px!important;font-size:.9375rem!important;font-weight:700!important;letter-spacing:.005em}
:root body .ev-pill-voll{background:var(--nx-knopf)!important;border:0!important;color:#fff!important;box-shadow:0 10px 28px -10px rgba(255,46,136,.75),0 1px 0 rgba(255,255,255,.25) inset}
:root body a.ev:hover .ev-pill-voll{background:var(--nx-knopf-hover)!important;box-shadow:0 12px 34px -8px rgba(255,46,136,.95),0 1px 0 rgba(255,255,255,.3) inset}
:root body .ev-pill-voll::after{content:"Zum Termin \2192"!important}
:root body a.ev:not([href^="/"]):not([href^="termin"]):is([href*="ticket" i],[href*="eventim" i],[href*="reservix" i],[href*="go.php"],[href*="/go/"],[href*="okticket" i]) .ev-pill-voll::after{content:"Tickets \2192"!important}
:root body .ev :is(.merkbtn,.kartebtn){background:rgba(12,10,24,.6)!important;color:#fff!important;border:1px solid rgba(255,255,255,.16)!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
:root body .ev.mitbild :is(.merkbtn,.kartebtn){background:rgba(12,10,24,.55)!important}
:root body .ev :is(.merkbtn,.kartebtn):hover{background:rgba(255,46,136,.35)!important}
:root body .ev :is(.merkbtn.on,.merkbtn.aktiv,.merkbtn.active,.merkbtn[aria-pressed="true"]) svg{fill:#FF2E88!important;stroke:#FF2E88!important}
@media (prefers-reduced-motion:no-preference){
  :root.nx-js body .ev{animation:nx-auf .6s cubic-bezier(.2,.8,.2,1) both}
}
@keyframes nx-auf{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
:root body :is(.morebtn,#mehrBtn,.loadmore){background:rgba(255,255,255,.06)!important;color:var(--nx-ink)!important;border:1px solid var(--nx-line2)!important}
:root body :is(.morebtn,#mehrBtn,.loadmore):hover{background:rgba(255,255,255,.12)!important}

/* Textlisten (Stadt-, Monatsseiten, Suchmaschinen-Liste) */
:root body .bev{border-bottom:1px solid var(--nx-line)!important;color:var(--nx-ink2);padding:16px 0!important}
:root body .bev b{color:#FFE1C7!important;font-weight:700;display:inline-block;padding:2px 10px;margin-right:8px;border-radius:999px;background:rgba(255,122,26,.14);border:1px solid rgba(255,154,61,.35);font-size:.875rem;font-variant-numeric:tabular-nums}
:root body .bev :is(.bz){color:var(--nx-ink);font-weight:600}
:root body .bev :is(.bo,.bp,.bd){color:var(--nx-ink3)!important}
:root body .bev a{color:#fff!important;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;min-height:32px;padding:0 14px;margin-left:8px;border-radius:999px;background:var(--nx-knopf);box-shadow:0 6px 18px -8px rgba(255,46,136,.8)}
:root body .bev a:hover{background:var(--nx-knopf-hover)}
:root body .bev a::after{content:" \2192"}
:root body .bev-kopf{color:var(--nx-ink3)}

/* ---------- Dunkles Band Startseite: Bento der Themen ---------- */
:root body .band-dunkel-innen{padding:120px 0 90px!important;margin-top:80px!important}
:root body .band-dunkel-innen::after{content:"";position:absolute;z-index:-1;left:50%;top:0;width:100vw;height:100%;transform:translateX(-50%);pointer-events:none;background:radial-gradient(900px 480px at 15% 20%,rgba(255,122,26,.12),transparent 65%),radial-gradient(800px 480px at 90% 60%,rgba(168,85,247,.14),transparent 65%)}
:root body .band-dunkel-innen .invite-sub{color:var(--nx-ink2)!important;margin-bottom:48px!important}
:root body .themen.nx-bento{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:190px;grid-auto-flow:dense;gap:14px!important;min-height:0}
:root body .nx-bento .poster{position:relative;aspect-ratio:auto!important;height:auto;border-radius:24px!important;overflow:hidden;border:1px solid rgba(255,255,255,.1)!important;grid-column:span 1!important;grid-row:span 1;background:#120f22;box-shadow:0 20px 50px -30px rgba(0,0,0,.9);transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s,border-color .45s}
:root body .nx-bento .poster:nth-child(10n+1){grid-column:span 2!important;grid-row:span 2}
:root body .nx-bento .poster:nth-child(10n+2){grid-column:span 2!important}
:root body .nx-bento .poster:nth-child(10n+3){grid-row:span 2}
:root body .nx-bento .poster:nth-child(10n+7){grid-column:span 2!important}
:root body .nx-bento .poster:nth-child(10n+9){grid-row:span 2}
:root body .nx-bento .poster:last-child{grid-column:span 2!important;grid-row:span 1}
:root body .nx-bento .poster img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:0!important;transition:transform .8s cubic-bezier(.2,.8,.2,1),filter .6s;filter:saturate(1.05) brightness(.82)}
:root body .nx-bento .poster::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,6,13,0) 35%,rgba(7,6,13,.88) 100%);pointer-events:none}
:root body .nx-bento .poster::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;opacity:0;transition:opacity .45s;background:linear-gradient(135deg,rgba(255,122,26,.35),rgba(255,46,136,.18) 45%,rgba(168,85,247,.3))}
:root body .nx-bento .poster:hover{transform:translateY(-4px);border-color:rgba(255,154,61,.55)!important;box-shadow:0 30px 70px -30px rgba(255,46,136,.7)}
:root body .nx-bento .poster:hover::before{opacity:.55}
:root body .nx-bento .poster:hover img{transform:scale(1.06);filter:saturate(1.2) brightness(.9)}
:root body .nx-bento .poster .cap{position:absolute!important;z-index:2;left:18px;right:18px;bottom:16px;font-family:var(--nx-display)!important;font-weight:700;font-size:1.25rem!important;letter-spacing:-.02em;line-height:1.1;color:#fff!important;text-shadow:0 2px 18px rgba(0,0,0,.6)!important}
:root body .nx-bento .poster:nth-child(10n+1) .cap{font-size:clamp(1.8rem,3vw,2.6rem)!important}
:root body .nx-bento .poster .nx-anz{position:absolute;z-index:2;left:14px;top:14px;display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:999px;font-size:.75rem;font-weight:700;color:#fff;background:rgba(10,8,20,.55);border:1px solid rgba(255,255,255,.18);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-variant-numeric:tabular-nums}
:root body .nx-bento .poster .nx-anz::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--nx-or);box-shadow:0 0 10px var(--nx-or)}
:root body .nx-bento .poster .soon-tag{z-index:2}

/* Highlight-Banner: Glas mit Leuchtkante */
:root body .band-dunkel-innen a.hlbanner{background:linear-gradient(110deg,rgba(255,122,26,.14),rgba(255,46,136,.08) 45%,rgba(168,85,247,.14))!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:26px!important;margin-top:18px!important;transition:border-color .3s,transform .3s}
:root body .band-dunkel-innen a.hlbanner:first-of-type{margin-top:56px!important}
:root body .band-dunkel-innen a.hlbanner:hover{border-color:rgba(255,154,61,.6)!important;transform:translateY(-3px)}
:root body .band-dunkel-innen :is(.hlbanner .hlb-t){color:#fff!important}
:root body .band-dunkel-innen :is(.hlbanner .hlb-kick){color:var(--nx-or2)!important;font-weight:700;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem}
:root body .band-dunkel-innen :is(.hlb-cta,.hlb-soon,.hlb-go){background:var(--nx-knopf)!important;color:#fff!important;border-radius:999px!important;padding:12px 20px!important;font-weight:700;border:0!important;box-shadow:0 10px 28px -10px rgba(255,46,136,.75)}

/* ---------- Themenseiten ---------- */
:root body .themen-leiste .poster,:root body .themen.themen-leiste .poster{background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.12)!important}
:root body .themen-leiste .poster:hover{background:rgba(255,255,255,.12)!important;border-color:rgba(255,154,61,.6)!important}
:root body .themen-leiste .poster .cap{color:var(--nx-ink)!important}
:root body h2.sec#themen{font-size:1rem!important;font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,"Helvetica Neue",Arial,system-ui,sans-serif!important;text-transform:uppercase;letter-spacing:.14em!important;color:var(--nx-ink3)!important;font-weight:700;margin-top:8px!important}
:root body .pagehead+.wrap{position:relative;z-index:3;padding-top:24px}
:root body .pagehead+.wrap>.searchbar,:root body .pagehead+.wrap .topstats{position:relative}
:root body .mehr-ueber{background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.01));border:1px solid var(--nx-line);border-radius:30px;padding:64px 56px!important}
:root body .mehr-ueber :is(p,li,.seitentext p,.story p){color:var(--nx-ink2)!important}
:root body .mehr-ueber .kopfdaten{color:var(--nx-ink3)!important}
:root body .hero :is(h1,.crumb,.crumb a,.crumb span,.lead){color:#fff!important}

/* ---------- Stadt-/Magazinseiten ---------- */
:root body :is(.mblock,#nx-id){background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02))!important;border:1px solid var(--nx-line)!important;border-radius:28px!important}
:root body .mblock h2{color:var(--nx-ink)!important;font-family:var(--nx-display)!important;letter-spacing:-.03em}
:root body .mblock p{color:var(--nx-ink2)!important}
:root body .mblock .kicker,:root body p.kicker{color:var(--nx-or2)!important;text-transform:uppercase;letter-spacing:.14em;font-size:.75rem!important;font-weight:700}
:root body .mblock ul li{background:rgba(255,255,255,.05)!important;border:1px solid var(--nx-line)!important;color:var(--nx-ink2)}
:root body .mblock ul li b{color:var(--nx-ink)}
:root body .mblock a.lnk{color:var(--nx-or2)}
:root body h2.bmon{font-size:clamp(1.8rem,3.4vw,2.8rem)!important;font-weight:800;letter-spacing:-.035em}
:root body :is(.nblist,.pdzlist) a{background:rgba(255,255,255,.06)!important;border:1px solid var(--nx-line)!important;color:var(--nx-ink)!important}
:root body :is(.nblist,.pdzlist) a:hover{border-color:rgba(255,154,61,.6)!important}
:root body .ueber-grid>:is(*,#nx-id){background:rgba(255,255,255,.05)!important;border:1px solid var(--nx-line)!important;color:var(--nx-ink2)}

/* ---------- FAQ, Unterseitentext, Fusszeile ---------- */
:root body details:not(.bl-auswahl){color:var(--nx-ink3)!important}
:root body details:not(.bl-auswahl) strong{color:var(--nx-ink)!important}
:root body .sub-lang{color:var(--nx-ink3)}
:root body .sub-lang h2{color:var(--nx-ink)!important}
:root body footer{position:relative;background:transparent!important;color:var(--nx-ink3)!important;border-top:0!important;padding-top:64px!important}
:root body footer::after{content:"";position:absolute;left:50%;top:0;width:min(1100px,100vw);height:1px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,rgba(255,122,26,.6),rgba(255,46,136,.6),rgba(168,85,247,.6),transparent)}
:root body footer :is(a,p,li,span,h2,h3,h4,small,div){color:var(--nx-ink3)!important}
:root body footer :is(h2,h3,h4){color:var(--nx-ink)!important}
:root body footer a:hover{color:#fff!important}
:root body footer a[style*="background:#e9ebf1"]{background:rgba(255,255,255,.92)!important;border-radius:18px!important}
:root body footer a[style*="background:#e9ebf1"] :is(span,div,small){color:#3b3650!important}
:root body .fuss-social .soc-btn svg{fill:var(--nx-ink3)!important}
:root body .fuss-social .soc-btn:hover{background:rgba(255,255,255,.1)!important}
:root body #upBtn{background:rgba(20,17,38,.7)!important;border:1px solid var(--nx-line2)!important}

/* ---------- Einblenden beim Scrollen (nur mit JS und nur ohne "Bewegung reduzieren") ---------- */
@media (prefers-reduced-motion:no-preference){
  :root.nx-js .nx-rein{opacity:0;transform:translateY(28px);transition:opacity .8s cubic-bezier(.2,.8,.2,1),transform .8s cubic-bezier(.2,.8,.2,1)}
  :root.nx-js .nx-rein.nx-da{opacity:1;transform:none}
  :root.nx-js .nx-bento .poster.nx-rein{transition-delay:calc(var(--i,0) * 45ms)}
}

/* ---------- Handy ---------- */
@media(max-width:734px){
  :root body .nx-panel{margin:-84px 0 0;padding:22px 18px 20px;border-radius:24px}
  :root body .nx-panel .band-titel{font-size:1.45rem!important}
  :root body .nx-panel .band-sub{font-size:.9375rem!important;margin-bottom:16px!important}
  :root body :is(.searchbar input,input[type=search],input[type=text]){min-height:52px;font-size:1rem!important}
  :root body :is(h2.sec,h2.seclabel,h2.invite-h){font-size:2rem!important}
  :root body .themenband .tbtile{flex:0 0 78px}
  :root body .themenband .tbtile .im{width:70px!important;height:70px!important}
  :root body .themen.nx-bento{grid-auto-flow:column dense;grid-template-columns:none;grid-template-rows:repeat(2,150px);grid-auto-rows:150px;grid-auto-columns:44vw;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 20px 14px;margin:0 -20px!important;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  :root body .themen.nx-bento::-webkit-scrollbar{display:none}
  :root body .nx-bento .poster,:root body .nx-bento .poster:nth-child(n){grid-column:span 1!important;grid-row:span 1;scroll-snap-align:start}
  :root body .nx-bento .poster:nth-child(10n+1){grid-row:span 2}
  :root body .nx-bento .poster:last-child{grid-row:span 2}
  :root body .nx-bento .poster .cap,:root body .nx-bento .poster:nth-child(10n+1) .cap{font-size:1.05rem!important;left:12px;right:12px;bottom:12px}
  :root body .band-dunkel-innen{padding:72px 0 56px!important;margin-top:48px!important}
  :root body .mehr-ueber{padding:40px 22px!important;border-radius:24px}
  :root body .ev.mitbild .ev-zeile{margin-top:-36px}
  :root body .day h2{margin-top:44px!important}
  :root body .bev a{margin:8px 0 0}
}

/* ---------- Runde 2 (30.09.): Themen-Panel, lange Ueberschriften ---------- */
:root body .nx-panel-thema{margin:-56px auto 0;max-width:none}
:root body .nx-panel-thema h2.sec#themen{margin:0 0 12px!important;text-align:left!important}
:root body .nx-panel-thema .themen-leiste{margin-bottom:20px}
:root body .nx-panel-thema .topstats{margin-top:18px!important}
:root body .pagehead.nx-lang h1{font-size:clamp(2.3rem,4.6vw,4.1rem)!important;max-width:20ch}
:root body .pagehead{padding-bottom:120px}
@media(max-width:734px){
  :root body .nx-panel-thema{margin:-44px 0 0;padding:20px 16px 18px}
  :root body .pagehead.nx-lang h1{font-size:clamp(2rem,9vw,2.6rem)!important}
  :root body .pagehead{padding-bottom:84px}
}
/* Hintergrund nicht kacheln (Verlauf wiederholte sich pro Bildschirmhoehe) */
:root body{background-repeat:no-repeat!important;background-color:var(--nx-bg)!important}
:root{background:var(--nx-bg)}
/* Unterseiten: Luft ueber den Abschnittstiteln */
:root body .wrap>h2:not(.sec):not(.seclabel):not(.bmon):not(.invite-h):not(.band-titel){margin-top:72px;margin-bottom:20px;letter-spacing:-.03em}
@media(max-width:734px){:root body .wrap>h2:not(.sec):not(.seclabel):not(.bmon):not(.invite-h):not(.band-titel){margin-top:48px}}
:root body input#q{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23BDB7D3' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:18px 50%!important;background-color:rgba(255,255,255,.06)!important}
:root body input#q:focus{background-color:rgba(255,255,255,.09)!important}

/* =====================================================================================================
   RUNDE nacht2 (30.09. nachmittags, Michael): keine Bildcollage, ruhiger niedriger Kopf, Ueberschrift 48-56px,
   die eigenen Themenbilder GROSS, Deutschlandkarte zurueck, Reihen gebuendelt (nacht.js)
   ===================================================================================================== */
/* Kopf: niedrig und ruhig */
.nx-collage{display:none!important}
.nx-glow i{opacity:.26}
.nx-glow i:nth-child(3){opacity:.16}
:root body .wrap>header:first-child{padding:0 0 118px!important;min-height:0!important}
:root body .wrap>header:first-child .today{margin:52px auto 0!important}
:root body :is(.pagehead h1,.wrap>header:first-child h1),:root body .pagehead.nx-lang h1{font-size:clamp(2rem,1.15rem + 2.9vw,3.5rem)!important;line-height:1.06!important;letter-spacing:-.035em!important;max-width:24ch!important;margin:16px auto 0!important}
:root body .wrap>header:first-child h1{max-width:21ch!important}
:root body .pagehead h1 .h1-rest{font-size:clamp(1.05rem,1.4vw,1.25rem)!important;margin-top:10px!important}
:root body :is(.pagehead .lead,.wrap>header:first-child .sub){font-size:clamp(1rem,1.2vw,1.125rem)!important;margin-top:14px!important;max-width:38rem}
:root body .pagehead{padding:112px 22px 104px!important;min-height:0!important}
:root body .nx-panel{margin-top:-80px}
:root body .nx-panel-thema{margin-top:-64px}

/* Grosse Themenkacheln (Startseite): die eigenen mutify-Themenbilder sind das Bildgesicht */
:root body .themenband{display:none!important}
:root body .nx-themen{margin:72px 0 24px}
:root body .nx-themen h2.sec#nx-themen-h{margin-top:0!important}
:root body .nx-themen-sub{margin-bottom:32px!important}
:root body .themen.nx-kacheln{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px!important;min-height:0;margin:0}
:root body .nx-kacheln .poster{position:relative;display:block;aspect-ratio:4/3!important;height:auto;grid-column:auto!important;border-radius:22px!important;overflow:hidden;border:1px solid rgba(255,255,255,.1)!important;background:#15112a;box-shadow:0 24px 50px -30px rgba(0,0,0,.9);transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s,border-color .45s}
:root body .nx-kacheln .poster:last-child{grid-column:1/-1!important;aspect-ratio:auto!important;height:220px}
:root body .nx-kacheln .poster img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:0!important;border:0!important;transition:transform .8s cubic-bezier(.2,.8,.2,1),filter .6s;filter:brightness(.9)}
:root body .nx-kacheln .poster::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(7,6,13,0) 40%,rgba(7,6,13,.86) 100%)}
:root body .nx-kacheln .poster:hover{transform:translateY(-4px);border-color:rgba(255,154,61,.6)!important;box-shadow:0 30px 60px -28px rgba(255,46,136,.6)}
:root body .nx-kacheln .poster:hover img{transform:scale(1.05);filter:brightness(1)}
:root body .nx-kacheln .poster .cap{position:absolute!important;z-index:2;left:18px;right:18px;bottom:15px;font-family:var(--nx-display)!important;font-weight:700;font-size:1.35rem!important;letter-spacing:-.02em;line-height:1.12;color:#fff!important;text-shadow:0 2px 16px rgba(0,0,0,.65)!important}
:root body .nx-kacheln .poster .nx-anz{position:absolute;z-index:2;left:14px;top:14px;display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:999px;font-size:.8125rem;font-weight:700;color:#fff;background:rgba(10,8,20,.6);border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-variant-numeric:tabular-nums}
:root body .nx-kacheln .poster .nx-anz::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--nx-or);box-shadow:0 0 10px var(--nx-or)}
:root.nx-js .nx-kacheln .poster.nx-rein{transition-delay:calc(var(--i,0) * 60ms)}
@media(max-width:1000px){:root body .themen.nx-kacheln{grid-template-columns:repeat(3,minmax(0,1fr))}}
/* Band "Noch nicht das Richtige dabei?": ohne Raster (steht jetzt oben), nur Highlights */
:root body .band-dunkel-innen{padding:88px 0 72px!important;margin-top:64px!important}
:root body .band-dunkel-innen a.hlbanner:first-of-type{margin-top:28px!important}

/* Deutschlandkarte in der Filterauswahl: offen, dunkel, Umrisse hell, Hover orange */
:root body .bl-auswahl.nx-bl>summary{display:none!important}
:root body .topstats>.bl-auswahl.nx-bl{width:100%!important;order:2}
:root body .bl-auswahl.nx-bl .tmap{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center;gap:18px!important;margin-top:6px!important;padding:18px!important;border-radius:22px!important;background:rgba(255,255,255,.03)!important;border:1px solid var(--nx-line)!important}
:root body .bl-auswahl.nx-bl .tmap .blcol{display:flex!important;flex-direction:column!important;flex-wrap:nowrap!important;flex:0 0 190px!important;width:190px!important;gap:6px!important;margin:0!important}
:root body .bl-auswahl.nx-bl .tmap .blcol>*{width:100%!important;min-height:34px!important;font-size:.8125rem!important;justify-content:center;text-align:center;padding:0 10px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex!important;align-items:center}
:root body .bl-auswahl.nx-bl .tmap .mapwrap{display:flex!important;flex:1 1 auto;min-width:0;align-items:center;justify-content:center}
:root body .bl-auswahl.nx-bl #deMap{width:100%!important;max-width:380px!important;margin:0 auto!important;aspect-ratio:auto}
:root body .bl-auswahl.nx-bl #deMap svg{width:100%!important;height:auto!important;max-height:420px!important}
:root body #deMap path{fill:rgba(255,255,255,.05)!important;stroke:rgba(246,243,255,.62)!important;stroke-width:1.2!important;transition:fill .15s,filter .15s}
:root body #deMap path:hover{fill:rgba(255,122,26,.55)!important;stroke:#FFB36B!important}
:root body #deMap path.sel{fill:#FF7A1A!important;stroke:#FFD2A8!important;filter:drop-shadow(0 0 10px rgba(255,122,26,.75))}
:root body .bl-auswahl.nx-bl .tmap .blcol>.on{background:var(--nx-knopf)!important;color:#fff!important}
@media(max-width:734px){
  :root body .bl-auswahl.nx-bl .tmap{flex-direction:column!important;padding:12px!important;gap:10px!important}
  :root body .bl-auswahl.nx-bl .tmap .mapwrap{order:-1;width:100%}
  :root body .bl-auswahl.nx-bl #deMap{max-width:300px!important}
  :root body .bl-auswahl.nx-bl #deMap svg{max-height:320px!important}
  :root body .bl-auswahl.nx-bl .tmap .blcol{flex-direction:row!important;flex:none!important;width:100%!important;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}
  :root body .bl-auswahl.nx-bl .tmap .blcol::-webkit-scrollbar{display:none}
  :root body .bl-auswahl.nx-bl .tmap .blcol>*{width:auto!important;flex:0 0 auto}
}

/* Themenseiten: Unterthemen als Bildband (die eigenen Themenbilder sichtbar) - 03.10.2026 Michael: Hochkant 2:3 wie die Bilder (600x900), nichts abgeschnitten */
:root body .themen.themen-leiste{gap:12px!important;padding:2px 0 10px!important}
:root body .themen-leiste .poster,:root body .themen.themen-leiste .poster{position:relative;display:block!important;flex:0 0 180px!important;height:270px!important;aspect-ratio:2/3!important;min-height:0!important;padding:0!important;border-radius:18px!important;overflow:hidden;background:#15112a!important;border:1px solid rgba(255,255,255,.12)!important}
:root body .themen-leiste .poster img{display:block!important;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.85);transition:transform .6s,filter .4s}
:root body .themen-leiste .poster::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,6,13,0) 35%,rgba(7,6,13,.85));pointer-events:none}
:root body .themen-leiste .poster:hover img{transform:scale(1.06);filter:brightness(1)}
:root body .themen-leiste .poster .cap{position:absolute!important;z-index:2;left:14px;right:14px;bottom:11px;white-space:normal!important;color:#fff!important;font-family:var(--nx-display)!important;font-size:1.05rem!important;font-weight:700;line-height:1.15}

/* Reihen buendeln (nacht.js): eine Karte, "N Termine" klappt die weiteren Termine auf */
:root body a.ev.nx-zweit{display:none!important}
:root body a.ev.nx-zweit-offen{border-left:3px solid rgba(255,122,26,.7)!important}
:root body .nx-reihe{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:999px;font-size:.9375rem;font-weight:700;color:var(--nx-ink);background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.2);cursor:pointer;position:relative;z-index:3}
:root body .nx-reihe:hover{background:rgba(255,255,255,.14);border-color:rgba(255,154,61,.6)}
:root body .nx-reihe:focus-visible{outline:2px solid var(--nx-or);outline-offset:2px}

@media(max-width:734px){
  :root body .wrap>header:first-child{padding-bottom:100px!important}
  :root body .wrap>header:first-child .today{margin-top:36px!important}
  :root body :is(.pagehead h1,.wrap>header:first-child h1),:root body .pagehead.nx-lang h1{font-size:2rem!important;max-width:none!important}
  :root body .pagehead{padding:92px 20px 84px!important}
  :root body .nx-panel{margin-top:-68px}
  :root body .nx-panel-thema{margin-top:-52px}
  :root body .nx-themen{margin-top:48px}
  :root body .themen.nx-kacheln{grid-auto-flow:column;grid-template-columns:none;grid-template-rows:repeat(2,auto);grid-auto-columns:46vw;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px!important;padding:2px 20px 12px;margin:0 -20px!important;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  :root body .themen.nx-kacheln::-webkit-scrollbar{display:none}
  :root body .nx-kacheln .poster{aspect-ratio:1/1!important;scroll-snap-align:start}
  :root body .nx-kacheln .poster:last-child{grid-column:auto!important;grid-row:span 2;aspect-ratio:auto!important;height:auto;width:70vw}
  :root body .nx-kacheln .poster .cap{font-size:1.05rem!important;left:12px;right:12px;bottom:11px}
  :root body .nx-kacheln .poster .nx-anz{font-size:.6875rem;left:10px;top:10px;padding:4px 9px}
  :root body .themen-leiste .poster,:root body .themen.themen-leiste .poster{flex-basis:140px!important;height:210px!important}
}
@media(max-width:734px){:root body .themen.nx-kacheln{scroll-padding-inline:20px}}
/* Lichtflecken weich auslaufen lassen (keine Kante am Kopfende) */
.nx-glow{-webkit-mask-image:linear-gradient(180deg,#000 55%,transparent 100%);mask-image:linear-gradient(180deg,#000 55%,transparent 100%)}

/* =====================================================================================================
   RUNDE nacht3 (01.10.2026, Michael): Themenbilder im ersten Bildschirm, Kopf noch niedriger, Suche/Karte danach
   ===================================================================================================== */
:root body .wrap>header:first-child{padding:0 0 8px!important}
:root body .wrap>header:first-child .today{margin:28px auto 0!important;padding:5px 14px 5px 11px!important;font-size:.8125rem!important}
:root body .wrap>header:first-child h1{font-size:clamp(1.9rem,1.2rem + 2.2vw,3rem)!important;margin-top:12px!important;max-width:26ch!important}
:root body .wrap>header:first-child .sub{font-size:1rem!important;margin-top:10px!important;max-width:44rem!important}
:root body .nx-themen{margin:30px 0 0!important}
:root body .nx-themen h2.sec#nx-themen-h{font-size:clamp(1.25rem,1.6vw,1.5rem)!important;text-align:left!important;margin:0 0 14px!important;letter-spacing:-.02em!important;font-weight:700}
:root body .nx-themen-sub{display:none}
:root body .themen.nx-kacheln{gap:14px!important}
:root body .nx-kacheln .poster{aspect-ratio:16/10!important}
:root body .nx-kacheln .poster:last-child{height:180px}
:root body .band-grau-innen{padding-top:0!important}
:root body .nx-panel{margin-top:56px!important}
@media(max-width:734px){
  :root body .wrap>header:first-child .today{margin-top:18px!important}
  :root body .wrap>header:first-child h1{font-size:1.75rem!important}
  :root body .wrap>header:first-child .sub{font-size:.9375rem!important}
  :root body .nx-themen{margin-top:22px!important}
  :root body .nx-kacheln .poster{aspect-ratio:1/1!important}
  :root body .nx-panel{margin-top:36px!important}
}
/* Tagesgruppe, deren Karten alle zu einer frueheren Reihe gehoeren: Kopf mit ausblenden (nacht.js) */
:root body .day.nx-leer,:root body .events.nx-leer{display:none!important}
@media(max-width:734px){:root body .themen.nx-kacheln{grid-template-columns:none!important;grid-auto-columns:46vw!important;grid-template-rows:repeat(2,46vw)!important}}

/* ===== RUNDE nacht4 (01.10.2026, Michael): Kopfzeile so gross wie die alte Seite, Ueberschrift + Untertitel ohne Umbruch ===== */
:root body .bar{height:78px!important;min-height:78px!important;margin:0 auto -78px!important}
:root body .topbar{min-height:78px!important;padding:0!important;display:flex;align-items:center}
:root body :is(.bar,.topbar) .logo img{height:44px!important;width:auto!important}
:root body :is(.bar,.topbar) .barnav{gap:8px!important}
:root body :is(.bar,.topbar) .barnav a{font-size:.9375rem!important;font-weight:600!important;min-height:40px!important;padding:.45rem 1rem!important;border-radius:999px!important;background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.12)!important;opacity:1!important;color:var(--nx-ink)!important}
:root body :is(.bar,.topbar) .barnav a:hover{background:rgba(255,255,255,.13)!important;border-color:rgba(255,255,255,.25)!important}
:root body :is(.bar,.topbar) .barnav a[href="/fuer-veranstalter"]{border-color:transparent!important;padding:.45rem 1.15rem!important}
:root body .pagehead{padding-top:128px!important}
:root body .wrap>header:first-child h1,:root body .wrap>header:first-child .sub{max-width:none!important}
@media(min-width:1100px){
  :root body .wrap>header:first-child h1{font-size:min(3rem,3.25vw)!important;white-space:nowrap}
  :root body .wrap>header:first-child .sub{white-space:nowrap}
}
@media(max-width:734px){
  :root body .bar{height:64px!important;min-height:64px!important;margin-bottom:-64px!important}
  :root body .topbar{min-height:64px!important}
  :root body :is(.bar,.topbar) .logo img{height:38px!important}
  :root body :is(.bar,.topbar) .barnav.open a{font-size:1.0625rem!important;min-height:50px!important}
  :root body .pagehead{padding-top:104px!important}
}

/* ===== RUNDE nacht5 (01.10.2026, Michael, Zielgeraet MacBook 1440-1512) ===== */
/* 1. Start- und Themenseiten: volle Breite, seitlich 24-40px */
:root body .bar{max-width:none!important;padding-left:clamp(20px,2.5vw,40px)!important;padding-right:clamp(20px,2.5vw,40px)!important}
:root body:has(#list,#evlist) .wrap{max-width:none!important;padding-left:clamp(20px,2.5vw,40px)!important;padding-right:clamp(20px,2.5vw,40px)!important}
:root body .nx-panel{max-width:none!important}
:root body .mehr-ueber{max-width:1180px;margin-left:auto!important;margin-right:auto!important}
/* 2. Terminraster: am MacBook 4 Spalten */
@media(min-width:1200px){:root body .events{column-count:4!important}}
@media(min-width:1000px) and (max-width:1199px){:root body .events{column-count:3!important}}
/* 4. Filter: alles sichtbar (umbrechen statt abschneiden), Zaehler oben rechts im Panel */
@media(min-width:735px){
  :root body .nx-panel .topstats .tdays .chips{flex-wrap:wrap!important;overflow:visible!important}
  :root body .nx-panel .topstats .tdays .chip{min-height:38px!important;padding:0 15px!important;font-size:.875rem!important}
}
:root body .nx-panelkopf{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:22px}
:root body .nx-pk-text{min-width:0}
:root body .nx-pk-text :is(.band-sub){margin-bottom:0!important}
:root body .nx-pk-text h2.sec#themen{margin:6px 0 0!important}
:root body .nx-zaehler{display:flex!important;gap:12px;flex:0 0 auto}
:root body .nx-zaehler :is(.tstat,#nx-id){display:flex!important;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;min-width:168px;min-height:0!important;padding:12px 18px!important;border-radius:18px!important;background:rgba(255,255,255,.05)!important;border:1px solid rgba(255,255,255,.12)!important;text-decoration:none;box-shadow:none!important}
:root body .nx-zaehler #stSel{background:linear-gradient(110deg,rgba(255,122,26,.16),rgba(168,85,247,.14))!important;border-color:rgba(255,154,61,.4)!important}
:root body .nx-zaehler .tstat::before{content:"Gesamt";font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--nx-ink3)}
:root body .nx-zaehler #stSel::before{content:"In deiner Auswahl";color:#FFD2A8}
:root body .nx-zaehler .tstat>span{display:none!important}
:root body .nx-zaehler .tstat b{font-family:var(--nx-display)!important;font-size:1.75rem!important;font-weight:800!important;letter-spacing:-.02em;line-height:1.1;color:#fff!important;font-variant-numeric:tabular-nums}
@media(max-width:734px){
  :root body .nx-panelkopf{flex-direction:column;gap:14px;margin-bottom:16px}
  :root body .nx-zaehler{width:100%}
  :root body .nx-zaehler :is(.tstat,#nx-id){flex:1 1 0;min-width:0;padding:10px 14px!important}
  :root body .nx-zaehler .tstat b{font-size:1.4rem!important}
}
/* 5. Bundesland-Pillen mit Landesfahnen */
:root body .blflag{display:inline-block!important;width:22px;height:15px;border-radius:3px;object-fit:cover;margin-right:8px;flex:0 0 auto;box-shadow:0 0 0 1px rgba(255,255,255,.18)}
:root body .bl-auswahl.nx-bl .tmap .blcol>*{justify-content:flex-start!important;padding:0 12px!important}
@media(max-width:734px){:root body .bl-auswahl.nx-bl .tmap .blcol>*{padding:0 12px!important}}
/* 6. Deutschlandkarte, Variante B (Standard): Laender mit dezentem Orange-Violett-Verlauf */
:root body #deMap path{fill:url(#nxVerlauf) rgba(255,122,26,.18)!important;stroke:rgba(255,255,255,.55)!important;stroke-width:1.1!important}
:root body #deMap path:hover{fill:rgba(255,122,26,.62)!important;stroke:#FFD2A8!important}
:root body #deMap path.sel{fill:#FF7A1A!important;stroke:#FFE1C7!important;filter:drop-shadow(0 0 12px rgba(255,122,26,.8))}
/* Vergleichsvariante A (nur fuer das Vergleichsfoto, Klasse wird auf der Seite nie gesetzt): hell gefuellt */
:root.nx-karte-a body #deMap path{fill:rgba(245,245,247,.93)!important;stroke:#0D0B18!important;stroke-width:1!important}
:root.nx-karte-a body #deMap path:hover{fill:#FFB36B!important}
:root.nx-karte-a body #deMap path.sel{fill:#FF7A1A!important;stroke:#0D0B18!important}
/* 7. Beschreibung: nach 4 Zeilen abschneiden, "Weiterlesen" klappt auf */
:root body .ev .ev-desc{font-size:.9375rem;line-height:1.5;color:var(--nx-ink2);margin-top:10px;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
:root body .ev.nx-desc-offen .ev-desc{display:block;-webkit-line-clamp:unset}
:root body .ev .ev-mehr{align-self:flex-start;margin-top:6px;font-size:.875rem;font-weight:700;color:var(--nx-or2);cursor:pointer;position:relative;z-index:3;padding:4px 0;text-decoration:underline;text-underline-offset:3px}
:root body .ev .ev-mehr:hover{color:#fff}
:root body .ev .ev-mehr:focus-visible{outline:2px solid var(--nx-or);outline-offset:2px;border-radius:4px}
/* 8. Tageszeiten innerhalb eines Tages */
:root body .events:empty{display:none!important}
:root body h3.nx-tz{display:flex;align-items:center;gap:14px;margin:30px 0 14px;font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,"Helvetica Neue",Arial,system-ui,sans-serif!important;font-size:.8125rem!important;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#FFD2A8!important}
:root body h3.nx-tz::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,rgba(255,154,61,.5),rgba(168,85,247,.25),transparent)}
/* Karte + Laenderknoepfe zusammenhalten (volle Breite liess sie auseinanderlaufen) */
@media(min-width:735px){
  :root body .bl-auswahl.nx-bl .tmap{max-width:1080px;margin:8px auto 0!important;gap:28px!important}
  :root body .bl-auswahl.nx-bl .tmap .blcol{flex:0 0 230px!important;width:230px!important}
  :root body .bl-auswahl.nx-bl #deMap{max-width:440px!important}
  :root body .bl-auswahl.nx-bl #deMap svg{max-height:460px!important}
}

/* =====================================================================================================
   RUNDE nacht6 (01.10.2026, Michael: "Wir verkaufen keinen Leerraum, sondern Emotionen.")
   Abstaende etwa halbiert, nichts mittig verloren, Listen und Texte in Spalten, Fusszeile kompakt.
   ===================================================================================================== */
/* Kopf der Unterseiten: niedriger */
:root body .pagehead{padding:100px 22px 40px!important}
:root body .pagehead .lead,:root body .pagehead .lead.lead-kurz{margin-top:10px!important}
:root body .pagehead+.wrap{padding-top:8px!important}
:root body .nx-panel-thema{margin-top:8px!important}
/* Abschnittsabstaende */
:root body :is(h2.sec,h2.seclabel){margin-top:48px!important;margin-bottom:12px!important}
:root body h2#events.sec{margin-top:48px!important}
:root body h2.sec#themen{margin-top:0!important}
:root body :is(.abschnitt-sub,.band-sub,.invite-sub,p.pdzhint,p.nbhint){margin-bottom:20px!important}
:root body .day h2{margin:36px 0 12px!important}
:root body h3.nx-tz{margin:18px 0 10px!important}
:root body h2.bmon{margin-top:40px!important;margin-bottom:12px!important}
:root body .band-dunkel-innen{padding:48px 0 40px!important;margin-top:40px!important}
:root body .band-dunkel-innen .invite-sub{margin-bottom:24px!important}
:root body .mehr-ueber{margin-top:48px!important;padding:40px 44px!important}
:root body .pdz{margin-top:40px!important}
:root body>.wrap:has(>.mag),:root body>.wrap:has(>.ueber-grid){padding-top:24px!important;padding-bottom:24px!important}
:root body>.wrap:has(>.mag)+.wrap{padding-top:16px!important}
/* Kacheln dicht */
:root body .events{column-gap:14px!important}
:root body .events>.ev{margin-bottom:14px!important}
:root body .themen.nx-kacheln{gap:12px!important}
/* Unterseiten-Ueberschriften (Text-/Infoseiten): kompakt und links, nicht riesig mittig */
:root body:has(.prose) h2.sec,:root body:has(.steps) h2.sec{font-size:clamp(1.5rem,2.2vw,2rem)!important;text-align:left!important;margin:36px 0 10px!important}
:root body .prose p,:root body .prose li{max-width:none}
/* Stadtseiten: die Textbloecke nebeneinander statt untereinander */
@media(min-width:1000px){
  :root body .mag{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px!important;align-items:stretch}
  :root body .mag>.mblock{padding:32px 36px!important;margin:0!important}
}
:root body .mblock{padding:28px 30px!important}
/* Bundesland/Stadt: Seitentext ueber die ganze Breite in zwei Spalten, Terminliste zweispaltig */
:root body .seitentext{max-width:none!important}
@media(min-width:1100px){
  :root body .wrap>.seitentext{column-count:2;column-gap:40px}
  :root body .wrap>.seitentext p{break-inside:avoid}
  :root body .bliste{column-count:2;column-gap:32px}
  :root body .bliste .bev{break-inside:avoid;padding:12px 0!important}
}
/* Statische Seiten (Impressum, Datenschutz, AGB ...): breiter und zweispaltig statt schmaler Mittelspalte */
:root body>main#main{max-width:min(1360px,calc(100vw - 48px))!important;padding-top:24px!important;padding-bottom:24px!important}
@media(min-width:1100px){
  :root body>main#main{column-count:2;column-gap:56px}
  :root body>main#main>:is(h1,.crumb,nav,header,:first-child){column-span:all}
  :root body>main#main>:is(h2,h3){break-after:avoid;margin-top:18px}
  :root body>main#main>:is(p,address,ul,ol,div){break-inside:avoid}
}
/* Ueber uns / Fuer Veranstalter: Foto + Hervorhebung, Raster dichter */
:root body .ueber-grid{gap:14px!important;margin-bottom:8px}
:root body :is(.steps,.grid,.compare){gap:12px!important}
/* Werbung und Fusszeile: kompakt */
:root body .werbung{margin:24px auto 0!important}
:root body footer{margin-top:40px!important;padding:32px 22px 28px!important}
:root body footer>div:first-child{max-width:min(1360px,calc(100vw - 48px))!important}
:root body footer>div:first-child>p:first-child{margin-bottom:14px!important}
:root body footer>div:first-child>div{margin-bottom:14px!important;padding-top:4px!important;padding-bottom:4px!important}
:root body footer a[style*="background:#e9ebf1"]{padding:.5rem!important}
:root body footer a[style*="background:#e9ebf1"] img{width:44px!important;height:44px!important}
:root body footer img[src*="agent-ready"]{width:84px!important;height:auto!important}
:root body footer img[src*="werbung"],:root body footer a[href*="asmc"] img{max-height:150px!important;width:auto!important}
:root body .fuss-social{margin-top:12px!important}
/* Handy */
@media(max-width:734px){
  :root body .pagehead{padding:84px 18px 28px!important}
  :root body :is(h2.sec,h2.seclabel,h2#events.sec){margin-top:28px!important}
  :root body .day h2{margin:28px 0 10px!important}
  :root body .band-dunkel-innen{padding:32px 0 28px!important;margin-top:28px!important}
  :root body .mehr-ueber{margin-top:28px!important;padding:24px 18px!important}
  :root body .nx-panel{margin-top:24px!important}
  :root body .nx-panel-thema{margin-top:4px!important}
  :root body .nx-themen{margin-top:16px!important}
  :root body footer{margin-top:28px!important;padding:24px 16px!important}
  :root body .mblock{padding:22px 18px!important}
  :root body>main#main{padding-top:16px!important}
}
:root body footer img[src*="awin1"]{max-height:150px!important;width:auto!important}
:root body .mapframe{margin-top:8px!important}

/* 01.10.2026 Michael: Tagesliste zeilenweise lesen (links nach rechts, Uhrzeit aufsteigend), deutliche Tagestrenner */
:root body .events{column-count:auto!important;display:grid!important;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px!important;align-items:start}
:root body .events>.ev{margin:0!important;break-inside:auto}
:root body .day{margin-top:72px!important;padding-top:26px;border-top:4px solid transparent;border-image:linear-gradient(90deg,#ff7a1a,#ff2e88,#a855f7) 1}
:root body .day h2{margin-top:0!important}
:root body h3.nx-tz{font-size:.95rem!important;margin:34px 0 14px!important}

/* ===== 01.10.2026 Version A (Michael): Farben bleiben, nur Suchfelder weiss, Karte links gross, Laenderknoepfe rechts gross in zwei Spalten ===== */
:root body .nx-panel .searchbar input{background-color:#fff!important;color:#111!important;border:1px solid #dfe1e5!important;border-radius:999px!important;min-height:60px!important;font-size:1.06rem!important;font-weight:500!important;box-shadow:0 8px 28px rgba(0,0,0,.35)!important}
:root body .nx-panel .searchbar input::placeholder{color:#5f6368!important}
:root body .nx-panel .searchbar input:focus{outline:0!important;box-shadow:0 0 0 4px rgba(255,46,136,.35),0 8px 28px rgba(0,0,0,.35)!important}
:root body .nx-panel .bl-auswahl .tmap{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,.56fr) minmax(0,.56fr)!important;grid-auto-flow:row dense;column-gap:10px!important;row-gap:10px!important;align-items:center!important;margin-top:30px!important}
:root body .nx-panel .bl-auswahl .tmap .blcol{display:contents!important}
:root body .nx-panel .bl-auswahl .tmap .mapwrap{grid-column:1!important;grid-row:1 / span 9!important;width:auto!important;max-width:none!important;margin:0 30px 0 0!important;align-self:center}
:root body .nx-panel .bl-auswahl .tmap .mapwrap svg{width:100%!important;height:auto!important;max-height:600px}
:root body .nx-panel .bl-auswahl .tmap .chip{grid-column:auto;display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:14px!important;min-height:54px!important;padding:0 16px!important;border-radius:14px!important;font-size:1rem!important;font-weight:600!important;text-align:left!important;width:auto!important;margin:0!important}
:root body .nx-panel .bl-auswahl .tmap .chip[data-bl="ALL"]{grid-column:2 / span 2!important;justify-content:center!important;font-weight:700!important}
:root body .nx-panel .bl-auswahl .tmap .chip .blflag{width:36px!important;height:24px!important;border-radius:4px;object-fit:cover;flex:0 0 auto}
:root body .nx-panel .bl-auswahl .tmap .chip .bltxt{text-align:left!important}
/* "Nach Datum suchen" hervorgehoben */
:root body #dateChip{font-weight:700!important;color:#fff!important;border:2px solid transparent!important;background:linear-gradient(#1a1430,#1a1430) padding-box,var(--nx-knopf) border-box!important;box-shadow:0 0 22px -6px rgba(255,46,136,.7)!important}
:root body #dateChip #dateLabel::before{content:"";display:inline-block;width:16px;height:16px;margin:0 8px -2px 0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFD2A8' stroke-width='2'%3E%3Crect x='3' y='5' width='18' height='16' rx='3'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4'/%3E%3C/svg%3E") center/contain no-repeat}
:root body #dateChip.on{background:var(--nx-knopf)!important}
:root body #dateCal .nx-ok{display:block;width:100%;margin-top:10px;height:42px;border:0;border-radius:12px;background:var(--nx-knopf);color:#fff;font:700 .98rem -apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,"Helvetica Neue",Arial,system-ui,sans-serif;cursor:pointer;box-shadow:0 8px 24px -8px rgba(255,46,136,.8)}
:root body #dateCal .nx-ok:disabled{opacity:.4;cursor:default;box-shadow:none}
@media(max-width:820px){
  :root body .nx-panel .bl-auswahl .tmap{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
  :root body .nx-panel .bl-auswahl .tmap .mapwrap{grid-column:1 / -1!important;grid-row:auto!important;margin:0 auto 6px!important;max-width:380px!important;order:-1}
  :root body .nx-panel .bl-auswahl .tmap .chip[data-bl="ALL"]{grid-column:1 / -1!important}
  :root body .nx-panel .bl-auswahl .tmap .chip{min-height:50px!important;font-size:.92rem!important;padding:0 12px!important;gap:10px!important}
}

:root body .nx-panel .searchbar input#q,:root body .nx-panel .searchbar input#qo{background-color:#fff!important;color:#111!important;-webkit-text-fill-color:#111!important}
:root body .nx-panel .bl-auswahl .tmap .mapwrap #deMap{width:100%!important;max-width:none!important;height:auto!important}
:root body .nx-panel .bl-auswahl .tmap .mapwrap #deMap svg{width:100%!important;height:auto!important;max-height:620px!important}
:root body .ev .ev-zeile,:root body .ev-zeile{white-space:nowrap}

/* Kalender-Popup: Tage wieder dunkel, Auswahl im Knopfverlauf */
:root body #dateCal button{background:transparent!important;color:#fff!important;-webkit-text-fill-color:#fff!important;box-shadow:none!important}
:root body #dateCal button[disabled]{color:rgba(255,255,255,.25)!important;-webkit-text-fill-color:rgba(255,255,255,.25)!important}
:root body #dateCal button[data-tag]:not([disabled]):hover{background:rgba(255,255,255,.08)!important}
:root body #dateCal button[style*="rgba(255,177,60"]{background:rgba(255,122,26,.22)!important}
:root body #dateCal button[style*="var(--amber)"]{background:var(--nx-knopf)!important;border-color:transparent!important}
:root body #dateCal button[data-modus],:root body #dateCal button[data-loeschen]{border:1px solid var(--nx-line2)!important}
:root body #dateCal button.nx-ok{background:var(--nx-knopf)!important;box-shadow:0 8px 24px -8px rgba(255,46,136,.8)!important}
:root body #dateCal button.nx-ok:disabled{opacity:.4}
@media(max-width:820px){
  :root body .nx-panel .bl-auswahl .tmap{grid-auto-flow:row!important}
  :root body .nx-panel .bl-auswahl .tmap .chip{order:1!important}
  :root body .nx-panel .bl-auswahl .tmap .chip[data-bl="ALL"]{order:0!important}
  :root body .nx-panel .bl-auswahl .tmap .mapwrap{order:-1!important}
  :root body .nx-panel .bl-auswahl .tmap .chip .bltxt{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;line-height:1.2;font-size:.86rem}
  :root body .nx-panel .bl-auswahl .tmap .chip .blflag{width:30px!important;height:20px!important}
  :root body .nx-panel .bl-auswahl .tmap .chip{gap:8px!important;padding:0 10px!important}
}

/* 01.10.2026 Michael: keine Langkachel mehr (Firmenevents ist weg) - letzte Themenkachel wie alle anderen */
:root body .nx-kacheln .poster:last-child{grid-column:auto!important;grid-row:auto!important;aspect-ratio:16/10!important;height:auto!important;width:auto!important}
@media(max-width:1000px){:root body .nx-kacheln .poster:last-child{aspect-ratio:1/1!important}}

/* 01.10.2026 Michael: Kalenderfuss - Zuruecksetzen und Bestaetigen nebeneinander, Bestaetigen immer lesbar */
:root body #dateCal button[data-loeschen]:not(.nx-reset){display:none!important}
:root body #dateCal .nx-kalfuss{display:grid;grid-template-columns:1fr 1.5fr;gap:8px;margin-top:12px}
:root body #dateCal button.nx-reset{height:46px;border-radius:12px;border:1px solid var(--nx-line2)!important;font:600 .95rem -apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,"Helvetica Neue",Arial,system-ui,sans-serif;cursor:pointer;padding:0 10px}
:root body #dateCal button.nx-ok{margin:0!important;height:46px!important}
:root body #dateCal button.nx-ok:disabled{opacity:1!important;background:rgba(255,255,255,.1)!important;color:rgba(255,255,255,.75)!important;-webkit-text-fill-color:rgba(255,255,255,.75)!important}
/* Karte groesser */
:root body .nx-panel .bl-auswahl .tmap{grid-template-columns:minmax(0,1.25fr) minmax(0,.55fr) minmax(0,.55fr)!important}
:root body .nx-panel .bl-auswahl .tmap .mapwrap{margin:0 24px 0 0!important}
:root body .nx-panel .bl-auswahl .tmap .mapwrap #deMap svg{max-height:700px!important}

:root body .nx-panel .bl-auswahl .tmap{grid-template-columns:minmax(0,1.1fr) minmax(0,.6fr) minmax(0,.6fr)!important}
:root body .nx-panel .bl-auswahl .tmap .chip{gap:12px!important;padding:0 14px!important}
:root body .nx-panel .bl-auswahl .tmap .chip[data-bl="MV"] .bltxt{font-size:.94rem}

/* 01.10.2026 Michael: Datum+Uhrzeit passt nicht - Zeile darf umbrechen, Kacheln ohne Bild: Karte/Merken-Knoepfe nach unten rechts, Zeile volle Breite */
:root body .ev .ev-zeile,:root body .ev-zeile{white-space:normal!important;max-width:100%!important}
:root body .ev:not(.mitbild) .ev-zeile{margin-right:0!important;max-width:100%!important}
:root body .ev:not(.mitbild) :is(.kartebtn,.merkbtn){top:auto!important;bottom:18px!important}

/* 02.10.2026 Michael: KEINE Zeilenumbrueche durch schmale Spalten - Text nutzt die Bildschirmbreite. Muss am Ende der Datei bleiben. */
@media(min-width:861px){:root body .wrap,:root body .pdz,:root body .tmap{max-width:min(1760px,calc(100vw - 96px))!important}:root body p,:root body li,:root body h1,:root body h2,:root body h3,:root body .lead,:root body .nbhint{max-width:none!important;text-wrap:wrap!important}}

/* 02.10.2026 Michael: Themenkacheln 8 je Reihe (6 bis 1499px), hochkant, Zahl ueber der Beschriftung; Burger nur am Handy */
@media(min-width:1500px){:root body .themen.nx-kacheln{grid-template-columns:repeat(8,minmax(0,1fr))!important;gap:12px!important}}
@media(min-width:1200px) and (max-width:1499px){:root body .themen.nx-kacheln{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:12px!important}}
@media(min-width:735px) and (max-width:1199px){:root body .themen.nx-kacheln{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
@media(min-width:735px){:root body .nx-kacheln .poster,:root body .nx-kacheln .poster:last-child{aspect-ratio:2/3!important;border-radius:16px!important}}
:root body .nx-kacheln .poster{display:flex!important;flex-direction:column;justify-content:flex-end;align-items:flex-start;padding:0 12px 12px}
:root body .nx-kacheln .poster .cap,:root body .nx-kacheln .poster .nx-anz{position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;z-index:2}
:root body .nx-kacheln .poster .nx-anz{order:1;margin-bottom:6px;font-size:.6875rem;padding:4px 9px}
:root body .nx-kacheln .poster .cap{order:2;font-size:1rem!important;line-height:1.15}
@media(min-width:901px){:root body #burger{display:none!important}}

/* 02.10.2026 Michael: alle Terminkarten gleich gross (Bildflaeche immer da, Texte gekappt, Knoepfe unten) */
:root body .events{align-items:stretch!important}
:root body .events>.ev{display:flex!important;flex-direction:column!important;height:100%!important;position:relative}
:root body .events>.ev .evbild{display:block!important;height:150px!important;flex:0 0 150px!important;overflow:hidden}
:root body .events>.ev .evbild img{width:100%!important;height:100%!important;object-fit:cover!important}
:root body .events>.ev:not(.mitbild)::before{content:"";display:block;flex:0 0 150px;height:150px;background:radial-gradient(120% 120% at 15% 10%,rgba(255,122,26,.55),transparent 55%),radial-gradient(120% 120% at 90% 90%,rgba(168,85,247,.55),transparent 55%),#1a1530}
:root body .events>.ev .tx{display:flex!important;flex-direction:column!important;flex:1 1 auto!important}
:root body .events>.ev .tx h3{display:-webkit-box!important;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.3em}
:root body .events>.ev .tx .meta{display:-webkit-box!important;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.6em}
:root body .events>.ev .tx .ev-desc{display:-webkit-box!important;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
:root body .events>.ev .tx .ev-knoepfe{margin-top:auto!important;padding-top:14px}

/* 02.10.2026 Michael: Herz und Standort unten rechts uebereinander, nie ueber dem Datum */
:root body .events>.ev :is(.kartebtn,.merkbtn){position:absolute!important;top:auto!important;left:auto!important;right:14px!important;z-index:3}
:root body .events>.ev .merkbtn{bottom:18px!important}
:root body .events>.ev .kartebtn{bottom:64px!important}
:root body .events>.ev .tx .ev-knoepfe{padding-right:56px}

/* 02.10.2026 Michael (1907): "Ganz Deutschland" gewaehlt = die ganze Flaeche in der Auswahlfarbe, wie ein einzelnes Land */
:root body .tmap:has(.chip[data-bl="ALL"].on) #deMap path{fill:#FF7A1A!important;stroke:#FFE1C7!important}
:root body .tmap:has(.chip[data-bl="ALL"].on) #deMap svg{filter:drop-shadow(0 0 14px rgba(255,122,26,.55))}
/* 02.10.2026 Michael (1908): Themen-Knopf als eigener Kasten links an der Karte */
:root body .nx-themenkasten{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:26px 22px;border-radius:20px;text-decoration:none!important;color:var(--nx-ink,#F6F3FF)!important;background:linear-gradient(160deg,rgba(255,122,26,.20),rgba(168,85,247,.20));border:1px solid rgba(255,255,255,.16);transition:transform .15s,border-color .15s}
:root body .nx-themenkasten:hover{transform:translateY(-2px);border-color:rgba(255,122,26,.7)}
:root body .nx-themenkasten .nx-tk-icon{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,#FF7A1A,#A855F7);color:#fff}
:root body .nx-themenkasten .nx-tk-titel{font-size:1.25rem;line-height:1.2;font-weight:800}
:root body .nx-themenkasten .nx-tk-text{font-size:.95rem;line-height:1.45;color:var(--nx-ink2,#D9D4EA)}
:root body .nx-themenkasten .nx-tk-knopf{margin-top:4px;padding:10px 18px;border-radius:999px;font-weight:700;font-size:.95rem;color:#fff;background:linear-gradient(90deg,#FF7A1A,#E0337A,#A855F7)}
@media(min-width:1101px){
  :root body .nx-panel .bl-auswahl .tmap{grid-template-columns:minmax(200px,.42fr) minmax(0,1.1fr) minmax(0,.6fr) minmax(0,.6fr)!important}
  :root body .nx-panel .bl-auswahl .tmap .nx-themenkasten{grid-column:1!important;grid-row:1 / span 9!important;align-self:center;margin-right:6px}
  :root body .nx-panel .bl-auswahl .tmap .mapwrap{grid-column:2!important}
  :root body .nx-panel .bl-auswahl .tmap .chip[data-bl="ALL"]{grid-column:3 / span 2!important}
}
@media(max-width:1100px){
  :root body .nx-panel .bl-auswahl .tmap .nx-themenkasten{grid-column:1 / -1!important;grid-row:auto!important;order:-2!important;flex-direction:row;flex-wrap:wrap;align-items:center;padding:16px 18px;gap:10px 14px}
  :root body .nx-panel .bl-auswahl .tmap .nx-themenkasten .nx-tk-text{flex:1 1 240px}
  :root body .nx-panel .bl-auswahl .tmap .nx-themenkasten .nx-tk-icon{width:44px;height:44px}
}
/* 02.10.2026 Michael (1913): lange Seitentitel (z. B. "Veranstaltungen in Berlin und Umgebung") am Desktop in einer Zeile - die 24ch-Grenze (Zeile ~368) fiel unter die Breitenregel 1495 */
@media(min-width:861px){:root:root body .pagehead h1,:root:root body .pagehead.nx-lang h1{max-width:none!important}:root:root body .pagehead.nx-lang h1{font-size:clamp(2rem,.9rem + 2.6vw,3.3rem)!important}}
/* (1908b) Kasten gegen geerbte Chip-/Link-Regeln absichern */
:root body .nx-panel .tmap a.nx-themenkasten{background:linear-gradient(160deg,rgba(255,122,26,.22),rgba(168,85,247,.24))!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:20px!important;color:#F6F3FF!important;-webkit-text-fill-color:#F6F3FF!important;box-shadow:none!important;min-height:0!important;height:auto!important;width:auto!important;text-align:left!important;white-space:normal!important}
:root body .nx-panel .tmap a.nx-themenkasten .nx-tk-titel{color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:1.3rem!important}
:root body .nx-panel .tmap a.nx-themenkasten .nx-tk-text{color:#D9D4EA!important;-webkit-text-fill-color:#D9D4EA!important;font-size:.95rem!important}
:root body .nx-panel .tmap a.nx-themenkasten .nx-tk-knopf{color:#fff!important;-webkit-text-fill-color:#fff!important;white-space:nowrap!important}
@media(min-width:1101px){:root body .nx-panel .bl-auswahl .tmap{grid-template-columns:minmax(240px,.5fr) minmax(0,1.1fr) minmax(0,.6fr) minmax(0,.6fr)!important}}
/* (1908c/1915) Tablet: Karte links, "Ganz Deutschland" oben rechts, Themen-Kasten als Leiste darunter. Handy: Laenderknoepfe zweispaltig (die 3-Spalten-Regel weiter oben galt ohne Breitenbedingung und schnitt am Handy ab) */
@media(min-width:861px) and (max-width:1100px){
  :root body .nx-panel .bl-auswahl .tmap .mapwrap{order:-3!important}
  :root body .nx-panel .bl-auswahl .tmap .chip[data-bl="ALL"]{order:-1!important}
  :root body .nx-panel .bl-auswahl .tmap a.nx-themenkasten{order:99!important}
}
@media(max-width:860px){
  :root body .nx-panel .bl-auswahl .tmap{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
  :root body .nx-panel .bl-auswahl .tmap .mapwrap{grid-column:1 / -1!important;grid-row:auto!important;margin:0 auto 6px!important}
  :root body .nx-panel .bl-auswahl .tmap .chip[data-bl="ALL"]{grid-column:1 / -1!important}
}
/* (1914) Zurueck-Knopf und Nach-oben-Knopf */
:root body a.nx-zurueck{display:inline-flex!important;align-items:center;gap:8px;margin:0 0 14px!important;padding:8px 16px;border-radius:999px;font-size:.9rem;font-weight:600;text-decoration:none!important;color:#F6F3FF!important;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16)}
:root body a.nx-zurueck:hover{border-color:#FF7A1A;background:rgba(255,122,26,.14)}
:root body .pagehead a.nx-zurueck{display:flex!important;width:max-content;margin:0 auto 14px!important}
:root body .nx-nachoben{position:fixed;right:18px;bottom:18px;z-index:60;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:linear-gradient(135deg,#FF7A1A,#A855F7);color:#fff;font-size:22px;font-weight:700;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .2s;box-shadow:0 6px 20px rgba(0,0,0,.4)}
:root body .nx-nachoben.an{opacity:1;pointer-events:auto}
/* (1911) Handy: Burger auf ALLEN Seiten (Stadt-/Landseiten blendeten ihn per Seiten-CSS aus), Desktop-Navigation ab 861 px */
@media(max-width:860px){:root body .bar>button.burger{display:flex!important}}
@media(min-width:861px){:root body .bar>button.burger{display:none!important}:root body .bar .barnav{display:flex!important}}
/* (1916) Bildflaeche fuer Karten ohne Bild: die allgemeine .ev::before-Regel (Hover-Schein: absolut, unsichtbar) hat den Platzhalter verschluckt */
:root body .events>.ev:not(.mitbild)::before{position:relative!important;inset:auto!important;z-index:auto!important;opacity:1!important;pointer-events:none;border-radius:0!important;width:100%}
/* (1915) Handy: Laendernamen nicht abschneiden ("Niedersachse", "Mecklenburg-Vorpomm") - kleiner, mit Silbentrennung */
@media(max-width:430px){:root body .nx-panel .bl-auswahl .tmap .chip{gap:7px!important;padding:0 8px!important}:root body .nx-panel .bl-auswahl .tmap .chip .blflag{width:24px!important;height:16px!important}:root body .nx-panel .bl-auswahl .tmap .chip .bltxt{font-size:.8rem!important;hyphens:auto;-webkit-hyphens:auto;overflow-wrap:anywhere}}
/* (thema-kopf 02.10.2026, Michael: "Untertitel in eine Zeile, Navigation mit Zurueck zur Startseite links oben, Scrollen sparen")
   Unterseiten: Zurueck-Knopf + Brotkrumen in EINER Zeile links oben (.nx-kopfzeile, design.py _kopfzeile), H1 gross,
   Untertitel (h1-rest) + Zusatzzeile (lead-kurz) als eine Zeile (.nx-titel), Abstaende oben/unten kleiner */
:root:root body .nx-kopfzeile{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:8px 10px;align-self:stretch;width:100%;margin:0 0 2px!important;position:relative;z-index:3;text-align:left}
:root:root body .nx-kopfzeile a.nx-zurueck{display:inline-flex!important;width:auto!important;margin:0!important;padding:6px 14px;font-size:.85rem;line-height:1.2}
:root:root body .nx-kopfzeile .crumb{margin:0!important;font-size:.85rem;line-height:1.2;padding:6px 12px}
:root:root body .pagehead{padding:90px clamp(20px,2.5vw,40px) 10px!important;min-height:0!important}
:root:root body .pagehead h1{margin-top:6px!important}
:root:root body .pagehead .lead{margin-top:8px!important}
:root:root body .pagehead .nx-titel{position:relative;z-index:3;text-align:center;margin:6px auto 0;max-width:100%}
:root:root body .pagehead .nx-titel h1{display:inline!important;margin:0!important}
:root:root body .pagehead .nx-titel h1 .h1-rest::before{content:"\A";white-space:pre}
:root:root body .pagehead .nx-titel h1 .h1-rest{display:inline!important;margin:0!important;line-height:1.8}
:root:root body .pagehead .nx-titel .lead{display:inline!important;margin:0!important;font-size:clamp(1.05rem,1.4vw,1.25rem)!important;line-height:1.8;color:var(--nx-ink2)!important}
:root:root body .pagehead .nx-titel .lead::before{content:" · ";color:var(--nx-ink3)}
:root:root body .pagehead+.wrap{padding-top:0!important}
:root:root body .pagehead+.wrap>.zz{margin-top:12px!important}
:root:root body .hero .nx-kopfzeile{margin-bottom:6px!important}
@media(max-width:860px){
  :root:root body .pagehead{padding:76px 16px 6px!important}
  :root:root body .nx-kopfzeile{gap:6px 8px}
  :root:root body .nx-kopfzeile a.nx-zurueck{padding:5px 12px;font-size:.8rem}
  :root:root body .nx-kopfzeile .crumb{font-size:.8rem;padding:5px 10px}
  :root:root body .pagehead .nx-titel .lead{font-size:1rem!important}
}
/* (thema-panel 02.10.2026) Themenseiten: Panel wie Startseite - Unterthemen stehen jetzt unter dem Panel */
:root:root body .nx-panel-thema{margin-top:8px!important}
:root:root body .nx-panel-thema+h2.sec#themen,:root:root body h2.sec#themen{margin-top:28px!important}
/* (thema-panel 02.10.2026) der kleine Chip "Nach Themen stoebern" (suche-global.js) ist durch den Themenkasten an der Karte ersetzt */
:root:root body .nx-panel-thema .topstats .chip.themego{display:none!important}
@media(max-width:600px){:root:root body .nx-kopfzeile .nx-zk-lang{display:none}}

/* 03.10.2026 Michael: ueber-uns Zeitungslayout */
:root body .nx-ua{padding-top:92px;padding-bottom:20px}
:root body .nx-ua-art{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:32px;row-gap:18px;align-items:stretch}
:root body .nx-ua-foto{grid-column:1/5;grid-row:1/3;margin:0;position:relative;border-radius:24px;overflow:hidden;border:1px solid rgba(255,255,255,.12);min-height:420px;box-shadow:0 24px 60px rgba(0,0,0,.45)}
:root body .nx-ua-foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 20%;display:block;border:0;border-radius:0}
:root body .nx-ua-foto::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(14,11,28,.55));pointer-events:none}
:root body .nx-ua-kopf{grid-column:5/13;grid-row:1;display:flex;flex-direction:column;align-items:flex-start;padding-bottom:6px;border-bottom:1px solid var(--nx-line)}
:root body .nx-ua-kopf .crumb{display:inline-flex;gap:6px;padding:5px 12px;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid var(--nx-line);font-size:.75rem;text-transform:uppercase;letter-spacing:.14em;font-weight:700;color:var(--nx-ink3)}
:root body .nx-ua-kopf .crumb :is(a,span){color:var(--nx-ink3)!important}
:root body .nx-ua-kopf h1{font-family:var(--nx-display);font-size:clamp(2.4rem,4.6vw,4.4rem);line-height:.98;letter-spacing:-.04em;margin:14px 0 0;background:var(--nx-verlauf);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;text-align:left}
:root body .nx-ua-kopf .lead{color:var(--nx-ink2);font-size:clamp(1.05rem,1.5vw,1.3rem);line-height:1.45;margin:14px 0 0;text-align:left}
:root body .nx-ua-zitat{margin:16px 0 14px;padding:14px 20px;border-left:3px solid var(--nx-or);border-radius:0 18px 18px 0;background:rgba(255,255,255,.04);border-top:1px solid rgba(255,255,255,.12);border-right:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12);color:var(--nx-ink2);font-size:1.05rem;line-height:1.5}
:root body .nx-ua-zitat b{color:var(--nx-ink);font-family:var(--nx-display);font-weight:700}
:root body .nx-ua-spalten{grid-column:5/13;grid-row:2;display:grid;grid-template-columns:1.45fr 1fr 1fr;gap:0 28px;align-items:stretch}
:root body .nx-ua-sp{min-width:0;font-size:.95rem;line-height:1.55;color:var(--nx-ink2)}
:root body .nx-ua-sp+.nx-ua-sp{border-left:1px solid var(--nx-line);padding-left:28px}
:root body .nx-ua-kontakt{border:1px solid rgba(255,255,255,.14)!important;border-radius:22px;padding:20px 22px!important;background:linear-gradient(160deg,rgba(255,122,26,.16),rgba(255,46,136,.12) 55%,rgba(168,85,247,.16));display:flex;flex-direction:column}
:root body .nx-ua-k{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,"Helvetica Neue",Arial,system-ui,sans-serif!important;font-size:.75rem!important;font-weight:800;text-transform:uppercase;letter-spacing:.14em!important;color:var(--nx-or)!important;line-height:1.35;margin:0 0 10px!important}
:root body .nx-ua-sp p{margin:0 0 .7em;font-size:.95rem;line-height:1.55;color:var(--nx-ink2)}
:root body .nx-ua-ich p:first-of-type::first-letter{float:left;font-family:var(--nx-display);font-weight:800;font-size:3.6em;line-height:.85;padding:4px 10px 0 0;background:var(--nx-verlauf);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}
:root body .nx-ua-vers ul{list-style:none;margin:0;padding:0}
:root body .nx-ua-vers li{position:relative;padding:0 0 .7em 20px;font-size:.95rem;line-height:1.5;color:var(--nx-ink2)}
:root body .nx-ua-vers li::before{content:"";position:absolute;left:0;top:.5em;width:8px;height:8px;border-radius:50%;background:var(--nx-verlauf)}
:root body .nx-ua-tel{display:flex;flex-direction:column;gap:4px;font-family:var(--nx-display);font-size:1.15rem!important;font-weight:700}
:root body .nx-ua-tel a{color:var(--nx-ink);text-decoration:none;overflow-wrap:anywhere}
:root body .nx-ua-tel a:hover{text-decoration:underline}
:root body a.nx-ua-btn{display:inline-block;margin-top:auto;background:var(--nx-knopf);color:#fff;font-weight:800;padding:.75rem 1.3rem;border-radius:999px;text-decoration:none;box-shadow:0 10px 26px rgba(204,31,106,.35)}
:root body .nx-ua-kontakt p:last-child{margin:auto 0 0}
:root body .nx-ua-fuss{grid-column:1/13;display:flex;gap:18px;align-items:baseline;border-top:1px solid var(--nx-line);padding-top:12px;font-size:.85rem;color:var(--nx-ink3)}
:root body .nx-ua-fuss .nx-ua-k{margin:0!important;white-space:nowrap;color:var(--nx-ink3)!important}
:root body .nx-ua-fuss p{margin:0;font-size:.85rem;line-height:1.5;color:var(--nx-ink3)}
:root body .nx-ua-fuss a{color:var(--nx-ink2)}
@media(max-width:1100px) and (min-width:735px){:root body .nx-ua-spalten{grid-template-columns:1fr 1fr}:root body .nx-ua-ich{grid-column:1/3;border-bottom:1px solid var(--nx-line);padding-bottom:12px;margin-bottom:14px}:root body .nx-ua-vers{padding-left:0!important;border-left:0!important}}
@media(max-width:734px){
  :root body .nx-ua{padding-top:84px}
  :root body .nx-ua-art{display:block}
  :root body .nx-ua-foto{min-height:0;height:340px;margin-bottom:18px}
  :root body .nx-ua-kopf{margin-bottom:14px}
  :root body .nx-ua-kopf h1{font-size:clamp(2.1rem,10vw,2.8rem)}
  :root body .nx-ua-spalten{display:block}
  :root body .nx-ua-sp+.nx-ua-sp{border-left:0;padding-left:0;margin-top:18px}
  :root body .nx-ua-kontakt{padding:18px!important}
  :root body .nx-ua-sp+.nx-ua-kontakt{padding-left:18px!important}
  :root body .nx-ua-fuss{display:block;margin-top:18px}
  :root body .nx-ua-fuss .nx-ua-k{margin-bottom:6px!important;white-space:normal}
}

/* 03.10.2026 Michael: fuer-veranstalter beleben */
:root:root body .nx-fv-hero{text-align:center}
:root:root body .nx-fv-hero h1{font-family:var(--nx-display,inherit)!important;font-size:clamp(2.2rem,1rem + 4.2vw,4rem)!important;line-height:1.08!important;letter-spacing:-.02em;max-width:900px!important;margin:10px auto 0!important}
:root:root body .nx-fv-grad{background:linear-gradient(90deg,#FF7A1A,#FF2E88,#A855F7);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
:root:root body .nx-fv-hero .lead{max-width:720px;margin-left:auto!important;margin-right:auto!important}
:root:root body .nx-fv-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:22px auto 6px;max-width:900px}
:root:root body .nx-fv-chip{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--nx-ink2);font-size:.95rem}
:root:root body .nx-fv-chip b{color:var(--nx-or2);font-weight:800}
:root:root body .nx-fv-kicker{text-transform:uppercase;letter-spacing:.14em;color:var(--nx-or2);font-size:.78rem;font-weight:700;margin:44px 0 -2px}
:root:root body .nx-fv-kicker+h2.sec{margin-top:6px!important}
/* Timeline */
:root:root body .nx-fv-steps{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;position:relative;margin-top:22px}
:root:root body .nx-fv-steps::before{content:"";position:absolute;left:16%;right:16%;top:34px;height:3px;border-radius:3px;background:linear-gradient(90deg,#FF7A1A,#FF2E88,#A855F7);opacity:.7}
:root:root body .nx-fv-step{position:relative;text-align:center;background:linear-gradient(160deg,rgba(255,255,255,.06),rgba(255,255,255,.02))!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:22px!important;padding:0 20px 24px!important;margin:0!important}
:root:root body .nx-fv-step .num{position:relative;z-index:1;width:68px;height:68px;margin:0 auto 12px!important;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.9rem;font-weight:800;color:#fff!important;background:linear-gradient(135deg,#FF7A1A,#FF2E88,#A855F7)!important;box-shadow:0 0 0 6px var(--nx-bg,#07060D),0 8px 26px rgba(255,46,136,.35);transform:translateY(-4px)}
:root:root body .nx-fv-stic{display:inline-flex;width:44px;height:44px;border-radius:50%;align-items:center;justify-content:center;color:var(--nx-or2);margin-bottom:8px}
:root:root body .nx-fv-stic svg{width:28px;height:28px}
/* Karten */
:root:root body .nx-fv-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}
:root:root body .nx-fv-card{position:relative;background:linear-gradient(160deg,rgba(255,255,255,.07),rgba(255,255,255,.02))!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:22px!important;padding:22px!important;transition:transform .2s,border-color .2s,box-shadow .2s}
:root:root body .nx-fv-card:hover{border-color:rgba(255,154,61,.6)!important;transform:translateY(-3px);box-shadow:0 14px 34px rgba(255,122,26,.12)}
:root:root body .nx-fv-ic{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:rgba(255,122,26,.14);border:1px solid rgba(255,154,61,.4);color:var(--nx-or2);margin-bottom:12px}
:root:root body .nx-fv-ic svg{width:24px;height:24px}
/* Vergleich */
:root:root body .nx-fv-compare{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:stretch;margin-top:18px}
:root:root body .nx-fv-compare .plan{position:relative;background:linear-gradient(160deg,rgba(255,255,255,.06),rgba(255,255,255,.02))!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:24px!important;padding:28px 24px 24px!important}
:root:root body .nx-fv-compare .plan.featured{border:2px solid transparent!important;background:linear-gradient(#120E20,#120E20) padding-box,linear-gradient(135deg,#FF7A1A,#FF2E88,#A855F7) border-box!important;box-shadow:0 18px 50px rgba(168,85,247,.2);padding-top:40px!important}
:root:root body .nx-fv-band{position:absolute;top:-1px;left:50%;transform:translateX(-50%);padding:5px 18px;border-radius:0 0 12px 12px;background:linear-gradient(90deg,#FF7A1A,#FF2E88,#A855F7);color:#fff;font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
:root:root body .nx-fv-compare ul{list-style:none!important;padding:0!important;margin:14px 0 0!important}
:root:root body .nx-fv-compare li{display:flex;gap:10px;align-items:flex-start;padding:6px 0;list-style:none!important}
:root:root body .nx-fv-compare li::before,:root:root body .nx-fv-compare li::marker{content:none!important}
:root:root body .nx-fv-chk{flex:0 0 20px;margin-top:2px}
/* QR */
:root:root body .nx-fv-qr{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:40px;align-items:center;margin-top:10px}
:root:root body .nx-fv-qrart{display:flex;justify-content:center}
:root:root body .nx-fv-qrsvg{width:100%;max-width:320px;height:auto;filter:drop-shadow(0 12px 40px rgba(168,85,247,.3))}
/* Formular */
:root:root body form.nx-fv-form{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);border-radius:24px;padding:30px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px;margin-top:16px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
:root:root body form.nx-fv-form>*{grid-column:1/-1;min-width:0;margin-top:0;margin-bottom:0}
:root:root body form.nx-fv-form>.nx-fv-f{grid-column:span 1;display:flex;flex-direction:column;gap:6px}
:root:root body form.nx-fv-form>.nx-fv-f.nx-fv-full{grid-column:1/-1}
:root:root body form.nx-fv-form .nx-fv-f input,:root:root body form.nx-fv-form .nx-fv-f select,:root:root body form.nx-fv-form .nx-fv-f textarea{width:100%;box-sizing:border-box;margin:0}
:root:root body form.nx-fv-form .nx-fv-submit{background:var(--nx-knopf,linear-gradient(135deg,#FF7A1A,#FF2E88,#A855F7))!important;color:#fff!important;border:0!important;border-radius:999px!important;padding:14px 28px!important;font-weight:800;box-shadow:0 10px 30px rgba(255,46,136,.3)}
@media (max-width:734px){
:root:root body .nx-fv-steps{grid-template-columns:1fr;gap:26px}
:root:root body .nx-fv-steps::before{left:50%;right:auto;top:34px;bottom:60px;width:3px;height:auto;transform:translateX(-50%)}
:root:root body .nx-fv-compare{grid-template-columns:1fr}
:root:root body .nx-fv-qr{grid-template-columns:1fr;gap:24px}
:root:root body .nx-fv-qrsvg{max-width:240px}
:root:root body form.nx-fv-form{grid-template-columns:1fr;padding:20px 16px}
:root:root body form.nx-fv-form>.nx-fv-f{grid-column:1/-1}
:root:root body .nx-fv-grid{grid-template-columns:1fr}
:root:root body .nx-fv-hero h1{font-size:2.1rem!important}
}
/* 03.10.2026 Michael: ueber-uns - Pagehead-Marker fuer die Vorlagen-Nutzung (weihnachtsmaerkte.py) bleibt unsichtbar */
:root:root body .pagehead.nx-ua-ph{display:none!important}
/* 03.10.2026 Michael: fuer-veranstalter beleben (2) */
:root:root body .nx-fv-hero h1 .nx-fv-grad{background:linear-gradient(90deg,#FF7A1A,#FF2E88,#A855F7)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important;display:inline!important}
:root:root body form.nx-fv-form .nx-fv-f input,:root:root body form.nx-fv-form .nx-fv-f select,:root:root body form.nx-fv-form .nx-fv-f textarea{background-image:none!important;background-color:rgba(255,255,255,.05)!important;border:1px solid rgba(255,255,255,.16)!important;border-radius:14px!important;padding:13px 16px!important;height:auto!important;min-height:48px;font-size:1rem;color:var(--nx-ink)!important;box-shadow:none!important}
:root:root body form.nx-fv-form .nx-fv-f input:focus,:root:root body form.nx-fv-form .nx-fv-f select:focus,:root:root body form.nx-fv-form .nx-fv-f textarea:focus{border-color:rgba(255,154,61,.7)!important;outline:none!important;box-shadow:0 0 0 3px rgba(255,122,26,.18)!important}
:root:root body form.nx-fv-form>.btn:not(.nx-fv-submit){margin:0!important;display:flex;justify-content:center}
:root:root body .nx-fv-compare li{padding:3px 0}
/* 03.10.2026 Michael: ueber-uns Zeitungslayout, Runde 2 */
:root:root body .wrap.nx-ua{padding-top:96px!important;padding-bottom:12px!important}
:root:root body a.nx-ua-btn{display:block;text-align:center;border-radius:16px;padding:.7rem 1rem;font-size:.95rem;line-height:1.25}
@media(max-width:734px){:root:root body .wrap.nx-ua{padding-top:84px!important}}
/* 03.10.2026 Michael: fuer-veranstalter beleben (3) */
@media (max-width:734px){:root:root body .nx-fv-steps::before{display:none!important}}
/* 03.10.2026 Michael: fuer-veranstalter beleben (3) */
@media (max-width:734px){:root:root body .nx-fv-steps::before{display:none!important}}

/* 03.10.2026 Michael: Dauerzone und Mehr-Knopf (dauer.js) sind Kinder des Karten-Grids .events - sie standen als einzelne Grid-Zellen neben den Karten. Jetzt volle Breite, die Dauerzone ist selbst ein Grid mit denselben Spalten (alle 139 Themenseiten) */
:root body .events>.evmehr,:root body .events>.dauerzone{grid-column:1/-1!important;width:100%}
:root body .events>.dauerzone{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px;align-items:stretch;margin-top:24px;padding:18px 18px 24px;border-radius:24px;background:linear-gradient(180deg,rgba(168,85,247,.10),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.12);border-top:2px solid var(--nx-or,#FF7A1A)}
:root body .events>.dauerzone>.dauerkopf,:root body .events>.dauerzone>p{grid-column:1/-1!important}
:root body .events>.dauerzone>.dauerkopf{margin:0 0 4px!important;padding:6px 0 0!important;border:0!important}
:root body .events>.dauerzone .ev{margin:0!important}
:root body .events>.evmehr{margin:18px 0 6px!important}

/* ===== ZWEI LINKS (03.10.2026, Michael): Kacheln gleich gross, Bild ganz (Raender weich gefuellt), Datum nie im Bild,
   Herz und Ortsmarke neben dem Datum, zwei kleine leichte Knoepfe ohne Pfeil. Markup: design/karte.js ===== */
:root body .events .ev .evbild{position:relative;height:150px!important;flex:0 0 150px!important;background:#120f22!important;overflow:hidden}
:root body .events .ev .evbild::before{content:"";position:absolute;inset:-28px;background:var(--b,none) center/cover no-repeat;filter:blur(22px) brightness(.55)}
:root body .events .ev.mitbild .evbild::after{display:none!important}
:root body .events .ev .evbild img{position:relative;z-index:1;width:100%!important;height:100%!important;object-fit:contain!important}
:root body .events .ev:hover .evfoto{transform:none!important}
:root body .events .ev:not(.mitbild)::before{display:none!important}
:root body .events .ev:not(.mitbild) .tx .ev-desc{-webkit-line-clamp:9!important}
:root body .events .ev .ev-zeile,:root body .events .ev.mitbild .ev-zeile{margin:0 0 6px!important;padding:0 72px 0 0!important;max-width:100%!important;background:none!important;border:0!important;border-radius:0!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;color:#FFC15E!important;font-size:.8125rem!important;font-weight:700!important;white-space:normal!important;align-self:stretch!important;display:flex!important;align-items:center;min-height:32px;line-height:1.3!important;box-shadow:none!important}
:root body .events .ev h3,:root body .events .ev .meta{padding-right:0!important}
:root body .events .ev :is(.kartebtn,.merkbtn){position:absolute!important;bottom:auto!important;left:auto!important;width:32px!important;height:32px!important;background:transparent!important;border:0!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;color:var(--nx-ink2,#BDB7D3)!important;z-index:3}
:root body .events .ev :is(.kartebtn,.merkbtn):hover{background:rgba(255,255,255,.08)!important;color:#fff!important}
:root body .events .ev .merkbtn{right:12px!important}
:root body .events .ev .kartebtn{right:48px!important}
:root body .events .ev.mitbild :is(.kartebtn,.merkbtn){top:calc(150px + var(--zl-oben,12px))!important}
:root body .events .ev:not(.mitbild) :is(.kartebtn,.merkbtn){top:var(--zl-oben,12px)!important}
:root body .events .ev .tx .ev-knoepfe{display:flex!important;flex-wrap:wrap;align-items:center;gap:8px;margin-top:auto!important;padding:14px 0 0!important}
:root body .events .ev .ev-pill{display:inline-flex!important;align-items:center;min-height:32px!important;height:32px;padding:0 14px!important;border-radius:980px!important;font-size:.8125rem!important;font-weight:600!important;letter-spacing:0!important;box-shadow:none!important;white-space:nowrap;transition:background-color .15s,border-color .15s,color .15s}
:root:root:root:root body .events .ev .ev-pill.ev-pill::after{content:none!important}
:root body .events .ev .ev-pill-voll{background:transparent!important;color:var(--nx-ink,#F6F3FF)!important;border:1px solid rgba(255,255,255,.3)!important}
:root body .events .ev .ev-pill-ticket{background:rgba(255,122,26,.16)!important;color:#FF9A3D!important;border:1px solid transparent!important}
:root body .events a.ev:hover .ev-pill-voll{background:rgba(255,255,255,.08)!important;box-shadow:none!important}
:root body .events a.ev:hover .ev-pill-ticket{background:rgba(255,122,26,.28)!important}
:root body .events .ev .ev-pill-info{background:transparent!important;color:var(--nx-ink2,#BDB7D3)!important;border:1px solid rgba(255,255,255,.2)!important;font-weight:500!important;cursor:pointer;position:relative;z-index:3}
:root body .events .ev .ev-pill-info:hover{color:#fff!important;border-color:rgba(255,255,255,.45)!important}
:root body .events .ev .ev-pill-info:focus-visible{outline:2px solid var(--nx-or,#FF7A1A);outline-offset:2px}
:root body .events .ev .ev-kasse{font-size:.78rem;color:var(--nx-ink3,#8E88A8);line-height:1.3}
:root body .events .ev .nx-reihe{display:inline-flex!important;align-items:center;min-height:32px!important;height:32px;padding:0 14px!important;border-radius:980px!important;font-size:.8125rem!important;font-weight:500!important;background:transparent!important;color:var(--nx-ink2,#BDB7D3)!important;border:1px solid rgba(255,255,255,.2)!important;box-shadow:none!important;white-space:nowrap}
:root body .events .ev .nx-reihe:hover{color:#fff!important;border-color:rgba(255,255,255,.45)!important}
/* Textplakat fuer Kacheln ohne Veranstalterbild (karte.js plakat): gleiche Flaeche, Thema klein, Ort gross */
:root body .events .ev .evbild.evplakat{display:flex!important;flex-direction:column;justify-content:flex-end;gap:4px;padding:16px 18px!important;box-sizing:border-box;background:radial-gradient(120% 130% at 12% 0%,rgba(255,122,26,.50),transparent 58%),radial-gradient(110% 130% at 100% 100%,rgba(168,85,247,.45),transparent 60%),#1a1530!important}
:root body .events .ev .evbild.evplakat.evp1{background:radial-gradient(120% 130% at 100% 0%,rgba(255,46,136,.42),transparent 58%),radial-gradient(110% 130% at 0% 100%,rgba(255,122,26,.40),transparent 60%),#1a1530!important}
:root body .events .ev .evbild.evplakat.evp2{background:radial-gradient(120% 130% at 0% 100%,rgba(168,85,247,.50),transparent 58%),radial-gradient(110% 130% at 100% 0%,rgba(255,193,94,.34),transparent 60%),#16132b!important}
:root body .events .ev .evbild.evplakat.evp3{background:radial-gradient(130% 130% at 50% 0%,rgba(255,154,61,.42),transparent 60%),radial-gradient(110% 130% at 50% 120%,rgba(255,46,136,.36),transparent 60%),#1a1530!important}
:root body .events .ev .evbild.evplakat::before{display:none!important}
:root body .events .ev .evplakat .evp-thema{position:relative;z-index:1;font-size:.72rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:rgba(255,255,255,.78);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
:root body .events .ev .evplakat .evp-ort{position:relative;z-index:1;font-size:clamp(1.35rem,1.1rem + 1vw,1.9rem);font-weight:800;line-height:1.08;letter-spacing:-.02em;color:#fff;overflow-wrap:anywhere;hyphens:auto;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
/* Alle Kacheln gleich hoch (Michael 03.10.): ab zwei Spalten feste Mindesthoehe = volle Kachel (Bild, Titel 2 Zeilen, Ort 2 Zeilen, Preis, 3 Zeilen Text, Knoepfe) */
@media(min-width:700px){:root body .events .ev{min-height:var(--zl-hoch,462px)}}
/* Kompakt (Michael 03.10. 16:30: "Die Kacheln wirken sehr leer, alles naeher zusammen"): engere Abstaende, Ort einzeilig, kleinere Schrift im Text */
:root body .events .ev .tx{padding:12px 16px 14px!important;gap:0!important}
:root body .events .ev .ev-zeile,:root body .events .ev.mitbild .ev-zeile{margin:0 0 2px!important}
:root body .events .ev .tx h3{font-size:1.0625rem!important;line-height:1.25!important;min-height:2.5em!important;margin:0 0 4px!important}
:root body .events .ev .tx .meta{-webkit-line-clamp:1!important;min-height:0!important;margin:0 0 4px!important;font-size:.875rem!important;line-height:1.4!important}
:root body .events .ev .tx .price{margin:0 0 4px!important;padding:0!important;font-size:.875rem!important;line-height:1.4!important}
:root body .events .ev .tx .ev-desc{margin:2px 0 0!important;font-size:.875rem!important;line-height:1.45!important}
:root body .events .ev .tx .ev-mehr{margin-top:2px!important;padding:2px 0!important;font-size:.8125rem!important}
:root body .events .ev .tx .ev-knoepfe{padding:10px 0 0!important}
:root body .events .ev .evbild.evplakat{padding:12px 16px!important}

/* KARTE-HOEHER (Michael 04.10.2026): auf dem Laptop zu breit/flach - Deutschland braucht mehr Hoehe */
@media (min-width:900px){:root body #map{height:clamp(600px,44vw,780px)!important}}

/* 04.10.2026 Michael (ui3): "Weiterlesen"/"Weniger" taten sichtbar nichts - die Klemm-Regeln fuer .events .ev .tx .ev-desc (3 bzw. 9 Zeilen, !important) standen nach der Aufklapp-Regel und hielten den Text zu. Aufgeklappt gilt jetzt immer. */
:root body .ev.nx-desc-offen .tx .ev-desc,:root body .events .ev.nx-desc-offen .tx .ev-desc,:root body .events>.ev.nx-desc-offen .tx .ev-desc,:root body .events .ev.nx-desc-offen:not(.mitbild) .tx .ev-desc{display:block!important;-webkit-line-clamp:unset!important;line-clamp:none!important;max-height:none!important;overflow:visible!important}
/* 04.10.2026 Michael (ui3): Zahlen ueber dem Kasten "Nach Themen stoebern" (nur Monitor) - gespiegelt aus dem Zaehler oben, live bei Kartenauswahl */
:root body .nx-tkspalte{display:contents}
:root body .nx-kz{display:none}
@media(min-width:1101px){
  :root body .nx-panel .bl-auswahl .tmap .nx-tkspalte{display:flex;flex-direction:column;gap:14px;grid-column:1!important;grid-row:1 / span 9!important;align-self:center;margin-right:6px;min-width:0}
  :root body .nx-panel .bl-auswahl .tmap .nx-tkspalte .nx-themenkasten{margin-right:0}
  :root body .nx-kz{display:grid;grid-template-columns:1fr 1fr;gap:10px}
  :root body .nx-kz .nx-kz-z{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border-radius:18px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.05);text-decoration:none!important;color:#F6F3FF!important;min-width:0}
  :root body .nx-kz a.nx-kz-z{border-color:rgba(255,122,26,.55);background:linear-gradient(160deg,rgba(255,122,26,.16),rgba(168,85,247,.16))}
  :root body .nx-kz .nx-kz-z b{font-family:var(--nx-display)!important;font-size:1.6rem;font-weight:800;line-height:1.1;letter-spacing:-.02em;color:#fff!important;font-variant-numeric:tabular-nums}
  :root body .nx-kz .nx-kz-z span{font-size:.8125rem;line-height:1.3;color:#D9D4EA!important}
  :root body .nx-kz .nx-kz-z.nx-kz-neu b{animation:nxKzBlink .6s ease}
}
@keyframes nxKzBlink{0%{color:#FF7A1A}100%{color:#fff}}
@media(prefers-reduced-motion:reduce){:root body .nx-kz .nx-kz-z.nx-kz-neu b{animation:none}}

/* (ui3b) Zahlenkasten gegen die geerbten Link-/Chip-Regeln der Karte (.tmap a: weisser Grund) absichern */
@media(min-width:1101px){
  :root body .nx-panel .tmap .nx-kz .nx-kz-z{background:rgba(255,255,255,.05)!important;border:1px solid rgba(255,255,255,.16)!important;border-radius:18px!important;box-shadow:none!important;padding:12px 14px!important;min-height:0!important;color:#F6F3FF!important;-webkit-text-fill-color:#F6F3FF!important;text-decoration:none!important}
  :root body .nx-panel .tmap .nx-kz a.nx-kz-z{background:linear-gradient(160deg,rgba(255,122,26,.22),rgba(168,85,247,.22))!important;border-color:rgba(255,122,26,.6)!important}
  :root body .nx-panel .tmap .nx-kz a.nx-kz-z:hover{border-color:#FF7A1A!important}
  :root body .nx-panel .tmap .nx-kz .nx-kz-z b{color:#fff!important;-webkit-text-fill-color:#fff!important}
  :root body .nx-panel .tmap .nx-kz .nx-kz-z span{color:#D9D4EA!important;-webkit-text-fill-color:#D9D4EA!important;font-size:.8125rem!important;line-height:1.3!important}
}

/* 05.10.2026 Michael: Zaehler oben rechts weg (Monitor), links die beiden Zahlen uebereinander; Karte 1 cm hoeher (630 -> 670 px) kartev4 */
@media(min-width:1101px){
  :root body .nx-zaehler{display:none!important}
  :root body .nx-kz{grid-template-columns:1fr!important}
  :root body .nx-panel .bl-auswahl .tmap .mapwrap{margin:0 0 0 -8px!important;overflow:visible!important;width:496px!important;min-width:496px!important}
  :root body .nx-panel .bl-auswahl .tmap .mapwrap #deMap{width:auto!important;overflow:visible!important}
  :root body .nx-panel .bl-auswahl .tmap .mapwrap #deMap svg{max-height:none!important;height:670px!important;width:auto!important;max-width:none!important}
}

/* 05.10.2026 Michael: Ergebniskarte hoeher, weniger Schwarz bis zum ersten Tages-Trennstrich ergkarte-v1 */
:root body #events.mapframe{height:clamp(440px,36vw,600px)!important;min-height:0!important}
:root body #events.mapframe #map{height:100%!important}
:root body #auswahlZeile{margin-bottom:0!important}
:root body #suchzone:empty{display:none!important}
:root body #list{margin-top:8px!important;padding-top:0!important}
:root body #list>.day:first-child{margin-top:0!important}

/* 05.10.2026 Michael: Terminliste einer Reihe direkt in der ersten Karte reihe-liste-v1 */
:root body .nx-reihe-liste{display:flex;flex-direction:column;gap:6px;width:100%;margin-top:10px}
:root body .nx-reihe-liste .nx-reihe-termin{display:block;padding:8px 12px;border-radius:12px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);font-size:.875rem;font-weight:600;color:#fff!important;cursor:pointer}
:root body .nx-reihe-liste .nx-reihe-termin:hover{border-color:#FF7A1A;background:rgba(255,122,26,.18)}

/* 05.10.2026 Michael: Kartenfenster mit Kachel popkarte-v1 */
:root body .leaflet-popup-content:has(.nx-popkarte){margin:0!important;width:270px!important}
:root body .leaflet-popup-content-wrapper:has(.nx-popkarte){padding:0!important;border-radius:20px!important;overflow:hidden;background:#15121f!important}
:root body .nx-popkarte a.ev{display:flex!important;flex-direction:column;width:270px!important;max-width:270px!important;height:auto!important;min-height:0!important;margin:0!important;border-radius:0!important;box-shadow:none!important;text-decoration:none!important}
:root body .nx-popkarte a.ev .evbild{height:140px!important;min-height:0!important;flex:0 0 140px}
:root body .nx-popkarte a.ev .evbild img{width:100%!important;height:140px!important;object-fit:cover}
:root body .nx-popkarte a.ev .tx{padding:12px 14px 14px!important;height:auto!important}
:root body .nx-popkarte a.ev h3{font-size:1rem!important;line-height:1.25!important;margin:4px 0!important;color:#fff!important}
:root body .nx-popkarte a.ev :is(.kartebtn,.merkbtn,.ev-desc,.ev-mehr){display:none!important}
:root body .nx-popkarte a.ev .ev-knoepfe{position:static!important;margin-top:10px!important}

/* 05.10.2026 popkarte-v2: kompakter, ein Knopf, keine Altbau-Zusaetze */
:root body .nx-popkarte a.ev .evbild{height:110px!important;flex:0 0 110px}
:root body .nx-popkarte a.ev .evbild img{height:110px!important}
:root body .nx-popkarte a.ev .tx{padding:10px 14px 12px!important}
:root body .nx-popkarte a.ev .meta{font-size:.85rem!important;line-height:1.3!important}
:root body .nx-popkarte .ev-pill::after,:root body .nx-popkarte .ev-pill::before,:root body .nx-popkarte a.ev::after{content:none!important;display:none!important}
:root body .nx-popkarte .ev-pill-hotel{display:none!important}
:root body .nx-popkarte .ev-knoepfe{display:flex!important;gap:8px;margin-top:8px!important}
:root body .nx-popkarte .ev-pill{min-height:34px!important;height:34px!important;padding:0 16px!important;font-size:.875rem!important}

/* 05.10.2026 Michael: Schrift wie Apple (Systemschrift) schrift-apple-v1 */
:root body :is(h1,h2,h3){font-weight:700!important;letter-spacing:-.022em!important}
:root body h1{letter-spacing:-.03em!important}


/* 05.10.2026 Michael: Themenkacheln im Ursprungsformat der Bilder (2:3, Originalbild), Schatten nur ganz unten hinter der Schrift poster-23-v2 */
:root body .nx-kacheln .poster,:root body .nx-kacheln .poster:last-child{aspect-ratio:2/3!important;height:auto!important;min-height:0!important}
:root body .nx-kacheln .poster img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:50% 0!important}
:root body .nx-kacheln .poster::after{background:linear-gradient(180deg,rgba(7,6,13,0) 68%,rgba(7,6,13,.82) 100%)!important}

/* mehr-ueber-v2 (05.10.2026, Michael: 'grafisch eine Katastrophe'): eine Lesespalte statt zwei ungleicher, Zahlen als ruhiger Kasten */
:root body .mehr-ueber>*{max-width:760px!important}
:root body .mehr-ueber .seitentext,:root body .wrap.mehr-ueber>.seitentext{column-count:1!important;columns:auto!important;max-width:760px!important;margin:28px 0 0!important}
:root body .mehr-ueber .lead-rest{font-size:1.25rem!important;line-height:1.5!important;color:var(--nx-ink)!important;margin:0 0 20px!important}
:root body .mehr-ueber .kopfdaten{font-size:.9375rem!important;line-height:1.6!important;margin:0!important;padding:16px 20px!important;border:1px solid var(--nx-line);border-radius:16px;background:rgba(255,255,255,.04)}
:root body .mehr-ueber .seitentext p{font-size:1.0625rem!important;line-height:1.7!important;margin:0 0 18px!important}
@media(max-width:700px){:root body .mehr-ueber{padding:36px 22px!important}}

/* kacheln-raster-v1 (05.10.2026, Michael): Unterthemen-Kacheln alle zeigen statt nach rechts scrollen */
:root body .themen.themen-leiste{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(168px,1fr))!important;gap:14px!important;overflow:visible!important;flex-wrap:unset!important;padding:2px 0 10px!important;scroll-snap-type:none!important}
:root body .themen-leiste .poster,:root body .themen.themen-leiste .poster{flex:none!important;width:auto!important;min-width:0!important;height:auto!important;aspect-ratio:2/3!important}
@media(max-width:700px){:root body .themen.themen-leiste{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}
  :root body .themen-leiste .poster .cap{font-size:.8125rem!important;left:8px;right:8px;bottom:8px}}
:root body #evlist .empty{grid-column:1/-1;max-width:560px}

/* JAHRES-CHIPS DEZENT HELL (Michael 06.10.2026, Bildschirmfoto 2026/2027: "eine leichte Farbe, dezent") */
:root body .topstats .tdays .chip[data-day^="y"]:not(.on){background:rgba(255,255,255,.14)!important;border-color:rgba(255,255,255,.28)!important;color:#fff!important}
:root body .topstats .tdays .chip[data-day^="y"]:not(.on):hover{background:rgba(255,255,255,.22)!important}
/* TERMINLISTE DER REIHE (06.10.2026): Datum fett, Ort normal, "Tickets" rechts */
:root body .nx-reihe-liste .nx-reihe-termin{display:flex!important;align-items:center;gap:6px;font-weight:500!important}
:root body .nx-reihe-liste .nx-reihe-termin b{font-weight:700}
:root body .nx-reihe-liste .nx-reihe-termin .nx-rt-go{margin-left:auto;color:var(--nx-or,#FF7A1A);font-weight:700;white-space:nowrap}

/* mehr-ueber-v3 (06.10.2026 Michael, /electronic: "Text unten ist nur fuer Google - breit ausspielen, kein Zeilenbruch, wenig scrollen"):
   volle Breite, auf dem Desktop drei Textspalten, kleinere Schrift, weniger Abstand - ersetzt die 760px-Lesespalte aus v2 */
:root body .mehr-ueber>*{max-width:none!important}
:root body .mehr-ueber{padding:28px 32px!important;margin-top:28px!important}
:root body .mehr-ueber h2#mehr-ueber{font-size:1.5rem!important;margin:0 0 12px!important}
:root body .mehr-ueber .kopfdaten{display:inline-block;padding:10px 14px!important;font-size:.875rem!important;margin:0 0 14px!important}
:root body .mehr-ueber .seitentext,:root body .wrap.mehr-ueber>.seitentext{max-width:none!important;margin:0!important;column-count:3!important;column-gap:36px!important}
:root body .mehr-ueber .seitentext p{font-size:.9375rem!important;line-height:1.55!important;margin:0 0 10px!important;break-inside:avoid}
:root body .mehr-ueber .lead-rest{font-size:1rem!important;margin:0 0 10px!important}
@media(max-width:1000px){:root body .mehr-ueber .seitentext{column-count:2!important}}
@media(max-width:700px){:root body .mehr-ueber{padding:22px 18px!important}:root body .mehr-ueber .seitentext{column-count:1!important}}

/* SOCIAL-LEISTE WIE KIPODE (Michael 06.10.2026: "Social Media unten ist eine Katastrophe - wie auf kipode.de, richtige Symbole,
   mobil fest unten, darf nicht hochlaufen"). design.css versteckt .soc-bar (html body) - hier mit :root body ueberstimmt. */
:root body .soc-bar{display:flex!important;position:fixed!important;right:5.4rem!important;bottom:1rem!important;left:auto!important;top:auto!important;z-index:9000!important;flex-direction:row!important;gap:.55rem!important;align-items:center!important;background:rgba(20,16,38,.92)!important;padding:.4rem .55rem!important;border-radius:999px!important;border:1px solid rgba(255,255,255,.14)!important;box-shadow:0 6px 24px rgba(0,0,0,.35)!important;transform:none!important}
:root body .soc-bar .soc-btn{width:34px!important;height:34px!important;border-radius:50%!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:0!important;border:0!important;color:#fff!important;transition:transform .2s;filter:none!important;opacity:1!important}
:root body .soc-bar .soc-btn:hover{transform:scale(1.12)}
:root body .soc-bar .soc-btn svg{width:16px!important;height:16px!important;fill:#fff!important}
:root body .soc-bar .soc-btn img{width:100%!important;height:100%!important;border-radius:50%!important;display:block;filter:none!important;opacity:1!important}
:root body .soc-bar .soc-wa{background:#25d366!important}
:root body .soc-bar .soc-fb{background:#1877f2!important}
:root body .soc-bar .soc-x{background:#333!important}
:root body .soc-bar .soc-li{background:#0a66c2!important}
:root body .soc-bar .soc-ig{background:linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888)!important}
:root body .fuss-social{display:none!important}
/* Handy: volle Leiste fest am unteren Rand, direktes Kind von body, keine Transform/kein backdrop-filter (iOS-Drift) */
@media (max-width:900px){
  :root body .soc-bar{left:0!important;right:0!important;bottom:0!important;top:auto!important;justify-content:center!important;gap:1.1rem!important;background:#0B1026!important;padding:.55rem 0 calc(.55rem + env(safe-area-inset-bottom))!important;border-radius:0!important;border:0!important;border-top:1px solid rgba(255,255,255,.14)!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
  :root body .soc-bar .soc-btn{width:36px!important;height:36px!important}
  :root body{padding-bottom:calc(3.6rem + env(safe-area-inset-bottom))!important}
  :root body .nx-nachoben{bottom:calc(4.2rem + env(safe-area-inset-bottom))!important}
  :root body:has(.barnav.open) .soc-bar,:root body:has(#barnav[aria-expanded="true"]) .soc-bar{display:none!important}
}

/* MOBIL-FEHLER 06.10.2026 01:14 (Michael, iPhone): 1) Themenkacheln auf der Startseite ueberlappten - die 2-Zeilen-Scrollleiste hatte
   feste Zeilen (46vw), die Kacheln aber 2:3 (69vw) -> Zeilen folgen jetzt der Kachelhoehe. 2) Nach-oben-Knopf stand in der Social-Leiste. */
@media (max-width:900px){
  :root body .themen.nx-kacheln{grid-template-rows:repeat(2,auto)!important;grid-auto-rows:auto!important;align-items:start}
  :root body .nx-kacheln .poster{height:auto!important;min-height:0!important}
  :root body .nx-nachoben,:root body button[aria-label="Nach oben"],:root body [aria-label*="Seitenanfang" i]{bottom:calc(4.4rem + env(safe-area-inset-bottom))!important}
}

/* Teilen-Knopf (06.10.2026) + "Nach Themen stoebern" am Handy ans Ende des Auswahlblocks (Michael 01:22: "mittendrin stoert") */
:root body .soc-bar .soc-share{background:linear-gradient(135deg,#FF7A1A,#FF2E88)!important}
:root body .soc-bar .soc-share svg{fill:none!important;stroke:#fff}
:root body .soc-bar .soc-btn.copied::after{content:"Link kopiert";position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);padding:.3rem .6rem;border-radius:8px;background:#fff;color:#000;font-size:.75rem;font-weight:700;white-space:nowrap}
@media(max-width:1100px){:root body .nx-panel .bl-auswahl .tmap .nx-themenkasten{order:99!important}}

/* 06.10.2026 01:30 Michael: Startseite bot "Nach Themen stoebern" doppelt (Kasten direkt ueber den Kacheln) - am Handy auf der Startseite weg */
@media(max-width:1100px){:root body .nx-panel .bl-auswahl .tmap .nx-themenkasten[href="#nx-themen-h"]{display:none!important}}
