.m-product-card {
  box-sizing: border-box
}

.m-product-card__url {
  text-decoration: none
}

.m-product-card__media {
  overflow: hidden;
  position: relative
}

@media screen and (min-width:768px) {
  .m-product-card__media:hover .m-product-card__image.m-product-card__image-slider .m-swiper__arrow {
    opacity: 1
  }

  .m-product-card__media.quick-add:hover .m-product-card__quick-add--default {
    margin-bottom: 0;
    opacity: 1;
    z-index: 1
  }
}

.m-product-card__media.show-secondary-image img:first-of-type {
  opacity: 1;
  transition: opacity var(--default-transition-easing) var(--default-transition-timing)
}

.m-product-card__media.show-secondary-image img:nth-of-type(2) {
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  transition: opacity var(--default-transition-easing) var(--default-transition-timing)
}

.m-product-card__media.show-secondary-image:hover img:first-of-type {
  opacity: 0
}

.m-product-card__media.show-secondary-image:hover img:nth-of-type(2) {
  left: 0;
  opacity: 1;
  position: absolute;
  top: 0
}

.m-product-card__image {
  background: rgb(var(--color-product-card))
}

.m-product-card__image img {
  display: block;
  font-size: 0;
  height: auto;
  max-width: 100%;
  width: 100%
}

@media screen and (min-width:768px) {
  .m-product-card__image.m-product-card__image-slider .m-swiper__arrow {
    opacity: 0;
    transition: opacity var(--default-transition-easing) var(--default-transition-timing)
  }
}

.m-product-card__image.m-product-card__image-slider .m-swiper__arrow--prev {
  left: .8rem
}

.m-product-card__image.m-product-card__image-slider .m-swiper__arrow--next {
  right: .8rem
}

.m-product-card__quick-add--default {
  bottom: 2rem;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  transition: opacity var(--default-transition-easing) var(--default-transition-timing), margin-bottom var(--default-transition-easing) var(--default-transition-timing);
  width: calc(100% - 4rem)
}

@media screen and (min-width:768px) {
  .m-product-card__quick-add--default {
    margin-bottom: -1rem;
    opacity: 0
  }
}

.m-product-card__badges {
  left: 0;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 4px;
  position: absolute;
  top: 1.2rem;
  z-index: 9;
  width: 100%;
  pointer-events: none;
}

.m-product-card__heading {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  justify-content: space-between;
  margin-bottom: .6rem;
  position: relative
}

.m-product-card__heading-text {
  flex: 1;
  min-width: 0;
  order: 0
}

.m-product-card__heading .product-title {
  margin: 0
}

.m-product-card__heading .m-product-card__vendor {
  margin-top: .2rem
}

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

.m-product-card__quick-add--simple {
  display: contents
}

.m-product-card__quick-add--simple .m-quick-add-variants {
  display: contents
}

.m-product-card__quick-add--simple .m-quick-add-variants__buttons {
  display: block !important;
  flex-shrink: 0;
  order: 1
}

.m-product-card__quick-add--simple .m-quick-add-variants__items {
  flex: 1 0 100%;
  order: 2;
  width: 100%
}

/* Keep the cart button on the same row as the title for single-variant products.
   Only expand to full width when the multi-variant panel is open. */
.m-product-card__quick-add--simple .js-product-form {
  flex-shrink: 0;
  order: 1;
  width: auto
}

.m-product-card__quick-add--simple .m-quick-add-variants__button--cart,
.m-product-card__quick-add--simple .m-product-form__submit.m-quick-add-variants__button--cart {
  background-color: transparent;
  border-color: transparent;
  color: #000;
  display: inline-flex;
  gap: .6rem;
  justify-content: center;
  min-width: 5.5rem;
  padding: 0 .4rem .4rem .4rem;
  width: auto
}

.m-product-card__quick-add--simple .m-quick-add-variants__button--cart:not([disabled]):not(.disabled):hover,
.m-product-card__quick-add--simple .m-product-form__submit.m-quick-add-variants__button--cart:not([disabled]):not(.disabled):hover {
  background-color: transparent;
  border-color: transparent;
  color: #000
}

.m-product-card__quick-add--simple .m-quick-add-variants__button--cart .icon-cart,
.m-product-card__quick-add--simple .m-product-form__submit.m-quick-add-variants__button--cart .icon-cart {
  color: #000;
  flex-shrink: 0;
  height: 2.8rem;
  width: 2.8rem;
}

.m-product-card__heading:has(.m-quick-add-variants--open) .m-quick-add-variants__items {
  background-color: rgb(var(--color-white));
  border: 1px solid rgb(var(--color-border));
  margin-top: .8rem;
  padding: 1.5rem
}

.m-product-card__heading:has(.m-quick-add-variants--open) .js-product-form {
  flex: 1 0 100%;
  margin-top: 1rem;
  opacity: 1;
  order: 3;
  transition: opacity .18s var(--default-transition-easing);
  width: 100%
}

.m-product-card__heading:has(.m-quick-add-variants--closing) .js-product-form {
  opacity: 0;
  pointer-events: none;
  visibility: hidden
}

@media screen and (max-width: 767px) {
  .swiper-slide:has(.m-product-card__quick-add--simple .m-quick-add-variants--open),
  .swiper-slide:has(.m-product-card__quick-add--simple .m-quick-add-variants--closing) {
    position: relative;
    z-index: 40
  }

  .m-product-card:has(.m-product-card__quick-add--simple .m-quick-add-variants--open),
  .m-product-card:has(.m-product-card__quick-add--simple .m-quick-add-variants--closing) {
    overflow: visible;
    position: relative;
    z-index: 40
  }

  .m-product-card__heading:has(.m-quick-add-variants--open) .m-quick-add-variants__items,
  .m-product-card__heading:has(.m-quick-add-variants--closing) .m-quick-add-variants__items {
    background-color: rgb(var(--color-white));
    left: var(--quick-add-offset-left, 0);
    margin-top: 0;
    position: absolute;
    top: calc(100% + .2rem);
    width: var(--quick-add-panel-width, 100%);
    z-index: 40
  }

  .m-product-card__heading:has(.m-quick-add-variants--open) .js-product-form {
    background-color: rgb(var(--color-white));
    left: var(--quick-add-offset-left, 0);
    margin-top: 0;
    opacity: 1;
    padding-bottom: 2rem;
    position: absolute;
    top: calc(100% + .1rem + var(--quick-add-items-height, 0px));
    transition:
      top var(--default-transition-timing) var(--default-transition-easing),
      opacity .18s var(--default-transition-easing);
    width: var(--quick-add-panel-width, 100%);
    z-index: 40
  }

  .o-featured-collection__slider-wrapper.swiper,
  .o-product-recommendations__slider-wrapper.swiper,
  .m-swiper--quick-add-open,
  .m-swiper--quick-add-closing {
    transition: padding-bottom var(--default-transition-timing) var(--default-transition-easing)
  }
}

.m-product-card__heading:has(.m-quick-add-variants--open) .m-product-form__submit {
  width: 100%
}

.m-product-card__quick-add--simple .m-quick-add-variants__header {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 1.2rem
}

.m-product-card__quick-add--simple .m-quick-add-variants__header-label {
  color: rgb(var(--color-secondary-text))
}

.m-product-card__quick-add--simple .m-quick-add-variants__close {
  align-items: center;
  color: rgb(var(--color-text));
  cursor: pointer;
  display: inline-flex;
  flex-shrink: 0;
  height: 2.4rem;
  justify-content: center;
  width: 2.4rem
}

.m-product-card__quick-add--simple .m-quick-add-variants__close .icon-close {
  height: 1.6rem;
  width: 1.6rem
}

.m-product-card__quick-add--simple .m-quick-add-variants+div:not(.js-product-form) {
  display: none
}

.m-product-card__price .m-price,
.m-product-card__price .m-price__inner,
.m-product-card__price .m-price.m-price--on-sale .m-price__sale {
  width: 100%
}

.m-product-card__price .m-price.m-price--on-sale .m-price__sale {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: .2rem .8rem
}

.m-product-card__price .m-price__sale > span:has(.m-price-item--regular) {
  flex: 1 1 auto;
  min-width: 0;
  order: 1
}

.m-product-card__price .m-price__sale .m-price-item--regular {
  margin-right: 0
}

.m-product-card__price .m-price__sale .m-price__sale-badge {
  flex-shrink: 0;
  margin-left: auto;
  order: 2
}

.m-product-card__price .m-price__sale .m-price-item--sale {
  flex: 0 0 100%;
  order: 3;
  width: 100%
}

.o-product__information .m-price__sale-badge {
  display: none
}

.m-product-card__wishlist {
  right: 1.2rem;
  display: flex;
  position: absolute;
  top: 1.2rem;
  z-index: 9;
}

.m-product-card__wishlist:hover {
  cursor: pointer;
}

.m-product-card__wishlist .wishlist-engine-button {
  display: block
}

@media screen and (min-width:768px) {
  .m-product-card__wishlist .wishlist-engine-button {
    margin-top: .2rem
  }
}

.m-product-card__categories,
.m-product-card__vendor {
  color: rgb(var(--color-secondary-text))
}

.m-product-card__swatches {
  --swatch-input-size: 1.4rem;
  margin-top: .8rem
}

@media screen and (min-width:768px) {
  .m-product-card__swatches {
    --swatch-input-size: 1.8rem;
    margin-top: 1.2rem
  }
}

.m-product-card__content {
  margin-top: 1.6rem
}

@media screen and (min-width:768px) {
  .m-product-card__content {
    margin-top: 3.5rem
  }
}

.m-product-card__content .m-price {
  margin-top: .8rem
}

.m-product-card__content.u-text-center .m-price__sale {
  justify-content: center
}

.m-product-card__price {
  padding-top: 1.5rem
}

.m-product-card__price .o-product__tax {
  display: none
}

.m-product-card.m-product-card--simple .m-product-card__url {
  color: inherit;
  gap: 1.5rem;
  margin-bottom: 2rem
}

.m-product-card.m-product-card--simple .m-product-card__media {
  max-width: 8.6rem;
  position: relative
}

.m-product-card.m-product-card--simple .m-product-card__content {
  display: flex;
  flex: 1;
  flex-direction: column;
  margin: 0;
  padding: 0
}

.m-product-card.m-product-card--simple .m-product-card__price {
  margin-bottom: 1rem;
  padding-top: 0
}

.m-product-card.m-product-card--simple .m-product-card__heading {
  display: block;
  letter-spacing: .028rem;
  margin-bottom: 0;
  text-decoration: none;
  text-transform: capitalize
}

.m-product-card.m-product-card--simple .m-product-form__submit {
  text-align: left
}

.m-product-card.m-product-card--simple .m-variants__label {
  margin-bottom: 1rem
}

.m-product-card.m-product-card--simple .m-product-card__quick-add {
  bottom: 0;
  left: 0;
  margin-bottom: 0;
  margin-top: auto;
  opacity: 1;
  position: relative;
  transform: none;
  width: auto
}

.m-product-card.m-product-card--simple .m-product-card__quick-add .m-quick-add-variants__button {
  border-bottom: none;
  padding: 0;
  text-align: left;
  text-decoration: underline
}

.m-product-card.m-product-card--simple .m-product-card__quick-add .m-quick-add-variants__items {
  padding: 0
}

.m-product-card.m-product-card--simple .m-product-card__heading a {
  color: inherit;
  text-decoration: none
}

.m-product-card.m-product-card--simple .m-product-card__image {
  display: block
}

.m-product-card.m-product-card--simple .m-variants--bundleable-compact {
  margin-top: 1.2rem
}

.m-product-card.m-product-card--simple .m-variants--bundleable-compact .m-variants__fieldset {
  margin-bottom: 1.2rem
}

.m-product-card.m-product-card--simple .m-variants--bundleable-compact .m-variants__fieldset:last-child {
  margin-bottom: 0
}

.m-product-card .m-variants__fieldset[data-combine=color] legend,
.m-product-card .m-variants__fieldset[data-combine=couleur] legend,
.m-product-card .m-variants__fieldset[data-combine=farbe] legend,
.m-product-card .m-variants__fieldset[data-combine=foot-size],
.m-product-card .m-variants__fieldset[data-combine=kleur] legend {
  display: none
}

.m-product-card__price .m-price__sale .m-price-item--regular,
.m-product-card__price .m-price__regular .m-price-item--sale {
  color: #AC2626 !important
}
