/* Vesica brand tokens, mirrored from MutualsIRL/Assets.xcassets + Theme/. */
:root {
  --surface: #F5E9DF;      /* Surface */
  --surface-deep: #E3D5C7; /* SurfaceDeep */
  --muted: #EEE7DD;        /* Muted */
  --ink: #2B2A28;          /* Ink */
  --ink-2: #615B57;        /* InkSecondary */
  --accent: #3C5A45;       /* AccentColor */
}
@media (prefers-color-scheme: dark) {
  :root {
    --surface: #1B1815; --surface-deep: #2A2622; --muted: #3A3530;
    --ink: #F0EBE5; --ink-2: #A8A29E; --accent: #6B8F74;
  }
}
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0; background: var(--surface); color: var(--ink);
  font: 17px/1.6 "IBM Plex Sans", -apple-system, system-ui, sans-serif;
}
main { max-width: 680px; margin: 0 auto; padding: 48px 22px 80px; }
.kicker {
  font: 500 12px/1 "IBM Plex Mono", ui-monospace, monospace;
  letter-spacing: .18em; text-transform: uppercase; color: var(--accent);
  margin: 0 0 12px;
}
h1, h2 { font-family: "Fraunces", Georgia, serif; font-weight: 400; letter-spacing: -.01em; }
h1 { font-size: 40px; line-height: 1.1; margin: 0 0 8px; }
h2 { font-size: 24px; line-height: 1.25; margin: 40px 0 8px; }
.updated { color: var(--ink-2); font-size: 14px; margin: 0 0 32px; }
.lead {
  background: var(--muted); border-radius: 22px; padding: 20px 22px; margin: 0 0 8px;
}
a { color: var(--accent); }
ul { padding-left: 22px; }
li { margin: 4px 0; }
nav { display: flex; gap: 20px; flex-wrap: wrap; margin-top: 56px; padding-top: 20px;
      border-top: 1px solid var(--surface-deep); font-size: 15px; }
.brand { font-family: "Fraunces", Georgia, serif; font-size: 22px; text-decoration: none; color: var(--ink); }
