David Ewins

Colours

I built this to get from one brand colour to a theme I can ship. Pick a colour, or start from what you want the brand to say, and you get a full light and dark palette that passes contrast, with the code.

Harmony
Start from a meaning

Palette

Tap any colour to copy its hex.

What these colours mean

Pink

Primary

Surveys in Europe and the United States link pink with sweet foods and drinks, and it is one of the few colours tied to a smell, roses. Pink with white suggests innocence. Today it is seen as a symbol of femininity, though before the second half of the 20th century it often signalled masculinity. Source

  • Owens Corning. Dyes its insulation pink and was the first company in the United States to trademark a colour. Source
  • Schiaparelli. Shocking pink was the signature colour of designer Elsa Schiaparelli. Source
  • Deutsche Telekom. Uses a magenta logo and has tried to stop other businesses using similar colours. Source
What pink means in branding

Green

Secondary

Surveys in American, European and Islamic countries link green with nature, life, health, youth, spring, hope and envy. It is the colour of the environmental movement and of safety and permission: a green light means go. Source

  • John Deere. Its farm machines are known by a distinctive green with yellow trim. Source
What green means in branding

Blue

Accent

In the United States and across Europe, blue is the colour people most often pick as their favourite. Surveys there link it with harmony, confidence, knowledge, intelligence, calmness, distance, the imagination, cold and sadness. Because of its link with harmony it was chosen for the flags of the United Nations and the European Union. Source

  • IBM. Nicknamed Big Blue, partly because of its blue logo and colour scheme. Source
  • Tiffany & Co.. Tiffany Blue has been a registered colour trademark since 1998. Its Pantone number, 1837, is the year the company was founded. Source
What blue means in branding

Light and dark

Every text and background pair, checked against WCAG 2 contrast. AA needs 4.5:1 and AAA needs 7:1 for normal size text.

Light

Order confirmed

Your table is booked for 8pm. We'll text you if anything changes.

View bookingShareNew

Questions? Contact us

  • Text on background

    17.11:1AApassAAApass
  • Muted text on background

    6.21:1AApassAAAfail
  • Text on surface

    18.15:1AApassAAApass
  • Muted text on surface

    6.59:1AApassAAAfail
  • Primary as text on background

    2.96:1AAfailAAAfail
  • Label on primary

    5.79:1AApassAAAfail
  • Label on secondary

    6.51:1AApassAAAfail
  • Label on accent

    6.49:1AApassAAAfail

Dark

Order confirmed

Your table is booked for 8pm. We'll text you if anything changes.

View bookingShareNew

Questions? Contact us

  • Text on background

    17.02:1AApassAAApass
  • Muted text on background

    7.71:1AApassAAApass
  • Text on surface

    15.46:1AApassAAApass
  • Muted text on surface

    7.01:1AApassAAApass
  • Primary as text on background

    6.12:1AApassAAAfail
  • Label on primary

    6.03:1AApassAAAfail
  • Label on secondary

    6.78:1AApassAAAfail
  • Label on accent

    6.76:1AApassAAAfail

Export

Plain custom properties. Use them as var(--primary).

theme.css
/* Light by default, dark when the system asks for it. */
:root {
  color-scheme: light;
  --background: #fcf7f8;
  --surface: #ffffff;
  --border: #e5dbde;
  --text: #1d1316;
  --muted: #665a5e;
  --primary: #ec5f9e;
  --on-primary: #1d1316;
  --secondary: #96a300;
  --on-secondary: #1d1316;
  --accent: #00a5e5;
  --on-accent: #1d1316;
  --brand-50: #fff1f5;
  --brand-100: #ffdee9;
  --brand-200: #ffbfd6;
  --brand-300: #ff94be;
  --brand-400: #f668a7;
  --brand-500: #da4e8e;
  --brand-600: #bd3376;
  --brand-700: #9f1a5f;
  --brand-800: #7e0449;
  --brand-900: #5c0033;
  --brand-950: #3f0021;
}

@media (prefers-color-scheme: dark) {
  :root {
    color-scheme: dark;
    --background: #140d10;
    --surface: #1f181b;
    --border: #332b2e;
    --text: #f5f0f2;
    --muted: #aba2a5;
    --primary: #ec5f9e;
    --on-primary: #160f12;
    --secondary: #96a300;
    --on-secondary: #160f12;
    --accent: #00a5e5;
    --on-accent: #160f12;
  }
}

The colours

How it works

The palette is worked out in OKLCH, a colour space where equal steps in lightness look like equal steps to the eye. Secondary and accent colours turn the hue and keep the lightness and chroma. Anything outside what a normal screen can show has its chroma lowered until it fits.

Contrast uses the WCAG 2 formula. The meanings come from colour surveys in Europe and the United States, so they won't hold everywhere: in China, red stands for happiness and good fortune, and in many Asian cultures white is the colour of mourning.

Swatch colours on this page are my own picks, not official brand values. Brands are named only where a source says they are known for the colour.

Sources

27 pages, all read when this was written.