/* =========================================================================
   Myndeo — Réinitialisation légère + valeurs par défaut des éléments
   ========================================================================= */
* { box-sizing: border-box; }

html, body {
  margin: 0;
  padding: 0;
  background: var(--bg);
}

body {
  color: var(--ink);
  font-family: var(--font-body);
  font-size: 16px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

::selection { background: rgba(124, 77, 255, .35); }

h1, h2, h3, h4 {
  font-family: var(--font-head);
  color: var(--ink);
  margin: 0;
}

p { margin: 0; }

a { color: inherit; }

img { max-width: 100%; }

button { font-family: inherit; }

:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(124, 77, 255, .30);
  border-radius: 6px;
}

/* Ancrages : compense la nav sticky lors des sauts #id */
[id] { scroll-margin-top: 96px; }

/* Animations d'ambiance (halos) */
@keyframes floaty { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-18px); } }
@keyframes pulseGlow { 0%, 100% { opacity: .55; } 50% { opacity: .9; } }

/* Conteneur centré standard */
.wrap { max-width: var(--wrap); margin: 0 auto; padding-left: 24px; padding-right: 24px; }

/* Utilitaires génériques réutilisés par les gabarits de collection */
.eyebrow {
  font-size: 13px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--accent);
  font-weight: 700;
}
.section-title {
  font-family: var(--font-head);
  font-weight: 700;
  font-size: 42px;
  letter-spacing: -.025em;
  line-height: 1.08;
  color: var(--ink);
  margin: 14px 0 0;
}
.lead {
  color: var(--text);
  font-size: 17px;
  line-height: 1.6;
}
.text-accent { color: var(--accent); }
