flowmance

Romeo Design System

Romeo website template previewRomeo website template preview detail 2Romeo website template preview detail 3

Romeo is a bold, playful personal portfolio for a single designer. The page is a pale cream (#FFFFE6) with everything else in pure black: a huge, wide Clash Display headline, outline pill buttons, hand-drawn doodles and a circular text badge. The work section is a slow zig-zag of large square-cornered images with the project name and a View Project link beside each one.

Four signatures make it recognisable:

  1. Outline pill nav. Four separate pills (Home, About, Work, Contact) with a 2px black border and a 40px radius, 7px apart at the top right. On hover each fills black and its text turns cream.
  2. Poster hero. Visual / Designer at 213px, weight 600, line height 0.9, centred in a full-height screen, with a circular text badge (CREATIVE DESIGNER UI/UX) to the right and Tw. In. Db. Ig. centred at the bottom.
  3. Black wipe reveals. Headings are covered by a black block (.heading-overlay) that slides across and off as they scroll into view.
  4. Zig-zag work list. Each project is a 2-column row (1fr / 1.3fr) with a 1.32:1 image and the title block on the other side, alternating left and right; a doodle (a smiley) floats near the first title.

Romeo is a light-only design.

Colors

Surfaces

canvas#FFFFE6

Page background (--light-yellow)

surface-1#FFFFFF

The white cart panel, the only surface lighter than the page

field-text#6E6E6E

Input text and placeholders

inverse-canvas#000000

Nav pill hover fill, the heading wipe block

Ink

on-primary#FFFFE6

Text on primary

on-primary-hover#FFFFFF

Text on primary-hover

ink#000000

All text, borders, rules and doodles (89 of 89 measured text uses)

ink-muted#000000

Body text is full black, the same as ink

ink-faint#000000 · 36%

.smaller-text (16px weight 300, opacity 0.36) for secondary figures

inverse-ink#FFFFE6

Text on inverse-canvas

Action

primary#000000

The .button pill: cream text on black

primary-hover#222222

.button:hover

Lines & effects

line#000000

2px pill borders, 2px input underline, 2px nav underline

line-soft#B9BBC8

The 1px base line of link-underline text links

line-cart#E6E6E6

1px cart border only

Typography

Clash Display · display-hero

The quick brown fox jumps

Visual, Designer (.title-1, 13.3rem), each in a 210px clipped box. 213px · 600 · 0.9

Clash Display · headline-lg

The quick brown fox jumps

Hey! I am Romeo, Latest Work, I create digital experiences, the contact title. 60px · 600 · 1.1

Clash Display · title-lg

The quick brown fox jumps

We are happy to contribute to our clients success. 24px · 600 · 1.15

Clash Display · body-lg

The quick brown fox jumps

Section leads (These are some of my recent favorites – always subject to change.). 21px · 500 · 1.24

Clash Display · label-social

The quick brown fox jumps

Tw. 19px · 600 · 1.37

Clash Display · caption

The quick brown fox jumps

Form labels, the ring badge text (set in caps). 14px · 600 · 1.43

Spacing & shape

PurposeValue
Container.container max 1200px, centred
Section rhythm.section is 120px top and bottom with 5% sides (72px at 1440px)
Breakpoints991px, 767px and 479px, plus a min-width: 768px set

Spacing scale

TokenValuePreview
hair2px
xs7px
sm16px
md30px
lg50px
xl80px

Layout spacing

TokenValuePreview
nav-top35px
field-indent79px
section120px

Border radius

pill30px
nav40px
full9999px

Surfaces

How the surfaces stack, from the page background up. Hex codes and roles are in Colors above.

Level 1canvas
Level 2surface-1

Motion

Heading wipeBlack .heading-overlay moves x −100% → 0 then → 100% (300ms easeOut), uncovering the heading
Clipped riseHero lines and project titles move y 300px → 0 inside a clipped box, 500ms
Nav and social rollText rolls up inside a 26px box; size underline 0 → 100%, 500ms ease
Pill hoverBorder and fill change, border 200ms outSine, plus transition: all
Icon hoverscale 1 → 1.1, 100ms ease
Page loadopacity 0 → 1 and move → 0px, 1000ms outQuart
Size revealsSize 400ms outCubic and 500ms outExpo (blocks opening to full size)
Custom cursorFollows the mouse, scales 0 → 1 in 500ms
Buttontransition: all .2s

Do’s and don’ts

  • Keep the page #FFFFE6 and everything else #000000.
  • Use Clash Display 600 for every heading, with no letter spacing.
  • Make nav and secondary actions 2px black outline pills (40px radius) that fill black with #FFFFE6 text on hover.
  • Reveal headings with a black block that wipes across and off.
  • Alternate project rows: image left, then right, at 1fr / 1.3fr with 30px gaps.
  • Use underline-only inputs (2px black bottom border) set in Inter 18px.
  • Use white for text on black; use the cream #FFFFE6.
  • Round the project images or add shadows.
  • Add an accent colour; the blue and green CSS variables are unused.
  • Use ink-faint (black at 36%) below 16px or for paragraphs; it is about 2.5:1 on cream.
  • Use Clash Display for form inputs, or Inter anywhere else.
  • Centre the project titles; they align to the side away from the image.

Example prompt

Any page in the Romeo style

Prompt
Build your page in the Romeo style. Cream #FFFFE6 background, black #000000 text, Clash Display weight 600 headings with no letter spacing. Fixed nav: a 50px two-circle logo left; four outline pills right (2px black border, 40px radius, 46px tall, padding 8px 18px, 18px weight 600), 7px apart, filling black with #FFFFE6 text on hover. Hero: two centred lines at 213px, line height 0.9, rising from a clipped box. Sections: 120px top and bottom, 5% sides, 1200px container, centred 60px titles revealed by a black block wiping across, then a 21px weight 500 lead. Work: alternating rows, a square-cornered 1.32:1 image and a 44px title, 18px meta and a "View Project" link. No shadows, no gradients, no accent colour.

More design systems like this

Portfolio design systems, the same colors first.

Browse all 398

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 Access