/* GoodCannaNow — Global design tokens */

:root {

  --gcn-green-900: #052a23;
  --gcn-green-800: #0f3d2e;
  --gcn-green-700: #1e5540;
  --gcn-green-600: #2f6b4f;
  --gcn-green-500: #4a7a5c;

  --gcn-olive-500: #aebe6b;
  --gcn-lime-200:  #e8efc6;
  --gcn-sage-300:  #d7e4c9;

  --gcn-cream-50:  #f8f5ea;
  --gcn-cream-100: #f4f7ea;
  --gcn-mint-50:   #eef3e0;
  --gcn-white:     #ffffff;

  --gcn-text-muted: #5a6b5e;

  --color-primary:        var(--gcn-green-900);
  --color-primary-dark:   var(--gcn-green-800);
  --color-accent:         var(--gcn-lime-200);
  --color-accent-soft:    var(--gcn-sage-300);
  --color-olive:          var(--gcn-olive-500);

  --color-bg:             var(--gcn-cream-100);
  --color-bg-alt:         var(--gcn-mint-50);
  --color-bg-dark:        var(--gcn-green-800);
  --color-surface:        var(--gcn-white);

  --color-heading:        var(--gcn-green-900);
  --color-heading-accent: var(--gcn-green-600);
  --color-text:           var(--gcn-green-900);
  --color-text-muted:     var(--gcn-text-muted);
  --color-text-on-dark:   var(--gcn-white);

  --color-btn-bg:         var(--gcn-lime-200);
  --color-btn-text:       var(--gcn-green-900);
  --color-border:         var(--gcn-lime-200);

  --font-display: "DM Serif Display", Georgia, "Times New Roman", serif;
  --font-body:    "Hedvig Letters Serif", Georgia, serif;
  --font-ui:      "Manrope", system-ui, -apple-system, sans-serif;

  --fw-regular: 400;
  --fw-medium:  500;
  --fw-bold:    700;

  --fs-eyebrow: 12px;
  --fs-sm:      14px;
  --fs-base:    16px;
  --fs-lg:      20px;
  --fs-h4:      24px;
  --fs-xl:      28px;
  --fs-h3:      32px;
  --fs-h2:      44px;
  --fs-h1:      70px;

  --lh-tight:   1.1;
  --lh-snug:    1.25;
  --lh-base:    1.625;

  --ls-heading: -0.7px;
  --ls-eyebrow: 1.2px;
  --ls-button:  1.4px;

  --space-1:  4px;
  --space-2:  8px;
  --space-3:  12px;
  --space-4:  16px;
  --space-5:  24px;
  --space-6:  32px;
  --space-7:  40px;
  --space-8:  48px;
  --space-9:  64px;
  --space-10: 96px;

  --section-spacing:   96px;
  --section-spacing-sm: 48px;

  --container-max: 1248px;
  --container-pad: 96px;
  --container-pad-sm: 16px;

  --header-height: 80px;

  --radius-sm:   8px;
  --radius-md:   16px;
  --radius-lg:   24px;
  --radius-xl:   32px;
  --radius-pill: 36px;
  --border-width: 1px;

  --shadow-xs: 0px 1px 2px 0px rgba(16, 24, 40, 0.05);
  --shadow-sm: 0px 0px 20px 0px rgba(0, 0, 0, 0.07);
  --shadow-md: 0px 8px 24px 0px rgba(5, 42, 35, 0.10);

  --transition-fast: 150ms ease;
  --transition-base: 250ms ease;

  --reveal-distance:    16px;
  --transition-reveal:  900ms cubic-bezier(0.22, 1, 0.36, 1);
  /* Gap between staggered items in a [data-reveal-group]; read by scroll-reveal.js. */
  --reveal-stagger:     150ms;
}

@media (max-width: 768px) {
  :root { --header-height: 64px; }
}
