/* Maison & Déclic — base : reset léger, typographie, utilitaires. */

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-padding-top: 6rem; }
body {
	margin: 0;
	background: var(--md-offwhite);
	color: var(--md-ink);
	font: 400 var(--md-fs-body)/1.6 var(--md-font-sans);
	-webkit-font-smoothing: antialiased;
}
h1, h2, h3, h4, p, figure, blockquote { margin: 0; }
h1, h2 { font-family: var(--md-font-serif); font-weight: 500; line-height: 1.15; }
h3, h4 { font-family: var(--md-font-sans); font-weight: 600; line-height: 1.3; }
a { color: inherit; }
img { display: block; max-width: 100%; height: auto; }
button, input, select, textarea { font: inherit; color: inherit; }
:focus-visible { outline: 2px solid var(--md-copper); outline-offset: 3px; }

@media (prefers-reduced-motion: no-preference) {
	html { scroll-behavior: smooth; }
}
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { transition-duration: 0ms !important; animation-duration: 0ms !important; }
}

/* Utilitaires */
.md-wrap { width: 100%; max-width: var(--md-container); margin-inline: auto; padding-inline: var(--md-pad); }
.md-visually-hidden { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.md-skip-link { position: absolute; left: var(--md-pad); top: -5rem; z-index: 100; padding: 0.75rem 1rem; background: var(--md-copper-btn); color: #fff; text-decoration: none; font-weight: 600; border-radius: var(--md-radius); }
.md-skip-link:focus { top: 0.75rem; }
.md-icon { width: 1.25em; height: 1.25em; flex: none; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.md-eyebrow { font-size: 0.6875rem; font-weight: 600; letter-spacing: 0.16em; text-transform: uppercase; color: var(--md-copper-btn); }
.md-photo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }

/* Gabarit de repli */
.md-page { padding-block: var(--md-section); }
.md-page h1 { font-size: var(--md-fs-h2); margin-bottom: 1.5rem; }
.md-page article + article { margin-top: 2.5rem; }
