nav.neobrutal-boxed-bar · Boxed bar

A nav pattern from Neo-Brutalism, drawn alone below with this design's tokens and sample copy. Used in this design on: every page, as the nav. Give the section root data-pattern="nav.neobrutal-boxed-bar". A guide only: DESIGN.md and tokens.json are the source of truth.

Rule
The whole nav is one bordered white bar with the hard shadow: boxed logo left, pill links in the middle, a small primary button right.
Slots
siteName, pages, cta
Grid areas
bar 1-12 (12-column grid, 1-based inclusive spans)
Tokens
bg #FFF4DE · text #111111 · heading #000000 · accent #FF5FA2 · accent2 #00BCA1 · Archivo Black / Space Grotesk · radius 8px · space unit 8px (full list in design/tokens.json)
Section
vertical padding step 3

Pattern notes

  • One bordered white bar with the hard shadow and the radius token, spaced away from the page edges. Boxed logo on the left, links as bordered pills in the middle (current page filled accent), a small primary button on the right. Phone: links scroll horizontally inside the bar.
Northfold
  • Services
  • Work
  • About
  • Contact
Start a project
Layout tree (as in design/layout.json)
{
  "pattern": "nav.neobrutal-boxed-bar",
  "kind": "nav",
  "grid": {
    "bar": "1-12"
  },
  "slots": [
    "siteName",
    "pages",
    "cta"
  ],
  "tree": {
    "el": "box",
    "bg": "surface",
    "dir": "row",
    "gap": 3,
    "pad": [
      2,
      3
    ],
    "align": "center",
    "justify": "between",
    "border": "all",
    "children": [
      {
        "el": "logo",
        "slot": "siteName",
        "style": "boxed"
      },
      {
        "el": "nav-links",
        "mobile": "scroll-x",
        "slot": "pages",
        "dir": "row",
        "style": "pill"
      },
      {
        "el": "button",
        "slot": "cta",
        "variant": "primary",
        "size": "sm"
      }
    ]
  }
}
Component example: reference/nav.neobrutal-boxed-bar.html
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1">
<title>nav.neobrutal-boxed-bar — Neo-Brutalism</title>
<link rel="stylesheet" href="base.css">
<style>
  .bar { margin: calc(var(--unit) * 3) 0; padding: calc(var(--unit) * 2) calc(var(--unit) * 3); display: flex; align-items: center; justify-content: space-between; gap: calc(var(--unit) * 3); }
  .logo { font: 900 var(--step-1)/1 var(--font-heading); padding: 6px 10px; border: var(--bw) solid var(--border); border-radius: var(--radius); background: var(--surface-alt); text-decoration: none; color: var(--heading); }
  .links { display: flex; gap: calc(var(--unit) * 1.5); list-style: none; padding: 0; overflow-x: auto; }
  .links a { display: block; padding: 8px 14px; border: var(--bw) solid var(--border); border-radius: 999px; font-weight: 700; text-decoration: none; color: var(--ink); white-space: nowrap; }
  .links a[aria-current="page"] { background: var(--accent); color: var(--on-accent); }
  .bar .btn { padding: 10px 16px; }
  @media (max-width: 640px) { .bar { flex-wrap: wrap; } .links { order: 3; width: 100%; } }
</style>
</head>
<body>
<div class="wrap">
  <nav class="bar box" aria-label="Main">
    <a class="logo" href="/">Paydrop</a>
    <ul class="links">
      <li><a href="/features" aria-current="page">Features</a></li>
      <li><a href="/pricing">Pricing</a></li>
      <li><a href="/changelog">Changelog</a></li>
      <li><a href="/help">Help</a></li>
    </ul>
    <a class="btn" href="/signup">Sign up</a>
  </nav>
</div>
</body>
</html>

Other patterns in this design

Whole design · Spec bundle (JSON) · On the style page