/* NCMB Design Tokens → map to Bricks Theme Styles / Global Classes */
:root {
  /* Brand — teal primary + blue accent */
  --color-primary: #1d9da9;
  --color-primary-light: #4db8c2;
  --color-primary-dark: #17848e;
  --color-primary-deep: #0b1f3a;
  --color-accent: #046bd2;
  --color-accent-dark: #045cb4;
  --color-accent-soft: color-mix(in srgb, #046bd2 12%, #ffffff);
  --color-ink: #0f172a;
  --color-slate: #334155;
  --color-muted: #64748b;
  --color-border: #e2e8f0;
  --color-surface: #f3f6fa;
  --color-surface-2: #e8eef5;
  --color-white: #ffffff;
  --color-overlay: rgba(8, 24, 48, 0.62);
  --color-overlay-strong: rgba(8, 24, 48, 0.78);
  --color-rule: #d8e0ea;

  /* Type */
  --font-display: "Source Serif 4", Georgia, "Times New Roman", serif;
  --font-body: "DM Sans", system-ui, sans-serif;
  --fs-xs: 0.75rem;
  --fs-sm: 0.875rem;
  --fs-base: 1rem;
  --fs-md: 1.125rem;
  --fs-lg: 1.25rem;
  --fs-xl: 1.5rem;
  --fs-2xl: clamp(1.6rem, 2.2vw, 2rem);
  --fs-3xl: clamp(2rem, 3.4vw, 2.75rem);
  --fs-hero: clamp(2.35rem, 5vw, 3.5rem);
  --lh-tight: 1.15;
  --lh-snug: 1.35;
  --lh-body: 1.65;

  /* Space */
  --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;
  --space-9: 6rem;
  --space-10: 8rem;

  /* Layout — soft rounded geometry */
  --container: 72rem;
  --container-narrow: 46rem;
  --header-h: 4.5rem;
  --radius-sm: 0.375rem;
  --radius: 0.75rem;
  --radius-lg: 1rem;
  --shadow-sm: 0 2px 8px rgba(15, 23, 42, 0.06);
  --shadow: 0 14px 40px rgba(15, 23, 42, 0.12);
  --shadow-menu:
    0 4px 12px rgba(15, 23, 42, 0.04),
    0 16px 40px rgba(15, 23, 42, 0.08),
    0 28px 64px rgba(11, 31, 58, 0.12);
  --ease: cubic-bezier(0.22, 1, 0.36, 1);
  --duration: 0.45s;
}
