/* system: ledger */
/* Newsroom Ledger — generated from tokens.json */
:root, [data-theme="light"] {
  --canvas: #ffffff;
  --surface-alt: #efefef;
  --surface-raised: #f8f8f8;
  --ink: #000000;
  --ink-soft: #3c3c3c;
  --ink-muted: #767676;
  --ink-caption: #545454;
  --line: #b3b3b3;
  --line-soft: #cccccc;
  --line-faint: #efefef;
  --accent: #0064fa;
  --on-accent: #ffffff;
  --link: var(--accent);
  --signal: #e51503;
  --category-ink: var(--ink);
  --inverse: #000000;
  --on-inverse: #ffffff;
  --input-ink: #000000;
  --header-surface: #000000;
  --on-header: #ffffff;
  --header-line: #3c3c3c;
  --nav-surface: #1c1c1c;
  --on-nav: #ffffff;
  --on-nav-muted: #999999;
  --nav-line: var(--nav-surface);
  --cta: #ffffff;
  --on-cta: #000000;
  --cta-line: #767676;
  --footer-surface: #1c1c1c;
  --on-footer: #ffffff;
  --on-footer-muted: #999999;
  --footer-line: #3c3c3c;
  --footer-button: #ffffff;
  --on-footer-button: #000000;
  --input-line: var(--line-soft);
  --positive: #1b7f3b;
  --negative: #b3261e;
  --scrim: rgba(0, 0, 0, 0.55);
  --on-scrim: #ffffff;
  --focus-ring: 0 0 0 2px #ffffff, 0 0 0 4px #0064fa;
}
[data-theme="dark"] {
  --canvas: #121212;
  --surface-alt: #1f1f1f;
  --surface-raised: #1a1a1a;
  --ink: #ffffff;
  --ink-soft: #cfcfcf;
  --ink-muted: #a3a3a3;
  --ink-caption: #a3a3a3;
  --line: #3c3c3c;
  --line-soft: #2e2e2e;
  --line-faint: #1f1f1f;
  --accent: #5c9dff;
  --on-accent: #121212;
  --signal: #ff6b5a;
  --inverse: #ffffff;
  --on-inverse: #000000;
  --input-ink: #ffffff;
  --header-surface: #000000;
  --on-header: #ffffff;
  --header-line: #3c3c3c;
  --nav-surface: #1c1c1c;
  --on-nav: #ffffff;
  --on-nav-muted: #999999;
  --cta: #ffffff;
  --on-cta: #000000;
  --cta-line: #767676;
  --footer-surface: #000000;
  --on-footer: #ffffff;
  --on-footer-muted: #999999;
  --footer-line: #3c3c3c;
  --footer-button: #ffffff;
  --on-footer-button: #000000;
  --positive: #5cc98a;
  --negative: #ff8a80;
  --scrim: rgba(0, 0, 0, 0.6);
  --on-scrim: #ffffff;
  --focus-ring: 0 0 0 2px #121212, 0 0 0 4px #5c9dff;
}
:root {
  --space-2xs: 4px;
  --space-xs: 6px;
  --space-sm: 8px;
  --space-md: 16px;
  --space-lg: 24px;
  --space-xl: 24px;
  --space-2xl: 32px;
  --space-3xl: 35px;
  --space-4xl: 40px;
  --space-5xl: 48px;
  --space-6xl: 60px;
  --radius-none: 0px;
  --radius-xs: 2px;
  --radius-sm: 9999px;
  --radius-md: 4px;
  --radius-full: 9999px;
  --border-hairline: 1px;
  --border-quote: 2px;
  --border-active: 3px;
  --container-width: 1374px;
  --container-gutter: 24px;
  --main-column: 900px;
  --measure: 720px;
  --masthead-height: 80px;
  --nav-height: 40px;
  --button-height: 28px;
  --input-height: 40px;
  --masthead-columns: auto 1fr;
  --masthead-tools: none;
  --masthead-search: inline-flex;
  --masthead-transform: none;
  --nav-justify: flex-start;
  --nav-first-pad: 0px;
  --lead-align: left;
  --lead-justify: flex-start;
  --lead-excerpt-margin: 0px;
  --ratio-standard: 3 / 2;
  --ratio-side: 3 / 2;
  --label-transform: none;
  --category-transform: none;
  --section-rule: 0px;
  --container-fluid: 100%;
  --btn-primary-pad-x: 10px;
  --btn-primary-height: 30px;
  --btn-primary-hover: brightness(0.94);
  --btn-primary-border: var(--border-hairline);
  --btn-default-pad-x: 16px;
  --btn-inverse-height: 38px;
  --nav-indicator-inset: var(--space-md);
  --nav-indicator-top: auto;
  --nav-indicator-bottom: 0px;
  --section-align: center;
  --section-pad: var(--space-xs);
  --section-link-height: var(--button-height);
  --section-link-pad: 0 16px;
  --section-link-border: var(--border-hairline);
  --section-link-size: 14px;
  --section-link-leading: normal;
  --section-link-weight: 500;
  --section-link-ink: var(--ink);
  --section-link-offset: 0px;
  --section-link-suffix: none;
  --section-link-hover: none;
  --category-gap: var(--space-2xs);
  --category-underline: 1px;
  --list-pad: var(--space-md);
  --masthead-align: left;
  --standfirst-ink: var(--ink-soft);
  --footer-pad: 0 0 var(--space-5xl);
  --footer-edge: 0px;
  --footer-tagline: none;
  --label-tracking: normal;
  --font-sans: "Hanken Grotesk", "Helvetica Neue", Helvetica, Arial, sans-serif;
  --font-serif: Newsreader, Georgia, Cambria, "Times New Roman", serif;
  --type-masthead: 700 36px/40px var(--font-sans);
  --type-masthead-tracking: -0.5px;
  --type-article-title: 500 44px/46.2px var(--font-sans);
  --type-article-title-tracking: 0.5px;
  --type-headline-lead: 500 32px/33.6px var(--font-sans);
  --type-headline-lead-tracking: 0.48px;
  --type-article-h2: 500 28px/29.4px var(--font-sans);
  --type-article-h2-tracking: 0.42px;
  --type-article-h3: 500 22px/26.4px var(--font-sans);
  --type-article-h3-tracking: normal;
  --type-headline-card: 500 16px/19.2px var(--font-sans);
  --type-headline-card-tracking: normal;
  --type-headline-side: 500 20px/24px var(--font-sans);
  --type-headline-side-tracking: normal;
  --type-headline-list: 500 16px/19.2px var(--font-sans);
  --type-headline-list-tracking: normal;
  --type-section-label: 700 16px/19.2px var(--font-sans);
  --type-section-label-tracking: normal;
  --type-category: 400 14px/15.4px var(--font-sans);
  --type-category-tracking: normal;
  --type-nav: 500 14px/40px var(--font-sans);
  --type-nav-tracking: 0.2px;
  --type-nav-sub: 500 14px/21px var(--font-sans);
  --type-nav-sub-tracking: 0.2px;
  --type-button: 500 14px/21px var(--font-sans);
  --type-button-tracking: 0.2px;
  --type-meta: 400 14px/16.8px var(--font-sans);
  --type-meta-tracking: normal;
  --type-standfirst: 400 20px/28px var(--font-sans);
  --type-standfirst-tracking: normal;
  --type-excerpt: 400 14px/18.2px var(--font-sans);
  --type-excerpt-tracking: normal;
  --type-caption: 400 14px/19.6px var(--font-sans);
  --type-caption-tracking: normal;
  --type-ui: 400 16px/24px var(--font-sans);
  --type-ui-tracking: normal;
  --type-article-body: 400 18px/28px var(--font-sans);
  --type-article-body-tracking: normal;
  --type-pull-quote: 400 28px/33.6px var(--font-serif);
  --type-pull-quote-tracking: normal;
  --type-footer-brand: 700 28px/42px var(--font-sans);
  --type-footer-brand-tracking: -0.5px;
  --type-footer-tagline: 400 16px/24px var(--font-sans);
  --type-footer-tagline-tracking: normal;
  --type-footer-heading: 500 14px/21px var(--font-sans);
  --type-footer-heading-tracking: 0.2px;
  --type-footer-link: 500 14px/21px var(--font-sans);
  --type-footer-link-tracking: 0.2px;
  --type-footer-action: 500 14px/21px var(--font-sans);
  --type-footer-action-tracking: 0.2px;
  --type-footer-small: 400 14px/21px var(--font-sans);
  --type-footer-small-tracking: normal;
  --footer-arrangement: columns;
}
.masthead { font-family: var(--font-sans); font-size: 36px; line-height: 40px; font-weight: 700; letter-spacing: -0.5px; }
.article-title { font-family: var(--font-sans); font-size: 44px; line-height: 46.2px; font-weight: 500; letter-spacing: 0.5px; }
.headline-lead { font-family: var(--font-sans); font-size: 32px; line-height: 33.6px; font-weight: 500; letter-spacing: 0.48px; }
.article-h2 { font-family: var(--font-sans); font-size: 28px; line-height: 29.4px; font-weight: 500; letter-spacing: 0.42px; }
.article-h3 { font-family: var(--font-sans); font-size: 22px; line-height: 26.4px; font-weight: 500; }
.headline-card { font-family: var(--font-sans); font-size: 16px; line-height: 19.2px; font-weight: 500; }
.headline-side { font-family: var(--font-sans); font-size: 20px; line-height: 24px; font-weight: 500; }
.headline-list { font-family: var(--font-sans); font-size: 16px; line-height: 19.2px; font-weight: 500; }
.section-label { font-family: var(--font-sans); font-size: 16px; line-height: 19.2px; font-weight: 700; }
.category { font-family: var(--font-sans); font-size: 14px; line-height: 15.4px; font-weight: 400; }
.nav { font-family: var(--font-sans); font-size: 14px; line-height: 40px; font-weight: 500; letter-spacing: 0.2px; }
.nav-sub { font-family: var(--font-sans); font-size: 14px; line-height: 21px; font-weight: 500; letter-spacing: 0.2px; }
.button { font-family: var(--font-sans); font-size: 14px; line-height: 21px; font-weight: 500; letter-spacing: 0.2px; }
.meta { font-family: var(--font-sans); font-size: 14px; line-height: 16.8px; font-weight: 400; }
.standfirst { font-family: var(--font-sans); font-size: 20px; line-height: 28px; font-weight: 400; }
.excerpt { font-family: var(--font-sans); font-size: 14px; line-height: 18.2px; font-weight: 400; }
.caption { font-family: var(--font-sans); font-size: 14px; line-height: 19.6px; font-weight: 400; }
.ui { font-family: var(--font-sans); font-size: 16px; line-height: 24px; font-weight: 400; }
.article-body { font-family: var(--font-sans); font-size: 18px; line-height: 28px; font-weight: 400; }
.pull-quote { font-family: var(--font-serif); font-size: 28px; line-height: 33.6px; font-weight: 400; }
.footer-brand { font-family: var(--font-sans); font-size: 28px; line-height: 42px; font-weight: 700; letter-spacing: -0.5px; }
.footer-tagline { font-family: var(--font-sans); font-size: 16px; line-height: 24px; font-weight: 400; }
.footer-heading { font-family: var(--font-sans); font-size: 14px; line-height: 21px; font-weight: 500; letter-spacing: 0.2px; }
.footer-link { font-family: var(--font-sans); font-size: 14px; line-height: 21px; font-weight: 500; letter-spacing: 0.2px; }
.footer-action { font-family: var(--font-sans); font-size: 14px; line-height: 21px; font-weight: 500; letter-spacing: 0.2px; }
.footer-small { font-family: var(--font-sans); font-size: 14px; line-height: 21px; font-weight: 400; }