.o-cart.is-empty .o-cart__heading,
.o-cart.is-empty .o-cart__grid {
  display: none;
}
.o-cart.is-empty .o-cart__empty {
  display: block;
}
.o-cart__empty {
  display: none;
}
.o-cart__heading {
  border-bottom: 0.5px solid var(--color-primary-border);
}
.o-cart__heading h1 {
  margin-bottom: 2.8rem;
}
@media screen and (min-width: 1250px) {
  .o-cart__heading {
    border-bottom: none;
  }
}
.o-cart__summary {
  border-left: 0.5px solid var(--color-primary-border);
}
.o-cart__grid {
  width: auto;
  margin-left: -2rem;
  margin-right: -2rem;
}
@media screen and (min-width: 1250px) {
  .o-cart__grid {
    margin-left: -5rem;
    margin-right: -5rem;
  }
}
.o-cart__grid > div {
  padding-left: 2rem;
  padding-right: 2rem;
}
@media screen and (min-width: 1250px) {
  .o-cart__grid > div {
    padding-left: 5rem;
    padding-right: 5rem;
  }
}
.o-cart__product {
  border-bottom: 0.5px solid var(--color-secondary-border);
  padding-bottom: 2rem;
}
.o-cart__product:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
@media screen and (min-width: 768px) {
  .o-cart__product:last-child {
    border-bottom: 0.5px solid var(--color-secondary-border);
    padding-bottom: 2rem;
  }
}
.o-cart__tax-note {
  margin-top: 1rem;
}
.o-cart__totals {
  padding-top: 2rem;
  padding-bottom: 2rem;
  border-bottom: 0.5px solid var(--color-primary-border);
}
@media screen and (min-width: 1250px) {
  .o-cart__totals {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}
.o-cart__totals .h4 {
  font-family: var(--ff-tertiary);
}
.o-cart__total {
  justify-content: flex-end;
}
.o-cart__total:not(:last-child) {
  margin-bottom: 0.5rem;
}
.o-cart__total:last-child .o-cart__total-label,
.o-cart__total:last-child .o-cart__total-value {
  font-weight: 600;
}
.o-cart__total-label {
  text-align: right;
  margin-bottom: 0;
}
.o-cart__total-value {
  text-align: right;
  margin-bottom: 0;
  font-family: var(--ff-tertiary);
}
.o-cart__actions {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
.o-cart__actions .a-btn {
  width: 100%;
  display: block;
}
@media screen and (min-width: 1250px) {
  .o-cart__actions {
    padding-bottom: 2rem;
  }
}
.o-cart__error {
  color: var(--color-state-error);
}
.o-cart__free-shipping, .o-cart__promo-code, .o-cart__tax-note, .o-cart__registry--shipping-messag, .o-cart__loyalty {
  font-family: var(--ff-tertiary);
  text-align: center;
  font-size: var(--body-fs-sm);
  line-height: var(--body-lh-sm);
  color: var(--color-quaternary-body);
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .o-cart__free-shipping, .o-cart__promo-code, .o-cart__tax-note, .o-cart__registry--shipping-messag, .o-cart__loyalty {
    font-size: var(--body-fs-xs);
    line-height: var(--body-lh-sm);
  }
}
.o-cart__loyalty {
  margin-top: 1rem;
}
.o-cart__loyalty a {
  color: var(--color-quaternary-body);
  transition: color var(--default-transition-timing) var(--default-transition-easing);
}
.o-cart__loyalty a:hover {
  color: var(--color-primary-body);
}
.o-cart__registry--shipping-message {
  background: red;
}
.o-cart__checkout-button {
  margin-top: 1rem;
  margin-bottom: 1rem;
}
.o-cart__upsell {
  margin-top: 3rem;
}
.o-cart__upsell .m-swiper {
  transition: opacity var(--default-transition-timing) var(--default-transition-easing);
}
.o-cart__upsell .m-swiper:not(.swiper-initialized) .swiper-wrapper {
  display: flex;
  gap: 2rem;
  flex-wrap: nowrap;
}
.o-cart__upsell .m-swiper:not(.swiper-initialized) .swiper-wrapper .swiper-slide {
  max-width: 70%;
}
@media screen and (min-width: 768px) {
  .o-cart__upsell .m-swiper:not(.swiper-initialized) .swiper-wrapper .swiper-slide {
    max-width: calc(25% - 1.5rem);
  }
}
.o-cart__upsell .loader {
  display: none;
}
.o-cart__upsell.loading {
  position: relative;
  overflow: hidden;
  max-height: 30rem;
}
.o-cart__upsell.loading .loader {
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.o-cart__upsell.loading .m-swiper {
  opacity: 0;
  pointer-events: none;
  overflow: hidden;
}
