Harlem Design System
Harlem is a dark, confident fintech and startup site. Everything sits on pure black with white Inter Tight; one crimson (#C51E3A) marks the main button, the feature icons and a single word line, and the imagery is moody 3D in magenta, indigo and teal. Surfaces are white at low opacity rather than greys, so cards, buttons and fields all glow faintly out of the black.
Four signatures make it recognisable:
- Greyed tails. Leads and section statements start in white and fade into white at 50% for the second half: Our expertise lies in lifting / your business to a more advanced level.
- One crimson line. The big statement is two short sentences, the second in crimson: Unusual devotion. / Unusual achievements.
- Sheen buttons. Buttons have a 5px radius and an inset 0 800px 3px white-10% shadow that lightens the fill; on hover the sheen is removed and the button settles to its true colour.
- The rounded work panel. Selected work sits in a panel inset to the page gutter with a 50px radius and a soft white-14% glow from the top-left corner fading to black.
Harlem is a dark-only design.
Colors
Surfaces
#000000Page background (--black)
#FFFFFF · 15%Feature cards (renders about #262626 on black)
#FFFFFF · 10%Quieter fills; the work panel's gradient starts at 14% white
#3B3B3BSolid grey pills: the EN/FR circles and the MENU button
#81818B · 20%Form fields; the shipped typed-text colour is #333333
#333333Text on field
Ink
#FFFFFFText on primary
#FFFFFFText on secondary
#FFFFFFHeadlines, labels, button text
#FFFFFF · 60%Paragraphs (p { color: #fff9 }), metric labels, footer links
#FFFFFF · 50%The greyed second half of leads and statements
#FFFFFF · 40%The inactive language circle (FR) and inactive client logos (37%)
#FFFFFF#000000Text on tag
#FFFFFFAction
#C51E3AGet started, Get in Touch (--main-color)
#C51E3A#FFFFFF · 20%View on Webflow, View full project, card buttons
#FFFFFF · 20%#C51E3AFeature icon squares, the crimson statement line, the menu hover bar
Lines & effects
#FFFFFF · 15%Dividers under metrics and testimonials
#FFFFFF · 38%The 1px underline under work titles
#FFFFFFThe 1px outline of the active logo tab
#FFFFFF · 10%The inset shadow that lightens every button at rest
#FFFFFFBlog category chips and the round subscribe arrow
Typography
Inter Tight · display-menu
The quick brown fox jumpsLinks in the full-screen menu overlay (.navlinks). 80px · 500 · 1.2
Inter Tight · headline-lg
The quick brown fox jumpsUnusual devotion. 50px · 600 · 1.2
Inter Tight · lead
The quick brown fox jumpsThe hero lead; also the 27/700 variant for emphasis. 27px · 600 · 1.4
Inter Tight · title-lg
The quick brown fox jumpsSmaller statements (It's our honor to serve an array of different businesses.). 23px · 600 · 1.4
Inter Tight · body
The quick brown fox jumpsParagraphs at 60% white; 16px at ≤479. 18px · 500 · 1.4
Inter Tight · label
The quick brown fox jumpsButtons. 16px · 600 · 1.25
Spacing & shape
| Purpose | Value |
|---|---|
| Container | .container max 1200px, centred |
| Breakpoints | 991px, 767px and 479px, plus a 1440px+ step |
Spacing scale
| Token | Value | Preview |
|---|---|---|
xs | 7px | |
sm | 15px | |
md | 20px | |
lg | 30px | |
xl | 50px | |
2xl | 100px | |
3xl | 150px |
Layout spacing
| Token | Value | Preview |
|---|---|---|
gutter | 72px | |
section | 100px | |
hero-top | 205px |
Border radius
Surfaces
How the surfaces stack, from the page background up. Hex codes and roles are in Colors above.
Motion
| Fade-up on scroll | opacity 0 → 1, y 20px → 0, 300–500ms ease-out-cubic or ease |
| Scale-in | scale 0 → 1, 400–600ms ease-out-expo, for icons and the cursor circle |
| Button hover | The inset sheen removed, 0.2s |
| Link hover | Opacity 60% → 100% (footer) or 100% → 60% (blog titles), 0.3s |
| Logo tab hover | Opacity 37% → 100%, 0.4s |
| Menu | The overlay slides in from x −100% (500ms ease-out-back); the crimson bar fills behind a hovered link |
| Hero image | Follows the mouse slightly (mouse-move) and shifts on page scroll |
Do’s and don’ts
- Keep the canvas pure #000000 and all text white; set paragraphs at white 60%.
- Use crimson #C51E3A for the primary button, the 70px icon squares and one statement line only.
- Split leads and statements into white and white-50% halves.
- Give buttons a 5px radius, 50px height, padding 15px 20px and the inset white-10% sheen that drops on hover.
- Build cards from white at 15% with a 10px radius, and wrap featured work in a 50px-radius panel with a top-left glow.
- Use Inter Tight 600 for headlines and 500 for metrics and menu links.
- Add a second accent colour, or use crimson for body text or large backgrounds.
- Use drop shadows or solid grey cards; depth is white alpha over black.
- Use ink-faint (white at 40%) for anything but inactive controls and dimmed logos.
- Round buttons into pills; only the nav MENU, logo tabs and subscribe field are pill-shaped.
- Copy the shipped #333333 input text colour; typed text must be white.
- Use Newsreader or any serif; it is loaded but unused.
Example prompt
Any page in the Harlem style
More design systems like this
Business design systems, the same colors first.
Bring any of them to your AI tool
All Access unlocks all 398 design systems, ready for Claude, ChatGPT, Gemini, Cursor, v0 and Lovable, plus 400+ templates on all 5 platforms.
Get All AccessUpgrade to All AccessHow to use the Harlem design system
Pick a file to see what it’s for and where it goes.
What it is
The whole design system in one markdown file, written for AI: every color, type style, spacing value, component and motion rule, plus do's, don'ts and a ready prompt.
Best for
Claude, ChatGPT, Gemini, Cursor and v0, or any other AI tool that builds pages or code.
How to use it
- Put
DESIGN.mdin your project and mention it in your request, or save it as.cursor/rules/harlem.mdc - For the rule file, start it with a front-matter block that sets
alwaysApply: true, so every chat uses it - Ask: “Build a pricing page using DESIGN.md.” Cursor follows the colors, fonts, spacing and rules
- Put
DESIGN.mdin the project root - Add one line to
CLAUDE.md: “Follow DESIGN.md for all UI.” - Ask for any page or component; Claude reads the file first
- Attach
DESIGN.mdto the chat (or paste it in) - Ask: “Build a landing page in this design system.”
- Keep the file in the chat or project knowledge, so follow-up pages stay on style
What it is
Every token as data, in the W3C Design Tokens format: colors with their roles, type styles, radius, spacing, and component tokens that point at them.
Best for
Figma (Tokens Studio), Style Dictionary and other design-token tools, and build scripts.
How to use it
- In Figma, open Tokens Studio, choose Import, and pick
tokens.json - Or point Style Dictionary’s
sourceat it to generate tokens for any platform - In code, import it like any JSON file
What it is
A Tailwind CSS v4 theme: every color, font, type style, radius and spacing value becomes a Tailwind utility, like bg-canvas, text-headline-lg or rounded-md.
Best for
Tailwind v4 projects, and AI builders that write Tailwind (v0, Lovable, Bolt).
How to use it
- Save
theme.cssnext to your main CSS file - Import it after Tailwind:
@import "tailwindcss"; @import "./theme.css"; - Use the classes:
bg-canvas text-ink rounded-md p-lg
What it is
The same tokens as plain CSS variables on :root. Component values point at the color variables, so changing one color updates everything that uses it.
Best for
Any website: plain CSS, Webflow custom code, Framer, WordPress.
How to use it
- Add it to your stylesheet, or in Webflow paste it into Site settings → Custom code inside a
<style>tag - Use the variables anywhere:
color: var(--color-ink) - Change a token once and every place that uses it follows






