/* ====================================================================
   UniShop2: Слайдшоу во всю ширину без горизонтального скролла (Главная)
==================================================================== */

/* Защита от горизонтальной полосы прокрутки */
body:has(.home-page),
.common-home {
   overflow-x: hidden !important;
}

/* 1. Блок слайдера: 100% ширины родителя и нахлест под шапку */
body:has(.home-page) .uni-slideshow_v2,
.common-home .uni-slideshow_v2,
.home-page .uni-slideshow_v2 {
   width: 100% !important;
   max-width: 100% !important;
   margin-left: 0 !important;
   margin-right: 0 !important;
   margin-top: -5px !important; /* запас/нахлест под шапку */
   border: none !important;
   border-radius: 0 !important;
   box-shadow: none !important;
   background: transparent !important;
   overflow: hidden !important;
}

/* 2. Контейнеры слайдов без скруглений и без белого фона */
body:has(.home-page) .uni-slideshow_v2 .uni-slideshow_v2__item,
body:has(.home-page) .uni-slideshow_v2 .owl-item,
body:has(.home-page) .uni-slideshow_v2 .owl-stage,
body:has(.home-page) .uni-slideshow_v2 .owl-stage-outer,
.common-home .uni-slideshow_v2 .uni-slideshow_v2__item,
.home-page .uni-slideshow_v2 .uni-slideshow_v2__item {
   border-radius: 0 !important;
   background: transparent !important;
   height: 100% !important;
}

/* 3. Обертка изображения */
body:has(.home-page) .uni-slideshow_v2 .uni-slideshow_v2__image,
body:has(.home-page) .uni-slideshow_v2 picture,
.common-home .uni-slideshow_v2 .uni-slideshow_v2__image,
.home-page .uni-slideshow_v2 .uni-slideshow_v2__image {
   width: 100% !important;
   height: 100% !important;
   display: block !important;
   padding: 0 !important;
}

/* 4. Заполнение картинкой на 100% без белых полос и искажений */
body:not(.touch-support) .uni-slideshow_v2 .uni-slideshow_v2__image img,
body .uni-slideshow_v2 .uni-slideshow_v2__image img,
.uni-slideshow_v2 .uni-slideshow_v2__img {
   width: 100% !important;
   max-width: 100% !important;
   height: 100% !important;
   min-height: 100% !important;
   max-height: none !important;
   border-radius: 0 !important;
   object-fit: cover !important;
   object-position: center top !important;
}

/* 5. Убираем верхний отступ у main */
body:has(.home-page) main,
.common-home main {
   padding-top: 0 !important;
}

/* ==========================================================================
   Company Introduction Block (.index_company_intr)
========================================================================== */

.index_company_intr {
   font-size: 18px;
   line-height: 1.5;
   margin-bottom: 80px;
   background-position: center;
   background-repeat: no-repeat;
   -webkit-background-size: cover;
   background-size: cover;
   color: #332c2b;
}

/* Контейнер: центрирование и безопасные отступы от краёв */
.index_company_intr .index_bd {
   max-width: 1200px;
   margin: 0 auto;
   padding: 60px 20px 120px;
   box-sizing: border-box;
}

/* Заголовки */
.index_company_intr .company_intr_title h2 {
   line-height: 1.3;
   font-size: 42px;
   margin-top: 0;
   margin-bottom: 30px;
   color: #332c2b;
}

.index_company_intr .company_intr_title h2 .txt_default {
   display: inline-block;
}

.index_company_intr .company_intr_title h2 .txt_impt {
   font-size: 80px;
   vertical-align: top;
   line-height: 1;
   padding-left: 12px;
   font-weight: 700;
}

.index_company_intr .company_intr_title h4 {
   font-size: 24px;
   font-weight: normal;
   line-height: 1.4;
   margin-bottom: 25px;
   color: #554d4c;
}

/* Контентная часть и текст */
.index_company_intr .company_intr_cont {
   width: 60%;
   max-width: 720px;
}

.index_company_intr .company_intr_desc {
   line-height: 1.6;
   margin-bottom: 30px;
   color: #4a4342;
}

/* ==========================================================================
   Стилизация кнопки / ссылки
========================================================================== */

.index_company_intr .company_intr_btn,
.index_company_intr .company_intr_cont a.btn,
.index_company_intr .company_intr_cont a.more-link {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   padding: 12px 32px;
   font-size: 16px;
   font-weight: 600;
   line-height: 1.4;
   color: #ffffff;
   background-color: #332c2b; /* Основной темный цвет под тон блока */
   border: 2px solid #332c2b;
   border-radius: 4px;
   text-decoration: none;
   cursor: pointer;
   transition: all 0.25s ease-in-out;
}

.index_company_intr .company_intr_btn:hover,
.index_company_intr .company_intr_cont a.btn:hover,
.index_company_intr .company_intr_cont a.more-link:hover {
   background-color: transparent;
   color: #332c2b;
   border-color: #332c2b;
   box-shadow: 0 4px 12px rgba(51, 44, 43, 0.15);
}

/* ==========================================================================
   Адаптивность под планшеты и смартфоны
========================================================================== */

@media (max-width: 991px) {
   .index_company_intr .company_intr_cont {
      width: 85%;
   }
   .index_company_intr .company_intr_title h2 .txt_impt {
      font-size: 60px;
   }
   .index_company_intr .index_bd {
      padding-top: 40px;
      padding-bottom: 70px;
   }
}

@media (max-width: 767px) {
   .index_company_intr {
      font-size: 16px;
      margin-bottom: 40px;
   }
   .index_company_intr .index_bd {
      padding: 30px 15px 50px;
   }
   .index_company_intr .company_intr_cont {
      width: 100%;
   }
   .index_company_intr .company_intr_title h2 {
      font-size: 28px;
      margin-bottom: 20px;
   }
   .index_company_intr .company_intr_title h2 .txt_impt {
      font-size: 44px;
      padding-left: 6px;
   }
   .index_company_intr .company_intr_title h4 {
      font-size: 20px;
      margin-bottom: 18px;
   }
   .index_company_intr .company_intr_btn,
   .index_company_intr .company_intr_cont a.btn {
      width: 100%; /* На мобильном кнопка на всю ширину для удобного клика */
      box-sizing: border-box;
   }
}
.home-page .html-module{padding:0px 0px 0px;background:none}
/* Скрываем точку/псевдоэлемент перед текстом кнопки */
.index_company_intr .company_intr_btn::before,
.index_company_intr .company_intr_cont a::before,
.index_company_intr .company_intr_cont a.btn::before {
   display: none !important;
   content: none !important;
}

/* Если кнопка обёрнута в список <ul> / <li> (маркер списка) */
.index_company_intr .company_intr_cont ul,
.index_company_intr .company_intr_cont li {
   list-style: none !important;
   list-style-type: none !important;
   padding-left: 0 !important;
   margin-left: 0 !important;
}

/* Если точка вставлена отдельным тегом иконки (i / span / em) */
.index_company_intr .company_intr_btn i,
.index_company_intr .company_intr_btn span.icon,
.index_company_intr .company_intr_btn .fa {
   display: none !important;
}

.footer-banner {
   margin-bottom: -55px !important;
   position: relative;
   z-index: 2;
}

.footer-banner img {
   display: block;
   width: 100%;
}

.product-banner__item-div {
   position: relative;
   display: flex;
   height: calc(100% - 15px);
   align-items: center;
   margin: 0 0 14px;
   padding: 9px;
   background: var(--product-banner-bg);
   border-radius: var(--border-radius-1);
}

/* ==========================================================================
   Header Compact Layout for Desktop (min-width: 992px)
========================================================================= */

@media (min-width: 992px) {
   /* 1. Reduce header block height and add balanced gap between items */
   header .header-block {
      padding: 10px 0 !important;
      display: flex !important;
      align-items: center !important;
      justify-content: space-between !important;
      gap: 24px !important;
   }
   
   /* 2. Compact logo height */
   header .header-logo__img {
      max-height: 52px !important;
      width: auto !important;
      object-fit: contain !important;
   }
   
   /* 3. Reset individual outer paddings to let flex gap handle spacing */
   header .header-block__item {
      padding-left: 0 !important;
      padding-right: 0 !important;
   }
   
   /* Categories / Catalog button: perfect vertical and horizontal centering */
   header .header-menu__btn {
      display: inline-flex !important;
      align-items: center !important;
      justify-content: center !important;
      height: 38px !important;
      padding: 0 16px !important;
      line-height: 1 !important;
      font-size: 14px !important;
   }
   
   header .header-menu__btn .header-menu__icon {
      margin-right: 8px !important;
      display: inline-block !important;
   }
   
   header .header-menu__btn span {
      margin: 0 !important;
      line-height: 1 !important;
      display: inline-block !important;
   }
   
   /* Search bar: flexible width */
   header .header-block__item-search {
      flex: 1 1 auto !important;
      max-width: 500px !important;
   }
   
   /* Phone font sizing */
   header .header-phones__main {
      font-size: 15px !important;
   }
   
   /* 4. Compact navigation menu bar */
   header .main-menu {
      margin-top: 0 !important;
   }
   
   header #menu2 .menu__level-1-a,
   header #menu .menu__level-1-a {
      padding-top: 10px !important;
      padding-bottom: 10px !important;
      padding-left: 14px !important;
      padding-right: 14px !important;
      font-size: 14px !important;
   }
   
   /* Spacing between menu links */
   header #menu2 .menu__level-1-li {
      margin: 0 4px !important;
   }
}

.footer-banner {
   position: relative;
   z-index: 1;
   margin-bottom: 80px;
   background: #F8F1DB; /* если нужен сам фон блока */
}

.footer-banner img {
   position: relative;
   z-index: 2;
   width: 100%;
   display: block;
}

.footer-banner::after {
   content: '';
   position: absolute;
   z-index: 1;
   
   bottom: -50px;
   left: 0;
   right: 0;
   height: 250px;
   
   /* светлая тень цветом #F8F1DB */
   background: linear-gradient(
   90deg,
   rgba(248, 241, 219, 0) 0%,
   rgba(248, 241, 219, 0) 45%,
   rgba(248, 241, 219, 9.9) 100%
   );
   
   filter: blur(50px);
   -webkit-filter: blur(50px);
   
   border-radius: 100px;
   pointer-events: none;
   
   transform: perspective(700px) rotateX(3deg);
}