/* cerny · Prototyp martina-cerny.com. Ein CSS. Mobile zuerst. Dunkler Grund, Blau aus dem Band der alten Site. */

/* ---------- Schriften (selbst gehostet, OFL) ---------- */
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/barlowcondensed-600-latin.woff2) format('woff2')}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/barlowcondensed-700-latin.woff2) format('woff2')}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:800;font-display:swap;src:url(../fonts/barlowcondensed-800-latin.woff2) format('woff2')}
@font-face{font-family:'Barlow';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/barlow-400-latin.woff2) format('woff2')}
@font-face{font-family:'Barlow';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/barlow-500-latin.woff2) format('woff2')}
@font-face{font-family:'Barlow';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/barlow-600-latin.woff2) format('woff2')}
@font-face{font-family:'Barlow';font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/barlow-700-latin.woff2) format('woff2')}

/* ---------- Tokens ---------- */
:root{
	--grund:#121316;--flaeche:#1a1c20;--flaeche-2:#22252b;--rand:#2b2f36;--rand-hell:#3b404a;
	--text:#f3f4f6;--text-2:#b7bdc7;--text-3:#7f8792;
	--akzent:#2c8bd7;--akzent-hell:#4aa5ea;--akzent-tief:#1f6fb0;
	--display:'Barlow Condensed','Arial Narrow',Arial,sans-serif;--sans:'Barlow',system-ui,-apple-system,'Segoe UI',Arial,sans-serif;
	--pad:clamp(20px,5vw,48px);--wrap:1180px;
	--lane:var(--pad);                             /* Spur links vom Inhalt = Seitenrand, Linie sitzt mittig (Shane: links = rechts) */
	--spine-off:0px;                               /* Linie ab Randkante (pad) nach rechts, 0 = an der Kante */
	--spine-rel:calc(var(--spine-off) - var(--lane)); /* Linie relativ zur linken Inhaltskante */
	--kopf-h:64px;--radius:8px;
	--s1:.5rem;--s2:1rem;--s3:1.5rem;--s4:2.5rem;--s5:4rem;--s6:6rem;
}
@media (min-width:60em){:root{--lane:var(--pad);--spine-off:0px;--kopf-h:72px}}
@media (min-width:84em){:root{--lane:0px;--spine-off:-56px;--spine-rel:-56px}}

/* ---------- Basis ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--kopf-h) + 8px)}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
html,body{overflow-x:clip}
body{margin:0;background:var(--grund);color:var(--text-2);font:400 1.0625rem/1.6 var(--sans);-webkit-font-smoothing:antialiased}
img,svg,picture{display:block;max-width:100%}
img{height:auto}
a{color:var(--text);text-decoration-thickness:1px;text-underline-offset:.15em}
a:hover{color:var(--akzent-hell)}
:focus-visible{outline:2px solid var(--akzent-hell);outline-offset:3px;border-radius:2px}
h1,h2,h3,h4,p,ul,ol,dl,figure,blockquote{margin:0}
ul,ol{padding:0;list-style:none}
strong{color:var(--text);font-weight:600}
.skip{position:absolute;left:-999px;top:8px;z-index:100;background:var(--akzent);color:#fff;padding:.5em 1em;border-radius:4px}
.skip:focus{left:8px}
.wrap{position:relative;max-width:var(--wrap);margin-inline:auto;padding-inline:var(--pad)}
.wrap--schmal{max-width:820px}

/* ---------- Typografie ---------- */
.h1,.h2,.h3,.h4,.hero__h1{font-family:var(--display);text-transform:uppercase;color:var(--text);font-weight:800;line-height:.95;letter-spacing:.005em;text-wrap:balance}
.h1{font-size:clamp(2.8rem,8vw,5.5rem)}
.h2{font-size:clamp(2.4rem,6vw,4rem)}
.h3{font-size:clamp(1.5rem,3vw,1.9rem);font-weight:700;line-height:1.05}
.h4{font-size:1.25rem;font-weight:700;line-height:1.1;letter-spacing:.02em}
.kicker{font:600 .78rem/1.2 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--akzent-hell);margin-bottom:var(--s2)}
.lead{font:500 clamp(1.15rem,2.2vw,1.35rem)/1.45 var(--sans);color:var(--text);text-wrap:pretty}
.klein{font-size:.85rem;color:var(--text-3)}
p+p{margin-top:var(--s2)}
.sek__kopf{margin-bottom:var(--s4);max-width:760px}
.sek__kopf .h2+.lead,.sek__kopf .lead+p{margin-top:var(--s2)}
.sek__kopf--zeile{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--s2) var(--s3);max-width:none}

/* ---------- Buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;font:700 1.05rem/1 var(--display);text-transform:uppercase;letter-spacing:.06em;padding:.95em 1.6em;border-radius:4px;border:1.5px solid transparent;text-decoration:none;cursor:pointer;transition:background-color .15s,border-color .15s,color .15s,transform .15s}
.btn--primaer{background:var(--akzent);color:#fff;border-color:var(--akzent)}
.btn--primaer:hover{background:var(--akzent-hell);border-color:var(--akzent-hell);color:#fff}
.btn--sekundaer{background:transparent;color:var(--text);border-color:var(--rand-hell)}
.btn--sekundaer:hover{border-color:var(--text);color:var(--text)}
.btn--gross{font-size:1.2rem;padding:1.05em 2em}
.btn:active{transform:translateY(1px)}

/* ---------- Kopf ---------- */
.kopf{position:fixed;inset:0 0 auto 0;z-index:50;height:var(--kopf-h);border-bottom:1px solid var(--rand)}
.kopf::before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(18,19,22,.82);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.kopf__innen{display:flex;align-items:center;gap:var(--s2);height:100%}
.kopf__marke{display:flex;align-items:center;gap:.7rem;text-decoration:none;color:var(--text);margin-right:auto}
.kopf__logo{width:36px;height:auto}
.kopf__name{display:flex;flex-direction:column;font:800 1.2rem/1 var(--display);text-transform:uppercase;letter-spacing:.02em}
.kopf__name small{font:600 .68rem/1.2 var(--sans);letter-spacing:.12em;color:var(--text-3);margin-top:.2em}
.kopf__nav{display:none}
.kopf__nav ul{display:flex;gap:clamp(.8rem,1.6vw,1.6rem)}
.kopf__nav a{font:600 .92rem/1 var(--sans);letter-spacing:.04em;text-decoration:none;color:var(--text-2);padding:.6em .1em;border-bottom:2px solid transparent}
.kopf__nav a:hover{color:var(--text);border-bottom-color:var(--akzent)}
.sprachen{display:flex;gap:.15rem}
.sprachen a{font:600 .78rem/1 var(--sans);letter-spacing:.1em;text-decoration:none;color:var(--text-3);padding:.5em .55em;border-radius:3px}
.sprachen a:hover{color:var(--text)}
.sprachen a[aria-current]{color:var(--text);background:var(--flaeche-2)}
.kopf__toggle{position:relative;width:44px;height:44px;border:0;background:transparent;cursor:pointer;margin-right:-8px}
.kopf__toggle span,.kopf__toggle span::before,.kopf__toggle span::after{position:absolute;left:11px;width:22px;height:2px;background:var(--text);border-radius:2px;transition:transform .2s,opacity .2s}
.kopf__toggle span{top:21px}
.kopf__toggle span::before,.kopf__toggle span::after{content:"";left:0}
.kopf__toggle span::before{top:-7px}
.kopf__toggle span::after{top:7px}
.kopf__toggle[aria-expanded="true"] span{background:transparent}
.kopf__toggle[aria-expanded="true"] span::before{transform:translateY(7px) rotate(45deg)}
.kopf__toggle[aria-expanded="true"] span::after{transform:translateY(-7px) rotate(-45deg)}
.kopf__panel{position:fixed;inset:var(--kopf-h) 0 0 0;z-index:49;background:var(--grund);overflow:auto;padding-block:var(--s3) var(--s4)}
.kopf__liste li{border-bottom:1px solid var(--rand)}
.kopf__liste a{display:flex;align-items:baseline;gap:1rem;padding:1rem 0;font:800 2rem/1 var(--display);text-transform:uppercase;text-decoration:none;color:var(--text)}
.kopf__nr{font:600 .8rem/1 var(--sans);letter-spacing:.14em;color:var(--akzent-hell)}
.kopf__panel-fuss{margin-top:var(--s3);color:var(--text-3)}
body.menu-offen{overflow:hidden}
@media (min-width:60em){.kopf__nav{display:block}.kopf__toggle,.kopf__panel{display:none}.kopf__logo{width:40px}}

/* ---------- Sektionen und Linie ---------- */
.haupt{position:relative;padding-top:var(--kopf-h)}
.sek{position:relative;padding-block:var(--s5)}
@media (min-width:60em){.sek{padding-block:var(--s6)}}
.sek:not(.sek--hero):not(.sek--sv) .wrap{padding-left:calc(var(--pad) + var(--lane))}
.sek+.sek{border-top:1px solid var(--rand)}
.sek--hero+.sek{border-top:0}
.lp{position:absolute;width:0;height:0;left:var(--spine-rel);top:50%;pointer-events:none}
.lp--kante{left:0}
.linie{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:3;overflow:visible}
.linie__pfad{fill:none;stroke:url(#linie-verlauf);stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1 1;stroke-dashoffset:1}
.linie__start{fill:var(--akzent);stroke:var(--grund);stroke-width:2}
.linie__ball-schatten{fill:rgba(0,0,0,.45)}
.linie__ball{pointer-events:auto;cursor:grab;touch-action:none}
.linie__ball:active{cursor:grabbing}
.lochball__loecher{fill:var(--grund);opacity:.85}
.lochball{width:1em;height:1em}
.lochball--hintergrund{position:absolute;right:-8vw;top:8%;width:min(52vw,560px);height:auto;opacity:.045;pointer-events:none}
@media (max-width:60em){.linie__pfad{stroke-width:2.5}}
@media (prefers-reduced-motion:reduce){.linie__pfad{stroke-dashoffset:0}}

/* ---------- 01 Hero ---------- */
.sek--hero{padding-block:0 var(--s4);min-height:min(calc(100svh - var(--kopf-h)),900px);display:flex;align-items:center;overflow:hidden}
.hero__innen{display:grid;gap:var(--s3);width:100%}
.hero__bild{position:relative;width:min(100%,560px);margin-inline:auto;margin-top:var(--s2)}
.hero__bild::before{content:"";position:absolute;inset:10% -10% -10% -10%;background:radial-gradient(60% 55% at 45% 40%,rgba(44,139,215,.22),transparent 70%);pointer-events:none}
.hero__img{position:relative;width:100%;height:auto}
.lp--ball{left:43.75%;top:6.3%}
.lp--hero-ende{left:calc(var(--spine-off) + var(--hero-shift,0px));top:auto;bottom:2%}
.hero__text{padding-left:var(--lane)}   /* Spur auch im Hero, Titel rechts der Linie */
.hero__kicker{margin-bottom:var(--s1)}
.hero__h1{font-size:clamp(3.4rem,14.5vw,7.4rem);line-height:.9}
.hero__name{display:inline}
.hero__nr{color:var(--akzent-hell);font-size:1.32em;line-height:.8;letter-spacing:-.01em;vertical-align:baseline;white-space:nowrap}
.hero__zeile2{margin-top:var(--s3);font:700 clamp(1.15rem,2.5vw,1.45rem)/1.3 var(--sans);color:var(--text)}
.hero__zeile3{margin-top:var(--s1);font-size:clamp(1.05rem,2vw,1.25rem);max-width:30ch;text-wrap:pretty}
.hero__buttons{display:flex;flex-wrap:wrap;gap:var(--s2);margin-top:var(--s4)}
.hero__hinweis{margin-top:var(--s4);color:var(--text-3);font-size:.95rem}
.hero__unterschrift{position:absolute;left:var(--lane);bottom:1%;z-index:1;height:clamp(56px,14vw,84px);width:auto;opacity:.95;pointer-events:none}   /* Unterschrift der alten Site, unten links im Bild wie eine signierte Karte (Shane 03.09.) */
@media (min-width:60em){
	.sek--hero{padding-bottom:0}
	.hero__innen{grid-template-columns:minmax(0,47fr) minmax(0,53fr);align-items:end;gap:var(--s4)}
	.hero__bild{width:118%;max-width:none;margin:0 0 0 -12%;align-self:end;--hero-shift:10.17%}
	.hero__unterschrift{left:16%;bottom:3%}
	.hero__text{padding-left:0;padding-bottom:clamp(2rem,8vh,6rem)}
	.hero__h1{font-size:clamp(4.5rem,7.6vw,7.6rem)}
}

/* ---------- Karten ---------- */
.karte{position:relative;background:var(--flaeche);border:1px solid var(--rand);border-radius:var(--radius);padding:clamp(1.25rem,3vw,2rem)}
.karten{display:grid;gap:var(--s2)}
@media (min-width:48em){.karten--3{grid-template-columns:repeat(3,1fr)}}

/* ---------- 02 Ueber mich ---------- */
.ueber__grid{display:grid;gap:var(--s3)}
.ueber__text .lead{margin-bottom:var(--s3)}
.steckbrief__liste{margin-top:var(--s2)}
.steckbrief__liste div{display:grid;grid-template-columns:7.5rem 1fr;gap:var(--s2);padding:.6rem 0;border-top:1px solid var(--rand)}
.steckbrief__liste dt{font:600 .78rem/1.6 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--text-3)}
.steckbrief__liste dd{margin:0;color:var(--text);font-weight:500}
@media (min-width:60em){.ueber__grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--s5);align-items:start}}

/* ---------- 03 Erfolge ---------- */
.zeitstrahl__jahr{position:relative;display:grid;gap:var(--s1);padding:var(--s3) 0;border-top:1px solid var(--rand)}
.zeitstrahl__jahr:last-child{border-bottom:1px solid var(--rand)}
.lp--jahr{top:calc(var(--s3) + .5em)}
.lp--jahr::before{content:"";position:absolute;left:-7px;top:-7px;width:14px;height:14px;border-radius:50%;background:var(--grund);border:3px solid var(--akzent);box-sizing:border-box}
.zeitstrahl__zahl{font:800 clamp(3rem,8vw,4.5rem)/.9 var(--display);color:var(--text);letter-spacing:-.01em}
.zeitstrahl__liste li{position:relative;padding-left:1.1em;color:var(--text-2)}
.zeitstrahl__liste li::before{content:"";position:absolute;left:0;top:.72em;width:.5em;height:2px;background:var(--akzent)}
.stationen{margin-top:var(--s4)}
.stationen__liste{display:flex;flex-wrap:wrap;gap:var(--s2);margin-top:var(--s2)}
.stationen__liste li{display:flex;flex-direction:column;gap:.15rem;padding:.8rem 1rem;border:1px solid var(--rand);border-radius:6px;background:var(--flaeche);min-width:12rem}
.stationen__liste strong{font:700 1.1rem/1.1 var(--display);text-transform:uppercase;color:var(--text)}
.stationen__liste span{font-size:.9rem;color:var(--text-3)}
@media (min-width:48em){.zeitstrahl__jahr{grid-template-columns:9rem 1fr;gap:var(--s3);align-items:start}}

/* ---------- 04 Ziele ---------- */
.zitat{margin-bottom:var(--s4);max-width:760px}
.zitat p{font:600 clamp(1.4rem,3.4vw,2.2rem)/1.25 var(--display);color:var(--text);text-wrap:balance}
.ziel__nr{font:800 2.5rem/1 var(--display);color:var(--akzent-hell);margin-bottom:var(--s2)}
.ziel .h3{margin-bottom:var(--s1)}

/* ---------- 05 Einsatz und Tabelle ---------- */
.einsatz__grid{display:grid;gap:var(--s3)}
.einsatz__grid>*,.ueber__grid>*,.kontakt__grid>*,.hero__innen>*,.tabelle{min-width:0}
.einsatz__karte{border-left:3px solid var(--akzent)}
.einsatz__team{font:600 .78rem/1.4 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--akzent-hell)}
.einsatz__datum{font:800 clamp(2rem,5vw,2.8rem)/1 var(--display);color:var(--text);text-transform:uppercase;margin:var(--s2) 0}
.einsatz__text{color:var(--text);font-weight:500;margin-bottom:var(--s2)}
.tabelle .h4{margin-bottom:var(--s2)}
.tabelle__scroll{overflow-x:auto;border:1px solid var(--rand);border-radius:var(--radius);background:var(--flaeche)}
.ssl{width:100%;border-collapse:collapse;font-size:.95rem;min-width:520px}
.ssl th,.ssl td{padding:.55rem .75rem;text-align:right;white-space:nowrap;border-top:1px solid var(--rand)}
.ssl th{font:600 .72rem/1.4 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);border-top:0}
.ssl th:nth-child(2),.ssl td.ssl__team{text-align:left;width:100%}
.ssl td:first-child,.ssl th:first-child{text-align:left;color:var(--text-3)}
.ssl__team{color:var(--text);font-weight:500}
.ssl__leer{text-align:center!important;color:var(--text-3);font-size:.85rem}
.ssl__eigen td{background:rgba(44,139,215,.14);color:var(--text)}
.ssl__eigen td:first-child{box-shadow:inset 3px 0 0 var(--akzent)}
.ssl__eigen .ssl__team{font-weight:700}
.tabelle__stand{margin-top:var(--s2)}
@media (min-width:60em){.einsatz__grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start}}

/* ---------- 06 Sponsoren (Logowand) ---------- */
.logowand{display:grid;gap:var(--s4)}
.logowand__stufe{position:relative}
.logowand__titel{font:600 .78rem/1.4 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--text-3);margin-bottom:var(--s2)}
.logowand__reihe{display:grid;gap:var(--s2)}
/* Logos in Originalfarben auf heller Kachel (Shane, 03.09.2026); nur das weisse Spitzensport-Logo auf dunkler Kachel */
.logo{display:flex;align-items:center;justify-content:center;background:#f2f3f5;border:1px solid #f2f3f5;border-radius:var(--radius);height:var(--logo-h,100px);padding:0;text-decoration:none;transition:background-color .2s,border-color .2s,transform .2s}
.logo img{max-width:72%;max-height:58%;width:auto;height:auto;object-fit:contain}
.logo:hover,.logo:focus-visible{background:#fff;border-color:var(--akzent);transform:translateY(-2px)}
.logo--fix{background:var(--flaeche);border-color:var(--rand)}
.logo--fix:hover,.logo--fix:focus-visible{background:var(--flaeche-2);border-color:var(--akzent)}
.logo--platzhalter{font:700 1.1rem/1.1 var(--display);text-transform:uppercase;color:#121316;text-align:center;padding:1rem}
.logowand__stufe--gold .logowand__reihe{grid-template-columns:repeat(2,1fr);--logo-h:120px}
.logowand__stufe--silber .logowand__reihe{grid-template-columns:repeat(2,1fr);--logo-h:88px}
.logowand__stufe--bronze .logowand__reihe{grid-template-columns:repeat(3,1fr);--logo-h:68px}
.goenner{display:flex;flex-wrap:wrap;gap:.4rem .5rem}
.goenner li{color:var(--text-2);font-weight:500;padding:.35rem .7rem;border:1px solid var(--rand);border-radius:99px;font-size:.92rem}
.logowand__klein{display:grid;gap:var(--s3)}
.logowand__klein .logowand__reihe{grid-template-columns:repeat(3,1fr);--logo-h:64px}
.logowand__klein .logo img{max-width:78%;max-height:62%}
@media (min-width:48em){
	.logowand__stufe--gold .logowand__reihe{grid-template-columns:repeat(2,minmax(0,300px));--logo-h:150px}
	.logowand__stufe--silber .logowand__reihe{grid-template-columns:repeat(4,minmax(0,220px));--logo-h:100px}
	.logowand__stufe--bronze .logowand__reihe{grid-template-columns:repeat(6,minmax(0,160px));--logo-h:76px}
	.logowand__klein{grid-template-columns:2fr 1fr;gap:var(--s4)}
	.logowand__klein .logowand__reihe{grid-template-columns:repeat(auto-fill,minmax(150px,180px))}
}

/* ---------- 07 Sponsoring ---------- */
.sek--sponsoring{overflow:hidden}
.pakete{display:grid;gap:var(--s2)}
.paket{display:flex;flex-direction:column;gap:.35rem}
.paket--0{border-color:var(--akzent)}
.paket__preis{font:800 clamp(2.4rem,5vw,3rem)/1 var(--display);color:var(--akzent-hell);letter-spacing:-.01em}
.paket__titel{margin-top:.25rem}
.paket__satz{color:var(--text-2);margin-bottom:var(--s2);min-height:2.4em}
.paket__label{font:600 .72rem/1.4 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);margin-top:var(--s2)}
.paket__liste li{position:relative;padding-left:1.1em;color:var(--text)}
.paket__liste li::before{content:"";position:absolute;left:0;top:.72em;width:.5em;height:2px;background:var(--akzent)}
.sponsoring__cta{margin:var(--s4) 0}
.bank{display:grid;gap:var(--s3);align-items:center}
.bank__iban{font:600 1.15rem/1.4 var(--sans);color:var(--text);letter-spacing:.04em}
.bank__qr img{width:140px;height:auto;border-radius:6px;background:#fff;padding:6px}
.bank__twint{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;width:140px;height:140px;border:1.5px dashed var(--rand-hell);border-radius:6px;color:var(--text-3)}
.bank__twint-mark{font:800 1.3rem/1 var(--display);letter-spacing:.06em;color:var(--text-2)}
@media (min-width:48em){.pakete{grid-template-columns:repeat(2,1fr)}.bank{grid-template-columns:1fr auto auto}}
@media (min-width:64em){.pakete{grid-template-columns:repeat(4,1fr)}}

/* ---------- 08 Fan-Shop ---------- */
.artikel{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s2)}
.artikel__karte{padding:1rem;display:flex;flex-direction:column;gap:.2rem}
.artikel>li{min-width:0}
.artikel__bild{position:relative;aspect-ratio:1;width:100%;background:var(--flaeche-2);border-radius:6px;margin-bottom:.75rem;overflow:hidden}
.artikel__bild picture,.artikel__bild img{position:absolute;inset:7%;width:86%;height:86%;object-fit:contain}
.artikel__bild picture{inset:0;width:100%;height:100%}
.artikel__name{font-size:1.1rem}
.artikel__variante{font-size:.9rem;color:var(--text-3)}
.artikel__preis{font:800 1.6rem/1 var(--display);color:var(--akzent-hell);margin-top:.5rem}
.bestellung{margin-top:var(--s4)}
.bestellung .h3{margin-bottom:var(--s3)}
@media (min-width:48em){.artikel{grid-template-columns:repeat(3,1fr)}.artikel__karte{padding:1.25rem}}
@media (min-width:64em){.artikel{grid-template-columns:repeat(4,1fr)}}

/* ---------- Formulare (nur Layout) ---------- */
.formular__grid{display:grid;gap:var(--s2)}
.feld{display:flex;flex-direction:column;gap:.35rem}
.feld span{font:600 .74rem/1.4 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--text-3)}
.feld input,.feld select,.feld textarea{font:inherit;color:var(--text);background:var(--grund);border:1px solid var(--rand-hell);border-radius:5px;padding:.75rem .9rem;width:100%;min-height:48px}
.feld select{appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--text-3) 50%),linear-gradient(135deg,var(--text-3) 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 14px) 50%;background-size:6px 6px;background-repeat:no-repeat;padding-right:2.5rem}
.feld textarea{resize:vertical}
.feld input:focus,.feld select:focus,.feld textarea:focus{outline:2px solid var(--akzent);outline-offset:0;border-color:var(--akzent)}
.formular__fuss{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2) var(--s3);margin-top:var(--s3)}
.formular__hinweis{margin:0}
@media (min-width:48em){.formular__grid{grid-template-columns:1fr 1fr}.feld--breit{grid-column:1/-1}}

/* ---------- 09 News-Teaser ---------- */
.teaser__datum{font:600 .78rem/1.4 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--akzent-hell);margin-bottom:var(--s1)}
.teaser .h3{margin-bottom:var(--s1)}
.teaser .h3 a{text-decoration:none}
.teaser .h3 a:hover{color:var(--akzent-hell)}

/* ---------- 09a Instagram ---------- */
.kacheln{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}
.kacheln>li{min-width:0}
.kachel{display:block;position:relative;aspect-ratio:1;overflow:hidden;border-radius:6px;background:var(--flaeche)}
.kachel picture,.kachel img{position:absolute;inset:0;width:100%;height:100%}
.kachel img{object-fit:cover;transition:transform .3s,opacity .3s;opacity:.92}
.kachel:hover img{transform:scale(1.04);opacity:1}
@media (min-width:60em){.kacheln{grid-template-columns:repeat(6,1fr);gap:.75rem}}

/* ---------- 10 Kontakt ---------- */
.kontakt__grid{display:grid;gap:var(--s3)}
.kontakt__label{font:600 .74rem/1.4 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);margin-top:var(--s2)}
.kontakt__label:first-child{margin-top:0}
.kontakt__link{font:700 clamp(1.2rem,2.4vw,1.5rem)/1.3 var(--display);text-decoration:none;color:var(--text);word-break:break-word}
.kontakt__link:hover{color:var(--akzent-hell)}
.lp--ende{top:calc(100% - 2rem)}
@media (min-width:60em){.kontakt__grid{grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:var(--s5);align-items:start}}

/* ---------- Fuss ---------- */
.fuss{border-top:1px solid var(--rand);padding-block:var(--s4);color:var(--text-3);font-size:.92rem}
.fuss__innen{display:grid;gap:var(--s3)}
.fuss__marke{display:flex;align-items:center;gap:1rem}
.fuss__logo{width:44px;height:auto;opacity:.9}
.fuss__zeile{color:var(--text-2)}
.fuss__links{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s3)}
.fuss__links a,.fuss__credit a{color:var(--text-2);text-decoration:none}
.fuss__links a:hover,.fuss__credit a:hover{color:var(--text);text-decoration:underline}
@media (min-width:60em){.fuss__innen{grid-template-columns:1fr auto auto;align-items:center;gap:var(--s4)}}

/* ---------- Unterseiten ---------- */
.sek--seite,.sek--news-seite{padding-top:calc(var(--s5))}
.sek--sv{min-height:min(calc(100svh - var(--kopf-h)),700px);display:flex;align-items:center}
.sek--sv__innen{display:flex;flex-direction:column;align-items:center;gap:var(--s3);text-align:center}
.sv__logo{width:120px}
.news-liste{display:grid;gap:var(--s2)}
.news-karte{display:grid;gap:var(--s2);background:var(--flaeche);border:1px solid var(--rand);border-radius:var(--radius);padding:clamp(1.25rem,3vw,2rem);scroll-margin-top:calc(var(--kopf-h) + 16px)}
.news-karte__datum{font:600 .78rem/1.4 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--akzent-hell);margin-bottom:.35rem}
.news-karte__bilder{display:grid;gap:.5rem;grid-template-columns:repeat(2,1fr)}
.news-karte__bilder--1{grid-template-columns:minmax(0,520px)}
.news-karte__bilder--3{grid-template-columns:repeat(3,1fr)}
.news-karte__bilder img{border-radius:6px;width:100%;height:auto}
.news-liste__hinweis{margin-top:var(--s3);color:var(--text-3)}
.spiele{margin-top:var(--s2);border:1px solid var(--rand);border-radius:6px;background:var(--grund)}
.spiele summary{cursor:pointer;padding:.8rem 1rem;font:700 1rem/1.2 var(--display);text-transform:uppercase;letter-spacing:.06em;color:var(--text);list-style:none;display:flex;align-items:center;gap:.6rem}
.spiele summary::-webkit-details-marker{display:none}
.spiele summary::before{content:"";width:.5em;height:.5em;border-right:2px solid var(--akzent);border-bottom:2px solid var(--akzent);transform:rotate(-45deg);transition:transform .2s;flex:none}
.spiele[open] summary::before{transform:rotate(45deg)}
.spiele__zahl{font:600 .72rem/1 var(--sans);color:var(--akzent-hell);background:rgba(44,139,215,.15);padding:.3em .55em;border-radius:99px}
.spiele__liste{padding:0 1rem 1rem;font-size:.92rem;font-variant-numeric:tabular-nums}
.spiele__liste li{padding:.35rem 0;border-top:1px solid var(--rand);color:var(--text-2)}
@media (min-width:48em){.news-karte{grid-template-columns:10rem 1fr;gap:var(--s3)}.news-karte__bilder{grid-column:2}}
