# Bloomberg

> `bloomberg@1.0.0`

Bloomberg is the financial-media and data-services powerhouse — the Bloomberg Terminal anchors the franchise, with Bloomberg News, Bloomberg Opinion, Businessweek, and Bloomberg Government extending the brand across consumer and B2B surfaces. The visual identity is engineered for data legibility: precise grays, terminal-black, and the unmistakable Bloomberg yellow (#FFCD1E) reserved for the ticker accent and editorial emphasis. Bloomberg Opinion uses a distinct deep blue link color (#0064FA). Type pairs Mecano (display) with Avenir Next (sans) and Publico Head / Publico Text (serif).


**Tags:** `bloomberg`, `news`, `finance`, `journalism`, `brand`, `yellow`, `terminal`, `business`, `light-first`

## Atoms

### Palette

**Bloomberg** · `bloomberg@1.0.0` · Proprietary — All Rights Reserved

> The Bloomberg palette as deployed on bloomberg.com, captured from the published Phoenix ("phx") design-system tokens served alongside the consumer site. The identity is built on a precise, data-terminal feel: near-black on white, deep ink dark mode, and a signature Bloomberg yellow (#FFCD1E) reserved for the ticker accent and editorial emphasis. The system publishes a full 9-step ramp across gray, red, green, yellow, opinion blue, and subscription violet — designed for chart legibility on the terminal as much as the editorial page. 

### Fonts

| Role | Font | License | Classification |
|------|------|---------|----------------|
| `heading` | **Source Serif 4** `(source-serif-4@1.0.0)` | OFL-1.1 | serif |
| `body` | **Source Serif 4** `(source-serif-4@1.0.0)` | OFL-1.1 | serif |
| `sans` | **Inter** `(inter@1.0.0)` | OFL-1.1 | sans-serif |
| `mono` | **JetBrainsMono Nerd Font** `(jetbrainsmono-nerdfont@1.0.0)` | OFL-1.1 | monospace |

## Swatches

| ID | Name | Value |
|----|------|-------|
| `black` | Black | `#000000` |
| `gray-1000` | Gray 1000 | `#1C1C1C` |
| `gray-900` | Gray 900 | `#262626` |
| `gray-800` | Gray 800 | `#3C3C3C` |
| `gray-700` | Gray 700 | `#545454` |
| `gray-600` | Gray 600 | `#767676` |
| `gray-500` | Gray 500 | `#999999` |
| `gray-400` | Gray 400 | `#B3B3B3` |
| `gray-300` | Gray 300 | `#CCCCCC` |
| `gray-200` | Gray 200 | `#EFEFEF` |
| `gray-100` | Gray 100 | `#F8F8F8` |
| `white` | White | `#FFFFFF` |
| `yellow-400` | Bloomberg Yellow 400 | `#FFCD1E` |
| `yellow-300` | Yellow 300 | `#FFDA5D` |
| `yellow-500` | Yellow 500 | `#E6B120` |
| `yellow-600` | Yellow 600 | `#C48600` |
| `red-500` | Red 500 | `#E51503` |
| `red-400` | Red 400 | `#F05143` |
| `red-600` | Red 600 | `#B20E01` |
| `green-500` | Green 500 | `#338736` |
| `green-400` | Green 400 | `#4DB250` |
| `green-600` | Green 600 | `#146917` |
| `opinion-500` | Opinion Blue 500 | `#0064FA` |
| `opinion-600` | Opinion Blue 600 | `#004EC4` |
| `opinion-200` | Opinion Blue 200 | `#D4E5FF` |
| `subscription-500` | Subscription Violet 500 | `#4F4FFF` |
| `subscription-700` | Subscription Violet 700 | `#2800D7` |

## Mode role mappings

### Light mode

| Role | Swatch | Hex |
|------|--------|-----|
| `background` | `white` | `#FFFFFF` |
| `surface` | `gray-100` | `#F8F8F8` |
| `surface-elevated` | `white` | `#FFFFFF` |
| `text-primary` | `gray-1000` | `#1C1C1C` |
| `text-secondary` | `gray-700` | `#545454` |
| `text-tertiary` | `gray-600` | `#767676` |
| `primary` | `opinion-500` | `#0064FA` |
| `primary-hover` | `opinion-600` | `#004EC4` |
| `accent` | `yellow-400` | `#FFCD1E` |
| `accent-hover` | `yellow-500` | `#E6B120` |
| `warning` | `yellow-600` | `#C48600` |
| `error` | `red-500` | `#E51503` |
| `success` | `green-500` | `#338736` |
| `border` | `gray-300` | `#CCCCCC` |

### Dark mode

| Role | Swatch | Hex |
|------|--------|-----|
| `background` | `black` | `#000000` |
| `surface` | `gray-1000` | `#1C1C1C` |
| `surface-elevated` | `gray-900` | `#262626` |
| `text-primary` | `white` | `#FFFFFF` |
| `text-secondary` | `gray-200` | `#EFEFEF` |
| `text-tertiary` | `gray-400` | `#B3B3B3` |
| `primary` | `opinion-500` | `#0064FA` |
| `primary-hover` | `opinion-200` | `#D4E5FF` |
| `accent` | `yellow-400` | `#FFCD1E` |
| `accent-hover` | `yellow-300` | `#FFDA5D` |
| `warning` | `yellow-300` | `#FFDA5D` |
| `error` | `red-400` | `#F05143` |
| `success` | `green-400` | `#4DB250` |
| `border` | `gray-700` | `#545454` |

## Brand semantic roles

### Colors

| Role | Swatch | Hex |
|------|--------|-----|
| `identity` | `black` | `#000000` |
| `on-identity` | `yellow-400` | `#FFCD1E` |
| `primary` | `opinion-500` | `#0064FA` |
| `primary-hover` | `opinion-600` | `#004EC4` |
| `accent` | `yellow-400` | `#FFCD1E` |
| `accent-hover` | `yellow-500` | `#E6B120` |
| `mark` | `yellow-400` | `#FFCD1E` |
| `success` | `green-500` | `#338736` |
| `warning` | `yellow-600` | `#C48600` |
| `error` | `red-500` | `#E51503` |
| `text-primary-light` | `gray-1000` | `#1C1C1C` |
| `text-primary-dark` | `white` | `#FFFFFF` |
| `background-light` | `white` | `#FFFFFF` |
| `background-dark` | `black` | `#000000` |
| `surface-light` | `gray-100` | `#F8F8F8` |
| `surface-dark` | `gray-1000` | `#1C1C1C` |
| `text-secondary-light` | `gray-700` | `#545454` |
| `text-tertiary-light` | `gray-600` | `#767676` |
| `border-light` | `gray-300` | `#CCCCCC` |

### Typography

| Role | Font role key |
|------|---------------|
| `display` | `heading` |
| `prose` | `body` |
| `ui` | `sans` |
| `code` | `mono` |

## Rules

### 🛑 error (6)

#### `contrastRatio` → `text-primary`

- **against:** `background`
- **minRatio:** `7`
- **standard:** `WCAG-AAA`

> Gray 1000 (#1C1C1C) on white gives ~16:1 — past AAA. Bloomberg's editorial surfaces sit alongside dense data tables and chart legends. The AAA contrast target supports both the long-form journalism and the data-density that define the brand. 

#### `colorChoice` → `roles.colors.accent`

- **allowed:** yellow-400, yellow-500, yellow-300
- **forbidden:** opinion-500, subscription-500, red-500

> Bloomberg yellow is the singular brand identity color across the Terminal and consumer surfaces. The opinion blue is reserved for Bloomberg Opinion link affordances, and the subscription violet for subscription product accents — neither stands in for the accent role without breaking the brand's editorial taxonomy. 

#### `contextRestriction` → `roles.colors.primary`

- **forbiddenContexts:** terminal-chrome, ticker-accent, subscription-marketing
- **allowedContexts:** opinion, default-link, editorial-cta

> Opinion blue (#0064FA) is published in Phoenix tokens as a secondary-opinion color — it carries link semantics for Bloomberg Opinion content. Using it for terminal chrome or subscription marketing would conflict with the Phoenix-defined product hierarchy. 

#### `fontPairing` → `typography.display`

- **requires:** `prose`
- **minSizeRatio:** `1.5`

> Bloomberg's editorial pages pair Mecano display headlines with Publico Text body. The display-to-prose hierarchy is part of the editorial voice; a 1.5× minimum ratio preserves it when open-source substitutes (Source Serif 4) stand in for the proprietary primaries. 

#### `forbiddenTreatment` → `logo`

- **treatments:** stretched, rotated, recolored, drop-shadow, gradient-fill, on-busy-photo

> The Bloomberg wordmark and the Terminal logotype are tightly governed brand assets. Recoloring (especially away from black or yellow), stretching, or applying gradients conflicts with the brand's data-precision voice. 

#### `contextRestriction` → `roles.colors.success`

- **forbiddenContexts:** error-state, destructive-action
- **allowedContexts:** market-up, data-viz-positive, confirmation

> In Bloomberg market data, green signals positive movement. Reusing it for failure states would conflict with the established market-color semantics that underpin every financial chart on the Terminal. 

### ⚠️ warning (2)

#### `accessibilityRequirement` → `*`

- **standard:** `WCAG-AAA`
- **criterion:** `1.4.6`

> WCAG 2.1 Success Criterion 1.4.6 (Contrast Enhanced) — Level AAA. Bloomberg readers spend long sessions on data tables, chart legends, and dense prose; the enhanced contrast target supports that reading posture. 

#### `enumMembership` → `typography.heading.fontWeight`

- **allowed:** 400, 500, 600, 700, 800

> Mecano and Avenir Next on Bloomberg pages cover Regular through Extra-Bold. Heavier weights beyond the licensed cut are not represented in the live stylesheet; the Source Serif 4 / Inter substitutes should mirror the same range. 

### 💡 recommendation (1)

#### `compositionConstraint` → `roles.colors.accent`

- **pairsWith:** black, gray-1000, white, gray-100
- **doesNotPairWith:** opinion-500, subscription-500, red-500

> Bloomberg yellow reads cleanest against the terminal black or the white canvas. Placing it adjacent to the opinion blue or subscription violet introduces a chromatic collision between identity-yellow and product-accent colors that Phoenix treats as a hierarchy violation. 

## Provenance

- **Source:** <https://www.bloomberg.com/>
- **License:** `Proprietary — All Rights Reserved`
- **Attribution:** Bloomberg L.P. — visual identity captured from the deployed Phoenix design-system tokens (--phx-color-*) on assets.bwbx.io, the Next.js asset CDN that serves bloomberg.com. Bloomberg, the Bloomberg Terminal, Mecano, Avenir Next, and Publico Head / Publico Text are property of Bloomberg L.P. 
- **Imported:** `2026-05-19`
- **Notes:** Derived from live site CSS at https://www.bloomberg.com/ on 2026-05-19; no public brand guide located. The proprietary Bloomberg Mecano (display serif/sans), Avenir Next (sans), and Publico Head / Publico Text (serif) typefaces are declared in the live stylesheet but are not publicly distributed. Open-source substitutes — source-serif-4@1 for the serif role and inter@1 for the sans role — are referenced from this brand atom. 

---

*Generated by the brand-atoms converter. Source: `bloomberg@1.0.0` from the encyclopedia.*
