:root {
  /* Typography */
  --font-display: "Fraunces", "Cormorant Garamond", Georgia, serif;
  --font-ui: "Manrope", "Inter", "Segoe UI", sans-serif;
  --font-body: var(--font-ui);

  --text-2xs: 11px;
  --text-xs: 12px;
  --text-sm: 13px;
  --text-md: 14px;
  --text-base: 15px;
  --text-lg: 16px;
  --text-xl: 18px;
  --text-2xl: 22px;
  --text-3xl: 28px;
  --text-4xl: 36px;

  --lh-tight: 1.2;
  --lh-snug: 1.3;
  --lh-normal: 1.45;
  --lh-relaxed: 1.6;

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

  /* Spacing scale (Baklava-inspired scale rhythm, custom values) */
  --space-0: 0;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-7: 28px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-16: 64px;

  /* Radius */
  --radius-xs: 6px;
  --radius-sm: 10px;
  --radius-md: 14px;
  --radius-lg: 18px;
  --radius-xl: 24px;
  --radius-pill: 999px;

  /* Shadows / depth */
  --shadow-xs: 0 1px 2px rgba(17, 17, 17, 0.06);
  --shadow-sm: 0 4px 12px rgba(17, 17, 17, 0.08);
  --shadow-md: 0 8px 24px rgba(17, 17, 17, 0.10);
  --shadow-lg: 0 16px 40px rgba(17, 17, 17, 0.14);
  --shadow-focus: 0 0 0 3px rgba(138, 90, 59, 0.24);

  /* Motion */
  --ease-standard: cubic-bezier(0.2, 0, 0, 1);
  --ease-emphasized: cubic-bezier(0.2, 0.8, 0.2, 1);
  --dur-fast: 120ms;
  --dur-base: 180ms;
  --dur-slow: 280ms;

  /* Layering */
  --z-base: 1;
  --z-sticky: 100;
  --z-overlay: 400;
  --z-drawer: 500;
  --z-modal: 600;
  --z-toast: 700;

  /* Layout */
  --container-mobile-padding: 12px;
  --container-tablet-padding: 16px;
  --container-desktop-padding: 24px;
  --content-max: 1280px;

  /* Product image ratios */
  --ratio-product-card: 1 / 1;
  --ratio-hero-mobile: 16 / 9;
  --ratio-hero-desktop: 21 / 8;

  /* Color roles - warm-luxury commerce */
  --color-bg: #f7f5f1;
  --color-surface: #ffffff;
  --color-surface-soft: #f2eee8;
  --color-surface-elevated: #ffffff;
  --color-border: #e8e0d4;
  --color-border-strong: #d8ccb9;

  --color-text: #1f1a16;
  --color-text-soft: #5b5045;
  --color-text-muted: #837568;
  --color-text-inverse: #ffffff;

  --color-brand: #6c4a3b;
  --color-brand-strong: #513528;
  --color-brand-soft: #efe5df;

  --color-accent-commerce: #8a5a3b;
  --color-accent-commerce-strong: #6d442c;
  --color-accent-commerce-soft: #f3e8df;

  --color-success: #0f9f5f;
  --color-success-soft: #e8f7ef;
  --color-danger: #dc4b42;
  --color-danger-soft: #feeeec;
  --color-warning: #c48a00;
  --color-warning-soft: #fff6d6;
  --color-info: #2b6de5;
  --color-info-soft: #e9f0ff;

  /* Component sizing */
  --touch-target-min: 44px;
  --btn-height-sm: 36px;
  --btn-height-md: 44px;
  --btn-height-lg: 52px;
  --input-height: 46px;
  --header-height-mobile: 56px;
  --header-height-desktop: 72px;
}

/* Breakpoints (mobile-first) */
@custom-media --bp-sm (min-width: 480px);
@custom-media --bp-md (min-width: 768px);
@custom-media --bp-lg (min-width: 1024px);
@custom-media --bp-xl (min-width: 1280px);

/* Fallback comments for environments without @custom-media support:
   sm: 480px, md: 768px, lg: 1024px, xl: 1280px */
