PageSourceSearch

https://decoratorswarehouse.com/login.php?from=account.php%3Faction%3Dorder_status

html decoratorswarehouse.com collected 2026-09-26 06:38:13 UTC 93,754 bytes, 1,568 lines download raw bytes

1<!DOCTYPE html>
2<html class="no-js" lang="en">
3    <head>
4            <title>Decorator&#x27;s Warehouse - Sign in</title>
5
6        
6<script type="application/ld+json">
7        {
8          "@context": "https://schema.org/",
9          "@type": "WebSite",
10          "name": "Decorators Warehouse",
11          "url": "https://decoratorswarehouse.com/",
12          "potentialAction": {
13            "@type": "SearchAction",
14            "target": "https://decoratorswarehouse.com/search-magic.html?query={search_term_string}",
15            "query-input": "required name=search_term_string"
16          }
17        }
18        </script>
18
19
20        <link rel="dns-prefetch preconnect" href="https://cdn11.bigcommerce.com/s-zqoar2tzjl" crossorigin>
21        <link rel="dns-prefetch" href="https://decoratorswarehouse.com">
22  	    <link rel="preconnect" href="//cdn11.bigcommerce.com" crossorigin>
23  	    <link rel="preconnect" href="//f.vimeocdn.com" crossorigin>
24  	    <link rel="preconnect" href="//cdn.jsdelivr.net" crossorigin>
25        <link rel="preconnect" href="//use.typekit.net" crossorigin>
26        <link rel="preconnect" href="https://fonts.googleapis.com">
27        <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
28
29        <meta name="keywords" content="christmas trees, christmas decorations, christmas ornaments, christmas store"><meta name="description" content="Decorator’s Warehouse is the largest Christmas decorations store in Texas, now delivering worldwide. Find everything you need with seasonal decorations, decor tutorials, and more to have the best holidays ever!"><meta name='platform' content='bigcommerce.stencil' />
30        
31        
31<script async type="text/javascript" src="//static.klaviyo.com/onsite/js/klaviyo.js?company_id=UAfAKj"></script>
31
32        
32<script>(function(d) {var config = {kitId: 'den7rsg',scriptTimeout: 3000,async: true},h=d.documentElement,t=setTimeout(function(){h.className=h.className.replace(/\bwf-loading\b/g,"")+" wf-inactive";},config.scriptTimeout),tk=d.createElement("script"),f=false,s=d.getElementsByTagName("script")[0],a;h.className+=" wf-loading";tk.src="https://use.typekit.net/"+config.kitId+".js";tk.async=true;tk.onload=tk.onreadystatechange=function(){a=this.readyState;if(f||a&&a!="complete"&&a!="loaded")return;f=true;clearTimeout(t);try{Typekit.load(config)}catch(e){}};s.parentNode.insertBefore(tk,s)})(document);</script>
32
33         
34
35        <link href="https://cdn11.bigcommerce.com/s-zqoar2tzjl/product_images/favicon.png?t=1594874875" rel="shortcut icon">
36        <meta name="viewport" content="width=device-width, initial-scale=1">
37        <link rel="preload" as="script" crossorigin="anonymous" href="https://kit.fontawesome.com/d3639a8563.js" />
38        <link
39            rel="preload"
40            href="https://fonts.googleapis.com/css2?family=Libre+Baskerville:ital,wght@0,400;0,700;1,400&display=swap"
41            as="style"
42            onload="this.onload=null;this.rel='stylesheet'"
43        />
44        <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/swiper@10/swiper-bundle.min.css" />
45        <noscript>
46            <link
47                href="https://fonts.googleapis.com/css2?family=Libre+Baskerville:ital,wght@0,400;0,700;1,400&display=swap"
48                rel="stylesheet"
49                type="text/css"
50            />
51        </noscript>
52        
52<script>
53            document.documentElement.className = document.documentElement.className.replace('no-js', 'js');
54        </script>
54
55        
55<script>
56            window.lazySizesConfig = window.lazySizesConfig || {};
57            window.lazySizesConfig.loadMode = 1;
58        </script>
58
59        
59<script async src="https://cdn11.bigcommerce.com/s-zqoar2tzjl/stencil/32030570-9a5d-013f-a98b-120a24f73952/e/16b874b0-97e5-013f-45bc-4e388f6f202b/dist/theme-bundle.head_async.js"></script>
59
60
61        
62        <link data-stencil-stylesheet href="https://cdn11.bigcommerce.com/s-zqoar2tzjl/stencil/32030570-9a5d-013f-a98b-120a24f73952/e/16b874b0-97e5-013f-45bc-4e388f6f202b/css/theme-3dd919f0-9a5d-013f-05ec-12185c6939c9.css" rel="stylesheet">
63        <style>
64            /* see _product-view.scss */
65            .productDetails .productCarousel .productCarousel-slide .card-title {
66                -webkit-box-orient: vertical;
67            }
68        </style>
69
70        <style>
71        .grecaptcha-cya {
72            font-size: 0.75em;
73            color: #333;
74            margin-bottom: 1rem;
75        }
76        .grecaptcha-cya a {
77            text-decoration: underline;
78        }
79        .grecaptcha-badge { visibility: hidden; }</style>
80
81        <!-- Start Tracking Code for analytics_facebook -->
82
83<script data-bc-cookie-consent="4" type="text/plain">
84!function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod?n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0;t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window,document,'script','https://connect.facebook.net/en_US/fbevents.js');
85
86fbq('set', 'autoConfig', 'false', '523408588768065');
87fbq('dataProcessingOptions', []);
88fbq('init', '523408588768065', {"external_id":"2e5f7d16-14a3-4021-ab6c-6dbcd3387471"});
89fbq('set', 'agent', 'bigcommerce', '523408588768065');
90
91function trackEvents() {
92    var pathName = window.location.pathname;
93
94    
95
96    // Search events start -- only fire if the shopper lands on the /search.php page
97    if (pathName.indexOf('/search.php') === 0 && getUrlParameter('search_query')) {
98        fbq('trackSingle', '523408588768065', 'Search', {
99            content_type: 'product_group',
100            content_ids: [],
101            search_string: getUrlParameter('search_query')
102        });
103    }
104    // Search events end
105
106    // Wishlist events start -- only fire if the shopper attempts to add an item to their wishlist
107    if (pathName.indexOf('/wishlist.php') === 0 && getUrlParameter('added_product_id')) {
108        fbq('trackSingle', '523408588768065', 'AddToWishlist', {
109            content_type: 'product_group',
110            content_ids: []
111        });
112    }
113    // Wishlist events end
114
115    // Lead events start -- only fire if the shopper subscribes to newsletter
116    if (pathName.indexOf('/subscribe.php') === 0 && getUrlParameter('result') === 'success') {
117        fbq('trackSingle', '523408588768065', 'Lead', {});
118    }
119    // Lead events end
120
121    // Registration events start -- only fire if the shopper registers an account
122    if (pathName.indexOf('/login.php') === 0 && getUrlParameter('action') === 'account_created') {
123        fbq('trackSingle', '523408588768065', 'CompleteRegistration', {}, "");
124    }
125    // Registration events end
126
127    
128
129    function getUrlParameter(name) {
130        var cleanName = name.replace(/[\[]/, '\[').replace(/[\]]/, '\]');
131        var regex = new RegExp('[\?&]' + cleanName + '=([^&#]*)');
132        var results = regex.exec(window.location.search);
133        return results === null ? '' : decodeURIComponent(results[1].replace(/\+/g, ' '));
134    }
135}
136
137if (window.addEventListener) {
138    window.addEventListener("load", trackEvents, false)
139}
140</script>
140
141<noscript><img height="1" width="1" style="display:none" alt="null" src="https://www.facebook.com/tr?id=523408588768065&ev=PageView&noscript=1&a=plbigcommerce1.2&eid="/></noscript>
142
143<!-- End Tracking Code for analytics_facebook -->
144
145<!-- Start Tracking Code for analytics_googleanalytics4 -->
146
147<script data-cfasync="false" src="https://cdn11.bigcommerce.com/shared/js/google_analytics4_bodl_subscribers-358423becf5d870b8b603a81de597c10f6bc7699.js" integrity="sha256-gtOfJ3Avc1pEE/hx6SKj/96cca7JvfqllWA9FTQJyfI=" crossorigin="anonymous"></script>
vendor: 1 bytes, line 147
147
148<script data-cfasync="false">
149  (function () {
150    window.dataLayer = window.dataLayer || [];
151
152    function gtag(){
153        dataLayer.push(arguments);
154    }
155
156    function initGA4(event) {
157         function setupGtag() {
158            function configureGtag() {
159                gtag('js', new Date());
160                gtag('set', 'developer_id.dMjk3Nj', true);
161                gtag('config', 'G-GTY8VLFPQE');
162            }
163
164            var script = document.createElement('script');
165
166            script.src = 'https://www.googletagmanager.com/gtag/js?id=G-GTY8VLFPQE';
167            script.async = true;
168            script.onload = configureGtag;
169
170            document.head.appendChild(script);
171        }
172
173        setupGtag();
174
175        if (typeof subscribeOnBodlEvents === 'function') {
176            subscribeOnBodlEvents('G-GTY8VLFPQE', true);
177        }
178
179        window.removeEventListener(event.type, initGA4);
180    }
181
182    gtag('consent', 'default', {"ad_storage":"denied","ad_user_data":"denied","ad_personalization":"denied","analytics_storage":"denied","functionality_storage":"denied"})
183            
184
185    var eventName = document.readyState === 'complete' ? 'consentScriptsLoaded' : 'DOMContentLoaded';
186    window.addEventListener(eventName, initGA4, false);
187  })()
188</script>
188
189
190<!-- End Tracking Code for analytics_googleanalytics4 -->
191
192<!-- Start Tracking Code for analytics_siteverification -->
193
194<meta name="facebook-domain-verification" content="dwfctcbccvrujoafoz4tog7j7hd6ke"/>
195<meta name="google-site-verification" content="hnQTM6vx9JvD2HrTbKyfcF9nc56cqeaM81WRSzWUokM" />
196<meta name="google-site-verification" content="QPv5nRhF656ygfXbM-NVxTrwFYXIrLlFJD0sw8aGomM" />
197<meta name="google-site-verification" content="Ke9Fs7kb2ssXGh43ivBsFckEXXg0ZDKVVYhzo3cWdOk" />
vendor: 66 bytes, lines 197-200
197
198
199
200<script async src="https://www.googletagmanager.com/gtag/js?id=
200UA-150705564-1
vendor: 12 bytes, line 200
200"></script>
201<script>
vendor: 127 bytes, lines 202-205
202window.dataLayer = window.dataLayer || [];
203function gtag(){dataLayer.push(arguments);}
204gtag('js', new Date());
205gtag('config', '
205UA-150705564-1
vendor: 4 bytes, line 205
205');
206gtag('config', 'AW-779432509', {'allow_enhanced_conversions': true});
207
208</script>
208  
209
210<!-- End Tracking Code for analytics_siteverification -->
211
212
213<script type="text/javascript" src="https://checkout-sdk.bigcommerce.com/v1/loader.js" defer ></script>
vendor: 77 bytes, lines 213-214
213
214<script src="https://www.google.com/recaptcha/api.js" async defer></script>
215<script>window.consentManagerStoreConfig = function () { return {"storeName":"Decorator's Warehouse","privacyPolicyUrl":"https:\/\/decoratorswarehouse.com\/privacy-policy\/","writeKey":null,"improvedConsentManagerEnabled":true,"AlwaysIncludeScriptsWithConsentTag":true}; };</script>
vendor: 1 bytes, line 215
215
216<script type="text/javascript" src="https://cdn11.bigcommerce.com/shared/js/bodl-consent-32a446f5a681a22e8af09a4ab8f4e4b6deda6487.js" integrity="sha256-uitfaufFdsW9ELiQEkeOgsYedtr3BuhVvA4WaPhIZZY=" crossorigin="anonymous" defer></script>
vendor: 1 bytes, line 216
216
217<script type="text/javascript" src="https://cdn11.bigcommerce.com/shared/js/storefront/consent-manager-config-d53a4773861141b0624d84967b4c0a379d13a5fe.js" defer></script>
vendor: 1 bytes, line 217
217
218<script type="text/javascript" src="https://cdn11.bigcommerce.com/shared/js/storefront/consent-manager-08633fe15aba542118c03f6d45457262fa9fac88.js" defer></script>
vendor: 1 bytes, line 218
218
219<script type="text/javascript">
220var BCData = {};
221</script>
vendor: 1 bytes, line 221
221
222<script data-bc-cookie-consent="4" type="text/plain" src='https://cdn.attn.tv/decoratorswarehouse/dtag.js'   ></script>
222<!-- Hotjar Tracking Code for https://decoratorswarehouse.com/ -->
223<script>
vendor: 125 bytes, lines 223-226
223
224    (function(h,o,t,j,a,r){
225        h.hj=h.hj||function(){(h.hj.q=h.hj.q||[]).push(arguments)};
226        h._hjSettings={hjid:
2263467703
vendor: 258 bytes, lines 226-231
226,hjsv:6};
227        a=o.getElementsByTagName('head')[0];
228        r=o.createElement('script');r.async=1;
229        r.src=t+h._hjSettings.hjid+j+h._hjSettings.hjsv;
230        a.appendChild(r);
231    })(window,document,'https://static.hotjar.com/c/hotjar-','.js?sv=');
232</script>
232<script data-bc-cookie-consent="3" type="text/plain">
233  /*
234    replace tagUrl with the tag url you get from app.edgetag.io when onboarding is completed
235    Ex: if the tag url is `d.mysite.com` then do the following change
236        const tagUrl = 'https://d.mysite.com';
237  */
238  !(function () {
239    const tagUrl = 'https://vgcgz.decoratorswarehouse.com';
240
241    !(function (u) {
242      window.edgetag =
243        window.edgetag ||
244        function () {
245          (edgetag.stubs = edgetag.stubs || []).push(arguments);
246        };
247      const t = document.createElement('script');
248      (t.type = 'text/javascript'), (t.src = u), (t.async = !0);
249      const e = document.getElementsByTagName('script')[0];
250      e.parentNode.insertBefore(t, e);
251    })(`${tagUrl}/load`);
252
253    edgetag('init', {
254      edgeURL: tagUrl,
255      disableConsentCheck: true,
256    });
257  })();
258</script>
258
259
260<script data-bc-cookie-consent="3" type="text/plain">
261  !(function () {
262
263    const getInputValue = (form, selector) => {
264      const inputElement = form.querySelector(selector) || {}
265      return inputElement.value
266    }
267
268    const sendUser = (user) => {
269      if (!user || !Object.keys(user).length) {
270        return;
271      }
272      edgetag('data', user);
273    };
274
275    const getUser = (form, selectors) => {
276      const user = {};
277      if (!selectors) {
278        return user;
279      }
280      Object.entries(selectors).forEach(([userKey, selector]) => {
281        if (!selector || selector.length === 0) {
282          return;
283        }
284        const selectorArray = Array.isArray(selector) ? selector : [selector];
285        for (const selector of selectorArray) {
286          if (!selector) {
287            continue;
288          }
289          const inputUserValue = form.querySelector(selector);
290          const userValue = (inputUserValue && inputUserValue.value) || '';
291          if (userValue) {
292            user[userKey] = userValue;
293            break;
294          }
295        }
296      });
297      return user;
298    };
299
300    const addToCart = (ele) => {
301      if (!ele || 'login' !== 'product') {
302        return
303      }
304
305      const quantity = getInputValue(ele, 'input[name="qty[]"]') || 1
306      const price = '' || ''
307
308      edgetag('tag', 'AddToCart', {
309        currency: '' || '',
310        value: price,
311        contents: [
312          {
313            id: '',
314            quantity,
315            item_price: price,
316            title: '',
317            category: '',
318            image: ''.replace('{:size}', '500x659'),
319            url: '',
320            type: 'product',
321          },
322        ],
323      }, {}, { method: 'beacon' });
324    };
325
326    const actions = [
327      {
328        selectors: ['[type="submit"]', 'form[data-cart-item-add]'],
329        length: 2,
330        fun: (ele) => {
331          addToCart(ele);
332        },
333        current: 0
334      },
335      {
336        selectors: ['a[href="/checkout"]'],
337        length: 1,
338        fun: (ele) => {
339          edgetag('tag', 'InitiateCheckout', {}, {}, { method: 'beacon' });
340        },
341        current: 0
342      },
343      {
344        selectors: ['[type="submit"]', 'form[action="/subscribe.php"],form.extole-form'],
345        length: 2,
346        fun: (ele) => {
347          const user = getUser(ele, {
348            email: ['input[type="email"]', 'input[data-field-type*="email" i]'],
349            phone: ['input[type="tel"]', 'input[name*="phone" i]', 'input[data-field-type*="phone" i]'],
350            firstName: ['input[name*="fname" i]', 'input[data-field-type*="first" i]'],
351            lastName: ['input[name*="lname" i]', 'input[data-field-type*="last" i]'],
352            dateOfBirth: 'input[name*="birthday" i]',
353          });
354          sendUser(user);
355          edgetag('tag', 'Subscribe', {}, {}, {method: 'beacon'})
356        },
357        current: 0
358      },
359      {
360        selectors: ['[type="submit"]', 'form[action*="save_new_account" i]'],
361        length: 2,
362        fun: (ele) => {
363          const user = getUser(ele, {
364            email: ['input[type="email"]', 'input[data-field-type*="email" i]'],
365            phone: ['input[type="tel"]', 'input[name*="phone" i]', 'input[data-field-type*="phone" i]'],
366            firstName: ['input[name*="fname" i]', 'input[data-field-type*="first" i]'],
367            lastName: ['input[name*="lname" i]', 'input[data-field-type*="last" i]'],
368          });
369          sendUser(user);
370          edgetag('tag', 'CompleteRegistration');
371        },
372        current: 0
373      },
374      {
375        selectors: ['[type="submit"]', 'form[action*="check_login" i]'],
376        length: 2,
377        fun: (ele) => {
378          const user = getUser(ele, {
379            email: 'input[type="email"]',
380          });
381          sendUser(user);
382        },
383        current: 0
384      },
385      {
386        selectors: ['[type="submit"]', 'form#checkout-customer-guest'],
387        length: 2,
388        fun: (ele) => {
389          const user = getUser(ele, {
390            email: ['input[type="email"]', 'input[data-field-type*="email" i]'],
391            phone: ['input[type="tel"]', 'input[name*="phone" i]', 'input[data-field-type*="phone" i]'],
392            firstName: ['input[name*="first" i]', 'input[data-field-type*="first" i]'],
393            lastName: ['input[name*="last" i]', 'input[data-field-type*="last" i]'],
394          });
395          sendUser(user);
396        },
397        current: 0
398      },
399      {
400        selectors: ['[type="submit"]', 'form', '.checkout-step--shipping'],
401        length: 3,
402        fun: (ele) => {
403          const form = ele.querySelector('form')
404          const user = getUser(form, {
405            email: ['input[type="email"]', 'input[data-field-type*="email" i]'],
406            phone: ['input[type="tel"]', 'input[name*="phone" i]', 'input[data-field-type*="phone" i]'],
407            firstName: ['input[name*="first" i]', 'input[data-field-type*="first" i]'],
408            lastName: ['input[name*="last" i]', 'input[data-field-type*="last" i]'],
409          });
410          sendUser(user);
411        },
412        current: 0
413      }
414    ];
415
416    const actionsLength = actions.length;
417    const resetActions = () => {
418      for (let i = 0; i < actionsLength; ++i) {
419        actions[i].current = 0;
420      }
421    };
422
423    const checkElement = (element) => {
424      if (!element || element.nodeName === 'BODY') {
425        resetActions();
426        return
427      }
428
429      if (element.nodeName !== 'DIV' && element.nodeName !== 'INPUT' && element.nodeName !== 'A' && element.nodeName !== 'BUTTON' && element.nodeName !== 'FORM' && element.nodeName !== 'LI') {
430        checkElement(element.parentElement);
431        return
432      }
433
434      for (let i = 0; i < actionsLength; ++i) {
435        if (element.matches(actions[i].selectors[actions[i].current])) {
436          ++actions[i].current;
437          if (actions[i].length === actions[i].current) {
438            actions[i].fun(element);
439            resetActions();
440            return
441          }
442        }
443      }
444      checkElement(element.parentElement);
445    };
446
447    window.addEventListener('load', () => {
448      // PageView
449      edgetag('tag', 'PageView');
450
451      // View Content
452      if ('login' === 'product') {
453        const price = '' || ''
454
455        edgetag('tag', 'ViewContent', {
456          currency: '',
457          value: price,
458          contents: [
459            {
460              id: '',
461              quantity: 1,
462              item_price: price,
463              title: '',
464              category: '',
465              image: ''.replace('{:size}', '500x659'),
466              url: '',
467              type: 'product',
468            },
469          ],
470        });
471      }
472
473      document.addEventListener('click', (e) => {
474        checkElement(e.target);
475      })
476    })
477
478    const sendPurchase = (data) => {
479      // Purchase
480      if ('login' !== 'orderconfirmation' || !data) {
481        return
482      }
483
484      const shipping = (data.consignments && data.consignments.shipping && data.consignments.shipping.length && data.consignments.shipping[0]) || {}
485      const billing = data.billing || {}
486
487      const user = {}
488      if (shipping.email || billing.email) {
489        user.email = shipping.email || billing.email
490      }
491
492      if (shipping.firstName || billing.firstName) {
493        user.firstName = shipping.firstName || billing.firstName
494      }
495
496      if (shipping.lastName || billing.lastName) {
497        user.lastName = shipping.lastName || billing.lastName
498      }
499
500      if (shipping.phone || billing.phone) {
501        user.phone = shipping.phone || billing.phone
502      }
503      sendUser(user)
504
505      let items = []
506      if (data.lineItems) {
507        if (data.lineItems.physicalItems && Array.isArray(data.lineItems.physicalItems) && data.lineItems.physicalItems.length) {
508          items = [...items, ...data.lineItems.physicalItems]
509        }
510        if (data.lineItems.digitalItems && Array.isArray(data.lineItems.digitalItems) && data.lineItems.digitalItems.length) {
511          items = [...items, ...data.lineItems.digitalItems]
512        }
513        if (data.lineItems.giftCertificates && Array.isArray(data.lineItems.giftCertificates) && data.lineItems.giftCertificates.length) {
514          items = [...items, ...data.lineItems.giftCertificates]
515        }
516      }
517
518      const contents = []
519      items.forEach((item) => {
520        if (!item) {
521          return
522        }
523
524        contents.push({
525          id: item.productId,
526          variantId: item.variantId,
527          quantity: item.quantity,
528          item_price: item.salePrice,
529          title: item.name,
530          category: item.categories && item.categories.length && item.categories[0],
531          type: 'product',
532        })
533      })
534
535      edgetag('tag', 'Purchase', {
536        contents,
537        currency: data.currency && data.currency.code,
538        value: data.orderAmount,
539        eventId: data.orderId,
540        orderId: data.orderId
541      });
542    }
543
544    const networkListener = function() {
545      const fetch = window.fetch;
546      window.fetch = function() {
547        return fetch.apply(this, Array.prototype.slice.call(arguments)).then(function(t) {
548          if (!t.ok) {
549            return t;
550          }
551
552          try {
553            if ('login' === 'orderconfirmation' && t.url.indexOf(`storefront/orders/`) !== -1) {
554              const myResponse = t.clone();
555              Promise.resolve(myResponse.json()).then(e => {
556                if (!e) {
557                  return;
558                }
559                sendPurchase(e);
560              });
561              return t;
562            }
563          } catch {
564          }
565          return t;
566        });
567      };
568      const origOpen = XMLHttpRequest.prototype.open;
569      XMLHttpRequest.prototype.open = function() {
570        this.addEventListener('load', function() {
571          if ('login' === 'orderconfirmation' && this.__sentry_xhr__.url.indexOf(`storefront/orders/`) !== -1) {
572            try {
573              const e = JSON.parse(this.responseText);
574              if (!e) {
575                return;
576              }
577              sendPurchase(e);
578            } catch {
579            }
580            return;
581          }
582        });
583        origOpen.apply(this, arguments);
584      };
585    };
586    networkListener();
587
588    // Custom code
589
590  })();
591</script>
591<script data-bc-cookie-consent="3" type="text/plain" async src="https://olhel.decoratorswarehouse.com/providers/atLabel/load" onError="var fallbackScript = document.createElement('script'); fallbackScript.src='https://cdn.attn.tv/decoratorswarehouse/dtag.js'; document.head.appendChild(fallbackScript);"></script>
591 <!-- Google Tag Manager -->
592<script data-bc-cookie-consent="3" type="text/plain">
vendor: 327 bytes, lines 592-596
592(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
593new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
594j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
595'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
596})(window,document,'script','dataLayer','
596GTM-N45SHHS
vendor: 3 bytes, line 596
596');
596</script>
vendor: 1 bytes, line 596
596
597<script data-bc-cookie-consent="3" type="text/plain">function gtag(){dataLayer.push(arguments);}</script>
597
598<!-- End Google Tag Manager -->
598<script type="text/javascript">
599function recaptchaLoadCallback() {
600  var textareas = document.querySelectorAll("[name=g-recaptcha-response]");
601  textareas.forEach(function(textarea) {
602    textarea.setAttribute("aria-hidden", "true");
603    textarea.setAttribute("aria-label", "recaptcha response");
604  });
605}
606</script>
vendor: 61 bytes, lines 606-607
606
607<script src="https://www.google.com/recaptcha/api.js?render=
6076LcUDxQqAAAAAMPdv5QT0CTHe1h1M8KllssBnC5r
vendor: 57 bytes, line 607
607&onload=recaptchaLoadCallback&badge=bottomleft"></script>
607<script type="text/javascript">
608    var attnData = {
609        pageType: "login",
610            orderData: {},
611    }
612try {
613    if ("") {
614        fetch("/api/storefront/order/", {
615            credentials: "include",
616        })
617        .then(function (response) {
618            return response.json();
619        })
620        .then(function (orderInfo) {
621            window.attnData = window.attnData || {
622                pageType: "login",
623                orderData: {},
624            }
625            window.attnData.orderData = {
626                cartTotal: orderInfo.orderAmount,
627                cartId: orderInfo.cartId,
628                cartCoupon: orderInfo.coupons.length > 0 ? orderInfo.coupons[0].code : null,
629                orderId: orderInfo.orderId,
630                phone: orderInfo.billingAddress.phone,
631                email: orderInfo.billingAddress.email,
632                items: orderInfo.lineItems.physicalItems.map(item => {
633                    return {
634                        sku: item.productId,
635                        subProductId: item.variantId,
636                        name: item.name,
637                        image: item.imageUrl,
638                        price: item.salePrice,
639                        currency: orderInfo.currency.code,
640                        quantity: item.quantity,
641                    }
642                }),
643            }
644        })
645}} catch (e) {}
646</script>
vendor: 1 bytes, line 646
646
647<script type="text/javascript">
648 const attn_upc = "";
649    const attn_price = "";
650    var variant = null;
651    const attnBCProducts = window.attn_bc_products = window.attn_bc_products || {};
652    const productsCatalogue = attnBCProducts.products = attnBCProducts.products || [];
653    const product = {
654        sku: '',
655        subProductId: variant,
656        productId: '',
657        name: '',
658        image: 'https://cdn11.bigcommerce.com/s-zqoar2tzjl/stencil/32030570-9a5d-013f-a98b-120a24f73952/e/16b874b0-97e5-013f-45bc-4e388f6f202b/img/ProductDefault.gif',
659        category: '',
660        price: attn_price,
661        currency: 'USD' || 'USD',
662    };
663    if (attnData.pageType === 'product' && product.sku) {    try {
664        fetch('/graphql', {
665            method: 'POST',
666            credentials: 'same-origin',
667            headers: {
668              'Content-Type': 'application/json',
669              'Authorization': 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiJ9.eyJjaWQiOlsxXSwiY29ycyI6WyJodHRwczovL2RlY29yYXRvcnN3YXJlaG91c2UuY29tIl0sImVhdCI6MTc5MDUxMDYzOSwiaWF0IjoxNzkwMzM3ODM5LCJpc3MiOiJCQyIsInNpZCI6MTAwMDcyNTk1Miwic3ViIjoiQkMiLCJzdWJfdHlwZSI6MCwidG9rZW5fdHlwZSI6MX0.8L_KE2z5qXRNu-PzSuKJnm6IcHCOUDW4llquE12qRD7Oh7etFUyT3PYu29wZqHCmM-MVKxFzUcVJJo5hn_0I4Q'
670            },
671            body: JSON.stringify({ query: '{ site {product(entityId: ) { sku, variants{edges{node{upc, entityId, prices{price{value}}}}}}}}'})})
672            .then(data => data.json())
673            .then(json => json?.data?.site?.product?.variants?.edges)
674            .then(variantsArr =>  {
675                if (variantsArr.length === 1) {
676                    variant = variantsArr[0]?.node?.entityId;
677                } else if (attn_upc) {
678                    variant = variantsArr.find(variantObj => variantObj?.node?.upc === attn_upc)?.node.entityId;
679                } else if (attn_price) {
680                    variant = variantsArr.find(variantObj => variantObj?.node?.prices?.price?.value?.toString() === attn_price)?.node.entityId;
681                } else {
682                    variant = variantsArr[0]?.node?.entityId;
683                }
684            })
685            .then(() => {
686                product.subProductId = variant;
687                attnBCProducts["current_product"] = product;
688                if (productsCatalogue.filter(i => {i.productId === '' && i.subProductId === variant}).length === 0) {
689                    productsCatalogue.push(product);
690                }
691            })
692    } catch {
693        attnBCProducts["current_product"] = product;
694        if (productsCatalogue.filter(i => i.productId === '').length === 0) {
695            productsCatalogue.push(product);
696        }
697    }}
698</script>
698
699 
699<script data-cfasync="false" src="https://microapps.bigcommerce.com/bodl-events/1.9.4/index.js" integrity="sha256-Y0tDj1qsyiKBRibKllwV0ZJ1aFlGYaHHGl/oUFoXJ7Y=" nonce="" crossorigin="anonymous"></script>
699
700 
700<script data-cfasync="false" nonce="">
701
702 (function() {
703    function decodeBase64(base64) {
704       const text = atob(base64);
705       const length = text.length;
706       const bytes = new Uint8Array(length);
707       for (let i = 0; i < length; i++) {
708          bytes[i] = text.charCodeAt(i);
709       }
710       const decoder = new TextDecoder();
711       return decoder.decode(bytes);
712    }
713    window.bodl = JSON.parse(decodeBase64("eyJzZXNzaW9uIjp7ImlkIjoiNGNmYWY0MGYtN2IwMC00ODNhLThlZDItNjFiMjA5Y2RiYTYwIiwiZmlyc3RfdG91Y2hfdGltZXN0YW1wIjoiMjAyNi0wOS0yNlQwNjozODoxMiIsImZpcnN0X3RvdWNoX3JlZmVycmFsX3VybCI6IiIsImZpcnN0X3RvdWNoX3JlcXVlc3RfdXJsIjoiaHR0cHM6Ly9kZWNvcmF0b3Jzd2FyZWhvdXNlLmNvbS9sb2dpbi5waHAifSwic2hvcHBlciI6eyJ2aXNpdG9yX2lkIjoiIiwiY3VzdG9tZXJfaWQiOm51bGwsImVtYWlsIjpudWxsLCJmaXJzdF9uYW1lIjpudWxsLCJsYXN0X25hbWUiOm51bGx9LCJkYXRhX2NvbnNlbnQiOnsiZnVuY3Rpb25hbCI6ZmFsc2UsImFuYWx5dGljcyI6ZmFsc2UsImFkdmVydGlzaW5nIjpmYWxzZX0sImV2ZW50cyI6W3siYm9kbF92MV9jb25zZW50X2xvYWRlZCI6eyJldmVudF9pZCI6ImY1MzdiYmY2LTAzZjEtNDhiMy1hNTEwLTg4ZjA4MTgwODlmOSIsImFkdmVydGlzaW5nIjpmYWxzZSwiYW5hbHl0aWNzIjpmYWxzZSwiZnVuY3Rpb25hbCI6ZmFsc2V9fV19"));
714 })()
715
716 </script>
716
717
718<script nonce="">
719(function () {
720    var xmlHttp = new XMLHttpRequest();
721    
722    xmlHttp.open('POST', 'https://bes.gcp.data.bigcommerce.com/nobot');
723    xmlHttp.setRequestHeader('Content-Type', 'application/json');
724    xmlHttp.send('{"store_id":"1000725952","timezone_offset":"-6.0","timestamp":"2026-09-26T06:38:12.83586000Z","visit_id":"292fa0b2-93f1-425f-88c9-07fcc5ca0a52","channel_id":1}');
725})();
726</script>
726
727
728        <meta name="p:domain_verify" content="5a0e01ebf4545a4a97883c9e3cdb059b"/>
729         
730
731        <meta name="active-currency" content="USD">
732
733        <meta property="og:title" content="Decorator&#x27;s Warehouse - Sign in" />
734        <meta property="og:image" content="https://cdn11.bigcommerce.com/s-zqoar2tzjl/content/ogimg.jpg" />
735
736        
736<script defer src="https://cdn11.bigcommerce.com/s-zqoar2tzjl/content/assets/js/alpinejs-plugin-focus-3.13.0.min.js"></script>
vendor: 1 bytes, line 736
736
737<script defer src="https://cdn11.bigcommerce.com/s-zqoar2tzjl/content/assets/js/alpinejs-intersect-3.13.0.min.js"></script>
vendor: 1 bytes, line 737
737
738<script defer src="https://cdn11.bigcommerce.com/s-zqoar2tzjl/content/assets/js/alpinejs-3.13.0.min.js"></script>
vendor: 1 bytes, line 738
738
739<script defer src="https://cdn11.bigcommerce.com/s-zqoar2tzjl/content/assets/js/progressbar.min.js"></script>
vendor: 1 bytes, line 739
739
740<script defer src="https://cdn11.bigcommerce.com/s-zqoar2tzjl/content/assets/js/party.min.js"></script>
740
741
742<link
743  rel="stylesheet"
744  href="https://cdn11.bigcommerce.com/s-zqoar2tzjl/content/assets/css/widgets-202607081052.css"
745/>
746    </head>
747    <body>
748        
749
750        <!-- Google Tag Manager (noscript) -->
vendor: 76 bytes, lines 750-751
750
751        <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
751GTM-N45SHHS
vendor: 91 bytes, lines 751-752
751" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
752        
752<!-- End Google Tag Manager (noscript) -->
753        <a href="#main-content" class="sr-only skip-to-main-content">Skip To Main Content</a>
vendor: 76 bytes, lines 753-754
753
754        <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
754GTM-PX3J4V8
vendor: 92 bytes, lines 754-756
754" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
755
756        
756<svg data-src="https://cdn11.bigcommerce.com/s-zqoar2tzjl/stencil/32030570-9a5d-013f-a98b-120a24f73952/e/16b874b0-97e5-013f-45bc-4e388f6f202b/img/icon-sprite.svg" class="icons-svg-sprite"></svg>
757
758        
758<script>
759// Load site navigation with version-based caching
760(function() {
761    const CACHE_KEY = 'dw_site_navigation';
762    const VERSION_KEY = 'dw_site_navigation_version';
763    const CACHE_DURATION = 24 * 60 * 60 * 1000; // 24 hours (much longer now)
764
765    const apiHost = 'https://api.decoratorswarehouse.com';
766
767    async function checkNavigationVersion() {
768        try {
769            // Try static file first (fastest)
770            let currentVersion;
771            try {
772                const versionResponse = await fetch(`${apiHost}/navigation-version.txt?${Date.now()}`);
773                if (versionResponse.ok) {
774                    currentVersion = await versionResponse.text();
775                    currentVersion = currentVersion.trim();
776                }
777            } catch (error) {
778                console.warn('Static version file not available, using API fallback');
779            }
780
781            if (currentVersion) {
782                // Check if we need to update navigation
783                const cachedVersion = localStorage.getItem(VERSION_KEY);
784                const cachedData = localStorage.getItem(CACHE_KEY);
785
786                if (cachedVersion === currentVersion && cachedData) {
787                    console.log('Navigation is up to date, no need to fetch');
788                    // Navigation is up to date, no need to fetch
789                    return;
790                }
791            }
792
793            // Version changed or no cached data, fetch fresh navigation
794            await loadNavigation(null, currentVersion);
795
796        } catch (error) {
797            console.warn('Failed to check navigation version:', error);
798            // Fallback to time-based cache check
799            fallbackToTimeBasedCache();
800        }
801    }
802
803    function fallbackToTimeBasedCache() {
804        const cachedData = localStorage.getItem(CACHE_KEY);
805        const cachedTimestamp = localStorage.getItem('dw_site_navigation_timestamp');
806
807        if (cachedData && cachedTimestamp) {
808            const isValidCache = (Date.now() - parseInt(cachedTimestamp)) < CACHE_DURATION;
809            if (isValidCache) {
810                return;
811            }
812        }
813
814        // Cache is stale, fetch fresh data
815        loadNavigation();
816    }
817
818    async function loadNavigation(previewNonce = null, version = null) {
819        try {
820            const url = `${apiHost}/site-navigation`;
821            const response = await fetch(url);
822
823            if (!response.ok) {
824                throw new Error(`HTTP error! status: ${response.status}`);
825            }
826
827            const data = await response.json();
828            const navigationData = data.data || [];
829            const navigationVersion = data.version || version;
830
831            // Cache the data (but not preview data)
832            localStorage.setItem(CACHE_KEY, JSON.stringify(navigationData));
833            localStorage.setItem(VERSION_KEY, navigationVersion);
834            localStorage.setItem('dw_site_navigation_timestamp', Date.now().toString());
835
836            // Dispatch custom event to notify Alpine.js component
837            window.dispatchEvent(new CustomEvent('navigationLoaded', {
838                detail: { data: navigationData }
839            }));
840        } catch (error) {
841            console.warn('Failed to load navigation:', error);
842        }
843    }
844
845    checkNavigationVersion();
846})();
847</script>
847
848
849<header class="header container" role="banner">
850    <a href="#" class="mobileMenu-toggle" data-mobile-menu-toggle="menu" title="Site Navigation" aria-controls="menu" aria-expanded="false" role="button">
851        <svg aria-hidden="true" focusable="false" data-prefix="fal" data-icon="bars" class="svg-inline--fa fa-bars" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Pro 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2025 Fonticons, Inc.--><path d="M448 192c0-8.8-7.2-16-16-16L16 176c-8.8 0-16 7.2-16 16s7.2 16 16 16l416 0c8.8 0 16-7.2 16-16zm0 128c0-8.8-7.2-16-16-16L16 304c-8.8 0-16 7.2-16 16s7.2 16 16 16l416 0c8.8 0 16-7.2 16-16z"/></svg>
852        <svg  aria-hidden="true" focusable="false" data-prefix="fal" data-icon="times" class="svg-inline--fa fa-times" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><!--!Font Awesome Pro 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2025 Fonticons, Inc.--><path d="M380.2 58.3c5.7-6.7 4.9-16.8-1.9-22.5s-16.8-4.9-22.6 1.9L192 231.2 28.2 37.7c-5.7-6.7-15.8-7.6-22.5-1.9s-7.6 15.8-1.9 22.5L171 256 3.8 453.7c-5.7 6.7-4.9 16.8 1.9 22.6s16.8 4.9 22.5-1.9L192 280.8 355.8 474.3c5.7 6.7 15.8 7.6 22.6 1.9s7.6-15.8 1.9-22.6L213 256 380.2 58.3z"/></svg>
853    </a>
854    <a class="mobile-cartButton" role="button" title="Cart Preview" onClick="return document.getElementById('cart-slide-out').dispatchEvent(new CustomEvent('open')) && false"  href="/cart.php" role="button">
855        <i class="fal fa-bag-shopping"></i>
856        <span class="countPill cart-quantity"></span>
857    </a>
858
859    <div class="mobile-logo">
860        <a href="https://decoratorswarehouse.com/" aria-label="Go to the homepage">
861        <div class="header-logo-image-container">
862            <img
863                class="header-logo-image"
864                src="https://cdn11.bigcommerce.com/s-zqoar2tzjl/content/nav/logo/logo2025.svg"
865                style="margin: 10px 0; object-fit: contain;"
866                alt="Decorator's Warehouse Logo"
867                width="235"
868                height="100"
869            >
870        </div>
871</a>
872    </div>
873
874    <div class="mobile-search">
875        <div class="quick-search">
876    <form class="form" action="https://decoratorswarehouse.com/search.php" id="quickSearch">
877        <fieldset class="form-fieldset">
878            <legend class="is-srOnly">Search</legend>
879            <div class="form-field">
880                <i class="fal fa-search"></i>
881                <input class="form-input" data-search-quick type="text" name="search_query" aria-label='Search' data-error-message="Search field cannot be empty." placeholder="Search" autocomplete="off">
882            </div>
883        </fieldset>
884    </form>
885    <section class="quickSearchResults" data-bind="html: results"></section>
886</div>
887    </div>
888
889    <div class="header-top container">
890        <div class="header-top-left relative">
891            <div class="quick-search">
892    <form class="form" action="https://decoratorswarehouse.com/search.php" id="quickSearch">
893        <fieldset class="form-fieldset">
894            <legend class="is-srOnly">Search</legend>
895            <div class="form-field">
896                <i class="fal fa-search"></i>
897                <input class="form-input" data-search-quick type="text" name="search_query" aria-label='Search' data-error-message="Search field cannot be empty." placeholder="Search" autocomplete="off">
898            </div>
899        </fieldset>
900    </form>
901    <section class="quickSearchResults" data-bind="html: results"></section>
902</div>
903        </div>
904        <div class="header-top-center">
905            <a href="https://decoratorswarehouse.com/" aria-label="Go to the homepage">
906        <div class="header-logo-image-container">
907            <img
908                class="header-logo-image"
909                src="https://cdn11.bigcommerce.com/s-zqoar2tzjl/content/nav/logo/logo2025.svg"
910                style="margin: 10px 0; object-fit: contain;"
911                alt="Decorator's Warehouse Logo"
912                width="235"
913                height="100"
914            >
915        </div>
916</a>
917        </div>
918        <div class="header-top-right">
919            <nav>
920        <a href="https://decoratorswarehouse.com/login.php">
921            Sign in
922        </a>
923        <a href="https://decoratorswarehouse.com/login.php?action=create_account">
924            Join Us
925        </a>
926    <span class="currencySelector">
927    <a style="white-space: nowrap;" href="#" data-dropdown="currencySelection" aria-controls="currencySelection" aria-expanded="false" role="button">Currency&nbsp;<i class="icon" aria-hidden="true"><svg><use xlink:href="#icon-chevron-down" /></svg></i></a>
928    <ul class="dropdown-menu" id="currencySelection" data-dropdown-content aria-hidden="true">
929        <li class="dropdown-menu-item"  aria-selected="true" >
930            <a href="https://decoratorswarehouse.com/login.php?setCurrencyId=1" rel="nofollow" aria-label="Change currency to US Dollars"  aria-current="true" >
931                    <strong>US Dollars</strong>
932            </a>
933        </li>
934        <li class="dropdown-menu-item" >
935            <a href="https://decoratorswarehouse.com/login.php?setCurrencyId=2" rel="nofollow" aria-label="Change currency to CAD" >
936                    CAD
937            </a>
938        </li>
939    </ul>
940</span>
941    <a href="/dw-pro-lights/wholesale" class="dpl">DW Pro Lights</a>
942    <a class="cart"
943        role="button"
944        title="Cart Preview"
945        onClick="return document.getElementById('cart-slide-out').dispatchEvent(new CustomEvent('open')) && false"
946        href="/cart.php"
947    >
948        <i class="fal fa-bag-shopping"></i>
949        <span class="countPill cart-quantity"></span>
950        <span class="sr-only">View Your Cart</span>
951    </a>
952</nav>
953        </div>
954    </div>
955
956    <div class="header-bottom" data-menu id="menu">
957        <nav class="navPages" x-data="navigationData()" x-init="init(); loadNavigation()">
958    <ul class="navPages-list">
959        <!-- SEO-friendly hardcoded navigation (hidden when dynamic nav loads) -->
960        <li class="navPages-item navPages-item-page" x-show="navItems.length === 0">
961            <a class="navPages-action has-subMenu" href="/our-christmas-collections/halloween-decorations/" style="display: flex; align-items: center;">
962                <span>Halloween Decor</span>
963                <svg class="svg-inline--fa fa-chevron-down navPages-action-moreIcon" aria-hidden="true" focusable="false" data-prefix="fas" data-icon="chevron-down" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z"></path></svg>
964            </a>
965        </li>
966        <li class="navPages-item navPages-item-page" x-show="navItems.length === 0">
967            <a class="navPages-action has-subMenu" href="/decorations" style="display: flex; align-items: center;">
968                <span>Christmas Decor</span>
969                <svg class="svg-inline--fa fa-chevron-down navPages-action-moreIcon" aria-hidden="true" focusable="false" data-prefix="fas" data-icon="chevron-down" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z"></path></svg>
970            </a>
971        </li>
972        <li class="navPages-item navPages-item-page" x-show="navItems.length === 0">
973            <a class="navPages-action has-subMenu" href="/christmas-tree-bundles" style="display: flex; align-items: center;">
974                <span>Decor Bundles</span>
975                <svg class="svg-inline--fa fa-chevron-down navPages-action-moreIcon" aria-hidden="true" focusable="false" data-prefix="fas" data-icon="chevron-down" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z"></path></svg>
976            </a>
977        </li>
978        <li class="navPages-item navPages-item-page" x-show="navItems.length === 0">
979            <a class="navPages-action has-subMenu" href="/artificial-christmas-trees" style="display: flex; align-items: center;">
980                <span>Christmas Trees</span>
981                <svg class="svg-inline--fa fa-chevron-down navPages-action-moreIcon" aria-hidden="true" focusable="false" data-prefix="fas" data-icon="chevron-down" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z"></path></svg>
982            </a>
983        </li>
984        <li class="navPages-item navPages-item-page" x-show="navItems.length === 0">
985            <a class="navPages-action has-subMenu" href="/outdoor-lighting" style="display: flex; align-items: center;">
986                <span>Christmas Lights</span>
987                <svg class="svg-inline--fa fa-chevron-down navPages-action-moreIcon" aria-hidden="true" focusable="false" data-prefix="fas" data-icon="chevron-down" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z"></path></svg>
988            </a>
989        </li>
990        <li class="navPages-item navPages-item-page" x-show="navItems.length === 0">
991            <a class="navPages-action has-subMenu" href="/collections" style="display: flex; align-items: center;">
992                <span>Collections</span>
993                <svg class="svg-inline--fa fa-chevron-down navPages-action-moreIcon" aria-hidden="true" focusable="false" data-prefix="fas" data-icon="chevron-down" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z"></path></svg>
994            </a>
995        </li>
996        <li class="navPages-item navPages-item-page" x-show="navItems.length === 0">
997            <a class="navPages-action has-subMenu" href="/resources" style="display: flex; align-items: center;">
998                <span>Resources</span>
999                <svg class="svg-inline--fa fa-chevron-down navPages-action-moreIcon" aria-hidden="true" focusable="false" data-prefix="fas" data-icon="chevron-down" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z"></path></svg>
1000            </a>
1001        </li>
1002
1003        <!-- Dynamic navigation (shown when loaded) -->
1004        <template x-for="(item, index) in navItems" :key="index">
1005            <li class="navPages-item navPages-item-page">
1006                <!-- Top Level Link -->
1007                <template x-if="item.type === 'link'">
1008                    <a class="navPages-action text-center" :href="item.url" :target="item.target" x-text="item.label"></a>
1009                </template>
1010
1011                <!-- Top Level Dropdown -->
1012                <template x-if="item.type === 'dropdown'">
1013                    <div x-data="{
1014                        open: false,
1015                        dropdownTop: '0px',
1016                        dropdownLeft: '0px',
1017                        isDesktop: window.innerWidth >= 768,
1018                        handleMouseEnter(event) {
1019                            const link = event.currentTarget.querySelector('a');
1020                            if (link && this.isDesktop) {
1021                                const rect = link.getBoundingClientRect();
1022                                const parentRect = event.currentTarget.getBoundingClientRect();
1023                                this.dropdownTop = `${rect.bottom - parentRect.top}px`;
1024                                this.dropdownLeft = `-${parentRect.left}px`;
1025                            }
1026                            this.open = true;
1027                        },
1028                        handleMouseLeave(event) {
1029                            this.open = false;
1030                        }
1031                    }"
1032                         x-init="window.addEventListener('resize', () => { isDesktop = window.innerWidth >= 768 })"
1033                         @mouseenter="handleMouseEnter($event)"
1034                         @mouseleave="handleMouseLeave($event)"
1035                         class="navPages-dropdown-container"
1036                         style="position: relative;">
1037                        <a class="navPages-action text-center has-subMenu" href="#"
1038                           :title="item.label"
1039                           role="button"
1040                           @click.prevent="open = !open">
1041                            <span x-text="item.label"></span>
1042                            <svg class="svg-inline--fa fa-chevron-down navPages-action-moreIcon" aria-hidden="true" focusable="false" data-prefix="fas" data-icon="chevron-down" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z"></path></svg>
1043                        </a>
1044
1045                        <div class="navPage-subMenu bg-white"
1046                            :class="{'is-open': open}"
1047                            :style="isDesktop ? `top: ${dropdownTop}; position: absolute; left: ${dropdownLeft}; width: 100vw; z-index: 999; transform: none !important;` : ''"
1048                             x-transition:enter="transition ease-out duration-200"
1049                             x-transition:enter-start="opacity-0 transform scale-95"
1050                             x-transition:enter-end="opacity-100 transform scale-100"
1051                             x-transition:leave="transition ease-in duration-75"
1052                             x-transition:leave-start="opacity-100 transform scale-100"
1053                             x-transition:leave-end="opacity-0 transform scale-95">
1054
1055                            <ul class="navPage-subMenu-list shop-menu">
1056                                <template x-for="(section, sectionIndex) in item.sections" :key="sectionIndex">
1057                                    <li class="navPage-subMenu-item">
1058                                        <section class="flex flex-col gap-1">
1059                                            <template x-for="(sectionItem, itemIndex) in section.items" :key="itemIndex">
1060                                                <div>
1061                                                    <!-- Header -->
1062                                                    <template x-if="sectionItem.type === 'header'">
1063                                                        <div class="text-black font-body text-[14px] md:text-[15px] font-medium uppercase" x-text="sectionItem.text"></div>
1064                                                    </template>
1065
1066                                                    <!-- Standalone Link (no header) -->
1067                                                    <template x-if="sectionItem.type === 'link'">
1068                                                        <a :href="sectionItem.url"
1069                                                            :target="sectionItem.target"
1070                                                            :class="getLinkClass(sectionItem.style)"
1071                                                            x-text="sectionItem.label"></a>
1072                                                    </template>
1073
1074                                                    <!-- Standalone Image (no header) -->
1075                                                    <!-- max_width from nav admin (px); 0 = fill column; default 200 -->
1076                                                    <template x-if="sectionItem.type === 'image'">
1077                                                        <img :src="sectionItem.url"
1078                                                                :alt="sectionItem.alt || ''"
1079                                                                class="navPages-promo-image max-w-full h-auto"
1080                                                                :style="getImageStyle(sectionItem)"/>
1081                                                    </template>
1082
1083                                                    <!-- Standalone Separator (no header) -->
1084                                                    <template x-if="sectionItem.type === 'separator'">
1085                                                        <hr class="my-1 border-gray-300"/>
1086                                                    </template>
1087                                                </div>
1088                                            </template>
1089                                        </section>
1090                                    </li>
1091                                </template>
1092                            </ul>
1093                        </div>
1094                    </div>
1095                </template>
1096            </li>
1097        </template>
1098
1099        <li class="navPages-item navPages-item-page navPages-item-sale">
1100            <a class="navPages-action has-subMenu" href="/daves-deals/">
1101                <span>SALE</span>
1102            </a>
1103        </li>
1104    </ul>
1105    <ul class="navPages-list navPages-list--user">
1106            <li class="navPages-item">
1107                <a class="navPages-action" href="https://decoratorswarehouse.com/login.php">Sign in</a>
1108            </li>
1109            <li class="navPages-item">
1110                <a class="navPages-action" href="https://decoratorswarehouse.com/login.php?action=create_account">Join Us</a>
1111            </li>
1112    </ul>
1113</nav>
1114
1115<script>
1116function navigationData() {
1117    return {
1118        navItems: [],
1119        loading: false,
1120        error: null,
1121
1122        init() {
1123            // Listen for navigation loaded event
1124            window.addEventListener('navigationLoaded', (event) => {
1125                this.navItems = event.detail.data;
1126            });
1127        },
1128
1129        async loadNavigation() {
1130            // Load from localStorage cache only
1131            const CACHE_KEY = 'dw_site_navigation';
1132
1133            try {
1134                const cachedData = localStorage.getItem(CACHE_KEY);
1135                if (cachedData) {
1136                    this.navItems = JSON.parse(cachedData);
1137                }
1138            } catch (error) {
1139                console.warn('Failed to load navigation from cache:', error);
1140            }
1141        },
1142
1143        getLinkClass(style) {
1144            const baseClass = 'text-[13px]';
1145            switch (style) {
1146                case 'bold':
1147                    return baseClass + ' font-bold';
1148                case 'green_button':
1149                    return baseClass + ' button button-sm button-green'
1150                case 'red_button':
1151                    return baseClass + ' button button-sm button-red'
1152                default:
1153                    return baseClass + ' text-dw-green-1';
1154            }
1155        },
1156
1157        /**
1158         * Promo image sizing + alignment from nav item.
1159         * max_width: px, 0 = fill column, missing = 200px default.
1160         * align: left | center | right (default center).
1161         */
1162        getImageStyle(item) {
1163            const style = {};
1164            const raw = item && item.max_width;
1165
1166            if (raw === 0 || raw === '0') {
1167                style.maxWidth = '100%';
1168                style.maxHeight = 'none';
1169            } else {
1170                const w = parseInt(raw, 10);
1171                if (Number.isFinite(w) && w > 0) {
1172                    style.maxWidth = `${w}px`;
1173                    style.maxHeight = `${Math.round(w * 1.4)}px`;
1174                } else {
1175                    style.maxWidth = '200px';
1176                    style.maxHeight = '280px';
1177                }
1178            }
1179
1180            const align = (item && item.align) || 'center';
1181            if (align === 'left') {
1182                style.marginLeft = '0';
1183                style.marginRight = 'auto';
1184            } else if (align === 'right') {
1185                style.marginLeft = 'auto';
1186                style.marginRight = '0';
1187            } else {
1188                style.marginLeft = 'auto';
1189                style.marginRight = 'auto';
1190            }
1191
1192            return style;
1193        },
1194    }
1195}
1196</script>
1196
1197    </div>
1198</header>
1199
1200<div
1201    x-cloak
1202    id="cart-slide-out"
1203    x-on:loading="isLoading = true"
1204    x-on:loaded="isLoading = false"
1205    x-on:open="open = true"
1206    x-on:close="open = false"
1207    x-on:toggle="open = !open"
1208    x-on:errors="errors = $event.detail"
1209    x-data="{
1210        isLoading: true,
1211        open: false,
1212        errors: null,
1213        init() {
1214            $watch('open', (value) => {
1215                if (window.toggleBodyScrollBar) {
1216                    window.toggleBodyScrollBar(value)
1217                }
1218            })
1219        }
1220    }"
1221    class="relative z-[9999]"
1222    :class="{'pointer-events-none': !open, 'is-open': open}"
1223    aria-labelledby="cart-slide-over-title"
1224    role="dialog"
1225    aria-modal="true"
1226    :aria-hidden="!open"
1227>
1228    <div
1229        x-show="open"
1230        class="fixed inset-0 bg-[#FFF4]"
1231        style="backdrop-filter: blur(1.5px); -webkit-backdrop-filter: blur(1.5px);"
1232        x-on:click="open = false"
1233    ></div>
1234
1235    <div class="fixed inset-0 overflow-hidden" x-on:click="open = false">
1236        <div class="absolute inset-0 overflow-hidden">
1237            <div class="fixed inset-y-0 right-0 flex max-w-full sm:pl-16">
1238                <div
1239                    class="w-screen max-w-md"
1240                    x-on:click.stop
1241                    x-show="open"
1242                    x-trap="open"
1243                    x-transition:enter="transform transition ease-in-out duration-500 sm:duration-700"
1244                    x-transition:enter-start="translate-x-full" x-transition:enter-end="translate-x-0"
1245                    x-transition:leave="transform transition ease-in-out duration-500 sm:duration-700"
1246                    x-transition:leave-start="translate-x-0" x-transition:leave-end="translate-x-full">
1247                    <form class="flex h-full flex-col divide-y divide-gray-200 bg-white shadow-xl relative overflow-auto">
1248                        <div class="bg-dw-red-2 py-6 px-4 sm:px-6">
1249                            <div class="flex items-center justify-between">
1250                                <h2 class="text-lg font-medium text-white" id="cart-slide-over-title">Your Shopping Cart</h2>
1251                                <div class="ml-3 flex h-7 items-center">
1252                                    <button
1253                                        x-on:click="open = false"
1254                                        type="button"
1255                                        class="rounded-md bg-dw-red-2 text-white hover:bg-dw-red-1 focus:outline-none focus:ring-2 focus:ring-white"
1256                                    >
1257                                        <span class="sr-only">Close Cart</span>
1258                                        <svg class="h-6 w-6" xmlns="http://www.w3.org/2000/svg" fill="none"
1259                                            viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"
1260                                            aria-hidden="true">
1261                                            <path stroke-linecap="round" stroke-linejoin="round"
1262                                                d="M6 18L18 6M6 6l12 12" />
1263                                        </svg>
1264                                    </button>
1265                                </div>
1266                            </div>
1267                            <div class="mt-1">
1268                                <p class="text-sm text-white" role="status" aria-live="polite">Ok, there are <span class="cart-quantity" data-with-items></span> in your cart. What's next?</p>
1269                            </div>
1270                        </div>
1271                        <div class="md:h-0 md:flex-1 md:flex-grow md:overflow-y-auto">
1272                            <template x-if='isLoading === true'>
1273                                <div>
1274                                    <div class="flex justify-center items-center absolute inset-0 z-50 bg-[#FFFA]">
1275                                        <i class="text-dw-green-2 fal fa-spinner-third fa-2x fa-spin"></i>
1276                                    </div>
1277                                </div>
1278                            </template>
1279                            <div class="flex flex-1 flex-col p-4 pb-0 gap-y-3">
1280                                <template x-if="errors">
1281                                    <div
1282                                        class="alertBox alertBox--error"
1283                                        role="status"
1284                                        aria-live="polite"
1285                                    >
1286                                        <div class="alertBox-column alertBox-icon">
1287                                            <icon glyph="ic-success" class="icon" aria-hidden="true"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z"></path></svg></icon>
1288                                        </div>
1289                                        <p class="alertBox-column alertBox-message">
1290                                            <span x-html="errors"></span>
1291                                        </p>
1292                                    </div>
1293                                </template>
1294                            </div>
1295                            <div class="flex flex-1 flex-col justify-between p-4 gap-y-3" id="cart-content"></div>
1296                        </div>
1297                        <div class="flex" id="cart-summary">
1298                        </div>
1299                    </form>
1300                </div>
1301            </div>
1302        </div>
1303    </div>
1304</div>
1305
1306<div class="banners-container">
1307    <button class="banners-slider-prev-arrow slider-arrow" title="Previous Slide">
1308        <svg
1309            style="width: 23px; height: 15px"
1310            aria-hidden="true"
1311            focusable="false"
1312            role="img"
1313            xmlns="http://www.w3.org/2000/svg"
1314            viewBox="0 0 23 43">
1315            <g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
1316                <g transform="translate(12.000000, 21.500000) scale(-1, 1) translate(-12.000000, -21.500000) translate(2.000000, 1.000000)" stroke="white" stroke-width="2">
1317                    <polyline id="Path" transform="translate(10.000000, 20.500000) rotate(-90.000000) translate(-10.000000, -20.500000) " points="-10.5 10.5 10 30.5 30.5 10.5"></polyline>
1318                </g>
1319            </g>
1320        </svg>
1321    </button>
1322    <button href="#" class="banners-slider-next-arrow slider-arrow" title="Previous Slide">
1323        <svg
1324            style="width: 23px; height: 15px"
1325            aria-hidden="true"
1326            focusable="false"
1327            role="img"
1328            xmlns="http://www.w3.org/2000/svg"
1329            viewBox="0 0 23 43">
1330            <g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
1331                <g transform="translate(12.000000, 21.500000) scale(-1, 1) translate(-12.000000, -21.500000) translate(2.000000, 1.000000)" stroke="white" stroke-width="2">
1332                    <polyline id="Path" transform="translate(10.000000, 20.500000) rotate(-90.000000) translate(-10.000000, -20.500000) " points="-10.5 10.5 10 30.5 30.5 10.5"></polyline>
1333                </g>
1334            </g>
1335        </svg>
1336    </button>
1337        <div class="banners" data-banner-location="top">
1338            <div class="banner"></div>
1339        </div>
1340</div>
1341
1342<div data-content-region="header_bottom"></div>
1343
1344        <div role="main" id="main-content" class="body" data-currency-code="USD">
1345     
1346    <div class="container">
1347    <div class="login">
1348        <h1 class="page-heading">Sign in</h1>
1349    <div class="login-row">
1350        <form class="login-form form" action="https://decoratorswarehouse.com/login.php?action=check_login" method="post">
1351            
1352            
1353            <div class="form-field">
1354                <label class="form-label" for="login_email">Email Address:</label>
1355                <input class="form-input" name="login_email" id="login_email" type="email" required autocomplete="email">
1356            </div>
1357            <div class="form-field">
1358                <label class="form-label" for="login_pass">Password:</label>
1359                <input class="form-input" id="login_pass" type="password" name="login_pass" autocomplete="current-password" required>
1360            </div>
1361            <div class="form-actions">
1362                <input type="submit" class="button button--primary" value="Sign in" role="button">
1363                <a class="forgot-password" href="https://decoratorswarehouse.com/login.php?action=reset_password">Forgot your password?</a>
1364            </div>
1365        </form>
1366            <div class="new-customer">
1367                <div class="panel">
1368                    <div class="panel-header">
1369                        <h2 class="panel-title">DW Perks</h2>
1370                    </div>
1371                    <div class="panel-body">
1372                        <p class="new-customer-intro">Create an account with us and you&#x27;ll be able to:</p>
1373                        <ul class="new-customer-fact-list">
1374                            <li class="new-customer-fact">Check out faster</li>
1375                            <li class="new-customer-fact">Save multiple shipping addresses</li>
1376                            <li class="new-customer-fact">Access your order history</li>
1377                            <li class="new-customer-fact">Track new orders</li>
1378                            <li class="new-customer-fact">Save items to your Wish List</li>
1379                            <li class="new-customer-fact">
1380                                Earn Free DW Credit through the<br><a href="great-freight-rebate" class="underline">Great Freight Rebate</a>
1381                            </li>
1382                            <li class="new-customer-fact">Access unused DW Credit and apply at Checkout</li>
1383                        </ul>
1384                        <a href="https://decoratorswarehouse.com/login.php?action=create_account" class="button button-red">Create Account</a>
1385                    </div>
1386                </div>
1387            </div>
1388    </div>
1389</div>
1390</div>
1391
1392    <div id="modal" class="modal" data-reveal data-prevent-quick-search-close>
1393    <a href="#" class="modal-close" aria-label="Close" role="button" tabindex="0">
1394        <span aria-hidden="true">&#215;</span>
1395    </a>
1396    <div class="modal-content"></div>
1397    <div class="loadingOverlay"></div>
1398</div>
1399    <div id="alert-modal" class="modal modal--alert modal--small" data-reveal data-prevent-quick-search-close>
1400    <div class="swal2-icon swal2-error swal2-icon-show"><span class="swal2-x-mark"><span class="swal2-x-mark-line-left"></span><span class="swal2-x-mark-line-right"></span></span></div>
1401
1402    <div class="modal-content"></div>
1403
1404    <div class="button-container"><button type="button" class="confirm button" data-reveal-close>OK</button></div>
1405</div>
1406</div>
1407        <footer class="footer" role="contentinfo">
1408    <div class="container">
1409        <section class="footer-info">
1410                <article class="footer-info-col" data-section-type="storeInfo">
1411                    <label class="title footer-info-heading" role='heading' aria-level='2' aria-label='Visit Us'>Visit Us</label>
1412                    <address>3708 West Pioneer Parkway<br>
1413Arlington, TX 76013</address>
1414                    <label class="title footer-info-heading" role='heading' aria-level='2' style='margin-top: 1rem;'>HOURS</label>
1415                    <div class="footer-hours">Monday - Saturday 10am - 6pm | Sunday 12pm - 5pm</div>
1416                        <div class="exclusions">
1417                            * Exclusions apply. 48 Contiguous States only.
1418                        </div>
1419                </article>
1420            <article class="footer-info-col" data-section-type="footer-webPages" aria-labelledby="footerShopHeading">
1421                <label id="footerShopHeading" class="title footer-info-heading" role='heading' aria-level='2'>SHOP</label>
1422                <ul class="footer-info-list" role="list">
1423                    <li role="listitem"><a href="/collections/" title="Christmas Collections">Collections</a></li>
1424                    <li role="listitem"><a href="/tree-bundles/" title="Christmas Tree Bundles">Tree Bundles</a></li>
1425                    <li role="listitem"><a href="/outdoor-lighting/" title="Outdoor Lighting">Outdoor Lighting</a></li>
1426                    <li role="listitem"><a href="/decorations/featured" title="Featured Items">Featured Items</a></li>
1427                    <li role="listitem"><a href="/daves-deals/" title="Dave's Deals">Dave's Deals</a></li>
1428                    <li role="listitem"><a href="/about-us/">About Us</a></li>
1429                </ul>
1430            </article>
1431
1432            <article class="footer-info-col" data-section-type="footer-webPages" aria-labelledby="footerSupportHeading">
1433                <label id="footerSupportHeading" class="title footer-info-heading" role='heading' aria-level='2'>SUPPORT</label>
1434                <ul class="footer-info-list" role="list">
1435                    <li role="listitem"><a href="/shipping-policy" title="Shipping Policy">Shipping</a></li>
1436                    <li role="listitem"><a href="/return-policy" title="Return Policy">Returns</a></li>
1437                    <li role="listitem"><a href="/christmas-tree-warranty/" title="Christmas Tree Warranty">Christmas Tree Warranty</a></li>
1438                    <li role="listitem"><a href="/privacy-policy" title="Privacy Policy">Privacy Policy</a></li>
1439                    <li role="listitem"><a href="/terms-of-use" title="Terms of Use">Terms</a></li>
1440                    <li role="listitem"><a href="/contact-us" title="Contact Us">Contact Us</a></li>
1441                    <li role="listitem"><a href="/join-our-team" title="Contact Us">Join Our Team</a></li>
1442                    <li role="listitem"><a href="/accessibility-statement" title="Contact Us">Accessibility Statement</a></li>
1443                </ul>
1444            </article>
1445
1446            <article class="footer-info-col" data-section-type="footer-webPages" aria-labelledby="footerAccountHeading">
1447                <label id="footerAccountHeading" class="title footer-info-heading" role='heading' aria-level='2'>ACCOUNT</label>
1448                <ul class="footer-info-list" role="list">
1449                    <li role="listitem"><a href="/account.php?action=order_status" title="Orders">Orders</a></li>
1450                    <li role="listitem"><a href="/contact-us" title="Account Messages">Messages</a></li>
1451                    <li role="listitem"><a href="/wishlist.php" title="Wish List">Wish Lists</a></li>
1452                    <li role="listitem"><a href="/account.php?action=account_details" title="Account Settings">Account Settings</a></li>
1453                </ul>
1454            </article>
1455
1456            <article class="footer-info-col flex-end">
1457                    <a href="/">
1458                        <img
1459                            aria-hidden="true"
1460                            class="lazyload"
1461                            data-src="https://cdn11.bigcommerce.com/s-zqoar2tzjl/images/stencil/original/content/nav/logo/logo-white-2024.png"
1462                            width="163"
1463                            height="93"
1464                            alt="Decorator's Warehouse Logo" />
1465
1466                        <span class="sr-only">Decorator's Warehouse Homepage</a>
1467                    </a>
1468                        <ul class="socialLinks socialLinks--alt" role="list">
1469            <li class="socialLinks-item" role="listitem">
1470                <a class="icon icon--instagram" href="https://www.instagram.com/decoratorswarehouse/" target="_blank" title="Visit Decorator's Warehouse on instagram">
1471                    <svg><use xlink:href="#icon-instagram" /></svg>
1472                </a>
1473            </li>
1474            <li class="socialLinks-item" role="listitem">
1475                <a class="icon icon--facebook" href="https://www.facebook.com/decoratorswarehousearlington" target="_blank" title="Visit Decorator's Warehouse on facebook">
1476                    <svg><use xlink:href="#icon-facebook" /></svg>
1477                </a>
1478            </li>
1479            <li class="socialLinks-item" role="listitem">
1480                <a class="icon icon--pinterest" href="https://www.pinterest.com/Decwarehouse/" target="_blank" title="Visit Decorator's Warehouse on pinterest">
1481                    <svg><use xlink:href="#icon-pinterest" /></svg>
1482                </a>
1483            </li>
1484            <li class="socialLinks-item" role="listitem">
1485                <a class="icon icon--youtube" href="https://www.youtube.com/channel/UCoPljou2jt0fjEWz3ibalOw/videos" target="_blank" title="Visit Decorator's Warehouse on youtube">
1486                    <svg><use xlink:href="#icon-youtube" /></svg>
1487                </a>
1488            </li>
1489    </ul>
1490                    <form class="newsletter form" action="https://decoratorswarehouse.com/subscribe.php" method="post" aria-labelledby="subscriptionFormLabel">
1491    <label id='subscriptionFormLabel' class="footer-info-heading subscribe-title">STAY CONNECTED &amp; GET SPECIAL OFFERS</label>
1492    <fieldset class="form-fieldset">
1493        <legend class="is-srOnly">Newsletter Subscription</legend>
1494        <input type="hidden" name="action" value="subscribe">
1495        <input type="hidden" name="nl_first_name" value="bc">
1496        <input type="hidden" name="check" value="1">
1497        <div class="form-field">
1498            <label class="form-label is-srOnly" for="nl_email_footer">Email Address</label>
1499            <div class="form-prefixPostfix wrap">
1500                <input class="form-input" id="nl_email_footer" name="nl_email" type="email" value="" placeholder="EMAIL ADDRESS" required aria-label="Email Address" autocomplete="email">
1501                <input role="button" class="button button-red form-prefixPostfix-button--postfix" type="submit" value="SUBMIT">
1502            </div>
1503        </div>
1504    </fieldset>
1505</form>
1506            </article>
1507        </section>
1508    </div>
1509    <div class="footer-bottom">
1510        <div class="container">
1511                <div class="footer-copyright">
1512                    <p class="powered-by">
1513                        &copy; 2026 Decorator&#x27;s Warehouse
1514                        &mdash; <a href="/blog/tag/collections" title="Decorator's Warehouse Blog">Blog</a>
1515                        &mdash; Web design by <a href="https://eversite.com" target="_blank">Eversite</a>
1516                    </p>
1517                </div>
1518        </div>
1519    </div>
1520</footer>
1521
1522<script type='text/javascript'>
1523(function() {
1524    var $lightWidget = document.getElementById("lightwidget");
1525    if ($lightWidget) {
1526        var mediaQuery = window.matchMedia('(min-width: 768px)')
1527        if (true || mediaQuery.matches) { // for now, leave the social widget on mobile as well
1528            setTimeout(function() {
1529                for (var idx = 0; idx < $lightWidget.children.length; idx++) {
1530                    $lightWidget.children[idx].setAttribute("src", $lightWidget.children[idx].getAttribute("data-src"));
1531                }
1532            }, 2000);
1533        } else {
1534            $lightWidget.remove();
1535        }
1536    }
1537})();
1538</script>
1538
1539
1540        
1540<script src="https://cdn.jsdelivr.net/npm/swiper@10/swiper-bundle.min.js"></script>
1540
1541        
1541<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.min.js"></script>
1541
1542        
1542<script>window.__webpack_public_path__ = "https://cdn11.bigcommerce.com/s-zqoar2tzjl/stencil/32030570-9a5d-013f-a98b-120a24f73952/e/16b874b0-97e5-013f-45bc-4e388f6f202b/dist/";</script>
1542
1543        
1543<script src="https://cdn11.bigcommerce.com/s-zqoar2tzjl/stencil/32030570-9a5d-013f-a98b-120a24f73952/e/16b874b0-97e5-013f-45bc-4e388f6f202b/dist/theme-bundle.main.js"></script>
1543
1544        
1544<script src="https://kit.fontawesome.com/d3639a8563.js" crossorigin="anonymous" defer></script>
1544
1545        
1545<script>
1546            window.stencilBootstrap("login", "{\"themeSettings\":{\"optimizedCheckout-formChecklist-color\":\"#333333\",\"homepage_new_products_column_count\":4,\"card--alternate-color--hover\":\"#ffffff\",\"optimizedCheckout-colorFocus\":\"#4496f6\",\"fontSize-root\":18,\"show_accept_amex\":false,\"optimizedCheckout-buttonPrimary-borderColorDisabled\":\"transparent\",\"homepage_top_products_count\":20,\"paymentbuttons-paypal-size\":\"responsive\",\"optimizedCheckout-buttonPrimary-backgroundColorActive\":\"#000000\",\"brandpage_products_per_page\":60,\"color-secondaryDarker\":\"#cccccc\",\"navUser-color\":\"#175230\",\"color-textBase--active\":\"#757575\",\"social_icon_placement_bottom\":\"bottom_none\",\"show_powered_by\":true,\"show_accept_amazonpay\":false,\"fontSize-h4\":20,\"checkRadio-borderColor\":\"#cccccc\",\"color-primaryDarker\":\"#333333\",\"optimizedCheckout-buttonPrimary-colorHover\":\"#ffffff\",\"brand_size\":\"190x250\",\"optimizedCheckout-logo-position\":\"left\",\"optimizedCheckout-discountBanner-backgroundColor\":\"#e5e5e5\",\"color-textLink--hover\":\"#846E35\",\"gold\":\"#88753e\",\"pdp-sale-price-label\":\"Now:\",\"optimizedCheckout-buttonSecondary-backgroundColorHover\":\"#f5f5f5\",\"optimizedCheckout-headingPrimary-font\":\"Libre Baskerville\",\"logo_size\":\"250x100\",\"optimizedCheckout-formField-backgroundColor\":\"#ffffff\",\"footer-backgroundColor\":\"#175230\",\"navPages-color\":\"#333333\",\"productpage_reviews_count\":9,\"optimizedCheckout-step-borderColor\":\"#dddddd\",\"show_accept_paypal\":false,\"paymentbuttons-paypal-label\":\"checkout\",\"footer-link-color--hover\":\"#cbb47a\",\"paymentbuttons-paypal-shape\":\"pill\",\"optimizedCheckout-discountBanner-textColor\":\"#333333\",\"optimizedCheckout-backgroundImage-size\":\"1000x400\",\"pdp-retail-price-label\":\"MSRP:\",\"optimizedCheckout-buttonPrimary-font\":\"futura-pt\",\"carousel-dot-color\":\"#333333\",\"button--disabled-backgroundColor\":\"#cccccc\",\"blockquote-cite-font-color\":\"#999999\",\"optimizedCheckout-formField-shadowColor\":\"transparent\",\"categorypage_products_per_page\":60,\"container-fill-base\":\"#ffffff\",\"paymentbuttons-paypal-layout\":\"vertical\",\"homepage_featured_products_column_count\":4,\"button--default-color\":\"#666666\",\"pace-progress-backgroundColor\":\"#999999\",\"footer-header-color\":\"#cbb47a\",\"color-textLink--active\":\"#846E35\",\"optimizedCheckout-loadingToaster-backgroundColor\":\"#333333\",\"color-textHeading\":\"#444444\",\"show_accept_discover\":false,\"optimizedCheckout-formField-errorColor\":\"#B00F19\",\"spinner-borderColor-dark\":\"#999999\",\"restrict_to_login\":false,\"input-font-color\":\"#666666\",\"select-bg-color\":\"#ffffff\",\"show_accept_mastercard\":false,\"show_custom_fields_tabs\":false,\"color_text_product_sale_badges\":\"#ffffff\",\"optimizedCheckout-link-font\":\"futura-pt\",\"homepage_show_carousel_arrows\":true,\"supported_payment_methods\":[\"card\",\"paypal\"],\"carousel-arrow-bgColor\":\"#ffffff\",\"lazyload_mode\":\"lazyload\",\"carousel-title-color\":\"#FFFFFF\",\"color_hover_product_sale_badges\":\"#b00f19\",\"show_accept_googlepay\":false,\"card--alternate-borderColor\":\"#ffffff\",\"homepage_new_products_count\":5,\"button--disabled-color\":\"#ffffff\",\"color-primaryDark\":\"#666666\",\"color-grey\":\"#999999\",\"optimizedCheckout-step-textColor\":\"#ffffff\",\"optimizedCheckout-buttonPrimary-borderColorActive\":\"transparent\",\"navPages-subMenu-backgroundColor\":\"#175230\",\"homepage_hours_of_operation\":\"Monday - Saturday 10am - 6pm | Sunday 12pm - 5pm\",\"body-font\":\"futura-pt\",\"button--primary-backgroundColor\":\"#444444\",\"optimizedCheckout-formField-borderColor\":\"#888888\",\"checkRadio-color\":\"#333333\",\"show_product_dimensions\":false,\"optimizedCheckout-link-color\":\"#476bef\",\"card-figcaption-button-background\":\"#ffffff\",\"icon-color-hover\":\"#999999\",\"button--default-borderColor\":\"#cccccc\",\"optimizedCheckout-headingSecondary-font\":\"Libre Baskerville\",\"headings-font\":\"Libre Baskerville\",\"label-backgroundColor\":\"#cccccc\",\"button--primary-backgroundColorHover\":\"#666666\",\"pdp-non-sale-price-label\":\"Was:\",\"button--disabled-borderColor\":\"transparent\",\"label-color\":\"#ffffff\",\"optimizedCheckout-headingSecondary-color\":\"#333333\",\"social_share_img\":\"https://cdn11.bigcommerce.com/s-zqoar2tzjl/content/ogimg.jpg\",\"select-arrow-color\":\"#757575\",\"logo_fontSize\":28,\"alert-backgroundColor\":\"#ffffff\",\"optimizedCheckout-logo-size\":\"250x100\",\"default_image_brand\":\"img/BrandDefault.gif\",\"footer-color\":\"#e9f2ed\",\"card-title-color\":\"#175230\",\"optimizedCheckout-link-hoverColor\":\"#002fe1\",\"fontSize-h5\":15,\"footer-link-color\":\"#e9f2ed\",\"product_list_display_mode\":\"grid\",\"product_size\":\"500x659\",\"paymentbuttons-paypal-color\":\"gold\",\"homepage_show_carousel\":true,\"optimizedCheckout-body-backgroundColor\":\"#ffffff\",\"carousel-arrow-borderColor\":\"#ffffff\",\"silver\":\"#F0F2F1\",\"button--default-borderColorActive\":\"#757575\",\"paymentbuttons-paypal-tagline\":false,\"color-greyDarkest\":\"#000000\",\"color_badge_product_sale_badges\":\"#b00f19\",\"price_ranges\":true,\"productpage_videos_count\":8,\"header-backgroundColor\":\"#ffffff\",\"container-width\":1500,\"carousel-action-bgColor\":\"#88753e\",\"color-greyDark\":\"#666666\",\"optimizedCheckout-buttonSecondary-borderColorHover\":\"#999999\",\"optimizedCheckout-discountBanner
1546-iconColor\":\"#333333\",\"show_product_add_to_cart\":true,\"optimizedCheckout-buttonSecondary-borderColor\":\"#cccccc\",\"optimizedCheckout-loadingToaster-textColor\":\"#ffffff\",\"optimizedCheckout-buttonPrimary-colorDisabled\":\"#ffffff\",\"optimizedCheckout-formField-placeholderColor\":\"#999999\",\"navUser-color-hover\":\"#757575\",\"icon-ratingFull\":\"#757575\",\"default_image_gift_certificate\":\"img/GiftCertificate.png\",\"color-textBase--hover\":\"#757575\",\"color-errorLight\":\"#ffdddd\",\"social_icon_placement_top\":false,\"footer_exclusions_apply\":\"Exclusions apply. 48 Contiguous States only.\",\"blog_size\":\"190x250\",\"shop_by_price_visibility\":true,\"optimizedCheckout-buttonSecondary-colorActive\":\"#000000\",\"optimizedCheckout-orderSummary-backgroundColor\":\"#ffffff\",\"color-warningLight\":\"#fffdea\",\"show_product_weight\":true,\"dark_gray\":\"#333333\",\"button--default-colorActive\":\"#000000\",\"color-info\":\"#666666\",\"navPages-subMenu-heading-color\":\"#88753e\",\"optimizedCheckout-formChecklist-backgroundColorSelected\":\"#f5f5f5\",\"show_product_quick_view\":true,\"button--default-borderColorHover\":\"#999999\",\"card--alternate-backgroundColor\":\"#ffffff\",\"navUser-backgroundColor\":\"#F0F2F1\",\"hide_content_navigation\":false,\"pdp-price-label\":\"\",\"show_copyright_footer\":true,\"swatch_option_size\":\"22x22\",\"optimizedCheckout-show-logo\":\"none\",\"carousel-description-color\":\"#60A67E\",\"optimizedCheckout-formChecklist-backgroundColor\":\"#ffffff\",\"optimizedCheckout-orderSummary-borderColor\":\"#dddddd\",\"green\":\"#175230\",\"fontSize-h2\":25,\"optimizedCheckout-step-backgroundColor\":\"#757575\",\"optimizedCheckout-headingPrimary-color\":\"#333333\",\"color-textBase\":\"#333333\",\"color-warning\":\"#f1a500\",\"productgallery_size\":\"500x659\",\"alert-color\":\"#333333\",\"shop_by_brand_show_footer\":true,\"card-figcaption-button-color\":\"#333333\",\"searchpage_products_per_page\":60,\"color-textSecondary--active\":\"#333333\",\"optimizedCheckout-formField-inputControlColor\":\"#476bef\",\"optimizedCheckout-contentPrimary-color\":\"#333333\",\"optimizedCheckout-buttonSecondary-font\":\"futura-pt\",\"storeName-color\":\"#333333\",\"optimizedCheckout-backgroundImage\":\"\",\"form-label-font-color\":\"#666666\",\"color-greyLightest\":\"#e5e5e5\",\"optimizedCheckout-header-backgroundColor\":\"#f5f5f5\",\"productpage_related_products_count\":15,\"optimizedCheckout-buttonSecondary-backgroundColorActive\":\"#e5e5e5\",\"color-textLink\":\"#88753e\",\"color-greyLighter\":\"#cccccc\",\"color-secondaryDark\":\"#e5e5e5\",\"fontSize-h6\":13,\"paymentbuttons-paypal-fundingicons\":false,\"carousel-arrow-color\":\"#999999\",\"productpage_similar_by_views_count\":15,\"pdp-custom-fields-tab-label\":\"Additional Information\",\"loadingOverlay-backgroundColor\":\"#ffffff\",\"optimizedCheckout-buttonPrimary-color\":\"#ffffff\",\"input-bg-color\":\"#ffffff\",\"navPages-subMenu-separatorColor\":\"#cccccc\",\"navPages-color-hover\":\"#175230\",\"color-infoLight\":\"#dfdfdf\",\"product_sale_badges\":\"burst\",\"default_image_product\":\"img/ProductDefault.gif\",\"navUser-dropdown-borderColor\":\"#cccccc\",\"optimizedCheckout-buttonPrimary-colorActive\":\"#ffffff\",\"color-greyMedium\":\"#757575\",\"show_product_rating\":true,\"optimizedCheckout-formChecklist-borderColor\":\"#cccccc\",\"fontSize-h1\":28,\"homepage_featured_products_count\":4,\"color-greyLight\":\"#999999\",\"optimizedCheckout-logo\":\"\",\"icon-ratingEmpty\":\"#cccccc\",\"show_product_details_tabs\":true,\"icon-color\":\"#757575\",\"overlay-backgroundColor\":\"#333333\",\"input-border-color-active\":\"#666666\",\"hide_contact_us_page_heading\":true,\"container-fill-dark\":\"#e5e5e5\",\"christmas-tree-slider\":[],\"optimizedCheckout-buttonPrimary-backgroundColorDisabled\":\"#cccccc\",\"button--primary-color\":\"#ffffff\",\"optimizedCheckout-buttonPrimary-borderColorHover\":\"transparent\",\"color-successLight\":\"#d5ffd8\",\"color-greyDarker\":\"#333333\",\"show_product_quantity_box\":true,\"color-success\":\"#008a06\",\"optimizedCheckout-header-borderColor\":\"#dddddd\",\"zoom_size\":\"1280x1280\",\"color-white\":\"#ffffff\",\"optimizedCheckout-buttonSecondary-backgroundColor\":\"#ffffff\",\"productview_thumb_size\":\"50x50\",\"fontSize-h3\":22,\"spinner-borderColor-light\":\"#ffffff\",\"geotrust_ssl_common_name\":\"\",\"carousel-bgColor\":\"#175230\",\"carousel-dot-color-active\":\"#757575\",\"input-border-color\":\"#888888\",\"optimizedCheckout-buttonPrimary-backgroundColor\":\"#333333\",\"color-secondary\":\"#ffffff\",\"button--primary-backgroundColorActive\":\"#000000\",\"color-textSecondary--hover\":\"#333333\",\"color-whitesBase\":\"#e5e5e5\",\"body-bg\":\"#ffffff\",\"dropdown--quickSearch-backgroundColor\":\"#e5e5e5\",\"optimizedCheckout-contentSecondary-font\":\"futura-pt\",\"navUser-dropdown-backgroundColor\":\"#ffffff\",\"color-primary\":\"#757575\",\"o
1546ptimizedCheckout-contentPrimary-font\":\"futura-pt\",\"supported_card_type_icons\":[\"american_express\",\"diners\",\"discover\",\"mastercard\",\"visa\"],\"navigation_design\":\"simple\",\"optimizedCheckout-formField-textColor\":\"#333333\",\"color-black\":\"#ffffff\",\"homepage_top_products_column_count\":4,\"hide_page_heading\":false,\"navPages-subMenu-link-color\":\"#175230\",\"navPages-menu-color\":\"#175230\",\"optimizedCheckout-buttonSecondary-colorHover\":\"#333333\",\"hide_breadcrumbs\":false,\"button--primary-colorActive\":\"#ffffff\",\"homepage_stretch_carousel_images\":false,\"optimizedCheckout-contentSecondary-color\":\"#666666\",\"card-title-color-hover\":\"red\",\"applePay-button\":\"black\",\"thumb_size\":\"100x100\",\"optimizedCheckout-buttonPrimary-borderColor\":\"#333333\",\"navUser-indicator-backgroundColor\":\"#175230\",\"optimizedCheckout-buttonSecondary-borderColorActive\":\"#757575\",\"hide_blog_page_heading\":true,\"optimizedCheckout-header-textColor\":\"#333333\",\"hide_category_page_heading\":true,\"optimizedCheckout-show-backgroundImage\":false,\"color-primaryLight\":\"#999999\",\"footer-bottom-backgroundColor\":\"#1f3b2b\",\"show_accept_visa\":false,\"logo-position\":\"center\",\"show_product_reviews_tabs\":true,\"carousel-dot-bgColor\":\"#ffffff\",\"optimizedCheckout-form-textColor\":\"#666666\",\"optimizedCheckout-buttonSecondary-color\":\"#333333\",\"geotrust_ssl_seal_size\":\"M\",\"button--icon-svg-color\":\"#757575\",\"alert-color-alt\":\"#ffffff\",\"button--default-colorHover\":\"#333333\",\"checkRadio-backgroundColor\":\"#ffffff\",\"optimizedCheckout-buttonPrimary-backgroundColorHover\":\"#666666\",\"red\":\"#B00F19\",\"input-disabled-bg\":\"#ffffff\",\"dropdown--wishList-backgroundColor\":\"#ffffff\",\"container-border-global-color-base\":\"#e5e5e5\",\"productthumb_size\":\"100x100\",\"button--primary-colorHover\":\"#ffffff\",\"color-error\":\"#cc4749\",\"homepage_blog_posts_count\":3,\"color-textSecondary\":\"#757575\",\"carousel-action-color\":\"#FFFFFF\",\"gallery_size\":\"300x300\"},\"genericError\":\"Oops! Something went wrong.\",\"maintenanceMode\":[],\"urls\":{\"home\":\"https://decoratorswarehouse.com/\",\"brands\":\"https://decoratorswarehouse.com/brands/\",\"search\":\"https://decoratorswarehouse.com/search.php\",\"compare\":\"https://decoratorswarehouse.com/compare\",\"sitemap\":\"https://decoratorswarehouse.com/sitemap.php\",\"contact_us_submit\":\"https://decoratorswarehouse.com/pages.php?action=sendContactForm\",\"subscribe\":{\"action\":\"https://decoratorswarehouse.com/subscribe.php\"},\"checkout\":{\"single_address\":\"https://decoratorswarehouse.com/checkout\",\"multiple_address\":\"https://decoratorswarehouse.com/checkout.php?action=multiple\"},\"account\":{\"orders\":{\"all\":\"https://decoratorswarehouse.com/account.php?action=order_status\",\"completed\":\"https://decoratorswarehouse.com/account.php?action=view_orders\",\"save_new_return\":\"https://decoratorswarehouse.com/account.php?action=save_new_return\"},\"returns\":\"https://decoratorswarehouse.com/account.php?action=view_returns\",\"addresses\":\"https://decoratorswarehouse.com/account.php?action=address_book\",\"inbox\":\"https://decoratorswarehouse.com/account.php?action=inbox\",\"send_message\":\"https://decoratorswarehouse.com/account.php?action=send_message\",\"add_address\":\"https://decoratorswarehouse.com/account.php?action=add_shipping_address\",\"update_action\":\"https://decoratorswarehouse.com/account.php?action=update_account\",\"details\":\"https://decoratorswarehouse.com/account.php?action=account_details\",\"recent_items\":\"https://decoratorswarehouse.com/account.php?action=recent_items\",\"index\":\"https://decoratorswarehouse.com/account.php\",\"wishlists\":{\"all\":\"https://decoratorswarehouse.com/wishlist.php\",\"add\":\"https://decoratorswarehouse.com/wishlist.php?action=addwishlist\",\"edit\":\"https://decoratorswarehouse.com/wishlist.php?action=editwishlist\",\"delete\":\"https://decoratorswarehouse.com/wishlist.php?action=deletewishlist\"}},\"auth\":{\"login\":\"https://decoratorswarehouse.com/login.php\",\"check_login\":\"https://decoratorswarehouse.com/login.php?action=check_login\",\"create_account\":\"https://decoratorswarehouse.com/login.php?action=create_account\",\"save_new_account\":\"https://decoratorswarehouse.com/login.php?action=save_new_account\",\"forgot_password\":\"https://decoratorswarehouse.com/login.php?action=reset_password\",\"send_password_email\":\"https://decoratorswarehouse.com/login.php?action=send_password_email\",\"save_new_password\":\"https://decoratorswarehouse.com/login.php?action=save_new_password\",\"logout\":\"https://decoratorswarehouse.com/login.php?action=logout\"},\"cart\":\"https://decoratorswarehouse.com/cart.php\",\"product\":{\"post_review\":\"https://decoratorswarehouse.com/postreview.php\"},\"gift_certificate\":{\"purchase\":\"https://decoratorswarehouse.com/giftcertificates.php\",\"redeem\":\"https://decoratorswarehouse.com/giftcertificates.php?action=redeem\",\"balance\":\"https://decoratorswarehouse.com/giftcertificates.php?action=balance\"},\"rss\":{\"products\":[]}},\"secureBaseUrl\":\"https://decoratorswarehouse.com\",\"cartId\":null,\"template\":\"pages/auth/login\",\"customerGroupId\":null,\"useValidEmail\":\"Please use a valid email address, such as [email protected].\",\"enterPass\":\"You must enter a password.\"}").load();
1547        </script>
1547
1548        
1548<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js.cookie.min.js"></script>
1548
1549         
1550        
1550<script type="text/javascript" src="https://cdn11.bigcommerce.com/shared/js/csrf-protection-header-5eeddd5de78d98d146ef4fd71b2aedce4161903e.js"></script>
vendor: 1 bytes, line 1550
1550
1551<script src="https://apis.google.com/js/platform.js?onload=renderBadge" async defer ></script>
1551
1552
1553
1554<!-- Google tag (gtag.js) -->
vendor: 64 bytes, lines 1554-1555
1554
1555<script async src="https://www.googletagmanager.com/gtag/js?id=
1555AW-779432509
vendor: 12 bytes, line 1555
1555"></script>
1556<script>
1557  window.dataLayer = window.dataLayer || [];
1558  function gtag(){dataLayer.push(arguments);}
1559  gtag('js', new Date());
1560  gtag('config', 'AW-779432509');
1561</script>
1561<script data-cfasync="false">(function(w,i,s,e){window[w]=window[w]||function(){(window[w].q=window[w].q||[]).push(arguments)};window[w].l=Date.now();s=document.createElement('script');e=document.getElementsByTagName('script')[0];s.defer=1;s.src=i;e.parentNode.insertBefore(s, e)})('wisepops', 'https://wisepops.net/loader.js?v=2&h=HD8Q9Xz2Sh');</script>
1561<script data-bc-cookie-consent="4" type="text/plain" id="merchantWidgetScript" src="https://www.gstatic.com/shopping/merchant/merchantwidget.js" defer></script>
vendor: 1 bytes, line 1561
1561
1562<script data-bc-cookie-consent="4" type="text/plain">
1563merchantWidgetScript.addEventListener('load', function () {
1564  merchantwidget.start({ position: 'RIGHT_BOTTOM' });
1565});
1566</script>
1566
1567    
1567<script>window.__CF$cv$params={r:'a41043b20d642318',t:'MTc5MDQwNDY5Mg==',u:'01a0dc6f8c407294bef07ff05449f7ec',ut:'ErpZvL8NEcrsTkbTJOftxYzDlwtjYjbJpO.vQq4_VP4-1790404693-1.2.1.1-QBkUs.xWks1kcsD.uTY_e_UWCBHmSsSVTKH0mqeeuaNqEAnxGy4isttPthTZjrpRDek_kJdWNMk5OQlAnwGPcDzEpH.PNINUBMD6Uks567M',i:60};(function(){if(!document.body)return;var s=document.createElement('script');s.src='/cdn-cgi/challenge-platform/scripts/precursor/main.js';document.head.appendChild(s);})();</script>
1567</body>
1568</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.