/* ============================================================================
   InstantMD token bridge
   ----------------------------------------------------------------------------
   Loaded AFTER style.css. Re-points the purchased theme's variable names
   (static/theme/_variables.css) and Bootstrap's :root variables at the tokens
   in tokens.css, so every existing template inherits the new palette, fonts
   and radii before any markup is touched. Remove entries here as templates
   move onto the macro library and stop using the old names.
   ========================================================================== */
:root {
  /* Bootstrap 5 */
  --bs-font-sans-serif: var(--font-body);
  --bs-body-font-family: var(--font-body);
  --bs-body-color: var(--color-text-body);
  --bs-body-bg: var(--color-bg-page);
  --bs-heading-color: var(--color-text-heading);
  --bs-link-color: var(--color-text-link);
  --bs-link-hover-color: var(--primitive-navy-900);
  --bs-primary: var(--primitive-blue-600);
  --bs-primary-rgb: var(--primitive-blue-600-rgb);
  --bs-secondary: var(--primitive-navy-900);
  --bs-secondary-rgb: var(--primitive-navy-900-rgb);
  --bs-danger: var(--primitive-red-700);
  --bs-danger-rgb: var(--primitive-red-700-rgb);
  --bs-dark: var(--primitive-navy-900);
  --bs-dark-rgb: var(--primitive-navy-900-rgb);
  --bs-light: var(--primitive-grey-50);
  --bs-border-color: var(--color-border-default);
  --bs-border-radius: var(--radius-sm);
  --bs-border-radius-lg: var(--radius-lg);
  --bs-border-radius-xl: var(--radius-xl);
  --bs-border-radius-pill: var(--radius-pill);
  --bs-secondary-bg: var(--color-surface-subtle);
  --bs-tertiary-bg: var(--color-surface-subtle);

  /* Theme palette (theme/_variables.css) → tokens */
  --primary: var(--primitive-blue-600);
  --secondary: var(--primitive-navy-900);
  --blue-50: var(--primitive-grey-50);     /* bg-blue-50 sections become the grey-50 alternate band */
  --blue-100: var(--primitive-grey-50);
  --blue-200: var(--primitive-mist-300);
  --blue-300: var(--primitive-blue-300);
  --blue-400: var(--primitive-blue-300);
  --blue-500: var(--primitive-blue-600);
  --blue-600: var(--primitive-blue-600);
  --blue-700: var(--primitive-navy-900);
  --blue-800: var(--primitive-navy-900);
  --blue-900: var(--primitive-navy-900);
  --blue-1000: var(--primitive-navy-900);
  --blue-1100: var(--primitive-navy-900);
  --grey-50: var(--primitive-grey-50);
  --grey-100: var(--primitive-grey-50);
  --grey-200: var(--primitive-grey-200);
  --grey-300: var(--primitive-grey-300);
  --grey-400: var(--primitive-grey-300);
  --grey-500: var(--primitive-charcoal-500);
  --grey-600: var(--primitive-charcoal-700);   /* .text-grey-600 = body copy in the templates */
  --grey-700: var(--primitive-charcoal-700);
  --grey-800: var(--primitive-navy-900);
  --grey-900: var(--primitive-navy-900);       /* .text-grey-900 = headings */
  --grey-1000: var(--primitive-navy-900);
  --negative: var(--primitive-red-700-rgb);
  --informative: var(--primitive-blue-600-rgb);
  --font-family-primary: var(--font-body);
}

/* Element bridge: the theme uses one family everywhere; the design uses
   Poppins for headings, buttons and labels and Source Sans 3 for body. */
body {
  font-family: var(--font-body);
  font-weight: var(--weight-regular);
  color: var(--color-text-body);
  -webkit-font-smoothing: antialiased;
}
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6, .display-lg-1 {
  font-family: var(--font-heading);
  font-weight: var(--weight-semibold);
  color: var(--color-text-heading);
  line-height: var(--leading-heading);
}
.btn, button, input, select, textarea {
  font-family: var(--font-body);
}
.btn-cta, .btn-cta .btn-cta-title {
  font-family: var(--font-heading);
  font-weight: var(--weight-regular);
}
a { color: var(--color-text-link); }
a:hover, a:focus { color: var(--primitive-navy-900); }
:focus-visible:not(.imd-input__control):not(.imd-option__input) { outline: none; box-shadow: var(--focus-ring); }
::selection { background: rgba(var(--primitive-blue-600-rgb), 0.15); }
