:root{--weiss:#fff;--tinte:#2b2b2b;--schwarz:#000;--grau:#6b6b6b;--rahmen:#8a8a8a;--balken:#8f8f8f;--linie:#ebebeb;--flaeche:#f6f6f6;--koralle:#c94848;--font:"Plus Jakarta Sans", -apple-system, system-ui, sans-serif}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%}body{font-family:var(--font);background:var(--weiss);color:var(--tinte);flex-direction:column;min-height:100svh;display:flex;overflow-x:hidden}#app{flex-direction:column;flex:1;display:flex}main{background:var(--weiss);flex:1;width:100%}:focus-visible{outline:3px solid var(--tinte);outline-offset:3px}.rahmen{max-width:1120px;margin-inline:auto;padding-inline:24px}nav{top:env(safe-area-inset-top,0px);z-index:10;-webkit-backdrop-filter:saturate(180%)blur(18px);backdrop-filter:saturate(180%)blur(18px);background:#ffffffeb;position:sticky}nav .rahmen{justify-content:space-between;align-items:center;min-height:64px;display:flex}.logo{letter-spacing:-.04em;color:var(--tinte);font-size:19px;font-weight:800;text-decoration:none}.logo span{color:var(--koralle)}.nav-link{font:inherit;color:var(--tinte);cursor:pointer;border:1px solid var(--rahmen);background:0 0;border-radius:999px;padding:8px 18px;font-size:15px;font-weight:600;text-decoration:none}.nav-link:hover{border-color:var(--tinte)}.kopf{background:var(--weiss);color:var(--tinte);padding-block:56px 24px}.kopf-inner{flex-direction:column;align-items:flex-start;gap:20px;display:flex}.kopf-label{letter-spacing:.12em;text-transform:uppercase;color:var(--grau);font-size:12px;font-weight:700;line-height:1.4}.kopf h1{letter-spacing:-.05em;text-wrap:balance;max-width:14em;font-size:46px;font-weight:800;line-height:1.02}.kopf h1 em{color:var(--koralle);font-style:normal}.kopf-satz{color:var(--grau);max-width:34em;font-size:17px;line-height:1.7}@media (width>=760px){.rahmen{padding-inline:40px}.kopf{padding-block:112px 40px}.kopf h1{font-size:64px}}@media (width>=1100px){.kopf h1{font-size:76px}}footer{background:var(--weiss);color:var(--grau);border-top:1px solid var(--linie);margin-top:48px;padding-block:40px}footer .rahmen{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;display:flex}.f-links{flex-wrap:wrap;gap:8px 24px;font-size:15px;list-style:none;display:flex}.f-links a{color:var(--grau);text-decoration:none}.f-links a:hover{color:var(--tinte)}.f-copy{width:100%;padding-top:8px;font-size:13px;line-height:1.6}.abschnitt{padding-block:clamp(3rem,8vw,6rem)}.formular-abschnitt{background:var(--weiss)}.schmal,.breit{max-width:1120px;margin-inline:auto;padding-inline:24px}.label{letter-spacing:.12em;text-transform:uppercase;color:var(--grau);margin-bottom:1rem;font-size:12px;font-weight:700}.abschnitt h2{letter-spacing:-.045em;margin-bottom:1rem;font-size:clamp(1.9rem,4vw,2.75rem);font-weight:800;line-height:1.08}.abschnitt h2:focus{outline:none}.abschnitt h2:focus-visible{outline:3px solid var(--tinte);outline-offset:4px}.text{color:var(--grau);max-width:44em;font-size:1.05rem;line-height:1.75}.text.klein{font-size:.95rem}form{flex-direction:column;gap:2.25rem;margin-top:3rem;display:flex}fieldset{border:0;min-width:0}.feld{flex-direction:column;gap:.6rem;display:flex}.feld-reihe{flex-direction:column;gap:2.25rem;display:flex}.feld>label,.feld>legend,.eigene>legend{color:var(--tinte);font-size:1rem;font-weight:700;line-height:1.4}.freiwillig{color:var(--grau);font-weight:400}.feld-hinweis{color:var(--grau);font-size:.95rem;line-height:1.5}select,input[type=text],input[type=date],input[type=email],textarea{font:inherit;color:var(--tinte);background:var(--weiss);border:1px solid var(--rahmen);appearance:none;border-radius:14px;width:100%;min-height:3.25rem;padding:.8rem 1.1rem;font-size:1rem}input[type=date]{min-width:0;display:block}select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M3 6l5 5 5-5' stroke='%232B2B2B' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 1.1rem center;background-repeat:no-repeat;padding-right:2.75rem}textarea{resize:vertical;min-height:7rem;line-height:1.6;display:block}select:hover,input[type=text]:hover,input[type=date]:hover,input[type=email]:hover,textarea:hover{border-color:var(--tinte)}select:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--tinte);outline-offset:2px}input[aria-invalid=true],select[aria-invalid=true],[aria-invalid=true]{border:2px solid var(--tinte);box-shadow:inset 4px 0 0 var(--koralle)}.feld-fehler{color:var(--tinte);font-size:.95rem;font-weight:700;line-height:1.5}.feld-fehler:before{content:"! ";color:var(--koralle)}.fehler-zusammenfassung{border-left:3px solid var(--koralle);color:var(--tinte);padding:.25rem 0 .25rem 1rem;font-weight:700}.eigene{flex-direction:column;gap:1.25rem;display:flex}.eigene>legend{margin-bottom:.35rem}.termin-karte{border-top:1px solid var(--linie);flex-direction:column;gap:1.25rem;padding-top:1.5rem;display:flex}.termin-karte>legend{float:left;letter-spacing:.12em;text-transform:uppercase;width:100%;color:var(--grau);font-size:12px;font-weight:700}.termin-karte>legend+*{clear:both}.auswahl-optionen{flex-wrap:wrap;gap:.5rem;display:flex}.auswahl-option{background:var(--weiss);border:1px solid var(--rahmen);cursor:pointer;border-radius:999px;align-items:center;gap:.6rem;min-height:2.9rem;padding:.6rem 1.1rem;font-weight:600;display:inline-flex}.auswahl-option:has(input:checked){border:2px solid var(--tinte);padding:calc(.6rem - 1px) calc(1.1rem - 1px)}.auswahl-option input{width:1.2rem;height:1.2rem;accent-color:var(--tinte);margin:0}.schalter{cursor:pointer;align-items:flex-start;gap:.85rem;font-size:1rem;font-weight:600;line-height:1.5;display:flex}.schalter input{width:1.5rem;height:1.5rem;accent-color:var(--tinte);flex:none;margin-top:.05rem}.btn{background:var(--tinte);color:var(--weiss);font:inherit;cursor:pointer;border:0;border-radius:999px;align-self:flex-start;padding:1rem 1.9rem;font-size:1rem;font-weight:700;text-decoration:none;transition:background .15s;display:inline-block}.btn:hover{background:var(--schwarz)}.btn:disabled{background:var(--linie);color:var(--tinte);cursor:default}.button-zweit,.btn-leise,.btn-hell{font:inherit;color:var(--tinte);background:var(--weiss);border:1px solid var(--rahmen);cursor:pointer;border-radius:999px;min-height:48px;padding:0 22px;font-size:16px;font-weight:600;transition:border-color .15s}.button-zweit{align-self:flex-start}.btn-hell{min-height:0;padding:1rem 1.6rem}.button-zweit:hover,.btn-leise:hover,.btn-hell:hover{border-color:var(--tinte)}.monat-nav .btn-leise:disabled{visibility:hidden}.btn-leise:disabled{color:var(--grau);border-color:var(--linie);cursor:default}.text-button{font:inherit;color:var(--tinte);cursor:pointer;text-underline-offset:.2em;background:0 0;border:0;align-self:flex-start;padding:.25rem 0;font-size:.95rem;font-weight:600;text-decoration:underline}.wrap{max-width:1120px;margin-inline:auto;padding-inline:24px}.stapel{flex-direction:column;align-items:stretch;gap:18px;display:flex}.stapel-klein{flex-direction:column;gap:8px;display:flex}.sek{padding-top:72px}.sek-ende{padding-bottom:48px}.lab,.lab-hell{letter-spacing:.12em;text-transform:uppercase;color:var(--grau);font-size:12px;font-weight:700;line-height:1.4}.h1{letter-spacing:-.05em;font-size:40px;font-weight:800;line-height:1.05}.h1 em{color:var(--koralle);font-style:normal}.h1:focus{outline:none}.h1:focus-visible{outline:3px solid var(--tinte);outline-offset:4px}.h2{letter-spacing:-.035em;font-size:28px;font-weight:800;line-height:1.15}.titel{letter-spacing:-.01em;color:var(--tinte);font-size:17px;font-weight:500;line-height:1.4;display:block}.fliess{color:var(--tinte);max-width:44em;font-size:16px;font-weight:400;line-height:1.7}.fliess-hell{color:var(--grau);max-width:520px}.meta,.meta-hell{color:var(--grau);max-width:44em;font-size:15px;font-weight:400;line-height:1.6}.knopfreihe{flex-wrap:wrap;align-items:center;gap:12px 16px;display:flex}.knopfreihe .btn,.knopfreihe .btn-hell,.knopfreihe .btn-leise{align-self:auto}.ergebnis-kopf{background:var(--weiss);color:var(--tinte);padding:48px 0 8px}.ergebnis-kopf .stapel{align-items:flex-start;gap:22px}.liste{list-style:none}.zeile-statisch{flex-direction:column;gap:4px;padding:16px 0;display:flex}.liste>.zeile-statisch+.zeile-statisch{border-top:1px solid var(--linie)}.tage{border-top:1px solid var(--linie);flex-direction:column;max-width:860px;margin-top:32px;display:flex}.tag{border-bottom:1px solid var(--linie);flex-direction:column;gap:10px;padding:24px 0 26px;display:flex}.tag-datum{align-items:baseline;gap:12px;font-weight:400;display:flex}.tag-zahl{letter-spacing:-.045em;color:var(--tinte);font-variant-numeric:tabular-nums;font-size:34px;font-weight:800;line-height:1}.tag-zahl-akzent{color:var(--koralle)}.tag-zusatz{color:var(--grau);flex-wrap:wrap;gap:0 6px;font-size:14px;line-height:1.45;display:flex}.tag-wochentag{color:var(--tinte);font-weight:600}.tag-bis:before{content:"·";color:var(--grau);margin-right:6px}.tag-offen{letter-spacing:-.01em;color:var(--tinte);font-size:15px;font-weight:700;line-height:1.4}.reihen{flex-direction:column;gap:6px;min-width:0;list-style:none;display:flex}.reihe-kopf{text-align:left;width:100%;font:inherit;color:inherit;background:0 0;border:0;justify-content:space-between;align-items:center;gap:16px;padding:8px 0;display:flex}button.reihe-kopf{cursor:pointer}button.reihe-kopf:hover .reihe-titel{text-underline-offset:4px;text-decoration:underline;text-decoration-thickness:1px}.reihe-text{flex-direction:column;gap:3px;min-width:0;display:flex}.reihe-label{letter-spacing:.1em;text-transform:uppercase;color:var(--grau);overflow-wrap:anywhere;font-size:11px;font-weight:700;line-height:1.5}.reihe-label-akzent{color:var(--koralle)}.reihe-titel{letter-spacing:-.015em;color:var(--tinte);text-wrap:pretty;font-size:17px;font-weight:600;line-height:1.4}.reihe-notiz{color:var(--grau);max-width:40em;font-size:15px;line-height:1.6}.reihe-detail{flex-direction:column;gap:22px;max-width:40em;padding:6px 0 22px;display:flex}.detail-block{flex-direction:column;align-items:flex-start;gap:10px;display:flex}.detail-titel{letter-spacing:-.015em;color:var(--tinte);font-size:17px;font-weight:600;line-height:1.4}.einstieg{color:var(--tinte);border-left:2px solid var(--linie);padding-left:16px;font-size:16px;line-height:1.7}.format-zeile{color:var(--grau);align-items:center;gap:8px;font-size:14px;line-height:1.5;display:flex}.format-symbol{flex:none}.pfeil{color:var(--grau);flex:none;margin-top:3px;transition:transform .2s}.pfeil.offen{transform:rotate(180deg)}.aufzaehlung{flex-direction:column;gap:6px;list-style:none;display:flex}.aufzaehlung li{gap:10px;display:flex}.aufzaehlung li:before{content:"";background:var(--grau);border-radius:50%;flex:none;width:5px;height:5px;margin-top:11px}.luecke{background:var(--linie);color:var(--tinte);-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:4px;padding:0 3px}.punkt{border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}.punkt-eigen{background:var(--koralle)}.punkt-leer{background:0 0}.legende{align-items:center;gap:8px;display:flex}.band-scroll{margin-inline:-24px;padding:8px 24px 4px;overflow-x:auto}.band{gap:4px;min-width:560px;display:grid}.band-monat{font:inherit;cursor:pointer;background:0 0;border:0;border-radius:12px;flex-direction:column;align-items:center;gap:10px;min-height:44px;padding:0 0 6px;display:flex}.band-saeule{justify-content:center;align-items:flex-end;width:100%;height:96px;display:flex}.band-balken{background:var(--balken);border-radius:5px;width:10px;display:block}.band-name{letter-spacing:.04em;color:var(--grau);white-space:nowrap;font-size:12px;font-weight:600}.band-monat.aktiv .band-balken{background:var(--tinte);border-radius:7px;width:14px}.band-monat.aktiv .band-name{color:var(--tinte);font-weight:800}.band-monat:hover .band-balken{background:var(--tinte)}.monat-nav{justify-content:space-between;gap:8px;margin-top:40px;display:flex}.angebot{border-top:1px solid var(--linie);flex-direction:column;align-items:flex-start;gap:12px;padding-top:22px;display:flex}.angebot-titel{letter-spacing:-.03em;font-size:22px;font-weight:800;line-height:1.2}.angebot-titel:focus{outline:none}.angebot form{flex-direction:column;align-items:flex-start;gap:16px;width:100%;max-width:560px;margin-top:4px;display:flex}.angebot .feld{width:100%}.angebot .schalter input{margin-top:.2rem}.kanaele{grid-template-columns:1fr;gap:32px;margin-top:8px;list-style:none;display:grid}.kanal{border-top:1px solid var(--linie);flex-direction:column;gap:14px;padding-top:18px;display:flex}.kanal-liste{flex-direction:column;gap:16px;list-style:none;display:flex}.kanal-liste li{flex-direction:column;gap:4px;display:flex}.kanal-zeitplaene{border-top:2px solid var(--tinte);margin-top:16px;padding-top:18px}@media (width>=760px){.kanaele{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 48px}}.rueckmeldung{border-top:1px solid var(--linie);flex-direction:column;align-items:flex-start;gap:18px;padding-top:56px;display:flex}.rueckmeldung h3{letter-spacing:-.035em;font-size:28px;font-weight:800;line-height:1.15}.rueckmeldung .label{margin-bottom:0}.rueckmeldung form{flex-direction:column;align-items:flex-start;gap:16px;width:100%;max-width:560px;margin-top:8px;display:flex}.rueckmeldung .feld{width:100%}.btn-leise[aria-pressed=true]{background:var(--tinte);color:var(--weiss);border-color:var(--tinte)}.anmeldung{border-top:1px solid var(--linie);flex-direction:column;align-items:flex-start;gap:18px;padding-top:56px;display:flex}.anmeldung .label{margin-bottom:0}.anmeldung h3{letter-spacing:-.035em;font-size:28px;font-weight:800;line-height:1.15}.anmeldung .text{color:var(--tinte);font-size:16px;line-height:1.7}.anmeldung .text.klein{color:var(--grau);font-size:15px}.anmeldung form{flex-direction:column;align-items:flex-start;gap:20px;width:100%;margin-top:8px;display:flex}.anmeldung .feld{width:100%}.einwilligung{color:var(--grau);font-size:15px;font-weight:400;line-height:1.65}.einwilligung a{color:var(--tinte);font-weight:700}.anmeldung .schalter input{margin-top:.2rem}@media (width>=700px){.sek{padding-top:96px}.h1{font-size:64px}.h2{font-size:36px}.ergebnis-kopf{padding:96px 0 8px}.tag{grid-template-columns:128px minmax(0,1fr);column-gap:24px;padding:28px 0 30px;display:grid}.tag-datum{flex-direction:column;align-items:flex-start;gap:8px;padding-top:4px}.tag-zahl{font-size:44px}.tag-zusatz{flex-direction:column}.tag-bis:before{content:none}.tag-offen{padding-top:10px}.band-scroll{margin-inline:0;padding:8px 0 0;overflow:visible}.band{min-width:0}}@media (width>=760px){.schmal,.breit,.wrap{padding-inline:40px}}@media (width>=900px){.feld-reihe{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:.6rem 32px;display:grid}@supports (grid-template-rows:subgrid){.feld-reihe{grid-template-rows:repeat(4,auto)}.feld-reihe>.feld{grid-template-rows:subgrid;grid-row:span 4;row-gap:.6rem;display:grid}.feld-reihe>.feld>label{align-self:end}}.termin-karte{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:1.25rem 32px;display:grid}.termin-karte>legend,.termin-karte>.feld-fehler,.termin-karte>.text-button{grid-column:1/-1}.termin-karte>.text-button{justify-self:start}.liste{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:48px;display:grid}.liste>.zeile-statisch+.zeile-statisch{border-top:0}}@media (width>=1000px){.anmeldung{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px 96px;display:grid}.anmeldung>*{grid-column:1}.anmeldung>form{grid-area:1/2/span 4;margin-top:0}}.poster{display:none}@media print{@page{size:A4 landscape;margin:10mm}html,body{min-height:0;display:block;background:var(--weiss)!important}#app{display:block}#app>:not(.poster){display:none!important}.poster{height:188mm;color:var(--tinte);font-family:var(--font);-webkit-print-color-adjust:exact;print-color-adjust:exact;flex-direction:column;gap:5mm;display:flex}.poster-kopf{border-bottom:.4mm solid var(--tinte);justify-content:space-between;align-items:flex-end;padding-bottom:3mm;display:flex}.poster-verein{letter-spacing:-.03em;font-size:22pt;font-weight:800;line-height:1.1}.poster-titel{color:var(--tinte);font-size:12pt;font-weight:700}.poster-meta{color:var(--grau);font-size:9pt}.poster-raster{flex:1;grid-template-rows:repeat(2,1fr);grid-template-columns:repeat(6,1fr);gap:3mm 5mm;display:grid}.poster-monat{border-top:.3mm solid var(--linie);padding:2.5mm 0;overflow:hidden}.poster-monatsname{letter-spacing:-.02em;font-size:12pt;font-weight:800}.poster-leitmotiv{letter-spacing:.1em;text-transform:uppercase;color:var(--grau);margin-bottom:1.5mm;font-size:6.5pt;font-weight:700}.poster-monat ul{flex-direction:column;gap:1.2mm;list-style:none;display:flex}.poster-zeile{gap:1.5mm;font-size:7.5pt;line-height:1.3;display:flex}.poster-zeile b{font-weight:700}.poster-marke{border-radius:50%;flex:none;width:2mm;height:2mm;margin-top:.9mm;display:inline-block}.poster-eigen .poster-marke,.poster-eigen-m{background:var(--koralle)}.poster-wichtig .poster-marke,.poster-wichtig-m{background:var(--tinte)}.poster-ferien .poster-marke{background:var(--linie);border-radius:.5mm}.poster-beitrag .poster-marke,.poster-beitrag-m{border:.35mm solid var(--tinte)}.poster-fuss{color:var(--grau);flex-wrap:wrap;align-items:center;gap:2mm 6mm;font-size:8pt;display:flex}.poster-legende{align-items:center;gap:1.5mm;display:inline-flex}.poster-legende .poster-marke{margin-top:0}.poster-quelle{color:var(--tinte);margin-left:auto;font-weight:700}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
