@charset "UTF-8";
/* Deutsche Vereinigung für Sportrecht e.V. (DVSR)
   Konstanzer Arbeitskreis für deutsches und internationales Sportrecht

   Entwurf vom 01.10.2026: der Auftritt einer Fachzeitschrift, nicht der eines Verbands.
   Ein mittig gesetzter Kopf mit Logo und Rubrikenzeile zwischen zwei Linien, darunter eine
   einzige Textspalte. Typografie trägt die Gestaltung: Source Serif 4 als Leseschrift
   (selbst gehostet unter ../Fonts/, SIL OFL 1.1), die Systemschrift in Versalien für alles,
   was ordnet (Menü, Rubriken, Datum, Uhrzeiten, Fuß). Kein Framework, kein JavaScript,
   keine Fremdserver, keine Animation.

   Farben aus dem Logo (gemessen am 01.10.2026 an dvsr-logo-1024.png): Das Logo trägt EIN
   Blau, #228cbe, und zwei neutrale Grautöne, #8c8c8c und #cccccc. Das Logoblau kommt auf
   Weiß nur auf 3,8:1 und taugt damit nicht als Textfarbe. Es steht deshalb nur als Linie;
   das "kräftige" Blau für Text und Links ist derselbe Farbton, abgedunkelt.

   Kontraste (WCAG 2.1, gerechnet am 01.10.2026; AA verlangt 4,5:1 für Text, 3:1 für
   Bedienelemente und Fokus):
     --text       #1d2327 auf Weiß   15,9:1   auf --papier 14,5:1
     --blau       #0f4f76 auf Weiß    8,8:1   auf --papier  8,0:1   auf --blau-hell 7,6:1
     --blau-tief  #0a3652 auf Weiß   12,6:1   auf --papier 11,5:1
     --grau       #645e57 auf Weiß    6,4:1   auf --papier  5,8:1   auf --blau-hell 5,6:1
     --blau-logo  #228cbe auf Weiß    3,8:1   auf --papier  3,4:1   (nur Linien, nie Text)
   --linie und --blau-hell sind reiner Schmuck und tragen keine Information allein. */

@font-face {
  font-family: "Source Serif 4";
  font-style: normal;
  font-weight: 200 900;
  font-display: swap;
  src: url("../Fonts/SourceSerif4-latin-wght-normal.woff2") format("woff2");
}
@font-face {
  font-family: "Source Serif 4";
  font-style: italic;
  font-weight: 200 900;
  font-display: swap;
  src: url("../Fonts/SourceSerif4-latin-wght-italic.woff2") format("woff2");
}

:root {
  --blau: #0f4f76;
  --blau-tief: #0a3652;
  --blau-logo: #228cbe;
  --blau-hell: #e6f1f7;
  --text: #1d2327;
  --grau: #645e57;
  --linie: #dcd7cf;
  --papier: #f6f4f0;

  --serif: "Source Serif 4", "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;
  --sans: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;

  --kopf: 54rem;     /* Kopf und Fuß: breiter als der Text, wie der Titel über dem Satzspiegel */
  --spalte: 39rem;   /* Textspalte: bei 18px Leseschrift im Mittel 66 Zeichen (gemessen am 01.10.2026 auf der Geschichtsseite) */
  --rand-x: 1.5rem;
  color-scheme: light;
}

*, *::before, *::after { box-sizing: border-box; }
html { font-size: 100%; -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body {
  margin: 0;
  color: var(--text);
  background: #fff;
  font-family: var(--serif);
  font-size: 1.125rem;
  line-height: 1.65;
  font-kerning: normal;
  text-rendering: optimizeLegibility;
}

/* ---------- Text ---------- */
h1, h2, h3 { margin: 0; overflow-wrap: break-word; text-wrap: balance; }
h1 { font-family: var(--serif); font-size: 2.375rem; font-weight: 600; line-height: 1.16;
  letter-spacing: -.012em; hyphens: auto; padding-bottom: 1.5rem; margin-bottom: 2.25rem;
  border-bottom: 1px solid var(--linie); }
h2 { font-family: var(--serif); font-size: 1.5rem; font-weight: 600; line-height: 1.25;
  color: var(--blau); margin: 2.75rem 0 .75rem; }
/* Rubrik: kleine Versalien in der Systemschrift. Für h3 überall, für h2 auf der Startseite. */
h3, .page-content[data-start="1"] h2 { font-family: var(--sans); font-size: .8125rem; font-weight: 700;
  line-height: 1.4; letter-spacing: .09em; text-transform: uppercase; color: var(--blau); }
h3 { margin: 2.5rem 0 .75rem; }

p, ul, ol, table { margin: 0 0 1.15rem; }
/* Silbentrennung erst auf schmalen Bildschirmen (siehe unten): Bei 68 Zeichen Flattersatz
   stört sie mehr, als sie nützt. */
p, li, td { hyphens: manual; overflow-wrap: break-word; }
p, li { text-wrap: pretty; }
ul, ol { padding-left: 1.5rem; }
li { margin-bottom: .35rem; }
li > ul, li > ol { margin: .35rem 0 0; }
li::marker { color: var(--grau); }
strong, b { font-weight: 650; }
small { font-family: var(--sans); font-size: .8125rem; line-height: 1.45; color: var(--grau); }
sup { font-size: .7em; line-height: 0; }
hr { border: 0; border-top: 1px solid var(--linie); margin: 2.5rem 0; }
img { max-width: 100%; height: auto; }

a { color: var(--blau); text-decoration: underline; text-decoration-thickness: .06em;
  text-underline-offset: .2em; }
a:hover { color: var(--blau-tief); text-decoration-thickness: .13em; }
:focus-visible { outline: 3px solid var(--blau); outline-offset: 3px; border-radius: 2px; }

/* Sprungmarke für die Tastatur, erst beim Fokus sichtbar; h1 der Startseite nur zum Vorlesen */
.sprung { position: absolute; left: var(--rand-x); top: -6rem; z-index: 10; padding: .6rem 1rem;
  background: var(--blau); color: #fff; font-family: var(--sans); font-size: 1rem; }
.sprung:focus { top: .5rem; color: #fff; outline-color: var(--text); }
.nur-vorlesen { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; border: 0;
  overflow: hidden; clip-path: inset(50%); white-space: nowrap; }

/* ---------- Kopf: Logo mittig, darunter die Rubrikenzeile zwischen zwei Linien ---------- */
.site-header__inner { max-width: var(--kopf); margin: 0 auto; padding: 2rem var(--rand-x) 0;
  text-align: center; }
.site-logo { display: inline-block; }
/* Die Zeichnung sitzt in der Bilddatei rechts der Mitte (Bögen links, 200 px Leerraum);
   8 % nach links gerückt steht sie optisch mittig. */
.site-logo img { display: block; height: 7.5rem; width: auto; max-width: 100%;
  transform: translateX(-8%); }

.mainnav { margin-top: 1.5rem; border-top: 1px solid var(--linie);
  border-bottom: 2px solid var(--blau-logo); font-family: var(--sans); font-size: .8125rem;
  font-weight: 600; letter-spacing: .09em; text-transform: uppercase; }
.mainnav ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap;
  justify-content: center; column-gap: .5rem; }
.mainnav li { margin: 0; }
.mainnav a { display: block; padding: 1rem 1rem .8rem; color: var(--text); text-decoration: none;
  line-height: 1.3; border-bottom: 3px solid transparent; margin-bottom: -2px; }
.mainnav a:hover { color: var(--blau); border-bottom-color: var(--blau-logo); }
.mainnav li.active > a { color: var(--blau); border-bottom-color: var(--blau); }
.mainnav a:focus-visible { outline-offset: -3px; }

/* ---------- Inhalt: eine Spalte ---------- */
.page-content { display: block; max-width: calc(var(--spalte) + 2 * var(--rand-x)); margin: 0 auto;
  padding: 3.75rem var(--rand-x) 6rem; }
.frame { margin-bottom: 2.5rem; }
.frame::after { content: ""; display: table; clear: both; }
.frame > :last-child { margin-bottom: 0; }
.frame > header > :first-child, .frame > :first-child { margin-top: 0; }

/* Startseite: der Name steht im Logo, der erste Absatz ist der Vorspann */
.page-content[data-start="1"] { padding-top: 4.25rem; }
.page-content[data-start="1"] > .frame:first-of-type > p:first-child { font-size: 1.625rem;
  line-height: 1.38; text-wrap: balance; margin-bottom: 0; }
.page-content[data-start="1"] > .frame { margin-bottom: 3.5rem; }
.page-content[data-start="1"] h2 { margin: 0 0 .5rem; padding-top: .8rem;
  border-top: 2px solid var(--blau-logo); }
/* Kontaktblock: letztes Element der Startseite */
.page-content[data-start="1"] > .frame:last-of-type:not(:first-of-type) p { font-family: var(--sans);
  font-size: 1rem; line-height: 1.6; margin-top: 1rem; }
.page-content[data-start="1"] > .frame:last-of-type:not(:first-of-type) strong { display: inline-block;
  font-family: var(--serif); font-size: 1.1875rem; font-weight: 600; line-height: 1.35;
  margin-bottom: .3rem; }

/* ---------- Meldungen ---------- */
/* Übersicht: Datum in fester Spalte, Titel in der Leseschrift, Linien dazwischen */
.meldungen { list-style: none; padding: 0; margin: 0 0 1.25rem; border-bottom: 1px solid var(--linie); }
.meldungen li { display: grid; grid-template-columns: 6.25rem minmax(0, 1fr); column-gap: 1.25rem;
  align-items: baseline; margin: 0; padding: .8rem 0; border-top: 1px solid var(--linie); }
h2 + .meldungen li:first-child, header + .meldungen li:first-child { border-top: 0; }
/* Aktuelles: Die Liste folgt unmittelbar auf die Linie unter dem Titel, zwei Linien wären eine zu viel */
.frame > .meldungen:first-child li:first-child { border-top: 0; padding-top: 0; }
.meldungen__datum, .meldung__datum { font-family: var(--sans); font-size: .8125rem; font-weight: 600;
  letter-spacing: .06em; color: var(--grau); font-variant-numeric: tabular-nums; }
.meldungen a { text-decoration: none; line-height: 1.4; text-wrap: balance; }
.meldungen a:hover { text-decoration: underline; text-decoration-thickness: .06em; }
/* "Alle Meldungen" unter der Liste der Startseite */
.meldungen + p { font-family: var(--sans); font-size: .875rem; font-weight: 600; }
.meldungen + p a::after { content: "\00a0\2192"; }

/* Einzelne Meldung: Die Datumszeile gehört zum Titel, die Linie rückt darunter */
h1:has(+ .meldung__datum) { padding-bottom: 0; margin-bottom: .9rem; border-bottom: 0; }
.meldung__datum { padding-bottom: 1.5rem; margin: 0 0 2.25rem; border-bottom: 1px solid var(--linie); }

/* Dateien. Der Bestand trägt zwei Formen: p.datei > a und, aus den WordPress-Dateiblöcken,
   ein Absatz mit zwei Links auf dieselbe Datei, der zweite mit download-Attribut. */
p.datei, p:has(> a[download]) { display: flex; flex-wrap: wrap; align-items: baseline;
  justify-content: space-between; gap: .35rem 1.5rem; margin: 1.75rem 0; padding: .9rem 1.1rem;
  background: var(--blau-hell); border-left: 3px solid var(--blau-logo); }
p.datei a, p:has(> a[download]) a:first-child { font-weight: 600; }
a[download] { font-family: var(--sans); font-size: .8125rem; font-weight: 600; letter-spacing: .06em;
  text-transform: uppercase; white-space: nowrap; }
a[download]::before, p.datei a:only-child::before { content: "\2193\00a0"; }

/* ---------- Tabellen: Tagungsprogramme (Uhrzeit, Programmpunkt) ---------- */
table { width: 100%; border-collapse: collapse; border-bottom: 1px solid var(--linie);
  font-size: 1.0625rem; line-height: 1.5; }
h3 + table { border-top: 2px solid var(--blau-logo); }
h3 + table tr:first-child > * { border-top: 0; }
th, td { padding: .8rem 0; border-top: 1px solid var(--linie); text-align: left; vertical-align: top; }
th { font-family: var(--sans); font-size: .8125rem; letter-spacing: .06em; text-transform: uppercase;
  color: var(--grau); }
td:first-child:not(:only-child) { width: 9.25rem; padding-right: 1.25rem; padding-top: .95rem;
  font-family: var(--sans); font-size: .875rem; line-height: 1.45; font-variant-numeric: tabular-nums; }
td:first-child:not(:only-child) strong { font-weight: 600; }
td small { display: inline-block; margin-top: .3rem; }

/* ---------- Bilder ---------- */
figure, figure.bild { margin: 2.25rem 0; }
figure img, p > img:only-child { display: block; }
figure > p { margin: 0; }
figcaption { margin-top: .5rem; font-family: var(--sans); font-size: .8125rem; color: var(--grau); }

/* ---------- Schriftenreihe ---------- */
/* Übersicht: Die Bände stehen im Bestand als Links in EINEM Absatz. Jeder Link wird eine
   Zeile. ul.baende ist dieselbe Darstellung für den Fall, dass der Import eine Liste liefert. */
[data-seite="/schriftenreihe-recht-und-sport"] p:has(> a:nth-of-type(5)) > a,
ul.baende > li { display: block; padding: .6rem 0; border-top: 1px solid var(--linie);
  line-height: 1.4; text-decoration: none; }
[data-seite="/schriftenreihe-recht-und-sport"] p:has(> a:nth-of-type(5)) > a:first-of-type { margin-top: .6rem; }
[data-seite="/schriftenreihe-recht-und-sport"] p:has(> a:nth-of-type(5)) > a:hover,
ul.baende a:hover { text-decoration: underline; text-decoration-thickness: .06em; }
[data-seite="/schriftenreihe-recht-und-sport"] p:has(> a:nth-of-type(5)) { border-bottom: 1px solid var(--linie); }
ul.baende { list-style: none; padding: 0; border-bottom: 1px solid var(--linie); }
ul.baende > li { margin: 0; }
ul.baende a { text-decoration: none; }

/* Band: Der Umschlag steht rechts neben den Angaben zu Herausgeber, Verlag und ISBN */
[data-seite^="/band-"] p:has(> img:only-child),
[data-seite^="/sonderband-"] p:has(> img:only-child) { float: right; width: 10.5rem;
  margin: .35rem 0 1.25rem 2rem; }
[data-seite^="/band-"] p > img:only-child,
[data-seite^="/sonderband-"] p > img:only-child { width: 100%; border: 1px solid var(--linie); }
[data-seite^="/band-"] figure, [data-seite^="/sonderband-"] figure { margin: 0; }

/* ---------- Satzung ---------- */
/* Die Paragrafenüberschriften sind im Bestand fette Absätze, keine h2 (geprüft am 01.10.2026:
   alle dreizehn Absätze mit <strong> sind Überschriften). Der erste ist der Titel. */
[data-seite="/unsere-satzung"] p:has(> strong:only-child) { font-size: 1.25rem; line-height: 1.3;
  color: var(--blau); margin: 2.75rem 0 .7rem; break-after: avoid; }
[data-seite="/unsere-satzung"] p:has(> strong:only-child) strong { font-weight: 600; }
[data-seite="/unsere-satzung"] .frame > p:first-child { margin: 0 0 1rem; color: var(--text);
  font-size: 1.125rem; line-height: 1.5; text-align: center; }
[data-seite="/unsere-satzung"] .frame > p:first-child strong { display: block; margin-bottom: .4rem;
  font-family: var(--sans); font-size: .875rem; font-weight: 700; letter-spacing: .09em;
  text-transform: uppercase; word-spacing: -.25em; color: var(--blau); }

/* ---------- Fuß ---------- */
.site-footer { border-top: 1px solid var(--linie); background: var(--papier); color: var(--grau);
  font-family: var(--sans); font-size: .875rem; line-height: 1.6; }
.site-footer__inner { max-width: var(--kopf); margin: 0 auto; padding: 2.25rem var(--rand-x) 2.75rem;
  display: flex; flex-direction: column; align-items: center; gap: .6rem; text-align: center; }
.site-footer__name { font-weight: 600; }
.site-footer nav { font-weight: 600; }
.site-footer a { color: var(--grau); padding: .35rem .15rem; display: inline-block; }
.site-footer a:hover { color: var(--blau); }

/* ---------- Schmale Bildschirme (ab 320 px) ---------- */
@media (max-width: 44rem) {
  :root { --rand-x: 1.25rem; }
  body { font-size: 1.0625rem; line-height: 1.6; }
  p, li, td { hyphens: auto; hyphenate-limit-chars: 10 4 4; -webkit-hyphenate-limit-before: 3;
    -webkit-hyphenate-limit-after: 3; }
  h1 { font-size: 1.8rem; padding-bottom: 1.15rem; margin-bottom: 1.75rem; }
  h2 { font-size: 1.3rem; margin-top: 2.25rem; }
  .site-header__inner { padding-top: 1.25rem; }
  .site-logo img { height: auto; width: 15.5rem; }
  .mainnav { margin-top: 1rem; font-size: .75rem; letter-spacing: .07em; }
  .mainnav ul { column-gap: 0; }
  .mainnav a { padding: .85rem .7rem .65rem; }
  .page-content { padding: 2.25rem var(--rand-x) 3.75rem; }
  .page-content[data-start="1"] { padding-top: 2.5rem; }
  .page-content[data-start="1"] > .frame { margin-bottom: 2.75rem; }
  .page-content[data-start="1"] > .frame:first-of-type > p:first-child { font-size: 1.3rem; hyphens: manual; }
  .meldung__datum { padding-bottom: 1.15rem; margin-bottom: 1.75rem; }
  [data-seite="/unsere-satzung"] p:has(> strong:only-child) { font-size: 1.15rem; margin-top: 2.25rem; }
}
@media (max-width: 32rem) {
  /* Meldungen: Datum über dem Titel */
  .meldungen li { display: block; padding: .75rem 0; }
  .meldungen__datum { display: block; margin-bottom: .15rem; }
  /* Programm: Uhrzeit über dem Programmpunkt */
  table, tbody, tr, td, th { display: block; }
  tr { padding: .75rem 0; border-top: 1px solid var(--linie); }
  h3 + table tr:first-child { border-top: 0; }
  td, th { padding: 0; border: 0; }
  td:first-child:not(:only-child) { width: auto; padding: 0 0 .2rem; color: var(--grau); }
  /* Das Programm von 2021 hat eine leere Mittelspalte */
  [data-seite="/dvsr-jahrestagung-2021-in-taufkirchen-kreis-muenchen"] td:not(:first-child):not(:last-child) { display: none; }
  /* Band: Neben dem Umschlag bleibt zu wenig Zeile, er steht über den Angaben */
  [data-seite^="/band-"] p:has(> img:only-child),
  [data-seite^="/sonderband-"] p:has(> img:only-child) { float: none; width: 8.5rem; margin: 0 0 1.5rem; }
}

/* ---------- Druck: Satzung, Geschichte und Programme schwarz auf weiß ---------- */
@media print {
  @page { margin: 2cm 2.2cm; }
  .mainnav, .site-footer nav, .sprung, a[download] { display: none !important; }
  html { font-size: 10.5pt; }
  body { font-size: 10.5pt; line-height: 1.45; color: #000; background: #fff; }
  .site-header__inner { padding: 0 0 12pt; text-align: left; border-bottom: .5pt solid #000; }
  .site-logo img { height: 1.7cm; transform: none; margin-left: -.33cm; }
  .page-content { max-width: none; margin: 0; padding: 18pt 0 0; }
  h1, h2, h3, a, strong, small, li::marker, td, th, .meldung__datum,
  [data-seite="/unsere-satzung"] p:has(> strong:only-child),
  [data-seite="/unsere-satzung"] .frame > p:first-child strong { color: #000 !important; }
  h1 { font-size: 20pt; padding-bottom: 10pt; margin-bottom: 14pt; border-bottom-color: #000; }
  h2 { font-size: 13.5pt; margin-top: 18pt; }
  h3 { font-size: 9pt; margin-top: 16pt; }
  .meldung__datum { font-size: 9pt; padding-bottom: 10pt; margin-bottom: 14pt; border-bottom-color: #000; }
  [data-seite="/unsere-satzung"] p:has(> strong:only-child) { font-size: 12pt; margin: 15pt 0 5pt; }
  a { text-decoration: none; }
  /* Fremde Adressen ausschreiben: Auf Papier ist ein Link sonst nur ein Wort */
  .page-content a[href^="http"]::after { content: " (" attr(href) ")"; font-family: var(--sans);
    font-size: 8pt; font-weight: 400; overflow-wrap: anywhere; }
  p.datei, p:has(> a[download]) { display: block; padding: 0; margin: 0 0 1.15rem; background: none; border: 0; }
  table { font-size: 10pt; border-bottom-color: #000; }
  h3 + table { border-top: 1pt solid #000; }
  th, td { padding: 5pt 0; border-top-color: #999; }
  td:first-child:not(:only-child) { width: 3.6cm; font-size: 9pt; padding-top: 6pt; }
  h1, h2, h3 { break-after: avoid; }
  p, li { orphans: 3; widows: 3; }
  tr, figure, img { break-inside: avoid; }
  .meldungen li, .meldungen, ul.baende, ul.baende > li { border-color: #999; }
  .site-footer { background: none; border-top: .5pt solid #000; color: #000; font-size: 8.5pt; margin-top: 24pt; }
  .site-footer__inner { padding: 8pt 0 0; align-items: flex-start; text-align: left; }
  .site-footer a { color: #000; padding: 0; }
  .site-footer br { display: none; }
  .site-footer__name::after, .site-footer__ort::after { content: " · "; font-weight: 400; }
}

/* --- Text & Medien (seit 01.10.2026) -----------------------------------------------------
   Bilder stehen nicht mehr im Fließtext, sondern in eigenen Elementen vom Typ "Text & Medien"
   (fluid_styled_content: .frame-type-textmedia > .ce-textpic > .ce-gallery + .ce-bodytext).
   Grund: Bilder im RTE-Text überleben das Speichern im Backend nicht. imageorient 25/26 ergibt
   .ce-right/.ce-left .ce-intext .ce-nowrap (Bild neben Text), 0 ergibt .ce-center .ce-above.
   Buchcover der Schriftenreihe: 160 px links neben dem Text. */
.frame-type-textmedia { margin: 2.25rem 0; }
.ce-textpic.ce-intext.ce-nowrap { display: grid; grid-template-columns: auto minmax(0, 1fr);
  gap: 1.25rem 2rem; align-items: center; }
.ce-textpic.ce-right.ce-intext.ce-nowrap { grid-template-columns: minmax(0, 1fr) auto; }
.ce-textpic.ce-right.ce-intext.ce-nowrap > .ce-gallery { order: 2; }
.ce-gallery, .ce-gallery .ce-row, .ce-gallery .ce-column, .ce-gallery figure { float: none; margin: 0; }
.ce-textpic .ce-gallery { margin: 0; }
.ce-above .ce-gallery { margin-bottom: 1rem; }
.ce-gallery img { display: block; max-width: 100%; height: auto; }
.ce-gallery figcaption { margin-top: .5rem; font-size: .875rem; }
.ce-bodytext { min-width: 0; overflow-wrap: anywhere; }
.ce-bodytext > :last-child { margin-bottom: 0; }
.frame-layout-1 .ce-gallery img { width: 7rem; height: 7rem; aspect-ratio: 1; object-fit: cover;
  object-position: 50% 20%; border-radius: 50%; }
@media (max-width: 34rem) {
  .ce-textpic.ce-intext.ce-nowrap, .ce-textpic.ce-right.ce-intext.ce-nowrap { grid-template-columns: minmax(0, 1fr); }
  .ce-textpic.ce-right.ce-intext.ce-nowrap > .ce-gallery { order: 0; }
  .ce-gallery img { max-width: min(100%, 16rem); }
  .frame-layout-1 .ce-textpic.ce-intext.ce-nowrap { grid-template-columns: 5rem minmax(0, 1fr); align-items: start; }
  .frame-layout-1 .ce-gallery img { width: 5rem; height: 5rem; }
}
@media print { .frame-type-textmedia { break-inside: avoid; } }

/* Bandseiten der Schriftenreihe: Das Cover steht oben, aber in Buchgröße statt seitenbreit. */
[data-seite^="/band-"] .ce-above .ce-gallery img, [data-seite^="/sonderband-"] .ce-above .ce-gallery img { width: 11rem; max-width: 100%; }
/* Fotos in Meldungen: höchstens Textspaltenbreite, nie aufgeblasen. */
.ce-above .ce-gallery img { max-width: min(100%, 36rem); }

/* fluid_styled_content zentriert Bilder über dem Text mit verschobenen Hüllen (right: 50 %);
   hier stehen sie bündig mit der Textspalte. */
.ce-center .ce-outer, .ce-center .ce-inner { float: none; position: static; right: auto; }
.ce-center .ce-gallery { text-align: left; }
