/* Shared styling for the legal pages (privacy, terms).
   Mirrors index.html's tokens so the pages read as part of the same site. */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
:root {
  --ink: #0f0e0c;
  --ink-mid: #4a4843;
  --ink-faint: #9a9690;
  --paper: #f5f2ec;
  --paper-warm: #ede9e1;
  --rule: #d8d3c9;
  --amber: #b8720e;
  --amber-faint: #faf0db;
}
body {
  font-family: 'DM Sans', sans-serif;
  background: var(--paper);
  color: var(--ink);
  font-size: 16px;
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
}
nav {
  position: fixed; top: 0; left: 0; right: 0; z-index: 100;
  background: var(--paper);
  border-bottom: 1px solid var(--rule);
  padding: 0 48px; height: 64px;
  display: flex; align-items: center; justify-content: space-between;
}
.nav-logo {
  font-family: 'Libre Baskerville', serif;
  font-size: 15px; letter-spacing: 0.08em;
  color: var(--ink); text-decoration: none;
}
.nav-logo span { color: var(--amber); }
.nav-right { display: flex; align-items: center; gap: 40px; }
.nav-link {
  font-size: 12px; letter-spacing: 0.12em; text-transform: uppercase;
  color: var(--ink-mid); text-decoration: none; transition: color 0.2s;
}
.nav-link:hover { color: var(--amber); }

.doc { max-width: 760px; margin: 0 auto; padding: 128px 48px 80px; }
.doc-label {
  font-family: 'DM Mono', monospace;
  font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase;
  color: var(--amber); margin-bottom: 20px;
}
.doc h1 {
  font-family: 'Libre Baskerville', serif;
  font-size: 40px; line-height: 1.2; font-weight: 400;
  margin-bottom: 16px;
}
.doc .effective {
  font-family: 'DM Mono', monospace;
  font-size: 12px; letter-spacing: 0.06em; color: var(--ink-faint);
  padding-bottom: 32px; margin-bottom: 40px;
  border-bottom: 1px solid var(--rule);
}
.doc h2 {
  font-family: 'Libre Baskerville', serif;
  font-size: 22px; font-weight: 400; line-height: 1.3;
  margin: 48px 0 16px;
}
.doc h3 {
  font-size: 15px; font-weight: 600; letter-spacing: 0.01em;
  margin: 28px 0 10px;
}
.doc p { color: var(--ink-mid); margin-bottom: 16px; font-weight: 300; }
.doc ul { margin: 0 0 16px 22px; color: var(--ink-mid); font-weight: 300; }
.doc li { margin-bottom: 10px; }
.doc strong { color: var(--ink); font-weight: 600; }
.doc a { color: var(--amber); }

/* Callout for the things a reader most needs to actually notice. */
.callout {
  background: var(--amber-faint);
  border-left: 2px solid var(--amber);
  padding: 20px 24px;
  margin: 28px 0;
}
.callout p:last-child { margin-bottom: 0; }
.callout p { color: var(--ink); }

.plain {
  background: var(--paper-warm);
  border: 1px solid var(--rule);
  padding: 20px 24px;
  margin: 28px 0;
}
.plain p:last-child { margin-bottom: 0; }
.plain .plain-label {
  font-family: 'DM Mono', monospace;
  font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase;
  color: var(--ink-faint); margin-bottom: 8px;
}

footer {
  padding: 40px 48px;
  display: flex; align-items: center; justify-content: space-between;
  max-width: 1100px; margin: 0 auto;
  border-top: 1px solid var(--rule);
}
.footer-logo {
  font-family: 'Libre Baskerville', serif;
  font-size: 13px; letter-spacing: 0.08em; color: var(--ink-mid);
}
.footer-logo span { color: var(--amber); }
.footer-right {
  font-family: 'DM Mono', monospace;
  font-size: 11px; letter-spacing: 0.1em; color: var(--ink-faint);
}

@media (max-width: 800px) {
  nav { padding: 0 24px; }
  .nav-right { gap: 18px; }
  .doc { padding: 104px 24px 64px; }
  .doc h1 { font-size: 30px; }
  .doc h2 { font-size: 19px; }
  footer { padding: 32px 24px; flex-direction: column; gap: 12px; text-align: center; }
}
