nav.midcentury-pill-bar · Pill bar

A nav pattern from Mid-Century Modern, 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.midcentury-pill-bar". A guide only: DESIGN.md and tokens.json are the source of truth.

Rule
Boxed wordmark in 1–3, pill-shaped page links in 5–9, a primary CTA in 11–12.
Slots
siteName, pages, cta
Grid areas
logo 1-3 · links 5-9 · cta 11-12 (12-column grid, 1-based inclusive spans)
Tokens
bg #F3E9D6 · text #2B231B · heading #2B231B · accent #C9552A · accent2 #0099BE · League Spartan / Jost · radius 20px · space unit 8px (full list in design/tokens.json)
Section
vertical padding step 2

Pattern notes

  • A boxed wordmark in 1–3, the page links as pills in 5–9 (current page filled with accent), a small primary pill CTA in 11–12, all vertically centred.
Northfold
  • Services
  • Work
  • About
  • Contact
Layout tree (as in design/layout.json)
{
  "pattern": "nav.midcentury-pill-bar",
  "kind": "nav",
  "grid": {
    "logo": "1-3",
    "links": "5-9",
    "cta": "11-12"
  },
  "slots": [
    "siteName",
    "pages",
    "cta"
  ],
  "tree": {
    "el": "grid",
    "gap": 3,
    "align": "center",
    "children": [
      {
        "el": "logo",
        "span": "1-3",
        "slot": "siteName",
        "style": "boxed"
      },
      {
        "el": "nav-links",
        "span": "5-9",
        "mobile": "scroll-x",
        "slot": "pages",
        "dir": "row",
        "style": "pill"
      },
      {
        "el": "button",
        "span": "11-12",
        "mobile": "hide",
        "slot": "cta",
        "variant": "primary",
        "size": "sm"
      }
    ]
  }
}
Component example: reference/nav.midcentury-pill-bar.html
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1">
<title>nav.midcentury-pill-bar — Mid-Century Modern</title>
<link rel="stylesheet" href="base.css">
<style>
  nav { padding: calc(var(--unit) * 2) 0; }
  nav .grid { align-items: center; }
  .logo { grid-column: 1 / 4; justify-self: start; border: 2px solid var(--heading); padding: 6px 12px; font: 800 var(--step-1)/1 var(--font-heading); color: var(--heading); text-decoration: none; }
  ul { grid-column: 5 / 10; display: flex; gap: 8px; list-style: none; padding: 0; }
  ul a { display: block; padding: 8px 16px; border-radius: 999px; color: var(--text); text-decoration: none; font-weight: 500; }
  ul a[aria-current] { background: var(--accent); color: var(--on-accent); }
  ul a:hover { box-shadow: inset 0 0 0 2px var(--accent); }
  .btn { grid-column: 11 / 13; justify-self: end; padding: 10px 18px; }
  @media (max-width: 640px) { ul { overflow-x: auto; white-space: nowrap; margin: 12px 0; } .btn { justify-self: start; } }
</style>
</head>
<body>
<nav class="wrap" aria-label="Main">
  <div class="grid">
    <a class="logo" href="#">Hartwell &amp; Co.</a>
    <ul><li><a href="#" aria-current="page">Chairs</a></li><li><a href="#">Tables</a></li><li><a href="#">Lighting</a></li><li><a href="#">Story</a></li></ul>
    <a class="btn" href="#visit">Visit us</a>
  </div>
</nav>
</body>
</html>

Other patterns in this design

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