/* Privacy Policy — frames privacy-policy-page (19:334) and mobile-privacy-policy
 * (47:4). Overrides on top of pages/legal.css: light workspace, directory with a
 * 2px left bar, metadata band with search; the 390 frame pads 20, not 16.
 * Numbers from fig-spec. */

.lhero--privacy { justify-content: center; gap: 16px; min-height: 340px; padding: 64px var(--container-pad); }
.lhero--privacy .lhero__eyebrow { letter-spacing: 2px; }
.lhero--privacy .lhero__title { font-size: 56px; line-height: 62px; }

/* ── 04 document metadata + search ────────────────────────────────────── */
.pmeta { display: flex; gap: 80px; padding: 48px var(--container-pad); background: var(--color-card-2); box-shadow: inset 0 -1px 0 var(--color-border-light); }
.pmeta__left { display: flex; flex-direction: column; gap: 32px; flex: 1; min-width: 0; }
.pmeta__block { display: flex; flex-direction: column; gap: 16px; }
.pmeta__title { font-family: var(--font-display); font-size: 18px; line-height: 20px; text-transform: uppercase; color: var(--color-ink); }
.pmeta__grid { display: flex; flex-direction: column; gap: 12px; }
.pmeta__row { display: flex; gap: 8px; }
.pmeta__label { flex: none; width: 140px; font-weight: 700; font-size: 14px; line-height: 18px; text-transform: uppercase; color: var(--color-muted-3); }
.pmeta__value { font-size: 14px; line-height: 18px; color: var(--color-ink); }
.pmeta__search-label { font-family: var(--font-display); font-weight: 400; font-size: 14px; line-height: 15px; color: var(--color-ink); }
.pmeta .doc-search__box { gap: 12px; min-height: 50px; padding: 16px; box-shadow: inset 0 0 0 1px var(--color-border-light); }
.pmeta .doc-search__icon { color: var(--color-muted-3); }
.pmeta .doc-search__input::placeholder { color: var(--color-muted-2); }

/* ── 05 workspace ─────────────────────────────────────────────────────── */
.doc--privacy { padding: 64px var(--container-pad) 80px; }
.doc--privacy .doc__nav { gap: 16px; }
.doc--privacy .doc__nav-title { letter-spacing: 1px; color: var(--color-ink); }
.doc--privacy .doc-toc { gap: 12px; }
.doc--privacy .doc-toc__link { padding: 0 12px; border-radius: 0; box-shadow: inset 2px 0 0 transparent; color: var(--color-muted-3); }
.doc--privacy .doc-toc__link:hover { background: none; color: var(--color-purple); }
.doc--privacy .doc-toc__link.is-active { background: none; box-shadow: inset 2px 0 0 var(--color-purple); color: var(--color-purple); }

.doc--privacy .doc__body { flex: none; width: 820px; gap: 96px; }   /* 48 + LINE + 48 between sections */
.doc--privacy .doc-sec { gap: 20px; }
.doc--privacy .doc-sec__head { gap: 12px; min-height: 30px; }
.doc--privacy .doc-sec__num { font-family: var(--font-display); font-weight: 400; font-size: 28px; line-height: 30px; color: var(--color-purple); }
.doc--privacy .doc-sec__title { font-size: 22px; line-height: 24px; }
.doc--privacy .doc-sec__line { display: none; }
.doc--privacy .doc-sec__end { display: block; position: absolute; left: 0; right: 0; bottom: -48px; height: 1px; background: var(--doc-line); }
.doc--privacy .doc-p { max-width: none; font-size: 15px; line-height: 26px; color: var(--color-muted-3); }
.doc--privacy .doc-list { gap: 12px; max-width: none; }
.doc--privacy .doc-list__item { display: block; font-size: 15px; line-height: 26px; }              /* "• text" is one run in the mockup: no hanging indent */
.doc--privacy .doc-list__marker { font-weight: 400; font-size: 15px; line-height: 26px; color: var(--color-muted-3); }
.doc--privacy .doc-list__marker::after { content: " "; }
.doc--privacy .doc-list__text { line-height: 26px; color: var(--color-muted-3); }
.doc-foot--privacy { flex-direction: column; align-items: stretch; gap: 24px; }
.doc-foot__row { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.doc-foot--privacy .doc-foot__end { font-family: var(--font-display); font-size: 12px; line-height: 13px; letter-spacing: 2px; color: var(--color-muted-2); }
.doc-foot--privacy .doc-foot__top { font-family: var(--font-display); font-weight: 400; font-size: 13px; line-height: 14px; color: var(--color-purple); }
.doc-foot__related { display: flex; flex-wrap: wrap; align-items: center; gap: 32px; }
.doc-foot__related li { display: flex; }
.doc-foot__link { font-family: var(--font-display); font-size: 13px; line-height: 14px; text-transform: uppercase; color: var(--color-ink); text-decoration: none; }
.doc-foot__link:hover { color: var(--color-purple); }

/* ── mobile ───────────────────────────────────────────────────────────── */
@media (max-width: 1199px) {
  .lhero--privacy { align-items: center; gap: 12px; min-height: 0; padding: 40px 20px; text-align: center; }
  .lhero--privacy .lhero__eyebrow { font-size: 12px; line-height: 16px; letter-spacing: 2px; }
  .lhero--privacy .lhero__eyebrow-b { color: var(--color-brand); }
  .lhero--privacy .lhero__title { font-size: 32px; line-height: 38px; }

  .pmeta { gap: 0; padding: 24px 20px; }
  .pmeta__left { gap: 20px; }
  .pmeta__block { gap: 12px; }
  .pmeta__title { font-size: 14px; line-height: 15px; color: var(--color-muted); }
  .pmeta__grid { gap: 10px; }
  .pmeta__row { flex-direction: column; gap: 8px; }
  .pmeta__label { width: auto; font-size: 12px; line-height: 16px; }
  .pmeta__value { color: var(--color-muted); }
  .pmeta__search-label { font-size: 12px; line-height: 13px; color: var(--color-muted); }
  .pmeta .doc-search__box { gap: 10px; min-height: 41px; padding: 12px; border-radius: 6px; }   /* 6px as drawn */
  .pmeta .doc-search__input { font-size: 13px; line-height: 17px; }
  .pmeta .doc-search__input::placeholder { color: var(--color-muted); }

  .doc--privacy { padding: 0; }
  .doc--privacy .doc__nav { gap: 16px; padding: 24px 20px; background: #18181b; box-shadow: none; }   /* one-off ink from the mobile frame */
  .doc--privacy .doc__nav-title { font-size: 12px; line-height: 13px; letter-spacing: 1px; color: var(--color-text); }
  .doc--privacy .doc__nav-line { display: none; }
  .doc--privacy .doc-toc { gap: 10px; }
  .doc--privacy .doc-toc__link { gap: .3em; padding: 4px 4px 4px 10px; font-weight: 500; color: var(--color-muted); }
  .doc--privacy .doc-toc__link:hover, .doc--privacy .doc-toc__link.is-active { box-shadow: inset 2px 0 0 var(--color-purple-light); font-weight: 700; color: var(--color-purple-light); }
  .doc--privacy .doc-toc__num { font-family: var(--font-body); font-weight: inherit; font-size: 13px; line-height: 17px; color: inherit; }
  .doc--privacy .doc-toc__label { text-transform: none; }

  .doc--privacy .doc__body { flex: initial; width: auto; gap: 64px; padding: 32px 20px 40px; }   /* 32 + LINE + 32 */
  .doc--privacy .doc-sec { gap: 12px; }
  .doc--privacy .doc-sec:last-of-type { gap: 16px; }
  .doc--privacy .doc-sec__head { flex-direction: row; align-items: center; gap: 8px; min-height: 0; }
  .doc--privacy .doc-sec__num { font-size: 20px; line-height: 22px; }
  .doc--privacy .doc-sec__title { flex: 1; font-size: 16px; line-height: 17px; }
  .doc--privacy .doc-sec__end { display: block; width: auto; height: 1px; bottom: -32px; background: var(--doc-line); }
  .doc--privacy .doc-sec:last-of-type .doc-sec__end { display: none; }
  .doc--privacy .doc-p, .doc--privacy .doc-list__marker, .doc--privacy .doc-list__text { font-size: 14px; line-height: 22px; }
  .doc--privacy .doc-list { gap: 10px; padding: 0 4px; }
  .doc--privacy .doc-list__item { font-size: 14px; line-height: 22px; }
  .doc--privacy .doc-ps { gap: 12px; }
  .doc--privacy .doc-link { align-self: stretch; display: flex; align-items: center; justify-content: center; min-height: 38px; padding: 12px 24px; border-radius: var(--radius-sm); background: var(--color-brand); font-size: 13px; line-height: 14px; text-transform: uppercase; color: var(--color-ink); }
  .doc--privacy .doc-link:hover { background: var(--color-brand-hover); text-decoration: none; }
  .doc-foot--privacy { gap: 24px; margin-top: -32px; padding: 24px 0 0; }   /* no LINE before the foot: 32 after the last section, not 64 */   /* frame FIXED 157: bottom padding clipped */
  .doc-foot__row { flex-direction: column; gap: 10px; }
  .doc-foot--privacy .doc-foot__end { font-size: 11px; line-height: 12px; color: var(--color-muted); }
  .doc-foot--privacy .doc-foot__top { font-size: 11px; line-height: 12px; }
  .doc-foot__related { flex-direction: column; align-items: flex-start; gap: 12px; padding: 12px 0 0; }   /* frame FIXED 75 */
  .doc-foot__link { font-size: 12px; line-height: 13px; }
}
