  /* ---------- Inter local (ajouté par toi) ---------- */
/* Regular / 400 */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/static/fonts/inter/inter-v20-latin-regular.woff2') format('woff2');
}

/* Italic (regular) */
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('/static/fonts/inter/inter-v20-latin-italic.woff2') format('woff2');
}

/* 100 / Thin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100;
  font-display: swap;
  src: url('/static/fonts/inter/inter-v20-latin-100.woff2') format('woff2');
}
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 100;
  font-display: swap;
  src: url('/static/fonts/inter/inter-v20-latin-100italic.woff2') format('woff2');
}

/* 200 / ExtraLight */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 200;
  font-display: swap;
  src: url('/static/fonts/inter/inter-v20-latin-200.woff2') format('woff2');
}
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 200;
  font-display: swap;
  src: url('/static/fonts/inter/inter-v20-latin-200italic.woff2') format('woff2');
}

/* 300 / Light */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('/static/fonts/inter/inter-v20-latin-300.woff2') format('woff2');
}
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url('/static/fonts/inter/inter-v20-latin-300italic.woff2') format('woff2');
}

/* 500 / Medium */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/static/fonts/inter/inter-v20-latin-500.woff2') format('woff2');
}
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url('/static/fonts/inter/inter-v20-latin-500italic.woff2') format('woff2');
}

/* 600 / SemiBold */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/static/fonts/inter/inter-v20-latin-600.woff2') format('woff2');
}
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url('/static/fonts/inter/inter-v20-latin-600italic.woff2') format('woff2');
}

/* 700 / Bold */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/static/fonts/inter/inter-v20-latin-700.woff2') format('woff2');
}
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url('/static/fonts/inter/inter-v20-latin-700italic.woff2') format('woff2');
}

/* 800 / ExtraBold */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url('/static/fonts/inter/inter-v20-latin-800.woff2') format('woff2');
}
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 800;
  font-display: swap;
  src: url('/static/fonts/inter/inter-v20-latin-800italic.woff2') format('woff2');
}

/* 900 / Black */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url('/static/fonts/inter/inter-v20-latin-900.woff2') format('woff2');
}
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 900;
  font-display: swap;
  src: url('/static/fonts/inter/inter-v20-latin-900italic.woff2') format('woff2');
}

/* règle globale (si tu veux forcer Inter par défaut) */
html, body {
  font-family: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}
/* ---------- fin Inter local ---------- */
  @keyframes zoom { 0%{transform:scale(1)} 100%{transform:scale(1.06)} }
  .animate-zoom-slow { animation: zoom 30s linear infinite alternate; }
  .animate-subtitle-reveal,
  .animate-text-reveal,
  .animate-button-reveal { animation: title-reveal 0.9s cubic-bezier(.22,1,.36,1) forwards; }
  @keyframes title-reveal { to { transform: translateY(0); opacity: 1; } }

  /* Ripple: keep lightweight. Respect prefers-reduced-motion. */
  .cta-btn { position: relative; overflow: hidden; }
  .cta-btn .ripple { position: absolute; transform: translate(-50%, -50%); width: 8px; height: 8px; background: rgba(255,255,255,0.22); border-radius: 999px; pointer-events: none; transition: transform 0.5s ease, opacity 0.6s ease; will-change: transform, opacity; }
  .cta-btn.ripple-animate .ripple { transform: scale(20); opacity: 0; transition: transform 0.6s cubic-bezier(.2,.8,.2,1), opacity 0.6s; }

  /* Reduced-motion preference */
  @media (prefers-reduced-motion: reduce) { .animate-zoom-slow, .animate-subtitle-reveal, .animate-text-reveal, .animate-button-reveal { animation: none !important; } }

  /* Small performance friendly focus styles (avoid large box-shadows) */
  .focus-visible\:ring-4 { box-shadow: 0 0 0 4px rgba(79,110,69,0.18); }