{"product_id":"ghost-controls-premium-wireless-keypad-for-automatic-gate-openers-model-axwk","title":"Ghost Controls Premium Wireless Keypad for Automatic Gate Openers - Model AXWK","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\n.aplus-v2 .premium-aplus-module-3 .premium-module-3-heading {\n    padding-bottom: 40px;\n}\n\n.aplus-v2 .premium-aplus-module-3 .premium-aplus-four-column {\n     text-align: center;\n }\n\n.aplus-v2 .premium-aplus-module-3 .premium-aplus-four-column {\n    text-align: inherit;\n}\n\n.aplus-v2 .premium-aplus-module-3 .premium-aplus-column {\n    display: inline-block;\n    vertical-align: top;\n    width: 25%;\n}\n\n.aplus-v2 .premium-aplus-module-3 .premium-aplus-column {\n    padding: 0 20px;\n}\n\n.aplus-v2 .premium-aplus-module-3 .column-heading {\n    padding-top: 20px;\n}\n\n.aplus-v2 .premium-aplus-module-3 .column-description {\n    padding-top: 10px;\n}\n\n\u003c\/style\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 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=\"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     \u003ch1 class=\"aplus-container-3 aplus-h1 a-text-bold\"\u003eWireless Keypad with 40 Access Codes, Partymode, 1Key and VacationMode Features\u003c\/h1\u003e\n     \u003cdiv class=\"a-section a-spacing-none aplus-carousel-container\"\u003e\n      \u003cdiv id=\"premium-aplus-13-carousel-0-id\" data-a-carousel-options='{\"peek_percentage\":0,\"minimum_gutter_width\":0,\"show_partial_next\":false,\"name\":\"premium-aplus-13-carousel-0\"}' 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-0-slide-0\"\u003e\n              \u003cdiv class=\"a-section a-spacing-none aplus-card-image\"\u003e\n               \u003cimg alt=\"AXWK WIreless Keypad, Compatible with all GC systems\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/f7318edc-be8e-41ee-9a84-96814ed15bba.__CR0,0,1464,600_PT0_SX1464_V1___.png\"\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-0-slide-1\"\u003e\n              \u003cdiv class=\"a-section a-spacing-none aplus-card-image\"\u003e\n               \u003cimg alt=\"Features of the AXWK\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/03c79c79-6c4c-43e2-877b-414dc7bd7b69.__CR0,0,1464,600_PT0_SX1464_V1___.png\"\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-0-slide-2\"\u003e\n              \u003cdiv class=\"a-section a-spacing-none aplus-card-image\"\u003e\n               \u003cimg alt=\"Descriptions of Partymode, VacationMode, and 1Key mode\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/32ad594a-e3f1-4017-97a3-787bce560fc9.__CR0,0,1464,600_PT0_SX1464_V1___.png\"\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-0\").execute(\"init-pagination-carousel\", function(init) {\n    if (init) {\n        return;\n    }\n    P.register(\"premium-aplus-13-carousel-0\", 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 = \"0\";\n                var carouselName = \"premium-aplus-13-carousel-0\";\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-0-premium-aplus-13-carousel-0\" 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-0-premium-aplus-13-carousel-0\" data-aplus-pagination-dot-action-0-premium-aplus-13-carousel-0='{\"page\": 1}' aria-label=\"slide-1\" aria-controls=\"premium-aplus-13-carousel-0-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-0-premium-aplus-13-carousel-0\" data-aplus-pagination-dot-action-0-premium-aplus-13-carousel-0='{\"page\": 2}' aria-label=\"slide-2\" aria-controls=\"premium-aplus-13-carousel-0-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-0-premium-aplus-13-carousel-0\" data-aplus-pagination-dot-action-0-premium-aplus-13-carousel-0='{\"page\": 3}' aria-label=\"slide-3\" aria-controls=\"premium-aplus-13-carousel-0-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-0\").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-3-four-column-images aplus-premium\" cel_widget_id=\"aplus-premium-module-3-four-column-images\"\u003e\n    \u003cdiv class=\"a-section a-spacing-none premium-aplus premium-aplus-module-3 aplus-container-1\"\u003e\n     \u003ch1 class=\"a-text-center premium-module-3-heading aplus-h1 a-text-bold\"\u003eFEATURES AND BENEFITS\u003c\/h1\u003e\n     \u003cdiv class=\"a-section a-spacing-none premium-aplus-four-column\"\u003e\n      \u003cdiv class=\"a-section a-spacing-none premium-aplus-column\"\u003e\n       \u003cdiv class=\"a-section a-spacing-none {'column-image'}\"\u003e\n        \u003cimg alt=\"DTP1 SINGLE GATE OPENER, mighty mule, GHOST CONTROLS, solar panel, Decorative AUTOMATIC GATE opener\" class=\"a-lazy-loaded\" data-src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/ef2eabd3-4078-45cc-9c75-2709a07c1045.__CR0,0,600,450_PT0_SX300_V1___.png\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/ef2eabd3-4078-45cc-9c75-2709a07c1045.__CR0,0,600,450_PT0_SX300_V1___.png\"\u003e\n        \u003cnoscript\u003e\n         \u003cimg alt=\"DTP1 SINGLE GATE OPENER, mighty mule, GHOST CONTROLS, solar panel, Decorative AUTOMATIC GATE opener\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/ef2eabd3-4078-45cc-9c75-2709a07c1045.__CR0,0,600,450_PT0_SX300_V1___.png\"\u003e\n        \u003c\/noscript\u003e\n       \u003c\/div\u003e\n       \u003cdiv class=\"a-section a-spacing-none column-heading\"\u003e\n        \u003ch1 class=\"aplus-h3 a-text-bold\"\u003eWireless for Easy Installation\u003c\/h1\u003e\n       \u003c\/div\u003e\n       \u003cdiv class=\"a-section a-spacing-none column-description\"\u003e\n        \u003cp class=\"aplus-p3\"\u003e\u003cspan class=\"a-text-bold\"\u003eOur Wireless Keypad was designed to be installed as a way for guests to enter your property and can also be installed to exit your property too\u003c\/span\u003e.\u003c\/p\u003e\n       \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"a-section a-spacing-none premium-aplus-column\"\u003e\n       \u003cdiv class=\"a-section a-spacing-none {'column-image'}\"\u003e\n        \u003cimg alt=\"GhostControls PartyMode\" class=\"a-lazy-loaded\" data-src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/f4f267c6-9ecc-4b81-81ce-4ff562d07ec8.__CR0,0,300,225_PT0_SX300_V1___.png\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/f4f267c6-9ecc-4b81-81ce-4ff562d07ec8.__CR0,0,300,225_PT0_SX300_V1___.png\"\u003e\n        \u003cnoscript\u003e\n         \u003cimg alt=\"GhostControls PartyMode\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/f4f267c6-9ecc-4b81-81ce-4ff562d07ec8.__CR0,0,300,225_PT0_SX300_V1___.png\"\u003e\n        \u003c\/noscript\u003e\n       \u003c\/div\u003e\n       \u003cdiv class=\"a-section a-spacing-none column-heading\"\u003e\n        \u003ch1 class=\"aplus-h3 a-text-bold\"\u003ePartyMode Feature\u003c\/h1\u003e\n       \u003c\/div\u003e\n       \u003cdiv class=\"a-section a-spacing-none column-description\"\u003e\n        \u003cp class=\"aplus-p3\"\u003eThis feature allows you to override your autoclose setting and keeps your gate in the open position. Great for guests coming over and parties.\u003c\/p\u003e\n       \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"a-section a-spacing-none premium-aplus-column\"\u003e\n       \u003cdiv class=\"a-section a-spacing-none {'column-image'}\"\u003e\n        \u003cimg alt=\"GhostControls Partymode Secure\" class=\"a-lazy-loaded\" data-src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/18e602f3-bcf2-47f9-8a1f-33b75b48b65b.__CR0,0,300,225_PT0_SX300_V1___.png\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/18e602f3-bcf2-47f9-8a1f-33b75b48b65b.__CR0,0,300,225_PT0_SX300_V1___.png\"\u003e\n        \u003cnoscript\u003e\n         \u003cimg alt=\"GhostControls Partymode Secure\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/18e602f3-bcf2-47f9-8a1f-33b75b48b65b.__CR0,0,300,225_PT0_SX300_V1___.png\"\u003e\n        \u003c\/noscript\u003e\n       \u003c\/div\u003e\n       \u003cdiv class=\"a-section a-spacing-none column-heading\"\u003e\n        \u003ch1 class=\"aplus-h3 a-text-bold\"\u003ePartyMode Secure 1 Key Feature\u003c\/h1\u003e\n       \u003c\/div\u003e\n       \u003cdiv class=\"a-section a-spacing-none column-description\"\u003e\n        \u003cp class=\"aplus-p3\"\u003e1 Key allows guests onto your property by pressing any key on the keypad which opens\/closes the gate behind them always keeping your property secure.\u003c\/p\u003e\n       \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"a-section a-spacing-none premium-aplus-column\"\u003e\n       \u003cdiv class=\"a-section a-spacing-none {'column-image'}\"\u003e\n        \u003cimg alt=\"GhostControls VacationMode\" class=\"a-lazy-loaded\" data-src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/17758129-1051-4944-9691-9a24898c9939.__CR0,0,300,225_PT0_SX300_V1___.png\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/17758129-1051-4944-9691-9a24898c9939.__CR0,0,300,225_PT0_SX300_V1___.png\"\u003e\n        \u003cnoscript\u003e\n         \u003cimg alt=\"GhostControls VacationMode\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/17758129-1051-4944-9691-9a24898c9939.__CR0,0,300,225_PT0_SX300_V1___.png\"\u003e\n        \u003c\/noscript\u003e\n       \u003c\/div\u003e\n       \u003cdiv class=\"a-section a-spacing-none column-heading\"\u003e\n        \u003ch1 class=\"aplus-h3 a-text-bold\"\u003eLock Out Entry Feature\u003c\/h1\u003e\n       \u003c\/div\u003e\n       \u003cdiv class=\"a-section a-spacing-none column-description\"\u003e\n        \u003cp class=\"aplus-p3\"\u003eVacationMode locks your gate down even when codes and remotes have been handed out to your gate for peace of mind while not at home.\u003c\/p\u003e\n       \u003c\/div\u003e\n      \u003c\/div\u003e\n     \u003c\/div\u003e\n    \u003c\/div\u003e\n   \u003c\/div\u003e\n   \u003cdiv class=\"celwidget aplus-module premium-module-3-four-column-images aplus-premium\" cel_widget_id=\"aplus-premium-module-3-four-column-images\"\u003e\n    \u003cdiv class=\"a-section a-spacing-none premium-aplus premium-aplus-module-3 aplus-container-1\"\u003e\n     \u003cdiv class=\"a-section a-spacing-none premium-aplus-four-column\"\u003e\n      \u003cdiv class=\"a-section a-spacing-none premium-aplus-column\"\u003e\n       \u003cdiv class=\"a-section a-spacing-none {'column-image'}\"\u003e\n        \u003cimg alt=\"DTP1 SINGLE GATE OPENER, MIGHTY MULE, GHOST CONTROLS, SOLAR PANEL, architectural AUTOMATIC GATE\" class=\"a-lazy-loaded\" data-src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/92a8f490-9f71-4d86-8f62-ec66f3f72b3c.__CR0,0,300,225_PT0_SX300_V1___.png\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/92a8f490-9f71-4d86-8f62-ec66f3f72b3c.__CR0,0,300,225_PT0_SX300_V1___.png\"\u003e\n        \u003cnoscript\u003e\n         \u003cimg alt=\"DTP1 SINGLE GATE OPENER, MIGHTY MULE, GHOST CONTROLS, SOLAR PANEL, architectural AUTOMATIC GATE\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/92a8f490-9f71-4d86-8f62-ec66f3f72b3c.__CR0,0,300,225_PT0_SX300_V1___.png\"\u003e\n        \u003c\/noscript\u003e\n       \u003c\/div\u003e\n       \u003cdiv class=\"a-section a-spacing-none column-heading\"\u003e\n        \u003ch1 class=\"aplus-h3 a-text-bold\"\u003eAccess Codes for Family\/Guests\u003c\/h1\u003e\n       \u003c\/div\u003e\n       \u003cdiv class=\"a-section a-spacing-none column-description\"\u003e\n        \u003cp class=\"aplus-p3\"\u003eThe keypad is an easy way for you to let guests in. You can program your keypad to take up to 40 different codes, including the master code.\u003c\/p\u003e\n       \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"a-section a-spacing-none premium-aplus-column\"\u003e\n       \u003cdiv class=\"a-section a-spacing-none {'column-image'}\"\u003e\n        \u003cimg alt=\"Performance\" class=\"a-lazy-loaded\" data-src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/a02f71b4-c8d0-4265-a49e-af71b20b4fd4.__CR0,0,300,225_PT0_SX300_V1___.png\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/a02f71b4-c8d0-4265-a49e-af71b20b4fd4.__CR0,0,300,225_PT0_SX300_V1___.png\"\u003e\n        \u003cnoscript\u003e\n         \u003cimg alt=\"Performance\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/a02f71b4-c8d0-4265-a49e-af71b20b4fd4.__CR0,0,300,225_PT0_SX300_V1___.png\"\u003e\n        \u003c\/noscript\u003e\n       \u003c\/div\u003e\n       \u003cdiv class=\"a-section a-spacing-none column-heading\"\u003e\n        \u003ch1 class=\"aplus-h3 a-text-bold\"\u003ePerformance\u003c\/h1\u003e\n       \u003c\/div\u003e\n       \u003cdiv class=\"a-section a-spacing-none column-description\"\u003e\n        \u003cp class=\"aplus-p3\"\u003eOur Wireless keypads are designed to be weatherproof for optimal performance for many years to come. They also are backlit for nighttime use.\u003c\/p\u003e\n       \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"a-section a-spacing-none premium-aplus-column\"\u003e\n       \u003cdiv class=\"a-section a-spacing-none {'column-image'}\"\u003e\n        \u003cimg alt=\"GhostCode\" class=\"a-lazy-loaded\" data-src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/6d8e4e14-7925-4d13-bb41-574d2ed064ba.__CR0,0,300,225_PT0_SX300_V1___.png\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/6d8e4e14-7925-4d13-bb41-574d2ed064ba.__CR0,0,300,225_PT0_SX300_V1___.png\"\u003e\n        \u003cnoscript\u003e\n         \u003cimg alt=\"GhostCode\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/6d8e4e14-7925-4d13-bb41-574d2ed064ba.__CR0,0,300,225_PT0_SX300_V1___.png\"\u003e\n        \u003c\/noscript\u003e\n       \u003c\/div\u003e\n       \u003cdiv class=\"a-section a-spacing-none column-heading\"\u003e\n        \u003ch1 class=\"aplus-h3 a-text-bold\"\u003eGhostCode\u003c\/h1\u003e\n       \u003c\/div\u003e\n       \u003cdiv class=\"a-section a-spacing-none column-description\"\u003e\n        \u003cp class=\"aplus-p3\"\u003eGhostCode only allows authorized remote transmitters, keypads, and vehicle sensors to activate your gate system.\u003c\/p\u003e\n       \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"a-section a-spacing-none premium-aplus-column\"\u003e\n       \u003cdiv class=\"a-section a-spacing-none {'column-image'}\"\u003e\n        \u003cimg alt=\"Installation of AXGN Gooseneck\" class=\"a-lazy-loaded\" data-src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/4a43ab8c-9638-46bb-85dc-d0e3ffc9987e.__CR0,0,300,225_PT0_SX300_V1___.png\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/4a43ab8c-9638-46bb-85dc-d0e3ffc9987e.__CR0,0,300,225_PT0_SX300_V1___.png\"\u003e\n        \u003cnoscript\u003e\n         \u003cimg alt=\"Installation of AXGN Gooseneck\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/4a43ab8c-9638-46bb-85dc-d0e3ffc9987e.__CR0,0,300,225_PT0_SX300_V1___.png\"\u003e\n        \u003c\/noscript\u003e\n       \u003c\/div\u003e\n       \u003cdiv class=\"a-section a-spacing-none column-heading\"\u003e\n        \u003ch1 class=\"aplus-h3 a-text-bold\"\u003eSupport\u003c\/h1\u003e\n       \u003c\/div\u003e\n       \u003cdiv class=\"a-section a-spacing-none column-description\"\u003e\n        \u003cp class=\"aplus-p3\"\u003eIf you get stuck programming the keypad, our online installation manuals, videos, and support experts are available to help make it simpler.\u003c\/p\u003e\n       \u003c\/div\u003e\n      \u003c\/div\u003e\n     \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     \u003ch1 class=\"a-text-center aplus-container-3 aplus-h1 a-text-bold\"\u003eBe Welcomed Home Everyday With Ghost Controls\u003c\/h1\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=\"Welcome Guests Home with Ease\" class=\"a-lazy-loaded\" data-src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/b2669916-2856-48ba-a8e9-fb96e1ce9d13.__CR0,0,1464,600_PT0_SX1464_V1___.png\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/b2669916-2856-48ba-a8e9-fb96e1ce9d13.__CR0,0,1464,600_PT0_SX1464_V1___.png\"\u003e\n       \u003cnoscript\u003e\n        \u003cimg alt=\"Welcome Guests Home with Ease\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/b2669916-2856-48ba-a8e9-fb96e1ce9d13.__CR0,0,1464,600_PT0_SX1464_V1___.png\"\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     \u003ch1 class=\"aplus-container-3 aplus-h1 a-text-bold\"\u003eWhy Choose Ghost Controls?\u003c\/h1\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=\"2\"\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=\"Why Go Ghost?\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/8f27845d-c1f6-4095-9e9a-4330d3601de1.__CR0,0,1464,600_PT0_SX1464_V1___.png\"\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-4-slide-1\"\u003e\n              \u003cdiv class=\"a-section a-spacing-none aplus-card-image\"\u003e\n               \u003cimg alt=\"Convenience. Peace of Mind. Ghost Controls.\" src=\"https:\/\/m.media-amazon.com\/images\/S\/aplus-media-library-service-media\/cc11f02d-c743-4f76-86f9-e22e4339b8dc.__CR0,0,1464,600_PT0_SX1464_V1___.png\"\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         \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  \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 \u003cul class=\"a-unordered-list a-vertical a-spacing-mini\"\u003e\n  \u003cli class=\"a-spacing-mini\"\u003e\u003cspan class=\"a-list-item\"\u003e Compatibility: Ghost Controls Wireless Keypads are designed for Ghost Controls gate openers only. This keypad can be added for guests to enter or exit your property \u003c\/span\u003e\u003c\/li\u003e\n  \u003cli class=\"a-spacing-mini\"\u003e\u003cspan class=\"a-list-item\"\u003e Advanced Features: Dedicated keys for PartyMode, 1KEY and VacationMode, as well as temporary or usage based codes \u003c\/span\u003e\u003c\/li\u003e\n  \u003cli class=\"a-spacing-mini\"\u003e\u003cspan class=\"a-list-item\"\u003e Night Visibility: LED back-lit keys are easy to see at night. Requires 2 C batteries, not included \u003c\/span\u003e\u003c\/li\u003e\n  \u003cli class=\"a-spacing-mini\"\u003e\u003cspan class=\"a-list-item\"\u003e Easy Installation: Mounting holes align perfectly with the AXGN Universal Pedestal Mount (sold separately) \u003c\/span\u003e\u003c\/li\u003e\n  \u003cli class=\"a-spacing-mini\"\u003e\u003cspan class=\"a-list-item\"\u003e Weather Resistant Design: The outdoor keypad features weather resistant construction to withstand various weather conditions while providing reliable access control for your property \u003c\/span\u003e\u003c\/li\u003e\n  \u003cli class=\"a-spacing-mini\"\u003e\u003cspan class=\"a-list-item\"\u003e Wireless Operation: Provides wireless connectivity to your Ghost Controls automatic gate opener system, eliminating the need for complex wiring during installation \u003c\/span\u003e\u003c\/li\u003e\n \u003c\/ul\u003e\n \u003cdiv data-csa-c-content-id=\"voyager-product-details-jumplink\" data-csa-c-slot-id=\"voyager-product-details-jumplink\" data-csa-c-type=\"link\" class=\"a-section aok-hidden\"\u003e\n  \u003cspan class=\"caretnext\"\u003e›\u003c\/span\u003e \u003ca id=\"seeMoreDetailsLink\" class=\"a-link-normal\" href=\"#productDetails\"\u003e See more product details \u003c\/a\u003e\n \u003c\/div\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003cdiv\u003e\u003cdiv class=\"a-section a-spacing-small a-spacing-top-small\"\u003e\n \u003ctable class=\"a-normal a-spacing-micro\" role=\"list\"\u003e\n  \u003ctbody\u003e\n   \u003ctr class=\"a-spacing-small po-brand\" role=\"listitem\"\u003e\n    \u003ctd class=\"a-span3\" role=\"presentation\"\u003e\u003cspan class=\"a-size-base a-text-bold\"\u003eBrand\u003c\/span\u003e\u003c\/td\u003e\n    \u003ctd class=\"a-span9\" role=\"presentation\"\u003e\u003cspan class=\"a-size-base po-break-word\"\u003eGhost Controls\u003c\/span\u003e\u003c\/td\u003e\n   \u003c\/tr\u003e\n   \u003ctr class=\"a-spacing-small po-special_feature\" role=\"listitem\"\u003e\n    \u003ctd class=\"a-span3\" role=\"presentation\"\u003e\u003cspan class=\"a-size-base a-text-bold\"\u003eSpecial Feature\u003c\/span\u003e\u003c\/td\u003e\n    \u003ctd class=\"a-span9\" role=\"presentation\"\u003e\u003cspan class=\"a-size-base po-break-word\"\u003ePartyMode Secure and 1Key\u003c\/span\u003e\u003c\/td\u003e\n   \u003c\/tr\u003e\n   \u003ctr class=\"a-spacing-small po-color\" role=\"listitem\"\u003e\n    \u003ctd class=\"a-span3\" role=\"presentation\"\u003e\u003cspan class=\"a-size-base a-text-bold\"\u003eColor\u003c\/span\u003e\u003c\/td\u003e\n    \u003ctd class=\"a-span9\" role=\"presentation\"\u003e\u003cspan class=\"a-size-base po-break-word\"\u003eBlack\u003c\/span\u003e\u003c\/td\u003e\n   \u003c\/tr\u003e\n   \u003ctr class=\"a-spacing-small po-supported_devices_quantity\" role=\"listitem\"\u003e\n    \u003ctd class=\"a-span3\" role=\"presentation\"\u003e\u003cspan class=\"a-size-base a-text-bold\"\u003eMax Number of Supported Devices\u003c\/span\u003e\u003c\/td\u003e\n    \u003ctd class=\"a-span9\" role=\"presentation\"\u003e\u003cspan class=\"a-size-base po-break-word\"\u003e1\u003c\/span\u003e\u003c\/td\u003e\n   \u003c\/tr\u003e\n   \u003ctr class=\"a-spacing-small po-compatible_devices\" role=\"listitem\"\u003e\n    \u003ctd class=\"a-span3\" role=\"presentation\"\u003e\u003cspan class=\"a-size-base a-text-bold\"\u003eCompatible Devices\u003c\/span\u003e\u003c\/td\u003e\n    \u003ctd class=\"a-span9\" role=\"presentation\"\u003e\u003cspan class=\"a-size-base po-break-word\"\u003eGhost Controls Automatic Gate Openers\u003c\/span\u003e\u003c\/td\u003e\n   \u003c\/tr\u003e\n  \u003c\/tbody\u003e\n \u003c\/table\u003e\n\u003c\/div\u003e\u003c\/div\u003e","brand":"GearGridCA","offers":[{"title":"Default Title","offer_id":47689373712562,"sku":null,"price":99.42,"currency_code":"CAD","in_stock":true}],"url":"https:\/\/amabus.store\/products\/ghost-controls-premium-wireless-keypad-for-automatic-gate-openers-model-axwk","provider":"GearGridCA","version":"1.0","type":"link"}