/* =========================================
   DESIGN TOKENS — Skoolapps
   ========================================= */

:root {
  /* --- Brand Colors --- */
  --clr-primary:        #2a7a4b;   /* deep green */
  --clr-primary-light:  #3da066;   /* mid green */
  --clr-primary-dark:   #1d5c38;   /* dark green */
  --clr-accent:         #00c97a;   /* bright green accent */

  --clr-teal:           #00b4b4;   /* teal for headings */
  --clr-teal-light:     #e0f7f7;   /* teal tint bg */

  --clr-bg:             #f5fdf8;   /* off-white green tint */
  --clr-bg-alt:         #e8f5ed;   /* light green section bg */
  --clr-bg-hero:        #edfaf2;   /* hero section bg */

  --clr-white:          #ffffff;
  --clr-black:          #0d1b12;
  --clr-text:           #2c3e30;
  --clr-text-muted:     #5a7363;
  --clr-border:         #c8e6d0;

  /* --- Typography --- */
  --font-display:       'Syne', sans-serif;       /* bold headings */
  --font-body:          'DM Sans', sans-serif;    /* clean body */

  --fs-xs:    0.75rem;    /* 12px */
  --fs-sm:    0.875rem;   /* 14px */
  --fs-base:  1rem;       /* 16px */
  --fs-md:    1.125rem;   /* 18px */
  --fs-lg:    1.25rem;    /* 20px */
  --fs-xl:    1.5rem;     /* 24px */
  --fs-2xl:   2rem;       /* 32px */
  --fs-3xl:   2.5rem;     /* 40px */
  --fs-4xl:   3rem;       /* 48px */
  --fs-5xl:   3.75rem;    /* 60px */

  --fw-normal:   400;
  --fw-medium:   500;
  --fw-semibold: 600;
  --fw-bold:     700;
  --fw-extrabold:800;

  --lh-tight:  1.1;
  --lh-snug:   1.3;
  --lh-normal: 1.5;
  --lh-loose:  1.75;

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

  /* --- Layout --- */
  --container-max:   1200px;
  --container-pad:   clamp(1rem, 5vw, 2.5rem);

  /* --- Borders & Radius --- */
  --radius-sm:   0.375rem;
  --radius-md:   0.75rem;
  --radius-lg:   1.25rem;
  --radius-xl:   2rem;
  --radius-full: 9999px;

  /* --- Shadows --- */
  --shadow-sm:  0 1px 3px rgba(0,0,0,0.08), 0 1px 2px rgba(0,0,0,0.06);
  --shadow-md:  0 4px 16px rgba(0,0,0,0.10);
  --shadow-lg:  0 10px 40px rgba(0,0,0,0.12);
  --shadow-green: 0 8px 32px rgba(42,122,75,0.18);

  /* --- Transitions --- */
  --transition-fast:   150ms ease;
  --transition-base:   250ms ease;
  --transition-slow:   400ms ease;

  /* --- Z-index layers --- */
  --z-base:    1;
  --z-above:   10;
  --z-nav:     100;
  --z-modal:   1000;
}
