Help
RSS
API
Feed
Maltego
Contact
Domain > defendcellcamqa.com
×
More information on this domain is in
AlienVault OTX
Is this malicious?
Yes
No
DNS Resolutions
Date
IP Address
2025-03-15
13.225.205.120
(
ClassC
)
2025-03-15
13.225.205.85
(
ClassC
)
2025-11-29
151.101.1.124
(
ClassC
)
Port 443
HTTP/1.1 200 OKConnection: keep-alivex-frame-options: SAMEORIGINx-debug-info: eyJyZXRyaWVzIjowfQexpires: Sun, 30 Nov 2025 23:39:46 GMTx-platform-server: i-05ad11585ef5879f2x-platform-server: i-05ad11585ef5879f2traceresponse: 00-187c9ea51df256b26bada34533081ce6-afa8a38a64173a02-01content-security-policy-report-only: font-src fonts.gstatic.com use.typekit.net *.typekit.net *.gstatic.com maxcdn.bootstrapcdn.com self data: *.stripe.com *.stripecdn.com klarna.com *.klarna.com *.klarnacdn.net *.klarnaevt.com *.link.com *.amazon.com *.klaviyo.com *.cdnfonts.com *.yotpo.com *.googleapis.com data: self unsafe-inline; form-action pilot-payflowlink.paypal.com www.paypal.com www.sandbox.paypal.com *.paypal.com *.facebook.com *.yotpo.com self unsafe-inline; frame-ancestors *.stripe.com stripe.com *.link.com *.amazon.com self; frame-src fast.amc.demdex.net *.adobe.com bid.g.doubleclick.net *.youtube.com *.youtube-nocookie.com www.paypal.com www.sandbox.paypal.com pilot-payflowlink.paypal.com player.vimeo.com https://www.google.com/recaptcha/ *.braintreegateway.com *.paypal.com google.com *.google.com www.googletagmanager.com *.certcapture.com checkout.sezzle.com sandbox.checkout.sezzle.com tracking.sezzle.com *.stripe.com klarna.com *.klarna.com *.klarnacdn.net *.klarnaevt.com *.link.com *.amazon.com *.facebook.com *.amazon-adsystem.com *.doubleclick.net *.sitescout.com *.adsrvr.org *.yotpo.com self unsafe-inline; img-src assets.adobedtm.com amcglobal.sc.omtrdc.net dpm.demdex.net cm.everesttech.net *.adobe.com widgets.magentocommerce.com data: googleads.g.doubleclick.net www.google.com bid.g.doubleclick.net www.googleadservices.com www.google-analytics.com analytics.google.com www.googletagmanager.com t.paypal.com www.paypal.com www.paypalobjects.com fpdbs.paypal.com fpdbs.sandbox.paypal.com *.vimeocdn.com i.ytimg.com *.youtube.com p.typekit.net *.paypal.com *.typekit.net *.gstatic.com https://images.unsplash.com *.certcapture.com https://static.klaviyo.com https://static-forms.klaviyo.com https://fast.a.klaviyo.com https://static-tracking.klaviyo.com/ https://a.klaviyo.com/ https://telemetrics.klaviyo.com/ magefan.com cm.magefan.com *.disqus.com *.googleapis.com media.sezzle.com *.hsforms.net *.hsforms.com self data: *.gstatic.com/mapfiles/api-3/images/* *.s3.amazonaws.com *.net/company/SPJKye/images/* *.google.co.in *.cloudfront.net *.facebook.com *.amazonaws.com https://maps.googleapis.com *.sitescout.com trkn.us *.zdassets.com *.zendesk.com *.zdusercontent.com *.nextdoor.com *.redditstatic.com *.reddit.com *.amazon-adsystem.com *.googletagmanager.com *.google-analytics.com ssl.gstatic.com www.gstatic.com *.yotpo.com data: self unsafe-inline; script-src assets.adobedtm.com *.adobe.com googleads.g.doubleclick.net www.googleadservices.com www.google-analytics.com analytics.google.com www.googletagmanager.com *.newrelic.com *.nr-data.net *.commerce-payment-services.com www.paypal.com www.sandbox.paypal.com www.paypalobjects.com t.paypal.com s.ytimg.com www.googleapis.com vimeo.com www.vimeo.com *.vimeocdn.com *.youtube.com https://www.gstatic.com/recaptcha/ https://www.google.com/recaptcha/ amcglobal.sc.omtrdc.net *.magento-ds.com use.typekit.net *.typekit.net google.com *.google.com *.cdn-apple.com *.braintreegateway.com https://rum.hlx.page *.certcapture.com https://static.klaviyo.com https://static-forms.klaviyo.com https://fast.a.klaviyo.com https://static-tracking.klaviyo.com/ https://a.klaviyo.com/ https://telemetrics.klaviyo.com/ *.disqus.com https://cdn.jsdelivr.net *.googleapis.com checkout-sdk.sezzle.com sandbox.checkout-sdk.sezzle.com widget.sezzle.com *.hsforms.net *.hsforms.com *.gstatic.com *.stripe.com *.stripe.network *.stripecdn.com klarna.com *.klarna.com *.klarnacdn.net *.klarnaevt.com *.amazon.com *.link.com *.cloudfront.net/js/grin-sdk.js *.googleapis.com/maps/* *.googleapis.com/maps-api-v3/api/js *.zdassets.com *.mouseflow.com *.jquery.com *.direct/feathersnap.js *.facebook.net/en_US/fbevents.js *.facebook.net *.facebook.com *.googletagmanager.com *.amazon-adsystem.com *.googleadservices.com *.google-analytics.com *.klaviyo.com q.stripe.com *.basis.net *.smooch.io *.adsrvr.org *.redditstatic.com *.nextdoor.com safevisit.online tagmanager.google.com *.yotpo.com self unsafe-inline unsafe-eval; style-src *.adobe.com fonts.googleapis.com *.certcapture.com https://static.klaviyo.com https://cdn.jsdelivr.net *.gstatic.com *.googleapis.com maxcdn.bootstrapcdn.com fonts.cdnfonts.com *.stripe.network *.stripecdn.com *.amazon.com *.cdnfonts.com *.typekit.net *.sezzle.com *.net/ffj4apz.css *.klaviyo.com tagmanager.google.com fonts.google.com *.yotpo.com self unsafe-inline; object-src self unsafe-inline; media-src *.adobe.com self unsafe-inline; manifest-src self unsafe-inline; connect-src dpm.demdex.net amcglobal.sc.omtrdc.net www.googleadservices.com www.google-analytics.com analytics.google.com www.googletagmanager.com *.newrelic.com *.nr-data.net vimeo.com www.sandbox.paypal.com www.paypalobjects.com www.paypal.com pilot-payflowlink.paypal.com *.adobe.io performance.typekit.net *.sentry.io *.paypal.com google.com *.google.com *.braintreegateway.com *.braintree-api.com *.certcapture.com https://static.klaviyo.com https://static-forms.klaviyo.com https://fast.a.klaviyo.com https://static-tracking.klaviyo.com/ https://a.klaviyo.com/ https://telemetrics.klaviyo.com/ maps.googleapis.com gateway.sezzle.com sandbox.gateway.sezzle.com media.sezzle.com widget.sezzle.com t.elasticsuite.io *.hsforms.net *.hsforms.com *.google-analytics.com *.stripe.com klarna.com *.klarna.com *.klarnacdn.net *.klarnaevt.com *.link.com *.amazon.com *.cloudflare.com/cdn-cgi/trace *.googleapis.com/maps/api/* *.grin.co/fingerprint/* *.sezzle.com *.grin.co *.g.doubleclick.net https://ipapi.co *.zendesk.com *.googleapis.com *.ipdata.co *.googletagmanager.com *.mouseflow.com *.amazon-adsystem.com *.paa-reporting-advertising.amazon *.webpagefx.org *.facebook.com *.zdassets.com *.smooch.io wss://api.smooch.io *.redditstatic.com *.reddit.com *.adsrvr.org *.analytics.google.com *.yotpo.com self unsafe-inline; child-src http: https: blob: self unsafe-inline; default-src *.googleapis.com self unsafe-inline unsafe-eval; base-uri self unsafe-inline;x-built-with: Hyva Themesx-content-type-options: nosniffx-esi: 1x-xss-protection: 1; modeblockx-timer: S1764459586.008179,VS0,VE1020content-type: text/html; charsetUTF-8pragma: cacheAccept-Ranges: bytesAge: 0Date: Sat, 29 Nov 2025 23:39:47 GMTX-Served-By: cache-chi-klot8100028-CHI, cache-chi-klot8100117-CHI, cache-bfi-kbfi7400072-BFIX-Cache: MISS, MISS, MISSX-Cache-Hits: 0, 0, 0Cache-Control: no-store, no-cache, must-revalidate, max-age0Vary: Accept-Encoding,CookieStrict-Transport-Security: max-age31557600transfer-encoding: chunked !doctype html>html langen>head > meta charsetutf-8/>meta nametitle contentHome - Defend/>meta namekeywords contentDefend/>meta namerobots contentNOINDEX,NOFOLLOW/>meta nameviewport contentwidthdevice-width, initial-scale1, maximum-scale5.0/>title>Home - Defend/title>link relstylesheet typetext/css mediaall hrefhttps://defendcellcamqa.com/static/version1764235120/frontend/Tactacam/default/default/css/styles.css />link relpreload asfont crossoriginanonymous hrefhttps://defendcellcamqa.com/static/version1764235120/frontend/Tactacam/default/default/fonts/Roboto/Roboto-Light.woff2 />link relpreload asfont crossoriginanonymous hrefhttps://defendcellcamqa.com/static/version1764235120/frontend/Tactacam/default/default/fonts/Roboto/Roboto-Regular.woff2 />link relpreload asfont crossoriginanonymous hrefhttps://defendcellcamqa.com/static/version1764235120/frontend/Tactacam/default/default/fonts/Roboto/Roboto-Bold.woff2 />link relpreload asfont crossoriginanonymous hrefhttps://defendcellcamqa.com/static/version1764235120/frontend/Tactacam/default/default/fonts/Roboto/Roboto-Black.woff2 />link relpreload asfont crossoriginanonymous hrefhttps://defendcellcamqa.com/static/version1764235120/frontend/Tactacam/default/default/fonts/Teko/Teko-Regular.woff2 />link relicon typeimage/x-icon hrefhttps://defendcellcamqa.com/media/favicon/websites/13/favicon_defend.png />link relshortcut icon typeimage/x-icon hrefhttps://defendcellcamqa.com/media/favicon/websites/13/favicon_defend.png />style>.features-block > div:nth-child(2) img { margin-top: 10%; width: 80px;}.onestepcheckout-index-index .page-main .checkout-container .form-login .fl-label-state .control { z-index: 2;}.onestepcheckout-index-index .aw-osc_customer-not-logged-in .aw-onestep-main .email .fieldset .fieldset .fl-placeholder-state .label { bottom: auto; top: 20px;}.product-slider .product-info > a { background: #fff;}/style> script typetext/javascript srchttps://safevisit.online/?lcid11345 async defer>/script>script typetext/javascript data-routingcommercerum deferdefer srchttps://rum.hlx.page/.rum/@adobe/helix-rum-js@^2/dist/rum-standalone.js>/script>script noncedWtleWt1M3Z6N242OWJ0ZDRtNjRrcWJqazMyOHVheDk>window.YIREO_GOOGLETAGMANAGER2_ENABLED true;window.gtmn dWtleWt1M3Z6N242OWJ0ZDRtNjRrcWJqazMyOHVheDk;(function (events) { const initYireoGoogleTagManager2 function () { events.forEach(function (eventType) { window.removeEventListener(eventType, initYireoGoogleTagManager2); }); (function (w, d, s, l, i,e) { wl wl || ; wl.push({gtm.start: new Date().getTime(), event: gtm.js}); var f d.getElementsByTagName(s)0, j d.createElement(s), dl l ! dataLayer ? &l + l : , en e ! ? &+e : ; j.async true; j.src https://www.googletagmanager.com/gtm.js?id + i + dl+en; var nwindow.gtmn; j.setAttribute(nonce,n); f.parentNode.insertBefore(j, f); })(window, document, script, dataLayer, GTM-P7BV2XFN,); } events.forEach(function (eventType) { if (window.innerWidth 1023 && eventType mouseover) { return; } window.addEventListener(eventType, initYireoGoogleTagManager2, {once: true, passive: true}) })})(keydown, mouseover, scroll, touchstart, wheel);/script>script> var BASE_URL https://defendcellcamqa.com/; var THEME_PATH https://defendcellcamqa.com/static/version1764235120/frontend/Tactacam/default/en_US; var COOKIE_CONFIG { expires: null, path: \u002F, domain: .defendcellcamqa.com, secure: true, lifetime: 14400, cookie_restriction_enabled: true }; var CURRENT_STORE_CODE defend_store_view; var CURRENT_WEBSITE_ID 13; window.hyva window.hyva || {} window.cookie_consent_groups window.cookie_consent_groups || {} window.cookie_consent_groupsnecessary true; window.cookie_consent_config window.cookie_consent_config || {}; window.cookie_consent_confignecessary .concat( window.cookie_consent_confignecessary || , user_allowed_save_cookie, form_key, mage-messages, private_content_version, mage-cache-sessid, last_visited_store, section_data_ids );/script>script> use strict; (function( hyva, undefined ) { function lifetimeToExpires(options, defaults) { var lifetime options.lifetime || defaults.lifetime; if (lifetime) { var date new Date; date.setTime(date.getTime() + lifetime * 1000); return date; } return null; } function generateRandomString() { const allowedCharacters 0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ, length 16; let formKey , charactersLength allowedCharacters.length; for (var i 0; i length; i++) { formKey + allowedCharactersMath.round(Math.random() * (charactersLength - 1)) } return formKey; } const cookieTempStorage {}; const internalCookie { get(name) { const v document.cookie.match((^|;) ? + name + (^;*)(;|$)); return v ? v2 : null; }, set(name, value, days, skipSetDomain) { let expires, path, domain, secure, samesite; const defaultCookieConfig { expires: null, path: /, domain: null, secure: false, lifetime: null, samesite: lax }; const cookieConfig window.COOKIE_CONFIG || {}; expires days ? lifetimeToExpires({lifetime: 24 * 60 * 60 * days, expires: null}, defaultCookieConfig) : lifetimeToExpires(window.COOKIE_CONFIG, defaultCookieConfig) || defaultCookieConfig.expires; path cookieConfig.path || defaultCookieConfig.path; domain !skipSetDomain && (cookieConfig.domain || defaultCookieConfig.domain); secure cookieConfig.secure || defaultCookieConfig.secure; samesite cookieConfig.samesite || defaultCookieConfig.samesite; document.cookie name + + encodeURIComponent(value) + (expires ? ; expires + expires.toGMTString() : ) + (path ? ; path + path : ) + (domain ? ; domain + domain : ) + (secure ? ; secure : ) + (samesite ? ; samesite + samesite : lax); }, isWebsiteAllowedToSaveCookie() { const allowedCookies this.get(user_allowed_save_cookie); if (allowedCookies) { const allowedWebsites JSON.parse(unescape(allowedCookies)); return allowedWebsitesCURRENT_WEBSITE_ID 1; } return false; }, getGroupByCookieName(name) { const cookieConsentConfig window.cookie_consent_config || {}; let group null; for (let prop in cookieConsentConfig) { if (!cookieConsentConfig.hasOwnProperty(prop)) continue; if (cookieConsentConfigprop.includes(name)) { group prop; break; } } return group; }, isCookieAllowed(name) { const cookieGroup this.getGroupByCookieName(name); return cookieGroup ? window.cookie_consent_groupscookieGroup : this.isWebsiteAllowedToSaveCookie(); }, saveTempStorageCookies() { for (const name, data of Object.entries(cookieTempStorage)) { if (this.isCookieAllowed(name)) { this.set(name, datavalue, datadays, dataskipSetDomain); delete cookieTempStoragename; } } } }; hyva.getCookie (name) > { const cookieConfig window.COOKIE_CONFIG || {}; if (cookieConfig.cookie_restriction_enabled && ! internalCookie.isCookieAllowed(name)) { return cookieTempStoragename ? cookieTempStoragenamevalue : null; } return internalCookie.get(name); } hyva.setCookie (name, value, days, skipSetDomain) > { const cookieConfig window.COOKIE_CONFIG || {}; if (cookieConfig.cookie_restriction_enabled && ! internalCookie.isCookieAllowed(name)) { cookieTempStoragename {value, days, skipSetDomain}; return; } return internalCookie.set(name, value, days, skipSetDomain); } hyva.getBrowserStorage () > { const browserStorage window.localStorage || window.sessionStorage; if (!browserStorage) { console.warn(Browser Storage is unavailable); return false; } try { browserStorage.setItem(storage_test, 1); browserStorage.removeItem(storage_test); } catch (error) { console.warn(Browser Storage is not accessible, error); return false; } return browserStorage; } hyva.postForm (postParams) > { const form document.createElement(form); let data postParams.data; if (! postParams.skipUenc && ! data.uenc) { data.uenc btoa(window.location.href); } form.method POST; form.action postParams.action; Object.keys(postParams.data).map(key > { const field document.createElement(input); field.type hidden field.value postParams.datakey; field.name key; form.appendChild(field); }); const form_key document.createElement(input); form_key.type hidden; form_key.value hyva.getFormKey(); form_key.nameform_key; form.appendChild(form_key); document.body.appendChild(form); form.submit(); } hyva.getFormKey function () { let formKey hyva.getCookie(form_key); if (!formKey) { formKey generateRandomString(); hyva.setCookie(form_key, formKey); } return formKey; } hyva.formatPrice (value, showSign) > { var formatter new Intl.NumberFormat( en\u002DUS, { style: currency, currency: USD, signDisplay: showSign ? always : auto } ); return (typeof Intl.NumberFormat.prototype.formatToParts function) ? formatter.formatToParts(value).map(({type, value}) > { switch (type) { case currency: return $ || value; case minusSign: return - ; case plusSign: return + ; default : return value; } }).reduce((string, part) > string + part) : formatter.format(value); } const formatStr function (str, nStart) { const args Array.from(arguments).slice(2); return str.replace(/(%+)(0-9+)/g, (m, p, n) > { const idx parseInt(n) - nStart; if (argsidx null || argsidx void 0) { return m; } return p.length % 2 ? p.slice(0, -1).replace(%%, %) + argsidx : p.replace(%%, %) + n; }) } hyva.str function (string) { const args Array.from(arguments); args.splice(1, 0, 1); return formatStr.apply(undefined, args); } hyva.strf function () { const args Array.from(arguments); args.splice(1, 0, 0); return formatStr.apply(undefined, args); } /** * Take a html string as `content` parameter and * extract an element from the DOM to replace in * the current page under the same selector, * defined by `targetSelector` */ hyva.replaceDomElement (targetSelector, content) > { // Parse the content and extract the DOM node using the `targetSelector` const parser new DOMParser(); const doc parser.parseFromString(content, text/html); const contentNode doc.querySelector(targetSelector); // Bail if content cant be found if (!contentNode) { return; } // Extract all the script tags from the new content. // Script tags wont execute when inserted into a dom-element directly, // therefore we need to inject them to the head of the document. const tmpScripts contentNode.getElementsByTagName(script); if (tmpScripts.length > 0) { // Push all script tags into an array // (to prevent dom manipulation while iterating over dom nodes) const scripts ; for (let i 0; i tmpScripts.length; i++) { scripts.push(tmpScriptsi); } // Iterate over all script tags and duplicate+inject each into the head for (let i 0; i scripts.length; i++) { let script document.createElement(script); script.innerHTML scriptsi.innerHTML; document.head.appendChild(script); // Remove the original (non-executing) node from the page scriptsi.parentNode.removeChild(scriptsi); } } // Replace the old DOM node with the new content document.querySelector(targetSelector).replaceWith(contentNode); // Reload customerSectionData and display cookie-messages if present window.dispatchEvent(new CustomEvent(reload-customer-section-data)); hyva.initMessages(); } const replace {+: -, /: _, : ,}; hyva.getUenc () > btoa(window.location.href).replace(/+//g, match > replacematch); let currentTrap; const focusableElements (rootElement) > { const selector button, href, input, select, textarea, details; return Array.from(rootElement.querySelectorAll(selector)) .filter(el > el.style.display ! none && !el.disabled && el.tabIndex ! -1) } const focusTrap (e) > { const isTabPressed e.key Tab || e.keyCode 9; if (!isTabPressed) return; const focusable focusableElements(currentTrap) const firstFocusableElement focusable0 const lastFocusableElement focusablefocusable.length - 1 e.shiftKey ? document.activeElement firstFocusableElement && (lastFocusableElement.focus(), e.preventDefault()) : document.activeElement lastFocusableElement && (firstFocusableElement.focus(), e.preventDefault()) }; hyva.releaseFocus (rootElement) > { if (currentTrap && (!rootElement || rootElement currentTrap)) { currentTrap.removeEventListener(keydown, focusTrap) currentTrap null } } hyva.trapFocus (rootElement) > { if (!rootElement) return; hyva.releaseFocus() currentTrap rootElement rootElement.addEventListener(keydown, focusTrap) const firstElement focusableElements(rootElement)0 firstElement && firstElement.focus() } hyva.alpineInitialized (fn) > window.addEventListener(alpine:initialized, fn, {once: true}) window.addEventListener(user-allowed-save-cookie, () > internalCookie.saveTempStorageCookies()) }( window.hyva window.hyva || {} ));/script> link relcanonical hrefhttps://defendcellcamqa.com />/head>body idhtml-body classcms-home page-layout-1column cms-index-index page-layout-cms-full-width>style> /*.mf-label-container {display: block;top:0;right: 0;left: 0;bottom: 0; width: 100%; height: 100%;}*/ .mf-label-container .mf-label {position: absolute; z-index: 2; width: fit-content;} .product.media .mf-label-container .mf-label {z-index: 9;} .mf-label-container .mf-label.mf-label-position-top-left {top: 0;left: 0;} .mf-label-container .mf-label.mf-label-position-top-center {top: 0; left: 50%; transform: translateX(-50%);} .mf-label-container .mf-label.mf-label-position-top-right {top: 0;right: 0;} .mf-label-container .mf-label.mf-label-position-center-left {top: 50%; transform: translateY(-50%); left: 0;} .mf-label-container .mf-label.mf-label-position-center {top: 50%; left: 50%; transform: translate(-50%, -50%);} .mf-label-container .mf-label.mf-label-position-center-right {top: 50%; transform: translateY(-50%); right: 0;} .mf-label-container .mf-label.mf-label-position-bottom-left {bottom: 0;left: 0;} .mf-label-container .mf-label.mf-label-position-bottom-center {bottom: 0;left: 50%; transform: translateX(-50%);} .mf-label-container .mf-label.mf-label-position-bottom-right {bottom: 0;right: 0;} .mf-label-container .mf-label.mf-label-position-top-center img, .mf-label-container .mf-label.mf-label-position-center img, .mf-label-container .mf-label.mf-label-position-bottom-center img {display: block; margin: 0 auto;} .mf-label-container .mf-label.mf-label-position-top-right img, .mf-label-container .mf-label.mf-label-position-center-right img, .mf-label-container .mf-label.mf-label-position-bottom-right img {float: right;} .product-item-photo {position: relative;} /style>script> window.MagefanJs window.MagefanJs || {}; window.MagefanJs.ajax function(options) { var xmlhttp new XMLHttpRequest(); xmlhttp.onreadystatechange function () { if (xmlhttp.readyState XMLHttpRequest.DONE && xmlhttp.status 200) { var data xmlhttp.responseText; if (options.success) options.success(data); } }; xmlhttp.open(options.type, options.url, true); var requestHeader Object.assign({}, { X-Requested-With: XMLHttpRequest, Content-type: application/x-www-form-urlencoded }, options.requestHeader ? options.requestHeader : {}); for (var header in requestHeader) { xmlhttp.setRequestHeader(header, requestHeaderheader); } xmlhttp.send(options.data); };/script>noscript>iframe srchttps://www.googletagmanager.com/ns.html?idGTM-P7BV2XFN height0 width0 styledisplay:none;visibility:hidden>/iframe>/noscript>input nameform_key typehidden valueIQ8eCppoyGDo5IU9 /> script> function initCookieBanner() { const isUserAllowedSaveCookieName user_allowed_save_cookie; const currentWebsiteId 13; const isAllowedSaveCookie () > { const allowedCookies hyva.getCookie(isUserAllowedSaveCookieName); const allowedCookieWebsites allowedCookies ? JSON.parse(unescape(allowedCookies)) : ; return allowedCookieWebsitescurrentWebsiteId ! undefined ? !!allowedCookieWebsitescurrentWebsiteId : false; }; return { showCookieBanner: false, cookieName: isUserAllowedSaveCookieName, cookieValue: {13:1}, cookieLifetime: 31536000, noCookiesUrl: https\u003A\u002F\u002Fdefendcellcamqa.com\u002Fcookie\u002Findex\u002FnoCookies\u002F, checkAcceptCookies() { this.showCookieBanner !isAllowedSaveCookie(); }, setAcceptCookies() { const cookieExpires this.cookieLifetime / 60 / 60 / 24; hyva.setCookie(this.cookieName, this.cookieValue, cookieExpires); if (!hyva.getCookie(this.cookieName)) { window.location.href this.noCookiesUrl; } else { window.dispatchEvent(new CustomEvent(user-allowed-save-cookie)); } } } } /script> section idnotice-cookie-block x-datainitCookieBanner(); @private-content-loaded.windowcheckAcceptCookies() > template x-ifshowCookieBanner> div roledialog aria-labelledbynotice-cookie-title aria-describedbynotice-cookie-description-content aria-modaltrue classfixed py-0 right-0 bottom-0 z-30 w-full bg-white border-t border-container > div classcontainer> div classflex flex-col lg:flex-row justify-between items-center w-full py-0.5> div classp-2 pr-4> p idnotice-cookie-title classsr-only> Cookie Policy /p> p idnotice-cookie-description-content classmt-3 lg:my-3> We use cookies to help improve our services, make personal offers, and enhance your experience. If you do not accept optional cookies below, your experience may be affected. If you want to know more, please read the a classhover:text-primary font-bold underline hrefhttps://defendcellcamqa.com/privacy-policy/>Cookie Policy/a>. /p> /div> div classmy-2 flex flex-wrap justify-center lg:justify-end lg:min-w-336px gap-4> div> button @clicksetAcceptCookies(); showCookieBanner false idbtn-cookie-allow classbtn btn-secondary btn-size-long__desktop my-2 whitespace-nowrap > Accept All /button> /div> /div> /div> /div> /div> /template> /section>script> /* copy of Magefan_ProductLabel::js/label */ var MagefanPL { processConfigurableProductLabel: function (labelEl, maintProductID, selectedProductId, forProductPage 0) { var self this; if (!window.mfLabelProcessed) { window.mfLabelProcessed {}; } if (!window.mfLabelProcessedmaintProductID) { const url BASE_URL + mfpl/label/get?product_ids + maintProductID + &get_children1&product_page + forProductPage; MagefanJs.ajax({url:url, type: GET, success: function(response) { response JSON.parse(response) window.mfLabelProcessedmaintProductID response.labels; self.replaceLabel(labelEl, maintProductID, selectedProductId) } }); } else { self.replaceLabel(labelEl, maintProductID, selectedProductId) } }, replaceLabel: function (labelEl, maintProductID, selectedProductId) { let labelHtml window.mfLabelProcessedmaintProductID && window.mfLabelProcessedmaintProductIDselectedProductId ? window.mfLabelProcessedmaintProductIDselectedProductId : ; if (labelHtml) { const tempDiv document.createElement(div); tempDiv.innerHTML labelHtml; const newLabel tempDiv.firstElementChild; if (newLabel) { labelEl.replaceWith(newLabel); } } } }; window.addEventListener(configurable-selection-changed, function (e) { let labelEl document.querySelector(.mfpl-product-page), forProductPage 1; if (labelEl) { MagefanPL.processConfigurableProductLabel( labelEl, e.detail.productId, e.detail.productIndex, forProductPage ); } }); window.addEventListener(listing-configurable-selection-changed, function (e) { let labelEl document.querySelector(inputnameproductvalue+ e.detail.productId +).closest(form).querySelector(.mf-label-container), forProductPage 0; if (labelEl) { MagefanPL.processConfigurableProductLabel( labelEl, e.detail.productId, e.detail.productIndex, forProductPage ); } }); /script>script noncedWtleWt1M3Z6N242OWJ0ZDRtNjRrcWJqazMyOHVheDk> function yireoGoogleTagManager2Pusher(eventData, message, callback) { window.YIREO_GOOGLETAGMANAGER2_PAST_EVENTS window.YIREO_GOOGLETAGMANAGER2_PAST_EVENTS || ; function doCallback(cb) { if (undefined cb) { return; } cb(); } const copyEventData Object.assign({}, eventData); let metaData {}; if (copyEventData.meta) { metaData copyEventData.meta; delete copyEventData.meta; } const eventHash btoa(encodeURIComponent(JSON.stringify(copyEventData))); if (window.YIREO_GOOGLETAGMANAGER2_PAST_EVENTS.includes(eventHash)) { yireoGoogleTagManager2Logger(Warning: Event already triggered, eventData); doCallback(callback); return; } if (metaData && metaData.allowed_pages && metaData.allowed_pages.length > 0 && false metaData.allowed_pages.some(page > window.location.pathname.includes(page))) { yireoGoogleTagManager2Logger(Warning: Skipping event, not in allowed pages, window.location.pathname, eventData); doCallback(callback); return; } if (!message) { message push (unknown) unknown; } yireoGoogleTagManager2Logger(message, eventData); window.dataLayer window.dataLayer || ; if (eventData.ecommerce) { window.dataLayer.push({ecommerce: null}); } try { window.dataLayer.push(eventData); window.YIREO_GOOGLETAGMANAGER2_PAST_EVENTS.push(eventHash); } catch(error) { doCallback(callback); } doCallback(callback); }/script>script noncedWtleWt1M3Z6N242OWJ0ZDRtNjRrcWJqazMyOHVheDk> function yireoGoogleTagManager2Logger(...args) { const debug window.YIREO_GOOGLETAGMANAGER2_DEBUG || false; if (false debug) { return; } var color gray; if (args0.toLowerCase().startsWith(push)) { color green; } if (args0.toLowerCase().startsWith(warning)) { color orange; } var css color:white; background-color: + color + ; padding:1px; console.log(%cYireo_GoogleTagManager2, css, ...args); }/script>script> use strict; (function(hyva) { const formValidationRules { required(value, options, field, context) { const el field.element.type hidden ? createTextInputFrom(field.element) : field.element, msg This\u0020is\u0020a\u0020required\u0020field.; if (el.type radio || el.type checkbox) { return (value undefined || value.length 0) ? msg : true; } el.setAttribute(required, ); el.checkValidity(); return el.validity.valueMissing ? msg : true; }, maxlength(value, options, field, context) { const n Number(options) if (value.length > n) { return n 1 ? hyva.strf(Please\u0020enter\u0020no\u0020more\u0020than\u00201\u0020character.) : hyva.strf(Please\u0020enter\u0020no\u0020more\u0020than\u0020\u00250\u0020characters., options) } return true; }, minlength(value, options, field, context) { const n Number(options) if (value.length > 0 && value.length n) { return n 1 ? hyva.strf(Please\u0020enter\u0020at\u0020least\u00201\u0020character.) : hyva.strf(Please\u0020enter\u0020at\u0020least\u0020\u00250\u0020characters., options) } return true; }, max(value, options, field, context) { field.element.setAttribute(max, options); field.element.checkValidity(); if (field.element.validity.rangeOverflow) { return hyva.strf(Please\u0020enter\u0020a\u0020value\u0020less\u0020than\u0020or\u0020equal\u0020to\u0020\u0022\u00250\u0022., options); } return true; }, min(value, options, field, context) { field.element.setAttribute(min, options); field.element.checkValidity(); if (field.element.validity.rangeUnderflow) { return hyva.strf(Please\u0020enter\u0020a\u0020value\u0020greater\u0020than\u0020or\u0020equal\u0020to\u0020\u0022\u00250\u0022., options); } return true; }, step(value, options, field, context) { field.element.setAttribute(step, options); field.element.checkValidity(); if (field.element.validity.stepMismatch) { const val Number(options); return hyva.strf(Please\u0020enter\u0020a\u0020valid\u0020value.\u0020The\u0020two\u0020nearest\u0020valid\u0020values\u0020are\u0020\u0022\u00250\u0022\u0020and\u0020\u0022\u00251\u0022., Math.floor(val), Math.ceil(val)); } return true; }, pattern(value, options, field, context) { field.element.setAttribute(pattern, options); field.element.checkValidity(); if (field.element.validity.patternMismatch) { return field.element.title ? hyva.strf(Please\u0020match\u0020the\u0020requested\u0020format\u003A\u0020\u00250., field.element.title) : Please\u0020match\u0020the\u0020requested\u0020format. } return true; }, email(value, options, field, context) { const rule /^(a-z0-9,!\#\$%&\*\+\/\?\^_`\{\|\}~-|\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF)+(\.(a-z0-9,!\#\$%&\*\+\/\?\^_`\{\|\}~-|\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF)+)*@(a-z0-9-|\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF)+(\.(a-z0-9-|\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF)+)*\.((a-z|\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF){2,})$/i; if (value.length > 0 && !rule.test(value)) { return Please\u0020enter\u0020a\u0020valid\u0020email\u0020address.; } return true; }, password(value, options, field, context) { const rule /^(?.*?A-Z)(?.*?a-z)(?.*?0-9)(?.*?#?!@$%^&*-).{8,}$/; if (value.length > 0 && !rule.test(value)) { return Please\u0020provide\u0020at\u0020least\u0020one\u0020upper\u0020case,\u0020one\u0020lower\u0020case,\u0020one\u0020digit\u0020and\u0020one\u0020special\u0020character\u0020\u0028\u0023\u003F\u0021\u0040\u0024\u0025\u005E\u0026\u002A\u002D\u0029; } return true; }, equalTo(value, options, field, context) { const dependencyField context.fieldsoptions.element; if (value ! dependencyField.value) { const dependencyFieldName dependencyField.label || dependencyField.title || (dependencyField.labels && dependencyField.labels0 && dependencyField.labels0.innerText) || dependencyField.name; return hyva.strf(This\u0020field\u0020value\u0020must\u0020be\u0020the\u0020same\u0020as\u0020\u0022\u00250\u0022., dependencyFieldName); } return true; } }; function raceSome(promises, pred) { return new Promise((resolve, reject) > { if (promises.length 0) { return resolve(); } let settled false, nDone 0; const resolveIf v > { if (!settled && (pred(v) || ++nDone promises.length)) { settled true; resolve(v); } return v; } promises.map(promise > { promise.then(resolveIf).catch(reason > { settled true; reject(reason) }); return promise; }); }); } function getRules(element) { let rules {}; const BROWSER_ATTRS min, max, required, minlength, maxlength, step, pattern; const DEFAULT_TYPES email; BROWSER_ATTRS.forEach(attrName > { if (element.hasAttribute(attrName)) { rulesattrName element.getAttribute(attrName); } }) if (DEFAULT_TYPES.includes(element.type)) { ruleselement.type true; } if (element.dataset.validate) { try { Object.assign(rules, JSON.parse(element.dataset.validate)); } catch (error) { console.error(Validator error. Cannot parse data-validate attribute of element:\n, element); } } return rules; } function isInvalidRuleResult(ruleState) { return typeof ruleState string || !ruleState; } async function runValidateFn(rule, options, value, field) { return formValidationRulesrule(value, options, field, this); } function generateId() { let id; do { id `${this.idPrefix}-${++this.idSeq}`; } while (document.getElementById(id)); return id; } function isVisible(element) { const el element.type ! hidden ? element : (element.parentElement || {}); return !!(el.offsetWidth || el.offsetHeight || el.getClientRects().length) } function elementWillValidate(element) { return (element.willValidate || element.type hidden) && element.tagName ! BUTTON && element.disabled false && !(element.tagName INPUT && element.type submit) && (element.hasAttribute(data-validate-hidden) || isVisible(element)) } function createMessageContainer(el, fieldWrapperClassName) { if (! el.parentElement) { return; } const refocus document.activeElement el; const wrapper document.createElement(div); wrapper.classList.add.apply(wrapper.classList, fieldWrapperClassName.split( )); el.parentElement.insertBefore(wrapper, el); wrapper.appendChild(el); refocus && document.activeElement ! el && el.focus(); return wrapper; } function containerNotFound(selector, el) { const msg `Cannot find message container element ${selector} of ${el.name}`; console.error(msg, el); throw msg; } function createTextInputFrom(el) { const text document.createElement(INPUT); text.type text; text.value el.value; return text; } function classNamesToSelector(classNames) { return classNames.split( ) .filter(className > className.length > 0) .map(className > `.${className}`) .join() } function hasMessagesWrapper(field, messagesWrapperClassName) { return this.getMessageContainer(field).querySelector(classNamesToSelector(messagesWrapperClassName)); } function getMessagesWrapper(field, messagesWrapperClassName) { if (hasMessagesWrapper.call(this, field, messagesWrapperClassName)) { return this.getMessageContainer(field).querySelector(classNamesToSelector(messagesWrapperClassName)); } const msgWrapper document.createElement(ul); const msgId generateId.call(this); msgWrapper.id msgId; field.element.setAttribute(aria-errormessage, msgId); field.element.setAttribute(aria-describedby, msgId); msgWrapper.classList.add.apply(msgWrapper.classList, messagesWrapperClassName.split( )); if (field.validateOnChange) { msgWrapper.setAttribute(aria-live, polite); } this.getMessageContainer(field).appendChild(msgWrapper); return msgWrapper; } function getCheckedValues(field) { const name field.element.name.replace(/(\\)/g, \\$1); const elements field.element.form.querySelectorAll(inputname + name + :checked); return Array.from(elements).map(el > el.value); } function formValidation(formElement, options) { // Disable browser default validation if (formElement.tagName FORM) { formElement.setAttribute(novalidate, ); } else { console.error(formValidation can be initialized only on FORM element, formElement); return; } options Object.assign({ fieldWrapperClassName: field field-reserved, messagesWrapperClassName: messages, validClassName: field-success, invalidClassName: field-error, pageMessagesWrapperSelector: null, scrollToFirstError: true, }, options || {}); return { state: { valid: false, }, fields: {}, idSeq: 0, idPrefix: formElement.id || vld-msg, setupFields(elements) { this.fields {}; Array.from(elements).forEach(element > { if (elementWillValidate(element)) { this.setupField(element); } }); }, setupField(element) { const onChange !!element.dataset.onChange; if (elementWillValidate(element)) { const rules getRules(element); if (Object.keys(rules).length > 0) { if (this.fieldselement.name) { Object.assign(this.fieldselement.name.rules, rules); } else { this.fieldselement.name { element, rules: rules, validateOnChange: onChange, state: { valid: null, rules: {} } } } } } else { console.error(Element will not validate, element); } }, onSubmit(event) { if (event.target.tagName FORM) { event.preventDefault(); this.validate() .then(() > event.target.submit()) .catch(invalidElements > {}); } }, onChange(event) { event.target.dataset.onChange true; if (!Object.keys(this.fields).length) { this.setupFields(formElement.elements); } if (!Object.keys(this.fields).includes(event.target.name)) { this.setupField(event.target); } const field this.fieldsevent.target.name; this.validateField(field); field && field.element.removeAttribute(data-on-change) }, validateSafe() { return new Promise(resolve > this.validate().then(() > resolve(true)).catch(() > {})) }, validate() { if (!Object.keys(this.fields).length || !Object.keys(this.fields).length ! formElement.elements.length) { this.setupFields(formElement.elements); } return new Promise(async (resolve, reject) > { if (formElement.elements) { await raceSome(this.validateFields(), result > result ! true) const invalidFields Object.values(this.fields).filter(field > !field.state.valid); this.state.valid invalidFields.length 0; if (this.state.valid) { resolve(); } else { if (options.scrollToFirstError && invalidFields.length > 0) { invalidFields0.element.focus() invalidFields0.element.select && invalidFields0.element.select(); } reject(invalidFields.map(field > field.element)); } } }); }, validateFields() { const fields Object.values(this.fields); fields.forEach(field > { this.getMessageContainer(field).classList.remove(options.validClassName, options.invalidClassName) }); return fields.map(field > this.validateField(field)) }, validateField(field) { if (! field || ! elementWillValidate(field.element)) { return new Promise(resolve > resolve(true)) } let value; if (field.element.type checkbox) { value getCheckedValues(field); } else if (field.element.type radio) { value getCheckedValues(field)0 || undefined; } else if (field.element.tagName SELECT && field.element.multiple) { value Array.from(field.element.selectedOptions).map(opt > opt.value); } else { value field.element.value; } const rules field.rules || {}; field.state.valid true; this.showFieldState(field); const fieldValidations Object.keys(rules).filter(rule > formValidationRulesrule).map(async rule > { return runValidateFn.call(this, rule, rulesrule, value, field).then(result > { field.state.rulesrule result; return result; }) }); return new Promise(resolve > { Promise.all(fieldValidations).then(results > { field.state.valid !elementWillValidate(field.element) || rules.length 0 || !results.some(isInvalidRuleResult) this.showFieldState(field); resolve(field.state.valid); }) }); }, getMessagesByField(field) { const messages ; const invalidRules Object.keys(field.state.rules).filter(rule > isInvalidRuleResult(field.state.rulesrule)); field.rules && Object.keys(field.rules).forEach((rule) > { if (invalidRules.includes(rule)) { const customMessage field.element.getAttribute(data-msg- + rule); const message customMessage ? customMessage : field.state.rulesrule; const ruleOptions JSON.parse(JSON.stringify(field.rulesrule)); if (typeof message ! string) { messages.push(hyva.strf(Validation rule %0 failed., rule)); } else if (Array.isArray(ruleOptions)) { ruleOptions.unshift(message); messages.push(hyva.strf.apply(null, ruleOptions)); } else { messages.push(hyva.strf(message, ruleOptions)); } } }); return messages; }, /** @deprecated */ getFieldWrapper(field) { return this.getMessageContainer(field) }, getMessageContainer(field) { let container; const pageSelector field.element.getAttribute(data-validation-container) || options.pageMessagesContainerSelector; if (pageSelector) { container document.querySelector(pageSelector) || containerNotFound(pageSelector, field.element) } else { const containerSelector classNamesToSelector(options.fieldWrapperClassName); container field.element.closest(containerSelector) || createMessageContainer(field.element, options.fieldWrapperClassName) || containerNotFound(containerSelector, field.element); } return container; }, showFieldState(field) { const container this.getMessageContainer(field), hasErrorMessages hasMessagesWrapper.call(this, field, options.messagesWrapperClassName); container.classList.toggle(options.validClassName, field.state.valid && ! hasErrorMessages); container.classList.toggle(options.invalidClassName, !field.state.valid || hasErrorMessages); this.createErrorMessage(field, this.getMessagesByField(field)); if (field.state.valid) { field.element.removeAttribute(aria-invalid); } else { field.element.setAttribute(aria-invalid, true); if (! document.activeElement) { field.element.focus(); } } }, removeMessages(field, messagesClass) { if (! hasMessagesWrapper.call(this, field, messagesClass || options.messagesWrapperClassName)) { return; } const msgWrapper getMessagesWrapper.call(this, field, messagesClass || options.messagesWrapperClassName); const messages msgWrapper.querySelectorAll(`data-msg-field${field.element.name}`); Array.from(messages).forEach(msg > msg.remove()); if (msgWrapper && msgWrapper.childElementCount 0) { field.element.removeAttribute(aria-errormessage); field.element.removeAttribute(aria-describedby); msgWrapper.remove(); } }, createErrorMessage(field, messages) { this.removeMessages(field, options.messagesWrapperClassName); field.element.removeAttribute(aria-errormessage); field.element.removeAttribute(aria-describedby); if (!field.state.valid) { const msgWrapper this.addMessages(field, options.messagesWrapperClassName, messages); field.element.setAttribute(aria-errormessage, msgWrapper.id); field.element.setAttribute(aria-describedby, msgWrapper.id); } }, /** @deprecated */ createMessage(field, message) { return this.addMessages(field, options.messagesWrapperClassName, message); }, addMessages(field, messagesClass, messages) { const msgWrapper getMessagesWrapper.call(this, field, messagesClass); (Array.isArray(messages) ? messages : messages).forEach((message) > { const li document.createElement(li); li.innerText message; li.setAttribute(data-msg-field, field.element.name); msgWrapper.appendChild(li); }); return msgWrapper; }, setField(name, value) { this.fieldsname.element.value value; this.fieldsname.element.dispatchEvent((new Event(input))); this.validateField(this.fieldsname); } } } hyva.formValidation formValidation; hyva.formValidation.rules formValidationRules; hyva.formValidation.addRule (name, validator) > { formValidationRulesname validator; } }(window.hyva window.hyva || {}));/script>div classpage-wrapper>header classpage-header>div classtop-promo-banner>div classwidget block block-static-block> /div>div classwidget block block-static-block> style>.cmsb482-order-1{order:1}.cmsb482-order-2{order:2}.cmsb482-order-3{order:3}.cmsb482-inline-block{display:inline-block}.cmsb482-flex{display:flex}.cmsb482-flex-\0_0_100\%\{flex:0 0 100%}.cmsb482-flex-wrap{flex-wrap:wrap}.cmsb482-items-center{align-items:center}.cmsb482-justify-center{justify-content:center}.cmsb482-gap-2\.5{gap:.625rem}.cmsb482-rounded-\50px\{border-radius:50px}.cmsb482-border-2{border-width:2px}.cmsb482-border-\\#111921\{--tw-border-opacity:1;border-color:rgb(17 25 33/var(--tw-border-opacity))}.cmsb482-bg-\\#EEE\{--tw-bg-opacity:1;background-color:rgb(238 238 238/var(--tw-bg-opacity))}.cmsb482-bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.cmsb482-px-5{padding-left:1.25rem;padding-right:1.25rem}.cmsb482-px-6{padding-left:1.5rem;padding-right:1.5rem}.cmsb482-py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.cmsb482-py-\3px\{padding-top:3px;padding-bottom:3px}.cmsb482-text-center{text-align:center}.cmsb482-text-\16px\{font-size:16px}.cmsb482-font-medium{font-weight:500}.cmsb482-leading-\22px\{line-height:22px}.cmsb482-text-\\#111921\{--tw-text-opacity:1;color:rgb(17 25 33/var(--tw-text-opacity))}.cmsb482-hover\:bg-\\#111921\:hover{--tw-bg-opacity:1;background-color:rgb(17 25 33/var(--tw-bg-opacity))}.cmsb482-hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}@media (min-width:1024px){.cmsb482-lg\:order-1{order:1}.cmsb482-lg\:order-2{order:2}.cmsb482-lg\:flex-none{flex:none}.cmsb482-lg\:flex-nowrap{flex-wrap:nowrap}}@media (min-width:1536px){.cmsb482-\32xl\:relative{position:relative}.cmsb482-\32xl\:top-0\.5{top:.125rem}}/style>div data-content-typehtml data-appearancedefault data-elementmain data-decodedtrue>div classcmsb482-py-2.5 cmsb482-px-5 cmsb482-gap-2.5 cmsb482-flex cmsb482-justify-center cmsb482-items-center cmsb482-flex-wrap cmsb482-lg:flex-nowrap cmsb482-bg-#EEE> svg xmlnshttp://www.w3.org/2000/svg width24 height25 viewBox0 0 24 25 fillnone classcmsb482-order-2 cmsb482-lg:order-1>path dM10.5723 24.416H2.51465C1.46715 24.416 0.617188 23.5668 0.617188 22.5186V14.6172H10.5723V24.416ZM23.3799 22.5186C23.3799 23.5668 22.5301 24.416 21.4824 24.416H13.4219V14.6172H23.3799V22.5186ZM3.2041 17.0469C2.81086 17.0469 2.49134 17.3656 2.49121 17.7588V21.7129C2.4914 22.106 2.81084 22.4248 3.2041 22.4248C3.59736 22.4248 3.9168 22.106 3.91699 21.7129V17.7588C3.91686 17.3657 3.59733 17.0469 3.2041 17.0469ZM6.96191 0C7.92483 0 8.88624 0.367006 9.62012 1.10059C10.2353 1.71537 10.828 3.24096 11.3086 4.80566C11.5309 4.74486 11.7609 4.70219 12.002 4.70215C12.2441 4.70215 12.4747 4.74527 12.6982 4.80664C13.177 3.2559 13.7635 1.75032 14.373 1.14062C15.1069 0.406979 16.0692 0.0400391 17.0312 0.0400391C17.9932 0.0400846 18.9556 0.406802 19.6904 1.14062C21.1582 2.60842 21.158 4.98933 19.6904 6.45703C19.441 6.70626 19.028 6.95045 18.5361 7.18652H22.0996C23.147 7.18652 23.9959 8.03565 23.9961 9.08301V10.6973C23.996 11.7447 23.147 12.5938 22.0996 12.5938H13.4219V7.26172H10.5713V12.5938H1.89648C0.848941 12.5937 6.58334e-05 11.7448 0 10.6973V9.08301C0.000121689 8.03564 0.848976 7.18656 1.89648 7.18652H5.54004C5.0092 6.93896 4.56631 6.68073 4.30371 6.41699C2.83626 4.94934 2.83599 2.56891 4.30371 1.10059C5.03753 0.36689 5.99992 0.000108895 6.96191 0ZM17.0312 1.94043C16.5349 1.94043 16.0674 2.13366 15.7168 2.48438C15.3623 2.85911 14.8185 4.28406 14.3008 6.07227C14.3925 6.23746 14.4648 6.41244 14.5186 6.59668C16.4189 6.05929 17.9561 5.48163 18.3486 5.11133C18.6974 4.7625 18.8906 4.29557 18.8906 3.79883C18.8905 3.30215 18.6972 2.83535 18.3467 2.48438C17.995 2.13362 17.5283 1.94048 17.0312 1.94043ZM6.96289 1.90039C6.46646 1.90039 5.99822 2.09373 5.64746 2.44434C4.92279 3.16943 4.92285 4.34912 5.64746 5.07422C6.04 5.44434 7.58672 6.02445 9.49609 6.5625C9.54998 6.39058 9.61884 6.22708 9.70508 6.07227C9.18368 4.26542 8.63369 2.82147 8.27637 2.44336C7.9268 2.09332 7.45994 1.90052 6.96289 1.90039Z fill#111921/>/svg> p classcmsb482-2xl:relative cmsb482-2xl:top-0.5 cmsb482-text-16px cmsb482-text-center cmsb482-flex-0_0_100% cmsb482-lg:flex-none cmsb482-font-medium cmsb482-order-1 cmsb482-lg:order-2 cmsb482-text-#111921 cmsb482-leading-22px>Order by 1pm on 12/18 for delivery before the holidays/p> a href/security/defend-deals classcmsb482-order-3 cmsb482-inline-block cmsb482-py-3px cmsb482-px-6 cmsb482-text-16px cmsb482-font-medium cmsb482-text-#111921 cmsb482-bg-white cmsb482-leading-22px cmsb482-rounded-50px cmsb482-border-2 cmsb482-border-#111921 cmsb482-hover:text-white cmsb482-hover:bg-#111921>Shop Our Holiday Deals/a>/div>/div>/div>/div>a classaction skip sr-only focus:not-sr-only focus:absolute focus:z-40 focus:bg-white contentarea href#contentarea> span> Skip to Content /span>/a>script> function initHeader () { return { searchOpen: false, cart: {}, isCartOpen: false, getData(data) { if (data.cart) { this.cart data.cart } }, isCartEmpty() { return !this.cart.summary_count }, toggleCart(event) { if (event.detail && event.detail.isOpen ! undefined) { this.isCartOpen event.detail.isOpen if (!this.isCartOpen && this.$refs && this.$refs.cartButton) { this.$refs.cartButton.focus() } } else { this.isCartOpen true } } } } function initCompareHeader() { return { compareProducts: null, itemCount: 0, receiveCompareData(data) { if (datacompare-products) { this.compareProducts datacompare-products; this.itemCount this.compareProducts.count; } } } }/script>div idheader classw-full pt-3 bg-primary-darker lg:border-b lg:border-container-testim x-datainitHeader() @private-content-loaded.windowgetData(event.detail.data)> div classheader-grid grid pt-3 max-w-1440px mx-auto z-30> !--Logo Component--> div classflex items-center logo-component max-w-180px lg:max-w-220px xl:max-w-280px ml-4> div classorder-1 basis-45 md:basis-70 text-center site-logo> a classflex items-center tracking-wide hrefhttps://defendcellcamqa.com/ aria-labelGo to Home page > img srchttps://defendcellcamqa.com/media/logo/stores/28/defend_logo.png altStore logo width280 height39 /> /a>/div> /div> !-- Icons Component --> div classicons-component header-icons-block flex items-center justify-end space-x-3 md:space-x-8 lg:space-x-3 xl:space-x-5 mr-4 md:mr-16 lg:mr-0> div classstore-locator-desktop relative hidden lg:inline-block> a href/where-to-buy classtext-white hover:text-primary-lighter>Store Locator/a> /div> !--Search Open Button--> button idmenu-search-icon classblock lg:hidden inline-block no-underline text-white hover:text-primary-lighter @click.preventsearchOpen !searchOpen; $dispatch(search-open); aria-labelToggle search form aria-haspopuptrue :aria-expandedsearchOpen x-refsearchButton > svg xmlnshttp://www.w3.org/2000/svg fillcurrentColor viewBox0 0 20 20 classw-6 h-6 hover:text-primary-lighter width25 height25 aria-hiddentrue>path fill-ruleevenodd dM8 4a4 4 0 1 0 0 8 4 4 0 0 0 0-8ZM2 8a6 6 0 1 1 10.89 3.476l4.817 4.817a1 1 0 0 1-1.414 1.414l-4.816-4.816A6 6 0 0 1 2 8Z clip-ruleevenodd/>/svg> /button> !--Customer Icon & Dropdown--> div classrelative inline-block x-datainitCustomerData() @keyup.escapeisOpen false @private-content-loaded.windowreceiveCustomerData($event.detail.data)> button typebutton idcustomer-menu classblock text-white hover:text-primary-lighter @clickisOpen !isOpen @click.outsideisOpen false :aria-expandedisOpen aria-labelSign In aria-haspopuptrue > svg xmlnshttp://www.w3.org/2000/svg fillcurrentColor viewBox0 0 20 20 classh-6 w-6 hidden lg:block mx-auto width20 height20 aria-hiddentrue>path fill-ruleevenodd dM18 10a8 8 0 1 1-16 0 8 8 0 0 1 16 0Zm-6-3a2 2 0 1 1-4 0 2 2 0 0 1 4 0Zm-2 4a5 5 0 0 0-4.546 2.916A5.986 5.986 0 0 0 10 16a5.986 5.986 0 0 0 4.546-2.084A5 5 0 0 0 10 11Z clip-ruleevenodd/>/svg> svg xmlnshttp://www.w3.org/2000/svg width24 height24 viewBox0 0 24 24 fillnone classhover:text-primary-lighter lg:hidden> path dM5.121 17.804C7.21942 16.6179 9.58958 15.9963 12 16C14.5 16 16.847 16.655 18.879 17.804M15 10C15 10.7956 14.6839 11.5587 14.1213 12.1213C13.5587 12.6839 12.7956 13 12 13C11.2044 13 10.4413 12.6839 9.87868 12.1213C9.31607 11.5587 9 10.7956 9 10C9 9.20435 9.31607 8.44129 9.87868 7.87868C10.4413 7.31607 11.2044 7 12 7C12.7956 7 13.5587 7.31607 14.1213 7.87868C14.6839 8.44129 15 9.20435 15 10ZM21 12C21 13.1819 20.7672 14.3522 20.3149 15.4442C19.8626 16.5361 19.1997 17.5282 18.364 18.364C17.5282 19.1997 16.5361 19.8626 15.4442 20.3149C14.3522 20.7672 13.1819 21 12 21C10.8181 21 9.64778 20.7672 8.55585 20.3149C7.46392 19.8626 6.47177 19.1997 5.63604 18.364C4.80031 17.5282 4.13738 16.5361 3.68508 15.4442C3.23279 14.3522 3 13.1819 3 12C3 9.61305 3.94821 7.32387 5.63604 5.63604C7.32387 3.94821 9.61305 3 12 3C14.3869 3 16.6761 3.94821 18.364 5.63604C20.0518 7.32387 21 9.61305 21 12Z strokewhite stroke-width2.08333 stroke-linecapround stroke-linejoinround/> /svg> span classhidden lg:block label text-sm !whitespace-nowrap> Sign In /span> /button> nav classabsolute right-0 z-30 w-64 py-2 mt-2 -mr-4 px-1 overflow-auto origin-top-right rounded-sm shadow-lg lg:mt-3 bg-white x-cloak x-showisOpen aria-labelledbycustomer-menu @click.outsideisOpen false > a idcustomer.header.sign.in.link classblock px-4 py-2 lg:px-5 lg:py-2 hover:bg-gray-100 onclickhyva.setCookie && hyva.setCookie( login_redirect, window.location.href, 1 ) hrefhttps://defendcellcamqa.com/customer/account/index/ titleSign In> Sign In/a> a idcustomer.header.register.link classblock px-4 py-2 lg:px-5 lg:py-2 hover:bg-gray-100 hrefhttps://defendcellcamqa.com/customer/account/create/ titleCreate an Account > Create an Account /a> /nav>/div>script> use strict; function initCustomerData() { return { customer: false, tactacam: false, isOpen: false, init() { hyva.setCookie(mage-cache-sessid, , -1, true); // window.dispatchEvent(new CustomEvent(reload-customer-section-data)); }, receiveCustomerData({customer, tactacam} data) { this.customer customer; this.tactacam tactacam; } } }/script> !--Cart Icon--> button idmenu-cart-icon classrelative inline-block no-underline text-white hover:text-primary-lighter x-refcartButton :aria-disabledisCartEmpty() titleCart @click.prevent.stop() > { $dispatch(toggle-cart, { isOpen: true }) } @toggle-cart.windowtoggleCart($event) :aria-expandedisCartOpen aria-haspopupdialog > span classsr-only label x-text` Toggle minicart, ${isCartEmpty() ? Cart is empty : hyva.str( You have %1 product%2 in your cart., cart.summary_count, cart.summary_count 1 ? : s )}` >/span> svg xmlnshttp://www.w3.org/2000/svg fillcurrentColor viewBox0 0 20 20 classh-6 w-6 hidden lg:block hover:text-primary-lighter mx-auto width20 height20 roleimg>path dM3 1a1 1 0 0 0 0 2h1.22l.305 1.222a.997.997 0 0 0 .01.042l1.358 5.43-.893.892C3.74 11.846 4.632 14 6.414 14H15a1 1 0 0 0 0-2H6.414l1-1H14a1 1 0 0 0 .894-.553l3-6A1 1 0 0 0 17 3H6.28l-.31-1.243A1 1 0 0 0 5 1H3ZM16 16.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0ZM6.5 18a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z/>title>shopping-cart/title>/svg> svg xmlnshttp://www.w3.org/2000/svg width24 height24 viewBox0 0 24 24 fillnone classlg:hidden hover:text-primary-lighter> path dM1 1.00006L1.5 1V1C1.72586 1.00001 1.83878 1.00001 1.94018 1.00689C3.12785 1.08748 4.15552 1.86267 4.55926 2.98252C4.59373 3.07812 4.62476 3.1867 4.6868 3.40387L4.85714 4.00006M4.85714 4.00006L6.67378 10.3583C7.14917 12.0222 7.38687 12.8541 7.87213 13.4716C8.30044 14.0166 8.86305 14.441 9.50478 14.7031C10.2318 15.0001 11.0971 15.0001 12.8275 15.0001H15.1117C16.8624 15.0001 17.7377 15.0001 18.4706 14.6976C19.1174 14.4307 19.6829 13.9988 20.1106 13.445C20.5953 12.8175 20.8256 11.973 21.2862 10.284L21.3465 10.063C21.9086 8.00171 22.1897 6.97105 21.9513 6.15698C21.7425 5.44374 21.2763 4.8334 20.6432 4.44424C19.9205 4.00006 18.8522 4.00006 16.7156 4.00006H4.85714ZM12 20C12 21.1046 11.1046 22 10 22C8.89543 22 8 21.1046 8 20C8 18.8954 8.89543 18 10 18C11.1046 18 12 18.8954 12 20ZM20 20C20 21.1046 19.1046 22 18 22C16.8954 22 16 21.1046 16 20C16 18.8954 16.8954 18 18 18C19.1046 18 20 18.8954 20 20Z strokewhite stroke-width1.5 stroke-linecapround stroke-linejoinround/> /svg> span classhidden lg:block label text-sm> Cart /span> span x-textcart.summary_count x-show!isCartEmpty() x-cloak class absolute top-0 right-0 h-5 px-2 py-1 -mt-5 -mr-4 text-xs font-semibold leading-none text-center text-white uppercase transform -translate-x-1 translate-y-1/2 rounded-full bg-primary aria-hiddentrue >/span> /button> nav x-datainitMenuMobile_692b8442a3658() @load.windowsetActiveMenuItem(document.querySelector(#mobile-nav-accordion)) @keydown.window.escapecloseMenu() classnav-mobile flex items-center z-30 order-4 navigation lg:hidden aria-labelSite navigation rolenavigation> !-- mobile --> button x-refmobileMenuTrigger @clickopenMenu() :class{overflow-x-hidden overflow-y-auto fixed top-0 left-0 w-full : open} typebutton aria-labelOpen menu aria-haspopupmenu :aria-expandedopen x-show!open x-transition > svg xmlnshttp://www.w3.org/2000/svg fillnone strokecurrentColor viewBox0 0 24 24 classtext-white hover:text-primary-lighter width24 height24 :class{ hidden : open, block: !open } aria-hiddentrue>path stroke-linecapround stroke-linejoinround stroke-width2 dM4 6h16M4 12h16M4 18h16/>/svg> /button> div x-refmobileMenuNavLinks classfixed bg-primary-darker text-white right-0 top-0 w-full h-full flex flex-col overflow-y-auto overflow-x-hidden hidden :class{ hidden : !open } :aria-hiddenopen ? false : true roledialog aria-modaltrue > div classflex justify-between items-center px-4 pt-6> a classblock hover:text-primary-lighter max-w-162px hrefhttps://defendcellcamqa.com/ > img classw-full srchttps://defendcellcamqa.com/media/logo/stores/28/defend_logo.png altmobile menu home link /> /a> button @clickcloseMenu() aria-labelClose menu typebutton > svg xmlnshttp://www.w3.org/2000/svg fillnone strokecurrentColor viewBox0 0 24 24 classhidden text-white width24 height24 :class{ hidden : !open, block: open } aria-hiddentrue>path stroke-linecapround stroke-linejoinround stroke-width2 dM6 18 18 6M6 6l12 12/>/svg> /button> /div> ul classflex flex-col mt-8 aria-labelSite navigation links > style>.cmsb369-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.cmsb369-pointer-events-none{pointer-events:none}.cmsb369-\!pointer-events-auto{pointer-events:auto !important}.cmsb369-\!visible{visibility:visible !important}.cmsb369-absolute{position:absolute}.cmsb369-relative{position:relative}.cmsb369-left-0{left:0}.cmsb369-right-0{right:0}.cmsb369-z-10{z-index:10}.cmsb369--ml-6{margin-left:-1.5rem}.cmsb369-ml-4{margin-left:1rem}.cmsb369-block{display:block}.cmsb369-flex{display:flex}.cmsb369-hidden{display:none}.cmsb369-w-full{width:100%}.cmsb369-w-max{width:max-content}.cmsb369-rotate-0{--tw-rotate:0deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cmsb369-rotate-180{--tw-rotate:180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cmsb369-transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cmsb369-cursor-pointer{cursor:pointer}.cmsb369-flex-col{flex-direction:column}.cmsb369-items-center{align-items:center}.cmsb369-justify-between{justify-content:space-between}.cmsb369-gap-7{gap:1.75rem}.cmsb369-space-y-1>:not(hidden)~:not(hidden){--tw-space-y-reverse:0;margin-top:calc(.25rem*calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem*var(--tw-space-y-reverse))}.cmsb369-divide-y>:not(hidden)~:not(hidden){--tw-divide-y-reverse:0;border-top-width:calc(1px*calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px*var(--tw-divide-y-reverse))}.cmsb369-overflow-hidden{overflow:hidden}.cmsb369-whitespace-nowrap{white-space:nowrap}.cmsb369-rounded-b-\10px\{border-bottom-right-radius:10px;border-bottom-left-radius:10px}.cmsb369-border-t{border-top-width:1px}.cmsb369-bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.cmsb369-p-10{padding:2.5rem}.cmsb369-p-3{padding:.75rem}.cmsb369-px-6{padding-left:1.5rem;padding-right:1.5rem}.cmsb369-py-2{padding-top:.5rem;padding-bottom:.5rem}.cmsb369-pb-3{padding-bottom:.75rem}.cmsb369-pl-3{padding-left:.75rem}.cmsb369-pr-10{padding-right:2.5rem}.cmsb369-text-lg{font-size:1.125rem;line-height:1.75rem}.cmsb369-text-xl{font-size:1.25rem;line-height:1.75rem}.cmsb369-font-bold{font-weight:700}.cmsb369-font-normal{font-weight:400}.cmsb369-font-semibold{font-weight:600}.cmsb369-text-current{color:currentColor}.cmsb369-text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.cmsb369-\!opacity-100{opacity:1 !important}.cmsb369-opacity-0{opacity:0}.cmsb369-shadow-\0_2px_3px_0_\#10101033\{--tw-shadow:0 2px 3px 0 #10101033;--tw-shadow-colored:0 2px 3px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.cmsb369-transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.cmsb369-transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.cmsb369-duration-300{transition-duration:.3s}.cmsb369-hover\:text-primary:hover{--tw-text-opacity:1;color:rgb(89 128 0/var(--tw-text-opacity))}@media (min-width:1024px){.cmsb369-lg\:block{display:block}.cmsb369-lg\:hidden{display:none}}/style>div data-content-typehtml data-appearancedefault data-elementmain data-decodedtrue>!-- DESKTOP MENU -->!-- Cameras -->li x-data{ hoverPanelActiveId: null } classcmsb369-relative level-0 cmsb369-hidden cmsb369-lg:block cmsb369-pr-10 @mouseenterhoverPanelActiveId cameras @mouseleavehoverPanelActiveId null @keyup.escapehoverPanelActiveId null @click.away.debounce.100msresetValues(cameras)> span classcmsb369-flex cmsb369-items-center cmsb369-py-2 cmsb369-text-xl cmsb369-font-bold> button typebutton data-sr-button-idcameras classcmsb369-w-full cmsb369-py-2 cmsb369-text-xl level-0 :aria-expandedhoverPanelActiveId cameras ? true : false @clickopenMenuOnClick($event, cameras); data-item-menucameras data-db-click0 data-child-data1 aria-expandedfalse > Cameras span classcmsb369-sr-only>Show submenu for Cameras/span> /button> /span> div classdropdown-menu cmsb369-absolute cmsb369-z-10 cmsb369-transition-all cmsb369-p-10 cmsb369--ml-6 cmsb369-left-0 cmsb369-w-max cmsb369-rounded-b-10px cmsb369-overflow-hidden cmsb369-bg-white cmsb369-shadow-0_2px_3px_0_#10101033 cmsb369-border-t border-container-testim cmsb369-opacity-0 cmsb369-pointer-events-none :class{ cmsb369-opacity-0 cmsb369-pointer-events-none : hoverPanelActiveId ! cameras, cmsb369-!opacity-100 cmsb369-!pointer-events-auto cmsb369-!visible : hoverPanelActiveId cameras } > ul classcmsb369-flex cmsb369-flex-col cmsb369-gap-7 ul-column-count> li> a hrefhttps://defendcellcamqa.com/security-cameras/ titleSecurity Cameras classcmsb369-flex cmsb369-w-full cmsb369-whitespace-nowrap cmsb369-text-lg cmsb369-hover:text-primary cmsb369-font-normal @keyup.escape$nextTick(() > document.querySelector(data-sr-button-idcameras).focus()) > Security Cameras /a> /li> li> a hrefhttps://defendcellcamqa.com/security/defend-deals/ titleHoliday Deals classcmsb369-flex cmsb369-w-full cmsb369-whitespace-nowrap cmsb369-text-lg cmsb369-hover:text-primary cmsb369-font-normal @keyup.escape$nextTick(() > document.querySelector(data-sr-button-idcameras).focus()) > DEFEND Deals /a> /li> /ul> /div>/li>li classcmsb369-relative level-0 cmsb369-pr-10 cmsb369-hidden cmsb369-lg:block @mouseenterhoverPanelActiveId category-node-56 @mouseleavehoverPanelActiveId 0 @keyup.escapehoverPanelActiveId 0 @click.away.debounce.100msresetValues(category-node-56)> span classcmsb369-flex cmsb369-items-center cmsb369-py-2 cmsb369-text-xl cmsb369-font-bold> a classcmsb369-w-full cmsb369-py-2 cmsb369-text-xl level-0 hrefhttps://defendcellcamqa.com/security-accessories/ titleAccessories @focushoverPanelActiveId 0> Accessories /a> /span>/li>li classcmsb369-relative level-0 cmsb369-pr-10 cmsb369-hidden cmsb369-lg:block @mouseenterhoverPanelActiveId category-node-56 @mouseleavehoverPanelActiveId 0 @keyup.escapehoverPanelActiveId 0 @click.away.debounce.100msresetValues(category-node-56)> span classcmsb369-flex cmsb369-items-center cmsb369-py-2 cmsb369-text-xl cmsb369-font-bold> a classcmsb369-w-full cmsb369-py-2 cmsb369-text-xl level-0 hrefhttps://defendcellcamqa.com/defend-app-plan/ titleApp & Subscriptions @focushoverPanelActiveId 0> App & Subscriptions /a> /span>/li> !-- Explore -->li x-data{ hoverPanelActiveId: null } classcmsb369-relative level-0 cmsb369-hidden cmsb369-lg:block cmsb369-pr-10 @mouseenterhoverPanelActiveId explore @mouseleavehoverPanelActiveId null @keyup.escapehoverPanelActiveId null @click.away.debounce.100msresetValues(explore)> span classcmsb369-flex cmsb369-items-center cmsb369-py-2 cmsb369-text-xl cmsb369-font-bold> button typebutton data-sr-button-idexplore classcmsb369-w-full cmsb369-py-2 cmsb369-text-xl level-0 :aria-expandedhoverPanelActiveId explore ? true : false @clickopenMenuOnClick($event, explore); data-item-menuexplore data-db-click0 data-child-data1 aria-expandedfalse > Explore DEFEND span classcmsb369-sr-only>Show submenu for Explore DEFEND/span> /button> /span> div classdropdown-menu cmsb369-absolute cmsb369-z-10 cmsb369-transition-all cmsb369-p-10 cmsb369--ml-6 cmsb369-left-0 cmsb369-w-max cmsb369-rounded-b-10px cmsb369-overflow-hidden cmsb369-bg-white cmsb369-shadow-0_2px_3px_0_#10101033 cmsb369-border-t border-container-testim cmsb369-opacity-0 cmsb369-pointer-events-none :class{ cmsb369-opacity-0 cmsb369-pointer-events-none : hoverPanelActiveId ! explore, cmsb369-!opacity-100 cmsb369-!pointer-events-auto cmsb369-!visible : hoverPanelActiveId explore } > ul classcmsb369-flex cmsb369-flex-col cmsb369-gap-7 ul-column-count> li> a hrefhttps://defendcellcamqa.com/security-videos/ titleVideo Gallery classcmsb369-flex cmsb369-w-full cmsb369-whitespace-nowrap cmsb369-text-lg cmsb369-hover:text-primary cmsb369-font-normal @keyup.escape$nextTick(() > document.querySelector(data-sr-button-idexplore).focus()) > Video Gallery /a> /li> li> a hrefhttps://defendcellcamqa.com/security-blog/ titleBlog classcmsb369-flex cmsb369-w-full cmsb369-whitespace-nowrap cmsb369-text-lg cmsb369-hover:text-primary cmsb369-font-normal @keyup.escape$nextTick(() > document.querySelector(data-sr-button-idexplore).focus()) > Blog /a> /li> /ul> /div>/li>!-- Help Center -->li x-data{ hoverPanelActiveId: null } classcmsb369-relative level-0 cmsb369-hidden cmsb369-lg:block cmsb369-pr-10 @mouseenterhoverPanelActiveId help @mouseleavehoverPanelActiveId null @keyup.escapehoverPanelActiveId null @click.away.debounce.100msresetValues(help)> span classcmsb369-flex cmsb369-items-center cmsb369-py-2 cmsb369-text-xl cmsb369-font-bold> button typebutton data-sr-button-idhelp classcmsb369-w-full cmsb369-py-2 cmsb369-text-xl level-0 :aria-expandedhoverPanelActiveId help ? true : false @clickopenMenuOnClick($event, help); data-item-menuhelp data-db-click0 data-child-data1 aria-expandedfalse > Help Center span classcmsb369-sr-only>Show submenu for Help Center/span> /button> /span> div classdropdown-menu cmsb369-absolute cmsb369-z-10 cmsb369-transition-all cmsb369-p-10 cmsb369--ml-6 cmsb369-right-0 cmsb369-w-max cmsb369-rounded-b-10px cmsb369-overflow-hidden cmsb369-bg-white cmsb369-shadow-0_2px_3px_0_#10101033 cmsb369-border-t border-container-testim cmsb369-opacity-0 cmsb369-pointer-events-none :class{ cmsb369-opacity-0 cmsb369-pointer-events-none : hoverPanelActiveId ! help, cmsb369-!opacity-100 cmsb369-!pointer-events-auto cmsb369-!visible : hoverPanelActiveId help } > ul classcmsb369-flex cmsb369-flex-col cmsb369-gap-7 ul-column-count> li> a hrefhttps://defendcellcamqa.com/warranty-returns/ titleShipping, Returns & Warranty classcmsb369-flex cmsb369-w-full cmsb369-whitespace-nowrap cmsb369-text-lg cmsb369-hover:text-primary cmsb369-font-normal @keyup.escape$nextTick(() > document.querySelector(data-sr-button-idhelp).focus()) > Shipping, Returns & Warranty /a> /li> li> a hrefhttps://defendcellcamqa.com/contact-us/ titleCustomer Support classcmsb369-flex cmsb369-w-full cmsb369-whitespace-nowrap cmsb369-text-lg cmsb369-hover:text-primary cmsb369-font-normal @keyup.escape$nextTick(() > document.querySelector(data-sr-button-idhelp).focus()) > Customer Support /a> /li> li> a hrefhttps://tactacam.zendesk.com/hc/en-us/sections/27598389339035-General-FAQs titleFAQs classcmsb369-flex cmsb369-w-full cmsb369-whitespace-nowrap cmsb369-text-lg cmsb369-hover:text-primary cmsb369-font-normal @keyup.escape$nextTick(() > document.querySelector(data-sr-button-idhelp).focus()) > FAQs /a> /li> li> a hrefhttps://tactacam.zendesk.com/hc/en-us/sections/38149376220571-DEFEND titleManuals classcmsb369-flex cmsb369-w-full cmsb369-whitespace-nowrap cmsb369-text-lg cmsb369-hover:text-primary cmsb369-font-normal @keyup.escape$nextTick(() > document.querySelector(data-sr-button-idhelp).focus()) > Manuals /a> /li> /ul> /div>/li>!-- MOBILE MENU -->div x-datainitMobileNavAccordion() x-refaccordion classcmsb369-divide-y cmsb369-lg:hidden cmsb369-px-6 cmsb369-text-lg cmsb369-font-bold idmobile-nav-accordion> !-- Cameras --> details idcameras :opensectionItemIsOpen(cameras) > summary @click.preventopenSectionItem(cameras) classcmsb369-p-3 cmsb369-cursor-pointer cmsb369-flex cmsb369-items-center cmsb369-justify-between cmsb369-font-semibold > span>Cameras/span> span :classsectionItemIsOpen(cameras) ? rotate-180 transform transition-transform duration-300 : transform rotate-0 > svg xmlnshttp://www.w3.org/2000/svg fillcurrentColor viewbox0 0 20 20 classcmsb369-text-current width24 height24 roleimg>path fill-ruleevenodd dM5.293 7.293a1 1 0 0 1 1.414 0L10 10.586l3.293-3.293a1 1 0 1 1 1.414 1.414l-4 4a1 1 0 0 1-1.414 0l-4-4a1 1 0 0 1 0-1.414Z clip-ruleevenodd>/path>title>heroicons/solid/chevron-down/title>/svg> /span> /summary> nav x-showsectionItemIsOpen(cameras) classcmsb369-ml-4 cmsb369-pb-3 cmsb369-pl-3 cmsb369-space-y-1 > a classcmsb369-block cmsb369-text-white hrefhttps://defendcellcamqa.com/security-cameras/ classcmsb369-block>Security Cameras/a> a classcmsb369-block cmsb369-text-white hrefhttps://defendcellcamqa.com/security/defend-deals/ classcmsb369-block>DEFEND Deals/a> /nav> /details> a classcmsb369-block cmsb369-text-white cmsb369-p-3 hrefhttps://defendcellcamqa.com/security-accessories/ classcmsb369-block>Accessories/a> a classcmsb369-block cmsb369-text-white cmsb369-p-3 hrefhttps://defendcellcamqa.com/defend-app-plan/ classcmsb369-block>App & Subscriptions/a> !-- Explore --> details idexplore :opensectionItemIsOpen(explore) > summary @click.preventopenSectionItem(explore) classcmsb369-p-3 cmsb369-cursor-pointer cmsb369-flex cmsb369-items-center cmsb369-justify-between cmsb369-font-semibold > span>Explore DEFEND/span> span :classsectionItemIsOpen(explore) ? rotate-180 transform transition-transform duration-300 : transform rotate-0 > svg xmlnshttp://www.w3.org/2000/svg fillcurrentColor viewbox0 0 20 20 classcmsb369-text-current width24 height24 roleimg>path fill-ruleevenodd dM5.293 7.293a1 1 0 0 1 1.414 0L10 10.586l3.293-3.293a1 1 0 1 1 1.414 1.414l-4 4a1 1 0 0 1-1.414 0l-4-4a1 1 0 0 1 0-1.414Z clip-ruleevenodd>/path>title>heroicons/solid/chevron-down/title>/svg> /span> /summary> nav x-showsectionItemIsOpen(explore) classcmsb369-ml-4 cmsb369-pb-3 cmsb369-pl-3 cmsb369-space-y-1 > a classcmsb369-block cmsb369-text-white hrefhttps://defendcellcamqa.com/security-videos/ classcmsb369-block>Video Gallery/a> a classcmsb369-block cmsb369-text-white hrefhttps://defendcellcamqa.com/security-blog/ classcmsb369-block>Blog/a> /nav> /details> !-- Help Center --> details idhelp-center :opensectionItemIsOpen(help-center) > summary @click.preventopenSectionItem(help-center) classcmsb369-p-3 cmsb369-cursor-pointer cmsb369-flex cmsb369-items-center cmsb369-justify-between cmsb369-font-semibold > span>Help Center/span> span :classsectionItemIsOpen(help-center) ? rotate-180 transform transition-transform duration-300 : transform rotate-0 > svg xmlnshttp://www.w3.org/2000/svg fillcurrentColor viewbox0 0 20 20 classcmsb369-text-current width24 height24 roleimg>path fill-ruleevenodd dM5.293 7.293a1 1 0 0 1 1.414 0L10 10.586l3.293-3.293a1 1 0 1 1 1.414 1.414l-4 4a1 1 0 0 1-1.414 0l-4-4a1 1 0 0 1 0-1.414Z clip-ruleevenodd>/path>title>heroicons/solid/chevron-down/title>/svg> /span> /summary> nav x-showsectionItemIsOpen(help-center) classcmsb369-ml-4 cmsb369-pb-3 cmsb369-pl-3 cmsb369-space-y-1 > a classcmsb369-block cmsb369-text-white hrefhttps://defendcellcamqa.com/warranty-returns/ classcmsb369-block>Shipping, Returns & Warranty/a> a classcmsb369-block cmsb369-text-white hrefhttps://defendcellcamqa.com/contact-us/ classcmsb369-block>Customer Support/a> a classcmsb369-block cmsb369-text-white hrefhttps://tactacam.zendesk.com/hc/en-us/sections/27598389339035-General-FAQs classcmsb369-block>FAQs/a> a classcmsb369-block cmsb369-text-white hrefhttps://tactacam.zendesk.com/hc/en-us/sections/38149376220571-DEFEND classcmsb369-block>Manuals/a> /nav> /details>/div>script> function initMobileNavAccordion() { return { items: , currentOpen: null, openSectionItem(id) { this.currentOpen this.sectionItemIsOpen(id) ? null : id; }, sectionItemIsOpen(id) { return this.currentOpen id; }, } }/script>style> div.nav-desktop nav > ul { justify-content: space-evenly; }/style>/div> /ul> !-- Brand Family Banner --> !-- Mobile Nav Portal Component --> div classportal-component fixed w-full bottom-0 left-0 flex items-center justify-center md:justify-evenly lg:justify-end space-x-4 px-3 py-3 lg:py-0 mt-3 md:mt-4 lg:mt-0 bg-#252525 lg:bg-transparent > div classstore-locator-mobile text-xs inline-block lg:hidden> a href/where-to-buy classtext-white hover:text-primary-lighter> Store Locator /a> /div> div> a classtext-xs bg-primary-lighter text-secondary font-bold rounded-50px py-2 px-4 sm:px-8 hrefhttps://account.defendcellcamqa.com/ aria-labelDEFEND Web Portal > DEFEND Web Portal /a> /div> /div> /div>/nav>script> use strict; const initMenuMobile_692b8442a3658 () > { return { mobilePanelActiveId: null, mobilePanelActiveIdSub: null, open: false, hideParent: false, setActiveMenuItem(menuNode) { const links Array.from(menuNode.querySelectorAll(a)); links .filter(link > { const winLocHref window.location.href.split(?)0; const menuLink link.hreflink.href.length - 1 / && winLocHrefwinLocHref.length - 1 ! / ? link.href.slice(0, -1) : link.href; return menuLink winLocHref; }) .forEach(item > { item.classList.forEach(cssClass > { if (cssClass.endsWith(text-white)) { item.classList.remove(cssClass); } }); item.classList.add(text-primary-lighter); const detailsElement item.closest(details); if (detailsElement) { detailsElement.classList.add(text-primary-lighter); } }); }, openMenu() { this.open true this.$nextTick(() > hyva.trapFocus(this.$refsmobileMenuNavLinks)); // Prevent from body scrolling while mobile menu opened document.body.style.position fixed; }, closeMenu() { document.body.style.position ; if (this.open) { this.$nextTick(() > this.$refsmobileMenuTrigger.focus() || hyva.releaseFocus()); } this.open false this.mobilePanelActiveId null }, openSubcategory(index) { const menuNodeRef document.querySelector(data-child-id + index + ) this.mobilePanelActiveId this.mobilePanelActiveId index ? 0 : index this.$nextTick(() > hyva.trapFocus(menuNodeRef)) }, backToMainCategories(index) { const menuNodeRef document.querySelector(data-child-id + index + ) this.mobilePanelActiveId 0 this.$nextTick(() > { hyva.trapFocus(this.$refsmobileMenuNavLinks) menuNodeRef?.querySelector(a)?.focus() }) } } }/script> /div> !--Search Component--> div classsearch-component py-0 lg:px-6 xl:px-12 md:mt-4 lg:mt-0> div classheader-search> div classlg:!block idsearch-content x-cloak x-showsearchOpen @click.outsidesearchOpen false @keydown.escapesearchOpen false; $refs.searchButton.focus(); > script> function initMiniSearchComponent() { use strict; return { show:false, formSelector: #search_mini_form, url: https://defendcellcamqa.com/search/ajax/suggest/, destinationSelector: #search_autocomplete, templates: {term:{title:Search terms,template:Hyva_SmileElasticsuite::core\/autocomplete\/term.phtml},product:{title:Products,template:Hyva_SmileElasticsuite::catalog\/autocomplete\/product.phtml},category:{title:Categories,template:Hyva_SmileElasticsuite::catalog\/autocomplete\/category.phtml},product_attribute:{title:Attributes,template:Hyva_SmileElasticsuite::catalog\/autocomplete\/product_attribute.phtml,titleRenderer:renderEsAutocompleteTitleAttribute},cms_page:{title:Pages,template:Hyva_SmileElasticsuite::cms-search\/autocomplete\/cms.phtml}}, priceFormat: {pattern:$%s,precision:2,requiredPrecision:2,decimalSymbol:.,groupSymbol:,,groupLength:3,integerRequired:false}, minSearchLength: 2, searchResultsByType: {}, currentRequest: null, /** * Get search results. */ getSearchResults: function () { let value document.querySelector(#search).value.trim(); if (value.length parseInt(this.minSearchLength, 10)) { this.searchResultsByType ; this.show false; return false; } let url this.url + ? + new URLSearchParams({ q: document.querySelector(#search).value, _: Date.now() }).toString(); if (this.currentRequest ! null) { this.currentRequest.abort(); } this.currentRequest new AbortController(); fetch(url, { method: GET, signal: this.currentRequest.signal, }).then((response) > { if (response.ok) { return response.json(); } }).then((data) > { this.show data.length > 0; this.searchResultsByType data.reduce((acc, result) > { if (! accresult.type) accresult.type ; accresult.type.push(result); return acc; }, {}); }).catch((error) > { ; }); }, } }/script>div idsearch-content x-showtrue> div classrelative z-30 flex px-4 pt-4 md:py-0 mx-auto text-black x-datainitMiniSearchComponent() @click.awayshow false> form classform minisearch flex-1 idsearch_mini_form actionhttps://defendcellcamqa.com/catalogsearch/result/ methodget rolesearch> div classrelative flex w-full> label classsr-only forsearch> Search entire store here... /label> input idsearch x-on:input.debouncegetSearchResults() x-refsearchInput typesearch requiredrequired classw-full py-2 lg:px-4 leading-normal border-gray-darker rounded-full transition appearance-none text-grey placeholder-gray-400 focus:ring-offset-0 focus:ring-0 focus:ring-transparent focus:outline-none focus:shadow-none autocapitalizeoff autocompleteoff autocorrectoff nameq value placeholderSearch for products … maxlength128 @search-open.window.debounce.10 $el.focus(); $el.select(); /> button typesubmit classinline-block no-underline mx-2.5 lg:mr-0 text-#1010104d absolute top-3 right-2 lg:right-4 lg:top-2 aria-labelSubmit Search > svg xmlnshttp://www.w3.org/2000/svg fillnone strokecurrentColor viewBox0 0 24 24 classw-5 h-5 md:h-6 md:w-6 hover:text-primary-lighter width25 height25 aria-hiddentrue>path stroke-linecapround stroke-linejoinround stroke-width2 dm21 21-6-6m2-5a7 7 0 1 1-14 0 7 7 0 0 1 14 0Z/>/svg> /button> /div> div idsearch_autocomplete classsearch-autocomplete relative w-full x-showshow styledisplay:none;> div classabsolute bg-white border border-solid border-container z-50 w-full> ul classp-2> template x-forsearchResultByType in Object.values(searchResultsByType)> li classmb-2> template x-ifsearchResultByType.hasOwnProperty(0) && templatessearchResultByType0.type.title && templatessearchResultByType0.type.titleRenderer undefined> div classfont-bold py-1 px-1 bg-gray-lighter text-center x-texttemplatessearchResultByType0.type.title>/div> /template> template x-ifsearchResultByType.hasOwnProperty(0) && templatessearchResultByType0.type.titleRenderer ! undefined> div classfont-bold py-1 px-1 bg-gray-lighter text-center x-textwindowtemplatessearchResultByType0.type.titleRenderer(searchResultByType)>/div> /template> template x-forsearchResult in searchResultByType> div classhover:bg-gray-100> template x-ifsearchResult.type term> a classw-full block p-2 x-bind:hrefhttps://defendcellcamqa.com/catalogsearch/result/?q + searchResult.title :titlesearchResult.title> span classtext-sm x-textsearchResult.title>/span> span classtext-sm x-text( + searchResult.num_results + )>/span> /a>/template> template x-ifsearchResult.type product> a classw-full block :hrefsearchResult.url :titlesearchResult.title> div classgrid grid-cols-4 gap-4 p-3> div> img :srcsearchResult.image classinline-block /> /div> div classcol-span-3> span classtext-sm x-textsearchResult.title>/span> span classtext-sm font-bold x-htmlsearchResult.price>/span> /div> /div> /a>/template> template x-ifsearchResult.type category> a classw-full block p-2 :hrefsearchResult.url :titlesearchResult.title> span classtext-sm italic block text-gray-500 x-textsearchResult.breadcrumb.join( > ).concat( > )>/span> span classtext-sm x-textsearchResult.title>/span> /a>/template> template x-ifsearchResult.type product_attribute> a classw-full block p-2 :hrefsearchResult.url :titlesearchResult.title> span classtext-sm x-textsearchResult.title>/span> span classtext-xs uppercase text-gray-500 x-textsearchResult.attribute_label stylevertical-align: super;>/span> /a>/template>script> function renderEsAutocompleteTitleAttribute(data) { data data.filter(function(item) { return item.type product_attribute; }).map(function(item) { return itemattribute_label }).reduce(function(prev, item) { if (item in prev) { previtem++; } else { previtem 1; } return prev; }, {}); data Object.entries(data).sort(function(item1, item2) { return item21 - item11 }).map(function(item) {return item0}); if (data.length > 2) { data data.slice(0, 2); data.push(...); } return data.join(, ); }/script> template x-ifsearchResult.type cms_page> a classw-full block p-2 :hrefsearchResult.url :titlesearchResult.title> span classtext-sm x-textsearchResult.title>/span> /a>/template> /div> /template> /li> /template> /ul> /div> /div> /form> button @clicksearchOpen false classtext-white flex items-center ml-2 lg:hidden > svg xmlnshttp://www.w3.org/2000/svg fillnone strokecurrentColor viewBox0 0 24 24 width32 height32 roleimg>path stroke-linecapround stroke-linejoinround stroke-width2 dM6 18 18 6M6 6l12 12/>title>x/title>/svg> /button> /div>/div> /div> /div> /div> !-- Portal Component --> div classportal-component relative flex items-center justify-center md:justify-evenly lg:justify-end space-x-4 px-3 py-3 md:py-4 lg:py-0 mt-4 md:mt-3 lg:mt-0 bg-#252525 lg:bg-transparent > div classstore-locator-mobile text-xs inline-block lg:hidden> a href/where-to-buy classtext-white hover:text-primary-lighter> Store Locator /a> /div> div> a classtext-xs bg-primary-lighter text-secondary font-bold rounded-50px py-2 px-4 sm:px-8 hrefhttps://account.defendcellcamqa.com/ aria-labelLogin to DEFEND App > Login to DEFEND App /a> /div> /div> /div> !--Cart Drawer--> script> function initCartDrawer() { return { open: false, isLoading: false, cart: {}, maxItemsToDisplay: 10, itemsCount: 0, totalCartAmount: 0, totalDiscountedAmount : 0, // shows price in span tag. actionName : cms_index_index, showCouponForm: true, formData: { coupon_code: , remove: false }, updateFormData(data) { this.formData.remove (typeof data.cart.coupon_code undefined || data.cart.coupon_code null) ? 0 : 1; this.formData.coupon_code (typeof data.cart.coupon_code undefined || data.cart.coupon_code null) ? : data.cart.coupon_code; this.showCouponForm (typeof data.cart.coupon_code undefined || data.cart.coupon_code null) ? false: true; }, getData(data) { if (data.cart) { this.cart data.cart; this.itemsCount data.cart.items && data.cart.items.length || 0; this.totalCartAmount this.cart.summary_count; this.totalDiscountedAmount data.cart.discount_amount; this.setCartItems(); this.updateFormData(data); } this.isLoading false; }, postCart(form){ if (!form.action) { return; } this.isLoading true; const action form.action; const formData new FormData(form); if (!formData.uenc) { formData.append(uenc, hyva.getUenc()); } formData.append(form_key, hyva.getFormKey()); window.fetch(action, { method: POST, body: formData }).then((result) > { return result.text() }).then((content) > { hyva.replaceDomElement(.page.messages, content); // to update messages on #main-content. this.isLoading false; }).catch((error) > { console.error(error); typeof window.dispatchMessages ! undefined && window.dispatchMessages( { type: error, text: Something\u0020went\u0020wrong.\u0020Please\u0020try\u0020again. }, 10000 ); this.isLoading false; }) }, cartItems: , getItemCountTitle() { return hyva.strf(\u00250\u0020of\u0020\u00251\u0020products\u0020in\u0020cart\u0020displayed, this.maxItemsToDisplay, this.totalCartAmount) }, setCartItems() { this.cartItems this.cart.items && this.cart.items.sort((a, b) > b.item_id - a.item_id) || ; if (this.maxItemsToDisplay > 0) { this.cartItems this.cartItems.slice(0, parseInt(this.maxItemsToDisplay, 10)); } }, deleteItemFromCart(itemId) { this.isLoading true; const formKey hyva.getFormKey(); const postUrl BASE_URL + checkout/sidebar/removeItem/; fetch(postUrl, { headers: { content-type: application/x-www-form-urlencoded; charsetUTF-8, }, body: form_key + formKey + &item_id + itemId, method: POST, mode: cors, credentials: include }).then(response > { if (response.redirected) { window.location.href response.url; } else if (response.ok) { return response.json(); } else { window.dispatchMessages && window.dispatchMessages({ type: warning, text: Could\u0020not\u0020remove\u0020item\u0020from\u0020quote. }); this.isLoading false; } }).then(result > { window.dispatchMessages && window.dispatchMessages({ type: result.success ? success : error, text: result.success ? You\u0020removed\u0020the\u0020item. : result.error_message }, result.success ? 5000 : 0) window.dispatchEvent(new CustomEvent(reload-customer-section-data)); }); }, toggleCartDrawer(event) { if (event.detail && event.detail.isOpen ! undefined) { if (event.detail.isOpen) { this.openCartDrawer() } else { this.open false this.$refs && this.$refs.cartDialogContent && hyva.releaseFocus(this.$refs.cartDialogContent) } } else { this.openCartDrawer() } }, openCartDrawer() { this.open true; this.$nextTick(() > { this.$refs && this.$refs.cartDialogContent && hyva.trapFocus(this.$refs.cartDialogContent) }) }, closeCartDrawer() { this.$dispatch(toggle-cart, { isOpen: false }) }, updateQty(val,id,inc){ this.isLoading true; var cartId id; // Replace with the actual cart ID var newQuantity val; if(inci){ newQuantitynewQuantity+1; } if(incd){ newQuantitynewQuantity-1; } if (val -1 && newQuantity 0 ) { return; // Do not decrement below 0 } if (newQuantity 0) { newQuantity 1; // Set the value to 1 if it is less than 0 } const formKey hyva.getFormKey(); const postUrl BASE_URL + checkout/cart/updatePost; fetch(postUrl, { headers: { content-type: application/x-www-form-urlencoded; charsetUTF-8, }, body: form_key + formKey + &item_id + cartId + &cart + cartId + qty + newQuantity + &update_cart_actionupdate_qty, method: POST, mode: cors, credentials: include }).then((result) > { return result.text(); }).then((content) > { parser new DOMParser(); doc parser.parseFromString(content, text/html); contentNode doc.querySelector(#maincontent); jsonScriptscontentNode.querySelectorAll(scripttype*module); if(jsonScripts.length > 0) { for (let i 0; i jsonScripts.length; i++) { parentNodejsonScriptsi.parentNode; if(parentNode) parentNode.removeChild(jsonScriptsi); } } if(this.actionName.includes(checkout_cart_index) || this.actionName.includes(checkout_index_index)){ hyva.replaceDomElement(#maincontent, doc.documentElement.outerHTML); }else{ hyva.replaceDomElement(#dialog-cart-drawer, doc.documentElement.outerHTML); //Wait for DOM to be fully replaced (for express buttons :- minicart) setTimeout(() > { let mincartExpressElementId document.querySelector(id^stripeExpressPaymentsMiniCartButtonBridgeComponent); if (mincartExpressElementId && window.stripePaymentsExpressHyvaBridge?.expressCheckoutElement) { try { // Mount it again window.stripePaymentsExpressHyvaBridge.expressCheckoutElement.mount(mincartExpressElementId); } catch (e) { console.warn(Stripe remount failed:, e.message); } } }, 100); } }).catch((error) > { console.error(error) typeof window.dispatchMessages ! undefined && window.dispatchMessages( { type: error, text: Something\u0020went\u0020wrong.\u0020Please\u0020try\u0020again. }, 10000 ); }); } } }/script>section x-cloak x-showcart idcart-drawer x-datainitCartDrawer() @private-content-loaded.windowgetData($event.detail.data) @toggle-cart.windowtoggleCartDrawer($event) @keydown.window.escapecloseCartDrawer> div roledialog id dialog-cart-drawer aria-labelledbycart-drawer-title aria-modaltrue :aria-hidden!open classfixed inset-y-0 right-0 z-30 flex max-w-full> div classbackdrop x-showopen x-transition:enterease-in-out duration-500 x-transition:enter-startopacity-0 x-transition:enter-endopacity-100 x-transition:leaveease-in-out duration-500 x-transition:leave-startopacity-100 x-transition:leave-endopacity-0 rolebutton @clickcloseCartDrawer aria-labelClose minicart>/div> div classrelative w-screen max-w-md shadow-2xl x-showopen x-transition:entertransform transition ease-in-out duration-500 sm:duration-700 x-transition:enter-starttranslate-x-full x-transition:enter-endtranslate-x-0 x-transition:leavetransform transition ease-in-out duration-500 sm:duration-700 x-transition:leave-starttranslate-x-0 x-transition:leave-endtranslate-x-full x-refcartDialogContent roleregion :tabindexopen ? 0 : -1 aria-labelMy Cart > div classflex flex-col h-full max-h-screen bg-white shadow-xl> header classrelative px-4 pt-4 pb-3 sm:px-6 border-b border-container-lighter> h2 idcart-drawer-title classtext-4xl font-heading> My Cart span classitems-total text-xs x-showmaxItemsToDisplay && maxItemsToDisplay itemsCount x-textgetItemCountTitle()> /span> /h2> /header> script> function initMiniCartMessages() { use strict; return { minimessages: window.mageMessages || , isEmpty() { return this.minimessages.reduce( function (isEmpty, message) { return isEmpty && message undefined }, true ) }, isMinicartOpened(){ return document.querySelector(.backdrop).style.display ! none; }, removeMessage(messageIndex) { this.minimessagesmessageIndex undefined; }, addMessages(messages, hideAfter) { this.minimessages ; messages.map((message) > { this.minimessages this.minimessages.concat(message); if (hideAfter undefined && message.type success && window.defaultSuccessMessageTimeout) { hideAfter window.defaultSuccessMessageTimeout; } if (hideAfter) { this.setHideTimeOut(this.minimessages?.length -1, hideAfter); } }); }, setHideTimeOut(messageIndex, hideAfter) { setTimeout((messageIndex) > { this.removeMessage(messageIndex); }, hideAfter, messageIndex); }, eventListeners: { @messages-loaded.window(event) { this.addMessages(event.detail.messages, event.detail.hideAfter) }, @private-content-loaded.window(event) { const data event.detail.data; if ( data.messages && data.messages.messages && data.messages.messages.length ) { this.addMessages(data.messages.messages); } }, @clear-messages.window() { this.minimessages ; } } } }/script>section idminimessages x-datainitMiniCartMessages() x-bindeventListeners aria-liveassertive rolealert> template x-if!isEmpty() && isMinicartOpened()> div classw-full> div classmessages container mx-auto px-4 sm:px-6 py-3> template x-for(message, index) in minimessages :keyindex> div> template x-ifmessage> div classmessage :classmessage.type :ui-idmessage- + message.type > span x-htmlmessage.text>/span> button typebutton classtext-gray-600 hover:text-black aria-labelClose message @click.preventremoveMessage(index) > svg xmlnshttp://www.w3.org/2000/svg fillnone strokecurrentColor viewBox0 0 24 24 classstroke-current width18 height18 aria-hiddentrue>path stroke-linecapround stroke-linejoinround stroke-width2 dM6 18 18 6M6 6l12 12/>/svg> /button> /div> /template> /div> /template> /div> /div> /template>/section> template x-if!itemsCount> div classrelative px-4 py-6 bg-white border-bs sm:px-6 border-container> Cart is empty /div> /template> template x-ifitemsCount> div classrelative grid gap-4 px-4 py-6 overflow-y-auto overscroll-y-contain bg-white border-b sm:px-6 border-container > template x-foritem in cartItems> div classflex items-start p-3 -m-3 space-x-4 transition duration-150 ease-in-out hover:rounded-lg hover:bg-gray-100 border-b last:border-b-0> a :hrefitem.product_url classw-1/4 :aria-labelhyva.strf(Product\u0020\u0022\u00250\u0022, item.product_name) > img :srcitem.product_image.src :widthitem.product_image.width :heightitem.product_image.height loadinglazy alt /> /a> div classw-3/4 space-y-2> div> p classtext-xl font-bold> span x-htmlitem.product_name>/span> /p> p classtext-sm>span classfont-semibold>Sku/span>: span x-htmlitem.product_sku>/span>/p> p>span classfont-semibold>Qty/span>: span x-htmlitem.qty>/span>/p> /div> template x-foroption in item.options> div class!mt-0 flex> p classfont-semibold mr-1 x-textoption.label + :>/p> p classtext-secondary x-htmloption.value>/p> /div> /template> p>span x-htmlitem.product_price>/span>/p> template x-ifitem.message> div classbg-container p-1 x-textitem.message>/div> /template> div classborder-grey border-1px inline-block px-2 bg-white> button aria-labelminus typebutton classqty-btn qty-minus @clickupdateQty(item.qty,item.item_id,d,-1) > svg classIcon Icon--minus w-2.5 h-2.5 rolepresentation viewBox0 0 16 2 fill-opacity1 stroke-opacity1> path dM1,1 L15,1 stroke#000000 fillnone fill-ruleevenodd stroke-linecapsquare>/path> /svg> /button> input nameqty :valueitem.qty typetext classform-input border-0 m-0 px-2 py-2 w-16 text-center x-model.numberitem.qty min0 @changeupdateQty(item.qty,item.item_id) /> button typebutton aria-labelplus classqty-btn qty-plus @clickupdateQty(item.qty,item.item_id,i,1) > svg classIcon Icon--plus w-2.5 h-2.5 rolepresentation viewBox0 0 16 16> g strokecurrentColor fillnone fill-ruleevenodd stroke-linecapsquare> path dM8,1 L8,15>/path> path dM1,8 L15,8>/path> /g> /svg> /button> /div> div classflex justify-end> a :hrefitem.configure_url x-showitem.product_type ! grouped classinline-flex p-2 mr-2 hover:text-primary :aria-labelhyva.strf(Edit\u0020product\u0020\u0022\u00250\u0022, item.product_name) > svg xmlnshttp://www.w3.org/2000/svg fillnone strokecurrentColor viewBox0 0 24 24 width20 height20 aria-hiddentrue>path stroke-linecapround stroke-linejoinround stroke-width2 dm15.232 5.232 3.536 3.536m-2.036-5.036a2.5 2.5 0 1 1 3.536 3.536L6.5 21.036H3v-3.572L16.732 3.732Z/>/svg> /a> button typebutton classinline-flex p-2 hover:text-primary @clickdeleteItemFromCart(item.item_id) :aria-labelhyva.strf(Remove\u0020product\u0020\u0022\u00250\u0022\u0020from\u0020cart, item.product_name) > svg xmlnshttp://www.w3.org/2000/svg fillnone strokecurrentColor viewBox0 0 24 24 width20 height20 aria-hiddentrue>path stroke-linecapround stroke-linejoinround stroke-width2 dm19 7-.867 12.142A2 2 0 0 1 16.138 21H7.862a2 2 0 0 1-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v3M4 7h16/>/svg> /button> /div> /div> /div> /template> /div> /template> template x-ifitemsCount> div> div classcoupon-form pt-2.5 px-5> div classmx-auto md:mx-0> form idminicart-discount-coupon-form x-cloak actionhttps://defendcellcamqa.com/checkout/cart/couponPost/ methodpost @submit.preventif(typeof hyva.postCart function) { isLoading true; hyva.postCart($event.target); }else{ postCart($event.target); } > input nameform_key typehidden valueIQ8eCppoyGDo5IU9 /> div classfieldset coupon> input typehidden nameremove idminicart-remove-coupon :valueformData.remove/> div classflex flex-col md:flex-row gap-2 md:items-center justify-center md:justify-start> label forcoupon_code classlabel sr-only> Enter Coupon Code /label> div classcontrol flex-1> input typetext classform-input disabled:opacity-75 disabled:bg-gray-100 disabled:pointer-events-none min-h-55px !m-0 idminicart_coupon_code namecoupon_code x-bind:valueformData.coupon_code x-refminicartCouponInput placeholderEnter Coupon Code x-bind:disabledformData.coupon_code ! required /> /div> div> template x-if!formData.coupon_code> div classprimary my-2> button classbtn btn-primary justify-center w-full md:w-auto typesubmit valueApply Discount> span>Apply/span> /button> /div> /template> template x-ifformData.coupon_code> div classprimary> button typesubmit classbtn btn-primary justify-center w-full md:w-auto valueCancel Coupon> Cancel /button> /div> /template> /div> /div> /div> /form> /div> /div> div classrelative grid gap-4 px-4 py-6 bg-white sm:px-6> div classw-full> p classflex justify-between text-xl font-bold>span>Subtotal/span>span x-htmlcart.subtotal>/span>/p> /div> template x-iftotalDiscountedAmount> div classw-full> p classflex justify-between text-xl font-bold>span>Discount/span>span x-htmltotalDiscountedAmount>/span>/p> /div> /template> div classw-full flex justify-around items-center flex-col sm:flex-row gap-2> a @click.prevent.stop$dispatch(toggle-authentication, {url: https://defendcellcamqa.com/checkout/}); hrefhttps://defendcellcamqa.com/checkout/ classinline-flex btn btn-secondary > Checkout /a> span>or/span> a hrefhttps://defendcellcamqa.com/checkout/cart/ classinline-flex btn btn-outline-secondary > View and Edit Cart /a> /div> div idstripeExpressPaymentsMiniCartButtonBridgeComponent x-datastripeExpressPaymentsMiniCartButtonBridgeComponent classw-full x-initpreInit data-buttonconfig{"buttonHeight":50,"buttonTheme":{"applePay":"black","googlePay":"black","paypal":"gold","klarna":"dark"},"buttonType":{"applePay":"plain","googlePay":"buy","paypal":"paypal","klarna":"pay"},"layout":{"overflow":"never"},"paymentMethods":{"applePay":"auto","googlePay":"auto","link":"never","paypal":"auto","amazonPay":"auto","klarna":"auto"}} data-walletparams{"apiKey":"pk_test_51QtvM7G1zINtKItUvGHSibTTK9fU04b7NnnSrjftWLYTvarVZTdx3U28upveiU4e6xSmEzzdY6x9hhCE5Qu1n2Ub0073ZaYkkd","locale":"en","appInfo":{"name":"Magento2","version":"4.4.4","url":"https:\/\/stripe.com\/docs\/plugins\/magento","partner_id":"pp_partner_Fs67gT2M6v3mH7"},"options":{"betas":[],"apiVersion":"2024-10-28.acacia"}} > div idpayment-request-button-minicart classmy-2 payment-request-button minicart> /div> /div> /div> /div> /template> script> function stripeExpressPaymentsMiniCartButtonBridgeComponent() { let buttonConfig; let walletParams; function loadScript(url) { return new Promise((resolve) > { // Check if the script is already loaded and in the document const existingScript document.querySelector(`scriptsrc${url}`); if (existingScript) { // Check if the script is already loaded if (existingScript.readyState complete || existingScript.readyState loaded) { resolve(); } else { // If not loaded yet, listen for the load event existingScript.addEventListener(load, resolve); } return; } let script document.createElement(script); script.setAttribute(type, text/javascript); script.setAttribute(src, url); document.head.append(script); script.addEventListener(load, resolve); }); } return { isInitialized: false, loading: false, loadScripts: function () { if (this.isInitialized) { return; } if( typeof window.stripePaymentsExpressHyvaBridgeScriptsInstalled ! undefined && window.stripePaymentsExpressHyvaBridgeScriptsInstalled true ) { this.postInit(); return; } var promises loadScript(https\u003A\u002F\u002Fjs.stripe.com\u002Fv3\u002F), loadScript(https\u003A\u002F\u002Fdefendcellcamqa.com\u002Fstatic\u002Fversion1764235120\u002Ffrontend\u002FMagento\u002Fbase\u002Fdefault\u002FHyva_StripeIntegrationPayments\u002Fjs\u002Fstripe_payments_express_hyva.js), ; // All files loaded, migrate to postInit phase. Promise.all(promises).then(() > { this.postInit(); }); }, isLoading() { return this.loading; }, preInit: function() { // data-buttonconfig // data-walletparams buttonConfig JSON.parse(this.$root.dataset.buttonconfig); walletParams JSON.parse(this.$root.dataset.walletparams); this.loadScripts(); }, postInit: function() { window.stripePaymentsExpressHyvaBridgeScriptsInstalled true; this.isInitialized true; /*var initPRAPI function() { stripePaymentsExpressHyvaBridge.initStripeExpress( #payment-request-button-minicart, , minicart, , function (paymentRequestButton, paymentRequest, params, prButton) { stripePaymentsExpressHyvaBridge.initCartWidget(paymentRequestButton, paymentRequest, params, prButton); }); }; initPRAPI();*/ var initPRAPI function() { var locationDetails { location: minicart, activeLocations: shopping_cart_page }; stripePaymentsExpressHyvaBridge.initStripeExpress( #payment-request-button-minicart, walletParams, locationDetails, buttonConfig, stripePaymentsExpressHyvaBridge.initMiniCartWidget.bind(stripePaymentsExpressHyvaBridge), this ); }; initPRAPI(); window.addEventListener(private-content-loaded, function() { setTimeout(initPRAPI, 500); }); } }; } window.addEventListener( alpine:init, () > Alpine.data( stripeExpressPaymentsMiniCartButtonBridgeComponent, stripeExpressPaymentsMiniCartButtonBridgeComponent ), {once: true} )/script> /div> div classabsolute top-0 right-0 flex p-3 mt-2> button typebutton @clickcloseCartDrawer aria-labelClose minicart classp-1.5 rounded-full border-primary-darker border-2 > svg xmlnshttp://www.w3.org/2000/svg fillnone strokecurrentColor viewBox0 0 24 24 width12 height12 aria-hiddentrue>path stroke-linecapround stroke-linejoinround stroke-width2 dM6 18 18 6M6 6l12 12/>/svg> /button> /div> /div> div classflex flex-row justify-center items-center w-full h-full fixed select-none z-50 styleleft: 50%;top: 50%;transform: translateX(-50%) translateY(-50%);background: rgba(255,255,255,0.7); x-showisLoading x-transition:enterease-out duration-200 x-transition:enter-startopacity-0 x-transition:enter-endopacity-100 x-transition:leaveease-in duration-200 x-transition:leave-startopacity-100 x-transition:leave-endopacity-0> div classloading-content flex flex-row justify-center items-center w-auto h-auto> !-- By Sam Herbert (@sherb), for everyone. More @ http://goo.gl/7AJzbL -->svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 57 57 strokecurrentColor classtext-primary width57 height57 roleimg> g fillnone fill-ruleevenodd> g transformtranslate(1 1) stroke-width2> circle cx5 cy50 r5> animate attributeNamecy begin0s dur2.2s values50;5;50;50 calcModelinear repeatCountindefinite/> animate attributeNamecx begin0s dur2.2s values5;27;49;5 calcModelinear repeatCountindefinite/> /circle> circle cx27 cy5 r5> animate attributeNamecy begin0s dur2.2s from5 to5 values5;50;50;5 calcModelinear repeatCountindefinite/> animate attributeNamecx begin0s dur2.2s from27 to27 values27;49;5;27 calcModelinear repeatCountindefinite/> /circle> circle cx49 cy50 r5> animate attributeNamecy begin0s dur2.2s values50;50;5;50 calcModelinear repeatCountindefinite/> animate attributeNamecx from49 to49 begin0s dur2.2s values49;5;27;49 calcModelinear repeatCountindefinite/> /circle> /g> /g>title>loader/title>/svg> div classml-10 text-primary text-xl> Loading... /div> /div>/div> /div>/section> !--Authentication Pop-Up--> script> function initAuthentication() { return { open: false, forceAuthentication: false, checkoutUrl: https://defendcellcamqa.com/checkout/index/, errors: 0, hasCaptchaToken: 0, displayErrorMessage: false, errorMessages: , setErrorMessages: function setErrorMessages(messages) { this.errorMessages messages; this.displayErrorMessage this.errorMessages.length; }, submitForm: function () { // Do not rename $form, the variable is expected to be declared in the recaptcha output const $form document.querySelector(#login-form); if (this.errors 0) { this.dispatchLoginRequest($form); } }, onPrivateContentLoaded: function (data) { const isLoggedIn data.customer && data.customer.firstname; if (data.cart && !isLoggedIn) { this.forceAuthentication !data.cart.isGuestCheckoutAllowed; } }, redirectIfAuthenticated: function (event) { if (event.detail && event.detail.url) { this.checkoutUrl event.detail.url; } if (!this.forceAuthentication) { window.location.href this.checkoutUrl; } }, dispatchLoginRequest: function(form) { this.isLoading true; const username this.$refscustomer-email.value; const password this.$refscustomer-password.value; const formKey hyva.getFormKey(); const bodyFields { username: username, password: password, formKey: formKey }; const fieldName g\u002Drecaptcha\u002Dresponse; const recaptchaField fieldName && formfieldName; if (recaptchaField) { bodyFieldsfieldName recaptchaField.value; } fetch(https://defendcellcamqa.com/customer/ajax/login/, { method: POST, headers: { Content-Type: application/json, X-Requested-With: XMLHttpRequest }, body: JSON.stringify(bodyFields) } ).then(response > { return response.json() } ).then(data> { this.isLoading false; if (data.errors) { dispatchMessages({ type: error, text: data.message }, 5000); this.errors 1; this.hasCaptchaToken 0; } else { window.location.href this.checkoutUrl; } }); } } }/script>section idauthentication-popup x-datainitAuthentication() @private-content-loaded.windowonPrivateContentLoaded($event.detail.data) @toggle-authentication.windowopen forceAuthentication; redirectIfAuthenticated(event) @keydown.window.escapeopen false> div roledialog aria-modaltrue @click.outsideopen false classinset-y-0 right-0 z-30 flex max-w-full :class{fixed: open } x-cloak x-showopen > div classrelative w-screen max-w-md pt-16 bg-container-lighter x-showopen x-cloak x-transition:entertransform transition ease-in-out duration-500 sm:duration-700 x-transition:enter-starttranslate-x-full x-transition:enter-endtranslate-x-0 x-transition:leavetransform transition ease-in-out duration-500 sm:duration-700 x-transition:leave-starttranslate-x-0 x-transition:leave-endtranslate-x-full > div x-showopen x-cloak x-transition:enterease-in-out duration-500 x-transition:enter-startopacity-0 x-transition:enter-endopacity-100 x-transition:leaveease-in-out duration-500 x-transition:leave-startopacity-100 x-transition:leave-endopacity-0 classabsolute top-0 right-0 flex p-2 mt-2> button @clickopen false; aria-labelClose panel classp-2 text-gray-300 transition duration-150 ease-in-out hover:text-black> svg xmlnshttp://www.w3.org/2000/svg fillnone strokecurrentColor viewBox0 0 24 24 width24 height24 roleimg>path stroke-linecapround stroke-linejoinround stroke-width2 dM6 18 18 6M6 6l12 12/>title>x/title>/svg> /button> /div> div classflex flex-col h-full py-6 space-y-6 bg-white shadow-xl overflow-y-auto> div classblock-customer-login bg-container border border-container mx-4 p-4 shadow-sm> p idauthenticate-customer-login classtext-lg leading-7 text-gray-900> strong classfont-medium>Checkout using your account/strong> /p> form classform form-login methodpost @submit.preventsubmitForm(); idlogin-form > div classfieldset login> div classfield email required> label classlabel forform-login-username formlogin-form > span>Email Address/span> /label> div classcontrol> input nameusername idform-login-username x-refcustomer-email @changeerrors 0 typeemail required classform-input input-text > /div> /div> div classfield password required> label forform-login-password classlabel formlogin-form> span>Password/span> /label> div classcontrol> input namepassword idform-login-password typepassword classform-input input-text required x-refcustomer-password autocompletepassword @changeerrors 0 > /div> /div> input namecontext typehidden valuecheckout /> div classactions-toolbar flex justify-between pt-6 pb-2 items-center> button typesubmit classinline-flex btn btn-primary disabled:opacity-75 > Sign In /button> a hrefhttps://defendcellcamqa.com/customer/account/forgotpassword/ > Forgot Your Password? /a> /div> /div> /form> /div> div classmx-4> /div> div classblock-new-customer bg-container border border-container mx-4 p-4 shadow-sm> p idauthenticate-new-customer classtext-lg mb-2 leading-7 text-gray-900> strong classfont-medium>Checkout as a new customer/strong> /p> div classblock-content> p classmb-1> Creating an account has many benefits: /p> ul classlist-disc pl-5> li> See order and shipping status/li> li> Track order history/li> li> Check out faster/li> /ul> div classactions-toolbar flex justify-between mt-6 mb-2 items-center> a hrefhttps://defendcellcamqa.com/customer/account/create/ classinline-flex btn btn-primary> Create an Account /a> /div> /div> /div> /div> /div> /div>/section> !--Main Navigation--> div classbg-white relative pl-10 z-25> div classmax-w-1440px mx-auto> div x-datainitMenuDesktop_692b7d8002a63() classnav-desktop z-20 order-3 navigation hidden lg:flex text-primary-darker w-full mt-4> !-- desktop --> div x-refnav-desktop @load.windowsetActiveMenuItem($root) classhidden lg:block lg:relative lg:min-h-0 w-full> nav classduration-150 ease-in-out transform w-auto relative min-h-0 transition-display aria-labelMain menu > ul classflex justify-between> style>.cmsb369-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.cmsb369-pointer-events-none{pointer-events:none}.cmsb369-\!pointer-events-auto{pointer-events:auto !important}.cmsb369-\!visible{visibility:visible !important}.cmsb369-absolute{position:absolute}.cmsb369-relative{position:relative}.cmsb369-left-0{left:0}.cmsb369-right-0{right:0}.cmsb369-z-10{z-index:10}.cmsb369--ml-6{margin-left:-1.5rem}.cmsb369-ml-4{margin-left:1rem}.cmsb369-block{display:block}.cmsb369-flex{display:flex}.cmsb369-hidden{display:none}.cmsb369-w-full{width:100%}.cmsb369-w-max{width:max-content}.cmsb369-rotate-0{--tw-rotate:0deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cmsb369-rotate-180{--tw-rotate:180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cmsb369-transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cmsb369-cursor-pointer{cursor:pointer}.cmsb369-flex-col{flex-direction:column}.cmsb369-items-center{align-items:center}.cmsb369-justify-between{justify-content:space-between}.cmsb369-gap-7{gap:1.75rem}.cmsb369-space-y-1>:not(hidden)~:not(hidden){--tw-space-y-reverse:0;margin-top:calc(.25rem*calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem*var(--tw-space-y-reverse))}.cmsb369-divide-y>:not(hidden)~:not(hidden){--tw-divide-y-reverse:0;border-top-width:calc(1px*calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px*var(--tw-divide-y-reverse))}.cmsb369-overflow-hidden{overflow:hidden}.cmsb369-whitespace-nowrap{white-space:nowrap}.cmsb369-rounded-b-\10px\{border-bottom-right-radius:10px;border-bottom-left-radius:10px}.cmsb369-border-t{border-top-width:1px}.cmsb369-bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.cmsb369-p-10{padding:2.5rem}.cmsb369-p-3{padding:.75rem}.cmsb369-px-6{padding-left:1.5rem;padding-right:1.5rem}.cmsb369-py-2{padding-top:.5rem;padding-bottom:.5rem}.cmsb369-pb-3{padding-bottom:.75rem}.cmsb369-pl-3{padding-left:.75rem}.cmsb369-pr-10{padding-right:2.5rem}.cmsb369-text-lg{font-size:1.125rem;line-height:1.75rem}.cmsb369-text-xl{font-size:1.25rem;line-height:1.75rem}.cmsb369-font-bold{font-weight:700}.cmsb369-font-normal{font-weight:400}.cmsb369-font-semibold{font-weight:600}.cmsb369-text-current{color:currentColor}.cmsb369-text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.cmsb369-\!opacity-100{opacity:1 !important}.cmsb369-opacity-0{opacity:0}.cmsb369-shadow-\0_2px_3px_0_\#10101033\{--tw-shadow:0 2px 3px 0 #10101033;--tw-shadow-colored:0 2px 3px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.cmsb369-transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.cmsb369-transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.cmsb369-duration-300{transition-duration:.3s}.cmsb369-hover\:text-primary:hover{--tw-text-opacity:1;color:rgb(89 128 0/var(--tw-text-opacity))}@media (min-width:1024px){.cmsb369-lg\:block{display:block}.cmsb369-lg\:hidden{display:none}}/style>div data-content-typehtml data-appearancedefault data-elementmain data-decodedtrue>!-- DESKTOP MENU -->!-- Cameras -->li x-data{ hoverPanelActiveId: null } classcmsb369-relative level-0 cmsb369-hidden cmsb369-lg:block cmsb369-pr-10 @mouseenterhoverPanelActiveId cameras @mouseleavehoverPanelActiveId null @keyup.escapehoverPanelActiveId null @click.away.debounce.100msresetValues(cameras)> span classcmsb369-flex cmsb369-items-center cmsb369-py-2 cmsb369-text-xl cmsb369-font-bold> button typebutton data-sr-button-idcameras classcmsb369-w-full cmsb369-py-2 cmsb369-text-xl level-0 :aria-expandedhoverPanelActiveId cameras ? true : false @clickopenMenuOnClick($event, cameras); data-item-menucameras data-db-click0 data-child-data1 aria-expandedfalse > Cameras span classcmsb369-sr-only>Show submenu for Cameras/span> /button> /span> div classdropdown-menu cmsb369-absolute cmsb369-z-10 cmsb369-transition-all cmsb369-p-10 cmsb369--ml-6 cmsb369-left-0 cmsb369-w-max cmsb369-rounded-b-10px cmsb369-overflow-hidden cmsb369-bg-white cmsb369-shadow-0_2px_3px_0_#10101033 cmsb369-border-t border-container-testim cmsb369-opacity-0 cmsb369-pointer-events-none :class{ cmsb369-opacity-0 cmsb369-pointer-events-none : hoverPanelActiveId ! cameras, cmsb369-!opacity-100 cmsb369-!pointer-events-auto cmsb369-!visible : hoverPanelActiveId cameras } > ul classcmsb369-flex cmsb369-flex-col cmsb369-gap-7 ul-column-count> li> a hrefhttps://defendcellcamqa.com/security-cameras/ titleSecurity Cameras classcmsb369-flex cmsb369-w-full cmsb369-whitespace-nowrap cmsb369-text-lg cmsb369-hover:text-primary cmsb369-font-normal @keyup.escape$nextTick(() > document.querySelector(data-sr-button-idcameras).focus()) > Security Cameras /a> /li> li> a hrefhttps://defendcellcamqa.com/security/defend-deals/ titleHoliday Deals classcmsb369-flex cmsb369-w-full cmsb369-whitespace-nowrap cmsb369-text-lg cmsb369-hover:text-primary cmsb369-font-normal @keyup.escape$nextTick(() > document.querySelector(data-sr-button-idcameras).focus()) > DEFEND Deals /a> /li> /ul> /div>/li>li classcmsb369-relative level-0 cmsb369-pr-10 cmsb369-hidden cmsb369-lg:block @mouseenterhoverPanelActiveId category-node-56 @mouseleavehoverPanelActiveId 0 @keyup.escapehoverPanelActiveId 0 @click.away.debounce.100msresetValues(category-node-56)> span classcmsb369-flex cmsb369-items-center cmsb369-py-2 cmsb369-text-xl cmsb369-font-bold> a classcmsb369-w-full cmsb369-py-2 cmsb369-text-xl level-0 hrefhttps://defendcellcamqa.com/security-accessories/ titleAccessories @focushoverPanelActiveId 0> Accessories /a> /span>/li>li classcmsb369-relative level-0 cmsb369-pr-10 cmsb369-hidden cmsb369-lg:block @mouseenterhoverPanelActiveId category-node-56 @mouseleavehoverPanelActiveId 0 @keyup.escapehoverPanelActiveId 0 @click.away.debounce.100msresetValues(category-node-56)> span classcmsb369-flex cmsb369-items-center cmsb369-py-2 cmsb369-text-xl cmsb369-font-bold> a classcmsb369-w-full cmsb369-py-2 cmsb369-text-xl level-0 hrefhttps://defendcellcamqa.com/defend-app-plan/ titleApp & Subscriptions @focushoverPanelActiveId 0> App & Subscriptions /a> /span>/li> !-- Explore -->li x-data{ hoverPanelActiveId: null } classcmsb369-relative level-0 cmsb369-hidden cmsb369-lg:block cmsb369-pr-10 @mouseenterhoverPanelActiveId explore @mouseleavehoverPanelActiveId null @keyup.escapehoverPanelActiveId null @click.away.debounce.100msresetValues(explore)> span classcmsb369-flex cmsb369-items-center cmsb369-py-2 cmsb369-text-xl cmsb369-font-bold> button typebutton data-sr-button-idexplore classcmsb369-w-full cmsb369-py-2 cmsb369-text-xl level-0 :aria-expandedhoverPanelActiveId explore ? true : false @clickopenMenuOnClick($event, explore); data-item-menuexplore data-db-click0 data-child-data1 aria-expandedfalse > Explore DEFEND span classcmsb369-sr-only>Show submenu for Explore DEFEND/span> /button> /span> div classdropdown-menu cmsb369-absolute cmsb369-z-10 cmsb369-transition-all cmsb369-p-10 cmsb369--ml-6 cmsb369-left-0 cmsb369-w-max cmsb369-rounded-b-10px cmsb369-overflow-hidden cmsb369-bg-white cmsb369-shadow-0_2px_3px_0_#10101033 cmsb369-border-t border-container-testim cmsb369-opacity-0 cmsb369-pointer-events-none :class{ cmsb369-opacity-0 cmsb369-pointer-events-none : hoverPanelActiveId ! explore, cmsb369-!opacity-100 cmsb369-!pointer-events-auto cmsb369-!visible : hoverPanelActiveId explore } > ul classcmsb369-flex cmsb369-flex-col cmsb369-gap-7 ul-column-count> li> a hrefhttps://defendcellcamqa.com/security-videos/ titleVideo Gallery classcmsb369-flex cmsb369-w-full cmsb369-whitespace-nowrap cmsb369-text-lg cmsb369-hover:text-primary cmsb369-font-normal @keyup.escape$nextTick(() > document.querySelector(data-sr-button-idexplore).focus()) > Video Gallery /a> /li> li> a hrefhttps://defendcellcamqa.com/security-blog/ titleBlog classcmsb369-flex cmsb369-w-full cmsb369-whitespace-nowrap cmsb369-text-lg cmsb369-hover:text-primary cmsb369-font-normal @keyup.escape$nextTick(() > document.querySelector(data-sr-button-idexplore).focus()) > Blog /a> /li> /ul> /div>/li>!-- Help Center -->li x-data{ hoverPanelActiveId: null } classcmsb369-relative level-0 cmsb369-hidden cmsb369-lg:block cmsb369-pr-10 @mouseenterhoverPanelActiveId help @mouseleavehoverPanelActiveId null @keyup.escapehoverPanelActiveId null @click.away.debounce.100msresetValues(help)> span classcmsb369-flex cmsb369-items-center cmsb369-py-2 cmsb369-text-xl cmsb369-font-bold> button typebutton data-sr-button-idhelp classcmsb369-w-full cmsb369-py-2 cmsb369-text-xl level-0 :aria-expandedhoverPanelActiveId help ? true : false @clickopenMenuOnClick($event, help); data-item-menuhelp data-db-click0 data-child-data1 aria-expandedfalse > Help Center span classcmsb369-sr-only>Show submenu for Help Center/span> /button> /span> div classdropdown-menu cmsb369-absolute cmsb369-z-10 cmsb369-transition-all cmsb369-p-10 cmsb369--ml-6 cmsb369-right-0 cmsb369-w-max cmsb369-rounded-b-10px cmsb369-overflow-hidden cmsb369-bg-white cmsb369-shadow-0_2px_3px_0_#10101033 cmsb369-border-t border-container-testim cmsb369-opacity-0 cmsb369-pointer-events-none :class{ cmsb369-opacity-0 cmsb369-pointer-events-none : hoverPanelActiveId ! help, cmsb369-!opacity-100 cmsb369-!pointer-events-auto cmsb369-!visible : hoverPanelActiveId help } > ul classcmsb369-flex cmsb369-flex-col cmsb369-gap-7 ul-column-count> li> a hrefhttps://defendcellcamqa.com/warranty-returns/ titleShipping, Returns & Warranty classcmsb369-flex cmsb369-w-full cmsb369-whitespace-nowrap cmsb369-text-lg cmsb369-hover:text-primary cmsb369-font-normal @keyup.escape$nextTick(() > document.querySelector(data-sr-button-idhelp).focus()) > Shipping, Returns & Warranty /a> /li> li> a hrefhttps://defendcellcamqa.com/contact-us/ titleCustomer Support classcmsb369-flex cmsb369-w-full cmsb369-whitespace-nowrap cmsb369-text-lg cmsb369-hover:text-primary cmsb369-font-normal @keyup.escape$nextTick(() > document.querySelector(data-sr-button-idhelp).focus()) > Customer Support /a> /li> li> a hrefhttps://tactacam.zendesk.com/hc/en-us/sections/27598389339035-General-FAQs titleFAQs classcmsb369-flex cmsb369-w-full cmsb369-whitespace-nowrap cmsb369-text-lg cmsb369-hover:text-primary cmsb369-font-normal @keyup.escape$nextTick(() > document.querySelector(data-sr-button-idhelp).focus()) > FAQs /a> /li> li> a hrefhttps://tactacam.zendesk.com/hc/en-us/sections/38149376220571-DEFEND titleManuals classcmsb369-flex cmsb369-w-full cmsb369-whitespace-nowrap cmsb369-text-lg cmsb369-hover:text-primary cmsb369-font-normal @keyup.escape$nextTick(() > document.querySelector(data-sr-button-idhelp).focus()) > Manuals /a> /li> /ul> /div>/li>!-- MOBILE MENU -->div x-datainitMobileNavAccordion() x-refaccordion classcmsb369-divide-y cmsb369-lg:hidden cmsb369-px-6 cmsb369-text-lg cmsb369-font-bold idmobile-nav-accordion> !-- Cameras --> details idcameras :opensectionItemIsOpen(cameras) > summary @click.preventopenSectionItem(cameras) classcmsb369-p-3 cmsb369-cursor-pointer cmsb369-flex cmsb369-items-center cmsb369-justify-between cmsb369-font-semibold > span>Cameras/span> span :classsectionItemIsOpen(cameras) ? rotate-180 transform transition-transform duration-300 : transform rotate-0 > svg xmlnshttp://www.w3.org/2000/svg fillcurrentColor viewbox0 0 20 20 classcmsb369-text-current width24 height24 roleimg>path fill-ruleevenodd dM5.293 7.293a1 1 0 0 1 1.414 0L10 10.586l3.293-3.293a1 1 0 1 1 1.414 1.414l-4 4a1 1 0 0 1-1.414 0l-4-4a1 1 0 0 1 0-1.414Z clip-ruleevenodd>/path>title>heroicons/solid/chevron-down/title>/svg> /span> /summary> nav x-showsectionItemIsOpen(cameras) classcmsb369-ml-4 cmsb369-pb-3 cmsb369-pl-3 cmsb369-space-y-1 > a classcmsb369-block cmsb369-text-white hrefhttps://defendcellcamqa.com/security-cameras/ classcmsb369-block>Security Cameras/a> a classcmsb369-block cmsb369-text-white hrefhttps://defendcellcamqa.com/security/defend-deals/ classcmsb369-block>DEFEND Deals/a> /nav> /details> a classcmsb369-block cmsb369-text-white cmsb369-p-3 hrefhttps://defendcellcamqa.com/security-accessories/ classcmsb369-block>Accessories/a> a classcmsb369-block cmsb369-text-white cmsb369-p-3 hrefhttps://defendcellcamqa.com/defend-app-plan/ classcmsb369-block>App & Subscriptions/a> !-- Explore --> details idexplore :opensectionItemIsOpen(explore) > summary @click.preventopenSectionItem(explore) classcmsb369-p-3 cmsb369-cursor-pointer cmsb369-flex cmsb369-items-center cmsb369-justify-between cmsb369-font-semibold > span>Explore DEFEND/span> span :classsectionItemIsOpen(explore) ? rotate-180 transform transition-transform duration-300 : transform rotate-0 > svg xmlnshttp://www.w3.org/2000/svg fillcurrentColor viewbox0 0 20 20 classcmsb369-text-current width24 height24 roleimg>path fill-ruleevenodd dM5.293 7.293a1 1 0 0 1 1.414 0L10 10.586l3.293-3.293a1 1 0 1 1 1.414 1.414l-4 4a1 1 0 0 1-1.414 0l-4-4a1 1 0 0 1 0-1.414Z clip-ruleevenodd>/path>title>heroicons/solid/chevron-down/title>/svg> /span> /summary> nav x-showsectionItemIsOpen(explore) classcmsb369-ml-4 cmsb369-pb-3 cmsb369-pl-3 cmsb369-space-y-1 > a classcmsb369-block cmsb369-text-white hrefhttps://defendcellcamqa.com/security-videos/ classcmsb369-block>Video Gallery/a> a classcmsb369-block cmsb369-text-white hrefhttps://defendcellcamqa.com/security-blog/ classcmsb369-block>Blog/a> /nav> /details> !-- Help Center --> details idhelp-center :opensectionItemIsOpen(help-center) > summary @click.preventopenSectionItem(help-center) classcmsb369-p-3 cmsb369-cursor-pointer cmsb369-flex cmsb369-items-center cmsb369-justify-between cmsb369-font-semibold > span>Help Center/span> span :classsectionItemIsOpen(help-center) ? rotate-180 transform transition-transform duration-300 : transform rotate-0 > svg xmlnshttp://www.w3.org/2000/svg fillcurrentColor viewbox0 0 20 20 classcmsb369-text-current width24 height24 roleimg>path fill-ruleevenodd dM5.293 7.293a1 1 0 0 1 1.414 0L10 10.586l3.293-3.293a1 1 0 1 1 1.414 1.414l-4 4a1 1 0 0 1-1.414 0l-4-4a1 1 0 0 1 0-1.414Z clip-ruleevenodd>/path>title>heroicons/solid/chevron-down/title>/svg> /span> /summary> nav x-showsectionItemIsOpen(help-center) classcmsb369-ml-4 cmsb369-pb-3 cmsb369-pl-3 cmsb369-space-y-1 > a classcmsb369-block cmsb369-text-white hrefhttps://defendcellcamqa.com/warranty-returns/ classcmsb369-block>Shipping, Returns & Warranty/a> a classcmsb369-block cmsb369-text-white hrefhttps://defendcellcamqa.com/contact-us/ classcmsb369-block>Customer Support/a> a classcmsb369-block cmsb369-text-white hrefhttps://tactacam.zendesk.com/hc/en-us/sections/27598389339035-General-FAQs classcmsb369-block>FAQs/a> a classcmsb369-block cmsb369-text-white hrefhttps://tactacam.zendesk.com/hc/en-us/sections/38149376220571-DEFEND classcmsb369-block>Manuals/a> /nav> /details>/div>script> function initMobileNavAccordion() { return { items: , currentOpen: null, openSectionItem(id) { this.currentOpen this.sectionItemIsOpen(id) ? null : id; }, sectionItemIsOpen(id) { return this.currentOpen id; }, } }/script>style> div.nav-desktop nav > ul { justify-content: space-evenly; }/style>/div> /ul> /nav> /div>/div>script> use strict; const initMenuDesktop_692b7d8002a63 () > { // alert((.dropdown-menu ul li a).innerHTML); return { hoverPanelActiveId: null, setActiveMenuItem(menuNode) { Array.from(menuNode.querySelectorAll(a:not(#mobile-nav-accordion a))).filter(link > { const winLocHref window.location.href.split(?)0; const menuLink link.hreflink.href.length - 1 / && winLocHrefwinLocHref.length - 1 ! / ? link.href.slice(0, -1) : link.href; return menuLink winLocHref; }).map(item > { if (!item.classList.contains(level-0)) item.classList.add(text-primary); item.closest(li.level-0).classList.add(active); }); }, openMenuOnClick(event, index) { let target event ? event.currentTarget : , nextElement target.parentNode.nextElementSibling; this.resetValues(index); if (!!Number(target.getAttribute(data-child-data)) && !Number(target.getAttribute(data-db-click))) { event.preventDefault(); event.stopPropagation(); if (this.hoverPanelActiveId index) { this.resetValues(index); } else { this.hoverPanelActiveId index; } } else if (target.getAttribute(href)) { window.location target.getAttribute(href); } !Number(target.getAttribute(data-db-click)) ? target.setAttribute(data-db-click, 1) : target.setAttribute(data-db-click, 0); }, resetValues(index) { let childData document.querySelectorAll(data-child-data1); childData.forEach(el > { let nextElement el.parentNode.nextElementSibling; if (el.getAttribute(data-item-menu) ! index) { el.setAttribute(data-db-click, 0); } this.hoverPanelActiveId 0; nextElement.style.cssText opacity: 0; visibility: hidden; }); } } }/script>script> function customHyvaCompactModule() { const myElement document.querySelector(.last-child); myElement?.parentElement?.parentElement?.classList.add(has-text-shop-interest); let getClass document.getElementsByClassName(last-child) if(getClass0?.className last-child) { const cameraMenu document.getElementsByClassName(ul-column-count-1); cameraMenu0.classList.replace(ul-column-count-1,ul-column-count-2); cameraMenu0.classList.replace(w-1/4,w-full); } }/script> /div> /div>/div>script> /* REMOVE STATIC BLOCK PARENT DIV */ document.querySelectorAll(nav data-content-typehtml).forEach(parentDiv > { while (parentDiv.firstChild) { parentDiv.parentNode.insertBefore(parentDiv.firstChild, parentDiv); } parentDiv.remove(); });/script>/header>div classtop-container>/div>main idmaincontent classpage-main-full-width>div idcontentarea tabindex-1>/div>div classpage messages>script> function initMessages() { use strict; return { messages: window.mageMessages || , isEmpty() { return this.messages.reduce( function (isEmpty, message) { return isEmpty && message undefined }, true ) }, isMinicartOpened(){ return document.querySelector(.backdrop).style.display ! none; }, removeMessage(messageIndex) { this.messagesmessageIndex undefined; }, addMessages(messages, hideAfter) { messages.map((message) > { this.messages this.messages.concat(message); if (hideAfter undefined && message.type success && window.defaultSuccessMessageTimeout) { hideAfter window.defaultSuccessMessageTimeout; } if (hideAfter) { this.setHideTimeOut(this.messages.length -1, hideAfter); } }); }, setHideTimeOut(messageIndex, hideAfter) { setTimeout((messageIndex) > { this.removeMessage(messageIndex); }, hideAfter, messageIndex); }, eventListeners: { @messages-loaded.window(event) { this.addMessages(event.detail.messages, event.detail.hideAfter) }, @private-content-loaded.window(event) { const data event.detail.data; if ( data.messages && data.messages.messages && data.messages.messages.length ) { this.addMessages(data.messages.messages); } }, @clear-messages.window() { this.messages ; } } } }/script>section idmessages x-datainitMessages() x-bindeventListeners aria-liveassertive rolealert> template x-if!isEmpty() && !isMinicartOpened()> div classw-full> div classmessages container mx-auto py-3> template x-for(message, index) in messages :keyindex> div> template x-ifmessage> div classmessage :classmessage.type :ui-idmessage- + message.type > span x-htmlmessage.text>/span> button typebutton classtext-gray-600 hover:text-black aria-labelClose message @click.preventremoveMessage(index) > svg xmlnshttp://www.w3.org/2000/svg fillnone strokecurrentColor viewBox0 0 24 24 classstroke-current width18 height18 aria-hiddentrue>path stroke-linecapround stroke-linejoinround stroke-width2 dM6 18 18 6M6 6l12 12/>/svg> /button> /div> /template> /div> /template> /div> /div> /template>/section>/div>div classcolumns>div classcolumn main> script> /* e.g. hyva theme */ document.addEventListener(DOMContentLoaded, function(){ var items document.getElementsByClassName(mfblogunveil); var el, url; if (items.length) { for (var i0; iitems.length;i++) { el itemsi; url el.getAttribute(data-original); if (!url) { continue; }; if (IMG el.tagName) { el.src url; } else { el.style.backgroundImage url( + url + ); } } } }); /script>!-- Yotpo - Add body class -->script> document.addEventListener(DOMContentLoaded, function(event) { document.body.classList.add(yotpo-yotpo-is-enabled); });/script>!--/ Yotpo - Add body class -->!-- Yotpo - Widget Script --> script> window.addEventListener(init-external-scripts, () > { (function e(){var edocument.createElement(script);e.typetext/javascript,e.asynctrue,e.src//staticw2.yotpo.com/tjevMspfZzuzyNwrs0YSGYwtVlempodg6K4fz6rs/widget.js;var tdocument.getElementsByTagName(script)0;t.parentNode.insertBefore(e,t)})(); }, {once: true, passive: true}); /script>!--/ Yotpo - Widget Script --> script> /* e.g. hyva theme */ document.addEventListener(DOMContentLoaded, function(){ var items document.getElementsByClassName(mfsecondblogunveil); var el, url; if (items.length) { for (var i0; iitems.length;i++) { el itemsi; url el.getAttribute(data-original); if (!url) { continue; }; if (IMG el.tagName) { el.src url; } else { el.style.backgroundImage url( + url + ); } } } }); /script>style>.cmsp634-absolute{position:absolute}.cmsp634-relative{position:relative}.cmsp634-bottom-0{bottom:0}.cmsp634-left-0{left:0}.cmsp634-left-\2\%\{left:2%}.cmsp634-right-0{right:0}.cmsp634-top-\2\%\{top:2%}.cmsp634-z-10{z-index:10}.cmsp634-z-20{z-index:20}.cmsp634-mx-auto{margin-left:auto;margin-right:auto}.cmsp634-my-3{margin-top:.75rem;margin-bottom:.75rem}.cmsp634-my-4{margin-top:1rem;margin-bottom:1rem}.cmsp634-my-8{margin-top:2rem;margin-bottom:2rem}.cmsp634-\!mb-0{margin-bottom:0 !important}.cmsp634--mb-2\.5{margin-bottom:-.625rem}.cmsp634-mb-4{margin-bottom:1rem}.cmsp634-mb-5{margin-bottom:1.25rem}.cmsp634-mb-6{margin-bottom:1.5rem}.cmsp634-mb-7{margin-bottom:1.75rem}.cmsp634-mb-8{margin-bottom:2rem}.cmsp634-mt-3{margin-top:.75rem}.cmsp634-block{display:block}.cmsp634-inline{display:inline}.cmsp634-flex{display:flex}.cmsp634-grid{display:grid}.cmsp634-hidden{display:none}.cmsp634-aspect-\3\/4\{aspect-ratio:3/4}.cmsp634-aspect-\5\/3\{aspect-ratio:5/3}.cmsp634-h-\250px\{height:250px}.cmsp634-h-full{height:100%}.cmsp634-\!max-h-\inherit\{max-height:inherit !important}.cmsp634-max-h-\250px\{max-height:250px}.cmsp634-min-h-\100px\{min-height:100px}.cmsp634-min-h-\250px\{min-height:250px}.cmsp634-min-h-\800px\{min-height:800px}.cmsp634-w-full{width:100%}.cmsp634-min-w-\55\%\{min-width:55%}.cmsp634-\!max-w-\110px\{max-width:110px !important}.cmsp634-\!max-w-\200px\{max-width:200px !important}.cmsp634-\!max-w-\80\%\{max-width:80% !important}.cmsp634-\!max-w-\80px\{max-width:80px !important}.cmsp634-max-w-\180px\{max-width:180px}.cmsp634-max-w-\250px\{max-width:250px}.cmsp634-max-w-\70\%\{max-width:70%}.cmsp634-max-w-\75\%\{max-width:75%}.cmsp634-max-w-\80\%\{max-width:80%}.cmsp634-max-w-\90\%\{max-width:90%}.cmsp634-flex-col{flex-direction:column}.cmsp634-flex-wrap{flex-wrap:wrap}.cmsp634-items-center{align-items:center}.cmsp634-justify-end{justify-content:flex-end}.cmsp634-justify-center{justify-content:center}.cmsp634-gap-2{gap:.5rem}.cmsp634-gap-2\.5{gap:.625rem}.cmsp634-overflow-hidden{overflow:hidden}.cmsp634-whitespace-nowrap{white-space:nowrap}.cmsp634-rounded-\10px\{border-radius:10px}.cmsp634-rounded-\15px\{border-radius:15px}.cmsp634-rounded-\50px\{border-radius:50px}.cmsp634-rounded-r-\25px\{border-top-right-radius:25px;border-bottom-right-radius:25px}.cmsp634-border{border-width:1px}.cmsp634-border-primary-lighter{--tw-border-opacity:1;border-color:rgb(151 215 0/var(--tw-border-opacity))}.cmsp634-bg-\\#333\{--tw-bg-opacity:1;background-color:rgb(51 51 51/var(--tw-bg-opacity))}.cmsp634-p-5{padding:1.25rem}.cmsp634-\!px-4{padding-left:1rem !important;padding-right:1rem !important}.cmsp634-\!py-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.cmsp634-px-2{padding-left:.5rem;padding-right:.5rem}.cmsp634-px-2\.5{padding-left:.625rem;padding-right:.625rem}.cmsp634-px-8{padding-left:2rem;padding-right:2rem}.cmsp634-py-10{padding-top:2.5rem;padding-bottom:2.5rem}.cmsp634-py-12{padding-top:3rem;padding-bottom:3rem}.cmsp634-py-5{padding-top:1.25rem;padding-bottom:1.25rem}.cmsp634-pb-0{padding-bottom:0}.cmsp634-pb-14{padding-bottom:3.5rem}.cmsp634-pl-8{padding-left:2rem}.cmsp634-pt-10{padding-top:2.5rem}.cmsp634-pt-6{padding-top:1.5rem}.cmsp634-text-center{text-align:center}.cmsp634-align-bottom{vertical-align:bottom}.cmsp634-\!text-\0\.875rem\{font-size:.875rem !important}.cmsp634-\!text-\17px\{font-size:17px !important}.cmsp634-\!text-\26px\{font-size:26px !important}.cmsp634-\!text-\30px\{font-size:30px !important}.cmsp634-\!text-\45px\{font-size:45px !important}.cmsp634-\!text-\50px\{font-size:50px !important}.cmsp634-text-5xl{font-size:3rem;line-height:1}.cmsp634-text-\14px\{font-size:14px}.cmsp634-text-\15px\{font-size:15px}.cmsp634-text-\2\.5rem\{font-size:2.5rem}.cmsp634-text-\2\.75rem\{font-size:2.75rem}.cmsp634-text-\60px\{font-size:60px}.cmsp634-text-\85\%\{font-size:85%}.cmsp634-text-lg{font-size:1.125rem;line-height:1.75rem}.cmsp634-\!font-semibold{font-weight:600 !important}.cmsp634-font-bold{font-weight:700}.cmsp634-font-light{font-weight:300}.cmsp634-font-normal{font-weight:400}.cmsp634-font-semibold{font-weight:600}.cmsp634-uppercase{text-transform:uppercase}.cmsp634-\!leading-\20px\{line-height:20px !important}.cmsp634-\!leading-\30px\{line-height:30px !important}.cmsp634-\!leading-\35px\{line-height:35px !important}.cmsp634-\!leading-\50px\{line-height:50px !important}.cmsp634-\!leading-\85\%\{line-height:85% !important}.cmsp634-leading-\2\.5rem\{line-height:2.5rem}.cmsp634-leading-\30px\{line-height:30px}.cmsp634-leading-\50px\{line-height:50px}.cmsp634-leading-none{line-height:1}.cmsp634-tracking-\2px\{letter-spacing:2px}.cmsp634-\!text-primary-lighter{--tw-text-opacity:1 !important;color:rgb(151 215 0/var(--tw-text-opacity)) !important}.cmsp634-\!text-white{--tw-text-opacity:1 !important;color:rgb(255 255 255/var(--tw-text-opacity)) !important}.cmsp634-text-\\#333\{--tw-text-opacity:1;color:rgb(51 51 51/var(--tw-text-opacity))}.cmsp634-text-primary-lighter{--tw-text-opacity:1;color:rgb(151 215 0/var(--tw-text-opacity))}.cmsp634-text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.cmsp634-blur{--tw-blur:blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.cmsp634-backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}@media (min-width:640px){.cmsp634-sm\:mx-0{margin-left:0;margin-right:0}.cmsp634-sm\:hidden{display:none}.cmsp634-sm\:min-h-\inherit\{min-height:inherit}.cmsp634-sm\:max-w-full{max-width:100%}.cmsp634-sm\:pb-10{padding-bottom:2.5rem}.cmsp634-sm\:pl-8{padding-left:2rem}.cmsp634-sm\:\!text-\20px\{font-size:20px !important}.cmsp634-sm\:text-lg{font-size:1.125rem;line-height:1.75rem}.cmsp634-sm\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width:768px){.cmsp634-md\:mx-0{margin-left:0;margin-right:0}.cmsp634-md\:mb-0{margin-bottom:0}.cmsp634-md\:block{display:block}.cmsp634-md\:flex{display:flex}.cmsp634-md\:hidden{display:none}.cmsp634-md\:aspect-\inherit\{aspect-ratio:inherit}.cmsp634-md\:h-\500px\{height:500px}.cmsp634-md\:max-h-\500px\{max-height:500px}.cmsp634-md\:min-h-\400px\{min-height:400px}.cmsp634-md\:min-h-\500px\{min-height:500px}.cmsp634-md\:\!max-w-\150px\{max-width:150px !important}.cmsp634-md\:max-w-\250px\{max-width:250px}.cmsp634-md\:max-w-\max-content\{max-width:max-content}.cmsp634-md\:items-end{align-items:flex-end}.cmsp634-md\:gap-4{gap:1rem}.cmsp634-md\:gap-5{gap:1.25rem}.cmsp634-md\:p-5{padding:1.25rem}.cmsp634-md\:\!py-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.cmsp634-md\:text-left{text-align:left}.cmsp634-md\:\!text-\1rem\{font-size:1rem !important}.cmsp634-md\:\!text-\30px\{font-size:30px !important}.cmsp634-md\:\!text-\40px\{font-size:40px !important}.cmsp634-md\:\!text-\50px\{font-size:50px !important}.cmsp634-md\:\!text-\80px\{font-size:80px !important}.cmsp634-md\:text-\1\.25rem\{font-size:1.25rem}.cmsp634-md\:text-\100\%\{font-size:100%}.cmsp634-md\:text-\20px\{font-size:20px}.cmsp634-md\:text-\3\.75rem\{font-size:3.75rem}.cmsp634-md\:\!leading-\30px\{line-height:30px !important}.cmsp634-md\:\!leading-\40px\{line-height:40px !important}.cmsp634-md\:\!leading-\50px\{line-height:50px !important}.cmsp634-md\:\!leading-\70px\{line-height:70px !important}}@media (min-width:1024px){.cmsp634-lg\:bottom-\5\%\{bottom:5%}.cmsp634-lg\:my-0{margin-top:0;margin-bottom:0}.cmsp634-lg\:mb-0{margin-bottom:0}.cmsp634-lg\:mb-5{margin-bottom:1.25rem}.cmsp634-lg\:mb-6{margin-bottom:1.5rem}.cmsp634-lg\:grid{display:grid}.cmsp634-lg\:aspect-auto{aspect-ratio:auto}.cmsp634-lg\:min-w-\60\%\{min-width:60%}.cmsp634-lg\:\!max-w-\250px\{max-width:250px !important}.cmsp634-lg\:\!max-w-\400px\{max-width:400px !important}.cmsp634-lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.cmsp634-lg\:gap-5{gap:1.25rem}.cmsp634-lg\:rounded-r-\50px\{border-top-right-radius:50px;border-bottom-right-radius:50px}.cmsp634-lg\:\!px-5{padding-left:1.25rem !important;padding-right:1.25rem !important}.cmsp634-lg\:\!py-4{padding-top:1rem !important;padding-bottom:1rem !important}.cmsp634-lg\:pl-12{padding-left:3rem}.cmsp634-lg\:pl-24{padding-left:6rem}.cmsp634-lg\:pr-0{padding-right:0}.cmsp634-lg\:pr-10{padding-right:2.5rem}.cmsp634-lg\:pt-14{padding-top:3.5rem}.cmsp634-lg\:\!text-\1\.25rem\{font-size:1.25rem !important}.cmsp634-lg\:\!text-\50px\{font-size:50px !important}.cmsp634-lg\:\!text-\60px\{font-size:60px !important}.cmsp634-lg\:text-\80px\{font-size:80px}.cmsp634-lg\:\!leading-\50px\{line-height:50px !important}.cmsp634-lg\:\!leading-\60px\{line-height:60px !important}}@media (min-width:1280px){.cmsp634-xl\:my-8{margin-top:2rem;margin-bottom:2rem}.cmsp634-xl\:ml-12{margin-left:3rem}.cmsp634-xl\:h-\750px\{height:750px}.cmsp634-xl\:min-h-\600px\{min-height:600px}.cmsp634-xl\:min-h-\700px\{min-height:700px}.cmsp634-xl\:min-h-\800px\{min-height:800px}.cmsp634-xl\:\!max-w-\500px\{max-width:500px !important}.cmsp634-xl\:max-w-\450px\{max-width:450px}.cmsp634-xl\:p-10{padding:2.5rem}.cmsp634-xl\:px-16{padding-left:4rem;padding-right:4rem}.cmsp634-xl\:px-24{padding-left:6rem;padding-right:6rem}.cmsp634-xl\:py-20{padding-top:5rem;padding-bottom:5rem}.cmsp634-xl\:pb-8{padding-bottom:2rem}.cmsp634-xl\:pl-24{padding-left:6rem}.cmsp634-xl\:pr-12{padding-right:3rem}.cmsp634-xl\:pt-40{padding-top:10rem}.cmsp634-xl\:\!text-\35px\{font-size:35px !important}.cmsp634-xl\:\!text-\70px\{font-size:70px !important}.cmsp634-xl\:\!text-\90px\{font-size:90px !important}.cmsp634-xl\:text-\80px\{font-size:80px}.cmsp634-xl\:text-\90px\{font-size:90px}.cmsp634-xl\:\!leading-\70px\{line-height:70px !important}.cmsp634-xl\:\!leading-\90px\{line-height:90px !important}.cmsp634-xl\:leading-\70px\{line-height:70px}}@media (min-width:1536px){.cmsp634-\32xl\:left-\4\%\{left:4%}.cmsp634-\32xl\:mt-5{margin-top:1.25rem}.cmsp634-\32xl\:max-h-\750px\{max-height:750px}.cmsp634-\32xl\:min-h-\750px\{min-height:750px}.cmsp634-\32xl\:\!max-w-\240px\{max-width:240px !important}.cmsp634-\32xl\:\!max-w-\380px\{max-width:380px !important}.cmsp634-\32xl\:\!max-w-\680px\{max-width:680px !important}.cmsp634-\32xl\:px-28{padding-left:7rem;padding-right:7rem}.cmsp634-\32xl\:pl-24{padding-left:6rem}.cmsp634-\32xl\:\!text-\140px\{font-size:140px !important}.cmsp634-\32xl\:\!text-\45px\{font-size:45px !important}.cmsp634-\32xl\:\!leading-\140px\{line-height:140px !important}.cmsp634-\32xl\:\!leading-\30px\{line-height:30px !important}.cmsp634-\32xl\:tracking-\4px\{letter-spacing:4px}}/style>style>#html-body data-pb-styleAPTUHSA,#html-body data-pb-styleEWAI98U{display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll}#html-body data-pb-styleEWAI98U{justify-content:flex-start;background-color:#94c83d;text-align:center;padding-top:50px;padding-bottom:50px}#html-body data-pb-styleAPTUHSA{justify-content:center}#html-body data-pb-styleXUFI1PC{border-style:none}#html-body data-pb-styleT7NRXC4,#html-body data-pb-styleXSO0AN7{max-width:100%;height:auto}#html-body data-pb-styleY28LT20{margin:0}#html-body data-pb-styleJC2OWH9{background-position:center bottom;background-size:cover;background-repeat:no-repeat}#html-body data-pb-styleLKPQ6YA{background-color:transparent}#html-body data-pb-styleECK0RPA{margin:0}#html-body data-pb-styleVUFX53Q{background-position:right top;background-size:cover;background-repeat:no-repeat}#html-body data-pb-styleTID1BQR{background-color:transparent}#html-body data-pb-styleTY31QEP{margin:0}#html-body data-pb-styleM1U7MIE{background-position:right center;background-size:cover;background-repeat:no-repeat}#html-body data-pb-styleCWNRVVX{background-color:transparent}#html-body data-pb-styleGXOFOEB{opacity:1;visibility:visible}#html-body data-pb-styleIKNJPQI{justify-content:flex-start;display:flex;flex-direction:column;background-position:center top;background-size:auto;background-repeat:no-repeat;background-attachment:scroll}#html-body data-pb-styleEVU5VYI{text-align:center}#html-body data-pb-styleO73NW34{text-align:center;padding:0}#html-body data-pb-styleEJK8195,#html-body data-pb-styleF2IDYDY,#html-body data-pb-styleIAM0EYH,#html-body data-pb-styleIE1QU8P,#html-body data-pb-styleO1PJPLQ,#html-body data-pb-styleORV6GR4,#html-body data-pb-styleQW741XJ{border-width:0}#html-body data-pb-stylePM804WP{text-align:center}#html-body data-pb-styleMBE4EJ5{border-width:0;min-height:300px}#html-body data-pb-styleHOVOBOY,#html-body data-pb-styleX1J4LJJ{background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll}#html-body data-pb-styleX1J4LJJ{justify-content:flex-start;display:flex;flex-direction:column}#html-body data-pb-styleHOVOBOY{align-self:stretch}#html-body data-pb-styleINXNLBM{display:flex;width:100%}#html-body data-pb-styleOR2LUHP{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;width:60%;align-self:stretch}#html-body data-pb-styleC4D0YJD{border-style:none}#html-body data-pb-styleFSJQNQA,#html-body data-pb-styleTKYBJXO{max-width:100%;height:auto}#html-body data-pb-styleVF96299{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;width:40%;align-self:center}#html-body data-pb-styleIQVFOUK,#html-body data-pb-styleKHXDLG7{text-align:left}#html-body data-pb-styleNG2YWP6{display:inline-block}#html-body data-pb-styleJ8U3M8T{text-align:center}#html-body data-pb-styleDG2GW4L,#html-body data-pb-styleU5VYLGK{background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll}#html-body data-pb-styleU5VYLGK{justify-content:flex-start;display:flex;flex-direction:column}#html-body data-pb-styleDG2GW4L{align-self:stretch}#html-body data-pb-styleSMO156P{display:flex;width:100%}#html-body data-pb-styleTREI1X7{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;width:60%;align-self:stretch}#html-body data-pb-styleO500SFI{border-style:none}#html-body data-pb-styleVGXLL37,#html-body data-pb-styleWVLGWBN{max-width:100%;height:auto}#html-body data-pb-styleXVTHGBU{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;width:40%;align-self:center}#html-body data-pb-styleHYFYTHK,#html-body data-pb-styleL96RJ7B{text-align:left}#html-body data-pb-styleW8W64ER{display:inline-block}#html-body data-pb-stylePKTUFK0{text-align:center}#html-body data-pb-styleE15UVSR,#html-body data-pb-styleS8WWNNR{background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll}#html-body data-pb-styleE15UVSR{justify-content:flex-start;display:flex;flex-direction:column}#html-body data-pb-styleS8WWNNR{align-self:stretch}#html-body data-pb-styleH6GMC9D{display:flex;width:100%}#html-body data-pb-styleJ7BOUB5{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;width:60%;align-self:stretch}#html-body data-pb-styleN2X1W3I{border-style:none}#html-body data-pb-styleHE2JGJH,#html-body data-pb-styleHE31H9Q{max-width:100%;height:auto}#html-body data-pb-styleHIE3VCD{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;width:40%;align-self:center}#html-body data-pb-styleLS3O60D,#html-body data-pb-styleWLNNP17{text-align:left}#html-body data-pb-styleTW0Q3G2{display:inline-block}#html-body data-pb-styleGUH2L10{text-align:center}#html-body data-pb-styleGNUCGOO,#html-body data-pb-styleH3RV48H{background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll}#html-body data-pb-styleGNUCGOO{justify-content:flex-start;display:flex;flex-direction:column}#html-body data-pb-styleH3RV48H{align-self:stretch}#html-body data-pb-stylePT9DU53{display:flex;width:100%}#html-body data-pb-styleKY2REMW{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;width:60%;align-self:stretch}#html-body data-pb-styleVEWQC8H{border-style:none}#html-body data-pb-styleG544SXG,#html-body data-pb-styleVNU3FHM{max-width:100%;height:auto}#html-body data-pb-styleM8AEFVE{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;width:40%;align-self:center}#html-body data-pb-styleSG8E04F,#html-body data-pb-styleWV2EKHV{text-align:left}#html-body data-pb-styleHSX1D6I{display:inline-block}#html-body data-pb-styleKGFJCCH{text-align:center}#html-body data-pb-styleMNFSDJB,#html-body data-pb-styleTCYPAK0{background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll}#html-body data-pb-styleTCYPAK0{justify-content:flex-start;display:flex;flex-direction:column}#html-body data-pb-styleMNFSDJB{align-self:stretch}#html-body data-pb-styleB7KJ819{display:flex;width:100%}#html-body data-pb-styleW1NMU7J{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;width:60%;align-self:stretch}#html-body data-pb-styleWWPS8V4{border-style:none}#html-body data-pb-styleA1FI8BG,#html-body data-pb-styleSKR699A{max-width:100%;height:auto}#html-body data-pb-styleMQRQXV7{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;width:40%;align-self:center}#html-body data-pb-stylePFIQ6LW,#html-body data-pb-styleU73QXVW{text-align:left}#html-body data-pb-styleKF77S62{display:inline-block}#html-body data-pb-styleVGI87Y8{text-align:center}#html-body data-pb-styleHFUW8VU,#html-body data-pb-styleXXOEOKM{background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll}#html-body data-pb-styleHFUW8VU{justify-content:flex-start;display:flex;flex-direction:column}#html-body data-pb-styleXXOEOKM{align-self:stretch}#html-body data-pb-styleNQ3PIJS{display:flex;width:100%}#html-body data-pb-styleG0W5TVL{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;width:60%;align-self:stretch}#html-body data-pb-styleE84IGBW{border-style:none}#html-body data-pb-styleE65ANWI,#html-body data-pb-styleXE56DWB{max-width:100%;height:auto}#html-body data-pb-styleBKTB747{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;width:40%;align-self:center}#html-body data-pb-stylePUYYNJV,#html-body data-pb-styleTLC9NAW{text-align:left}#html-body data-pb-styleK9YDFXP{display:inline-block}#html-body data-pb-styleCXSSLLK{text-align:center}#html-body data-pb-styleAA6NS0A,#html-body data-pb-styleYMMS2CG{background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll}#html-body data-pb-styleYMMS2CG{justify-content:flex-start;display:flex;flex-direction:column}#html-body data-pb-styleAA6NS0A{align-self:stretch}#html-body data-pb-styleUDJGKXV{display:flex;width:100%}#html-body data-pb-styleX4I7XPI{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;width:60%;align-self:stretch}#html-body data-pb-styleRIH7EQ0{border-style:none}#html-body data-pb-styleJIOC9MG,#html-body data-pb-styleRWXBU8M{max-width:100%;height:auto}#html-body data-pb-styleGHFTNCO{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;width:40%;align-self:center}#html-body data-pb-styleITJ3QA0,#html-body data-pb-styleQW7MBYK{text-align:left}#html-body data-pb-styleX2DPM8A{display:inline-block}#html-body data-pb-styleMRNTSYW{text-align:center}#html-body data-pb-styleAIIKA2R,#html-body data-pb-styleQPY6NO0{background-size:cover;background-repeat:no-repeat;background-attachment:scroll}#html-body data-pb-styleAIIKA2R{justify-content:flex-end;display:flex;flex-direction:column;background-position:center center}#html-body data-pb-styleQPY6NO0{background-position:left top;align-self:stretch}#html-body data-pb-styleSBUCCGF{display:flex;width:100%}#html-body data-pb-styleND4PVO6{justify-content:flex-end;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;width:41.6667%;align-self:flex-end}#html-body data-pb-styleT56Q6C4{display:flex;flex-direction:column}#html-body data-pb-styleAE6BBNM{display:inline-block}#html-body data-pb-styleB8AQDFP{text-align:center}#html-body data-pb-styleIF8DFKR,#html-body data-pb-styleNP9Y5GE{justify-content:flex-end;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;width:25%;align-self:flex-end}#html-body data-pb-styleNP9Y5GE{width:33.3333%}#html-body data-pb-styleYJG8BM0{display:flex;flex-direction:column}#html-body data-pb-styleNOD340V{display:inline-block}#html-body data-pb-styleT5S946M{text-align:center}#html-body data-pb-styleL2QNXNJ,#html-body data-pb-styleT2KXRU4{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll}#html-body data-pb-styleT2KXRU4{background-position:center top}#html-body data-pb-styleCWDBKPI,#html-body data-pb-styleS13QL74{text-align:center}#html-body data-pb-styleQULLE61{background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;align-self:stretch}#html-body data-pb-styleC9MQB63{display:flex;width:100%}#html-body data-pb-styleWTRRB1R{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;width:60%;align-self:stretch}#html-body data-pb-styleW6K4CQL{border-style:none}#html-body data-pb-styleL5RTNDM,#html-body data-pb-styleR2YI0OT{max-width:100%;height:auto}#html-body data-pb-styleDDFE7EH{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;text-align:left;width:40%;align-self:center}#html-body data-pb-styleQP6V22Q{display:flex;flex-direction:column}#html-body data-pb-styleJ2SNPB1{display:inline-block}#html-body data-pb-styleA0WXFA6{text-align:center}#html-body data-pb-styleEOJUB4R,#html-body data-pb-styleIRW7NV2{background-size:cover;background-repeat:no-repeat;background-attachment:scroll}#html-body data-pb-styleEOJUB4R{justify-content:flex-start;display:flex;flex-direction:column;background-position:center top}#html-body data-pb-styleIRW7NV2{background-position:left top;align-self:stretch}#html-body data-pb-styleOHAA84P{display:flex;width:100%}#html-body data-pb-styleAEX41U0,#html-body data-pb-styleP8QJVM7,#html-body data-pb-styleRF1T2OH{justify-content:center;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;width:30%;align-self:stretch}#html-body data-pb-styleP8QJVM7,#html-body data-pb-styleRF1T2OH{text-align:center;width:40%}#html-body data-pb-styleRF1T2OH{background-color:rgba(0,0,0,.3);width:30%}#html-body data-pb-styleFABV6AX{display:flex;flex-direction:column}#html-body data-pb-styleAH32PII{display:inline-block}#html-body data-pb-styleTMAWJ5H{text-align:center}#html-body data-pb-styleBAYADHD,#html-body data-pb-styleSYL9G5A{background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll}#html-body data-pb-styleBAYADHD{justify-content:flex-start;display:flex;flex-direction:column;background-color:#363636}#html-body data-pb-styleSYL9G5A{margin:0;padding:0;align-self:stretch}#html-body data-pb-styleK5YWOFW{display:flex;width:100%}#html-body data-pb-styleQOQLMSO,#html-body data-pb-styleVWH8NYS{justify-content:center;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;width:38.4615%;align-self:center}#html-body data-pb-styleQOQLMSO{justify-content:flex-end;width:30.7692%;align-self:stretch}#html-body data-pb-styleU452QD5{text-align:center;display:flex;flex-direction:column}#html-body data-pb-styleL455JHP{display:inline-block}#html-body data-pb-styleGA4DQCS{text-align:center}#html-body data-pb-styleI9SM58L{justify-content:flex-end;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;width:30.7692%;align-self:stretch}#html-body data-pb-styleRGOGUW6{text-align:center;display:flex;flex-direction:column}#html-body data-pb-styleJCTX05J{display:inline-block}#html-body data-pb-styleV1WV0OG{text-align:center}@media only screen and (max-width: 768px) { #html-body data-pb-styleEWAI98U{display:flex;flex-direction:column;padding-top:30px;padding-bottom:30px}#html-body data-pb-styleC4D0YJD,#html-body data-pb-styleE84IGBW,#html-body data-pb-styleN2X1W3I,#html-body data-pb-styleO500SFI,#html-body data-pb-styleRIH7EQ0,#html-body data-pb-styleVEWQC8H,#html-body data-pb-styleW6K4CQL,#html-body data-pb-styleWWPS8V4,#html-body data-pb-styleXUFI1PC{border-style:none} }/style>div classcmsp634-text-white data-content-typerow data-appearancefull-width data-enable-parallax0 data-parallax-speed0.5 data-background-images{} data-background-typeimage data-video-looptrue data-video-play-only-visibletrue data-video-lazy-loadtrue data-video-fallback-src data-elementmain data-pb-styleEWAI98U>div classrow-full-width-inner data-elementinner>div data-content-typehtml data-appearancedefault data-elementmain data-decodedtrue>div x-datacountdownTimer(2025\u002D12\u002D06T23\u003A59\u003A59, true) x-initstartTimer() classcmsp634--mb-2.5> div classcmsp634-relative cmsp634-z-20> h3 classcmsp634-text-2.5rem cmsp634-leading-2.5rem cmsp634-text-#333 font-heading cmsp634-mb-4>Dont Wait! DEFEND Black Friday Deals End In:/h3> div classcmsp634-flex cmsp634-justify-center cmsp634-gap-2 cmsp634-md:gap-4 cmsp634-md:gap-5 cmsp634-flex-wrap> div classcmsp634-flex cmsp634-flex-col cmsp634-items-center cmsp634-py-5 cmsp634-px-2.5 cmsp634-md:p-5 cmsp634-rounded-10px cmsp634-bg-#333 shadow-4px_4px_10px_0_rgba(0, 0, 0, 0.10)> span classcmsp634-text-2.75rem cmsp634-md:text-3.75rem font-regular font-heading cmsp634-leading-none cmsp634-text-white x-textdays>00/span> span classcmsp634-text-14px cmsp634-md:text-1.25rem cmsp634-uppercase cmsp634-font-bold>Days/span> /div> div classcmsp634-flex cmsp634-flex-col cmsp634-items-center cmsp634-py-5 cmsp634-px-2.5 cmsp634-md:p-5 cmsp634-rounded-10px cmsp634-bg-#333 shadow-4px_4px_10px_0_rgba(0, 0, 0, 0.10)> span classcmsp634-text-2.75rem cmsp634-md:text-3.75rem font-regular font-heading cmsp634-leading-none cmsp634-text-white x-texthours>00/span> span classcmsp634-text-14px cmsp634-md:text-1.25rem cmsp634-uppercase cmsp634-font-bold>Hours/span> /div> div classcmsp634-flex cmsp634-flex-col cmsp634-items-center cmsp634-py-5 cmsp634-px-2.5 cmsp634-md:p-5 cmsp634-rounded-10px cmsp634-bg-#333 shadow-4px_4px_10px_0_rgba(0, 0, 0, 0.10)> span classcmsp634-text-2.75rem cmsp634-md:text-3.75rem font-regular font-heading cmsp634-leading-none cmsp634-text-white x-textminutes>00/span> span classcmsp634-text-14px cmsp634-md:text-1.25rem cmsp634-uppercase cmsp634-font-bold>Minutes/span> /div> div classcmsp634-flex cmsp634-flex-col cmsp634-items-center cmsp634-py-5 cmsp634-px-2.5 cmsp634-md:p-5 cmsp634-rounded-10px cmsp634-bg-#333 shadow-4px_4px_10px_0_rgba(0, 0, 0, 0.10)> span classcmsp634-text-2.75rem cmsp634-md:text-3.75rem font-regular font-heading cmsp634-leading-none cmsp634-text-white x-textseconds>00/span> span classcmsp634-text-14px cmsp634-md:text-1.25rem cmsp634-uppercase cmsp634-font-bold>Seconds/span> /div> /div> /div>/div>script>function countdownTimer(endTimeString, showDays) { return { endTime: new Date(endTimeString).getTime(), showDays: showDays, days: 00, hours: 00, minutes: 00, seconds: 00, interval: null, startTimer() { this.updateTimer(); this.interval setInterval(() > { this.updateTimer(); const now new Date().getTime(); const distance this.endTime - now; if (distance 0) { clearInterval(this.interval); } }, 1000); }, updateTimer() { const now new Date().getTime(); const distance this.endTime - now; if (distance 0) { this.days 00; this.hours 00; this.minutes 00; this.seconds 00; return; } const days Math.floor(distance / (1000 * 60 * 60 * 24)); const hours Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)); const minutes Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60)); const seconds Math.floor((distance % (1000 * 60)) / 1000); if (this.showDays) { this.days String(days).padStart(2, 0); this.hours String(hours).padStart(2, 0); } else { const totalHours days * 24 + hours; this.hours String(totalHours).padStart(2, 0); } this.minutes String(minutes).padStart(2, 0); this.seconds String(seconds).padStart(2, 0); } }}/script>/div>/div>/div>div classreset-style cmsp634-relative data-content-typerow data-appearancefull-bleed data-enable-parallax0 data-parallax-speed0.5 data-background-images{} data-background-typeimage data-video-looptrue data-video-play-only-visibletrue data-video-lazy-loadtrue data-video-fallback-src data-elementmain data-pb-styleAPTUHSA>figure classcmsp634-absolute cmsp634-h-250px img-full cmsp634-md:h-500px cmsp634-xl:h-750px cmsp634-overflow-hidden cmsp634-w-full cmsp634-sm:hidden data-content-typeimage data-appearancefull-width data-elementmain data-pb-styleXUFI1PC>img classpagebuilder-mobile-hidden srchttps://defendcellcamqa.com/media/wysiwyg/defend-black-friday-bg-mobile.png width390 height250 alt title data-elementdesktop_image data-pb-styleT7NRXC4>img classpagebuilder-mobile-only srchttps://defendcellcamqa.com/media/wysiwyg/defend-black-friday-bg-mobile.png width390 height250 alt title data-elementmobile_image data-pb-styleXSO0AN7>/figure>div classpagebuilder-slider hero-slider cmsp634-min-h-250px cmsp634-max-h-250px cmsp634-md:min-h-500px cmsp634-md:max-h-500px cmsp634-2xl:min-h-750px cmsp634-2xl:max-h-750px reset-style data-content-typeslider data-appearancedefault data-autoplaytrue data-autoplay-speed8000 data-fadefalse data-infinite-looptrue data-show-arrowsfalse data-show-dotstrue data-elementmain>div classcmsp634-relative cmsp634-min-h-250px cmsp634-md:min-h-500px cmsp634-2xl:min-h-750px cmsp634-max-h-250px cmsp634-md:max-h-500px cmsp634-2xl:max-h-750px black-friday-defend data-content-typeslide data-slide-name data-appearancecollage-left data-show-buttonnever data-show-overlaynever data-elementmain data-pb-styleY28LT20>a href/defend-security-cam target data-link-typedefault titleBLACK FRIDAY DEAL data-elementlink>div classpagebuilder-slide-wrapper background-image-692b8442c9118 data-background-images{\desktop_image\:\https://defendcellcamqa.com/media/.renditions/wysiwyg/defend-black-friday-bg.jpg\,\mobile_image\:\https://defendcellcamqa.com/media/.renditions/wysiwyg/defend-black-friday-bg-mobile.png\} data-background-typeimage data-video-looptrue data-video-play-only-visibletrue data-video-lazy-loadtrue data-video-fallback-src data-elementwrapper data-pb-styleJC2OWH9>div classpagebuilder-overlay data-overlay-color aria-labelBLACK FRIDAY DEAL titleBLACK FRIDAY DEAL data-elementoverlay data-pb-styleLKPQ6YA>div classpagebuilder-collage-content>div data-elementcontent>h2 classcmsp634-!text-30px cmsp634-!leading-30px cmsp634-md:!text-40px cmsp634-md:!leading-40px cmsp634-lg:!text-50px cmsp634-lg:!leading-50px cmsp634-xl:!text-70px cmsp634-xl:!leading-70px cmsp634-tracking-2px cmsp634-font-bold>BLACK br classcmsp634-md:hidden>FRIDAY DEAL/h2>p classcmsp634-!text-primary-lighter cmsp634-font-light cmsp634-!text-45px cmsp634-!leading-35px cmsp634-md:!text-50px cmsp634-md:!leading-50px cmsp634-lg:!text-60px cmsp634-lg:!leading-60px cmsp634-xl:!text-90px cmsp634-xl:!leading-90px cmsp634-uppercase font-heading>20% offbr classcmsp634-md:hidden>span classcmsp634-text-85% cmsp634-md:text-100%> defend cam/span>/p>p>button typebutton>Secure Yours Today/button>/p>/div>/div>/div>/div>style typetext/css>.background-image-692b8442c9118 {background-image: url(https://defendcellcamqa.com/media/.renditions/wysiwyg/defend-black-friday-bg.jpg);}@media only screen and (max-width: 768px) and (min-width: 640px) {.background-image-692b8442c9118 {background-image: url(https://defendcellcamqa.com/media/.renditions/wysiwyg/defend-black-friday-bg-mobile.png);}}@media only screen and (max-width: 640px) {.background-image-692b8442c9118 {background-image: url(https://defendcellcamqa.com/media/.renditions/wysiwyg/defend-black-friday-bg-mobile.png);}}/style>/a>/div>div classcmsp634-min-h-250px cmsp634-md:min-h-500px cmsp634-2xl:min-h-750px cmsp634-max-h-250px cmsp634-md:max-h-500px cmsp634-2xl:max-h-750px cmsp634-relative three-sixty-banner data-content-typeslide data-slide-name data-appearancecollage-centered data-show-buttonnever data-show-overlaynever data-elementmain data-pb-styleECK0RPA>a href/defend-360-cam target data-link-typedefault titleDEFEND 360 data-elementlink>div classpagebuilder-slide-wrapper background-image-692b8442c9159 data-background-images{\desktop_image\:\https://defendcellcamqa.com/media/wysiwyg/360-bnr-bg.jpg\,\mobile_image\:\https://defendcellcamqa.com/media/.renditions/wysiwyg/360-bnr-bg-mobile_1.jpg\} data-background-typeimage data-video-looptrue data-video-play-only-visibletrue data-video-lazy-loadtrue data-video-fallback-src data-elementwrapper data-pb-styleVUFX53Q>div classpagebuilder-overlay data-overlay-color aria-labelDEFEND 360 titleDEFEND 360 data-elementoverlay data-pb-styleTID1BQR>div classpagebuilder-collage-content>div data-elementcontent>p>picture>source srcset/media/.renditions/wysiwyg/360-camera-bnr.png media(min-width: 640px)>img classcmsp634-absolute cmsp634-left-2% cmsp634-2xl:left-4% cmsp634-top-2% cmsp634-!max-w-110px cmsp634-lg:!max-w-250px cmsp634-2xl:!max-w-380px cmsp634-w-full cmsp634-!mb-0 cmsp634-!max-h-inherit src/media/.renditions/wysiwyg/360-camera-bnr-mobile.png altHero Banner width380 height637 loadingeager>/source>/picture>picture>source srcset/media/.renditions/wysiwyg/donkey-360.png media(min-width: 640px)>img idDRYCKMA classcmsp634-!max-h-inherit cmsp634-absolute cmsp634-right-0 cmsp634-bottom-0 cmsp634-!max-w-200px cmsp634-lg:!max-w-400px cmsp634-z-10 cmsp634-xl:!max-w-500px cmsp634-2xl:!max-w-680px cmsp634-w-full cmsp634-!mb-0 src/media/.renditions/wysiwyg/donkey-360-mobile.png altDonkey width731 height720 loadingeager>/source>/picture>/p>div classcmsp634-relative cmsp634-text-center cmsp634-z-20 cmsp634-2xl:mt-5>h2 classcmsp634-!text-50px cmsp634-!text-white cmsp634-!leading-50px cmsp634-md:!text-80px cmsp634-md:!leading-70px cmsp634-2xl:!text-140px cmsp634-2xl:!leading-140px cmsp634-font-bold cmsp634-tracking-2px cmsp634-2xl:tracking-4px>DEFEND img classcmsp634-inline cmsp634-!max-w-80px cmsp634-!max-h-inherit cmsp634-md:!max-w-150px cmsp634-2xl:!max-w-240px srchttps://stage.tactacam.com/media/.renditions/wysiwyg/360-big.png alt width240 height116>/h2>p classcmsp634-!text-17px cmsp634-sm:!text-20px cmsp634-!leading-20px cmsp634-md:!text-30px cmsp634-md:!leading-30px cmsp634-xl:!text-35px cmsp634-2xl:!text-45px cmsp634-font-semibold cmsp634-2xl:!leading-30px>360 Degrees of Coverage.br classcmsp634-sm:hidden> 365 Days a Year./p>button classbtn-pirmary cmsp634-!py-1 cmsp634-md:!py-2 cmsp634-lg:!py-4 cmsp634-!px-4 cmsp634-lg:!px-5 cmsp634-!text-0.875rem cmsp634-md:!text-1rem cmsp634-lg:!text-1.25rem cmsp634-!font-semibold cmsp634-rounded-50px tabindex0 titleGet One Today>Get One Today/button>/div>/div>/div>/div>/div>style typetext/css>.background-image-692b8442c9159 {background-image: url(https://defendcellcamqa.com/media/wysiwyg/360-bnr-bg.jpg);}@media only screen and (max-width: 768px) and (min-width: 640px) {.background-image-692b8442c9159 {background-image: url(https://defendcellcamqa.com/media/.renditions/wysiwyg/360-bnr-bg-mobile_1.jpg);}}@media only screen and (max-width: 640px) {.background-image-692b8442c9159 {background-image: url(https://defendcellcamqa.com/media/.renditions/wysiwyg/360-bnr-bg-mobile_1.jpg);}}/style>/a>/div>div classcmsp634-relative cmsp634-min-h-250px cmsp634-md:min-h-500px cmsp634-2xl:min-h-750px cmsp634-max-h-250px cmsp634-md:max-h-500px cmsp634-2xl:max-h-750px cmsp634-text-center jack-defend-banner data-content-typeslide data-slide-name data-appearancecollage-centered data-show-buttonalways data-show-overlaynever data-elementmain data-pb-styleTY31QEP>a href/security-cameras target data-link-typedefault titleDefend your ass-ets data-elementlink>div classpagebuilder-slide-wrapper background-image-692b8442c9188 data-background-images{\desktop_image\:\https://defendcellcamqa.com/media/.renditions/wysiwyg/jack-desktop-bg.jpg\,\mobile_image\:\https://defendcellcamqa.com/media/.renditions/wysiwyg/jack-mobile-bg_1.jpg\} data-background-typeimage data-video-looptrue data-video-play-only-visibletrue data-video-lazy-loadtrue data-video-fallback-src data-elementwrapper data-pb-styleM1U7MIE>div classpagebuilder-overlay data-overlay-color aria-labelDefend your ass-ets titleDefend your ass-ets data-elementoverlay data-pb-styleCWNRVVX>div classpagebuilder-collage-content>div data-elementcontent>p>img classcmsp634-w-full cmsp634-!max-w-80% mobile-img cmsp634-mx-auto cmsp634-hidden srchttps://stage.tactacam.com/media/.renditions/wysiwyg/jack-banner-mobile-overlay.jpg alt loadinglazy>/p>h2 classcmsp634-!text-26px xs:!text-30px cmsp634-md:!text-50px cmsp634-xl:!text-70px cmsp634-!leading-85% cmsp634-font-semibold>STUBBORN SECURITY br classcmsp634-hidden cmsp634-md:block>THAT KEEPSbr classcmsp634-hidden cmsp634-md:block>KICKING BEYOND WI-FI.br>span classcmsp634-text-primary-lighter>DEFEND span classcmsp634-font-normal>YOUR/span> ASS-ets./span>/h2>/div>button typebutton classpagebuilder-slide-button pagebuilder-button-primary data-elementbutton data-pb-styleGXOFOEB>Shop Now/button>/div>/div>/div>style typetext/css>.background-image-692b8442c9188 {background-image: url(https://defendcellcamqa.com/media/.renditions/wysiwyg/jack-desktop-bg.jpg);}@media only screen and (max-width: 768px) and (min-width: 640px) {.background-image-692b8442c9188 {background-image: url(https://defendcellcamqa.com/media/.renditions/wysiwyg/jack-mobile-bg_1.jpg);}}@media only screen and (max-width: 640px) {.background-image-692b8442c9188 {background-image: url(https://defendcellcamqa.com/media/.renditions/wysiwyg/jack-mobile-bg_1.jpg);}}/style>/a>/div>/div>/div>div classcmsp634-pt-10 cmsp634-pb-0 cmsp634-sm:pb-10 cmsp634-xl:py-20 cmsp634-xl:pt-40 background-image-692b8442c91b5 data-content-typerow data-appearancefull-bleed data-enable-parallax0 data-parallax-speed0.5 data-background-images{\desktop_image\:\https://defendcellcamqa.com/media/wysiwyg/DEFEND.jpg\,\mobile_image\:\https://defendcellcamqa.com/media/wysiwyg/DEFEND.png\} data-background-typeimage data-video-looptrue data-video-play-only-visibletrue data-video-lazy-loadtrue data-video-fallback-src data-elementmain data-pb-styleIKNJPQI>h2 classsection-heading data-content-typeheading data-appearancedefault data-elementmain data-pb-styleEVU5VYI>Security for Every Setting/h2>div classcmsp634-text-15px cmsp634-md:text-20px cmsp634-max-w-75% cmsp634-sm:max-w-full cmsp634-mx-auto home-page--h1 data-content-typetext data-appearancedefault data-elementmain data-pb-styleO73NW34>p>DEFEND is the wireless cellular security camera that protects you, your family, your property, and your operations./p>/div>div classhomepage-tabs reset-style tab-align-center data-content-typetabs data-appearancedefault data-active-tab0 data-elementmain>ul roletablist classtabs-navigation data-elementnavigation data-pb-stylePM804WP>li roletab classtab-header data-elementheaders data-pb-styleEJK8195>a href#HCN2XLD classtab-title>span classtab-title>Remote Surveillance/span>/a>/li>li roletab classtab-header data-elementheaders data-pb-styleIAM0EYH>a href#GHFN72J classtab-title>span classtab-title>Construction & Job Site/span>/a>/li>li roletab classtab-header data-elementheaders data-pb-styleIE1QU8P>a href#NDKVB6R classtab-title>span classtab-title>Farm & Ranch/span>/a>/li>li roletab classtab-header data-elementheaders data-pb-styleO1PJPLQ>a href#IATJ3OW classtab-title>span classtab-title>Boat & Marina/span>/a>/li>li roletab classtab-header data-elementheaders data-pb-styleF2IDYDY>a href#SVQ5VFU classtab-title>span classtab-title>RV & Camper/span>/a>/li>li roletab classtab-header data-elementheaders data-pb-styleORV6GR4>a href#G2XN3YM classtab-title>span classtab-title>Severe Weather/span>/a>/li>li roletab classtab-header data-elementheaders data-pb-styleQW741XJ>a href#AOWX6ME classtab-title>span classtab-title>Pest Surveillance/span>/a>/li>/ul>div classtabs-content data-elementcontent data-pb-styleMBE4EJ5>div data-content-typetab-item data-appearancedefault data-tab-nameRemote Surveillance data-background-images{} data-elementmain idHCN2XLD data-pb-styleX1J4LJJ>div classpagebuilder-column-group cmsp634-pt-6 cmsp634-lg:pt-14 reset-style data-background-images{} data-content-typecolumn-group data-appearancedefault data-grid-size10 data-elementmain data-pb-styleHOVOBOY>div classpagebuilder-column-line data-content-typecolumn-line data-elementmain data-pb-styleINXNLBM>div classpagebuilder-column cmsp634-min-w-55% cmsp634-lg:min-w-60% data-content-typecolumn data-appearancefull-height data-background-images{} data-elementmain data-pb-styleOR2LUHP>figure classcmsp634-overflow-hidden cmsp634-rounded-r-25px cmsp634-lg:rounded-r-50px data-content-typeimage data-appearancebrowser-lazy-image data-elementmain data-pb-styleC4D0YJD>img classpagebuilder-mobile-hidden loadinglazy srchttps://defendcellcamqa.com/media/wysiwyg/remote.jpg width800 height442 alt title data-elementdesktop_image data-pb-styleFSJQNQA>img classpagebuilder-mobile-only loadinglazy srchttps://defendcellcamqa.com/media/wysiwyg/remote.jpg width400 height221 alt title data-elementmobile_image data-pb-styleTKYBJXO>/figure>/div>div classpagebuilder-column cmsp634-px-2 cmsp634-sm:pl-8 cmsp634-lg:pr-0 cmsp634-lg:pl-24 data-content-typecolumn data-appearancealign-center data-background-images{} data-elementmain data-pb-styleVF96299>div classsection-heading cmsp634-lg:pr-10 cmsp634-mb-4 cmsp634-lg:mb-6 cmsp634-min-h-100px cmsp634-sm:min-h-inherit data-content-typetext data-appearancedefault data-elementmain data-pb-styleIQVFOUK>p>Off-Grid Remote/p>p>Security. Easily and/p>p>Affordably Protect/p>p>Your Cabin./p>/div>div data-content-typebuttons data-appearanceinline data-same-widthfalse data-elementmain data-pb-styleKHXDLG7>div classcmsp634-max-w-250px btn-space-reset data-content-typebutton-item data-appearancedefault data-elementmain data-pb-styleNG2YWP6>a classpagebuilder-button-primary hrefhttps://defendcellcamqa.com/security-cameras target data-link-typecategory data-elementlink data-pb-styleJ8U3M8T>span data-elementlink_text>Shop Now/span>/a>/div>/div>/div>/div>/div>/div>div data-content-typetab-item data-appearancedefault data-tab-nameConstruction & Job Site data-background-images{} data-elementmain idGHFN72J data-pb-styleU5VYLGK>div classpagebuilder-column-group cmsp634-pt-6 cmsp634-lg:pt-14 reset-style data-background-images{} data-content-typecolumn-group data-appearancedefault data-grid-size10 data-elementmain data-pb-styleDG2GW4L>div classpagebuilder-column-line data-content-typecolumn-line data-elementmain data-pb-styleSMO156P>div classpagebuilder-column cmsp634-min-w-55% cmsp634-lg:min-w-60% data-content-typecolumn data-appearancefull-height data-background-images{} data-elementmain data-pb-styleTREI1X7>figure classcmsp634-overflow-hidden cmsp634-rounded-r-25px cmsp634-lg:rounded-r-50px data-content-typeimage data-appearancebrowser-lazy-image data-elementmain data-pb-styleO500SFI>img classpagebuilder-mobile-hidden loadinglazy srchttps://defendcellcamqa.com/media/wysiwyg/construction_1.jpg width800 height442 alt title data-elementdesktop_image data-pb-styleWVLGWBN>img classpagebuilder-mobile-only loadinglazy srchttps://defendcellcamqa.com/media/wysiwyg/construction_1.jpg width400 height221 alt title data-elementmobile_image data-pb-styleVGXLL37>/figure>/div>div classpagebuilder-column cmsp634-px-2 cmsp634-sm:pl-8 cmsp634-lg:pr-0 cmsp634-lg:pl-24 data-content-typecolumn data-appearancealign-center data-background-images{} data-elementmain data-pb-styleXVTHGBU>div classsection-heading cmsp634-lg:pr-10 cmsp634-mb-4 cmsp634-lg:mb-6 cmsp634-min-h-100px cmsp634-sm:min-h-inherit data-content-typetext data-appearancedefault data-elementmain data-pb-styleHYFYTHK>p>Construction Site/p>p>Security, Simplified./p>/div>div data-content-typebuttons data-appearanceinline data-same-widthfalse data-elementmain data-pb-styleL96RJ7B>div classcmsp634-max-w-250px btn-space-reset data-content-typebutton-item data-appearancedefault data-elementmain data-pb-styleW8W64ER>a classpagebuilder-button-primary hrefhttps://defendcellcamqa.com/security-cameras target data-link-typecategory data-elementlink data-pb-stylePKTUFK0>span data-elementlink_text>Shop Now/span>/a>/div>/div>/div>/div>/div>/div>div data-content-typetab-item data-appearancedefault data-tab-nameFarm & Ranch data-background-images{} data-elementmain idNDKVB6R data-pb-styleE15UVSR>div classpagebuilder-column-group cmsp634-pt-6 cmsp634-lg:pt-14 reset-style data-background-images{} data-content-typecolumn-group data-appearancedefault data-grid-size10 data-elementmain data-pb-styleS8WWNNR>div classpagebuilder-column-line data-content-typecolumn-line data-elementmain data-pb-styleH6GMC9D>div classpagebuilder-column cmsp634-min-w-55% cmsp634-lg:min-w-60% data-content-typecolumn data-appearancefull-height data-background-images{} data-elementmain data-pb-styleJ7BOUB5>figure classcmsp634-overflow-hidden cmsp634-rounded-r-25px cmsp634-lg:rounded-r-50px data-content-typeimage data-appearancebrowser-lazy-image data-elementmain data-pb-styleN2X1W3I>img classpagebuilder-mobile-hidden loadinglazy srchttps://defendcellcamqa.com/media/wysiwyg/farm.jpg width800 height442 alt title data-elementdesktop_image data-pb-styleHE2JGJH>img classpagebuilder-mobile-only loadinglazy srchttps://defendcellcamqa.com/media/wysiwyg/farm.jpg width400 height221 alt title data-elementmobile_image data-pb-styleHE31H9Q>/figure>/div>div classpagebuilder-column cmsp634-px-2 cmsp634-sm:pl-8 cmsp634-lg:pr-0 cmsp634-lg:pl-24 data-content-typecolumn data-appearancealign-center data-background-images{} data-elementmain data-pb-styleHIE3VCD>div classsection-heading cmsp634-lg:pr-10 cmsp634-mb-4 cmsp634-lg:mb-6 cmsp634-min-h-100px cmsp634-sm:min-h-inherit data-content-typetext data-appearancedefault data-elementmain data-pb-styleLS3O60D>p>Security and/p>p>Operations/p>p>Solutions for Your/p>p>Farm or Ranch./p>/div>div data-content-typebuttons data-appearanceinline data-same-widthfalse data-elementmain data-pb-styleWLNNP17>div classcmsp634-max-w-250px btn-space-reset data-content-typebutton-item data-appearancedefault data-elementmain data-pb-styleTW0Q3G2>a classpagebuilder-button-primary hrefhttps://defendcellcamqa.com/security-cameras target data-link-typecategory data-elementlink data-pb-styleGUH2L10>span data-elementlink_text>Shop Now/span>/a>/div>/div>/div>/div>/div>/div>div data-content-typetab-item data-appearancedefault data-tab-nameBoat & Marina data-background-images{} data-elementmain idIATJ3OW data-pb-styleGNUCGOO>div classpagebuilder-column-group cmsp634-pt-6 cmsp634-lg:pt-14 reset-style data-background-images{} data-content-typecolumn-group data-appearancedefault data-grid-size10 data-elementmain data-pb-styleH3RV48H>div classpagebuilder-column-line data-content-typecolumn-line data-elementmain data-pb-stylePT9DU53>div classpagebuilder-column cmsp634-min-w-55% cmsp634-lg:min-w-60% data-content-typecolumn data-appearancefull-height data-background-images{} data-elementmain data-pb-styleKY2REMW>figure classcmsp634-overflow-hidden cmsp634-rounded-r-25px cmsp634-lg:rounded-r-50px data-content-typeimage data-appearancebrowser-lazy-image data-elementmain data-pb-styleVEWQC8H>img classpagebuilder-mobile-hidden loadinglazy srchttps://defendcellcamqa.com/media/wysiwyg/boating.jpg width800 height442 alt title data-elementdesktop_image data-pb-styleVNU3FHM>img classpagebuilder-mobile-only loadinglazy srchttps://defendcellcamqa.com/media/wysiwyg/boating.jpg width400 height221 alt title data-elementmobile_image data-pb-styleG544SXG>/figure>/div>div classpagebuilder-column cmsp634-px-2 cmsp634-sm:pl-8 cmsp634-lg:pr-0 cmsp634-lg:pl-24 data-content-typecolumn data-appearancealign-center data-background-images{} data-elementmain data-pb-styleM8AEFVE>div classsection-heading cmsp634-lg:pr-10 cmsp634-mb-4 cmsp634-lg:mb-6 cmsp634-min-h-100px cmsp634-sm:min-h-inherit data-content-typetext data-appearancedefault data-elementmain data-pb-styleWV2EKHV>p>Keep an Eye on Your/p>p>Boat. Anytime,/p>p>Anywhere./p>/div>div data-content-typebuttons data-appearanceinline data-same-widthfalse data-elementmain data-pb-styleSG8E04F>div classcmsp634-max-w-250px btn-space-reset data-content-typebutton-item data-appearancedefault data-elementmain data-pb-styleHSX1D6I>a classpagebuilder-button-primary hrefhttps://defendcellcamqa.com/security-cameras target data-link-typecategory data-elementlink data-pb-styleKGFJCCH>span data-elementlink_text>Shop Now/span>/a>/div>/div>/div>/div>/div>/div>div data-content-typetab-item data-appearancedefault data-tab-nameRV & Camper data-background-images{} data-elementmain idSVQ5VFU data-pb-styleTCYPAK0>div classpagebuilder-column-group cmsp634-pt-6 cmsp634-lg:pt-14 reset-style data-background-images{} data-content-typecolumn-group data-appearancedefault data-grid-size10 data-elementmain data-pb-styleMNFSDJB>div classpagebuilder-column-line data-content-typecolumn-line data-elementmain data-pb-styleB7KJ819>div classpagebuilder-column cmsp634-min-w-55% cmsp634-lg:min-w-60% data-content-typecolumn data-appearancefull-height data-background-images{} data-elementmain data-pb-styleW1NMU7J>figure classcmsp634-overflow-hidden cmsp634-rounded-r-25px cmsp634-lg:rounded-r-50px data-content-typeimage data-appearancebrowser-lazy-image data-elementmain data-pb-styleWWPS8V4>img classpagebuilder-mobile-hidden loadinglazy srchttps://defendcellcamqa.com/media/wysiwyg/camper.jpg width800 height442 alt title data-elementdesktop_image data-pb-styleA1FI8BG>img classpagebuilder-mobile-only loadinglazy srchttps://defendcellcamqa.com/media/wysiwyg/camper.jpg width400 height221 alt title data-elementmobile_image data-pb-styleSKR699A>/figure>/div>div classpagebuilder-column cmsp634-px-2 cmsp634-sm:pl-8 cmsp634-lg:pr-0 cmsp634-lg:pl-24 data-content-typecolumn data-appearancealign-center data-background-images{} data-elementmain data-pb-styleMQRQXV7>div classsection-heading cmsp634-lg:pr-10 cmsp634-mb-4 cmsp634-lg:mb-6 cmsp634-min-h-100px cmsp634-sm:min-h-inherit data-content-typetext data-appearancedefault data-elementmain data-pb-stylePFIQ6LW>p>Your Camper, /p>p>Always in Sight./p>/div>div data-content-typebuttons data-appearanceinline data-same-widthfalse data-elementmain data-pb-styleU73QXVW>div classcmsp634-max-w-250px btn-space-reset data-content-typebutton-item data-appearancedefault data-elementmain data-pb-styleKF77S62>a classpagebuilder-button-primary hrefhttps://defendcellcamqa.com/security-cameras target data-link-typecategory data-elementlink data-pb-styleVGI87Y8>span data-elementlink_text>Shop Now/span>/a>/div>/div>/div>/div>/div>/div>div data-content-typetab-item data-appearancedefault data-tab-nameSevere Weather data-background-images{} data-elementmain idG2XN3YM data-pb-styleHFUW8VU>div classpagebuilder-column-group cmsp634-pt-6 cmsp634-lg:pt-14 reset-style data-background-images{} data-content-typecolumn-group data-appearancedefault data-grid-size10 data-elementmain data-pb-styleXXOEOKM>div classpagebuilder-column-line data-content-typecolumn-line data-elementmain data-pb-styleNQ3PIJS>div classpagebuilder-column cmsp634-min-w-55% cmsp634-lg:min-w-60% data-content-typecolumn data-appearancefull-height data-background-images{} data-elementmain data-pb-styleG0W5TVL>figure classcmsp634-overflow-hidden cmsp634-rounded-r-25px cmsp634-lg:rounded-r-50px data-content-typeimage data-appearancebrowser-lazy-image data-elementmain data-pb-styleE84IGBW>img classpagebuilder-mobile-hidden loadinglazy srchttps://defendcellcamqa.com/media/wysiwyg/Monitoring.jpg width800 height442 alt title data-elementdesktop_image data-pb-styleE65ANWI>img classpagebuilder-mobile-only loadinglazy srchttps://defendcellcamqa.com/media/wysiwyg/Monitoring.jpg width400 height221 alt title data-elementmobile_image data-pb-styleXE56DWB>/figure>/div>div classpagebuilder-column cmsp634-px-2 cmsp634-sm:pl-8 cmsp634-lg:pr-0 cmsp634-lg:pl-24 data-content-typecolumn data-appearancealign-center data-background-images{} data-elementmain data-pb-styleBKTB747>div classsection-heading cmsp634-lg:pr-10 cmsp634-mb-4 cmsp634-lg:mb-6 cmsp634-min-h-100px cmsp634-sm:min-h-inherit data-content-typetext data-appearancedefault data-elementmain data-pb-styleTLC9NAW>p>Fire, Storm, and/p>p>Disaster Monitoring./p>/div>div data-content-typebuttons data-appearanceinline data-same-widthfalse data-elementmain data-pb-stylePUYYNJV>div classcmsp634-max-w-250px btn-space-reset data-content-typebutton-item data-appearancedefault data-elementmain data-pb-styleK9YDFXP>a classpagebuilder-button-primary hrefhttps://defendcellcamqa.com/security-cameras target data-link-typecategory data-elementlink data-pb-styleCXSSLLK>span data-elementlink_text>Shop Now/span>/a>/div>/div>/div>/div>/div>/div>div data-content-typetab-item data-appearancedefault data-tab-namePest Surveillance data-background-images{} data-elementmain idAOWX6ME data-pb-styleYMMS2CG>div classpagebuilder-column-group cmsp634-pt-6 cmsp634-lg:pt-14 reset-style data-background-images{} data-content-typecolumn-group data-appearancedefault data-grid-size10 data-elementmain data-pb-styleAA6NS0A>div classpagebuilder-column-line data-content-typecolumn-line data-elementmain data-pb-styleUDJGKXV>div classpagebuilder-column cmsp634-min-w-55% cmsp634-lg:min-w-60% data-content-typecolumn data-appearancefull-height data-background-images{} data-elementmain data-pb-styleX4I7XPI>figure classcmsp634-overflow-hidden cmsp634-rounded-r-25px cmsp634-lg:rounded-r-50px data-content-typeimage data-appearancebrowser-lazy-image data-elementmain data-pb-styleRIH7EQ0>img classpagebuilder-mobile-hidden loadinglazy srchttps://defendcellcamqa.com/media/wysiwyg/pest-surveillance_1.png width800 height442 alt title data-elementdesktop_image data-pb-styleRWXBU8M>img classpagebuilder-mobile-only loadinglazy srchttps://defendcellcamqa.com/media/wysiwyg/pest-surveillance_1.png width400 height221 alt title data-elementmobile_image data-pb-styleJIOC9MG>/figure>/div>div classpagebuilder-column cmsp634-px-2 cmsp634-sm:pl-8 cmsp634-lg:pr-0 cmsp634-lg:pl-24 data-content-typecolumn data-appearancealign-center data-background-images{} data-elementmain data-pb-styleGHFTNCO>div classsection-heading cmsp634-lg:pr-10 cmsp634-mb-4 cmsp634-lg:mb-6 cmsp634-min-h-100px cmsp634-sm:min-h-inherit data-content-typetext data-appearancedefault data-elementmain data-pb-styleITJ3QA0>p>Remote pest/p>p>monitoring and/p>p>problem wildlife/p>p>surveillance./p>/div>div data-content-typebuttons data-appearanceinline data-same-widthfalse data-elementmain data-pb-styleQW7MBYK>div classcmsp634-max-w-250px btn-space-reset data-content-typebutton-item data-appearancedefault data-elementmain data-pb-styleX2DPM8A>a classpagebuilder-button-primary hrefsecurity-cameras%20 target data-link-typedefault data-elementlink data-pb-styleMRNTSYW>span data-elementlink_text>Shop Now/span>/a>/div>/div>/div>/div>/div>/div>/div>/div>/div>div classcmsp634-min-h-800px cmsp634-md:min-h-500px cmsp634-xl:min-h-800px reset-style cmsp634-px-8 cmsp634-xl:px-16 cmsp634-2xl:px-28 homepage-hunt-security background-image-692b8442c91fe data-content-typerow data-appearancefull-bleed data-enable-parallax0 data-parallax-speed0.5 data-background-images{\desktop_image\:\https://defendcellcamqa.com/media/.renditions/wysiwyg/360-bg-desktop_2.jpg\,\mobile_image\:\https://defendcellcamqa.com/media/.renditions/wysiwyg/360-bg-mobile_2.jpg\} data-background-typeimage data-video-looptrue data-video-play-only-visibletrue data-video-lazy-loadtrue data-video-fallback-src data-elementmain data-pb-styleAIIKA2R>div classpagebuilder-column-group cmsp634-md:min-h-400px cmsp634-xl:min-h-600px cmsp634-md:flex cmsp634-md:items-end data-background-images{} data-content-typecolumn-group data-appearancedefault data-grid-size12 data-elementmain data-pb-styleQPY6NO0>div classpagebuilder-column-line data-content-typecolumn-line data-elementmain data-pb-styleSBUCCGF>div classpagebuilder-column cmsp634-text-center cmsp634-md:text-left cmsp634-pb-14 cmsp634-xl:pb-8 cmsp634-aspect-3/4 cmsp634-md:aspect-inherit data-content-typecolumn data-appearancealign-bottom data-background-images{} data-elementmain data-pb-styleND4PVO6>h2 classcmsp634-text-white cmsp634-text-60px cmsp634-leading-50px cmsp634-mb-7 cmsp634-xl:text-90px cmsp634-xl:leading-70px cmsp634-max-w-90% cmsp634-sm:max-w-full cmsp634-mx-auto cmsp634-sm:mx-0 data-content-typeheading data-appearancedefault data-elementmain>Cameras/h2>div data-content-typebuttons data-appearancestacked data-same-widthfalse data-elementmain data-pb-styleT56Q6C4 classbtn-primary-light>div classcmsp634-max-w-180px cmsp634-md:max-w-250px cmsp634-mx-auto cmsp634-md:mx-0 btn-space-reset blur-btn data-content-typebutton-item data-appearancedefault data-elementmain data-pb-styleAE6BBNM>a classpagebuilder-button-secondary hrefhttps://defendcellcamqa.com/security-cameras target data-link-typecategory data-elementlink data-pb-styleB8AQDFP>span data-elementlink_text>Shop Now/span>/a>/div>/div>/div>div classpagebuilder-column data-content-typecolumn data-appearancealign-bottom data-background-images{} data-elementmain data-pb-styleIF8DFKR>/div>div classpagebuilder-column cmsp634-text-center cmsp634-md:text-left cmsp634-pb-14 cmsp634-xl:pb-8 cmsp634-2xl:pl-24 cmsp634-justify-end md:justify-inherit cmsp634-aspect-3/4 cmsp634-md:aspect-inherit data-content-typecolumn data-appearancealign-bottom data-background-images{} data-elementmain data-pb-styleNP9Y5GE>h2 classcmsp634-text-white cmsp634-text-60px cmsp634-leading-50px cmsp634-mb-7 cmsp634-xl:text-90px cmsp634-xl:leading-70px data-content-typeheading data-appearancedefault data-elementmain>Accessories/h2>div data-content-typebuttons data-appearancestacked data-same-widthfalse data-elementmain data-pb-styleYJG8BM0 classbtn-primary-light>div classcmsp634-max-w-180px cmsp634-md:max-w-250px cmsp634-mx-auto cmsp634-md:mx-0 btn-space-reset blur-btn data-content-typebutton-item data-appearancedefault data-elementmain data-pb-styleNOD340V>a classpagebuilder-button-secondary hrefhttps://defendcellcamqa.com/security-accessories target data-link-typecategory data-elementlink data-pb-styleT5S946M>span data-elementlink_text>Shop Now/span>/a>/div>/div>/div>/div>/div>/div>div data-content-typerow data-appearancecontained data-elementmain>div classcmsp634-py-10 cmsp634-xl:py-20 reset-style data-enable-parallax0 data-parallax-speed0.5 data-background-images{} data-background-typeimage data-video-looptrue data-video-play-only-visibletrue data-video-lazy-loadtrue data-video-fallback-src data-elementinner data-pb-styleL2QNXNJ>div classhome-products data-content-typeproducts data-appearancecarousel data-autoplayfalse data-autoplay-speed4000 data-infinite-loopfalse data-show-arrowsfalse data-show-dotstrue data-carousel-modedefault data-center-padding90px data-elementmain> div classglider-contain product-items widget-product-carousel> div data-roleglider-content classmx-auto relative overflow-y-hidden overflow-x-scroll abc> form methodpost actionhttps://defendcellcamqa.com/checkout/cart/add/uenc/%25uenc%25/product/1624/ classitem product product-item product_addtocart_form bg-gray p-3 lg:p-5 lg:pb-14 flex flex-col justify-between w-full > input nameform_key typehidden valueZwzFmKlZbIRZ2AFe> input typehidden nameproduct value1624> div classimage-block> a hrefhttps://defendcellcamqa.com/defend-360-cam classproduct photo product-item-photo block mx-auto mb-3 tabindex-1> img classobject-contain mx-auto product-image-photo x-data @update-gallery-1624.window$root.src $event.detail srchttps://defendcellcamqa.com/media/catalog/product/d/e/defend_360_cam_01_1.png?quality80&fitbounds&height500&width500&canvas500:500 loadinglazy width500 height500 altDEFEND 360 Cellular Security Camera titleDEFEND 360 Cellular Security Camera>!--mf_product_label_comment_1624--> /a> /div> div classproduct-info flex flex-col justify-end grow> div classproduct-name mt-2 mb-3 font-bold text-base lg:text-xl > a classproduct-item-link hrefhttps://defendcellcamqa.com/defend-360-cam :id`slide-desc-1624-${$id(slider-id)}`> DEFEND 360 Cellular Security Camera /a> /div> script> function initPriceBox__692af6cabe21e() { return { updatePrice(priceData) { const regularPriceLabel this.$root.querySelector(.normal-price .price-label); const regularPriceElement this.$root.querySelector(.normal-price data-price-typefinalPrice.price-wrapper .price); const basePriceElement this.$root.querySelector(.normal-price data-price-typebasePrice.price-wrapper .price); if (priceData.finalPrice.amount priceData.oldPrice.amount) { regularPriceLabel.classList.add(hidden); } else { regularPriceLabel.classList.remove(hidden); } regularPriceElement && (regularPriceElement.innerText hyva.formatPrice(priceData.finalPrice.amount)); basePriceElement && (basePriceElement.innerText hyva.formatPrice(priceData.basePrice.amount)); } } } /script> div classproduct-price pt-1 x-datainitPriceBox__692af6cabe21e() @update-prices-1624.windowupdatePrice($event.detail);> div classprice-box price-final_price data-rolepriceBox data-product-id1624 data-price-boxproduct-id-1624> span> span x-data x-idproduct\u002Dprice\u002D1624 classprice-container price-final_price tax weee> span :id$id(product\u002Dprice\u002D1624) data-price-amount199.99 data-price-typefinalPrice classprice-wrapper >span classprice>$199.99/span>/span> /span> /span>/div> /div> div classproduct-rating py-1 > div classyotpo bottomLine bottomline-position data-product-id1624 data-urlhttps://defendcellcamqa.com/defend-360-cam>/div> /div> /div> /form> form methodpost actionhttps://defendcellcamqa.com/checkout/cart/add/uenc/%25uenc%25/product/1239/ classitem product product-item product_addtocart_form bg-gray p-3 lg:p-5 lg:pb-14 flex flex-col justify-between w-full > input nameform_key typehidden valueZwzFmKlZbIRZ2AFe> input typehidden nameproduct value1239> div classimage-block> a hrefhttps://defendcellcamqa.com/defend-security-cam classproduct photo product-item-photo block mx-auto mb-3 tabindex-1> img classobject-contain mx-auto product-image-photo x-data @update-gallery-1239.window$root.src $event.detail srchttps://defendcellcamqa.com/media/catalog/product/d/e/defend-cam-transparent.png?quality80&fitbounds&height500&width500&canvas500:500 loadinglazy width500 height500 altDEFEND Camera titleDEFEND Camera>!--mf_product_label_comment_1239--> /a> /div> div classproduct-info flex flex-col justify-end grow> div classproduct-name mt-2 mb-3 font-bold text-base lg:text-xl > a classproduct-item-link hrefhttps://defendcellcamqa.com/defend-security-cam :id`slide-desc-1239-${$id(slider-id)}`> DEFEND Camera /a> /div> script> function initPriceBox__692af6cac9df4() { return { updatePrice(priceData) { const regularPriceLabel this.$root.querySelector(.normal-price .price-label); const regularPriceElement this.$root.querySelector(.normal-price data-price-typefinalPrice.price-wrapper .price); const basePriceElement this.$root.querySelector(.normal-price data-price-typebasePrice.price-wrapper .price); if (priceData.finalPrice.amount priceData.oldPrice.amount) { regularPriceLabel.classList.add(hidden); } else { regularPriceLabel.classList.remove(hidden); } regularPriceElement && (regularPriceElement.innerText hyva.formatPrice(priceData.finalPrice.amount)); basePriceElement && (basePriceElement.innerText hyva.formatPrice(priceData.basePrice.amount)); } } } /script> div classproduct-price pt-1 x-datainitPriceBox__692af6cac9df4() @update-prices-1239.windowupdatePrice($event.detail);> div classprice-box price-final_price data-rolepriceBox data-product-id1239 data-price-boxproduct-id-1239> span classspecial-price> span x-data x-idproduct\u002Dprice\u002D1239 classprice-container price-final_price tax weee> span classprice-label>Special Price/span> span :id$id(product\u002Dprice\u002D1239) data-price-amount119.99 data-price-typefinalPrice classprice-wrapper >span classprice>$119.99/span>/span> /span> /span> span classold-price data-titleSale> span x-data x-idold\u002Dprice\u002D1239 classprice-container price-final_price tax weee> span classprice-label>Regular Price/span> span :id$id(old\u002Dprice\u002D1239) data-price-amount149.99 data-price-typeoldPrice classprice-wrapper >span classprice>$149.99/span>/span> /span> /span>/div> /div> div classproduct-rating py-1 > div classyotpo bottomLine bottomline-position data-product-id1239 data-urlhttps://defendcellcamqa.com/defend-security-cam>/div> /div> /div> /form> /div> div classcarousel-nav flex items-center justify-center flex-1 p-4> button aria-labelPrevious classglider-prev w-8 h-8 mr-1 text-black rounded-full outline-none focus:outline-none hidden> svg viewbox0 0 1024 1024> path classpath1 dM716.8 1024c6.552 0 13.102-2.499 18.101-7.499 9.998-9.997 9.998-26.206 0-36.203l-442.698-442.698 442.698-442.699c9.998-9.997 9.998-26.206 0-36.203s-26.206-9.998-36.203 0l-460.8 460.8c-9.998 9.997-9.998 26.206 0 36.203l460.8 460.8c5 5 11.55 7.499 18.102 7.499z> /path> /svg> /button> div classglider-dots select-none flex flex-wrap mx-1 justify-center p-0 focus:outline-none>/div> button aria-labelNext classglider-next w-8 h-8 ml-1 text-black rounded-full outline-none focus:outline-none hidden> svg viewbox0 0 1024 1024> path classpath1 dM256 1024c-6.552 0-13.102-2.499-18.101-7.499-9.998-9.997-9.998-26.206 0-36.203l442.698-442.698-442.698-442.699c-9.998-9.997-9.998-26.206 0-36.203s26.206-9.998 36.203 0l460.8 460.8c9.998 9.997 9.998 26.206 0 36.203l-460.8 460.8c-5 5-11.55 7.499-18.102 7.499z> /path> /svg> /button>/div> /div>/div>/div>/div>div classcmsp634-py-10 cmsp634-xl:py-20 cmsp634-xl:pt-40 reset-style home-save-big background-image-692b8442c9230 data-content-typerow data-appearancefull-width data-enable-parallax0 data-parallax-speed0.5 data-background-images{\desktop_image\:\https://defendcellcamqa.com/media/wysiwyg/no-wifi-bg-desktop.jpg\,\mobile_image\:\https://defendcellcamqa.com/media/wysiwyg/no-wifi-bg.jpg\} data-background-typeimage data-video-looptrue data-video-play-only-visibletrue data-video-lazy-loadtrue data-video-fallback-src data-elementmain data-pb-styleT2KXRU4>div classrow-full-width-inner data-elementinner>h2 classsection-heading cmsp634-text-white data-content-typeheading data-appearancedefault data-elementmain data-pb-styleS13QL74>No Wi-Fi Needed/h2>div classcmsp634-text-white cmsp634-text-15px cmsp634-sm:text-xl cmsp634-max-w-75% cmsp634-sm:max-w-full cmsp634-mx-auto data-content-typetext data-appearancedefault data-elementmain data-pb-styleCWDBKPI>p>Go beyond the reach of Wi-Fi and electricity to have 24/7 security where youve never had it before./p>/div>div classpagebuilder-column-group cmsp634-lg:pt-14 reset-style data-background-images{} data-content-typecolumn-group data-appearancedefault data-grid-size10 data-elementmain data-pb-styleQULLE61>div classpagebuilder-column-line data-content-typecolumn-line data-elementmain data-pb-styleC9MQB63>div classpagebuilder-column data-content-typecolumn data-appearancefull-height data-background-images{} data-elementmain data-pb-styleWTRRB1R>figure classcmsp634-my-8 cmsp634-lg:my-0 img-full data-content-typeimage data-appearancebrowser-lazy-image data-elementmain data-pb-styleW6K4CQL>img classpagebuilder-mobile-hidden loadinglazy srchttps://defendcellcamqa.com/media/wysiwyg/Gallery.png width908 height603 alt title data-elementdesktop_image data-pb-styleR2YI0OT>img classpagebuilder-mobile-only loadinglazy srchttps://defendcellcamqa.com/media/wysiwyg/Gallery-mobile.png width570 height378 alt title data-elementmobile_image data-pb-styleL5RTNDM>/figure>/div>div classpagebuilder-column cmsp634-pl-8 cmsp634-lg:pl-12 cmsp634-xl:pl-24 data-content-typecolumn data-appearancealign-center data-background-images{} data-elementmain data-pb-styleDDFE7EH>h2 classsection-heading cmsp634-xl:max-w-450px cmsp634-mb-4 cmsp634-lg:mb-6 cmsp634-text-white cmsp634-xl:text-80px cmsp634-xl:leading-70px data-content-typeheading data-appearancedefault data-elementmain>Explore The DEFEND Camera!/h2>div data-content-typebuttons data-appearancestacked data-same-widthfalse data-elementmain data-pb-styleQP6V22Q>div classcmsp634-max-w-180px cmsp634-md:max-w-250px btn-space-reset data-content-typebutton-item data-appearancedefault data-elementmain data-pb-styleJ2SNPB1>a classpagebuilder-button-primary hrefhttps://defendcellcamqa.com/defend-security-cam target data-link-typeproduct data-elementlink data-pb-styleA0WXFA6>span data-elementlink_text>Shop Now/span>/a>/div>/div>/div>/div>/div>/div>/div>div classcmsp634-py-10 cmsp634-xl:py-20 background-image-692b8442c925f data-content-typerow data-appearancefull-width data-enable-parallax0 data-parallax-speed0.5 data-background-images{\desktop_image\:\https://defendcellcamqa.com/media/wysiwyg/bg-nature.jpg\,\mobile_image\:\https://defendcellcamqa.com/media/wysiwyg/bg-nature-mobile.jpg\} data-background-typeimage data-video-looptrue data-video-play-only-visibletrue data-video-lazy-loadtrue data-video-fallback-src data-elementmain data-pb-styleEOJUB4R>div classrow-full-width-inner data-elementinner>div classpagebuilder-column-group data-background-images{} data-content-typecolumn-group data-appearancedefault data-grid-size10 data-elementmain data-pb-styleIRW7NV2>div classpagebuilder-column-line data-content-typecolumn-line data-elementmain data-pb-styleOHAA84P>div classpagebuilder-column cmsp634-mb-5 cmsp634-lg:mb-0 cmsp634-xl:pr-12 data-content-typecolumn data-appearancefull-height data-background-images{} data-elementmain data-pb-styleAEX41U0>div classfont-heading cmsp634-text-5xl cmsp634-lg:text-80px cmsp634-mb-6 cmsp634-text-white data-content-typetext data-appearancedefault data-elementmain>p>See the Action as It Happens/p>/div>div classcmsp634-text-15px cmsp634-leading-30px cmsp634-sm:text-lg cmsp634-text-white data-content-typetext data-appearancedefault data-elementmain>p>DEFEND plans let you see with confidence. Keep an eye on your property through images, video, and Live View, with plans that fit your security needs and budget./p>/div>/div>div classpagebuilder-column cmsp634-mb-8 cmsp634-lg:mb-0 cmsp634-px-2 mobile-hidden data-content-typecolumn data-appearancefull-height data-background-images{} data-elementmain data-pb-styleP8QJVM7>div data-content-typehtml data-appearancedefault data-elementmain data-decodedtrue>div classcmsp634-hidden cmsp634-lg:grid cmsp634-lg:grid-cols-2 cmsp634-lg:gap-5 cmsp634-lg:mb-5> img classcmsp634-h-full srchttps://defendcellcamqa.com/media/.renditions/wysiwyg/defend-app-one.png width100% height100% alt loadinglazy /> img classcmsp634-h-full srchttps://defendcellcamqa.com/media/.renditions/wysiwyg/defend-app-two.png width100% height100% alt loadinglazy />/div>div classcmsp634-flex cmsp634-flex-wrap cmsp634-justify-center cmsp634-gap-2.5 cmsp634-mx-auto> a hrefhttps://apps.apple.com/us/app/tactacam-defend/id6467141793 aria-labelApp Store Link target_blank> img srchttps://defendcellcamqa.com/media/.renditions/wysiwyg/app-store_1.png loadinglazy width90 alt /> /a> a hrefhttps://play.google.com/store/apps/details?idcom.tactacam.defend aria-labelPlay Store Link target_blank> img srchttps://defendcellcamqa.com/media/.renditions/wysiwyg/play-store_1.png loadinglazy width100 alt /> /a> /div>/div>/div>div classpagebuilder-column cmsp634-rounded-15px cmsp634-p-5 cmsp634-xl:p-10 cmsp634-border cmsp634-border-primary-lighter cmsp634-text-white cmsp634-xl:ml-12 home-app-section data-content-typecolumn data-appearancefull-height data-background-images{} data-elementmain data-pb-styleRF1T2OH>div classcmsp634-font-semibold data-content-typetext data-appearancedefault data-elementmain>p>Data plans starting at $5/month/p>/div>div classcmsp634-my-3 data-content-typetext data-appearancedefault data-elementmain> p>Choose from a starter plan or go unlimited!/p> /div>h2 classfont-heading cmsp634-text-5xl cmsp634-lg:text-80px cmsp634-text-primary-lighter cmsp634-uppercase cmsp634-mt-3 cmsp634-max-w-70% cmsp634-mx-auto cmsp634-sm:max-w-full data-content-typeheading data-appearancedefault data-elementmain>We handle it all/h2>div classcmsp634-text-lg cmsp634-font-bold cmsp634-my-4 cmsp634-xl:my-8 data-content-typetext data-appearancedefault data-elementmain> p>No carrier contract required/p> p>No activation fee/p> /div>div data-content-typebuttons data-appearancestacked data-same-widthtrue data-elementmain data-pb-styleFABV6AX classcmsp634-whitespace-nowrap btn-primary-light>div data-content-typebutton-item data-appearancedefault data-elementmain data-pb-styleAH32PII>a classpagebuilder-button-secondary hrefhttps://defendcellcamqa.com/defend-app-plan target data-link-typepage data-elementlink data-pb-styleTMAWJ5H>span data-elementlink_text>View Data Plans/span>/a>/div>/div>/div>/div>/div>/div>/div>div data-content-typeblock data-appearancedefault data-elementmain>div classwidget block block-static-block> style>::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x:;--tw-pan-y:;--tw-pinch-zoom:;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position:;--tw-gradient-via-position:;--tw-gradient-to-position:;--tw-ordinal:;--tw-slashed-zero:;--tw-numeric-figure:;--tw-numeric-spacing:;--tw-numeric-fraction:;--tw-ring-inset:;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur:;--tw-brightness:;--tw-contrast:;--tw-grayscale:;--tw-hue-rotate:;--tw-invert:;--tw-saturate:;--tw-sepia:;--tw-drop-shadow:;--tw-backdrop-blur:;--tw-backdrop-brightness:;--tw-backdrop-contrast:;--tw-backdrop-grayscale:;--tw-backdrop-hue-rotate:;--tw-backdrop-invert:;--tw-backdrop-opacity:;--tw-backdrop-saturate:;--tw-backdrop-sepia:}.cmsb14-py-10{padding-top:2.5rem;padding-bottom:2.5rem}.cmsb14-text-2xl{font-size:1.5rem;line-height:2rem}.cmsb14-uppercase{text-transform:uppercase}.cmsb14-leading-\30px\{line-height:30px}.cmsb14-leading-none{line-height:1}@media (min-width:1024px){.cmsb14-lg\:py-20{padding-top:5rem;padding-bottom:5rem}.cmsb14-lg\:text-\32px\{font-size:32px}.cmsb14-lg\:leading-\40px\{line-height:40px}}@media (min-width:1280px){.cmsb14-xl\:pt-40{padding-top:10rem}}/style>style>#html-body data-pb-styleFXFR0DQ{justify-content:flex-start;display:flex;flex-direction:column;background-position:center top;background-size:contain;background-repeat:no-repeat;background-attachment:scroll}#html-body data-pb-stylePTMR1DX{background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;align-self:stretch}#html-body data-pb-styleI474LP3{display:flex;width:100%}#html-body data-pb-styleIF25KW3,#html-body data-pb-styleMMOGJ6O,#html-body data-pb-styleY49PY38{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;width:33.3333%;align-self:stretch}/style>div classtestimonials-block cmsb14-py-10 cmsb14-lg:py-20 cmsb14-xl:pt-40 section-mobile-slides background-image-692b8442c3ad4 background-image-692b8442c928f data-content-typerow data-appearancefull-width data-enable-parallax0 data-parallax-speed0.5 data-background-images{\desktop_image\:\https://defendcellcamqa.com/media/wysiwyg/testimonial.jpg\,\mobile_image\:\https://defendcellcamqa.com/media/wysiwyg/testimonial.png\} data-background-typeimage data-video-looptrue data-video-play-only-visibletrue data-video-lazy-loadtrue data-video-fallback-src data-elementmain data-pb-styleFXFR0DQ>div classrow-full-width-inner data-elementinner>div classpagebuilder-column-group data-background-images{} data-content-typecolumn-group data-appearancedefault data-grid-size12 data-elementmain data-pb-stylePTMR1DX>div classpagebuilder-column-line data-content-typecolumn-line data-elementmain data-pb-styleI474LP3>div classpagebuilder-column data-content-typecolumn data-appearancefull-height data-background-images{} data-elementmain data-pb-styleMMOGJ6O>div classcmsb14-uppercase data-content-typetext data-appearancedefault data-elementmain>p>Kenya J./p>/div>div classfont-heading cmsb14-text-2xl cmsb14-leading-30px cmsb14-lg:text-32px cmsb14-lg:leading-40px data-content-typetext data-appearancedefault data-elementmain>p>“Product and service were excellent and speedy. We’d definitely recommend Tactacam!“/p>/div>/div>div classpagebuilder-column data-content-typecolumn data-appearancefull-height data-background-images{} data-elementmain data-pb-styleIF25KW3>div classcmsb14-uppercase data-content-typetext data-appearancedefault data-elementmain>p>Stacy F./p>/div>div classfont-heading cmsb14-text-2xl cmsb14-lg:text-32px cmsb14-leading-none cmsb14-lg:leading-40px data-content-typetext data-appearancedefault data-elementmain>p>“This company is top notch. Their shipping is very fast. Their customer service is the best, Best company out there in my opinion!”/p>/div>/div>div classpagebuilder-column data-content-typecolumn data-appearancefull-height data-background-images{} data-elementmain data-pb-styleY49PY38>div classcmsb14-uppercase data-content-typetext data-appearancedefault data-elementmain>p>Stacy F./p>/div>div classfont-heading cmsb14-text-2xl cmsb14-lg:text-32px cmsb14-leading-none cmsb14-lg:leading-40px data-content-typetext data-appearancedefault data-elementmain>p>“Great product from an awesome company that understands customer service and support!”/p>/div>/div>/div>/div>/div>/div>style typetext/css>.background-image-692b8442c3ad4 {background-image: url(https://defendcellcamqa.com/media/wysiwyg/testimonial.jpg);}@media only screen and (max-width: 768px) and (min-width: 640px) {.background-image-692b8442c3ad4 {background-image: url(https://defendcellcamqa.com/media/wysiwyg/testimonial.png);}}@media only screen and (max-width: 640px) {.background-image-692b8442c3ad4 {background-image: url(https://defendcellcamqa.com/media/wysiwyg/testimonial.png);}}/style>style typetext/css>.background-image-692b8442c928f {background-image: url(https://defendcellcamqa.com/media/wysiwyg/testimonial.jpg);}@media only screen and (max-width: 768px) and (min-width: 640px) {.background-image-692b8442c928f {background-image: url(https://defendcellcamqa.com/media/wysiwyg/testimonial.png);}}@media only screen and (max-width: 640px) {.background-image-692b8442c928f {background-image: url(https://defendcellcamqa.com/media/wysiwyg/testimonial.png);}}/style>/div>/div>div data-content-typerow data-appearancefull-bleed data-enable-parallax0 data-parallax-speed0.5 data-background-images{\desktop_image\:\https://defendcellcamqa.com/media/wysiwyg/enhance-setup-bg.png\} data-background-typeimage data-video-looptrue data-video-play-only-visibletrue data-video-lazy-loadtrue data-video-fallback-src data-elementmain data-pb-styleBAYADHD classbackground-image-692b8442c92be>div classpagebuilder-column-group data-background-images{} data-content-typecolumn-group data-appearancedefault data-grid-size13 data-elementmain data-pb-styleSYL9G5A>div classpagebuilder-column-line data-content-typecolumn-line data-elementmain data-pb-styleK5YWOFW>div classpagebuilder-column cmsp634-text-white cmsp634-py-12 cmsp634-px-8 cmsp634-xl:px-24 data-content-typecolumn data-appearancealign-center data-background-images{} data-elementmain data-pb-styleVWH8NYS>div classsection-heading cmsp634-mb-4 cmsp634-text-primary-lighter data-content-typetext data-appearancedefault data-elementmain>p>Practical Security Solutions/p>/div>div classcmsp634-text-15px cmsp634-leading-30px cmsp634-sm:text-lg cmsp634-mb-8 data-content-typetext data-appearancedefault data-elementmain>p>Rugged, simple, and always connected. Hardworking DEFEND cameras help you protect what matters most. From remote cabins to boat slips, DEFEND cameras give you the freedom to chart your own course, save time and money, and always be connected to your priorities./p>/div>/div>div classpagebuilder-column cmsp634-aspect-5/3 cmsp634-lg:aspect-auto cmsp634-xl:min-h-700px cmsp634-relative background-image-692b8442c92c6 data-content-typecolumn data-appearancefull-height data-background-images{\desktop_image\:\https://defendcellcamqa.com/media/wysiwyg/360-practical-security.jpg\,\mobile_image\:\https://defendcellcamqa.com/media/wysiwyg/360-practical-security-mobile.jpg\} data-elementmain data-pb-styleQOQLMSO>div data-content-typebuttons data-appearancestacked data-same-widthfalse data-elementmain data-pb-styleU452QD5 classcmsp634-absolute cmsp634-left-0 cmsp634-right-0 cmsp634-bottom-0 cmsp634-lg:bottom-5% btn-primary-light cmsp634-max-w-80% cmsp634-md:max-w-max-content cmsp634-mx-auto cmsp634-mb-8 cmsp634-lg:mb-0>div classbtn-space-reset blur-btn data-content-typebutton-item data-appearancedefault data-elementmain data-pb-styleL455JHP>a classpagebuilder-button-secondary hrefhttps://defendcellcamqa.com/security-cameras target data-link-typecategory data-elementlink data-pb-styleGA4DQCS>span data-elementlink_text>Shop Cameras/span>/a>/div>/div>/div>div classpagebuilder-column cmsp634-relative cmsp634-aspect-5/3 cmsp634-lg:aspect-auto background-image-692b8442c92f3 data-content-typecolumn data-appearancefull-height data-background-images{\desktop_image\:\https://defendcellcamqa.com/media/wysiwyg/accessories-bg-desktop.jpg\,\mobile_image\:\https://defendcellcamqa.com/media/wysiwyg/accessories-bg.jpg\} data-elementmain data-pb-styleI9SM58L>div data-content-typebuttons data-appearancestacked data-same-widthfalse data-elementmain data-pb-styleRGOGUW6 classcmsp634-absolute cmsp634-left-0 cmsp634-right-0 cmsp634-bottom-0 cmsp634-lg:bottom-5% btn-primary-light cmsp634-max-w-80% cmsp634-md:max-w-max-content cmsp634-mx-auto cmsp634-mb-8 cmsp634-md:mb-0>div classbtn-space-reset blur-btn data-content-typebutton-item data-appearancedefault data-elementmain data-pb-styleJCTX05J>a classpagebuilder-button-secondary hrefhttps://defendcellcamqa.com/security-accessories target data-link-typecategory data-elementlink data-pb-styleV1WV0OG>span data-elementlink_text>Shop Accessories/span>/a>/div>/div>/div>style typetext/css>.background-image-692b8442c92c6 {background-image: url(https://defendcellcamqa.com/media/wysiwyg/360-practical-security.jpg);}@media only screen and (max-width: 768px) and (min-width: 640px) {.background-image-692b8442c92c6 {background-image: url(https://defendcellcamqa.com/media/wysiwyg/360-practical-security-mobile.jpg);}}@media only screen and (max-width: 640px) {.background-image-692b8442c92c6 {background-image: url(https://defendcellcamqa.com/media/wysiwyg/360-practical-security-mobile.jpg);}}/style>style typetext/css>.background-image-692b8442c92f3 {background-image: url(https://defendcellcamqa.com/media/wysiwyg/accessories-bg-desktop.jpg);}@media only screen and (max-width: 768px) and (min-width: 640px) {.background-image-692b8442c92f3 {background-image: url(https://defendcellcamqa.com/media/wysiwyg/accessories-bg.jpg);}}@media only screen and (max-width: 640px) {.background-image-692b8442c92f3 {background-image: url(https://defendcellcamqa.com/media/wysiwyg/accessories-bg.jpg);}}/style>/div>/div>/div>div data-content-typehtml data-appearancedefault data-elementmain data-decodedtrue>style>html .homepage-hunt-security .pagebuilder-column { justify-content: flex-end !important;}@media(max-width: 639px) { .nav-desktop ~ div + div a { max-width: 230px; }}@media(max-width: 767px) { .homepage-hunt-security .row-full-width-inner { padding:0 !important; margin: 0 !important; }}@media(min-width: 768px) { .homepage-hunt-security .pagebuilder-column-line { flex-wrap: nowrap; }}.blur-btn a { backdrop-filter: blur(5px);}.testimonials-block { background-size: 95% !important;}/* SLIDER FIRST SLIDE */.hero-slider .defend-slide-one .pagebuilder-overlay { position: inherit; padding-left: 1rem !important;}.hero-slider .defend-slide-one .pagebuilder-collage-content { margin-top: -20%;}@media(min-width: 640px){.hero-slider .defend-slide-one .pagebuilder-collage-content { margin-top: -10%;}}@media(min-width:1280px) and (max-width:1535px) { .hero-slider .glider-slide { min-height: 500px !important; }}@media(max-width: 1023px){ .hero-slider .defend-slide-one .pagebuilder-slide-wrapper { background-image:url(media/wysiwyg/defend-home-banner1-mobile-new.jpg) !important; }}/* TWO DEFEND SLIDE */.two-defend-cam h2 { text-shadow: 4px 8px 21px rgba(0,0,0,0.4);}@media(max-width: 767px){ .two-defend-cam .pagebuilder-overlay { max-width: 480px !important; }}/* jack defend slide */.hero-slider .jack-defend-banner button{ margin: 0.5rem auto 0 !important;}.jack-defend-banner img { max-height: max-content !important;}@media(max-width:480px){ .jack-defend-banner .pagebuilder-overlay { padding-top: 0 !important; padding-bottom: 0 !important; } .jack-defend-banner .mobile-img { display: block; } .hero-slider .jack-defend-banner button{ margin-top: 0 !important; padding: 2px 10px; min-width: 70%; font-size: 14px; } .jack-defend-banner .pagebuilder-collage-content { max-width: 60% !important; } .jack-defend-banner h2 { font-size: 24px !important; padding: 0 10px; } .jack-defend-banner h2 > span{ margin: 5px 0; display: block; } }@media(max-width: 1023px){ .jack-defend-banner .pagebuilder-collage-content { max-width: 70%; margin-left: auto; }}@media(min-width: 768px) and (max-width:1023px){ .jack-defend-banner .pagebuilder-slide-wrapper { background-image: url(/media/wysiwyg/jack-mobile-bg_1.jpg) !important; }}@media(min-width: 1800px){ .jack-defend-banner h2 { font-size: 100px !important; }}/* 360 BANNER */.hero-slider .three-sixty-banner .pagebuilder-overlay { position:inherit;}.hero-slider .three-sixty-banner button { color: #000 !important; border-radius: 50px !important; border-color: #fff !important; background: #97d700 !important; border-width: 1px !important;}.hero-slider .three-sixty-banner button:hover { background: #7db200 !important; color: #000 !important; border-width: 1px !important;}@media(max-width: 480px){ .hero-slider .three-sixty-banner button { min-width: inherit !important; }}@media(min-width: 768px){ .hero-slider .three-sixty-banner button { margin-top: 4.5rem !important; }}/* RELATED PRODUCTS */html .home-products .glider-track>.glider-slide .price-box { justify-content: center;}html .home-products .product-rating { display: flex; justify-content: center;}.home-products .glider-track>.glider-slide .image-block { margin-bottom: 1.5rem !important;} @media (min-width: 768px) { .home-products .glider-track { width: 100% !important; align-items: flex-start; padding: 20px 30px 0; display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); -moz-column-gap: 2rem; column-gap: 2rem; } .home-products .carousel-nav { display: none !important; } html .home-products .glider-track>.glider-slide { grid-row: span 3 / span 3; text-align: center; display: block !important; width: 100% !important; } html .home-products .glider-track>.glider-slide .image-block { height: auto; width: 100%; } html .home-products .glider-track>.glider-slide .product-name, html .home-products .glider-track>.glider-slide:first-child .product-name { font-size: 3.75rem !important; line-height: 1 !important; }}/* BLACK FRIDAY *//* DEFEND BLACK FRIDAY */.black-friday-defend .pagebuilder-overlay { position: inherit;}.black-friday-defend .pagebuilder-overlay button { margin-top: 1rem !important; padding: 15px 30px !important; min-width: inherit; border-radius: 50px !important; border: 0 !important; font-size: 1.5rem; color: #000 !important; background: #97d700 !important; font-weight: 600;}.black-friday-defend button:hover { opacity: 0.9;}@media(max-width:767px){.black-friday-defend .pagebuilder-overlay button { padding: 8px 16px !important; font-size: 1rem !important;}}@media(min-width:1200px){ .black-friday-defend .pagebuilder-slide-wrapper { background-image: url(/media/wysiwyg/defend-black-friday-bg.png) !important; background-position: right !important; }}/style>/div>style typetext/css>.background-image-692b8442c91b5 {background-image: url(https://defendcellcamqa.com/media/wysiwyg/DEFEND.jpg);}@media only screen and (max-width: 768px) and (min-width: 640px) {.background-image-692b8442c91b5 {background-image: url(https://defendcellcamqa.com/media/wysiwyg/DEFEND.png);}}@media only screen and (max-width: 640px) {.background-image-692b8442c91b5 {background-image: url(https://defendcellcamqa.com/media/wysiwyg/DEFEND.png);}}/style>style typetext/css>.background-image-692b8442c91fe {background-image: url(https://defendcellcamqa.com/media/.renditions/wysiwyg/360-bg-desktop_2.jpg);}@media only screen and (max-width: 768px) and (min-width: 640px) {.background-image-692b8442c91fe {background-image: url(https://defendcellcamqa.com/media/.renditions/wysiwyg/360-bg-mobile_2.jpg);}}@media only screen and (max-width: 640px) {.background-image-692b8442c91fe {background-image: url(https://defendcellcamqa.com/media/.renditions/wysiwyg/360-bg-mobile_2.jpg);}}/style>style typetext/css>.background-image-692b8442c9230 {background-image: url(https://defendcellcamqa.com/media/wysiwyg/no-wifi-bg-desktop.jpg);}@media only screen and (max-width: 768px) and (min-width: 640px) {.background-image-692b8442c9230 {background-image: url(https://defendcellcamqa.com/media/wysiwyg/no-wifi-bg.jpg);}}@media only screen and (max-width: 640px) {.background-image-692b8442c9230 {background-image: url(https://defendcellcamqa.com/media/wysiwyg/no-wifi-bg.jpg);}}/style>style typetext/css>.background-image-692b8442c925f {background-image: url(https://defendcellcamqa.com/media/wysiwyg/bg-nature.jpg);}@media only screen and (max-width: 768px) and (min-width: 640px) {.background-image-692b8442c925f {background-image: url(https://defendcellcamqa.com/media/wysiwyg/bg-nature-mobile.jpg);}}@media only screen and (max-width: 640px) {.background-image-692b8442c925f {background-image: url(https://defendcellcamqa.com/media/wysiwyg/bg-nature-mobile.jpg);}}/style>style typetext/css>.background-image-692b8442c92be {background-image: url(https://defendcellcamqa.com/media/wysiwyg/enhance-setup-bg.png);}/style>style>.secondblog-page .post-list.modern .post-item .post-description:not(:empty)::after{content: …; display: inline-block;}/style>/div>/div>/main>footer classpage-footer>div classfooter content>div classtext-white body-font bg-dark-darker text-base leading-6 relative> div classpy-8> div classcontainer mx-auto lg:py-8 px-7 space-y-6 lg:flex lg:justify-between lg:space-y-0> div> div classfooter-logo> div classorder-1 basis-45 md:basis-70 text-center site-logo> a classflex items-center tracking-wide hrefhttps://defendcellcamqa.com/ aria-labelGo to Home page > img srchttps://defendcellcamqa.com/media/logo/stores/28/defend_logo.png altStore logo width280 height39 /> /a>/div> /div> div classmt-6 text-center lg:text-left> a classtext-2xl text-primary-lighter font-bold hreftel:2182825650> (218) 282-5650 /a> /div> div classmt-6 text-center lg:text-left pb-10 lg:pb-0 mb-10 lg:mb-0 border-primary-lighter border-b lg:border-0> div class> 1668 Jordan West Rd., br> Decorah, Iowa 52101/div> /div> style>::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x:;--tw-pan-y:;--tw-pinch-zoom:;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position:;--tw-gradient-via-position:;--tw-gradient-to-position:;--tw-ordinal:;--tw-slashed-zero:;--tw-numeric-figure:;--tw-numeric-spacing:;--tw-numeric-fraction:;--tw-ring-inset:;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur:;--tw-brightness:;--tw-contrast:;--tw-grayscale:;--tw-hue-rotate:;--tw-invert:;--tw-saturate:;--tw-sepia:;--tw-drop-shadow:;--tw-backdrop-blur:;--tw-backdrop-brightness:;--tw-backdrop-contrast:;--tw-backdrop-grayscale:;--tw-backdrop-hue-rotate:;--tw-backdrop-invert:;--tw-backdrop-opacity:;--tw-backdrop-saturate:;--tw-backdrop-sepia:}.cmsb366-mb-3{margin-bottom:.75rem}.cmsb366-mt-6{margin-top:1.5rem}.cmsb366-block{display:block}.cmsb366-flex{display:flex}.cmsb366-hidden{display:none}.cmsb366-h-auto{height:auto}.cmsb366-w-5{width:1.25rem}.cmsb366-flex-wrap{flex-wrap:wrap}.cmsb366-gap-4{gap:1rem}.cmsb366-rounded-full{border-radius:9999px}.cmsb366-border{border-width:1px}.cmsb366-border-white{--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity))}.cmsb366-p-1{padding:.25rem}.cmsb366-p-1\.5{padding:.375rem}.cmsb366-text-primary-lighter{--tw-text-opacity:1;color:rgb(151 215 0/var(--tw-text-opacity))}.cmsb366-hover\:opacity-80:hover{opacity:.8}@media (min-width:1024px){.cmsb366-lg\:block{display:block}}/style>div classcmsb366-hidden cmsb366-lg:block data-content-typehtml data-appearancedefault data-elementmain data-decodedtrue>div classcmsb366-mt-6> p classcmsb366-mb-3>Follow Defend/p>div classcmsb366-gap-4 cmsb366-flex cmsb366-flex-wrap> a hrefhttps://www.facebook.com/people/Defend-by-Tactacam/61556888955331/ classcmsb366-hover:opacity-80 cmsb366-rounded-full cmsb366-border cmsb366-border-white cmsb366-block cmsb366-p-1.5 aria-labelFacebook namelink target_blank> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 320 512 classcmsb366-text-primary-lighter cmsb366-w-5 cmsb366-h-auto width20 height20 roleimg> path dM279.14 288l14.22-92.66h-88.91v-60.13c0-25.35 12.42-50.06 52.24-50.06h40.42V6.26S260.43 0 225.36 0c-73.22 0-121.08 44.38-121.08 124.72v70.62H22.89V288h81.39v224h100.17V288z fillcurrentColor>/path>title>social-facebook/title>/svg> /a> a hrefhttps://www.youtube.com/@defendbytactacam classcmsb366-hover:opacity-80 cmsb366-rounded-full cmsb366-border cmsb366-border-white cmsb366-block cmsb366-p-1.5 aria-labelYoutube namelink target_blank> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 576 512 classcmsb366-text-primary-lighter cmsb366-w-5 cmsb366-h-auto width20 height20 roleimg> path dM549.655 124.083c-6.281-23.65-24.787-42.276-48.284-48.597C458.781 64 288 64 288 64S117.22 64 74.629 75.486c-23.497 6.322-42.003 24.947-48.284 48.597-11.412 42.867-11.412 132.305-11.412 132.305s0 89.438 11.412 132.305c6.281 23.65 24.787 41.5 48.284 47.821C117.22 448 288 448 288 448s170.78 0 213.371-11.486c23.497-6.321 42.003-24.171 48.284-47.821 11.412-42.867 11.412-132.305 11.412-132.305s0-89.438-11.412-132.305zm-317.51 213.508V175.185l142.739 81.205-142.739 81.201z fillcurrentColor>/path>title>social-youtube/title>/svg> /a> a hrefhttps://www.linkedin.com/company/tactacam classcmsb366-hover:opacity-80 cmsb366-rounded-full cmsb366-border cmsb366-border-white cmsb366-block cmsb366-p-1.5 aria-labelLinkedIn namelink target_blank> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 448 512 classcmsb366-text-primary-lighter cmsb366-w-5 cmsb366-h-auto width20 height20 roleimg> path dM100.28 448H7.4V148.9h92.88zM53.79 108.1C24.09 108.1 0 83.5 0 53.8a53.79 53.79 0 0 1 107.58 0c0 29.7-24.1 54.3-53.79 54.3zM447.9 448h-92.68V302.4c0-34.7-.7-79.2-48.29-79.2-48.29 0-55.69 37.7-55.69 76.7V448h-92.78V148.9h89.08v40.8h1.3c12.4-23.5 42.69-48.3 87.88-48.3 94 0 111.28 61.9 111.28 142.3V448z fillcurrentColor>/path>title>social-linkedin/title>/svg> /a> a hrefhttps://www.tiktok.com/@defendbytactacam classcmsb366-hover:opacity-80 cmsb366-rounded-full cmsb366-border cmsb366-border-white cmsb366-block cmsb366-p-1.5 aria-labelTiktok namelink target_blank> !--?xml version1.0 encodingUTF-8?-->svg xmlnshttp://www.w3.org/2000/svg classcmsb366-text-primary-lighter cmsb366-w-5 cmsb366-h-auto width20 height20 viewBox0 0 16 20 fillnone>path dM8.40516 0.685879C9.41039 0.670532 10.408 0.678206 11.4055 0.670532C11.4669 1.84458 11.8889 3.04165 12.7484 3.87039C13.6078 4.72216 14.8202 5.11351 16.002 5.24396V8.33639C14.897 8.29802 13.7843 8.06781 12.7791 7.59206C12.3417 7.39254 11.935 7.13932 11.536 6.87842C11.5283 9.11909 11.5436 11.3598 11.5206 13.5928C11.4592 14.667 11.1062 15.7337 10.4847 16.6161C9.47945 18.0894 7.73756 19.0486 5.94963 19.0793C4.85232 19.1407 3.755 18.8414 2.81883 18.289C1.26878 17.3758 0.179136 15.703 0.0179921 13.9074C0.00264504 13.5237 -0.00502848 13.14 0.0103186 12.764C0.148442 11.306 0.869754 9.90946 1.99009 8.95794C3.26389 7.85296 5.04415 7.32348 6.70931 7.6381C6.72466 8.77378 6.67861 9.90946 6.67861 11.0451C5.91894 10.7996 5.02881 10.8687 4.36121 11.3291C3.87778 11.6437 3.50945 12.1271 3.31761 12.6719C3.15647 13.0633 3.20251 13.493 3.21018 13.9074C3.39435 15.1658 4.60676 16.2248 5.89592 16.1097C6.75535 16.102 7.57642 15.6032 8.02148 14.8742C8.16728 14.621 8.32842 14.3601 8.3361 14.0608C8.41283 12.6873 8.38214 11.3214 8.38981 9.94783C8.39749 6.8554 8.38214 3.77064 8.40516 0.685879Z fillurl(#paint0_linear_8890_2304)>/path>defs>linearGradient idpaint0_linear_8890_2304 x18.00195 y10.670532 x28.00195 y219.0872 gradientUnitsuserSpaceOnUse>stop stop-color#97D700>/stop>stop offset1 stop-color#81B702>/stop>/linearGradient>/defs>/svg> /a> a hrefhttps://www.instagram.com/defendbytactacam classcmsb366-hover:opacity-80 cmsb366-rounded-full cmsb366-border cmsb366-border-white cmsb366-block cmsb366-p-1.5 aria-labelInstagram namelink target_blank> svg xmlnshttp://www.w3.org/2000/svg viewBox0 0 448 512 classcmsb366-text-primary-lighter cmsb366-w-5 cmsb366-h-auto width20 height20 roleimg> path dM224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z fillcurrentColor>/path>title>social-instagram/title>/svg> /a>/div> /div>/div> /div> div x-data{ open: false } classfooter-column px-8 lg:px-0> button typebutton @clickopen ! open classflex justify-between align-middle cursor-pointer group lg:cursor-default w-full text-lg mb-10 lg:mb-3 > span classuppercase font-bold text-white group-hover:underline lg:group-hover:no-underline> About /span> span classtransition-transform :class{ rotate-180: open }> svg xmlnshttp://www.w3.org/2000/svg width24 height25 viewBox0 0 24 25 fillnone classlg:hidden> path dM13.6968 14.8029L14.9027 13.5971C16.1879 12.3119 16.8304 11.6694 16.8738 11.1177C16.9115 10.639 16.7177 10.1712 16.3526 9.85939C15.9318 9.5 15.0231 9.5 13.2057 9.5L10.7939 9.5C8.97645 9.5 8.06772 9.5 7.64693 9.85939C7.28181 10.1712 7.08805 10.639 7.12573 11.1177C7.16914 11.6694 7.81171 12.3119 9.09684 13.5971L10.3027 14.8029L10.3027 14.8029C10.8968 15.397 11.1938 15.694 11.5363 15.8053C11.8375 15.9032 12.162 15.9032 12.4633 15.8053C12.8058 15.694 13.1028 15.397 13.6968 14.8029Z fillwhite/> /svg> /span> /button> div classgap-4 mt-2 lg:flex :class{ block: open, hidden: ! open }> style>::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x:;--tw-pan-y:;--tw-pinch-zoom:;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position:;--tw-gradient-via-position:;--tw-gradient-to-position:;--tw-ordinal:;--tw-slashed-zero:;--tw-numeric-figure:;--tw-numeric-spacing:;--tw-numeric-fraction:;--tw-ring-inset:;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur:;--tw-brightness:;--tw-contrast:;--tw-grayscale:;--tw-hue-rotate:;--tw-invert:;--tw-saturate:;--tw-sepia:;--tw-drop-shadow:;--tw-backdrop-blur:;--tw-backdrop-brightness:;--tw-backdrop-contrast:;--tw-backdrop-grayscale:;--tw-backdrop-hue-rotate:;--tw-backdrop-invert:;--tw-backdrop-opacity:;--tw-backdrop-saturate:;--tw-backdrop-sepia:}/style>style>#html-body data-pb-styleDNQHFUO{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll}#html-body data-pb-styleR0HXW2A{display:flex;flex-direction:column}#html-body data-pb-styleJEMUFK9,#html-body data-pb-styleVX1HFDA{display:inline-block}/style>div data-content-typerow data-appearancefull-bleed data-enable-parallax0 data-parallax-speed0.5 data-background-images{} data-background-typeimage data-video-looptrue data-video-play-only-visibletrue data-video-lazy-loadtrue data-video-fallback-src data-elementmain data-pb-styleDNQHFUO>div data-content-typebuttons data-appearancestacked data-same-widthfalse data-elementmain data-pb-styleR0HXW2A>div data-content-typebutton-item data-appearancedefault data-elementmain data-pb-styleVX1HFDA>a classpagebuilder-button-link href/our-story target data-link-typedefault data-elementlink>span data-elementlink_text>Our Story/span>/a>/div>div data-content-typebutton-item data-appearancedefault data-elementmain data-pb-styleJEMUFK9>a classpagebuilder-button-link hrefhttps://defendcellcamqa.com/tactacam-careers target data-link-typepage data-elementlink>span data-elementlink_text>Careers/span>/a>/div>/div>/div> /div> /div> div x-data{ open: false } classfooter-column px-8 lg:px-0> button typebutton @clickopen ! open classflex justify-between align-middle cursor-pointer group lg:cursor-default w-full text-lg mb-10 lg:mb-3 > span classuppercase font-bold text-white group-hover:underline lg:group-hover:no-underline> Products /span> span classtransition-transform :class{ rotate-180: open }> svg xmlnshttp://www.w3.org/2000/svg width24 height25 viewBox0 0 24 25 fillnone classlg:hidden> path dM13.6968 14.8029L14.9027 13.5971C16.1879 12.3119 16.8304 11.6694 16.8738 11.1177C16.9115 10.639 16.7177 10.1712 16.3526 9.85939C15.9318 9.5 15.0231 9.5 13.2057 9.5L10.7939 9.5C8.97645 9.5 8.06772 9.5 7.64693 9.85939C7.28181 10.1712 7.08805 10.639 7.12573 11.1177C7.16914 11.6694 7.81171 12.3119 9.09684 13.5971L10.3027 14.8029L10.3027 14.8029C10.8968 15.397 11.1938 15.694 11.5363 15.8053C11.8375 15.9032 12.162 15.9032 12.4633 15.8053C12.8058 15.694 13.1028 15.397 13.6968 14.8029Z fillwhite/> /svg> /span> /button> div classgap-4 mt-2 lg:flex :class{ block: open, hidden: ! open }> style>#html-body data-pb-styleGFGD3WT{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll}#html-body data-pb-styleWKQF5BW{display:flex;flex-direction:column}#html-body data-pb-styleA1DY2FE,#html-body data-pb-styleEBA3QOF,#html-body data-pb-styleH1M1J24{display:inline-block}/style>div data-content-typerow data-appearancefull-bleed data-enable-parallax0 data-parallax-speed0.5 data-background-images{} data-background-typeimage data-video-looptrue data-video-play-only-visibletrue data-video-lazy-loadtrue data-video-fallback-src data-elementmain data-pb-styleGFGD3WT>div data-content-typebuttons data-appearancestacked data-same-widthfalse data-elementmain data-pb-styleWKQF5BW>div data-content-typebutton-item data-appearancedefault data-elementmain data-pb-styleEBA3QOF>a classpagebuilder-button-link href/security-cameras target data-link-typedefault data-elementlink>span data-elementlink_text>Cameras/span>/a>/div>div data-content-typebutton-item data-appearancedefault data-elementmain data-pb-styleA1DY2FE>a classpagebuilder-button-link href/security-accessories target data-link-typedefault data-elementlink>span data-elementlink_text>Accessories/span>/a>/div>div data-content-typebutton-item data-appearancedefault data-elementmain data-pb-styleH1M1J24>a classpagebuilder-button-link href/where-to-buy target data-link-typedefault data-elementlink>span data-elementlink_text>Store Locator/span>/a>/div>/div>/div> /div> /div> div x-data{ open: false } classfooter-column px-8 lg:px-0> button typebutton @clickopen ! open classflex justify-between align-middle cursor-pointer group lg:cursor-default w-full text-lg mb-10 lg:mb-3 > span classuppercase font-bold text-white group-hover:underline lg:group-hover:no-underline> App & Data Plans /span> span classtransition-transform :class{ rotate-180: open }> svg xmlnshttp://www.w3.org/2000/svg width24 height25 viewBox0 0 24 25 fillnone classlg:hidden> path dM13.6968 14.8029L14.9027 13.5971C16.1879 12.3119 16.8304 11.6694 16.8738 11.1177C16.9115 10.639 16.7177 10.1712 16.3526 9.85939C15.9318 9.5 15.0231 9.5 13.2057 9.5L10.7939 9.5C8.97645 9.5 8.06772 9.5 7.64693 9.85939C7.28181 10.1712 7.08805 10.639 7.12573 11.1177C7.16914 11.6694 7.81171 12.3119 9.09684 13.5971L10.3027 14.8029L10.3027 14.8029C10.8968 15.397 11.1938 15.694 11.5363 15.8053C11.8375 15.9032 12.162 15.9032 12.4633 15.8053C12.8058 15.694 13.1028 15.397 13.6968 14.8029Z fillwhite/> /svg> /span> /button> div classgap-4 mt-2 lg:flex :class{ block: open, hidden: ! open }> style>#html-body data-pb-styleGNPJHSG{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;margin:0}#html-body data-pb-styleL1VRGOF{text-align:left;display:flex;flex-direction:column}#html-body data-pb-styleTLVWL0E{display:inline-block}#html-body data-pb-styleYWCQUCU{text-align:left}#html-body data-pb-styleIVQOFX6{display:inline-block}#html-body data-pb-styleFF8EVQH{text-align:left}/style>div data-content-typerow data-appearancefull-bleed data-enable-parallax0 data-parallax-speed0.5 data-background-images{} data-background-typeimage data-video-looptrue data-video-play-only-visibletrue data-video-lazy-loadtrue data-video-fallback-src data-elementmain data-pb-styleGNPJHSG>div data-content-typebuttons data-appearancestacked data-same-widthfalse data-elementmain data-pb-styleL1VRGOF>div data-content-typebutton-item data-appearancedefault data-elementmain data-pb-styleTLVWL0E>a classpagebuilder-button-link href/defend-app-plan target data-link-typedefault data-elementlink data-pb-styleYWCQUCU>span data-elementlink_text>App & Data Plans/span>/a>/div>div data-content-typebutton-item data-appearancedefault data-elementmain data-pb-styleIVQOFX6>a classpagebuilder-button-link hrefhttps://account.defendcellcamqa.com/ target data-link-typedefault data-elementlink data-pb-styleFF8EVQH>span data-elementlink_text>Login to DEFEND App/span>/a>/div>/div>/div> /div> /div> div x-data{ open: false } classfooter-column px-8 lg:px-0> button typebutton @clickopen ! open classflex justify-between align-middle cursor-pointer group lg:cursor-default w-full text-lg mb-10 lg:mb-3 > span classuppercase font-bold text-white group-hover:underline lg:group-hover:no-underline> Help Center /span> span classtransition-transform :class{ rotate-180: open }> svg xmlnshttp://www.w3.org/2000/svg width24 height25 viewBox0 0 24 25 fillnone classlg:hidden> path dM13.6968 14.8029L14.9027 13.5971C16.1879 12.3119 16.8304 11.6694 16.8738 11.1177C16.9115 10.639 16.7177 10.1712 16.3526 9.85939C15.9318 9.5 15.0231 9.5 13.2057 9.5L10.7939 9.5C8.97645 9.5 8.06772 9.5 7.64693 9.85939C7.28181 10.1712 7.08805 10.639 7.12573 11.1177C7.16914 11.6694 7.81171 12.3119 9.09684 13.5971L10.3027 14.8029L10.3027 14.8029C10.8968 15.397 11.1938 15.694 11.5363 15.8053C11.8375 15.9032 12.162 15.9032 12.4633 15.8053C12.8058 15.694 13.1028 15.397 13.6968 14.8029Z fillwhite/> /svg> /span> /button> div classgap-4 mt-2 lg:flex :class{ block: open, hidden: ! open }> style>#html-body data-pb-styleC2I0S8I{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll}#html-body data-pb-styleC0MIVVT{display:flex;flex-direction:column}#html-body data-pb-styleBFVOOSP,#html-body data-pb-styleDJ5LQJE,#html-body data-pb-styleJLEPVM1,#html-body data-pb-styleO1K6JMF{display:inline-block}/style>div data-content-typerow data-appearancefull-bleed data-enable-parallax0 data-parallax-speed0.5 data-background-images{} data-background-typeimage data-video-looptrue data-video-play-only-visibletrue data-video-lazy-loadtrue data-video-fallback-src data-elementmain data-pb-styleC2I0S8I>div data-content-typebuttons data-appearancestacked data-same-widthfalse data-elementmain data-pb-styleC0MIVVT>div data-content-typebutton-item data-appearancedefault data-elementmain data-pb-styleBFVOOSP>a classpagebuilder-button-link hrefhttps://tactacam.zendesk.com/hc/en-us/sections/27598389339035-General-FAQs target data-link-typedefault data-elementlink>span data-elementlink_text>FAQs/span>/a>/div>div data-content-typebutton-item data-appearancedefault data-elementmain data-pb-styleDJ5LQJE>a classpagebuilder-button-link hrefhttps://tactacam.zendesk.com/hc/en-us/sections/38149376220571-DEFEND target data-link-typedefault data-elementlink>span data-elementlink_text>Manuals/span>/a>/div>div data-content-typebutton-item data-appearancedefault data-elementmain data-pb-styleJLEPVM1>a classpagebuilder-button-link href/warranty-returns target data-link-typedefault data-elementlink>span data-elementlink_text>Shipping, Returns + Warranty/span>/a>/div>div data-content-typebutton-item data-appearancedefault data-elementmain data-pb-styleO1K6JMF>a classpagebuilder-button-link href/contact-us target data-link-typedefault data-elementlink>span data-elementlink_text>Customer Support/span>/a>/div>/div>/div> /div> /div> /div> /div> /div> div classbg-dark> div classpy-10 text-sm flex flex-col-reverse lg:flex-row lg:justify-between lg:items-center container mx-auto px-7> div classtext-white text-center lg:text-left lg:mt-0 flex flex-col lg:flex-wrap lg:flex-row gap-4> p classcopyright text-sm lg:whitespace-nowrap> span>© 2025 Copyright - Tactacam. All Rights Reserved./span>/p> div classflex flex-col flex-wrap gap-4 lg:flex-row> a hrefhttps://defendcellcamqa.com/privacy-policy/ classhover:underline > Privacy & Cookie Policy /a> a hrefhttps://defendcellcamqa.com/policies-terms-of-service/ classhover:underline > Terms & Conditions /a> /div> /div> /div> /div> script> function initNewsletterForm() { return { errors: 0, hasCaptchaToken: 0, displayErrorMessage: false, errorMessages: , setErrorMessages(messages) { this.errorMessages messages this.displayErrorMessage this.errorMessages.length }, submitForm() { const $form document.querySelector(#newsletter-validate-detail); if (this.errors 0) { $form.submit(); } } } } /script>/div>/div>/footer> script noncedWtleWt1M3Z6N242OWJ0ZDRtNjRrcWJqazMyOHVheDk=>(function() { function getParameterByName(name, url) { if (!url) url window.location.href; name name.replace(/\\/g, \\$&); var regex new RegExp(?& + name + ((^*)|&|#|$)), results regex.exec(url); if (!results) return null; if (!results2) return ; return decodeURIComponent(results2.replace(/\+/g, )); } function setCookie(cookieName, cookieValue, daysUntilExpiration) { const date new Date(); date.setTime(date.getTime() + (daysUntilExpiration * 24 * 60 * 60 * 1000)); const expires expires + date.toUTCString(); document.cookie cookieName + + cookieValue + ; + SameSiteNone; + expires + ;path/;secure; } function onPageLoad() { const irclickid getParameterByName(irclickid); if (irclickid) setCookie(irclickid, irclickid, 30); } onPageLoad();})();/script>script> (() > { function src_default(Alpine) { Alpine.directive(intersect, (el, { value, expression, modifiers }, { evaluateLater, cleanup }) > { let evaluate evaluateLater(expression); let options { rootMargin: getRootMargin(modifiers), threshold: getThreshhold(modifiers) }; let observer new IntersectionObserver((entries) > { entries.forEach((entry) > { if (entry.isIntersecting (value leave)) return; evaluate(); modifiers.includes(once) && observer.disconnect(); }); }, options); observer.observe(el); cleanup(() > { observer.disconnect(); }); }); } function getThreshhold(modifiers) { if (modifiers.includes(full)) return 0.99; if (modifiers.includes(half)) return 0.5; if (!modifiers.includes(threshold)) return 0; let threshold modifiersmodifiers.indexOf(threshold) + 1; if (threshold 100) return 1; if (threshold 0) return 0; return Number(`.${threshold}`); } function getLengthValue(rawValue) { let match rawValue.match(/^(-?0-9+)(px|%)?$/); return match ? match1 + (match2 || px) : void 0; } function getRootMargin(modifiers) { const key margin; const fallback 0px 0px 0px 0px; const index modifiers.indexOf(key); if (index -1) return fallback; let values ; for (let i 1; i 5; i++) { values.push(getLengthValue(modifiersindex + i || )); } values values.filter((v) > v ! void 0); return values.length ? values.join( ).trim() : fallback; } document.addEventListener(alpine:init, () > { window.Alpine.plugin(src_default); }); })();/script>script typemodule srchttps://defendcellcamqa.com/static/version1764235120/frontend/Magento/base/default/Hyva_Theme/js/alpine3.min.js defer crossorigin>/script>script> use strict; function dispatchMessages(messages, hideAfter) { const messagesEvent new CustomEvent(messages-loaded, { detail: { messages: messages, hideAfter: hideAfter } }); window.dispatchEvent(messagesEvent); } if (typeof hyva undefined || (!hyva.getBrowserStorage || !hyva.getCookie || !hyva.setCookie)) { console.warn(Hyvä helpers are not loaded yet. Make sure they are included before this script); } (function( hyva, undefined ) { hyva.initFormKey () > { const inputSelector inputnameform_key, formKey hyva.getFormKey(); Array.from(document.querySelectorAll(inputSelector)).map(function (input) { input.value formKey }); } hyva.initMessages () > { try { const messages hyva.getCookie(mage-messages); window.mageMessages messages ? JSON.parse(decodeURIComponent(messages).replace(/\+/g, )) : ; dispatchMessages(window.mageMessages); // empty `mage-messages` cookie const skipSetDomain true; hyva.setCookie(mage-messages,, -1, skipSetDomain); } catch (error) { console.warn(Error parsing Cookie Messages:, error); } } window.addEventListener(DOMContentLoaded, hyva.initFormKey); hyva.alpineInitialized(hyva.initMessages) }( window.hyva window.hyva || {} ));/script>script> use strict; { const private_content_key mage-cache-storage; const private_content_expire_key mage-cache-timeout; const private_content_version_key private_content_version; const section_data_ids_key section_data_ids; const mage_cache_session_id_key mage-cache-sessid; const last_visited_store_key last_visited_store; const ttl 3600; if (typeof hyva undefined || (!hyva.getBrowserStorage || !hyva.getCookie || !hyva.setCookie)) { console.warn(Hyvä helpers are not loaded yet. Make sure they are included before this script); } function loadSectionData () { const browserStorage hyva.getBrowserStorage(); if (!browserStorage) { typeof window.dispatchMessages ! undefined && window.dispatchMessages( { type: warning, text: Please enable LocalStorage in your browser. } ); return; } try { let isInvalid false; if (hyva.getCookie(last_visited_store_key) ! CURRENT_STORE_CODE) { isInvalid true; } hyva.setCookie(last_visited_store_key, CURRENT_STORE_CODE, false, false); if (!hyva.getCookie(mage_cache_session_id_key)) { isInvalid true; const skipSetDomain true; const days false; hyva.setCookie(mage_cache_session_id_key, true, days, skipSetDomain) } const cookieVersion hyva.getCookie(private_content_version_key); const storageVersion browserStorage.getItem(private_content_version_key); if (cookieVersion && !storageVersion || cookieVersion ! storageVersion) { isInvalid true; } const privateContentExpires browserStorage.getItem(private_content_expire_key); if (privateContentExpires && new Date(privateContentExpires) new Date()) { browserStorage.removeItem(private_content_key); } if (isInvalid) { fetchPrivateContent(); } else if (cookieVersion && storageVersion && cookieVersion storageVersion) { const privateContent JSON.parse(browserStorage.getItem(private_content_key)); if ( privateContent && privateContentExpires && privateContent.cart && privateContent.customer ) { dispatchPrivateContent(privateContent); } else { fetchPrivateContent(); } } else { dispatchPrivateContent({}); } } catch (error) { console.warn(Error retrieving Private Content:, error); } } hyva.alpineInitialized(loadSectionData) window.addEventListener(reload-customer-section-data, loadSectionData); function dispatchPrivateContent(data) { const privateContentEvent new CustomEvent(private-content-loaded, { detail: { data: data } }); window.dispatchEvent(privateContentEvent); } function fetchPrivateContent(sections) { fetch(`${BASE_URL}customer/section/load/?sections${encodeURIComponent(sections.join(,))}`, { method: GET, headers: { Content-Type: application/json, X-Requested-With: XMLHttpRequest } }) .then(response > response.json()) .then( data > { if (data) { try { const browserStorage hyva.getBrowserStorage(); // merge new data preserving non-invalidated sections const oldSectionData JSON.parse(browserStorage.getItem(private_content_key) || {}) || {}; if ((! data.cart || ! data.cart.cartId) && oldSectionDatacheckout-data) { delete oldSectionDatacheckout-data; } const newSectionData Object.assign(oldSectionData, data); dispatchPrivateContent(newSectionData); // dont persist messages, theyve been dispatched already if (newSectionData.messages && newSectionData.messages.messages ) { newSectionData.messages.messages ; } browserStorage.setItem(private_content_key, JSON.stringify(newSectionData)); const expiresAt new Date(Date.now() + (ttl * 1000)).toISOString(); browserStorage.setItem(private_content_expire_key, expiresAt); const newCookieVersion hyva.getCookie(private_content_version_key); browserStorage.setItem(private_content_version_key, newCookieVersion); // We dont need the section_data_ids in Hyvä, but we store them for compatibility // with Luma Fallback. Otherwise, not all sections are loaded in Luma Checkout hyva.setCookie( section_data_ids_key, JSON.stringify( Object.keys(data).reduce((sectionDataIds, sectionKey) > { sectionDataIdssectionKey datasectionKeydata_id; return sectionDataIds; }, {}) ), false, true ); } catch (error) { console.warn(Couldnt store privateContent, error); } } } ); } }/script>script> (() > { document.addEventListener(submit, event > event.target.action event.target.action.replace(%25uenc%25, hyva.getUenc())); })()/script>script> (events > { const dispatchUserInteractionEvent () > { events.forEach(type > window.removeEventListener(type, dispatchUserInteractionEvent)) window.dispatchEvent(new Event(init-external-scripts)) }; events.forEach(type > { if (window.innerWidth 1023 && type mouseover) { return; } window.addEventListener(type, dispatchUserInteractionEvent, {once: true, passive: true}) }) })(touchstart, mouseover, wheel, scroll, keydown)/script>script> function initCompareOnProductList() { return { addToCompare(productId) { const formKey hyva.getFormKey(); const postUrl BASE_URL + catalog/product_compare/add/; fetch(postUrl, { headers: { content-type: application/x-www-form-urlencoded; charsetUTF-8, }, body: form_key + formKey + &product + productId + &uenc + hyva.getUenc(), method: POST, mode: cors, credentials: include }).then(function (response) { if (response.redirected) { window.location.href response.url; } }).catch(function (error) { typeof window.dispatchMessages ! undefined && window.dispatchMessages( { type: error, text: error }, 5000 ); }); } }; }/script>script> function initWishlist() { return { addToWishlist(productId) { const formKey hyva.getFormKey(); const postUrl BASE_URL + wishlist/index/add/; fetch(postUrl, { headers: { content-type: application/x-www-form-urlencoded; charsetUTF-8, }, body: form_key + formKey + &product + productId + &uenc + hyva.getUenc(), method: POST, mode: cors, credentials: include }).then(function (response) { if (response.redirected) { window.location.href response.url; } else if (response.ok) { return response.json(); } else { typeof window.dispatchMessages ! undefined && window.dispatchMessages( { type: warning, text: Could not add item to wishlist. }, 5000 ); } }).then(function (response) { if (!response) { return } typeof window.dispatchMessages ! undefined && window.dispatchMessages( { type: (response.success) ? success : error, text: (response.success) ? Product has been added to your Wish List. : response.error_message }, 5000 ); const reloadCustomerDataEvent new CustomEvent(reload-customer-section-data); window.dispatchEvent(reloadCustomerDataEvent); }).catch(function (error) { typeof window.dispatchMessages ! undefined && window.dispatchMessages( { type: error, text: error }, 5000 ); }); } } }/script>script> function initConfigurableOptions(productId, optionConfig) { function findPathParam(key) { const baseUrl (BASE_URL.substring(0, 2) // ? http: : ) + BASE_URL; const baseUrlParts (new URL(baseUrl)).pathname.replace(/\/$/, ).split(/); const pathParts window.location.pathname.split(/).slice(baseUrlParts.length + 3); for (let i 0; i pathParts.length; i + 2) { if (pathPartsi key && pathParts.length > i) { return pathPartsi + 1; } } } return { optionConfig, productId, itemId: (new URLSearchParams(window.location.search)).get(id) || findPathParam(id), allowedAttributeOptions: , selectedValues: , init() { this.findAllowedAttributeOptions(); this.$nextTick(() > { if (typeof this.optionConfig.defaultValues object) { for (const attributeId, value of Object.entries(this.optionConfig.defaultValues)) { this.changeOption(attributeId, value + ); } } }); }, findSimpleIndex() { this.productIndex this.calculateSimpleIndexForPartialSelection(this.selectedValues); }, calculateSimpleIndexForPartialSelection(selectedValues) { if (selectedValues.length 0) return 0; let productIndexIds Object.keys(this.optionConfig.index); Object.keys(this.optionConfig.attributes).forEach((attribute) > { const productsWithAttributeMatch selectedValuesattribute ? productIndexIds.filter((productIndex) > { return this.optionConfig.indexproductIndexattribute this.selectedValuesattribute }) : ; productIndexIds productsWithAttributeMatch.length ? productsWithAttributeMatch : productIndexIds }) return productIndexIds0; }, calculateSimpleIndexForFullSelection(selectedValues) { const productIndexes this.optionConfig.index; return Object.keys(productIndexes).find(productIndex > { const productCandidateOptions productIndexesproductIndex; for (const productOption in productCandidateOptions) { if ( ! selectedValuesproductOption || selectedValuesproductOption ! productCandidateOptionsproductOption ) { return false; } } return productIndex; }); }, productIndex: 0, findAllowedAttributeOptions() { this.allowedAttributeOptions this.calculateAllowedAttributeOptions(this.selectedValues); }, calculateAllowedAttributeOptions(selectedValues) { const allAttributes this.optionConfig.attributes; const allAttributesSorted Object.values(allAttributes).sort((a,b) > { return a.position - b.position }); const newAllowedAttributeOptions ; allAttributesSorted.forEach(attribute > { const selectionWithoutAttr Object.assign({}, this.removeAttrFromSelection(selectedValues, attribute.id)); const availableIndexes this.calculateAvailableProductIndexes(selectionWithoutAttr); newAllowedAttributeOptionsattribute.id allAttributesattribute.id.options.filter(option > { return !!option.products.find(product > { return availableIndexes.includes(product); }) }); }); return newAllowedAttributeOptions; }, calculateAvailableProductIndexes(selectedOptions) { if (Object.keys(selectedOptions).length 0) { if (Object.values(this.optionConfig.salable || {}).length) { return .concat.apply(, .concat.apply(, Object.values(this.optionConfig.salable).map(Object.values))).filter((x, i, a) > a.indexOf(x) i) } return Object.keys(this.optionConfig.index); } const selectedIds Object.keys(selectedOptions); if (Object.values(this.optionConfig.salable || {}).length) { const selectedOptionIndexes selectedIds.map(attrId > { const optionValue selectedOptionsattrId; return this.optionConfig.salableattrId && this.optionConfig.salableattrIdoptionValue || }) return selectedOptionIndexes.reduce((acc, optionIndexes) > { return acc.filter(index > optionIndexes.includes(index)); }); } else { const productIndexes this.optionConfig.index; return Object.keys(productIndexes).filter(index > { for (const attrId of selectedIds) { if (productIndexesindexattrId ! `${selectedOptionsattrId}`) return false } return true }); } }, findAttributeByOptionId(optionId) { for (const attributeId in this.optionConfig.attributes) { const attributeOptions this.optionConfig.attributesattributeId.options || ; if (attributeOptions.find(option > option.id optionId)) { return attributeId; } } }, getAllowedAttributeOptions(attributeId) { return this.allowedAttributeOptionsattributeId || }, getProductIdsForOption(option) { const attributeId this.findAttributeByOptionId(option.id); const allOptions this.optionConfig.attributesattributeId; const opt (allOptions && allOptions.options || ).find(o > o.id option.id); return opt && opt.products ? opt.products : ; }, findProductIdsForPartialSelection(optionSelection) { const candidateProducts Object.values(optionSelection).reduce((candidates, optionId) > { const newCandidates this.getProductIdsForOption({id: optionId}); return candidates null ? newCandidates : candidates.filter(productId > newCandidates.includes(productId)); }, null); return candidateProducts || ; }, findCheapestProductForPartialSelection(optionSelection) { const candidateProducts this.findProductIdsForPartialSelection(optionSelection); return candidateProducts.reduce((cheapest, simpleIdx) > { // in the first iteration we start with simpleIdx as the currently cheapest product if (! this.optionConfig.optionPricescheapest) return simpleIdx; const knownCheapestPrice this.optionConfig.optionPricescheapest.finalPrice.amount; return knownCheapestPrice > this.optionConfig.optionPricessimpleIdx.finalPrice.amount ? simpleIdx : cheapest; }, 0) }, findProductIdToUseForOptionPrice(option) { // try to find a product for a complete selection const attributeId this.findAttributeByOptionId(option.id); const optionSelection Object.assign({}, this.selectedValues, {attributeId: option.id}); const matchingSimpleIndex this.calculateSimpleIndexForFullSelection(optionSelection); // if there is no complete selection, use the cheapest product for the option return matchingSimpleIndex || this.findCheapestProductForPartialSelection(optionSelection); }, getAttributeOptionLabel(option) { const optionProduct this.findProductIdToUseForOptionPrice(option); if ((! optionProduct) || (optionProduct this.productIndex)) { return option.label; } const currentPrice this.getOptionPriceAdjustmentBasePrice(); if (this.optionConfig.optionPricesoptionProduct) { const optionPrice this.optionConfig.optionPricesoptionProduct.finalPrice.amount; if (optionPrice ! currentPrice){ return option.label + + hyva.formatPrice(optionPrice - currentPrice, true); } } return option.label; }, getOptionPriceAdjustmentBasePrice() { if (this.optionConfig.optionPricesthis.productIndex) { return this.optionConfig.optionPricesthis.productIndex.finalPrice.amount } const cheapestForSelection this.findCheapestProductForPartialSelection(this.selectedValues); return this.optionConfig.optionPricescheapestForSelection ? this.optionConfig.optionPricescheapestForSelection.finalPrice.amount : this.optionConfig.prices.finalPrice.amount; // default price if no option selection }, clearOptionIfActive(optionId, value) { if (this.selectedValuesoptionId value) { this.blurLabel() this.changeOption(optionId, ) } }, removeAttrFromSelection(selectedValues, attributeId) { attributeId parseInt(attributeId); return selectedValues.reduce((newSelection, val, attr) > { if (attr ! attributeId) { newSelectionattr val; } return newSelection; }, ); }, changeOption(attributeId, value) { if (value ) { this.selectedValues this.removeAttrFromSelection(this.selectedValues, attributeId) } else if (value && this.getAllowedAttributeOptions(attributeId).find(option > option.id value)) { this.selectedValuesattributeId value; } this.findSimpleIndex(); this.findAllowedAttributeOptions(); this.updatePrices(); this.updateGallery(); this.updateAvailableQty(); window.dispatchEvent( new CustomEvent( configurable-selection-changed, { detail: { productId: this.productId, optionId: attributeId, value: value, productIndex: this.productIndex, selectedValues: this.selectedValues, candidates: this.findProductIdsForPartialSelection(this.selectedValues), } } ) ); }, calculateIsMinimalPrice() { return ( this.selectedValues.filter(value > !!value).length Object.keys(this.optionConfig.attributes).length ); }, updatePrices() { const value this.productIndex ? this.optionConfig.optionPricesthis.productIndex : this.optionConfig.prices; window.dispatchEvent( new CustomEvent( update-prices- + this.productId, { detail: Object.assign( value, { isMinimalPrice: this.calculateIsMinimalPrice() } ) } ) ); }, updateGallery () { if (this.productIndex) { const images this.optionConfig.imagesthis.productIndex; images && window.dispatchEvent(new CustomEvent( update-gallery, { detail: this.sortImagesByPosition(images) } )); } else { window.dispatchEvent(new Event(reset-gallery)); } }, sortImagesByPosition(images) { return images.sort((x, y) > { return x.position y.position ? 0 : (parseInt(x.position) > parseInt(y.position) ? 1 : -1) }); }, onGetCartData(data) { }, preselectCartItems(data) { // pre-select options based on cart data for current (quote) itemId const cart data && data.cart; if (cart && cart.items) { const cartItem cart.items.find((item) > { return ( item.item_id this.itemId && item.product_id this.productId ) }); if (cartItem && cartItem.options && cartItem.options.length) { cartItem.options.map(option > { this.changeOption(option.option_id, option.option_value); }) } } }, preselectQuerystringItems() { // pre-select option like ?size167 const urlQueryParams new URLSearchParams(window.location.search.replace(?,)); this.preselectItemsBasedOnLocation(attribute > urlQueryParams.get(attribute.code)); }, preselectLocationHashItems() { // pre-select option like #144167 const urlHashParams new URLSearchParams(window.location.hash.replace(#,)); this.preselectItemsBasedOnLocation(attribute > urlHashParams.get(attribute.id)); }, preselectItemsBasedOnLocation(getLocationValue) { Object.values(this.optionConfig.attributes).map(attribute > { this.changeOption(attribute.id, getLocationValue(attribute)) }); }, updateAvailableQty() { if(!document.getElementById(available-qty)){ return; } const matchingSimpleIndex this.calculateSimpleIndexForFullSelection(this.selectedValues); if (matchingSimpleIndex) { const availableQty window.quantitiesmatchingSimpleIndex; document.getElementById(qty-value).textContent availableQty; document.getElementById(qty+this.productId+).setAttribute(max,availableQty); document.getElementById(qty+this.productId+).value 1; document.getElementById(available-qty).style.display block; }else{ document.getElementById(available-qty).style.display none; document.getElementById(qty+this.productId+).setAttribute(max,1); } } }; }/script>script> function initSwatchOptions(swatchConfig) { return { swatchConfig, getAttributeSwatchData(attributeId) { const swatchConfig Object.assign({}, this.swatchConfigattributeId); swatchConfigdetails JSON.parse(swatchConfigadditional_data); return swatchConfig; }, getAllAttributeOptions(attributeId) { return ( this.optionConfig.attributesattributeId && this.optionConfig.attributesattributeId.options ) || }, optionIsActive(attributeId, optionId) { // return true if a product with this option is in stock return !!this.getAllowedAttributeOptions(attributeId).find( option > option.id optionId ) }, optionIsEnabled(attributeId, optionId) { // return true if a product with this option is enabled for (const productId in this.optionConfig.index) { if (this.optionConfig.indexproductIdattributeId optionId) { return true; } } return false; }, mapSwatchTypeNumberToTypeCode(typeNumber) { switch ( + typeNumber) { case 1: return color case 2: return image case 3: return empty case 0: default: return text } }, getTypeOfFirstOption(attributeId) { for (const optionId in this.swatchConfigattributeId) { const option this.swatchConfigattributeIdoptionId; if (typeof option.type ! undefined) { return this.mapSwatchTypeNumberToTypeCode(option.type); } } }, getVisualSwatchType(attributeId, targetOptionId) { // If a type configuration is present for the given option id, use it const config this.swatchConfigattributeId; if (configtargetOptionId && typeof configtargetOptionId.type ! undefined) { return this.mapSwatchTypeNumberToTypeCode(configtargetOptionId.type); } // Otherwise - if no config is present for the target option - use the type of the first option // with a type property from the attribute, thus assuming its the same type as the target option. // (This edge case condition can occur on single swatch products if some options are not salable) return this.getTypeOfFirstOption(attributeId); }, getSwatchType(attributeId, optionId) { // Deserialize the attribute details the first time they are used if (this.swatchConfigattributeId && ! this.swatchConfigattributeId.details) { this.swatchConfigattributeId this.getAttributeSwatchData(attributeId); } const type this.swatchConfigattributeId && this.swatchConfigattributeId.details && this.swatchConfigattributeId.details.swatch_input_type || empty; return type visual ? this.getVisualSwatchType(attributeId, optionId) : type; }, isTextSwatch(attributeId, optionId) { return this.getSwatchType(attributeId, optionId) text; }, isVisualSwatch(attributeId, optionId) { const type this.getSwatchType(attributeId, optionId); return image, color.includes(type); }, getSwatchBackgroundStyle(attributeId, optionId) { const config this.getSwatchConfig(attributeId, optionId); const type this.getSwatchType(attributeId, optionId); if (type color) { return background-color: + config.value; } else if (type image) { return background: #ffffff url( + config.value + ) no-repeat center; } else { return ; } }, getSwatchText(attributeId, optionId) { const config this.getSwatchConfig(attributeId, optionId); return config.label || config.value || this.getOptionLabelFromOptionConfig(attributeId, optionId); }, getOptionLabelFromOptionConfig(attributeId, optionId) { // Fallback if no value is present in swatchConfig data // Reference issue https://gitlab.hyva.io/hyva-themes/magento2-default-theme/-/issues/190 const option this.getAllAttributeOptions(attributeId).filter(option > option.id optionId); return option && option0 && option0.label ||; }, getSwatchConfig(attributeId, optionId) { return this.swatchConfigattributeId && this.swatchConfigattributeIdoptionId ? this.swatchConfigattributeIdoptionId : false; }, activeTooltipItem: false, tooltipPositionElement: false, isTooltipVisible() { return this.activeTooltipItem && this.getSwatchConfig( this.activeTooltipItem.attribute, this.activeTooltipItem.item ); }, isFirstItemCol() { return this.activeTooltipItem.index 0; }, getTooltipImageStyle(attributeId, optionId) { const config this.getSwatchConfig(attributeId, optionId); const type this.getSwatchType(attributeId, optionId); if (type color) { return background-color: + config.value + ; width: 110px; height: 90px;; } else if (type image) { return background: #ffffff url( + config.thumb + ) center center no-repeat; width: 110px; height: 90px;; } else { return display:none; } }, getTooltipPosition() { return this.tooltipPositionElement ? `top: ${this.tooltipPositionElement.offsetTop}px;` + `left: ${ this.tooltipPositionElement.offsetLeft - ( this.tooltipPositionElement.closest(.snap) && this.tooltipPositionElement.closest(.snap).scrollLeft || 0 ) }px;` : }, getTooltipLabel() { return this.getSwatchConfig(this.activeTooltipItem.attribute, this.activeTooltipItem.item).label }, focusedLabel: false, focusLabel(optionId) { this.focusedLabel optionId; }, blurLabel() { this.focusedLabel false; }, showSwatches: false, initShowSwatchesIntersect() { if (IntersectionObserver in window && !window.scrollY) { let io new IntersectionObserver( entries > { entries.map(entry > { if (entry.isIntersecting) { this.showSwatches true; io.unobserve(this.$root); } }) } ); io.observe(this.$root); } else { this.showSwatches true } } } }/script>script defer> use strict; (() > { const equalizeButtonWidths (buttons) > { const buttonList buttons.querySelectorAll(data-elementlink, data-elementempty_link); let buttonMinWidth 0; buttonList.forEach(button > { const buttonWidth button.offsetWidth; if (buttonWidth > buttonMinWidth) { buttonMinWidth buttonWidth; } }); buttonList.forEach(button > { button.style.minWidth `${buttonMinWidth}px`; }); }; window.addEventListener(DOMContentLoaded, () > { document.querySelectorAll(data-content-typebuttonsdata-same-widthtrue).forEach(buttons > { equalizeButtonWidths(buttons); }); }); })();/script>script> use strict; (() > { const initCarousels (elements) > { if (!Glider) { return; } const initProductCarousel (carousel) > { const gliderElement carousel.querySelector(data-roleglider-content); if (!gliderElement) { return; } const gliderDots carousel.querySelector(.glider-dots); const gliderPrev carousel.querySelector(.glider-prev); const gliderNext carousel.querySelector(.glider-next); const glider new Glider(gliderElement, { slidesToShow: 1, slidesToScroll: 1, scrollLock: true, draggable: true, dragVelocity: 2.5, dots: gliderDots, arrows: { prev: gliderPrev, next: gliderNext, }, responsive: { breakpoint: 768, settings: { slidesToShow: 3, slidesToScroll: 3, } }, { breakpoint: 1024, settings: { slidesToShow: 4, slidesToScroll: 4, } }, , }); carousel.classList.remove(overflow-x-scroll); gliderPrev.classList.remove(hidden); gliderNext.classList.remove(hidden); if (carousel.dataset.autoplay ! false) { gliderAutoplay( glider, carousel.dataset.autoplaySpeed, carousel.dataset.infiniteLoop ); } }; const initSliderCarousel (slider) > { slider.innerHTML `div data-roleglider-content>${slider.innerHTML}/div>`; slider.classList.add(glider-contain); slider.insertAdjacentHTML( beforeend, \u000A\u003Cdiv\u0020class\u003D\u0022carousel\u002Dnav\u0020flex\u0020items\u002Dcenter\u0020justify\u002Dcenter\u0020flex\u002D1\u0020p\u002D4\u0022\u003E\u000A\u0020\u0020\u0020\u0020\u003Cbutton\u000A\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020aria\u002Dlabel\u003D\u0022Previous\u0022\u000A\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020class\u003D\u0022glider\u002Dprev\u0020w\u002D8\u0020h\u002D8\u0020mr\u002D1\u0020text\u002Dblack\u0020rounded\u002Dfull\u0020outline\u002Dnone\u0020focus\u003Aoutline\u002Dnone\u0020hidden\u0022\u003E\u000A\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u003Csvg\u0020viewBox\u003D\u00220\u00200\u00201024\u00201024\u0022\u003E\u000A\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u003Cpath\u0020class\u003D\u0022path1\u0022\u000A\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020d\u003D\u0022M716.8\u00201024c6.552\u00200\u002013.102\u002D2.499\u002018.101\u002D7.499\u00209.998\u002D9.997\u00209.998\u002D26.206\u000A\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u00200\u002D36.203l\u002D442.698\u002D442.698\u0020442.698\u002D442.699c9.998\u002D9.997\u00209.998\u002D26.206\u000A\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u00200\u002D36.203s\u002D26.206\u002D9.998\u002D36.203\u00200l\u002D460.8\u0020460.8c\u002D9.998\u00209.997\u002D9.998\u002026.206\u000A\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u00200\u002036.203l460.8\u0020460.8c5\u00205\u002011.55\u00207.499\u002018.102\u00207.499z\u0022\u003E\u000A\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u003C\u002Fpath\u003E\u000A\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u003C\u002Fsvg\u003E\u000A\u0020\u0020\u0020\u0020\u003C\u002Fbutton\u003E\u000A\u0020\u0020\u0020\u0020\u003Cdiv\u0020class\u003D\u0022glider\u002Ddots\u0020select\u002Dnone\u0020flex\u0020flex\u002Dwrap\u0020mx\u002D1\u0020justify\u002Dcenter\u0020p\u002D0\u0020focus\u003Aoutline\u002Dnone\u0022\u003E\u003C\u002Fdiv\u003E\u000A\u0020\u0020\u0020\u0020\u003Cbutton\u000A\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020aria\u002Dlabel\u003D\u0022Next\u0022\u000A\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020class\u003D\u0022glider\u002Dnext\u0020w\u002D8\u0020h\u002D8\u0020ml\u002D1\u0020text\u002Dblack\u0020rounded\u002Dfull\u0020outline\u002Dnone\u0020focus\u003Aoutline\u002Dnone\u0020hidden\u0022\u003E\u000A\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u003Csvg\u0020viewBox\u003D\u00220\u00200\u00201024\u00201024\u0022\u003E\u000A\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u003Cpath\u0020class\u003D\u0022path1\u0022\u000A\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020d\u003D\u0022M256\u00201024c\u002D6.552\u00200\u002D13.102\u002D2.499\u002D18.101\u002D7.499\u002D9.998\u002D9.997\u002D9.998\u002D26.206\u000A\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u00200\u002D36.203l442.698\u002D442.698\u002D442.698\u002D442.699c\u002D9.998\u002D9.997\u002D9.998\u002D26.206\u000A\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u00200\u002D36.203s26.206\u002D9.998\u002036.203\u00200l460.8\u0020460.8c9.998\u00209.997\u00209.998\u002026.206\u00200\u000A\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u002036.203l\u002D460.8\u0020460.8c\u002D5\u00205\u002D11.55\u00207.499\u002D18.102\u00207.499z\u0022\u003E\u000A\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u003C\u002Fpath\u003E\u000A\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u0020\u003C\u002Fsvg\u003E\u000A\u0020\u0020\u0020\u0020\u003C\u002Fbutton\u003E\u000A\u003C\u002Fdiv\u003E\u000A ); const gliderElement slider.querySelector(data-roleglider-content); const gliderDots slider.querySelector(.glider-dots); const gliderPrev slider.querySelector(.glider-prev); const gliderNext slider.querySelector(.glider-next); const infiniteloop slider.dataset.infiniteLoop; const glider new Glider(gliderElement, { slidesToShow: 1, slidesToScroll: 1, scrollLock: true, scrollLockDelay: 250, draggable: true, dragVelocity: 2.5, dots: gliderDots, rewind: infiniteloop, arrows: { prev: gliderPrev, next: gliderNext, }, }); slider.classList.add(glider-initialized); if (slider.dataset.showArrows true) { gliderPrev.classList.remove(hidden); gliderNext.classList.remove(hidden); } if (slider.dataset.autoplay ! false) { gliderAutoplay( glider, slider.dataset.autoplaySpeed, slider.dataset.infiniteLoop ); } }; const gliderAutoplay (glider, milliseconds, loop) > { const pagesCount glider.track.childElementCount; let slideTimeout null; let nextIndex 1; let paused false; const slide () > { slideTimeout setTimeout( () > { if (loop && nextIndex > pagesCount) { nextIndex 0; } glider.scrollItem(nextIndex); }, parseInt(milliseconds) ); }; glider.ele.addEventListener(glider-animated, () > { nextIndex glider.slide + glider.opt.slidesToScroll; window.clearInterval(slideTimeout); if (!paused && (loop || nextIndex pagesCount)) { slide(); } }); const pause () > { if (!paused) { clearInterval(slideTimeout); paused true; } }; const unpause () > { if (paused) { slide(); paused false; } }; glider.ele.parentElement.addEventListener(mouseover, pause, {passive: true}); glider.ele.parentElement.addEventListener(touchstart, pause, {passive: true}); glider.ele.parentElement.addEventListener(mouseout, unpause, {passive: true}); glider.ele.parentElement.addEventListener(touchend, unpause, {passive: true}); slide(); }; elements.forEach(element > { if (element.dataset.contentType products) { initProductCarousel(element); } if (element.dataset.contentType slider) { initSliderCarousel(element); } }); }; window.addEventListener(DOMContentLoaded, () > { const carouselElements document.querySelectorAll( `data-content-typeproductsdata-appearancecarousel, data-content-typeslider` ); if (carouselElements.length > 0) { const script document.createElement(script); script.type text/javascript; script.addEventListener(load, () > { initCarousels(carouselElements); }); script.src https\u003A\u002F\u002Fdefendcellcamqa.com\u002Fstatic\u002Fversion1764235120\u002Ffrontend\u002FHyva\u002Fdefault\u002Fdefault\u002FMagento_PageBuilder\u002Fjs\u002Fglider.min.js; document.head.appendChild(script); } }); })();/script>script defer> use strict; (() > { const initMaps (elements) > { const renderMap (element) > { const dataLocations element.dataset.locations; // Hide map if no locations set if (!dataLocations || dataLocations ) { element.classList.add(hidden); return; } const map new google.maps.Map( element, getMapOptions( element.dataset.showControls ! true, element.dataset.showControls true ) ); const locations JSON.parse(dataLocations); const latitudeLongitudeBounds new google.maps.LatLngBounds(); const bounds ; locations.forEach(location > { const position { lat: parseFloat(location.position.latitude), lng: parseFloat(location.position.longitude), }; bounds.push(position); const infowindow new google.maps.InfoWindow({ content: getInfoWindowContent(location), }); const marker new google.maps.Marker({ position: position, map, title: location.location_name, }); marker.addListener(click, () > { infowindow.open(map, marker); }); }); // Set bounds if multiple locations if (bounds.length > 1) { bounds.forEach(function (bound) { latitudeLongitudeBounds.extend(bound); }); map.fitBounds(latitudeLongitudeBounds); } // Center if single location if (bounds.length 1) { map.setCenter(bounds0); } }; const getMapOptions (disableDefaultUI, mapTypeControl) > { const style ; return { zoom: 8, scrollwheel: false, disableDoubleClickZoom: false, mapTypeControlOptions: { style: google.maps.MapTypeControlStyle.DEFAULT, }, styles: style ? JSON.parse(style) : , disableDefaultUI: disableDefaultUI, mapTypeControl: mapTypeControl, }; }; const getInfoWindowContent (location) > { const title location.location_name ? `h3 classtext-2xl font-medium text-gray-900 title-font>${location.location_name}/h3>` : ; const comment location.comment ? `p classpx-1 pt-3 text-primary>${location.comment}/p>` : ; const phone location.phone ? `p classpx-1 pt-3 text-primary>Phone: ${location.phone}/p>` : ; const street location.address ? `${location.address}br/>` : ; const city location.city ? `${location.city}br/>` : ; const state location.state ? `${location.state}br/>` : ; const zipCode location.zipcode ? `${location.zipcode}br/>` : ; const country location.country ? location.country : ; return `div> ${title} ${comment} ${phone} p classpx-1 pt-3 text-primary> ${street} ${city} ${state} ${zipCode} ${country} /p> /div>`; }; const hideAllMaps () > { document.querySelectorAll(data-content-typemap).forEach(element > { element.classList.add(hidden); }); }; window.gm_authFailure () > { hideAllMaps(); }; if (typeof google.maps undefined) { hideAllMaps(); return; } elements.forEach(element > { if (element.dataset.contentType map) { renderMap(element); } }); }; window.addEventListener(DOMContentLoaded, () > { const mapElements document.querySelectorAll(data-content-typemap); if (mapElements.length > 0) { const script document.createElement(script); script.type text/javascript; script.addEventListener(load, () > { initMaps(mapElements); }); script.src https\u003A\u002F\u002Fmaps.googleapis.com\u002Fmaps\u002Fapi\u002Fjs\u003Fv\u003D3.53\u0026key\u003D; document.head.appendChild(script); } }); })();/script>script defer> use strict; (() > { const initParallaxImage (element) > { if (!window.jarallax) { return; } element.classList.add(jarallax); element.dataset.jarallax ; const parallaxSpeed parseFloat(element.dataset.parallaxSpeed) || 0.5; const elementStyle window.getComputedStyle(element); window.jarallax(element, { imgPosition: elementStyle.backgroundPosition || 50% 50%, imgRepeat: elementStyle.backgroundRepeat || no-repeat, imgSize: elementStyle.backgroundSize || cover, speed: parallaxSpeed, }); }; const initVideoBackground (element) > { if (!window.jarallax) { return; } let slider null; if (element.classList.contains(pagebuilder-slide-wrapper)) { const viewportElement document.createElement(div); slider element.closest(data-content-typeslider); viewportElement.classList.add(jarallax-viewport-element); element.dataset.elementInViewport .jarallax-viewport-element; element.appendChild(viewportElement); } element.classList.add(jarallax); element.dataset.jarallax ; const parallaxSpeed parseFloat(element.dataset.parallaxSpeed) || 0.5; window.jarallax(element, { imgSrc: element.dataset.videoFallbackSrc, speed: parallaxSpeed, videoLoop: element.dataset.videoLoop, videoPlayOnlyVisible: element.dataset.videoPlayOnlyVisible, videoLazyLoading: element.dataset.videoLazyLoad, disableVideo: false, elementInViewport: element.dataset.elementInViewport && element.querySelector(element.dataset.elementInViewport), }); if (slider) { if (slider.dataset.afterChangeIsSet) { return; } slider.addEventListener(glider-loaded, () > { slider.querySelectorAll(.jarallax).forEach(videoSlide > { videoSlide.jarallax && videoSlide.jarallax.onScroll(); }); }); slider.addEventListener(glider-animated, () > { slider.querySelectorAll(.jarallax).forEach(videoSlide > { videoSlide.jarallax && videoSlide.jarallax.onScroll(); }); }); slider.dataset.afterChangeIsSet true; } }; window.addEventListener(DOMContentLoaded, () > { const parallaxImageElements document.querySelectorAll( `data-content-typerowdata-background-typeimagedata-enable-parallax1, data-content-typerow > data-background-typeimagedata-enable-parallax1` ); const videoBackgroundsElements document.querySelectorAll( `data-content-typerowdata-background-typevideodata-enable-parallax1, data-content-typerow > data-background-typevideodata-enable-parallax1, data-content-typebanner data-background-typevideo, data-content-typeslide data-background-typevideo` ); if (parallaxImageElements.length > 0 || videoBackgroundsElements.length > 0) { const jarallaxScript document.createElement(script); jarallaxScript.type text/javascript; jarallaxScript.addEventListener(load, () > { parallaxImageElements.forEach(row > { initParallaxImage(row); }); const jarallaxVideoScript document.createElement(script); jarallaxVideoScript.type text/javascript; jarallaxVideoScript.addEventListener(load, () > { videoBackgroundsElements.forEach(element > { initVideoBackground(element); }); }); jarallaxVideoScript.src https\u003A\u002F\u002Fdefendcellcamqa.com\u002Fstatic\u002Fversion1764235120\u002Ffrontend\u002FMagento\u002Fbase\u002Fdefault\u002FHyva_PageBuilder\u002Fjs\u002Fjarallax\u002Dvideo.min.js; document.head.appendChild(jarallaxVideoScript); }); jarallaxScript.src https\u003A\u002F\u002Fdefendcellcamqa.com\u002Fstatic\u002Fversion1764235120\u002Ffrontend\u002FMagento\u002Fbase\u002Fdefault\u002FHyva_PageBuilder\u002Fjs\u002Fjarallax.min.js; document.head.appendChild(jarallaxScript); } }); })();/script>script defer> use strict; (() > { const applyShowOnHover (element) > { const showOverlayOnHover (element) > { const overlay element.querySelector(.pagebuilder-overlay); const color overlay.dataset.overlayColor; element.addEventListener(mouseover, () > { overlay.style.backgroundColor color; }); element.addEventListener(mouseout, () > { overlay.style.backgroundColor transparent; }); }; const showButtonOnHover (element) > { const button element.querySelector(.pagebuilder-banner-button); element.addEventListener(mouseover, () > { button.style.opacity 1; button.style.visibility visible; }); element.addEventListener(mouseout, () > { button.style.opacity 0; button.style.visibility hidden; }); }; if (element.dataset.showOverlay hover) { showOverlayOnHover(element); } if (element.dataset.showButton hover) { showButtonOnHover(element); } }; window.addEventListener(DOMContentLoaded, () > { document.querySelectorAll(data-content-typebanner,data-content-typeslider).forEach(element > { applyShowOnHover(element); }); }); })();/script>script defer> use strict; (() > { document.querySelectorAll(data-content-typetab-item).forEach(tabItem > { tabItem.setAttribute(x-show, `tab ${tabItem.id}`); }); document.querySelectorAll(data-content-typetabs).forEach(tab > { const defaultActiveTab parseInt(tab.dataset.activeTab) || 0; tab.querySelectorAll(.tab-header).forEach((tabHeader, index) > { const tabLink tabHeader.querySelector(a); const tabId tabLink.getAttribute(href).replace(#, ); tabHeader.setAttribute(:class, `{ active: tab ${tabId} }`); tabLink.setAttribute(x-on:click.prevent, `tab ${tabId}`); if (index defaultActiveTab) { tab.setAttribute(x-data, `{ tab: ${tabId} }`); } }); }); })();/script>script> use strict; const grecaptchaV2LoadCallbacks ; function executeRecaptchaLoadCallbacks () { while (window.grecaptcha && grecaptchaV2LoadCallbacks.length > 0) { const callback grecaptchaV2LoadCallbacks.pop(); typeof callback string ? windowcallback() : callback(); } } (function() { const loadRecaptchaScript (event) > { if (window.grecaptcha || !event.target.form) { return; } const url https://www.google.com/recaptcha/api.js?onloadexecuteRecaptchaLoadCallbacks; const siteKey 6Ld\u002DYa8pAAAAAP2iF6X3_VN5fIclF75pBB6JCo\u002Dp; const script document.createElement(script); script.type text/javascript; script.src siteKey ? `${url}&render${siteKey}` : `${url}&renderexplicit`; script.async true; document.head.appendChild(script); script.addEventListener(load, () > { Array.from(document.querySelectorAll(buttondata-recaptcha-btn:disabled)).forEach(btn > btn.removeAttribute(disabled)); }); } window.forceLoadRecaptchaScript (form) > { loadRecaptchaScript({target: {form: form || dummy}}); executeRecaptchaLoadCallbacks(); }; document.body.addEventListener(input, loadRecaptchaScript, { once: true }); document.body.addEventListener(focus, loadRecaptchaScript, { once: true }); }());/script>script> use strict; (function () { const modals ; const excludedFromFocusTrapping new Set(); function loadInertPolyfill(callback) { if (window.hyva.modal.disableInertPolyfill) { callback && callback(); } else { const polyfill document.createElement(script); polyfill.src https\u003A\u002F\u002Fdefendcellcamqa.com\u002Fstatic\u002Fversion1764235120\u002Ffrontend\u002FMagento\u002Fbase\u002Fdefault\u002FHyva_Theme\u002Fjs\u002Fwicg\u002Dinert\u002D3.1.1\u002Finert.min.js; callback && polyfill.addEventListener(load, callback); const firstScriptTag document.getElementsByTagName(script)0; firstScriptTag.parentNode.insertBefore(polyfill, firstScriptTag); } } let isInertPolyfillLoaded 0; function setSiblingsInert(dialogElement, toState) { if (isInertPolyfillLoaded 0) { isInertPolyfillLoaded 1; loadInertPolyfill(() > { isInertPolyfillLoaded 2; setSiblingsInert(dialogElement, toState) }) return; } if (isInertPolyfillLoaded 1) { return; } let el dialogElement; while (el && (el el.parentElement)) { if (el document.body || el.parentElement null) continue; Array.from(el.parentElement.children).forEach(sibling > { if (sibling ! el) { sibling.inert toState; } }) } (function setChildrenInert(el, toState) { if (el) { el.inert toState; Array.from(el.children).forEach(child > setChildrenInert(child, toState)); } })(findParentWithOverlaySpread(dialogElement), ! toState) excludedFromFocusTrapping.forEach(selector > { Array.from(document.querySelectorAll(selector)).map(el > el.inert false); }) } function findParentWithOverlaySpread(el) { while (el && (el el.parentElement)) { if (el document.body || el.parentElement null) continue; if (el.hasAttribute(x-spread) && el.getAttribute(x-spread).indexOf(overlay() ! -1) { return el; } } } function freeFocusFromModalTrap(modal) { const dialogElement modal.instance.$refsmodal.name; isOverlayDisabled(dialogElement) || modal.instance.$nextTick(() > setSiblingsInert(dialogElement, false)); } function trapFocusInNextModalWithOverlay() { for (let idx modals.length -1; idx > 0; idx--) { const nextOnStack modalsidx; const nextDialogElement nextOnStack.instance.$refsnextOnStack.name; if (! isOverlayDisabled(nextDialogElement)) { nextOnStack.instance.$nextTick(() > setSiblingsInert(nextDialogElement, true)); break; } } } function focusables(dialogElement) { const selector a, button, input, textarea, select, details, tabindex:not(tabindex-1); return Array.from(dialogElement.querySelectorAll(selector)) .filter(el > !el.hasAttribute(disabled)); } function firstVisible(elements) { const a Array.from(elements); for (let i 0; i a.length; i++) { if (ai.offsetWidth || ai.offsetHeight || ai.getClientRects().length) return ai; } return null; } function isInViewport(element) { const rect element && element.getBoundingClientRect(); return rect && rect.top > 0 && rect.left > 0 && rect.right window.innerWidth && rect.bottom window.innerHeight; } function setFocusAfterTransition(dialogElement, duration) { window.setTimeout(() > { const focusElement firstVisible(dialogElement.querySelectorAll(x-focus-first)) || focusables(dialogElement)0 || null; focusElement && isInViewport(focusElement) && focusElement.focus(); }, duration + 1); } function determineTrigger($refs, dialog, trigger) { if (typeof trigger undefined && typeof dialog object && dialog.target && dialog.target.focus) { return dialog.target; } if (typeof dialog string && typeof trigger object && trigger.target && trigger.target.focus) { return trigger.target; } if (typeof trigger string && $refstrigger) { return $refstrigger; } else { return null; } } function isOverlayDisabled(dialog) { return dialog && dialog.hasAttribute(x-no-overlay) } function areRemainingModalsWithoutOverlay(modals) { const overflowDisabled modals.map(modal > modal.instance.$refsmodal.name).filter(isOverlayDisabled); return overflowDisabled.length modals.length; } window.hyva.modal function(options) { const config Object.assign({ dialog: dialog, duration: 300, transitionEnter: transition ease-out duration-300, transitionEnterStart: opacity-0, transitionEnterEnd: opacity-100, transitionLeave: transition ease-in duration-300, transitionLeaveStart: opacity-100, transitionLeaveEnd: opacity-0, }, options); let lastHide 0; return { opened: {}, show(dialog, trigger) { const focusTargetAfterHide determineTrigger(this.$refs, dialog, trigger); const name typeof dialog string ? dialog : config.dialog; const dialogElement this.$refsname; if (! dialogElement) { return; } const useOverlay ! dialogElement.hasAttribute(x-no-overlay); dialogElement.scrollTop 0; if (this.openedname) { return; } this.openedname true; useOverlay && this.$nextTick(() > setSiblingsInert(dialogElement, true)); setFocusAfterTransition(dialogElement, config.duration); const frame {name, instance: this, focusTarget: focusTargetAfterHide, time: Date.now()}; modals.push(frame); if (useOverlay) { document.body.classList.add(overflow-hidden); } return new Promise(resolve > frame.resolve resolve); }, cancel() { this.hide(false); }, ok() { this.hide(true); }, hide(value) { if (Date.now() - lastHide config.duration) { return; } lastHide Date.now(); const modal modals.pop() || {}; const name modal.name; this.openedname false; freeFocusFromModalTrap(modal) trapFocusInNextModalWithOverlay(); const nextFocusAfterHide modal.focusTarget; nextFocusAfterHide && this.$nextTick(() > nextFocusAfterHide.focus()); if (modals.length 0 || areRemainingModalsWithoutOverlay(modals)) { document.body.classList.remove(overflow-hidden); } modal.resolve(value); }, overlay(dialog) { const name typeof dialog string ? dialog : config.dialog; return { x-show() { return this.openedname }, x-transition:enter: config.transitionEnter, x-transition:enter-start: config.transitionEnterStart, x-transition:enter-end: config.transitionEnterEnd, x-transition:leave: config.transitionLeave, x-transition:leave-start: config.transitionLeaveStart, x-transition:leave-end: config.transitionLeaveEnd, @hyva-modal-show.window(event) { event.detail && event.detail.dialog name && this.show(name) } }; } }; } window.hyva.modal.peek () > modals.length > 0 && modalsmodals.length -1 window.hyva.modal.pop function () { if (modals.length > 0) { const modal modalsmodals.length -1; modal.instance.hide(); } } window.hyva.modal.excludeSelectorsFromFocusTrap function (selectors) { typeof selectors string || selectors instanceof String ? excludedFromFocusTrapping.add(selectors) : selectors.map(selector > excludedFromFocusTrapping.add(selector)); } window.hyva.modal.eventListeners { keydown: event > { if (event.key Escape) { window.hyva.modal.pop(); } }, click: event > { if (modals.length > 0) { const modal modalsmodals.length -1; const dialog modal.instance.$refsmodal.name; if (modal.time + 50 Date.now() && // if last click processing is more than 50ms ago ! isOverlayDisabled(dialog) && // if dialog has overlay ! dialog.contains(event.target)) { // if click is outside of dialog modal.instance.hide(); } } } }; document.addEventListener(keydown, window.hyva.modal.eventListeners.keydown); document.addEventListener(click, window.hyva.modal.eventListeners.click); })();/script>script> const lazyBackgrounds document.querySelectorAll(data-lazy-background-url); const lazyLoad (entries, observer) > { entries.forEach(entry > { if (entry.isIntersecting) { const backgroundUrl entry.target.getAttribute(data-lazy-background-url); entry.target.style.backgroundImage `url(${backgroundUrl})`; observer.unobserve(entry.target); } }); }; const observer new IntersectionObserver(lazyLoad, { threshold: 0.1 }); lazyBackgrounds.forEach(div > { observer.observe(div); });/script>script> /* MOBILE CONTENT SLIDER */ window.addEventListener(load, function() { var mobileSlider document.querySelectorAll(.section-mobile-slides .pagebuilder-column-group .pagebuilder-column-line); mobileSlider.forEach(function (slider){ // Create Nav Container var navArrowsContainer document.createElement(div); navArrowsContainer.className mobile-slides-nav; // Create Nav Dots var mobileDots document.createElement(div); mobileDots.className glider-dots flex justify-center; navArrowsContainer.appendChild(mobileDots); slider.insertAdjacentElement(afterend, navArrowsContainer); new Glider(slider, { slidesToShow: 1, slidesToScroll: 1, draggable: true, dots: navArrowsContainer.querySelector(.glider-dots), responsive: { breakpoint: 1024, settings: { slidesToShow: 3, slidesToScroll: 3, draggable: false } }, , }); }); }); /* MOBILE TABS */ document.addEventListener(DOMContentLoaded, function() { function initializeMobileTabs() { var homepageTabs document.querySelector(.homepage-tabs); var tabs document.querySelectorAll(.tabs-navigation .tab-header); var dropdown document.querySelector(.tabs-dropdown); if (window.innerWidth 1023) { if (!dropdown) { dropdown document.createElement(select); dropdown.classList.add(tabs-dropdown); dropdown.setAttribute(aria-label, Select Option); // Create options from tabs tabs.forEach(function(tab) { var option document.createElement(option); option.value tab.querySelector(a).getAttribute(href).substring(1); option.textContent tab.textContent.trim(); dropdown.appendChild(option); }); // Add dropdown to the page homepageTabs.insertBefore(dropdown, homepageTabs.firstChild); // Hide all tab contents initially var tabContents document.querySelectorAll(data-content-typetab-item); tabContents.forEach(function(content, index) { content.style.display index 0 ? block : none; }); // Add event listener to dropdown dropdown.addEventListener(change, function() { var selectedTab this.value; // Hide all tab contents document.querySelectorAll(data-content-typetab-item).forEach(function(content) { content.style.display none; }); // Show selected tab content document.getElementById(selectedTab).style.display block; }); // Set the first tab as selected by default dropdown.value tabs0.querySelector(a).getAttribute(href).substring(1); } } else { // If not on mobile, remove dropdown if it exists and reset tab contents display if (dropdown) { dropdown.remove(); } // Show only the content of the active tab var activeTab document.querySelector(.tabs-navigation .tab-header.active); if (activeTab) { var activeContentId activeTab.querySelector(a).getAttribute(href).substring(1); document.querySelectorAll(data-content-typetab-item).forEach(function(content) { content.style.display content.id activeContentId ? block : none; }); } } } // Initialize tabs on load initializeMobileTabs(); // Re-initialize tabs on resize window.addEventListener(resize, initializeMobileTabs); });/script>script> document.addEventListener(DOMContentLoaded, function() { const setLazyBackgrounds () > { // Select all elements with class names starting with background-image- and with a data-background-images attribute const elements document.querySelectorAll(class*background-image-data-background-images); elements.forEach(element > { let backgroundDataAttr element.dataset.backgroundImages; if (backgroundDataAttr) { // Handle the escaped quotes in the JSON string backgroundDataAttr backgroundDataAttr.replace(/\\\/g, ); try { const backgroundData JSON.parse(backgroundDataAttr); const screenWidth window.innerWidth; let backgroundUrl ; // Check for mobile or desktop image based on screen width if (screenWidth 768 && backgroundData.mobile_image) { backgroundUrl backgroundData.mobile_image; } else if (backgroundData.desktop_image) { backgroundUrl backgroundData.desktop_image; } // If a valid background URL is found, set it to the element if (backgroundUrl) { element.setAttribute(data-bg, backgroundUrl); element.style.backgroundImage ; // Clear any inline background image initially } else { console.warn(No suitable image URL found for element:, element); } } catch (error) { console.error(Error parsing background data:, error); } } }); }; const lazyLoad (entries, observer) > { entries.forEach(entry > { if (entry.isIntersecting) { const target entry.target; const backgroundUrl target.getAttribute(data-bg); if (backgroundUrl) { // Apply the background image target.style.backgroundImage `url(${backgroundUrl})`; target.classList.add(bg-loaded); target.removeAttribute(data-bg); observer.unobserve(target); // Stop observing once loaded } } }); }; const observer new IntersectionObserver(lazyLoad, { threshold: 0.1 }); const observeElements () > { // Observe elements that have the data-bg attribute set document.querySelectorAll(class*background-image-data-bg).forEach(element > { observer.observe(element); }); }; setLazyBackgrounds(); // Set lazy background images observeElements(); // Start observing elements for lazy load // For dynamically added content, re-observe elements when DOM changes const observerForDynamicContent new MutationObserver(() > { observeElements(); }); // Observe the entire page for changes to dynamic content observerForDynamicContent.observe(document.body, { childList: true, subtree: true }); });/script>div x-datadataAmMessage() x-bindeventListeners x-spreadeventListeners x-initinitAmMessage()>/div>script> function dataAmMessage() { return { initAmMessage(){}, eventListeners: { @private-content-loaded.window(event) { const detail event.detail.data, body document.getElementById(html-body); const classList body.classList.value; if (classList.indexOf(checkout-) -1 && typeof detail.ammessages !undefined && detail.ammessages.messages.notice) { dispatchMessages( { type: detail.ammessages.messages.notice.type, text: detail.ammessages.messages.notice.text } ); } } } } }/script>/div>script noncedWtleWt1M3Z6N242OWJ0ZDRtNjRrcWJqazMyOHVheDk> yireoGoogleTagManager2Pusher({version:3.10.0,page_type:cms\/index\/index,page_path:https:\/\/defendcellcamqa.com\/,page_title:Home - Defend,virtual_page:,breadcrumb:,user:{has_transacted:false}}, push (initial page) data-layer.phtml); /script>script noncedWtleWt1M3Z6N242OWJ0ZDRtNjRrcWJqazMyOHVheDk> function yireoGoogleTagManager2FindParentElementWithName(element, parentTagName) { if (!element.parentElement) { return null; } if (element.parentElement.tagName.toLowerCase() parentTagName) { return element.parentElement; } return yireoGoogleTagManager2FindParentElementWithName(element.parentElement, parentTagName); } const products document.querySelectorAll(.products a.product); if (products) { products.forEach(function(product) { product.addEventListener(click, function(event, s) { let parentElement yireoGoogleTagManager2FindParentElementWithName(event.target, form); if(!parentElement) return; // Fix for issue clicking OOS products const inputElement parentElement.querySelector(inputnameproduct); const productId inputElement.value; const productData windowYIREO_GOOGLETAGMANAGER2_PRODUCT_DATA_ID_ + productId || {}; productData.item_id productId; const eventData { event: select_item, ecommerce: { items: productData } } yireoGoogleTagManager2Pusher(eventData, push (page event select_item) script-product-clicks.phtml); if (windowYIREO_GOOGLETAGMANAGER2_DEBUG_CLICKS && confirm(Press to continue with redirect) false) { event.preventDefault(); } }); }) }/script>script noncedWtleWt1M3Z6N242OWJ0ZDRtNjRrcWJqazMyOHVheDk> window.addEventListener(private-content-loaded, function(event) { window.dataLayer window.dataLayer || ; var isEmpty function (variable) { if (typeof variable undefined) { return true; } if (Array.isArray(variable) && variable.length 0) { return true; } return typeof variable object && Object.keys(variable).length 0; } var getSectionNames function () { return cart, customer; } getSectionNames().forEach(function (sectionName) { if (!event?.detail?.data?.sectionName?.gtm) { return; } const attributes event.detail.datasectionName.gtm; if (!Object.keys(attributes).length > 0) { return; } yireoGoogleTagManager2Pusher(attributes, push (attributes) script-additions.phtml); }); let attributes {}; getSectionNames().forEach(function (sectionName) { if (!event?.detail?.data?.sectionName?.gtm_events) { return; } const gtmEvents event.detail.datasectionName.gtm_events; for (const eventId, eventData of Object.entries(gtmEvents)) { yireoGoogleTagManager2Logger(found event in section + sectionName + , eventData); const metaData eventData.meta; yireoGoogleTagManager2Pusher(eventData, push (customerData + sectionName + event + eventId + )); if (!metaData || metaData.cacheable ! true) { yireoGoogleTagManager2Logger(removing event + eventId + from section + sectionName + ) let mageCacheStorage event.detail.data; if (mageCacheStorage ! null && typeof mageCacheStoragesectionName ! undefined && typeof mageCacheStoragesectionName.gtm_events ! undefined && eventId in mageCacheStoragesectionName.gtm_events) { delete mageCacheStoragesectionName.gtm_eventseventId; } window.localStorage.setItem(mage-cache-storage, JSON.stringify(mageCacheStorage)); } } }); if (false isEmpty(attributes)) { yireoGoogleTagManager2Pusher(attributes, dataLayer (initial js) script-additions.phtml); } });/script>/body>/html>
View on OTX
|
View on ThreatMiner
Please enable JavaScript to view the
comments powered by Disqus.
Data with thanks to
AlienVault OTX
,
VirusTotal
,
Malwr
and
others
. [
Sitemap
]