Charte de marque

La Libre

Un magenta signature, un serif éditorial qui assume ses titres, un sans-serif robuste pour tout le reste, et une couleur par rubrique pour se repérer. Voici la marque telle qu'elle vit sur lalibre.be, prête à être reprise par les équipes produit et développement.

  • Source lalibre.be
  • Relevé 10.10.2026
  • App Design System v1.0
  • Méthode Refactoring UI
  • Contact Raphaël Batista, DA IPM

00 · Principes

Huit règles avant les valeurs

Cette charte décrit le système tel qu'il tourne sur lalibre.be, puis le relit avec la méthode Refactoring UI (Adam Wathan et Steve Schoger). Quand la méthode et la marque se contredisent, la marque l'emporte sur la typographie et la couleur, et l'écart est signalé.

site valeur relevée dans le code de production calc valeur calculée pour compléter une échelle proposition recommandation, pas encore en production
1

Hiérarchie par la graisse et la couleur

Pas seulement par la taille. Un titre de teaser en Manuale 600 graphite, une métadonnée en Libre Franklin 600 grise en capitales : deux niveaux lisibles sans changer de corps.

2

Des nuances choisies d'avance

Dix paliers pour le magenta, le marine et les gris. On pioche dans l'échelle, on n'invente pas un hex au fil d'une maquette.

3

Une échelle d'espacement

4, 8, 12, 16, 24, 32, 48, 64 px. Le site vit surtout sur 0,5 rem et 1 rem : ce sont les deux valeurs de référence.

4

Une ombre est une altitude

Cinq niveaux, du bouton à la modale. Plus un élément est haut, plus l'ombre est large et diffuse. Toujours deux couches : une nette, une douce.

5

Pas de gris sur un fond coloré

Sur magenta, marine ou rubrique, le texte secondaire est du blanc atténué ou une teinte claire de la même couleur. Jamais #686868.

6

La couleur n'est jamais seule

Un contenu abonné, c'est un carré jaune, la lettre L et un texte pour les lecteurs d'écran. Une erreur, c'est une couleur et un message.

7

45 à 75 caractères par ligne

La colonne d'article fait environ 675 px : à 21 px de corps, cela donne une soixantaine de caractères. On ne l'élargit pas.

8

Les bordures en dernier

Le site utilise beaucoup de filets #E0E0E0. Pour un nouveau composant, essayer d'abord l'espace, un fond #F2F2F2 ou une ombre. proposition

02 · Couleurs

Couleurs de marque

Le magenta porte la marque (logo, header, liens, titres de blocs, couleur du navigateur). Le graphite porte la lecture : c'est la couleur du texte et du bouton principal. Le marine sert de fond éditorial pour les séries et les grands formats. Cliquer sur une valeur la copie.

--llb-magenta
Magenta La Libre
HEX
RGB172 · 17 · 93
HSL331 · 82 % · 37 %
Logo, liens, titres de box, theme-color · texte blanc 7,0:1 (AA)
--llb-marine
Marine
HEX
RGB6 · 30 · 77
HSL220 · 86 % · 16 %
Secondaire : fonds éditoriaux, séries · texte blanc 16,1:1 (AA)
--llb-graphite
Graphite
HEX
RGB38 · 39 · 41
HSL220 · 4 % · 15 %
Texte courant, bouton primaire · texte blanc 15,0:1 (AA)
--llb-white
Blanc
HEX
RGB255 · 255 · 255
HSL0 · 0 % · 100 %
Fond de page · texte graphite 15,0:1 (AA)

Piège de nommage pour les devs. Dans le CSS du site, --color-primary vaut #262729 (graphite) et --color-secondary vaut #AC115D (magenta). Côté marque, c'est l'inverse : le magenta est la couleur principale. Les tokens fournis ici lèvent l'ambiguïté avec des noms explicites (--llb-magenta, --llb-graphite).

Échelles de nuances

Le site utilise déjà plusieurs déclinaisons du magenta et du marine. Elles sont rangées ici sur une échelle de 50 (le plus clair) à 900 (le plus foncé). Les paliers manquants sont calculés en HSL à partir de la teinte de base, et marqués calc. Le « Aa » dans chaque pastille est écrit dans la couleur de texte qui passe le mieux.

Magenta

Aa13,7 50 calcAAA
Aa12,1 100 calcAAA
Aa9,5 200 calcAAA
Aa6,3 300 calcAA
Aa5,0 400 siteAA
Aa5,7 500 calcAA
Aa7,0 600 siteAAA
Aa8,8 700 siteAAA
Aa13,0 800 siteAAA
Aa16,9 900 calcAAA

Marine

Aa13,4 50 calcAAA
Aa11,4 100 calcAAA
Aa8,0 200 calcAAA
Aa5,4 300 calcAA
Aa4,2 400 calcAA 24px+
Aa6,6 500 siteAA
Aa13,3 600 siteAAA
Aa14,8 700 calcAAA
Aa16,1 800 siteAAA
Aa18,6 900 siteAAA

Gris

Aa14,0 50 siteAAA
Aa13,4 100 siteAAA
Aa11,3 200 siteAAA
Aa8,8 300 siteAAA
Aa8,0 400 siteAAA
Aa5,2 500 siteAA
Aa5,6 600 siteAA
Aa7,5 700 siteAAA
Aa15,0 800 siteAAA
Aa18,9 900 siteAAA
  • 50 · 100fonds teintés, survol de ligne, zones de mise en avant
  • 200 · 300bordures, séparateurs, éléments inactifs
  • 400 · 500icônes, accents sur fond sombre
  • 600la couleur de base (magenta #AC115D)
  • 700survol
  • 800 · 900état pressé, fonds profonds, texte sur fond teinté

Hors échelle : le magenta vif #EF147F. Nommé --color-secondary-darkest dans le CSS, c'est en fait la version la plus lumineuse. Il sert d'accent ponctuel sur fond sombre (mode sombre, vidéo). Il n'entre pas dans l'échelle parce que sa teinte et sa saturation s'en écartent.

Abonnement

Le jaune est réservé à l'univers payant : bouton S'abonner, badge « article offert », carré « L » des contenus abonnés, paywall. Le texte posé dessus est toujours brun foncé.

--llb-pay
Jaune abonnement
HEX
RGB242 · 201 · 61
HSL46 · 87 % · 59 %
Bouton S’abonner · texte graphite 9,4:1 (AA)
--llb-pay-dark
Jaune offert
HEX
RGB247 · 181 · 0
HSL44 · 100 % · 48 %
Badge « article offert », survol · texte graphite 8,2:1 (AA)
--llb-pay-darker
Brun sur jaune
HEX
RGB93 · 60 · 16
HSL34 · 71 % · 21 %
Texte posé sur le jaune · texte blanc 9,9:1 (AA)
--llb-pay-light
Jaune clair
HEX
RGB255 · 229 · 89
HSL51 · 100 % · 67 %
Fonds légers · texte graphite 11,8:1 (AA)

Couleurs fonctionnelles

États, direct et marqueurs éditoriaux. Elles ne remplacent jamais un texte : le badge « Live » dit « Live », un message d'erreur dit ce qui ne va pas.

--llb-success
Succès
HEX
RGB77 · 158 · 51
HSL105 · 51 % · 41 %
Confirmations · texte graphite 4,5:1 (AA grands textes)
--llb-error
Erreur
HEX
RGB199 · 60 · 73
HSL354 · 55 % · 51 %
Champs en erreur, alertes · texte blanc 5,0:1 (AA)
--llb-live
Direct
HEX
RGB223 · 0 · 0
HSL0 · 100 % · 44 %
Badge Live · texte blanc 5,1:1 (AA)
--llb-new
Nouveau
HEX
RGB0 · 253 · 197
HSL167 · 100 % · 50 %
Badge Nouveau · texte graphite 11,3:1 (AA)
--llb-sponsor
Sponsor
HEX
RGB227 · 224 · 224
HSL0 · 5 % · 88 %
Fond des contenus sponsorisés · texte graphite 11,4:1 (AA)
--llb-sponsor-ink
Titre sponsor
HEX
RGB17 · 74 · 112
HSL204 · 74 % · 25 %
Titre des teasers sponsorisés · texte blanc 9,4:1 (AA)

Dégradé éditorial

Le fond des pages séries part d'un bleu pétrole vers le marine (#08619B vers #061E4D, 270°). La vidéo utilise une variante plus nuit (#0A2B6C vers #03132B).

linear-gradient(270deg, #08619B, #061E4D)

Contrastes

Ratios WCAG calculés pour les couples les plus courants. Seuils : 4,5:1 pour le texte courant (AA), 3:1 pour les grands textes et les éléments d'interface, 7:1 pour l'AAA. Chaque case dit son verdict en toutes lettres.

Ratios de contraste texte / fond
Texte \ FondBlanc#FFFFFFSurface#F2F2F2Jaune#F2C93DMagenta#AC115DMarine#061E4DSombre#1F1E1C
Graphite#262729Aa15,0AAAAa13,4AAAAa9,4AAAAa2,1nonAa1,1nonAa1,1non
Gris#686868Aa5,6AAAa5,0AAAa3,524px+Aa1,3nonAa2,9nonAa3,0non
Magenta#AC115DAa7,0AAAAa6,3AAAa4,424px+·Aa2,3nonAa2,4non
Brun#5D3C10Aa9,9AAAAa8,9AAAAa6,2AAAa1,4nonAa1,6nonAa1,7non
Blanc#FFFFFF·Aa1,1nonAa1,6nonAa7,0AAAAa16,1AAAAa16,7AAA

03 · Rubriques

Une couleur par rubrique

Chaque rubrique du site a un trio de couleurs injecté par le CMS (Arc) en variables CSS : --section-color-primary, --section-color-primary-dark et --section-color-secondary. Elles colorent les en-têtes de chaînes, les liens de menu et les surtitres des teasers.

Belgique Économie International Planète Culture Débats Lifestyle Sports Régions Network

Belgique

Primaire blanc 2,5:1
Foncé
Secondaire
App (AA)
URLlalibre.be/belgique/

Économie

Primaire blanc 8,4:1
Foncé
Secondaire
App (AA)
URLlalibre.be/economie/

International

Primaire blanc 6,6:1
Foncé
Secondaire
App (AA)
URLlalibre.be/international/

Planète

Primaire blanc 3,3:1
Foncé
Secondaire
App (AA)
URLlalibre.be/planete/

Culture

Primaire blanc 3,5:1
Foncé
Secondaire
App (AA)
URLlalibre.be/culture/

Débats

Primaire blanc 3,0:1
Foncé
Secondaire
App (AA)
URLlalibre.be/debats/

Lifestyle

Primaire blanc 4,6:1
Foncé
Secondaire
App (AA)
URLlalibre.be/lifestyle/

Sports

Primaire blanc 2,4:1
Foncé
Secondaire
App (AA)
URLlalibre.be/sports/

Régions

Primaire blanc 2,6:1
Foncé
Secondaire
App (AA)
URLlalibre.be/regions/

Network · Partenaires

Primaire blanc 3,6:1
Foncé
Secondaire
App (AA)
URLlalibre.be/network/

Accessibilité. Sur le web, la plupart des couleurs de rubrique ne tiennent pas le ratio AA (4,5:1) avec du texte blanc : à réserver aux aplats décoratifs, filets et grands titres. L'app native utilise des versions corrigées, plus denses, qui passent l'AA. C'est la piste recommandée pour toute nouvelle interface.

Rubriques de l'app native

Tokens du design system de l'app (Figma, v1.0) : douze couleurs, dont deux propres à l'app (Sélection et Longs formats). Dans l'app, la rubrique Économie porte le nom Libre Éco et garde la couleur web #0548AA, déjà conforme AA. AA texte

Belgique#927035 · 4,6:1
International#0B57C7 · 6,6:1
Économie · Libre Éco#0548AA · 8,4:1
Planète#00846E · 4,6:1
Culture#D53C3C · 4,6:1
Sports#218625 · 4,7:1
Lifestyle#D13C6E · 4,6:1
Débats#757575 · 4,6:1
Régions#C55205 · 4,6:1
Network#137BBE · 4,6:1
Sélection#F7B500 · 8,2:1
Longs formats#752863 · 9,4:1

La rubrique colore la page

Dans une rubrique, le trio de couleurs remonte jusqu'au header : le bandeau prend la teinte foncée de la rubrique, et le lien actif du menu secondaire se remplit de la primaire. Exemple ci-dessous avec Économie.

  • Headerfond --section-color-primary-dark · logo blanc
  • Menu secondaireLibre Franklin 600 · 16 / 20 · padding .5 × .75rem · rayon .25rem
  • Lien actiffond --section-color-primary · texte blanc

Chaîne « déco »

Les chaînes mises en avant d'une rubrique (Libre ECO sur la home, par exemple) reçoivent un fond en dégradé radial, de la teinte foncée vers la primaire, coiffé d'un filet de 3 px dans la secondaire.

Libre ÉcoTout voir
CultureTout voir
PlanèteTout voir
background: radial-gradient(circle at 20% 30%, var(--section-color-primary-dark), var(--section-color-primary));
border-top: 3px solid var(--section-color-secondary);
padding: 0 48px;            /* titre : Manuale 800 · 30 / 40 · blanc */

04 · Typographie

Deux familles

Manuale pour les titres, Libre Franklin pour tout le reste. Deux polices libres (licence SIL Open Font License), servies en local par le site depuis /pf/resources/fonts/lalibre/. Ici, elles sont auto-hébergées en woff2 variable.

Manuale
abcdefghijklmnop · ABCDEFGHIJKLMN · 0123456789 · éèà眀!?
TitresGraisses en ligne : 600 · 800 · 800 italiqueRepli : Georgia, serifDessin : Omnibus-Type
Manuale ExtraBold
Titres d'articles, de pages, de chaînes et de modales (h1 à h6).
Manuale ExtraBold Italique
Citations, mises en exergue.
Manuale SemiBold
Titres de teasers dans les listes.
Libre Franklin
abcdefghijklmnop · ABCDEFGHIJKLMN · 0123456789 · éèà眀!?
Texte et interfaceGraisses en ligne : 400 · 500 · 600 · 700Repli : Helvetica Neue, ArialDessin : Impallari Type
Libre Franklin Bold
Titres de box (en magenta), mises en avant.
Libre Franklin SemiBold
Menus, boutons de navigation, surtitres.
Libre Franklin Medium
Graisse par défaut du body, chapôs.
Libre Franklin Regular
Textes secondaires, aides, légendes.

Rôles observés

Tailles réellement appliquées sur lalibre.be, relevées dans la feuille de style. L'échelle complète (mobile et desktop, 29 éléments) est dans le tableur du kit développeurs.

Titre de page rubrique
.ap-PageTitleManuale 800 · 2,3 rem / 2,5 rem
Titre de chaîne
.ap-Chain-titleManuale 800 · 30 / 40 px (27 / 38 en mobile)
Titre d'article (H1)
.ap-StoryTitle--textManuale 800 · 28 / 36 px, 32 / 40 dès 768 px
Titre de carte mise en avant
.ap-CardHero-titleManuale 700 · 21 / 32 px
Le titre d'un teaser tient sur deux ou trois lignes dans une liste d'articles
.ap-StoryListCard-titleManuale 600 · 18 / 22 px
Les plus lus
.ap-Box-titleLibre Franklin 700 · 21 / 22 px · magenta
Le chapô pose l'enjeu en deux phrases. Il est composé en Libre Franklin Medium, plus grand que le texte courant.
.ap-StoryChapoLibre Franklin 500 · 18 / 27 px, 21 / 32 dès 768 px
Le texte courant de l'article utilise la même taille que le chapô, en Libre Franklin Medium. Les liens passent en SemiBold.
.ap-Story-contentLibre Franklin 500 · 18 / 27 px, 21 / 32 dès 768 px
Menu · S'identifier
.ap-PrimaryMenu-buttonLibre Franklin 600 · 13 / 18 px

L'échelle des titres

Le composant .ap-Title du site définit six tailles, toutes en Manuale 800. C'est l'échelle de référence pour tout nouveau titre : on ne crée pas de taille entre deux paliers.

3xlL'Europe face à son budget30 / 40 · 1,33
2xlL'Europe face à son budget27 / 38 · 1,41
xlL'Europe face à son budget21 / 32 · 1,52
lgL'Europe face à son budget18 / 22 · 1,22
mdL'Europe face à son budget16 / 20 · 1,25
smL'Europe face à son budget13 / 18 · 1,38

.ap-Title--{sm…3xl} · Manuale 800 · taille / interlignage en px · ratio

Une page d'article

Les rôles typographiques mis ensemble, avec les vraies valeurs desktop (dès 768 px).

Belgique · Politique

Budget : ce que contient vraiment l'accord du conclave

Après trois nuits de négociations, le gouvernement a bouclé son budget. Voici les mesures qui toucheront directement les ménages.

Le texte courant tient sur une colonne d'environ 675 px. À 21 px de corps, une ligne contient une soixantaine de caractères, ce qui laisse l'œil revenir sans effort au début de la ligne suivante.

Chaque paragraphe est séparé du suivant par 1,5 rem. Les liens passent en SemiBold.

« Une citation se compose en Manuale ExtraBold italique. »
  • SurtitreLibre Franklin 600 · 11 / 20 · capitales · #686868
  • Titre (H1)Manuale 800 · 28 / 36 → 32 / 40 dès 768 px
  • ChapôLibre Franklin 500 · 18 / 27 → 21 / 32
  • AuteurLibre Franklin · 16 / 21
  • TexteLibre Franklin 500 · 18 / 27 → 21 / 32 · marge 1,5 rem
  • Bloc intégrémarge basse 2 rem, 1,5 rem dès 992 px
  • CitationManuale 800 italique · taille indicative 24 / 32 proposition

05 · Espacement et grille

Une échelle, pas des valeurs au hasard

Toutes les marges et paddings du site, relevés dans la feuille de style et classés par fréquence d'usage. Ils tombent sur une échelle de 4 px, avec un demi-pas à 2 px pour les détails.

--llb-space-0-52 px · .125remponctuel
--llb-space-14 px · .25remtrès fréquent
--llb-space-28 px · .5remtrès fréquent
--llb-space-312 px · .75remtrès fréquent
--llb-space-416 px · 1remtrès fréquent
--llb-space-520 px · 1.25remfréquent
--llb-space-624 px · 1.5remfréquent
--llb-space-832 px · 2remfréquent
--llb-space-1040 px · 2.5remponctuel
--llb-space-1248 px · 3remponctuel
--llb-space-1664 px · 4remponctuel

Points de rupture et conteneurs

480 768 992 1024 1200
  • Breakpoints480 · 768 · 992 · 1024 · 1200 px (min-width, mobile first)
  • Conteneur992 px (md) · 1120 px (lg)
  • Colonne article≈ 675 px · une soixantaine de caractères à 21 px
  • Bascule typo768 px : titres et texte d'article passent à la taille desktop
  • Bascule rythme992 px : marges de blocs resserrées, champs plus hauts

Rythme vertical

Titre de chaînemarge basse 1,25 rem (lg à 3xl), 0,75 rem (sm, md), 1,5 à 2 rem dès 768 px
24
Paragraphe.ap-StoryText · marge basse 1,5 rem
24
Paragraphe
32
Bloc intégré (image, vidéo, encadré).ap-StoryElement · 2 rem, 1,5 rem dès 992 px

06 · Formes et élévation

Rayons

Le site est presque droit : 0,25 rem partout (boutons, images, champs), la pilule pour les badges. Les rayons plus grands sont réservés aux éléments qui flottent.

0chaînes, aplats
.25rem · 4 pxboutons, images, champs
.5rem · 8 pxnotification
10 px basmenu principal
.925rem · ≈15 pxbloc « Lire aussi »
9999 pxbadges, pilules

Élévation

Six ombres relevées dans le CSS, rangées par altitude. Elles ont toutes deux couches ou une seule couche très diffuse, jamais une ombre dure et unique.

e0à plat, filet #E0E0E0
e1carte, teaser
e2bouton
e3bloc flottant, Lire aussi
e4panneau large
e5modale
  • e10 1px 1px rgba(0,0,0,.15), 0 2px 3px hsla(0,0%,40%,.12)
  • e20 1px 1px rgba(0,0,0,.22), 0 3px 4px hsla(0,0%,40%,.21)
  • e30 3px 10px rgba(68,5,36,.2)
  • e40 10px 20px rgba(30,30,30,.05)
  • e50 1px 15px rgba(0,0,0,.3)
  • Presséinset 0 2px 3px rgba(0,0,0,.5)
  • Focus0 0 0 3px rgba(172,17,93,.5)

Bordures

  • Filet1 px #E0E0E0 · listes, champs, cartes auteur
  • Contour1 px #BDBDBD · boutons secondaires, flancs du paywall
  • Accent3 px --section-color-secondary · haut des chaînes déco

07 · Iconographie

Icônes

Le site utilise Font Awesome Pro (licence payante : les fichiers ne sont pas redistribuables ici). Quatre pictogrammes sont propres à La Libre et se redessinent sans la bibliothèque.

Contenu abonnécarré 17 px · #F7B500 · lettre L
Vidéocercle magenta sur l'image
LiveDirect#DF0000 · point pulsé
Chevronfil d'Ariane, « Tout voir »

08 · Composants

Header

Un bandeau magenta de 59 px de haut minimum, coins bas arrondis à 10 px, logo blanc au centre. À droite, « S'identifier » et le bouton jaune S'abonner.

  • Bandeau#AC115D · min-height 59 px · rayon 0 0 10px 10px
  • S'identifierLibre Franklin 600 · 13 / 18 · blanc
  • S'abonnerLibre Franklin 600 · 16 / 18 · #F2C93D / #5D3C10 · rayon 4 px

Boutons

Manuale Medium 16 px, rayon 0,25 rem, padding 0,5 × 0,75 rem, transition 0,3 s. Le survol enfonce le bouton (ombre inset), le focus clavier dessine un halo magenta à 50 %. Les états sont forcés ci-dessous pour être comparés.

VarianteReposSurvolFocus
Primaire.ap-Button--primary
Marque.ap-Button--secondary · 18 px
Défaut.ap-Button · --lighter
Abonnement.ap-Button--pay
Abonnement arrondirayon 50 px
  • Primaire#262729 · texte blanc · survol #111 + inset
  • Marque#AC115D · Manuale 500 18 px · survol #930A4D + inset
  • Défautblanc · bordure #BDBDBD · survol fond #262729, texte blanc
  • Abonnement#F2C93D · texte #5D3C10 · survol #F7B500 + inset
  • Désactivénon relevé sur le site · opacité .5, curseur not-allowed proposition

Badges et étiquettes

Article offert Live Nouveau Contenu sponsorisé Exclu app Analyse Article réservé aux abonnés : Titre abonné
  • Offertpilule · #F7B500 / #5D3C10 · 13 px 600
  • Live#DF0000 · blanc · 12 px 600 capitales · point blanc pulsé
  • Nouveau#00FDC5 · texte graphite
  • Sponsor#E3E0E0 · texte graphite
  • Exclu apppilule magenta · texte blanc

Teasers

Le titre en Manuale porte toute la carte ; la métadonnée en dessous, en petites capitales grises, passe au second plan. Au survol, le titre devient magenta. Quatre formats coexistent : image au-dessus, titre en surimpression, petite image à droite pour les listes serrées, et titre seul pour les box et les fils.

Le grand format de la semaine tient en une phrase forte

Titre en surimpression, taille md

  • StandardManuale 600 · 18 / 22 · survol #AC115D
  • Image à droite.is-small · Manuale 600 · 16 / 20 · image flottante 140 × 93 (3:2), marge gauche 16 px, rayon 4 px · tags dessous · filet bas #E0E0E0
  • Titre seul.is-small sans image · Manuale 600 · 16 / 20 · ≈ 12 px sous le titre, filet #E0E0E0, 16 px avant le suivant · pas de tags
  • SurimpressionManuale 800 · blanc · md 16 / 20 ou 3xl 27 / 38
  • MétadonnéeLibre Franklin 600 · 11 / 20 · capitales · #686868 · séparée par un filet
  • Sponsortitre #114A70

Box et top 5

Box à bordure

Titre Libre Franklin 700 · 21 / 22 en magenta. La variante encadrée ajoute un filet #E0E0E0 et arrondit les coins du haut.

Navigation et auteur

Fil d'Ariane. Sur le site, les liens sont en #C6C6C6 13 px (1,7:1 sur blanc, sous le seuil AA). Recommandation : passer les liens en #686868 et garder la page courante en graphite. C'est ce que montre l'exemple ci-dessus. proposition

Rédaction La Libre Service Politique
  • Carte auteurnom Manuale 800 · 18 / 22 · rôle 13 px capitales #686868 · filet bas #E0E0E0

Blocs dans l'article

  • Lire aussifond #AC115D · rayon .925rem · ombre e3 · en-tête Manuale 800 25 / 36 blanc · icône jaune
  • Liste de liensblanc · filet #E0E0E0 · rayon .25rem · padding .75rem · étiquette magenta 14 / 20 · titre Manuale 27 / 38 magenta

Paywall

Le texte s'efface au-dessus d'un filet magenta, puis vient l'offre. Le paywall en ligne est un gabarit Piano ; ses couleurs restent celles de l'abonnement.

Le texte courant de l'article continue ici et s'efface progressivement pour laisser la place à l'offre d'abonnement, sans couper brutalement la lecture.

Cet article est réservé aux abonnés

[Offre du moment]

  • Ancien bloc.ap-Restricted · en-tête #F2C93D / #5D3C10 Manuale 21 / 32 · flancs #BDBDBD · pied #F2F2F2
  • Pianobadge L · carte d'offre · bouton jaune en capitales · fondu au-dessus d'un filet magenta

Champs de formulaire

  • Champ.ap-Input · filet #E0E0E0 · rayon .25rem · 18 / 22 · padding .5rem, .75rem dès 992 px
  • Focushalo 0 0 0 3px rgba(172,17,93,.5)
  • Erreur#C73C49 · bordure + message texte composé à partir des tokens

Notification

Article ajouté à votre liste de lecture
  • Toast#AC115D · rayon .5rem · blanc 700 13 / 18 · fixe en bas · max-width 20rem

Thème sombre

Le site propose un mode sombre : fond #1F1E1C, conteneurs noirs, texte #F1EDED, texte secondaire #D9D9D9.

Article offert Le teaser en mode sombre garde Manuale SemiBold

09 · Mouvement

Deux durées, une courbe

Le site anime presque tout en 0,3 s (38 occurrences dans la feuille de style), quelques micro-états en 0,15 s, avec la même courbe d'accélération. Survoler les cases pour comparer.

0,15 scouleur d'un lien, icône
0,3 sboutons, ombres, fonds
Pulsationpoint du badge LiveLive
  • Courbecubic-bezier(.4, 0, .2, 1)
  • Base.3s · --llb-duration
  • Rapide.15s · --llb-duration-fast
  • Réduit@media (prefers-reduced-motion: reduce) : pas de pulsation, transitions coupées

10 · Accessibilité

Ce qui passe, ce qui coince

PasseGraphite sur blanc (15:1), magenta sur blanc (7:1), brun sur jaune (6,2:1), blanc sur marine (16,2:1).
PasseFocus clavier visible sur les boutons : halo magenta de 3 px.
PasseRubriques de l'app native, toutes au-dessus de 4,5:1 avec du blanc, sauf Sélection (jaune), à utiliser avec du texte graphite.
CoinceLa plupart des primaires de rubrique web avec du texte blanc (Belgique 2,5:1, Sports 2,4:1). Réserver aux aplats et titres de plus de 24 px, ou passer aux couleurs app.
CoinceLiens du fil d'Ariane en #C6C6C6 (1,7:1). Passer en #686868 (5,6:1).
CoinceMagenta sur graphite ou sur marine : sous 3:1. Le logo y passe en blanc.
  • Cible tactile44 × 44 px minimum pour tout élément cliquable sur mobile proposition
  • Couleur seulejamais : badge abonné = L + texte masqué, erreur = couleur + message
  • Mouvementrespecter prefers-reduced-motion
  • Longueur de ligne45 à 75 caractères pour le texte courant

11 · Développeurs

Tokens prêts à brancher

L'essentiel en variables CSS. Le fichier complet (échelles, rubriques web et app, espacements, élévations, rayons, mouvement, thème sombre) et sa version JSON sont dans les téléchargements.

/* La Libre · tokens essentiels (v2) */
:root {
  --llb-magenta:   #AC115D;  /* = --llb-magenta-600 */
  --llb-marine:    #061E4D;  /* = --llb-marine-800 */
  --llb-graphite:  #262729;  /* = --llb-grey-800 */
  --llb-pay:       #F2C93D;
  --llb-font-title: "Manuale", Georgia, serif;
  --llb-font-base:  "Libre Franklin", "Helvetica Neue", Arial, sans-serif;
  --llb-space-2:  .5rem;   /* 8 px, la valeur la plus utilisée */
  --llb-space-4:  1rem;    /* 16 px */
  --llb-radius:   .25rem;
  --llb-shadow-2: 0 1px 1px rgba(0,0,0,.22), 0 3px 4px hsla(0,0%,40%,.21);
  --llb-ease:     cubic-bezier(.4,0,.2,1);
  --llb-container: 1120px;
}
  • Nommage--llb-{famille}-{palier} · ex. --llb-magenta-700 pour le survol
  • Rubriques--section-color-primary / -dark / -secondary (via Arc)
  • Préfixe site.ap-* (composants Arc, ex. .ap-Title--xl, .ap-Button--pay)
  • IcônesFont Awesome (Pro)
  • CMS / frontArc XP (PageBuilder Fusion)

12 · Téléchargements

Fichiers officiels

Le brandbook en PDF, le kit développeurs (Excel des valeurs, polices TTF et woff2, logos SVG et PNG, tokens), et les fichiers à l'unité.

D'où viennent ces valeurs. Couleurs, typographies, tailles, rayons et ombres sont relevés directement dans le code de production de lalibre.be (feuille styles.css et variables injectées par Arc), le 10 octobre 2026. Les rubriques app proviennent du design system Figma de l'app native. La zone de protection et les tailles minimales du logo sont validées par la direction artistique.