:root {
  /* Brand / colour tokens */
  --vj-color-brand-primary: #171717;
  --vj-color-primary-700: #3B3B38;
  --vj-color-brand-accent: #A86645;
  --vj-color-bg-canvas: #F8F7F4;
  --vj-color-bg-page: #F8F7F4;
  --vj-shadow-sm: 0 4px 16px rgb(23 23 23 / 5%);
  --vj-shadow-md: 0 14px 35px rgb(23 23 23 / 8%);
  --vj-focus-ring: 0 0 0 3px rgb(168 102 69 / 28%);
  --vj-color-bg-surface: #FFFFFF;
  --vj-color-bg-muted: #F2F0EB;
  --vj-color-text-primary: #171717;
  --vj-color-text-secondary: #45423C;
  --vj-color-text-muted: #777166;
  --vj-color-text-disabled: #969083;
  --vj-color-border-default: #E4E1D9;
  --vj-color-success: #2F6B4F;
  --vj-color-warning: #A66A1F;
  --vj-color-error: #A84444;
  --vj-color-info: #47627A;
  /* Compatibility aliases for legacy component rules; use semantic tokens in new work. */
  --vj-color-bg: var(--vj-color-bg-page);
  --vj-color-surface: var(--vj-color-bg-surface);
  --vj-color-surface-muted: var(--vj-color-bg-muted);
  --vj-color-ink: var(--vj-color-text-primary);
  --vj-color-success-surface: color-mix(in srgb, var(--vj-color-success) 10%, var(--vj-color-bg-surface));
  --vj-color-error-surface: color-mix(in srgb, var(--vj-color-error) 10%, var(--vj-color-bg-surface));

  /* Layout */
  --vj-space-1: 0.25rem;
  --vj-space-2: 0.5rem;
  --vj-space-3: 0.75rem;
  --vj-space-4: 1rem;
  --vj-space-5: 1.25rem;
  --vj-space-6: 1.5rem;
  --vj-space-7: 1.75rem;
  --vj-space-8: 2rem;
  --vj-space-10: 2.5rem;
  --vj-space-12: 3rem;
  --vj-space-14: 3.5rem;
  --vj-space-16: 4rem;
  --vj-space-20: 5rem;
  --vj-space-24: 6rem;
  --vj-space-32: 8rem;
  --vj-content-width: 760px;
  --vj-wide-width: 1280px;
  --vj-container-gutter: 1rem;
  --vj-ui-gap: clamp(1rem, 2vw, 1.5rem);
  --vj-section-space: clamp(4rem, 7vw, 6rem);
  --vj-grid-gap: clamp(1rem, 2.5vw, 2rem);

  /* Typography: shared scale, language-specific values below */
  --vj-font-fa: "Vazirmatn", Tahoma, Arial, sans-serif;
  --vj-font-en: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --vj-font-code: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;

  --vj-font-weight-regular: 400;
  --vj-font-weight-medium: 500;
  --vj-font-weight-semibold: 600;
  --vj-font-weight-bold: 700;

  --vj-font-body-fa: 1rem;
  --vj-font-body-fa-mobile: 1rem;
  --vj-font-body-en: 1.0625rem;
  --vj-font-body-en-mobile: 1rem;
  --vj-font-lead-fa: clamp(1.0625rem, 1.15vw, 1.25rem);
  --vj-font-lead-en: clamp(1.125rem, 1.3vw, 1.3125rem);

  --vj-font-display-xl-fa: clamp(2.25rem, 4.2vw, 3.5rem);
  --vj-font-display-l-fa: clamp(2rem, 3.7vw, 3.25rem);
  --vj-font-h1-fa: clamp(2rem, 3.2vw, 2.75rem);
  --vj-font-h2-fa: clamp(1.5rem, 2.2vw, 2rem);
  --vj-font-h3-fa: clamp(1.25rem, 1.55vw, 1.5rem);
  --vj-font-display-xl-en: clamp(2.625rem, 4.8vw, 4rem);
  --vj-font-display-l-en: clamp(2.375rem, 4.2vw, 3.5rem);
  --vj-font-h1-en: clamp(2.125rem, 3.5vw, 3rem);
  --vj-font-h2-en: clamp(1.75rem, 2.8vw, 2.25rem);
  --vj-font-h3-en: clamp(1.375rem, 2vw, 1.75rem);

  --vj-line-body-fa: 1.9;
  --vj-line-body-en: 1.65;
  --vj-line-lead-fa: 1.85;
  --vj-line-lead-en: 1.6;
  --vj-line-display-fa: 1.18;
  --vj-line-display-en: 1.05;
  --vj-line-h1-fa: 1.3;
  --vj-line-h1-en: 1.15;
  --vj-line-h2-fa: 1.35;
  --vj-line-h2-en: 1.2;
  --vj-line-h3-fa: 1.4;
  --vj-line-h3-en: 1.25;

  --vj-track-display-en: -0.025em;
  --vj-track-heading-en: -0.015em;
  --vj-track-fa: 0;
  --vj-article-measure-fa: 45rem;
  --vj-article-measure-en: 48rem;

  /* Component */
  --vj-radius-sm: 8px;
  --vj-radius-md: 12px;
  --vj-radius-lg: 16px;
  --vj-radius-pill: 999px;
  --vj-control-height: 2.75rem;
  --vj-control-height-lg: 3.25rem;
  --vj-control-padding-inline: 1rem;
  --vj-control-padding-block: 0.68rem;
  --vj-control-radius: var(--vj-radius-pill);
  --vj-control-font-size: 0.9375rem;
  --vj-label-size: 0.82rem;
  --vj-border-width: 1px;
  --vj-border-width-strong: 3px;
  --vj-motion-fast: 0.18s;
  --vj-motion-standard: 0.2s;
  --vj-focus-width: 3px;
  --vj-focus-offset: 3px;
  --vj-color-on-brand: #FFFFFF;
  --vj-color-on-dark: #F8F7F4;
  --vj-color-surface-code: #222222;
}
