:root {
    /* Brand Colors */
    --color-lightest: #DFD5C9;
    --color-light: #B09E8F;
    --color-medium: #967E6B;
    --color-dark: #573E30;

    /* Semantic Colors */
    --color-background: #DFD5C9;
    --color-surface: #FFFFFF;
    --color-text-primary: #573E30;
    --color-text-secondary: #967E6B;
    --color-border: #B09E8F;
    --color-accent: #967E6B;

    /* Typography */
    --font-family: 'Benzin', sans-serif;
    --tracking-heading: 0.3em;
    --tracking-body: 0.05em;

    /* Font Sizes - Mobile First */
    --text-xs: 0.75rem;      /* 12px */
    --text-sm: 0.875rem;     /* 14px */
    --text-base: 1rem;       /* 16px */
    --text-lg: 1.125rem;     /* 18px */
    --text-xl: 1.25rem;      /* 20px */
    --text-2xl: 1.5rem;      /* 24px */
    --text-3xl: 2rem;        /* 32px */
    --text-4xl: 2.5rem;      /* 40px */
    --text-5xl: 3rem;        /* 48px */

    /* Spacing */
    --space-xs: 0.5rem;      /* 8px */
    --space-sm: 1rem;        /* 16px */
    --space-md: 1.5rem;      /* 24px */
    --space-lg: 2rem;        /* 32px */
    --space-xl: 3rem;        /* 48px */
    --space-2xl: 4rem;       /* 64px */
    --space-3xl: 6rem;       /* 96px */

    /* Layout */
    --container-max-width: 1200px;
    --container-padding: var(--space-sm);
    --section-padding: var(--space-2xl);

    /* Transitions */
    --transition-fast: 150ms ease-in-out;
    --transition-base: 300ms ease-in-out;
    --transition-slow: 500ms ease-in-out;

    /* Shadows */
    --shadow-sm: 0 1px 2px rgba(87, 62, 48, 0.05);
    --shadow-md: 0 4px 6px rgba(87, 62, 48, 0.1);
    --shadow-lg: 0 10px 15px rgba(87, 62, 48, 0.1);

    /* Border Radius */
    --radius-sm: 4px;
    --radius-md: 8px;
    --radius-lg: 12px;

    /* Z-index */
    --z-navigation: 1000;
    --z-overlay: 900;
    --z-modal: 1100;
}

/* Tablet Breakpoint */
@media (min-width: 768px) {
    :root {
        --text-3xl: 2.5rem;      /* 40px */
        --text-4xl: 3rem;        /* 48px */
        --text-5xl: 4rem;        /* 64px */
        --container-padding: var(--space-md);
        --section-padding: var(--space-3xl);
    }
}

/* Desktop Breakpoint */
@media (min-width: 1024px) {
    :root {
        --text-5xl: 5rem;        /* 80px */
        --container-padding: var(--space-lg);
    }
}
