.product-header {
  display: grid;
  grid-template-columns: 460px 1fr;
  gap: 20px;
  align-items: start;

  .to-cart,
  .in-cart {
    display: flex;
    align-items: center;
    padding: 0 20px !important;
    font-weight: 400 !important;
    line-height: var(--font-body-line-height) !important;

    background-image: none !important;
    text-transform: none !important;
    border-radius: 10px !important;

    i {
      position: relative;
      top: -1px;
      display: flex;
      align-items: center;
      justify-content: center;
      margin: 0 !important;
      background-position: center !important;
    }

    span {
      font-weight: 400 !important;
    }

    &.small {
      height: 32px !important;
      font-size: var(--font-body-secondary-size) !important;

      span {
        font-size: var(--font-body-secondary-size) !important;
      }

      i {
        width: 16px !important;
        height: 16px !important;
        background-repeat: no-repeat !important;
        background-size: 16px 16px !important;
      }
    }

    &.big_btn {
      height: 48px !important;
      min-width: 200px;
      font-weight: 400 !important;
      font-size: var(--font-body-size) !important;

      span {
        font-size: var(--font-body-size) !important;
      }

      i {
        width: 24px !important;
        height: 24px !important;
        background-repeat: no-repeat !important;
        background-size: 24px 24px !important;
      }
    }
  }

  .to-cart {
    flex: 1;

    i {
      background-image: url("/local/templates/new_design/images/svg/cart.svg");
    }
  }

  .in-cart {
    i {
      background: url("/local/templates/new_design/images/svg/agree-black.svg")
        no-repeat !important;
    }
  }

  .img_wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .counter_wrapp {
    margin-bottom: 0px;
    padding-top: 0px;
    white-space: nowrap;
    gap: 20px;
    display: flex;

    .button_block {
      margin-top: 0 !important;
    }
  }

  .total_summ {
    margin-top: 10px;
    white-space: break-spaces;
    text-align: right;
  }

  .cost.prices {
    display: flex;
    text-align: left;
    gap: 10px;
    align-items: flex-start;

    .price {
      font-size: var(--font-body-size) !important;
      padding: 0 !important;
    }
  }

  .counter_block {
    flex: 1;
    height: auto;
    margin: 0 !important;
    gap: 4px;
    align-items: center;

    input {
      width: 50px !important;
      height: 48px !important;
      border: 1px solid var(--color-primary-gray) !important;
      padding: 0 !important;
      margin: 0 !important;
      color: var(--color-primary-black) !important;
      border-right: 10px;
      font-size: var(--font-body-size) !important;

      &.not-changed {
        color: var(--color-secondary-gray-dark) !important;
      }
    }

    .plus,
    .minus {
      width: 24px;
      border-radius: 100%;
      border: 1px solid var(--color-primary-black);
      height: 24px;
      background-color: #fff !important;
      transition:
        transform 0.18s ease,
        box-shadow 0.18s ease,
        opacity 0.18s ease;
      will-change: transform;
      flex-shrink: 0;
      cursor: pointer;

      &._disabled {
        opacity: 0.4;
        cursor: not-allowed;
        transform: none;
      }
    }

    .minus {
      background: url(/local/templates/new_design/images/elements.svg) center
        no-repeat;
    }

    .plus {
      background: url(/local/templates/new_design/images/add-01.svg) center
        no-repeat;
    }

    .minus:hover:not(._disabled),
    .plus:hover:not(._disabled) {
      transform: translateY(-1px) scale(1.05);
    }

    .minus:active:not(._disabled),
    .plus:active:not(._disabled) {
      transform: translateY(0) scale(0.94);
    }

    .minus:focus-visible,
    .plus:focus-visible {
      box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.25);
    }
  }

  .middle_info,
  .info_item {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 0 !important;
  }

  .middle_info {
    overflow: hidden !important;
  }

  .top_info {
    padding: 0 !important;
  }

  .new_buy_block {
    padding: 20px;
    background: var(--color-primary-gray-light);
    border-radius: 10px;
  }

  .prices_korz_block {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 20px;

    .buy_block {
      padding: 0 !important;
    }

    .prices_block {
      margin: 0 !important;
    }
  }

  .dostavka_block {
    border-top: 1px solid var(--color-secondary-gray);
  }

  .dostavka_block_first {
    gap: 10px;
    padding-top: 20px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: anchor-center;
    vertical-align: middle;
  }

  .dost_izvoz2-text {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: var(--font-caption-size) !important;
    color: var(--color-secondary-gray-dark);
    flex-shrink: 0;
  }

  .middle_info {
    .article {
      font-size: var(--font-caption-size);
      font-weight: 400;
      color: var(--color-secondary-gray-dark);

      .value {
        color: var(--color-primary-black);
      }
    }

    .preview_text {
      font-style: var(--font-body-secondary-size);
      display: block !important;
    }
  }

  .like_icons {
    display: flex !important;
    gap: 30px !important;
    align-items: center;
    padding: 0 !important;
    flex-wrap: wrap;

    .rating {
      margin: 0 !important;
    }

    .wish_item,
    .wish_item span {
      padding: 0 !important;
      margin: 0 !important;
    }

    .compare_item,
    .compare_item span {
      padding: 0 !important;
      margin: 0 !important;
    }

    .share_wrapp,
    .share_wrapp div {
      padding: 0 !important;
      margin: 0 !important;
    }

    span.value:before {
      content: "" !important;
      display: inline-block !important;
      width: 16px !important;
      height: 16px !important;
      margin: 0 !important;
      background-position: center center !important;
      background-size: contain !important;
      margin-right: 8px !important;
    }

    .share_wrapp .text.button:before {
      content: "" !important;
      display: inline-block !important;
      width: 16px !important;
      position: static !important;
      height: 16px !important;
      margin: 0 !important;
      margin-right: 8px !important;
      background: url(/local/templates/new_design/images/share_block.svg)
        no-repeat !important;
      background-position: center center !important;
      background-size: contain !important;
    }

    .share_wrapp .text {
      display: flex;
      align-items: center;
    }

    .card-action-item span,
    .share_wrapp .text {
      font-size: var(--font-body-secondary-size) !important;
      color: var(--color-secondary-gray-dark) !important;
      font-weight: 400 !important;
    }

    .card-action-item span:hover,
    .share_wrapp:hover .text {
      color: var(--color-primary-black) !important;
    }
  }

  .prices .price,
  .prices .price > * {
    margin: 0 !important;
    font-size: var(--font-h4-size) !important;
    font-weight: 500 !important;
    line-height: 1;
  }

  .item-stock .icon {
    display: block;
    width: 16px;
    margin: 0;
    height: 16px;
    padding: 0;
  }

  .item-stock .icon.stock {
    background: url(/local/templates/new_design/images/svg/agree-green.svg)
      no-repeat !important;
  }

  .item-stock .icon.order {
    background: url("/local/templates/new_design/images/svg/agree-red.svg")
      no-repeat !important;
  }

  .item-stock {
    display: flex !important;
    gap: 4px;
    justify-items: center;
    justify-content: center;
    margin: 0 !important;

    .value {
      text-transform: capitalize !important;
    }

    .icon_text {
      color: var(--color-secondary-gray-dark);
    }
  }

  .item-stock > * {
    display: flex !important;
    padding: 0 !important;
    font-size: var(--font-caption-size) !important;
  }

  .icon_delivery {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
  }

  .icon_delivery img {
    display: block;
    width: auto;
    height: auto;
    max-width: 100%;
  }
}

/*галерея*/

.product-gallery {
  width: 100%;
  position: relative;
}

.product-gallery__main {
  border: 1px solid var(--color-secondary-gray);
  border-radius: 10px;
  overflow: hidden;
  background: #fff;
}

.product-gallery__main .swiper-slide {
  display: flex;
  align-items: center !important;
  justify-content: center !important;
  height: 380px !important;
  background: #fff;
}

.product-gallery__main .swiper-slide > a,
.product-gallery__main .swiper-slide > img {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.product-gallery__main img {
  display: block;
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
}

/*.product-gallery__thumbs-wrap {*/
/*    position: relative;*/
/*    padding: 0 34px;*/
/*}*/

.product-gallery__thumbs {
  margin-top: 10px;
  overflow: hidden;
}

.product-gallery__thumbs .swiper-wrapper {
  align-items: stretch;
}

.product-gallery__thumbs .swiper-slide {
  aspect-ratio: 1/1;
  border: 1px solid var(--color-secondary-gray);
  border-radius: 10px;
  background: #fff;
  overflow: hidden;
  box-sizing: border-box;
  cursor: pointer;
  transition:
    border-color 0.2s ease,
    box-shadow 0.2s ease;
  display: flex;
  align-items: center;
  justify-content: center;
}

.product-gallery__thumbs .swiper-slide img {
  display: block;
  max-width: calc(100% - 12px);
  max-height: calc(100% - 12px);
  width: auto;
  height: auto;
  object-fit: contain;
}

.product-gallery__thumbs .swiper-slide-thumb-active {
  border-color: var(--color-primary-black);
}

.product-gallery__thumbs-prev,
.product-gallery__thumbs-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
  cursor: pointer;
  z-index: 2;
}

.product-gallery__thumbs-prev {
  left: 0;
}

.product-gallery__thumbs-next {
  right: 0;
}

.product-gallery__thumbs-prev::before,
.product-gallery__thumbs-next::before {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  margin: 6px auto 0;
  border-top: 2px solid #222;
  border-right: 2px solid #222;
}

.product-gallery__thumbs-prev::before {
  transform: rotate(-135deg);
}

.product-gallery__thumbs-next::before {
  transform: rotate(45deg);
}

/* если у товара одна картинка */
.product-gallery__single {
  border: 1px solid #d9d9d9;
  border-radius: 18px;
  overflow: hidden;
  background: #fff;
  min-height: 510px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.product-gallery__single a,
.product-gallery__single img {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.product-gallery__single img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

@media (max-width: 1200px) {
  .product-header {
    grid-template-columns: 420px 1fr;
  }

  .product-gallery__main .swiper-slide,
  .product-gallery__single {
    aspect-ratio: 460/380;
    height: auto !important;
  }
}

@media (max-width: 992px) {
  .product-header {
    grid-template-columns: 1fr;

    .img_wrapper {
      padding: 1px;
    }
  }

  .product-gallery {
    max-width: 462px;
  }
}

@media (max-width: 500px) {
  .product-gallery {
    max-width: calc(100vw - 40px);
  }
}
/*галерея*/

/*список преимущества*/
.product-advantages {
  width: 100%;
  padding: 20px 0;
  margin: 10px 0;
}

.product-advantages__list {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 20px;
  width: 100%;
}

.product-advantages__item {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 60px;
  width: calc(20% - 16px);
  text-decoration: none;
  color: #222222;
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease,
    opacity 0.2s ease;
}

a.product-advantages__item {
  white-space: nowrap;
}

.product-advantages__item:focus {
  outline: none;
}

.product-advantages__icon {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  flex-shrink: 0;
}

.product-advantages__content {
  display: flex;
  align-items: center;
  min-height: 60px;
  flex: 1 1 auto;
  font-size: var(--font-body-secondary-size);
  line-height: 1.2;
  font-weight: 400;
  color: var(--color-primary-black);
}

@media (max-width: 1199px) {
  .product-advantages__list {
    justify-content: center;
  }

  .product-advantages__item {
    width: calc(25% - 20px);
  }
}

@media (max-width: 900px) {
  .product-advantages__item {
    width: calc(33.33% - 20px);
  }
}

@media (max-width: 600px) {
  .product-advantages__list {
    flex-direction: column;
  }

  .product-advantages__item {
    width: 100%;
  }
}
/*список преимуществ*/

.tooltips b {
  color: #fff;
}

.thums_imp {
  max-width: 100% !important;
}

.dost_izvoz2 {
  display: flex;
  align-items: start;
  gap: 10px;
}

.rating-wrapper {
  margin: 0 !important;
}

.icon-row {
  display: flex;
  flex-wrap: wrap; /* перенос на новую строку */
  gap: 4px;
  max-width: calc(6 * 60px + 2 * 3px); /* максимум 4 иконки в строке */
  align-items: center;
}

.icon_delivery {
  position: relative;
  width: 20px;
  height: 100%;
  cursor: pointer;
}

.icon_delivery img {
  width: 100%;
  height: 100%;
  display: block;
}

/* Tooltips */
.icon_delivery .tooltips {
  position: absolute;
  bottom: 125%;
  left: 50%;
  transform: translateX(-50%);
  background: #333;
  color: #fff;
  font-size: 12px;
  padding: 6px 8px;
  border-radius: 4px;
  white-space: normal; /* поддержка переносов и HTML */
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease-in-out;
  z-index: 10;
  min-width: 150px;
  max-width: 250px;
}

/* стрелочка */
.icon_delivery .tooltips::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  border-width: 5px;
  border-style: solid;
  border-color: #333 transparent transparent transparent;
}

.icon_delivery:hover .tooltips {
  opacity: 1;
}

.icon_delivery .dost_izvoz span {
  color: #fff !important;
}

/*НОВЫЕ СТИЛИ*/

.middle:after {
  content: none !important;
}

#reviewFormWrapper {
  display: none;
  border: 1px solid #ddd;
  padding: 20px;
  margin-top: 20px;
  border-radius: 10px;
  background: #fff;

  .rating-stars {
    display: flex;
    flex-direction: row-reverse; /* чтобы 5-я была справа */
    width: fit-content;
  }

  .rating-stars span {
    cursor: pointer;
    font-size: 28px;
    color: #ccc;
    transition: 0.2s;
  }

  .rating-stars span.selected,
  .rating-stars span:hover,
  .rating-stars span:hover ~ span {
    color: #fdbc00;
  }

  .rating-stars input:checked ~ label,
  .rating-stars label:hover,
  .rating-stars label:hover ~ label {
    color: #fdbc00;
  }

  .rew_card {
    border: 1px solid #d9dada;
    box-shadow: none;
  }

  .review-rating {
    font-size: 20px;
    color: #fdbc00;
    margin-top: 10px;
  }

  .review-rating p {
    margin-top: 10px;
  }
}

.props_list td a.link-text {
  font-weight: 400 !important;
  font-size: 14px;
}

.iblock.text_block {
  color: var(--color-primary-gray-dark) !important;
}

.vbig_btn {
  font-size: var(--font-body-size);
}

.item_main_info {
  .tabs_section {
    margin: 0 !important;

    ul > li {
      margin: 0 !important;
    }

    ul.tabs_content > li {
      padding: 0 !important;
      margin-top: 10px !important;
    }

    .tabs_content h4 {
      background: var(--color-secondary-gray-dark);
      border-radius: 10px;
    }

    .tabs-head {
      display: flex;
      gap: 4px;
    }

    .tabs-head li {
      height: 48px;
      padding-inline: 40px;
      display: flex;
      background: transparent;
      align-items: center;
      justify-content: center;
      border-radius: 10px;
      font-weight: 400;
      user-select: none;

      span {
        color: var(--color-primary-black) !important;
        font-size: var(--font-body-size);
        font-weight: 400;
      }

      &.current {
        background: #fff;
      }

      &:hover {
        span {
          color: var(--color-primary-gray-dark) !important;
        }
      }
    }
  }

  .description--notice {
    font-size: var(--font-caption-size);
    line-height: var(--font-caption-line);
    color: var(--color-secondary-gray-dark);
    margin-top: 10px;
  }

  .detail_text {
    font-size: var(--font-body-secondary-size) !important;
    color: var(--color-primary-gray-dark) !important;

    ul li:before,
    ol li:before {
      padding: 0px !important;
      margin-left: 20px !important;
      width: 20px !important;
      display: inline-block !important;
      vertical-align: top !important;
      zoom: 1 !important;
    }

    ul li {
      list-style-type: disc !important;
      font-size: var(--font-body-secondary-size) !important;
      line-height: var(--font-body-secondary-line) !important;
      color: var(--color-primary-gray-dark) !important;
    }

    ol li {
      list-style-type: decimal !important;
      font-size: var(--font-body-secondary-size) !important;
      line-height: var(--font-body-secondary-line) !important;
      color: var(--color-primary-gray-dark) !important;
    }

    p {
      font-size: var(--font-body-secondary-size) !important;
      color: var(--color-primary-gray-dark) !important;
      line-height: var(--font-body-secondary-line) !important;
    }

    ul,
    ol {
      padding-left: 1.5rem !important;
      margin: 0 0 27px !important;
    }
  }
}

@media (max-width: 769px) {
  .product-header {
    .prices_korz_block,
    .counter_wrapp {
      flex-direction: column;
      gap: 20px;
    }

    .counter_wrapp {
      max-width: 256px;
      margin-inline: auto;
    }
  }

  .item_main_info {
    & .tabs_section {
      .tabs-head li {
        padding-inline: 15px;
        height: 40px;
      }
    }
  }

  .new_detail_test {
    gap: 15px !important;
  }

  .new_detail_test {
    flex-direction: column;
  }

  .new_detail_test .detail_text {
    flex: 1 !important;
    max-width: 100% !important;
  }

  .new_detail_test .detail_brand_text {
    flex: 1 !important;
    max-width: 100% !important;
  }

  .catalog_detail .item_main_info .right_info {
    border: none !important;
  }
}

.tabs-wrapper.swipeignore.arrow_scroll_init {
  background: var(--color-primary-gray-light);
  border-radius: 10px;

  .arrows_wrapper .arrow {
    width: 39px;
    backdrop-filter: blur(1px);
    border: none;

    &.arrow_right {
      right: -4.3px;
      border-top-right-radius: 10px;
      border-bottom-right-radius: 10px;
      background: linear-gradient(-90deg, #f1f1f1, #f1f1f1de);
    }

    &.arrow_left {
      left: -4.3px;
      border-top-left-radius: 10px;

      border-bottom-left-radius: 10px;
      background: linear-gradient(90deg, #f1f1f1, #f1f1f1de);
    }
  }
}

@media (max-width: 410px) {
  .product-header {
    .like_icons {
      gap: 20px !important;
      justify-content: center;

      .rating-wrapper {
        width: 100%;
        display: flex !important;
        justify-content: center !important;
      }

      span.value:before {
        margin-right: 0px !important;
      }
    }
  }

  .dost_izvoz2 {
    align-items: flex-start;
  }
}
