:root {
    /* Brand Colors */
    --color-navy: #1B2B3A;
    --color-charcoal: #2D3A45;
    --color-brand-blue: #2B6CB0;
    --color-brand-blue-dark: #1E5A9E;
    --color-brand-blue-light: #3B7DD8;
    --color-offwhite: #F7F5F0;
    --color-cream: #FAF8F5;
    --color-white: #FFFFFF;
    --color-warm-gray: #E8E4DE;
    --color-light-gray: #F0EDEA;
    --color-border: #DDD8D0;

    /* Text Colors */
    --color-text-primary: #1B2B3A;
    --color-text-secondary: #5A6670;
    --color-text-light: #8A9199;
    --color-text-inverse: #FFFFFF;

    /* Status Colors */
    --color-success: #2D8B4E;
    --color-error: #C53030;
    --color-warning: #D69E2E;

    /* Typography */
    --font-heading: 'Fraunces', 'Georgia', serif;
    --font-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

    /* Font Sizes - Fluid */
    --font-size-hero: clamp(2.5rem, 5vw, 4rem);
    --font-size-h1: clamp(2rem, 4vw, 3rem);
    --font-size-h2: clamp(1.5rem, 3vw, 2.25rem);
    --font-size-h3: clamp(1.25rem, 2vw, 1.5rem);
    --font-size-h4: clamp(1.1rem, 1.5vw, 1.25rem);
    --font-size-body: 1rem;
    --font-size-body-lg: 1.125rem;
    --font-size-small: 0.875rem;
    --font-size-xs: 0.75rem;

    /* Line Heights */
    --line-height-heading: 1.15;
    --line-height-body: 1.7;
    --line-height-tight: 1.3;

    /* Font Weights */
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --font-weight-extrabold: 800;

    /* Spacing */
    --section-padding-y: clamp(4rem, 8vw, 7rem);
    --section-padding-x: clamp(1.25rem, 5vw, 6rem);
    --container-max: 1200px;
    --container-narrow: 800px;
    --gap-xs: 0.5rem;
    --gap-sm: 1rem;
    --gap-md: 1.5rem;
    --gap-lg: 2.5rem;
    --gap-xl: 4rem;

    /* Border Radius */
    --radius-sm: 6px;
    --radius-md: 10px;
    --radius-lg: 16px;
    --radius-xl: 24px;
    --radius-full: 9999px;

    /* Shadows */
    --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.06);
    --shadow-card: 0 2px 12px rgba(0, 0, 0, 0.06);
    --shadow-elevated: 0 8px 30px rgba(0, 0, 0, 0.1);
    --shadow-hover: 0 12px 40px rgba(0, 0, 0, 0.12);

    /* Transitions */
    --transition-fast: 150ms ease;
    --transition-base: 250ms ease;
    --transition-slow: 400ms ease;

    /* Z-indexes */
    --z-header: 100;
    --z-overlay: 200;
    --z-modal: 300;
}
