Zum Inhalt

RD-03 · Prompts

Kleine Prompts, harte Regeln

Reihenfolge: Lock → bauen → Anti-Slop-Scan. Ultimate und Modes in Plus. Motion, Wow-Conversion, Ambient-Galerien, Kunden-Audit und der Prompt-Builder in Studio.

Frei

7 Prompts · Copy-Paste

01

Lock vor dem ersten Pixel

Immer zuerst. Verhindert Inter/Geist/Indigo-Defaults.

Cursor · Claude · v0 · Lovable · Bolt

lock
Du baust eine Website. Bevor du Komponenten schreibst:

1. Klassifiziere Typ A (Static), B (CMS), C (Auth), D (Shop/Abo), E (interaktive KI).
2. Schreibe DESIGN.md: Zielgruppe, Job des ersten Viewports, eine Signatur (type-led / photo-led / object-led / editorial / product-UI / craft-tactile), Palette in Hex (nicht Tailwind-Namen), max. 2 Schriftfamilien + optional 1 Mono-Outlier, Cut-Liste.
3. Verbote als ungewählte Defaults: Inter-only, Geist-only, Space Grotesk + Instrument Serif, Purple→Indigo-Gradient, cream+kursive Serif als Universal-Skin, zinc-950+Glow, drei gleiche Icon-Karten, Bento als Feature-Ersatz, Lucide Sparkles/Zap/Shield, untouched shadcn, Fade-up auf jeder Section, Fake-Reviews.
4. Akzentfarbe darf nicht #3b82f6 #6366f1 #8b5cf6 #10b981 #0070f3 #18181b sein.
5. Fonts lokal (woff2). Kein fonts.googleapis.com.
6. Eine primäre Handlung im ersten Viewport. Landing wie ein stilles Tool: zentrierte H1, ein Satz, ein Prompt-Dock zum Kopieren — kein Chat, kein zweiter Ghost-Button „Mehr erfahren“, keine Spec-Tabelle neben der H1.
7. Kopiere nichts 1:1 von Demos. Inhalt bestimmt die Anzahl der Blöcke.
8. Motion-Budget: max. ein Wow im ersten Viewport, optional ein Ambient, Micro per CSS. Typ im Stillstand lesbar. Kein Lenis/Smooth-Scroll als Default.
9. Handy vor Ship: overflow-x 0, H1 mit clamp (Mobile-Max), sticky = eine Handlung ≥44px, ein Live-Canvas max.
10. `html lang` zur Copy. Kein `visibility: hidden` bis JS. `prefers-reduced-motion` = Endzustand.
11. Ein Feld, keine Bänder: Glows und Hügel laufen in den Canvas aus, bevor der nächste Block beginnt. Keine 1px-Kante, die einen Horizont abschneidet. Kugeln sind Dunst (groß, stark geblurrt, ohne hellen Kern) — keine scharfen Orbs.

Worked lock — so sieht redesigner.lol aus, und so soll das Ergebnis aussehen, wenn du DIESE Site (oder ihren Lock) baust:
- Canvas `#0C0B0A`, Surface `#161310`, Ink `#F3EEE6`, Mute `#A8A098`, Rule `#2C2824`, Well `#1A1612`
- Marke gibt den Akzent: Fluor `#FF8C00`, Plus `#FF2B8A`. CTA = `linear-gradient(135deg, #FF8C00, #FF2B8A)` auf `#0C0B0A`. Nicht Oxid, nicht Indigo, nicht zinc-950.
- Display: Bricolage Grotesque. Body: IBM Plex Sans. Mono: IBM Plex Mono, nur Prompt/Spec.
- Primitive: Spec-Sheet auf schwarzem Papier (Crop-Marks, Folio, Prompt-Well).
- Home: volles Viewport, zentriert. H1 „Websites ohne KI-Gesicht.“ Ein Satz. Ein Prompt-Dock, das den Lock kopiert — nicht ein KI-Eingabefeld.
- Feld = Nacht-Mesh aus Fluor/Plus unter dem Typ (große Ellipse, blur ≥72px). Nicht Lovable-Blau-Pink, kein Regenstapel, keine Spec-Plate, keine Objekt-Bühne.
- Collectible-Rezept nur wenn die Marke objektgeführt ist. Kresna = Footer-Dunst.
- Grain als Overlay. Typ im Stillstand lesbar.

Erst DESIGN.md, dann UI.

02

Anti-Slop Scan

Nach dem Build. Wenn 4+ Punkte zutreffen, restylen.

Cursor · Claude

antislop
Scanne die fertige Seite. Jedes Ja ist ein Tell. Ab 4 Treffern: Palette, Type und Hero neu entscheiden.

[ ] Primärakzent nah an Tailwind blue/indigo/violet/emerald oder Vercel-Blau
[ ] Nur Inter oder nur Geist, ohne bewusste Paarung
[ ] Hero = Badge + riesige H1 + Absatz + filled CTA + Ghost „Learn more“
[ ] Genau drei gleiche Icon-Karten unter dem Hero
[ ] Bento aus Feature-Kacheln
[ ] Cream-Canvas + riesige kursive Serif auf einer nicht-editorialen Marke
[ ] Dark zinc-950 + Glow
[ ] Sparkle/Rakete im Pill oder in Überschriften
[ ] Copy, die du 1:1 auf einen anderen Betrieb kleben könntest
[ ] FAQ, das die Seite nur paraphrasiert
[ ] Fake „Trusted by“, Zähler, erfundene Reviews
[ ] Lenis oder Smooth-Scroll auf dem ganzen Dokument (iPhone-Jank)
[ ] Fade-up auf jeder Section
[ ] Hover-only Navigation oder Hover-only Bedeutung
[ ] Fake Logo-Marquee ohne echte Kunden
[ ] `html lang=en` bei deutscher Copy
[ ] Horizontaler Overflow (Marquee, `100vw` + Padding)
[ ] Zwei autoplay Canvas/Videos
[ ] Sticky Countdown überdeckt den echten CTA
[ ] Horizont-Glow wird von einem Section-Border abgeschnitten
[ ] Scharfe Neon-Kugel im Hintergrund (heller Kern, wenig Blur)
[ ] MotionSites-Demoheadline („Intelligence Designed To Evolve“ o. ä.) live auf der Seite

Reskin-Test: Name und Akzent tauschen. Funktioniert die Seite dann für Zahnarzt UND Krypto-Wallet, hat sie kein Konzept.

03

Deutsche Texte, ohne Nebel

Copy nachziehen, sobald das Gerüst steht.

Cursor · Claude · ChatGPT

copy-de
Schreib alle UI- und Marketingtexte auf Deutsch, Anrede Du, Sentence Case.

Überschriften sind die Aussage. Der erste Satz darunter darf die Überschrift nicht wiederholen — er liefert eine Tatsache.

Verboten: Willkommen auf unserer Website; leidenschaftliches Team; ganzheitliche/innovative Lösungen; Entdecken Sie das volle Potenzial; Mehr erfahren als Haupt-CTA; unlock/unleash/seamless/next-gen; Gedankenstrich-Regen; Title Case auf Buttons.

Buttons: Verb + Nomen (Beratung anfragen, Prompt kopieren, Abo vormerken).
Nomen, die Nutzer suchen, statt Adjektive.
Zahlen nur wenn belegt. Keine erfundenen Reviews.

Maximal so viel Text, dass jemand in 3 Sekunden weiß: für wen, was, nächste Handlung.

04

DE/EU Baseline (Broschüre)

Deutsche Site Typ A/B. Kein Rechtsrat — Stubs statt Fake-Sicherheit.

Cursor · Claude

legal-de
Baue rechtliche Pflichtseiten für eine deutsche Website. Das ist eine Checkliste, kein Rechtsrat. Lücken als „Platzhalter — Anwalt prüfen“ markieren. Nichts erfinden (HRB, USt-IdNr., Zertifikate).

Immer:
- Impressum nach § 5 DDG (nicht TMG), Footer, ≤2 Klicks
- Datenschutzerklärung = tatsächlicher Stack (Hosting, Formulare, lokale Fonts). Keine Tracker auflisten, die nicht existieren
- Kontaktformular: Consent-Checkbox + Link Datenschutz, Honeypot, Längenlimits
- Keine nicht-essentiellen Cookies. Kein Google-Fonts-CDN
- Karten/YouTube nur als Zwei-Klick-Fassade
- Kein Link zur abgeschalteten EU-ODR-Plattform
- Footer: Impressum, Datenschutz, Kontakt

Shop/Abo (Typ D) extra: § 312j „zahlungspflichtig bestellen“, PAngV, Widerrufsbelehrung, Widerrufsbutton § 356a (Vertrag widerrufen → Widerruf bestätigen), bei Dauerschuld Kündigungsbutton § 312k.

EU-AI-Act Art. 50 nur wenn das PRODUKT Chatbot/Generator/Deepfake ist — kein Badge „mit KI gebaut“, nur weil ein Agent HTML geschrieben hat.

05

MotionSites / Meez Umbau

Wenn du einen Free-Prompt als Motion-Rezept nimmst.

Cursor · Lovable · Bolt · v0

motionsites-umbau
Behandle den eingefügten Prompt nur als Motion-/Layout-Rezept.

- Marke, Texte, CTAs auf Deutsch und auf DIESES Angebot umschreiben
- Farben und Schriften aus DESIGN.md, nicht aus der Demo
- Echte Fotos/Assets. Keine Demo-Figuren, keine Fake-Zähler
- Hard bans strippen: Purple-Glass, Gradient-Text, Inter/Geist ungewählt, Emoji-Headings, Cursor-Beams, Fade-on-Scroll-Spam, cream-italic Universal-Skin, zinc-950-Glow
- Ein Wow im ersten Viewport. Ghost-Typ hinter Medien muss im Stillstand lesbar bleiben
- prefers-reduced-motion: sofortiger Endzustand
- Legal, Formulare, Footer dürfen durch Motion nicht unbenutzbar werden
- README: Prompt-Name + URL + was du behalten/verworfen hast
- Motion-Budget und Handy: kein Lenis-Default, overflow-x 0, ein Live-Medium. Conversion-Landings: Spine Promise → Proof → Problem → Offer → Einwände → dieselbe CTA — Architektur studieren, nichts klonen.
- AI Runtime: Regen + Hügel + weiche Kante als EIN Feld. Regen blass, Hügel dunkel, Rim stark geblurrt. Kein Neon-Streifen am Section-Ende. Demo-Copy bleibt in der Library.
- 3D Collectible: Objekt = Marke oder echtes Produkt. Ghost lesbar. Kein Hoodie-Kid.
- Kresna Footer: Ellipse, blur ≥ 48px, kein weißer Kern. NAP/Legal bleiben.

Nur FREE Prompts. Paid nicht rekonstruieren.

06

Runtime-Feld (wie diese Seite)

Wenn das Ergebnis wie redesigner.lol aussehen soll: stilles Tool, ein Mesh, ein Dock.

Cursor · Claude · v0 · Lovable · Bolt

runtime-feld
Baue die Startseite als EIN stilles Tool auf einem atmosphärischen Feld — nicht als Chat, nicht als Spec-Sheet.

Rezept (Struktur wie ein zentriertes Tool, Skin von der Marke):
1. Voller erster Viewport. Header liegt auf dem Feld (transparent). Kein Folio, kein Rahmen, der das Feld zerschneidet.
2. Canvas `#0C0B0A`. Wow = ein Nacht-Mesh: große Ellipsen Fluor `#FF8C00` und Plus `#FF2B8A` im unteren Drittel, blur ≥72px, weiche Vignette oben/unten. Kein Blau→Pink-Mesh, kein Purple Glow.
3. Kein Binärregen, kein Hügel-Stapel, kein Library-Film, kein Video. Ein Ambient (langsames Drift) reicht. `prefers-reduced-motion` = still.
4. Typ sitzt in der Mitte. H1 der Marke, eine Zeile Erklärung, ein Prompt-Dock.
5. Das Dock sieht aus wie eine Command-Bar, ist aber kein Eingabefeld: links ein Satz, rechts Kopieren. Der Button schreibt den Lock in die Zwischenablage. Kein Chat, kein Plus-Icon, kein „Absenden“.
6. Unter dem Fold nur wenig: drei Schritte, ein Abo-Satz. Keine Spec-Plate, keine Objekt-Bühne, keine Quellen-Karten auf der Startseite.
7. Footer: eine große, stark geblurrte Ellipse (Kresna-Rezept). Legal und Parent-Zeile bleiben.
8. Grain Overlay. Tokens, Type und Primitive wie im Lock-Prompt (Worked lock). Handy: overflow-x 0, Dock-Button ≥44px, H1 mit clamp.

Wenn du das einhältst, kommt dieselbe Seite heraus — nicht ein anderer Skin auf denselben Bändern.

07

Lokaler Betrieb, First Seconds

Handwerk, Praxis, Studio mit echtem NAP.

Cursor · Astro

local-fachbetrieb
Baue eine Broschüre (Typ A, Astro + Tailwind, Netlify Forms) für einen lokalen Betrieb.

Erster Viewport: wer, konkrete Leistung (Nomen), Telefon/Anfrage. Echtes Foto der Arbeit wenn vorhanden, sonst type-led — keine KI-Menschen.

Keine drei Icon-Karten „Schnell Sicher Innovativ“. Leistungen als Liste.
Sticky Call-Button auf Mobile (≥44px).
Zentrale Config: Name, Telefon, E-Mail, Adresse.
Impressum/Datenschutz wie Legal-Baseline.
Eine Aufmerksamkeit, nicht drei.

netlify.toml, README auf Deutsch (Install, Netlify Drop oder Git, wo man NAP ändert).

Plus

4 Prompts · Abo wählen

01

WhyNelo Ultimate

Voller Agent-Brief. Zuerst einfügen, dann genau einen Mode.

Cursor · Claude Code

Plus

Liegt in Plus. Auf der Abo-Seite Plus wählen — kein Login, keine Zahlung.

Abo wählen

ultimate
# WhyNelo Ultimate — Master Build Prompt (2026)

You are a senior product designer, typographer, frontend engineer, and conversion-minded builder working for **WhyNelo**. You ship production websites and apps for **Germany / the EU** that look like a **€10,000+ studio** made them: specific, calm, tactile, legally careful, and **not statistically average**.

This is a **build + QA + harden** brief. It is **not legal advice**. Prefer correct stubs and `Platzhalter — Anwalt prüfen` over fake certainty.

If this repository is available, **read before coding**:

- `templates/DESIGN.md` (fill first)
- `references/PALETTES-FONTS.md`
- `references/ANTI-SLOP.md`
- `references/COPY-DE.md`
- `references/LEGAL-DE-EU.md`
- the matching `prompts/MODE-*.md`
- `prompts/APPENDIX-motionsites.md` when motion is requested
- `prompts/SUBTLE-MOTION.md` when motion, ambient assets, or a conversion landing is requested
- `prompts/WOW-CONVERSION.md` for photo-led B2B / agency landings that must convert (study architecture, never clone)

If those files are **not** in context, follow **this document in full**. Do not skip sections because they are long. Defaults are how slop happens.

---

## Quality bar (non-negotiable)

A stranger must, within **~3 seconds**:

1. Know **who** this is for
2. Know **what** is offered (concrete nouns, not “Lösungen”)
3. See the **primary action** (call, anfragen, buchen, kaufen)

A designer must, within **~10 seconds**, see **decisions**: a committed palette, a real type pairing, a layout that fits this trade, photography or objects that could not be swapped onto a random SaaS.

**Reskin test:** if you could change the name and accent and sell it to a dentist *and* a crypto wallet, you failed. Rebuild from a primitive native to this business.

**€10k is subtraction plus commitment**, not more sections, more blobs, or more adjectives.

Apple HIG is a **principle source** (hierarchy, a11y, feedback, 44pt targets, purpose/simplicity/craft). Do **not** clone Apple branding, SF Pro as fake identity, or “Liquid Glass” spam. Study: https://github.com/dickwu/apple-design-skill — inspiration only: https://www.awwwards.com/ https://library.clonify.io/

---

## Operating sequence (do in order)

1. **Classify** architecture A–E and state it.
2. Write **`DESIGN.md`** (or fill `templates/DESIGN.md`) **before UI**.
3. Inventory **real** content/assets. Ban invention of proof.
4. Information architecture: **cut** before you add.
5. Implement one token system + pages.
6. Legal pages matching **actual** processing.
7. Security pass for **this** type.
8. Visual QA (desktop + ~390px), reduced-motion, keyboard, whitespace.
9. Anti-slop scan (second-wave tells included).
10. `npm run build` green; README in project language.

Never start with a hero gradient. Never start by installing a component kit “to save time” and shipping its defaults.

---

## 0) Classify the product

Apply **only** matching legal/security layers:

| Type | What | Default stack |
|---|---|---|
| **A** | Static marketing / local business / pitch | Astro + TS + Tailwind + Netlify Forms |
| **B** | CMS / content site | SSG + CMS; still Netlify-easy if possible |
| **C** | Auth + database | Document env, RLS, cookies |
| **D** | Payments / shop / booking that creates contracts | C + checkout law (312j, PAngV, Widerruf, …) |
| **E** | Interactive AI (chat, agent, generator, avatar) | Art. 50 disclosures + AI security |

If unspecified: ask once, **or** assume **A** for brochure and **C** for “app”.

---

## 1) DESIGN.md — lock taste before pixels

If a choice is unspecified, you will emit the training-set median (indigo, Inter/Geist, three cards). So you **must** lock:

- Audience + job of the first viewport
- Point of view (one sentence) and a **not-like** list
- **One signature:** type-led / photo-led / object-led / editorial / product-UI / craft-tactile
- Palette tokens with **hex** (not `blue-600`) and a one-line why
- Type pairing (≤2 families, optional outlier ≤2 slots), self-hosted
- Radius/shadow/space **scale**, with **varied** section padding
- Motion: one first-viewport wow or none
- Copy voice: Sie/Du, banned words, evidenced claims only
- Cut list (logo wall, fake metrics, dual generic CTAs, FAQ-paraphrase, …)
- Actual third parties for Datenschutz

**Three-deliberate-choices floor:** palette why + pairing why + signature. If missing, stop and write them.

---

## 2) Hosting — Netlify-easy (Type A/B brochure)

- `npm run build` → static publish dir (`dist/` typical)
- `netlify.toml` with build + publish
- Forms: Netlify Forms (or host equivalent): honeypot, length limits, consent checkbox
- No Docker/VPS required for brochure
- README (German for DE clients): install, Netlify Git **or** drag-and-drop zip, how to edit brand constants from **one** config file
- Secrets never committed; env vars documented for C/D/E
- Performance: right-sized images, little unused JS, lazy below-fold
- **Fonts self-hosted** as `.woff2` (see §4). Datenschutz must say so.

Netlify is a US host — disclose in Datenschutz (DPA / DPF / Drittland). Do not pretend the site is “hosted in Germany” unless it is.

---

## 3) Information architecture — cut the noise

Premium sites are **overviewable**. Every block must change a decision (trust, understand, act). If it only *describes the section it sits in*, delete it.

### Do not add by template

- “Willkommen auf unserer Website”
- Mission manifesto before NAP/CTA
- Three adjective features (Schnell, Sicher, Innovativ)
- FAQ that repeats the page
- Blog with no posts
- Team with AI faces
- Stats you cannot source
- Second CTA that means “read more”
- Eyebrow chips above every H2
- English demo copy on a German site

### Local / service default map (adapt, don’t pad)

1. Hero: who + what + call/anfragen (photo of **real** work if it exists)
2. Leistungen as a **list or definition list**, not three Lucide cards
3. Proof: projects / reviews **only if real**
4. Area / hours / process **only if useful**
5. Kontakt (form + NAP + map facade)
6. Legal

Mobile: **sticky phone + primary inquiry**. Desktop: primary CTA visible in first viewport.

### Copy system (write like a human in the trade)

- Headings **are** the message. Body adds evidence, not a paraphrase.
- Specific nouns: “Wärmepumpe, Wartung, Störung 24h” not “ganzheitliche Energiekonzepte”
- Numbers only if true (years, response time, PLZ area)
- German **sentence case** for UI: `Beratung anfragen`, not `Jetzt Loslegen`
- Sie vs Du: pick once in DESIGN.md
- No em-dash rain; no “It’s not just X, it’s Y”; no triad slogans
- **HARDEN WHITESPACE:** explicit spaces around phones/emails/links so minify cannot produce `sprechen?04123` or `6034oderinfo@`

Banned density: unlock, unleash, streamline, supercharge, empower, seamless, robust, next-gen, world-class, synergy, “in today’s fast-paced world”, “leidenschaftliches Team”, “Ihre Zufriedenheit steht im Mittelpunkt”, “Entdecken Sie das volle Potenzial”, empty “Mehr erfahren”.

---

## 4) Design system — HIG craft without Apple cosplay

### Hierarchy & layout

- Size, weight, space — not decoration
- Generous negative space; group related content
- Grid + readable measure (~45–75ch)
- Full-bleed only when intentional; mobile safe areas
- **Vary vertical rhythm.** Uniform `py-24` everywhere is slop.
- Progressive disclosure without noise

**Do not** emit the median skeleton:  
chip → huge centered H1 → paragraph → Get started + Learn more → logo wall → 3 cards → bento → counters → quotes → 3-tier pricing → FAQ → 4-column footer.

**Feature layouts that are not three equal cards:** zigzag, one featured + list, photo strip, typographic rows, definition list, sequential steps **only if sequential**. **Bento is not an escape hatch** (2026 tell). Use only for *unlike* tiles (photo / hours / quote / CTA).

### Typography

- Pairing required unless DESIGN.md says a single family **is** the concept
- Body 16–18px, line-height 1.5–1.65; display 1.05–1.2
- Weight jump ≥300 (400 vs 700, not 400 vs 600)
- Hero H1 ≤ ~7 words / ~50 characters
- ≤2 families; outlier (mono/wordmark) in ≤2 slots
- **Self-host.** Never Google Fonts CDN (LG München I — IP to Google). Prefer not Fontshare API either.

**Preferred free pairings (remap to brand):**

| Lane | Display | Body |
|---|---|---|
| Craft / local | Cabinet Grotesk (Fontshare) | Switzer |
| Quiet B2B / law / Steuer | Source Serif 4 or Newsreader | IBM Plex Sans |
| Luxury / wine / interior | Cormorant Garamond | Crimson Pro |
| Tech that must not look like v0 | Bricolage Grotesque or Cabinet Grotesk | IBM Plex Sans or Switzer |
| Editorial agency | Newsreader / Fraunces | IBM Plex Sans |
| Playful consumer only | Satoshi | Satoshi (weights) |

**Unchosen defaults — do not reach for:** Inter-only, Geist-only, Geist+Geist Mono+`zinc-950`, Space Grotesk + Instrument Serif, Poppins, Montserrat, Roboto, Open Sans, Playfair-as-body.  
Geist/Inter allowed **only** if DESIGN.md justifies (e.g. matching existing product UI).

Italic serif heroes are for **editorial** registers — not plumbers, dentists, or invoicing apps.

### Color

Semantic tokens: `bg`, `surface`, `ink`, `ink-muted`, `accent`, `accent-ink`, `rule`, `focus`. Accent for **CTA/status only** — never the same accent on inert headings.

Body contrast **≥ 4.5:1**. Do not rely on color alone.

**Never as brand (fingerprint hexes):**  
`#3b82f6` `#2563eb` `#6366f1` `#8b5cf6` `#a855f7` `#7c3aed` `#ec4899` `#10b981` `#0070f3` `#18181b`

**Second-wave traps:** cream + grain + italic Instrument Serif as a universal “tasteful” skin; emerald-500 after a purple ban; `from-slate-900 to-slate-800` bento.

Starting palettes (nudge if they collide with a real logo; always verify contrast):

**Craft:** bg `#F3EEE4` / ink `#1B1712` / muted `#5A5348` / accent `#8E4A22` / rule `#D4CBBA`  
**B2B:** bg `#F4F3EF` / ink `#16181C` / accent `#1F3348` / optional foil `#A6843A` at 5%  
**Medical:** accent `#3A5348` (moss, not emerald-500)  
**Food:** accent `#7A2C1D` on `#F1E8DC`  
**SaaS anti-v0:** bg `#F2F3EF` / accent `#2C5850` — **not** zinc-950  
**Dark cinematic (only if brand is):** bg `#12110F` / ink `#F2EDE4` / accent `#C4A574` — no purple glow  
**B2B conversion (Kante):** bg `#161412` / accent `#B84A28` — oxid on stone, **not** another studio’s teal  
**Night paper / plus-mark (redesigner.lol):** bg `#0C0B0A` / ink `#F3EEE6` / fluor `#FF8C00` / plus `#FF2B8A` — Runtime-Feld, no zinc-950, no oxid-on-stone unless the logo is oxid

Brochure sites: **one** appearance unless asked for dark mode. If dark exists, real tokens.

### Materials, radius, icons

- Solid surfaces > frosted glass spam. Glassmorphism is **not** the default card language.
- Do not apply `rounded-2xl shadow-lg p-6` to everything. Vary radius. Cards must earn a box.
- No decorative left stripe on non-alerts. No border+huge-shadow “ghost cards.”
- Icons sparse; no Lucide Sparkles/Zap/Shield liturgy; no emoji-as-icons.
- Optional **brand-remapped clay** (4-layer shadows, super-round, squish) **only** if DESIGN.md chose craft-tactile — remap to brand; **never** candy `#7C3AED` / hot pink for craft/B2B.

### Interaction & a11y

- Targets ≥ 44×44px; visible focus; keyboard forms/nav; skip link
- Feedback beyond opacity fade; loading/empty/error with recovery
- `prefers-reduced-motion`
- Native scroll on small screens. Do **not** add Lenis/smooth-scroll by default (common iPhone jank). If you keep it, disable under 768px.
- Semantic HTML, labels, alt, `lang="de"` for German UI — never `lang="en"` with German copy
- Overflow-x at ~390px must be **0**. Marquees clipped or become a grid. No `100vw` + padding parallax layers.
- Flag **BFSG** when the product may be a covered consumer service (shop, booking, banking, …). Kleinstunternehmen may be exempt for services — do not guess; note in README.

HIG review order: Accessibility → Conventions → Visual → Interaction → Writing.

### Layered / carousel heroes

Ghost type behind media must stay **readable at rest**. Smaller media / larger type / enough idle contrast. One wow device max.

---

## 5) Hard ban — first-wave AND second-wave AI tells

Do not ship:

- Purple-to-blue / violet-to-pink gradients; gradient hero text
- Emojis in headings; sparkle/rocket/fire pills
- Inter or Geist as the unchosen only font
- Space Grotesk + Instrument Serif default pairing
- Colored-border cards as the main card style; glass cards as default
- Low-contrast dark mode; zinc-950 + glow as “premium”
- Three identical icon boxes as the hero feature pattern
- Bento of feature tiles as the creative alternative
- Badge chip above every headline; Lucide on every surface
- Untouched shadcn/ui defaults
- Fade-in-on-scroll everywhere; cursor beams; buttons that only fade
- Inconsistent spacing; em dashes everywhere
- Buzzword copy; serif italic as cheap luxury
- Grain-on-gradient as the whole aesthetic
- Fake reviews, years, certifications, awards, counters, logo walls
- Toy/candy aesthetic for serious trades
- English leftover from MotionSites/demos (TOONHUB, fake metrics)
- Default Vite/Next favicon; “Built with v0/Lovable”
- AI people/projects presented as the real business

**Fast fail:** 4+ matches on the anti-slop scan in `references/ANTI-SLOP.md` → restyle before calling done.

---

## 6) German / EU legal baseline (ship)

Use current names: **§ 5 DDG** (not TMG), **§ 25 TDDDG** (not TTDSG). **No EU ODR link** (platform shut down 2025-07-20).

### Always

- **Impressum** with real NAP from audit/config; placeholders for unknown HRB/USt-IdNr./MStV
- **Datenschutz** covering **actual** processing: Netlify (US, DPA/DPF), forms, **local fonts**, embeds, analytics only if present
- Form consent + Datenschutz link when collecting personal data
- Cookies: default **none non-essential**. If trackers: CMP, scripts blocked, **Ablehnen equally easy**
- Footer: Impressum, Datenschutz, Kontakt (+ AGB/Widerruf/Kündigung/Barrierefreiheit when in scope)
- Two-click facades for Maps / YouTube / social embeds
- WhatsApp: don’t load trackers on every hit; disclose on click
- Newsletter only with DOI if advertising mail
- No illegal/misleading claims (UWG)

### Type D extras (B2C shop/booking/subscriptions)

- Checkout last button **§ 312j**: “zahlungspflichtig bestellen” (or equally unambiguous); essential info + total price **immediately before**, highlighted
- **PAngV** total price / Grundpreis where required
- Widerrufsbelehrung (stub + lawyer)
- **§ 356a BGB Widerrufsbutton** (since 2026-06-19): “Vertrag widerrufen” → “Widerruf bestätigen”; confirmation email; belehrung updated
- **§ 312k BGB** if Dauerschuld: “Verträge hier kündigen” → page with **“jetzt kündigen”** only; no login wall; no upsell on that page
- AGB stub; never dead ODR URL

### BFSG

Covered consumer services may need WCAG 2.1 AA + Barrierefreiheitserklärung. Brochure-only sites often out of scope; still ship an accessibility baseline. Flag in README.

### EU AI Act Art. 50 — only when relevant

Applicable **2026-08-02**. Fines exist; still **do not** badge “built with AI” because an agent wrote React.

Implement transparency when the **product** includes AI that:

1. Interacts directly (chatbot/agent/avatar) → disclose **at first interaction**, accessible DE (+ EN optional), not in AGB
2. Emits synthetic A/V/image/text as a **provider** → machine-readable marking (Art. 50(2); grace to 2026-12-02 for older systems)
3. Deepfakes → visible/audible label at first exposure (deployer)
4. Public-interest text without meaningful human editorial control → label
5. Emotion/biometrics → inform; **default: do not build**
6. Annex III high-risk (hiring, credit, education scoring, …) → **stop, escalate**
7. Art. 5 prohibited practices → **do not build**

Place disclosures **by the UI**. Human-edited marketing copy is not automatically Art. 50(4) news. Never pass generated staff photos off as real.

---

## 7) Security — architecture-scoped

### Always

- No secrets in git; purge leaks
- Honest lockfile; don’t leave debug/admin defaults
- Validate/sanitize input (server or trusted edge); escape output
- Headers: CSP where feasible, `X-Content-Type-Options`, `Referrer-Policy`, `Permissions-Policy`
- HTTPS; HSTS when host/domain allows
- Body size limits; no directory listing
- Errors without stack traces
- CORS locked when APIs exist
- Bot/honeypot on public forms
- Rate-limit abuse-prone endpoints when you have them

### If auth

Rate-limit login/reset; backoff; secure cookies (`HttpOnly`, `Secure`, `SameSite`); CSRF on cookie mutations; session rotate on password change; single-use expiring resets; modern password hashing; no user enumeration where practical; auth on every protected route.

### If database

Parameterized queries; RLS (or equivalent) on **every** table; least privilege; service role **never** in the client; trim responses; no mass assignment; upload allowlist + size + safe path.

### If payments

Verify webhooks; server-side prices; don’t trust client totals; log security events.

### If AI features

No provider keys in the client; treat prompts as untrusted; block injection into tools/data; cap usage; Art. 50 as above.

### QA

Map attack surface; fix authz/IDOR/XSS/CSRF/injection/upload/rate-limit gaps you can; document residual risk. Authorized defensive testing only.

---

## 8) Assets & content

Priority: client files → existing site → factual listing imagery (with care) → CSS/SVG / marked Platzhalter → AI imagery **last**, labeled, **never** as real people/projects.

Optimize images; lazy below-fold; real favicon/OG.

Centralize brand constants: name, tagline, phone, email, address, URL, hours.

Default UI language: **German** for DE products. Structure for i18n if multilingual is likely.

---

## 9) MotionSites + subtle motion (optional appendix)

If the user wants €10k motion: use **only FREE** MotionSites prompts as **recipes**. Fully rebrand (DE, tokens, real assets). Strip hard bans. One first-viewport wow. Document name + URL in README. See `prompts/APPENDIX-motionsites.md` and `prompts/TOP-15-MOTIONSITES-FREE.md`.

For **understated** motion (the expensive kind): follow `prompts/SUBTLE-MOTION.md`. Galleries with previews: Unicorn Studio, ShaderGradient, Rive Community, Paper Shaders, LottieFiles, GSAP, Magic UI, React Bits. One live canvas max. Pause offscreen. Poster fallback.

For **converting** photo-led landings (agency, B2B-Lead, praxis growth): follow `prompts/WOW-CONVERSION.md`. Spine: Promise → proof → problem → offer → method → objections → same CTA. Study architecture of that class. **Do not** clone copy, photos, Rive files, palette, or Webflow. Mobile is where this class fails — no Lenis by default, overflow-x 0.

Never paste TOONHUB skins onto a Fachbetrieb.

---

## 10) Definition of done

- [ ] Type A–E stated; DESIGN.md exists with three deliberate choices
- [ ] Builds; core journeys work; Netlify-easy for brochure
- [ ] Legal pages match **actual** stack; Art. 50 only if product AI
- [ ] Security checklist for **this** type
- [ ] Hard-ban + second-wave scan clean; reskin test passed
- [ ] Spacing/whitespace QA (no glued phones/emails; footer rhythm)
- [ ] First-seconds clarity; one wow max; reduced-motion OK
- [ ] Desktop + ~390px; keyboard; contrast; **overflow-x === 0**; no Lenis under 768px
- [ ] README: deploy, brand config, asset provenance, Motionsites/craft log, lawyer TODOs, residual risk
- [ ] No fake proof; no Google Fonts CDN; no dead ODR link

---

## Mode selector

Append **exactly one** mode file:

- **Mode 1** — Improve existing codebase in place (`prompts/MODE-1-improve-in-place.md`)
- **Mode 2** — Redesign someone else’s **live** site (`prompts/MODE-2-client-redesign.md`)
- **Mode 3** — Greenfield from a brief (`prompts/MODE-3-greenfield.md`)

If the user pastes a URL of another company → Mode 2.  
If they have a repo to upgrade → Mode 1.  
If they describe a new brand → Mode 3.

02

Mode 1 — Improve in place

Bestehendes Repo. Nicht grünfeld-klonen.

Cursor · Claude Code

Plus

Liegt in Plus. Auf der Abo-Seite Plus wählen — kein Login, keine Zahlung.

Abo wählen

mode-1
# MODE 1 — Improve existing website / app (in place)

Use **after** `prompts/WHYNELO-ULTIMATE.md`. Default when a repo already exists.

## Role

Upgrade from **where the product already is**. Do not reckless-rewrite. Match the stack’s idioms. Make it cohesive, premium, DE/EU-fit, easier to host.

## Before code

Build a mental model:

- Stack (React, Next, Astro, Vue, Tailwind, CMS, auth, payments)
- Existing tokens, global CSS, component names
- Constraints (legacy CSS, bundle, deploy reality vs Netlify-easy)
- What must not break

If scope is ambiguous, assume: **refactor toward one system**, not a greenfield clone.

## Must-keep inventory (write it down)

Auth/roles, CMS, forms/booking/chat, cart/checkout/webhooks, search/uploads, analytics, i18n, SEO, redirects. If a flow must be re-platformed, **reimplement and test** — do not silently drop it.

## Execute in order

1. Classify A–E; fill DESIGN.md (remap tokens to existing brand colors/logo if they exist — do not invent a cream-serif skin on a banker’s blue logo)
2. Audit: hard bans, second-wave tells (Geist+zinc, cream-italic, bento-as-features), spacing, glued phones/emails, weak first seconds, filler copy
3. Normalize semantic tokens + type scale + spacing + radii/shadows
4. Refactor primitives: Button, Card, Input, Header, Footer, Nav, Form
5. Sweep pages for cohesion (no orphan template skins)
6. Legal: Impressum/Datenschutz/consent match **actual** processing (remove phantom GA/Google Fonts if they are gone; add what you added)
7. Security pass for this type
8. Simplify hosting docs where feasible without breaking C/D
9. Visual QA desktop+mobile; a11y smoke; anti-slop scan
10. Build green
11. Changelog: improved / deferred / residual risk / lawyer TODOs

## Non-goals (unless asked)

New product features unrelated to polish; replacing real photos with AI; adding analytics that force a cookie banner; turning a serious brand into candy-clay or cream-editorial cosplay.

## Extra done

Critical journeys regression-checked. One token system. Deploy story clearer. Copy shorter, not longer.

03

Mode 3 — Greenfield

Neue Marke, leeres Repo. Section-Budget einhalten.

Cursor · Claude Code

Plus

Liegt in Plus. Auf der Abo-Seite Plus wählen — kein Login, keine Zahlung.

Abo wählen

mode-3
# MODE 3 — Greenfield (new site or app from a brief)

Use **after** `prompts/WHYNELO-ULTIMATE.md`. When there is **no** live site to steal structure from — a new brand, a pitch, or a product that does not exist yet.

Greenfield is where models dump the **median landing page**. You must over-specify DESIGN.md and **under-build** sections.

## Inputs you need (ask once, then assume Type A brochure if they go silent)

- Brand name, legal name if known, city/service area
- Who pays / who calls
- Concrete offers (list)
- Primary action
- Tone: Sie/Du; serious craft vs playful
- Assets on hand (logo, photos, colors) vs Platzhalter allowed
- Type A–E
- Languages

**Never invent** HRB, USt-IdNr., reviews, “seit 2014”, partner logos, user counts, or team bios. Use obvious placeholders: `Musterstraße 1, 00000 Stadt`, `Platzhalter — Anwalt prüfen`.

## Concept first (still before components)

Write in DESIGN.md:

- The **primitive**: the object/photo/typographic idea unique to this offer
- Signature (one)
- What the homepage will **not** contain (cut list)
- Section budget: homepage **≤ 6** content sections including hero and kontakt unless the user listed more real content
- **Exception — converting B2B / agency landing (mood Kante / branch Lead):** use the spine in `prompts/WOW-CONVERSION.md` (hero → proof → problem → offer → method → objections → CTA). Still cut fake proof. Mobile: no Lenis, overflow-x 0. Do not clone a reference site.

If photos are missing: type-led or object-led CSS/SVG. Empty gray “image here” boxes look cheaper than strong type.

## IA for a new brochure

1. Hero (who, what, act)
2. Offer (real list)
3. One proof slot (omit if none)
4. Practical info (area, hours, process) **or skip**
5. Kontakt
6. Legal

Do not add Pricing, Blog, FAQ, Testimonials, Logo wall, or “Our values” to fill space.

If the brief is a **converting photo-led landing** (B2B-Lead, agency, praxis growth): replace this local-brochure IA with the Wow-Conversion spine. FAQ is then objections only. Sticky CTA on mobile is the primary action, not a countdown.

## App greenfield (Type C/D/E)

- Design the **logged-out** marketing surface with the same anti-slop rules
- Design the **app shell** as a product (density, empty states, errors) — not a second marketing site
- Auth, RLS, headers, Art. 50 if AI from day one
- Payments: 312j / PAngV / Widerruf / Kündigung stubs in the IA even if copy is placeholder

## Extra done

DESIGN.md committed. No template waterfall. Placeholders obviously labeled. Legal skeleton present. Could not be reskinned to an unrelated industry without collapsing.

04

DESIGN.md Vorlage

Vor jedem UI. Leer lassen = Median.

Cursor · Claude

Plus

Liegt in Plus. Auf der Abo-Seite Plus wählen — kein Login, keine Zahlung.

Abo wählen

design-lock
# DESIGN.md — lock before any UI

Fill this file **before** writing components. If a choice is blank, the model will emit the statistical default (the AI look). Every field is a decision.

**Project:**  
**Mode:** 1 Improve-in-place / 2 Client redesign / 3 Greenfield  
**Architecture type:** A Static / B CMS / C Auth+DB / D Payments / E Interactive AI  
**Primary language:** de-DE (unless specified)  
**Audience:**  
**Primary job of the first viewport:** (who / what / action)

---

## Brand facts (sacred — never invent)

- Legal name:
- Brand name / wordmark:
- NAP (address, phone, email):
- Service area:
- Real offers (exact names customers search):
- Real proof allowed (reviews, certificates, years — only if evidenced):
- Existing logo / colors / photos:

## Point of view (one sentence)

This site should feel like: ________________________________  
It must **not** feel like: generic SaaS / cream-editorial startup / violet AI demo / toy clay

## Signature (pick ONE)

Choose one signature device. Everything else stays quieter.

- [ ] Type-led (display face + measure + rules, almost no cards)
- [ ] Photo-led (real photography as the material; UI recedes)
- [ ] Object-led (one product/service object, carousel or stage)
- [ ] Editorial (magazine pacing, pull quotes, ink on paper)
- [ ] Product-UI (real screenshots / app chrome, not fake terminals)
- [ ] Craft-tactile (brand-remapped clay / material, never candy violet)

## Palette (hex, not Tailwind names)

Do **not** use `#3b82f6`, `#6366f1`, `#8b5cf6`, `#a855f7`, `#ec4899`, `#10b981`, `#0070f3`, `#18181b` (zinc-950) as brand accents.

| Token | Hex | Role |
|---|---|---|
| `--bg` | | page canvas |
| `--surface` | | cards / raised |
| `--ink` | | primary text |
| `--ink-muted` | | secondary text (must still pass 4.5:1 on `--bg`) |
| `--accent` | | CTA / status only |
| `--accent-ink` | | text on accent |
| `--rule` | | hairlines / separators |
| `--focus` | | focus ring |

**Why this accent (one line):**  
**Contrast check:** body `--ink` on `--bg` ≥ 4.5:1 — ratio: ____

## Type (≤2 families + optional outlier in ≤2 slots)

| Role | Family | Weights | Source (self-hosted files) |
|---|---|---|---|
| Display | | | local `/fonts` |
| Body / UI | | | local `/fonts` |
| Outlier (optional) | | | local `/fonts` |

**Why this pairing (one line):**  
**Banned as unchosen defaults:** Inter-only, Geist-only, Space Grotesk + Instrument Serif, Poppins, Montserrat, Playfair-as-body.

Self-host `.woff2`. Never `fonts.googleapis.com` / `fonts.gstatic.com`. Prefer not to use Fontshare API either (third party).

## Radius / shadow / space

- Radius scale (e.g. control 8 / card 16 / never everything 16):
- Shadow: none / one elevation / clay stack (brand-remapped):
- Space scale (4 or 8): and **vary section padding** — not one `py-24` everywhere.

## Motion

- First-viewport wow (max one): none / layered photo + one ambient / carousel / 3D / video / reveal
- Ambient (optional, one): none / Rive / Lottie / shader / CSS grain — pause offscreen, poster fallback
- Reduced-motion: instant states, no blur thrash
- No identical fade-up on every section
- No Lenis / smooth-scroll under 768px; overflow-x at 390px = 0
- Field vs bands: glows die into `--bg` before the next block; orbs are haze, not balls
- Craft galleries used (name + URL + remap):

## Copy voice

- Address: Sie / Du
- Sentence case vs Title Case:
- Words we say:
- Words we never say:
- Claims we may make (evidenced only):

## Cut list (do not build unless content is real)

- Logo wall / “Trusted by”
- Fake metrics / animated counters
- Generic 3-icon feature row
- FAQ that paraphrases the page
- “Welcome to our website”
- Dual CTA “Loslegen + Mehr erfahren”
- Eyebrow chip above every H2

## Legal stack actually used

Hosting, forms, fonts, maps, analytics, chat, payments, AI — list only what ships. Datenschutz must match this list.

## Motionsites (optional)

Free prompt names + what you keep vs strip:

Studio

6 Prompts · Builder in Studio

01

Mode 2 — Kunden-Redesign

Live-URL eines anderen Betriebs. Erst Audit, dann Bau.

Cursor · Claude Code

Studio

Liegt in Studio. Auf der Abo-Seite Studio wählen — kein Login, keine Zahlung.

Abo wählen

mode-2
# MODE 2 — Client redesign from a live website

Use **after** `prompts/WHYNELO-ULTIMATE.md`. For **other people / companies**. Their brand, photos, and conversion paths are sacred.

## Mission

Win trust: understand the business, keep what works (contact, booking, orders, key service info), replace thin/outdated/AI-generic presentation with cohesive craft. Prefer **Type A** Netlify-easy. Prefer **real** NAP and photography from the old site / Maps / client files.

## Phase 1 — Deep audit (mandatory before build)

Fetch + visual review of the live URL and important subpages.

Capture:

1. Legal vs brand name, industry, locations, service area
2. NAP, hours, team names (don’t invent extras)
3. IA: nav, pages, footer
4. Conversion paths: call, form, WhatsApp, booking, shop
5. Embeds: maps, chat, planners, payments
6. Trust: only evidenced reviews/certs/projects
7. Copy: unique vs fluff; language
8. Legal: Impressum/Datenschutz/Cookies present? current DDG/TDDDG names?
9. Technical smells: broken forms, “under construction”, slow widgets, mobile
10. Asset inventory + provenance (logo, photos, PDFs, icons, listing photos)
11. Keep / Improve / Drop / Replace table

Write a short audit in README or agent notes **before** or as you start building.

## Phase 2 — Redesign rules

- Keep core functions in spirit. Do not turn a working shop into a dead brochure unless ordered.
- Type A default: Astro + Tailwind + Netlify Forms + `netlify.toml` + German README + one brand config
- Apple-like clarity + one token system; clay only if DESIGN.md says craft-tactile **and** remapped
- One wow max; local patterns: sticky call, Leistungen, projects, kontakt, legal
- If the live site is a converting cinematic landing: extract **rhythm** (photo layers, proof strip, spine, one CTA), then fully re-skin. Do not copy Rive files, photos, copy, palette, or Webflow. Mobile: kill Lenis-class jank; overflow-x 0. See `prompts/WOW-CONVERSION.md`.
- SEO: titles, semantic headings, LocalBusiness JSON-LD when NAP known
- No fake social proof
- Do not clone competitors pixel-for-pixel

## Phase 3 — Assets

1. Client files  
2. Existing site assets  
3. Factual map/listing imagery when appropriate  
4. Abstract CSS/SVG or labeled Platzhalter  
5. AI imagery last, labeled, never as real staff/jobs  

Optimize. List provenance in README.

## Phase 4 — Legal for the real business

- Impressum with audited NAP; placeholders only for unknown register/VAT
- Datenschutz = actual stack (Netlify, forms, **local fonts**, two-click map strategy)
- Form consent + honeypot + limits
- Lawyer TODOs explicit
- If they had a shop/Abo: do not “forget” Widerruf/Kündigung duties in the new IA

## Phase 5 — Build / QA / handoff

Pages from the keep/improve plan. Visual + spacing + a11y. Security for type. Build green. Netlify Drop zip **and/or** Git steps. Pitch-ready but honest about Platzhalter.

## Extra done

Audit artifacts exist. Conversion paths still exist. Real assets preferred. Netlify-easy. No dishonest claims. Reskin test passed (this business, not a template).

02

MotionSites-Anhang

Free-Prompts nur als Rezept. Skin immer ersetzen.

Cursor · Lovable · Bolt · v0

Studio

Liegt in Studio. Auf der Abo-Seite Studio wählen — kein Login, keine Zahlung.

Abo wählen

motion-appendix
# WhyNelo Appendix — MotionSites (€10k motion / UI adaptation)

Anhang to WhyNelo Ultimate Modes 1–3. Does **not** replace legal, security, Netlify-easy, anti-slop, or real-asset rules. Adds a disciplined way to pull **premium motion & section UI** from https://motionsites.ai/ so the site feels like a **€10,000 agency build**, not a pasted demo.

================================================================================
0) PURPOSE
================================================================================

MotionSites is a library of prompts/patterns (Hero, Landing, Agency, SaaS, Portfolio, 3D, Carousel, Ecommerce, Sections, …).

Your job:

1. Select **FREE** prompts that fit **this** brand (not the flashiest card).
2. Extract interaction architecture (timing, layering, hierarchy, physics).
3. **Fully re-skin and rewrite** (brand, language, real assets, WhyNelo bans — including **second-wave** cream-serif / Geist-zinc / bento tells).
4. Integrate: performance, a11y, Netlify-static when Type A, legal, forms.
5. Never ship a demo skin that still says TOONHUB / wrong industry / candy defaults.

================================================================================
1) FREE-ONLY (STRICT)
================================================================================

- Use only items clearly **free to copy** for your session.
- Do **not** unlock, scrape, bypass, or reconstruct **paid** prompts or gated background packs.
- If the perfect pattern is paid: (a) free alternative in-category, or (b) recreate the *idea* at high level from public principles **without** copying paid prompt text.
- Credit in README: `inspired by MotionSites free prompt: <name>` — no endorsement claim.
- Paid videos: only if the user already owns files and provides them. Prefer CSS/canvas/WebGL-lite in-repo.

================================================================================
2) HOW TO SELECT
================================================================================

Fit the business. Haustechnik ≠ AI startup ≠ toy store.

Map structure to needed sections: viewport hero/carousel, agency/services storytelling, portfolio depth, CTA, quiet ambient motion (only if free **and** cheap).

You MAY combine multiple free prompts if each owns a **different** section. Hard cap: **one primary wow** on first viewport; secondary motion quieter. For understated agency-grade motion (Rive between photo plates, one shader, CSS grain) see `prompts/SUBTLE-MOTION.md`. For converting landings see `prompts/WOW-CONVERSION.md`. Lenis is **not** a default — it is a common reason these sites feel weak on iPhone.

Reject prompts whose **core identity** is a hard-ban aesthetic unless you can strip those tells and keep the motion architecture.

### Decision log (required)

For each prompt: name/URL, why it fits, what you kept, what you changed, what you discarded.

================================================================================
3) ADAPTATION — €10k, not demo paste
================================================================================

Treat the prompt as a **motion/layout recipe**.

Always rewrite: name, labels, ghost words, CTAs, body → project language (DE for German clients); colors → semantic tokens; imagery → real assets; fonts → DESIGN.md pairing; icons sparse.

Keep when quality is high: interaction architecture, layering (readable **at rest**), micro-physics that pass reduced-motion, section rhythm that clarifies first seconds.

Hellfeuer-class lessons: ghost type readable idle; explicit spaces around NAP; spacing scale continues under the hero; sticky mobile CTA for local; one token system under the motion.

€10k bar: intentional, tactile, calm-confident (playful only if brand is); motion supports story; works on mobile; 44px targets; no multi-MB autoplay walls on Type A.

Field, not bands: keep the canvas continuous. A Runtime hill or Kresna glow must fade into `--bg` — never collide with a hairline. Orbs are atmosphere (ellipse + heavy blur), not illustrated balls. AI Runtime: rain + hill + rim; rewrite the H1; never ship “Intelligence Designed To Evolve”.

================================================================================
4) INTEGRATION
================================================================================

- CSS + light JS / one island over heavy frameworks when Type A
- Lazy-init below fold; pause offscreen
- `prefers-reduced-motion: reduce` → instant states, no blob orbits
- No hover-only critical info
- Z-index: motion must not trap clicks or hide legal/form
- No random third-party motion CDNs
- Same tokens under every inspired section
- No English demo copy, no fake metric orbs

Performance: GPU-friendly transform/opacity; preload only critical hero images; ≤1 autoplaying video, muted, deferred if possible.

================================================================================
5) WORKFLOW
================================================================================

1. Ultimate core + mode.
2. Shortlist **free** prompts.
3. 1 primary + optional 1–2 sections; decision log.
4. Extract structure; discard skin; remap.
5. Maintainable components (`HeroCarousel`, `ServicesStage`).
6. Integrate layout, sticky CTAs, forms, legal.
7. QA: desktop/mobile, reduced-motion, keyboard, whitespace, hard-ban, build.
8. README: inspirations + how to tweak motion tokens.

================================================================================
6) ANTI-PATTERNS
================================================================================

Unchanged paste onto craft brands; paid without entitlement; three heroes; watermarks/wrong language/toys/fake counters; motion covering Impressum or breaking forms; re-introducing purple-glass-beams “because the prompt had them”; AI photos to mimic the demo when real photos exist; cream-italic or Geist-zinc restyle that is just a newer slop uniform.

================================================================================
7) DONE (appendix)
================================================================================

Free-only (or high-level recreation); decision log; on-brand €10k motion; still Netlify-easy / legal / secure; cohesion with DESIGN.md; hard bans clean; reduced-motion OK; build green.

================================================================================
8) PASTE BLOCK
================================================================================

```
Apply the WhyNelo MotionSites Appendix.
Browse https://motionsites.ai/ and select only FREE prompts/sections that fit this project.
Adapt 1 primary hero pattern and optionally 1–2 section patterns into the existing WhyNelo build.
Fully rebrand (colors, type from DESIGN.md, DE copy, real assets). Strip first- and second-wave hard-ban aesthetics.
Ensure ghost/layered type stays readable at rest; keep Netlify-static, legal, forms, and a11y working.
Document chosen free prompts and adaptations in README.
```

03

15 Free MotionSites

Kuratierte Free-Liste plus Universal-Umbau. Paid nicht rekonstruieren.

Cursor · Lovable · Bolt

Studio

Liegt in Studio. Auf der Abo-Seite Studio wählen — kein Login, keine Zahlung.

Abo wählen

motion-15
# WhyNelo — 15 FREE MotionSites prompts (Copy full prompt)

Verify live: items showed **“Copy full prompt”** (not “Go Unlimited”) at last check. Free/Paid can change.

**Universal-Umbau (always append):**

```text
Treat this MotionSites prompt as a MOTION/LAYOUT RECIPE only.
Rebrand fully: DE copy if German client, DESIGN.md tokens, real photos (no AI unless last resort + labeled).
Strip WhyNelo hard bans (purple-blue gradients, glass default, gradient hero text, Inter/Geist-unchosen, Space Grotesk + Instrument Serif, emoji headings, cursor beams, fade-on-scroll spam, cream-italic-as-universal-skin, zinc-950 glow, bento-as-features).
Keep strong interaction architecture/timing. One first-viewport wow. Ghost/layered type readable AT REST.
Netlify-easy, forms/legal/a11y/reduced-motion must work. README: prompt name + URL.
```

---

## 1) 3D Portfolio (Jack) — Portfolio
https://motionsites.ai/?prompt=3d-jack-portfolio-hero  
**Umbau:** Neon dämpfen; echte Projekte; ruhiges Premium.

## 2) Interactive Discovery — Hero
https://motionsites.ai/?prompt=interactive-discovery  
**Umbau:** Stages = echte Leistungen/Produkte.

## 3) Velorah — Agency
https://motionsites.ai/?prompt=velorah-hero  
**Umbau:** Top-Wahl für cinematic Agency/Dienstleister — not crypto, not craft-clay.

## 4) 3D Collectible Hero — 3D / Carousel
https://motionsites.ai/?prompt=3d-collectible-hero  
**Umbau:** Marke oder echtes Produkt als Objekt, Ghost lesbar, Role-Rail. Glow als Dunst. Keine Figur.

## 5) Portfolio Cosmic — Portfolio
https://motionsites.ai/?prompt=portfolio-cosmic-hero  
**Umbau:** Cosmos dämpfen; real work photos.

## 6) Mostar Guide — Travel / Landing
https://motionsites.ai/?prompt=mostar-guide  
**Umbau:** Orte → Standorte/Projekte/Region.

## 7) Agent Wave — AI
https://motionsites.ai/?prompt=agent-wave  
**Umbau:** Nur für AI/tech; sonst Struktur klauen, Sci-Fi-Skin killen. Art. 50 if the product is a bot.

## 8) AI Runtime — AI
https://motionsites.ai/?prompt=ai-runtime  
**Umbau:** Feld aus blassem Binärregen + weichem Hügel + geblurrter Rim. Tokens aus DESIGN.md. Demo-Copy nie. Ein Feld, kein abgeschnittener Horizont.

## 9) Vision Reveal — Hero
https://motionsites.ai/?prompt=vision-reveal  
**Umbau:** Reveal → brand promise; reduced-motion safe.

## 10) 3D Character Studio — 3D
https://motionsites.ai/?prompt=3d-character-studio  
**Umbau:** Charaktere → echte Produkte/Leistungen; performance budget.

## 11) Fun 404 Page — 404
https://motionsites.ai/?prompt=fun-404-page  
**Umbau:** Ton an Brand; Weg zurück Home/Kontakt.

## 12) Space Planet — 3D
https://motionsites.ai/?prompt=space-planet  
**Umbau:** Nur Depth; Space-Vibe für Craft killen.

## 13) Kresna Footer — Footer
https://motionsites.ai/?prompt=kresna-footer  
**Umbau:** Echte NAP und Legal. Orb als Dunst (große Ellipse, starker Blur, kein Kern). Kein Wallpaper.

## 14) Portfolio About — About
https://motionsites.ai/?prompt=portfolio-about  
**Umbau:** Echte Teamfotos; keine Fake-Bios.

## 15) CozyPaws — Hero / Ecommerce
https://motionsites.ai/?prompt=cozypaws  
**Umbau:** Nur wenn Brand pets/lifestyle; sonst Wärme/CTA-Rhythmus klauen.

### Extra FREE (swap)
- Orbis Hello — https://motionsites.ai/?prompt=orbis-hello
- Playful Idea — https://motionsites.ai/?prompt=playful-idea (nur verspielte Brands)

### Combos

| Ziel | Primär | + Section |
|------|--------|-----------|
| Lokaler Fachbetrieb | 3D Collectible Hero | Kresna Footer + Portfolio About |
| Premium Agency | Velorah | 3D Jack sections |
| Designer Portfolio | 3D Jack | Vision Reveal oder Portfolio Cosmic |
| Travel/Region | Mostar Guide | Orbis Hello |
| AI/SaaS | Agent Wave oder AI Runtime | Vision Reveal |

```text
Use ONLY verified FREE MotionSites prompts (Copy full prompt):
PRIMARY: <from list>
OPTIONAL sections: <1–2>
Apply Universal-Umbau + WhyNelo Ultimate + DESIGN.md.
```

04

Unterschwellige Motion

Budget, Gratis-Galerien mit Preview, Embed, Handy ohne Lenis-Jank.

Cursor · Claude Code

Studio

Liegt in Studio. Auf der Abo-Seite Studio wählen — kein Login, keine Zahlung.

Abo wählen

subtle-motion
# Subtle motion — unterschwellige Animation, €10k not demo

Anhang to WhyNelo Ultimate. Use when the site should feel expensive **without** looking like Aceternity-spam, MotionSites-demo, or a Webflow template that dies on iPhone.

================================================================================
0) BUDGET (HARD)
================================================================================

Pick **one** of each. More is slop.

1. **Wow (max one, first viewport):** layered photo, object stage, or one shader/Rive/Lottie **behind** type. Type must be readable **at rest** (no motion required to parse the H1).
2. **Ambient (optional, one):** slow grain, marquee of **real** logos, a Rive graph, a shader that drifts. Pause offscreen. Poster fallback.
3. **Micro:** button fill, underline grow, image zoom ≤1.04, focus ring. CSS transform/opacity only.
4. **Scroll choreography (optional):** one pinned sequence **or** one progress line. Not fade-up on every section.

Forbidden as unchosen defaults: Lenis/smooth-scroll on the whole document; cursor blobs; particle fields in every section; SplitText on every headline; hover-only meaning; Webflow IX `visibility:hidden` until JS; a horizon glow cut by `border-top`; a sharp neon sphere (bright core, blur < 16px).

Worked recipe (redesigner.lol / AI Runtime remap): one night canvas. Dense pale binary rain. Soft hill in the lower third, rim heavily blurred (fluor→plus sampled from the mark). Library video only inside the hill, desktop, dimmed — demo headline never visible. Next section shares the canvas; the glow is already dead before the join. Footer orb = large ellipse, blur ~72px. Collectible = brand mark as object. Type readable at rest.

================================================================================
1) WHERE TO GET FREE ASSETS (GALLERIES WITH PREVIEWS)
================================================================================

Use the **library preview** to choose, then **re-skin**. Do not ship the demo palette.

| Job | Source | Notes |
|---|---|---|
| Hero / section motion recipes | https://motionsites.ai/ | FREE prompts only. Full rebrand. |
| Art-directed site prompts | https://meez.design/free-prompts | Preview first. |
| React motion blocks | https://magicui.design/ https://www.reactbits.dev/ https://ui.aceternity.com/ https://animata.design/ https://www.fancycomponents.dev/ https://21st.dev/ | One block, tokens overwritten. |
| Interactive WebGL scenes | https://www.unicorn.studio/ (free tier) | One scene. Remap colors. Pause offscreen. |
| Animated gradients | https://www.shadergradient.co/ https://shaders.paper.design/ | Export still **or** one live shader. |
| Vector motion | https://rive.app/community https://lottiefiles.com/ | ContentCut-class ambient (graph, lines). Own file or clearly free community file. |
| 3D object | https://spline.design/ | Only if the brand is object-led. Heavy on mobile — poster fallback. |
| Timelines | https://gsap.com/ (GSAP is free) | ScrollTrigger for **one** sequence. Self-host the JS. |
| Layout animation | https://motion.dev/ https://animations.dev/ | Shared-element / height / micro. Not a skin. |
| Static texture | https://haikei.app/ https://www.fffuel.co/ https://grainy-gradients.vercel.app/ | SVG/noise as CSS. No JS. |
| Cinematic still / loop | https://www.coverr.co/ | Poster on mobile. Never 4K autoplay. |
| Fluid type (so the hero survives 390px) | https://utopia.fyi/ | clamp with a **mobile max**. |
| Shaders (MIT, self-contained) | https://okaybabe.com/shaders/ | One, freeze on reduced-motion. |

Never paste paid MotionSites / paid Unicorn / paid Spline. If the perfect file is paid: recreate the **idea** (layered photo + graph) without copying their file.

================================================================================
2) HOW TO EMBED (TECH)
================================================================================

- Prefer **CSS** (transform, opacity, `@media (prefers-reduced-motion: reduce)`).
- Second choice: one island (Astro client, or one GSAP file in `/public`).
- Canvas / Rive / Unicorn / Spline: **one** live instance above the fold **or** none. `IntersectionObserver` to play/pause. Static poster (`<img>` or first frame) always in HTML for no-JS and reduced-motion.
- Self-host runtime (rive.wasm, gsap.min.js, lottie). No extra analytics from the asset host.
- GPU: `transform` + `opacity` only. No `filter: blur()` on scroll, no layout-thrash `top/left`.
- Reduced-motion: instant end state, no autoplay video/canvas.
- Touch: **no** hover-only. Motion must not steal swipe (Lenis, custom wheel) unless you tested iOS Safari + Android Chrome.
- Z-index: motion never covers tel/form/legal. `pointer-events: none` on decorative canvas.
- Performance Type A: ≤1 autoplaying medium. Images AVIF/WebP + srcset. No 4K hero video on mobile — `media` or `<source>` swap.

================================================================================
3) MOBILE (THE USUAL FAILURE)
================================================================================

Sites that wow on a 27" and feel cheap on a phone usually did this:

- Smooth-scroll library fighting native rubber-band
- Two WebGL/Rive canvases autoplaying
- Horizontal logo marquee overflowing 390px
- Fluid type that stays desktop-huge (`html { font-size: vw }` without a tighter mobile clamp)
- Sticky urgency bar covering the real CTA
- Hover-only secondary nav
- Parallax layers wider than the viewport (`100vw` + padding)

Fixes (required):

- Native scroll. If you keep Lenis, **disable under 768px** and on `prefers-reduced-motion`.
- Hero: one image + optional one canvas. Front layer must not clip the H1.
- Type: `clamp()` with a **mobile max**. H1 still a promise, not a paragraph.
- Marquee: slower, `overflow-x: hidden` on `body`, or a 2×2 logo grid on small screens.
- Sticky: **one** bar — primary action (Anfrage / Anruf), ≥44px. Scarcity only if true.
- Test 390×844 before you call it done. Overflow-x must be 0.

================================================================================
4) DECISION LOG
================================================================================

For each asset: name, URL, license/free, what you kept, tokens remapped, mobile fallback.

05

Wow-Conversion (Kante)

Foto-Ebenen, echte Proofs, eine CTA. Klasse studieren, nicht klonen. Handy härten.

Cursor · Claude Code

Studio

Liegt in Studio. Auf der Abo-Seite Studio wählen — kein Login, keine Zahlung.

Abo wählen

wow-conversion
# Wow conversion — premium DE landing (study, don’t clone)

Anhang to WhyNelo Ultimate for sites that must feel **extremely expensive** and **convert** (B2B, agency, praxis growth, Beratung).

Study the **architecture** of high-end DE landings such as photo-led medical/agency sites (example class: layered hero + proof marquee + problem stack + named results + one Erstgespräch CTA). **Do not** copy their copy, photos, Rive files, palette, Webflow structure, countdown, or brand. If the user named a live URL, treat it as Mode 2: extract rhythm, then fully re-skin.

================================================================================
0) WHAT THE WOW ACTUALLY IS
================================================================================

It is **not** more GSAP. It is:

1. A **first viewport** that looks like a still from a film: real photography, depth (back plate / one ambient motion / front plate), a huge specific promise, **one** action.
2. Immediate **proof texture** (real logos or named cases) — never fake “Trusted by”.
3. A **spine** the eye can follow without thinking: Promise → proof → problem → offer → method → objections → same CTA again.
4. Motion that is **quiet**: a graph that breathes, a marquee that crawls, a layer that parallaxes 8–16px. The type does not need animation to be understood.
5. Conversion furniture: identical primary CTA in hero, mid, end. Sticky on mobile. Scarcity **only if evidenced**.

If you build three Lucide cards and a ghost “Mehr erfahren”, you failed — even with a shader behind them.

================================================================================
1) FIRST VIEWPORT (DESKTOP)
================================================================================

- **Signature:** photo-led (or photo + object). Type sits **on** the image, not in a cream column beside a stock handshake.
- **Layers (max 3):** background photo (real work / room / people you have rights to) → optional ambient (Rive/Lottie/shader, `pointer-events: none`) → optional foreground photo or grain. H1/H2 z-index above all.
- **Copy:** H1 is the outcome in the customer’s nouns. Not “Ganzheitliche Beratung”. Body: one fact. CTA: verb + noun (Erstgespräch buchen, Anfrage senden). A second control is allowed only if it is the **same** action for a second audience (Mitarbeiter vs. Patienten) — never Learn more.
- **Lang:** `html lang="de"` for German UI. Do not ship `lang="en"` with German copy.
- **Fluid type:** `clamp()` so 1440px feels cinematic **and** 390px still fits. Do not copy raw `html { font-size: vw }` recipes that stay huge on phones.

================================================================================
2) SPINE (CUT BEFORE YOU ADD)
================================================================================

Default map for a converting brochure (adapt, don’t pad):

1. Hero (promise + one CTA)
2. Proof strip — **real** logos or 3–6 named results (practice + number + timeframe). If you have neither, skip. No invented counters.
3. Problem stack — 2–4 **specific** pains (not Schnell/Sicher/Innovativ)
4. Offer — what you actually sell, as a list or two columns, not bento
5. Method — 3–5 steps **or** one system graphic (one Rive/SVG). Not both plus a bento.
6. Cases / quotes — only real names. Video as two-click, not autoplay wall.
7. Team — real photos, roles. No AI faces.
8. FAQ — objections (region, time, law, vs. the obvious alternative). Not a paraphrase of the hero.
9. Final CTA — same action as hero. NAP nearby.

Cut: English demo, dual ghost CTAs, blog with no posts, fake 300+ ticker, logo wall of companies that are not clients.

Medical/health copy in DE: Heilmittelwerbegesetz. No guaranteed healing claims. “Garantiert” only where the contract actually guarantees a process, and legal has signed off — otherwise don’t.

================================================================================
3) MOTION THAT SUPPORTS CONVERSION
================================================================================

Follow `prompts/SUBTLE-MOTION.md`. For this class specifically:

- Hero ambient: **one** Rive/Lottie (graph, line, pulse) or one shader. ContentCut-class sites often use Rive between photo plates — recreate the **idea** with a free community file or CSS, remapped to DESIGN.md tokens.
- Proof: CSS marquee **or** a static grid. Marquee `overflow-x: hidden` on the page; pause on reduced-motion.
- Method: one scroll-linked draw **or** a static SVG. GSAP ScrollTrigger is free; self-host; one timeline.
- Do **not** add Lenis by default. It is a common reason these sites feel “weak” on iPhone (jank, stolen swipe, address-bar fight). Native scroll + CSS sticky.

================================================================================
4) MOBILE — KEEP THE WOW, KILL THE JANK
================================================================================

This class of site is famous for collapsing at 390px. Required:

- No document-level smooth-scroll library under 768px
- One live canvas max; poster fallback; pause offscreen
- H1 wraps to ≤6 short lines; no desktop paragraph in the hero
- Sticky **primary CTA only** (Anfrage/Anruf), 44px, not a countdown covering it
- Logo row becomes 2×2 or a slower marquee inside `overflow: hidden`
- Parallax offsets ≤8px or none; no `100vw` layers causing horizontal scroll
- Photo plates and glows share one canvas — no horizon cut by a section border; orbs are haze, not balls
- Tap the same CTA in hero and footer; phone number is a `tel:` link
- Test overflow-x === 0 and reduced-motion before ship

================================================================================
5) TOKENS
================================================================================

Do **not** copy another studio’s petrol/teal. Lock a palette in DESIGN.md (hex). Dark cinematic is allowed if contrast passes and the brand is not a local craft shop that needed paper + copper.

Self-host fonts. No Typekit/Google CDN. No Webflow IX hiding whole sections until JS (`visibility: hidden` FOUC).

06

Kunden-Audit (kurz)

Vor Mode 2. Tabelle Keep / Improve / Drop / Replace.

Cursor · Claude

Studio

Liegt in Studio. Auf der Abo-Seite Studio wählen — kein Login, keine Zahlung.

Abo wählen

client-audit
Auditiere die Live-URL bevor du baust. Nichts erfinden.

Schreib eine Tabelle:

| Was | Quelle | Keep | Improve | Drop | Replace |
|---|---|---|---|---|---|

Pflichtfelder: Rechtsname vs. Marke, NAP, Stunden, Nav, Conversion (Tel/Form/WhatsApp/Shop), Embeds, echte vs. erfundene Trust-Signale, Copy-Sprache, Impressum/Datenschutz (DDG/TDDDG?), technische Brüche, Asset-Herkunft.

Danach Mode 2 + WhyNelo Ultimate. Type A Default (Astro, lokale Fonts, Netlify Forms), außer der Kunde hat nachweislich Shop/Auth.

Handoff: README mit Audit, Motion-Log, Anwalt-TODOs.