/* Generated by design/build_tokens.py from design/tokens.json. Do not edit. */
:root {
  --h24-color-bg: #F4F7F8;
  --h24-color-surface: #FFFFFF;
  --h24-color-surface-sunken: #E5EFF1;
  --h24-color-surface-strong: #DAE6E9;
  --h24-color-nav: #FFFFFF;
  --h24-color-text: #1F2D33;
  --h24-color-text-muted: #4F6268;
  --h24-color-border: #DCE8EB;
  --h24-color-border-strong: #6E8289;
  --h24-color-primary: #0B6F7E;
  --h24-color-primary-hover: #085A66;
  --h24-color-on-primary: #FFFFFF;
  --h24-color-primary-container: #D9F2F4;
  --h24-color-on-primary-container: #003840;
  --h24-color-link: #0B6F7E;
  --h24-color-decor: #17A2B8;
  --h24-color-focus: #17A2B8;
  --h24-color-warning: #7A5210;
  --h24-color-warning-container: #F6E7C8;
  --h24-color-on-warning-container: #3F2E05;
  --h24-color-danger: #B3261E;
  --h24-color-danger-container: #F9DEDC;
  --h24-color-on-danger-container: #410E0B;
  --h24-color-success: #2E6B45;
  --h24-color-success-container: #DDF0E3;
  --h24-color-on-success-container: #0F2E1B;
  --h24-color-liturgical: #9B2C2C;
  --h24-font-serif: 'PT Serif', Georgia, 'Times New Roman', serif;
  --h24-font-sans: Geometria, system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
  --h24-type-display-family: var(--h24-font-serif);
  --h24-type-display-size: 2.5rem;
  --h24-type-display-line: 1.200;
  --h24-type-display-weight: 400;
  --h24-type-h1-family: var(--h24-font-serif);
  --h24-type-h1-size: 2rem;
  --h24-type-h1-line: 1.250;
  --h24-type-h1-weight: 400;
  --h24-type-h2-family: var(--h24-font-serif);
  --h24-type-h2-size: 1.625rem;
  --h24-type-h2-line: 1.308;
  --h24-type-h2-weight: 400;
  --h24-type-h3-family: var(--h24-font-serif);
  --h24-type-h3-size: 1.375rem;
  --h24-type-h3-line: 1.364;
  --h24-type-h3-weight: 400;
  --h24-type-h4-family: var(--h24-font-serif);
  --h24-type-h4-size: 1.25rem;
  --h24-type-h4-line: 1.400;
  --h24-type-h4-weight: 400;
  --h24-type-reading-family: var(--h24-font-serif);
  --h24-type-reading-size: 1.125rem;
  --h24-type-reading-line: 1.611;
  --h24-type-reading-weight: 400;
  --h24-type-body-family: var(--h24-font-sans);
  --h24-type-body-size: 1rem;
  --h24-type-body-line: 1.500;
  --h24-type-body-weight: 400;
  --h24-type-body-sm-family: var(--h24-font-sans);
  --h24-type-body-sm-size: 0.875rem;
  --h24-type-body-sm-line: 1.500;
  --h24-type-body-sm-weight: 400;
  --h24-type-label-family: var(--h24-font-sans);
  --h24-type-label-size: 0.9375rem;
  --h24-type-label-line: 1.333;
  --h24-type-label-weight: 500;
  --h24-type-caption-family: var(--h24-font-sans);
  --h24-type-caption-size: 0.8125rem;
  --h24-type-caption-line: 1.385;
  --h24-type-caption-weight: 400;
  --h24-type-eyebrow-family: var(--h24-font-sans);
  --h24-type-eyebrow-size: 0.75rem;
  --h24-type-eyebrow-line: 1.333;
  --h24-type-eyebrow-weight: 500;
  --h24-type-eyebrow-tracking: 0.08em;
  --h24-space-xxs: 4px;
  --h24-space-xs: 8px;
  --h24-space-sm: 12px;
  --h24-space-md: 16px;
  --h24-space-lg: 24px;
  --h24-space-xl: 32px;
  --h24-space-xxl: 48px;
  --h24-radius-xs: 4px;
  --h24-radius-sm: 8px;
  --h24-radius-md: 12px;
  --h24-radius-lg: 16px;
  --h24-radius-xl: 24px;
  --h24-radius-pill: 999px;
  --h24-size-tap: 48px;
  --h24-size-tap-min: 44px;
  --h24-size-measure: 68ch;
  --h24-size-container: 1200px;
  --h24-motion-fast: 150ms;
  --h24-motion-base: 250ms;
  --h24-motion-easing: cubic-bezier(0.2, 0, 0, 1);
  color-scheme: light;
}

html[data-theme="dark"] {
  --h24-color-bg: #17212B;
  --h24-color-surface: #1C2833;
  --h24-color-surface-sunken: #10202A;
  --h24-color-surface-strong: #2D414D;
  --h24-color-nav: #10202A;
  --h24-color-text: #EEF3F5;
  --h24-color-text-muted: #B4C5CA;
  --h24-color-border: #3B505B;
  --h24-color-border-strong: #91A5AE;
  --h24-color-primary: #74D9E6;
  --h24-color-primary-hover: #9BE5EE;
  --h24-color-on-primary: #09272D;
  --h24-color-primary-container: #24545D;
  --h24-color-on-primary-container: #CFF5FA;
  --h24-color-link: #74D9E6;
  --h24-color-decor: #17A2B8;
  --h24-color-focus: #74D9E6;
  --h24-color-warning: #E8C27A;
  --h24-color-warning-container: #4A3A1A;
  --h24-color-on-warning-container: #FBE3B6;
  --h24-color-danger: #FFB4AB;
  --h24-color-danger-container: #93000A;
  --h24-color-on-danger-container: #FFDAD6;
  --h24-color-success: #8FD4A4;
  --h24-color-success-container: #1F3A2A;
  --h24-color-on-success-container: #CDEFD7;
  --h24-color-liturgical: #F2A3A3;
  color-scheme: dark;
}

/* Before theme-switcher.js sets data-theme, follow the system setting. */
@media (prefers-color-scheme: dark) {
  html:not([data-theme]) {
    --h24-color-bg: #17212B;
    --h24-color-surface: #1C2833;
    --h24-color-surface-sunken: #10202A;
    --h24-color-surface-strong: #2D414D;
    --h24-color-nav: #10202A;
    --h24-color-text: #EEF3F5;
    --h24-color-text-muted: #B4C5CA;
    --h24-color-border: #3B505B;
    --h24-color-border-strong: #91A5AE;
    --h24-color-primary: #74D9E6;
    --h24-color-primary-hover: #9BE5EE;
    --h24-color-on-primary: #09272D;
    --h24-color-primary-container: #24545D;
    --h24-color-on-primary-container: #CFF5FA;
    --h24-color-link: #74D9E6;
    --h24-color-decor: #17A2B8;
    --h24-color-focus: #74D9E6;
    --h24-color-warning: #E8C27A;
    --h24-color-warning-container: #4A3A1A;
    --h24-color-on-warning-container: #FBE3B6;
    --h24-color-danger: #FFB4AB;
    --h24-color-danger-container: #93000A;
    --h24-color-on-danger-container: #FFDAD6;
    --h24-color-success: #8FD4A4;
    --h24-color-success-container: #1F3A2A;
    --h24-color-on-success-container: #CDEFD7;
    --h24-color-liturgical: #F2A3A3;
    color-scheme: dark;
  }
}
