PageSourceSearch

https://nsor.com/blog.html

html nsor.com collected 2026-10-04 03:33:26 UTC 145,289 bytes, 1,324 lines download raw bytes

1 <!doctype html><html lang="en"><head >
1<script nonce="enQyOWVrZnAyeWhlMmFnY2ZhanJmZHp5dWJxdzFmc3k=">(() => {
2    let mstCookieService = {
3        allCookiesByGroups: {"1":["add_to_cart","guest-view","login_redirect","mage-banners-cache-storage","mage-messages","mage-translation-storage","mage-translation-file-version","product_data_storage","recently_compared_product","recently_compared_product_previous","recently_viewed_product","recently_viewed_product_previous","remove_from_cart","stf","X-Magento-Vary","form_key","mage-cache-sessid","mage-cache-storage","mage-cache-storage-section-invalidation","persistent_shopping_cart","private_content_version","section_data_ids","store"],"2":["customer_segment_ids","external_no_cache","frontend","guest_view","last_category","last_product","newmessage","no_cache"],"3":["mg_dnt","user_allowed_save_cookie","authentication_flag","dataservices_customer_id","dataservices_customer_group","dataservices_cart_id","dataservices_product_context"],"4":["_ga","_ga_[*]","_gcl_au","_tt_enable_cookie","_ttp","_fbp","_fbc"]},
4        essentialGroupIds: [1],
5        requiredCookies: ["PHPSESSID","form_key","gdpr_cookie_consent","gdpr_cookie_groups"],
6        isTrack: false,
7        wildcard: '[*]',
8        rejected: [],
9        sent: [],
10        getAllowedGroups() {
11            let cookieValue = this.getCookie('gdpr_cookie_groups');
12            let allowedGroupIds = cookieValue ? unescape(cookieValue).split(',') : [];
13
14            return (allowedGroupIds.length) ? allowedGroupIds : this.essentialGroupIds;
15        },
16        getAllowedCookies() {
17            let allowedGroups = this.getAllowedGroups();
18            let cookies = this.requiredCookies;
19            for (let groupId of allowedGroups) {
20                if (this.allCookiesByGroups[groupId]) {
21                    for (let code of this.allCookiesByGroups[groupId]) {
22                        cookies.push(code);
23                    }
24                }
25            }
26            return cookies;
27        },
28        getCookie(cookieCode) {
29            cookieCode += '=';
30            let cookieArr = document.cookie.split(';');
31            for (i = 0; i < cookieArr.length; i++) {
32                let cookie = (cookieArr[i]).trim();
33                if (cookie.indexOf(cookieCode) === 0) {
34                    return cookie.substring(cookieCode.length, cookie.length);
35                }
36            }
37            return null;
38        },
39        isAllowed(cookieCode) {
40            let allowedCookies = this.getAllowedCookies();
41            for (let code of allowedCookies) {
42                if (code == cookieCode) {
43                    return true;
44                }
45                if (code.indexOf(this.wildcard) !== -1) {
46                    let regexp = new RegExp('^' + code.replace(this.wildcard, '.+') + '$', 'i');
47                    if (regexp.test(cookieCode)) {
48                        return true;
49                    }
50                }
51            }
52            return false;
53        },
54        addSent(sent) {
55            this.sent = this.sent.concat(sent);
56        },
57        reject(cookieCode) {
58            if (this.rejected.indexOf(cookieCode) === -1) {
59                this.rejected.push(cookieCode);
60            }
61        },
62        sendRejected() {
63            if (this.rejected.length) {
64                let toSend = this.rejected.filter(function (cookieCode) {
65                    return this.indexOf(cookieCode) === -1;
66                }, this.sent);
67                if (toSend.length) {
68                    let body = toSend.reduce((body, cookieCode) => {
69                        body.append('cookie_list[]', cookieCode);
70                        return body;
71                    }, new URLSearchParams({}));
72                    fetch('/gdpr_cookie/cookie/rejected', {
73                        method: 'POST',
74                        headers: {
75                            'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',
76                            'X-Requested-With': 'XMLHttpRequest'
77                        },
78                        body: body
79                    });
80                    this.addSent(toSend);
81                }
82            }
83        }
84    };
85
86    let nativeCookie = Object.getOwnPropertyDescriptor(Document.prototype, 'cookie');
87    if (!nativeCookie && HTMLDocument) {
88        nativeCookie = Object.getOwnPropertyDescriptor(HTMLDocument.prototype, 'cookie');
89    }
90    if (nativeCookie && nativeCookie.configurable) {
91        Object.defineProperty(document, 'cookie', {
92            enumerable: true,
93            configurable: true,
94            get() {
95                return nativeCookie.get.call(document);
96            },
97            set(v) {
98                try {
99                    let cookieCode = ((v.split(';')[0]).split('=')[0]).trim();
100                    if (!mstCookieService.isAllowed(cookieCode)) {
101                        mstCookieService.reject(cookieCode);
102                        return;
103                    }
104                } catch (e) {
105                    console.log('  -- error when check cookie: ', v);
106                    console.log(e.name + ':' + e.message);
107                    console.log(e.stack);
108                }
109                nativeCookie.set.call(document, v);
110            }
111        });
112
113        if (mstCookieService.isTrack) {
114            let timerId = setInterval(mstCookieService.sendRejected.bind(mstCookieService), 1000);
115        }
116    }
117})();(function () {
118    window.dataLayer = window.dataLayer || [];
119    // Keep gtag local so Magento_GoogleGtag still loads googletagmanager.com/gtag/js.
120    // Defining window.gtag here makes Magento skip the script → Tag Assistant: "No Google tags found".
121    function gtag(){window.dataLayer.push(arguments);}
122    gtag("consent", "default", {"ad_user_data":"denied","ad_personalization":"denied","ad_storage":"denied","analytics_storage":"denied","personalization_storage":"denied","functionality_storage":"denied","security_storage":"denied","wait_for_update":500});
123    try {
124        var saved = window.localStorage.getItem("mst-gdpr-google-consent-mode");
125        if (saved) {
126            gtag("consent", "update", JSON.parse(saved));
127            return;
128        }
129    } catch (e) {}
130    var fallbackUpdate = null;
131    if (fallbackUpdate) {
132        gtag("consent", "update", fallbackUpdate);
133    }
134})();</script>
134 <meta charset="utf-8"/>
135<meta name="title" content="Blog"/>
136<meta name="description" content="Shop North Shore Off-Road for Truck and Jeep Accessories. Lift Kits, Leveling Kits, Winches, Off-Road Recovery Gear, Wheels and Tires. Shop in store or online. Stores located in British Columbia and Alberta."/>
137<meta name="robots" content="index, follow"/>
138<meta name="viewport" content="width=device-width, initial-scale=1"/>
139<meta name="format-detection" content="telephone=no"/>
140<title>Blog  | Truck &amp; Jeep Parts</title>
141    <link rel="stylesheet" type="text/css" media="all" href="https://nsor.com/static/version1790833067/frontend/Nsor/default/en_US/mage/calendar.css" />
142<link rel="stylesheet" type="text/css" media="all" href="https://nsor.com/static/version1790833067/frontend/Nsor/default/en_US/Flexiti_Flxpayment/css/styles.css" />
143<link rel="stylesheet" type="text/css" media="all" href="https://nsor.com/static/version1790833067/frontend/Nsor/default/en_US/GlobalPayments_PaymentGateway/css/styles.css" />
144<link rel="stylesheet" type="text/css" media="all" href="https://nsor.com/static/version1790833067/frontend/Nsor/default/en_US/Jajuma_ImageOptimizerUltimate/css/web.css" />
145<link rel="stylesheet" type="text/css" media="all" href="https://nsor.com/static/version1790833067/frontend/Nsor/default/en_US/css/styles-m.css" />
146<link rel="stylesheet" type="text/css" media="all" href="https://nsor.com/static/version1790833067/frontend/Nsor/default/en_US/jquery/uppy/dist/uppy-custom.css" />
147<link rel="stylesheet" type="text/css" media="all" href="https://nsor.com/static/version1790833067/frontend/Nsor/default/en_US/Amasty_Base/vendor/slick/amslick.min.css" />
148<link rel="stylesheet" type="text/css" media="all" href="https://nsor.com/static/version1790833067/frontend/Nsor/default/en_US/Amasty_Finder/css/chosen.min.css" />
149<link rel="stylesheet" type="text/css" media="all" href="https://nsor.com/static/version1790833067/frontend/Nsor/default/en_US/Amasty_InstagramFeed/vendor/fancybox/jquery.fancyambox.min.css" />
150<link rel="stylesheet" type="text/css" media="all" href="https://nsor.com/static/version1790833067/frontend/Nsor/default/en_US/Amasty_LibSwiperJs/vendor/swiper/swiper.min.css" />
151<link rel="stylesheet" type="text/css" media="all" href="https://nsor.com/static/version1790833067/frontend/Nsor/default/en_US/Amasty_Storelocator/vendor/chosen/chosen.min.css" />
152<link rel="stylesheet" type="text/css" media="screen and (min-width: 768px)" href="https://nsor.com/static/version1790833067/frontend/Nsor/default/en_US/css/styles-l.css" />
153<link rel="stylesheet" type="text/css" media="print" href="https://nsor.com/static/version1790833067/frontend/Nsor/default/en_US/css/print.css" />
154
155
156
157
158<link rel="preload" as="font" crossorigin="anonymous" href="https://nsor.com/static/version1790833067/frontend/Nsor/default/en_US/fonts/Luma-Icons.woff2" />
159<link rel="canonical" href="https://nsor.com/blog.html" />
160<link rel="icon" type="image/x-icon" href="https://nsor.com/media/favicon/websites/1/NSOR_Favicon.png" />
161<link rel="shortcut icon" type="image/x-icon" href="https://nsor.com/media/favicon/websites/1/NSOR_Favicon.png" />
162
163<!-- Meta Pixel Code -->
164
165<noscript><img height="1" width="1" style="display:none"
166src="https://www.facebook.com/tr?id=1628185817221309&ev=PageView&noscript=1"
167/></noscript>
168<!-- End Meta Pixel Code -->
169<meta name="google-site-verification" content="maq8yJkz61-pxwYV0vPGZ_D6yHgyXRFUYEX3KnPgsTg" />
170<link rel="preload" as="image" href="https://nsor.com/media/wysiwyg/Banner--RFX-Cap_1.jpg"/>    <!-- BEGIN GOOGLE ANALYTICS 4 CODE --><!-- END GOOGLE ANALYTICS 4 CODE -->   </head><body data-container="body" data-mage-init='{"loaderAjax": {}, "loader": { "icon": "https://nsor.com/static/version1790833067/frontend/Nsor/default/en_US/images/loader-2.gif"}}' id="html-body" class="amblog-index-index page-layout-2columns-right">          <div class="cookie-status-message" id="cookie-status" style="display: none;">The store will not work correctly when cookies are disabled.</div>   <noscript><div class="message global noscript"><div class="content"><p><strong>JavaScript seems to be disabled in your browser.</strong> <span> For the best experience on our site, be sure to turn on Javascript in your browser.</sp
170an></p></div></div></noscript>      <div class="page-wrapper"><header class="page-header"><style>#html-body [data-pb-style=D3YP6UK]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll}</style><div class="header-top-bar-message" data-content-type="row" data-appearance="full-width" data-enable-parallax="0" data-parallax-speed="0.5" data-background-images="{}" data-background-type="image" data-video-loop="true" data-video-play-only-visible="true" data-video-lazy-load="true" data-video-fallback-src="" data-element="main" data-pb-style="D3YP6UK"><div class="row-full-width-inner" data-element="inner"><div data-content-type="text" data-appearance="default" data-element="main"><ul>
171<li>EARN A DISCOUNT | By Choosing an In-Store Pick-up</li>
172<li>FREE Shipping | On Orders Over $99 Excluding Oversized</li>
173<li>STOCK CHECK | In Stock Items are Marked Ready to Ship</li>
174</ul></div></div></div><div class="header content"> <span data-action="toggle-nav" class="action nav-toggle"><span>Toggle Nav</span></span> <a class="logo" href="https://nsor.com/" title="" aria-label="store logo">  <picture>  <source type="image/webp" srcset="https://nsor.com/media/opti_image/webp/logo/stores/1/NSOR_Black_Full_Logo_2017.webp"> <source type="image/jpg" srcset="https://nsor.com/media/logo/stores/1/NSOR_Black_Full_Logo_2017.jpg"><img src="https://nsor.com/media/logo/stores/1/NSOR_Black_Full_Logo_2017.jpg" title="" alt="" width="170"   loading="lazy" /></picture></a><div class="customer-account-link"> <a href="https://nsor.com/customer/account/" title="Login">Login</a></div><style>#html-body [data-pb-style=WX9ASDW]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll}</style><div class="customer-account-link call" data-content-type="row" data-appearance="full-bleed" data-enable-parallax="0" data-parallax-speed="0.5" data-background-images="{}" data-background-type="image" data-video-loop="true" data-video-play-only-visible="true" data-video-lazy-load="true" data-video-fallback-src="" data-element="main" data-pb-style="WX9ASDW"><div data-content-type="text" data-appearance="default" data-element="main"><p><a href="tel:18006242468">1-800-624-2468</a></p>
175<p><a href="/store-locator">Locations</a></p></div></div> <div data-block="minicart" class="minicart-wrapper"><a title="Shopping Cart" class="action showcart" href="https://nsor.com/checkout/cart/" data-bind="scope: 'minicart_content'"><span class="text">My Cart</span> <span class="counter qty empty" data-bind="css: { empty: !!getCartParam('summary_count') == false && !isLoading() }, blockLoader: isLoading"><span class="counter-number"><!-- ko if: getCartParam('summary_count') --><!-- ko text: getCartParam('summary_count').toLocaleString(window.LOCALE) --><!-- /ko --><!-- /ko --></span> <span class="counter-label"><!-- ko if: getCartParam('summary_count') --><!-- ko text: getCartParam('summary_count').toLocaleString(window.LOCALE) --><!-- /ko --><!-- ko i18n: 'items' --><!-- /ko --><!-- /ko --></span></span></a>  <div class="block block-minicart" data-role="dropdownDialog" data-mage-init='{"dropdownDialog":{ "appendTo":"[data-block=minicart]", "triggerTarget":".showcart", "timeout": "2000", "closeOnMouseLeave": false, "closeOnEscape": true, "triggerClass":"active", "parentClass":"active", "buttons":[]}}'><div id="minicart-content-wrapper" data-bind="scope: 'minicart_content'"><!-- ko template: getTemplate() --><!-- /ko --></div></div>  </div>   <section class="amsearch-wrapper-block" data-amsearch-wrapper="block" data-bind=" scope: 'amsearch_wrapper', mageInit: { 'Magento_Ui/js/core/app': { components: { amsearch_wrapper: { component: 'Amasty_Xsearch/js/wrapper', data: {&quot;url&quot;:&quot;https:\/\/nsor.com\/amasty_xsearch\/autocomplete\/index\/&quot;,&quot;url_result&quot;:&quot;https:\/\/nsor.com\/catalogsearch\/result\/&quot;,&quot;url_popular&quot;:&quot;https:\/\/nsor.com\/search\/term\/popular\/&quot;,&quot;isDynamicWidth&quot;:false,&quot;isProductBlockEnabled&quot;:true,&quot;width&quot;:900,&quot;displaySearchButton&quot;:true,&quot;fullWidth&quot;:false,&quot;minChars&quot;:3,&quot;delay&quot;:500,&quot;currentUrlEncoded&quot;:&quot;aHR0cHM6Ly9uc29yLmNvbS9ibG9nLmh0bWw~&quot;,&quot;color_settings&quot;:[],&quot;popup_display&quot;:0,&quot;preloadEnabled&quot;:false,&quot;isSeoUrlsEnabled&quot;:false,&quot;seoKey&quot;:&quot;search&quot;,&quot;isSaveSearchInputValueEnabled&quot;:false} } } } }"><div class="block-title"></div><div class="amsearch-form-block" data-bind=" style: { width: resized() ? data.width + 'px' : '' }
175, css: { '-opened': opened }, afterRender: initCssVariables">  <section class="amsearch-input-wrapper" data-bind=" css: { '-dynamic-width': data.isDynamicWidth, '-match': $data.readyForSearch(), '-typed': inputValue && inputValue().length }"><input type="text" name="q" placeholder="Enter&#x20;Keyword&#x20;or&#x20;Item" class="amsearch-input" maxlength="128" role="combobox" aria-haspopup="false" aria-autocomplete="both" autocomplete="off" aria-expanded="false" data-amsearch-block="input" enterkeyhint="search" data-bind=" afterRender: initInputValue, hasFocus: focused, value: inputValue, event: { keypress: onEnter }, valueUpdate: 'input'"><!-- ko template: { name: templates.loader } --><!-- /ko --><button class="amsearch-button -close -clear -icon" style="display: none" data-bind=" event: { click: inputValue.bind(this, '') }, attr: { title: $t('Clear Field') }, visible: inputValue && inputValue().length"></button> <button class="amsearch-button -loupe -clear -icon -disabled" data-bind=" event: { click: search }, css: { '-disabled': !$data.match() }, attr: { title: $t('Search') }"></button></section>   <button class="amsearch-button -primary -search -disabled" type="submit" title="Search" data-bind=" attr: { tabindex: readyForSearch() ? '0' : '-1' }, event: { click: search }, css: { '-disabled': !readyForSearch() }, enable: readyForSearch()">Search</button>    <section class="amsearch-result-section" data-amsearch-js="results" style="display: none;" data-bind=" css: { '-small': $data.data.width < 700 && !$data.data.fullWidth }, afterRender: function (node) { initResultSection(node, 1) }, style: resultSectionStyles(), visible: $data.opened()"><!-- ko if: !$data.match() && $data.preload() --><!-- ko template: { name: templates.preload } --><!-- /ko --><!-- /ko --><!-- ko if: $data.match() --><!-- ko template: { name: templates.results } --><!-- /ko --><!-- /ko --><!-- ko if: $data.message() && $data.message().length --><!-- ko template: { name: templates.message } --><!-- /ko --><!-- /ko --></section></div></section></div></header> <div class="header-top-horizontal-megamenu" data-content-type="row" data-appearance="full-width"><div class="row-full-width-inner" data-element="inner"><div data-content-type="text" data-appearance="default" data-element="main"><ul><li  class="level0 nav-1 category-item first level-top parent" role="presentation"><a href="https://nsor.com/interior.html"  class="level-top" role="menuitem"><span>Interior</span></a><ul class="level0 submenu"><li  class="level1 nav-1-1 category-item first" role="presentation"><a href="https://nsor.com/interior/floor-mats.html" role="menuitem"><span>Floor Mats &amp; Liners</span></a></li><li  class="level1 nav-1-2 category-item last" role="presentation"><a href="https://nsor.com/interior/seat-covers.html" role="menuitem"><span>Seat Covers</span></a></li></ul></li><li  class="level0 nav-2 category-item level-top parent" role="presentation"><a href="https://nsor.com/exterior.html"  class="level-top" role="menuitem"><span>Exterior</span></a><ul class="level0 submenu"><li  class="level1 nav-2-1 category-item first" role="presentation"><a href="https://nsor.com/exterior/modular-canopies.html" role="menuitem"><span>Canopies</span></a></li><li  class="level1 nav-2-2 category-item" role="presentation"><a href="https://nsor.com/exterior/tonneau-covers-box-covers-canopies.html" role="menuitem"><span>Tonneau &amp; Bed Covers</span></a></li><li  class="level1 nav-2-3 category-item" role="presentation"><a href="https://nsor.com/exterior/fender-flares.html" role="menuitem"><span>Fender Flares</span></a></li><li  class="level1 nav-2-4 category-item" role="presentation"><a href="https://nsor.com/exterior/deflectors-window-visors-bug-deflectors.html" role="menuitem"><span>Deflectors &amp; Visors</span></a></li><li  class="level1 nav-2-5 category-item" role="presentation"><a href="https://nsor.com/exterior/mud-flaps.html" role="menuitem"><span>Mud Flaps</span></a></li><li  class="level1 nav-2-6 category-item" role="presentation"><a href="https://nsor.com/exterior/headache-racks-rails.html" role="menuitem"><span>Headache Rack &amp; Rails</span></a></li>
175<li  class="level1 nav-2-7 category-item" role="presentation"><a href="https://nsor.com/exterior/racks-headache-racks-carriers.html" role="menuitem"><span>Racks &amp; Carriers</span></a></li><li  class="level1 nav-2-8 category-item" role="presentation"><a href="https://nsor.com/exterior/tool-boxes.html" role="menuitem"><span>Tool Boxes</span></a></li><li  class="level1 nav-2-9 category-item" role="presentation"><a href="https://nsor.com/exterior/rolling-cargo-bed.html" role="menuitem"><span>Cargo Slide &amp; Drawer System</span></a></li><li  class="level1 nav-2-10 category-item" role="presentation"><a href="https://nsor.com/exterior/side-steps-running-boards.html" role="menuitem"><span>Side Steps &amp; Running Boards</span></a></li><li  class="level1 nav-2-11 category-item" role="presentation"><a href="https://nsor.com/exterior/lighting.html" role="menuitem"><span>Lighting</span></a></li><li  class="level1 nav-2-12 category-item last" role="presentation"><a href="https://nsor.com/exterior/replacement-grilles-screen-fronts.html" role="menuitem"><span>Screen Fronts</span></a></li></ul></li><li  class="level0 nav-3 category-item level-top parent" role="presentation"><a href="https://nsor.com/suspension.html"  class="level-top" role="menuitem"><span>Suspension</span></a><ul class="level0 submenu"><li  class="level1 nav-3-1 category-item first" role="presentation"><a href="https://nsor.com/suspension/level-kits.html" role="menuitem"><span>Level Kits</span></a></li><li  class="level1 nav-3-2 category-item" role="presentation"><a href="https://nsor.com/suspension/lift-kits.html" role="menuitem"><span>Lift Kits</span></a></li><li  class="level1 nav-3-3 category-item" role="presentation"><a href="https://nsor.com/suspension/shocks-struts-boots.html" role="menuitem"><span>Shocks Struts &amp; Boots</span></a></li><li  class="level1 nav-3-4 category-item last" role="presentation">
175<a href="https://nsor.com/suspension/suspension-components-parts.html" role="menuitem"><span>Suspension Components &amp; Parts</span></a></li></ul></li><li  class="level0 nav-4 category-item level-top parent" role="presentation"><a href="https://nsor.com/towing.html"  class="level-top" role="menuitem"><span>Towing</span></a><ul class="level0 submenu"><li  class="level1 nav-4-1 category-item first" role="presentation"><a href="https://nsor.com/chrome-accessories/5th-wheel-hitches.html" role="menuitem"><span>5th Wheel &amp; Gooseneck Hitches</span></a></li><li  class="level1 nav-4-2 category-item" role="presentation"><a href="https://nsor.com/chrome-accessories/trailer-hitches.html" role="menuitem"><span>Trailer Hitches</span></a></li><li  class="level1 nav-4-3 category-item" role="presentation"><a href="https://nsor.com/chrome-accessories/ball-mounts-hitch-balls.html" role="menuitem"><span>Ball Mounts &amp; Hitch Balls</span></a></li><li  class="level1 nav-4-4 category-item" role="presentation"><a href="https://nsor.com/chrome-accessories/towing-weight-distribution.html" role="menuitem"><span>Towing Suspension &amp; Air Bags</span></a></li><li  class="level1 nav-4-5 category-item" role="presentation"><a href="https://nsor.com/chrome-accessories/towing-electrical.html" role="menuitem"><span>Towing Electrical</span></a></li><li  class="level1 nav-4-6 category-item last" role="presentation"><a href="https://nsor.com/chrome-accessories/towing-accessories.html" role="menuitem"><span>Towing Accessories</span></a></li></ul></li><li  class="level0 nav-5 category-item last level-top parent" role="presentation"><a href="https://nsor.com/offroad.html"  class="level-top" role="menuitem"><span>Offroad</span></a><ul class="level0 submenu"><li  class="level1 nav-5-1 category-item first" role="presentation"><a href="https://nsor.com/overlanding/tents.html" role="menuitem"><span>Truck &amp; Car Tents</span></a></li><li  class="level1 nav-5-2 category-item" role="presentation"><a href="https://nsor.com/overlanding/winches-recovery.html" role="menuitem"><span>Winch &amp; Accessory Gear</span></a></li><li  class="level1 nav-5-3 category-item" role="presentation"><a href="https://nsor.com/overlanding/ramps.html" role="menuitem"><span>Recovery Equipment</span></a></li><li  class="level1 nav-5-4 category-item" role="presentation"><a href="https://nsor.com/overlanding/fuel-water-containers.html" role="menuitem"><span>Fuel &amp; Water Containers</span></a></li><li  class="level1 nav-5-5 category-item" role="presentation"><a href="https://nsor.com/overlanding/jacks.html" role="menuitem"><span>Trail Jacks &amp; Accessories</span></a></li><li  class="level1 nav-5-6 category-item" role="presentation"><a href="https://nsor.com/overlanding/compressors.html" role="menuitem"><span>Air Compressors</span></a></li><li  class="level1 nav-5-7 category-item last" role="presentation"><a href="https://nsor.com/overlanding/coolers.html" role="menuitem"><span>Coolers &amp; Car Fridges</span></a></li></ul></li> <style>#html-body [data-pb-style=BNAD9P7]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll}</style><div class="header-top-horizontal-megamenu-cms" data-content-type="row" data-appearance="full-bleed" data-enable-parallax="0" data-parallax-speed="0.5" data-background-images="{}" data-background-type="image" data-video-loop="true" data-video-play-only-visible="true" data-video-lazy-load="true" data-video-fallback-src="" data-element="main" data-pb-style="BNAD9P7"><div data-content-type="text" data-appearance="default" data-element="main"><ul>
176<li class="level0 category-item level-top parent"><a class="level-top" tabindex="-1" href="/commercial-fleet">Commercial Fleet</a>
177<ul class="level0 submenu">
178<li class="level1 category-item"><a tabindex="0" title="Canopy Quote" href="/nsor-work-truck">Work Truck</a></li>
179<li class="level1 category-item"><a tabindex="0" title="Tonneau Quote" href="/nsor-van-upfitting">Van Upfitting </a></li>
180</ul>
181</li>
182<li class="level0 category-item level-top parent"><a class="level-top" tabindex="-1" href="/our-services">Install Service</a>
183<ul class="level0 submenu">
184<li class="level1 category-item"><a tabindex="0" title="Lift Kit Installation" href="/our-services/lift-kit-installation-nsor">Lift Kit Installation</a></li>
185<li class="level1 category-item"><a tabindex="0" title="Wheels &amp; Tire Services" href="/our-services/wheels-tires-nsor">Wheels &amp; Tire Services</a></li>
186<li class="level1 category-item"><a tabindex="0" title="Mechanical Services" href="/our-services/mechanical-services">Mechanical Services</a></li>
187<li class="level1 category-item"><a tabindex="0" title="Mechanical Services" href="/our-services/leveling-kit-installation-nsor">Leveling Kit</a></li>
188<li class="level1 category-item"><a tabindex="0" title="Mechanical Services" href="/our-services/truck-cap-installation-nsor">Truck Cap</a></li>
189</ul>
190</li>
191<li class="level0 category-item level-top parent"><a class="level-top">Quotes</a>
192<ul class="level0 submenu">
193<li class="level1 category-item"><a tabindex="0" title="Canopy Quote" href="/nsorform/canopies/quote">Canopy Quote</a></li>
194<li class="level1 category-item"><a tabindex="0" title="Tonneau Quote" href="/nsorform/tonneau/quote">Tonneau Quote</a></li>
195</ul>
196</li>
197<li class="level0 category-item level-top parent"><a class="level-top">Links</a>
198<ul class="level0 submenu">
199<li class="level1 category-item"><a tabindex="0" title="Contact Us" href="/contact">Contact Us</a></li>
200<li class="level1 category-item"><a tabindex="0" title="Install Gallery" href="/portfolio">Install Gallery</a></li>
201<li class="level1 category-item"><a tabindex="0" title="Flyers" href="/catalogs-flyers">Flyers</a></li>
202<li class="level1 category-item"><a tabindex="0" title="Store Locator" href="/store-locator">Store Locator</a></li>
203<li class="level1 category-item"><a tabindex="0" href="/financing">Apply For Financing</a></li>
204<li class="level1 category-item"><a tabindex="-1" href="/store-brandsnsor">Brands Available</a></li>
205</ul>
206</li>
207</ul></div></div> </ul><div class="select-your-vehicle"><div class="open-form">Select Vehicle</div><div class="leading-tight"><div class="form-selected"><span class="fitmentTopSelection">2023 Audi Q5</span></div><div class="open-form">Change</div></div></div></div></div></div><style>
207#html-body [data-pb-style=LNHR6R6]{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-style=U3KDCN8]{text-align:center;border-style:none}#html-body [data-pb-style=NNGQHYW],#html-body [data-pb-style=QMVUIMD]{max-width:100%;height:auto}#html-body [data-pb-style=V4378XF]{display:inline-block}#html-body [data-pb-style=BBW2HL8]{text-align:center}@media only screen and (max-width: 768px) { #html-body [data-pb-style=U3KDCN8]{border-style:none} }</style><div class="header-top-vertical-megamenu" data-content-type="row" data-appearance="full-bleed" data-enable-parallax="0" data-parallax-speed="0.5" data-background-images="{}" data-background-type="image" data-video-loop="true" data-video-play-only-visible="true" data-video-lazy-load="true" data-video-fallback-src="" data-element="main" data-pb-style="LNHR6R6"><div data-content-type="buttons" data-appearance="inline" data-same-width="false" data-element="main"><div class="close-vertical-menu" data-content-type="button-item" data-appearance="default" data-element="main" data-pb-style="V4378XF"><a class="pagebuilder-button-primary" href="#" target="" data-link-type="default" data-element="link" data-pb-style="BBW2HL8"><span data-element="link_text">Close</span></a></div></div><figure class="logo-vertical-menu" data-content-type="image" data-appearance="full-width" data-element="main" data-pb-style="U3KDCN8">  <picture>  <source type="image/webp" srcset="https://nsor.com/media/wysiwyg/NSOR_Black_Full_Logo_2017.png"> <source type="image/png" srcset="https://nsor.com/media/wysiwyg/NSOR_Black_Full_Logo_2017.png"><img class="pagebuilder-mobile-hidden" src="https://nsor.com/media/wysiwyg/NSOR_Black_Full_Logo_2017.png" alt="" title="" data-element="desktop_image" data-pb-style="NNGQHYW" loading="lazy" ></picture>  <picture>  <source type="image/webp" srcset="https://nsor.com/media/wysiwyg/NSOR_Black_Full_Logo_2017.png"> <source type="image/png" srcset="https://nsor.com/media/wysiwyg/NSOR_Black_Full_Logo_2017.png"><img class="pagebuilder-mobile-only" src="https://nsor.com/media/wysiwyg/NSOR_Black_Full_Logo_2017.png" alt="" title="" data-element="mobile_image" data-pb-style="QMVUIMD" loading="lazy" ></picture></figure><div class="vertical-social-menu" data-content-type="text" data-appearance="default" data-element="main"><ul>
208<li><a tabindex="0" href="/customer/account">Login</a></li>
209<li><a tabindex="0" href="tel:18006242468">1-800-624-2468</a></li>
210</ul></div></div>  <div class="breadcrumbs"><ul class="items"> <li class="item home"> <a href="https://nsor.com/" title="Home">Home</a> </li>  <li class="item blog"> <a href="https://nsor.com/blog.html" title="Blog">Blog</a> </li> </ul></div><main id="maincontent" class="page-main">
210 <a id="contentarea" tabindex="-1"></a>  <div class="page-title-wrapper"><h1 class="page-title"  ><span class="base" data-ui-id="page-title-wrapper" >Blog</span></h1></div><div class="page messages"> <div data-placeholder="messages"></div> <div data-bind="scope: 'messages'"><!-- ko if: cookieMessagesObservable() && cookieMessagesObservable().length > 0 --><div aria-atomic="true" role="alert" class="messages" data-bind="foreach: { data: cookieMessagesObservable(), as: 'message' }"><div data-bind="attr: { class: 'message-' + message.type + ' ' + message.type + ' message', 'data-ui-id': 'message-' + message.type }"><div data-bind="html: $parent.prepareMessageForHtml(message.text)"></div></div></div><!-- /ko --><div aria-atomic="true" role="alert" class="messages" data-bind="foreach: { data: messages().messages, as: 'message' }, afterRender: purgeMessages"><div data-bind="attr: { class: 'message-' + message.type + ' ' + message.type + ' message', 'data-ui-id': 'message-' + message.type }"><div data-bind="html: $parent.prepareMessageForHtml(message.text)"></div></div></div></div></div><div class="columns"><div class="column main"> <div class="amblog-container-list">   <div class="amblog-post-container" data-amblog-js="impression" data-post-id="19">  <a href="https://nsor.com/blog/choose-roof-rack-camping.html" aria-label="How&#x20;to&#x20;Choose&#x20;a&#x20;Roof&#x20;Rack&#x20;for&#x20;Camping,&#x20;Work&#x20;&amp;&#x20;Gear" title="How&#x20;to&#x20;Choose&#x20;a&#x20;Roof&#x20;Rack&#x20;for&#x20;Camping,&#x20;Work&#x20;&amp;&#x20;Gear" class="post-image">  <picture>  <source type="image/jpg" srcset="https://nsor.com/media/amasty/blog/cache/J/e/400/270/Jeep-JL-4Door-Multi-Light_1.jpg"><img src="https://nsor.com/media/amasty/blog/cache/J/e/400/270/Jeep-JL-4Door-Multi-Light_1.jpg" alt="Roof&#x20;Rack" width="400" height="270"  loading="lazy" /></picture></a>  <div class="amblog-content"><div class="amblog-dates"><div class="amblog-date"  data-mage-init='{"amBlogDates": "2026\u002D09\u002D01\u002021\u003A28\u003A00"}' >Loading...</div>  <span class="views amblog-views" data-amblog-js="views-counter" data-post-id="19">5 view(s)</span>  </div><h2 class="amblog-post-title"><a href="https://nsor.com/blog/choose-roof-rack-camping.html" class="post-title" title=" How&#x20;to&#x20;Choose&#x20;a&#x20;Roof&#x20;Rack&#x20;for&#x20;Camping,&#x20;Work&#x20;&amp;&#x20;Gear" aria-label=" How&#x20;to&#x20;Choose&#x20;a&#x20;Roof&#x20;Rack&#x20;for&#x20;Camping,&#x20;Work&#x20;&amp;&#x20;Gear">How to Choose a Roof Rack for Camping, Work &amp; Gear</a></h2><div class="tags">   <a class="amblog-tag" href="https://nsor.com/blog/tag/roof-rack.html" title="roof rack">roof rack</a>  </div><div class="amblog-shot"><p>Choosing the right roof rack comes down to what you carry, how often you use it, and how well the system fits your vehicle. This guide compares crossbar, platform and basket-style racks, including Prinsu, Thule and GOBI options, while covering fitment, load limits, accessories and everyday driving considerations for BC truck, SUV and 4x4 owners.</p></div></div><div class="amblog-footer"><div class="amblog-features">   <div class="amblog-wrap"> <figure class="amblog-author-avatar -small">  <picture>  <source type="image/jpg" srcset="https://nsor.com/media/amasty/blog/cache/N/S/25/25/NSOR_Icon_-_Green.jpg"><img width="25" height="25" src="https://nsor.com/media/amasty/blog/cache/N/S/25/25/NSOR_Icon_-_Green.jpg" alt="North&#x20;Shore&#x20;Offroad"  loading="lazy" /></picture></figure> <div class="amblog-post-item -author">by  <a rel="author" class="amblog-ref" href="https://nsor.com/blog/author/author-nsor.html" title="North&#x20;Shore&#x20;Offroad" aria-label="North&#x20;Shore&#x20;Offroad">North Shore Offroad</a></div></div>    </div><a class="amblog-read" href="https://nsor.com/blog/choose-roof-rack-camping.html" aria-label="Read&#x20;More&#x3A;&#x20;How&#x20;to&#x20;Choose&#x20;a&#x20;Roof&#x20;Rack&#x20;for&#x20;Camping,&#x20;Work&#x20;&amp;&#x20;Gear" title="Read&#x20;More">Read More</a></div></div> <div class="amblog-post-container" data-amblog-js="impression" data-post-id="17">  <a href="https://nsor.com/blog/what-to-look-for-in-a-winch-a-practical-buying-guide.html" aria-label="What&#x20;to&#x20;Look&#x20;for&#x20;in&#x20;a&#x20;Winch&#x3A;&#x20;A&#x20;Practical&#x20;Buying&#x20;Guide" title="What&#x20;to&#x20;Look&#x20;for&#x20;in&#x20;a&#x20;Winch&#x3A;&#x20;A&#x20;Practical&#x20;Buying&#x20;Guide" class="post-image">  <picture>  <source type="image/jpg" srcset="https://nsor.com/media/amasty/blog/cache/W/a/400/270/Warn_Winch_3.jpg"><img src="https://nsor.com/media/amasty/blog/cache/W/a/400/270/Warn_Winch_3.jpg" alt="Winch&#x20;Buying&#x20;Guide" width="400" height="270"  loading="lazy" /></picture></a>  <div class="amblog-content"><div class="amblog-dates"><div class="amblog-date"  data-mage-init='{"amBlogDates": "2026\u002D07\u002D14\u002020\u003A35\u003A00"}' >Loading...</div>  <span class="views amblog-views" data-amblog-js="views-counter" data-post-id="17">19 view(s)</span>  </div><h2 class="amblog-post-title"><a href="https://nsor.com/blog/what-to-look-for-in-a-winch-a-practical-buying-guide.html" class="post-title" title=" What&#x20;to&#x20;Look&#x20;for&#x20;in&#x20;a&#x20;Winch&#x3A;&#x20;A&#x20;Practical&#x20;Buying&#x20;Guide" aria-label=" What&#x20;to&#x20;Look&#x20;for&#x20;in&#x20;a&#x20;Winch&#x3A;&#x20;A&#x20;Practical&#x20;Buying&#x20;Guide">What to Look for in a Winch: A Practical Buying Guide</a></h2><div class="tags">   <a class="amblog-tag" href="https://nsor.com/blog/tag/winch.html" title="winch">winch</a>  </div><div class="amblog-shot"><p>Choosing the right winch starts with proper sizing. Use a winch rated for at least 1.5 times your vehicle’s GVWR, then compare synthetic rope and steel cable based on weight, handling, abrasion resistance, and maintenance. North Shore Offroad offers WARN and RFX Truck Accessories winches, along with fitment help and professional installation for BC truck and Jeep owners.</p></div></div><div class="amblog-footer"><div class="amblog-features">   <div class="amblog-wrap"> <figure class="amblog-author-avatar -small">  <picture>  <source type="image/jpg" srcset="https://nsor.com/media/amasty/blog/cache/N/S/25/25/NSOR_Icon_-_Green.jpg"><img width="25" height="25" src="https://nsor.com/media/amasty/blog/cache/N/S/25/25/NSOR_Icon_-_Green.jpg" alt="North&#x20;Shore&#x20;Offroad"  loading="lazy" /></picture></figure> <div class="amblog-post-item -author">by  <a rel="author" class="amblog-ref" href="https://nsor.com/blog/author/author-nsor.html" title="North&#x20;Shore&#x20;Offroad" aria-label="North&#x20;Shore&#x20;Offroad">North Shore Offroad</a></div></div>   <div class="amblog-wrap"><span class="amblog-posted-in">Posted in: </span>   <a class="amblog-ref" href="https://nsor.com/blog/category/offroad-nsor.html" title="Off-Road Recovery Gear">Off-Road Recovery Gear</a> </div>  </div><a class="amblog-read" href="https://nsor.com/blog/what-to-look-for-in-a-winch-a-practical-buying-guide.html" aria-label="Read&#x20;More&#x3A;&#x20;What&#x20;to&#x20;Look&#x20;for&#x20;in&#x20;a&#x20;Winch&#x3A;&#x20;A&#x20;Practical&#x20;Buying&#x20;Guide" title="Read&#x20;More">Read More</a></div></div> <div class="amblog-post-container" data-amblog-js="impression" data-post-id="14">  <a href="https://nsor.com/blog/is-a-modular-truck-cap-worth-it.html" aria-label="Is&#x20;a&#x20;Modular&#x20;Truck&#x20;Cap&#x20;Worth&#x20;It&#x3F;" title="Is&#x20;a&#x20;Modular&#x20;Truck&#x20;Cap&#x20;Worth&#x20;It&#x3F;" class="post-image">  <picture>  <source type="image/png" srcset="https://nsor.com/media/amasty/blog/cache/C/a/400/270/Cap_Lifestyle_4_copy_1.png"><img src="https://nsor.com/media/amasty/blog/cache/C/a/400/270/Cap_Lifestyle_4_copy_1.png" alt="Modular&#x20;Truck&#x20;Cap" width="400" height="270"  loading="lazy" /></picture></a>  <div class="amblog-content"><div class="amblog-dates"><div class="amblog-date"  data-mage-init='{"amBlogDates": "2026\u002D06\u002D05\u002018\u003A38\u003A00"}' >Loading...</div>  <span class="views amblog-views" data-amblog-js="views-counter" data-post-id="14">16 view(s)</span>  </div><h2 class="amblog-post-title"><a href="https://nsor.com/blog/is-a-modular-truck-cap-worth-it.html" class="post-title" title=" Is&#x20;a&#x20;Modular&#x20;Truck&#x20;Cap&#x20;Worth&#x20;It&#x3F;" aria-label=" Is&#x20;a&#x20;Modular&#x20;Truck&#x20;Cap&#x20;Worth&#x20;It&#x3F;">Is a Modular Truck Cap Worth It?</a></h2><div class="tags">   <a class="amblog-tag" href="https://nsor.com/blog/tag/truck-canopies.html" title="truck canopies">truck canopies</a>  <a class="amblog-tag" href="https://nsor.com/blog/tag/modular-truck-cap.html" title="modular truck cap">modular truck cap</a>  </div><div class="amblog-shot"><div class="qMYqUG_convSearchResultHighlightRoot">
211<div class="" data-turn-id-container="request-WEB:0e9ec69a-4007-4515-b7b4-360b4d95d87d-17" data-is-intersecting="true">
212<section class="text-token-text-primary w-full focus:outline-none has-data-writing-block:pointer-events-none [&amp;
212:has([data-writing-block])&gt;*]:pointer-events-auto R6Vx5W_threadScrollVars scroll-mb-[calc(var(--scroll-root-safe-area-inset-bottom,0px)+var(--thread-response-height))] scroll-mt-[calc(var(--header-height)+min(200px,max(70px,20svh)))]" dir="auto" data-turn-id="request-WEB:0e9ec69a-4007-4515-b7b4-360b4d95d87d-17" data-turn-id-container="request-WEB:0e9ec69a-4007-4515-b7b4-360b4d95d87d-17" data-testid="conversation-turn-8" data-scroll-anchor="false" data-turn="assistant">
213<div class="text-base my-auto mx-auto pb-10 [--thread-content-margin:var(--thread-content-margin-xs,calc(var(--spacing)*4))] @w-sm/main:[--thread-content-margin:var(--thread-content-margin-sm,calc(var(--spacing)*6))] @w-lg/main:[--thread-content-margin:var(--thread-content-margin-lg,calc(var(--spacing)*16))] px-(--thread-content-margin)">
214<div class="[--thread-content-max-width:40rem] @w-lg/main:[--thread-content-max-width:48rem] mx-auto max-w-(--thread-content-max-width) flex-1 group/turn-messages focus-visible:outline-hidden relative flex w-full min-w-0 flex-col agent-turn" data-conversation-screenshot-content="">
215<div class="flex max-w-full flex-col gap-4 grow">
216<div class="min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal outline-none keyboard-focused:focus-ring [.text-message+&amp;]:mt-1" dir="auto" tabindex="0" data-message-author-role="assistant" data-message-id="5cde796f-591a-4b35-b255-22bc2c0d69a7" data-message-model-slug="gpt-5-5-thinking" data-turn-start-message="true">
217<div class="flex w-full flex-col gap-1 empty:hidden">
218<div class="markdown prose dark:prose-invert wrap-break-word w-full light markdown-new-styling">
219<p data-start="0" data-end="335" data-is-last-node="" data-is-only-node="">A modular truck cap can be a smart upgrade if your truck is used for more than basic cargo coverage. This guide breaks down when a modular cap is worth it for BC truck owners, including camping, overlanding, trail gear, work-and-weekend use, weather protection, side access, and how it compares to a fibreglass canopy or tonneau cover.</p>
220</div>
221</div>
222</div>
223</div>
224<div class="mt-3 w-full empty:hidden">&nbsp;</div>
225</div>
226</div>
227</section>
228</div>
229</div></div></div><div class="amblog-footer"><div class="amblog-features">   <div class="amblog-wrap"> <figure class="amblog-author-avatar -small">  <picture>  <source type="image/jpg" srcset="https://nsor.com/media/amasty/blog/cache/N/S/25/25/NSOR_Icon_-_Green.jpg"><img width="25" height="25" src="https://nsor.com/media/amasty/blog/cache/N/S/25/25/NSOR_Icon_-_Green.jpg" alt="North&#x20;Shore&#x20;Offroad"  loading="lazy" /></picture></figure> <div class="amblog-post-item -author">by  <a rel="author" class="amblog-ref" href="https://nsor.com/blog/author/author-nsor.html" title="North&#x20;Shore&#x20;Offroad" aria-label="North&#x20;Shore&#x20;Offroad">North Shore Offroad</a></div></div>   <div class="amblog-wrap"><span class="amblog-posted-in">Posted in: </span>   <a class="amblog-ref" href="https://nsor.com/blog/category/cover-nsor.html" title="Tonneau Covers &amp; Truck Caps">Tonneau Covers &amp; Truck Caps</a> </div>  </div><a class="amblog-read" href="https://nsor.com/blog/is-a-modular-truck-cap-worth-it.html" aria-label="Read&#x20;More&#x3A;&#x20;Is&#x20;a&#x20;Modular&#x20;Truck&#x20;Cap&#x20;Worth&#x20;It&#x3F;" title="Read&#x20;More">Read More</a></div></div> <div class="amblog-post-container" data-amblog-js="impression" data-post-id="12">  <a href="https://nsor.com/blog/5-tire-questions-to-ask-before-you-buy.html" aria-label="5&#x20;Questions&#x20;to&#x20;Ask&#x20;Your&#x20;Dealer&#x20;Before&#x20;Buying&#x20;Tire" title="5&#x20;Questions&#x20;to&#x20;Ask&#x20;Your&#x20;Dealer&#x20;Before&#x20;Buying&#x20;Tire" class="post-image">  <picture>  <source type="image/jpg" srcset="https://nsor.com/media/amasty/blog/cache/T/i/400/270/Tires_1.jpg"><img src="https://nsor.com/media/amasty/blog/cache/T/i/400/270/Tires_1.jpg" alt="5&#x20;Questions&#x20;to&#x20;Ask&#x20;Your&#x20;Dealer&#x20;Before&#x20;Buying&#x20;Tire" width="400" height="270"  loading="lazy" /></picture></a>  <div class="amblog-content"><div class="amblog-dates"><div class="amblog-date"  data-mage-init='{"amBlogDates": "2026\u002D05\u002D01\u002019\u003A54\u003A00"}' >Loading...</div>  <span class="views amblog-views" data-amblog-js="views-counter" data-post-id="12">15 view(s)</span>  </div><h2 class="amblog-post-title"><a href="https://nsor.com/blog/5-tire-questions-to-ask-before-you-buy.html" class="post-title" title=" 5&#x20;Questions&#x20;to&#x20;Ask&#x20;Your&#x20;Dealer&#x20;Before&#x20;Buying&#x20;Tire" aria-label=" 5&#x20;Questions&#x20;to&#x20;Ask&#x20;Your&#x20;Dealer&#x20;Before&#x20;Buying&#x20;Tire">5 Questions to Ask Your Dealer Before Buying Tire</a></h2><div class="tags">   <a class="amblog-tag" href="https://nsor.com/blog/tag/tires.html" title="tires">tires</a>  </div><div class="amblog-shot"><section class="text-token-text-primary w-full focus:outline-none [--shadow-height:45px] has-data-writing-block:pointer-events-none has-data-writing-block:-mt-(--shadow-height) has-data-writing-block:pt-(--shadow-height) [&amp;
229:has([data-writing-block])&gt;*]:pointer-events-auto [content-visibility:auto] supports-[content-visibility:auto]:[contain-intrinsic-size:auto_100lvh] R6Vx5W_threadScrollVars scroll-mb-[calc(var(--scroll-root-safe-area-inset-bottom,0px)+var(--thread-response-height))] scroll-mt-[calc(var(--header-height)+min(200px,max(70px,20svh)))]" dir="auto" data-turn-id="request-WEB:961af408-02d8-4995-8c45-46502e3e9c8a-25" data-testid="conversation-turn-10" data-scroll-anchor="false" data-turn="assistant">
230<div class="text-base my-auto mx-auto pb-10 [--thread-content-margin:var(--thread-content-margin-xs,calc(var(--spacing)*4))] @w-sm/main:[--thread-content-margin:var(--thread-content-margin-sm,calc(var(--spacing)*6))] @w-lg/main:[--thread-content-margin:var(--thread-content-margin-lg,calc(var(--spacing)*16))] px-(--thread-content-margin)">
231<div class="[--thread-content-max-width:40rem] @w-lg/main:[--thread-content-max-width:48rem] mx-auto max-w-(--thread-content-max-width) flex-1 group/turn-messages focus-visible:outline-hidden relative flex w-full min-w-0 flex-col agent-turn">
232<div class="flex max-w-full flex-col gap-4 grow">
233<div class="min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal outline-none keyboard-focused:focus-ring [.text-message+&amp;]:mt-1" dir="auto" tabindex="0" data-message-author-role="assistant" data-message-id="59d0395b-7231-466b-903f-68b31c24f88b" data-turn-start-message="true" data-message-model-slug="gpt-5-5-thinking">
234<div class="flex w-full flex-col gap-1 empty:hidden">
235<div class="markdown prose dark:prose-invert w-full wrap-break-word light markdown-new-styling">
236<p data-start="0" data-end="246" data-is-last-node="" data-is-only-node="">Before buying new tire for your truck or Jeep, it helps to know what questions to ask. This quick guide covers five smart things to discuss with your dealer, from fitment and driving habits to price tiers, warranty coverage, and brand reputation.</p>
237</div>
238</div>
239</div>
240</div>
241<div class="mt-3 w-full empty:hidden">&nbsp;</div>
242</div>
243</div>
244</section></div></div><div class="amblog-footer"><div class="amblog-features">   <div class="amblog-wrap"> <figure class="amblog-author-avatar -small">  <picture>  <source type="image/jpg" srcset="https://nsor.com/media/amasty/blog/cache/N/S/25/25/NSOR_Icon_-_Green.jpg"><img width="25" height="25" src="https://nsor.com/media/amasty/blog/cache/N/S/25/25/NSOR_Icon_-_Green.jpg" alt="North&#x20;Shore&#x20;Offroad"  loading="lazy" /></picture></figure> <div class="amblog-post-item -author">by  <a rel="author" class="amblog-ref" href="https://nsor.com/blog/author/author-nsor.html" title="North&#x20;Shore&#x20;Offroad" aria-label="North&#x20;Shore&#x20;Offroad">North Shore Offroad</a></div></div>   <div class="amblog-wrap"><span class="amblog-posted-in">Posted in: </span>   <a class="amblog-ref" href="https://nsor.com/blog/category/tires-nsor.html" title="Wheels &amp; Tires">Wheels &amp; Tires</a> </div>  </div><a class="amblog-read" href="https://nsor.com/blog/5-tire-questions-to-ask-before-you-buy.html" aria-label="Read&#x20;More&#x3A;&#x20;5&#x20;Questions&#x20;to&#x20;Ask&#x20;Your&#x20;Dealer&#x20;Before&#x20;Buying&#x20;Tire" title="Read&#x20;More">Read More</a></div></div> <div class="amblog-post-container" data-amblog-js="impression" data-post-id="8">  <a href="https://nsor.com/blog/lift-kit-vs-leveling-kit-bc.html" aria-label="Lift&#x20;Kit&#x20;vs&#x20;Leveling&#x20;Kit&#x20;for&#x20;Off-Road&#x20;and&#x20;Daily&#x20;Driving&#x20;in&#x20;British&#x20;Columbia" title="Lift&#x20;Kit&#x20;vs&#x20;Leveling&#x20;Kit&#x20;for&#x20;Off-Road&#x20;and&#x20;Daily&#x20;Driving&#x20;in&#x20;British&#x20;Columbia" class="post-image">  <picture>  <source type="image/jpg" srcset="https://nsor.com/media/amasty/blog/cache/l/i/400/270/lift_1.jpg"><img src="https://nsor.com/media/amasty/blog/cache/l/i/400/270/lift_1.jpg" alt="Lift&#x20;Kit&#x20;vs&#x20;Levelking&#x20;Kit" width="400" height="270"  loading="lazy" /></picture></a>  <div class="amblog-content"><div class="amblog-dates"><div class="amblog-date"  data-mage-init='{"amBlogDates": "2026\u002D04\u002D06\u002019\u003A25\u003A00"}' >Loading...</div>  <span class="views amblog-views" data-amblog-js="views-counter" data-post-id="8">18 view(s)</span>  </div><h2 class="amblog-post-title"><a href="https://nsor.com/blog/lift-kit-vs-leveling-kit-bc.html" class="post-title" title=" Lift&#x20;Kit&#x20;vs&#x20;Leveling&#x20;Kit&#x20;for&#x20;Off-Road&#x20;and&#x20;Daily&#x20;Driving&#x20;in&#x20;British&#x20;Columbia" aria-label=" Lift&#x20;Kit&#x20;vs&#x20;Leveling&#x20;Kit&#x20;for&#x20;Off-Road&#x20;and&#x20;Daily&#x20;Driving&#x20;in&#x20;British&#x20;Columbia">Lift Kit vs Leveling Kit for Off-Road and Daily Driving in British Columbia</a></h2><div class="tags">   <a class="amblog-tag" href="https://nsor.com/blog/tag/lift-kit.html" title="lift kit">lift kit</a>  <a class="amblog-tag" href="https://nsor.com/blog/tag/leveling-kit.html" title="leveling kit">leveling kit</a>  <a class="amblog-tag" href="https://nsor.com/blog/tag/suspension-upgrade.html" title="suspension upgrade">suspension upgrade</a>  <a class="amblog-tag" href="https://nsor.com/blog/tag/bds-suspension.html" title="bds suspension">bds suspension</a>  <a class="amblog-tag" href="https://nsor.com/blog/tag/zone-offroad.html" title="zone offroad">zone offroad</a>  </div><div class="amblog-shot"><p>Compare lift kits and leveling kits to see which suspension upgrade makes more sense for your truck in BC. This guide breaks down the differences in clearance, stance, off-road capability, daily driving, and tire fitment so North Vancouver, Surrey, and Lower Mainland drivers can choose the right setup.</p></div></div><div class="amblog-footer"><div class="amblog-features">   <div class="amblog-wrap"> <figure class="amblog-author-avatar -small">  <picture>  <source type="image/jpg" srcset="https://nsor.com/media/amasty/blog/cache/N/S/25/25/NSOR_Icon_-_Green.jpg"><img width="25" height="25" src="https://nsor.com/media/amasty/blog/cache/N/S/25/25/NSOR_Icon_-_Green.jpg" alt="North&#x20;Shore&#x20;Offroad"  loading="lazy" /></picture></figure> <div class="amblog-post-item -author">by  <a rel="author" class="amblog-ref" href="https://nsor.com/blog/author/author-nsor.html" title="North&#x20;Shore&#x20;Offroad" aria-label="North&#x20;Shore&#x20;Offroad">North Shore Offroad</a></div></div>   <div class="amblog-wrap"><span class="amblog-posted-in">Posted in: </span>   <a class="amblog-ref" href="https://nsor.com/blog/category/suspension-nsor.html" title="Lift Kits, Leveling Kits &amp; Suspension">Lift Kits, Leveling Kits &amp; Suspension</a> </div>  </div><a class="amblog-read" href="https://nsor.com/blog/lift-kit-vs-leveling-kit-bc.html" aria-label="Read&#x20;More&#x3A;&#x20;Lift&#x20;Kit&#x20;vs&#x20;Leveling&#x20;Kit&#x20;for&#x20;Off-Road&#x20;and&#x20;Daily&#x20;Driving&#x20;in&#x20;British&#x20;Columbia" title="Read&#x20;More">Read More</a></div></div> <div class="amblog-post-container" data-amblog-js="impression" data-post-id="5">  <a href="https://nsor.com/blog/essential-recovery-gear-for-off-road-vehicles-in-bc.html" aria-label="What&#x20;Recovery&#x20;Gear&#x20;Should&#x20;Every&#x20;Off-Road&#x20;Vehicle&#x20;Carry&#x3F;" title="What&#x20;Recovery&#x20;Gear&#x20;Should&#x20;Every&#x20;Off-Road&#x20;Vehicle&#x20;Carry&#x3F;" class="post-image">  <picture>  <source type="image/jpg" srcset="https://nsor.com/media/amasty/blog/cache/O/f/400/270/Offroad_1.jpg"><img src="https://nsor.com/media/amasty/blog/cache/O/f/400/270/Offroad_1.jpg" alt="Offroad&#x20;Recovery&#x20;Gear" width="400" height="270"  loading="lazy" /></picture></a>  <div class="amblog-content"><div class="amblog-dates"><div class="amblog-date"  data-mage-init='{"amBlogDates": "2026\u002D03\u002D27\u002019\u003A13\u003A00"}' >Loading...</div>  <span class="views amblog-views" data-amblog-js="views-counter" data-post-id="5">60 view(s)</span>  </div><h2 class="amblog-post-title"><a href="https://nsor.com/blog/essential-recovery-gear-for-off-road-vehicles-in-bc.html" class="post-title" title=" What&#x20;Recovery&#x20;Gear&#x20;Should&#x20;Every&#x20;Off-Road&#x20;Vehicle&#x20;Carry&#x3F;" aria-label=" What&#x20;Recovery&#x20;Gear&#x20;Should&#x20;Every&#x20;Off-Road&#x20;Vehicle&#x20;Carry&#x3F;">
244What Recovery Gear Should Every Off-Road Vehicle Carry?</a></h2><div class="tags">   <a class="amblog-tag" href="https://nsor.com/blog/tag/recovery-gear.html" title="Recovery Gear">Recovery Gear</a>  <a class="amblog-tag" href="https://nsor.com/blog/tag/hi-lift-jack.html" title="Hi-Lift Jack">Hi-Lift Jack</a>  <a class="amblog-tag" href="https://nsor.com/blog/tag/rotopax.html" title="RotoPax">RotoPax</a>  <a class="amblog-tag" href="https://nsor.com/blog/tag/rfx-truck-accessories.html" title="RFX Truck Accessories">RFX Truck Accessories</a>  <a class="amblog-tag" href="https://nsor.com/blog/tag/winches.html" title="Winches">Winches</a>  <a class="amblog-tag" href="https://nsor.com/blog/tag/air-compressors.html" title="Air Compressors">Air Compressors</a>  <a class="amblog-tag" href="https://nsor.com/blog/tag/tire-deflators.html" title="Tire Deflators">Tire Deflators</a>  <a class="amblog-tag" href="https://nsor.com/blog/tag/traction-boards.html" title="Traction Boards">Traction Boards</a>  </div><div class="amblog-shot"></div></div><div class="amblog-footer"><div class="amblog-features">   <div class="amblog-wrap"> <figure class="amblog-author-avatar -small">  <picture>  <source type="image/jpg" srcset="https://nsor.com/media/amasty/blog/cache/N/S/25/25/NSOR_Icon_-_Green.jpg"><img width="25" height="25" src="https://nsor.com/media/amasty/blog/cache/N/S/25/25/NSOR_Icon_-_Green.jpg" alt="North&#x20;Shore&#x20;Offroad"  loading="lazy" /></picture></figure> <div class="amblog-post-item -author">by  <a rel="author" class="amblog-ref" href="https://nsor.com/blog/author/author-nsor.html" title="North&#x20;Shore&#x20;Offroad" aria-label="North&#x20;Shore&#x20;Offroad">North Shore Offroad</a></div></div>   <div class="amblog-wrap"><span class="amblog-posted-in">Posted in: </span>   <a class="amblog-ref" href="https://nsor.com/blog/category/offroad-nsor.html" title="Off-Road Recovery Gear">Off-Road Recovery Gear</a> </div>  </div><a class="amblog-read" href="https://nsor.com/blog/essential-recovery-gear-for-off-road-vehicles-in-bc.html" aria-label="Read&#x20;More&#x3A;&#x20;What&#x20;Recovery&#x20;Gear&#x20;Should&#x20;Every&#x20;Off-Road&#x20;Vehicle&#x20;Carry&#x3F;" title="Read&#x20;More">Read More</a></div></div>     </div><div class="amblog-overlay" data-amblog-js="overlay"></div>  <input name="form_key" type="hidden" value="jj7aXHdbkSdJ897t" /> <div id="authenticationPopup" data-bind="scope:'authenticationPopup', style: {display: 'none'}">  <!-- ko template: getTemplate() --><!-- /ko --> </div>      <div id="monkey_campaign" style="display:none;" data-mage-init='{"campaigncatcher":{"checkCampaignUrl": "https://nsor.com/mailchimp/campaign/check/"}}'></div> <section class="amsearch-overlay-block" data-bind=" scope: 'index = amsearch_overlay_section', mageInit: { 'Magento_Ui/js/core/app': { components: { 'amsearch_overlay_section': { component: 'Amasty_Xsearch/js/components/overlay' } } } }"><div class="amsearch-overlay" data-bind=" event: { click: hide }, afterRender: initNode"></div></section> </div><div class="sidebar sidebar-additional">   <div data-amblog-js="element-block" class="desktop-block amblog-element-block" data-set="sidebar-category"><div data-amblog-js="accordion" class="amblog-widget-container -categories"><div class="amblog-sidebar-heading-container"><h3 class="amblog-title" id="amblog-sidebar-categories-title" data-amblog-js="heading">Categories</h3></div><div class="amblog-list" data-amblog-js="content"><ul class="amblog-categories -level1">    <li class="amblog-category  amblog-category-2"><a class="amblog-link" title="Lift&#x20;Kits,&#x20;Leveling&#x20;Kits&#x20;&amp;&#x20;Suspension" href="https://nsor.com/blog/category/suspension-nsor.html">Lift Kits, Leveling Kits &amp; Suspension <span class="amblog-category-count">(1)</span></a> </li>   <li class="amblog-category  amblog-category-3"><a class="amblog-link" title="Tonneau&#x20;Covers&#x20;&amp;&#x20;Truck&#x20;Caps" href="https://nsor.com/blog/category/cover-nsor.html">Tonneau Covers &amp; Truck Caps <span class="amblog-category-count">(1)</span></a> </li>   <li class="amblog-category  amblog-category-4"><a class="amblog-link" title="Off-Road&#x20;Recovery&#x20;Gear" href="https://nsor.com/blog/category/offroad-nsor.html">Off-Road Recovery Gear <span class="amblog-category-count">(2)</span></a> </li>   <li class="amblog-category  amblog-category-6"><a class="amblog-link" title="Wheels&#x20;&amp;&#x20;Tires" href="https://nsor.com/blog/category/tires-nsor.html">Wheels &amp; Tires <span class="amblog-category-count">(1)</span></a> </li>  </ul></div></div></div>    <div data-amblog-js="element-block" class="desktop-block amblog-element-block" data-set="sidebar-search"><div class="amblog-search" data-amblog-js="accordion"><div class="amblog-sidebar-heading-container"><h3 class="amblog-title" id="amblog-sidebar-search-title" data-amblog-js="heading">Search the blog</h3></div><div class="amblog-item -search amblog-form-search" data-amblog-js="content"><form class="amblog-form-container" action="https://nsor.com/blog/search.html" data-amblog-js="search" method="get"><div class="input-box amblog-field"><input type="text" data-mage-init='{"amBlogSearch": { "minCharacterLength":"3", "liveSearchUrl":"https://nsor.com/amblog/ajax/liveSearch/" }}' autocomplete="off" placeholder="Find some..." class="input-text required-entry amblog-input" id="search-blog" name="query" role="textbox" aria-label="Search" value="" maxlength="100" /><ul class="amblog-search-suggest" data-amblog-js="suggest-list"></ul></div><div class="amblog-loader -search"></div><button class="amblog-btn" role="button" title="Search" aria-label="Search" type="submit"></button></form></div></div></div>    <div data-amblog-js="element-block" class="desktop-block amblog-element-block" data-set="sidebar-tags"><div class="amblog-tags amblog-widget-container -tags" data-amblog-js="accordion"><div class="amblog-sidebar-heading-container"><h3 class="amblog-title" id="amblog-sidebar-tags-title" data-amblog-js="heading">Tags</h3></div><div class="amblog-list -tags" data-amblog-js="content"><div id="amblog_tags95" class="tag-list"><div class="amblog-item">  <a href="https://nsor.com/blog/tag/roof-rack.html" class="tag amblog-tag " data-weight="10">roof rack</a>   <a href="https://nsor.com/blog/tag/winch.html" class="tag amblog-tag " data-weight="10">winch</a>   <a href="https://nsor.com/blog/tag/modular-truck-cap.html" class="tag amblog-tag " data-weight="10">modular truck cap</a>   <a href="https://nsor.com/blog/tag/tires.html" class="tag amblog-tag " data-weight="10">tires</a>   <a href="https://nsor.com/blog/tag/zone-offroad.html" class="tag amblog-tag " data-weight="10">zone offroad</a>   <a href="https://nsor.com/blog/tag/bds-suspension.html" class="tag amblog-tag " data-weight="10">bds suspension</a>   <a href="https://nsor.com/blog/tag/suspension-upgrade.html" class="tag amblog-tag " data-weight="10">suspension upgrade</a>   <a href="https://nsor.com/blog/tag/leveling-kit.html" class="tag amblog-tag " data-weight="10">leveling kit</a>   <a href="https://nsor.com/blog/tag/lift-kit.html" class="tag amblog-tag " data-weight="10">lift kit</a>   <a href="https://nsor.com/blog/tag/traction-boards.html" class="tag amblog-tag " data-weight="10">Traction Boards</a> </div></div></div></div></div>    <div data-amblog-js="element-block" class="desktop-block amblog-element-block" data-set="sidebar-recentcomments"><div class="amblog-empty">Comments were not found</div></div>    <div data-amblog-js="element-block" class="desktop-block amblog-element-block" data-set="sidebar-recentpost"><div data-amblog-js="accordion" class="amblog-post-list amblog-widget-container -recent-posts"><div class="amblog-sidebar-heading-container"><h3 class="amblog-title" id="amblog-sidebar-recent-post-title" data-amblog-js="heading">Recent posts</h3></div><div class="amblog-list" data-amblog-js="content">  <div class="post-item-info  amblog-recent-post-19"> <a href="https://nsor.com/blog/choose-roof-rack-camping.html" title="How&#x20;to&#x20;Choose&#x20;a&#x20;Roof&#x20;Rack&#x20;for&#x20;Camping,&#x20;Work&#x20;&amp;&#x20;Gear" aria-label="How&#x20;to&#x20;Choose&#x20;a&#x20;Roof&#x20;Rack&#x20;for&#x20;Camping,&#x20;Work&#x20;&amp;&#x20;Gear" class="post-image">  <picture>  <source type="image/jpg" srcset="https://nsor.com/media/amasty/blog/cache/J/e/60/60/Jeep-JL-4Door-Multi-Light.jpg"><img src="https://nsor.com/media/amasty/blog/cache/J/e/60/60/Jeep-JL-4Door-Multi-Light.jpg" alt="Roof&#x20;Rack" width="60" height="60"  loading="lazy" /></picture></a>  <div class="post-item-details"><a class="post-title amblog-headline" href="https://nsor.com/blog/choose-roof-rack-camping.html" title="How&#x20;to&#x20;Choose&#x20;a&#x20;Roof&#x20;Rack&#x20;for&#x20;Camping,&#x20;Work&#x20;&amp;&#x20;Gear" aria-label="How&#x20;to&#x20;Choose&#x20;a&#x20;Roof&#x20;Rack&#x20;for&#x20;Camping,&#x20;Work&#x20;&amp;&#x20;Gear">How to Choose a Roof Rack for Camping, Work &amp; Gear</a>  <div class="amblog-dates">  <span class="views amblog-views">5 view(s)</span>  </div></div></div>  <div class="post-item-info  amblog-recent-post-17"> <a href="https://nsor.com/blog/what-to-look-for-in-a-winch-a-practical-buying-guide.html" title="What&#x20;to&#x20;Look&#x20;for&#x20;in&#x20;a&#x20;Winch&#x3A;&#x20;A&#x20;Practical&#x20;Buying&#x20;Guide" aria-label="What&#x20;to&#x20;Look&#x20;for&#x20;in&#x20;a&#x20;Winch&#x3A;&#x20;A&#x20;Practical&#x20;Buying&#x20;Guide" class="post-image">  <picture>  <source type="image/jpg" srcset="https://nsor.com/media/amasty/blog/cache/W/a/60/60/Warn_Winch_2.jpg"><img src="https://nsor.com/media/amasty/blog/cache/W/a/60/60/Warn_Winch_2.jpg" alt="Winch&#x20;Buying&#x20;Guide" width="60" height="60"  loading="lazy" /></picture></a>  <div class="post-item-details"><a class="post-title amblog-headline" href="https://nsor.com/blog/what-to-look-for-in-a-winch-a-practical-buying-guide.html" title="What&#x20;to&#x20;Look&#x20;for&#x20;in&#x20;a&#x20;Winch&#x3A;&#x20;A&#x20;Practical&#x20;Buying&#x20;Guide" aria-label="What&#x20;to&#x20;Look&#x20;for&#x20;in&#x20;a&#x20;Winch&#x3A;&#x20;A&#x20;Practical&#x20;Buying&#x20;Guide">What to Look for in a Winch: A Practical Buying Guide</a>  <div class="amblog-dates">  <span class="views amblog-views">19 view(s)</span>  </div></div></div>  <div class="post-item-info  amblog-recent-post-14"> <a href="https://nsor.com/blog/is-a-modular-truck-cap-worth-it.html" title="Is&#x20;a&#x20;Modular&#x20;Truck&#x20;Cap&#x20;Worth&#x20;It&#x3F;" aria-label="Is&#x20;a&#x20;Modular&#x20;Truck&#x20;Cap&#x20;Worth&#x20;It&#x3F;" class="post-image">  <picture>  <source type="image/png" srcset="https://nsor.com/media/amasty/blog/cache/C/a/60/60/Cap_Lifestyle_4_copy.png"><img src="https://nsor.com/media/amasty/blog/cache/C/a/60/60/Cap_Lifestyle_4_copy.png" alt="Modular&#x20;Truck&#x20;Cap" width="60" height="60"  loading="lazy" /></picture></a>  <div class="post-item-details"><a class="post-title amblog-headline" href="https://nsor.com/blog/is-a-modular-truck-cap-worth-it.html" title="Is&#x20;a&#x20;Modular&#x20;Truck&#x20;Cap&#x20;Worth&#x20;It&#x3F;" aria-label="Is&#x20;a&#x20;Modular&#x20;Truck&#x20;Cap&#x20;Worth&#x20;It&#x3F;">Is a Modular Truck Cap Worth It?</a>  <div class="amblog-dates">  <span class="views amblog-views">16 view(s)</span>  </div></div></div>  <div class="post-item-info  amblog-recent-post-12"> <a href="https://nsor.com/blog/5-tire-questions-to-ask-before-you-buy.html" title="5&#x20;Questions&#x20;to&#x20;Ask&#x20;Your&#x20;Dealer&#x20;Before&#x20;Buying&#x20;Tire" aria-label="5&#x20;Questions&#x20;to&#x20;Ask&#x20;Your&#x20;Dealer&#x20;Before&#x20;Buying&#x20;Tire" class="post-image">  <picture>  <source type="image/jpg" srcset="https://nsor.com/media/amasty/blog/cache/T/i/60/60/Tires.jpg"><img src="https://nsor.com/media/amasty/blog/cache/T/i/60/60/Tires.jpg" alt="5&#x20;Questions&#x20;to&#x20;Ask&#x20;Your&#x20;Dealer&#x20;Before&#x20;Buying&#x20;Tire" width="60" height="60"  loading="lazy" /></picture></a>  <div class="post-item-details"><a class="post-title amblog-headline" href="https://nsor.com/blog/5-tire-questions-to-ask-before-you-buy.html" title="5&#x20;Questions&#x20;to&#x20;Ask&#x20;Your&#x20;Dealer&#x20;Before&#x20;Buying&#x20;Tire" aria-label="5&#x20;Questions&#x20;to&#x20;Ask&#x20;Your&#x20;Dealer&#x20;Before&#x20;Buying&#x20;Tire">5 Questions to Ask Your Dealer Before Buying Tire</a>  <div class="amblog-dates">  <span class="views amblog-views">15 view(s)</span>  </div></div></div>  <div class="post-item-info  amblog-recent-post-8"> <a href="https://nsor.com/blog/lift-kit-vs-leveling-kit-bc.html" title="Lift&#x20;Kit&#x20;vs&#x20;Leveling&#x20;Kit&#x20;for&#x20;Off-Road&#x20;and&#x20;Daily&#x20;Driving&#x20;in&#x20;British&#x20;Columbia" aria-label="Lift&#x20;Kit&#x20;vs&#x20;Leveling&#x20;Kit&#x20;for&#x20;Off-Road&#x20;and&#x20;Daily&#x20;Driving&#x20;in&#x20;British&#x20;Columbia" class="post-image">  <picture>  <source type="image/jpg" srcset="https://nsor.com/media/amasty/blog/cache/l/i/60/60/lift.jpg"><img src="https://nsor.com/media/amasty/blog/cache/l/i/60/60/lift.jpg" alt="Lift&#x20;Kit&#x20;vs&#x20;Levelking&#x20;Kit" width="60" height="60"  loading="lazy" /></picture></a>  <div class="post-item-details"><a class="post-title amblog-headline" href="https://nsor.com/blog/lift-kit-vs-leveling-kit-bc.html" title="Lift&#x20;Kit&#x20;vs&#x20;Leveling&#x20;Kit&#x20;for&#x20;Off-Road&#x20;and&#x20;Daily&#x20;Driving&#x20;in&#x20;British&#x20;Columbia" aria-label="Lift&#x20;Kit&#x20;vs&#x20;Leveling&#x20;Kit&#x20;for&#x20;Off-Road&#x20;and&#x20;Daily&#x20;Driving&#x20;in&#x20;British&#x20;Columbia">Lift Kit vs Leveling Kit for Off-Road and Daily Driving in British Columbia</a>  <div class="amblog-dates">  <span class="views amblog-views">18 view(s)</span>  </div></div></div></div></div></div> </div></div></main><footer class="page-footer"><div class="footer content"> <div class="field-recaptcha" id="recaptcha-38880f4467ec9e0b67744d92c917f6c5f7b94144-container" data-bind="scope:'recaptcha-38880f4467ec9e0b67744d92c917f6c5f7b94144'" ><!-- ko template: getTemplate() --><!-- /ko --></div> <div class="block newsletter"><div class="top-content"><div class="title"><strong>E-News</strong></div><div class="newsletter-description"><strong>Join our e-news for all the latest deals, new items and contests. You can unsubscribe at any time.</strong></div></div><div class="content"><form class="form subscribe" novalidate action="https://nsor.com/newsletter/subscriber/new/" method="post" data-mage-init='{"validation": {"errorClass": "mage-error"}}' id="newsletter-validate-detail"><div class="field newsletter"><div class="control"><label for="newsletter"><span class="label">Sign Up for Our Newsletter:</span> <input name="email" type="email" id="newsletter" placeholder="Enter Your email" data-mage-init='{"mage/trim-input":{}}' data-validate="{required:true, 'validate-email':true}" /></label></div></div>    <div class="field choice consent"><input type="checkbox" name=is_consented2 title=I agree to the &lt;a href=&quot;/privacy-policy-cookie-restriction-mode&quot; target=&quot;_blank&quot;&gt;Privacy Policy&lt;/a&gt; value="1" id=is_consented2 class="checkbox" required="required" data-validate="{required:true}"><label for=is_consented2 class="label"><span>I agree to the <a href="/privacy-policy-cookie-restriction-mode" target="_blank">Privacy Policy</a></span></label></div> <div class="actions"><button class="action subscribe primary" title="Sign&#x20;Up" type="submit" aria-label="Subscribe"><span>Sign Up</span></button></div></form></div></div>  <div class="field-recaptcha" id="recaptcha-caa20ac351216e6f76edced1efe7c61fff5f4796-container" data-bind="scope:'recaptcha-caa20ac351216e6f76edced1efe7c61fff5f4796'" ><!-- ko template: getTemplate() --><!-- /ko --></div><div class="mid-footer"><style>#html-body [data-pb-style=DS9XH8V],#html-body [data-pb-style=O0ISKGU]{background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll}#html-body [data-pb-style=DS9XH8V]{justify-content:flex-start;display:flex;flex-direction:column}#html-body [data-pb-style=O0ISKGU]{align-self:stretch}#html-body [data-pb-style=ISRQ31K]{display:flex;width:100%}#html-body [data-pb-style=EVLUX6M],#html-body [data-pb-style=I1T2HIN],#html-bo
244dy [data-pb-style=IR60CRR],#html-body [data-pb-style=VLE76NE]{justify-content:flex-start;display:flex;flex-direction:column;background-position:left top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll;width:25%;align-self:stretch}</style><div data-content-type="row" data-appearance="contained" data-element="main"><div data-enable-parallax="0" data-parallax-speed="0.5" data-background-images="{}" data-background-type="image" data-video-loop="true" data-video-play-only-visible="true" data-video-lazy-load="true" data-video-fallback-src="" data-element="inner" data-pb-style="DS9XH8V"><div class="pagebuilder-column-group" data-background-images="{}" data-content-type="column-group" data-appearance="default" data-grid-size="12" data-element="main" data-pb-style="O0ISKGU"><div class="pagebuilder-column-line" data-content-type="column-line" data-element="main" data-pb-style="ISRQ31K"><div class="pagebuilder-column" data-content-type="column" data-appearance="full-height" data-background-images="{}" data-element="main" data-pb-style="I1T2HIN"><div data-content-type="text" data-appearance="default" data-element="main"><h2>Need help?</h2>
245<ul>
246<li><a tabindex="0" href="/contact">Contact Us</a></li>
247<li><a tabindex="0" href="/shipping-policy">Shipping</a></li>
248<li><a tabindex="0" href="/returns-warranty">Returns &amp; Warranty</a></li>
249<li><a tabindex="0" href="/privacy-policy">Privacy Policy</a></li>
250<li><a tabindex="0" href="/price-match">Price Match</a></li>
251<li><a tabindex="0" href="https://560plus.com/factory-protection-plus-registration/">560PLUS Warranty</a></li>
252</ul></div></div><div class="pagebuilder-column" data-content-type="column" data-appearance="full-height" data-background-images="{}" data-element="main" data-pb-style="EVLUX6M"><div data-content-type="text" data-appearance="default" data-element="main"><h2>Shop By Brands</h2>
253<ul>
254<li><a tabindex="0" href="/brands/bds_suspension">BDS Suspension</a></li>
255<li><a tabindex="0" href="/brands/brightsource">Brightsource</a></li>
256<li><a tabindex="0" href="/brands/hi_lift_jack">Hi-Lift Jacks</a></li>
257<li><a tabindex="0" href="/brands/rfx">RFX Truck Accessories</a></li>
258<li><a tabindex="0" href="/brands/rotopax">Rotopax</a></li>
259<li><a tabindex="0" href="/brands/zone_offroad">Zone Offroad</a></li>
260<li><a tabindex="0" href="/brands">View All Brands</a></li>
261</ul></div></div><div class="pagebuilder-column" data-content-type="column" data-appearance="full-height" data-background-images="{}" data-element="main" data-pb-style="VLE76NE"><div data-content-type="text" data-appearance="default" data-element="main"><h2>About Us</h2>
262<ul>
263<li><a tabindex="0" href="/about-nsor">About NSOR</a></li>
264<li><a tabindex="0" href="/store-locator">Find a Store</a></li>
265<li><a tabindex="0" href="/our-services">Our Services</a></li>
266<li><a tabindex="0" href="/portfolio">Install Gallery</a></li>
267<li><a href="/store-brandsnsor">Available Brands</a></li>
268<li><a tabindex="0" href="/financing">Financing with Flexiti</a></li>
269<li><a tabindex="0" href="/nsor-faq">FAQ</a></li>
270<li><a href="/blog.html">Blog</a></li>
271</ul></div></div><div class="pagebuilder-column" data-content-type="column" data-appearance="full-height" data-background-images="{}" data-element="main" data-pb-style="IR60CRR"><div data-content-type="text" data-appearance="default" data-element="main"><h2>Connect with us</h2>
272<ul>
273<li><a href="/store-locator">British Columba, Canada</a></li>
274<li><a tabindex="0" href="/cdn-cgi/l/email-protection#bcd5d2dad3fcd2cfd3ce92dfd3d1"><span class="__cf_email__" data-cfemail="e58c8b838aa58b968a97cb868a88">[email&#160;protected]</span></a></li>
275<li>604-988-7677</li>
276</ul>
277<h2>Find Us On</h2>
278<div class="find-us-social">
279<div class="find-facebook"><a tabindex="0" href="https://www.facebook.com/northshoreoffroadcentre" target="_blank" rel="noopener">Facebook</a></div>
280<div class="find-istagram"><a tabindex="0" href="https://www.instagram.com/northshoreoffroad/" target="_blank" rel="noopener">Instagram</a></div>
281<div class="find-youtube"><a tabindex="0" href="https://www.youtube.com/@northshoreoff-road" target="_blank" rel="noopener">Youtube</a></div>
282</div></div></div></div></div></div></div></div></div></footer>    <div id="amfilter_popup" class="amfinder-common-popup amfinder-horizontal " location="xml"><form id="form-finder-container" method="post" action="https://nsor.com/amfinder/index/search/"><input type="hidden" name="finder_id" value="5"/><input type="hidden" name="back_url" value="aHR0cHM6Ly9uc29yLmNvbS9hbWZpbmRlci8~"/><input type="hidden" name="reset_url" value="aHR0cHM6Ly9uc29yLmNvbS9ibG9nLmh0bWw~"/><input type="hidden" name="category_id" value=""/><input type="hidden" name="current_apply_url" value="aHR0cHM6Ly9uc29yLmNvbS9ibG9nLmh0bWw~"/><div class="amfinder-title">Select Vehicle <span class="action-close"></span></div><ul class="amfinder-toggle"> <li class="am-item -list-item"><div class="dropdown-element amshopby-clearer"><div class="amfinder-select-wrapper"><select id="popup-finder-5--20" data-dropdown-id="20"name="finder[20]" data-amfinder-js="select" class="amfinder-select">  <option value="0">Select Year</option> <option value="141865133" >2026</option> <option value="141864593" >2025</option> <option value="141827519" >2024</option>
282 <option value="141828033" >2023</option> <option value="141828547" >2022</option> <option value="141829547" >2021</option> <option value="141830043" >2020</option> <option value="141830532" >2019</option> <option value="141831022" >2018</option> <option value="141831509" >2017</option> <option value="141831986" >2016</option> <option value="141832458" >2015</option> <option value="141832908" >2014</option> <option value="141833305" >2013</option> <option value="141833688" >2012</option> <option value="141834103" >2011</option> <option value="141834529" >2010</option> <option value="141834955" >2009</option> <option value="141835381" >2008</option> <option value="141835785" >2007</option> <option value="141836189" >2006</option> <option value="141836573" >2005</option> <option value="141836952" >2004</option> <option value="141837298" >2003</option> <option value="141837595" >2002</option> <option value="141837848" >2001</option> <option value="141838082" >2000</option> <option value="141838228" >1999</option> <option value="141838358" >1998</option> <option value="141838398" >1997</option> <option value="141848190" ></option> </select></div></div></li>  <li class="am-item -list-item"><div class="dropdown-element amshopby-clearer"><div class="amfinder-select-wrapper"><select id="popup-finder-5--21" data-dropdown-id="21"name="finder[21]"disabled = "disabled" data-amfinder-js="select" class="amfinder-select">  <option value="0">Select Make</option> </select></div></div></li>  <li class="am-item -list-item"><div class="dropdown-element amshopby-clearer"><div class="amfinder-select-wrapper"><select id="popup-finder-5--22" data-dropdown-id="22"name="finder[22]"disabled = "disabled" data-amfinder-js="select" class="amfinder-select">  <option value="0">Select Model</option> </select></div></div></li>  <li class="am-item -list-item"><div class="dropdown-element amshopby-clearer"><div class="amfinder-select-wrapper"><select id="popup-finder-5--23" data-dropdown-id="23"name="finder[23]"disabled = "disabled" data-amfinder-js="select" class="amfinder-select">  <option value="0">Select Cab</option> </select></div></div></li>  <li class="am-item -list-item"><div class="dropdown-element amshopby-clearer"><div class="amfinder-select-wrapper"><select id="popup-finder-5--24" data-dropdown-id="24"name="finder[24]"disabled = "disabled" data-amfinder-js="select" class="amfinder-select">  <option value="0">Select Box</option> </select></div></div></li>  <li class="am-item -list-item"><div class="dropdown-element amshopby-clearer"><div class="amfinder-select-wrapper"><select id="popup-finder-5--25" data-dropdown-id="25"name="finder[25]"disabled = "disabled" data-amfinder-js="select" class="amfinder-select">  <option value="0">Select Engine</option> </select></div></div></li>  <li class="last -list-item"><div class="amfinder-buttons no-display" data-amfinder-js="buttons"><button class="button" name="reset" value="1" title="Reset" type="submit">Reset</button> <button id="save-vehicle" class="button action primary" title="Save" type="button">Save</button></div></li></ul></form></div>       <div class="mst-gdpr__cookie-bar-wrapper" id="gdprCookieBar"><div class="mst-gdpr__cookie-bar"><div class="consent-text"><strong>We use cookies to make your experience better.</strong> To comply with privacy regulations, we need your consent to set cookies. <a href="/privacy-policy-cookie-restriction-mode">Learn more</a></div><div class="mst-gdpr__buttons"><button type="button" class="action" data-trigger-settings="decline"><span>Essential</span></button> <button type="button" class="action" data-trigger-settings="trigger"><span>Custom</span></button> <button type="button" class="action primary" data-trigger-settings="agree"><span>Agree All</span></button></div></div></div><div class="mst-gdpr__cookie-bar-overlay" id="gdprCookieBarOverlay"></div> </div>
vendor: 110 bytes, lines 282-283
282 
283<script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script>
283<script> var LOCALE = 'en\u002DUS'; var BASE_URL = 'https\u003A\u002F\u002Fnsor.com\u002F'; var require = { 'baseUrl': 'https\u003A\u002F\u002Fnsor.com\u002Fstatic\u002Fversion1790833067\u002Ffrontend\u002FNsor\u002Fdefault\u002Fen_US' };</script>
vendor: 1 bytes, line 283
283
284<script type="text/javascript" src="https://nsor.com/static/version1790833067/frontend/Nsor/default/en_US/requirejs/require.min.js"></script>
vendor: 1 bytes, line 284
284
285<script type="text/javascript" src="https://nsor.com/static/version1790833067/frontend/Nsor/default/en_US/requirejs-min-resolver.min.js"></script>
vendor: 1 bytes, line 285
285
286<script type="text/javascript" src="https://nsor.com/static/version1790833067/frontend/Nsor/default/en_US/mage/requirejs/mixins.min.js"></script>
vendor: 1 bytes, line 286
286
287<script type="text/javascript" src="https://nsor.com/static/version1790833067/frontend/Nsor/default/en_US/requirejs-config.min.js"></script>
vendor: 1 bytes, line 287
287
288<script>
289    document.write(atob('PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iLy9zY3JpcHQuY3JhenllZ2cuY29tL3BhZ2VzL3NjcmlwdHMvMDEyMy84MDk0LmpzIiBhc3luYz0iYXN5bmMiPjwvc2NyaXB0Pg=='));
290</script>
vendor: 1 bytes, line 290
290
291<script>
vendor: 408 bytes, lines 291-300
291
292!function(f,b,e,v,n,t,s)
293{if(f.fbq)return;n=f.fbq=function(){n.callMethod?
294n.callMethod.apply(n,arguments):n.queue.push(arguments)};
295if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';
296n.queue=[];t=b.createElement(e);t.async=!0;
297t.src=v;s=b.getElementsByTagName(e)[0];
298s.parentNode.insertBefore(t,s)}(window, document,'script',
299'https://connect.facebook.net/en_US/fbevents.js');
300fbq('init', '
3001628185817221309
vendor: 32 bytes, lines 300-301
300');
301fbq('track', 'PageView');
302</script>
vendor: 1 bytes, line 302
302
303<script type="text/x-magento-init">
304    {
305        "*": {
306            "Magento_GoogleGtag/js/google-analytics": {"isCookieRestrictionModeEnabled":false,"currentWebsite":1,"cookieName":"user_allowed_save_cookie","pageTrackingData":{"optPageUrl":"","measurementId":"G-JKBDYCC44R"},"ordersTrackingData":[],"googleAnalyticsAvailable":true}        }
307    }</script>
vendor: 1 bytes, line 307
307
308<script type="text/x-magento-init">
309        {
310            "*": {
311                "Magento_PageCache/js/form-key-provider": {
312                    "isPaginationCacheEnabled":
313                        0                }
314            }
315        }</script>
vendor: 1 bytes, line 315
315
316<script type="text&#x2F;javascript" src="https&#x3A;&#x2F;&#x2F;chimpstatic.com&#x2F;mcjs-connected&#x2F;js&#x2F;users&#x2F;6f3e61c6b325f3fe1675b7367&#x2F;88d4a97cf92fa6a90ff80d6e0.js" defer="defer">
317</script>
vendor: 1 bytes, line 317
317
318<script type="text/x-magento-init">
319    {
320        "*": {
321            "Magento_PageBuilder/js/widget-initializer": {
322                "config": {"[data-content-type=\"slider\"][data-appearance=\"default\"]":{"Magento_PageBuilder\/js\/content-type\/slider\/appearance\/default\/widget":false},"[data-content-type=\"map\"]":{"Magento_PageBuilder\/js\/content-type\/map\/appearance\/default\/widget":false},"[data-content-type=\"row\"]":{"Magento_PageBuilder\/js\/content-type\/row\/appearance\/default\/widget":false},"[data-content-type=\"tabs\"]":{"Magento_PageBuilder\/js\/content-type\/tabs\/appearance\/default\/widget":false},"[data-content-type=\"slide\"]":{"Magento_PageBuilder\/js\/content-type\/slide\/appearance\/default\/widget":{"buttonSelector":".pagebuilder-slide-button","showOverlay":"hover","dataRole":"slide"}},"[data-content-type=\"banner\"]":{"Magento_PageBuilder\/js\/content-type\/banner\/appearance\/default\/widget":{"buttonSelector":".pagebuilder-banner-button","showOverlay":"hover","dataRole":"banner"}},"[data-content-type=\"buttons\"]":{"Magento_PageBuilder\/js\/content-type\/buttons\/appearance\/inline\/widget":false},"[data-content-type=\"products\"][data-appearance=\"carousel\"]":{"Amasty_Xsearch\/js\/content-type\/products\/appearance\/carousel\/widget-override":false}},
323                "breakpoints": {"desktop":{"label":"Desktop","stage":true,"default":true,"class":"desktop-switcher","icon":"Magento_PageBuilder::css\/images\/switcher\/switcher-desktop.svg","conditions":{"min-width":"1024px"},"options":{"products":{"default":{"slidesToShow":"5"}}}},"tablet":{"conditions":{"max-width":"1024px","min-width":"768px"},"options":{"products":{"default":{"slidesToShow":"4"},"continuous":{"slidesToShow":"3"}}}},"mobile":{"label":"Mobile","stage":true,"class":"mobile-switcher","icon":"Magento_PageBuilder::css\/images\/switcher\/switcher-mobile.svg","media":"only screen and (max-width: 767px)","conditions":{"max-width":"767px","min-width":"640px"},"options":{"products":{"default":{"slidesToShow":"3"}}}},"mobile-small":{"conditions":{"max-width":"640px"},"options":{"products":{"default":{"slidesToShow":"2"},"continuous":{"slidesToShow":"1"}}}}}            }
324        }
325    }</script>
vendor: 1 bytes, line 325
325
326<script type="text/x-magento-init">
327    {
328        "*": {
329            "cookieStatus": {}
330        }
331    }</script>
vendor: 1 bytes, line 331
331
332<script type="text/x-magento-init">
333    {
334        "*": {
335            "mage/cookies": {
336                "expires": null,
337                "path": "\u002F",
338                "domain": ".nsor.com",
339                "secure": true,
340                "lifetime": "3600"
341            }
342        }
343    }</script>
vendor: 1 bytes, line 343
343
344<script> window.cookiesConfig = window.cookiesConfig || {}; window.cookiesConfig.secure = true; </script>
vendor: 1 bytes, line 344
344
345<script>    require.config({
346        map: {
347            '*': {
348                wysiwygAdapter: 'mage/adminhtml/wysiwyg/tiny_mce/tinymceAdapter'
349            }
350        }
351    });</script>
vendor: 1 bytes, line 351
351
352<script>    require.config({
353        paths: {
354            googleMaps: 'https\u003A\u002F\u002Fmaps.googleapis.com\u002Fmaps\u002Fapi\u002Fjs\u003Fv\u003D3.56\u0026key\u003D'
355        },
356        config: {
357            'Magento_PageBuilder/js/utils/map': {
358                style: '',
359            },
360            'Magento_PageBuilder/js/content-type/map/preview': {
361                apiKey: '',
362                apiKeyErrorMessage: 'You\u0020must\u0020provide\u0020a\u0020valid\u0020\u003Ca\u0020href\u003D\u0027https\u003A\u002F\u002Fnsor.com\u002Fadminhtml\u002Fsystem_config\u002Fedit\u002Fsection\u002Fcms\u002F\u0023cms_pagebuilder\u0027\u0020target\u003D\u0027_blank\u0027\u003EGoogle\u0020Maps\u0020API\u0020key\u003C\u002Fa\u003E\u0020to\u0020use\u0020a\u0020map.'
363            },
364            'Magento_PageBuilder/js/form/element/map': {
365                apiKey: '',
366                apiKeyErrorMessage: 'You\u0020must\u0020provide\u0020a\u0020valid\u0020\u003Ca\u0020href\u003D\u0027https\u003A\u002F\u002Fnsor.com\u002Fadminhtml\u002Fsystem_config\u002Fedit\u002Fsection\u002Fcms\u002F\u0023cms_pagebuilder\u0027\u0020target\u003D\u0027_blank\u0027\u003EGoogle\u0020Maps\u0020API\u0020key\u003C\u002Fa\u003E\u0020to\u0020use\u0020a\u0020map.'
367            },
368        }
369    });</script>
vendor: 1 bytes, line 369
369
370<script>
371    require.config({
372        shim: {
373            'Magento_PageBuilder/js/utils/map': {
374                deps: ['googleMaps']
375            }
376        }
377    });</script>
vendor: 1 bytes, line 377
377
378<script>window.checkout = {"shoppingCartUrl":"https:\/\/nsor.com\/checkout\/cart\/","checkoutUrl":"https:\/\/nsor.com\/checkout\/","updateItemQtyUrl":"https:\/\/nsor.com\/checkout\/sidebar\/updateItemQty\/","removeItemUrl":"https:\/\/nsor.com\/checkout\/sidebar\/removeItem\/","imageTemplate":"Magento_Catalog\/product\/image_with_borders","baseUrl":"https:\/\/nsor.com\/","minicartMaxItemsVisible":5,"websiteId":"1","maxItemsToDisplay":10,"storeId":"1","storeGroupId":"1","customerLoginUrl":"https:\/\/nsor.com\/customer\/account\/login\/referer\/aHR0cHM6Ly9uc29yLmNvbS9ibG9nLmh0bWw~\/","isRedirectRequired":false,"autocomplete":"off","captcha":{"user_login":{"isCaseSensitive":false,"imageHeight":50,"imageSrc":"","refreshUrl":"https:\/\/nsor.com\/captcha\/refresh\/","isRequired":false,"timestamp":1791084806}}}</script>
vendor: 1 bytes, line 378
378
379<script type="text/x-magento-init">
380    {
381        "[data-block='minicart']": {
382            "Magento_Ui/js/core/app": {"components":{"minicart_content":{"children":{"subtotal.container":{"children":{"subtotal":{"children":{"subtotal.totals":{"config":{"display_cart_subtotal_incl_tax":0,"display_cart_subtotal_excl_tax":1,"template":"Magento_Tax\/checkout\/minicart\/subtotal\/totals"},"children":{"subtotal.totals.msrp":{"component":"Magento_Msrp\/js\/view\/checkout\/minicart\/subtotal\/totals","config":{"displayArea":"minicart-subtotal-hidden","template":"Magento_Msrp\/checkout\/minicart\/subtotal\/totals"}}},"component":"Magento_Tax\/js\/view\/checkout\/minicart\/subtotal\/totals"}},"component":"uiComponent","config":{"template":"Magento_Checkout\/minicart\/subtotal"}}},"component":"uiComponent","config":{"displayArea":"subtotalContainer"}},"item.renderer":{"component":"Magento_Checkout\/js\/view\/cart-item-renderer","config":{"displayArea":"defaultRenderer","template":"Magento_Checkout\/minicart\/item\/default"},"children":{"item.image":{"component":"Magento_Catalog\/js\/view\/image","config":{"template":"Magento_Catalog\/product\/image","displayArea":"itemImage"}},"checkout.cart.item.price.sidebar":{"component":"uiComponent","config":{"template":"Magento_Checkout\/minicart\/item\/price","displayArea":"priceSidebar"}}}},"extra_info":{"component":"uiComponent","config":{"displayArea":"extraInfo"}},"promotion":{"component":"uiComponent","config":{"displayArea":"promotion"}}},"config":{"itemRenderer":{"default":"defaultRenderer","simple":"defaultRenderer","virtual":"defaultRenderer"},"template":"Magento_Checkout\/minicart\/content"},"component":"Magento_Checkout\/js\/view\/minicart"}},"types":[]}        },
383        "*": {
384            "Magento_Ui/js/block-loader": "https\u003A\u002F\u002Fnsor.com\u002Fstatic\u002Fversion1790833067\u002Ffrontend\u002FNsor\u002Fdefault\u002Fen_US\u002Fimages\u002Floader\u002D1.gif"
385        }
386    }</script>
vendor: 1 bytes, line 386
386
387<script type="text/x-magento-init">
388    {
389        "*": {
390            "Magento_Ui/js/core/app": {
391                "components": {
392                        "messages": {
393                            "component": "Magento_Theme/js/view/messages"
394                        }
395                    }
396                }
397            }
398    }</script>
vendor: 1 bytes, line 398
398
399<script type="text/x-magento-init">
400    {
401        ".amblog-container-list": {
402             "amBlogViewsList": {}
403        }
404    }</script>
vendor: 1 bytes, line 404
404
405<script type="text/x-magento-init">
406{
407    "*": {
408         "amBlogAccord": {}
409    }
410}</script>
vendor: 1 bytes, line 410
410
411<script>window.authenticationPopup = {"autocomplete":"off","customerRegisterUrl":"https:\/\/nsor.com\/customer\/account\/create\/","customerForgotPasswordUrl":"https:\/\/nsor.com\/customer\/account\/forgotpassword\/","baseUrl":"https:\/\/nsor.com\/","customerLoginUrl":"https:\/\/nsor.com\/customer\/ajax\/login\/"}</script>
vendor: 1 bytes, line 411
411
412<script type="text/x-magento-init">
413        {
414            "#authenticationPopup": {
415                "Magento_Ui/js/core/app": {"components":{"authenticationPopup":{"component":"Magento_Customer\/js\/view\/authentication-popup","children":{"messages":{"component":"Magento_Ui\/js\/view\/messages","displayArea":"messages"},"recaptcha":{"component":"Magento_ReCaptchaFrontendUi\/js\/reCaptcha","displayArea":"additional-login-form-fields","reCaptchaId":"recaptcha-popup-login","settings":{"rendering":{"sitekey":"6LfpQTskAAAAAEhn9r2hMaWL9ZNJASYOrwxHxWIj","size":"normal","theme":"light","hl":"en"},"invisible":false}}}}}}            },
416            "*": {
417                "Magento_Ui/js/block-loader": "https\u003A\u002F\u002Fnsor.com\u002Fstatic\u002Fversion1790833067\u002Ffrontend\u002FNsor\u002Fdefault\u002Fen_US\u002Fimages\u002Floader\u002D1.gif"
418                                ,
419                "Magento_Customer/js/customer-global-session-loader": {}
420                 }
421        }</script>
vendor: 1 bytes, line 421
421
422<script type="text/x-magento-init">
423    {
424        "*": {
425            "Magento_Customer/js/section-config": {
426                "sections": {"stores\/store\/switch":["*"],"stores\/store\/switchrequest":["*"],"directory\/currency\/switch":["*"],"*":["messages"],"customer\/account\/logout":["*","recently_viewed_product","recently_compared_product","persistent"],"customer\/account\/loginpost":["*"],"customer\/account\/createpost":["*"],"customer\/account\/editpost":["*"],"customer\/ajax\/login":["checkout-data","cart","captcha"],"catalog\/product_compare\/add":["compare-products"],"catalog\/product_compare\/remove":["compare-products"],"catalog\/product_compare\/clear":["compare-products"],"sales\/guest\/reorder":["cart","ammessages","amasty-storepickup-data","amasty-selected-pickup-info"],"sales\/order\/reorder":["cart","ammessages","amasty-storepickup-data","amasty-selected-pickup-info"],"checkout\/cart\/add":["cart","directory-data","ammessages","amasty-storepickup-data","amasty-selected-pickup-info"],"checkout\/cart\/delete":["cart","ammessages","amasty-storepickup-data","amasty-selected-pickup-info"],"checkout\/cart\/updatepost":["cart","ammessages","amasty-storepickup-data"],"checkout\/cart\/updateitemoptions":["cart","ammessages","amasty-storepickup-data"],"checkout\/cart\/couponpost":["cart","ammessages"],"checkout\/cart\/estimatepost":["cart","ammessages","amasty-storepickup-data"],"checkout\/cart\/estimateupdatepost":["cart","ammessages","amasty-storepickup-data"],"checkout\/onepage\/saveorder":["cart","checkout-data","last-ordered-items","ammessages","amasty-storepickup-data","amasty-selected-pickup-info"],"checkout\/sidebar\/removeitem":["cart","ammessages","amasty-storepickup-data"],"checkout\/sidebar\/updateitemqty":["cart","ammessages","amasty-storepickup-data"],"rest\/*\/v1\/carts\/*\/payment-information":["cart","last-ordered-items","captcha","instant-purchase","ammessages"],"rest\/*\/v1\/guest-carts\/*\/payment-information":["cart","captcha","ammessages"],"rest\/*\/v1\/guest-carts\/*\/selected-payment-method":["cart","checkout-data","ammessages"],"rest\/*\/v1\/carts\/*\/selected-payment-method":["cart","checkout-data","instant-purchase","ammessages"],"customer\/address\/*":["instant-purchase"],"customer\/account\/*":["instant-purchase"],"vault\/cards\/deleteaction":["instant-purchase"],"multishipping\/checkout\/overviewpost":["cart","ammessages","amasty-storepickup-data","amasty-selected-pickup-info"],"paypal\/express\/placeorder":["cart","checkout-data","ammessages","amasty-storepickup-data","amasty-selected-pickup-info"],"paypal\/payflowexpress\/placeorder":["cart","checkout-data","ammessages","amasty-storepickup-data","amasty-selected-pickup-info"],"paypal\/express\/onauthorization":["cart","checkout-data","ammessages","amasty-storepickup-data","amasty-selected-pickup-info"],"persistent\/index\/unsetcookie":["persistent"],"review\/product\/post":["review"],"paymentservicespaypal\/smartbuttons\/placeorder":["cart","checkout-data"],"paymentservicespaypal\/smartbuttons\/cancel":["cart","checkout-data"],"wishlist\/index\/add":["wishlist"],"wishlist\/index\/remove":["wishlist"],"wishlist\/index\/updateitemoptions":["wishlist"],"wishlist\/index\/update":["wishlist"],"wishlist\/index\/cart":["wishlist","cart"],"wishlist\/index\/fromcart":["wishlist","cart"],"wishlist\/index\/allcart":["wishlist","cart"],"wishlist\/shared\/allcart":["wishlist","cart"],"wishlist\/shared\/cart":["cart"],"ammostviewed\/cart\/add":["cart","messages"],"amasty_promo\/cart\/add":["cart","ammessages"],"braintree\/paypal\/placeorder":["ammessages","amasty-storepickup-data","amasty-selected-pickup-info"],"authorizenet\/directpost_payment\/place":["ammessages","amasty-storepickup-data","amasty-selected-pickup-info"],"amasty_cart\/cart\/add":["amasty-storepickup-data","amasty-selected-pickup-info"],"globalpayments\/buynowpaylater\/initiatepayment":["cart","checkout-data"],"globalpayments\/openbanking\/initiatepayment":["cart","checkout-data"],"globalpayments\/apm\/initiatepayment":["cart","checkout-data"]},
427                "clientSideSections": ["checkout-data","cart-data","amasty-selected-pickup-info"],
428                "baseUrls": ["https:\/\/nsor.com\/"],
429                "sectionNames": ["messages","customer","compare-products","last-ordered-items","cart","directory-data","captcha","instant-purchase","loggedAsCustomer","persistent","review","payments","wishlist","ammessages","amasty-storepickup-data","recently_viewed_product","recently_compared_product","product_data_storage","paypal-billing-agreement","paypal-buyer-country"]            }
430        }
431    }</script>
vendor: 1 bytes, line 431
431
432<script type="text/x-magento-init">
433    {
434        "*": {
435            "Magento_Customer/js/customer-data": {
436                "sectionLoadUrl": "https\u003A\u002F\u002Fnsor.com\u002Fcustomer\u002Fsection\u002Fload\u002F",
437                "expirableSectionLifetime": 60,
438                "expirableSectionNames": ["cart","persistent","amasty-storepickup-data"],
439                "cookieLifeTime": "3600",
440                "cookieDomain": "nsor.com",
441                "updateSessionUrl": "https\u003A\u002F\u002Fnsor.com\u002Fcustomer\u002Faccount\u002FupdateSession\u002F",
442                "isLoggedIn": "",
443                "customerShare": "0"
444            }
445        }
446    }</script>
vendor: 1 bytes, line 446
446
447<script type="text/x-magento-init">
448    {
449        "*": {
450            "Magento_Customer/js/invalidation-processor": {
451                "invalidationRules": {
452                    "website-rule": {
453                        "Magento_Customer/js/invalidation-rules/website-rule": {
454                            "scopeConfig": {
455                                "websiteId": "1"
456                            }
457                        }
458                    }
459                }
460            }
461        }
462    }</script>
vendor: 1 bytes, line 462
462
463<script type="text/x-magento-init">
464    {
465        "body": {
466            "pageCache": {"url":"https:\/\/nsor.com\/page_cache\/block\/render\/","handles":["default","amblog_index_index","amasty_blog_two_column_right_layout","amasty_blog_desktop_list","amasty_blog_listing_pages"],"originalRequest":{"route":"amblog","controller":"index","action":"index","uri":"\/blog.html"},"versionCookieName":"private_content_version"}        }
467    }</script>
vendor: 1 bytes, line 467
467
468<script type="text/x-magento-init">
469    {
470        "*": {
471            "Magento_Ui/js/core/app": {
472                "components": {
473                        "finder_notification": {
474                            "component": "Amasty_Finder/js/notification"
475                        }
476                    }
477                }
478            }
479    }</script>
vendor: 1 bytes, line 479
479
480<script type="text/x-magento-init">
481    {
482        "*": {
483            "amsearchAnalyticsCollector": {
484                "minChars": 3            }
485        }
486    }</script>
vendor: 1 bytes, line 486
486
487<script>
488    require(['jquery', 'domReady!'], function ($) {
489        if ($('#subscribe-validate-detail').length) {
490            $('#recaptcha-38880f4467ec9e0b67744d92c917f6c5f7b94144-container')
491                .appendTo('#subscribe-validate-detail');
492        }
493    });</script>
vendor: 1 bytes, line 493
493
494<script type="text/x-magento-init">
495{
496    "#recaptcha-38880f4467ec9e0b67744d92c917f6c5f7b94144-container": {
497        "Magento_Ui/js/core/app": {"components":{"recaptcha-38880f4467ec9e0b67744d92c917f6c5f7b94144":{"settings":{"rendering":{"sitekey":"6Lc4bqIoAAAAAGJkDQqYmhkGMKpBfgrzrKsLZDLP","badge":"bottomleft","size":"invisible","theme":"light","hl":""},"invisible":true},"component":"Magento_ReCaptchaFrontendUi\/js\/reCaptcha","reCaptchaId":"recaptcha-38880f4467ec9e0b67744d92c917f6c5f7b94144"}}}    }
498}</script>
vendor: 1 bytes, line 498
498
499<script type="text/x-magento-init">
500    {
501        "*": {
502            "Magento_Customer/js/block-submit-on-send": {
503                "formId": "newsletter-validate-detail"
504            }
505        }
506    }</script>
vendor: 1 bytes, line 506
506
507<script>
508require([
509    'jquery',
510    'mage/translate',
511    "slick"
512],function ($, $t) {
513    /**
514    * Header Top Bar Message
515    * @author Kenn
516    * @version 1.0
517    */
518    $('.header-top-bar-message ul').slick({
519        slidesToShow: 1,
520        slidesToScroll: 1,
521        autoplay: true,
522        autoplaySpeed: 5000,
523        arrows: false,
524        dots: false,
525        speed: 1000
526    });
527
528    /**
529    * Header Big banner
530    * @author Kenn
531    * @version 1.0
532    */
533    $('.homepage-big-banner .pagebuilder-column-line').slick({
534        slidesToShow: 1,
535        slidesToScroll: 1,
536        autoplay: true,
537        autoplaySpeed: 5000,
538        arrows: false,
539        dots: false,
540        speed: 1000
541    });
542
543    /**
544     * Header sticky menu
545     * @author Kenn
546     * @version 1.0
547     */
548    $(window).on('scroll', function () {
549        var postion = $(this).scrollTop();
550        var postionTop = 200;
551        if (postion > postionTop ){
552            $('body').addClass('header-container-fixed');
553        } else {
554            $('body').removeClass('header-container-fixed');
555        }
556    });
557
558    /**
559    * Sale label
560    * @author Kenn
561    * @version 1.0
562    */
563    $(document).find('.price-box.price-final_price').each(function(){
564        var priceSelf = $(this);
565        if(priceSelf.find('.old-price').length){
566            var oldPrice = priceSelf.find('.old-price span.price-wrapper').attr('data-price-amount');
567            var currentPrice = priceSelf.find('.special-price span.price-wrapper').attr('data-price-amount');
568            var discount = (oldPrice - currentPrice) / oldPrice * 100;
569            if(discount > 0){
570                priceSelf.append('<span class="sale-off-label">-'+Math.round(discount)+'%</span>');
571            }
572        }
573    });
574
575    /**
576    * Header Megamenu Toggle
577    * @author Kenn, Steven
578    * @version 1.1
579    */
580    $('.action.nav-toggle').click(function() {
581        $('html').toggleClass('nav-open');
582    });
583
584    $('.close-vertical-menu').click(function() {
585        $('html').removeClass('nav-open');
586    });
587
588    $(document).on('click', '.parent-megamenu > ul > li > strong', function() {
589        $(this).parent().toggleClass('active');
590        $(this).next('ul').slideToggle();
591    });
592
593    $(document).on('click', '.parent-megamenu > ul > li li.parent > a', function(e) {
594        e.preventDefault();
595        $(this).parent().toggleClass('sub-active');
596        $(this).next('ul').slideToggle();
597    });
598
599    /**
600    * Header Search dropdown (Mobile)
601    * @author Kenn
602    * @version 1.0
603    */
604    $(document).on('click', '.header.content .amsearch-wrapper-block .block-title', function(e) {
605        $(this).parent().toggleClass('active');
606    });
607    
608    $('.our-other-sites-slider .pagebuilder-column-line').slick({
609        slidesToShow: 5,
610        slidesToScroll: 5,
611        autoplay: true,
612        autoplaySpeed: 6000,
613        arrows: false,
614        dots: false,
615        speed: 1000,
616        responsive: [
617        {
618            breakpoint: 991,
619            settings: {
620                slidesToShow: 3,
621                slidesToScroll: 3
622            }
623        },
624        {
625            breakpoint: 767,
626                settings: {
627                    slidesToShow: 2,
628                    slidesToScroll: 2
629                }
630            }
631        ]
632    });
633
634    /**
635    * Header Slideout menu (Mobile)
636    * @author Steven
637    * @version 1.0
638    */
639    if ($('.header-top-horizontal-megamenu li.level-top').length && $('.header-top-vertical-megamenu').length) {
640        $('.header-top-horizontal-megamenu li.level-top').each(function() {
641            let parentClass = '';
642            let menuItemHtml = '';
643            let aTag = $(this).find('a.level-top').first();
644            if ($(this).hasClass('parent')) {
645                parentClass = 'parent-megamenu';
646                menuItemHtml = `<strong>${aTag.text()}</strong>`;
647                let ulTag = $(this).find('ul.level0').first();
648                menuItemHtml += `<ul>${ulTag.html()}</ul>`;
649            } else {
650                menuItemHtml = `<a href="${aTag.attr('href')}">${aTag.text()}</a>`;
651            }
652
653            $('.header-top-vertical-megamenu').append(`<div class="${parentClass}" data-content-type="text"><ul><li>${menuItemHtml}</li></ul></div>`)
654        });
655    }
656
657    let alignHeightPrice = function() {
658        $('.product-items').each(function() {
659            let priceHeight = 0;
660            $(this).find('.product-item .price-box').css('height', '');
661            $(this).find('.product-item .price-box').each(function() {
662                if (priceHeight < $(this).height()) {
663                    priceHeight = $(this).height();
664                }
665            });
666            if (priceHeight > 0) {
667                $(this).find('.product-item .price-box').css('height', priceHeight);
668            }
669        });
670    }
671    alignHeightPrice();
672
673    $(document).ready(function() {
674        alignHeightPrice();
675    });
676
677    $(window).resize(function() {
678        setTimeout(function() {
679            alignHeightPrice();
680        }, 500);
681    });
682
683});</script>
vendor: 1 bytes, line 683
683
684<script>
685    require(['jquery', 'domReady!'], function ($) {
686        $('#recaptcha-caa20ac351216e6f76edced1efe7c61fff5f4796-container')
687            .appendTo('#newsletter-validate-detail');
688    });</script>
vendor: 1 bytes, line 688
688
689<script type="text/x-magento-init">
690{
691    "#recaptcha-caa20ac351216e6f76edced1efe7c61fff5f4796-container": {
692        "Magento_Ui/js/core/app": {"components":{"recaptcha-caa20ac351216e6f76edced1efe7c61fff5f4796":{"settings":{"rendering":{"sitekey":"6Lc4bqIoAAAAAGJkDQqYmhkGMKpBfgrzrKsLZDLP","badge":"bottomleft","size":"invisible","theme":"light","hl":""},"invisible":true},"component":"Magento_ReCaptchaFrontendUi\/js\/reCaptcha","reCaptchaId":"recaptcha-caa20ac351216e6f76edced1efe7c61fff5f4796"}}}    }
693}</script>
vendor: 1 bytes, line 693
693
694<script type="text/x-magento-init">
695        {
696            "*": {
697                "Magento_Ui/js/core/app": {
698                    "components": {
699                        "storage-manager": {
700                            "component": "Magento_Catalog/js/storage-manager",
701                            "appendTo": "",
702                            "storagesConfiguration" : {"recently_viewed_product":{"requestConfig":{"syncUrl":"https:\/\/nsor.com\/catalog\/product\/frontend_action_synchronize\/"},"lifetime":"1000","allowToSendRequest":null},"recently_compared_product":{"requestConfig":{"syncUrl":"https:\/\/nsor.com\/catalog\/product\/frontend_action_synchronize\/"},"lifetime":"1000","allowToSendRequest":null},"product_data_storage":{"updateRequestConfig":{"url":"https:\/\/nsor.com\/rest\/nsor\/V1\/products-render-info"},"requestConfig":{"syncUrl":"https:\/\/nsor.com\/catalog\/product\/frontend_action_synchronize\/"},"allowToSendRequest":null}}                        }
703                    }
704                }
705            }
706        }</script>
vendor: 1 bytes, line 706
706
707<script type="text/javascript">
708    require(['jquery', 'Amasty_Finder/js/amfinder'], function ($) {
709        var finderConfig = {"ajaxUrl":"https:\/\/nsor.com\/amfinder\/index\/options\/","isPartialSearch":1,"autoSubmit":1,"isChosenEnable":0,"containerId":"amfilter_popup","loadingText":"Loading..."};
710
711        $("#" + finderConfig.containerId).amfinder(finderConfig);
712
713        $('.amfinder-common-popup.amfinder-horizontal .amfinder-title .action-close').click(function(){
714            $('.amfinder-common-popup.amfinder-horizontal').removeClass('_show');
715        });
716
717        $('.header-top-horizontal-megamenu .select-your-vehicle .open-form').click(function(){
718            $('.amfinder-common-popup.amfinder-horizontal').addClass('_show');
719        });
720
721        var textTop = "";
722        $("#" + finderConfig.containerId).find('select').each(function(){
723            var selected = $(this);
724            var selectId = selected.attr('data-dropdown-id');
725            var selectedText = selected.find('option:selected').text();
726            if(selected.val() != 0){
727                if(selectId == 20 || selectId == 21){
728                    textTop += ' ' + selectedText;
729                }
730                if(selectId == 22){
731                    textTop += '<br/>' + selectedText;
732                }
733            }
734        });
735
736        if(textTop != ""){
737            $('.fitmentTopSelection').html(textTop);
738
739            $('.header-top-horizontal-megamenu .select-your-vehicle > .open-form').hide();
740            $('.header-top-horizontal-megamenu .select-your-vehicle > .leading-tight').addClass('active');
741        }else {
742            $('.header-top-horizontal-megamenu .select-your-vehicle > .open-form').show();
743            $('.header-top-horizontal-megamenu .select-your-vehicle > .leading-tight').removeClass('active');
744        }
745        
746        $("#save-vehicle").click(function () {
747            var url = "https://nsor.com/partfinder/index/save/";
748
749            
750            var data = $("#form-finder-container").serialize();
751
752            $.ajax({
753                url: url,
754                data: data,
755                type: 'POST',
756                dataType: 'json',
757                success: function (response) {
758                    $('.amfinder-common-popup.amfinder-horizontal').removeClass('_show');
759
760                    if($('body').hasClass('catalog-product-view')){
761                        window.location.href = "https://nsor.com/blog.html";
762                    }else if($('body').hasClass('page-products')) {
763                        window.location.href = "https://nsor.com/blog.html";
764                    }else {
765                        window.location.href = "https://nsor.com/partfinder";
766                    }
767                }
768            });
769        });
770    });</script>
vendor: 1 bytes, line 770
770
771<script type="text/javascript">
772            require([
773            'jquery'
774            ], function($){
775                window.$crisp=[];window.CRISP_WEBSITE_ID="f944ca2c-5f93-4131-a3ae-817168b962f7";(function(){d=document;s=d.createElement("script");s.src="https://client.crisp.chat/l.js";s.async=1;d.getElementsByTagName("head")[0].appendChild(s);})();
776                
777                                $crisp.push(["set", "session:segments", [["registered_users", "nsor"]]]);
778                 $(document).ready(function(){
779                    window.CRISP_READY_TRIGGER = function() {
780                        if(!$crisp.is("website:available")){
781                            $(document).find('.contact-popup-bottom').removeClass('in-active');
782                        }
783                    };
784                });
785            });</script>
vendor: 1 bytes, line 785
785
786<script>
787    require([
788        'jquery'
789    ], function ($) {
790        var arr = [];
791
792        $(document).on("click",".header-top-horizontal-megamenu li.level0 > a.level-top",function(event) {
793            let $link = $(this).attr('href');
794            if($.inArray( $link, arr ) >= 0){
795                event.preventDefault();
796            }
797        });
798
799        $(document).on("click",".breadcrumbs .items > li > a",function(event) {
800            let $link = $(this).attr('href');
801            if($.inArray( $link, arr ) >= 0){
802                event.preventDefault();
803            }
804        });
805    });</script>
vendor: 1 bytes, line 805
805
806<script type="text/x-magento-init">
807{
808    "*": {
809        "RTA_GA4/js/tracker": {"measurementId":"G-JKBDYCC44R","currency":"CAD","storeName":"Nsor","isCookieRestrictionModeEnabled":false,"currentWebsite":1,"cookieName":"user_allowed_save_cookie"}    }
810}</script>
vendor: 1 bytes, line 810
810
811<script nonce="enQyOWVrZnAyeWhlMmFnY2ZhanJmZHp5dWJxdzFmc3k=">(() => {
812    let mstGdprCookieBar = {
813        config: {"allowUrl":"https:\/\/nsor.com\/gdpr_cookie\/cookie\/allow\/","declineUrl":"https:\/\/nsor.com\/gdpr_cookie\/cookie\/decline\/","countryConfigUrl":"https:\/\/nsor.com\/gdpr_cookie\/country\/config\/","lockScreen":true,"groupCookieName":"gdpr_cookie_groups","consentCookieName":"gdpr_cookie_consent","barEnabled":true,"cookieGroupTypes":{"1":"essential","2":"marketing","3":"functionality","4":"statistical"},"googleConsentEnabled":true,"uetConsentEnabled":false,"googleConsentTypes":["ad_user_data","ad_personalization","ad_storage","analytics_storage","personalization_storage","functionality_storage","security_storage"],"uetConsentTypes":["ad_storage"],"googleConsentDefault":{"ad_user_data":"denied","ad_personalization":"denied","ad_storage":"denied","analytics_storage":"denied","personalization_storage":"denied","functionality_storage":"denied","security_storage":"denied"},"uetConsentDefault":{"ad_storage":"denied"},"showDeclineButton":false,"isAllCountries":true,"countries":["AF","AX","AL","DZ","AS","AD","AO","AI","AQ","AG","AR","AM","AW","AU","AT","AZ","BS","BH","BD","BB","BY","BE","BZ","BJ","BM","BT","BO","BA","BW","BV","BR","IO","VG","BN","BG","BF","BI","KH","CM","CA","CV","BQ","KY","CF","TD","CL","CN","CX","CC","CO","KM","CG","CD","CK","CR","CI","HR","CU","CW","CY","CZ","DK","DJ","DM","DO","EC","EG","SV","GQ","ER","EE","SZ","ET","FK","FO","FJ","FI","FR","GF","PF","TF","GA","GM","GE","DE","GH","GI","GR","GL","GD","GP","GU","GT","GG","GN","GW","GY","HT","HM","HN","HK","HU","IS","IN","ID","IR","IQ","IE","IM","IL","IT","JM","JP","JE","JO","KZ","KE","KI","XK","KW","KG","LA","LV","LB","LS","LR","LY","LI","LT","LU","MO","MG","MW","MY","MV","ML","MT","MH","MQ","MR","MU","YT","MX","FM","MD","MC","MN","ME","MS","MA","MZ","MM","NA","NR","NP","NL","NC","NZ","NI","NE","NG","NU","NF","MP","KP","MK","NO","OM","PK","PW","PS","PA","PG","PY","PE","PH","PN","PL","PT","QA","RE","RO","RU","RW","WS","SM","ST","SA","SN","RS","SC","SL","SG","SX","SK","SI","SB","SO","ZA","GS","KR","ES","LK","BL","SH","KN","LC","MF","PM","VC","SD","SR","SJ","SE","CH","SY","TW","TJ","TZ","TH","TL","TG","TK","TO","TT","TN","TR","TM","TC","TV","UG","UA","AE","GB","US","UY","UM","VI","UZ","VU","VA","VE","VN","WF","EH","YE","ZM","ZW"],"version":"1"},
814
815        isSaved: function () {
816            if (this.getCookie(this.config.consentCookieName) < this.config.version) {
817                this.deleteCookieGroupsCookie();
818                return false;
819            }
820
821            return !!this.getCookie(this.config.groupCookieName);
822        },
823
824        getCookie(cookieCode) {
825            cookieCode += '=';
826            let cookieArr = document.cookie.split(';');
827            for (let i = 0; i < cookieArr.length; i++) {
828                let cookie = (cookieArr[i]).trim();
829                if (cookie.indexOf(cookieCode) === 0) {
830                    return cookie.substring(cookieCode.length, cookie.length);
831                }
832            }
833            return null;
834        },
835
836        setCookie: function (groupIds) {
837            let d = new Date();
838            d.setTime(d.getTime() + (365 * 24 * 60 * 60 * 1000));
839            let expires = "expires=" + d.toUTCString();
840            let cookieDomain = '.' + (new URL(window.location.href)).hostname;
841            document.cookie = "gdpr_cookie_consent=" + this.config.version + ";domain=" + cookieDomain + ";" + expires + ";path=/;SameSite=Lax";
842            let value = encodeURIComponent(groupIds.join(','));
843            document.cookie = "gdpr_cookie_groups=" + value + ";domain=" + cookieDomain + ";" + expires + ";path=/;SameSite=Lax";
844        },
845
846        deleteCookieGroupsCookie: function () {
847            let d = new Date();
848            d.setTime(0);
849            let expires = "expires=" + d.toUTCString();
850            let cookieDomain = '.' + (new URL(window.location.href)).hostname;
851            document.cookie = "gdpr_cookie_groups=;domain=" + cookieDomain + ";" + expires + ";path=/;SameSite=Lax";
852        },
853
854        show: function () {
855            let elBar = this.getElBar();
856            if (elBar) {
857                elBar.style.display = 'block';
858            }
859            if (window.location.href.indexOf('cookie') === -1 && this.config.lockScreen) {
860                this.showOverlay();
861                document.getElementsByTagName('body').item(0).style.overflow = 'hidden';
862            }
863        },
864
865        hide: function () {
866            let elBar = this.getElBar();
867            if (elBar) {
868                elBar.style.display = 'none';
869            }
870            this.hideOverlay();
871            document.getElementsByTagName('body').item(0).style.overflow = 'auto';
872        },
873
874        showOverlay: function () {
875            let elOverlay = this.getElOverlay();
876            if (elOverlay) {
877                elOverlay.style.display = 'block';
878            }
879        },
880
881        hideOverlay: function () {
882            let elOverlay = this.getElOverlay();
883            if (elOverlay) {
884                elOverlay.style.display = 'none';
885            }
886        },
887
888        handleAllow: function (agreeAll) {
889            this.hide();
890            let allowedGroupIds = this.getUserAllowedGroupIds(agreeAll);
891            if (allowedGroupIds.length) {
892                this.setCookie(allowedGroupIds);
893            }
894            if (this.config.googleConsentEnabled) {
895                let consent = this.config.barEnabled ? this.getGoogleConsentByAllowedGroupIds(allowedGroupIds) : this.config.googleConsentDefault;
896                this.saveGoogleConsent(consent);
897            }
898
899            const body = allowedGroupIds.reduce((body, groupId) => {
900                body.append('group_ids[]', groupId);
901                return body;
902            }, new URLSearchParams({}));
903            fetch(
904                this.config.allowUrl,
905                {
906                    method:  'post',
907                    body:    body,
908                    headers: {
909                        contentType:        'application/x-www-form-urlencoded; charset=UTF-8',
910                        'X-Requested-With': 'XMLHttpRequest'
911                    }
912                }
913            );
914        },
915
916        handleDecline: function () {
917            this.hide();
918
919            // Essential = required groups only (Essential cookie group). No anal
919ytics/marketing.
920            let requiredGroupIds = [1];
921
922            if (requiredGroupIds.length) {
923                this.setCookie(requiredGroupIds);
924            }
925            if (this.config.googleConsentEnabled) {
926                let consent = this.config.barEnabled
927                    ? this.getEssentialGoogleConsent()
928                    : this.config.googleConsentDefault;
929                this.saveGoogleConsent(consent);
930            }
931            fetch(
932                this.config.declineUrl,
933                {
934                    method:  'post',
935                    headers: {'X-Requested-With': 'XMLHttpRequest'}
936                }
937            );
938        },
939
940        /**
941         * Essential button Consent Mode v2 mapping.
942         * Analytics/ads stay denied; only security_storage is granted.
943         */
944        getEssentialGoogleConsent: function () {
945            let consent = {};
946            this.config.googleConsentTypes.forEach(function (consentType) {
947                consent[consentType] = 'denied';
948            });
949            consent['security_storage'] = 'granted';
950            consent['analytics_storage'] = 'denied';
951            consent['ad_storage'] = 'denied';
952            consent['ad_user_data'] = 'denied';
953            consent['ad_personalization'] = 'denied';
954            consent['personalization_storage'] = 'denied';
955
956            return consent;
957        },
958
959        enableGroupsAccordingWithSaved: function () {
960            if (!this.isSaved()) {
961                return;
962            }
963
964            let allowedCookieGroups = window.decodeURIComponent(this.getCookie(this.config.groupCookieName)).split(',');
965            let checkboxList = document.querySelectorAll('.mst-gdpr__cookie-settings--cookie-group-container .checkbox[data-group-id]');
966            checkboxList.forEach(function (checkbox) {
967                let groupId = checkbox.dataset.groupId;
968                if (!checkbox.disabled) {
969                    checkbox.checked = allowedCookieGroups.indexOf(groupId.toString()) !== -1;
970                }
971            });
972        },
973
974        getUserAllowedGroupIds: function (agreeAll) {
975            let checkboxList;
976            if (agreeAll) {
977                return [1,2,3,4];
978            } else {
979                checkboxList = document.querySelectorAll('.mst-gdpr__cookie-settings--cookie-group-container .checkbox[data-group-id]:checked');
980            }
981            let groupIds = [];
982            checkboxList.forEach(function (checkbox) {
983                groupIds.push(checkbox.dataset.groupId);
984            });
985
986            return groupIds;
987        },
988
989        // Google Consent Mode v2: update after visitor choice, persist for next page loads.
990        // Prefer dataLayer (Arguments form) so we do not invent window.gtag before Magento loads gtag.js.
991        sendConsentUpdate: function (consent) {
992            window.dataLayer = window.dataLayer || [];
993            if (typeof window.gtag === 'function') {
994                window.gtag('consent', 'update', consent);
995                return;
996            }
997            (function (dl, c) {
998                function gtag(){dl.push(arguments);}
999                gtag('consent', 'update', c);
1000            })(window.dataLayer, consent);
1001        },
1002
1003        saveGoogleConsent: function (consent) {
1004            this.sendConsentUpdate(consent);
1005            try {
1006                localStorage.setItem('mst-gdpr-google-consent-mode', JSON.stringify(consent));
1007            } catch (e) {}
1008        },
1009
1010        getGoogleConsentByAllowedGroupIds: function (allowedGroupIds) {
1011            let consent = {};
1012            this.config.googleConsentTypes.forEach(function (consentType) {
1013                consent[consentType] = 'denied';
1014            });
1015
1016            for (let i = 0; i < allowedGroupIds.length; i++) {
1017                let groupId = allowedGroupIds[i];
1018                let type = this.config.cookieGroupTypes[groupId];
1019                if (!type) {
1020                    type = 'other';
1021                }
1022
1023                switch (type) {
1024                    case 'essential':
1025                        consent['security_storage'] = 'granted';
1026                        break;
1027                    case 'marketing':
1028                        consent['ad_storage'] = 'granted';
1029                        consent['ad_user_data'] = 'granted';
1030                        consent['ad_personalization'] = 'granted';
1031                        break;
1032                    case 'functionality':
1033                        consent['functionality_storage'] = 'granted';
1034                        consent['personalization_storage'] = 'granted';
1035                        break;
1036                    case 'statistical':
1037                        consent['analytics_storage'] = 'granted';
1038                        break;
1039                }
1040            }
1041
1042            return consent;
1043        },
1044
1045        // Init
1046        events: function () {
1047            let elBar = this.getElBar();
1048            if (!elBar) {
1049                return;
1050            }
1051            let elSettingsButton = elBar.querySelector('[data-trigger-settings="trigger"]');
1052            if (elSettingsButton) {
1053                elSettingsButton.addEventListener('click', function () {
1054                    this.enableGroupsAccordingWithSaved();
1055                    window.dispatchEvent(new Event('mstGdprCookieOpenSettingsModalRequest'));
1056                }.bind(this));
1057            }
1058
1059            let elAgreeAllButton = elBar.querySelector('[data-trigger-settings="agree"]');
1060            if (elAgreeAllButton) {
1061                elAgreeAllButton.addEventListener('click', this.handleAllow.bind(this, true));
1062            }
1063
1064            let elDeclineButton = elBar.querySelector('[data-trigger-settings="decline"]');
1065            if (elDeclineButton) {
1066                elDeclineButton.addEventListener('click', this.handleDecline.bind(this));
1067            }
1068        },
1069
1070        customEvents: function () {
1071            window.addEventListener('mstGdprCookieOpenBarRequest', this.show.bind(this));
1072            window.addEventListener('mstGdprCookieSettingsModalApply', this.handleAllow.bind(this, false));
1073        },
1074
1075        getElBar: function () {
1076            return document.getElementById('gdprCookieBar');
1077        },
1078
1079        getElOverlay: function () {
1080            return document.getElementById('gdprCookieBarOverlay');
1081        },
1082
1083        showIfNotSaved: function () {
1084            if (this.isSaved()) {
1085                this.enableGroupsAccordingWithSaved();
1086                this.hide();
1087            } else {
1088                this.show();
1089            }
1090        },
1091
1092        isAllowedCountry: function (countryCode) {
1093            return this.config.countries.indexOf(countryCode) !== -1;
1094        },
1095
1096        init: function (customEvents = true) {
1097            if (!this.config.barEnabled) {
1098                this.hide();
1099                this.handleAllow(true);
1100                return;
1101            }
1102
1103            this.events();
1104            if (customEvents) {
1105                this.customEvents();
1106            }
1107
1108            if (this.config.isAllCountries) {
1109                this.showIfNotSaved();
1110            } else {
1111                let countryCode = localStorage.getItem('mst-gdpr-country-code')
1112                if (countryCode) {
1113                    if (this.isAllowedCountry(countryCode)) {
1114                        this.showIfNotSaved();
1115                    } else {
1116                        this.hide();
1117                        this.handleAllow(true);
1118                    }
1119                } else {
1120                    this.hide();
1121                    fetch(this.config.countryConfigUrl + '?_=' + Date.now())
1122                        .then(function (response) {
1123                            return response.json();
1124                        })
1125                        .then(function (data) {
1126                            if (data.CountryIsoCode) {
1127                                localStorage.setItem('mst-gdpr-country-code', data.CountryIsoCode);
1128                                if (data.isShowCookieBar) {
1129                                    this.showIfNotSaved();
1130                                } else {
1131                                    this.hide();
1132                                    this.handleAllow(true);
1133                                }
1134                            }
1135                        }.bind(this));
1136                }
1137            }
1138        }
1139    };
1140
1141    document.addEventListener('DOMContentLoaded', function () {
1142        mstGdprCookieBar.init();
1143
1144        window.addEventListener('turbolinks:load', function () {
1145            mstGdprCookieBar.init(false);
1146        });
1147    });
1148})();</script>
vendor: 1 bytes, line 1148
1148
1149<script  nonce="enQyOWVrZnAyeWhlMmFnY2ZhanJmZHp5dWJxdzFmc3k=" type="text/javascript">
1150    document.addEventListener('DOMContentLoaded', function () {
1151        const modalId = "6ac1c90699bd9";
1152        const modalTitle = "Privacy Overview";
1153        const modalDescription = "This website uses cookies to improve your experience while you navigate through the website. Out of these cookies, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may have an effect on your browsing experience.";
1154        const cookieGroupsHtml = "  <div class=\"mst-gdpr__cookie-settings--cookie-group-container mst-gdpr__cookie-settings--cookie-group-container-1\" data-collapsible=\"true\" role=\"listitem\"><div class=\"title-container\" role=\"tablist\"><h4 class=\"title\" role=\"tab\" aria-selected=\"false\" aria-expanded=\"false\" tabindex=\"0\">Essential<\/h4> <label class=\"switch\" for=\"allowed-group-1\"><span class=\"hidden\">Allow Essential cookies<\/span> <input id=\"allowed-group-1\" class=\"checkbox\" type=\"checkbox\" value=\"1\" disabled checked data-group-id=\"1\" name=\"allowed-group-1\" aria-label=\"Allow&#x20;Essential&#x20;cookies\" ><span class=\"slider round disabled\" aria-hidden=\"true\"><\/span><\/label> <div class=\"content\" role=\"tabpanel\" aria-hidden=\"true\" style=\"display: none;\"><div><\/div><table role=\"table\"><caption class=\"hidden\">Cookies in Essential group<\/caption><thead><tr><th scope=\"col\">Name<\/th><th scope=\"col\">Description<\/th><\/tr><\/thead><tbody> <tr><td>ADD_TO_CART<\/td><td>(Adobe Commerce only) Used by Google Tag Manager<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>GUEST-VIEW<\/td><td>Stores the Order ID that guest shoppers use to retrieve their order status. Guest orders view. Used in Orders and Returns widgets<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>LOGIN_REDIRECT<\/td><td>Preserves the destination page that was loading before the customer was directed to log in<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>MAGE-BANNERS-CACHE-STORAGE<\/td><td>(Adobe Commerce only) Stores banner content locally to improve performance<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>MAGE-MESSAGES<\/td><td>Tracks error messages and other notifications that are shown to the user<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>MAGE-TRANSLATION-STORAGE<\/td><td>Stores translated content when requested by the shopper<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>MAGE-TRANSLATION-FILE-VERSION<\/td><td>Tracks the version of translations in local storage<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>PRODUCT_DATA_STORAGE<\/td><td>Stores configuration for product data related to Recently Viewed\/Compared Products<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>RECENTLY_COMPARED_PRODUCT<\/td><td>Stores product IDs of recently compared products<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>RECENTLY_COMPARED_PRODUCT_PREVIOUS<\/td><td>Stores product IDs of previously compared products for easy navigation<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>RECENTLY_VIEWED_PRODUCT<\/td><td>Stores product IDs of recently viewed products for easy navigation<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>RECENTLY_VIEWED_PRODUCT_PREVIOUS<\/td><td>Stores product IDs of recently previously viewed products for easy navigation<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>REMOVE_FROM_CART<\/td><td>(Adobe Commerce only) Used by Google Tag Manager<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>STF<\/td><td>Records the time messages are sent by the SendFriend<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>X-MAGENTO-VARY<\/td><td>Configuration setting that improves performance when using Varnish static content caching<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>FORM_KEY<\/td><td>A security measure that appends a random string to all form submissions to protect the data from Cross-Site Request Forgery<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>
1154MAGE-CACHE-SESSID<\/td><td>The value of this cookie triggers the cleanup of local cache storage<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>MAGE-CACHE-STORAGE<\/td><td>Local storage of visitor-specific content that enables ecommerce functions<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>MAGE-CACHE-STORAGE-SECTION-INVALIDATION<\/td><td>Forces local storage of specific content sections that should be invalidated<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>PERSISTENT_SHOPPING_CART<\/td><td>Stores the key (ID) of persistent cart to make it possible to restore the cart for an anonymous shopper<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>PRIVATE_CONTENT_VERSION<\/td><td>Appends a random, unique number and time to pages with customer content to prevent them from being cached on the server<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>SECTION_DATA_IDS<\/td><td>Stores customer-specific information related to shopper-initiated actions, such as wish list display and checkout information<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>STORE<\/td><td>Tracks the specific store view\/locale selected by the shopper<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr><\/tbody><\/table><\/div><\/div><\/div>  <div class=\"mst-gdpr__cookie-settings--cookie-group-container mst-gdpr__cookie-settings--cookie-group-container-4\" data-collapsible=\"true\" role=\"listitem\"><div class=\"title-container\" role=\"tablist\"><h4 class=\"title\" role=\"tab\" aria-selected=\"false\" aria-expanded=\"false\" tabindex=\"0\">Statistical<\/h4> <label class=\"switch\" for=\"allowed-group-4\"><span class=\"hidden\">Allow Statistical cookies<\/span> <input id=\"allowed-group-4\" class=\"checkbox\" type=\"checkbox\" value=\"1\"  checked data-group-id=\"4\" name=\"allowed-group-4\" aria-label=\"Allow&#x20;Statistical&#x20;cookies\" ><span class=\"slider round \" aria-hidden=\"true\"><\/span><\/label> <div class=\"content\" role=\"tabpanel\" aria-hidden=\"true\" style=\"display: none;\"><div><\/div><table role=\"table\"><caption class=\"hidden\">Cookies in Statistical group<\/caption><thead><tr><th scope=\"col\">Name<\/th><th scope=\"col\">Description<\/th><\/tr><\/thead><tbody> <tr><td>_ga<\/td><td>Used by Google Analytics<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>_ga_*<\/td><td>Used by Google Analytics<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>_gcl_au<\/td><td>Used by Google Analytics<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>_tt_enable_cookie<\/td><td>Used by TikTok Pixel<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>_ttp<\/td><td>Used by TikTok Pixel<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>_fbp<\/td><td>Used by Facebook Pixel<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>_fbc<\/td><td>Used by Facebook Pixel<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr><\/tbody><\/table><\/div><\/div><\/div>  <div class=\"mst-gdpr__cookie-settings--cookie-group-container mst-gdpr__cookie-settings--cookie-group-container-2\" data-collapsible=\"true\" role=\"listitem\"><div class=\"title-container\" role=\"tablist\"><h4 class=\"title\" role=\"tab\" aria-selected=\"false\" aria-expanded=\"false\" tabindex=\"0\">Marketing<\/h4> <label class=\"switch\" for=\"allowed-group-2\"><span class=\"hidden\">Allow Marketing cookies<\/span> <input id=\"allowed-group-2\" class=\"checkbox\" type=\"checkbox\" value=\"1\"  checked data-group-id=\"2\" name=\"allowed-group-2\" aria-label=\"Allow&#x20;Marketing&#x20;cookies\" ><span class=\"slider round \" aria-hidden=\"true\"><\/span><\/label> <div class=\"content\" role=\"tabpanel\" aria-hidden=\"true\" style=\"display: none;\"><div><\/div><table role=\"table\"><caption class=\"hidden\">Cookies in Marketing group<\/caption><thead><tr><th scope=\"col\">Name<\/th><th scope=\"col\">Description<\/th><\/tr><\/thead><tbody> <tr><td>CUSTOMER_SEGMENT_IDS<\/td><td>Stores your Customer Segment ID<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>EXTERNAL_NO_CACHE<\/td><td>A flag that, indicates whether caching is on or off<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>FRONTEND<\/td><td>Your session ID on the server<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>GUEST-VIEW<\/td><td>Allows guests to edit their orders<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>LAST_CATEGORY<\/td><td>The last category you visited<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>LAST_PRODUCT<\/td><td>The last product you looked at<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>NEWMESSAGE<\/td><td>Indicates whether a new message has been received<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>NO_CACHE<\/td><td>Indicates whether it is allowed to use cache<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr><\/tbody><\/table><\/div><\/div><\/div>
1154  <div class=\"mst-gdpr__cookie-settings--cookie-group-container mst-gdpr__cookie-settings--cookie-group-container-3\" data-collapsible=\"true\" role=\"listitem\"><div class=\"title-container\" role=\"tablist\"><h4 class=\"title\" role=\"tab\" aria-selected=\"false\" aria-expanded=\"false\" tabindex=\"0\">Functionality<\/h4> <label class=\"switch\" for=\"allowed-group-3\"><span class=\"hidden\">Allow Functionality cookies<\/span> <input id=\"allowed-group-3\" class=\"checkbox\" type=\"checkbox\" value=\"1\"  checked data-group-id=\"3\" name=\"allowed-group-3\" aria-label=\"Allow&#x20;Functionality&#x20;cookies\" ><span class=\"slider round \" aria-hidden=\"true\"><\/span><\/label> <div class=\"content\" role=\"tabpanel\" aria-hidden=\"true\" style=\"display: none;\"><div><\/div><table role=\"table\"><caption class=\"hidden\">Cookies in Functionality group<\/caption><thead><tr><th scope=\"col\">Name<\/th><th scope=\"col\">Description<\/th><\/tr><\/thead><tbody> <tr><td>MG_DNT<\/td><td>Allows you to restrict Adobe Commerce data collection if you have custom code to manage cookie consent on your site<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>USER_ALLOWED_SAVE_COOKIE<\/td><td>Used for cookie restriction mode<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>AUTHENTICATION_FLAG<\/td><td>Indicates if a shopper has signed in or signed out<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>DATASERVICES_CUSTOMER_ID<\/td><td>Indicates if a shopper has signed in or signed out<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>DATASERVICES_CUSTOMER_GROUP<\/td><td>Indicates a customer&#039;s group. This cookie is stored as sha1 checksum of the customer&#039;s group ID<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>DATASERVICES_CART_ID<\/td><td>Identifies a shopper&#039;s cart actions<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr> <tr><td>DATASERVICES_PRODUCT_CONTEXT<\/td><td>Identifies a shopper&#039;s product interactions. This cookie contains the customer&#039;s unique quote ID in the system<br\/><small> Lifetime: 1 Year<\/small><\/td><\/tr><\/tbody><\/table><\/div><\/div><\/div>";
1155
1156        function createModal() {
1157            if (document.getElementById('mst-gdpr-modal-' + modalId)) {
1158                return document.getElementById('mst-gdpr-modal-' + modalId);
1159            }
1160
1161            const modal = document.createElement('aside');
1162            modal.id = 'mst-gdpr-modal-' + modalId;
1163            modal.className = 'modal-popup mst-gdpr__cookie-settings--cookie-modal-settings modal-slide _inner-scroll';
1164            modal.setAttribute('role', 'dialog');
1165            modal.setAttribute('aria-labelledby', 'modal-title-' + modalId);
1166            modal.setAttribute('aria-describedby', 'modal-content-' + modalId);
1167            modal.setAttribute('data-role', 'modal');
1168            modal.setAttribute('data-type', 'popup');
1169            modal.setAttribute('tabindex', '0');
1170
1171            modal.innerHTML = `
1172            <div class="modal-inner-wrap" data-role="focusable-scope">
1173                <header class="modal-header">
1174                    <div id="modal-title-${modalId}" class="modal-title" data-role="title">${modalTitle}</div>
1175                    <button class="action-close" data-role="closeBtn" type="button" aria-label="Close cookie settings dialog"><span>Close</span></button></header>
1176                <div id="modal-content-${modalId}" class="modal-content" data-role="content">
1177                    <div class="content">
1178                        <div class="modal-text">${modalDescription}</div>
1179                        <div class="mst-gdpr__cookie-settings--group-content" role="list"></div></div></div>
1180                <footer class="modal-footer">
1181                    <button class="action primary mst-gdpr__cookie-settings--success-btn"
1182                            type="button"
1183                            data-role="action"
1184                            aria-label="Apply&#x20;cookie&#x20;settings&#x20;and&#x20;close&#x20;dialog">
1185                        <span>Apply</span></button></footer></div>
1186        `;
1187
1188            document.body.appendChild(modal);
1189
1190            modal.querySelector('.action-close').addEventListener('click', () => closeModal(modal));
1191            modal.querySelector('.mst-gdpr__cookie-settings--success-btn').addEventListener('click', () => {
1192                closeModal(modal);
1193                window.dispatchEvent(new Event('mstGdprCookieSettingsModalApply'));
1194            });
1195
1196            return modal;
1197        }
1198
1199        function openModal() {
1200            const modal = createModal();
1201
1202            const groupContainer = modal.querySelector('.mst-gdpr__cookie-settings--group-content');
1203            if (groupContainer && groupContainer.innerHTML === '') {
1204                groupContainer.innerHTML = cookieGroupsHtml;
1205
1206
1207                }
1208                const groups = groupContainer.querySelectorAll('.mst-gdpr__cookie-settings--cookie-group-container');
1209                groups.forEach(group => {
1210
1211                    const groupId = group.querySelector('input').getAttribute('data-group-id');
1212                    if (window.mstGdprCookieGroupInit) {
1213                        window.mstGdprCookieGroupInit(groupId);
1214                    }
1215                    let mstGdpr
1215CookieGroup = {
1216                        groupId: groupId,
1217
1218                        collapse: function () {
1219                            let elHeader = this.getElHeader();
1220                            if (elHeader) {
1221                                elHeader.ariaSelected = 'false';
1222                                elHeader.ariaExpanded = 'false';
1223                            }
1224                            let elContent = this.getElContent();
1225                            if (elContent) {
1226                                elContent.ariaHidden = 'true';
1227                                elContent.style.display = 'none';
1228                            }
1229                        },
1230
1231                        expand: function () {
1232                            let elHeader = this.getElHeader();
1233                            if (elHeader) {
1234                                elHeader.ariaSelected = 'true';
1235                                elHeader.ariaExpanded = 'true';
1236                            }
1237                            let elContent = this.getElContent();
1238                            if (elContent) {
1239                                elContent.ariaHidden = 'false';
1240                                elContent.style.display = '';
1241                            }
1242                        },
1243
1244                        toggle: function () {
1245                            let elHeader = this.getElHeader();
1246                            if (elHeader) {
1247                                if (elHeader.ariaExpanded === 'true') {
1248                                    this.collapse();
1249                                } else {
1250                                    this.expand();
1251                                }
1252                            }
1253                        },
1254
1255                        events: function () {
1256                            let elHeader = this.getElHeader();
1257                            if (elHeader) {
1258                                elHeader.addEventListener('click', this.toggle.bind(this));
1259                                elHeader.addEventListener('keydown', function (e) {
1260                                    if (e.altKey || e.ctrlKey) {
1261                                        return;
1262                                    }
1263                                    switch (e.code) {
1264                                        case 'Space':
1265                                        case 'Enter':
1266                                            this.toggle.bind(this)();
1267                                    }
1268                                }.bind(this));
1269                            }
1270                        },
1271
1272                        getElContainer: function () {
1273                            return document.querySelector('.modal-content .mst-gdpr__cookie-settings--cookie-group-container.mst-gdpr__cookie-settings--cookie-group-container-' + this.groupId);
1274                        },
1275
1276                        getElHeader: function () {
1277                            let elContainer = this.getElContainer();
1278                            return elContainer ? elContainer.querySelector('h4.title') : null;
1279                        },
1280
1281                        getElContent: function () {
1282                            let elContainer = this.getElContainer();
1283                            return elContainer ? elContainer.querySelector('div.content') : null;
1284                        },
1285
1286                        init: function () {
1287                            this.collapse();
1288                            this.events();
1289                        }
1290                    }
1291                    mstGdprCookieGroup.init();
1292                });
1293
1294
1295            const overlay = document.createElement('div');
1296            overlay.className = 'modals-overlay';
1297            overlay.style.zIndex = '10002';
1298            modal.parentNode.insertBefore(overlay, modal.nextSibling);
1299
1300            modal.style.zIndex = '10003';
1301            modal.classList.add('_show');
1302            overlay.addEventListener('click', () => closeModal(modal, overlay));
1303        }
1304
1305        function closeModal(modal, overlay = null) {
1306            if (modal) {
1307                modal.classList.remove('_show');
1308                modal.style.removeProperty('z-index');
1309            }
1310            if (overlay) {
1311                overlay.remove();
1312            } else {
1313                const existingOverlay = document.querySelector('.modals-overlay');
1314                if (existingOverlay) existingOverlay.remove();
1315            }
1316        }
1317        if (typeof mstGdprCookieGroup === 'function') {
1318            mstGdprCookieGroup.init();
1319        }
1320        window.addEventListener('mstGdprCookieOpenSettingsModalRequest', openModal
1321        );
1322    });</script>
vendor: 1 bytes, line 1322
1322
1323<script>(function(){function c(){var b=a.contentDocument||(a.contentWindow&&a.contentWindow.document);if(b){var d=b.createElement('script');d.innerHTML="window.__CF$cv$params={r:'a4512007bf751129',t:'MTc5MTA4NDgwNg=='};var a=document.createElement('script');a.src='/cdn-cgi/challenge-platform/scripts/jsd/main.js';document.getElementsByTagName('head')[0].appendChild(a);";b.getElementsByTagName('head')[0].appendChild(d)}}if(document.body){var a=document.createElement('iframe');a.height=1;a.width=1;a.style.position='absolute';a.style.top=0;a.style.left=0;a.style.border='none';a.style.visibility='hidden';document.body.appendChild(a);if('loading'!==document.readyState)c();else if(window.addEventListener)document.addEventListener('DOMContentLoaded',c);else{var e=document.onreadystatechange||function(){};document.onreadystatechange=function(b){e(b);'loading'!==document.readyState&&(document.onreadystatechange=e,c())}}}})();</script>
1323<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"dd19e92e163c4f4ebba5a5bd20124e6a","r":1,"spa":2}' crossorigin="anonymous"></script>
1323
1324</body></html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.