Guide de style

Les choix de conception à l'origine des 2 026 pages, de la page d'accueil et de la page de contact. Tout ici est construit à partir des cours en direct et des jetons : si quelque chose semble incorrect sur cette page, c'est qu'il y a également une erreur sur le site.

Mis à jour le 1er octobre 2026 · Tokens : Variables › folk 2026 · Guide précédent : /style-guide-old

Principes

Les règles que chaque page doit respecter. Lorsqu'un nouveau cas se présente, il est résolu dans le cadre de ces règles, et non en les contournant.

01 Les autochtones d'abord
Le client avant tout · Variables

Noms de classes « Client-First », variables Webflow et contrôles du Designer. Code personnalisé uniquement pour ce que le Designer ne permet pas d'exprimer (:has, :checked, autofill, keyframes), placé dans l'en-tête de la page et commenté.

02 Rembourrage et jeu
sans marges

Le rythme vertical correspond à l'espacement au sein d'une section, et non à la marge entre les sections. À l'intérieur d'une section, l'espacement est défini par une propriété « flex » ou un espacement de grille, et non par la propriété « margin-bottom ». Chaque classe de texte doit réinitialiser ses marges supérieure et inférieure à 0, sinon les marges par défaut de Webflow pour les titres et les paragraphes s'appliquent.

03 unités
px · rem · ch · em

Utiliser le px uniquement pour les bordures et les ombres, qui sont des éléments décoratifs. Utiliser le rem pour la police, les marges intérieures et les espacements, afin qu’ils s’adaptent à la taille de police choisie par le lecteur. Utiliser le ch pour la mesure de lecture (la largeur maximale du texte est de 60 ch). Définir l’espacement entre les lettres en em, afin que celui-ci s’adapte à la taille de la police.

04 Saisir par point d'arrêt
sans clamp()

Les dimensions sont définies par point de rupture dans le Designer (ordinateur de bureau, tablette, mobile), jamais à l'aide de la fonction `clamp()`. Ce que vous voyez dans un point de rupture correspond exactement à ce qui sera affiché.

05 Le texte indique comment faire, la mise en page indique où le faire
section-header.is-center

Les classes de texte définissent la police, la taille et la couleur. L'alignement et la largeur sont déterminés par l'élément conteneur : le même élément `heading-style-h1` est centré sur la page d'accueil (à l'intérieur de `section-header.is-center`) et aligné à gauche sur la page « Contact » et « Ventes ».

06 Lignes fines noires
bordure/ligne fine #21201c

Chaque règle est presque noire, jamais grise ; les règles grises sont considérées comme manquantes. La propriété « border/subtle » s'applique uniquement aux bords des panneaux.

07 combinaisons pour des pièces uniques
heading-style-h1.is-tight

Une modification spécifique à une page est convertie en classe de liste déroulante ; ainsi, la classe partagée reste inchangée partout ailleurs. Nommez la liste déroulante en fonction de sa fonction (is-line, is-full, is-tight), et renommez-la lorsque celle-ci change.

08 Ne jamais détourner le défilement
sans épingle · sans bouton-pression · sans étape

Pas d'étapes épinglées, d'alignement au défilement ni de défilement par pas à l'aide de la molette. La propriété « motion » ne s'applique qu'au contenu qui défile normalement ; l'utilisation de la propriété CSS native « sticky » est autorisée, car c'est toujours le lecteur qui la contrôle.

Couleur

Les tokens sémantiques de la collection « folk 2026 ». La plupart renvoient à l'ancienne collection par défaut, de sorte que chaque valeur hexadécimale se trouve à un seul endroit. Les tokens ui/* sont réservés aux maquettes de produits et n'influencent en aucun cas le style de la page.

Texte
« text-size-regular » correspond toujours à « text/primary »
text/primary
noir à 89 %
text/secondaire
noir à 63 % · espaces réservés, notes
text/muted
#8d8d8d
text/erreur
hsla(359,89 %, 63 %) · erreurs de formulaire uniquement
Surface
des gris chauds, jamais froids
surface/page
blanc
superficiel/subtil
#fcfcfc
surface/carte
#f4f2f0 · panneaux multimédias
surface/puce
#e7e3df · survol, vignettes du logo
surface/toile de renfort
blanc à 65 % · superposition de la barre de navigation
Frontière
rules = trait fin
bordure/ligne fine
#21201c · toutes les règles
frontière/subtil
#e4e4e4 · bords du panneau uniquement
border/strong
#d4d4d4
frontière/chaud
rgba(133,111,90,0,4) · cartes
border/tint-blue
bord de la bande bleue · 40 %
border/tint-sand
bord de la bande de sable · 40 %
border/tint-pink
bord de la bande rose · 40 %
border/tint-cream
bordure crème · 40 %
bordure/soulignement
gris à 72 % · liens soulignés
Marque
les accents, avec modération
marque/bleu
#94c4ff
marque/violet
#c1aaf9
marque/orange
#ffc53d
marque/vert
#bdee63
Teinte
bandes multimédias, survol des cartes
teinte/bleu
#c3d3d6 · Capture
teinte/rose
#d8c0d0 · Enrichir
teinte/crème
#c9c9a8 · Piste
teinte/sable
#cfc4a6 · Sensibilisation
teinte/pêche
Appeler
teinte/foncé
#0a0a0a · groupe phare
tint/hero-base
#a8a8a8 · sous l'aquarelle du héros

Typographie

Trois familles, une seule échelle. La classe doit correspondre au niveau de titre : « heading-style-h1 » uniquement pour le titre H1 unique de la page, « heading-style-h2 » pour chaque titre de section, et « h3 » pour les titres d'articles.

Familles
police/affichage · police/corps · police/mono
Uxum Grotesque 500, titres

Inter, corps du texte, champs, boutons, interface utilisateur du produit

Geist Mono, numéros et étiquettes (01 Prospect)
affichage-du-style-d'en-tête
6 rem / 1,04 / −0,027 em · tablette 4 rem · mobile 2,5 rem
L'ensemble de votre processus de vente
style-de-titre-h1
4,5 rem / 1 / −0,025 em · max. 30 ch · tablette 3 rem · mobile 2 rem · .is-tight = hauteur de ligne 0,9 (contacter le service commercial)
Une seule plateforme pour gérer toutes vos ventes
style-de-titre-h2
4 rem / 1 / −0,023 em · tablette 2,75 rem · mobile 2 rem
Adoré par les équipes modernes
style-de-titre-h3
2,25 rem / 1,1 / −0,021 em · tablette 2,125 rem · mobile 1,75 rem
Trouvez vos prochains clients
text-size-xlarge
1,75 rem / 2,125 rem / −0,021 em · tablette 1,5 rem · mobile 1,375 rem

Un paragraphe d'introduction, à utiliser avec parcimonie lorsqu'une section nécessite une mise en valeur supplémentaire.

taille-de-texte-normale
1,25 rem / 1,225 / −0,017 em · tablette : 1,125 rem · mobile : 1 rem · toujours « texte/primaire »

Corps du texte. Noir, jamais en arrière-plan ni en couleur secondaire. À associer à la propriété `max-width-text` (60 caractères) pour tout texte dépassant la longueur d'une ligne.

taille-de-texte-petite
0,875 rem / 1,225 / −0,017 em

Détails secondaires : rôles associés à un nom de personnage, descriptions des cartes.

sourcil
0,6875 rem / 1 rem / +0,045 em · majuscules · bordure/ligne fine
Remplace
nombre de sourcils
Geist Mono 0,875 rem / 1,225
01 Prospect

Type d'interface utilisateur du produit

Chaque illustration de produit utilise exclusivement ces sept styles ; ainsi, toutes les images évoluent de concert. Les tailles sont définies dans folk 2026 sous forme de jetons « ui/type » : il suffit de modifier un jeton pour changer le style de toutes les images. L'épaisseur est de 400 ou 500.

ui-t-affichage

Uxum 1,5 rem / 1,5 rem · 500

Clients

Barre d'applications et titres de pages dans l'application de bureau

ui-t-display-sm

Uxum 1,25 rem / 1,3125 rem · 500

Louise Martin

Noms des contacts et des profils, intitulés des écrans de téléphone

ui-t-sous-titre

Inter 0,9375 rem / 1,25 rem · 500

Résumé des relations

Titres de sections, champ de recherche, texte de résumé détaillé

ui-t-text

Inter 0,8125 rem / 1,125 rem · 400

Nous avons donné suite à la démonstration, nous attendons les tarifs.

Corps du texte, lignes de liste, éléments de menu

ui-t-text-medium

Inter 0,8125 rem / 1,125 rem · 500

Acme Corp

Noms, intitulés de lignes, valeurs, boutons

ui-t-caption

Inter 0,75 rem / 1 rem · 400

Il y a 2 jours

Lignes secondaires, horodatages, transcriptions

ui-t-caption-medium

Inter 0,75 rem / 1 rem · 500

Dernière interaction

En-têtes de colonnes, libellés, libellés de groupes dans la barre latérale

Couleur

interface utilisateur de base/texte · est-en-mode-silencieux interface utilisateur/silencieux · est-estompé interface utilisateur/espace réservé

ui/text : la valeur par défaut

is-muted : on text, text-medium, caption, caption-medium

is-faint : uniquement sur le texte et la légende

Éléments avec mise en page

ui-btn · ui-tag · ui-pill · ui-tab · ui-nav-item

Les boutons, balises, pilules, onglets et éléments de navigation conservent leur propre classe, mais associent la taille de police, l'interligne et la famille de polices aux mêmes jetons ui/type. Ne saisissez jamais une taille de police brute.

Exceptions

rester rare

Les chiffres « Geist Mono » (ui-num, ui-mono, ui-deal_num), les initiales de l'avatar en 11 px, le glyphe de la touche du clavier (ui-key) et l'heure de la barre d'état avec une épaisseur de 600.

Icônes

Le dossier « Product Icons » contient tous les glyphes et logos utilisés dans les illustrations des produits.

Règles

16 px · couleurActuelle

Une taille unique partout : 16 px, aussi bien sur les écrans d'ordinateur que sur ceux des téléphones. Le glyphe reprend la couleur de son conteneur ; veillez donc à définir la couleur sur l'élément parent, et jamais sur l'icône elle-même. Ne collez jamais un fichier SVG directement dans une illustration : ajoutez d'abord l'icône au dossier « Product Icons », puis insérez-la.

Icône / …

49 glyphes d'interface

Icône / Flèche vers la gauche

Icône / Flèche vers la droite

Icône / Flèche vers le bas

Icône / Flèche vers le haut

Icône / Déplier

Icône / Recherche

Icône / Cloche

Icône / Courrier

Icône / Téléphone

Icône / Cercle coché

Icône / Graphique

Icône / Personne

Icône / Silhouette de personne

Icône / Bâtiment

Icône / Bureau

Icône / Plus

Icône / Dollar

Icône / Plus

Icône / À

Icône / Cercle en chevrons

Icône / Close

Icône / Lien

Icône / Éclat

Icône / Horloge

Icône / Calendrier

Icône / Compte

Icône / Chat

Icône / Remarque

Icône / Baguette magique

Icône / Globe terrestre

Icône / Accolades

Icône / Gras

Icône / Italique

Icône / Soulignement

Icône / Pièce jointe

Icône / Barre latérale

Icône / Applications

Icône / Écrou

Icône / Base de données

Icône / Cube

Icône / Trier

Icône / Filtre

Icône / Micro

Icône / Raccrocher

Icône / Volume

Icône / Case à cocher

Icône / Maj

Icône / Retour arrière

Icône / Assistant

Logo / …

10 logos de marque, couleurs propres à la marque

Logo / folk

Logo / LinkedIn

Logo / Profil LinkedIn

Logo / Gmail

Logo / WhatsApp

Logo / X

Logo / Google Agenda

Logo / Outlook

Logo / OpenAI

Logo / Claude

Pas des icônes

puces et schémas de marque

Les icônes « Orbit » et « Consolidate » conservent leurs dimensions d'origine. Les flèches filaires, les étoiles, les curseurs, les barres ondulées et les avatars photo ne sont pas des icônes.

Espacement

Deux niveaux. Une échelle numérique sans unité, et six noms sémantiques qui y renvoient. Les classes sont associées au nom sémantique afin que le concepteur interprète le code selon l’intention ; les nombres constituent une solution de secours. Pas de tailles de t-shirts, pas de noms en px.

espacement/1
0,125 rem
espacement/2
0,25 rem · empilement vertical
spacing/3 = serré
0,5 rem · une étiquette et sa valeur, les champs de formulaire
espacement/4
0,75 rem · icône vers texte
spacing/5 = pile
1rem · titre du paragraphe, bouton vers la note
espacement/6 = marge intérieure
1,5 rem · marge latérale de la page, espacement de la grille, distance entre la ligne et le contenu
spacing/7 = bloc
2rem · entre les groupes d'une colonne
espacement/8
3rem · rembourrage du haut du maillot Hero
spacing/9 = inset
4rem · espacement entre l'en-tête de section et le contenu, marge intérieure de la section sur mobile
espacement/10 = section
6rem · espacement de section, espace entre deux colonnes
espacement/11
7,5 rem
espacement/12
10 rem

Mise en page

Chaque section est composée des quatre couches suivantes : section_name › padding-section › padding-global › container-large. Les sections peuvent ensuite être réorganisées librement, sans avoir à calculer les marges.

Conteneurs
récipient/grand · moyen · petit

container-large : 90 rem (1 440 px) ; ainsi, les ordinateurs portables dont la largeur est comprise entre 1 440 et 1 728 px conservent une marge latérale. container-medium : 64 rem ; container-small : 48 rem. Les bandes multimédias se situent à l'intérieur du conteneur, sans déborder ; seule la bande « hero » dépasse de celui-ci.

padding-global
gouttière, à gauche et à droite

1,5 rem de chaque côté à chaque point de rupture.

section de remplissage
section 6 rem · tablette 6 rem · mobile 4 rem

Marge supérieure et inférieure de chaque section. La classe « .is-hero » définit une marge supérieure de 3rem afin que la photo du produit s'affiche dès l'arrivée sur la page.

titre de section
gap gutter · margin-bottom inset

Titre et introduction d'une section. La classe .is-tight réduit l'espace par rapport au contenu, tandis que la classe .is-center centre tout ce qu'elle contient (bannière d'accueil).

Pas de grille à 12 colonnes
colonnes + is-2 … is-6

D'après les mesures effectuées dans Figma : les cartes en 5-up et la rangée de logos en 6-up ne s'adaptent pas à une grille à 12 colonnes. Ce qui reste constant, ce sont la mesure et l'espacement de 1,5 rem, de sorte que les rangées constituent des fractions égales. Les sections « hero » à deux colonnes utilisent leur propre grille (contact-hero : 1 fr 1 fr, espacement de 6 rem, empilées sur tablette).

Points d'arrêt
Paramètres par défaut de Webflow

Ordinateur de bureau à partir de 992 px (avec 1 440 et 1 920 au-dessus), tablette jusqu'à 991 px, mobile en mode paysage jusqu'à 767 px, mobile en mode portrait jusqu'à 479 px. La police et l'espacement changent sur tablette et mobile.

Règles et forme

Les lignes de cette page correspondent à la ligne fine propre au système : 1 px, bordure/ligne fine, avec un espacement entre les colonnes.

container-large.has-rule
1 px de marge fine + espacement vers le haut de la gouttière

Structure d'une section : une ligne horizontale traversant le conteneur, suivie de son titre. Utilisée dans chaque section de la page d'accueil après la zone « hero », ainsi que dans la zone « hero » de la page « Contact et ventes ».

container-large.is-hairline
Ligne fine de 1 px, sans espacement intérieur

La règle seule, lorsque le contenu définit son propre espacement (appel à l'action dans le pied de page).

Lignes
testimonial-row · feature-row_text

Les listes sont séparées par une fine ligne horizontale en haut de chaque ligne, jamais uniquement par des espaces.

Coins
0 · à l'exception de la pilule CTA

Des angles vifs partout : cartes, panneaux, zones, tuiles de logo. La seule exception est le CTA principal, qui se présente sous la forme d’une « pilule » complète (rayon de 999 px).

Contour, pas de bordure
les coups se font en dehors de la surface

Les traits de cadre utilisent le contour (les quatre styles longs) ; ils n'occupent donc pas d'espace dans la mise en page et s'affichent par-dessus les éléments enfants. Tout élément unilatéral, comme une règle horizontale ou un soulignement, utilise la bordure.

Formulaires

Chaque formulaire de démonstration est relié au script de validation commun à l'ensemble du site. Vous pouvez le personnaliser à votre guise ; veillez toutefois à conserver le code de liaison ci-dessous tel quel.

Câblage (ne pas casser)
Script de démonstration du pied de page du site

Wrapper .signup-form_wrap, formulaire avec l'attribut data-folk-demo="contact", un champ input[type=email], un élément .js-select dont les valeurs sont 1-2, 3-9, 10-49, 50-249, 250-999, 1000+. Le script recherche l'entreprise lorsque le champ e-mail n'est plus au focus, puis redirige les personnes éligibles (10+) vers /demo-calendly, celles éligibles (3–9) vers /book-a-folk-demo-2, et toutes les autres vers la redirection pour les personnes non éligibles.

Formulaire intégré
formulaire d'inscription · bannière d'accueil, appel à l'action en bas de page

Adresse e-mail, taille de l'équipe et bouton dans une ligne encadrée, 0,875 rem, 3 rem de hauteur.

Champs de ligne
signup-form_input.is-line · signup-form_select.js-select.is-line

Contactez le service commercial. Pas de cadre, pas d'arrière-plan, texte de 1,25 rem, souligné en noir de 1 px, hauteur de 4 rem. Le texte de remplacement correspond au titre (pas d'étiquettes ; chaque champ comporte une balise `aria-label`). Le texte de remplacement et la liste déroulante non sélectionnée s'affichent en style « texte/secondaire ». Pas de soulignement lorsque le champ est sélectionné : le curseur sert d'indicateur, et la liste déroulante n'affiche une ligne de 2 px que lorsqu'elle est sélectionnée au clavier.

Bouton principal
signup-form_submit.is-full

Pilule noire, pleine largeur, 1 rem, 3,5 rem de hauteur.

Rythme
champs-du-formulaire-de-contact · actions-du-formulaire-de-contact

Champs rapprochés (0,5 rem), pile de boutons et de notes (1 rem), bloc (2 rem) entre les deux groupes.

Décisions
pourquoi c'est comme ça

Une commande « select » native par rapport aux tuiles d'options : ces dernières nécessitaient un script intermédiaire pour accéder au script de qualification, tandis que la commande « select » n'en a pas besoin. L'en-tête de la page recouvre la couleur bleue de la fonction de remplissage automatique de Chrome et conserve la police du champ sur les valeurs suggérées.

Motion

Les apparitions sont des attributs, et non des interactions. Les éléments apparaissent et disparaissent les uns après les autres ; il n'y a pas d'effet de flou, et aucun élément n'attend que le lecteur ait fait défiler la page jusqu'à lui pour s'afficher.

data-reveal-group
charger · afficher · faire défiler

Sur une section ou une grille. Le chargement s'adapte à la page (héros) : affichage lorsque le groupe apparaît à l'écran, défilement élément par élément au fur et à mesure de leur apparition. L'attribut `data-reveal-at="60%"` retarde l'affichage jusqu'à ce que le haut de la page atteigne cette hauteur.

data-reveal
haut · lignes · fondu

up : fondu entrant et remontée de 1 rem. lignes : un titre qui s'affiche ligne par ligne. fondu : opacité uniquement, utilisé pour les conteneurs très fins afin que la règle s'affiche avec sa section.

data-reveal-preset
liens · rubrique · éléments · fiches · bloc · liste · menu · note de bas de page

Un attribut au lieu de trois pour les modèles habituels.

La règle H1
data-reveal-css="hero"

Les titres situés au-dessus de la ligne de flottaison utilisent l'effet de révélation par CSS uniquement ; ils sont donc immédiatement pris en compte dans le LCP (First Contentful Paint). N'appliquez jamais d'effet de fondu JavaScript à un conteneur contenant une balise H1.

Toujours visible
animations réduites · pas de JS · Créateur

Que ce soit avec des animations réduites, sans JavaScript ou dans le Designer, tout est clairement visible. Le moteur utilisé est reveal.js, situé dans le pied de page du site ; les modes réservés à la page d'accueil se trouvent dans reveal-extra.js.

Composants

Les sections partagées existent sous forme de composants Webflow ; ainsi, toute modification apportée à l'un d'entre eux se répercute sur toutes les pages qui l'utilisent.

Barre de navigation · Pied de page
sur l'ensemble du site

Toute modification apportée à l'un ou l'autre de ces éléments se répercute sur toutes les pages. La variante « Base » du pied de page inclut le formulaire CTA. Ne renommez jamais les éléments .nav-items-wrapper, .nav-item-wrapper, .logo-context-menu ou .sub-nav-item : les scripts et les feuilles de style CSS s'y réfèrent.

Articles 2026
Logos 2026 · Témoignages 2026

Le mur des logos et les rangées de témoignages du site, réutilisés dans le cadre des ventes par contact.

Formulaire de qualification des héros
Formulaire « Héros local »

Le formulaire de démonstration intégré, déjà relié au script de qualification.

Maquettes de produits
Espace de noms ui · Tokens ui/*

Les illustrations sont des éléments Webflow codés, et non des images : elles restent nettes quelle que soit la résolution (DPI), sont interactives et peuvent être animées. Elles utilisent leurs propres classes « ui- » et leurs propres jetons, et n'empruntent jamais les espacements de la page. Chaque illustration animée contient une instance de son composant « Code », ce qui permet de ne modifier le script qu'une seule fois. Toutes les illustrations sont répertoriées à l'adresse /illustrations ; ajoutez-y chaque nouvelle illustration.

Liste de contrôle
liste de contrôle › élément de liste de contrôle › icône de liste de contrôle
  • Obtenir une démonstration
  • Découvrez quelle formule vous convient le mieux