Skip to main content

Typography


Primary Font: Roboto

We use Roboto as our Primary font. Roboto allows letters to take up as much space as it needs and ultimately, making for an improved experience for the reader. We use Arial as a web safe alternative font. It is similar in character and style to Roboto typeface and is a commonly available system font.

Weight

Font weight is the thickness of a font's stroke, with various weights used to differentiate content hierarchy. The bold style emphasizes the importance in comparison with the regular font style in the font family. We can use weights starting from 300 (Light) up to 700 (Bold). Usually, the bold style is assigned to headings. Regular text is used for body text.

Light 300

Regular 400

Medium 500

Bold 700


Line height

Line spacing is commonly measured as a percentage of font size. Conventional wisdom is that line spacing of 130%-150% is ideal for readability. In fact, anything from about 120% up to 200% is acceptable, but 150% tends to be the most quoted sweet spot (and a WCAG recommendation). You should experiment to see what looks best with your text. The line-height value is always divisible by 4 to support the grid.

This is why for body text we use 150% line height, while for headers we use 120% due to the larger font size where using 150% would add too much space between the heading lines.


Letter spacing

Letter spacing (also known as character spacing or tracking ) is the adjustment of the horizontal white space between the letters in a block of text. Unlike kerning, which affects only designated pairs of letters, letterspacing affects every pair. By adjusting letter spacing to the environment you are working with you will help readers consume your information faster, and more efficiently. The fun part is that they won’t even notice it!

Headings -0.015em (-1.5%)

Body 0%

Caption and Small text 0.01em (1%)


Text color

Body text color is blue-grey-5 (#3D5265)

Color also plays a key role in an interface’s typographic hierarchy, often by established types like:

  • Brand colors and supplementary colors, for most interface text whether body or heading.
  • Interactive, not just for links but also flat buttons, tab labels, and more
  • Disabled, often resulting is especially lower contrast treatments
  • Error, usually red, for the highest contrast with its surroundings

Line length

Line-length is the number of characters displayed in a single line. Lines that are too long or too short can distract readers. For readability, limit to no more than 80 characters including spaces for desktop. Line length for mobile is recommended to use 40 to 60 characters including space per line.


Base Font Size

We set 16px (1rem) as the base font size for body text to ensure readability. It is the default font size for most browsers.


Desktop Styles

Heading 1

Font Size: 44px or 2.75rem
Letter spacing: -0.015em (-1.5%)
Line height: 1.2 (120%)

Heading 2

Font Size: 32px or 2rem
Letter spacing: -0.015em (-1.5%)
Line height: 1.2 (120%)

Heading 3

Font Size: 26px or 1.625rem
Letter spacing: -0.015em (-1.5%)
Line height: 1.2 (120%)

Heading 4

Font Size: 20px or 1.25rem
Letter spacing: -0.015em (-1.5%)
Line height: 1.2 (120%)
Heading 5
Font Size: 18px or 1.125rem
Letter spacing: -0.015em (-1.5%)
Line height: 1.2 (120%)

Body text

Font Size: 16px or 1rem
Letter spacing: 0 (0%)
Line height: 1.5 (150%)

Caption text

Font Size: 14px or 0.875rem
Letter spacing: 0.01 (1%)
Line height: 1.5 (150%)

Small text

Font Size: 12px or 0.75rem
Letter spacing: 0.01 (1%)
Line height: 1.5 (150%)

Mobile Styles

Heading 1

Font Size: 30px or 1.875rem
Letter spacing: -0.015em (-1.5%)
Line height: 1.2 (120%)

Heading 2

Font Size: 24px or 1.5rem
Letter spacing: -0.015em (-1.5%)
Line height: 1.2 (120%)

Heading 3

Font Size: 20px or 1.25rem
Letter spacing: -0.015em (-1.5%)
Line height: 1.2 (120%)

Heading 4

Font Size: 18px or 1.125rem
Letter spacing: -0.015em (-1.5%)
Line height: 1.2 (120%)

Body

Font Size: 16px or 1rem
Letter spacing: 0 (0%)
Line height: 1.5 (150%)

Caption

Font Size: 14px or 0.875rem
Letter spacing: 0.01em (1%)
Line height: 1.5 (150%)

Small text

Font Size: 12px or 0.75rem
Letter spacing: 0.01em (1%)
Line height: 1.5 (150%)

Typography tokens

Weight

Token nameValueStyle
font-weight-1100Thin
font-weight-2200Light
font-weight-3300Book
font-weight-4400Regular
font-weight-5500Medium
font-weight-6600SemiBold
font-weight-7700Bold
font-weight-8800ExtraBold
font-weight-9900Black

Line height

Token nameValue(no unit)
font-lineheight-00.95
font-lineheight-01.1
font-lineheight-11.2
font-lineheight-21.375
font-lineheight-31.5
font-lineheight-41.75
font-lineheight-52

Letter spacing

Token nameValue(em)
font-letterspacing-000-.02
font-letterspacing-00-.015
font-letterspacing-0-.01
font-letterspacing-1.01
font-letterspacing-2.015
font-letterspacing-3.02
font-letterspacing-4.075
font-letterspacing-5.15

Font size

Token nameValue(rem)Value(px)
font-size-00.7512
font-size-0.87514
font-size-1116
font-size-21.12518
font-size-31.2520
font-size-41.524
font-size-51.62526
font-size-61.87530
font-size-7232
font-size-82.2536
font-size-92.540
font-size-102.7544

Font size fluid

Token nameValue
font-size-fluid-0clamp(1.125rem, 2vw, 1.25rem)
font-size-fluid-1clamp(1.25rem, 4vw, 1.625rem)
font-size-fluid-2clamp(1.5rem, 6vw, 2rem)
font-size-fluid-3clamp(1.875rem, 9vw, 2.75rem)