行业: 金融科技与加密Website

Revolut

Revolut 以纯黑画布、钴紫色和多组高饱和产品色构建数字金融体验,通过大胆标题、鲜明卡片和生活方式影像,体现全球化、年轻化与行动效率。

Light UIPlayfulDesign System
Revolut 网站预览
设计系统
品牌色彩 · 32

primary

#494FDF

--color-primary

primary bright

#4F55F1

--color-primary-bright

primary deep

#3A40C4

--color-primary-deep

on primary

#FFFFFF

--color-on-primary

ink

#191C1F

--color-ink

body

#1F2226

--color-body

charcoal

#3A3D40

--color-charcoal

mute

#505A63

--color-mute

ash

#5C5E60

--color-ash

stone

#8D969E

--color-stone

faint

#C9C9CD

--color-faint

on dark

#FFFFFF

--color-on-dark

canvas light

#FFFFFF

--color-canvas-light

canvas dark

#000000

--color-canvas-dark

surface soft

#F4F4F4

--color-surface-soft

surface card

#FFFFFF

--color-surface-card

surface deep

#0A0A0A

--color-surface-deep

surface elevated

#16181A

--color-surface-elevated

hairline light

#E2E2E7

--color-hairline-light

hairline strong

#191C1F

--color-hairline-strong

accent teal

#00A87E

--color-accent-teal

accent blue link

#376CD5

--color-accent-blue-link

accent light blue

#007BC2

--color-accent-light-blue

accent light green

#428619

--color-accent-light-green

accent green text

#006400

--color-accent-green-text

accent yellow

#B09000

--color-accent-yellow

accent warning

#EC7E00

--color-accent-warning

accent pink

#E61E49

--color-accent-pink

accent danger

#E23B4A

--color-accent-danger

accent deep red

#8B0000

--color-accent-deep-red

accent brown

#936D62

--color-accent-brown

link

#376CD5

--color-link

字体系统

字体家族

Aeonik Pro / Inter

字重

500400600700

备注

2 个字体家族,完整字阶、行高和字距见 DESIGN.md

标签
Light UIPlayfulDesign System
设计文档

品牌设计系统的完整 Markdown 文档

Revolut — Style Reference

> Revolut's marketing surfaces pair a stark black canvas with the brand's

cobalt-violet (`#494fdf`) and a wide accent palette of deep, fully-saturated

product colours — teal, light-blue, deep pink, light-green, warning orange.

The system reads as fintech-meets-product-brochure: oversized 80px–136px

Aeonik Pro display headlines, generous whitespace, photography-led hero

bands, and full-width product mockups (cards, phones, terminals) shown as

hero objects inside near-black sections. Most surfaces are either black or

off-white; pill-shaped buttons and rounded-12/20px content cards carry the

consumer-financial-app feel without crossing into playful territory.

**Theme:** light

**Source website:** [https://www.revolut.com/](https://www.revolut.com/)

Use the live official website to compare and validate this extracted snapshot. The current source website remains authoritative.

Tokens — Colors

| Name | Value | Token | Role |

|---|---|---|---|

| primary | `#494fdf` | `--color-primary` | primary role extracted from the source design |

| primary bright | `#4f55f1` | `--color-primary-bright` | primary bright role extracted from the source design |

| primary deep | `#3a40c4` | `--color-primary-deep` | primary deep role extracted from the source design |

| on primary | `#ffffff` | `--color-on-primary` | on primary role extracted from the source design |

| ink | `#191c1f` | `--color-ink` | ink role extracted from the source design |

| body | `#1f2226` | `--color-body` | body role extracted from the source design |

| charcoal | `#3a3d40` | `--color-charcoal` | charcoal role extracted from the source design |

| mute | `#505a63` | `--color-mute` | mute role extracted from the source design |

| ash | `#5c5e60` | `--color-ash` | ash role extracted from the source design |

| stone | `#8d969e` | `--color-stone` | stone role extracted from the source design |

| faint | `#c9c9cd` | `--color-faint` | faint role extracted from the source design |

| on dark | `#ffffff` | `--color-on-dark` | on dark role extracted from the source design |

| on dark mute | `rgba(255,255,255,0.72)` | `--color-on-dark-mute` | on dark mute role extracted from the source design |

| canvas light | `#ffffff` | `--color-canvas-light` | canvas light role extracted from the source design |

| canvas dark | `#000000` | `--color-canvas-dark` | canvas dark role extracted from the source design |

| surface soft | `#f4f4f4` | `--color-surface-soft` | surface soft role extracted from the source design |

| surface card | `#ffffff` | `--color-surface-card` | surface card role extracted from the source design |

| surface deep | `#0a0a0a` | `--color-surface-deep` | surface deep role extracted from the source design |

| surface elevated | `#16181a` | `--color-surface-elevated` | surface elevated role extracted from the source design |

| hairline light | `#e2e2e7` | `--color-hairline-light` | hairline light role extracted from the source design |

| hairline dark | `rgba(255,255,255,0.12)` | `--color-hairline-dark` | hairline dark role extracted from the source design |

| hairline strong | `#191c1f` | `--color-hairline-strong` | hairline strong role extracted from the source design |

| divider soft | `rgba(255,255,255,0.06)` | `--color-divider-soft` | divider soft role extracted from the source design |

| accent teal | `#00a87e` | `--color-accent-teal` | accent teal role extracted from the source design |

| accent blue link | `#376cd5` | `--color-accent-blue-link` | accent blue link role extracted from the source design |

| accent light blue | `#007bc2` | `--color-accent-light-blue` | accent light blue role extracted from the source design |

| accent light green | `#428619` | `--color-accent-light-green` | accent light green role extracted from the source design |

| accent green text | `#006400` | `--color-accent-green-text` | accent green text role extracted from the source design |

| accent yellow | `#b09000` | `--color-accent-yellow` | accent yellow role extracted from the source design |

| accent warning | `#ec7e00` | `--color-accent-warning` | accent warning role extracted from the source design |

| accent pink | `#e61e49` | `--color-accent-pink` | accent pink role extracted from the source design |

| accent danger | `#e23b4a` | `--color-accent-danger` | accent danger role extracted from the source design |

| accent deep red | `#8b0000` | `--color-accent-deep-red` | accent deep red role extracted from the source design |

| accent brown | `#936d62` | `--color-accent-brown` | accent brown role extracted from the source design |

| link | `#376cd5` | `--color-link` | link role extracted from the source design |

Tokens — Typography

Aeonik Pro · `--font-primary`

  • **Substitute:** Inter, system-ui, sans-serif
  • **Weights:** 500
  • **Sizes:** 136px, 80px, 48px, 40px, 32px, 24px, 20px
  • **Line height:** 1, 1.21, 1.2, 1.19, 1.33, 1.4
  • **Letter spacing:** -2.72px, -0.8px, -0.48px, -0.4px, -0.32px, 0
  • **Role:** Brand typography family observed across the documented type scale.
  • Inter · `--font-family-2`

  • **Substitute:** Inter, system-ui, sans-serif
  • **Weights:** 400, 600, 700
  • **Sizes:** 18px, 16px, 14px, 13px
  • **Line height:** 1.56, 1.5, 1.43, 1.4
  • **Letter spacing:** -0.09px, 0.24px, 0.16px, 0
  • **Role:** Brand typography family observed across the documented type scale.
  • Type Scale

    | Role | Size | Line Height | Letter Spacing | Token |

    |---|---|---|---|---|

    | display-xxl | 136px | 1 | -2.72px | `--text-display-xxl` |

    | display-xl | 80px | 1 | -0.8px | `--text-display-xl` |

    | display-lg | 48px | 1.21 | -0.48px | `--text-display-lg` |

    | display-md | 40px | 1.2 | -0.4px | `--text-display-md` |

    | heading-lg | 32px | 1.19 | -0.32px | `--text-heading-lg` |

    | heading-md | 24px | 1.33 | 0 | `--text-heading-md` |

    | heading-sm | 20px | 1.4 | 0 | `--text-heading-sm` |

    | body-lg | 18px | 1.56 | -0.09px | `--text-body-lg` |

    | body-md | 16px | 1.5 | 0.24px | `--text-body-md` |

    | body-md-bold | 16px | 1.5 | 0.16px | `--text-body-md-bold` |

    | body-sm | 14px | 1.43 | 0 | `--text-body-sm` |

    | button-lg | 20px | 1.4 | 0 | `--text-button-lg` |

    | button-md | 16px | 1.5 | 0.24px | `--text-button-md` |

    | button-sm | 14px | 1.43 | 0 | `--text-button-sm` |

    | caption | 13px | 1.4 | 0 | `--text-caption` |

    | link-emph | 16px | 1.5 | 0.24px | `--text-link-emph` |

    Tokens — Spacing & Shapes

    **Density:** comfortable

    Spacing Scale

    | Name | Value | Token |

    |---|---|---|

    | xxs | 4px | `--spacing-xxs` |

    | xs | 6px | `--spacing-xs` |

    | sm | 8px | `--spacing-sm` |

    | md | 14px | `--spacing-md` |

    | lg | 16px | `--spacing-lg` |

    | xl | 24px | `--spacing-xl` |

    | xxl | 32px | `--spacing-xxl` |

    | xxxl | 48px | `--spacing-xxxl` |

    | block | 80px | `--spacing-block` |

    | section | 88px | `--spacing-section` |

    | band | 120px | `--spacing-band` |

    Border Radius

    | Name | Value | Token |

    |---|---|---|

    | none | 0px | `--radius-none` |

    | sm | 8px | `--radius-sm` |

    | md | 12px | `--radius-md` |

    | lg | 20px | `--radius-lg` |

    | xl | 28px | `--radius-xl` |

    | full | 9999px | `--radius-full` |

    Layout

  • **Section gap:** 88px
  • **Card padding:** 16px
  • **Element gap:** 14px
  • **Max content width:** 1200px
  • Components

    button primary

    **Role:** button primary component

  • **backgroundColor:** `{colors.canvas-light}`
  • **textColor:** `{colors.canvas-dark}`
  • **typography:** `{typography.button-md}`
  • **rounded:** `{rounded.full}`
  • **padding:** `14px 28px`
  • **height:** `48px`
  • button primary pressed

    **Role:** button primary pressed component

  • **backgroundColor:** `{colors.faint}`
  • **textColor:** `{colors.canvas-dark}`
  • **typography:** `{typography.button-md}`
  • **rounded:** `{rounded.full}`
  • button dark

    **Role:** button dark component

  • **backgroundColor:** `{colors.canvas-dark}`
  • **textColor:** `{colors.on-dark}`
  • **typography:** `{typography.button-md}`
  • **rounded:** `{rounded.full}`
  • **padding:** `14px 28px`
  • **height:** `48px`
  • button soft

    **Role:** button soft component

  • **backgroundColor:** `{colors.surface-soft}`
  • **textColor:** `{colors.ink}`
  • **typography:** `{typography.button-md}`
  • **rounded:** `{rounded.full}`
  • **padding:** `14px 28px`
  • **height:** `48px`
  • button outline light

    **Role:** button outline light component

  • **backgroundColor:** `{colors.canvas-light}`
  • **textColor:** `{colors.ink}`
  • **typography:** `{typography.button-md}`
  • **rounded:** `{rounded.full}`
  • **padding:** `13px 27px`
  • **height:** `48px`
  • button outline dark

    **Role:** button outline dark component

  • **backgroundColor:** `{colors.canvas-dark}`
  • **textColor:** `{colors.on-dark}`
  • **typography:** `{typography.button-md}`
  • **rounded:** `{rounded.full}`
  • **padding:** `13px 27px`
  • **height:** `48px`
  • button pill sm

    **Role:** button pill sm component

  • **backgroundColor:** `{colors.surface-soft}`
  • **textColor:** `{colors.ink}`
  • **typography:** `{typography.button-sm}`
  • **rounded:** `{rounded.full}`
  • **padding:** `8px 16px`
  • **height:** `36px`
  • text input

    **Role:** text input component

  • **backgroundColor:** `{colors.canvas-light}`
  • **textColor:** `{colors.ink}`
  • **typography:** `{typography.body-md}`
  • **rounded:** `{rounded.md}`
  • **padding:** `14px 16px`
  • **height:** `56px`
  • hero band dark

    **Role:** hero band dark component

  • **backgroundColor:** `{colors.canvas-dark}`
  • **textColor:** `{colors.on-dark}`
  • **typography:** `{typography.display-xxl}`
  • **rounded:** `{rounded.none}`
  • **padding:** `88px 24px`
  • hero band photo

    **Role:** hero band photo component

  • **backgroundColor:** `{colors.canvas-dark}`
  • **textColor:** `{colors.on-dark}`
  • **typography:** `{typography.display-xl}`
  • **rounded:** `{rounded.none}`
  • **padding:** `0`
  • feature card light

    **Role:** feature card light component

  • **backgroundColor:** `{colors.canvas-light}`
  • **textColor:** `{colors.ink}`
  • **typography:** `{typography.body-md}`
  • **rounded:** `{rounded.lg}`
  • **padding:** `32px`
  • feature card dark

    **Role:** feature card dark component

  • **backgroundColor:** `{colors.surface-elevated}`
  • **textColor:** `{colors.on-dark}`
  • **typography:** `{typography.body-md}`
  • **rounded:** `{rounded.lg}`
  • **padding:** `32px`
  • plan card

    **Role:** plan card component

  • **backgroundColor:** `{colors.surface-elevated}`
  • **textColor:** `{colors.on-dark}`
  • **typography:** `{typography.body-md}`
  • **rounded:** `{rounded.lg}`
  • **padding:** `32px`
  • plan card featured

    **Role:** plan card featured component

  • **backgroundColor:** `{colors.primary}`
  • **textColor:** `{colors.on-primary}`
  • **typography:** `{typography.body-md}`
  • **rounded:** `{rounded.lg}`
  • **padding:** `32px`
  • product mockup

    **Role:** product mockup component

  • **backgroundColor:** `{colors.canvas-dark}`
  • **textColor:** `{colors.on-dark}`
  • **rounded:** `{rounded.xl}`
  • **padding:** `48px`
  • download tile

    **Role:** download tile component

  • **backgroundColor:** `{colors.surface-soft}`
  • **textColor:** `{colors.ink}`
  • **typography:** `{typography.body-sm}`
  • **rounded:** `{rounded.md}`
  • **padding:** `12px 20px`
  • **height:** `56px`
  • badge tag

    **Role:** badge tag component

  • **backgroundColor:** `{colors.surface-soft}`
  • **textColor:** `{colors.ink}`
  • **typography:** `{typography.caption}`
  • **rounded:** `{rounded.full}`
  • **padding:** `4px 12px`
  • badge feature

    **Role:** badge feature component

  • **backgroundColor:** `{colors.primary}`
  • **textColor:** `{colors.on-primary}`
  • **typography:** `{typography.caption}`
  • **rounded:** `{rounded.full}`
  • **padding:** `4px 12px`
  • nav bar

    **Role:** nav bar component

  • **backgroundColor:** `{colors.canvas-dark}`
  • **textColor:** `{colors.on-dark}`
  • **typography:** `{typography.button-md}`
  • **rounded:** `{rounded.none}`
  • **height:** `64px`
  • sub nav pill

    **Role:** sub nav pill component

  • **backgroundColor:** `{colors.surface-elevated}`
  • **textColor:** `{colors.on-dark}`
  • **typography:** `{typography.button-sm}`
  • **rounded:** `{rounded.full}`
  • **padding:** `8px 16px`
  • footer

    **Role:** footer component

  • **backgroundColor:** `{colors.canvas-dark}`
  • **textColor:** `{colors.on-dark-mute}`
  • **typography:** `{typography.body-sm}`
  • **rounded:** `{rounded.none}`
  • **padding:** `80px 24px`
  • Do's and Don'ts

    Do

  • Use `--color-primary` for the brand's primary interaction treatment.
  • Keep page surfaces anchored to `--color-canvas-light`.
  • Preserve every typography style's documented size, line height, and letter spacing.
  • Compare major implementation decisions against [the live Revolut website](https://www.revolut.com/).
  • Don't

  • Do not introduce colors outside the documented color token set.
  • Do not replace `--color-ink` with an arbitrary neutral.
  • Do not flatten documented component states or spacing relationships.
  • Do not treat this extracted snapshot as newer than the live source website.
  • Layout

    Use the documented spacing scale and component geometry as the implementation baseline. Validate responsive composition and current page rhythm against [the live source](https://www.revolut.com/).

    同类品牌推荐
    Revolut 设计系统 | 品牌模板 · ViboDesign