Skip to main content
BEEQ grid system overview - light mode
The grid helps you place content with consistent alignment, spacing, and hierarchy across screen sizes. It gives designers and developers a shared structure for page regions, cards, forms, and dense product layouts. Use the grid to guide layout decisions, not to force every screen into the same shape. Content should determine where the layout changes, which container strategy fits, and how much space sits between regions.
BEEQ does not ship grid utilities, grid classes, or a grid component. The grid is documented as layout guidance. Use CSS Grid, your application’s layout framework, or any tool that fits your stack, then apply BEEQ spacing tokens for gutters and margins.

Grid anatomy

BEEQ grid layouts are built from columns, gutters, and margins. These three parts control where content sits, how regions separate, and how much breathing room the layout keeps at the viewport edge.
Grid anatomy - light mode

Columns

Columns define the vertical tracks that content can span. A 12-column structure is flexible because it divides cleanly into halves, thirds, fourths, and sixths.

Gutters

Gutters are the space between columns. They separate layout regions and should use BEEQ spacing values so the page rhythm matches the components inside it.

Margins

Margins are the space outside the grid columns. They keep content away from viewport edges and can be fixed, fluid, or responsive depending on the container strategy.

Grid types

Different grid types solve different layout problems. Most product screens use a column grid, while editorial, data-heavy, or text-heavy screens may need supporting structure from baseline, manuscript, or modular grids.

12-column layout

Use a 12-column grid when a screen needs flexible region widths. It lets you create common spans such as full width, half width, thirds, fourths, and sidebars without inventing a new structure for each screen.

Breakpoints

BEEQ breakpoint ranges are design guidance for deciding when a layout should change. They are not generated classes, custom screens values, or a container API.
BreakpointViewport
Phones576-768px
Tablets768-992px
Desktop992-1200px
Large devices1200-1920px
Use app-level media queries, container queries, or the layout tools already in your application to implement responsive behavior. Add a breakpoint when the content needs a different layout, not because a range exists in the table.
BEEQ breakpoints - light mode

How grid works in code

Use native CSS Grid for page structure and BEEQ spacing tokens for gutters, margins, and padding. CSS Grid is broadly supported and robust enough for most product layouts, so BEEQ keeps the grid guidance framework-agnostic instead of shipping layout-specific utilities. Use gutters to separate layout regions. Do not place content inside the gutter itself.

Container strategies

Containers control how wide a layout can become and how it responds to available space. Choose the strategy that protects the content, not the one that fills the most pixels.

Hybrid

Hybrid containers are fluid up to a maximum width. Use them when the layout should adapt on smaller screens but stop growing when content reaches a comfortable width.

Responsive and adaptive layouts

Responsive and adaptive layouts both help interfaces work across screen sizes. The difference is how much the layout changes.

Responsive

Responsive layouts use one content structure that reflows as space changes. This is the default approach for most BEEQ product screens because it keeps behavior predictable and avoids duplicate markup.
Responsive layout - light mode

Adaptive

Adaptive layouts use different structures for different contexts. Use them when a screen needs a meaningfully different experience by device, input method, or available space.
Adaptive layout - light mode

Usage guidelines

Align layout regions to column edges. This keeps scanning predictable and avoids uneven relationships between adjacent content.
Keep gutters empty. Place content inside columns, then use gutter spacing to separate neighboring regions.
Use --bq-spacing-* values for gutters, margins, and container padding. If your application uses BEEQ’s Tailwind preset, the same spacing scale is available through spacing utilities, but the grid structure remains yours to define.
Add breakpoints when content becomes cramped, hard to compare, or difficult to read. Avoid creating a new layout for every viewport range.
Product layouts often need to use available space for tables, forms, and dashboards. Add max widths when the content becomes harder to scan.
Fixed or max-width containers work well for reading, setup flows, forms, and review screens where excessive line length slows users down.
Keep the DOM order meaningful so keyboard, screen reader, and small-screen users encounter content in the same logical sequence.

Accessibility

Grid accessibility depends on preserving meaning when the visual layout changes.
  • Keep source order logical. Do not use visual placement to make screen reader or keyboard users jump across unrelated content.
  • Support zoom and narrow viewports without horizontal scrolling for core page content.
  • Avoid using position alone to communicate priority, state, or relationships. Pair layout with headings, labels, and text.
  • Keep long text in comfortable containers. Wide grids should not force paragraphs into lines that are hard to read.
  • Test responsive changes with keyboard navigation so focus order still matches the user’s reading path.

Resources

Global CSS variables

Review the spacing and layout-related custom properties used by BEEQ themes.

Spacing token source

See the source that defines the BEEQ spacing values used for gutters, margins, and layout rhythm.