designlang
Brand guidelines #ff385c

June 12, 2026

airbnb.com

A reading of the visual language at https://airbnb.com. Every token, every rule, every component — captured from the live site.

Page intent
landing
System grade
A 91/100
Tokens
8 colours · 7 sizes
Generated
designlang
Chapter 01

About

Page intent
landing 45% confidence
Material language
flat
Imagery style
none
Component library
unknown
Stack
unknown
Voice tone
friendly
Chapter 03

Colour

1 primary · 1 secondary · 6 neutrals · 8 total

Primary #FF385C
RGB
255, 56, 92
HSL
349°, 100%, 61%
Secondary #E00B41
RGB
224, 11, 65
HSL
345°, 91%, 46%

Neutrals

#222222
#6A6A6A
#000000
#FFFFFF
#DDDDDD
#EBEBEB

Full palette

#222222
#6A6A6A
#000000
#FFFFFF
#FF385C
#DDDDDD
#EBEBEB
#E00B41

WCAG 100% · 0 passing pairs · 0 failing. Full breakdown in §11.

Chapter 04

Typography

2 families · 7 sizes · 3 weights

Display
Airbnb Cereal VF
Body
Times
Weights
400, 500, 700

Specimen

Site Footer
Support

Scale

StepSizeSample
t00 28px Site Footer
t01 22px Site Footer
t02 21px Site Footer
t03 16px Site Footer
t04 14px Site Footer
t05 12px Site Footer
t06 8px Site Footer
Chapter 05

Spacing

Base 2px · 8 steps captured

Rhythm

2px
15px
20px
32px
35px
48px
80px
131px
Chapter 06

Shape

6 radii · 2 elevation tiers

Border radii

2px
8px
20px
32px
50px
100px

Elevation

xs
sm
Chapter 07

Iconography

unknown · 10 captured

Library
unknown
Confidence
0%
Stroke style
fillDominant
icon
icon
icon
icon
icon
icon
icon
icon
icon
icon
Chapter 08

Motion

Feel: mixed · 4 durations · 3 easings

Duration scale

100ms
175ms
300ms
451754000ms

Easings

Chapter 09

Components

unknown · 1 component patterns captured

Mocks

Card

Built from these tokens

Radius, primary, surface, text — all sampled from the live site.

Read more →

Detected patterns

button

Slots
label, icon, badge
Variants
Sizes
Chapter 10

Voice

friendly · — · —

Headlines from the site

CTA verbs

Chapter 11

Accessibility

100% WCAG 2.1 contrast
0 passing · 0 failing

No failing contrast pairs detected.

Chapter 12

Tokens

Drop-in code for the most common stacks. All values from the live extraction.

CSS variablesvariables.css
:root {
  --color-primary: #ff385c;
  --font-display: "Airbnb Cereal VF";
  --space-base: 2px;
  --radius-md: 8px;
}
Tailwind configtailwind.config.js
// tailwind.config.js
module.exports = {
  theme: {
    extend: {
      colors: { brand: '#ff385c' },
      fontFamily: { display: ['Airbnb Cereal VF', 'serif'] },
      spacing: { base: '2px' },
      borderRadius: { md: '8px' },
    },
  },
};

Run npx designlang pack airbnb.com for the full bundle (DTCG, shadcn, Figma vars, motion, anatomy, Storybook).

Chapter 13

Usage

  1. Lead with the primary.

    It belongs on calls-to-action and one accent moment per screen. Not on body copy.

  2. Two type families, three weights.

    Display for headlines, body for paragraphs. Resist a third unless there is a real reason.

  3. Snap to the spacing scale.

    Padding, margin, and gap should land on the values in §05. One-off pixels accumulate into noise.

  4. Treat accessibility as a hard constraint.

    When a colour pair fails WCAG, fix the colour — not the contrast check.