{
 "schema": "fundus-rezept/1",
 "stand": "02.11.2026",
 "basis": {
  "stand": "02.11.2026 (Runde 5: Redaktion nach KI-Audit und Lückenrecherche)",
  "muster": [
   "vt-cross-document-mpa",
   "css-view-reveal-nativ",
   "unterstreichung-varianten",
   "button-zustaende",
   "validierung-nach-interaktion",
   "consent-banner-gestaltet",
   "fokus-stil-system",
   "sprunglinks-landmarken",
   "bewegung-pausieren-schalter",
   "fehlerseite-leerzustand",
   "dialog-modal-nativ",
   "zoom-und-textabstand-robust",
   "kontrastmodus-forced-colors",
   "firmendaten-strukturiert",
   "sofort-navigation-vorladen"
  ],
  "beschreibung": "Grundausstattung, die jedes Rezept ohne Nennung bekommt: native Seitenübergänge zwischen echten Seiten (vt-cross-document-mpa) und Vorladen der Hauptwege (sofort-navigation-vorladen), beides nicht bei Onepagern; native Scroll-Reveals nur wo sinnvoll, Link-Unterstreichung, vollständige Button-Zustände, Validierung erst nach Interaktion, ein gestaltetes Consent-Banner, Fehlerseite und Leerzustand, natives Dialog-Modal und eine einzige Datenquelle für Firmendaten, aus der Kontaktblock, Öffnungszeiten und JSON-LD entstehen (firmendaten-strukturiert). Dazu die Barrierefreiheit der Kategorie zugang: sichtbarer Fokus, Sprunglinks und Landmarken, Pause für Bewegung, 200 % Zoom und Textabstände ohne Abschneiden (zoom-und-textabstand-robust), Kontrastmodus (kontrastmodus-forced-colors). In Sektionen dürfen Basis-Muster genannt werden, wenn sie dort besonders wichtig sind (z. B. Formular-Validierung); in den Kategorie-Listen der Rezepte stehen sie nicht.",
  "regeln": [
   "Keine Schrift kommt in mehr als 3 Rezepten vor (headline, text und akzent zusammen gezählt, alternative_eigenprojekt ausgenommen).",
   "Ein Rezept darf Headline- und Textschrift nicht 1:1 mit einem anderen Rezept teilen.",
   "Pflichtfeld signatur: 1–2 Muster, die kein anderes Rezept nutzt (Basis ausgenommen); jedes Signatur-Muster steht auch in den Muster-Listen des Rezepts.",
   "cinematic-video-hero nur mit eigenem, hochwertigem Footage. Für typische KMU-Kunden (Gastro, Mode/Concept Store) ist ein Foto-Hero Standard, Video steht unter hero_variante.",
   "Kontakt/Anfrage, Online-Termin und Anfahrt sind eigene Sektionen (kontakt-anfrage-formular bzw. mehrschritt-anfrage, termin-buchung-zwei-klick, karte-zwei-klick, oeffnungszeiten-status), auch wenn ein Rezept sie nicht nennt; die Adresse steht immer auch als Text da; studio-visitenkarte-footer steht nur im Footer.",
   "Drittanbieter-Inhalte (Video, Karte, Buchung, Social Feeds) erst nach Einwilligung bzw. Klick laden.",
   "Höchstens ein Material-Effekt (Glow, Verlaufsrahmen, Raster, Textur) pro Ansicht.",
   "Automatisch bewegte Inhalte (Laufband, Wortwechsel, Autoplay) nie für wichtige Information; immer pausierbar und unter prefers-reduced-motion statisch.",
   "Barrierefreiheit gehört zur Grundausstattung (BFSG seit 28.06.2025): sichtbarer Fokus (fokus-stil-system), Sprunglinks und Landmarken, Pause für alles, was sich länger als 5 s bewegt (bewegung-pausieren-schalter), native Dialoge, 200 % Zoom und 320 px Breite ohne Abschneiden (zoom-und-textabstand-robust), Kontrastmodus prüfen (kontrastmodus-forced-colors). Rechtliches (Erklärung zur Barrierefreiheit) vom Kunden prüfen lassen.",
   "Firmendaten (Name, Adresse, Telefon, Zeiten samt Sonderzeiten, Leistungen, Profil-Links) aus einer Quelle; JSON-LD nur für sichtbare Inhalte, keine eigenen Bewertungssterne im Markup (firmendaten-strukturiert).",
   "Wer online Verträge mit Verbrauchern schließt (Shop, Kurs, Abo, Mitgliedschaft, Online-Anmeldung), braucht im Footer ohne Login „Vertrag widerrufen“ und bei Dauerverträgen „Verträge hier kündigen“ (widerruf-und-kuendigung-schaltflaeche, seit 19.06.2026) – vom Kunden prüfen lassen.",
   "Bewertungen von Google oder anderen Plattformen nur mit Echtheitshinweis direkt an den gezeigten Bewertungen (bewertungsprofil-mit-echtheitshinweis); bewertungen-verteilung nur für eigene, geprüfte Bewertungen.",
   "Pflichtangaben (Impressum, Datenschutzerklärung, Branchenpflichten aus Leitfaden 8a und den Rezept-regeln) als Seiten, Links oder markierte Platzhalter; keine Rechtstexte erfinden, alles vom Kunden prüfen lassen. Chatbots und KI-Funktionen direkt beim Start kennzeichnen (Art. 50 KI-VO), keine pauschalen Umweltaussagen ohne Nachweis.",
   "consent-banner-gestaltet nur, wenn beim Laden einwilligungspflichtige Dienste laufen. Laden alle Dritten erst per 2-Klick, genügt ein Einstellungs-Dialog im Footer („Datenschutz-Einstellungen“) zum Widerrufen.",
   "Starter- und Beispielseiten ohne echte Daten: Bewertungen, Preise, Allergene und Kennzahlen als markierte Platzhalter, nie erfundene Kundenstimmen als echt.",
   "Werbung mit Rate, Zins, „0 %“, Ratenzahlung, Leasing oder „später bezahlen“ braucht ab 20.11.2026 finanzierung-pflichtangaben: effektiver Jahreszins mindestens so groß wie die Rate, Warnhinweis „Achtung! Kreditaufnahme kostet Geld.“ direkt dabei (vom Kunden prüfen lassen).",
   "Verkauf von Waren an Verbraucher braucht seit 27.09.2026 den EU-Hinweis zur gesetzlichen Gewährleistung (eu-gewaehrleistungshinweis), mindestens als Footer-Link, sicherer an Produktseite und Checkout; nur die amtliche Vorlage der EU-Kommission."
  ],
  "herkunft": "Art-Director-Prüfung der 18 Rezepte, Runde 3 (Basis-Block, Signatur-Pflichtfeld, Schriftverteilung, 2-Klick-Muster). Runde 5 (02.11.2026): zugang-Muster, Firmendaten und Vorladen in die Grundausstattung, Regeln zu Kontakt, Verträgen, Bewertungen und Pflichtangaben (KI-Audit Befund 3, Lückenrecherche N1–N3, N6, K5)."
 },
 "id": "fitness-studio-rhythmus",
 "name": "Studio: Rhythmus und Kursplan",
 "branche": "Fitnessstudio / Yoga- und Pilatesstudio / Kampfsportschule / Tanzschule (auch Sportverein mit Kursbetrieb)",
 "stimmung": [
  "energisch",
  "direkt",
  "motivierend",
  "ehrlich"
 ],
 "kurz": "Die Seite ist ein Fahrplan: Was läuft jetzt, wann ist mein Kurs, wie läuft das erste Training, was kostet es wirklich und wie komme ich wieder raus. Kreide als Grund, Hallenschwarz für Text, eine Limette nur für Probetraining und Buchen; eine breitenvariable Grotesk, die im Takt springt, Uhrzeiten in Mono. Bewegung ist Takt statt Kurve: harte Schnitte und Stufen für die Inszenierung, kurze präzise Übergänge für Buchung, Vertrag und Kündigung.",
 "referenzen": [
  {
   "seite": "ELEMENTS (Fitness und Wellness, München / Frankfurt)",
   "url": "https://www.elements.com/kursplan/",
   "art": "website",
   "herkunft": "beobachtet",
   "abgerufen": "2026-11-02",
   "quelle": "https://www.elements.com/kursplan/",
   "beobachtung": "Live geprüft 02.11.2026 (Seite per WebFetch als Text abgerufen; CSS, Schriften und Kurven nicht gemessen, curl war in dieser Sitzung gesperrt): Kursplan mit Studio-Auswahl (sieben Studios), 14 Tagen im Voraus und Legende „Frei“ / „Belegt“; eigene Zustände für Anmeldung, Warteliste und Storno („Anmeldung zur Warteliste erfolgreich“, „Kurs bereits ausgebucht“). Probetraining mit Termin und kostenloser Beratungstermin als getrennte Wege. Footer mit „Verträge hier kündigen“ (/kuendigung/), Hausordnung, Gutscheinen und Barrierefreiheitserklärung."
  },
  {
   "seite": "Third Space (Clubs, London)",
   "url": "https://www.thirdspace.london/classes/",
   "art": "website",
   "herkunft": "beobachtet",
   "abgerufen": "2026-11-02",
   "quelle": "https://www.thirdspace.london/classes/ und https://www.thirdspace.london/timetable/",
   "beobachtung": "Live geprüft 02.11.2026 (Seite per WebFetch als Text abgerufen; CSS, Schriften und Kurven nicht gemessen, curl war in dieser Sitzung gesperrt): Kurs-Bibliothek mit Kategorie-Reitern (All, Combat, Cycle, Mind & Body, Pilates, Sports & Performance, Strength & Conditioning): Kampfsport, Yoga und Kraft in einer Struktur. Kurstexte nennen die Intensität („high-intensity“, „low-impact“, „Suitable for all levels.“). Im Stundenplan nennt jeder Eintrag Kursname, Uhrzeit von–bis („08:30 – 09:20“), Trainer:in und Dauer („0h 50m“)."
  },
  {
   "seite": "Barry's (Studio FiDi, San Francisco)",
   "url": "https://www.barrys.com/studio/fidi",
   "art": "website",
   "herkunft": "beobachtet",
   "abgerufen": "2026-11-02",
   "quelle": "https://www.barrys.com/studio/fidi",
   "beobachtung": "Live geprüft 02.11.2026 (Seite per WebFetch als Text abgerufen; CSS, Schriften und Kurven nicht gemessen, curl war in dieser Sitzung gesperrt): Studioseite für Erstbesucher: „What to Expect in Your First Workout“, Stunde in zwei Teilen (Run / Lift, 50 Minuten), Hinweis „Let them know before class if you're brand new, coming back from time off, or working around an injury“. Anfahrt mit Parken und ÖPNV in Gehminuten („BART Montgomery St. Station: 4 min walk“), Öffnungszeiten je Wochentag, Telefon und E-Mail des Studios."
  },
  {
   "seite": "Triyoga (Yoga und Pilates, London)",
   "url": "https://triyoga.co.uk/try-us-now/",
   "art": "website",
   "herkunft": "beobachtet",
   "abgerufen": "2026-11-02",
   "quelle": "https://triyoga.co.uk/try-us-now/",
   "beobachtung": "Live geprüft 02.11.2026 (Seite per WebFetch als Text abgerufen; CSS, Schriften und Kurven nicht gemessen, curl war in dieser Sitzung gesperrt): Einsteiger-Seite: „Level 1“ und „Open“ als einsteigergeeignete Klassen, Matten und Hilfsmittel werden gestellt, 10 Minuten vorher da sein, beim ersten Besuch 15–20; bei Warteliste spätestens 5 Minuten vor Beginn einchecken; kein Einlass nach Beginn bei Hot-Klassen. Zwei Einstiegsangebote, beide 14 Tage gültig; der Stundenplan hat einen Filter „Beginner-friendly“."
  },
  {
   "seite": "Frame (Studios, London)",
   "url": "https://moveyourframe.com/class-type/",
   "art": "website",
   "herkunft": "beobachtet",
   "abgerufen": "2026-11-02",
   "quelle": "https://moveyourframe.com/class-type/",
   "beobachtung": "Live geprüft 02.11.2026 (Seite per WebFetch als Text abgerufen; CSS, Schriften und Kurven nicht gemessen, curl war in dieser Sitzung gesperrt): 29 Kurse mit „Filter by Type“ (Balance, Train, Sculpt, Party, Reformer, Mumhood). Die Kurstexte sagen ehrlich, für wen ein Kurs nicht geeignet ist (Dynamic Reformer Pilates nicht für Einsteiger, Schwangere oder Reha). Je Karte „Find a Class“ (zum Stundenplan) und „More“; Einstiegsangebot mit Preis („Get 3 Classes for £40“)."
  }
 ],
 "schrift": {
  "paarung_basis": "",
  "abweichung": "Keine Katalog-Paarung. Anybody (wdth 50–150, wght 100–900) statt big-shoulders, damit sich fitness von verein (Big Shoulders + Archivo) unterscheidet und die Breite als Takt animiert werden kann. Funnel Sans als ruhige Textschrift, Azeret Mono als Fahrplan-Schrift für Uhrzeiten, Dauer und Plätze.",
  "headline": "anybody",
  "text": "funnel-sans",
  "akzent": "azeret-mono",
  "groessen": "Hero-Zeile Anybody clamp(3rem, 1.5rem + 8vw, 9rem), wdth 50–100 (Takt), wght 800, Versal, Laufweite -0.01em, Zeilenhöhe 0.88; h2 clamp(2rem, 1.3rem + 3vw, 3.5rem), wdth 75, wght 750; Kursnamen im Plan Anybody wdth 75, wght 700, 1.125rem. Fließtext Funnel Sans 1.0625rem/1.55, wght 400, max. 64ch; Knöpfe Funnel Sans 1rem wght 600. Uhrzeiten, Dauer, freie Plätze, Raum und Labels in Azeret Mono 0.8125rem, Labels Versal +0.08em, alle Ziffern tabular-nums.",
  "techniken": [
   "mono-labels-versal",
   "tabellenziffern",
   "fluide-typo-clamp-cqi",
   "headline-laufweite-zeilenabstand"
  ],
  "alternative_eigenprojekt": "Headline tanker oder panchang, Text supreme (ITF) – nur für Eigenprojekte, nicht für Templates."
 },
 "farbe": {
  "prinzip": "Hallenlicht statt Neon-Nacht: Kreide als Grund, Hallenschwarz für Text und dunkle Bühnen (Kursplan-Kopf, Fußzeile), eine Limette als einziger Signalton für Probetraining, Buchen und Mitglied werden. Limette nie als Textfarbe auf hellem Grund, immer als Fläche mit dunkler Schrift, auf Kreide mit 2 px Rand. Kursarten unterscheiden sich per Text-Label, nicht per Farbe. Rot nur für Ausfall und Fehler.",
  "beispiel": [
   "#F2F1EC Grund (Kreide)",
   "#121412 Text, dunkle Sektionen, Kursplan-Kopf (16 : 1)",
   "#CCFF33 Signal Limette: Probetraining, Buchen (Text #121412, 15,8 : 1; auf Kreide mit 2 px Rand #121412)",
   "#E2E1DA Flächen, Kursplan-Raster",
   "#5E615C Meta: Trainer:in, Raum, Dauer (5,6 : 1 auf Kreide)",
   "#B3261E Ausfall, Fehler (sparsam, 5,8 : 1)"
  ]
 },
 "animationsstil": "token-brutal-hart",
 "animationsstil_ui": "token-tech-praezise",
 "animationsstil_hinweis": "token-brutal-hart nur in den Spielarten „Stufen“ und „harte Bildwechsel“: Takt für die Inszenierung (Hero-Zeile, Bildwechsel, Zeile „läuft gerade“), nie Terminal-Tippen, nie Flackern. Weil der Stil laut wann_nicht nicht zu Inhalten passt, die Vertrauen aufbauen müssen, laufen Tarife, Mitglied werden, Kündigung, Filter und Buchung auf animationsstil_ui token-tech-praezise (productive).",
 "bewegung": {
  "easing": "linear bzw. steps(1, end) und steps(6, jump-none) (token-brutal-hart: Takt statt Kurve)",
  "beobachtet": "nicht gemessen: Referenzen nur inhaltlich geprüft (siehe offen); Kurve und Dauern aus dem Animationsstil",
  "dauer_ms": "0 (Bildwechsel, harter Schnitt), 80 je Stufe (Hero-Zeile in 6 Stufen = 480), 180 (Stufen-Einblendung mit 3 Stufen); UI nach token-tech-praezise: 70 (Hover, Farbe), 110–150 (Reiter, Filter, Tages-Reiter), 240 (Panels, Sheets, Dialog), Austritt 150",
  "regel": "Was inszeniert, springt in ganzen Stufen auf einem 8-px-Raster; was bedient wird, reagiert kurz und präzise. Nichts federt, nichts gleitet nach. Stufen sind Breiten- und Positionssprünge, keine Blitze: großflächige Hell-Dunkel-Wechsel höchstens dreimal pro Sekunde (WCAG 2.3.1). Wechseln Hero-Bilder ohne Nutzer länger als 5 s, gehört ein sichtbarer Pause-Knopf dazu (WCAG 2.2.2, bewegung-pausieren-schalter). Der Kursplan selbst bewegt sich nicht, nur der Filter wechselt die Ansicht ohne Übergang. Bei prefers-reduced-motion stehen alle Stufen sofort im Endzustand.",
  "herkunft": "Werte aus token-brutal-hart (bau.werte: --dur-step 80ms, steps(6, jump-none), --raster 8px) und token-tech-praezise (dauer_token_ms); die Referenzen sind inhaltlich geprüft (WebFetch), ihre CSS-Kurven nicht gemessen."
 },
 "hero_beschreibung": "Foto aus einem echten Kurs oder von der Trainingsfläche (Mitglieder mit Einwilligung) mit einer kurzen Zeile in Anybody, deren Breite beim Laden einmal in sechs Stufen aufspringt (variable-font-axes). Darunter „Probetraining buchen“ (Limette) und „Kursplan“ sowie eine Zeile aus dem Plan: „Jetzt: Yoga Flow bis 19:15 · Als Nächstes: Boxen 19:30“. Video nur als hero_variante mit eigenem Material aus dem Studio, mit Poster und Pause-Knopf; nie Stockvideo.",
 "muster": {
  "seitenuebergang": [],
  "preloader": [],
  "navigation": [
   "mobile-bottom-navigation",
   "native-popover-dropdowns"
  ],
  "hero": [
   "foto-hero"
  ],
  "hero_variante": [
   "cinematic-video-hero"
  ],
  "sektionen": [
   {
    "zweck": "Kursplan: diese Woche und was gerade läuft (Filter Kurs, Trainer:in, Niveau, Raum; mobil Tages-Reiter; freie Plätze, Ausfälle und Vertretungen als Text am Termin)",
    "muster": [
     "wochen-kursplan",
     "tabs-pfeiltasten-focusgroup"
    ],
    "varianten": {
     "tabs-pfeiltasten-focusgroup": "auto",
     "wochen-kursplan": "studio"
    }
   },
   {
    "zweck": "Kurse & Trainingsarten (nach Kategorie wie Kraft, Ausdauer, Kampfsport, Mind & Body; je Kurs Dauer, Niveau und für wen er nicht geeignet ist; Unterseite je Kurs mit Antwort zuerst)",
    "muster": [
     "akkordeon-hoehe-auto",
     "leistungsseite-antwort-zuerst"
    ],
    "varianten": {
     "akkordeon-hoehe-auto": "leistungen",
     "leistungsseite-antwort-zuerst": "praxis"
    }
   },
   {
    "zweck": "Probetraining & dein erstes Mal (so läuft es ab, was mitbringen, wann da sein, Verletzungen vorher sagen; Buchung nach Klick)",
    "muster": [
     "prozess-timeline-wachsende-linie",
     "termin-buchung-zwei-klick"
    ],
    "varianten": {
     "termin-buchung-zwei-klick": "platzhalter"
    }
   },
   {
    "zweck": "Tarife & Preise (Monatspreis, Mindestlaufzeit, Kündigungsfrist und einmalige Gebühren in einer Tabelle; ab drei Tarifen, bei zwei zwei Karten)",
    "muster": [
     "vergleichstabelle-sticky"
    ],
    "varianten": {
     "vergleichstabelle-sticky": "pakete"
    }
   },
   {
    "zweck": "Trainer:innen (Foto, Kurse, Qualifikation, Sprachen; Filter nach Kurs ab etwa sechs Personen)",
    "muster": [
     "team-ueber-mich-layout"
    ],
    "varianten": {
     "team-ueber-mich-layout": "raster"
    }
   },
   {
    "zweck": "Studio & Geräte (Flächen, Kursräume, Umkleiden, Barrierefreiheit der Räume)",
    "muster": [
     "css-native-karussell",
     "galerie-shared-element-vollbild"
    ],
    "varianten": {
     "css-native-karussell": "buehne",
     "galerie-shared-element-vollbild": "basis"
    }
   },
   {
    "zweck": "Bewertungen (Google-Profil mit Stand-Datum und Echtheitshinweis)",
    "muster": [
     "bewertungsprofil-mit-echtheitshinweis"
    ],
    "varianten": {
     "bewertungsprofil-mit-echtheitshinweis": "band"
    }
   },
   {
    "zweck": "Mitglied werden (Tarif → Daten → Zahlung → Prüfen; Fehlerliste je Schritt; Knopf „zahlungspflichtig abschließen“)",
    "muster": [
     "mehrschritt-anfrage",
     "formular-fehlerzusammenfassung",
     "validierung-nach-interaktion"
    ],
    "varianten": {
     "mehrschritt-anfrage": "leiste",
     "formular-fehlerzusammenfassung": "liste"
    }
   },
   {
    "zweck": "Gutscheine (Probemonat, Kurskarte, Wertgutschein; bei Online-Kauf Widerruf)",
    "muster": [
     "gutschein-konfigurator"
    ]
   },
   {
    "zweck": "FAQ (Laufzeit, Kündigung, Pause bei Krankheit oder Schwangerschaft, Gebühren, Kinder, Duschen und Schließfächer)",
    "muster": [
     "akkordeon-hoehe-auto"
    ],
    "varianten": {
     "akkordeon-hoehe-auto": "faq"
    }
   },
   {
    "zweck": "Öffnungszeiten, Anfahrt, Kontakt (Status aus echten Zeiten; Parken und ÖPNV in Gehminuten; Adresse als Text, Karte per 2-Klick; kurzes Formular für Fragen; ab zwei Studios als Liste)",
    "muster": [
     "oeffnungszeiten-status",
     "karte-zwei-klick",
     "kontakt-anfrage-formular",
     "standortfinder-liste",
     "firmendaten-strukturiert"
    ],
    "varianten": {
     "oeffnungszeiten-status": "auslastung",
     "standortfinder-liste": "kompakt",
     "karte-zwei-klick": "bild",
     "firmendaten-strukturiert": "friseur"
    }
   },
   {
    "zweck": "Verträge kündigen und widerrufen (eigene Seiten, ohne Login, dauerhaft aus der Fußzeile)",
    "muster": [
     "widerruf-und-kuendigung-schaltflaeche"
    ],
    "varianten": {
     "widerruf-und-kuendigung-schaltflaeche": "richtig"
    }
   },
   {
    "zweck": "Barrierefreiheit (eigene Seite; Variante BFSG bei Online-Vertrag oder Online-Buchung – vom Kunden prüfen lassen)",
    "muster": [
     "barrierefreiheit-seite"
    ],
    "varianten": {
     "barrierefreiheit-seite": "bfsg"
    }
   }
  ],
  "scroll": [],
  "schrift_animation": [
   "variable-font-axes"
  ],
  "hover": [],
  "cursor": [],
  "mikro": [
   "druck-feedback",
   "checkbox-radio-animiert",
   "toast-stapel"
  ],
  "material": [],
  "galerie": [
   "css-native-karussell",
   "galerie-shared-element-vollbild"
  ],
  "footer": [
   "mega-footer-sitemap"
  ],
  "button": [
   "tiefen-taste-3d",
   "fuellung-vom-eintrittspunkt"
  ],
  "hero_varianten": {
   "foto-hero": "randlos-unten-links"
  }
 },
 "signatur": [
  "variable-font-axes"
 ],
 "varianten_demo": {
  "galerie-shared-element-vollbild": "basis",
  "tiefen-taste-3d": "versatz-brutal",
  "fuellung-vom-eintrittspunkt": "pixel",
  "mobile-bottom-navigation": "basis",
  "css-native-karussell": "buehne"
 },
 "nicht_verwenden": [
  "zahlen-odometer / prozent-zaehler – hochgezählte Mitgliederzahlen und Countdown-Rabatte („Nur noch heute“) sind Druck statt Information",
  "vorher-nachher-vergleichsregler – Signatur von handwerk; Körper-Vorher-nachher mit Abnehmversprechen ist unseriös und rechtlich heikel",
  "marquee-laufband – Motivationssprüche als Band; Kurszeiten nie in bewegten Bändern",
  "scramble-decode / typewriter-natural – Terminal-Aufbau wie in token-brutal-hart: Uhrzeiten, Preise und Kursnamen müssen sofort lesbar sein",
  "karten-spotlight-glow / verlaufs-rahmen / mesh-gradient-shader – Neon-Glow ist Gym-Template-Klischee, die Limette reicht",
  "smooth-scroll-lenis / cursor-follower-lerp / magnetische-elemente – stören Kursplan, Filter und Formulare",
  "konfetti-erfolg – ein Vertrag ist kein Spiel; nach dem Abschluss eine ruhige Bestätigung mit den Vertragsdaten",
  "Halte-, Pause- oder Rabattangebote auf der Kündigungsseite – laut BGH vom 16.07.2026 nicht auf die Bestätigungsseite; eine Pause darf in der FAQ stehen",
  "Stockfotos mit Sixpack-Models – echte Mitglieder und Trainer:innen aus dem Studio"
 ],
 "regeln": [
  "Erster Bildschirm: echtes Foto aus Kurs oder Fläche, eine kurze Zeile in Anybody, „Probetraining buchen“ und „Kursplan“, darunter die Zeile „Jetzt … · Als Nächstes …“ aus dem Plan.",
  "Der Kursplan (wochen-kursplan) ist von jeder Seite mit einem Klick erreichbar, mobil in der unteren Leiste: am Desktop als Wochenraster, mobil als Tages-Reiter (tabs-pfeiltasten-focusgroup). Uhrzeit, Dauer und freie Plätze in Azeret Mono mit Tabellenziffern; Ausfälle und Vertretungen stehen am Termin, nicht in einem Banner.",
  "Liefert die Studio-Software schon einen gepflegten Plan, den Kursplan nur als Teaser mit „läuft gerade“ und Link bauen (wann_nicht von wochen-kursplan), keine doppelte Datenpflege.",
  "Kursarten im Plan per Text-Label und Filter, nie nur per Farbe; die Limette bleibt der einzige Signalton (Probetraining, Buchen, Mitglied werden). Filter „Einsteiger geeignet“ wie bei Triyoga; je Kurs ehrlich, für wen er nicht geeignet ist (wie Frame).",
  "Probetraining erklärt: Ablauf der ersten Stunde, was mitbringen, wann da sein, Verletzungen vorher sagen (wie Barry's und Triyoga).",
  "Tarife offen: Monatspreis, Mindestlaufzeit, Kündigungsfrist, Verlängerung und jede einmalige Gebühr (Startpaket, Karte, Servicepauschale) in derselben Tabelle, der Gesamtpreis direkt dabei, nie nur im Kleingedruckten. Preisangaben vom Kunden prüfen lassen.",
  "Wer online Verträge schließt: „Verträge hier kündigen“ und, wo ein Widerrufsrecht besteht, „Vertrag widerrufen“ dauerhaft in der Fußzeile, ohne Login, auf der Bestätigungsseite nur die erlaubten Felder (widerruf-und-kuendigung-schaltflaeche; ELEMENTS führt den Link im Footer). Ob und welche Pflicht gilt, prüft der Kunde.",
  "Pflichtangaben und Recht (Leitfaden 8a): keine Heil- oder Abnehmversprechen; Präventionskurse mit Krankenkassen-Zuschuss nur nennen, wenn die Zertifizierung echt ist (vom Kunden belegen lassen).",
  "Fotos von Mitgliedern nur mit Einwilligung; Kinder- und Jugendkurse (Kampfsport, Tanz) nur mit Einwilligung der Eltern und möglichst ohne erkennbare Gesichter.",
  "Bewegung im Takt: Die Hero-Zeile springt einmal in sechs Stufen von wdth 50 auf 100 (480 ms, variable-font-axes, nur diese Zeile), Bildwechsel ohne Übergang, die Zeile „läuft gerade“ wechselt hart. Menüs, Filter, Formulare, Buchung und Kündigung laufen auf token-tech-praezise (70–240 ms).",
  "Auslastung nur aus echten Zählwerten mit Zeitstempel, sonst weglassen; Öffnungszeiten mit Feiertagen pflegen (oeffnungszeiten-status, ein Datenblock über firmendaten-strukturiert).",
  "Footer: Adresse, Zeiten, Telefon, Parken und ÖPNV mit Gehminuten (wie Barry's), Impressum, Datenschutz, AGB, Hausordnung, Barrierefreiheit, „Verträge hier kündigen“.",
  "Gesundheitsangaben (Verletzungen, Schwangerschaft) nur freiwillig und nie als Pflichtfeld im Online-Formular; lieber im Gespräch vor der ersten Stunde – vom Kunden prüfen lassen."
 ],
 "varianten": [
  {
   "name": "Verein mit Kursbetrieb (Breitensport, Fitness- und Gesundheitskurse im Verein)",
   "hinweis": "Schrift, Farbe, Stil und Signatur bleiben; die Limette darf durch die Vereinsfarbe ersetzt werden, wenn sie als Fläche mit dunkler Schrift 4,5 : 1 hält. Für Vereine, deren Angebot vor allem aus Kursen besteht; Vereine mit Spielbetrieb und vielen Abteilungen nehmen die Variante „Sportverein“ von verein-nonprofit-wirkung. Recht: Vereinsregister und Vertretungsberechtigte im Impressum, Beitragsordnung und Einwilligungen im Antrag, Fotos von Kindern nur mit Einwilligung der Eltern; ob der Kündigungs-Button für online geschlossene Mitgliedschaften gilt, prüft der Kunde.",
   "sektionen": [
    "Abteilungen und Angebote (Akkordeon mit Bild je Abteilung)",
    "Trainingszeiten (wochen-kursplan mit Filter Abteilung, Alter, Halle)",
    "Probetraining (Anfrage je Gruppe)",
    "Spielplan, Ergebnisse und Termine (programm-kalender, nur Einzeltermine)",
    "Beiträge (vergleichstabelle-sticky mit Aufnahmegebühr und Familienbeitrag)",
    "Mitglied werden (mehrschritt-anfrage mit Beitragsordnung, SEPA-Mandat, Einwilligungen; formular-fehlerzusammenfassung)",
    "Ansprechpersonen je Abteilung (team-ueber-mich-layout)",
    "Sponsoren (logo-wand-social-proof, Variante raster)",
    "Hallen und Anfahrt (karte-zwei-klick; standortfinder-liste bei mehreren Hallen)"
   ],
   "weglassen": [
    "Tarife mit Laufzeit",
    "Gutscheine",
    "Studio & Geräte (Hallenbilder in den Abteilungen)",
    "Bewertungsprofil (nur wenn es ein gepflegtes Profil gibt)"
   ],
   "muster_zusatz": [
    "programm-kalender",
    "logo-wand-social-proof"
   ]
  },
  {
   "name": "Yoga, Pilates, Tanz (ruhige Studios)",
   "hinweis": "Takt gedämpft: Die Hero-Zeile wechselt die Breite einmal in drei Stufen (3 × 160 ms), keine harten Bildwechsel im Hero. Signal statt Limette ein Lehmrot #9C4A2F mit weißer Schrift (6,1 : 1); Kreide und Hallenschwarz bleiben. Einsteiger-Filter und Gegenanzeigen je Kurs sind hier Pflicht (Triyoga, Frame).",
   "sektionen": [
    "Einsteiger: Level 1 und offene Klassen als Filter",
    "Kurse mit Eignung und Gegenanzeigen (z. B. Schwangerschaft, Reha)",
    "Workshops und Ausbildungen mit Einzelterminen (programm-kalender)"
   ],
   "weglassen": [
    "Auslastung",
    "Geräte"
   ],
   "muster_zusatz": [
    "programm-kalender"
   ]
  }
 ],
 "template_tauglich": true,
 "aufwand": "hoch",
 "leistung": "Der Kursplan ist die schwerste Seite: Daten als JSON (oder aus der Studio-Software), serverseitig gerendert, Filter clientseitig ohne Neuladen, „läuft gerade“ aus der Ortszeit ohne weitere Abfrage. Anybody als eine Variable-Datei (wdth, wght), Funnel Sans und Azeret Mono variabel, nur Latin. Video-Variante nur mit Poster und Pause-Knopf, mobil Standbild. Buchungs-Widget und Karte erst nach Klick; die untere Mobilleiste verdeckt weder Consent-Banner noch Widget.",
 "offen": [
  "Referenzen nur inhaltlich per WebFetch geprüft; Schriften, Farben und Kurven der Vorbilder nicht gemessen (curl war in dieser Sitzung gesperrt).",
  "token-brutal-hart: Sein wann_nicht nennt Inhalte, die Vertrauen aufbauen müssen. Aufgefangen über animationsstil_ui token-tech-praezise für Tarif, Vertrag und Kündigung und über die Beschränkung auf „Stufen“ und harte Bildwechsel – AD-Prüfung erwünscht.",
  "Nur eine Signatur (variable-font-axes): wochen-kursplan, von der Lückenanalyse als Fitness-Signatur vorgeschlagen, steht inzwischen in fahrschule, kurs, praxis und in der Sportverein-Variante von verein und ist damit keine Signatur mehr. Eine zweite, ungenutzte und passende Signatur gibt es im Bestand nicht.",
  "Kein Vorbild einer kleinen deutschen Einzelanlage (Kampfsportschule, Tanzschule, Yogastudio) geprüft; ELEMENTS ist eine Kette."
 ],
 "stimmung_tags": [
  "laut"
 ],
 "raum": {
  "basis_px": 8,
  "skala_px": [
   4,
   8,
   12,
   16,
   24,
   32,
   40,
   56,
   80,
   112
  ],
  "sektion": "clamp(48px, 6vw, 96px)",
  "dichte": "dicht",
  "hinweis": "Fahrplan statt Bühne: Kursplan-Zellen 8 bis 12 px Innenabstand, Tarife in einer Tabelle, kurze Sektionsabstände."
 },
 "raster": {
  "spalten": 12,
  "rand": "clamp(12px, 3vw, 32px)",
  "spalt": "clamp(8px, 1.2vw, 16px)",
  "max_breite": "1440px",
  "hinweis": "Kursplan am Desktop als Wochenraster mit 7 Spalten, mobil Tages-Reiter. Tarife als Tabelle über volle Breite."
 },
 "form": {
  "radius_klein": "0",
  "radius_gross": "0",
  "pille": false,
  "linie": "2px #121412 um Knöpfe und die Limette auf Kreide; Kursplan-Raster 1px #E2E1DA",
  "schatten": "nur der harte Versatz der Haupttaste (tiefen-taste-3d, Variante versatz-brutal), ohne Weichzeichnung",
  "hinweis": "Harte Kanten überall. Die Demo-Variante versatz-brutal nennt 6 px Radius; hier auf 0 übersetzt, damit Taste, Plan und Bilder eine Form haben."
 },
 "bildsprache": {
  "licht": "Hallenlicht, eher hart, echte Anstrengung statt Studioglanz.",
  "ausschnitt": "Bewegung angeschnitten, Gruppe im Kurs, Trainer:in in Aktion.",
  "personen": "Ja: Mitglieder mit Einwilligung; Kinder- und Jugendkurse ohne erkennbare Gesichter.",
  "formate": [
   "4:5",
   "16:9",
   "1:1"
  ],
  "nicht": "Keine Stock-Sixpacks, keine Vorher-Nachher-Körper, kein Neon-Glow, kein Stockvideo."
 },
 "ton": {
  "anrede": "du",
  "saetze": "Sehr kurz, Uhrzeit und Zahl vorn, Imperativ erlaubt.",
  "haltung": "Motivierend ohne Druck, ehrlich zu Vertrag, Kosten und Kündigung.",
  "beispiele": [
   "Heute 18:30: Boxen für Einsteiger. 6 Plätze frei.",
   "Komm zum Probetraining. Bring Wasser und Hallenschuhe mit."
  ],
  "nicht": "„No pain, no gain“, „Beach Body“, Body-Shaming, „Unschlagbar günstig!“, Preise nur im Kleingedruckten."
 },
 "hero_aufbau": {
  "raster": "Foto randlos über die volle Breite, Hero-Zeile unten links über 10 Spalten, Statuszeile als Band an der Unterkante.",
  "bild": "Echtes Foto aus Kurs oder Fläche, 16:9 Desktop, 4:5 mobil; Video nur als hero_variante mit eigenem Material.",
  "h1": "clamp(3rem, 1.5rem + 8vw, 9rem), Anybody 800 Versal, unten links; springt einmal in sechs Stufen von wdth 50 auf 100 (variable-font-axes).",
  "handlung": "„Probetraining buchen“ (Limette, versatz-brutal) und „Kursplan“ (Kontur 2px), nebeneinander unter der Zeile.",
  "zusatz": "Zeile „Jetzt … · Als Nächstes …“ in Azeret Mono 0.8125rem aus dem Plan, wechselt hart."
 },
 "url": "https://cecodesign.de/lab/fundus/rezepte/fitness-studio-rhythmus/",
 "tokens_css": "https://cecodesign.de/lab/fundus/rezepte/fitness-studio-rhythmus/tokens.css",
 "bauplan": "https://cecodesign.de/lab/fundus/rezepte/fitness-studio-rhythmus/bauplan.txt",
 "rezept_json": "https://cecodesign.de/lab/fundus/rezepte/fitness-studio-rhythmus/rezept.json",
 "nicht_verwenden_ids": [
  {
   "ids": [
    "zahlen-odometer",
    "prozent-zaehler"
   ],
   "grund": "hochgezählte Mitgliederzahlen und Countdown-Rabatte („Nur noch heute“) sind Druck statt Information"
  },
  {
   "ids": [
    "vorher-nachher-vergleichsregler"
   ],
   "grund": "Signatur von handwerk; Körper-Vorher-nachher mit Abnehmversprechen ist unseriös und rechtlich heikel"
  },
  {
   "ids": [
    "marquee-laufband"
   ],
   "grund": "Motivationssprüche als Band; Kurszeiten nie in bewegten Bändern"
  },
  {
   "ids": [
    "scramble-decode",
    "typewriter-natural"
   ],
   "grund": "Terminal-Aufbau wie in token-brutal-hart: Uhrzeiten, Preise und Kursnamen müssen sofort lesbar sein"
  },
  {
   "ids": [
    "karten-spotlight-glow",
    "verlaufs-rahmen",
    "mesh-gradient-shader"
   ],
   "grund": "Neon-Glow ist Gym-Template-Klischee, die Limette reicht"
  },
  {
   "ids": [
    "smooth-scroll-lenis",
    "cursor-follower-lerp",
    "magnetische-elemente"
   ],
   "grund": "stören Kursplan, Filter und Formulare"
  },
  {
   "ids": [
    "konfetti-erfolg"
   ],
   "grund": "ein Vertrag ist kein Spiel; nach dem Abschluss eine ruhige Bestätigung mit den Vertragsdaten"
  },
  {
   "ids": [],
   "grund": "Halte-, Pause- oder Rabattangebote auf der Kündigungsseite – laut BGH vom 16.07.2026 nicht auf die Bestätigungsseite; eine Pause darf in der FAQ stehen"
  },
  {
   "ids": [],
   "grund": "Stockfotos mit Sixpack-Models – echte Mitglieder und Trainer:innen aus dem Studio"
  }
 ],
 "alle_muster": [
  {
   "id": "variable-font-axes",
   "rolle": "Signatur",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/schrift-animationen/variable-font-axes/meta.json"
  },
  {
   "id": "foto-hero",
   "rolle": "Hero",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/hero-layouts/foto-hero/meta.json",
   "variante": "randlos-unten-links",
   "demo_url": "https://cecodesign.de/lab/fundus/hero-layouts/foto-hero/demo?v=randlos-unten-links"
  },
  {
   "id": "cinematic-video-hero",
   "rolle": "Hero-Variante",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/hero-layouts/cinematic-video-hero/meta.json"
  },
  {
   "id": "wochen-kursplan",
   "rolle": "Sektion: Kursplan: diese Woche und was gerade läuft (Filter Kurs, Trainer:in, Niveau, Raum; mobil Tages-Reiter; freie Plätze, Ausfälle und Vertretungen als Text am Termin)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/sektionen/wochen-kursplan/meta.json",
   "variante": "studio",
   "demo_url": "https://cecodesign.de/lab/fundus/sektionen/wochen-kursplan/demo?v=studio"
  },
  {
   "id": "tabs-pfeiltasten-focusgroup",
   "rolle": "Sektion: Kursplan: diese Woche und was gerade läuft (Filter Kurs, Trainer:in, Niveau, Raum; mobil Tages-Reiter; freie Plätze, Ausfälle und Vertretungen als Text am Termin)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/zugang/tabs-pfeiltasten-focusgroup/meta.json",
   "variante": "auto",
   "demo_url": "https://cecodesign.de/lab/fundus/zugang/tabs-pfeiltasten-focusgroup/demo?v=auto"
  },
  {
   "id": "akkordeon-hoehe-auto",
   "rolle": "Sektion: Kurse & Trainingsarten (nach Kategorie wie Kraft, Ausdauer, Kampfsport, Mind & Body; je Kurs Dauer, Niveau und für wen er nicht geeignet ist; Unterseite je Kurs mit Antwort zuerst)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/mikroanimationen/akkordeon-hoehe-auto/meta.json",
   "varianten_je_rolle": [
    {
     "rolle": "Sektion: Kurse & Trainingsarten (nach Kategorie wie Kraft, Ausdauer, Kampfsport, Mind & Body; je Kurs Dauer, Niveau und für wen er nicht geeignet ist; Unterseite je Kurs mit Antwort zuerst)",
     "variante": "leistungen",
     "demo_url": "https://cecodesign.de/lab/fundus/mikroanimationen/akkordeon-hoehe-auto/demo?v=leistungen"
    },
    {
     "rolle": "Sektion: FAQ (Laufzeit, Kündigung, Pause bei Krankheit oder Schwangerschaft, Gebühren, Kinder, Duschen und Schließfächer)",
     "variante": "faq",
     "demo_url": "https://cecodesign.de/lab/fundus/mikroanimationen/akkordeon-hoehe-auto/demo?v=faq"
    }
   ]
  },
  {
   "id": "leistungsseite-antwort-zuerst",
   "rolle": "Sektion: Kurse & Trainingsarten (nach Kategorie wie Kraft, Ausdauer, Kampfsport, Mind & Body; je Kurs Dauer, Niveau und für wen er nicht geeignet ist; Unterseite je Kurs mit Antwort zuerst)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/sektionen/leistungsseite-antwort-zuerst/meta.json",
   "variante": "praxis",
   "demo_url": "https://cecodesign.de/lab/fundus/sektionen/leistungsseite-antwort-zuerst/demo?v=praxis"
  },
  {
   "id": "prozess-timeline-wachsende-linie",
   "rolle": "Sektion: Probetraining & dein erstes Mal (so läuft es ab, was mitbringen, wann da sein, Verletzungen vorher sagen; Buchung nach Klick)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/hero-layouts/prozess-timeline-wachsende-linie/meta.json"
  },
  {
   "id": "termin-buchung-zwei-klick",
   "rolle": "Sektion: Probetraining & dein erstes Mal (so läuft es ab, was mitbringen, wann da sein, Verletzungen vorher sagen; Buchung nach Klick)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/hero-layouts/termin-buchung-zwei-klick/meta.json",
   "variante": "platzhalter",
   "demo_url": "https://cecodesign.de/lab/fundus/hero-layouts/termin-buchung-zwei-klick/demo?v=platzhalter"
  },
  {
   "id": "vergleichstabelle-sticky",
   "rolle": "Sektion: Tarife & Preise (Monatspreis, Mindestlaufzeit, Kündigungsfrist und einmalige Gebühren in einer Tabelle; ab drei Tarifen, bei zwei zwei Karten)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/sektionen/vergleichstabelle-sticky/meta.json",
   "variante": "pakete",
   "demo_url": "https://cecodesign.de/lab/fundus/sektionen/vergleichstabelle-sticky/demo?v=pakete"
  },
  {
   "id": "team-ueber-mich-layout",
   "rolle": "Sektion: Trainer:innen (Foto, Kurse, Qualifikation, Sprachen; Filter nach Kurs ab etwa sechs Personen)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/hero-layouts/team-ueber-mich-layout/meta.json",
   "variante": "raster",
   "demo_url": "https://cecodesign.de/lab/fundus/hero-layouts/team-ueber-mich-layout/demo?v=raster"
  },
  {
   "id": "css-native-karussell",
   "rolle": "Sektion: Studio & Geräte (Flächen, Kursräume, Umkleiden, Barrierefreiheit der Räume)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/galerien-slider/css-native-karussell/meta.json",
   "variante": "buehne",
   "demo_url": "https://cecodesign.de/lab/fundus/galerien-slider/css-native-karussell/demo?v=buehne"
  },
  {
   "id": "galerie-shared-element-vollbild",
   "rolle": "Sektion: Studio & Geräte (Flächen, Kursräume, Umkleiden, Barrierefreiheit der Räume)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/galerien-slider/galerie-shared-element-vollbild/meta.json",
   "variante": "basis",
   "demo_url": "https://cecodesign.de/lab/fundus/galerien-slider/galerie-shared-element-vollbild/demo?v=basis"
  },
  {
   "id": "bewertungsprofil-mit-echtheitshinweis",
   "rolle": "Sektion: Bewertungen (Google-Profil mit Stand-Datum und Echtheitshinweis)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/sektionen/bewertungsprofil-mit-echtheitshinweis/meta.json",
   "variante": "band",
   "demo_url": "https://cecodesign.de/lab/fundus/sektionen/bewertungsprofil-mit-echtheitshinweis/demo?v=band"
  },
  {
   "id": "mehrschritt-anfrage",
   "rolle": "Sektion: Mitglied werden (Tarif → Daten → Zahlung → Prüfen; Fehlerliste je Schritt; Knopf „zahlungspflichtig abschließen“)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/sektionen/mehrschritt-anfrage/meta.json",
   "variante": "leiste",
   "demo_url": "https://cecodesign.de/lab/fundus/sektionen/mehrschritt-anfrage/demo?v=leiste"
  },
  {
   "id": "formular-fehlerzusammenfassung",
   "rolle": "Sektion: Mitglied werden (Tarif → Daten → Zahlung → Prüfen; Fehlerliste je Schritt; Knopf „zahlungspflichtig abschließen“)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/zugang/formular-fehlerzusammenfassung/meta.json",
   "variante": "liste",
   "demo_url": "https://cecodesign.de/lab/fundus/zugang/formular-fehlerzusammenfassung/demo?v=liste"
  },
  {
   "id": "validierung-nach-interaktion",
   "rolle": "Sektion: Mitglied werden (Tarif → Daten → Zahlung → Prüfen; Fehlerliste je Schritt; Knopf „zahlungspflichtig abschließen“)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/mikroanimationen/validierung-nach-interaktion/meta.json"
  },
  {
   "id": "gutschein-konfigurator",
   "rolle": "Sektion: Gutscheine (Probemonat, Kurskarte, Wertgutschein; bei Online-Kauf Widerruf)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/sektionen/gutschein-konfigurator/meta.json"
  },
  {
   "id": "oeffnungszeiten-status",
   "rolle": "Sektion: Öffnungszeiten, Anfahrt, Kontakt (Status aus echten Zeiten; Parken und ÖPNV in Gehminuten; Adresse als Text, Karte per 2-Klick; kurzes Formular für Fragen; ab zwei Studios als Liste)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/sektionen/oeffnungszeiten-status/meta.json",
   "variante": "auslastung",
   "demo_url": "https://cecodesign.de/lab/fundus/sektionen/oeffnungszeiten-status/demo?v=auslastung"
  },
  {
   "id": "karte-zwei-klick",
   "rolle": "Sektion: Öffnungszeiten, Anfahrt, Kontakt (Status aus echten Zeiten; Parken und ÖPNV in Gehminuten; Adresse als Text, Karte per 2-Klick; kurzes Formular für Fragen; ab zwei Studios als Liste)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/hero-layouts/karte-zwei-klick/meta.json",
   "variante": "bild",
   "demo_url": "https://cecodesign.de/lab/fundus/hero-layouts/karte-zwei-klick/demo?v=bild"
  },
  {
   "id": "kontakt-anfrage-formular",
   "rolle": "Sektion: Öffnungszeiten, Anfahrt, Kontakt (Status aus echten Zeiten; Parken und ÖPNV in Gehminuten; Adresse als Text, Karte per 2-Klick; kurzes Formular für Fragen; ab zwei Studios als Liste)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/hero-layouts/kontakt-anfrage-formular/meta.json"
  },
  {
   "id": "standortfinder-liste",
   "rolle": "Sektion: Öffnungszeiten, Anfahrt, Kontakt (Status aus echten Zeiten; Parken und ÖPNV in Gehminuten; Adresse als Text, Karte per 2-Klick; kurzes Formular für Fragen; ab zwei Studios als Liste)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/sektionen/standortfinder-liste/meta.json",
   "variante": "kompakt",
   "demo_url": "https://cecodesign.de/lab/fundus/sektionen/standortfinder-liste/demo?v=kompakt"
  },
  {
   "id": "firmendaten-strukturiert",
   "rolle": "Sektion: Öffnungszeiten, Anfahrt, Kontakt (Status aus echten Zeiten; Parken und ÖPNV in Gehminuten; Adresse als Text, Karte per 2-Klick; kurzes Formular für Fragen; ab zwei Studios als Liste)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/zugang/firmendaten-strukturiert/meta.json",
   "variante": "friseur",
   "demo_url": "https://cecodesign.de/lab/fundus/zugang/firmendaten-strukturiert/demo?v=friseur"
  },
  {
   "id": "widerruf-und-kuendigung-schaltflaeche",
   "rolle": "Sektion: Verträge kündigen und widerrufen (eigene Seiten, ohne Login, dauerhaft aus der Fußzeile)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/sektionen/widerruf-und-kuendigung-schaltflaeche/meta.json",
   "variante": "richtig",
   "demo_url": "https://cecodesign.de/lab/fundus/sektionen/widerruf-und-kuendigung-schaltflaeche/demo?v=richtig"
  },
  {
   "id": "barrierefreiheit-seite",
   "rolle": "Sektion: Barrierefreiheit (eigene Seite; Variante BFSG bei Online-Vertrag oder Online-Buchung – vom Kunden prüfen lassen)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/zugang/barrierefreiheit-seite/meta.json",
   "variante": "bfsg",
   "demo_url": "https://cecodesign.de/lab/fundus/zugang/barrierefreiheit-seite/demo?v=bfsg"
  },
  {
   "id": "mobile-bottom-navigation",
   "rolle": "Navigation",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/navigation/mobile-bottom-navigation/meta.json",
   "variante": "basis",
   "demo_url": "https://cecodesign.de/lab/fundus/navigation/mobile-bottom-navigation/demo?v=basis"
  },
  {
   "id": "native-popover-dropdowns",
   "rolle": "Navigation",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/navigation/native-popover-dropdowns/meta.json"
  },
  {
   "id": "druck-feedback",
   "rolle": "Mikroanimation",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/mikroanimationen/druck-feedback/meta.json"
  },
  {
   "id": "checkbox-radio-animiert",
   "rolle": "Mikroanimation",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/mikroanimationen/checkbox-radio-animiert/meta.json"
  },
  {
   "id": "toast-stapel",
   "rolle": "Mikroanimation",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/mikroanimationen/toast-stapel/meta.json"
  },
  {
   "id": "mega-footer-sitemap",
   "rolle": "Footer",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/footer/mega-footer-sitemap/meta.json"
  },
  {
   "id": "tiefen-taste-3d",
   "rolle": "Buttons",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/buttons/tiefen-taste-3d/meta.json",
   "variante": "versatz-brutal",
   "demo_url": "https://cecodesign.de/lab/fundus/buttons/tiefen-taste-3d/demo?v=versatz-brutal"
  },
  {
   "id": "fuellung-vom-eintrittspunkt",
   "rolle": "Buttons",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/hover/fuellung-vom-eintrittspunkt/meta.json",
   "variante": "pixel",
   "demo_url": "https://cecodesign.de/lab/fundus/hover/fuellung-vom-eintrittspunkt/demo?v=pixel"
  },
  {
   "id": "token-brutal-hart",
   "rolle": "Animationsstil",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/animationsstile/token-brutal-hart/meta.json"
  },
  {
   "id": "token-tech-praezise",
   "rolle": "Animationsstil für UI",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/animationsstile/token-tech-praezise/meta.json"
  },
  {
   "id": "mono-labels-versal",
   "rolle": "Schrift-Technik",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/typo-techniken/mono-labels-versal/meta.json"
  },
  {
   "id": "tabellenziffern",
   "rolle": "Schrift-Technik",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/typo-techniken/tabellenziffern/meta.json"
  },
  {
   "id": "fluide-typo-clamp-cqi",
   "rolle": "Schrift-Technik",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/typo-techniken/fluide-typo-clamp-cqi/meta.json"
  },
  {
   "id": "headline-laufweite-zeilenabstand",
   "rolle": "Schrift-Technik",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/typo-techniken/headline-laufweite-zeilenabstand/meta.json"
  }
 ]
}
