Typography
A standard scale and basic definitions for your text: font family,weight and sizes.
Font Family
| Global Token | Value | 
|---|---|
| --fs-text-face-body | -apple-system, system-ui, BlinkMacSystemFont, sans-serif | 
| --fs-text-face-title | var(--fs-text-face-body) | 
Weights
| Global Token | Value | 
|---|---|
| --fs-text-weight-light | 300 | 
| --fs-text-weight-regular | 400 | 
| --fs-text-weight-bold | 700 | 
| --fs-text-weight-black | 900 | 
Typography Scale
Use a type scale to add rhythm to your typography and ensure consistency throughout the project.
Access https://type-scale.com (opens in a new tab) and pick a scale that suits the store's branding.
Mobile Scale
- 12Lorem ipsum dolor sit amet, consectetur adipiscing elit. 
- 14Lorem ipsum dolor sit amet, consectetur adipiscing elit. 
- 16Lorem ipsum dolor sit amet, consectetur adipiscing elit. 
- 18Lorem ipsum dolor sit amet, consectetur adipiscing elit. 
- 20Lorem ipsum dolor sit amet, consectetur adipiscing elit. 
- 23Lorem ipsum dolor sit amet, consectetur adipiscing elit. 
- 26Lorem ipsum dolor sit amet, consectetur adipiscing elit. 
- 29Lorem ipsum dolor sit amet, consectetur adipiscing elit. 
- 33Lorem ipsum dolor sit amet, consectetur adipiscing elit. 
Desktop Scale
- 12Lorem ipsum dolor sit amet, consectetur adipiscing elit. 
- 14Lorem ipsum dolor sit amet, consectetur adipiscing elit. 
- 16Lorem ipsum dolor sit amet, consectetur adipiscing elit. 
- 20Lorem ipsum dolor sit amet, consectetur adipiscing elit. 
- 25Lorem ipsum dolor sit amet, consectetur adipiscing elit. 
- 31Lorem ipsum dolor sit amet, consectetur adipiscing elit. 
- 39Lorem ipsum dolor sit amet, consectetur adipiscing elit. 
- 48Lorem ipsum dolor sit amet, consectetur adipiscing elit. 
- 61Lorem ipsum dolor sit amet, consectetur adipiscing elit. 
| Global Token | Value | 
|---|---|
| --fs-text-size-base | 16px | 
| --fs-text-scale-desktop | 1.25 | 
| --fs-text-scale-mobile | 1.13 | 
| --fs-text-size-0 | 12px | 
| --fs-text-size-1 | 14px | 
| --fs-text-size-2 | var(--fs-text-size-base) | 
| --fs-text-size-3 | calc(var(--fs-text-size-2) * var(--fs-scale)) | 
| --fs-text-size-4 | calc(var(--fs-text-size-3) * var(--fs-scale)) | 
| --fs-text-size-5 | calc(var(--fs-text-size-4) * var(--fs-scale)) | 
| --fs-text-size-6 | calc(var(--fs-text-size-5) * var(--fs-scale)) | 
| --fs-text-size-7 | calc(var(--fs-text-size-6) * var(--fs-scale)) | 
| --fs-text-size-8 | calc(var(--fs-text-size-7) * var(--fs-scale)) | 
Semantical tokens
Sizes
| Global Token | Value | 
|---|---|
| --fs-text-size-title-huge | var(--fs-text-size-7) | 
| --fs-text-size-title-page | var(--fs-text-size-6) | 
| --fs-text-size-title-product | var(--fs-text-size-4) | 
| --fs-text-size-title-section | var(--fs-text-size-4) | 
| --fs-text-size-title-subsection | var(--fs-text-size-4) | 
| --fs-text-size-title-mini | var(--fs-text-size-4) | 
| --fs-text-size-lead | var(--fs-text-size-3) | 
| --fs-text-size-menu | var(--fs-text-size-base) | 
| --fs-text-size-body | var(--fs-text-size-base) | 
| --fs-text-size-legend | var(--fs-text-size-1) | 
| --fs-text-size-tiny | var(--fs-text-size-0) | 
Max Lines
| Global Token | Value | 
|---|---|
| --fs-text-max-lines | 2 | 
Adding a custom font
Using a custom font helps to keep a cohesive brand across your store. To maintain readability in your store, choose an easily readable font and the appropriate color and text size. Follow the steps below to add a custom font to your store.
- Go to the srcfolder and create thefontsfolder.
- Inside the src/fontsfolder, create a newWebFonts.tsxfile and add a<link>tag for yourfont-familyof choice as in the example below.
/* eslint-disable @next/next/no-page-custom-font */
 
function WebFonts() {
  return (
    <>
      {/* Add a <link> tag for your font-family of choice */}
      <link
        rel="stylesheet"
        href="https://fonts.googleapis.com/css2?family=Lato:wght@300;400;700;900&display=swap"
      />
    </>
  );
}
 
export default WebFonts;
 - In your custom theme file, usually src/themes/custom-theme.scss, use the--fs-text-face-bodytoken with thefont-familyyou chose.
We recommend using fallback fonts (opens in a new tab) as system fonts to ensure quick rendering, consistent and readable content.
@layer theme {
  .theme {
    // --------------------------------------------------------
    // Typography (Branding Core)
    // --------------------------------------------------------
      --fs-text-face-body: 'Lato', -apple-system, system-ui, BlinkMacSystemFont, sans-serif;
  }
}- Run yarn devand check the browser to see the newfont-familyapplied.