Typography

Responsive specimen

View brand defaults ↓

H1 / Page title

i12e.eu / typography

H2 / Section

A clear starting point

H3 / Subsection

Bring related ideas together

H4 / Group

Make the next step visible

H5 / Detail

Keep the details close

H6 / Nested detail

Even the smallest heading has a role

Paragraph / Regular 400

Roboto for headings and prose. Roboto Mono for brand accents, code, and the details.

01 / Reading & emphasis

Room for the words

A paragraph should be comfortable to read from the first word to the last. A consistent rhythm gives each sentence room, while a considered line length makes the next line easy to find.

This second paragraph shows the space between ideas. Resize the preview to see how the same passage wraps, and increase the text size to check that the layout continues to work.

Use bold for important information, italic for emphasis, and both when the meaning calls for it. A link to the brand defaults stays recognisable through its underline.

The b element draws attention; the i element marks an alternate voice. Their appearance matches bold and italic, while their meaning differs from strong importance and emphasis.

Small text / Supporting notes and captions start at 14px equivalent. Essential information stays at body size.

Accents & symbols: café, naïve, coöperatie, Straße, Ångström, €29.50, £18.00, 0123456789. Chemistry uses H2O; an area might be 24m2.

02 / Lists

Order where it matters

Use an ordered list when the sequence is meaningful.

  1. Start with the reader’s main task.
  2. Arrange the information.
    1. Introduce the subject.
    2. Add the details the reader needs.
  3. Check the result at different text sizes and screen widths.

Use an unordered list when the items are peers.

  • Clear headings and readable paragraphs.
  • Consistent text treatments.
    • Bold for importance.
    • Italic for emphasis.
  • Enough room for a longer list item to wrap naturally, without losing the alignment of its marker or the relationship to the items around it.

03 / Quotes & definitions

A different voice

Give each idea enough room to be understood.

Sample editorial note, i12e typography specimen.
Typeface
A family of letterforms. Roboto carries the main reading experience; Roboto Mono supplies the monospaced accents.
Line-height
The distance between lines of text, expressed here as a multiple of the font size.
Measure
The width of a text column. The default is 65ch, limited by the available space.

04 / Code & keyboard input

The technical details

Inline code such as font-family uses Roboto Mono. Press Tab to move through the controls and Enter to activate a focused link.

.article {
  font-family: "Roboto", Arial, sans-serif;
  line-height: 1.6;
  max-width: 65ch;
}

Long text wraps too: https://design.i12e.eu/typography/examples/a-long-reference-without-convenient-line-breaks

05 / Tabular text

Information at a glance

Typefaces and their intended use
Use Typeface Weight
Headings Roboto 600
Body text Roboto 400
Strong emphasis Roboto 700
Code & accents Roboto Mono 400

06 / In context

Designing a useful reference

i12e / Design notes

A design reference connects a decision to the places it will be used. A heading introduces the subject. The paragraphs explain it, and the details help someone put it into practice.

Start with the reading experience

The words come first. Give the text a clear order, keep related ideas together, and use emphasis with intent. Typography should help the reader understand what matters.

  • Use a descriptive heading.
  • Keep supporting text close to its subject.
  • Make further guidance easy to recognise.

A change of subject

The horizontal rule above marks a thematic break. It separates this closing note from the guidance before it without adding another heading level.

07 / Colour roles · approved palette

Meaning before colour

These samples use the shared colour specification. Switch the page appearance to review the same typography with approved light or dark roles.

Primary / Main reading text.

Secondary / Supporting context with readable contrast.

Link / Read about colour roles.

Warning: This is a sample warning. Its meaning is written out as well as indicated by colour.

Brand defaults

These are the saved typography decisions. Preview controls change the specimens above; they do not change these values.

Responsive scale · pixel equivalents at a 16px browser default
Style 390px preview 1200px preview Weight
H1 2rem / 32px 3rem / 48px 600
H2 1.75rem / 28px 2.25rem / 36px 600
H3 1.5rem / 24px 1.75rem / 28px 600
H4 1.25rem / 20px 1.5rem / 24px 600
H5 1.125rem / 18px 1.25rem / 20px 600
H6 1rem / 16px 1.125rem / 18px 600
Body 1rem / 16px 1.125rem / 18px 400

Sizes interpolate using the actual preview width and stop at the endpoints. Relative units respect the reader’s browser font setting.

Family, emphasis & rhythm

  • Roboto for headings, prose, and controls; Roboto Mono for brand accents, code, and specimen labels.
  • Regular 400, semibold headings 600, bold 700. Italic and bold italic use real italic font styles.
  • Body line-height 1.6; heading line-height 1.2; paragraph spacing 1em; prose measure 65ch.
  • Captions and control labels start at 0.875rem / 14px equivalent. Tracking uses the typeface’s normal spacing.

Compact interface roles

Document headings use the responsive scale. Cards and controls use explicit compact roles without changing their semantic heading levels. All heading roles use 1.2 line-height; control values, labels, and supporting text use 1.6.

Relative sizes at a 16px browser default
Role Size Weight
Card / group title 1.125rem / 18px 600
Panel / subgroup title 1rem / 16px 600
Control value / output / button / select / textarea 1rem / 16px 400
Control label 0.875rem / 14px 600
Supporting text / metadata 0.875rem / 14px 400
Brand identifier · Roboto Mono 1rem / 16px 400

Document titles

Each page opens with a plain title in its content column, using Roboto Mono 400 at the responsive 32–48px H1 scale, with 1.2 line-height and the primary text colour. The shared .document-title role uses the usual H1 bottom spacing and scrolls with the document. Body headings and the adjustable specimens retain their existing Roboto styles.

Header navigation

Every page uses the same header pattern: the primary SVG logotype and navigation. The logo plays once, then stays expanded; reduced motion shows the expanded logo immediately. The logo occupies up to 16rem of width, with roughly 24px lettering and a stable canvas that fits its complete animation. Page titles sit in the document flow below the header. A shared 2–3rem gap (32–48px at the default browser size) separates the header from the next page region, following the viewport H1 scale. This applies to titles, workspaces, and format toolbars; document wrappers add no extra top spacing. It is larger than paragraph spacing to distinguish site navigation from page content, and remains independent of preview controls. Plain Roboto navigation links follow the 16–18px body scale, with a separate Appearance control. All four design links stay visible in the same order: Design Index, Logotype, Typography, and Colours. The current page is identified with aria-current. Navigation follows the page width; embedded specimens follow their own available width.

Shared implementation & artwork

assets/css/typography.css defines the families, scale, rhythm, and compact roles. Page typography and header spacing follow the viewport directly in CSS, so they have the correct sizes before JavaScript loads and remain responsive without it. The scale stays proportional to the browser’s font setting. Older browsers use stable tablet and desktop steps.

assets/js/typography.js measures only embedded specimen containers. Preview changes affect their specimen, independently of page titles, navigation, and header spacing.

The animated logotype is an intentional exception: Roboto Mono 400 at a 48px default, with its own measured letter spacing and animation geometry. Its size control adjusts the artwork, independently of document typography. The large “Aa” on the design index is a decorative type specimen.

Colour roles

The colour specification defines the approved light and dark palette. This page shares assets/css/colours.css and its semantic properties for text, links, warnings, backgrounds, surfaces, and borders.

Light mode uses #191919 main text, #666666 secondary text, #0E47CB links, #ffffff surfaces, and a #f7f7f7 page. Dark mode uses #f7f7f7 main text, #bdbdbd secondary text, #91b0ed links, #242424 surfaces, and a #191919 page. Warning text uses the appropriate yellow / amber shade.

Approved text roles meet at least 4.5:1 contrast on their intended backgrounds. Links remain underlined and warnings remain labelled. Appearance changes are temporary and start light on reload.

Reading & accessibility checks

The spacing preset applies at least 1.5 line-height, 2em paragraph spacing, 0.12em letter spacing, and 0.16em word spacing, following W3C’s text-spacing guidance. It preserves a higher selected line-height and restores your settings when switched off.

Also check the entire page with browser text enlargement to 200% and at a narrow 320px viewport. Preview text size only changes the specimens; it does not replace browser zoom. New colours should follow W3C’s contrast guidance.