/* The privacy policy and terms pages (site/legal/build.py). Same look as the home page. */
:root { --ink: #12343B; --secondary: #4A6369; --ground: #F7F3EC; --line: #E6DECF; --card: #fff;
  --serif: 'Fraunces', Georgia, serif; --sans: 'Figtree', system-ui, -apple-system, sans-serif; }
* { box-sizing: border-box; }
body { margin: 0; background: var(--ground); color: var(--ink); font: 17px/1.6 var(--sans); }
a { color: var(--ink); }
.nav { display: flex; align-items: center; gap: 24px; padding: 12px max(20px, calc((100vw - 760px) / 2)); border-bottom: 1px solid var(--line); }
.brand { display: flex; align-items: center; gap: 10px; text-decoration: none; font: 700 22px var(--serif); }
.brand img { border-radius: 9px; }
.nav nav { margin-left: auto; display: flex; gap: 18px; font-weight: 600; font-size: 15px; }
.nav nav a { text-decoration: none; color: var(--secondary); }
.nav nav a[aria-current] { color: var(--ink); text-decoration: underline; text-underline-offset: 4px; }
.legal { max-width: 760px; margin: 0 auto; padding: 36px 20px 24px; }
.legal h1 { font: 700 clamp(32px, 6vw, 44px)/1.1 var(--serif); margin: 0 0 6px; }
.legal h1 + p { color: var(--secondary); margin-top: 0; }
.legal h2 { font: 700 24px/1.2 var(--serif); margin: 36px 0 10px; }
.legal li { margin: 4px 0; }
.legal table { width: 100%; border-collapse: collapse; margin: 12px 0; background: var(--card); border-radius: 12px; overflow: hidden; display: block; overflow-x: auto; }
.legal th, .legal td { text-align: left; vertical-align: top; padding: 10px 12px; border-bottom: 1px solid var(--line); }
.legal th { background: #EDE6D9; }
footer { max-width: 760px; margin: 0 auto; padding: 24px 20px 56px; color: var(--secondary); font-size: 15px; border-top: 1px solid var(--line); }
footer .small { font-size: 14px; }
