{"product_id":"massage-gun-deep-tissue-portable-muscle-massager-heat-and-cold-black","title":"Massage Gun Deep Tissue Portable Muscle Massager Heat and Cold, Black","description":"\u003cdiv\u003e\u003cdiv lang=\"en_US\"\u003e\n \u003cdiv class=\"aplus-v2 desktop celwidget\" cel_widget_id=\"aplus\"\u003e\n  \u003cstyle type=\"text\/css\"\u003e\n    .aplus-v2 .premium-aplus-module-13 .aplus-carousel-container {\n        position: relative;\n    }\n\n    .aplus-v2 .premium-aplus-module-13 .aplus-carousel-element {\n        position: relative;\n        width: 100%;\n    }\n\n    .aplus-v2 .premium-aplus-module-13 .aplus-card-link-button {\n        text-align: center;\n        padding-top: 20px;\n    }\n\n    .aplus-v2 .premium-aplus-module-13 .aplus-text-background,\n    .aplus-v2 .premium-aplus-module-13 .aplus-text-background h1,\n    .aplus-v2 .premium-aplus-module-13 .aplus-text-background h5,\n    .aplus-v2 .premium-aplus-module-13 .aplus-text-background ol,\n    .aplus-v2 .premium-aplus-module-13 .aplus-text-background ul,\n    .aplus-v2 .premium-aplus-module-13 .aplus-text-background ol .a-list-item,\n    .aplus-v2 .premium-aplus-module-13 .aplus-text-background ul .a-list-item {\n        color: #fff;\n    }\n\n\u003c\/style\u003e\n  \u003cstyle type=\"text\/css\"\u003e\n\n.aplus-v2 .premium-aplus-module-2 .premium-background-wrapper {\n    position: relative;\n}\n\n.aplus-v2 .premium-aplus-module-2 .premium-intro-wrapper {\n    position: absolute;\n    width: 50%;\n    height: 100%;\n    top: 0;\n}\n\n.aplus-v2 .premium-aplus-module-2 .premium-intro-wrapper.right {\n    left: 50%;\n}\n\nhtml[dir=\"rtl\"] .aplus-v2 .premium-aplus-module-2 .premium-intro-wrapper.right {\n    left: auto;\n    right: 50%;\n}\n\n.aplus-v2 .premium-aplus-module-2 .premium-intro-wrapper.secondary-color {\n    color: #fff;\n}\n\n.aplus-v2 .premium-aplus-module-2 .premium-intro-background {\n    padding: 20px;\n}\n\n.aplus-v2 .premium-aplus-module-2 .aplus-module-2-topic {\n    padding-bottom: 10px;\n}\n\n.aplus-v2 .premium-aplus-module-2 .aplus-module-2-heading {\n    padding-bottom: 20px;\n}\n\n.aplus-v2 .premium-aplus-module-2 .aplus-module-2-description {\n    line-height: 1.5em;\n}\n\n.aplus-v2 .premium-aplus-module-2 .premium-intro-background.white-background {\n    background: rgba(255,255,255,0.5);\n}\n\n.aplus-v2 .premium-aplus-module-2 .premium-intro-background.black-background {\n    background: rgba(0,0,0,0.5);\n}\n\n.aplus-v2 .premium-aplus-module-2 .premium-intro-background.black-background,\n.aplus-v2 .premium-aplus-module-2 .premium-intro-background.black-background h1,\n.aplus-v2 .premium-aplus-module-2 .premium-intro-background.black-background h5,\n.aplus-v2 .premium-aplus-module-2 .premium-intro-background.black-background ol,\n.aplus-v2 .premium-aplus-module-2 .premium-intro-background.black-background ul,\n.aplus-v2 .premium-aplus-module-2 .premium-intro-background.black-background ol .a-list-item,\n.aplus-v2 .premium-aplus-module-2 .premium-intro-background.black-background ul .a-list-item {\n  color: var(--aok-sfs-color-page-inverse-normal-fixed-fg, #fff);\n}\n\n.aplus-v2 .premium-aplus-module-2 .premium-intro-content-container {\n    display: table;\n    height: 100%;\n}\n\n.aplus-v2 .premium-aplus-module-2 .premium-intro-wrapper.left .premium-intro-content-container {\n    padding-left: 40px;\n}\n\nhtml[dir=\"rtl\"] .aplus-v2 .premium-aplus-module-2 .premium-intro-wrapper.left .premium-intro-content-container {\n\tpadding-left: 0px;\n\tpadding-right: 40px;\n}\n\n.aplus-v2 .premium-aplus-module-2 .premium-intro-wrapper.right .premium-intro-content-container {\n    padding-right: 40px;\n}\n\nhtml[dir=\"rtl\"] .aplus-v2 .premium-aplus-module-2 .premium-intro-wrapper.right .premium-intro-content-container {\n    padding-right: 0px;\n    padding-left: 40px;\n}\n\n.aplus-v2 .premium-aplus-module-2 .premium-intro-content-column {\n    display: table-cell;\n    vertical-align: middle;\n}\n\n\n\u003c\/style\u003e\n  \u003cstyle type=\"text\/css\"\u003e\n\n\/**\n * Premium modules global styles\n *\/\n.aplus-v2.desktop {\n  max-width: 1464px;\n  min-width: 800px;\n  margin-left: auto;\n  margin-right: auto;\n  word-wrap: break-word;\n  overflow-wrap: break-word;\n  word-break: break-word;\n}\n\/* Undo this for tech-specs because it breaks table layout *\/\n.aplus-v2.desktop .premium-aplus .aplus-tech-spec-table { word-break: initial; }\n\n.aplus-v2 .premium-aplus,\n.aplus-v2 .premium-aplus .aplus-h1,\n.aplus-v2 .premium-aplus .aplus-h2,\n.aplus-v2 .premium-aplus .aplus-p1,\n.aplus-v2 .premium-aplus .aplus-p2,\n.aplus-v2 .premium-aplus .aplus-p3,\n.aplus-v2 .premium-aplus .aplus-accent1,\n.aplus-v2 .premium-aplus .aplus-accent2\n{ font-family: Arial, sans-serif; }\n\n.aplus-v2 .premium-aplus,\n.aplus-v2 .premium-aplus .aplus-h1,\n.aplus-v2 .premium-aplus .aplus-h2,\n.aplus-v2 .premium-aplus .aplus-p1,\n.aplus-v2 .premium-aplus .aplus-p2,\n.aplus-v2 .premium-aplus .aplus-p3,\n.aplus-v2 .premium-aplus .aplus-accent1,\n.aplus-v2 .premium-aplus .aplus-accent2\n{ font-family: inherit; }\n\n\/* type *\/\n.aplus-v2 .premium-aplus .aplus-h1 { font-size: 32px; line-height: 1.2em; font-weight: 500; }\n.aplus-v2 .premium-aplus .aplus-h2 { font-size: 26px; line-height: 1.25em; font-weight: 500; }\n.aplus-v2 .premium-aplus .aplus-h3 { font-size: 18px; line-height: 1.25em; font-weight: 500; }\n.aplus-v2 .premium-aplus .aplus-p1 { font-size: 20px; line-height: 1.3em; font-weight: 300; }\n.aplus-v2 .premium-aplus .aplus-p2 { font-size: 16px; line-height: 1.4em; font-weight: 300; }\n.aplus-v2 .premium-aplus .aplus-p3 { font-size: 14px; line-height: 1.4em; font-weight: 300; }\n.aplus-v2 .premium-aplus .aplus-accent1 { font-size: 16px; line-height: 1.4em; font-weight: 600; }\n.aplus-v2 .premium-aplus .aplus-accent2 { font-size: 14px; line-height: 1.4em; font-weight: 600; }\n\n\/* spacing *\/\n.aplus-v2 .aplus-container-1 { padding: 40px; }\n.aplus-v2 .aplus-container-1-2 { padding: 40px 80px; }\n.aplus-v2 .aplus-container-2 { padding: 80px; }\n.aplus-v2 .aplus-container-3 { padding: 40px 0; }\n\n\/* Display *\/\n.aplus-v2 .premium-aplus .aplus-display-table { display: table; }\n.aplus-v2 .premium-aplus .aplus-display-table-cell { display: table-cell; }\n.aplus-v2 .premium-aplus .aplus-display-inline-block { display: inline-block; }\n\n\/* Aplus display table with min-width 1000px and fill remaining space inside parent *\/\n.aplus-v2.desktop .premium-aplus .aplus-display-table-width { min-width: 1000px; width: 100% }\n\n\/**\n* Padding and margin for element should be 10, 20, 40, or 80 px. Considering mini 10, small 20, medium 40, large 80.\n*\/\n\n\u003c\/style\u003e\n  \u003cstyle type=\"text\/css\"\u003e\n\n\/**\n * Premium-module 13: Carousel\n *\/\n\n.aplus-v2 .premium-aplus-module-13 .aplus-card-description-wrapper {\n    position: absolute;\n    top: 0;\n    left: 0;\n    width: 100%;\n    height: 100%;\n}\n\n.aplus-v2 .premium-aplus-module-13 .aplus-card-description {\n    display: table;\n    width: 50%;\n    height: 100%;\n    color: #fff;\n}\n\n.aplus-v2 .premium-aplus-module-13 .aplus-card-table-cell {\n    display: table-cell;\n    vertical-align: middle;\n    text-align: left;\n}\n\nhtml[dir=\"rtl\"] .aplus-v2 .premium-aplus-module-13 .aplus-card-table-cell {\n    text-align: right;\n}\n\n.aplus-v2 .premium-aplus-module-13 .aplus-text-background {\n    background: rgba(0, 0, 0, 0.6);\n}\n\n.aplus-v2 .premium-aplus-module-13 .aplus-card-body {\n    padding: 20px 40px 0 0;\n}\n\nhtml[dir=\"rtl\"] .aplus-v2 .premium-aplus-module-13 .aplus-card-body {\n    padding: 20px 0 0 40px;\n}\n\n.aplus-v2 .premium-aplus-module-13 .aplus-pagination-wrapper {\n    position: absolute;\n    top: 92%;\n    width: 100%;\n}\n\n\u003c\/style\u003e\n  \u003cdiv class=\"aplus-content-wrapper\"\u003e\n   \u003cdiv class=\"aplus-module-csa-wrapper\" data-csa-c-type=\"widget\" data-csa-c-slot-id=\"aplus-module-premium-module-2-fullbackground-image-1\" data-csa-c-content-id=\"amzn1.aplus.ed55b64a-3b53-4e79-a070-62f3ddfe08a5:1781491952405.8c34f8a8-759e-43fa-9ae1-354cc3ddc253.en_US\"\u003e\n    \u003cdiv class=\"celwidget aplus-module premium-module-2-fullbackground-image aplus-premium\" cel_widget_id=\"aplus-premium-module-2-fullbackground-image\"\u003e\n     \u003cdiv class=\"a-section a-spacing-none premium-aplus premium-aplus-module-2\"\u003e\n      \u003cdiv class=\"a-section a-spacing-none premium-background-wrapper\"\u003e\n       \u003cdiv class=\"a-section a-spacing-none background-image\"\u003e\n        \u003cimg alt=\"massage gun\" class=\"a-lazy-loaded\" data-src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/aa1edb47-0918-4cd0-a599-975fa64d141b.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/aa1edb47-0918-4cd0-a599-975fa64d141b.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\"\u003e\n        \u003cnoscript\u003e\n         \u003cimg alt=\"massage gun\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/aa1edb47-0918-4cd0-a599-975fa64d141b.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\"\u003e\n        \u003c\/noscript\u003e\n       \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"a-section a-text-center\"\u003e\u003c\/div\u003e\n     \u003c\/div\u003e\n    \u003c\/div\u003e\n   \u003c\/div\u003e\n   \u003cdiv class=\"aplus-module-csa-wrapper\" data-csa-c-type=\"widget\" data-csa-c-slot-id=\"aplus-module-premium-module-13-carousel-2\" data-csa-c-content-id=\"amzn1.aplus.ed55b64a-3b53-4e79-a070-62f3ddfe08a5:1781491952405.881eb12a-2207-4bcd-8d3d-b9b95c0991b6.en_US\"\u003e\n    \u003cdiv class=\"celwidget aplus-module premium-module-13-carousel aplus-premium\" cel_widget_id=\"aplus-premium-module-13-carousel\"\u003e\n     \u003cdiv class=\"a-section a-spacing-none premium-aplus premium-aplus-module-13\"\u003e\n      \u003cdiv class=\"a-section a-spacing-none aplus-carousel-container\"\u003e\n       \u003cdiv id=\"premium-aplus-13-carousel-1-id\" data-a-carousel-options='{\"peek_percentage\":0,\"minimum_gutter_width\":0,\"show_partial_next\":false,\"name\":\"premium-aplus-13-carousel-1\"}' aria-label=\"Featured content carousel\" aria-roledescription=\"carousel\" data-a-display-strategy=\"single\" data-a-transition-strategy=\"slideCircular\" role=\"region\" class=\"a-begin a-carousel-container a-carousel-static a-carousel-display-single a-carousel-transition-slideCircular\"\u003e\n        \u003cinput autocomplete=\"on\" type=\"hidden\" class=\"a-carousel-firstvisibleitem\"\u003e\n        \u003cdiv class=\"a-row a-carousel-controls a-carousel-row a-carousel-has-buttons a-carousel-overlay-buttons a-carousel-rounded-buttons\"\u003e\n         \u003cdiv class=\"a-carousel-row-inner\"\u003e\n          \u003cdiv class=\"a-carousel-col a-carousel-left\"\u003e\n           \u003ca class=\"a-carousel-goto-prevpage\" role=\"button\" href=\"#\"\u003e\u003ci class=\"a-icon a-icon-previous-rounded\"\u003e\u003cspan class=\"a-icon-alt\"\u003ePrevious page\u003c\/span\u003e\u003c\/i\u003e\u003c\/a\u003e\n          \u003c\/div\u003e\n          \u003cdiv class=\"a-carousel-col a-carousel-center\"\u003e\n           \u003cdiv class=\"a-carousel-viewport\" aria-roledescription=\"slide\"\u003e\n            \u003col class=\"a-carousel\" role=\"list\"\u003e\n             \u003cli aria-roledescription=\"slide\" class=\"a-carousel-card aplus-carousel-element\" aria-setsize=\"3\"\u003e\n              \u003cdiv id=\"premium-aplus-13-carousel-1-slide-0\"\u003e\n               \u003cdiv class=\"a-section a-spacing-none aplus-card-image\"\u003e\n                \u003cdiv style=\"aspect-ratio: 1464 \/ 600; line-height: 0;\"\u003e\n                 \u003cimg alt=\"massage gun\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/9aaa47d8-5225-42ea-99ec-de4c49ce7e1f.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\"\u003e\n                \u003c\/div\u003e\n               \u003c\/div\u003e\n              \u003c\/div\u003e\n             \u003c\/li\u003e\n             \u003cli aria-roledescription=\"slide\" class=\"a-carousel-card aplus-carousel-element\" aria-setsize=\"3\"\u003e\n              \u003cdiv id=\"premium-aplus-13-carousel-1-slide-1\"\u003e\n               \u003cdiv class=\"a-section a-spacing-none aplus-card-image\"\u003e\n                \u003cdiv style=\"aspect-ratio: 1464 \/ 600; line-height: 0;\"\u003e\n                 \u003cimg alt=\"massage gun\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/a171ca4f-7d33-4dc6-a2b1-17abd767a269.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\"\u003e\n                \u003c\/div\u003e\n               \u003c\/div\u003e\n              \u003c\/div\u003e\n             \u003c\/li\u003e\n             \u003cli aria-roledescription=\"slide\" class=\"a-carousel-card aplus-carousel-element\" aria-setsize=\"3\"\u003e\n              \u003cdiv id=\"premium-aplus-13-carousel-1-slide-2\"\u003e\n               \u003cdiv class=\"a-section a-spacing-none aplus-card-image\"\u003e\n                \u003cdiv style=\"aspect-ratio: 1464 \/ 600; line-height: 0;\"\u003e\n                 \u003cimg alt=\"massage gun\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/7b12253a-07e6-4476-b92f-fac145a6fbb5.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\"\u003e\n                \u003c\/div\u003e\n               \u003c\/div\u003e\n              \u003c\/div\u003e\n             \u003c\/li\u003e\n            \u003c\/ol\u003e\n           \u003c\/div\u003e\n          \u003c\/div\u003e\n          \u003cdiv class=\"a-carousel-col a-carousel-right\"\u003e\n           \u003ca class=\"a-carousel-goto-nextpage\" role=\"button\" href=\"#\"\u003e\u003ci class=\"a-icon a-icon-next-rounded\"\u003e\u003cspan class=\"a-icon-alt\"\u003eNext page\u003c\/span\u003e\u003c\/i\u003e\u003c\/a\u003e\n          \u003c\/div\u003e\n         \u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cspan class=\"a-end aok-hidden\"\u003e\u003c\/span\u003e\n       \u003c\/div\u003e\n       \u003cdiv class=\"a-section a-spacing-none aplus-pagination-wrapper\"\u003e\n        \u003cstyle type=\"text\/css\"\u003e\n\n.aplus-mantle.aplus-module .aplus-pagination-dots {\n    margin: 0;\n}\n\n.aplus-mantle.aplus-module .aplus-pagination-dot {\n    display: inline-block;\n    list-style: none;\n}\n\n.aplus-mantle.aplus-module .aplus-carousel-nav {\n    text-align:center;\n}\n\n.aplus-mantle.aplus-module .carousel-slider-circle {\n    display: inline-block;\n    cursor: pointer;\n    height: 15px;\n    width: 15px;\n    border: 1px solid #000;\n    border-radius: 20px;\n    background-color: #fff;\n    margin-left: 5px;\n}\n\n.aplus-mantle.aplus-module .carousel-slider-circle.aplus-carousel-active {\n    background-color: #DE7921;\n}\n\n.aplus-mantle.aplus-module .aplus-pagination-dot--display-none {\n    display: none;\n}\n\n\u003c\/style\u003e\n        \u003cscript\u003e\n\nP.now(\"premium-aplus-13-carousel-1\").execute(\"init-pagination-carousel\", function(init) {\n    if (init) {\n        return;\n    }\n    P.register(\"premium-aplus-13-carousel-1\", function() {\n        return function() {\n            P.when(\"A\", \"jQuery\", \"a-carousel-framework\", \"ready\").execute(\"paginate-carousel\", function (A, $, framework) {\n                const ENTER_KEY_CODE = 13;\n                const ESCAPE_KEY_CODE = 27;\n                const LEFT_ARROW_KEY = 37;\n                const RIGHT_ARROW_KEY = 39;\n                const HOME_KEY = 36;\n                const END_KEY = 35;\n\n                var moduleId = \"1\";\n                var carouselName = \"premium-aplus-13-carousel-1\";\n                var paginationAction = \"aplus-pagination-dot-action-\" + moduleId + \"-\" + carouselName;\n                var paginationGroup = \"#aplus-pagination-group-\" + moduleId + \"-\" + carouselName;\n\n                \/* If the carousel goes to a new page *\/\n                A.on(\"a:carousel:\"+carouselName+\":change:pageNumber\", function (data) {\n                    A.$(paginationGroup+\" .carousel-slider-circle\").removeClass(\"aplus-carousel-active\").attr('aria-selected', 'false').attr('tabindex', -1)\n                                    .eq(data.newValue - 1).addClass(\"aplus-carousel-active\").attr('aria-selected', 'true').attr('tabindex', 0);\n                });\n\n                function syncPaginationDotsWithCarouselPages(numPages) {\n                    const parentElement = document.querySelector(paginationGroup);\n                    if (parentElement \u0026\u0026 parentElement.children) {\n                        const children = parentElement.children;\n                        for (let i = 0; i \u003c children.length; i++) {\n                            if (i \u003e= numPages) {\n                                \/\/ If number of dots \u003e num of pages, we should hide other dots\n                                children[i].classList.add('aplus-pagination-dot--display-none');\n                            } else if (children[i].classList.contains('aplus-pagination-dot--display-none')) {\n                                \/\/ Reset display of dots if it was hidden before\n                                children[i].classList.remove('aplus-pagination-dot--display-none');\n                            }\n                        }\n                    }\n                }\n\n                framework.onInit(carouselName, function (carousel) {\n                    try {\n                        var totalPages = carousel.getAttr('totalPages');\n                        syncPaginationDotsWithCarouselPages(totalPages);\n                        \/* Resize event handler to re-calculate the pagination dots count based on orientation *\/\n                        window.addEventListener('resize', function() {\n                            carousel.resize();\n                            totalPages = carousel.getAttr('totalPages');\n                            syncPaginationDotsWithCarouselPages(totalPages);\n                        });\n\n                        A.declarative(paginationAction, 'click keydown', function(event){\n                            var isClick = event.type === 'click';\n                            var isKeydown = event.type === 'keydown';\n                            var isEnter = isKeydown \u0026\u0026 event.$event.keyCode === ENTER_KEY_CODE;\n                            var isEsc = isKeydown \u0026\u0026 event.$event.keyCode === ESCAPE_KEY_CODE;\n                            var isLeftArrow = isKeydown \u0026\u0026 event.$event.keyCode === LEFT_ARROW_KEY;\n                            var isRightArrow = isKeydown \u0026\u0026 event.$event.keyCode === RIGHT_ARROW_KEY;\n                            var isHome = isKeydown \u0026\u0026 event.$event.keyCode === HOME_KEY;\n                            var isEnd = isKeydown \u0026\u0026 event.$event.keyCode === END_KEY;\n\n                            if (isClick || isEnter) {\n                                var data = event.data;\n                                carousel.gotoPage(data.page);\n                            } else if (isEsc) {\n                                event.$target.blur();\n                            } else if (isLeftArrow || isRightArrow || isHome || isEnd) {\n                                event.$event.preventDefault();\n                                const dots = A.$(paginationGroup + \" .carousel-slider-circle\");\n                                const currentIndex = dots.index(event.$target);\n                                let nextIndex;\n\n                                if (isLeftArrow) {\n                                    nextIndex = currentIndex \u003e 0 ? currentIndex - 1 : dots.length - 1;\n                                } else if (isRightArrow) {\n                                    nextIndex = currentIndex \u003c dots.length - 1 ? currentIndex + 1 : 0;\n                                } else if (isHome) {\n                                    nextIndex = 0;\n                                } else if (isEnd) {\n                                    nextIndex = dots.length - 1;\n                                }\n\n                                dots.eq(nextIndex).focus();\n                                carousel.gotoPage(nextIndex + 1);\n                            }\n                        });\n                    } catch (e) {\n                        P.log('Failed to init ' + carouselName + '. Error: ' + e.message, 'FATAL', 'AplusModuleResources');\n                    }\n                });\n            });\n        }\n    });\n});\n\u003c\/script\u003e\n        \u003cdiv class=\"aplus-mantle aplus-module\"\u003e\n         \u003cdiv class=\"aplus-carousel-nav\"\u003e\n          \u003cul id=\"aplus-pagination-group-1-premium-aplus-13-carousel-1\" class=\"aplus-pagination-dots\" aria-label=\"tablist-section\" role=\"tablist\"\u003e\n           \u003cli class=\"aplus-pagination-dot\"\u003e\u003cspan class=\"a-declarative carousel-slider-circle aplus-display-inline-block aplus-carousel-active\" aria-selected=\"true\" data-action=\"aplus-pagination-dot-action-1-premium-aplus-13-carousel-1\" data-aplus-pagination-dot-action-1-premium-aplus-13-carousel-1='{\"page\": 1}' aria-label=\"slide-1\" aria-controls=\"premium-aplus-13-carousel-1-slide-0\" tabindex=\"0\" role=\"tab\"\u003e\u003c\/span\u003e\u003c\/li\u003e\n           \u003cli class=\"aplus-pagination-dot\"\u003e\u003cspan class=\"a-declarative carousel-slider-circle aplus-display-inline-block \" aria-selected=\"false\" data-action=\"aplus-pagination-dot-action-1-premium-aplus-13-carousel-1\" data-aplus-pagination-dot-action-1-premium-aplus-13-carousel-1='{\"page\": 2}' aria-label=\"slide-2\" aria-controls=\"premium-aplus-13-carousel-1-slide-1\" tabindex=\"-1\" role=\"tab\"\u003e\u003c\/span\u003e\u003c\/li\u003e\n           \u003cli class=\"aplus-pagination-dot\"\u003e\u003cspan class=\"a-declarative carousel-slider-circle aplus-display-inline-block \" aria-selected=\"false\" data-action=\"aplus-pagination-dot-action-1-premium-aplus-13-carousel-1\" data-aplus-pagination-dot-action-1-premium-aplus-13-carousel-1='{\"page\": 3}' aria-label=\"slide-3\" aria-controls=\"premium-aplus-13-carousel-1-slide-2\" tabindex=\"-1\" role=\"tab\"\u003e\u003c\/span\u003e\u003c\/li\u003e\n          \u003c\/ul\u003e\n         \u003c\/div\u003e\n        \u003c\/div\u003e\n       \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"a-section a-text-center\"\u003e\u003c\/div\u003e\n     \u003c\/div\u003e\n     \u003cscript type=\"text\/javascript\"\u003e(function(f) {var _np=(window.P._namespace(\"PremiumAplusModule\"));if(_np.guardFatal){_np.guardFatal(f)(_np);}else{f(_np);}}(function(P) {\n    P.when(\"premium-aplus-13-carousel-1\").execute('invoke-premium-13-carousel-desktop', function(init){init();});\n}));\u003c\/script\u003e\n    \u003c\/div\u003e\n   \u003c\/div\u003e\n   \u003cdiv class=\"aplus-module-csa-wrapper\" data-csa-c-type=\"widget\" data-csa-c-slot-id=\"aplus-module-premium-module-2-fullbackground-image-3\" data-csa-c-content-id=\"amzn1.aplus.ed55b64a-3b53-4e79-a070-62f3ddfe08a5:1781491952405.78a6ebdc-e2c4-41fa-a5e8-bf99f40a9fe2.en_US\"\u003e\n    \u003cdiv class=\"celwidget aplus-module premium-module-2-fullbackground-image aplus-premium\" cel_widget_id=\"aplus-premium-module-2-fullbackground-image\"\u003e\n     \u003cdiv class=\"a-section a-spacing-none premium-aplus premium-aplus-module-2\"\u003e\n      \u003cdiv class=\"a-section a-spacing-none premium-background-wrapper\"\u003e\n       \u003cdiv class=\"a-section a-spacing-none background-image\"\u003e\n        \u003cimg alt=\"massage gun\" class=\"a-lazy-loaded\" data-src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/833eb796-7da8-4512-b328-15a58146cf94.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/833eb796-7da8-4512-b328-15a58146cf94.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\"\u003e\n        \u003cnoscript\u003e\n         \u003cimg alt=\"massage gun\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/833eb796-7da8-4512-b328-15a58146cf94.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\"\u003e\n        \u003c\/noscript\u003e\n       \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"a-section a-text-center\"\u003e\u003c\/div\u003e\n     \u003c\/div\u003e\n    \u003c\/div\u003e\n   \u003c\/div\u003e\n   \u003cdiv class=\"aplus-module-csa-wrapper\" data-csa-c-type=\"widget\" data-csa-c-slot-id=\"aplus-module-premium-module-13-carousel-4\" data-csa-c-content-id=\"amzn1.aplus.ed55b64a-3b53-4e79-a070-62f3ddfe08a5:1781491952405.de383b87-0154-4177-9ece-6bd701e05925.en_US\"\u003e\n    \u003cdiv class=\"celwidget aplus-module premium-module-13-carousel aplus-premium\" cel_widget_id=\"aplus-premium-module-13-carousel\"\u003e\n     \u003cdiv class=\"a-section a-spacing-none premium-aplus premium-aplus-module-13\"\u003e\n      \u003cdiv class=\"a-section a-spacing-none aplus-carousel-container\"\u003e\n       \u003cdiv id=\"premium-aplus-13-carousel-3-id\" data-a-carousel-options='{\"peek_percentage\":0,\"minimum_gutter_width\":0,\"show_partial_next\":false,\"name\":\"premium-aplus-13-carousel-3\"}' aria-label=\"Featured content carousel\" aria-roledescription=\"carousel\" data-a-display-strategy=\"single\" data-a-transition-strategy=\"slideCircular\" role=\"region\" class=\"a-begin a-carousel-container a-carousel-static a-carousel-display-single a-carousel-transition-slideCircular\"\u003e\n        \u003cinput autocomplete=\"on\" type=\"hidden\" class=\"a-carousel-firstvisibleitem\"\u003e\n        \u003cdiv class=\"a-row a-carousel-controls a-carousel-row a-carousel-has-buttons a-carousel-overlay-buttons a-carousel-rounded-buttons\"\u003e\n         \u003cdiv class=\"a-carousel-row-inner\"\u003e\n          \u003cdiv class=\"a-carousel-col a-carousel-left\"\u003e\n           \u003ca class=\"a-carousel-goto-prevpage\" role=\"button\" href=\"#\"\u003e\u003ci class=\"a-icon a-icon-previous-rounded\"\u003e\u003cspan class=\"a-icon-alt\"\u003ePrevious page\u003c\/span\u003e\u003c\/i\u003e\u003c\/a\u003e\n          \u003c\/div\u003e\n          \u003cdiv class=\"a-carousel-col a-carousel-center\"\u003e\n           \u003cdiv class=\"a-carousel-viewport\" aria-roledescription=\"slide\"\u003e\n            \u003col class=\"a-carousel\" role=\"list\"\u003e\n             \u003cli aria-roledescription=\"slide\" class=\"a-carousel-card aplus-carousel-element\" aria-setsize=\"1\"\u003e\n              \u003cdiv id=\"premium-aplus-13-carousel-3-slide-0\"\u003e\n               \u003cdiv class=\"a-section a-spacing-none aplus-card-image\"\u003e\n                \u003cdiv style=\"aspect-ratio: 1464 \/ 600; line-height: 0;\"\u003e\n                 \u003cimg alt=\"massage gun\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/723b2ef6-0397-4fa7-9c04-22ac200d1b76.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\"\u003e\n                \u003c\/div\u003e\n               \u003c\/div\u003e\n              \u003c\/div\u003e\n             \u003c\/li\u003e\n            \u003c\/ol\u003e\n           \u003c\/div\u003e\n          \u003c\/div\u003e\n          \u003cdiv class=\"a-carousel-col a-carousel-right\"\u003e\n           \u003ca class=\"a-carousel-goto-nextpage\" role=\"button\" href=\"#\"\u003e\u003ci class=\"a-icon a-icon-next-rounded\"\u003e\u003cspan class=\"a-icon-alt\"\u003eNext page\u003c\/span\u003e\u003c\/i\u003e\u003c\/a\u003e\n          \u003c\/div\u003e\n         \u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cspan class=\"a-end aok-hidden\"\u003e\u003c\/span\u003e\n       \u003c\/div\u003e\n       \u003cdiv class=\"a-section a-spacing-none aplus-pagination-wrapper\"\u003e\n        \u003cstyle type=\"text\/css\"\u003e\n\n.aplus-mantle.aplus-module .aplus-pagination-dots {\n    margin: 0;\n}\n\n.aplus-mantle.aplus-module .aplus-pagination-dot {\n    display: inline-block;\n    list-style: none;\n}\n\n.aplus-mantle.aplus-module .aplus-carousel-nav {\n    text-align:center;\n}\n\n.aplus-mantle.aplus-module .carousel-slider-circle {\n    display: inline-block;\n    cursor: pointer;\n    height: 15px;\n    width: 15px;\n    border: 1px solid #000;\n    border-radius: 20px;\n    background-color: #fff;\n    margin-left: 5px;\n}\n\n.aplus-mantle.aplus-module .carousel-slider-circle.aplus-carousel-active {\n    background-color: #DE7921;\n}\n\n.aplus-mantle.aplus-module .aplus-pagination-dot--display-none {\n    display: none;\n}\n\n\u003c\/style\u003e\n        \u003cscript\u003e\n\nP.now(\"premium-aplus-13-carousel-3\").execute(\"init-pagination-carousel\", function(init) {\n    if (init) {\n        return;\n    }\n    P.register(\"premium-aplus-13-carousel-3\", function() {\n        return function() {\n            P.when(\"A\", \"jQuery\", \"a-carousel-framework\", \"ready\").execute(\"paginate-carousel\", function (A, $, framework) {\n                const ENTER_KEY_CODE = 13;\n                const ESCAPE_KEY_CODE = 27;\n                const LEFT_ARROW_KEY = 37;\n                const RIGHT_ARROW_KEY = 39;\n                const HOME_KEY = 36;\n                const END_KEY = 35;\n\n                var moduleId = \"3\";\n                var carouselName = \"premium-aplus-13-carousel-3\";\n                var paginationAction = \"aplus-pagination-dot-action-\" + moduleId + \"-\" + carouselName;\n                var paginationGroup = \"#aplus-pagination-group-\" + moduleId + \"-\" + carouselName;\n\n                \/* If the carousel goes to a new page *\/\n                A.on(\"a:carousel:\"+carouselName+\":change:pageNumber\", function (data) {\n                    A.$(paginationGroup+\" .carousel-slider-circle\").removeClass(\"aplus-carousel-active\").attr('aria-selected', 'false').attr('tabindex', -1)\n                                    .eq(data.newValue - 1).addClass(\"aplus-carousel-active\").attr('aria-selected', 'true').attr('tabindex', 0);\n                });\n\n                function syncPaginationDotsWithCarouselPages(numPages) {\n                    const parentElement = document.querySelector(paginationGroup);\n                    if (parentElement \u0026\u0026 parentElement.children) {\n                        const children = parentElement.children;\n                        for (let i = 0; i \u003c children.length; i++) {\n                            if (i \u003e= numPages) {\n                                \/\/ If number of dots \u003e num of pages, we should hide other dots\n                                children[i].classList.add('aplus-pagination-dot--display-none');\n                            } else if (children[i].classList.contains('aplus-pagination-dot--display-none')) {\n                                \/\/ Reset display of dots if it was hidden before\n                                children[i].classList.remove('aplus-pagination-dot--display-none');\n                            }\n                        }\n                    }\n                }\n\n                framework.onInit(carouselName, function (carousel) {\n                    try {\n                        var totalPages = carousel.getAttr('totalPages');\n                        syncPaginationDotsWithCarouselPages(totalPages);\n                        \/* Resize event handler to re-calculate the pagination dots count based on orientation *\/\n                        window.addEventListener('resize', function() {\n                            carousel.resize();\n                            totalPages = carousel.getAttr('totalPages');\n                            syncPaginationDotsWithCarouselPages(totalPages);\n                        });\n\n                        A.declarative(paginationAction, 'click keydown', function(event){\n                            var isClick = event.type === 'click';\n                            var isKeydown = event.type === 'keydown';\n                            var isEnter = isKeydown \u0026\u0026 event.$event.keyCode === ENTER_KEY_CODE;\n                            var isEsc = isKeydown \u0026\u0026 event.$event.keyCode === ESCAPE_KEY_CODE;\n                            var isLeftArrow = isKeydown \u0026\u0026 event.$event.keyCode === LEFT_ARROW_KEY;\n                            var isRightArrow = isKeydown \u0026\u0026 event.$event.keyCode === RIGHT_ARROW_KEY;\n                            var isHome = isKeydown \u0026\u0026 event.$event.keyCode === HOME_KEY;\n                            var isEnd = isKeydown \u0026\u0026 event.$event.keyCode === END_KEY;\n\n                            if (isClick || isEnter) {\n                                var data = event.data;\n                                carousel.gotoPage(data.page);\n                            } else if (isEsc) {\n                                event.$target.blur();\n                            } else if (isLeftArrow || isRightArrow || isHome || isEnd) {\n                                event.$event.preventDefault();\n                                const dots = A.$(paginationGroup + \" .carousel-slider-circle\");\n                                const currentIndex = dots.index(event.$target);\n                                let nextIndex;\n\n                                if (isLeftArrow) {\n                                    nextIndex = currentIndex \u003e 0 ? currentIndex - 1 : dots.length - 1;\n                                } else if (isRightArrow) {\n                                    nextIndex = currentIndex \u003c dots.length - 1 ? currentIndex + 1 : 0;\n                                } else if (isHome) {\n                                    nextIndex = 0;\n                                } else if (isEnd) {\n                                    nextIndex = dots.length - 1;\n                                }\n\n                                dots.eq(nextIndex).focus();\n                                carousel.gotoPage(nextIndex + 1);\n                            }\n                        });\n                    } catch (e) {\n                        P.log('Failed to init ' + carouselName + '. Error: ' + e.message, 'FATAL', 'AplusModuleResources');\n                    }\n                });\n            });\n        }\n    });\n});\n\u003c\/script\u003e\n       \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"a-section a-text-center\"\u003e\u003c\/div\u003e\n     \u003c\/div\u003e\n     \u003cscript type=\"text\/javascript\"\u003e(function(f) {var _np=(window.P._namespace(\"PremiumAplusModule\"));if(_np.guardFatal){_np.guardFatal(f)(_np);}else{f(_np);}}(function(P) {\n    P.when(\"premium-aplus-13-carousel-3\").execute('invoke-premium-13-carousel-desktop', function(init){init();});\n}));\u003c\/script\u003e\n    \u003c\/div\u003e\n   \u003c\/div\u003e\n   \u003cdiv class=\"aplus-module-csa-wrapper\" data-csa-c-type=\"widget\" data-csa-c-slot-id=\"aplus-module-premium-module-2-fullbackground-image-5\" data-csa-c-content-id=\"amzn1.aplus.ed55b64a-3b53-4e79-a070-62f3ddfe08a5:1781491952405.ef395944-e298-4f4f-8d6e-357054915692.en_US\"\u003e\n    \u003cdiv class=\"celwidget aplus-module premium-module-2-fullbackground-image aplus-premium\" cel_widget_id=\"aplus-premium-module-2-fullbackground-image\"\u003e\n     \u003cdiv class=\"a-section a-spacing-none premium-aplus premium-aplus-module-2\"\u003e\n      \u003cdiv class=\"a-section a-spacing-none premium-background-wrapper\"\u003e\n       \u003cdiv class=\"a-section a-spacing-none background-image\"\u003e\n        \u003cimg alt=\"massage gun\" class=\"a-lazy-loaded\" data-src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/66319631-3242-459f-a1e1-dea0ac243220.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/66319631-3242-459f-a1e1-dea0ac243220.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\"\u003e\n        \u003cnoscript\u003e\n         \u003cimg alt=\"massage gun\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/66319631-3242-459f-a1e1-dea0ac243220.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\"\u003e\n        \u003c\/noscript\u003e\n       \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"a-section a-text-center\"\u003e\u003c\/div\u003e\n     \u003c\/div\u003e\n    \u003c\/div\u003e\n   \u003c\/div\u003e\n   \u003cdiv class=\"aplus-module-csa-wrapper\" data-csa-c-type=\"widget\" data-csa-c-slot-id=\"aplus-module-premium-module-13-carousel-6\" data-csa-c-content-id=\"amzn1.aplus.ed55b64a-3b53-4e79-a070-62f3ddfe08a5:1781491952405.7fa1191c-9d70-4854-bd3d-c714dfb5cd23.en_US\"\u003e\n    \u003cdiv class=\"celwidget aplus-module premium-module-13-carousel aplus-premium\" cel_widget_id=\"aplus-premium-module-13-carousel\"\u003e\n     \u003cdiv class=\"a-section a-spacing-none premium-aplus premium-aplus-module-13\"\u003e\n      \u003cdiv class=\"a-section a-spacing-none aplus-carousel-container\"\u003e\n       \u003cdiv id=\"premium-aplus-13-carousel-5-id\" data-a-carousel-options='{\"peek_percentage\":0,\"minimum_gutter_width\":0,\"show_partial_next\":false,\"name\":\"premium-aplus-13-carousel-5\"}' aria-label=\"Featured content carousel\" aria-roledescription=\"carousel\" data-a-display-strategy=\"single\" data-a-transition-strategy=\"slideCircular\" role=\"region\" class=\"a-begin a-carousel-container a-carousel-static a-carousel-display-single a-carousel-transition-slideCircular\"\u003e\n        \u003cinput autocomplete=\"on\" type=\"hidden\" class=\"a-carousel-firstvisibleitem\"\u003e\n        \u003cdiv class=\"a-row a-carousel-controls a-carousel-row a-carousel-has-buttons a-carousel-overlay-buttons a-carousel-rounded-buttons\"\u003e\n         \u003cdiv class=\"a-carousel-row-inner\"\u003e\n          \u003cdiv class=\"a-carousel-col a-carousel-left\"\u003e\n           \u003ca class=\"a-carousel-goto-prevpage\" role=\"button\" href=\"#\"\u003e\u003ci class=\"a-icon a-icon-previous-rounded\"\u003e\u003cspan class=\"a-icon-alt\"\u003ePrevious page\u003c\/span\u003e\u003c\/i\u003e\u003c\/a\u003e\n          \u003c\/div\u003e\n          \u003cdiv class=\"a-carousel-col a-carousel-center\"\u003e\n           \u003cdiv class=\"a-carousel-viewport\" aria-roledescription=\"slide\"\u003e\n            \u003col class=\"a-carousel\" role=\"list\"\u003e\n             \u003cli aria-roledescription=\"slide\" class=\"a-carousel-card aplus-carousel-element\" aria-setsize=\"2\"\u003e\n              \u003cdiv id=\"premium-aplus-13-carousel-5-slide-0\"\u003e\n               \u003cdiv class=\"a-section a-spacing-none aplus-card-image\"\u003e\n                \u003cdiv style=\"aspect-ratio: 1464 \/ 600; line-height: 0;\"\u003e\n                 \u003cimg alt=\"massage gun\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/c46c0d5e-da09-4554-83bf-9e0651cda606.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\"\u003e\n                \u003c\/div\u003e\n               \u003c\/div\u003e\n              \u003c\/div\u003e\n             \u003c\/li\u003e\n             \u003cli aria-roledescription=\"slide\" class=\"a-carousel-card aplus-carousel-element\" aria-setsize=\"2\"\u003e\n              \u003cdiv id=\"premium-aplus-13-carousel-5-slide-1\"\u003e\n               \u003cdiv class=\"a-section a-spacing-none aplus-card-image\"\u003e\n                \u003cdiv style=\"aspect-ratio: 1464 \/ 600; line-height: 0;\"\u003e\n                 \u003cimg alt=\"massage gun\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/42baf2da-f799-4f5e-92bf-2e5d9a1743d3.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\"\u003e\n                \u003c\/div\u003e\n               \u003c\/div\u003e\n              \u003c\/div\u003e\n             \u003c\/li\u003e\n            \u003c\/ol\u003e\n           \u003c\/div\u003e\n          \u003c\/div\u003e\n          \u003cdiv class=\"a-carousel-col a-carousel-right\"\u003e\n           \u003ca class=\"a-carousel-goto-nextpage\" role=\"button\" href=\"#\"\u003e\u003ci class=\"a-icon a-icon-next-rounded\"\u003e\u003cspan class=\"a-icon-alt\"\u003eNext page\u003c\/span\u003e\u003c\/i\u003e\u003c\/a\u003e\n          \u003c\/div\u003e\n         \u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cspan class=\"a-end aok-hidden\"\u003e\u003c\/span\u003e\n       \u003c\/div\u003e\n       \u003cdiv class=\"a-section a-spacing-none aplus-pagination-wrapper\"\u003e\n        \u003cstyle type=\"text\/css\"\u003e\n\n.aplus-mantle.aplus-module .aplus-pagination-dots {\n    margin: 0;\n}\n\n.aplus-mantle.aplus-module .aplus-pagination-dot {\n    display: inline-block;\n    list-style: none;\n}\n\n.aplus-mantle.aplus-module .aplus-carousel-nav {\n    text-align:center;\n}\n\n.aplus-mantle.aplus-module .carousel-slider-circle {\n    display: inline-block;\n    cursor: pointer;\n    height: 15px;\n    width: 15px;\n    border: 1px solid #000;\n    border-radius: 20px;\n    background-color: #fff;\n    margin-left: 5px;\n}\n\n.aplus-mantle.aplus-module .carousel-slider-circle.aplus-carousel-active {\n    background-color: #DE7921;\n}\n\n.aplus-mantle.aplus-module .aplus-pagination-dot--display-none {\n    display: none;\n}\n\n\u003c\/style\u003e\n        \u003cscript\u003e\n\nP.now(\"premium-aplus-13-carousel-5\").execute(\"init-pagination-carousel\", function(init) {\n    if (init) {\n        return;\n    }\n    P.register(\"premium-aplus-13-carousel-5\", function() {\n        return function() {\n            P.when(\"A\", \"jQuery\", \"a-carousel-framework\", \"ready\").execute(\"paginate-carousel\", function (A, $, framework) {\n                const ENTER_KEY_CODE = 13;\n                const ESCAPE_KEY_CODE = 27;\n                const LEFT_ARROW_KEY = 37;\n                const RIGHT_ARROW_KEY = 39;\n                const HOME_KEY = 36;\n                const END_KEY = 35;\n\n                var moduleId = \"5\";\n                var carouselName = \"premium-aplus-13-carousel-5\";\n                var paginationAction = \"aplus-pagination-dot-action-\" + moduleId + \"-\" + carouselName;\n                var paginationGroup = \"#aplus-pagination-group-\" + moduleId + \"-\" + carouselName;\n\n                \/* If the carousel goes to a new page *\/\n                A.on(\"a:carousel:\"+carouselName+\":change:pageNumber\", function (data) {\n                    A.$(paginationGroup+\" .carousel-slider-circle\").removeClass(\"aplus-carousel-active\").attr('aria-selected', 'false').attr('tabindex', -1)\n                                    .eq(data.newValue - 1).addClass(\"aplus-carousel-active\").attr('aria-selected', 'true').attr('tabindex', 0);\n                });\n\n                function syncPaginationDotsWithCarouselPages(numPages) {\n                    const parentElement = document.querySelector(paginationGroup);\n                    if (parentElement \u0026\u0026 parentElement.children) {\n                        const children = parentElement.children;\n                        for (let i = 0; i \u003c children.length; i++) {\n                            if (i \u003e= numPages) {\n                                \/\/ If number of dots \u003e num of pages, we should hide other dots\n                                children[i].classList.add('aplus-pagination-dot--display-none');\n                            } else if (children[i].classList.contains('aplus-pagination-dot--display-none')) {\n                                \/\/ Reset display of dots if it was hidden before\n                                children[i].classList.remove('aplus-pagination-dot--display-none');\n                            }\n                        }\n                    }\n                }\n\n                framework.onInit(carouselName, function (carousel) {\n                    try {\n                        var totalPages = carousel.getAttr('totalPages');\n                        syncPaginationDotsWithCarouselPages(totalPages);\n                        \/* Resize event handler to re-calculate the pagination dots count based on orientation *\/\n                        window.addEventListener('resize', function() {\n                            carousel.resize();\n                            totalPages = carousel.getAttr('totalPages');\n                            syncPaginationDotsWithCarouselPages(totalPages);\n                        });\n\n                        A.declarative(paginationAction, 'click keydown', function(event){\n                            var isClick = event.type === 'click';\n                            var isKeydown = event.type === 'keydown';\n                            var isEnter = isKeydown \u0026\u0026 event.$event.keyCode === ENTER_KEY_CODE;\n                            var isEsc = isKeydown \u0026\u0026 event.$event.keyCode === ESCAPE_KEY_CODE;\n                            var isLeftArrow = isKeydown \u0026\u0026 event.$event.keyCode === LEFT_ARROW_KEY;\n                            var isRightArrow = isKeydown \u0026\u0026 event.$event.keyCode === RIGHT_ARROW_KEY;\n                            var isHome = isKeydown \u0026\u0026 event.$event.keyCode === HOME_KEY;\n                            var isEnd = isKeydown \u0026\u0026 event.$event.keyCode === END_KEY;\n\n                            if (isClick || isEnter) {\n                                var data = event.data;\n                                carousel.gotoPage(data.page);\n                            } else if (isEsc) {\n                                event.$target.blur();\n                            } else if (isLeftArrow || isRightArrow || isHome || isEnd) {\n                                event.$event.preventDefault();\n                                const dots = A.$(paginationGroup + \" .carousel-slider-circle\");\n                                const currentIndex = dots.index(event.$target);\n                                let nextIndex;\n\n                                if (isLeftArrow) {\n                                    nextIndex = currentIndex \u003e 0 ? currentIndex - 1 : dots.length - 1;\n                                } else if (isRightArrow) {\n                                    nextIndex = currentIndex \u003c dots.length - 1 ? currentIndex + 1 : 0;\n                                } else if (isHome) {\n                                    nextIndex = 0;\n                                } else if (isEnd) {\n                                    nextIndex = dots.length - 1;\n                                }\n\n                                dots.eq(nextIndex).focus();\n                                carousel.gotoPage(nextIndex + 1);\n                            }\n                        });\n                    } catch (e) {\n                        P.log('Failed to init ' + carouselName + '. Error: ' + e.message, 'FATAL', 'AplusModuleResources');\n                    }\n                });\n            });\n        }\n    });\n});\n\u003c\/script\u003e\n        \u003cdiv class=\"aplus-mantle aplus-module\"\u003e\n         \u003cdiv class=\"aplus-carousel-nav\"\u003e\n          \u003cul id=\"aplus-pagination-group-5-premium-aplus-13-carousel-5\" class=\"aplus-pagination-dots\" aria-label=\"tablist-section\" role=\"tablist\"\u003e\n           \u003cli class=\"aplus-pagination-dot\"\u003e\u003cspan class=\"a-declarative carousel-slider-circle aplus-display-inline-block aplus-carousel-active\" aria-selected=\"true\" data-action=\"aplus-pagination-dot-action-5-premium-aplus-13-carousel-5\" data-aplus-pagination-dot-action-5-premium-aplus-13-carousel-5='{\"page\": 1}' aria-label=\"slide-1\" aria-controls=\"premium-aplus-13-carousel-5-slide-0\" tabindex=\"0\" role=\"tab\"\u003e\u003c\/span\u003e\u003c\/li\u003e\n           \u003cli class=\"aplus-pagination-dot\"\u003e\u003cspan class=\"a-declarative carousel-slider-circle aplus-display-inline-block \" aria-selected=\"false\" data-action=\"aplus-pagination-dot-action-5-premium-aplus-13-carousel-5\" data-aplus-pagination-dot-action-5-premium-aplus-13-carousel-5='{\"page\": 2}' aria-label=\"slide-2\" aria-controls=\"premium-aplus-13-carousel-5-slide-1\" tabindex=\"-1\" role=\"tab\"\u003e\u003c\/span\u003e\u003c\/li\u003e\n          \u003c\/ul\u003e\n         \u003c\/div\u003e\n        \u003c\/div\u003e\n       \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"a-section a-text-center\"\u003e\u003c\/div\u003e\n     \u003c\/div\u003e\n     \u003cscript type=\"text\/javascript\"\u003e(function(f) {var _np=(window.P._namespace(\"PremiumAplusModule\"));if(_np.guardFatal){_np.guardFatal(f)(_np);}else{f(_np);}}(function(P) {\n    P.when(\"premium-aplus-13-carousel-5\").execute('invoke-premium-13-carousel-desktop', function(init){init();});\n}));\u003c\/script\u003e\n    \u003c\/div\u003e\n   \u003c\/div\u003e\n   \u003cdiv class=\"aplus-module-csa-wrapper\" data-csa-c-type=\"widget\" data-csa-c-slot-id=\"aplus-module-premium-module-2-fullbackground-image-7\" data-csa-c-content-id=\"amzn1.aplus.ed55b64a-3b53-4e79-a070-62f3ddfe08a5:1781491952405.56b9339d-9e39-4c11-a8a7-edf8775c8491.en_US\"\u003e\n    \u003cdiv class=\"celwidget aplus-module premium-module-2-fullbackground-image aplus-premium\" cel_widget_id=\"aplus-premium-module-2-fullbackground-image\"\u003e\n     \u003cdiv class=\"a-section a-spacing-none premium-aplus premium-aplus-module-2\"\u003e\n      \u003cdiv class=\"a-section a-spacing-none premium-background-wrapper\"\u003e\n       \u003cdiv class=\"a-section a-spacing-none background-image\"\u003e\n        \u003cimg alt=\"massage gun\" class=\"a-lazy-loaded\" data-src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/ace7542b-e021-4532-a839-a608d35f35af.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/ace7542b-e021-4532-a839-a608d35f35af.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\"\u003e\n        \u003cnoscript\u003e\n         \u003cimg alt=\"massage gun\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/ace7542b-e021-4532-a839-a608d35f35af.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\"\u003e\n        \u003c\/noscript\u003e\n       \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"a-section a-text-center\"\u003e\u003c\/div\u003e\n     \u003c\/div\u003e\n    \u003c\/div\u003e\n   \u003c\/div\u003e\n  \u003c\/div\u003e\n \u003c\/div\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003cdiv\u003e\u003cdiv id=\"feature-bullets\" class=\"a-section a-spacing-medium a-spacing-top-small\"\u003e\n \u003ch2 class=\"a-size-base-plus a-text-bold\"\u003eAbout this item\u003c\/h2\u003e\n \u003cdiv data-a-expander-collapsed-height=\"300\" class=\"a-expander-collapsed-height a-row a-expander-container a-expander-partial-collapse-container\"\u003e\n  \u003cdiv data-expanded=\"false\" class=\"a-expander-content a-expander-partial-collapse-content\"\u003e\n   \u003cul class=\"a-unordered-list a-vertical a-spacing-mini\"\u003e\n    \u003cli class=\"a-spacing-mini\"\u003e\u003cspan class=\"a-list-item\"\u003e Adjustable Depth \u0026amp; Speed: HEYCHY massager lets you adjust both amplitude and speed. Fixed-amplitude massagers only adjust speed, overworking thin muscles or failing to reach deeper ones, lacking proper intensity for different muscle groups. This adjustable amplitude (6–12mm) lets you choose the right intensity for each muscle—gentle for shoulders and arms, deeper for back and legs, achieving a perfect balance between comfort and strength. Experience a truly personalized and effective massage \u003c\/span\u003e\u003c\/li\u003e\n    \u003cli class=\"a-spacing-mini\"\u003e\u003cspan class=\"a-list-item\"\u003e Smart High-Performance Motor: Equipped with a brushless motor (2500 RPM) using dynamic balance technology and an intelligent chip, it adjusts power within milliseconds for stable, consistent deep tissue massage. Strong output with low vibration ensures a comfortable user experience. Built-in chip enables a 10-minute auto shut-off to avoid overuse on the same area. Durable motor designed for 5+ years of use, with 1-year warranty for reliability \u003c\/span\u003e\u003c\/li\u003e\n    \u003cli class=\"a-spacing-mini\"\u003e\u003cspan class=\"a-list-item\"\u003e Ergonomic Arm Design: 90° adjustable arm and multi-position handle allow easy reach to shoulders, back, and legs. The quad grip provides 6 holding positions, designed to better align with different muscle areas by allowing users to choose the most natural and effortless angle, making it easier to stay in contact with muscle lines for more efficient use. Designed for elderly users and those with low activity or stiff muscles, helping reduce effort when reaching hard-to-access areas \u003c\/span\u003e\u003c\/li\u003e\n    \u003cli class=\"a-spacing-mini\"\u003e\u003cspan class=\"a-list-item\"\u003e Battery Protection \u0026amp; LED: 2200mAh battery with Type-C fast charging provides up to 15 days of use with 15 minutes daily use. No more loose cables or frequent recharging interruptions. This massage features a magnetic charging dock that automatically aligns for effortless charging. The LED display shows real-time battery level and speed settings, so you always know when to recharge. Smart power system helps prevent overheating, overcurrent, and overcharging for safer long-term use \u003c\/span\u003e\u003c\/li\u003e\n    \u003cli class=\"a-spacing-mini\"\u003e\u003cspan class=\"a-list-item\"\u003e Hot \u0026amp; Cold Therapy: Heat improves circulation, relaxes tight muscles, and enhances flexibility before activity; cold relieves inflammation and soreness, speeding post-workout or fatigue recovery. One device, two powerful modes. With 6 interchangeable heads covering neck, shoulders, back, and legs for full-body relief. Ideal for work fatigue, daily relaxation, or activity use—perfect for treating yourself or sharing with family as a health-conscious choice \u003c\/span\u003e\u003c\/li\u003e\n   \u003c\/ul\u003e\n  \u003c\/div\u003e\n \u003c\/div\u003e\n\u003c\/div\u003e\u003c\/div\u003e","brand":"UnveilU","offers":[{"title":"Black","offer_id":53126529319192,"sku":null,"price":156.74,"currency_code":"USD","in_stock":true},{"title":"Green","offer_id":53126529351960,"sku":null,"price":179.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0850\/2447\/3368\/files\/71gXX_SXabL._AC_SL1500.jpg?v=1793664814","url":"https:\/\/unveilushop.com\/es\/products\/massage-gun-deep-tissue-portable-muscle-massager-heat-and-cold-black","provider":"UnveilU","version":"1.0","type":"link"}