/* ============================================================
   DGK - CSS fuer SiteOrigin
   Ort: Design -> Custom CSS (SO-CSS-Editor)
   Inhalt: alles ausser Basis-Schriftgroessen/-Farben (die stehen in
   DGK_CSS_1_Customizer-Zusaetzliches-CSS.css, Design -> Anpassen).
   Stand: 17.09.2026 (V56)

   V56: .therapeut-karte (Karten in der Therapeut:innen-Liste) auf Wunsch von
   Volker angepasst: Hintergrund von transparent auf weiss (#fff), Rahmenfarbe
   von Grau (#e3e1d8) auf Marken-Lila (#63237c) - border-radius (8px) und
   padding (16px 18px) unveraendert. Kontrast Rahmen gegen die neue weisse
   Karte rechnerisch geprueft: 10,18:1 (WCAG-Nicht-Text-Mindestwert waere
   3:1).

   V55: .dgk-suche-status ("Suche laeuft ...", gilt fuer Therapeut:innen-
   UND Buch-Suche, beide nutzen dieselbe Klasse) auf Wunsch von Volker
   auffaelliger gemacht: Farbe von Text-gedaempft (#5c5c54) auf Petrol
   (#00756c) geaendert, zusaetzlich font-weight 600 (vorher normal) -
   kursiv und Groesse (13.5px) unveraendert. Hintergrund: Der Hinweis
   greift seit V54/Suchformular V5 jetzt bei allen drei Ausloesern
   (Radiobutton, Dropdown, SUCHEN-Klick), war in Graustufen aber leicht zu
   uebersehen, gerade weil er oft nur kurz sichtbar ist.

/* Header: volle Breite statt Container-Maximalbreite (Hero geht randlos,
   Header wirkte eingerückt), Obergrenze 2560px angeglichen an die
   Breite des Hero-Widgets. Zusätzlich align-items:center für die
   vertikale Ausrichtung von Logo/Navigation. */
.site-header .corp-container{
  max-width: 2560px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 40px;
  padding-right: 40px;
  box-sizing: border-box;
  align-items: center;
}
@media (max-width: 900px){
  .site-header .corp-container{
    padding-left: 20px;
    padding-right: 20px;
  }
}
/* Header-CTA-Button "Therapeut:in finden". CSS-Klasse in WordPress unter
   Menüs → Bildschirmoptionen → CSS-Klassen aktivieren und beim
   Menüpunkt "menu-cta-solid" eintragen (WordPress hängt sie an ,
   daher "li.menu-cta-solid > a" als Selektor). !important bei
   color/border nötig, da eine spezifischere Theme-Regel im aktiven
   Zustand (current-menu-item) sonst Grün statt Creme/Lila zeigte. */
.main-navigation .menu li.menu-cta-solid > a{
  display: inline-block;
  padding: 9px 16px;
  font-size: 13px;
  font-weight: 600;
  border-radius: 7px;
  white-space: nowrap;
  background: #63237c;
  color: #faf9f6 !important;
  border: 1.5px solid #63237c !important;
}
.main-navigation .menu li.menu-cta-solid > a:hover{
  background: #511d66;
  border-color: #511d66;
  color: #faf9f6 !important;
}
/* Menü-Zeilenumbruch bei wenig Platz: Button bleibt regulärer letzter
   Menüpunkt, bricht bei Platzmangel eigenständig um. */
.main-navigation,
.main-navigation .menu{
  width: 100%;
}
.main-navigation .menu{
  flex-wrap: wrap;
  justify-content: flex-end;
  /* baseline statt center: gleicht die unterschiedliche Boxhöhe von
     Button (Padding) und reinen Textlinks aus, damit beide Textzeilen
     exakt auf einer Linie sitzen (live per Screenshot bestätigt). */
  align-items: baseline;
  row-gap: 8px;
  column-gap: 34px;
  margin: 0;
  padding: 0;
  list-style: none;
}
/* display:flex nur ab 1201px erzwingen – darunter blendet das Theme
   das Menü selbst per display:none hinter dem Hamburger aus; ein
   unconditionales !important würde das überschreiben und Menü +
   Hamburger gleichzeitig zeigen. */
@media (min-width: 1201px){
  .main-navigation .menu{
    display: flex !important;
  }
}
/* Theme setzt selbst margin-right:39px pro Menüpunkt; bei Umbruch fehlt
   dieser Rand beim letzten Punkt einer Zeile optisch (margin liegt
   außerhalb der Box) – Versatz zum randbündigen Button. Fix: Theme-
   Margin auf 0, Abstand stattdessen über column-gap oben. */
.main-navigation .menu li{
  margin-right: 0 !important;
}
/* Breakpoint 1620px: rechnerisch ermittelt (Item-Breiten + 4×34px Gap
   vs. verfügbare Breite neben Logo ≈ 1599px + Sicherheitsmarge). */
@media (max-width: 1620px) and (min-width: 1201px){
  .main-navigation .menu li > a{
    font-size: 13px;
  }
  .main-navigation .menu li.menu-cta-solid > a{
    padding: 7px 12px;
    font-size: 12.5px;
  }
  .main-navigation .menu li.menu-cta-solid{
    flex-basis: 100%;
    display: flex;
    justify-content: flex-end;
    margin-top: 4px;
  }
}
@media (max-width: 1315px) and (min-width: 1201px){
  .main-navigation .menu li > a{
    font-size: 12px;
  }
  .main-navigation .menu li.menu-cta-solid > a{
    padding: 6px 10px;
    font-size: 11.5px;
  }
}
/* ============================================================
   Header-Logo: Icon statt Logo-Grafik mit eingebranntem Vereinsnamen
   ============================================================
   Bisher: eine PNG-Datei enthielt Icon ("dgk") + Vereinsname
   ("DEUTSCHE GESELLSCHAFT FÜR KÖRPERPSYCHOTHERAPIE E.V.") fest
   eingebrannt als Pixelgrafik (Basis: DGK_Logo_15/16 "mit Claim").
   Jetzt: nur noch das reine Icon (DGK_Icon_v16_normal_100px.png,
   Retina: DGK_Icon_v16_retina_200px.png) als Logo/Retina-Logo
   hochgeladen (Theme Settings › Header im Customizer). Der Vereinsname
   läuft stattdessen über den echten WordPress-Website-Titel (Text statt
   Bild) – besser für SEO/Screenreader und ohne neue Logo-Datei änderbar,
   falls der Name je variiert.
   Wichtig (V22): SiteOrigin Corp gibt .site-title NICHT mehr aus, sobald
   ein Logo gesetzt ist, und bietet dafür auch keine Anzeige-Checkbox an
   (live auf der Seite geprüft – .site-branding enthält dann nur noch
   .custom-logo-link). Der Titel unten kommt daher nicht vom Theme,
   sondern von einem eigenen WPCode-PHP-Snippet ("DGK – Website-Titel
   neben Logo einblenden", siehe
   DGK_WPCode-Snippet_Website-Titel-im-Header.php), das den Website-Titel
   über den WordPress-Kernfilter "get_custom_logo" direkt an die
   Logo-Ausgabe anhängt – als . Ohne
   dieses Snippet bleiben die Regeln unten wirkungslos, weil das Element
   gar nicht existiert.
   Optik: Grau/Versalien wie zuvor der eingebrannte Claim (bewusst nicht
   die Theme-Primärfarbe Petrol #00756c), damit der Wechsel von Bild- zu
   Text-Darstellung optisch möglichst nahtlos bleibt. Vertikaler
   Trennstrich zwischen Icon und Titel in Anlehnung an die bisherige
   Logo-Grafik (DGK_Logo_15_Verschachtelt_mit-Claim-Linie). Untertitel/
   Tagline ("Berufs- und Dachverband...") bleibt zusätzlich bestehen und
   rutscht als eigene Zeile unter die Icon/Titel-Zeile, sobald die
   "Tagline"-Checkbox in Theme Settings › Header aktiv ist – dafür
   .site-branding auf CSS-Grid umgestellt (Zeile 1: Icon + Titel
   nebeneinander, Zeile 2: Untertitel über die volle Breite). */
.site-branding{
  display: grid;
  grid-template-columns: auto 230px;
  column-gap: 16px;
  row-gap: 4px;
  align-items: start;
  flex-shrink: 0;
}
.site-branding .custom-logo-link{
  grid-column: 1;
  grid-row: 1;
}
.site-branding .custom-logo{
  width: 100.1875px !important;
  height: auto !important;
}
.site-branding .dgk-header-titel{
  grid-column: 2;
  grid-row: 1;
  display: block;
  width: 100%;
  margin: 0;
  margin-top: 10.8px;
  position: relative;
  padding-left: 16px;
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-size: 13px;
  line-height: 1.4;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5c5c54;
}
.site-branding .dgk-header-titel::before{
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 1px;
  height: 32.4px;
  background: #c1bfb8;
}
.site-branding .site-description{
  grid-column: 1 / -1;
  grid-row: 2;
  max-width: 460px;
}
@media (max-width: 640px){
  .main-navigation{
    width: auto;
    flex: 0 0 auto;
  }
  .site-branding{
    grid-template-columns: 1fr;
    width: auto;
    flex: 1 1 0%;
    min-width: 0;
  }
  .site-branding .dgk-header-titel{
    grid-column: 1;
    grid-row: 2;
    width: auto;
    padding-left: 0;
    margin-top: 0;
  }
  .site-branding .dgk-header-titel::before{
    display: none;
  }
  .site-branding .site-description{
    grid-row: 3;
  }
}
.badge{
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #f2f1eab8;
  color: #00756c;
  font-size: 12.5px;
  font-weight: 600;
  padding: 6px 14px;
  border-radius: 20px;
  margin-bottom: 22px;
  width: fit-content;
  border: 1px solid #e3e1d8;
}
.hero-full .badge{
  background: rgba(250, 249, 246, .14);
  color: #fff;
  border: 1px solid rgba(255, 255, 255, .35);
  backdrop-filter: blur(2px);
}
.institute-table-wrap{
  overflow-x: auto;
  margin: 24px 0;
}
.institute-table{
  width: 100%;
  min-width: 720px;
  border-collapse: collapse;
  font-size: 13.5px;
  line-height: 1.5;
}
.institute-table th{
  background: #00756c;
  color: #faf9f6;
  text-align: left;
  padding: 10px 12px;
  font-weight: 600;
  font-size: 12.5px;
}
.institute-table td{
  padding: 10px 12px;
  border-bottom: 1px solid #e3e1d8;
  vertical-align: top;
}
.institute-table tr:nth-child(even) td{
  background: #f2f1ea;
}
.institute-table td:first-child{
  min-width: 220px;
}
.institute-table a{
  color: #00756c;
  font-weight: 600;
  text-decoration: none;
}
.institute-table a:hover{
  text-decoration: underline;
  color: #63237c;
}
.institute-table td:first-child a{
  display: block;
}
html{
  scroll-behavior: smooth;
}
/* Ankerziel-Abstaende (#kongresse/#akkreditiert/#ausbildungen/#weitere)
   ab V51 im WPCode-Snippet "DGK - Weiterbildung - Reiterzeile"
   (DGK_CSS_Weiterbildung-Reiterzeile_v1.css). */
.tribe-events-widget-events-list__event-wrapper{
  display: flex;
  align-items: center;
  gap: 16px;
}
.tribe-events-widget-events-list__event{
  flex: 1 1 auto;
  min-width: 0;
}
.dgk-event-list-thumb{
  flex: 0 0 auto;
  display: block;
}
.dgk-event-list-thumb img{
  width: 300px !important;
  height: auto;
  border-radius: 6px;
  display: block;
}
.tribe-events-widget-events-list__event-title{
  font-size: 18px !important;
  line-height: 1.5 !important;
}
.sow-blog .sow-entry-thumbnail,
article.type-post .entry-thumbnail{
  position: relative;
  aspect-ratio: 2.6 / 1;
  overflow: hidden;
  background: #faf9f6;
  display: flex;
  align-items: center;
  justify-content: center;
}
.sow-blog .sow-entry-thumbnail::before,
article.type-post .entry-thumbnail::before{
  content: "";
  position: absolute;
  inset: -20px;
  background-image: var(--dgk-thumb-bg);
  background-size: cover;
  background-position: center;
  filter: blur(20px);
  transform: scale(1.15);
  z-index: 0;
}
.sow-blog .sow-entry-thumbnail img,
article.type-post .entry-thumbnail img{
  position: relative;
  z-index: 1;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: scale-down;
}
.dgk-therapeut-suche .dgk-search-btn,
.dgk-buch-suche .dgk-search-btn{
  color: #faf9f6 !important;
  white-space: nowrap;
}
.dgk-therapeut-suche p{
  margin: 0;
}
.dgk-status-zeile{
  margin-bottom: 18px;
}
.dgk-suche-zeile{
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 16px 20px;
}
.dgk-suche-zeile p:nth-child(1){ flex: 0 1 220px; }
.dgk-suche-zeile p:nth-child(2){ flex: 1 1 240px; }
.dgk-suche-zeile p:nth-child(3){ flex: 0 0 auto; }
/* V52/V53: Radiobutton-Filter "Nur Kandidat:innen". V53-Korrektur: Die
   generische Regel ".dgk-therapeut-suche label{ display:block }" weiter
   unten hat hoehere Spezifitaet als ein einzelner Klassenselektor
   ".dgk-radio-label" (1 Klasse+1 Element schlaegt 1 Klasse) - dadurch
   liefen "Alle" und "Nur Kandidat:innen" trotz inline-flex-Regel
   untereinander statt nebeneinander. Fix: Selektor auf
   ".dgk-therapeut-suche .dgk-radio-label" verschaerft (2 Klassen),
   gewinnt dadurch zuverlaessig gegen die generische label-Regel. */
.dgk-therapeut-suche .dgk-radio-label{
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 44px;
  margin-right: 14px;
  font-size: 14px;
  cursor: pointer;
}
.dgk-therapeut-suche .dgk-radio-label input[type="radio"]{
  width: 18px;
  height: 18px;
  margin: 0;
  accent-color: #63237c;
  cursor: pointer;
}
.dgk-therapeut-suche label{
  display: block;
  margin-bottom: 4px;
}
.dgk-therapeut-suche select,
.dgk-therapeut-suche input[type="text"]{
  width: 100%;
  box-sizing: border-box;
  height: 41px;
  padding: 9px 13px;
  border: 1px solid #C1BFB8;
  font-size: 14px;
  font-family: inherit;
  background-color: #fff;
}
.dgk-therapeut-suche select{
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  padding-right: 32px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235C5C54' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E")
              no-repeat right 10px center / 14px;
}
.dgk-reset-btn{
  display: inline-block;
  box-sizing: border-box;
  margin-left: 12px;
  padding: 10px 18px;
  color: #5c5c54;
  font-size: 13.5px;
  border: 1px solid #63237c;
  text-decoration: none;
  white-space: nowrap;
}
.dgk-reset-btn:hover{
  color: #63237c;
}
.dgk-ergebnisse-fuer{
  color: #5c5c54;
  font-size: 14px;
  font-weight: 600;
  margin: 24px 0 12px;
}
.dgk-suche-status{
  color: #00756c;
  font-size: 13.5px;
  font-style: italic;
  font-weight: 600;
  margin-top: 10px;
}
.therapeuten-liste{
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 20px;
  margin-top: 24px;
}
.therapeut-karte{
  background: #fff;
  border: 1px solid #63237c;
  border-radius: 8px;
  padding: 16px 18px;
}
.therapeut-karte h3{
  margin-top: 0;
  margin-bottom: 8px;
  font-size: 16px;
  color: #26261f;
}
.therapeut-karte p{
  margin: 4px 0;
}
.therapeut-karte .dgk-karte-gruppe + .dgk-karte-gruppe{
  margin-top: 24px;
}
.therapeut-karte a{
  color: #00756c;
  text-decoration: none;
  overflow-wrap: anywhere;
}
.therapeut-karte a:hover{
  color: #63237c;
  text-decoration: underline;
}
/* ============================================================
   Buch-Katalog ([buch_liste]) und Buch-Detailseite (CPT "buch")
   ============================================================ */

/* Theme zeigt bei jedem Beitragstyp mit Beitragsbild automatisch ein
   .entry-thumbnail oberhalb des Inhalts – führte bei Büchern zum
   doppelten Cover (zusätzlich zum eigenen Snippet). Nur auf
   Buch-Einzelseiten (Body-Klasse "single-buch") ausgeblendet, andere
   Beitragstypen (z. B. AFW) bleiben unberührt. */
body.single-buch .entry-thumbnail{
  display: none;
}

/* Bücher-Suchformular ([buch_suche]). V47: von Volker als "zweispaltig"
   angefordert - vorher (V44) standen Textfeld/Dropdown/Button einzeln
   und volle Breite gestapelt untereinander, siehe Änderungshistorie
   oben. Jetzt Textfeld (breiter) und Dropdown (schmaler) nebeneinander
   in einem 2-Spalten-Grid, Buttons-Zeile darunter über die volle
   Formularbreite (grid-column: 1 / -1). Unter 640px automatisch zurück
   auf eine Spalte (Textfeld/Dropdown/Buttons wieder untereinander),
   damit auf Mobilgeräten nichts gequetscht wird. */
.dgk-buch-suche{
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
  gap: 4px 24px;
  align-items: start;
  max-width: 700px;
}
.dgk-buch-suche p{
  margin: 0 0 14px 0;
}
.dgk-buch-suche p:last-child{
  grid-column: 1 / -1;
  margin-bottom: 0;
}
.dgk-buch-suche label{
  font-weight: 700;
  display: block;
  margin-bottom: 4px;
}
.dgk-buch-suche input[type="text"],
.dgk-buch-suche select{
  width: 100%;
  max-width: none;
  padding: 8px 10px;
  box-sizing: border-box;
}
@media (max-width: 640px){
  .dgk-buch-suche{
    grid-template-columns: 1fr;
  }
}

/* V44: "auto-fit" liess ein einzelnes Suchergebnis auf volle Breite (und
   dadurch riesige Cover-Höhe) aufziehen, weil leere Grid-Spuren
   kollabieren und die vorhandene Karte den freien Platz füllt.
   "auto-fill" reserviert die Spurbreite unabhängig von der Trefferzahl -
   wie bereits bei ".therapeuten-liste" oben.

   Nachtrag 26.08.2026 (von Volker gemeldet: "die Bücherkacheln sind zu
   groß"): "minmax(220px, 1fr)" hatte zwar das auto-fit-Problem oben
   behoben, aber das obere Limit "1fr" ließ eine Karte trotzdem beliebig
   breit werden, sobald pro Zeile nur wenig oder nur EINE Spur überhaupt
   Platz hat - genau das trifft jetzt öfter zu, seit die Ergebnisliste
   nach Gruppen (Jahr/Verlag/...) aufgeteilt wird: viele Gruppen haben nur
   1-3 Bücher, die dann die einzige verfügbare Spur ausfüllten. Live per
   Test-iframe nachgestellt (schmale 371px-Breite = 1 Spur): Karte wuchs
   auf 270px, obwohl das eigentliche Cover-Bild bei Altdaten oft nur
   125px nativ breit ist - dadurch viel leere weiße Fläche um ein kleines
   Bild, wirkte "aufgebläht". Fix: festes oberes Limit "180px" statt
   "1fr" (Karte kann also nie breiter werden, egal wie wenige Bücher in
   der Zeile/Gruppe stehen oder wie schmal der Bildschirm ist), plus
   Grund-Kachelgröße von 220px auf 150px reduziert - kompakteres
   "Kachelraster", wie ursprünglich gemeint, und deutlich näher an der
   nativen Cover-Größe vieler Altdaten-Bilder. Gap von 32px auf 20px
   verkleinert, passend zur kleineren Kachelgröße (live gegengeprüft, wirkt
   proportional stimmiger als der alte 32px-Abstand bei der neuen Größe). */
.buecher-liste{
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(150px, 180px));
  gap: 20px;
  margin: 32px 0;
}

/* V44: Zwischenüberschrift in der Ergebnisliste, eine pro Gruppe des
   gewählten Sortierkriteriums (Verlag/Reihe/Jahr/.../Anfangsbuchstabe bei
   Titel) - das PHP-Snippet öffnet dafür pro Gruppe ein eigenes
   ".buecher-liste"-Grid direkt nach dieser Überschrift. */
.buecher-gruppen-titel{
  font-size: 1.15em;
  margin: 40px 0 12px 0;
  padding-bottom: 6px;
  border-bottom: 1px solid #d8d3c4;
}
.buecher-gruppen-titel:first-of-type{
  margin-top: 24px;
}
.buch-karte{
  position: relative;
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
  padding: 20px 20px 28px 20px;
  text-align: center;
}
.buch-karte-link{
  display: block;
  text-decoration: none;
  color: inherit;
}
.buch-cover-wrapper{
  aspect-ratio: 2 / 3;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  margin-bottom: 12px;
}
.buch-cover{
  max-width: 100%;
  max-height: 100%;
  height: auto;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
  transition: transform 0.15s ease-in-out;
}
.buch-karte:hover .buch-cover{
  transform: scale(1.03);
}
.buch-karte .buch-titel{
  font-size: 12px;
  font-weight: 400;
  line-height: 1.3;
  margin: 0;
  color: #333;
  overflow-wrap: break-word;
  hyphens: auto;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  /* Feste Höhe für exakt 4 Zeilen (4 x 15,6px Zeilenhöhe bei 12px
     Schrift, aufgerundet) - siehe V46-Changelog: macht alle Karten
     gleich hoch, unabhängig von der Titellänge. */
  height: 63px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
}
/* Runder Pfeil-Button unten rechts, überlappt den Kartenrand leicht
   (Springer-Katalogstil). */
.buch-pfeil-btn{
  position: absolute;
  right: 14px;
  bottom: -18px;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #fff;
  border: 1px solid #ddd;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  line-height: 1;
  color: #333;
  text-decoration: none;
  transition: background 0.15s ease-in-out, color 0.15s ease-in-out;
}
.buch-pfeil-btn:hover{
  background: #333;
  color: #fff;
}

.buch-detail{
  display: flex;
  flex-wrap: wrap;
  gap: 32px;
  max-width: 800px;
  /* V44: Flex-Standard "stretch" zog den Text-Block bei leerer
     Beschreibung auf die volle Cover-Höhe - grosse leere Fläche neben
     kurzem Inhalt. "flex-start" lässt ihn nur so hoch wie den
     tatsächlichen Inhalt sein. */
  align-items: flex-start;
}
/* Cover-Dateien der Altdaten sind klein (z. B. 125×188px) – max-width
   statt fester Breite, damit nichts über die native Auflösung hinaus
   gestreckt wird (sonst sichtbare Unschärfe). */
.buch-detail-cover-wrapper{
  flex: 0 0 auto;
  max-width: 200px;
}
.buch-detail-cover{
  max-width: 100%;
  height: auto;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}
.buch-detail-text{
  flex: 1 1 300px;
  min-width: 260px;
}
/* V44: kleines Label VOR dem Untertitel, zeigt den Medientyp (Broschüre/
   Zeitschrift/E-Book/DVD-Film/...) - aber laut PHP-Snippet nur, wenn er
   vom Standardfall "Buch" abweicht, sonst stünde bei ~75 von 79 Büchern
   unnötig "Buch" über der Überschrift. */
.buch-detail-medientyp{
  display: inline-block;
  font-size: 0.78em;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  color: #6b2a6b;
  background: #f1e6f1;
  border-radius: 3px;
  padding: 2px 8px;
  margin: 0 0 8px 0;
}
.buch-detail-untertitel{
  font-size: 1.1em;
  font-weight: 700;
  margin: 0 0 12px 0;
  color: #222;
}
/* V44: fehlte in dieser Datei komplett, obwohl das PHP-Snippet die Zeile
   (Autor · Verlag · Jahr · Auflage · Reihe · ISBN) schon länger ausgibt -
   lief bisher ungestylt (Browser-Standard-Absatzformatierung). */
.buch-detail-angaben{
  font-size: 0.92em;
  color: #5C5C54;
  margin: 0 0 16px 0;
}
.buch-detail-beschreibung{
  /*font-size: 12px;*/
  margin-bottom: 16px;
}
.buch-detail-link{
  margin-bottom: 24px;
  word-break: break-word;
}
.buch-detail-zurueck{
  font-size: 0.9em;
}
.dgk-nav-empty{
  color: #5c5c54;
  font-size: 11px;
  font-style: italic;
  text-transform: none;
}
/* ------------------------------------------------------------
   Reiterzeile der Seite "Aus-, Fort- und Weiterbildung"
   AUSGELAGERT mit V51 (04.09.2026): Das komplette Styling der
   Reiterzeile inklusive Aktiv-Markierung steht jetzt im WPCode-Snippet
   "DGK - Weiterbildung - Reiterzeile" (lokal:
   05_Technische-Dokumentation/WPCode-Snippets/
   DGK_CSS_Weiterbildung-Reiterzeile_v1.css), zusammen mit dem
   zugehoerigen JavaScript-Snippet, das die Zeile beim Scrollen fixiert.
   Grund: Bis V50 war die Aktiv-Markierung fest auf "#akkreditiert"
   verdrahtet und markierte nach dem Einfuegen der Rubrik "Kongresse und
   Fachtagungen" den falschen Reiter. Bitte hier NICHT wieder einfuegen.
   ------------------------------------------------------------ */

/* Nachträgliche Designanpassungen 
.sow-blog-posts article {
  border-radius: 15px;
}*/

.tribe-common--breakpoint-medium.tribe-events .tribe-events-l-container {
  min-height: 700px;
  padding-bottom: var(--tec-spacer-14);
  padding-top: var(--tec-spacer-15);
}