/*! © 2026 Ouibel.com · Conçu et développé par Ouibel · https://ouibel.com */
@font-face { font-family: 'Big Shoulders Display'; font-style: normal; font-weight: 400; font-display: swap; src: url('/fonts/big-shoulders-display-400.woff2') format('woff2'); }
@font-face { font-family: 'Big Shoulders Display'; font-style: normal; font-weight: 500; font-display: swap; src: url('/fonts/big-shoulders-display-500.woff2') format('woff2'); }
@font-face { font-family: 'Big Shoulders Display'; font-style: normal; font-weight: 600; font-display: swap; src: url('/fonts/big-shoulders-display-600.woff2') format('woff2'); }
@font-face { font-family: 'Big Shoulders Display'; font-style: normal; font-weight: 700; font-display: swap; src: url('/fonts/big-shoulders-display-700.woff2') format('woff2'); }
@font-face { font-family: 'Big Shoulders Display'; font-style: normal; font-weight: 800; font-display: swap; src: url('/fonts/big-shoulders-display-800.woff2') format('woff2'); }
@font-face { font-family: 'Bricolage Grotesque'; font-style: normal; font-weight: 400; font-display: swap; src: url('/fonts/bricolage-grotesque-400.woff2') format('woff2'); }
@font-face { font-family: 'Bricolage Grotesque'; font-style: normal; font-weight: 500; font-display: swap; src: url('/fonts/bricolage-grotesque-500.woff2') format('woff2'); }
@font-face { font-family: 'Bricolage Grotesque'; font-style: normal; font-weight: 600; font-display: swap; src: url('/fonts/bricolage-grotesque-600.woff2') format('woff2'); }
@font-face { font-family: 'Bricolage Grotesque'; font-style: normal; font-weight: 700; font-display: swap; src: url('/fonts/bricolage-grotesque-700.woff2') format('woff2'); }
@font-face { font-family: 'Bricolage Grotesque'; font-style: normal; font-weight: 800; font-display: swap; src: url('/fonts/bricolage-grotesque-800.woff2') format('woff2'); }
:root {
  --background: oklch(98.9% 0.011 140.1);
  --foreground: oklch(16.6% 0.006 140.1);
  --surface: oklch(100.0% 0.001 140.1);
  --surface-elevated: oklch(100.0% 0.001 140.1);
  --primary: oklch(49.8% 0.157 140.1);
  --primary-foreground: oklch(98.5% 0.010 140.1);
  --secondary: oklch(32.8% 0.060 172.1);
  --secondary-foreground: oklch(98.5% 0.010 172.1);
  --accent: oklch(71.5% 0.151 290.1);
  --accent-foreground: oklch(18.0% 0.030 290.1);
  --muted: oklch(95.4% 0.015 140.1);
  --muted-foreground: oklch(48.0% 0.016 140.1);
  --border: oklch(89.9% 0.017 140.1);
  --input: oklch(89.9% 0.017 140.1);
  --ring: oklch(57.8% 0.182 140.1);
  --success: oklch(50.0% 0.130 150.0);
  --warning: oklch(56.5% 0.121 70.0);
  --error: oklch(52.0% 0.150 25.0);

  --font-display: 'Big Shoulders Display', Impact, "Arial Narrow", sans-serif;
  --font-heading: 'Big Shoulders Display', Impact, "Arial Narrow", sans-serif;
  --font-body: 'Bricolage Grotesque', system-ui, sans-serif;
  --weight-heading: 400;
  --tracking-heading: 0.01em;
  --case-heading: none;
  --leading-body: 1.65;

  --text-display: clamp(4.96rem, 9vw, 8.00rem);
  --text-h1: clamp(3.53rem, 7vw, 5.69rem);
  --text-h2: clamp(2.52rem, 5vw, 4.06rem);
  --text-h3: clamp(1.28rem, 2.6vw, 2.06rem);
  --text-body-lg: 1.254rem;
  --text-body: 1.063rem;
  --text-small: 0.930rem;
  --text-caption: 0.797rem;

  --radius-xs: 2px;
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --radius-xl: 18px;
  --radius-button: 8px;

  --space-section: clamp(4rem, 9vw, 7.5rem);
  --space-container: 1200px;
  --space-gutter: clamp(1.25rem, 4vw, 2.5rem);

  --shadow-sm: 2px 2px 0 var(--foreground);
  --shadow-md: 4px 4px 0 var(--foreground);
  --shadow-lg: 6px 6px 0 var(--foreground);
  --shadow-premium: 8px 8px 0 var(--foreground);

  --duration: 450ms;
  --ease: cubic-bezier(.16,1,.3,1);
  color-scheme: light;
}
