:root{--brand:#44a2a7;--brand-700:#286164;--teal-50:#e6f3f4;--teal-200:#85c2c5;--ink-900:#0e3a3a;--fg:#0e3a3a;--muted:#6c757b;--paper:#fbfaf6;--paper-2:#f5f2ea;--panel:#fff;--accent:#c4356b;--line:#0e3a3a14;--line-strong:#0e3a3a29;--radius:14px;--radius-lg:18px;--font-mono:"JetBrains Mono", ui-monospace, monospace}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--paper);color:var(--fg);font-family:Quicksand,Inter,system-ui,sans-serif;line-height:1.5}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}.topbar{background:color-mix(in srgb, var(--paper) 92%, transparent);border-bottom:1px solid var(--line);-webkit-backdrop-filter:saturate(140%)blur(10px);z-index:10;position:sticky;top:0}.topbar-inner{justify-content:space-between;align-items:center;gap:20px;max-width:1280px;margin:0 auto;padding:14px clamp(20px,3vw,40px);display:flex}.brand img{width:auto;max-width:60vw;height:56px;display:block}@media (width<=480px){.brand img{height:44px}}.back-link{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;border:1px solid var(--line);color:var(--fg);border-radius:999px;padding:9px 14px;font-size:.72rem;font-weight:600}.back-link:hover{border-color:var(--brand);color:var(--brand);text-decoration:none}main{max-width:1100px;margin:0 auto;padding:clamp(32px,5vw,64px) clamp(20px,3vw,40px) 48px}h1{letter-spacing:-.02em;margin:0 0 10px;font-size:clamp(2rem,5vw,3.2rem);font-weight:700}h1 em{color:var(--accent);letter-spacing:-.01em;padding:0 .08em;font-family:Caveat,cursive;font-size:1.3em;font-style:normal;font-weight:700;line-height:.9;display:inline-block;transform:translateY(.08em)rotate(-3deg)}h2{letter-spacing:-.02em;margin:56px 0 8px;font-size:clamp(1.5rem,3vw,2rem);font-weight:700}h2 em{color:var(--accent);padding:0 .06em;font-family:Caveat,cursive;font-size:1.25em;font-style:normal;font-weight:700;display:inline-block;transform:translateY(.08em)rotate(-3deg)}.eyebrow{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--brand);margin-bottom:12px;padding-left:28px;font-size:.72rem;display:inline-block;position:relative}.eyebrow:before{content:"";background:currentColor;width:20px;height:1.5px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.lede{color:var(--fg);max-width:72ch;margin:0 0 28px;font-size:1.1rem}.sub-intro{color:var(--muted);max-width:72ch;margin:0 0 32px}.period{background:color-mix(in srgb, var(--brand) 8%, transparent);border:1px solid color-mix(in srgb, var(--brand) 24%, transparent);border-radius:var(--radius);flex-wrap:wrap;align-items:baseline;gap:14px;margin-bottom:40px;padding:16px 22px;display:flex}.period-label{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--brand);font-size:.7rem;font-weight:600}.period-value{font-size:1.02rem;font-weight:600}.period-note{min-width:200px;color:var(--muted);flex:1;font-size:.9rem}.schedule-wrap{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);margin-top:18px;overflow:hidden}table.schedule{border-collapse:collapse;width:100%;font-size:.96rem}.schedule thead{background:var(--paper-2)}.schedule th{text-align:left;font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line);padding:14px 18px;font-size:.72rem;font-weight:600}.schedule td{border-top:1px solid var(--line);vertical-align:top;padding:14px 18px}.schedule tr:first-child td{border-top:0}.schedule .day{color:var(--brand);white-space:nowrap;font-weight:700}.schedule .time{font-family:var(--font-mono);color:var(--fg);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.9rem}.schedule .course{font-weight:600}.schedule .leader{color:var(--fg)}.schedule .contact{font-family:var(--font-mono);color:var(--muted);white-space:nowrap;font-size:.85rem}.schedule .contact a{color:var(--brand);font-weight:500}@media (width<=720px){.schedule,.schedule thead,.schedule tbody,.schedule tr,.schedule td,.schedule th{display:block}.schedule thead{display:none}.schedule tr{border-top:1px solid var(--line);padding:14px 16px}.schedule tr:first-child{border-top:0}.schedule td{border:0;padding:2px 0}.schedule .day{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;margin-bottom:4px;font-size:.72rem}.schedule .course{margin-top:2px;font-size:1.05rem}.schedule .time{margin-top:2px}.schedule .leader:before{content:"Leitung: ";color:var(--muted);font-weight:400}.schedule .contact{margin-top:4px}}.leader-list{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:16px;padding:0;list-style:none;display:grid}.leader-list li{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:14px 16px}.leader-list .leader-course{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--brand);margin-bottom:4px;font-size:.7rem;font-weight:600}.leader-list .leader-name{margin-bottom:2px;font-size:1rem;font-weight:600}.leader-list .leader-phone{font-family:var(--font-mono);color:var(--muted);font-size:.85rem}.leader-list .leader-phone a{color:var(--brand)}.more-box{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);margin-top:18px;padding:22px 24px}.more-box p{color:var(--muted);margin:0}.more-box .tags{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}.more-box .tag{font-family:var(--font-mono);letter-spacing:.08em;background:var(--paper-2);color:var(--fg);border:1px solid var(--line);border-radius:999px;padding:5px 10px;font-size:.72rem}.cta-band{background:var(--brand);color:#fff;border-radius:var(--radius-lg);grid-template-columns:1.4fr 1fr;align-items:center;gap:24px;margin-top:56px;padding:32px clamp(20px,4vw,40px);display:grid}@media (width<=800px){.cta-band{grid-template-columns:1fr;gap:16px}}.cta-band h3{letter-spacing:-.02em;color:#fff;margin:0 0 6px;font-size:clamp(1.2rem,2.5vw,1.6rem);font-weight:700}.cta-band p{color:#ffffffe0;margin:0;font-size:.95rem}.cta-band .actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}@media (width<=800px){.cta-band .actions{justify-content:flex-start}}.cta-band .btn{border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:11px 20px;font-family:Quicksand,sans-serif;font-size:.95rem;font-weight:600;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.cta-band .btn-primary{color:var(--brand);background:#fff}.cta-band .btn-primary:hover{background:var(--paper);text-decoration:none}.cta-band .btn-ghost{color:#fff;background:0 0;border-color:#fff6}.cta-band .btn-ghost:hover{color:#fff;border-color:#fff;text-decoration:none}.calendar-section{margin:56px 0 0}.calendar-section .calendar-intro{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:14px 24px;margin:8px 0 18px;display:flex}.calendar-section .calendar-intro p{color:var(--muted);max-width:56ch;margin:0}.calendar-section .calendar-open-link{color:var(--brand);white-space:nowrap;font-family:Quicksand,sans-serif;font-size:.9rem;font-weight:600}.calendar-section .calendar-open-link:hover{text-decoration:underline}.calendar-frame{border:1px solid var(--line);border-radius:var(--radius);background:#fff;overflow:hidden;box-shadow:0 6px 24px #0e3a3a0f}.calendar-frame iframe{border:0;width:100%;height:780px;display:block}@media (width<=900px){.calendar-frame iframe{height:620px}}@media (width<=480px){.calendar-frame iframe{height:500px}}footer{border-top:1px solid var(--line);max-width:1100px;color:var(--muted);margin:48px auto 0;padding:32px clamp(20px,3vw,40px);font-size:.88rem}
