/* georgewyrd — generated from tokens.json */
:root, [data-theme="canvas"] {
  --canvas: #f2ead8; /* Page ground: unbleached canvas by day, a tent by lantern-light at night. */
  --canvas-raised: #faf5ea; /* Cards, collection tiles, table bodies set on `canvas`. */
  --canvas-sunken: #e6dbc3; /* Masthead band, table header row, code and figure wells. */
  --rule: #cbb995; /* Hairline dividers between list rows and table rows. Decorative only: never the sole edge of a control. */
  --rule-strong: #93805e; /* Edges that carry meaning: input and card borders, the double rule under table headers. 3:1 on `canvas` and `canvas-raised` in both themes. */
  --ink: #2b2119; /* Body copy and headings on `canvas`, `canvas-raised`, `canvas-sunken` and every `-tint`. Iron-gall ink brown, never pure black. */
  --ink-muted: #5f4f3c; /* Dates, counts, captions, version numbers on any `canvas` ground (5.7:1 or better). */
  --leather: #7b4524; /* The house colour: primary buttons, the active nav item, the wordmark underline. Text in `leather` reads on any `canvas` ground. */
  --leather-strong: #5e3318; /* Hover and pressed state of `leather` fills and links. */
  --leather-tint: #efe0cc; /* Ground for the neutral tag and selected rows; `leather` or `ink` text on it. */
  --union: #2b4266; /* Links and the focus ring. Frock-coat blue: the one colour that means 'you can follow this'. */
  --union-tint: #e1e6ee; /* Ground for the information tag (version, ruleset); `union` text on it. */
  --rifle: #3f5235; /* Reviewed / published state, and map terrain accents. Rifle-regiment green. */
  --rifle-tint: #e2e8d8; /* Ground for the 'Reviewed' tag; `rifle` text on it. */
  --madder: #9a2e22; /* Sparing signal: losses and casualty figures, errata, warnings. Faded madder red, never a large fill on pages. */
  --madder-tint: #f3dcd5; /* Ground for the warning / errata tag; `madder` text on it. */
  --brass: #8a6a2a; /* Ornament only: rule flourishes, the cover's rules, map compass marks. Fails 4.5:1 for small text on `canvas` (4.2:1), so never set copy in it. */
  --mustard: #c9971f; /* The logo frame only: the mustard binding round the GW cloth card. Not for text or UI. */
  --on-fill: #faf5ea; /* Text on `leather`, `leather-strong`, `union`, `rifle` and `madder` fills (6.3:1 or better in both themes). */
  --focus: var(--union); /* 2px solid focus ring with a 2px offset, on every interactive element; 3:1 or better on all `canvas` grounds. */
  color-scheme: light;
}
/* Lantern follows the reader's system setting unless a page pins a theme with data-theme. */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="canvas"]) {
    --canvas: #1b1612;
    --canvas-raised: #251e18;
    --canvas-sunken: #13100c;
    --rule: #4a3d2f;
    --rule-strong: #7d6a52;
    --ink: #ede4d1;
    --ink-muted: #b8a88e;
    --leather: #d0915f;
    --leather-strong: #e2ab7f;
    --leather-tint: #3a2a1d;
    --union: #94acd4;
    --union-tint: #1f2a3b;
    --rifle: #a6b98e;
    --rifle-tint: #232c1c;
    --madder: #e0806a;
    --madder-tint: #3b1f19;
    --brass: #cfae67;
    --mustard: #c9971f;
    --on-fill: #1b1612;
    --focus: var(--union);
    color-scheme: dark;
  }
}
[data-theme="lantern"] {
  --canvas: #1b1612;
  --canvas-raised: #251e18;
  --canvas-sunken: #13100c;
  --rule: #4a3d2f;
  --rule-strong: #7d6a52;
  --ink: #ede4d1;
  --ink-muted: #b8a88e;
  --leather: #d0915f;
  --leather-strong: #e2ab7f;
  --leather-tint: #3a2a1d;
  --union: #94acd4;
  --union-tint: #1f2a3b;
  --rifle: #a6b98e;
  --rifle-tint: #232c1c;
  --madder: #e0806a;
  --madder-tint: #3b1f19;
  --brass: #cfae67;
  --mustard: #c9971f;
  --on-fill: #1b1612;
  --focus: var(--union);
  color-scheme: dark;
}
:root {
  --space-1: 4px; /* Gap between a tag's text and its edge vertically; icon-to-label gap. */
  --space-2: 8px; /* Inline gaps: between tags, between a title and its date. */
  --space-3: 12px; /* Table cell padding (horizontal), list row padding (vertical). */
  --space-4: 16px; /* Button horizontal padding, phone gutter, gap between cards. */
  --space-6: 24px; /* Card padding; gap between a heading and its content. */
  --space-8: 32px; /* Desktop gutter; space between stacked sections inside a card grid. */
  --space-12: 48px; /* Space between page sections. */
  --space-16: 64px; /* Space above the page title, and above the footer. */
  --radius-none: 0; /* Tables, the masthead, images and maps: printed matter has square corners. */
  --radius-sm: 2px; /* Tags, inputs and buttons: a cut-leather edge, barely softened. */
  --radius-md: 4px; /* Cards and collection tiles. The largest radius in the system. */
  --border-hairline: 1px; /* Row dividers in `rule`; card edges in `rule-strong`. */
  --border-double: 3px; /* Drawn as `border-style: double` in `rule-strong`: under table headers, under the masthead, above the footer. */
  --border-focus: 2px; /* Focus ring width, solid `focus`, offset 2px. */
  --measure: 68ch; /* Max width of running text. */
  --page-max: 1120px; /* Max width of the page container; card grids and tables. */
  --font-display: "Libre Caslon Display", "Libre Caslon Text", Georgia, serif;
  --font-text: "Source Serif 4", Georgia, "Times New Roman", serif;
  --font-label: "Alegreya Sans SC", "Gill Sans", "Trebuchet MS", sans-serif;
  --text-display-xl: 400 56px/60px var(--font-display); /* Page title on battle and home pages. One per page. */
  --text-display-lg: 400 40px/46px var(--font-display); /* Section titles on long pages; the wordmark in the masthead at 28px. */
  --text-display-md: 400 28px/34px var(--font-display); /* Masthead wordmark and collection-card titles. */
  --text-heading: 600 22px/28px var(--font-text); /* H2 inside a page. */
  --text-subhead: 600 18px/26px var(--font-text); /* H3, formation names in an order of battle. */
  --text-body: 400 17px/27px var(--font-text); /* All running text. Measure 60–72 characters. */
  --text-body-italic: italic 400 17px/27px var(--font-text); /* Quoted dispatches, memoir and war poetry, Old Style dates. */
  --text-data: 400 15px/22px var(--font-text); /* Table cells and order-of-battle rows; set with tabular figures. */
  --text-small: 400 14px/20px var(--font-text); /* Counts, captions, footnotes, source lines. */
  --text-label: 500 14px/18px var(--font-label); /* Nav items, buttons, tags, table headers. Written in lower case; the face supplies the small capitals. */
  --text-eyebrow: 700 13px/16px var(--font-label); /* Kicker above a section title; at most one per section. */
}
.display-xl {
  font-family: var(--font-display);
  font-size: 56px;
  line-height: 60px;
  font-weight: 400;
  letter-spacing: -0.01em;
}
.display-lg {
  font-family: var(--font-display);
  font-size: 40px;
  line-height: 46px;
  font-weight: 400;
  letter-spacing: 0;
}
.display-md {
  font-family: var(--font-display);
  font-size: 28px;
  line-height: 34px;
  font-weight: 400;
  letter-spacing: 0;
}
.heading {
  font-family: var(--font-text);
  font-size: 22px;
  line-height: 28px;
  font-weight: 600;
  letter-spacing: 0;
}
.subhead {
  font-family: var(--font-text);
  font-size: 18px;
  line-height: 26px;
  font-weight: 600;
  letter-spacing: 0;
}
.body {
  font-family: var(--font-text);
  font-size: 17px;
  line-height: 27px;
  font-weight: 400;
  letter-spacing: 0;
}
.body-italic {
  font-family: var(--font-text);
  font-size: 17px;
  line-height: 27px;
  font-weight: 400;
  letter-spacing: 0;
  font-style: italic;
}
.data {
  font-family: var(--font-text);
  font-size: 15px;
  line-height: 22px;
  font-weight: 400;
  letter-spacing: 0;
}
.small {
  font-family: var(--font-text);
  font-size: 14px;
  line-height: 20px;
  font-weight: 400;
  letter-spacing: 0;
}
.label {
  font-family: var(--font-label);
  font-size: 14px;
  line-height: 18px;
  font-weight: 500;
  letter-spacing: 0.04em;
}
.eyebrow {
  font-family: var(--font-label);
  font-size: 13px;
  line-height: 16px;
  font-weight: 700;
  letter-spacing: 0.08em;
}
@font-face {
  font-family: "Libre Caslon Display";
  src: url("fonts/libre-caslon-display-latin-400-normal.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Libre Caslon Display";
  src: url("fonts/libre-caslon-display-latin-ext-400-normal.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "Source Serif 4";
  src: url("fonts/source-serif-4-latin-400-normal.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Source Serif 4";
  src: url("fonts/source-serif-4-latin-ext-400-normal.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "Source Serif 4";
  src: url("fonts/source-serif-4-latin-400-italic.woff2") format("woff2");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Source Serif 4";
  src: url("fonts/source-serif-4-latin-ext-400-italic.woff2") format("woff2");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "Source Serif 4";
  src: url("fonts/source-serif-4-latin-600-normal.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Source Serif 4";
  src: url("fonts/source-serif-4-latin-ext-600-normal.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "Alegreya Sans SC";
  src: url("fonts/alegreya-sans-sc-latin-500-normal.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Alegreya Sans SC";
  src: url("fonts/alegreya-sans-sc-latin-ext-500-normal.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "Alegreya Sans SC";
  src: url("fonts/alegreya-sans-sc-latin-700-normal.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Alegreya Sans SC";
  src: url("fonts/alegreya-sans-sc-latin-ext-700-normal.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
