/* =====================================================================
   GeoWise · БЛОГ · стили (утверждено и заморожено 03.11.2026, ред. 6)
   Подключается ПОСЛЕ /styles/tokens.css и /styles/components.css сайта.
   Все цвета, шрифты, радиусы — токены сайта. Новых цветов нет.

   ЛЕСТНИЦА ОТСТУПОВ БЛОГА              ПК    План.  Тел.
   L1  от шапки до заголовка страницы   56    48     32
   L2  между крупными блоками           64    56     40   (статья→боковая колонка, «Популярные статьи»)
   РЯДЫ ПЛИТОК (--b-rows)               48    40     40   (ряд→ряд, крупные→обычные, плитки→«Показать ещё»)
   L3  от шапки блока до содержимого    48    40     28   (рубрики→плитки, автор→обложка статьи,
                                                          между блоками боковой колонки)
   Обложка статьи — в колонке текста, 16:10, скругление 28; обложка→«Коротко» 28 (как блоки текста).
   ПРИНАДЛЕЖНОСТЬ: внутри группы отступ всегда меньше, чем между группами.
   Шапка статьи: «‹ Блог» 24 (тел. 20) → рубрика 12 (тел. 8) → заголовок 16 → лид 16 (тел. 12) → автор и дата.
   Заголовок блока боковой колонки → список 12 (меньше, чем между пунктами).
   L4  внутри плитки: фото→рубрика      16    14     12
       рубрика→заголовок                 6     6      6
       заголовок→автор и дата            8     8      6
   Низ страницы → подвал = --section-y  104   80     56
   Между колонками сетки = --gap         24   16     12
   Ритм текста статьи: абзацы 16 · перед подзаголовком 48 (план. 44, тел. 36) · подзаголовок→текст 12 (тел. 10)
                       · картинка, таблица, шаги, кейс, FAQ, цитата — 28 сверху и снизу

   ШРИФТЫ — пять ступеней от наборного 17 (только токены сайта)   ПК · План. · Тел.
   1 Заголовок        заголовок статьи 36/40 · 36/40 · 28/34; «Блог» и рубрика 28/34; 404 — 36/40 · 36/40 · 28/34
   2 Подзаголовок     подзаголовок в статье H2 24/30 · 22/28 · 20/26 (title-l), H3 20/26 · 19/25 · 18/24 (title-s);
                      лид 20/30 · 20/30 · 18/27;
                      крупная плитка 20/26 · 19/25 · 17/24; «Популярные статьи» 20/26 · 19/25 · 18/24
   3 НАБОРНЫЙ 17      текст статьи 17/27 везде; обычная плитка 17/24 жирный; «Коротко» 17/26;
                      вопрос FAQ 17/24 жирный; заголовок карточки «План» 17/24; результаты поиска 17/24 (тел. 15/20)
   4 Вторичный 15     похожие статьи (жирный), рубрики, список «План», таблицы, ответ FAQ 15/22, автор, «Назад»
   5 Подписи 13       рубрика на плитке (13 · 12 · 12), автор и дата, заголовки блоков боковой колонки
                      (заглавные, серые — как «Коротко»), подписи к картинкам 13/18
   Акцент: цена в карточке «План» — 32/39 (price-s сайта), цифры кейса 36/40 (тел. 32/39)
   Цитата 19/28 (тел. 17/25)

   ЗАГОЛОВКИ СТАТЕЙ в плитках и списках — не больше 2 строк, лишнее обрезается «…» (line-clamp).
   ЦВЕТ: заголовки и текст #1D1D1F → подзаголовок и автор #6E6E73 → дата #A1A1A6;
         синий #0A5CFF — только то, что нажимается. Линий-разделителей нет (кроме таблиц и FAQ).
   АНИМАЦИЯ: нет. Только ховер плитки на ПК с мышью (см. раздел «Ховер»).
   ===================================================================== */
:root{
  --b-l1:56px; --b-l2:64px; --b-l3:48px; --b-rows:48px;   /* ряды плиток: 48 · 40 · 40 */
  --b-img-gap:16px; --b-lab-gap:6px; --b-meta-gap:8px;
  --b-ease:cubic-bezier(.25,.1,.25,1);
}
@media (max-width:1023px){:root{--b-l1:48px;--b-l2:56px;--b-l3:40px;--b-rows:40px;--b-img-gap:14px}}
@media (max-width:767px){:root{--b-l1:32px;--b-l2:40px;--b-l3:28px;--b-img-gap:12px;--b-lab-gap:6px;--b-meta-gap:6px}}

:where(.b) :where(a:not(.btn)){color:inherit;text-decoration:none}

/* ---------- верх страницы ---------- */
.b-top{display:flex;align-items:center;gap:40px;padding-top:var(--b-l1)}
.b-h1{margin:0;font-size:28px;line-height:34px;font-weight:700;color:var(--ink)}
.b-nav{display:contents}   /* <nav> вокруг ленты рубрик — для семантики, на вёрстку не влияет */
.b-tabs{display:flex;gap:8px;list-style:none;margin:0;padding:0}
.b-tabs a{display:inline-flex;align-items:center;height:36px;padding:0 16px;border-radius:999px;font-size:var(--fs-small);line-height:var(--lh-small);color:var(--gray);white-space:nowrap}
.b-tabs a[aria-current]{background:var(--ink);color:#fff;font-weight:700}
.b-find{margin-left:auto;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--bg-soft);flex:none}
.b-desc{margin:12px 0 0;font-size:var(--fs-body);line-height:var(--lh-body);color:var(--gray);max-width:640px}
/* «Назад» — вверху статьи и рубрики, внизу статьи («Все статьи»). При переходе из блога blog.js делает history.back(): список открывается там, где читатель остановился */
.b-back{display:inline-flex;align-items:center;gap:6px;width:fit-content;font-size:var(--fs-small);line-height:var(--lh-small);font-weight:700;color:var(--blue)}
.b-back svg{width:8px;height:13px;flex:none}
.b-back--top{display:flex;margin-bottom:24px}
.container > .b-back--top{padding-top:var(--b-l1)}
.b-back--top + .b-top{padding-top:0}
.b-wrap{padding:var(--b-l3) 0 var(--section-y)}

/* ---------- плитки ---------- */
.b-grid{display:grid;gap:var(--b-rows) var(--gap)}
.b-grid--2{grid-template-columns:repeat(2,1fr)}
.b-grid--3{grid-template-columns:repeat(3,1fr)}
.b-grid--2 + .b-grid--3{margin-top:var(--b-rows)}
.b-img{display:block;position:relative;overflow:hidden;border-radius:var(--r-md);background:var(--bg-soft);margin-bottom:var(--b-img-gap)}
.b-grid--2 .b-img{aspect-ratio:16/10}
.b-grid--3 .b-img{aspect-ratio:16/10}
.b-img>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.b-lab{display:block;width:fit-content;font-size:var(--fs-label);line-height:var(--lh-label);font-weight:700;text-transform:uppercase;color:var(--blue)}
.b-t{margin:var(--b-lab-gap) 0 0;font-size:var(--fs-body);line-height:var(--lh-body);font-weight:700;color:var(--ink)}
/* заголовок статьи в плитке и списках — не больше 2 строк, дальше «…» */
.b-t,.rel b{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;overflow-wrap:anywhere}
.b-grid--2 .b-t{font-size:var(--fs-title-s);line-height:var(--lh-title-s)}
.b-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:var(--b-meta-gap);font-size:var(--fs-caption);line-height:var(--lh-caption);color:var(--gray-2)}
.b-meta b{font-weight:400;color:var(--gray)}
.b-dot{width:3px;height:3px;border-radius:50%;background:var(--gray-3)}
.b-more{display:flex;justify-content:center;margin-top:var(--b-rows)}

/* стеклянная плашка поверх фото */
.ov{position:absolute;left:20px;bottom:20px;display:flex;align-items:center;gap:6px;padding:6px 6px 6px 16px;border-radius:999px;background:rgba(255,255,255,.78);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}
.ov--icons{padding:6px}
.ov-q{font-size:15px;line-height:20px;font-weight:700;color:var(--ink);margin-right:6px;white-space:nowrap}
.aic{width:32px;height:32px;border-radius:50%;background:#fff;display:grid;place-items:center;flex:none}
.aic svg{width:18px;height:18px;display:block}
.aigrid{position:absolute;inset:0;display:grid;grid-template-columns:repeat(3,64px);gap:16px;place-content:center}
.aigrid .aic{width:64px;height:64px;box-shadow:0 8px 24px rgba(0,0,0,.06)}
.aigrid .aic svg{width:32px;height:32px}

/* ---------- Ховер (только ПК с мышью) ---------- */
@media (hover:hover) and (min-width:1024px){
  .b-card .b-img{transition:translate .5s var(--b-ease),box-shadow .5s var(--b-ease)}
  .b-card .b-img>img{transition:scale .9s var(--b-ease)}
  .b-card:hover .b-img,.b-card.is-hover .b-img{translate:0 -4px;box-shadow:0 18px 40px rgba(29,29,31,.10)}
  .b-card:hover .b-img>img,.b-card.is-hover .b-img>img{scale:1.04}
}

/* ---------- поиск ---------- */
.s-field{flex:1;display:flex;align-items:center;gap:12px;height:48px;padding:0 16px;border-radius:12px;background:var(--bg-soft);font-size:var(--fs-body);line-height:var(--lh-body);color:var(--ink)}
.s-field svg{flex:none}
.s-clear{margin-left:auto;width:20px;height:20px;border-radius:50%;background:var(--gray-3);display:grid;place-items:center;flex:none}
.s-cancel{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--blue);font-weight:700;flex:none}
.s-cap{margin:0 0 16px;font-size:var(--fs-caption);line-height:var(--lh-caption);font-weight:700;text-transform:uppercase;color:var(--gray)}
.s-list{list-style:none;margin:0;padding:0;max-width:800px}
.s-list li{display:grid;grid-template-columns:80px 1fr;gap:0 20px;align-items:center}
.s-list li+li{margin-top:20px}
.s-list .th{width:80px;height:80px;border-radius:14px;overflow:hidden;position:relative;background:var(--bg-soft)}
.s-list .th img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.s-list .b-t{margin-top:6px;font-size:var(--fs-body);line-height:var(--lh-body)}
.s-list mark{background:none;color:var(--ink);text-decoration:underline;text-decoration-color:var(--blue);text-decoration-thickness:2px;text-underline-offset:3px}
.s-all{display:block;width:fit-content;margin-top:24px;font-size:var(--fs-small);line-height:var(--lh-small);font-weight:700;color:var(--blue)}
.s-empty{max-width:640px}
.s-empty h2{margin:0;font-size:var(--fs-title-l);line-height:var(--lh-title-l);font-weight:700}
.s-empty p{margin:12px 0 0;font-size:var(--fs-body);line-height:var(--lh-body);color:var(--gray)}
.s-rubs{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.s-rubs a{display:inline-flex;align-items:center;height:36px;padding:0 16px;border-radius:999px;background:var(--bg-soft);font-size:var(--fs-small);line-height:var(--lh-small);color:var(--ink)}
.b-sub{margin:var(--b-l2) 0 var(--b-l3);font-size:var(--fs-title-s);line-height:var(--lh-title-s);font-weight:700}

/* ---------- предпросмотр ---------- */
.pv{background:var(--blue-tint);color:var(--blue-ink)}
.pv .container{display:flex;align-items:center;gap:12px;min-height:48px;font-size:var(--fs-small);line-height:var(--lh-small)}
.pv b{font-weight:700}
.pv .pv-dot{width:8px;height:8px;border-radius:50%;background:var(--blue);flex:none}

/* ---------- 404 ---------- */
.nf{padding-top:var(--b-l1)}
.nf .b-lab{margin-bottom:12px}
.nf h1{margin:0;font-size:36px;line-height:40px;font-weight:700;letter-spacing:-.01em}
.nf p{margin:16px 0 0;font-size:20px;line-height:30px;color:var(--gray);max-width:640px}
.nf .actions{margin-top:32px}

/* ---------- СТАТЬЯ ---------- */
.p-head{padding-top:var(--b-l1);max-width:760px}
.p-head h1{margin:12px 0 0;font-size:36px;line-height:40px;font-weight:700;letter-spacing:-.01em;color:var(--ink)}
.p-lead{margin:16px 0 0;font-size:20px;line-height:30px;color:var(--gray)}
.p-head .b-meta{margin-top:16px}
.p-hero{position:relative;overflow:hidden;margin:0 0 28px;aspect-ratio:16/10;border-radius:var(--r-md);background:var(--bg-soft)}   /* обложка в колонке текста, как картинки в статье */
.p-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.p-hero .ov{left:20px;bottom:20px}
.p-body{display:grid;grid-template-columns:minmax(0,680px) 336px;justify-content:space-between;gap:var(--b-l2);padding:var(--b-l3) 0 var(--section-y);align-items:start}

.art{min-width:0;font-size:var(--fs-body);line-height:27px;color:var(--ink)}
.art>*:first-child{margin-top:0}
.art p{margin:0 0 16px}
.art a{color:var(--blue)}
.art .muted{color:var(--gray)}
.art h2{margin:48px 0 12px;font-size:var(--fs-title-l);line-height:var(--lh-title-l);font-weight:700}
.art ul,.art ol{margin:0 0 16px;padding-left:24px}
.art ul{list-style:disc}
.art li{margin-bottom:8px}
.art li::marker{color:var(--gray-2)}
.art blockquote{margin:28px 0;padding:0 0 0 24px;border-left:2px solid var(--blue);font-size:19px;line-height:28px;font-weight:700}
.art > h3{margin:32px 0 8px;font-size:var(--fs-title-s);line-height:var(--lh-title-s);font-weight:700}   /* H3 только внутри раздела H2 */
.art h2 + *,.art > h3 + *{margin-top:0!important}         /* от подзаголовка до любого блока — всегда 12 (10 на телефоне) */
.tldr{margin:0 0 28px;padding:24px 28px;border-radius:var(--r-sm);background:var(--bg-soft)}
.tldr b{display:block;margin-bottom:8px;font-size:var(--fs-label);line-height:var(--lh-label);text-transform:uppercase;color:var(--gray)}
.tldr p{margin:0;font-size:var(--fs-body);line-height:26px}
.fig{margin:28px 0}
.fig .im{position:relative;overflow:hidden;aspect-ratio:16/10;border-radius:var(--r-md);background:var(--bg-soft)}
.fig .im img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.fig figcaption{margin-top:12px;font-size:var(--fs-caption);line-height:18px;color:var(--gray)}
.tbl-wrap{margin:28px 0;overflow-x:auto}
.tbl{width:100%;border-collapse:collapse;font-size:var(--fs-small);line-height:var(--lh-small)}
.tbl th{text-align:left;font-size:var(--fs-label);line-height:var(--lh-label);font-weight:700;text-transform:uppercase;color:var(--gray);padding:0 16px 12px 0}
.tbl td{padding:14px 16px 14px 0;border-top:1px solid var(--line);vertical-align:top}
.tbl td:first-child{font-weight:700}
.steps-b{list-style:none!important;padding:0!important;margin:28px 0}
.steps-b li{display:grid;grid-template-columns:36px 1fr;gap:16px;margin-bottom:16px}
.steps-b .n{width:36px;height:36px;border-radius:50%;background:var(--bg-soft);display:grid;place-items:center;font-size:15px;line-height:20px;font-weight:700;color:var(--ink)}
.steps-b b{display:block}
.p-case{margin:28px 0;display:grid;grid-template-columns:1fr 1fr;gap:var(--gap)}
.p-case div{padding:24px;border-radius:var(--r-sm);background:var(--bg-soft)}
.p-case div:last-child{background:var(--blue-tint)}
.p-case small{display:block;font-size:var(--fs-label);line-height:var(--lh-label);font-weight:700;text-transform:uppercase;color:var(--gray)}
.p-case div:last-child small{color:var(--blue-ink)}
.p-case strong{display:block;margin-top:8px;font-size:36px;line-height:40px}
.p-case span{display:block;margin-top:4px;font-size:var(--fs-small);line-height:var(--lh-small);color:var(--gray)}
.faq-b{margin:28px 0}
.faq-b .qa{padding:18px 0}
.faq-b .qa:first-child{padding-top:0}
.faq-b .qa+.qa{border-top:1px solid var(--line)}
.faq-b .q{margin:0;display:flex;justify-content:space-between;gap:16px;font-size:var(--fs-body);line-height:var(--lh-body);font-weight:700}
.faq-b .q i{font-style:normal;font-weight:400;color:var(--gray-2)}
.faq-b .qa.is-open .q i{color:var(--blue)}
.faq-b .a{margin:8px 0 0;font-size:var(--fs-small);line-height:22px;color:var(--gray)}
.faq-b .qa:not(.is-open) .a{display:none}
.p-author{display:flex;align-items:center;gap:12px;margin-top:40px}
.p-ava{width:40px;height:40px;border-radius:50%;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;line-height:1;font-weight:700;letter-spacing:-.02em;flex:none}
.p-ava i{font-style:normal;color:var(--blue)}
.p-author b{display:block;font-size:var(--fs-small);line-height:var(--lh-small)}
.p-author span.d{display:block;margin-top:2px;font-size:var(--fs-caption);line-height:var(--lh-caption);color:var(--gray)}

.side{align-self:stretch}   /* колонка во всю высоту статьи; липкая только карточка «План» */
.side-b+.side-b{margin-top:var(--b-l3)}
.side h2{margin:0 0 12px;font-size:var(--fs-label);line-height:var(--lh-label);font-weight:700;text-transform:uppercase;color:var(--gray)}
.side .s-field{height:44px;font-size:var(--fs-small);line-height:var(--lh-small)}
.rel{list-style:none;margin:0;padding:0}
.rel li{display:grid;grid-template-columns:64px 1fr;gap:14px;align-items:center}
.rel li+li{margin-top:16px}
.rel .th{position:relative;width:64px;height:64px;border-radius:12px;overflow:hidden;background:var(--bg-soft)}
.rel .th img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.rel .th .aigrid{grid-template-columns:repeat(3,13px);gap:3px}
.rel .th .aigrid .aic{width:13px;height:13px;box-shadow:none}
.rel .th .aigrid .aic svg{width:8px;height:8px}
.rel b{display:-webkit-box;font-size:var(--fs-small);line-height:var(--lh-small);font-weight:700}
.rel span.d{display:block;margin-top:2px;font-size:var(--fs-caption);line-height:var(--lh-caption);color:var(--gray-2)}
.cats{list-style:none;margin:0;padding:0}
.cats li{display:flex;justify-content:space-between;align-items:center;padding:7px 0;font-size:var(--fs-small);line-height:var(--lh-small)}
.cats li:first-child{padding-top:0}
.cats li span{min-width:24px;height:24px;padding:0 4px;box-sizing:border-box;border-radius:12px;background:var(--bg-soft);color:var(--gray);font-size:12px;line-height:15px;display:grid;place-items:center}   /* круг 24; от 100 — овал */
/* предложение в боковой колонке: «Проверка бренда» + «Следующий шаг — План», как на странице тарифа сайта.
   Тексты, цены и ссылки — из config (cta), не из шаблона. На ПК обе карточки липкие. */
.offer{position:sticky;top:calc(var(--header-h) + 24px)}
.plan-b{padding:28px;border-radius:var(--r-md);background:var(--bg-soft)}
.plan-t{display:block;margin-top:8px;font-size:var(--fs-body);line-height:var(--lh-body);font-weight:700}
.plan-price{margin-top:12px;font-size:var(--fs-price-s);line-height:var(--lh-price-s);font-weight:700}
.plan-sub{margin:4px 0 0;font-size:var(--fs-caption);line-height:18px;color:var(--gray)}
.plan-list{list-style:none;margin:20px 0 0;padding:0}
.plan-list li{display:flex;align-items:baseline;gap:12px;font-size:var(--fs-small);line-height:var(--lh-small)}
.plan-list li+li{margin-top:10px}
.plan-b .label{color:var(--gray)}   /* в блоге синий — только нажимаемое */
.plan-list .i-check{transform:translateY(-1px);background:var(--gray)}
.plan-b .btn{width:100%;margin-top:24px}
.plan-alt{display:flex;justify-content:center;align-items:center;gap:7px;margin-top:16px;font-size:var(--fs-small);line-height:var(--lh-small);font-weight:700;color:var(--blue)}
.next-b{margin-top:12px;padding:20px 24px;border-radius:var(--r-md);box-shadow:inset 0 0 0 1px var(--line)}
.next-b p{margin:0;font-size:var(--fs-small);line-height:var(--lh-small);color:var(--gray)}
.next-b p b{color:var(--ink)}
.plan-alt--left{justify-content:flex-start;margin-top:10px}
/* =================== ПЛАНШЕТ 768–1023 =================== */
@media (max-width:1023px){
  .b-top{flex-wrap:wrap;gap:16px}
  .b-tabs a{padding:0 14px}
  .b-tabs{order:3;width:calc(100% + 2*var(--gutter));margin:0 calc(-1*var(--gutter));padding:0 var(--gutter);box-sizing:border-box;overflow-x:auto;scrollbar-width:none}
  .b-grid--3{grid-template-columns:repeat(2,1fr)}
  .p-body{grid-template-columns:minmax(0,1fr);gap:var(--b-l2)}
  .side{align-self:auto}
  .offer{position:static;max-width:480px}
  .art h2{margin-top:44px}
  .side-b--search{display:none}
  .side-b--search + .side-b{margin-top:0}   /* скрытый поиск не даёт лишний отступ */
  .s-top{flex-wrap:nowrap}
}

/* =================== ТЕЛЕФОН до 767 =================== */
@media (max-width:767px){
  .b-tabs a{height:34px;padding:0 14px}
  .b-grid--2{grid-template-columns:1fr}
  .b-grid--2 .b-t{font-size:var(--fs-body);line-height:var(--lh-body)}
  .b-grid--2 .ov{left:14px;bottom:14px}
  /* остальные статьи — плитки 16:10 в одну колонку, на всю ширину */
  .b-grid--3{grid-template-columns:1fr;gap:var(--b-rows)}
  .b-grid--3 .b-t{font-size:var(--fs-body);line-height:var(--lh-body)}
  .b-grid--3 .ov{left:14px;bottom:14px}
  .s-list .aigrid{grid-template-columns:repeat(3,18px);gap:6px}
  .s-list .aigrid .aic{width:18px;height:18px;box-shadow:none}
  .s-list .aigrid .aic svg{width:10px;height:10px}
  .b-more .btn{width:100%}
  .s-field{height:44px}
  .s-list li{grid-template-columns:72px 1fr;gap:0 16px}
  .s-list .th{width:72px;height:72px}
  .s-list .b-t{font-size:var(--fs-small);line-height:var(--lh-small)}
  .p-head h1,.nf h1{font-size:28px;line-height:34px}
  .p-lead,.nf p{font-size:var(--fs-lead);line-height:var(--lh-lead)}
  .p-head h1{margin-top:8px}
  .p-head .b-meta{margin-top:12px}
  .b-back--top{margin-bottom:20px}
  .p-hero .ov{left:14px;bottom:14px}
  .art h2{margin:36px 0 10px}
  .art > h3{margin:28px 0 8px}
  .art blockquote{padding-left:20px;font-size:17px;line-height:25px}
  .tldr{padding:20px;margin-bottom:28px}
  .p-case{grid-template-columns:1fr;gap:12px}
  .p-case div{padding:20px}
  .p-case strong{font-size:var(--fs-stat);line-height:var(--lh-stat)}
  .offer{max-width:none}
  .plan-b{padding:24px}
  .s-cancel{font-size:var(--fs-small)}
}
.s-list .ov,.rel .ov{display:none}


/* планшет: в подборках «Популярные / Свежие» — ровно 2 карточки, без «сироты» */
@media (max-width:1023px){.b-sub + .b-grid--3 > :nth-child(n+3){display:none}}

/* очень узкие телефоны (до 359): на плашке поверх фото — только значки */
@media (max-width:359px){.ov-q{display:none}.ov{padding:6px}}

/* ПОДВАЛ (правка для всего сайта — перенести в разметку и components.css)
   Разметка: .footer__cols > .fc-s (2 стопки) > .fc (5 колонок).
   ПК и планшет: стопки «прозрачные» (display:contents), колонки стоят в прежней сетке и прежнем порядке.
   Телефон: две независимые колонки, между группами один шаг 29 px (как row-gap подвала в макете 390):
   слева «Услуги» → «О GEO» → «Контакты», справа «О сервисе» → «Документы». */
.fc-s{display:contents}
.fc--u{order:1}.fc--s{order:2}.fc--g{order:3}.fc--d{order:4}.fc--c{order:5}
@media (max-width:767px){
  .footer__cols{align-items:start}
  .fc-s{display:flex;flex-direction:column;gap:29px}
}

/* ---------- живые поля поиска (в макете — статичный текст; вид тот же) ---------- */
.s-field input{flex:1;min-width:0;border:0;background:none;padding:0;margin:0;font:inherit;line-height:inherit;color:var(--ink);outline:none;-webkit-appearance:none;appearance:none}
.s-field input::placeholder{color:var(--gray-2);opacity:1}
.s-field input::-webkit-search-cancel-button{display:none}
.s-clear{border:0;padding:0;cursor:pointer}
.s-page [hidden],.b [hidden]{display:none!important}
.s-field{min-width:0}
.s-field svg{color:var(--gray)}
.side .s-field svg{color:var(--gray-2)}

/* ---------- ред. 7 (03.11.2026) ---------- */
.p-head h1{margin-top:0}                                   /* рубрики над заголовком нет: «‹ Блог» → заголовок 24 · 24 · 20 */
.tldr{padding:20px 24px}
.tldr p{font-size:var(--fs-small);line-height:22px}        /* «Коротко» 15/22 — вторичный шрифт, блок тише текста статьи */
.b-card .b-lab,.s-list .b-lab{font-size:12px;line-height:16px;letter-spacing:.04em}   /* рубрика в плитке и в поиске: 12 жирная синяя (Inter 700, как было) — не спорит с заголовком */
.cats li:last-child{padding-bottom:0}                       /* последняя рубрика не добавляет 7 px к отступу до карточки */
@media (max-width:767px){
  .b-card .b-lab,.s-list .b-lab{font-size:11px;line-height:14px}
  .side-b+.side-b{margin-top:var(--b-l2)}                   /* блоки под статьёй на телефоне через 40 — как статья → «Похожие статьи» */
  .side-b--search + .side-b{margin-top:0}
  .tldr{padding:20px}
}

/* ---------- ред. 8 (03.11.2026): рубрики на планшете и телефоне — список как в iPhone ---------- */
@media (max-width:1023px){
  .cats{max-width:480px}                                    /* по ширине карточки «Проверка бренда»: края совпадают */
  .cats li{position:relative;padding:12px 0}                /* строка 44 px */
  .cats li+li{border-top:1px solid var(--line)}             /* тонкая линия между строками, от текста — как Почта */
  .cats li span{margin-left:auto;min-width:0;height:auto;padding:0;background:none;border-radius:0;font-size:var(--fs-small);line-height:var(--lh-small);color:var(--gray)}   /* цифра серым текстом, без круга */
  .cats li::after{content:'';flex:none;width:7px;height:7px;margin:0 3px 0 12px;border-top:2px solid var(--gray-2);border-right:2px solid var(--gray-2);transform:rotate(45deg)}   /* «›» */
  .cats li a::before{content:'';position:absolute;inset:0}  /* нажимается вся строка */
  .cats li:first-child a::before{top:-12px}
  .cats li:last-child a::before{bottom:-12px}
}

/* ---------- ред. 9 (03.11.2026): шапка статьи по колонке текста ---------- */
@media (min-width:1024px){.p-head{max-width:min(680px,calc(100% - 336px - var(--b-l2)))}}   /* = ширина колонки текста (680, на узком ПК меньше): «‹ Блог», заголовок, лид, автор, обложка и текст — одна левая и одна правая граница */
.p-head h1{text-wrap:balance}                                /* строки заголовка примерно равные, без одного слова на последней строке */
.p-lead{text-wrap:pretty}                                    /* последняя строка лида не из одного слова; старые браузеры просто переносят как обычно */
