/* Shared minimal styles for legal/thanks subpages */
:root {
  --paper: oklch(0.97 0.008 80);
  --paper-2: oklch(0.94 0.010 80);
  --rule: oklch(0.84 0.012 80);
  --ink: oklch(0.22 0.010 80);
  --ink-2: oklch(0.40 0.010 80);
  --ink-3: oklch(0.55 0.010 80);
  --accent: oklch(0.42 0.12 28);
  --maxw: 760px;
  --gutter: clamp(20px, 5vw, 40px);
  --f-display: "Instrument Serif", Georgia, serif;
  --f-body: "Inter", system-ui, -apple-system, sans-serif;
  --f-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
}
* { box-sizing: border-box; }
html, body { margin:0; padding:0; background: var(--paper); color: var(--ink); }
body { font-family: var(--f-body); font-size: 16px; line-height: 1.6; -webkit-font-smoothing: antialiased; }
a { color: var(--ink); }
a:hover { color: var(--accent); }
.wrap { max-width: var(--maxw); margin: 0 auto; padding: 0 var(--gutter); }
header.sub-nav {
  border-bottom: 1px solid var(--rule);
  padding: 18px 0;
  background: color-mix(in oklab, var(--paper) 90%, transparent);
  position: sticky; top: 0; z-index: 10; backdrop-filter: blur(8px);
}
header.sub-nav .row { display:flex; justify-content:space-between; align-items:center; }
header.sub-nav .brand {
  font-family: var(--f-display); font-size: clamp(15px, 3.8vw, 20px);
  text-decoration: none; color: var(--ink); letter-spacing: -0.01em;
}
header.sub-nav .brand em { font-style: italic; color: var(--accent); }
header.sub-nav .back {
  font-family: var(--f-mono); font-size: 10.5px; letter-spacing: 0.1em;
  text-transform: uppercase; color: var(--ink-3); text-decoration: none;
}
header.sub-nav .back:hover { color: var(--accent); }

main.legal { padding: 56px 0 80px; }
main.legal .eyebrow {
  font-family: var(--f-mono); font-size: 10.5px; letter-spacing: 0.16em;
  text-transform: uppercase; color: var(--ink-3); margin-bottom: 14px;
  display: flex; align-items: center; gap: 10px;
}
main.legal .eyebrow::before { content:""; width:16px; height:1px; background: var(--accent); }
main.legal h1 {
  font-family: var(--f-display); font-weight: 400;
  font-size: clamp(34px, 6vw, 54px); line-height: 1.02;
  margin: 0 0 28px; letter-spacing: -0.012em;
}
main.legal h1 em { font-style: italic; color: var(--accent); }
main.legal h2 {
  font-family: var(--f-display); font-weight: 400;
  font-size: 24px; margin: 36px 0 10px;
}
main.legal p, main.legal li { color: var(--ink); font-size: 16px; line-height: 1.65; }
main.legal p { margin: 0 0 14px; max-width: 62ch; }
main.legal ul { padding-left: 20px; margin: 0 0 14px; }
main.legal .meta {
  font-family: var(--f-mono); font-size: 11px; letter-spacing: 0.08em;
  text-transform: uppercase; color: var(--ink-3);
  padding-bottom: 20px; border-bottom: 1px solid var(--rule); margin-bottom: 28px;
}
footer.sub-foot {
  border-top: 1px solid var(--rule); padding: 28px 0;
  font-family: var(--f-mono); font-size: 10.5px; letter-spacing: 0.08em;
  text-transform: uppercase; color: var(--ink-3);
}
footer.sub-foot a { color: var(--ink-3); text-decoration: none; border-bottom: 1px solid var(--rule); }

/* Thanks */
.thanks-hero { padding: 96px 0 48px; text-align: left; }
.thanks-hero h1 { margin-bottom: 18px; }
.thanks-hero p { font-size: 18px; max-width: 52ch; color: var(--ink-2); }
.thanks-hero .cta {
  display: inline-flex; gap: 8px; margin-top: 32px;
  padding: 14px 20px; border-radius: 999px;
  background: var(--ink); color: var(--paper); text-decoration: none;
  font-size: 14px;
}
.thanks-hero .cta:hover { background: var(--accent); color: #fff; }
