.cart__overlay{
  position: fixed;
  z-index: 1000;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  opacity: 0;
  transition: opacity 0.3s ease;
  display: none;
}

.cart__overlay.open {
  opacity: 1;
  display: block;
}

.cart__menu {
  position: fixed;
  right: -40%;
  top: 0;
  bottom: 0;
  width: 40%;
  height: 100vh;
  background-color: #FFFCF1;
  transition: right 0.5s;
  z-index: 1000;
  padding: 0.625rem 1.5625rem;
  padding-right: 0;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  display: flex;
  flex-direction: column;
}


.cart__price {
   margin-top: auto;
}

.cart__menu::-webkit-scrollbar-button {
  display: none;
}

.cart__menu::-webkit-scrollbar {
  width: 0.4rem;
  border-radius: 1.25rem;
}

.cart__menu::-webkit-scrollbar-track {
  background: #F4F2EE;
  border-radius: 1.25rem;
}

.cart__menu::-webkit-scrollbar-thumb {
  background-color: #686A70;
  border: 0.0625rem solid #F4F2EE;
  border-radius: 1.25rem;
}

.cart__menu::-webkit-scrollbar-thumb:hover {
  background: #3C3838;
}

.cart__menu.open {
  position: fixed;
  right: 0;
  top: 0;
  bottom: 0;
  transform: translateX(0);
}

body.over-h{
   overflow: hidden;
}

.cart__close-menu {
   width: 1.1875rem;
   height: 1.1875rem;
   cursor: pointer;
}

.catr__top {
   display: flex;
   justify-content: space-between;
   align-items: center;
   margin-bottom: 1.25rem;
}

.catr__top h2 {
   margin: 0;
   font-size: 2.1875rem;
   font-weight: 600;
   line-height: 130%;
   text-align: left;
   position: relative;
   width: fit-content;
}

.catr__top h2 span {
   font-size: 1rem;
   font-weight: 600;
   line-height: 110%;
   text-align: left;
   position: absolute;
   top: 0;
   right: -1.8rem;
}

.cell-2 {
   padding: 0;
}

.cell-2.item-image {
   width: 9rem;
   height: 9rem;
   flex: 0 0 9rem;
   max-width: none;
   flex-basis: auto;
   background: #F6F0DD;
   border-radius: 0rem;
}

.cell-2.item-image img {
   border-radius: 0rem;
   object-fit: contain;
   width: 100%;
   height: 100%;
}

.flex-middle {
   padding: 0;
}

.cart__info-base {
   display: flex;
   gap: 0.9375rem;
   flex-wrap: nowrap;
}

.cart__info-flex {
   display: flex;
   flex-direction: column;
}

.item-info-inner a {
   font-size: 1rem;
   font-weight: 600;
   line-height: 130%;
   text-align: left;
   text-decoration: none;
   color: inherit;
   cursor: pointer;
}

.cell-3,
.cell-1,
.cell-2 {
   max-width: none;
   flex-basis: auto;
}

.item-option_name {
   font-size: 0.75rem;
   font-weight: 600;
   line-height: 110%;
   text-align: left;
   color: #393C40;
   opacity: 0.67;
}

.item-quantity.text-center {
   display: flex;
   justify-content: center;
   align-items: center;
}

.cart__flex-last {
   display: flex;
   flex-direction: column;
   margin-left: auto;
   gap: 1.25rem;
}

.item-delete {
   padding: 0;
}

.cart__item-price {
   padding: 0;
   margin: 0;
   width: fit-content;
   font-size: 1rem;
   font-weight: 600;
   line-height: 100%;
   text-align: right;
}

.item-delete {
   height: fit-content;
}

.item-remove {
   width: fit-content;
   height: fit-content;
}

.item-delete.text-center span {
   background: url('https://static.insales-cdn.com/files/1/5776/34117264/original/rev-close.svg') right 62% no-repeat;
   padding-right: 0.9375rem;
   background-size: 0.5rem;
   font-size: 0.75rem;
   font-weight: 600;
   line-height: 100%;
   text-align: left;
}

.cell-3.row.flex-middle.item-info {
   align-items: flex-start;
}

.item-info-inner {
   display: flex;
   flex-direction: column;
   gap: 0.9375rem;
   align-items: flex-start;
}

.item-quantity.text-center {
   height: 2.5rem;
   border: 1px solid rgba(57, 60, 64, 0.37);
   background: inherit;
   border-radius: 0.375rem;
   gap: 0.1875rem;
}

.item-quantity-input.in-cart {
   font-family: "Manrope", sans-serif !important;
   background: inherit;
   border: none;
   font-size: 1rem;
   font-weight: 600;
   line-height: 110%;
   text-align: center;
   width: 2.1875rem;
}

.item-quantity.text-center .fa-minus:before {
   content: "\f068";
   display: flex;
   justify-content: center;
   align-items: center;
   font-size: 12px;
   padding: 0.625rem 0;
   width: 1rem;
   line-height: 0%;
}

.item-quantity.text-center .fa-plus:before {
   content: "\f067";
   display: flex;
   justify-content: center;
   align-items: center;
   font-size: 12px;
   padding: 0.625rem 0;
   width: 1rem;
   line-height: 0%;
}

.item-quantity.text-center {
   padding: 0 0.625rem;
}

.cart-items {
   display: flex;
   flex-direction: column;
   gap: 0.5rem;
   padding-bottom: 0.5rem;
   border-bottom: 0.063rem solid rgba(249, 245, 233, 1);
}

.cart-submit.bttn-second.in-cart {
   width: 100%;
   background: #3C3838;
   border-radius: 0.375rem;
   margin-top: 0.9375rem;
   margin-bottom: 0.9375rem;
   transition: all .3s ease;
   font-size: 0.875rem;
   font-weight: 600;
   line-height: 100%;
   text-align: center;
   border: none;
   text-transform: none;
   padding: 0;
   height: 2.625rem;
}

.cart-submit.bttn-second.in-cart span {
   opacity: 60%;
   padding-left: 1.5625rem;
}

.cart-submit.bttn-second.in-cart span.cart__old-price {
   font-size: 0.75rem;
   font-weight: 500;
   position: relative;
   padding-left: 0;
   margin-left: 1.5625rem;
   color: rgba(176, 175, 170, 1);
}


.cart-submit.bttn-second.in-cart span.cart__old-price::before {
   content: '';
   width: 100%;
   top: 50%;
   left: 50%;
   position: absolute;
   height: 0.07rem;
   background: rgba(176, 175, 170, 1);
   transform: translate(-50%, -50%) rotate(11deg);
}

.cart-submit.bttn-second.in-cart:hover {
   background: rgba(57, 60, 64, 0.9);
}

.header__search:not(:has(.page__search-header.active)):hover, .header__link:hover {
   opacity: 50%;
   color: #393C40;
}

.header__search:hover svg path, .header__link:hover svg path {
   opacity: 50%;
   stroke: #393C40;
}

.cart-form {
   display: flex;
   flex-direction: column;
   justify-content: space-between;
   gap: 3.25rem;
}



.cart__similar-slide {
   height: 9rem;
   width: 20rem !important;
}

.main__img-back-sim {
   width: 9rem;
   height: 9rem;
   flex: 0 0 9rem;
}

.sim__content-card {
   flex-direction: row;
   gap: 0.9375rem;
   align-items: flex-start;
   justify-content: start;
   width: fit-content;
   margin-right: 1rem;
}

.element__img-sim {
   width: 9rem !important;
   height: 9rem !important;
   object-fit: cover;
}

.cart__similar-price-title {
   display: flex;
   flex-direction: column;
   gap: 0.5rem;
}

.cart__similar-price-title p {
   font-size: 0.875rem;
   font-weight: 600;
   line-height: 140%;
   text-align: left;
   margin: 0;
}

.cart__similar-price-title p:last-child {
   font-weight: 500;
}

.products-slider-wrapper {
   padding: 0;
   position: static;
}

.products.products-is-cart_similar {
   position: relative;
   padding-bottom: 1.563rem;
}



.products-control {
   position: absolute;
   display: flex;
   justify-content: center;
   align-items: center;
   top: 0;
   right: 1.5625rem;
   gap: 1.5625rem;
}

.products-control img {
   width: 0.375rem;
   height: 0.75rem;
}


.products.products-is-cart_similar .products-title,
.catr__top,
.cart__main-form {
   padding-right: 1.5625rem;
}

.cart__similar-slide .sim__content-card .main__img-back-sim .pag__elem::before {
   bottom: 0.375rem !important;
   height: 0.1875rem;
}

.cart__similar-slide .sim__content-card .main__img-back-sim .images__pagination {
   gap: 0.3125rem !important;
}

.products-is-cart_similar{
  margin-top: auto;
}

.products.products-is-cart_similar .products-title{
  font-size: 1rem;
  font-weight: 600;
  line-height: 120%;
  text-align: left;
  margin-bottom: 0.938rem;
}

.cart__flex-price {
   display: flex;
   gap: 0.75rem;
   align-items: center;
}

.cart__free-del {
   display: flex;
   justify-content: space-between;
   align-items: center;
   margin: 0;
}

.cart__free-del p,
.cart__free-del span {
   font-weight: 500;
   font-size: 0.85rem;
   line-height: 120%;
   color: #393C40;
   opacity: 60%;
   margin: 0;
   margin-top: 10px;
   margin-bottom: 20px;
   padding-top: 10px;
   padding-bottom: 10px;
}

.item-delete svg {
   width: 1.125rem;
   height: 1.125rem;
}

@media(max-width: 1024px){
  .cart__menu {
    width: 75%;
    padding: 1.25rem;
    padding-top: 0.625rem;
    padding-right: 0;
  }
   .products.products-is-cart_similar .products-title,
   .catr__top,
   .cart__main-form {
      padding-right: 1.25rem;
   }

  .catr__top {
    margin-bottom: 1.25rem;
  }

  .catr__top h2 {
    font-size: 1.4375rem;
    font-weight: 600;
    line-height: 130%;
    text-align: left;
  }

  .catr__top h2 span {
    font-size: 0.875rem;
    font-weight: 600;
    line-height: 110%;
    text-align: left;
  }

  .cart__close-menu {
    width: 1.125rem;
    height: 1.125rem;
  }

  .cell-2.item-image {
    width: 9.9375rem;
    height: 9.9375rem;
    flex: 0 0 auto;
  }

  .cell-2.item-image img {
    width: 9.9375rem;
    height: 9.9375rem;
    border-radius: 0.375rem;
  }

  .item-info-inner a {
    font-size: 0.75rem;
    font-weight: 600;
    line-height: 130%;
    text-align: left;
  }

  .item-info-inner {
    gap: 0.9375rem;
  }

  .cart__item-price {
    font-size: 0.75rem;
    font-weight: 600;
    line-height: 100%;
    text-align: right;
  }

  .item-delete.text-center span {
    font-size: 0.625rem;
    font-weight: 600;
    line-height: 100%;
    text-align: left;
  }

  .item-quantity-input.in-cart {
    font-size: 0.75rem;
    font-weight: 500;
    line-height: 100%;
    text-align: center;
    width: 1.5625rem;
  }

  .item-quantity.text-center {
    gap: 0.5rem;
  }

  .cart__info-base .item-quantity.text-center .fa-minus:before,
  .cart__info-base .item-quantity.text-center .fa-plus:before {
    width: 1rem;
    height: 100%;
  }

  .item-option_name {
    font-size: 0.75rem;
    font-weight: 500;
    line-height: 1rem;
    text-align: left;
  }

  .item-quantity.text-center {
    width: 5.375rem;
    height: 2.125rem;
    padding: 0 1.125rem;
  }

  .cart-submit.bttn-second.in-cart {
    height: 2.375rem;
    border-radius: 0.375rem;
    font-size: 0.75rem;
    font-weight: 600;
    line-height: 100%;
    text-align: center;
  }

  .cart-submit.bttn-second.in-cart span {
    padding-left: 2.25rem;
  }

  .products.products-is-cart_similar .products-title {
    font-size: 0.875rem;
    font-weight: 600;
    line-height: 110%;
    text-align: left;
  }

  .products-control {
    gap: 1.5625rem;
    right: 1.25rem;
  }

  .products-control img {
    width: 0.3125rem;
    height: 0.625rem;
  }

  .element__img-sim {
    width: 9.9375rem !important;
    height: 9.9375rem !important;
    border-radius: 0.375rem;
  }

  .sim__content-card {
    gap: 0.9375rem;
  }

  .cart__similar-price-title p {
    font-size: 0.75rem;
  }

  .cart__similar-price-title {
    gap: 0.5625rem;
  }

  .cart__similar-slide {
    
  }

  .cart__menu {
    right: -75%;
  }

  .cart-items{
    gap: 0.625rem;
  }
}

@media (max-width: 767px){
  .cart__menu {
     width: 100%;
     right: -100%;
     padding: 0.9375rem;
     padding-top: 0.625rem;
     padding-right: 0;
  }

   .products.products-is-cart_similar .products-title,
   .catr__top,
   .cart__main-form {
      padding-right: 0.9375rem;
   }

  .catr__top {
     margin-bottom: 1.5rem;
  }

  .catr__top h2 {
     font-size: 2rem;
  }

  .catr__top h2 span {
     font-size: 1rem;
  }

  .cart__close-menu {
     width: 1rem;
     height: 1rem;
  }

  .cell-2.item-image {
     width: 5.75rem;
     height: 5.75rem;
     flex: 0 0 auto;
  }

  .cell-2.item-image img {
     width: 5.75rem;
     height: 5.75rem;
     border-radius: 0.375rem;
  }

  .cart__info-base {
     gap: 0.9375rem;
  }

  .item-info-inner {
     gap: 0.5rem;
  }

  .item-info-inner a {
     font-size: 0.875rem;
  }

  .item-option_name {
     font-size: 0.75rem;
  }

  .item-quantity-input.in-cart {
     font-size: 0.75rem;
  }

  .item-quantity.text-center {
     width: 5.375rem;
     height: 2rem;
     border-radius: 0.375rem;
  }

  .cart__item-price {
     font-size: 0.875rem;

  }

  .item-delete.text-center span {
     font-size: 0.625rem;
  }

  .cart-items {
     gap: 0.5rem;
  }

  .cart-submit.bttn-second.in-cart {
     border-radius: 0.3125rem;
     font-size: 0.875rem;
     height: 2.688rem;
     padding: 0;
  }

  .cart-submit.bttn-second.in-cart span {
     padding-left: 0.9375rem;
  }

  .cart-form {
     height: auto;
     gap: 3.4375rem;
  }

  .products.products-is-cart_similar .products-title {
     font-size: 0.875rem;
     margin-bottom: 0.9375rem;
  }

  .sim__content-card img {
     width: 5.75rem !important;
     height: 5.75rem !important;
  }

  .main__img-back-sim {
     width: 5.75rem !important;
     height: 5.75rem !important;
     flex: 0 0 5.75rem;
  }
  .cart__similar-slide {
    width: 13rem !important; 
    margin-right: 1rem;
    height: auto;
  }

  .sim__content-card {
     gap: 0.9375rem;
     width: 100%;
     margin: 0;
  }

  .cart__similar-price-title p {
     font-size: 0.75rem;
  }

  .cart__similar-price-title {
     gap: 0.3125rem;
  }
  .products-control {
    right: 0.9375rem;
  }
}

.cart__promo-wrp {
   padding-top: 1.5rem;
   padding-bottom: 0.5rem;
   border-bottom: 0.063rem solid rgba(249, 245, 233, 1);
   position: relative;
}

.cart__promo-del {
   width: 0.75rem;
   height: auto;
   cursor: pointer;
   position: absolute;
   right: 0;
   top: 50%;
   transform: translateY(-50%);
}

.cart__promo-del img {
   width: 100%;
   height: 100%;
}

.cart__promo-vis {
   display: block;
   cursor: pointer;
   font-size: 1rem;
   font-weight: 400;
   line-height: 130%;
   text-align: left;
   text-decoration-line: underline;
   text-decoration-style: dotted;
   text-underline-offset: 25%;
   text-decoration-thickness: 7.5%;
   text-underline-position: from-font;
   text-decoration-skip-ink: none;
   color: rgba(57, 60, 64, 0.5);
   margin-bottom: 0.75rem;
   margin-top: 0.75rem;
   width: fit-content;
}

.cart__promo-vis.hid {
   display: none;
}

.cart__promo-inner {
   display: none;
}

.cart__promo-inner.active{ 
   display: block;
}

.discounts-wrap {
   margin-top: 0.63rem;
   width: 100%;
   position: relative;
   margin-bottom: 0.5rem;
}

.discounts-wrap input {
   width: 100%;
   height: 1.75rem;
   border-bottom: 0.063rem solid #393C40;
   font-size: 1rem;
   font-weight: 500;
   line-height: 130%;
   text-align: left;
   color: #393C40;
}

.discounts-wrap input::placeholder {
   color: #393C4050;
}

.discount-button {
   width: 3.125rem;
   height: auto;
   background: transparent !important;
   position: absolute;
   top: 50%;
   transform: translateY(-50%);
   border: none;
   box-shadow: none;
   right: 0;
}

.discount-button button {
   width: 100%;
   background: transparent !important;
   border: none;
   box-shadow: none;
   padding: 0 !important;
   display: flex;
   align-items: center;
   justify-content: center;
}

.discount-button button img {
   width: 100%;
}

.discount-button button:hover {
   background: transparent !important;
   border: none;
   box-shadow: none;
}

.discount__none {
   color: rgba(207, 175, 150, 0.67);
   font-size: 0.85rem;
   font-weight: 500;
   line-height: 120%;
   text-align: left;
   
}

.discounts-row span {
   font-size: 0.85rem;
   font-weight: 500;
   line-height: 120%;
   text-align: left;
   color: rgba(30, 30, 30, 0.5);
}






.cart__promo-wrp {
  margin-bottom: 20px;
}

.cart__promo-input-container {
  display: flex;
  align-items: center;
  padding: 0;
  position: relative;
  margin-bottom: 6rem;
}

.cart__promo-input-container input {
  color: rgba(57, 60, 64, 1);
  font-weight: 400;
  font-size: 0.85rem;
  line-height: 100%;
  padding: 1rem;
  padding-right: 2.7rem;
  border: 0.0625rem solid rgba(57, 60, 64, 0);
  background-image: linear-gradient(to right, rgba(57, 60, 64, 0.3) 10px, transparent 5px),linear-gradient(to bottom, rgba(57, 60, 64, 0.3) 10px, transparent 5px),linear-gradient(to left, rgba(57, 60, 64, 0.3) 10px, transparent 5px), linear-gradient(to top, rgba(57, 60, 64, 0.3) 10px, transparent 5px);
  background-position: top, right, bottom, left;
  background-size: 0.9375rem 0.0625rem, 0.0625rem 0.9375rem, 0.9375rem 0.0625rem, 0.0625rem 0.9375rem;
  background-repeat: repeat-x, repeat-y, repeat-x, repeat-y;
  border-radius: 0.375rem;
  transition: all .3s ease;

  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: transparent !important;
  text-transform: uppercase;
}

.cart__promo-input-container input:-webkit-autofill,
.cart__promo-input-container input:-webkit-autofill:hover,
.cart__promo-input-container input:-webkit-autofill:focus,
.cart__promo-input-container input:-webkit-autofill:active {
  -webkit-box-shadow: inherit !important;
  -webkit-text-fill-color: rgba(57, 60, 64, 1) !important;
  transition: background-color 5000s ease-in-out 0s;
  background-clip: content-box !important;
}

.cart__promo-input-container input::placeholder {
  color: rgba(57, 60, 64, 0.5);
  text-transform: none;
}

.cart__promo-input-container input:hover,
.cart__promo-input-container input:focus,
.cart__promo-input-container input:not(:placeholder-shown) {
  background-image: none;
  border: 0.0625rem solid rgba(57, 60, 64, 1);
  outline: none;
}


.discounts-coupon {
  flex-grow: 1;
  border: none;
  outline: none;
  padding: 5px 0;
  font-size: 14px;
}

.discount-button {
   margin: 0;
   padding: 0;
   right: 1rem;
   width: 1.5rem;
   height: 1rem;
   top: 50%;
   transform: translateY(-50%);
   display: flex;
   align-items: center;
   justify-content: center;
}

.discount-button button {
   width: 100%;
   height: 100%;
}

.discount-button button svg {
   width: 100%;
   height: 100%;
}

.discounts-submit {
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
}

.cart__promo-applied {
   display: flex;
   align-items: center;
   gap: 0.85rem;
   width: fit-content;
   height: 2rem;
   border: 0.0625rem solid rgba(57, 60, 64, 1);
   background: rgba(251, 255, 2, 1);
   padding: 0 1rem;
   border-radius: 0.375rem;
   margin-bottom: 6rem;
}

.cart__promo-applied-text {
   color: rgba(57, 60, 64, 1);
   font-size: 0.875rem;
   font-weight: 500;
   line-height: 110%;
   padding: 0;
   margin: 0;
   text-transform: uppercase;
}

.cart__promo-remove {
   width: 0.75rem;
   height: 0.75rem;
   display: flex;
   align-items: center;
   justify-content: center;
}

.cart__promo-remove button {
   background: none;
   border: none;
   cursor: pointer;
   padding: 0;
   margin: 0;
   width: 100%;
   height: 100%;
   display: flex;
   align-items: center;
   justify-content: center;
}

.cart__promo-remove button svg {
   transition: all .3s ease;
   width: 100%;
   height: 100%;
}

.cart__promo-remove button svg path {
   width: 100%;
   height: 100%;
}

.cart__promo-remove button:hover {
   background: none;
   border: none;
   cursor: pointer;
   padding: 0;
   margin: 0;
}

.cart__promo-remove button:hover svg {
   opacity: 50%;
}

.custom-discount-display {
   display: flex;
   align-items: center;
   justify-content: space-between;
   color: rgba(57, 60, 64, 1);
   font-weight: 600;
   font-size: 0.875rem;
   line-height: 130%;
}

.cart__product-sum {
   display: flex;
   align-items: center;
   justify-content: space-between;
   color: rgba(57, 60, 64, 1);
   font-weight: 600;
   font-size: 0.875rem;
   line-height: 130%;
   margin-bottom: 0.75rem;
}

.cart__discouns-p {
   display: flex;
   align-items: center;
   justify-content: space-between;
   color: rgba(57, 60, 64, 1);
   font-weight: 600;
   font-size: 0.875rem;
   line-height: 130%;
}

.custom-discount-error {
   display: none;
   position: absolute;
   top: 5rem;
   color: #DDBEA7;
   font-weight: 600;
   font-size: 0.75rem;
   line-height: 130%;
}

.cart__promo-input-container.invalid--promo + .custom-discount-error {
   display: block;
}

.cart__promo-input-container.invalid--promo input:not(:hover, :focus) {
   border-color: #DDBEA7;
}

.discount--info {
   margin-top: 1rem;
}

.discounts-rows {
  margin-top: 10px;
}

.discount--info {
   display: none !important;
}

.cart__total-p {
   display: flex;
   align-items: center;
   justify-content: space-between;
   margin-top: 0.5rem;
   color: rgba(57, 60, 64, 1);
   font-weight: 600;
   font-size: 1.2rem;
   line-height: 130%;
   vertical-align: middle;
}

.cart__total-prices {
   display: flex;
   align-items: center;
   gap: 0.5rem;
}

.cart__total-old {
   font-size: 0.85rem;
   opacity: 0.5;
   position: relative;
}

.cart__total-old::before {
   content: '';
   position: absolute;
   top: 50%;
   left: 0;
   transform: translateY(-50%);
   background: rgba(57, 60, 64, 0.5);
   height: 1pt;
   width: 100%;
}

.cart__item-old-price {
   color: rgba(57, 60, 64, 0.5);
   font-weight: 600;
   font-size: 0.75rem;
   line-height: 130%;
   vertical-align: middle;
   text-decoration: line-through;
   margin: 0;
}








.swiper-slide.similar-product-slide {
   height: auto;
   width: 20rem !important;
   margin-right: 1rem;
}

.similar-product-card {
   display: flex;
   background: transparent;
   border-radius: 0;
   overflow: visible;
   box-shadow: none;
   transition: none;
   height: auto;
   border: none;
}

.similar-product-card:hover {
   box-shadow: none;
   transform: none;
}

.similar-product-image-container {
   position: relative;
   width: 8rem;
   height: 8rem;
   flex-shrink: 0;
   overflow: hidden;
   background: #F9F5E9;
   border-radius: 0.5rem;
}

.similar-product-image {
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
   width: 100%;
   height: 100%;
   object-fit: contain;
   opacity: 0;
   transition: opacity 0.3s ease;
}

.similar-product-image.active {
   opacity: 1;
}

.similar-product-hover-zones {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   display: flex;
   z-index: 2;
}

.hover-zone {
   flex: 1;
   height: 100%;
   cursor: pointer;
}

.similar-product-indicators {
   position: absolute;
   bottom: 0.5rem;
   left: 50%;
   transform: translateX(-50%);
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 0.25rem;
   z-index: 3;
   padding: 0 0.5rem;
   width: calc(100% - 1rem);
   opacity: 0;
   transition: opacity 0.3s ease;
}

.similar-product-card:hover .similar-product-indicators {
   opacity: 1;
}

.indicator {
   height: 0.125rem;
   flex: 1;
   border-radius: 0.25rem;
   background: #3C3838;
   opacity: 0.3;
   transition: all 0.3s ease;
}

.indicator.active {
   transform: scale(1.05);
   opacity: 1;
}

.similar-product-info {
   flex: 1;
   padding: 0 1rem;
   display: flex;
   flex-direction: column;
   min-width: 0;
   gap: 0.5rem;
}

.similar-product-link {
   text-decoration: none;
   color: inherit;
}

.similar-product-title {
   font-size: 0.875rem;
   font-weight: 500;
   margin: 0;
   line-height: 1.3;
   color: #393C40;
   display: -webkit-box;
   -webkit-line-clamp: 2;
   -webkit-box-orient: vertical;
   overflow: hidden;
   transition: color 0.3s ease;
}

.similar-product-link:hover .similar-product-title {
   color: #393C4078;
}

.similar-product-add-btn {
   display: flex;
   align-items: center;
   gap: 0.5rem;
   background: #393C40;
   color: #FFFCF1;
   border: none;
   border-radius: 0.375rem;
   padding: 0.5rem;
   font-size: 0.75rem;
   font-weight: 600;
   cursor: pointer;
   transition: all 0.3s ease;
   min-width: 40%;
   justify-content: center;
   height: 1rem;
}

.similar-product-add-btn:hover {
   background: #393c40e6;
}

.similar-product-add-btn:active {
   transform: none;
}

.similar-product-add-btn.loading {
   opacity: 0.7;
   cursor: not-allowed;
}

.add-btn-icon {
   font-size: 1rem;
   font-weight: bold;
}

.add-btn-price {
   font-weight: 600;
}

.similar-product-add-btn.added {
   background: #6c757d;
   cursor: default;
}

.similar-product-add-btn.added .add-btn-icon {
   content: "✓";
}

@media (max-width: 768px) {
   .similar-product-card {
      height: auto;
   }

   .similar-product-image-container {
      width: 7.25rem;
      height: 7.25rem;
   }

   .similar-product-info {
      padding: 0 0.75rem;
   }

   .similar-product-title {
      font-size: 0.75rem;
   }

   .similar-product-add-btn {
      padding: 0.4rem;
      font-size: 0.65rem;
   }
   
   .similar-product-hover-zones,
   .similar-product-indicators {
      display: none;
   }
}

@media (max-width: 480px) {

   .similar-product-card {
      height: auto;
   }

   .similar-product-image-container {
      width: 5.625rem;
      height: 5.625rem;
   }

   .similar-product-info {
      padding: 0 0.625rem;
   }

   .similar-product-title {
      font-size: 0.75rem;
      -webkit-line-clamp: 1;
   }
}

.similar-products-swiper {
   overflow: visible;
}

.similar-products-swiper .swiper-wrapper {
   align-items: stretch;
}

.similar-product-add-btn.loading {
   opacity: 0.7;
   cursor: not-allowed;
}

.similar-product-add-btn.added {
   color: #3C3838;
   background: #F6F0DD;
   opacity: 50%;
   cursor: default;
}

.similar-product-add-btn.error {
   background: #dc3545;
   cursor: default;
}

.similar-product-add-btn.loading .add-btn-icon {
   animation: spin 1s linear infinite;
}

@keyframes spin {
   0% {
      transform: rotate(0deg);
   }

   100% {
      transform: rotate(360deg);
   }
}

.cart__similar-swiper .swiper-wrapper {
   align-items: stretch;
}

.similar-product-indicators {
   transition: opacity 0.3s ease;
}

.similar-product-card:hover .similar-product-indicators {
   opacity: 1;
}

.similar-product-image {
   transition: opacity 0.3s ease;
}

.similar-product-image.active {
   opacity: 1;
}

.hover-zone {
   cursor: pointer;
}

@media (max-width: 768px) {
   .cart__similar-swiper .swiper-slide {
      width: 17rem !important;
   }

   .similar-product-indicators {
      opacity: 1;
   }
}

@media (max-width: 480px) {
   .cart__similar-swiper .swiper-slide {
      width: 15rem !important;
   }
}

.cart__empty-inner {
   display: flex;
   flex-direction: column;
   align-items: center;
   padding-right: 1.5625rem;
   padding-top: 3rem;
}

.cart__empty-inner img {
   width: 11rem;
}

.cart__empty-inner p {
   width: 20rem;
   font-weight: 600;
   font-size: 1.3rem;
   text-align: center;
   margin-top: 1.5rem;
   margin-bottom: 3rem;
}

.cart__empty-btn {
   padding: 0.875rem 0.625rem;
   border-radius: 0.5rem;
   font-weight: 600;
   font-size: 1rem;
   display: flex;
   align-items: center;
   justify-content: center;
   width: 100%;
   color: #FFFCF1;
   background: #393C40;
}

.cart__empty-btn:hover {
   background: rgba(57, 60, 64, 0.9);
   color: #FFFCF1 !important;
}


@media (max-width: 768px) {
   .cart__empty-inner {
      padding-right: 0.9375rem;
   }
}
