/* ================================================================
   EXPLORA INNOVATION — DESIGN TOKENS
   Source unique de verite pour couleurs, fonts, reset, animations.
   ================================================================ */

/* === FONT — Outfit (Google Fonts) remplace Avenir Next LT Pro === */
/* Import via <link> dans le HTML. Fallback local Avenir si dispo. */

/* === PALETTE === */
:root {
  --black: #171816;
  --black-light: #1e1f1d;
  --gray: #C5C6C4;
  --white: #FFFFFF;
  --white-dark: #FCFCFC;
  --orange: #FF803E;
  --blue: #15A8FE;
  --green: #68E88D;
  --rose: #FC1FA2;
}

/* === RESET === */
*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  font-family: 'Outfit', 'Avenir Next LT Pro', sans-serif;
  font-weight: 300;
  font-size: 16px;
  background: var(--black);
  color: var(--white);
  overflow-x: hidden;
  line-height: 1.7;
}
h1, h2, h3, h4, h5 { font-family: 'Ubuntu', sans-serif; }
a { text-decoration: none; color: inherit; }
img { max-width: 100%; display: block; }
.hand { font-family: 'Caveat', cursive; }
.container { max-width: 1200px; margin: 0 auto; padding: 0 40px; }

/* === REGISTERED MARK === */
.reg { font-size: 0.9em; vertical-align: super; opacity: 1; color: var(--white); margin-left: 0.05em; }

/* === KEYFRAMES === */
@keyframes fadeUp {
  from { opacity: 0; transform: translateY(22px); }
  to { opacity: 1; transform: translateY(0); }
}
/* Alias utilise par les pages internes */
@keyframes fu {
  from { opacity: 0; transform: translateY(20px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes marquee {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}
@property --cta-angle {
  syntax: '<angle>';
  initial-value: 0deg;
  inherits: false;
}
@keyframes ctaRotate {
  to { --cta-angle: 360deg; }
}

/* === RESPONSIVE CONTAINER === */
@media (max-width: 900px) {
  .container { padding: 0 24px; }
}
