Fufo Design System
Fufo is a strict, monochrome marketing agency site. It reads like a printed broadsheet: pure white page, pure black General Sans at weight 500, and full-width 1px black rules that box every section into a grid. Colour comes only from the photography; the interface is black, white and two greys.
Four signatures make it recognisable:
- Grey words inside black headlines. Long statements switch part of the sentence to ink-faint #8F8F8F and back to black for the final full stop: FUFO has become a leader in black, digital experiences, web design and branding grey, . black.
- Circular buttons. The main calls to action are 180px black discs with white uppercase labels (GET IN TOUCH, JOIN OUR TEAM), and the headline metric $700M sits inside a 1px outlined circle about 550px across.
- Ruled grid. A 1px black rule runs under the nav, between sections and around the services grid, whose cells share hairline borders like a table.
- Stacked logotype. The FU / FO logo is set in two lines in the centre of the nav, with a tagline at the left and a cart and + menu icon at the right.
Fufo is a light-only design.
Colors
Surfaces
#FFFFFFPage background, the open menu, and every card
#FFFFFFSame as canvas: there are no raised panels
#FFFFFFInputs are transparent on the white page with a 1px black border
#000000Black discs and dark media areas with white text
Ink
#FFFFFFText on primary
#000000Headlines, labels, links and the nav
#000000Body copy is full black, the same as ink
#686868Dark-grey meta links (.dark-link)
#8F8F8FThe grey half of a headline (.gray-text), used at 26px and up
#000000Text on secondary
#FFFFFFText on secondary-hover
#FFFFFFText on inverse-canvas
Action
#000000The circular button fill and its label
#FFFFFFThe boxed .button (form submit), with a 1px black border
#000000.button:hover: the box fills black and the label turns white
Lines & effects
#000000Every 1px rule and border: nav, sections, services grid, logo strip, inputs
Typography
General Sans · display-metric
The quick brown fox jumps$700M inside the circle (.fact-title, 7vw). 101px · 500 · 1
General Sans · headline-lg
The quick brown fox jumpsStatements and section titles: Where creativity meets productivity., Featured works. 58px · 500 · 1.1
General Sans · title-lg
The quick brown fox jumpsSmall section labels: Trusted by great companies, Here are some impressive metrics, Testimonials. 30px · 500 · 1.1
General Sans · body-xl
The quick brown fox jumpsHero lead paragraph. 26px · 500 · 1.2
General Sans · label
The quick brown fox jumpsNav tagline, inputs, default text. 14px · 500 · 1.43
General Sans · eyebrow
The quick brown fox jumpsVIEW ALL links. 13px · 600 · 1.54 · 2px
Spacing & shape
| Purpose | Value |
|---|---|
| Container | full width |
| Breakpoints | 991px, 767px and 479px (Webflow defaults) |
Spacing scale
| Token | Value | Preview |
|---|---|---|
xs | 5px | |
sm | 15px | |
md | 16px | |
lg | 30px | |
xl | 50px | |
2xl | 100px |
Layout spacing
| Token | Value | Preview |
|---|---|---|
gutter | 29px | |
section | 50px | |
nav-height | 91px | |
section-cta | 100px |
Border radius
Motion
| Scroll reveal | opacity 0 → 1 and move to y 0, 1000ms outQuart |
| Quick fade-up | y 20px → 0 with opacity → 1, 300–400ms outCubic |
| Hover colour | Text, border and background colour changes, 200ms ease; .button uses transition: all .2s |
| Circle button hover | Size change on the black fill, 300ms ease |
| Menu open | Click toggles the menu between display: none and flex; the + rotates over 300ms ease |
| Work card cursor | A custom cursor follows the mouse over .project-card (mouse-move interaction) |
| Text rotator | The band's line moves sideways as you scroll |
Do’s and don’ts
- Keep the page pure #FFFFFF with #000000 text, and set body copy in full black.
- Separate sections and cells with 1px solid #000000 rules, edge to edge inside the 2% gutter.
- Use the 180px black circle button for the main call to action, with a 14px weight-600 uppercase label at 1px tracking.
- Set every headline in General Sans weight 500 with 0 letter spacing.
- Grey out the middle phrase of long statements with ink-faint #8F8F8F and close with a black full stop.
- Keep images square-cornered.
- Add an accent colour, gradients, shadows or tinted panels.
- Use ink-faint #8F8F8F under 24px; it only works inside large headlines.
- Use bold weights in headlines; 700 is for the overlay menu only.
- Round cards, images or inputs. Only circles and the 4px .button have curves.
- Use grey borders. Lines are black.
- Animate longer than 1000ms or add bouncy movement outside the menu.
Example prompt
Any page in the Fufo style
More design systems like this
Marketing 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 Fufo 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/fufo.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






