/* ============================================
   CoColour Life — Design System Variables
   ============================================ */

:root {
  /* Colours */
  --black: #0a0a0a;
  --charcoal: #141414;
  --dark-grey: #1a1a1a;
  --mid-grey: #666;
  --light-grey: #999;
  --border-grey: #e5e5e5;
  --bg-subtle: #f8f8f8;
  --bg-white: #fefefe;
  --white: #ffffff;

  /* Rainbow accent palette */
  --teal: #00c9a7;
  --blue: #4da6ff;
  --yellow: #ffd93d;
  --red: #ff6b6b;
  --purple: #c44dff;
  --orange: #ff9f43;

  /* Gradient */
  --gradient-rainbow: linear-gradient(135deg, #00c9a7, #4da6ff, #ffd93d, #ff6b6b, #c44dff);
  --gradient-rainbow-text: linear-gradient(135deg, #00c9a7 0%, #4da6ff 25%, #ffd93d 50%, #ff6b6b 75%, #c44dff 100%);
  --gradient-subtle: linear-gradient(135deg, rgba(0,201,167,0.08), rgba(77,166,255,0.08), rgba(255,217,61,0.04));

  /* Typography */
  --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-mono: 'SF Mono', 'Fira Code', 'Fira Mono', 'Roboto Mono', monospace;

  /* Font sizes — fluid */
  --text-xs: clamp(0.7rem, 0.65rem + 0.25vw, 0.8rem);
  --text-sm: clamp(0.8rem, 0.75rem + 0.25vw, 0.9rem);
  --text-base: clamp(0.95rem, 0.9rem + 0.25vw, 1.05rem);
  --text-lg: clamp(1.1rem, 1rem + 0.5vw, 1.3rem);
  --text-xl: clamp(1.3rem, 1.1rem + 1vw, 1.75rem);
  --text-2xl: clamp(1.75rem, 1.5rem + 1.25vw, 2.5rem);
  --text-3xl: clamp(2.25rem, 1.75rem + 2.5vw, 3.75rem);
  --text-4xl: clamp(2.75rem, 2rem + 3.75vw, 5rem);

  /* Font weights */
  --weight-light: 300;
  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;

  /* Spacing */
  --space-xs: 0.25rem;
  --space-sm: 0.5rem;
  --space-md: 1rem;
  --space-lg: 1.5rem;
  --space-xl: 2rem;
  --space-2xl: 3rem;
  --space-3xl: 4rem;
  --space-4xl: 6rem;
  --space-5xl: 8rem;
  --space-section: clamp(5rem, 4rem + 5vw, 9rem);

  /* Layout */
  --container-max: 1200px;
  --container-narrow: 800px;
  --container-pad: clamp(1.25rem, 1rem + 2vw, 3rem);

  /* Border radius */
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 16px;
  --radius-xl: 24px;
  --radius-full: 9999px;

  /* Shadows */
  --shadow-sm: 0 1px 2px rgba(0,0,0,0.04);
  --shadow-md: 0 4px 12px rgba(0,0,0,0.06);
  --shadow-lg: 0 8px 30px rgba(0,0,0,0.08);
  --shadow-xl: 0 16px 50px rgba(0,0,0,0.1);

  /* Transitions */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
  --duration-fast: 200ms;
  --duration-normal: 350ms;
  --duration-slow: 600ms;

  /* Z-index scale */
  --z-base: 1;
  --z-nav: 100;
  --z-mobile-menu: 90;
  --z-landing: 1000;
}
