:root {
  /* ---- Color: Asphalt (dark) ---- */
  --asphalt-900: #10131a;
  --asphalt-800: #181d26;
  --asphalt-700: #232a36;
  --asphalt-600: #313a49;
  --brand-navy: #3f4c5e;

  /* ---- Color: Chalk (light) ---- */
  --chalk-50: #f7f4ec;
  --chalk-100: #efe9db;
  --chalk-200: #e3dac6;

  /* ---- Color: Line paint ---- */
  --line-gold: #e3c35c;
  --line-gold-deep: #c6a23e;
  --line-white: #f5f3ec;

  /* ---- Text ---- */
  --ink: #181d26;
  --ink-soft: #4b5563;
  --paper: #f7f4ec;
  --paper-soft: rgba(247, 244, 236, 0.72);

  /* ---- Surfaces / overlays ---- */
  --overlay-dark-strong: rgba(14, 17, 23, 0.82);
  --overlay-dark-soft: rgba(14, 17, 23, 0.45);
  --hairline-dark: rgba(247, 244, 236, 0.14);
  --hairline-light: rgba(24, 29, 38, 0.12);

  /* ---- Type ---- */
  --font-display: "Archivo", "Arial Narrow", sans-serif;
  --font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;

  /* ---- Scale ---- */
  --fs-display-xl: clamp(2.75rem, 2.1rem + 3.4vw, 6.25rem);
  --fs-display-lg: clamp(2.25rem, 1.8rem + 2.3vw, 4rem);
  --fs-display-md: clamp(1.6rem, 1.4rem + 1vw, 2.5rem);
  --fs-heading: clamp(1.25rem, 1.1rem + 0.6vw, 1.75rem);
  --fs-body-lg: clamp(1.05rem, 1rem + 0.2vw, 1.25rem);
  --fs-body: 1rem;
  --fs-small: 0.875rem;
  --fs-label: 0.75rem;

  /* ---- Spacing ---- */
  --space-3xs: 0.25rem;
  --space-2xs: 0.5rem;
  --space-xs: 0.75rem;
  --space-sm: 1rem;
  --space-md: 1.75rem;
  --space-lg: 2.75rem;
  --space-xl: 4.5rem;
  --space-2xl: 7rem;
  --space-3xl: 10rem;

  /* ---- Layout ---- */
  --container-max: 78rem;
  --container-pad: clamp(1.25rem, 4vw, 3.5rem);
  --radius-sm: 4px;
  --radius-md: 10px;
  --radius-lg: 20px;

  /* ---- Motion ---- */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --dur-fast: 0.22s;
  --dur-med: 0.5s;
  --dur-slow: 0.9s;

  /* ---- Z-index ---- */
  --z-nav: 100;
  --z-overlay: 90;
  --z-canvas: 1;
  --z-content: 2;
}
