:root {
  color-scheme: light;

  --color-ivory-50: #fcfaf6;
  --color-stone-100: #f5f0e8;
  --color-stone-150: #eee6da;
  --color-sand-200: #e3d8c9;
  --color-taupe-400: #a99884;
  --color-mocha-600: #6f6255;
  --color-espresso-800: #342c25;
  --color-olive-black-900: #1f231e;
  --color-champagne-500: #b89b63;
  --color-sage-300: #a8b0a0;
  --color-clay-300: #c8aa96;

  --color-bg-page: var(--color-stone-100);
  --color-bg-page-alt: var(--color-stone-150);
  --color-bg-surface: var(--color-ivory-50);
  --color-bg-surface-muted: #f2ece3;
  --color-bg-inverse: var(--color-olive-black-900);
  --color-bg-accent-soft: #f3ecdd;
  --color-text-primary: var(--color-espresso-800);
  --color-text-secondary: var(--color-mocha-600);
  --color-text-muted: #8a7b6d;
  --color-text-inverse: #f8f4ee;
  --color-border-subtle: var(--color-sand-200);
  --color-border-strong: #cdbca7;
  --color-accent: var(--color-champagne-500);
  --color-accent-strong: #8f7343;
  --color-link: var(--color-espresso-800);
  --color-link-hover: var(--color-accent-strong);
  --color-focus-ring: var(--color-accent-strong);

  --font-family-display: "Fraunces", "Cormorant Garamond", Georgia, serif;
  --font-family-body: "Instrument Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  --font-family-ui: "Instrument Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;

  --font-size-display-xl: clamp(3.5rem, 6vw, 6rem);
  --font-size-display-lg: clamp(2.75rem, 4.5vw, 4.5rem);
  --font-size-heading-1: clamp(2.25rem, 3vw, 3.25rem);
  --font-size-heading-2: clamp(1.75rem, 2.25vw, 2.375rem);
  --font-size-heading-3: clamp(1.375rem, 1.7vw, 1.75rem);
  --font-size-body-lg: 1.125rem;
  --font-size-body: 1rem;
  --font-size-body-sm: 0.9375rem;
  --font-size-label: 0.8125rem;
  --font-size-micro: 0.75rem;

  --line-height-display: 0.96;
  --line-height-heading: 1.05;
  --line-height-body: 1.55;
  --line-height-ui: 1.3;

  --letter-spacing-display: 0;
  --letter-spacing-heading: 0;
  --letter-spacing-label: 0.08em;
  --letter-spacing-button: 0.04em;

  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.5rem;
  --space-6: 2rem;
  --space-7: 3rem;
  --space-8: 4rem;
  --space-9: 6rem;
  --space-10: 8rem;

  --space-section-brand: clamp(5rem, 9vw, 8rem);
  --space-section-catalog: clamp(3.5rem, 6vw, 5rem);
  --space-section-tight: clamp(2.5rem, 4vw, 3.5rem);
  --space-card-padding: 1.25rem;
  --space-card-padding-lg: 1.5rem;
  --space-hero-padding-y: clamp(4.5rem, 8vw, 7rem);
  --space-grid-gap: clamp(1rem, 2vw, 1.75rem);

  --layout-max-content: 78rem;
  --layout-max-wide: 90rem;
  --layout-max-reading: 58rem;
  --layout-max-prose: 42rem;
  --layout-gutter: clamp(1rem, 3vw, 2rem);
  --layout-grid-columns: 12;

  --radius-none: 0;
  --radius-sm: 0.375rem;
  --radius-md: 0.75rem;
  --radius-lg: 1.25rem;
  --border-width-hairline: 1px;
  --border-width-strong: 1.5px;

  --shadow-none: none;
  --shadow-soft: 0 12px 30px rgba(31, 35, 30, 0.08);
  --shadow-lifted: 0 18px 40px rgba(31, 35, 30, 0.12);

  --duration-fast: 160ms;
  --duration-base: 240ms;
  --duration-slow: 360ms;
  --ease-standard: cubic-bezier(0.2, 0.8, 0.2, 1);
  --ease-soft: cubic-bezier(0.22, 0.61, 0.36, 1);

  --ratio-hero: 16 / 10;
  --ratio-category-feature: 4 / 3;
  --ratio-product-card: 1 / 1;
  --ratio-product-gallery-main: 4 / 3;
  --ratio-editorial-split: 6 / 7;

  --cta-primary-bg: var(--color-espresso-800);
  --cta-primary-text: #f8f4ee;
  --cta-primary-border: var(--color-espresso-800);
  --cta-primary-hover-bg: var(--color-olive-black-900);
  --cta-primary-height: 3rem;
  --cta-primary-padding-x: 1.25rem;
  --cta-primary-radius: var(--radius-sm);

  --cta-secondary-bg: transparent;
  --cta-secondary-text: var(--color-espresso-800);
  --cta-secondary-border: #cdbca7;
  --cta-secondary-hover-bg: #f2ece3;

  --card-product-bg: var(--color-ivory-50);
  --card-product-border: var(--color-sand-200);
  --card-product-padding: 1rem;
  --card-product-radius: var(--radius-md);
  --card-product-title-size: 1.125rem;

  --card-feature-bg: #f8f4ee;
  --card-feature-border: #d9ccbc;
  --card-feature-padding: 1.25rem;
  --card-feature-radius: var(--radius-lg);

  --page-mode-section-space: var(--space-section-catalog);
  --page-mode-heading-family: var(--font-family-display);
  --page-mode-surface: var(--color-bg-surface);
  --page-mode-card-surface: var(--color-bg-surface);
}
