/* Privacy page: the site's night stage, a cream "in short" card cut like the race bib, then a reading column
   with a sticky numbered index. Long text sits a step below brand cream so it stays easy on the eyes. */
.pv { --read: #ddd6cc; --cell: #bdb6ac; }

.pv-head { padding-block: calc(var(--nav-h) + 96px) 56px;
  background: radial-gradient(70% 90% at 100% 0%, rgba(255, 106, 61, .13), rgba(255, 106, 61, 0) 62%); }
.pv-title { font-size: clamp(64px, 10vw, 150px); margin-bottom: 24px; }
/* "КОНФИДЕНЦИАЛЬНОСТИ" is one long uppercase word: size it to fit a phone line instead of breaking it */
:lang(ru) .pv-title { font-size: clamp(26px, 7.6vw, 104px); overflow-wrap: break-word; }
.pv-lead { font-size: clamp(18px, 1.6vw, 21px); max-width: 52ch; color: #e7e1d8; margin: 0 0 18px; text-wrap: pretty; }
.pv-updated { margin: 0; font: 500 13px/1.4 var(--mono); letter-spacing: .04em; color: var(--mute); }
:lang(he) .pv-updated, :lang(ar) .pv-updated { font-family: var(--body); font-size: 14px; }

/* in short: cream bib card */
.pv-tldr { position: relative; background: var(--cream); color: var(--paper-ink); border-radius: 18px; padding: 36px 40px 40px;
  background-image: radial-gradient(rgba(0, 0, 0, .025) 1px, transparent 1px); background-size: 6px 6px;
  box-shadow: 0 30px 60px -34px rgba(0, 0, 0, .7); }
.pv-tldr .pin { background: var(--ink); box-shadow: inset 0 2px 3px rgba(0, 0, 0, .5); }
.pv-tldr h2 { font-size: clamp(40px, 4.4vw, 60px); margin-bottom: 22px; }
.pv-tldr-list { list-style: none; margin: 0; padding: 0; counter-reset: tl; display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 18px 30px; }
.pv-tldr-list li { counter-increment: tl; border-top: 1.5px solid #ded6c9; padding-top: 14px; font-size: 16.5px; line-height: 1.55; text-wrap: pretty; }
.pv-tldr-list li::before { content: counter(tl, decimal-leading-zero); display: block; margin-bottom: 6px; font: 500 13px/1 var(--mono); color: var(--heat-ink); letter-spacing: .06em; }

/* body: index + reading column */
.pv-body { display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: 72px; align-items: start; padding-block: 88px 120px; }
.pv-toc { position: sticky; top: calc(var(--nav-h) + 32px); }
.pv-toc-t { margin: 0 0 12px; font: 500 12px/1.3 var(--mono); letter-spacing: .14em; text-transform: uppercase; color: var(--mute); }
:lang(he) .pv-toc-t, :lang(ar) .pv-toc-t { font-family: var(--body); font-size: 13px; letter-spacing: .03em; }
.pv-toc ol { list-style: none; margin: 0; padding: 0; display: grid; }
.pv-toc a { display: flex; gap: 12px; align-items: baseline; padding: 7px 0; padding-inline-start: 14px; border-inline-start: 2px solid var(--line);
  color: var(--mute); text-decoration: none; font-size: 14.5px; line-height: 1.35; transition: color .2s, border-color .2s; }
.pv-toc a span { font: 500 12px/1 var(--mono); color: var(--mute-2); flex: none; }
.pv-toc a:hover { color: var(--cream); }
.pv-toc a.on { color: var(--cream); border-inline-start-color: var(--heat); }
.pv-toc a.on span { color: var(--heat-2); }

.pv-doc { max-width: 70ch; min-width: 0; }
.pv-sec { scroll-margin-top: calc(var(--nav-h) + 28px); padding-block: 48px; border-top: 1px solid var(--line); }
.pv-sec:first-child { padding-top: 0; border-top: 0; }
.pv-sec:last-child { padding-bottom: 0; }
.pv-sec h2 { margin: 0 0 20px; display: flex; align-items: baseline; gap: 16px; font-weight: 400; }
.pv-n { font: 500 14px/1 var(--mono); color: var(--heat-2); flex: none; }
.pv-sec h2 .display { font-size: clamp(38px, 4vw, 56px); }
:lang(ru) .pv-sec h2 .display { font-size: clamp(28px, 3vw, 42px); }
:lang(ar) .pv-sec h2 .display { font-size: clamp(30px, 3.2vw, 44px); }

.pv-text { color: var(--read); line-height: 1.75; }
.pv-text p { margin: 0 0 14px; text-wrap: pretty; }
.pv-text > :last-child { margin-bottom: 0; }
.pv-text ul { list-style: none; margin: 0 0 16px; padding: 0; display: grid; gap: 10px; }
.pv-text li { position: relative; padding-inline-start: 24px; text-wrap: pretty; }
.pv-text li::before { content: ""; position: absolute; inset-inline-start: 0; top: .8em; width: 11px; height: 2px; border-radius: 2px; background: var(--heat); }
.pv-text a { color: var(--heat-2); text-underline-offset: 3px; }
.pv-text b { color: var(--cream); font-weight: 500; }

/* what we keep */
.pv-table-wrap { overflow-x: auto; margin: 6px 0 22px; border: 1px solid var(--line); border-radius: 14px; background: var(--ink-2); }
.pv-table { width: 100%; border-collapse: collapse; font-size: 15px; line-height: 1.55; }
.pv-table th, .pv-table td { text-align: start; vertical-align: top; padding: 14px 18px; }
.pv-table thead th { font: 500 12px/1.3 var(--mono); letter-spacing: .12em; text-transform: uppercase; color: var(--mute); border-bottom: 1px solid var(--line); }
:lang(he) .pv-table thead th, :lang(ar) .pv-table thead th { font-family: var(--body); font-size: 13px; letter-spacing: .03em; }
.pv-group th { padding-block: 10px; background: rgba(255, 255, 255, .03); color: var(--heat-2); font-size: 13px; font-weight: 500; border-bottom: 1px solid var(--line); }
.pv-table tbody tr:not(.pv-group) th { width: 42%; color: var(--cream); font-weight: 500; }
.pv-table tbody td { color: var(--cell); }
.pv-table tbody tr:not(.pv-group) > * { border-bottom: 1px solid #252428; }
.pv-table tbody:last-child tr:last-child > * { border-bottom: 0; }

.pv-mail { display: inline-block; margin-top: 6px; padding: 14px 20px; border-radius: 14px; background: var(--ink-2); border: 1px solid var(--line);
  color: var(--cream) !important; text-decoration: none; font: 500 clamp(16px, 2vw, 20px)/1.2 var(--mono); overflow-wrap: anywhere; transition: border-color .2s; }
.pv-mail:hover { border-color: var(--heat); }

@media (max-width: 980px) {
  .pv-body { grid-template-columns: minmax(0, 1fr); gap: 0; padding-block: 64px 96px; }
  .pv-toc { display: none; }
}
@media (max-width: 760px) {
  .pv-head { padding-block: calc(var(--nav-h) + 64px) 40px; }
  .pv-tldr { padding: 30px 22px 30px; }
  .pv-sec { padding-block: 40px; }
  .pv-sec h2 { gap: 12px; }
}
@media (max-width: 640px) {
  .pv-table, .pv-table tbody, .pv-table tr, .pv-table th, .pv-table td { display: block; width: auto !important; }
  .pv-table thead { display: none; }
  .pv-table tbody tr:not(.pv-group) { border-bottom: 1px solid #252428; padding-block: 12px; }
  .pv-table tbody:last-child tr:last-child { border-bottom: 0; }
  .pv-table tbody tr:not(.pv-group) > * { border-bottom: 0; padding-block: 0; }
  .pv-table tbody tr:not(.pv-group) th { margin-bottom: 4px; }
}
