/* ==========================================================================
   Highmark Lighting & Signage — Design tokens
   Seed palette pulled from the existing wordmark: charcoal + single red
   accent dot + light-gray secondary type. Modernized, not reinvented.
   ========================================================================== */

:root {
  /* ---- Brand color ---- */
  --hm-black: #131417;
  --hm-charcoal: #1d1f23;
  --hm-charcoal-700: #2a2d33;
  --hm-charcoal-600: #3a3e46;
  --hm-steel-900: #0f1720;
  --hm-red: #e2231a;
  --hm-red-600: #c41c14;
  --hm-red-100: #fdeceb;
  --hm-white: #ffffff;
  --hm-paper: #eceae5;
  --hm-gray-100: #e4e6e8;
  --hm-gray-300: #cdd1d6;
  --hm-gray-500: #8b919a;
  /* darkened from #6a6f78 so muted body copy still clears WCAG AA (4.5:1)
     against the darker paper/cream section backgrounds */
  --hm-gray-600: #60656d;
  --hm-gray-800: #34383f;

  /* ---- Semantic ---- */
  --color-bg: var(--hm-white);
  --color-bg-alt: var(--hm-paper);
  --color-bg-inverse: var(--hm-charcoal);
  --color-bg-inverse-deep: var(--hm-steel-900);
  --color-text: var(--hm-black);
  --color-text-muted: var(--hm-gray-600);
  --color-text-inverse: var(--hm-white);
  --color-text-inverse-muted: var(--hm-gray-300);
  --color-accent: var(--hm-red);
  --color-accent-strong: var(--hm-red-600);
  --color-border: var(--hm-gray-100);
  --color-border-inverse: rgba(255, 255, 255, 0.14);

  /* ---- Type ---- */
  --font-display: "Archivo", "Arial Narrow", Arial, sans-serif;
  --font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  /* Accent serif for mixed-heading treatments: pairs a soft, ink-trap serif
     against the bold grotesque display face for a single emphasized word or
     phrase per heading. Use sparingly — see .font-accent. */
  --font-accent: "Fraunces", Georgia, serif;

  --fs-2xs: 0.75rem;
  --fs-xs: 0.8125rem;
  --fs-sm: 0.9375rem;
  --fs-base: 1.0625rem;
  --fs-lg: 1.25rem;
  --fs-xl: 1.5rem;
  --fs-2xl: 2rem;
  --fs-3xl: 2.75rem;
  --fs-4xl: 3.75rem;
  --fs-5xl: 5rem;

  --lh-tight: 1.08;
  --lh-snug: 1.25;
  --lh-normal: 1.55;

  --tracking-tight: -0.02em;
  --tracking-wide: 0.08em;
  --tracking-wider: 0.14em;

  /* ---- Space (8px base) ---- */
  --space-1: 0.5rem;
  --space-2: 0.75rem;
  --space-3: 1rem;
  --space-4: 1.5rem;
  --space-5: 2rem;
  --space-6: 3rem;
  --space-7: 4.5rem;
  --space-8: 6.5rem;
  --space-9: 9rem;

  /* ---- Layout ---- */
  --container-max: 1470px;
  --container-pad: clamp(1.25rem, 4vw, 3rem);
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 16px;

  /* ---- Motion ---- */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --dur-fast: 160ms;
  --dur-med: 320ms;
  --dur-slow: 620ms;

  /* ---- Elevation ---- */
  --shadow-sm: 0 1px 2px rgba(19, 20, 23, 0.06), 0 1px 1px rgba(19, 20, 23, 0.04);
  --shadow-md: 0 8px 24px rgba(19, 20, 23, 0.10), 0 2px 8px rgba(19, 20, 23, 0.06);
  --shadow-lg: 0 24px 64px rgba(19, 20, 23, 0.18), 0 8px 24px rgba(19, 20, 23, 0.10);
}

@media (prefers-reduced-motion: reduce) {
  :root {
    --dur-fast: 0ms;
    --dur-med: 0ms;
    --dur-slow: 0ms;
  }
}
