:root {
    --color-sage: #f0f0ea;
    --color-muted-teal: #8faeaa;
    --color-dusty-blue: #b7c7d6;
    --color-warm-sand: #e7dcc4;
    --color-pale-beige: #f3efe6;
    --color-soft-clay: #3a473f;
    --color-cream: #fbf9f6;
    --color-deep-sage: #2e3b34;
    --color-dark-teal: #3d4f4d;
    --color-slate-blue: #3f4b5a;
    --color-warm-charcoal: #2a2f33;
    --color-dark-sand: #3a3328;
    --color-warm-cream: #e8e3da;
    --color-white: #ffffff;
    --font-heading: "Playfair Display", Georgia, serif;
    --font-body: "Inter", Arial, sans-serif;
    --container-max: 1180px;
    --space-1: 0.25rem;
    --space-2: 0.5rem;
    --space-3: 0.75rem;
    --space-4: 1rem;
    --space-5: 1.25rem;
    --space-6: 1.5rem;
    --space-8: 2rem;
    --space-10: 2.5rem;
    --space-12: 3rem;
    --space-16: 4rem;
    --space-20: 5rem;
    --space-24: 6rem;
    --radius-sm: 0.375rem;
    --radius-md: 0.75rem;
    --radius-lg: 0.85rem;
    --radius-xl: 1rem;
    --radius-2xl: 1.2rem;
    --radius-pill: 8px;
    --shadow-soft: 0 8px 16px rgba(46, 59, 52, 0.12);
    --shadow-card: 0 4px 10px rgba(46, 59, 52, 0.08);
    --shadow-strong: 0 10px 20px rgba(24, 33, 29, 0.18);
    --transition-base: 220ms ease;
    --transition-slow: 420ms ease;
    --timeline-number: 1rem;
    --card-icon: 2rem;
    --text-xs: 0.8125rem;
    --text-sm: 0.9375rem;
    --text-base: 1rem;
    --text-lg: 1.125rem;
    --text-xl: 1.25rem;
    --text-2xl: clamp(1.8rem, 2vw + 1.2rem, 2.75rem);
    --text-3xl: clamp(2.6rem, 4vw + 1rem, 5rem);
    --leading-tight: 1.1;
    --leading-normal: 1.6;
    --leading-relaxed: 1.8;
    --breakpoint-md: 48rem;
    --breakpoint-lg: 64rem;
    --page-bg: var(--color-cream);
    --surface: var(--color-pale-beige);
    --surface-soft: var(--color-white);
    --surface-strong: rgba(255, 255, 255, 0.72);
    --text-main: #26312c;
    --text-muted: #5f6f67;
    --text-soft: #728078;
    --accent: var(--color-sage);
    --accent-strong: var(--color-soft-clay);
    --accent-ink: #3f584d;
    --border-soft: rgba(77, 95, 86, 0.14);
    --line-soft: rgba(119, 137, 127, 0.18);
    --hero-glow: radial-gradient(circle at top left, rgba(255, 255, 255, 0.65), transparent 55%);
    --section-wash: linear-gradient(180deg, rgba(243, 239, 230, 0.55), rgba(255, 255, 255, 0));
    --focus-ring: rgba(214, 154, 122, 0.72);
}
