/* Shared style for the static legal pages (privacy, terms): the launch page's Clay & Coral tokens, Fraunces and Inter. */
:root {
  --plum: #3B2A3F;
  --plum-line: #54405A;
  --coral: #D9734E;
  --coral-text: #C25E3A;
  --coral-softer: #EDB9A0;
  --peach: #F3D3C2;
  --cream: #FBF6F1;
  --surface: #FFFFFF;
  --muted-text: #6E5E72;
  --line: #EFE3D8;
  --warning: #C98A1B;

  --font-display: "Fraunces", "Iowan Old Style", "Palatino Linotype", Georgia, serif;
  --font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;

  --gutter-l: max(16px, env(safe-area-inset-left, 0px));
  --gutter-r: max(16px, env(safe-area-inset-right, 0px));
  color-scheme: light;
}

* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  background: var(--cream);
  color: var(--plum);
  font-family: var(--font-body);
  font-size: clamp(1rem, 0.96rem + 0.2vw, 1.06rem);
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}
::selection { background: var(--coral-softer); color: var(--plum); }
:focus-visible { outline: 3px solid var(--coral); outline-offset: 3px; border-radius: 4px; }
a { color: var(--coral-text); text-underline-offset: 0.2em; text-decoration-thickness: 1px; }

.band { padding-left: var(--gutter-l); padding-right: var(--gutter-r); }
.wrap { max-width: 760px; margin-inline: auto; }

.top { background: var(--plum); color: var(--cream); }
.top .wrap { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding-block: 18px; }
.brand { display: flex; align-items: center; gap: 10px; color: var(--cream); text-decoration: none; }
.brand svg { width: 32px; height: 32px; flex: none; }
.brand span { font-family: var(--font-display); font-weight: 600; font-size: 1.35rem; letter-spacing: -0.01em; }
.top nav { display: flex; gap: 18px; font-size: 0.95rem; }
.top nav a { color: var(--cream); text-decoration: none; opacity: 0.85; }
.top nav a:hover, .top nav a[aria-current="page"] { opacity: 1; text-decoration: underline; }

main { padding-block: clamp(28px, 5vw, 56px); }
.doc {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: clamp(24px, 5vw, 48px);
}
h1, h2 { font-family: var(--font-display); font-weight: 600; letter-spacing: -0.015em; line-height: 1.12; }
h1 { font-size: clamp(2rem, 1.6rem + 2vw, 2.8rem); margin: 0 0 12px; }
h2 { font-size: clamp(1.2rem, 1.1rem + 0.5vw, 1.45rem); margin: 32px 0 10px; }
p { margin: 0 0 14px; }
ul { margin: 0 0 14px; padding-left: 1.2em; }
li { margin-bottom: 6px; }
.lede { color: var(--muted-text); font-size: 1.05em; }
.updated { color: var(--muted-text); font-size: 0.92rem; margin-top: 28px; }
.draft {
  border: 1px dashed var(--warning);
  background: #FDF6EA;
  border-radius: 10px;
  padding: 12px 16px;
  margin-bottom: 24px;
}
.caps { text-transform: uppercase; font-size: 0.92em; letter-spacing: 0.01em; }

.foot { color: var(--muted-text); font-size: 0.9rem; padding-block: 0 40px; }
.foot .wrap { display: flex; flex-wrap: wrap; gap: 8px 20px; }
.foot a { color: var(--muted-text); }
