:root {
    /* ── Palette — Cold Editorial Luxury ─────────────────────────────────── */
    --color-bg:           #F8F8F8;
    --color-text:         #0C0C0C;
    --color-accent:       #B8935A;
    --color-accent-light: #D4B080;
    --color-muted:        #767672;
    --color-border:       rgba(12,12,12,0.09);
    --color-surface:      #EFEFED;
    --color-surface-dark: #141414;
    --color-dark:         #0C0C0C;

    /* ── Typography ──────────────────────────────────────────────────────── */
    --font-heading: 'Playfair Display', Georgia, serif;
    --font-body:    'DM Sans', system-ui, sans-serif;

    --text-xs:   0.75rem;
    --text-sm:   0.875rem;
    --text-base: 1rem;
    --text-lg:   1.125rem;
    --text-xl:   1.25rem;
    --text-2xl:  1.5rem;
    --text-3xl:  clamp(1.875rem, 1.5rem + 1.5vw, 2.75rem);
    --text-4xl:  clamp(2.25rem,  1.5rem + 3vw,   4rem);
    --text-hero: clamp(3rem,     2rem   + 5vw,    7rem);

    /* ── Spacing ─────────────────────────────────────────────────────────── */
    --space-1:       0.25rem;
    --space-2:       0.5rem;
    --space-3:       0.75rem;
    --space-4:       1rem;
    --space-6:       1.5rem;
    --space-8:       2rem;
    --space-12:      3rem;
    --space-16:      4rem;
    --space-24:      6rem;
    --space-section: clamp(5rem, 3rem + 7vw, 12rem);

    /* ── Shape ───────────────────────────────────────────────────────────── */
    --radius-sm: 2px;
    --radius-md: 3px;
    --radius-lg: 6px;

    /* ── Elevation ───────────────────────────────────────────────────────── */
    --shadow-sm: 0 1px 3px rgba(0,0,0,0.05);
    --shadow-md: 0 4px 20px rgba(0,0,0,0.07);
    --shadow-lg: 0 8px 40px rgba(0,0,0,0.10);

    /* ── Motion ──────────────────────────────────────────────────────────── */
    --duration-fast:   150ms;
    --duration-normal: 300ms;
    --duration-slow:   500ms;
    --ease-out:        cubic-bezier(0.16, 1, 0.3, 1);

    /* ── Layout ──────────────────────────────────────────────────────────── */
    --header-height:  72px;
    --container-max:  1280px;
    --container-pad:  clamp(1rem, 4vw, 3rem);
}
