/* ============================================================
   ЛЕГКО — общий фундамент статей-лонгридов (ипотека, морозы, …)
   ------------------------------------------------------------
   Подключать НА ВЕСЬ САЙТ: Настройки сайта → Ещё → HTML-код внутрь
   HEAD → .

   Обёртка статьи — <div class="legko-article legko-<slug>">.
   Общие компоненты — префикс .legko-a-  (section, h1/h2/h3, p,
   list, callout, btn, cta, faq, toc, contacts, photo).
   Уникальные блоки каждой статьи (2026-09-22: слиты сюда же, один
   файл на весь сайт) — под своим префиксом (.legko-ip-/.legko-mz-),
   скоуплены селектором обёртки (.legko-ipoteka/.legko-moroz), см.
   блоки «Уникальный слой: …» в конце файла.

   Токены — из DESIGN-SYSTEM.md. Глобальные селекторы — html{scroll-
   behavior}, html{overflow-x} (см. ниже) и «#allrecords .legko-article
   a» (совпадает только внутри обёртки) — для остальных страниц сайта
   безопасны.
   ============================================================ */

:root{
  --legko-space-xs:12px;
  --legko-space-sm:20px;
  --legko-space-md:32px;
  --legko-space-lg:56px;
  --legko-space-xl:96px;
  --legko-green-dark:#2a7844;
  --legko-green-mid:#5eba92;
  --legko-green-main:#80b893;
  --legko-green-light:#a9dcba;
  --legko-text:#292a2a;
  /* Читаемая колонка: абзацы/списки/таблицы/заголовки сидят в этой
     центральной ширине; фото и hero выходят на всю ширину окна.
     Дефолт — плоские 700px (~80 знаков в строке). Статья может
     переопределить на своей обёртке (ипотека — на clamp), НО не в
     :root, иначе значение утечёт на соседние страницы. */
  --legko-col:700px;
  /* Контейнер по ширине окна: боковой отступ hero/контактов масштабируется. */
  --legko-pad-x:140px;
}
/* 1440–1919 и 1200–1439 делят один отступ — один брейк на оба. */
@media screen and (max-width:1919px){:root{--legko-pad-x:70px;}}
@media screen and (max-width:1199px){:root{--legko-pad-x:40px;}}
@media screen and (max-width:1023px){:root{--legko-pad-x:20px;}}
/* Якоря оглавления скроллятся плавно; при reduce-motion — мгновенно. */
@media (prefers-reduced-motion: no-preference){html{scroll-behavior:smooth;}}
/* Статьи с sticky-рельсой (ипотека/бизнес/…) пробивают edge-to-edge фото
   приёмом 100vw + отрицательный margin, который на Windows/Linux (там,
   где вертикальный скроллбар занимает место в раскладке) может добавить
   пару лишних десятков пикселей к scrollWidth страницы. clip не срезает
   сам breakout — оба края и так совпадают с окном — только гасит
   гипотетическую горизонтальную прокрутку от этого зазора. */
html{overflow-x:clip;}

.legko-article{width:100%;font-family:Montserrat,Arial,sans-serif;color:var(--legko-text);}
.legko-article *{box-sizing:border-box;}
/* Якорь приземляется с отступом под фикс-меню Тильды. */
.legko-article [id]{scroll-margin-top:80px;}
/* Фирменное выделение текста вместо системного синего. */
.legko-article ::selection{background:var(--legko-green-light);color:#1c1d1d;}

/* ============================================================
   0. ШАПКА САЙТА (сайтвайд, .legko-a-header) — вставляется первым
   T123-блоком на КАЖДОЙ странице сайта, ВНЕ обёртки .legko-article
   (главная/статьи/бизнес/регион — все страницы одинаково), поэтому
   box-sizing задан явно, а не наследуется от .legko-article *.

   Раскладка — один flex-ряд (не grid): лого, 4 группы меню (у 
   display:contents — его дети становятся прямыми flex-элементами
   шапки) и aside (телефон+соцсети) — justify-content:space-between
   даёт РОВНО одинаковый отступ между лого/каждой группой/aside.
   Боковые поля — тот же --legko-pad-x, что у hero и футера, чтобы
   левый/правый край шапки совпадал с остальной сеткой страницы.

   За основу взята существующая шапка главной (.legko-gl-header в
   glavnaya-t123.html) — телефон, соцсети, гамбургер на ≤1023px;
   сюда добавлено лого слева и 4-я группа меню «О компании» (О нас/
   Блог, «О нас» пока href="#" — реальный адрес не найден в проекте,
   см. TODO в site-meta/legko-a-header.html). Остальной контент групп
   меню и соцсети перенесён 1:1 с главной (сверенные ссылки), не
   выдуман заново.
   На мобильном (≤1023px) телефон и соцсети скрыты (та же логика, что
   у телефона на главной, расширена на соцсети — иначе не остаётся
   места для лого), виден только гамбургер, открывающий те же 4
   группы меню полноэкранной панелью.
   ============================================================ */
.legko-a-header,.legko-a-header *{box-sizing:border-box;}
.legko-a-header{width:100%;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:var(--legko-space-sm);padding:var(--legko-space-sm) var(--legko-pad-x);font-family:Montserrat,Arial,sans-serif;position:relative;z-index:100;}

.legko-a-header__logo{display:flex;align-items:center;flex:0 0 auto;}
.legko-a-header__logo img{width:52px;height:52px;object-fit:contain;display:block;}

/* display:contents убирает  из раскладки как контейнер — его дети
   (группы меню) становятся прямыми flex-элементами шапки наравне с
   лого и aside, поэтому justify-content:space-between даёт РОВНО
   одинаковый отступ между лого/группами/aside, а не отдельно между
   группами и отдельно по краям (было на предыдущем шаге). На мобильном
   медиа-запросы ниже переопределяют display на none/flex — конфликта
   нет, это разные брейкпоинты. */
.legko-a-header__groups{display:contents;}
.legko-a-header__group{position:relative;}
.legko-a-header__group-label{display:flex;align-items:center;gap:5px;background:none;border:none;padding:0;font:inherit;font-size:12px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--legko-text);cursor:pointer;}
.legko-a-header__group-label b{color:var(--legko-green-dark);font-weight:500;}
.legko-a-header__group-label::after{content:'';width:6px;height:6px;border-right:1px solid var(--legko-text);border-bottom:1px solid var(--legko-text);transform:rotate(45deg) translateY(-1px);transition:transform .18s ease;}
.legko-a-header__group:hover .legko-a-header__group-label::after,.legko-a-header__group:focus-within .legko-a-header__group-label::after,.legko-a-header__group.is-active .legko-a-header__group-label::after{transform:rotate(-135deg) translateY(1px);}
/* Дропдаун (меню второго порядка): по умолчанию скрыт и приподнят,
   раскрывается по hover/focus на десктопе — top:100% без зазора даёт
   мышь-мост между лейблом и панелью без «мёртвой зоны». */
/* padding-top(24) = мышь-мост(8, невидимый, часть кликабельной/hover-зоны
   между лейблом и панелью) + реальный отступ контента(16) — совпадает с
   left/right/bottom(16), поэтому вокруг содержимого ровный отступ со всех
   сторон. ::before рисует белую плашку начиная с top:8px (только мост). */
.legko-a-header__group-links{position:absolute;top:100%;left:0;display:flex;flex-direction:column;align-items:flex-start;gap:12px;min-width:200px;padding:24px 16px 16px;opacity:0;transform:translateY(8px);pointer-events:none;transition:opacity .18s ease,transform .18s ease;}
/* Последняя группа стоит у самого края шапки (рядом с aside) — раскрываем
   панель влево, иначе она обрежется/вылезет за правый край окна. */
.legko-a-header__group:last-child .legko-a-header__group-links{left:auto;right:0;}
.legko-a-header__group-links::before{content:'';position:absolute;top:8px;left:0;right:0;bottom:0;background:#fff;border:1px solid rgba(41,42,42,.12);box-shadow:0 12px 32px rgba(41,42,42,.12);z-index:-1;}
.legko-a-header__group:hover .legko-a-header__group-links,.legko-a-header__group:focus-within .legko-a-header__group-links,.legko-a-header__group.is-active .legko-a-header__group-links{opacity:1;transform:translateY(0);pointer-events:auto;}
/* Подчёркивание — только при наведении, не постоянно. :not(--mega) — у
   карточек мега-меню своя стилизация (см. ниже), без рамки под всей карточкой. */
.legko-a-header__group-links:not(.legko-a-header__group-links--mega) > a{font-size:13px;font-weight:400;color:var(--legko-text);text-decoration:none;border-bottom:1px solid transparent;line-height:1.4;white-space:nowrap;transition:color .18s ease,border-color .18s ease;}
.legko-a-header__group-links:not(.legko-a-header__group-links--mega) > a:hover{color:var(--legko-green-dark);border-color:var(--legko-green-dark);}

/* Мега-меню (сейчас — «серии Домов»): карточка = фото + заголовок + описание,
   вся карточка целиком кликабельна. */
.legko-a-header__group-links--mega{flex-direction:row;gap:20px;}
.legko-a-header__mega-card{display:flex;flex-direction:column;gap:8px;width:180px;text-decoration:none;color:inherit;}
.legko-a-header__mega-card img{width:100%;height:110px;object-fit:cover;display:block;}
.legko-a-header__mega-title{font-size:14px;font-weight:500;color:var(--legko-text);transition:color .18s ease;}
.legko-a-header__mega-card:hover .legko-a-header__mega-title{color:var(--legko-green-dark);}
.legko-a-header__mega-desc{font-size:12px;font-weight:300;line-height:1.4;color:rgba(41,42,42,.65);}

.legko-a-header__aside{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:8px;}
.legko-a-header__phone{font-size:16px;font-weight:500;color:var(--legko-text);text-decoration:none;white-space:nowrap;}
.legko-a-header__phone:hover{color:var(--legko-green-dark);}
.legko-a-header__social{display:flex;gap:10px;}
.legko-a-header__social a{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(41,42,42,.2);color:var(--legko-text);transition:color .18s ease,border-color .18s ease;}
.legko-a-header__social a:hover{color:var(--legko-green-dark);border-color:var(--legko-green-dark);}
.legko-a-header__social svg{width:16px;height:16px;}

/* Дубль телефона/соцсетей + кнопка консультации — только внизу мобильной
   панели меню (см. @media(max-width:1023px) ниже); на десктопе не показан,
   там контакты уже есть в .legko-a-header__aside. */
.legko-a-header__mobile-foot{display:none;}

.legko-a-header__burger{display:none;position:relative;z-index:90;width:40px;height:40px;border:1px solid rgba(41,42,42,.25);background:#fff;flex-direction:column;align-items:center;justify-content:center;gap:4px;flex:0 0 auto;cursor:pointer;}
.legko-a-header__burger span{display:block;width:18px;height:1px;background:var(--legko-text);transition:opacity .15s ease;}
.legko-a-header__burger::before,.legko-a-header__burger::after{content:'';display:block;position:absolute;width:18px;height:1px;background:var(--legko-text);transition:transform .2s ease,top .2s ease;left:10px;}
.legko-a-header__burger::before{top:14px;}
.legko-a-header__burger::after{top:25px;}
.legko-a-header.is-open .legko-a-header__burger span{opacity:0;}
.legko-a-header.is-open .legko-a-header__burger::before{top:19px;transform:rotate(45deg);}
.legko-a-header.is-open .legko-a-header__burger::after{top:19px;transform:rotate(-45deg);}

@media screen and (max-width:1023px){
  /* Лого + aside — единственные видимые дети шапки на мобильном/планшете
     (группы меню скрыты до открытия гамбургера). Иконки соцсетей в самой
     шапке видны тут (планшеты, 641–1023px) — прячутся только на телефонах,
     см. отдельный брейк ≤640px ниже (тот же порог, что у h1/h2/hero/faq). */
  .legko-a-header{flex-wrap:wrap;row-gap:12px;}
  .legko-a-header__groups{display:none;}
  .legko-a-header__burger{display:flex;}
  .legko-a-header__aside{flex-direction:row;align-items:center;gap:12px;margin-left:auto;}
  /* Панель — как мобильное «Оглавление» (.legko-a-rail.is-open): узкая,
     справа, с рамкой/тенью, а не во весь экран. Верхний паддинг 76px —
     под высоту самой шапки (она остаётся видна поверх панели, z-index
     100 > 80), а не под --legko-space-lg, как у рельсы оглавления (там
     панель не делит экран с шапкой, а замещает всю страницу целиком). */
  .legko-a-header.is-open .legko-a-header__groups{
    display:flex;flex-direction:column;gap:var(--legko-space-md);
    position:fixed;top:0;right:0;bottom:0;z-index:80;
    width:min(320px,86vw);overflow-y:auto;background:#fff;
    border-left:1px solid rgba(41,42,42,.14);
    box-shadow:-8px 0 24px rgba(0,0,0,.16);
    padding:76px 20px calc(24px + env(safe-area-inset-bottom));
  }
  /* Подложка-затемнение позади панели (по образцу .legko-a-toc-backdrop) —
     z-index между шапкой/бургером (90/100) и панелью (80), гасит остальной
     контент страницы, клик по ней закрывает меню (см. JS). */
  .legko-a-header__backdrop{display:none;}
  .legko-a-header__backdrop:not([hidden]){display:block;position:fixed;inset:0;z-index:75;background:rgba(0,0,0,.4);}
  /* Меню второго порядка на мобильном — аккордеон вместо hover-дропдауна:
     ссылки группы скрыты, .is-active (JS по клику лейбла) их раскрывает. */
  .legko-a-header__group-links{position:static;padding:0;margin-top:12px;opacity:1;transform:none;pointer-events:auto;display:none;}
  .legko-a-header__group-links::before{display:none;}
  .legko-a-header__group.is-active .legko-a-header__group-links{display:flex;}
  /* Мега-карточки в ряд(180px×3) на телефоне не помещаются — на аккордеоне
     складываем в колонку, а каждую карточку — в компактную строку
     (миниатюра слева + текст справа) вместо крупного фото сверху. */
  .legko-a-header__group-links--mega{flex-direction:column;gap:16px;}
  .legko-a-header__mega-card{display:grid;grid-template-columns:72px 1fr;grid-template-rows:auto auto;align-items:center;column-gap:12px;row-gap:2px;width:auto;}
  .legko-a-header__mega-card img{width:72px;height:52px;grid-row:1 / 3;grid-column:1;}
  .legko-a-header__mega-title{grid-column:2;grid-row:1;white-space:nowrap;}
  .legko-a-header__mega-desc{grid-column:2;grid-row:2;}
  /* margin-top:auto прижимает блок к низу панели, если контента групп
     меньше высоты экрана; если контент длиннее — просто идёт последним. */
  .legko-a-header.is-open .legko-a-header__mobile-foot{
    display:flex;flex-direction:column;gap:16px;
    margin-top:auto;padding-top:24px;
    border-top:1px solid rgba(41,42,42,.14);
  }
}

/* Телефоны (тот же порог, что у h1/h2/hero/faq): в самой шапке рядом с
   бургером остаётся только номер, иконки соцсетей прячутся (планшеты
   641–1023px их видят, соцсети всё равно доступны в открытой панели
   меню — .legko-a-header__mobile-foot). */
@media screen and (max-width:640px){
  .legko-a-header__aside > .legko-a-header__social{display:none;}
}

/* Узкая «зона сжатия» сразу после появления десктоп-раскладки (гамбургер
   уже скрыт с 1024px) — 4 лейбла в один ряд («ЛЕГКО: Серия») ломаются
   некрасиво. Только в этом диапазоне — «ЛЕГКО:» и название группы друг
   под другом, а не в один ряд. Соседние ширины (≤1023 и ≥1065) не трогать. */
@media screen and (min-width:1024px) and (max-width:1064px){
  .legko-a-header__group-label{flex-direction:column;align-items:flex-start;gap:2px;}
  /* Стрелка переезжает с кнопки на  — так она встаёт сразу после
     названия группы («серии Домов ↓»), на второй строке, а не отдельной
     третьей строкой под всем блоком. */
  .legko-a-header__group-label::after{display:none;}
  .legko-a-header__group-label b{display:inline-flex;align-items:center;gap:5px;}
  .legko-a-header__group-label b::after{content:'';width:6px;height:6px;border-right:1px solid var(--legko-text);border-bottom:1px solid var(--legko-text);transform:rotate(45deg) translateY(-1px);transition:transform .18s ease;}
  .legko-a-header__group:hover .legko-a-header__group-label b::after,.legko-a-header__group:focus-within .legko-a-header__group-label b::after,.legko-a-header__group.is-active .legko-a-header__group-label b::after{transform:rotate(-135deg) translateY(1px);}
}

/* ——— Сетка секции ———
   Средний трек — читаемая колонка (--legko-col, но не шире 100% - 40px,
   чтобы на узких экранах оставался боковой отступ 20px). Все дети
   попадают в неё и делят одну левую грань, поэтому левые акцентные
   линии (callout) совпадают с текстом. Фото уходит в трек `full` и
   занимает всю ширину окна. Ритм секций: 56 снизу + 56 сверху ≈ 112px
   (под родной 120px-разделитель Тильды). Фон везде белый. */
.legko-a-section{padding-top:var(--legko-space-lg);padding-bottom:var(--legko-space-lg);display:grid;grid-template-columns:[full-start] 1fr [content-start] min(var(--legko-col),100% - 40px) [content-end] 1fr [full-end];}
@media screen and (max-width:640px){.legko-a-section{padding-top:var(--legko-space-md);padding-bottom:var(--legko-space-md);}}
.legko-a-section > *{grid-column:content;min-width:0;}
.legko-a-section > .legko-a-photo{grid-column:full;width:100%;}

/* ——— Типографика ———
   Веса только 300 / 400 / 500 — 600+ запрещён. text-wrap:balance
   выравнивает многострочные заголовки, pretty убирает висячие слова. */
.legko-a-h1,.legko-a-h2,.legko-a-h3{text-wrap:balance;}
.legko-a-p,.legko-a-list li,.legko-a-callout p,.legko-a-faq__a p{text-wrap:pretty;}
.legko-a-h1{font-size:44px;font-weight:500;line-height:1.1;margin:0 0 var(--legko-space-sm);}
@media screen and (max-width:640px){.legko-a-h1{font-size:30px;}}
.legko-a-h2{font-size:36px;font-weight:500;line-height:1.2;margin:0 0 var(--legko-space-md);text-transform:uppercase;}
@media screen and (max-width:640px){.legko-a-h2{font-size:27px;}}
.legko-a-h2 em{font-style:normal;color:var(--legko-green-dark);}
.legko-a-h3{font-size:20px;font-weight:500;line-height:26px;color:#000;margin:var(--legko-space-xs) 0;}
/* h3 сразу после h2 секции (mb md/32) не нуждается в верхнем отступе. */
.legko-a-h2 + .legko-a-h3{margin-top:0;}
.legko-a-p{font-size:15px;font-weight:300;line-height:28px;margin:0 0 var(--legko-space-sm);}
.legko-a-p:last-child{margin-bottom:0;}
.legko-a-p b{font-weight:500;}
.legko-a-p em{font-style:italic;font-weight:400;}

/* ——— Списки ——— */
.legko-a-list{margin:0 0 var(--legko-space-sm);padding-left:20px;}
.legko-a-list li{font-size:15px;font-weight:300;line-height:28px;margin-bottom:var(--legko-space-xs);}
.legko-a-list b{font-weight:500;}
.legko-a-list_num{list-style:none;counter-reset:a-counter;padding-left:0;}
.legko-a-list_num li{counter-increment:a-counter;position:relative;padding-left:34px;}
.legko-a-list_num li::before{content:counter(a-counter);position:absolute;left:0;top:0;width:24px;height:24px;background:var(--legko-green-dark);color:#fff;font-size:12px;font-weight:500;display:flex;align-items:center;justify-content:center;z-index:1;}

/* ——— Врезка-акцент ——— левая грань 1px тёмно-зелёным, без фона. */
.legko-a-callout{border-left:1px solid var(--legko-green-dark);padding:0 0 0 var(--legko-space-sm);margin:0 0 var(--legko-space-md);}
.legko-a-callout:last-child{margin-bottom:0;}
.legko-a-callout__title{font-size:15px;font-weight:500;color:var(--legko-green-dark);margin:0 0 var(--legko-space-xs);text-transform:uppercase;letter-spacing:.3px;}
.legko-a-callout p{font-size:15px;font-weight:300;line-height:28px;margin:0;color:var(--legko-text);}
.legko-a-callout p + p{margin-top:var(--legko-space-xs);}
.legko-a-callout b{font-weight:500;}

/* ——— CTA ———
   Отдельный CTA (прямой ребёнок .legko-article, не внутри секции)
   держит ту же оконную сетку, что и остальной контент. */
.legko-a-cta{padding:var(--legko-space-md) 20px;margin:var(--legko-space-md) 0;text-align:center;}
.legko-article > .legko-a-cta{max-width:var(--legko-col);margin-left:auto;margin-right:auto;}
/* Разделительные рейлы CTA — вставные линии по ширине кнопки (560px),
   а не сквозные border'ы. */
.legko-a-cta_top::before{content:'';display:block;height:1px;max-width:560px;margin:0 auto var(--legko-space-md);background:var(--legko-green-mid);}
.legko-a-cta_bottom::after{content:'';display:block;height:1px;max-width:560px;margin:var(--legko-space-md) auto 0;background:var(--legko-green-mid);}
.legko-a-section > .legko-a-cta{margin-top:var(--legko-space-lg);}
.legko-a-cta__lead{margin:0 0 var(--legko-space-sm);font-size:15px;font-weight:300;line-height:28px;color:var(--legko-green-dark);}

/* ——— Кнопка ——— 1:1 с живым сайтом: зелёный бар ~42px, Montserrat
   12px/500 UPPERCASE, radius 0, тонкие линии 1px сверху И снизу с
   зазором ~4px, ширина ровно по кнопке. */
.legko-a-btn{position:relative;display:block;width:100%;max-width:560px;margin:0 auto;padding:14px 24px;background:var(--legko-green-dark);color:#fff !important;text-decoration:none;font-weight:500;font-size:12px;line-height:1.2;text-transform:uppercase;letter-spacing:.5px;text-align:center;transition:background .2s ease,transform .16s cubic-bezier(.23,1,.32,1);}
.legko-a-btn::before,.legko-a-btn::after{content:'';position:absolute;left:0;right:0;height:1px;background:var(--legko-green-dark);}
.legko-a-btn::before{top:-4px;}
.legko-a-btn::after{bottom:-4px;}
.legko-a-btn:hover{background:var(--legko-green-main);}
.legko-a-btn:active{transform:scale(.98);}

/* ——— FAQ-аккордеон ——— редакторский вид: тихие тонкие разделители (не
   фирменный зелёный), крупный вопрос без капса, лёгкая серая «+», без
   заливки — правило ЛЕГКО про callout «весом, а не заливкой» действует
   и на аккордеон. Вопросы — настоящие / (доступность,
   aria-expanded); ответы анимируются через grid-template-rows 0fr→1fr:
   реальная измеренная высота, длинные ответы не обрезаются. */
.legko-a-faq__item{border-bottom:1px solid rgba(41,42,42,.14);}
.legko-a-faq__item:first-child{border-top:1px solid rgba(41,42,42,.14);}
.legko-a-faq__q{display:flex;align-items:center;justify-content:space-between;gap:var(--legko-space-sm);width:100%;background:none;border:0;color:var(--legko-text);font-family:inherit;text-align:left;padding:24px 0;cursor:pointer;font-size:clamp(17px,1.5vw,19px);font-weight:500;line-height:1.35;text-transform:none;letter-spacing:0;}
.legko-a-faq__q:focus-visible{outline:2px solid var(--legko-green-dark);outline-offset:2px;}
.legko-a-faq__item.is-open .legko-a-faq__q{color:var(--legko-green-dark);}
.legko-a-faq__icon{flex:0 0 auto;font-size:24px;font-weight:300;color:rgba(41,42,42,.35);width:20px;text-align:center;transition:transform .2s cubic-bezier(.23,1,.32,1);}
.legko-a-faq__item.is-open .legko-a-faq__icon{color:var(--legko-green-dark);}
.legko-a-faq__a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s cubic-bezier(.23,1,.32,1);}
/* Сворачиваемый трек — единственный ребёнок __a: обёртка  (ради
   a11y-разметки) либо сам  напрямую. */
.legko-a-faq__a > div,.legko-a-faq__a > p{overflow:hidden;min-height:0;}
.legko-a-faq__a p{width:calc(100% - 30px);font-size:16px;font-weight:300;line-height:1.7;color:rgba(41,42,42,.72);padding-bottom:28px;margin:0;}
.legko-a-faq__item.is-open .legko-a-faq__a{grid-template-rows:1fr;}
.legko-a-faq__item.is-open .legko-a-faq__icon{transform:rotate(45deg);}
@media screen and (max-width:640px){
  .legko-a-faq__q{padding:18px 0;}
  .legko-a-faq__a p{padding-bottom:20px;}
}

/* ——— Оглавление ——— центрированный H2 над левым списком зелёных
   подчёркнутых UPPERCASE-ссылок с серым счётчиком «01 — ».
   Счётчик #767676 (4.5:1 на белом) — проходит WCAG AA.
   2-колоночная раскладка / плавающее оглавление — в файле статьи. */
.legko-a-toc .legko-a-h2{text-align:center;}
.legko-a-toc__list{list-style:none;counter-reset:toc-counter;margin:0 auto;padding:0;max-width:820px;}
.legko-a-toc__list li{counter-increment:toc-counter;position:relative;padding-left:56px;margin-bottom:var(--legko-space-xs);font-size:15px;font-weight:300;line-height:28px;text-transform:uppercase;letter-spacing:.3px;color:#767676;}
.legko-a-toc__list li:last-child{margin-bottom:0;}
.legko-a-toc__list li::before{content:counter(toc-counter,decimal-leading-zero)" —";position:absolute;left:0;top:0;color:#767676;}
.legko-a-toc__list a{color:var(--legko-green-dark);text-decoration:underline;text-underline-offset:3px;font-weight:500;transition:color .2s ease;}
.legko-a-toc__list a:hover{color:var(--legko-green-main);}

/* ——— Оглавление: sticky-рельса (десктоп) + выезжающая справа панель
   (≤1023px) ——— общий компонент статей с рельсовой раскладкой (ипотека,
   морозы, бизнес). Раньше был продублирован 1:1 в трёх файлах статей
   под своим префиксом (.legko-ip-/.legko-mz-/.legko-bz-) — вынесен сюда
   под общим .legko-a-, уникальные файлы теперь содержат только точечные
   переопределения (см. VERSTKA-RULES.md §6). Разметка и JS (scroll-spy
   + открытие/закрытие мобильной панели) — общий legko-article.js.
   210px рельса + 50px зазор + 780px колонка = 1040px. */
.legko-a-shell{width:min(1040px,100% - 40px);margin:0 auto;padding:var(--legko-space-lg) 0 var(--legko-space-md);display:grid;grid-template-columns:210px minmax(0,780px);gap:50px;justify-content:center;align-items:start;}
/* display:flex ДО медиа-запроса, скрывающего рельсу — при равной
   специфичности побеждает правило, которое позже в файле. */
.legko-a-rail{position:sticky;top:32px;display:flex;flex-direction:column;gap:28px;}
@media screen and (max-width:1023px){
  .legko-a-shell{grid-template-columns:minmax(0,700px);padding-top:var(--legko-space-md);}
  .legko-a-rail{display:none;}
  .legko-a-rail.is-open{
    display:flex;position:fixed;top:0;right:0;bottom:0;z-index:65;
    width:min(320px,86vw);overflow-y:auto;background:#fff;
    border-left:1px solid rgba(41,42,42,.14);
    padding:var(--legko-space-lg) 20px calc(var(--legko-space-md) + env(safe-area-inset-bottom));
    box-shadow:-8px 0 24px rgba(0,0,0,.16);
  }
}
.legko-a-toc-fab{display:none;}
.legko-a-toc-backdrop{display:none;}
@media screen and (max-width:1023px){
  .legko-a-toc-fab{
    display:flex;align-items:center;gap:8px;
    position:fixed;right:16px;bottom:16px;z-index:70;
    padding:12px 18px;background:var(--legko-green-dark);color:#fff;
    border:0;font-family:inherit;font-size:12px;font-weight:500;
    letter-spacing:.05em;text-transform:uppercase;cursor:pointer;
    box-shadow:0 4px 16px rgba(0,0,0,.2);
    transition:background-color .18s ease;
  }
  .legko-a-toc-fab:hover,.legko-a-toc-fab:focus-visible{background:var(--legko-green-mid);}
  .legko-a-toc-fab svg{flex:0 0 auto;}
  .legko-a-toc-backdrop:not([hidden]){display:block;position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:60;}
}
.legko-a-rail__mhead{display:none;}
@media screen and (max-width:1023px){
  .legko-a-rail__mhead{display:flex;align-items:center;justify-content:space-between;margin:0 0 var(--legko-space-xs);}
  .legko-a-rail__mtitle{font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:rgba(41,42,42,.5);margin:0;}
  .legko-a-rail__close{width:28px;height:28px;border:0;background:none;padding:0;font-size:22px;line-height:1;color:rgba(41,42,42,.5);cursor:pointer;font-family:inherit;}
  .legko-a-rail__close:hover,.legko-a-rail__close:focus-visible{color:var(--legko-green-dark);}
}
.legko-a-toc-h{font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:rgba(41,42,42,.5);margin:0 0 14px;}
.legko-a-toc-nav{display:flex;flex-direction:column;gap:2px;border-left:1px solid rgba(41,42,42,.14);}
.legko-a-toc-nav a{font-size:13px;font-weight:300;line-height:1.35;color:rgba(41,42,42,.65);padding:7px 0 7px 16px;margin-left:-1px;border-left:2px solid transparent;text-decoration:none;transition:color .18s ease,border-color .18s ease;}
.legko-a-toc-nav a:hover{color:var(--legko-text);}
.legko-a-toc-nav a.is-active{color:var(--legko-green-dark);border-left-color:var(--legko-green-dark);font-weight:500;}
.legko-a-toc-nav a:focus-visible{outline:2px solid var(--legko-green-dark);outline-offset:2px;}
.legko-a-body{min-width:0;}

/* ════════════════════════════════════════════════════════════════════
   Единый шаблон статьи (редакторская раскладка «бизнес», 2026-09-22) —
   hero, типографика тела, FAQ-редизайн и набор переиспользуемых блоков.
   Раньше были прописаны только у бизнеса под .legko-bz-, теперь общий
   .legko-a- для всех трёх статей + задел на будущие. Уникальные файлы
   статей содержат только то, чего по-настоящему нет у других (сценарии,
   банки, температурные таблицы и т.п.).
   ════════════════════════════════════════════════════════════════════ */

/* ——— Hero: крошка + категория + H1 + лид + время чтения ——— */
.legko-a-hero{padding:var(--legko-space-lg) 20px 4px;text-align:center;}
@media screen and (max-width:640px){.legko-a-hero{padding:var(--legko-space-md) 20px 4px;}}
.legko-a-hero__inner{max-width:900px;margin:0 auto;}

.legko-a-crumb{font-size:12px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:rgba(41,42,42,.6);display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;margin:0;}
.legko-a-crumb a{color:inherit;text-decoration:none;}
.legko-a-crumb a:hover{color:var(--legko-green-dark);}
.legko-a-crumb__sep{color:rgba(41,42,42,.35);}
.legko-a-crumb__cur{color:rgba(41,42,42,.45);}

.legko-a-eyebrow{font-size:11.5px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--legko-green-dark);margin:16px 0 0;}

/* Крупнее и без UPPERCASE — правило фундамента для H2, не H1. */
.legko-a-hero .legko-a-h1{font-size:clamp(32px,4.6vw,52px);line-height:1.05;letter-spacing:-.01em;margin:14px 0 18px;}

.legko-a-standfirst{font-size:clamp(17px,1.6vw,19px);font-weight:300;line-height:1.6;color:var(--legko-text);max-width:680px;margin:0 auto;text-wrap:pretty;}

.legko-a-byline{font-size:13px;font-weight:400;letter-spacing:.06em;text-transform:uppercase;color:rgba(41,42,42,.55);margin:22px 0 0;}

/* ——— Hero-фото ——— широкое фото под титульным блоком, 16:7. */
.legko-a-hero-figure{width:min(1240px,100% - 40px);margin:var(--legko-space-md) auto 0;}
.legko-a-hero-figure img{width:100%;height:620px;object-fit:cover;display:block;}
@media screen and (max-width:640px){.legko-a-hero-figure img{height:280px;}}

/* ——— Тело статьи: редакторская типографика ———
   19px/1.72 вместо базовых 15/16px — под широкую колонку чтения рельсовой
   раскладки. Голые h2/h3 (без класса legko-a-h2/h3) внутри .legko-a-body
   стилизуются здесь; class="legko-a-h2" вне body (FAQ, интро) сохраняет
   капс-стиль ниже. */
.legko-a-body>.legko-a-p{font-size:19px;line-height:1.72;margin:0 0 26px;}
.legko-a-body .legko-a-list li,.legko-a-body .legko-a-list_num li{font-size:17px;line-height:1.6;}
@media screen and (max-width:640px){
  .legko-a-body>.legko-a-p{font-size:17px;line-height:1.6;}
}
.legko-a-body h2{font-weight:500;font-size:clamp(26px,2.6vw,33px);line-height:1.15;letter-spacing:-.01em;color:var(--legko-text);margin:var(--legko-space-lg) 0 var(--legko-space-sm);text-wrap:balance;scroll-margin-top:24px;}
.legko-a-body h2:first-child{margin-top:0;}
.legko-a-body h2 em{font-style:normal;color:var(--legko-green-dark);}
.legko-a-body h3{font-weight:500;font-size:clamp(21px,2vw,24px);line-height:1.25;color:#000;margin:var(--legko-space-md) 0 var(--legko-space-xs);text-wrap:balance;}
.legko-a-body h2+h3{margin-top:0;}
/* Маленький капс-лейбл вместо крупного H2 — для вводных «Главное за 30
   секунд»/«Коротко»: настоящий h2 (для SEO/оглавления), но визуально тише. */
.legko-a-body h2.legko-a-takeaways-h{font-size:12px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--legko-green-dark);margin:0 0 var(--legko-space-xs);}

/* ——— FAQ — редакторский вид без UPPERCASE (замена капс-стиля выше по
   файлу — теперь общий для всех статей, не точечный оверрайд). ——— */
.legko-a-faq-section{--legko-col:1040px;}
.legko-a-faq-section .legko-a-h2{text-transform:none;font-weight:500;font-size:clamp(26px,2.6vw,33px);letter-spacing:-.01em;text-align:left;}

/* ——— Список-саммари ——— зелёный квадратик-маркер, для вводных тезисов
   и итоговых «коротко»-блоков. */
.legko-a-summary{margin:0 0 var(--legko-space-md);list-style:none;padding:0;}
.legko-a-summary li{font-size:16px;font-weight:300;line-height:1.65;margin-bottom:10px;padding-left:20px;position:relative;}
.legko-a-summary li:last-child{margin-bottom:0;}
.legko-a-summary li::before{content:'';position:absolute;left:0;top:9px;width:8px;height:8px;background:var(--legko-green-dark);}
.legko-a-summary b{font-weight:500;}

/* ——— Таблица ——— на телефоне складывается в карточки через data-label.
   Модификатор _label — вариант «ярлык → значение» (левая колонка акцентная). */
.legko-a-tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 0 var(--legko-space-md);}
.legko-a-table{width:100%;border-collapse:collapse;}
.legko-a-table th{
  font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.3px;
  color:var(--legko-green-dark);text-align:left;
  padding:0 18px 10px 0;border-bottom:1px solid var(--legko-green-dark);
  vertical-align:bottom;
}
.legko-a-table td{
  font-size:15px;font-weight:300;line-height:24px;
  padding:14px 18px 14px 0;border-bottom:1px solid #e2e2e2;vertical-align:top;
}
.legko-a-table th:last-child,.legko-a-table td:last-child{padding-right:0;}
.legko-a-table tr:last-child td{border-bottom:none;}
.legko-a-table td:first-child{color:var(--legko-green-dark);font-weight:500;}
.legko-a-table b{font-weight:500;color:var(--legko-text);}
.legko-a-table_label td:first-child{white-space:nowrap;}
@media screen and (max-width:640px){
  .legko-a-tablewrap{overflow-x:visible;}
  .legko-a-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);}
  .legko-a-table tr{display:block;padding:var(--legko-space-sm) 0;border-bottom:1px solid #e2e2e2;}
  .legko-a-table tr:first-of-type{padding-top:0;}
  .legko-a-table tr:last-child{border-bottom:none;padding-bottom:0;}
  .legko-a-table td{display:block;border:none;padding:0;font-size:15px;line-height:24px;}
  .legko-a-table td + td{margin-top:6px;}
  .legko-a-table td:first-child{margin-bottom:6px;}
  .legko-a-table_label td:first-child{white-space:normal;}
  .legko-a-table td:not(:first-child)::before{
    content:attr(data-label);display:block;
    font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.3px;
    color:var(--legko-green-dark);margin-bottom:1px;
  }
  .legko-a-table td[data-label=""]::before,
  .legko-a-table td:not([data-label])::before{content:none;}
}

/* ——— Сравнительная таблица ——— несколько колонок бок о бок (программы,
   тарифы…); на телефоне не складывается в карточки — скроллится
   горизонтально с закреплённой первой колонкой (иначе сравнение по
   строкам теряет смысл). --legko-bg-alt по умолчанию — фон фундамента;
   статья может переопределить свой тон на обёртке. */
.legko-a-comparewrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 0 var(--legko-space-sm);}
.legko-a-compare{width:100%;min-width:620px;border-collapse:collapse;}
.legko-a-compare th{font-size:15px;font-weight:500;color:var(--legko-green-dark);text-align:left;padding:0 20px 14px 0;border-bottom:1px solid var(--legko-green-mid);vertical-align:bottom;}
.legko-a-compare td{font-size:15px;font-weight:300;line-height:24px;padding:14px 20px 14px 0;border-bottom:1px solid #e2e2e2;vertical-align:top;font-variant-numeric:tabular-nums;}
.legko-a-compare td:first-child{color:var(--legko-green-dark);font-weight:500;}
.legko-a-compare th:first-child,.legko-a-compare td:first-child{width:21%;position:sticky;left:0;background:var(--legko-bg-alt,#fff);}
.legko-a-compare th:last-child,.legko-a-compare td:last-child{padding-right:0;}

/* ——— Стат-полоса ——— несколько чисел, вынутых из абзаца. */
.legko-a-stats{display:flex;gap:var(--legko-space-md);margin:0 0 var(--legko-space-sm);}
.legko-a-stats__item{flex:1;}
.legko-a-stats__item + .legko-a-stats__item{border-left:1px solid #e2e2e2;padding-left:var(--legko-space-md);}
.legko-a-stats__num{display:block;font-size:34px;font-weight:500;line-height:1.15;color:var(--legko-green-dark);font-variant-numeric:tabular-nums;}
.legko-a-stats__label{display:block;margin-top:6px;font-size:13px;font-weight:300;line-height:19px;color:var(--legko-text);}
@media screen and (max-width:640px){
  .legko-a-stats{flex-direction:column;gap:var(--legko-space-sm);}
  .legko-a-stats__item + .legko-a-stats__item{border-left:0;padding-left:0;border-top:1px solid #e2e2e2;padding-top:var(--legko-space-sm);}
  .legko-a-stats__num{font-size:28px;}
}

/* ——— Фото ——— */
.legko-a-photo{width:100%;display:block;object-fit:cover;}

/* ——— Цитата ——— левая грань, курсив; портрет опционален (обёртка
   .legko-a-quote-wrap + .legko-a-quote-photo — если фото нет, просто не
   используем обёртку). Общий .legko-a-photo объявлен выше специально,
   чтобы .legko-a-quote-photo ниже по каскаду переопределял его width/height. */
.legko-a-quote{border-left:1px solid var(--legko-green-dark);padding-left:var(--legko-space-sm);margin:0 0 var(--legko-space-md);}
.legko-a-quote p{font-size:18px;font-weight:400;font-style:italic;line-height:1.65;margin:0 0 var(--legko-space-xs);}
@media screen and (max-width:640px){.legko-a-quote p{font-size:16px;line-height:1.6;}}
.legko-a-quote cite{display:block;font-size:12px;font-weight:300;font-style:normal;line-height:19px;color:#767676;}
.legko-a-quote__name{display:block;font-size:14px;font-weight:500;color:var(--legko-green-dark);margin-bottom:2px;}
.legko-a-quote-wrap{display:flex;gap:var(--legko-space-sm);align-items:flex-start;}
.legko-a-quote-wrap .legko-a-quote{border-left:0;padding-left:0;margin-bottom:0;}
.legko-a-quote-photo{width:160px;height:160px;object-fit:cover;object-position:50% 0;flex:0 0 auto;background:#eef5f0;}
@media screen and (max-width:640px){.legko-a-quote-wrap{flex-direction:column;}.legko-a-quote-photo{width:120px;height:120px;}}

/* ——— Инлайн-фото в теле статьи ——— по ширине колонки чтения (780px),
   фиксированная высота 390px. Подпись 12px. Стандартный способ вставки
   фото взамен edge-to-edge приёма. */
.legko-a-figure{margin:0 0 var(--legko-space-md);}
.legko-a-figure img{width:100%;height:390px;object-fit:cover;display:block;}
.legko-a-figure figcaption{font-size:12px;font-weight:400;line-height:19px;color:#767676;margin-top:8px;}
@media screen and (max-width:640px){
  .legko-a-figure img{height:220px;}
}

/* ——— Карточка-ссылка ——— тонкая рамка, лёгкая зелёная подложка и сдвиг
   стрелки при наведении/фокусе. */
.legko-a-card{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid rgba(41,42,42,.16);padding:18px 22px;margin:0 0 var(--legko-space-md);text-decoration:none;color:var(--legko-text);transition:border-color .18s ease,background-color .18s ease;}
.legko-a-card:hover,.legko-a-card:focus-visible{border-color:var(--legko-green-dark);background:rgba(169,220,186,.12);}
.legko-a-card:focus-visible{outline:2px solid var(--legko-green-dark);outline-offset:2px;}
.legko-a-card__title{font-size:16px;font-weight:500;}
.legko-a-card__arrow{font-size:18px;color:var(--legko-green-dark);flex:0 0 auto;transition:transform .18s cubic-bezier(.23,1,.32,1);}
.legko-a-card:hover .legko-a-card__arrow,.legko-a-card:focus-visible .legko-a-card__arrow{transform:translateX(4px);}

/* ——— Поделиться ——— тихий стиль рельсы, под общим лейблом .legko-a-toc-h. */
.legko-a-share__row{display:flex;gap:8px;}
.legko-a-share__btn{width:32px;height:32px;flex:0 0 auto;display:flex;align-items:center;justify-content:center;border:1px solid rgba(41,42,42,.25);color:rgba(41,42,42,.6);text-decoration:none;transition:color .18s ease,border-color .18s ease;}
.legko-a-share__btn:hover{color:var(--legko-green-dark);border-color:var(--legko-green-dark);}
.legko-a-share__btn:focus-visible{outline:2px solid var(--legko-green-dark);outline-offset:2px;}

/* ——— Реакции ——— лёгкий тонированный блок, без счётчиков (реальной
   агрегации нет — см. комментарий в разметке статьи). */
.legko-a-reactions{background:rgba(169,220,186,.15);padding:var(--legko-space-lg) 20px;margin:var(--legko-space-md) 0;text-align:center;}
.legko-a-reactions__title{font-size:17px;font-weight:500;color:var(--legko-text);margin:0 0 var(--legko-space-md);}
.legko-a-reactions__row{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;}
.legko-a-reaction{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:96px;padding:14px 12px;background:#fff;border:1px solid rgba(41,42,42,.14);cursor:pointer;font-family:inherit;transition:border-color .18s ease,transform .16s cubic-bezier(.23,1,.32,1);}
.legko-a-reaction:hover{border-color:var(--legko-green-mid);}
.legko-a-reaction:active{transform:scale(.97);}
.legko-a-reaction.is-selected{border-color:var(--legko-green-dark);background:rgba(169,220,186,.25);}
.legko-a-reaction__emoji{font-size:24px;line-height:1;}
.legko-a-reaction__label{font-size:12px;font-weight:400;color:rgba(41,42,42,.7);white-space:nowrap;}
@media screen and (max-width:480px){
  .legko-a-reaction{min-width:0;flex:1 1 calc(50% - 6px);}
}

/* ——— Контакты ——— */
.legko-a-contacts{padding-top:var(--legko-space-xl);padding-bottom:var(--legko-space-xl);padding-left:var(--legko-pad-x);padding-right:var(--legko-pad-x);text-align:center;}
@media screen and (max-width:640px){.legko-a-contacts{padding-top:var(--legko-space-lg);padding-bottom:var(--legko-space-lg);}}
.legko-a-contacts a{color:var(--legko-green-dark);text-decoration:underline;}
.legko-a-contacts p{font-size:15px;font-weight:300;line-height:28px;margin:0 auto var(--legko-space-xs);max-width:var(--legko-col);}

/* Тильда красит ссылки через «#allrecords a» (id-селектор всегда
   сильнее наших классов) — зеркалим фирменные цвета с той же
   специфичностью. Вне Тильды селекторы просто не совпадают. */
#allrecords .legko-article a{color:var(--legko-green-dark);}
#allrecords .legko-article .legko-a-toc__list a:hover{color:var(--legko-green-main);}

/* Один фокус-стиль для всех интерактивных элементов фундамента. */
.legko-a-toc__list a:focus-visible,.legko-a-btn:focus-visible,.legko-a-contacts a:focus-visible{outline:2px solid var(--legko-green-dark);outline-offset:2px;}

/* ——— Комфорт длинного чтения ———
   Проза на десктопе поднимается до 16px (15px — нижняя граница
   комфорта для статьи в 10 000px). Таблицы, подписи, оглавление и
   кнопки сохраняют плотный 15/12px. */
@media screen and (min-width:641px){
  .legko-a-p,.legko-a-list li,.legko-a-callout p,.legko-a-cta__lead,.legko-a-faq__a p{font-size:16px;line-height:29px;}
}

/* ——— Reduced motion ——— гасим переходы, которыми владеет фундамент
   (опт-аут плавного скролла — рядом со своим объявлением выше). */
@media (prefers-reduced-motion: reduce){
  .legko-a-btn,.legko-a-faq__a,.legko-a-faq__icon,.legko-a-toc__list a,.legko-a-toc-fab,.legko-a-toc-nav a{transition:none;}
}

/* ════════════════════════════════════════════════════════════════════
   Уникальный слой: ИПОТЕКА (.legko-ipoteka) — 2026-09-22, слито из
   отдельного legko-ipoteka.css. Сценарии «кто вы → какая программа»,
   таймлайн строительства, логотипы банков — этого нет у других статей.
   ════════════════════════════════════════════════════════════════════ */

/* Тон липкой колонки сравнительной таблицы (.legko-a-compare выше в
   файле) — статья переопределяет фундаментный дефолт #fff. */
.legko-ipoteka{--legko-bg-alt:#f4f9f6;}

/* ——— Сценарии «кто вы → какая программа» ——— */
.legko-ip-scenario{border-bottom:1px solid #e2e2e2;padding:var(--legko-space-sm) 0;}
.legko-ip-scenario:first-child{padding-top:0;}
.legko-ip-scenario:last-child{border-bottom:none;padding-bottom:0;}
.legko-ip-scenario__q{font-size:15px;font-weight:500;margin:0 0 6px;}
.legko-ip-scenario__a{font-size:15px;font-weight:300;line-height:28px;margin:0;color:var(--legko-text);text-wrap:pretty;}
@media screen and (min-width:641px){.legko-ip-scenario__q,.legko-ip-scenario__a{font-size:16px;line-height:29px;}}

/* ——— Коннектор таймлайна ——— только для нумерованных шагов процесса
   («Как мы строим дома»): вертикальная линия связывает кружки в один
   путь. Рисуется по-элементно (от своего кружка до следующего), поэтому
   всегда заканчивается ровно на последнем кружке. */
.legko-ip-list_timeline li::after{content:'';position:absolute;left:11px;top:12px;bottom:-24px;width:1px;background:var(--legko-green-dark);}
.legko-ip-list_timeline li:last-child::after{content:none;}
.legko-ip-list_timeline li{padding-bottom:var(--legko-space-sm);}
.legko-ip-list_timeline li:last-child{padding-bottom:0;}

/* ——— Банки ——— */
.legko-ip-banks{display:flex;gap:var(--legko-space-sm);margin:var(--legko-space-sm) 0;}
.legko-ip-banks__card{flex:1;border:1px solid var(--legko-green-mid);padding:var(--legko-space-md);display:flex;align-items:center;justify-content:center;}
.legko-ip-banks__card img{max-width:100%;max-height:50px;}
@media screen and (max-width:640px){.legko-ip-banks{flex-direction:column;}}

/* ════════════════════════════════════════════════════════════════════
   Уникальный слой: МОРОЗЫ (.legko-moroz) — 2026-09-22, слито из
   отдельного legko-moroz.css. Номер раздела перед H2, подпись-сноска
   про тариф, черновой блок кейса клиента (пока закомментирован в HTML).
   ════════════════════════════════════════════════════════════════════ */

/* Акцентное слово в H2 не переносится по словам (частые пары «−40 °С»,
   «пойти не так»). */
.legko-moroz .legko-a-h1 em,.legko-moroz h2 em{white-space:nowrap;}
/* Номер раздела перед заголовком H2. */
.legko-mz-h2__num{color:var(--legko-green-dark);margin-right:.4em;}

/* ——— Мелкая подпись ——— источник тарифа, методика расчёта. Идёт сразу
   после .legko-a-tablewrap: гасим его нижний отступ отрицательным
   верхним, чтобы подпись «прилипала» к таблице. */
.legko-mz-note{font-size:12px;font-weight:400;line-height:19px;color:#8a8a8a;margin:-24px 0 var(--legko-space-md);}
.legko-mz-note em{font-style:italic;}

/* ——— Кейс клиента (пока черновой, заполняется реальными данными) ———
   Разметка живёт закомментированной в moroz-t123.html, пока нет
   реальных данных клиента и согласия на публикацию. */
.legko-mz-case{border:1px solid var(--legko-green-mid);padding:var(--legko-space-md);margin:0 0 var(--legko-space-sm);}
.legko-mz-case__flag{font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.3px;color:var(--legko-green-dark);margin:0 0 var(--legko-space-xs);}
.legko-mz-case p{font-size:15px;font-weight:300;line-height:28px;margin:0 0 var(--legko-space-xs);}
.legko-mz-case p:last-child{margin-bottom:0;}

/* ════════════════════════════════════════════════════════════════════
   Уникальный слой: БИЗНЕС (.legko-biznes) — 2026-09-22. Бизнес был
   источником единого шаблона: всё структурное уже выше в файле под
   общим .legko-a-. Здесь пока нет ни одного правила, оставлено как
   якорь на будущее — если у статьи появится что-то по-настоящему
   уникальное, оно попадёт сюда же, а не в отдельный файл.
   ════════════════════════════════════════════════════════════════════ */
