/* Editorial palette informed by karinanguyen.com; original site content/layout. */
:root {
  color-scheme: light;
  --ink: #000;
  --body: #000;
  --muted: #595959;
  --caption: #595959;
  --link: #000;
  --bg: #fff;
  --paper: #fff;
  --soft: #f6f6f6;
  --faint: #dedede;
  --rule: #c8c8c8;
  --border: #dedede;
  --accent: #000;
  --accent-strong: #000;
  --accent-dark: #333;
  --accent-soft: #f6f6f6;
  --accent-line: #b0b0b0;
  --code-bg: #f6f6f6;
}

html, body { background: #fff; color: #000; }
body { line-height: 1.5; }
p, strong, h1, h2, h3 { color: var(--ink); }
a {
  color: var(--link);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.16em;
  text-decoration-skip-ink: auto;
  transition: color 120ms ease;
}
a:hover { color: #444; }
a:focus-visible, button:focus-visible {
  outline: 2px solid #000;
  outline-offset: 4px;
}
::selection { color: #000; background: #e5e5e5; }

.page-home, .page-blog, .page-article { font-size: 18px; }
.page-home .container, .page-blog .container {
  max-width: 900px;
  padding: 56px 32px 80px;
}
.page-home header { margin-bottom: 44px; }
.page-home .header-left h1 { font-weight: 700; margin-bottom: 18px; }
.page-home .header-left h2 { font-size: 18px; }
.page-home section { margin-bottom: 36px; }
.page-home p { color: #000; line-height: 1.5; margin-bottom: 18px; }
.section-title {
  display: block;
  padding: 0;
  margin-bottom: 18px;
  background: transparent;
  border-radius: 0;
  color: #000;
  font-size: 18px;
  font-weight: 700;
}
.page-home .contact-links { gap: 10px 20px; }
.page-home .contact-links a { color: #000; font-size: 16px; }
.page-home .highlights-list li { margin-bottom: 18px; }
.page-home .highlights-list li::before { color: #000; }
.page-home .date, .page-blog .article time { color: #595959; }
.page-home .highlight-text { background: #f1f1f1; }
.page-home .news-item { background: transparent; border-color: #dedede; }

.page-blog header { margin-bottom: 48px; }
.page-blog h1 { font-weight: 700; }
.page-blog .intro, .page-blog .article p { color: #595959; }
.page-blog .article { border-color: #dedede; }
.page-blog .article h2 { font-size: 20px; }
a.home-link, .article-nav a, .nav a { color: #000; }
.page-article .subtitle, .page-article .lead { color: #000; }
.page-article blockquote { border-color: #dedede; }
.page-support .lede { color: #000; }
.page-support .uses span { color: #595959; }

/* Research articles retain their figures and data colors. */
.page-mafia .tldr, .page-mafia .resource-card strong,
.page-mafia .references, .page-mafia table { color: #000; }
.page-mafia .meta-grid, .page-mafia .author-card,
.page-mafia .date-card { color: #595959; }
.page-mafia .resource-card { background: transparent; text-decoration: none; }
.page-mafia .resource-card:hover { background: #f6f6f6; }
.page-mafia .asset-placeholder { background: #f6f6f6; }

@media (max-width: 600px) {
  .page-home .container, .page-blog .container { padding: 36px 20px 64px; }
  .page-home header { margin-bottom: 36px; }
  .page-home .contact-links { flex-direction: row; }
}

@media (prefers-reduced-motion: reduce) {
  a { transition: none; }
}
