Design system · v3 spec sheet

The system, all in one place.

v3.0 · Jacaranda Labs Phase 1 · Geist + JetBrains Mono direction

Summary

What is the J Labs design system?

The Jacaranda Labs design system, version 3.1. Geist as the display typeface, Inter Tight for body, JetBrains Mono for eyebrows and signature numerals. Forest green and cream as the locked palette across light and dark modes. The J Labs brand mark system has four pieces: a wordmark plus three avatar variants (filled forest circle, cream outline circle, forest squircle). Seven signature visual moves distinguish the brand from generic SaaS aesthetics: procedural grain, signature mono numerals, horizontal score line replacing the five-up grid, mono ticker below hero, editorial asymmetry on case studies, sticky-scroll how-it-works numerals, and the stats numerals strip. Performance budget: Lighthouse 100 across Performance, Accessibility, Best Practices, and SEO on every page in production.

What makes this site not another site.

Seven concrete moves that distinguish the Jacaranda Labs visual language from the cream-and-green Anthropic-template aesthetic. Each is implemented in the live mockup and documented here as a binding rule.

i.

Procedural grain texture, real Canvas 2D.

A noise field rendered on initial page load via Canvas 2D, sitting beneath the cream background at 2.5% opacity in light mode, 4% in dark mode. Mix-blend-mode: multiply (light) / screen (dark). Repaints once per resize. Signals the cream surface is intentional, not a default.

  • Generated in JS — no JPG dependency, no asset weight
  • Clipped to viewport with position: fixed, z-index: 0
  • All page content sits above with z-index: 1
  • ~0.5 KB of data, generated client-side
ii.

Signature numeral treatment throughout.

Every signature numeral on the site renders in JetBrains Mono with tabular figures and tight negative tracking. Numerals carry the engineered, terminal-native feel of the brand — mechanical anchors, not decorative ones. Used on the stats strip, score-line section labels (i. ii. iii.), how-it-works sticky column, footer year, ventures tile labels, and the final-CTA background numeral.

  • font-family: JetBrains Mono, weight 500
  • letter-spacing: -0.04em to -0.05em (precise, not romantic)
  • font-variant-numeric: tabular-nums
  • Accent green when prominent, tertiary grey when muted
iii.

Five departments as a horizontal score line.

Replaces the standard five-up grid. Each department is a row in a single composition, separated by hairline rules. Numeral, name, outcome, icon — each in its own column. Icons stroke-draw in sequence as the user scrolls into view (1.2s with staggered 100ms delays). Refuses the obvious component layout in favour of a more confident composition.

  • Five rows, single composition, not a grid
  • Roman-numeral-styled lowercase labels (i. ii. iii. iv. v.)
  • Department names at h2 scale — they read as a sequence of statements
  • SVG icon stroke-dashoffset animation triggered on intersection
  • Hover slides the entire row into a soft accent background, with a 4px left edge running outside the container
iv.

Mono ticker below the hero.

A horizontally-scrolling strip of mono words — the things we build. workflows · pipelines · agents · dashboards · integrations · systems · automation · handoffs · orchestration · infrastructure. 80-second loop, paused on hover, respects prefers-reduced-motion. Subconscious reminder of the work, technical accent.

  • Pure CSS animation (transform: translateX, linear infinite)
  • Items duplicated for seamless loop
  • Slash separator coloured accent green between items
  • Border-top and border-bottom hairline rules contain it
v.

Editorial asymmetry on case studies.

Three case-study cards laid out as a magazine spread, not a CMS template. First card large, top-left, padded to 48px, with the deepest body copy. Second card offsets right, slightly lower. Third card smaller, left, slightly raised. CSS Grid with explicit column spans and margin offsets — every position is intentional, not chaotic.

  • 12-column grid above 1024px
  • card-1: cols 1–7, no offset, padding 48px
  • card-2: cols 6–12, margin-top 64px, padding 40px
  • card-3: cols 1–5, margin-top -32px, padding 32px
  • On mobile, falls back to single-column stack
vi.

Sticky-scroll moment on how-it-works.

Two-column layout above 1024px. Left column is sticky and contains a single oversized mono numeral (7–12rem, JetBrains Mono). Right column is the three steps stacked. As the user scrolls, the numeral changes (1 → 2 → 3) with a 600ms fade-and-slide transition based on which step is in the viewport's central band. Below 1024px the layout collapses; numerals appear inline with each step.

  • position: sticky on the numeral column with top: 25vh
  • IntersectionObserver tracks step visibility, sets active class
  • Numerals stack absolutely; only .active is visible
  • rootMargin tuned so the change happens at the centre of the viewport
  • Reduced-motion users see all numerals statically inline
vii.

Numerals strip — real numbers, magazine-style.

Three large stat figures sit between the hero and the score line: 4 days · 95% · 8 weeks. JetBrains Mono, weight 500, tabular figures, divided by hairline vertical rules. Reads as substantive proof points before the buyer ever sees a feature claim.

  • Suffix (days, %, weeks) in 50% scale, super-positioned, secondary text colour
  • Vertical hairline divider only between cards (pseudo-element trick)
  • Three-up on desktop, single column on mobile

The palette, both modes.

Current mode (toggle to compare)

--backgroundPage
--surfaceCards
--text-primaryBody
--text-secondaryMuted
--text-tertiarySubtle
--border-subtleHairlines
--accent-primaryCTAs · numerals
--accent-activeHover

Principles

One accent family. No secondary or tertiary accent colours.

Both modes maintain WCAG AA contrast: 4.5:1 for body text, 3:1 for large text.

Forest green carries across both modes — same brand identity, value-shifted for context.

Cream #FAFAF2 and dark green #0D1F0F are the brand's canonical neutrals.

The voice, in three families.

Hero
Geist 500
clamp(2.5rem, 8vw, 5.5rem)
track -0.025em
Accent green for emphasis
A signature headline.
H1
Geist 500
clamp(2rem, 5vw, 3.5rem)
track -0.02em
A page-level heading.
H2
Geist 500
clamp(1.5rem, 3vw, 2.25rem)
track -0.015em
A section heading.
Numeral (signature)
JetBrains Mono 500
tabular-nums
track -0.04em to -0.05em
Engineered, mechanical anchor
5
Body
Inter Tight 400
1rem · line 1.65
Standard body text. The workhorse of the design — used for prose, descriptions, and general copy across every page. Line height of 1.65 for breathable reading.
Eyebrow
JetBrains Mono 500
0.75rem · track 0.08em
uppercase · accent · with hairline rule
Section eyebrow label
Mono
JetBrains Mono 400
0.875rem · track 0.02em
Technical accents, metadata
JL-2026-0142 · code · technical accents

Three easings. That's it.

--ease-out-expo
cubic-bezier(0.16, 1, 0.3, 1)
The workhorse
--ease-out-quart
cubic-bezier(0.25, 1, 0.5, 1)
Subtler reveals
--ease-in-out
cubic-bezier(0.65, 0, 0.35, 1)
Mode transitions

Generic AI-template patterns that never appear.

Per DESIGN_SYSTEM.md § 7.2 — these patterns read as derivative in 2026 and must not appear anywhere on the site.

  • Sparkle / four-pointed star icons
  • Wavy gradient orbs
  • Rotating gear with spark
  • Neural network as cluster of dots
  • Magnifying glass with spark
  • Speech bubble with circuit lines
  • Brain with circuitry
  • Robot face
  • Wand or magic stick
  • Lightning bolt as standalone
  • Crystal ball
  • Any emoji, anywhere
  • Auto-playing background video
  • Floating-blob backgrounds
  • Linear gradient hero text
  • Cursor spotlight effects
  • Particle systems
  • Three-card-feature-grid with stock icons

Hero strikethrough animation.

2.4s total runtime. Plays once per session. Reduced-motion users see the final state instantly.

The work that's holding your business back. Automated. End to end.

Design system · J Labs