/* GENERATED by build.py from tokens.json - do not edit by hand. */
:root {
  --color-bg: #0E0A07;
  --color-bg-alt: #17120E;
  --color-bg-raised: #1D1713;
  --color-bg-raised-hover: #241C18;
  --color-bg-inverse: #F6F4F3;
  --color-text: #F6F4F3;
  --color-text-muted: #CFC9C6;
  --color-text-faint: #9A948F;
  --color-text-inverse: #0E0A07;
  --color-border: #2E2722;
  --color-border-strong: #3F352F;
  --color-accent: #E83C53;
  --color-accent-bright: #FF6378;
  --color-accent-deep: #FF6378;
  --color-accent-soft: rgba(232, 60, 83, 0.12);
  --color-accent-text: #0E0A07;
  --color-card-clay: #221512;
  --color-card-sand: #171410;
  --color-card-ash: #151311;
  --color-media-sand: #1A1612;
  --color-media-clay: #201412;
  --color-media-ash: #1A1613;
  --color-shadow-card: rgba(0, 0, 0, 0.6);
  --color-shadow-lift: rgba(0, 0, 0, 0.7);
  --font-sans: 'Instrument Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif;
  --font-display: 'Bricolage Grotesque', 'Instrument Sans', -apple-system, BlinkMacSystemFont, Helvetica, Arial, sans-serif;
  --font-mono: 'SF Mono', ui-monospace, Menlo, monospace;
  --font-size-xs: 0.8125rem;
  --font-size-sm: 0.9375rem;
  --font-size-base: 1.125rem;
  --font-size-lg: 1.5rem;
  --font-size-xl: 2rem;
  --font-size-2xl: 2.25rem;
  --font-size-3xl: clamp(2.5rem, 8.5vw, 5.5rem);
  --font-size-4xl: clamp(3.5rem, 13vw, 11rem);
  --font-size-5xl: clamp(4rem, 17vw, 16rem);
  --line-height-tight: 1.04;
  --line-height-snug: 1.3;
  --line-height-normal: 1.6;
  --tracking-display: -0.038em;
  --tracking-heading: -0.03em;
  --tracking-normal: 0em;
  --tracking-label: 0.08em;
  --font-weight-light: 300;
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --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-32: 8rem;
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --radius-xl: 16px;
  --radius-full: 9999px;
  --max-width: 1200px;
  --prose-width: 68ch;
  --gutter: 1.5rem;
  --header-height: 5.5rem;
  --breakpoint-sm: 640px;
  --breakpoint-md: 900px;
  --breakpoint-lg: 1200px;
  --ease-out: cubic-bezier(0.22, 1, 0.36, 1);
  --ease-spring: cubic-bezier(0.34, 1.3, 0.5, 1);
  --ease-reveal: cubic-bezier(0.16, 1, 0.3, 1);
  --filter-mono: grayscale(1) contrast(1.4) brightness(1.02);
  --color-light-bg: #FBFBFA;
  --color-light-bg-alt: #F3F3F2;
  --color-light-bg-raised: #EDEBEB;
  --color-light-bg-raised-hover: #E6E5E4;
  --color-light-bg-inverse: #120E0C;
  --color-light-text: #120E0C;
  --color-light-text-muted: #4C453F;
  --color-light-text-faint: #6B635E;
  --color-light-text-inverse: #FBFBFA;
  --color-light-border: #E0DEDD;
  --color-light-border-strong: #CAC7C6;
  --color-light-accent: #B41E32;
  --color-light-accent-bright: #8F1525;
  --color-light-accent-deep: #8F1525;
  --color-light-accent-soft: rgba(180, 30, 50, 0.10);
  --color-light-accent-text: #FFFFFF;
  --color-light-card-clay: #F2EBEB;
  --color-light-card-sand: #F2EEE7;
  --color-light-card-ash: #EEEBEA;
  --color-light-media-sand: #EDE9E1;
  --color-light-media-clay: #EEE8E8;
  --color-light-media-ash: #EAE9E7;
  --color-light-shadow-card: rgba(11, 16, 15, 0.14);
  --color-light-shadow-lift: rgba(11, 16, 15, 0.20);
  color-scheme: dark light;
}

@media (prefers-color-scheme: light) {
  :root:not([data-theme="dark"]) {
    --color-bg: #FBFBFA;
    --color-bg-alt: #F3F3F2;
    --color-bg-raised: #EDEBEB;
    --color-bg-raised-hover: #E6E5E4;
    --color-bg-inverse: #120E0C;
    --color-text: #120E0C;
    --color-text-muted: #4C453F;
    --color-text-faint: #6B635E;
    --color-text-inverse: #FBFBFA;
    --color-border: #E0DEDD;
    --color-border-strong: #CAC7C6;
    --color-accent: #B41E32;
    --color-accent-bright: #8F1525;
    --color-accent-deep: #8F1525;
    --color-accent-soft: rgba(180, 30, 50, 0.10);
    --color-accent-text: #FFFFFF;
    --color-card-clay: #F2EBEB;
    --color-card-sand: #F2EEE7;
    --color-card-ash: #EEEBEA;
    --color-media-sand: #EDE9E1;
    --color-media-clay: #EEE8E8;
    --color-media-ash: #EAE9E7;
    --color-shadow-card: rgba(11, 16, 15, 0.14);
    --color-shadow-lift: rgba(11, 16, 15, 0.20);
  }
}

:root[data-theme="light"] {
  --color-bg: #FBFBFA;
  --color-bg-alt: #F3F3F2;
  --color-bg-raised: #EDEBEB;
  --color-bg-raised-hover: #E6E5E4;
  --color-bg-inverse: #120E0C;
  --color-text: #120E0C;
  --color-text-muted: #4C453F;
  --color-text-faint: #6B635E;
  --color-text-inverse: #FBFBFA;
  --color-border: #E0DEDD;
  --color-border-strong: #CAC7C6;
  --color-accent: #B41E32;
  --color-accent-bright: #8F1525;
  --color-accent-deep: #8F1525;
  --color-accent-soft: rgba(180, 30, 50, 0.10);
  --color-accent-text: #FFFFFF;
  --color-card-clay: #F2EBEB;
  --color-card-sand: #F2EEE7;
  --color-card-ash: #EEEBEA;
  --color-media-sand: #EDE9E1;
  --color-media-clay: #EEE8E8;
  --color-media-ash: #EAE9E7;
  --color-shadow-card: rgba(11, 16, 15, 0.14);
  --color-shadow-lift: rgba(11, 16, 15, 0.20);
}
