Case
cadenza — lowercase, Fraunces italic
CADENZA — set in uppercase
Visual identity
Logo
Logo do / don’t
Case
cadenza — lowercase, Fraunces italic
CADENZA — set in uppercase
Typeface
Wordmark always set in Fraunces italic
Wordmark substituted with any other font
Treatment
Clean mark on warm white or ink
Drop shadows, glows, bevels, outlines
Scale
Proportional scaling, clear space preserved
Stretched, condensed, rotated, or crowded
Color system
Every swatch below ships as a CSS custom property. Click a value to copy it.
--color-brand-inkPrimary text, authority, the soloist
#1A1A1A oklch(0.18 0.005 270) --color-brand-terracottaThe brand. Used sparingly. The cadenza moment.
#C75B39 oklch(0.58 0.15 38) --color-brand-amberSecondary accent, warmth, optimism
#D4913A oklch(0.71 0.13 70) --color-brand-creamHighlights, soft surfaces
#F5CEB8 oklch(0.88 0.05 60) --color-brand-warm-whiteBackground, breathing room
#FAF7F4 oklch(0.97 0.008 75) Typography
Fraunces is the voice. Geist Sans is the room.
the voice
400 · 700 · italic
The voice. Serif, italic, expressive. Used for display, hero headlines, the wordmark, pull quotes.
reads the room before it writes
Use
Avoid
the room
400 · 500 · 600
The room. Neutral, functional, quiet. Used for body, UI, navigation, buttons, forms, everything else.
reads the room before it writes
Use
Avoid
| Token | Size | Font | Use |
|---|---|---|---|
text-display | 64px | Fraunces italic 400 | Hero headlines only |
text-h1 | 48px | Fraunces italic 400 | Page titles |
text-h2 | 32px | Geist 600 | Section headings |
text-h3 | 24px | Geist 600 | Sub-sections |
text-body-lg | 18px | Geist 400 | Lead paragraphs |
text-body | 16px | Geist 400 | Default body |
text-small | 14px | Geist 400 | Captions, metadata |
text-micro | 12px | Geist 500 | Labels, eyebrows |
Logo system
The mark carries Cadenza into small spaces. The wordmark carries the name. The lockup is the full signature. Every asset ships as an SVG in /static/brand/.
mark
/brand/cadenza-mark.svgThe italic "c" set in an Ink-to-Terracotta gradient square. Reads at a single glance.
wordmark
/brand/cadenza-wordmark.svgThe word "cadenza" set in Fraunces italic 400, lowercase. The voice, visible.
lockup
/brand/cadenza-lockup.svgMark and wordmark, horizontally paired. The full signature.
Mark — A 1:1 hard square in an Ink-to-Terracotta gradient at 135 degrees. The "c" is Fraunces italic 400, centered optically (not geometrically). No corner radius at canonical size; rounded only at small sizes (32px and below) to preserve the glyph.
Wordmark — Fraunces italic 400 at the chosen size. Lowercase. Letter-spacing untouched — Fraunces sets its own rhythm and we do not override it.
Lockup — Mark sits left of the wordmark. The gap between them equals half a mark-width. Vertical baselines align on the x-height of the "a", not on the geometric center of the square.
Icons
Cadenza uses a single icon set. Line weight, single color, never filled.
@lucide/svelte1.5. currentColor — icons inherit the surrounding text color. Never hardcode a brand color on an icon.Imagery
The shader carries most of the brand. Photography appears on long-form surfaces only — documentary, warm, specific. Never stock.
Editorial, not advertorial.
Imagery should feel cut from a print magazine, not lifted from a stock library. Real rooms, real light, real hands. If it looks staged for a sales deck, it is wrong.
Characters, not categories.
When we photograph a person, they are a specific person with a name and a job we can defend. We do not cast a "founder" or a "sales lead" — we photograph an actual one. No mood-board cliches.
Warm, grounded, specific.
Daylight before softboxes. A real desk before a rendered one. A specific object before a generic one. Texture is welcome. Dust is welcome. Perfection is not.
Rare is the point.
The shader carries almost every surface. Photography appears on long-form pages, the About page, and the occasional editorial piece. A photograph on every screen turns the brand into a catalogue.
Humans on both sides.
Cadenza is about humans sending messages to humans. Imagery should feel like both sides are present — even when only one is in frame.
Open Graph
Every shareable Cadenza URL resolves to a single OG template. Shader, wordmark, title, optional subtitle. No per-page art.
1200 × 630