/* ============================================================
   Общая шапка и подвал в стиле mattest.store
   Используется на всех страницах кроме главной (главная имеет свой Next.js header)
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800;900&display=swap');

/* Единый шрифт сайта — Montserrat (как в каталоге) */
:root { --font-site: 'Montserrat', 'Segoe UI', sans-serif; }
html, body { font-family: 'Montserrat', 'Segoe UI', sans-serif !important; }
/* Гарантируем шрифт во всех вложенных элементах главной */
.header-shell-px, .header-menu-px, .header-menu-item-px,
section, footer, header, main, h1, h2, h3, h4, h5, h6, p, a, span, button, div {
  font-family: 'Montserrat', 'Segoe UI', sans-serif !important;
}

/* Уменьшение шрифтов на главной до уровня каталога.
   Кастомные классы Next.js + Tailwind text-[Npx]. */
.hero-title-px { font-size: 44px !important; line-height: 1.05 !important; }
.section-advantages-title-px { font-size: 28px !important; line-height: 1.15 !important; }
[class*="text-[129"] { font-size: 60px !important; line-height: 1 !important; }
[class*="text-[120"], [class*="text-[110"], [class*="text-[100"], [class*="text-[90"], [class*="text-[80"] { font-size: 48px !important; }

[class*="text-[70px]"]  { font-size: 44px !important; line-height: 1.1 !important; }
[class*="text-[60px]"]  { font-size: 38px !important; line-height: 1.1 !important; }
[class*="text-[50px]"]  { font-size: 32px !important; }
[class*="text-[48px]"]  { font-size: 30px !important; }
[class*="text-[42px]"]  { font-size: 28px !important; }
[class*="text-[40px]"]  { font-size: 28px !important; }
[class*="text-[38px]"]  { font-size: 26px !important; }
[class*="text-[36px]"]  { font-size: 24px !important; }
[class*="text-[34px]"]  { font-size: 22px !important; }
[class*="text-[32px]"]  { font-size: 22px !important; }
[class*="text-[30px]"]  { font-size: 20px !important; }
[class*="text-[28px]"]  { font-size: 19px !important; }
[class*="text-[26px]"]  { font-size: 18px !important; }
[class*="text-[25px]"]  { font-size: 18px !important; }
[class*="text-[24px]"]  { font-size: 17px !important; }
[class*="text-[22px]"]  { font-size: 16px !important; }
[class*="text-[20px]"]  { font-size: 15px !important; }
[class*="text-[19px]"]  { font-size: 14px !important; }
[class*="text-[18px]"]  { font-size: 14px !important; }
[class*="text-[17px]"]  { font-size: 13px !important; }
[class*="text-[16px]"]  { font-size: 13px !important; }
[class*="text-[15px]"]  { font-size: 13px !important; }

/* Системные сбросы локально для своих классов */
.mt-header *,
.mt-footer * { box-sizing: border-box; }

/* ============ HEADER ============ */
.mt-header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: #fff;
  border-bottom: 1px solid #efefef;
  height: 64px;
  display: flex;
  align-items: center;
  font-family: 'Proxima Nova', 'Nunito Sans', 'Segoe UI', sans-serif;
}
.mt-header__inner {
  margin: 0 auto;
  width: min(1160px, calc(100% - 24px));
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.mt-header__logo {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  flex-shrink: 0;
}
.mt-header__logo img {
  height: 36px;
  width: 200px;
  object-fit: contain;
  display: block;
}
.mt-header__menu {
  display: none;
  align-items: center;
  gap: 2px;
  color: #000;
  margin-left: 40px;
  margin-right: auto;
}
@media (min-width: 768px) {
  .mt-header__menu { display: flex; }
}
.mt-header__menu > * {
  position: relative;
}
.mt-header__item {
  display: inline-flex;
  align-items: center;
  font-size: 15px;
  font-weight: 500;
  color: #000;
  text-decoration: none;
  padding: 8px 14px;
  border-radius: 6px;
  cursor: pointer;
  background: transparent;
  border: 0;
  font-family: inherit;
  transition: background .15s;
  white-space: nowrap;
}
.mt-header__item:hover {
  background: rgba(0, 0, 0, .05);
}
.mt-header__item.is-active {
  background: rgba(0, 0, 0, .05);
}
.mt-header__caret {
  margin-left: 6px;
  transition: transform .2s;
}
[aria-expanded="true"] .mt-header__caret {
  transform: rotate(180deg);
}

.mt-header__right {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
}
.mt-header__icon-btn {
  width: 40px;
  height: 40px;
  border: 1px solid #e4e4e4;
  border-radius: 8px;
  background: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #000;
  text-decoration: none;
  transition: background .15s;
}
.mt-header__icon-btn:hover { background: #f7f7f7; }
.mt-header__lang {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0 12px;
  height: 40px;
  border: 1px solid #e4e4e4;
  border-radius: 8px;
  background: #fff;
  color: #000;
  text-decoration: none;
  font-size: 14px;
  font-weight: 500;
}
.mt-cart-btn { position: relative; }
.mt-cart-badge {
  position: absolute;
  top: -4px;
  right: -4px;
  background: #FFC914;
  color: #000;
  font-size: 11px;
  font-weight: 700;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: 9px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: 'Montserrat', sans-serif;
}
.mt-cart-badge.is-shown { display: flex !important; }

/* FAQ на главной: скрываем вертикальную палочку у плюсика когда блок открыт */
article.border-\[\#FFC914\] button svg path:nth-child(2),
article.faq-open button svg path:nth-child(2) { display: none; }

/* Попап контактов от иконки телефона */
.mt-contact-popup {
  position: absolute;
  background: #fff;
  border: 1px solid #efefef;
  border-radius: 10px;
  box-shadow: 0 12px 32px rgba(0, 0, 0, .15);
  padding: 18px 22px;
  min-width: 240px;
  font-family: 'Montserrat', 'Segoe UI', sans-serif;
  z-index: 9999;
}
.mt-contact-popup__title {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .8px;
  color: #888;
  margin-bottom: 8px;
  font-weight: 700;
}
.mt-contact-popup a {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 15px;
  font-weight: 600;
  color: #000;
  text-decoration: none;
  padding: 8px 0;
  border-bottom: 1px solid #f0f0f0;
}
.mt-contact-popup a:last-child { border: 0; }
.mt-contact-popup a:hover { color: #ffaa00; }
.mt-contact-popup svg { width: 18px; height: 18px; flex-shrink: 0; color: #FFC914; }

/* ============ DROPDOWN ============ */
.mt-dropdown {
  position: absolute;
  /* Прижато к кнопке вплотную, без зазора (чтобы мышь могла перейти не теряя hover) */
  top: 100%;
  left: 0;
  min-width: 220px;
  background: #fff;
  border: 1px solid #efefef;
  border-radius: 10px;
  box-shadow: 0 12px 32px rgba(0, 0, 0, .08);
  padding: 8px;
  display: none;
  z-index: 200;
  /* Невидимый "мостик" сверху чтобы курсор не терял hover при движении к меню */
  margin-top: 0;
}
.mt-dropdown::before {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: -12px;
  height: 12px;
  background: transparent;
}
.mt-dropdown.is-open { display: block; }
/* Открытие по hover на родителе кнопки-триггера (наша единая шапка) */
.mt-header__menu > div { position: relative; padding-bottom: 0; }
.mt-header__menu > div:hover > .mt-dropdown,
.mt-header__menu > div:focus-within > .mt-dropdown { display: block; }
.mt-header__menu > div:hover > [data-mt-dropdown],
.mt-header__menu > div:focus-within > [data-mt-dropdown] {
  background: rgba(0, 0, 0, .05);
}
/* Открытие по hover в шапке главной (header-menu-px от Next.js) */
.header-menu-px > div { position: relative; padding-bottom: 0; }
.header-menu-px > div:hover > .mt-dropdown,
.header-menu-px > div:focus-within > .mt-dropdown { display: block; }
.header-menu-px .mt-dropdown {
  top: 100%;
  left: 0;
}
.mt-dropdown__item {
  display: block;
  padding: 10px 14px;
  color: #000;
  text-decoration: none;
  border-radius: 6px;
  font-size: 14px;
  font-weight: 500;
  white-space: nowrap;
  transition: background .15s;
}
.mt-dropdown__item:hover { background: rgba(0, 0, 0, .05); }

/* ============ FOOTER ============ */
.mt-footer {
  font-family: 'Proxima Nova', 'Nunito Sans', 'Segoe UI', sans-serif;
}
.mt-footer__cta {
  background: #000;
  color: #fff;
  text-align: center;
  padding: 60px 24px 56px;
}
.mt-footer__cta-inner { max-width: 720px; margin: 0 auto; }
.mt-footer__cta h2 {
  font-size: clamp(22px, 3vw, 30px);
  font-weight: 700;
  margin: 0 0 12px;
  letter-spacing: -.3px;
  line-height: 1.25;
}
.mt-footer__cta p {
  color: #ffc914;
  font-size: 14px;
  font-weight: 500;
  margin: 0 0 32px;
}
.mt-footer__cta-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #ffc914;
  color: #000;
  border: 0;
  padding: 14px 56px 14px 28px;
  font-size: 15px;
  font-weight: 700;
  font-family: inherit;
  cursor: pointer;
  text-decoration: none;
  clip-path: polygon(0 0, calc(100% - 22px) 0, 100% 50%, calc(100% - 22px) 100%, 0 100%);
  margin-bottom: 36px;
}
.mt-footer__cta-contacts {
  display: flex;
  gap: 36px;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 8px;
}
.mt-footer__cta-c {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #ffc914;
  font-size: 14px;
  font-weight: 500;
  text-decoration: none;
}

.mt-footer__main {
  background: #ffc914;
  color: #000;
  padding: 60px 24px 40px;
}
.mt-footer__main-inner {
  max-width: 1160px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.6fr 1fr 1fr;
  gap: 56px;
}
@media (max-width: 900px) {
  .mt-footer__main-inner { grid-template-columns: 1fr 1fr; gap: 40px; }
}
@media (max-width: 600px) {
  .mt-footer__main-inner { grid-template-columns: 1fr; gap: 32px; }
}
.mt-footer__logo { width: 60px; height: 60px; display: block; margin-bottom: 18px; }
.mt-footer__desc {
  font-size: 14px;
  line-height: 1.6;
  max-width: 380px;
  margin: 0 0 22px;
}
.mt-footer__socials {
  display: flex;
  gap: 10px;
}
.mt-footer__social {
  width: 36px;
  height: 36px;
  background: #000;
  color: #ffc914;
  border-radius: 6px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  transition: opacity .15s;
}
.mt-footer__social:hover { opacity: .8; }

.mt-footer__col h4 {
  font-size: 16px;
  font-weight: 700;
  margin: 0 0 18px;
  color: #000;
}
.mt-footer__col p { font-size: 14px; margin: 0 0 10px; line-height: 1.5; color: #000; }
.mt-footer__col ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.mt-footer__col a {
  color: #000;
  text-decoration: none;
  font-size: 14px;
  font-weight: 500;
  transition: opacity .15s;
}
.mt-footer__col a:hover { opacity: .7; }

.mt-footer__bottom {
  background: #ffc914;
  border-top: 1px solid rgba(0, 0, 0, .12);
  padding: 18px 24px;
}
.mt-footer__bottom-inner {
  max-width: 1160px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 16px;
  font-size: 13px;
  color: #000;
}
.mt-footer__bottom-legal {
  display: flex;
  gap: 28px;
  flex-wrap: wrap;
}
.mt-footer__bottom-legal a {
  color: #000;
  text-decoration: none;
  font-size: 13px;
}
.mt-footer__bottom-legal a:hover { text-decoration: underline; }

/* Скрываем только дубликаты от нашей старой версии шапки/подвала.
   Не трогаем .header-shell-px — это шапка главной страницы (Next.js). */
.u-nav, .u-footer__main, .u-footer__bottom,
.footer-bot, .footer-main { display: none !important; }

/* ============================================================
   МОБИЛЬНЫЕ СТИЛИ (max-width: 768px)
   ============================================================ */

/* Гамбургер-меню — кнопка в шапке */
.mt-burger {
  display: none;
  width: 40px;
  height: 40px;
  border: 1px solid #e4e4e4;
  border-radius: 8px;
  background: #fff;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 0;
  flex-shrink: 0;
}
.mt-burger svg { width: 22px; height: 22px; }
@media (max-width: 767px) {
  .mt-burger { display: inline-flex; }
  /* Существующий бургер Next.js — форсируем видимость, добавляем рамку */
  button[aria-label="Open menu"][data-mt-menu-open] {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border: 1px solid #c7c9cc !important;
    border-radius: 6px;
    background: #fff !important;
    margin-left: 6px;
  }
}
/* Прячем Next.js бургер на десктопе (md+) — там полное меню */
@media (min-width: 768px) {
  button[aria-label="Open menu"][data-mt-menu-open] { display: none !important; }
}

/* Мобильное выезжающее меню */
.mt-mobile-menu {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #fff;
  z-index: 9999;
  transform: translateX(-100%);
  transition: transform .25s ease-out;
  display: flex;
  flex-direction: column;
  overflow-y: auto;
}
.mt-mobile-menu.is-open { transform: translateX(0); }
.mt-mobile-menu__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 20px;
  border-bottom: 1px solid #efefef;
}
.mt-mobile-menu__top img { height: 32px; }
.mt-mobile-menu__close {
  width: 40px;
  height: 40px;
  border: 1px solid #e4e4e4;
  border-radius: 8px;
  background: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 0;
}
.mt-mobile-menu__list {
  list-style: none;
  padding: 12px 20px;
  margin: 0;
}
.mt-mobile-menu__list li { border-bottom: 1px solid #f4f4f4; }
.mt-mobile-menu__list li:last-child { border-bottom: 0; }
.mt-mobile-menu__list a,
.mt-mobile-menu__list button {
  display: block;
  width: 100%;
  text-align: left;
  padding: 16px 4px;
  font-size: 16px;
  font-weight: 600;
  color: #000;
  text-decoration: none;
  background: transparent;
  border: 0;
  font-family: inherit;
  cursor: pointer;
}
.mt-mobile-menu__sublist {
  display: none;
  list-style: none;
  padding: 0 0 8px 16px;
  margin: 0;
}
.mt-mobile-menu__sublist.is-open { display: block; }
.mt-mobile-menu__sublist a {
  padding: 12px 4px;
  font-size: 15px;
  font-weight: 500;
  color: #555;
}
.mt-mobile-menu__sublist li { border-bottom: 1px solid #fafafa; }
.mt-mobile-menu__caret { float: right; transition: transform .2s; }
.mt-mobile-menu__list button[aria-expanded="true"] .mt-mobile-menu__caret { transform: rotate(180deg); }
.mt-mobile-menu__contacts {
  margin-top: auto;
  padding: 24px 20px 32px;
  background: #ffc914;
}
.mt-mobile-menu__contacts a {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 0;
  color: #000;
  font-weight: 600;
  text-decoration: none;
  font-size: 15px;
}
body.mt-menu-open { overflow: hidden; }

/* Шапка под мобилу */
@media (max-width: 767px) {
  .mt-header { height: 56px; }
  .mt-header__inner {
    width: 100%;
    padding: 0 12px;
    gap: 8px;
  }
  .mt-header__logo img {
    height: 28px;
    width: auto;
    max-width: 150px;
  }
  .mt-header__right { gap: 6px; }
  .mt-header__icon-btn { width: 36px; height: 36px; }
  .mt-header__icon-btn svg { width: 16px; height: 16px; }
  .mt-header__lang { display: none; }   /* RU-кнопка отъедает место */
}
@media (max-width: 480px) {
  .mt-header__inner { padding: 0 10px; }
  .mt-header__logo img { max-width: 130px; }
}

/* Уменьшение огромных шрифтов на мобиле */
@media (max-width: 767px) {
  [class*="text-[129"] { font-size: 36px !important; line-height: 1.05 !important; }
  [class*="text-[120"], [class*="text-[110"], [class*="text-[100"],
  [class*="text-[90"], [class*="text-[80"] { font-size: 32px !important; line-height: 1.1 !important; }
  [class*="text-[70px]"]  { font-size: 28px !important; line-height: 1.1 !important; }
  [class*="text-[60px]"]  { font-size: 26px !important; line-height: 1.1 !important; }
  [class*="text-[50px]"]  { font-size: 24px !important; }
  [class*="text-[48px]"]  { font-size: 24px !important; }
  [class*="text-[46px]"]  { font-size: 22px !important; }
  [class*="text-[42px]"]  { font-size: 22px !important; }
  [class*="text-[40px]"]  { font-size: 22px !important; }
  [class*="text-[38px]"]  { font-size: 20px !important; }
  [class*="text-[36px]"]  { font-size: 20px !important; }
  [class*="text-[34px]"]  { font-size: 19px !important; }
  [class*="text-[32px]"]  { font-size: 19px !important; }
  [class*="text-[30px]"]  { font-size: 18px !important; }
  [class*="text-[28px]"]  { font-size: 17px !important; }
  [class*="text-[26px]"]  { font-size: 17px !important; }
  .hero-title-px { font-size: 30px !important; line-height: 1.1 !important; }
  .section-advantages-title-px { font-size: 20px !important; }
}

/* Footer CTA — выравнивание */
@media (max-width: 600px) {
  .mt-footer__cta { padding: 40px 20px 36px; }
  .mt-footer__cta h2 { font-size: 22px !important; }
  .mt-footer__cta p { font-size: 13px; margin-bottom: 24px; }
  .mt-footer__cta-btn { padding: 12px 48px 12px 22px; font-size: 14px; margin-bottom: 28px; }
  .mt-footer__cta-contacts { gap: 14px; flex-direction: column; align-items: center; }
  .mt-footer__main { padding: 40px 20px 30px; }
  .mt-footer__bottom { padding: 14px 20px; }
  .mt-footer__bottom-inner { font-size: 12px; gap: 10px; flex-direction: column; text-align: center; }
  .mt-footer__bottom-legal { gap: 14px; justify-content: center; font-size: 12px; }
}

/* Каталог — товары: убеждаемся что не вылезают за экран */
@media (max-width: 767px) {
  .container { padding: 0 16px !important; }
  body { font-size: 15px; }
  img { max-width: 100%; height: auto; }
}

/* Большие inline-фото товаров на мобиле скейлятся */
@media (max-width: 600px) {
  table { font-size: 13px; }
  table img { max-width: 60px !important; height: auto !important; }
}

/* Каталог: горизонтальный скролл табов категорий на мобиле */
@media (max-width: 767px) {
  .cat-tabs, [class*="category-tab"], .tabs-bar {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    white-space: nowrap;
    flex-wrap: nowrap !important;
  }
  .cat-tabs > *, [class*="category-tab"] > * { flex-shrink: 0; }
}

/* Превентим overflow страницы по горизонтали (типичная мобильная беда) */
html, body { overflow-x: hidden; }
img, video { max-width: 100%; }
@media (max-width: 767px) {
  * { max-width: 100vw; }
  .mt-mobile-menu, .mt-mobile-menu * { max-width: none; }
}

/* ============================================================
   КАТАЛОГ — мобильные фиксы
   ============================================================ */
@media (max-width: 767px) {
  /* "Стандарт vs PRO" hero — стэкаем вертикально */
  .rob-hero,
  .rob-hero-b {
    flex-direction: column !important;
    min-height: auto !important;
  }
  .rob-hero-b-left { padding: 16px 14px !important; gap: 8px !important; }
  .rob-hero-headline { font-size: 12px !important; line-height: 1.35 !important; }
  .rob-hero-cols,
  .rob-hero-cols-row {
    grid-template-columns: 1fr !important;
    flex-direction: column !important;
    gap: 0 !important;
  }
  .rob-hero-col,
  .rob-col-std,
  .rob-col-pro {
    border-right: 0 !important;
    border-bottom: 1px solid #ebebea !important;
    padding: 12px 0 !important;
    width: 100% !important;
  }
  .rob-col-std:last-child,
  .rob-col-pro:last-child,
  .rob-hero-col:last-child { border-bottom: 0 !important; }
  .rob-col-inner { gap: 8px !important; }
  .rob-col-logo { height: 32px !important; }
  .rob-col-desc { font-size: 11px !important; line-height: 1.45 !important; }
  .rob-hero-img-wrap,
  .rob-col-rob {
    width: 100% !important;
    padding: 12px 0 !important;
  }
  .rob-img,
  .rob-hero-img { height: 140px !important; max-width: 100% !important; }

  /* Сетка карточек товара — 2 в ряд (вместо 3) */
  .cards { grid-template-columns: 1fr 1fr !important; gap: 10px !important; }

  /* Карточка - чуть компактнее */
  .card { aspect-ratio: 3 / 4.2 !important; }
  .card-img-wrap { padding: 12px 8px 6px !important; }
  .card-body { padding: 8px 10px 12px !important; }
  .card-price { font-size: 13px !important; }

  /* Бейджи поменьше чтобы не съедали площадь */
  .badge-std-img { height: 30px !important; }
  .badge-pro-img { height: 44px !important; }
  .badge-wrap { top: 6px !important; left: 6px !important; }

  /* Tabs скроллируются */
  .cat-tabs {
    padding-left: 14px !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
    flex-wrap: nowrap !important;
  }
  .tab {
    flex-shrink: 0 !important;
    padding: 10px 14px !important;
    font-size: 12px !important;
  }
  .cat-section { margin-bottom: 24px !important; }
  .cat-section-name { font-size: 16px !important; }

  /* Подвал каталога — в одну колонку */
  .footer-dark-inner,
  .footer-main-inner,
  .footer-main-i {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
    width: 100% !important;
    padding: 0 16px !important;
  }
  .footer-yellow-inner {
    width: 100% !important;
    padding: 0 16px !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 12px !important;
  }
}

/* Совсем маленькие экраны — 1 карточка в ряд */
@media (max-width: 380px) {
  .cards { grid-template-columns: 1fr !important; }
}

/* ============================================================
   КАРТОЧКА ТОВАРА (mit-*.html) — мобильные фиксы
   ============================================================ */
@media (max-width: 767px) {
  /* .hero обычно "фото слева, инфо справа" — стэкаем */
  .hero {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
    padding: 16px !important;
  }
  /* Название большое — уменьшим */
  .p-name { font-size: 22px !important; line-height: 1.2 !important; word-wrap: break-word; }
  /* Цена — пусть переноситься */
  .price-row, .p-price-row, .price-block { flex-wrap: wrap !important; gap: 8px !important; }
  /* Trust-row иконок: 4→2 столбца */
  .trust-row { grid-template-columns: 1fr 1fr !important; gap: 8px !important; }
  /* Сетки наборов, сертификатов */
  .kit-grid, .cert-grid, .acc-grid, .media-grid, .sim-grid, .usage-grid, .rob-points {
    grid-template-columns: 1fr 1fr !important; gap: 10px !important;
  }
  /* Стандарт/PRO описания на продукте */
  .std-points, .pro-points { grid-template-columns: 1fr !important; gap: 8px !important; }
  /* Подвал каталога/продукта в один столбец (на всякий) */
  .footer-main-inner, .footer-main-i, .u-footer__inner {
    grid-template-columns: 1fr !important; gap: 24px !important; padding: 0 16px !important;
  }
  /* Заголовки секций поменьше */
  .section-title, .h-section { font-size: 22px !important; line-height: 1.2 !important; }
  /* Tabs внизу страницы товара — горизонтальный скролл */
  .product-tabs, [class*="tabs-row"], [class*="-tabs"]:not(.cat-tabs) {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
    white-space: nowrap !important;
    flex-wrap: nowrap !important;
  }
}
