/* Public-site fonts, tokens and reset from site-requests. */
@font-face { font-family: "Newsreader"; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/newsreader-400.ttf) format("truetype"); }
@font-face { font-family: "Newsreader"; font-style: italic; font-weight: 400; font-display: swap; src: url(fonts/newsreader-400-italic.ttf) format("truetype"); }
@font-face { font-family: "Geist"; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/geist-400.ttf) format("truetype"); }
@font-face { font-family: "Geist"; font-style: normal; font-weight: 500; font-display: swap; src: url(fonts/geist-500.ttf) format("truetype"); }
@font-face { font-family: "JetBrains Mono"; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/jetbrains-mono-400.ttf) format("truetype"); }
@font-face { font-family: "DM Sans"; font-style: normal; font-weight: 600; font-display: swap; src: url(fonts/dm-sans-600-latin.woff2) format("woff2"); }

@font-face { font-family: "Geist"; font-style: normal; font-weight: 600; font-display: swap; src: url(fonts/geist-600.ttf) format("truetype"); }

:root {
  --bg: #f7f0e1;
  --bg-deep: #ede1ca;
  --surface: #fffdf8;
  --text: #211a10;
  --text-muted: #6e6350;
  --border: #e9dec7;
  --border-strong: #d8cbaa;
  --accent: #2b231b;
  --ok: #2f6b4f;
  --ok-bg: #e2eee5;
  --mid: #5b4e8a;
  --mid-bg: #e8e3f3;

  --font-display: "Newsreader", "Iowan Old Style", Georgia, serif;
  --font-body: "Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-mono: "JetBrains Mono", "SF Mono", Menlo, monospace;
  --gutter: clamp(16px, 5vw, 64px);
  --wrap: 1240px;
  --shot-shadow: 0 1px 0 rgb(0 0 0 / .04), 0 18px 40px -22px rgb(60 40 10 / .45);

  --par-accent: oklch(0.72 0.12 258);
  --par-glass-brd: oklch(0.46 0.055 78 / 0.16);
  --par-glass-top: oklch(1 0.014 92 / 0.8);
  --par-sh-1: 0.13;
  --par-sh-2: 0.17;
  --par-sh-3: 0.26;
  --par-r-sm: 10px;
  --par-ease: cubic-bezier(.34, 1.56, .64, 1);
  --par-dur-fast: .1s;
  --par-dur: .18s;
  --par-dur-slow: .28s;
  color-scheme: light;
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  min-width: 320px;
  background: var(--bg);
  color: var(--text);
  font-family: var(--font-body);
  font-size: 16px;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
}
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; }
h1, h2 { font-family: var(--font-display); font-weight: 400; letter-spacing: -0.015em; margin: 0; text-wrap: balance; }
h1 { font-size: clamp(42px, 6.4vw, 84px); line-height: 1.02; max-width: 14ch; }
h2 { font-size: clamp(30px, 4.2vw, 48px); line-height: 1.08; }
p, figure, blockquote { margin: 0; }
p { text-wrap: pretty; }
main > section { width: min(100% - 2 * var(--gutter), var(--wrap)); margin-inline: auto; }

