:root {
  --em: #1A7A3E;
  --em-dark: #0E5028;
  --em-light: #E8F2EA;
  --em-soft: #1A7A3E26;
  --em-bright: #39E075;
  --em-muted: #7DC896;
  --ink: #1A1A1A;
  --ink-60: #1A1A1A99;
  --ink-40: #1A1A1A66;
  --ink-08: #1A1A1A14;
  --ink-04: #1A1A1A0A;
  --surface: #FFFFFF;
  --surface-alt: #FAFAF8;
}
body {
  font-family: 'DM Sans', system-ui, -apple-system, sans-serif;
  color: var(--ink);
  background: var(--surface);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
.serif { font-family: 'Instrument Serif', Georgia, serif; font-weight: 400; letter-spacing: -0.02em; }
.serif-italic { font-family: 'Instrument Serif', Georgia, serif; font-style: italic; font-weight: 400; }
.label { font-size: 11px; font-weight: 700; letter-spacing: 0.18em; color: var(--em); }
.eyebrow { font-size: 11px; font-weight: 700; letter-spacing: 0.18em; }
a { color: inherit; text-decoration: none; }
.btn-primary { background: var(--ink); color: white; padding: 18px 32px; border-radius: 999px; font-weight: 600; font-size: 14px; display: inline-flex; align-items: center; gap: 10px; transition: opacity .15s; }
.btn-primary:hover { opacity: 0.85; }
.btn-outline { background: transparent; color: var(--ink); padding: 18px 28px; border-radius: 999px; font-weight: 600; font-size: 14px; border: 1.5px solid var(--ink-08); display: inline-flex; align-items: center; gap: 8px; transition: background .15s; }
.btn-outline:hover { background: var(--ink-04); }
.status-pill { display: inline-flex; align-items: center; gap: 8px; padding: 7px 14px; background: var(--em-light); border: 1px solid var(--em-soft); border-radius: 999px; font-size: 11px; font-weight: 600; color: var(--em); letter-spacing: 0.03em; }
.status-pill::before { content: ''; width: 7px; height: 7px; background: var(--em); border-radius: 50%; }
nav a:hover { color: var(--ink); }
.compliance-card { padding: 36px; background: #1A1A1A; }
.compliance-card svg { color: var(--em-bright); }