/* Fontes */
@font-face {
  font-family: "Inter";
  src: url("../assets/fonts/Inter/Inter-VariableFont_opsz,wght.ttf") format("truetype-variations");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Inter";
  src: url("../assets/fonts/Inter/Inter-Italic-VariableFont_opsz,wght.ttf") format("truetype-variations");
  font-weight: 100 900;
  font-style: italic;
  font-display: swap;
}

/* Reset minimal */
*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html,
body {
  height: 100%;
}

ul {
  list-style: none;
}

a {
  color: inherit;
  text-decoration: none;
}

/* Variables */
:root {
  /* Couleurs */
  --color-bg: #000000;
  --color-fg: #f5f5f7;
  --color-divider: #424245;
  --color-muted: #86868b;

  /* Typographie */
  --font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;

  /* Tailles — fixes pour l'instant. Les variations responsive seront ajoutées via media queries. */
  --fs-name: 3.5rem;      /* 56px */
  --fs-tagline: 1.5rem;   /* 24px */
  --fs-nav: 1.75rem;      /* 28px */
  --fs-clients: 1.125rem; /* 18px */
  --fs-about: 1.25rem;    /* 20px */

  /* Espacements */
  --space-xs: 0.25rem;
  --space-sm: 0.5rem;
  --space-md: 1rem;
  --space-lg: 2rem;
  --space-xl: 3rem;

  /* Safe area : zone réservée en haut (et en bas, pour symétrie de centrage)
     pour que le contenu de .nav ne touche jamais le titre. Inclut la marge
     supérieure du titre + la hauteur du h1 + la même marge en dessous. */
  --safe-top: 8rem;

  /* Animations */
  --ease-out: cubic-bezier(0.22, 1, 0.36, 1);
  --ease-inout: cubic-bezier(0.5, 0, 0.15, 1);
  --duration-fast: 200ms;
  --duration-base: 500ms;
}

/* Base */
body {
  background-color: var(--color-bg);
  color: var(--color-fg);
  font-family: var(--font-sans);
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}
