# #bf31b0

A color — warm. Deterministic analysis from BrandSweets (no inference).

## Values

- Hex: `#bf31b0`
- RGB: rgb(191, 49, 176)
- HSL: hsl(306, 59%, 47%)
- OKLCH: oklch(0.577 0.221 332.8)
- Relative luminance: 0.1641
- Nearest named color: Amora Purple (#bb22aa, Δ 2.103) — https://brandsweets.com/colors/amora-purple
- Moods: warm
- Page: https://brandsweets.com/colors/bf31b0

## Tints & shades

- Tints (toward white): #cd3cbe, #d251c5, #d765cc, #dc79d3, #e392db, #e8a6e1, #edbae8, #f2ceef, #f8e3f6, #fdf7fc
- Shades (toward black): #ae2da1, #9a288f, #8a2480, #7a1f71, #691b62, #55164f, #451240, #350e31, #20081e, #10040f

## Harmonies

- Complementary: #31bf3f
- Analogous: #8631bf, #bf316a
- Triadic: #b0bf31, #31b0bf
- Split-complementary: #6abf31, #31bf86
- Tetradic: #bf8631, #31bf3f, #316abf

## Colors that go with #bf31b0

Named partners (harmony on the OKLCH wheel, co-occurrence in curated palettes and brand systems, and the neutrals that carry it), best first:

- **Sea Green** #2e8b57 [harmony, pool: complementary] — Sea Green sits directly opposite #bf31b0 on the wheel — the strongest contrast one hue can give another, so use it small: a button, a link colour, one highlight. Seen in: Next.js (https://brandsweets.com/colors/brands/nextjs-org). — https://brandsweets.com/colors/seagreen
- **Dark Cyan** #008b8b [harmony, pool: split] — Dark Cyan is a split-complement of #bf31b0: nearly opposite, so it still pops against it, without the vibrating edge of a true complement. Seen in: Peacock (https://brandsweets.com/palettes/vivid#peacock). — https://brandsweets.com/colors/darkcyan
- **Charcoal** #36454f [role, pool] — Charcoal is the body-text near-black for #bf31b0: its slight blue cast keeps type crisp beside a warm colour where pure #000 looks heavy. Seen in: Hasbro (https://brandsweets.com/colors/brands/hasbro-com). — https://brandsweets.com/colors/charcoal
- **Olive Green** #808000 [harmony: split] — Olive Green is a split-complement of #bf31b0: nearly opposite, so it still pops against it, without the vibrating edge of a true complement. — https://brandsweets.com/colors/olive
- **Denim** #1560bd [pool] — Designers have shipped Denim with #bf31b0: two real palettes: Hasbro's brand system and Peacock, as the supporting colour. Seen in: Hasbro (https://brandsweets.com/colors/brands/hasbro-com), Peacock (https://brandsweets.com/palettes/vivid#peacock). — https://brandsweets.com/colors/denim
- **Orange** #ffa500 [pool] — Two real palettes: Sunset Boulevard and Rippling's brand system put Orange beside #bf31b0, as the supporting colour. Seen in: Sunset Boulevard (https://brandsweets.com/palettes/warm#sunset-boulevard), Rippling (https://brandsweets.com/colors/brands/rippling-com). — https://brandsweets.com/colors/orange
- **Crimson** #dc143c [pool] — Crimson is paired with #bf31b0 in The Ordinary's brand system, as the supporting colour. Seen in: The Ordinary (https://brandsweets.com/colors/brands/theordinary-com). — https://brandsweets.com/colors/crimson
- **Deep Pink** #ff1493 [pool] — T-Mobile's brand system puts Deep Pink beside #bf31b0, as the supporting colour. Seen in: T-Mobile (https://brandsweets.com/colors/brands/t-mobile-com). — https://brandsweets.com/colors/deeppink

## Contrast (WCAG 2.x, as text)

- On white (#ffffff): 4.9:1 — AA pass, AA-large pass, AAA fail. Fix: AAA: text → #96278b (7.1:1)
- On black (#000000): 4.28:1 — AA fail, AA-large pass, AAA fail. Fix: AA: text → #c733b8 (4.59:1); AA: background → #f7f7f7 (4.58:1); AAA: text → #d96dcf (7.04:1)

## Fonts for this mood

- warm: https://brandsweets.com/fonts/mood/warm

## Palette tool

Open this color locked as the lead with four explored companions: https://brandsweets.com/palettes/new/bf31b0-c19fb9-8acb62-2d1f26-eee9f1?lock=0&style=vibrant
(Humans lock/regenerate in the tool; the URL is the state — read `lock=` back to see what they kept.)

## Connect an agent

Point any MCP client at the BrandSweets colors endpoint for the same engine:

- Endpoint: https://mcp.brandsweets.com/colors/mcp
- Tools: `analyze_color` (e.g. `analyze_color({ color: "#bf31b0" })`), `check_contrast` (with fixes), `generate_palette` (explore around locks), `suggest_palette` (mood/industry → curated-first), `list_palettes`.
