/* Was generated from site.config.json + the template's tokens.css. NOT ANY MORE,
   and the instruction that stood here — "do not hand-edit, change theme.colors in
   the config and regenerate" — was followed at your peril: the generator was
   retired unused on 30 Aug 2026 and nothing regenerates anything. Editing
   theme.colors now changes no pixel on the site.

   HAND-MAINTAINED. Edit this file. theme.colors in site.config.json is the record
   of intent, and the two are in step today with ONE exception worth knowing:
   theme.colors declares 17 values and 16 are here. footerMuted (#9AA6A9) is not —
   it is a local --muted override inside the .site-footer block in page.css:626,
   because the footer re-points --muted on its dark band. Anyone grepping tokens.css
   for it will not find it. Keep the two in step by hand, or let the config go and
   delete theme.colors. */
/* ============================================================
   Design tokens — the only file you should need to touch to
   re-skin the site. Everything downstream reads these.

   Derived values use color-mix() so a palette change ripples
   through borders, shadows and hover states automatically:
   set --text and the border ramp follows.
   ============================================================ */

:root {
  color-scheme: light;

  /* --- Brand ------------------------------------------------ */
  --brand: #287C8B;
  --accent: #287C8B;

  /* --- Surfaces & text -------------------------------------- */
  --bg: #FFFFFF;
  --surface: #F5F8F9;
  --surface-strong: #FFFFFF;
  --logo-bg: #FFFFFF;
  --text: #0A1417;
  --muted: #4A5659;

  /* --- Derived from --text ---------------------------------- */
  --border: color-mix(in srgb, var(--text) 12%, transparent);
  --border-strong: color-mix(in srgb, var(--text) 20%, transparent);
  --shadow-soft: 0 1px 2px rgb(0 0 0 / 0.05);
  --shadow-raise: 0 4px 14px rgb(0 0 0 / 0.07);

  /* --- Primary button --------------------------------------- */
  --button-bg: #287C8B;
  --button-bg-hover: #236E7B;
  --button-fg: #FFFFFF;
  --button-border: color-mix(in srgb, var(--button-bg) 90%, transparent);
  --button-shadow: 0 6px 16px color-mix(in srgb, var(--button-bg) 14%, transparent);

  /* --- Outline button --------------------------------------- */
  --outline-border: color-mix(in srgb, var(--text) 28%, transparent);
  --outline-border-hover: color-mix(in srgb, var(--text) 70%, transparent);
  --outline-bg-hover: color-mix(in srgb, var(--text) 6%, transparent);
  --outline-fg-hover: var(--text);
  --outline-shadow: inset 0 1px 0 rgb(255 255 255 / 0.18);
  --outline-shadow-hover: inset 0 1px 0 rgb(255 255 255 / 0.28);

  /* --- Links ------------------------------------------------ */
  --link-color: #287C8B;
  --link-hover: #1F606B;

  /* --- Form feedback ---------------------------------------- */
  --success: #3C8A61;
  --danger: #B84A48;

  /* --- Type ------------------------------------------------- */
  --font-display: "Wix Madefor Display", system-ui, sans-serif;
  --font-body: "Inter", system-ui, sans-serif;

  /* --- 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;

  /* --- Shape ------------------------------------------------ */
  --content-max: 75rem;
  --radius-xs: 0.5rem;
  --radius-sm: 0.75rem;
  --radius-md: 1rem;
  --radius-lg: 1.5rem;
  --radius-xl: 2rem;
  --radius-pill: 999px;

  /* --- Motion ----------------------------------------------- */
  --transition-fast: 160ms ease;
  --transition: 240ms ease;

  /* Measured at runtime by scripts/main.js — sticky nav height. */
  --nav-offset: 0px;
}
