:root{--schwarz:#0b0b0b;--rot:#890101;--rot-hell:#b81414;--hell:#f0f0fa;--text-hell:#e4e2e2;--text-dunkel:#1c1c1c;--grau:#6a6a72;--serif:"Times New Roman", Times, Georgia, serif;--sans:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--breite:60rem;--rand:1rem}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--hell);color:var(--text-dunkel);font-family:var(--sans);font-size:1.0625rem;line-height:1.65}img{max-width:100%;height:auto;display:block}a{color:var(--rot)}a:hover,a:focus-visible{color:var(--rot-hell)}:focus-visible{outline:3px solid var(--rot-hell);outline-offset:2px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.skip-link{position:absolute;left:-9999px;background:var(--schwarz);color:#fff;padding:.75rem 1rem;z-index:100}.skip-link:focus{left:0;top:0}.site-header{background:var(--hell);padding:1rem var(--rand);text-align:center}.brand img{margin:0 auto;width:auto;max-height:72px}.site-nav{background:var(--schwarz);position:sticky;top:0;z-index:50}.nav-inner{max-width:var(--breite);margin:0 auto;padding:0 var(--rand)}.nav-toggle{display:none;background:0 0;border:1px solid #555;border-radius:3px;padding:.55rem .7rem;margin:.6rem 0;cursor:pointer}.nav-toggle-bar{display:block;width:22px;height:2px;background:var(--text-hell);margin:4px 0}.nav-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.25rem 1.25rem;justify-content:center}.nav-list>li{position:relative}.nav-list a{display:block;padding:.85rem .25rem;color:var(--text-hell);text-decoration:none;font-family:var(--serif);letter-spacing:2px;text-transform:uppercase;font-size:.9rem}.nav-list a:hover,.nav-list a:focus-visible,.nav-list .is-active>a{color:var(--rot-hell)}.sub-list{list-style:none;margin:0;padding:0 0 .5rem 1rem}.sub-list a{text-transform:none;letter-spacing:1px;font-size:.875rem;padding:.5rem .25rem}@media(min-width:48em){.sub-list{position:absolute;left:0;top:100%;min-width:15rem;background:var(--schwarz);padding:.25rem .75rem .75rem;border-top:2px solid var(--rot);display:none}.has-sub:hover .sub-list,.has-sub:focus-within .sub-list{display:block}}@media(max-width:47.99em){.js .nav-toggle{display:block}.js .nav-list{display:none;flex-direction:column;align-items:stretch;gap:0;padding-bottom:.75rem}.js .nav-list.is-open{display:flex}.nav-list a{padding:.7rem 0}}.buehne{background:#000 url(/images/bg_final.jpg)50%/cover no-repeat;display:grid;place-items:center;padding:3rem var(--rand);min-height:60vh}.buehne-inner{max-width:44rem;text-align:center;color:var(--text-hell)}.tanzarten{list-style:none;margin:0 0 2.5rem;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem 1.75rem}.tanzarten a{color:#fff;text-decoration:none;font-family:var(--serif);font-size:clamp(1.1rem,1rem + 1.2vw,1.75rem);letter-spacing:2px;text-shadow:0 2px 8px rgba(0,0,0,.85)}.tanzarten a:hover,.tanzarten a:focus-visible{color:#ffd9d9;text-decoration:underline}.zitat{margin:0;font-family:var(--serif);text-shadow:0 2px 10px rgba(0,0,0,.9)}.zitat p{font-size:clamp(1.05rem,.95rem + .8vw,1.5rem);font-style:italic;margin:0 0 .75rem}.zitat footer{font-size:.95rem;letter-spacing:2px;opacity:.85}.inhalt{max-width:var(--breite);margin:0 auto;padding:2.5rem var(--rand)3rem}.inhalt h1{font-family:var(--serif);font-size:clamp(1.6rem,1.3rem + 1.6vw,2.4rem);letter-spacing:2px;margin:0 0 1.5rem;color:var(--schwarz)}.inhalt h2{font-family:var(--serif);font-size:1.3rem;letter-spacing:1px;margin:2rem 0 .75rem}.inhalt p{margin:0 0 1.1rem}.start-info{padding-top:2rem}.start-cta{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}.button{display:inline-block;background:var(--rot);color:#fff;text-decoration:none;padding:.8rem 1.4rem;border-radius:2px;font-family:var(--serif);letter-spacing:2px}.button:hover,.button:focus-visible{background:var(--rot-hell);color:#fff}.button-sekundaer{background:0 0;color:var(--rot);border:1px solid var(--rot)}.button-sekundaer:hover,.button-sekundaer:focus-visible{background:var(--rot);color:#fff}.schnupper{margin-top:2rem;padding:1rem 1.25rem;background:#fff;border-left:4px solid var(--rot)}.termin{display:grid;gap:1.5rem;margin:0 0 2.5rem;padding:0 0 2rem;border-bottom:1px solid #ddd9e6}@media(min-width:40em){.termin{grid-template-columns:minmax(0,15rem)minmax(0,1fr);gap:2rem;align-items:start}}.termin-plakat{display:block;max-width:15rem;margin:0 auto;box-shadow:0 2px 12px rgba(0,0,0,.18)}.termin-plakat img{width:100%;height:auto}.termin-text h2{margin-top:0;color:var(--rot);font-size:clamp(1.3rem,1.1rem + 1vw,1.8rem)}.termin-unter{margin:-.5rem 0 1rem;color:var(--grau);font-style:italic}.termin-wann{font-size:1.1rem;margin-bottom:1rem}.termin-details{display:grid;grid-template-columns:max-content 1fr;gap:.35rem 1rem;margin:0 0 1.25rem;font-size:.95rem}.termin-details dt{font-weight:600;color:var(--grau)}.termin-details dd{margin:0}@media(max-width:28em){.termin-details{grid-template-columns:1fr;gap:.1rem}.termin-details dd{margin-bottom:.6rem}}.rueckblick{margin-top:3rem;padding-top:1.5rem;border-top:2px solid var(--rot)}.rueckblick>h2{margin-top:0;letter-spacing:2px;text-transform:uppercase;font-size:1.05rem;color:var(--grau)}.termin-vergangen .termin-plakat{max-width:11rem;opacity:.85}.termin-vergangen .termin-plakat:hover,.termin-vergangen .termin-plakat:focus-visible{opacity:1}.termin-vergangen .termin-text h3{margin-top:0;font-family:var(--serif);font-size:1.25rem;letter-spacing:1px;color:var(--text-dunkel)}.termin-vergangen .termin-wann{font-size:1rem;color:var(--grau)}@media(min-width:40em){.termin-vergangen{grid-template-columns:minmax(0,11rem)minmax(0,1fr)}.termin-ohne-plakat,.termin-vergangen.termin-ohne-plakat{grid-template-columns:minmax(0,1fr)}}.kurs-liste{list-style:none;margin:1.5rem 0 0;padding:0;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr))}.kurs-liste a{display:block;background:#fff;padding:1.1rem 1.25rem;text-decoration:none;border-left:4px solid var(--rot);color:var(--text-dunkel)}.kurs-liste a:hover,.kurs-liste a:focus-visible{background:#fff6f6}.kurs-name{display:block;font-family:var(--serif);font-size:1.15rem;letter-spacing:1px;color:var(--rot)}.kurs-kurz{display:block;font-size:.925rem;color:var(--grau);margin-top:.25rem}.plan{display:grid;gap:1rem;grid-template-columns:1fr;margin-top:1.5rem}@media(min-width:56em){.plan{grid-template-columns:repeat(5,1fr);gap:.75rem}}.plan-tag{background:#fff;border-top:3px solid var(--rot);padding:.9rem 1rem 1.1rem}.plan-tag h2{margin:0 0 .75rem;font-size:1.05rem;letter-spacing:2px;text-transform:uppercase;color:var(--rot)}.plan-tag ul{list-style:none;margin:0;padding:0;display:grid;gap:.85rem}.plan-tag li{display:grid;gap:.1rem;padding-bottom:.75rem;border-bottom:1px solid #eceaf2}.plan-tag li:last-child{border-bottom:0;padding-bottom:0}.plan-zeit{font-variant-numeric:tabular-nums;font-size:.875rem;color:var(--grau)}.plan-kurs{font-weight:600}.plan-gruppe{font-size:.9rem;color:var(--grau)}.plan-leer{margin:0;color:var(--grau);font-style:italic;font-size:.9rem}.galerie{list-style:none;margin:1.5rem 0 0;padding:0;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fill,minmax(9rem,1fr))}.galerie a{display:block;overflow:hidden;background:#ddd}.galerie img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .25s ease}.galerie a:hover img,.galerie a:focus-visible img{transform:scale(1.04)}.lightbox{border:0;padding:0;background:0 0;max-width:100vw;max-height:100vh}.lightbox::backdrop{background:rgba(0,0,0,.9)}.lightbox img{max-width:92vw;max-height:82vh;width:auto;margin:0 auto}.lightbox-zu,.lightbox-nav button{position:fixed;background:rgba(0,0,0,.6);color:#fff;border:0;font-size:2rem;line-height:1;width:3rem;height:3rem;cursor:pointer}.lightbox-zu{top:1rem;right:1rem}.lightbox-nav button{top:50%;transform:translateY(-50%)}.lightbox-nav button[data-richtung="-1"]{left:.5rem}.lightbox-nav button[data-richtung="1"]{right:.5rem}.site-footer{background:var(--schwarz);color:var(--text-hell);padding:2rem var(--rand);margin-top:2rem}.footer-inner{max-width:var(--breite);margin:0 auto;display:grid;gap:1.5rem}@media(min-width:40em){.footer-inner{grid-template-columns:1fr auto;align-items:start}}.site-footer a{color:#e8c8c8}.site-footer a:hover,.site-footer a:focus-visible{color:#fff}.footer-nav{display:flex;flex-wrap:wrap;gap:1rem}@media print{.site-nav,.site-footer,.skip-link,.start-cta{display:none}body{background:#fff}.plan{grid-template-columns:repeat(5,1fr)}}