diff --git a/README.md b/README.md
index b5def5b..afb9c4e 100644
--- a/README.md
+++ b/README.md
@@ -32,10 +32,31 @@ terminiert TLS (Let's Encrypt) und leitet an den passenden Upstream weiter.
Alles hängt unter `*.server.schooltech.ch`. Der Unterschied zwischen den
Diensten ist nicht die Domain, sondern **wohin der Upstream zeigt**:
-
+
-> Diagramm-Quelle: [`doc/Architektur.svg`](doc/Architektur.svg) — auch als
-> [`doc/Architektur.png`](doc/Architektur.png) (für Viewer ohne SVG-Support).
+> Bild: [`doc/Architektur.png`](doc/Architektur.png) · Vektor-Quelle:
+> [`doc/Architektur.svg`](doc/Architektur.svg) (für PDF/beliebige Skalierung).
**Bausteine (Docker-Container, siehe `docker-compose.yaml`):**
@@ -74,11 +95,19 @@ Ruft man die nackte Domain `server.schooltech.ch` auf, erscheint die
**Ablauf aus Nutzersicht:**
-
+
*Oben die Navigationsleiste mit Logo und Dienst-Buttons, darunter der gewählte
-Dienst im iFrame. (Quelle: [`doc/Portal.svg`](doc/Portal.svg) — auch als
-[`doc/Portal.png`](doc/Portal.png) und [`doc/Portal.pdf`](doc/Portal.pdf).)*
+Dienst im iFrame. Bild: [`doc/Portal.png`](doc/Portal.png) · Quellen:
+[`doc/Portal.svg`](doc/Portal.svg), [`doc/Portal.pdf`](doc/Portal.pdf).*
1. Seite öffnen → ist man nicht eingeloggt, zeigt der Button **„Login“**.
2. Login (User/Passwort) → der Auth-Service setzt ein Session-Cookie für die