BMW M vs Substack
59 token-level differences between these two design systems.
Background
#0a0a0a → #ffffff Text
#e6e6e6 → #363737 Brand
#e22718 → #ff6719 Border
rgba(255,255,255,0.12) → rgba(0, 0, 0, 0.10) Display font
BMW Type Next Latin → Cahuenga Body size
16px → 19px colors 50 changed
~
bg #0a0a0a → #ffffff ~
bg-elev #161616 → #fafaf7 ~
surface #0a0a0a → #ffffff ~
text #e6e6e6 → #363737 ~
text-strong #ffffff → #1a1a1a ~
text-muted #a3a3a3 → #878787 ~
text-faint #6b6b6b → #a8a8a8 ~
brand #e22718 → #ff6719 ~
brand-hover #b81f12 → #e85412 ~
border rgba(255,255,255,0.12) → rgba(0, 0, 0, 0.10) ~
border-strong rgba(255,255,255,0.24) → rgba(0, 0, 0, 0.20) ~
shadow-soft rgba(0,0,0,0.6) → rgba(0, 0, 0, 0.06) ~
success #22c55e → #0d8050 ~
warning #f59e0b → #d97706 ~
danger #e22718 → #dc2626 ~
info #0066b1 → #2563eb +
bg-cream #fbf9f4 +
bg-soft #f6f6f3 +
surface-warm #fafaf7 +
text-soft #666c70 +
text-link #363737 +
brand-deep #cc4a0e +
brand-tint rgba(255, 103, 25, 0.10) +
brand-tint-strong rgba(255, 103, 25, 0.18) +
border-soft rgba(0, 0, 0, 0.06) +
border-warm rgba(0, 0, 0, 0.08) +
selection-bg rgba(255, 103, 25, 0.20) +
shadow-medium rgba(0, 0, 0, 0.10) +
reading-rule rgba(0, 0, 0, 0.08) −
bg-strong #1f1f1f −
bg-light #ffffff −
bg-light-soft #f5f5f5 −
surface-card #161616 −
surface-card-hover #1f1f1f −
text-on-light #0a0a0a −
brand-active #9d1a0e −
m-blue #0066b1 −
m-violet #5b1f7a −
m-red #e22718 −
m-blue-electric #1c69d4 −
m-gradient-start #0066b1 −
m-gradient-mid #5b1f7a −
m-gradient-end #e22718 −
border-light #e6e6e6 −
link #0066b1 −
link-hover #1c69d4 −
ring #e22718 −
shadow-elev rgba(0,0,0,0.8) −
shadow-deep rgba(0,0,0,0.95) −
glow-red rgba(226,39,24,0.4) typography 5 changed
~
display {"family":"BMW Type Next Latin","size":72} → {"family":"Cahuenga","size":56} ~
h1 {"family":"BMW Type Next Latin","size":40} → {"family":"Cahuenga","size":40} ~
h2 {"family":"BMW Type Next Latin","size":32} → {"family":"Cahuenga","size":32} ~
body {"family":"BMW Type Next Latin","size":16} → {"family":"Spectral","size":19} ~
label {"family":"JetBrains Mono","size":11} → {"family":"Monaco","size":13} radius 2 changed
~
button 8px → 6px ~
card 14px → 12px spacing 2 changed
~
lg 48px → 32px ~
xl 96px → 48px