# Typography Graffiti uses a fluid typography system that scales smoothly between viewport sizes. ## How It Works Set `--fl` (fluid level) on any element to control its size: ```css --fl: -1 /* smaller than base */ --fl: 0 /* base size */ --fl: 1 /* h6 equivalent */ --fl: 2 /* h5 equivalent */ --fl: 3 /* h4 equivalent */ --fl: 4 /* h3 equivalent */ --fl: 5 /* h2 equivalent */ --fl: 6 /* h1 equivalent */ ``` ## Font Size Classes ```html

Extra small (--fl: -1)

Base size (--fl: 0)

Small heading (--fl: 1)

Medium heading (--fl: 2)

Large heading (--fl: 3)

Extra large (--fl: 4)

Double extra large (--fl: 5)

Triple extra large (--fl: 6)

``` ## Heading Classes Apply heading styles to non-heading elements: ```html

Looks like h1

Looks like h2

Looks like h3

Looks like h4

Looks like h5

Looks like h6

``` ## Pull Quote ```html

Styled quote text at --fl: 2

``` ## Container-Based Fluid Typography Make typography respond to container width instead of viewport: ```html

Scales with container

Text size based on container, not viewport

``` Also available as `.fluid-text-container`. ## Custom Fluid Size ```css .my-element { --fl: 3; /* will scale like h4 */ } ``` ## Variables ```css --font-sans: /* system font stack */ --font-size-min: 14px /* minimum base size */ --font-size-max: 18px /* maximum base size */ --font-ratio-min: 1.2 /* scale ratio for small screens */ --font-ratio-max: 1.33 /* scale ratio for large screens */ ``` ## Line Heights ```css --lh-xs: 1 /* tight, single line */ --lh-s: 1.2 /* headings */ --lh: 1.5 /* body text (default) */ --lh-m: 1.5 /* alias */ --lh-l: 1.8 /* loose */ --lh-xl: 2 /* double */ ``` ## See Also - [Variables](https://graffiti-ui.com/llms/variables.txt) - All CSS variables