/* Cleanbot redesign — страница статьи
   Источник: Redesign/article.css. Все селекторы ограничены областью .cleanbot-redesign (класс на <body>).
   Использует компоненты блога (bcat-link, bbox, bava, bmeta, bcard, bsub) из redesign-blog.css. */

/* ============================================================
   CLEANBOT — статья блога
   Дополняет styles.css и blog.css: здесь только то, что нужно статье
   ============================================================ */

/* ---------- Прогресс чтения — тонкая полоса по низу шапки ---------- */
.cleanbot-redesign .aprogress{
  position:absolute; left:0; right:0; bottom:-1px; height:3px;
  pointer-events:none;
}
.cleanbot-redesign .aprogress i{
  display:block; width:100%; height:100%;
  background:var(--acc);
  transform:scaleX(0); transform-origin:0 50%;
}

/* ---------- Компактная строка при скролле ---------- */
.cleanbot-redesign .amini{
  position:fixed; left:0; right:0; top:var(--hdr-h); z-index:80;
  background:rgba(255,255,255,.94);
  backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid var(--line);
  transform:translateY(-110%); visibility:hidden;
  transition:transform .3s var(--ease), visibility 0s linear .3s;
}
.cleanbot-redesign .amini.is-on{ transform:none; visibility:visible; transition:transform .3s var(--ease); }
.cleanbot-redesign .amini__in{ display:flex; align-items:center; gap:20px; height:60px; }
.cleanbot-redesign .amini__title{
  min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
  font-size:15px; font-weight:600; letter-spacing:-.01em;
}
.cleanbot-redesign .amini .btn{ margin-left:auto; flex:none; }

/* ---------- Шапка статьи ---------- */
.cleanbot-redesign .ahead{ padding-block:30px 0; }
.cleanbot-redesign .ahead .crumbs{ margin-bottom:28px; }
.cleanbot-redesign .ahead__body{ max-width:940px; }
.cleanbot-redesign .ahead__title{ margin:14px 0 20px; }
.cleanbot-redesign .ahead__lead{ max-width:820px; }

.cleanbot-redesign .abyline{
  display:flex; flex-wrap:wrap; align-items:center; gap:14px 24px;
  margin-top:32px; padding-top:24px;
  border-top:1px solid var(--line);
}
.cleanbot-redesign .abyline .bava{ width:44px; height:44px; background:var(--surface); }
.cleanbot-redesign .averified{
  display:inline-flex; align-items:center; gap:7px;
  height:32px; padding:0 13px 0 10px;
  border-radius:999px; background:var(--acc-tint); color:var(--acc-press);
  font-size:13px; font-weight:600;
}
.cleanbot-redesign .atools{ display:flex; gap:8px; margin-left:auto; }
.cleanbot-redesign .atool{
  display:inline-flex; align-items:center; gap:8px;
  height:40px; padding:0 16px;
  border:1px solid var(--line); border-radius:999px; background:#fff;
  font-size:13.5px; font-weight:600; color:var(--text);
  transition:border-color .2s var(--ease), color .2s var(--ease), background .2s var(--ease);
}
.cleanbot-redesign .atool svg{ flex:none; color:var(--text-2); transition:color .2s var(--ease); }
.cleanbot-redesign .atool:hover{ border-color:var(--text); }
.cleanbot-redesign .atool:hover svg{ color:var(--acc); }
.cleanbot-redesign .atool.is-done{ border-color:var(--acc); background:var(--acc-tint); color:var(--acc-press); }
.cleanbot-redesign .atool.is-done svg{ color:var(--acc); }

.cleanbot-redesign .afacts{
  display:flex; flex-wrap:wrap; gap:8px 26px;
  margin:18px 0 0; padding:0; list-style:none;
  font-size:14px; color:var(--text-3);
}
.cleanbot-redesign .afacts b{ font-weight:600; color:var(--text-2); }
.cleanbot-redesign .afacts li{ position:relative; }
.cleanbot-redesign .afacts li + li::before{
  content:''; position:absolute; left:-14px; top:50%;
  width:3px; height:3px; border-radius:50%; background:#C5CAD1;
}

.cleanbot-redesign .acover{ margin:36px 0 0; }
.cleanbot-redesign .acover__media{
  position:relative; overflow:hidden;
  aspect-ratio:21 / 9;
  border-radius:var(--r-xl); background:var(--surface);
}
.cleanbot-redesign .acover__media img{ width:100%; height:100%; object-fit:cover; }
.cleanbot-redesign .acover figcaption, .cleanbot-redesign .afig figcaption,
.cleanbot-redesign .aprose .afig__caption{
  margin:12px 0 0; font-size:13.5px; line-height:1.5; color:var(--text-3);
}

/* ---------- Текст + боковая колонка ---------- */
.cleanbot-redesign .abody{ padding-block:56px 0; }
.cleanbot-redesign .alayout{
  display:grid; grid-template-columns:minmax(0,1fr) 340px;
  gap:80px; align-items:start;
}
.cleanbot-redesign .alayout > *{ min-width:0; }
.cleanbot-redesign .amain{ max-width:780px; }

.cleanbot-redesign .aside{ align-self:stretch; }
.cleanbot-redesign .aside__sticky{
  position:sticky; top:calc(var(--hdr-h) + 84px);
  display:flex; flex-direction:column; gap:16px;
}

/* оглавление */
.cleanbot-redesign .atoc__list{ margin:0; padding:0; list-style:none; counter-reset:toc; }
.cleanbot-redesign .atoc__list li{ counter-increment:toc; }
.cleanbot-redesign .atoc__list li.is-sub{ counter-increment:none; }
.cleanbot-redesign .atoc__list a{
  position:relative; display:flex; gap:12px;
  padding:7px 0;
  font-size:14.5px; line-height:1.4; color:var(--text-2);
  transition:color .2s var(--ease);
}
.cleanbot-redesign .atoc__list li:not(.is-sub) > a::before{
  content:counter(toc, decimal-leading-zero);
  flex:none; width:20px;
  font-size:12.5px; font-weight:700; line-height:1.6; color:var(--text-3);
  transition:color .2s var(--ease);
}
.cleanbot-redesign .atoc__list li.is-sub > a{ padding-left:32px; font-size:13.5px; }
.cleanbot-redesign .atoc__list a:hover{ color:var(--text); }
.cleanbot-redesign .atoc__list a.is-active{ color:var(--text); font-weight:600; }
.cleanbot-redesign .atoc__list a.is-active::before{ color:var(--acc); }
.cleanbot-redesign .atoc__list li.is-sub > a.is-active{ color:var(--acc-press); }
.cleanbot-redesign .atoc .bbox__title{ margin-bottom:10px; }

/* товар в колонке — компактно, чтобы колонка влезала в экран */
.cleanbot-redesign .apromo{ display:grid; grid-template-columns:84px minmax(0,1fr); gap:16px; align-items:center; padding:20px; }
.cleanbot-redesign .apromo__media{
  position:relative; width:84px; height:84px;
  border-radius:var(--r-sm); background:#fff; overflow:hidden;
}
.cleanbot-redesign .apromo__media img{ position:absolute; inset:8px; width:calc(100% - 16px); height:calc(100% - 16px); object-fit:contain; }
.cleanbot-redesign .apromo__label{ margin:0 0 4px; font-size:12px; color:var(--text-3); }
.cleanbot-redesign .apromo__name{ margin:0; font-size:16px; font-weight:600; line-height:1.3; letter-spacing:-.015em; }
.cleanbot-redesign .apromo__price{ margin:4px 0 0; font-size:15px; font-weight:600; color:var(--text-2); }
.cleanbot-redesign .apromo .btn{ grid-column:1 / -1; }

/* мобильное оглавление */
.cleanbot-redesign .atoc-m{ display:none; }

/* ---------- Типографика статьи ---------- */
.cleanbot-redesign .aprose{ font-size:18px; line-height:1.7; color:var(--text); }
.cleanbot-redesign .aprose > p{ margin:0 0 20px; }
.cleanbot-redesign .aprose > p a, .cleanbot-redesign .aprose li a:not(.btn){
  color:var(--acc-press);
  text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:3px;
  transition:color .2s var(--ease);
}
.cleanbot-redesign .aprose > p a:hover{ color:var(--acc); }
.cleanbot-redesign .aprose > h2{
  position:relative;
  margin:56px 0 18px;
  font-size:34px; font-weight:600; line-height:1.15; letter-spacing:-.028em;
}
.cleanbot-redesign .aprose > h3{
  position:relative;
  margin:32px 0 12px;
  font-size:22px; font-weight:600; line-height:1.3; letter-spacing:-.018em;
}
.cleanbot-redesign .aprose > h2 + h3{ margin-top:8px; }
.cleanbot-redesign .aprose [id]{ scroll-margin-top:calc(var(--hdr-h) + 80px); }

/* якорь у заголовка — появляется при наведении */
.cleanbot-redesign .aanchor{
  margin-left:10px;
  font-weight:500; color:var(--acc);
  opacity:0; transition:opacity .2s var(--ease);
}
.cleanbot-redesign .aprose > h2:hover .aanchor, .cleanbot-redesign .aprose > h3:hover .aanchor, .cleanbot-redesign .aanchor:focus-visible{ opacity:1; }

/* ---------- Коротко ---------- */
.cleanbot-redesign .atldr{
  margin:0 0 8px; padding:28px 32px;
  border-radius:var(--r-lg); background:var(--acc-tint);
}
.cleanbot-redesign .atldr__title{
  display:flex; align-items:center; gap:10px;
  margin:0 0 14px;
  font-size:13px; font-weight:600; letter-spacing:.15em; text-transform:uppercase; color:var(--acc-press);
}
.cleanbot-redesign .atldr ul{ margin:0; padding:0; list-style:none; display:grid; gap:10px; }
.cleanbot-redesign .atldr li{
  position:relative; padding-left:30px;
  font-size:16.5px; line-height:1.55;
}
.cleanbot-redesign .atldr li::before{
  content:''; position:absolute; left:0; top:4px;
  width:18px; height:18px; border-radius:50%; background:var(--acc);
}
.cleanbot-redesign .atldr li::after{
  content:''; position:absolute; left:6.6px; top:8px;
  width:4px; height:8px;
  border:solid #fff; border-width:0 2px 2px 0;
  transform:rotate(43deg);
}

/* ---------- Примечание ---------- */
.cleanbot-redesign .anote{
  position:relative;
  margin:28px 0; padding:24px 28px 24px 32px;
  border-radius:var(--r-md); background:var(--surface);
  overflow:hidden;
}
.cleanbot-redesign .anote::before{ content:''; position:absolute; left:0; top:0; bottom:0; width:4px; background:var(--acc); }
.cleanbot-redesign .anote__title{ margin:0 0 6px; font-size:16px; font-weight:600; letter-spacing:-.01em; }
.cleanbot-redesign .anote p:last-child{ margin:0; font-size:16px; line-height:1.62; color:var(--text-2); }

/* ---------- Читайте также ---------- */
.cleanbot-redesign .aalso{
  display:flex; align-items:center; gap:18px;
  margin:28px 0; padding:12px 20px 12px 12px;
  border:1px solid var(--line); border-radius:var(--r-md);
  transition:border-color .2s var(--ease);
}
.cleanbot-redesign .aalso:hover{ border-color:var(--text); }
.cleanbot-redesign .aalso__media{ flex:none; width:112px; aspect-ratio:16 / 10; border-radius:var(--r-sm); overflow:hidden; background:var(--surface); }
.cleanbot-redesign .aalso__media img{ width:100%; height:100%; object-fit:cover; transition:transform .5s var(--ease); }
.cleanbot-redesign .aalso:hover .aalso__media img{ transform:scale(1.06); }
.cleanbot-redesign .aalso__body{ display:flex; flex-direction:column; gap:4px; min-width:0; }
.cleanbot-redesign .aalso__label{ font-size:12px; font-weight:600; letter-spacing:.15em; text-transform:uppercase; color:var(--acc); }
.cleanbot-redesign .aalso__title{ font-size:17px; font-weight:600; line-height:1.35; letter-spacing:-.015em; }
.cleanbot-redesign .aalso__go{
  flex:none; display:grid; place-items:center; margin-left:auto;
  width:40px; height:40px; border-radius:50%;
  background:var(--surface); color:var(--text);
  transition:background .2s var(--ease), color .2s var(--ease);
}
.cleanbot-redesign .aalso:hover .aalso__go{ background:var(--ink); color:#fff; }

/* ---------- Таблица ---------- */
.cleanbot-redesign .atable{
  margin:28px 0;
  border:1px solid var(--line); border-radius:var(--r-lg);
  overflow:hidden;
}
.cleanbot-redesign .atable table{ width:100%; border-collapse:collapse; font-size:15px; line-height:1.5; }
.cleanbot-redesign .atable thead th{
  padding:14px 20px;
  background:var(--surface);
  font-size:13px; font-weight:600; color:var(--text-2); text-align:left;
}
.cleanbot-redesign .atable tbody th, .cleanbot-redesign .atable td{ padding:16px 20px; text-align:left; vertical-align:top; border-top:1px solid var(--line); }
.cleanbot-redesign .atable tbody th{ font-weight:600; color:var(--text); width:30%; }
.cleanbot-redesign .atable td{ color:var(--text-2); }
.cleanbot-redesign .atable td:nth-child(2){ width:20%; white-space:nowrap; }
.cleanbot-redesign .apill{
  display:inline-flex; align-items:center; height:26px; padding:0 11px;
  border-radius:999px; background:rgba(16,16,16,.06);
  font-size:12.5px; font-weight:600; color:var(--text-2);
}
.cleanbot-redesign .apill--yes{ background:var(--acc-tint); color:var(--acc-press); }

/* ---------- Товар в тексте ---------- */
.cleanbot-redesign .aproduct{
  display:grid; grid-template-columns:200px minmax(0,1fr); gap:28px; align-items:center;
  margin:32px 0; padding:20px 28px 20px 20px;
  border-radius:var(--r-lg); background:var(--surface);
}
.cleanbot-redesign .aproduct__media{
  position:relative; display:block;
  aspect-ratio:1; border-radius:var(--r-md); background:#fff; overflow:hidden;
}
.cleanbot-redesign .aproduct__media img{ position:absolute; inset:14px; width:calc(100% - 28px); height:calc(100% - 28px); object-fit:contain; transition:transform .5s var(--ease); }
.cleanbot-redesign .aproduct:hover .aproduct__media img{ transform:scale(1.04); }
.cleanbot-redesign .aproduct .eyebrow{ margin-bottom:10px; }
.cleanbot-redesign .aproduct__name{ margin:0 0 8px; font-size:22px; font-weight:600; line-height:1.25; letter-spacing:-.02em; }
.cleanbot-redesign .aproduct__name a{ transition:color .2s var(--ease); }
.cleanbot-redesign .aproduct__name a:hover{ color:var(--acc); }
.cleanbot-redesign .aproduct__text{ margin:0; font-size:15px; line-height:1.6; color:var(--text-2); }
.cleanbot-redesign .aproduct__row{ display:flex; flex-wrap:wrap; align-items:center; gap:14px 20px; margin-top:18px; }
.cleanbot-redesign .aproduct__price{ font-size:22px; font-weight:700; letter-spacing:-.02em; white-space:nowrap; }
.cleanbot-redesign .aproduct__price s{ margin-left:8px; font-size:15px; font-weight:500; color:var(--text-3); }
.cleanbot-redesign .aproduct__btns{ display:flex; flex-wrap:wrap; gap:8px; }

/* ---------- Чеклист ---------- */
.cleanbot-redesign .acheck{
  margin:36px 0; padding:28px 32px;
  border:1px solid var(--line); border-radius:var(--r-lg);
}
.cleanbot-redesign .acheck__head{ display:flex; align-items:baseline; justify-content:space-between; gap:16px; }
.cleanbot-redesign .acheck__title{ margin:0; font-size:22px; font-weight:600; line-height:1.3; letter-spacing:-.02em; }
.cleanbot-redesign .acheck__state{ flex:none; margin:0; font-size:14px; font-weight:600; color:var(--text-3); }
.cleanbot-redesign .acheck__state.is-full{ color:var(--acc-press); }
.cleanbot-redesign .acheck__bar{ height:6px; margin:16px 0 8px; border-radius:999px; background:var(--surface-2); overflow:hidden; }
.cleanbot-redesign .acheck__bar i{ display:block; width:100%; height:100%; border-radius:inherit; background:var(--acc); transform:scaleX(0); transform-origin:0 50%; transition:transform .35s var(--ease); }
.cleanbot-redesign .acheck__list{ margin:0; padding:0; list-style:none; }
.cleanbot-redesign .acheck__list li + li{ border-top:1px solid var(--line); }
.cleanbot-redesign .acheck .check{
  margin:0; padding:14px 0; gap:14px; align-items:center;
  font-size:16px; line-height:1.45; color:var(--text);
}
.cleanbot-redesign .acheck .check input{ width:22px; height:22px; margin:0; border-radius:7px; }
.cleanbot-redesign .acheck .check input:checked::after{ left:6.8px; top:3px; width:5.5px; height:10.5px; }
.cleanbot-redesign .acheck .check input:checked + span{ color:var(--text-3); text-decoration:line-through; text-decoration-color:rgba(139,146,155,.6); }
.cleanbot-redesign .acheck__reset{
  margin-top:10px; padding:0;
  font-size:14px; font-weight:600; color:var(--text-2);
  transition:color .2s var(--ease);
}
.cleanbot-redesign .acheck__reset:hover{ color:var(--acc); }

/* ---------- Шаги ---------- */
.cleanbot-redesign .asteps{ margin:0 0 20px; padding:0; list-style:none; counter-reset:step; display:grid; gap:14px; }
.cleanbot-redesign .asteps li{
  counter-increment:step;
  position:relative; padding:2px 0 0 52px; min-height:36px;
  font-size:17px; line-height:1.6;
}
.cleanbot-redesign .asteps li::before{
  content:counter(step);
  position:absolute; left:0; top:0;
  display:grid; place-items:center;
  width:36px; height:36px; border-radius:50%;
  background:var(--ink); color:#fff;
  font-size:14px; font-weight:600;
}

/* ---------- Иллюстрация в тексте ---------- */
.cleanbot-redesign .afig{ margin:32px 0; }
.cleanbot-redesign .afig__media{ aspect-ratio:16 / 9; border-radius:var(--r-lg); overflow:hidden; background:var(--surface); }
.cleanbot-redesign .afig__media img{ width:100%; height:100%; object-fit:cover; }

/* ---------- Развилка по моделям ---------- */
.cleanbot-redesign .afork{
  position:relative; overflow:hidden;
  margin:44px 0; padding:40px;
  border-radius:var(--r-xl); background:var(--ink); color:#fff;
}
.cleanbot-redesign .afork::before{
  content:''; position:absolute; right:-120px; top:-140px;
  width:380px; height:380px; border-radius:50%;
  background:radial-gradient(circle, rgba(11,169,219,.26), rgba(11,169,219,0) 66%);
  pointer-events:none;
}
.cleanbot-redesign .afork .eyebrow{ position:relative; margin-bottom:12px; }
.cleanbot-redesign .afork__title{
  position:relative;
  margin:0 0 24px; max-width:520px;
  font-size:30px; font-weight:600; line-height:1.15; letter-spacing:-.025em;
}
.cleanbot-redesign .afork__list{ position:relative; margin:0; padding:0; list-style:none; }
.cleanbot-redesign .afork__list li{
  display:flex; align-items:center; justify-content:space-between; gap:20px;
  padding:16px 0;
  border-top:1px solid var(--line-dark);
}
.cleanbot-redesign .afork__cond{ display:flex; flex-direction:column; gap:2px; min-width:0; }
.cleanbot-redesign .afork__cond b{ font-size:16.5px; font-weight:600; line-height:1.35; letter-spacing:-.01em; }
.cleanbot-redesign .afork__cond span{ font-size:14px; line-height:1.45; color:rgba(255,255,255,.56); }
.cleanbot-redesign .afork .btn{ flex:none; min-width:160px; }

/* ---------- FAQ ---------- */
.cleanbot-redesign .afaq{ margin:56px 0 0; }
.cleanbot-redesign .afaq__title{ margin:0 0 20px; font-size:34px; font-weight:600; line-height:1.15; letter-spacing:-.028em; }

/* ---------- Оценка ---------- */
.cleanbot-redesign .arate{
  display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:18px 28px;
  margin:48px 0 0; padding:26px 28px;
  border-radius:var(--r-lg); background:var(--surface);
}
.cleanbot-redesign .arate__title{ margin:0 0 4px; font-size:20px; font-weight:600; line-height:1.3; letter-spacing:-.02em; }
.cleanbot-redesign .arate__text p{ margin:0; font-size:14.5px; line-height:1.55; color:var(--text-2); }
.cleanbot-redesign .arate__btns{ display:flex; flex-wrap:wrap; gap:8px; }
.cleanbot-redesign .arate__btns .btn svg{ color:var(--text-2); }
.cleanbot-redesign .arate__after{ width:100%; }
.cleanbot-redesign .arate__after[hidden]{ display:none; }
/* форма Contact Form 7 (разметка — inc/cf7-article-form.txt) */
.cleanbot-redesign .arate__after .wpcf7-form{ display:flex; flex-direction:column; gap:14px; margin:0; }
.cleanbot-redesign .arate__after .wpcf7-form p{ margin:0; }
.cleanbot-redesign .arate__after .wpcf7-form br{ display:none; }
.cleanbot-redesign .arate__after .wpcf7-form-control-wrap{ display:block; margin-top:8px; }
.cleanbot-redesign .arate__field{ display:block; font-size:14.5px; font-weight:600; line-height:1.4; color:var(--text); }
.cleanbot-redesign .arate__field small{ display:block; margin-top:2px; font-size:13px; font-weight:400; color:var(--text-3); }
.cleanbot-redesign .arate__after textarea,
.cleanbot-redesign .arate__after input[type="text"],
.cleanbot-redesign .arate__after input[type="email"],
.cleanbot-redesign .arate__after input[type="tel"]{
  width:100%; padding:14px 16px;
  border:1px solid var(--line); border-radius:var(--r-sm); background:#fff; color:var(--text);
  font-size:15px; font-weight:400; line-height:1.5;
  transition:border-color .2s var(--ease), box-shadow .2s var(--ease);
}
.cleanbot-redesign .arate__after textarea{ min-height:96px; resize:vertical; }
.cleanbot-redesign .arate__after input[type="text"], .cleanbot-redesign .arate__after input[type="email"], .cleanbot-redesign .arate__after input[type="tel"]{ height:52px; padding-block:0; }
.cleanbot-redesign .arate__after textarea::placeholder, .cleanbot-redesign .arate__after input::placeholder{ color:var(--text-3); }
.cleanbot-redesign .arate__after textarea:hover, .cleanbot-redesign .arate__after input[type="text"]:hover{ border-color:#CDD3DA; }
.cleanbot-redesign .arate__after textarea:focus, .cleanbot-redesign .arate__after input:focus{ outline:none; border-color:var(--acc); box-shadow:0 0 0 3px rgba(11,169,219,.16); }
/* согласие на обработку данных */
.cleanbot-redesign .arate__after .wpcf7-list-item{ display:block; margin:0; }
.cleanbot-redesign .arate__after .wpcf7-list-item label{
  display:grid; grid-template-columns:auto 1fr; gap:11px;
  font-size:13px; font-weight:400; line-height:1.5; color:var(--text-2); cursor:pointer;
}
.cleanbot-redesign .arate__after .wpcf7-acceptance input{
  appearance:none; -webkit-appearance:none; position:relative; flex:none;
  width:19px; height:19px; margin:1px 0 0;
  border:1.5px solid #CDD3DA; border-radius:6px; background:#fff;
  transition:background .18s var(--ease), border-color .18s var(--ease);
}
.cleanbot-redesign .arate__after .wpcf7-acceptance input:checked{ background:var(--acc); border-color:var(--acc); }
.cleanbot-redesign .arate__after .wpcf7-acceptance input:checked::after{
  content:''; position:absolute; left:5.6px; top:2.4px; width:5px; height:9.5px;
  border:solid #fff; border-width:0 2px 2px 0; transform:rotate(43deg);
}
.cleanbot-redesign .arate__after .wpcf7-list-item-label a{ color:var(--acc); text-decoration:underline; text-underline-offset:2px; }
.cleanbot-redesign .arate__after .wpcf7-submit{ align-self:flex-start; cursor:pointer; }
/* сообщения Contact Form 7 */
.cleanbot-redesign .arate__after .wpcf7-not-valid-tip{ margin-top:6px; font-size:12.5px; font-weight:400; color:#D63638; }
.cleanbot-redesign .arate__after .wpcf7-not-valid{ border-color:#D63638 !important; }
.cleanbot-redesign .arate__after .wpcf7 form .wpcf7-response-output{
  margin:0; padding:12px 16px;
  border:1px solid var(--line); border-radius:12px;
  font-size:13.5px; line-height:1.5; color:var(--text-2);
}
.cleanbot-redesign .arate__after .wpcf7 form.invalid .wpcf7-response-output,
.cleanbot-redesign .arate__after .wpcf7 form.failed .wpcf7-response-output{ border-color:#D63638; }
.cleanbot-redesign .arate__after .wpcf7-spinner{ margin:0 0 0 12px; vertical-align:middle; }
.cleanbot-redesign .arate__msg{ width:100%; margin:0; font-size:15px; font-weight:600; color:var(--acc-press); }
.cleanbot-redesign .arate__msg:empty{ display:none; }

/* ---------- Автор ---------- */
.cleanbot-redesign .aauthor{
  display:grid; grid-template-columns:auto minmax(0,1fr); gap:24px;
  margin:16px 0 0; padding:28px;
  border:1px solid var(--line); border-radius:var(--r-lg);
}
.cleanbot-redesign .aauthor__ava{ width:72px; height:72px; font-size:20px; background:var(--acc-tint); color:var(--acc-press); }
.cleanbot-redesign .aauthor__label{ margin:0 0 4px; font-size:12px; font-weight:600; letter-spacing:.15em; text-transform:uppercase; color:var(--acc); }
.cleanbot-redesign .aauthor__name{ margin:0; font-size:22px; font-weight:600; line-height:1.3; letter-spacing:-.02em; }
.cleanbot-redesign .aauthor__role{ margin:2px 0 12px; font-size:14px; color:var(--text-3); }
.cleanbot-redesign .aauthor__text{ margin:0; font-size:15.5px; line-height:1.62; color:var(--text-2); }
.cleanbot-redesign .aauthor__links{ display:flex; flex-wrap:wrap; gap:10px 28px; margin-top:16px; }

/* ---------- Источники ---------- */
.cleanbot-redesign .asources{ margin:16px 0 0; padding:26px 28px; border-radius:var(--r-lg); background:var(--surface); }
.cleanbot-redesign .asources__title{ margin:0 0 12px; font-size:18px; font-weight:600; letter-spacing:-.02em; }
.cleanbot-redesign .asources ul{ margin:0; padding:0; list-style:none; display:grid; gap:8px; }
.cleanbot-redesign .asources li{ position:relative; padding-left:20px; font-size:15px; line-height:1.55; color:var(--text-2); }
.cleanbot-redesign .asources li::before{ content:''; position:absolute; left:0; top:11px; width:8px; height:1.5px; border-radius:2px; background:var(--acc); }
.cleanbot-redesign .asources__log{
  display:flex; gap:9px; align-items:flex-start;
  margin:16px 0 0; padding-top:14px; border-top:1px solid var(--line);
  font-size:13.5px; line-height:1.5; color:var(--text-3);
}
.cleanbot-redesign .asources__log svg{ flex:none; margin-top:2px; }
.cleanbot-redesign .asources__log b{ font-weight:600; color:var(--text-2); }

/* ---------- Подписка и поддержка ---------- */
.cleanbot-redesign .aextra{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:16px; margin:48px 0 0; }
.cleanbot-redesign .asupport{
  display:flex; flex-direction:column;
  padding:28px; border-radius:var(--r-lg);
  background:var(--ink); color:#fff;
}
.cleanbot-redesign .asupport__ic{
  display:grid; place-items:center; width:48px; height:48px; margin-bottom:18px;
  border-radius:50%; background:rgba(255,255,255,.08); color:var(--acc);
}
.cleanbot-redesign .asupport__title{ margin:0 0 10px; font-size:19px; font-weight:600; line-height:1.25; letter-spacing:-.02em; }
.cleanbot-redesign .asupport__text{ margin:0; font-size:14.5px; line-height:1.6; color:rgba(255,255,255,.62); }
.cleanbot-redesign .asupport__phone{
  margin-top:20px;
  font-size:22px; font-weight:600; letter-spacing:-.02em; color:#fff;
  transition:color .2s var(--ease);
}
.cleanbot-redesign .asupport__phone:hover{ color:var(--acc-hi); }
.cleanbot-redesign .asupport__hours{ margin:4px 0 0; font-size:13px; color:rgba(255,255,255,.46); }
.cleanbot-redesign .asupport .btn{ margin-top:auto; }
.cleanbot-redesign .asupport__hours + .btn{ margin-top:24px; }

/* ---------- Предыдущая и следующая ---------- */
.cleanbot-redesign .aprevnext{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:16px; margin:48px 0 0; }
.cleanbot-redesign .aprevnext__item{
  display:flex; flex-direction:column; gap:8px;
  padding:22px 24px;
  border:1px solid var(--line); border-radius:var(--r-lg);
  transition:border-color .2s var(--ease);
}
.cleanbot-redesign .aprevnext__item:hover{ border-color:var(--text); }
.cleanbot-redesign .aprevnext__item--next{ text-align:right; align-items:flex-end; }
.cleanbot-redesign .aprevnext__label{
  display:inline-flex; align-items:center; gap:6px;
  font-size:13px; font-weight:600; color:var(--text-3);
  transition:color .2s var(--ease);
}
.cleanbot-redesign .aprevnext__item:hover .aprevnext__label{ color:var(--acc); }
.cleanbot-redesign .aprevnext__title{ font-size:16.5px; font-weight:600; line-height:1.4; letter-spacing:-.015em; }

/* ---------- Читайте дальше ---------- */
.cleanbot-redesign .arelated{ padding-top:100px; }
.cleanbot-redesign .arelated__grid{ margin:0; padding:0; list-style:none; }
.cleanbot-redesign .arelated .bcard__title{ margin-bottom:22px; }

/* ---------- Мобильная панель и кнопка наверх ---------- */
.cleanbot-redesign .astick{ display:none; }
.cleanbot-redesign .aup{
  position:fixed; right:24px; bottom:24px; z-index:70;
  width:48px; height:48px;
  display:grid; place-items:center;
  border:1px solid var(--line); border-radius:50%;
  background:#fff; color:var(--text); box-shadow:var(--shadow-1);
  opacity:0; visibility:hidden; transform:translateY(10px);
  transition:opacity .25s var(--ease), transform .25s var(--ease), visibility 0s linear .25s, background .2s var(--ease), color .2s var(--ease), bottom .3s var(--ease);
}
.cleanbot-redesign .aup.is-on{ opacity:1; visibility:visible; transform:none; transition:opacity .25s var(--ease), transform .25s var(--ease), background .2s var(--ease), color .2s var(--ease), bottom .3s var(--ease); }
.cleanbot-redesign .aup:hover{ background:var(--ink); border-color:var(--ink); color:#fff; }

/* в строке автора кнопкам с подписями не хватает места — оставляем иконки */
@media (max-width:1360px){
  .cleanbot-redesign .atools .atool span{ display:none; }
  .cleanbot-redesign .atool{ width:40px; padding:0; justify-content:center; }
}

/* ============================================================
   Ноутбук
   ============================================================ */
@media (max-width:1180px){
  .cleanbot-redesign .alayout{ grid-template-columns:minmax(0,1fr) 300px; gap:48px; }
}

/* ============================================================
   Планшет: колонка уходит, оглавление — над текстом
   ============================================================ */
@media (max-width:1024px){
  .cleanbot-redesign .alayout{ grid-template-columns:minmax(0,1fr); }
  .cleanbot-redesign .aside{ display:none; }
  .cleanbot-redesign .amain{ max-width:none; }
  .cleanbot-redesign .abody{ padding-top:40px; }

  .cleanbot-redesign .atoc-m{
    display:block; margin:0 0 32px;
    border:1px solid var(--line); border-radius:var(--r-lg);
    background:#fff;
  }
  .cleanbot-redesign .atoc-m summary{
    display:flex; align-items:center; gap:12px;
    padding:0 20px; height:56px;
    font-size:15.5px; font-weight:600; cursor:pointer; list-style:none;
  }
  .cleanbot-redesign .atoc-m summary::-webkit-details-marker{ display:none; }
  .cleanbot-redesign .atoc-m summary > svg:first-child{ color:var(--acc); }
  .cleanbot-redesign .atoc-m__chev{ margin-left:auto; color:var(--text-2); transition:transform .25s var(--ease); }
  .cleanbot-redesign .atoc-m[open] .atoc-m__chev{ transform:rotate(180deg); }
  .cleanbot-redesign .atoc-m .atoc__list{ padding:4px 20px 14px; border-top:1px solid var(--line); }

  /* мобильная панель с кнопкой подбора */
  .cleanbot-redesign .astick{
    position:fixed; left:0; right:0; bottom:0; z-index:75;
    display:flex; align-items:center; gap:14px;
    padding:12px var(--gutter) calc(12px + env(safe-area-inset-bottom));
    background:rgba(255,255,255,.96);
    backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
    border-top:1px solid var(--line);
    transform:translateY(110%); visibility:hidden;
    transition:transform .3s var(--ease), visibility 0s linear .3s;
  }
  .cleanbot-redesign .astick.is-on{ transform:none; visibility:visible; transition:transform .3s var(--ease); }
  .cleanbot-redesign .astick b{ flex:1; min-width:0; font-size:14px; font-weight:600; line-height:1.3; }
  .cleanbot-redesign .astick .btn{ flex:none; }
  .cleanbot-redesign .astick.is-on ~ .aup{ bottom:88px; }
}

@media (max-width:900px){
  .cleanbot-redesign .aproduct{ grid-template-columns:160px minmax(0,1fr); gap:22px; }
}

/* ============================================================
   Мобильный
   ============================================================ */
@media (max-width:620px){
  .cleanbot-redesign .amini{ display:none; }

  .cleanbot-redesign .ahead{ padding-top:24px; }
  .cleanbot-redesign .ahead .crumbs{ margin-bottom:20px; font-size:13px; }
  .cleanbot-redesign .ahead__title{ margin:10px 0 14px; font-size:28px; line-height:1.12; }
  .cleanbot-redesign .ahead__lead{ font-size:15px; }

  .cleanbot-redesign .abyline{ gap:14px; margin-top:24px; padding-top:20px; }
  .cleanbot-redesign .abyline .bmeta{ width:100%; }
  .cleanbot-redesign .atools{ gap:6px; margin-left:0; }
  .cleanbot-redesign .afacts{ gap:6px 22px; margin-top:16px; font-size:13px; }
  .cleanbot-redesign .afacts li + li::before{ display:none; }

  .cleanbot-redesign .acover{ margin:24px calc(var(--gutter) * -1) 0; }
  .cleanbot-redesign .acover__media{ aspect-ratio:16 / 10; border-radius:0; }
  .cleanbot-redesign .acover figcaption{ padding-inline:var(--gutter); font-size:13px; }

  .cleanbot-redesign .abody{ padding-top:32px; }
  .cleanbot-redesign .atoc-m{ margin-bottom:28px; }

  .cleanbot-redesign .aprose{ font-size:16px; line-height:1.68; }
  .cleanbot-redesign .aprose > p{ margin-bottom:16px; }
  .cleanbot-redesign .aprose > h2{ margin:40px 0 12px; font-size:24px; line-height:1.2; }
  .cleanbot-redesign .aprose > h3{ margin:26px 0 8px; font-size:18px; }
  .cleanbot-redesign .aanchor{ display:none; }

  .cleanbot-redesign .atldr{ padding:20px; }
  .cleanbot-redesign .atldr li{ font-size:15px; }

  .cleanbot-redesign .anote{ margin:22px 0; padding:20px 20px 20px 24px; }
  .cleanbot-redesign .anote__title, .cleanbot-redesign .anote p:last-child{ font-size:15px; }

  .cleanbot-redesign .aalso{ gap:14px; margin:22px 0; padding:10px 14px 10px 10px; }
  .cleanbot-redesign .aalso__media{ width:84px; }
  .cleanbot-redesign .aalso__title{ font-size:15px; }
  .cleanbot-redesign .aalso__go{ display:none; }

  /* таблица превращается в карточки — без горизонтальной прокрутки */
  .cleanbot-redesign .atable{ border:0; border-radius:0; overflow:visible; }
  .cleanbot-redesign .atable thead{ display:none; }
  .cleanbot-redesign .atable table, .cleanbot-redesign .atable tbody, .cleanbot-redesign .atable tr, .cleanbot-redesign .atable th, .cleanbot-redesign .atable td{ display:block; width:auto; }
  .cleanbot-redesign .atable tbody{ display:grid; gap:12px; }
  .cleanbot-redesign .atable tr{ padding:18px 20px; border:1px solid var(--line); border-radius:var(--r-md); }
  .cleanbot-redesign .atable tbody th, .cleanbot-redesign .atable td{ padding:0; border:0; }
  .cleanbot-redesign .atable tbody th{ width:auto; margin-bottom:10px; font-size:16px; }
  .cleanbot-redesign .atable td:nth-child(2){ width:auto; margin-bottom:8px; }
  .cleanbot-redesign .atable td{ font-size:14.5px; }

  .cleanbot-redesign .aproduct{ grid-template-columns:minmax(0,1fr); gap:18px; padding:20px; }
  .cleanbot-redesign .aproduct__media{ aspect-ratio:16 / 10; }
  .cleanbot-redesign .aproduct__name{ font-size:18px; }
  .cleanbot-redesign .aproduct__text{ font-size:14.5px; }
  .cleanbot-redesign .aproduct__price{ font-size:20px; }
  .cleanbot-redesign .aproduct__btns{ width:100%; }
  .cleanbot-redesign .aproduct__btns .btn{ flex:1 1 auto; }

  .cleanbot-redesign .acheck{ margin:28px 0; padding:20px; }
  .cleanbot-redesign .acheck__head{ flex-direction:column; gap:4px; }
  .cleanbot-redesign .acheck__title{ font-size:18px; }
  .cleanbot-redesign .acheck__state{ font-size:13px; }
  .cleanbot-redesign .acheck .check{ font-size:15px; padding:12px 0; }

  .cleanbot-redesign .asteps{ gap:12px; }
  .cleanbot-redesign .asteps li{ padding-left:46px; font-size:15.5px; }
  .cleanbot-redesign .asteps li::before{ width:32px; height:32px; font-size:13px; }

  .cleanbot-redesign .afig{ margin:24px 0; }
  .cleanbot-redesign .afig__media{ border-radius:var(--r-md); }

  .cleanbot-redesign .afork{ margin:32px 0; padding:28px 20px 12px; border-radius:var(--r-lg); }
  .cleanbot-redesign .afork__title{ font-size:22px; margin-bottom:16px; }
  .cleanbot-redesign .afork__list li{ flex-direction:column; align-items:stretch; gap:12px; }
  .cleanbot-redesign .afork__cond b{ font-size:15.5px; }
  .cleanbot-redesign .afork__cond span{ font-size:13.5px; }
  .cleanbot-redesign .afork .btn{ min-width:0; width:100%; }

  .cleanbot-redesign .afaq{ margin-top:40px; }
  .cleanbot-redesign .afaq__title{ margin-bottom:16px; font-size:24px; }

  .cleanbot-redesign .arate{ margin-top:32px; padding:20px; }
  .cleanbot-redesign .arate__title{ font-size:18px; }
  .cleanbot-redesign .arate__btns{ width:100%; }
  .cleanbot-redesign .arate__btns .btn{ flex:1 1 auto; }

  .cleanbot-redesign .aauthor{ grid-template-columns:minmax(0,1fr); gap:14px; padding:20px; }
  .cleanbot-redesign .aauthor__ava{ width:56px; height:56px; font-size:17px; }
  .cleanbot-redesign .aauthor__name{ font-size:18px; }
  .cleanbot-redesign .aauthor__text{ font-size:15px; }
  .cleanbot-redesign .aauthor__links{ flex-direction:column; gap:10px; }

  .cleanbot-redesign .asources{ padding:20px; }
  .cleanbot-redesign .asources li{ font-size:14.5px; }

  .cleanbot-redesign .aextra{ grid-template-columns:minmax(0,1fr); gap:12px; margin-top:32px; }
  .cleanbot-redesign .asupport{ padding:20px; }
  .cleanbot-redesign .asupport__phone{ font-size:20px; }

  .cleanbot-redesign .aprevnext{ grid-template-columns:minmax(0,1fr); gap:12px; margin-top:32px; }
  .cleanbot-redesign .aprevnext__item{ padding:18px 20px; }
  .cleanbot-redesign .aprevnext__title{ font-size:15.5px; }

  .cleanbot-redesign .arelated{ padding-top:80px; }
  /* в узкой карточке ленты автор и дата не помещаются в строку */
  .cleanbot-redesign .arelated .bmeta__who small{ display:none; }
  .cleanbot-redesign .arelated .bmeta__who a{ white-space:nowrap; }
  .cleanbot-redesign .arelated .bcard__foot{ flex-wrap:wrap; row-gap:8px; }

  .cleanbot-redesign .aup{ right:16px; bottom:16px; width:44px; height:44px; }
  .cleanbot-redesign .astick.is-on ~ .aup{ bottom:84px; }
}

/* ---------- Печать: только текст статьи ---------- */
@media print{
  .cleanbot-redesign .hdr, .cleanbot-redesign .amini, .cleanbot-redesign .crumbs, .cleanbot-redesign .atools, .cleanbot-redesign .aside, .cleanbot-redesign .atoc-m, .cleanbot-redesign .arate, .cleanbot-redesign .aextra, .cleanbot-redesign .aprevnext, .cleanbot-redesign .arelated, .cleanbot-redesign .cta, .cleanbot-redesign .ftr, .cleanbot-redesign .astick, .cleanbot-redesign .aup, .cleanbot-redesign .aproduct__btns, .cleanbot-redesign .afork .btn{ display:none !important; }
  .cleanbot-redesign .alayout{ display:block; }
  .cleanbot-redesign .amain{ max-width:none; }
  .cleanbot-redesign .afork{ background:#fff; color:var(--text); border:1px solid var(--line); }
  .cleanbot-redesign .afork__cond span{ color:var(--text-2); }
}

/* ============================================================
   Адаптеры WordPress (нет в исходной верстке)
   ============================================================ */

/* без блока подписки карточка «Остался вопрос» занимает всю ширину */
.cleanbot-redesign .aextra > :only-child{ grid-column:1 / -1; }

/* Long editorial content and accessible interaction on narrow screens. */
.cleanbot-redesign .aprose { overflow-wrap: anywhere; }
.cleanbot-redesign .aprose img { max-width: 100%; height: auto; }
.cleanbot-redesign .aprose .afig__media img { height: 100%; }
.cleanbot-redesign .atool:focus-visible,
.cleanbot-redesign .atoc__list a:focus-visible,
.cleanbot-redesign .faq__q:focus-visible,
.cleanbot-redesign .acheck__reset:focus-visible { outline: 2px solid var(--acc); outline-offset: 4px; }
.cleanbot-redesign .aside__sticky { max-height: calc(100dvh - var(--hdr-h) - 100px); overflow-y: auto; scrollbar-width: thin; }
@media (max-width: 600px) {
  .cleanbot-redesign .ahead .crumbs { overflow-wrap: anywhere; }
  .cleanbot-redesign .atools { flex-wrap: wrap; gap: 6px; }
  .cleanbot-redesign .atool { min-height: 44px; padding-inline: 12px; }
  .cleanbot-redesign .averified { height: auto; min-height: 32px; padding-block: 6px; }
  .cleanbot-redesign .afork__list .btn { white-space: normal; text-align: center; }
  .cleanbot-redesign .astick { padding-bottom: max(12px, env(safe-area-inset-bottom)); }
}
@media (prefers-reduced-motion: reduce) {
  .cleanbot-redesign .amini, .cleanbot-redesign .aup, .cleanbot-redesign .faq__a { transition: none; }
}
