Design system

The building blocks.

The colours, type, spacing, motion and components this site is made from. Everything here is live: it uses the same CSS variables and classes as the pages themselves.

01

Colour

Blue and pink carry the brand, mostly as one gradient. Pages alternate black and white sections; the greys are for borders and quiet text on black.

Brand

Neutrals

Greys on black

Status

02

Typography

Oswald for all headings (h1, h2 and h3) and the logo; Inter for paragraphs, links and lists; Space Mono for sub headings. Sizes are fluid: each grows from its phone size at 360px wide to its full size at 1280px.

Families

Scale

03

Spacing

All padding, margins and gaps come from this scale. Sections add 20px extra at the bottom; the page sides use --gutter, 24px on phones up to 64px.

04

Shape, motion & layout

Corners

  • 4pxSmall tiles
  • 8pxCards, screens
  • 12px--radius
  • PillButtons, tags

Motion

--ease-out
cubic-bezier(0.22, 1, 0.36, 1). Snappy: page reveals, header links, carousel moves.
Soft ease-out
cubic-bezier(0.33, 1, 0.68, 1). Long glides: the logo intro.
ease-in-out
Colour fades and hover fills, 0.3 to 0.45s.
Reduced motion
Every animation is wrapped so it only runs for visitors who haven't asked for less motion; they see the finished state.

Breakpoints

sm
576px
md
768px. Most layouts switch from stacked to side by side here.
lg
1024px
xl
1280px
Container
68rem (1088px) wide at most, plus the gutters.

05

Components

Live examples, using the same classes as the pages. The class names to use are under each one.

Chapter II · Clients

Who I've worked with

Section heading

An eyebrow, then an Oswald h2 with its last word in the brand gradient.

.eyebrow, h2, .accent-word

Buttons

Pills that fill with the accent blue and lift 2px on hover.

.button, .button--ghost

Light button

The white version, for black sections.

.button.button--light

Call-to-action button

The big black pill with an arrow that nudges right on hover.

.cta__button, .cta__arrow

Open to work Vancouver/Remote

Status pill

An outlined pill with a pulsing green dot.

.hero__eyebrow, .hero__status

Icon links

A boxed arrow: up-right for a new tab, down for a download. The box fills blue and the arrow nudges on hover.

.site-footer__icon, .site-footer__arrow--out / --down

Logo

Live text, not an image: the name in white Inter.

.logo (partials/header.html)
  • Bovada
  • Bodog
  • Slots.lv
  • Ignition Casino
  • MatchPay

Client list

Plain names in the body font: 2 columns on phones, 4 from tablet up.

.clients__list (partials/clients.html)

[Campaign name]

Email · responsive

Work cards

A website in a browser frame, and an email mock-up, each with a serif name and a mono label.

partials/work-card-site.html, partials/work-card-email.html