/*
 * ═══════════════════════════════════════════════════════════════
 *  NGAO LABS ACADEMY — Design Tokens
 *  Single source of truth for all CSS custom properties.
 *  All other stylesheets consume these variables.
 * ═══════════════════════════════════════════════════════════════
 */

:root {

  /* ── Brand Colors ─────────────────────────────────────────── */
  --navy-900:  #060E25;   /* darkest, near-black navy             */
  --navy-800:  #0B1F4A;   /* primary brand navy (logo)            */
  --navy-700:  #102660;   /* slightly lighter navy                */
  --navy-600:  #163580;   /* mid navy                             */
  --navy-500:  #1E4BAD;   /* bright navy                          */
  --navy-400:  #3B67C4;   /* muted blue                           */
  --navy-300:  #6A92D8;   /* sky accent                           */
  --navy-200:  #A8BEE8;   /* pale navy                            */
  --navy-100:  #D6E2F5;   /* lightest                             */

  --gold-600:  #664D00;   /* deepest gold                         */
  --gold-500:  #8B6A00;   /* deep gold                            */
  --gold-400:  #A88400;   /* primary gold accent (dense)          */
  --gold-300:  #C9A227;   /* rich gold                            */
  --gold-200:  #D9B84A;   /* bright gold                          */
  --gold-100:  #F7ECC0;   /* pale gold tint                       */

  /* ── Semantic Aliases ────────────────────────────────────── */
  --color-primary:       var(--navy-800);
  --color-primary-dark:  var(--navy-900);
  --color-primary-mid:   var(--navy-700);
  --color-accent:        var(--gold-400);
  --color-accent-bright: var(--gold-300);
  --color-accent-muted:  var(--gold-200);
  --color-accent-pale:   var(--gold-100);

  /* ── Surfaces ────────────────────────────────────────────── */
  --surface-base:    #F7F7F5;                 /* page background      */
  --surface-raised:  #FFFFFF;                 /* cards / panels       */
  --surface-overlay: rgba(255, 255, 255, 0.95); /* modals / drawers     */
  --surface-glass:   rgba(255, 255, 255, 0.60);
  --surface-glass-border: rgba(0, 0, 0, 0.10);

  /* ── Backgrounds ─────────────────────────────────────────── */
  --bg-primary:   var(--surface-base);
  --bg-secondary: #FFFFFF;

  /* ── Text ─────────────────────────────────────────────────── */
  --text-primary:   #171717;
  --text-secondary: #4A4A4A;
  --text-muted:     #737373;
  --text-inverse:   #FFFFFF;

  /* ── Borders ──────────────────────────────────────────────── */
  --border-subtle: rgba(0, 0, 0, 0.08);
  --border-mid:    rgba(0, 0, 0, 0.16);
  --border-accent: rgba(201, 162, 39, 0.40);
  --border-accent-strong: var(--gold-400);

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

  /* ── Typography ──────────────────────────────────────────── */
  --font-heading: 'Plus Jakarta Sans', system-ui, -apple-system, sans-serif;
  --font-body:    'Inter', system-ui, -apple-system, sans-serif;
  --font-mono:    'JetBrains Mono', 'Fira Code', 'Cascadia Code', monospace;

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

  --leading-tight:  1.15;
  --leading-snug:   1.3;
  --leading-normal: 1.6;
  --leading-relaxed:1.8;

  --tracking-tight:  -0.03em;
  --tracking-normal:  0;
  --tracking-wide:    0.06em;
  --tracking-widest:  0.14em;

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

  /* ── Shadows ─────────────────────────────────────────────── */
  --shadow-xs:  0 1px 2px rgba(0, 0, 0, 0.4);
  --shadow-sm:  0 2px 8px rgba(0, 0, 0, 0.5);
  --shadow-md:  0 4px 20px rgba(0, 0, 0, 0.6);
  --shadow-lg:  0 12px 40px rgba(0, 0, 0, 0.7);
  --shadow-xl:  0 24px 64px rgba(0, 0, 0, 0.8);
  --shadow-gold: 0 0 40px rgba(201, 162, 39, 0.20);
  --shadow-gold-sm: 0 0 16px rgba(201, 162, 39, 0.15);
  --shadow-navy: 0 8px 32px rgba(6, 14, 37, 0.80);

  /* ── Transitions ─────────────────────────────────────────── */
  --ease-out-expo:  cubic-bezier(0.16, 1, 0.3, 1);
  --ease-out-circ:  cubic-bezier(0, 0.55, 0.45, 1);
  --ease-in-out:    cubic-bezier(0.45, 0, 0.55, 1);
  --ease-spring:    cubic-bezier(0.34, 1.56, 0.64, 1);

  --duration-fast:   150ms;
  --duration-base:   250ms;
  --duration-slow:   400ms;
  --duration-slower: 700ms;

  --transition-base:   all var(--duration-base) var(--ease-out-expo);
  --transition-fast:   all var(--duration-fast) var(--ease-out-expo);
  --transition-slow:   all var(--duration-slow) var(--ease-out-expo);

  /* ── Layout ──────────────────────────────────────────────── */
  --container-max:  1200px;
  --container-wide: 1400px;
  --container-gutter: var(--space-6);
  --nav-height:     72px;
  --section-y:      var(--space-24);

  /* ── Gradients ───────────────────────────────────────────── */
  --gradient-brand:       linear-gradient(135deg, var(--navy-900) 0%, var(--navy-800) 50%, var(--navy-700) 100%);
  --gradient-gold:        linear-gradient(135deg, var(--gold-600) 0%, var(--gold-400) 50%, var(--gold-300) 100%);
  --gradient-gold-text:   linear-gradient(120deg, var(--gold-300) 0%, var(--gold-400) 50%, var(--gold-200) 100%);
  --gradient-glow:        radial-gradient(ellipse 60% 40% at 50% 0%, rgba(201,162,39,0.12) 0%, transparent 70%);
  --gradient-hero:        radial-gradient(ellipse 80% 60% at 60% 30%, rgba(30,75,173,0.12) 0%, transparent 60%),
                          radial-gradient(ellipse 40% 50% at 20% 80%, rgba(201,162,39,0.08) 0%, transparent 60%);
}
