/* ==========================================================================
   BAZA PRODUCTION - Design tokens
   Single source of truth for colour, type, space and motion.
   Every page of the future platform imports this file first.
   ========================================================================== */

@font-face {
  font-family: "Inter Tight";
  src: url("../fonts/InterTight-latin.woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Loaded only when a glyph needs it: SK diacritics (latin-ext) and RU / UA (cyrillic). */
@font-face {
  font-family: "Inter Tight";
  src: url("../fonts/InterTight-latin-ext.woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "Inter Tight";
  src: url("../fonts/InterTight-cyrillic.woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: "JetBrains Mono";
  src: url("../fonts/JetBrainsMono-latin.woff2") format("woff2");
  font-weight: 100 800;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0000-00FF, U+2000-206F, U+2190-2193, U+2212;
}

@font-face {
  font-family: "JetBrains Mono";
  src: url("../fonts/JetBrainsMono-cyrillic.woff2") format("woff2");
  font-weight: 100 800;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* Metric-matched fallback keeps layout shift near zero while fonts load. */
@font-face {
  font-family: "Inter Tight Fallback";
  src: local("Arial");
  size-adjust: 95%;
  ascent-override: 102%;
  descent-override: 26%;
  line-gap-override: 0%;
}

:root {
  color-scheme: dark;

  /* Colour ---------------------------------------------------------------- */
  --c-bg: #0a0a0b;
  --c-bg-2: #101012;
  --c-surface: #151517;
  --c-surface-2: #1c1c1f;
  --c-fg: #edebe6;
  --c-fg-2: rgb(237 235 230 / 0.66);
  --c-fg-3: rgb(237 235 230 / 0.5);
  --c-line: rgb(237 235 230 / 0.1);
  --c-line-2: rgb(237 235 230 / 0.2);
  --c-accent: #ffe050;          /* BAZA yellow, sampled from the mark */
  --c-accent-ink: #0a0a0b;
  --c-accent-dim: rgb(255 224 80 / 0.14);

  /* Discipline colours, from the approved BAZA home concept.
     Used only as signals: index numbers, diagram nodes, active edges. */
  --c-film: #ff4545;
  --c-3d: #2fcbdc;
  --c-sound: #9466ff;
  --c-developers: #34d47f;
  --c-promotion: #ff4aa0;

  /* Type ------------------------------------------------------------------ */
  --font-display: "Inter Tight", "Inter Tight Fallback", "Helvetica Neue", Arial, sans-serif;
  --font-body: var(--font-display);
  --font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;

  --fs-xs: 0.6875rem;                                  /* 11 */
  --fs-sm: 0.8125rem;                                  /* 13 */
  --fs-base: clamp(0.9375rem, 0.9rem + 0.15vw, 1.0625rem);
  --fs-md: clamp(1.0625rem, 0.95rem + 0.45vw, 1.375rem);
  --fs-lg: clamp(1.375rem, 1.1rem + 1.1vw, 2.125rem);
  --fs-xl: clamp(2rem, 1.3rem + 2.9vw, 4.25rem);
  --fs-2xl: clamp(2.75rem, 1.4rem + 5.6vw, 7.5rem);
  --fs-3xl: clamp(3.25rem, 1rem + 9.4vw, 12.5rem);

  --lh-tight: 0.92;
  --lh-snug: 1.12;
  --lh-body: 1.55;
  --tracking-display: -0.045em;
  --tracking-tight: -0.02em;
  --tracking-mono: 0.04em;

  /* Space & grid -----------------------------------------------------------
     --gap is inherited from the original BAZA build (20px) and now scales
     fluidly: 16px on phones, 20px at 1440, up to 28px on 2560 screens. */
  --gap: clamp(16px, 0.6vw + 11px, 28px);
  --pad: clamp(20px, 3.4vw, 80px);                     /* page gutter */
  --cols: 12;
  --maxw: 2400px;
  /* Spacing scale - every section / block gap on the site uses one of these.
     xs: inner bands   s: small stacks   m: thin sections, sub-heads
     l: blocks inside a section   head: heading -> content
     xl: sections on direction pages   2xl: statement sections (home, contact) */
  --space-xs: clamp(16px, 1.6vw, 26px);
  --space-s: clamp(28px, 3vw, 48px);
  --space-m: clamp(40px, 5vw, 72px);
  --space-l: clamp(64px, 8vw, 140px);
  --space-head: clamp(48px, 6vw, 110px);
  --space-xl: clamp(88px, 11vw, 200px);
  --space-2xl: clamp(110px, 14vw, 240px);
  --section-y: var(--space-2xl);
  --header-h: clamp(64px, 5.2vw, 88px);
  --radius: 2px;

  /* Motion ---------------------------------------------------------------- */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --ease-soft: cubic-bezier(0.33, 1, 0.68, 1);
  --dur-1: 0.25s;
  --dur-2: 0.6s;
  --dur-3: 1.1s;

  /* Layers ---------------------------------------------------------------- */
  --z-canvas: 0;
  --z-content: 1;
  --z-header: 50;
  --z-menu: 60;
}
