/* ======================================================================
   user.css — кастомные стили italishop.ru

   Подключается последним и НЕ минифицируется (head.html: min=false),
   поэтому правки здесь применяются сразу, пересобирать .min не нужно.

   Повторяющиеся @media-блоки объединены. Порядок правил сохранён:
   он определяет, кто побеждает при равной специфичности.
   ====================================================================== */

/* ======================================================================
   user.css — кастомные стили italishop.ru

   Подключается последним и НЕ минифицируется (head.html: min=false),
   поэтому правки здесь применяются сразу, пересобирать .min не нужно.

   Повторяющиеся @media-блоки объединены. Порядок правил сохранён:
   он определяет, кто побеждает при равной специфичности.
   ====================================================================== */

@font-face {
    font-family: 'Forum';
    src: url('fonts/Forum-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

body, button, input, select, textarea,.c-header-top-bar{font-size:14px;color:#000;font-weight:500;}

.c-header-middle-bar__container-main{padding-left:40px;}

.c-header-bottom-bar{background-color:#000;}

.c-header-middle-bar-address__hint,.c-breadcrumbs{font-size:14px;}

.c-header-middle-bar-address__hint{margin-top:5px;}

.c-content-decorator h1, .c-content-decorator h2, .c-content-decorator h3, .c-content-decorator h4, .c-content-decorator h5{color:#000;}

.r-header-menu__dropdown{width:100%;}

.c-page_searchpro .searchpro__field-container{border:2px solid #ededed;}

.c-page_searchpro .searchpro__field-input{padding:10px 14px;}

.list-rows__item{font-size:18px; color:000;}

.header-top-bar{font-size:14px;}

.header-top-bar__container{height:42px;font-weight:400;}

.header-top-bar__container .messengers{gap:0px;}

.header-top-bar__container .image-box{padding:10px 5px;}

.header-top-bar-contacts__phone, .header-top-bar-contacts__phone-link {font-size:16px;font-weight:600;}

.header .link-box__link, .r-header .link-box__link{font-size:10px;letter-spacing:1px;}

.header-middle-bar{font-size:14px;}

.header-middle-bar-shop-links__item .link-box_style_light{padding:10px;}

.header-bottom-bar_transparent .header-bottom-bar__container{height:38px;}

.header-bottom-bar-links__item-container .consultant-card__soc-btn{height:22px;font-size:12px;}

.header-bottom-bar-links_transparent{gap: 30px;}

.header-bottom-bar_transparent .header-bottom-bar__container-links{padding-bottom:0;}

.header-bottom-bar__container-links li:nth-child(4) a{font-weight:800;}

.header-bottom-bar__container-links li:nth-child(4) a::before{content: '';
    display: inline-block;
    width: 6px;
    height: 6px;
    background-color: #c69c35;
    border-radius: 50%;
    margin-right: 8px;
    vertical-align: middle;
}

.index__content{margin:15px 0;}

.consultant-card__call-btn {display: flex;align-items: center;justify-content: center;gap: 5px;flex: 1 1 0;min-width: 0;height: 22px;padding: 0 12px;border-radius: 5px;background:#CB9C27;border: 1px solid #CB9C27;color:#fff;font-size: 12px;line-height: 1;font-weight: 500;text-decoration: none;transition: background .15s ease, color .15s ease, box-shadow .15s ease;margin-right:10px;}

.consultant-card__call-btn:hover{background:#fff;color:#CB9C27;}

.header-bottom-bar-links_alt .header-bottom-bar-links__link{color:#000;}

.r-header-menu__dropdown-header, .r-subdropdown__header{padding:0px 15px;}

.r-header-menu__dropdown-close, .r-subdropdown__header-back, .r-subdropdown__header-close{padding:20px 10px;}

.r-header-menu-socials__phone{font-size:22px;font-weight:800;}

.r-header-menu-socials{font-size:18px;}

.product-thumb__name{font-size:16px;font-weight:600;}

.catalog-list__content {font-weight: 600;}

.catalog-columns__subcategory-link{color:#000000;}

.catalog-columns__category-container{padding-top:0px;padding-bottom:30px;}

.c-header-top-bar{background-color:#323233;}

.l-header-top-bar-links__item .c-link{color:#fff;}

.l-header-top-bar-links__item .c-link:hover{color:#ccc;}

.c-header-bottom-bar-links__item-container:nth-child(6) .c-header-bottom-bar-links__link{color:#ff3131;}

.c-header-bottom-bar-links__item-container:nth-child(6) .c-header-bottom-bar-links__link:hover{color:#fff;}

.c-header-bottom-bar, .c-home-block_style_gray{background-color:#f5f5f7;}

.c-header-bottom-bar-links__link{color:#000;}

.c-header-bottom-bar-links__link:hover{color:#fff;}

.c-header-bottom-bar-links__item-container{width:auto;}

.c-header-bottom-bar-links__item .c-button_active{color:#fff;}

.c-header-middle-bar{font-size:inherit;background-color:#fcfcfc;}

.c-header-middle-bar-phone_size_s .c-header-middle-bar-phone__phone{font-size:18px;font-weight:bold;}

* + .c-header-middle-bar__main-container-bottom{margin-top:10px;}

.c-content-decorator h1, .c-header_h1,.c-catalog-columns__link{font-weight:bold;color:#000;}

.l-footer-columns__column{width:auto;}

.c-brand-page__description-container{margin-bottom:0px;}

.c-brand-page__categories-container{margin-bottom:30px;}

.price100sale{padding:5px 10px; font-size:13px; color:#000; display:block; width:100%; background: #fffc44; border-radius:4px;}

.breadcrumbs__item{margin-bottom:0;}

.breadcrumbs__back-button{border:1px solid var(--button-color); color:var(--button-color); padding:0 3px; border-radius:5px; background:#fff;}

.breadcrumbs__back-button:hover {border:1px solid var(--link-color-hover);color: var(--link-color-hover);}

.product-additional-buttons{margin-bottom:10px;}

.product-additional-buttons .product-additional-buttons__button {border: 1px solid #bdbdbd;padding: 3px 5px;border-radius: 5px;}

.l-content-columns__content{max-width:100%;}

.index-hero__subtitle{font-weight:400;line-height:24px;}

.c-product-thumb{border:none;}

.c-product-thumb__name{height:auto;overflow: auto;}

.c-product-thumb__main a.c-product-thumb__name{font-size:16px;font-weight:bold;}

.c-product-thumb__main a.c-product-thumb__name span{border-bottom:1px solid #ccc;}

.c-product-thumb__prices {white-space: normal;}

.c-responsive-tabs__tab-content-container .c-block__header {margin-bottom:45px;}

.c-content-decorator .c-block__header ul{list-style: disc;}

.c-responsive-tabs__tab-header-text-container{font-size:18px;font-weight:bold;}

.c-pseudo-link-box__link{border-bottom:1px dotted #8ed2f9;}

.horizontal-catalog_wo-top-offset .horizontal-catalog__category{padding-top:25px;}

.header-bottom-bar-links__item .button_active{color:var(--primary-color);}

.category-compact__name{}

.category-page__subcategories-wrapper{display:block;}

.category-compact__link_inner {
    font-weight:500;
    color:#000;
    padding: 8px 20px;
    background: #f2f2f2;
    border:1px solid #ccc;
    border-radius: 5px;
    transition: all 0.2s ease;
    text-decoration: none;
}

.category-compact__link_inner:hover {
    background: #e5e5e5;
    border-color: #ccc;
}

.categories-compact__list_inner {
    display: flex; /* Переключаемся с сетки на флекс для автоширины */
    flex-wrap: wrap;
    gap:10px;
    justify-content: flex-start;
}

.blocks__item-technical{margin-top:0;}

.product-images__thumbs{margin:0;}

.c-product-thumb:hover .c-link{color:#2d9cdb;}

.products-thumbs__item{border:1px solid #eee;}

.products-thumbs__item:hover{box-shadow: 0 10px 50px rgba(0, 0, 0, .06);}

.product-thumb__image{max-height:320px;}

.product-cart-form__block .product-add-to-cart__button{font-weight:500;font-size:16px;text-transform:uppercase;letter-spacing:1px;line-height:1.5;}

.buy1click-button_type_item{width:100%;font-size:14px;color:#000;border:1px solid var(--button-color);margin-top:10px;}

/* Карточка товара: «1 клик» рядом с «В корзину». У плагина основные стили только под .page_buy1click; без этого текст/фон теряются на серой подложке .product-add-to-cart */
.product-cart-form__block .product-add-to-cart__controls-button .buy1click-open-button.buy1click-button_type_item,
.product-cart-form__block .product-add-to-cart__controls-button .buy1click-button.buy1click-button_type_item {
    display: block;
    box-sizing: border-box;
    width: 100%;
    margin-top: 10px;
    padding: 9px 19px 10px;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    color: #cb9c27 !important;
    -webkit-text-fill-color: #cb9c27;
    background-color: #fff !important;
    border: 1px solid #cb9c27 !important;
    border-radius: var(--inputs-buttons-border-radius);
    cursor: pointer;
    transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out, border-color 0.2s ease-in-out;
}

.product-cart-form__block .product-add-to-cart__controls-button .buy1click-open-button.buy1click-button_type_item:hover,
.product-cart-form__block .product-add-to-cart__controls-button .buy1click-open-button.buy1click-button_type_item:focus-visible,
.product-cart-form__block .product-add-to-cart__controls-button .buy1click-button.buy1click-button_type_item:hover,
.product-cart-form__block .product-add-to-cart__controls-button .buy1click-button.buy1click-button_type_item:focus-visible {
    background-color: #cb9c27 !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff;
    border-color: #cb9c27 !important;
}

.c-product__add-to-cart-form .c-button_fill,.c-product-add-to-cart__controls-button .c-button_fill{background:#000;border:none;color:#fffc44;}

.c-product__add-to-cart-form .c-button_fill:hover,.c-product-add-to-cart__controls-button .c-button_fill:hover{color:#fff;}

.c-product-add-to-cart_disabled .c-product-add-to-cart__controls-button .c-button_fill{background: #fafafa; color: #e0e0e0;}

.c-product-add-to-cart__buy-one-click{marin-top:10px;}

.c-product-cart-form_modal-extend{width:100%;max-width:1199px;}

.l-blocks__item-other_info,.l-blocks__item-other_info{margin-top:30px;}

.c-home-description{padding-bottom:0px;}

.c-product-images__image{height:490px;}

.product-cart-form__badges{top:-5px;right:-5px;}

.product-badge:not(.product-badge_autobadge){border-radius:5px;padding:3px 6px;}

.product-cart-form__block .product-skus-stocks__sku-stock-available{font-size:13px;}

.c-product-page__pagination{width:100%;}

.c-product-page__pagination .c-link-prev, .c-product-page__pagination .c-link-next{color:#fff;display:inline-block;width:49%;text-decoration:none;padding:5px 10px;background:#ccc;}

.c-product-page__pagination .c-link-prev{border-radius:5px 1px 1px 5px;float:left;}

.c-product-page__pagination .c-link-next{border-radius:1px 5px 5px 1px;float:right;}

/*Ширина характеристик на десктопе*/
.specification_name, .share_name{font-weight:bold;letter-spacing:1px;text-transform: uppercase;}

.specification_file{margin-top:10px; background: url("https://italishop.ru/wa-data/public/site/data/italishop.ru/download-pdf-icon2.png") no-repeat 0px 0px / 35px; padding-left:45px;line-height:1.2;}

.specification_file a{display:inline-block;margin-top:5px;}

.share_file{margin-top:10px; line-height:1.2;}

.specification{border:2px solid #f2f2f2; border-radius: 5px; padding: 19px; margin-bottom:15px;}

.whatsapp{display:block;background:#65bc54; border-radius: 5px; padding: 8px; margin-bottom:15px; text-align:center;}

.whatsapp img{vertical-align:middle;}

.whatsapp_name{font-weight:bold;letter-spacing:1px;text-transform: uppercase; color:#fff;line-height:28px;}

.btn-video-wrap{margin: 30px 0 40px 0;text-align: center;}

.blocks-content{margin: 20px 0;}

.c-product-cart-form__responsive-sub-header{overflow:inherit;}

.c-page_buy1click .c-product-add-to-cart__buy-one-click .c-buy1click-decorator .buy1click-button{font-size:14px;}

.c-product-feature, .c-product-cart-form__top-value{font-size:inherit;color:inherit;margin-bottom:10px;}

.c-product-feature a, .c-product-page__footer a,.c-value__value-text a, .c-content-decorator a {border-bottom:1px solid #cb9c27;}

.l-categories-mini__item{margin-right:15px;margin-bottom:15px;}

.c-category-mini__name-container-inner{height:auto;}

.c-page_container-middle .l-categories-mini__item{width:auto;}

.c-category-mini__name-container{width: auto;}

.c-category-mini__name{font-size:16px!important;}

.c-category-mini{color:var(--link-color);}

.c-category-mini:hover{background:#fff5c0;}

.c-category-mini:hover .c-category-mini__name{color:#000;}

.c-content-decorator ol, .c-content-decorator ul{color:#000;}

.c-modal__close{z-index:999;}

.c-products__lazy-load-button, .c-button_size_l{width:100%;border:2px solid var(--button-color);}

.c-pagination-item{padding:15px;margin:3px;border:2px solid var(--button-color);}

/*Blog*/
.c-post-thumb__title-container{display:block;height:auto;}

.l-blog-posts-mini .c-link{font-size:14px;}

.c-blog-sidebar-news__link-container .c-link {border-bottom:1px solid #8ed2f9}

.brand-plugin-catalog-brand-categories__link{color:var(--link-color);text-decoration:none;}

.c-product-images__images{background:#f1f1f1;}

.c-product-images__images .c-zoom, .c-product-images__images .c-zoom .c-lazy-image{position:absolute;max-width:100%;max-height:100%;margin:auto;top:0;bottom:0;right:0;left:0;}

.c-zoom__zone{display:none!important;}

.c-product-cart-form__badges, .c-product-thumb__badges{top:-5px;left:-5px;}

.c-product-badge:not(.c-product-badge_autobadge), .c-product-badge_autobadge .autobadge-default, .c-product-badge{padding:4px 8px;text-transform:initial;}

.c-product-cart-form__top-values::after{content:inherit;}

.c-product-thumb__buy-one-click{border:none;padding:0;margin-top:10px;margin-bottom:0px;}

.brand-columns__fabric{margin:20px 0;}

.product-cart-form__header {margin-bottom: 25px;}

.product-cart-form__sub-blocks{gap:0px;}

.c-post-thumb__title-container{height:auto;}

.c-post-thumb__title-container a{display:block;}

figure img{display:block;}

figcaption{padding:10px 15px;border:#EEEEEE 1px solid;border-radius:0 0 5px 5px;width:auto;max-width:720px;font-size:14px;font-weight:500;text-align:center;margin-bottom:20px;}

.c-content-decorator b, .c-content-decorator strong{font-weight:bold;color:#000;}

.c-content-decorator .video-container, .c-content-decorator p{margin:15px 0;}

.contact-photo{max-width:200px;margin:0;display:none;}

.anons_style,.anons_type{margin:10px 0;}

.anons_style a,.anons_type a{display:inline-block;padding:3px 12px;margin-right:5px;margin-bottom:5px;border-bottom:none;border-radius:5px;}

.anons_style a{background:#e5f1ff;color:var(--primary-color);}

.anons_style a:hover{background:#fff5c0;color:#000;}

.anons_style a:last-child, .anons_type a:last-child{margin-right:0;}

.anons_type a{background:#fff5c0;color:#000;}

.anons_type a:hover{background:#e5f1ff;color:#0072ff;}

.r-header-menu__dropdown-main .js-r-header-catalog__toggle .list-rows__item-name, .r-header-menu__dropdown-main .list-upper{text-transform: uppercase;letter-spacing:1px;font-weight:bold;color:#000;}

.r-subdropdown__main .list-rows_separated .list-rows__item-name{color:#000;}

.r-subdropdown__main .list-rows_separated .list-rows__item_highlighted .list-rows__item-name{border-bottom:1px solid var(--light-color);}

.l-blocks__item-categories_1, .l-blocks__item-products_3, .l-blocks__item-brands, .l-blocks__item-news{content-visibility: auto;}

.c-page_buy1click .c-buy1click-decorator_button .buy1click-button, .c-page_buy1click .c-product-thumb__buy-one-click .c-buy1click-decorator_button .buy1click-button{background-color:#f5f5f7;color:#000;}

.c-page_buy1click .c-buy1click-decorator_button .buy1click-button:hover, .c-page_buy1click .c-product-thumb__buy-one-click .c-buy1click-decorator_button .buy1click-button:hover{background:#f5f5f7;color:#4c4c4c;}

.c-footer {background: #000; font-size: 14px;}

.c-category-thumb{padding:0;overflow:hidden;border:none;}

.c-category-thumb__image-box{width:auto;height:auto;}

.c-category-thumb__image{position:inherit;transition: 0.5s;}

.c-category-thumb__name{position:absolute;bottom:20px;left:20px;color:#fff;height:auto;}

.c-category-thumb:hover .c-category-thumb__image{transform: scale(1.1);}

.c-category-thumb:hover .c-category-thumb__name {color:#fff;}

.l-categories-thumbs_mobile .c-category-thumb{padding:0px;}

.l-categories-thumbs_mobile .c-category-thumb__image-box{width:auto;height:auto;}

/*Плитки подкатегорий*/
.l-categories-compact__item{width:180px;vertical-align: bottom;margin-right:5px;}

.c-category-compact__content, .c-category-compact__image-box{display:block;}

.c-category-compact__image-box{width:150px;margin-bottom:15px;}

.list-rows__item-image {width:60px;height:60px;}

/*Валпепер на странице товара*/
.product-wallpaper-screen1{display:none;}

.product-cart-form__sub-block_summary{color:#000;}

.product-wallpaper-mobile1{display:none;}

.product-video, .product-wallpaper2, .technical, .materials{margin-top:30px;}

.technical img{max-width:100%;}

.shop-brand-brands__brand-wrap{width:180px;}

.shop-brand-brands__brand-name{font-size:16px;}

.shop-brand-brands__brand-link{color:#206dc4;border-radius:4px;border: 1px solid transparent;}

/*Вёрстка под каталоги фабрик*/
.brand100sale{display:block; width:100%; padding: 12px;text-align: center;font-size: 18px;margin-bottom: 15px;background: #fffc44; border-radius: 5px;}

.brand-catalogs-container{background:#fafafa;margin-top:30px; padding:20px;border-radius:5px;}

.brand-catalogs-container h2{font-size:24px;}

.brand-catalogs {
    display: grid;
    gap: 20px 20px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top:30px;
}

.brand-catalog-item{
    display: flex;
    gap: 20px;
        border: #f2f2f2 1px solid;
    border-radius: 10px;
    padding: 18px 20px 15px;
}

.brand-catalog-item .brand-catalog-img {
    flex: 0 0 auto;
}

.brand-catalog-item .brand-catalog-img img{
    display: block;
    width: 92px;
    height: auto;
}

.brand-catalog-item .brand-catalog-name a {
      display: inline-flex;
flex-direction: column;
align-items: flex-start;
gap: 10px;
color: #333333;
font-size: 14px;
line-height: 120%;
text-decoration:none;
  }

.download {

  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 10px;
  border-radius: 5px;
  background: #F4F4F4;
  color: #999999;
  font-size: 12px;
  line-height: 1;
  white-space: nowrap;
}

/* Текст "Скачать" через псевдоэлемент */
.brand-catalog-name a .download::after{
  content: "Cкачать";
}

.brand-catalog-name a .download::before{
  content: "";
  width: 11px;
  height: 11px;
  display: inline-block;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background: url("https://italishop.ru/wa-data/public/site/data/italishop.ru/download.png") no-repeat bottom / 14px;
  opacity:0.5;
}

/* 4) Цвет и поведение текста ссылки (как на скрине — спокойнее) */
.brand-catalog-name a:link,
.brand-catalog-name a:visited{
  color: #1a1a1a;
}

.brand-catalog-name a:hover{
  color: #1a1a1a;
}

.brand-catalog-name a:hover .download{
  background: #eaeaea;
}

/* контейнер текста */
.brand-page__description-text-container {
  position: relative;
}

/* скрываемая часть */
.brand-seo-more {
  display: none;
  margin-top: 10px;
}

/* когда раскрыто */
.brand-seo-is-open .brand-seo-more {
  display: block;
}

/* кнопка "показать ещё" */
.brand-seo-toggle {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #333333;        
  font-size: 12px;
  line-height: 100%;
  cursor: pointer;
  text-decoration:none;
  border-bottom:#333333 1px dashed;
}

/* лёгкий hover */
.brand-seo-toggle:hover {
  color: #6f6f6f;
}

/* Контейнер героя: слева картинка, справа — карточка/форма */
.block .brand-hero{
  display: flex;
  gap: 20px;
  align-items: stretch;
  margin-top: 15px;
}

/* Левая колонка (картинка) */
.block .brand-hero__media{
  flex: 1 1 auto;
  min-width: 0;
  height: 290px;
  max-height: 290px;
  border-radius: 15px;
  overflow: hidden;
}

.block .brand-hero__img{
  display: block;
  width: 100%;
  height: 100%;
  min-height: 200px;    
  object-fit: cover;
}

.block .brand-hero__bg{
  width: 100%;
  height: 100%;
  min-height: 200px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.block .brand-hero__side{
  flex: 0 0 50%;     
  max-width: 50%;
  min-width: 50%;
}

/* Карточка формы */
.block .brand-hero__consult{
  height: 100%;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 15px;
  background: #fff;
  padding: 40px 40px 20px;
}

/* Заглушка, чтобы сейчас выглядело прилично */
.block .brand-hero__consult-placeholder{
  color: #333333;
  font-size: 20px;
  line-height:100%;
  font-weight: 500;
  margin-bottom:20px;
}

.brand-hero__consult .consultant-card {
    padding:0;
    border:0;
    width: 75%;
}

/* Текст-описание после героя — чтобы не лип */
.block .brand__desc{
  margin-top: 18px;
  padding-right:35%;
}

.category-banner-side{margin-bottom:20px;}

.category-banner-side .products-thumbs__item{max-height:auto;min-height:auto;}

.review-catalog-item{width:48%;display:inline-block;margin-right:10px;margin-bottom:10px;border:1px solid #f1f1f1;border-radius:4px;background:#fff;padding:20px;vertical-align:top;}

.img-item{width:48%;display:inline-block;}

.review-catalog-item .review-catalog-text{font-size:14px; font-style:italic;}

.logo-catalog {display: flex;flex-wrap:wrap; align-items:center;}

.logo-item {text-align:center; padding:35px;width:25%;}

.logo-item a{border-bottom:none;}

.c-product-page__footer-social{padding-left:10px;}

/*Кнопка наверх*/
.c-up-button{bottom:115px;}

.js-product-quantity{width:30px;}

.s-minus-button,.s-plus-button{display:none;}

.ya-share2__list.ya-share2__list_direction_horizontal{padding-left:0px;margin-bottom:0px;}

/* stylelint-disable no-empty-source */


/* Блок с адресом и графиком */
.contacts-page__info {
    display: flex;
    justify-content: space-between;
    gap: 40px;
    margin: 30px 0 30px;
}

.contacts-page__col {
    flex: 1 1 50%;
}

.contacts-page__subtitle {
    font-size: 20px;
    line-height:100%;
    margin: 0 0 10px !important;
    color:#333333;
    font-weight:500 !important
}

.contacts-page__col p {
    margin: 0;
    font-size: 14px;
    line-height: 120%;
    color:#333333;
}

/* Карта */
.contacts-page__map-wrapper {
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 20px;
    background: #fff;
}

.contacts-page__map {
    width: 100%;
    min-height: 350px; 
}

/* Плашка с e-mail */
.contacts-page__cta {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    text-decoration: none !important;
    padding: 15px 30px;
    border-radius: 10px;
    background: #FAF5E9; 
    color: #333333 !important;
    font-size: 20px;
    line-height:100%;
}

.contacts-page__cta:hover {
    background: #ffe9c4;
}

.contacts-page__cta .icon-box__icon {
    padding:3px 0 0;
    margin-right:-10px;
}

.contacts-page__cta-email {
        border-bottom: 1px solid #CB9C27;
}

.contacts-block {
    display: flex;
    justify-content: space-between;
    gap: 40px;
    margin: 80px 0 60px;
}

.contacts-block__left {
    width: 50%;
}

/* Заголовок как на скрине — тот же стиль, что и «Остались вопросы?» */
.contacts-page-title {
    font-size: 48px !important;
    font-weight: 100 !important;
    font-family: "Forum", serif;
    letter-spacing: -1px;
    line-height: 100%;
    margin: 0 0 30px !important;
}

/* Две колонки в одной строке */
.contacts-row-2col {
    display: flex;
    justify-content: space-between;
    gap: 40px;
    margin-bottom: 26px;
}

.contacts-col {
    width: 50%;
}

/* Подписи */
.contacts-label {
    font-weight: 500;
    font-size: 20px;
    line-height: 100%;
    margin-bottom: 10px;
}

/* Ссылки */
.contacts-value {
    font-size: 14px;
    line-height: 120%;
    color: #333 !important;
    text-decoration: none !important;
}

.contacts-value:hover {
    text-decoration: underline;
    color: #CB9C27 !important;
}

.contacts-messengers {
    display: flex;
    align-items: center;
    gap: 30px;          /* расстояние между WhatsApp и Telegram */
    margin-top: 6px;
    flex-wrap: wrap;
    text-decoration: none !important;
}

.contacts-messenger {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    text-decoration: none !important;
    color: #333 !important;
}

.contacts-messenger:hover {
    color: #CB9C27 !important;
}

.contacts-messenger__icon svg {
    display: block;
}

.svg-icon--telegram {
    transform: scale(1.15);
    transform-origin: center;
}

.contacts-messenger__text {
    line-height: 18px;
}

.contacts-block__item {
    margin-bottom: 26px;
}

/* Правая колонка */
.contacts-block__right {
    width: 55%;
}

.contacts-block__right .default-theme .multiform-gap-fields {
    margin-bottom: 15px !important;
}

/* Внешний блок-рамка */
.ceo-quote {
    margin-top: 40px;
    margin-bottom: 20px;
}

.ceo-quote__inner {
    position: relative;
    display: flex;
    align-items: center;
    gap: 10%;
    padding: 50px 60px 40px;
    border-radius: 10px;
    border: 1px solid #EEEEEE;
    box-sizing: border-box;
}

/* Кавычки слева и справа (через CSS, не картинки) */
.ceo-quote__inner::before,
.ceo-quote__inner::after {
    position: absolute;
    font-size: 100px;
    line-height: 1;
    color: #EEEEEE;
    font-family: "Forum", serif;
}

.ceo-quote__inner::before {
    content: "“";
    left: 27%;
    top: 48px;
}

.ceo-quote__inner::after {
    content: "”";
    right: 10%;
    bottom: 20px;
}

/* Левая часть — фото и подпись */
.ceo-quote__photo {
    flex: 0 0 220px;
    text-align: left;
}

.ceo-quote__photo-img {
    width: 210px;
    height: 210px;
    border-radius: 50%;
    overflow: hidden;
    margin-bottom: 8px;
}

.ceo-quote__photo-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    margin-top:0;
}

.ceo-quote__name {
    font-weight: 500;
    font-size: 14px;
    line-height: 120%;
    margin-bottom: 4px;
}

.ceo-quote__position {
    font-size: 11px;
    line-height: 120%;
    color: #333333;
}

/* Правая часть — текст */
.ceo-quote__content {
    position: relative;
    flex: 1 1 auto;
    padding-right:6%;
}

.ceo-quote__title {
    font-size: 32px;
    line-height: 100%;
    margin-bottom: 20px;
    color: #333333;
}

.ceo-quote__subtitle {
    font-size: 20px;
    line-height: 100%;
    margin-bottom: 16px;
    color: #333333;
    font-weight: 500;
}

/* ===== Buttons row ===== */
.ceo-quote__buttons{
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  margin-top:20px;
}

/* База кнопки (одинаковая геометрия) */
.ceo-quote__btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 26px;
  border-radius: 5px;
  border: 1px solid currentColor;
  background: transparent;
  text-decoration: none !important;
  transition: background-color .2s ease, color .2s ease, border-color .2s ease;
}

/* выравнивание иконка + текст */
.ceo-quote__btn .icon-box{
  display: inline-flex;
  align-items: center;
  gap: 0px;
}

.ceo-quote__icon{
  display: inline-block;
  fill: currentColor;
}

/* ===== Colors (как на скрине) ===== */
.ceo-quote__btn--tg{ color: #37B4FD !important;  }

/* Telegram blue */
.ceo-quote__btn--max{ color: #464AE9 !important; }

/* Max purple */
.ceo-quote__btn--wa{ color: #4EB859 !important; }

/* WhatsApp green */

/* ===== Hovers ===== */
.ceo-quote__btn--tg:hover{
  background: #37B4FD;
  color: #fff !important
}

.ceo-quote__btn--max:hover{
  background: #464AE9;
  color: #fff !important
}

.ceo-quote__btn--wa:hover{
  background: #4EB859;
  color: #fff !important
}

.blog-autor__inner {
    margin-top: 20px;
    position: relative;
    display: flex;
    align-items: center;
    gap: 3%;
    padding: 30px 10px 20px 30px;
    border-radius: 10px;
    border: 1px solid #EEEEEE;
    box-sizing: border-box;
}

/* Левая часть — фото и подпись */
.blog-autor__photo {
    flex: 0 0 150px;
    text-align: left;
}

.blog-autor__photo-img {
    width: 140px;
    height: 140px;
    border-radius: 50%;
    overflow: hidden;
    margin-bottom: 8px;
}

.blog-autor__photo-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    margin-top:0;
}

/* Правая часть — текст */
.blog-autor__content {
    position: relative;
    flex: 1 1 auto;
    padding-right:3%;
}

.blog-autor__title {
    font-size: 26px;
    line-height: 100%;
    margin-top: 0;
    margin-bottom: 14px;
    color: #333333;
    letter-spacing: -1px;
}

.blog-autor__subtitle {
    font-size: 16px;
    line-height: 100%;
    margin-bottom: 16px;
    color: #999999;
    font-weight: 500;
}

/* ===== Buttons row ===== */
.blog-autor__buttons{
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  margin-top:20px;
}

/* База кнопки (одинаковая геометрия) */
.blog-autor__btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 26px;
  border-radius: 5px;
  border: 1px solid currentColor;
  background: transparent;
  text-decoration: none !important;
  transition: background-color .2s ease, color .2s ease, border-color .2s ease;
}

/* выравнивание иконка + текст */
.blog-autor__btn .icon-box{
  display: inline-flex;
  align-items: center;
  gap: 0px;
}

.blog-autor__icon{
  display: inline-block;
  fill: currentColor;
}

/* ===== Colors (как на скрине) ===== */
.blog-autor__btn--tg{ color: #37B4FD !important;  }

/* Telegram blue */
.blog-autor__btn--max{ color: #464AE9 !important; }

/* Max purple */
.blog-autor__btn--wa{ color: #4EB859 !important; }

/* WhatsApp green */

/* ===== Hovers ===== */
.blog-autor__btn--tg:hover{
  background: #37B4FD;
  color: #fff !important
}

.blog-autor__btn--max:hover{
  background: #464AE9;
  color: #fff !important
}

.blog-autor__btn--wa:hover{
  background: #4EB859;
  color: #fff !important
}

.blog-autor__btn-text--short {
    display: none;
}

/* Серый блок формы */
.form-placeholder {
    background: #f5f5f5;
    padding: 40px 45px;
    border-radius: 12px;
}

.form-placeholder h3 {
    font-size: 28px;
    margin-bottom: 15px;
    font-weight: 400;
}

.form-placeholder__desc {
    opacity: 0.6;
    font-size: 16px;
}

.multiform-wrap.default-theme {
    border:0 !important;
    box-shadow:none !important;
    background:transparent !important;
}

div.multiform-body {
    padding:0 !important;
}

.multiform-wrap.questions .multiform-gap-form {
    border:0;
    box-sizing: border-box;
}

.form-placeholder .multiform-gap-fields{
    padding:0;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-areas:
        "question question"
        "name phone"
        "consent consent";
    grid-row-gap: 16px;
    grid-column-gap: 16px;
}

.default-theme .multiform-gap-fields,
.default-theme .multiform-gap-field,
.multiform-wrap .multiform-gap-value,
.default-theme .multiform-submit {
    padding:0 !important;
    margin:0 !important;
}

.form-placeholder .multiform-gap-field .multiform-gap-option {
    padding:0;
    margin:0;
    font-size: 11px;
    line-height:120%;
}

.form-placeholder .multiform-gap-field .multiform-gap-option span {
    padding:0;
    margin:0;
}

.form-placeholder .multiform-gap-field .multiform-gap-option span.checkbox {
    margin-right:10px;
}

/* Привязка полей к областям */
.multiform-wrap.questions #multiformField7_4-1 { grid-area: question; }

.multiform-wrap.questions #multiformField8_4-1 { grid-area: name; }

.multiform-wrap.questions #multiformField9_4-1 { grid-area: phone; }

.multiform-wrap.questions #multiformField10_4-1 { grid-area: consent; }

.multiform-wrap.questions .multiform-submit   { grid-area: submit; }

/* === УБИРАЕМ СТРОКИ "Ваш вопрос / Ваше имя / Ваш телефон" === */
.multiform-wrap.questions .multiform-gap-name {
    display: none !important;
}

/* === СТИЛИ ИНПУТОВ И TEXTAREA === */

.multiform-wrap .multiform-gap-value input[type="text"],
.multiform-wrap .multiform-gap-value input[type="email"],
.multiform-wrap .multiform-gap-value input[type="tel"],
.multiform-wrap .multiform-gap-value textarea.textarea {
    width: 100% !important;
    background: #fff !important;
    border-radius: 5px !important;
    padding: 10px 10px !important;
    color:#999999 !important;
    box-sizing: border-box !important;
    font-size: 14px !important;
    line-height: 120% !important;
    outline: none !important;
}

.multiform-gap-value input:focus,
.multiform-gap-value textarea.textarea:focus {
    background: #fff;
    box-shadow:none;
}

/* textarea — компактная, как в макете */
.multiform-wrap.questions .multiform-gap-value textarea.textarea {
    min-height: 80px;
    resize: vertical;
}

/* === ЧЕКБОКС === */

.multiform-wrap.questions #multiformField10_4-1 .form-field__label {
    font-size: 13px;
    color: #555;
    display: flex;
    align-items: center;
}

.multiform-wrap.questions .checkbox {
    margin: 0;
}

.multiform-wrap.questions .checkbox__mark {
    border-radius: 4px;
}

.multiform-gap-value .button,
.multiform-submit .mf-button {
    border-radius: 5px !important;
    padding: 10px 24px 12px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    text-align: center !important;
    font-family:Manrope, sans-serif
}

.multiform-gap-value .button:hover,
.multiform-submit .button:hover{
    background-color: #b7831e !important;
}

.multiform-wrap.questions .multiform-submit .mf-button.button {
    width: 100%;
}

.multiform-gap-field.type-file .multiform-fileinput-button {
    border-radius: 5px !important;
    padding: 10px 24px 12px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    text-align: center !important;
    font-family: Manrope, sans-serif;
    color: #cb9c27;
    border: #cb9c27 1px solid;
    background-color: #ffffff;
    transition: border-color 0.2s ease-in-out, color 0.2s ease-in-out;
    cursor:hand;
    cursor:pointer;
}

.multiform-fileinput-button span {
    padding:0 !important;
    cursor:hand;
    cursor:pointer;
}

.multiform-submit .mf-button {
    display: inline-block;
    line-height: 1.2;
    vertical-align: top;
    padding: 8px 14px 9px;
    cursor: pointer;
    transition: background-color 0.2s ease-in-out;
    text-align: center;
    text-decoration: none;
    color: #fff;
    border: 1px solid transparent;
    border-radius: 5px;
    background-color: #cb9c27;
    font-weight: 500;
    text-shadow: none;
    outline: none;
}

.personal .multiform-gap-option label {
    display: flex;
    flex-flow: row;
    gap: 1px;
}

.personal .multiform-gap-option label input {
    width:30px !important;
    padding-right: 0px !important;
}

/* Мой заказ: инпут + кнопка в одну строку */
.index-hero__form .multiform-gap-fields{
  display: flex;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 0; /* если нужен зазор — поставь 12px и убери склейку ниже */
}

/* Поле телефона занимает всё доступное место */
.index-hero__form #multiformField6_3-1{
  flex: 1 1 auto;
  min-width: 0; /* важно для корректного сжатия input */
}

/* Поле кнопки фиксированной ширины (под контент) */
.index-hero__form #multiformField17_3-1{
  flex: 0 0 auto;
}

/* Сбрасываем 100% ширину от mf-colm12/mf-colm6 внутри */
.index-hero__form #multiformField6_3-1,
.index-hero__form #multiformField6_3-1 .multiform-gap-value,
.index-hero__form #multiformField17_3-1,
.index-hero__form #multiformField17_3-1 .multiform-gap-value{
  width: auto !important;
}

/* Инпут тянется, кнопка не тянется */
.multiform-wrap.myorder #multiformField6_3-1 input{
  width: 100% !important;
}

.index-hero__form #multiformField6_3-1 input {
  border-radius: 5px 0 0 5px !important;
}

.index-hero__form #multiformField17_3-1 button {
    padding: 10px 36px 11px 20px !important;
  border-radius: 0 5px 5px 0 !important;
  position: relative;
}

/* Иконка */
.index-hero__form #multiformField17_3-1 button::after{
  content: "";
  position: absolute;
  top: 50%;
  right: 15px; /* отступ от правого края */
  width: 20px;
  height: 20px;
  transform: translateY(-50%);
  background-image: url("img/icon-login.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  pointer-events: none;
}

.errormsg, .default-theme .multiform-mask-error {
    padding:0 !important;
    margin:0 !important;
    border:0 !important;
    background:transparent !important;
}

.default-theme .multiform-mask-error {
    display:none
}

.multiform-wrap .multiform-error-field, .multiform-wrap input.multiform-error-field, .multiform-wrap select.multiform-error-field {
    border: 1px solid #ff4d4d !important;
    background-color: #ffffff !important;
    box-shadow: inset 0 1px 5px rgba(255, 77, 77, 0.2);
}

/* Общий контейнер секции */
.pay-delivery {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* Базовая карточка */
.pay-delivery__card {
    border-radius: 10px;
    border: 1px solid #eeeeee;
    padding: 22px 30px;
    box-sizing: border-box;
}

/* Заголовки и текст внутри карточек */
h2.pay-delivery__card-title,
div.pay-delivery__card-title {
    font-size: 20px !important;
    font-family:Manrope, sans-serif;
    letter-spacing: 0;
    line-height: 100%;
    font-weight: 500;
    margin: 0 0 10px;
}

.pay-delivery__card-text p {
    margin: 0 0 10px;
    font-size: 14px;
    line-height: 120%;
    color: #333333;
}

.pay-delivery__card-text p:last-child {
    margin-bottom: 0;
}

/* 1. Большой верхний блок – две колонки */
.pay-delivery__card--hero {
    display: flex;
    align-items: flex-start;
    gap: 64px;
}

.pay-delivery__hero-left,
.pay-delivery__hero-right {
    flex: 1 1 0;
}

.pay-delivery__hero-text,
.pay-delivery__hero-note {
    font-size: 14px;
    line-height: 120%;
    color: #333333;
    margin: 0 0 10px;
}

/* Контейнер, чтобы кнопки встали в одну строку */
.pay-delivery__hero-actions {
    display: flex;
    flex-wrap: nowrap; 
    column-gap: 10px;
    row-gap: 10px;
    margin: 16px 0;
}

.pay-delivery__hero-actions a {
    text-decoration:none;
}

/* Переопределяем базовую кнопку только внутри hero-блока оплаты/доставки */
.pay-delivery__hero-actions .consultant-card__wa-btn {
    flex: 1 1 50%;          /* ← вот это главное */
    max-width: 50%;
    justify-content: center;
    margin: 0;
    padding: 12px 24px;         /* более аккуратная ширина */
}

/* Контент внутри кнопки */
.pay-delivery__hero-actions .icon-box {
    display: inline-flex;
    align-items: center;
}

.pay-delivery__hero-actions .icon-box__icon {
    padding-right: 4px;
}

.pay-delivery__hero-actions .icon-box__content {
    color: inherit;
}

/* Модификатор для e-mail-кнопки */
.pay-delivery__btn--mail {
    border-color: #CB9C27;
    color: #CB9C27 !important;
    background: #ffffff;
}

.pay-delivery__btn--mail:hover {
    background: #CB9C27;
    color: #ffffff !important;
    box-shadow: 0 8px 18px rgba(242, 176, 65, 0.25);
}

/* Модификатор для WhatsApp-кнопки (по аналогии с твоей зеленой) */
.pay-delivery__btn--wa {
    border-color: #4EB859;
    color: #4EB859 !important;
    background: #ffffff;
}

.pay-delivery__btn--wa:hover {
    background: #4EB859;
    color: #ffffff !important;
    box-shadow: 0 8px 18px rgba(78, 184, 89, 0.25);
}

/* 2. Сетка карточек снизу (для 3-й, 4-й и будущих блоков) */
.pay-delivery__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

/* Список в блоке "Дополнительные услуги" */
.pay-delivery__extras-list {
    margin: 0 0 8px 18px;
    padding: 0;
    font-size: 14px;
    line-height: 1.6;
    color: #333333;
}

.pay-delivery__extras-list li {
    margin-bottom: 4px;
}

/* Карточка с мини-цитатой внизу */
.pay-delivery__card--quote {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.pay-delivery__mini-quote {
    display: flex;
    align-items: center;
    gap: 16px;
    padding-top: 16px;
    border-top: 1px solid #f2f2f2;
}

.pay-delivery__mini-quote-photo {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0;
}

.pay-delivery__mini-quote-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.pay-delivery__mini-quote-title {
    font-size: 15px;
    font-weight: 500;
    margin-bottom: 4px;
}

.pay-delivery__mini-quote-text {
    font-size: 13px;
    line-height: 1.5;
    color: #555555;
    margin-bottom: 4px;
}

.pay-delivery__mini-quote-name {
    font-size: 13px;
    color: #777777;
}

/* ОБЩАЯ СЕТКА:
   2 колонки, 2 строки.
   Левая карточка тянется на 2 строки, справа сверху карточка, снизу цитата. */
.pay-delivery-guarantee__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
    column-gap: 24px;
    row-gap: 16px;
    grid-template-areas:
        "left right-top"
        "left quote";
}

/* Левая высокая карточка */
.pay-delivery-guarantee__card-left {
    grid-area: left;
}

/* Правая карточка с рамкой */
.pay-delivery-guarantee__card-right {
    grid-area: right-top;
}

.pay-delivery-guarantee__services {
    margin: 8px 0 0 15px !important;
    padding-left: 7px !important;
    font-size: 14px;
    line-height: 120%;
    color: #333333 !important;
    list-style: none !important;
}

.pay-delivery-guarantee__services li {
    position: relative;
    padding-left: 0;
    color: #333333 !important;
}

.pay-delivery-guarantee__services li + li {
    margin-top: 0;
}

.pay-delivery-guarantee__services li::before {
    background: #333333 !important;
}

/* ЦИТАТА СПРАВА СНИЗУ (БЕЗ РАМКИ) */
.pay-delivery-guarantee__quote {
    grid-area: quote;
    box-sizing: border-box;
}

.pay-delivery-guarantee__quote-inner {
    display: flex;
    align-items: center;
    gap: 16px;
}

.pay-delivery-guarantee__quote-photo img {
    width: 69px;
    height: 69px;
    border-radius: 50%;
    object-fit: cover;
    display: block;
    max-width: initial !important;
}

.pay-delivery-guarantee__quote-title {
    margin: 0 0 5px;
    font-size: 14px;
    font-weight: 500;
    line-height: 120%;
}

.pay-delivery-guarantee__quote-text {
    margin: 0 0 5px;
    font-size: 11px;
    line-height: 120%;
}

.pay-delivery-guarantee__quote-sign {
    margin: 0;
    font-size: 11px;
    line-height: 120%;
}

/* Видео-карточка */
.pay-delivery__card--video {
    padding: 0;
    overflow: hidden;
}

.pay-delivery__video {
    position: relative;
}

.about-benefits {
    margin-top: 20px;
    margin-bottom: 80px;
}

.about-benefits__header {
    margin-bottom: 30px;
}

.about-benefits__title,
.about-info__subtitle {
    font-size: 24px;
    font-weight: 500;
    line-height: 100%;
}

/* Сетка карточек */

.about-benefits__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
}

/* Карточка */

.about-benefits__item {
    position: relative;
    min-height: 360px;
    padding: 30px;
    border-radius: 10px;
    overflow: hidden;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    color: #ffffff;
    display: flex;
    align-items: flex-end;
}

/* Градиент поверх картинки */

.about-benefits__item::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        180deg,
        rgba(0, 0, 0, 0) 30%,
        rgba(0, 0, 0, 0.75) 100%
    );
    z-index: 0;
}

.about-benefits__content {
    position: relative;
    z-index: 1;
}

/* Текст на карточке */

.about-benefits__card-title {
    font-size: 20px;
    line-height: 110%;
    font-weight: 500;
    margin: 0;
}

.about-benefits__card-subtitle {
    margin-top: 6px;
    font-size: 14px;
    line-height: 120%;
    font-weight: 300;
}

/* Фоны карточек */

.about-benefits__item--1 {
    background-image: url("img/about-card1.jpg");
}

.about-benefits__item--2 {
    background-image: url("img/about-card2.jpg");
}

.about-benefits__item--3 {
    background-image: url("img/about-card3.jpg");
}

.about-benefits__item--4 {
    background-image: url("img/about-card4.jpg");
}

.about-benefits__item--5 {
    background-image: url("img/about-card5.jpg");
}

.about-benefits__item--6 {
    background-image: url("img/about-card6.jpg");
}

.about-benefits__item--7 {
    background-image: url("img/about-card7.jpg");
}

.about-benefits__item--8 {
    background-image: url("img/about-card8.jpg");
}

.about-team {
    margin: 80px 0 90px;
}

.about-team__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
    margin-top: 30px;
}

.about-team__item {
    border-radius: 10px;
    padding: 30px 30px 28px;
    border:#eeeeee 1px solid;
    min-height: 250px; /* как у карточек выше */
    display: flex;
    flex-direction: column;
}

.about-team__photo-wrapper {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    overflow: hidden;
    margin-bottom: 10px;
}

.about-team__photo-wrapper img {
    margin-top:0;
}

.about-team__photo {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.about-team__name {
    font-size: 20px;
    line-height: 100%;
    font-weight: 500;
    margin-bottom: 10px;
}

.about-team__role {
    font-size: 14px;
    line-height: 120%;
}

/* Как мы работаем */

.about-steps {
    margin-bottom: 90px;
}

.about-steps__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
    margin-top: 30px;
}

.about-steps__item {
    border-radius: 10px;
    border:#eeeeee 1px solid;
    padding: 28px 30px 30px;
    min-height: 260px; /* тот же визуальный объём */
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.about-steps img {
    margin-top:0;
}

.about-steps__icon {
    margin-bottom: 18px;
}

.about-steps__icon-img {
    width: 70px;
    height: 70px;
    object-fit: cover;
    display: block;

}

.about-steps__title {
    font-size: 20px;
    line-height: 100%;
    font-weight: 500;
    margin-bottom: 10px;
}

.about-steps__subtitle {
    font-size: 14px;
    line-height: 120%;
    margin-bottom: 10px;
}

.multiform-popup-link {
    display: block;
    width: 100%;
    margin:0 !important;
}

.about-steps__btn-link {
    display: block;
    width: 100%;
    text-align: center;
    padding: 12px 20px;
    border-radius: 5px;
    background: #F4F4F4;
    font-size: 14px;
    line-height: 120%;
    color: #333 !important;
    text-decoration: none !important;
    transition: background-color 0.25s ease, color 0.25s ease;
    margin-top: auto;
}

/* Ховер эффект */
.about-steps__btn-link:hover {
    background: #e8e8e8;
    color: #000 !important;
}

/* Блок "Ваше время — наш приоритет" */
.about-priority {
    margin-bottom: 80px;
}

/* Для этого блока на десктопе — 3 колонки */
.about-priority .about-steps__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.about-priority .about-steps__item {
    padding: 40px 50px 35px;
    min-height: initial;
}

.about-gallery {
    margin: 40px 0 80px;
}

.about-priority img, .about-gallery img {
    margin-top:0;
}

.about-gallery__view {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* Ряды */

.about-gallery__row--top {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.about-gallery__row--bottom {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

/* Карточки изображений */

.about-gallery__item {
    border-radius: 10px;
    overflow: hidden;
}

.about-gallery__item--tall {
    aspect-ratio: 3 / 4;
}

/* Картинки */

.about-gallery__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Блок "Italishop — для тех, кто ценит время" */
.about-audience {
    margin-bottom: 80px;
}

/* Сетка на 3 карточки (поверх базового repeat(4,...)) */
.about-benefits__grid--3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 30px;
}

.about-benefits__grid--3 .about-benefits__item {
    min-height: 300px;
}

/* Фоны карточек этого блока */

.about-benefits__item--9 {
    background-image: url("img/about-card9.jpg");
}

.about-benefits__item--10 {
    background-image: url("img/about-card10.jpg");
}

.about-benefits__item--11 {
    background-image: url("img/about-card11.jpg");
}

.about-today {
    margin: 60px 0 80px;
}

.about-today__grid {
    display: grid;
    grid-template-columns: 1fr 1.1fr;
    gap: 6%;
    align-items:stretch;
}

/* ЛЕВАЯ КОЛОНКА — ВИДЕО */
.about-today__video {
    height: 100%;
    border-radius: 10px;
    overflow: hidden;
    display: flex !important;
}

.blocks__item-brands .about-today__video {
    background-image:var(--bg);
    background-size:cover;
    background-position:50% 35%;
    background-repeat:no-repeat;
}

/* Контейнер задает пропорции */
.video-wrapper-bg {
    position: relative;
    width: 100%;
    height: 100%;
    padding-bottom: 56.25%; /* Пропорция 16:9 */
    background: #000;
    border-radius: 12px;
    overflow: hidden;
}

/* Ссылка растягивается на весь блок */
.video-popup-link-new {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    transition: all 0.4s ease;
}

/* Затемнение при наведении */
.video-popup-link-new:after {
    content: '';
    position: absolute;
    top: 0; left: 0; width: 100%; height: 100%;
    background: rgba(0,0,0,0.1);
    transition: 0.3s;
}

.video-popup-link-new:hover:after {
    background: rgba(0,0,0,0.3);
}

/* Кнопка Play по центру */
.play-button-center {
    position: relative;
    z-index: 2;
    width: 80px;
    height: 80px;
    transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.video-popup-link-new:hover .play-button-center {
    transform: scale(1.15);
}

/* Прячем любые элементы Video.js внутри блока превью, если они там вдруг создаются */
.video-container-wrap .video-js {
    display: none !important;
}

/* Показываем плеер только когда он внутри модального окна */
.js-video-modal .video-js {
    display: block !important;
}

/* ПРАВАЯ КОЛОНКА */
.about-today__content {
    width: 100%;
    display:flex;
    flex-direction:column;
    height:100%;
    min-height:0;
}

/* Сетка цифр */
.about-today__stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px 40px;
    margin: 32px 0 40px;
}

.about-today__stat { }

.about-today__number {
    font-size: 44px;
    font-weight: 100;
    font-family: "Forum", serif;
    letter-spacing: -1px;
    line-height: 100%;
    border-bottom: 2px solid #000;
    display: inline-block;
    padding-bottom: 4px;
    margin-bottom: 5px;
    width: 100%;
}

.about-today__label {
    font-size: 13px;
    line-height: 100%;
}

/* Серый блок под форму */
.about-today__form {
    background: #F4F4F4;
    border-radius: 10px;
    padding: 25px 30px;
    min-height: 140px;
    display: flex;
    margin-top:auto;
}

.about-today__form-title {
    margin-bottom: 18px;
    font-size: 22px;
    line-height: 100%;
    font-weight: 600;
    color: #333;
}

/* ===== about-today: "Подробнее о нас" ===== */
.about-today__more{
  display: inline-flex;
  align-items: center;
  margin: 0px 0 40px;
  font-size: 14px;
  line-height: 120%;
  color: #333;
  text-decoration: none;
  border-bottom: 1px solid rgba(0,0,0,.35);
  width: fit-content;
}

.about-today__more:hover{
  border-bottom-color: rgba(0,0,0,.7);
}

/* 1) Ряд полей: имя + телефон + кнопка */
.multiform-wrap.discussproject .multiform-gap-fields{
  display: grid !important;
  grid-template-columns: 1fr 1fr auto;
  gap: 10px;
  align-items: center;
}

/* убираем подписи над полями (в макете их нет) */
.multiform-wrap.discussproject .multiform-gap-name{
  display: none !important;
}

/* сбрасываем 100% ширины от mf-colm12 */
.multiform-wrap.discussproject .multiform-gap-field,
.multiform-wrap.discussproject .multiform-gap-value{
  width: auto !important;
  margin: 0 !important;
}

/* чтобы инпуты нормально ужимались в grid */
.multiform-wrap.discussproject #multiformField2_2-1,
.multiform-wrap.discussproject #multiformField3_2-1{
  min-width: 0;
}

/* инпуты на всю ширину своей колонки */
.multiform-wrap.discussproject #multiformField2_2-1 input,
.multiform-wrap.discussproject #multiformField3_2-1 input{
  width: 100% !important;
}

/* кнопка фикс-ширины (как на скрине), не растягивается на всю строку */
.multiform-wrap.discussproject #multiformField18_2-1{
  min-width: 0;
}

.multiform-wrap.discussproject #multiformField18_2-1 button{
  padding:10px 25px !important;
}

/* 2) Нижняя строка с email — в одну линию */
.about-today__form-desc{
  display: flex;
  align-items: center;
  margin-top: 15px;
  font-size: 14px;
  line-height: 120%;
  color:#333;
}

.about-today__form-desc svg {
    margin:0 3px 0 5px;
}

/* ссылка (иконка + email) тоже в линию */
.about-today__form-desc a{
  display: inline-flex;
  align-items: center;
  color:#333;
}

/* email не переносится */
.about-today__form-email{
  white-space: nowrap;
  font-weight: 600
}

.copy-success {
    color: #cb9c27 !important;
}

/* иконка аккуратная (на скрине маленькая рядом с email) */
.about-today__form-desc .icon-box__icon{
  display: inline-flex;
  margin-left:5px;
}

.custom-projects-section {
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    /* Убираем возможные горизонтальные отступы, если они есть у родителя */
    padding: 0;
    margin-bottom: 80px;
}

.custom-projects-section {
    position: relative;
    overflow: hidden;
}

.custom-projects-section .slide__background::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(0,0,0,0.2) 10%, rgba(0,0,0,0) 30%, rgba(0,0,0,0.9) 100%);
    z-index: 3; 
    pointer-events: none;
}

.projects-static-content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 4;
    pointer-events: none; /* Текст не мешает перелистыванию */
    display: flex;
    flex-direction: column;
}

.projects-static-content .container {
    height: 100%;
    margin: 0 auto;
    pointer-events: none; /* Чтобы не мешал кликать по слайдам */
}

.projects-main-title {
    position: absolute;
    top: 425px;
    left: 115px;
    color: #fff;
    font-size: 50px;
    font-weight: 100;
    font-family: "Forum", serif;
    letter-spacing: -1px;
    line-height: 100%;
    margin: 0;
    pointer-events: auto; /* Чтобы текст можно было выделить, если нужно */
}

.projects-view-all {
    position: absolute;
    bottom: 100px;
    right: 145px;
    color: #fff;
    text-decoration: none;
    font-size: 14px;
    border-bottom: 1px solid rgba(255,255,255,0.4);
    transition: 0.3s;
    pointer-events: auto; /* Ссылка должна быть кликабельной! */
}

.projects-view-all:hover {
    border-bottom-color: #fff;
}

/* Делаем вложенные элементы снова кликабельными */
.slide__title, 
.slide__button-container {
    pointer-events: auto;
}

.slide__title {
    margin-bottom: 0px !important;
    transform: none !important; /* Убираем лишние сдвиги от параллакса, если они мешают */
}

.slide__title-text {
    font-size: 20px !important; /* Размер как на скриншоте 1 */
    font-weight: 400;
    color: #ffffff;
}

/* 3. Стили кнопки "Смотреть" (делаем её контурной как на макете) */
.slide__button-container .button.button_size_xl {
    background: transparent !important;
    border: 1px solid #ffffff !important;
    border-radius: 5px !important; /* Квадратная кнопка */
    padding: 12px 40px !important;
    font-size: 14px !important;
    text-transform: none;
    transition: all 0.3s ease;
    z-index: 15;
}

.slide__button-container .button.button_size_xl:hover {
    background: #ffffff !important;
    color: #000000 !important;
}

.blocks__item-brands .about-today__grid {
    grid-template-columns: 1.2fr 1fr;
}

.about-reviews {
    margin: 80px 0;
}

.about-reviews__wrapper {
    margin-top: 30px;
}

/* Заглушка под будущий виджет */
.about-reviews__placeholder {

}

.about-info {
    margin: 80px 0;
}

/* Верхний блок: текст + картинка */
.about-info__top {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 5%;
    align-items: start;
    margin-bottom: 40px;
}

.about-info__text p {
    font-size: 14px;
    line-height: 120%;
}

.about-info__text a {
    color: #333;
    text-decoration: underline;
}

h4.about-info__subtitle {
    margin: 0 0 15px !important;
}

/* Картинка справа */
.about-info__image {
    border-radius: 10px;
    overflow: hidden;
    height: 100%; /* контейнер тянется */
    display: flex;
}

.about-info__img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* растягивает картинку ровно под высоту */
    display: block;
}

/* Нижние две колонки текста */
.about-info__bottom {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 5%;
}

.about-info__column p {
    font-size: 14px;
    line-height: 120%;
}

.about-contacts {
    margin: 80px 0 20px;
}

.about-contacts__grid {
    display: grid;
    grid-template-columns: 1fr 1fr; /* 50 / 50 */
    gap: 40px;
    align-items: start;
}

/* Сетка внутри левой части: два столбца */
.about-contacts__info-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-top: 20px;
}

/* Адрес чуть отодвинуть от сетки */
.about-contacts__block--address {
    margin-bottom: 8px;
}

/* Колонки внутри левой части */
.about-contacts__col .about-contacts__block {
    margin-bottom: 20px;
}

.about-contacts__block {
    margin-bottom: 24px;
}

.about-contacts__label {
    font-size: 20px;
    font-weight: 500;
    line-height: 100%;
    margin-bottom: 10px;
}

.about-contacts__text {
    font-size: 14px;
    color: #333;
    line-height: 130%;
}

/* Правая колонка — карта */
.about-contacts__map {
    width: 100%;
    display: flex;
}

.products-bar__filters.is-fixed{
  position: fixed;
  left: 0;
  right: 0;
  top: 65px;
  z-index: 9;
  background: #fff;
  padding: 10px;
  border-bottom: 1px solid #eee;
}

/* === Баннер помощи в избранном === */
.favorite-help-banner{
  position: relative;
  display: block;
  height: 407px;
  margin-top:20px;
  align-self: flex-start;   /* если родитель flex и тянет */
  flex: 0 0 auto; 
  border-radius: 10px;
  overflow: hidden;

  background-image: url('img/about-card5.jpg');
  background-size: cover;
  background-position: center;

  text-decoration: none;
  color: #fff;
}

/* затемнение */
.favorite-help-banner__overlay{
  position: absolute;
  inset: 0;
  background: linear-gradient(
    180deg,
    rgba(0,0,0,0.05) 0%,
    rgba(0,0,0,0.55) 100%
  );
  z-index: 1;
}

/* контейнер контента */
.favorite-help-banner__content{
  position: relative;
  z-index: 2;

  height: 100%;
  padding: 24px;

  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
}

/* заголовок */
.favorite-help-banner__title{
  font-size: 20px;
  line-height: 100%;
  font-weight: 500;
  margin-bottom: 20px;
}

/* кнопка (визуально) */
.favorite-help-banner__button{
  pointer-events: none;
  font-size: 11px;
  line-height: 100%;
}

.content-columns_sidebar-left .sidebar-pages {
    display:none;
}

/* === PAY-DELIVERY: mail + 3 квадратные иконки (как на скрине №2) === */
.pay-delivery__hero-actions{
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: nowrap;
}

/* ВАЖНО: убираем старое "flex: 1 1 50%" для всех кнопок внутри actions,
   чтобы квадратные не растягивались */
.pay-delivery__hero-actions .consultant-card__wa-btn{
  flex: 1 1 auto;
  max-width: none;
}

/* Большая кнопка email — занимает всё свободное место */
.pay-delivery__hero-actions .pay-delivery__btn--mail{
  flex: 1 1 auto;
  min-width: 0;
  justify-content: center;
}

/* Квадратные кнопки-иконки */
.pay-delivery__icon-btn{
  flex: 0 0 auto;
  width: 44px;
  height: 44px;
  border-radius: 8px;
  border: 1px solid currentColor;
  background: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  transition: background-color .2s ease, color .2s ease, border-color .2s ease;
}

/* чтобы <use> красился от currentColor */
.pay-delivery__icon-btn .svg-icon{
  display: block;
  fill: currentColor;
}

.pay-delivery__icon-btn--tg .svg-icon {
  transform: scale(1.4);
}

.pay-delivery__icon-btn--wa .svg-icon {
  transform: scale(1.2);
}

/* Цвета (как у вас уже в CEO блоке) */
.pay-delivery__icon-btn--wa{ color: #4EB859 !important; }

.pay-delivery__icon-btn--tg{ color: #37B4FD !important; }

.pay-delivery__icon-btn--max{ color: #464AE9 !important; }

/* Hover */
.pay-delivery__icon-btn--wa:hover{
  background: #4EB859;
  color: #fff !important;
}

.pay-delivery__icon-btn--tg:hover{
  background: #37B4FD;
  color: #fff !important;
}

.pay-delivery__icon-btn--max:hover{
  background: #464AE9;
  color: #fff !important;
}

/* На всякий: чтобы email не ломал строку */
.pay-delivery__btn--mail .icon-box__content{
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.banner-inner-wrap {
    position: relative;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 40px 40px;
    box-sizing: border-box;
    border-radius: 10px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    overflow: hidden;
    transition: transform 0.3s ease;
}

/* Заголовок баннера */
.banner-title {
    color: #ffffff!important;
    font-size: 20px;
    font-weight: 300;
    line-height: 100%;
    margin-bottom: 10px!important;
}

/* Описание баннера */
.banner-description {
    color: rgba(255, 255, 255, 0.9)!important;
    font-size: 14px;
    line-height: 120%;
}

/* Кнопка */
.banner-action-btn {
    display: block;
    margin-top: 15px!important;
    width: 100%;
    color: #ffffff!important;
    padding: 10px 30px 12px;
    font-size: 14px;
    text-decoration: none!important;
    transition: background 0.3s ease;
    box-sizing: border-box;
}

.banner-action-btn:hover {
    background-color: #a68332!important;
}

/* 1. Позиционирование в сетке Megashop 3.0 */
.custom-banner-fullwidth {
    grid-column: 1 / -1; /* Растягиваем на все колонки (от 1 до конца) */
    width: 100%;
    margin: 0 0;
    box-sizing: border-box;
}

/* 2. Общий контейнер баннера */
.banner-horizontal-wrapper {
    display: flex;
    flex-direction: row; /* По умолчанию в ряд (для больших экранов) */
    background: #f4f4f4; /* Светло-серый фон как на макете */
    border-radius: 10px;
    overflow: hidden;
    min-height: 320px;
}

/* 3. Левая сторона с IMG */
.banner-collage-side {
    flex: 1.2; /* Занимает чуть больше места */
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff; /* Белый фон под коллажем */
}

.collage-img {
    max-width: 100%;
    height: auto;
    display: block;
}

/* 4. Правая сторона с текстом и фоновым PNG */
.banner-info-side {
    flex: 1;
    position: relative;
    display: flex;
    align-items: center;
    padding: 40px 60px;
    background-image: url('img/watch.png'); 
    background-repeat: no-repeat;
    background-position: right 40% center; 
    background-size: 320px auto; /* 300px - ширина, auto - высота */
}

.banner-info-content {
    position: relative;
    z-index: 2; /* Чтобы текст был выше фоновой картинки */
    max-width: 450px;
}

.banner-h2 {
    font-size: 32px;
    font-weight: 100;
    line-height:100%;
    font-family: "Forum", serif;
    letter-spacing: -1px;
    color: #333333;
    margin-bottom: 10px;
}

.banner-p {
    font-size: 14px;
    color: #333;
    font-weight: 500;
    line-height:100%;
    margin-bottom: 22px;
}

.banner-btn-gold {
    display: inline-block;
    padding: 14px 40px;
    font-size: 14px;
    text-decoration: none!important;
    transition: 0.3s;
}

.zakaz-pageform .multiform-wrap.default-theme{margin:0px;padding:25px;border-radius:10px;border: 1px solid #EEEEEE!important;}

.zakaz-pageform .type-phone{margin-bottom:10px!important;}

.multiform-popup-window .multiform-wrap.default-theme {
    -webkit-box-shadow: 0 0 5px #ccc;
    -moz-box-shadow: 0 0 5px #ccc;
    box-shadow: 0 0 5px #ccc;
    background: #ffffff !important;
    border-radius:5px;
    padding:25px;
    font-family: 'Manrope', sans-serif;
    width:520px;
}

.multiform-popup-window .default-theme .multiform-title {
    margin-bottom: 25px;
    font-weight: 500;
    font-size: 18px;
    font-family: 'Manrope', sans-serif;
    line-height: 100%;
    color: #333333;
    text-align:left;
    padding:0;
}

/* Иконка */
#multiformField20_6-1,
#multiformField22_7-1,
#multiformField22_7-2 {
    position:relative;
}

#multiformField20_6-1 button::after,
#multiformField22_7-1 button::after,
#multiformField22_7-2 button::after {
  content: "";
  position: absolute;
  top: 50%;
  right: calc(50% - 41px); /* отступ от правого края */
  width: 20px;
  height: 20px;
  transform: translateY(-50%);
  background-image: url("img/icon-login.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  pointer-events: none;
}

.multiform-fileinput-button span {
    background:transparent !important;
    border: 0 !important;
}

.multiform-popup-window .default-theme .multiform-form-description {
    padding:0;
    margin:0;
    color: #333333;
    font-family: 'Manrope', sans-serif;
}

.multiform-popup-window .default-theme .multiform-form-description p {
    margin:0 0 7px;
}

.multiform-popup-window .default-theme .multiform-gap-field {
    padding-bottom:10px !important;
}

.multiform-wrap .multiform-error-field, .multiform-wrap input.multiform-error-field, .multiform-wrap select.multiform-error-field {
    border: 1px solid #d43538 !important;
}

.multiform-wrap .multiform-gap-value {
    position: relative !important;
}

.multiform-wrap.default-theme .errormsg {
    position: absolute !important;
    right: 12px !important;    /* Отступ от правого края внутри поля */
    top: 50% !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 0 !important;   /* Скрываем текст "Обязательное поле" */
    background: none !important;
    border: none !important;
    z-index: 10;
    pointer-events: none;
}

/* 3. Рисуем иконку восклицательного знака */
.multiform-wrap.default-theme .errormsg::before {
    content: "!";             /* Символ внутри */
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 20px !important;    /* Размер кружка */
    height: 20px !important;
    background-color: transparent !important; /* Убираем заливку */
    color: #d43538 !important; /* Цвет самого знака "!" делаем красным */
    border: 1px solid #d43538 !important; /* Добавляем красную обводку */
    font-size: 13px !important;
    font-weight: bold !important;
    font-style:normal !important;
    font-family: 'Manrope', sans-serif;
    border-radius: 50% !important;
}

/* 4. Чтобы текст не налезал на иконку при наборе */
.multiform-wrap.default-theme .multiform-gap-field input[type="text"],
.multiform-wrap.default-theme .multiform-gap-field input[type="email"],
.multiform-wrap.default-theme .multiform-gap-field input[type="tel"] {
    padding-right: 40px !important;
}

.blog-post-page__content-container .blog-post-page__author-container {
    display:none;
}

.yreviews-btn {
    display: inline-block;
    border: 0;
    padding: 8px 14px;
    border-radius: 5px;
    background: #F4F4F4;
    color: #333 !important;
    text-decoration: none;
    transition: opacity .15s ease;
    text-decoration: none !important;
    font-size: 14px;
}

.yreviews__item {
    border: 1px solid #eeeeee;
    border-radius: 10px;
    padding: 16px;
    background: #fff;
    display: flex;
    flex-direction: column;
    min-height: 220px;
}

.yreviews__full {
    display: inline-block;
    margin-top: 6px;
    color: #999999 !important;
    font-size: 12px !important;
    line-height: 120%;
    cursor: pointer;
    border: 0 !important;
    text-decoration-line: underline !important;
    text-decoration-style: dashed !important;
    text-decoration-thickness: 1px;
    text-underline-offset: 2px;
}

.yreviews__meta {
    display: flex;
    flex-direction: column;
    gap: 0px; 
}

.multiform-wrap .multiform-errorfld {
    display:none;
}

.products__add-to-cart-all-button.is-loading {
    opacity: 0.6;
    pointer-events: none;
}

.order-form-decorator .wa-agreement-wrapper{font-size:14px;}

.block__footer .button_size_l{padding: 9px 30px 10px;font-size: 14px;}

.content-decorator p,.content-decorator li {line-height: 1.4;font-weight:500;}

.product-thumb__sku{font-size:13px;}

.products-bar{color:#000;}

.filter__name{font-weight:600;}

.filter_selected .filter__name{font-weight:600;}

.filter__values, .filter__search-field{font-size:13px;}

.consultant-card__value_link, .consultant-card__value_link:hover{text-decoration: none;}

.consultant-card__value_link span{color:#CB9C27;border-bottom:1px dotted #CB9C27;}

.consultant-card__row{font-size:13px;}

.consultant-card__role{font-size:12px;}

.footer, .footer .footer-block__content {font-size:13px;}

.footer-rows__row .ordercall-button{display:block;margin:5px 0;color:#fff;background-color:var(--button-color);padding:6px 10px; border-radius:5px;font-weight:400;text-align:center;}

.footer-rows__row .link-box__link{font-size:14px;color:#fff;}

.footer-phone__phone .link-box__link{font-size:18px;font-weight:600;}

.footer-copyright-row{font-size:11px;}

/* ===== Единый вид форм входа и регистрации ===============================
 * Стили в login.html заданы через .login-page, поэтому /signup/ (.signup-page)
 * и модалка входа со страницы заказа (.wa-dialog-content) их не получали.
 * Здесь привязка идёт К ПОЛЯМ, а не к контейнерам, — тогда любая форма
 * авторизации выглядит одинаково, где бы ядро её ни отрисовало.
 * Поле телефона самой формы заказа (.wa-phone) исключено: у него свой размер.
 * ========================================================================= */

.wa-field input[name="login"],
.wa-field input[name="password"],
input[name="data[phone]"]:not(.wa-phone),
input[name="data[firstname]"],
input[name="data[onetime_password]"],
input.wa-onetime-password {
    width: 100%;
    box-sizing: border-box;
    height: 58px;
    padding: 0 18px;
    font-size: 17px;
    color: #1c1c28;
    background: #f4f5f7;
    border: 1.5px solid transparent;
    border-radius: 14px;
    transition: border-color .15s, background .15s;
}

.wa-field input[name="login"]:focus,
.wa-field input[name="password"]:focus,
input[name="data[phone]"]:not(.wa-phone):focus,
input[name="data[firstname]"]:focus,
input[name="data[onetime_password]"]:focus,
input.wa-onetime-password:focus {
    background: #fff;
    border-color: #c9c9d4;
    outline: none;
}

input.wa-error { border-color: #ff4d4f !important; background: #fff6f6; }

/* Ширина поля. Тема задаёт .input-text ширину 80%, и правило выше по одному
   лишь имени поля проигрывало ей по специфичности: поле выходило 320px при
   контейнере 400px и не совпадало по правому краю с кнопками.
   Нужен класс поля вместе с классом контейнера — проверено замером на живой
   модалке: 320px → 400px. Страницу /login/ намеренно не трогаем, там свои
   рабочие стили. */
.wa-dialog-content .wa-field input.input-text,
.signup-page .wa-field input.input-text {
    width: 100%;
}

/* Подписи полей прячем — остаётся плейсхолдер, как на странице входа */
.signup-page .wa-field .wa-name,
.wa-dialog-content .wa-field .wa-name { display: none; }

.signup-page .wa-field,
.wa-dialog-content .wa-field { margin: 0 0 14px; }

/* Кнопки на всю ширину — ТОЛЬКО отдельная страница регистрации.
   В модалке кнопки лежат в футере «в край» (контейнер 480px при диалоге 400px —
   так задумано темой), там своя раскладка, см. блок порядка кнопок ниже. */
.signup-page.block input[type="submit"],
.signup-page.block .signup-page__login-button {
    width: 100%;
    min-height: 56px;
    border-radius: 14px;
    font-size: 17px;
    font-weight: 600;
    cursor: pointer;
}

/* «Запомнить меня» скрыта и в модалке — как на странице входа */
.wa-dialog-content .wa-field-remember-me { display: none !important; }

/* Согласие на обработку данных.
   ВАЖНО: флекс тут применять нельзя. Внутри <label> лежат три узла подряд —
   span.checkbox, текст «Я принимаю условия» и ссылка; флекс разложил бы их
   в колонки и разорвал фразу (проверено, так и вышло).
   Поэтому текст остаётся обычным потоком, а чекбокс выводится из него
   абсолютным позиционированием — тогда и перенос строки не подползает. */
.wa-field-terms-accepted label {
    display: block;
    position: relative;
    padding-left: 30px;
    line-height: 1.4;
}

.wa-field-terms-accepted .checkbox {
    position: absolute;
    left: 0;
    top: 1px;
}

/* Кнопки модалки входа — как на регистрации: скруглённые, той же высоты,
   главное действие золотое. Иначе модалки выглядят из разных наборов. */
.wa-dialog-content .login-modal__nav-buttons {
    padding: 16px 20px 20px;
    gap: 10px;
    background: transparent;
}

.wa-dialog-content .login-modal__nav-button,
.wa-dialog-content .login-modal__nav-button .button,
.wa-dialog-content .wa-request-onetime-password-button {
    min-height: 56px;
    border-radius: 14px;
    font-size: 17px;
    font-weight: 600;
}

.wa-dialog-content .wa-request-onetime-password-button-wrapper .button,
.wa-dialog-content .wa-request-onetime-password-button,
.wa-dialog-content .wa-login-submit {
    background: #cb9c27;
    color: #fff;
    width: 100%;
}

/* Карточка по центру — только отдельная страница регистрации.
   У страницы входа своя такая же, у модалки есть собственная рамка. */
.signup-page.block {
    max-width: 460px;
    margin: 40px auto;
    padding: 34px 30px 36px;
    background: #fff;
    border: 1px solid #ececef;
    border-radius: 18px;
    box-shadow: 0 12px 40px rgba(20, 20, 40, .08);
    box-sizing: border-box;
}

.signup-page.block .block__header {
    text-align: center;
    font-size: 26px;
    line-height: 1.2;
    margin: 0 0 18px;
}

/* Код из СМС — крупно и по центру, как на странице входа */
input[name="data[onetime_password]"],
input.wa-onetime-password {
    text-align: center;
    letter-spacing: 6px;
    font-size: 22px;
    font-weight: 600;
}

/* Сообщение о неполном номере (его рисует блок в user.js) */
.mg-phone-error { color: #c92a2a; font-size: .9em; margin-top: 6px; }

/* ===== конец блока форм входа и регистрации ============================== */

/* Порядок кнопок в модалках: главное действие — сверху.
 * Проверено на живой странице 12.08.2026.
 * Вход:        «Войти» над «Зарегистрироваться» (в разметке порядок уже верный,
 *              достаточно колонки);
 * Регистрация: контейнер .wa-buttons-wrapper это display:block, и «Вход на сайт»
 *              стоит в разметке РАНЬШЕ сабмита — поэтому делаем flex и уводим
 *              ссылку вниз через order.
 * align-items: stretch обязателен: без него кнопки в колонке схлопываются
 * до ширины содержимого (были 1px и 30px). */
.wa-dialog-content .login-modal__nav-buttons {
    flex-direction: column;
    align-items: stretch;
}

/* Зазор между полем и кнопкой — 30px, как на странице /login/ (там замерено).
   В модалке было 60px, и складывалось это из трёх слагаемых:
   14px (нижний отступ поля) + 30px (отступ сверху у блока кнопок) + 16px
   (мой padding). Хитрость в том, что 30px задано СРАЗУ ТРЁМ вложенным
   контейнерам, а их отступы схлопываются в один — обнуление любого по
   отдельности не меняло ничего, нужны все три сразу. Проверено замером:
   60 → 30px. */
.wa-dialog-content .wa-login-form-actions,
.wa-dialog-content .wa-buttons-wrapper,
.wa-dialog-content .login-modal__nav-buttons {
    margin-top: 16px;
}

.wa-dialog-content .login-modal__nav-buttons {
    padding-top: 0;
}

/* Тот же разрыв на отдельной странице /signup/: было 59px против 30px на
   странице входа. Здесь 30px сидят на .wa-buttons-wrapper и .wa-signup-form-actions
   и точно так же схлопываются — правка одного давала 45px, нужны оба.
   Замер после правки: 29px. */
.signup-page .wa-buttons-wrapper,
.signup-page .wa-signup-form-actions {
    margin-top: 0;
}

.wa-dialog-content .login-modal__nav-button {
    width: 100%;
    box-sizing: border-box;
}

.wa-dialog-content .wa-buttons-wrapper {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.wa-dialog-content .signup-modal__login-button { order: 1; }

/* Кнопки регистрации должны быть одной ширины. У ссылки «Вход на сайт» тема
   задаёт width: 380px и margin-right: 20px — она выходила уже сабмита (380 против
   400) и не совпадала с ним по правому краю. Замерено на живой модалке. */
.wa-dialog-content .wa-buttons-wrapper > .button,
.wa-dialog-content .wa-buttons-wrapper > input[type="submit"] {
    width: 100%;
    margin: 0;
    box-sizing: border-box;
}

/* Второстепенное действие — ссылкой, а не второй кнопкой.
   Две равновесные кнопки спорят за внимание; главное действие в каждой модалке
   должно быть одно: во входе — «Войти», в регистрации — «Регистрация».
   Правила идут ПОСЛЕ блоков выше и специфичнее их, чтобы перебить ширину,
   фон и скругление, заданные там же. */
.wa-dialog-content .login-modal__nav-buttons > a.login-modal__nav-button,
.wa-dialog-content .wa-buttons-wrapper > .signup-modal__login-button {
    display: block;
    width: auto;
    min-height: 0;
    margin: 4px auto 0;
    padding: 10px 4px;
    background: transparent;
    border: 0;
    box-shadow: none;
    border-radius: 0;
    color: #cb9c27;
    font-size: 15px;
    font-weight: 400;
    text-align: center;
    text-decoration: underline;
}

.wa-dialog-content .login-modal__nav-buttons > a.login-modal__nav-button:hover,
.wa-dialog-content .wa-buttons-wrapper > .signup-modal__login-button:hover {
    background: transparent;
    text-decoration: none;
}

/* Главная кнопка входа — того же цвета, что «Регистрация» в соседней модалке.
 * Тема красит кнопки не цветом, а переменными: .button → var(--button-color),
 * .button_style_light → var(--button-color-light). Поэтому переопределяем
 * переменную, а не сам фон, — это родной для темы способ, и он переживёт
 * смену палитры в настройках.
 * Замер в браузере оказался недостоверным (значение читается из кэша в том же
 * такте), так что результат нужно проверить глазами. Если фон не изменится —
 * скажите, добавлю запасной вариант с background-color и !important. */
.wa-dialog-content .login-modal__nav-buttons .wa-request-onetime-password-button,
.wa-dialog-content .login-modal__nav-buttons .wa-login-submit {
    --button-color-light: var(--button-color, #cb9c27);
    color: #fff;
}

/* Главная кнопка регистрации — того же размера, что «Войти» (56px).
   Осторожно с замерами: 41px, которые я снял сначала, были высотой кнопки ДО
   того, как правила выше доехали на сервер. Эталон берём с уже применённым
   оформлением, иначе подгоняем под вчерашнее состояние.
   Минимальная высота, а не фиксированная: при переносе текста на две строки
   кнопка вырастет, а не обрежет содержимое. */
.wa-dialog-content .wa-buttons-wrapper > input[type="submit"],
.wa-dialog-content .wa-buttons-wrapper > button[type="submit"] {
    min-height: 56px;
    border-radius: 14px;
    font-size: 17px;
    font-weight: 600;
}

/* Заголовок модалок — как на странице /login/.
   Замер эталона: Forum 26px, начертание 100, по центру. В диалоге ядро даёт
   Manrope 22px по левому краю, отсюда ощущение двух разных интерфейсов. */
.wa-dialog-header .wa-header,
.wa-dialog-header .title {
    font-family: 'Forum', serif;
    font-size: 26px;
    font-weight: 100;
    text-align: center;
}

/* Подзаголовок под шапкой диалога (текст подставляет user.js).
   Повторяет подзаголовок страницы входа: Manrope 14px, серый, по центру. */
.myorders-modal-subtitle {
    margin: 0 0 20px;
    font-family: 'Manrope', sans-serif;
    font-size: 14px;
    font-weight: 500;
    color: #8a8a99;
    text-align: center;
}

/* ======================================================================
   megashop.app.shop.css
   Перенесено из вендорского файла при обновлении на Megashop 3.0 1.4.11.
   Это правила, которых в теме вендора нет вообще — только ваши дополнения.
   ====================================================================== */
.brands-wrap-filters {
  padding:20px;
  border:#EEEEEE 1px solid;
  border-radius:10px;
  margin-bottom: 20px;
}

.brands-search__input {
  width: 100%;
  box-sizing: border-box;
  padding:9px 20px;
  border-radius: 10px;
  border: 0;
  background-color: #F4F4F4;
  font-size: 14px;
  line-height: 1;
  color: #999999;
  transition: border-color 0.15s ease, box-shadow 0.15s ease,
  background-color 0.15s ease;
}

.brands-search__input::placeholder {
  color: #9b9b9b;
}

.brands-search__input:focus {
  outline: none;
  border-color: #ffcc3d;
  background-color: #ffffff;
  box-shadow: 0 0 0 3px rgba(255, 204, 61, 0.25);
}

.brands-letters {
  margin: 0;
  padding-bottom:15px;
  border-bottom:#EEEEEE 1px solid;
  display: flex;
  align-items: flex-start;
  position: relative;
}

.brands-letters__title {
  flex: 0 0 auto;
  width: 100px;
  font-size: 14px;
  line-height: 120%;
  color: #333333;
}

/* Список букв */
.brands-letters__list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  padding: 0;
  margin: 0;
  list-style: none;
}

/* Каждая буква */
.brands-search .brands-letters__item {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin:0;
  height: 30px;
  min-width: 30px;
  padding: 0 10px;
  border: #EEEEEE 1px solid;
  border-radius: 5px;
  color: #999999;

  font-size: 15px;
  line-height: 1;
  cursor: pointer;

  transition: background-color 0.18s ease, color 0.18s ease, box-shadow 0.18s ease;
}

.brands-letters__item:hover {
  border-color: #CB9C27;
  color: #CB9C27;
}

.brands-letters__item_active {
  border-color: #CB9C27;
  color: #CB9C27;
}

.brands-filter {
  display: flex;
  align-items: flex-start;
  padding: 15px 0px 0;
}

.brands-filter__label {
  flex: 0 0 auto;
  width: 100px;
  font-size: 14px;
  line-height: 120%;
  color: #333333;
}

.brands-filter__items {
  flex: 1;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.brands-filter__item {
  border: none;
  padding: 5px 7px;
  border-radius: 5px;
  background-color: #F4F4F4;
  font-size: 11px;
  line-height: 100%;
text-decoration: none;
  color: #999999;
  cursor: pointer;
  transition: background-color 0.15s ease, color 0.15s ease,
  box-shadow 0.15s ease, transform 0.05s ease;
}

.brands-filter__item:hover {
  background-color: #ededed;
}

.brands-filter__item--active {
  background-color: #1f1f1f;
  color: #ffffff;
  box-shadow: 0 6px 14px rgba(15, 23, 42, 0.2);
}

.brand-thumb__image-box img {
  filter: grayscale(100%);
  transition: filter 0.35s ease;
width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;   /* ключевое */
  object-position: center;
  display: block;

}

.brand-thumb:hover .brand-thumb__image-box img {
  filter: grayscale(0%);
}

.brand-card__country {
  display: block;
  font-size: 11px;
  line-height: 120%;
  color: #333;
  margin-bottom: 10px;
}

.brand-card__description {
  display: block;
  margin: 0 0 15px;
  font-size: 11px;
  line-height: 120%;
  color: #333;
}

.brand-card__tags {
  margin-top: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
}

.brand-card__tag {
  display: inline-flex;
  align-items: center;
  padding: 5px 12px;
  border-radius: 5px;
  background-color: #F4F4F4;
  font-size: 11px;
  line-height: 100%;
  color: #999999;
}

.blocks__item-brands .brand-thumb {
  border:0;
  padding:0;
}

.blocks__item-brands .brand-thumb .brand-card__country,
.blocks__item-brands .brand-thumb .brand-card__description,
.blocks__item-brands .brand-thumb .brand-card__tags,
.blocks__item-brands .brand-thumb .brand-thumb__name-container {
  display:none;
}

.header.header_transparent {
  background: transparent !important;
  position: absolute; /* Если нужно, чтобы шапка накладывалась на контент */
  width: 100%;
  z-index: 100;
}

.blocks__item-brands .slider-block__header-container,
.blocks__item-categories .slider-block__header-container {
  display: flex;
  justify-content: space-between;
  align-items: flex-start; /* чтобы стрелки были ниже, а не по центру */
  gap: 5px;
}

.blocks__item-brands .block__header {
  margin: 0 0 20px;
}

.blocks__item-products .block__header {
  margin: 0 0 35px;
}

.blocks__item-categories .block__header_text {
  max-width: 80%; 
}

.blocks__item-categories .slider-block__subtitle {
  margin-bottom:15px;
}

.blocks__item-news .slider-block__header-text-container {
  margin-top:0px;
}

/* Шапка только на главной */
.index__header-header-on {
  position: absolute;
  width: 100%;
  z-index: 999999 ;

  /* фоновое изображение */
  /*background-image: url("img/mainheader-bg1.jpg");*/
  /*background-size: cover;*/
  /*background-position: center center;*/
  /*background-repeat: no-repeat;*/
  /*height: 100vh;*/
  /* растянуть шапку на высоту экрана */
  /* текст в шапке — белый */
}

/* полупрозрачный чёрный слой поверх картинки (как Fill 000000 / 50%) */
.index__header-header-on::before {
  content: "";
  position: absolute;
  inset: 0;                         /* top:0; right:0; bottom:0; left:0 */
  pointer-events: none;             /* клики проходят сквозь слой */
}

.index__header-header-on .header_with-border {
  border:0;
}

.index__header-header-on .header-middle-bar,
.index__header-header-on .header-bottom-bar_transparent{
  background: transparent
}

.index__header-header-on .header-bottom-bar-links_alt .header-bottom-bar-links__link {
  color: #fff;
  font-weight: 500;
}

.index__header-header-on .header-bottom-bar-links__link:hover, .index__header-header-on .header-bottom-bar-links__link.button_active,
.index__header-header-on .header-middle-bar .link-box:hover,
.index__header-header-on .header-middle-bar .link-box:hover .link-box__link_black{
  color: rgb(216,169,49)
}

.index__header-header-on .header-middle-bar .link-box,
.index__header-header-on .header-middle-bar .link-box .link-box__link_black {
  color: #fff
}

.index__header-header-on .header-bottom-bar-links__link .icon-box__content {
  border-bottom: 1px solid #fff;
}

.page_searchpro .index__header-header-on .searchpro__field-container {
  display: flex;
  align-items: center;
  justify-content: stretch;
  color:#fff;
  background: rgba(182, 184, 186, 0.3);   /* полупрозрачный тёмный фон */
  backdrop-filter: blur(12px);       /* размытие заднего фона */
  -webkit-backdrop-filter: blur(12px);

  border: 0; /* лёгкая светлая линия */
  transition: 0.3s ease;
}

.page_searchpro .index__header-header-on .searchpro__field-input {
  color: #fff;
}

/* ---------- @media (max-width: 1199px) — 18 правил(а) ---------- */
@media (max-width: 1199px) {
  .c-product-thumb__main a.c-product-thumb__name{font-size:18px;font-weight:bold;margin-bottom:10px;}

  .c-order-page::before {margin-bottom:0;}

  .c-order-page__container{
  flex-flow: column nowrap;
  margin-left:0;
  }

  .c-order-page__container::before {
  content: '';
  display: table;
  margin-bottom: -60px;
  }

  .l-container {
  padding-left: 15px;
  padding-right: 15px;
  max-width: 100vw;
  }

  .c-order-page__cart-container, .c-order-page__form-container, .c-order-page__not-found-container {
  margin-left: 0;
  margin-top: 60px;
  width: auto;
  }

  .manager, .quote{margin-top:25px;}

  .c-product-cart-form__r-additional-buttons{top: 10px; right: 10px; background: #fff; width: 31px; height: 31px; border-radius: 30px; text-align: center;}

  .c-product-cart-form__r-additional-buttons .l-image-box{line-height: inherit;}

  .c-product-cart-form__responsive-sub-header{margin-bottom:10px;}

  .specification{margin-bottom:0px;}

  .c-product-page__footer-social {display: block;}

  .brand-catalogs-container{margin:25px -15px 25px -15px;border-radius:0px;padding:15px;}

  .brand-catalogs-container h2{font-size:18px;}

  .brand100sale{font-size:16px;line-height:1.2;}

  .r-header-menu__dropdown-header{background:#fafafa;}

  .product-wallpaper-mobile1, .product-wallpaper2, .product-video{display:block; margin:0px -15px 20px -15px;}

  .product-wallpaper-mobile1 img, .product-wallpaper2 img, .product-video video{width:100%;}

}

/* ---------- @media (max-width: 560px) — 6 правил(а) ---------- */
@media (max-width: 560px) {
  .c-product-thumb__main a.c-product-thumb__name{font-size:16px;font-weight:bold;margin-bottom:10px;}

  .c-product-thumb__main .price100sale{line-height: 13px;}

  .mobile_disable{display:none;}

  .c-product-thumb_mobile .c-product-thumb__badges {
    top: -5px;
    left: -5px;
  }

  .c-products-thumbs__item {
      width: 48%;
  }

  .product-thumb__main {
  padding: 4px 10px 6px;
  }

}

/* ---------- @media (max-width: 970px) — 1 правил(а) ---------- */
@media (max-width: 970px) {
  .categories-compact__list_inner {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 10px;
  }

}

/* ---------- @media (min-width: 1200px) — 4 правил(а) ---------- */
@media (min-width: 1200px) {
  .c-products-thumbs__item{}

  .c-product-images__image{height:490px;}

  .c-product-features__group-features{display:inline-block;width:70%;padding-right:25px;}

  .c-product-features-right{width:30%; display:inline-block;vertical-align: top;}

}

/* ---------- @media (min-width: 800px) — 1 правил(а) ---------- */
@media (min-width: 800px) {
  .contact-photo{float: right;margin: 0px 0px 1.5em 1.5em;display:block;}

}

/* ---------- @media (max-width: 800px) — 12 правил(а) ---------- */
@media (max-width: 800px) {
  .anons_style a, .anons_type a{}

  /* === ABOUT GALLERY: сетка как на скрине (<= 800px) === */
  /* убираем влияние двух "рядов" (top/bottom), чтобы не было пустоты справа */
  .about-gallery__row {
    display: contents !important;
  }

  /* собираем ВСЕ 5 карточек в одну grid-сетку */
  .about-gallery__view{
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    gap: 14px; /* подгони при желании */
  }

  /* базово: все карточки по 1 колонке */
  .about-gallery__item{
    width: 100%;
  }

  /* 1-я картинка (первая big) — на всю ширину */
  .about-gallery__row--top .about-gallery__item--big:first-child{
    grid-column: 1 / -1;
  }

  /* 2-я big становится "малой" (правая сверху в блоке из 4) */
  .about-gallery__row--top .about-gallery__item--big:last-child{
    grid-column: auto;
  }

  /* чтобы пропорции были аккуратные, как на моб.скрине */
  .about-gallery__row--top .about-gallery__item--big:first-child{
    aspect-ratio: 4 / 3; /* большая сверху */
    overflow: hidden;
    border-radius: 10px;
  }

  .about-gallery__row--top .about-gallery__item--big:last-child,
  .about-gallery__row--bottom .about-gallery__item--small{
    aspect-ratio: 4 / 3; /* 4 маленьких */
    overflow: hidden;
    border-radius: 10px;
  }

  .about-gallery__img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

  /* ABOUT BENEFITS: 800px -> 3 в ряд */
  .about-benefits__grid-top {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 20px !important;
  }

  .about-benefits__grid-top .about-benefits__item {
    min-height: unset !important;
    aspect-ratio: 3 / 4 !important;  /* чуть “выше”, чтобы текст лучше читался */
    padding: 20px !important;
    border-radius: 12px !important;
  }

  .about-benefits__grid-top .about-benefits__card-title {
    font-size: 20px !important;
    line-height: 115% !important;
  }

}

/* ---------- @media (min-width: 1024px) — 25 правил(а) ---------- */
@media (min-width: 1024px) {
  .product-cart-form__sub-block_summary{margin-bottom:25px;}

  .product-wallpaper-screen1{position:relative;display:block; margin:-15px 0px 20px 0px;}

  .product-wallpaper-screen1 img, .product-wallpaper2 img, .product-video video{border-radius:5px; width:100%;}

  .product-wallpaper-name{position: absolute; text-align: center; width: 100%; top: 25px;}

  .product-wallpaper-name span{width:500px; display: inline-block; font-size: 30px; text-transform: uppercase; font-weight: bold; color: #fff; opacity: 0.5; line-height: 1; letter-spacing: 1px; text-shadow: 0px 0px 20px #000;}

  .slide__text.container {
      padding-bottom: 130px !important; /* Отступ от нижнего края, чтобы текст не лежал на точках */
      position: absolute;
      z-index: 99;
      left:75px;
      bottom:0;
      pointer-events: none; /* Чтобы контейнер не перекрывал клики, если он на весь экран */
  }

  .product-cart-form_alt .product-cart-form__columns-additional{
      top:80px;
  }

  .product-cart-form_alt .product-cart-form__container-info {
  width: 68%;
  max-width: 68%;
  }

  .slide__text.container {
      padding-top: 48px;
      padding-bottom: 48px;
  }

  .categories-compact__list {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .product-cart-form__container-image{min-width:0}

  .product-images{max-width:100%}

  .product-images.product-cart-form_header-floating{position:static;top:auto!important}

  .product-images__images-container{position:relative}

  .product-images__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:0;align-items:start}

  /* overflow:hidden обрезал высокие фото; visible даёт показать кадр целиком при скролле страницы */
  .product-images__grid-item{
  position:relative;
  display:block;
  border-radius:12px;
  overflow:visible;
  width:100%;
  background:#f0f0f2;
  }

  .product-images__grid-item .image-box{width:100%;height:auto;display:block}

  .product-images__grid-item img{width:100%;height:auto;max-width:100%;display:block;border-radius:12px}

  .product-images__grid-item_0{grid-column:1/-1;/*aspect-ratio:16/9*/}

  .product-images__grid-item_1{/*aspect-ratio:16/10*/}

  .product-images__grid-item_2{/*aspect-ratio:16/10*/}

  .product-images__grid-item_3{grid-column:1/-1;/*aspect-ratio:16/9*/}

  .product-images__grid-more{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  background:#fff;border-radius:10px;padding:10px 14px;
  font-size:14px;line-height:1;box-shadow:0 8px 24px rgba(0,0,0,.12);
  white-space:nowrap;
  color: #333333
  }

  .product-images.product-images_thumbs-position_bottom .product-images__thumbs-container{display:none}

  .product-images__images{
  inset:0;
  opacity:0;
  pointer-events:none;
  display: none
  }

}

/* ---------- @media (max-width: 980px) — 4 правил(а) ---------- */
@media (max-width: 980px) {
  /* Адаптив: на узких экранах — в колонку */
  .block .brand-hero{
    flex-direction: column;
  }

  .block .brand-hero__side{
    flex: 0 0 auto;
    max-width: none;
    width: 100%;
    min-width: 0;
  }

  .block .brand-hero__img,
  .block .brand-hero__bg{
    min-height: 220px;
  }

  .blog-post-page__content-container .blog-post-page__layout, .blog-stream-page .block__content{display:block;gap:initial;}

}

/* ---------- @media (max-width: 767px) — 8 правил(а) ---------- */
@media (max-width: 767px) {
  .brand-catalogs {
      grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .block .brand__desc {
      padding-right: 5%;
  }

  .category-banner-side{margin-bottom:10px;}

  .content__content .block__header.block__header_text{margin-bottom:15px;}

  .category-banner-side .products-thumbs__item{
      min-height:auto;
      max-height:auto;
  }

  .about-benefits__grid-top {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  .about-benefits__grid-top .about-benefits__item {
    min-height: unset !important;     /* убираем фикс 360px */
    aspect-ratio: 1 / 1 !important;   /* делаем карточки квадратнее */
    padding: 10px !important;
    border-radius: 12px !important;
  }

  .about-benefits__grid-top .about-benefits__card-title {
    font-size: 18px !important;
    line-height: 110% !important;
  }

}

/* ---------- @media (max-width: 490px) — 3 правил(а) ---------- */
@media (max-width: 490px) {
  .brand-catalogs {
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap:10px
  }

  .block .brand__desc {
      padding-right: 0;
  }

  .block__header_text,
  .blocks__item-brands .slider-block__header-text-container,
  .blocks__item-news .slider-block__header-text-container,
  .blocks__item-advant .block_secondary .block__header_text,
  .slider-block__header-text-container,
  .title_h1,
  .reviews-section__title,
  .blocks__item-technical .block_secondary .block__header_text,
  .content-decorator h2,
  .contacts-page-title {
  font-size: 28px !important;
  line-height: 1 !important;
  }

}

/* ---------- @media (max-width: 680px) — 2 правил(а) ---------- */
@media (max-width: 680px) {
  .index-hero__title {font-size: 28px;}

  .index-hero__subtitle{line-height: 1.35;}

}

/* ---------- @media (max-width: 695px) — 3 правил(а) ---------- */
@media (max-width: 695px) {
  .brand-catalog-item, .review-catalog-item, .img-item{width:100%;}

  .brand-catalog-item .brand-catalog-name{width:85%;}

  .logo-item {padding:20px;}

}

/* ---------- @media (max-width: 670px) — 9 правил(а) ---------- */
@media (max-width: 670px) {
  .blog-autor__buttons {
      display: flex;
      flex-wrap: nowrap;
      gap: 12px;
  }

  .blog-autor__btn {
      flex: 1 1 0;
      min-width: 0;
      justify-content: center;
  }

  .blog-autor__btn .icon-box {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      width: 100%;
  }

  .blog-autor__btn .icon-box__content {
      display: flex;
      align-items: center;
  }

  .blog-autor__btn-text--full {
      display: none;
  }

  .blog-autor__btn-text--short {
      display: inline;
  }

  .blog-autor__photo {
      flex: 0 0 90px;
      text-align: left;
  }

  .blog-autor__photo-img {
      width: 80px;
      height: 80px;
      border-radius: 50%;
      overflow: hidden;
      margin-bottom: 8px;
  }

  .r-header__list-item_logo .r-header-logo__image {
  display:none;
  }

}

/* ---------- @media (max-width: 515px) — 2 правил(а) ---------- */
@media (max-width: 515px) {
  .blog-autor__inner {
      display: block;
  }

  .product-thumb_mobile .product-thumb__price {
  font-size: 14px;
  white-space: nowrap
  }

}

/* ---------- @media (max-width: 640px) — 2 правил(а) ---------- */
@media (max-width: 640px) {
  .personal .multiform-gap-option label span {
      font-size:11px;
  }

  /* Адаптив для мобилок */
  .play-button-center { width: 60px; height: 60px; }

}

/* ---------- @media (max-width: 847px) — 22 правил(а) ---------- */
@media (max-width: 847px) {
  .home-block .multiform-wrap.discussproject .multiform-gap-fields{
    grid-template-columns: 1fr;
  }

  .multiform-wrap.discussproject #multiformField18_2-1 button{
    width: 100% !important;
  }

  .about-today__form-desc{
    flex-wrap: wrap;
  }

  .blocks__item-brands .block__header {
      margin-bottom:0;
  }

  .blocks__item-brands .about-today {
      margin: 0px 0 10px;
  }

  .about-today__grid{
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-areas:
      "header header"
      "stats  stats"
      "more   more"
      "form   video";
    column-gap: 24px;
    row-gap: 24px;
    align-items: start;
  }

  /* content превращаем в “прозрачный контейнер”, чтобы его дети стали grid-item’ами */
  .about-today__content{
    display: contents;
  }

  /* назначаем зоны */
  .about-today__content .block__header{ grid-area: header; }

  .about-today__content .about-today__stats{ grid-area: stats; }

  .about-today__content .about-today__more{ grid-area: more; }

  .about-today__content .about-today__form{ grid-area: form; }

  .about-today__video{ grid-area: video; }

  /* под 1024 чуть компактнее */
  .about-today__stats{
    margin: 24px 0 24px;
  }

  .about-today__number{
    font-size: 50px;
  }

  .about-today__form-desc a {
      margin-top:5px
  }

  .about-today__form {
     padding:30px; 
  }

  .about-today__form-desc {
      margin-top:30px
  }

  /* картинка справа — нормальная высота, без “вытягивания” */
  .about-today__video{
    height: auto;
    align-self: start;
  }

  .about-today__video .about-today-img{
    width: 100%;
    height: auto;
    object-fit: cover;
    display: block;
  }

  /* важно: чтобы выступ не обрезался */
  .about-today__grid {
    overflow: visible;
  }

  /* поднимаем правую колонку с картинкой */
  .about-today__video {
    position: relative;
    overflow: visible;
  }

  /* сам сдвиг вверх (подбери значение) */
  .about-today-img {
    display: block;
    transform: translateY(-100px); 
  }

}

/* ---------- @media (max-width: 1012px) — 1 правил(а) ---------- */
@media (max-width: 1012px) {
  .projects-main-title {
     top: 460px; 
     left:45px;
  }

}

/* ---------- @media (max-width: 750px) — 2 правил(а) ---------- */
@media (max-width: 750px) {
  .projects-main-title {
     top: 260px; 
     left:45px;
  }

  .projects-view-all {
      bottom: 70px;
      right: 55px;
  }

}

/* ---------- @media (max-width: 637px) — 2 правил(а) ---------- */
@media (max-width: 637px) {
  .projects-main-title {
     top: 210px; 
     left:45px;
     margin-right:40px;
     line-height:1;
  }

  .projects-view-all {
      bottom: 70px;
      right: 55px;
  }

}

/* ---------- @media (max-width: 500px) — 4 правил(а) ---------- */
@media (max-width: 500px) {
  .projects-main-title {
     top: 240px; 
     left:25px;
     margin-right:30px;
     font-size: 28px !important;
          line-height: 1 !important;
  }

  .slide__text.container {
      bottom: 70px;
      left: 25px;
  }

  .projects-view-all {
      bottom: 70px;
      right: 55px;
  }

  /* 500px: остаётся 2 колонки, но всё компактнее — как на скрине №3 */
  .pay-delivery__card {
      padding: 15px 15px;
  }

}

/* ---------- @media (max-width: 600px) — 14 правил(а) ---------- */
@media (max-width: 600px) {
  /* <= 640px */
  .blocks__item-brands .about-today__grid {
    grid-template-columns: 1fr;
    grid-template-areas:
      "header"
      "stats"
      "more"
      "video"
      "form";
    row-gap: 18px;
  }

  .blocks__item-brands .about-today {
      margin: 0px 0 80px;
  }

  /* цифры остаются в 3 колонки, но компактнее */
  .about-today__stats{
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px 18px;
    margin: 18px 0 10px;
  }

  .about-today__number{
    font-size: 32px;
    padding-bottom: 3px;
  }

  .about-today__label{
    font-size: 12px;
  }

  .about-today__more {
    margin-bottom:10px
  }

  /* картинка — полная ширина */
  .about-today__video{
    border-radius: 10px;
    overflow: hidden;
  }

  .about-today__video .about-today-img{
    width: 100%;
    height: auto;
    object-fit: cover;
    display: block;
    transform:none;
  }

  /* форма — вниз, на всю ширину */
  .about-today__form{
    width: 100%;
    padding: 22px 20px;
  }

  /* поля формы в колонку (чтобы не ломались на узком) */
  .multiform-wrap.discussproject .multiform-gap-fields{
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  .multiform-wrap.discussproject #multiformField18_2-1 button{
    width: 100% !important;
  }

  .about-today__form-desc{
    flex-wrap: wrap;
    gap: 6px;
    margin-top:20px;
  }

  .about-today__form-desc a {
  margin-top: 0;
  }

  .about-today__form-desc a svg {
      margin-right: 5px;
  }

}

/* ---------- @media (max-width: 1023px) — 47 правил(а) ---------- */
@media (max-width: 1023px) {
  /* ================================
     about-priority: адаптив 1024 / 640
     Вставь В САМЫЙ НИЗ user.css
  ================================ */
    /* 1024px: 2 колонки, 3-я карточка внизу на всю ширину */
    .about-priority .about-steps__grid{
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
      gap: 20px !important;
    }

  /* третью карточку растягиваем на 2 колонки */
  .about-priority .about-steps__item:last-child{
    grid-column: 1 / -1;
  }

  /* чуть компактнее, как в макете */
  .about-priority .about-steps__item{
    padding: 30px 34px 30px !important;
  }

  /* ===== CEO QUOTE: адаптив под 1024px (как на скрине №2) ===== */
  .ceo-quote__inner{
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
    padding: 70px 44px 34px;
  }

  /* контент растягиваем, убираем правый внутренний отступ */
  .ceo-quote__content{
    width: 100%;
    flex: 1 1 auto;
    padding-right: 0;
    padding-bottom: 0;
  }

  /* Кавычки переезжают (чтобы было как на скрине) */
  .ceo-quote__inner::before,
  .ceo-quote__inner::after{
    font-size: 120px;
  }

  .ceo-quote__inner::before{
    left: 35px;
    top: 27px;
  }

  .ceo-quote__inner::after{
    right: 26px;
    bottom: 48px;
  }

  /* Фото-блок превращаем в маленький, фиксируем снизу справа */
  .ceo-quote__photo{
    position: absolute;
    right: 34px;
    bottom: 28px;

    /* раскладка: имя/должность слева, аватар справа */
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;

    /* ограничение, чтобы подпись не ломала весь блок */
    max-width: 240px;

    /* на десктопе у тебя text-align:left — тут удобнее вправо */
    text-align: right;
    margin: 0;
  }

  .ceo-quote__photo-img{
    width: 56px;
    height: 56px;
    margin: 0;

    flex: 0 0 56px;
    order: 2;
  }

  /* Имя/должность делаем колонкой слева от аватара */
  .ceo-quote__name,
  .ceo-quote__position{
    flex: 1 1 auto;
    width: calc(100% - 68px); /* 56px аватар + небольшой зазор */
    order: 1;
  }

  .ceo-quote__name{
    margin: 0 12px 2px 0;
  }

  .ceo-quote__position{
    margin: 0 12px 0 0;
  }

  /* Кнопки — слева, без “растягивания” и с нормальным переносом */
  .ceo-quote__buttons{
    width: 100%;
    justify-content: flex-start;
  }

  /* === CEO QUOTE: автор в одну строку с кнопками (<=1024) === */
  /* делаем "полосу" с кнопками чуть шире и с местом справа под автора */
  .ceo-quote__buttons {
    position: relative;
    padding-right: 220px; /* место под имя+фото справа */
    align-items: center;
  }

  /* переносим левый блок автора (который был большой) в правый низ и делаем его компактным */
  .ceo-quote__photo {
    position: absolute;
    right: 40px;
    bottom: 44px; /* подгон: чтобы было на одной линии с кнопками */
    display: flex !important;
    flex-direction: row !important;
    align-items: center;
    gap: 14px;

    /* фото справа, текст слева (как на скрине) */
    flex-direction: row !important;

    /* сбрасываем старые размеры/поведение */
    flex: 0 0 auto;
    width: auto;
    white-space: nowrap;
    margin: 0;
  }

  /* === CEO QUOTE: автор (имя+должность) слева, аватар справа, без переносов (<=1024) === */
  /* делаем ряд: кнопки слева, автор справа (как на скрине №2) */
  .ceo-quote__buttons{
    position: relative;
    align-items: center;
  }

  /* блок автора ставим В ОДНУ ЛИНИЮ и запрещаем перенос */
  .ceo-quote__photo{
    position: absolute;
    right: 34px;
    bottom: 25px;                 /* <-- ключ: на линии кнопок */
    display: flex !important;
    flex-wrap: nowrap !important;  /* <-- запрет переноса */
    align-items: center;
    gap: 12px;
    width: auto !important;
    max-width: none !important;
    text-align: right;
    margin: 0;
  }

  /* аватар справа */
  .ceo-quote__photo-img{
    width: 56px;
    height: 56px;
    margin: 0 !important;
    flex: 0 0 56px;
  }

  /* имя + должность НЕ растягиваем на 100% и НЕ считаем calc(...) */
  .ceo-quote__name,
  .ceo-quote__position{
    width: auto !important;
    flex: 0 0 auto !important;
    white-space: nowrap;       /* чтобы строки не ломались */
    margin: 0;
  }

  /* чуть аккуратнее вертикальный ритм между строками */
  .ceo-quote__name{ margin-bottom: 2px; }

  /* чтобы имя/должность были "столбиком" слева от аватара */
  .ceo-quote__name,
  .ceo-quote__position{
    display: block;
    text-align: right;
  }

  /* === CEO QUOTE: автор справа от кнопок (<=1024px) === */
  /* Кнопки + автор в одной строке */
  .ceo-quote__buttons {
    position: relative;
    display: flex;
    align-items: center;
    gap: 14px;
    padding-right: 200px; /* место под автора */
  }

  /* ТЕКСТ АВТОРА — КОЛОНКОЙ */
  .ceo-quote__name,
  .ceo-quote__position {
    display: block;
    line-height: 1.2;
  }

  .ceo-quote__name {
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 2px;
  }

  .ceo-quote__position {
    font-size: 11px;
    color: #666;
  }

  /* Обёртка текста (ВАЖНО: создаём виртуальную колонку) */
  .ceo-quote__photo > .ceo-quote__name,
  .ceo-quote__photo > .ceo-quote__position {
    order: 1;
  }

  /* Аватар */
  .ceo-quote__photo-img {
    width: 56px;
    height: 56px;
    margin: 0;
    flex-shrink: 0;
    order: 2;
  }

  /* --------------------------------------------------- */
  /* АДАПТИВНОСТЬ */
  /* Скриншот 2: От 800px до 1024px (Баннер складывается горизонтально) */
  .banner-horizontal-wrapper {
      flex-direction: column; /* Коллаж сверху, текст снизу */
      min-height: auto;
  }

  .banner-info-side {
      padding: 40px 40px 55px;
      /* Смещаем фоновые часы, чтобы не мешали тексту при сужении */
      background-position: center bottom;
      background-size: 290px auto; 
  }

  .banner-info-content {
      max-width: 100%;
  }

  /* =========================
     ABOUT TODAY (o-magazine)
     Скрин #2: title+stats+form+video — все на 100% ширины
     Вставь в конец user.css
  ========================= */
    /* 1) Пересобираем сетку секции */
    .about-today.about-today-o-magazine .about-today__grid{
      display: grid;
      grid-template-columns: 1fr 1fr; /* "две колонки", но элементы тянем на обе */
      grid-template-areas:
        "header header"
        "stats  stats"
        "form   form"
        "video  video";
      column-gap: 24px;
      row-gap: 24px;
      align-items: start;
    }

  .about-today__form-inner {
      width:100%;
  }

  /* 2) Делаем так, чтобы дети .about-today__content стали grid-item’ами */
  .about-today.about-today-o-magazine .about-today__content{
    display: contents;
  }

  /* 3) Назначаем области */
  .about-today.about-today-o-magazine .about-section__title{ grid-area: header; }

  .about-today.about-today-o-magazine .about-today__stats{ grid-area: stats; }

  .about-today.about-today-o-magazine .about-today__form{ grid-area: form; }

  .about-today.about-today-o-magazine .about-today__video{ grid-area: video; }

  /* 4) Чтобы форма/заголовок реально занимали всю ширину */
  .about-today.about-today-o-magazine .about-section__title,
  .about-today.about-today-o-magazine .about-today__form,
  .about-today.about-today-o-magazine .about-today__video{
    width: 100%;
  }

  /* 5) Видео — аккуратная адаптивная высота */
  .about-today.about-today-o-magazine .about-today__video{
    height: auto;
  }

  .about-today.about-today-o-magazine .about-today__video iframe{
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16 / 9;
    display: block;
    border: 0;
  }

  .blocks__item-categories .categories-compact__list {
  grid-template-columns: repeat(4, minmax(0, 1fr));    
  }

  .index-hero {
  padding: 120px 0 50px;
  min-height: auto;
  }

  .index-hero .container {
  padding-left: 24px;
  padding-right: 24px;
  }

  .banner-inner-wrap {
      padding:23px 23px
  }

  .r-header{box-shadow: 0 0 15px rgba(0, 0, 0, 0.07);}

  .block__header_text {
    font-size: 28px !important;
  }

}

/* ---------- @media (max-width: 640px) — 35 правил(а) ---------- */
@media (max-width: 640px) {
  /* 640px: 1 колонка + “горизонтальная” карточка (иконка слева, текст справа) */
  .about-priority .about-steps__grid{
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  .about-priority .about-steps__item{
    padding: 18px 20px !important;
  }

  /* Внутренний контейнер карточки (он у тебя: .about-steps__item ) делаем строкой */
  .about-priority .about-steps__item .about-steps__item-wrap {
  display: grid;
  grid-template-columns: 56px 1fr;
  column-gap: 18px;
  row-gap: 1px;
  align-items: start;
  }

  /* иконка слева, на 2 строки */
  .about-priority .about-steps__icon{
    margin: 0 !important;
    grid-column: 1;
    grid-row: 1 / span 2;
    align-self: start;
    width: 52px
  }

  .about-priority .about-steps__icon-img{
    width: 52px !important;
    height: 52px !important;
    display: block;
    object-fit: contain;
  }

  /* заголовок сверху справа */
  .about-priority .about-steps__title{
    grid-column: 2;
    grid-row: 1;
    margin: 0 0 2px !important;
    font-size: 18px !important;
    line-height: 110% !important;
    padding-top:5px;
  }

  /* описание под заголовком справа */
  .about-priority .about-steps__subtitle{
    grid-column: 2;
    grid-row: 2;
    margin: 0 !important;
    font-size: 13px !important;
    line-height: 120% !important;
  }

  /* SUPPLY CARDS — адаптив 640px */
  /* сетка: одна карточка в строке */
  .supply-cards__inner {
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
  }

  /* карточка — обычная вертикаль */
  .supply-card {
    display: block;
  }

  /* картинка — нормальной высоты, без перекосов */
  .supply-card__image {
    height: 200px;          /* можно 180–220, под визуал */
    overflow: hidden;
    border-radius: 12px 12px 0 0;
  }

  .supply-card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
  }

  /* текстовый блок */
  .supply-card__content {
    padding: 14px 16px 18px;
  }

  .supply-card__title {
    font-size: 18px;
    line-height: 1.2;
    margin-bottom: 6px;
  }

  .supply-card__text {
    font-size: 13px;
    line-height: 1.4;
  }

  .contacts-page__info {
      display:grid;
      gap: 20px;
  }

  .contacts-page__cta {
      font-size: 16px;
  }

  /* === Форма "Остались вопросы?" — 640px: имя и телефон в 1 колонку === */
  /* вместо 2 колонок делаем 1 */
  .form-placeholder .multiform-gap-fields {
    grid-template-columns: 1fr !important;
    grid-template-areas:
      "question"
      "name"
      "phone"
      "consent" !important;
    grid-column-gap: 0 !important;
  }

  /* страховка: поля "Ваше имя" и "Ваш номер телефона" на всю ширину */
  .multiform-wrap.questions #multiformField8_4-1,
  .multiform-wrap.questions #multiformField9_4-1{
    width: 100% !important;
  }

  .multiform-wrap.questions #multiformField8_4-1 .multiform-gap-value,
  .multiform-wrap.questions #multiformField9_4-1 .multiform-gap-value,
  .multiform-wrap.questions #multiformField8_4-1 input,
  .multiform-wrap.questions #multiformField9_4-1 input{
    width: 100% !important;
  }

  /* ===== CEO QUOTE: 640px (как на твоём скрине) ===== */
  /* Вставь НИЖЕ всех предыдущих стилей ceo-quote */
  .ceo-quote__inner{
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
    padding: 60px 20px 96px;      /* запас снизу под “футер”: фото+кнопки */
  }

  .ceo-quote__inner::before{
    left: 12px;
    top: 14px;
  }

  .ceo-quote__inner::after{
    right: 12px;
    bottom: 16px;                 /* чтобы не наезжало на “футер” */
  }

  /* контент */
  .ceo-quote__content{
    width: 100%;
    padding-right: 0;
  }

  .ceo-quote__title{
    font-size: 26px;
    line-height: 100%;
    margin-bottom: 14px;
  }

  .ceo-quote__subtitle{
    font-size: 16px;
    line-height: 115%;
    margin-bottom: 12px;
  }

  .ceo-quote__text{
    font-size: 12px;
    line-height: 130%;
    margin-bottom: 0;
  }

  /* ===== НИЖНЯЯ ПОЛОСА: автор слева, кнопки справа ===== */
    .ceo-quote__photo{
      position: absolute;
      left: 15px;
      bottom: 20px;
  right: auto;
              display: grid !important;
          grid-template-columns: 56px 1fr;
          grid-template-rows: auto auto;
          column-gap: 10px;
          row-gap: 6px;
          align-items: center;
    }

  /* кружочек слева */
  .ceo-quote__photo-img{
    width: 56px;
    height: 56px;
    grid-column: 1;
        grid-row: 1 / span 2;
        margin: 0;
        justify-self: start;
  }

  /* имя сверху, должность снизу */
  .ceo-quote__name{
    margin: 0;
    font-size: 14px;
    line-height: 120%;
    white-space: nowrap;
    grid-column: 2;
        grid-row: 1;
        margin: 0;
        align-self: end;
        text-align: left;
  }

  .ceo-quote__position{
    margin: 2px 0 0;
    font-size: 11px;
    line-height: 120%;
    white-space: nowrap;
            grid-column: 2;
        grid-row: 2;
        margin: 0;
        align-self: start;
        text-align: left;
  }

  /* кнопки справа внизу, как квадраты с иконками */
  .ceo-quote__buttons{
    position: absolute;
    right: 10px;
    bottom: 0px;
    margin-bottom:-70px;
    display: flex;
    flex-wrap: nowrap;
    gap: 10px;
    margin-top: 0;
    justify-content: flex-end;
    padding-right:0;
  }

  .ceo-quote__btn{
    width: 44px;
    height: 44px;
    padding: 0;
    justify-content: center;
  }

  /* убираем текст у кнопок (на 640 — только иконки) */
  .ceo-quote__btn .icon-box__content{
    display: none !important;
  }

  .ceo-quote__btn .icon-box{
    gap: 0;
  }

  /* чуть крупнее иконки */
  .ceo-quote__btn--tg .ceo-quote__icon,
  .ceo-quote__btn--wa .ceo-quote__icon {
      transform: scale(1.4);
    }

}

/* ---------- @media (max-width: 900px) — 3 правил(а) ---------- */
@media (max-width: 900px) {
  .about-brands .slider-block__header-right {
      display:none !important;
  }

  .slider-block__subtitle {
      margin-bottom: 15px;
  }

  /* ================================
     ABOUT-STEPS ("Как мы работаем")
     900px -> 2 колонки (как скрин №1)
     500px -> 1 колонка + горизонтальная карточка (как скрин №2)
     Вставь ниже существующих стилей
  ================================ */
    /* 900px: делаем сетку 2x2 */
    .about-steps__grid{
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
      gap: 20px !important;
    }

}

/* ---------- @media (max-width: 824px) — 4 правил(а) ---------- */
@media (max-width: 824px) {
  /* CONTACTS: 1024px — форма вниз, контакты на всю ширину */
  .contacts-block{
    flex-direction: column;
    gap: 30px;              /* расстояние между контактами и формой */
    margin: 50px 0 60px;    /* можно поджать, если надо */
  }

  .contacts-block__left,
  .contacts-block__right{
    width: 100%;
  }

  /* чтобы правая "карточка" формы не выглядела слишком узкой/прижатой */
  .contacts-block__right .form-placeholder{
    width: 100%;
    box-sizing: border-box;
  }

  .contacts-block__right .multiform-gap-value input[type='checkbox'] {
      position:absolute;
  }

}

/* ---------- @media (max-width: 580px) — 3 правил(а) ---------- */
@media (max-width: 580px) {
  .pay-delivery__hero-actions .consultant-card__wa-btn {
  padding: 7px 12px;
  }

  .pay-delivery__hero-actions {
  gap: 7px;
  }

  .pay-delivery__icon-btn {
  flex: 0 0 auto;
  width: 34px;
  height: 34px;
  }

}

/* ---------- @media (max-width: 880px) — 6 правил(а) ---------- */
@media (max-width: 880px) {
  .pay-delivery-guarantee__grid {
    display: flex;
    flex-direction: column;
    gap: 24px; /* расстояние между карточками */
  }

  /* сбрасываем возможные grid-настройки */
  .pay-delivery-guarantee__grid > * {
    width: 100%;
    grid-column: auto !important;
    grid-row: auto !important;
  }

  /* если левая карточка была "в две строки" */
  .pay-delivery-guarantee__card-left {
    min-height: auto;
  }

  .pay-delivery__grid {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: 20px;
  }

  .pay-delivery-guarantee__quote-inner {
      margin-bottom:20px;
  }

  .pay-delivery__card--hero {
    display: grid;
    gap: 30px;
  }

}

/* ---------- @media (max-width: 860px) — 5 правил(а) ---------- */
@media (max-width: 860px) {
  /* =========================
   ABOUT TEAM — адаптив
   860px (как скрин №2)
   500px (как скрин №3)
   ========================= */
  /* 860px: делаем 2 колонки и “воздух”, чтобы карточки выглядели как на скрине №2 */
  .about-team__grid{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 20px !important;
  }

  .about-team__item{
    padding: 28px 24px 26px !important;
    min-height: 180px !important;
  }

  .about-team__photo-wrapper{
    width: 120px !important;
    height: 120px !important;
    margin-bottom: 14px !important;
  }

  .about-team__name{
    font-size: 20px !important;
    margin-bottom: 8px !important;
  }

  .about-team__role{
    font-size: 13px !important;
    line-height: 120% !important;
  }

}

/* ---------- @media (max-width: 500px) — 13 правил(а) ---------- */
@media (max-width: 500px) {
  .about-team__grid{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px !important;
  }

  .about-team__item{
    padding: 18px 16px 18px !important;
    min-height: 250px !important;
  }

  .about-team__photo-wrapper{
    width: 108px !important;
    height: 108px !important;
    margin-bottom: 12px !important;
  }

  .about-team__name{
    font-size: 16px !important;
    margin-bottom: 6px !important;
  }

  .about-team__role{
    font-size: 12px !important;
    line-height: 120% !important;
  }

  /* 500px: одна колонка + внутри карточки иконка слева, текст справа, кнопка снизу */
  .about-steps__grid{
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  .about-steps__item{
    padding: 18px 20px !important; /* как на моб.скрине */
    min-height: unset !important;
  }

  /* Верхняя часть карточки (обёртка с иконкой/текстом) в две колонки */
  .about-steps__item .about-steps__item-wrap {
    display: grid !important;
    grid-template-columns: 56px 1fr;
    column-gap: 18px;
    row-gap: 4px;
    align-items: start;
  }

  /* Иконка слева и занимает 2 строки */
  .about-steps__icon{
    grid-column: 1;
    grid-row: 1 / span 2;
    margin: 0 !important;
    width: 56px;
  }

  .about-steps__icon-img{
    width: 56px !important;
    height: 56px !important;
    object-fit: contain !important;
    display: block;
  }

  /* Текст справа “столбиком”: имя/заголовок над описанием */
  .about-steps__title{
    grid-column: 2;
    grid-row: 1;
    margin: 0 0 2px !important;
    font-size: 18px !important;
    line-height: 110% !important;
  }

  .about-steps__subtitle{
    grid-column: 2;
    grid-row: 2;
    margin: 0 !important;
    font-size: 13px !important;
    line-height: 120% !important;
  }

  /* Кнопка — отдельной строкой снизу */
  .about-steps__btn-link{
    margin-top: 14px !important;
    padding: 12px 16px !important;
  }

}

/* ---------- @media (min-width: 600px) and (max-width: 860px) — 4 правил(а) ---------- */
@media (min-width: 600px) and (max-width: 860px) {
  .about-team__item{
    display: grid !important;
    grid-template-columns: 120px 1fr;
    grid-template-rows: auto auto;      /* имя / должность */
    column-gap: 20px;
    row-gap: 6px;
    align-items: center;               /* по вертикали для фото */
  }

  /* фото слева и на 2 строки */
  .about-team__photo-wrapper{
    grid-column: 1;
    grid-row: 1 / span 2;
    margin: 0;                         /* если были отступы */
    justify-self: start;
    flex-shrink: 0;
  }

  /* имя справа сверху */
  .about-team__name{
    grid-column: 2;
    grid-row: 1;
    margin: 0;
    align-self: end;
    text-align: left;
  }

  /* должность строго под именем */
  .about-team__role{
    grid-column: 2;
    grid-row: 2;
    margin: 0;
    align-self: start;
    text-align: left;
  }

}

/* ---------- @media (max-width: 900px) — 3 правил(а) ---------- */
@media (max-width: 900px) {
  /* ================================
     ABOUT-STEPS ("Как мы работаем")
     900px -> 2 колонки (как скрин №1)
     500px -> 1 колонка + горизонтальная карточка (как скрин №2)
     Вставь ниже существующих стилей
  ================================ */
    /* 900px: делаем сетку 2x2 */
    .about-steps__grid{
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
      gap: 20px !important;
    }

  .steps__list {
  justify-content: center;
  }

  .steps-card {
  max-width: 100%;
  }

}

/* ---------- @media (max-width: 500px) — 8 правил(а) ---------- */
@media (max-width: 500px) {
  /* 500px: одна колонка + внутри карточки иконка слева, текст справа, кнопка снизу */
  .about-steps__grid{
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  .about-steps__item{
    padding: 18px 20px !important; /* как на моб.скрине */
    min-height: unset !important;
  }

  /* Верхняя часть карточки (обёртка с иконкой/текстом) в две колонки */
  .about-steps__item .about-steps__item-wrap{
    display: grid !important;
    grid-template-columns: 56px 1fr;
    column-gap: 18px;
    row-gap: 4px;
    align-items: start;
  }

  /* Иконка слева и занимает 2 строки */
  .about-steps__icon{
    grid-column: 1;
    grid-row: 1 / span 2;
    margin: 0 !important;
    width: 56px;
  }

  .about-steps__icon-img{
    width: 56px !important;
    height: 56px !important;
    object-fit: contain !important;
    display: block;
  }

  /* Текст справа “столбиком”: имя/заголовок над описанием */
  .about-steps__title{
    grid-column: 2;
    grid-row: 1;
    margin: 0 0 2px !important;
    font-size: 18px !important;
    line-height: 110% !important;
  }

  .about-steps__subtitle{
    grid-column: 2;
    grid-row: 2;
    margin: 0 !important;
    font-size: 13px !important;
    line-height: 120% !important;
  }

  /* Кнопка — отдельной строкой снизу */
  .about-steps__btn-link{
    margin-top: 14px !important;
    padding: 12px 16px !important;
  }

}

/* ---------- @media (max-width: 590px) — 2 правил(а) ---------- */
@media (max-width: 590px) {
  .banner-inner-wrap {
      padding: 4px 15px 15px;
  }

  .banner-action-btn {
      padding: 7px 10px;
  }

}

/* ---------- @media (max-width: 690px) — 3 правил(а) ---------- */
@media (max-width: 690px) {
  /* Скриншот 3: До 600px (Мобильная версия) */
  .banner-h2 {
      font-size: 24px!important;
  }

  .banner-info-side {
      padding: 10px 50px 30px;
      justify-content: center;
      text-align: center;
      background-position: center center;
      background-size: 200px auto;
  }

  .banner-p {
      padding:0 40px;
  }

}

/* ---------- @media (max-width: 767px) — 1 правил(а) ---------- */
@media (max-width: 767px) {
  .blocks__item-categories .categories-compact__list {
  grid-template-columns: repeat(2, minmax(0, 1fr));    
  }

}

/* ---------- @media (max-width: 850px) — 2 правил(а) ---------- */
@media (max-width: 850px) {
  /* 850px: 2 колонки, 3-я карточка на всю ширину снизу */
  .about-benefits__grid--3{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 20px !important;
    aspect-ratio: 3 / 2 !important;
  }

  /* 3-я карточка (Девелоперы и HORECA) — во всю ширину */
  .about-benefits__grid--3 .about-benefits__item:nth-child(3){
    grid-column: 1 / -1;
    min-height: 260px; /* чтобы смотрелась как на скрине */
  }

}

/* ---------- @media (max-width: 600px) — 7 правил(а) ---------- */
@media (max-width: 600px) {
  /* 600px: 1 колонка, все карточки друг под другом */
  .about-benefits__grid--3{
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  .about-benefits__grid--3 .about-benefits__item{
    min-height: 240px;     /* можно 220–260 под вкус */
    padding: 22px !important;
    border-radius: 10px;
  }

  /* на всякий: сбрасываем растяжение 3-й карточки (уже не нужно в 1 колонке) */
  .about-benefits__grid--3 .about-benefits__item:nth-child(3){
    grid-column: auto;
  }

  /* чуть компактнее текст, чтобы не “расползался” */
  .about-benefits__grid--3 .about-benefits__card-title{
    font-size: 18px !important;
    line-height: 110% !important;
  }

  .about-benefits__grid--3 .about-benefits__card-subtitle{
    font-size: 13px !important;
    line-height: 120% !important;
  }

  .multiform-popup-window .multiform-wrap.default-theme {
      width:100%;
      border-radius:0px;
  }

  .home-block .slider-block__cta,.home-block .slider-block__header-right {
  display:none !important;
  }

}

/* ---------- @media (max-width: 780px) — 3 правил(а) ---------- */
@media (max-width: 780px) {
  .about-info__top {
  display: grid;
  grid-template-columns: 1fr;
  gap:30px;
  margin-bottom: 40px;
  }

  .about-info__bottom {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap:30px;
  }

  .about-contacts__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
  }

}

.blocks__item-brands .about-today {
  margin: 0px 0 100px;
}

.blocks__item-categories .home-block_size_l {
  padding: 0;
}

.blocks__item-categories .category-banner-side {
  display: none
}

.index-hero {
  position: relative;
  width: 100%;
  /*padding: calc(100vh - 320px - 90px - 156px) 0 90px;*/
  color: #fff;
  z-index: 1;
  pointer-events: none; /* чтобы не мешал кликам в меню */
}

.index-hero__inner {
  display: grid;
  grid-template-columns: 1.7fr 1fr;
  grid-gap: 7%;
  align-items: stretch; 
  pointer-events: auto; /* включает клики внутри формы */
}

/* ====== ТЕКСТОВЫЙ БЛОК ====== */
.slide__background-image {
  height: 100% !important; 
}

.slider__dots.home-dots {
  bottom: 25px !important;
}

.slider__dots::after {display: none !important;}

/* --- Стили базовой раскладки (Desktop по умолчанию) --- */
.custom-projects-section {
  position: relative;
  width: 100%;
  overflow: hidden;
}

/* Слайды и фоны */
.slide_home {
  position: relative;
  width: 100%;
  height: 80vh;
  display: flex;
  align-items: flex-end; /* Центрируем контент по вертикали */
  justify-content: center;
}

.slide__background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.slide__background-image {
  width: 100%;
  height: 100%;
  object-fit: cover; /* Картинка масштабируется без искажений пропорций */
  object-position: center;
}

/* Оболочка выравнивания — берет на себя роль ограничивающего контейнера (max-width: 1360px) */
.hero-alignment-wrapper {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 1360px;
  margin: 0 auto;
  padding: 0 45px;
  box-sizing: border-box;
  display: flex;
  justify-content: flex-start; /* Выравнивание контента по левому краю сетки */
}

/* Контентный блок */
.custom-hero-container {
  position: relative;

  width: fit-content;
  padding: 50px;
  background-color: rgba(255, 255, 255, 0.05); /* Затемнение для читаемости на светлых фото */
  backdrop-filter: blur(15px);
  -webkit-backdrop-filter: blur(15px);
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  gap: 25px;
  box-sizing: border-box;
  color: #ffffff;
  margin-bottom: 110px;
}

.custom-hero-title {
  font-family: 'Forum';
  font-size: 48px;
  font-weight: 300;
  margin: 0;
  line-height: 1.15;
  white-space: nowrap;
}

.custom-hero-description {
  font-family: 'Manrope', sans-serif;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.4;
  opacity: 0.9;
}

.custom-hero-button {
  width: 200px;
  height: 45px;
  border: 1px solid #ffffff;
  border-radius: 5px;
  background: transparent;
  color: #ffffff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-family: 'Manrope', sans-serif;
  font-size: 14px;
  font-weight: 500;
  transition: all 0.3s ease;
  box-sizing: border-box;
}

.custom-hero-button:hover {
  background-color: #ffffff;
  color: #000000;
}

/* ====== БЛОК ФОРМЫ ====== */
.index-hero__form-col {
  display: flex;
  align-items: self-end;      /* центр по вертикали */
  justify-content: flex-end;/* поджать к правому краю, как в макете */
}

.index-hero__form {
  position: relative;
  padding: 30px 30px;
  border-radius: 18px;

  background: rgba(224, 224, 224, 0.10);
  backdrop-filter: blur(30px);
  -webkit-backdrop-filter: blur(30px);

  color: #fff;
}

.index-hero__form-title {
  font-size: 20px;
  font-weight: 300;
  line-height: 100%;
  margin-bottom:20px
}

.about-brands .slider-block__header-text-container {
  margin-top: 15px
}

.about-brands .slider-block__subtitle {
  margin-top: 45px;
}

.about-brands .slider-block__buttons-container {
  margin-top: 20px;
}

/* Левая колонка (заголовок + подзаголовок) */
.slider-block__header-left {
  max-width: 60%;
}

.slider-block__subtitle {
  margin-top: 20px;
  font-size: 20px;
  line-height: 100%;
  color: #333;
  font-weight:500;
}

/* Правая колонка */
.slider-block__header-right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 16px;
  padding-top: 15px;
}

.slider-block__cta {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  gap: 50px;
}

.slider-block__cta_mobile {
  display:none;
}

/* Текст "Отправить → спецификацию" */
.slider-block__cta-text {
  font-size: 20px;
  line-height: 100%;
  margin-bottom: 0;
}

/* Кнопка с e-mail */
.slider-block__cta .button_style_gray {
  padding: 12px 25px;
  color:#333;
}

.slider-block__cta .button_style_gray .icon-box {
  margin-right:3px;
}

.slider-block__cta .copy-success .icon-box__content {
  padding:0 18px 0 1px;
}

/* Стрелки — чуть ниже основного блока справа */
.slider-block__buttons-container {
  margin-top: 0px;     /* опускаем вниз */
}

.category-page__subcategories-wrapper {
  display: grid;
  /* 1fr — это ровно 1/4 (25%) макета, 3fr — остальные 3/4 */
  grid-template-columns: 1fr 3fr;
  grid-template-areas: 
  "banner list"
  "footer footer"; /* Кнопка занимает обе колонки внизу */
  gap: 0 20px;
  align-items: start; /* Важно: баннер не будет тянуться по высоте категорий */
}

/* Применяем магию к промежуточным дивам */
.category-page__subcategories, 
.categories-compact {
  display: contents; /* Игнорируем эти обертки для сетки */
}

/* Позиционируем баннер */
.category-banner-side {
  grid-area: banner;
  height: 100%; /* Контейнер будет высотой со весь список категорий */
  min-width: 0;
}

/* Сам липкий баннер */
.category-banner-side .products-thumbs__item {
  position: sticky;
  top: 82px; /* Отступ от верха экрана при скролле */
  display: block;
  z-index: 5;
  width: 100%;
  height: 100%;
  max-height: 380px;
  min-height: 380px;
  border-radius: 10px; /* Скругление углов */
  overflow: hidden;
}

.categories-compact__footer .button {
  width: 100%; /* Или оставь как в дизайне, если она должна быть по центру */
  max-width: 100%;
  margin: 0;
}

.categories-compact__show-button,
.categories-compact__hide-button{
  width:100%;
  background-color:#F4F4F4;
  color:#666666;
  font-size:13px;
  border:0;
}

.filters__filters_horizontal {          /* ← класс контейнера фильтров, посмотри в инспекторе */
  display: flex;
  flex-wrap: nowrap;
  gap: 16px;               /* расстояние между фильтрами */
  align-items: stretch;
}

/* Каждый отдельный фильтр (Тип предмета / Фабрика / Стиль / Цена) */
.filters__filter {    /* ← класс обёртки одного фильтра */
  flex: 1 1 0;             /* все четыре занимают равную ширину */
  min-width: 0;
}

/* Кнопка "Сбросить фильтры" – фиксированная ширина, не растягиваем */
.filters__reset-button {   /* ← блок с "Сбросить фильтры" */
  flex: 0 0 auto;
}

.body-header-on .category-compact__name span {
  font-weight: 100;
  font-family: 'Forum';
  letter-spacing: 0;
}

.category-wrap__image {
  display: block;
  height:180px;
  width:100%;
  border-radius: 10px;
  background-size: cover;
  background-position: center;
  position: relative;
}

.category-compact__name span {
  display: block;
  width:80%;
  transition: color 0.2s ease-in-out;
  font-size: 20px;
  font-weight: 500;
  line-height: 120%;
  color:#fff;
  position: absolute;
  left: 30px;
  right: 30px;
  bottom: 28px;
}

.category-extend__content,
.category-extend__image-container{
  border: 0 !important;
}

.category-extend__image-box,
.category-extend__image-box a.image-box{
  display: block;
  height: 100%;
  position: relative;
}

.category-extend__image{
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  display: block;
  border-radius:10px 10px 0 0;
}

.category-extend__image-box a.image-box::after{
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.35);
  pointer-events: none;
}

.category-extend__name:hover{
  color: #fff !important;
  opacity: 0.92;
}

.category-extend__content{
  padding: 14px 20px 16px !important;
}

.category-extend__subcategory a{
  display: block;
  font-size: 11px;
  line-height: 120%;
  color: #333333 !important;
  text-decoration: none;
}

.category-extend__subcategory a:hover{
  color: #cb9c27 !important;
}

.category-extend__footer .toggle-block__button{
  font-size: 11px;
  color: #B6B8BA;
  text-decoration: none;
  cursor: pointer;
  border-bottom: #B6B8BA 1px dashed;
}

.delivery-info {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #ffffff;
  border: 1px solid #EEEEEE;
  border-radius: 5px;
  padding: 7px 10px;
  font-size: 11px;
  line-height: 1;
  color: #999999;
}

.delivery-info__label {
  color: #999999;
  font-weight: 400;
  flex: 1; 
  min-width: 0;
}

.delivery-info__value {
  font-weight: 500;
  color: #333;
  white-space: nowrap;
}

.consultant-card {
  padding: 25px 30px 15px;
  border-radius: 10px;
  border: 1px solid #EEEEEE;
  color: #1f2933;
  font-size: 14px;
  line-height: 1.2;
  width:100%;
}

.consultant-card__header {
  display: flex;
  align-items: center;
  column-gap: 8px;
  font-size: 14px;
  font-weight: 500;
  margin-bottom: 16px;
}

.consultant-card__status-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #4EB859; /* зелёная точка */
}

.consultant-card__top {
  display: flex;
  column-gap: 16px;
  align-items: center;
  margin-bottom: 18px;
}

.consultant-card__photo img {
  width: 80px;
  height: 80px;
  border-radius: 5px;
  object-fit: cover;
  display: block;
}

.consultant-card__info {
  flex: 1;
}

.consultant-card__name {
  font-size: 18px;
  line-height: 1.2;
  font-weight: 500;
  margin-bottom: 4px;
}

.consultant-card__role {
  font-size: 11px;
  line-height: 1.2;
  color: #999999;
}

.consultant-card__wa-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 8px;
  width: 100%;
  padding: 9px 16px;
  border-radius: 5px;
  border: 1px solid #4EB859;
  color: #4EB859;
  background: #ffffff;
  font-size: 14px;
  line-height: 1.2;
  font-weight: 500;
  text-decoration: none;
  margin-bottom: 20px;
  transition: background 0.15s ease, color 0.15s ease,
  box-shadow 0.15s ease;
}

.consultant-card__wa-btn:hover {
  background: #28b446;
  color: #ffffff;
  box-shadow: 0 4px 12px rgba(40, 180, 70, 0.25);
}

.consultant-card__wa-btn:hover .svg-icon {
  color: #ffffff; /* или любой другой */
  fill: #ffffff;
}

/* ===== Consultant: 3 соц-кнопки как на макете ===== */

.consultant-card__soc{
  display: flex;
  gap: 10px;
  width: 100%;
  margin: 12px 0 16px;
}

.consultant-card__soc-btn{
  --c: #4BB455; /* дефолт (WA) */
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  flex: 1 1 0;
  min-width: 0;
  height: 40px;
  padding: 0 12px;
  border-radius: 5px;
  border: 1px solid var(--c);
  font-size: 13px;
  line-height: 1;
  font-weight: 500;
  text-decoration: none;
  transition: background .15s ease, color .15s ease, box-shadow .15s ease;
}

.consultant-card__soc-ico{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
}

/* если внутри будет svg */
.consultant-card__soc-btn .svg-icon,
.consultant-card__soc-btn svg{
  width: 18px;
  height: 18px;
  fill: currentColor;
  color: currentColor;
}

.consultant-card__soc-btn{
  background: var(--c);
  color: #fff;
  box-shadow: 0 4px 12px rgba(0,0,0,.08);
}

.consultant-card__soc-btn--wa{  --c: #4BB455; }

/* зелёный */
.consultant-card__soc-btn--tg{  --c: #37B4FA; }

/* голубой */
.consultant-card__soc-btn--max{ --c: #4646E6; }

/* сиренево-синий */

.consultant-card__soc-btn:hover{background: #fff;color: var(--c);}

/* MAX: кнопка-логотип (без текста, иконка шире) */
.consultant-card__soc-btn--maxlogo{
  gap: 0;                 /* текста нет — убираем лишний зазор */
  padding-left: 10px;
  padding-right: 10px;
}

/* снимаем ограничение 18x18 и даём место под 50x16 */
.consultant-card__soc-ico--logo{
  width: 50px;
  height: 16px;
}

/* на всякий — чтобы svg не сжимался и был виден */
.consultant-card__soc-btn--maxlogo svg{
  width: 50px !important;
  height: 16px !important;
  display: block;
}

/* если maxlogo.svg рисуется не через currentColor (часто так бывает),
  принудительно красим use/путь в цвет текста */
.consultant-card__soc-btn--maxlogo .svg-icon,
.consultant-card__soc-btn--maxlogo svg,
.consultant-card__soc-btn--maxlogo svg use,
.consultant-card__soc-btn--maxlogo svg path{
  fill: currentColor;
  color: currentColor;
}

/* MAX: кнопка-логотип (без текста, иконка шире) */
.consultant-card__soc-btn--maxlogo{
  gap: 0;                 /* текста нет — убираем лишний зазор */
  padding-left: 10px;
  padding-right: 10px;
}

/* снимаем ограничение 18x18 и даём место под 50x16 */
.consultant-card__soc-ico--logo{
  width: 50px;
  height: 16px;
}

/* на всякий — чтобы svg не сжимался и был виден */
.consultant-card__soc-btn--maxlogo svg{
  width: 50px !important;
  height: 16px !important;
  display: block;
}

/* если maxlogo.svg рисуется не через currentColor (часто так бывает),
  принудительно красим use/путь в цвет текста */
.consultant-card__soc-btn--maxlogo .svg-icon,
.consultant-card__soc-btn--maxlogo svg,
.consultant-card__soc-btn--maxlogo svg use,
.consultant-card__soc-btn--maxlogo svg path{
  fill: currentColor;
  color: currentColor;
}

.consultant-card__contacts-title {
  font-size: 14px;
  line-height: 1.2;
  font-weight: 500;
  margin-bottom: 12px;
}

.consultant-card__row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  column-gap: 16px;
  margin-bottom: 10px;
  font-size: 11px;
  line-height: 1.2;
}

.consultant-card__label {
  flex: 0 0 auto;
  min-width: 120px;
  color: #999999;
}

.consultant-card__label_muted {
  opacity: 0.85;
}

.consultant-card__value {
  flex: 1 1 auto;
  text-align: right;
  color: #333;
  text-decoration: none;
}

.consultant-card__value_link {
  color: #333;
  text-decoration: underline;
  cursor:hand;
  cursor:pointer;
}

.consultant-card__value_link:hover {
  color: #CB9C27;
  text-decoration: underline;
}

.product-cart-form__block .product-add-to-cart__button {
  font-size: 14px;
  font-weight: 300;
  display: inline-flex;      /* вместо inline-block */
  align-items: center;       /* вертикальное выравнивание иконки и текста */
  justify-content: center;   /* чтобы всё было по центру по горизонтали */
  gap: 4px;                  /* расстояние между иконкой и текстом */
  line-height: 1;            /* убираем лишний вертикальный воздух вокруг текста */
}

.product-cart-form__block .product-add-to-cart__button .product-thumb__cart-icon {
  display: block;
}

/* Рядом с «В корзину»: см. user.css — плагин buy1click без .page_buy1click не задаёт вид кнопки */
.product-add-to-cart__buy1click .buy1click-button_type_item,
.product-cart-form__block .product-add-to-cart__controls-button .buy1click-button_type_item {
  width: 100% !important;
  display: block;
  box-sizing: border-box;
  padding: 9px 19px 10px;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.2;
  text-align: center;
  color: #cb9c27;
  background-color: #ffffff;
  border: 1px solid #cb9c27;
  border-radius: var(--inputs-buttons-border-radius);
  cursor: pointer;
  transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out, border-color 0.2s ease-in-out;
}

.product-add-to-cart__buy1click .buy1click-button_type_item:hover,
.product-add-to-cart__buy1click .buy1click-button_type_item:focus-visible,
.product-cart-form__block .product-add-to-cart__controls-button .buy1click-button_type_item:hover,
.product-cart-form__block .product-add-to-cart__controls-button .buy1click-button_type_item:focus-visible {
  background-color: #cb9c27;
  color: #ffffff;
}

.buy1click-open-button.no-price{
  font-size:16px;
  font-weight:500;
  border:1px solid #cb9c27;
  background:#fff;
  color:#cb9c27 !important;
  padding:12px 28px;
  border-radius:5px;
}

.buy1click-open-button.no-price:hover{
  background:#cb9c27;
  color:#fff !important;
}

.product-cart-form__title-block .title {
  font-size: 36px;
  font-weight: 100;
  font-family: 'Forum';
  color:#000;
}

.product-cart-form__container-info,
.product-cart-form__container-content {
  flex: auto;
}

.btn-video-wrap {
  margin: 40px 0 30px;
  text-align: center
}

.btn-video-wrap-mobile {
  margin: 0 0 30px;
  text-align: center
}

.btn-video-wrap .button {
  font-size: 16px;
  font-weight: 500;
  border: 1px solid #cb9c27;
  background: #fff;
  color: #cb9c27 !important;
  padding: 12px 28px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.btn-video-wrap .button .btn-video {
  display: inline-block;
  background: url(img/video_icon.png) center center no-repeat;
  background-size: cover;
  width: 28px;
  height: 20px;
  margin-right: 10px;
}

.product-cart-form__container-info {
  position: relative;
  flex: none;
  width: 50%;
  max-width: 50%;
  padding-right: 60px;
}

.product-cart-form__top-block {
  width:100%
}

.product-cart-form__top-block .product-cart-form__top-block {
  display: flex;
  flex-direction: column;
  gap: 4px;             
  font-size: 14px;
}

.product-cart-form__top-block .value {
  display: flex;
  justify-content: space-between;
  gap: 9px;
  font-weight:500;
}

.product-cart-form__top-block .value .value__label-text {
  flex: 1 1 auto;        /* занимает всё доступное, умеет сужаться и переноситься */
  min-width: 0;          /* позволяет тексту нормально переноситься, а не выталкивать value */
  color: #8f8f8f;
  white-space: nowrap;
}

.product-cart-form__top-block .value .value__value-text {
  flex: 1 1 auto;
  text-align: right;
  color: #333333;
}

.product-cart-form__top-block .value .value__value-text .link {
  color: #333333;
  border-bottom: 1px solid #CB9C27;
}

.product-feature__value a {
  color: #333333;
  border-bottom: 1px solid #CB9C27;
}

.product-feature__value a:hover {
  color: #CB9C27;
  border-bottom: 1px solid #CB9C27;
}

/* сами "точечки" посередине */
.product-feature_product-card::before {
  content: "";
  order: 1;
  flex: 1 1 auto;
  border-bottom: 1px dotted #e5e5e5;
  margin: 0 8px;              /* отступы от текста слева/справа */
}

.product-gallery-modal .modal__title {
  flex-shrink: 0;
}

.product-gallery-modal .product-gallery {
  flex: 1 1 auto;
  min-width: 0;
  min-height: 0;
  max-height: 100%;
  height: auto;
  overflow: hidden;
  padding-bottom: 0;
}

.product-gallery-modal .product-gallery__header {
  flex-shrink: 0;
}

.product-gallery-modal .product-gallery__main {
  flex: 1 1 auto;
  min-width: 0;
  min-height: 0;
  max-height: 100%;
  overflow: hidden;
}

.product-gallery-modal .product-gallery__images-container {
  flex: 1 1 auto;
  min-width: 0;
  min-height: 0;
  width: 100%;
  height: auto;
  max-height: 100%;
  display: flex;
  /* row по умолчанию: на десктопе column ломал пропорции/высоту слайда; column — см. max-width 1023px */
}

.product-gallery-modal .product-gallery__images {
  flex: 1 1 auto;
  min-width: 0;
  min-height: 0;
  width: 100%;
  max-width: 100%;
  max-height: 100%;
  height: auto !important;
}

.product-gallery-modal .product-gallery__images .swiper-wrapper {
  height: 100%;
  max-height: 100%;
  min-height: 0;
}

/* stretch по вертикали: иначе центрирование даёт «укороченный» flex-элемент и max-height:100% у img не срабатывает — низ режется overflow */
.product-gallery-modal .product-gallery__image.swiper-slide {
  height: 100%;
  max-height: 100%;
  display: flex !important;
  align-items: stretch;
  justify-content: center;
  box-sizing: border-box;
}

.product-gallery-modal .product-gallery__image .swiper-zoom-container {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  min-height: 0;
  box-sizing: border-box;
  overflow: hidden;
}

.product-gallery-modal .product-gallery__image .image-box_fill {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  max-height: 100%;
  min-height: 0;
  box-sizing: border-box;
}

.product-gallery-modal .product-gallery__image .image-box_fill > *,
.product-gallery-modal .product-gallery__image .image-box_fill .picture img,
.product-gallery-modal .product-gallery__image .image-box_fill noscript img {
  max-width: 100%;
  max-height: 100%;
  min-width: 0;
  min-height: 0;
  width: auto;
  height: auto;
  object-fit: contain;
}

.product-gallery-modal .product-gallery__image_loading::before {
  content: "";
  position: absolute;
  inset: 0;
  background: #f1f1f1;
  z-index: 2;
  pointer-events: none;
}

.product-gallery-modal .product-gallery__image_loading::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 26px;
  height: 26px;
  margin-left: -13px;
  margin-top: -13px;
  border: 2px solid rgba(0, 0, 0, 0.16);
  border-top-color: rgba(0, 0, 0, 0.48);
  border-radius: 50%;
  animation: rotate 0.9s linear infinite;
  z-index: 3;
  pointer-events: none;
}

.product-gallery__thumb .image-box {
  position: relative;
  width: 100%;
  padding-bottom: 100%;
  overflow: hidden;
  display: block;
}

.product-gallery__thumb .image-box img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.technical-drawing-gallery__item {
  display: inline-block;
  cursor: zoom-in;
}

.popup-gallery_zoomable .popup-gallery__image {
  cursor: zoom-in;
}

.popup-gallery_zoomable .popup-gallery__image.swiper-slide-zoomed {
  cursor: grab;
}

.popup-gallery_zoomable .popup-gallery__image .swiper-zoom-container {
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
}

.modal-wrapper_popup-gallery-lock {
  overscroll-behavior: none;
}

.modal-wrapper_popup-gallery-lock .popup-gallery-modal,
.modal-wrapper_popup-gallery-lock .popup-gallery-modal .modal__content,
.modal-wrapper_popup-gallery-lock .popup-gallery-modal .popup-gallery__images {
  overscroll-behavior: none;
}

.product-thumb__image-button .button__icon {
  fill: #CB9C27;
}

.product-thumb__image-button:hover {
  color: #686868;
  background-color: #ffffff;
}

.product-thumb__image-button:hover .button__icon {
  fill: #686868;
}

.product-thumb__available .product-available_in-stock {
  position:absolute;
  right:0;
  bottom:0px;
  background-color:#F4F4F4;
  border-radius:5px 0 0 0;
  padding:5px 10px 5px;
  line-height: 11px;
}

.product-thumb__available .product-available_in-stock {
  color:#333333;
  line-height: 11px;
  font-size:11px;
  font-weight:600;
}

.product-thumb__available .product-available_out-of-stock {
  display:none;
}

.product-thumb__available .icon-box__icon {
  display:none;
}

.products__lazy-load .button_style_inverse {
  border-color:#333333;
  color:#333333;
  font-size: 14px;
  line-height: 1.2;
}

.catim-plugin-cat-pic {
  display:none;
}

.product-thumb__add-to-cart {
  position:absolute;
  right: 16px;
  bottom: 16px;
  line-height: 18px;
  z-index: 2;
}

.product-thumb__add-to-cart.button_fill {
  width:auto;
}

.product-thumb__add-to-cart.button {
  padding: 8px 8px 5px;
}

.product-thumb .product-favorite {
  position:absolute;
  right:1px;
  top:6px;
}

.product-thumb .product__delete-button {
  position:absolute;
  right:15px;
  top:6px;
}

.product-available_in-order {
  color: #616161;
}

.product-cart-form__block .product-skus-stocks__sku-stock-available {
  font-size: 11px;
  line-height: 120%;
  font-weight: 600;
}

.product-cart-form__block .product-skus-stocks__sku-stock-available .icon-box__icon {
  display: none;
}

/* когда товар "в наличии" — красим хвост тем же цветом */
.product-available_in-stock + .product-skus-stocks__location {
  color: #4EB859
}

.product-available_out-of-stock + .product-skus-stocks__location {
  color: #ff3131
}

.product-images__thumbs .swiper-slide{
  width:auto;
}

/* ---------- @media (min-width: 801px) — 18 правил(а) ---------- */
@media (min-width: 801px) {
  /* ВАЖНО: блок категорий должен быть внутри .block.slider-block (как "Блог") */
  .block.slider-block .categories-thumbs {
  position: relative;
  }

  /* Swiper container */
  .categories-thumbs.categories-thumbs_slider.swiper {
  overflow: visible; /* чтобы был "хвостик" следующего экрана */
  }

  /* Слайды-экраны */
  .categories-thumbs.categories-thumbs_slider .swiper-slide {
  /* "хвостик" следующего экрана */
  --peek: 35px;
  width: calc(100% - var(--peek));
  box-sizing: border-box;
  }

  /* Панель внутри слайда */
  .categories-thumbs .categories-slide {
  display: grid;
  grid-template-rows: auto auto;
  gap: 16px;
  }

  /* Верх: 2 больших */
  .categories-thumbs .categories-slide__top {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  }

  /* Низ: 3 маленьких */
  .categories-thumbs .categories-slide__bottom {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 16px;
  }

  /* Карточка */
  .categories-thumbs .category-thumb {
  position: relative;
  display: block;
  border-radius: 14px;
  overflow: hidden;
  text-decoration: none;
  transform: translateZ(0);
  }

  /* Размеры по макету: верх выше, низ ниже */
  .categories-thumbs .categories-slide__top .category-thumb {
  height: 340px;
  }

  .categories-thumbs .categories-slide__bottom .category-thumb {
  height: 300px;
  }

  /* Картинка cover */
  .categories-thumbs .category-thumb__image-box,
  .categories-thumbs .category-thumb__image-box .image-box,
  .categories-thumbs .category-thumb__image {
  width: 100%;
  height: 100%;
  display: block;
  }

  .categories-thumbs .category-thumb__image {
  object-fit: cover;
  transform: scale(1.001);
  transition: transform .55s ease;
  }

  /* Градиент снизу под подпись */
  .categories-thumbs .category-thumb::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,.32), rgba(0,0,0,0) 62%);
  pointer-events: none;
  }

  /* Текст как в макете: крупный, снизу слева */
  .categories-thumbs .category-thumb__name {
  position: absolute;
  left: 30px;
  bottom: 30px;
  z-index: 2;
  color: #fff;
  font-weight: 100;
  line-height: 120%;
  font-family: 'Forum';
  letter-spacing: -1px;
  font-size: 32px;
  }

  /* Лёгкий премиум-hover */
  .categories-thumbs .category-thumb:hover .category-thumb__image {
  transform: scale(1.04);
  }

  /* Чтобы старая линейная обёртка не мешала, когда мы её пересоберём */
  .categories-thumbs .categories-thumbs__wrapper.is-rebuilt {
  padding: 0;
  margin: 0;
  }

  .cats-bleed{
  width:99vw;
  margin-left:calc(50% - 50vw);
  overflow:hidden;
  }

  .cats-bleed .categories-thumbs{
  --container:1320px;
  padding-left:max(20px, calc((100vw - var(--container))/2));
  padding-right:max(20px, calc((100vw - var(--container))/2));
  }

  .cats-bleed .categories-thumbs.categories-thumbs_slider.swiper{
  overflow:visible;
  margin-left: 25px;
  }

}

/* ---------- @media (max-width: 1365px) — 3 правил(а) ---------- */
@media (max-width: 1365px) {
  .hero-alignment-wrapper {
  padding: 0 30px;
  }

  .custom-hero-container {
  max-width: 500px;
  padding: 40px;
  gap: 20px;
  }

  .custom-hero-title {
  font-size: 38px;
  }

}

/* ---------- @media (max-width: 1023px) — 81 правил(а) ---------- */
@media (max-width: 1023px) {
  .hero-alignment-wrapper {
  padding: 0 24px;
  }

  .custom-hero-container {
  max-width: 450px;
  padding: 35px;
  gap: 15px;
  }

  .custom-hero-title {
  font-size: 32px;
  }

  .custom-hero-description {
  font-size: 14px;
  }

  .product-cart-form__container-info,
  .product-cart-form__container-content {
  width: 100%;
  max-width: initial;
  }

  .product-cart-form__container-info {
  padding-right: 0;
  margin-bottom: 30px;
  }

  .product-gallery-modal .product-gallery__main {
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 16px;
  }

  .product-gallery-modal .product-gallery__images-container {
  flex-direction: column;
  }

  .product-gallery-modal .product-gallery__image {
  cursor: default;
  }

  /* Точки под слайдером: Swiper вешает absolute/left — в колонке уезжают влево */
  .product-gallery-modal .product-gallery__pagination.gallery-pagination {
  position: relative !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  bottom: auto !important;
  transform: none !important;
  width: 100% !important;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin: 0;
  padding-top: 4px;
  }

  .product-images__image_loading::before {
  content: "";
  position: absolute;
  inset: 0;
  background: #f1f1f1;
  z-index: 2;
  pointer-events: none;
  }

  .product-images__image_loading::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 26px;
  height: 26px;
  margin-left: -13px;
  margin-top: -13px;
  border: 2px solid rgba(0, 0, 0, 0.16);
  border-top-color: rgba(0, 0, 0, 0.48);
  border-radius: 50%;
  animation: rotate 0.9s linear infinite;
  z-index: 3;
  pointer-events: none;
  }

  .projects-static-content .container {
  position: static !important;
  }

  .page_searchpro .content-columns {
  grid-template-columns: 1fr;
  }

  .js-r-header .r-search-form.r-search-form_open {
  isolation: isolate;
  }

  .js-r-header .r-search-form.r-search-form_open::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 0;
  background: #fff;
  pointer-events: auto;
  touch-action: none;
  overscroll-behavior: none;
  min-height: 100vh;
  min-height: 100dvh;
  min-height: -webkit-fill-available;
  }

  .js-r-header .r-search-form.r-search-form_open > * {
  position: relative;
  z-index: 1;
  }

  .r-header__list_left {
  margin-left:10px;
  }

  .r-header__list-item_logo {
  margin-left:10px;
  }

  .r-header__list-item_logo .r-header-logo__image-adapt {
  display:none;
  }

  /* Контейнер контактов */
  .mh-contacts {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  max-width: 100%;
  min-width: 0;
  }

  /* Адрес: иконка + текст */
  .mh-contacts__address {
  display: flex;
  align-items: flex-start;
  font-size: 11px;
  line-height: 1.5;
  color:#333;
  margin-top:5px;
  }

  .mh-contacts__icon {
  flex: 0 0 18px;
  }

  .mh-contacts .svg-icon {
  color:#333;
  fill:#333;
  }

  .mh-contacts__address-text {
  display: block;
  }

  /* Нижняя строка: мессенджеры + телефон */
  .mh-contacts__row {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  min-width: 0;
  }

  .mh-contacts__messengers {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex: 0 0 auto;
  }

  .mh-contacts__ms {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #333333;
  background: transparent;
  }

  .mh-contacts__phone {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  text-decoration: none;
  color: #333333;
  font-size: 11px;
  font-weight: 500;
  white-space: nowrap;
  }

  /* Единый стиль SVG */
  .mh-icon {
  display: block;
  }

  .r-header__list-item-link .icon-box__content {
  line-height: 60%;
  white-space:nowrap
  }

  /* Одна колонка: текст сверху, форма снизу (как на скрине) */
  .index-hero__inner {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 40px !important;
  }

  .index-hero__text {
  max-width: 720px;
  gap: 10px !important;
  }

  .index-hero__title {
  font-size: 56px;
  line-height: 1.05;
  }

  .index-hero__subtitle {
  line-height: 1.2;
  }

  .index-hero__descr {
  font-size: 14px;
  line-height: 1.35;
  margin: 0;
  }

  .index-hero__form-col {
  width: 100%;
  max-width: 520px;
  }

  /* Карточка формы (блюр + скругление) */
  .index-hero__form {
  width: 100%;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.10);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  }

  .index-hero__form-title {
  font-size: 18px;
  line-height: 1.25;
  margin-bottom: 12px;
  }

  /* --- Multiform: поле слева, кнопка справа --- */
  .index-hero__form .multiform-gap-fields {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 12px !important;
  align-items: stretch !important;
  }

  /* убираем подпись "Номер телефона" внутри формы, чтобы не рушила сетку */
  .index-hero__form .multiform-gap-name {
  display: none !important;
  }

  /* Поле телефона */
  .index-hero__form #multiformField6_3-1 {
  flex: 1 1 auto !important;
  margin: 0 !important;
  }

  .index-hero__form #multiformField6_3-1 .multiform-gap-value {
  margin: 0 !important;
  }

  .index-hero__form #wahtmlcontrol_fields_field_6_3-1 {
  width: 100% !important;
  height: 44px;
  border-radius: 10px;
  box-sizing: border-box;
  }

  /* Кнопка */
  .index-hero__form #multiformField17_3-1 {
  flex: 0 0 150px !important;
  margin: 0 !important;
  }

  .index-hero__form #multiformField17_3-1 .button {
  width: 100% !important;
  height: 44px;
  border-radius: 10px;
  }

  /* на всякий: чтобы ошибки не раздвигали горизонтально */
  .index-hero__form .multiform-errorfld {
  margin-top: 10px;
  }

  /* 1) Родитель — 2 колонки */
  .product-cart-form__columns{
  grid-template-columns: minmax(0, 1fr) 50%!important;
  gap: 20px;
  align-items: start;
  }

  .product-cart-form__header {
      margin-bottom: 0px;
  }

  /* 2) "Расплющиваем" обертки справа, чтобы вытащить два .product-cart-form__block наружу */
  .product-cart-form__columns-additional{
  display: contents !important;
  }

  .product-cart-form__columns-additional > .product-cart-form__blocks{
  display: contents !important;
  }

  /* 3) Левый верх: характеристики */
  .product-cart-form__columns-main{
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: 100% !important;
  margin: 0 !important;
  }

  /* 4) Левый низ: корзина (первый block внутри additional) */
  .product-cart-form__columns-additional .product-cart-form__block:first-child{
  grid-column: 1 !important;
  grid-row: 2 !important;
  width: 100% !important;
  margin: 0 !important;
  }

  /* 5) Право: консультант (второй block внутри additional) */
  .product-cart-form__columns-additional .product-cart-form__block:last-child{
  grid-column: 2 !important;
  grid-row: 1 / span 2 !important;
  align-self: start;
  width: 100% !important;
  margin: 0 !important;
  }

  /* Контейнер изображений — на всю ширину */
  .product-images {
      width: 100%;
      max-width: 100%;
  }

  .image-box_fill > *, .image-box_fill .picture img, .image-box_fill noscript img {
      max-width: none;
      max-height: none;
  }

  /* Swiper — не ограничиваем */
  .product-images__images,
  .product-images__images-wrapper,
  .product-images__images-container {
      width: 100%;
      max-width: 100%;
  }

  .product-images__image.swiper-slide {
      width: 100% !important;
  }

  .product-images__image.swiper-slide:not(.product-images__image_hide) {
      display: flex !important;
      align-items: center !important;
      justify-content: center !important;
  }

  /* Кликабельный контейнер */
  .product-images__image .image-box {
      width: 100%;
      height: 100%;
      display: flex;
      align-items: center;
      justify-content: center;
  }

  /* Вписать фото в слайд 4:3 по обеим осям и центрировать (широкие «низкие» кадры) */
  .product-images__image .image-box_fill > *,
  .product-images__image .image-box_fill .picture img,
  .product-images__image .image-box_fill noscript img {
      max-width: 100% !important;
      max-height: 100% !important;
      width: auto !important;
      height: auto !important;
      object-fit: contain;
  }

  /* ================================
      THUMBS (миниатюры снизу)
  ================================ */

  /* Контейнер превью */
  .product-images__thumbs {
      width: 100%;
  }

  /* Каждая миниатюра */
  .product-images__thumb {
      width: 100%;
      height: 100%;
  }

  /* Картинка в миниатюре */
  .product-images__thumb img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
  }

  /* Убираем возможные ограничения */
  .product-images__thumb .image-box {
      width: 100%;
      height: 100%;
  }

  /* Снимаем возможную фиксированную высоту у контейнеров swiper */
  .product-images__images,
  .product-images__images-container,
  .product-images__images-wrapper,
  .product-images__images.swiper,
  .product-images__images .swiper-wrapper {
      height: auto !important;
      min-height: 0 !important;
  }

  /* Высоту слайда задаёт aspect-ratio у .product-images__image (4:3); height:auto здесь ломало центрирование «низких» фото */

  /* Заполняем высоту слайда (aspect-ratio 4:3 у .product-images__image), иначе блок сжимается и фото прилипает к верху */
  .product-images__image .image-box.image-box_fill {
      height: 100% !important;
      min-height: 0 !important;
      aspect-ratio: auto !important;
      align-self: stretch !important;
      display: flex !important;
      align-items: center !important;
      justify-content: center !important;
  }

  .product-images__image_video .image-box.image-box_fill,
  .product-images__image_dummy .image-box.image-box_fill {
      min-height: 0 !important;
  }

  /* Главное изображение в слайдере */
  .product-images__image img {
      display: block !important;
      height: auto !important;
      width: auto !important;
      max-width: 100% !important;
      max-height: 100% !important;
      object-fit: contain;
  }

  .products-thumbs_slider .products-thumbs__item {
  flex: 0 0 calc((100% - 3 * 20px) / 3);
  max-width: calc((100% - 3 * 20px) / 3);
  }

  .also-card {
  padding-bottom: 85%;
  }

  .reviews-section__content {
  gap: 40px;
  }

  /* Алфавит: заголовок сверху, список на всю ширину */
  .brands-letters {
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;              /* расстояние между "Алфавит" и кнопками */
  }

  .brands-letters__title {
  width: auto;            /* убираем фикс 100px */
  flex: none;
  }

  .brands-letters__list {
  width: 100%;
  margin-left:0 !important;
  }

  /* Теги: заголовок сверху, теги на всю ширину */
  .brands-filter {
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;              /* расстояние между "Теги" и плашками */
  }

  .brands-filter__label {
  width: auto;            /* убираем фикс 100px */
  flex: none;
  }

  .brands-filter__items {
  width: 100%;
  }

  .brands-letters__list {
  gap: 10px; /* чуть больше воздуха между буквами */
  }

  .brands-search .brands-letters__item {
  min-width: 44px;      /* стандарт для тач-зон */
  height: 44px;
  padding: 0 12px;     /* если буква одна — центрируется */

  display: flex;
  align-items: center;
  justify-content: center;

  font-size: 14px;     /* можно 15px, если нужно ещё крупнее */
  line-height: 1;
  }

  .brands-thumbs__wrapper {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  }

}

/* ---------- @media (max-width: 767px) — 18 правил(а) ---------- */
@media (max-width: 767px) {
  .slide_home {
  align-items: flex-end; /* Опускаем карточку вниз */
  padding-bottom: 80px; /* Оставляем место внизу экрана под точки пагинации */
  box-sizing: border-box;
  }

  .hero-alignment-wrapper {
  padding: 0 16px;
  justify-content: center; /* Центрируем карточку на мобилках */
  }

  .custom-hero-container {
  max-width: 100%;
  padding: 24px;
  gap: 15px;
  flex: 1;
  }

  .custom-hero-title {
  font-size: 24px;
  line-height: 1.2;
  }

  .custom-hero-description {
  font-size: 13px;
  line-height: 1.35;
  }

  .custom-hero-button {
  width: 100%; /* Кнопка на всю ширину карточки для удобного нажатия пальцем */
  height: 44px;
  }

  .product-cart-form__container-image .product-cart-form__r-additional-button.product-favorite {
  display: none;
  }

  .popup-gallery-modal {
  width: 100%;
  height: 100%;
  max-height: 100dvh;
  margin: 0;
  border-radius: 0;
  padding: 48px 8px 8px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  }

  .popup-gallery-modal .modal__close {
  top: 6px;
  right: 6px;
  z-index: 10;
  background: rgba(255, 255, 255, 0.92);
  border-radius: 999px;
  }

  .popup-gallery-modal .modal__content {
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  }

  .popup-gallery-modal .popup-gallery {
  flex: 1 1 auto;
  height: 100%;
  min-height: 0;
  display: flex;
  flex-direction: column;
  }

  .popup-gallery-modal .popup-gallery__images-container {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  }

  .popup-gallery-modal .popup-gallery__images {
  flex: 1 1 auto;
  min-height: 0;
  height: 100%;
  }

  .popup-gallery-modal .popup-gallery__images .swiper-wrapper {
  height: 100%;
  }

  .popup-gallery-modal .popup-gallery__image {
  height: 100% !important;
  }

  .product-images__thumbs {
  margin: 0 !important;
  }

  .product-images__thumbs .product-images__thumb-slide.swiper-slide {
  width: calc((100% - 30px) / 4) !important;
  padding-left: 0 !important;
  }

  .product-images__thumbs .product-images__thumb-slide.swiper-slide:not(:first-child) {
  margin-left: 10px;
  }

}

/* ---------- @media (max-width: 360px) — 2 правил(а) ---------- */
@media (max-width: 360px) {
  .custom-hero-container {
  padding: 16px;
  }

  .custom-hero-title {
  font-size: 20px;
  }

}

/* ---------- @media (max-width: 870px) — 2 правил(а) ---------- */
@media (max-width: 870px) {
  .slider-block__header-right .slider-block__cta {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
  }

  .slider-block__header-left {
  max-width: 75%;
  }

}

/* ---------- @media (max-width: 600px) — 6 правил(а) ---------- */
@media (max-width: 600px) {
  .slider-block__cta_mobile {
  display:block;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 0;                     
  font-size:18px;
  margin:20px 0 20px;
  }

  .slider-block__cta_mobile .icon-box {
  vertical-align: middle;
  margin-right:5px
  }

  .slider-block__cta-text {
      font-size: 18px;
  }

  .slider-block__header-left {
  max-width: 100%;
  }

  .blocks__item-categories .block__header_text {
  max-width: 100%;
  }

  .realized-projects__title { font-size: 30px; }

}

/* ---------- @media (max-width: 490px) — 1 правил(а) ---------- */
@media (max-width: 490px) {
  .slider-block__subtitle {
  font-size: 18px;
  margin-top: 20px;
  margin-bottom: 15px !important;
  }

}

/* ---------- @media (max-width: 867px) — 1 правил(а) ---------- */
@media (max-width: 867px) {
  .brands-thumbs {
  --cols-count: 3;
  }

}

/* ---------- @media (max-width: 647px) — 1 правил(а) ---------- */
@media (max-width: 647px) {
  .brands-thumbs {
  --cols-count: 2
  }

}

/* ---------- @media (max-width: 970px) — 4 правил(а) ---------- */
@media (max-width: 970px) {
  .category-page__subcategories-wrapper {
  grid-template-columns: 1fr 2fr;
  }

  .categories-compact__list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .products-thumbs__wrapper {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .categories-extend__list{ grid-template-columns: repeat(3, minmax(0, 1fr)); }

}

/* ---------- @media (max-width: 767px) — 17 правил(а) ---------- */
@media (max-width: 767px) {
  .category-page__subcategories-wrapper {
  grid-template-columns: 1fr;
  grid-template-areas: 
  "list"
  "banner"
  "footer";
  gap:15px;
  }

  .category-banner-side .products-thumbs__item {
  min-height: 300px;
  }

  .category-banner-side .banner-inner-wrap {
  object-fit: cover;
  object-position: center bottom;
  padding:23px 23px 33px
  }

  .category-banner-side .banner-action-btn {
  padding: 10px 60px 12px;
  }

  .categories-compact__list,
  .products-thumbs__wrapper {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 15px !important;
  }

  .categories-extend__list{ grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;}

  .favorite-page__categories{
  flex-wrap: wrap;
  }

  .products-bar__controls{
  width: 100%;
  margin-left: 0;
  justify-content: flex-start;
  }

  .favorite-page__categories{
  max-width: 100%;
  flex-wrap: wrap;
  }

  .products-bar__controls{
  justify-content: flex-start;
  }

  .products-bar__controls::before{
  width: 100%;
  justify-content: center;
  }

  .brand-page__categories-container {
  margin-bottom: 30px;
  }

  .brand-page__additional-description-container {
  margin-top: 30px;
  }

  .brand-page__tabs-container {
  margin-bottom: 15px;
  }

  .brand-page__image-container {
  text-align: center;
  margin-bottom: 15px;
  }

  .brand-page__image-container .image-box {
  height: 100px;
  display: flex;
  align-items: left;
  justify-content: left;
  }

  .product-images__thumb {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1;
  }

}

/* ---------- @media (max-width: 590px) — 7 правил(а) ---------- */
@media (max-width: 590px) {
  .categories-compact__list,
  .products-thumbs__wrapper {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px  !important;
  margin-bottom: 10px;
  }

  .categories-compact__list .category-compact__name span {
  font-size: 16px;
  left: 20px;
  right: 20px;
  bottom: 18px;
  }

  .category-wrap__image,
  .category-compact__name {
  height: 140px !important;
  }

  .category-extend__name{
  font-size: 16px;
  }

  .category-extend__image-container {
  height: 135px;
  }

  .product-thumb__price {
  font-size: 16px;
  }

  .products-thumbs_slider .products-thumbs__item {
  flex: 0 0 calc((100% - 3 * 15px) / 2) !important;
  max-width: calc((100% - 3 * 15px) / 2) !important;
  }

}

/* ---------- @media (max-width: 480px) — 4 правил(а) ---------- */
@media (max-width: 480px) {
  .consultant-card, .product-add-to-cart{
  padding: 20px 16px 16px;
  }

  .consultant-card__top {
  align-items: flex-start;
  }

  .consultant-card__name {
  font-size: 18px;
  }

  .consultant-card__row {
  flex-direction: row;
  }

}

/* ---------- @media (max-width: 560px) — 5 правил(а) ---------- */
@media (max-width: 560px) {
  .product-thumb__add-to-cart {
      right: 10px;
      bottom: 10px;
  }

  .product-thumb__compare-price {
  bottom: 30px;
  left: 10px;
  }

  .product-thumb__additional-button {
      padding-right: 9px;
  }

  .brands-thumbs__wrapper {
  gap: 10px 10px;
  }

  .brands-wrap-filters {
      margin-bottom: 10px;
  }

}

/* ---------- @media (max-width: 680px) — 13 правил(а) ---------- */
@media (max-width: 680px) {
  .index-hero {
  padding: 120px 0 32px;
  }

  .index-hero .container {
  padding-left: 16px;
  padding-right: 16px;
  }

  .index-hero__inner {
  gap: 16px !important;
  }

  .index-hero__title {
  font-size: 32px;
  line-height: 1.06;
  margin: 0 0 10px;
  }

  .index-hero__subtitle {
  font-size: 14px;
  line-height: 1.35;
  }

  .index-hero__descr {
  font-size: 12px;
  line-height: 1.35;
  }

  .index-hero__form-col {
  max-width: 100%;
  margin-top:20px;
  }

  .index-hero__form {
  padding: 20px 20px 20px;
  }

  .index-hero__form-title {
  font-size: 14px;
  margin-bottom: 10px;
  }

  /* Multiform: всё ещё в одну строку, но компактнее */
  .index-hero__form .multiform-gap-fields {
  gap: 0 !important;
  }

  .index-hero__form #wahtmlcontrol_fields_field_6_3-1 {
  height: 40px;
  border-radius: 10px;
  font-size: 14px;
  }

  .index-hero__form #multiformField17_3-1 {
  flex: 0 0 120px !important;
  }

  .index-hero__form #multiformField17_3-1 .button {
  height: 40px;
  border-radius: 10px;
  font-size: 14px;
  }

}

/* ---------- @media (max-width: 640px) — 28 правил(а) ---------- */
@media (max-width: 640px) {
  /* главный контейнер колонок -> в одну колонку */
  .product-cart-form__columns{
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  height: auto !important;
  }

  /* обе "колонки" занимают всю ширину */
  .product-cart-form__columns-main,
  .product-cart-form__columns-additional{
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  padding-right: 0 !important;
  }

  /* убираем sticky/прилипание, если оно включалось на десктопе */
  .product-cart-form__blocks,
  .product-cart-form__columns-additional{
  position: static !important;
  top: auto !important;
  }

  /* чтобы внутри additional блоки шли строго друг под другом */
  .product-cart-form__columns-additional .product-cart-form__blocks{
  display: flex !important;
  flex-direction: column !important;
  gap: 20px !important;
  }

  /* корзина и консультант на 100% */
  .product-add-to-cart,
  .consultant-card{
  width: 100% !important;
  max-width: 100% !important;
  }

  /* Телефон: серая «холст» под слайдером вместо пустого белого поля по бокам кадра.
  overflow только у слайдера — иначе position:absolute .product-cart-form__badges
  обрезается родителем (absolute не «выходит» из overflow:hidden). */
  .product-images__images-container {
  background-color: #f0f0f2;
  border-radius: 12px;
  overflow: visible;
  }

  .product-images__images.swiper {
  overflow: hidden;
  border-radius: inherit;
  }

  .product-images__image.swiper-slide:not(.product-images__image_hide) {
  background-color: #f0f0f2;
  }

  .product-also {
  grid-template-columns: 1fr;
  }

  .also-card {
  padding-bottom: 60%;
  }

  /* 1) Сбрасываем десктопные проценты/ширины, чтобы ничего не "уезжало" */
  .footer-content__copyright-container,
  .footer-content__columns-container,
  .footer-content__rekvzs-container,
  .footer-content__contacts-container,
  .footer-content__zakaz-container {
  min-width: 0 !important;
  max-width: none !important;
  width: auto !important;
  padding-right: 0 !important;
  }

  .footer .list-tabs__header {
  padding-bottom: 0;
  }

  /* 2) Главная сетка футера: 2 колонки как на скрине №2 */
  .footer .footer__content .footer-content {
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: auto auto auto auto auto;
  column-gap: 7%;
  row-gap: 22px;
  align-items: start;
  }

  /* отображаем их, когда родитель имеет класс is-open */
  .footer-column_footer-search.is-open .footer-input-container,
  .footer-column_footer-search.is-open .input-search__button-container {
  display: block !important;
  }

  /* стилизуем маленькую кнопку‑лупу */
  .footer-search__toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 10px;
  padding: 0;
  margin-right: 8px;
  background: #162029;
  cursor: pointer;
  }

  /* важно: распаковываем контейнеры, чтобы их дети участвовали в grid */
  .footer-content__columns-container {
  display: contents !important;
  }

  /* footer-columns на мобиле не должен быть flex с width:15% */
  .footer-columns:not(.r-footer__row) {
  display: contents !important;
  }

  .footer-columns:not(.r-footer__row) .footer-columns__column {
  width: auto !important;
  padding-right: 0 !important;
  }

  /* 3) Верхний левый блок: логотип + способы оплаты (на 2 колонки) */
  .footer-content__copyright-container {
  grid-column: 1 / 3;
  grid-row: 1;
  }

  .footer-copyright__payments-currency-container {
  margin-top: 14px !important;
  display: flex !important;
  align-items: center;
  }

  .footer-copyright__payments-currency-container .list-tabs__header {
  padding-top: 0px;
  padding-bottom: 5px;

  }

  .footer-payments {
  display: flex !important;
  flex-wrap: wrap;
  gap: 10px;
  }

  .footer-copyright__links,.footer-copyright__developers {
  display:none;
  }

  /* 4) Поиск: превращаем в иконку справа сверху (как на скрине №2) */
  .footer-columns.footer-column_footer-search {
  grid-column: 2 / 3;
  grid-row: 1;
  justify-self: end;
  align-self: start;
  padding: 0 !important;
  }

  .footer-column_footer-search {
  position: absolute;
  top: -5px; /* Небольшая корректировка по вертикали под высоту лупы */
  right: 0;
  margin: 0 !important;
  width: auto !important;
  z-index: 10;
  }

  /* Контейнер поля поиска */
  .footer-floating__search .footer-field-container {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  min-height: 40px;
  }

  /* Скрываем само поле ввода по умолчанию */
  .footer-floating__search .footer-input-container {
  width: 0;
  opacity: 0;
  overflow: hidden;
  transition: all 0.3s ease; /* Плавное появление */
  position: absolute;
  right: 40px;
  top: 0;
  background: #101316; /* Цвет фона футера, чтобы перекрыть контент */
  z-index: 1;
  }

  /* Состояние, когда поиск открыт */
  .footer-floating__search.is-active .footer-input-container {
  width: calc(100% - 200px); /* Раскрываем почти на всю ширину */
  opacity: 1;
  padding-left: 10px;
  }

}

/* ---------- @media (max-width: 660px) — 7 правил(а) ---------- */
@media (max-width: 660px) {
  /* Основной контейнер — в колонку */
  .reviews-section__content {
  display: flex;
  flex-direction: column;
  gap: 24px;
  }

  .reviews-section__inner {
      padding: 0;
  }

  /* Блок с заголовком и картинкой */
  .reviews-section__image-wrap {
  display: contents;
  }

  /* Заголовок — сверху */
  .reviews-section__title {
  order: 1;
  margin-bottom: 8px;
  }

  /* Виджет отзывов — сразу под заголовком */
  .reviews-section__widget-wrap {
  order: 2;
  width: 100%;
  height: 520px;
  }

  .reviews-section__widget-wrap iframe {
  width: 100%;
  height: 520px !important;
  border-radius: 12px;
  }

  /* Фото команды — последним */
  .reviews-section__image {
  order: 3;
  width: 100%;
  height: auto;
  border-radius: 10px;
  }

}

.product-images__thumb .image-box{
  width:100%;
  height:100%;
}

.product-images__thumb .image-box img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

/* Основной контейнер */
.realized-projects {
  padding-bottom: 90px;
}

.realized-projects__container {
  display: flex;
  flex-direction: column;
  gap: 30px;
  margin-bottom: 20px;
}

/* Карточка проекта */
.realized-project-card {
  display: flex;
  background: #f7f7f7;
  border-radius: 8px;
  overflow: hidden;
  min-height: 400px;
}

.realized-project-card__media {
  flex: 0 0 50%;
}

.realized-project-card__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.realized-project-card__body {
  flex: 1;
  padding: 50px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 20px;
}

.realized-project-card__category {
  font-size: 13px;
  text-transform: uppercase;
  color: #333;
  letter-spacing: 1px;
}

.realized-project-card__body h3 {
  font-family: 'Forum', serif;
  font-size: 32px;
  line-height: 1.2;
  font-weight: 200;
  margin: 0;
}

.realized-project-card__specs {
  display: flex;
  gap: 40px;
  color: #333;
}

.realized-spec-label {
  font-family: 'Manrope';
  display: block;
  font-size: 20px;
  font-weight: 500;
}

.realized-spec-value {
  font-family: 'Manrope';
  font-weight: 400;
  font-size: 14px;
}

.realized-project-card__button {
  width: 180px;
  height: 45px;
  background: #c59d46;
  color: #fff;
  border: none;
  cursor: pointer;
  transition: background 0.3s ease;
  border-radius: 5px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
}

.realized-project-card__button:hover { background: #a8853a; }

.projects-button-wrap {
display: flex;
justify-content: center;
margin-top: 20px;
}

.projects-button-wrap a {
display: inline-block;
font-family: 'Manrope', sans-serif;
font-size: 16px;
color: #333;
text-decoration: none;
border-bottom: 1px solid var(--link-color);
transition: all 0.3s ease;
}

.projects-button-wrap a:hover {
color: var(--link-color);
}

.index__header-designers {
  position: absolute;
  background: none !important;
  width: 100%;
}

.index__header-designers div {
  border: none  !important;
}

.index__header-designers div.header-middle-bar {
  background: none !important;
}

.index__header-designers div.header__bottom-bar div {
  background: none !important;
}

.index__header-designers .header-bottom-bar-links_alt .header-bottom-bar-links__link {
  color: #fff;
}

.index__header-designers .header-middle-bar .link-box,
.index__header-designers .header-middle-bar .link-box .link-box__link_black {
  color: #fff
}

/* ======================================================================
   megashop.common.css
   Перенесено из вендорского файла при обновлении на Megashop 3.0 1.4.11.
   Это правила, которых в теме вендора нет вообще — только ваши дополнения.
   ====================================================================== */
.button_style_inverse_dark {
  color: var(--button-color-dark);
  border-color: var(--button-color-dark);
  background-color: transparent;
  transition: border-color 0.2s ease-in-out, color 0.2s ease-in-out;
}

.button_style_inverse_dark:hover {
  color: var(--button-color);
  border-color: var(--button-color);
  background-color: transparent;
}

.button_style_inverse_dark:disabled {
  background: #fafafa;
  color: #cfcfcf;
}

.button_style_inverse_dark.button_active {
  color: var(--button-color);
  border-color: var(--button-color);
  background-color: transparent;
}

.header .link-box__link,
.r-header .link-box__link {
  color: var(--link-color);
  text-decoration: none;
  cursor: pointer;
  transition: color ease-in-out 0.2s;
  text-transform:uppercase;
  font-size:6px;
  font-weight:bold;
}

.header .link-box__link_black,
.r-header .link-box__link_black{
  color: #1b1b1b;
}

.product-favorite_active .pseudo-link-box__link{color:var(--link-color);}

.blog-post-page__content-container .content-decorator h2 {
  font-size: 20px;
  font-weight: 600;
  font-family: Manrope;
  letter-spacing: 0;
  line-height: 120%;
  margin-bottom: 10px
}

.content-decorator figure img {
  max-width: 100%;
  vertical-align: top;
  height: auto;
  margin: 15px 0 0;
  border-radius: 10px
}

.content-decorator figure:has(figcaption) img {
  /* У картинки закругляем только ВЕРХНИЕ углы */
  border-radius: 10px 10px 0 0;
  margin-bottom: 0;
}

.blog-post-page__author-title {
  padding-left: 10px;
  font-size: 14px;
  vertical-align: middle;
  color: #999999;
  line-height: 1;
}

.blog-post-page__datetime-container .datetime {
  height: 24px;
}

.blog-post-page__datetime-container .datetime .icon-box__icon {
  padding-right: 7px !important;
}

.blog-post-page__author-container {
  color: #333;
  font-size: 14px  
}

.blog-post-tags-wrap {
  margin: 20px 0 0 
}

.slider-block__header-container h2 {
  margin-bottom: 0;
  font-weight: 100
}

.value__label-text,
.value__label-text .product_brand-text {
  color: #CB9C27;
  display: block;
  text-decoration:none
}

.value__value-text {
  color: #999999;
  display: block;
}

.blocks-content__item .content-links {
  font-size: 14px;
  line-height: 1.2;
}

.blocks-content__item .content-links a {
  color: #333333;
}

.blocks-content__item .content-links a:hover {
  color: #CB9C27;
}

.blocks__item-technical,
.blocks__item-advant {
  margin-top:50px;
}

.blocks__item-technical .block_secondary .block__header_text,
.blocks__item-advant .block_secondary .block__header_text,
.blocks__item-news .slider-block__header-text-container,
.blocks__item-brands .slider-block__header-text-container {
  font-size: 48px;
  font-weight: 100;
  font-family: 'Forum', serif;
}

.blocks__item-news .block__header {
  margin: 0 0 30px;
}

.blocks__item-brands .slider-arrows .button_style_gray,
.blocks__item-news .slider-arrows .button_style_gray {
  background: #EEEEEE;
  color: #333;
}

.blocks__item-brands .slider-arrows .button_style_gray .button__icon,
.blocks__item-news .slider-arrows .button_style_gray .button__icon {
  color: #333;
  fill: #333;
}

.blocks__item-news .button_size_l {
  padding: 9px 30px 10px;
  font-size: 14px;
}

.blocks__item-technical img {
  max-width: 100%;
}

.steps {
  padding: 15px 0 0;
}

.steps__list {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

/* Карточка шага */
.steps-card {
  flex: 1 1 220px; 
  padding: 30px 30px 30px;
  border-radius: 10px;
  border: 1px solid #EEEEEE;
  display: flex;
  flex-direction: column;
}

/* Бейдж со сроком */
.steps-card__badge {
  display: inline-flex;          /* или inline-block */
  width: auto;                   /* главное — не 100% */
  max-width: max-content;        /* подстраиваемся под текст */
  align-self: flex-start;        /* в колонке не растягивать по ширине */
  padding: 6px 10px;
  margin-bottom: 15px;
  border-radius: 5px;
  font-size: 11px;
  line-height: 1;
  color: #CB9C27;
  background: #FAF5E9;
  font-weight: 500;
}

.steps-card__badge .svg-icon {
  margin-right:2px;
}

/* Заголовок */
.steps-card__title {
  margin: 0 0 12px;
  font-size: 20px;
  line-height: 100%;
  font-weight: 500;
  color: #333;
}

/* Текст */
.steps-card__text {
  margin: 0;
  font-size: 14px;
  line-height: 120%;
  color: #333333;
}

.supply-cards {
  padding: 40px 0;
}

.supply-cards__inner {
  display: flex;
  gap: 20px;
  max-width: 1320px;
  margin: 0 auto;
}

.supply-card {
  flex: 1 1 0;
  border:#EEEEEE 1px solid;
  border-radius: 10px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.supply-card__image img {
  display: block;
  width: 100%;
  height: auto;              /* картинка не обрезается по высоте */
}

.supply-card__content {
  padding: 25px 30px 28px;
}

.supply-card__image {
  height: 230px;
  overflow: hidden;
}

.supply-card__title {
  margin: 0 0 10px;
  font-size: 24px;
  line-height: 100%;
  font-weight: 500;
  color: #333333;
}

.supply-card__text {
  margin: 0;
  font-size: 14px;
  line-height: 120%;
  color: #333333;
}

/* контейнер трёх карточек */
.product-also {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
  padding-top:10px;
}

/* сама карточка */
.also-card {
  position: relative;
  display: block;
  width: 100%;
  padding-bottom: 60%;              /* пропорция картинки ~16:9 */
  border-radius: 10px;
  overflow: hidden;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  color: #fff;
  text-decoration: none;
}

/* лёгкое затемнение поверх картинки */
.also-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
  180deg,
  rgba(0, 0, 0, 0.05) 0%,
  rgba(0, 0, 0, 0.55) 100%
  );
}

/* подпись внизу слева */
.also-card__caption {
  position: absolute;
  left: 40px;
  right: 40px;
  bottom: 35px;
  z-index: 1;
  font-size: 22px;
  line-height: 100%;
}

/* ховеры */
.also-card:hover::before {
  background: linear-gradient(
  180deg,
  rgba(0, 0, 0, 0.1) 0%,
  rgba(0, 0, 0, 0.7) 100%
  );
}

.also-card:hover {
  transition: transform 0.2s ease-out;
}

.reviews-section {
  padding: 45px 0 25px;
}

.reviews-section__inner {
  max-width: 1320px;     /* подгони под свою сетку */
  margin: 0 auto;
  padding: 0 80px 0 0;
  box-sizing: border-box;
}

.reviews-section__title {
  font-size: 48px;
  line-height: 100%;
  margin: 0 0 40px;
  font-weight: 100;
  font-family: 'Forum';
  letter-spacing: -1px;
}

.reviews-section__content {
  display: flex;
  gap: 80px;
  align-items: stretch;
}

/* левая картинка */

.reviews-section__image-wrap {
  flex: 0 0 48%;
  overflow: hidden;
}

.reviews-section__image {
  display: block;
  width: 100%;
  object-fit: cover;
  border-radius: 10px;
}

/* виджет */

.reviews-section__widget-wrap {
  flex: 0 0 52%;
  border-radius: 10px;
  overflow: hidden;
  border: #EEEEEE 1px solid;
  box-sizing: border-box;
}

.reviews-section__iframe {
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
  box-sizing: border-box;
}

@font-face {
  font-family: 'Forum';
  src: url('fonts/Forum-Regular.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

.block__header_text.category-name {
  margin: 0 0 30px;
}

.content__content .block__header.block__header_text {
  margin: 0 0 30px;
}

.order-page__container .block__header_text {
  margin-top:20px;
}

.slider-arrows .button_icon {
  width: 36px;
  height: 36px;
}

.slider-arrows .button_style_gray {
  background: #CB9C27;
  color: #fff;
}

.slider-arrows .button_style_gray .button__icon {
  color: #fff;
  fill: #fff;
}

.breadcrumbs__wrapper {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  row-gap: 10px;
  max-width: 100%;
}

.breadcrumbs__item_back {
  flex-shrink: 0;
}

.breadcrumbs__back-button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  font-family: inherit;
  font-size: 13px;
  line-height: 1.2;
  color: inherit;
}

/* .svg-icon_fill задаёт position:absolute для иконок в квадратных кнопках — сбрасываем внутри «Назад» */
.breadcrumbs__back-button .breadcrumbs__back-icon {
  flex-shrink: 0;
  position: static;
  inset: auto;
  margin: 0;
  max-width: none;
  max-height: none;
  display: block;
  fill: currentColor;
}

.breadcrumbs__item_current {
  color:#999999; 
}

.breadcrumbs__brothers-button .image-box {
  vertical-align: middle;
  line-height: 0;
}

.footer-payments__item .image-box {
  vertical-align: middle;
}

.footer-content__rekvzs-container {
  min-width: 30%;
  max-width: 30%;
  padding-right: 20px;
}

.footer-content__policy-container {
  min-width: 42%;
  max-width: 42%;
}

.footer-content__contacts-container .footer-rows__row,
.footer-block__content .footer-rows__row {
  color: #B6B8BA;
  font-weight: 300;
}

.footer-content__contacts-container .social__item a,
.footer-content__contacts-container .social__item .svg-icon {
  fill: #fff !important;
  color: #fff;
}

.footer-column_footer-search {
  padding: 0 30px 20px 0;
}

.footer-floating__search {
  flex-grow: 1;
}

.footer-field-container {
  display: flex;
  justify-content: stretch;
}

.footer-input-container {
  flex: auto;
}

.footer-search__field-input {
  width: 100%;
  line-height: 1.2;
  padding: 10px 14px;
  font-size: 14px;
  vertical-align: top;
  outline: none;
  transition: border-color 0.2s ease-in-out;
  border: 0;
  background: #162029;
  color: #B6B8BA;
}

.input-search__button-container {
  line-height: 0;
  overflow: hidden;
  align-self: stretch;
}

.input-search__button-container .button {
  background: #162029;
}

.input-search__button-container .svg-icon {
  fill:#999999
}

.footer-content__zakaz-container {
  min-width: 22%;
  max-width: 22%;
}

.zakaz-container__wrap {
  background: #162029;
  border-radius:10px;
  padding:25px 30px 30px;
}

.zakaz-container__wrap .zakaz-container__title {
  font-size:14px;
  line-height:120%;
  font-weight:500;
  margin-bottom:7px;
}

.zakaz-container__wrap .type-phone .multiform-gap-value {
  margin-bottom:10px !important;
}

.zakaz-container__wrap .type-button button {
  padding: 10px 36px 11px 20px !important;
  position:relative;
}

/* Иконка: svg/icons-sprite.svg */
.zakaz-container__wrap .type-button button::after {
  content: "";
  position: absolute;
  top: 50%;
  right: calc(50% - 35px);
  width: 20px;
  height: 20px;
  transform: translateY(-50%);
  background: url("../svg/icons-sprite.svg#icon-square-arrow-right-enter") center/contain no-repeat;
  /* currentColor в svg как фоне даёт чёрный штрих; на тёмной кнопке сделать контраст */
  filter: brightness(0) invert(1);
  pointer-events: none;
}

.footer-copyright__payments-container .footer-block__header {
  margin-bottom: 5px;
}

.footer-block__footer .social__item .image-box {
  margin-right:10px;
}

.footer .footer-block__header {
  margin-bottom:10px
}

.footer .footer-block__content {
  font-size:11px;
  line-height:1.2;
}

.footer-block__footer {
  margin-top:10px;
}

.footer-rows__row .link-box__link {
  font-size: 11px; 
  text-transform:none;
  font-weight:500;
}

.footer-copyright-row .footer-content__copyright-container,
.footer-copyright-row .footer-content__columns-container,
.footer-copyright-row .footer-content__policy-container {
  padding-top:20px;
}

.footer-copyright-row .image-box {
  color:#999999;
  text-decoration: none
}

.header.header_transparent {
  background: transparent !important;
  position: absolute; /* Если нужно, чтобы шапка накладывалась на контент */
  width: 100%;
  z-index: 100;
}

.header-top-bar-contacts__item_messengers .image-box .svg-icon {
  color: #ffffff;
  fill: #ffffff;
}

/* Двухколоночная раскладка ТОЛЬКО в зоне после тегов */
.blog-post-page__content-container .blog-post-page__layout,
.blog-stream-page .block__content {
  display: flex;
  align-items: flex-start;
  gap: 50px;
}

/* Левая колонка */
.blog-post-page__content-container .blog-post-page__article,
.blog-stream-page .blog-stream-page__stream-container {
  flex: 1 1 auto;
  min-width: 0; /* чтобы контент/картинки не раздували ширину и не ломали флекс */
}

.blog-stream-page .block__content {
  margin-top: 30px
}

/* Правая колонка */
.blog-post-page__content-container .blog-post-page__sidebar,
.blog-stream-page .blog-post-page__sidebar {
  flex: 0 0 32%;     /* ширина сайдбара */
  max-width: 32%;
  flex-direction: column
}

.blog-post-page__content-container {
  align-items: flex-start !important;
}

.blog-post-page__sidebar .blog-post-page__sidebar-h3 {
  font-size: 18px;
  line-height: 100%;
  font-weight: 500;
  margin: 20px 30px 20px;
}

/* 2. Делаем колонку сайдбара липкой */
.blog-post-page__sidebar {
  position: -webkit-sticky !important;
  position: sticky !important;
  /* Увеличиваем отступ, чтобы блок не прятался под липкую шапку (80-120px обычно достаточно) */
  top: 80px !important; 

  /* Убеждаемся, что высота не форсируется */
  height: auto !important;
  align-self: flex-start !important;
}

/* 3. Если нужно прижать именно саму карточку внутри колонки */
.blog-post-page__sidebar-sticky .consultant-card {
  display: block;
  z-index: 10;
}

.blog-stream-page .blog-post-tags-wrap {
  margin-bottom: 20px
}

.project-page{margin:20px 0}

.project-stats{display:flex;gap:20px;margin-bottom:20px}

.project-stat{flex:1;padding:30px;border:1px solid #EEEEEE;border-radius:10px}

.project-stat__number{font-size: 44px;font-weight: 100;font-family: "Playfair Display", serif;letter-spacing: -1px;line-height: 100%;}

.project-stat__label{font-size: 18px;line-height: 100%;font-weight: 500;margin-top:14px}

.project-stat__desc{font-size: 13px;margin-top:4px}

.project-hero img{width:100%;border-radius:10px;margin-bottom:20px}

.project-info-row{display:flex;gap:20px;margin-bottom:20px}

.project-card{flex: 1 1 auto;padding:25px 30px;border:1px solid #eeeeee;border-radius:10px}

.project-card--small{flex: 0 0 32%;}

.project-card .project-card-h3{font-size: 18px;line-height: 100%;font-weight: 500;margin-bottom:15px}

.project-card ul{padding-left:15px;margin:0;color: #333 !important}

.project-card li{margin:0 !important;font-size: 14px;color: #333}

.project-important{display:flex;align-items:center;gap:20px;padding:20px 30px;border:1px solid #eeeeee;border-radius:10px;margin-bottom:60px}

.project-important__icon{width:40px;height:40px;background:#FBF8F0;border-radius:5px;display:flex;align-items:center;justify-content:center;font-weight:600;color: #CB9C27;font-size: 24px;}

.project-important__text {display:block;font-size: 18px;line-height: 100%;font-weight: 500; width:27%}

.project-important__desc {font-size: 14px;color: #333}

.project-section-title{font-size: 48px !important;
font-weight: 100 !important;
font-family: "Playfair Display", serif !important;
letter-spacing: -1px !important;
line-height: 100% !important;margin:60px 0 30px !important}

.project-step{display:flex;gap:20px;padding:30px;border:1px solid #eeeeee;border-radius:10px;margin-bottom:20px}

.project-step__num{color:#CB9C27; font-size: 48px;
font-weight: 100;
font-family: "Playfair Display", serif;
letter-spacing: -1px;
line-height: 100%;min-width:20%}

.project-step__content h3{font-family: 'Manrope', sans-serif;font-size: 18px;
line-height: 100%;
font-weight: 500;margin-bottom:15px;letter-spacing: 0px;}

.project-step__content ul{padding-left:15px;margin:0;color: #333 !important}

.project-step__content li{margin:0 !important;font-size: 14px;color: #333}

.project-step__image img{width:100%;border-radius:10px;margin-top:20px}

.project-page blockquote {margin-bottom:30px}

.project-page p .project-section-important {color: #CB9C27;}

.project-section-itog ul{padding-left:15px;margin:0;color: #333 !important}

.project-section-itog li{margin:0 !important;font-size: 14px;color: #333}

.project--video {border-radius:10px;overflow: hidden}

.p-gallery,.p-gallery *{box-sizing:border-box}

.p-gallery{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  margin:0 auto !important;
  position: relative
}

.p-gallery__viewport{
  width:100% !important;
  max-width:100% !important;
  overflow:hidden !important;
  border-radius:10px;
  background:#fff;
}

.p-gallery__track{
  display:flex;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
  overscroll-behavior-x:contain;
}

.p-gallery__track::-webkit-scrollbar{display:none}

.p-gallery__slide{
  flex:0 0 100%;
  width:100% !important;
  min-width:100% !important;
  max-width:100% !important;
  scroll-snap-align:start;
}

.p-gallery__slide img{
  display:block;
  width:100% !important;
  max-width:100% !important;
  height:auto;
  aspect-ratio:16/9;
  object-fit:cover;
}

.p-gallery__arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:44px;height:44px;
  border-radius:50%;
  border:0;
  background:#c9951a;
  cursor:pointer;
  display:grid;
  place-items:center;
  z-index:2;
}

.p-gallery__arrow:before{
  content:"";
  display:block;
  width:14px;height:14px;
  border:2px solid #fff;
  border-top:0;border-right:0;
  transform:rotate(45deg);
  margin-left:2px;
}

.p-gallery__arrow--prev{left:14px !important}

.p-gallery__arrow--next{right:14px !important}

.p-gallery__arrow--next:before{transform:rotate(-135deg);margin-left:-2px}

.p-gallery__dots{
  display:flex;
  gap:7px;
  justify-content:center;
  padding:14px 0;
  max-width:100% !important;
}

.p-gallery__dot{
  width:20px;height:4px;
  border-radius:99px;
  border:0;
  background:#e2e2e2;
  cursor:pointer;
  flex:0 0 auto;
}

.p-gallery__dot.is-active{background:#c9951a}

.block_pj-slider-wrapper .post-thumb__date-container {
 display: none !important
}

.block_pj-slider-wrapper .post-thumb__title-container {
 height: 45px !important
}

/* ======================================================================
   megashop.shop.order.css
   Перенесено из вендорского файла при обновлении на Megashop 3.0 1.4.11.
   Это правила, которых в теме вендора нет вообще — только ваши дополнения.
   ====================================================================== */
#wa-order-cart-wrapper .wa-products .wa-product-body {
  display: grid;
  grid-template-columns: 90px 1fr 120px; /* картинка | центр | правая колонка */
  grid-template-rows: auto 1fr; /* ← КЛЮЧ */
  grid-template-areas:
  "image details price"
  "image quantity price";
  column-gap: 20px;
  row-gap: 10px;
}

.order-cart-decorator .wa-products .wa-add-actions .js-delete-product svg {
  color: #E0E0E0;
  fill: #E0E0E0;
  margin-top: 5px
}

.order-cart-decorator .wa-products .wa-add-actions .js-delete-product:hover svg {
  color: #333;
  fill: #333;
}

.order-cart-decorator .wa-products .wa-section-footer {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
}

/* Скрывали весь footer ради премиум-цен за единицу — это прятало и «Товар недоступен…» */
.order-cart-decorator .wa-products .wa-section-footer .quantity-toggles__unit-price {
  display: none !important;
}

.order-cart-decorator .wa-quantity-cart-section .wa-product-fractional-prices,
.order-cart-decorator .wa-column-quantity .wa-quantity-actions .js-delete-product {
  display: none
}

.order-form-decorator .wa-agreement-wrapper {
  font-size: 11px;
  line-height: 1.2;
  margin-bottom: 20px;
}

.order-form-decorator .wa-agreement-wrapper .link {
  color: #333
}

.order-form-decorator .wa-agreement-wrapper .checkbox__mark {
  width: 15px;
  height: 15px;
}

.order-form-decorator .wa-agreement-wrapper .checkbox__mark::before {
  width: 10px;
  height: 8px;
}

.order-form-decorator .wa-step-section.wa-step-payment-section {
  margin-top: 15px;
}

.order-form-decorator .wa-comment-section,
.order-form-decorator .wa-step-confirm-section .wa-actions-section {
  margin-top: 15px !important
}

.order-form-decorator .wa-comment-section .wa-link {
  display: none
}

.wa-step-confirm-section .wa-total-section {
  display: none
}

.order-form-decorator .wa-step-payment-section form .wa-methods-list{
  display: flex;
  flex-wrap: nowrap;
  gap: 10px;
  align-items: stretch;
}

/* каждая "кнопка" одинаковой ширины */
.order-form-decorator .wa-step-payment-section form .wa-method-wrapper{
  flex: 1 1 0;
  min-width: 0;
}

.order-page__cart-container {
  flex: none;
  width: calc(55% - 15px);
}

.order-page__form-container {
  flex: none;
  width: calc(45% - 15px);
}

/* ---------- @media (max-width: 767px) — 5 правил(а) ---------- */
@media (max-width: 767px) {
  #wa-order-cart-wrapper .wa-products .wa-product-body {
      grid-template-columns: 70px 1fr 110px;
      grid-template-rows: auto 1fr;
      grid-template-areas:
      "image details price"
      "image quantity price";
      column-gap: 10px;
      row-gap: 10px;
  }

  .order-cart-decorator .wa-products .wa-product {
      padding: 10px;
  }

  .order-page__form-container .block_secondary {
      padding: 30px !important
  }

  .brand-page__image-container img {
  width: 100px;
  height: auto;
  max-width: 100%;
  object-fit: contain;
  filter: grayscale(100%);
  transition: filter 0.35s ease;
  }

  .brand-page__image-container img:hover {
  filter: grayscale(0%);
  }

}

/* ---------- @media (max-width: 992px) — 3 правил(а) ---------- */
@media (max-width: 992px) {
  .realized-project-card { flex-direction: column; min-height: auto; }

  .realized-project-card__media { flex: none; height: 300px; }

  .realized-project-card__body { padding: 30px; }

}

/* ---------- @media (max-width: 600px) — 2 правил(а) ---------- */
@media (max-width: 600px) {
  .realized-project-card__specs { flex-direction: column; gap: 15px; }

  .realized-project-card__button { width: 100%; }

}

/* ---------- @media (min-width: 641px) and (max-width: 1023px) — 27 правил(а) ---------- */
@media (min-width: 641px) and (max-width: 1023px) {
  /* Главная сетка футера */
  .footer .footer__content .footer-content {
  display: grid;
  grid-template-columns: 170px 1fr 1fr 25%;
  grid-template-rows: auto auto auto;
  column-gap: 40px;
  row-gap: 28px;
  align-items: start;
  }

  /* Снимаем проценты/ширины из десктопа */
  .footer-content__copyright-container,
  .footer-content__columns-container,
  .footer-content__rekvzs-container,
  .footer-content__contacts-container,
  .footer-content__zakaz-container {
  width: auto;
  min-width: 0;
  max-width: none;
  padding-right: 0;
  }

  /* Важно: "распаковываем" вложенные контейнеры, чтобы их дети участвовали в grid */
  .footer-content__columns-container { 
  display: contents;
  }

  .footer-columns.footer-columns_size_m {
  display: contents;
  }

  /* Левый блок: логотип + способы оплаты */
  .footer-content__copyright-container {
  grid-column: 1;
  grid-row: 1 / span 2; /* как на скрине: слева высокий столбец */
  }

  /* Верх: поиск на всю ширину справа от левого столбца */
  .footer-column_footer-search {
  grid-column: 2 / 5;
  grid-row: 1;
  padding: 0;
  }

  .footer-floating__search {
  width: 100%;
  }

  /* Центр: Каталог / О нас (берём первые 2 колонки внутри footer-columns_size_m) */
  .footer-columns_size_m > .footer-columns__column:first-child {
  grid-column: 2;
  grid-row: 2;
  width: 100%;
  }

  .footer-columns_size_m > .footer-columns__column:nth-child(2) {
  grid-column: 3;
  grid-row: 2;
  width: 100%;
  }

  /* Справа: реквизиты */
  .footer-content__rekvzs-container {
  grid-column: 4;
  grid-row: 2;
  }

  /* Слева снизу: контакты */
  .footer-content__contacts-container {
  grid-column: 1;
  grid-row: 3;
  }

  /* Снизу справа: "Где мой заказ?" — компактно, ближе к правой части */
  .footer-content__zakaz-container {
  grid-column: 3 / 5;
  grid-row: 3;
  justify-self: end;
  width: 100%;
  max-width: 520px;
  }

  /* Чуть поджимаем отступы внутри колонок, чтобы было похоже на скрин */
  .footer-block_size_l .footer-block__content {
  padding-top: 10px;
  }

  /* Чтобы иконки оплаты аккуратно переносились */
  .footer-payments {
  flex-wrap: wrap;
  gap: 10px;
  }

  /* контейнер полей формы */
  .zakaz-container__form-wrap .multiform-gap-fields {
  display: flex;
  align-items: start;
  gap: 10px;
  }

  /* поле телефона - растягивается */
  .zakaz-container__form-wrap .type-phone {
  flex: 1 1 auto;
  width: auto !important;
  margin: 0 !important;
  }

  /* кнопка - фикс ширина справа */
  .zakaz-container__form-wrap .type-button {
  flex: 0 0 170px; /* можешь поджать/расширить */
  width: auto !important;
  margin: 0 !important;
  }

  /* убрать влияние "колоночных" классов multiform (mf-colm12 часто ломает) */
  .zakaz-container__form-wrap #multiformField6_3-1 .multiform-gap-value,
  .zakaz-container__form-wrap #multiformField17_3-1 .multiform-gap-value {
  width: auto !important;
  }

  .zakaz-container__form-wrap #multiformField6_3-1 input {
  width: 100% !important;
  box-sizing: border-box;
  }

  .zakaz-container__form-wrap #multiformField17_3-1 button {
  width: 100% !important;
  }

  .footer .footer__content .footer-copyright-row .footer-content {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 12px 24px;
  }

  /* "© Все права защищены" оставляем слева */
  .footer-copyright-row .footer-content__copyright-container {
  margin-right: auto;
  flex: 0 0 auto;
  padding-top:5px !important
  }

  /* "Информация... не оферта" уходит вправо */
  .footer-copyright-row .footer-content__columns-container {
  margin-left: auto;
  text-align: right;
  flex: 0 1 50%; /* можно подстроить, чтобы красиво переносилось */
  }

  /* "Политика персональных данных" тоже вправо */
  .footer-copyright-row .footer-content__policy-container {
  margin-left: auto;
  text-align: right;
  flex: 0 0 auto;
  padding-top:0 !important
  }

  /* на всякий: если внутри есть флекс-элементы */
  .footer-copyright-row .footer-content__policy-container .footer-links__item {
  display: flex;
  justify-content: flex-end;
  padding:0;
  margin:0;
  }

  .supply-card__image {
  height: 230px;          /* оставь как у тебя, либо подгони (например 200px) */
  overflow: hidden;
  }

  .supply-card__image img {
  width: 100%;
  height: 100%;           /* ключевое */
  object-fit: cover;      /* чтобы не было "пустого" места */
  object-position: center;
  display: block;
  }

}

/* ---------- @media (min-width: 641px) and (max-width: 885px) — 2 правил(а) ---------- */
@media (min-width: 641px) and (max-width: 885px) {
  /* контейнер полей формы */
  .zakaz-container__form-wrap .multiform-gap-fields {
  display: grid;
  align-items: start;
  gap: 0px;
  }

  .footer .footer__content .footer-copyright-row .footer-content {
  padding-top:10px;
  }

}

/* ---------- @media (max-width: 670px) — 1 правил(а) ---------- */
@media (max-width: 670px) {
  .r-header__list-item_logo .r-header-logo__image-adapt {
  display:block;
  }

}

/* ---------- @media (max-width: 619px) — 1 правил(а) ---------- */
@media (max-width: 619px) {
  .mh-contacts {
  display:none;
  }

}

/* ---------- @media (max-width: 640px) — 31 правил(а) ---------- */
@media (max-width: 640px) {
  /* Стилизуем инпут внутри, чтобы он не схлопывался */
  .footer-search__field-input {
  width: 100% !important;
  min-width: 150px;
  padding: 13px 14px 14px;
  }

  /* Кнопка с лупой */
  .input-search__button-container {
  z-index: 2;
  position: absolute;
  top: 0px;
  right: 10px;
  }

  .footer__content .footer-content {
  position:relative
  }

  .footer-floating__search .input-search__button {
  width: 44px;
  height: 44px;
  padding: 0 !important;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #162029;
  }

  /* 5) 2-я строка: Каталог (слева) / Реквизиты (справа) */
  .footer-columns.footer-columns_size_m {
  display: contents !important;
  }

  .footer-columns_size_m > .footer-columns__column:first-child {
  grid-column: 1;
  grid-row: 2;
  }

  .footer-content__rekvzs-container {
  grid-column: 2;
  grid-row: 2;
  }

  /* 6) 3-я строка: Контакты (слева) / О нас (справа) */
  .footer-content__contacts-container {
  grid-column: 1;
  grid-row: 3;
  }

  .footer-columns_size_m > .footer-columns__column:nth-child(2) {
  grid-column: 2;
  grid-row: 3;
  }

  /* 7) "Где мой заказ?" — на всю ширину (4-я строка) */
  .footer-content__zakaz-container {
  grid-column: 1 / 3;
  grid-row: 4;
  width: 100% !important;
  }

  .zakaz-container__wrap {
  padding: 18px 18px 18px !important;
  border-radius: 12px;
  }

  /* форма: инпут слева, кнопка справа в ОДНУ строку */
  .zakaz-container__form-wrap .multiform-gap-fields {
  display: flex !important;
  align-items: stretch;
  gap: 12px;
  }

  .zakaz-container__form-wrap .type-phone {
  flex: 1 1 auto !important;
  width: auto !important;
  margin: 0 !important;
  }

  .zakaz-container__form-wrap .type-button {
  flex: 0 0 140px !important;  /* под кнопку "Войти" как на скрине */
  width: auto !important;
  margin: 0 !important;
  }

  /* подпись "Номер телефона" в мобиле обычно ломает высоту строки — убираем */
  .zakaz-container__form-wrap #multiformField6_3-1 .multiform-gap-name {
  display: none !important;
  }

  /* убираем влияние mf-colm12 ширин */
  .zakaz-container__form-wrap #multiformField6_3-1 .multiform-gap-value,
  .zakaz-container__form-wrap #multiformField17_3-1 .multiform-gap-value {
  width: auto !important;
  }

  .zakaz-container__form-wrap #multiformField6_3-1 input {
  width: 100% !important;
  margin: 0 !important;
  box-sizing: border-box;
  }

  .zakaz-container__form-wrap #multiformField17_3-1 button {
  width: 100% !important;
  height: 100%;
  white-space: nowrap;
  }

  /* 8) Нижняя строка (оферта + © + политика) — как на скрине №2 */
  .footer .footer__content .footer-copyright-row .footer-content {
  display: flex !important;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 10px 16px;
  }

  /* текст "Информация..." отдельной строкой */
  .footer-copyright-row .footer-content__columns-container {
  order: 1;
  flex: 1 1 100%;
  text-align: left;
  padding-top: 0 !important;
  }

  /* © слева снизу */
  .footer-copyright-row .footer-content__copyright-container {
  order: 2;
  flex: 0 0 auto;
  margin-right: auto;
  padding-top: 0 !important;
  }

  /* политика справа снизу */
  .footer-copyright-row .footer-content__policy-container {
  order: 3;
  flex: 0 0 auto;
  margin-left: auto;
  text-align: right;
  padding-top: 0 !important;
  }

  .footer-copyright-row .footer-content__policy-container .footer-links__item {
  display: flex;
  justify-content: flex-end;
  white-space: nowrap;
  }

  .steps__list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
  }

  .steps-card {
  grid-column: auto;     /* сбрасываем span из 1024 */
  max-width: none;       /* на всякий случай */
  width: 100%;
  }

  /* 1) Делаем одну колонку в grid */
  .content-columns{
  grid-template-columns: 1fr !important;
  gap: 15px !important;
  }

  /* 2) Контент и сайдбар — на 100% */
  .content-columns__content,
  .content-columns__sidebar{
  width: 100% !important;
  max-width: 100% !important;
  }

  /* 3) Сайдбар вниз + отступ сверху */
  .content-columns__sidebar{
  padding: 0 !important;
  margin-top: 15px;
  height: auto !important;
  }

  /* common.css на <1023 прячет ВСЁ в сайдбаре — включаем обратно только наш баннер */
  .content-columns__sidebar > *{
  display: none !important;
  }

  .content-columns__sidebar .favorite-help-banner{
  display: block !important;
  width: 100%;
  }

  /* На всякий — чтобы баннер не сжимался внутри */
  .favorite-help-banner{
  max-width: 100%;
  }

}

/* ---------- @media (min-width: 901px) and (max-width: 1023px) — 4 правил(а) ---------- */
@media (min-width: 901px) and (max-width: 1023px) {
  .steps__list {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr)); /* 6 долей: 3+3 (половины) и 2+2+2 (трети) */
  gap: 20px;
  }

  .steps-card {
  /* сбрасываем ограничения из десктопа/flex */
  max-width: none;
  width: auto;
  margin: 0;
  justify-self: stretch;
  }

  /* первые две карточки — по 1/2 строки */
  .steps-card:nth-child(-n + 2) {
  grid-column: span 3;
  }

  /* остальные три — по 1/3 строки */
  .steps-card:nth-child(n + 3) {
  grid-column: span 2;
  }

}

/* ---------- @media (min-width: 641px) and (max-width: 1023px) @media (max-width: 640px) — 7 правил(а) ---------- */
@media (min-width: 641px) and (max-width: 1023px) {
  @media (max-width: 640px) {
    /* сетка: одна карточка в строке */
    .supply-cards__inner {
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
    }

    /* карточка — обычная вертикаль */
    .supply-card {
    display: block;
    }

    /* картинка — нормальной высоты, без перекосов */
    .supply-card__image {
    height: 200px;          /* можно 180–220, под визуал */
    overflow: hidden;
    border-radius: 12px 12px 0 0;
    }

    .supply-card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
    }

    /* текстовый блок */
    .supply-card__content {
    padding: 14px 16px 18px;
    }

    .supply-card__title {
    font-size: 18px;
    line-height: 1.2;
    margin-bottom: 6px;
    }

    .supply-card__text {
    font-size: 13px;
    line-height: 1.4;
    }

  }
}

/* ---------- @media (max-width: 923px) — 4 правил(а) ---------- */
@media (max-width: 923px) {
  .blog-post-page__content-container .blog-post-page__layout {
  flex-direction: column;
  gap: 20px;
  }

  .blog-post-page__content-container .blog-post-page__sidebar {
  flex: 1 1 auto;
  max-width: 100%;
  }

  .blog-post-page__sidebar .consultant-card,
  .blog-post-page__sidebar .blog-post-page__sidebar-sticky{
  display: none
  }

  .blog-post-page__content-container .blog-post-page__sidebar-sticky {
  position: static; /* sticky на мобилке обычно мешает */
  }

}

/* ---------- @media (max-width: 550px) — 5 правил(а) ---------- */
@media (max-width: 550px) {
  .project-stats{gap:10px;margin-bottom:10px}

  .project-stat{padding:5px 15px 15px}

  .project-stat__desc {line-height: 110%;white-space:normal;
  overflow-wrap:anywhere;
  word-break:break-word;
  hyphens:auto;}

  .project-step {
  display: block;
  }

  .project-step__num {
  margin-bottom: 10px
  }

}

/* ---------- @media (max-width: 580px) — 3 правил(а) ---------- */
@media (max-width: 580px) {
  .project-info-row {
  display: table-row;
  }

  .project-card{flex: 1;margin-bottom:20px}

  .project-card--small{flex: 1;}

}

/* ---------- @media (max-width: 420px) — 4 правил(а) ---------- */
@media (max-width: 420px) {
  .project-important{
  flex-direction:column;
  align-items:flex-start;
  gap:12px;
  padding:16px 18px;
  }

  .project-important__text{
  width:auto;
  font-size:16px;
  }

  .project-important__desc{
  font-size:14px;
  line-height:1.4;
  }

  .project-important__icon{
  width:36px;
  height:36px;
  font-size:20px;
  }

}

/* ---------- @media (max-width: 700px) — 2 правил(а) ---------- */
@media (max-width: 700px) {
  .p-gallery{
  max-width:calc(100vw - 32px) !important;
  width:calc(100vw - 32px) !important;
  margin-left: 0 !important
  }

  .p-gallery__slide img{aspect-ratio:4/5}

}

/* ---------- @media (max-width: 420px) — 7 правил(а) ---------- */
@media (max-width: 420px) {
  .p-gallery{
  max-width:calc(100vw - 24px) !important;
  width:calc(100vw - 24px) !important;
  }

  .p-gallery__arrow{width:40px;height:40px}

  .p-gallery__arrow--prev{left:10px !important}

  .p-gallery__arrow--next{right:10px !important}

  .p-gallery__dots{
  justify-content:center;
  flex-wrap:nowrap;
  overflow-x:auto;
  overflow-y:hidden;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
  padding:10px 0 0;
  gap:5px;
  }

  .p-gallery__dots::-webkit-scrollbar{display:none}

  .p-gallery__dot{width:10px;height:5px}

}

.order-page__form-container .block_secondary {
  background: #F4F4F4;
  padding: 50px;
  border-radius: 10px
}

.order-page__form-container .block_secondary .block__header_text {
  font-size: 32px;
  font-weight: 100;
  font-family: "Playfair Display", serif;
  letter-spacing: -1px;
  line-height: 100%;
  margin-top: 0
}

.order-page__cart-container .block__header {
  margin-bottom: 20px
}

/* ======================================================================
   megashop.shop.favorite.css
   Перенесено из вендорского файла при обновлении на Megashop 3.0 1.4.11.
   Это правила, которых в теме вендора нет вообще — только ваши дополнения.
   ====================================================================== */
/* primary */
/* primary hover */
/* dark */
/* light */
/* light hover */
/* accent */
/* accent hover */
/* stylelint-disable-next-line block-no-empty */
.favorite-page__topmenu {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr;
  gap: 20px;
  align-items: stretch
}

.favorite-page__topmenu .button_style_gray {
  display: block;
  width: 100%;
  height: 50px;
  color: #333;
  font-size: 14px;
  line-height: 120%
}

.favorite-page__topmenu .button_style_gray .icon-box {
  height: 100%;
}

.favorite-page__categories-wrap {
  padding-right:150px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px;
}

/* Родитель — делаем flex-строкой */
.content-columns__content{
  display: flex;
  flex-direction: column;
}

.favorite-page__products .products__bar {
  margin: 0
}

.favorite-page__products .products-bar {
  border: 0;
  padding: 0 0 0 15px
}

.products__recovery-list-button{
  display: none !important;
}

.products__delete-list-button{
  position: absolute;
  left: calc(50% - 30px);
  top:-40px;
  padding: 6px 7px;
  border-radius: 5px;
  background: #FAF5E9;
  color: #CB9C27;
  text-decoration: none;
  font-size: 11px;
  line-height: 1;
  white-space: nowrap;
}

.products__delete-list-button .icon-box__icon {
  padding-left: 5px;
}

.products__delete-list-button .svg-icon {
  fill: #CB9C27;
}

.favorite-page__category_active .favorite-page__category-link{
  background: #CB9C27; /* золото */
  color: #fff;
}

.favorite-page__products-count::before{ content: "("; }

.favorite-page__products-count::after{ content: ")"; }

/* hover */
.favorite-page__category-link:hover{
  filter: brightness(0.98);
}

.favorite-page__products .products-thumbs__wrapper {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.favorite-page__r-categories-container {
  display: none
}

.brand-page__description-text-container {
  margin-top: 30px;
  margin-bottom: 30px
}

.brands-letters__reset {
  position: absolute;
  left: 0;
  top: 0;
height: 30px;
  display: inline-flex;
  align-items: center;
  gap: 0px;
margin-left: 0px !important;
  padding: 7px 6px;
  border-radius: 5px;
border:0;
  background: #FAF5E9;       /* светло-жёлтая */
  color: #CB9C27 !important;            /* тёплый жёлто-коричневый текст */
  font-size: 11px;
  line-height: 1;
  cursor: pointer;

  /* чтобы li не вел себя как обычный пункт списка */
  list-style: none;
  margin: 0;
}

/* ===== Active tag look (как на скрине) ===== */
.brands-filter__item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

/* активная плашка */
.brands-filter__item--active {
  background: #CB9C27; /* горчичный */
  color: #fff;
  box-shadow:none
}

.brands-filter__item--active .pseudo-link-box__icon {
  color: #fff;
  fill: #fff;
}

.brands-filter__item--reset {
  color: #CB9C27;
  fill: #CB9C27;
}

/* “Все ×” справа — светлая жёлтая */
.brands-filter__item--reset {
  background: #FAF5E9;
  color: #CB9C27;
}

/* крестик */
.brands-filter__item .pseudo-link-box__icon,
.brands-letters__reset .pseudo-link-box__icon {
  flex: none;
  opacity: 0.95;
}

/* если у обычных тегов есть hover — добавь мягкий */
.brands-filter__item--active:hover {
  filter: brightness(0.95);
}

.brands-filter__item--reset:hover,
.brands-letters__reset:hover {
  filter: brightness(0.98);
}

/* ===== Brand card image fix for small screens ===== */


.brand-thumb__image-box {
height: 60px;                 /* можно 55–70, подгони визуально */
display: flex;
align-items: center;
justify-content: center;
}

.brand-thumb__image-box img {
max-width: 100%;
max-height: 100%;
width: auto;
height: auto;

object-fit: contain;          /* КЛЮЧЕВОЕ */
display: block;
}

.page_searchpro .searchpro__field-input::placeholder {
  color:#999999;
}

.page_searchpro .searchpro__field-input::-webkit-input-placeholder {
  color:#999999;
}

.page_searchpro .searchpro__field-input::-moz-placeholder {
  color:#999999;
}

.page_searchpro .searchpro__field-input:-ms-input-placeholder {
  color:#999999;
}

.js-r-header .r-search-form .searchpro-wrapper_responsive .searchpro__field-input {
  height: auto;
  min-height: 42px;
  padding-top: 10px;
  padding-bottom: 10px;
}

.js-r-header .r-search-form .searchpro__field-container {
  background: #f5f5f5;
  border-color: #ededed;
}

.page_searchpro .js-r-header .r-search-form .searchpro__field-input {
  padding-left: 12px;
  padding-right: 12px;
}

/* ======================================================================
   megashop.shop.products.css
   Перенесено из вендорского файла при обновлении на Megashop 3.0 1.4.11.
   Это правила, которых в теме вендора нет вообще — только ваши дополнения.
   ====================================================================== */
.filter__header .icon-box {
  width: 100%;
}

.filters__reset-button.button_style_gray {
  background-color: #F4F4F4;
  color: #666666;
  font-size: 13px;
}

/* ======================================================================
   megashop.plugin.shop-cartlinks.css
   Перенесено из вендорского файла при обновлении на Megashop 3.0 1.4.11.
   Это правила, которых в теме вендора нет вообще — только ваши дополнения.
   ====================================================================== */
.cartlinks-plugin-button__icon {
  width: 10px !important;
  height: 10px !important;
}

/* ---------- @media (min-width: 1200px) — 2 правил(а) ---------- */
@media (min-width: 1200px) {
  .order-page__cart-container {
  width: calc(55% - 20px);
  }

  .order-page__form-container {
  width: calc(45% - 20px);
  }

}

/* ---------- @media (min-width: 640px) and (max-width: 1023px) — 4 правил(а) ---------- */
@media (min-width: 640px) and (max-width: 1023px) {
  /* убираем моб. "служебный" ::before, который ломает сетку */
  .order-form-decorator .wa-fields-group::before {
  content: none;
  display: none;
  }

  /* включаем ту же сетку, что и на >=1024 в теме */
  .order-form-decorator .wa-fields-group {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  margin-left: -15px;
  margin-top: -20px;
  }

  .order-form-decorator .wa-fields-group .wa-field-wrapper {
  flex: auto;
  margin-left: 10px;
  margin-top: 10px;

  width: calc(50% - 10px);
  max-width: calc(50% - 10px);
  box-sizing: border-box;
  }

  /* большие поля — на всю ширину (если есть) */
  .order-form-decorator .wa-fields-group .wa-field-wrapper.size-large {
  width: 100%;
  max-width: 100%;
  }

}

/* ---------- @media (max-width: 1023px) — 12 правил(а) ---------- */
@media (max-width: 1023px) {
  .favorite-page__products .products-thumbs__wrapper {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  /* ======================================================================
   megashop.plugin.shop-searchpro.css
   Перенесено из вендорского файла при обновлении на Megashop 3.0 1.4.11.
   Это правила, которых в теме вендора нет вообще — только ваши дополнения.
   ====================================================================== */
  .page_searchpro .searchpro__field-input.js-searchpro__field-input,
  .js-r-header .searchpro__field-input.js-searchpro__field-input {
  border: 1px solid transparent;
  box-sizing: border-box;
  border-radius: var(--inputs-buttons-border-radius);
  }

  .page_searchpro .searchpro__field-input.js-searchpro__field-input:focus,
  .js-r-header .searchpro__field-input.js-searchpro__field-input:focus {
  border: 1px solid #000;
  outline: none;
  }

  .page_searchpro .js-r-header .r-search-form .searchpro__dropdown,
  .js-r-header .r-search-form .searchpro__dropdown,
  .page_searchpro .js-r-header .js-searchpro__dropdown .searchpro__dropdown,
  .js-r-header .js-searchpro__dropdown .searchpro__dropdown {
  top: 100%;
  margin-top: 10px;
  margin-bottom: 0;
  left: 50%;
  transform: none;
  margin-right: 0;
  width: calc(100vw + 2px);
  width: calc(100dvw + 2px);
  max-width: none;
  margin-left: calc(-50vw - 1px);
  margin-left: calc(-50dvw - 1px);
  box-sizing: border-box;
  border: none;
  border-radius: 0;
  box-shadow: none;
  max-height: calc(100vh - 72px);
  max-height: calc(100dvh - 72px);
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-y: contain;
  touch-action: pan-y;
  padding-bottom: env(safe-area-inset-bottom, 0px);
  }

  .page_searchpro .js-r-header .js-searchpro__dropdown,
  .js-r-header .js-searchpro__dropdown,
  .page_searchpro .js-r-search-form.r-search-form_open .js-searchpro__dropdown,
  .js-r-search-form.r-search-form_open .js-searchpro__dropdown {
  background-color: #fff;
  overflow: visible;
  max-height: none;
  }

  .js-r-header .searchpro__field-input.js-searchpro__field-input,
  .page_searchpro .js-r-header .searchpro__field-input.js-searchpro__field-input {
  color: #000;
  -webkit-text-fill-color: #000;
  caret-color: #000;
  }

  .js-r-header .searchpro__field-input.js-searchpro__field-input:-webkit-autofill,
  .page_searchpro .js-r-header .searchpro__field-input.js-searchpro__field-input:-webkit-autofill {
  -webkit-text-fill-color: #000;
  }

  .favorite-page__topmenu {
  grid-template-columns: 1fr 1fr; /* 2 колонки для кнопок */
  gap: 12px;
  align-items: stretch;
  }

  /* Категории на всю ширину (вся первая строка) */
  .favorite-page__categories {
  grid-column: 1 / -1;
  width: 100%;
  }

  /* Убираем искусственный "запас справа", чтобы категории реально были 100% */
  .favorite-page__categories-wrap {
  padding-right: 0;
  }

  /* Кнопки на второй строке, по 50% каждая */
  .favorite-page__add-to-cart-all,
  .favorite-page__pdf-all {
  width: 100%;
  }

  .favorite-page__topmenu .button_style_gray {
  height: 50px; /* у тебя уже так, просто фиксируем */
  }

}

/* ---------- @media (min-width: 768px) — 7 правил(а) ---------- */
@media (min-width: 768px) {
  /* ======================================================================
   megashop.shop.brand.css
   Перенесено из вендорского файла при обновлении на Megashop 3.0 1.4.11.
   Это правила, которых в теме вендора нет вообще — только ваши дополнения.
   ====================================================================== */
  .brand-page__description-container {
  width: 100%;
  }

  .brand-header__container {
  display: flex;
  align-items: center;
  }

  .brand-page__image-container {
  padding-right: 20px;
  width: 120px;
  }

  .brand-page__image-container img {
  filter: grayscale(100%);
  transition: filter 0.35s ease;
  }

  .brand-page__image-container img:hover {
  filter: grayscale(0%);
  }

  .brand-page__content-container {
  margin-top: 30px;
  }

  .category-extend_size_s {
  text-align: left;
  }

}

/* ---------- @media (max-width: 767px) — 7 правил(а) ---------- */
@media (max-width: 767px) {
  .brand-page__description-text-container {
  margin-top: 15px;
  }

  .brand-page .block__content figure {
  margin: 0;
  margin-bottom: 15px;
  }

  .brand-page .block__content figure:last-child {
  margin-bottom: 0;
  }

  .brand-page .block__content img {
  max-width: 100%;
  max-height: 100%;
  }

  .brand-page .block__content .text-center {
  text-align: center;
  }

  .brand-page .block__content .text-right {
  text-align: right;
  }

  .brand-page .block__content .text-justify {
  text-align: justify;
  }

}

/* ---------- @media (max-width: 485px) — 2 правил(а) ---------- */
@media (max-width: 485px) {
  /* ======================================================================
   megashop.app.blog.css
   Перенесено из вендорского файла при обновлении на Megashop 3.0 1.4.11.
   Это правила, которых в теме вендора нет вообще — только ваши дополнения.
   ====================================================================== */
  .posts-thumbs_size_s {
  --cols-count: 2;
  }

  .post-thumb__title-container {
  height: 70px;
  }

}

