:root {
  --ax-ink: #141833;
  --ax-ink-deep: #0B0F22;
  --ax-map-bg: #1A2148;
  --ax-paper: #F4F1EB;
  --ax-sand: #E9E5DC;
  --ax-sand-deep: #E4DFD5;
  --ax-navy: #353B66;
  /*
   * Powierzchnie pochodne, wydzielone z wartosci wpisanych wprost w blokach
   * (W29). Wartosci sa tozsame z dotychczasowymi, wiec render sie nie zmienia -
   * chodzi o to, zeby marka mogla je przelaczyc jednym nadpisaniem.
   */
  --ax-ink-raised: #1B2040;   /* panel uniesiony nad ciemnym tlem */
  --ax-sand-light: #EEE8DE;   /* piasek jasniejszy od --ax-sand */
  --ax-sand-deeper: #DDD8CD;  /* piasek ciemniejszy od --ax-sand-deep */
  --ax-steel: #86A0C6;
  --ax-steel-light: #C8D8F0;
  --ax-pin-core: #3B51D4;
  --ax-ok: #7FB39A;
  --ax-ok-bright: #58A57C;
  --ax-flag: #D0233A;
  --ax-gutter: clamp(18px, 4vw, 72px);
  /* Desktop keeps pre-W23 (no nav tokens). Mobile A1 values in @media ≤900. */
  --ax-maxw: 1680px;
  --ax-font: 'Silka', system-ui, -apple-system, 'Segoe UI', sans-serif;
  /* Section rhythm (D-W20-008 / amend D-W20-010) — M/L świadomie rozdzielone vs dominant reference */
  --ax-sec-pad-s: clamp(30px, 3.4vw, 54px);
  --ax-sec-pad-m: clamp(56px, 6.5vw, 104px);
  --ax-sec-pad-l: clamp(80px, 10vw, 152px);
  --ax-label-gap: clamp(16px, 2vw, 32px);
  /* Standalone divider band — owns air above the following section (D-W20-010) */
  --ax-div-pad-top: clamp(40px, 5vw, 72px);
  --ax-div-pad-bottom: clamp(20px, 2.4vw, 36px);
  /* glass calibrations (reference HTML = truth; see design-tokens.md section 6) */
  --ax-glass-dark-strong-bg: rgba(11,15,34,.42);
  --ax-glass-dark-strong-blur: blur(34px) saturate(180%);
  --ax-glass-dark-std-bg: rgba(20,24,51,.66);
  --ax-glass-dark-std-blur: blur(30px) saturate(180%);
  --ax-glass-dark-light-bg: rgba(20,26,58,.62);
  --ax-glass-dark-light-blur: blur(20px);
  --ax-glass-nav-bg: rgba(13,17,38,.56);
  --ax-glass-nav-blur: blur(26px) saturate(150%);
  --ax-glass-light-bg: rgba(255,255,255,.62);
  --ax-glass-light-blur: blur(18px);
  --ax-glass-overlay-bg: rgba(20,24,51,.72);
  --ax-glass-overlay-blur: blur(30px) saturate(180%);
  --ax-glass-card-blur: blur(12px);
  /* Photo badges (W16-F) — not chrome; per-element calibrations from reference */
  --ax-glass-photo-badge-light-bg: rgba(244, 241, 235, 0.62);
  --ax-glass-photo-badge-light-blur: blur(22px) saturate(160%); /* O nas historia */
  --ax-glass-photo-badge-light-blur-strong: blur(30px) saturate(180%); /* UL4 editorial */
  --ax-glass-photo-badge-dark-bg: rgba(20, 24, 51, 0.55);
  --ax-glass-photo-badge-dark-blur: blur(18px) saturate(160%); /* katalog grid */
  --ax-glass-photo-badge-pill-bg: rgba(14, 18, 38, 0.46);
  --ax-glass-photo-badge-pill-blur: blur(16px); /* gallery / bento captions */
  --ax-radius: 14px;
  --ax-radius-lg: 18px;
  --ax-pill: 999px;
}

/* W23-A1 — mobile-only nav metrics (desktop unchanged) */
@media (max-width: 900px) {
  :root {
    --ax-navh: 82px; /* [POMIAR] W23-0.3 */
    --ax-nav-scroll-gap: 16px; /* DOBIERZ accepted */
    /* Section rhythm — slightly more top/bottom air on mobile (desktop D-W20-008 intact) */
    --ax-sec-pad-s: clamp(40px, 5vw, 54px);
    --ax-sec-pad-m: clamp(68px, 8vw, 104px);
    --ax-sec-pad-l: clamp(96px, 12vw, 152px);
    --ax-label-gap: 20px;
    /* D-W20-010: mobile eyebrow air — 36→48→56 still read tight on ink. */
    --ax-div-pad-top: 64px;
    --ax-div-pad-bottom: 20px;
  }
}
