/* Стили страницы публичной оферты. Палитра и шрифты — как на лендинге,
   вёрстка своя: длинный документ с оглавлением, а не слайдер. */

:root{
  --bg:#f6faf7;
  --paper:#fff;
  --ink:#111;
  --text:#23302a;
  --muted:#5d6d64;
  --faint:#9aa8a0;
  --accent:#009245;
  --accent-dark:#00713a;
  --line:#d9e6dd;
  --line-soft:#e8f0ea;
  --dark:#0e2417;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
html,body{margin:0;padding:0;background:var(--bg);}
body{font-family:'Montserrat',sans-serif;color:var(--text);font-size:16px;line-height:1.62;-webkit-font-smoothing:antialiased;}
a{color:var(--accent);text-decoration:none;}
a:hover{color:var(--accent-dark);}

/* Шапка */
.top{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:20px;
  padding:14px clamp(18px,4vw,56px);background:rgba(246,250,247,.92);backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line-soft);}
.brand{display:flex;flex-direction:column;gap:2px;color:var(--ink);}
.brand-word{font-family:'Cormorant SC',serif;font-weight:600;font-size:19px;line-height:1;letter-spacing:.04em;color:var(--accent-dark);}
.brand-tm{font-family:'Montserrat',sans-serif;font-size:8px;font-weight:700;vertical-align:super;color:var(--faint);letter-spacing:0;}
.brand-rule-row{display:flex;align-items:center;gap:8px;}
.brand-by{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:500;font-size:11.5px;letter-spacing:.06em;color:#7c8a82;white-space:nowrap;}
.brand-rule{flex:1;height:1px;background:#c3d5c9;}
.back{flex-shrink:0;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--faint);transition:color .25s;}
.back:hover{color:var(--accent-dark);}

/* Заголовок документа */
.wrap{max-width:1180px;margin:0 auto;padding:clamp(28px,5vh,56px) clamp(18px,4vw,56px) clamp(40px,7vh,80px);}
.kicker{display:inline-block;background:#e3f4ea;color:var(--accent-dark);border-radius:999px;padding:7px 16px;
  font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;}
.doc-h1{font-family:'SL Serif',serif;font-weight:500;font-size:clamp(27px,4.2vw,44px);line-height:1.13;letter-spacing:-.015em;
  color:var(--ink);margin:18px 0 0;max-width:16em;text-wrap:balance;}
.doc-meta{margin:16px 0 0;max-width:44em;font-size:14.5px;line-height:1.55;color:var(--muted);}
.doc-meta b{color:var(--text);font-weight:700;}

/* Две колонки: оглавление и текст */
.cols{display:grid;grid-template-columns:250px minmax(0,1fr);gap:clamp(24px,3.4vw,52px);margin-top:clamp(26px,4.5vh,44px);align-items:start;}
.toc{position:sticky;top:92px;background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:18px 20px 20px;}
.toc-h{margin:0 0 12px;font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--faint);}
.toc ol{list-style:none;margin:0;padding:0;counter-reset:toc;display:flex;flex-direction:column;gap:9px;}
.toc li{counter-increment:toc;display:flex;gap:10px;align-items:baseline;}
.toc li::before{content:counter(toc);font-family:'SL Serif',serif;font-weight:600;font-size:14px;color:var(--faint);flex-shrink:0;width:1.1em;}
.toc a{font-size:14px;line-height:1.35;color:var(--text);}
.toc a:hover{color:var(--accent-dark);}

/* Тело документа */
.doc{background:var(--paper);border:1px solid var(--line);border-radius:20px;
  padding:clamp(22px,3vw,44px) clamp(20px,3vw,48px) clamp(30px,4vw,52px);box-shadow:0 10px 30px rgba(17,17,17,.05);}
.lead{margin:0 0 16px;font-size:16.5px;line-height:1.6;color:var(--text);}
.lead:first-child{font-size:17px;}
.lead b{font-weight:700;}

.sec{scroll-margin-top:96px;}
.sec+.sec{margin-top:clamp(26px,4vh,42px);}
.sec-h{display:flex;align-items:baseline;gap:14px;margin:clamp(28px,4.5vh,46px) 0 20px;padding-top:clamp(18px,3vh,28px);
  border-top:1px solid var(--line-soft);font-family:'SL Serif',serif;font-weight:600;font-size:clamp(20px,2.6vw,27px);
  line-height:1.2;letter-spacing:-.01em;color:var(--ink);text-wrap:pretty;}
.sec-n{flex-shrink:0;font-size:.86em;color:var(--accent);}
.sub-h{display:block;margin:26px 0 12px;font-family:'Montserrat',sans-serif;font-weight:700;font-size:16.5px;line-height:1.45;color:var(--ink);}

.cl{position:relative;margin:0 0 13px;padding-left:5.6em;}
.cl-n{position:absolute;left:0;top:0;width:5.2em;font-family:'SL Serif',serif;font-weight:600;font-size:15px;
  color:var(--accent-dark);font-variant-numeric:tabular-nums;}
.sub-h .cl-n{position:static;display:inline;width:auto;margin-right:.5em;font-size:1em;color:var(--accent);}
.cl-cont{padding-left:5.6em;}

ul.dash,ul.links{list-style:none;margin:0 0 13px;padding:0 0 0 5.6em;display:flex;flex-direction:column;gap:7px;}
ul.dash li,ul.links li{position:relative;padding-left:20px;}
ul.dash li::before{content:'';position:absolute;left:0;top:.72em;width:11px;height:1.5px;background:var(--accent);}
ul.links li::before{content:'';position:absolute;left:1px;top:.62em;width:6px;height:6px;border-radius:999px;background:var(--accent);}
ul.links a{word-break:break-word;}

.note{margin:16px 0 13px;margin-left:5.6em;background:#e6f0e8;border-left:3px solid var(--accent);border-radius:0 10px 10px 0;
  padding:12px 16px;font-size:15px;font-weight:700;color:var(--accent-dark);}

/* Реквизиты */
.req{margin-top:clamp(30px,5vh,50px);padding-top:clamp(20px,3vh,30px);border-top:1px solid var(--line-soft);}
.req-h{margin:0 0 14px;font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--faint);}
.req-name{margin:0 0 10px;font-family:'SL Serif',serif;font-weight:600;font-size:19px;color:var(--ink);}
.req dl{margin:0;display:grid;grid-template-columns:max-content 1fr;gap:6px 18px;font-size:15px;}
.req dt{color:var(--muted);}
.req dd{margin:0;}

/* Футер — как на лендинге */
.foot{background:var(--dark);color:rgba(255,255,255,.7);padding:clamp(24px,4vh,34px) clamp(18px,4vw,56px);}
/* baseline — первые строки колонок разного кегля, по верху они не совпадали */
.foot-row{max-width:1180px;margin:0 auto;display:flex;align-items:baseline;gap:clamp(28px,4vw,64px);}
.foot-col{display:flex;flex-direction:column;gap:5px;font-size:12.5px;width:clamp(200px,16.8vw,280px);flex-shrink:0;}
.foot-phone{color:#fff;font-weight:700;}
.foot-phone:hover{color:#fff;}
.foot-brand-col{display:flex;flex-direction:column;gap:6px;flex-shrink:0;}
.foot-brand{font-family:'Cormorant SC',serif;font-weight:600;font-size:19px;letter-spacing:.04em;color:#fff;}
.foot-about{font-size:12px;line-height:1.45;max-width:300px;}
.foot-link{color:rgba(255,255,255,.85);}
.foot-link:hover{color:#21cd71;}
.foot-link[aria-current="page"]{color:rgba(255,255,255,.45);pointer-events:none;}

/* Мобильная вёрстка */
@media (max-width:900px){
  /* minmax(0,…) — иначе широкий потомок растягивает колонку за пределы экрана */
  .cols{grid-template-columns:minmax(0,1fr);}
  .toc{position:static;}
  .toc ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 18px;}
}
@media (max-width:640px){
  body{font-size:15.5px;}
  .doc{border-radius:16px;}
  .toc ol{grid-template-columns:1fr;}
  .cl,.cl-cont,ul.dash,ul.links{padding-left:0;}
  .note{margin-left:0;}
  .cl-n{position:static;display:inline;width:auto;margin-right:.45em;}
  .req dl{grid-template-columns:1fr;gap:0;}
  .req dt{margin-top:12px;font-size:13.5px;}
  .req dt:first-of-type{margin-top:0;}
  .foot-row{flex-direction:column;gap:20px;}
  .foot-col{width:auto;}
}

/* Печать */
@media print{
  html,body{background:#fff;color:#000;}
  .top,.toc,.foot{display:none !important;}
  .wrap{max-width:none;padding:0;}
  .cols{display:block;}
  .doc{border:none;border-radius:0;box-shadow:none;padding:0;}
  .sec{break-inside:auto;}
  .sec-h{break-after:avoid;}
  a{color:#000;}
}
