/* v4-privacy.css — сборка web/styles/v4/*.css: privacy (python tools/build_css.py); руками не править */
.eyebrow{display:block;font:500 13px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--txt)}
.p-hero{position:relative;overflow:hidden;isolation:isolate;margin-top:calc(var(--bar-h) * -1);
padding-block:calc(var(--bar-h) + clamp(40px,5.5vw,84px)) clamp(28px,4vw,56px)}
.p-hero::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
background:radial-gradient(ellipse 50% 70% at 8% -10%,var(--blob-a),transparent 70%),radial-gradient(ellipse 42% 60% at 92% 10%,var(--blob-e),transparent 70%)}
.p-hero::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:48px 48px;
-webkit-mask-image:radial-gradient(ellipse 60% 90% at 100% 0%,var(--ink) 0%,transparent 70%);mask-image:radial-gradient(ellipse 60% 90% at 100% 0%,var(--ink) 0%,transparent 70%)}
.p-hero .in{max-width:1440px;margin-inline:auto}
.p-hero h1{margin-top:14px;max-width:16em;font:650 clamp(34px,5vw,72px)/1.02 var(--sans);letter-spacing:-.045em;color:var(--head);padding-bottom:.08em;
background:linear-gradient(180deg,var(--h1-a) 10%,var(--h1-b) 60%,var(--h1-c));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.p-hero .lead{margin-top:clamp(16px,2vw,24px);max-width:36em;font:500 clamp(17px,1.5vw,21px)/1.45 var(--sans);letter-spacing:-.01em;color:var(--txt);text-wrap:pretty}
.p-meta{margin-top:18px;font:400 13.5px/1.5 var(--mono);color:var(--txt);font-variant-numeric:tabular-nums}
.doc{max-width:1440px;margin-inline:auto;padding-block:clamp(8px,2vw,24px) 0;display:grid;gap:28px}
@media (min-width:1000px){.doc{grid-template-columns:260px minmax(0,1fr);gap:clamp(40px,6vw,96px);align-items:start}}
.toc{border-radius:var(--r-md);padding:18px 18px 10px;background:var(--surface);box-shadow:0 0 0 1px var(--line),var(--sh-card)}
@media (min-width:1000px) and (min-height:700px){.toc{position:sticky;top:calc(var(--bar-h) + 24px)}}
.toc h2{margin:0 0 6px;font:500 12px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--mut)}
.toc ol{list-style:none;counter-reset:t}
.toc li{counter-increment:t}
.toc a{display:flex;gap:10px;align-items:baseline;min-height:44px;padding-block:9px;color:var(--ink);text-decoration:none;font:500 14.5px/1.35 var(--sans)}
.toc a::before{content:counter(t,decimal-leading-zero);font:400 12px/1 var(--mono);color:var(--mut);font-variant-numeric:tabular-nums}
.toc a:hover{color:var(--head);text-decoration:underline;text-underline-offset:.25em}
.prose{max-width:44em}
.prose section{padding-block:clamp(20px,2.4vw,32px);border-top:1px solid var(--line);scroll-margin-top:calc(var(--bar-h) + 16px)}
.prose section:first-child{border-top:0;padding-top:0}
.prose h2{margin:0 0 12px;font:650 clamp(22px,2.2vw,30px)/1.15 var(--sans);letter-spacing:-.03em;color:var(--head)}
.prose p,.prose li{font:400 17px/1.65 var(--sans);color:var(--txt);text-wrap:pretty}
.prose p + p,.prose p + ul,.prose ul + p{margin-top:12px}
.prose ul{padding-left:1.2em;list-style:disc}
.prose li{margin-top:6px}
.prose li::marker{color:var(--blue)}
.prose strong{font-weight:600;color:var(--ink)}
.prose a{color:var(--head);text-decoration:underline;text-underline-offset:.2em;text-decoration-thickness:1px}
.prose a:hover{text-decoration-thickness:2px}
.callout{display:flex;gap:12px;align-items:flex-start;margin-top:14px;padding:16px 18px;border-radius:var(--r-md);background:var(--ice);box-shadow:0 0 0 1px var(--line)}
.callout svg{flex:none;width:22px;height:22px;margin-top:2px;fill:none;stroke:var(--head);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.callout p{color:var(--ink);font-size:16.5px}
.tbl{margin-top:14px;display:grid;gap:0;border-radius:var(--r-md);overflow:hidden;background:var(--surface);box-shadow:0 0 0 1px var(--line),var(--sh-card)}
.tbl .r{display:grid;grid-template-columns:1fr;gap:2px;padding:14px 18px;border-top:1px solid var(--line)}
.tbl .r:first-child{border-top:0}
.tbl dt{font:600 15.5px/1.4 var(--sans);color:var(--ink)}
.tbl dd{margin:0;font:400 15.5px/1.55 var(--sans);color:var(--txt)}
@media (min-width:700px){.tbl .r{grid-template-columns:200px 1fr;gap:20px}}
@media (max-width:560px){.prose p,.prose li{font-size:16.5px}}
