Grid & Layout.
Base 4, rhythm 8. Container 1280. Five breakpoints. Radii differentiate by role. images sharp, cards modest, CTAs rounded, pills full. Shadows are hand-tuned, used sparingly.
04.1
Base unit
4 px
Atomic unit. Every spacing value is a multiple of 4.
8 px
Primary rhythm. Gaps, card padding.
04.2
Spacing scale
- 14 px
- 28 px
- 312 px
- 416 px
- 520 px
- 624 px
- 832 px
- 1040 px
- 1248 px
- 1664 px
- 2496 px
- 32128 px
04.3
Containers
max-w-[1280px]max-w-[1280px]max-w-[920px]max-w-[640px]max-w-[720px]max-w-[65ch]04.4
Breakpoints
Tailwind v4 defaults, un-overridden.
04.5
Vertical rhythm
Section padding by context.
py-20 md:py-24py-16 md:py-20py-10py-12py-804.6
Radius
Radius scales with role. Not uniform. images sharp, cards modest, CTAs rounded, pills full.
--radius-image(custom)--radius-card-tight--radius-card--radius-input--radius-button(custom)--radius-panel--radius-pill04.7
Shadows
Used sparingly. Surface contrast (#FFFFFF over #FAFAFA) is the primary separation tool. shadow is the accent.
Whisper (default card)
0 1px 1px rgba(0,0,0,0.03), 0 1px 3px rgba(0,0,0,0.02)
Light shelf
0 1px 2px rgba(0,0,0,0.03)
Card hover lift
0 8px 24px -12px rgba(0,0,0,0.14)
Popover / dropdown
0 10px 30px rgba(0,0,0,0.15)
Hero CTA white-on-dark
0 8px 24px -8px rgba(0,0,0,0.4)
Search over dark
0 10px 40px rgba(0,0,0,0.25)