flowmance

Monoform Design System

Monoform website template previewMonoform website template preview detail 2Monoform website template preview detail 3

Monoform is a loud, monochrome agency site. Huge black Geist headlines with very tight tracking fill the width of a white page, and one word in each headline is swapped for a grey hand-lettered script, like a designer's note scribbled over a poster. All UI is black, white and greys; the only colour comes from the work photography, which is saturated and full-bleed inside rounded cards.

Four signatures make it recognisable:

  1. The scribbled word. One word per headline is set in Just Me Again Down Here (a marker script) in ink-faint grey, larger than the headline around it (192px in the 160px hero, 112px in the 64px H2s): We design brands that refuse to blend in., One senior team. The logo repeats the idea: Mono in Geist plus form in the script.
  2. Mono bracket labels. IBM Plex Mono uppercase sets the meta: (INDEPENDENT DESIGN & TECHNOLOGY STUDIO), section rows (02) ……… WHAT WE DO over a hairline, WEBSITE · 2026 under work.
  3. Black pills. Every action is a full pill: black with an ↗, or white with a grey 1px outline. The current nav item is a grey pill.
  4. The black process band. The page flips to black and four process steps stack as rounded cards in different tones (light grey edges behind, #262626 for step 03, near-black with a 1px ring for step 04), each pushed back and dimmed by the next, with a giant step number (03).

Colors

Surfaces

canvas#FFFFFF

Page background (outline buttons and inputs are transparent on it)

surface-1#F5F5F5

Testimonial band

surface-2#EBEBEB

Tags, active nav pill

inverse-canvas#0A0A0A

Process band and footer

Ink

on-primary#FFFFFF

Text on primary

ink#0A0A0A

Headlines, intro text, mono section labels

ink-soft#3D3D3D

Service and process descriptions

ink-muted#595959

Body copy, nav links, tag text

ink-subtle#7A7A7A

Mono metric labels, small meta

ink-faint#A3A3A3

Script words, stat affixes + and %, placeholders

inverse-ink#FFFFFF

Text on inverse-canvas

Action

primary#0A0A0A

Black pill buttons

primary-hover#0A0A0A

Lines & effects

line#EBEBEB

Hairlines and dividers

line-strong#D9D9D9

Outline button border, section rules, the round arrow button

glass#FFFFFF · 82%

Navigation bar when scrolled

inverse-surface#262626

Process cards on the black band

Typography

Geist · display-wordmark

The quick brown fox jumps

Measured 4 times in the black footer, most likely the giant Monoform wordmark; its script half is 419px (not in the screenshots). 335px · 500 · 0.78 · -15.08px

Geist · headline-lg

The quick brown fox jumps

H2s: Four disciplines. 64px · 600 · 1.0 · -2.88px

Just Me Again Down Here · script

The quick brown fox jumps

The scribbled word inside H2s (senior). 112px · 300 · 0.57 · -2.24px

Geist · title-lg

The quick brown fox jumps

Process step titles (Craft every detail.), work titles. 28px · 600 · 1.1 · -0.98px

Geist · body-lg

The quick brown fox jumps

Hero lead. 22px · 600 · 1.25 · -0.33px

Geist · label

The quick brown fox jumps

Nav links. 15px · 600 · 1.2

Spacing & shape

PurposeValue
Container1440px max with 40px side gutters (content 40–1400px at 1440)
Section headera mono row with (0N) on the left and the section name on the right, a full-width 1px rule under it, then the H2 about 60px below (estimated)
Section rhythmsections have no padding of their own; space sits in inner wrappers
BreakpointsWebflow defaults, 991px, 767px and 479px

Spacing scale

TokenValuePreview
hair1px
xs8px
sm14px
md26px
lg32px
xl48px
2xl64px

Layout spacing

TokenValuePreview
column-gap32px
gutter40px
footer-bottom100px

Border radius

md16px
lg24px
pill1440px
full9999px

Surfaces

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

Level 1canvas
Level 2surface-1
Level 3surface-2

Motion

Headline revealSplitText lines from yPercent 115, rotation 3° to rest, expo.out, about 1.4s with stagger; also yPercent 105, about 1.85s with stagger; triggers at top 88% / top 92%
Fade-upFrom y 60px, expo.out, 1.3s
Image revealclipPath inset(100% 0 0 0) → inset, 1.4s expo.inOut, with the image scaling 1.35 → 1 over 1.8s expo.out
Scrubbed wordsWords of the lead and intro start at opacity 0.15 and light up with scroll
Stacking process cardsPrevious card scale 1 → 0.92, brightness → brightness(0.7), scrubbed
ParallaxyPercent → −18, scrubbed
Magnetic buttonsx / y follow with elastic.out(1, 0.4), 0.9s
Cursor followerx / y with power3 at 0.12s, 0.55s and 0.7s (layered lag)
Click ripplescale 1 → 3, opacity 0.6 → 0, 1.8s expo.out
Rotating badgerotation 360°, 16s linear, looping; icon spin 360° in 0.5s
Logo marqueexPercent → −50, 38s linear, looping
Hoversopacity 0.3s; nav colours 0.4s cubic-bezier(0.19, 1, 0.22, 1)

Do’s and don’ts

  • Set headlines in Geist 500–600 with −4.5% to −6.5% tracking, black #0A0A0A on #FFFFFF.
  • Replace one word per headline with the marker script in ink-faint #A3A3A3 at about 1.75× size.
  • Use IBM Plex Mono 12px uppercase for every label, and open sections with the (0N) … NAME row over a 1px rule.
  • Make every button a pill: black #0A0A0A with white text and ↗, or white with a #D9D9D9 outline.
  • Keep photography as the only colour, inside 16px-radius cards.
  • Flip to the black inverse-canvas band for the process section, with stacking cards in per-step tones (#262626, or near-black with a 1px ring).
  • Add a brand colour or tinted greys.
  • Use ink-subtle #7A7A7A for running text; it is 4.29:1 on white, 3.94:1 on #F5F5F5 and 3.60:1 on #EBEBEB. Keep it for 12px+ uppercase mono labels (metric-label) on white.
  • Use ink-faint #A3A3A3 below 64px; it is 2.52:1 on white and only works for the script word (112px) and big affixes.
  • Use the script for more than one word, or for UI text.
  • Add drop shadows or square buttons.
  • Use Geist Mono or Instrument Serif; they are loaded but not part of the design.

Example prompt

Any page in the Monoform style

Prompt
Build your page in the Monoform style. White #FFFFFF page, 1440px container with 40px gutters. Headlines in Geist: hero 160px / 500 / line height 0.88 / tracking −10.4px, sections 64px / 600 / 1.0 / −2.88px, in #0A0A0A. In each headline, swap one word for "Just Me Again Down Here" script at about 1.75× size in #A3A3A3. Labels in IBM Plex Mono 12px uppercase with +0.72px tracking; open every section with "(02) … WHAT WE DO" over a 1px #D9D9D9 rule. Body Geist 16px / 1.5 in #595959. Buttons are pills: black #0A0A0A with white 16px/500 text and ↗, 53px tall, 16px 26px padding; or transparent with a 1px #D9D9D9 border. Tags are #EBEBEB pills with 13px text. Work images in 16px-radius cards; process steps as 24px-radius stacking cards on a black band, toned per step (#262626, or near-black with a 1px #262626 ring). No shadows, no accent colour. Motion: SplitText lines rising from yPercent 115 with 3° rotation, expo.out about 1.4s; clip-path image wipes 1.4s expo.inOut; magnetic buttons with elastic.out(1, 0.4).

More design systems like this

Agency 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