design.vecreal.com / workshop / Wordmark dot margin · r17

Brand reference · workshop · 2026-05-13 · rev-12 candidate (r17 final)

Wordmark dot margin — match the "a-l" letter gap

Operator: "Because we increased the spacing between the letters in ecreal, I think we need to consider that and equally give a touch more space to the dot. It should be the same space as between the a and the l. Only V is treated differently because it is inherently different."

Three margin variants at locked 0.24em dot + r16 rules (fixed margin per size, diameter-scaled translateY). The dot is the final element of the [V][ecreal][.] sequence — it should sit at letter-like distance from "l", not tighter-than-letters punctuation distance.

Three margin variants — all else r16 locked

Why this matters now: rev-7's tight margin calc(0.03em + 2px) was calibrated for Semibold 600 + tracking -0.05em. The system has since shifted:

The dot margin tightened TWICE (rev-7 → rev-11 → r16) symmetric with V-to-e — but each tightening was driven by the V/text bookend system, not by the letter-spacing applied to "ecreal". The dot should track LETTER-LIKE spacing, not bookend-compression spacing.

Variant Dot margin-left Gap @ 80px Gap @ 140px Gap @ 200px Read
A · current (r16) calc(0.01em + 2px) 2.8 px 3.4 px 4.0 px tight punctuation
C · more calc(0.03em + 2px) 4.4 px 6.2 px 8.0 px loose punctuation · safety check

Why V-to-e stays at -0.13em: operator note — "Only V is treated differently because it is inherently different." V is a designed mark, not a typeset letter. V-to-e cohesion uses NEGATIVE margin (interlock overlap) — opposite mechanism from dot-to-l's POSITIVE margin (gap). The two aren't comparable; V keeps its tightened bookend role.

Section A · Three margins at 80 px (marketing display)

Look at the dot's gap from "l" relative to the gap between "a" and "l" (the letterforms immediately preceding the dot). Visually scan: is the l-to-dot gap matching the a-to-l gap?

A · calc(0.01em + 2px) current r16 · tight
ecreal
ecreal
C · calc(0.03em + 2px) +0.02em · loose
ecreal

Section B · Three margins at 140 px (close inspection)

Display size. The 0.01em margin steps = 1.4 px between adjacent variants. Visible.

A · calc(0.01em + 2px) current r16
ecreal
ecreal
C · calc(0.03em + 2px) loose
ecreal

Section C · Three margins at 200 px (hero)

Hero size. 0.01em margin step = 2 px. Easiest scale to compare a-l visible gap vs l-dot visible gap directly.

A · calc(0.01em + 2px) current r16 · 4 px gap
ecreal
ecreal
C · calc(0.03em + 2px) 8 px gap · loose
ecreal

Section D · Tight stack at 200 px — direct visual comparison

Three variants stacked with minimal gap so you can scan the "a-l-dot" region directly between rows. Look at where the dot sits relative to where the a-l gap visually starts.

l → . margin scan at 200 px

A · 0.01em + 2px
ecreal.
ecreal.
C · 0.03em + 2px
ecreal.

Section E · Small size sanity — 32 / 48 px

At small sizes the +0.01em step = 0.32-0.48 px. Largely sub-pixel — should all render cleanly without crowding "l" or floating the dot.

A · 0.01em + 2px · 32/48
ecreal. ecreal.
ecreal. ecreal.
C · 0.03em + 2px · 32/48
ecreal. ecreal.

Spec summary — rev-12 candidate (final r17)

PropertyA · currentB ★ proposedC · loose
Dot size0.24em0.24em0.24em
Dot margin-leftcalc(0.01em + 2px)calc(0.02em + 2px)calc(0.03em + 2px)
Gap at 80 / 140 / 200 px2.8 / 3.4 / 4.0 px3.6 / 4.8 / 6.0 px4.4 / 6.2 / 8.0 px
Dot translateY (scaled)0.01544em0.01544em0.01544em
All else (V geometry, weight, tracking, V translateY, V-to-e, dot margin-bottom) UNCHANGED from rev-11 lock

Call A · 0.01em + 2px (keep r16) · B · 0.02em + 2px ★ · or C · 0.03em + 2px.

Pick triggers focused rev-12 propagation: design-tokens.json (bk-dot-size 0.24em + bk-dot-margin-left + bk-dot-translate-y), reference docs, landing + 4 LinkedIn assets + og-preview (with PNG regen), brand-atoms refs, runs/wordmark-build/build.py (rev-12 spec including the new "fixed margin + diameter-scaled descent + letter-like spacing" rules), wordmark.md rev-12 entry, CHANGELOG.md rev-12 entry. One atomic commit + merge + push.

Plus the non-blocking favicon composition revisit can spin up after rev-12 if you want.

Vecreal · brand workshop · 2026-05-13 · wordmark dot margin r17 (match a-l letter gap)