.elementor-menu-cart__wrapper {
  line-height: 1 !important;
}

.elementor-menu-cart__wrapper .elementor-menu-cart__main {
  max-width: 1200px;
  width: calc(100% - 480px);
}

.elementor-menu-cart__wrapper .elementor-menu-cart__main .elementor-menu-cart__close-button {
  position: absolute;
  right: 64px;
  top: 64px;
}

.elementor-menu-cart__wrapper .elementor-menu-cart__main .elementor-menu-cart__close-button:before,
.elementor-menu-cart__wrapper .elementor-menu-cart__main .elementor-menu-cart__close-button:after {
  height: 1px !important;
}

.elementor-menu-cart__wrapper .elementor-menu-cart__main .widget_shopping_cart_content {
  border: 1px solid #000;
  height: max-content !important;
  flex-direction: row !important;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
}

.elementor-menu-cart__wrapper .elementor-menu-cart__main .widget_shopping_cart_content .elementor-menu-cart__products {
  width: 100%;
  padding: 40px;
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.elementor-menu-cart__wrapper .elementor-menu-cart__main .widget_shopping_cart_content .elementor-menu-cart__products .elementor-menu-cart__product {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
}

.elementor-menu-cart__wrapper .elementor-menu-cart__main .widget_shopping_cart_content .elementor-menu-cart__products .elementor-menu-cart__product .elementor-menu-cart__product-image.product-thumbnail {
  width: 20% !important;
  margin: 0 auto;
}

.elementor-menu-cart__wrapper .elementor-menu-cart__main .widget_shopping_cart_content .elementor-menu-cart__products .elementor-menu-cart__product .elementor-menu-cart__product-image.product-thumbnail img {
  width: 100%;
  max-width: 140px;
  margin: 0 auto;
  height: auto;
}

.elementor-menu-cart__wrapper .elementor-menu-cart__main .widget_shopping_cart_content .elementor-menu-cart__products .elementor-menu-cart__product .elementor-menu-cart__product-name.product-name {
  padding: 0;
  width: 32%;
}

.elementor-menu-cart__wrapper .elementor-menu-cart__main .widget_shopping_cart_content .elementor-menu-cart__products .elementor-menu-cart__product .elementor-menu-cart__product-price.product-price {
  width: 48%;
  display: contents;
}

.elementor-menu-cart__wrapper .elementor-menu-cart__main .widget_shopping_cart_content .elementor-menu-cart__products .elementor-menu-cart__product .elementor-menu-cart__product-price.product-price>.quantity {
  width: inherit !important;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.elementor-menu-cart__wrapper .elementor-menu-cart__main .widget_shopping_cart_content .elementor-menu-cart__products .elementor-menu-cart__product .elementor-menu-cart__product-price.product-price>.quantity .quantity.wbu-quantity,
.elementor-menu-cart__wrapper .elementor-menu-cart__main .widget_shopping_cart_content .elementor-menu-cart__products .elementor-menu-cart__product .elementor-menu-cart__product-price.product-price>.quantity span.quantity {
  width: 50%;
  text-align: center;
  display: inline;
}

.elementor-menu-cart__wrapper .elementor-menu-cart__main .widget_shopping_cart_content .elementor-menu-cart__subtotal {
  font-size: 14px;
  font-weight: 400 !important;
  text-transform: uppercase;
  line-height: 1.8em;
  letter-spacing: 1.4px;
  padding-right: 40px;
}

.elementor-menu-cart__wrapper .elementor-menu-cart__main .widget_shopping_cart_content .elementor-menu-cart__subtotal strong {
  font-weight: 400 !important;
}

.elementor-menu-cart__wrapper .elementor-menu-cart__toggle .elementor-button-icon {
  font-family: 'Basis Grotesque' !important;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.4px;
  text-transform: uppercase !important;
  color: #000 !important;
}

.elementor-menu-cart__wrapper .elementor-menu-cart__toggle .elementor-button-icon[data-counter]:before {
  content: 'CART ( 'attr(data-counter) ' )' !important;
}

.elementor-menu-cart__wrapper .elementor-menu-cart__toggle .elementor-button-icon:hover {
  color: #606060 !important;
}

.elementor-menu-cart__wrapper .elementor-menu-cart__toggle .elementor-button-icon .eicon {
  display: none;
}

.single-product .woocommerce-product-gallery__image {
  width: 100% !important;
}

.single-product .woocommerce-product-gallery__image img {
  max-height: 800px !important;
  margin: 0 auto !important;
  width: auto !important;
}

.single-product .gallery-arrow {
  position: absolute;
  top: 50%;
  right: 24px;
}

.single-product .woocommerce-variation-availability {
  display: none !important;
  position: absolute;
  bottom: 12px;
  font-size: 11px;
  left: calc(100% - 180px);
  line-height: 1;
  color: #606060 !important;
}

.single-product .woocommerce-variation-availability .stock {
  font-size: 11px;
  line-height: 1;
  color: #606060 !important;
}

.single-product .product-title {
  margin-bottom: 16px;
  font-style: italic;
}

.single-product form.cart {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  align-items: center;
  margin: 0px !important;
}

.single-product form.cart::after,
.single-product form.cart::before {
  content: unset !important;
}

.single-product form.cart a.reset_variations {
  display: none !important;
}

.single-product form.cart table.variations {
  margin: 0 !important;
  width: 180px !important;
}

.single-product form.cart table.variations tr {
  display: flex;
  align-items: center;
}

.single-product form.cart table.variations tr td.label {
  width: 30%;
  display: flex;
  margin: 2px 0;
  padding: 0;
  background: #fff;
}

.single-product form.cart table.variations tr td.label label {
  font-weight: 400;
  color: #000;
  font-style: italic;
  font-size: 12px;
  letter-spacing: 0.02em !important;
  line-height: 1;
}

.single-product form.cart table.variations tr td.label label:after {
  content: ":";
}

.single-product form.cart table.variations tr td.value {
  width: 70%;
  display: flex;
  margin: 2px 0;
  padding: 0;
  background: #fff;
}

.single-product form.cart table.variations tr td.value select {
  margin: 0 !important;
  padding: 0;
  border: unset;
  width: fit-content;
  font-size: 12px;
  font-family: 'Basis Grotesque';
  letter-spacing: 0.02em !important;
  line-height: 1;
}

.single-product form.cart .single_variation_wrap button.single_add_to_cart_button.button.alt,
.single-product form.cart .single_variation_wrap button.single_add_to_cart_button.button.alt:hover {
  background-color: #202020;
  color: #fff;
  border-radius: 0px;
  font-family: 'Basis Grotesque Mono';
  font-weight: 400;
  font-size: 14px;
  line-height: 1.2;
  letter-spacing: 0.4;
  padding: 12px 24px;
  margin: 0;
}

.single-product form.cart::after,
.single-product form.cart::before {
  content: unset !important;
}

.woocommerce #respond input#submit.added::after,
.woocommerce a.button.added::after,
.woocommerce button.button.added::after,
.woocommerce input.button.added::after {
  display: none !important;
}

#mobile-menu .elementor-menu-cart__toggle .elementor-button-icon {
  font-size: 18px !important;
  line-height: 1.2 !important;
  letter-spacing: 0.6px !important;
}

.elementor-menu-cart__product-price .input-text.qty.text,
.cart_item .input-text.qty.text {
  background: #fff !important;
  border: unset !important;
}

.elementor-menu-cart__product-price input::-webkit-outer-spin-button,
.elementor-menu-cart__product-price input::-webkit-inner-spin-button,
.cart_item input::-webkit-outer-spin-button,
.cart_item input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.elementor-menu-cart__product-price input[type=number],
.cart_item input[type=number] {
  -moz-appearance: textfield;
}

.elementor-menu-cart__product-price .wbu-qty-button.wbu-btn-sub,
.elementor-menu-cart__product-price .wbu-qty-button.wbu-btn-inc,
.cart_item .wbu-qty-button.wbu-btn-sub,
.cart_item .wbu-qty-button.wbu-btn-inc {
  border: unset !important;
}

.elementor-menu-cart__product-price .quantity .qty,
.cart_item .quantity .qty {
  width: 24px;
  text-align: center;
}

.elementor-menu-cart__product-price .quantity {
  color: #000;
  font-weight: 400 !important;
}

span.elementor-button-icon[data-counter="0"] {
  display: none;
}

.woocommerce .checkout select {
  min-height: 38px;
  background-position-x: 99%;
  background-position-y: 4px;
}

.woocommerce .checkout button#place_order {
  margin-top: 24px;
}

.woocommerce .checkout th.product-name,
.woocommerce .checkout th.product-total,
.woocommerce .checkout tr.cart-subtotal th,
.woocommerce .checkout tr.cart-subtotal .woocommerce-Price-amount,
.woocommerce .checkout tr.order-total th,
.woocommerce .checkout tr.order-total .woocommerce-Price-amount {
  font-size: 16px;
  font-weight: 400 !important;
  letter-spacing: 1.2px !important;
}

.woocommerce .checkout #payment li.wc_payment_method.payment_method_stripe_cc.wc-stripe-no-desc label {
  display: none !important;
}

.woocommerce .checkout #payment li.wc_payment_method.payment_method_stripe_cc.wc-stripe-no-desc label .wc-stripe-card-icons-container {
  display: none !important;
}

.woocommerce .checkout .product-name {
  display: flex;
  gap: 16px;
  align-items: center;
  width: 100% !important;
  min-width: 100% !important;
}

.woocommerce .checkout .product-name a.remove {
  width: fit-content;
  color: #000 !important;
}

.woocommerce .checkout .product-name a.remove:hover {
  background: unset !important;
}

.woocommerce .checkout .product-name span.product_name {
  width: 70%;
}

.woocommerce .checkout .product-name .quantity {
  width: 30%;
  text-align: center;
  min-width: unset !important;
}

.woocommerce .checkout td.product-total {
  vertical-align: middle !important;
}

.woocommerce-mini-cart__empty-message {
  padding: 80px 40px;
}

.woocommerce-shipping-totals.shipping th {
  font-size: 16px;
  font-weight: 400 !important;
  letter-spacing: 1.2px !important;
}

.woocommerce-shipping-totals.shipping #shipping_method li {
  margin: 0 0 8px !important;
  line-height: 1.2em !important;
}

.woocommerce-shipping-totals.shipping #shipping_method li label {
  text-transform: none !important;
}

.woocommerce-shipping-totals.shipping #shipping_method li .amount {
  font-weight: 400 !important;
}

.woocommerce-order,
th.woocommerce-table__product-name.product-name,
th.woocommerce-table__product-table.product-total,
span.woocommerce-Price-amount.amount,
.woocommerce th,
.woocommerce td,
.woocommerce strong {
  font-family: 'BASIS GROTESQUE' !important;
  color: #000 !important;
  font-weight: 400 !important;
}

.woocommerce ul.order_details {
  margin: 0 0 24px;
  list-style: none;
  padding: 0;
}

.woocommerce ul.order_details li {
  margin-right: 24px;
  margin-bottom: 24px;
  font-size: 10px;
  line-height: 1.2;
  border-right: unset;
  padding-right: 0;
}

.woocommerce ul.order_details li strong {
  font-size: 13px;
  line-height: 1.4;
  margin-top: 4px;
}

p.woocommerce-notice {
  margin-bottom: 24px;
}

h2.woocommerce-order-details__title {
  font-size: 20px;
  line-height: 1.4;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  margin-bottom: 24px;
}


/*-- Only Mobile --*/

@media screen and (max-width: 768px) {
  figure.woocommerce-product-gallery__wrapper {
    display: flex;
    align-items: center;
    overflow-x: scroll;
  }

  figure.woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image {
    flex: none;
  }

  .woocommerce-variation-availability {
    top: 8px !important;
    bottom: unset !important;
    left: 0px !important;
  }

  form.cart {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 32px !important;
  }

  form.cart table.variations {
    width: 100% !important;
  }

  form.cart table.variations tr td.label {
    width: fit-content;
    min-width: 10%;
    margin: 4px 0;
  }

  form.cart table.variations tr td.label select {
    min-width: fit-content;
    width: fit-content;
    margin: 0px;
  }

  form.cart .single_variation_wrap {
    width: 100% !important;
  }

  form.cart .single_variation_wrap .single_add_to_cart_button.button.alt {
    width: 100%;
  }

  .elementor-menu-cart__wrapper .elementor-menu-cart__main {
    width: 100% !important;
    padding: 24px !important;
  }

  .elementor-menu-cart__wrapper .elementor-menu-cart__main .elementor-menu-cart__close-button {
    z-index: 9999 !important;
    right: 40px;
    top: 40px;
  }

  .elementor-menu-cart__wrapper .elementor-menu-cart__main .elementor-menu-cart__products {
    max-height: 100% !important;
    padding: 40px 24px !important;
    gap: 32px !important;
  }

  .elementor-menu-cart__wrapper .elementor-menu-cart__main .elementor-menu-cart__products .elementor-menu-cart__product {
    gap: 16px !important;
    flex-wrap: wrap;
  }

  .elementor-menu-cart__wrapper .elementor-menu-cart__main .elementor-menu-cart__products .elementor-menu-cart__product .elementor-menu-cart__product-image.product-thumbnail,
  .elementor-menu-cart__wrapper .elementor-menu-cart__main .elementor-menu-cart__products .elementor-menu-cart__product .elementor-menu-cart__product-name.product-name {
    width: 100% !important;
    text-align: center !important;
  }

  .elementor-menu-cart__wrapper .elementor-menu-cart__main .elementor-menu-cart__products .elementor-menu-cart__product .elementor-menu-cart__product-price.product-price {
    width: 100% !important;
    text-align: center;
  }

  .elementor-menu-cart__wrapper .elementor-menu-cart__main .elementor-menu-cart__products .elementor-menu-cart__product .elementor-menu-cart__product-price.product-price>.quantity {
    flex-wrap: wrap;
    justify-content: center !important;
  }

  .elementor-menu-cart__wrapper .elementor-menu-cart__main .elementor-menu-cart__products .elementor-menu-cart__product .elementor-menu-cart__product-price.product-price>.quantity .quantity.wbu-quantity,
  .elementor-menu-cart__wrapper .elementor-menu-cart__main .elementor-menu-cart__products .elementor-menu-cart__product .elementor-menu-cart__product-price.product-price>.quantity span.quantity {
    width: 100% !important;
  }

  .elementor-menu-cart__wrapper .elementor-menu-cart__main .elementor-menu-cart__subtotal {
    width: 100% !important;
    padding-right: 0px !important;
    padding-bottom: 32px !important;
  }

  .elementor-menu-cart__wrapper .elementor-menu-cart__main .elementor-menu-cart__footer-buttons {
    width: 100% !important;
  }

  .elementor-menu-cart__wrapper .elementor-menu-cart__main .elementor-menu-cart__footer-buttons a.elementor-button.elementor-button--checkout {
    width: 100% !important;
    padding: 12px 24px;
  }
}

/*-- Mobile & Tablet --*/

@media (max-width: 1024px) {
  td.product-total {
    width: 25% !important;
  }
}

/*-- Only Desktop --*/

@media (min-width: 1025px) {
  .elementor-menu-cart__main {
    max-width: 1200px;
    width: calc(100% - 480px);
    padding: 40px;
  }

  .elementor-widget-woocommerce-checkout-page .woocommerce {
    max-width: 600px !important;
    margin: 0 auto;
  }
}