
.cart-full {display: flex; position: fixed; top: 107px; right: 0px; width: auto; max-width: 0; overflow: hidden; transition: 0.5s ease; justify-content: flex-end; z-index: 1;}
/* .cart-full::before {content:''; display: block; position: fixed; background: #0006; top: 0; right: 0; width: 100%; height: 100%; opacity: 0; max-width: 0; overflow: hidden; transition: 0.5s ease;} */
.cart-full .cart-container {background: #fff; position: relative; z-index: 1; height: auto; max-height: calc(100dvh - 147px); width: 500px; transition: 0.5s ease; display: flex; flex-direction: column; border-radius: 20px; box-shadow: 0 0 20px #0003; margin: 20px; overflow: hidden;}
.cart-full .cart-container .cart-header {padding: 20px 0 20px; text-align: center; box-sizing: border-box; width: 500px; position: relative; z-index: 9; top: 0; box-shadow: 0 3px 5px #0001;}
.cart-full .cart-container .cart-header .cart-close {width: 20px; height: 20px; position: absolute; left: 30px; top: 50%; transform: translateY(-50%) ;background: #000; mask-image: url('/new/img/close-icon.svg'); mask-size:cover; mask-repeat:no-repeat; mask-position: center; cursor: pointer; transition: 0.4s ease;}
.cart-full .cart-container .cart-header .cart-close:hover {background: #f47659}
.cart-full .cart-container .cart-header h4 {font-size: 21px; font-weight: 400; font-style: italic; line-height: 1.3;}
.cart-full .cart-container .cart-header .cart-title p {font-size: 21px; font-weight: 400; font-style: italic; line-height: 1.3; font-family: "campaign-serif", sans-serif;}
.cart-full .cart-container .cart-content {width: 100%; box-sizing: border-box; padding: 10px 0 242px; overflow-y: scroll; display: grid; z-index: -1;}
.cart-full .cart-container .cart-content > p {padding: 50px 35px; font-family: campaign; text-align: center;}
.cart-full .cart-container .cart-item {max-width: 100%; margin: 20px 0; position: relative; box-sizing: border-box; padding: 0 30px; display: grid; grid-template-columns: 1fr 1fr; align-items: center; grid-gap: 30px;}
.cart-full .cart-container .cart-item article h4 {font-family: "campaign", sans-serif; font-weight: 400; font-size: 14px;}
.cart-full .cart-container .cart-item article p strong {font-family: "campaign", sans-serif; font-weight: 400; font-size: 14px;}
.cart-full .cart-container .cart-item article p {padding: 0; font-size: 16px;}
.cart-full .cart-container .cart-item .upsell-flex + button {font-size: 14px; padding: 10px 15px 10px; margin: 0!important; left: auto; transform: none;}
.cart-full .cart-container .cart-item article .upsell-flex, .cart-full .cart-container .cart-item article .quantity-wrapper {margin: 10px 0;}
.cart-full .cart-container .cart-item figure {width: 100%; height: 0; padding-bottom: 100%; position: relative; border-radius: 10px; overflow: hidden; border: 1px solid #0001;}
.cart-full .cart-container .cart-item figure img {position: absolute; width: 100%; height: 100%; object-fit: cover;}
.cart-full .cart-container .cart-item .basic-title {font-size: 14px; margin-bottom: 10px; font-family: "campaign", sans-serif; font-weight:400}
.cart-full .cart-container .cart-item .box {font-size: 11px; color: #000; margin-bottom: 10px; font-weight:bold}
.cart-full .cart-container .cart-item .price {position: absolute; right: 30px; bottom: 10px; font-size: 14px; font-weight:bold  }
.cart-full .cart-container .cart-item .remove {position: absolute; top: 0; right: 30px; width: 20px; height: 20px; border-radius: 50vw; border: 1px solid #0005; background: #0000; transition: 0.5s; cursor: pointer;}
.cart-full .cart-container .cart-item .remove:hover {background: #0002;}
.cart-full .cart-container .cart-item .remove button {position: absolute; top:50%; left: 50%; transform: translate(-50%,-50%); background: #0008; mask-image: url('/new/img/delete.svg'); mask-size: contain; mask-repeat: no-repeat; mask-position: center; width: 14px; height: 14px; padding: 0; outline: 0; border: 0;}
.cart-full .cart-container .cart-footer {position: absolute; bottom: 0; background: #fff; width: 100%; padding: 30px; box-sizing: border-box; box-shadow: 0 -3px 5px #0001; width: 500px; z-index: 9;}
.cart-full .cart-container .cart-footer .flex-row {margin-bottom: 10px;}
.cart-full .cart-container .cart-footer .button {width: 100%; padding: 22px 25px 22px 45px; box-sizing: border-box; margin-top: 15px; text-align: center;}
.cart-full .cart-container .cart-footer .button.close-cart {background: #004935; color: #ffd378 !important;}
.cart-full .cart-container .cart-footer .button.close-cart:hover {background: #d7e2d6; color: #004935 !important;}
.cart-full .cart-container .cart-footer h5 {font-size: 18px; font-family: "campaign", sans-serif; font-weight: 600; margin-bottom: 4px;}
.cart-full .cart-container .cart-footer p {font-size: 18px; font-family: "campaign", sans-serif; font-weight: 600; margin-bottom: 4px;}
.cart-full .cart-container .cart-footer #order-total {font-size: 18px; font-weight: 600;}

.cart-full .cart-container .cart-item.swiper-slide {margin: 0;}

.quantity-block .quantity-wrapper {margin: 0!important;}

.cart-full .cart-container .custom-navigation {position: relative; bottom: auto; display: flex; gap: 10px; justify-content: center; margin-top: 30px;}
.cart-full .cart-container .custom-next, .cart-full .cart-container .custom-prev {width: 23px; height: 16px;  position: relative; cursor: pointer;}
.cart-full .cart-container .custom-next::after, .cart-full .cart-container .custom-prev::after {content: ''; background: #000; display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; mask-image:url('/new/img/swiper-arrow.svg'); mask-repeat:no-repeat; mask-size:cover; mask-position: center;}

.cart-full .cart-container .custom-prev::after {transform: rotate(180deg);}

@-moz-document url-prefix() {
  .cart-full .cart-container .cart-header {padding: 22px 0 15px;}
  .cart-full .cart-container .cart-item .upsell-flex + button {padding: 10px 15px 12px;}
}

.cart-full .swiper {margin-top: 25px;}
.cart-full .swiper .swiper-slide {opacity: 1!important;}

.shipping-block {order: 2; display: block; width: auto; background: #d7e2d6; border-radius: 10px; margin: 10px 30px 30px; box-sizing: border-box; padding: 30px;}
.shipping-block p {font-family: "campaign", sans-serif; font-weight: 400; font-size: 15px; color: #021f17;}

.shipping-block .progress-bar {display: block; margin: 25px 0 0; position: relative; background: #0002; height: 5px; border-radius: 50vw; overflow: hidden;}
.shipping-block .progress-bar span {position: absolute; left: 0; top: 0; height: 100%; width: 0%; display: block; background: #004935; transition: 0.3s; border-radius: 50vw;}

.also-bought {padding: 30px 0; background: #faf4e0; order: 3;}
.also-bought .flex-row {padding: 0 30px; margin-bottom: 25px;}
.also-bought .flex-row p {font-size: 14px; font-weight: bold; text-align: center; text-transform: uppercase; font-family: 'Sharp Grotesk Medium 25'; color: #000; width: 100%;}

.cart-full.active {max-width: 100%;}
.cart-full.active::before {opacity: 1; max-width: 100%;}

article.center {text-align: center;}

.sticky .cart-full {top: 70px;}

.cart-upsell {position: relative; margin-top: 2vw;}
.cart-upsell .custom-next, .cart-upsell .custom-prev {width: 23px; height: 16px; position: absolute; cursor: pointer; left: 0; top: 50%; transform: translateY(-50%)}
.cart-upsell .custom-next {left: auto; right: 0;}
.cart-upsell .custom-next::after, .cart-upsell .custom-prev::after {content: ''; background: #000; display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; mask-image:url('/new/img/swiper-arrow.svg'); mask-repeat:no-repeat; mask-size:cover; mask-position: center;}

.cart-upsell .custom-prev::after {transform: translateY(-50%) rotate(180deg);}

.cartupsellSwiper {margin: 75px 40px 0;}
.cartupsellSwiper .swiper-slide figure {position: relative; height: 0; padding-bottom: 100%; border-radius: 10px; overflow: hidden; margin-bottom: 20px;}
.cartupsellSwiper .swiper-slide figure img {position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover;}
.cartupsellSwiper .swiper-slide h4 {font-family: "campaign", sans-serif; font-weight: 400; font-size: 16px; min-height: 42px; max-width: 100%;}
.cartupsellSwiper .swiper-slide article .button {left: auto!important; transform: none!important;}
.cartupsellSwiper .swiper-slide .price {margin: 15px 0;}
