/* =================================================================
   GOLDENWOOD AGRO — Design Tokens / CSS Custom Properties
   Импортируется первым. Все остальные файлы используют эти токены.
   ================================================================= */

:root {

  /* ── Colors: Primary Green ─────────────────────────── */
  --gw-green-900:  #0D2010;
  --gw-green-800:  #1A3D20;   /* PRIMARY */
  --gw-green-700:  #1F4D28;
  --gw-green-600:  #2A5C35;   /* SECONDARY */
  --gw-green-500:  #3B7448;
  --gw-green-400:  #4A7C59;
  --gw-green-300:  #72A882;
  --gw-green-200:  #A8CEAF;
  --gw-green-100:  #D4E8D9;
  --gw-green-50:   #EBF5EE;
  --gw-green-25:   #F4FAF5;

  /* ── Colors: Gold Accent ───────────────────────────── */
  --gw-gold-900:   #6B4A00;
  --gw-gold-800:   #8B6200;
  --gw-gold-700:   #A87900;
  --gw-gold-600:   #C8962A;   /* PRIMARY ACCENT */
  --gw-gold-500:   #D4A63A;
  --gw-gold-400:   #E8B44B;   /* HOVER */
  --gw-gold-300:   #F0C87A;
  --gw-gold-200:   #F7DFA5;
  --gw-gold-100:   #FAECCC;
  --gw-gold-50:    #FDF4E3;
  --gw-gold-25:    #FEFAF2;

  /* ── Colors: Neutral/Text ──────────────────────────── */
  --gw-text-900:   #0A0F0B;
  --gw-text-800:   #1C2B1E;   /* MAIN TEXT */
  --gw-text-700:   #2D3F30;
  --gw-text-600:   #3D4F40;
  --gw-text-500:   #4F6352;
  --gw-text-400:   #6B7B6E;   /* MUTED */
  --gw-text-300:   #8C9E8F;
  --gw-text-200:   #B0BEB2;
  --gw-text-100:   #D4DDD6;
  --gw-text-50:    #EFF3F0;

  /* ── Colors: Backgrounds ───────────────────────────── */
  --gw-bg-white:       #FFFFFF;
  --gw-bg-surface:     #F7FAF7;
  --gw-bg-surface-alt: #F0F5F1;
  --gw-bg-green-light: #EBF5EE;
  --gw-bg-gold-light:  #FDF4E3;
  --gw-bg-dark:        #1A3D20;
  --gw-bg-dark-alt:    #0D2010;

  /* ── Colors: State / Semantic ──────────────────────── */
  --gw-color-error:    #C0392B;
  --gw-color-success:  #27AE60;
  --gw-color-warning:  #E67E22;
  --gw-color-info:     #2980B9;

  /* ── Semantic Aliases ──────────────────────────────── */
  --gw-primary:         var(--gw-green-800);
  --gw-primary-hover:   var(--gw-green-600);
  --gw-primary-light:   var(--gw-green-50);
  --gw-accent:          var(--gw-gold-600);
  --gw-accent-hover:    var(--gw-gold-400);
  --gw-accent-light:    var(--gw-gold-50);
  --gw-text-primary:    var(--gw-text-800);
  --gw-text-secondary:  var(--gw-text-600);
  --gw-text-muted:      var(--gw-text-400);
  --gw-border:          var(--gw-green-100);
  --gw-border-dark:     var(--gw-green-200);

  /* ── Typography: Font Families ─────────────────────── */
  --gw-font-heading:   'Montserrat', 'Segoe UI', sans-serif;
  --gw-font-body:      'Inter', 'Segoe UI', system-ui, sans-serif;
  --gw-font-accent:    'Playfair Display', Georgia, serif;

  /* ── Typography: Font Sizes ────────────────────────── */
  --gw-text-xs:    0.75rem;    /* 12px */
  --gw-text-sm:    0.875rem;   /* 14px */
  --gw-text-base:  1rem;       /* 16px */
  --gw-text-lg:    1.125rem;   /* 18px */
  --gw-text-xl:    1.25rem;    /* 20px */
  --gw-text-2xl:   1.5rem;     /* 24px */
  --gw-text-3xl:   1.875rem;   /* 30px */
  --gw-text-4xl:   2.25rem;    /* 36px */
  --gw-text-5xl:   3rem;       /* 48px */
  --gw-text-6xl:   3.75rem;    /* 60px */
  --gw-text-7xl:   4.5rem;     /* 72px */

  /* ── Typography: Font Weights ──────────────────────── */
  --gw-fw-light:    300;
  --gw-fw-normal:   400;
  --gw-fw-medium:   500;
  --gw-fw-semibold: 600;
  --gw-fw-bold:     700;
  --gw-fw-extrabold: 800;

  /* ── Typography: Line Heights ──────────────────────── */
  --gw-lh-tight:    1.2;
  --gw-lh-snug:     1.35;
  --gw-lh-normal:   1.5;
  --gw-lh-relaxed:  1.75;
  --gw-lh-loose:    2;

  /* ── Typography: Letter Spacing ────────────────────── */
  --gw-ls-tight:    -0.02em;
  --gw-ls-normal:   0em;
  --gw-ls-wide:     0.05em;
  --gw-ls-wider:    0.1em;

  /* ── Spacing Scale ─────────────────────────────────── */
  --gw-space-1:    0.25rem;    /* 4px */
  --gw-space-2:    0.5rem;     /* 8px */
  --gw-space-3:    0.75rem;    /* 12px */
  --gw-space-4:    1rem;       /* 16px */
  --gw-space-5:    1.25rem;    /* 20px */
  --gw-space-6:    1.5rem;     /* 24px */
  --gw-space-8:    2rem;       /* 32px */
  --gw-space-10:   2.5rem;     /* 40px */
  --gw-space-12:   3rem;       /* 48px */
  --gw-space-16:   4rem;       /* 64px */
  --gw-space-20:   5rem;       /* 80px */
  --gw-space-24:   6rem;       /* 96px */
  --gw-space-32:   8rem;       /* 128px */

  /* ── Layout ────────────────────────────────────────── */
  --gw-container-max:    1240px;
  --gw-container-pad:    20px;
  --gw-section-py:       80px;
  --gw-section-py-sm:    48px;
  --gw-section-py-lg:    112px;

  /* ── Border Radius ─────────────────────────────────── */
  --gw-radius-sm:   4px;
  --gw-radius:      8px;
  --gw-radius-md:   12px;
  --gw-radius-lg:   16px;
  --gw-radius-xl:   24px;
  --gw-radius-2xl:  32px;
  --gw-radius-full: 9999px;

  /* ── Shadows ───────────────────────────────────────── */
  --gw-shadow-xs:  0 1px 3px rgba(26,61,32,0.06);
  --gw-shadow-sm:  0 2px 8px rgba(26,61,32,0.08);
  --gw-shadow:     0 4px 16px rgba(26,61,32,0.10);
  --gw-shadow-md:  0 4px 24px rgba(26,61,32,0.12);
  --gw-shadow-lg:  0 8px 48px rgba(26,61,32,0.16);
  --gw-shadow-xl:  0 16px 64px rgba(26,61,32,0.20);

  /* Gold shadow for accent elements */
  --gw-shadow-gold: 0 4px 20px rgba(200,150,42,0.25);
  --gw-shadow-gold-lg: 0 8px 40px rgba(200,150,42,0.35);

  /* ── Transitions ───────────────────────────────────── */
  --gw-transition:        0.3s ease;
  --gw-transition-fast:   0.15s ease;
  --gw-transition-slow:   0.5s ease;
  --gw-transition-spring: 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);

  /* ── Z-Index ───────────────────────────────────────── */
  --gw-z-base:    0;
  --gw-z-above:   10;
  --gw-z-dropdown: 100;
  --gw-z-sticky:  200;
  --gw-z-fixed:   300;
  --gw-z-modal:   1000;
  --gw-z-toast:   1100;

  /* ── Grid ──────────────────────────────────────────── */
  --gw-grid-gap:  24px;
  --gw-grid-gap-lg: 32px;
}

/* Mobile overrides */
@media (max-width: 768px) {
  :root {
    --gw-section-py:     var(--gw-space-12);
    --gw-section-py-sm:  var(--gw-space-8);
    --gw-section-py-lg:  var(--gw-space-16);
    --gw-container-pad:  16px;
    --gw-grid-gap:       16px;
  }
}
