:root { --green:#315a40; --dark:#171c18; --muted:#6f786f; --paper:#f4f6f1; }
* { box-sizing:border-box; }
body { margin:0; background:radial-gradient(circle at 12% 0,#e7efe4 0,transparent 31%),var(--paper); color:var(--dark); font-family:Inter,Arial,sans-serif; }
a { color:inherit; }
.legal-header { width:min(1080px,calc(100% - 36px)); min-height:88px; display:flex; align-items:center; justify-content:space-between; gap:20px; margin:auto; }
.legal-brand { display:flex; align-items:center; gap:11px; text-decoration:none; font-size:21px; font-weight:800; letter-spacing:-.04em; }
.legal-brand i { width:8px; height:8px; border-radius:50%; background:var(--green); box-shadow:0 0 0 6px rgba(49,90,64,.08); }
.legal-back { min-height:44px; display:inline-flex; align-items:center; padding:0 18px; border:1px solid rgba(49,90,64,.1); border-radius:999px; background:rgba(255,255,255,.75); color:var(--green); text-decoration:none; font-size:11px; font-weight:750; }
.legal-layout { width:min(1080px,calc(100% - 36px)); display:grid; grid-template-columns:minmax(0,1fr) 240px; gap:20px; align-items:start; margin:0 auto 24px; }
.legal-document { padding:54px 58px; border:1px solid rgba(49,90,64,.09); border-radius:34px; background:rgba(255,255,255,.9); box-shadow:0 24px 70px rgba(35,62,43,.07); }
.legal-kicker { display:block; margin-bottom:16px; color:var(--green); font-size:9px; font-weight:800; letter-spacing:.19em; }
.legal-document h1 { max-width:760px; margin:0; font-size:clamp(34px,5vw,58px); line-height:1; letter-spacing:-.055em; }
.legal-lead { max-width:760px; margin:23px 0 38px; color:var(--muted); font-size:14px; line-height:1.75; }
.legal-document h2 { margin:34px 0 11px; font-size:20px; line-height:1.25; letter-spacing:-.025em; }
.legal-document p,.legal-document li { color:#596159; font-size:12px; line-height:1.75; }
.legal-document ul,.legal-document ol { margin:10px 0 0; padding-left:20px; }
.legal-note { margin:26px 0; padding:20px 22px; border-left:3px solid var(--green); border-radius:0 18px 18px 0; background:#eef3eb; }
.legal-note p { margin:0; color:#415044; }
.legal-requisites { display:grid; gap:8px; margin-top:16px; padding:20px; border-radius:20px; background:#f3f5f0; }
.legal-requisites div { display:grid; grid-template-columns:150px 1fr; gap:16px; font-size:11px; line-height:1.5; }
.legal-requisites span { color:#899087; }
.legal-requisites strong { overflow-wrap:anywhere; font-weight:650; }
.legal-nav { position:sticky; top:18px; display:grid; gap:7px; padding:18px; border:1px solid rgba(49,90,64,.09); border-radius:24px; background:rgba(255,255,255,.76); }
.legal-nav>span { margin:4px 4px 9px; color:#8c958c; font-size:8px; font-weight:800; letter-spacing:.17em; }
.legal-nav a { min-height:43px; display:flex; align-items:center; padding:0 13px; border-radius:13px; color:#5f685f; text-decoration:none; font-size:10px; font-weight:700; }
.legal-nav a:hover,.legal-nav a.active { background:#eaf0e7; color:var(--green); }
.legal-footer { width:min(1080px,calc(100% - 36px)); display:flex; justify-content:space-between; gap:22px; margin:0 auto 28px; padding:22px 26px; border-radius:22px; background:#1f3d2b; color:rgba(255,255,255,.65); font-size:9px; line-height:1.55; }
.legal-footer strong { color:#fff; font-size:13px; }
.legal-draft-warning { display:none; margin:0 0 28px; padding:17px 19px; border:1px solid #e6c983; border-radius:16px; background:#fff8e7; color:#725a22; font-size:11px; line-height:1.55; }
.legal-draft-warning.visible { display:block; }
@media (max-width:760px) {
  .legal-header,.legal-layout,.legal-footer { width:calc(100% - 28px); }
  .legal-header { min-height:76px; }
  .legal-layout { grid-template-columns:1fr; }
  .legal-document { padding:34px 24px; border-radius:28px; }
  .legal-document h1 { font-size:39px; }
  .legal-lead { font-size:13px; }
  .legal-nav { position:static; grid-template-columns:1fr 1fr; order:-1; }
  .legal-nav>span { grid-column:1/-1; }
  .legal-requisites div { grid-template-columns:1fr; gap:2px; }
  .legal-footer { flex-direction:column; }
}
