Couleurs
Les verts Grinn, des neutres chauds, et jamais d’aplat.
Les jetons
Onze valeurs, lues en tête de grinn.css. Chacune a un emploi écrit sur la trame ; un jeton qu’on ne sait pas employer est un jeton qui dérive.
- --grinn #98D1CB Le vert. Le carré allumé, le surlignage, le bord de l’étiquette, les cellules des bandes, la lueur sous le pointeur, le carré des listes. Jamais du texte.
- --grinn-deep #367972 Le vert profond. Le texte de l’étiquette, les numéros, le prix du suivi, le fond du bouton au survol, l’anneau de focus, la barre de lecture, le rail courant.
- --grinn-light #E9F4EA Le vert clair : l’arrivée du dégradé des carrés de bandes et de cellules, le fond d’une carte d’offre au survol et d’une offre allumée sur le premier écran de l’accueil, la cellule allumée du point fort d’une page de cas.
- --color-grinn-mid #60B8AF Le vert moyen, sans alias court (la trame l’emploie sous ce nom) : un carré sur trois des bandes, des carrés de faits et de cellules, le carré des étiquettes de section, les traits d’attache du premier écran de l’accueil, et le départ des dégradés (mêlé à 55 % au pâle dans les angles).
- --color-grinn-pale #F5FAF5 La cellule pâle (--pale dans le bloc .tr). Le fond de l’étiquette, la cellule de la scène, la tête de section en cellule, le pied, la carte au survol, le code des appels, la fiche d’une page de cas, le badge des cas.
- --ink #1C1917 L’encre. Les titres, le corps, le bouton plein, les chiffres, la citation, les faits ; une seule cellule pleine, celle de l’appel de la page Réalisations.
- --ink-2 #57534E L’encre seconde. Le chapô, le corps de tête, le texte des cartes, les annotations, les étiquettes de champ, le rail.
- --ink-3 #6F6862 L’encre troisième. Le fil d’Ariane, les légendes des chiffres, le nom d’offre dans une carte, la bordure des champs.
- --line #98D1CB Le trait, en vert Grinn sur la trame depuis le 12 octobre (#D6D3D1, gris chaud, ailleurs). Le trait. Les deux rails, la ligne de section, les cellules, la bordure du bouton au trait, de l’annotation et de la carte de citation.
- --surface #FFFFFF Le blanc. Le fond de la trame, de l’en-tête, du formulaire, de l’annotation, de la carte de citation, et le texte du bouton plein.
- --photo #F5FAF5 Le vert pâle des réserves sur la trame (gris chaud #F2F0EC avant le 12 octobre) : la photo attendue, le logo et le portrait d’une citation.
<ul class="tr-grille sys-jetons" data-lignes>
<Jeton nom="--grinn" valeur="#98D1CB" emploi="Le carré allumé, le surlignage, le bord de l’étiquette." />
</ul> Jamais d’aplat
Décision de JB : pas de section sombre, pas de bandeau vert. Le vert est un trait, une cellule allumée, un surlignage. La cellule pâle, dans une grille, est la seule surface colorée tolérée.
- Emploi
- Une cellule pâle dans une grille : la cellule de la scène, la tête de section en cellule, la cellule allumée, le pied, une carte au survol.
- Moment
- Quand une cellule doit se distinguer de ses voisines sans sortir du plan : elle reste délimitée par le même trait pointillé.
- Jamais
- Une section entière en vert ou en encre, un bandeau, un dégradé qui remplit toute une cellule. Le vert #98D1CB vibre en grand aplat, et un fond sombre casse le plan ; le dégradé reste ramassé dans un angle.
Le chef de projet
Votre interlocuteur unique, du premier échange au suivi.
Le design UX/UI
Les parcours et les écrans, pensés pour être utiles.
La stratégie
Ce qu’il faut construire, pour qui, et ce que ça doit rapporter.
<Grille classe="tr-cas">
<Cellule><Etiquette>Vous reprenez la main</Etiquette></Cellule>
<Cellule pale><Etiquette>Vous nous le confiez</Etiquette></Cellule>
</Grille> Les pages des cas, refaites le 12 octobre, ont deux surfaces pleines, et c’est voulu : la cellule allumée du point fort, en vert clair (--grinn-light), d’un rail à l’autre, et la cellule d’appel de la page Réalisations, sur l’encre, validée par JB sur la maquette. Toutes deux restent des cellules posées sur la trame ; aucune section n’est peinte. La vitrine d’un cas est une image : sa matière, son voile et ses cadres n’en font pas une surface de la page.
Où va le vert
Chaque emploi du vert dans le bloc .tr de grinn.css. Depuis le 12 octobre, la trame suit la direction « Les verts en relief », choisie par JB, curseur un peu baissé : aucune teinte nouvelle, toute la gamme des verts Grinn et le dégradé du site, le noir réservé au texte, aux titres de section et au bouton principal. Rien d’autre n’est vert : si une règle verte manque ici, elle n’existe pas.
| Classe | Zone | Valeur |
|---|---|---|
| --line | tous les filets de la trame : rails, cellules, pointillés, bordures | le vert Grinn au lieu du gris chaud, sur .tr, .tr-hdr et .tr-pied (les verts en relief, 12 octobre) |
| --photo, --papier | les réserves de photo | fond --color-grinn-pale, millimétré en vert profond dilué (9 % et 4,5 %) |
| .tr h1 .tr-ligne:nth-of-type(2) | la seconde ligne du titre d’ouverture | texte --grinn-deep : l’encre, puis la marque |
| --degrade-angle | le dégradé ramassé dans un angle | 205°, du vert moyen mêlé à 55 % au pâle, éteint à 48 % : une cellule des engagements, et le dessin d’un en-tête de page quand il n’a pas de schéma v2 (aucun aujourd’hui) ; depuis le 13 octobre, plus derrière un schéma v2 (premier écran de l’accueil, en-têtes des pages intérieures), choix à valider par JB ; plus dans la section IA de l’accueil, à la demande de JB (fond clair) : sa règle est retirée de grinn.css |
| .tr-ia__dessin | la cellule du dessin de la section IA (accueil) | Cellule pale : --pale, uni, sans dégradé depuis le 13 octobre ; le texte à côté sur le blanc, sans aplat ; dans la cellule, le vert n’est plus que celui du schéma (le flux, la validation), des annotations (bord --line, trait --grinn-deep) et de l’étape allumée (tr-etape) |
| :nth-child(n of …) | les cellules pâles en alternance | --pale sur une carte d’offre sur deux, deux rôles en diagonale, la colonne du milieu du suivi, une case vide du mur |
| .tr-etq | l’étiquette de section | bord 1 px --grinn, texte --grinn-deep, fond --pale ; un carré de 6 px en vert moyen devant le libellé |
| .tr-surligne | le passage surligné d’un titre | fond --grinn, l’encre par-dessus |
| .tr-carre | le carré devant un fait | 10 × 10 px : vert moyen, vert profond, puis --grinn |
| .tr-cel--allume i | les cinq carrés de la cellule allumée | --grinn ; le premier, le troisième et le cinquième en --grinn-deep ; le quatrième en vert moyen |
| .tr-bande i | les cellules des bandes | --grinn, un sur trois en vert moyen ; tr-bande__d en --grinn-deep ; tr-bande__p en dégradé du vert moyen au vert clair |
| .tr-cellules i, .tr-pied__cellules i | les cellules de la page contact, de la candidature et du pied | 47 × 47 px, --grinn, --grinn-deep, vert moyen ou dégradé |
| .tr-puce--vert | l’annotation soulignée | pastille pleine : fond --grinn, bord --grinn-deep, encre |
| .tr-puce::after | le trait d’attache des annotations | 1 px, --grinn-deep |
| .tr-une__puces .tr-puce.is-allumee | le tour des annotations | à l’en-tête de /offres/, une annotation s’allume à son tour : fond --grinn, bord --grinn-deep, encre (trame.ts, partie 9) |
| .tr-demo__offre.is-allumee | une offre allumée de la démonstration (accueil) | au tour, au survol, au focus : la case en --grinn-light ; le nom en pastille, fond --grinn, bord --grinn-deep, encre ; au survol et au focus, « Voir l’offre » en --grinn-deep |
| .tr-demo__trait, .tr-demo__port, .tr-demo__cible | les traits d’attache de la démonstration | vert moyen : le trait à 75 %, le carré côté case blanc bordé de vert moyen, le carré côté scène plein ; tout en --grinn-deep quand l’offre est allumée |
| .tr-demo__halo | le halo sur l’objet nommé (anciennes scènes) | --grinn en multiply, invisible, puis à .45 quand l’offre est allumée ; plus tracé sur une illustration v2, donc nulle part aujourd’hui |
| .tr-demo__voisins, .tr-demo__flux | l’anneau de la scène hero | les pointillés en --grinn, les carrés qui y circulent en --grinn-deep |
| .tr .tr-scene | une ancienne scène peinte (aucune en service depuis le 13 octobre) | saturate(1.3) contrast(1.03) : les verts du dessin un peu plus denses, le blanc reste blanc ; pas sur une illustration v2 (.tr-scene--v2 : filter none), dont les verts sont déjà ceux de la charte |
| .tr-scene--v2 | les illustrations | leurs couleurs sont écrites dans le SVG, pas dans grinn.css : le blanc et le gris « stone » de la charte (#1C1917, #57534E, #A8A29E, #E7E5E4, #F5F5F4), plus quelques gris neutres sortis du modèle ; le vert seulement sur ce qui est actif, en vert moyen #60B8AF et en vert profond #367972 ; dans l’animation, le vert moyen respire jusqu’à #98D1CB, et les nœuds des liaisons s’allument tour à tour en #367972 |
| .tr-eng__n | le numéro d’un engagement ou d’une étape | texte --grinn-deep |
| .tr-suivi__prix | le prix d’une colonne du suivi | texte --grinn-deep, Outfit 800 |
| .tr .btn::before | le bouton plein au survol | fond --grinn-deep qui monte en 236 ms ; le bouton au trait monte --pale |
| .tr .btn:hover | la bordure du bouton plein au survol | --grinn-deep |
| :focus-visible | l’anneau de focus sur .tr, .tr-hdr, .tr-pied | outline-color --grinn-deep |
| .tr-carte::before | la lueur sous le pointeur | --grinn à 38 %, cercle de 280 px |
| tr-etape | l’annotation de la section IA, à son tour | fond --grinn, bord --grinn-deep, encre, pendant 28 % du cycle |
| .tr-fil [aria-current], .tr-rail a[aria-current] | la page courante du fil et du rail | texte --grinn-deep |
| .tr-rail__titre | le titre d’un groupe du rail | texte --grinn-deep |
| .tr-hdr nav a[aria-current], .tr-prose a, .tr-note .lk | les soulignements | text-decoration-color --grinn-deep |
| .tr-faq__plus | la croix d’une question | deux traits de 2 px en --grinn-deep |
| .tr-prose ul li::marker | le carré des listes | ■ en --grinn, à 0,7 em |
| .hdr__progres | la barre de lecture sous l’en-tête | 2 px, --grinn-deep |
| .sys-point | le point final des titres du design system | texte --grinn-deep |
| .tr-dire__carte | la carte de citation | aucun vert : bord --line, encre ; au survol, fond --pale et bord --ink-3 |
| .tr-vit | la vitrine d’un cas | le voile : une lueur du vert profond à 35 % qui monte du bas ; le carré des puces en --grinn-deep ; l’écran vide de la réserve en --color-grinn-pale |
| .tr-fiche | la fiche d’une page de cas | fond --pale ; les carrés de « ce qu’on a fait » en --grinn-deep ; la stack au trait --grinn, texte --grinn-deep ; le lien d’offre souligné de --grinn-deep |
| .tr-fort | la cellule allumée du point fort | fond --grinn-light, d’un rail à l’autre ; l’étiquette sur blanc ; la flèche entre deux étapes en --grinn-deep |
| .tr-cc--lien, .tr-murl__case--lien, .tr-suivant | une carte de cas, une case du mur, le cas suivant | fond --pale au survol et au focus ; l’anneau de focus --grinn-deep |
| .tr-badge | le badge des cas qui ont leur page (page Réalisations) | fond --pale, filet --grinn, texte --grinn-deep : la voix de l’étiquette |
| .tr-cc__appel-btn | le bouton de la cellule d’appel, sur l’encre | fond --grinn, texte à l’encre ; au survol, il se remplit de blanc ; anneau de focus --grinn |
Contrastes
Les ratios sont calculés dans cette page, par la luminance relative de WCAG 2, sur les paires que la trame emploie vraiment. Seuils : 4,5:1 pour tout texte, 3:1 pour le grand texte.
| Nuance | Paire | Ratio | Verdict | Emploi |
|---|---|---|---|---|
| Encre sur blanc | 17,49:1 | AA, tout texte | Les titres, le corps, les chiffres, la citation, les faits. | |
| Encre seconde sur blanc | 7,63:1 | AA, tout texte | Le chapô, le texte des cartes, les annotations, le rail. | |
| Encre troisième sur blanc | 5,48:1 | AA, tout texte | Le fil d’Ariane, les légendes des chiffres, le nom d’offre dans une carte. | |
| Vert profond sur blanc | 5,08:1 | AA, tout texte | La seconde ligne du titre d’ouverture, les numéros, le prix du suivi, le titre du rail. | |
| Vert profond sur la cellule pâle | 4,81:1 | AA, tout texte | L’étiquette de section, et toute étiquette posée sur une cellule pâle ; le badge des cas de la page Réalisations. | |
| Encre sur le vert | 10,26:1 | AA, tout texte | Le surlignage d’un titre, l’annotation soulignée, l’annotation allumée du tour de /offres/ et de la scène IA, le nom d’une offre allumée dans la démonstration de l’accueil, le bouton de la cellule d’appel. | |
| Blanc sur l’encre | 17,49:1 | AA, tout texte | Le bouton plein ; le titre de la cellule d’appel de la page Réalisations. | |
| Gris clair sur l’encre | 11,74:1 | AA, tout texte | La phrase de la cellule d’appel (--on-dark). | |
| Blanc sur le vert profond | 5,08:1 | AA, tout texte | Le bouton plein au survol. | |
| Encre sur la cellule pâle | 16,55:1 | AA, tout texte | Une carte d’offre sur deux, deux rôles, la colonne du milieu du suivi, la tête de section en cellule, le pied. | |
| Encre seconde sur la cellule pâle | 7,22:1 | AA, tout texte | Le texte des cartes d’offre et des rôles posés sur une cellule pâle. | |
| Encre troisième sur la cellule pâle | 5,19:1 | AA, tout texte | Le nom d’offre dans une carte au survol, les colonnes du pied, les clés de la fiche d’une page de cas. | |
| Encre troisième sur la réserve | 5,19:1 | AA, tout texte | Le texte d’une réserve de photo, désormais en vert pâle. | |
| Encre troisième sur le vert clair | 4,85:1 | AA, tout texte | « Voir l’offre » (10,5 px) dans une offre que le tour allume, sur le premier écran de l’accueil. | |
| Encre sur le vert clair | 15,48:1 | AA, tout texte | « Voir l’offre » (10,5 px) au survol et au focus d’une offre de la démonstration de l’accueil ; le titre du point fort d’une page de cas et le texte de ses étapes. | |
| Encre seconde sur le vert clair | 6,75:1 | AA, tout texte | Le texte du point fort d’une page de cas et le nom de ses étapes. |
Toutes les paires employées passent 4,5:1. Les plus justes sont vert profond sur la cellule pâle (4,81:1) et encre troisième sur le vert clair (4,85:1) : elles tiennent, sans marge. Le vert #98D1CB seul sur blanc fait 1,70:1 : il ne porte jamais de texte, et c’est pour cela.
Les surfaces vertes qui ne portent pas de texte (le carré, les cellules des bandes, la lueur) n’ont pas de seuil : elles sont décoratives, et marquées comme telles.
RègleLe vert est un trait, une cellule allumée, un surlignage ou un dégradé ramassé dans un angle ; une surface colorée reste une cellule, jamais une section, et chaque paire de texte doit passer 4,5:1.