/* Privacy, Terms and the 404 page. Loaded after base.css. */

body {
  line-height: 1.65;
  /* Footer stays at the bottom of the window on short pages such as 404. */
  min-height: 100vh; display: flex; flex-direction: column;
}
main { flex: 1 0 auto; width: 100%; }
ul { margin: 0; }

/* Header: logo plus a "Back to home" link instead of the homepage menu. */
.site-header .wrap { gap: 1.5rem; }
.site-header .back { margin-left: auto; font-size: .95rem; color: var(--muted); text-decoration: none; }
.site-header .back:hover { color: var(--ink); }
.site-header .back { min-height: 44px; display: inline-flex; align-items: center; }

/* Footer row gap as before the stylesheets were merged. */
.site-footer .wrap { gap: 1rem 2.5rem; }

/* Reading column: the text measure plus the side padding, so wide-screen padding
   does not shrink the text. */
.doc { max-width: calc(44rem + 2 * var(--gutter)); padding-block: clamp(2.5rem, 6vw, 4.5rem) clamp(3rem, 7vw, 5rem); }
.doc h1 { font-size: clamp(2.1rem, 4.6vw, 3.1rem); line-height: 1.08; }
.doc h1 + p { margin-top: 1rem; }
.updated { margin-top: 1rem; font-size: .95rem; color: var(--faint); }

/* "The short version" box at the top of each legal page. */
.summary {
  margin-top: 2.25rem; background: var(--panel);
  border-radius: 16px; padding: clamp(1.4rem, 3vw, 2rem);
}
.summary h2 { font-size: 1.2rem; }
.summary ul { margin-top: .9rem; padding-left: 1.1rem; }
.summary li + li { margin-top: .45rem; }

/* Headings should not inherit body-text line height when they wrap. */
.doc h2 { font-size: 1.45rem; margin-top: 2.75rem; line-height: 1.2; }
/* The general ".doc h2" spacing must not push the summary heading down. */
.doc .summary h2 { margin-top: 0; }
.doc h2 + p, .doc h2 + ul { margin-top: .85rem; }
.doc p + p, .doc ul + p, .doc p + ul { margin-top: 1rem; }
.doc ul { padding-left: 1.2rem; }
.doc li + li { margin-top: .5rem; }
.doc strong { font-weight: 600; }

.contact {
  margin-top: 2.75rem; border-top: 1px solid var(--outline);
  padding-top: 1.75rem; font-size: 1.02rem;
}

/* Terms page: dated change history and the postal-style contact block. */
.history { list-style: none; padding-left: 0; color: var(--muted); }
address { margin-top: .85rem; font-style: normal; }
