/* Общие стили юридических страниц. В проде — влить в шаблон сайта. */
:root{
  --primary:#0891B2;--accent:#059669;--bg:#ECFEFF;--fg:#164E63;
  --muted:#E8F1F6;--border:#A5F3FC;--surface:#fff;--fg-soft:#3F6B7D;
  --font-h:"Figtree","Segoe UI",system-ui,sans-serif;
  --font-b:"Noto Sans","Segoe UI",system-ui,sans-serif;
}
*{box-sizing:border-box}
body{margin:0;font-family:var(--font-b);font-size:16px;line-height:1.65;
     color:var(--fg);background:var(--bg);-webkit-text-size-adjust:100%}
h1,h2,h3{font-family:var(--font-h);line-height:1.3;margin:32px 0 14px}
h1{font-size:clamp(26px,4.5vw,36px);font-weight:700;margin-top:0}
h2{font-size:21px;font-weight:600}
h3{font-size:18px;font-weight:600}
p,li{max-width:78ch}
p{margin:0 0 14px}
ul,ol{margin:0 0 16px;padding-left:22px}
li{margin-bottom:7px}
a{color:var(--primary)}
.wrap{max-width:900px;margin:0 auto;padding:0 20px}
main{padding:40px 0 64px}
:focus-visible{outline:3px solid var(--primary);outline-offset:3px;border-radius:4px}

.hdr{background:var(--surface);border-bottom:1px solid var(--border)}
.hdr .wrap{display:flex;align-items:center;gap:24px;min-height:64px;flex-wrap:wrap}
.logo{font-family:var(--font-h);font-weight:700;font-size:20px;color:var(--fg);text-decoration:none}
.nav{display:flex;gap:20px;flex-wrap:wrap;margin-left:auto}
.nav a{color:var(--fg-soft);text-decoration:none;font-size:15px;padding:8px 0}
.nav a.new{color:var(--accent);font-weight:600}

.meta{color:var(--fg-soft);font-size:14px;margin:0 0 28px}
.box{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:22px 24px;margin:0 0 24px}
.warn{background:#FFFBEB;border:1px solid #FDE68A;border-radius:12px;padding:20px 24px;margin:0 0 24px}
.warn p,.warn li{color:#78350F}
.todo{background:#FEF2F2;border:1px dashed #FCA5A5;border-radius:12px;padding:20px 24px;margin:0 0 24px}
.todo p,.todo li{color:#7F1D1D}
.todo code{background:#fff;padding:2px 6px;border-radius:4px;font-size:14px}
table{width:100%;border-collapse:collapse;font-size:15px;background:var(--surface);
      border:1px solid var(--border);border-radius:12px;overflow:hidden;margin:0 0 24px}
th,td{padding:11px 16px;text-align:left;border-bottom:1px solid var(--muted);vertical-align:top}
th{width:42%;font-weight:600;color:var(--fg-soft);font-size:14px}
tr:last-child th,tr:last-child td{border-bottom:0}
.ftr{background:#0E4A5C;color:#CFF3FB;padding:28px 0;font-size:14px}
.ftr a{color:#A5F3FC}
.ftr p{max-width:none;margin:0}
