/* Nachtkarte-Unterseiten: nur body.is-inner. Startseite bleibt unverändert. */
body.tsg-site.is-inner .site-header {
  background: #01141f !important;
  border-bottom: 1px solid rgba(255,255,255,.12) !important;
}
/* Ein dezentes großes Vereinswappen als Hintergrund, ohne den Beitragstext zu überdecken. */
body.tsg-site.is-inner .page-shell {
  position: relative;
  isolation: isolate;
  background: #fff;
}
body.tsg-site.is-inner .page-shell::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  background-image: url('../images/logo.png');
  background-repeat: no-repeat;
  background-position: center 100px;
  background-size: min(62vw, 680px) auto;
  opacity: .055;
  pointer-events: none;
}
body.tsg-site.is-inner .page-shell > .container {
  position: relative;
  z-index: 0;
}
@media (max-width: 767px) {
  body.tsg-site.is-inner .page-shell::before {
    background-position: center 70px;
    background-size: 85vw auto;
    opacity: .045;
  }
}

/* Nachtkarte: Navigation auf dunklem Header kontrastreich weiß */
body.tsg-site.is-inner .site-header .brand-copy strong,
body.tsg-site.is-inner .site-header .brand-copy small,
body.tsg-site.is-inner .site-header .primary-navigation .nav-level-0 > li > a,
body.tsg-site.is-inner .site-header .primary-navigation .nav-level-0 > li > .nav-label,
body.tsg-site.is-inner .site-header .primary-navigation .nav-level-0 > li > .submenu-toggle,
body.tsg-site.is-inner .site-header .nav-toggle {
  color: #fff !important;
}
body.tsg-site.is-inner .site-header .primary-navigation .nav-level-0 > li > a:hover,
body.tsg-site.is-inner .site-header .primary-navigation .nav-level-0 > li.is-current > a,
body.tsg-site.is-inner .site-header .primary-navigation .nav-level-0 > li > .submenu-toggle:hover {
  color: #dcebf8 !important;
}
/* Dropdowns bleiben hell: darin weiterhin dunkle Schrift. */
body.tsg-site.is-inner .site-header .primary-navigation .nav-level:not(.nav-level-0) a,
body.tsg-site.is-inner .site-header .primary-navigation .nav-level:not(.nav-level-0) .nav-label {
  color: #172b3c !important;
}
body.tsg-site.is-inner .site-header .primary-navigation .nav-level:not(.nav-level-0) a:hover {
  color: #006bb4 !important;
}
body.tsg-site.is-inner .site-header .nav-toggle span {
  background: #fff !important;
  border-color: #fff !important;
}


/* TSG Branding im dunklen Header: klare weiße Überschrift, gedämpfter Untertitel */
body.tsg-site .site-header .brand .brand-copy strong { color: #ffffff !important; }
body.tsg-site .site-header .brand .brand-copy small { color: #c5d2dc !important; opacity: 1; }


/* TSG SALACH – Nachtkarte-Navigation, einheitlich Desktop/Mobil */
body.tsg-site .site-header .primary-navigation .nav-level-0 > li > a,
body.tsg-site .site-header .primary-navigation .nav-level-0 > li > .nav-label,
body.tsg-site .site-header .primary-navigation .nav-level-0 > li > .submenu-toggle {
  color: #fff !important;
  background: transparent !important;
  box-shadow: none !important;
  text-decoration: none !important;
  border-radius: 0 !important;
}
body.tsg-site .site-header .primary-navigation .nav-level-0 > li > a:hover,
body.tsg-site .site-header .primary-navigation .nav-level-0 > li > a:focus-visible,
body.tsg-site .site-header .primary-navigation .nav-level-0 > li > .nav-label:hover,
body.tsg-site .site-header .primary-navigation .nav-level-0 > li.is-current > a,
body.tsg-site .site-header .primary-navigation .nav-level-0 > li.active > a {
  color: #fff !important;
  background: transparent !important;
  box-shadow: inset 0 -2px 0 #dcebf8 !important;
}
body.tsg-site .site-header .primary-navigation .nav-level:not(.nav-level-0) {
  background: #fff !important;
  color: #172b3c !important;
}
body.tsg-site .site-header .primary-navigation .nav-level:not(.nav-level-0) li > a,
body.tsg-site .site-header .primary-navigation .nav-level:not(.nav-level-0) li > .nav-label,
body.tsg-site .site-header .primary-navigation .nav-level:not(.nav-level-0) li > .submenu-toggle {
  color: #172b3c !important;
  background: transparent !important;
  box-shadow: none !important;
  text-decoration: none !important;
}
body.tsg-site .site-header .primary-navigation .nav-level:not(.nav-level-0) li > a:hover,
body.tsg-site .site-header .primary-navigation .nav-level:not(.nav-level-0) li > a:focus-visible,
body.tsg-site .site-header .primary-navigation .nav-level:not(.nav-level-0) li.is-current > a {
  color: #172b3c !important;
  background: transparent !important;
  box-shadow: inset 0 -2px 0 #0f6bb4 !important;
}
@media (max-width: 1060px) {
  body.tsg-site .site-header .primary-navigation.nav-open { width: 100%; padding-bottom: 10px; }
  body.tsg-site .site-header .primary-navigation.nav-open .nav-level-0 { max-height: 75dvh; overflow-x: hidden; overflow-y: auto; }
  body.tsg-site .site-header .primary-navigation.nav-open .nav-level-0 > li { width: 100%; margin: 0; padding: 0; }
  body.tsg-site .site-header .primary-navigation.nav-open .nav-level-0 > li > a,
  body.tsg-site .site-header .primary-navigation.nav-open .nav-level-0 > li > .nav-label { padding: 12px 14px !important; line-height: 1.35; }
  body.tsg-site .site-header .primary-navigation.nav-open .nav-level-0 > li > .nav-level,
  body.tsg-site .site-header .primary-navigation.nav-open .nav-level-1 .nav-level-2,
  body.tsg-site .site-header .primary-navigation.nav-open .nav-level-2 .nav-level-3 {
    position: static !important; flex: 0 0 100%; width: 100% !important;
    margin: 3px 0 7px !important; padding: 7px 12px !important;
    background: #fff !important; border: 0 !important; border-radius: 4px !important;
    box-shadow: none !important;
  }
  body.tsg-site .site-header .primary-navigation.nav-open .nav-level:not(.nav-level-0) li { width: 100%; }
  body.tsg-site .site-header .primary-navigation.nav-open .nav-level:not(.nav-level-0) li > a,
  body.tsg-site .site-header .primary-navigation.nav-open .nav-level:not(.nav-level-0) li > .nav-label {
    padding: 10px 12px !important; white-space: normal !important;
  }
  body.tsg-site .site-header .nav-toggle { color: #fff !important; }
  body.tsg-site .site-header .nav-toggle span { background: #fff !important; border-color: #fff !important; }
}


/* FINAL: Hauptnavigation ohne Kacheln, nur Unterstreichung. */
body.tsg-site.is-home .site-header .primary-navigation .nav-level-0 > li,
body.tsg-site.is-inner .site-header .primary-navigation .nav-level-0 > li { background: transparent !important; }
body.tsg-site.is-home .site-header .primary-navigation .nav-level-0 > li > :is(a,.nav-label,.submenu-toggle),
body.tsg-site.is-inner .site-header .primary-navigation .nav-level-0 > li > :is(a,.nav-label,.submenu-toggle),
body.tsg-site.is-home .site-header .primary-navigation .nav-level-0 > li:is(.is-current,.active,.submenu-open,:hover,:focus-within) > :is(a,.nav-label,.submenu-toggle),
body.tsg-site.is-inner .site-header .primary-navigation .nav-level-0 > li:is(.is-current,.active,.submenu-open,:hover,:focus-within) > :is(a,.nav-label,.submenu-toggle) {
  color: #fff !important;
  background: transparent !important;
  background-color: transparent !important;
  border-color: transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-decoration: none !important;
}
body.tsg-site .site-header .primary-navigation .nav-level-0 > li:is(.is-current,.active,:hover,:focus-within) > :is(a,.nav-label) {
  text-decoration: underline !important;
  text-decoration-color: #dcebf8 !important;
  text-decoration-thickness: 2px !important;
  text-underline-offset: 9px !important;
}
body.tsg-site .site-header .primary-navigation .nav-level:not(.nav-level-0),
body.tsg-site .site-header .primary-navigation .nav-level:not(.nav-level-0) li { background-color: #fff !important; }
body.tsg-site .site-header .primary-navigation .nav-level:not(.nav-level-0) li > :is(a,.nav-label,.submenu-toggle),
body.tsg-site .site-header .primary-navigation .nav-level:not(.nav-level-0) li:is(:hover,.is-current,.active) > :is(a,.nav-label,.submenu-toggle) {
  color: #172b3c !important;
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}
body.tsg-site .site-header .primary-navigation .nav-level:not(.nav-level-0) li:is(:hover,.is-current,.active) > :is(a,.nav-label) {
  text-decoration: underline !important;
  text-decoration-color: #0f6bb4 !important;
  text-decoration-thickness: 2px !important;
  text-underline-offset: 5px !important;
}

/* TSG Salach – Ausklappbarer News-Filter */

.tsg-news-filter-dropdown {
  margin: 2rem 0 3rem;
  border: 1px solid #dce7f0;
  border-radius: 10px;
  background: #fff;
  overflow: hidden;
}

.tsg-news-filter-dropdown > summary {
  display: block;
  padding: 16px 20px;
  cursor: pointer;
  color: #172b3c;
  font-weight: 700;
  font-size: 1rem;
  list-style: none;
}

.tsg-news-filter-dropdown > summary::-webkit-details-marker {
  display: none;
}

.tsg-news-filter-dropdown > summary::after {
  content: "+";
  float: right;
  color: #006bb4;
  font-size: 1.3rem;
}

.tsg-news-filter-dropdown[open] > summary::after {
  content: "-";
}

.tsg-news-filter-dropdown > summary:hover {
  background: #f0f6fb;
}

.tsg-news-filter-dropdown .tsg-news-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  padding: 20px;
  border-top: 1px solid #dce7f0;
}

.tsg-news-filter-dropdown .tsg-news-filter {
  cursor: pointer;
}

.tsg-news-filter-dropdown .tsg-news-filter:hover {
  text-decoration: underline;
  text-underline-offset: 4px;
}

