/* ========================================================================
   Nerdschmie.de Desktop Design Phase 2 – Shared Section Heading
   Marker: nerdschmie-desktop-design-phase2-section-heading-20260826
   ======================================================================== */
.nsd-section-heading {
  margin: 0 0 var(--nsd-space-heading-after);
  color: var(--nsd-color-text);
  font-family: var(--nsd-font-body);
  font-size: var(--nsd-type-section-size);
  font-weight: var(--nsd-type-section-weight);
  line-height: var(--nsd-type-section-line);
  letter-spacing: var(--nsd-type-section-tracking);
  text-transform: none;
}

.nsd-section-heading--group {
  margin-top: var(--nsd-space-section);
}

.csv-group:first-child > .nsd-section-heading--group {
  margin-top: 0;
}

.nsd-section-heading--compact {
  font-size: var(--nsd-type-card-title-size);
  line-height: var(--nsd-type-card-title-line);
}

/* Desktop Design Phase 8 – canonical visible section-heading contract.
   High specificity intentionally wins over historical page CSS without changing eyebrow/kicker styles. */
@media (min-width: 701px) {
  html body.nsd .nsd-section-heading,
  html body.nsd .ns-party-main-section-title,
  html body.nsd .ns-event-section-title,
  html body.nsd.page-club-pages .ns-club-section-title,
  html body.nsd .nsd-dj-section__head > h2,
  html body.nsd .nsd-dj-section__head--sub > h2,
  html body.nsd .nsd-city-section-head > h2,
  html body.nsd.page-csv-collection .ns-section-title,
  html body.nsd.page-csv-collection .ns-state-section-title,
  html body.nsd.page-csv-collection .nsd-section-heading--group {
    margin-top: 0 !important;
    margin-bottom: var(--nsd-space-heading-after) !important;
    color: var(--nsd-color-text) !important;
    font-family: var(--nsd-font-body) !important;
    font-size: var(--nsd-type-section-size) !important;
    font-weight: var(--nsd-type-section-weight) !important;
    line-height: var(--nsd-type-section-line) !important;
    letter-spacing: var(--nsd-type-section-tracking) !important;
    text-transform: none !important;
    text-shadow: none !important;
  }
}
