$catalog-variations-count-color: $gray !default;
$catalog-price-fontsize: 18px !default;
$catalog-title-font-size: $font-size-smaller !default;
$catalog-title-font-weight: null !default;
$catalog-title-lines: 2 !default;
$catalog-title-height: 33px !default;
$catalog-title-line-height: 1.3 !default;

.catalog-outer {
   position: relative;
}

.catalog {
   position: relative;

   a {
      @include underline-never;
   }

   h3,
   p {
      margin: 0;
      white-space: normal;
   }

   .img {
      @include image-bg;

      aspect-ratio: .9;
      display: flex;
      align-items: center;
      justify-content: center;

      img {
         max-width: 100%;
         margin: auto;
      }

      &::after {
         content: "";
         background: $image-bg;
         width: 100%;
         height: 40px;
         position: absolute;
         bottom: -40px;
         left: 0;
         right: 0;
      }
   }

   .catalog-flags {
      position: absolute;
      top: 16px;
      left: 16px;

      .flag-new,
      .flag-free-delivery,
      .flag-white,
      .flag-gray {
         background-color: $white;
      }
   }

   .catalog-content {
      padding: 13px 18px 20px;
      position: relative;
   }

   .variations-count {
      color: $catalog-variations-count-color;
      font-size: $font-size-smaller;
      line-height: 1;
      height: 42px;
   }

   .title {
      color: $text-dark;
      font-size: $catalog-title-font-size;
      font-weight: $catalog-title-font-weight;
      display: block;
      display: -webkit-box;
      -webkit-line-clamp: $catalog-title-lines;
      -webkit-box-orient: vertical;
      overflow: hidden;
      line-height: $catalog-title-line-height;
      height: $catalog-title-height;
   }

   .price-wrapper {
      height: 45px;

      .discount {
         color: $price-discount-color;
      }

      .price {
         color: $text-dark;
         display: flex;
         align-items: center;
         line-height: 1;
         font-size: $catalog-price-fontsize;
      }

      .strike-price {
         font-size: $font-size-base;
         color: $price-strike-price-color;
         margin-left: 10px;
         text-decoration: line-through;
      }
   }


   @media screen and (min-width: $lg) {
      @include haf {
         .catalog-variations,
         .catalog-collections {
            opacity: 1;
         }

         .catalog-producer {
            opacity: 0;
         }

         .title {
            text-decoration: underline;
         }
      }
   }

   @media screen and (max-width: $md - 1) {
      .catalog-content {
         padding-left: 10px;
         padding-right: 10px;
      }

      .price-wrapper {
         height: 40px;

         .discount,
         .strike-price {
            font-size: $font-size-smaller;
         }

         .price {
            font-size: $font-size-base;
         }
      }
   }

   @media screen and (max-width: $sm - 1) {
      .catalog-content {
         padding-left: 0;
         padding-bottom: 10px;

         .price-wrapper {
            padding-left: 10px;
         }

         h3 {
            padding-left: 10px;
         }
      }

      .variations-count {
         padding-left: 10px;
      }

      .catalog-flags {
         top: 5px;
         left: 5px;

         .flag {
            font-size: 10px;
            margin-bottom: 0;
         }
      }
   }
}

.catalog-row-b2b {
   margin-bottom: 20px;

   > div {
      width: 100%;
   }
}
