/* Imperial Health — design tokens
   Brand colors sampled from the official logo + imperialhealth.com.
   Type system follows the Vista reference: geometric sans for structure,
   a serif italic reserved for single accent words. */
:root {
  /* Brand */
  --navy-950: #00182c;
  --navy-900: #001f39;
  --navy-800: #00325b;
  --navy-700: #153a67;
  --navy-500: #4a6585;
  --taupe-800: #4f463e;
  --taupe-700: #685c53;
  --taupe-500: #7c6b56;
  --sand-300: #c9baa4;
  --sand-200: #ddd3c4;
  --stone-200: #dde1da;
  --stone-100: #e9e4de;
  --paper: #f2efe9;
  --white: #ffffff;
  --ink: #16191e;
  --ink-soft: #4b4f57;
  --ink-mute: #7b7f86;
  --alert: #b4532a;

  /* Semantic */
  --color-bg: var(--paper);
  --color-surface: var(--white);
  --color-text: var(--ink);
  --color-text-soft: var(--ink-soft);
  --color-accent: var(--taupe-700);
  --color-primary: var(--navy-800);
  --color-line: rgba(22, 25, 30, 0.14);
  --color-line-light: rgba(255, 255, 255, 0.22);

  /* Type */
  --font-sans: "Mulish", "Avenir Next", "Avenir", system-ui, sans-serif;
  --font-serif: "Libre Baskerville", Georgia, serif;

  --text-xs: 0.78rem;
  --text-sm: 0.9rem;
  --text-base: clamp(1rem, 0.96rem + 0.2vw, 1.0625rem);
  --text-lg: clamp(1.125rem, 1.05rem + 0.35vw, 1.3rem);
  --text-xl: clamp(1.4rem, 1.2rem + 0.9vw, 2rem);
  --text-2xl: clamp(1.9rem, 1.4rem + 2vw, 3.125rem);
  --text-3xl: clamp(2.4rem, 1.6rem + 3.4vw, 4.5rem);
  --text-hero: clamp(2.8rem, 1.6rem + 5vw, 6rem);
  --text-giant: clamp(6rem, 2rem + 16vw, 18rem);

  /* Space */
  --gutter: clamp(1rem, 0.5rem + 2.5vw, 2.5rem);
  --space-section: clamp(5rem, 3rem + 7vw, 10rem);
  --container: 1320px;

  /* Shape */
  --radius-sm: 0.5rem;
  --radius-md: 0.9rem;
  --radius-lg: 1.5rem;
  --radius-pill: 999px;
  --radius-hero: clamp(1.5rem, 0.5rem + 3.5vw, 3.5rem);

  /* Motion */
  --ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --duration-fast: 200ms;
  --duration-normal: 450ms;
  --duration-slow: 1100ms;

  --header-h: 84px;
}
