{"product_id":"bob-and-brad-d5-pro-plus-handheld-massage-gun-with-heat-fsa-hsa-eligible-deep-tissue-percussion-massage-gun-powerful-muscle-massager-for-athletes-fitness-workout-daily-recovery-birthday-gift","title":"BOB AND BRAD D5 Pro Plus Handheld Massage Gun with Heat, FSA-HSA Eligible Deep Tissue Percussion Massage Gun, Powerful Muscle Massager for Athletes Fitness Workout \u0026 Daily Recovery, Birthday Gift","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: #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 12: Nav Carousel\n *\/\n\n.aplus-v2 .premium-aplus-module-12 .aplus-carousel-card {\n    position: relative;\n    width: 100%;\n}\n\n.aplus-v2 .premium-aplus-module-12 .aplus-carousel-container {\n    position: relative;\n}\n\n.aplus-v2 .premium-aplus-module-12 .aplus-image-carousel-container {\n    \/* Match the aspect ratio of the desktop image uploaded via the editor (1464px x 600px) *\/\n    padding-top: calc(600 \/ 1464 * 100%); \/* ~40.983% *\/\n    height: 0;\n}\n\n.aplus-v2 .premium-aplus-module-12 .aplus-image-carousel-container \u003e div {\n    position: absolute;\n    width: 100%;\n    height: 100%;\n    top: 0;\n    left: 0;\n}\n\n\/* Override AUI styles. It poorly attempts to measure the slide heights before waiting until images load. *\/\n.aplus-v2 .premium-aplus-module-12 .a-carousel-viewport {\n    height: 100% !important;\n}\n\n.aplus-v2 .premium-aplus-module-12 .aplus-card-image img {\n    width: 100%;\n    height: auto;\n}\n\n.aplus-v2 .premium-aplus-module-12 .aplus-card-details-wrapper {\n    position: absolute;\n    top: 0;\n    width: 50%;\n    height: 100%;\n}\n\n.aplus-v2 .premium-aplus-module-12 .aplus-card-detail {\n    display: table;\n    width: 100%;\n    height: 100%\n}\n\n.aplus-v2 .premium-aplus-module-12 .card-description {\n    text-align: left;\n}\n\nhtml[dir=\"rtl\"] .aplus-v2 .premium-aplus-module-12 .card-description {\n    text-align: right;\n}\n\n.aplus-v2 .premium-aplus-module-12 .aplus-table-cell {\n    display: table-cell;\n    vertical-align: middle;\n}\n\n.aplus-v2 .premium-aplus-module-12 .aplus-text-background {\n    padding: 20px;\n}\n\n.aplus-v2 .premium-aplus-module-12 .aplus-text-background-color {\n    background: rgba(0, 0, 0, 0.5);\n}\n\n.aplus-v2 .premium-aplus-module-12 .aplus-text-background-color,\n.aplus-v2 .premium-aplus-module-12 .aplus-text-background-color h1,\n.aplus-v2 .premium-aplus-module-12 .aplus-text-background-color h5,\n.aplus-v2 .premium-aplus-module-12 .aplus-text-background-color ol,\n.aplus-v2 .premium-aplus-module-12 .aplus-text-background-color ul,\n.aplus-v2 .premium-aplus-module-12 .aplus-text-background-color ol .a-list-item,\n.aplus-v2 .premium-aplus-module-12 .aplus-text-background-color ul .a-list-item {\n    color: #fff;\n}\n\n.aplus-v2 .premium-aplus-module-12 .description {\n    margin-top: 20px;\n}\n\n\/* nav *\/\n.aplus-v2 .premium-aplus-module-12 .aplus-carousel-actions {\n    position: absolute;\n    top: 20px;\n    width: 100%;\n    text-align: center;\n}\n\n.aplus-v2 .premium-aplus-module-12 .aplus-goto-btn {\n    display: inline-block;\n    margin: 7px 10px;\n    cursor: pointer;\n    border-radius: 30px;\n    border: 2px solid #000;\n    line-height: 2.5em;\n    min-width: 200px;\n    background-color: #fff;\n    white-space: nowrap;\n    color: #000;\n}\n\n.aplus-v2 .premium-aplus-module-12 .aplus-carousel-index {\n    display: none;\n}\n\n.aplus-v2 .premium-aplus-module-12 .aplus-goto-btn.aplus-active {\n    border-color: #fff;\n    background-color: #000;\n    color: #fff;\n}\n\n\/**\n * Regimen template specific css\n *\/\n\nhtml[dir=\"rtl\"] .aplus-v2 .premium-aplus-module-12 .aplus-goto-btn.regimen {\n    text-align: right;\n}\n\n.aplus-v2 .premium-aplus-module-12 .aplus-carousel-actions.regimen {\n    text-align: right;\n    top: 50%;\n    width: 250px;\n    right: 75px;\n    -webkit-transform: translateY(-50%);\n    -moz-transform: translateY(-50%);\n    -o-transform: translateY(-50%);\n    transform: translateY(-50%);\n}\n\nhtml[dir=\"rtl\"] .aplus-v2 .premium-aplus-module-12 .aplus-carousel-actions.regimen {\n    text-align: left;\n    top: 50%;\n    left: 75px;\n    right: auto;\n}\n\n.aplus-v2 .premium-aplus-module-12 .aplus-goto-btn.regimen {\n    display: inline-block;\n    margin: 10px 10px;\n    cursor: pointer;\n    border-radius: 30px;\n    border: 2px solid #000;\n    width: 220px;\n    background-color: #fff;\n    padding: 2px 0 2px;\n}\n\n.aplus-v2 .premium-aplus-module-12 .aplus-goto-btn.regimen.aplus-active {\n    border-color: #fff;\n    background-color: #000;\n    color: #fff;\n}\n\n.aplus-v2 .premium-aplus-module-12 .aplus-goto-btn.regimen.aplus-active .aplus-carousel-index {\n    color: inherit;\n}\n\n.aplus-v2 .premium-aplus-module-12 .aplus-goto-btn.regimen.aplus-active .aplus-carousel-label {\n    color: inherit;\n}\n\n.aplus-v2 .premium-aplus-module-12 .aplus-carousel-actions .regimen .aplus-carousel-index {\n    display: inline-block;\n    width: 12px;\n    color: #000;\n}\n\n.aplus-v2 .premium-aplus-module-12 .aplus-carousel-actions .regimen .aplus-carousel-label {\n    color: #000;\n}\n\nhtml[dir=\"rtl\"] .aplus-v2 .premium-aplus-module-12 .aplus-carousel-actions .regimen .aplus-carousel-index {\n    margin-left: 0px;\n    margin-right: 6px;\n}\n\n.aplus-v2 .premium-aplus-module-12 .aplus-headline-top.regimen {\n    position: absolute;\n    top: 0;\n    left: 0;\n    width: 100%;\n    background-color: #000;\n    opacity: 0.5;\n    text-align: center;\n}\n\n.aplus-v2 .premium-aplus-module-12 .aplus-headline-top.regimen .aplus-headline {\n    color: #fff;\n    line-height: 2em;\n}\n\n\/**\n * Navigation template specific css\n *\/\n\n.aplus-v2 .premium-aplus-module-12--top-nav .aplus-carousel-actions {\n    background-color: rgba(0, 0, 0, 0.8);\n    top: 0px;\n}\n\n.aplus-v2 .premium-aplus-module-12--top-nav .aplus-goto-btn {\n    padding: 8px;\n    color: #fff;\n    background-color: transparent;\n    border: none;\n}\n\n.aplus-v2 .premium-aplus-module-12--top-nav .aplus-goto-btn.aplus-active {\n    text-decoration: underline;\n    text-underline-offset: 0.8em;\n    text-decoration-thickness: 3px;\n    background-color: transparent;\n    border: none;\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  \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) {\nP.now('premium-module-12-nav-carousel').execute('init-premium-module-12-nav-carousel', function(init) {\n    if (init) {\n        return;\n    }\n    P.register('premium-module-12-nav-carousel', function(){\n        return function() {\n            P.when('A', 'jQuery', 'a-carousel-framework', 'ready').execute('premium-12-nav-carousel', function (A, $, framework) {\n                function initiateCarousel(module) {\n                    var MODULE_ID = $(module).data('module-id');\n                    \/**\n                    * Carousel button element classname\n                    * @const\n                    *\/\n                    var GOTO_BTN_CLASS_NAME = \"aplus-goto-btn-\" + MODULE_ID;\n                    \/**\n                    * Carousel button element active classname\n                    * @const\n                    *\/\n                    var GOTO_BTN_ACTIVE_CLASS_NAME = \"aplus-active\";\n                    \/**\n                    * AUI name for aui carousel\n                    * @const\n                    *\/\n                    var CAROUSEL_NAME = \"premium-aplus-12-carousel-\" + MODULE_ID;\n                    \/**\n                    * Module class name\n                    * @const\n                    *\/\n                    var MODULE_CLASS_NAME = \".aplus-v2 .premium-aplus-module-12\";\n                    \/**\n                    * Carousel text container class name\n                    * @const\n                    *\/\n                    var TEXT_CONTAINER_CLASS_NAME = MODULE_CLASS_NAME + \" .aplus-carousel-text-container-\" + MODULE_ID;\n                    \/**\n                    * Carousel text hidden class name\n                    * @const\n                    *\/\n                    var TEXT_CONTAINER_HIDDEN = \"aplus-hidden\";\n                    \/**\n                    * Carousel horizontal scroll container class name\n                    * @const\n                    *\/\n                    var HORIZONTAL_SCROLL_CONTAINER_CLASS_NAME = MODULE_CLASS_NAME + \" .aplus-horizontal-scroll-container-\" + MODULE_ID;\n\n                    function showCarouselText(oldIndex, newIndex) {\n                        var oldClass = TEXT_CONTAINER_CLASS_NAME + \"-\" + oldIndex;\n                        var newClass= TEXT_CONTAINER_CLASS_NAME + \"-\" + newIndex;\n                        $(oldClass).addClass(TEXT_CONTAINER_HIDDEN);\n                        $(newClass).removeClass(TEXT_CONTAINER_HIDDEN);\n                    }\n\n                    function scrollToCarouselButton(scrollLeft) {\n                        if ($(HORIZONTAL_SCROLL_CONTAINER_CLASS_NAME).length) {\n                            $(HORIZONTAL_SCROLL_CONTAINER_CLASS_NAME).animate({scrollLeft}, 200);\n                        }\n                    }\n\n                    \/**\n                    * Creates a CarouselButton class for provided carousel instance\n                    * @param {object} carousel - AUI Carousel instance\n                    * @returns {Class} - CarouselButton Class\n                    *\/\n                    function CarouselButtonTemplate(carousel) {\n                        \/**\n                        * Button for controlling the active slide\n                        * @constructor\n                        * @param {number} index - slide index\n                        * @param {DOMElement} [elem] - optional DOM element to use as this objects DOM representation\n                        *\/\n                        function CarouselButton(index, elem) {\n                            var self = this;\n                            this.index = index;\n                            this.carousel = carousel;\n\n                            \/* create the button element *\/\n                            this.elem = this.getElem(elem);\n                            this.$elem = $(this.elem);  \/* store jquery version *\/\n                            this.elem.addEventListener('click', self.handleClick.bind(self));\n                            this.elem.setAttribute('role', 'tab');\n\n                            \/* add this object to the object manager *\/\n                            CarouselButton.objects.byId[index] = this;\n                            CarouselButton.objects.all.push(this);\n                        }\n\n                        \/**\n                        * Describe behavior for click events on this.elem\n                        * @memberOf CarouselButton\n                        *\/\n                        CarouselButton.prototype.handleClick = function(e) {\n                            e.preventDefault();\n                            this.carousel.gotoPage(this.index);\n                        };\n\n                        \/**\n                        * Enter active state\n                        * @memberOf CarouselButton\n                        *\/\n                        CarouselButton.prototype.activate = function() {\n                            this.$elem.addClass(GOTO_BTN_ACTIVE_CLASS_NAME).attr('aria-selected', 'true');\n                        };\n\n                        \/**\n                        * Enter inactive state\n                        * @memberOf CarouselButton\n                        *\/\n                        CarouselButton.prototype.deactivate = function() {\n                            this.$elem.removeClass(GOTO_BTN_ACTIVE_CLASS_NAME).attr('aria-selected', 'false');\n                        };\n\n                        \/**\n                        * Returns an existing or creates a new bound element for this object\n                        * @memberOf CarouselButton\n                        * @param {DOMElement} [elem] - optionally provide an existing element in the DOM to use\n                        * @returns {DOMElement} - this objects DOM representation\n                        *\/\n                        CarouselButton.prototype.getElem = function(elem) {\n                            if (this.elem) return this.elem;\n                            if (elem) return elem;\n\n                            var createdElem = document.createElement('span');\n                            createdElem.className = GOTO_BTN_CLASS_NAME;\n\n                            return createdElem;\n                        };\n\n                        \/** @const Object manager *\/\n                        CarouselButton.objects = {\n                            byId: {},\n                            all: [],\n                        };\n\n                        return CarouselButton;\n                    }\n\n                    framework.onInit(CAROUSEL_NAME, function(carousel) {\n                        \/** @const {Class} *\/\n                        var CarouselButton = CarouselButtonTemplate(carousel);\n\n                        \/* create carousel controls *\/\n                        var $carouselBtns = $(safeClassSelector(GOTO_BTN_CLASS_NAME));\n                        var btns = $carouselBtns.map(function(i, btnElem) {\n                            return new CarouselButton(i + 1, btnElem);\n                        });\n\n                        \/* activate first one *\/\n                        CarouselButton.objects.byId[1].activate();\n\n                        \/* Listen to slide changes *\/\n                        A.on(\"a:carousel:\" + CAROUSEL_NAME + \":change:pageNumber\", function (data) {\n                            var newCarouselButton = CarouselButton.objects.byId[data.newValue];\n                            var marginLeft = parseInt(getComputedStyle(newCarouselButton.elem).getPropertyValue('margin-left'));\n                            var positionLeft = newCarouselButton.elem.offsetLeft - marginLeft;\n\n                            newCarouselButton.activate();\n                            CarouselButton.objects.byId[data.oldValue].deactivate();\n                            scrollToCarouselButton(positionLeft);\n                            showCarouselText(data.oldValue, data.newValue);\n                        });\n                    });\n\n                    \/**\n                    * @returns {string} - css classname prefixed with module selector\n                    *\/\n                    function safeClassSelector(className) {\n                        return '.' + MODULE_CLASS_NAME + ' .' + className;\n                    }\n                }\n\n                $('.aplus-v2 .premium-aplus-module-12 .aplus-carousel-container').each(function (index, module) {\n                    initiateCarousel(module);\n                });\n                framework.createAll();\n                framework.initializeAll();\n            });\n        }\n    })\n});\n}));\u003c\/script\u003e\n  \u003cdiv class=\"aplus-content-wrapper\"\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=\"BOB AND BRAD D5 Pro Plus Massage Gun\" class=\"a-lazy-loaded\" data-src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/8c46ecc5-fb9b-4286-9be6-5bfd58885e44.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/8c46ecc5-fb9b-4286-9be6-5bfd58885e44.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\"\u003e\n       \u003cnoscript\u003e\n        \u003cimg alt=\"BOB AND BRAD D5 Pro Plus Massage Gun\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/8c46ecc5-fb9b-4286-9be6-5bfd58885e44.__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   \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=\"BOB AND BRAD D5 Pro Plus Massage Gun\" class=\"a-lazy-loaded\" data-src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/7cf9f25b-9454-4298-9873-0c37b65784c9.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/7cf9f25b-9454-4298-9873-0c37b65784c9.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\"\u003e\n       \u003cnoscript\u003e\n        \u003cimg alt=\"BOB AND BRAD D5 Pro Plus Massage Gun\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/7cf9f25b-9454-4298-9873-0c37b65784c9.__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   \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=\"BOB AND BRAD D5 Pro Plus Massage Gun\" class=\"a-lazy-loaded\" data-src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/109daf07-f54e-4653-aa2f-8c6078aa0715.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/109daf07-f54e-4653-aa2f-8c6078aa0715.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\"\u003e\n       \u003cnoscript\u003e\n        \u003cimg alt=\"BOB AND BRAD D5 Pro Plus Massage Gun\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/109daf07-f54e-4653-aa2f-8c6078aa0715.__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   \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=\"2\"\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               \u003cimg alt=\"BOB AND BRAD D5 Pro Plus Massage Gun\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/01f504e6-7352-48ef-a4bf-cb5ba350580a.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\"\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-3-slide-1\"\u003e\n              \u003cdiv class=\"a-section a-spacing-none aplus-card-image\"\u003e\n               \u003cimg alt=\"BOB AND BRAD D5 Pro Plus Massage Gun\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/590ce29b-413d-41bf-8571-4fdb9aa84581.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\"\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       \u003cdiv class=\"aplus-mantle aplus-module\"\u003e\n        \u003cdiv class=\"aplus-carousel-nav\"\u003e\n         \u003cul id=\"aplus-pagination-group-3-premium-aplus-13-carousel-3\" 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-3-premium-aplus-13-carousel-3\" data-aplus-pagination-dot-action-3-premium-aplus-13-carousel-3='{\"page\": 1}' aria-label=\"slide-1\" aria-controls=\"premium-aplus-13-carousel-3-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-3-premium-aplus-13-carousel-3\" data-aplus-pagination-dot-action-3-premium-aplus-13-carousel-3='{\"page\": 2}' aria-label=\"slide-2\" aria-controls=\"premium-aplus-13-carousel-3-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-3\").execute('invoke-premium-13-carousel-desktop', function(init){init();});\n}));\u003c\/script\u003e\n   \u003c\/div\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-4-id\" data-a-carousel-options='{\"peek_percentage\":0,\"minimum_gutter_width\":0,\"show_partial_next\":false,\"name\":\"premium-aplus-13-carousel-4\"}' 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=\"5\"\u003e\n             \u003cdiv id=\"premium-aplus-13-carousel-4-slide-0\"\u003e\n              \u003cdiv class=\"a-section a-spacing-none aplus-card-image\"\u003e\n               \u003cimg alt=\"BOB AND BRAD D5 Pro Plus Massage Gun\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/c468f00c-2b4d-4850-ac0f-ef2b156be9a0.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\"\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=\"5\"\u003e\n             \u003cdiv id=\"premium-aplus-13-carousel-4-slide-1\"\u003e\n              \u003cdiv class=\"a-section a-spacing-none aplus-card-image\"\u003e\n               \u003cimg alt=\"BOB AND BRAD D5 Pro Plus Massage Gun\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/6d6f20e9-f568-40f6-a8f6-2060a7fc2619.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\"\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=\"5\"\u003e\n             \u003cdiv id=\"premium-aplus-13-carousel-4-slide-2\"\u003e\n              \u003cdiv class=\"a-section a-spacing-none aplus-card-image\"\u003e\n               \u003cimg alt=\"BOB AND BRAD D5 Pro Plus Massage Gun\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/a0b9f316-2659-4334-a3ca-05c34e1a48b6.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\"\u003e\n              \u003c\/div\u003e\n              \u003cdiv class=\"a-section a-spacing-none aplus-card-description-wrapper\"\u003e\n               \u003cdiv class=\"a-section a-spacing-none aplus-card-description aplus-container-1-2\"\u003e\n                \u003cdiv class=\"a-section a-spacing-none aplus-card-table-cell\"\u003e\n                 \u003cdiv class=\"a-section a-spacing-none aplus-text-background aplus-container-1\"\u003e\n                  \u003cdiv class=\"a-section a-spacing-none aplus-card-title\"\u003e\n                   \u003ch1 class=\"aplus-h2 a-text-bold\"\u003eTrusted by Therapists\u003c\/h1\u003e\n                  \u003c\/div\u003e\n                  \u003cdiv class=\"a-section a-spacing-none aplus-card-body\"\u003e\n                   \u003cp class=\"aplus-p3\"\u003e\u003cspan class=\"a-text-bold\"\u003e13mm amplitude penetrates deep tissue to release trigger points, accelerate rehab, and relieve chronic pain.\u003c\/span\u003e\u003c\/p\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\n            \u003c\/li\u003e\n            \u003cli aria-roledescription=\"slide\" class=\"a-carousel-card aplus-carousel-element\" aria-setsize=\"5\"\u003e\n             \u003cdiv id=\"premium-aplus-13-carousel-4-slide-3\"\u003e\n              \u003cdiv class=\"a-section a-spacing-none aplus-card-image\"\u003e\n               \u003cimg alt=\"BOB AND BRAD D5 Pro Plus Massage Gun\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/79b03612-79fe-4e5a-9961-19369e37d398.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\"\u003e\n              \u003c\/div\u003e\n              \u003cdiv class=\"a-section a-spacing-none aplus-card-description-wrapper\"\u003e\n               \u003cdiv class=\"a-section a-spacing-none aplus-card-description aplus-container-1-2\"\u003e\n                \u003cdiv class=\"a-section a-spacing-none aplus-card-table-cell\"\u003e\n                 \u003cdiv class=\"a-section a-spacing-none aplus-text-background aplus-container-1\"\u003e\n                  \u003cdiv class=\"a-section a-spacing-none aplus-card-title\"\u003e\n                   \u003ch1 class=\"aplus-h2 a-text-bold\"\u003ePremium Self-Care Ritual\u003c\/h1\u003e\n                  \u003c\/div\u003e\n                  \u003cdiv class=\"a-section a-spacing-none aplus-card-body\"\u003e\n                   \u003cp class=\"aplus-p3\"\u003e\u003cspan class=\"a-text-bold\"\u003eThe art of unwinding, perfected. Ergonomic multi-grip handle guides pressure for melt-away relief.\u003c\/span\u003e\u003c\/p\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\n            \u003c\/li\u003e\n            \u003cli aria-roledescription=\"slide\" class=\"a-carousel-card aplus-carousel-element\" aria-setsize=\"5\"\u003e\n             \u003cdiv id=\"premium-aplus-13-carousel-4-slide-4\"\u003e\n              \u003cdiv class=\"a-section a-spacing-none aplus-card-image\"\u003e\n               \u003cimg alt=\"BOB AND BRAD D5 Pro Plus Massage Gun\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/d7184af6-0eb0-4791-a89b-a2c7d485d94e.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\"\u003e\n              \u003c\/div\u003e\n              \u003cdiv class=\"a-section a-spacing-none aplus-card-description-wrapper\"\u003e\n               \u003cdiv class=\"a-section a-spacing-none aplus-card-description aplus-container-1-2\"\u003e\n                \u003cdiv class=\"a-section a-spacing-none aplus-card-table-cell\"\u003e\n                 \u003cdiv class=\"a-section a-spacing-none aplus-text-background aplus-container-1\"\u003e\n                  \u003cdiv class=\"a-section a-spacing-none aplus-card-title\"\u003e\n                   \u003ch1 class=\"aplus-h2 a-text-bold\"\u003eEffortless Daily Relief\u003c\/h1\u003e\n                  \u003c\/div\u003e\n                  \u003cdiv class=\"a-section a-spacing-none aplus-card-body\"\u003e\n                   \u003cp class=\"aplus-p3\"\u003e\u003cspan class=\"a-text-bold\"\u003eDissolves stress where it lives—tight shoulders, restless legs, daily tension. Feel light again.\u003c\/span\u003e\u003c\/p\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\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-4\").execute(\"init-pagination-carousel\", function(init) {\n    if (init) {\n        return;\n    }\n    P.register(\"premium-aplus-13-carousel-4\", 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 = \"4\";\n                var carouselName = \"premium-aplus-13-carousel-4\";\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-4-premium-aplus-13-carousel-4\" 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-4-premium-aplus-13-carousel-4\" data-aplus-pagination-dot-action-4-premium-aplus-13-carousel-4='{\"page\": 1}' aria-label=\"slide-1\" aria-controls=\"premium-aplus-13-carousel-4-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-4-premium-aplus-13-carousel-4\" data-aplus-pagination-dot-action-4-premium-aplus-13-carousel-4='{\"page\": 2}' aria-label=\"slide-2\" aria-controls=\"premium-aplus-13-carousel-4-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-4-premium-aplus-13-carousel-4\" data-aplus-pagination-dot-action-4-premium-aplus-13-carousel-4='{\"page\": 3}' aria-label=\"slide-3\" aria-controls=\"premium-aplus-13-carousel-4-slide-2\" 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-4-premium-aplus-13-carousel-4\" data-aplus-pagination-dot-action-4-premium-aplus-13-carousel-4='{\"page\": 4}' aria-label=\"slide-4\" aria-controls=\"premium-aplus-13-carousel-4-slide-3\" 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-4-premium-aplus-13-carousel-4\" data-aplus-pagination-dot-action-4-premium-aplus-13-carousel-4='{\"page\": 5}' aria-label=\"slide-5\" aria-controls=\"premium-aplus-13-carousel-4-slide-4\" 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-4\").execute('invoke-premium-13-carousel-desktop', function(init){init();});\n}));\u003c\/script\u003e\n   \u003c\/div\u003e\n   \u003cdiv class=\"celwidget aplus-module premium-module-12-nav-carousel aplus-premium\" cel_widget_id=\"aplus-premium-module-12-nav-carousel\"\u003e\n    \u003cdiv class=\"a-section a-spacing-none premium-aplus premium-aplus-module-12 premium-aplus-module-12--top-nav\"\u003e\n     \u003cdiv data-module-id=\"5\" class=\"a-section a-spacing-none aplus-carousel-container\"\u003e\n      \u003cdiv id=\"premium-aplus-12-carousel-5-id\" data-a-carousel-options='{\"peek_percentage\":0,\"minimum_gutter_width\":0,\"show_partial_next\":false,\"name\":\"premium-aplus-12-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 aplus-image-carousel-container\"\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-card\" aria-setsize=\"3\"\u003e\n             \u003cdiv class=\"a-section a-spacing-none aplus-card-image\"\u003e\n              \u003cimg alt=\"BOB AND BRAD D5 Pro Plus Massage Gun\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/ac8be4e6-3a01-471e-bcbe-d0cd03b56138.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\"\u003e\n             \u003c\/div\u003e\n            \u003c\/li\u003e\n            \u003cli aria-roledescription=\"slide\" class=\"a-carousel-card aplus-carousel-card\" aria-setsize=\"3\"\u003e\n             \u003cdiv class=\"a-section a-spacing-none aplus-card-image\"\u003e\n              \u003cimg alt=\"massage gun\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/2ec061cf-5064-469b-93cf-6afa9adad944.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\"\u003e\n             \u003c\/div\u003e\n            \u003c\/li\u003e\n            \u003cli aria-roledescription=\"slide\" class=\"a-carousel-card aplus-carousel-card\" aria-setsize=\"3\"\u003e\n             \u003cdiv class=\"a-section a-spacing-none aplus-card-image\"\u003e\n              \u003cimg alt=\"BOB AND BRAD D5 Pro Plus Massage Gun\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/f3f2a285-ff54-4127-a529-7f0d68b96711.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\"\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 id=\"aplus-carousel-actions-5\" aria-label=\"tablist section\" class=\"a-section aplus-carousel-actions\" role=\"tablist\"\u003e\n       \u003cbutton class=\"aplus-goto-btn aplus-goto-btn-5 aplus-active\" role=\"tab\" tabindex=\"0\" aria-selected=\"true\"\u003e\u003cspan class=\"aplus-carousel-index\"\u003e1\u003c\/span\u003e \u003cspan class=\"aplus-accent2 aplus-carousel-label\"\u003ePro Massage Gun\u003c\/span\u003e\u003c\/button\u003e\n       \u003cbutton class=\"aplus-goto-btn aplus-goto-btn-5 \" role=\"tab\" tabindex=\"0\" aria-selected=\"false\"\u003e\u003cspan class=\"aplus-carousel-index\"\u003e2\u003c\/span\u003e \u003cspan class=\"aplus-accent2 aplus-carousel-label\"\u003ePower That Lasts\u003c\/span\u003e\u003c\/button\u003e\n       \u003cbutton class=\"aplus-goto-btn aplus-goto-btn-5 \" role=\"tab\" tabindex=\"0\" aria-selected=\"false\"\u003e\u003cspan class=\"aplus-carousel-index\"\u003e3\u003c\/span\u003e \u003cspan class=\"aplus-accent2 aplus-carousel-label\"\u003eErgonomic Grips\u003c\/span\u003e\u003c\/button\u003e\n      \u003c\/div\u003e\n     \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-module-12-nav-carousel').execute('invoke-premium-12-nav-carousel-desktop-top', function(init){\n        init();\n    });\n}));\u003c\/script\u003e\n   \u003c\/div\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-6-id\" data-a-carousel-options='{\"peek_percentage\":0,\"minimum_gutter_width\":0,\"show_partial_next\":false,\"name\":\"premium-aplus-13-carousel-6\"}' 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-6-slide-0\"\u003e\n              \u003cdiv class=\"a-section a-spacing-none aplus-card-image\"\u003e\n               \u003cimg alt=\"BOB AND BRAD D5 Pro Plus Massage Gun\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/bcdf5050-737c-4543-8032-f672afdf0109.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\"\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-6-slide-1\"\u003e\n              \u003cdiv class=\"a-section a-spacing-none aplus-card-image\"\u003e\n               \u003cimg alt=\"BOB AND BRAD D5 Pro Plus Massage Gun\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/27a55247-d8e1-4c2a-a725-cc366feb4356.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\"\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-6-slide-2\"\u003e\n              \u003cdiv class=\"a-section a-spacing-none aplus-card-image\"\u003e\n               \u003cimg alt=\"bob and brad massage gun\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/7e650668-0305-4a4f-8713-69027f9ff3b8.__CR0,0,1464,600_PT0_SX1464_V1___.jpg\"\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-6\").execute(\"init-pagination-carousel\", function(init) {\n    if (init) {\n        return;\n    }\n    P.register(\"premium-aplus-13-carousel-6\", 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 = \"6\";\n                var carouselName = \"premium-aplus-13-carousel-6\";\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-6-premium-aplus-13-carousel-6\" 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-6-premium-aplus-13-carousel-6\" data-aplus-pagination-dot-action-6-premium-aplus-13-carousel-6='{\"page\": 1}' aria-label=\"slide-1\" aria-controls=\"premium-aplus-13-carousel-6-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-6-premium-aplus-13-carousel-6\" data-aplus-pagination-dot-action-6-premium-aplus-13-carousel-6='{\"page\": 2}' aria-label=\"slide-2\" aria-controls=\"premium-aplus-13-carousel-6-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-6-premium-aplus-13-carousel-6\" data-aplus-pagination-dot-action-6-premium-aplus-13-carousel-6='{\"page\": 3}' aria-label=\"slide-3\" aria-controls=\"premium-aplus-13-carousel-6-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-6\").execute('invoke-premium-13-carousel-desktop', function(init){init();});\n}));\u003c\/script\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 TRUSTED BY PHYSICAL THERAPISTS – Developed by Bob and Brad, world-renowned physical therapists with millions of followers and decades of experience, the D5 Pro Plus combines deep tissue percussion with advanced heat therapy. The heated head delivers penetrating warmth to melt stiff muscles and release knots. Ideal for athletes, office workers, and active adults to relieve soreness, improve flexibility, and speed daily recovery. \u003c\/span\u003e\u003c\/li\u003e\n    \u003cli class=\"a-spacing-mini\"\u003e\u003cspan class=\"a-list-item\"\u003e PERFECT BALANCE OF DEEP RELIEF \u0026amp; COMFORT – Carefully tuned percussion relieves muscle tension and supports deep recovery without excessive pain or discomfort. Enjoy a smoother massage experience at home, the gym, or the office. Powered by a quiet brushless motor, D5 Pro Plus delivers reliable, long-lasting performance with an extended lifespan of over 20,000 hours for worry-free daily use. \u003c\/span\u003e\u003c\/li\u003e\n    \u003cli class=\"a-spacing-mini\"\u003e\u003cspan class=\"a-list-item\"\u003e POWERFUL RELIEF WITH 13MM AMPLITUDE – Delivering up to 55 lbs of stall force with a deep 13mm amplitude, D5 Pro Plus helps relieve deep muscle tension and soreness. It delivers professional-level deep tissue massage while remaining comfortable, helping you recover faster and feel your best every day. \u003c\/span\u003e\u003c\/li\u003e\n    \u003cli class=\"a-spacing-mini\"\u003e\u003cspan class=\"a-list-item\"\u003e CUSTOMIZED HEAT THERAPY \u0026amp; RECOVERY MODES – Customize every massage with 4 modes, 2 heat levels, and 5 speeds ranging from gentle relaxation to powerful deep tissue percussion. The intuitive OLED display makes it easy to select the perfect settings for daily recovery, post-workout care, stress relief, and overall wellness. \u003c\/span\u003e\u003c\/li\u003e\n    \u003cli class=\"a-spacing-mini\"\u003e\u003cspan class=\"a-list-item\"\u003e ERGONOMIC GRIP \u0026amp; 6 EXPERT ATTACHMENTS – Ergonomic anti-slip handle improves comfort and control, reducing wrist and hand strain during deep tissue massage gun use. Designed for easy targeting of back, shoulders, arms, and legs. Includes 6 massage gun attachments for full-body muscle recovery and percussion therapy needs. \u003c\/span\u003e\u003c\/li\u003e\n    \u003cli class=\"a-spacing-mini\"\u003e\u003cspan class=\"a-list-item\"\u003e FSA-HSA ELIGIBLE \u0026amp; 2-YEAR WARRANTY – The D5 series massage gun is fully FSA \u0026amp; HSA eligible for tax-free health spending. Backed by a 2-year warranty, it delivers peace of mind and reliable performance for long-term muscle recovery. Includes travel case and elegant packaging, ideal for gifting or daily health use. A thoughtful gift for anyone who values wellness and relaxation. \u003c\/span\u003e\u003c\/li\u003e\n   \u003c\/ul\u003e\n   \u003c!-- Loading EDP related metadata --\u003e\n  \u003c\/div\u003e\n \u003c\/div\u003e\n\u003c\/div\u003e\u003c\/div\u003e","brand":"Variedades SV","offers":[{"title":"Black","offer_id":48247601168596,"sku":null,"price":169.99,"currency_code":"USD","in_stock":true},{"title":"Pure Black","offer_id":48247601201364,"sku":null,"price":189.99,"currency_code":"USD","in_stock":true},{"title":"Matte Black","offer_id":48247601234132,"sku":null,"price":225.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0841\/4360\/3924\/files\/719xmDUjMrL.jpg?v=1783742872","url":"https:\/\/variedades-sv-store.myshopify.com\/products\/bob-and-brad-d5-pro-plus-handheld-massage-gun-with-heat-fsa-hsa-eligible-deep-tissue-percussion-massage-gun-powerful-muscle-massager-for-athletes-fitness-workout-daily-recovery-birthday-gift","provider":"Variedades SV","version":"1.0","type":"link"}