/* Юридические страницы: политика, оферта.
   Колонка ~760px, крупный текст и воздух между пунктами, как на старых страницах курса.
   Номера — мелкие серые на полях слева, как параграфы в «Ководстве» Лебедева. */
:root{--bg:#fff;--ink:#141a33;--ink2:#5b6178;--ink3:#a3a8b8;--border:#eceef4;--primary:#4b5bff}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:400 19px/1.6 "Roboto Flex",system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased}
/* полоса прогресса чтения */
.read{position:fixed;left:0;top:0;right:0;height:3px;z-index:20;background:var(--primary);transform:scaleX(var(--p,0));transform-origin:left}
.top{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.88);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}
.top-in{max-width:1000px;margin:0 auto;padding:14px 20px;display:flex;align-items:center;gap:16px}
.top img{display:block;width:40px;height:38px}
.top nav{margin-left:auto;display:flex;gap:24px;font-size:16px}
.top nav a{color:var(--ink2);text-decoration:none}
.top nav a:hover,.top nav a[aria-current]{color:var(--ink)}
main{max-width:760px;margin:0 auto;padding:72px 20px 96px}
h1{font-size:clamp(34px,5.4vw,52px);line-height:1.08;letter-spacing:-.025em;font-weight:800;margin:0 0 14px}
.ed{color:var(--ink3);font-size:16px;margin:0 0 48px}
.lead{margin:0 0 8px;font-size:21px;line-height:1.55}
h2{position:relative;font-size:clamp(26px,3.4vw,32px);line-height:1.2;letter-spacing:-.02em;font-weight:700;margin:72px 0 24px}
.it{position:relative;margin:0 0 22px}
/* номер — на полях, мелкий и серый */
h2>span:first-child,.it>b{position:absolute;right:calc(100% + 28px);white-space:nowrap;font-size:13px;line-height:1;font-weight:400;color:var(--ink3);font-variant-numeric:tabular-nums;letter-spacing:.02em}
h2>span:first-child{top:.75em}
.it>b{top:.6em}
.it>div>p{margin:0}
.it ul{margin:10px 0 0;padding-left:22px}
.it li{margin:6px 0}
.it li::marker{color:var(--ink3)}
.req{margin-top:72px;padding-top:28px;border-top:1px solid var(--border);color:var(--ink2);font-size:17px}
.req b{color:var(--ink)}
a{color:var(--primary)}
.foot{max-width:760px;margin:0 auto;padding:0 20px 48px;color:var(--ink3);font-size:14px}
/* на узком экране полей нет — номер встаёт над текстом */
@media (max-width:900px){
  body{font-size:17px}
  .lead{font-size:18px}
  main{padding-top:48px}
  h2{margin-top:56px}
  h2>span:first-child,.it>b{position:static;display:block;margin:0 0 6px}
  .it{margin-bottom:20px}
  .top nav{gap:16px;font-size:15px}
}
