:root {
  /* Foundation */
  --color-bone:        #F4EFE6;
  --color-limestone:   #E8E1D3;
  --color-mortar:      #C8BEAE;

  /* Dark surfaces */
  --color-iron:        #1F1D1A;
  --color-iron-soft:   #2C2A26;
  --color-charcoal:    #3A3733;

  /* Accent */
  --color-brass:       #A87E3F;
  --color-brass-soft:  #C29C5C;

  /* Text hierarchy */
  --color-text-primary:       var(--color-iron);
  --color-text-secondary:     var(--color-charcoal);
  --color-text-muted:         #6B665E;
  --color-text-on-dark:       #EDE8DD;
  --color-text-muted-on-dark: #9A938A;

  /* States */
  --color-border:        #D9D2C2;
  --color-border-strong: #B5AC9A;
  --color-success:       #5C7A4A;
  --color-error:         #A8493A;

  /* Typography */
  --font-display: 'Source Serif 4', 'Source Serif Pro', Georgia, serif;
  --font-body:    'Inter', -apple-system, BlinkMacSystemFont, sans-serif;

  /* Type scale */
  --type-display-xl:  clamp(3.5rem, 6vw + 1rem, 6.5rem);
  --type-display-lg:  clamp(2.75rem, 4vw + 1rem, 4.5rem);
  --type-display-md:  clamp(2.25rem, 3vw + 0.75rem, 3.5rem);
  --type-display-sm:  clamp(1.75rem, 2vw + 0.5rem, 2.25rem);
  --type-body-lg:     1.25rem;
  --type-body-md:     1.0625rem;
  --type-body-sm:     0.9375rem;
  --type-body-xs:     0.8125rem;
  --type-eyebrow:     0.75rem;

  /* Line heights */
  --leading-display:  1.08;
  --leading-heading:  1.18;
  --leading-body:     1.6;
  --leading-tight:    1.4;

  /* Tracking */
  --tracking-display: -0.02em;
  --tracking-eyebrow: 0.18em;
  --tracking-button:  0.12em;

  /* Container widths */
  --container-narrow:  720px;
  --container-default: 1200px;
  --container-wide:    1400px;
  --container-edge:    1600px;
  --gutter-mobile:     20px;
  --gutter-tablet:     32px;
  --gutter-desktop:    56px;

  /* Spacing (8pt grid) */
  --space-1:  4px;
  --space-2:  8px;
  --space-3:  12px;
  --space-4:  16px;
  --space-5:  24px;
  --space-6:  32px;
  --space-7:  48px;
  --space-8:  64px;
  --space-9:  96px;
  --space-10: 128px;
  --space-11: 160px;
  --space-12: 200px;

  /* Border radius */
  --radius-none: 0;
  --radius-xs:   2px;
  --radius-sm:   4px;
  --radius-md:   6px;
  --radius-lg:   8px;
  --radius-pill: 999px;

  /* Motion */
  --ease-default: cubic-bezier(0.4, 0, 0.2, 1);
  --ease-out:     cubic-bezier(0.16, 1, 0.3, 1);
  --duration-fast:   200ms;
  --duration-medium: 400ms;
  --duration-slow:   700ms;
}
