/* ═══════════════════════════════════════════════════════════
   HYPERSPHERE TECHNOLOGIES — DESIGN TOKENS
   Single source of truth. Edit here, applies everywhere.
   ═══════════════════════════════════════════════════════════ */

:root {

  /* ── Brand Colors (from corporate palette) ── */
  --hs-black:        #000000;
  --hs-teal:         #25505e;
  --hs-sea:          #A4CFCD;
  --hs-sand:         #e1ddd1;
  --hs-orange:       #f38f1e;

  --hs-slate:        #555c65;
  --hs-teal-bright:  #52b7b9;
  --hs-orange-mid:   #dd7b3e;
  --hs-red:          #b53a1e;
  --hs-cream:        #e8d393;

  /* ── Pastel / Light Tints (new light theme) ── */
  --hs-ice:          #e6f4f4;   /* very light teal tint */
  --hs-mist:         #f0f8f8;   /* near-white teal */
  --hs-peach:        #fdf0e3;   /* light orange tint */
  --hs-warm-white:   #faf8f4;   /* warm off-white */
  --hs-sand-light:   #f5f1e8;   /* light sand */
  --hs-cream-light:  #fdf9ee;   /* very light cream */
  --hs-sea-light:    #d4ecea;   /* lightened sea */

  /* ── Neutrals ── */
  --white:           #ffffff;
  --off-white:       #f8f9fa;
  --border:          #e2e8eb;
  --border-light:    #edf1f3;

  /* ── Text ── */
  --text-heading:    #0f2830;   /* near-black, teal-tinted */
  --text-body:       #3a4f5c;   /* dark teal-grey */
  --text-muted:      #7a8f9a;   /* medium muted */
  --text-light:      #a8bbc4;   /* light muted */

  /* ── Semantic / Accent ── */
  --accent-primary:   var(--hs-teal);
  --accent-bright:    var(--hs-teal-bright);
  --accent-pop:       var(--hs-orange);
  --accent-warm:      var(--hs-orange-mid);

  /* ── Typography ── */
  --font-heading:    'Chakra Petch', sans-serif;
  --font-body:       'Poppins', sans-serif;

  --text-xs:    0.75rem;    /* 12px */
  --text-sm:    0.875rem;   /* 14px */
  --text-base:  1rem;       /* 16px */
  --text-md:    1.125rem;   /* 18px */
  --text-lg:    1.25rem;    /* 20px */
  --text-xl:    1.5rem;     /* 24px */
  --text-2xl:   1.875rem;   /* 30px */
  --text-3xl:   2.25rem;    /* 36px */
  --text-4xl:   2.8125rem;  /* 45px */

  --weight-light:   300;
  --weight-normal:  400;
  --weight-medium:  500;
  --weight-semi:    600;
  --weight-bold:    700;

  --leading-tight:  1.2;
  --leading-snug:   1.35;
  --leading-normal: 1.6;
  --leading-loose:  1.75;

  --tracking-tight: -0.01em;
  --tracking-normal: 0.01em;
  --tracking-wide:  0.04em;
  --tracking-wider: 0.08em;

  /* ── Spacing ── */
  --space-1:   0.25rem;
  --space-2:   0.5rem;
  --space-3:   0.75rem;
  --space-4:   1rem;
  --space-5:   1.25rem;
  --space-6:   1.5rem;
  --space-8:   2rem;
  --space-10:  2.5rem;
  --space-12:  3rem;
  --space-16:  4rem;
  --space-20:  5rem;
  --space-24:  6rem;
  --space-32:  8rem;

  /* ── Section Padding ── */
  --section-y:      var(--space-20);  /* default top/bottom for sections */
  --section-y-lg:   var(--space-24);
  --section-y-sm:   var(--space-16);

  /* ── Layout ── */
  --container-max:   1280px;
  --container-mid:   1024px;
  --container-narrow: 720px;
  --container-pad:   var(--space-8);  /* side padding */

  /* ── Radius ── */
  --radius-sm:   6px;
  --radius-md:   10px;
  --radius-lg:   16px;
  --radius-xl:   24px;
  --radius-pill: 999px;

  /* ── Shadows ── */
  --shadow-sm:  0 1px 4px rgba(15, 40, 48, 0.06);
  --shadow-md:  0 4px 16px rgba(15, 40, 48, 0.08);
  --shadow-lg:  0 8px 32px rgba(15, 40, 48, 0.10);
  --shadow-xl:  0 16px 48px rgba(15, 40, 48, 0.12);

  /* ── Transitions ── */
  --ease-fast:    0.15s ease;
  --ease-normal:  0.25s ease;
  --ease-slow:    0.4s ease;

  /* ── Z-index ── */
  --z-base:    0;
  --z-raise:   10;
  --z-sticky:  100;
  --z-nav:     1000;
  --z-modal:   2000;
}
