/* ============================================================
   Master Kamenev — Redesign (cosmetic-only filter)
   Source: _redesign.css from designer (06.05.2026)
   ВЫРЕЗАНО per user request (расположение, размер кнопок и надписей не меняем):
     - display/flex/grid/gap/align-*/justify-*/text-align
     - width/height/min-height
     - padding/margin
     - font-size
     - все @media с grid-template-columns
     - material picker grid + sizes
     - product card flex layout + button sizing
     - hero/advantage icon sizes
   ОСТАВЛЕНО: цвета, фоны, бордеры, радиусы, тени, переходы,
              hover-эффекты, filter (перекрашивание иконок),
              letter-spacing/font-weight/line-height/text-wrap.
   ============================================================ */

:root {
  --mk-accent: oklch(0.50 0.055 32);
  --mk-accent-ink: oklch(0.42 0.055 32);
  --mk-accent-soft: oklch(0.94 0.018 32);
  --mk-radius: 4px;
  --mk-radius-lg: 6px;
  --mk-line: oklch(0.92 0.005 70);
  --mk-ink: oklch(0.28 0.012 70);
}

/* Page tone */
body { background: oklch(0.985 0.005 70) !important; color: oklch(0.28 0.012 70) !important; }

/* Buttons — radius + smooth transitions + hover */
.btn, .btn-primary, .header .catalog-toggle, .header .catalog-button,
.tabs .tabs__buttons .active .btn, .show-more a, .btn-arrow {
  border-radius: 4px !important;
  transition: background-color .18s ease, color .18s ease, border-color .18s ease, transform .18s ease !important;
}
.btn-primary:hover, .header .catalog-toggle:hover, .header .catalog-button:hover {
  background-color: oklch(0.42 0.055 32) !important;
  color: #fff !important;
}

/* Cards / product tiles — softer corners, subtler shadow, gentle line */
.product, .article, .card, .stage, .faq, .uislider,
.swiper-slide, .catalog .catalog__item {
  border-radius: 6px !important;
}
.product, .article, .card {
  box-shadow: 0 1px 2px rgba(40,30,20,0.04), 0 8px 24px -16px rgba(40,30,20,0.10) !important;
  border-color: oklch(0.92 0.005 70) !important;
  transition: transform .2s ease, box-shadow .2s ease !important;
}
.product:hover, .article:hover, .card:hover {
  transform: translateY(-2px);
  box-shadow: 0 1px 2px rgba(40,30,20,0.05), 0 14px 32px -16px rgba(40,30,20,0.14) !important;
}

/* Inputs / selects — radius, gentle border, accent focus ring */
input[type=text], input[type=email], input[type=tel], input[type=number],
textarea, select, .form-control {
  border-radius: 4px !important;
  border-color: oklch(0.92 0.005 70) !important;
  transition: border-color .15s ease, box-shadow .15s ease !important;
}
input:focus, textarea:focus, select:focus {
  outline: none !important;
  border-color: oklch(0.50 0.055 32) !important;
  box-shadow: 0 0 0 3px oklch(0.94 0.018 32) !important;
}

/* Dividers — lighter line color */
hr, .divider, .header, .topline, .footer {
  border-color: oklch(0.92 0.005 70) !important;
}

/* Headings — typography polish (no font-size) */
h1, h2, h3, .title, .stage__title {
  letter-spacing: -0.012em !important;
  text-wrap: pretty;
}

/* Links — smooth hover */
a { transition: color .15s ease, border-color .15s ease; }

/* Multibutton — calmer pulse */
.multibutton-button:before, .multibutton-button:after {
  opacity: 0.5;
}

/* Hero photo — kill the white background of the source webp via blend */
.offer__image img, .stage__image img, .hero__image img {
  mix-blend-mode: multiply !important;
}

/* Selection color tied to new accent */
::selection { background: oklch(0.94 0.018 32); color: oklch(0.28 0.012 70); }

/* === Card outline (cosmetic only — border/background/hover) === */
.product, .catalog__item, .article {
  border: 1px solid oklch(0.92 0.005 70) !important;
  background: #fff !important;
}
/* Strip outer wrapper border on the .product-sq:has(> .product-tile) double-wrap case */
.product.product-sq:has(> .product.product-tile),
.product.product-sq {
  border: 0 !important;
  background: transparent !important;
}
.product:hover, .catalog__item:hover, .article:hover {
  border-color: oklch(0.78 0.025 32) !important;
  box-shadow: 0 1px 2px rgba(40,30,20,0.05), 0 18px 36px -18px rgba(40,30,20,0.16) !important;
}
.product.product-sq:hover {
  border: 0 !important;
  box-shadow: none !important;
}

/* === "Сбросить" filter button — accent recolor only (no sizing) === */
.mse2_filters .mse2_filter_reset, button.mse2_filter_reset, .mse2_filter_reset {
  background: oklch(0.50 0.055 32) !important;
  color: #fff !important;
  border-radius: 4px !important;
  font-weight: 500 !important;
  cursor: pointer !important;
  transition: background-color .18s ease !important;
}
.mse2_filter_reset:hover { background: oklch(0.42 0.055 32) !important; }

/* === Pagination — accent recolor === */
.pagination .page-item.active .page-link,
.pagination .active a,
.pagination .active span,
.mse2_pagination .active,
.mse2_pagination .active a,
.mse2_pagination .active span {
  background: oklch(0.50 0.055 32) !important;
  border-color: oklch(0.50 0.055 32) !important;
  color: #fff !important;
  border-radius: 4px !important;
}
.pagination .page-link, .mse2_pagination a, .mse2_pagination span {
  border-radius: 4px !important;
  color: oklch(0.28 0.012 70) !important;
  border-color: oklch(0.92 0.005 70) !important;
  transition: background-color .15s ease, color .15s ease !important;
}
.pagination .page-link:hover, .mse2_pagination a:hover {
  background: oklch(0.94 0.018 32) !important;
  color: oklch(0.42 0.055 32) !important;
  border-color: oklch(0.50 0.055 32) !important;
}

/* === Hero offer icons — recolor only (sizes preserved) === */
.offer__advantage-icon img {
  filter: brightness(0) saturate(100%) invert(35%) sepia(28%) saturate(900%) hue-rotate(338deg) brightness(92%) contrast(85%) !important;
  opacity: 1 !important;
}

/* === "Наш подход к работе" advantage cards — chrome only === */
.advantage {
  background: #fff !important;
  border: 1px solid oklch(0.92 0.005 70) !important;
  border-radius: 6px !important;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease !important;
}
.advantage:hover {
  border-color: oklch(0.80 0.025 32) !important;
  box-shadow: 0 1px 2px rgba(40,30,20,0.04), 0 16px 32px -18px rgba(40,30,20,0.14) !important;
  transform: translateY(-2px);
}
.advantage__icon {
  background: oklch(0.94 0.018 32) !important;
  border-radius: 14px !important;
}
.advantage__icon img {
  filter: brightness(0) saturate(100%) invert(35%) sepia(28%) saturate(900%) hue-rotate(338deg) brightness(92%) contrast(85%) !important;
  opacity: 1 !important;
}
.advantage:hover .advantage__icon {
  background: oklch(0.93 0.04 32) !important;
}
.advantage__name {
  font-weight: 500 !important;
  letter-spacing: -0.005em !important;
  color: oklch(0.28 0.012 70) !important;
}
.advantage__descr {
  color: oklch(0.50 0.01 70) !important;
}

/* === Solid backgrounds — accent recolor === */
.btn-primary,
.header .catalog-toggle, .header .catalog-button,
.swiper-pagination .swiper-pagination-bullet-active,
.swiper-scrollbar.swiper-scrollbar-horizontal .swiper-scrollbar-drag,
.progressbar .progressbar__fill,
.tabs .tabs__buttons .active .btn,
.catalog .catalog__view .active,
.uislider .ui-widget-header,
.stage .stage__descr ul > li:before,
.text_outer ul > li:before,
.faq__answer ul > li:before,
.dependence__descr ul > li:before,
.btn-arrow:hover,
.multibutton-button,
.multibutton-button:before, .multibutton-button:after,
.multibutton-prompt .multibutton-prompt-close,
.multibutton-modal .multibutton-modal-header
{ background-color: oklch(0.50 0.055 32) !important; }

/* Borders */
.swiper-pagination .swiper-pagination-bullet,
.progressbar .progressbar__fill:before, .progressbar .progressbar__fill:after,
.uislider .ui-slider-handle,
.show-more a,
.article .article__read a
{ border-color: oklch(0.50 0.055 32) !important; }

.show-more a, .article .article__read a { border-bottom-color: oklch(0.50 0.055 32) !important; }

/* Text colors — accent on hover/active */
.consent-mailing a,
.btn-arrow,
.show-more a,
.topline .topline__address p a:hover,
.topline .topline__address a:hover,
.topline .topline__tel a:hover,
.topline .topline__callback a:hover,
.header .header__messengers button:hover,
.header .header__menu > ul > li a:hover,
.header .header__catalog a:hover,
.product .product__favorite a:hover,
.product .product__name a:hover,
.article .article__name a:hover,
.article .article__read a,
.faq .faq__question:hover,
.faq.open .faq__question,
.footer .footer__nav a:hover,
.footer .footer__contacts a:hover,
.footer .footer__bottom a:hover,
.up:hover,
.breadcrumbs a:hover,
.text_outer p a:hover,
.communication__methods .phones-block .view span:hover,
.modal__methods .phones-block .view span:hover,
.content.delivery-map-content ul li:hover span,
.multibutton-button-icons
{ color: oklch(0.42 0.055 32) !important; }

/* Hover-flips on hover borders */
.header .header__controls a:hover,
.up:hover .up__icon,
.card .card__top a:hover
{ border-color: oklch(0.50 0.055 32) !important; }

/* Inline-style coral overrides */
[style*="background:#f15238"], [style*="background: #f15238"],
[style*="background:#F15238"], [style*="background: #F15238"]
{ background: oklch(0.50 0.055 32) !important; }

/* === Material picker — accent border on selected only (no layout/sizes) === */
.input-parent input[type=radio]:checked ~ .material__image,
label.input-parent:has(input[type=radio]:checked) .material__image {
  border-color: oklch(0.50 0.055 32) !important;
}

/* ============================================================
   Patch 2026-05-07 (v=20260507b): user feedback after first DEV test
   - визитная обводка карточек слабовата → усилить line-color
   - текст карточки прилип к левому краю → внутренний padding
   - кнопка "Показать больше товаров" сливалась → сделать её кнопкой
   ============================================================ */

/* Stronger product card outline */
.product, .catalog__item, .article {
  border: 1px solid oklch(0.88 0.01 70) !important;
}
.product:hover, .catalog__item:hover, .article:hover {
  border-color: oklch(0.74 0.04 32) !important;
}

/* Inner padding — text no longer hugs the left edge of the card */
.product .product__name,
.product .product__prices,
.product .product__price-current,
.product .product__price-old,
.product .product__button {
  padding-left: 16px !important;
  padding-right: 16px !important;
}

/* "Показать больше товаров" — turn the underlined link into a real button */
.show-more a {
  background: oklch(0.50 0.055 32) !important;
  color: #fff !important;
  border: 0 !important;
  border-bottom: 0 !important;
  border-radius: 4px !important;
  padding: 12px 28px !important;
  font-weight: 500 !important;
  display: inline-block !important;
  transition: background-color .18s ease !important;
}
.show-more a:hover {
  background: oklch(0.42 0.055 32) !important;
  border: 0 !important;
  color: #fff !important;
}

/* ============================================================
   Patch 2026-05-07 Round 3 (v=20260507c): more orange catches +
   blended buttons (video-review, submit disabled, stages, active tab)
   ============================================================ */

/* Catch-all: ALL consent-* containers (consent, consent-mailing, consent-communication) */
[class*="consent"] a,
.text_outer p a,
.text_outer a,
.faq__answer p a,
.faq__answer a,
.cf-modal a:not(.cf-btn-close),
.modal__body a,
.callback-text a,
.footer__bottom a,
.privacy a,
.policy a,
[class*="more-cities"] a,
[class*="cities-list"] a {
  color: oklch(0.42 0.055 32) !important;
}
[class*="consent"] a:hover,
.text_outer a:hover,
.faq__answer a:hover,
.footer__bottom a:hover {
  color: oklch(0.50 0.055 32) !important;
}

/* Catch coral hex used inline anywhere */
a[style*="F15238"], a[style*="f15238"],
*[style*="color:#F15238"], *[style*="color: #F15238"],
*[style*="color:#f15238"], *[style*="color: #f15238"] {
  color: oklch(0.42 0.055 32) !important;
}
*[style*="border-color:#F15238"], *[style*="border-color: #F15238"],
*[style*="border-color:#f15238"], *[style*="border-color: #f15238"] {
  border-color: oklch(0.50 0.055 32) !important;
}

/* Active tab — wider selector, forces both bg and white text */
.tabs .tabs__buttons .active,
.tabs .tabs__buttons li.active,
.tabs .tabs__buttons .active .btn,
.tabs .tabs__buttons li.active .btn,
.tabs .tabs__buttons li.active a,
.tabs__buttons .active,
.tabs__buttons li.active,
.tabs__buttons .active .btn,
.tabs__buttons li.active .btn {
  background: oklch(0.50 0.055 32) !important;
  background-color: oklch(0.50 0.055 32) !important;
  color: #fff !important;
  border-color: transparent !important;
}

/* Generic CTA buttons inside product card / forms / offer / modals */
.video-review .btn,
.video-review > a,
.video-review > a.btn,
.product__button .btn,
.card__communication .btn,
.card__communication-section .btn,
.communication .communication__form .btn,
.communication__form .btn,
.modal .modal__form .btn,
.modal__form .btn,
.products .products__button .btn,
.offer .offer__button .btn,
.offer .offer__advantage .btn,
.useful__button .btn,
.btn-lg.btn-primary {
  background: oklch(0.50 0.055 32) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 4px !important;
}
.video-review .btn:hover,
.video-review > a:hover,
.product__button .btn:hover,
.card__communication .btn:hover,
.card__communication-section .btn:hover,
.communication__form .btn:hover,
.modal .modal__form .btn:hover,
.modal__form .btn:hover,
.products .products__button .btn:hover,
.offer .offer__button .btn:hover,
.offer .offer__advantage .btn:hover,
.useful__button .btn:hover {
  background: oklch(0.42 0.055 32) !important;
  color: #fff !important;
}

/* Disabled submit — gray (visible) instead of nearly invisible terracotta-with-disabled */
.btn-primary[disabled],
.btn[disabled],
button.btn:disabled,
button:disabled {
  background: oklch(0.78 0.01 70) !important;
  background-color: oklch(0.78 0.01 70) !important;
  color: #fff !important;
  cursor: not-allowed !important;
  opacity: 1 !important;
  border-color: transparent !important;
}

/* Stages — Назад / Далее / Узнать подробнее */
.stages a.btn,
.stages .stages__wrapp .btn,
.stages .swiper-navigation a:not(.swiper-button-disabled),
.stages__wrapp a {
  background: oklch(0.50 0.055 32) !important;
  color: #fff !important;
  border-color: transparent !important;
  border-radius: 4px !important;
}
.stages a.btn:hover,
.stages .swiper-navigation a:not(.swiper-button-disabled):hover,
.stages__wrapp a:hover {
  background: oklch(0.42 0.055 32) !important;
  color: #fff !important;
}
.stages .swiper-button-disabled {
  background: oklch(0.82 0.005 70) !important;
  color: oklch(0.55 0.01 70) !important;
  border-color: transparent !important;
}

/* ============================================================
   Patch 2026-05-07 Round 4 (v=20260507d):
   menu hover lines, FAQ plus icon + open border, contacts tabs
   (different system!), multibutton, material picker, fotorama,
   blockquote, content toggle, cityFields modal
   ============================================================ */

/* Menu hover — kill the coral border-bottom underline */
.header .header__menu > ul > li a:hover,
.header .header__menu > ul > li.active > a,
.header .header__menu > ul > li > a.active,
.header__menu li.active > a,
.header__menu > ul > li a:hover,
.header__menu a:hover,
.header__menu .active > a {
  border-color: oklch(0.50 0.055 32) !important;
  color: oklch(0.42 0.055 32) !important;
}

/* FAQ — open state color/border + plus icon recolor */
.faq.open .faq__question,
.faq__question:hover,
.faq .faq__question:hover {
  color: oklch(0.42 0.055 32) !important;
  border-color: oklch(0.50 0.055 32) !important;
}
.faq.open,
.faq.open .faq__answer {
  border-color: oklch(0.50 0.055 32) !important;
}
/* The plus/cross icon is a SVG background-image with coral fill — recolor via filter */
.faq .faq__question:before,
.faq.open .faq__question:before {
  filter: brightness(0) saturate(100%) invert(35%) sepia(28%) saturate(900%) hue-rotate(338deg) brightness(92%) contrast(85%) !important;
}

/* Contacts page tabs — DIFFERENT system from .tabs__buttons */
.tabs__nav-item.active .tabs__nav-btn,
.tabs__nav-item.active,
.tabs__nav-btn.active,
.tabs__nav .active,
.tabs__nav .active .tabs__nav-btn {
  background: oklch(0.50 0.055 32) !important;
  background-color: oklch(0.50 0.055 32) !important;
  border-color: oklch(0.50 0.055 32) !important;
  color: #fff !important;
}

/* Multibutton — explicit terracotta even when other rules try to override */
.multibutton-button,
.multibutton-button:before,
.multibutton-button:after {
  background: oklch(0.50 0.055 32) !important;
  background-color: oklch(0.50 0.055 32) !important;
}
.multibutton.active.open .multibutton-button {
  background: oklch(0.30 0.02 32) !important;
  background-color: oklch(0.30 0.02 32) !important;
}
.multibutton-button-icons {
  color: oklch(0.42 0.055 32) !important;
  background: #fff !important;
}

/* Material picker — checked state border + name color, hover */
.card__section.card__props label input[type="radio"]:checked + .material__image,
.card__wrapp .fotorama__thumb-border {
  border-color: oklch(0.50 0.055 32) !important;
}
.card__section.card__props label input[type="radio"]:checked + .material__image + .material__name {
  color: oklch(0.42 0.055 32) !important;
}
.card .material:hover {
  background: oklch(0.50 0.055 32) !important;
  background-color: oklch(0.50 0.055 32) !important;
  border-color: oklch(0.50 0.055 32) !important;
  color: #fff !important;
}

/* cityFields modal "Да" button (Yes-confirm city) */
.cf-city .cf-confirm .cf-btn-group .cf-btn-primary {
  background-color: oklch(0.50 0.055 32) !important;
  border-color: oklch(0.50 0.055 32) !important;
}

/* Catalog price slider (jQuery UI) — coral border */
.catalog .ui-state-default,
.catalog .ui-widget-content .ui-state-default,
.catalog .ui-widget-header .ui-state-default,
.catalog .ui-button {
  border-color: oklch(0.50 0.055 32) !important;
}

/* Article-style blockquotes with left coral bar */
.text_outer blockquote {
  border-left-color: oklch(0.50 0.055 32) !important;
}

/* Content toggle (раскрыть/свернуть) */
.content .content_toggle:hover {
  border-bottom-color: oklch(0.50 0.055 32) !important;
  color: oklch(0.42 0.055 32) !important;
}

/* "looked" remove (история просмотров) */
.looked-remove-wrp button:hover {
  color: oklch(0.42 0.055 32) !important;
}

/* ============================================================
   Patch 2026-05-07 Round 5 (v=20260507e):
   - системный sweep оставшегося #F15238 (article TOC, gallery,
     checklists, footer disclaimer, swiper arrows, SVG icons)
   - тёмное подчёркивание у consent-ссылок (видно что это ссылка)
   - фикс пагинации (активная цифра пропадала на белом)
   - padding-top для названия товара в каталоге
   ============================================================ */

/* === Pagination — stronger override (цифра активной страницы пропадала) === */
.page-item.active .page-link,
.page-item.active > .page-link,
li.active a.page-link,
li.page-item.active > a,
.mse2_pagination .page-item.active .page-link {
  background: oklch(0.50 0.055 32) !important;
  background-color: oklch(0.50 0.055 32) !important;
  color: #fff !important;
  border-color: oklch(0.50 0.055 32) !important;
}

/* === Consent links — dark underline so they read as clickable === */
[class*="consent"] a,
[class*="consent"] a:hover {
  text-decoration: underline !important;
  text-decoration-color: oklch(0.28 0.012 70) !important;
  text-underline-offset: 2px !important;
}

/* === Article TOC (Оглавление статьи) and toc-toggle button === */
.toc-toggle,
.toc-toggle:hover {
  background: oklch(0.50 0.055 32) !important;
  background-color: oklch(0.50 0.055 32) !important;
  color: #fff !important;
}
.toc-toggle:hover {
  background: oklch(0.42 0.055 32) !important;
  background-color: oklch(0.42 0.055 32) !important;
}
.article-toc a {
  color: oklch(0.28 0.012 70) !important;
}
.article-toc a:hover {
  color: oklch(0.42 0.055 32) !important;
}

/* === Article gallery (статьи) — swiper arrows + pagination bullets === */
.article-gallery .swiper-button-prev,
.article-gallery .swiper-button-next {
  color: oklch(0.42 0.055 32) !important;
}
.article-gallery .swiper-pagination-bullet-active {
  background: oklch(0.50 0.055 32) !important;
  background-color: oklch(0.50 0.055 32) !important;
}

/* === Card (товар) gallery arrows — SVG bg recolor via filter === */
.card .card__slideshow .swiper-prev:not(.swiper-button-disabled):hover,
.card .card__slideshow .swiper-next:not(.swiper-button-disabled):hover {
  filter: brightness(0) saturate(100%) invert(35%) sepia(28%) saturate(900%) hue-rotate(338deg) brightness(92%) contrast(85%) !important;
}
/* btn-arrow icon — SVG background-image with red */
.btn-arrow i {
  filter: brightness(0) saturate(100%) invert(35%) sepia(28%) saturate(900%) hue-rotate(338deg) brightness(92%) contrast(85%) !important;
}

/* === Decorative title underline (text_page .title:after) === */
.container-min .text_page .container .title:after {
  background: oklch(0.50 0.055 32) !important;
  background-color: oklch(0.50 0.055 32) !important;
}

/* === Article QA / checklist === */
.articleContent .qa-question:focus {
  outline-color: oklch(0.50 0.055 32) !important;
}
.articleContent .qa-question::before,
.articleContent .qa-answer::before {
  color: oklch(0.42 0.055 32) !important;
}
.articleContent .checklist-item__box {
  border-color: oklch(0.50 0.055 32) !important;
}
.articleContent .checklist-item__checkbox:checked + .checklist-item__box {
  background: oklch(0.50 0.055 32) !important;
  background-color: oklch(0.50 0.055 32) !important;
  border-color: oklch(0.50 0.055 32) !important;
}

/* === Inside-page forms === */
.insidePage-form input:focus,
.insidePage-form textarea:focus {
  border-color: oklch(0.50 0.055 32) !important;
  box-shadow: 0 0 0 3px oklch(0.94 0.018 32) !important;
}
.insidePage-form button[type="submit"],
.insidePage-form .btn-primary {
  background: oklch(0.50 0.055 32) !important;
  background-color: oklch(0.50 0.055 32) !important;
  border-color: oklch(0.50 0.055 32) !important;
  color: #fff !important;
}

/* === Audio content block — left bar === */
.content-audio {
  border-left-color: oklch(0.50 0.055 32) !important;
}

/* === show_hide_list, content_toggle (any place) === */
.show_hide_list:hover,
.content_toggle:hover {
  border-bottom-color: oklch(0.50 0.055 32) !important;
  color: oklch(0.42 0.055 32) !important;
}

/* === Footer disclaimer link === */
.footer .footer__disclaimer a {
  color: oklch(0.42 0.055 32) !important;
}

/* === Directions title SVG (fill on inline svg) === */
.directions-title svg {
  fill: oklch(0.50 0.055 32) !important;
}

/* === Blockquote in tab panels (Особенности модели) === */
.tabs__panel .content_block blockquote {
  border-left-color: oklch(0.50 0.055 32) !important;
}

/* === Product favorite icon hover (heart) === */
.product .product__favorite a:hover {
  border-color: oklch(0.50 0.055 32) !important;
}

/* === Material active state in card === */
.card .material.active {
  background: oklch(0.50 0.055 32) !important;
  background-color: oklch(0.50 0.055 32) !important;
  border-color: oklch(0.50 0.055 32) !important;
  color: #fff !important;
}

/* === Catalog product card — name padding-top (was hugging the top) === */
.product .product__name {
  padding-top: 16px !important;
}

/* === Catalog list view — header offset (отступ сверху для "Изготовление надгробий") === */
.products .container .title,
.catalog__title,
.catalog__header {
  padding-top: 24px !important;
}

/* ============================================================
   Patch 2026-05-07 Round 6 (v=20260507f):
   - страховочное правило для .btn-primary (Рассчитать стоимость
     в hero и карточках слилась)
   - фон полей цены в фильтре (был белый, выпадал из off-white)
   ============================================================ */

/* Hard-force .btn-primary visibility — last word in cascade */
a.btn-primary,
a.btn.btn-primary,
.btn.btn-primary,
.btn-lg.btn-primary,
.btn-primary.btn-lg,
.btn-primary.openmodal,
a.openmodal.btn-primary,
.offer__button a.btn-primary,
.offer .offer__button a,
.product__button a.btn-primary,
.product__button a {
  background: oklch(0.50 0.055 32) !important;
  background-color: oklch(0.50 0.055 32) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 4px !important;
}
a.btn-primary:hover,
a.btn.btn-primary:hover,
.btn.btn-primary:hover,
.btn-lg.btn-primary:hover,
.btn-primary.btn-lg:hover,
.btn-primary.openmodal:hover,
.offer__button a.btn-primary:hover,
.product__button a.btn-primary:hover {
  background: oklch(0.42 0.055 32) !important;
  background-color: oklch(0.42 0.055 32) !important;
  color: #fff !important;
}

/* Price filter inputs — give them subtle warm bg, not pure white */
.uislider .uislider__values .value input,
#mse2_filters input[type="text"],
#mse2_filters input[type="number"],
.mse2_number_inputs input,
.filter__section input[type="text"],
.filter__section input[type="number"] {
  background: oklch(0.96 0.005 70) !important;
  background-color: oklch(0.96 0.005 70) !important;
  border: 1px solid oklch(0.92 0.005 70) !important;
  color: oklch(0.28 0.012 70) !important;
  border-radius: 4px !important;
}
.uislider .uislider__values .value input:focus,
#mse2_filters input:focus,
.mse2_number_inputs input:focus,
.filter__section input:focus {
  background: #fff !important;
  background-color: #fff !important;
  border-color: oklch(0.50 0.055 32) !important;
  box-shadow: 0 0 0 3px oklch(0.94 0.018 32) !important;
  outline: none !important;
}

/* ============================================================
   Patch 2026-05-07 Round 7 (final):
   - native checkbox accent-color
   - disabled buttons hard-override with last-word specificity
   ============================================================ */

/* Native checkbox/radio accent (если у элемента нет custom-стилизации) */
input[type="checkbox"], input[type="radio"] {
  accent-color: oklch(0.50 0.055 32);
}

/* Disabled submit buttons — make them clearly disabled (gray)
   even when .btn-primary class is present */
button.btn[disabled],
button.btn-primary[disabled],
button.btn-lg[disabled],
button.btn-lg.btn-primary[disabled],
button.btn:disabled,
button.btn-primary:disabled,
button.btn-lg:disabled,
button.btn-lg.btn-primary:disabled,
.btn[disabled],
.btn-primary[disabled],
.btn-lg.btn-primary[disabled],
.ajax_form button[disabled],
.ajax_form button:disabled {
  background: oklch(0.78 0.01 70) !important;
  background-color: oklch(0.78 0.01 70) !important;
  color: #fff !important;
  cursor: not-allowed !important;
  opacity: 0.65 !important;
  border-color: transparent !important;
}

/* Enabled state — terracotta hover */
button.btn-primary:not([disabled]):not(:disabled):hover,
.ajax_form button:not([disabled]):not(:disabled):hover {
  background: oklch(0.42 0.055 32) !important;
  background-color: oklch(0.42 0.055 32) !important;
}

/* ============================================================
   Patch 2026-05-07 Round 8 (final-final):
   - product__button padding-bottom (кнопка не прилипает к низу)
   - submit disabled — РЕАЛЬНО серый (страховка после ВСЕХ .btn-primary правил)
   - all .text_outer blockquote, .content-audio, .tabs__panel blockquote — neutral gray left bar
   ============================================================ */

/* Padding under buttons inside product cards */
.product .product__button,
.product__button {
  padding-bottom: 16px !important;
  padding-left: 12px !important;
  padding-right: 12px !important;
}

/* Decorative left-bars — neutral gray, not orange */
.text_outer blockquote,
.tabs__panel .content_block blockquote,
.content-audio,
blockquote {
  border-left-color: oklch(0.85 0.005 70) !important;
}

/* HARDEST disabled override — комбо :disabled + [disabled] + последний в каскаде */
button[type="submit"][disabled],
button[type="submit"]:disabled,
button.btn-lg.btn-primary[disabled],
button.btn-lg.btn-primary:disabled,
.btn.btn-lg.btn-primary[disabled],
.btn.btn-lg.btn-primary:disabled,
.ajax_form button[type="submit"][disabled],
.ajax_form button[type="submit"]:disabled {
  background: oklch(0.78 0.01 70) !important;
  background-color: oklch(0.78 0.01 70) !important;
  color: oklch(0.55 0.005 70) !important;
  cursor: not-allowed !important;
  opacity: 0.7 !important;
  border-color: transparent !important;
}

/* Patch Round 12: убрать тень/бордер с большого .card контейнера на стр. товара
   (тень видна как полоски в gap между card и блоком табов) */
.card {
  box-shadow: none !important;
  border: none !important;
  background: transparent !important;
}
.card:hover {
  box-shadow: none !important;
  border: none !important;
}

/* === Soft fix Round 13: keep sup counters terracotta + button at bottom
       WITHOUT forcing width/grid (which broke catalog) === */

/* Filter sup counters (was orange #F55B51) */
.checkboxes sup,
.filter sup,
.filter__section sup,
.filter__sections sup,
sup {
  color: oklch(0.42 0.055 32) !important;
}

/* Button at bottom of card (only inside .product-tile, not breaking layout) */
.product.product-tile {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}
.product.product-tile .product__content {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
}
.product.product-tile .product__button {
  margin-top: auto !important;
}

/* Round 14: also align prices on the same baseline.
   product__name expands to fill space, pushing prices+button to bottom together. */
.product.product-tile .product__name {
  flex: 1 1 auto !important;
}

/* Round 16: filter "Сбросить" button — полноценная кнопка
   (раньше выглядела узкой text-link из-за вырезанных padding/width в Round 0) */
.mse2_filters .mse2_filter_reset,
button.mse2_filter_reset,
.mse2_filter_reset {
  padding: 11px 24px !important;
  width: 100% !important;
  display: block !important;
  text-align: center !important;
  margin-top: 12px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}

/* Round 16.1: правильный селектор для кнопки Сбросить
   (фактический класс на DEV — btn-light, не mse2_filter_reset) */
.mse2_filters button[type="reset"],
.filter button[type="reset"],
.catalog button.btn-light[type="reset"],
button.btn-light[type="reset"] {
  background: oklch(0.50 0.055 32) !important;
  background-color: oklch(0.50 0.055 32) !important;
  color: #fff !important;
  padding: 11px 24px !important;
  width: 100% !important;
  display: block !important;
  text-align: center !important;
  margin-top: 12px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  border: 0 !important;
  border-radius: 4px !important;
  cursor: pointer !important;
}
.mse2_filters button[type="reset"]:hover,
.filter button[type="reset"]:hover,
button.btn-light[type="reset"]:hover {
  background: oklch(0.42 0.055 32) !important;
  background-color: oklch(0.42 0.055 32) !important;
  color: #fff !important;
}

/* Round 16.2: Кнопка "Сбросить" — три состояния:
   1) default (нет выбранных фильтров) — бледная серая, cursor default
   2) hover — темнеет до средне-серого
   3) active (есть :checked input в filters) — терракотовая, cursor pointer
*/

/* Базовое состояние (бледная) */
.mse2_filters button[type="reset"],
.filter button[type="reset"],
.catalog button.btn-light[type="reset"],
button.btn-light[type="reset"] {
  background: oklch(0.92 0.003 70) !important;
  background-color: oklch(0.92 0.003 70) !important;
  color: oklch(0.65 0.005 70) !important;
  cursor: default !important;
}

/* Hover на бледной — темнеет */
.mse2_filters button[type="reset"]:hover,
.filter button[type="reset"]:hover,
button.btn-light[type="reset"]:hover {
  background: oklch(0.82 0.005 70) !important;
  background-color: oklch(0.82 0.005 70) !important;
  color: oklch(0.45 0.005 70) !important;
}

/* Активное состояние — когда в форме фильтра есть выбранный input */
.mse2_filters:has(input:checked) button[type="reset"],
.filter:has(input:checked) button[type="reset"],
form.mse2_filters:has(input[type="checkbox"]:checked) button[type="reset"],
form.mse2_filters:has(input[type="radio"]:checked) button[type="reset"] {
  background: oklch(0.50 0.055 32) !important;
  background-color: oklch(0.50 0.055 32) !important;
  color: #fff !important;
  cursor: pointer !important;
}

/* Hover в активном состоянии — темнее терракоты */
.mse2_filters:has(input:checked) button[type="reset"]:hover,
.filter:has(input:checked) button[type="reset"]:hover {
  background: oklch(0.42 0.055 32) !important;
  background-color: oklch(0.42 0.055 32) !important;
  color: #fff !important;
}


/* === Preset диапазоны цен (radio-list в стиле .checkboxes) === */
#mse2_ms\|price .uislider {
  display: none !important;
}
#mse2_ms\|price .price-presets p {
  margin: 0;
}
.price-presets sup {
  font-size: 0.7em;
  vertical-align: top;
  line-height: 1;
  color: oklch(0.42 0.055 32);
  margin-left: 4px;
  font-weight: normal;
}
.price-preset-reset {
  margin-top: 8px !important;
  padding-top: 6px;
  border-top: 1px solid oklch(0.92 0.005 70);
}
.price-preset-reset a {
  display: inline-block;
  font-size: 12px;
  color: oklch(0.55 0.005 70);
  text-decoration: none;
  padding: 3px 10px;
  border-radius: 12px;
  transition: background .15s ease, color .15s ease;
}
.price-preset-reset a:hover {
  background: oklch(0.92 0.005 70);
  color: oklch(0.50 0.055 32);
  text-decoration: none;
}
