Foundations

The warm, gold-on-ivory core

One OKLCH hue family (≈30–45°) anchors everything. Values are lifted verbatim from packages/config/tailwind/themes.css — already tuned so white-on-fill clears WCAG AA. Don’t lighten the action or status colors.

Semantic palette

background
--background
oklch(0.97 0.015 30)
foreground
--foreground
oklch(0.25 0.015 30)
card
--card
oklch(0.978 0.014 30)
primary
--primary
oklch(0.54 0.12 35)
accent
--accent
oklch(0.72 0.1 45)
secondary
--secondary
oklch(0.92 0.025 40)
muted
--muted
oklch(0.94 0.022 32)
border
--border
oklch(0.88 0.03 30)

Status — darkened for AA

success
--success
oklch(0.52 0.17 155)
info
--info
oklch(0.54 0.17 250)
warning
--warning
oklch(0.75 0.15 55)
destructive
--destructive
oklch(0.54 0.2 22)

Typography

Serif display, clean sans body

Cormorant Garamond carries every heading — the “old money” voice. Inter handles body and UI. Caveat is a sparing handwritten accent; JetBrains Mono for tokens.

Ana & Rob --text-6xl 60px Display · couple names
Ana & Rob --text-5xl 48px Hero (desktop)
Ana & Rob --text-4xl 36px Section headings
Ana & Rob --text-2xl 24px Card / sub headings
Ana & Rob --text-lg 18px Lead / card titles
Ana & Rob --text-base 16px Body
Ana & Rob --text-sm 14px UI labels

Serif · headings

Cormorant Garamond

Weights 500–700 · tracking −0.02em

Sans · body & UI

Inter

Weights 400–700

Accents

with all our love

JetBrains Mono · --token


Shape & space

Generous radii, soft warm shadows

A 4px spacing rhythm; sections breathe. Cards are 1.75rem panels, inputs 1.05rem, buttons full pills. Shadows are wide and primary-tinted — never hard black.

Spacing scale

--space-1 4px
--space-2 8px
--space-4 16px
--space-6 24px
--space-8 32px
--space-12 48px
--space-16 64px
--space-24 96px

Radii

--radius-sm
--radius-lg
--radius-input
--radius-panel
--radius-full
--shadow-sm
--shadow-lg
--wedding-shadow-soft