@font-face{font-family:Wulkan Display;src:url(/fonts/WulkanDisplayRegular.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Wulkan Display;src:url(/fonts/WulkanDisplayBlack.woff2) format("woff2");font-weight:700;font-display:swap}@font-face{font-family:Fraktif;src:url(/fonts/Fracktif-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Fraktif;src:url(/fonts/Fracktif-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{--primary:#003b4a;--primary-hover:#002a35;--accent:#4fc1e0;--sand:#d8d3ca;--bg:#f6f4f1;--card:#ffffff;--text:#003b4a;--body:#25303a;--muted:#6b7680;--border:#e3ded7;--error:#c0392b;--ok:#1f7a4d;--font-body:"Fraktif",Helvetica,Arial,sans-serif;--font-display:"Wulkan Display","Fraktif",Georgia,serif}*{box-sizing:border-box}body,html{margin:0;padding:0}body{font-family:var(--font-body);background:var(--bg);color:var(--body);line-height:1.55}:root{--gutter:clamp(20px,5vw,72px);--maxw-wide:1440px;--maxw-text:760px}.shell{width:min(100% - var(--gutter) * 2,var(--maxw-wide));margin-inline:auto}.shell--text{--maxw-wide:var(--maxw-text)}main{width:min(100% - var(--gutter) * 2,var(--maxw-text));margin-inline:auto;padding-bottom:72px;display:flex;flex-direction:column;gap:28px}main.home{width:100%;margin-inline:0;gap:clamp(32px,5vw,56px)}.site-header{width:min(100% - var(--gutter) * 2,var(--maxw-wide));margin-inline:auto;padding:clamp(20px,4vw,32px) 0 clamp(12px,3vw,20px)}.site-header .logo{display:inline-block;color:var(--primary)}.site-header .logo svg{height:clamp(2rem,1.6rem + 1.4vw,2.6rem);width:auto;display:block}.card{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:clamp(22px,4vw,36px);box-shadow:0 18px 44px -30px rgba(0,59,74,.4)}h1{font-family:var(--font-display);font-weight:700;color:var(--text);font-size:clamp(1.85rem,1.2rem + 2.4vw,3rem);line-height:1.1;letter-spacing:-.01em;margin:0 0 12px}.lead{color:var(--muted);margin:0 0 24px}.hero{position:relative;isolation:isolate;overflow:hidden;min-height:clamp(360px,62vh,640px);display:flex;align-items:flex-end}.hero-img{width:100%;height:100%;object-fit:cover;z-index:-2}.hero-img,.hero:after{position:absolute;inset:0}.hero:after{content:"";z-index:-1;background:linear-gradient(180deg,rgba(0,30,38,.1),rgba(0,30,38,.28) 45%,rgba(0,30,38,.86))}.hero-text{width:min(100% - var(--gutter) * 2,var(--maxw-wide));margin-inline:auto;padding:clamp(28px,6vw,72px) 0;color:#fff}.hero-text h1{color:#fff;max-width:18ch;text-shadow:0 2px 24px rgba(0,20,26,.45)}.hero-text .lead{font-size:clamp(1.05rem,.95rem + .7vw,1.4rem);color:rgba(255,255,255,.92);max-width:48ch;margin:0}.layout{width:min(100% - var(--gutter) * 2,var(--maxw-wide));margin-inline:auto;display:grid;grid-gap:clamp(28px,4vw,56px);gap:clamp(28px,4vw,56px)}@media (min-width:960px){.layout{grid-template-columns:minmax(0,1fr) minmax(340px,400px);align-items:start}.signup{position:-webkit-sticky;position:sticky;top:24px}}.content>p{margin:0 0 18px;max-width:68ch}.content .lead{font-size:clamp(1.1rem,1rem + .5vw,1.3rem);color:var(--body)}.card h2{font-family:var(--font-display);font-weight:700;color:var(--text);font-size:clamp(1.4rem,1.2rem + .8vw,1.8rem);line-height:1.15;margin:0 0 10px}.visuals{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:clamp(12px,1.5vw,18px);gap:clamp(12px,1.5vw,18px);margin:clamp(20px,3vw,32px) 0}.visuals figure{margin:0}.visuals figure img{display:block;width:100%;height:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px}.termin-gruppe+.termin-gruppe{margin-top:16px}.termin-gruppe-titel{font-weight:700;color:var(--text);margin:0 0 4px;font-size:.95rem}.form{gap:18px}.field,.form{display:flex;flex-direction:column}.field{gap:6px;border:none;margin:0;padding:0}label,legend{font-weight:700;color:var(--text)}legend{padding:0;margin-bottom:8px}input[type=email],input[type=text]{padding:11px 13px;border:1px solid var(--border);border-radius:9px;font-size:1rem;font-family:var(--font-body);background:#fff;color:var(--body)}input[type=checkbox]:focus,input[type=email]:focus,input[type=radio]:focus,input[type=text]:focus{outline:2px solid var(--accent);outline-offset:2px}input[type=checkbox],input[type=radio]{accent-color:var(--primary)}.checkbox,.radio{display:flex;align-items:flex-start;gap:10px;font-weight:400;color:var(--body);cursor:pointer;padding:4px 0}.checkbox input,.radio input{margin-top:3px}.consent span{font-size:.92rem;color:var(--body)}.hint{font-size:.85rem;color:var(--muted);margin:0}.btn{align-self:flex-start;background:var(--primary);color:#fff;border:none;border-radius:9px;padding:13px 26px;font-size:1rem;font-weight:700;font-family:var(--font-body);cursor:pointer;transition:background .15s ease}.btn:hover{background:var(--primary-hover)}.btn:disabled{opacity:.6;cursor:default}.error{font-size:.85rem}.alert,.error{color:var(--error)}.alert{background:#fdecea;border:1px solid #f5c6c0;border-radius:9px;padding:12px 14px;margin:0}.status-ok{color:var(--ok)}.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}a{color:var(--primary)}footer{margin-top:28px;font-size:.8rem}footer,footer a{color:var(--muted)}.legal h2{font-family:var(--font-display);font-size:1.2rem;margin:26px 0 6px}.legal h2,.legal h3{font-weight:700;color:var(--text)}.legal h3{font-size:1rem;margin:18px 0 4px}.legal li,.legal p{color:var(--body);font-size:.95rem}.legal ul{margin:6px 0;padding-left:20px}.legal li{margin:3px 0}.legal .draft-note{background:#fff7e6;border:1px solid #f0d28a;color:#7a5b00;border-radius:8px;padding:10px 12px;font-size:.85rem}main.admin{width:min(100% - var(--gutter) * 2,1200px);gap:clamp(20px,3vw,32px)}main.admin-auth{width:min(100% - var(--gutter) * 2,460px)}.admin-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.admin-bar h1{font-size:clamp(1.6rem,1.2rem + 1.4vw,2.2rem);margin:0}.admin-bar .hint{margin:2px 0 0}.btn-ghost{background:transparent;color:var(--primary);border:1px solid var(--border)}.btn-ghost:hover{background:#eef2f3}.btn-sm{padding:8px 16px;font-size:.9rem}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));grid-gap:12px;gap:12px}.stat{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:16px 18px;display:flex;flex-direction:column;gap:2px}.stat-num{font-family:var(--font-display);font-size:1.9rem;font-weight:700;color:var(--primary);line-height:1}.stat-label{font-size:.85rem;color:var(--muted)}.admin-section{padding:clamp(18px,3vw,28px)}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}.section-head h2{margin:0}.table-wrap{overflow-x:auto;margin:0 -4px}.data-table{width:100%;border-collapse:collapse;font-size:.9rem}.data-table td,.data-table th{text-align:left;padding:10px 12px;border-bottom:1px solid var(--border);white-space:nowrap}.data-table th{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.data-table tbody tr:hover{background:#f7f9fa}.badge{display:inline-block;padding:2px 10px;border-radius:999px;font-size:.78rem;font-weight:700}.badge-confirmed{background:#e3f3ea;color:#1f7a4d}.badge-pending{background:#fff3da;color:#8a5a00}.badge-unsubscribed{background:#eceef0;color:#6b7680}.termin-list{display:flex;flex-direction:column;gap:14px}.termin-card{border:1px solid var(--border);border-radius:12px;padding:16px 18px;background:#fcfbfa}.termin-card--inaktiv{opacity:.65}.termin-card-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}.termin-meta{font-size:.82rem;color:var(--muted)}.termin-form{display:flex;flex-direction:column;gap:14px}.termin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:12px;gap:12px}.termin-grid-wide{grid-column:1/-1}.termin-form .field span{font-size:.8rem;font-weight:700;color:var(--muted)}.termin-toggle{margin-top:10px}.termin-new{margin-top:18px}.termin-new>summary{cursor:pointer;font-weight:700;color:var(--primary);padding:8px 0}.termin-new[open]>summary{margin-bottom:12px}input[type=date],input[type=number],select,textarea{padding:11px 13px;border:1px solid var(--border);border-radius:9px;font-size:1rem;font-family:var(--font-body);background:#fff;color:var(--body)}input[type=date]:focus,input[type=number]:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:2px}