/* ============================================================
   FUNDAMENT — Stil: 	Klassischer Schriftsatz
   Typografie: 		System Serif (Times) & System Monospace (Courier)
   ============================================================ */

/* — Variablen — */
:root {
  --blau:        #1a2e4a;
  --blau-dunkel: #0d1c2e;
  --blau-mittel: #2b4870;
  --blau-hell:   #4a6fa5;
  --weiss:       #f5f0e8;        /* Gebrochenes Papier-Weiß */
  --weiss-rein:  #ffffff;
  --linie:       #1a2e4a;
  --schatten:    rgba(13,28,46,0.18);

  /* Klassischer Bell-Labs/Suckless Stack: Times für Text, Courier für Struktur */
  --schrift-titel:  "Times New Roman", "Times", "Georgia", serif;
  --schrift-text:   "Times New Roman", "Times", "Georgia", serif;
  --schrift-sc:     "Courier New", "Courier", monospace;

  --abstand-s:  0.75rem;
  --abstand-m:  1.5rem;
  --abstand-l:  3rem;
  --abstand-xl: 5rem;

  --linie-stark:  2px solid var(--blau);
  --linie-mittel: 1px solid var(--blau-mittel);
  --linie-duenn:  1px solid var(--blau-hell);
}

/* — Reset & Basis — */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

html { font-size: 16px; background: var(--weiss); color: var(--blau-dunkel); }

body {
  font-family: var(--schrift-text);
  line-height: 1.6;
  background: var(--weiss);
  color: var(--blau-dunkel);
}

/* — Typografische Grundregeln — */
h1, h2, h3, h4 {
  font-family: var(--schrift-titel);
  font-weight: bold;
  line-height: 1.2;
  color: var(--blau-dunkel);
}

p { margin-bottom: var(--abstand-m); text-align: justify; }

em { font-style: italic; }

/* — Linien-Ornamentik — */
.linie-oben    { border-top:    var(--linie-stark); }
.linie-unten   { border-bottom: var(--linie-stark); }
.linie-doppelt {
  border-top:    2px solid var(--blau);
  padding-top:   2px;
  box-shadow: 0 -1px 0 var(--blau);
}

/* — Trennornament — */
.ornament {
  text-align: center;
  font-family: var(--schrift-sc);
  font-weight: bold;
  color: var(--blau-mittel);
  font-size: 0.8rem;
  margin: var(--abstand-l) 0;
  user-select: none;
}
.ornament::before { content: '--- [ '; }
.ornament::after  { content: ' ] ---'; }

/* — Spalten — */
.pure-g { margin: 0; }

/* — Utility — */
.zentriert { text-align: center; }
.kapitaelchen { font-family: var(--schrift-sc); text-transform: uppercase; }
.kursiv { font-style: italic; }
