{
 "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",
   "danke-seite-naechste-schritte",
   "rechtstext-layout",
   "favicon-teilbild-system",
   "druckansicht-print"
  ],
  "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. Seit 04.11.2026 gehören auch eine Danke-Seite mit nächsten Schritten nach jedem Formular (danke-seite-naechste-schritte) und lesbare Rechtsseiten im Look der Website (rechtstext-layout) dazu. Seit 05.11.2026 gehören dazu ein vollständiger Symbolsatz aus der Marke (favicon-teilbild-system, Variante satz) und ein Druckstil für die Rechtsseiten (druckansicht-print, Variante rechtstext).",
  "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.",
   "Lange deutsche Wörter trennen: hyphens: auto mit lang=\"de\" für Fließtext und schmale Spalten, in Headlines weiche Trennstellen (&shy;) an den Wortfugen, nie bei Marken, Telefonnummern, Preisen und Codes (silbentrennung-komposita).",
   "Zahlen, Daten und Telefonnummern deutsch und einheitlich setzen: geschütztes Leerzeichen vor € und %, Bis-Strich ohne Leerzeichen für Spannen (9–13 Uhr), Telefon gegliedert und als tel:-Link mit +49, eine Satzregel je Seite (zahlen-datum-telefon-satz).",
   "Impressum, Datenschutz, AGB und Erklärung zur Barrierefreiheit als lesbare Seiten im Look der Website (rechtstext-layout): Impressum als kurzes Blatt ohne Inhaltsverzeichnis (Variante impressum), lange Texte mit Inhaltsverzeichnis, Ankern und Stand-Datum (Variante datenschutz); Sprünge aus dem Inhaltsverzeichnis landen sichtbar unter dem Kopf (anker-landung-markieren, Variante inhalt). Dazu ein Druckstil für dieselben Seiten (druckansicht-print, Variante rechtstext): A4 mit Kopf, Fuß, Stand und Seitenzahl, Linkadressen am Ende. Die Texte liefert der Kunde, vom Kunden prüfen lassen.",
   "Jedes Formular, das eine Anfrage, Buchung, Anmeldung oder Bewerbung abschickt, endet auf einer Danke-Seite mit den nächsten Schritten (danke-seite-naechste-schritte): Variante termin nach Buchungen, anfrage nach Angebots- und Kontaktanfragen, bestaetigen bei Newsletter und Erinnerungen mit Double-Opt-in; keine Werbung davor, keine Zeitzusage, die der Betrieb nicht hält.",
   "Formularfelder bekommen passende autocomplete-Werte, inputmode, sichtbare Beschriftung und Fehlertexte, die sagen, was zu tun ist (formular-eingabehilfen-autofill, Spickzettel in der Variante uebersicht).",
   "Jede Seite bekommt aus der Marke einen vollständigen Symbolsatz (favicon-teilbild-system, Variante satz): favicon.ico, icon.svg mit Dunkelmodus, apple-touch-icon, 192 und 512 px, maskierbares Icon und Manifest. Seiten, die geteilt werden (Veranstaltung, Artikel, Stelle, Objekt), bekommen zusätzlich ein Teilbild 1200 × 630 aus Rubrik und Titel (Variante teilbild), wo das Rezept es nennt.",
   "Jede Startseite hat einen Moment, an den man sich erinnert (rezept.moment: was, wo, gewicht, muster, variante): groß bzw. interaktiv, im ersten oder zweiten Bildschirm, abgeleitet aus Signatur und Branche. Auch ruhige Rezepte: dort langsam und groß, nie unsichtbar (Jury-Lehre 05.11.2026).",
   "Display-Schriften mit Haarlinien (Didone wie Bodoni Moda und Imbue, Display-Schnitte wie Libre Caslon Display, Fraunces und Newsreader mit hoher opsz und wght unter 400) zerfallen auf dem Bildschirm unter etwa 40 px. Display-Werte nur für die H1 ab etwa 2.75rem; H2 mit opsz an die Größe gekoppelt oder fest 24 bis 36 und höherem Gewicht (ab wght 500), H3 und kleiner in der Textschrift.",
   "Bilder: wenige, aber groß. Lieber ein Bild randlos oder über 7 bis 12 Spalten als drei mittelgroße; mittelgroße Fotos und dünne Strichzeichnungen wirken wie Vorlage. Zeichnungen kräftig und groß als eigene Bildwelt (Strich ab 2,5 px, Flächen in den Rezeptfarben), nie als dünne Icons (bildsprache.gewicht)."
  ],
  "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). Runde 4 (04.11.2026): danke-seite-naechste-schritte und rechtstext-layout in die Grundausstattung, Grundregeln zu Silbentrennung, Zahlensatz, Rechtsseiten, Danke-Seite und Eingabehilfen. Runde 3 (05.11.2026): favicon-teilbild-system (satz) und druckansicht-print (rechtstext) in die Grundausstattung. Runde 3b (05.11.2026, Jury-Lehren): Feld moment je Rezept, Seitenwechsel mindestens 350–400 ms sichtbar, minimales Intro ruhiger Rezepte, Haarlinien-Regel, Bilder wenige und groß. Runde 3b (05.11.2026, Jury-Lehren): Feld moment je Rezept, Seitenwechsel mindestens 350–400 ms sichtbar, minimales Intro ruhiger Rezepte, Haarlinien-Regel, Bilder wenige und groß.",
  "bewegung_basis": {
   "stand": "05.11.2026",
   "zweck": "Bewegungs-Partitur: legt je Rezept fest, was sich beim Laden, Scrollen, Zeigen und beim Seitenwechsel bewegt, in welcher Reihenfolge, wie lange und mit welcher Kurve. Die gemeinsamen Regeln stehen hier einmal; rezepte[].bewegung nennt nur, was abweicht oder konkret ist. Die älteren Felder easing, dauer_ms, regel und beobachtet bleiben gültig und gehen vor, wo sie strenger sind.",
   "felder": {
    "kurve": "haupt = die eine Hauptkurve (--ease in tokens.css, aus dem Animationsstil); ein/aus = Eintritt und Austritt (--ease-ein, --ease-aus); ui = Öffnen/Schließen für Menüs, Formulare, Dialoge (--ui-ease-ein/--ui-ease-aus), wo das Rezept einen UI-Stil hat; gilt_fuer sagt, wofür die Hauptkurve gilt; ausnahme nennt die eine erlaubte Sonderkurve, falls das Rezept eine nennt.",
    "dauern": "In ms. klein = Hover, Farbe, Druck, Fokus; mittel = UI öffnen (Menü, Akkordeon, Reiter, Dialog); gross = Auftritt von Hero, Bild-Reveal, Signatur; seitenwechsel = Standard-Seitenwechsel gesamt; schliessen = mittel beim Schließen (mittel × aus_faktor, immer kürzer). tokens nennt die Variable aus tokens.css mit genau diesem Wert, sonst „eigener Wert“.",
    "laden": "Startseite beim ersten Aufruf im Tab: schritte in Reihenfolge, je teil, ab_ms (Liste = Zeilen der H1), dauer_ms (0 = steht), art. ende_ms = letzte Bewegung steht (ohne einmaliges Zurückskalieren des Hero-Bilds). wiederholt = jeder weitere Aufruf und Seiten ohne Intro.",
    "scroll": "reveals: höchstens drei Arten je Seite (art, muster, wo, dauer_ms, versatz_ms, weg, ausloeser). fortschritt: höchstens eine Fortschrittsanzeige, zählt nicht als Reveal. nie: zusätzlich zu basis.scroll.nie.",
    "hover": "Ein Satz für Link, Knopf, Karte und Bild mit derselben Kurve und denselben Dauern (ein_ms, aus_ms).",
    "signatur": "Die eine Signatur-Bewegung je Ansicht: muster, variante, bewegung, ausloeser, wiederholung.",
    "seitenwechsel": "muster (Kategorie seitenuebergaenge) mit variante bzw. spielart, zusatz (weitere Muster), richtung (Typen), geteilt (view-transition-name), dauer_ms; onepager = was ohne Seitenwechsel gilt.",
    "budget": "Rezept-eigene Grenzen zusätzlich zu basis.budget.",
    "reduziert": "Was bei prefers-reduced-motion und beim Schalter „Bewegung reduzieren“ bleibt.",
    "verboten": "Was für diese Branche zu viel wäre, zusätzlich zu basis.verboten und nicht_verwenden.",
    "partitur_herkunft": "Woher die Werte stammen: Starter-Seite, Demo (meta.json bau.werte), Rezept-Felder oder eigene Festlegung."
   },
   "kurve": [
    "Eine Hauptkurve und eine Dauer-Skala je Seite (Leitfaden B2). Eine zweite Kurve nur als Paar für das Schließen (B5) und, wo das Rezept einen UI-Stil hat, das UI-Paar.",
    "Kurven aus Demos werden auf die Tokens der Seite umgestellt; die Werte in meta.json sind Vorführwerte ihrer Welt.",
    "Scrollgekoppelte Bewegung läuft linear (der Scroll ist die Zeit), sie braucht keine eigene Kurve.",
    "Kein ease und kein ease-in-out mit 0,3 s für sichtbare Bewegung (B1)."
   ],
   "dauern": {
    "klein_ms": "80 bis 250",
    "mittel_ms": "200 bis 525",
    "gross_ms": "400 bis 1600",
    "seitenwechsel_ms": "400 bis 1500; sichtbare Veränderung mindestens 350 bis 400",
    "aus_faktor": "0,6 bis 0,75 laut Stil; Schließen nie langsamer als Öffnen",
    "rueckmeldung_max_ms": 500,
    "regeln": [
     "Rückmeldung auf eine Eingabe (Hover, Druck, Umschalten) nie über 500 ms (Leitfaden 6).",
     "Schließen = Öffnen × aus_faktor mit der Austrittskurve (B5).",
     "Opazität und Farbe laufen linear oder mit der Hauptkurve, nie mit Überschwingen.",
     "Alle Dauern als Variablen aus tokens.css, keine Zahl im CSS der Seite."
    ]
   },
   "laden": {
    "bedienbar_ab_ms": 0,
    "erster_einsatz_max_ms": 120,
    "letzter_einsatz_max_ms": 700,
    "ende_max_ms": {
     "kurze_stile": 1200,
     "lange_stile": 1800,
     "bild_ausklang": 2200
    },
    "kurze_stile": [
     "token-tech-praezise",
     "token-swiss-knackig",
     "token-toggle-asymmetrisch",
     "token-studio-signatur",
     "token-federnd-verspielt",
     "token-brutal-hart"
    ],
    "lange_stile": [
     "token-editorial-langsam",
     "token-luxus-weich",
     "token-kinetisch-inout"
    ],
    "regeln": [
     "Kopf, Navigation, Telefon und Haupthandlung stehen ab dem ersten Bild und sind bedienbar: keine Einblendung des Kopfs, kein pointer-events: none, kein inert, kein Deckel über Links.",
     "Reihenfolge: Kopf (steht) → H1 Zeile für Zeile → Hero-Bild → Satz und Handlung → alles Weitere erst beim Scrollen.",
     "Erster Einsatz spätestens 120 ms, letzter Einsatz spätestens 700 ms. ende_ms höchstens 1.200 ms bei kurzen Stilen und 1.800 ms bei langen Stilen; ein einmaliges Zurückskalieren des Hero-Bilds (nur scale) darf bis 2.200 ms ausklingen, weil nichts darauf wartet.",
     "Das LCP-Bild ist ab dem ersten Bild gemalt (fetchpriority high, nicht lazy) und wird nie über Deckkraft eingeblendet. Masken (clip-path) öffnen ein schon geladenes Bild; kein Preloader, kein Zähler (B7).",
     "Voll nur beim ersten Aufruf im Tab (sessionStorage), danach kurz: nur die H1-Zeilen mit halbem Versatz. Kommt man per Seitenwechsel, übernimmt der Seitenwechsel, kein zweites Intro. Vorgerenderte Seiten starten erst bei pagereveal.",
     "Klick, Taste, Rad oder Wischen beendet einen laufenden Auftritt sofort im Endzustand.",
     "Unterseiten: nur die H1 des Seitenkopfs (wie wiederholt) und das Kopfbild, wenn kein geteiltes Element es bringt.",
     "Ruhige Rezepte ohne Intro (Apotheke, Pflege, Bestattung, Tierarzt, IT, Hausverwaltung): die Seite ist ab 0 ms bedienbar und steht; nur der Moment des Rezepts (rezept.moment) läuft einmal je Sitzung, langsam und weich, innerhalb von ende_max_ms. Danach steht alles."
    ]
   },
   "scroll": {
    "reveal_arten_max": 3,
    "regeln": [
     "Reveals nur in benannten Sektionen: Hero, Bilder, Kapitelanfänge, die Signatur (B3). Eine Reveal-Art ist eine Art des Erscheinens (Bild-Maske, Zeilen-Maske, Deckkraft mit Weg); dieselbe Art an mehreren Stellen zählt einmal.",
     "Bilder per clip-path statt Opacity-Fade (B4). Text höchstens 8 px Weg plus Deckkraft oder Zeilen aus Masken.",
     "Einmalig ausgelöst: einmal je Seitenaufruf, nie beim Zurückscrollen erneut. Scrollgekoppelt: hinter @supports (animation-timeline: view()), ohne Unterstützung steht der Endzustand.",
     "Versatz für Geschwister höchstens fünfmal (min(sibling-index() - 1, 5) × Versatz).",
     "Fortschrittsanzeigen (Linie wächst, Lesefortschritt, Kapitelspur) zählen nicht als Reveal; höchstens eine je Seite.",
     "Spätestens bei 85 % Viewporthöhe ist alles ganz aufgedeckt, nichts Lesbares bleibt halb verdeckt stehen."
    ],
    "nie": [
     "Fließtext",
     "Formulare und Felder",
     "Preise, Tarife, Kosten",
     "Öffnungszeiten, Telefon, Adresse",
     "Tabellen und Datenblätter",
     "Rechtstexte und Pflichtangaben",
     "Kopf und Navigation",
     "Fehlermeldungen, Hinweise, Notdienst"
    ]
   },
   "hover": {
    "regeln": [
     "Nur mit Zeiger: @media (hover: hover) and (pointer: fine). :focus-visible zeigt dasselbe ohne Verzögerung.",
     "Ein Satz: Link, Knopf, Karte und Bild nutzen dieselbe Kurve und dieselben zwei Dauern (ein_ms, aus_ms); nur Farbe darf kürzer sein (dauern.klein).",
     "Verlassen schneller als Hineingehen, mit der Austrittskurve.",
     "Effekte erst bei Interaktion, nie im Ruhezustand (C9): kein Puls, kein Glanz, kein Lichtlauf.",
     "Bilder in Karten höchstens scale 1.06 bis 1.12 im stehenden Rahmen (bild-zoom-in-maske); die Karte selbst skaliert nie.",
     "Ein langsamer Bild-Zoom im stehenden Rahmen darf als Ausklang länger laufen (bis 1.200 ms, bei langen Stilen bis 2.200 ms), wenn ein schnelles Zeichen derselben Karte (Pfeil, Linie, Farbe) innerhalb von ein_ms antwortet.",
     "Touch: kein Inhalt nur bei Hover; :active zeigt den Druck (scale .97 bis .98 oder höchstens 4 px Weg)."
    ]
   },
   "signatur": {
    "regeln": [
     "Höchstens eine Signatur-Bewegung je Ansicht. Liegen zwei Signatur-Stellen zugleich im Bild, bewegt sich nur die erste.",
     "Läuft sie von selbst, dann einmal je Seitenaufruf und höchstens 5 s; länger nur mit Pause-Knopf (bewegung-pausieren-schalter).",
     "Auf Hover, Klick oder Ziehen beliebig oft, aber nie als Schleife ohne Eingabe.",
     "Steht die Signatur selbst still (Typo, Raster, Form), ist sie keine Bewegung; dann trägt die unter signatur.bewegung genannte Stelle den einen bewegten Moment."
    ]
   },
   "seitenwechsel": {
    "regeln": [
     "Nur bei mehreren Seiten: vt-cross-document-mpa mit @view-transition { navigation: auto } als <style> direkt im Kopf, Typen aus pageswap/pagereveal im blockierenden Kopfskript.",
     "Kopf (view-transition-name: kopf) und die mobile Leiste bleiben stehen; geteilte Elemente nur während des Wechsels benennen.",
     "Nie zwei Textebenen übereinander: Die neue Seite deckt, oder die alte ist weg, bevor neuer Text erscheint.",
     "Gesamtdauer höchstens 1.500 ms; die neue Seite ist bedienbar, sobald sie da ist. Abgebrochene Übergänge abfangen (ready/finished mit catch, skipTransition bei schnellem Klicken).",
     "Zurück (Browser-Zurück oder eine Ebene höher) läuft gespiegelt.",
     "Ohne Unterstützung normale Navigation, nichts fehlt. Vorladen nach sofort-navigation-vorladen.",
     "Mindestens 350–400 ms sichtbare Veränderung mit gemeinsamem Element und Richtung; ruhig heißt weich, nicht kurz. Kopf und Leiste, die nur stehen bleiben, zählen nicht als gemeinsames Element. Ruhige Rezepte nehmen eine weiche Kurve ohne Überschwingen (in-out, z. B. --ease-seite), nie eine Feder. Steile Out-Kurven sind nach einem Fünftel der Zeit fast fertig: die Dauer so wählen, dass mindestens drei Einzelbilder im Abstand von 100 ms sichtbare Bewegung zeigen. Partituren unter 400 ms gibt es nicht mehr (Jury-Lehre 05.11.2026)."
    ],
    "onepager": "Kein Seitenwechsel. Sprunglinks scrollen mit scroll-behavior: smooth nur bei prefers-reduced-motion: no-preference, keine Smooth-Scroll-Bibliothek."
   },
   "budget": [
    "Eine Signatur-Bewegung je Ansicht.",
    "Höchstens drei Reveal-Arten je Seite, nur in benannten Sektionen.",
    "Höchstens eine Fortschrittsanzeige je Seite.",
    "Kein Parallax auf Text. Parallax auf Bildern höchstens 10 % Weg.",
    "Keine Bewegung über 5 s ohne Pause-Knopf, nichts in Schleife ohne Eingabe.",
    "Höchstens zwei Dinge bewegen sich zugleich im Blickfeld (die Zeilen einer Überschrift zählen als eins).",
    "Rückmeldung auf Eingaben nie über 500 ms.",
    "Überschwingen nur auf kleinen Elementen (B6).",
    "Großflächige Hell-Dunkel-Wechsel höchstens dreimal pro Sekunde (WCAG 2.3.1)."
   ],
   "reduziert": {
    "max_ms": 150,
    "regeln": [
     "Es bleiben nur Überblendungen bis 150 ms (opacity, linear) und Farbwechsel ohne Weg.",
     "Reveals entfallen: Masken stehen offen, Bilder sind ganz da, Zeilen stehen.",
     "Seitenwechsel nur als Überblendung von root (alt 100 ms, neu 150 ms), keine geteilten Elemente, kein Farbpanel.",
     "Scrollgekoppelte Strecken ohne Pin im Endzustand; Autoplay aus, Laufendes pausiert.",
     "Zustände (offen, gewählt, Fehler, gesendet) bleiben sichtbar, nur ohne Weg.",
     "Gilt für prefers-reduced-motion: reduce und den Schalter „Bewegung reduzieren“ im Fuß (bewegung-pausieren-schalter, gespeichert)."
    ]
   },
   "verboten": [
    "ease 0.3s für sichtbare Bewegung (B1)",
    "Fade-up für alles (B3)",
    "Preloader und Prozent-Zähler (B7)",
    "Smooth-Scroll-Bibliothek, wenn das Rezept sie nicht nennt (B8)",
    "eigener Cursor als Standard (B9)",
    "Puls, Glanz oder Lichtlauf im Ruhezustand",
    "Bewegung, die Klicks blockiert oder auf sich warten lässt"
   ],
   "belege": [
    "lab/fundus/messungen.json (31.10.2026): Eine Kurve dominiert je Seite, z. B. landonorris.com cubic-bezier(0.65, 0.05, 0, 1) 118-mal bei 0,75 s, obys.agency cubic-bezier(0.16, 1, 0.3, 1) 80-mal, vercel.com cubic-bezier(0.4, 0, 0.2, 1) 139-mal bei 0,1 bis 0,15 s.",
    "Leitfaden Abschnitt 5 (B1 bis B9) und Abschnitt 6 (Dauer-Faustregeln).",
    "Recherche Runde 4 (04.11.2026), One-Shot-Generator, P3 Bewegungs-Partitur.",
    "Starter-Seiten lab/fundus/starter/<id>/ (style.css, tokens.css, LIESMICH.md) als gelungenste Umsetzungen."
   ],
   "herkunft": "Regeln aus Leitfaden und Recherche P3. Die Grenzwerte (erster und letzter Einsatz, ende_max_ms, zwei gleichzeitige Bewegungen, 10 % Parallax, 85 % Aufdeckung) sind eigene Festlegung, abgeleitet aus den zehn Starter-Seiten (04.11.2026)."
  },
  "varianten": {
   "favicon-teilbild-system": "satz",
   "druckansicht-print": "rechtstext"
  }
 },
 "id": "laden-vor-ort-sortiment",
 "name": "Laden vor Ort: Schaufenster, Beratung, Abholung",
 "branche": "Fachgeschäft und Einzelhandel vor Ort (Buchhandlung, Fahrradladen mit Werkstatt, Blumenladen, Spielwaren, Unverpackt, Wohnen und Geschenke)",
 "stimmung": [
  "persönlich",
  "kuratiert",
  "warm",
  "nah"
 ],
 "stimmung_tags": [
  "warm",
  "editorial"
 ],
 "kurz": "Der Laden verkauft Besuch und Beratung, nicht Versand: Hat er heute offen, was ist neu und was empfiehlt das Team, kann ich etwas reservieren und abholen, gibt es eine Werkstatt oder eine Lesung. Der Hero ist das Schaufenster im Rahmen, darunter die Abteilungen als Bildstreifen, die sich beim Darüberfahren oder Antippen öffnen. Empfehlungen mit Namen, Reservierung ohne Shop, Werkstatt mit Festpreisen, Veranstaltungen. Libre Caslon Display für Überschriften wie auf einem Buchumschlag, Familjen Grotesk für Text. Papier, Kraftkarton und ein Schaufenstergrün. Abgrenzung zu d2c-produkt-zuerst (Versandmarke mit Bento und Warenkorb-Flug) und mode-beauty-kollektion (Kollektion).",
 "referenzen": [
  {
   "seite": "Marsano Berlin – Blumen und Wohnen",
   "url": "https://marsano-berlin.de/en",
   "art": "website",
   "herkunft": "beobachtet",
   "abgerufen": "2026-11-04",
   "quelle": "https://marsano-berlin.de/en",
   "beobachtung": "Live geprüft 04.11.2026 (WebFetch, nur Text): Navigation nach Sortiment („Fresh flowers“, „Wedding flowers“, „Home design“, „Gutscheine“, „Events“); Sträuße mit Preis; „Pre-order now & pick up tomorrow“ als Weg zur Abholung; Lieferung in Berlin am selben Tag bei Bestellung bis 14 Uhr. Footer mit „Imprint“, „Data protection“, „payment and shipping“, „Cookie Settings“. Vorbild für Vorbestellen und Abholen neben dem Laden."
  },
  {
   "seite": "Mount7 – Fahrradwerkstatt",
   "url": "https://mount7.com/fahrradwerkstatt",
   "art": "website",
   "herkunft": "beobachtet",
   "abgerufen": "2026-11-04",
   "quelle": "https://mount7.com/fahrradwerkstatt",
   "beobachtung": "Live geprüft 04.11.2026 (WebFetch, nur Text): Werkstattpreise offen (Arbeitsstunde 100 € bei Kauf im Laden, sonst 140 €; Schlauchwechsel 15 bis 26 €; Inspektion 70 bis 160 €), Termin über „Boxenstopp vereinbaren“, Abholung meist am selben Abend oder am nächsten Tag, Kostenabschätzung bei der Annahme, „Abwicklung von JobRad/Leasingbike Inspektionen“. Vorbild für die Werkstatt-Sektion der Fahrrad-Variante."
  }
 ],
 "schrift": {
  "paarung_basis": "",
  "headline": "libre-caslon-display",
  "text": "familjen-grotesk",
  "akzent": "",
  "groessen": "h1 Libre Caslon Display clamp(2.5rem, 1.5rem + 4vw, 5rem), Laufweite -0.015em, Zeilenhöhe 1.0; h2 clamp(1.875rem, 1.3rem + 2vw, 3rem) in Familjen Grotesk 600 (Libre Caslon Display hat ein Gewicht und feine Haarlinien: nur H1 und große Abteilungsnamen ab 2.5rem). Fließtext Familjen Grotesk 1.0625rem (17 px), wght 400, Zeilenhöhe 1.6, höchstens 64ch; Kursive für Titel von Büchern und Produktnamen. Preise und Zeiten Familjen Grotesk 500 mit Tabellenziffern; Abteilungsnamen in den Bildstreifen Libre Caslon Display ab 2.5rem, schmale Streifen in Familjen Grotesk 600. Knöpfe Familjen Grotesk 600, 1rem.",
  "techniken": [
   "fluide-typo-clamp-cqi",
   "headline-laufweite-zeilenabstand",
   "tabellenziffern",
   "lesesatz-text-wrap",
   "gemischte-schnitte-zeile"
  ],
  "alternative_eigenprojekt": "Headline gambarino (ITF) für einen Café- und Boutique-Ton – nur für Eigenprojekte.",
  "abweichung": "Die Recherche schlägt brygada-1918 vor; die Schrift liegt nicht unter /assets/fonts. Ersatz libre-caslon-display (Verlage laut schriften.json, bisher in einem Rezept: immobilien). Text familjen-grotesk wie vorgeschlagen, damit in zwei Rezepten. Libre Caslon Display hat nur einen Schnitt und keine Kursive; Kursives steht in Familjen Grotesk Italic."
 },
 "farbe": {
  "prinzip": "Je Laden ein Leitmaterial: hier Papier als Grund, Kraftkarton als Fläche für Empfehlungen, Reservierung und Werkstattpreise, fast schwarzes Tintenbraun für Footer. Eine Akzentfarbe aus dem Schaufenster oder der Markise, hier Schaufenstergrün, nur für Reservieren und Termin. Austauschbar je Laden (Markisenrot, Ladenblau), immer mit 4,5 : 1 geprüft. Kein Pastell, keine Holzmaserung, kein Papier-Fake.",
  "beispiel": [
   "#F5F1E8 Grund Papier",
   "#211F1C Text (14,6 : 1 auf Grund)",
   "#E2D3B8 Fläche Kraftkarton: Empfehlungen, Reservierung, Werkstattpreise (Text 11,2 : 1)",
   "#2C2A26 Dunkel Tinte: Footer, Veranstaltungs-Band (Weiß darauf 14,3 : 1)",
   "#2E5B45 Signal Schaufenstergrün: Reservieren, Termin (Weiß darauf 7,8 : 1; als Fläche auf Grund 6,9 : 1, auf Kraftkarton 5,3 : 1); auf Tinte stattdessen Papier-Knopf mit dunkler Schrift",
   "#615B51 Leise: Meta-Angaben, Stand-Daten (6,0 : 1 auf Grund, 4,6 : 1 auf Kraftkarton)",
   "#D9CFBE Linie: Haarlinien in Preislisten (nur Dekoration)"
  ]
 },
 "animationsstil": "token-editorial-langsam",
 "animationsstil_ui": "token-toggle-asymmetrisch",
 "animationsstil_hinweis": "Langsam nur für Bilder: Die Bildstreifen der Abteilungen wachsen in 1000 ms, das Schaufenster-Foto öffnet sich einmal. Reservierung, Werkstatt-Termin, Filter und Dialoge laufen über token-toggle-asymmetrisch (300 ms auf, 200 ms zu), wie von der Recherche vorgeschlagen.",
 "bewegung": {
  "easing": "cubic-bezier(0.16, 1, 0.3, 1) (token-editorial-langsam); UI über animationsstil_ui",
  "beobachtet": "nicht gemessen; akkordeon-panels-Messwerte der Demo: K72 300 ms easeOutCubic, typisch 600 bis 800 ms, flex-grow 1 → 5",
  "dauer_ms": "150 (Hover, Farbe), 1000 (Bildstreifen wächst), 300 (Panel, Dialog öffnen), 200 (schließen), 1200 (Schaufenster-Foto öffnet sich einmal)",
  "regel": "Bilder bewegen sich ruhig und einmal; Preise, Zeiten und Formulare stehen sofort. Die Bildstreifen öffnen sich auf Hover mit 50 ms Verzögerung und auf Fokus sofort, auf Touch per Tippen. Bei prefers-reduced-motion wechselt die Breite sofort, das Foto steht.",
  "herkunft": "Kurve und Dauern aus token-editorial-langsam (1000/1200/1600) und token-toggle-asymmetrisch; Wege aus akkordeon-panels (bau.werte: flex-grow 1 → 5, Verzögerung 50 ms).",
  "kurve": {
   "haupt": "cubic-bezier(0.16, 1, 0.3, 1)",
   "token": "--ease",
   "ein": "cubic-bezier(0.16, 1, 0.3, 1)",
   "aus": "cubic-bezier(0.7, 0, 0.84, 0)",
   "stil": "token-editorial-langsam",
   "gilt_fuer": "nur Bilder: Bildstreifen wachsen, das Schaufenster-Foto öffnet sich einmal; Reservierung, Termin, Filter, Dialoge über das UI-Paar",
   "ui": {
    "ein": "cubic-bezier(0.16, 1, 0.3, 1)",
    "aus": "cubic-bezier(0.7, 0, 0.84, 0)",
    "stil": "token-toggle-asymmetrisch",
    "token": "--ui-ease-ein / --ui-ease-aus"
   },
   "quelle": "bewegung.easing und tokens.css (token-editorial-langsam, UI token-toggle-asymmetrisch)"
  },
  "dauern": {
   "klein": 150,
   "mittel": 300,
   "gross": 1200,
   "seitenwechsel": 1000,
   "schliessen": 200,
   "aus_faktor": 0.67,
   "tokens": {
    "klein": "--dauer-rezept-1",
    "mittel": "--dauer-rezept-3",
    "gross": "--dauer-rezept-5",
    "seitenwechsel": "--dauer-rezept-4",
    "schliessen": "--dauer-rezept-2"
   },
   "hinweis": "Rezept: 150 Hover, 1000 Bildstreifen wächst, 300 Panel und Dialog öffnen, 200 schließen, 1200 Schaufenster-Foto einmal."
  },
  "laden": {
   "schritte": [
    {
     "teil": "Kopf mit Öffnungsstatus",
     "ab_ms": 0,
     "dauer_ms": 0,
     "art": "steht"
    },
    {
     "teil": "Schaufenster-Foto (inset-rahmen)",
     "ab_ms": 0,
     "dauer_ms": 1200,
     "art": "öffnet sich einmal (clip-path inset), --ease"
    },
    {
     "teil": "H1",
     "ab_ms": [
      200,
      300,
      400
     ],
     "dauer_ms": 1000,
     "art": "Zeilen steigen aus Masken, --ease"
    },
    {
     "teil": "Rest",
     "ab_ms": null,
     "dauer_ms": 0,
     "art": "erst beim Scrollen (scroll)"
    }
   ],
   "ende_ms": 1400,
   "wiederholt": "H1 steht, Foto steht."
  },
  "scroll": {
   "reveals": [
    {
     "art": "Bild-Maske",
     "muster": "clip-path-bild-reveal",
     "wo": "Bilder zu Empfehlungen und Veranstaltungen",
     "dauer_ms": 1200,
     "versatz_ms": 100,
     "weg": "Maske öffnet sich einmal",
     "ausloeser": "einmal, wenn 33 % sichtbar (IntersectionObserver)"
    }
   ],
   "fortschritt": "keine",
   "nie": [
    "Preise, Zeiten, Formulare (Rezept)",
    "Reservierung und Werkstatt-Termin"
   ]
  },
  "hover": {
   "link": "Unterstreichung wächst von links",
   "knopf": "button-zustaende; kontur-button-zeichnen doppel",
   "karte": "Empfehlung: Bild scale 1.05 im Rahmen (bild-zoom-in-maske basis)",
   "bild": "Zoom klingt mit --ease aus, der Pfeil antwortet sofort",
   "ein_ms": 300,
   "aus_ms": 200,
   "kurve": "--ui-ease-ein / --ui-ease-aus (Bild --ease)"
  },
  "signatur": {
   "muster": "akkordeon-panels",
   "variante": null,
   "bewegung": "Die Bildstreifen der Abteilungen wachsen auf Hover nach 50 ms (flex-grow 1 → 5, 1000 ms, --ease), auf Fokus sofort, auf Touch per Tippen (Rezept); der Text erscheint gestaffelt.",
   "ausloeser": "Hover, Fokus, Tippen",
   "dauer_ms": 1000,
   "wiederholung": "je Eingabe"
  },
  "seitenwechsel": {
   "muster": "vt-cross-document-mpa",
   "variante": "benannt",
   "zusatz": [
    {
     "muster": "vt-shared-element-morph"
    }
   ],
   "richtung": "keine Typen; Abteilung → Abteilungsseite morpht das Streifenbild, sonst Überblendung",
   "geteilt": [
    "kopf",
    "held (Streifenbild)"
   ],
   "dauer_ms": 1000
  },
  "budget": [
   "Bilder bewegen sich ruhig und einmal (Rezept)."
  ],
  "reduziert": "Breite wechselt sofort, das Foto steht (Rezept); Seitenwechsel als Überblendung.",
  "verboten": [
   "Laufband mit Angeboten",
   "Einkaufswagen- oder Tüten-Animation",
   "Countdown und „nur heute“"
  ],
  "partitur_herkunft": "Kein Starter. Werte aus bewegung.dauer_ms und regel; Signatur nach akkordeon-panels (Rezept 1000 ms statt Demo 700 ms, 50 ms Verzögerung). Rest eigene Festlegung.",
  "partitur_stand": "04.11.2026"
 },
 "hero_beschreibung": "Foto-Hero im Rahmen (inset-rahmen): das echte Schaufenster oder der Laden von innen, eingefasst in die Ladenfarbe. Daneben der Name, ein Satz, was es hier gibt, Öffnungsstatus aus echten Zeiten und zwei Wege: „Reservieren und abholen“ und „Was gibt es Neues“. Bei Läden mit Werkstatt der zweite Weg „Werkstatt-Termin“.",
 "muster": {
  "seitenuebergang": [
   "vt-shared-element-morph"
  ],
  "preloader": [],
  "navigation": [
   "native-popover-dropdowns",
   "sticky-shrink-header",
   "brotkrumen-pfad"
  ],
  "hero": [
   "foto-hero"
  ],
  "hero_variante": [],
  "sektionen": [
   {
    "zweck": "Heute geöffnet (Status im Kopf aus echten Zeiten; Sonderzeiten wie Advent, Inventur, Feiertage nach Bundesland)",
    "muster": [
     "oeffnungszeiten-status"
    ],
    "varianten": {
     "oeffnungszeiten-status": "kompakt"
    }
   },
   {
    "zweck": "Abteilungen und Themen (drei bis sechs Bildstreifen aus dem eigenen Laden, z. B. Romane, Kinderbuch, Reise oder Stadträder, E-Bikes, Werkstatt; je Streifen ein Satz und der Weg dorthin; mobil senkrechtes Akkordeon)",
    "muster": [
     "akkordeon-panels"
    ]
   },
   {
    "zweck": "Neu und empfohlen (Empfehlungen des Teams mit Name und einem Satz, Preis inkl. MwSt.; Reihe mit fünf bis zehn Stücken; kein voller Shop nötig; Aktionen mit Zeitraum nur, wo der Preis frei ist: nicht für Bücher (Buchpreisbindung))",
    "muster": [
     "css-native-karussell",
     "karussell-steuerung",
     "produktkarte-bildwechsel",
     "aktion-mit-preisangabe"
    ],
    "varianten": {
     "css-native-karussell": "produktreihe",
     "karussell-steuerung": "fortschritt",
     "produktkarte-bildwechsel": "zweitbild",
     "aktion-mit-preisangabe": "zeitraum"
    }
   },
   {
    "zweck": "Reservieren und abholen (Artikel oder Wunsch als Text, Menge, Abholtag; Bestätigung, ab wann es bereitliegt und wie lange es zurückgelegt wird; ohne Online-Zahlung eine Reservierung, kein Kauf)",
    "muster": [
     "vorbestellung-abholung",
     "formular-fehlerzusammenfassung"
    ],
    "varianten": {
     "formular-fehlerzusammenfassung": "kompakt",
     "vorbestellung-abholung": "backstube"
    }
   },
   {
    "zweck": "Werkstatt und Service (nur Läden mit Werkstatt: Festpreise je Leistung mit Stand-Datum, Termin, freiwillig das Europäische Formular für Reparaturinformationen)",
    "muster": [
     "speisekarte-editorial",
     "reparatur-richtpreise",
     "termin-buchung-zwei-klick",
     "zeichnungsfamilie-produkte"
    ],
    "varianten": {
     "speisekarte-editorial": "preisliste",
     "reparatur-richtpreise": "betrieb",
     "termin-buchung-zwei-klick": "vorauswahl",
     "zeichnungsfamilie-produkte": "laden"
    }
   },
   {
    "zweck": "Veranstaltungen (Lesungen, Workshops, Probefahrten, Kranzbinden; Datum, Preis, freie Plätze; Liste nach Monat, Kalender erst ab etwa acht Terminen im Monat)",
    "muster": [
     "programm-kalender"
    ],
    "varianten": {
     "programm-kalender": "programm"
    }
   },
   {
    "zweck": "Veranstaltung-Detailseite (je Termin eine Seite, aufgerufen aus der Liste: Lesung, Workshop oder Probefahrt mit Datum, Uhrzeit, Preis, Plätzen und Anmeldung; freie Plätze nur aus echter Quelle, Vergangenes mit Hinweis statt Fehlerseite)",
    "muster": [
     "veranstaltung-detailseite",
     "teilen-und-kalender"
    ],
    "varianten": {
     "veranstaltung-detailseite": "anmeldung",
     "teilen-und-kalender": "veranstaltung"
    }
   },
   {
    "zweck": "Online kaufen (nur mit Shop: Kaufbox mit Gesamtpreis, Versand und Lieferzeit, Gewährleistungshinweis; Raten nur mit allen Pflichtangaben)",
    "muster": [
     "produkt-kaufbox-varianten",
     "warenkorb-drawer",
     "eu-gewaehrleistungshinweis",
     "finanzierung-pflichtangaben",
     "paginierung-mehr-laden"
    ],
    "varianten": {
     "produkt-kaufbox-varianten": "kompakt",
     "warenkorb-drawer": "hinweis",
     "eu-gewaehrleistungshinweis": "kaufbox",
     "finanzierung-pflichtangaben": "kaufbox",
     "paginierung-mehr-laden": "knopf"
    }
   },
   {
    "zweck": "Wer hier berät (das Team in einem Satz mit kleinen Porträts, Schwerpunkte und Lieblingsstücke)",
    "muster": [
     "team-ueber-mich-layout"
    ],
    "varianten": {
     "team-ueber-mich-layout": "statement"
    }
   },
   {
    "zweck": "Aus dem Laden (Auswahl eigener Instagram-Bilder selbst gehostet mit Link zum Profil; Live-Feed erst nach Klick)",
    "muster": [
     "karte-zwei-klick"
    ],
    "varianten": {
     "karte-zwei-klick": "social"
    }
   },
   {
    "zweck": "Laden und Anfahrt (Adresse als Text, Bus und Bahn, Rad- und Lastenradstellplätze, Stufen am Eingang; Karte per 2-Klick)",
    "muster": [
     "karte-zwei-klick",
     "firmendaten-strukturiert"
    ],
    "varianten": {
     "karte-zwei-klick": "bild",
     "firmendaten-strukturiert": "friseur"
    }
   },
   {
    "zweck": "Standorte (nur bei mehreren Häusern: je Standort eine eigene Seite mit Status aus echten Zeiten, Sortiment-Schwerpunkt, Bus und Rad, Stufen am Eingang; nie dieselbe Seite mit getauschtem Ortsnamen)",
    "muster": [
     "standort-detailseite",
     "zeichnungsfamilie-produkte"
    ],
    "varianten": {
     "standort-detailseite": "filiale",
     "zeichnungsfamilie-produkte": "laden"
    }
   },
   {
    "zweck": "Gutscheine (nur mit Zahlungsdienst und Codeverwaltung; sonst „im Laden oder telefonisch“)",
    "muster": [
     "gutschein-konfigurator"
    ]
   },
   {
    "zweck": "Vertrag widerrufen, Gewährleistung, Barrierefreiheit (Footer und mobiles Menü, ohne Login; nur bei Online-Verkauf bzw. Online-Termin nach BFSG prüfen lassen)",
    "muster": [
     "widerruf-und-kuendigung-schaltflaeche",
     "barrierefreiheit-seite"
    ],
    "varianten": {
     "widerruf-und-kuendigung-schaltflaeche": "richtig",
     "barrierefreiheit-seite": "bfsg"
    }
   }
  ],
  "scroll": [
   "clip-path-bild-reveal"
  ],
  "schrift_animation": [],
  "hover": [
   "bild-zoom-in-maske",
   "karte-ganzflaechig-klickbar"
  ],
  "cursor": [],
  "mikro": [
   "einblenden-starting-style",
   "animiertes-select"
  ],
  "material": [],
  "galerie": [
   "css-native-karussell",
   "akkordeon-panels"
  ],
  "footer": [
   "footer-newsletter-mit-persoenlichkeit"
  ],
  "button": [
   "button-zustaende",
   "kontur-button-zeichnen"
  ],
  "hero_varianten": {
   "foto-hero": "inset-rahmen"
  }
 },
 "signatur": [
  "akkordeon-panels"
 ],
 "moment": {
  "was": "Die Abteilungen als Bildstreifen über die volle Breite; der Streifen unter dem Zeiger wächst auf das Fünffache, der Name steht groß darin.",
  "wo": "Startseite, zweiter Bildschirm",
  "gewicht": "groß und interaktiv: Streifen über 12 Spalten, mindestens 60 vh hoch",
  "muster": [
   "akkordeon-panels"
  ],
  "variante": null
 },
 "varianten_demo": {
  "kontur-button-zeichnen": "doppel",
  "footer-newsletter-mit-persoenlichkeit": "basis",
  "bild-zoom-in-maske": "basis",
  "css-native-karussell": "produktreihe",
  "karte-ganzflaechig-klickbar": "raster",
  "brotkrumen-pfad": "voll"
 },
 "nicht_verwenden": [
  "in-den-warenkorb-flug / like-herz-burst – Signaturen von d2c-produkt-zuerst",
  "bento-grid-interaktiv – Produkt-Bento gehört zu d2c; der Laden zeigt Abteilungen als Bildstreifen",
  "live-uhr-und-standort – Signatur von gastro-warm-appetitlich; der Status kommt aus echten Zeiten",
  "flick-karten-stapel – Signatur von friseur-salon-handschrift",
  "marquee-laufband – Neuheiten als Laufband sind nicht lesbar",
  "zahlen-odometer – keine hochgezählten Bestandszahlen",
  "Countdown, „nur noch 2“ ohne echten Bestand – künstliche Verknappung",
  "smooth-scroll-lenis – stört Reihe, Filter und Formular",
  "konfetti-erfolg – nach der Reservierung eine ruhige Bestätigung",
  "papier-druck-textur – Papier- und Karton-Fake; die Farben reichen",
  "„nachhaltig“, „plastikfrei“, „regional“ ohne Nachweis – Umweltaussagen nur mit Beleg (Leitfaden 8a)"
 ],
 "regeln": [
  "Erster Bildschirm: Schaufenster im Rahmen, Name, ein Satz zum Sortiment, Status aus echten Zeiten, zwei Wege. Ladenbesuch geht vor Online-Kauf.",
  "Signatur (akkordeon-panels): drei bis sechs Bildstreifen mit echten Fotos aus dem Laden; der aktive Streifen wächst, der Name steht in Libre Caslon Display, ein Satz erscheint. Hover mit 50 ms Verzögerung, Fokus und Tippen sofort; mobil senkrechtes Akkordeon. Kein Text, der vor dem Öffnen gelesen werden muss.",
  "Reservieren statt Shop: Wer nur reserviert und im Laden bezahlt, schließt online keinen Kaufvertrag; das klar sagen („Wir legen es bis [Tag] zurück“). Ob dennoch Pflichten greifen, vom Kunden prüfen lassen.",
  "Preise inkl. MwSt.; Streichpreise und Aktionen nur mit dem niedrigsten Preis der letzten 30 Tage (§ 11 PAngV); Bücher unterliegen der Buchpreisbindung, keine Rabatte darauf.",
  "Online-Verkauf: Gesamtpreis, Versand, Lieferzeit, „zahlungspflichtig bestellen“, Widerrufs-Button, EU-Gewährleistungshinweis (eu-gewaehrleistungshinweis), Hersteller- und Sicherheitsangaben nach GPSR; Ratenwerbung mit allen Pflichtangaben direkt dabei (finanzierung-pflichtangaben, ab 20.11.2026).",
  "Werkstatt: Festpreise mit Stand-Datum und dem Satz, was nicht enthalten ist; das Europäische Formular für Reparaturinformationen ist freiwillig (reparatur-richtpreise, Variante betrieb).",
  "Typografie: Libre Caslon Display nur ab 1.5rem; Kursives in Familjen Grotesk Italic; Preise mit Tabellenziffern.",
  "Knöpfe: Schaufenstergrün gefüllt mit allen Zuständen (button-zustaende) für Reservieren und Termin; Nebenwege als versetzte Doppelkontur wie ein Stempel (kontur-button-zeichnen, Variante doppel).",
  "Pflichtangaben (Leitfaden 8a): Impressum, Datenschutz; Instagram und Karten erst nach Klick; bei Fahrrad, E-Bike und Elektrogeräten die Hinweise zur Rücknahme von Altgeräten und Batterien nach Elektro- und Batterierecht, vom Kunden prüfen lassen.",
  "Filialen als Fassaden-Zeichnungen aus einer Familie (zeichnungsfamilie-produkte, Variante laden): jede Filiale an ihrer Dachform erkennbar, darunter Adresse und Status; Service-Icons und Leerzustände aus derselben Hand. Die Bildstreifen der Signatur bleiben echte Fotos aus dem Laden."
 ],
 "varianten": [
  {
   "name": "Fahrradladen mit Werkstatt",
   "hinweis": "Schrift, Farbe, Stil und Signatur bleiben; die Bildstreifen zeigen Stadt, Trekking, E-Bike, Lastenrad und Werkstatt. Werkstatt mit Festpreisen und Termin wie Mount7, Probefahrt und Größenberatung als Termin, Dienstrad-Leasing als Ablauf in Schritten. E-Bike-Daten (Motor, Akku in Wh, Reichweite nur als Spanne nach Herstellerangabe) in einer Tabelle. Raten- und Leasingwerbung mit den Pflichtangaben, ob sie beim Dienstrad greifen, vom Kunden prüfen lassen. S-Pedelecs mit Hinweis auf Versicherungskennzeichen und Führerschein.",
   "sektionen": [
    "Werkstatt-Termin und Festpreise",
    "Räder nach Einsatz (Filter ab etwa 15 Rädern)",
    "Radseite mit Daten, Probefahrt, Preis und Gewährleistung",
    "Dienstrad-Leasing in Schritten",
    "Team und Werkstatt",
    "Laden und Anfahrt"
   ],
   "weglassen": [
    "Veranstaltungen, wenn es keine gibt"
   ],
   "muster_zusatz": [
    "facettenfilter-ergebnisliste",
    "lokale-produktnavigation",
    "prozess-timeline-wachsende-linie"
   ]
  },
  {
   "name": "Blumenladen und Floristik",
   "hinweis": "Bildstreifen für Strauß der Woche, Hochzeit, Trauer, Blumenabo und Workshops; Trauer mit ruhigem Bild und eigener Seite, nie neben Aktionen. Bestellung mit Liefertag, Zeitfenster und Bestellschluss, Liefergebiet per Postleitzahl, Kartengruß mit Zeichenzahl. Schnittblumen sind schnell verderblich und nach Wunsch gefertigt, das Widerrufsrecht entfällt meist (§ 312g Abs. 2 Nr. 1 und 2 BGB); ein Blumenabo ist ein Dauervertrag mit Kündigungsbutton. Vom Kunden prüfen lassen.",
   "sektionen": [
    "Strauß der Woche bestellen (Liefergebiet, Bestellschluss, Kartengruß)",
    "Hochzeit und Events (Beratungstermin)",
    "Trauerfloristik (Lieferung an Friedhof oder Bestattungshaus)",
    "Blumenabo",
    "Workshops",
    "Laden und Anfahrt"
   ],
   "weglassen": [
    "Werkstatt und Service"
   ],
   "muster_zusatz": [
    "vergleichstabelle-sticky"
   ]
  },
  {
   "name": "Buchhandlung",
   "hinweis": "Bestellung bis zum nächsten Tag zur Abholung ist der wichtigste Weg; Buchpreisbindung beachten (keine Rabatte, Preise wie verlegt). Empfehlungen mit Name der Buchhändlerin, Lesungen als Veranstaltungen mit Ticket oder Eintritt frei.",
   "sektionen": [
    "Bestellen und morgen abholen",
    "Empfehlungen des Teams",
    "Lesungen und Lesekreis",
    "Laden und Anfahrt"
   ],
   "weglassen": [
    "Werkstatt und Service",
    "Online kaufen, wenn kein Shop"
   ],
   "muster_zusatz": []
  }
 ],
 "template_tauglich": true,
 "aufwand": "mittel",
 "leistung": "Schaufenster-Foto als LCP mit fetchpriority=high. Bildstreifen per flex-grow ohne Bibliothek, Bilder lazy mit sizes=auto. Libre Caslon Display 400 und Familjen Grotesk mit Kursive nur Latin. Instagram, Karte und Terminwerkzeug erst nach Klick.",
 "offen": [
  "Recherche nennt produktkarte-bildwechsel und aktion-mit-preisangabe als nötig; beide fehlen. vorbestellung-abholung (Reservieren und abholen) und veranstaltung-detailseite (nach Veranstaltungen) sind seit 04.11.2026 eingetragen.",
  "brygada-1918 liegt nicht als Datei vor; libre-caslon-display als Ersatz.",
  "Referenzen sind ein Blumen- und Wohnladen und eine Fahrradwerkstatt; eine Buchhandlung (Ocelot Berlin) nur über eine Drittseite gesehen, deshalb nicht aufgenommen."
 ],
 "raum": {
  "basis_px": 8,
  "skala_px": [
   4,
   8,
   12,
   16,
   24,
   32,
   48,
   64,
   96,
   136
  ],
  "sektion": "clamp(64px, 9vw, 136px)",
  "dichte": "mittel",
  "hinweis": "Wie ein aufgeräumtes Regal: Empfehlungen mit 24 px Abstand, Preislisten eng (8 px), Bildstreifen mit 6 px Spalt."
 },
 "raster": {
  "spalten": 12,
  "rand": "clamp(16px, 4vw, 56px)",
  "spalt": "clamp(12px, 2vw, 28px)",
  "max_breite": "1320px",
  "hinweis": "Hero 7/5 (Schaufenster links im Rahmen, Text rechts). Bildstreifen über volle Breite, Höhe clamp(360px, 57vh, 600px). Empfehlungen als Reihe."
 },
 "form": {
  "radius_klein": "2px",
  "radius_gross": "6px",
  "pille": false,
  "linie": "1px #D9CFBE in Preislisten; Felder 1px in Leise (3:1)",
  "schatten": "keiner",
  "hinweis": "Fast eckig wie Etiketten und Buchrücken; Nebenwege als Doppelkontur."
 },
 "bildsprache": {
  "licht": "Tageslicht durch das Schaufenster, warmes Ladenlicht am Abend.",
  "ausschnitt": "Schaufenster von außen, Regale und Tische im Anschnitt, Hände bei der Beratung, Produkte auf dem Ladentisch.",
  "personen": "Ja: Team mit Einwilligung; Kundschaft nur mit Erlaubnis.",
  "formate": [
   "4:5",
   "3:2",
   "1:1"
  ],
  "nicht": "Keine Hersteller-Pressebilder als Stimmung, keine Stockfotos von Einkaufstüten, keine fremden Marken ohne Erlaubnis.",
  "gewicht": "Wenige Bilder, groß: lieber ein Bild randlos oder über 7 bis 12 Spalten als drei mittelgroße; jedes Bild trägt eine Aussage, keins füllt nur Platz. Zeichnungen kräftig und groß als eigene Bildwelt: Strich ab 2,5 px, Flächen in den Rezeptfarben, mindestens 160 px, nie als dünne Strich-Icons."
 },
 "ton": {
  "anrede": "Sie, in jungen Läden du (dann durchgehend)",
  "saetze": "Persönlich und konkret: was, für wen, wer empfiehlt es, wann abholen.",
  "haltung": "Wie ein gutes Gespräch an der Kasse, kenntnisreich, ohne Verkaufsdruck.",
  "beispiele": [
   "Bis 18 Uhr reserviert, morgen ab 10 Uhr abholbereit.",
   "[Name] empfiehlt: [Titel], weil …"
  ],
  "nicht": "„Shoppingerlebnis“, „Top-Angebote“, „nur noch heute“, Superlative."
 },
 "hero_aufbau": {
  "raster": "12 Spalten: Schaufenster-Foto im Rahmen über Spalte 1 bis 7, Name, Satz, Status und Wege über 8 bis 12; mobil Foto oben.",
  "bild": "Echtes Schaufenster oder Laden innen, 4:5, eingefasst in die Ladenfarbe (inset-rahmen).",
  "h1": "clamp(2.5rem, 1.5rem + 4vw, 5rem), Libre Caslon Display; Name des Ladens oder ein Satz zum Sortiment, kein Label darüber.",
  "handlung": "„Reservieren und abholen“ (Schaufenstergrün gefüllt) und „Was gibt es Neues“ bzw. „Werkstatt-Termin“ (Doppelkontur).",
  "zusatz": "Status „Heute geöffnet bis …“ aus echten Zeiten direkt unter den Wegen."
 },
 "url": "https://cecodesign.de/lab/fundus/rezepte/laden-vor-ort-sortiment/",
 "tokens_css": "https://cecodesign.de/lab/fundus/rezepte/laden-vor-ort-sortiment/tokens.css",
 "bauplan": "https://cecodesign.de/lab/fundus/rezepte/laden-vor-ort-sortiment/bauplan.txt",
 "rezept_json": "https://cecodesign.de/lab/fundus/rezepte/laden-vor-ort-sortiment/rezept.json",
 "nicht_verwenden_ids": [
  {
   "ids": [
    "in-den-warenkorb-flug",
    "like-herz-burst"
   ],
   "grund": "Signaturen von d2c-produkt-zuerst"
  },
  {
   "ids": [
    "bento-grid-interaktiv"
   ],
   "grund": "Produkt-Bento gehört zu d2c; der Laden zeigt Abteilungen als Bildstreifen"
  },
  {
   "ids": [
    "live-uhr-und-standort"
   ],
   "grund": "Signatur von gastro-warm-appetitlich; der Status kommt aus echten Zeiten"
  },
  {
   "ids": [
    "flick-karten-stapel"
   ],
   "grund": "Signatur von friseur-salon-handschrift"
  },
  {
   "ids": [
    "marquee-laufband"
   ],
   "grund": "Neuheiten als Laufband sind nicht lesbar"
  },
  {
   "ids": [
    "zahlen-odometer"
   ],
   "grund": "keine hochgezählten Bestandszahlen"
  },
  {
   "ids": [],
   "grund": "Countdown, „nur noch 2“ ohne echten Bestand – künstliche Verknappung"
  },
  {
   "ids": [
    "smooth-scroll-lenis"
   ],
   "grund": "stört Reihe, Filter und Formular"
  },
  {
   "ids": [
    "konfetti-erfolg"
   ],
   "grund": "nach der Reservierung eine ruhige Bestätigung"
  },
  {
   "ids": [
    "papier-druck-textur"
   ],
   "grund": "Papier- und Karton-Fake; die Farben reichen"
  },
  {
   "ids": [],
   "grund": "„nachhaltig“, „plastikfrei“, „regional“ ohne Nachweis – Umweltaussagen nur mit Beleg (Leitfaden 8a)"
  }
 ],
 "alle_muster": [
  {
   "id": "akkordeon-panels",
   "rolle": "Signatur",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/galerien-slider/akkordeon-panels/meta.json"
  },
  {
   "id": "foto-hero",
   "rolle": "Hero",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/hero-layouts/foto-hero/meta.json",
   "variante": "inset-rahmen",
   "demo_url": "https://cecodesign.de/lab/fundus/hero-layouts/foto-hero/demo?v=inset-rahmen"
  },
  {
   "id": "oeffnungszeiten-status",
   "rolle": "Sektion: Heute geöffnet (Status im Kopf aus echten Zeiten; Sonderzeiten wie Advent, Inventur, Feiertage nach Bundesland)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/sektionen/oeffnungszeiten-status/meta.json",
   "variante": "kompakt",
   "demo_url": "https://cecodesign.de/lab/fundus/sektionen/oeffnungszeiten-status/demo?v=kompakt"
  },
  {
   "id": "css-native-karussell",
   "rolle": "Sektion: Neu und empfohlen (Empfehlungen des Teams mit Name und einem Satz, Preis inkl. MwSt.; Reihe mit fünf bis zehn Stücken; kein voller Shop nötig; Aktionen mit Zeitraum nur, wo der Preis frei ist: nicht für Bücher (Buchpreisbindung))",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/galerien-slider/css-native-karussell/meta.json",
   "variante": "produktreihe",
   "demo_url": "https://cecodesign.de/lab/fundus/galerien-slider/css-native-karussell/demo?v=produktreihe"
  },
  {
   "id": "karussell-steuerung",
   "rolle": "Sektion: Neu und empfohlen (Empfehlungen des Teams mit Name und einem Satz, Preis inkl. MwSt.; Reihe mit fünf bis zehn Stücken; kein voller Shop nötig; Aktionen mit Zeitraum nur, wo der Preis frei ist: nicht für Bücher (Buchpreisbindung))",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/galerien-slider/karussell-steuerung/meta.json",
   "variante": "fortschritt",
   "demo_url": "https://cecodesign.de/lab/fundus/galerien-slider/karussell-steuerung/demo?v=fortschritt"
  },
  {
   "id": "produktkarte-bildwechsel",
   "rolle": "Sektion: Neu und empfohlen (Empfehlungen des Teams mit Name und einem Satz, Preis inkl. MwSt.; Reihe mit fünf bis zehn Stücken; kein voller Shop nötig; Aktionen mit Zeitraum nur, wo der Preis frei ist: nicht für Bücher (Buchpreisbindung))",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/hover/produktkarte-bildwechsel/meta.json",
   "variante": "zweitbild",
   "demo_url": "https://cecodesign.de/lab/fundus/hover/produktkarte-bildwechsel/demo?v=zweitbild"
  },
  {
   "id": "aktion-mit-preisangabe",
   "rolle": "Sektion: Neu und empfohlen (Empfehlungen des Teams mit Name und einem Satz, Preis inkl. MwSt.; Reihe mit fünf bis zehn Stücken; kein voller Shop nötig; Aktionen mit Zeitraum nur, wo der Preis frei ist: nicht für Bücher (Buchpreisbindung))",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/sektionen/aktion-mit-preisangabe/meta.json",
   "variante": "zeitraum",
   "demo_url": "https://cecodesign.de/lab/fundus/sektionen/aktion-mit-preisangabe/demo?v=zeitraum"
  },
  {
   "id": "vorbestellung-abholung",
   "rolle": "Sektion: Reservieren und abholen (Artikel oder Wunsch als Text, Menge, Abholtag; Bestätigung, ab wann es bereitliegt und wie lange es zurückgelegt wird; ohne Online-Zahlung eine Reservierung, kein Kauf)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/sektionen/vorbestellung-abholung/meta.json",
   "variante": "backstube",
   "demo_url": "https://cecodesign.de/lab/fundus/sektionen/vorbestellung-abholung/demo?v=backstube"
  },
  {
   "id": "formular-fehlerzusammenfassung",
   "rolle": "Sektion: Reservieren und abholen (Artikel oder Wunsch als Text, Menge, Abholtag; Bestätigung, ab wann es bereitliegt und wie lange es zurückgelegt wird; ohne Online-Zahlung eine Reservierung, kein Kauf)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/zugang/formular-fehlerzusammenfassung/meta.json",
   "variante": "kompakt",
   "demo_url": "https://cecodesign.de/lab/fundus/zugang/formular-fehlerzusammenfassung/demo?v=kompakt"
  },
  {
   "id": "speisekarte-editorial",
   "rolle": "Sektion: Werkstatt und Service (nur Läden mit Werkstatt: Festpreise je Leistung mit Stand-Datum, Termin, freiwillig das Europäische Formular für Reparaturinformationen)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/sektionen/speisekarte-editorial/meta.json",
   "variante": "preisliste",
   "demo_url": "https://cecodesign.de/lab/fundus/sektionen/speisekarte-editorial/demo?v=preisliste"
  },
  {
   "id": "reparatur-richtpreise",
   "rolle": "Sektion: Werkstatt und Service (nur Läden mit Werkstatt: Festpreise je Leistung mit Stand-Datum, Termin, freiwillig das Europäische Formular für Reparaturinformationen)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/sektionen/reparatur-richtpreise/meta.json",
   "variante": "betrieb",
   "demo_url": "https://cecodesign.de/lab/fundus/sektionen/reparatur-richtpreise/demo?v=betrieb"
  },
  {
   "id": "termin-buchung-zwei-klick",
   "rolle": "Sektion: Werkstatt und Service (nur Läden mit Werkstatt: Festpreise je Leistung mit Stand-Datum, Termin, freiwillig das Europäische Formular für Reparaturinformationen)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/hero-layouts/termin-buchung-zwei-klick/meta.json",
   "variante": "vorauswahl",
   "demo_url": "https://cecodesign.de/lab/fundus/hero-layouts/termin-buchung-zwei-klick/demo?v=vorauswahl"
  },
  {
   "id": "zeichnungsfamilie-produkte",
   "rolle": "Sektion: Werkstatt und Service (nur Läden mit Werkstatt: Festpreise je Leistung mit Stand-Datum, Termin, freiwillig das Europäische Formular für Reparaturinformationen)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/glas-material/zeichnungsfamilie-produkte/meta.json",
   "variante": "laden",
   "demo_url": "https://cecodesign.de/lab/fundus/glas-material/zeichnungsfamilie-produkte/demo?v=laden"
  },
  {
   "id": "programm-kalender",
   "rolle": "Sektion: Veranstaltungen (Lesungen, Workshops, Probefahrten, Kranzbinden; Datum, Preis, freie Plätze; Liste nach Monat, Kalender erst ab etwa acht Terminen im Monat)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/sektionen/programm-kalender/meta.json",
   "variante": "programm",
   "demo_url": "https://cecodesign.de/lab/fundus/sektionen/programm-kalender/demo?v=programm"
  },
  {
   "id": "veranstaltung-detailseite",
   "rolle": "Sektion: Veranstaltung-Detailseite (je Termin eine Seite, aufgerufen aus der Liste: Lesung, Workshop oder Probefahrt mit Datum, Uhrzeit, Preis, Plätzen und Anmeldung; freie Plätze nur aus echter Quelle, Vergangenes mit Hinweis statt Fehlerseite)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/sektionen/veranstaltung-detailseite/meta.json",
   "variante": "anmeldung",
   "demo_url": "https://cecodesign.de/lab/fundus/sektionen/veranstaltung-detailseite/demo?v=anmeldung"
  },
  {
   "id": "teilen-und-kalender",
   "rolle": "Sektion: Veranstaltung-Detailseite (je Termin eine Seite, aufgerufen aus der Liste: Lesung, Workshop oder Probefahrt mit Datum, Uhrzeit, Preis, Plätzen und Anmeldung; freie Plätze nur aus echter Quelle, Vergangenes mit Hinweis statt Fehlerseite)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/mikroanimationen/teilen-und-kalender/meta.json",
   "variante": "veranstaltung",
   "demo_url": "https://cecodesign.de/lab/fundus/mikroanimationen/teilen-und-kalender/demo?v=veranstaltung"
  },
  {
   "id": "produkt-kaufbox-varianten",
   "rolle": "Sektion: Online kaufen (nur mit Shop: Kaufbox mit Gesamtpreis, Versand und Lieferzeit, Gewährleistungshinweis; Raten nur mit allen Pflichtangaben)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/sektionen/produkt-kaufbox-varianten/meta.json",
   "variante": "kompakt",
   "demo_url": "https://cecodesign.de/lab/fundus/sektionen/produkt-kaufbox-varianten/demo?v=kompakt"
  },
  {
   "id": "warenkorb-drawer",
   "rolle": "Sektion: Online kaufen (nur mit Shop: Kaufbox mit Gesamtpreis, Versand und Lieferzeit, Gewährleistungshinweis; Raten nur mit allen Pflichtangaben)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/sektionen/warenkorb-drawer/meta.json",
   "variante": "hinweis",
   "demo_url": "https://cecodesign.de/lab/fundus/sektionen/warenkorb-drawer/demo?v=hinweis"
  },
  {
   "id": "eu-gewaehrleistungshinweis",
   "rolle": "Sektion: Online kaufen (nur mit Shop: Kaufbox mit Gesamtpreis, Versand und Lieferzeit, Gewährleistungshinweis; Raten nur mit allen Pflichtangaben)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/sektionen/eu-gewaehrleistungshinweis/meta.json",
   "variante": "kaufbox",
   "demo_url": "https://cecodesign.de/lab/fundus/sektionen/eu-gewaehrleistungshinweis/demo?v=kaufbox"
  },
  {
   "id": "finanzierung-pflichtangaben",
   "rolle": "Sektion: Online kaufen (nur mit Shop: Kaufbox mit Gesamtpreis, Versand und Lieferzeit, Gewährleistungshinweis; Raten nur mit allen Pflichtangaben)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/sektionen/finanzierung-pflichtangaben/meta.json",
   "variante": "kaufbox",
   "demo_url": "https://cecodesign.de/lab/fundus/sektionen/finanzierung-pflichtangaben/demo?v=kaufbox"
  },
  {
   "id": "paginierung-mehr-laden",
   "rolle": "Sektion: Online kaufen (nur mit Shop: Kaufbox mit Gesamtpreis, Versand und Lieferzeit, Gewährleistungshinweis; Raten nur mit allen Pflichtangaben)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/sektionen/paginierung-mehr-laden/meta.json",
   "variante": "knopf",
   "demo_url": "https://cecodesign.de/lab/fundus/sektionen/paginierung-mehr-laden/demo?v=knopf"
  },
  {
   "id": "team-ueber-mich-layout",
   "rolle": "Sektion: Wer hier berät (das Team in einem Satz mit kleinen Porträts, Schwerpunkte und Lieblingsstücke)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/hero-layouts/team-ueber-mich-layout/meta.json",
   "variante": "statement",
   "demo_url": "https://cecodesign.de/lab/fundus/hero-layouts/team-ueber-mich-layout/demo?v=statement"
  },
  {
   "id": "karte-zwei-klick",
   "rolle": "Sektion: Aus dem Laden (Auswahl eigener Instagram-Bilder selbst gehostet mit Link zum Profil; Live-Feed erst nach Klick)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/hero-layouts/karte-zwei-klick/meta.json",
   "varianten_je_rolle": [
    {
     "rolle": "Sektion: Aus dem Laden (Auswahl eigener Instagram-Bilder selbst gehostet mit Link zum Profil; Live-Feed erst nach Klick)",
     "variante": "social",
     "demo_url": "https://cecodesign.de/lab/fundus/hero-layouts/karte-zwei-klick/demo?v=social"
    },
    {
     "rolle": "Sektion: Laden und Anfahrt (Adresse als Text, Bus und Bahn, Rad- und Lastenradstellplätze, Stufen am Eingang; Karte per 2-Klick)",
     "variante": "bild",
     "demo_url": "https://cecodesign.de/lab/fundus/hero-layouts/karte-zwei-klick/demo?v=bild"
    }
   ]
  },
  {
   "id": "firmendaten-strukturiert",
   "rolle": "Sektion: Laden und Anfahrt (Adresse als Text, Bus und Bahn, Rad- und Lastenradstellplätze, Stufen am Eingang; Karte per 2-Klick)",
   "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": "standort-detailseite",
   "rolle": "Sektion: Standorte (nur bei mehreren Häusern: je Standort eine eigene Seite mit Status aus echten Zeiten, Sortiment-Schwerpunkt, Bus und Rad, Stufen am Eingang; nie dieselbe Seite mit getauschtem Ortsnamen)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/sektionen/standort-detailseite/meta.json",
   "variante": "filiale",
   "demo_url": "https://cecodesign.de/lab/fundus/sektionen/standort-detailseite/demo?v=filiale"
  },
  {
   "id": "gutschein-konfigurator",
   "rolle": "Sektion: Gutscheine (nur mit Zahlungsdienst und Codeverwaltung; sonst „im Laden oder telefonisch“)",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/sektionen/gutschein-konfigurator/meta.json"
  },
  {
   "id": "widerruf-und-kuendigung-schaltflaeche",
   "rolle": "Sektion: Vertrag widerrufen, Gewährleistung, Barrierefreiheit (Footer und mobiles Menü, ohne Login; nur bei Online-Verkauf bzw. Online-Termin nach BFSG prüfen lassen)",
   "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: Vertrag widerrufen, Gewährleistung, Barrierefreiheit (Footer und mobiles Menü, ohne Login; nur bei Online-Verkauf bzw. Online-Termin nach BFSG 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": "vt-shared-element-morph",
   "rolle": "Seitenwechsel",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/seitenuebergaenge/vt-shared-element-morph/meta.json"
  },
  {
   "id": "native-popover-dropdowns",
   "rolle": "Navigation",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/navigation/native-popover-dropdowns/meta.json"
  },
  {
   "id": "sticky-shrink-header",
   "rolle": "Navigation",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/navigation/sticky-shrink-header/meta.json"
  },
  {
   "id": "brotkrumen-pfad",
   "rolle": "Navigation",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/navigation/brotkrumen-pfad/meta.json",
   "variante": "voll",
   "demo_url": "https://cecodesign.de/lab/fundus/navigation/brotkrumen-pfad/demo?v=voll"
  },
  {
   "id": "clip-path-bild-reveal",
   "rolle": "Scroll",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/scroll/clip-path-bild-reveal/meta.json"
  },
  {
   "id": "bild-zoom-in-maske",
   "rolle": "Hover",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/hover/bild-zoom-in-maske/meta.json",
   "variante": "basis",
   "demo_url": "https://cecodesign.de/lab/fundus/hover/bild-zoom-in-maske/demo?v=basis"
  },
  {
   "id": "karte-ganzflaechig-klickbar",
   "rolle": "Hover",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/hover/karte-ganzflaechig-klickbar/meta.json",
   "variante": "raster",
   "demo_url": "https://cecodesign.de/lab/fundus/hover/karte-ganzflaechig-klickbar/demo?v=raster"
  },
  {
   "id": "einblenden-starting-style",
   "rolle": "Mikroanimation",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/mikroanimationen/einblenden-starting-style/meta.json"
  },
  {
   "id": "animiertes-select",
   "rolle": "Mikroanimation",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/mikroanimationen/animiertes-select/meta.json"
  },
  {
   "id": "footer-newsletter-mit-persoenlichkeit",
   "rolle": "Footer",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/footer/footer-newsletter-mit-persoenlichkeit/meta.json",
   "variante": "basis",
   "demo_url": "https://cecodesign.de/lab/fundus/footer/footer-newsletter-mit-persoenlichkeit/demo?v=basis"
  },
  {
   "id": "button-zustaende",
   "rolle": "Buttons",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/mikroanimationen/button-zustaende/meta.json"
  },
  {
   "id": "kontur-button-zeichnen",
   "rolle": "Buttons",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/buttons/kontur-button-zeichnen/meta.json",
   "variante": "doppel",
   "demo_url": "https://cecodesign.de/lab/fundus/buttons/kontur-button-zeichnen/demo?v=doppel"
  },
  {
   "id": "token-editorial-langsam",
   "rolle": "Animationsstil",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/animationsstile/token-editorial-langsam/meta.json"
  },
  {
   "id": "token-toggle-asymmetrisch",
   "rolle": "Animationsstil für UI",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/animationsstile/token-toggle-asymmetrisch/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"
  },
  {
   "id": "tabellenziffern",
   "rolle": "Schrift-Technik",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/typo-techniken/tabellenziffern/meta.json"
  },
  {
   "id": "lesesatz-text-wrap",
   "rolle": "Schrift-Technik",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/typo-techniken/lesesatz-text-wrap/meta.json"
  },
  {
   "id": "gemischte-schnitte-zeile",
   "rolle": "Schrift-Technik",
   "demo": true,
   "meta": "https://cecodesign.de/lab/fundus/typo-techniken/gemischte-schnitte-zeile/meta.json"
  }
 ]
}
