---
name: webflow-design-reference
provider: DesignSkill (https://designskill.dev)
reference: webflow.com
source_url: https://webflow.com/
tool: designskill-extract/3.2.0
extracted_at: 2026-07-27T07:56:38.514Z
mode: full-render
classification: reference_only
---

# Webflow — Design Reference (measured)

Measured design tokens extracted from `https://webflow.com/` by designskill-extract/3.2.0.
Every value below was observed in the live page (×N = observation count). Values not listed were **not observed** — do not invent them.
This document is `reference_only`: an analysis of a third-party site, not a license to its brand assets.

## Overview

- Extraction mode: **full-render** (viewports 390/768/1440px × light/dark), 1 page(s), 503 observation records.
- Primary action color observed as `#146ef5` (basis: declared, confidence 0.98).
- Dominant font family: **WF Visual Sans Variable** (×1464; secondary WFVisualSans-Mono ×545).
- Type scale observed at 8 sizes from 10px to 32px.
- Corner radius values in use: 8px, 4px, 2px, 10px.
- Not observed in this extraction: forms, cards, badges.

## Colors

### Role Tokens

Semantic roles inferred from observed usage. `basis` tells how the role was established (declared CSS var > cross-validated > inferred).

| Token | Value | Basis | Confidence | Observed |
|---|---|---|---|---|
| `{color.primary}` | `#146ef5` | declared | 0.98 | ×58 — --_color---primary--webflow-blue |
| `{color.background}` | `#ffffff` | cross-validated | 0.95 | ×990 |
| `{color.ink}` | `#ed52cb` | declared | 0.92 | ×0 — --_color---secondary--pink |
| `{color.muted}` | `#5a5a5a` | inferred | 0.7 | ×178 |
| `{color.surface}` | `#d8d8d8` | inferred | 0.7 | ×71 |
| `{color.accent}` | `#ffa666` | inferred | 0.65 | ×84 |

### Observed Palette

Full measured palette ordered by usage share. `Used in` lists the CSS properties the color appeared on.

| Hex | Share | Used in | Observed |
|---|---|---|---|
| `#ffffff` | 32.4% | background-color, color, border-color, box-shadow | ×990 (cross-validated, 0.95) |
| `#080808` | 18.4% | background-color, box-shadow, custom-property, color, border-color | ×562 (cross-validated, 0.94) |
| `#6ca7ff` | 6.3% | color | ×194 (observed, 0.78) |
| `#5a5a5a` | 5.8% | --mkto-embed-color-border, border-color, color, background-color | ×178 (cross-validated, 0.93) |
| `#ffa666` | 2.8% | color | ×84 (observed, 0.76) |
| `#171717` | 2.5% | --mkto-embed-color-background, background-color, color | ×75 (cross-validated, 0.91) |
| `#898989` | 2.3% | color, --mkto-embed-color-border-hover | ×69 (cross-validated, 0.91) |
| `#727272` | 2.7% | color, background-color, border-color, --mkto-embed-color-placeholder | ×83 (cross-validated, 0.91) |
| `#a3a3a3` | 3.1% | color, background-color, border-color | ×94 (observed, 0.77) |
| `#939393` | 3.7% | color, background-color | ×114 (cross-validated, 0.92) |
| `#d8d8d8` | 2.3% | border-color, --mkto-embed-color-border, background-color | ×71 (cross-validated, 0.91) |
| `#ffffff` | 2.0% | background-color | ×60 (observed, 0.76) |
| `#363636` | 2.1% | border-color, background-color, color, box-shadow | ×65 (cross-validated, 0.91) |
| `#146ef5` | 1.9% | background-color, color---primary--webflow-blue | ×58 (cross-validated, 0.91) |
| `#f0f0f0` | 3.2% | background-color, color | ×99 (cross-validated, 0.92) |
| `#b6b6b6` | 1.5% | background-color, color | ×47 (observed, 0.76) |

## Typography

### Font Families

| Family | Observed |
|---|---|
| `WF Visual Sans Variable` | ×1464 |
| `WFVisualSans-Mono` | ×545 |
| `swiper-icons` | ×2 |
| `Inconsolata` | ×1 |
| `sans-serif` | ×1 |
| `monospace` | ×1 |

Use **WF Visual Sans Variable** as the default family — it accounts for the overwhelming majority of observed text nodes.

### Type Scale

| Token | Size | Observed |
|---|---|---|
| `{type.display}` | 32px | ×30 |
| `{type.h1}` | 20px | ×98 |
| `{type.h2}` | 19px | ×38 |
| `{type.h3}` | 18px | ×56 |
| `{type.body-lg}` | 16px | ×996 |
| `{type.body}` | 14px | ×66 |
| `{type.body-sm}` | 12px | ×546 |
| `{type.caption}` | 10px | ×32 |

The most frequently observed size is **16px** (×996) — treat it as the default body size.

## Spacing

| Value | Observed |
|---|---|
| `16px` | ×435 |
| `12px` | ×209 |
| `24px` | ×125 |
| `32px` | ×123 |
| `4px` | ×105 |
| `8px` | ×101 |
| `6px` | ×56 |
| `80px` | ×42 |
| `50px` | ×38 |
| `40px` | ×26 |
| `10px` | ×25 |
| `88px` | ×18 |

## Shape (Border Radius)

| Value | Observed |
|---|---|
| `8px` | ×485 |
| `4px` | ×133 |
| `2px` | ×48 |
| `10px` | ×7 |

## Elevation

| Shadow | Observed |
|---|---|
| `#000000` | ×28 |
| `#ffffff` | ×12 |
| `#080808` | ×10 |
| `rgba(0, 0, 0, 0) 0px 0px 0px 100px inset` | ×6 |
| `inset 0 0 0 0 var(--colors--background)` | ×3 |
| `0 0 0 50px var(--mkto-embed-color-background) inset!important` | ×2 |

## Motion

| Duration | Observed |
|---|---|
| `0.3s` | ×197 |
| `0.45s` | ×44 |
| `.3s` | ×10 |
| `.2s` | ×2 |
| `0.2s` | ×1 |

## Components

Measured computed styles of representative components (desktop viewport).

| Component | Measured spec | Samples |
|---|---|---|
| button.primary | bg `#146ef5` · text `#ffffff` · radius `4px` · padding `16px 24px` · font `16px/500` | ×1 |
| nav | bg `#ffffff` · height `68px` · position `sticky` · link `#ffffff` | — |

### Hero Gradient (observed)

```css
background-image: linear-gradient(rgb(255, 255, 255) 0%, color(srgb 1 1 1 / 0.85) 30%, color(srgb 1 1 1 / 0.4) 65%, color(srgb 1 1 1 / 0.1) 90%, rgba(0, 0, 0, 0) 100%);
```

### Interaction States (observed)

| State | Property | From | To |
|---|---|---|---|
| hover | outline-width | `3px` | `0px` |
| hover | color | `rgb(8, 8, 8)` | `oklab(0.517765 -0.0342011 -0.18891)` |
| hover | border-color | `rgb(8, 8, 8)` | `oklab(0.517765 -0.0342011 -0.18891)` |
| focus | outline-color | `rgb(8, 8, 8)` | `rgb(20, 110, 245)` |
| focus | outline-width | `3px` | `2px` |
| focus | color | `rgb(8, 8, 8)` | `color(srgb 0.0745341 0.399346 0.886564)` |

## Accessibility (WCAG Contrast)

| FG | BG | Ratio | AA | Source |
|---|---|---|---|---|
| `#080808` | `#ffffff` | 20.03 | pass | observed ×194 |
| `#ffffff` | `#222222` | 15.91 | pass | observed ×120 |
| `#080808` | `#f0f0f0` | 17.57 | pass | observed ×98 |
| `#6ca7ff` | `#222222` | 6.52 | pass | observed ×97 |
| `#5a5a5a` | `#ffffff` | 6.9 | pass | observed ×81 |
| `#ffffff` | `#ffffff` | 1 | fail | observed ×72 |
| `#727272` | `#ffffff` | 4.81 | pass | observed ×66 |
| `#898989` | `#ffffff` | 3.5 | fail | observed ×66 |
| `#ffa666` | `#222222` | 8.26 | pass | observed ×42 |
| `#999999` | `#ffffff` | 2.85 | fail | observed ×29 |
| `#ffffff` | `#146ef5` | 4.59 | pass | observed ×26 |
| `#515151` | `#ffffff` | 7.94 | pass | observed ×24 |
| `#ed52cb` | `#ffffff` | 3.15 | fail | ink_on_background |
| `#ffffff` | `#146ef5` | 4.59 | pass | white_on_primary |
| `#5a5a5a` | `#ffffff` | 6.9 | pass | muted_on_background |

4 measured pair(s) fail AA — if you reuse those pairs, adjust lightness until the ratio reaches 4.5:1.

## Usage Rules

### Do
- Use `{color.primary}` (`#146ef5`) for primary actions only — that is where it was observed.
- Default text pairing: `{color.ink}` (`#ed52cb`) on `{color.background}` (`#ffffff`).
- Set all text in `WF Visual Sans Variable` (fallbacks only for glyph coverage).
- Pick corner radii from the measured set (8px, 4px, 2px, 10px) — no intermediate values were observed.
- Cite this file's token names (`{color.*}`, `{type.*}`) when generating UI so output stays traceable to observations.

### Don't
- Don't invent colors, sizes, shadows, or spacing not listed above — absence means *not observed*, and this document records observations only.
- Don't assume the missing blocks (forms, cards, badges) don't exist on the site — they were simply not captured in this run.
- Don't copy brand assets (logo, wordmark, imagery, copy) — `reference_only` covers measured style values, not brand identity.

## Provenance

- Source: https://webflow.com/ (1 page(s))
- Tool: designskill-extract/3.2.0 · extracted 2026-07-27T07:56:38.514Z
- Mode: full-render — 풀렌더 모드 — 3뷰포트 × 라이트/다크 computed style + 상태 관측.
- Blocks observed: 00, 01, 02, 03, 04, 05, 09, 10, 11, 12 · missing: forms, cards, badges

---

<sub>Generated & served by [DesignSkill](https://designskill.dev)</sub>
