/* ============================================================
   te9.css — дизайн-система страницы ниши te9.ru
   Один файл, без фреймворков. Токены скопированы из brandbook.css
   (источник правды — assets/brandbook.css), поверх — семантические
   алиасы и компоненты по TZ-design.md.
   Брейкпоинты: <860 рейтинг карточками + StickyCTA; <1024 бургер.
   ============================================================ */

/* ---------- 1. Токены (из brandbook.css) + алиасы ---------- */
:root{
  /* Core */
  --ink:#0B1220; --ink-2:#131C2E;
  --slate-700:#26314A; --slate-600:#475067; --slate-500:#667089;
  --slate-400:#8A93A6; --slate-300:#B7BFD0; --slate-200:#E2E7F0; --slate-100:#EDF0F7;
  --surface:#F5F7FB; --white:#FFFFFF;
  /* Brand blue */
  --blue:#0F62F2; --blue-600:#0B4ECF; --blue-700:#093FA6;
  --blue-400:#2C7BFF; --blue-100:#D7E5FF; --blue-50:#EAF1FF;
  /* Category accents (точечно: чипы/иконки, не фоны) */
  --cat-reg:#0F62F2; --cat-reg-50:#EAF1FF;
  --cat-fin:#15A66A; --cat-fin-50:#E5F6EE;
  --cat-law:#7C5CFC; --cat-law-50:#EFEBFF;
  --cat-it:#0AA2C8;  --cat-it-50:#E3F5FA;
  --cat-mkt:#F76808; --cat-mkt-50:#FFEEE2;
  --cat-hr:#E6447B;  --cat-hr-50:#FDEAF1;
  --cat-host:#475569; --cat-host-50:#EEF2F7;
  /* Семантика */
  --success:#15A66A; --success-50:#E5F6EE;
  --danger:#D64545;  --danger-50:#FDECEC;
  --warning:#B97708;
  /* Градация оценок — ТОЛЬКО тона синего (TZ-design 2.3, без светофора) */
  --score-9:#0F62F2;   /* 9.0–9.8  */
  --score-8:#2C7BFF;   /* 8.0–8.9  */
  --score-7:#6AA2FF;   /* 7.0–7.9  */
  --score-6:#8A93A6;   /* 6.0–6.9  */
  /* Геометрия */
  --radius-sm:8px; --radius:14px; --radius-lg:22px; --radius-pill:999px;
  --shadow-sm:0 1px 2px rgba(11,18,32,.06), 0 1px 1px rgba(11,18,32,.04);
  --shadow:0 6px 24px -8px rgba(11,18,32,.14), 0 2px 6px rgba(11,18,32,.05);
  --shadow-lg:0 30px 60px -20px rgba(11,18,32,.28);
  --shadow-cta:0 6px 16px -6px rgba(15,98,242,.6);
  --focus-ring:0 0 0 4px var(--blue-50);
  --font-display:'Montserrat', system-ui, sans-serif;
  --font-text:'Manrope', system-ui, sans-serif;
  --maxw:1400px;
  --space-section:64px;          /* между секциями контентной страницы */
  --header-h:64px;
  color-scheme: light;
}
@media (max-width:759px){
  :root{ --space-section:40px; --header-h:56px; }
}

/* ---------- 2. База ---------- */
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 16px)}
body{
  font-family:var(--font-text);font-weight:500;font-size:16px;line-height:1.55;
  color:var(--ink);background:var(--white);
  -webkit-font-smoothing:antialiased;letter-spacing:-.01em;
}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
ul,ol{list-style:none}
button{font:inherit;background:none;border:none;cursor:pointer;color:inherit}
h1,h2{font-family:var(--font-display);letter-spacing:-.02em}
h1{font-weight:700;font-size:36px;line-height:1.1}
h2{font-weight:600;font-size:28px;line-height:1.15;margin-bottom:18px}
h3{font-family:var(--font-text);font-weight:800;font-size:20px;line-height:1.25}
h4{font-family:var(--font-text);font-weight:800;font-size:17px;line-height:1.3}
@media (max-width:759px){
  h1{font-size:27px} h2{font-size:22px} h3{font-size:18px} h4{font-size:16px}
}
.num,.price,.score,time{font-variant-numeric:tabular-nums}
:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--radius-sm)}
::selection{background:var(--blue-100)}

/* ---------- 3. Лэйаут ---------- */
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 32px}
@media (max-width:759px){.wrap{padding:0 16px}}
.section{margin-top:var(--space-section)}
.content-col{max-width:760px}            /* legacy-колонка (TEMPLATE) */
.prose{max-width:960px}                  /* текстовая колонка внутри .content-main: обзоры, FAQ, SEO-текст */
.label{font-family:var(--font-text);font-weight:700;font-size:12px;letter-spacing:.12em;
  text-transform:uppercase;color:var(--slate-500);margin-bottom:14px;display:block}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- 4. Кнопки (4 варианта × 3 размера, пилюли) ---------- */
.btn{font-family:var(--font-text);font-weight:700;font-size:14.5px;letter-spacing:-.01em;
  border:none;border-radius:var(--radius-pill);padding:12px 22px;min-height:44px;
  cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:9px;
  transition:background .16s ease, box-shadow .16s ease, color .16s ease;text-align:center}
.btn svg{width:17px;height:17px;flex:none}
.btn-primary{background:var(--blue);color:#fff;box-shadow:var(--shadow-cta)}
.btn-primary:hover{background:var(--blue-600)}
.btn-primary:active{background:var(--blue-700);box-shadow:none}
.btn-dark{background:var(--ink);color:#fff}
.btn-dark:hover{background:var(--slate-700)}
.btn-ghost{background:var(--blue-50);color:var(--blue-600)}
.btn-ghost:hover{background:var(--blue-100)}
.btn-ghost:active{color:var(--blue-700)}
.btn-outline{background:#fff;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--slate-200)}
.btn-outline:hover{box-shadow:inset 0 0 0 1.5px var(--slate-300)}
.btn-outline:active{background:var(--surface)}
.btn-outline:focus-visible{box-shadow:inset 0 0 0 1.5px var(--slate-300), var(--focus-ring)}
.btn-lg{min-height:48px;padding:14px 26px;font-size:15px}
.btn-sm{min-height:36px;padding:9px 16px;font-size:13.5px}
.btn[disabled]{opacity:.45;pointer-events:none}

/* ---------- 5. Бейджи, чипы, метки ---------- */
/* Top9Badge: один на страницу, у позиции №1. Пин — te9-mark-white.svg инлайн */
.top9{display:inline-flex;align-items:center;gap:7px;
  background:linear-gradient(180deg,var(--blue-400),var(--blue));color:#fff;
  font-family:var(--font-display);font-weight:600;font-size:12.5px;letter-spacing:.02em;
  padding:7px 14px 7px 11px;border-radius:var(--radius-pill);box-shadow:var(--shadow-cta)}
.top9 svg,.top9 img{width:auto;height:14px}
/* VerifiedBadge */
.verified{display:inline-flex;align-items:center;gap:6px;background:var(--success-50);
  color:var(--success);font-weight:700;font-size:12.5px;padding:6px 12px 6px 9px;border-radius:var(--radius-pill)}
.verified svg{width:15px;height:15px}
/* Tag — метка Placement («Выбор редакции» и т.п.), нейтральная */
.tag{display:inline-flex;align-items:center;font-weight:700;font-size:12px;padding:5px 11px;
  border-radius:var(--radius-sm);background:var(--surface);color:var(--slate-600);border:1px solid var(--slate-200)}
/* QuickChip — «Быстрый выбор», якорь на мини-обзор */
.qchip{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:8px 18px;
  background:#fff;border:1px solid var(--slate-200);border-radius:var(--radius-pill);
  font-size:13.5px;font-weight:700;color:var(--slate-600);transition:border-color .16s,color .16s;white-space:nowrap}
.qchip b{font-weight:800;color:var(--ink)}
.qchip:hover{border-color:var(--blue);color:var(--blue-600)}
.qchip:hover b{color:var(--blue-600)}
/* Чип-ссылка перелинковки (подниши, смежные) */
.link-chip{display:inline-flex;align-items:center;min-height:40px;padding:9px 18px;
  background:var(--surface);border:1px solid var(--slate-200);border-radius:var(--radius-pill);
  font-size:13.5px;font-weight:700;color:var(--slate-700);transition:.16s}
.link-chip:hover{border-color:var(--blue);color:var(--blue-600);background:var(--blue-50)}
.chip-row{display:flex;flex-wrap:wrap;gap:10px}
/* Чипы подниш (перелинковка): компактнее, ограничение ширины складывает в 2 ряда */
.chip-row.compact{gap:8px;max-width:680px}
.chip-row.compact .link-chip{min-height:34px;padding:7px 14px;font-size:13px}
@media (max-width:859px){
  .chip-row.scroll{flex-wrap:nowrap;overflow-x:auto;margin:0 -16px;padding:2px 16px 8px;
    scrollbar-width:none}
  .chip-row.scroll::-webkit-scrollbar{display:none}
}

/* ---------- 6. ScoreBadge «X.X / 10» + микробар ---------- */
.rate{display:inline-flex;align-items:center;gap:8px;background:var(--ink);color:#fff;
  border-radius:var(--radius-pill);padding:7px 14px 7px 8px;font-weight:800;line-height:1}
.rate .pin{width:24px;height:24px;border-radius:50%;background:var(--blue);
  display:flex;align-items:center;justify-content:center;flex:none}
.rate .pin svg,.rate .pin img{width:13px;height:13px}
.rate .score{font-family:var(--font-display);font-weight:600;font-size:18px}
.rate .of{font-size:11px;color:rgba(255,255,255,.55);font-weight:700}
.rate.lite{background:var(--blue-50);color:var(--blue-700);padding:8px 14px}
.rate.lite .of{color:var(--blue-400)}
.score-inline{font-weight:800;color:var(--ink);font-variant-numeric:tabular-nums}
/* Микробар: трек 64×6, заполнение классом градации g9/g8/g7/g6 */
.bar{display:block;width:64px;height:6px;border-radius:var(--radius-pill);
  background:var(--slate-200);overflow:hidden}
.bar i{display:block;height:100%;border-radius:var(--radius-pill);width:var(--v,0%)}
.g9{background:var(--score-9)} .g8{background:var(--score-8)}
.g7{background:var(--score-7)} .g6{background:var(--score-6)}

/* ---------- 7. Шапка сайта ---------- */
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.82);
  -webkit-backdrop-filter:saturate(180%) blur(14px);backdrop-filter:saturate(180%) blur(14px);
  border-bottom:1px solid var(--slate-200)}
.sh-in{max-width:var(--maxw);margin:0 auto;padding:0 32px;height:var(--header-h);
  display:flex;align-items:center;gap:14px}
.sh-logo{display:flex;align-items:center;flex:none}
.sh-logo img{height:24px;width:auto}
.sh-links{display:flex;gap:4px;margin-left:6px}
.sh-links a{font-size:13.5px;font-weight:600;color:var(--slate-600);
  padding:9px 13px;border-radius:var(--radius-pill);transition:.15s}
.sh-links a:hover{color:var(--ink);background:var(--surface)}
.sh-spacer{flex:1}
.sh-iconbtn{width:44px;height:44px;display:flex;align-items:center;justify-content:center;
  border-radius:var(--radius-pill);color:var(--slate-600);transition:.15s}
.sh-iconbtn:hover{background:var(--surface);color:var(--ink)}
.sh-iconbtn svg{width:20px;height:20px}
.sh-burger{display:none}
@media (max-width:1023px){
  .sh-in{padding:0 16px}
  .sh-links,.sh-catalog{display:none}
  .sh-burger{display:flex}
}
/* Мобильное меню (открывается бургером) */
.sh-menu{display:none;border-top:1px solid var(--slate-200);background:#fff;
  box-shadow:var(--shadow-lg);padding:12px 16px 20px}
.sh-menu.open{display:block}
.sh-menu a{display:flex;align-items:center;min-height:48px;padding:10px 8px;
  font-size:15px;font-weight:700;color:var(--slate-700);border-bottom:1px solid var(--slate-100)}
.sh-menu a:last-child{border-bottom:none}
@media (min-width:1024px){.sh-menu{display:none !important}}

/* ---------- 8. Хлебные крошки ---------- */
.crumbs{display:flex;align-items:center;flex-wrap:wrap;gap:8px;
  margin:16px 0 12px;font-size:13px;font-weight:600;color:var(--slate-500)}
.crumbs a:hover{color:var(--ink)}
.crumbs .sep{color:var(--slate-300);font-size:11px}
.crumbs [aria-current]{color:var(--slate-700)}

/* ---------- 9. Шапка страницы: H1, лид, TrustLine ---------- */
.page-head{max-width:850px}
.page-head .lead{margin-top:14px;font-size:16px;font-weight:500;color:var(--slate-600);max-width:64ch}
.trustline{margin-top:16px;display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px;
  font-size:13.5px;font-weight:600;color:var(--slate-500)}
.trustline .dot{color:var(--slate-300)}
.trustline svg{width:14px;height:14px;color:var(--slate-400);margin-right:2px;display:inline-block;vertical-align:-2px}
.trustline a{color:var(--blue-600);font-weight:700}
.trustline a:hover{text-decoration:underline}

/* Карточка «Лидер рейтинга» справа от лида (desktop >=1024). Sticky-совместима */
.hero-grid{display:grid;gap:24px}
.hero-leader{display:none}
@media (min-width:1024px){
  .hero-grid{grid-template-columns:minmax(0,1fr) 340px;gap:56px;align-items:start}
  .hero-leader{display:flex;flex-direction:column;gap:14px;
    position:sticky;top:calc(var(--header-h) + 20px);
    background:#fff;border:1px solid var(--slate-200);border-radius:var(--radius-lg);
    padding:24px;box-shadow:var(--shadow-sm)}
}
.hero-leader .label{margin-bottom:0}
.hl-top{display:flex;align-items:center;gap:12px}
.hl-name{font-weight:800;font-size:18px;line-height:1.2}
.hl-pos{margin-top:2px;font-size:12.5px;font-weight:700;color:var(--blue-600)}
.hl-pros li{position:relative;padding-left:24px;font-size:13.5px;font-weight:600;
  color:var(--slate-700);line-height:1.45;margin-top:7px}
.hl-pros li:first-child{margin-top:0}
.hl-pros li::before{content:"\2713";position:absolute;left:0;top:0;font-weight:800;color:var(--success)}

/* Быстрый выбор */
.quick-pick{margin-top:22px}
/* Mobile: бюджет первого экрана 390×750 — карточка №1 целиком (TZ-design 5.6).
   Лид клампится до 4 строк, спейсинг шапки ужимается */
@media (max-width:859px){
  .page-head .lead{margin-top:10px;font-size:15px}
  .trustline{margin-top:12px;font-size:13px}
  .quick-pick{margin-top:14px}
  .quick-pick .label{margin-bottom:10px}
  .crumbs{margin:12px 0 10px}
}

/* ---------- 10. RatingTable — рейтинг ТОП-9 (ядро) ---------- */
.rating{margin-top:20px;background:#fff;border:1px solid var(--slate-200);
  border-radius:var(--radius-lg);overflow:hidden}
/* Компактная строка «V1»: одна линия на сервис */
.r-row{position:relative;display:grid;align-items:center;gap:14px;
  grid-template-columns:34px 34px minmax(0,1fr) auto;
  padding:10px 18px;border-top:1px solid var(--slate-100);transition:background .16s ease}
.r-row:first-child{border-top:none}
.r-row:hover{background:var(--surface)}
.r-row.is-1{background:var(--blue-50);box-shadow:inset 0 0 0 1px var(--blue-100)}
.r-row.is-1:hover{background:#E0EBFF}
.r-row.is-2,.r-row.is-3{background:rgba(234,241,255,.5)}
.r-row.is-2:hover,.r-row.is-3:hover{background:rgba(224,235,255,.65)}
.r-pos{font-family:var(--font-display);font-weight:800;font-size:17px;
  color:var(--slate-400);font-variant-numeric:tabular-nums;text-align:center}
.is-1 .r-pos{color:var(--blue)}
.is-2 .r-pos,.is-3 .r-pos{color:var(--ink)}
.logo-tile{width:34px;height:34px;flex:none;border-radius:8px;background:#fff;
  border:1px solid var(--slate-200);display:flex;align-items:center;justify-content:center;
  font-family:var(--font-display);font-weight:600;font-size:15px;color:var(--blue)}
.logo-tile img{width:24px;height:24px;flex:none;object-fit:contain;display:block}
.r-name{min-width:0}
.r-name .nm{font-weight:700;font-size:14.5px;line-height:1.2;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.r-name .nm a{position:relative;z-index:2}
.r-name .nm a:hover{color:var(--blue-600)}
.r-name .bf{margin-top:2px;font-size:12.5px;font-weight:500;color:var(--slate-500);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* мини-чипы */
.rc{flex:none;font-size:10px;font-weight:700;padding:1px 6px;border-radius:5px;
  background:var(--surface);color:var(--slate-600);border:1px solid var(--slate-200);white-space:nowrap}
.rc.ok{background:var(--success-50);color:var(--success);border-color:transparent}
.rc.ed{background:var(--blue-50);color:var(--blue-600);border-color:transparent}
/* правый блок: цена · оценка · кнопка */
.r-end{display:flex;align-items:center;gap:18px;position:relative;z-index:2}
.r-price{order:1;font-size:13.5px;font-weight:700;white-space:nowrap;text-align:right;min-width:96px}
.r-price .free{color:var(--success)}
.r-score{order:2;display:inline-flex;align-items:center;gap:5px;white-space:nowrap;justify-content:flex-end;min-width:64px}
.r-score .pin{width:17px;height:17px;flex:none;color:var(--blue);display:inline-grid;place-items:center}
.r-score .pin svg{width:15px;height:15px;fill:currentColor}
.r-score b{font-family:var(--font-display);font-weight:800;font-size:16px;color:var(--blue-600)}
.r-score .of{font-size:11px;color:var(--slate-400);margin-left:1px}
.r-end .btn{order:3;padding:7px 16px;font-size:13px;gap:6px;white-space:nowrap}
.r-row .row-link{position:absolute;inset:0;z-index:1}
@media (max-width:720px){
  .r-row{grid-template-columns:26px 32px minmax(0,1fr);gap:10px;padding:11px 14px;align-items:center}
  .r-name .bf{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .r-end{grid-column:1/-1;display:flex;align-items:center;gap:14px;margin-top:8px;padding-left:0}
  .r-score{order:1;flex:none;line-height:1}
  .r-price{order:2;flex:1 1 auto;min-width:0;font-size:13.5px;line-height:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .r-end .btn{order:3;flex:none;padding:8px 18px;font-size:13px}
}
/* ---------- 11. Якорное меню обзоров — legacy (TEMPLATE) ---------- */
.anchor-menu{margin-top:24px}
.anchor-menu .qchip{min-height:36px;padding:7px 14px;font-size:13px}

/* ---------- 11b. Контент-лэйаут после рейтинга: центральная колонка 960
   + sticky-оглавление «На странице» СПРАВА (>=1200), стиль TechRadar/Хабр.
   Грид [1fr | 960 | 240 | 1fr]: при контейнере 1336 (1400−2×32) колонка
   получает полные 960, боковые fr ≈ 8px — ось почти совпадает с центром.
   <1200: оглавление скрыто, колонка 100% (max 960) по центру. ---------- */
.page-nav{display:none}
.content-main{max-width:960px;margin:0}
@media (min-width:1200px){
  .content-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;column-gap:44px}
  .content-layout > .content-main{grid-column:1;grid-row:1;max-width:none;margin:0;min-width:0}
  .content-layout > .page-nav{display:block;grid-column:2;grid-row:1}
  .content-layout .prose,.content-layout .method,.content-layout .seo-text{max-width:none}
}
/* legacy (TEMPLATE): сайдбар слева от обзоров */
@media (min-width:1200px){
  .reviews-layout{display:grid;grid-template-columns:232px minmax(0,1fr);gap:56px;align-items:start}
  .reviews-layout .page-nav{display:block}
}
.pn-in{position:sticky;top:calc(var(--header-h) + 24px);background:#fff;
  border:1px solid var(--slate-200);border-radius:var(--radius);padding:20px}
.pn-in .label{margin-bottom:12px}
.pn-nav{display:flex;flex-direction:column;gap:2px}
.pn-link{display:flex;align-items:center;gap:11px;padding:7px 8px;margin:0 -8px;border-radius:9px;font-size:14px;font-weight:600;color:var(--slate-700)}
.pn-link:hover{background:var(--surface);color:var(--blue-700)}
.pn-ic{width:28px;height:28px;flex:none;border-radius:8px;background:var(--surface);display:grid;place-items:center;color:var(--slate-500)}
.pn-ic svg{width:16px;height:16px}
.pn-link:hover .pn-ic{background:var(--blue);color:#fff}
.pn-cnt{margin-left:auto;font-size:11px;font-weight:700;color:var(--slate-400);background:var(--surface);padding:1px 8px;border-radius:999px}
.pn-sub{position:relative;list-style:none;margin:2px 0 4px 22px;padding-left:14px}
.pn-sub a{display:flex;align-items:center;gap:9px;padding:5px 8px;margin:0 -8px;font-size:13px;font-weight:500;color:var(--slate-500);border-radius:8px}
.pn-sub a::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--slate-300);flex:none}
.pn-sub a:hover{background:var(--surface);color:var(--blue-600)}
.pn-sub a:hover::before{background:var(--blue)}

/* ---------- 12. Мини-обзоры ---------- */
.review{padding:32px 0;border-top:1px solid var(--slate-100)}
.review:first-of-type{border-top:none;padding-top:24px}
.rev-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.rev-head h3{font-family:var(--font-display);font-weight:700;font-size:20px;letter-spacing:-.01em;
  display:flex;align-items:center;gap:10px;min-width:0}
.rev-head h3 .score-inline{color:var(--blue-600)}
/* Мини-тайл 28px в заголовке обзора */
.rev-head h3 .logo-tile{width:28px;height:28px;border-radius:8px}
.rev-head h3 .logo-tile img{width:20px;height:20px}
/* Скриншот главной страницы сервиса в обзоре */
.shot{margin:18px 0 6px;border:1px solid #E2E7F0;border-radius:14px;overflow:hidden;
  background:#fff;box-shadow:0 4px 18px rgba(15,23,42,.06)}
.shot img{width:100%;height:auto;display:block}
.shot figcaption{padding:9px 14px;font-size:12.5px;font-weight:600;color:var(--slate-500);
  border-top:1px solid var(--slate-100)}
.review > p{margin-top:14px;color:var(--slate-700);font-size:15px}
/* Pros/cons компакт: списки без подложек, маркеры цветом */
.pros-cons{display:grid;grid-template-columns:1fr 1fr;gap:10px 28px;margin-top:16px}
.pros li,.cons li{position:relative;padding-left:26px;font-size:14.5px;line-height:1.5;
  color:var(--slate-700);margin-top:8px}
.pros li::before,.cons li::before{position:absolute;left:0;top:1px;font-weight:800;font-size:14px}
.pros li::before{content:"✓";color:var(--success)}
.cons li::before{content:"−";color:var(--danger)}
@media (max-width:759px){.pros-cons{grid-template-columns:1fr}}
/* CriteriaBars: 6 шкал */
.crit{margin-top:18px;max-width:520px;display:grid;gap:9px}
.crit .c-row{display:grid;grid-template-columns:1fr 140px 36px;align-items:center;gap:14px}
.crit .c-name{font-size:13.5px;font-weight:600;color:var(--slate-600)}
.crit .bar{width:100%;height:8px}
.crit .c-val{font-size:14px;font-weight:800;text-align:right;font-variant-numeric:tabular-nums}
@media (max-width:479px){.crit .c-row{grid-template-columns:1fr 90px 32px}}
/* Тариф и CTA обзора */
.rev-tariff{margin-top:16px;font-size:14.5px;font-weight:700}
.rev-tariff span{font-weight:600;color:var(--slate-500)}
.rev-cta{display:flex;gap:12px;margin-top:18px;flex-wrap:wrap}
@media (max-width:579px){.rev-cta{flex-direction:column}.rev-cta .btn{width:100%}}

/* ---------- 13. Методология ---------- */
.method{background:var(--surface);border-radius:var(--radius-lg);padding:32px;max-width:960px}
.method ol{counter-reset:m;display:grid;gap:14px;margin:18px 0 22px}
.method ol li{counter-increment:m;position:relative;padding-left:44px;font-size:15px;color:var(--slate-700)}
.method ol li::before{content:counter(m);position:absolute;left:0;top:-2px;width:30px;height:30px;
  border-radius:50%;background:#fff;border:1px solid var(--slate-200);
  display:flex;align-items:center;justify-content:center;
  font-family:var(--font-display);font-weight:600;font-size:14px;color:var(--blue)}
/* критерии методологии из сплошного абзаца */
.method .mth-list{list-style:none;display:grid;gap:11px;margin:16px 0 18px;padding:0}
.method .mth-list li{position:relative;padding-left:22px;font-size:15px;line-height:1.65;color:var(--slate-700)}
.method .mth-list li::before{content:"";position:absolute;left:2px;top:9px;width:7px;height:7px;border-radius:50%;background:var(--blue)}
.method .mth-list li b{color:var(--ink)}
.method > div > p{font-size:15px;line-height:1.7;color:var(--slate-700);margin:0 0 4px}
@media (max-width:759px){.method{padding:24px 18px}}

/* ---------- 14. FAQ (details/summary) ---------- */
.faq{border:1px solid var(--slate-200);border-radius:var(--radius);overflow:hidden;background:#fff}
.faq details{border-top:1px solid var(--slate-100)}
.faq details:first-child{border-top:none}
.faq summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;
  gap:16px;min-height:56px;padding:18px 24px;font-size:16px;font-weight:800}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";flex:none;width:20px;height:20px;transition:transform .24s ease;
  background:no-repeat center/contain url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none" stroke="%238A93A6" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="m6 9 6 6 6-6"/></svg>')}
.faq details[open] summary::after{transform:rotate(180deg)}
.faq .a{padding:0 24px 18px;font-size:14.5px;line-height:1.55;color:var(--slate-600)}
@media (max-width:759px){.faq summary{padding:16px;font-size:15px}.faq .a{padding:0 16px 16px}}

/* ---------- 15. SEO-текст ---------- */
.seo-text{max-width:960px}
.seo-text h2{margin-top:34px}
.seo-text h2:first-child{margin-top:0}
.seo-text p{margin-top:14px;color:var(--slate-700);font-size:15.5px}
.seo-text a{color:var(--blue-600);font-weight:700}
.seo-text a:hover{text-decoration:underline}

/* ---------- SEO-текст «Конспект»: метка+заголовок слева, текст справа ---------- */
.seo-cons .sc-intro{font-size:16.5px;line-height:1.7;color:var(--ink);font-weight:600;
  padding-bottom:20px;margin-bottom:6px;border-bottom:1px solid var(--slate-100)}
.seo-cons .sc-intro p{margin:0 0 12px}
.seo-cons .sc-row{display:grid;grid-template-columns:220px minmax(0,1fr);gap:26px;
  padding:24px 0;border-top:1px solid var(--slate-100)}
.seo-cons .sc-row:first-child{border-top:none;padding-top:0}
.seo-cons .sc-row:last-child{padding-bottom:0}
.seo-cons .sc-head h2{font-family:var(--font-display);font-size:17px;font-weight:800;
  margin:0;line-height:1.35;color:var(--ink)}
.seo-cons .sc-tag{display:block;font-size:11.5px;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;color:var(--blue-600);margin-bottom:6px}
.seo-cons .sc-body p{margin:0 0 12px;font-size:15px;line-height:1.7;color:var(--slate-700)}
.seo-cons .sc-body p:last-child{margin-bottom:0}
.seo-cons .sc-body ul,.seo-cons .sc-body ol{margin:0 0 12px;padding-left:20px;font-size:15px;line-height:1.7;color:var(--slate-700)}
.seo-cons .sc-body ul{list-style:disc}
.seo-cons .sc-body ol{list-style:decimal}
.seo-cons .sc-body li{margin:0 0 6px;padding-left:4px}
.seo-cons .sc-body li::marker{color:var(--blue)}
.seo-cons .sc-body h3{font-size:15.5px;font-weight:800;margin:14px 0 6px}
.seo-cons .sc-body a{color:var(--blue-600);font-weight:700}
.seo-cons .sc-body a:hover{text-decoration:underline}
@media (max-width:720px){.seo-cons .sc-row{grid-template-columns:1fr;gap:8px;padding:18px 0}}

/* ---------- 16. Перелинковка ---------- */
/* Сравнения лидеров */
.vs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.vs-card{display:flex;align-items:center;justify-content:space-between;gap:12px;
  background:#fff;border:1px solid var(--slate-200);border-radius:var(--radius);
  padding:18px 20px;font-size:14.5px;font-weight:800;transition:.18s}
.vs-card .vs{font-family:var(--font-display);font-weight:600;font-size:12px;color:var(--slate-400)}
.vs-card svg{width:16px;height:16px;color:var(--blue);flex:none}
.vs-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}
/* Смежные рейтинги — NicheCard */
.niche-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.niche-card{display:block;background:#fff;border:1px solid var(--slate-200);
  border-radius:var(--radius);padding:22px;transition:.18s}
.niche-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}
.niche-card .nc-top{display:flex;align-items:center;gap:12px}
.niche-card .nc-ic{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;
  justify-content:center;flex:none}
.niche-card .nc-ic svg{width:20px;height:20px}
.niche-card .nc-name{display:block;font-weight:800;font-size:16px;line-height:1.25}
.niche-card .nc-n{display:block;font-size:12.5px;font-weight:600;color:var(--slate-500);margin-top:2px}
.niche-card .nc-leader{margin-top:14px;display:flex;align-items:center;gap:8px;
  font-size:13.5px;font-weight:700;color:var(--slate-600)}
.niche-card .nc-leader .n1{font-weight:800;font-size:12px;color:var(--blue)}
@media (max-width:1023px){.vs-grid,.niche-grid{grid-template-columns:1fr 1fr}}
@media (max-width:639px){.vs-grid,.niche-grid{grid-template-columns:1fr}}

/* ---------- 17. Партнёрский дисклеймер ---------- */
.disclaimer{display:flex;gap:12px;background:var(--surface);border:1px solid var(--slate-200);
  border-radius:var(--radius);padding:18px 22px;font-size:13.5px;font-weight:600;
  color:var(--slate-500);line-height:1.55;max-width:760px}
.disclaimer svg{width:18px;height:18px;flex:none;color:var(--blue);margin-top:1px}
.disclaimer a{color:var(--blue-600);font-weight:700}
.disclaimer a:hover{text-decoration:underline}

/* ---------- 18. Футер ---------- */
.foot{margin-top:var(--space-section);background:var(--ink);color:#fff;padding:64px 0 48px}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr .8fr .9fr 1.1fr;gap:36px}
.foot-brand img{height:28px;width:auto;margin-bottom:16px}
.foot-brand p{color:rgba(255,255,255,.55);font-size:13.5px;max-width:34ch;line-height:1.6}
.foot .col-title{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  color:rgba(255,255,255,.45);margin-bottom:14px;font-family:var(--font-text)}
.foot .col a{display:block;padding:5px 0;font-size:13.5px;font-weight:600;
  color:rgba(255,255,255,.82);transition:.15s}
.foot .col a:hover{color:#fff}
.foot-bottom{margin-top:48px;padding-top:24px;border-top:1px solid rgba(255,255,255,.1);
  display:flex;justify-content:space-between;gap:12px 24px;flex-wrap:wrap;
  font-size:12.5px;font-weight:600;color:rgba(255,255,255,.4)}
.foot-bottom a{color:rgba(255,255,255,.6)}
.foot-bottom a:hover{color:#fff}
@media (max-width:1023px){.foot-grid{grid-template-columns:1fr 1fr}}
@media (max-width:579px){.foot-grid{grid-template-columns:1fr;gap:28px}}

/* ---------- 19. StickyCTA (mobile, <860) ---------- */
.sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:40;display:none;
  align-items:center;gap:10px;min-height:60px;
  padding:8px 12px calc(8px + env(safe-area-inset-bottom));
  background:#fff;border-top:1px solid var(--slate-200);
  box-shadow:0 -10px 30px -12px rgba(11,18,32,.25);
  transform:translateY(105%);transition:transform .24s ease}
.sticky-cta.show{transform:translateY(0)}
.sticky-cta .sc-pos{font-size:13px;font-weight:800;color:var(--blue);flex:none}
.sticky-cta .logo-tile{width:32px;height:32px;font-size:14px;border-radius:8px}
.sticky-cta .logo-tile img{width:22px;height:22px}
.sticky-cta .sc-name{flex:1;min-width:0;font-size:14px;font-weight:800;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sticky-cta .sc-name .score-inline{font-size:13px;color:var(--slate-500);font-weight:700}
.sticky-cta .sc-close{width:32px;height:32px;flex:none;display:flex;align-items:center;
  justify-content:center;color:var(--slate-400);border-radius:50%}
.sticky-cta .sc-close:hover{background:var(--surface)}
.sticky-cta .sc-close svg{width:16px;height:16px}
@media (max-width:859px){.sticky-cta{display:flex;transform:translateY(0)}}

/* ---------- 20. Доступность и движение ---------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition:none !important;animation:none !important}
  .vs-card:hover,.niche-card:hover{transform:none}
}
@media (hover:none){
  .vs-card:hover,.niche-card:hover{box-shadow:none;transform:none}
}

.rev-num{font-weight:800;color:var(--slate-400,#8A93A6);font-size:1.05em;flex:none}

/* ============================================================
   PAGES — компоненты 6 новых типов страниц (карточка сервиса,
   подниша/теговая, главная, блог, статья, контакты).
   ТОЛЬКО ДОБАВЛЕНИЯ: ни один селектор эталона (crm.html /
   planirovshchiki-zadach.html) не переопределяется.
   Гайд по сборке страниц: PAGES-GUIDE.md
   ============================================================ */

/* ---------- P0. Утилиты PAGES ---------- */
/* Тёмные text-варианты категорийных цветов: для ТЕКСТА (контраст AA ≥4.5:1
   на белом и на подложках *-50). Яркие cat-* остаются для иконок/маркеров */
:root{
  --cat-reg-text:#0B4ECF; --cat-fin-text:#0E7A4E; --cat-law-text:#5B3FD1;
  --cat-it-text:#07748F;  --cat-mkt-text:#C24E00; --cat-hr-text:#C2275F;
  --cat-host-text:#37445A;
}
/* Категорийные акценты (точечно: иконка/чип, НЕ заливка блока).
   Вешаются на компонент рядом с .cl-card / .pc-cover / .cl-ic */
.acc-reg{--acc:var(--cat-reg);--acc-50:var(--cat-reg-50);--acc-text:var(--cat-reg-text)}
.acc-fin{--acc:var(--cat-fin);--acc-50:var(--cat-fin-50);--acc-text:var(--cat-fin-text)}
.acc-law{--acc:var(--cat-law);--acc-50:var(--cat-law-50);--acc-text:var(--cat-law-text)}
.acc-it{--acc:var(--cat-it);--acc-50:var(--cat-it-50);--acc-text:var(--cat-it-text)}
.acc-mkt{--acc:var(--cat-mkt);--acc-50:var(--cat-mkt-50);--acc-text:var(--cat-mkt-text)}
.acc-hr{--acc:var(--cat-hr);--acc-50:var(--cat-hr-50);--acc-text:var(--cat-hr-text)}
.acc-host{--acc:var(--cat-host);--acc-50:var(--cat-host-50);--acc-text:var(--cat-host-text)}
/* Размерные модификаторы лого-тайла (базовый 48px — в эталоне) */
.logo-tile.sm{width:28px;height:28px;border-radius:8px}
.logo-tile.sm img{width:20px;height:20px}
.logo-tile.xl{width:88px;height:88px;border-radius:18px;font-size:34px}
.logo-tile.xl img{width:56px;height:56px}
@media (max-width:759px){
  .logo-tile.xl{width:64px;height:64px;border-radius:14px;font-size:26px}
  .logo-tile.xl img{width:42px;height:42px}
}
/* Крупный ScoreBadge для шапки карточки сервиса */
.rate.big{padding:9px 18px 9px 10px}
.rate.big .pin{width:30px;height:30px}
.rate.big .pin svg,.rate.big .pin img{width:16px;height:16px}
.rate.big .score{font-size:24px}
.rate.big .of{font-size:12px}

/* ---------- P1. Шапка-резюме карточки сервиса (.sv-head) ---------- */
.sv-head{margin-top:8px;background:#fff;border:1px solid var(--slate-200);
  border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:28px 32px;
  display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:18px 24px;align-items:start}
.sv-head .logo-tile{grid-row:span 2}
.sv-id{min-width:0}
.sv-id h1{font-size:32px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.sv-id h1 .verified{vertical-align:middle}
.sv-sub{margin-top:8px;font-size:15px;font-weight:500;color:var(--slate-600);max-width:62ch}
.sv-marks{margin-top:14px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.sv-marks .price{font-size:14.5px;font-weight:800;white-space:nowrap}
.sv-cta{grid-column:3;grid-row:1 / span 2;display:flex;flex-direction:column;
  align-items:stretch;gap:10px;min-width:230px}
.sv-cta .rate{align-self:flex-start}
.sv-meta{margin-top:2px;display:flex;align-items:center;gap:6px;
  font-size:12.5px;font-weight:600;color:var(--slate-500)}
.sv-meta svg{width:14px;height:14px;flex:none;color:var(--success)}
@media (max-width:1023px){
  .sv-head{grid-template-columns:auto minmax(0,1fr)}
  .sv-cta{grid-column:1 / -1;grid-row:auto;min-width:0;flex-direction:row;
    flex-wrap:wrap;align-items:center}
  .sv-cta .btn{flex:1 1 auto}
  .sv-meta{width:100%}
}
@media (max-width:759px){
  .sv-head{padding:20px 16px;gap:14px 14px}
  .sv-id h1{font-size:24px}
}

/* ---------- P2. Таблица тарифов (.tariffs) ---------- */
/* Desktop: 3–4 колонки карточек; mobile <860: горизонтальный скролл-снап.
   Правило: btn-primary только у .popular, у остальных btn-outline */
.tariffs{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:stretch}
.tariffs.cols-4{grid-template-columns:repeat(4,1fr)}
.tariff{position:relative;display:flex;flex-direction:column;background:#fff;
  border:1px solid var(--slate-200);border-radius:var(--radius);padding:24px 22px}
.tariff.popular{border-color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue),var(--shadow)}
.t-flag{position:absolute;top:-12px;left:20px;background:var(--blue);color:#fff;
  font-size:11.5px;font-weight:800;letter-spacing:.04em;padding:4px 12px;
  border-radius:var(--radius-pill)}
.t-name{font-weight:800;font-size:16px}
.t-for{margin-top:3px;font-size:12.5px;font-weight:600;color:var(--slate-500)}
.t-price{margin-top:14px;font-family:var(--font-display);font-weight:700;font-size:26px;
  letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.t-price .per{font-family:var(--font-text);font-weight:600;font-size:13px;color:var(--slate-500)}
.t-price .free{color:var(--success)}
.t-feat{margin-top:14px;display:grid;gap:7px}
.t-feat li{position:relative;padding-left:24px;font-size:13.5px;font-weight:600;
  color:var(--slate-700);line-height:1.45}
.t-feat li::before{content:"\2713";position:absolute;left:0;top:0;font-weight:800;color:var(--success)}
.t-feat li.no{color:var(--slate-400)}
.t-feat li.no::before{content:"\2212";color:var(--slate-300)}
.tariff .btn{margin-top:18px}
.t-note{margin-top:10px;font-size:12px;font-weight:600;color:var(--slate-400);text-align:center}
@media (min-width:860px){.tariff .btn{margin-top:auto;padding-top:12px;padding-bottom:12px}
  .t-feat{margin-bottom:4px}}
@media (max-width:859px){
  .tariffs,.tariffs.cols-4{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;
    margin:0 -16px;padding:14px 16px 10px;scrollbar-width:none}
  .tariffs::-webkit-scrollbar{display:none}
  .tariff{flex:0 0 78%;max-width:320px;scroll-snap-align:center}
}

/* ---------- P3. Виджет отзыва с источником (.review-card) ---------- */
.reviews-list{display:grid;gap:14px}
/* Сводка средних оценок по источникам — над списком */
.reviews-sum{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}
.src-chip{display:inline-flex;align-items:center;gap:8px;background:#fff;
  border:1px solid var(--slate-200);border-radius:var(--radius-pill);
  padding:8px 14px;font-size:13px;font-weight:700;color:var(--slate-700)}
.src-chip img{width:16px;height:16px;border-radius:4px;flex:none}
.src-chip b{font-weight:800;color:var(--ink)}
.src-chip .cnt{font-weight:600;color:var(--slate-400)}
.review-card{background:#fff;border:1px solid var(--slate-200);
  border-radius:var(--radius);padding:20px 22px}
.rc-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.rc-ava{width:40px;height:40px;flex:none;border-radius:50%;background:var(--blue-50);
  color:var(--blue-600);display:flex;align-items:center;justify-content:center;
  font-family:var(--font-display);font-weight:600;font-size:16px}
.rc-who{min-width:0}
.rc-name{font-weight:800;font-size:14.5px;line-height:1.25}
.rc-date{font-size:12.5px;font-weight:600;color:var(--slate-500)}
/* Оценка в шкале ИСТОЧНИКА: звёзды ink-цветом мелко + «4/5» (П-11) */
.rc-rate{margin-left:auto;display:flex;align-items:center;gap:7px}
.stars{display:inline-flex;gap:2px;color:var(--ink)}
.stars svg{width:13px;height:13px;fill:currentColor;stroke:none}
.stars svg.off{fill:var(--slate-300)}
.rc-val{font-size:13px;font-weight:800;font-variant-numeric:tabular-nums}
.rc-text{margin-top:12px;font-size:14.5px;line-height:1.55;color:var(--slate-700)}
/* Плашка источника — обязательна и заметна (вся плашка = ссылка, rel="nofollow noopener") */
.rc-source{display:inline-flex;align-items:center;gap:8px;margin-top:14px;
  background:var(--surface);border:1px solid var(--slate-200);
  border-radius:var(--radius-pill);padding:7px 14px;
  font-size:13px;font-weight:700;color:var(--slate-700);transition:.16s}
.rc-source img{width:16px;height:16px;border-radius:4px;flex:none}
.rc-source svg{width:14px;height:14px;flex:none;color:var(--slate-400)}
.rc-source:hover{border-color:var(--blue);color:var(--blue-600)}
.rc-source:hover svg{color:var(--blue)}
@media (max-width:579px){
  .rc-rate{margin-left:0;width:100%;order:3}
}

/* ---------- P4. Промо-карточка (.promo-card) ---------- */
.promo-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.promo-card{display:flex;flex-direction:column;background:#fff;
  border:1px solid var(--slate-200);border-radius:var(--radius);padding:22px}
.pr-top{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.pr-disc{font-family:var(--font-display);font-weight:700;font-size:26px;
  letter-spacing:-.02em;color:var(--blue);font-variant-numeric:tabular-nums}
.pr-name{font-weight:800;font-size:15.5px}
.pr-terms{margin-top:8px;font-size:13.5px;font-weight:600;color:var(--slate-600);line-height:1.5}
.pr-exp{margin-top:6px;display:flex;align-items:center;gap:6px;
  font-size:12.5px;font-weight:600;color:var(--slate-500)}
.pr-exp svg{width:14px;height:14px;flex:none;color:var(--slate-400)}
/* Код пунктиром + кнопка-стаб копирования */
.pr-code{margin-top:14px;display:flex;align-items:center;gap:10px;
  background:var(--surface);border:1.5px dashed var(--slate-300);
  border-radius:var(--radius-sm);padding:9px 10px 9px 16px}
.pr-code code{flex:1;min-width:0;font-family:var(--font-display);font-weight:600;
  font-size:15px;letter-spacing:.1em;color:var(--ink);overflow-wrap:anywhere}
.pr-copy{flex:none;display:inline-flex;align-items:center;gap:6px;min-height:36px;
  padding:8px 14px;border-radius:var(--radius-pill);background:var(--blue-50);
  color:var(--blue-600);font-size:13px;font-weight:700;transition:.16s}
.pr-copy:hover{background:var(--blue-100)}
.pr-copy svg{width:14px;height:14px}
.promo-card .btn{margin-top:14px;align-self:flex-start}
/* Просроченные — серые, в конец списка, без кода (TZ-ux 4.5) */
.promo-card.off{opacity:.55}
.promo-card.off .pr-disc{color:var(--slate-500)}
@media (max-width:759px){
  .promo-grid{grid-template-columns:1fr}
  .promo-card .btn{align-self:stretch}
}

/* ---------- P5. «Участвует в рейтингах» (.in-ratings) ---------- */
.in-ratings{background:#fff;border:1px solid var(--slate-200);
  border-radius:var(--radius);overflow:hidden}
.ir-row{position:relative;display:flex;align-items:center;gap:14px;
  min-height:64px;padding:14px 22px;border-top:1px solid var(--slate-100);
  transition:background .16s ease}
.ir-row:first-child{border-top:none}
.ir-row:hover{background:var(--surface)}
.ir-pos{flex:none;min-width:44px;font-family:var(--font-display);font-weight:700;
  font-size:18px;color:var(--blue);font-variant-numeric:tabular-nums}
.ir-name{flex:1;min-width:0;font-size:15px;font-weight:800}
.ir-name a::after{content:"";position:absolute;inset:0}   /* вся строка кликабельна */
.ir-name .of9{display:block;margin-top:2px;font-size:12.5px;font-weight:600;color:var(--slate-500)}
.ir-score{flex:none;font-size:14px;font-weight:800;font-variant-numeric:tabular-nums}
.ir-score span{font-weight:600;color:var(--slate-400);font-size:12px}
.ir-go{flex:none;display:inline-flex;align-items:center;gap:5px;
  font-size:13.5px;font-weight:700;color:var(--blue-600)}
.ir-go svg{width:15px;height:15px}
@media (max-width:579px){
  .ir-row{flex-wrap:wrap;gap:8px 14px;padding:14px 16px}
  .ir-go{display:none}                       /* строка и так кликабельна */
}

/* ---------- P6. Hero главной (.home-hero) ---------- */
/* Тёмная Ink-секция с синим radial-glow — как og-image брендбука.
   Скруглённая карта внутри .wrap, НЕ full-bleed */
.home-hero{position:relative;overflow:hidden;margin-top:24px;
  background:linear-gradient(160deg,var(--ink-2),var(--ink) 55%);
  border-radius:var(--radius-lg);color:#fff;padding:64px 56px;box-shadow:var(--shadow-lg)}
.home-hero::before{content:"";position:absolute;inset:0;pointer-events:none;background:
  radial-gradient(640px 420px at 84% -12%, rgba(44,123,255,.42), transparent 62%),
  radial-gradient(440px 320px at -8% 112%, rgba(15,98,242,.22), transparent 60%)}
.home-hero > *{position:relative;z-index:1}
.home-hero h1{font-size:clamp(32px,4.6vw,56px);font-weight:700;line-height:1.02;
  letter-spacing:-.03em;max-width:20ch}
.home-hero h1 .b{color:var(--blue-400)}
.hh-lead{margin-top:18px;font-size:17px;font-weight:500;line-height:1.55;
  color:rgba(255,255,255,.62);max-width:52ch}
/* Чипы популярных ниш на тёмном фоне */
.hh-chips{margin-top:26px;display:flex;gap:10px;flex-wrap:wrap}
.hh-chip{display:inline-flex;align-items:center;gap:7px;min-height:42px;padding:9px 18px;
  background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);
  border-radius:var(--radius-pill);font-size:13.5px;font-weight:700;color:#fff;transition:.16s}
.hh-chip b{font-weight:800;color:var(--blue-400)}
.hh-chip:hover{background:rgba(255,255,255,.13);border-color:rgba(255,255,255,.3)}
/* Счётчики доверия */
.hh-stats{margin-top:38px;display:flex;gap:14px 44px;flex-wrap:wrap}
.hh-stats div{display:flex;flex-direction:column;gap:3px}
.hh-stats .k{font-family:var(--font-display);font-weight:600;font-size:26px;
  letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.hh-stats .l{font-size:12.5px;font-weight:600;color:rgba(255,255,255,.55)}
@media (max-width:759px){
  .home-hero{margin-top:16px;padding:36px 20px 32px;border-radius:var(--radius)}
  .hh-lead{font-size:15px}
  .hh-stats{margin-top:28px;gap:12px 28px}
  .hh-stats .k{font-size:21px}
}

/* ---------- P7. Плитка кластеров (.cluster-grid) ---------- */
/* Категорийный цвет — точечно: иконка и счётчик, НЕ заливка карточки */
.cluster-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.cl-card{display:block;background:#fff;border:1px solid var(--slate-200);
  border-radius:var(--radius);padding:24px;transition:.18s}
.cl-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}
.cl-top{display:flex;align-items:center;gap:14px}
.cl-ic{width:44px;height:44px;flex:none;border-radius:13px;display:flex;
  align-items:center;justify-content:center;
  background:var(--acc-50,var(--blue-50));color:var(--acc,var(--blue))}
.cl-ic svg{width:22px;height:22px}
.cl-name{font-weight:800;font-size:16.5px;line-height:1.25}
.cl-n{display:inline-flex;margin-top:3px;font-size:12px;font-weight:700;
  color:var(--acc-text,var(--blue-600))}   /* text-вариант: AA-контраст */
.cl-links{margin-top:14px;display:grid;gap:2px}
.cl-links a{display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:6px 0;font-size:13.5px;font-weight:600;color:var(--slate-600);
  border-top:1px solid var(--slate-100)}
.cl-links a:first-child{border-top:none}
.cl-links a:hover{color:var(--blue-600)}
.cl-links .soon{color:var(--slate-400);pointer-events:none}
.cl-links .soon i{font-style:normal;font-size:11px;font-weight:700;background:var(--surface);
  border:1px solid var(--slate-200);border-radius:var(--radius-sm);padding:2px 8px}
@media (max-width:1023px){.cluster-grid{grid-template-columns:1fr 1fr}}
@media (max-width:639px){.cluster-grid{grid-template-columns:1fr}}
@media (hover:none){.cl-card:hover{box-shadow:none;transform:none}}

/* ---------- P8. Карточка рейтинга для главной ---------- */
/* Расширение .niche-card НОВЫМИ потомками (эталон не трогаем):
   лидер с лого и оценкой + строка «Смотреть ТОП-9» */
.niche-card .nc-rate{margin-top:14px;display:flex;align-items:center;gap:10px;
  padding:10px 12px;background:var(--surface);border-radius:var(--radius-sm)}
.niche-card .nc-rate .n1{font-weight:800;font-size:12px;color:var(--blue);flex:none}
.niche-card .nc-rate .nm2{flex:1;min-width:0;font-size:13.5px;font-weight:800}
.niche-card .nc-rate .score-inline{font-size:13px;flex:none}
.niche-card .nc-rate .score-inline span{font-weight:600;color:var(--slate-400);font-size:11px}
.niche-card .nc-go{margin-top:14px;display:inline-flex;align-items:center;gap:6px;
  font-size:13.5px;font-weight:700;color:var(--blue-600)}
.niche-card .nc-go svg{width:15px;height:15px}
.niche-card:hover .nc-go{color:var(--blue-700)}
/* Вариант «скоро» (div, не ссылка): без hover-аффордансы, приглушённые лидер и CTA-строка */
.niche-card.soon{cursor:default}
.niche-card.soon:hover{box-shadow:none;transform:none}
.niche-card.soon .nc-rate .nm2{color:var(--slate-500)}
.niche-card.soon .nc-go,
.niche-card.soon:hover .nc-go{color:var(--slate-400)}

/* ---------- P9. Карточка статьи блога (.post-card) ---------- */
.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.post-card{display:flex;flex-direction:column;background:#fff;
  border:1px solid var(--slate-200);border-radius:var(--radius);
  overflow:hidden;transition:.18s}
.post-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}
/* Обложка — CSS-градиент ink + синий glow + цветовой акцент рубрики (--acc) */
.pc-cover{position:relative;aspect-ratio:16/9;
  background:linear-gradient(150deg,var(--ink-2),var(--ink) 60%)}
.pc-cover::before{content:"";position:absolute;inset:0;background:
  radial-gradient(260px 180px at 86% -16%, rgba(44,123,255,.4), transparent 62%),
  radial-gradient(220px 160px at -10% 116%,
    color-mix(in srgb, var(--acc,var(--blue)) 34%, transparent), transparent 64%)}
.pc-cover svg{position:absolute;right:16px;bottom:12px;width:30px;height:auto;
  color:#fff;opacity:.22}
.pc-rubric{position:absolute;left:14px;top:14px;display:inline-flex;align-items:center;
  gap:7px;background:#fff;border-radius:var(--radius-pill);padding:5px 12px;
  font-size:11.5px;font-weight:800;letter-spacing:.02em;
  color:var(--acc-text,var(--blue-600))}  /* текст — тёмный вариант (AA), точка-маркер — ярким */
.pc-rubric::before{content:"";width:7px;height:7px;border-radius:50%;
  background:var(--acc,var(--blue))}
.pc-body{flex:1;display:flex;flex-direction:column;padding:18px 20px 22px}
.pc-meta{display:flex;align-items:center;gap:7px;font-size:12.5px;font-weight:600;
  color:var(--slate-500)}
.pc-meta .dot{color:var(--slate-300)}
.pc-title{margin-top:8px;font-family:var(--font-text);font-weight:800;font-size:16.5px;
  line-height:1.3;color:var(--ink);transition:color .16s}
.post-card:hover .pc-title{color:var(--blue-600)}
.pc-teaser{margin-top:8px;font-size:13.5px;font-weight:500;line-height:1.55;
  color:var(--slate-600)}
@media (max-width:1023px){.post-grid{grid-template-columns:1fr 1fr}}
@media (max-width:639px){.post-grid{grid-template-columns:1fr}}
@media (hover:none){.post-card:hover{box-shadow:none;transform:none}}

/* ---------- P10. Типографика статьи (.article-body) ---------- */
/* Мета-строка под H1 статьи */
.art-meta{margin-top:14px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;
  font-size:13.5px;font-weight:600;color:var(--slate-500)}
.art-meta .dot{color:var(--slate-300)}
.art-meta .rub{display:inline-flex;align-items:center;gap:7px;background:var(--acc-50,var(--blue-50));
  color:var(--acc-text,var(--blue-600));border-radius:var(--radius-pill);padding:4px 12px;
  font-size:12px;font-weight:800}
/* Тело статьи: все правила СКОУПЛЕНЫ внутрь .article-body */
.article-body{font-size:15.5px;color:var(--slate-700)}
.article-body p{margin-top:14px}
.article-body > h2{margin-top:40px;margin-bottom:0}
.article-body h3{margin-top:28px;color:var(--ink)}
.article-body a{color:var(--blue-600);font-weight:700}
.article-body a:hover{text-decoration:underline}
.article-body strong{color:var(--ink)}
.article-body img{border:1px solid var(--slate-200);border-radius:var(--radius);margin-top:18px}
.article-body ul,.article-body ol{margin-top:14px;display:grid;gap:8px}
.article-body ul:not(.checklist) > li{position:relative;padding-left:22px;line-height:1.55}
.article-body ul:not(.checklist) > li::before{content:"";position:absolute;left:2px;top:10px;
  width:6px;height:6px;border-radius:50%;background:var(--blue)}
.article-body ol{counter-reset:ab}
.article-body ol > li{counter-increment:ab;position:relative;padding-left:34px;line-height:1.55}
.article-body ol > li::before{content:counter(ab);position:absolute;left:0;top:-1px;
  width:24px;height:24px;border-radius:50%;background:var(--blue-50);
  display:flex;align-items:center;justify-content:center;
  font-family:var(--font-display);font-weight:600;font-size:12.5px;color:var(--blue-600)}
/* Чек-лист с галками */
.article-body .checklist > li{position:relative;padding-left:26px;line-height:1.55}
.article-body .checklist > li::before{content:"\2713";position:absolute;left:0;top:0;
  font-weight:800;color:var(--success)}
/* Врезка-совет */
.tip{margin-top:20px;padding:16px 20px;background:var(--blue-50);
  border-left:3px solid var(--blue);border-radius:0 var(--radius-sm) var(--radius-sm) 0;
  font-size:14.5px;line-height:1.55;color:var(--slate-700)}
.tip .tip-t{display:block;margin-bottom:6px;font-size:11.5px;font-weight:800;
  letter-spacing:.1em;text-transform:uppercase;color:var(--blue-600)}
.tip p{margin-top:8px}
.tip p:first-of-type{margin-top:0}
/* Таблица в статье (обёртка даёт скролл на мобиле) */
.table-wrap{margin-top:20px;border:1px solid var(--slate-200);border-radius:var(--radius);
  overflow-x:auto;background:#fff}
.table-wrap table{width:100%;border-collapse:collapse;font-size:14px;min-width:520px}
.table-wrap th{background:var(--surface);text-align:left;font-weight:800;font-size:13px;
  color:var(--slate-600);padding:11px 16px;border-bottom:1px solid var(--slate-200);white-space:nowrap}
.table-wrap td{padding:11px 16px;border-bottom:1px solid var(--slate-100);
  color:var(--slate-700);font-weight:500;vertical-align:top}
.table-wrap tr:last-child td{border-bottom:none}
.table-wrap td b{color:var(--ink)}
/* Врезка service_card — мини-карточка сервиса в тексте статьи */
.svc-inline{margin-top:20px;display:flex;align-items:center;gap:16px;
  background:var(--surface);border:1px solid var(--slate-200);
  border-radius:var(--radius);padding:18px 20px}
.si-body{flex:1;min-width:0}
.si-name{display:flex;align-items:center;gap:8px;flex-wrap:wrap;
  font-size:15.5px;font-weight:800;color:var(--ink)}
.si-name .score-inline{color:var(--blue-600);font-size:14px}
.si-desc{margin-top:4px;font-size:13.5px;font-weight:600;color:var(--slate-600);line-height:1.5}
.svc-inline .btn{flex:none}
@media (max-width:579px){
  .svc-inline{flex-wrap:wrap}
  .svc-inline .btn{flex:1 1 100%}
}
/* Сетка «Альтернативы» / превью сервисов: вертикальная вариация .svc-inline */
.alt-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.alt-grid .svc-inline{margin-top:0;flex-direction:column;align-items:flex-start;
  background:#fff;padding:22px}
.alt-grid .svc-inline .btn{flex:none;align-self:stretch;margin-top:auto}
@media (max-width:1023px){.alt-grid{grid-template-columns:1fr 1fr}}
@media (max-width:639px){.alt-grid{grid-template-columns:1fr}}

/* ---------- P11. Форма контактов + реквизиты ---------- */
.contact-grid{display:grid;gap:24px}
@media (min-width:1024px){
  .contact-grid{grid-template-columns:minmax(0,1fr) 400px;gap:56px;align-items:start}
}
.form{display:grid;gap:18px;max-width:620px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.field{display:flex;flex-direction:column;gap:7px}
.field label{font-size:13px;font-weight:700;color:var(--slate-600)}
.field label .req-mark{color:var(--danger)}
.input{width:100%;min-height:48px;font-family:var(--font-text);font-size:15px;font-weight:500;
  padding:12px 16px;border-radius:var(--radius-sm);border:1.5px solid var(--slate-200);
  background:#fff;color:var(--ink);transition:border-color .15s, box-shadow .15s}
.input::placeholder{color:var(--slate-400)}
.input:hover{border-color:var(--slate-300)}
.input:focus{outline:none;border-color:var(--blue);box-shadow:var(--focus-ring)}
.input:focus-visible{outline:none;border-color:var(--blue);box-shadow:var(--focus-ring)}
textarea.input{min-height:140px;resize:vertical;line-height:1.5}
.field .hint{font-size:12.5px;font-weight:600;color:var(--slate-500)}
.form .btn{justify-self:start}
@media (max-width:579px){
  .form-row{grid-template-columns:1fr}
  .form .btn{justify-self:stretch}
}
/* Блок реквизитов */
.req{background:var(--surface);border-radius:var(--radius-lg);padding:28px}
.req h3{margin-bottom:6px}
/* h2 внутри .req: корректный уровень в иерархии, визуал компактного h3 */
.req h2{font-family:var(--font-text);font-weight:800;font-size:20px;line-height:1.25;margin-bottom:6px}
@media (max-width:759px){.req h2{font-size:18px}}
.req-list{margin-top:12px}
.req-row{display:grid;grid-template-columns:150px minmax(0,1fr);gap:4px 20px;
  padding:11px 0;border-bottom:1px solid var(--slate-200)}
.req-row:last-child{border-bottom:none}
.req-row dt{font-size:13px;font-weight:700;color:var(--slate-500)}
.req-row dd{font-size:14.5px;font-weight:700;color:var(--ink);overflow-wrap:anywhere;
  font-variant-numeric:tabular-nums}
.req-row dd a{color:var(--blue-600)}
.req-row dd a:hover{text-decoration:underline}
@media (max-width:579px){
  .req{padding:22px 18px}
  .req-row{grid-template-columns:1fr}
}

/* ---------- P12. Доступность PAGES ---------- */
@media (prefers-reduced-motion:reduce){
  .cl-card:hover,.post-card:hover{transform:none}
}

/* ---------- P13. Утилиты повторяемых паттернов (вместо инлайн-стилей) ---------- */
/* Сетка niche-grid с авто-подбором колонок (главная: «Популярные рейтинги») */
.niche-grid.fit{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
/* Подзаголовок секции под h2 */
.section-sub{margin:-6px 0 22px;font-size:15px;font-weight:500;color:var(--slate-600);max-width:64ch}
/* Email/контакт-ссылка внутри .svc-inline (страница контактов) */
.si-mail{display:inline-block;margin-top:4px;font-size:15px;font-weight:800;color:var(--blue-600)}
.si-mail:hover{text-decoration:underline}

/* ---------- P14. Батч 2: траст-страницы (авторы, политики, 404) ---------- */
/* Предупреждающая врезка: плейсхолдеры юр-данных, несогласованный эксперт */
.tip.warn{background:#FFF6E6;border-left-color:#E8A13C}
.tip.warn .tip-t{color:var(--warning)}

/* Карточка автора (avtory.html) */
.author-card{background:var(--surface);border-radius:var(--radius-lg);padding:28px;margin-top:20px}
.au-head{display:flex;align-items:center;gap:18px}
.au-ava{width:72px;height:72px;flex:none;border-radius:18px;background:var(--blue-50);
  color:var(--blue-600);display:flex;align-items:center;justify-content:center;
  font-family:var(--font-display);font-weight:700;font-size:24px;letter-spacing:0}
.au-ava svg{width:36px;height:36px}
.au-name{font-family:var(--font-text);font-weight:800;font-size:20px;line-height:1.25;color:var(--ink)}
.au-role{margin-top:4px;font-size:13.5px;font-weight:700;color:var(--blue-600)}
.au-bio{margin-top:14px;font-size:14.5px;line-height:1.55;color:var(--slate-700);max-width:72ch}
.au-checks-t{margin-top:18px;font-size:11.5px;font-weight:800;letter-spacing:.1em;
  text-transform:uppercase;color:var(--slate-500)}
.au-checks{margin-top:10px;display:grid;gap:8px}
.au-checks li{position:relative;padding-left:26px;font-size:14px;font-weight:600;
  color:var(--slate-700);line-height:1.5}
.au-checks li::before{content:"\2713";position:absolute;left:0;top:0;font-weight:800;color:var(--success)}
.au-links{margin-top:18px}
@media (max-width:579px){
  .author-card{padding:22px 18px}
  .au-ava{width:56px;height:56px;border-radius:14px;font-size:19px}
  .au-ava svg{width:28px;height:28px}
}

/* 404: крупный код ошибки + строка поиска-стаба */
.err-code{font-family:var(--font-display);font-weight:700;
  font-size:clamp(72px,12vw,120px);line-height:1;letter-spacing:-.03em;
  background:linear-gradient(135deg,var(--blue) 0%,var(--blue-400) 75%);
  -webkit-background-clip:text;background-clip:text;color:transparent}
.search-row{display:flex;gap:10px;max-width:560px}
.search-row .input{flex:1}
@media (max-width:579px){
  .search-row{flex-direction:column}
  .search-row .btn{width:100%}
}

/* ---------- P15. Батч 2: E-E-A-T страницы (методология, политика отзывов,
   как мы зарабатываем, о проекте). ТОЛЬКО ДОБАВЛЕНИЯ ---------- */

/* Плашка версии документа — заметная, рядом с датой обновления */
.doc-version{display:inline-flex;align-items:center;gap:8px;background:var(--blue-50);
  color:var(--blue-700);font-weight:800;font-size:13px;padding:8px 16px;
  border-radius:var(--radius-pill);white-space:nowrap}
.doc-version svg{width:15px;height:15px;flex:none}

/* «Красная линия» — callout-предупреждение (позиции не продаются) */
.redline{margin-top:20px;padding:20px 24px;background:var(--danger-50);
  border-left:3px solid var(--danger);border-radius:0 var(--radius-sm) var(--radius-sm) 0;
  font-size:15px;font-weight:600;line-height:1.6;color:var(--slate-700)}
.redline .tip-t{display:block;margin-bottom:6px;font-size:11.5px;font-weight:800;
  letter-spacing:.1em;text-transform:uppercase;color:var(--danger)}
.redline strong{color:var(--ink)}

/* Счётчики «в цифрах» (о проекте) — тёмная Ink-карта, как hero главной */
.counters{position:relative;overflow:hidden;display:grid;grid-template-columns:repeat(4,1fr);
  gap:24px 32px;background:linear-gradient(160deg,var(--ink-2),var(--ink) 55%);
  border-radius:var(--radius-lg);padding:36px 40px;color:#fff}
.counters::before{content:"";position:absolute;inset:0;pointer-events:none;background:
  radial-gradient(420px 280px at 88% -20%, rgba(44,123,255,.4), transparent 62%),
  radial-gradient(320px 240px at -6% 120%, rgba(15,98,242,.2), transparent 60%)}
.counters > div{position:relative;z-index:1;display:flex;flex-direction:column;gap:6px}
.counters .k{font-family:var(--font-display);font-weight:600;font-size:34px;
  letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.counters .l{font-size:13px;font-weight:600;color:rgba(255,255,255,.6);line-height:1.45;max-width:26ch}
@media (max-width:859px){
  .counters{grid-template-columns:1fr 1fr;padding:26px 22px;gap:20px 18px}
  .counters .k{font-size:25px}
}

/* Рамка-образец: «так выглядит компонент» (иллюстрации в политиках) */
.example-box{margin-top:20px;border:1.5px dashed var(--slate-300);
  border-radius:var(--radius-lg);padding:20px;background:var(--surface)}
.example-box .label{margin-bottom:12px}
.example-box .review-card{box-shadow:var(--shadow-sm)}
.example-box .reviews-sum{margin:14px 0 0;flex-wrap:wrap}
.example-box .src-chip{background:#fff}
@media (max-width:579px){.example-box{padding:14px}}

/* Текстовая ссылка-стрелка в карточках («что мы делаем» на о проекте) */
.go-link{display:inline-flex;align-items:center;gap:6px;margin-top:12px;
  font-size:13.5px;font-weight:700;color:var(--blue-600)}
.go-link:hover{color:var(--blue-700)}
.go-link svg{width:15px;height:15px;flex:none}

/* ============================================================
   БАТЧ 2 — ТРАСТ-СТРАНИЦЫ (E-E-A-T). Только добавления в конец,
   существующие классы не переопределяются.
   ============================================================ */

/* ---------- T1. Блок автора (.author-block) ---------- */
.author-block{display:flex;align-items:flex-start;gap:16px;
  background:var(--surface);border:1px solid var(--slate-200);
  border-radius:var(--radius-lg);padding:20px 24px}
.ab-ava{flex:0 0 auto;display:flex;align-items:center;justify-content:center;
  width:48px;height:48px;border-radius:var(--radius);
  background:var(--ink);color:#fff;
  font-family:var(--font-display);font-weight:700;font-size:14px;letter-spacing:-.01em}
.ab-body{min-width:0;display:grid;gap:5px}
.ab-line{font-size:14.5px;font-weight:600;color:var(--slate-600);line-height:1.55}
.ab-line b{font-weight:800;color:var(--ink)}
.ab-line a,.ab-meta a{font-weight:800;color:var(--blue-600)}
.ab-line a:hover,.ab-meta a:hover{text-decoration:underline}
.ab-meta{font-size:13px;font-weight:600;color:var(--slate-500)}
.ab-dot{color:var(--slate-300);padding:0 2px}
@media (max-width:579px){
  .author-block{padding:16px;gap:12px}
  .ab-ava{width:40px;height:40px;font-size:12.5px}
}

/* ---------- Мегаменю «Каталог» ---------- */
.sh-cat-wrap{position:relative}
.sh-catalog{display:inline-flex;align-items:center;gap:6px}
.sh-cat-chev{transition:transform .15s ease;margin-left:-2px}
.sh-cat-wrap:hover .sh-cat-chev,.sh-cat-wrap.open .sh-cat-chev{transform:rotate(180deg)}
.mega{position:absolute;top:100%;left:0;padding-top:10px;z-index:60;
  opacity:0;visibility:hidden;transform:translateY(-6px);
  transition:opacity .15s ease,transform .15s ease,visibility .15s;pointer-events:none}
.sh-cat-wrap:hover .mega,.sh-cat-wrap:focus-within .mega,.sh-cat-wrap.open .mega{
  opacity:1;visibility:visible;transform:none;pointer-events:auto}
.mega-in{width:840px;max-width:92vw;background:#fff;border:1px solid var(--border);
  border-radius:18px;box-shadow:0 24px 64px rgba(11,18,32,.18);padding:24px;
  display:grid;grid-template-columns:repeat(3,1fr);gap:20px 26px}
.mega-col .mega-col-title{display:flex;align-items:center;gap:8px;font-family:'Montserrat',sans-serif;
  font-size:13px;font-weight:700;color:var(--ink);margin:0 0 8px;letter-spacing:.01em}
.mega-col .mega-col-title::before{content:"";width:9px;height:9px;border-radius:3px;background:var(--c,#0F62F2);flex:none}
.mega-link{display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:7px 9px;border-radius:9px;font-size:14px;font-weight:500;color:var(--slate-700);
  line-height:1.25;min-height:36px}
.mega-link svg{color:var(--c,#0F62F2);flex:none;opacity:0;transition:opacity .12s}
.mega-link:hover{background:var(--surface);color:var(--ink)}
.mega-link:hover svg{opacity:1}
.mega-link.is-soon{color:var(--slate-400);cursor:default}
.mega-link.is-soon:hover{background:transparent;color:var(--slate-400)}
.mega-link .soon-tag{font-size:10px;font-weight:700;color:var(--slate-300);
  text-transform:uppercase;letter-spacing:.05em;flex:none}
.mega-foot{grid-column:1 / -1;border-top:1px solid var(--border);margin-top:2px;padding-top:14px;
  display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.mega-all{font-weight:700;font-size:14px;color:var(--blue)}
.mega-all:hover{color:var(--blue-700,#0B4ECF)}
@media (max-width:1023px){.sh-cat-wrap .mega{display:none}}

/* ---------- Страница каталога ---------- */
.kat-grid{margin-top:28px;display:grid;grid-template-columns:repeat(2,1fr);gap:22px 32px}
@media (min-width:1100px){.kat-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:639px){.kat-grid{grid-template-columns:1fr}}
.kat-col{border:1px solid var(--border);border-radius:16px;padding:18px 20px;background:#fff}
.kat-h{display:flex;align-items:center;gap:10px;font-family:'Montserrat',sans-serif;
  font-size:16px;font-weight:700;color:var(--ink);margin:0 0 12px;padding-bottom:12px;
  border-bottom:1px solid var(--border)}
.kat-h::before{content:"";width:11px;height:11px;border-radius:3px;background:var(--c,#0F62F2);flex:none}
.kat-count{margin-left:auto;font-size:12px;font-weight:700;color:var(--slate-400);
  background:var(--surface);border-radius:999px;padding:2px 9px;font-family:'Manrope',sans-serif}
.kat-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
.kat-list a{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:8px;
  font-size:14.5px;font-weight:500;color:var(--slate-700);line-height:1.3}
.kat-list a:hover{background:var(--surface);color:var(--ink)}
.kat-list a.kn-soon{color:var(--slate-400);justify-content:space-between}
.kat-list a.kn-soon:hover{background:transparent;cursor:default}
.kat-list .soon-tag{font-size:10px;font-weight:700;color:var(--slate-300);
  text-transform:uppercase;letter-spacing:.05em}
/* подниши в каталоге: ветка под родительской нишей */
.kat-sub{list-style:none;margin:0 0 2px 15px;padding-left:12px;border-left:2px solid var(--slate-100)}
.kat-sub a{padding:4px 8px;font-size:13px;color:var(--slate-500)}
.kat-sub a::before{content:"";width:4px;height:4px;border-radius:50%;background:var(--slate-300);flex:none}
.kat-sub a:hover{color:var(--blue-600)}
.kat-sub a:hover::before{background:var(--blue)}

/* Компактные бейджи оценки в строках рейтинга (hero/карточку не трогаем) */
.r-score .rate{padding:5px 11px 5px 6px;gap:6px}
.r-score .rate.lite{padding:5px 11px}
.r-score .rate .score{font-size:15px}
.r-score .rate .pin{width:20px;height:20px}
.r-score .rate .pin svg,.r-score .rate .pin img{width:11px;height:11px}
.r-score .rate .of{font-size:10px}

/* Ниша/теговая: шапка и лид на всю ширину (карточки лидера нет) */
.page-head.wide{max-width:none}
.page-head.wide .lead{max-width:none}

/* ---------- Карточка обзора в подборке — дизайн 3-A «Витрина» ---------- */
.review.c3a{padding:0;margin-top:28px;border:1px solid var(--slate-200);border-top:1px solid var(--slate-200);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}
.prose .review.c3a:first-of-type{padding-top:0;margin-top:20px}
.c3a-head{background:linear-gradient(135deg,var(--ink) 0%,var(--ink-2) 60%,#1B2A4A 100%);padding:9px 22px;display:flex;align-items:center;gap:11px;flex-wrap:nowrap}
.c3a-head .c3a-pos{font-family:var(--font-display);font-weight:800;font-size:13px;color:#fff;background:rgba(255,255,255,.14);width:26px;height:26px;border-radius:8px;display:grid;place-items:center;flex:none}
.c3a-head .c3a-logo{width:28px;height:28px;border-radius:8px;background:#fff;display:grid;place-items:center;flex:none}
.c3a-head .c3a-logo img{width:19px;height:19px}
.c3a-head h3{font-family:var(--font-display);font-weight:700;font-size:17.5px;color:#fff;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.c3a-head .c3a-tag{flex:none}
.c3a-head .c3a-score{flex:none}
.c3a-head .c3a-tag{font-size:11.5px;font-weight:700;background:rgba(255,255,255,.14);color:#CFE0FF;padding:3px 10px;border-radius:var(--radius-pill)}
.c3a-head .c3a-score{margin-left:auto;background:var(--blue);color:#fff;font-family:var(--font-display);font-weight:800;font-size:14.5px;padding:5px 12px;border-radius:9px;box-shadow:var(--shadow-cta);white-space:nowrap}
.c3a-head .c3a-score span{font-size:11px;font-weight:600;opacity:.75}
@media(max-width:600px){
  .c3a-head{padding:9px 12px;gap:8px}
  .c3a-head .c3a-tag{display:none}
  .c3a-head h3{font-size:14px;flex:1 1 auto}
  .c3a-head .c3a-pos{width:23px;height:23px;font-size:12px}
  .c3a-head .c3a-logo{width:25px;height:25px}
  .c3a-head .c3a-logo img{width:17px;height:17px}
  .c3a-head .c3a-score{font-size:13px;padding:4px 9px}
}
.c3a-body{padding:24px 26px 26px}
.c3a-top{display:grid;grid-template-columns:380px 1fr;gap:22px}
.c3a-top .shot{margin:0}
.c3a-top .shot img{width:100%;border-radius:12px;border:1px solid var(--slate-200)}
.c3a-chips{display:flex;flex-direction:column;border:1px solid var(--slate-200);border-radius:14px;overflow:hidden;align-self:start}
.c3a-chip{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:8px 16px;font-size:13.5px}
.c3a-chip:nth-child(odd){background:var(--surface)}
.c3a-chip span{color:var(--slate-500);font-weight:600;flex:none}
.c3a-chip b{font-weight:700;color:var(--ink);text-align:right}
.c3a-desc{margin-top:16px;color:var(--slate-700);font-size:15px;line-height:1.6}
.c3a-fits{margin-top:16px;font-size:14.5px;line-height:1.6;color:var(--slate-700);border-top:1px solid var(--slate-100);padding-top:14px}
.c3a-fits .g{color:var(--success)}
.c3a-fits .n{color:var(--slate-500)}
.c3a-body .rev-cta{margin-top:18px}
@media(max-width:860px){.c3a-top{grid-template-columns:1fr}.c3a-head .c3a-score{margin-left:0}}

/* ---------- Страница компании — вариант A «Дашборд» ---------- */
/* HERO 1-D «Сплит» тёмный */
.sv2h{background:linear-gradient(135deg,var(--ink) 0%,#16233E 60%,#1B2A4A 100%);padding:28px 0 30px;color:#fff}
.sv2h-top{display:flex;gap:16px;align-items:center}
.sv2h-top .lg{width:60px;height:60px;border-radius:15px;background:#fff;display:grid;place-items:center;flex:none}
.sv2h-top .lg img{width:42px;height:42px}
.sv2h-text{min-width:0}
.sv2h h1{font-family:var(--font-display);font-size:26px;font-weight:800;margin:0;color:#fff}
.sv2h .sub{color:#AEB8CC;font-size:14.5px;margin-top:3px}
.sv2h .scp{margin-left:auto;background:var(--blue);border-radius:13px;padding:9px 16px;font-family:var(--font-display);font-weight:800;font-size:20px;box-shadow:var(--shadow-cta);white-space:nowrap;flex:none}
.sv2h .scp span{font-size:12px;opacity:.75;font-weight:600}
.sv2h-grid{display:grid;grid-template-columns:1.15fr 0.85fr;gap:30px;margin-top:22px;align-items:stretch}
.sv2h-facts{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.sv2h-facts .fct{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:9px 13px}
.sv2h-facts .fct b{display:block;font-size:14px;color:#fff}
.sv2h-facts .fct span{font-size:11.5px;color:#8A93A6;font-weight:600}
.sv2h-cta{display:flex;gap:12px;margin:18px 0}
.sv2h-cta .btn-w{background:#fff;color:var(--ink);font-weight:700;padding:12px 22px;border-radius:11px;font-size:15px}
.sv2h-cta .btn-w:hover{background:var(--blue);color:#fff}
.sv2h-cta .btn-ghost{background:rgba(255,255,255,.1);border:1.5px solid rgba(255,255,255,.55);color:#fff;font-weight:700;padding:12px 20px;border-radius:11px;font-size:15px}
.sv2h-cta .btn-ghost:hover{background:rgba(255,255,255,.2)}
.sv2h-trust{display:flex;align-items:center;gap:7px;font-size:12.5px;color:#8A93A6;font-weight:600}
.sv2h-trust svg{width:15px;height:15px;color:var(--success);flex:none}
.sv2h-shot{margin:0;position:relative;border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.12);min-height:200px}
.sv2h-shot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top;display:block}
@media(max-width:900px){
  .sv2h-grid{grid-template-columns:1fr;gap:20px}
  .sv2h-shot{order:-1;position:static;min-height:0}
  .sv2h-shot img{position:static;height:auto;max-height:300px}
}
@media(max-width:600px){
  .sv2h{padding:22px 0 24px}
  .sv2h-top{flex-wrap:wrap;row-gap:14px}
  .sv2h-top .lg{width:52px;height:52px;border-radius:13px}
  .sv2h-top .lg img{width:36px;height:36px}
  .sv2h .scp{order:2;font-size:19px;padding:9px 15px;align-self:flex-start}
  .sv2h-text{order:3;flex-basis:100%;width:100%}
  .sv2h h1{font-size:22px}
  .sv2h-cta{flex-wrap:wrap}
  .sv2h-cta .btn-w,.sv2h-cta .btn-ghost{flex:1 1 auto;text-align:center}
}
.sv2-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:36px;margin-top:28px;align-items:start}
.sv2-side{position:sticky;top:76px;display:flex;flex-direction:column;gap:12px}
.sv2-side .btn{width:100%;justify-content:center}
.sv2-side .note{font-size:12px;color:var(--slate-400);text-align:center;line-height:1.5}
@media(max-width:1000px){
  .sv2-grid{grid-template-columns:minmax(0,1fr)}
  .sv2-side{position:static}
  .sv2-grid .content-main{min-width:0;max-width:100%;width:100%}
  table.vs,table.fee{display:block;overflow-x:auto}
}
.sv2-shot{background:var(--surface);border:1px solid var(--slate-200);border-radius:14px;padding:16px;display:grid;place-items:center}
.sv2-shot img{width:100%;height:auto;border-radius:10px;border:1px solid var(--slate-200);background:#fff}
.verdict{background:var(--blue-50);border-left:4px solid var(--blue);border-radius:0 14px 14px 0;padding:16px 20px;margin:18px 0}
.verdict .vl{font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--blue-600);margin-bottom:6px}
.verdict p{font-size:15px;color:var(--ink-2);line-height:1.6;margin:0}
.crit-x .cx{display:grid;grid-template-columns:165px 86px 1fr;gap:14px;align-items:start;padding:12px 0;border-bottom:1px solid var(--slate-100);font-size:14px}
.crit-x .cx:last-child{border-bottom:none}
.crit-x .cx .nm{font-weight:700}
.crit-x .cx .vv{font-family:var(--font-display);font-weight:800;color:var(--blue-600);font-size:16px}
.crit-x .cx .vv .b{display:block;height:5px;border-radius:99px;background:var(--slate-100);margin-top:6px;overflow:hidden}
.crit-x .cx .vv .b i{display:block;height:5px;background:var(--score-9)}
.crit-x .cx .why{color:var(--slate-600);font-size:13.5px;line-height:1.55}
@media(max-width:700px){.crit-x .cx{grid-template-columns:1fr 70px;grid-template-areas:"nm vv" "why why"}.crit-x .cx .why{grid-area:why}}
.feat-g{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px}
.feat-g .ft{background:var(--surface);border-radius:14px;padding:14px 16px}
.feat-g .ft b{display:block;font-size:14px;margin-bottom:4px}
.feat-g .ft span{font-size:13px;color:var(--slate-500);line-height:1.5}
@media(max-width:860px){.feat-g{grid-template-columns:1fr 1fr}}
table.fee{width:100%;border-collapse:collapse;font-size:14px;margin-top:14px}
table.fee th{text-align:left;font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--slate-400);font-weight:700;padding:8px 12px;border-bottom:2px solid var(--slate-200)}
table.fee th:last-child{text-align:right}
table.fee td{padding:10px 12px;border-bottom:1px solid var(--slate-100)}
table.fee td .inc{display:block;font-size:12.5px;color:var(--slate-500);font-weight:500;margin-top:2px}
table.fee td:last-child{font-weight:700;text-align:right;white-space:nowrap}
table.fee tr:nth-child(odd) td{background:var(--surface)}
table.vs{width:100%;border-collapse:collapse;font-size:14px;margin-top:14px}
table.vs th,table.vs td{padding:10px 14px;border-bottom:1px solid var(--slate-100);text-align:left}
table.vs th{font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--slate-400)}
table.vs .me td{background:var(--blue-50)}
table.vs td b.sc{color:var(--blue-600);font-family:var(--font-display)}
.fits{font-size:14.5px;line-height:1.65;color:var(--slate-700)}
.fits .g{color:var(--success);font-weight:800}
.fits .n{color:var(--slate-500);font-weight:800}
.alt-g{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:16px}
.alt-g a{border:1px solid var(--slate-200);border-radius:14px;padding:16px;display:block}
.alt-g a:hover{border-color:var(--blue)}
.alt-g .nm{display:flex;align-items:center;gap:9px;font-weight:700;font-size:14px}
.alt-g .nm img{width:22px;height:22px}
.alt-g .sc{font-family:var(--font-display);font-weight:800;color:var(--blue-600);margin-left:auto}
.alt-g p{font-size:13px;color:var(--slate-500);margin-top:8px;line-height:1.5}
@media(max-width:860px){.alt-g{grid-template-columns:1fr}}
.chlog{border-left:2px solid var(--slate-200);padding-left:16px;margin-top:14px}
.chlog li{list-style:none;padding:4px 0;font-size:13.5px;color:var(--slate-600)}
.chlog b{color:var(--ink);font-weight:700}
.author-blk{display:flex;gap:14px;align-items:center;background:var(--surface);border-radius:14px;padding:16px 20px;margin-top:26px}
.author-blk .av{width:44px;height:44px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-weight:800;font-size:13px;flex:none}
.author-blk p{margin:0;font-size:13.5px;color:var(--slate-600);line-height:1.6}

/* ---------- Сайдбар: Telegram + похожие рейтинги ---------- */
.pn-stack{position:sticky;top:calc(var(--header-h) + 24px)}
.pn-stack .pn-in{position:static;top:auto}
.side-tg{display:block;margin-top:14px;background:linear-gradient(135deg,#2AABEE,#229ED9);border-radius:14px;padding:16px 18px;color:#fff;text-decoration:none}
.side-tg .st-head{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.side-tg .st-ico{width:32px;height:32px;flex:none;border-radius:9px;background:rgba(255,255,255,.18);display:grid;place-items:center}
.side-tg .st-ico svg{width:19px;height:19px;fill:#fff}
.side-tg .st-head b{font-family:var(--font-display);font-weight:800;font-size:14.5px;line-height:1.2}
.side-tg p{font-size:12.5px;line-height:1.45;color:rgba(255,255,255,.9);margin:0 0 12px}
.side-tg .st-btn{display:block;text-align:center;background:#fff;color:#229ED9;font-weight:700;font-size:14px;padding:9px;border-radius:10px}
.side-tg:hover .st-btn{background:#EAF6FD}
.side-rel{margin-top:14px;background:#fff;border:1px solid var(--slate-200);border-radius:14px;padding:16px 18px}
.side-rel .label{font-size:12px;color:var(--slate-400);font-weight:700;letter-spacing:.06em;text-transform:uppercase;display:block;margin-bottom:10px}
.side-rel .sr-item{display:flex;align-items:flex-start;gap:10px;padding:11px 0;border-top:1px solid var(--slate-100);text-decoration:none}
.side-rel .sr-item:first-of-type{border-top:none;padding-top:2px}
.side-rel .sr-tx{flex:1;min-width:0}
.side-rel .sr-tx b{display:block;font-size:14px;font-weight:700;color:var(--ink);line-height:1.3}
.side-rel .sr-tx span{display:block;font-size:12px;color:var(--slate-400);margin-top:3px}
.side-rel .sr-arr{color:var(--slate-300);font-size:15px;flex:none;margin-top:2px;transition:.15s}
.side-rel .sr-item:hover .sr-tx b{color:var(--blue-600)}
.side-rel .sr-item:hover .sr-arr{color:var(--blue-600);transform:translateX(2px)}
.side-rel .sr-all{display:block;text-align:center;margin-top:10px;padding-top:12px;border-top:1px solid var(--slate-100);font-size:13.5px;font-weight:700;color:var(--blue-600);text-decoration:none}
@media (max-width:1199px){.side-tg,.side-rel{display:none}}

/* ---------- Сайдбар карточки компании: альтернативы + рейтинги ---------- */
.sv2-side{position:sticky;top:calc(var(--header-h) + 24px);align-self:start}
.side-alt,.side-rat{background:#fff;border:1px solid var(--slate-200);border-radius:14px;padding:16px 18px}
.side-alt .label,.side-rat .label{font-size:12px;color:var(--slate-400);font-weight:700;letter-spacing:.06em;text-transform:uppercase;display:block;margin-bottom:8px}
.sa-item{display:flex;align-items:center;gap:10px;padding:8px 0;border-top:1px solid var(--slate-100);text-decoration:none}
.sa-item:first-of-type{border-top:none}
.sa-logo{width:30px;height:30px;flex:none;border-radius:8px;border:1px solid var(--slate-200);display:grid;place-items:center;background:#fff}
.sa-logo img{width:20px;height:20px;object-fit:contain}
.sa-item b{flex:1;min-width:0;font-size:13.5px;font-weight:700;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sa-item:hover b{color:var(--blue-600)}
.sa-score{flex:none;font-family:var(--font-display);font-weight:800;font-size:12.5px;color:var(--blue-700);background:var(--blue-50);border-radius:7px;padding:3px 7px}
.sq-item{display:flex;align-items:center;gap:8px;justify-content:space-between;padding:7px 0;border-top:1px solid var(--slate-100);text-decoration:none}
.sq-item:first-of-type{border-top:none}
.sq-item span{font-size:13px;font-weight:600;color:var(--slate-600);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sq-item b{flex:none;font-family:var(--font-display);font-weight:800;font-size:12.5px;color:var(--blue-600)}
.sq-item:hover span{color:var(--blue-600)}
@media (max-width:1023px){.sv2-side .side-alt,.sv2-side .side-rat,.sv2-side .side-tg{display:none}}

/* ---------- Карточка компании: спокойнее типографика секций ---------- */
.sv2-grid .content-main h2{font-size:21px;font-weight:700;letter-spacing:-.01em;margin-bottom:12px}
.sv2-grid .content-main .section{margin-top:36px}
.sv2-grid .content-main .prose p{font-size:15px;line-height:1.7}
.sv2-grid .content-main .verdict{margin-bottom:8px}
@media (max-width:759px){.sv2-grid .content-main h2{font-size:19px}}

/* ---------- Поиск: строка выезжает из лупы ---------- */
.sh-in{position:relative}
.sh-search{position:absolute;right:52px;top:50%;transform:translateY(-50%);width:0;opacity:0;overflow:hidden;pointer-events:none;transition:width .28s cubic-bezier(.4,0,.2,1),opacity .18s ease;z-index:5}
.sh-search.open{width:min(400px,52vw);opacity:1;pointer-events:auto}
.sh-search form{display:flex;align-items:center;background:var(--surface);border:1.5px solid var(--blue);border-radius:999px;padding:0 4px 0 16px;height:40px}
.sh-search input{flex:1;min-width:0;border:0;background:transparent;font:inherit;font-size:14px;color:var(--ink);outline:none}
.sh-search input::placeholder{color:var(--slate-400)}
.sh-search form button{flex:none;width:32px;height:32px;border:0;border-radius:50%;background:var(--blue);color:#fff;display:grid;place-items:center;cursor:pointer}
.sh-search form button svg{width:15px;height:15px}
/* при открытой строке штатная лупа прячется (кнопка в пилюле её заменяет) */
.sh-search.open + .sh-search-btn{opacity:0;pointer-events:none}
@media (max-width:859px){.sh-search{right:96px}.sh-search.open{width:calc(100vw - 200px)}}
.srch-form{display:flex;gap:10px;max-width:640px;margin-top:18px;flex-wrap:wrap}
.srch-form .input{flex:1 1 280px}
.srch-list{display:flex;flex-direction:column;gap:8px;max-width:760px}
.srch-item{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--slate-200);border-radius:12px;padding:11px 14px;text-decoration:none}
.srch-item:hover{border-color:var(--blue)}
.si-logo{width:34px;height:34px;flex:none;border-radius:8px;border:1px solid var(--slate-200);display:grid;place-items:center;background:#fff}
.si-logo img{width:22px;height:22px;object-fit:contain}
.si-tx{flex:1;min-width:0}
.si-tx b{display:block;font-size:14.5px;font-weight:700;color:var(--ink)}
.si-tx span{display:block;font-size:12.5px;color:var(--slate-500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.si-niche{flex:none;font-size:11px;font-weight:700;color:var(--slate-500);background:var(--surface);border-radius:999px;padding:3px 10px;max-width:160px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.si-score{flex:none;font-family:var(--font-display);font-weight:800;font-size:13px;color:var(--blue-700);background:var(--blue-50);border-radius:8px;padding:4px 9px}
@media (max-width:579px){.si-niche{display:none}.si-tx span{white-space:normal}}

/* мобайл: кнопку «Каталог» прячем целиком (дублируется в бургер-меню) */
@media (max-width:1023px){.sh-cat-wrap{display:none}}

/* отзывы: скрытые до «Показать ещё» */
.review-card.rv-hidden{display:none}
.rv-more{margin-top:16px}

/* табы источников отзывов */
.rv-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 18px}
.rv-tab{display:inline-flex;align-items:center;gap:7px;font:inherit;font-size:13.5px;font-weight:600;color:var(--slate-600);background:#fff;border:1px solid var(--slate-200);border-radius:999px;padding:7px 14px;cursor:pointer;transition:.15s}
.rv-tab:hover{border-color:var(--blue);color:var(--blue-600)}
.rv-tab.on{background:var(--blue);border-color:var(--blue);color:#fff}
.rv-tab .num{font-size:11.5px;font-weight:700;background:var(--surface);color:var(--slate-500);border-radius:999px;padding:1px 7px}
.rv-tab.on .num{background:rgba(255,255,255,.2);color:#fff}

/* ===== АВТОРЫ-ЭКСПЕРТЫ КАТЕГОРИЙ ===== */
.byline{display:flex;align-items:center;gap:10px;margin-top:14px;font-size:13.5px;font-weight:600;color:var(--slate-500)}
.byline a{color:var(--slate-700);font-weight:700;text-decoration:none;border-bottom:1.5px solid var(--slate-200);transition:.15s}
.byline a:hover{color:var(--blue-600);border-color:var(--blue-600)}
.bl-ava{width:30px;height:30px;flex:none;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:11.5px;font-weight:800;letter-spacing:.03em;background:var(--blue-50);color:var(--blue-600)}
.au-ava-txt{font-size:24px;font-weight:800;letter-spacing:.02em}
.ab-role{font-weight:600;color:var(--slate-500)}
.ab-photo,.au-photo{object-fit:cover;background:var(--surface)}
.ab-photo{border-radius:50%}
