.catalog-top10 {
   margin-bottom: 70px;
   text-align: unset;

   a {
      @include underline-never;
   }

   p {
      margin: 0;
   }

   .title {
      @include underline-hover;

      display: block;
      margin-bottom: 2px;
      line-height: $line-height-base;
      font-size: $font-size-h4;
      font-weight: $font-weight-bold;

      @media screen and (min-width: $lg) {
         text-overflow: ellipsis;
         white-space: nowrap;
         overflow: hidden;
      }
   }

   .subtitle-wrapper {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 20px;
   }

   .subtitle {
      color: $text-muted;
   }

   .reviews-count {
      display: flex;
      align-items: center;
      color: $text-dark;
      font-size: $font-size-smaller;

      .review-stars {
         margin-right: 8px;
         margin-top: -3px;
      }
   }

   .descr {
      line-height: $line-height-lg;
   }

   .btn-link {
      display: inline-block;
      margin-bottom: $spacer;
   }

   @media screen and (max-width: $xs - 1) {
      .subtitle-wrapper {
         flex-wrap: wrap;
      }

      .subtitle {
         width: 100%;
         margin-bottom: 5px;
      }

      .flag-discount {
         width: 36px;
         height: 36px;
         font-size: 12px;
      }
   }
}

.catalog-top10-gallery {
   display: flex;
   margin-bottom: 25px;

   .img {
      padding: 20px;
   }

   .main-image {
      width: 70%;
   }

   .gallery {
      width: 30%;
      padding-left: 10px;

      .img {
         display: flex;
         align-items: center;
         justify-content: center;
         height: calc(50% - 5px);

         &:first-child {
            margin-bottom: 10px;
         }
      }
   }

   @media screen and (max-width: $xs - 1) {
      flex-wrap: wrap;

      .main-image {
         width: 100%;
         margin-bottom: 10px;
      }

      .gallery {
         width: 100%;
         padding: 0;
         display: flex;

         .img {
            height: auto;
            width: calc(50% - 5px);

            &:first-child {
               margin-bottom: 0;
               margin-right: 10px;
            }
         }
      }
   }
}

.catalog-top10-buy-box {
   padding: 20px;
   margin-bottom: 25px;
   border: 1px solid $border-color;
   display: flex;
   justify-content: space-between;
   align-items: center;

   .strike-price {
      text-decoration: none;
      font-size: 1rem;
      margin-bottom: 2px;
   }

   .price {
      font-size: 28px;
      line-height: $line-height-sm;
   }

   .unit-price {
      color: $body-color;
      font-size: 12px;
      white-space: nowrap;
   }

   .btn-insert {
      padding: 1rem 2rem;
   }

   @media screen and (max-width: 479px) {
      flex-wrap: wrap;

      .buy-form {
         width: 100%;
         margin-top: 10px;

         .btn-insert {
            width: 100%;
         }
      }
   }
}

