:root{--base:#5b7083;--dark:#34495e;--light:#eef2f5;--accent:#c9a24d;--text:#26323d}
*{box-sizing:border-box}
body{margin:0;font-family:Georgia,"Times New Roman",serif;color:var(--text);background:var(--light);line-height:1.65}
header{background:linear-gradient(rgba(52,73,94,.35),rgba(52,73,94,.75)),url(../images/header.jpg) center/cover var(--dark);color:#fff;text-align:center;padding:3.5rem 1rem 0}
header h1{text-shadow:0 2px 6px rgba(0,0,0,.5);margin:0;font-size:clamp(1.8rem,5vw,3rem);letter-spacing:.03em}
header p{margin:.4rem 0 2rem;font-size:1.1rem;opacity:.9}
nav{display:flex;overflow-x:auto;position:sticky;top:0;z-index:50;background:var(--dark);box-shadow:0 2px 6px rgba(0,0,0,.25)}nav::before,nav::after{content:"";margin:auto}
nav a{flex:none;color:#fff;text-decoration:none;padding:.9rem 1.2rem;font-family:Arial,sans-serif;font-size:.95rem}
nav a:hover,nav a.aktiv{background:var(--base);border-bottom:3px solid var(--accent)}
main{max-width:860px;margin:0 auto;padding:2rem 1rem 3rem}
section,.karte{background:#fff;border-radius:8px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 2px 8px rgba(0,0,0,.08)}
h2{color:var(--dark);margin-top:0}
.termin{background:var(--base);color:#fff;text-align:center}
.termin h2{color:#fff}.termin .datum{font-size:1.8rem;font-weight:bold;color:#fff}
img.gruppe{width:100%;height:auto;border-radius:6px;background:#cfd8df;min-height:120px}
figcaption{font-size:.9rem;color:#666;text-align:center;margin-top:.4rem}
.knopf{display:inline-block;background:var(--dark);color:#fff;padding:.7rem 1.4rem;border-radius:5px;text-decoration:none;font-family:Arial,sans-serif;margin:.3rem 0}
.knopf:hover{background:var(--base)}
ul.liste{list-style:none;padding:0;columns:2 220px}
ul.liste li{padding:.3rem 0;border-bottom:1px solid #e1e7ec;break-inside:avoid}
.foto-links a{display:block;margin:.5rem 0}
footer{text-align:center;padding:1.5rem 1rem;background:var(--dark);color:#cfd8df;font-family:Arial,sans-serif;font-size:.85rem}
footer a{color:#fff}
.formular label{display:block;margin:.8rem 0;font-family:Arial,sans-serif;font-size:.95rem}
.formular input,.formular textarea{display:block;width:100%;padding:.6rem;margin-top:.3rem;border:1px solid #b9c5cf;border-radius:5px;font:inherit}
.eintrag{border-bottom:1px solid #e1e7ec;padding:.8rem 0}.eintrag small{color:#777;margin-left:.5rem}.eintrag p{margin:.3rem 0}
.meldung{padding:.7rem 1rem;border-radius:5px;font-family:Arial,sans-serif}.ok{background:#e3f1e6}.fehler{background:#f8e0e0}
.loeschen{background:#a33;color:#fff;border:0;padding:.3rem .8rem;border-radius:4px;cursor:pointer}
button.knopf{border:0;cursor:pointer;font-size:1rem}

header{position:relative}.logo{position:absolute;top:1rem;left:1rem;width:84px;height:84px;border-radius:50%;background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.4)}@media(max-width:600px){.logo{width:56px;height:56px;top:.6rem;left:.6rem}}header p{text-shadow:0 1px 4px rgba(0,0,0,.5)}

html{scroll-behavior:smooth}.abschnitt{scroll-margin-top:4rem}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}h3{color:var(--dark)}
