/*
 * Typographie DOWNS — Figma Typographie (node 345:551).
 * Valeurs = styles de texte réellement appliqués dans les maquettes (H2 35/40, H5 13/24, S1 18/24),
 * qui diffèrent légèrement du tableau affiché dans la frame (H2 35/44, H5 13/20, S1 18/28).
 */

body {
	font-family: var(--font-body);
	font-size: var(--text-size);
	line-height: var(--text-lh);
	color: var(--color-text);
	background: var(--color-bg);
}

h1, h2, h3, h4, h5,
.h1, .h2, .h3, .h4, .h5 {
	font-family: var(--font-heading);
	color: inherit;
}

h1, .h1 { font-size: var(--h1-size); line-height: var(--h1-lh); font-weight: 800; }
h2, .h2 { font-size: var(--h2-size); line-height: var(--h2-lh); font-weight: 800; }
h3, .h3 { font-size: var(--h3-size); line-height: var(--h3-lh); font-weight: 700; }
h4, .h4 { font-size: var(--h4-size); line-height: var(--h4-lh); font-weight: 700; }
h5, .h5 { font-size: var(--h5-size); line-height: var(--h5-lh); font-weight: 700; }

/* Titre bicolore "Titre H2" (795:11087) : ligne 1 ExtraBold noire, ligne 2 Regular rouge */
.title-duo {
	font-family: var(--font-heading);
	font-size: var(--h2-size);
	line-height: var(--h2-duo-lh);
	font-weight: 800;
}

.title-duo__main { display: block; }
.title-duo--light .title-duo__main { color: var(--color-white); }

.title-duo__accent {
	display: block;
	font-weight: 400;
	color: var(--color-red);
}

/* Mot en rouge dans un titre (saisie *mot*) */
.text-accent { color: var(--color-red); }

/* Sous-titres */
.text-s1 { font-family: var(--font-heading); font-size: var(--subtitle-size); line-height: var(--subtitle-lh); font-weight: 700; }
.text-s2 { font-size: 16px; line-height: 24px; font-weight: 400; }

/* Paragraphe d'introduction Montserrat Regular 18/24 (homepage, non stylé dans Figma) */
.text-lead { font-family: var(--font-heading); font-size: var(--lead-size); line-height: var(--lead-lh); font-weight: 400; }

/* Corps */
.text-b1 { font-size: var(--text-size); line-height: var(--text-lh); font-weight: 400; }
.text-b2 { font-size: var(--text-size); line-height: var(--text-lh); font-weight: 700; }
.text-b3 { font-size: var(--text-sm-size); line-height: var(--text-sm-lh); font-weight: 400; }
.text-b4 { font-size: var(--text-sm-size); line-height: var(--text-sm-lh); font-weight: 700; }

/* Légendes */
.text-c1 { font-size: var(--caption-size); line-height: var(--caption-lh); font-weight: 400; }
.text-c2 { font-size: var(--caption-size); line-height: var(--caption-lh); font-weight: 800; text-transform: uppercase; }
.text-c3 { font-size: var(--caption-xs-size); line-height: var(--caption-xs-lh); font-weight: 500; }
.text-label { font-size: var(--caption-size); line-height: var(--caption-lh); font-weight: 500; text-transform: uppercase; }

/* Texte riche (wysiwyg) : style de lien prévu dès le départ */
.richtext > * + * { margin-top: 1em; }
.richtext h2, .richtext h3, .richtext h4 { margin-top: 1.5em; }
.richtext ul, .richtext ol { padding-left: 1.25em; }
.richtext a { color: var(--color-link); text-decoration: underline; }
.richtext a:hover { text-decoration: none; }
.richtext strong { font-weight: 700; }
