/* ==========================================================================
   typography.css — règles typographiques de base. Aucun composant ici.
   ========================================================================== */

html {
	font-family: var(--font-sans);
	font-size: 100%;
	line-height: var(--lh-base);
}

body {
	background-color: var(--color-bg);
	color: var(--color-text);
	font-size: var(--fs-base);
	font-weight: var(--fw-regular);
}

h1, h2, h3, h4, h5, h6 {
	font-family: var(--font-display);
	font-weight: var(--fw-semibold);
	line-height: var(--lh-tight);
	letter-spacing: var(--ls-tight);
	color: var(--color-text);
}

h1 { font-size: var(--fs-5xl); font-weight: var(--fw-bold); }
h2 { font-size: var(--fs-4xl); }
h3 { font-size: var(--fs-3xl); }
h4 { font-size: var(--fs-2xl); }
h5 { font-size: var(--fs-xl); }
h6 { font-size: var(--fs-lg); text-transform: uppercase; letter-spacing: var(--ls-wide); }

p {
	font-size: var(--fs-base);
	line-height: var(--lh-relaxed);
	color: var(--color-text);
}

p + p { margin-top: var(--space-sm); }

a {
	color: var(--color-accent);
	transition: color var(--duration-fast) var(--ease-out);
}

a:hover,
a:focus {
	color: var(--color-accent-light);
}

strong, b { font-weight: var(--fw-semibold); }
em, i { font-style: italic; }

small { font-size: var(--fs-sm); }

code, kbd, pre, samp {
	font-family: var(--font-mono);
	font-size: 0.95em;
}

blockquote {
	margin: var(--space-md) 0;
	padding-left: var(--space-md);
	border-left: 3px solid var(--color-accent);
	color: var(--color-text-muted);
	font-style: italic;
}

hr {
	margin: var(--space-xl) 0;
	border: 0;
	border-top: 1px solid var(--color-border);
}
