> This page is for Flowkit CSS Framework, version v2 (default).
> For other versions, use one of these documentation indexes:
> - v2 (default): https://developers.webflow.com/flowkit/v2.0.0/llms.txt
> - v1: https://developers.webflow.com/flowkit/v1.0.0/llms.txt

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://developers.webflow.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://developers.webflow.com/_mcp/server.

# Flowkit Framework

> How classes and utilities were structured in the legacy Flowkit Framework.

<path fill-rule="evenodd" clip-rule="evenodd" d="M480 211.333C468.482 211.333 458.172 208.822 449.068 203.801C440.033 198.709 432.93 191.694 427.758 182.751C422.656 173.738 420.103 163.523 420.103 152.105C420.103 140.616 422.656 130.366 427.758 121.354C432.93 112.273 440.033 105.222 449.068 100.201C458.172 95.1787 468.482 92.6679 480 92.6679C491.586 92.6679 501.93 95.1787 511.034 100.201C520.207 105.222 527.344 112.239 532.447 121.251C537.551 130.263 540.136 140.546 540.206 152.105C540.136 163.523 537.551 173.738 532.447 182.751C527.413 191.694 520.31 198.709 511.137 203.801C501.964 208.822 491.586 211.333 480 211.333ZM480 185.433C486.068 185.433 491.447 184.058 496.138 181.306C500.826 178.486 504.448 174.564 506.999 169.542C509.551 164.452 510.827 158.639 510.827 152.105C510.827 145.499 509.551 139.652 506.999 134.562C504.448 129.471 500.826 125.55 496.138 122.798C491.447 119.978 486.068 118.568 480 118.568C473.999 118.568 468.654 119.978 463.966 122.798C459.344 125.55 455.759 129.471 453.206 134.562C450.654 139.652 449.413 145.499 449.482 152.105C449.482 158.639 450.758 164.452 453.311 169.542C455.93 174.564 459.517 178.486 464.069 181.306C468.689 184.058 473.999 185.433 480 185.433Z" fill="currentColor" />

<path d="M570.712 95.1456H539.263L573.297 208.858H600.814L623.2 136.23L647.361 208.858H674.468L708.61 95.1456H680.162L660.796 165.925L639.406 95.1456H611.884L590.589 167.483L570.712 95.1456Z" fill="currentColor" />

<path d="M834.972 94.9606H863.471V208.523H834.972V94.9606ZM830.935 56.3967C830.935 51.8226 832.597 47.8795 835.922 44.5673C839.405 41.0973 843.759 39.3623 848.984 39.3623C854.209 39.3623 858.563 41.0184 862.046 44.3307C865.688 47.4852 867.509 51.5072 867.509 56.3967C867.509 61.2862 865.688 65.387 862.046 68.6993C858.563 71.8538 854.209 73.431 848.984 73.431C843.759 73.431 839.405 71.7749 835.922 68.4627C832.597 64.9927 830.935 60.9707 830.935 56.3967Z" fill="currentColor" />

<path d="M716.438 40.3104H744.937V141.485L788.873 94.4036H825.447L776.523 145.98L828.534 207.966H790.773L745.412 150.002H744.937V207.966H716.438V40.3104Z" fill="currentColor" />

<path d="M375.735 40.8674H404.234V208.523H375.735V40.8674Z" fill="currentColor" />

<path d="M251 41.0181H359.534V67.9891H280.924V111.995H355.021V138.966H280.924V208.523H251V41.0181Z" fill="currentColor" />

<path d="M925.401 94.9601H951V119.093H925.401V168.776C925.401 174.454 926.431 178.949 928.489 182.261C930.705 185.574 934.98 187.23 941.313 187.23C943.846 187.23 946.617 186.994 949.625 186.521C950.099 186.421 950.557 186.311 951 186.196V209.522C949.332 209.91 947.529 210.209 945.588 210.416C941.313 211.047 937.513 211.362 934.188 211.362C926.588 211.362 920.334 210.494 915.426 208.759C910.677 207.182 906.877 204.737 904.027 201.426C901.336 197.956 899.435 193.697 898.327 188.65C897.377 183.602 896.902 177.767 896.902 171.142V119.093H873.39V94.9601H896.902V62.0745H925.401V94.9601Z" fill="currentColor" />

<path d="M206.362 24.3623H0V87.4182H206.362V24.3623Z" fill="#146EF5" />

<path d="M134.702 96.022H0V159.078H134.702V96.022Z" fill="#146EF5" />

<path d="M63.0559 167.668H0V230.724H63.0559V167.668Z" fill="#146EF5" />

## Introduction

Flowkit is a modular CSS Framework designed to power visually consistent and flexible Webflow websites — especially those generated by Webflow AI. It provides a structured collection of reusable utility classes, component patterns, and design tokens that streamline layout, styling, and interactions across your entire site.

Built with scalability and clarity in mind, Flowkit helps:

* Maintain design consistency through [global variables](https://help.webflow.com/hc/en-us/articles/33961268146323-Variables)
* Style and compose layouts using utility-first [classes](https://help.webflow.com/hc/en-us/articles/33961311094419-Classes)
* Build and extend [component systems](https://help.webflow.com/hc/en-us/articles/33961303934611-Components-overview) with predictable class conventions

---

## Style guide

The Flowkit style guide provides an overview of all the components and utility classes used in the project. Each website generated by Webflow's AI tools includes a style guide page generated by the Flowkit framework.

![Style Guide](/_fern-img/f19f0168da726fdb04f560867433d5b7f6262efb25a2af2a68c76d77d39c972d.webp)

> **Note**
>
> Style guide is a great place to change styles of the elements and components. To change colors, fonts, or spacing, open the variables panel or make the adjustments directly from the Designer canvas.
> [Learn more about variables](https://help.webflow.com/hc/en-us/articles/33961268146323-Variables).

---

## Naming conventions

This framework uses a structured naming system with hyphens and underscores that creates predictable, reusable classes organized into four main types.

### Hyphens ' - ' Usage

Hyphens are used to:

1. Connect multiple words within component names, property names, or values:
   * rich-text
   * text-align\_center
   * margin-top\_small
   * background\_primary
2. Define combo class modifiers (component states, surface context, spacing, interactions):
   * is-secondary
   * on-inverse
   * gap-small
3. Responsive modifiers for combo classes:
   * flex\_horizontal tablet-vertical
   * grid\_5-col mobile-2-col

### Underscores ' \_ ' Usage

Underscores are used to:

1. Separate components from their parts or properties:
   * card\_body
   * nav\_logo
   * footer\_link
2. Connect utility properties with their values:
   * margin-top\_small
   * width\_40percent
   * z-index\_2
3. Apply responsive variants of utility classes by adding breakpoint postfixes:
   * text-align\_center\_mobile — center-aligned text on mobile
   * width\_100percent\_mobile-l — full width on large mobile

> **Responsive modifiers: \`\_\` vs \`-\`**
>
> There is a clear distinction between **`_`** and **`-`** when working with responsive utility classes in Flowkit:
>
> * **`_mobile`** is used within **utility classes** to apply styles only at a specific breakpoint.
>   Example:
>   text-align\_center\_mobile means the text will be center-aligned **only on mobile**.
>   This class is **scoped to mobile resolution** and does not apply on tablet or desktop.
>
> * **`mobile-`** is used as a **combo modifier** to override or change a base style on mobile.
>   Example:
>   text-align\_center mobile-align-left
>   This means the text is center-aligned by default, but switches to left-aligned **on mobile**.
>
> Use `_mobile` when you want a utility to appear **only at a certain breakpoint**, and `mobile-` (or similar prefixes) when you want to **override an existing style** responsively using a combo class.

---

## Class types

There are four main types of classes: `Component`, `Utility`, `Combo`, and `Responsive Modifiers`. Each of these class types follows specific naming patterns for consistency and clarity.

### Component classes

Component classes define standalone UI elements with their own structure and functionality.

**Naming Pattern:** component\_property or component\_part\_property

| Example      | Purpose                                            |
| ------------ | -------------------------------------------------- |
| card         | Flexible content container with shadow and padding |
| card\_body   | The body part of a card component                  |
| nav          | Main website navigation bar                        |
| nav\_logo    | The logo part of a navigation component            |
| footer\_link | A link element within the footer                   |
| footer       | Site-wide footer container                         |
| button       | Reusable clickable element                         |
| banner       | Promotional or announcement container              |

Component classes define reusable building blocks of the UI and may have nested sub-elements, with naming that follows the parent component.

Here is an example of a Nav component with its nested elements:

nav nav\_links

nav\_logo-icon \
nav\_link

---

### Utility classes

Utility classes provide single-purpose styling that can be applied to any element.

**Naming Pattern:** property\_value

| Example                   | Purpose                             |
| ------------------------- | ----------------------------------- |
| margin-top\_medium        | Applies medium top margin           |
| padding-horizontal\_large | Applies large padding on both sides |
| z-index\_2                | Sets z-index to 2                   |
| background\_primary       | Sets background to primary color    |
| text-align\_center        | Centers text horizontally           |
| text-align\_left          | Applies left text alignment         |
| text-align\_right         | Applies right text alignment        |
| display\_inline-block     | Applies inline-block display        |

> **Note**
>
> Utility classes may apply multiple CSS properties, but always serve a single visual purpose.

---

### Combo classes

Combo classes are modifiers that change the appearance or behavior of components. They use specific prefixes to indicate their purpose.

| Prefix                      | Purpose                             |
| --------------------------- | ----------------------------------- |
| is-                         | Component-related modifiers         |
| on-                         | Surface context modifiers           |
| gap-                        | Spacing modifiers for flex and grid |
| ix-                         | Interactions related                |
| tablet-, mobile-l-, mobile- | Responsive modifiers                |

Combo classes are always following a main class: `main class` `prefix`-`modifier-name`

| Example                     | Purpose                                        |
| --------------------------- | ---------------------------------------------- |
| button is-secondary         | Changes button to secondary style              |
| text-link on-accent-primary | Adapts text link for accent-primary background |
| flex\_horizontal gap-medium | Sets medium gap in flex container              |
| section is-secondary        | Adjust section background and text color       |

---

### Responsive modifiers

Responsive modifiers apply styles at specific breakpoints. They use device-specific postfixes.

**Postfix:**

* \_tablet - Tablets
* \_mobile-l - Mobile landscape
* \_mobile - Mobile portrait

| Example                    | Purpose                                            |
| -------------------------- | -------------------------------------------------- |
| width\_100percent\_tablet  | Changes an element to full width on tablet screens |
| text-align\_center\_mobile | Centers text on mobile screens                     |

---

## Sizes

T-shirt sizing provides a consistent way to name size-related classes for things like spacing, borders, text, and icons.

| Size    | Example              |
| ------- | -------------------- |
| xxsmall | icon is-xxsmall      |
| xsmall  | icon is-xsmall       |
| small   | radius\_small        |
| medium  | text\_medium         |
| large   | gap\_large           |
| xlarge  | radius\_xlarge       |
| xxlarge | padding-top\_xxlarge |

This scale applies to layouts, spacing, typography, shadows, and other properties.

---

## Surface modifiers

The following surface modifiers are used across button, text, nav, icon, and card components. These follow the on-\[surface] naming structure and appear in combinations for alternate background styling.

| Surface          | Example                               |
| ---------------- | ------------------------------------- |
| Accent Primary   | button is-secondary on-accent-primary |
| Accent Secondary | text-link on-accent-secondary         |
| Accent Tertiary  | icon on-accent-tertiary               |
| Primary          | card-link on-primary                  |
| Secondary        | card-link on-secondary                |
| Inverse          | button on-inverse                     |

---

## Animation modifiers

Animation-related classes that are used in [Webflow Interactions](https://help.webflow.com/hc/en-us/articles/33961310025107-Intro-to-Interactions) follow the ix\_ prefix convention. These classes are not responsible for styling but act as hooks for applying interactions and animations defined in the Webflow Interactions panel.

Examples:

| Example               | Purpose                                               |
| --------------------- | ----------------------------------------------------- |
| ix\_section-scroll-in | Triggers scroll-based entrance animation for sections |
| ix\_image-zoom-hover  | Targets images that scale on hover                    |
| ix\_nav-slide-out     | Animates navigation on mobile menu toggle             |
| ix\_button-tap        | Adds tap/click animation to buttons                   |
| ix\_card-flip         | Triggers flip animation for card components           |