/* Privacy and terms · a reading page: label → headline → the two parts, each with short headed paragraphs and lists.
   Scoped to body.p-privacy; builds on css/fot.css. */
body.p-privacy .pv-head { padding-top: calc(var(--edge) + 136px); }
body.p-privacy .pv-head__t { gap: 22px; }
body.p-privacy .pv-head .h1 { font-size: clamp(46px, 5.6vw, 96px); max-width: 14ch; text-wrap: balance; }
body.p-privacy .pv-head .lead { max-width: 36ch; text-wrap: pretty; }
body.p-privacy .pv-date { font: 500 12px/1.2 var(--mono); letter-spacing: .06em; text-transform: uppercase; color: var(--fg-2); }
body.p-privacy .pv-toc { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; align-self: end; }

body.p-privacy .pv-text { display: flex; flex-direction: column; gap: 14px; max-width: 64ch; }
body.p-privacy .pv-text h3 { margin: 22px 0 0; font: 700 clamp(20px, 1.6vw, 24px)/1.2 var(--sans); letter-spacing: -.01em; text-wrap: balance; }
body.p-privacy .pv-text h3:first-child { margin-top: 0; }
body.p-privacy .pv-text p, body.p-privacy .pv-text li { font-size: 17px; line-height: 1.6; }
body.p-privacy .pv-text ul { display: flex; flex-direction: column; gap: 8px; }
body.p-privacy .pv-text li { display: grid; grid-template-columns: 16px minmax(0, 1fr); gap: 8px; }
body.p-privacy .pv-text li::before { content: ""; inline-size: 7px; block-size: 7px; margin-top: 10px; background: var(--accent); }
body.p-privacy .pv-text b { font-weight: 700; }
body.p-privacy .pv-text a { text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
body.p-privacy .pv-text a:hover { color: var(--accent-t); }

@media (max-width: 1080px) {
  body.p-privacy .pv-toc { align-self: start; margin-top: 28px; }
}
