/* Privacy page (src/pages/privacy.html). Readable legal text. .ph marks a company field that is still empty in src/company.json. */
.pv-hero { padding: 152px 0 clamp(64px, 8vw, 104px); }
.pv-hero .wrap { display: grid; justify-items: start; gap: 24px; }
.pv-hero h1 { font-size: clamp(42px, 5.6vw, 80px); max-width: 15ch; }
.pv-hero .lede { max-width: 52ch; }

/* placeholders: a company field still empty in src/company.json ({{CO:...}} renders it visibly) */
.ph { font-family: var(--mono); font-size: .86em; letter-spacing: 0; padding: 1px 5px; border-radius: 4px; background: rgba(255, 95, 46, .16); color: var(--accent-ink); white-space: normal; box-decoration-break: clone; -webkit-box-decoration-break: clone; }
.ink .ph { color: var(--accent); background: rgba(255, 95, 46, .14); }

.pv-grid { display: grid; grid-template-columns: minmax(180px, 240px) minmax(0, 1fr); gap: clamp(32px, 6vw, 96px); align-items: start; }
.pv-toc { position: sticky; top: 120px; }
.pv-toc .mono { color: var(--muted); text-transform: uppercase; font-size: 12px; letter-spacing: .08em; margin: 0 0 12px; }
/* plain links, no 01 to 09 counters (visual pass 1 item 14 took the leading-zero pattern off /about/) */
.pv-toc ol { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; }
.pv-toc a { display: flex; gap: 10px; align-items: baseline; padding: 4px 0; min-height: 24px; font-size: 15px; color: var(--text); text-decoration: none; }
.pv-toc a:hover { text-decoration: underline; text-underline-offset: 4px; }

.pv-text { max-width: 68ch; display: grid; gap: clamp(40px, 5vw, 56px); }
.pv-text section { display: grid; gap: 14px; scroll-margin-top: 112px; }
.pv-text h2 { font-size: clamp(26px, 2.6vw, 34px); }
.pv-text h3 { font-size: 21px; }
.pv-text section > h3 { margin: 10px 0 -6px; font-size: 19px; }
.pv-text p { margin: 0; font-size: 17px; line-height: 1.65; color: var(--muted); text-wrap: pretty; }
.pv-text p a { color: var(--text); text-underline-offset: 3px; }

.pv-stop { margin-top: 8px; padding: 20px 22px; border-radius: var(--radius); background: var(--paper-2); display: grid; gap: 8px; }
.pv-stop p { color: var(--text); }

.pv-list { list-style: none; margin: 4px 0; padding: 0; border-top: 1px solid var(--line); }
.pv-list li { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr); gap: 4px 24px; padding: 12px 0; border-bottom: 1px solid var(--line); font-size: 16px; line-height: 1.5; }
.pv-list b { font-weight: 600; color: var(--text); }
.pv-list li > span { color: var(--muted); }
.pv-list b .ph { font-weight: 400; }

@media (max-width: 860px) {
  .pv-grid { grid-template-columns: 1fr; }
  .pv-toc { position: static; }
  .pv-toc ol { grid-template-columns: 1fr 1fr; column-gap: 20px; }
}
@media (max-width: 520px) {
  .pv-hero { padding-top: 132px; }
  .pv-toc ol { grid-template-columns: 1fr; }
  .pv-list li { grid-template-columns: 1fr; }
  .pv-text p { font-size: 16px; }
}
