/* /upload/hc_js/hc-w4-site.css */

/* ХИТ КЕРАМИКС · общий CSS head_custom (все страницы) · собрано 26.09.2026 (аудит A1 W4, p1_perf-01) из инлайн-блоков
   include/header_include/head_custom.php. Порядок блоков = порядок в файле (каскад сохранён).
   Правка: меняешь этот файл → поднимаешь ?v= в head_custom.php (у /upload/hc_js/ кеш браузера 30 дней). */

/* ==== head_custom.php L325 · Две цены в карточке каталога (шт и м²) ==== */
/* Тёмная тема. У шаблона Aspro цвет заголовка блока «О компании» на главной зашит
   под светлую тему (front_company/style.css: .item-views.company.bg .text-block h3
   {color:#333}) — на тёмной он сливался с фоном. Отдаём его переменной темы. */
.item-views.company.bg .text-block h3{color:var(--white_text_black,#333)}
/* Логотип — inline SVG: «ХИТ» и слоган залиты #342D2D и в тёмной теме сливаются
   с тёмным хедером (03.08.2026, скрин Кирилла). Красный #EE302C не трогаем. */
@media (prefers-color-scheme: dark){
	.logo svg path[fill="#342D2D"]{fill:#e8e6e3}
}
/* FAQ в описании карточки товара: вопросы не должны визуально отличаться от текста
   описания (03.08.2026, требование Кирилла) — тот же кегль, жирность вместо размера,
   ровные отступы. Тематические h3/h4 задают крупные px, поэтому !important. */
.hc-faq h3{font-size:1.1em!important;font-weight:700!important;line-height:1.4!important;margin:1.3em 0 .5em!important}
.hc-faq h4{font-size:1em!important;font-weight:600!important;line-height:1.5!important;margin:1.1em 0 .25em!important}
.hc-faq p{margin:0 0 .5em!important}
/* Вторая цена на детальной карточке (шт↔м²), 03.08.2026 */
.hc-det-alt{margin-top:4px;font-size:.95em;font-weight:600;opacity:.75}
/* тот же случай в блоке «Не нашли ответа на свой вопрос?» (styles.css: .order-block .text h1..h6) */
.order-block .text h1,.order-block .text h2,.order-block .text h3,
.order-block .text h4,.order-block .text h5,.order-block .text h6{color:var(--white_text_black,#333)}

.hc-alt-prices{margin-top:2px;line-height:1.25}
.hc-alt-prices .hc-alt-price{white-space:nowrap}
.hc-alt-prices .hc-alt-price + .hc-alt-price{margin-left:8px}
.hc-alt-prices .price_value,.hc-alt-prices .price_currency,.hc-alt-prices .price_measure{font-size:inherit;font-weight:inherit}

/* 07.08.2026: здесь стояло выравнивание первой цены в плитке каталога в одну линию
   у товаров со скидкой и без — резерв места под плашку «-15% Экономия»
   (padding-bottom:24.5px у .price_matrix_wrapper без .sale_block, от 601 px).
   Кирилл посмотрел и попросил вернуть как было — правило снято, цена без скидки
   снова стоит ниже. Разбор, если понадобится снова, — в hitceramics-catalog-dual-price. */

/* ==== head_custom.php L590 · Акция в мобильной карточке товара ==== */
.hc-mob-sales{display:none}
@media (max-width:991px){
	.hc-mob-sales{display:block;margin:0 0 14px;padding:10px 12px;border:1px solid rgba(238,44,45,.35);border-radius:6px}
	.hc-mob-sales .list-sales-compact__title{margin-bottom:2px}
	/* иконка спозиционирована под сайдбар и наезжает на заголовок — в клоне прячем */
	.hc-mob-sales .list-sales-compact__icons{display:none}
}

/* ==== head_custom.php L815 · Детальная карточка ==== */
/* бейдж и срок акции */
.hc-promo-head{margin:0 0 8px}
.hc-promo-badge{display:inline-block;background:#EE2C2D;color:#fff!important;font-weight:700;font-size:12px;line-height:1;padding:5px 9px;border-radius:4px;text-decoration:none!important}
.hc-promo-badge:hover{background:#d61f20}
.hc-promo-period{margin-top:6px;font-size:12px;color:var(--light_basic_text_black,#777)}
.hc-promo-period a{color:inherit;text-decoration:underline}
/* цена по акции: новая — красным (старую и «Экономию» рисует сам Битрикс) */
.hc-promo-on .js_price_wrapper > .price_matrix_wrapper .price:not(.discount){color:#EE2C2D}
.hc-promo-old{font-size:.62em;font-weight:400;color:var(--basic_text_black,#999);text-decoration:line-through;margin-left:8px;white-space:nowrap}
.hc-det-alt .hc-promo-old{font-size:.92em;margin-left:6px}
/* другие цвета */
.hc-colors{margin:16px 0}
.hc-colors--side{margin:14px 0 4px}
.hc-colors__title{font-size:13px;font-weight:700;color:var(--white_text_black,#333);margin-bottom:8px}
.hc-colors__title span{font-weight:400;color:var(--light_basic_text_black,#888)}
.hc-colors__list{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.hc-colors__item{display:block;width:44px;height:44px;border-radius:50%;overflow:hidden;border:2px solid var(--stroke_black,#e5e5e5);transition:transform .12s,border-color .12s}
.hc-colors__item img{width:100%;height:100%;object-fit:cover;display:block}
.hc-colors__item:hover{transform:scale(1.08);border-color:#EE2C2D}
.hc-colors__item.is-cur{border-color:#EE2C2D;box-shadow:0 0 0 2px rgba(238,44,45,.25)}
.hc-colors__more{display:flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 12px;border-radius:22px;border:1px dashed var(--stroke_black,#ccc);font-size:12px;font-weight:600;color:var(--basic_text_black,#555)!important;text-decoration:none!important;white-space:nowrap}
.hc-colors__more:hover{border-color:#EE2C2D;color:#EE2C2D!important}
/* врезка калькулятора */
.hc-calc-cta{display:flex;align-items:center;gap:10px;margin-top:12px;padding:11px 14px;border:1px solid var(--stroke_black,#ececec);border-radius:6px;font-weight:600;font-size:13px;line-height:1.3;color:var(--white_text_black,#333)!important;text-decoration:none!important;transition:border-color .15s,color .15s}
.hc-calc-cta:hover{border-color:#EE2C2D;color:#EE2C2D!important}
.hc-calc-cta svg{flex:0 0 auto;opacity:.85}
/* дополнительно к заказу: разделы расходников */
.hc-related{margin:16px 0}
.hc-related__title{font-size:13px;font-weight:700;color:var(--white_text_black,#333);margin-bottom:8px}
.hc-related__list{display:flex;flex-wrap:wrap;gap:8px}
.hc-related__item{display:inline-flex;align-items:center;gap:8px;padding:6px 12px 6px 6px;border:1px solid var(--stroke_black,#e5e5e5);border-radius:22px;font-size:12.5px;font-weight:600;color:var(--white_text_black,#333)!important;text-decoration:none!important;transition:border-color .12s,color .12s}
.hc-related__item:hover{border-color:#EE2C2D;color:#EE2C2D!important}
.hc-related__item img{width:30px;height:30px;border-radius:50%;object-fit:cover;display:block}
.hc-related__item .hc-related__dot{width:30px;height:30px;border-radius:50%;background:var(--light_bg_black,#f2f2f2);display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--basic_text_black,#777)}
/* 06.08.2026: «В корзину»/«Оформить заказ» — сразу под «Единицей измерения»,
   а мои блоки («Другие цвета», «Дополнительно к заказу») уходят под них.
   Порядок задан флексом, а не переносом узлов: Aspro пересобирает .buy_block
   аяксом при выборе ТП, и перевставленные узлы каждый раз оказывались бы внизу.
   На мобильной раскладке кнопки и так идут сразу за sku_props. */
.catalog_detail .product-side .buy_block{display:flex;flex-direction:column}
.catalog_detail .product-side .buy_block > *{order:9}
.catalog_detail .product-side .buy_block > .sku_props{order:1}
.catalog_detail .product-side .buy_block > .offer_buy_block{order:2;margin-top:4px}
.catalog_detail .product-side .buy_block > .hc-colors{order:3}
.catalog_detail .product-side .buy_block > .hc-related{order:4}
/* спойлер «Развернуть/Свернуть» под описанием: текст показываем целиком,
   кнопка в самом низу длинного текста бессмысленна (замечание Кирилла 03.08) */
.catalog_detail .ordered-block__text.show-collapsed-js{max-height:none!important;overflow:visible!important;height:auto!important}
.catalog_detail .ordered-block__spoiler{display:none!important}
/* блок «Услуги» на карточке — компактные чипы в ряд вместо больших карточек
   (замечание Кирилла 03.08: «услуги поменьше»). У Aspro и обёртка, и строка носят
   класс .item, а размеры заданы специфичными правилами — поэтому !important. */
.catalog_detail .ordered-block.services .previewtext,
.catalog_detail .ordered-block.services .arrow_link{display:none!important}
.catalog_detail .ordered-block.services .items{display:flex;flex-wrap:wrap;gap:10px}
.catalog_detail .ordered-block.services .items > div[class*="col-"]{width:auto!important;flex:0 0 auto;padding:0!important;margin:0!important}
.catalog_detail .ordered-block.services .item_wrap{min-height:0!important;height:auto!important;padding:0!important;margin:0!important;display:block!important}
.catalog_detail .ordered-block.services .item_wrap > .item{min-height:0!important;height:auto!important;padding:8px 16px 8px 8px!important;margin:0!important;display:flex!important;align-items:center;gap:10px}
.catalog_detail .ordered-block.services .item_wrap > .item .image{width:36px!important;height:36px!important;min-height:0!important;max-width:36px!important;flex:0 0 36px;padding:0!important;float:none!important;overflow:hidden;border-radius:50%}
.catalog_detail .ordered-block.services .item_wrap > .item .image a{display:block;width:36px;height:36px;padding:0!important}
.catalog_detail .ordered-block.services .item_wrap > .item .image img{width:36px!important;height:36px!important;object-fit:cover}
.catalog_detail .ordered-block.services .body-info{padding:0!important;float:none!important;width:auto!important}
.catalog_detail .ordered-block.services .title{font-size:13px!important;line-height:1.3;margin:0!important}
.catalog_detail .ordered-block.services .title a{font-weight:600;white-space:nowrap}
.catalog_detail .ordered-block.services .ordered-block__title{font-size:15px}

/* ==== head_custom.php L1424 · Каталог ==== */
/* Пять пустых звёзд у товара без отзывов читаются как «этого никто не купил».
   Прячем только там, где оценок нет: появится первая — шкала вернётся.
   Правило общее для сайта — такие же карточки есть на главной и в подборках */
.rating:has(.inner_rating[title="Нет оценок"]),
.votes_block:has(.inner_rating[title="Нет оценок"]),
.rating.hc-no-votes,
.votes_block.hc-no-votes { display: none; }

/* ==== head_custom.php L1940 ==== */
/* Пустые плейсхолдеры (06.08.2026, ТЗ П0-3.6.2): бейдж скидки без значения и
   таймер акции без даты. :has() прогрессивен — при заполнении span правило
   перестаёт действовать само, настоящие скидки/таймеры не прячутся. */
.sale-number:has(> .value > span:empty){display:none}
.count_d_block:has(> .active_to:empty){display:none}
/* 26.09.2026 (аудит A1 W3, c1_price_card-01): заглушку «-%» с пустым span и слово «Экономия» при пустой сумме
   HcW3aOutput (local/php_interface/hc_w3a_seo.php) убирает из HTML — их читали краулеры и ИИ. Узел .value
   остаётся пустым (JS выбора ТП сам пишет в него «-N%»), подпись «Экономия» рисуем здесь. */
.sale-number:has(> .value:empty){display:none}
.sale_block .title.hc-econ::before{content:"Экономия"}

/* ==== head_custom.php L1968 ==== */
/* Отзывы о магазине в карточке (06.08.2026, ТЗ П1-4.2) */
.hc-store-reviews{margin:26px 0;padding:16px 20px;border:1px solid rgba(128,128,128,.25);border-radius:8px}
.hc-srev-title{font-weight:700;margin-bottom:12px;font-size:1.05em}
.hc-srev-rate{font-weight:400;opacity:.65;margin-left:6px;font-size:.85em}
.hc-srev-item{margin:0 0 12px}
.hc-srev-item p{margin:2px 0 0}
.hc-srev-head strong{font-weight:600}
.hc-srev-date{opacity:.55;margin-left:8px;font-size:.88em}
.hc-srev-links{margin:6px 0 0;font-size:.95em}

/* ==== head_custom.php L1980 ==== */
/* «Заказать образец» (06.08.2026, ТЗ П1-4.3) */
.catalog_detail .product-side .buy_block .hc-sample-wrap{order:5}
.hc-sample-wrap{margin:10px 0 2px}
.hc-sample-btn{display:inline-block;cursor:pointer;padding:9px 16px;border:1px solid #EE2C2D;border-radius:4px;color:#EE2C2D;font-weight:600;font-size:13px;line-height:1.2;user-select:none}
.hc-sample-btn:hover{background:#EE2C2D;color:#fff}
.hc-sample-hint{display:block;margin-top:5px;font-size:11.5px;opacity:.6}
@media (prefers-color-scheme: dark){.hc-sample-btn{border-color:#EE2C2D}}

/* ==== head_custom.php L1990 ==== */
/* Оглавление статей блога (06.08.2026, ТЗ П2-5.5) */
.hc-toc{margin:14px 0 22px;padding:14px 18px;border-left:3px solid #EE2C2D;background:rgba(128,128,128,.06);border-radius:0 6px 6px 0}
.hc-toc p{margin:0 0 6px}
.hc-toc ul{margin:0;padding-left:18px}
.hc-toc li{margin:3px 0}
.hc-toc a{color:inherit;text-decoration:underline;text-decoration-color:rgba(128,128,128,.5)}
.hc-toc a:hover{color:#EE2C2D}
/* hc-toc-scroll-2026-09-21: переход по пункту оглавления прятал заголовок раздела под
   фиксированную шапку сайта (62–65 px) — оставляем зазор (решение Кирилла 21.09) */
/* FAQ-пункт в двух статьях лежит внутри обёртки itemscope FAQPage — ловим и его */
.hc-toc~h2[id],.hc-toc~h3[id],.hc-toc~div>h2[id],.hc-toc~div>h3[id]{scroll-margin-top:84px}

/* ==== head_custom.php L2004 ==== */
/* Таблица «Стоимость по форматам» на разделах (06.08.2026, ТЗ П2-5.3;
   26.08.2026 — четвёртая колонка «шт в 1 м²» и горизонтальная прокрутка).
   Скроллер нужен именно на обёртке .hc-pt-scroll, а не на .hc-price-table:
   иначе вместе с таблицей уезжали бы заголовок блока и сноска. Без него
   четыре колонки на 390 px расширяют документ, и ежедневный DOM-чек
   site_admin честно ловил бы «горизонтальный вылет». */
.hc-price-table{margin:20px 0}
.hc-pt-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.hc-price-table table{border-collapse:collapse;min-width:320px}
.hc-price-table th,.hc-price-table td{padding:7px 14px;border:1px solid rgba(128,128,128,.3);text-align:left;font-size:.95em;white-space:nowrap}
.hc-price-table th{font-weight:600;background:rgba(128,128,128,.07)}
.hc-pt-note{margin:8px 0 0;font-size:.85em;opacity:.65;white-space:normal}
@media (max-width:600px){.hc-price-table th,.hc-price-table td{padding:6px 6px;font-size:.82em}}
.hc-sec-reviews{margin-top:22px}

/* ==== head_custom.php L2055 · Плагины jQuery, которые Aspro тянет асинхронно ==== */
/* Страховка на случай, если swiper всё-таки не поднялся: без неё слайды
   остаются без ширины и блок выглядит сломанным. Ширины — те же, что в
   data-plugin-options самого блока (5 / 4 / 3 / 2 карточки). */
.viewed-wrapper .swiper:not(.swiper-initialized) .swiper-wrapper{
  display:flex;flex-wrap:nowrap;gap:10px;overflow:hidden}
.viewed-wrapper .swiper:not(.swiper-initialized) .swiper-slide{
  flex:0 0 calc(20% - 8px);max-width:calc(20% - 8px)}
@media (max-width:1199px){.viewed-wrapper .swiper:not(.swiper-initialized) .swiper-slide{
  flex-basis:calc(25% - 8px);max-width:calc(25% - 8px)}}
@media (max-width:991px){.viewed-wrapper .swiper:not(.swiper-initialized) .swiper-slide{
  flex-basis:calc(33.333% - 7px);max-width:calc(33.333% - 7px)}}
@media (max-width:767px){.viewed-wrapper .swiper:not(.swiper-initialized) .swiper-slide{
  flex-basis:calc(50% - 5px);max-width:calc(50% - 5px)}}
@media (max-width:600px){.viewed-wrapper .swiper:not(.swiper-initialized) .swiper-slide{
  flex-basis:80%;max-width:80%}}

/* ==== head_custom.php L2704 · hc-checkout-ux ==== */
/* hc-checkout-ux: виджет Б24 на мобильном — в угол и мельче */
@media (max-width: 768px){
	.b24-widget-button-wrapper.b24-widget-button-position-bottom-right{
		bottom:14px!important;right:10px!important;
		transform:scale(.78);transform-origin:100% 100%;
	}
}

/* ==== head_custom.php L3035 · hc-cls-index-2026-08-08 ==== */
/* === hc-cls-index-2026-08-08: CLS главной === */
.wrapper_inner.front .middle > .hc-index-intro{visibility:hidden}
html.hc-page-loaded .wrapper_inner.front .middle > .hc-index-intro{visibility:visible}
.section-gallery-wrapper__item img.img-responsive{aspect-ratio:1/1;width:100%;height:auto;object-fit:contain}

/* ==== head_custom.php L3059 · hc-cls-brand-logo-2026-08-27 ==== */
/* === hc-cls-brand-logo-2026-08-27 === */
.product-info-headnote__brand .brand__picture{min-width:80px;text-align:center}

/* ==== head_custom.php L3536 · hcq-css ==== */
.hcq-cta{margin:18px 0;padding:18px 20px;border:1px solid #e6e6e6;border-left:4px solid #EE2C2D;border-radius:8px;background:#fafafa;display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between}
.hcq-cta__txt{flex:1 1 300px;min-width:260px}
.hcq-cta__txt b{font-size:16px;display:block;margin-bottom:4px}
.hcq-cta__txt span{font-size:13px;color:#666}
.hcq-btn{display:inline-block;cursor:pointer;background:#EE2C2D;color:#fff !important;border:none;border-radius:6px;padding:13px 22px;font-weight:600;font-size:14px;line-height:1.2;user-select:none;min-height:44px;text-align:center}
.hcq-btn:hover{background:#d61f20}
.hcq-float{position:fixed;left:16px;bottom:16px;z-index:9990;box-shadow:0 4px 16px rgba(0,0,0,.18);display:none;border-radius:24px;padding:12px 20px}
.hcq-ovl{position:fixed;inset:0;z-index:100010;background:rgba(0,0,0,.6);display:none;align-items:center;justify-content:center;padding:16px}
.hcq-ovl.hcq-open{display:flex}
.hcq-card{background:#fff;color:#222;border-radius:14px;max-width:520px;width:100%;max-height:92vh;overflow:auto;padding:26px 24px 22px;position:relative;font-family:inherit}
.hcq-x{position:absolute;top:10px;right:14px;font-size:26px;line-height:1;color:#999;cursor:pointer;padding:6px}
.hcq-x:hover{color:#333}
.hcq-prog{height:4px;background:#eee;border-radius:2px;margin:0 0 18px;overflow:hidden}
.hcq-prog i{display:block;height:100%;background:#EE2C2D;transition:width .25s}
.hcq-step{font-size:12px;color:#999;margin-bottom:6px}
.hcq-q{font-size:19px;font-weight:700;margin:0 0 16px;color:#1a1a1a}
.hcq-opt{display:block;width:100%;text-align:left;margin:0 0 10px;padding:14px 16px;border:1px solid #ddd;border-radius:10px;background:#fff;cursor:pointer;font-size:15px;color:#222;min-height:48px;transition:border-color .15s}
.hcq-opt:hover{border-color:#EE2C2D}
.hcq-opt.hcq-sel{border-color:#EE2C2D;background:#fdf1f1}
.hcq-inp{width:100%;padding:13px 14px;border:1px solid #ccc;border-radius:8px;font-size:15px;margin-bottom:12px;box-sizing:border-box}
.hcq-inp.hcq-bad{border-color:#EE2C2D;background:#fff5f5}
.hcq-nav{display:flex;gap:10px;align-items:center;margin-top:8px}
.hcq-back{cursor:pointer;color:#888;font-size:13px;padding:10px 6px}
.hcq-back:hover{color:#333}
.hcq-agree{display:flex;gap:8px;align-items:flex-start;font-size:12px;color:#666;margin:4px 0 12px}
.hcq-agree input{margin-top:2px;width:16px;height:16px}
.hcq-agree.hcq-bad{color:#EE2C2D}
.hcq-agree a{color:inherit;text-decoration:underline}
.hcq-fin{text-align:center;padding:14px 0}
.hcq-fin b{font-size:19px;display:block;margin:10px 0 8px}
.hcq-fin p{color:#555;font-size:14px;margin:0 0 6px}
.hcq-check{width:52px;height:52px;border-radius:50%;background:#2fa14e;color:#fff;font-size:30px;line-height:52px;margin:0 auto}
.hcq-phones{margin-top:10px;font-size:14px}
.hcq-phones a{color:#222;font-weight:600;text-decoration:none;white-space:nowrap}
.hcq-sub{font-size:13px;color:#777;margin:-8px 0 14px}
.hcq-err{color:#EE2C2D;font-size:13px;margin:6px 0 0;display:none}
@media (max-width:600px){.hcq-card{padding:20px 16px 16px}.hcq-q{font-size:17px}.hcq-float{left:10px;bottom:10px;padding:11px 16px;font-size:13px}}

/* ==== head_custom.php L3628 · hc-catalog-menu-flyout-2026-08-14 ==== */
.menu_top_block.catalog_block .dropdown > li.full > .dropdown > li{
	width:33.3333%;min-width:250px}
/* штатное правило Aspro для планшетов — равная специфичность, поэтому дублируем,
   иначе наши 33.3333% перебили бы его просто порядком в каскаде */
@media (max-width:992px){.menu_top_block.catalog_block .dropdown > li.full > .dropdown > li{width:50%}}
.menu_top_block.catalog_block .dropdown > li.full:hover > .dropdown{
	display:flex!important;flex-wrap:wrap;align-content:flex-start}

/* ==== head_custom.php L4068 · hc-city-first-visit-2026-08-16 ==== */
/* 28.09.2026: плашка города и подсказка региона (.hc-rhint ниже) переведены на дизайн-код сайта —
   палитра окна выбора города (city-benefits.css), Montserrat, карточка 6 px / кнопки 4 px, фирменный
   красный #d93a2f вместо зелёного #21a049. Тёмная тема — переключателем Aspro var(--light) var(--dark):
   прежние правила .dark-theme не срабатывали, такого класса на сайте нет (body.theme-default/-dark). */
.hc-citybar,.hc-rhint{
	--hc-cb-card:var(--light,#fff) var(--dark,#252525);
	--hc-cb-ink:var(--light,#302c29) var(--dark,#eeeae5);
	--hc-cb-muted:var(--light,#706c67) var(--dark,#b5b0a9);
	--hc-cb-line:var(--light,#e3e0da) var(--dark,#3b3936);
	--hc-cb-accent:var(--light,#b8322a) var(--dark,#ff6b60);
	--hc-cb-shadow:var(--light,rgba(48,44,41,.16)) var(--dark,rgba(0,0,0,.55))}
.hc-citybar{position:fixed;left:16px;bottom:16px;z-index:2400;max-width:400px;box-sizing:border-box;
	background:var(--hc-cb-card);color:var(--hc-cb-ink);border:1px solid var(--hc-cb-line);border-radius:6px;
	box-shadow:0 16px 48px var(--hc-cb-shadow);padding:18px 20px 16px;
	font:400 14px/1.55 Montserrat,Arial,sans-serif;opacity:0;transform:translateY(8px);
	transition:opacity .18s ease,transform .18s ease}
.hc-citybar.hc-on{opacity:1;transform:none}
.hc-citybar__q{margin:0 0 14px;padding-right:28px;color:inherit;font:inherit}
.hc-citybar__q b{font-weight:600}
.hc-citybar__btns{display:flex;flex-wrap:wrap;gap:8px 10px;align-items:center}
.hc-citybar__btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;box-sizing:border-box;
	cursor:pointer;border:1px solid var(--hc-cb-line);border-radius:4px;padding:10px 18px;background:var(--hc-cb-card);
	font:600 14px/1.2 Montserrat,Arial,sans-serif;color:var(--hc-cb-ink);white-space:nowrap;
	transition:background-color .18s ease,border-color .18s ease,color .18s ease}
.hc-citybar__btn:hover{border-color:#d93a2f;color:var(--hc-cb-accent)}
.hc-citybar__btn--yes,.hc-citybar__btn--yes:hover{background:#d93a2f;border-color:#d93a2f;color:#fff}
.hc-citybar__btn--yes:hover{background:#b8322a;border-color:#b8322a}
.hc-citybar__more{padding:6px 0;font-size:13px;line-height:1.2;color:var(--hc-cb-muted);cursor:pointer;
	text-decoration:underline dashed 1px;text-underline-offset:4px;transition:color .18s ease}
.hc-citybar__more:hover{color:var(--hc-cb-accent)}
.hc-citybar__x{position:absolute;top:6px;right:6px;width:36px;height:36px;line-height:36px;border-radius:4px;
	text-align:center;cursor:pointer;color:var(--hc-cb-muted);font:300 26px/36px Montserrat,Arial,sans-serif;transition:color .18s ease}
.hc-citybar__x:hover{color:var(--hc-cb-ink)}
.hc-citybar__btn:focus-visible,.hc-citybar__more:focus-visible,.hc-citybar__x:focus-visible,
.hc-citybar__mini:focus-visible{outline:2px solid #1a73e8;outline-offset:2px}
/* 28.08.2026: плашка не должна съедать нажатия. Найдено проверкой в браузере —
   на телефоне она держит нижние ~142 px КАЖДОГО экрана, и тап по кнопке под ней
   (например «В КОРЗИНУ» на карточке) просто пропадал: посетитель видит, что нажатие
   ничего не сделало, а в аналитике этого не видно вовсе. Теперь фон плашки прозрачен
   для нажатий (кликабельны только её кнопки), а если за 10 с посетитель не ответил,
   плашка сворачивается в компактную пилюлю — вопрос остаётся на виду, но перекрывает
   уголок, а не полосу во всю ширину. Тап по пилюле разворачивает плашку обратно. */
.hc-citybar{pointer-events:none}
.hc-citybar__btn,.hc-citybar__more,.hc-citybar__x,.hc-citybar__mini{pointer-events:auto}
/* свёрнутая плашка — карточка с меткой, как «Посетить шоурум» на главной */
.hc-citybar__mini{display:none;min-height:44px;box-sizing:border-box;padding:12px 16px 12px 12px;
	background:var(--hc-cb-card);color:var(--hc-cb-ink);border:1px solid var(--hc-cb-line);border-radius:6px;
	box-shadow:0 8px 28px var(--hc-cb-shadow);font:400 13px/18px Montserrat,Arial,sans-serif;
	cursor:pointer;white-space:nowrap;transition:border-color .18s ease}
.hc-citybar__mini::before{content:"";display:inline-block;width:18px;height:18px;margin:0 8px 0 0;vertical-align:-4px;background:#d93a2f;
	-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6.1-7-11.5a7 7 0 0 1 14 0C19 14.9 12 21 12 21z'/%3E%3Ccircle cx='12' cy='9.5' r='2.5'/%3E%3C/svg%3E") center/contain no-repeat;
	mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6.1-7-11.5a7 7 0 0 1 14 0C19 14.9 12 21 12 21z'/%3E%3Ccircle cx='12' cy='9.5' r='2.5'/%3E%3C/svg%3E") center/contain no-repeat}
.hc-citybar__mini:hover{border-color:#d93a2f}
.hc-citybar__mini b{font-weight:600}
.hc-citybar.hc-mini{background:transparent;border:0;box-shadow:none;padding:0;
	right:auto;width:auto;max-width:none}
.hc-citybar.hc-mini .hc-citybar__q,
.hc-citybar.hc-mini .hc-citybar__btns,
.hc-citybar.hc-mini .hc-citybar__x{display:none}
.hc-citybar.hc-mini .hc-citybar__mini{display:inline-block}
@media (max-width:600px){
	.hc-citybar{left:8px;right:8px;bottom:8px;max-width:none;padding:16px 16px 14px}
	.hc-citybar.hc-mini{left:8px;right:auto;padding:0}
	.hc-citybar__btn{flex:1 1 auto;padding:10px 12px}
}
@media (prefers-reduced-motion:reduce){.hc-citybar,.hc-rhint{transition:none;transform:none}}
/* Мобильные правки САМОГО попапа Аспро (16.08.2026) остаются в силе: попап никуда
   не делся, он открывается кликом по городу в шапке и ссылкой "другой город".
   1) до 600 px список городов шёл родной сеткой в 4 колонки по 73 px с ellipsis —
      "Москва" превращалась в "Моск…", тап-таргеты были 17–19 px;
   2) на 601–800 px окно фиксировано в 800 px и центруется через left, то есть
      вылезает за экран обоими краями. */
@media (max-width:600px){
	.city_chooser_small_frame .popup_regions .items.only_city .items_block{display:flex;flex-wrap:wrap;column-gap:18px}
	.city_chooser_small_frame .popup_regions .items.only_city .item{width:auto;flex:0 0 auto;padding:11px 0}
	.city_chooser_small_frame .popup_regions .favorits .cities .item a{display:inline-block;padding:9px 0}
}
@media (min-width:601px) and (max-width:840px){
	.city_chooser_small_frame{left:12px!important;right:12px!important;width:auto!important}
}

/* ==== head_custom.php L4291 · hc-region-hint-2026-09-26 ==== */
/* 28.09.2026: оформление — как у .hc-citybar (токены --hc-cb-* заданы в её блоке) */
.hc-rhint{position:fixed;left:16px;bottom:16px;z-index:2400;max-width:400px;box-sizing:border-box;
	background:var(--hc-cb-card);color:var(--hc-cb-ink);border:1px solid var(--hc-cb-line);border-radius:6px;
	box-shadow:0 16px 48px var(--hc-cb-shadow);padding:18px 20px 16px;
	font:400 14px/1.55 Montserrat,Arial,sans-serif;opacity:0;transform:translateY(8px);
	transition:opacity .18s ease,transform .18s ease}
.hc-rhint.hc-on{opacity:1;transform:none}
.hc-rhint__q{margin:0 0 14px;padding-right:28px;color:inherit;font:inherit}
.hc-rhint__q b{font-weight:600}
.hc-rhint__btns{display:flex;flex-wrap:wrap;gap:8px 10px}
.hc-rhint__btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;box-sizing:border-box;
	cursor:pointer;border:1px solid var(--hc-cb-line);border-radius:4px;padding:10px 18px;background:var(--hc-cb-card);
	font:600 14px/1.2 Montserrat,Arial,sans-serif;color:var(--hc-cb-ink);text-decoration:none;white-space:nowrap;
	transition:background-color .18s ease,border-color .18s ease,color .18s ease}
.hc-rhint__btn:hover{border-color:#d93a2f;color:var(--hc-cb-accent);text-decoration:none}
.hc-rhint__btn--go,.hc-rhint__btn--go:hover{background:#d93a2f;border-color:#d93a2f;color:#fff}
.hc-rhint__btn--go:hover{background:#b8322a;border-color:#b8322a}
.hc-rhint__btn:focus-visible,.hc-rhint__x:focus-visible{outline:2px solid #1a73e8;outline-offset:2px}
.hc-rhint__x{position:absolute;top:6px;right:6px;width:36px;height:36px;border:0;border-radius:4px;background:none;padding:0;
	cursor:pointer;color:var(--hc-cb-muted);font:300 26px/36px Montserrat,Arial,sans-serif;text-align:center;transition:color .18s ease}
.hc-rhint__x:hover{color:var(--hc-cb-ink)}
@media (max-width:600px){
	.hc-rhint{left:8px;right:8px;bottom:8px;max-width:none;padding:16px 16px 14px}
	.hc-rhint__btn{flex:1 1 auto;padding:10px 12px}
}
@media print{.hc-rhint{display:none!important}}


/* ==== head_custom.php L4572 · hc-stock-badge-2026-08-21 ==== */
.hc-stock-badge{display:flex;align-items:center;gap:6px;margin-top:6px;font-size:12px;line-height:16px;color:#8b8b8b}
.hc-stock-badge:before{content:'';flex:0 0 auto;width:8px;height:8px;border-radius:50%;background:#b5b5b5}
.hc-stock-badge--in{color:#21a049}
.hc-stock-badge--in:before{background:#21a049}
.hc-stock-badge--order{color:#c78500}
.hc-stock-badge--order:before{background:#e8a33d}
.dark-theme .hc-stock-badge--in{color:#3fca68}
.dark-theme .hc-stock-badge--in:before{background:#3fca68}

/* ==== head_custom.php L4623 · hc-mobile-catalog-2026-08-22 ==== */
@media (max-width: 600px) {
	/* 02.09.2026: :not(.swiper) — карусели «Вам также может понравиться» на детальной тоже лежат в
	   .section-content-wrapper; без исключения карточка там ужималась до 100 px (половина слайда 200 px),
	   цена «от 267 ₽/шт» разваливалась по слову в строке (скрин Кирилла IMG_9616) */
	.section-content-wrapper .catalog_block:not(.swiper) .item_block.col-xxs-12 { width: 50%; padding-left: 6px; padding-right: 6px; }
	.section-content-wrapper .catalog_block.items:not(.swiper) { margin-left: -6px; margin-right: -6px; }
	/* главная: перебиваем правило Аспро с !important (см. комментарий) */
	.wrapper1:not(.compact-catalog) .specials.tab_slider_wrapp ul.tabs_content li.tab .catalog_block:not(.swiper) > div.item.item_block.col-xxs-12 {
		width: 50% !important; padding-left: 6px; padding-right: 6px;
	}
	.wrapper_inner.front .catalog_block.items:not(.swiper) { margin-left: -6px; margin-right: -6px; }
	.section-content-wrapper .catalog_block .item_block .catalog_item .inner_wrap,
	.wrapper_inner.front .catalog_block:not(.swiper) .item_block .catalog_item .inner_wrap { padding: 10px !important; }
	.section-content-wrapper .catalog_block .item_block .catalog_item .footer_button .sku_props,
	.section-content-wrapper .catalog_block .item_block .catalog_item .footer_button .counter_block,
	.wrapper_inner.front .catalog_block:not(.swiper) .item_block .catalog_item .footer_button .sku_props,
	.wrapper_inner.front .catalog_block:not(.swiper) .item_block .catalog_item .footer_button .counter_block { display: none !important; }
	.section-content-wrapper .catalog_block .item_block .catalog_item .footer_button,
	.wrapper_inner.front .catalog_block:not(.swiper) .item_block .catalog_item .footer_button { margin-left: 0 !important; margin-right: 0 !important; }
	.section-content-wrapper .catalog_block .item_block .catalog_item .footer_button .button_block,
	.section-content-wrapper .catalog_block .item_block .catalog_item .footer_button .offer_buy_block,
	.wrapper_inner.front .catalog_block:not(.swiper) .item_block .catalog_item .footer_button .button_block,
	.wrapper_inner.front .catalog_block:not(.swiper) .item_block .catalog_item .footer_button .offer_buy_block { width: 100%; }
	.section-content-wrapper .catalog_block .item_block .catalog_item .footer_button .btn,
	.wrapper_inner.front .catalog_block:not(.swiper) .item_block .catalog_item .footer_button .btn { width: 100%; font-size: 12px; padding: 12px 6px; letter-spacing: 0; }
	.section-content-wrapper .catalog_block .item_block .catalog_item .item_info,
	.wrapper_inner.front .catalog_block:not(.swiper) .item_block .catalog_item .item_info { padding-bottom: 6px; }
	.section-content-wrapper .catalog_block .item_block .catalog_item .item-title,
	.wrapper_inner.front .catalog_block:not(.swiper) .item_block .catalog_item .item-title { font-size: 12px; line-height: 1.35; }
}

/* ==== head_custom.php L4753 · hc-card-image-icons-2026-08-26 ==== */
.inner_wrap.TYPE_1 .image_wrapper_block img{box-sizing:border-box;padding-right:min(36px,24%)}
/* M11, 27.08.2026: у компактной карточки TYPE_2 (100 px в каруселях «ранее смотрели» /
   «может понравиться») колонка .like_icons шириной 32 px закрывает треть кадра, и приём
   с паддингом здесь не спасает — резервировать нечего. На телефоне эти кнопки бесполезны:
   сравнение и быстрый просмотр там всё равно не сценарий, а фото товара важнее. Прячем
   только на ≤767 px и только у TYPE_2 — крупная плитка листинга (TYPE_1) не задета. */
@media (max-width:767px){
	.inner_wrap.TYPE_2 .like_icons{display:none!important}
	.inner_wrap.TYPE_2 .image_wrapper_block img{padding-right:0}
}

/* ==== head_custom.php L4776 · hc-card-trust-2026-08-27 ==== */
.hc-trust{display:flex;flex-wrap:wrap;gap:6px 18px;margin:12px 0 0;font-size:13px;line-height:18px}
.hc-trust a{color:#666;border-bottom:1px solid rgba(120,120,120,.35);text-decoration:none}
.hc-trust a:hover{color:#222;border-bottom-color:currentColor}
.hc-trust__i{display:inline-flex;align-items:center;gap:6px}
.hc-trust__i:before{content:'';width:5px;height:5px;border-radius:50%;background:#c2c2c2;flex:0 0 auto}
.hc-card-stock{margin:10px 0 0;font-size:14px;line-height:20px}
.hc-deliv-rates{border-bottom:1px dashed currentColor;text-decoration:none;white-space:nowrap}
.dark-theme .hc-trust a{color:#b8b8b8}

/* ==== head_custom.php L4908 · hc-ux-2026-08-27 ==== */
/* 1) виджет чата — выше кнопок покупки */
.b24-widget-button-wrapper.b24-widget-button-position-bottom-right{bottom:120px!important;right:18px!important}
@media (max-width:767px){
	.b24-widget-button-wrapper.b24-widget-button-position-bottom-right{bottom:132px!important;right:8px!important}
}
/* 2) не показываем пилюлю квиза поверх липкой панели */
@media (max-width:767px){
	body:has(#hc-cta-stick) .hcq-float{display:none!important}
}
/* 3) читаемость мобильной плитки каталога */
@media (max-width:600px){
	.section-content-wrapper .catalog_block .item_block .catalog_item .item-title,
	.wrapper_inner.front .catalog_block:not(.swiper) .item_block .catalog_item .item-title{
		font-size:13px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:3;
		-webkit-box-orient:vertical;overflow:hidden}
	.section-content-wrapper .catalog_block .item_block .catalog_item .cost.prices,
	.wrapper_inner.front .catalog_block:not(.swiper) .item_block .catalog_item .cost.prices{font-size:16px}
	.section-content-wrapper .catalog_block .item_block .catalog_item .muted.font_sxs{font-size:12px}
}
/* 4) поля форм на телефоне: 16 px — порог, ниже которого iOS зумит страницу */
@media (max-width:767px){
	input[type="text"],input[type="tel"],input[type="email"],input[type="search"],
	input[type="number"],input[type="password"],textarea,select{font-size:16px!important}
}
/* 5) блок комментариев на посадочных */
html.hc-no-comments .ordered-block.comments-block{display:none!important}

/* ==== head_custom.php L5023 · hc-ux2-2026-08-27 ==== */
body:has(.hcq-open) .hc-citybar{display:none!important}
@media (max-width:767px){
	body:has(#hc-cta-stick) .hc-citybar{bottom:calc(92px + env(safe-area-inset-bottom))}
	/* 28.08.2026 (UXD-06): заголовок на телефоне ВЕРНУЛИ. Прятали его 27.08 ради
	   первого экрана, а теперь баннер стоит под первым рядом карточек — экономить
	   там нечего, а голая кнопка «Рассчитать бесплатно» без строки о чём речь
	   работает хуже. Подзаголовок и телефон по-прежнему скрыты: телефон живёт
	   в липкой панели внизу. */
	.hc-cta-sect__sub,.hc-cta-sect__phone{display:none!important}
	.hc-cta-sect{padding:12px 14px!important;gap:10px!important;margin-bottom:14px!important}
	.hc-cta-sect__title{font-size:15px!important;margin:0}
}

/* ==== head_custom.php L5064 · hc-rub-glyph ==== */
@font-face{font-family:Montserrat;font-style:normal;font-weight:300;font-display:swap;src:url(/upload/hc_fonts/hc-montserrat-rub-300.woff2?v=20260827) format('woff2');unicode-range:U+20BD}
@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(/upload/hc_fonts/hc-montserrat-rub-400.woff2?v=20260827) format('woff2');unicode-range:U+20BD}
@font-face{font-family:Montserrat;font-style:normal;font-weight:500;font-display:swap;src:url(/upload/hc_fonts/hc-montserrat-rub-500.woff2?v=20260827) format('woff2');unicode-range:U+20BD}
@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(/upload/hc_fonts/hc-montserrat-rub-600.woff2?v=20260827) format('woff2');unicode-range:U+20BD}
@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url(/upload/hc_fonts/hc-montserrat-rub-700.woff2?v=20260827) format('woff2');unicode-range:U+20BD}

/* ==== head_custom.php L5082 · hc-ux3-2026-08-27 ==== */
.hc-tab-h2{margin:0;font-size:inherit;font-weight:inherit;line-height:inherit;display:inline;letter-spacing:inherit}
h2.ordered-block__title.hc-tab-h2{display:block}
.hc-land-allsec{margin:2px 0 14px;font-size:14px}
.hc-land-allsec a{border-bottom:1px dashed currentColor;text-decoration:none}
.hc-filter-empty{padding:14px 16px;border:1px solid #e3e3e3;border-radius:4px;margin:0 0 16px;font-size:14px;line-height:1.5}
.dark-theme .hc-filter-empty{border-color:#3a3a3a}
#del_filter.hc-shown{display:inline-block!important}
@media (max-width:767px){
	#mobilefilter label,.bx_filter_param_label{min-height:44px}
	.module-pagination .nums a,.module-pagination .nums span{min-width:40px;min-height:40px;line-height:40px}
	.catalog_detail h1{font-size:22px!important;line-height:1.2!important}
}
/* M6, шапка — правка 28.08.2026, две итерации по замечаниям Кирилла.
   1) Первая версия давала иконкам min-width:44px ВНУТРИ их штатных ячеек .wrap_icon
      (у тех свои боковые паддинги по 10px), .right-icons распухал со 166 до 245px,
      а рядом с бургером и логотипом свободно 215px на 390-м экране и 221 на 440-м —
      блок иконок уезжал на вторую строку и вылезал за пределы шапки. Лечится тем,
      что 44px набираются ЗА СЧЁТ паддингов ячейки: ширина строки остаётся 181px.
      Правило включается с 360px — на 320px даже штатная раскладка идёт впритык.
   2) 🔴 Вертикаль ломал `display:flex;align-items:center;min-height:44px`. Тема
      выравнивает иконки шапки СВОИМ `line-height:63px` на всю высоту строки, и у
      каждой иконки свой оптический сдвиг внутри этой строки. Наш флекс-бокс высотой
      44px вставал по верху ячейки и центровал глиф уже в себе: телефон и поиск
      уехали на 12px вверх, кабинет на 9 — иконки перестали стоять в линию (заметно
      глазом, замер: центры 19/18/23 при 30 у корзины и логотипа).
      Поэтому по вертикали НИЧЕГО не навязываем — только ширина и центровка глифа
      по горизонтали. Высота зоны нажатия при этом 63px (line-height темы), то есть
      требование M6 «44px» выполняется с запасом, а центры сходятся в 29–31. */
@media (min-width:360px) and (max-width:767px){
	#mobileheader .wrap_icon:not(.wrap_basket){padding-left:0;padding-right:0}
	#mobileheader .wrap_icon.wrap_basket{padding-right:6px}
	#mobileheader .top-btn,#mobileheader .personal-link{min-width:44px;text-align:center}
	/* у темы .personal-link — display:inline, а на inline min-width не действует вообще:
	   без этой строки зона нажатия «кабинета» остаётся 18×19 px. Ставим inline-block, а не
	   flex: line-height:63px темы должен продолжать выравнивать глиф по строке. */
	#mobileheader .personal-link{display:inline-block}
}

/* ==== head_custom.php L5332 · hc-carthdr-2026-08-28 ==== */
@media (max-width:767px){
	.logo-row:has(.back-mobile-arrow) .logo{position:relative;top:4px}
	/* margin-top у стрелки перебить не вышло — у темы правило сильнее, поэтому сдвигаем
	   так же, как логотип и телефон: относительным смещением */
	.logo-row:has(.back-mobile-arrow) .back-mobile-arrow{position:relative;top:-2px}
	.logo-row:has(.back-mobile-arrow) .wrap_icon.wrap_phones .top-btn{position:relative;top:-1px}
}

/* ==== head_custom.php L5692 · hc-ux4-2026-08-28 ==== */
@media (min-width:768px){
	.hc-cta-sect{padding:12px 20px!important;margin:2px 0 14px!important;gap:14px!important}
	.hc-cta-sect__sub{display:none!important}
	.hc-cta-sect__title{font-size:17px!important;line-height:1.25!important}
	.hc-cta-sect .hc-cta-sect__btn{padding-top:9px!important;padding-bottom:9px!important}
}

/* ==== head_custom.php L5925 · hc-ux4-2026-08-28 ==== */
.bx_filter_parameters_box[data-prop_code=ton],
.bx_filter_parameters_box[data-prop_code=gruppa_razmerov],
.bx_filter_parameters_box[data-prop_code=naznachenie]{display:none!important}

/* ==== head_custom.php L5985 · hc-megamenu-2026-09-02 ==== */
/* высота панели — по окну, а не 485px */
.wrapper1 .menu-row .mega-menu table td.wide_menu .dropdown-menu:not(.long-menu-items) .customScrollbar{
	max-height:calc(100vh - var(--hc-mm-top,146px) - 20px)}
/* пункты — в колонки, а не в ряды */
.wrapper1 .menu-row .mega-menu table td.wide_menu>.wrap>.dropdown-menu:not(.long-menu-items):not(.with_right_block) ul.menu-wrapper.menu-type-1{
	column-count:4;column-gap:0;padding:26px 40px 2px;height:auto}
@media (min-width:1700px){
	.wrapper1 .menu-row .mega-menu table td.wide_menu>.wrap>.dropdown-menu:not(.long-menu-items):not(.with_right_block) ul.menu-wrapper.menu-type-1{column-count:5}}
@media (max-width:1199px){
	.wrapper1 .menu-row .mega-menu table td.wide_menu>.wrap>.dropdown-menu:not(.long-menu-items):not(.with_right_block) ul.menu-wrapper.menu-type-1{column-count:3}}
.wrapper1 .menu-row .mega-menu table td.wide_menu>.wrap>.dropdown-menu:not(.long-menu-items):not(.with_right_block) ul.menu-wrapper.menu-type-1>li{
	/* flow-root: пункт снова содержит свои плавающие потомки (у Aspro это делал float:left самого пункта) */
	display:flow-root;float:none;width:auto;clear:none;margin:0 0 22px;
	-webkit-column-break-inside:avoid;page-break-inside:avoid;break-inside:avoid}
/* строки подразделов чуть плотнее: 27 → 25 px (для мыши достаточно), чтобы весь каталог влезал на 1366x768 */
.wrapper1 .menu-row .mega-menu table td.wide_menu>.wrap>.dropdown-menu:not(.long-menu-items):not(.with_right_block) ul.menu-wrapper.menu-type-1>li>.dropdown-menu>li>a{
	padding-top:6px!important}
/* подсказка «ниже есть ещё», когда панель всё-таки прокручивается */
.wrapper1 .menu-row .mega-menu table td.wide_menu>.wrap>.dropdown-menu.hc-mm-scroll::after{
	content:"";position:absolute;left:0;right:14px;bottom:0;height:64px;pointer-events:none;
	background:linear-gradient(to bottom,rgba(255,255,255,0),var(--card_bg_black,#fff))}

/* ==== head_custom.php L6112 · hc-mobile-menu-2026-09-02 ==== */
/* строка категории/подраздела: иконка | название | шеврон */
#mobilemenu .menu.top-mobile-menu ul > li > a.top-mobile-menu__link{
	display:flex;align-items:center;gap:14px;padding:9px 46px 9px 19px;min-height:54px;line-height:1.3}
#mobilemenu .menu.top-mobile-menu ul > li > a.top-mobile-menu__link .top-mobile-menu__image{
	flex:0 0 36px;width:36px;height:36px;margin:0;display:flex;align-items:center;justify-content:center}
#mobilemenu .menu.top-mobile-menu ul > li > a.top-mobile-menu__link .top-mobile-menu__image img{
	max-width:36px;max-height:36px;width:auto;height:auto;margin:0}
#mobilemenu .menu.top-mobile-menu ul > li > a.top-mobile-menu__link .top-mobile-menu__title{
	flex:1 1 auto;display:block;padding:0;min-width:0}
/* шеврон вместо треугольника 3x5 — во всех блоках бургера (каталог, город, телефоны) */
#mobilemenu .menu ul > li > a > .arrow{height:100%;top:0}
#mobilemenu .menu ul > li > a > .arrow i{display:none}
#mobilemenu .menu ul > li > a > .arrow::after{
	content:"";position:absolute;right:21px;top:50%;width:8px;height:8px;
	border-right:2px solid #9a9a9a;border-bottom:2px solid #9a9a9a;transform:translateY(-60%) rotate(-45deg)}
/* заголовок уровня — ссылка на раздел, строкой */
#mobilemenu .menu.top-mobile-menu ul > li.menu_title{padding:0}
#mobilemenu .menu.top-mobile-menu ul > li.menu_title > a{
	display:block;position:relative;padding:13px 46px 13px 19px;min-height:56px;line-height:1.3;font-size:16px}
#mobilemenu .menu.top-mobile-menu ul > li.menu_title > a .hc-mm-hint{
	display:block;font-size:12px;font-weight:400;color:#8a8a8a;margin-top:2px}
#mobilemenu .menu.top-mobile-menu ul > li.menu_title > a::after{
	content:"";position:absolute;right:21px;top:50%;width:8px;height:8px;
	border-right:2px solid #9a9a9a;border-bottom:2px solid #9a9a9a;transform:translateY(-60%) rotate(-45deg)}
/* лента категорий на корне /catalog/ */
.hc-cat-jump{display:none}
@media (max-width:767px){
	.hc-cat-jump{display:flex;gap:8px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;
		margin:0 -15px 14px;padding:2px 15px 6px;scroll-snap-type:x proximity}
	.hc-cat-jump::-webkit-scrollbar{display:none}
	.hc-cat-jump a{flex:0 0 auto;scroll-snap-align:start;white-space:nowrap;font-size:13px;line-height:18px;
		padding:8px 13px;border-radius:20px;border:1px solid var(--stroke_black,#e5e5e5);color:inherit;text-decoration:none;
		background:var(--card_bg_black,#fff)}
	.hc-cat-jump a:active{border-color:#EE2C2D;color:#EE2C2D}
}

/* ==== head_custom.php L6206 · hc-section-count-2026-09-03 ==== */
.topic__heading > h1 + style ~ .element-count-wrapper{display:none}

/* ==== head_custom.php L6219 · hc-section-count-2026-09-03 ==== */
.title-search-price .hc-search-unit{font-size:.82em;font-weight:400;color:#8a8a8a;margin-left:1px}

/* ==== head_custom.php L6221 · hc-topbar-20260911 ==== */
/* hc-topbar-20260911: regional contact strip */
@media (min-width: 992px) {
 .top-block.header-v16 { background:#f7f7f5; border-bottom:1px solid #e9e9e6; }
 .top-block.header-v16 .logo_and_menu-row, .top-block.header-v16 .logo-row { background:transparent!important; }
 .top-block.header-v16 .header__top-inner { display:grid!important; grid-template-columns:auto auto minmax(200px,1fr) auto; align-items:center; gap:32px; min-height:64px; padding:8px 0; margin:0!important; width:100%!important; max-width:100%; }
 .top-block.header-v16 .header__top-inner > .header__top-item { margin:0!important; padding:0!important; width:auto!important; min-width:0; float:none; }
 .top-block.header-v16 .header__top-inner > .header__top-item:first-child { padding-right:28px!important; border-right:1px solid #deded9; }
 .top-block.header-v16 .top-description { margin:0; padding:0; }
 .top-block.header-v16 .region_wrapper { margin:0; }
 .top-block.header-v16 .region_wrapper > .io_wrapper { display:flex; align-items:center; gap:8px; }
 .top-block.header-v16 .region_wrapper .svg-inline-mark { display:inline-flex!important; position:static; margin:0; width:14px; height:14px; flex:none; opacity:.65; }
 .top-block.header-v16 .city_title { display:none; }
 .top-block.header-v16 .js_city_chooser { display:inline-flex; align-items:center; gap:8px; min-height:36px; padding:0; font-size:13px; font-weight:500; color:#343331; white-space:nowrap; }
 .top-block.header-v16 .js_city_chooser .arrow { position:static; margin:0; }
 .top-block.header-v16 .phone-block { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:1px; margin:0; padding:0; }
 .top-block.header-v16 .phone-block > .inline-block { display:block; margin:0!important; padding:0!important; line-height:20px; }
 .top-block.header-v16 .phone-block .phone { display:block!important; margin:0; padding:0; line-height:22px; white-space:nowrap; }
 .top-block.header-v16 .phone-block .phone > a { font-size:15px; line-height:22px; font-weight:700; letter-spacing:0; }
 .top-block.header-v16 .phone-block .callback-block { display:inline-block; padding:0; font-size:11px; line-height:18px; letter-spacing:.02em; text-transform:none; }
 .top-block.header-v16 .addr-block > div { max-width:540px; }
 .top-block.header-v16 .address { max-width:none!important; width:auto!important; display:flex!important; align-items:center; gap:10px; margin:0; padding:0; font-size:12px; line-height:18px; color:#66655f; text-wrap:pretty; }
 .top-block.header-v16 .address > .svg-inline-addr { display:inline-flex!important; position:static; margin:0; width:12px; height:16px; flex:none; opacity:.65; }
 .top-block.header-v16 .right-icons { justify-self:end; }
 .top-block.header-v16 .right-icons > .line-block { gap:24px; margin:0; }
 .top-block.header-v16 .right-icons .line-block__item { padding:0; }
 .top-block.header-v16 .right-icons .top-btn,
 .top-block.header-v16 .right-icons .personal-link { display:inline-flex; align-items:center; gap:9px; min-height:36px; padding:0; white-space:nowrap; }
 .top-block.header-v16 .right-icons .svg { margin:0; }
 .top-block.header-v16 .right-icons .title,
 .top-block.header-v16 .right-icons .name { font-size:11px; letter-spacing:.04em; }
}
@media (min-width:992px) and (max-width:1199px) {
 .top-block.header-v16 .header__top-inner { gap:20px; grid-template-columns:auto auto minmax(160px,1fr) auto; }
 .top-block.header-v16 .header__top-inner > .header__top-item:first-child { padding-right:18px!important; }
 .top-block.header-v16 .right-icons > .line-block { gap:18px; }
 .top-block.header-v16 .right-icons .title,
 .top-block.header-v16 .right-icons .personal-link .wrap { display:none; }
}

/* ==== head_custom.php L6262 · hc-topbar-dark-20260911 ==== */
/* hc-topbar-dark-20260911 */
@media (min-width:992px) and (prefers-color-scheme:dark) {
 .top-block.header-v16 { background:#242424; border-bottom-color:#3a3a3a; color:#ededed; }
 .top-block.header-v16 .header__top-inner > .header__top-item:first-child { border-right-color:#454545; }
 .top-block.header-v16 .js_city_chooser,
 .top-block.header-v16 .phone-block .phone > a,
 .top-block.header-v16 .right-icons .top-btn,
 .top-block.header-v16 .right-icons .personal-link,
 .top-block.header-v16 .right-icons .title,
 .top-block.header-v16 .right-icons .name { color:#ededed; }
 .top-block.header-v16 .address { color:#c6c6c2; }
 .top-block.header-v16 .phone-block .callback-block { color:#ff7975; }
 .top-block.header-v16 .region_wrapper .svg,
 .top-block.header-v16 .address > .svg,
 .top-block.header-v16 .phone > .svg,
 .top-block.header-v16 .right-icons .svg { fill:#c6c6c2; color:#c6c6c2; opacity:1; }
 .top-block.header-v16 .js_city_chooser:hover,
 .top-block.header-v16 .phone-block .phone > a:hover,
 .top-block.header-v16 .right-icons .top-btn:hover,
 .top-block.header-v16 .right-icons .personal-link:hover { color:#ff7975; }
}

/* ==== head_custom.php L6286 · hc-page-contrast-20260911 ==== */
/* hc-page-contrast-20260911: maintain contrast inside deliberately light page blocks. */
@media (prefers-color-scheme:dark) {
 #hc-seven { color-scheme:light; --white_text_black:#302c29; --fill_dark_light:#302c29; }
 #hc-seven .news2, #hc-seven .news2 .items, #hc-seven .news2 .item-wrap { background:transparent; }
 #hc-seven .head-block,
 #hc-seven .head-block .item-link,
 #hc-seven .ajax_load_btn,
 #hc-seven .menu_item_selected { background:#fff; color:var(--ink); border-color:var(--line); }
 #hc-seven .ajax_load_btn:hover { background:#eeece6; color:var(--ink); }
 #hc-seven .text_before_items,
 #hc-seven .text_before_items p,
 #hc-seven .text_before_items b,
 #hc-seven .text_before_items a,
 #hc-seven .partners .title,
 #hc-seven .news2 .title a,
 #hc-seven .head-block .dark_link,
 #hc-seven .head-block .btn-inline,
 #hc-seven .hc-sale-archive .dark_link,
 #hc-seven .hc-sale-archive .ordered-block__title { color:var(--ink)!important; }
 #hc-seven .news2 .title a:hover,
 #hc-seven .head-block .dark_link:hover,
 #hc-seven .hc-sale-archive .dark_link:hover { color:var(--red)!important; }
 #hc-services { color-scheme:light; --white_text_black:#302c29; }
 #hc-services .hc-svc__step-ttl { color:#302c29!important; }
 #hc-services .hc-svc__facts table,
 #hc-services .hc-svc__facts tr,
 #hc-services .hc-svc__facts td,
 #hc-services .hc-svc__facts th { background:#fff; color:#302c29; border-color:#dfddd6; }
 #hc-services .hs-photo-caption, #hc-tools .ht-image-label { background:#302c29; color:#fff; padding:5px 9px; border-radius:3px; }
 #hc-contacts .visit-guide h3 { color:#302c29; }
 .hcq-cta .hcq-cta__txt { color:#343434; }
 .hcq-cta .hcq-cta__txt b { color:#343434; }
 .sticker_na_sklade { color:#16370d!important; }
 .bx_filter .bx_ui_slider_part span { color:#343434; }
 .page404 .subtitle404, .error404 .subtitle404, h1.subtitle404 { color:#ededed!important; }
}

/* /upload/hc_js/hc-w4-catalog.css */

/* ХИТ КЕРАМИКС · CSS head_custom только для /catalog/* · собрано 26.09.2026 (аудит A1 W4, p1_perf-01) из инлайн-блоков
   include/header_include/head_custom.php. Порядок блоков = порядок в файле (каскад сохранён).
   Правка: меняешь этот файл → поднимаешь ?v= в head_custom.php (у /upload/hc_js/ кеш браузера 30 дней). */

/* ==== head_custom.php L1464 · Каталог ==== */
/* ——— 1. Корневая страница каталога: сетка разделов ——— */
/* Карточки тянутся на всю высоту ячейки, иначе рядом с длинным списком
   («Декоративный камень», 9 коллекций) короткие карточки висят в воздухе */
.catalog_section_list .item_block { display: flex; }
.catalog_section_list .item_block > .section_item { width: 100%; }

/* Подкатегории: тёмно-серым вместо #F35C50 (контраст 3.25 на белом при кегле 13px),
   красный оставлен на наведение. Цвет отдаём теме — в тёмной он белый */
.catalog_section_list .section_info li.sect a,
.catalog_section_list .section_info li.sect a.muted777 {
	color: #333;
	color: var(--white_text_black, #333);
	font-size: 14px;
	line-height: 24px;
}
.catalog_section_list .section_info li.sect a:hover,
.catalog_section_list .section_info li.sect a.muted777:hover { color: #EE2C2D; }

/* «Ещё N» — разворачивает скрытые подкатегории (скрипт ниже) */
.catalog_section_list .section_info li.hc-more a {
	color: #777;
	color: var(--light_basic_text_black, #777);
	border-bottom: 1px dashed currentColor;
	cursor: pointer;
	font-size: 13px;
}
.catalog_section_list .section_info li.hc-more a:hover { color: #EE2C2D; }

/* SEO-текст под каталогом — во всю ширину контейнера, по тем же вертикальным
   линиям, что «Ранее вы смотрели» и карточки. Ширину НЕ ограничивать:
   31.08 перебрали колонку 780px у левого края, две колонки и колонку по центру —
   Кирилл забраковал всё, нужен текст от края до края контейнера. */
.hc-catalog-intro { max-width: none; }
.hc-catalog-intro p { margin: 0 0 1.15em; }
.hc-catalog-intro p:last-child { margin-bottom: 0; }
/* На листинге с левой колонкой фильтра (/catalog/?q=…, отфильтрованный каталог)
   текст начинался от края контейнера и уезжал под фильтр. Сдвигаем его на ширину
   левого блока, чтобы он шёл по одной вертикали с карточками товаров
   (Кирилл 31.08 нарисовал эту линию на скрине). У Aspro .left_block = 258px
   от 1300px и 244px ниже, gap 32px; под 992px фильтр скрыт и сдвиг не нужен.
   На корне /catalog/ .left_block отсутствует — :has() не сработает, текст
   остаётся во всю ширину. !important — у блока свой инлайновый style="margin:30px 0 10px" */
@media (min-width: 992px) {
	.main-catalog-wrapper:has(> .left_block) + .hc-catalog-intro { margin-left: 276px !important; }
}
@media (min-width: 1300px) {
	.main-catalog-wrapper:has(> .left_block) + .hc-catalog-intro { margin-left: 290px !important; }
}

@media (max-width: 767px) {
	/* Одна колонка строкой-списком: две колонки ломали заголовки на три строки,
	   а иконка раздувалась до половины экрана */
	.catalog_section_list .item_block.col-xs-6 { width: 100%; float: none; }
	.catalog_section_list .section_item { padding: 16px 18px; }
	.catalog_section_list .section_item_inner { width: 100%; }
	.catalog_section_list .section_item tr { display: flex; align-items: flex-start; }
	.catalog_section_list .section_item tr td { display: block; }
	.catalog_section_list .section_item td.image {
		width: 64px; min-width: 64px; flex: 0 0 64px;
		padding: 0 14px 0 0; margin: 0;
	}
	.catalog_section_list .section_item td.image img { width: 64px; height: auto; }
	.catalog_section_list .section_item td.section_info {
		text-align: left; vertical-align: top; padding: 0;
	}
}

/* ——— 2. Плитка товаров в разделе ——— */
/* Пять пустых звёзд у всех товаров читаются как «этого никто не купил».
   Прячем только там, где оценок нет; появится первая — блок вернётся */
/* Кнопка «В корзину» была видна только по наведению — на тачскрине недоступна вовсе.
   Делаем блок частью карточки, а не всплывающим слоем под ней */
.section-content-wrapper .ajax_load.block .item_block .footer_button {
	display: block;
	opacity: 1;
	visibility: visible;
	height: auto;
}
@media (min-width: 601px) {
	html:not(.mobile) .section-content-wrapper .catalog_block .item_block .catalog_item:not(.big) .footer_button {
		position: static;
		/* всплывающий слой лежал ПОВЕРХ отступов карточки, во всю её ширину;
		   став частью потока, блок влез внутрь padding:25px у .inner_wrap и потерял
		   50 px — из-за этого чипсы размеров вставали по одному в строку, а «шт»
		   отрывалось от подписи. Возвращаем ширину отрицательными полями.
		   07.08.2026: −24, а не −25. Карточки в ряду стоят вплотную, разделяет их
		   только рамка .inner_wrap (box-shadow: inset 0 0 0 1px #ececec). При −25 полоса
		   накрывала эту рамку, и красная «В корзину» одной карточки сливалась с красной
		   «Под заказ» соседней в один широкий прямоугольник с двумя подписями.
		   Один пиксель с каждой стороны оставляет рамку видимой — вертикальная линия
		   сетки идёт насквозь, цвет берётся из темы (тёмная подхватывается сама) */
		margin: 12px -24px 0;
		width: auto;
		background: transparent;
		border-color: transparent;
		box-shadow: none;
	}
	/* Габарит строки «В корзину». Кнопка у Aspro размера btn-exlg: padding 20/19 +
	   строка 15,7 = 56,7 px. На всплывающем слое карточка была шире (≈380 px) и
	   такая высота читалась нормально — 15 % ширины; в сетке из четырёх колонок
	   карточка 262 px, и та же кнопка стала занимать 22 % — «поля» выглядят выше,
	   чем на старой карточке (замечание Кирилла 06.08). Ужимаем до 44,7 px —
	   это те же 15 % при карточке 302 px и остаётся комфортной целью для пальца.
	   Мобильную раскладку не трогаем: там карточка широкая и высота уместна.

	   🔴 07.08.2026: правило перечисляло классы .to-cart/.in-cart и пропускало ещё две
	   кнопки той же строки — .to-order («Под заказ», у товаров с ценой по запросу) и
	   .read_more («Подробнее», у товаров с несколькими ТП, лежит в .offer_buy_block,
	   а НЕ в .button_block). Они оставались родными 57 px, тогда как соседи по ряду —
	   45 px. Высоту ряда задаёт самая высокая карточка, поэтому низ у всех совпадал,
	   а верх кнопки уезжал на 12 px вверх: в ряду со смешанными кнопками полоса
	   получалась ступенькой (скрин Кирилла 07.08). На /catalog/stroitelnye_smesi/
	   таких рядов было 7 из 16. Цепляемся за общий у Aspro размерный класс .btn-exlg —
	   он есть у всех четырёх кнопок, новые варианты подхватятся сами */
	html:not(.mobile) .section-content-wrapper .catalog_block .item_block .catalog_item:not(.big) .footer_button .btn-exlg,
	html:not(.mobile) .section-content-wrapper .catalog_block .item_block .catalog_item:not(.big) .footer_button .counter_block input.text {
		padding-top: 14px;
		padding-bottom: 13px;
	}
}
/* 06.08.2026 (вечер, просьба Кирилла): счётчик количества и выбор размера/цвета/
   единицы измерения в плитке ВОЗВРАЩЕНЫ — карточка снова как была.
   Прятавшие их правила убраны намеренно, не восстанавливать. */

/* 07.08.2026 (просьба Кирилла): «карточка стала полностью статичная — раньше
   информация под Корзиной появлялась только по наведению». Возвращаем это
   поведение выбору размера/цвета/единицы измерения: по умолчанию слоя нет,
   на наведении он выпадает под карточкой — как было у Aspro до правок 06.08.
   Строку «В корзину» НЕ прячем: её выносили в поток как раз потому, что на
   тачскрине всплывающий слой недоступен.
   Якорь слоя — .catalog_item_wrapp (у него position:relative), поэтому top:100%
   попадает ровно под строку «В корзину»; right:-1px повторяет margin-right:-1px
   у .inner_wrap, иначе слой на пиксель уже карточки.
   Карточка от этого в сетке не растёт: sku_props уходит из потока и её высота
   падает с 754 до 533 px (замер 1600 px, четыре колонки).
   Гейт html:not(.mobile) — не опечатка: класс `mobile` Aspro вешает по ШИРИНЕ
   (появляется ниже ~1000 px), там раскладка карточки другая и всё остаётся
   статичным, как и должно быть на тач-устройствах. */
@media (min-width: 601px) {
	html:not(.mobile) .section-content-wrapper .catalog_block .item_block .catalog_item:not(.big) .footer_button .sku_props {
		position: absolute;
		left: 0;
		right: -1px;
		top: 100%;
		z-index: 2;
		/* СВОИХ горизонтальных отступов не задавать: у .bx_catalog_item_scu внутри
		   уже есть padding 16px 26px 20px. Мои 25px складывались с ними — контент
		   терял 50 px, чипсы размеров вставали по одному в строку, а «шт»
		   отрывалось от подписи (те же симптомы, что 06.08 у блока в потоке) */
		padding: 0;
		background: #fff;
		background: var(--card_bg_hover_black, #fff);
		box-shadow: 0 14px 20px 0 rgba(0, 0, 0, .07);
		opacity: 0;
		visibility: hidden;
		transition: opacity .1s ease, visibility .1s ease;
	}
	/* На самом узком десктопе (1366 px, карточка 338) три чипа размера кирпича
	   требуют 288 px (93+86+94 + по 5 px правого поля), а контента при родных
	   26 px отступа ровно 287 — не хватает ОДНОГО пикселя, и третий размер
	   срывается на вторую строку. Подрезаем боковой отступ до 22 px: даёт 294 px
	   и запас 6 px, на глаз отличие от исходных 26 px незаметно.
	   Только в плитке — на детальной карточке отступы не трогаем */
	html:not(.mobile) .section-content-wrapper .catalog_block .item_block .catalog_item:not(.big) .footer_button .sku_props > .bx_catalog_item_scu {
		padding-left: 22px;
		padding-right: 22px;
	}
	/* Наведение ловим на .item_block: слой лежит ЗА пределами карточки геометрически,
	   но остаётся её потомком в DOM — поэтому, уводя курсор на сам слой (выбрать
	   размер), пользователь его не закрывает. `.hover` — класс от скриптов Aspro */
	html:not(.mobile) .section-content-wrapper .catalog_block .item_block:hover .catalog_item:not(.big) .footer_button .sku_props,
	html:not(.mobile) .section-content-wrapper .catalog_block .item_block .catalog_item:not(.big).hover .footer_button .sku_props {
		opacity: 1;
		visibility: visible;
	}
	/* Без подъёма карточки слой уходит ПОД следующую в строке: у .col-* стоит
	   position:relative с z-index:auto, и они рисуются в порядке DOM */
	html:not(.mobile) .section-content-wrapper .catalog_block .item_block:hover .catalog_item:not(.big) {
		z-index: 5;
	}
}

/* Четвёртая колонка включается с 1200 px (col-lg-3), но при левом фильтре под товары
   остаётся ~860 px — карточка сжимается до 216 px, и всё в ней выглядит громоздким.
   Ширину задаёт правило Аспро с `#main` — перебить можно только не меньшей
   специфичностью, «.catalog_block .item_block.col-lg-3» молча проигрывает.

   07.08.2026: верхняя граница 1349 px снята, три колонки держим на всём десктопе
   (решение Кирилла — «верни как было», прислал образец с карточкой ≈370 px).
   🔴 Причина, по которой ограничивать сверху бессмысленно: контейнер каталога
   упирается в ~1400 px, поэтому при ЧЕТЫРЁХ колонках карточка равна 302 px и на
   1600, и на 1920, и на 4K — шире она уже не станет. А в 302 px три чипа размера
   кирпича (93+86+94 + зазоры ≈ 283 px при контенте 250 px) не помещаются физически,
   при любом отступе. Три колонки дают 338 px на 1366 и ~400 px на 1920 — размеры
   встают в одну строку, как на образце.
   Без левого фильтра карточка и так ~350 px, там правило не нужно. */
@media (min-width: 1200px) {
	#main .catalog_page .section-content-wrapper.with-leftblock .catalog_block .item_block.col-lg-3:not(.custom-line),
	#main .catalog_in_content .section-content-wrapper.with-leftblock .catalog_block .item_block.col-lg-3:not(.custom-line) {
		width: 33.3333%;
	}
}

/* Товар «под заказ» (цена по запросу): у него нет ни одного доступного торгового
   предложения, поэтому Aspro метит ВСЕ варианты классом .missing и гасит их до
   opacity .3 — размер, цвет и единица измерения выглядят недоступными, хотя выбирать
   там попросту не из чего (замечание Кирилла 06.08). Гасить нечего — возвращаем
   нормальный вид. Там, где часть вариантов доступна, .missing остаётся как было:
   бледный вариант честно говорит, что этой комбинации нет.
   Признак карточки «под заказ» — кнопка `.to-order` (у обычной `.to-cart`). */
.catalog_item:has(.to-order) .sku_props ul li.missing,
.catalog_item.hc-to-order .sku_props ul li.missing,
.catalog_detail:has(.to-order) .sku_props ul li.missing,
.catalog_detail.hc-to-order .sku_props ul li.missing { opacity: 1; }
.catalog_item:has(.to-order) .sku_props ul li.missing .cnt_item,
.catalog_item.hc-to-order .sku_props ul li.missing .cnt_item,
.catalog_detail:has(.to-order) .sku_props ul li.missing .cnt_item,
.catalog_detail.hc-to-order .sku_props ul li.missing .cnt_item { opacity: 1; }
/* перечёркивание образца цвета — диагональ рисует .cnt1::before градиентом */
.catalog_item:has(.to-order) .sku_props ul li.missing .cnt1:before,
.catalog_item.hc-to-order .sku_props ul li.missing .cnt1:before,
.catalog_detail:has(.to-order) .sku_props ul li.missing .cnt1:before,
.catalog_detail.hc-to-order .sku_props ul li.missing .cnt1:before { display: none; }

/* ——— 3. Фильтр ——— */
/* Фильтр стоял под деревом каталога, то есть за первым экраном */
.left_block .sticky-sidebar__inner { display: flex; flex-direction: column; }
.left_block .sticky-sidebar__inner > .bx_filter { order: -1; }

/* Порядок блоков внутри фильтра: цена и то, чем реально выбирают, — наверх */
.bx_filter .bx_filter_parameters { display: flex; flex-direction: column; }
.bx_filter .bx_filter_parameters > * { order: 20; }
.bx_filter .bx_filter_parameters > input { order: 0; }
.bx_filter .bx_filter_parameters_box[data-prop_code="aspro_filter_sort"] { order: 1; }
.bx_filter .bx_filter_parameters_box:not([data-prop_code]) { order: 2; }
.bx_filter .bx_filter_parameters_box[data-prop_code="proizvoditel"] { order: 3; }
.bx_filter .bx_filter_parameters_box[data-prop_code="tcvet_tp"] { order: 4; }
.bx_filter .bx_filter_parameters_box[data-prop_code="razmer_mm"] { order: 5; }
.bx_filter .bx_filter_parameters_box[data-prop_code="format"] { order: 6; }
.bx_filter .bx_filter_parameters_box[data-prop_code="poverkhnost"] { order: 7; }
.bx_filter .bx_filter_parameters_box[data-prop_code="chasto_ishchut"] { order: 8; }
.bx_filter .bx_filter_parameters_box[data-prop_code="strana"] { order: 9; }
/* блок с единственным значением ничего не отфильтровывает, но это характеристика раздела («Страна: Италия» у всей
   серии Rondine Colors). 29.09 Кирилл: «не сделан фильтр по характеристикам» — в 37 разделах-сериях из 116 от фильтра
   оставался один «Цвет». Не прячем, уводим вниз — за блоки, которые реально делят раздел (важнее order:2.5 у Размера). */
.bx_filter .bx_filter_parameters_box.hc-single-value { order: 30 !important; }

/* ——— 4. Чипсы над каталогом ——— */
.landings-list__info-wrapper.hc-grouped { display: block; }
.hc-chip-group { display: flex; flex-wrap: wrap; align-items: center; margin: 0 0 6px; }
.hc-chip-group__label {
	flex: 0 0 auto;
	margin: 0 10px 6px 0;
	color: #777;
	color: var(--light_basic_text_black, #777);
	font-size: 13px;
	white-space: nowrap;
}
.hc-chip-group .landings-list__item { margin-right: 6px; }
.hc-chip-swatch {
	display: inline-block;
	width: 12px; height: 12px;
	margin: -1px 6px 0 0;
	border-radius: 50%;
	border: 1px solid rgba(0,0,0,.18);
	vertical-align: middle;
}
@media (max-width: 767px) {
	.hc-chip-group { margin-bottom: 4px; }
	.hc-chip-group__label { flex-basis: 100%; margin-bottom: 3px; }
}

/* ==== head_custom.php L3130 · hc-oneclick-cta-2026-08-28 ==== */
/* hc-oneclick-cta: кнопка быстрого заказа под строкой «В корзину» */
.hc-ocb{display:flex;align-items:center;justify-content:center;width:100%;box-sizing:border-box;
	min-height:36px;margin:6px 0 0;padding:8px 10px;
	border:1px solid var(--stroke_black,#e0e0e0);border-radius:4px;background:transparent;
	font-size:12.5px;font-weight:600;line-height:1.15;text-align:center;
	color:var(--white_text_black,#333);cursor:pointer;
	transition:border-color .15s,color .15s;-webkit-user-select:none;user-select:none}
.hc-ocb:hover{border-color:#EE2C2D;color:#EE2C2D}
.hc-ocb-item{margin:6px 0 0;font-size:13px;line-height:1.35;opacity:.75}
/* на тачскрине цель пальца не меньше 44 px */
@media (max-width:600px){.hc-ocb{min-height:44px;font-size:13px}}

/* ==== head_custom.php L6053 · hc-catalog-root-2026-09-02 ==== */
.catalog_section_list .section_item{cursor:pointer}
.catalog_section_list .section_item:hover li.name a{color:#EE2C2D}
@media (min-width:768px){
	.catalog_section_list .section_item li.name a{font-size:16px}}
@media (max-width:767px){
	.catalog_section_list .section_info li.sect{padding:0}
	.catalog_section_list .section_info li.sect a{display:block;padding:7px 0;line-height:22px}
	.catalog_section_list .section_info li.hc-more a{display:inline-block;padding:8px 0}
	.catalog_section_list .section_item li.name a{display:inline-block;padding:4px 0}}

/* ==== hc-w4-cls-2026-09-26 (аудит A1 W4, p1_perf-09) ==== */
/* CLS разделов каталога на десктопе: CTA квиза «Не хотите листать весь каталог?» (/upload/hc_js/hc-quiz-20260914.js)
   вставляется на DOMContentLoaded ПЕРЕД .main-catalog-wrapper, то есть над всем каталогом, и сдвигал его на 129 px
   (0,05–0,08 CLS на керамблоках, 1440×900). Высота CTA на десктопе постоянна: 18 + 93 + 18 = 129 px при 992–1920 px.
   Резервируем это место заранее, пока CTA нет; как только он встал — резерв снимается тем же селектором (сдвиг 0).
   Условие резерва = условию вставки в квизе: страница /catalog/* (этот файл только там) с листингом .js_wrapper_items.
   На телефоне листинг ниже первого экрана — сдвиг CLS не даёт, резерва нет. Браузеры без :has() — как было. */
@media (min-width:992px){
	.container:has(> .main-catalog-wrapper .js_wrapper_items):not(:has(> .hcq-cta)) > .main-catalog-wrapper{margin-top:129px}
}

/* ==== hc-w9c-filter-hide-2026-09-27 (аудит A1 W9c, c3_catalog_nav-03; решение Кирилла 27.09 «Спрятать логистику и дубли»:
   «Убрать из бокового фильтра логистику, технологию (вне смесей) и дубли. В карточке характеристики остаются, адреса
   посадочных не пострадают.») ====
   Свойства остаются в умном фильтре (b_iblock_section_property): на них держатся адреса посадочных, а выключенное
   свойство Битрикс молча выбрасывает из адреса. Прячем только блоки бокового фильтра, как hc-filter-hide-2026-08-28.
   Порядок/раскрытие блоков ведёт hc_filter_tune.php (класс hc-ft-hide) — display:none здесь работает поверх него.
   Откат: удалить этот блок и поднять ?v= в head_custom.php. */
/* 1) логистика — во всех разделах */
.bx_filter_parameters_box[data-prop_code=kolichestvo_sht_poddon],
.bx_filter_parameters_box[data-prop_code=kolichestvo_sht_up],
.bx_filter_parameters_box[data-prop_code=kolichestvo_sht_avto],
.bx_filter_parameters_box[data-prop_code=kolichestvo_m2_up],
.bx_filter_parameters_box[data-prop_code=kolichestvo_m2_poddon],
.bx_filter_parameters_box[data-prop_code=kolichestvo_m2_avto],
.bx_filter_parameters_box[data-prop_code=ves_poddona],
.bx_filter_parameters_box[data-prop_code=kol_vo_v_up],
.bx_filter_parameters_box[data-prop_code=kol_vo_v_a_m]{display:none!important}
/* 2) технология смесей — во всех разделах, включая /catalog/stroitelnye_smesi/ (Кирилл 27.09 ~22:20 «мелкие вопросы — делай»;
   в карточке характеристики остаются). Было до 22:20: только вне смесей. */
.bx_filter_parameters_box[data-prop_code=kolichestvo_vody_zatvoreniya],
.bx_filter_parameters_box[data-prop_code=vremya_ispolzovaniya],
.bx_filter_parameters_box[data-prop_code=srok_khraneniya],
.bx_filter_parameters_box[data-prop_code=vykhod_rastvora]{display:none!important}
/* 3) дубль: «Размер» (razmer) там, где есть «Размер, мм» (razmer_mm).
   «Завод» (zavod) НЕ прячем: завод ≠ производитель (у ЛСР 4 завода, у Röben 2), его дозаполняют по задаче Кирилла 27.09;
   малозаполненный блок и так скрывает hc_filter_tune.php (<10 % раздела). */
form:has(.bx_filter_parameters_box[data-prop_code=razmer_mm]) .bx_filter_parameters_box[data-prop_code=razmer]{display:none!important}
/* ==== конец hc-w9c-filter-hide-2026-09-27 ==== */

/* /upload/hc_js/hc-w5-a11y.css */
/* ==== hc-w5-a11y-2026-09-27 — аудит A1 W5 «клавиатура и семантика» (решение Кирилла 27.09 «делай волну 5») ====
   Прогрессивное улучшение поверх разметки Aspro: только фокус, скрытые-но-фокусируемые поля и раскрытие
   по клавиатуре. Фирменные цвета (#f35c50 / #EE2C2D) не трогаем — рамка фокуса отдельная, синяя #1a73e8
   (4,6:1 на белом, 3,7:1 на тёмной теме). Пара к /upload/hc_js/hc-w5-a11y.js (классы hc-kbd, hc-kbd-open, hc-skip). */

/* 27.09.2026 (аудит A1 W5, u1_mobile_a11y-05): фокус не был виден — шаблон гасит его (template_styles.css:40
   a:focus{outline:none}, :1075 .form-control:focus, lite.bootstrap.css:523 .dropdown-toggle:focus{outline:0}).
   :focus-visible не срабатывает на щелчок мышью по ссылкам и кнопкам, поэтому мышь рамку не видит.
   Поля ввода под :focus-visible попадают и при щелчке (поправка проверяющего) — им рамку даём только после Tab
   (класс html.hc-kbd ставит hc-w5-a11y.js, снимает первый же щелчок/касание). */
:focus-visible:not(input):not(textarea):not(select){outline:2px solid #1a73e8!important;outline-offset:2px!important}
input[type=checkbox]:focus-visible,input[type=radio]:focus-visible{outline:2px solid #1a73e8!important;outline-offset:2px!important}
html.hc-kbd input:not([type=checkbox]):not([type=radio]):focus,
html.hc-kbd textarea:focus,
html.hc-kbd select:focus{outline:2px solid #1a73e8!important;outline-offset:1px!important}
/* внутри прокручиваемых контейнеров и каруселей внешняя рамка обрезается — рисуем внутри */
.scrollblock :focus-visible,.swiper :focus-visible,.flexslider :focus-visible,.owl-carousel :focus-visible,
.bx_scu li:focus-visible,.hc-colors__item:focus-visible,.hc-related__item:focus-visible{outline-offset:-2px!important}
/* контейнеры, куда фокус переводится программно (ссылка «к содержимому», окна), рамку не рисуют */
[data-hc-nofocusring]:focus,[data-hc-nofocusring]:focus-visible{outline:none!important}

/* 27.09.2026 (аудит A1 W5, u1_mobile_a11y-05): ссылка «Перейти к содержимому» — первая остановка Tab,
   видна только в фокусе. Вставляет hc-w5-a11y.js первым узлом body, цель — #content (div.wraps, header.php:43). */
.hc-skip{position:fixed;left:8px;top:8px;z-index:10060;padding:10px 16px;border-radius:4px;background:#1f2328;
	color:#fff!important;font-size:14px;font-weight:600;line-height:1.2;text-decoration:none!important;
	transform:translateY(-300%)}
.hc-skip:focus,.hc-skip:focus-visible{transform:none}

/* 27.09.2026 (аудит A1 W5, u1_mobile_a11y-05): фиксированная шапка (65 px) закрывала элемент, до которого
   дошёл Tab, — браузер прокручивает к фокусу с этим отступом. Прокрутку скриптами Aspro не меняет. */
@media (min-width:992px){html{scroll-padding-top:80px}}
/* телефон: шапка #mobileheader прилипает сверху (63 px), на карточке снизу — панель покупки */
@media (max-width:991px){html{scroll-padding-top:72px;scroll-padding-bottom:64px}}

/* 27.09.2026 (аудит A1 W5, u1_mobile_a11y-01 и -04): чекбоксы и радио, которые шаблон прячет
   (template_styles.css:10313 .filter.licence_block input{visibility:hidden;width:0;height:0},
   :10367/:11206 .filter/.bx_filter_vertical input[type=checkbox]{display:none}, радио PERSON_TYPE — visibility:hidden),
   выпадали из порядка Tab: согласия, тип плательщика и умный фильтр не переключались с клавиатуры.
   Делаем их визуально скрытыми, но фокусируемыми. position:absolute без top/left оставляет поле на его
   месте в потоке (прокрутка к фокусу не прыгает), 1×1 с getClientRects — jquery.validate валидирует
   согласия как и раньше. Тумблер по-прежнему рисует label (::before/::after), щелчок по label работает. */
.filter.licence_block>input[type=checkbox],
.filter.offer_block>input[type=checkbox],
.bx-soa-person-type .person-type input[type=radio],
.bx_filter input[type=checkbox]:not([disabled]){
	display:block!important;visibility:visible!important;position:absolute!important;opacity:0!important;
	width:1px!important;height:1px!important;margin:0!important;padding:0!important;border:0!important;
	clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;overflow:hidden!important;pointer-events:none!important}
.filter.licence_block>input[type=checkbox]:focus-visible+label,
.filter.offer_block>input[type=checkbox]:focus-visible+label,
.bx_filter input[type=checkbox]:focus-visible+label{outline:2px solid #1a73e8!important;outline-offset:2px!important;border-radius:3px}
.bx_filter .scrollblock input[type=checkbox]:focus-visible+label{outline-offset:-2px!important}
html.hc-kbd .bx-soa-person-type .person-type:focus-within label{outline:2px solid #1a73e8!important;outline-offset:3px!important;border-radius:2px}

/* 27.09.2026 (аудит A1 W5, u1_mobile_a11y-03): «В избранное» / «Сравнить» и кнопки покупки в плитке
   появляются только по наведению (template_styles.css:8017, :7526) — показываем их и при фокусе внутри
   карточки, иначе Tab приходил бы на невидимые кнопки. */
.catalog_item:focus-within .image_wrapper_block .like_icons span,
.catalog_item:focus-within .image_wrapper_block .fast_view_button--full{opacity:1;visibility:visible}
body .catalog_item:focus-within .footer_button{opacity:1;visibility:visible;height:auto;z-index:2}
.ajax_load.block .item_block:focus-within .footer_button{display:block}

/* 27.09.2026 (аудит A1 W5, u1_mobile_a11y-12): выпадающие пункты верхнего меню («Услуги», «Компания»…)
   открывались только наведением (visibility/opacity), открываем и по стрелке вниз/пробелу — класс
   hc-kbd-open ставит hc-w5-a11y.js. Каталог (hc-mega-host) открывает свой скрипт categories-ui.js. */
.menu-row .mega-menu table td.menu-item.dropdown.hc-kbd-open>.wrap>.dropdown-menu{
	display:block!important;visibility:visible!important;opacity:1!important;transition:none!important}
/* у Aspro visibility появляется с задержкой 0,2 с — фокус в ещё скрытую панель не встаёт; при открытии с клавиатуры
   (hc-kbd-open у нас, hc-menu-open у categories-ui — ставится только щелчком/клавишей, наведение идёт через :hover) без анимации */
.wrapper1 .mega-menu td.hc-mega-host.hc-menu-open>.wrap>.hc-mega-dropdown{transition:none!important}

/* /upload/hc_js/hc-w5-mobile.css */
/* hc-w5-mobile.css — аудит A1, волна W5 «телефон и визуальная доступность» (агент W5a), 27.09.2026.
   Подключается одной строкой в include/header_include/head_custom.php сразу после блока hc-w4-assets-2026-09-26
   (?v= = md5 содержимого). Парный скрипт — hc-w5-mobile.js (раскладка плавающих элементов по факту на экране).
   Вендорные файлы Aspro и hc-w4-*.css не правились: всё здесь — перекрытия с узкими селекторами.
   Откат: убрать строку подключения из head_custom.php (копия до правки — /hc_backups/w5-2026-09-27/). */

/* ============ 1. Плавающие элементы над липкими панелями (gap_scenarios_e2e-02, u1_mobile_a11y-02, калькуляторы) ============
   27.09.2026 (аудит A1 W5, gap_scenarios_e2e-02 + u1_mobile_a11y-02): на телефоне пилюля квиза «Подбор за 1 минуту»
   (left/bottom 10px) и плашка города .hc-citybar (bottom 8px) ложились на «−», количество и «+» липкой панели покупки
   карточки .counter_wrapp.fixed (Aspro FIXED_BUY_MOBILE=Y, решение 12.09 оставить) — «+» открывал квиз, «−» разворачивал
   плашку. Исключения в hc-ux/hc-ux2 были только для #hc-cta-stick раздела. Здесь — то же для карточки: квиз прячется,
   плашка города и подсказка региона .hc-rhint встают над панелью (панель 55 px → 64 px + safe-area, по поправке проверяющего).
   Точную высоту любой нижней панели потом ставит hc-w5-mobile.js (html.hc-w5-dock + --hc-w5-dock), правила ниже —
   страховка до его запуска. */
@media (max-width:767px){
	body:has(.counter_wrapp.fixed) .hcq-float{display:none!important}
	body:has(.counter_wrapp.fixed) .hc-citybar,
	body:has(.counter_wrapp.fixed) .hc-rhint{bottom:calc(64px + env(safe-area-inset-bottom))}
}
/* 27.09.2026 (аудит A1 W5, замечание W2 к калькуляторам): на 390 px развёрнутая плашка города закрывала липкую плашку итога
   калькуляторов .hcc-sticky (≤900 px, высота ~91 px) вместе с «Отправить расчёт»: верхняя треть кнопки попадала в
   «Санкт-Петербург» — тап уводил на spb; свёрнутая пилюля потом закрывала «Итого / Смотреть смету». */
@media (max-width:900px){
	body:has(#sticky.hcc-sticky:not([hidden])) .hcq-float{display:none!important}
	body:has(#sticky.hcc-sticky:not([hidden])) .hc-citybar,
	body:has(#sticky.hcc-sticky:not([hidden])) .hc-rhint{bottom:calc(100px + env(safe-area-inset-bottom))}
}
/* то же для нижней панели действий /contacts/ (#hc-contacts .mobile-actions, ≤760 px) */
@media (max-width:760px){
	body:has(#hc-contacts .mobile-actions) .hcq-float{display:none!important}
	body:has(#hc-contacts .mobile-actions) .hc-citybar,
	body:has(#hc-contacts .mobile-actions) .hc-rhint{bottom:calc(76px + env(safe-area-inset-bottom))}
}
/* Измеренная скриптом высота нижней липкой панели (любой: карточка, калькулятор, контакты, #hc-cta-stick). В высоту панели
   уже входит её собственный отступ safe-area, поэтому env() здесь не добавляем. */
html.hc-w5-dock .hc-citybar,
html.hc-w5-dock .hc-rhint{bottom:calc(var(--hc-w5-dock, 64px) + 8px)!important}
html.hc-w5-dock .hcq-float{display:none!important}

/* ============ 2. Виджет Битрикс24 (u1_mobile_a11y-10) ============
   27.09.2026 (аудит A1 W5, u1_mobile_a11y-10): кнопка виджета стоит на bottom 120/132 px (hc-ux 27.08) и при прокрутке
   садилась на «Перейти к оформлению» / «Оформить заказ»; приветствие «Добрый день! Поможем сориентироваться…»
   закрывало CTA квиза, калькулятора и кнопку оформления; при открытом мобильном фильтре и меню кнопка (z-index 10150)
   лежала поверх затемнения. По поправке проверяющего виджет НЕ прячем (канал лидов, формы 4/6/7): гасим только окно
   приветствия там, где оно мешает, а кнопку отодвигаем. Настройки открытой линии в портале не трогаем. */
/* корзина и оформление: приветствие не показываем, кнопку на телефоне — в нижний угол (липкой панели там нет,
   в конце прокрутки под кнопкой оказывается подвал, а не «Перейти к оформлению») */
html.hc-w5-cart .b24-widget-button-popup{display:none!important}
@media (max-width:767px){
	html.hc-w5-cart .b24-widget-button-wrapper.b24-widget-button-position-bottom-right{bottom:calc(14px + env(safe-area-inset-bottom))!important}
}
/* открыт мобильный фильтр или меню: виджет и пилюля квиза уходят ПОД затемнение (у затемнений z-index 3005 и 2999) */
body:has(#mobilefilter.show) .b24-widget-button-wrapper,
body:has(#mobilemenu.show) .b24-widget-button-wrapper{z-index:2990!important}
body:has(#mobilefilter.show) .b24-widget-button-popup,
body:has(#mobilemenu.show) .b24-widget-button-popup,
body:has(#mobilefilter.show) .hcq-float,
body:has(#mobilemenu.show) .hcq-float{display:none!important}
/* приветствие легло на основную кнопку страницы (проверяет hc-w5-mobile.js) — прячем его до конца просмотра страницы;
   кнопка чата остаётся */
html.hc-w5-b24quiet .b24-widget-button-popup{display:none!important}
/* развёрнутая плашка города / подсказка региона: кнопка виджета встаёт НАД ней (иначе закрывала «×» и «другой город»);
   высоту считает скрипт */
html.hc-w5-b24up .b24-widget-button-wrapper.b24-widget-button-position-bottom-right{bottom:var(--hc-w5-b24, 132px)!important}

/* ============ 3. Тап-цели на тач-экранах (u1_mobile_a11y-09) ============
   27.09.2026 (аудит A1 W5, u1_mobile_a11y-09): основные действия были 22–40 px. Глобальных правил на button НЕТ
   (на ФинТерме так разъехалась вёрстка — fintherm-mobile-tap-target-rule): только точечные селекторы; где вид менять
   нельзя — зона нажатия расширена псевдоэлементом или внутренним отступом с компенсирующим margin. */
@media (pointer:coarse){
	/* корзина: «−»/«+» 30×32 → 44×44 (Aspro кладёт их absolute по краям .basket-item-amount с padding 0 30px) */
	.basket-items-list-item-amount-outer .basket-item-amount{padding:0 44px!important;min-width:158px!important;max-width:none!important}
	.basket-items-list-item-amount-outer .basket-item-btn-minus,
	.basket-items-list-item-amount-outer .basket-item-btn-plus{width:44px!important;height:44px!important}
	.basket-items-list-item-amount-outer .basket-item-amount-filed{height:44px!important}
	/* корзина: удаление строки 25×25 → 44×44; крестик рисуют ::before/::after по центру (top/left 50%), центр почти на месте */
	body .basket-item-block-info .basket-item-actions-remove{width:44px;height:44px;top:-13px;right:-14px}
	/* мобильный фильтр: крестик 22×22 (absolute top/right, значок 12 px + padding 5) → 44×44; margin −11 держит значок на месте */
	#mobilefilter .slide-block__head .svg-close{width:44px;height:44px;padding:16px;margin:-11px;box-sizing:border-box}
	/* ручки ползунка цены 22×22 → зона 44×44 (::before у них не занят, ::after занят темой) */
	#mobilefilter .bx_ui_slider_handle::before{content:"";position:absolute;left:-11px;right:-11px;top:-11px;bottom:-11px}
	/* кнопка «Фильтр» 85×30 → зона высотой 44 без изменения строки */
	.filter-panel__filter .bx-filter-title{position:relative}
	.filter-panel__filter .bx-filter-title::after{content:"";position:absolute;left:0;right:0;top:-7px;bottom:-7px}
	/* карточка: текстовые переключатели ТП («шт/м²», размер) высотой 31 → зона 45 (цветные квадраты 50×50 не трогаем);
	   у темы .sku_props ul li:before{display:none} — возвращаем block */
	.sku_props li.item:has(> .cnt)::before{content:"";display:block;position:absolute;left:-2px;right:-2px;top:-7px;bottom:-7px}
	/* ряд переключателей обрезается контейнером прокрутки (overflow hidden auto) по краю — даём ему поля 7 px,
	   компенсируя отрицательным margin: раскладка не меняется, а зона нажатия не срезается */
	.sku_props .bx_size_scroller_container{padding-top:7px;padding-bottom:7px;margin-top:-7px;margin-bottom:-7px}
	/* «Заказать образец» 158×36 и «Купить в 1 клик» 286×42 → зона высотой 44 */
	.hc-sample-btn{position:relative}
	.hc-sample-btn::after{content:"";position:absolute;left:0;right:0;top:-5px;bottom:-5px}
	.wrapp-one-click .one_click{position:relative}
	.wrapp-one-click .one_click::after{content:"";position:absolute;left:0;right:0;top:-1px;bottom:-1px}
	/* «Гарантия и возврат / Сертификаты / Доставка» высотой 19 px: зона 33 px (≥ 24 px по WCAG 2.5.8) без наложения строк —
	   вертикальный отступ строк 6 → 14 px; зона — псевдоэлементом (::before у них — точка-маркер, а подчёркивание —
	   border-bottom, поэтому padding не годится) */
	.hc-trust{row-gap:14px}
	.hc-trust a{position:relative}
	.hc-trust a::after{content:"";position:absolute;left:0;right:0;top:-7px;bottom:-7px}
}
/* шапка на 768–991 px: телефон и поиск 17–18 px в ширину. Как в правке 28.08 для 360–767 (hc-w4-site.css): ширину
   добираем за счёт паддингов ячейки (строка не растёт), по вертикали ничего не навязываем — line-height темы 63 px */
@media (min-width:768px) and (max-width:991px){
	#mobileheader .wrap_icon:not(.wrap_basket){padding-left:0;padding-right:0}
	#mobileheader .top-btn,#mobileheader .personal-link{min-width:48px;text-align:center}
	#mobileheader .personal-link{display:inline-block}
}
/* «Заказать звонок» в выпадашке телефонов шапки — 109×13 → высота 43 */
#mobilePhone .more_phone .callback{display:inline-block;padding:15px 0}

/* ============ 4. Кегль на телефоне (u1_mobile_a11y-08) ============
   27.09.2026 (аудит A1 W5, u1_mobile_a11y-08): мобильные блоки contacts.css и services.css УМЕНЬШАЛИ шрифт до 8–11 px
   (на /contacts/ мельче 12 px было 41–51 % знаков, на /services/ — 30–32 %). Минимум 12 px, ответы FAQ — 14 px.
   Сами файлы страниц не правились (перекрытие специфичнее: html + id). Длину строк не трогаем (решение 31.08). */
@media (max-width:760px){
	html #hc-contacts :is(.topline,.header-phone,.crumb,.crumb a,.eyebrow,.place-tabs button,.tab-number,.photo-top,.button,
		.mobile-actions a,.section-label,.text-button,.tiny-num,.visit-guide a,.visit-guide p,.contact-methods small,.notice,
		.detail,.intro-copy,#copy-address,#route,#mobile-route,#visit-call,#place-label,.hc-allp__kind,a > span > small){font-size:12px}
	html #hc-contacts :is(.questions summary,.questions details p){font-size:14px;line-height:1.5}
	html #hc-services :is(.hs-crumb,.hs-crumb a,.hs-crumb span,.hs-eyebrow,.hs-button,.hs-photo-caption,.hs-feature-foot,
		.hs-feature-foot span,.hs-feature-foot a,.hs-count,.hs-filters button,.hs-filters small,.hs-back,.hs-facts > div,
		.hs-prepare > p,.hs-prepare > a,.hs-prepare > span,.hs-toc nav a,.hs-toc > span,.hs-toc-all,.hc-svc th,.hc-svc td,
		.hs-card-photo > span,.hs-card-stage,.hs-tags,.hs-tags span,.hs-card-more,.hs-phones small,.hc-svc__links-ttl,
		.hc-svc__links a,.hs-detail-intro .hs-eyebrow){font-size:12px}
}
/* подвал и формы на всех страницах: копирайт 10 px, «Подписаться» 11 px, «Заказать звонок» 10 px, ошибки полей 10 px */
@media (max-width:767px){
	#footer .footer-bottom__item.copy,
	#footer .subscribe_button .subscribe_btn,
	#footer .callback_wrap .callback-block,
	footer .footer-bottom__item.copy,
	footer .subscribe_button .subscribe_btn,
	footer .callback_wrap .callback-block,
	.form label.error,label.error{font-size:12px!important}
	/* подпись под «Заказать образец» на карточке — 11,5 px */
	.hc-sample-wrap .hc-sample-hint{font-size:12px}
}

/* ============ 5. Контраст (u1_mobile_a11y-07, без развилки) ============
   27.09.2026 (аудит A1 W5, u1_mobile_a11y-07): серые подписи и крошки #b6b5b5 (2,05:1) / #999 (2,85:1) / #888 (3,54:1)
   и наши #8a8a8a (3,45:1) → #767676 (4,54:1 на белом); стикер «На складе» белым по #60c339 (2,24:1) → #3a8522 (4,61:1) жирным; подсказка ошибки
   оформления #F55 (3,14:1) → #d93a2f (4,57:1), на розовой подложке #EDD → #b3261e (4,99:1).
   Вместо #3d8b24 из вопроса взят #3a8522: у #3d8b24 4,27:1 — для текста 10–12 px (не «крупного» по WCAG) порога 4,5 нет.
   Фирменный красный #f35c50 / #EE2C2D НЕ меняется — ждёт решения Кирилла.
   Только светлая тема: в тёмной эти серые стоят на тёмном фоне и затемнение сделало бы хуже (там свои правки 11.09).
   Префикс темы — в :where(), поэтому специфичность правил равна исходным правилам темы: заменяется только базовый цвет,
   а :hover и более узкие контексты темы продолжают работать. */
@media not all and (prefers-color-scheme:dark){
	:where(body:not(.theme-dark)) .breadcrumbs__item-name{color:#767676}
	:where(body:not(.theme-dark)) .muted:not(:where(#footer *, footer *)),
	:where(body:not(.theme-dark)) .color_999:not(:where(#footer *, footer *)){color:#767676}
	:where(body:not(.theme-dark)) .basket-item-amount-field-description,
	:where(body:not(.theme-dark)) .basket_action .delete_all,
	:where(body:not(.theme-dark)) .back-url-text{color:#767676}
	:where(body:not(.theme-dark)) .basket-items-list-item-price-for-one .basket-item-price-current-text{color:#767676}
	:where(body:not(.theme-dark)) .hc-blog-goods li .hc-bg-price,
	:where(body:not(.theme-dark)) .page_not_found .hc404-note{color:#767676}
	:where(body:not(.theme-dark)) .bx_filter .bx_ui_slider_part span{color:#767676}
	:where(body:not(.theme-dark)) .bx_item_section_name,
	:where(body:not(.theme-dark)) .bx_item_section_name span{color:#767676}
	:where(body:not(.theme-dark)) .stickers .sticker_na_sklade{background-color:#3a8522;color:#fff;font-weight:700}
	:where(body:not(.theme-dark)) #bx-soa-order .bx-soa-tooltip .tooltip-inner{color:#d93a2f}
	:where(body:not(.theme-dark)) #bx-soa-order .bx-soa-tooltip.bx-soa-tooltip-danger .tooltip-inner,
	:where(body:not(.theme-dark)) .bx-soa-tooltip.bx-soa-tooltip-danger .tooltip-inner{color:#b3261e}
}
@media (prefers-color-scheme:dark){
	:where(body.theme-light) .breadcrumbs__item-name{color:#767676}
	:where(body.theme-light) .muted:not(:where(#footer *, footer *)),
	:where(body.theme-light) .color_999:not(:where(#footer *, footer *)){color:#767676}
	:where(body.theme-light) .basket-item-amount-field-description,
	:where(body.theme-light) .basket_action .delete_all,
	:where(body.theme-light) .back-url-text{color:#767676}
	:where(body.theme-light) .basket-items-list-item-price-for-one .basket-item-price-current-text{color:#767676}
	:where(body.theme-light) .hc-blog-goods li .hc-bg-price,
	:where(body.theme-light) .page_not_found .hc404-note{color:#767676}
	:where(body.theme-light) .bx_filter .bx_ui_slider_part span{color:#767676}
	:where(body.theme-light) .bx_item_section_name,
	:where(body.theme-light) .bx_item_section_name span{color:#767676}
	:where(body.theme-light) .stickers .sticker_na_sklade{background-color:#3a8522;color:#fff;font-weight:700}
	:where(body.theme-light) #bx-soa-order .bx-soa-tooltip .tooltip-inner{color:#d93a2f}
	:where(body.theme-light) #bx-soa-order .bx-soa-tooltip.bx-soa-tooltip-danger .tooltip-inner,
	:where(body.theme-light) .bx-soa-tooltip.bx-soa-tooltip-danger .tooltip-inner{color:#b3261e}
}
@media not all and (prefers-color-scheme:dark){body:not(.theme-dark){--gray_text_black:#767676}}
@media (prefers-color-scheme:dark){body.theme-light{--gray_text_black:#767676}}

/* /upload/hc_js/hc-w5-brand.css */
/* hc-w5-brand.css — 27.09.2026 (аудит A1, u1_mobile_a11y-07/решение Кирилла 27.09: «Фирменный красный #f35c50 на кнопках
   покупки: затемнить до #d93a2f (4,57:1)»; по поправке проверяющего — и наши блоки с #EE2C2D, чтобы не было двух красных).
   Базовый цвет темы Aspro сменён штатно: опция aspro.max BASE_COLOR=CUSTOM, BASE_COLOR_CUSTOM=d93a2f (сайт s1) — Aspro
   сам пересобрал themes/custom_s1/theme.css и :root --theme-base-color. Этот файл — то, чего опцией не сделать:
   1) наведение: у Aspro @hcolor = lighten(база, 6 %) = #de5349 (белый текст 3,86:1) → #b8322a (5,95:1);
      тёмная тема: красный ТЕКСТ темы на #1b1b1b был бы 3,77:1 → #ff6b60 (6,2:1), фон кнопок остаётся #d93a2f;
   2) наши блоки (квиз, «Заказать образец», CTA-полосы, подвал, калькуляторы, контакты) с #EE2C2D/#ee302c → #d93a2f;
   3) мелочи (звёздочка обязательного поля #f00, подчёркивание в custom.css).
   Логотип (#EE302C) и рамку фокуса #1a73e8 (hc-w5-a11y.css) не трогаем. Часть 1 собрана gen_brand.py из theme.less
   (site-audit-2026-09-24/w5c_prepared/). Откат: убрать блок hc-w5-brand-2026-09-27 из head_custom + опцию BASE_COLOR=2. */
/* ---- 1. Тема Aspro (#d93a2f): наведение темнее и красный текст в тёмной теме ---- */
.colored_theme_bg_hovered_hover:hover{background-color:#b8322a}
.EXTENDED .blog-comment-meta a{color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60) !important}
a.scroll-to-top.ROUND_COLOR:hover,a.scroll-to-top.RECT_COLOR:hover{background-color:#b8322a}
.uploader:hover .resetfile:before{background-color:#b8322a}
.basket_hover_block .tabs_content .buttons .basket_back a:hover{background:#b8322a}
#main .basket_hover_block .cart-empty .cart-empty__info .btn:hover{background:#b8322a}
#bx-soa-order-form .btn.btn-default:hover{background:#b8322a;border-color:#b8322a}
#basket-root .basket-checkout-section .btn.btn-default:hover,body #basket-root .basket-checkout-section .btn.btn-default:active,body #basket-root .basket-checkout-section .btn.btn-default:focus{border-color:#b8322a;background-color:#b8322a}
.sale-products-gift .product-item-small-card .product-item-container .product-item .product-item-button-container .btn:not(:hover){color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60)}
#bx-soa-order div[class*=bx-sls] .quick-locations .quick-location-tag,#bx-soa-order-form .bx-soa-pickup-list-item:not(.bx-selected) .bx-soa-pickup-l-item-btn .btn.btn-default:not(:hover){color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60)}
#bx-soa-order .bx-soa-pp-item-container .bx-soa-pp-company:hover .bx-soa-pp-company-smalltitle,#bx-soa-order .bx-soa-more .bx-soa-more-btn .pull-left{color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60)}
@media all and (max-width: 600px){.has_menu #header .center_block .main-nav:hover{background:#b8322a none repeat scroll 0 0}}
#header .wrapper_middle_menu.wrap_menu ul.mobile_menu li:hover>a,#header .wrapper_middle_menu.wrap_menu ul.mobile_menu li.opened>a,#header .wrapper_middle_menu.wrap_menu ul.mobile_menu li.current > a{background:#b8322a}
.button.transparent,.button.transparent:hover,.specials_slider_wrapp ul.tabs>li span,.basket_wrapp .basket_block .link:hover+.wraps_icon_block+.text .title,.stores .stores_list .item a span,.phones .order_wrap_btn,.footer_bottom .all_menu_block ul li a:hover,.footer_bottom .submenu_top .menu_item a:hover,.avtorization-call.enter:hover span,.top-h-row .h-user-block a:hover,ul.menu .child li.menu_item a,#header .catalog_menu ul.menu>li.current>a,ul.menu .child .depth3 a,ul.menu .child li.menu_title a:hover,#header ul.menu li .child.submenu .child_wrapp a:not(.title),.img_block_capcha .reload,.h_color_white .center_block .menu.full>li:hover>a,.m_color_white #header .wrapper_middle_menu .menu.bottom>li:hover>a,.m_color_white #header .wrapper_middle_menu .menu.bottom>li.hover>a,body #header ul.menu li .child.line .child_wrapp>a:hover,.basket_sort ul.tabs li .wrap_li>span *,.basket_sort ul.tabs li .wrap_li>span,.left_block .internal_sections_list .child_wrapp .child li.cur>a,.left_block .internal_sections_list .child_wrapp .child li.depth3 a.menu_item.cur,.left_block .internal_sections_list .child_wrapp a:hover,.tabs-head li.current span,.reviews-post-reply-buttons a:hover,h4.hover,.button.transparent.white:hover,.button.white_bg{color:var(--light,var(--hc-red-tx,#cb2e24)) var(--dark,#ff6b60)}
.btn.btn-default:hover,.btn.btn-default:active,.btn.btn-default:focus{background-color:#b8322a;border-color:#b8322a}
.btn.btn-default.white:not(.grey){color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60) !important}
.btn.btn-default.white.white-bg:hover,.btn-default.white.white-bg:active,.btn-default.white.white-bg:focus{color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60) !important}
.btn.btn-transparent:hover,.btn.btn-transparent:active,.btn.btn-transparent:focus{background-color:#b8322a;border-color:#b8322a}
.btn.btn-responsive-nav:hover{color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60)}
.btn.btn-link{color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60)}
.btn.btn-link:hover{color:var(--light,var(--hc-red-tx,#b8322a)) var(--dark,#ff6b60)}
.btn.btn-link:active{color:var(--light,var(--hc-red-tx,#9a241c)) var(--dark,#ff6b60)}
.btn.btn-default.wc.vert:hover .fa{background-color:#b8322a}
@media (max-width: 767px){.top_slider_wrapp.view_2 .btn.btn-transparent-border{color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60)}}
@media (max-width: 767px){.top_slider_wrapp.view_2 .btn.btn-default.white:not(:hover){color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60);color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60) !important}}
@media (max-width: 767px){.top_slider_wrapp.view_2 .btn.btn-lg.white-border:not(:hover){color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60);color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60) !important}}
.half_block.top_big_banners .btn.btn-transparent-border:not(:hover){color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60)}
.btn-inline{color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60)}
.btn-inline.black:hover{color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60)}
.popup-window-content-white .popup-window-buttons .btn:hover,body .item:hover .cost .icons-basket-wrapper .btn,.item .icons-basket-wrapper .btn.in-cart,.basket-icons-wrapper__btn:hover .btn.in-cart,.basket-icons-wrapper__btn:active .btn,.basket-icons-wrapper__btn:focus .btn,.item .icons-basket-wrapper .btn.in-subscribe{background-color:#b8322a;border-color:#b8322a}
.basket-icons-wrapper .like_icons > div span:hover{border-color:#b8322a}
body .fa.big-icon.grey{color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60)}
.icon-text.grey .fa{color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60)}
footer .info .email a:hover{color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60)}
.bx_soc_comments_div .bx-catalog-tab-list1 li.active a{color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60)}
#mobilemenu .contacts a:hover{color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60)}
.top-block .top-block-item .inline-search-show:hover>span{color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60)}
.logo-row .top-callback .email,.logo-row .top-callback .email a:hover{color:var(--light,var(--hc-red-tx,#b8322a)) var(--dark,#ff6b60)}
.inline-search-block.fixed.big .search .close-block:hover .close-icons{background-color:#b8322a}
.catalog_detail .bx-modal-container .btn.btn-add:hover,.personal_wrapper form input[type=submit]:hover{background:#b8322a}
.wrapper_middle_menu.wrap_menu.mobile:hover{background:#b8322a}
.header_wrap #header .catalog_menu.menu_colored .inc_menu ul.menu > li:not(.current):hover > a{background:#b8322a}
.phone_block .phone_wrap .icons{color:var(--light,var(--hc-red-tx,#cb2e24)) var(--dark,#ff6b60)}
.menu-row.bgcolored .wrap_icon:hover{background-color:#b8322a}
.logo_and_menu-row .burger:hover .svg-burger{background-color:#b8322a}
.logo_and_menu-row .basket-link:hover .title{color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60)}
.menu-row.bgcolored .mega-menu table td:hover{background-color:#b8322a}
.catalog_detail .active .title-tab-heading,.catalog_detail .title-tab-heading:focus,.catalog_detail .title-tab-heading:active,.catalog_detail .title-tab-heading:hover{color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60)}
.style-switcher .block-title .dotted-block{color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60)}
.uploader:hover .action{background-color:#b8322a;border-color:#b8322a}
p.drop-caps:first-child:first-letter{color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60)}
section.toggle label{color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60)}
.slider-container .tp-caption a:not(.btn):hover{color:var(--light,var(--hc-red-tx,#b8322a)) var(--dark,#ff6b60)}
.viewed_block .item_block:hover a{color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60)}
.basket_fill_COLOR .wrap_cont .opener >div:hover,.basket_fill_COLOR .header-cart .basket_fly .opener >div.cur,.basket_bottom_block.basket_fill_COLOR .maxwidth-theme .top-block-item .inner-table-block a:not(.basket):hover{background:#b8322a}
#footer .footer_inner .line,.page_not_found td.image img{background:#b8322a}
.bx_ordercart .bx_ordercart_order_pay .bx_bt_button:hover{background:#b8322a}
.bx_ordercart .bx_item_detail_size_small_noadaptive .bx_size ul li.bx_active a{background:#b8322a}
.bx_ordercart .bx_item_detail_size_small_noadaptive .bx_size ul li:not(.bx_active):hover a{color:var(--light,var(--hc-red-tx,#cb2e24)) var(--dark,#ff6b60)}
.text-color-theme,.item-views.news2 .compact .item-wrapper .item .inner-text .title a:hover,.bottom_nav.mobile_slider .btn.btn-transparent-border-color:hover{color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60)}
.bx_filter .bx_filter_parameters_box_title:hover:after{color:var(--light,var(--hc-red-tx,#cb2e24)) var(--dark,#ff6b60)}
.bx_filter_vertical input[type="checkbox"]:not(:checked) + label.sku:hover span,.sku_props .bx_item_detail_size ul li:not(.active):hover span,.bx_item_list_you_looked_horizontal .bx_item_detail_size ul li:hover span{color:var(--light,var(--hc-red-tx,#cb2e24)) var(--dark,#ff6b60)}
.bx_ordercart .bx_sort_container a.current:after{background:#b8322a}
.bx_ordercart .bx_ordercart_order_pay .bx_ordercart_order_pay_center .checkout{color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60)}
.button.transparent:not(.text):hover{border-color:#b8322a;background:#b8322a}
.button.transparent.grey_br:hover{border-color:#b8322a}
.bx_ordercart tbody td.control a:first-of-type:hover,.bx_ordercart #basket_items_delayed tbody td.control a:last-of-type:hover,.bx_ordercart #basket_items_subscribed tbody td.control a:first-of-type:hover,.bx_ordercart #basket_items_not_available tbody td.control a:last-of-type:hover,.bx_ordercart .bx_ordercart_order_pay .bx_ordercart_coupon:not(:first-of-type) > span:hover{background-color:#b8322a}
.bx_ordercart .bx_sort_container a,.bx_item_list_you_looked_horizontal .bx_catalog_item .bx_catalog_item_title a:hover,.bx_item_list_you_looked_horizontal .bx_catalog_item:hover .bx_catalog_item_title a{color:var(--light,var(--hc-red-tx,#d83126)) var(--dark,#ff6b60)}
.bx_item_list_you_looked_horizontal .bx_catalog_item_controls .bx_catalog_item_controls_blocktwo a:hover,.bx_item_list_you_looked_horizontal .bx_catalog_item_controls .bx_catalog_item_controls_blockone a{background:#b8322a}
.sale_order_full_table input[name="BuyButton"]{background-color:#b8322a}
.bx_ordercart .bx_item_detail_size_small_noadaptive ul li:active a,.bx_ordercart .bx_item_detail_size_small_noadaptive ul li.bx_active a,.bx_ordercart .bx_item_detail_size_small_noadaptive ul li:hover a{border-color:#b8322a}
.color_link{color:var(--light,var(--hc-red-tx,#cb2e24)) var(--dark,#ff6b60) !important}
.sale-personal-section-index-block-ico i.fa{color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60)}
.sale-acountpay-fixedpay-list .sale-acountpay-fixedpay-item{border-color:#b8322a;color:var(--light,var(--hc-red-tx,#cb2e24)) var(--dark,#ff6b60)}
.sale-acountpay-fixedpay-list .sale-acountpay-fixedpay-item:hover{background-color:#b8322a}
.bx-sap .sale-acountpay-pp-company.bx-selected .sale-acountpay-pp-company-graf-container,.bx-sap .sale-acountpay-pp-company:hover .sale-acountpay-pp-company-graf-container,.sale-order-payment-change-pp-company:hover .sale-order-payment-change-pp-company-image{border-color:#b8322a !important}
.bx-sap .sale-acountpay-pp-company:not(.bx-selected):hover .sale-acountpay-pp-company-smalltitle,.sale-order-payment-change-pp-company:hover .sale-order-payment-change-pp-company-smalltitle{color:var(--light,var(--hc-red-tx,#cb2e24)) var(--dark,#ff6b60) !important}
.sale-personal-profile-list-container>tbody>tr>td:first-child b{color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60)}
.personal_wrapper input[type=submit]:last-of-type,.personal_wrapper .orders_wrapper .sale-order-list-inner-row:last-of-type > div:last-of-type a,.personal_wrapper .orders_wrapper .sale-order-detail-about-order-inner-container-repeat .sale-order-detail-about-order-inner-container-repeat-cancel{color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60) !important}
.personal_wrapper .orders_wrapper .row.col-md-12.col-sm-12 > a,.sale-order-detail-about-order-inner-container-list-item-link{color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60)}
.personal_wrapper .orders_wrapper .sale-order-list-inner-row > div >a:hover{background:#b8322a}
.personal_wrapper .orders_wrapper .sale-order-list-change-payment{color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60)}
.personal_wrapper .orders_wrapper .sale-order-list-button:hover{background-color:#b8322a}
.bx_my_order_cancel a,.personal_wrapper .orders_wrapper .sale-order-list-inner-row>div>a.sale-order-list-cancel-payment{color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60) !important}
.personal_wrapper form[name=ShopForm] input[type=submit]:hover,.personal_wrapper .sale-order-list-inner-row-template input[type=submit]:hover,.personal_wrapper .sale-order-detail-inner-row-template input[type=submit]:hover,.personal_wrapper .sale-order-payment-change-pp input[type=submit]:hover,.personal_wrapper .orders_wrapper .sale-order-detail-about-order-inner-container-repeat .sale-order-detail-about-order-inner-container-repeat-button:hover,.personal_wrapper .sale-order-detail-payment-options-methods-button-element:hover,.personal_wrapper .sale-order-detail-payment-options-methods-button-element-new-window:hover{background:#b8322a}
footer .info .subscribe_button .btn:hover{background-color:#b8322a;border-color:#b8322a}
.catalog-delivery-item.open .catalog-delivery-item-head:before{background-color:#b8322a}
.catalog-delivery-item .catalog-delivery-item-head:hover .catalog-delivery-item-opener{background-color:#b8322a;border-color:#b8322a}
.catalog-delivery-item.open .catalog-delivery-item-head:hover .catalog-delivery-item-opener{background-color:#b8322a;border-color:#b8322a}
.catalog-delivery .bx-sls .quick-location-tag{color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60)}
.catalog-delivery .bx-sls .quick-location-tag:hover{background-color:#b8322a;border-color:#b8322a}
.bottom-icons-panel__content-link--active{color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60) !important}
.services_order_item .services_order_item_title:before,.services_top_hover_item .services_top_hover_item_title:before{background-color:#b8322a}
/* ---- 2. Наши блоки: фирменный #EE2C2D / #ee302c / #f35c50 → #d93a2f, наведение → #b8322a ----
   Приставка html (или html:not(#hc-brand), где спорим с поздними правилами явной темы) — только чтобы перебить
   исходные правила, которые в <head> стоят ПОСЛЕ этого файла (инлайн head_custom, site-consistency, footer-refresh…).
   Красный ТЕКСТ везде через пробельный переключатель Aspro: светлая — #d93a2f (или --hc-red-tx), тёмная — #ff6b60. */

/* квиз (карточка квиза всегда белая — текст без тёмного варианта) */
html .hcq-cta{border-left-color:#d93a2f}
html .hcq-btn{background:#d93a2f}
html .hcq-btn:hover{background:#b8322a}
html .hcq-prog i{background:#d93a2f}
html .hcq-opt:hover,html .hcq-opt.hcq-sel,html .hcq-inp.hcq-bad{border-color:#d93a2f}
html .hcq-agree.hcq-bad,html .hcq-err{color:#d93a2f}

/* «Заказать образец», бейджи и ссылки карточки/раздела (hc-w4-site.css, hc-w4-catalog.css) */
html .hc-sample-btn{border-color:#d93a2f;color:var(--light,#d93a2f) var(--dark,#ff6b60)}
html .hc-sample-btn:hover{background:#d93a2f;color:#fff}
html .hc-promo-badge{background:#d93a2f}
html .hc-promo-badge:hover{background:#b8322a}
html .hc-promo-on .js_price_wrapper > .price_matrix_wrapper .price:not(.discount){color:var(--light,#d93a2f) var(--dark,#ff6b60)}
html .hc-colors__item:hover,html .hc-colors__item.is-cur{border-color:#d93a2f}
html .hc-colors__item.is-cur{box-shadow:0 0 0 2px rgba(217,58,47,.25)}
html .hc-colors__more:hover,html .hc-calc-cta:hover,html .hc-related__item:hover{border-color:#d93a2f;color:var(--light,#d93a2f) var(--dark,#ff6b60)!important}
html .hc-mob-sales{border-color:rgba(217,58,47,.35)}
html .hc-toc{border-left-color:#d93a2f}
html .hc-toc a:hover{color:var(--light,#d93a2f) var(--dark,#ff6b60)}
html .hc-cat-jump a:active{border-color:#d93a2f;color:var(--light,#d93a2f) var(--dark,#ff6b60)}
html .catalog_section_list .section_info li.sect a:hover,html .catalog_section_list .section_info li.sect a.muted777:hover,
html .catalog_section_list .section_info li.hc-more a:hover,html .catalog_section_list .section_item:hover li.name a{color:var(--light,#d93a2f) var(--dark,#ff6b60)}
html .hc-ocb:hover{border-color:#d93a2f;color:var(--light,#d93a2f) var(--dark,#ff6b60)}

/* CTA-полосы разделов, вступление главной (head_custom: hc-cta-sections, hc-index-intro) — там var(--theme-base-color) */
html .hc-cta-sect__phone:hover,html .hc-index-intro__text a:hover,html .hc-index-intro__toggle{color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60)}

/* /contacts/stores/* и блок contacts-stores в head_custom (#EE2C2D у .hc-act--route, .hc-kind--show, .hc-act-route-detail,
   .cluster_custom) здесь НЕ перекрываются: 27.09 их переводит на переменные contacts.css агент площадок (согласовано). */

/* подвал (footer-refresh.css: цвет логотипа #ee302c на кнопке — белый текст 4,12:1) */
html #footer .footer_top{border-top-color:#d93a2f}
html #footer .hc-footer-cta{border-color:#d93a2f;background:#d93a2f}
html #footer .hc-footer-cta:hover{border-color:#b8322a;background:#b8322a}

/* плитки категорий (categories-v2.css), первый слайд главной (type_6.php, .hc-fin__cta) */
html .hc-cv2-card:hover,html .hc-cv2-card:focus-visible{border-color:#d93a2f}
html .hc-cv2-card:hover .hc-cv2-label{color:var(--light,#d93a2f) var(--dark,#ff6b60)}
html #hc-hero-slider .hc-fin__cta{background:#d93a2f}
html #hc-hero-slider .hc-fin__cta:hover{background:#b8322a}

/* главная и посадочные: фон «бумага» #f7f6f2/#eeece6 — там #d93a2f даёт 4,22/3,87:1, красный текст темнее (#b8322a, 5,5/5,0:1).
   --hc-red-tx читают правила красного текста темы ниже; --hhr-red — палитра редизайна главной (была #c9372b / #f35c50) */
html:not(#hc-brand) .wrapper1.front_page{--hc-red-tx:#b8322a;--hhr-red:var(--light,#b8322a) var(--dark,#ff6b60);
  --fill_dark_light_hover:var(--light,#b8322a) var(--dark,#ccc)}
html.hcl-page{--hc-red-tx:#b8322a}
html.hcl-page body{--fill_dark_light_hover:var(--light,#b8322a) var(--dark,#ccc)}
/* подзаголовки-«брови» на плашке #eeece6 (палитра редизайна #c9372b — 4,37:1; тёмная #f35c50 на #2d2b28 — 4,34:1) */
html :is(#hc-tools,#hc-services) :is(.hs-calculators,.hs-contact,.hc-svc__note,.hc-svc__faq){--hs-red:#b8322a}
html #hc-landings-root .hcl-help .hcl-eyebrow{color:var(--light,#b8322a) var(--dark,#ff6b60)}
/* /contacts/ — своя палитра в contacts.css (--red #d93a2f / --red-ink #b8322a, правка 27.09 там же) */
html:not(#hc-brand) .city_chooser_small_frame{--hc-city-accent:var(--light,#b8322a) var(--dark,#ff6b60)}

/* кнопки палитры редизайна 10.09 (#c9372b, hover #ad2d2x): заливка — тот же #d93a2f, наведение #b8322a (белый текст 4,57/5,95:1).
   Красный ТЕКСТ этой палитры на «бумаге» #f7f6f2 не трогаем: #c9372b там 4,78:1, а #d93a2f был бы 4,22:1. */
html .hc-product-promo .hc-promo .hc-promo__cta{background:#d93a2f}
html .hc-product-promo .hc-promo:hover .hc-promo__cta{background:#b8322a}
html :is(#hc-tools,#hc-services) .hs-primary{background:#d93a2f;border-color:#d93a2f}
html :is(#hc-tools,#hc-services) .hs-primary:hover{background:#b8322a;border-color:#b8322a}
html #hc-landings-root .hcl-primary{background:#d93a2f;border-color:#d93a2f}
html #hc-landings-root .hcl-primary:hover{background:#b8322a;border-color:#b8322a}
html .hc-doc-page .hc-doc-btn--red{background:#d93a2f;border-color:#d93a2f}
html .hc-doc-page .hc-doc-btn--red:hover{background:#b8322a;border-color:#b8322a}
/* плашки #eeece6 в редизайне (компания, части главной, «семь страниц»): красный текст темнее (#c9372b там 4,37:1),
   кнопки -primary остаются #d93a2f */
html :is(#hc-company,#hc-home,.hc-home-part) :is(.ha-catalog-more,.ha-audience,.ha-contact,.hh-visual),
html #hc-seven :is(.hx-contact,.hc-sale-archive,.hc-dlv__note,.hc-wrt__panel,.hc-wrt__note){--red:#b8322a}
html :is(#hc-company,#hc-home,.hc-home-part) .ha-primary,html #hc-seven .hx-primary{background:#d93a2f;border-color:#d93a2f}
html :is(#hc-company,#hc-home,.hc-home-part) .ha-primary:hover,html #hc-seven .hx-primary:hover{background:#b8322a;border-color:#b8322a}
/* «Заказать звонок» в тёмном подвале — тот же «красный на тёмном», что и везде (#ff8a7f → #ff6b60, 6,2:1) */
html #footer .callback-block{color:#ff6b60!important}

/* калькуляторы /servisy/ (calc.css, calc-ux.css, hc-house.css, термопанели) и визуализатор (konf.css): свой акцент --ac */
html .hcc,html .hcp-pop,html .hcc-sheet{--ac:#d93a2f;--ac-t:var(--hc-l,#d93a2f) var(--hc-d,#ff6b60)}
html .hck{--ac:#d93a2f;--ac-t:var(--l,#d93a2f) var(--d,#ff6b60)}
html body #hcStudio{--ux-accent:#d93a2f}
html .hcux-share button{background:#d93a2f}
html .hch .hch-primary{background:#d93a2f;border-color:#d93a2f}
html .hch button:hover,html .hch button[aria-pressed=true],html .hch .hch-active{border-color:#d93a2f;color:#d93a2f}

/* ---- 3. Прочее ---- */
/* звёздочки обязательных полей (Битрикс «form .star», «body span.bx-authform-starrequired»: #f00 — 4,0:1) */
html body :is(span.bx-authform-starrequired,form .star,form .required-star){color:var(--light,#d93a2f) var(--dark,#ff6b60)}
/* custom.css Aspro (фильтр «С этим покупают») — подчёркивание прежним #f35c50 */
html .filter-btn:hover,html .filter-btn.active{border-bottom-color:var(--theme-base-color)}
/* переменная темы как цвет текста (colored.css, купон, имя в шапке) — в тёмной теме светлее */
.color-theme,.coupon-block__text,.long_banner .header_wrap:not(.light-menu-color) .logo_and_menu-row .auth_wr_inner:hover .name{color:var(--light,var(--hc-red-tx,#d93a2f)) var(--dark,#ff6b60)}

/* k28 28.09.2026 (ответ Кирилла C22 «Привести к #b8322a»): кнопка калькуляторов .hcc-btn — наведение как у сайта
   (в calc.css filter:brightness(.93) давал ≈#ca362c) */
html .hcc-btn:hover{filter:none;background:#b8322a}

/* /upload/hc_js/hc-mobile-fit.css */
/* 30.09.2026: телефон — текст не мельче 12 px и ничего шире экрана (Вебмастер: spb.hit-ceramics.ru NOT_MOBILE_FRIENDLY с 27.09;
   W5a 27.09 закрыла мелкий кегль только на contacts/services/карточке). Перекрытия правил, которые дают видимому
   тексту <12 px на 320/390 px, найдены в браузере на 51 шаблоне (главная, каталог, карточки, о компании, помощь,
   сервисы, обзоры, документы, бренды, блог, акции). Действуют только до 767 px и только там, где действовало исходное
   правило; «html » впереди — на единицу специфичнее исходника. Десктоп не меняется. Генератор: ~/hc-mobile-fix-2026-09-30/work. */
@media (max-width:767px){
html #hc-company .ha-button,
html #hc-company .ha-card a,
html #hc-company .ha-catalog > a > span,
html #hc-company .ha-catalog p,
html #hc-company .ha-contact-actions,
html #hc-company .ha-crumb,
html #hc-company .ha-eyebrow,
html #hc-company .ha-facts span,
html #hc-company .ha-hero-note,
html #hc-company .ha-inline-links,
html #hc-company .ha-nav,
html #hc-company .ha-number,
html #hc-company .ha-place-copy .ha-eyebrow,
html #hc-company .ha-place-copy > a,
html #hc-company .ha-place-copy > p:not(.ha-eyebrow),
html #hc-company .ha-place-photo > span,
html #hc-company .ha-proof p,
html #hc-company .ha-text-link,
html #hc-hero-slider .hc-config-banner .hc-config-banner__note,
html #hc-hero-slider .hc-config-banner__eyebrow,
html #hc-hero-slider .hc-config-banner__features,
html #hc-hero-slider .hc-config-banner__scene-label small,
html #hc-hero-slider .hc-fin__eyebrow,
html #hc-home-help .hhr-eyebrow,
html #hc-landings-root .hcl-benefits span,
html #hc-landings-root .hcl-collection-body small,
html #hc-landings-root .hcl-collection-link,
html #hc-landings-root .hcl-eyebrow,
html #hc-landings-root .hcl-note,
html #hc-landings-root .hcl-sample-link,
html #hc-services .hc-svc .hc-svc__links a,
html #hc-seven .hc-ship__note,
html #hc-seven .hx-button,
html #hc-seven .hx-crumb,
html #hc-seven .hx-eyebrow,
html #hc-seven .hx-nav a,
html #hc-seven .hx-search span,
html #hc-seven .hx-start b,
html #hc-seven .hx-start span,
html #hc-seven .hx-toc > p,
html #hc-seven .hx-toc a,
html #hc-seven .news2 .period-block,
html #hc-seven .sales2 .period-block,
html #hc-tools .hs-card-more,
html #hc-tools .hs-contact-actions > a.ht-service-link,
html #hc-tools .hs-crumb,
html #hc-tools .hs-eyebrow,
html #hc-tools .hs-feature-foot,
html #hc-tools .hs-phones small,
html #hc-tools .ht-benefits > div > span,
html #hc-tools .ht-benefits small,
html #hc-tools .ht-features span,
html #hc-tools .ht-free,
html #hc-tools .ht-image-label,
html #hc-tools .ht-input,
html #hc-tools .ht-input dt,
html .hc-consent-body h2 span,
html .hc-consent-menu a,
html .hc-doc-count,
html .hc-doc-crumb,
html .hc-doc-filters label span,
html .hc-doc-icon,
html .hc-doc-kicker,
html .hc-doc-meta,
html .hc-doc-stats span,
html .hc-faq .hcf-filter,
html .hc-info-crumb,
html .hc-info-kicker,
html .hc-info-number,
html .hc-product-promo .hc-promo .hc-promo__eyebrow,
html .hc-product-promo .hc-promo__eyebrow,
html .hc-req__btn,
html .hc-req__crumb,
html .hc-req__eyebrow,
html .hc-req__hint,
html .hc-req__nav span,
html .hc-req__row dt,
html .hc-req__section-title small,
html .hcf-count,
html .hcf-crumb,
html .hcf-group-title > span,
html .hcf-kicker,
html .hcux-nav b,
html .wrapper1.front_page #content .NEWS .news2 .period-block,
html .wrapper1.front_page #content .SALE .sales2 .info-sticker-block .countdown > .item > .text,
html .wrapper1.front_page #content .SALE .sales2 .period-block,
html body .view_sale_block.v2 .values .item .text{font-size:12px}
html #hc-company .ha-place-copy .ha-hours,
html .hcux .hcc-sec td{font-size:12px!important}
}
@media (max-width: 1100px) and (max-width:767px){
html #hc-tools .hs-button{font-size:12px}
}
@media (max-width: 480px) and (max-width:767px){
html .hcux .hcc-presets button,
html .hcux-intro,
html body .wrapper1 #content .catalog_block.items .catalog_item .stickers [class^="sticker_"]{font-size:12px}
}
@media (max-width: 760px) and (max-width:767px){
html #hc-company .ha-button,
html #hc-company .ha-eyebrow,
html #hc-company .ha-facts span,
html #hc-company .ha-nav,
html #hc-seven .hx-crumb,
html #hc-seven .hx-nav a,
html #hc-seven .hx-toc a,
html #hc-seven .partners .title,
html #hc-seven td,
html #hc-seven th,
html #hc-tools .hs-button,
html #hc-tools .hs-count,
html #hc-tools .hs-crumb,
html #hc-tools .hs-eyebrow,
html #hc-tools .hs-feature-foot,
html #hc-tools .hs-filters button,
html #hc-tools .hs-photo-caption,
html #hc-tools .ht-benefits small,
html #hc-tools .ht-card-details summary,
html #hc-tools .ht-image-label{font-size:12px}
}
@media (max-width: 767px) and (max-width:767px){
html #hc-hero-slider .hc-config-banner .hc-config-banner__note,
html #hc-hero-slider .hc-config-banner__eyebrow,
html #hc-hero-slider .hc-config-banner__features,
html #hc-hero-slider .hc-config-banner__scene-label,
html #hc-hero-slider .hc-config-banner__scene-label small,
html #hc-hero-slider .hc-fin .hc-fin__note,
html #hc-hero-slider .hc-fin__eyebrow,
html #hc-home-start strong,
html #hc-landings-root #hcl-clear,
html #hc-landings-root .hcl-benefits b,
html #hc-landings-root .hcl-benefits span,
html #hc-landings-root .hcl-collection-body small,
html #hc-landings-root .hcl-collection-link,
html #hc-landings-root .hcl-eyebrow,
html #hc-landings-root .hcl-filter,
html #hc-landings-root .hcl-sample-link,
html #hc-landings-root .hcl-sample-name,
html #hc-landings-root .hcl-section-nav a,
html #right_block_ajax .catalog_block .hc-product-variants > summary,
html .hc-product-promo .hc-promo p,
html .hc-product-promo .hc-promo__eyebrow,
html .wrapper1.front_page #content .CATALOG_TAB .top_block .right_block_wrapper > a,
html .wrapper1.front_page #content .NEWS .news2 .period-block,
html .wrapper1.front_page #content .drag-block .top_block > a{font-size:12px}
}
@media (max-width: 800px) and (max-width:767px){
html #hcStudio .ux-footer-value span{font-size:12px}
}
@media (max-width: 900px) and (max-width:767px){
html body #hcStudio .ux-footer-value span{font-size:12px}
}
/* Служебные подписи Aspro в em (0,8–0,87 от 13 px): «Показать ещё», «Назад к списку», выбранный пункт меню раздела, сортировка */
@media (max-width:767px){
html .ajax_load_btn .more_text_ajax,
html .select_head_wrap .menu_item_selected,
html .select_head_wrap .menu_item_selected > span,
html .bottom-links-block .back-url-text,
html .filter-panel__sort .dropdown-select__title,
html .filter-panel__sort .dropdown-select__title > span{font-size:12px}
}
/* Отзывы: в текстах 49663 и 49666 слова склеены двойными &nbsp; («производилась  профессиональной» = 282 px одной строкой) —
   на 320 px слайдер отзывов давал прокрутку вбок на 8 px. Разрешаем перенос склейки. */
@media (max-width:767px){
html .reviews .preview-text{overflow-wrap:anywhere}
}

/* /upload/hc_js/hc-mobile-sale-fit.css */
/* hc-mobile-sale-fit-2026-10-05: prevent savings from crossing into the next card. */
@media (max-width:479px){
 html .catalog_block .catalog_item .js_price_wrapper>.price_matrix_wrapper{min-width:0;max-width:100%}
 html .catalog_block .catalog_item .sale-number{display:flex;flex-wrap:wrap;max-width:100%;white-space:normal}
 html .catalog_block .catalog_item .inner-sale{box-sizing:border-box;max-width:100%}
 html .catalog_block .catalog_item .inner-sale .text{white-space:normal}
 html .catalog_block .catalog_item .inner-sale .values_wrapper{white-space:nowrap}
}

/* /upload/hc/categories-v2-20260908/categories-ui.css */
/* HIT Ceramics: category imagery and navigation, 2026-09-08. */
.hc-cv2-photo{display:block;width:100%;height:auto;max-width:100%;overflow:hidden;background:#fff;border-radius:0;flex-shrink:0}
.hc-cv2-image-slot{display:inline-flex;align-items:center;justify-content:center;background:#fff}
.hc-cv2-image-slot>.hc-cv2-photo{width:100%;height:100%;object-fit:contain}
/* Homepage material cards. */
.sections_wrapper .list.items>.row.hc-cv2-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:0!important}
.hc-cv2-grid::before,.hc-cv2-grid::after{display:none!important}
.hc-cv2-grid .hc-cv2-card{display:flex;flex-direction:column;min-width:0;padding:12px 18px 20px;background:#fff;border:1px solid #e9e9e9;border-radius:12px;color:#242424;text-decoration:none;transition:border-color .15s,box-shadow .15s}
.hc-cv2-card .hc-cv2-photo{width:100%;height:auto;aspect-ratio:362/290}
.hc-cv2-label{display:block;padding:8px 0 0;font-size:16px;font-weight:600;line-height:1.4}
.hc-cv2-card:hover,.hc-cv2-card:focus-visible{border-color:#ef4b43;box-shadow:0 6px 22px #2121210a}
.hc-cv2-card:hover .hc-cv2-label{color:#d6342d}
/* Sidebar: one predictable image/text/chevron row per category. */
.menu_top_block .menu.dropdown>li>a.hc-category-link{display:grid!important;grid-template-columns:42px minmax(0,1fr) 8px;align-items:center;gap:10px;min-height:62px;padding:10px 12px!important;background:#fff!important;border:0!important;border-bottom:1px solid #f0f0f0!important;border-radius:0!important;color:#333}
.menu_top_block .menu.dropdown>li>a.hc-category-link>.image{position:static!important;float:none!important;width:42px!important;height:40px!important;margin:0!important;grid-column:1;grid-row:1}
.menu_top_block .menu.dropdown>li>a.hc-category-link>.name{grid-column:2;grid-row:1;margin:0!important;padding:0!important;font-size:13px;line-height:1.4;font-weight:500}
.menu_top_block .menu.dropdown>li>a.hc-category-link>i.right{position:static!important;grid-column:3;grid-row:1;margin:0!important;transform:none!important}
.menu_top_block .menu.dropdown>li>a.hc-category-link>.toggle_block{display:none!important}
.menu_top_block .menu.dropdown>li.current>a.hc-category-link,.menu_top_block .menu.dropdown>li>a.hc-category-link:hover{color:#ce352e!important;box-shadow:inset 3px 0 #ee4c43}
.menu_top_block .menu.dropdown>li>a.hc-category-link:focus-visible{outline:2px solid #ee4c43;outline-offset:-2px}
.menu_top_block .menu.dropdown{border:1px solid #e9e9e9;border-radius:10px;overflow:visible}
/* Category landing tiles, not product cards. */
.catalog_section_list td.image:has(.hc-cv2-photo){width:90px!important;min-width:90px;padding-right:14px!important;vertical-align:middle}
.catalog_section_list td.image .thumb.hc-cv2-image-slot{width:76px!important;height:68px!important;max-width:none}
#mobilemenu .top-mobile-menu__image.hc-cv2-image-slot{width:44px!important;height:40px!important;flex:0 0 44px!important;margin-right:12px}
#mobilemenu .hc-cv2-photo,.mega_fixed_menu .hc-cv2-photo{width:44px;height:40px}
/* Desktop catalog flyout. Namespace avoids Aspro's generic dropdown/list rules. */
.wrapper1 .menu-row .mega-menu table td.hc-mega-host>.wrap>.hc-mega-dropdown{background:#fff;border-top:1px solid #eee;box-shadow:0 18px 36px #17222f1a;max-height:calc(100dvh - 100px);padding:0!important;overflow:auto}
.hc-mega-dropdown::after{display:none!important}
.hc-mega{max-width:1420px;margin:0 auto;padding:0 28px 22px;color:#242424;text-align:left;white-space:normal}
.hc-mega-bar{height:60px;display:flex;align-items:center;gap:24px;border-bottom:1px solid #ededed}
.hc-mega-bar>strong{font-size:17px;font-weight:600;letter-spacing:-.2px}
.hc-mega a.hc-mega-all{margin-left:auto;font-size:13px;color:#666!important;padding:8px 0!important}
.hc-mega .hc-mega-close{font:26px/1 Arial,sans-serif;border:0;background:#fff;color:#666;width:36px;height:36px;padding:0;cursor:pointer;border-radius:6px}
.hc-mega-close:hover{background:#f5f5f5}
.hc-mega-body{display:grid;grid-template-columns:300px minmax(0,1fr);height:min(562px,calc(100dvh - 235px));min-height:300px}
.hc-mega-nav{overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;border-right:1px solid #ededed;padding:10px 16px 10px 0}
.hc-mega .hc-mega-tab{display:grid;grid-template-columns:44px minmax(0,1fr) 12px;align-items:center;gap:12px;width:100%;min-height:44px;margin:0;padding:4px 10px 4px 0;border:0;border-radius:7px;background:#fff;color:#404040;font:500 13px/1.35 Montserrat,Arial,sans-serif;text-align:left;cursor:pointer;transition:color .15s}
.hc-mega-tab>.hc-cv2-photo{width:44px;height:39px}
.hc-mega .hc-mega-tab.is-active{color:#cd352d;box-shadow:inset 3px 0 #ef4b43;font-weight:600}
.hc-mega .hc-mega-tab:hover{color:#cd352d}
.hc-mega-arrow{color:#999;font-size:20px;line-height:1}
.hc-mega-panel{min-width:0;padding:28px 0 20px 36px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
.hc-mega-panel-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 0 20px;border-bottom:1px solid #ededed;margin-bottom:24px}
.hc-mega-copy{min-width:0}
.hc-mega-eyebrow{font-size:11px!important;line-height:1.5;letter-spacing:.08em;text-transform:uppercase;color:#888;margin:0 0 9px!important}
.hc-mega .hc-mega-title{font-size:25px!important;line-height:1.25!important;font-weight:600!important;letter-spacing:-.5px;margin:0 0 16px!important;color:#222}
.hc-mega a.hc-mega-section{display:inline-block;color:#d33c34!important;font-size:13px;font-weight:600;padding:0!important}
.hc-mega-panel-head>.hc-cv2-photo{width:180px;height:142px;flex:0 0 180px}
.hc-mega .hc-mega-subtitle{font-size:12px!important;text-transform:uppercase;letter-spacing:.07em;color:#858585;margin:0 0 12px!important;font-weight:500}
.hc-mega-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 28px}
.hc-mega a.hc-mega-link{display:block;padding:10px 0!important;font-size:14px;line-height:1.4;color:#3e3e3e!important;text-decoration:none;border-bottom:1px solid #f0f0f0}
.hc-mega a.hc-mega-link:hover,.hc-mega a.hc-mega-all:hover{color:#d33c34!important}
.hc-mega :is(a,button):focus-visible{outline:2px solid #e64b43;outline-offset:2px;border-radius:3px}
.wrapper1 .mega-menu td.hc-mega-host.hc-menu-open>.wrap>.hc-mega-dropdown{opacity:1!important;visibility:visible!important;display:block!important}
.wrapper1 .mega-menu td.hc-mega-host.hc-menu-dismissed>.wrap>.hc-mega-dropdown{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
@media(min-width:1700px){.hc-mega{max-width:1500px}.hc-mega-body{grid-template-columns:320px minmax(0,1fr)}.hc-mega-links{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1199px){.hc-mega{padding:0 22px 18px}.hc-mega-body{grid-template-columns:270px minmax(0,1fr)}.hc-mega-panel{padding-left:24px}.hc-mega-panel-head>.hc-cv2-photo{width:130px;flex-basis:130px}.hc-mega .hc-mega-title{font-size:22px!important}.sections_wrapper .list.items>.row.hc-cv2-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.sections_wrapper .list.items>.row.hc-cv2-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.hc-cv2-grid .hc-cv2-card{padding:8px 10px 14px;border-radius:9px}.hc-cv2-label{font-size:13px}.catalog_section_list td.image:has(.hc-cv2-photo){width:74px!important;min-width:74px;padding-right:10px!important}.catalog_section_list td.image .thumb.hc-cv2-image-slot{width:60px!important;height:56px!important}}
@media(prefers-reduced-motion:reduce){.hc-cv2-card,.hc-mega-tab{transition:none!important}}
.hc-mega-bar>strong{white-space:nowrap;flex:0 0 auto}
.hc-mega a.hc-mega-all{width:auto!important;flex:0 0 auto}
.hc-mega .hc-mega-close{flex:0 0 36px}
.wrapper1 .mega-menu td.hc-mega-host.hc-menu-dismissed>.wrap>.hc-mega-dropdown{display:none!important}

/* Illustrated subcategories and the six flexible-ceramic groups. */
.hc-mega a.hc-mega-link.hc-mega-link-illustrated{display:grid;grid-template-columns:56px minmax(0,1fr);align-items:center;gap:12px;padding:7px 0!important;min-height:72px}
.hc-mega .hc-subcategory-thumb{width:56px!important;height:56px!important;object-fit:contain;display:block;background:#fff}
.menu_top_block .menu.dropdown>li>.dropdown .image img{width:46px;height:46px;object-fit:contain;background:#fff}
.catalog_section_list .image img{object-fit:contain;background:#fff}
.catalog_section_list{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0!important}
.catalog_section_list::before,.catalog_section_list::after{display:none}
.catalog_section_list>.item_block{float:none;width:100%!important;min-width:0;padding:0!important;margin:0!important}
.catalog_section_list .section_item{height:100%;background:#fff;border:1px solid #e9e9e9;border-radius:12px;padding:20px!important;margin:0!important}
.catalog_section_list td.image{width:108px!important;min-width:108px;padding-right:16px!important;vertical-align:top}
.catalog_section_list td.image .thumb{width:92px!important;height:92px!important;display:block}
.catalog_section_list td.image img{width:92px!important;height:92px!important;object-fit:contain;max-height:none!important}
.catalog_section_list .name{font-size:17px;font-weight:600;line-height:1.35}
@media(max-width:1100px){.catalog_section_list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.catalog_section_list{grid-template-columns:1fr;gap:12px}.catalog_section_list .section_item{padding:14px!important}}

.catalog_section_list .section_item_inner,.catalog_section_list .section_item_inner tbody{display:block;width:100%}
.catalog_section_list .section_item_inner tr{display:flex;align-items:center;gap:16px}
.catalog_section_list td.image{display:block!important;flex:0 0 92px;width:92px!important;min-width:92px;padding:0!important;margin:0!important}
.catalog_section_list td.section_info{display:block!important;flex:1;min-width:0;padding:0!important}
.catalog_section_list .name{text-align:left!important;margin:0!important}
.catalog_section_list .name .font_md{font-size:17px!important;line-height:1.35}
.catalog_section_list .element-count2{display:block;margin-top:6px;font-size:13px!important;font-weight:400}

/* Refined visual hierarchy: material cards are compact navigation, benefits are secondary. */
.hc-cv2-grid .hc-cv2-card{padding:14px 18px 18px}
.hc-cv2-card .hc-cv2-photo{width:min(100%,220px);height:176px;aspect-ratio:auto;align-self:center}
.hc-cv2-label{padding-top:12px}
.hc-benefits.grey_block{background:#fff!important;border-top:1px solid #ededed;border-bottom:1px solid #ededed}
.hc-benefits .item-views.tizers{padding:38px 0!important}
.hc-benefits .item-views.tizers .row.list{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px;margin:0!important}
.hc-benefits .row.list::before,.hc-benefits .row.list::after{display:none!important}
.hc-benefits .item-wrapper{width:auto!important;float:none!important;padding:0!important;margin:0!important;min-width:0}
.hc-benefits .item{padding:0!important;margin:0!important}
.hc-benefits .hc-benefit-slot{width:96px!important;height:96px!important;margin:0 auto 12px!important;display:block!important;float:none!important;background:#fff!important}
.hc-benefits .hc-benefit-image{display:block;width:96px!important;height:96px!important;object-fit:contain;max-width:none!important}
.hc-benefits .inner-text{padding:0!important}
.hc-benefits .title{font-size:14px!important;line-height:1.5!important;font-weight:600!important}
@media(max-width:1199px){.hc-cv2-card .hc-cv2-photo{height:156px;max-width:200px}.hc-benefits .item-views.tizers .row.list{gap:16px}.hc-benefits .title{font-size:13px!important}}
@media(max-width:767px){.hc-benefits .item-views.tizers .row.list{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}.hc-benefits .item-wrapper:last-child{grid-column:1 / -1;max-width:260px;justify-self:center}.hc-benefits .item-views.tizers{padding:28px 0!important}.hc-benefits .hc-benefit-slot,.hc-benefits .hc-benefit-image{width:80px!important;height:80px!important}}
@media(max-width:600px){.hc-cv2-grid .hc-cv2-card{padding:10px 12px 14px}.hc-cv2-card .hc-cv2-photo{height:112px;max-width:148px}.hc-cv2-label{font-size:13px;padding-top:8px}}
.hc-benefits .maxwidth-theme{background:#fff!important;padding-top:0!important;padding-bottom:0!important}
.hc-benefits .hc-benefit-slot,.hc-benefits .hc-benefit-image{max-height:none!important}
.hc-benefits .item{display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important}
.hc-benefits .inner-text{width:100%;text-align:center!important}
.hc-benefits .hc-benefit-slot{flex-shrink:0}

/* Common section-card template: applies to every current and future section. */
.catalog_section_list .section_item{position:relative;transition:box-shadow .15s,border-color .15s}
.catalog_section_list .section_item:hover{border-color:#ddd;box-shadow:0 12px 28px #20202012}
.catalog_section_list .section_info .name a::after{content:"";position:absolute;inset:0;z-index:1;border-radius:12px}
.catalog_section_list .section_item:focus-within{outline:2px solid #ef4b43;outline-offset:2px}
.catalog_section_list td.image .hc-cv2-photo{width:92px!important;height:92px!important}
.catalog_section_list td.image .thumb.hc-cv2-image-slot{width:92px!important;height:92px!important}
.catalog_section_list .section_info .name,.catalog_section_list .section_info .font_md{word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important;white-space:normal!important}
.hc-mega a.hc-mega-tab{padding:4px 10px 4px 0!important;width:100%!important;text-decoration:none!important;white-space:normal!important}
.hc-mega .hc-mega-tab span{word-break:normal;overflow-wrap:normal;hyphens:none}
#mobilemenu .top-mobile-menu__link{display:flex!important;align-items:center!important;gap:12px;min-height:64px;padding:12px 18px!important;background:#fff!important;white-space:normal!important}
#mobilemenu .top-mobile-menu__link>.top-mobile-menu__image{display:flex!important;align-items:center;justify-content:center;position:static!important;flex:0 0 44px!important;width:44px!important;height:44px!important;min-width:44px;margin:0!important;padding:0!important;background:#fff!important;border-radius:0!important}
#mobilemenu .top-mobile-menu__image::before,#mobilemenu .top-mobile-menu__image::after{display:none!important}
#mobilemenu .top-mobile-menu__image img,#mobilemenu .top-mobile-menu__image .hc-cv2-photo{width:44px!important;height:44px!important;max-width:44px!important;max-height:44px!important;object-fit:contain;background:#fff!important;mix-blend-mode:multiply}
#mobilemenu .top-mobile-menu__title{flex:1;min-width:0;width:auto!important;font-size:14px!important;line-height:1.45!important;word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important;white-space:normal!important;padding:0!important}
#mobilemenu .top-mobile-menu__link>.arrow{position:static!important;flex:0 0 14px;align-self:center;margin:0!important;padding:0!important;width:14px!important;height:auto!important;line-height:1!important;background:none!important}
@media(max-width:600px){.catalog_section_list .section_item_inner tr{gap:12px}.catalog_section_list td.image{flex-basis:76px!important;width:76px!important;min-width:76px!important}.catalog_section_list td.image .thumb,.catalog_section_list td.image img,.catalog_section_list td.image .hc-cv2-photo,.catalog_section_list td.image .thumb.hc-cv2-image-slot{width:76px!important;height:76px!important}.catalog_section_list .name .font_md{font-size:15px!important}}

#mobilemenu .menu_title,#mobilemenu .menu_title>a{background:#fff!important}
#mobilemenu .menu_title>a.hc-mobile-section-heading{display:grid!important;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:12px;padding:16px 38px 16px 18px!important;white-space:normal!important}
#mobilemenu .menu_title>a.hc-mobile-section-heading:not(:has(.top-mobile-menu__image)){grid-template-columns:minmax(0,1fr)}
#mobilemenu .hc-mobile-head-copy{display:block;min-width:0;word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important;line-height:1.4}
#mobilemenu .hc-mobile-section-name{display:block;font-size:15px;font-weight:600;word-break:normal!important;overflow-wrap:normal!important}
#mobilemenu .hc-mobile-head-copy .hc-mm-hint{display:block!important;font-size:12px!important;line-height:1.4;margin-top:4px}
#mobilemenu .hc-mobile-section-heading>.top-mobile-menu__image{display:flex!important;width:44px!important;height:44px!important;margin:0!important;background:#fff!important}
.catalog_section_list .section_item_inner,.catalog_section_list .section_item_inner tbody,.catalog_section_list .section_item_inner tr,.catalog_section_list .section_item_inner td,.catalog_section_list .section_info ul,.catalog_section_list .section_info li,.catalog_section_list .section_info a{position:static!important}

/* White navigation surfaces need an explicit foreground in Aspro's dark theme. */
#mobilemenu,.hc-benefits,.catalog_section_list,.hc-mega,.hc-cv2-grid{color-scheme:light;--white_text_black:#303030;--basic_text_black:#555;--light_basic_text_black:#777;--card_bg_black:#fff}
#mobilemenu,#mobilemenu .menu,#mobilemenu .menu>li,#mobilemenu .menu ul,#mobilemenu .menu ul>li,#mobilemenu .menu_back,#mobilemenu .menu_title{background:#fff!important;border-color:#ededed!important;color:#303030!important}
#mobilemenu a,#mobilemenu .top-mobile-menu__title,#mobilemenu .hc-mobile-section-name{color:#303030!important;-webkit-text-fill-color:currentColor}
#mobilemenu .menu_back a{background:#fff!important;color:#666!important}
#mobilemenu .hc-mm-hint,#mobilemenu .svg,#mobilemenu .arrow{color:#888!important}
#mobilemenu .svg path{fill:currentColor}
#mobilemenu a:hover,#mobilemenu a:focus-visible{color:#d33c34!important}
.hc-benefits .title,.hc-benefits .title span,.hc-benefits .title a,.hc-benefits .inner-text{color:#303030!important;-webkit-text-fill-color:currentColor}
.hc-cv2-card,.hc-cv2-label{color:#303030!important}
.hc-cv2-card:hover .hc-cv2-label{color:#d33c34!important}
.catalog_section_list .section_item{background:#fff!important;border-color:#e9e9e9!important}
.catalog_section_list .section_info .name,.catalog_section_list .section_info .name a,.catalog_section_list .section_info .name .font_md{color:#303030!important;-webkit-text-fill-color:currentColor}
.catalog_section_list .section_info .sect a{color:#555!important}
.catalog_section_list .element-count,.catalog_section_list .element-count2{color:#777!important;border-color:#e2e2e2!important}
/* Catalog index has its own compact structure; avoid theme equal-height tables. */
.catalog_section_list.hc-catalog-overview{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start!important;align-content:start!important}
.hc-overview-card{min-width:0;height:auto!important;margin:0!important;background:#fff!important;color:#303030;border:1px solid #e9e9e9;border-radius:12px;overflow:hidden}
.hc-overview-head{display:flex!important;align-items:center;gap:16px;min-height:128px;padding:18px!important;text-decoration:none!important;color:#303030!important;background:#fff!important}
.hc-overview-image{flex:0 0 80px;width:80px;height:80px;display:flex;align-items:center;justify-content:center;background:#fff}
.hc-overview-image img,.hc-overview-image .hc-cv2-photo{width:80px!important;height:80px!important;max-width:80px!important;max-height:80px!important;object-fit:contain}
.hc-overview-copy{display:block;min-width:0;flex:1}
.hc-overview-title{display:block;color:#303030!important;font-size:16px;font-weight:600;line-height:1.4;word-break:normal;overflow-wrap:normal;hyphens:none}
.hc-overview-count{display:block;color:#777!important;font-size:13px;line-height:1.4;margin-top:5px}
.hc-overview-arrow{display:none;color:#888;font-size:25px;line-height:1;flex:0 0 12px}
.hc-overview-children{padding:0 18px 16px;display:grid;gap:0}
.hc-overview-children a{display:block;padding:9px 0!important;color:#555!important;font-size:13px;line-height:1.45;word-break:normal;overflow-wrap:normal;hyphens:none;text-decoration:none!important;border-top:1px solid #f0f0f0}
.hc-overview-children .hc-overview-all{color:#d33c34!important;font-weight:500;margin-top:4px}
.hc-overview-head:focus-visible,.hc-overview-children a:focus-visible{outline:2px solid #e94b43;outline-offset:-3px}
.hc-overview-head:hover .hc-overview-title,.hc-overview-children a:hover{color:#d33c34!important}
@media(max-width:1100px){.catalog_section_list.hc-catalog-overview{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.catalog_section_list.hc-catalog-overview{grid-template-columns:1fr;gap:12px}.hc-overview-head{padding:14px!important;min-height:104px;gap:12px}.hc-overview-image{flex-basis:64px;width:64px;height:64px}.hc-overview-image img,.hc-overview-image .hc-cv2-photo{width:64px!important;height:64px!important}.hc-overview-title{font-size:15px}.hc-overview-arrow{display:block}.hc-overview-card.is-open .hc-overview-arrow{transform:rotate(90deg)}.hc-overview-card:not(.is-open) .hc-overview-children{display:none}.hc-overview-children{padding:0 16px 12px}.hc-overview-children a{font-size:14px;padding:12px 0!important}}
/* Keep the catalogue usable while the third-party welcome popup is visible. */
body:has(#mobilemenu.show) .b24-widget-button-wrapper,body:has(#mobilemenu.show) .b24-widget-button-popup,body:has(#mobilemenu.show) .b24-widget-button-shadow{visibility:hidden!important;pointer-events:none!important}
@media(min-width:768px){.catalog_section_list.hc-catalog-overview{align-items:stretch!important}.hc-overview-children{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px;align-content:start}.hc-overview-children .hc-overview-all{grid-column:1 / -1}}

/* /upload/hc/product-promos-20260908/product-promos.css */
/* Editorial cards inside the product listing; independent of product controls. */
.catalog_block.items>.hc-product-promo{display:flex;padding:0;align-self:stretch;min-width:0;float:none;box-sizing:border-box}
.hc-product-promo .hc-promo{position:relative;display:flex;isolation:isolate;width:100%;min-height:480px;overflow:hidden;border:1px solid #fff;border-radius:8px;background:#283b34;color:#fff!important;text-decoration:none!important;transition:box-shadow .2s;}
.hc-product-promo .hc-promo:focus-visible{outline:3px solid #b77652;outline-offset:-4px}
.hc-product-promo .hc-promo:hover{box-shadow:inset 0 0 0 2px #b77652}
.hc-product-promo .hc-promo__image{position:absolute!important;inset:0;width:100%!important;height:100%!important;max-height:none!important;object-fit:cover;object-position:57% center;z-index:-2;transition:transform .4s}
.hc-product-promo .hc-promo:hover .hc-promo__image{transform:scale(1.025)}
.hc-product-promo .hc-promo:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(18,33,28,.94) 0%,rgba(18,33,28,.7) 45%,rgba(18,33,28,.08) 72%,rgba(18,33,28,.55) 100%)}
.hc-product-promo .hc-promo__content{display:flex;flex-direction:column;align-items:flex-start;width:100%;padding:30px 23px 25px;box-sizing:border-box}
.hc-product-promo .hc-promo__eyebrow{font-size:9px;line-height:1.5;font-weight:700;letter-spacing:.13em;color:#e8d3b4!important}
.hc-product-promo .hc-promo h3{font-size:27px;line-height:1.14;letter-spacing:-.035em;font-weight:600;margin:22px 0 15px;color:inherit!important;overflow-wrap:normal;word-break:normal}
.hc-product-promo .hc-promo p{font-size:13px;line-height:1.55;margin:0 0 28px;color:inherit!important;opacity:.88;max-width:245px}
.hc-product-promo .hc-promo__cta{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;margin-top:auto;background:#fff;color:#26382f!important;border-radius:5px;padding:13px 14px;font-size:12px;line-height:1.4;font-weight:600;box-sizing:border-box}
.hc-product-promo .hc-promo__cta>span{font-size:20px;line-height:1}
.hc-product-promo .hc-promo--service{background:#f4f1eb;color:#342f29!important}
.hc-product-promo .hc-promo--service:after{background:linear-gradient(#f4f1eb 0%,#f4f1eb 38%,transparent 68%)}
.hc-product-promo .hc-promo--service .hc-promo__image{height:52%!important;top:auto;bottom:55px;object-fit:contain;mix-blend-mode:multiply}
.hc-product-promo .hc-promo--service .hc-promo__eyebrow,.hc-product-promo .hc-promo--sale .hc-promo__eyebrow{color:#84563d!important}
.hc-product-promo .hc-promo--sale{background:#e8d7c5;color:#3d3028!important}
.hc-product-promo .hc-promo--sale:after{background:linear-gradient(#e8d7c5 0%,#e8d7c5 40%,transparent 80%)}
.hc-product-promo .hc-promo--sale .hc-promo__image{top:40%;height:52%!important;object-fit:cover;object-position:0 0;mix-blend-mode:multiply}
.hc-product-promo .hc-promo--tools:after{background:linear-gradient(180deg,#273942 0%,#273942dd 43%,#27394222 80%)}
.hc-product-promo .hc-promo--tools .hc-promo__image{object-position:80% center}
@media(min-width:992px) and (max-width:1199px){.hc-product-promo .hc-promo__content{padding:24px 18px}.hc-product-promo .hc-promo h3{font-size:24px}}
@media(max-width:767px){.catalog_block.items>.hc-product-promo{width:100%!important;flex:0 0 100%!important;max-width:100%!important;padding:8px 0}.hc-product-promo .hc-promo{min-height:310px}.hc-product-promo .hc-promo__content{padding:24px;width:100%}.hc-product-promo .hc-promo h3{font-size:29px;max-width:280px;margin:14px 0 12px}.hc-product-promo .hc-promo p{max-width:240px;margin-bottom:22px}.hc-product-promo .hc-promo__cta{width:auto;min-width:220px}.hc-product-promo .hc-promo__image{object-position:65% center}.hc-product-promo .hc-promo:after{background:linear-gradient(90deg,#12211cf5,#12211c99 67%,#12211c22)}.hc-product-promo .hc-promo--service:after{background:linear-gradient(90deg,#f4f1eb 38%,#f4f1ebaa 70%,transparent)}.hc-product-promo .hc-promo--service .hc-promo__image{height:85%!important;width:65%!important;left:auto;right:-30px;bottom:0}.hc-product-promo .hc-promo--sale:after{background:linear-gradient(90deg,#e8d7c5 35%,#e8d7c5aa 75%,transparent)}.hc-product-promo .hc-promo--sale .hc-promo__image{top:0;left:auto;right:0;width:65%!important;height:100%!important}.hc-product-promo .hc-promo--tools:after{background:linear-gradient(90deg,#273942f5,#27394299 70%,#27394222)}}
@media(prefers-reduced-motion:reduce){.hc-product-promo .hc-promo__image{transition:none}}
/* Compact catalog navigation follows the site palette in both themes. */
.menu_top_block .menu.dropdown{padding:6px!important;border:1px solid #e4e4e4!important;border-radius:10px!important;background:#fff!important}
.menu_top_block .menu.dropdown>li{border:0!important;background:transparent!important}
.menu_top_block .menu.dropdown>li>a.hc-category-link{grid-template-columns:36px minmax(0,1fr) 8px!important;min-height:54px!important;padding:8px!important;gap:10px!important;border:0!important;border-radius:6px!important;background:transparent!important;color:#3a3a3a!important}
.menu_top_block .menu.dropdown>li>a.hc-category-link>.image{width:36px!important;height:36px!important;border-radius:6px;overflow:hidden;background:#fff}
.menu_top_block .menu.dropdown>li>a.hc-category-link>.name{font-size:12px!important;line-height:1.4!important;color:inherit!important;word-break:normal;overflow-wrap:normal}
.menu_top_block .menu.dropdown>li.current>a.hc-category-link,.menu_top_block .menu.dropdown>li>a.hc-category-link:hover{background:#f4eee8!important;color:#905b3c!important;box-shadow:none!important}
@media(prefers-color-scheme:dark){
 .menu_top_block .menu.dropdown{background:#242424!important;border-color:#3b3b3b!important}
 .menu_top_block .menu.dropdown>li>a.hc-category-link{color:#e4e4e4!important}
 .menu_top_block .menu.dropdown>li.current>a.hc-category-link,.menu_top_block .menu.dropdown>li>a.hc-category-link:hover{background:#38302a!important;color:#e9bb96!important}
}
/* Variant controls expand in their own card, never over the following row. */
#right_block_ajax .catalog_block .hc-product-variants{width:100%;text-align:left;border-top:1px solid var(--stroke_black,#e8e8e8)}
#right_block_ajax .catalog_block .hc-product-variants>summary{cursor:pointer;padding:13px 22px;font-size:12px;line-height:1.5;color:var(--white_text_black,#333);list-style:none;font-weight:500}
#right_block_ajax .catalog_block .hc-product-variants>summary::-webkit-details-marker{display:none}
#right_block_ajax .catalog_block .hc-product-variants>summary:after{content:'+';float:right;font-size:17px;line-height:1}
#right_block_ajax .catalog_block .hc-product-variants[open]>summary:after{content:'−'}
#right_block_ajax .catalog_block .hc-product-variants>summary:focus-visible{outline:2px solid #b77652;outline-offset:-3px}
#right_block_ajax .catalog_block .hc-product-variants .sku_props{position:static!important;inset:auto!important;opacity:1!important;visibility:visible!important;box-shadow:none!important;background:transparent!important;transition:none!important;width:auto!important}
#right_block_ajax .catalog_block .hc-product-variants:not([open]) .sku_props{display:none!important}
#right_block_ajax .catalog_block .hc-product-variants[open] .sku_props{display:block!important}
#right_block_ajax .catalog_block .hc-product-variants .bx_catalog_item_scu{padding:8px 22px 18px!important}
#right_block_ajax .catalog_block .item_block:has(.hc-product-variants[open]),#right_block_ajax .catalog_block .catalog_item:has(.hc-product-variants[open]),#right_block_ajax .catalog_block .inner_wrap:has(.hc-product-variants[open]){height:auto!important;min-height:0!important}
/* Match mobile promotional cards to the actual product-card edges. */
.hc-product-promo .hc-promo__cta svg{flex:0 0 18px;width:18px;height:18px;display:block;color:inherit}
.hc-product-promo .hc-promo{border-color:#ded8d0}
@media(max-width:767px){
 .catalog_block.items>.hc-product-promo{padding:8px var(--hc-promo-inset,6px)}
 .hc-product-promo .hc-promo{min-height:280px;border-radius:8px}
 .hc-product-promo .hc-promo__content{padding:20px}
 .hc-product-promo .hc-promo h3{font-size:25px;line-height:1.16;letter-spacing:-.025em;margin:14px 0 12px}
 .hc-product-promo .hc-promo p{font-size:12px;line-height:1.5;max-width:225px}
 .hc-product-promo .hc-promo__eyebrow{font-size:8px;letter-spacing:.1em}
 .hc-product-promo .hc-promo__cta{min-width:0;max-width:100%;padding:12px 14px;font-size:12px;gap:16px}
}
@media(prefers-color-scheme:dark){.hc-product-promo .hc-promo{border-color:#4c4943}}
/* One explicit palette for every mobile-menu level; light is the default. */
#mobilemenu{--hc-menu-bg:#fff;--hc-menu-fg:#303030;--hc-menu-muted:#737373;--hc-menu-line:#e8e8e8;--hc-menu-hover:#f6f2ee;--hc-menu-accent:#aa5637;color-scheme:light;--white_text_black:var(--hc-menu-fg);--basic_text_black:var(--hc-menu-fg);--light_basic_text_black:var(--hc-menu-muted);--card_bg_black:var(--hc-menu-bg)}
@media(prefers-color-scheme:dark){#mobilemenu{--hc-menu-bg:#242424;--hc-menu-fg:#ededed;--hc-menu-muted:#aaa;--hc-menu-line:#393939;--hc-menu-hover:#332e29;--hc-menu-accent:#e6b696;color-scheme:dark}}
#mobilemenu,#mobilemenu .mobilemenu-v1,#mobilemenu .wrap,#mobilemenu .menu,#mobilemenu .menu>li,#mobilemenu .menu ul,#mobilemenu .menu ul>li,#mobilemenu .menu_back,#mobilemenu .menu_title{background:var(--hc-menu-bg)!important;border-color:var(--hc-menu-line)!important;color:var(--hc-menu-fg)!important}
#mobilemenu a,#mobilemenu .menu a,#mobilemenu .menu_title>a,#mobilemenu .menu_back a,#mobilemenu .top-mobile-menu__link{background:var(--hc-menu-bg)!important;color:var(--hc-menu-fg)!important;border-color:var(--hc-menu-line)!important;-webkit-text-fill-color:currentColor}
#mobilemenu a>span,#mobilemenu .top-mobile-menu__title,#mobilemenu .hc-mobile-section-name{color:var(--hc-menu-fg)!important;-webkit-text-fill-color:currentColor}
#mobilemenu .hc-mm-hint,#mobilemenu .svg,#mobilemenu .arrow{color:var(--hc-menu-muted)!important}
#mobilemenu .menu_back a{color:var(--hc-menu-muted)!important}
#mobilemenu .svg path,#mobilemenu .svg use{fill:currentColor}
#mobilemenu a:hover,#mobilemenu a:focus-visible{background:var(--hc-menu-hover)!important;color:var(--hc-menu-accent)!important}
#mobilemenu a:hover>span:not(.arrow),#mobilemenu a:focus-visible>span:not(.arrow){color:var(--hc-menu-accent)!important}
#mobilemenu a:focus-visible{outline:2px solid var(--hc-menu-accent);outline-offset:-3px}
#mobilemenu .top-mobile-menu__link>.top-mobile-menu__image,#mobilemenu .hc-mobile-section-heading>.top-mobile-menu__image{background:#fff!important;border-radius:6px!important;overflow:hidden}
@media(max-width:767px){
 #right_block_ajax .catalog_block .hc-product-variants>summary{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:12px 8px;font-size:11px;white-space:nowrap}
 #right_block_ajax .catalog_block .hc-product-variants>summary:after{float:none;flex:0 0 auto;font-size:15px}
}

/* Shared catalog promo design: paper, ink and the site's red accent. */
.hc-product-promo .hc-promo{
 border-color:#e3e0da;
 background:#f7f6f2;
 color:#302c29!important;
}
.hc-product-promo .hc-promo:before{
 content:'';
 position:absolute;
 top:0;left:0;right:0;
 height:4px;
 background:#c9372b;
 z-index:2;
}
.hc-product-promo .hc-promo:after{
 background:none;
}
.hc-product-promo .hc-promo .hc-promo__content{
 position:relative;
 z-index:1;
 flex:1;
 min-height:0;
 padding:27px 23px 22px;
}
.hc-product-promo .hc-promo .hc-promo__eyebrow{
 display:inline-flex;
 align-items:center;
 gap:7px;
 color:#a82d25!important;
 font-size:9px;
 letter-spacing:.1em;
}
.hc-product-promo .hc-promo .hc-promo__eyebrow:before{
 content:'';
 width:7px;height:7px;
 flex:none;
 background:#c9372b;
 border-radius:50%;
}
.hc-product-promo .hc-promo h3{
 margin:20px 0 12px;
 color:#302c29!important;
 font-size:29px;
 line-height:1.13;
 letter-spacing:-.04em;
 font-weight:700;
}
.hc-product-promo .hc-promo p{
 max-width:270px;
 margin:0 0 24px;
 color:#615c57!important;
 opacity:1;
 font-size:12px;
 line-height:1.55;
}
.hc-product-promo .hc-promo .hc-promo__image{
 position:static!important;
 inset:auto!important;
 z-index:auto;
 display:block;
 flex:1 1 0;
 min-height:0;
 max-height:340px!important;
 width:100%!important;
 height:0!important;
 margin:12px auto 18px;
 object-fit:contain;
 object-position:center;
 mix-blend-mode:normal;
}
.hc-product-promo .hc-promo--visual .hc-promo__image{
 max-height:310px!important;
 object-fit:cover;object-position:center;
 border-radius:6px;
}
.hc-product-promo .hc-promo .hc-promo__cta{
 padding:14px 15px;
 border-radius:4px;
 background:#c9372b;
 color:#fff!important;
 font-size:12px;
 transition:background .2s;
}
.hc-product-promo .hc-promo:hover .hc-promo__cta{background:#ad2d23}
.hc-product-promo .hc-promo:focus-visible{outline-color:#c9372b}
@media(max-width:767px){
 .hc-product-promo .hc-promo{min-height:380px}
 .hc-product-promo .hc-promo .hc-promo__content{padding:21px 20px 20px}
 .hc-product-promo .hc-promo h3{max-width:none;margin:15px 0 9px;font-size:25px}
 .hc-product-promo .hc-promo p{max-width:none;font-size:11px;line-height:1.45}
 .hc-product-promo .hc-promo .hc-promo__image{
  max-height:150px!important;
  margin:8px auto 10px;
 }
 .hc-product-promo .hc-promo:not(.hc-promo--visual) .hc-promo__image{
  transform:scale(1.18);
 }
 .hc-product-promo .hc-promo--visual .hc-promo__image{
  max-height:140px!important;
 }
 .hc-product-promo .hc-promo .hc-promo__cta{width:100%;padding:12px 14px}
}
@media(prefers-reduced-motion:reduce){
 .hc-product-promo .hc-promo .hc-promo__cta{transition:none}
}

