Embrace
- Design System
- Figma Variables
- Bootstrap
- Umbraco
- Website
- Role
- Lead Designer
- Year
- 2024–25
- Stack
- Figma, Bootstrap 5, Umbraco
- Live site
- thisisembrace.com
Embrace is a B2B creative agency, and its own website has to sell its design. I designed the site, and the system it’s built from.
That system is a Figma file that works the way their Bootstrap and Umbraco code does, so designers and developers build from the same parts.
The grid
Embrace’s designers drew pages freely, and developers rebuilt them in Bootstrap, guessing at every width and margin.
So I rebuilt Bootstrap’s grid in Figma, with column widths set to exactly what Bootstrap renders. Picking a layout means picking a Bootstrap class.
- min-width
- ≥1200px
- frame
- 1380px
- max-width/xl
- 1140px
- gutter
- 24px
- section padding
- spacer/5 · 32px
page framesection padding12 columnsthis row’s cols
Variables
Every colour, font, size and space is a variable, named for where it’s used.
A fixed layer styles the file; a brand layer holds Embrace. Rebranding means changing one set of values, not every component.


Components
Components mirror the options a developer exposes: type, size, state, breakpoint. Each sits beside notes for the developers who build it.

Wireframes
Wireframes are made of the real sections, so a finished page is its wireframe with the content dropped in: the same rows, the same spacing.


Outcome
thisisembrace.com was built straight from the file, and Embrace’s designers now start every page from its templates and sections.
To writeA real figure would be stronger.
Visit thisisembrace.com ↗