/* Shared by every template: reset, theme tokens and their derived values.
   Set by the doc theme on :root: --paper --ink --accent --accent2 --font-display --font-body --font-script
   (+ --on-accent --on-ink computed for contrast). Templates define their own defaults after this file. */
:root {
  --paper: #f6f1e4; --ink: #2f2c27; --accent: #738561; --accent2: #b08d57;
  --font-display: "Gilda Display", Georgia, serif; --font-body: "EB Garamond", Georgia, serif; --font-script: "Homemade Apple", cursive;
  --on-accent: #fbf9f4; --on-ink: #fbf9f4; --on-accent2: #1b1a18;
  --ink-soft: color-mix(in srgb, var(--ink) 80%, var(--paper));
  --line: color-mix(in srgb, var(--ink) 18%, transparent);
  --paper-2: color-mix(in srgb, var(--paper) 90%, var(--ink));
  --paper-3: color-mix(in srgb, var(--paper) 80%, var(--ink));
  --accent-ink: color-mix(in srgb, var(--accent) 62%, var(--ink));
}
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; -webkit-font-smoothing: antialiased; }
img, svg, canvas { display: block; max-width: 100%; }
h1, h2, h3, p, ul, ol, dl, dd, figure { margin: 0; padding: 0; }
ul, ol { list-style: none; }
a { color: inherit; }
button, input, textarea, select { font: inherit; color: inherit; }
:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; } }
