html.nw-skeleton-loading .skeleton-scope {
    position: relative;
}

html.nw-skeleton-loading .skeleton-scope .card-product .product-img,
html.nw-skeleton-loading .skeleton-scope .card-product .card-product-info .title,
html.nw-skeleton-loading .skeleton-scope .card-product .price,
html.nw-skeleton-loading .skeleton-scope .card-product .variant-info,
html.nw-skeleton-loading .skeleton-scope .card-product .stock-info,
html.nw-skeleton-loading .skeleton-scope .tf-product-media-wrap .item,
html.nw-skeleton-loading .skeleton-scope .tf-product-media-wrap > img,
html.nw-skeleton-loading .skeleton-scope .tf-product-info-name .text,
html.nw-skeleton-loading .skeleton-scope .tf-product-info-name .name,
html.nw-skeleton-loading .skeleton-scope .tf-product-info-name .sub,
html.nw-skeleton-loading .skeleton-scope .tf-product-info-price,
html.nw-skeleton-loading .skeleton-scope .tf-product-info-desc > p,
html.nw-skeleton-loading .skeleton-scope .vr-section,
html.nw-skeleton-loading .skeleton-scope .tf-product-info-quantity,
html.nw-skeleton-loading .skeleton-scope .tf-product-info-by-btn,
html.nw-skeleton-loading .skeleton-scope .tf-product-info-sku,
html.nw-skeleton-loading .skeleton-scope .heading-section .heading,
html.nw-skeleton-loading .skeleton-scope .heading-section .text-caption-1,
html.nw-skeleton-loading .skeleton-scope .tab-product a {
    position: relative;
    overflow: hidden;
    color: transparent !important;
    border-color: transparent !important;
    background: #f2f3f5 !important;
    box-shadow: none !important;
}

html.nw-skeleton-loading .skeleton-scope .card-product .product-img,
html.nw-skeleton-loading .skeleton-scope .tf-product-media-wrap .item,
html.nw-skeleton-loading .skeleton-scope .tf-product-media-wrap > img {
    border-radius: 8px;
    min-height: 180px;
}

html.nw-skeleton-loading .skeleton-scope .tf-product-media-main .item {
    min-height: 520px;
}

html.nw-skeleton-loading .skeleton-scope .tf-product-media-thumbs .item {
    min-height: 96px;
}

html.nw-skeleton-loading .skeleton-scope .card-product .card-product-info .title,
html.nw-skeleton-loading .skeleton-scope .card-product .price,
html.nw-skeleton-loading .skeleton-scope .card-product .variant-info,
html.nw-skeleton-loading .skeleton-scope .card-product .stock-info,
html.nw-skeleton-loading .skeleton-scope .tf-product-info-name .text,
html.nw-skeleton-loading .skeleton-scope .tf-product-info-name .name,
html.nw-skeleton-loading .skeleton-scope .tf-product-info-name .sub,
html.nw-skeleton-loading .skeleton-scope .tf-product-info-price,
html.nw-skeleton-loading .skeleton-scope .tf-product-info-desc > p,
html.nw-skeleton-loading .skeleton-scope .heading-section .heading,
html.nw-skeleton-loading .skeleton-scope .heading-section .text-caption-1,
html.nw-skeleton-loading .skeleton-scope .tab-product a {
    border-radius: 999px;
}

html.nw-skeleton-loading .skeleton-scope .tf-product-info-name .name {
    min-height: 42px;
    width: 80%;
}

html.nw-skeleton-loading .skeleton-scope .tf-product-info-price {
    min-height: 46px;
    width: 46%;
}

html.nw-skeleton-loading .skeleton-scope .tf-product-info-desc > p {
    min-height: 70px;
}

html.nw-skeleton-loading .skeleton-scope .vr-section {
    min-height: 120px;
    border-radius: 12px;
}

html.nw-skeleton-loading .skeleton-scope .tf-product-info-by-btn {
    min-height: 54px;
    border-radius: 999px;
}

html.nw-skeleton-loading .skeleton-scope .tf-product-info-sku {
    min-height: 110px;
    border-radius: 12px;
}

html.nw-skeleton-loading .skeleton-scope img,
html.nw-skeleton-loading .skeleton-scope product-img,
html.nw-skeleton-loading .skeleton-scope .on-sale-wrap,
html.nw-skeleton-loading .skeleton-scope .list-product-btn,
html.nw-skeleton-loading .skeleton-scope .list-btn-main,
html.nw-skeleton-loading .skeleton-scope .badge,
html.nw-skeleton-loading .skeleton-scope .badges-on-sale,
html.nw-skeleton-loading .skeleton-scope .compare-at-price,
html.nw-skeleton-loading .skeleton-scope .old-price {
    opacity: 0 !important;
}

html.nw-skeleton-loading .skeleton-scope .card-product .product-img::after,
html.nw-skeleton-loading .skeleton-scope .card-product .card-product-info .title::after,
html.nw-skeleton-loading .skeleton-scope .card-product .price::after,
html.nw-skeleton-loading .skeleton-scope .card-product .variant-info::after,
html.nw-skeleton-loading .skeleton-scope .card-product .stock-info::after,
html.nw-skeleton-loading .skeleton-scope .tf-product-media-wrap .item::after,
html.nw-skeleton-loading .skeleton-scope .tf-product-media-wrap > img::after,
html.nw-skeleton-loading .skeleton-scope .tf-product-info-name .text::after,
html.nw-skeleton-loading .skeleton-scope .tf-product-info-name .name::after,
html.nw-skeleton-loading .skeleton-scope .tf-product-info-name .sub::after,
html.nw-skeleton-loading .skeleton-scope .tf-product-info-price::after,
html.nw-skeleton-loading .skeleton-scope .tf-product-info-desc > p::after,
html.nw-skeleton-loading .skeleton-scope .vr-section::after,
html.nw-skeleton-loading .skeleton-scope .tf-product-info-quantity::after,
html.nw-skeleton-loading .skeleton-scope .tf-product-info-by-btn::after,
html.nw-skeleton-loading .skeleton-scope .tf-product-info-sku::after,
html.nw-skeleton-loading .skeleton-scope .heading-section .heading::after,
html.nw-skeleton-loading .skeleton-scope .heading-section .text-caption-1::after,
html.nw-skeleton-loading .skeleton-scope .tab-product a::after {
    content: "";
    position: absolute;
    inset: 0;
    transform: translateX(100%);
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.7), transparent);
    animation: nwSkeletonShimmer 1.15s infinite;
}

html.nw-skeleton-ready .skeleton-scope .card-product,
html.nw-skeleton-ready .skeleton-scope .tf-product-info-list,
html.nw-skeleton-ready .skeleton-scope .tf-product-media-wrap {
    transition: opacity .18s ease;
}

@keyframes nwSkeletonShimmer {
    100% {
        transform: translateX(-100%);
    }
}

@media (prefers-reduced-motion: reduce) {
    html.nw-skeleton-loading .skeleton-scope *::after {
        animation: none !important;
    }
}

@media (max-width: 767px) {
    html.nw-skeleton-loading .skeleton-scope .tf-product-media-main .item {
        min-height: 360px;
    }

    html.nw-skeleton-loading .skeleton-scope .card-product .product-img {
        min-height: 220px;
    }
}
