/* TOPFORM Paket 050h
   Nur drei gezielte Korrekturen:
   1) einheitliche linke Inhaltskante bei CMS-Blöcken,
   2) kompaktere vertikale Blockabstände,
   3) vollbreiter dunkler Hero bei der Vertriebspartnersuche.
*/

/* Gemeinsame Inhaltsachse: Der Seitencontainer bleibt bei allen Blocktypen identisch.
   Nur die Zeilenlänge reiner Textinhalte wird innerhalb dieses Containers begrenzt. */
.public-body main.cms44-page .tf-page-section > .tf-page-container.cms44-reading,
.public-body main.tf-page--application .tf-page-section > .tf-page-container.cms44-reading {
  width: min(calc(100% - (2 * var(--tf-gutter, 24px))), var(--tf-container, 1200px)) !important;
  max-width: var(--tf-container, 1200px) !important;
  margin-inline: auto !important;
  text-align: left !important;
}

.public-body main.cms44-page .tf-page-section > .tf-page-container.cms44-reading > *,
.public-body main.tf-page--application .tf-page-section > .tf-page-container.cms44-reading > * {
  max-width: 960px;
  margin-left: 0;
  margin-right: 0;
}

/* Text-mit-Bild ohne ausgewähltes Bild: kein leeres Raster, aber gleiche Inhaltskante. */
.public-body main.cms44-page .tf-page-section > .tf-page-container.cms44-text-image.no-image,
.public-body main.tf-page--application .tf-page-section > .tf-page-container.cms44-text-image.no-image {
  width: min(calc(100% - (2 * var(--tf-gutter, 24px))), var(--tf-container, 1200px)) !important;
  max-width: var(--tf-container, 1200px) !important;
  margin-inline: auto !important;
  display: block !important;
  text-align: left !important;
}

.public-body main.cms44-page .tf-page-section > .tf-page-container.cms44-text-image.no-image > div,
.public-body main.tf-page--application .tf-page-section > .tf-page-container.cms44-text-image.no-image > div {
  width: 100% !important;
  max-width: 960px !important;
  margin: 0 !important;
  text-align: left !important;
}

/* Kompakterer, einheitlicher Blockrhythmus – Hintergründe und Farben bleiben unberührt. */
.public-body main.cms44-page .tf-page-section,
.public-body main.tf-page--application .tf-page-section {
  padding-top: clamp(2.5rem, 4.25vw, 4.25rem) !important;
  padding-bottom: clamp(2.5rem, 4.25vw, 4.25rem) !important;
}

.public-body main.cms44-page .tf-page-section + .tf-page-section,
.public-body main.tf-page--application .tf-page-section + .tf-page-section {
  margin-top: 0 !important;
}

/* Vertriebspartner finden: dunkle Fläche über die gesamte Viewportbreite,
   vorhandenes Grid und Innenabstände bleiben unverändert. */
.public-body .partner-page .partner-hero {
  position: relative;
  isolation: isolate;
  background: transparent !important;
}

.public-body .partner-page .partner-hero::before {
  content: "";
  position: absolute;
  inset-block: 0;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%);
  background: #20262a;
  z-index: -1;
  pointer-events: none;
}

@media (max-width: 720px) {
  .public-body main.cms44-page .tf-page-section,
  .public-body main.tf-page--application .tf-page-section {
    padding-top: 2.5rem !important;
    padding-bottom: 2.5rem !important;
  }
}
