:root {
  scroll-padding: 5vh;
  scroll-behavior: smooth;

  @media (prefers-reduced-motion: reduce) {
    scroll-behavior: auto;
  }
}

body {
  background: white;
}

.header-redesign {
  background: #f5f5f5;
  height: 110px;
  border-bottom: solid 0 #dedede;
  margin-bottom: 17px;
}

a {
  color: var(--c-black-darker);

  @media (hover: hover) {
    transition-property: color;
    transition-duration: var(--root-transition-duration);
    transition-timing-function: var(--root-transition-timing-function);

    &:hover {
      color: var(--c-orange);
    }
  }
}

#fixed-buttons {
  display: none
}

@media (min-width: 1200px) {
  .container {
    max-width: 1190px !important;
  }
}

@media (max-width: 1200px) {
  .container {
    max-width: 1190px !important;
  }
}

.top__header--block {
  width: 100%;
  border-bottom: solid 1px #e6e6e6;
  height: 47px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.top__header--address {
  color: #000;
  font-size: 12px;
  font-family: Arial;
}

.top__header--city {
  font-weight: bold;
  margin-right: 10px;
}

.top__header--street {
  color: #808080;
  margin-right: 17px;
}

.top__header--email {
  color: #808080;
  padding-left: 17px;
  border-left: solid 1px #808080
}

.top__header--email a {
  color: #000;
  text-decoration: none
}


.top__links--list {
  display: flex;
  align-items: center;
  justify-content: right;
  margin: 0;
  padding: 0;
  height: 47px
}

.top__links--item {
  margin-left: 25px;
}

.top__links--item a {
  color: #1A1A1A !important;
  opacity: 70%;
  font-family: Arial;
  font-size: 14px !important;
  text-decoration: none
}

.top__links--sale {
  padding-left: 18px;
  background: url('/assets/svg/sales.svg') left center no-repeat;
}

.top__links--byuers {
  padding-right: 12px;
  background: url('/assets/svg/byuers_chevron.svg') 98% center no-repeat;
  anchor-name: --top-links-buyers;

  &:hover .top__links--buyers-menu-wrap {
    display: block;
  }

  .top__links--buyers-menu-wrap {
    display: none;
    position: absolute;
    position-anchor: --top-links-buyers;
    top: anchor(bottom);
    right: anchor(right);
    z-index: 1000;
    padding: 15px 20px;
    background-color: #fff;
    box-shadow: rgb(0 0 0 / 0.1) 0 5px 15px;

    li:not(:first-child) {
      margin-top: 5px;
    }

    a {
      display: block;
      width: 100%;
    }
  }
}


.bottom__header--block {
  width: 100%;
  padding-top: 22px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.bottom__header--logo {
  display: flex;
  align-items: center;
  justify-content: left;
}

.bottom__header--logo a.logo__header--bottom img {
  width: 152px;
  height: 22px;
}

.bottom__header--logo a.logo__header--bottom {
  margin-right: 62px;
}

.bottom__header--catalog {
  border-radius: 5px;
  height: 40px;
  background: #EF8D00;
  padding: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.header__catalog--text {
  font-family: Arial;
  font-size: 14px;
  font-weight: bold;
  color: #fff;
  padding-left: 22px;
  background: url('/assets/svg/catalog.svg') left center no-repeat;
}

.bottom__header--search {
  margin-left: 12px;
  height: 40px;
  position: relative;
  background: #E6E6E6;
  border-radius: 5px;
  width: 257px;
}

.bottom__header--search input {
  background: #E6E6E6;
  border: 0;
  border-radius: 5px;
  padding-left: 36px;
  font-size: 12px;
  font-family: Arial;
  outline: none;
  height: 40px;
}

.button__header--search {
  position: absolute;
  z-index: 2;
  top: 50%;
  transform: translateY(-50%);
  left: 12px;
  border: 0;
  height: 12px;
  width: 12px;
  outline: none;
  background: transparent;
  padding: 0;
  background: url('/assets/svg/search.svg') left center no-repeat;
}

.bottom__header--phone {
  margin-left: 17px;
}

.bottom__header--phone a {
  color: #000 !important;
  font-size: 16px !important;
  font-weight: bold !important;
  letter-spacing: -2% !important;
  text-decoration: none !important
}

.bottom__header--shedule {
  color: #808080;
  font-size: 12px;
}

.bottom__header--buttons {
  display: flex;
  align-items: center;
  justify-content: right;
}

.bottom__header--buttons a {
  height: 40px;
  font-family: Arial;
  padding: 0px 10px !important;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff !important;
  border-radius: 5px;
  font-weight: bold !important;
  font-size: 14px !important;
  line-height: 100% !important;
  text-decoration: none !important;
  white-space: nowrap;
}

.bottom__header--calculator {
  background: #0C8E0F;
  margin-right: 17px;
}

.bottom__header--measurer {
  background: #AB0814;
}

.bottom__header--burger {
  background: #AB0814;
  height: 46px;
  width: 46px;
  display: none !important;
}


.main__page--banner {
  margin-bottom: 10px;
  width: 100%;
  height: 500px;
  color: #fff;
  background: var(--main-page-banner-bg) top left / cover no-repeat;
  border-radius: 5px;
  position: relative;

  @media (width < 1200px) {
    background-image: var(--main-page-banner-bg-960);
  }
  @media (width < 960px) {
    background-image: var(--main-page-banner-bg-640);
  }
  @media (width < 640px) {
    background-image: var(--main-page-banner-bg-480);
  }
  @media (width < 480px) {
    background-image: var(--main-page-banner-bg-320);
  }
}

nav.mainnavigation.hide-on-mobile.fixed {
  position: relative !important;
  top: 0;
  left: 0;
}

.banner__overlay--block {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  background: #000;
  opacity: 20%;
  width: 100%;
  height: 100%;
  border-radius: 5px;
}

.banner__inner--block {
  position: relative;
  z-index: 2;
  height: 100%;
  width: 100%;
}

.banner__content--block {
  position: absolute;
  bottom: 70px;
  left: 70px;
  z-index: 1;
}

.banner__heading--title {
  letter-spacing: 1px;
  font-family: Roboto;
  font-weight: 700;
  font-size: 42px;
  line-height: 39px;
  letter-spacing: -1px;
  margin-bottom: 7px !important;
  border: 0 !important;
  font-style: normal !important;
  max-width: 580px;
  padding: 0 !important
}

.banner__heading--title::after {
  display: none !important;
}

.banner__time--block {
  height: 36px;
  width: 146px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: solid 1px #fff;
  border-radius: 30px;
  margin-bottom: 20px;
  font-family: Roboto;
  font-weight: 600;
  font-size: 14px;
  line-height: 100%;
  letter-spacing: -2%;
}


.banner__text--block {
  margin: 20px 0px;
  max-width: 273px;
  opacity: 80%;
  font-family: Arial;
  font-weight: 400;
  font-style: Regular;
  font-size: 14px;
  line-height: 100%;
  letter-spacing: -3%;
}

.banner__text--button {
  width: 128px;
  height: 46px;
  color: #fff;
  text-decoration: none !important;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #AB0814;
  border-radius: 5px;
  font-family: Arial;
  font-weight: bold;
  font-size: 14px;
  line-height: 100%;
  letter-spacing: 0%;
  margin-top: 20px;
}

.banner__squares--block {
  display: flex;
  flex-direction: row;
  gap: 15px;
  position: absolute;
  bottom: 20px;
  right: 20px;
}

.banner__square--block {
  width: 180px;
  height: 167px;
  background: #FFFFFF4D;
  padding: 15px;
  border-radius: 5px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.banner__square-icon--block {
  width: 23px;
  height: 20px;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

.banner__text-icon--block {
  font-family: Arial;
  font-weight: 400;
  font-size: 14px;
  line-height: 120%;
}

.main-links--block {
  display: flex;
  flex-direction: row;
  gap: 10px;
}

.main-links__item--block {
  display: flex;
  flex-direction: column;
  width: 20%;
  flex: 1;
}

.main-links__top--block {
  flex: 1;
  display: flex;
  flex-direction: column;
  background: #F5F5F5;
  border-radius: 5px;
  overflow: hidden;
  margin-bottom: 10px;
}

.main-links__text--block {
  flex: 1;
  display: flex;
  flex-direction: column;
  padding-top: 20px;
  padding-right: 15px;
  padding-left: 15px;
}

.main-links__img--block {
  height: 150px;
  width: 100%;
  background-image: var(--main-links-img);
  background: center / cover no-repeat;

  @media (width < 1200px) {
    background-image: var(--main-links-img-320);
  }
}

.main-links__title--block {
  font-family: Roboto;
  font-weight: 700;
  font-size: 16px;
  color: #1A1A1A;
  margin-bottom: 10px;
}

.main-links__info--block {
  font-family: Arial;
  font-weight: 400;
  font-size: 14px;
  color: #1A1A1A;
}

.main-links__link--block {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 46px;
}

.main-links__link--button {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  color: #AB0814;
  border-radius: 5px;
  overflow: hidden;
  background-color: white;
  border: 1px solid #AB0814;
  transition: 0.3s;
  height: 46px;
  justify-content: center;
  font-family: Arial;
  font-weight: 700;
  font-size: 14px;
}

.main-links__link--button:hover {
  color: white;
  background-color: #AB0814;
  text-decoration: none;
}

.slider-arrows {
  display: none;
}

.main__page--banner + .catalog-categories--block {
  margin-top: 10px;

  @media (width < 558px) {
    margin-top: 40px;
  }
}
.catalog-categories--block, .advantages--block, .partners--block, .stages--block, .materials--block {
  margin-bottom: 80px;
}

.advantages--block h2, .partners--block h2, .stages-int--block h2, .stages--block.mob-block h2, .materials--block h2 {
  margin-bottom: 30px;
}

.advantages-list--block, .stages-list--block {
  display: flex;
  flex-direction: row;
  gap: 10px;
}

.advantages-item--block, .stages-item--block {
  width: 25%;
  display: flex;
  flex-direction: column;
  padding: 20px;
  border-radius: 5px;
  background: #F5F5F5;
}

.advantages-icon--block {
  height: 54px;
  background-size: contain;
  background-position: left;
  background-repeat: no-repeat;
  margin-bottom: 50px;
}

.advantages-title--block {
  font-family: Roboto;
  font-weight: 700;
  font-size: 16px;
  line-height: 100%;
  letter-spacing: -2%;
  margin-bottom: 15px;
}

.advantages-text--block {
  font-family: Arial;
  font-weight: 400;
  font-size: 14px;
  line-height: 110%;
  padding-right: 40px;
}

.partners-sliders-container, .clients-sliders-container {
  display: flex;
  flex-direction: column;
  gap: 30px;
}

.partners-slider-wrapper, .clients-slider-wrapper {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.partners-slider-track, .clients-slider-track {
  display: flex;
  width: max-content;
}

.partners-slider-item, .clients-slider-item {
  flex: 0 0 auto;
  padding: 5px;

  img {
    width: 234px;
    height: 234px;
    object-fit: contain;
    border-radius: 5px;
    background-color: #F5F5F5;
    transition: transform 0.3s ease;

    &:hover {
      transform: scale(1.05);
    }
  }
}

.partners-desktop-sliders {
  display: flex;
  flex-direction: column;
}

.partners-mobile-sliders {
  display: none;
}

.cursor-grab {
  cursor: grab;
}

.cursor-grabbing {
  cursor: grabbing;
}

.stages-int--block {
  background-image: var(--order-stages-bg, url(/assets/img/new/stages/stages.png));
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  border-radius: 5px;

  @media (1200px > width >= 960px) {
    background-image: var(--order-stages-bg-960, url(/assets/img/new/stages/stages.png));
  }
}

.stages-int--block h2 {
  color: white;
  padding: 50px 50px 250px;
}

.stages-list--block {
  display: flex;
  flex-direction: row;
  padding: 10px;
  gap: 10px;
}

.stages-item--block {
  display: flex;
  flex-direction: column;
  background: #FFFFFF4D;
  backdrop-filter: blur(15px);
  padding: 15px;
  width: 20%;
  border-radius: 5px;
  height: 200px;
  justify-content: space-between;
}

.stages-item-top--block {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  width: 100%;
  align-items: center;
}

.stages-item-icon--block {
  width: 40px;
  height: 40px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.stages-item-number--block {
  font-family: Arial;
  font-weight: 500;
  font-size: 16px;
  line-height: 100%;
  color: white;
}

.stages-item-bottom--block {
  display: flex;
  flex-direction: column;
}

.stages-item-title {
  font-family: Roboto;
  font-weight: 700;
  font-size: 16px;
  line-height: 100%;
  margin-bottom: 10px;
  color: white;
}

.stages-item-text {
  font-family: Arial;
  font-weight: 400;
  font-size: 14px;
  line-height: 100%;
  color: white;
}

.mob-block {
  display: none;
}

.materials-categorie-top--block {
  background: #F5F5F5;
  height: 58px;
  border-radius: 5px;
  width: 100%;
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 7px 7px 7px 20px;
  justify-content: space-between;
  margin-bottom: 30px;
}

.materials-categorie-title--block {
  font-family: Roboto;
  font-weight: 700;
  font-size: 16px;
  line-height: 100%;
}

.materials-categorie-arrow--block {
  width: 40px;
  height: 40px;
  background: white;
  border-radius: 5px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.materials-items--block {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 30px 30px;
  overflow: hidden;
  transition: max-height 0.3s ease-out;
  margin: 0;
}

.materials-items--block.open {
  margin: 50px 0;
  transition: max-height 0.3s ease-out, margin 0.3s ease-out;
}

.materials-categorie-arrow--block.rotated svg {
  transform: rotate(90deg);
  transition: transform 0.3s ease;
}

.materials-categorie-arrow--block svg {
  transition: transform 0.3s ease;
}

.materials-item--block {
  width: calc(33.33% - 20px);
  display: flex;
  flex-direction: column;
}

.materials-item-top--block {
  display: flex;
  flex-direction: row;
  align-items: end;
  justify-content: space-between;
  margin-bottom: 15px;
  height: 75px;
}

.materials-item-left--block {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
}

.materials-item-left--block a img {
  max-height: 46px;
  max-width: 135px;
  margin-bottom: 5px;
}

.materials-item-img--block {
  height: 46px;
  display: flex;
  align-items: center;
}

.materials-item-link--block {
  font-family: Roboto;
  font-weight: 600;
  font-size: 14px;
  line-height: 100%;
  color: #1A1A1A;
}

.materials-item-link--block span {
  color: #0C8E0F;
}

.materials-item-right--block .color-href-a {
  height: 36px;
  background: white;
  color: #EF8D00;
  border-radius: 100px;
  border: 1px solid #EF8D00;
  transition: 0.3s;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px;
}

.materials-item-right--block .color-href-a:hover {
  background: #EF8D00;
  color: white;
  text-decoration: none;
}

.materials-item-bottom--block {
  display: flex;
  flex-direction: row;
  gap: 10px;
}

.materials-item-bottom--block a {
  width: 25%;
  overflow: hidden;
}

.materials-item-bottom--block a img {
  height: 84px;
  border-radius: 5px;
  overflow: hidden;
  margin-bottom: 5px;
  width: 100%;
}

.materials-item-bottom--block span {
  font-family: Roboto;
  font-weight: 600;
  font-size: 12px;
  line-height: 100%;
  color: #1A1A1A;
  display: flex;
  opacity: 0.6;
}


.materials-show-more {
  display: none;
  width: 160px;
  text-align: center;
  padding: 15px 20px;
  background: white;
  border: 1px solid #AB0814;
  border-radius: 5px;
  margin-top: 20px;
  cursor: pointer;
  font-size: 16px;
  color: #AB0814;
  font-weight: bold;
  transition: 0.3s;
}

.show-more-container {
  display: flex;
  flex-direction: column;
  align-items: center;
}


.show-more-btn {
  width: 160px;
  text-align: center;
  padding: 15px 20px;
  background: white;
  border: 1px solid #AB0814;
  border-radius: 5px;
  margin-top: 20px;
  cursor: pointer;
  font-size: 16px;
  color: #AB0814;
  font-weight: bold;
  transition: 0.3s;
}

.materials-show-more:hover {
  background: #AB0814;
  color: white;
}

.show-more-btn:hover {
  background: #AB0814;
  color: white;
}

.custom-table-container {
  width: 100%;
  margin: 20px 0;
  overflow-x: auto;
}

.custom-table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #ddd;
}

/* Стили для первой строки */
.header-row td {
  background-color: #AB0914;
  color: white;
  text-align: center;
  vertical-align: middle;
  border: 1px solid #ddd;
  font-family: Roboto;
  font-weight: 400;
  font-size: 13px;
  line-height: 18px;
}

.main-title {
  padding: 15px;
}

.price-title {
  padding: 15px;
  border-bottom: 1px solid #ffffff;
  font-family: Roboto;
  font-weight: 400;
  font-size: 13px;
  line-height: 18px;
}

.price-unit {
  padding: 15px;
  font-family: Roboto;
  font-weight: 400;
  font-size: 13px;
  line-height: 18px;
}

.main-title {
  width: 66.66%;
  font-size: 18px;
  font-weight: bold;
}

.price-info {
  width: 33.33%;
}

/* Стили для строк с продуктами */
.product-row td {
  background-color: white;
  color: black;
  border: 1px solid #D6D6D6;
  vertical-align: top;
}

.brand-col, .series-col, .price-col {
  width: 33.33%;
}

.brand-col {
  position: relative;
}

/* Бренд колонка */
.brand-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
}

.brand-logo {
  min-height: 38px;
  max-height: 44px;
  max-width: 112px;
  background-position: left;
  background-size: contain;
  background-repeat: no-repeat;
  height: 100%;
  width: 100%;
}

.discount-badge {
  background-color: #F5F5F5;
  color: #EF8D00;
  padding: 8px 12px;
  border-radius: 100px;
  display: flex;
  align-items: center;
  height: 40px;
  gap: 5px;
  font-family: Arial;
  font-weight: 700;
  font-size: 13px;
  vertical-align: middle;
}

.discount-icon {
  display: flex;
  align-items: center;
  justify-content: center;
}

.country-info {
  display: flex;
  align-items: center;
  gap: 5px;
  font-family: Arial;
  font-weight: 400;
  font-size: 13px;
  line-height: 19.5px;
  vertical-align: middle;
  color: #393939;
}

.country-icon {
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Серии колонка */
.series-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 15px;
  border-bottom: 1px solid #D6D6D6;
}

.series-item:last-child {
  border-bottom: none;
}

.series-item {
  font-family: Arial;
  font-weight: 400;
  font-size: 13px;
}

.tooltip-quest-container {
  position: relative;
  display: inline-block;
}

.question-icon {
  cursor: pointer;
  padding: 4px;
  display: flex;
  align-items: center;
}

.tooltip-quest {
  display: none;
  position: absolute;
  background: white;
  border: 1px solid #ddd;
  padding: 10px;
  border-radius: 4px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  z-index: 1000;
  width: 200px;
  bottom: calc(100% + 10px); /* появляется сверху с отступом */
  left: 50%;
  transform: translateX(-50%);
  font-size: 12px;
  color: #333;
}

.tooltip-quest-arrow {
  position: absolute;
  top: 100%; /* стрелка внизу тултипа */
  left: 50%;
  transform: translateX(-50%);
  width: 10px;
  height: 10px;
  background: white;
  border-right: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
}

.tooltip-quest-container.active .tooltip-quest {
  display: block;
}

/* Цены колонка */
.price-item {
  align-items: center;
  padding: 15px;
  border-bottom: 1px solid #D6D6D6;
  font-family: Arial;
  font-weight: 700;
  font-size: 13px;
  line-height: 19.5px;
  display: flex;
  justify-content: end;
}

.price-item:last-child {
  border-bottom: none;
}

.brand-content {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 115px;
  padding: 15px;
}

.brand-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: auto; /* отталкивает вверх */
}

.country-info {
  display: flex;
  align-items: center;
  gap: 5px;
  font-size: 14px;
  color: #666;
  margin-top: auto; /* отталкивает вниз */
}


.old-price {
  text-decoration: line-through;
  color: #393939;
  font-weight: normal;
  margin-left: 5px;
  font-family: Arial;
  font-weight: 400;
  font-size: 13px;
  line-height: 19.5px;
  text-align: right;
  vertical-align: middle;

}

/* Скрытые строки */
.hidden-row {
  display: none;
}

.hidden-row.show {
  display: table-row;
  animation: slideDown 0.3s ease-out;
}

@keyframes slideDown {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Кнопка "Показать еще" */
.show-more-container {
  text-align: center;
  margin-top: 20px;
}

.footer-redesign {
  background: #262626;
  padding-top: 80px;
  padding-bottom: 80px;
}

.footer-desc {
  display: flex;
  flex-direction: row;
  gap: 80px;
}

.footer-first {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 20%;
}

.footer-first-top {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.footer-logo {
  width: 203px;
  height: 39px;
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  margin-bottom: 20px;
}

.footer-copyright {
  font-family: Arial;
  font-weight: 400;
  font-size: 13px;
  line-height: 100%;
  color: #FFFFFF;
  margin-bottom: 20px;
  opacity: 0.7;
  white-space: nowrap;
}

.footer-buy a {
  height: 40px;
  width: 145px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: #FFFFFF !important;
  font-family: Arial;
  font-weight: 700;
  font-size: 14px;
  line-height: 100%;
  border-radius: 5px;
  background-color: #0C8E0F;
  transition: 0.3s;
  border: 1px solid #0C8E0F;
}

.footer-buy a:hover {
  background-color: #FFFFFF;
  color: #0C8E0F !important;
  text-decoration: none;
}

.footer-cards {
  display: flex;
  gap: 20px;
}

.footer-second {
  width: 60%;
}

.footer-menu {
  display: flex;
  flex-direction: row;
  gap: 40px;
}

.footer-menu-column {
  width: 33.33%;
}

.footer-menu {
  padding-top: 0;
}

.footer-menu-title {
  font-family: Arial;
  font-weight: 700;
  font-size: 14px;
  line-height: 100%;
  text-transform: uppercase;
  color: #FFFFFF;
}

.footer-menu-column ul {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 0;
}

.footer-third {
  width: 20%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.footer-phone {
  font-family: Arial;
  font-weight: 700 !important;
  font-size: 20px !important;
  line-height: 100%;
  color: white !important;
  margin-bottom: 15px;
}

.footer-mail {
  display: flex;
  align-items: center;
  margin-bottom: 15px;
}

.footer-mail a {
  font-family: Arial;
  font-weight: 400;
  font-size: 13px;
  line-height: 100%;
  color: white !important;
  margin-left: 8px;
}

.footer-socials {
  margin-top: 15px;
  display: flex;
  flex-direction: row;
  gap: 10px;
}

.footer-socials a {
  width: 40px;
  height: 40px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  transition: 0.3s;
}

.footer-socials a:hover {
  transform: scale(1.03);
}

.footer-socs {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.plansh-footer {
  display: none;
}

.footer-card img {
  display: flex !important;
}

.plansh3-footer {
  display: none;
}

.plansh4-footer {
  display: none;
}

.fancybox-overlay-fixed {
  z-index: 9999;
}

.fancybox-title-float-wrap .child {
  white-space: normal;
}

/* Стили для выпадающего меню каталога */
.catalog-dropdown {
  display: none;
  position: absolute;
  top: 125%;
  left: 0;
  width: 100%;
  background: white;
  border-top: 1px solid #e0e0e0;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
  z-index: 1000;
  max-height: 80vh;
  overflow-y: auto;
  border-radius: 10px;
}

.catalog-dropdown.active {
  display: flex;
}

.catalog-container {
  display: flex;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  min-height: 400px;
}

.catalog-first-level {
  width: 250px;
  padding: 20px 0;
}

.catalog-second-level {
  flex: 1;
  background: white;
  display: none;
  border-left: 1px solid #e0e0e0;
  height: fit-content;
  padding-top: 40px;
  padding-bottom: 20px;
  padding-right: 20px;
}

div.type_menu {
  font-family: Arial;
  font-weight: 700;
  font-size: 16px;
  line-height: 100%;
  text-shadow: none;
  color: #1A1A1A;
  font-style: unset;
  border: none;
  padding: 0 !important;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  gap: 10px;
}

.catalog-second-level.active {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

.first-level-item {
  padding: 12px 20px;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  transition: background-color 0.2s;
  font-size: 14px;
  color: #333;
}

.first-level-item:hover {
  background: #e8e8e8;
}

.first-level-item.active {
  background: #e0e0e0;
  font-weight: bold;
}

.first-level-item.has-children::after {
  content: "›";
  font-size: 16px;
  color: #666;
}

.second-level-category {
  padding-bottom: 25px;
  padding-left: 20px;
  width: 33.33%;
}

.type_menu {
  display: block;
  font-weight: bold;
  margin-bottom: 10px;
  color: #333;
  font-size: 14px;
  border-bottom: 1px solid #eee;
  padding-bottom: 5px;
}

.third {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  position: relative;
  flex-direction: column;
  left: unset;
  top: unset;
}

.third li {
  margin-bottom: 8px;
  width: unset;
}

.third li a {
  display: flex;
  padding: 8px 0;
  color: #555;
  text-decoration: none;
  transition: color 0.2s;
  border-bottom: 1px solid #f5f5f5;
  font-size: 13px;
}

.second-level-category .third li a {
  font-family: Arial !important;
  font-weight: 400 !important;
  font-size: 14px !important;
  line-height: 100% !important;
  color: #1A1A1A;
  font-style: unset !important;
  text-shadow: none !important;
  display: flex;
  justify-content: space-between;
  border: none !important;
  padding: 0 0 10px !important;
  transition: 0.3s;
}

.second-level-category .third li a:hover {
  color: #EF8D00;
}

.second-level-category .third li a span {
  font-family: Arial !important;
  font-weight: 400 !important;
  font-size: 14px !important;
  line-height: 100% !important;
  color: #1A1A1A;
  font-style: unset !important;
  text-shadow: none !important;
  margin: 0 !important;
}

.third li a:hover {
  color: #000;
}

.third li a span {
  display: block;
  font-size: 11px;
  color: #888;
  margin-top: 2px;
}

.first-level-item span {
  font-family: Arial;
  font-weight: 400;
  font-size: 14px;
  line-height: 100%;
  color: #1A1A1A;
}

/* Стили для триггера каталога */
.bottom__header--catalog {
  position: relative;
  cursor: pointer;
}

.header__catalog--text {
  display: flex;
  align-items: center;
  gap: 5px;
}

.header__catalog--text::after {
  content: "▼";
  font-size: 10px;
  margin-left: 5px;
}

.mobile-menu-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 9998;
}

.mobile-menu {
  position: fixed;
  top: 0;
  right: -100%;
  width: 100%;
  max-width: 320px;
  height: 100%;
  background: #fff;
  z-index: 9999;
  transition: left 0.3s ease;
  overflow-y: auto;
}

.mobile-menu.active {
  right: 0;
}

.mobile-menu__header {
  padding: 15px;
  border-bottom: 1px solid #eee;
  display: flex;
  justify-content: flex-end;
}

.mobile-menu__close {
  cursor: pointer;
  color: #333;
}

.mobile-menu__content {
  padding: 0;
}

.mobile-menu__list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.mobile-menu__item {
  border-bottom: 1px solid #eee;
}

.mobile-menu__link-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.mobile-menu__link {
  display: block;
  padding: 15px;
  color: #333;
  text-decoration: none;
  flex-grow: 1;
}

.mobile-menu__arrow {
  padding: 15px;
  color: #666;
  transition: transform 0.3s ease;
}

.mobile-menu__item--has-children.active .mobile-menu__arrow {
  transform: rotate(180deg);
}

.mobile-menu__submenu,
.mobile-menu__third-level {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  z-index: 1;
}

.mobile-menu__submenu.active,
.mobile-menu__third-level.active {
  display: block;
}

.mobile-menu__back {
  border-bottom: 1px solid #eee;
  background: #f8f9fa;
}

.mobile-menu__back-btn {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 15px;
  background: none;
  border: none;
  color: #333;
  cursor: pointer;
  width: 100%;
  text-align: right;
  font-weight: 500;
}

.mobile-menu__sublink-wrapper svg {
  transform: rotate(180deg);
}

.mobile-menu__back-btn svg {
  transform: rotate(180deg);
}

.mobile-menu__subitem {
  border-bottom: 1px solid #eee;
}

.mobile-menu__sublink-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 15px;
  cursor: pointer;
}

.mobile-menu__type {
  color: #333;
  font-weight: 500;
}

.mobile-menu__third-level li:not(.mobile-menu__back) {
  border-bottom: 1px solid #eee;
}

.mobile-menu__third-level a {
  display: flex;
  justify-content: space-between;
  padding: 15px;
  color: #666;
  text-decoration: none;
}

.mobile-menu__third-level a span {
  color: #999;
  font-size: 0.9em;
}

/* Адаптивность */
@media (min-width: 972px) {
  .mobile-menu-overlay,
  .mobile-menu {
    display: none !important;
  }
}

@media (max-width: 971px) {
  .mobile-menu {
    display: block;
  }
}

@media (max-width: 1191px) {
  .desc-footer {
    display: none;
  }

  .second-level-category {
    width: 50%;
  }

  .plansh-footer {
    display: flex;
  }

  .footer-socs {
    margin-top: 60px;
    margin-bottom: 60px;
  }

  .footer-first {
    width: 30%;
  }

  .footer-second {
    width: 70%;
  }


  .materials-item--block {
    width: calc(50% - 15px); /* учитываем gap */
  }

  .container {
    max-width: 970px !important;
  }

  .bottom__header--search {
    width: 187px;
  }

  .bottom__header--logo a.logo__header--bottom {
    margin-right: 20px;
  }

  .banner__square--block {
    height: 114px;
    width: 180px;
  }

  .main-links--block {
    flex-wrap: wrap;
    margin: 0;
  }

  .main-links__item--block {
    flex: 0 0 calc((100% - 20px) / 3);
  }

  .main-links__img--block {
    height: 200px;
  }
}

@media (max-width: 971px) {
  .footer-first-top {
    margin-bottom: 20px;
  }

  .footer-desc {
    flex-direction: column;
  }

  .footer-logo {
    margin-bottom: 32px;
  }

  .footer-copyright {
    margin-bottom: 32px;
  }

  .plansh3-footer {
    display: flex !important;
  }

  .plansh2-footer {
    display: none !important;
  }

  .footer-first {
    width: 100%;
    display: flex;
    flex-direction: row;
    gap: 80px;
  }

  footer .footer-inner a {
    font-weight: unset;
    font-size: unset;
  }

  .footer-first-block {
    width: 66.66%;
  }

  .footer-socs {
    width: 33.33%;
    margin-top: 0;
    margin-bottom: 0;
  }

  .footer-second {
    width: 100%;
  }

  .materials-items--block {
    justify-content: center;
  }

  .materials-item--block.hidden-mobile {
    display: none;
  }

  .materials-show-mobile {
    display: block;
  }

  .stages-list--block {
    flex-wrap: wrap;
    margin: 0 -5px;
  }

  .stages-item--block {
    flex: 0 0 calc(50% - 10px);
    background: #EF8D00;
    height: 185px;
  }

  .stages-item-top--block {
    justify-content: start;
    gap: 10px;
    margin-bottom: 20px;
  }

  .stages-item-number--block {
    font-weight: 700;
  }

  .stages-item--block {
    justify-content: start;
  }

  .stages-background--block {
    background-size: cover;
  }

  .stages-item-bottom--block {
    width: 70%;
  }

  .mob-block {
    display: flex;

    &.stages--block2 {
      display: block;
    }
  }

  .desc-block {
    display: none;
  }

  :is(.partners-slider-item, .clients-slider-item) img {
    width: 180px;
    height: 180px;
  }

  .partners-desktop-sliders {
    display: flex;
  }

  .desktop-sliders {
    display: flex;
  }

  .mobile-sliders {
    display: none;
  }

  .advantages-list--block, .stages-list--block {
    flex-wrap: wrap;
    margin: 0 -5px;
  }

  .advantages-item--block, .stages-item--block {
    flex: 0 0 calc(50% - 5px);
    width: unset;
  }

  .advantages--block h2 {
    font-size: 36px;
    line-height: 35px;
    letter-spacing: -3%;
  }

  .main-links__item--block {
    flex: 0 0 calc(50% - 5px);
  }

  .container {
    max-width: 650px !important;
  }

  .bottom__header--search {
    display: none
  }

  .bottom__header--catalog {
    display: none
  }

  .top__header--block {
    display: none
  }

  .bottom__header--block {
    height: 86px;
    padding: 0;
  }

  .header-redesign {
    height: 86px;
  }

  .bottom__header--buttons a {
    height: 46px;
    font-size: 13px !important;
  }

  .header__calculator--text {
    display: none;
  }

  .bottom__header--measurer {
    background: #EF8D00;
    margin-right: 10px;
    height: 46px;
  }

  .bottom__header--calculator {
    display: block;
    height: 46px;
    width: 46px;
    background: url('/assets/svg/calculator.svg') center center no-repeat #0C8E0F;
    margin-right: 10px;
  }

  .bottom__header--burger {
    display: flex !important;
  }

  .hide-on-desktop-menu {
    display: block;
  }

  .main__page--banner {
    height: 544px;
  }

  .banner__heading--title {
    max-width: 411px;
    font-size: 36px;
    letter-spacing: -1px;
  }

  .banner__content--block {
    top: 57px;
    bottom: auto;
    left: 40px;
  }

  .banner__squares--block {
    left: 40px;
    right: unset;
  }

}

@media (max-width: 651px) {
  .container {
    max-width: 100% !important;
  }

  .bottom__header--phone {
    display: none;
  }

  .bottom__header--block {
    height: 66px;
  }

  .header-redesign {
    height: 66px;
  }
}

@media (max-width: 567px) {
  .footer-desc {
    gap: 60px;
  }

  .plansh3-footer .plansh-footer {
    display: none;
  }

  .footer-first-block {
    width: 100%;
  }

  .footer-address {
    max-width: 200px;
  }

  .footer-socs {
    width: 100%;
    margin-bottom: 30px;
  }

  .plansh5-footer {
    display: none;
  }

  .plansh4-footer {
    display: flex;
  }

  .footer-second.plansh4-footer {
    display: flex;
    flex-direction: row;
  }

  .footer-menu-column {
    width: 100%;
  }

  .plansh4-footer .footer-menu {
    width: 50%;
    display: flex;
    flex-direction: column;
    gap: 30px;
  }

  .plansh4-footer .footer-menu2 {
    width: 50%;
  }

  .materials-items--block {
    gap: 30px 0;
  }

  .materials-item--block {
    width: 100%;
  }

  .materials-item-top--block {
    gap: 10px;
    min-height: auto;
  }

  .materials-item-left--block {
    width: 100%;
  }

  .materials-item-right--block {
    width: 100%;
    justify-content: flex-start;
  }

  .advantages--block h2 {
    font-size: 26px;
    line-height: 26px;
  }

  .banner__squares--block {
    left: 20px;
    bottom: 100px;
    right: 20px;
  }

  .banner__square--block {
    width: 50%;
  }

  .bottom__header--calculator {
    width: 27px;
    background: url('/assets/svg/calculator_320.svg') center center no-repeat transparent;
    margin-right: 12px;
  }

  .bottom__header--measurer {
    width: 27px;
    background: url('/assets/svg/measurer_320.svg') center center no-repeat transparent;
    margin-right: 17px;
  }

  .header__measurer--text {
    display: none;
  }

  .banner__heading--title {
    max-width: calc(100% - 40px);
    font-size: 26px;
    letter-spacing: -1px;
    margin-top: 40px;
    line-height: 26px;
  }

  .banner__content--block {
    --banner-content-block-left: 20px;

    top: 37px;
    left: var(--banner-content-block-left);
    width: calc(100% - 2 * var(--banner-content-block-left));
  }

  .banner__text--button {
    position: absolute;
    bottom: -240px;
    left: 0;
    width: 100%;
  }

  .main-links-container {
    position: relative;
    overflow: hidden;
  }

  .main-links--block {
    display: flex;
    flex-wrap: nowrap;
    margin: 0;
    overflow-x: auto;
    scroll-behavior: smooth;
    scrollbar-width: none; /* Firefox */
    -ms-overflow-style: none; /* IE и Edge */
  }

  .main-links--block::-webkit-scrollbar {
    display: none; /* Chrome, Safari, Opera */
  }

  .main-links__item--block {
    flex: 0 0 100%;
    min-width: 100%;
    scroll-snap-align: start;
  }

  /* Стрелки навигации */
  .slider-arrows {
    display: flex;
    justify-content: flex-end;
    gap: 15px;
    pointer-events: none;
    z-index: 10;
    padding: 0 10px;
    margin-bottom: 20px;
  }

  .arrow {
    pointer-events: all;
    background: #EF8D00;
    border: none;
    width: 48px;
    height: 38px;
    border-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
  }

  .main__page--banner {
    margin-bottom: 40px;
  }

  .advantages-list--block, .stages-list--block {
    display: flex;
    flex-wrap: nowrap;
    margin: 0;
    overflow-x: auto;
    scroll-behavior: smooth;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }

  .advantages-list--block::-webkit-scrollbar, .stages-list--block::-webkit-scrollbar {
    display: none;
  }

  .advantages-item--block, .stages-item--block {
    flex: 0 0 100%;
    min-width: 100%;
    scroll-snap-align: start;
  }

  /* Стрелки навигации */
  .slider-arrows {
    display: flex;
    justify-content: flex-end;
    gap: 15px;
    pointer-events: none;
    z-index: 10;
    padding: 0 10px;
    margin-bottom: 20px;
  }

  .arrow {
    pointer-events: all;
    background: #EF8D00;
    border: none;
    width: 48px;
    height: 38px;
    border-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
  }

  .partners-slider-item img {
    width: 100px;
    height: 100px;
  }

  .partners-desktop-sliders {
    display: none;
  }

  .partners-mobile-sliders {
    display: flex;
    flex-direction: column;
  }

  .stages--block2 .stages-list--block {
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    padding: 0;
    gap: 10px;
  }

  .stages-background--block {
    display: none;
  }

  .stages--block2 .advantages-list--block {
    display: flex;
    flex-wrap: nowrap;
    gap: 0;
    margin: 0;
    overflow-x: auto;
    scroll-behavior: smooth;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }

  .stages--block2 .advantages-list--block::-webkit-scrollbar {
    display: none;
  }

  .stages--block2 .advantages-item--block {
    flex: 0 0 100%;
    min-width: 100%;
    scroll-snap-align: start;
  }

  .stages-list--block {
    display: flex;
    flex-wrap: nowrap;
    gap: 0; /* Важно: без gap между слайдами */
    margin: 0;
    overflow-x: auto;
    scroll-behavior: smooth;
    scrollbar-width: none;
    -ms-overflow-style: none;
    scroll-snap-type: x mandatory;
    padding: 0; /* Важно: без внутренних отступов */
  }

  .stages--block2 .stages-list--block::-webkit-scrollbar {
    display: none;
  }

  .stages-item--block {
    flex: 0 0 100%;
    min-width: 100%;
    scroll-snap-align: start;
    box-sizing: border-box; /* Важно: чтобы padding не увеличивал ширину */
  }

  .materials-categorie-top--block {
    height: 46px;
  }

  .materials-categorie-arrow--block {
    width: 32px;
    height: 32px;
  }

  .series-item {
    font-size: 11px;
  }

  .brand-header {
    flex-direction: column-reverse;
  }

  .discount-badge {
    margin-bottom: 15px;
  }

  .brand-logo {
    min-height: 14px;
  }
}

@media (width < 480px) {
  .banner__text--button {
    bottom: -190px;
  }
}


.fixed-buttons-new {
  position: fixed;
  bottom: 24px;
  left: 21px;
  display: flex;
  flex-direction: column;
  row-gap: 6px;

  @media (width < 1200px) {
    display: none;
  }

  & > a {
    display: grid;
    place-items: center;
    width: 46px;
    height: 46px;
    border-radius: 5px;
    background-color: var(--c-orange);

    @media (hover: hover) {
      transition: background-color var(--root-transition-duration) var(--root-transition-timing-function);

      &:hover {
        background-color: var(--c-green);
      }
    }
  }
}


.form-modal-container {
  display: none;
  padding: 30px 20px;
  background-color: #fff;
  border-radius: 5px;
  width: 420px;

  @media (width < 480px) {
    width: 300px;
  }
}

.input-phone-wrap-redesign {
  display: flex;
  column-gap: 6px;

  .input-phone-wrap-redesign__country {
    padding: 8px 16px;
    border: 1px solid var(--c-gray-border-3);
    border-radius: 8px;
    display: flex;
    column-gap: 8px;
    align-items: center;

    @media (width < 480px) {
      padding: 8px 10px;
    }

    &::before {
      content: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMjIiIHZpZXdCb3g9IjAgMCAzMiAyMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTMxLjUgMC41VjEwLjE2N0gwLjVWMC41SDMxLjVaIiBmaWxsPSJ3aGl0ZSIgc3Ryb2tlPSIjRDFEMUQxIi8+CjxwYXRoIGQ9Ik0zMiAxMC42NjY1SDBWMjEuMzMzMkgzMlYxMC42NjY1WiIgZmlsbD0iI0Q1MkIxRSIvPgo8cGF0aCBkPSJNMzIgNy4xMTA4NEgwVjE0LjIyMkgzMlY3LjExMDg0WiIgZmlsbD0iIzAwMzlBNiIvPgo8L3N2Zz4K);
    }
    &::after {
      content: '+7';
      color: var(--c-placeholder);
    }
  }
}

.input-wrap-redesign {
  --input-wrap-padding: 16px;

  padding: var(--input-wrap-padding);
  border: 1px solid var(--c-gray-border-3);
  border-radius: 8px;
  width: 100%;

  &:has(input.is-invalid) {
    border: 2px solid var(--c-red);
    padding: calc(var(--input-wrap-padding) - 1px);

    & > input {
      color: var(--c-red);
      caret-color: currentColor;

      &::placeholder {
        color: currentColor;
      }
    }
  }

  &.input-wrap-redesign--type-2 {
    --input-wrap-padding: 14px;
    border-color: var(--c-dark-gray-text);
    border-radius: 5px;

    & > input {
      background-color: transparent;
      caret-color: var(--c-dark-gray-text);

      &::placeholder {
        color: var(--c-dark-gray-text);
      }
    }
  }

  & > input {
    height: 18px;
    width: 100%;
    vertical-align: top;
    padding: 0;
    border: none;
    outline: none;
    caret-color: var(--c-placeholder);

    &::placeholder {
      color: var(--c-placeholder);
    }
  }
}

.textarea-wrap-redesign {
  --textarea-wrap-padding: 16px;

  padding: var(--textarea-wrap-padding);
  border: 1px solid var(--c-gray-border-3);
  border-radius: 8px;
  width: 100%;
  height: 100px;

  &:has(textarea.is-invalid) {
    padding: calc(var(--textarea-wrap-padding) - 1px);
    border: 2px solid var(--c-red);

    & > textarea {
      color: var(--c-red);
      caret-color: currentColor;

      &::placeholder {
        color: currentColor;
      }
    }
  }

  &.textarea-wrap-redesign--type-2 {
    border-color: var(--c-dark-gray-text);
    border-radius: 5px;

    & > textarea {
      background-color: transparent;
      caret-color: var(--c-dark-gray-text);

      &::placeholder {
        color: var(--c-dark-gray-text);
      }
    }
  }

  & > textarea {
    box-sizing: border-box;
    resize: none;
    width: 100%;
    height: 100%;
    vertical-align: top;
    padding: 0;
    border: none;
    outline: none;
    overflow-x: visible;
    caret-color: var(--c-placeholder);

    &::placeholder {
      color: var(--c-placeholder);
    }
  }
}

.input-agreement-wrap-redesign > label {
  margin-bottom: 0;
  padding: 4px 0 4px 32px;
  position: relative;
  color: var(--c-dark-gray-text);
  user-select: none;
  -webkit-user-select: none;

  &:has(input.is-invalid) {
    color: var(--c-red);
    font-weight: 600;

    &::before {
      border-color: currentColor;
    }
  }

  &::before {
    content: "";
    width: 18px;
    height: 18px;
    border: 2px solid var(--c-gray-border-3);
    border-radius: 4px;
    position: absolute;
    top: 50%;
    translate: 0 -50%;
    left: 3px;
    cursor: pointer;
  }
  &::after {
    content: "";
    width: 8px;
    height: 8px;
    background-color: var(--c-orange);
    border-radius: 2px;
    position: absolute;
    top: 50%;
    translate: 0 -50%;
    left: 7.5px;
    scale: 0;
    transition-property: scale;
    transition-duration: var(--root-transition-duration);
    transition-timing-function: var(--root-transition-timing-function);
  }
  &:has(input:checked)::after {
    scale: 1;
  }

  & > input {
    appearance: none;
    display: none;
  }
  & > span {
    display: inline-block;

    & > a {
      color: var(--c-orange);
      text-decoration: underline;
    }
  }
}
.input-agreement-wrap-redesign.input-agreement-wrap-redesign--type-2 > label {
  --input-agreement-wrap-redesign-type-2-checkbox-size: 10px;
  --input-agreement-wrap-redesign-type-2-mark-size: calc(var(--input-agreement-wrap-redesign-type-2-checkbox-size) * 0.6);

  margin-bottom: 0;
  padding: 0 0 0 calc(var(--input-agreement-wrap-redesign-type-2-checkbox-size) + 5px);

  &:has(input.is-invalid) {
    color: var(--c-red);
    font-weight: 600;

    &::before {
      border: 2px solid var(--c-red);
    }
  }

  &::before {
    width: var(--input-agreement-wrap-redesign-type-2-checkbox-size);
    height: var(--input-agreement-wrap-redesign-type-2-checkbox-size);
    border: 1px solid var(--c-dark-gray-text);
    border-radius: 1px;
    top: 4px;
    bottom: 2px;
    left: 0;
    translate: unset;
    anchor-name: --input-agreement-wrap-redesign-type-2-checkbox-anchor;
  }
  &::after {
    width: var(--input-agreement-wrap-redesign-type-2-mark-size);
    height: var(--input-agreement-wrap-redesign-type-2-mark-size);
    position-anchor: --input-agreement-wrap-redesign-type-2-checkbox-anchor;
    position-area: center;
    top: unset;
    left: unset;
    translate: unset;
  }

  & > span {
    display: inline-block;

    & > a {
      color: currentColor;

      &:hover {
        color: var(--c-orange);
      }
    }
  }
}

.input-file-wrap-redesign__fake-label {
  color: var(--c-dark-gray-text);
  margin-bottom: 8px;
}
.input-file-wrap-redesign__label {
  margin-bottom: 0;
  padding: 16px 0 16px 16px;
  width: 100%;
  display: flex;
  align-items: center;
  column-gap: 8px;
  border: 1px solid var(--c-gray-border-3);
  border-radius: 8px;
  color: var(--c-placeholder);

  &::before {
    content: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTkiIHZpZXdCb3g9IjAgMCAxNiAxOSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggb3BhY2l0eT0iMC41IiBkPSJNMTQuMDEwNyAxMC41MjM0QzE0LjQyOTQgMTAuNTIzNCAxNC44MTYyIDEwLjY3MTEgMTUuMDk0NyAxMC45Njc4QzE1LjM3IDExLjI2MTIgMTUuNDk4NyAxMS42NTc1IDE1LjQ5NTEgMTIuMDgzTDE1LjQ5NDEgMTIuMjkyTDE1LjQ5NjEgMTIuMjkzOUMxNS40OTc1IDEzLjAwOSAxNS41MjUxIDEzLjgwODYgMTUuNDI5NyAxNC41NjkzVjE0LjU3MDNDMTUuMjA4MiAxNi4yOTc5IDEzLjczODUgMTcuNSAxMi4wMjI1IDE3LjUwNzhMMTEuNzg3MSAxNy41MDg4QzEwLjUxMjkgMTcuNTE2IDkuMjQyMjYgMTcuNTExNyA3Ljk3ODUyIDE3LjUxMTdINC4wNzgxMkMyLjAyMTY4IDE3LjUwNzggMC41MTI3ODEgMTYuMDA2NSAwLjUwMTk1MyAxMy45NDkyQzAuNDk4ODIyIDEzLjMyNTYgMC40OTg4MjEgMTIuNzAxNyAwLjUwMTk1MyAxMi4wNzgxQzAuNTA0MDc4IDExLjY1OCAwLjYzNDg2NyAxMS4yNjQ4IDAuOTA5MTggMTAuOTcxN0MxLjE4NjY0IDEwLjY3NTMgMS41NzAyIDEwLjUyNTYgMS45ODgyOCAxMC41MjM0QzIuNDA4MDMgMTAuNTIxMyAyLjc5Mzg4IDEwLjY2ODcgMy4wNzMyNCAxMC45NjM5QzMuMzQ4ODQgMTEuMjU1MiAzLjQ4MDI1IDExLjY0ODEgMy40ODQzOCAxMi4wNjkzTDMuNDg1MzUgMTIuMDk5NkMzLjQ4ODIzIDEyLjczNTQgMy40ODIwOSAxMy4zNDIgMy40ODgyOCAxMy45NzA3TDMuNDg5MjYgMTMuOTk1MUwzLjQ5MTIxIDE0LjAyMDVMMy40OTcwNyAxNC4wNzQyTDMuNTQxOTkgMTQuNDc3NUwzLjkzNjUyIDE0LjUxNjZDMy45Mzc3MiAxNC41MTY4IDMuOTM5MTMgMTQuNTE3NCAzLjk0MDQzIDE0LjUxNzZMNC4wNTA3OCAxNC41MjY0SDExLjk1MzFDMTIuMDAwMiAxNC41MjY0IDEyLjAzODkgMTQuNTIwMSAxMi4wNjA1IDE0LjUxNjZMMTIuMDU3NiAxNC41MTc2TDEyLjQ2MzkgMTQuNDc3NUwxMi41MDU5IDE0LjA3MTNDMTIuNTA5OCAxNC4wNDc4IDEyLjUxNjIgMTQuMDEyNiAxMi41MTY2IDEzLjk3MDdWMTMuOTY3OEMxMi41MTk2IDEzLjM1MjggMTIuNTEzMyAxMi42OTg1IDEyLjUxOTUgMTIuMDY5M1YxMi4wNjc0QzEyLjUyMjEgMTEuNjk5NyAxMi42MjMzIDExLjM1MzcgMTIuODMzIDExLjA3ODFMMTIuOTI5NyAxMC45NjQ4QzEzLjE3MzkgMTAuNzA2OSAxMy40OTkxIDEwLjU2MjMgMTMuODU2NCAxMC41MzAzTDE0LjAxMDcgMTAuNTIzNFpNMy45MzU1NSAxNC41MTU2QzMuOTMzMjMgMTQuNTE1MyAzLjkzMTE5IDE0LjUxNTggMy45Mjk2OSAxNC41MTU2QzMuOTI4MiAxNC41MTU0IDMuOTI2NjEgMTQuNTE0OCAzLjkyNTc4IDE0LjUxNDZDMy45MjY0MSAxNC41MTQ4IDMuOTI3MzMgMTQuNTE0NCAzLjkyODcxIDE0LjUxNDZDMy45MzA0IDE0LjUxNDkgMy45MzI3OSAxNC41MTUyIDMuOTM1NTUgMTQuNTE1NlpNNy45OTUxMiAwLjVDOC40MDk1MyAwLjUgOC43OTQ5NSAwLjY4MTUwOSA5LjEwMjU0IDAuOTg4MjgxTDkuNDU2MDUgMS4zNDA4Mkw5LjQ1NzAzIDEuMzM4ODdDMTAuNjQ5MiAyLjUyNDA3IDExLjgzNjggMy43MTIwNyAxMy4wMjE1IDQuOTA1MjdDMTMuNjMxIDUuNTE5MzkgMTMuNjYwNyA2LjQ5MDAxIDEzLjA0NTkgNy4wODU5NEMxMi40NyA3LjY0Mzg3IDExLjYwNSA3LjYyODUxIDEwLjk5NzEgNy4xMjU5OEwxMC44Nzg5IDcuMDE5NTNWNy4wMTg1NUwxMC4zMzk4IDYuNDczNjNMOS40ODQzOCA1LjYwOTM4VjYuODI1Mkw5LjQ4MjQyIDEwLjk4NzNDOS40ODAyIDExLjUyMzcgOS4yNDAzNCAxMS45OTAyIDguODM4ODcgMTIuMjY1NkM4LjQzNzA2IDEyLjU0MTIgNy45MTc1NiAxMi41OTYyIDcuNDIxODggMTIuNDAyM0g3LjQyMDlDNy4xMzQxNyAxMi4yOTA3IDYuODk0OTkgMTIuMTAwNyA2LjczMjQyIDExLjgzNjlDNi42MjcxMiAxMS42NjU5IDYuNTYxMTMgMTEuNDc2MyA2LjUyODMyIDExLjI3NjRMNi41MDY4NCAxMS4wNzMyTDYuNTAyOTMgMTAuOTQxNEM2LjUwMDgzIDkuNTcwMDggNi41MDIxNyA4LjE5ODQ5IDYuNTAyOTMgNi44MjUyTDYuNTAzOTEgNS42MTAzNUw1LjY0ODQ0IDYuNDcyNjZDNS40NzMxNCA2LjY0OTMyIDUuMzA1MzggNi44MjA0NSA1LjEzMzc5IDYuOTkxMjFMNS4xMzI4MSA2Ljk5MjE5QzQuNTE0ODUgNy42MDk5NiAzLjU3NDcgNy42OTk3MSAyLjk0NDM0IDcuMDg4ODdDMi4zMTQ2MiA2LjQ3ODQ4IDIuMzc0NjYgNS41MDk2MSAyLjk4NjMzIDQuODg2NzJMNi44ODU3NCAwLjk4NzMwNUM3LjE5NDE0IDAuNjgxMTA0IDcuNTgwMDcgMC41MDAyMjYgNy45OTUxMiAwLjVaIiBmaWxsPSJibGFjayIgc3Ryb2tlPSJ3aGl0ZSIvPgo8L3N2Zz4K);
    width: 16px;
    height: 18px;
  }
}
.input-file-wrap-redesign.input-file-wrap-redesign--type-2 .input-file-wrap-redesign__label {
  padding: 14px;
  justify-content: space-between;
  border-color: var(--c-red);
  border-radius: 5px;
  color: var(--c-red);

  &::before {
    content: none;
  }
}

.form-redesign .form-redesign__header {
  margin-bottom: 30px;

  .form-redesign__title {
    max-width: 259px;
    margin-bottom: 0;
    color: var(--c-black-darker);
  }
}
.form-redesign .form-redesign__fieldset {
  display: flex;
  flex-direction: column;
  row-gap: 12px;
}
.form-redesign .form-redesign__field-wrap > label {
  color: var(--c-dark-gray-text);
  cursor: default;
  margin-bottom: 8px;

  &:has(+ .input-wrap-phone-redesign) {
    margin-bottom: 12px;
  }
}
.form-redesign .form-redesign__footer {
  margin-top: 20px;

  @media (width < 480px) {
    .form-redesign__btn {
      width: 100%;
      text-align: center;
    }
  }
}

.form-redesign.form-redesign--type-2 .form-redesign__fieldset {
  row-gap: 10px;
}
.form-redesign.form-redesign--type-2 .form-redesign__btn {
  width: 100%;
}

.form-redesign.form-redesign--customer-review .form-redesign__inner-wrap {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px 10px;

  @media (width < 640px) {
    grid-template-columns: 1fr;
    row-gap: 10px;
  }
}
.form-redesign.form-redesign--customer-review .form-redesign__field-wrap:has(textarea) {
  flex-grow: 1;

  .textarea-wrap-redesign {
    height: 100%;
  }
}

.label-required::after {
  content: "*";
  display: inline;
  color: var(--c-red);
}


.breadcrumbs-redesign {
  margin-bottom: 20px;

  .breadcrumbs-redesign__list {
    display: flex;
    column-gap: 14px;
    flex-wrap: wrap;

    & > li:not(:last-child) {
      display: inline flex;
      column-gap: 14px;
      align-items: center;

      @media (width < 480px) {
        &:nth-child(n + 3) > a {
          max-width: 75px;
          white-space: nowrap;
          overflow: hidden;
          text-overflow: ellipsis;
        }
      }

      &::after {
        content: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNSIgaGVpZ2h0PSI5IiB2aWV3Qm94PSIwIDAgNSA5IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgo8cGF0aCBkPSJNMC41IDAuNUw0LjUgNC41TDAuNSA4LjUiIHN0cm9rZT0iIzY2NzA4NSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjwvc3ZnPgo=);
      }

      & > a {
        color: var(--c-gray-500);
        text-decoration: none;

        @media (hover: hover) {
          transition: color var(--root-transition-duration) var(--root-transition-timing-function);

          &:hover {
            color: var(--c-orange);
          }
        }
      }
    }
    & > li:last-child {
      color: var(--c-orange);
    }
  }
}


.promotions__wrap {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 20px 9px;

  @media (width < 1200px) {
    column-gap: 10px;
  }
  @media (width < 960px) {
    grid-template-columns: 1fr 1fr;
  }
  @media (width < 480px) {
    grid-template-columns: 1fr;
  }

  .promotions__item {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 3;
    row-gap: 0;

    p {
      margin-bottom: 0;
    }
    .promotions__item-img-wrap {
      width: 100%;
      height: 206px;

      img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
      }
    }
    .promotions__item-title {
      margin-top: 12px;
    }
    .promotions__item-btn {
      margin-top: 20px;
      width: 100%;
    }
  }
}


.reviews .owl-stage {
  display: flex;
}
.reviews .owl-item {
  display: flex;
  flex-shrink: 0;
}
.reviews__header {
  display: flex;
  justify-content: space-between;

  .reviews__title {
    margin-bottom: 0;
  }
}
.reviews__item {
  padding: 30px 20px;
  background-color: var(--c-gray);

  p {
    margin-bottom: 0;
  }
  .reviews__item-header {
    margin-bottom: 20px;
    display: grid;
    grid-template-columns: 1fr 85px;
    grid-template-areas:
      "a b"
      "c b";
    gap: 10px;

    .reviews__item-name {
      grid-area: a;
    }
    .reviews__item-date {
      --reviews-item-date-font-size: 10px;

      grid-area: c;
      font: 600 var(--reviews-item-date-font-size) / 12px Roboto, Arial, sans-serif;
      letter-spacing: calc(-0.02 * var(--reviews-item-date-font-size));
      color: var(--c-black-darker);
    }
    .reviews__item-rating {
      grid-area: b;
      justify-self: end;
      display: flex;
      column-gap: 1px;
    }
  }
}


.payment-methods-redesign p {
  margin-bottom: 0;
}
.payment-methods-redesign__caption {
  margin-top: 20px;
  max-width: 323px;
  color: var(--c-black-darker);
}
.payment-methods-redesign__cards-wrap {
  display: flex;
  column-gap: 9px;

  @media (width < 1200px) {
    gap: 10px;
  }
  @media (width < 480px) {
    flex-direction: column;
  }

  .payment-methods-redesign__big-card {
    width: 771px;
    height: 498px;
    background-image: url(/assets/img/payment-methods-redesign-big-card-1200.jpg);

    @media (width < 1200px) {
      width: 624px;
      height: 499px;
      background-image: url(/assets/img/payment-methods-redesign-big-card-960.jpg);
    }
    @media (width < 960px) {
      width: 305px;
      height: 260px;
      background-image: url(/assets/img/payment-methods-redesign-big-card-640.jpg);
    }
    @media (width < 480px) {
      width: 300px;
      background-image: url(/assets/img/payment-methods-redesign-big-card-320.jpg);
    }
  }
  .payment-methods-redesign__small-cards-wrap {
    display: flex;
    flex-direction: column;
    row-gap: 9px;
    flex-grow: 1;

    @media (width < 1200px) {
      row-gap: 10px;
    }

    .payment-methods-redesign__small-card {
      height: 160px;
      padding: 20px;
      background-color: var(--c-gray);
      display: flex;
      flex-direction: column;
      justify-content: space-between;

      @media (width < 960px) {
        height: 80px;
        flex-direction: row;
        justify-content: flex-start;
        align-items: center;
        column-gap: 20px;
      }

      .payment-methods-redesign__small-card-icon {
        width: 40px;
        height: 40px;
        display: grid;
        place-items: center;
        background-color: var(--c-orange);
        flex-shrink: 0;
      }
    }
  }
}


.articles__wrap {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 20px 9px;

  @media (width < 1200px) {
    column-gap: 10px;
  }
  @media (width < 960px) {
    grid-template-columns: 1fr 1fr;
  }
  @media (width < 480px) {
    grid-template-columns: 1fr;
  }

  .articles__item {
    position: relative;

    &:hover .articles__item-title {
      color: var(--c-orange);
    }

    p {
      margin-bottom: 0;
    }
    .articles__item-img-wrap {
      width: 100%;
      height: 206px;

      img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
      }
    }
    .articles__item-date {
      --articles-item-date-font-size: 12px;

      margin-top: 12px;
      font: 700 var(--articles-item-date-font-size) / 14px Roboto, Arial, sans-serif;
      letter-spacing: calc(-0.02 * var(--articles-item-date-font-size));
      color: hsl(0 0 55);
    }
    .articles__item-title {
      display: block;
      margin-top: 8px;
      text-decoration: none;

      &::before {
        content: "";
        position: absolute;
        inset: 0;
      }
    }
  }
}


.edge-types__header {
  display: flex;
  justify-content: space-between;

  .edge-types__title {
    margin-bottom: 0;
  }
}
.edge-types__item-img {
  height: 206px;
  background-color: var(--c-gray);
  background-position: -107px -125px;
  background-size: 390px;
  background-repeat: no-repeat;
}
.edge-types__item-caption {
  margin: 12px 0 0;
  padding-left: 5px;
  color: var(--c-black-darker);
}


@media (width < 960px) {
  .side-types__header:has(.side-types__navigation-container) {
    display: flex;
    justify-content: space-between;
  }
}
.side-types__header .side-types__title {
  margin-bottom: 0;
}
.side-types__item-img {
  height: 206px;
  background-color: var(--c-gray);
  background-position: center -3px;
  background-size: 212px;
  background-repeat: no-repeat;
}
.side-types__item-caption {
  margin: 12px 0 0;
  padding-left: 5px;
  color: var(--c-black-darker);
}



.tabletop-shapes__gallery {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  column-gap: 9px;

  @media (width < 1200px) {
    gap: 30px 10px;
    grid-template-columns: 1fr 1fr;
  }
  @media (width < 960px) {
    row-gap: 20px;
    grid-template-columns: 1fr;
  }

  .tabletop-shapes__gallery-item figcaption {
    margin-top: 12px;
    padding-left: 5px;

    @media (width < 1200px) {
      padding-left: 0;
    }
  }
  .tabletop-shapes__gallery-item-img-wrap {
    width: 100%;
    height: 283px;

    @media (width < 1200px) {
      height: 340px;
    }
    @media (width < 960px) {
      height: unset;
    }

    img {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;

      @media (width < 960px) {
        height: auto;
      }
    }
  }
}
.tabletop-shapes__description {
  margin-top: 80px;
  padding-left: 292px;


  @media (width < 1200px) {
    padding-left: 0;
  }
  @media (width < 960px) {
    margin-top: 60px;
  }

  p {
    margin-bottom: 0;
  }
  .tabletop-shapes__description-caption {
    --tabletop-shapes-description-caption-font-size: 14px;

    font: 600 var(--tabletop-shapes-description-caption-font-size) / 16px Roboto, Arial, sans-serif;
    letter-spacing: calc(-0.02 * var(--tabletop-shapes-description-caption-font-size));
    text-transform: uppercase;
    color: var(--c-black-darker);
    max-width: 629px;
    margin-bottom: 60px;

    @media (width < 1200px) {
      max-width: 483px;
      margin-bottom: 40px;
      margin-left: 317px;
    }
    @media (width < 960px) {
      margin-left: 0;
    }
  }
}
.tabletop-shapes__footer {
  margin-top: 50px;
  padding-left: 292px;

  @media (width < 1200px) {
    margin-top: 36px;
    padding-left: 0;
  }
  @media (width < 960px) {
    margin-top: 40px;
  }
  @media (width < 640px) {
    margin-top: 30px;
  }
}


.quotemark-block {
  background-color: var(--c-gray);
  padding: 10px;
  position: relative;

  &:has(.quotemark-block__img-wrap) {
    display: flex;
    column-gap: 25px;
    align-items: center;

    @media (width < 1200px) {
      column-gap: 20px;
    }
  }

  @media (width < 640px) {
    padding: 20px 70px 20px 20px;
  }

  &::after {
    content: "";
    width: 30px;
    height: 30px;
    background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iOCIgdmlld0JveD0iMCAwIDEyIDgiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0xMS43MDc0IDAuMjkzMDE5QzExLjYxNDggMC4xOTk4MTcgMTEuNTA0NyAwLjEyNTkyMiAxMS4zODM0IDAuMDc1NjIyNkMxMS4yNjIgMC4wMjUzMjI5IDExLjEzMTkgLTAuMDAwMzgwMzE5IDExLjAwMDUgNC4yNTY3OGUtMDZINy40MDI1N0M2Ljg1MTE0IDQuMjU2NzhlLTA2IDYuNDAyNTIgMC40NDg2MjcgNi40MDI1MiAxLjAwMDA1VjMuMDAwMTVDNi40MDI1MiAzLjU1MTU4IDYuODUxMTQgNC4wMDAyIDcuNDAyNTcgNC4wMDAySDguMzY4NjJDOC42MTY4MyA0LjAwMDM4IDguODYwNTQgNC4wNjY0NCA5LjA3NDg2IDQuMTkxNjVDOS4yODkxOCA0LjMxNjg1IDkuNDY2NDIgNC40OTY3MSA5LjU4ODQ4IDQuNzEyODRDOS43MTAwMiA0LjkyOTIyIDkuNzcyMDMgNS4xNzM5NiA5Ljc2ODIgNS40MjIxMkM5Ljc2NDM3IDUuNjcwMjcgOS42OTQ4NCA1LjkxMjk4IDkuNTY2NjggNi4xMjU1MUM5LjQ0MDY1IDYuMzMzODQgOS4zMDQxMyA2LjUzNTY0IDkuMTU3NjUgNi43MzAxNEM5LjEzMjUzIDYuNzYzNSA5LjExODQ4IDYuODAzODkgOS4xMTc0OCA2Ljg0NTY1QzkuMTE2NDcgNi44ODc0IDkuMTI4NTYgNi45Mjg0MiA5LjE1MjA1IDYuOTYyOTVDOS4xNzU1IDYuOTk3NTQgOS4yMDkyIDcuMDIzOTIgOS4yNDg0MSA3LjAzODM3QzkuMjg3NjIgNy4wNTI4MyA5LjMzMDM3IDcuMDU0NjQgOS4zNzA2NyA3LjA0MzU1QzEwLjQ1MzQgNi43NDg4NyAxMS4zODEzIDYuMDQ4NzggMTEuOTYxOCA1LjA4ODQ2QzExLjk4MDYgNS4wNTc0NiAxMS45OTA4IDUuMDIxNjUgMTEuOTkxIDQuOTg1MjVDMTEuOTk0NCA0LjE5MzAxIDExLjk5NzggMi4zNDIzMiAxMiAxLjAwMDg1QzEyLjAwMDMgMC44NjkzOTcgMTEuOTc0NyAwLjczOTE3MSAxMS45MjQ0IDAuNjE3Njg2QzExLjg3NDIgMC40OTYyIDExLjgwMDUgMC4zODU4NTcgMTEuNzA3NCAwLjI5MzAxOVpNNC41OTgwMyA0LjI1Njc4ZS0wNkgxLjAwMDA1QzAuNDQ4NjIyIDQuMjU2NzhlLTA2IDAgMC40NDg2MjcgMCAxLjAwMDA1VjMuMDAwMTVDMCAzLjU1MTU4IDAuNDQ4NjIyIDQuMDAwMiAxLjAwMDA1IDQuMDAwMkgxLjk2NjFDMi4yMTQyOCA0LjAwMDQxIDIuNDU3OTUgNC4wNjY1IDIuNjcyMjMgNC4xOTE3QzIuODg2NTEgNC4zMTY5IDMuMDYzNzIgNC40OTY3NCAzLjE4NTc2IDQuNzEyODRDMy4zMDc1IDQuOTI5MTYgMy4zNjk2MyA1LjE3MzkyIDMuMzY1OCA1LjQyMjEyQzMuMzYxOTcgNS42NzAzMiAzLjI5MjMyIDUuOTEzMDUgMy4xNjM5NiA2LjEyNTUxQzMuMDM3OTMgNi4zMzM4NCAyLjkwMTQxIDYuNTM1NjQgMi43NTQ5NCA2LjczMDE0QzIuNzI5OTkgNi43NjM1NCAyLjcxNjA4IDYuODAzODggMi43MTUxNCA2Ljg0NTU2QzIuNzE0MiA2Ljg4NzI0IDIuNzI2MjggNi45MjgxNyAyLjc0OTY5IDYuOTYyNjZDMi43NzMxMSA2Ljk5NzE0IDIuODA2NyA3LjAyMzQ3IDIuODQ1NzkgNy4wMzc5N0MyLjg4NDg3IDcuMDUyNDcgMi45Mjc1IDcuMDU0NDIgMi45Njc3NSA3LjA0MzU1QzQuMDUwNSA2Ljc0ODcyIDQuOTc4MzUgNi4wNDg2OCA1LjU1OTA4IDUuMDg4NDZDNS41Nzc4OCA1LjA1NzQ2IDUuNTg3ODggNS4wMjE2NSA1LjU4ODA4IDQuOTg1MjVDNS41OTE0OCA0LjE5MzAxIDUuNTk0ODggMi4zNDIzMiA1LjU5NzA4IDEuMDAwODVDNS41OTc1OSAwLjg2OTQ1NyA1LjU3MjA0IDAuNzM5MjYyIDUuNTIxOTIgMC42MTc3OTlDNS40NzE4IDAuNDk2MzM3IDUuMzk4MDkgMC4zODYwMTYgNS4zMDUwNiAwLjI5MzIxOUM1LjIxMjUgMC4xOTk5NTcgNS4xMDIzNCAwLjEyNjAxMSA0Ljk4MDk2IDAuMDc1Njc2MkM0Ljg1OTU5IDAuMDI1MzQxMSA0LjcyOTQyIC0wLjAwMDM4MDY1IDQuNTk4MDMgNC4yNTY3OGUtMDZaIiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4g) center no-repeat var(--c-green);
    border-radius: 5px;
    position: absolute;
    top: 12px;
    right: 12px;

    @media (width < 960px) {
      top: 10px;
      right: 10px;
    }
  }

  p {
    margin-bottom: 0;
  }
  .quotemark-block__img-wrap {
    width: 258px;
    height: 125px;

    @media (width < 1200px) {
      width: 287px;
    }
    @media (width < 960px) {
      width: 138px;
    }
    @media (width < 640px) {
      display: none;
    }

    img {
      width: 100%;
      height: 100%;
      object-position: center;
      object-fit: cover;
    }
  }
  .quotemark-block__text {
    max-width: 483px;

    @media (width < 960px) {
      max-width: 386px;
    }
  }
}


.generic-redesign h1, .generic-content h2 {
  max-width: 780px;
  text-wrap: balance;
}

.text-redesign {
  --text-redesign-p-margin: var(--margin-text);

  overflow-wrap: break-word;

  &.ui-kit-text {
    --text-redesign-p-margin: var(--ui-kit-text-line-height);
  }

  a {
    color: inherit;
    text-decoration: underline;

    &:hover {
      color: var(--c-orange);
    }
  }
  h2:not(:first-child) {
    margin-top: var(--margin-top-text-header);
  }
  h2:not(:last-child) {
    margin-bottom: var(--margin-bottom-text-header);
  }
  h2.ui-kit-special-h:not(:first-child) {
    margin-top: var(--margin-top-special-h);
  }
  h2.ui-kit-special-h:not(:last-child) {
    margin-bottom: var(--margin-bottom-special-h);
  }
  p:not(:first-child) {
    margin-top: var(--text-redesign-p-margin);
  }
  p:not(:last-child) {
    margin-bottom: var(--text-redesign-p-margin);
  }
  p:last-child {
    margin-bottom: 0;
  }
  .media-own-col:not(:first-child):has(h2) {
    margin-top: var(--margin-top-text-header);
  }
  .media-own-col + .media-own-col:not(:has(h2)) {
    margin-top: var(--text-redesign-p-margin);
  }
  .btn-redesign.btn-redesign--content {
    margin-top: var(--margin-xx-small);
  }

  h2 {
    max-width: 760px;
    text-wrap: balance;
  }
}

.media-own-col {
  --media-own-col-main-col-min-width: 438px;

  display: grid;
  grid-template-columns: minmax(var(--media-own-col-main-col-min-width), 1fr) auto;
  column-gap: 30px;

  &.media-own-col--left {
    grid-template-columns: auto minmax(var(--media-own-col-main-col-min-width), 1fr);

    .media-own-col__main-col {
      grid-column: 2;
    }
    &[data-col-count="2"] .media-own-col__media-col {
      grid-column: 1;
    }
  }

  @media (width < 960px) {
    &.media-own-col--960 {
      display: block;
    }
  }

  img, iframe {
    display: block;
    max-width: 100%;
    margin-inline: auto;
  }
  .media-own-col__main-col {
    grid-column: 1;
  }
  &[data-col-count="2"].media-own-col__media-col {
    grid-column: 2;
  }
}


.useful__wrap {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  column-gap: 10px;

  @media (width < 960px) {
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }
}

.useful-card {
  position: relative;

  .useful-card__img-wrap {
    height: 165px;

    @media (width < 960px) {
      height: 84px;
    }
  }
  .useful-card__title {
    display: block;
    margin-top: 15px;
    text-decoration: none;

    &::before {
      content: "";
      position: absolute;
      inset: 0;
    }
  }
}


.questions-left {
  background-color: var(--c-gray);
  padding-block: 60px;

  @media (width < 640px) {
    padding-block: 74px 36px;
  }

  h2, p {
    margin: 0;
  }
  .questions-left__wrap {
    display: flex;
    column-gap: 30px;
    align-items: center;

    @media (width < 640px) {
      flex-direction: column;
      row-gap: 38px;
    }

    .questions-left__title {
      flex: 0 0 max-content;
    }
  }
}


.common-terms__wrap {
  counter-reset: common-terms;

  .common-terms__item {
    counter-increment: common-terms;
    height: 183px;
    padding: 12px 10px 10px;
    display: flex;
    flex-direction: column;
    row-gap: 5px;
    justify-content: space-between;
    background-color: var(--c-gray);
    user-select: none;

    &::before {
      content: counter(common-terms, decimal-leading-zero);
    }

    .common-terms__item-caption {
      margin: 0;
      text-wrap: balance;

      @media (width < 480px) {
        font-size: 12px;
      }
    }
  }
}
.common-terms__navigation-container {
  margin-top: 20px;
}


.related-products__wrap {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  column-gap: 10px;

  @media (width < 960px) {
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }

  .related-products__item .related-product-card {
    height: 100%;
  }
}

.related-product-card {
  display: flex;
  flex-direction: column;

  p {
    margin-bottom: 0;
  }
  .related-product-card__img-wrap {
    height: 212px;
    margin-bottom: 15px;

    @media (width < 960px) {
      margin-bottom: 10px;
    }

    @media (width < 960px) {
      height: 120px;
    }
  }
  .related-product-card__price {
    margin-block: 5px 15px;

    @media (width < 960px) {
      margin-block: 10px;
    }

    .related-product-card__price-caption {
      font-weight: 400;
      color: var(--c-gray-text);
    }
  }
  .related-product-card__footer {
    margin-top: auto;
  }
}

.generic-form {
  background:
    linear-gradient(hsl(0 0 100 / 0.85), hsl(0 0 100 / 0.85)),
    url(/assets/img/form_generic_bg.jpg)
    center / cover;

  &.generic-form--customer-review .generic-form__wrap {
    display: block;
  }

  .generic-form__header {
    padding-top: 83px;
    margin-bottom: 18px;

    @media (width < 640px) {
      padding-top: 24px;
      margin-bottom: 0;
    }
  }

  .generic-form__wrap {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 10px;
    padding-block: 20px;

    @media (width < 960px) {
      display: block;
    }

    .generic-form__banner-col {
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;

      @media (width < 960px) {
        display: none;
      }
    }
  }
}


.contacts-form-section__text + .contacts-form-section__form {
  margin-top: var(--margin-x-small);

  @media (width < 960px) {
    margin-top: var(--margin-top-text-header);
  }
}


table.table-simple-redesign {
  table-layout: fixed;
  border-collapse: collapse;
  width: 100%;

  td {
    padding: 15px 10px;
    border: 1px solid var(--c-gray-border);
  }
}


.banner-redesign {
  background: var(--bg-darkening-layer), var(--banner-redesign-bg) center / cover no-repeat;
  padding: 83px 30px 27px;

  @media (width < 1200px) {
    background-image: var(--bg-darkening-layer), var(--banner-redesign-bg-960);
  }
  @media (width < 960px) {
    background-image: var(--bg-darkening-layer), var(--banner-redesign-bg-640);
  }
  @media (width < 640px) {
    padding: 83px 19px 58px;
    background-image: var(--bg-darkening-layer), var(--banner-redesign-bg-480);
  }
  @media (width < 480px) {
    background-image: var(--bg-darkening-layer), var(--banner-redesign-bg-320);
  }
}


.promotion-info {
  display: flex;
  flex-direction: column;
  row-gap: 10px;
  text-wrap: balance;

  p {
    margin-bottom: 0;
  }
  .promotion-info__plate {
    padding: 15px 25px;
    background-color: var(--c-orange);
    color: var(--c-gray);
    width: fit-content;

    @media (width < 640px) {
      width: 100%;
      font-size: 35px;
      line-height: 32px;
      text-align: center;
    }
  }
  .promotion-info__text {
    font-weight: 400;
    color: var(--c-gray-text);
  }
}


.promotion-banner-with-form__promotion-info .promotion-info__bold-text {
  color: var(--c-gray)
}
.promotion-banner-with-form__short-form {
  --promotion-banner-form-color: var(--c-gray);

  margin-top: 36px;
  max-width: 574px;

  .input-wrap-redesign {
    border-color: var(--promotion-banner-form-color);

    & > input {
      color: var(--promotion-banner-form-color);
      caret-color: currentColor;

      &.is-invalid {
        color: var(--c-red);
      }

      &::placeholder {
        color: var(--promotion-banner-form-color);
      }
    }
  }
  .input-agreement-wrap-redesign > label {
    color: var(--c-gray-text);

    &::before {
      border-color: var(--c-gray-text);
    }
  }
}


.pagination-redesign__list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;

  .pagination-redesign__list-item-link {
    width: fit-content;
    min-width: 46px;
    padding: 14px;

    &.pagination-redesign__list-item-link--current, &.pagination-redesign__list-item-link--skip {
      color: var(--c-red) !important;
      user-select: none;
    }
  }
}


.notyf {
  z-index: 10000;
}


.gallery-redesign-block__items-wrap {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 20px 9px;

  @media (width < 1200px) {
    column-gap: 10px;
  }
  @media (width < 960px) {
    grid-template-columns: 1fr 1fr;
  }
  @media (width < 480px) {
    grid-template-columns: 1fr;
  }

  .gallery-redesign-block__item-img-wrap {
    width: 100%;
    height: 206px;

    img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
    }
  }
  .gallery-redesign-block__item-btn {
    margin-top: 9px;
    width: 100%;
  }
}