/* =============================================
   maji by majaco — CSS Custom Properties
   Design System Variables
   ============================================= */

:root {
  /* ---- Colors (majaco brand palette — per Brand Guidelines v1) ---- */
  --color-primary:       #006458;   /* majaco pine (500) */
  --color-primary-dark:  #004a40;   /* majaco pine dark */
  --color-primary-light: #d0f0ea;   /* majaco pine light */
  --color-primary-rgb:   0, 100, 88;

  --color-accent:        #DAF11B;   /* majaco lime */
  --color-grey:          #7A7A7A;   /* majaco grey */

  --color-bg:            #FFFFFF;   /* majaco white */
  --color-bg-alt:        #f5f5f5;   /* light neutral */
  --color-bg-dark:       #001412;   /* majaco dark green (pine 900) */
  --color-bg-dark-2:     #001e19;

  --color-text:          #1A1A1A;
  --color-text-muted:    #7A7A7A;   /* majaco grey */
  --color-text-light:    #FFFFFF;
  --color-text-subtle:   #999999;   /* lighter grey */

  --color-border:        #e0e0e0;
  --color-border-dark:   #2E2E2E;

  --color-success:       #22C55E;
  --color-error:         #EF4444;
  --color-warning:       #F59E0B;

  /* ---- Typography (per Brand Guidelines v1 §3) ---- */
  --font-sans:   'TT Hoves Pro', 'Roboto', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-mono:   'JetBrains Mono', 'Fira Code', 'Courier New', monospace;

  /* Brand type scale */
  --font-size-xs:   0.625rem;    /* 10px — Extra Small */
  --font-size-sm:   0.8125rem;   /* 13px — Small / Overline */
  --font-size-base: 1rem;        /* 16px — Body / Heavy Body */
  --font-size-lg:   1.25rem;     /* 20px — Subtitle */
  --font-size-xl:   1.5625rem;   /* 25px — Title */
  --font-size-2xl:  1.9375rem;   /* 31px — H4 */
  --font-size-3xl:  2.4375rem;   /* 39px — H3 */
  --font-size-4xl:  3.0625rem;   /* 49px — H2 */
  --font-size-5xl:  3.8125rem;   /* 61px — H1 */

  /* Brand font weights — TT Hoves Pro: Light 300, Regular 400, Bold 700 */
  --font-weight-light:    300;
  --font-weight-normal:   400;
  --font-weight-medium:   500;
  --font-weight-semibold: 600;
  --font-weight-bold:     700;

  /* Brand line heights */
  --line-height-tight:  1.2;     /* 120% — H1–H4, Title */
  --line-height-snug:   1.4;     /* 140% — Subtitle, Small, Overline, Extra Small */
  --line-height-normal: 1.6;     /* 160% — Body, Heavy Body */
  --line-height-relaxed:1.8;

  /* ---- Spacing Scale ---- */
  --space-xs:  0.25rem;   /* 4px */
  --space-sm:  0.5rem;    /* 8px */
  --space-md:  1rem;      /* 16px */
  --space-lg:  1.5rem;    /* 24px */
  --space-xl:  2rem;      /* 32px */
  --space-2xl: 3rem;      /* 48px */
  --space-3xl: 4rem;      /* 64px */
  --space-4xl: 6rem;      /* 96px */
  --space-5xl: 8rem;      /* 128px */

  /* ---- Section Spacing ---- */
  --section-padding-y:       5rem;
  --section-padding-y-sm:    3rem;
  --container-max-width:     1200px;
  --container-padding:       1.5rem;

  /* ---- Border Radius ---- */
  --radius-sm:   4px;
  --radius-md:   8px;
  --radius-lg:   12px;
  --radius-xl:   16px;
  --radius-2xl:  24px;
  --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 12px rgba(0, 0, 0, 0.08), 0 2px 4px rgba(0, 0, 0, 0.06);
  --shadow-lg:  0 8px 24px rgba(0, 0, 0, 0.10), 0 4px 8px rgba(0, 0, 0, 0.06);
  --shadow-xl:  0 16px 48px rgba(0, 0, 0, 0.12), 0 8px 16px rgba(0, 0, 0, 0.08);
  --shadow-green: 0 4px 20px rgba(0, 100, 88, 0.30);

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

  /* ---- Z-Index ---- */
  --z-dropdown: 100;
  --z-sticky:   200;
  --z-overlay:  300;
  --z-modal:    400;
  --z-toast:    500;

  /* ---- Breakpoints (for use in JS) ---- */
  --bp-sm:  640px;
  --bp-md:  768px;
  --bp-lg:  1024px;
  --bp-xl:  1280px;
  --bp-2xl: 1536px;

  /* ---- Nav ---- */
  --nav-height: 80px;

  /* ---- Dark Nav (matches original Webflow site) ---- */
  --nav-bg: #001412;
  --nav-text: #FFFFFF;
  --nav-link-color: rgba(255, 255, 255, 0.65);
  --nav-link-hover: #FFFFFF;
  --nav-border: rgba(255, 255, 255, 0.08);
}

/* Dark mode overrides (optional — not currently used) */
@media (prefers-color-scheme: dark) {
  /* Reserved for future dark mode support */
}
