/* =========================================================
   Design Tokens — North Stone V3 (techy, dark-first)
   ========================================================= */

@font-face {
  font-family: "Inter Tight";
  src: url("../fonts/inter-tight-400.woff2") format("woff2");
  font-weight: 400; font-style: normal; font-display: swap;
}
@font-face {
  font-family: "Inter Tight";
  src: url("../fonts/inter-tight-500.woff2") format("woff2");
  font-weight: 500; font-style: normal; font-display: swap;
}
@font-face {
  font-family: "Inter Tight";
  src: url("../fonts/inter-tight-700.woff2") format("woff2");
  font-weight: 700; font-style: normal; font-display: swap;
}
@font-face {
  font-family: "JetBrains Mono";
  src: url("../fonts/jetbrains-mono-400.woff2") format("woff2");
  font-weight: 400; font-style: normal; font-display: swap;
}
@font-face {
  font-family: "JetBrains Mono";
  src: url("../fonts/jetbrains-mono-500.woff2") format("woff2");
  font-weight: 500; font-style: normal; font-display: swap;
}

:root {
  /* ---------- Palette (dark-first) ---------- */
  --ink-900: #050B18;      /* true background — near black navy */
  --ink-800: #081224;      /* elevated surface */
  --ink-700: #0C1A33;      /* panel / card */
  --ink-600: #132644;
  --ink-500: #1E3557;

  --navy: #0A2445;
  --blue: #1A63BF;
  --blue-hi: #2D7CE0;
  --blue-glow: rgba(26, 99, 191, 0.22);

  --ice: #DEE8F6;
  --ice-dim: #B8C5DB;

  --line: rgba(222, 232, 246, 0.08);
  --line-strong: rgba(222, 232, 246, 0.16);
  --line-bright: rgba(222, 232, 246, 0.32);

  --text: #EAF0FA;
  --text-muted: rgba(234, 240, 250, 0.62);
  --text-subtle: rgba(234, 240, 250, 0.38);

  --success: #34D37F;     /* brighter for dark mode */
  --success-dim: rgba(52, 211, 127, 0.14);
  --warn: #F5B83A;
  --danger: #EF5D5D;

  /* Light inverse surface (rare use — sections that break the dark) */
  --paper: #F7F9FC;
  --paper-text: #0A2445;
  --paper-line: rgba(10, 36, 69, 0.08);

  /* ---------- Typography ---------- */
  --font-sans: "Inter Tight", system-ui, -apple-system, sans-serif;
  --font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;

  --step--2: clamp(0.7rem, 0.67rem + 0.12vw, 0.76rem);
  --step--1: clamp(0.825rem, 0.8rem + 0.15vw, 0.9rem);
  --step-0:  clamp(0.96rem, 0.93rem + 0.2vw, 1.04rem);
  --step-1:  clamp(1.1rem, 1.04rem + 0.3vw, 1.22rem);
  --step-2:  clamp(1.375rem, 1.22rem + 0.7vw, 1.625rem);
  --step-3:  clamp(1.75rem, 1.45rem + 1.2vw, 2.3rem);
  --step-4:  clamp(2.125rem, 1.6rem + 2vw, 3.25rem);
  --step-5:  clamp(2.75rem, 2rem + 3.2vw, 4.75rem);
  --step-6:  clamp(3.25rem, 2rem + 5.5vw, 6.5rem);

  --lh-tight: 1;
  --lh-snug: 1.15;
  --lh-normal: 1.5;
  --lh-relaxed: 1.65;

  --track-ultra: -0.045em;
  --track-tight: -0.032em;
  --track-snug: -0.018em;
  --track-normal: -0.005em;
  --track-wide: 0.1em;
  --track-xwide: 0.18em;

  /* ---------- Spacing ---------- */
  --s-1: 0.25rem;
  --s-2: 0.5rem;
  --s-3: 0.75rem;
  --s-4: 1rem;
  --s-5: 1.5rem;
  --s-6: 2rem;
  --s-7: 3rem;
  --s-8: 4rem;
  --s-9: 6rem;
  --s-10: 8rem;
  --s-11: 10rem;

  --section-y: clamp(5rem, 3rem + 6vw, 9rem);
  --section-y-sm: clamp(3rem, 2rem + 3vw, 5rem);

  --container: 1320px;
  --container-sm: 960px;
  --gutter: clamp(1.25rem, 1rem + 2vw, 2.5rem);

  /* ---------- Radii (sharper) ---------- */
  --r-xs: 2px;
  --r-sm: 4px;
  --r-md: 8px;
  --r-lg: 12px;
  --r-xl: 16px;
  --r-2xl: 20px;
  --r-3xl: 24px;
  --r-pill: 999px;

  /* ---------- Shadows (dark-tinted) ---------- */
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.3);
  --shadow-md: 0 12px 32px -12px rgba(0, 0, 0, 0.5);
  --shadow-lg: 0 28px 72px -24px rgba(0, 0, 0, 0.7);
  --shadow-cta: 0 14px 40px -12px rgba(26, 99, 191, 0.5), 0 0 0 1px rgba(26, 99, 191, 0.3);
  --shadow-glass-edge: inset 0 1px 0 rgba(255, 255, 255, 0.08), inset 0 0 0 1px rgba(255, 255, 255, 0.04);

  /* ---------- Motion ---------- */
  --ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-spring: cubic-bezier(0.34, 1.4, 0.5, 1);
  --ease-standard: cubic-bezier(0.4, 0, 0.2, 1);

  --dur-1: 150ms;
  --dur-2: 260ms;
  --dur-3: 480ms;
  --dur-4: 760ms;
  --dur-5: 1200ms;

  /* ---------- Z ---------- */
  --z-base: 1;
  --z-nav: 90;
  --z-modal: 100;
}
