product-media.product-media-slider {
    position: relative;
}
product-media.product-media-slider div[data-product-badge] {
    position: absolute;
    top: 5px;
    left: 5px;
    width: fit-content;
    max-width: 200px;
}
@media (min-width: 768px) {
    product-media.product-media-slider div[data-product-badge] {
        left: 15px;
        top: 15px;
    }
}
product-media.product-media-slider div[data-product-badge] .custom-badge,
product-media.product-media-slider div[data-product-badge] .preorder-badge,
product-media.product-media-slider div[data-product-badge] .sale-badge,
product-media.product-media-slider div[data-product-badge] .sold-out-badge {
    position: relative;
    top: unset;
    left: unset;
    max-width: unset;
}
product-media.product-media-slider .product-medias__view-in-space {
    width: 100%;
    max-width: calc(100% - 2px);
    box-sizing: border-box;
    min-height: 44px;
    margin: 0 auto;
    padding: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--view-in-space-button-background);
    color: var(--text-color);
}
product-media.product-media-slider .product-medias__view-in-space[data-shopify-xr-hidden] {
    display: none;
}
product-media.product-media-slider .product-medias__view-in-space svg {
    margin-right: 10px;
}
product-media.product-media-slider .custom-aspect-ratio .view-in-space--wrapper {
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 100;
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: center;
}
product-media.media-type-paginated,
product-media.media-type-slider {
    display: block;
    overflow: hidden;
    position: relative;
}
product-media.media-type-paginated [data-slider-main],
product-media.media-type-slider [data-slider-main] {
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    position: relative;
}
product-media.media-type-paginated .media-ratio--square,
product-media.media-type-paginated .media-ratio--tall,
product-media.media-type-paginated .media-ratio--wide,
product-media.media-type-slider .media-ratio--square,
product-media.media-type-slider .media-ratio--tall,
product-media.media-type-slider .media-ratio--wide {
    object-fit: cover;
}
product-media.media-type-paginated .media-ratio--square,
product-media.media-type-slider .media-ratio--square {
    aspect-ratio: 1/1;
}
product-media.media-type-paginated .media-ratio--tall,
product-media.media-type-slider .media-ratio--tall {
    aspect-ratio: 2/3;
}
product-media.media-type-paginated .media-ratio--wide,
product-media.media-type-slider .media-ratio--wide {
    aspect-ratio: 4/3;
}
product-media.media-type-paginated .media-ratio--adapt_to_first_image:not(.icon--placeholder),
product-media.media-type-slider .media-ratio--adapt_to_first_image:not(.icon--placeholder) {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
product-media.media-type-paginated .responsive-image-wrapper,
product-media.media-type-paginated a[data-main-media-link],
product-media.media-type-slider .responsive-image-wrapper,
product-media.media-type-slider a[data-main-media-link] {
    display: flex;
    height: fit-content;
    width: 100%;
    position: relative;
}
product-media.media-type-paginated .media-slider-navigation,
product-media.media-type-slider .media-slider-navigation {
    display: flex;
    align-items: center;
    position: absolute;
    margin: 5px;
    gap: 10px;
    right: 0;
    top: 0;
    z-index: 10;
    color: var(--text-color);
    background-color: var(--body-color-transparent50);
}
@media (min-width: 768px) {
    product-media.media-type-paginated .media-slider-navigation,
    product-media.media-type-slider .media-slider-navigation {
        margin: 15px;
    }
}
product-media.media-type-paginated .media-slider-navigation .flex-next,
product-media.media-type-paginated .media-slider-navigation .flex-prev,
product-media.media-type-slider .media-slider-navigation .flex-next,
product-media.media-type-slider .media-slider-navigation .flex-prev {
    display: flex;
    align-items: center;
    justify-content: center;
}
product-media.media-type-thumbnails {
    overflow: hidden;
    display: grid;
    gap: 15px;
}
product-media.media-type-thumbnails .thumb-next,
product-media.media-type-thumbnails .thumb-prev {
    position: absolute;
    top: 50%;
    z-index: 10;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 100%;
    color: var(--text-color);
    background-color: var(--body-color);
}
@media (min-width: 768px) {
    product-media.media-type-thumbnails .thumb-next,
    product-media.media-type-thumbnails .thumb-prev {
        opacity: 0;
    }
}
@media screen and (min-width: 768px) and (prefers-reduced-motion: no-preference) {
    product-media.media-type-thumbnails .thumb-next,
    product-media.media-type-thumbnails .thumb-prev {
        transition: opacity 0.2s ease-out, transform 0.2s ease-out;
    }
}
product-media.media-type-thumbnails .thumb-prev {
    display: flex;
    left: 10px;
}
@media screen and (min-width: 768px) {
    product-media.media-type-thumbnails .thumb-prev {
        left: 0;
    }
}
product-media.media-type-thumbnails .thumb-prev svg {
    position: relative;
    left: -1px;
}
product-media.media-type-thumbnails .thumb-next {
    display: flex;
    right: 10px;
}
@media screen and (min-width: 768px) {
    product-media.media-type-thumbnails .thumb-next {
        right: 0;
    }
}
product-media.media-type-thumbnails .thumb-next svg {
    position: relative;
    right: -1px;
}
product-media.media-type-thumbnails .thumbnail-media--main-media:hover .thumb-next,
product-media.media-type-thumbnails .thumbnail-media--main-media:hover .thumb-prev {
    opacity: 1;
}
@media screen and (min-width: 768px) {
    product-media.media-type-thumbnails .thumbnail-media--main-media:hover .thumb-prev {
        transform: translate(100%, -50%);
    }
    product-media.media-type-thumbnails .thumbnail-media--main-media:hover .thumb-next {
        transform: translate(-100%, -50%);
    }
}
product-media.media-type-thumbnails .thumbnail-media--main-media.media--single .thumb-next,
product-media.media-type-thumbnails .thumbnail-media--main-media.media--single .thumb-prev {
    display: none;
}
product-media.media-type-thumbnails .thumbnail-media--main-media:not(.media--single) .swiper-slide .icon--placeholder,
product-media.media-type-thumbnails .thumbnail-media--main-media:not(.media--single) .swiper-slide iframe,
product-media.media-type-thumbnails .thumbnail-media--main-media:not(.media--single) .swiper-slide img,
product-media.media-type-thumbnails .thumbnail-media--main-media:not(.media--single) .swiper-slide model-viewer,
product-media.media-type-thumbnails .thumbnail-media--main-media:not(.media--single) .swiper-slide video {
    opacity: 0;
    transition: opacity 0.7s cubic-bezier(0.02, 0.01, 0, 0.95), 2s transform;
}
product-media.media-type-thumbnails .thumbnail-media--main-media:not(.media--single) .swiper-slide-active .icon--placeholder,
product-media.media-type-thumbnails .thumbnail-media--main-media:not(.media--single) .swiper-slide-active iframe,
product-media.media-type-thumbnails .thumbnail-media--main-media:not(.media--single) .swiper-slide-active img,
product-media.media-type-thumbnails .thumbnail-media--main-media:not(.media--single) .swiper-slide-active model-viewer,
product-media.media-type-thumbnails .thumbnail-media--main-media:not(.media--single) .swiper-slide-active video {
    opacity: 1;
}
product-media.media-type-thumbnails .thumbnail-media--main-media .swiper-slide:not(.swiper-slide-active) .round-icon-btn-lg {
    display: none;
}
product-media.media-type-thumbnails.thumbnails-right {
    grid-template-columns: 1fr minmax(0, 70px);
    grid-template-rows: 1fr;
}
product-media.media-type-thumbnails.thumbnails-right .thumbnail-media--main-media {
    grid-column: 1/2;
    grid-row: 1/2;
}
product-media.media-type-thumbnails.thumbnails-right .thumbnail-media--thumbnails {
    grid-column: 2/3;
    grid-row: 1/2;
}
product-media.media-type-thumbnails.thumbnails-below {
    grid-template-columns: 1fr;
    grid-template-rows: 1fr minmax(0, auto);
}
product-media.media-type-thumbnails.thumbnails-below .thumbnail-media--main-media {
    grid-column: 1/2;
    grid-row: 1/2;
}
product-media.media-type-thumbnails.thumbnails-below .thumbnail-media--thumbnails {
    width: 100%;
    max-width: 100%;
    grid-column: 1/2;
    grid-row: 2/3;
    position: relative;
}
product-media.media-type-thumbnails.thumbnails-below .thumbnail-media--thumbnails.swiper-center-slides .swiper-wrapper {
    width: fit-content;
    left: 50%;
    transform: translateX(-50%) !important;
}
product-media.media-type-thumbnails.thumbnails-below .thumbnail-media--thumbnails:not(.swiper-initialized) .swiper-wrapper .swiper-slide {
    width: 70px;
    margin-right: 15px;
}
product-media.media-type-thumbnails.thumbnails-below .thumbnail-media--thumbnails:before {
    content: "";
    display: block;
    position: absolute;
    width: 30px;
    height: 100%;
    background: linear-gradient(to left, rgba(0, 0, 0, 0), var(--body-color));
    left: 0;
    bottom: 0;
    z-index: 10;
    pointer-events: none;
    opacity: 0;
}
@media screen and (prefers-reduced-motion: no-preference) {
    product-media.media-type-thumbnails.thumbnails-below .thumbnail-media--thumbnails:before {
        transition: opacity 0.4s ease;
    }
}
product-media.media-type-thumbnails.thumbnails-below .thumbnail-media--thumbnails:after {
    content: "";
    display: block;
    position: absolute;
    width: 30px;
    height: 100%;
    background: linear-gradient(to right, rgba(0, 0, 0, 0), var(--body-color));
    right: 0;
    bottom: 0;
    z-index: 10;
    pointer-events: none;
}
@media screen and (prefers-reduced-motion: no-preference) {
    product-media.media-type-thumbnails.thumbnails-below .thumbnail-media--thumbnails:after {
        transition: opacity 0.4s ease;
    }
}
product-media.media-type-thumbnails.thumbnails-below .thumbnail-media--thumbnails.is-translated:before {
    opacity: 1;
}
product-media.media-type-thumbnails.thumbnails-below .thumbnail-media--thumbnails.end-reached:after,
product-media.media-type-thumbnails.thumbnails-below .thumbnail-media--thumbnails.swiper-center-slides:after,
product-media.media-type-thumbnails.thumbnails-below .thumbnail-media--thumbnails.swiper-center-slides:before {
    opacity: 0;
}
product-media.media-type-thumbnails.thumbnails-below .thumbnail-media--thumbnails .swiper-wrapper {
    display: flex;
}
product-media.media-type-thumbnails.thumbnails-below .thumbnail-media--thumbnails .swiper-wrapper .swiper-slide {
    padding: 1px 0;
}
product-media.media-type-thumbnails.thumbnails-below .thumbnail-media--thumbnails .swiper-wrapper .swiper-slide:last-child {
    margin-right: 0 !important;
}
product-media.media-type-thumbnails.thumbnails-left {
    grid-template-columns: minmax(0, 70px) 1fr;
    grid-template-rows: 1fr;
}
product-media.media-type-thumbnails.thumbnails-left .thumbnail-media--main-media {
    grid-column: 2/3;
    grid-row: 1/2;
}
product-media.media-type-thumbnails.thumbnails-left .thumbnail-media--thumbnails {
    grid-column: 1/2;
    grid-row: 1/2;
}
product-media.media-type-thumbnails.thumbnails-left .thumbnail-media--thumbnails,
product-media.media-type-thumbnails.thumbnails-right .thumbnail-media--thumbnails {
    position: relative;
}
product-media.media-type-thumbnails.thumbnails-left .thumbnail-media--thumbnails:after,
product-media.media-type-thumbnails.thumbnails-right .thumbnail-media--thumbnails:after {
    content: "";
    display: block;
    position: absolute;
    height: 30px;
    background: linear-gradient(rgba(0, 0, 0, 0), var(--body-color));
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 10;
    pointer-events: none;
}
product-media.media-type-thumbnails .media-ratio--square,
product-media.media-type-thumbnails .media-ratio--tall,
product-media.media-type-thumbnails .media-ratio--wide {
    object-fit: contain;
}
product-media.media-type-thumbnails .media-ratio--square {
    aspect-ratio: 1/1;
}
product-media.media-type-thumbnails .media-ratio--tall {
    aspect-ratio: 2/3;
}
product-media.media-type-thumbnails .media-ratio--wide {
    aspect-ratio: 4/3;
}
product-media.media-type-thumbnails .media-ratio--adapt_to_first_image:not(.icon--placeholder) {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
product-media.media-type-thumbnails .responsive-image-wrapper,
product-media.media-type-thumbnails a[data-main-media-link] {
    display: flex;
    height: fit-content;
    width: 100%;
    position: relative;
}
product-media.media-type-thumbnails .thumbnail-media--main-media {
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
}
product-media.media-type-thumbnails .thumbnail-media--thumbnails {
    max-height: 100%;
    width: 100%;
}
product-media.media-type-thumbnails .thumbnail-media--thumbnails .swiper-wrapper .swiper-slide {
    cursor: pointer;
    position: relative;
    min-width: 60px;
}
product-media.media-type-thumbnails .thumbnail-media--thumbnails .swiper-wrapper .swiper-slide .icon--placeholder,
product-media.media-type-thumbnails .thumbnail-media--thumbnails .swiper-wrapper .swiper-slide .responsive-image-wrapper {
    box-sizing: border-box;
    border: 1px solid var(--border-color);
}
product-media.media-type-thumbnails .thumbnail-media--thumbnails .swiper-wrapper .swiper-slide .icon--placeholder:hover,
product-media.media-type-thumbnails .thumbnail-media--thumbnails .swiper-wrapper .swiper-slide .responsive-image-wrapper:hover {
    border: 1px solid var(--text-color);
}
product-media.media-type-thumbnails .thumbnail-media--thumbnails .swiper-wrapper .swiper-slide .product-medias__emblem {
    position: absolute;
    z-index: 1;
    right: 7px;
    top: 7px;
    width: 24px;
    height: 24px;
    background-color: var(--body-color-transparent40);
    color: var(--text-color);
}
product-media.media-type-thumbnails .thumbnail-media--thumbnails .swiper-wrapper .swiper-slide .product-medias__emblem svg {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
product-media.media-type-thumbnails .thumbnail-media--thumbnails .swiper-wrapper .swiper-slide-thumb-active .icon--placeholder,
product-media.media-type-thumbnails .thumbnail-media--thumbnails .swiper-wrapper .swiper-slide-thumb-active .responsive-image-wrapper {
    border: 1px solid var(--text-color);
    outline: 2px solid var(--body-color);
    outline-offset: -3px;
}
product-media.product-media-slider.single-media {
    display: flex;
}
product-media div[data-media-wrapper]:has(model-viewer) {
    position: relative;
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
}
product-media .media-buffer--left,
product-media .media-buffer--right {
    position: absolute;
    width: 30px;
    height: 100%;
    top: 0;
    z-index: 30;
    background-color: transparent;
}
@media (min-width: 768px) {
    product-media .media-buffer--left,
    product-media .media-buffer--right {
        display: none;
    }
}
product-media .media-buffer--left {
    left: -15px;
}
product-media .media-buffer--right {
    right: -15px;
}
product-media .swiper:not(.swiper-initialized) .media-slider-navigation {
    visibility: hidden;
}
product-media .swiper-wrapper {
    transition-timing-function: cubic-bezier(0.25, 0.85, 0.2, 1);
}
.shopify-model-viewer-ui {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    max-width: 100%;
}
.shopify-model-viewer-ui .shopify-model-viewer-ui__controls-area {
    background-color: var(--body-color);
    border-color: var(--text-color-transparent05);
}
.shopify-model-viewer-ui .shopify-model-viewer-ui__button {
    color: var(--text-color);
}
.shopify-model-viewer-ui .shopify-model-viewer-ui__button:focus,
.shopify-model-viewer-ui .shopify-model-viewer-ui__button:hover {
    color: var(--text-color-transparent5);
}
.shopify-model-viewer-ui button.shopify-model-viewer-ui__button--poster {
    visibility: hidden;
}
.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:not(:last-child):after {
    border-color: var(--text-color-transparent05);
}
.shopify-model-viewer-ui model-viewer:not(.disabled) + .controls-overlay {
    visibility: hidden;
}
.shopify-model-viewer-ui model-viewer:not(.disabled) + .controls-overlay .controls-area {
    visibility: visible;
}
.shopify-model-viewer-ui model-viewer {
    --progress-bar-height: 0;
    --progress-bar-color: transparent;
    width: 100%;
    height: 100%;
    max-width: 100%;
    background-color: #fff;
}
.pswp--animated .pswp__item--active {
    transform: translateX(100%);
}
#pswp__items {
    transition-duration: 0.4s;
}
.pswp__counter {
    color: var(--primary-btn-bg-color);
    margin-top: 10px;
    margin-inline-start: 15px;
}
.pswp__bullets-indicator {
    position: absolute;
    z-index: 3;
    bottom: 10px;
    left: 0;
    width: 100%;
    text-align: center;
    transition: 0.3s opacity;
    transform: translate3d(0, 0, 0);
}
.pswp__bullets-indicator .pswp__bullet {
    display: inline-block;
    width: 11px;
    height: 11px;
    cursor: pointer;
    margin: 0 4px;
    background: 0 0;
    border: 1px solid var(--primary-btn-bg-color);
    border-radius: 100%;
}
.pswp__bullets-indicator .pswp__bullet.pswp__bullet--active,
.pswp__bullets-indicator .pswp__bullet:hover {
    background: var(--primary-btn-bg-color);
}
button.pswp__button {
    width: 32px;
    height: 32px;
    opacity: 1;
    background-color: var(--primary-btn-bg-color);
}
button.pswp__button.pswp__button--arrow {
    position: absolute;
}
button.pswp__button:active,
button.pswp__button:focus,
button.pswp__button:hover {
    background-color: var(--primary-btn-bg-color);
    color: var(--primary-btn-text-color);
}
button.pswp__button svg.pswp__icn {
    position: relative;
    top: 0;
    left: 0;
    fill: none;
    color: var(--primary-btn-text-color);
    filter: none;
    -webkit-filter: none;
}
button.pswp__button.pswp__button--arrow--next {
    margin-inline-end: 15px;
}
button.pswp__button.pswp__button--arrow--next svg.pswp__icn {
    left: 1px;
}
button.pswp__button.pswp__button--arrow--prev {
    margin-inline-start: 15px;
}
button.pswp__button.pswp__button--arrow--prev svg.pswp__icn {
    left: -1px;
}
button.pswp__button.pswp__button--zoom {
    margin-top: 15px;
}
button.pswp__button.pswp__button--close {
    margin-top: 15px;
    margin-inline-end: 15px;
}
.pswp--zoomed-in button.pswp__button svg.pswp__icn#pswp__icn--zoom-out {
    position: absolute;
}
.pswp:not(.pswp--zoom-allowed) .pswp__button--zoom {
    display: none;
}
#pswp__icn--zoom-out {
    visibility: hidden;
}
#pswp__icn--zoom-in {
    visibility: visible;
}
.pswp--zoomed-in #pswp__icn--zoom-in {
    visibility: hidden;
}
.pswp--zoomed-in #pswp__icn--zoom-out {
    visibility: visible;
}
.pswp__img {
    background: var(--color-primary-background);
}
