/* Privacy Policy and Terms pages. Plain, readable documents in the ChaskaBite look (DESIGN.md tokens). */
:root {
  --bg: #fbfaf9;
  --text: #201e1d;
  --text-2: #736f6f;
  --accent: #ff563c;
  --accent-ink: #b8230c;
  --line: rgba(32,30,29,.12);
  --divider: rgba(32,30,29,.07);
  --card: rgba(255,255,255,.86);
  --font: "Archivo", sans-serif;
}
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-padding-top: 24px; }
body {
  margin: 0;
  font: 400 17px/1.65 var(--font);
  color: var(--text);
  background: var(--bg) radial-gradient(700px 500px at 10% 0%, rgba(255,86,60,.08), transparent 70%) no-repeat;
}
a { color: var(--accent-ink); text-underline-offset: 3px; }
a:hover { color: #8f1a08; }
:focus-visible { outline: 3px solid var(--accent); outline-offset: 3px; border-radius: 6px; }

.top {
  max-width: 820px; margin: 0 auto; padding: 20px 16px;
  display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap;
}
.logo { display: inline-flex; align-items: center; gap: 10px; color: var(--text); text-decoration: none; font-weight: 800; font-size: 20px; letter-spacing: -0.02em; }
.top nav { display: flex; gap: 4px; flex-wrap: wrap; }
.top nav a { padding: 10px 14px; border-radius: 20px; color: var(--text); text-decoration: none; font-size: 15px; font-weight: 600; }
.top nav a:hover { background: rgba(32,30,29,.05); }
.top nav a[aria-current="page"] { background: rgba(255,86,60,.12); color: var(--accent-ink); }

.doc {
  max-width: 820px; margin: 0 auto 40px; padding: 32px 20px;
  background: var(--card); border: 1px solid rgba(255,255,255,.9); border-radius: 24px;
  box-shadow: 0 10px 30px rgba(32,30,29,.06), 0 2px 6px rgba(32,30,29,.04);
}
@media (min-width: 700px) { .doc { padding: 44px 52px; } }

h1 { margin: 0; font-size: clamp(30px, 5vw, 42px); font-weight: 800; letter-spacing: -0.02em; line-height: 1.1; }
.meta { margin: 6px 0 0; color: var(--text-2); font-size: 15px; }
.lede { font-size: 18px; margin: 20px 0 0; }
h2 { margin: 36px 0 8px; font-size: 23px; font-weight: 700; line-height: 1.25; }
h3 { margin: 22px 0 4px; font-size: 18px; font-weight: 700; }
p { margin: 10px 0 0; }
ul { margin: 10px 0 0; padding-left: 22px; }
li { margin: 6px 0; }
li::marker { color: var(--accent); }
section { border-top: 1px solid var(--divider); margin-top: 32px; }
section h2 { margin-top: 28px; }

.toc { margin-top: 24px; padding: 16px 20px; border-radius: 16px; background: rgba(32,30,29,.035); }
.toc ol { margin: 0; padding-left: 22px; columns: 2; column-gap: 32px; font-size: 15px; }
.toc li { margin: 4px 0; break-inside: avoid; }
@media (max-width: 559px) { .toc ol { columns: 1; } }

table { width: 100%; border-collapse: collapse; margin-top: 12px; font-size: 15px; }
th, td { text-align: left; vertical-align: top; padding: 10px 10px 10px 0; border-bottom: 1px solid var(--divider); }
th { font-size: 14px; color: var(--text-2); font-weight: 600; }
td:first-child { font-weight: 600; white-space: nowrap; padding-right: 16px; }
@media (max-width: 559px) { td:first-child { white-space: normal; } }

.foot { max-width: 820px; margin: 0 auto; padding: 0 16px 40px; text-align: center; font-size: 14px; color: var(--text-2); }
