Optune Design System
Optune is a dark, glowing marketing-agency site. Everything sits on pure black, lit by a beam of electric blue light that falls from the top of the screen across a faint geometric line pattern. The type is a clean sans (Geist) with single words swapped into Playfair Display italic, and nearly all body text is uppercase. Cards are frosted glass at 5% white, with a few bright white cards for contrast, and every action is a glowing blue gradient pill.
Four signatures make it recognisable:
- Sans plus serif italic. Headlines mix Geist 500 with one or two words in Playfair Display italic: Building the next era of marketing, Proven results, every time, Integrate to your favorite workplaces.
- Fading text. Headlines and quotes fade from solid to 40% along the line with a text gradient (-90deg, white 40% → white), so the last words look lighter (the next, save, who we are). On white cards the same fade runs in black.
- The glowing pill. Buttons are 50px-radius pills filled with a 20° gradient from #110FDF to #7468FC, uppercase 14px labels, and a soft blue glow below (0 7px 80px -12px #110FDF).
- Glass everywhere. Nav, tags, metric cards, the awards table and process cards are white at 5% with a 40px (or 15px) backdrop blur and a 6.4px radius. The nav is a floating 100px-radius capsule that widens from about 680px to the full 1260px container once you scroll.
Optune is a dark-only design with white contrast cards.
Colors
Surfaces
#000000Page background (--color--second-color)
#FFFFFF · 5%Glass cards, nav capsule, tags, table rows (--backdrop-filter--blur-color, 66 uses)
#FFFFFF · 10%Table header, icon orbs, hovered glass
#FFFFFF · 15%Small raised chips
#FFFFFFWhite feature, review and pricing cards
#F5F5F5Light form inputs; on hover the fill clears and the border goes #E7E7E7
#E7E7E7With field: Light form inputs; on hover the fill clears and the border goes #E7E7E7
Ink
#FFFFFFButton labels
#FFFFFFHeadlines, active nav, table text
#FFFFFF · 70%Uppercase leads (.second-title), nav links
#FFFFFF · 60%Category titles, subscribe placeholder
#FFFFFF · 40%.small-text meta; the faded end of gradient headlines
#000000Text on inverse-canvas
Action
#110FDFButton gradient start, blue links, glow colour (--color--blue)
#7468FCButton gradient end (--button--button-color-second)
#0F9101Rare status text, on 12–15% tints of green #2DF9A7, blue #2D6EF9 and red #F9452D
#F9452DRare status text, on 12–15% tints of green #2DF9A7, blue #2D6EF9 and red #F9452D
Lines & effects
#FFFFFF · 10%1px card and row borders; the vertical divider in the nav
#FFFFFF · 20%With line: 1px card and row borders; the vertical divider in the nav
#999999Light input placeholder
#000000 · 40%#2D6EF9 · 12%Typography
Geist · display-hero
The quick brown fox jumpsBuilding the next era of marketing. 60px · 500 · 1.1 · -0.4px
Geist · headline-lg
The quick brown fox jumpsPricing figures (.pricing-title). 48px · 500 · 1.1 · -1px
Geist · title-lg
The quick brown fox jumpsCard statements, review quotes. 23px · 500 · 1.15 · -0.4px
Geist · body-lg
The quick brown fox jumpsLeads: CUSTOMIZE EVERY ELEMENT WITH OPTUN'S INTUITIVE DESIGN TOOLS…. 18px · 400 · 1.5
Geist · label-nav
The quick brown fox jumpsNav links Home About Work Pages (1.1rem). 17.6px · 500 · 1.14
Playfair Display · caption-serif
The quick brown fox jumpsRoles FOUNDER. 14px · 400 · 1.5
Spacing & shape
| Purpose | Value |
|---|---|
| Container | max 1260px (--page-container--container), centred; some blocks hold 1180px, 940px or 800px |
| Section rhythm | 120px top and bottom (--section--padding-top-bottom), 80px at ≤991 and 60px at ≤767 |
| Breakpoints | 991px, 767px and 479px |
Spacing scale
| Token | Value | Preview |
|---|---|---|
xs | 10px | |
sm | 15px | |
md | 20px | |
lg | 30px | |
xl | 40px | |
2xl | 60px | |
3xl | 100px |
Layout spacing
| Token | Value | Preview |
|---|---|---|
column-gap | 16px | |
gutter | 72px | |
section | 120px | |
footer-bottom | 240px |
Border radius
Surfaces
How the surfaces stack, from the page background up. Hex codes and roles are in Colors above.
Motion
| Hover fade | opacity → 0.6 or → 1, 300ms ease (most links, icons and cards) |
| Button fill | White overlay circle grows, 700–1000ms inOutBack; label colour 300ms ease |
| Nav widen | Size change on page scroll, 300ms ease / 500ms |
| Reveal | y → 0%, 500ms outExpo; opacity 0 → 1, 1000ms outQuart |
| Image hover | scale 1 → 1.1, 500ms |
| Arrow nudge | x 0 → 20px, 800ms inOutBack; back over 300ms ease |
| `+` icon | Rotate, 500ms; 600ms outExpo or inOutQuint |
| Blur change | Filter, 300–400ms ease |
| Dropdown link | padding-left 0 → .75rem, background #FFFFFF12, opacity 0.7 → 1, all 0.3s |
Do’s and don’ts
- Keep the page pure black #000000 with the fixed line pattern and a blue light beam behind it.
- Pair Geist 500 headlines with one Playfair Display italic phrase at the same size, and fade the tail to 40%.
- Set leads, body, labels and buttons in uppercase Geist 400–500.
- Use glass cards (white 5%, 40px blur, 6.4px radius) and a few white cards for contrast.
- Use the gradient pill (#110FDF → #7468FC, 50px radius, 47px tall) with its blue glow for every action.
- Start tags with a thin + icon.
- Use flat solid blue panels or a second accent; the green and red are only tiny status tints.
- Round cards beyond 6.4px; only buttons, tags and the nav are pills.
- Use ink-faint (white 40%) for readable body text; keep it for meta and the faded ends of large headlines.
- Set the Playfair accent in roman or bold; it is italic, weight 400.
- Add drop shadows to cards; the only shadow is the button glow.
- Use the unused #9ADBFF button colour or #1DD35A neon green.
Example prompt
Any page in the Optune style
More design systems like this
SaaS 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 Optune 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/optune.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






