/* ==================================================================
   Digital Ace — design tokens
   ================================================================== */
:root {
  /* Brand */
  --navy: #061b35;
  --navy-deep: #041326;
  --navy-700: #0b2748;
  --navy-600: #12355f;
  --red: #d50924;
  --red-accent: #ef233c;
  --red-soft: #fde8eb;
  --cyan: #49d5f5;
  --cyan-deep: #0e9fc4;
  --cyan-soft: #e3f8fd;
  --violet: #7c6cf2;
  --violet-soft: #efedff;
  --green: #12b76a;
  --green-soft: #e3f8ee;
  --amber: #f79009;
  --amber-soft: #fef3e2;

  /* Neutrals */
  --text: #101828;
  --text-2: #475467;
  --text-3: #667085;
  --bg: #ffffff;
  --bg-soft: #f8fafc;
  --bg-tint: #f2f6fb;
  --border: #e5eaf0;
  --border-strong: #d3dbe5;
  --white: #ffffff;
  --on-dark: #e8eef7;
  --on-dark-2: #a9b8cc;

  /* Typography */
  --font-head: 'Plus Jakarta Sans', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  --font-body: 'Inter', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  --fs-xs: 0.75rem;
  --fs-sm: 0.875rem;
  --fs-base: 1rem;
  --fs-md: 1.0625rem;
  --fs-lg: clamp(1.0625rem, 0.98rem + 0.35vw, 1.25rem);
  --fs-h4: clamp(1.0625rem, 1rem + 0.3vw, 1.25rem);
  --fs-h3: clamp(1.25rem, 1.1rem + 0.6vw, 1.5rem);
  --fs-h2: clamp(1.75rem, 1.35rem + 1.7vw, 2.75rem);
  --fs-h1: clamp(2.125rem, 1.45rem + 3vw, 4rem);
  --fs-display: clamp(2.25rem, 1.4rem + 3.6vw, 4.5rem);

  /* Spacing */
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.5rem;
  --space-6: 2rem;
  --space-7: 3rem;
  --space-8: 4rem;
  --section-y: clamp(4rem, 2.6rem + 5vw, 7.5rem);
  --gutter: clamp(1rem, 0.5rem + 2.2vw, 2rem);
  --container: 1320px;

  /* Shape & depth */
  --r-sm: 10px;
  --r-md: 14px;
  --r-lg: 20px;
  --r-xl: 28px;
  --r-pill: 999px;
  --shadow-xs: 0 1px 2px rgba(16, 24, 40, 0.05);
  --shadow-sm: 0 1px 3px rgba(16, 24, 40, 0.06), 0 1px 2px rgba(16, 24, 40, 0.04);
  --shadow-md: 0 12px 24px -8px rgba(16, 24, 40, 0.1), 0 4px 8px -4px rgba(16, 24, 40, 0.05);
  --shadow-lg: 0 24px 48px -16px rgba(6, 27, 53, 0.18), 0 8px 16px -8px rgba(6, 27, 53, 0.08);
  --shadow-xl: 0 40px 80px -24px rgba(4, 19, 38, 0.45);
  --ring: 0 0 0 3px rgba(73, 213, 245, 0.55);

  /* Motion */
  --ease: cubic-bezier(0.2, 0.7, 0.2, 1);
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --t-fast: 160ms;
  --t-med: 280ms;
  --t-slow: 700ms;

  --header-h: 76px;
}
