/* ── Self-hosted fonts ── */
@font-face {
  font-family: 'Inter';
  font-weight: 400;
  font-display: swap;
  src: url('../assets/fonts/Inter-Regular.woff2') format('woff2');
}
@font-face {
  font-family: 'Inter';
  font-weight: 600;
  font-display: swap;
  src: url('../assets/fonts/Inter-SemiBold.woff2') format('woff2');
}
@font-face {
  font-family: 'Inter';
  font-weight: 800;
  font-display: swap;
  src: url('../assets/fonts/Inter-ExtraBold.woff2') format('woff2');
}
@font-face {
  font-family: 'JetBrains Mono';
  font-weight: 400;
  font-display: swap;
  src: url('../assets/fonts/JetBrainsMono-Regular.woff2') format('woff2');
}
@font-face {
  font-family: 'Space Grotesk';
  font-weight: 700;
  font-display: swap;
  src: url('../assets/fonts/SpaceGrotesk-Bold.ttf') format('truetype');
}

:root {
  /* ── Colors — Light Professional ── */
  --bg-primary: #FFFFFF;
  --bg-secondary: #F5F5F7;
  --accent-purple: #7B61FF;
  --accent-cyan: #00B8D4;
  --text-primary: #111111;
  --text-secondary: rgba(0, 0, 0, 0.55);
  --text-dim: rgba(0, 0, 0, 0.10);

  /* ── Glass ── */
  --glass-bg: rgba(123, 97, 255, 0.03);
  --glass-border: rgba(123, 97, 255, 0.10);
  --glass-blur: 20px;

  /* ── Typography ── */
  --font-body: 'Inter', sans-serif;
  --font-mono: 'JetBrains Mono', monospace;
  --fw-regular: 400;
  --fw-semibold: 600;
  --fw-bold: 800;

  /* ── Spacing ── */
  --section-pad: clamp(80px, 10vw, 160px);
  --container-max: 1280px;
  --container-pad: clamp(20px, 4vw, 60px);

  /* ── Easing ── */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);

  /* ── Z-Index ── */
  --z-cursor: 9999;
  --z-loader: 10000;
  --z-nav: 1000;
  --z-overlay: 500;
  --z-content: 10;
  --z-canvas: 1;
}
