---
base_skill: copywriting
base_skill_version: 3.0.0
mode: extend
---

# copywriting — fidelity-app overlay (example)

> Captures the project-specific brand voice pillars and segment register that
> used to live hard-coded in the copywriting skill before v3.0.0. Drop into
> `.baldart/overlays/copywriting.md` and adapt freely.

## Brand voice pillars (`${paths.ui_guidelines}` § 1.4 — canonical)

The fidelity-app brand voice is built on four pillars. Every UI copy decision MUST align with at least one and contradict none:

1. **Fun & Playful** — light, lively, never sterile.
2. **Rewarding** — language frames every action as earning something concrete.
3. **Trustworthy** — operational copy is precise; numbers and dates appear as facts, not promises.
4. **Energetic** — verbs are active; CTAs use imperatives.

Marketing hyperbole stays in marketing surfaces; transactional/system copy (errors, confirmations) stays direct and trustworthy — even when other pillars apply elsewhere on the page.

## Design philosophy implication (Neo-Brutalism)

Copy is **direct and concrete**: short sentences, concrete nouns, no corporate hedging. Avoid "streamline", "optimize", "innovative", "leverage", "best-in-class". Prefer Italian punchy phrasings ("Risparmia 4 ore a settimana" beats "Optimize your weekly workflow").

## [OVERRIDE] Language rule

All UI copy is **Italian-first** (`identity.language: it`). English appears only in:
- Brand name / product name fragments that are intentionally untranslated.
- Technical terms with no idiomatic Italian (e.g. "API", "checkout", "dashboard").

Mixing English marketing phrasing in Italian UI ("Get started ora!") is forbidden — automatic rewrite required.

## Audience register matrix (`identity.audience_segments`)

| Segment | Tone | Hyperbole allowed? | Example CTA |
|---|---|---|---|
| `customer` | Playful + rewarding. Emoji sparingly (max 1 per surface). | Yes in marketing, never in transactional. | "Riscatta il premio" |
| `merchant` | Operational, trust-first, low hyperbole. Numbers up front. | No. | "Apri il pannello vendite" |
| `merchant-staff` | Operational, brief. No marketing pillars. Direct verbs. | No. | "Conferma incasso" |
| `super-admin` | Neutral, factual. Like reading a status report. | No. | "Visualizza log" |

When the user requests copy without specifying a segment, default to asking. Never write segment-blind copy in this project.

## Forbidden vocabulary (auto-rewrite)

`streamline`, `seamless`, `unlock`, `empower`, `leverage`, `state-of-the-art`, `cutting-edge`, `revolutionary`, `next-generation`, `world-class`. Italian equivalents to avoid: `ottimizza`, `senza soluzione di continuità`, `sblocca il potenziale`.

## Tone-by-component (consult `${paths.design_system}/INDEX.md` for variants)

- **Empty states (customer surfaces)**: playful + rewarding. End with action verb.
- **Empty states (merchant surfaces)**: operational. State the missing data, suggest the next concrete step.
- **Error messages (any segment)**: pillar #3 (Trustworthy) only. Format: "Cosa è successo + Cosa fare adesso". No emoji, no playful tone.
- **Confirmation dialogs**: pillar #3 only. Past-tense fact + next-step verb.

## Surfaces with unique register (project-specific)

- **Lottery surfaces** (customer): heighten pillar #1 (Fun & Playful) — exclamation tone allowed.
- **Rewards screens** (customer): heighten pillar #2 (Rewarding) — frame outcomes as earnings.
- **Gamification surfaces** (customer): pillars #1 + #2 combined; never #3.
