:root {
  --font-body: "Aptos", "Segoe UI", Arial, sans-serif;
  --font-heading: Georgia, "Times New Roman", serif;
  --font-nav: "Aptos", "Segoe UI", Arial, sans-serif;
  --surface: #f9f6f2;
  --surface-raised: #ffffff;
  --surface-alt: #f1eeea;
  --surface-soft: #f6f0e7;
  --surface-cool: #eef3f0;
  --surface-warm: #f5eeee;
  --surface-proof: #fbfaf6;
  --surface-footer: #e5e1dc;
  --ink: #5d6667;
  --body: #666666;
  --muted: #7b8485;
  --rule: rgba(106, 114, 115, 0.22);
  --accent: #5f6869;
  --accent-ink: #fbf8f3;
  --focus: #6f315f;
}

.site-mark {
  letter-spacing: 1.5px;
}

.hero-media {
  border-bottom: 1px solid var(--rule);
}

.hero-media img {
  filter: saturate(0.92) contrast(0.96);
}

.section--plainvanilla-note {
  background:
    linear-gradient(90deg, rgba(249, 246, 242, 0.96), rgba(246, 240, 231, 0.82)),
    var(--surface-soft);
}

.section--cool {
  background:
    linear-gradient(90deg, rgba(238, 243, 240, 0.96), rgba(246, 248, 246, 0.74)),
    var(--surface-cool);
}

.section--warm {
  background:
    linear-gradient(90deg, rgba(245, 238, 238, 0.96), rgba(249, 246, 242, 0.78)),
    var(--surface-warm);
}

.section--proof {
  background:
    linear-gradient(180deg, rgba(251, 250, 246, 0.98), rgba(244, 241, 235, 0.72)),
    var(--surface-proof);
}

.section--proof .module-card {
  background: var(--surface-raised);
}

.button {
  box-shadow: none;
}

.module-card,
.video-slot,
.contact-card {
  border-radius: 0;
}
