Vigil
A softened geometric grotesk for body copy. Geometric skeleton, large x-height, and rounding applied by rule — most at exposed terminals, less at structural corners, none on punctuation. ExtraLight 200 is a display weight — use it at 40px and above.
Weight — one axis, 200 to 900
Fewer things, measured faster.
Product strategy is mostly the discipline of choosing what not to build. The teams that win are rarely the ones with the longest roadmap; they are the ones that ship fewer things, measure them faster, and quit the wrong bets early. A good text face should support that kind of reading — steady at sixteen pixels, unremarkable in the best sense, and quietly warm when it is finally set large.
Eight instances, roman and italic
At reading sizes
Product strategy is mostly the discipline of choosing what not to build. The teams that win are rarely the ones with the longest roadmap; they are the ones that ship fewer things, measure them faster, and quit the wrong bets early. A good text face should support that kind of reading — steady at sixteen pixels, unremarkable in the best sense, and quietly warm when it is finally set large.
Product strategy is mostly the discipline of choosing what not to build. The teams that win are rarely the ones with the longest roadmap; they are the ones that ship fewer things, measure them faster, and quit th
Product strategy is mostly the discipline of choosing what not to build. The teams that win are rarely the ones with the longest roadmap; they are the ones that ship fewer things, measure them faster, and quit the wrong bets early. A good text face should support that kind of reading — steady at sixteen pixels, unremarkable in the best sense, and quietly warm when it is finally set large.
Product strategy is mostly the discipline of choosing what not to build. The teams that win are rarely the ones with the longest roadmap; they are the ones that ship fewer things, measure them faster, and quit the wrong bets early. A good text face should support that kind of reading — steady at sixteen pixels, unremarkable in the best sense, and quietly warm when it is finally set large.
Settings · Notifications · Privacy · Billing · Il1 O0Q rn m 8B6 · 2026
The hard strings
Il1 | O0Q | rn m | 8B6 | ecasg | $€£¥ | 2026
Il1 | O0Q | rn m | 8B6 | ecasg | $€£¥ | 2026
Character set
ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz 0123456789 ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞß àáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ ĀāĂ㥹ĆćČčĎďĐđĒēĖėĘęĚěĞğĢģĪīĮįİıĶķĹĺĻļĽľŁłŃńŅņŇňŌōŐőŒœŔŕŖŗŘřŚśŞşŠšŢţŤťŪūŮůŰűŲųŸŹźŻżŽž &@#$%‰?!¿¡()[]{}.,;:'"‘’“”«»‹›-–—/\*+=<>~^|¦§¶†‡•…©®™°€£¥¢
Vigil Outline — a display style, stroked from Bold
Vigil
Free forever. No email. 2026 &
Use it at 40px and above, on its own or layered over solid Vigil Bold. Not for text.
Using it
@font-face { font-family: "Vigil"; src: url("Vigil[wght].woff2") format("woff2"); font-weight: 200 900; }
@font-face { font-family: "Vigil"; src: url("Vigil-Italic[wght].woff2") format("woff2"); font-weight: 200 900; font-style: italic; }
@font-face { font-family: "Vigil Outline"; src: url("VigilOutline-Regular.woff2") format("woff2"); font-weight: 700; }
body { font-family: "Vigil", system-ui, sans-serif; }