/* V129 – nur Stabilisierung der vorhandenen Darstellung */
html.site-content-pending .hero-content h1,
html.site-content-pending .hero-content h2,
html.site-content-pending .hero-content h4,
html.site-content-pending .hero-content p,
html.site-content-pending .page-hero .hero-content,
html.site-content-pending .history-hero-content-v98 { visibility:hidden!important; }
html.department-content-pending [data-department-name],
html.department-content-pending [data-department-slogan] { visibility:hidden!important; }
/* V129.1 – Beim Laden einer Abteilungsseite darf niemals kurz der vorherige/
   im HTML einprogrammierte Platzhaltertext (Beschreibung, Trainingszeiten,
   Schwerpunkte, Impressionen, FAQ) aufblitzen, bevor die echten Daten per
   JavaScript eingesetzt sind. Deshalb bleiben alle dynamischen Bereiche
   unsichtbar (aber platzhaltend), bis department-content.js fertig ist und
   die Klasse "department-content-pending" wieder entfernt. */
html.department-content-pending [data-department-hero],
html.department-content-pending [data-department-description],
html.department-content-pending [data-department-features-section],
html.department-content-pending [data-department-groups-section],
html.department-content-pending [data-department-trainings],
html.department-content-pending [data-department-people],
html.department-content-pending [data-department-gallery-section],
html.department-content-pending [data-department-faq-section] { visibility:hidden!important; }

/* Seitentitel konsequent mittig – aber nicht für die dynamische Hero-Überschrift
   aus "Website & Medien" (.tv-media-heading-box), die dort über "Position" frei
   platziert werden kann (oben/unten/links/mittig/rechts). Sonst würde diese
   Regel die Positions-Einstellung immer wieder auf "mittig" zurückzwingen. */
.page-hero .hero-content:not(.tv-media-heading-box),.turnen-hero .hero-content:not(.tv-media-heading-box),.history-hero-content-v98{width:min(1180px,calc(100% - 40px))!important;margin-inline:auto!important;text-align:center!important}
.page-hero .hero-content:not(.tv-media-heading-box) h1,.page-hero .hero-content:not(.tv-media-heading-box) p,.turnen-hero .hero-content:not(.tv-media-heading-box) h1,.turnen-hero .hero-content:not(.tv-media-heading-box) p,.history-hero-content-v98 h1,.history-hero-content-v98 h2,.history-hero-content-v98 p{text-align:center!important;margin-left:auto!important;margin-right:auto!important}

/* Vorstand: Zusatzfunktionen wieder als ruhige, gleichmäßige Karten */
.board-extra-grid{width:min(1180px,calc(100% - 48px));margin:38px auto 70px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:stretch}
.board-extra-card{background:#fff;border-radius:22px;padding:28px 26px;text-align:center;box-shadow:0 12px 30px rgba(0,0,0,.08);border:1px solid rgba(18,78,43,.08);min-height:180px;display:flex;flex-direction:column;justify-content:flex-start}
.board-extra-card h2{margin:0 0 18px;color:#008c33;font-size:1.45rem;text-align:center}
.board-extra-person{display:grid;gap:10px;justify-items:center}.board-extra-person strong{font-size:1.05rem}.board-extra-person a{color:#008c33;overflow-wrap:anywhere}
.board-name-list{list-style:none;padding:0;margin:0;display:grid;gap:10px}.board-name-list li{padding:10px 12px;border-radius:12px;background:#edf7f0;color:#173c27;font-weight:700}
body.dark-mode .board-extra-card,html.dark-mode .board-extra-card{background:#10271d!important;color:#eef8f1!important;border-color:rgba(255,255,255,.12)!important}
body.dark-mode .board-name-list li,html.dark-mode .board-name-list li{background:#173d2a!important;color:#f2fff6!important}
body.dark-mode .board-extra-person a,html.dark-mode .board-extra-person a{color:#8ceab0!important}

/* Termine auf der Startseite: ursprüngliche horizontale Kartenlogik */
.events-grid{display:flex!important;flex-direction:column!important;gap:24px!important;width:min(1040px,100%);margin-inline:auto}
.event-card{display:grid!important;grid-template-columns:130px minmax(0,1fr)!important;min-height:150px;background:#f7faf8!important;border:1px solid rgba(12,105,48,.12);border-radius:22px!important;overflow:hidden!important;box-shadow:0 14px 34px rgba(0,0,0,.08);transform:none!important}
.event-card:hover{transform:translateY(-4px)!important}
.event-date{background:#0b7a34;color:#fff;display:grid;place-items:center;padding:18px 12px;min-width:0;text-align:center}
.event-date strong{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:1.22rem;line-height:1.12;white-space:normal;overflow-wrap:anywhere}
.event-date .event-year{font-size:.95em}
.event-info{padding:25px 28px;min-width:0}.event-info h3{font-size:1.55rem;margin:0 0 12px;color:#1c2f24;overflow-wrap:anywhere}.event-info p{margin:7px 0;color:#637269;line-height:1.45}.event-info a{color:#008c33;font-weight:700}
body.dark-mode .event-card,html.dark-mode .event-card{background:#10271d!important;border-color:rgba(255,255,255,.12)!important}.dark-mode .event-info h3{color:#eef8f1!important}.dark-mode .event-info p{color:#c9dbd0!important}

@media(max-width:850px){.board-extra-grid{grid-template-columns:1fr;width:calc(100% - 28px);gap:18px}.event-card{grid-template-columns:104px minmax(0,1fr)!important}.event-info{padding:20px 18px}.event-info h3{font-size:1.25rem}}
