/* TC Arnoldstein · «Der Fall» · Herzhaus Web-Atelier 2026 */
@font-face{font-family:"Holtwood One SC";src:url(/schrift/holtwood-one-sc-latin-400-normal.woff2) format("woff2");font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Holtwood One SC";src:url(/schrift/holtwood-one-sc-latin-ext-400-normal.woff2) format("woff2");font-display:swap;unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Libre Franklin";src:url(/schrift/libre-franklin-latin-wght-normal.woff2) format("woff2-variations");font-weight:100 900;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Libre Franklin";src:url(/schrift/libre-franklin-latin-ext-wght-normal.woff2) format("woff2-variations");font-weight:100 900;font-display:swap;unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Libre Franklin";font-style:italic;src:url(/schrift/libre-franklin-latin-wght-italic.woff2) format("woff2-variations");font-weight:100 900;font-display:swap}
@font-face{font-family:"Anonymous Pro";src:url(/schrift/anonymous-pro-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Anonymous Pro";src:url(/schrift/anonymous-pro-latin-700-normal.woff2) format("woff2");font-weight:700;font-display:swap;unicode-range:U+0000-00FF,U+2000-206F,U+20AC}
@font-face{font-family:"Anonymous Pro";src:url(/schrift/anonymous-pro-latin-ext-700-normal.woff2) format("woff2");font-weight:700;font-display:swap;unicode-range:U+0100-02AF}

:root{
 --putz:#f1ebe0;--putz2:#e6dccb;--papier:#fbf8f2;--kraft:#e9dcc0;
 --blei:#2b2e35;--blei2:#3c4049;--bleit:#1d1f24;--bleihell:#8a8f99;
 --sand:#b54a26;--sandt:#8e3415;--sandh:#d6774f;
 --rot:#c42a22;--ball:#f2e21d;--gruen:#2f4536;
 --tinte:#1d1c1f;--grau:#57524c;
 --titel:"Holtwood One SC",Georgia,serif;--text:"Libre Franklin",system-ui,sans-serif;--mono:"Anonymous Pro",ui-monospace,monospace;
 --rand:clamp(20px,5vw,64px);--luft:clamp(64px,10vw,128px);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:90px}
body{margin:0;background:var(--putz);color:var(--tinte);font-family:var(--text);font-size:18px;line-height:1.6;font-weight:400;overflow-x:hidden}
button,input,select,textarea,optgroup{font-family:inherit;font-size:inherit;color:inherit}
img{max-width:100%;height:auto;display:block}
a{color:var(--sandt);text-decoration-thickness:1.5px;text-underline-offset:3px}
a:hover{color:var(--rot)}
:focus-visible{outline:3px solid var(--rot);outline-offset:3px}
h1,h2,h3{font-family:var(--titel);font-weight:400;line-height:1.08;margin:0 0 .5em;color:var(--blei);letter-spacing:-.005em;hyphens:none;overflow-wrap:break-word}
h1{font-size:clamp(34px,8.2vw,88px)}
h2{font-size:clamp(28px,5.6vw,56px)}
h3{font-size:clamp(20px,2.4vw,26px);line-height:1.15}
p{margin:0 0 1em}
.wrap{max-width:1280px;margin:0 auto;padding:0 var(--rand)}
.schmal{max-width:820px}
.wrap.schmal{max-width:calc(820px + 2*var(--rand))}
.rot{color:var(--rot)}
.kicker{font-family:var(--mono);font-weight:700;font-size:15px;letter-spacing:.12em;text-transform:uppercase;color:var(--sandt);margin:0 0 14px;line-height:1.35}
.kicker.gelb{color:var(--ball)}
.kicker.abstand{margin-top:48px}
.klein{font-size:15px;color:var(--grau)}
.klein.hell{color:#d9d3c8}
.sprung{position:absolute;left:-9999px;top:8px;z-index:200;background:var(--ball);color:var(--tinte);padding:10px 16px}
.sprung:focus{left:8px}
.sig{font-family:var(--mono);font-weight:700;color:var(--grau)}

/* ---------- Barren (Knöpfe): gegossener Bleibarren ---------- */
.barren{--bg:var(--rot);--fg:#fff;--kante:#8f1b15;display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 26px;
 background:var(--bg);color:var(--fg);text-decoration:none;font-family:var(--titel);font-size:15px;letter-spacing:.03em;line-height:1.1;text-align:center;
 clip-path:polygon(9px 0,calc(100% - 9px) 0,100% 100%,0 100%);border:0;cursor:pointer;position:relative;
 box-shadow:inset 0 3px 0 rgba(255,255,255,.22),inset 0 -5px 0 var(--kante);transition:transform .25s cubic-bezier(.3,1.4,.5,1),filter .2s}
.barren span{position:relative;top:-1px}
.barren:hover{color:var(--fg);transform:translateY(-2px);filter:brightness(1.06)}
.barren:active{transform:translateY(1px)}
.barren.ball{--bg:var(--ball);--fg:var(--tinte);--kante:#b9a90c}
.barren.hohl{--bg:var(--blei);--fg:var(--blei);box-shadow:none}
.barren.hohl::before{content:"";position:absolute;inset:2.5px 2.5px 2.5px 2.5px;background:var(--hbg,var(--putz));clip-path:polygon(7.6px 0,calc(100% - 7.6px) 0,100% 100%,0 100%)}
.barren.hohl:hover{--fg:var(--blei);filter:none}
.barren.hohl:hover::before{background:var(--ball)}
.hellgrund,.komm{--hbg:var(--putz2)}
.dunkel,.buchen-tafel{--hbg:var(--blei)}
.anruf,.blatt,.formular{--hbg:var(--papier)}
.barren.hohl.hell,.dunkel .barren.hohl{--bg:#fbf8f2;--fg:#fbf8f2}
.dunkel .barren.hohl:hover,.barren.hohl.hell:hover{--fg:var(--tinte)}
.buchen-tafel .barren.hohl{--bg:#fbf8f2;--fg:#fbf8f2}
.buchen-tafel .barren.hohl:hover{--fg:var(--tinte)}
.barren.klein{min-height:44px;padding:0 18px;font-size:13.5px}
.knopfreihe{display:flex;flex-wrap:wrap;gap:12px 14px;margin:26px 0 0}

/* ---------- Kopf ---------- */
.kopf{position:sticky;top:0;z-index:50;background:rgba(241,235,224,.94);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:2px solid var(--blei)}
.kopf-in{display:flex;align-items:center;gap:18px;max-width:1440px;margin:0 auto;padding:6px var(--rand);min-height:68px}
.marke{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--blei);margin-right:auto}
.logo-svg{width:62px;height:auto}
.marke-text{display:flex;flex-direction:column;font-family:var(--titel);font-size:13px;line-height:1.15;letter-spacing:.04em}
.marke-text b{font-weight:400;font-size:13px;color:var(--sandt)}
.kopf-nav{display:none;gap:22px}
.kopf-nav a{font-family:var(--mono);font-weight:700;font-size:15px;letter-spacing:.08em;text-transform:uppercase;color:var(--blei);text-decoration:none;padding:12px 0;position:relative}
.kopf-nav a::after{content:"";position:absolute;left:50%;bottom:4px;width:7px;height:7px;border-radius:50%;background:var(--ball);box-shadow:0 0 0 1.5px var(--blei);transform:translate(-50%,-14px) scale(0);transition:transform .45s cubic-bezier(.5,0,.6,1.6)}
.kopf-nav a:hover::after,.kopf-nav a[aria-current]::after{transform:translate(-50%,0) scale(1)}
.kopf-buchen{display:none}
.schacht-knopf{display:flex;align-items:center;gap:10px;background:none;border:0;padding:6px 0 6px 6px;cursor:pointer;min-height:48px}
.sk-fenster{position:relative;width:26px;height:40px;border:2.5px solid var(--blei);border-radius:13px 13px 2px 2px;background:var(--blei);overflow:hidden}
.sk-ball{position:absolute;left:50%;bottom:3px;width:13px;height:13px;margin-left:-6.5px;border-radius:50%;background:var(--ball);transition:transform .7s cubic-bezier(.55,0,.35,1)}
.schacht-knopf:hover .sk-ball{transform:translateY(-18px)}
.schacht-knopf[aria-expanded=true] .sk-ball{transform:translateY(-20px)}
.sk-wort{font-family:var(--mono);font-weight:700;font-size:15px;letter-spacing:.1em;text-transform:uppercase;color:var(--blei)}
@media(min-width:1180px){.kopf-nav{display:flex}.kopf-buchen{display:inline-flex}.logo-svg{width:68px}}

/* ---------- Menü: Geschosse des Turms ---------- */
.menue{position:fixed;inset:0;z-index:120;background:var(--blei);color:#fbf8f2;overflow-y:auto;opacity:0;transition:opacity .5s ease}
.menue.offen{opacity:1}
.menue-in{position:relative;max-width:1100px;margin:0 auto;padding:74px var(--rand) 60px 86px;min-height:100%}
.menue-schacht{position:absolute;left:var(--rand);top:0;bottom:0;width:22px;background:linear-gradient(90deg,#1b1c21,#34363e,#1b1c21);border-left:2px solid #4c505a;border-right:2px solid #4c505a}
.ms-ball{position:absolute;left:50%;top:10px;width:16px;height:16px;margin-left:-8px;border-radius:50%;background:var(--bleihell)}
.menue.offen .ms-ball{animation:mfall 1.1s cubic-bezier(.55,0,1,.6) .1s forwards}
@keyframes mfall{0%{top:10px;background:var(--bleihell);border-radius:50% 50% 50% 50%/60% 60% 40% 40%}60%{background:var(--ball)}100%{top:calc(100% - 30px);background:var(--ball);border-radius:50%}}
.menue-titel{font-family:var(--mono);font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ball);font-size:14px;margin:8px 0 10px}
.geschosse{list-style:none;margin:0;padding:0}
.geschosse li{border-top:1.5px solid #4c505a}
.geschosse a{display:flex;align-items:baseline;gap:16px;padding:9px 0;color:#fbf8f2;text-decoration:none;min-height:48px}
.g-nr{font-family:var(--mono);font-weight:700;color:var(--bleihell);font-size:14px;min-width:26px}
.g-name{font-family:var(--titel);font-size:clamp(22px,4.4vw,34px);line-height:1.1}
.geschosse a:hover .g-name,.geschosse a[aria-current] .g-name{color:var(--ball)}
.menue-klein{display:flex;flex-wrap:wrap;gap:6px 22px;margin-top:22px}
.menue-klein a{color:#d9d3c8;font-size:16px;padding:10px 0}
.menue-tel{margin-top:10px;font-family:var(--mono);font-weight:700;color:#d9d3c8}
.menue-tel a{color:var(--ball);font-size:20px;padding:10px 0;display:inline-block}
.menue-zu{position:fixed;top:14px;right:var(--rand);background:var(--ball);color:var(--tinte);border:0;font-family:var(--titel);font-size:14px;min-height:46px;padding:0 18px;cursor:pointer;clip-path:polygon(8px 0,calc(100% - 8px) 0,100% 100%,0 100%)}
html.menu-auf{overflow:hidden}

/* ---------- Bühne Startseite ---------- */
.buehne{position:relative;display:grid;grid-template-columns:1fr;grid-template-areas:"kopf" "szene" "rest";background:var(--putz)}
.buehne-kopf{grid-area:kopf;padding:18px var(--rand) 0;position:relative;z-index:2}
.buehne-rest{grid-area:rest;padding:26px var(--rand) 10px}
.buehne .kicker{font-size:14px;margin-bottom:10px}
.buehne h1{font-size:clamp(31px,8.6vw,96px);margin-bottom:12px}
.buehne h1 .rot{display:block}
.buehne-lead{font-size:19px;max-width:560px}
.buehne-fakt{font-family:var(--mono);font-weight:700;font-size:15px;color:var(--grau);margin-top:18px}
.buehne .knopfreihe{margin-top:4px}
.szene{grid-area:szene;position:relative;height:max(300px,min(calc(100vw * 640 / 600),calc(100svh - 300px)));max-height:560px;overflow:hidden;cursor:pointer;-webkit-tap-highlight-color:transparent}
.szene-svg{position:absolute;inset:0;width:100%;height:100%}
.szene-zettel{position:absolute;left:var(--rand);top:9%;max-width:min(45%,260px);font-size:14px;line-height:1.38;background:var(--papier);padding:9px 11px;margin:0;box-shadow:3px 3px 0 var(--blei),0 0 0 1.5px var(--blei);z-index:2;transform:rotate(-1.5deg)}
.szene-zettel b{display:block;font-family:var(--titel);font-weight:400;font-size:14px;color:var(--rot);margin-bottom:3px}
.szene-ort{display:none;position:absolute;left:var(--rand);bottom:14px;margin:0;font-family:var(--mono);font-weight:700;font-size:14px;color:#fbf8f2;letter-spacing:.08em;text-transform:uppercase;z-index:2;text-shadow:0 1px 2px rgba(0,0,0,.5)}
.szene-zettel p{margin:0 0 8px}
.szene-knopf{position:relative;z-index:2;white-space:nowrap;background:var(--blei);color:#fbf8f2;border:0;font-family:var(--mono);font-weight:700;font-size:15px;letter-spacing:.04em;min-height:44px;padding:0 14px;cursor:pointer;clip-path:polygon(6px 0,calc(100% - 6px) 0,100% 100%,0 100%)}
.szene-knopf::before{content:"";display:inline-block;width:11px;height:11px;border-radius:50%;background:var(--ball);margin-right:8px;vertical-align:-1px}
.abdruecke ellipse{fill:#6f2610;opacity:.55}
@media(min-width:900px){
 .buehne{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);grid-template-areas:"kopf szene" "rest szene";grid-template-rows:1fr auto;min-height:calc(100vh - 70px)}
 .buehne-kopf{padding:clamp(40px,8vh,110px) 20px 0 max(var(--rand),calc((100vw - 1440px) / 2 + var(--rand)));align-self:end}
 .buehne-rest{padding:10px 20px clamp(40px,8vh,90px) max(var(--rand),calc((100vw - 1440px) / 2 + var(--rand)))}
 .buehne h1{font-size:clamp(38px,4.5vw,76px);overflow-wrap:normal}
 .buehne-lead{font-size:21px}
 .szene{height:auto;max-height:none;min-height:600px}
 .szene-zettel{left:5%;top:12%;max-width:250px;font-size:15px}
}
/* ---------- Abschnitte ---------- */
.abschnitt,.seit,.meister,.preise,.anlage,.liebe,.alter,.steine-start,.komm{padding:var(--luft) 0}
.dunkel{background:var(--blei);color:#efe9df}
.dunkel h2,.dunkel h3{color:#fbf8f2}
.dunkel a:not(.barren){color:var(--ball)}
.hellgrund{background:var(--putz2)}
.fliess p{max-width:70ch}
.fliess ul,.fliess ol{padding-left:1.2em}
.gross-text{font-size:20px}

/* Seit 1926 */
.seit-in{display:grid;grid-template-columns:minmax(0,1fr);gap:40px;align-items:center}
.papier{margin:0;background:#fff;padding:10px;box-shadow:0 18px 40px rgba(0,0,0,.35);transform:rotate(-2deg);max-width:min(380px,calc(100% - 16px))}
.papier figcaption{font-family:var(--mono);font-weight:700;font-size:14px;color:var(--grau);padding-top:8px}
.dunkel .papier figcaption{color:var(--grau)}
.protokoll{margin:0;justify-self:center;max-width:100%;display:flex;justify-content:center}
.fallmarken{list-style:none;padding:0;margin:30px 0;border-left:4px solid var(--ball)}
.fallmarken li{position:relative;padding:4px 0 18px 26px}
.fallmarken li::before{content:"";position:absolute;left:-12px;top:12px;width:20px;height:20px;border-radius:50%;background:var(--ball);box-shadow:0 0 0 4px var(--blei)}
.fallmarken b{display:block;font-family:var(--titel);font-weight:400;font-size:clamp(30px,5vw,46px);line-height:1;color:#fbf8f2}
.fallmarken span{color:#d9d3c8}
@media(min-width:900px){.seit-in{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:80px}}

/* Ehrentafel: Namen in Bleibarren gegossen */
.meister-kopf{display:grid;gap:26px;align-items:end;margin-bottom:34px}
.meister-foto{margin:0}
.meister-foto img{width:100%;aspect-ratio:16/7;object-fit:cover}
@media(min-width:900px){.meister-kopf{grid-template-columns:1fr 1fr}}
.ehrentafel{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
@media(max-width:600px){.ehrentafel{grid-template-columns:minmax(0,1fr);gap:8px}.guss{padding:10px 14px 12px !important}.guss-n{font-size:15.5px}.guss-k{font-size:13px;letter-spacing:.06em}}
.guss{padding:10px 20px 12px !important;background:linear-gradient(180deg,#5a5e68 0%,#3c4049 40%,#2b2e35 100%);color:#fbf8f2;padding:14px 22px 16px;clip-path:polygon(12px 0,calc(100% - 12px) 0,100% 100%,0 100%);box-shadow:inset 0 2px 0 rgba(255,255,255,.25)}
.guss-k{display:block;font-family:var(--mono);font-weight:700;font-size:14px;letter-spacing:.1em;text-transform:uppercase;color:var(--ball)}
.guss-n{display:block;font-family:var(--titel);font-size:18px;line-height:1.2;margin-top:4px;overflow-wrap:break-word}
.meister-weiter{margin-top:28px}

/* Etikett: Papierschild wie auf einem alten Schrotbeutel */
.etikett{background:var(--kraft);padding:10px;max-width:520px;width:100%;box-shadow:0 14px 34px rgba(43,46,53,.22);transform:rotate(1.2deg);justify-self:center}
.et-rand{border:3px double var(--rot);padding:20px 20px 16px;background:repeating-linear-gradient(0deg,transparent 0 27px,rgba(142,52,21,.06) 27px 28px)}
.et-kopf{display:flex;justify-content:space-between;align-items:baseline;gap:10px;border-bottom:3px solid var(--blei);padding-bottom:8px;margin-bottom:12px;flex-wrap:wrap}
.et-kopf span{font-family:var(--mono);font-weight:700;letter-spacing:.1em;text-transform:uppercase;font-size:14px}
.et-kopf b{font-family:var(--titel);font-weight:400;font-size:24px;color:var(--rot)}
.et-sorte{font-family:var(--titel);font-size:16px;margin:14px 0 4px}
.et-sorte small{font-family:var(--text);font-size:14px;color:var(--grau)}
.et-liste{list-style:none;padding:0;margin:0}
.et-liste li{display:flex;align-items:baseline;gap:8px;padding:4px 0;font-size:16.5px}
.et-liste i{flex:1;border-bottom:2px dotted var(--grau);transform:translateY(-4px);min-width:16px}
.et-liste b{font-family:var(--mono);font-weight:700;font-size:18px;white-space:nowrap}
.et-frei{margin:14px 0 6px;background:var(--rot);color:#fff;padding:8px 12px;font-size:15.5px;transform:rotate(-1.5deg)}
.et-frei b{font-family:var(--titel);font-weight:400;margin-right:6px}
.et-fein{font-size:14px;color:var(--grau);margin:10px 0 0;line-height:1.45}
.et-fuss{font-family:var(--mono);font-weight:700;font-size:13.5px;color:var(--grau);text-align:center;margin:10px 0 0;letter-spacing:.06em}
.preise-in{display:grid;gap:44px;align-items:center}
@media(min-width:900px){.preise-in{grid-template-columns:1.1fr .9fr;gap:70px}}

/* Anlage */
.anlage-raster{display:grid;gap:16px;margin-top:28px}
.bild{margin:0}
.bild a{display:block}
.bild img{width:100%}
.bild figcaption{font-size:15px;color:var(--grau);padding-top:7px;line-height:1.4}
.dunkel .bild figcaption{color:#cfc8bc}
.anlage-raster .bild img{aspect-ratio:4/3;object-fit:cover}
.buchen-tafel{background:var(--blei);color:#efe9df;padding:26px 24px}
.buchen-tafel .kicker{color:var(--ball)}
.gross-tel{font-family:var(--titel);font-size:clamp(30px,5vw,44px);line-height:1.1;margin:0 0 12px}
.gross-tel a{color:inherit;text-decoration:none}
.buchen-tafel .gross-tel a{color:#fbf8f2}
.buchen-tafel .klein{color:#cfc8bc;margin-top:16px}
@media(min-width:760px){.anlage-raster{grid-template-columns:1fr 1fr}.a1{grid-column:1/-1}.a1 img{aspect-ratio:16/7}}
@media(min-width:1100px){.anlage-raster{grid-template-columns:1.3fr 1fr 1fr}.a1{grid-column:1/2;grid-row:1/3;display:flex;flex-direction:column}.a1 a{flex:1;min-height:0}.a1 img{aspect-ratio:auto;height:100%;object-fit:cover}.buchen-tafel{grid-column:2/4}}

/* Liebe zum Tennis: Zitat auf Sand */
.liebe{background:var(--sand);color:#fff;position:relative;overflow:hidden}
.liebe::before{content:"";position:absolute;left:0;right:0;top:34px;height:4px;background:#fbf8f2;opacity:.9}
.liebe::after{content:"";position:absolute;left:0;right:0;bottom:34px;height:4px;background:#fbf8f2;opacity:.9}
.zitat{color:#fff !important;font-size:clamp(26px,4.8vw,58px);max-width:20ch;line-height:1.12}
.liebe-sig{font-family:var(--mono);font-weight:700;font-size:20px;color:var(--ball)}
.liebe-mehr a{color:#fff;font-weight:700}

/* Für jedes Alter */
.alter-zeile{display:grid;gap:22px;align-items:center;padding:30px 0;border-top:3px solid var(--sand)}
.alter-zeile .bild img{aspect-ratio:4/3;object-fit:cover}
.zahl{font-family:var(--titel);font-size:clamp(46px,8vw,90px);line-height:1;color:var(--rot);margin:0 0 6px}
@media(min-width:900px){.alter-zeile{grid-template-columns:1fr 1fr;gap:70px}.z2 > div{order:-1}.alter-zeile .bild{max-width:520px}.z1 .bild,.z3 .bild{justify-self:start}.z2 .bild{justify-self:end}}

/* Mauer der Sponsoren: Steine im Turm, Läuferverband */
.mauer{list-style:none;margin:30px 0 0;padding:12px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;background:#b3a68f;box-shadow:inset 0 0 0 2px #9c8f78}
.stein{grid-column:span 2;background:linear-gradient(180deg,#fbf8f2,#ece4d6);box-shadow:inset 0 -3px 0 rgba(0,0,0,.08),inset 0 2px 0 #fff}
.mauer>.stein:nth-child(3n){grid-column:2/span 2}
.stein>a,.stein>span{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:118px;padding:12px;text-decoration:none;color:var(--tinte);height:100%}
.stein img{max-height:60px;width:auto;max-width:100%;object-fit:contain}
.stein-name{font-size:13.5px;line-height:1.25;text-align:center;color:var(--grau)}
.stein.frei{background:var(--blei)}
.stein.frei a{color:#fbf8f2}
.stein.frei b{font-family:var(--titel);font-weight:400;font-size:18px;color:var(--ball)}
.stein.frei span{font-size:14px}
@media(min-width:900px){.mauer{grid-template-columns:repeat(8,minmax(0,1fr));padding:16px;gap:10px}.mauer>.stein:nth-child(3n){grid-column:auto/span 2}.mauer>.stein:nth-child(7n+5){grid-column:2/span 2}.stein>a,.stein>span{min-height:140px}.stein img{max-height:72px}}
.komm{--hbg:var(--putz2)}
.dunkel,.buchen-tafel{--hbg:var(--blei)}
.anruf,.blatt,.formular{--hbg:var(--papier)}
.barren.hohl.hell,.dunkel .barren.hohl{--bg:#fbf8f2;--fg:#fbf8f2}
.dunkel .barren.hohl:hover,.barren.hohl.hell:hover{--fg:var(--tinte)}
.buchen-tafel .barren.hohl{--bg:#fbf8f2;--fg:#fbf8f2}
.buchen-tafel .barren.hohl:hover{--fg:var(--tinte)}
.barren.klein{min-height:44px;padding:0 18px;font-size:13.5px}
.knopfreihe{display:flex;flex-wrap:wrap;gap:12px 14px;margin:26px 0 0}

/* ---------- Kopf ---------- */
.kopf{position:sticky;top:0;z-index:50;background:rgba(241,235,224,.94);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:2px solid var(--blei)}
.kopf-in{display:flex;align-items:center;gap:18px;max-width:1440px;margin:0 auto;padding:6px var(--rand);min-height:68px}
.marke{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--blei);margin-right:auto}
.logo-svg{width:62px;height:auto}
.marke-text{display:flex;flex-direction:column;font-family:var(--titel);font-size:13px;line-height:1.15;letter-spacing:.04em}
.marke-text b{font-weight:400;font-size:13px;color:var(--sandt)}
.kopf-nav{display:none;gap:22px}
.kopf-nav a{font-family:var(--mono);font-weight:700;font-size:15px;letter-spacing:.08em;text-transform:uppercase;color:var(--blei);text-decoration:none;padding:12px 0;position:relative}
.kopf-nav a::after{content:"";position:absolute;left:50%;bottom:4px;width:7px;height:7px;border-radius:50%;background:var(--ball);box-shadow:0 0 0 1.5px var(--blei);transform:translate(-50%,-14px) scale(0);transition:transform .45s cubic-bezier(.5,0,.6,1.6)}
.kopf-nav a:hover::after,.kopf-nav a[aria-current]::after{transform:translate(-50%,0) scale(1)}
.kopf-buchen{display:none}
.schacht-knopf{display:flex;align-items:center;gap:10px;background:none;border:0;padding:6px 0 6px 6px;cursor:pointer;min-height:48px}
.sk-fenster{position:relative;width:26px;height:40px;border:2.5px solid var(--blei);border-radius:13px 13px 2px 2px;background:var(--blei);overflow:hidden}
.sk-ball{position:absolute;left:50%;bottom:3px;width:13px;height:13px;margin-left:-6.5px;border-radius:50%;background:var(--ball);transition:transform .7s cubic-bezier(.55,0,.35,1)}
.schacht-knopf:hover .sk-ball{transform:translateY(-18px)}
.schacht-knopf[aria-expanded=true] .sk-ball{transform:translateY(-20px)}
.sk-wort{font-family:var(--mono);font-weight:700;font-size:15px;letter-spacing:.1em;text-transform:uppercase;color:var(--blei)}
@media(min-width:1180px){.kopf-nav{display:flex}.kopf-buchen{display:inline-flex}.logo-svg{width:68px}}

/* ---------- Menü: Geschosse des Turms ---------- */
.menue{position:fixed;inset:0;z-index:120;background:var(--blei);color:#fbf8f2;overflow-y:auto;opacity:0;transition:opacity .5s ease}
.menue.offen{opacity:1}
.menue-in{position:relative;max-width:1100px;margin:0 auto;padding:74px var(--rand) 60px 86px;min-height:100%}
.menue-schacht{position:absolute;left:var(--rand);top:0;bottom:0;width:22px;background:linear-gradient(90deg,#1b1c21,#34363e,#1b1c21);border-left:2px solid #4c505a;border-right:2px solid #4c505a}
.ms-ball{position:absolute;left:50%;top:10px;width:16px;height:16px;margin-left:-8px;border-radius:50%;background:var(--bleihell)}
.menue.offen .ms-ball{animation:mfall 1.1s cubic-bezier(.55,0,1,.6) .1s forwards}
@keyframes mfall{0%{top:10px;background:var(--bleihell);border-radius:50% 50% 50% 50%/60% 60% 40% 40%}60%{background:var(--ball)}100%{top:calc(100% - 30px);background:var(--ball);border-radius:50%}}
.menue-titel{font-family:var(--mono);font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ball);font-size:14px;margin:8px 0 10px}
.geschosse{list-style:none;margin:0;padding:0}
.geschosse li{border-top:1.5px solid #4c505a}
.geschosse a{display:flex;align-items:baseline;gap:16px;padding:9px 0;color:#fbf8f2;text-decoration:none;min-height:48px}
.g-nr{font-family:var(--mono);font-weight:700;color:var(--bleihell);font-size:14px;min-width:26px}
.g-name{font-family:var(--titel);font-size:clamp(22px,4.4vw,34px);line-height:1.1}
.geschosse a:hover .g-name,.geschosse a[aria-current] .g-name{color:var(--ball)}
.menue-klein{display:flex;flex-wrap:wrap;gap:6px 22px;margin-top:22px}
.menue-klein a{color:#d9d3c8;font-size:16px;padding:10px 0}
.menue-tel{margin-top:10px;font-family:var(--mono);font-weight:700;color:#d9d3c8}
.menue-tel a{color:var(--ball);font-size:20px;padding:10px 0;display:inline-block}
.menue-zu{position:fixed;top:14px;right:var(--rand);background:var(--ball);color:var(--tinte);border:0;font-family:var(--titel);font-size:14px;min-height:46px;padding:0 18px;cursor:pointer;clip-path:polygon(8px 0,calc(100% - 8px) 0,100% 100%,0 100%)}
html.menu-auf{overflow:hidden}

/* ---------- Bühne Startseite ---------- */
.buehne{position:relative;display:grid;grid-template-columns:1fr;grid-template-areas:"kopf" "szene" "rest";background:var(--putz)}
.buehne-kopf{grid-area:kopf;padding:18px var(--rand) 0;position:relative;z-index:2}
.buehne-rest{grid-area:rest;padding:26px var(--rand) 10px}
.buehne .kicker{font-size:14px;margin-bottom:10px}
.buehne h1{font-size:clamp(31px,8.6vw,96px);margin-bottom:12px}
.buehne h1 .rot{display:block}
.buehne-lead{font-size:19px;max-width:560px}
.buehne-fakt{font-family:var(--mono);font-weight:700;font-size:15px;color:var(--grau);margin-top:18px}
.buehne .knopfreihe{margin-top:4px}
.szene{grid-area:szene;position:relative;height:max(300px,min(calc(100vw * 640 / 600),calc(100svh - 300px)));max-height:560px;overflow:hidden;cursor:pointer;-webkit-tap-highlight-color:transparent}
.szene-svg{position:absolute;inset:0;width:100%;height:100%}
.szene-zettel{position:absolute;left:var(--rand);top:9%;max-width:min(45%,260px);font-size:14px;line-height:1.38;background:var(--papier);padding:9px 11px;margin:0;box-shadow:3px 3px 0 var(--blei),0 0 0 1.5px var(--blei);z-index:2;transform:rotate(-1.5deg)}
.szene-zettel b{display:block;font-family:var(--titel);font-weight:400;font-size:14px;color:var(--rot);margin-bottom:3px}
.szene-ort{display:none;position:absolute;left:var(--rand);bottom:14px;margin:0;font-family:var(--mono);font-weight:700;font-size:14px;color:#fbf8f2;letter-spacing:.08em;text-transform:uppercase;z-index:2;text-shadow:0 1px 2px rgba(0,0,0,.5)}
.szene-zettel p{margin:0 0 8px}
.szene-knopf{position:relative;z-index:2;white-space:nowrap;background:var(--blei);color:#fbf8f2;border:0;font-family:var(--mono);font-weight:700;font-size:15px;letter-spacing:.04em;min-height:44px;padding:0 14px;cursor:pointer;clip-path:polygon(6px 0,calc(100% - 6px) 0,100% 100%,0 100%)}
.szene-knopf::before{content:"";display:inline-block;width:11px;height:11px;border-radius:50%;background:var(--ball);margin-right:8px;vertical-align:-1px}
.abdruecke ellipse{fill:#6f2610;opacity:.55}
@media(min-width:900px){
 .buehne{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);grid-template-areas:"kopf szene" "rest szene";grid-template-rows:1fr auto;min-height:calc(100vh - 70px)}
 .buehne-kopf{padding:clamp(40px,8vh,110px) 20px 0 max(var(--rand),calc((100vw - 1440px) / 2 + var(--rand)));align-self:end}
 .buehne-rest{padding:10px 20px clamp(40px,8vh,90px) max(var(--rand),calc((100vw - 1440px) / 2 + var(--rand)))}
 .buehne h1{font-size:clamp(38px,4.5vw,76px);overflow-wrap:normal}
 .buehne-lead{font-size:21px}
 .szene{height:auto;max-height:none;min-height:600px}
 .szene-zettel{left:5%;top:12%;max-width:250px;font-size:15px}
}
/* ---------- Abschnitte ---------- */
.abschnitt,.seit,.meister,.preise,.anlage,.liebe,.alter,.steine-start,.komm{padding:var(--luft) 0}
.dunkel{background:var(--blei);color:#efe9df}
.dunkel h2,.dunkel h3{color:#fbf8f2}
.dunkel a:not(.barren){color:var(--ball)}
.hellgrund{background:var(--putz2)}
.fliess p{max-width:70ch}
.fliess ul,.fliess ol{padding-left:1.2em}
.gross-text{font-size:20px}

/* Seit 1926 */
.seit-in{display:grid;grid-template-columns:minmax(0,1fr);gap:40px;align-items:center}
.papier{margin:0;background:#fff;padding:10px;box-shadow:0 18px 40px rgba(0,0,0,.35);transform:rotate(-2deg);max-width:min(380px,calc(100% - 16px))}
.papier figcaption{font-family:var(--mono);font-weight:700;font-size:14px;color:var(--grau);padding-top:8px}
.dunkel .papier figcaption{color:var(--grau)}
.protokoll{margin:0;justify-self:center;max-width:100%;display:flex;justify-content:center}
.fallmarken{list-style:none;padding:0;margin:30px 0;border-left:4px solid var(--ball)}
.fallmarken li{position:relative;padding:4px 0 18px 26px}
.fallmarken li::before{content:"";position:absolute;left:-12px;top:12px;width:20px;height:20px;border-radius:50%;background:var(--ball);box-shadow:0 0 0 4px var(--blei)}
.fallmarken b{display:block;font-family:var(--titel);font-weight:400;font-size:clamp(30px,5vw,46px);line-height:1;color:#fbf8f2}
.fallmarken span{color:#d9d3c8}
@media(min-width:900px){.seit-in{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:80px}}

/* Ehrentafel: Namen in Bleibarren gegossen */
.meister-kopf{display:grid;gap:26px;align-items:end;margin-bottom:34px}
.meister-foto{margin:0}
.meister-foto img{width:100%;aspect-ratio:16/7;object-fit:cover}
@media(min-width:900px){.meister-kopf{grid-template-columns:1fr 1fr}}
.ehrentafel{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
@media(max-width:600px){.ehrentafel{grid-template-columns:minmax(0,1fr);gap:8px}.guss{padding:10px 14px 12px !important}.guss-n{font-size:15.5px}.guss-k{font-size:13px;letter-spacing:.06em}}
.guss{padding:10px 20px 12px !important;background:linear-gradient(180deg,#5a5e68 0%,#3c4049 40%,#2b2e35 100%);color:#fbf8f2;padding:14px 22px 16px;clip-path:polygon(12px 0,calc(100% - 12px) 0,100% 100%,0 100%);box-shadow:inset 0 2px 0 rgba(255,255,255,.25)}
.guss-k{display:block;font-family:var(--mono);font-weight:700;font-size:14px;letter-spacing:.1em;text-transform:uppercase;color:var(--ball)}
.guss-n{display:block;font-family:var(--titel);font-size:18px;line-height:1.2;margin-top:4px;overflow-wrap:break-word}
.meister-weiter{margin-top:28px}

/* Etikett: Papierschild wie auf einem alten Schrotbeutel */
.etikett{background:var(--kraft);padding:10px;max-width:520px;width:100%;box-shadow:0 14px 34px rgba(43,46,53,.22);transform:rotate(1.2deg);justify-self:center}
.et-rand{border:3px double var(--rot);padding:20px 20px 16px;background:repeating-linear-gradient(0deg,transparent 0 27px,rgba(142,52,21,.06) 27px 28px)}
.et-kopf{display:flex;justify-content:space-between;align-items:baseline;gap:10px;border-bottom:3px solid var(--blei);padding-bottom:8px;margin-bottom:12px;flex-wrap:wrap}
.et-kopf span{font-family:var(--mono);font-weight:700;letter-spacing:.1em;text-transform:uppercase;font-size:14px}
.et-kopf b{font-family:var(--titel);font-weight:400;font-size:24px;color:var(--rot)}
.et-sorte{font-family:var(--titel);font-size:16px;margin:14px 0 4px}
.et-sorte small{font-family:var(--text);font-size:14px;color:var(--grau)}
.et-liste{list-style:none;padding:0;margin:0}
.et-liste li{display:flex;align-items:baseline;gap:8px;padding:4px 0;font-size:16.5px}
.et-liste i{flex:1;border-bottom:2px dotted var(--grau);transform:translateY(-4px);min-width:16px}
.et-liste b{font-family:var(--mono);font-weight:700;font-size:18px;white-space:nowrap}
.et-frei{margin:14px 0 6px;background:var(--rot);color:#fff;padding:8px 12px;font-size:15.5px;transform:rotate(-1.5deg)}
.et-frei b{font-family:var(--titel);font-weight:400;margin-right:6px}
.et-fein{font-size:14px;color:var(--grau);margin:10px 0 0;line-height:1.45}
.et-fuss{font-family:var(--mono);font-weight:700;font-size:13.5px;color:var(--grau);text-align:center;margin:10px 0 0;letter-spacing:.06em}
.preise-in{display:grid;gap:44px;align-items:center}
@media(min-width:900px){.preise-in{grid-template-columns:1.1fr .9fr;gap:70px}}

/* Anlage */
.anlage-raster{display:grid;gap:16px;margin-top:28px}
.bild{margin:0}
.bild a{display:block}
.bild img{width:100%}
.bild figcaption{font-size:15px;color:var(--grau);padding-top:7px;line-height:1.4}
.dunkel .bild figcaption{color:#cfc8bc}
.anlage-raster .bild img{aspect-ratio:4/3;object-fit:cover}
.buchen-tafel{background:var(--blei);color:#efe9df;padding:26px 24px}
.buchen-tafel .kicker{color:var(--ball)}
.gross-tel{font-family:var(--titel);font-size:clamp(30px,5vw,44px);line-height:1.1;margin:0 0 12px}
.gross-tel a{color:inherit;text-decoration:none}
.buchen-tafel .gross-tel a{color:#fbf8f2}
.buchen-tafel .klein{color:#cfc8bc;margin-top:16px}
@media(min-width:760px){.anlage-raster{grid-template-columns:1fr 1fr}.a1{grid-column:1/-1}.a1 img{aspect-ratio:16/7}}
@media(min-width:1100px){.anlage-raster{grid-template-columns:1.3fr 1fr 1fr}.a1{grid-column:1/2;grid-row:1/3;display:flex;flex-direction:column}.a1 a{flex:1;min-height:0}.a1 img{aspect-ratio:auto;height:100%;object-fit:cover}.buchen-tafel{grid-column:2/4}}

/* Liebe zum Tennis: Zitat auf Sand */
.liebe{background:var(--sand);color:#fff;position:relative;overflow:hidden}
.liebe::before{content:"";position:absolute;left:0;right:0;top:34px;height:4px;background:#fbf8f2;opacity:.9}
.liebe::after{content:"";position:absolute;left:0;right:0;bottom:34px;height:4px;background:#fbf8f2;opacity:.9}
.zitat{color:#fff !important;font-size:clamp(26px,4.8vw,58px);max-width:20ch;line-height:1.12}
.liebe-sig{font-family:var(--mono);font-weight:700;font-size:20px;color:var(--ball)}
.liebe-mehr a{color:#fff;font-weight:700}

/* Für jedes Alter */
.alter-zeile{display:grid;gap:22px;align-items:center;padding:30px 0;border-top:3px solid var(--sand)}
.alter-zeile .bild img{aspect-ratio:4/3;object-fit:cover}
.zahl{font-family:var(--titel);font-size:clamp(46px,8vw,90px);line-height:1;color:var(--rot);margin:0 0 6px}
@media(min-width:900px){.alter-zeile{grid-template-columns:1fr 1fr;gap:70px}.z2 > div{order:-1}.alter-zeile .bild{max-width:520px}.z1 .bild,.z3 .bild{justify-self:start}.z2 .bild{justify-self:end}}

/* Mauer der Sponsoren: Steine im Turm, Läuferverband */
.mauer{list-style:none;margin:30px 0 0;padding:14px;display:grid;grid-template-columns:repeat(2,1fr);gap:8px;background:#b9ad98}
.stein{background:linear-gradient(180deg,#fbf8f2,#efe8dc);box-shadow:inset 0 -3px 0 rgba(0,0,0,.08)}
.stein>a,.stein>span{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:120px;padding:14px;text-decoration:none;color:var(--tinte);height:100%}
.stein img{max-height:64px;width:auto;max-width:100%;object-fit:contain}
.stein-name{font-size:13.5px;line-height:1.25;text-align:center;color:var(--grau)}
.stein.frei{background:var(--blei)}
.stein.frei a{color:#fbf8f2}
.stein.frei b{font-family:var(--titel);font-weight:400;font-size:18px;color:var(--ball)}
.stein.frei span{font-size:14px}
@media(min-width:700px){.mauer{grid-template-columns:repeat(6,1fr)}.stein{grid-column:span 2}.mauer>.stein:nth-child(5n+4){grid-column:2/span 2}}
@media(min-width:1100px){.mauer{grid-template-columns:repeat(8,1fr)}.mauer>.stein:nth-child(5n+4){grid-column:auto/span 2}.mauer>.stein:nth-child(7n+5){grid-column:2/span 2}}

.komm{background:var(--putz2)}
.komm-in{display:grid;gap:30px;align-items:center}
.komm-foto img{aspect-ratio:16/10;object-fit:cover}
@media(min-width:900px){.komm-in{grid-template-columns:1.2fr 1fr;gap:60px}}

/* ---------- Seitenkopf Unterseiten ---------- */
.skopf{background:var(--blei);color:#efe9df;position:relative;overflow:hidden}
.skopf-in{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:end;padding-top:clamp(34px,6vw,80px);padding-bottom:30px}
.skopf h1{color:#fbf8f2;font-size:clamp(32px,7vw,78px);margin:0 0 12px}
.skopf .kicker{color:var(--ball)}
.skopf-unter{font-size:19px;max-width:60ch;color:#ddd6ca;margin:0}
.kopf-turm{width:40px;height:150px;color:#8a8f99;align-self:end}
.kt-ball{animation:ktfall 1.3s cubic-bezier(.55,0,1,.6) .3s both}
@keyframes ktfall{0%{transform:translateY(-150px);fill:#8a8f99}55%{fill:#f2e21d}100%{transform:none}}
.skopf-sand{height:26px;background:var(--sand);border-top:4px solid #fbf8f2;position:relative}
.skopf-sand::after{content:"";position:absolute;left:0;right:0;bottom:8px;height:3px;background:rgba(251,248,242,.9)}
@media(min-width:900px){.kopf-turm{width:56px;height:210px}}
.archivkopf h1{font-size:clamp(30px,6vw,64px)}

/* Saisonband */
.saisonband{list-style:none;padding:0;margin:20px 0 26px;display:grid;grid-template-columns:minmax(0,1fr);gap:0;border-left:4px solid var(--ball)}
.saisonband li{padding:6px 0 22px 24px;position:relative}
.saisonband li::before{content:"";position:absolute;left:-12px;top:12px;width:20px;height:20px;border-radius:50%;background:var(--ball);box-shadow:0 0 0 4px var(--blei)}
.t-dat{display:block;font-family:var(--mono);font-weight:700;color:var(--ball);font-size:16px}
.t-was{display:block;font-family:var(--titel);font-size:clamp(19px,2.4vw,28px);color:#fbf8f2;line-height:1.15}
.t-wo{display:block;color:#d9d3c8}
@media(min-width:900px){.saisonband{grid-template-columns:repeat(4,minmax(0,1fr));border-left:0;border-top:4px solid var(--ball);padding-top:0}.saisonband li{padding:30px 20px 0 0}.saisonband li::before{left:0;top:-12px}}
.abschluss{display:grid;gap:36px;align-items:start}
.flyer img{box-shadow:0 12px 30px rgba(0,0,0,.2)}
.abschluss .flyer{max-width:420px}
@media(min-width:900px){.abschluss{grid-template-columns:1.3fr .7fr}}
.aushang{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:26px;margin-top:22px;align-items:start}
.aushang .bild:nth-child(odd){transform:rotate(-1.2deg)}
.aushang .bild:nth-child(even){transform:rotate(1deg)}
.aushang.drei{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.blattbild img{background:#fff;padding:8px;box-shadow:0 8px 20px rgba(0,0,0,.15)}
.zwei{margin-top:26px;max-width:640px}

/* Mannschaften: Feld mit Netz */
.feld{display:grid;gap:0;background:var(--sand);padding:clamp(16px,3vw,34px);box-shadow:inset 0 0 0 4px #fbf8f2,inset 0 0 0 clamp(14px,2.6vw,30px) var(--sand),inset 0 0 0 calc(clamp(14px,2.6vw,30px) + 4px) #fbf8f2}
.feld-seite{padding:clamp(18px,3vw,30px)}
.feld-k{font-family:var(--mono);font-weight:700;color:var(--ball);letter-spacing:.1em;text-transform:uppercase;font-size:15px;margin:0 0 10px}
.feld ol{list-style:none;padding:0;margin:0}
.feld li{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:2px solid rgba(251,248,242,.35);color:#fff;align-items:baseline;flex-wrap:wrap}
.feld li b{font-family:var(--titel);font-weight:400;font-size:clamp(18px,2.2vw,22px)}
.feld li span{font-family:var(--mono);font-weight:700;font-size:15px}
.feld-netz{height:16px;margin:6px clamp(10px,2vw,20px);background:repeating-linear-gradient(90deg,#2b2e35 0 2px,transparent 2px 9px),repeating-linear-gradient(0deg,#2b2e35 0 2px,transparent 2px 7px);border-top:5px solid #fbf8f2}
@media(min-width:900px){.feld{grid-template-columns:1fr 18px 1fr}.feld-netz{height:auto;margin:clamp(10px,2vw,20px) 0;border-top:0;border-left:5px solid #fbf8f2}}

/* Chronik: der Ball fällt durch die Jahre */
.chronik{position:relative;padding-left:58px}
.chronik-schacht{position:absolute;left:8px;top:0;bottom:0;width:22px;background:linear-gradient(90deg,#1b1c21,#3c4049,#1b1c21);border-radius:3px}
.chronik-ball{position:sticky;top:46vh;display:block;width:18px;height:18px;margin-left:2px;border-radius:50%;background:var(--ball);box-shadow:0 0 0 2px var(--blei);transition:background .3s}
.chronik-ball.blei{background:var(--bleihell);border-radius:50% 50% 50% 50%/62% 62% 38% 38%}
.stationen{list-style:none;padding:0;margin:0}
.station{display:grid;gap:4px 34px;padding:0 0 46px;position:relative}
.station::before{content:"";position:absolute;left:-36px;top:20px;width:28px;height:3px;background:var(--blei)}
.st-jahr{font-family:var(--titel);font-size:clamp(40px,6vw,70px);line-height:1;color:var(--rot)}
.st-text h3{margin-bottom:10px}
.st-text p{max-width:66ch}
.st-bilder{display:grid;gap:18px;margin-top:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:start}
.st-bilder .papier{transform:rotate(1.5deg)}
@media(min-width:900px){.chronik{padding-left:80px}.chronik-schacht{left:12px;width:28px}.chronik-ball{width:22px;height:22px;margin-left:3px}.station{grid-template-columns:250px 1fr}.station::before{left:-52px;width:44px}}
.praesident{display:grid;gap:30px;align-items:center}
.praesident .bild{max-width:260px}
@media(min-width:900px){.praesident{grid-template-columns:260px 1fr;gap:60px}}

/* Vorstand: Turmfenster */
.turmfenster{display:block;border:4px solid var(--blei);border-radius:999px 999px 4px 4px;overflow:hidden;background:var(--blei);aspect-ratio:3/4;max-width:200px;box-shadow:0 0 0 6px var(--putz2),0 0 0 8px var(--blei)}
.turmfenster img{width:100%;height:100%;object-fit:cover}
.turmfenster.gross{max-width:180px}
.praesident-zeile{display:grid;grid-template-columns:auto 1fr;gap:28px;align-items:center}
.fensterreihe{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:44px 30px}
.fenster-person .turmfenster{margin:8px 8px 18px}
.rolle{font-family:var(--mono);font-weight:700;color:var(--sandt);margin:0 0 8px;overflow-wrap:anywhere;hyphens:auto}
.kontakt{display:flex;flex-direction:column;margin:0}
.kontakt a{padding:8px 0;font-size:16.5px;overflow-wrap:anywhere}
@media(max-width:520px){.praesident-zeile{grid-template-columns:120px 1fr;gap:18px}.fensterreihe{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 16px}.fenster-person .turmfenster{margin:8px 8px 18px;max-width:calc(100% - 16px)}.fenster-person h3{font-size:18px}.kontakt a{font-size:15px}}

/* Mitglied */
.abo-liste{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:0;counter-reset:a}
.abo-liste li{padding:16px 0 16px 46px;border-top:2px solid #4c505a;position:relative;font-size:19px;color:#fbf8f2}
.abo-liste li::before{content:"";position:absolute;left:4px;top:18px;width:24px;height:24px;border-radius:50%;background:var(--ball);box-shadow:inset -4px -3px 0 rgba(0,0,0,.12)}
@media(min-width:900px){.abo-liste{grid-template-columns:1fr 1fr;column-gap:50px}}
.anfrage-in{display:grid;gap:40px}
.anfrage-in .bild{max-width:300px;margin-top:20px}
@media(min-width:900px){.anfrage-in{grid-template-columns:1fr 1.1fr;gap:70px}}
.formular{display:grid;gap:16px;background:var(--papier);padding:24px;box-shadow:0 0 0 2px var(--blei),6px 6px 0 var(--sand)}
.formular label{display:grid;gap:6px;font-weight:700;font-size:16px}
.formular input,.formular select,.formular textarea{font-weight:400;font-size:18px;padding:12px 14px;border:2px solid var(--blei);border-radius:0;background:#fff;min-height:50px;width:100%}
.formular input:focus,.formular select:focus,.formular textarea:focus{outline:3px solid var(--ball);outline-offset:0;border-color:var(--blei)}
.formular fieldset{border:0;padding:0;margin:0;display:grid;gap:6px}
.formular legend{font-weight:700;font-size:16px;margin-bottom:6px}
.wahl{display:flex !important;grid-template-columns:none;align-items:center;gap:12px !important;font-weight:400 !important;min-height:44px;cursor:pointer}
.wahl input{appearance:none;-webkit-appearance:none;width:26px;height:26px;min-height:0;padding:0;border-radius:50%;border:2px solid var(--blei);background:#fff;flex:none}
.wahl input:checked{background:radial-gradient(circle at 50% 50%,var(--ball) 0 7px,#fff 7.5px)}
.formular-fehler{color:var(--rot);font-weight:700;margin:0}
.formular .barren{justify-self:start}

/* Blattfenster */
.blatt{display:grid;grid-template-columns:110px minmax(0,1fr);gap:18px;align-items:start;background:var(--papier);padding:16px;box-shadow:0 0 0 2px var(--blei);max-width:640px;margin:18px 0}
.blatt-bild{display:block;background:#fff;box-shadow:0 6px 14px rgba(0,0,0,.18);transform:rotate(-2deg)}
.blatt-bild img{width:100%}
.blatt-xls{display:grid;place-items:center;aspect-ratio:3/4;font-family:var(--titel);color:#1f6e3a;font-size:22px}
.blatt-text strong{display:block;font-family:var(--titel);font-weight:400;font-size:17px;line-height:1.2;margin-bottom:4px;overflow-wrap:anywhere}
.blatt-art{display:block;font-family:var(--mono);font-weight:700;font-size:14px;color:var(--grau);margin-bottom:12px}
.blatt-knoepfe{display:flex;flex-wrap:wrap;gap:10px}
.blatt.klein{grid-template-columns:76px minmax(0,1fr)}
.blaetter{display:grid;grid-template-columns:minmax(0,1fr);gap:4px}
@media(min-width:900px){.blaetter{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:30px}}

/* Trainer: auf der Grundlinie */
.grundlinie{margin:40px 0 10px;padding-bottom:20px;border-bottom:6px solid #fbf8f2;box-shadow:0 26px 0 var(--sand)}
.trainer-reihe{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:30px 20px;align-items:end}
.trainer-reihe img{aspect-ratio:3/4;object-fit:cover;width:100%;filter:saturate(.9)}
.trainer-reihe h3{font-size:18px;margin:10px 0 2px}
.trainer-reihe p{margin:0;font-family:var(--mono);font-weight:700;font-size:14px;color:var(--sandt)}
.ohne .ini{display:grid;place-items:center;aspect-ratio:3/4;background:var(--putz2);font-family:var(--titel);font-size:40px;color:var(--bleihell);box-shadow:inset 0 0 0 2px var(--bleihell)}

/* Jugend: der Ball wächst mit */
.wachsen{display:grid;gap:26px;align-items:end}
.w-stufe{display:grid;grid-template-columns:auto 1fr;gap:0 20px;align-items:center}
.w-stufe .w-ball{grid-row:1/4;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff9b0,var(--ball) 45%,#cdbd0d);box-shadow:inset -6px -6px 0 rgba(0,0,0,.08)}
.b1{width:56px;height:56px}.b2{width:84px;height:84px}.b3{width:116px;height:116px}
.w-alter{font-family:var(--mono);font-weight:700;color:var(--sandt);margin:0}
.w-stufe h3{margin:2px 0}
.w-stufe p:last-child{margin:0}
@media(min-width:900px){.wachsen{grid-template-columns:repeat(3,1fr);gap:40px}.w-stufe{grid-template-columns:1fr;justify-items:start}.w-stufe .w-ball{grid-row:auto;margin-bottom:16px}}
.pakete .paket{margin-bottom:6px}
.paket-k{font-family:var(--titel);font-size:17px;margin:10px 0 2px}

/* Senioren: mischen */
.senioren-in{display:grid;gap:40px;align-items:start}
.m-plaetze{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.m-platz{position:relative;aspect-ratio:1/1.6;background:var(--sand);box-shadow:inset 0 0 0 4px #fbf8f2,inset 0 0 0 14px var(--sand),inset 0 0 0 17px #fbf8f2}
.m-netz{position:absolute;left:8px;right:8px;top:50%;height:4px;background:#fbf8f2;transform:translateY(-50%)}
.m-punkt{position:absolute;width:30px;height:30px;margin:-15px 0 0 -15px;border-radius:50%;display:grid;place-items:center;font-family:var(--mono);font-weight:700;font-size:13px;transition:left .9s cubic-bezier(.5,0,.3,1.3),top .9s cubic-bezier(.5,0,.3,1.3)}
.m-punkt.d{background:var(--ball);color:var(--tinte)}
.m-punkt.h{background:var(--blei);color:#fff}
.m-bank{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0;min-height:30px}
.m-bank .m-punkt{position:static;margin:0}
.mischen .barren{margin-top:6px}
@media(min-width:900px){.senioren-in{grid-template-columns:.9fr 1.1fr;gap:70px}}
.bildstrecke .bild{margin-bottom:20px}
.bildstrecke{columns:2 260px;column-gap:22px}
.bildstrecke .bild,.bildstrecke .mit-bild{break-inside:avoid}

/* Archiv */
.jahrgaenge{list-style:none;padding:0;margin:0}
.jahrgang{display:grid;grid-template-columns:minmax(0,1fr);gap:10px 30px;padding:26px 0;border-top:3px solid var(--blei);align-items:start}
.jg-jahr{font-family:var(--titel);font-size:clamp(46px,8vw,92px);line-height:.95;color:var(--blei)}
.jg-links{display:flex;flex-wrap:wrap;gap:10px}
.jg-links a{display:flex;flex-direction:column;justify-content:center;min-height:56px;padding:8px 16px;background:var(--papier);box-shadow:0 0 0 2px var(--blei);text-decoration:none;color:var(--tinte)}
.jg-links a span{font-family:var(--titel);font-size:16px;line-height:1.2}
.jg-links a small{font-family:var(--mono);font-weight:700;font-size:14px;color:var(--sandt)}
.jg-links a:hover{background:var(--ball)}
.jg-kugeln{height:12px;background:radial-gradient(circle,var(--bleihell) 4px,transparent 4.5px) 0 0/12px 12px repeat-x;width:calc(var(--n)*12px);max-width:100%}
@media(min-width:900px){.jahrgang{grid-template-columns:220px 1fr}.jg-kugeln{grid-column:2}}
.archiv-inhalt{display:grid;grid-template-columns:minmax(0,1fr);gap:4px}
.archiv-inhalt .fliess{overflow-wrap:break-word}
.archiv-inhalt .a-titel{margin-top:34px;font-size:clamp(22px,3.2vw,34px)}
.archiv-inhalt .fliess{max-width:72ch}
.archiv-inhalt>.bild{max-width:560px;margin:10px 0 18px}
.mit-bild{display:grid;gap:18px;margin:14px 0 22px;align-items:start}
.mit-bild .bild{max-width:300px}
@media(min-width:760px){.mit-bild{grid-template-columns:240px 1fr;gap:30px}}
.galerie{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:6px;margin:16px 0 26px}
.galerie a{display:block;aspect-ratio:4/3;overflow:hidden;background:var(--putz2)}
.galerie img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.galerie a:hover img{transform:scale(1.05)}
@media(min-width:900px){.galerie{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px}}
.blaettern{display:flex;flex-wrap:wrap;gap:12px;margin-top:50px;padding-top:26px;border-top:3px solid var(--blei)}

/* Platz buchen, Kontakt */
.buchen-in{display:grid;gap:30px;margin-bottom:30px}
.anruf{padding:24px;background:var(--papier);box-shadow:0 0 0 2px var(--blei),6px 6px 0 var(--ball)}
@media(min-width:900px){.buchen-in{grid-template-columns:1fr 1fr}}
.kontakt-in{display:grid;gap:40px}
.adresse{font-family:var(--titel);font-size:clamp(22px,3vw,30px);line-height:1.25}
@media(min-width:900px){.kontakt-in{grid-template-columns:1fr 1.2fr;gap:70px}}
.anfahrt-in{display:grid;gap:34px;align-items:center}
.skizze{width:100%;max-width:520px;height:auto;box-shadow:0 0 0 2px var(--blei)}
@media(min-width:900px){.anfahrt-in{grid-template-columns:1fr 1.1fr;gap:60px}}
.kontaktliste{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:0 30px}
.kontaktliste li{display:flex;flex-direction:column;padding:16px 0;border-top:2px solid var(--blei)}
.kontaktliste b{font-family:var(--titel);font-weight:400;font-size:18px}
.kontaktliste span{font-family:var(--mono);font-weight:700;color:var(--sandt);font-size:15px}
.kontaktliste a{padding:7px 0;overflow-wrap:break-word}

/* Sponsoren */
.sponsor-in{display:grid;gap:40px;align-items:center}
.stein-gross{background:linear-gradient(180deg,#fbf8f2,#e8e0d2);color:var(--blei);min-height:200px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;box-shadow:0 0 0 12px #b9ad98;transform:rotate(-2deg)}
.stein-gross b{font-family:var(--titel);font-weight:400;font-size:clamp(30px,4vw,46px);color:var(--rot)}
.stein-gross span{font-family:var(--mono);font-weight:700}
@media(min-width:900px){.sponsor-in{grid-template-columns:1.3fr .7fr;gap:80px}}

/* Recht */
.recht h2{font-size:clamp(20px,2.6vw,26px);margin-top:34px}
.recht ul{padding-left:1.2em}
.schalter{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 0;border-top:2px solid var(--blei)}
.schalter h3{margin:0 0 4px;font-size:20px}
.schalter p{margin:0;color:var(--grau);font-size:16px}
.hebel{display:inline-flex;border:2px solid var(--blei);background:var(--papier);padding:0;cursor:pointer;flex:none}
.hebel span{display:grid;place-items:center;min-width:56px;min-height:46px;font-family:var(--titel);font-size:14px}
.hebel .h-aus{background:var(--blei);color:#fff}
.hebel[aria-pressed=true] .h-aus{background:none;color:var(--grau)}
.hebel[aria-pressed=true] .h-an{background:var(--ball);color:var(--tinte)}

/* Digitalpartner-Karte */
.hh-karte{display:grid;gap:12px;align-items:center;text-decoration:none;color:var(--tinte);background:#fff;padding:16px;border-left:10px solid var(--sand);margin-top:34px;max-width:640px;font-size:16.5px;line-height:1.4;box-shadow:0 0 0 2px var(--tinte)}
.hh-karte:hover{color:var(--tinte)}
.digital-marke{display:inline-flex;align-items:flex-end;gap:5px}
.digital-marke img:first-child{height:30px;width:auto}
.digital-marke img:last-child{height:38px;width:auto}
.digital-text small{display:block;font-family:var(--mono);font-weight:700;font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:var(--sandt);margin-bottom:2px}
@media(min-width:600px){.hh-karte{grid-template-columns:auto 1fr;gap:20px}}

/* ---------- Fuss ---------- */
.fuss{background:var(--bleit);color:#d9d3c8;position:relative}
.fuss-sand{height:22px;background:var(--sand);border-bottom:4px solid #fbf8f2}
.fuss-in{display:grid;gap:30px;padding-top:50px;padding-bottom:50px}
.fuss a{color:#fbf8f2}
.fuss-satz{font-family:var(--titel);font-size:clamp(22px,3vw,30px);line-height:1.2;color:var(--ball)}
.fuss-k{font-family:var(--mono);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--bleihell);font-size:14px;margin-bottom:8px}
.fuss-tel{font-family:var(--titel);font-size:24px}
.fuss-tel a{text-decoration:none}
.fuss-links{list-style:none;padding:0;margin:0;columns:2;column-gap:20px}
.fuss-links a{display:inline-block;padding:7px 0;font-size:16px}
@media(min-width:900px){.fuss-in{grid-template-columns:1.2fr 1fr 1.3fr}}

.hh-band{background:#0b0b0c;text-align:center;padding:12px 16px}
.hh-band a{display:inline-flex;align-items:baseline;gap:12px;color:#fff;text-decoration:none;min-height:44px;flex-wrap:wrap;justify-content:center}
.hh-satz{font-size:14.5px;letter-spacing:.02em;opacity:.92}
.hh-marke{display:inline-flex;align-items:flex-end;gap:5px;position:relative;top:calc(26px * 480 / 2050)}
.hh-wort{height:26px;width:auto}
.hh-figur{height:34px;width:auto;transform-origin:50% 100%;animation:hh-wipp 4.2s ease-in-out infinite,hh-hupf 7s ease-in-out infinite}
@keyframes hh-wipp{0%,100%{rotate:-3deg}50%{rotate:3deg}}
@keyframes hh-hupf{0%,86%,100%{translate:0 0}90%{translate:0 -6px}94%{translate:0 0}}
@media(min-width:900px){.hh-figur{height:30px}}

/* feste Leiste Handy */
.leiste{position:fixed;left:0;right:0;bottom:0;z-index:60;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:8px 10px calc(8px + env(safe-area-inset-bottom));background:var(--blei);border-top:4px solid var(--sand)}
.leiste .barren{min-height:50px;padding:0 10px;font-size:14px}
.hh-band{padding-bottom:84px}
@media(min-width:900px){.leiste{display:none}.hh-band{padding-bottom:12px}}

/* Lichtbox */
.lichtbox{border:0;padding:0;max-width:100vw;max-height:100vh;width:100vw;height:100vh;background:rgba(20,21,25,.96);color:#fff}
.lichtbox::backdrop{background:rgba(20,21,25,.9)}
.lichtbox figure{margin:0;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:70px 12px 90px}
.lichtbox img{max-width:100%;max-height:calc(100vh - 180px);object-fit:contain}
.lichtbox figcaption{margin-top:12px;max-width:70ch;text-align:center;font-size:16px}
.lb-zu,.lb-vor,.lb-nach{position:absolute;background:var(--ball);color:var(--tinte);border:0;font-family:var(--titel);font-size:14px;min-height:46px;padding:0 16px;cursor:pointer;clip-path:polygon(8px 0,calc(100% - 8px) 0,100% 100%,0 100%)}
.lb-zu{top:14px;right:14px}
.lb-vor{bottom:22px;left:14px}
.lb-nach{bottom:22px;right:14px}
.lb-zahl{position:absolute;bottom:32px;left:50%;transform:translateX(-50%);margin:0;font-family:var(--mono);font-weight:700}

/* Einstellungen */
html.grosse-schrift body{font-size:21.5px}
html.grosse-schrift .klein,html.grosse-schrift .stein-name{font-size:17px}
html.mehr-kontrast{--grau:#2f2b27;--putz:#fffdf8;--putz2:#efe8dc;--sandt:#6e260c}
html.mehr-kontrast .skopf-unter,html.mehr-kontrast .dunkel{color:#fff}
html.ruhig *,html.ruhig *::before,html.ruhig *::after{animation:none !important;transition:none !important}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none !important;transition:none !important}}

.glut{opacity:0;filter:blur(1.5px)}
.glut.an{animation:glut 1.2s ease-out}
@keyframes glut{0%{opacity:0}20%{opacity:1}100%{opacity:0}}
@media(min-width:900px){.szene-ort{display:block}}
main,footer{overflow-x:clip}
.banner04{display:block;max-width:409px;margin:4px 0 12px}
.jugend-auf{display:flex;align-items:center;gap:20px;margin-bottom:34px}.jugend-auf .bild{max-width:240px}.jugend-auf .zahl{margin:0}
