Brik Design System
Foundation

Size

Dimensional constraints for containers, breakpoints, and elements.

Size tokens define dimensional constraints — how big things can be, where the layout breaks, and how wide content columns sit within a viewport.

Size scale (primitives)

--size-0
0px
--size-25
1px
--size-50
2px
--size-100
4px
--size-150
6px
--size-200
8px
--size-300
12px
--size-400
16px
--size-500
20px
--size-600
24px
--size-700
28px
--size-800
32px
--size-900
36px
--size-1000
40px
--size-1100
44px
--size-1200
48px
--size-1300
48px
--size-1400
52px
--size-1500
56px
--size-1600
60px
--size-1700
64px
--size-1800
72px
--size-1900
80px
--size-2000
84px
--size-2100
88px
--size-2200
96px

Content widths

Max-width values for content containers. Apply to wrapper elements with max-width to prevent lines from growing too wide at large viewport sizes.

TokenCSS VariableValueUse for
Narrow--content-width-narrow640pxProse, reading columns, focused forms
Default--content-width-default800pxStandard body sections
Wide--content-width-wide1024pxFeature sections, content grids
XL--content-width-xl1280pxHero bands, wide layouts
Full--content-width-full100%Full-bleed (use sparingly)
.content-section {
  max-width: var(--content-width-default);
  margin-inline: auto;
}

Screen breakpoints

BDS defines five canonical breakpoints. The CSS custom properties (--breakpoint-*) are provided for Figma/documentation reference. For CSS @media rules, import the breakpoints constant from @bds-tokens — CSS custom properties cannot be used inside @media().

NameCSS VariableValue
Mobile--breakpoint-mobile320px
Tablet--breakpoint-tablet768px
Desktop--breakpoint-desktop1024px
Wide--breakpoint-wide1280px
Wider--breakpoint-wider1440px

--breakpoint-web (1200px) is a legacy Figma-sourced value kept for backward compatibility. Prefer the canonical names above in new work.

Using breakpoints in CSS

import { breakpoints } from '@bds-tokens';

// In a CSS-in-JS context
const styles = {
  [`@media (min-width: ${breakpoints.desktop})`]: {
    display: 'grid',
    gridTemplateColumns: '1fr 2fr',
  },
};
/* In plain CSS — hardcode the value, comment the token name */
@media (min-width: 1024px) { /* --breakpoint-desktop */
  .sidebar-layout {
    display: grid;
  }
}

Using breakpoints in JavaScript

import { breakpoints } from '@bds-tokens';

const isDesktop = window.matchMedia(
  `(min-width: ${breakpoints.desktop})`
).matches;

Element sizes

Semantic size tokens follow the same tiny-to-huge scale as spacing — for icons, dots, indicators.

TokenValue
--size-tiny2px
--size-sm4px
--size-md8px
--size-lg16px
--size-xl24px
--size-xxl32px
--size-huge40px

On this page