{
  "id": "airbnb",
  "version": "1.0.0",
  "name": "Airbnb",
  "description": "Airbnb is a global marketplace for short-term lodging and travel experiences, founded in 2008. The brand voice is warm, welcoming, and human — \"belong anywhere.\" Visually, Airbnb is anchored on Rausch (#FF5A5F), the warm pink-red introduced with the 2014 Bélo rebrand by DesignStudio. Rausch carries the brand against generous use of photography, warm whites, and the proprietary Airbnb Cereal typeface. The Bélo mark itself is monochrome; Rausch reads as the voice surrounding it.\n",
  "provenance": {
    "source": "https://news.airbnb.com/press-kit/",
    "license": "Proprietary — All Rights Reserved",
    "attribution": "Airbnb and the Bélo (the Airbnb mark) are trademarks of Airbnb, Inc. Rausch (#FF5A5F) is verified via the simple-icons brand database, which cites airbnb.com as the source. Airbnb Cereal is a proprietary typeface commissioned from Dalton Maag for Airbnb.\n",
    "importedDate": "2026-05-17",
    "notes": "Airbnb's broader original Design Language System catalogues additional named colors (Babu, Arches, Hof, Foggy) in widely-cited secondary literature; those hex values are not currently surfaced in Airbnb's primary public press kit, so brand-atoms catalogues only verified Rausch plus authored neutral surfaces. The Cereal typeface is referenced here with a public-web fallback to Inter when the licensed file is unavailable (see fonts/airbnb-cereal/1.0.0/atom.yaml).\n"
  },
  "tags": [
    "hospitality",
    "travel",
    "airbnb",
    "rausch",
    "warm",
    "marketplace"
  ],
  "palette": {
    "ref": "airbnb@1.0.0",
    "swatches": [
      {
        "id": "airbnb-rausch",
        "name": "Airbnb Rausch",
        "value": "#FF5A5F",
        "description": "Signature pink-red — the primary brand color. Verified hex from the simple-icons brand database citing airbnb.com.\n",
        "aliases": []
      },
      {
        "id": "airbnb-rausch-hover",
        "name": "Airbnb Rausch Hover",
        "value": "#E94A4F",
        "description": "Authored hover / active state for Rausch.",
        "aliases": []
      },
      {
        "id": "airbnb-white",
        "name": "Airbnb White",
        "value": "#FFFFFF",
        "description": "Canvas on light surfaces.",
        "aliases": []
      },
      {
        "id": "airbnb-near-white",
        "name": "Airbnb Near-White",
        "value": "#F7F7F7",
        "description": "Authored panel surface for light mode.",
        "aliases": []
      },
      {
        "id": "airbnb-text-primary",
        "name": "Airbnb Text Primary",
        "value": "#222222",
        "description": "Authored body text on light backgrounds — the near-black tone Airbnb's marketing surfaces uniformly read as.\n",
        "aliases": []
      },
      {
        "id": "airbnb-text-secondary",
        "name": "Airbnb Text Secondary",
        "value": "#717171",
        "description": "Authored secondary text on light backgrounds.",
        "aliases": []
      },
      {
        "id": "airbnb-text-tertiary",
        "name": "Airbnb Text Tertiary",
        "value": "#B0B0B0",
        "description": "Authored tertiary / muted text.",
        "aliases": []
      },
      {
        "id": "airbnb-divider",
        "name": "Airbnb Divider",
        "value": "#EBEBEB",
        "description": "Authored hairline divider tone.",
        "aliases": []
      },
      {
        "id": "airbnb-canvas-dark",
        "name": "Airbnb Canvas Dark",
        "value": "#1A1A1A",
        "description": "Authored dark-mode canvas — Airbnb's primary product is light-first; this is an authored inversion.",
        "aliases": []
      },
      {
        "id": "airbnb-surface-dark",
        "name": "Airbnb Surface Dark",
        "value": "#2B2B2B",
        "description": "Authored elevated surface on dark mode.",
        "aliases": []
      },
      {
        "id": "airbnb-success",
        "name": "Airbnb Success",
        "value": "#008A05",
        "description": "Authored success accent — leans deep green, consistent with Airbnb's status indicators.",
        "aliases": []
      },
      {
        "id": "airbnb-warning",
        "name": "Airbnb Warning",
        "value": "#C13515",
        "description": "Authored warning accent — a deeper red used distinctly from Rausch for destructive context.",
        "aliases": []
      },
      {
        "id": "airbnb-error",
        "name": "Airbnb Error",
        "value": "#C13515",
        "description": "Authored error accent — same deeper red.",
        "aliases": []
      }
    ],
    "modes": {
      "light": {
        "roles": {
          "background": "airbnb-white",
          "surface": "airbnb-near-white",
          "surface-elevated": "airbnb-white",
          "text-primary": "airbnb-text-primary",
          "text-secondary": "airbnb-text-secondary",
          "text-tertiary": "airbnb-text-tertiary",
          "primary": "airbnb-rausch",
          "primary-hover": "airbnb-rausch-hover",
          "accent": "airbnb-rausch",
          "accent-hover": "airbnb-rausch-hover",
          "warning": "airbnb-warning",
          "warning-hover": "airbnb-warning",
          "error": "airbnb-error",
          "success": "airbnb-success"
        }
      },
      "dark": {
        "roles": {
          "background": "airbnb-canvas-dark",
          "surface": "airbnb-surface-dark",
          "surface-elevated": "airbnb-surface-dark",
          "text-primary": "airbnb-white",
          "text-secondary": "airbnb-text-tertiary",
          "text-tertiary": "airbnb-text-secondary",
          "primary": "airbnb-rausch",
          "primary-hover": "airbnb-rausch-hover",
          "accent": "airbnb-rausch",
          "accent-hover": "airbnb-rausch-hover",
          "warning": "airbnb-warning",
          "warning-hover": "airbnb-warning",
          "error": "airbnb-error",
          "success": "airbnb-success"
        }
      }
    }
  },
  "fonts": [
    {
      "role": "heading",
      "ref": "airbnb-cereal@1.0.0",
      "family": "Airbnb Cereal",
      "classification": "sans-serif",
      "source": {
        "kind": "external",
        "family": "Airbnb Cereal",
        "notes": "Licensed font; no public CDN. Distributed by Airbnb to authorized partners. CSS @font-face declarations must reference internally hosted files.\n"
      },
      "fallbackStack": [
        "Inter",
        "-apple-system",
        "BlinkMacSystemFont",
        "Segoe UI",
        "Roboto",
        "Helvetica Neue",
        "Arial",
        "sans-serif"
      ],
      "availableStyles": [
        {
          "weight": 300,
          "style": "normal"
        },
        {
          "weight": 400,
          "style": "normal"
        },
        {
          "weight": 500,
          "style": "normal"
        },
        {
          "weight": 600,
          "style": "normal"
        },
        {
          "weight": 700,
          "style": "normal"
        },
        {
          "weight": 800,
          "style": "normal"
        }
      ]
    },
    {
      "role": "body",
      "ref": "airbnb-cereal@1.0.0",
      "family": "Airbnb Cereal",
      "classification": "sans-serif",
      "source": {
        "kind": "external",
        "family": "Airbnb Cereal",
        "notes": "Licensed font; no public CDN. Distributed by Airbnb to authorized partners. CSS @font-face declarations must reference internally hosted files.\n"
      },
      "fallbackStack": [
        "Inter",
        "-apple-system",
        "BlinkMacSystemFont",
        "Segoe UI",
        "Roboto",
        "Helvetica Neue",
        "Arial",
        "sans-serif"
      ],
      "availableStyles": [
        {
          "weight": 300,
          "style": "normal"
        },
        {
          "weight": 400,
          "style": "normal"
        },
        {
          "weight": 500,
          "style": "normal"
        },
        {
          "weight": 600,
          "style": "normal"
        },
        {
          "weight": 700,
          "style": "normal"
        },
        {
          "weight": 800,
          "style": "normal"
        }
      ]
    },
    {
      "role": "mono",
      "ref": "jetbrainsmono-nerdfont@1.0.0",
      "family": "JetBrainsMono Nerd Font",
      "classification": "monospace",
      "source": {
        "kind": "external",
        "family": "JetBrainsMono Nerd Font",
        "notes": "Nerd-Font-patched build of JetBrains Mono. Not available via Google Fonts. Download woff2/ttf files from the Nerd Fonts GitHub release and self-host, or install system-wide for terminal/IDE use.\n"
      },
      "fallbackStack": [
        "JetBrains Mono",
        "Fira Code",
        "Menlo",
        "Monaco",
        "Consolas",
        "Liberation Mono",
        "monospace"
      ],
      "availableStyles": [
        {
          "weight": 100,
          "style": "normal"
        },
        {
          "weight": 100,
          "style": "italic"
        },
        {
          "weight": 200,
          "style": "normal"
        },
        {
          "weight": 200,
          "style": "italic"
        },
        {
          "weight": 300,
          "style": "normal"
        },
        {
          "weight": 300,
          "style": "italic"
        },
        {
          "weight": 400,
          "style": "normal"
        },
        {
          "weight": 400,
          "style": "italic"
        },
        {
          "weight": 500,
          "style": "normal"
        },
        {
          "weight": 500,
          "style": "italic"
        },
        {
          "weight": 600,
          "style": "normal"
        },
        {
          "weight": 600,
          "style": "italic"
        },
        {
          "weight": 700,
          "style": "normal"
        },
        {
          "weight": 700,
          "style": "italic"
        },
        {
          "weight": 800,
          "style": "normal"
        },
        {
          "weight": 800,
          "style": "italic"
        }
      ]
    }
  ],
  "roles": {
    "colors": {
      "identity": "airbnb-rausch",
      "on-identity": "airbnb-white",
      "primary": "airbnb-rausch",
      "primary-hover": "airbnb-rausch-hover",
      "accent": "airbnb-rausch",
      "accent-hover": "airbnb-rausch-hover",
      "success": "airbnb-success",
      "warning": "airbnb-warning",
      "error": "airbnb-error",
      "background-light": "airbnb-white",
      "background-dark": "airbnb-canvas-dark",
      "surface-light": "airbnb-near-white",
      "surface-dark": "airbnb-surface-dark",
      "text-primary-light": "airbnb-text-primary",
      "text-primary-dark": "airbnb-white",
      "text-secondary-light": "airbnb-text-secondary",
      "divider": "airbnb-divider"
    },
    "typography": {
      "display": "heading",
      "prose": "body",
      "code": "mono"
    }
  },
  "assets": [],
  "rules": [
    {
      "type": "colorChoice",
      "target": "logo.mark",
      "severity": "error",
      "rationale": "The Bélo mark is rendered in Rausch on light surfaces, in Rausch on dark surfaces where contrast permits, or in monochrome white/near-black variants. Recoloring Rausch into off-brand hues violates Airbnb's brand-use guidance.\n",
      "allowed": [
        "airbnb-rausch",
        "airbnb-white",
        "airbnb-text-primary"
      ],
      "forbidden": [
        "any-non-brand-color"
      ]
    },
    {
      "type": "forbiddenTreatment",
      "target": "logo",
      "severity": "error",
      "rationale": "The Bélo's reading depends on respect for its custom proportions and clearspace. Airbnb's press kit forbids stretching, rotating, or recoloring the mark.\n",
      "treatments": [
        "stretched",
        "rotated",
        "recolored",
        "drop-shadow",
        "on-busy-photo",
        "inverted-without-variant",
        "placed-without-clearspace"
      ]
    },
    {
      "type": "contrastRatio",
      "target": "text-primary",
      "severity": "error",
      "rationale": "WCAG 2.1 Level AA contrast minimum for body text. Airbnb Text Primary (#222222) on Airbnb White (#FFFFFF) clears AA comfortably.\n",
      "against": "background",
      "minRatio": 4.5,
      "standard": "WCAG-AA"
    },
    {
      "type": "contrastRatio",
      "target": "roles.colors.primary",
      "severity": "error",
      "rationale": "Rausch (#FF5A5F) on white meets WCAG AA at large-text size; CTA buttons and primary affordances must clear 3:1.\n",
      "against": "background",
      "minRatio": 3,
      "standard": "WCAG-AA-large"
    },
    {
      "type": "variantSelection",
      "target": "logo",
      "severity": "error",
      "rationale": "On dark surfaces, use the Bélo in white. Do not invert the Rausch fill on the fly.\n",
      "when": {
        "backgroundColorScheme": "dark"
      },
      "use": "belo-light"
    },
    {
      "type": "variantSelection",
      "target": "logo",
      "severity": "error",
      "rationale": "On light surfaces, the Bélo renders in Rausch. The mark on the canonical airbnb.com surface is Rausch, not monochrome.\n",
      "when": {
        "backgroundColorScheme": "light"
      },
      "use": "belo-rausch"
    },
    {
      "type": "contextRestriction",
      "target": "roles.colors.identity",
      "severity": "error",
      "rationale": "Airbnb's brand-use guidance restricts use of the Bélo and Rausch in ways that imply affiliation, on competing-product surfaces, or on third-party merchandise without explicit license.\n",
      "forbiddenContexts": [
        "product-of-competitor",
        "merchandise",
        "endorsement-implication"
      ]
    },
    {
      "type": "enumMembership",
      "target": "typography.heading.fontWeight",
      "severity": "warning",
      "rationale": "Airbnb Cereal ships with discrete weights Light (300), Book (400), Medium (500), Semi-Bold (600), Bold (700), and Extra-Bold (800). Headlines on airbnb.com sit in the 500–800 band; lighter weights compromise the confident, warm-but-precise voice.\n",
      "allowed": [
        "500",
        "600",
        "700",
        "800"
      ]
    },
    {
      "type": "accessibilityRequirement",
      "target": "*",
      "severity": "error",
      "rationale": "WCAG 2.1 Success Criterion 1.4.3 (Contrast Minimum) — Level AA. Airbnb-skinned surfaces must clear AA on body text.\n",
      "standard": "WCAG-AA",
      "criterion": "1.4.3"
    }
  ]
}
