:root {
    --color-charcoal-brown: #34403a;
    --color-bright-snow: #fcfcfc;
    --color-grey-olive: #859185;
    --color-faded-cooper: #8f6f5c;
    --color-sand: #ccbd7e;
    --color-sand-600: #9a7639;
    --color-deep-space-blue: #00314c;
    --color-grey-olive-50: #f3f4f3;
    --color-grey-olive-100: #d9ddd9;
    --color-grey-olive-200: #c6ccc6;
    --color-grey-olive-300: #a7b5a7;
    --color-grey-olive-400: #96a796;
    --color-grey-olive-500: #829182;
    --color-grey-olive-600: #778477;
    --color-grey-olive-700: #596759;
    --color-grey-olive-800: #435043;
    --color-grey-olive-900: #333d33;
    --color-faded-cooper-50: #f4f1ef;
    --color-faded-cooper-100: #dcd2cc;
    --color-faded-cooper-200: #cbbdb4;
    --color-faded-cooper-300: #b49f92;
    --color-faded-cooper-400: #a58c7d;
    --color-faded-cooper-500: #8f6f5c;
    --color-faded-cooper-600: #826554;
    --color-faded-cooper-700: #664f41;
    --color-faded-cooper-800: #4f3d33;
    --color-faded-cooper-900: #3c2f27;
    --color-white: #f5f5f5;
    --color-silver: #e6e5e5;
    --color-grey: #999999;
    --color-dim-grey: #666666;
    --color-graphite: #333333;
    --color-black: #101513;
    --bg-default: var(--color-white);
    --bg-subtle: var(--color-silver);
    --bg-muted: var(--color-grey-olive-100);
    --bg-accent: var(--color-faded-cooper-700);
    --bg-strong: var(--color-grey-olive-900);
    --bg-disabled: var(--color-grey-olive-100);
    --text-primary: var(--color-graphite);
    --text-secondary: var(--color-dim-grey);
    --text-tertiary: var(--color-grey);
    --text-accent: var(--color-faded-cooper-500);
    --text-on-accent: var(--color-white);
    --text-disabled: var(--color-grey);
    --heading-color: var(--color-faded-cooper-500);
    --scrim-photo: rgb(0 0 0 / 0.6);
    --scrim-karta: rgb(0 0 0 / 0.7);
    --scrim-tint: var(--color-faded-cooper-500);
    --shadow-on-photo: 0 4px 54px color-mix(in srgb, var(--color-black) 90%, transparent);
    --border-default: var(--color-grey-olive-200);
    --border-strong: var(--color-grey-olive-500);
    --border-focus: var(--color-faded-cooper-300);
    --border-accent: var(--color-faded-cooper-700);
    --link-button-default: var(--color-faded-cooper-700);
    --link-button-hover: var(--color-faded-cooper-600);
    --link-button-pressed: var(--color-faded-cooper-800);
    --link-button-stroke: var(--color-faded-cooper-300);
    --link-on-dark-default: var(--color-sand);
    --link-on-dark-hover: var(--color-sand);
    --link-on-dark-pressed: var(--color-faded-cooper-200);
    --link-on-dark-stroke: var(--color-faded-cooper-300);
    --link-on-photo-default: var(--color-white);
    --link-on-photo-hover: var(--color-faded-cooper-200);
    --link-on-photo-pressed: var(--color-faded-cooper-300);
    --link-on-photo-stroke: var(--color-faded-cooper-300);
    --link-heading-default: var(--heading-color);
    --link-heading-hover: var(--color-faded-cooper-600);
    --link-heading-pressed: var(--color-faded-cooper-800);
    --link-heading-stroke: var(--color-faded-cooper-200);
    --link-disabled-bg: var(--bg-disabled);
    --link-disabled-text: var(--color-grey);
    --icon-button-bg-default: var(--color-faded-cooper-700);
    --icon-button-bg-hover: var(--color-faded-cooper-600);
    --icon-button-bg-pressed: var(--color-faded-cooper-800);
    --footer-bg: var(--color-grey-olive-900);
    --footer-border: var(--color-grey-olive-800);
    --footer-link: var(--link-on-dark-default);
    --footer-text: var(--color-silver);
    --footer-muted: var(--color-dim-grey);
    --error-bg: var(--color-silver);
    --error-heading: var(--heading-color);
    --error-text: var(--color-dim-grey);
    --error-link: var(--link-button-default);
    --error-photo-shade: var(--color-grey-olive-700);
    --space-0: 0;
    --space-4: 4px;
    --space-8: 8px;
    --space-12: 12px;
    --space-16: 16px;
    --space-20: 20px;
    --space-24: 24px;
    --space-28: 28px;
    --space-32: 32px;
    --space-36: 36px;
    --space-40: 40px;
    --space-48: 48px;
    --space-56: 56px;
    --space-64: 64px;
    --space-72: 72px;
    --space-96: 96px;
    --space-120: 120px;
    --space-144: 144px;
    --space-168: 168px;
    --space-xs: 6px;
    --space-sm: 8px;
    --space-md: 16px;
    --space-lg: 24px;
    --space-xl: 32px;
    --space-2xl: 48px;
    --font-primary: 'Alexandria', 'Noto Sans', sans-serif;
    --font-display: 'Alexandria', 'Noto Sans', sans-serif;
    --font-mono: 'Courier New', monospace;
    --font-button-secondary: 'Montserrat', sans-serif;
    --ease-out: cubic-bezier(0.2, 0.8, 0.2, 1);
    --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
    --duration-fast: 120ms;
    --duration-base: 200ms;
    --duration-slow: 320ms;
    --duration-slower: 600ms;
    --radius-sm: 2px;
    --radius-md: 4px;
    --radius-round: 999px;
    --shadow-focus: 0 0 0 3px var(--border-focus);
}
