:root {
    /* Backgrounds */
    --bg-main: #fbf9f6;
    --bg-alt:  #f2e7d8;

    /* Colors */
    --color-text:  #111;
    --color-white: #ffffff;
    --color-black: #000000;

    /* Typography */
    --font-primary: -apple-system, BlinkMacSystemFont, "Segoe UI",
                    Roboto, Helvetica, Arial, sans-serif;
    --font-body:    1.2rem;
    --line-body:    1.65;

    /* Layout */
    --container-width: 1200px;
    --container-wide:  1520px;

    /* Borders */
    --border-subtle: rgba(0, 0, 0, 0.10);
    --border-card:   1.5px solid rgba(0, 0, 0, 0.35);

    /* Border Radius */
    --radius-card: 16px;
    --radius-btn:  999px;

    /* Transitions */
    --transition-base:  0.25s ease;
    --transition-image: 0.35s ease;

    /* ── Spacing Scale (4px base) ── */
    --space-1:  0.25rem;   /*  4px */
    --space-2:  0.5rem;    /*  8px */
    --space-3:  0.75rem;   /* 12px */
    --space-4:  1rem;      /* 16px */
    --space-6:  1.5rem;    /* 24px */
    --space-8:  2rem;      /* 32px */
    --space-10: 2.5rem;    /* 40px */
    --space-12: 3rem;      /* 48px */
    --space-14: 3.5rem;    /* 56px */
    --space-16: 4rem;      /* 64px */
    --space-20: 5rem;      /* 80px */
    --space-24: 6rem;      /* 96px */

    /* ── Section Rhythm ── */
    --section-padding:        clamp(4rem, 7vw, 8rem);   /* 64px → 128px fluid */
    --section-header-gap:     clamp(2.5rem, 4vw, 5rem); /* 40px → 80px fluid */
    --container-padding-x:    clamp(1.25rem, 3vw, 2rem);/* 20px → 32px fluid */
}