/* Cleanbot — общая оболочка (шапка, подвал, токены, кнопки) на ВСЕХ страницах.
   Источник: выделено из redesign-base.css. Область стилей — класс .cleanbot-shell
   на <body> (добавляется всегда, см. functions.php). В отличие от .cleanbot-redesign
   не включает глобальные сбросы для контента, поэтому старые страницы не затрагивает. */

/* Сбросы только внутри шапки и подвала (:where — нулевая специфичность,
   чтобы не перебивать правила компонентов ниже). */
.cleanbot-shell :where(.hdr, .ftr){
  font-family:'Onest', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
  font-size:17px; font-weight:400; line-height:1.55; text-align:left;
  -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
}
.cleanbot-shell :where(.hdr, .ftr) *, .cleanbot-shell :where(.hdr, .ftr) *::before, .cleanbot-shell :where(.hdr, .ftr) *::after{ box-sizing:border-box; }
.cleanbot-shell :where(.hdr, .ftr) a{ color:inherit; text-decoration:none; }
.cleanbot-shell :where(.hdr, .ftr) :where(img, svg){ display:block; max-width:100%; }
.cleanbot-shell :where(.hdr, .ftr) :where(button){ font:inherit; color:inherit; cursor:pointer; border:0; background:none; margin:0; padding:1px 6px; border-radius:0; line-height:normal; }
.cleanbot-shell :where(.hdr, .ftr) :where(h4){ margin:0; }
.cleanbot-shell :where(.hdr, .ftr) :where(p){ margin-block:0; }
.cleanbot-shell :where(.hdr, .ftr) :focus-visible{ outline:2px solid var(--acc); outline-offset:3px; border-radius:4px; }
.cleanbot-shell .hdr :where(ul, li), .cleanbot-shell .ftr :where(ul, li){ list-style:none; }

html:has(.cleanbot-shell), .cleanbot-shell{
  /* accent — used sparingly: one accent moment per screen */
  --acc:        #0BA9DB;
  --acc-press:  #0892bf;
  --acc-hi:     #4AC5EA;   /* ховер акцента на тёмном фоне */
  --phone:      #52C7EA;   /* телефон в шапке */
  --phone-hover:#FFFFFF;
  --acc-tint:   #E9F7FC;
  --acc-tint-2: #D3EDF8;
  --acc-text:   #00739A;   /* акцентный мелкий текст на светлом фоне (WCAG AA ≥ 4,5:1) */

  --ink:        #101010;   /* header, dark cards, footer */
  --ink-soft:   #1B1C1E;

  --text:       #14161A;
  --text-2:     #5A6069;
  --text-3:     #6B7280;   /* было #8B929B — контраст 3,1:1 (task 18) */

  --bg:         #FFFFFF;
  --surface:    #F4F5F7;
  --surface-2:  #EDEFF2;
  --line:       #E5E8EC;
  --line-dark:  rgba(255,255,255,.10);

  --r-sm: 12px;
  --r-md: 18px;
  --r-lg: 24px;
  --r-xl: 32px;

  --shadow-1: 0 1px 2px rgba(16,16,16,.04), 0 8px 24px rgba(16,16,16,.05);
  --shadow-2: 0 2px 4px rgba(16,16,16,.04), 0 18px 44px rgba(16,16,16,.10);

  --ease: cubic-bezier(.22,.61,.36,1);
  --hdr-h: 76px;
  --gutter: 24px;   /* боковой отступ контейнера = запас для теней в каруселях */
}
.cleanbot-shell .container{ width:min(1320px, 100% - var(--gutter) * 2); margin-inline:auto; }
.cleanbot-shell .skip{
  position:absolute; left:-9999px; top:0; z-index:200;
  background:var(--acc); color:#fff; padding:12px 20px; border-radius:0 0 12px 0; font-weight:600;
}
.cleanbot-shell .skip:focus{ left:0; }
.cleanbot-shell .btn{
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  height:52px; padding:0 26px;
  border-radius:999px;
  font-size:15px; font-weight:600; letter-spacing:-.01em;
  transition:background .22s var(--ease), color .22s var(--ease), transform .22s var(--ease), box-shadow .22s var(--ease), border-color .22s var(--ease);
  white-space:nowrap;
}
.cleanbot-shell .btn:active{ transform:translateY(1px); }
.cleanbot-shell .btn--acc{ background:var(--acc); color:#fff; }
.cleanbot-shell .btn--acc:hover{ background:var(--acc-press); box-shadow:0 10px 26px rgba(11,169,219,.32); }
.cleanbot-shell .btn--dark{ background:var(--ink); color:#fff; }
.cleanbot-shell .btn--dark:hover{ background:#2A2B2E; }
.cleanbot-shell .btn--ghost{ border:1px solid var(--line); background:#fff; color:var(--text); }
.cleanbot-shell .btn--ghost:hover{ border-color:var(--text); }
.cleanbot-shell .btn--onDark{ background:rgba(255,255,255,.10); color:#fff; border:1px solid rgba(255,255,255,.16); backdrop-filter:blur(8px); }
.cleanbot-shell .btn--onDark:hover{ background:rgba(255,255,255,.18); }
.cleanbot-shell .btn--sm{ height:44px; padding:0 20px; font-size:14px; }
.cleanbot-shell .btn--wide{ width:100%; }
/* ============================================================
   Header
   ============================================================ */
.cleanbot-shell .hdr{
  position:sticky; top:0; z-index:90;
  background:var(--ink);
  border-bottom:1px solid var(--line-dark);
}
.cleanbot-shell .hdr__in{
  position:relative;
  display:flex; align-items:center; gap:clamp(20px, 3vw, 46px);
  height:var(--hdr-h);
}
.cleanbot-shell .hdr__logo{ display:flex; align-items:center; flex:none; min-height:44px; }  /* зона нажатия 44px, картинка того же размера */
.cleanbot-shell .hdr__logo svg, .cleanbot-shell .hdr__logo img{ height:23px; width:auto; }
.cleanbot-shell .nav{
  position:absolute; left:50%; transform:translateX(-50%);
  display:flex; align-items:center; gap:clamp(14px, 2vw, 34px);
}
.cleanbot-shell .nav__item{ position:relative; }
.cleanbot-shell .nav__link{
  display:inline-flex; align-items:center; gap:6px;
  height:var(--hdr-h);
  font-size:15px; font-weight:500; letter-spacing:-.008em;
  color:rgba(255,255,255,.70);
  transition:color .2s var(--ease);
}
.cleanbot-shell .nav__link:hover, .cleanbot-shell .nav__item:hover .nav__link{ color:#fff; }
/* текущий раздел (aria-current ставит меню, см. cleanbot_nav_current_attrs()) */
.cleanbot-shell .nav__link[aria-current="page"]{
  color:#fff;
  text-decoration:underline; text-decoration-thickness:2px; text-underline-offset:6px;
}
.cleanbot-shell .nav__link svg{ transition:transform .25s var(--ease); opacity:.7; }
.cleanbot-shell .nav__item:hover .nav__link svg{ transform:rotate(180deg); }
.cleanbot-shell .nav__drop{
  position:absolute; top:calc(100% - 10px); left:-18px;
  min-width:268px; padding:8px;
  background:#fff; border-radius:var(--r-md);
  box-shadow:var(--shadow-2);
  opacity:0; visibility:hidden; transform:translateY(-6px);
  transition:opacity .2s var(--ease), transform .2s var(--ease), visibility .2s;
}
.cleanbot-shell .nav__item:hover .nav__drop, .cleanbot-shell .nav__item:focus-within .nav__drop{ opacity:1; visibility:visible; transform:translateY(0); }
.cleanbot-shell .nav__drop a{
  display:block; padding:11px 14px; border-radius:10px;
  font-size:15px; font-weight:500; color:var(--text);
  transition:background .18s var(--ease), color .18s var(--ease);
}
.cleanbot-shell .nav__drop a:hover{ background:var(--acc-tint); color:var(--acc-press); }
.cleanbot-shell .hdr__phone{
  margin-left:auto;
  display:inline-flex; align-items:center; gap:9px;
  font-size:15px; font-weight:600; color:var(--phone); letter-spacing:-.01em;
  transition:color .2s var(--ease);
}
.cleanbot-shell .hdr__phone svg{ flex:none; }
.cleanbot-shell .hdr__phone:hover{ color:var(--phone-hover); }
.cleanbot-shell .nav__mobPhone{ display:none; }
/* звонок одной кнопкой — только в мобильной шапке (см. @media 900px) */
.cleanbot-shell .hdr__call{
  display:none; place-items:center; flex:none;
  width:44px; height:44px;
  border-radius:50%;
  color:var(--phone);
  transition:color .2s var(--ease), background .2s var(--ease);
}
.cleanbot-shell .hdr__call:hover{ color:var(--phone-hover); background:rgba(255,255,255,.08); }
.cleanbot-shell .burger{
  display:none;
  width:44px; height:44px; margin-right:-10px;
  /* именно column-flex: grid раскидывал полоски по всей высоте кнопки */
  flex-direction:column; align-items:center; justify-content:center; gap:5px;
  border-radius:12px;
  color:#fff;
}
.cleanbot-shell .burger span{
  display:block; width:20px; height:2px; background:currentColor; border-radius:2px;
  transition:transform .28s var(--ease), opacity .2s var(--ease);
}
.cleanbot-shell .burger[aria-expanded="true"] span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
.cleanbot-shell .burger[aria-expanded="true"] span:nth-child(2){ opacity:0; }
.cleanbot-shell .burger[aria-expanded="true"] span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }
/* ============================================================
   Footer
   ============================================================ */
.cleanbot-shell .ftr{ background:var(--ink); color:#fff; padding-block:clamp(48px, 5vw, 76px) 34px; }
.cleanbot-shell .ftr__top{
  display:flex; align-items:center; justify-content:space-between; gap:28px; flex-wrap:wrap;
  padding-bottom:clamp(34px, 4vw, 52px);
  border-bottom:1px solid var(--line-dark);
}
.cleanbot-shell .ftr__logo{ display:inline-flex; align-items:center; min-height:44px; }
.cleanbot-shell .ftr__logo svg, .cleanbot-shell .ftr__logo img{ height:24px; width:auto; }
.cleanbot-shell .socials{ display:flex; gap:10px; }
.cleanbot-shell .soc{
  width:44px; height:44px; display:grid; place-items:center;
  border-radius:50%;
  background:rgba(255,255,255,.07); color:rgba(255,255,255,.72);
  transition:background .22s var(--ease), color .22s var(--ease), transform .22s var(--ease);
}
.cleanbot-shell .soc:hover{ background:var(--acc); color:#fff; transform:translateY(-2px); }
.cleanbot-shell .ftr__cols{
  display:grid; grid-template-columns:repeat(4, minmax(0,1fr));
  gap:clamp(24px, 3vw, 48px);
  padding-block:clamp(34px, 4vw, 52px);
  padding-bottom:clamp(22px, 3vw, 40px);   /* −12px: у последней ссылки свой отступ внутри 44px */
}
.cleanbot-shell .fcol__h{
  margin:0 0 6px;   /* +10px даёт верхний отступ ссылки высотой 44px */
  font-size:12px; font-weight:600; letter-spacing:.14em; text-transform:uppercase;
  color:#8A8A8A;   /* контраст 5,5:1 на #101010 */
}
/* ссылки высотой 44px (зона нажатия) — вместо промежутка 11px между пунктами */
.cleanbot-shell .fcol ul{ margin:0; padding:0; list-style:none; display:flex; flex-direction:column; gap:0; }
.cleanbot-shell .fcol a{ display:inline-flex; align-items:center; min-height:44px; min-width:44px; font-size:15px; color:rgba(255,255,255,.72); transition:color .2s var(--ease); }
.cleanbot-shell .fcol a:hover{ color:var(--acc); }
.cleanbot-shell .fcol__phone{
  display:inline-flex; align-items:center; gap:8px;
  color:var(--acc); font-weight:600;
}
.cleanbot-shell .fcol__phone:hover{ color:var(--acc-hi); }
.cleanbot-shell .fcol__note{ display:flex; align-items:center; min-height:44px; font-size:15px; color:#8C8C8C; }
.cleanbot-shell .ftr__bottom{
  display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap;
  padding-top:18px; border-top:1px solid var(--line-dark);   /* 18 + 10px внутри ссылки 44px = прежние 28 */
  font-size:14px; color:#8C8C8C;   /* было .42 — ниже 4,5:1 */
}
.cleanbot-shell .ftr__bottom a:hover{ color:#fff; }
/* слева © и реквизиты, справа ссылки на документы */
.cleanbot-shell .ftr__legal,
.cleanbot-shell .ftr__docs{ display:flex; flex-wrap:wrap; align-items:center; gap:6px 24px; }
.cleanbot-shell .ftr__docs a{ display:inline-flex; align-items:center; min-height:44px; }
/* ============================================================
   Кнопка «Наверх» (footer.php, redesign-common.js)
   ============================================================ */
/* отступ снизу у колонки плавающих кнопок («Наверх» и мессенджеры над ней) */
.cleanbot-shell{ --float-b:calc(20px + env(safe-area-inset-bottom)); }
.cleanbot-shell .totop{
  position:fixed; right:20px; bottom:var(--float-b); z-index:80;
  display:grid; place-items:center;
  width:48px; height:48px; margin:0; padding:0;
  border:0; border-radius:50%;
  background:var(--acc); color:#fff;
  box-shadow:0 8px 22px rgba(11,169,219,.30);
  font:inherit; line-height:1; cursor:pointer;
  -webkit-appearance:none; appearance:none;
  opacity:0; visibility:hidden; transform:translateY(10px);
  transition:opacity .25s var(--ease), transform .25s var(--ease), visibility 0s linear .25s, background .2s var(--ease), bottom .3s var(--ease);
}
.cleanbot-shell .totop.is-on{ opacity:1; visibility:visible; transform:none; transition-delay:0s; }
.cleanbot-shell .totop:hover{ background:var(--acc-press); }
.cleanbot-shell .totop:focus-visible{ outline:2px solid var(--acc); outline-offset:3px; border-radius:50%; }  /* общий :focus-visible редизайна ставит radius 4px */
.cleanbot-shell .totop svg{ display:block; }
/* на статьях снизу выезжает панель с кнопкой подбора — поднимаемся над ней (обе кнопки) */
.cleanbot-shell:has(.astick.is-on){ --float-b:calc(88px + env(safe-area-inset-bottom)); }
/* открытая панель фильтров каталога (мобильный) — кнопки не должны лежать поверх «Применить» */
.cleanbot-shell:has(.filters.is-open) :is(.totop, .msg){ opacity:0; visibility:hidden; }

/* ============================================================
   Мессенджеры поддержки (footer.php, redesign-common.js) — над «Наверх»
   ============================================================ */
.cleanbot-shell .msg{
  position:fixed; right:20px; bottom:calc(var(--float-b) + 60px); z-index:80;
  font-family:'Onest', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
  transition:bottom .3s var(--ease), opacity .2s var(--ease), visibility 0s;
}
.cleanbot-shell .msg__btn{
  display:grid; place-items:center;
  width:48px; height:48px; margin:0; padding:0;
  border:0; border-radius:50%;
  background:var(--acc); color:#fff;
  box-shadow:0 8px 22px rgba(11,169,219,.30);
  font:inherit; line-height:1; cursor:pointer;
  -webkit-appearance:none; appearance:none;
  transition:background .2s var(--ease);
}
.cleanbot-shell .msg__btn:hover{ background:var(--acc-press); }
.cleanbot-shell .msg__btn:focus-visible{ outline:2px solid var(--acc); outline-offset:3px; border-radius:50%; }
.cleanbot-shell .msg__btn svg{ display:block; }
/* закрыто — «облачко», открыто — крестик */
.cleanbot-shell .msg__btn .msg__x,
.cleanbot-shell .msg.is-open .msg__btn .msg__chat{ display:none; }
.cleanbot-shell .msg.is-open .msg__btn .msg__x{ display:block; }
.cleanbot-shell .msg__menu{
  position:absolute; right:0; bottom:calc(100% + 10px);
  min-width:210px; padding:8px;
  background:#fff; border-radius:var(--r-md); box-shadow:var(--shadow-2);
  opacity:0; visibility:hidden; transform:translateY(6px);
  transition:opacity .2s var(--ease), transform .2s var(--ease), visibility 0s linear .2s;
}
.cleanbot-shell .msg.is-open .msg__menu{ opacity:1; visibility:visible; transform:none; transition-delay:0s; }
.cleanbot-shell .msg__link,
.cleanbot-shell .msg__link:visited{
  display:flex; align-items:center; gap:12px;
  min-height:48px; padding:6px 14px 6px 6px;
  border-radius:12px;
  color:var(--text); text-decoration:none;
  font-size:15px; font-weight:600; line-height:1.2;
  transition:background .18s var(--ease), color .18s var(--ease);
}
.cleanbot-shell .msg__link:hover{ background:var(--acc-tint); color:var(--acc-press); }
.cleanbot-shell .msg__link:focus-visible{ outline:2px solid var(--acc); outline-offset:-2px; }
.cleanbot-shell .msg__ico{
  flex:none; display:grid; place-items:center;
  width:36px; height:36px; border-radius:50%;
  background:var(--ink); color:#fff;
}
.cleanbot-shell .msg__ico--tg{ background:#2AABEE; }
.cleanbot-shell .msg__ico--phone, .cleanbot-shell .msg__ico--mail{ background:var(--acc); }
/* карточка товара: пока кнопка над Ozon/WB — прячем её, чтобы не перекрывать (redesign-common.js) */
.cleanbot-shell .msg.is-dodging{ opacity:0; visibility:hidden; transition:opacity .2s var(--ease), visibility 0s linear .2s; }
.cleanbot-shell.admin-bar .hdr{ top:32px; }
@media (max-width:782px){ .cleanbot-shell.admin-bar .hdr{ top:46px; } }
.cleanbot-shell .soc i{ font-size:18px; line-height:1; }
.cleanbot-shell .soc__text{ font-size:15px; font-weight:700; }

@media (max-width:900px){
  html:has(.cleanbot-shell), .cleanbot-shell{ --hdr-h:64px; --gutter:16px; }
  .cleanbot-shell .nav, .cleanbot-shell .hdr__phone{ display:none; }
  .cleanbot-shell .burger{ display:flex; }
/* поиск, звонок и бургер — плотной группой, чтобы на 320px не сжимать логотип */
  .cleanbot-shell .hdr__call{ display:grid; margin-right:-16px; }
  .cleanbot-shell .hdr__logo{ margin-right:auto; }
  .cleanbot-shell .nav.is-open{
    position:fixed; inset:var(--hdr-h) 0 0; transform:none;
    display:flex; flex-direction:column; align-items:stretch; gap:0;
    padding:20px 24px 40px;
    background:var(--ink);
    overflow-y:auto;
    z-index:89;
  }
  .cleanbot-shell .nav.is-open .nav__link{ height:auto; padding:15px 0; font-size:18px; font-weight:500; color:#fff; }
  .cleanbot-shell .nav.is-open .nav__item{ border-bottom:1px solid var(--line-dark); }
/* в мобильном меню все пункты белые — текущий выделяем акцентом */
  .cleanbot-shell .nav.is-open .nav__link[aria-current="page"]{ color:var(--acc); }
/* в мобильном меню подменю и так раскрыто — стрелка ничего не сообщает */
  .cleanbot-shell .nav.is-open .nav__link svg{ display:none; }
  .cleanbot-shell .nav.is-open .nav__drop{
    position:static; opacity:1; visibility:visible; transform:none;
    background:transparent; box-shadow:none; padding:0 0 12px; min-width:0;
  }
  .cleanbot-shell .nav.is-open .nav__drop a{ color:rgba(255,255,255,.62); padding:11px 0; }  /* 11px — высота пункта 45px */
  .cleanbot-shell .nav.is-open .nav__drop a:hover{ background:transparent; color:var(--acc); }
  .cleanbot-shell .nav.is-open .nav__mobPhone{ display:inline-flex; margin-top:26px; }
  .cleanbot-shell .ftr__cols{ grid-template-columns:repeat(2, 1fr); }
}
@media (max-width:620px){
  .cleanbot-shell .hdr__logo img, .cleanbot-shell .hdr__logo svg{ height:20px; }
/* футер удобнее в две колонки, чем длинным списком */
  .cleanbot-shell .ftr__cols{ grid-template-columns:repeat(2, 1fr); gap:14px 20px; }   /* 14 + 12px внутри ссылки ≈ прежние 26 */
/* в узкой колонке не помещается email — «Связаться» на всю ширину */
  .cleanbot-shell .fcol--contact{ grid-column:1 / -1; }
  .cleanbot-shell .ftr__legal,
  .cleanbot-shell .ftr__docs{ flex-direction:column; align-items:flex-start; gap:8px; }
  .cleanbot-shell .ftr__docs{ gap:0; }   /* ссылки уже высотой 44px */
  .cleanbot-shell .ftr__top{ row-gap:18px; margin-top:-10px; }   /* логотип теперь высотой 44px: −10px сверху и снизу */
  .cleanbot-shell .ftr__bottom{ row-gap:8px; padding-top:28px; }   /* сверху здесь обычный текст ©, а не ссылка 44px */
}
@media (prefers-reduced-motion:reduce){
  .cleanbot-shell .hdr *, .cleanbot-shell .ftr *, .cleanbot-shell .totop, .cleanbot-shell .msg, .cleanbot-shell .msg *{ transition-duration:.01ms !important; }
}

/* ============================================================
   Адаптив
   Компактный масштаб для ноутбуков и телефонов: базовый текст 16px,
   заголовки и отступы через clamp() с потолком, чтобы на больших
   экранах не росли бесконечно. Файл подключается на всех страницах:
   - body.cleanbot-redesign … — страницы нового дизайна (главная, каталог,
     товар, блог, статья). Префикс body поднимает специфичность над
     redesign-base.css и постраничными стилями, которые идут после этого файла;
   - .cleanbot-shell .cleanbot-about-* / -contacts* / -support-* / -error* —
     старые шаблоны из style.css (О бренде, Контакты, Поддержка, 404).
   Префикс перебивает и медиазапросы style.css, поэтому мобильные значения
   заложены в минимумы clamp() и в медиазапросы ниже.
   Брейкпоинты темы: 1180 / 900 / 620 / 380.
   ============================================================ */

/* ---------- Шапка: чуть ниже на десктопе ---------- */
@media (min-width:901px){
  html:has(.cleanbot-shell), .cleanbot-shell{ --hdr-h:68px; }
  .cleanbot-shell .btn{ height:48px; padding:0 24px; }
  .cleanbot-shell .btn--sm{ height:44px; padding:0 20px; }
}

/* ---------- Новый дизайн: текст и заголовки ---------- */
body.cleanbot-redesign{ font-size:16px; }
/* H1 первого экрана: 30px на телефоне → 48px с 1366px */
body.cleanbot-redesign .h-display{ font-size:clamp(30px, 2.2vw + 18px, 48px); line-height:1.05; }
/* H2 секций: 24px → 36px */
body.cleanbot-redesign .h2{ font-size:clamp(24px, 1.2vw + 18px, 36px); }
/* H1 каталога и статьи оформлены классом .h2 — для них размер H1: 28px → 42px */
body.cleanbot-redesign h1.h2{ font-size:clamp(28px, 1.5vw + 20px, 42px); }
body.cleanbot-redesign .pdp__title{ font-size:clamp(26px, 1.2vw + 20px, 38px); }
body.cleanbot-redesign .h3{ font-size:clamp(17px, .3vw + 15px, 20px); }
body.cleanbot-redesign .lead{ font-size:clamp(15px, .2vw + 14px, 17px); }
body.cleanbot-redesign .hero__sub{ font-size:clamp(16px, .3vw + 14px, 18px); }
body.cleanbot-redesign .bnr__title{ font-size:clamp(22px, .6vw + 16px, 28px); }
body.cleanbot-redesign .bigframe__title{ font-size:clamp(22px, .8vw + 16px, 32px); }
body.cleanbot-redesign .stat__n{ font-size:clamp(32px, 2.4vw + 20px, 60px); }
body.cleanbot-redesign .faq__q{ font-size:clamp(16px, .2vw + 14.5px, 17px); padding-block:clamp(14px, .8vw + 8px, 20px); min-height:52px; }
body.cleanbot-redesign .cta__phone{ font-size:clamp(20px, .4vw + 17px, 24px); }
/* статья: подзаголовки в тексте и блок FAQ */
body.cleanbot-redesign .aprose > h2, body.cleanbot-redesign .afaq__title{ font-size:clamp(22px, .8vw + 18px, 30px); }
body.cleanbot-redesign .prose h2{ font-size:clamp(22px, .4vw + 18px, 26px); }
/* блог: заголовок главной статьи */
body.cleanbot-redesign .bfeat__title{ font-size:clamp(22px, .8vw + 16px, 30px); }

/* ---------- Новый дизайн: вертикальный ритм ---------- */
/* было 60 + 60 = 120px между блоками; стало 72px на телефоне → 96px на десктопе */
body.cleanbot-redesign .sec, body.cleanbot-redesign .sec--tight{ padding-block:clamp(36px, 1.5vw + 28px, 48px); }
body.cleanbot-redesign .stats{ margin-block:clamp(36px, 1.5vw + 28px, 48px); padding-block:clamp(56px, 2.5vw + 44px, 80px); }
body.cleanbot-redesign .cta{ margin-top:clamp(36px, 1.5vw + 28px, 48px); padding-top:clamp(56px, 2.5vw + 44px, 80px); }
body.cleanbot-redesign .shead{ margin-bottom:clamp(22px, 1vw + 16px, 32px); }
body.cleanbot-redesign .panel__head{ margin-bottom:clamp(22px, 1vw + 16px, 32px); }

/* ---------- Новый дизайн: десктоп ---------- */
@media (min-width:901px){
  body.cleanbot-redesign .hero__body{ min-height:clamp(460px, 68vh, 620px); padding-bottom:clamp(88px, 6vw, 104px); }
  body.cleanbot-redesign .hero__sub{ margin-bottom:clamp(24px, 2.4vw, 34px); }
  body.cleanbot-redesign .shop{ height:52px; min-width:156px; padding:0 26px; }
  body.cleanbot-redesign .thumb{ width:72px; border-radius:12px; }
  body.cleanbot-redesign .stats__img{ width:min(220px, 18vw); top:-180px; }
}

/* ---------- Новый дизайн: зоны нажатия ≥ 44px ---------- */
/* точки слайдера: видимая точка прежняя, область нажатия — 44px по высоте */
body.cleanbot-redesign .dot{ position:relative; }
body.cleanbot-redesign .dot::before{ content:''; position:absolute; inset:-17.5px -4px; }
body.cleanbot-redesign .fslider__knob::before{ inset:-13px; }

/* ---------- Статья: таблица-карточки без горизонтальной прокрутки ---------- */
@media (max-width:620px){
  /* строка-карточка — элемент grid и не сжималась уже текста;
     вторая колонка с nowrap растягивала её до ~600px */
  body.cleanbot-redesign .atable tr{ min-width:0; }
  body.cleanbot-redesign .atable td:nth-child(2){ white-space:normal; }
  body.cleanbot-redesign .astick b{ white-space:normal; }
}

/* ---------- Старые шаблоны: «О бренде» ---------- */
.cleanbot-shell .cleanbot-about-intro{ padding-bottom:clamp(36px, 3vw + 24px, 64px); }
.cleanbot-shell .cleanbot-about-intro__title{ margin-bottom:clamp(12px, 1.5vw, 24px); font-size:clamp(24px, 1.2vw + 18px, 36px); }
.cleanbot-shell .cleanbot-about-intro__text,
.cleanbot-shell .cleanbot-about-mission__text{ gap:clamp(14px, 1.6vw, 24px); font-size:clamp(16px, .2vw + 15px, 18px); line-height:1.5; }
.cleanbot-shell .cleanbot-about-mission__text{ font-weight:400; }
.cleanbot-shell .cleanbot-about-markets{ margin-top:clamp(32px, 3vw, 48px); }
.cleanbot-shell .cleanbot-about-markets__title{ margin-bottom:clamp(12px, 1.5vw, 24px); font-size:clamp(20px, .6vw + 16px, 28px); }
.cleanbot-shell .cleanbot-about-stats{ min-height:0; padding-block:clamp(44px, 3vw + 32px, 72px); }
.cleanbot-shell .cleanbot-about-stats__inner{ gap:clamp(24px, 2.5vw, 44px); }
.cleanbot-shell .cleanbot-about-stats__value{ margin-bottom:clamp(6px, 1vw, 14px); font-size:clamp(36px, 4.5vw + 16px, 88px); }
.cleanbot-shell .cleanbot-about-stats__text{ font-size:clamp(16px, .4vw + 13px, 20px); line-height:1.35; }
.cleanbot-shell .cleanbot-about-mission{ padding-block:clamp(44px, 3vw + 32px, 72px); }
.cleanbot-shell .cleanbot-about-mission__title,
.cleanbot-shell .cleanbot-about-today__title,
.cleanbot-shell .cleanbot-about-people__title{ margin-bottom:clamp(16px, 2vw, 32px); font-size:clamp(24px, 1.2vw + 18px, 36px); line-height:1.1; }
.cleanbot-shell .cleanbot-about-today{ padding-block:clamp(32px, 3vw + 20px, 64px); }
.cleanbot-shell .cleanbot-about-people{ padding-block:clamp(44px, 3vw + 32px, 80px); }
.cleanbot-shell .cleanbot-about-people__list{ font-size:clamp(16px, .2vw + 15px, 18px); line-height:1.45; }
.cleanbot-shell .cleanbot-about-people__link{ margin-top:clamp(36px, 3vw + 20px, 64px); font-size:clamp(20px, .8vw + 16px, 30px); }
@media (min-width:761px){
  .cleanbot-shell .cleanbot-about-people__list li{ padding-left:28px; }
  .cleanbot-shell .cleanbot-about-markets__list{ gap:24px; }
  .cleanbot-shell .cleanbot-about-markets__link{ width:min(100%, 360px); min-height:60px; padding:12px 36px; }
  .cleanbot-shell .cleanbot-about-markets__image{ max-height:40px; }
}
@media (max-width:760px){
  .cleanbot-shell .cleanbot-about-markets__link{ min-height:48px; }
}

/* ---------- Старые шаблоны: «Контакты» ---------- */
.cleanbot-shell .cleanbot-contacts{ padding-block:clamp(28px, 3vw + 16px, 64px) clamp(40px, 2vw + 32px, 64px); }
.cleanbot-shell .cleanbot-contacts__title{ margin-bottom:clamp(16px, 2.5vw, 40px); font-size:clamp(28px, 1.2vw + 22px, 44px); }
.cleanbot-shell .cleanbot-contacts__heading{ margin-bottom:clamp(12px, 1.2vw, 18px); font-size:clamp(18px, .4vw + 15px, 24px); }
.cleanbot-shell .cleanbot-contacts__group--messengers{ margin-top:clamp(28px, 3vw, 48px); }
.cleanbot-shell .cleanbot-contacts__phones{ gap:12px; }
.cleanbot-shell .cleanbot-contacts__phone{ min-width:min(100%, 240px); min-height:48px; padding-right:22px; font-size:clamp(16px, .2vw + 15px, 18px); }
.cleanbot-shell .cleanbot-contacts__phone-icon{ width:48px; height:48px; margin-right:16px; font-size:17px; }
.cleanbot-shell .cleanbot-contacts__messengers{ gap:2px; }
.cleanbot-shell .cleanbot-contacts__messengers a{ display:inline-flex; align-items:center; min-height:44px; font-size:clamp(17px, .3vw + 15px, 20px); }
.cleanbot-shell .cleanbot-contacts__marketing,
.cleanbot-shell .cleanbot-contacts__requisites{ font-size:15px; line-height:1.45; }
.cleanbot-shell .cleanbot-contacts__marketing,
.cleanbot-shell .cleanbot-contacts__company{ margin-top:clamp(28px, 2.5vw, 40px); }
.cleanbot-shell .cleanbot-contacts__support-text{ gap:8px; margin-bottom:clamp(16px, 1.5vw, 24px); font-size:clamp(17px, .4vw + 14px, 22px); line-height:1.4; }
.cleanbot-shell .cleanbot-contacts__email{ margin-bottom:clamp(20px, 2vw, 32px); font-size:clamp(17px, .5vw + 14px, 24px); line-height:1.2; }
@media (min-width:901px){
  .cleanbot-shell .cleanbot-contacts__inner{ grid-template-columns:minmax(300px, 460px) minmax(420px, 640px); gap:clamp(40px, 5vw, 80px); }
}
@media (max-width:900px){
  .cleanbot-shell .cleanbot-contacts__support-text{ max-width:none; }
  .cleanbot-shell .cleanbot-contacts__marketing{ max-width:none; }
}

/* ---------- Старые шаблоны: «Поддержка» ---------- */
.cleanbot-shell .cleanbot-support-content{ padding-bottom:clamp(48px, 3vw + 36px, 80px); }
.cleanbot-shell .cleanbot-support-content__title{ margin-bottom:clamp(16px, 2vw, 28px); font-size:clamp(26px, 1.2vw + 20px, 40px); }
.cleanbot-shell .cleanbot-support-content__lead{ max-width:900px; font-size:clamp(17px, .3vw + 15px, 20px); line-height:1.45; }
.cleanbot-shell .cleanbot-support-benefits{ gap:clamp(28px, 2.5vw, 44px); margin-top:clamp(36px, 3.5vw, 56px); }
.cleanbot-shell .cleanbot-support-benefit__title{ font-size:clamp(20px, .8vw + 16px, 28px); }
.cleanbot-shell .cleanbot-support-benefit__text{ font-size:clamp(16px, .2vw + 15px, 18px); line-height:1.45; }
.cleanbot-shell .cleanbot-support-contact{ margin-top:clamp(40px, 3.5vw, 64px); }
.cleanbot-shell .cleanbot-support-contact__title{ margin-bottom:clamp(16px, 1.5vw, 24px); font-size:clamp(22px, .8vw + 18px, 30px); }
.cleanbot-shell .cleanbot-support-contact__round{ width:48px; height:48px; font-size:22px; }
.cleanbot-shell .cleanbot-support-contact__round--chat{ font-size:20px; }
.cleanbot-shell .cleanbot-support-contact__phone{ min-height:48px; padding-right:20px; font-size:clamp(16px, .2vw + 15px, 18px); }
.cleanbot-shell .cleanbot-support-contact__phone-icon{ width:48px; height:48px; margin-right:14px; font-size:18px; }
.cleanbot-shell .cleanbot-support-contact__email{ font-size:clamp(18px, .5vw + 15px, 26px); }
.cleanbot-shell .cleanbot-support-markets{ margin-top:clamp(36px, 3vw, 48px); }
.cleanbot-shell .cleanbot-support-markets__title{ margin-bottom:clamp(14px, 1.5vw, 24px); font-size:clamp(22px, .8vw + 18px, 30px); }
@media (min-width:901px){
  .cleanbot-shell .cleanbot-support-benefit{ grid-template-columns:88px minmax(0, 1fr); gap:20px; }
  .cleanbot-shell .cleanbot-support-benefit__icon{ width:72px; }
  .cleanbot-shell .cleanbot-support-benefit:nth-child(3) .cleanbot-support-benefit__icon{ width:84px; }
  .cleanbot-shell .cleanbot-support-markets__list{ gap:24px; }
  .cleanbot-shell .cleanbot-support-markets__link{ width:min(100%, 360px); min-height:60px; padding:12px 36px; }
  .cleanbot-shell .cleanbot-support-markets__image{ max-height:40px; }
}

/* ---------- Старые шаблоны: страница 404 ---------- */
.cleanbot-shell .cleanbot-error__code{ font-size:clamp(80px, 8vw + 40px, 160px); }
.cleanbot-shell .cleanbot-error__title{ font-size:clamp(28px, 1.5vw + 20px, 44px); }
.cleanbot-shell .cleanbot-error__text{ font-size:clamp(16px, .3vw + 15px, 20px); }
.cleanbot-shell .cleanbot-error__button,
.cleanbot-shell .cleanbot-error__link{ font-size:18px; }
.cleanbot-shell .cleanbot-error__button{ min-height:52px; }
/* конец блока «Адаптив» */

/* ТЗ окт. 2026, задача 12: inline SVG вместо Font Awesome (cleanbot_icon()) */
.cb-ico{ display:inline-block; flex:none; width:1em; height:1em; fill:currentColor; vertical-align:-.125em; overflow:visible; }
.cleanbot-shell .soc .cb-ico{ font-size:18px; }

/* ТЗ окт. 2026, задача 13: часы работы и подпись второго номера на /contacts/ */
.cleanbot-shell .cleanbot-contacts__hours{ margin:-4px 0 14px; font-size:15px; color:var(--text-2, #5b6470); }
.cleanbot-shell .cleanbot-contacts__phone-note{ flex-basis:100%; margin:-4px 0 0; font-size:14px; color:var(--text-2, #5b6470); }

/* Task 19: почта на /contacts/ строчными, как в футере (в style.css было uppercase) */
.cleanbot-shell .cleanbot-contacts__email{ text-transform:none; }
