/* ==========================================================================
   Sotumec — Design tokens
   Ne pas ajouter de couleur hors de cette liste ailleurs dans le CSS.
   ========================================================================== */

:root {
  /* Couleurs primaires */
  --sotumec-blue: #0062A3;
  --sotumec-blue-dark: #004573;
  --sotumec-blue-tint: #EBF3F8;
  --sotumec-taupe: #766A63;
  --sotumec-taupe-dark: #574D48;
  --sotumec-taupe-tint: #F5F3F1;
  --sotumec-ink: #242729;
  --sotumec-border: #E0DCDA;
  --sotumec-white: #FFFFFF;

  /* Sémantiques */
  --color-bg: var(--sotumec-white);
  --color-bg-alt: var(--sotumec-blue-tint);
  --color-bg-warm: var(--sotumec-taupe-tint);
  --color-text: var(--sotumec-ink);
  --color-text-muted: #5A6166;
  --color-primary: var(--sotumec-blue);
  --color-primary-hover: var(--sotumec-blue-dark);
  --color-secondary: var(--sotumec-taupe);
  --color-secondary-hover: var(--sotumec-taupe-dark);
  --color-border: var(--sotumec-border);

  /* Typographie */
  --font-sans: 'Manrope', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --fs-h1: clamp(2.5rem, 5vw, 4rem);
  --fs-h2: clamp(2rem, 3.5vw, 2.75rem);
  --fs-h3: clamp(1.5rem, 2.5vw, 1.875rem);
  --fs-h4: 1.25rem;
  --fs-body: 1rem;
  --fs-small: 0.875rem;
  --fs-lead: 1.125rem;
  --fw-light: 300;
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semi: 600;
  --fw-bold: 700;
  --fw-extrabold: 800;
  --lh-tight: 1.15;
  --lh-normal: 1.55;
  --lh-loose: 1.75;
  --tracking-tight: -0.02em;
  --tracking-normal: 0;
  --tracking-wide: 0.05em;

  /* Spacing (base 4px) */
  --sp-1: 0.25rem;
  --sp-2: 0.5rem;
  --sp-3: 0.75rem;
  --sp-4: 1rem;
  /* Corrigé (bug critique) : --sp-5 manquait de la échelle alors qu'il est
     utilisé à 20 endroits du CSS (grilles/formulaires) -> gap/margin/padding
     invalides silencieusement ignorés par le navigateur = blocs "collés"
     partout (grille Nos activités, formulaires, secteurs, certifications...). */
  --sp-5: 1.25rem;
  --sp-6: 1.5rem;
  --sp-8: 2rem;
  --sp-10: 2.5rem;
  --sp-12: 3rem;
  --sp-16: 4rem;
  --sp-20: 5rem;
  --sp-24: 6rem;
  --sp-32: 8rem;

  /* Radius */
  --radius-sm: 4px;
  --radius: 8px;
  --radius-lg: 16px;
  --radius-full: 999px;

  /* Shadows */
  --shadow-sm: 0 1px 2px rgba(36, 39, 41, 0.06);
  --shadow: 0 4px 12px rgba(36, 39, 41, 0.08);
  --shadow-lg: 0 20px 40px rgba(36, 39, 41, 0.12);

  /* Transitions */
  --ease: cubic-bezier(0.22, 0.61, 0.36, 1);
  --dur-fast: 180ms;
  --dur: 320ms;
  --dur-slow: 600ms;

  /* Layout */
  --container-max: 1280px;
  --container-narrow: 960px;
  --header-height: 88px;

  /* ==========================================================================
     v2 — Refonte visuelle Accueil (Étape 2)
     ========================================================================== */

  /* Typographie renforcée */
  --fs-display: clamp(3rem, 7vw, 6rem);       /* Titres hero XXL */
  --fs-hero-eyebrow: 0.8125rem;                /* Petit eyebrow uppercase */
  --tracking-display: -0.035em;                /* Serrage typo display */
  --tracking-eyebrow: 0.18em;                  /* Espacement eyebrow */

  /* Textures / ambiance industrielle */
  --texture-grain: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.14 0 0 0 0 0.15 0 0 0 0 0.16 0 0 0 0.05 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  --gradient-hero-overlay: linear-gradient(120deg, rgba(36,39,41,0.92) 0%, rgba(36,39,41,0.65) 50%, rgba(0,98,163,0.35) 100%);
  --gradient-dark: linear-gradient(160deg, #1a1c1e 0%, #242729 50%, #0a1a2a 100%);
  --gradient-blue-anthracite: linear-gradient(135deg, #0062A3 0%, #003b62 100%);

  /* Numéros "watermark" */
  --watermark-color: rgba(0, 98, 163, 0.06);

  /* Nouvelles ombres */
  --shadow-xl: 0 40px 80px rgba(36,39,41,0.15);
  --shadow-inset: inset 0 0 0 1px rgba(255,255,255,0.08);
}
