:root {
  /* Brand palette pulled from live northlandairco.com (#247C35 pine + sky-blue family).
     Navy retained as structural / text color only. */
  --color-pine: #247c35;
  --color-pine-deep: #1b6128;
  --color-pine-soft: #2f9645;
  --color-sky: #39b0e3;
  --color-sky-bright: #1d9ed4;
  --color-sky-light: #6bc5ea;
  --color-sky-tint: #b3e1f4;
  --color-navy: #0c2c4c;
  --color-navy-deep: #081f37;
  --color-navy-soft: #14416d;
  --color-ink: #101820;
  --color-cream: #f4f1ea;
  --color-paper: #ffffff;
  --color-line: #e3dfd6;
  --color-muted: #5b6671;
  --color-success: #247c35;
  --color-warn: #b8451c;

  /* Aliases keep legacy --color-blue and --color-blue-bright references working. */
  --color-blue: var(--color-sky-light);
  --color-blue-bright: var(--color-sky-bright);

  --grad-bridge: linear-gradient(180deg, rgba(8,31,55,0.0) 0%, rgba(8,31,55,0.55) 60%, rgba(8,31,55,0.85) 100%);
  --grad-navy: linear-gradient(160deg, #0c2c4c 0%, #14416d 100%);
  --grad-pine: linear-gradient(160deg, #247c35 0%, #2f9645 100%);
  --grad-sky: linear-gradient(160deg, #1d9ed4 0%, #39b0e3 100%);

  --font-display: "Barlow Condensed", "Oswald", "Arial Narrow", sans-serif;
  --font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;

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

  --lh-tight: 1.05;
  --lh-snug: 1.2;
  --lh-base: 1.55;
  --lh-loose: 1.75;

  --tracking-display: 0.01em;
  --tracking-eyebrow: 0.18em;

  --s-1: 0.25rem;
  --s-2: 0.5rem;
  --s-3: 0.75rem;
  --s-4: 1rem;
  --s-5: 1.5rem;
  --s-6: 2rem;
  --s-7: 3rem;
  --s-8: 4rem;
  --s-9: 6rem;
  --s-10: 8rem;

  --container: 1200px;
  --container-narrow: 880px;
  --container-wide: 1380px;

  --radius-sm: 6px;
  --radius-md: 12px;
  --radius-lg: 20px;
  --radius-pill: 800px;

  --shadow-sm: 0 2px 6px rgba(40, 24, 8, 0.06), 0 1px 2px rgba(40, 24, 8, 0.04);
  --shadow-md: 0 12px 32px rgba(40, 24, 8, 0.10), 0 4px 10px rgba(40, 24, 8, 0.06);
  --shadow-lg: 0 28px 60px rgba(8, 24, 40, 0.18), 0 10px 24px rgba(8, 24, 40, 0.10);
  --shadow-inset: inset 0 1px 0 rgba(255,255,255,0.06);

  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --dur-fast: 160ms;
  --dur-base: 280ms;
  --dur-slow: 520ms;

  --nav-h: 72px;
  --topbar-h: 36px;
}

@media (max-width: 768px) {
  :root {
    --fs-2xl: 2.25rem;
    --fs-3xl: 2.75rem;
    --fs-4xl: 3.25rem;
    --s-9: 4rem;
    --s-10: 5rem;
  }
}
