/* Страницы документов: политика обработки персональных данных (/privacy) и согласие (/soglasie) — в стиле сайта */
:root{
  --bg:#F4F9FD; --surface:#FFFFFF; --ink:#1E2A44; --navy:#1B3F8F; --green:#2FA36B; --muted:#5B6B85; --line:#DCE7F3;
  --blue:#3B82F6; --blue-soft:#E3EEFF; --green-soft:#DDF5EA; --purple:#7C4DFF; --purple-soft:#EEE7FF; --yellow:#F5B400; --yellow-soft:#FFF3CC; --pink-soft:#FFE7EE; --coral:#FF6B6B;
  --font:'Montserrat',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif; --hand:'Caveat',cursive;
  --shadow:0 2px 6px rgba(27,63,143,.05),0 16px 40px rgba(27,63,143,.10); --shadow-sm:0 1px 3px rgba(27,63,143,.06),0 8px 22px rgba(27,63,143,.07);
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
html{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
img,svg,a{-webkit-user-drag:none}
/* высота не меньше видимой части экрана (svh): с 100vh короткая страница на телефоне прокручивалась на высоту
   адресной строки. 100vh — для браузеров без svh */
body{margin:0;min-height:100vh;min-height:100svh;font-family:var(--font);font-size:16px;line-height:1.65;color:var(--ink);background:linear-gradient(180deg,#E3F3FE 0,#EEF8FE 320px,var(--bg) 640px) no-repeat,var(--bg);-webkit-font-smoothing:antialiased}
a{color:var(--navy);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
/* наведение — только для мыши: на телефоне после касания оно залипало бы */
@media (hover:hover){a:hover{color:var(--blue)}}
:focus-visible{outline:3px solid rgba(59,130,246,.45);outline-offset:3px;border-radius:6px}
.wrap{width:100%;max-width:880px;margin:0 auto;padding:0 16px}

/* шапка */
.top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 0 8px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--navy);font-weight:800;font-size:19px;letter-spacing:-.01em}
.logo svg{width:40px;height:40px;flex:none;filter:drop-shadow(0 6px 12px rgba(27,63,143,.16))}
.logo .h2{color:var(--green)}
.home{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;background:var(--surface);box-shadow:var(--shadow-sm);font-weight:700;font-size:14px;text-decoration:none;color:var(--navy);white-space:nowrap;transition:transform .3s cubic-bezier(.3,1.6,.5,1),scale .2s cubic-bezier(.2,.8,.2,1)}
@media (hover:hover){.home:hover{transform:translateY(-2px);color:var(--navy)}}
.home svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}

/* заголовок */
.hero{padding:26px 0 22px}
.chip{display:inline-block;padding:6px 14px;border-radius:999px;background:var(--green-soft);color:#1F7A4F;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
h1{margin:14px 0 10px;font-size:clamp(28px,6vw,44px);line-height:1.12;font-weight:800;letter-spacing:-.02em;color:var(--navy);overflow-wrap:break-word;hyphens:auto}
.meta{margin:0;color:var(--muted);font-size:14.5px;font-weight:600}

/* коротко */
.brief{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:12px;margin:0 0 18px;padding:0;list-style:none}
.brief li{display:flex;gap:12px;align-items:flex-start;padding:16px;border-radius:20px;background:rgba(255,255,255,.86);box-shadow:var(--shadow-sm)}
.brief .ic{flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--cb,var(--blue-soft))}
.brief .ic svg{width:19px;height:19px;fill:none;stroke:var(--ci,var(--blue));stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.brief b{display:block;color:var(--navy);font-size:14.5px;line-height:1.35;margin:1px 0 3px}
.brief span{display:block;font-size:14px;line-height:1.5;color:var(--muted)}

/* документ */
.doc{background:var(--surface);border-radius:30px;box-shadow:var(--shadow);padding:clamp(22px,5vw,52px);margin-bottom:22px}
.doc h2{display:flex;align-items:baseline;gap:12px;margin:34px 0 12px;font-size:clamp(19px,3.4vw,23px);line-height:1.3;font-weight:800;color:var(--navy);letter-spacing:-.01em}
.doc h2:first-child{margin-top:0}
.doc h2 .n{flex:none;display:inline-grid;place-items:center;min-width:34px;height:34px;padding:0 8px;border-radius:12px;background:var(--blue-soft);color:var(--blue);font-size:16px;transform:translateY(-2px)}
.doc p{margin:0 0 12px}
.doc ul,.doc ol{margin:0 0 14px;padding-left:22px}
.doc li{margin:0 0 7px}
.doc li::marker{color:var(--blue)}
.doc .pn{font-weight:700;color:var(--navy)}
.who{display:grid;gap:4px;margin:0 0 14px;padding:16px 18px;border-radius:18px;background:#F6FAFE;border:1px solid var(--line);font-size:15px}
.who b{color:var(--navy)}
.note{margin:14px 0;padding:14px 16px;border-radius:16px;background:var(--yellow-soft);font-size:15px;line-height:1.55}
.muted{color:var(--muted)}
.sign{margin-top:26px;padding-top:18px;border-top:1px solid var(--line);font-size:14px;color:var(--muted)}

/* подвал */
.foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 20px;padding:6px 2px 34px;font-size:13.5px;color:var(--muted)}
.foot nav{display:flex;flex-wrap:wrap;gap:8px 18px}

@media (max-width:420px){
  body{font-size:15.5px}
  .home span{display:none}
  .home{padding:10px 12px}
  .doc{border-radius:24px}
  .doc ul,.doc ol{padding-left:18px}
}
/* нажатие — как на главной: кнопка и ссылки шапки и подвала на миг сжимаются до 0.97, ссылки в тексте бледнеют
   (сжать строку текста нельзя). На iPhone :active работает благодаря пустому обработчику touchstart в странице */
.logo,.foot nav a{transition:scale .2s cubic-bezier(.2,.8,.2,1)}
:is(.logo,.home,.foot nav a):active{scale:.97}
.doc a{transition:opacity .2s}
.doc a:active{opacity:.6}
@media (prefers-reduced-motion:reduce){:is(.logo,.home,.foot nav a):active{scale:none;opacity:.7}}
/* под палец: на сенсорном экране всё нажимаемое не меньше 44 px. Ссылке в строке текста зону касания добавляют
   поля, отрицательные отступы забирают их обратно — строки не раздвигаются; z-index — чтобы соседняя строка
   не перекрывала эти поля */
@media (pointer:coarse){
  .logo,.home{min-height:44px}
  .home{min-width:44px;justify-content:center}
  .foot nav a{display:inline-flex;align-items:center;min-height:44px}
  .doc a{position:relative;z-index:1;display:inline-block;max-width:100%;padding:13px 0;margin:-13px 0;overflow-wrap:anywhere}
}
@media print{
  body{background:#fff;font-size:12pt}
  .top .home,.brief,.foot nav{display:none}
  .doc{box-shadow:none;padding:0}
  a{color:inherit}
}
/* слова через дефис (IP-адрес) не рвутся по дефису на узком экране */
.nw{white-space:nowrap}
