/**
 * Socle typographique — polices hébergées en local.
 *
 * Bricolage Grotesque (titres) · Archivo (textes, navigation) ·
 * Petit Formal Script (prénom personnalisé uniquement).
 *
 * Remplace Inter, qui était déclarée en titres ET en corps alors que le site
 * ne la servait pas : `google_fonts_cdn` est vide côté Flatsome, donc le
 * navigateur retombait sur la sans-serif système.
 *
 * Hébergement local volontaire : aucune requête vers fonts.gstatic.com
 * (RGPD + une connexion tierce en moins dans le chemin critique).
 * Sous-ensembles latin et latin-ext seulement.
 */

@font-face {
	font-family: 'Bricolage Grotesque';
	font-style: normal;
	font-weight: 400 800;
	font-display: swap;
	src: url('../fonts/bricolage-grotesque-var-latin-ext.woff2') format('woff2');
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
	font-family: 'Bricolage Grotesque';
	font-style: normal;
	font-weight: 400 800;
	font-display: swap;
	src: url('../fonts/bricolage-grotesque-var-latin.woff2') format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: 'Archivo';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url('../fonts/archivo-400-latin-ext.woff2') format('woff2');
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
	font-family: 'Archivo';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url('../fonts/archivo-400-latin.woff2') format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: 'Archivo';
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url('../fonts/archivo-500-latin-ext.woff2') format('woff2');
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
	font-family: 'Archivo';
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url('../fonts/archivo-500-latin.woff2') format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: 'Archivo';
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url('../fonts/archivo-700-latin-ext.woff2') format('woff2');
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
	font-family: 'Archivo';
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url('../fonts/archivo-700-latin.woff2') format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: 'Petit Formal Script';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url('../fonts/petit-formal-script-400-latin-ext.woff2') format('woff2');
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
	font-family: 'Petit Formal Script';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url('../fonts/petit-formal-script-400-latin.woff2') format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


/* ---------------------------------------------------------------------------
 * Échelle typographique
 * ------------------------------------------------------------------------- */

:root {
	--maelia-font-display: 'Bricolage Grotesque', system-ui, sans-serif;
	--maelia-font-text:    'Archivo', system-ui, sans-serif;
	--maelia-font-script:  'Petit Formal Script', cursive;
}

body,
.nav > li > a,
button,
input,
select,
textarea {
	font-family: var(--maelia-font-text);
}

h1, h2, h3, h4, h5, h6,
.heading-font,
.button,
.widget-title {
	font-family: var(--maelia-font-display);
	letter-spacing: -0.015em;
	text-wrap: balance;
}

h1 { font-weight: 800; line-height: 1.04; }
h2 { font-weight: 800; line-height: 1.08; }
h3, h4 { font-weight: 600; line-height: 1.15; }

/* Les titres de section étaient en petites capitales espacées, un tic daté
   qui aplatissait la hiérarchie. On revient à des bas-de-casse qui portent
   leur poids. */
.section-title span,
.section-title b + span {
	font-family: var(--maelia-font-display);
	font-weight: 800;
	letter-spacing: -0.015em;
	text-transform: none;
}

/* Mesure de lecture : au-delà de ~75 caractères par ligne, l'œil décroche. */
.entry-content p,
.woocommerce-product-details__short-description p {
	max-width: 72ch;
}

/* Le prénom personnalisé est un geste, pas une saisie administrative.
   La personnalisation est thermocollée, jamais brodée. */
.maelia-prenom,
.ppom-field-text input[type='text'] {
	font-family: var(--maelia-font-script);
	font-size: 1.6em;
	line-height: 1.5;
}
