GrammarlyBrand
DESIGN.md · measured October 23, 2026
Airform design system
Light monochrome interface measured from airform.space: Oakes Grotesk type, tonal surfaces and pill-shaped controls.
- Background
- #FFFFFF
- Primary
- #454545
- Type
- Oakes Grotesk
- Corners
- Pill
From airform.space ↗ · 141 elements at 1440×900 and 390×844 · Independent analysis, not affiliated with Airform
Airform colors
10 roles measured on the page, grouped by where each color is used.
Surfaces
#FFFFFFbackgroundPage background · 4×#F5F5F7surface-container-lowRaised areas one step from the page · 1×#F3F3F6surface-containerCards and panels · 3×#FFFFFF0FoverlayTranslucent fill for cards and controls · 1×Text
#454545on-surface · --color-textPrimary text and headings · 7×#636363on-surface-variant · --color-mutedSecondary text · 2×#FFFFFFon-primaryText and icons on primaryAccents
#454545primary · --color-textPrimary buttons and calls to action · 13×Borders
#DEDEDEoutline · --color-light-lineBorders and dividers · 2×#FFFFFF38outline-variantSecondary dividers · 1×Gradients
Airform fonts
One family carries the whole interface.
mobile 64px
mobile 32px
Contrast
Text on #FFFFFF
9.6:16.0:1Spacing
No strict grid · 24% are multiples of 4px
xs4pxsm6.84pxmd9pxlg18pxxl49.97pxgutter49.97pxsection180pxShapes
Corner radii, most used first.
Depth
Flat: no shadows measured.
Components
Rebuilt from the measured CSS.
Motion
Interface transitions
0.3s0.2s0.25s0.35seasecubic-bezier(0.4, 0, 0.2, 1)
Do’s and don’ts
Rules written from the measurements, so a coding agent stays on style.
- Use #FFFFFF for the page and lift surfaces in small steps: #F5F5F7, #F3F3F6.
- Keep text in 2 levels: #454545, #636363.
- Let contrast carry emphasis; primary actions use #454545 on #FFFFFF.
- Reuse the measured spacing steps (6.84px, 9px, 18px).
- Make buttons and chips fully rounded (9999px); most other elements use 100px corners.
- Add drop shadows for depth; use tonal surfaces.
- Introduce new font families beyond Oakes Grotesk.
- Add saturated accent colors; the measured palette is almost entirely neutral.
- Make interface transitions slower than 0.35s.
---
version: alpha
name: Airform
description: "Light monochrome interface measured from airform.space: Oakes Grotesk type, tonal surfaces and pill-shaped controls."
colors:
background: "#FFFFFF"
surface: "#FFFFFF"
on-surface: "#454545"
on-background: "#454545"
on-surface-variant: "#636363"
surface-container-low: "#F5F5F7"
surface-container: "#F3F3F6"
overlay: "#FFFFFF0F"
outline: "#DEDEDE"
outline-variant: "#FFFFFF38"
primary: "#454545"
on-primary: "#FFFFFF"
typography:
headline-display:
fontFamily: Oakes Grotesk
fontSize: 259px
fontWeight: 500
lineHeight: 1
headline-lg:
fontFamily: Oakes Grotesk
fontSize: 56px
fontWeight: 400
lineHeight: 1.1
letterSpacing: -0.01em
headline-md:
fontFamily: Oakes Grotesk
fontSize: 40px
fontWeight: 300
lineHeight: 1.22
body-md:
fontFamily: Oakes Grotesk
fontSize: 16px
fontWeight: 400
body-lg:
fontFamily: Oakes Grotesk
fontSize: 22px
fontWeight: 300
lineHeight: 1
body-sm:
fontFamily: Oakes Grotesk
fontSize: 15px
fontWeight: 400
lineHeight: 1.4
caption:
fontFamily: Oakes Grotesk
fontSize: 12px
fontWeight: 400
label-lg:
fontFamily: Oakes Grotesk
fontSize: 15px
fontWeight: 500
lineHeight: 1.33
label-md:
fontFamily: Oakes Grotesk
fontSize: 14px
fontWeight: 400
label-sm:
fontFamily: Oakes Grotesk
fontSize: 13px
fontWeight: 500
headline-display-mobile:
fontFamily: Oakes Grotesk
fontSize: 64px
fontWeight: 500
lineHeight: 1
headline-lg-mobile:
fontFamily: Oakes Grotesk
fontSize: 32px
fontWeight: 400
lineHeight: 1.1
letterSpacing: -0.01em
rounded:
sm: 16px
md: 100px
full: 9999px
spacing:
xs: 4px
sm: 6.84px
md: 9px
lg: 18px
xl: 49.97px
gutter: 49.97px
section: 180px
components:
button-primary:
backgroundColor: "{colors.primary}"
textColor: "{colors.on-primary}"
typography: "{typography.caption}"
rounded: "{rounded.md}"
padding: 9px 20px
height: 32px
button-ghost:
textColor: "{colors.on-surface}"
typography: "{typography.caption}"
rounded: 0px
padding: 2px
input-field:
backgroundColor: "{colors.background}"
textColor: "{colors.surface-container-low}"
rounded: "{rounded.full}"
padding: 9px 14px
---
# Airform Design System
## Overview
Airform describes itself as: “Airform One moves heat with water. No refrigerants between devices. Architectural design, silent operation, installed in an afternoon.” The interface is light, built on **White (#FFFFFF)** with **Graphite (#454545)** text and almost no color: actions are carried by contrast, not hue.
Type is set in **Oakes Grotesk**. Headlines run large; body text is 16px. The surface language is flat. Controls are pill-shaped.
Measured from [airform.space](https://airform.space/) on October 23, 2026 at 1440×900 and 390×844 from 141 rendered elements. Values are computed styles from the live page, not the original source files.
## Colors
The palette has 10 roles, plus gradient stops #65819C.
- **White (#FFFFFF):** Page background, seen 4 times. Token `background`.
- **Graphite (#454545):** Primary text and headings, seen 7 times. Token `on-surface`, CSS `--color-text`.
- **Slate (#636363):** Secondary text, seen 2 times. Token `on-surface-variant`, CSS `--color-muted`.
- **Snow (#F5F5F7):** Raised areas one step from the page, seen 1 time. Token `surface-container-low`.
- **Snow (#F3F3F6):** Cards and panels, seen 3 times. Token `surface-container`.
- **White 6% (#FFFFFF0F):** Translucent fill for cards and controls, seen 1 time. Token `overlay`.
- **Silver (#DEDEDE):** Borders and dividers, seen 2 times. Token `outline`, CSS `--color-light-line`.
- **White 22% (#FFFFFF38):** Secondary dividers, seen 1 time. Token `outline-variant`.
- **Graphite (#454545):** Primary buttons and calls to action, seen 13 times. Token `primary`, CSS `--color-text`.
- **White (#FFFFFF):** Text and icons on primary. Token `on-primary`.
## Typography
**Oakes Grotesk** carries the whole interface. Fallback stack: `Oakes Grotesk, system-ui, sans-serif`.
- **headline-display:** Oakes Grotesk 259px at weight 500, line height 1 (64px on mobile). Page title (h1).
- **headline-lg:** Oakes Grotesk 56px at weight 400, line height 1.1, tracking -0.01em (32px on mobile). Section headings (h2).
- **headline-md:** Oakes Grotesk 40px at weight 300, line height 1.22. Sub-section headings.
- **body-md:** Oakes Grotesk 16px at weight 400. Body text.
- **body-lg:** Oakes Grotesk 22px at weight 300, line height 1. Lead paragraphs.
- **body-sm:** Oakes Grotesk 15px at weight 400, line height 1.4. Secondary and small text.
- **caption:** Oakes Grotesk 12px at weight 400. Captions and fine print.
- **label-lg:** Oakes Grotesk 15px at weight 500, line height 1.33. Large buttons and tabs.
- **label-md:** Oakes Grotesk 14px at weight 400. Buttons, navigation and labels.
- **label-sm:** Oakes Grotesk 13px at weight 500. Small labels and badges.
## Layout
Spacing does not follow a strict grid: 24% of measured values are multiples of 4px, so match the measured steps rather than rounding to a grid.
- **Scale:** xs 4px, sm 6.84px, md 9px, lg 18px, xl 49.97px.
- **Sections:** 180px vertical padding between major sections.
- **Gaps:** 49.97px is the most common gap in flex and grid layouts.
## Elevation & Depth
The design is flat: no shadows were measured. Hierarchy comes from tonal surface steps (#F5F5F7 → #F3F3F6) and #DEDEDE borders.
## Shapes
Interactive controls are pill-shaped. Measured radii, most used first:
- **full (9999px):** 20 elements.
- **md (100px):** 8 elements.
- **sm (16px):** 4 elements.
## Components
Measured from the rendered page. Token values reference the tokens above.
- **button-primary (“Order”):** #454545 fill, #FFFFFF text, 12px/400, 100px radius, padding 9px 20px.
- **button-ghost (“EN”):** transparent fill, #454545 text, 12px/500, padding 2px.
- **input-field (“Email address”):** #FFFFFF0F fill, #F5F5F7 text, 13.5px/400, 999px radius, padding 9px 14px, border 1px solid #FFFFFF38.
## Do's and Don'ts
- Do use #FFFFFF for the page and lift surfaces in small steps: #F5F5F7, #F3F3F6.
- Do keep text in 2 levels: #454545, #636363.
- Do let contrast carry emphasis; primary actions use #454545 on #FFFFFF.
- Do reuse the measured spacing steps (6.84px, 9px, 18px).
- Do make buttons and chips fully rounded (9999px); most other elements use 100px corners.
- Don't add drop shadows for depth; use tonal surfaces.
- Don't introduce new font families beyond Oakes Grotesk.
- Don't add saturated accent colors; the measured palette is almost entirely neutral.
- Don't make interface transitions slower than 0.35s.
## Motion
Interface transitions are quick: 0.3s, 0.2s, 0.25s, 0.35s.
- **Easing:** `ease`, `cubic-bezier(0.4, 0, 0.2, 1)`.
- **Reduced motion:** the page responds to `prefers-reduced-motion`.
Generated by [Sitepeel](https://sitepeel.dev/design-md/airform.space/), the free DESIGN.md generator.
What you can build with it
Landing pages, pricing tables, dashboards: your AI coding agent builds them in this style, with these colors, fonts, spacing and buttons instead of its defaults.
Download DESIGN.md, put it in your project’s root folder, then ask your agent for a page.
Build a landing page for my product. Follow for every color, font, spacing value, corner and button.
Need more than one page?
Design MD in the Sitepeel tools for Chrome measures pages behind a login, combines several pages into one file and works on any site you open.
More designs
See all →FAQ
Questions
What can I build with the Airform DESIGN.md?
Any page or component in this style: a landing page, pricing table, dashboard or sign-up form. Your AI coding agent uses the measured colors, Oakes Grotesk type, spacing, corners and buttons instead of its own defaults.
How do I use it with Claude Code or Cursor?
Download the file and put it in your project’s root folder, then ask your agent to follow DESIGN.md. Step-by-step guides: Claude Code, Cursor, Codex, GitHub Copilot.
Is this Airform’s official design system?
No. Sitepeel measured it from airform.space’s public page on October 23, 2026. It is an independent analysis, not made or approved by Airform.
Can I use Airform’s style in my own product?
Use it to learn, prototype and compare. For a real product, make the style your own, and never copy Airform’s logo, name, pictures or text.
How accurate are the values?
Each value was measured on the rendered page after it fully loaded, on desktop and mobile: colors where they appear, type with tracking, spacing, corners, shadows and hover states. Sites change, so check the date at the top.




