.m-product-media {
  --swiper-pagination-color: rgb(var(--color-accent));
  --swiper-pagination-bottom: 1rem
}

.m-product-media--ratio-default iframe {
  aspect-ratio: 16/9;
  object-fit: cover
}

.m-product-media .swiper .m-swiper__arrow--next,
.m-product-media.swiper .m-swiper__arrow--next {
  right: 1.5rem
}

.m-product-media .swiper .m-swiper__arrow--prev,
.m-product-media.swiper .m-swiper__arrow--prev {
  left: 1.5rem
}

.m-product-media .swiper .m-product-media__item,
.m-product-media.swiper .m-product-media__item {
  margin-bottom: 0
}

.m-product-media__model .xr-button {
  align-items: center;
  display: flex;
  margin: auto
}

@media screen and (min-width:768px) {
  .m-product-media__model .xr-button {
    display: none
  }
}

.m-product-media__model .xr-button .icon {
  margin-right: .5rem
}

@media screen and (min-width:768px) {

  .m-product-media--columns .swiper-wrapper,
  .m-product-media--stacked .swiper-wrapper {
    box-sizing: inherit;
    flex-direction: column
  }

  .m-product-media--columns .swiper-button-next,
  .m-product-media--columns .swiper-button-prev,
  .m-product-media--stacked .swiper-button-next,
  .m-product-media--stacked .swiper-button-prev {
    display: none
  }

  .m-product-media--columns .m-product-media__wrapper.swiper-wrapper {
    flex-direction: row;
    flex-wrap: wrap;
    margin: -1.5rem;
    min-width: 100%;
    width: auto
  }

  .m-product-media--columns .m-product-media__item {
    margin-bottom: 0;
    padding: 1.5rem
  }

  .m-product-media--columns .swiper-slide {
    width: 50%
  }

  .m-product-media--stacked .swiper .m-product-media__item {
    margin-bottom: 1rem
  }

  .m-product-media--stacked .swiper .m-product-media__item:last-child {
    margin-bottom: 0
  }
}

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

.m-product-media__item iframe,
.m-product-media__item img,
.m-product-media__item model-viewer,
.m-product-media__item video {
  display: block;
  height: auto;
  width: 100%
}

.m-product-media__thumbs {
  margin-top: 1.5rem
}

.m-product-media__thumbs:not(.swiper-initialized) .swiper-wrapper {
  display: flex;
  gap: .5rem
}

.m-product-media__thumbs:not(.swiper-initialized) .swiper-slide {
  --flex-items: 4;
  width: calc(100%/var(--flex-items) - (var(--flex-items) - 1)/var(--flex-items)*.5rem)
}

.m-product-media__thumbs.swiper-initialized .m-product-media__thumb img {
  width: 100%
}

.m-product-media__thumb {
  background: rgb(var(--color-product-card));
  cursor: pointer
}

.m-product-media__thumb img {
  display: block;
  height: auto;
  width: 100%
}