/** Base minimale V2 — chargée uniquement sur les templates migrés. */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body.site-v2 {
  margin: 0;
  min-width: 0;
  overflow-x: clip;
  font-family: var(--ui-font-body-family);
  font-size: var(--ui-font-body);
  line-height: var(--ui-line-body);
  color: var(--ui-text-dark);
  background: var(--ui-white);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
body.site-v2 img,
body.site-v2 svg,
body.site-v2 video { display: block; max-width: 100%; }
body.site-v2 button,
body.site-v2 input,
body.site-v2 textarea,
body.site-v2 select { font: inherit; }
body.site-v2 a { color: inherit; }
body.site-v2 h1,
body.site-v2 h2,
body.site-v2 h3,
body.site-v2 h4,
body.site-v2 p { margin-top: 0; }
body.site-v2 h1,
body.site-v2 h2,
body.site-v2 h3,
body.site-v2 h4 {
  font-family: var(--ui-font-heading);
  letter-spacing: var(--ui-letter-heading);
}
body.site-v2 :focus-visible { outline: 2px solid var(--ui-secondary); outline-offset: 4px; }
body.site-v2 [hidden] { display: none !important; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  body.site-v2 *, body.site-v2 *::before, body.site-v2 *::after {
    scroll-behavior: auto !important;
  }
}
