Überschriftenordnung im Hauptinhalt: keine übersprungenen Ebenen mehr

Fünf Seiten hatten einen Sprung h1 -> h3 im Hauptinhalt (die Kachel-
Überschriften waren h3, ohne h2 dazwischen). Für Bildschirmleser fehlte
damit eine Ebene im "Inhaltsverzeichnis" der Seite (WCAG 1.3.1).

Pro Seite der passende, optik-erhaltende Weg -- jede Änderung mit
Screenshot bzw. gemessener Schriftgröße gegengeprüft:

- werte, kontakt, index: Kachel-h3 -> h2 (die Kacheln SIND die
  Hauptabschnitte unter der h1). Neue Regel .card > h2 hält die kompakte
  h3-Optik (1.62rem); Varianten .card-brand/.card-feature bleiben über
  ihre eigenen h3-Regeln unberührt. Gemessen: 25.92px vorher = nachher.
- bewerben: die schon sichtbaren Gruppenlabels (Community / Agentur)
  waren <span> -> jetzt <h2> mit derselben Klasse. Optik per Screenshot
  identisch (zentriert, uppercase, Zierstrich).
- links: die Kacheln nutzen Spezial-Varianten mit eigenen Größen, ein
  Tag-Wechsel wäre riskant -> stattdessen eine unsichtbare Gruppen-
  überschrift (.sr-only, neue Klasse nach WCAG-Standard). Ändert die
  Optik nicht, vervollständigt aber die Ordnung für Bildschirmleser.

Cache-Buster 20260828b (main.css geändert: .card > h2, .sr-only).

Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
2026-08-27 11:08:37 +02:00
co-authored by Claude Opus 5
parent 8a2943df35
commit 9bd9357185
36 changed files with 291 additions and 263 deletions
+10 -10
View File
@@ -16,10 +16,10 @@
<meta name="twitter:card" content="summary_large_image" />
<meta name="robots" content="noindex" /> <!-- generische URL, echte Team-Seiten verlinken hierher -->
<link rel="stylesheet" href="assets/css/main.css?v=20260828a" />
<link rel="stylesheet" href="assets/css/theme-dogfather.css?v=20260828a" />
<link rel="stylesheet" href="assets/css/theme-hasidog.css?v=20260828a" />
<link rel="stylesheet" href="assets/css/theme-spicymedia.css?v=20260828a" />
<link rel="stylesheet" href="assets/css/main.css?v=20260828b" />
<link rel="stylesheet" href="assets/css/theme-dogfather.css?v=20260828b" />
<link rel="stylesheet" href="assets/css/theme-hasidog.css?v=20260828b" />
<link rel="stylesheet" href="assets/css/theme-spicymedia.css?v=20260828b" />
<style>
.profil-photo { aspect-ratio: 4/5; max-width: 420px; margin: 0 auto; }
.profil-photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
@@ -130,12 +130,12 @@
</main>
<div id="site-footer"></div>
<script src="assets/js/data-modis.js?v=20260828a"></script>
<script src="assets/js/data-scouts.js?v=20260828a"></script>
<script src="assets/js/data-creator.js?v=20260828a"></script>
<script src="assets/js/data-manager.js?v=20260828a"></script>
<script src="assets/js/i18n-profil.js?v=20260828a"></script>
<script src="assets/js/main.js?v=20260828a"></script>
<script src="assets/js/data-modis.js?v=20260828b"></script>
<script src="assets/js/data-scouts.js?v=20260828b"></script>
<script src="assets/js/data-creator.js?v=20260828b"></script>
<script src="assets/js/data-manager.js?v=20260828b"></script>
<script src="assets/js/i18n-profil.js?v=20260828b"></script>
<script src="assets/js/main.js?v=20260828b"></script>
<script>
document.addEventListener("DOMContentLoaded", async () => {
const slug = new URLSearchParams(location.search).get("p") || "";