PageSourceSearch

https://www.thephotostick.com/search

html thephotostick.com collected 2026-10-01 14:15:26 UTC 414,714 bytes, 2,499 lines download raw bytes

1<!doctype html>
2<html class="no-js" lang="en" dir="ltr">
3  <head>
4
5
6
7
8
9
10  <style>
11    .t-consentPrompt {
12      width: fit-content !important;
13      max-width: 600px !important;
14      border-radius: 0 !important;
15      padding: 8px 10px !important;
16    }
17
18    @media (max-width: 768px) {
19      .t-consentPrompt {
20        width: 85vw !important;
21        max-width: 85vw !important;
22      }
23    }
24
25    .t-consentPrompt [class*="termly-styles-main"],
26    .t-consentPrompt [class*="termly-styles-content"] {
27      padding: 0 !important;
28      gap: 4px !important;
29    }
30
31    .t-consentPrompt [class*="termly-styles-message"] {
32      margin: 0 0 6px 0 !important;
33      line-height: 1.3 !important;
34    }
35
36    .t-consentPrompt [class*="termly-styles-buttons"] {
37      padding: 0 !important;
38      gap: 4px !important;
39      margin: 0 !important;
40    }
41
42    .t-consentPrompt .t-preference-button,
43    .t-consentPrompt .t-declineButton,
44    .t-consentPrompt .t-acceptAllButton {
45      padding: 4px 8px !important;
46      min-height: unset !important;
47    }
48  </style>
49
50  
50<script
51    type="text/javascript"
52    src="https://app.termly.io/resource-blocker/90f6a0c0-33da-4b6b-b6b1-910ebe84e0a0?autoBlock=on"
53  ></script>
53
54
55  
55<script>
56    function patchTermlyBanner() {
57      const msg = document.querySelector('.t-consentPrompt [data-testid="cookie-policy-link"]')?.closest('div');
58      if (msg && !msg.dataset.patched) {
59        const cookieLinkClass = document.querySelector('[data-testid="cookie-policy-link"]').className;
60        const prefLinkClass = document.querySelector('[data-testid="preferences-link"]').className;
61
62        msg.innerHTML = `We use cookies for personalization, marketing, and analytics. See our <span role="button" tabindex="0" data-testid="cookie-policy-link" class="${cookieLinkClass}">Cookie Policy</span> or edit your <span role="button" tabindex="0" data-testid="preferences-link" class="${prefLinkClass}">Preferences</span>.`;
63        msg.dataset.patched = 'true';
64        return true;
65      }
66      return false;
67    }
68
69    const observer = new MutationObserver(() => {
70      patchTermlyBanner();
71    });
72    observer.observe(document.documentElement, { childList: true, subtree: true });
73
74    let attempts = 0;
75    const interval = setInterval(() => {
76      attempts++;
77      if (patchTermlyBanner() || attempts >= 25) {
78        clearInterval(interval);
79      }
80    }, 200);
81  </script>
81
82
83
84<!-- ThePhotoStick Zendesk Widget script -->
85
86
87
88
89
90
91
92
93
94
95
96
97  
97<script id="ze-snippet"
98    src="https://static.zdassets.com/ekr/snippet.js?key=0d069847-64d1-4956-a729-0543b79d2c35">
99  </script>
99
100
101
102
103<!-- FF Pro Page Defaults for /pages/get-thephotostick-omni-special-offer-today -->
104
105
106<!-- FF Pro Page Defaults for /blogs/news/find-and-protect-your-memories-with-thephotostick-omni -->
107
108
109<!-- FF Pro Page Defaults for /blogs/news/best-photo-backup-devices-of-the-year -->
110
111
112<!-- FF Pro Page Defaults for /blogs/news/best-photo-backup-devices-of-the-year-24 -->
113
114
115<!-- FF Pro Page Defaults for /pages/best-photo-backup-devices-of-the-year -->
116
117
118<!-- FF Pro Page Defaults for /blogs/news/find-photos-on-any-computer-phone-or-tablet-with-thephotostick-omni-x -->
119
120
121<!-- FF Pro Page Defaults for /blogs/news/keep-your-family-photos-safe-with-thephotostick-omni-x -->
122
123
124<!-- FF Pro Page Defaults for /blogs/news/protect-your-family-memories-with-thephotostick-omni-x -->
125
126
127<!-- FF Pro Page Defaults for /blogs/news/thephotostick-omni-protects-your-photos-and-videos-g -->
128
129
130<!-- FF Pro Page Defaults for /blogs/news/thephotostick-omni-protects-your-photos-and-videos-g -->
131
132
133
134<!-- FF Pro Page Defaults for /blogs/news/thephotostick-omni-protects-your-photos-and-videos-gp -->
135
136
137
138
139
140<!-- TEMPLATE, USE THIS FOR PAGES
141 -->
142
143<!-- TEMPLATE, USE THIS FOR BLOGS
144 -->
145
146<!-- FF Pro Universal Tag -->
147<script>!function(f,l,u,x,j,s,a,b){window.flux||(j="undefined"!=typeof fluxOptions?fluxOptions:{},s="undefined"!=typeof fluxDefaults?fluxDefaults:{},(a=l.createElement("script")).src="https://"+u+"/integration/lumetricv2.min.js?v="+x,a.type="text/javascript",a.async="true",queue=[],window.flux={track:function(){queue.push(arguments)}},a.onload=a.onreadystatechange=function(){var rs=this.readyState;if(!rs||"complete"==rs||"loaded"==rs)try{for(window.flux=new Lumetric(u,x,j,s);0!=queue.length;){var args=queue.pop();window.flux.track.apply(null,args)}}catch(e){}},(b=document.getElementsByTagName("script")[0]).parentNode.insertBefore(a,b))}(window,document,"track.thephotostickquiz.com","3.3.0");</script>
147
148
149<!-- FF Pro View Event -->
150<script>
151 flux.track("view")
152</script>
152
153<!-- Hide header for sales pages -->
154
155
156<!-- Hide header for sales pages by URL -->
157
158
159<!-- Hide footer for sales pages -->
160
161<!-- Hide announcement bar -->
162
163
164
165
166
167<!-- Hide announcement bar on Shopify pages -->
168
169
170
171
172
173
174
175
176
177    <meta charset="utf-8">
178    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
179    <meta name="viewport" content="width=device-width,initial-scale=1">
180    <meta name="theme-color" content="#ff9c27">
181    <link rel="canonical" href="https://www.thephotostick.com/search">
182    <link rel="preconnect" href="https://fonts.shopifycdn.com" crossorigin>
183
184    
184<script>document.documentElement.classList.replace('no-js','js')</script>
184
185    
185<script>document.documentElement.classList.add(('ontouchstart' in window) || navigator.maxTouchPoints > 0 ? 'touch' : 'no-touch')</script>
185<link rel="shortcut icon" href="//www.thephotostick.com/cdn/shop/files/Brand_Logos_17.png?crop=center&height=32&v=1773331799&width=32" type="image/png" /><title>Search &ndash; ThePhotoStick</title><meta name="description" content="ThePhotoStick® is the original photo backup solution, allowing you to securely store and transfer your precious memories. Shop our official website for a simple, safe, and secure experience when purchasing and using ThePhotoStick® Omni and our other memory-saving products.">
186<meta property="og:site_name" content="ThePhotoStick">
187<meta property="og:url" content="https://www.thephotostick.com/search">
188<meta property="og:title" content="Search">
189<meta property="og:type" content="website">
190<meta property="og:description" content="ThePhotoStick® is the original photo backup solution, allowing you to securely store and transfer your precious memories. Shop our official website for a simple, safe, and secure experience when purchasing and using ThePhotoStick® Omni and our other memory-saving products."><meta name="twitter:site" content="@">
191<meta name="twitter:card" content="summary_large_image">
192<meta name="twitter:title" content="Search">
193<meta name="twitter:description" content="ThePhotoStick® is the original photo backup solution, allowing you to securely store and transfer your precious memories. Shop our official website for a simple, safe, and secure experience when purchasing and using ThePhotoStick® Omni and our other memory-saving products.">
194<style>@font-face {
195  font-family: Montserrat;
196  font-weight: 600;
197  font-style: normal;
198  font-display: swap;
199  src: url("//www.thephotostick.com/cdn/fonts/montserrat/montserrat_n6.1326b3e84230700ef15b3a29fb520639977513e0.woff2") format("woff2"),
200       url("//www.thephotostick.com/cdn/fonts/montserrat/montserrat_n6.652f051080eb14192330daceed8cd53dfdc5ead9.woff") format("woff");
201}
202@font-face {
203  font-family: Montserrat;
204  font-weight: 500;
205  font-style: normal;
206  font-display: swap;
207  src: url("//www.thephotostick.com/cdn/fonts/montserrat/montserrat_n5.07ef3781d9c78c8b93c98419da7ad4fbeebb6635.woff2") format("woff2"),
208       url("//www.thephotostick.com/cdn/fonts/montserrat/montserrat_n5.adf9b4bd8b0e4f55a0b203cdd84512667e0d5e4d.woff") format("woff");
209}
210@font-face {
211  font-family: Montserrat;
212  font-weight: 700;
213  font-style: normal;
214  font-display: swap;
215  src: url("//www.thephotostick.com/cdn/fonts/montserrat/montserrat_n7.3c434e22befd5c18a6b4afadb1e3d77c128c7939.woff2") format("woff2"),
216       url("//www.thephotostick.com/cdn/fonts/montserrat/montserrat_n7.5d9fa6e2cae713c8fb539a9876489d86207fe957.woff") format("woff");
217}
218@font-face {
219  font-family: Muli;
220  font-weight: 400;
221  font-style: normal;
222  font-display: swap;
223  src: url("//www.thephotostick.com/cdn/fonts/muli/muli_n4.e949947cfff05efcc994b2e2db40359a04fa9a92.woff2") format("woff2"),
224       url("//www.thephotostick.com/cdn/fonts/muli/muli_n4.35355e4a0c27c9bc94d9af3f9bcb586d8229277a.woff") format("woff");
225}
226@font-face {
227  font-family: Muli;
228  font-weight: 500;
229  font-style: normal;
230  font-display: swap;
231  src: url("//www.thephotostick.com/cdn/fonts/muli/muli_n5.42406f20a7ccca1e01311dc690905ffca2c49e4b.woff2") format("woff2"),
232       url("//www.thephotostick.com/cdn/fonts/muli/muli_n5.edc61b4ccf7201dbc1e6093959c796eeb8e38e67.woff") format("woff");
233}
234@font-face {
235  font-family: Muli;
236  font-weight: 700;
237  font-style: normal;
238  font-display: swap;
239  src: url("//www.thephotostick.com/cdn/fonts/muli/muli_n7.c8c44d0404947d89610714223e630c4cbe005587.woff2") format("woff2"),
240       url("//www.thephotostick.com/cdn/fonts/muli/muli_n7.4cbcffea6175d46b4d67e9408244a5b38c2ac568.woff") format("woff");
241}
242@font-face {
243  font-family: Muli;
244  font-weight: 400;
245  font-style: italic;
246  font-display: swap;
247  src: url("//www.thephotostick.com/cdn/fonts/muli/muli_i4.c0a1ea800bab5884ab82e4eb25a6bd25121bd08c.woff2") format("woff2"),
248       url("//www.thephotostick.com/cdn/fonts/muli/muli_i4.a6c39b1b31d876de7f99b3646461aa87120de6ed.woff") format("woff");
249}
250@font-face {
251  font-family: Muli;
252  font-weight: 700;
253  font-style: italic;
254  font-display: swap;
255  src: url("//www.thephotostick.com/cdn/fonts/muli/muli_i7.34eedbf231efa20bd065d55f6f71485730632c7b.woff2") format("woff2"),
256       url("//www.thephotostick.com/cdn/fonts/muli/muli_i7.2b4df846821493e68344d0b0212997d071bf38b7.woff") format("woff");
257}
258:root {
259    /*! General */
260    --color-base-text: 23 23 23;
261    --color-base-highlight: 50 189 252;
262    --color-base-background: 255 255 255;
263    --color-base-button: 255 156 39;
264    --color-base-button-gradient: #ff9c27;
265    --color-base-button-text: 255 255 255;
266    --color-keyboard-focus: 0 139 216;
267    --color-shadow: 50 189 252;
268    --color-price: 23 23 23;
269    --color-sale-price: 34 187 21;
270    --color-sale-tag: 255 156 39;
271    --color-sale-tag-text: 255 255 255;
272    --color-rating: 50 189 252;
273    --color-placeholder: 250 250 250;
274    --color-success-text: 34 187 21;
275    --color-success-background: 250 250 250;
276    --color-error-text: 190 18 60;
277    --color-error-background: 255 241 242;
278    --color-info-text: 0 139 216;
279    --color-info-background: 219 241 254;
280    
281    /*! Menu and drawers */
282    --color-drawer-text: 23 23 23;
283    --color-drawer-background: 255 255 255;
284    --color-drawer-button-background: 0 139 216;
285    --color-drawer-button-gradient: #008bd8;
286    --color-drawer-button-text: 255 255 255;
287    --color-drawer-overlay: 23 23 23;
288
289    /*! Product card */
290    --card-radius: var(--rounded-card);
291    --card-border-width: 0.0rem;
292    --card-border-opacity: 0.0;
293    --card-shadow-opacity: 0.1;
294    --card-shadow-horizontal-offset: 0.0rem;
295    --card-shadow-vertical-offset: 0.0rem;
296
297    /*! Buttons */
298    --buttons-radius: var(--rounded-button);
299    --buttons-border-width: 2px;
300    --buttons-border-opacity: 1.0;
301    --buttons-shadow-opacity: 0.0;
302    --buttons-shadow-horizontal-offset: 0px;
303    --buttons-shadow-vertical-offset: 0px;
304
305    /*! Inputs */
306    --inputs-radius: var(--rounded-input);
307    --inputs-border-width: 0px;
308    --inputs-border-opacity: 0.65;
309
310    /*! Spacing */
311    --sp-0d5: 0.125rem;
312    --sp-1: 0.25rem;
313    --sp-1d5: 0.375rem;
314    --sp-2: 0.5rem;
315    --sp-2d5: 0.625rem;
316    --sp-3: 0.75rem;
317    --sp-3d5: 0.875rem;
318    --sp-4: 1rem;
319    --sp-4d5: 1.125rem;
320    --sp-5: 1.25rem;
321    --sp-5d5: 1.375rem;
322    --sp-6: 1.5rem;
323    --sp-6d5: 1.625rem;
324    --sp-7: 1.75rem;
325    --sp-7d5: 1.875rem;
326    --sp-8: 2rem;
327    --sp-8d5: 2.125rem;
328    --sp-9: 2.25rem;
329    --sp-9d5: 2.375rem;
330    --sp-10: 2.5rem;
331    --sp-10d5: 2.625rem;
332    --sp-11: 2.75rem;
333    --sp-12: 3rem;
334    --sp-13: 3.25rem;
335    --sp-14: 3.5rem;
336    --sp-15: 3.875rem;
337    --sp-16: 4rem;
338    --sp-18: 4.5rem;
339    --sp-20: 5rem;
340    --sp-23: 5.625rem;
341    --sp-24: 6rem;
342    --sp-28: 7rem;
343    --sp-32: 8rem;
344    --sp-36: 9rem;
345    --sp-40: 10rem;
346    --sp-44: 11rem;
347    --sp-48: 12rem;
348    --sp-52: 13rem;
349    --sp-56: 14rem;
350    --sp-60: 15rem;
351    --sp-64: 16rem;
352    --sp-68: 17rem;
353    --sp-72: 18rem;
354    --sp-80: 20rem;
355    --sp-96: 24rem;
356    --sp-100: 32rem;
357
358    /*! Font family */
359    --font-heading-family: Montserrat, sans-serif;
360    --font-heading-style: normal;
361    --font-heading-weight: 600;
362    --font-heading-line-height: 1;
363    --font-heading-letter-spacing: -0.02em;
364    
365
366    --font-body-family: Muli, sans-serif;
367    --font-body-style: normal;
368    --font-body-weight: 400;
369    --font-body-line-height: 1.2;
370    --font-body-letter-spacing: 0.0em;
371
372    --font-navigation-family: var(--font-heading-family);
373    --font-navigation-size: clamp(0.875rem, 0.748rem + 0.3174vw, 1.125rem);
374    --font-navigation-weight: 500;
375    
376
377    --font-button-family: var(--font-heading-family);
378    --font-button-size: clamp(0.875rem, 0.8115rem + 0.1587vw, 1.0rem);
379    --font-button-weight: 500;
380    
381
382    --font-product-family: var(--font-body-family);
383    --font-product-size: clamp(1.0rem, 0.873rem + 0.3175vw, 1.25rem);
384    --font-product-weight: 500;
385    
386
387    /*! Font size */
388    --text-3xs: 0.625rem;
389    --text-2xs: 0.6875rem;
390    --text-xs: 0.75rem;
391    --text-2sm: 0.8125rem;
392    --text-sm: 0.875rem;
393    --text-base: 1.0rem;
394    --text-lg: 1.125rem;
395    --text-xl: 1.25rem;
396    --text-2xl: 1.5rem;
397    --text-3xl: 1.875rem;
398    --text-4xl: 2.25rem;
399    --text-5xl: 3.0rem;
400    --text-6xl: 3.75rem;
401    --text-7xl: 4.5rem;
402    --text-8xl: 6.0rem;
403
404    /*! Layout */
405    --page-width: 1900px;
406    --gap-padding: clamp(var(--sp-5), 2.526vw, var(--sp-12));
407    --grid-gap: clamp(40px, 20vw, 60px);
408    --page-padding: var(--sp-5);
409    --page-container: min(calc(100vw - var(--page-padding) * 2), var(--page-width));
410    --rounded-button: 3.75rem;
411    --rounded-input: 0.375rem;
412    --rounded-card: clamp(var(--sp-2d5), 1.053vw, var(--sp-5));
413    --rounded-block: clamp(var(--sp-2d5), 1.053vw, var(--sp-5));
414
415    /*! Other */
416    --icon-weight: 1.5px;
417  }
418
419  @media screen and (min-width: 1024px) {
420    :root {
421      --page-padding: var(--sp-9);
422    }
423  }
424
425  @media screen and (min-width: 1280px) {
426    :root {
427      --gap-padding: var(--sp-12);
428      --page-padding: var(--sp-12);
429      --page-container: min(calc(100vw - var(--page-padding) * 2), max(var(--page-width), 1280px));
430    }
431  }
432
433  @media screen and (min-width: 1536px) {
434    :root {
435      --page-padding: max(var(--sp-12), 50vw - var(--page-width)/2);
436    }
437  }
438</style>
439  <link rel="preload" as="font" href="//www.thephotostick.com/cdn/fonts/muli/muli_n4.e949947cfff05efcc994b2e2db40359a04fa9a92.woff2" type="font/woff2" crossorigin>
440
441  <link rel="preload" as="font" href="//www.thephotostick.com/cdn/fonts/montserrat/montserrat_n6.1326b3e84230700ef15b3a29fb520639977513e0.woff2" type="font/woff2" crossorigin>
442<link href="//www.thephotostick.com/cdn/shop/t/45/assets/theme.css?v=158977393782855967621779202834" rel="stylesheet" type="text/css" media="all" /><link rel="stylesheet" href="//www.thephotostick.com/cdn/shop/t/45/assets/apps.css?v=162097722211979372921778619149" media="print" fetchpriority="low" onload="this.media='all'">
443
444    
444<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
444<meta name="google-site-verification" content="f41cDPuME7t1gZPy7DFhKimbbu4V-LqRMqAlLv0ZlL4">
445<meta name="google-site-verification" content="ffV6Dv-duHHsxUfwznO7NkLCOd0qrxOsIGSU9EQfQf4">
446<meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/16814029/digital_wallets/dialog">
447<meta id="in-context-paypal-metadata" data-shop-id="16814029" data-venmo-supported="false" data-environment="production" data-locale="en_US" data-paypal-v4="true" data-currency="USD">
448<link rel="ucp" href="/.well-known/ucp" version="2026-08-25"><link rel="alternate" hreflang="x-default" href="https://www.thephotostick.com/search">
449<link rel="alternate" hreflang="en" href="https://www.thephotostick.com/search">
450<link rel="alternate" hreflang="de" href="https://www.thephotostick.com/de/search">
451<link rel="alternate" hreflang="fr" href="https://www.thephotostick.com/fr/search">
452<script async="async" src="/checkouts/internal/preloads.js?locale=en-AM&default_configuration_id=3598188680"></script>
452
453<link rel="preconnect" href="https://shop.app" crossorigin="anonymous">
454<script async="async" src="https://shop.app/checkouts/internal/preloads.js?locale=en-AM&default_configuration_id=3598188680&shop_id=16814029" crossorigin="anonymous"></script>
vendor: 1 bytes, line 454
454
455<script id="apple-pay-shop-capabilities" type="application/json">{"shopId":16814029,"countryCode":"US","currencyCode":"USD","merchantCapabilities":["supports3DS"],"merchantId":"gid:\/\/shopify\/Shop\/16814029","merchantName":"ThePhotoStick","requiredBillingContactFields":["postalAddress","email"],"requiredShippingContactFields":["postalAddress","email"],"shippingType":"shipping","supportedNetworks":["visa","masterCard","amex","discover","elo","jcb"],"total":{"type":"pending","label":"ThePhotoStick","amount":"1.00"},"shopifyPaymentsEnabled":true,"supportsSubscriptions":true}</script>
vendor: 1 bytes, line 455
455
456<script id="shopify-features" type="application/json">{"accessToken":"29be021c035fbb0aca397f4b6b81959d","betas":["rich-media-storefront-analytics"],"domain":"www.thephotostick.com","predictiveSearch":true,"shopId":16814029,"locale":"en"}</script>
vendor: 1 bytes, line 456
456
457<script>var Shopify = Shopify || {};
458Shopify.shop = "thephotostick.myshopify.com";
459Shopify.locale = "en";
460Shopify.currency = {"active":"USD","rate":"1.0"};
461Shopify.country = "AM";
462Shopify.theme = {"name":"Concept (Live)","id":148984823944,"schema_name":"Concept","schema_version":"5.3.3","theme_store_id":2412,"role":"main"};
463Shopify.theme.handle = "null";
464Shopify.theme.style = {"id":null,"handle":null};
465Shopify.cdnHost = "www.thephotostick.com/cdn";
466Shopify.routes = Shopify.routes || {};
467Shopify.routes.root = "/";
468Shopify.shopJsCdnBaseUrl = "https://cdn.shopify.com/shopifycloud/shop-js";
469Shopify.SignInWithShop = Shopify.SignInWithShop || {};
470Shopify.SignInWithShop.User = Shopify.SignInWithShop.User || {};
471Shopify.SignInWithShop.User.recognized = false;</script>
vendor: 1 bytes, line 471
471
472<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
vendor: 1 bytes, line 472
472
473<script>!function(o){function n(){var o=[];function n(){o.push(Array.prototype.slice.apply(arguments))}return n.q=o,n}var t=o.Shopify=o.Shopify||{};t.loadFeatures=n(),t.autoloadFeatures=n()}(window);</script>
vendor: 1 bytes, line 473
473
474<script>
475  window.ShopifyPay = window.ShopifyPay || {};
476  window.ShopifyPay.apiHost = "shop.app\/pay";
477  window.ShopifyPay.redirectState = null;
478</script>
vendor: 1 bytes, line 478
478
479<script>
480  window.Shopify = window.Shopify || {};
481  window.Shopify.SignInWithShop = window.Shopify.SignInWithShop || {};
482  window.Shopify.SignInWithShop.assetMetrics = { sampleRate: 0.25 };
483  window.Shopify.SignInWithShop.eligible = true;
484</script>
vendor: 1 bytes, line 484
484
485<script id="shop-js-analytics" type="application/json">{"pageType":"search"}</script>
vendor: 1 bytes, line 485
485
486<script defer="defer" async type="module" src="https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js"></script>
vendor: 1 bytes, line 486
486
487<script type="module">
488  await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js");
489
490  window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true});
491
492</script>
vendor: 1 bytes, line 492
492
493<script>
494  window.Shopify = window.Shopify || {};
495  if (!window.Shopify.featureAssets) window.Shopify.featureAssets = {};
496  window.Shopify.featureAssets['shop-js'] = {"avatar":["modules/v2/loader.avatar.en.esm.js"],"checkout-modal":["modules/v2/loader.checkout-modal.en.esm.js"],"init-customer-accounts-sign-up":["modules/v2/loader.init-customer-accounts-sign-up.en.esm.js"],"init-customer-accounts":["modules/v2/loader.init-customer-accounts.en.esm.js"],"init-fed-cm":["modules/v2/loader.init-fed-cm.en.esm.js"],"init-shop-cart-sync":["modules/v2/loader.init-shop-cart-sync.en.esm.js"],"init-shop-email-lookup-coordinator":["modules/v2/loader.init-shop-email-lookup-coordinator.en.esm.js"],"init-shop-for-new-customer-accounts":["modules/v2/loader.init-shop-for-new-customer-accounts.en.esm.js"],"init-shop-user-recognition":["modules/v2/loader.init-shop-user-recognition.en.esm.js"],"init-windoid":["modules/v2/loader.init-windoid.en.esm.js"],"lead-capture":["modules/v2/loader.lead-capture.en.esm.js"],"listener":["modules/v2/loader.listener.en.esm.js"],"pay-button":["modules/v2/loader.pay-button.en.esm.js"],"payment-terms":["modules/v2/loader.payment-terms.en.esm.js"],"shop-button":["modules/v2/loader.shop-button.en.esm.js"],"shop-cart-sync":["modules/v2/loader.shop-cart-sync.en.esm.js"],"shop-cash-offers":["modules/v2/loader.shop-cash-offers.en.esm.js"],"shop-follow-button":["modules/v2/loader.shop-follow-button.en.esm.js"],"shop-login-button":["modules/v2/loader.shop-login-button.en.esm.js"],"shop-login":["modules/v2/loader.shop-login.en.esm.js"],"shop-toast-manager":["modules/v2/loader.shop-toast-manager.en.esm.js"],"shop-user-recognition":["modules/v2/loader.shop-user-recognition.en.esm.js"]};
497</script>
vendor: 1 bytes, line 497
497
498<script>(function() {
499  var isLoaded = false;
500  function asyncLoad() {
501    if (isLoaded) return;
502    isLoaded = true;
503    var urls = ["\/\/cdn.ywxi.net\/js\/1.js?shop=thephotostick.myshopify.com","https:\/\/faqs-plus.herokuapp.com\/public\/script-tags\/ef-faq-plus-script.min.js?shop=thephotostick.myshopify.com","https:\/\/cdnv2.zoomifi.com\/start.js?v=46940\u0026shop=thephotostick.myshopify.com","https:\/\/app.helpfulcrowd.com\/res\/shopify\/0ES4Ry\/storefront_scripts.js?shop=thephotostick.myshopify.com","\/\/cdn.ywxi.net\/js\/partner-shopify.js?shop=thephotostick.myshopify.com","\/\/cdn.trustedsite.com\/js\/partner-shopify.js?shop=thephotostick.myshopify.com","\/\/cdn.trustedsite.com\/js\/partner-shopify.js?shop=thephotostick.myshopify.com","https:\/\/nudgify.ams3.cdn.digitaloceanspaces.com\/shopify.js?uuid=b3711e6f-f7a8-439e-9596-c01a94043d98\u0026shop=thephotostick.myshopify.com","https:\/\/cdnv2.zoomifi.com\/bundle.js?v=46940\u0026shop=thephotostick.myshopify.com","\/\/backinstock.useamp.com\/widget\/86344_1783064095.js?category=bis\u0026v=6\u0026shop=thephotostick.myshopify.com"];
504    for (var i = 0; i < urls.length; i++) {
505      var s = document.createElement('script');
506      s.type = 'text/javascript';
507      s.async = true;
508      s.src = urls[i];
509      var x = document.getElementsByTagName('script')[0];
510      x.parentNode.insertBefore(s, x);
511    }
512  };
513  if(window.attachEvent) {
514    window.attachEvent('onload', asyncLoad);
515  } else {
516    window.addEventListener('load', asyncLoad, false);
517  }
518})();</script>
vendor: 1 bytes, line 518
518
519<script id="__st">var __st={"a":16814029,"offset":-21600,"reqid":"6b11677c-4102-4b54-8740-3b0f3047f543-1790864125","pageurl":"www.thephotostick.com\/search","u":"13ffc3147980","p":"searchresults"};</script>
vendor: 1 bytes, line 519
519
520<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
vendor: 1 bytes, line 520
520
521<script id="captcha-bootstrap">!function(){'use strict';const t='contact',e='account',n='new_comment',o=[[t,t],['blogs',n],['comments',n],[t,'customer']],c=[[e,'customer_login'],[e,'guest_login'],[e,'recover_customer_password'],[e,'create_customer']],r=t=>t.map((([t,e])=>`form[action*='/${t}']:not([data-nocaptcha='true']) input[name='form_type'][value='${e}']`)).join(','),a=t=>()=>t?[...document.querySelectorAll(t)].map((t=>t.form)):[];function s(){const t=[...o],e=r(t);return a(e)}const i='password',u='form_key',d=['recaptcha-v3-token','g-recaptcha-response','h-captcha-response',i],f=()=>{try{return window.sessionStorage}catch{return}},m='__shopify_v',_=t=>t.elements[u];function p(t,e,n=!1){try{const o=window.sessionStorage,c=JSON.parse(o.getItem(e)),{data:r}=function(t){const{data:e,action:n}=t;return t[m]||n?{data:e,action:n}:{data:t,action:n}}(c);for(const[e,n]of Object.entries(r))t.elements[e]&&(t.elements[e].value=n);n&&o.removeItem(e)}catch(o){console.error('form repopulation failed',{error:o})}}const l='form_type',E='cptcha';function T(t){t.dataset[E]=!0}const w=window,h=w.document,L='Shopify',v='ce_forms',y='captcha';let A=!1;((t,e)=>{const n=(g='f06e6c50-85a8-45c8-87d0-21a2b65856fe',I='https://cdn.shopify.com/shopifycloud/storefront-forms-hcaptcha/ce_storefront_forms_captcha_hcaptcha.v1.5.3.iife.js',D={infoText:'Protected by hCaptcha',privacyText:'Privacy',termsText:'Terms'},(t,e,n)=>{const o=w[L][v],c=o.bindForm;if(c)return c(t,g,e,D).then(n);var r;o.q.push([[t,g,e,D],n]),r=I,A||(h.body.append(Object.assign(h.createElement('script'),{id:'captcha-provider',async:!0,src:r})),A=!0)});var g,I,D;w[L]=w[L]||{},w[L][v]=w[L][v]||{},w[L][v].q=[],w[L][y]=w[L][y]||{},w[L][y].protect=function(t,e){n(t,void 0,e),T(t)},Object.freeze(w[L][y]),function(t,e,n,w,h,L){const[v,y,A,g]=function(t,e,n){const i=e?o:[],u=t?c:[],d=[...i,...u],f=r(d),m=r(i),_=r(d.filter((([t,e])=>n.includes(e))));return[a(f),a(m),a(_),s()]}(w,h,L),I=t=>{const e=t.target;return e instanceof HTMLFormElement?e:e&&e.form},D=t=>v().includes(t);t.addEventListener('submit',(t=>{const e=I(t);if(!e)return;const n=D(e)&&!e.dataset.hcaptchaBound&&!e.dataset.recaptchaBound,o=_(e),c=g().includes(e)&&(!o||!o.value);(n||c)&&t.preventDefault(),c&&!n&&(function(t){try{if(!f())return;!function(t){const e=f();if(!e)return;const n=_(t);if(!n)return;const o=n.value;o&&e.removeItem(o)}(t);const e=Array.from(Array(32),(()=>Math.random().toString(36)[2])).join('');!function(t,e){_(t)||t.append(Object.assign(document.createElement('input'),{type:'hidden',name:u})),t.elements[u].value=e}(t,e),function(t,e){const n=f();if(!n)return;const o=[...t.querySelectorAll(`input[type='${i}']`)].map((({name:t})=>t)),c=[...d,...o],r={};for(const[a,s]of new FormData(t).entries())c.includes(a)||(r[a]=s);n.setItem(e,JSON.stringify({[m]:1,action:t.action,data:r}))}(t,e)}catch(e){console.error('failed to persist form',e)}}(e),e.submit())}));const S=(t,e)=>{t&&!t.dataset[E]&&(n(t,e.some((e=>e===t))),T(t))};for(const o of['focusin','change'])t.addEventListener(o,(t=>{const e=I(t);D(e)&&S(e,y())}));const B=e.get('form_key'),M=e.get(l),P=B&&M;t.addEventListener('DOMContentLoaded',(()=>{const t=y();if(P)for(const e of t)e.elements[l].value===M&&p(e,B);[...new Set([...A(),...v().filter((t=>'true'===t.dataset.shopifyCaptcha))])].forEach((e=>S(e,t)))}))}(h,new URLSearchParams(w.location.search),n,t,e,['guest_login'])})(!0,!0)}();</script>
vendor: 1 bytes, line 521
521
522<script integrity="sha256-JjoPp5ZfB1sSAs5SQaol1x1GgvveM+BgmRzyDexInEQ=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//www.thephotostick.com/cdn/shopifycloud/storefront/assets/storefront/load_feature-1bd60354.js" crossorigin="anonymous"></script>
vendor: 1 bytes, line 522
522
523<script>(function () {var userAgent = navigator.userAgent;var platform = navigator.platform;var maxTouchPoints = navigator.maxTouchPoints || 0;var isIOS = /iPad|iPhone|iPod/.test(platform) || (platform === 'MacIntel' && maxTouchPoints > 1);var isMacSafari = platform.indexOf('Mac') === 0 && /Safari/.test(userAgent) && !/Chrome|Chromium|CriOS|FxiOS|Edg|OPR|Android/.test(userAgent);var isAppleSafari = isIOS || isMacSafari;if (isAppleSafari) {fetch('/sf_private_access_tokens' + location.search).catch(function () {});}function browserMajorVersion(pattern) {var match = userAgent.match(pattern);return match ? parseInt(match[1], 10) : null;}function shouldLoadAutosizesPolyfill() {if (!window.PerformanceObserver?.supportedEntryTypes?.includes('paint')) {return false;}var chromeVersion = browserMajorVersion(/Chrome\/(\d+)/);if (chromeVersion !== null) {return chromeVersion < 126;}var firefoxVersion = browserMajorVersion(/Firefox\/(\d+)/);if (firefoxVersion !== null) {return firefoxVersion < 150;}var safariVersion = isAppleSafari ? browserMajorVersion(/Version\/(\d+).*Safari\//) : null;if (safariVersion !== null) {return safariVersion < 27;}return true;}if (shouldLoadAutosizesPolyfill()) {var autosizesScript = document.createElement('script');autosizesScript.async = true;autosizesScript.crossOrigin = 'anonymous';autosizesScript.src = "//www.thephotostick.com/cdn/shopifycloud/storefront/assets/storefront/autosizes-84416378.js";(document.head || document.documentElement).appendChild(autosizesScript);}window.ShopifyAnalytics = window.ShopifyAnalytics || {};window.ShopifyAnalytics.performance = window.ShopifyAnalytics.performance || {};(function () {var LONG_FRAME_THRESHOLD = 50;var longAnimationFrames = [];var activeRafId = null;function collectLongFrames() {var previousTime = null;function rafMonitor(now) {if (activeRafId === null) {return;}var delta = now - previousTime;if (delta > LONG_FRAME_THRESHOLD) {longAnimationFrames.push({startTime: previousTime,endTime: now,});}previousTime = now;activeRafId = requestAnimationFrame(rafMonitor);}previousTime = performance.now();activeRafId = requestAnimationFrame(rafMonitor);}if (!window.PerformanceObserver?.supportedEntryTypes?.includes('long-animation-frame')) {collectLongFrames();var timeoutId = setTimeout(function () {cancelAnimationFrame(activeRafId);}, 10000);window.ShopifyAnalytics.performance.getLongAnimationFrames = function (stopCollection) {if (stopCollection === undefined) {stopCollection = false;}if (stopCollection) {clearTimeout(timeoutId);cancelAnimationFrame(activeRafId);}return longAnimationFrames;};}})();})();</script>
523<script crossorigin="anonymous" defer="defer" src="//www.thephotostick.com/cdn/shopifycloud/storefront/assets/shopify_pay/storefront-616277c7.js?v=20250812"></script>
vendor: 1 bytes, line 523
523
524<script id="shopify-origin-trials" async="async" integrity="sha256-qJbe/jEZBHtr5W/BlA2cKAz3vkXu6vJQyLjgvgCC86g=" src="//cdn.shopify.com/shopifycloud/storefront/assets/storefront/origin_trials-318ab40a.js" crossorigin="anonymous" onload="window.__shopifyOriginTrialsDone = true" onerror="window.__shopifyOriginTrialsDone = true"></script>
vendor: 1 bytes, line 524
524
525<script>
526  window.Shopify = window.Shopify || {};
527  window.Shopify.MCP = window.Shopify.MCP || {};
528  window.Shopify.MCP.enabled = true;
529  window.Shopify.MCP.shop = "thephotostick.myshopify.com";
530  window.Shopify.MCP.mcpEndpoint = "https:\/\/www.thephotostick.com\/api\/mcp";
531  window.Shopify.MCP.tools = [{"name":"search_shop_policies_and_faqs","description":"Used to get facts about the stores policies, products, or services.\nSome examples of questions you can ask are:\n  - What is your return policy?\n  - What is your shipping policy?\n  - What is your phone number?\n  - What are your hours of operation?\"\n","inputSchema":{"$schema":"https:\/\/json-schema.org\/draft\/2020-12\/schema","type":"object","properties":{"query":{"type":"string","description":"A natural language query."},"context":{"type":"string","description":"Additional information about the request such as user demographics, mood, location, or other relevant details that could help in tailoring the response appropriately."}},"required":["query"]}}];
532</script>
vendor: 1 bytes, line 532
532
533<script>(()=>{var d="shopify:webmcp_adapter_loaded",n=Symbol.for("shopify.webmcp_adapter_loading");function s(c,a,{win:r=window,doc:o=document}={}){function p(){try{return r.localStorage.getItem(d)==="true"}catch{return!1}}function l(){try{r.localStorage.setItem(d,"true")}catch{}}function u(){return typeof(o.modelContext||r.navigator?.modelContext)?.registerTool=="function"}function f(){if(r[n]||!u())return;let t=o.head||o.getElementsByTagName("head")[0];if(!t)return;let e=o.createElement("script");e.type="module",e.crossOrigin="anonymous",a&&(e.integrity=a),e.src=c,e.addEventListener("load",l,{once:!0}),e.addEventListener("error",()=>{r[n]=!1},{once:!0}),t.appendChild(e),r[n]=!0}function _(t){let e=o.getElementById("shopify-origin-trials");if(!e||r.__shopifyOriginTrialsDone){t();return}e.addEventListener("load",t,{once:!0}),e.addEventListener("error",t,{once:!0})}function i(){_(()=>r.setTimeout(f,0))}function m(){o.addEventListener("DOMContentLoaded",i,{once:!0})}p()?i():m()}s("\/\/www.thephotostick.com\/cdn\/shopifycloud\/storefront\/assets\/storefront\/webmcp-c6b62ece.js","sha256-ke4DDuBjdvea3vxLWxHc9E9nq8zihuG4IfYEGbb77ys=");})();
534</script>
vendor: 1 bytes, line 534
534
535<script data-source-attribution="shopify.dynamic_checkout.dynamic.init">var Shopify=Shopify||{};Shopify.PaymentButton=Shopify.PaymentButton||{isStorefrontPortableWallets:!0,init:function(){window.Shopify.PaymentButton.init=function(){};var t=document.createElement("script");t.src="https://www.thephotostick.com/cdn/shopifycloud/portable-wallets/latest/portable-wallets.en.js",t.type="module",document.head.appendChild(t)}};
536</script>
vendor: 1 bytes, line 536
536
537<script data-source-attribution="shopify.dynamic_checkout.buyer_consent">
538  function portableWalletsHideBuyerConsent(e){var t=document.getElementById("shopify-buyer-consent"),n=document.getElementById("shopify-subscription-policy-button");t&&n&&(t.classList.add("hidden"),t.setAttribute("aria-hidden","true"),n.removeEventListener("click",e))}function portableWalletsShowBuyerConsent(e){var t=document.getElementById("shopify-buyer-consent"),n=document.getElementById("shopify-subscription-policy-button");t&&n&&(t.classList.remove("hidden"),t.removeAttribute("aria-hidden"),n.addEventListener("click",e))}window.Shopify?.PaymentButton&&(window.Shopify.PaymentButton.hideBuyerConsent=portableWalletsHideBuyerConsent,window.Shopify.PaymentButton.showBuyerConsent=portableWalletsShowBuyerConsent);
539</script>
vendor: 1 bytes, line 539
539
540<script data-source-attribution="shopify.dynamic_checkout.cart.bootstrap">document.addEventListener("DOMContentLoaded",(function(){function t(){return document.querySelector("shopify-accelerated-checkout-cart, shopify-accelerated-checkout")}if(t())Shopify.PaymentButton.init();else{new MutationObserver((function(e,n){t()&&(Shopify.PaymentButton.init(),n.disconnect())})).observe(document.body,{childList:!0,subtree:!0})}}));
541</script>
541
542<link id="shopify-accelerated-checkout-styles" rel="stylesheet" media="screen" href="https://www.thephotostick.com/cdn/shopifycloud/portable-wallets/latest/accelerated-checkout-backwards-compat.css" crossorigin="anonymous">
543<style id="shopify-accelerated-checkout-cart">
544        #shopify-buyer-consent {
545  margin-top: 1em;
546  display: inline-block;
547  width: 100%;
548}
549
550#shopify-buyer-consent.hidden {
551  display: none;
552}
553
554#shopify-subscription-policy-button {
555  background: none;
556  border: none;
557  padding: 0;
558  text-decoration: underline;
559  font-size: inherit;
560  cursor: pointer;
561}
562
563#shopify-subscription-policy-button::before {
564  box-shadow: none;
565}
566
567      </style>
568
569<script id="shopify-cfh-end">window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
569
570
571    
571<script src="//www.thephotostick.com/cdn/shop/t/45/assets/vendor.js?v=29347539246337823151778619170" defer="defer"></script>
571
572    
572<script src="//www.thephotostick.com/cdn/shop/t/45/assets/theme.js?v=3833306095534809291778619169" defer="defer"></script>
572<!-- Display Rich Text for custom product descriptions -->
573<script>
574  function renderRichText(json) {
575    try {
576      const data = typeof json === 'string' ? JSON.parse(json) : json;
577      return parseRichTextNode(data);
578    } catch(e) { return ''; }
579  }
580
581  function parseRichTextNode(node) {
582    if (!node) return '';
583    if (node.type === 'text') {
584      let text = node.value || '';
585      if (node.bold) text = `<strong>${text}</strong>`;
586      if (node.italic) text = `<em>${text}</em>`;
587      return text;
588    }
589    const children = (node.children || []).map(parseRichTextNode).join('');
590    if (node.type === 'paragraph') return `<p>${children}</p>`;
591    if (node.type === 'heading') return `<h${node.level}>${children}</h${node.level}>`;
592    if (node.type === 'list') return node.listType === 'ordered' ? `<ol>${children}</ol>` : `<ul>${children}</ul>`;
593    if (node.type === 'list-item') return `<li>${children}</li>`;
594    return children;
595  }
596</script>
vendor: 1 bytes, line 596
596
597<script>
598  window.theme = window.theme || {};
599  theme.routes = {
600    shop_url: 'https://www.thephotostick.com',
601    root_url: '/',
602    cart_url: '/cart',
603    cart_add_url: '/cart/add',
604    cart_change_url: '/cart/change',
605    cart_update_url: '/cart/update',
606    search_url: '/search',
607    predictive_search_url: '/search/suggest'
608  };
609
610  theme.variantStrings = {
611    preOrder: "Pre-order",
612    addToCart: "Add to cart",
613    soldOut: "Sold Out",
614    unavailable: "Unavailable",
615    addToBundle: "Add to bundle",
616    backInStock: "Notify me when it’s available"
617  };
618
619  theme.shippingCalculatorStrings = {
620    error: "One or more errors occurred while retrieving the shipping rates:",
621    notFound: "Sorry, we do not ship to your address.",
622    oneResult: "There is one shipping rate for your address:",
623    multipleResults: "There are multiple shipping rates for your address:"
624  };
625
626  theme.discountStrings = {
627    error: "Discount code cannot be applied to your cart",
628    shippingError: "Shipping discounts are shown at checkout after adding an address"
629  };
630
631  theme.recipientFormStrings = {
632    expanded: "Gift card recipient form expanded",
633    collapsed: "Gift card recipient form collapsed"
634  };
635
636  theme.quickOrderListStrings = {
637    itemsAdded: "[quantity] items added",
638    itemAdded: "[quantity] item added",
639    itemsRemoved: "[quantity] items removed",
640    itemRemoved: "[quantity] item removed",
641    viewCart: "View cart",
642    each: "[money]\/ea",
643    minError: "This item has a minimum of [min]",
644    maxError: "This item has a maximum of [max]",
645    stepError: "You can only add this item in increments of [step]"
646  };
647
648  theme.cartStrings = {
649    error: "There was an error while updating your cart. Please try again.",
650    quantityError: "You can only add [quantity] of this item to your cart.",
651    giftNoteAttribute: "Gift note",
652    giftWrapAttribute: "Gift wrapping",
653    giftWrapBooleanTrue: "Yes",
654    targetProductAttribute: "For"
655  };
656
657  theme.dateStrings = {
658    d: "d",
659    day: "Day",
660    days: "Days",
661    h: "h",
662    hour: "Hour",
663    hours: "Hours",
664    m: "m",
665    minute: "Min",
666    minutes: "Mins",
667    s: "s",
668    second: "Sec",
669    seconds: "Secs"
670  };theme.strings = {
671    recentlyViewedEmpty: "Your recently viewed is empty.",
672    close: "Close",
673    next: "Next",
674    previous: "Previous",
675    qrImageAlt: "QR code — scan to redeem gift card"
676  };
677
678  theme.settings = {
679    moneyFormat: "${{amount}}",
680    moneyWithCurrencyFormat: "${{amount}} USD",
681    currencyCodeEnabled: false,
682    externalLinksNewTab: false,
683    cartType: "drawer",
684    isCartTemplate: false,
685    pswpModule: "\/\/www.thephotostick.com\/cdn\/shop\/t\/45\/assets\/photoswipe.min.js?v=41760041872977459911778619163",
686    themeName: 'Concept',
687    themeVersion: '5.3.3',
688    agencyId: ''
689  };</script>
689
690
691
692
693
694
695
696
697
698
699<script id="ABConvert-template-test">
700var abconvertNamespaceGroups = null;
701window.abconvertNamespaceGroups = abconvertNamespaceGroups;
702
703var abconvertTemplateTestLiquidVariables = {
704    abconvertTemplate : "search",
705    abconvertDesignMode:false
706 };
707
708Object.keys(abconvertTemplateTestLiquidVariables).forEach(function(key) { window[key] =
709abconvertTemplateTestLiquidVariables[key]; });
710var abconvertTemplateTestDict = {"experiments":[{"experimentId":"6ab2e1be8316a96118723e27","testGroups":[{"name":"Saves Hours - 1158 (PF)","percentage":20,"testProducts":[],"redirectRules":[],"template":{"key":"article.pf-946da1f6.json","suffix":"pf-946da1f6","type":"article","isDefault":false,"previewUrl":"/blogs/news/articles/thephotostick-omni-protects-your-photos-and-videos-g","screenshotUrl":"https://storage.googleapis.com/abconvert-v1-prod-screenshots/article.pf-946da1f6.json-desktop-1779311010856.jpg","_id":"6aba9a1ce25cf73adf3e74ec"},"paymentCustomization":[],"deliveryCustomization":[],"checkoutUICustomization":[],"shippingCost":2,"profitMargin":30,"_id":"6ab2e1be8316a96118723e28"},{"name":"Saves Hours - 1180 (GP)","percentage":80,"testProducts":[],"redirectRules":[],"template":{"key":"article.gp-template-638322128071950974.json","suffix":"gp-template-638322128071950974","type":"article","isDefault":false,"previewUrl":"/blogs/news/articles/thephotostick-omni-protects-your-photos-and-videos-gp","screenshotUrl":"https://storage.googleapis.com/abconvert-v1-prod-screenshots/article.gp-template-638322128071950974.json-desktop-1790107590961.jpg","_id":"6aba9a1ce25cf73adf3e74ee"},"paymentCustomization":[],"deliveryCustomization":[],"checkoutUICustomization":[],"shippingCost":2,"profitMargin":30,"_id":"6ab2e1be8316a96118723e2a"}],"templateDict":{"article.pf-946da1f6":{"groupIndex":0},"article.gp-template-638322128071950974":{"groupIndex":1}},"startTime":"2026-09-22T20:14:54.088Z","redirectControlGroup":true}]};
711 window.abconvertTemplateTestDict = abconvertTemplateTestDict;
712(()=>{"use strict";const e="abconvert-session",t=18e5,n="_abconvert-assignment",r="abconvert-session",o="abconvert-visitor",i="abconvertCountry",s="abconvertSearchParams",a="abconvert-experiment-ids",c="abconvert-template",u=(new Set(["Active","Paused"]),"new"),l="exclude",d="include",f="__abconvertResolvedGroups",p="url-redirect",m="theme",g="template",v="match_exactly",h="match_regex_exactly",y="contains",w="ends_with",b="starts_with",x="not_match_exactly",_="not_match_regex_exactly",I="not_contains",S="not_ends_with",T="not_starts_with",k="query_string",O=async function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;const r={method:t,mode:"cors",headers:{"Content-Type":"application/json"}};n&&(r.body=JSON.stringify(n));let o=150,i=0;for(;i<3;)try{const t=await fetch(e,r);if(t.ok)return t.json();const n=(t.headers?.get("content-type")||"").includes("application/json")?JSON.stringify(await t.json()):await t.text(),o=new Error(`HTTP ${t.status} ${t.statusText||""} for ${e}${n?`: ${n.slice(0,300)}`:""}`.trim());throw o.status=t.status,o.statusText=t.statusText,o.url=e,o}catch(e){if(o*=2,i+=1,i>=3)throw e;await new Promise((e=>setTimeout(e,o)))}throw new Error("API Error")};function N(e){for(var t=e+"=",n=document.cookie.split(";"),r=0;r<n.length;r++){for(var o=n[r];" "==o.charAt(0);)o=o.substring(1,o.length);if(0==o.indexOf(t))return o.substring(t.length,o.length)}return null}function A(e,t,n){var r,o=new Date;o.setTime(o.getTime()+n),r="; expires="+o.toUTCString(),document.cookie=e+"="+(t||"")+r+"; path=/"}function $(e,t,n,r){const o={[p]:"abconvert-url-redirect-experiments",[m]:"abconvert-theme-experiments",[g]:"abconvert-template-experiments"}[e];if(!o)return void console.error("[ABConvert] Invalid experiment type:",e);let i=[];try{const e=N(o);e&&(i=JSON.parse(e))}catch(e){console.warn("[ABConvert] Failed to parse existing cookie:",o,e)}const s={experimentId:t,groupIndex:n,startTime:r},a=i.findIndex((e=>e.experimentId===t));a>=0?i[a]=s:i.push(s),A(o,JSON.stringify(i),2592e6)}function C(){let e=N("abconvert-landing-page");return e||(e=window.location.pathname,A("abconvert-landing-page",e,t)),e}function P(){let n=N(e);n||(n="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(e){const t=16*Math.random()|0;return("x"===e?t:3&t|8).toString(16)})));const r=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Date.now();const n=e+t,r=new Date(e),o=Date.UTC(r.getUTCFullYear(),r.getUTCMonth(),r.getUTCDate()+1,0,0,0,0);return Math.min(n,o)}()-Date.now();return A(e,n,r),n}function j(e){const t=(new Date).valueOf(),n=localStorage.getItem("abconvert-first-visit-time")?Number(localStorage.getItem("abconvert-first-visit-time")):t;return localStorage.getItem("abconvert-first-visit-time")||localStorage.setItem("abconvert-first-visit-time",t.toString()),n>(e=new Date(e).valueOf())?u:"returning"}function E(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0,n=window.location.pathname,r=window.location.search;if("string"==typeof t)try{const e=new URL(t,window.location.href);n=e.pathname,r=e.search}catch{const e=t.indexOf("?");n=-1===e?t:t.slice(0,e),r=-1===e?"":t.slice(e)}const o=n+r,{conditionType:i,condition:s,value:a}=e;let c;switch(i){case"page_url":c=n;break;case"page_url_with_query_string":c=o;break;case k:c=r;break;default:return!1}return i===k?function(e,t,n){let r=decodeURI(n);const o=new URLSearchParams(r);switch(e){case v:const e=new URLSearchParams(decodeURI(t));let n=!0;for(let[t,r]of e)if(!o.has(t)||o.get(t)!==r){n=!1;break}return n&&o.forEach(((t,r)=>{e.has(r)||(n=!1)})),n;case h:return new RegExp(t).test(r);case y:const i=new URLSearchParams(t);for(let[e,t]of i)if(!o.has(e)||o.get(e)!==t)return!1;return!0;case b:return r.startsWith(decodeURI(t));case w:return r.endsWith(decodeURI(t));case x:const s=new URLSearchParams(decodeURI(t));let a=!1;for(let[e,t]of s)if(!o.has(e)||o.get(e)!==t){a=!0;break}return a||o.forEach(((e,t)=>{s.has(t)||(a=!0)})),a;case _:return!new RegExp(t).test(r);case I:const c=new URLSearchParams(t);for(let[e,t]of c)if(o.has(e)&&o.get(e)===t)return!1;return!0;case T:return!r.startsWith(decodeURI(t));case S:return!r.endsWith(decodeURI(t));default:return!1}}(s,a,c):function(e,t,n){let r=decodeURI(n);switch(e){case v:return decodeURI(t)===r;case h:return new RegExp(t).test(r);case y:return r.includes(decodeURI(t));case b:return r.startsWith(decodeURI(t));case w:return r.endsWith(decodeURI(t));case x:return decodeURI(t)!==r;case _:return!new RegExp(t).test(r);case I:return!r.includes(decodeURI(t));case T:return!r.startsWith(decodeURI(t));case S:return!r.endsWith(decodeURI(t));default:return!1}}(s,a,c)}const R="https://app.abconvert.io";async function D(){localStorage.getItem("abconvert-country")||await async function(){const e=await fetch(`${R}/api/public/get-country-code`,{method:"GET",mode:"cors"}),t=(await e.json()).countryCode;t&&(console.log("successfully set country code: ",t),localStorage.setItem("abconvert-country",t))}()}function J(){return localStorage.getItem("abconvert-country")}function U(){const e=navigator.userAgent||window.opera;return/android|webos|iphone|ipad|ipod|blackberry|iemobile|opera mini/i.test(e)?"mobile":/ipad|playbook|silk/i.test(e)?"tablet":"desktop"}const L=[/Googlebot/,/Googlebot-Image/,/Googlebot-Video/,/Googlebot-News/,/Storebot-Google/,/Google-InspectionTool/,/GoogleOther/,/Google-Extended/,/APIs-Google/,/AdsBot-Google-Mobile/,/AdsBot-Google/,/Mediapartners-Google/,/Google-Safety/,/FeedFetcher-Google/,/GoogleProducer/,/Bingbot/,/Slurp/,/DuckDuckBot/,/Baiduspider/,/YandexBot/,/facebot/,/Twitterbot/,/crawler/,/meta-externalads/,/facebookexternalhit/];let M,B,F=0,G=0,q=!1;const W=()=>{q?(q=!1,B=(new Date).getTime(),G+=(B-M)/1e3):(q=!0,M=(new Date).getTime())};function z(e,t,n,r,o){const i=(new Date).getTime(),s=window.location.pathname.toString(),a=C();N(`abconvert-${t}-test-stay-time-recorded-${n}`)||(A(`abconvert-${t}-test-stay-time-recorded-${n}`,!0,18e5),setInterval((()=>{(new Date).getTime()-i>39e3&&W()}),39e3),window.addEventListener("beforeunload",(async()=>{const t=P(),c=(new Date).getTime(),u=(c-i)/1e3,l=(c-i)/1e3-F/1e3-G;fetch(e,{method:"POST",body:JSON.stringify({stayingTime:u,stayingTimeAdjusted:l,sessionId:t,experimentId:n,groupIndex:r,visitorType:j(o),pathName:s,landingPage:a}),keepalive:!0})}
712)))}function V(e,t,n,r){const o=window.location.pathname.toString(),i=C();window.addEventListener("click",(s=>{if("A"===s.target.tagName){const a=s.target.getAttribute("href"),c=P();fetch(e,{method:"POST",body:JSON.stringify({sessionId:c,experimentId:t,groupIndex:n,link:a,visitorType:j(r),pathName:o,landingPage:i}),keepalive:!0})}}))}function K(e,t,n,r){const o=window.location.pathname.toString(),i=C();let s=!1;window.addEventListener("scroll",(()=>{s=!0})),window.addEventListener("click",(()=>{s=!0})),window.addEventListener("beforeunload",(async()=>{if(!s){const s=P();fetch(e,{method:"POST",body:JSON.stringify({sessionId:s,experimentId:t,groupIndex:n,visitorType:j(r),pathName:o,landingPage:i}),keepalive:!0})}}))}async function H(e,t,n,r){const o=P(),i=window.location.pathname.toString(),s=C();fetch(e,{method:"POST",body:JSON.stringify({sessionId:o,experimentId:t,groupIndex:n,visitorType:j(r),pathName:i,landingPage:s}),keepalive:!0})}window.addEventListener("scroll",(()=>{F+=1.8,W()}));const X="response",Y="external-response",Z="beacon-fallback",Q=/Failed to fetch|Load failed|NetworkError|Network request failed|Fetch is aborted|The network connection was lost|The user aborted a request|A server with the specified hostname could not be found/i;let ee=0;const te=new Set;function ne(e,t){const n=String(e??"");return n.length>t?`${n.slice(0,t)}…`:n}function re(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=e instanceof Error?e:new Error(String(e)),r=t.data?t.data.status:void 0,o=function(e,t,n){return 429===n?"network":t===X||t===Y?"integration":(r=e?.name,o=e?.message,"AbortError"===r||"TypeError"===r&&Q.test(String(o||""))?"network":"bug");var r,o}(n,t.step,r);if("network"===o)return;const i=t.script||"unknown",s=t.step||"unknown",a=`${i}|${s}|${n.message}`;if(ee>=10||te.has(a))return;te.add(a),ee+=1;const c=window.Shopify?.shop||"unknown",u={name:n.name,message:ne(n.message,500),stack:ne(n.stack,4e3),script:i,step:s,category:o,status:"number"==typeof r?r:void 0,shop:c,release:"v2.14.148",url:window.location?.href,data:t.data||{}};let l;try{l=JSON.stringify(u)}catch{l=JSON.stringify({...u,data:{serialization:"failed"}})}!function(e,t){try{if(navigator.sendBeacon?.(e,t))return}catch{}try{fetch(e,{method:"POST",headers:{"Content-Type":"text/plain"},body:t,keepalive:!0})?.catch?.((()=>{}))}catch{}}(`https://app.abconvert.io/api/public/script-error?shop=${encodeURIComponent(c)}`,l)}function oe(e,t,n,r){e&&(console.warn(`[ABConvert] ${e.script} beacon failed (${n}):`,t instanceof Error?t.message:t),re(t,{script:e.script,step:n,data:Object.assign(Object.assign({},e.data),{status:r})}))}function ie(e,t,n){return function(e,t,n){try{return"undefined"!=typeof navigator&&"function"==typeof navigator.sendBeacon&&navigator.sendBeacon(e,t)}catch(e){return oe(n,e,"beacon"),!1}}(e,t,n)||function(e,t,n){var r;try{const o=fetch(e,{method:"POST",headers:{"Content-Type":"text/plain"},body:t,keepalive:!0});return null===(r=null==o?void 0:o.then)||void 0===r||r.call(o,(e=>{(null==e?void 0:e.ok)||oe(n,new Error(`[ABConvert] beacon fallback HTTP ${null==e?void 0:e.status}`),X,null==e?void 0:e.status)}),(e=>{var t;oe(n,e,Z),null===(t=null==n?void 0:n.onRejected)||void 0===t||t.call(n)})),!0}catch(e){return oe(n,e,Z),!1}}(e,t,n)}const se=[["Edge",/Edg(?:e|A|iOS)?\/(\d+[\d.]*)/],["Opera",/(?:OPR|Opera)\/(\d+[\d.]*)/],["Samsung Internet",/SamsungBrowser\/(\d+[\d.]*)/],["Chrome",/(?:Chrome|CriOS)\/(\d+[\d.]*)/],["Firefox",/(?:Firefox|FxiOS)\/(\d+[\d.]*)/],["Safari",/Version\/(\d+[\d.]*).*Safari/]],ae=[["iOS",/(?:iPhone|iPad|iPod).*OS (\d+[_\d]*)/],["Android",/Android (\d+[\d.]*)/],["Windows",/Windows NT (\d+[\d.]*)/],["macOS",/Mac OS X (\d+[_\d.]*)/],["ChromeOS",/CrOS \w+ ([\d.]+)/],["Linux",/Linux/]];function ce(e){for(const[t,n]of se){const r=e.match(n);if(r)return{name:t,version:r[1]}}return{name:"",version:""}}function ue(e){for(const[t,n]of ae){const r=e.match(n);if(r)return{name:t,version:(r[1]||"").replace(/_/g,".")}}return{name:"",version:""}}const le="__abconvert_suppressedExperiments",de="abconvert.session.suppressed_experiments",fe=window;function pe(e){try{const t=JSON.stringify([...e].sort());if(sessionStorage.getItem(de)===t)return;sessionStorage.setItem(de,t)}catch{}}function me(){let e=fe[le];return e||(e=new Set,fe[le]=e),e}function ge(e){const t=fe[le];return!!t&&t.has(String(e))}const ve=[],he=new Map,ye=new Map;let we=0;function be(e){const{source:t,conditions:n}=e;let r=t;if(t){const e=ve.find((e=>e.id===t.id));e?r=e:(ve.push(t),"dynamic"===t.class&&we++)}for(const e of null!=n?n:[])he.has(e.type)||(he.set(e.type,e),r&&ye.set(e.type,r))}function xe(e){return he.get(e)}function _e(e){return ye.get(e)}function Ie(){return ve}function Se(e){var t,n,r,o,i;const s=(null===(t=e.audienceTargeting)||void 0===t?void 0:t.enabled)&&null!==(r=null===(n=e.audienceTargeting.groups)||void 0===n?void 0:n.flatMap((e=>{var t;return null!==(t=e.filters)&&void 0!==t?t:[]})))&&void 0!==r?r:[],a=null!==(i=null===(o=e.forceAssignRules)||void 0===o?void 0:o.flatMap((e=>{var t;return null!==(t=e.filters)&&void 0!==t?t:[]})))&&void 0!==i?i:[];return[...s,...a]}function Te(e){const t=new Set;for(const n of Se(e))n.type&&t.add(n.type);return t}function ke(e){var t;for(const n of Te(e))if("dynamic"===(null===(t=_e(n))||void 0===t?void 0:t.class))return!0;return!1}function Oe(e){for(const t of Te(e)){const e=_e(t);if((null==e?void 0:e.available)&&!e.available())return e}return null}function Ne(e){return null===e||"object"!=typeof e?JSON.stringify(e):Array.isArray(e)?`[${e.map((e=>{var t;return null!==(t=Ne(e))&&void 0!==t?t:"null"})).join(",")}]`:`{${Object.keys(e).sort().map((t=>{const n=Ne(e[t]);return void 0===n?void 0:`${JSON.stringify(t)}:${n}`})).filter((e=>void 0!==e)).join(",")}}`}function Ae(e,t={}){const n=Object.assign({},e);for(const e of Ie())"dynamic"===e.class&&(e.available&&!e.available()||Object.assign(n,e.read(t)));return n}function $e(e,t){var n,r;return null!==(r=null===(n=xe(e.type))||void 0===n?void 0:n.evaluate(e,t))&&void 0!==r&&r}function Ce(e,t){if(!e||!e.enabled||!e.groups||0===e.groups.length)return!0;for(const n of e.groups)if(n.filters&&0!==n.filters.length&&!n.filters.some((e=>$e(e,t))))return!1;return!0}function Pe(e,t){if(!e||0===e.length)return null;const n=[...e].sort(((e,t)=>e.priority-t.priority));for(const e of n)if(e.filters.every((e=>$e(e,t))))return{matched:!0,action:e.action,groupIndex:e.groupIndex};return null}function je(e){try{return localStorage.getItem(e)}catch(e){return null}}function Ee(e,t){try{return localStorage.setItem(e,t),!0}catch(e){return!1}}function Re(e){try{return localStorage.removeItem(e),!0}catch(e){return!1}}function De(e){try{return sessionStorage.getItem(e)}catch(e){return null}}function Je(e,t){try{return sessionStorage.setItem(e,t),!0}catch(e){return!1}}function Ue(e){try{return sessionStorage.removeItem(e),!0}catch(e){return!1}}
712const Le="abconvert.visitor",Me=`${Le}.first_seen`,Be=`${Le}.customer`,Fe=`${Le}.country_detected`,Ge=`${Le}.klaviyo_segments`,qe="abconvert-country",We="abconvert.session",ze=`${We}.device`,Ve=`${We}.traffic_source.platform`,Ke=`${We}.traffic_source.channel`,He=`${We}.referral_domain`,Xe=`${We}.landing_page`,Ye=`${We}.utm.source`,Ze=`${We}.utm.medium`,Qe=`${We}.utm.campaign`,et=`${We}.utm.term`,tt=`${We}.utm.content`,nt=`${We}.gclid`,rt=`${We}.fbclid`,ot=`${We}.ttclid`,it=`${We}.force_assign.global`,st=`${We}.force_assign.experiment.`;function at(e){return e.trim().toLowerCase()}function ct(e,t,n){const r=null!=t?t:"",o=Array.isArray(n)?n:[n];switch(e){case"equals":return r===o[0];case"not_equals":return r!==o[0];case"contains":return r.includes(o[0]);case"not_contains":return!r.includes(o[0]);case"in":return o.includes(r);case"not_in":return!o.includes(r);case"exists":return null!=t&&""!==t;case"not_exists":return null==t||""===t;case"starts_with":return r.startsWith(o[0]);case"regex":try{return new RegExp(o[0]).test(r)}catch(e){return!1}default:return!1}}var ut=function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function s(e){try{c(r.next(e))}catch(e){i(e)}}function a(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}c((r=r.apply(e,t||[])).next())}))};function lt(){const e=De(qe);if(e)return e.toUpperCase();const t=je(Fe);return t?t.toUpperCase():""}function dt(e,t){var n;console.warn("[ABConvert] country detection failed:",e instanceof Error?e.message:e),401!==t&&("number"==typeof t&&t>=500||re(e,{script:"group-assignment",step:"number"==typeof t?Y:"fetch",data:{status:t,shopifyDomain:(null===(n=window.Shopify)||void 0===n?void 0:n.shop)||""}}))}let ft=null;function pt(){return ut(this,void 0,void 0,(function*(){if(!je(Fe))return ft||(ft=(()=>ut(this,void 0,void 0,(function*(){var e,t;try{const n=yield fetch("/browsing_context_suggestions.json");if(!(null==n?void 0:n.ok))return void dt(new Error(`HTTP ${null==n?void 0:n.status}`),null==n?void 0:n.status);const r=yield n.json(),o=null===(t=null===(e=null==r?void 0:r.detected_values)||void 0===e?void 0:e.country)||void 0===t?void 0:t.handle;"string"==typeof o&&/^[A-Z]{2}$/.test(o)?Ee(Fe,o):dt(new Error(`malformed handle: ${JSON.stringify(o)}`))}catch(e){dt(e)}finally{ft=null}})))(),ft)}))}const mt={source:{id:"market",class:"static",read:()=>({market:window.abconvertMarket||void 0}),available:()=>!!window.abconvertMarket},conditions:[{type:"market",evaluate:(e,t)=>{return ct(e.operator,null==t.market?t.market:at(t.market),(n=e.value,Array.isArray(n)?n.map((e=>"string"==typeof e?at(e):e)):at(n)));var n}}]},gt={logged_in:{field:"loggedIn",evaluate:function(e,t,n){return"equals"===e&&Boolean(t)===("boolean"==typeof(r=yt(n))?r:"string"==typeof r&&"true"===r.trim().toLowerCase());var r}},tags:{field:"tags",evaluate:function(e,t,n){const r=bt(Array.isArray(t)?t:[]),o=bt(ht(n));switch(e){case"contains":return o.length>0&&r.includes(o[0]);case"not_contains":return!(o.length>0&&r.includes(o[0]));case"in":return o.some((e=>r.includes(e)));case"not_in":return!o.some((e=>r.includes(e)));case"exists":return r.length>0;case"not_exists":return 0===r.length;default:return!1}}},orders_count:{field:"ordersCount",evaluate:xt},total_spent:{field:"totalSpent",evaluate:xt}};function vt(e){return e?gt[e]:void 0}function ht(e){return Array.isArray(e)?e:[e]}function yt(e){return ht(e)[0]}function wt(e){if("number"==typeof e)return Number.isFinite(e)?e:NaN;if("string"!=typeof e)return NaN;const t=e.trim();if(""===t)return NaN;const n=Number(t);return Number.isFinite(n)?n:NaN}function bt(e){return e.map((e=>"string"==typeof e?at(e):"")).filter((e=>""!==e))}function xt(e,t,n){const r=wt(t),o=wt(yt(n));if(Number.isNaN(r)||Number.isNaN(o))return!1;switch(e){case"equals":return r===o;case"greater_than":return r>o;case"less_than":return r<o;case"greater_or_equal":return r>=o;case"less_or_equal":return r<=o;default:return!1}}function _t(e){if(null===e||"object"!=typeof e)return null;const{tags:t,ordersCount:n,totalSpent:r}=e;return Array.isArray(t)&&"number"==typeof n&&"number"==typeof r?{tags:t,ordersCount:n,totalSpent:r}:null}function It(){const e=window.abconvertCustomer;if(null==e)return;const t={loggedIn:e.loggedIn,tags:e.tags,ordersCount:e.ordersCount,totalSpent:e.totalSpent};if(e.loggedIn){const e=_t(t);return e&&function(e){const t=JSON.stringify(e);je(Be)!==t&&Ee(Be,t)}(e),t}
712const n=function(){const e=je(Be);if(!e)return null;try{return _t(JSON.parse(e))}catch(e){return null}}();return n?Object.assign(Object.assign({},t),n):t}const St={source:{id:"customer",class:"dynamic",read:()=>({customer:It()}),available:function(){return null!=window.abconvertCustomer}},conditions:[{type:"customer",evaluate:(e,t)=>{const n=t.customer;if(!n)return!1;const r=vt(e.key);return!!r&&r.evaluate(e.operator,n[r.field],e.value)},watchedValue:(e,t)=>{var n;const r=vt(e.key);return r?null===(n=t.customer)||void 0===n?void 0:n[r.field]:void 0}}]};function Tt(){const e=De(ze);if(e)return e;const t=navigator.userAgent,n=/mobile|iphone|android|tablet|ipad/i.test(t)?"mobile":"desktop";return Je(ze,n),n}const kt={source:{id:"device",class:"static",read:()=>({device:Tt()})},conditions:[{type:"device",evaluate:(e,t)=>ct(e.operator,t.device,e.value)}]};function Ot(e){const t=Date.now(),n=je(Me),r=n?Number(n):t;return n||Ee(Me,t.toString()),r>(null!=e?new Date(e).valueOf():t)?"new":"returning"}const Nt={source:{id:"visitor_type",class:"static",read:e=>({visitorType:Ot(e.experimentStartTime)})},conditions:[{type:"visitor_type",evaluate:(e,t)=>ct(e.operator,t.visitorType,e.value)}]},At={source:{id:"traffic",class:"static",read:()=>{const e=function(){var e,t;const n=De(Ve),r=De(Ke);if(n&&r)return{platform:n,channel:r};const o=document.referrer.toLowerCase(),i=new URLSearchParams(window.location.search),s=null===(e=i.get("utm_source"))||void 0===e?void 0:e.toLowerCase(),a=null===(t=i.get("utm_medium"))||void 0===t?void 0:t.toLowerCase();s&&Je(Ye,s),a&&Je(Ze,a);const c=i.get("utm_campaign");c&&Je(Qe,c);const u=i.get("utm_term");u&&Je(et,u);const l=i.get("utm_content");l&&Je(tt,l);const d=i.get("gclid"),f=i.get("gad_source"),p=i.get("fbclid"),m=i.get("ttclid"),g=i.get("msclkid");d&&Je(nt,d),p&&Je(rt,p),m&&Je(ot,m);const v=navigator.userAgent.toLowerCase(),h=v.includes("instagram")?"instagram":v.includes("fbav")||v.includes("fban")?"facebook":v.includes("musical_ly")||v.includes("tiktok")?"tiktok":null,y=/^(cpc|ppc|paid|retargeting|banner|ads?)$/.test(a||""),w=(...e)=>e.some((e=>o.includes(e)));let b="direct",x="direct";return d||f||"google"===s||w("google.")?(b="google",x=d||f||y?"paid_search":"organic_search"):p||"facebook"===s||"fb"===s||w("facebook.com","fb.com")||"facebook"===h?(b="facebook",x=p||y?"paid_social":"organic_social"):"instagram"===s||"ig"===s||w("instagram.com")||"instagram"===h?(b="instagram",x=y?"paid_social":"organic_social"):m||"tiktok"===s||w("tiktok.com")||"tiktok"===h?(b="tiktok",x=m||y?"paid_social":"organic_social"):"twitter"===s||"x"===s||w("twitter.com","x.com","t.co")?(b="twitter",x=y?"paid_social":"organic_social"):"youtube"===s||"yt"===s||w("youtube.com","youtu.be")?(b="youtube",x=y?"paid_social":"organic_social"):g||"bing"===s||w("bing.com")?(b="bing",x=g||y?"paid_search":"organic_search"):w("yahoo.com","duckduckgo.com","baidu.com","yandex.")?(b="other_search",x="organic_search"):["email","e-mail","e_mail"].includes(s||"")||["email","e-mail","e_mail"].includes(a||"")?(b="email",x="email"):["sms","text"].includes(s||"")||["sms","text"].includes(a||"")?(b="sms",x="sms"):"affiliate"===a?(b="affiliate",x="affiliate"):o&&!o.includes(window.location.hostname)?(b="referral",x="referral"):s&&(b=s,x="referral"),Je(Ve,b),Je(Ke,x),{platform:b,channel:x}}();return{trafficPlatform:e.platform,trafficChannel:e.channel}}},conditions:[{type:"traffic_source",evaluate:(e,t)=>{var n,r;const{operator:o,value:i}=e,s=Array.isArray(i)?i:[i],a=null!==(n=t.trafficChannel)&&void 0!==n?n:"",c=null!==(r=t.trafficPlatform)&&void 0!==r?r:"";switch(o){case"in":return s.includes(a)||s.includes(c);case"not_in":return!s.includes(a)&&!s.includes(c);case"equals":return a===s[0]||c===s[0];case"not_equals":return a!==s[0]&&c!==s[0];default:return!1}}}]};function $t(){const e=De(He);if(null!==e)return e;let t="";if(document.referrer)try{const e=new URL(document.referrer).hostname,o=window.location.hostname;(n=e)===(r=o)||n.endsWith("."+r)||r.endsWith("."+n)||(t=e)}catch(e){}var n,r;return Je(He,t),t}const Ct={source:{id:"referral_domain",class:"static",read:()=>({referralDomain:$t()})},conditions:[{type:"referral_domain",evaluate:(e,t)=>
712ct(e.operator,t.referralDomain,e.value)}]};function Pt(){let e=De(Xe);return e||(e=window.location.pathname,Je(Xe,e)),e}const jt={source:{id:"landing_page",class:"static",read:()=>({landingPage:Pt()})},conditions:[{type:"landing_page",evaluate:(e,t)=>ct(e.operator,t.landingPage,e.value)}]};function Et(){const e={};new URLSearchParams(window.location.search).forEach(((t,n)=>{e[n]=t}));const t={[Ye]:"utm_source",[Ze]:"utm_medium",[Qe]:"utm_campaign",[et]:"utm_term",[tt]:"utm_content",[nt]:"gclid",[rt]:"fbclid",[ot]:"ttclid"};for(const n of Object.keys(t)){const r=De(n),o=t[n];r&&!e[o]&&(e[o]=r)}return e}const Rt={source:{id:"query_param",class:"static",read:()=>({queryParams:Et()})},conditions:[{type:"query_param",evaluate:(e,t)=>ct(e.operator,e.key?t.queryParams[e.key]:null,e.value)}]};function Dt(){const e={};return document.cookie.split(";").forEach((t=>{const[n,r]=t.trim().split("=");n&&(e[n]=r||"")})),e}const Jt={source:{id:"cookie",class:"static",read:()=>({cookies:Dt()})},conditions:[{type:"cookie",evaluate:(e,t)=>ct(e.operator,e.key?t.cookies[e.key]:null,e.value)}]},Ut={conditions:[{type:"js",evaluate:e=>function(e){if("string"!=typeof e||!e.trim())return!1;if(e.length>500)return console.warn("[ABConvert] JS expression too long, max length:",500),!1;try{const t=new Function(function(e){return`'use strict';\ntry {\n    return !!(${e});\n} catch (e) {\n    return false;\n}`}(e));return t()}catch(e){return console.warn("[ABConvert] JS expression evaluation failed:",(null==e?void 0:e.message)||e),!1}}(Array.isArray(e.value)?e.value[0]:e.value)}]};var Lt=function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function s(e){try{c(r.next(e))}catch(e){i(e)}}function a(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}c((r=r.apply(e,t||[])).next())}))};const Mt="klaviyo_segment";let Bt=[],Ft=null;function Gt(){const e=function(){for(const e of document.cookie.split(";")){const[t,...n]=e.trim().split("=");if("__kla_id"===t)return n.join("=")}return null}();if(e){const t=function(e){let t=e;try{t=decodeURIComponent(e)}catch(e){}try{const e=JSON.parse(atob(t)),n=null==e?void 0:e.exchange_id;return"string"==typeof n&&n.length>0?n:null}catch(e){return null}}(e);if(t)return t}try{const e=new URLSearchParams(window.location.search).get("_kx");return e&&e.length>0?e:null}catch(e){return null}}function qt(e){let t=2166136261;for(let n=0;n<e.length;n++)t^=e.charCodeAt(n),t=Math.imul(t,16777619)>>>0;return t.toString(16)}function Wt(e){const t=function(){const e=je(Ge);if(!e)return null;try{const t=JSON.parse(e);return"string"==typeof(null==t?void 0:t.kxHash)&&"number"==typeof(null==t?void 0:t.fetchedAt)&&t.membership&&"object"==typeof t.membership?t:null}catch(e){return null}}();return t?t.kxHash!==qt(e)||Date.now()-t.fetchedAt>36e5?null:t:null}function zt(e){return e?Bt.filter((t=>!(t in e.membership))):Bt.slice()}function Vt(){return Lt(this,void 0,void 0,(function*(){const e=Gt();if(!e)return;const t=Wt(e),n=zt(t);return 0!==n.length?Ft||(Ft=(()=>Lt(this,void 0,void 0,(function*(){var r;const o=yield function(e,t){return Lt(this,void 0,void 0,(function*(){var n;const r=null===(n=window.Shopify)||void 0===n?void 0:n.shop;if(!r)return null;const o="function"==typeof AbortController?new AbortController:null,i=o?setTimeout((()=>o.abort()),1500):null;try{const n=yield fetch(`${R}/api/public/klaviyo/segment-membership`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({shop:r,kx:e,segmentIds:t}),signal:null==o?void 0:o.signal});if(!n.ok)return null;const i=yield n.json();return"ok"===(null==i?void 0:i.status)&&i.membership&&"object"==typeof i.membership?i.membership:null}catch(e){return console.warn("[ABConvert] Klaviyo segment lookup failed:",e instanceof Error?e.message:e),null}finally{null!==i&&clearTimeout(i)}}))}(e,n);if(!o)return;const i={kxHash:qt(e),fetchedAt:Date.now(),membership:Object.assign(Object.assign({},null!==(r=null==t?void 0:t.membership)&&void 0!==r?r:{}),o)};Ee(Ge,JSON.stringify(i))})))().finally((()=>{Ft=null})),Ft):void 0}))}function Kt(e,t){for(const n of null!=e?e:[]){if((null==n?void 0:n.type)!==Mt)continue;const e=Array.isArray(n.value)?n.value:[n.value];for(const n of e)"string"==typeof n&&n.length>0&&t.add(n)}}function Ht(){var e;const t=Gt();return t?null===(e=Wt(t))||void 0===e?void 0:e.membership:{}}function Xt(e,t){return"string"==typeof t&&!0===(null==e?void 0:e[t])}const Yt={source:{id:"klaviyo",class:"dynamic",read:()=>({klaviyoSegments:Ht()}),available:()=>{const e=Gt();return!e||0===zt(Wt(e)).length&&null!==Wt(e)},refresh:Vt},conditions:[{type:Mt,evaluate:function(e,t){const n=t.klaviyoSegments;if(!n)return!1;const r=Array.isArray(e.value)?e.value:[e.value];switch(e.operator){case"equals":return Xt(n,r[0]);case"not_equals":return!Xt(n,r[0]);case"in":return r.some((e=>Xt(n,e)));case"not_in":return!r.some((e=>Xt(n,e)));default:return!1}}}]},Zt={source:{id:"ua_enrichment",class:"static",read:()=>({browser:ce(navigator.userAgent),os:ue(navigator.userAgent),locale:navigator.language||void 0,timezone:Intl.DateTimeFormat().resolvedOptions().timeZone||void 0})}},Qt=["equals","not_equals","starts_with","in","not_in"],en=["contains","not_contains","regex"];function tn(e,t){const n=function(e,t){return-1!==Qt.indexOf(e)?t.pathname:-1!==en.indexOf(e)?t.href:null}(e.operator,t);return null!==n&&ct(e.operator,n,e.value)}function nn(e,t=window.location){var n,r;if(!e)return!0;
712if((null!==(n=e.excludeRules)&&void 0!==n?n:[]).some((e=>tn(e,t))))return!1;const o=null!==(r=e.includeRules)&&void 0!==r?r:[];return 0===o.length||o.some((e=>tn(e,t)))}var rn=function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function s(e){try{c(r.next(e))}catch(e){i(e)}}function a(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}c((r=r.apply(e,t||[])).next())}))};function on(e){return Te(e).has("country")}be({source:{id:"country",class:"static",read:()=>({country:lt()}),available:()=>""!==lt(),refresh:pt},conditions:[{type:"country",evaluate:(e,t)=>ct(e.operator,t.country,e.value)}]}),be(mt),be(St),be(kt),be(Nt),be(At),be(Ct),be(jt),be(Rt),be(Jt),be(Zt),be(Ut),be(Yt);const sn="abconvert.visitor.id",an="abconvert.experiment",cn="abconvert.namespace",un="traffic",ln="group",dn="context",fn="__abconvertAssignmentSent",pn=`${We}.ga4.impression.queue`,mn="__abconvert_ga4FlushPromise",gn=window;function vn(){const e=gn[mn];return e instanceof Promise?e:null}function hn(e){gn[mn]=e}mn in gn||(gn[mn]=null);let yn=!1;function wn(e){return`${e.experimentId}::${e.groupIndex}`}function bn(e,t,n={}){var r;re(new Error(`[ABConvert][GA4] ${e}`),{script:"group-assignment",step:"ga4-impression-tracking",data:Object.assign({issue:e,experimentId:t.experimentId,groupIndex:t.groupIndex,assignmentReason:t.assignmentReason,attempts:t.attempts,eventAgeMs:Date.now()-t.createdAt,shopifyDomain:(null===(r=window.Shopify)||void 0===r?void 0:r.shop)||""},n)})}function xn(){const e=De(pn);if(!e)return[];try{const t=JSON.parse(e);return Array.isArray(t)?t.filter((e=>"string"==typeof(null==e?void 0:e.experimentId)&&Number.isInteger(null==e?void 0:e.groupIndex)&&"string"==typeof(null==e?void 0:e.assignmentReason)&&Number.isFinite(null==e?void 0:e.createdAt)&&Number.isInteger(null==e?void 0:e.attempts))):[]}catch(e){return[]}}function _n(){return xn().length>0}function In(e){0!==e.length?Je(pn,JSON.stringify(e)):Ue(pn)}function Sn(e){return"url_force_assign"===e}function Tn(e){if(null===e||""===e)return null;const t=Number(e);return function(e){return Number.isInteger(e)&&e>=0}(t)?t:null}function kn(e){return Tn(De(`${st}${e}`))}function On(e,t){try{for(const n of function(e,t){const n=[];return null!=t&&""!==t&&n.push(String(t)),e&&!n.includes(e)&&n.push(e),n}(e,t)){const e=kn(n);if(null!==e)return{groupIndex:e,reason:"url_force_assign"}}const n=Tn(De(it));return null!==n?{groupIndex:n,reason:"url_force_assign"}:null}catch(e){return null}}function Nn(e,t){return null!==On(e,t)}function An(){let e=je(sn);return e||(e=`abc_${"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(e){const t=16*Math.random()|0;return("x"===e?t:3&t|8).toString(16)}))}`,Ee(sn,e)),e}function $n(e){const t=function(e,t=0){const n=e.length%4,r=e.length-n;let o=t>>>0;const i=3432918353,s=461845907;let a,c=0;for(;c<r;)a=255&e.charCodeAt(c)|(255&e.charCodeAt(c+1))<<8|(255&e.charCodeAt(c+2))<<16|(255&e.charCodeAt(c+3))<<24,c+=4,a=Math.imul(a,i),a=a<<15|a>>>17,a=Math.imul(a,s),o^=a,o=o<<13|o>>>19,o=Math.imul(o,5)+3864292196;switch(a=0,n){case 3:a^=(255&e.charCodeAt(c+2))<<16;case 2:a^=(255&e.charCodeAt(c+1))<<8;case 1:a^=255&e.charCodeAt(c),a=Math.imul(a,i),a=a<<15|a>>>17,a=Math.imul(a,s),o^=a}return o^=e.length,o^=o>>>16,o=Math.imul(o,2246822507),o^=o>>>13,o=Math.imul(o,3266489909),o^=o>>>16,o>>>0}(e);return t%100}function Cn(e,t){Ee(`${an}.${e}.${un}`,t.toString())}function Pn(e){const t=je(`${an}.${e}.${ln}`);if(null===t)return null;try{const e=JSON.parse(t);if("object"==typeof e&&null!==e&&"number"==typeof e.groupIndex)return{groupIndex:e.groupIndex,reason:e.reason,assignedAt:"string"==typeof e.assignedAt?e.assignedAt:void 0,sends:"number"==typeof e.sends?e.sends:void 0,attempts:"number"==typeof e.attempts?e.attempts:void 0,assignmentVersion:"number"==typeof e.assignmentVersion?e.assignmentVersion:void 0}}catch(e){}return null}function jn(e,t,n,r){var o;const i=`${an}.${e}.${ln}`,s=Pn(e),a={groupIndex:t,reason:n,assignedAt:null!==(o=null==s?void 0:s.assignedAt)&&void 0!==o?o:(new Date).toISOString()};return void 0!==(null==s?void 0:s.attempts)&&(a.attempts=s.attempts),void 0!==(null==s?void 0:s.sends)&&s.groupIndex===t&&(a.sends=s.sends),void 0!==r&&(a.assignmentVersion=r),Ee(i,JSON.stringify(a)),a}function En(e){const t=je(`${an}.${e}.${dn}`);
712if(!t)return null;try{return JSON.parse(t)}catch(e){return null}}function Rn(e,t){Ee(`${an}.${e}.${dn}`,JSON.stringify(t))}function Dn(e){var t;const n=null!==(t=null==e?void 0:e.queryParams)&&void 0!==t?t:{};return{country:(null==e?void 0:e.country)||void 0,market:(null==e?void 0:e.market)||void 0,device:(null==e?void 0:e.device)||void 0,visitorType:(null==e?void 0:e.visitorType)||void 0,trafficPlatform:(null==e?void 0:e.trafficPlatform)||void 0,trafficChannel:(null==e?void 0:e.trafficChannel)||void 0,referralDomain:(null==e?void 0:e.referralDomain)||void 0,landingPage:(null==e?void 0:e.landingPage)||void 0,utmSource:n.utm_source||void 0,utmMedium:n.utm_medium||void 0,utmCampaign:n.utm_campaign||void 0,utmTerm:n.utm_term||void 0,utmContent:n.utm_content||void 0,gclid:n.gclid||void 0,fbclid:n.fbclid||void 0,ttclid:n.ttclid||void 0}}function Jn(e,t,n,r){var o,i;"preview_override"!==t.reason&&((null!==(o=t.sends)&&void 0!==o?o:0)>=5||(null!==(i=t.attempts)&&void 0!==i?i:0)>=10||-1===t.groupIndex&&ke(n)||function(e){try{const t=window;let n=t[fn];return n||(n=new Set,t[fn]=n),!n.has(e)&&(n.add(e),!0)}catch(e){return!0}}(e)&&function(e,t,n,r,o,i){var s,a,c,u,l,d,f;const p=An(),m=(null===(s=window.Shopify)||void 0===s?void 0:s.shop)||"",g=P();try{const s=new URL(`${R}/api/track/assignment`);m&&s.searchParams.set("shop",m);const v=JSON.stringify(Object.assign(Object.assign({sessionId:g,visitorId:p,experimentId:e,testGroup:t,assignmentReason:n,assignmentVersion:i,createdAt:null!=o?o:(new Date).toISOString()},Dn(r)),{browser:null!==(a=r.browser)&&void 0!==a?a:ce(navigator.userAgent),os:null!==(c=r.os)&&void 0!==c?c:ue(navigator.userAgent),locale:null!==(l=null!==(u=r.locale)&&void 0!==u?u:navigator.language)&&void 0!==l?l:void 0,timezone:null!==(f=null!==(d=r.timezone)&&void 0!==d?d:Intl.DateTimeFormat().resolvedOptions().timeZone)&&void 0!==f?f:void 0}));return ie(s.toString(),v,{script:"group-assignment",data:{experimentId:e,shopifyDomain:m},onRejected:()=>function(e){const t=Pn(e);(null==t?void 0:t.sends)&&Ee(`${an}.${e}.${ln}`,JSON.stringify(Object.assign(Object.assign({},t),{sends:t.sends-1})))}(e)})}catch(t){return console.warn("[ABConvert] unified assignment tracking threw synchronously:",(null==t?void 0:t.message)||t),re(t instanceof Error?t:new Error(String(t)),{script:"group-assignment",step:"sync",data:{experimentId:e,shopifyDomain:m}}),!1}}(e,t.groupIndex,t.reason,r(),t.assignedAt,t.assignmentVersion)&&function(e,t){var n,r;const o=`${an}.${e}.${ln}`,i=Object.assign(Object.assign({},t),{sends:(null!==(n=t.sends)&&void 0!==n?n:0)+1,attempts:(null!==(r=t.attempts)&&void 0!==r?r:0)+1});Ee(o,JSON.stringify(i))}(e,t))}function Un(e){const t=Number.isInteger(null==e?void 0:e.experimentId)&&e.experimentId>=0?e.experimentId:null,n="string"==typeof(null==e?void 0:e.experimentName)?e.experimentName.trim():"",r=Number.isInteger(null==e?void 0:e.groupIndex)&&e.groupIndex>=0?e.groupIndex:null,o="string"==typeof(null==e?void 0:e.variantName)?e.variantName.trim():"",i="string"==typeof(null==e?void 0:e.ga4MeasurementId)?e.ga4MeasurementId.trim():"";return(null==e?void 0:e.found)&&null!==t&&n&&null!==r&&o&&i?{experimentId:t,experimentName:n,groupIndex:r,variantName:o,ga4MeasurementId:i}:null}function Ln(e,t){"function"==typeof window.gtag&&window.gtag("event","abconvert_experience_impression",{abconvert_experiment_id:t.experimentId,abconvert_experiment_name:t.experimentName,abconvert_group_index:t.groupIndex,abconvert_variant_name:t.variantName,abconvert_exp_variant_string:`${t.experimentId}-${t.groupIndex}`,abconvert_assignment_reason:e.assignmentReason,transport_type:"beacon",event_timeout:1e3,send_to:t.ga4MeasurementId})}function Mn(e){return!(e.attempts>=3)&&Date.now()-e.createdAt<864e5}!function(){try{const e=new URLSearchParams(window.location.search),t=e.get("preview"),n=e.get("abconvert_force");if(null!==n&&n.includes(":")){const[e,t]=n.split(":"),r=Number(t);return void(e&&!isNaN(r)&&Je(`${st}${e}`,r.toString()))}null===n||isNaN(Number(n))?null===t||isNaN(Number(t))||Je(it,t):(Je(it,n),Je("abconvert-preview-number",n))}catch(e){}}();let Bn=!1;function Fn(){Bn||(Bn=!0,setTimeout((()=>{Bn=!1,Gn()}),0))}function Gn(){return rn(this,void 0,void 0,(function*(){const e=vn();if(e){const t=e.then((()=>
712{if(vn()===t&&hn(null),_n())return Gn()}));return hn(t),t}const t=(()=>rn(this,void 0,void 0,(function*(){const e=xn();if(0===e.length)return;const t=[];let n=!1;const r=[];for(const t of e)Mn(t)?r.push(t):bn("ga4_impression_dropped_before_send",t,{reason:"retry_exhausted_or_expired"});if(r.length>0)if("function"!=typeof window.gtag)n=!0,t.push(...r);else{const e=yield function(e){return rn(this,void 0,void 0,(function*(){if(0===e.length)return new Map;try{const t=yield fetch(`${R}/api/ga4/metadata`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({items:e.map((e=>({clientKey:wn(e),experimentId:e.experimentId,groupIndex:e.groupIndex})))}),keepalive:!0});if(!(null==t?void 0:t.ok))return bn("ga4_metadata_batch_fetch_non_2xx",e[0],{statusCode:null==t?void 0:t.status,batchSize:e.length}),null;const n=yield t.json(),r=Array.isArray(null==n?void 0:n.results)?n.results:null;if(!r)return bn("ga4_metadata_batch_invalid_response",e[0],{batchSize:e.length}),null;const o=new Map;for(const e of r){const t="string"==typeof(null==e?void 0:e.clientKey)?e.clientKey:"";t&&o.set(t,e)}return o}catch(t){const n=t instanceof Error?t.message:String(t),r=t instanceof Error?t.name:"",o="TypeError"===r&&(n.includes("Failed to fetch")||n.includes("NetworkError")||n.includes("Load failed")||n.includes("network connection was lost")||n.includes("abort"));return"AbortError"===r||o?(console.warn("[ABConvert] GA4 metadata batch fetch failed (network issue):",n),null):(bn("ga4_metadata_batch_exception",e[0],{errorMessage:n,batchSize:e.length}),null)}}))}(r);for(const n of r){const r=null==e?void 0:e.get(wn(n));if(!1===(null==(o=r)?void 0:o.found)&&("ga4_not_configured"===o.reason||"ga4_ineligible"===o.reason))continue;const i=Un(r);if(Boolean(i)&&i){Ln(n,i);continue}const s=Object.assign(Object.assign({},n),{attempts:n.attempts+1});Mn(s)?t.push(s):bn("ga4_impression_retry_exhausted",s,{reason:"max_attempts_or_expired_after_not_sent"})}}var o;const i=function(e,t){const n=new Set(e.map((e=>wn(e)))),r=[...t],o=new Set(r.map((e=>wn(e))));for(const e of xn()){const t=wn(e);n.has(t)||o.has(t)||(r.push(e),o.add(t))}return r.length>50&&r.splice(0,r.length-50),r}(e,t);In(i),n&&i.length>0&&(yn||(yn=!0,setTimeout((()=>{yn=!1,Gn()}),1500)))})))().finally((()=>{vn()===t&&hn(null)}));return hn(t),t}))}function qn(e){return function(e={}){const t={};for(const n of Ie())Object.assign(t,n.read(e));return t}({experimentStartTime:e})}function Wn(e){const t=function(e){const{experimentId:t,numericId:n,trafficAllocationPercent:r,audienceTargeting:o,forceAssignRules:i,percentages:s,experimentStartTime:a,isPersonalization:c,assignmentVersion:u,pageTargeting:l}=e,d={audienceTargeting:o,forceAssignRules:i};pe(me());const f=On(t,n);if(f)return{inTest:!0,groupIndex:f.groupIndex<s.length?f.groupIndex:0,reason:f.reason};const p=function(e){const t=De(`${an}.${e}.${ln}`);if(null===t)return null;const n=parseInt(t,10);return isNaN(n)?null:n}(t);if(null!==p)return{inTest:!0,groupIndex:p<s.length?p:0,reason:"preview_override"};const m=Pn(t);if(null===m&&!nn(l))return{inTest:!1,groupIndex:-1,reason:"page_not_activated"};const g=null!==m&&c&&void 0!==u&&m.assignmentVersion!==u;if(null===m||g){const e=Oe(d);if(e)return{inTest:!1,groupIndex:-1,reason:`${e.id}_unresolved`}}const v=An();if(!function(e,t){var n,r;const o=window.abconvertNamespaceGroups;if(!o)return!0;let i=null,s=null;for(const[e,n]of Object.entries(o))if(n.memberExperimentIds.includes(t)){i=e,s=n;break}if(!i||!s)return!0;const a=function(e){const t=je(`${cn}.${e}`);if(!t)return null;try{return JSON.parse(t)}catch(e){return null}}(i);if(a){if(null===(n=s.excludedExperimentIds)||void 0===n?void 0:n.includes(a.experimentId))return!1;if(null===(r=s.inactiveExperimentIds)||void 0===r?void 0:r.includes(a.experimentId))return!1;if(s.memberExperimentIds.includes(a.experimentId))return a.experimentId===t;Re(`${cn}.${i}`)}const c=s.ranges[t];if(!c)return!1;const[u,l]=c,d=$n(`${e}:namespace:${i}`)/100,f=d>=u&&d<l;return f&&(p={experimentId:t},Ee(`${cn}.${i}`,JSON.stringify(p))),f;var p}(v,t))return{inTest:!1,groupIndex:-1,reason:"namespace_excluded"};
712if(!function(e,t,n){const r=function(e){const t=je(`${an}.${e}.${un}`);return null===t?null:"true"===t}(t);if(null!==r)return r;if(n>=100)return Cn(t,!0),!0;const o=$n(`${e}:${t}:traffic`)<n;return Cn(t,o),o}(v,t,r))return{inTest:!1,groupIndex:-1,reason:"traffic_allocation_excluded"};let h=m;null!==h&&c&&void 0!==u&&h.assignmentVersion!==u&&(function(e){Re(`${an}.${e}.${un}`),Re(`${an}.${e}.${ln}`),Re(`${an}.${e}.${dn}`),Ue(`${an}.${e}.${ln}`)}(t),h=null);let y=null,w=null;if(null!==h&&we>0&&ke(d)){w=En(t);let e=null;const n=()=>null!=e?e:e=Ae(w,{experimentStartTime:a}),r=function(e,t,n,r,o={}){return function(e,t,n={}){var r;if(!t)return!1;for(const o of Se(e)){if(!o.type)continue;const e=_e(o.type);if(!e||"dynamic"!==e.class)continue;if(e.available&&!e.available())continue;const i=e.read(n),s=null===(r=xe(o.type))||void 0===r?void 0:r.watchedValue;if(s){if(Ne(s(o,i))!==Ne(s(o,t)))return!0}else for(const e of Object.keys(i))if(Ne(i[e])!==Ne(t[e]))return!0}return!1}(e,n,o)?Oe(e)?"keep":-1===t?"redecide":function(e,t){var n;const r=t();return!!Ce(e.audienceTargeting,r)&&"exclude"!==(null===(n=Pe(e.forceAssignRules,r))||void 0===n?void 0:n.action)}(e,r)?"refresh":"suppress":"keep"}(d,h.groupIndex,w,n,{experimentStartTime:a});if("refresh"===r)w=n(),Rn(t,w);else if("redecide"===r)y=w,h=null;else if("suppress"===r)return function(e){if(!e)return;const t=me(),n=t.size;t.add(String(e)),t.size!==n&&pe(t)}(t),{inTest:!1,groupIndex:-1,reason:"eligibility_withdrawn"}}if(null!==h){const e=()=>{var e;return null!==(e=null!=w?w:En(t))&&void 0!==e?e:qn(a)};if(-1===h.groupIndex)return Jn(t,h,d,e),{inTest:!1,groupIndex:-1,reason:h.reason};if(h.groupIndex<s.length)return Jn(t,h,d,e),_n()&&Fn(),{inTest:!0,groupIndex:h.groupIndex,reason:h.reason}}const b=qn(a);let x,_;if(Ce(o,b)){const e=Pe(i,b);if("exclude"===(null==e?void 0:e.action))_=jn(t,-1,"force_assign_excluded",u),x={inTest:!1,groupIndex:-1,reason:"force_assign_excluded"};else if("assign_group"===(null==e?void 0:e.action))_=jn(t,e.groupIndex,"force_assign_group",u),x={inTest:!0,groupIndex:e.groupIndex,reason:"force_assign_group"};else{const e=function(e,t,n){const r=$n(`${e}:${t}:group`);let o=0;for(let e=0;e<n.length;e++)if(o+=n[e],r<o)return e;return n.length-1}(v,t,s);_=jn(t,e,"random_split",u),x={inTest:!0,groupIndex:e,reason:"random_split"}}}else _=jn(t,-1,"audience_targeting_excluded",u),x={inTest:!1,groupIndex:-1,reason:"audience_targeting_excluded"};const I=y?Ae(y,{experimentStartTime:a}):b;return Rn(t,I),function(e,t,n,r){var o;const i=An(),s=(null===(o=window.Shopify)||void 0===o?void 0:o.shop)||"",{customer:a}=r,c=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(e);o<r.length;o++)t.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(e,r[o])&&(n[r[o]]=e[r[o]])}return n}(r,["customer"]);try{fetch(`${R}/api/analytics/v2/visitor/assignment`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({visitorId:i,experimentId:e,groupIndex:t,assignmentReason:n,visitorContext:c,myShopifyDomain:s}),keepalive:!0}).catch((e=>{console.warn("[ABConvert] legacy assignment tracking failed:",(null==e?void 0:e.message)||e)}))}catch(e){console.warn("[ABConvert] legacy assignment tracking threw synchronously:",(null==e?void 0:e.message)||e)}}(t,x.groupIndex,x.reason,I),Jn(t,_,d,(()=>I)),x.groupIndex>=0&&"preview_override"!==x.reason&&!Sn(x.reason)&&function(e,t,n){const r=xn(),o=wn({experimentId:e,groupIndex:t});r.some((e=>wn(e)===o))||(r.push({experimentId:e,groupIndex:t,assignmentReason:n,createdAt:Date.now(),attempts:0}),r.length>50&&r.splice(0,r.length-50),In(r),Fn())}(t,x.groupIndex,x.reason),x}(e),n=function(){if("undefined"==typeof window)return{};const e=window;return e[f]||(e[f]={}),e[f]}();return t.inTest?n[String(e.experimentId)]=t.groupIndex:delete n[String(e.experimentId)],t}const zn="abconvert:exposed:",Vn="__abconvertExposureResendDone";function Kn(e){try{const t=sessionStorage.getItem(zn+e);if(null===t)return null;const n=JSON.parse(t);if(n&&"string"==typeof n.sessionId&&n.sessionId.length>0&&"number"==typeof n.groupIndex&&Number.isFinite(n.groupIndex)){const e={sessionId:n.sessionId,groupIndex:n.groupIndex};
712return"number"==typeof n.numericId&&Number.isFinite(n.numericId)&&(e.numericId=n.numericId),e}return null}catch(e){return null}}function Hn(e,t,n){var r;const o=(null===(r=window.Shopify)||void 0===r?void 0:r.shop)||"",i=An();try{const r=window.abconvertApiEndpoint||R,s=new URL(`${r}/api/track/event`);o&&s.searchParams.set("shop",o);const a=function(e){const t=Pn(e);if(null===t)return null;const n=En(e);return Object.assign(Object.assign({experimentId:e,testGroup:t.groupIndex,assignmentReason:t.reason||void 0,createdAt:t.assignedAt},Dn(n)),{browser:(null==n?void 0:n.browser)||void 0,os:(null==n?void 0:n.os)||void 0,locale:(null==n?void 0:n.locale)||void 0,timezone:(null==n?void 0:n.timezone)||void 0})}(e),c=JSON.stringify({sessionId:n,visitorId:i,eventType:"abconvert:exposure",source:"script",experimentIds:[e],assignmentSnapshots:a?[a]:[],pagePath:window.location.pathname,createdAt:(new Date).toISOString(),payload:{groupIndex:t}});ie(s.toString(),c,{script:"exposure",data:{experimentId:e}})}catch(t){console.warn("[ABConvert] exposure tracking threw synchronously:",t),re(t instanceof Error?t:new Error(String(t)),{script:"exposure",step:"sync",data:{experimentId:e}})}}function Xn(e,t,n){if(Nn(e,n))return;if(ge(e))return;const r=P(),o=Kn(e);if(o&&o.sessionId===r)return;const i={sessionId:r,groupIndex:t};"number"==typeof n&&Number.isFinite(n)&&(i.numericId=n),function(e,t){try{sessionStorage.setItem(zn+e,JSON.stringify(t))}catch(e){}}(e,i),Hn(e,t,r)}const Yn='form[action*="/cart/add"]',Zn="data-abconvert-property";let Qn=null,er=!1,tr=!1;function nr(){tr=!1;for(const e of Array.from(document.querySelectorAll(Yn)))for(const t of Array.from(e.querySelectorAll(`input[${Zn}]`)))t.remove()}function rr(e){const t=e.target;return(null==t?void 0:t.closest)?t.closest("shopify-accelerated-checkout, .shopify-payment-button"):null}function or(e){const t=rr(e);if(!t)return;const n=t.closest(Yn);if(!n)return;const r=null==Qn?void 0:Qn();r&&(function(e,t){const n=function(e){const t={};for(const n of Array.from(e.querySelectorAll(`input[${Zn}]`))){const e=n.getAttribute(Zn);e&&(t[e]?n.remove():t[e]=n)}return t}(e);for(const r of Object.keys(t)){const o=n[r];if(o){o.value!==t[r]&&(o.value=t[r]);continue}const i=document.createElement("input");i.type="hidden",i.name=`properties[${r}]`,i.setAttribute(Zn,r),i.value=t[r],e.prepend(i)}}(n,r),tr=!0)}function ir(e){tr&&(rr(e)||nr())}function sr(){tr&&nr()}const ar="abconvert:pending-tracking-cart-write",cr="__abconvert_cartWriteQueue",ur="__abconvert_cartWriteBatch",lr="__abconvert_cartWriteFlush",dr="__abconvert_trackingCartWriteFlush",fr="__abconvert_trackingCartWriteTimer",pr="__abconvert_trackingCartWriteListeners",mr="__abconvert_trackingCartWriteTerminal",gr="__abconvert_trackingCartWriteRerun",vr=window;function hr(){return window?.Shopify?.routes?.root??"/"}function yr(e){return new Promise(((t,n)=>{vr[ur].push({entry:e,resolve:t,reject:n}),vr[lr]||(vr[lr]=!0,setTimeout((()=>{const e=vr[ur];vr[ur]=[],vr[lr]=!1;const t=vr[cr].then((()=>async function(e){const t={};for(const{entry:n}of e)"direct"===n.type?t[n.key]=n.value:Object.assign(t,n.resolver());if(0===Object.keys(t).length)return;const n=hr(),r=await fetch(`${n}cart.js`),o=await r.json(),i={};for(const[e,n]of Object.entries(t)){const t=o.attributes?.[e];t!==n&&(""===n&&null==t||(i[e]=n))}if(0===Object.keys(i).length)return;let s=0;for(;s<10;){const e=await fetch(`${n}cart/update.js`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({attributes:i})}),t=await e.json();let r=!0;for(const[e,n]of Object.entries(i)){const o=t.attributes?.[e];if(o!==n&&(""!==n||null!=o)){r=!1;break}}if(r)return;s++}}(e)));vr[cr]=t.catch((()=>{})),t.then((()=>e.forEach((e=>e.resolve())))).catch((t=>e.forEach((e=>e.reject(t)))))}),0))}))}function wr(e,t){return yr({type:"direct",key:e,value:t})}function br(){const e=[];let t,n=!1;try{t=localStorage.length}catch{return Cr("local_assignment_scan"),null}for(let r=0;r<t;r++){let t,o;try{t=localStorage.key(r)}catch{return Cr("local_assignment_scan"),null}if(t&&t.startsWith("abconvert.experiment.")&&t.endsWith(".group")){try{o=localStorage.getItem(t)}catch{return Cr("local_assignment_scan"),null}try{const r=JSON.parse(o);if(null==r)continue;const i=t.slice(21,-6);n=!0;const s="number"==typeof r?r:r.groupIndex;-1===s||ge(i)||e.push({id:i,groupIndex:s})}catch{}}}return n?e:null}function xr(){const e=br();return e?[...new Set(e.map((e=>e.id)))].sort():null}function _r(e){return"number"==typeof e?Number.isInteger(e)&&e>=0?e:null:"string"==typeof e&&/^\d+$/.test(e)?parseInt(e,10):null}vr[ur]||(vr[ur]=[]),vr[cr]||(vr[cr]=Promise.resolve());let Ir=null,Sr=null;function Tr(){const e=function(e){const t={};for(const{id:n,groupIndex:r}of e){const e=_r(r);null===e||n in t||(t[n]=e)}return t}(br()??[]),t=vr[f]??{};for(const[n,r]of Object.entries(t)){const t=_r(r);null!==t&&(e[n]=t)}if(0===Object.keys(e).length)return null;const r={[n]:JSON.stringify(e)};Ir&&(r["_abconvert-visitor"]=Ir),Sr&&(r["_abconvert-session"]=Sr);const o=((null===(i=null===window||void 0===window?void 0:window.Shopify)||void 0===i?void 0:i.country)||De(qe)||je(qe)||"").toUpperCase();var i;return o&&(r["_abconvert-country"]=o),r}
712function kr(e,t){Ir=t?String(t):null,Sr=e?String(e):null;try{Qn=Tr,er||"undefined"==typeof document||(er=!0,document.addEventListener("click",or,!0),document.addEventListener("pointerdown",ir,!0),document.addEventListener("keydown",ir,!0),document.addEventListener("submit",sr,!0))}catch{}try{const n=Pr(),i=Date.now(),s={...n?.attributes||{}},c=xr();c&&(s[a]=JSON.stringify(c)),e&&(s[r]=String(e)),t&&(s[o]=String(t));const u={version:1,revision:`${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}`,createdAt:n?.createdAt??i,updatedAt:i,attempts:0,readFailures:0,attributes:s};return jr(u)?(Ar("tracking_cart_write_pending_created",u),Dr(0)):Or(e,t)}catch{return Or(e,t)}}function Or(e,t){try{const n=[];return e&&n.push(wr(r,e)),t&&n.push(wr(o,t)),n.push(yr({type:"deferred",resolver:()=>{const e=xr();return e?{[a]:JSON.stringify(e)}:{}}})),Promise.allSettled(n).then((()=>{}))}catch{return Promise.resolve()}}function Nr(e,t){try{kr(e(),t()).catch((()=>{}))}catch{}}function Ar(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};try{vr.posthog?.capture?.(e,{schemaVersion:1,revision:t?.revision,attempts:t?.attempts,...n})}catch{}}function $r(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};t?.revision&&(vr[mr]||(vr[mr]={}),vr[mr][t.revision]||(vr[mr][t.revision]=!0,Ar(e,t,n)))}function Cr(e){Ar("tracking_cart_write_storage_unavailable",null,{operation:e})}function Pr(){let e;try{e=sessionStorage.getItem(ar)}catch{return Cr("read"),null}if(!e)return null;try{const t=JSON.parse(e),n=Object.keys(t.attributes||{}),i=[r,o,a];if(1!==t.version||"string"!=typeof t.revision||!Number.isFinite(t.createdAt)||!Number.isFinite(t.updatedAt)||!Number.isInteger(t.attempts)||t.attempts<0||void 0!==t.readFailures&&(!Number.isInteger(t.readFailures)||t.readFailures<0)||n.some((e=>!i.includes(e)))||n.some((e=>"string"!=typeof t.attributes[e])))throw new Error("invalid record");return t.readFailures??=0,Date.now()-t.createdAt>18e5?(Er(t.revision),$r("tracking_cart_write_expired",t,{reason:"ttl"}),null):t}catch{try{sessionStorage.removeItem(ar)}catch{Cr("delete")}return null}}function jr(e){try{return sessionStorage.setItem(ar,JSON.stringify(e)),!0}catch{return Cr("write"),!1}}function Er(e){try{const t=sessionStorage.getItem(ar);return!t||JSON.parse(t).revision===e&&(sessionStorage.removeItem(ar),!0)}catch{return Cr("delete"),!1}}function Rr(e,t){return Object.entries(t).every((t=>{let[n,r]=t;return e?.attributes?.[n]===r}))}function Dr(e){if(vr[dr])return vr[gr]=!0,vr[dr];vr[fr]&&clearTimeout(vr[fr]);const t=new Promise((t=>{vr[fr]=setTimeout((()=>{vr[fr]=null;const e=(vr[cr]||Promise.resolve()).then(Jr);vr[cr]=e.catch((()=>{})),e.catch((()=>{})).finally(t)}),e)}));return vr[dr]=t.finally((()=>{vr[dr]=null,vr[gr]&&(vr[gr]=!1,Dr(0))})),vr[dr]}async function Jr(){const e=Pr();if(!e||e.attempts>=10||e.readFailures>=10)return;let t="read",n="network";try{const r=hr(),o=await fetch(`${r}cart.js`);if(!o.ok)throw n="non_ok",new Error("cart read failed");n="parse";const i=await o.json();if(t="write",Rr(i,e.attributes))return void(Er(e.revision)&&$r("tracking_cart_write_verified",e,{source:"read"}));const s=Pr();if(!s||s.revision!==e.revision)return;if(s.attempts+=1,s.updatedAt=Date.now(),!jr(s))return;Ar("tracking_cart_write_attempted",s),n="network";const a=await fetch(`${r}cart/update.js`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({attributes:s.attributes})});if(!a.ok)throw n="non_ok",new Error("cart write failed");if(n="parse",!Rr(await a.json(),s.attributes))throw n="mismatch",new Error("cart verification failed");Er(s.revision)&&$r("tracking_cart_write_verified",s,{source:"write"})}catch{const r=Pr();if(!r||r.revision!==e.revision)return;if("read"===t){if(r.readFailures+=1,r.updatedAt=Date.now(),!jr(r))return;Ar("tracking_cart_write_read_failed",r,{reason:n})}const o=r.attempts>=10?"post_budget":r.readFailures>=10?"read_budget":null;if(o)return void $r("tracking_cart_write_retry_exhausted",r,{reason:o});const i="read"===t?r.readFailures:r.attempts,s=Math.min(3e4,250*2**Math.max(0,i-1)),a=Math.round(s*(.75+.5*Math.random()));Ar("tracking_cart_write_retry_scheduled",r,{delayMs:a,operation:t,reason:n}),function(e){vr[fr]&&clearTimeout(vr[fr]),vr[fr]=setTimeout((()=>{vr[fr]=null,Dr(0)}),e)}(a)}}function Ur(){Pr()&&Dr(0)}vr[pr]||(vr[pr]=!0,window.addEventListener("pageshow",Ur),window.addEventListener("online",Ur)),Ur();const Lr="__ABConvertPreviewRegistry";const Mr="abconvert.preview";function Br(e){try{return window.sessionStorage?.getItem(e)??null}catch(e){return null}}function Fr(e){const t=new URLSearchParams(window.location.search).get("abconvert_preview_key");return t&&t===e?(function(e,t){try{window.sessionStorage?.setItem(e,t)}catch(e){}}(Mr,"true"),function(){const e=new URL(window.location.href);e.searchParams.delete("abconvert_preview_key"),window.history.replaceState({},"",e.toString())}(),!0):!(!e||"true"!==Br(Mr))}new Set(["BIF","CLP","DJF","GNF","ISK","JPY","KMF","KRW","PYG","RWF","UGX","VND","VUV","XAF","XOF","XPF"]),new Map,new Set;const Gr="template",qr="__abconvertScriptSentinels",Wr=Object.freeze({enabled:!0,timeoutMs:1500,redirectTimeoutMs:4e3});function zr(e,t){return"number"==typeof e&&e>0?e:t}function Vr(e,t){let n=e,r=null;const o=()=>
712{if(n-=100,n<=0)return r=null,void t();r=window.setTimeout(o,Math.min(100,n))};return r=window.setTimeout(o,Math.min(100,n)),()=>{null!==r&&window.clearTimeout(r),r=null}}let Kr=null,Hr=null,Xr=!1;function Yr(){null==Kr||Kr.remove(),Kr=null,null==Hr||Hr(),Hr=null}function Zr(e){e.persisted&&Yr()}function Qr(e,t,n){const r=function(e){const t=(null==e?void 0:e.antiFlicker)||{};return{enabled:!1!==t.enabled,timeoutMs:zr(t.timeoutMs,Wr.timeoutMs),redirectTimeoutMs:zr(t.redirectTimeoutMs,Wr.redirectTimeoutMs)}}(e);!Kr&&function(e){return e.enabled&&!function(){try{return performance.getEntriesByType("paint").some((e=>"first-contentful-paint"===e.name))}catch(e){return!1}}()}(r)&&t()&&(Kr=function(e,t){const n=document.createElement("style");return n.id=e,n.textContent=t,(document.head||document.documentElement).appendChild(n),n}("abconvert-anti-flicker-page","html{visibility:hidden!important}"),Hr=Vr(null!=n?n:r.redirectTimeoutMs,Yr),window.addEventListener("pageshow",Zr))}const eo="abconvert:redirecting",to="abconvert-redirect-referrer",no="_abrn",ro="__abconvertReferrerRestored",oo=["ABConvert-content-test-v0","ABConvert-content-test-v1","ABConvert-price-test-v0","ABConvert-price-test-v1"];function io(){return window.location.pathname+window.location.search}function so(e){if(""===e)return"";try{const t=new URL(e);return t.origin+t.pathname}catch(e){return""}}function ao(e){window.location.replace(function(e){try{sessionStorage.setItem(eo,JSON.stringify({fromUrl:io(),ts:Date.now()}))}catch(e){}return function(e){if("string"!=typeof e||""===e)return e;try{const t=Math.random().toString(36).slice(2,10)+Date.now().toString(36),n=JSON.stringify({referrer:so(document.referrer),marker:t,ts:Date.now()}),r="https:"===window.location.protocol?"; Secure":"";document.cookie=to+"="+encodeURIComponent(n)+"; Max-Age="+Math.floor(60)+"; path=/; SameSite=Lax"+r;const[o,i=""]=e.split("#");return o+(o.includes("?")?"&":"?")+no+"="+t+(i?"#"+i:"")}catch(t){return e}}(e)}(e)),Xr=!0,Kr&&(null==Hr||Hr(),Hr=Vr(1e4,Yr))}function co(e){var t;const n=null!==(t=e.startTime)&&void 0!==t?t:e.startedAt;if(null==n)return 0;let r;return r=n instanceof Date?n.getTime():"number"==typeof n?n:Date.parse(n),Number.isNaN(r)?0:r}const uo="browser-api",lo=new Set(["url_force_assign","preview_override"]);let fo=null;function po(){var e;return fo||(fo=null!==(e=window.__abconvertBrowserApiState)&&void 0!==e?e:null),fo}function mo(e,t,n){re(new Error(e),{script:uo,step:t,data:n})}function go(e,t){try{window.dispatchEvent(new CustomEvent(e,{detail:t,bubbles:!1,cancelable:!1}))}catch(t){mo(t instanceof Error?t.message:String(t),"event-listener",{event:e})}}function vo(e){console.error("[ABConvert] An ABConvertQueue callback failed:",e),re(e,{script:uo,step:"ready-callback"})}function ho(e,t){if("function"==typeof e)try{const n=e(t);n&&"function"==typeof n.then&&n.then(void 0,vo)}catch(e){vo(e)}}function yo(e){if(!e.ready&&e.parseEnded){for(const t of e.expected)if(!e.settled.has(t))return;!function(e,t){if(e.ready)return;if(e.ready=!0,null!==e.ceilingTimer&&(clearTimeout(e.ceilingTimer),e.ceilingTimer=null),"ceiling"===t){const t=[...e.expected].filter((t=>!e.settled.has(t)));mo(`ready ceiling reached with unsettled types: ${t.join(", ")}`,"ready-ceiling",{unsettled:t})}const{api:n,queue:r}=e;r.push=function(...e){return e.forEach((e=>ho(e,n))),r.length},r.splice(0,r.length).forEach((e=>ho(e,n))),go("abconvert:ready",n)}(e,"settled")}}function wo(e){const t=po();t&&(t.settled.add(e),yo(t))}function bo(e){return"number"==typeof e&&Number.isInteger(e)&&e>=0?String(e):"string"==typeof e&&/^\d+$/.test(e)?e:null}const xo=new Set(["","text/javascript","application/javascript","module"]);const _o=new Set(["random_split","force_assign_group","preview_override","url_force_assign"]);function Io(e,t,n){if(!n.inTest)return;const r=function(e,t,n,r){var o,i,s,a;
712const c=bo(t.numericId),u=null===(o=t.testGroups)||void 0===o?void 0:o[n];if(null===c||!u||!_o.has(r))return null;const l=!0===t.isPersonalization;return{experimentId:c,experimentName:null!==(i=t.name)&&void 0!==i?i:"",type:l?"personalization":null!=t.combinedExperimentId?"combined":e,status:"preview"===String(null!==(s=t.status)&&void 0!==s?s:"").toLowerCase()?"preview":"active",testGroup:{index:n,name:u.name,control:!l&&(null!==(a=u.isControl)&&void 0!==a?a:0===n),split:u.percentage},reason:r}}(e,t,n.groupIndex,n.reason);r&&function(e){var t,n;const r=po();if(!r)return;const o=bo(null==e?void 0:e.experimentId);if(null===o)return void mo("assignment registered without a numeric experimentId","register",{experimentId:String(null==e?void 0:e.experimentId),type:null==e?void 0:e.type});const i=r.assignments.get(o);if(i)return void(i.testGroup.index!==(null===(t=e.testGroup)||void 0===t?void 0:t.index)&&mo("combined test registered with differing group indexes","register",{experimentId:o,first:i.testGroup.index,second:null===(n=e.testGroup)||void 0===n?void 0:n.index}));const s={experimentId:o,experimentName:e.experimentName,type:e.type,status:e.status,testGroup:Object.assign({},e.testGroup),reason:e.reason};r.assignments.set(o,s),lo.has(s.reason)||go("abconvert:assignment-ready",function(e){return Object.assign(Object.assign({},e),{testGroup:(t=e.testGroup,Object.assign({},t))});var t}(s))}(r)}var So,To=function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function s(e){try{c(r.next(e))}catch(e){i(e)}}function a(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}c((r=r.apply(e,t||[])).next())}))};(function(e){const t=po();t&&t.expected.add(e)})(So="template"),function(e,t,{runWhenAbsent:n=!1,onGiveUp:r}={}){const o=window;if(void 0!==o[e])return void t();if(n&&!function(e){const t=new RegExp("window\\."+e+"\\s*="),n=document.querySelectorAll("script:not([src])");for(const e of n){const n=(e.getAttribute("type")||"").trim().toLowerCase();if(!xo.has(n)&&!n.includes("json")&&t.test(e.textContent||""))return!0}return!1}(e))return void t();const i=Date.now()+8e3,s=setInterval((()=>{void 0!==o[e]?(clearInterval(s),t()):Date.now()>i&&(clearInterval(s),n?t():r&&r())}),250)}("abconvertTemplateTestDict",(()=>{try{!function(){if(function(e){const t=window,n=t[qr]||(t[qr]={});return!n[e]&&(n[e]=!0,!0)}("template-test")){if(window.abconvertTemplateTestDict){const e=window.abconvertTemplateTestDict,t=Fr(e.shopPreviewKey||"");e.experiments&&(e.experiments=e.experiments.filter((function(e){return"Active"===e.status||!e.status||t&&"Preview"===e.status})),t&&e.experiments.forEach((function(e){if("Preview"!==e.status)return;const t="abconvert.experiment."+e.experimentId+".group";null===sessionStorage.getItem(t)&&sessionStorage.setItem(t,"0")}))),t&&function(e,t){const n=(window[Lr]||(window[Lr]={}),window[Lr]);n[e]!==t&&(n[e]=t,window.dispatchEvent(new Event("abconvert:preview-registry-updated")))}(Gr,e)}(()=>{To(this,void 0,void 0,(function*(){const e="true"===Br(Mr);function t(){const e=new URLSearchParams(location.search),t=e.get("preview"),n=e.get("countryCode");return n&&window.sessionStorage.setItem("abconvert-country",n),t&&!isNaN(Number(t))?(window.sessionStorage.setItem("abconvert-preview-number",t),t):window.sessionStorage.getItem("abconvert-preview-number")}function n(e){const t=function(){let e=localStorage.getItem("abconvert-seed");return null==e&&(e=Math.floor(100*Math.random()).toString(),localStorage.setItem("abconvert-seed",e)),e}();let n,r=0;for(n=0;n<e.length;++n)if(r+=e[n].percentage,Number(t)<r)return n;return n}function a(e){let r,o=t();return r=o&&!isNaN(Number(o))?Number(o)>=e.length?0:Number(o):n(e),r}function u(){const e=t();return e&&!isNaN(Number(e))}const f=()=>{let e;localStorage.getItem("shopURL")||window.Shopify&&window.Shopify.shop&&(e=window.Shopify.shop,localStorage.setItem("shopURL",e),console.log("[LOG] Template test: set shop url"))};function p(e,t,n){const r=new RegExp("([?&])"+t+"=.*?(&|$)","i"),o=-1!==e.indexOf("?")?"&":"?";return e.match(r)?e.replace(r,"$1"+t+"="+n+"$2"):e+o+t+"="+n}function m(e,t){return!e||!t||(e===l?!t.some((e=>E(e))):e!==d||t.some((e=>E(e))))}function g(e){const t=e.lastIndexOf(".");return t<=0?e:e.substring(0,t)}function v(e){var t;const n=null===(t=e.triggerTemplate)||void 0===t?void 0:t.key;return n?g(n):null}function h(e){const t=e.testGroups.findIndex((e=>!0===e.isControl));return-1===t?0:t}function y(e,t){const n=e.templateDict[t];return e.isPersonalization?t===v(e):!!n&&n.groupIndex===h(e)}function w(e,t){var n;return e.isPersonalization?t===v(e):!!(null===(n=e.templateDict)||void 0===n?void 0:n[t])}function b(e){return To(this,arguments,void 0,(function*({experimentId:e,groupIndex:t}){var n,a,u,l,d,f,p,m;try{for(let g=0;g<10;g++){yield D();const g=yield O((null!==(u=null===(a=null===(n=null===window||void 0===window?void 0:window.Shopify)||void 0===n?void 0:n.routes)||void 0===a?void 0:a.root)&&void 0!==u?u:"/")+"cart.js","GET");console.log("[LOG] Original cart attributes: ",g.attributes);let v=g.attributes,h={};if(v[c])try{h=JSON.parse(v[c])}catch(e){console.warn("[ABConvert] Failed to parse template cart attribute:",e)}h[e]=t;const y={[c]:JSON.stringify(h),[i]:((null===(l=null===window||void 0===window?void 0:window.Shopify)||void 0===l?void 0:l.country)||J()||"").toUpperCase(),[s]:null!==(d=N("abconvert-search-params"))&&void 0!==d?d:"",[r]:P(),[o]:An()};if(console.log("[LOG] New cart attributes: ",y),v[c]&&v[c]==JSON.stringify(h)&&v[i]==y[i])break;{const e={"Content-Type":"application/json"},t=(null!==(m=null===(p=null===(f=null===window||void 0===window?void 0:window.Shopify)||void 0===f?void 0:f.routes)||void 0===p?void 0:p.root)&&void 0!==m?m:"/")+"cart/update.js",n=JSON.stringify({attributes:y});(yield fetch(t,{method:"POST",headers:e,body:n})).ok?console.log("[LOG] Successfully update cart attributes"):console.log("Failed to update cart attributes")}}}catch(e){console.log("[ERROR] Update cart attributes: ",e)}}))}function x(t){var n,r,o,i;const s="string"==typeof window.abconvertTemplate?window.abconvertTemplate:"",a=window.location,c=new URLSearchParams(a.search),u=function(){const e=new Set;return{isSuppressed:t=>t.some((t=>e.has(t))),claim(t){for(const n of t)e.add(n)}}}();for(const d of function(e){return[...e].sort(((e,t)=>{const n=Number(Boolean(e.isPersonalization))-Number(Boolean(t.isPersonalization));return 0!==n?n:e.isPersonalization?co(t)-co(e):0}))}(t)){const{testGroups:t,experimentId:f,startTime:v,redirectControlGroup:b}=d,x=w(d,s)?[(l=s,`template/${l}`)]:[];if(d.isPersonalization&&u.isSuppressed(x))continue;const _=Wn({experimentId:String(f),numericId:d.numericId,trafficAllocationPercent:d.trafficAllocationPercent,audienceTargeting:null!==(n=d.audienceTargeting)&&void 0!==n?n:null,forceAssignRules:null!==(r=d.forceAssignRules)&&void 0!==r?r:null,percentages:d.testPercentages,isPersonalization:null!==(o=d.isPersonalization)&&void 0!==o&&o,assignmentVersion:d.assignmentVersion,experimentStartTime:v,pageTargeting:null!==(i=d.pageTargeting)&&void 0!==i?i:null});if(Io("template",d,_),c.has("_abr")||c.get("view"))continue;if(!m(d.pathConditionType,d.pathConditions))continue;if(!nn(d.pageTargeting))continue;if(!_.inTest)continue;if(u.claim(x),!y(d,s))continue;const I=_.groupIndex,{suffix:S,key:T}=t[I].variation.template,k=g(T);if(d.isPersonalization&&!S)continue;let O;if(e||Sn(_.reason)||"preview_override"===_.reason||(localStorage.setItem(`abconvert-template-test-${f}`,JSON.stringify({experimentId:f,groupIndex:I,startTime:v}
712)),$("template",f,I,Number(v)),Xn(f,I,d.numericId)),k!==s)O=p(a.search,"view",S),O=p(O,"_abr","1");else{if(!b||I!==h(d))continue;O=a.search,S&&(O=p(O,"view",S)),O=p(O,"_abr","1")}const N=window.location.pathname+O+window.location.hash;return Nr(P,An),void ao(N)}var l}console.log("[ABConvert] Running ABConvert Template test - 1.0.0 + add country filter + device filter");try{if(window.Shopify?.designMode||window.abconvertDesignMode)return;!function(){!function(){try{const e=function(){try{return new URLSearchParams(window.location.search).get(no)}catch(e){return null}}();null!==e&&function(){try{const e=new URLSearchParams(window.location.search);e.delete(no);const t=e.toString();window.history.replaceState(window.history.state,"",window.location.pathname+(t?"?"+t:"")+(window.location.hash||""))}catch(e){}}();const t=function(){try{const e=N(to);if(null===e)return null;const t=JSON.parse(decodeURIComponent(e));if(t&&"string"==typeof t.referrer&&"string"==typeof t.marker&&"number"==typeof t.ts)return t}catch(e){}return null}();if(null===t)return;if(oo.some((e=>null!==document.getElementById(e))))return;if(null===e||e!==t.marker)return;if(function(){try{document.cookie=to+"=; Max-Age=0; path=/"}catch(e){}}(),Date.now()-t.ts>=6e4)return;const n=window;if(n[ro])return;const r=Object.getOwnPropertyDescriptor(Document.prototype,"referrer");if(!r||"function"!=typeof r.get)return;const o=r.get,i=t.referrer,s=document;Object.defineProperty(Document.prototype,"referrer",Object.assign(Object.assign({},r),{get(){return this===s?i:o.call(this)}})),n[ro]=!0}catch(e){}}();const e=function(){try{const e=sessionStorage.getItem(eo);if(null===e)return null;const t=JSON.parse(e);if(t&&"string"==typeof t.fromUrl&&"number"==typeof t.ts)return t}catch(e){}return null}();if(null===e)return;const t=e.fromUrl!==io(),n=Date.now()-e.ts>=1e4;if(t||n)try{sessionStorage.removeItem(eo)}catch(e){}}(),C(),localStorage.getItem("abconvert-user-seed")||localStorage.setItem("abconvert-user-seed","0"),f(),document.addEventListener("DOMContentLoaded",f),yield function(){return To(this,void 0,void 0,(function*(){if(!(()=>{const e=navigator.userAgent;return L.some((t=>t.test(e)))})()&&window.abconvertTemplateTestDict){const t=window.abconvertTemplateTestDict;Qr(t,(()=>{var e;return function(e){const t=new URLSearchParams(window.location.search);if(t.has("_abr")||t.get("view"))return!1;const n="string"==typeof window.abconvertTemplate?window.abconvertTemplate:"";return e.some((e=>{var t,r;return!!m(e.pathConditionType,e.pathConditions)&&("version"in e&&"v5"===e.version?nn(e.pageTargeting)&&y(e,n):0===(null===(r=null===(t=e.templateDict)||void 0===t?void 0:t[n])||void 0===r?void 0:r.groupIndex))}))}(null!==(e=t.experiments)&&void 0!==e?e:[])})),Gn(),e||function(){if(!window[Vn]){window[Vn]=!0;try{const e=sessionStorage.length;if(0===e)return;const t=[];for(let n=0;n<e;n++){const e=sessionStorage.key(n);e&&e.startsWith(zn)&&t.push(e)}if(0===t.length)return;const n=P();for(const e of t){const t=e.slice(18);if(!t)continue;const r=Kn(t);r&&r.sessionId===n&&(Nn(t,r.numericId)||Hn(t,r.groupIndex,n))}}catch(e){}}}(),window.abconvertTemplateTestDict.fetchCountryCode&&(yield D());const n=window.abconvertTemplateTestDict.experiments,r=n.filter((e=>!("version"in e)||"v5"!==e.version)),o=n.filter((e=>"version"in e&&"v5"===e.version));!function(t){const n=window.abconvertTemplate,r=window.location;for(let o of t){const{templateDict:t,testGroups:i,experimentId:s,isFilteredByCountry:c,isFilteredByDevice:f,filteredCountries:m,selectedDevice:v,startTime:h,pathConditionType:y,pathConditions:w,redirectControlGroup:b}=o;if(c){const e=J();if(!m.includes(e))continue}if(f&&U()!==v)continue;if(o.selectedVistorType&&o.selectedVistorType!=j(h))continue;let x=!0;if(y&&(y===l&&(x=!w.some((e=>E(e)))),y===d&&(x=w.some((e=>E(e))))),!x)continue;
712const _=new URLSearchParams(r.search),I=_.get("view");if(!_.has("_abr")&&t[n]&&0===t[n].groupIndex&&!I){const t=a(i);u()||e||localStorage.getItem(`abconvert-template-test-${s}`)||(localStorage.setItem(`abconvert-template-test-${s}`,JSON.stringify({experimentId:s,groupIndex:t,startTime:h})),$("template",s,t,Number(h)));const{suffix:o,key:c}=i[t].template;let l;if(g(c)!==n)l=p(r.search,"view",o),l=p(l,"_abr","1");else{if(!b||0!==t)continue;l=r.search,o&&(l=p(l,"view",o)),l=p(l,"_abr","1")}const d=window.location.pathname+l+window.location.hash;return Nr(P,An),void ao(d)}}}(r),o.some(on)&&(yield pt()),yield function(e){return Lt(this,void 0,void 0,(function*(){const t=function(e){var t,n,r;const o=new Set;for(const i of e){if(null===(t=null==i?void 0:i.audienceTargeting)||void 0===t?void 0:t.enabled)for(const e of null!==(n=i.audienceTargeting.groups)&&void 0!==n?n:[])Kt(null==e?void 0:e.filters,o);for(const e of null!==(r=null==i?void 0:i.forceAssignRules)&&void 0!==r?r:[])Kt(null==e?void 0:e.filters,o)}return[...o]}(e);0!==t.length&&(function(e){Bt=[...new Set(e.filter((e=>"string"==typeof e&&e.length>0)))]}(t),yield Vt())}))}(o),x(o),e?wr(c,""):(function(e){const t=R+"/api/analytics/template/originalview",n=R+"/api/analytics/template/click",r=R+"/api/analytics/template/bounce",o=R+"/api/analytics/template/staying-time";for(let i of e){const{experimentId:e,templateDict:s,startTime:a}=i;if(s[window.abconvertTemplate]&&(!i.selectedVistorType||i.selectedVistorType===j(a))){const i=localStorage.getItem(`abconvert-template-test-${e}`),c=N(`abconvert-template-test-stay-time-recorded-${e}`);if(i){let u;try{u=JSON.parse(i)}catch(e){console.warn("[ABConvert] Failed to parse template test cookie:",e)}if(!u)continue;const{groupIndex:l}=u;l==s[window.abconvertTemplate].groupIndex&&(b({experimentId:e,groupIndex:l}),H(t,e,l,a),V(n,e,l,a),K(r,e,l,a),c||z(o,"template",e,l,a))}}}}(r),function(e){const t=R+"/api/analytics/template/originalview",n=R+"/api/analytics/template/click",r=R+"/api/analytics/template/bounce",o=R+"/api/analytics/template/staying-time";for(const i of e){const{experimentId:e,templateDict:s,startTime:a}=i;if(!s[window.abconvertTemplate])continue;const c=localStorage.getItem(`abconvert-template-test-${e}`),u=N(`abconvert-template-test-stay-time-recorded-${e}`);if(c){const{groupIndex:l}=JSON.parse(c);if(l==s[window.abconvertTemplate].groupIndex){if(b({experimentId:e,groupIndex:l}),Nn(e,i.numericId))continue;H(t,e,l,a),Xn(e,l,i.numericId),V(n,e,l,a),K(r,e,l,a),u||z(o,"template",e,l,a)}}}}(o),kr(P(),An()))}}))}()}catch(e){console.log("[ABConvert] Template test error: ",e.message)}finally{Xr||Yr(),wo("template")}}))})()}}()}catch(e){throw wo(So),e}}),Object.assign(Object.assign({},void 0),{onGiveUp:()=>wo(So)}))})();
713</script>
vendor: 1 bytes, line 713
713
714<script id="ABConvert-preview-widget">
715(()=>{"use strict";var n={63:(n,e,t)=>{t.d(e,{L:()=>c,i:()=>a});var o=t(6868);const r="match_exactly",i={match_exactly:"matches exactly",match_regex_exactly:"matches regex",contains:"contains",ends_with:"ends with",starts_with:"starts with",not_match_exactly:"does not match exactly",not_match_regex_exactly:"does not match regex",not_contains:"does not contain",not_ends_with:"does not end with",not_starts_with:"does not start with"};function a(n){let{groups:e,currentGroupIndex:t,expanded:a=!1,embedded:c=!1}=n;if(!e||0===e.length)return"";const s=e[t];if(!s)return"";const d=function(n){return n.redirectRules&&n.redirectRules.length>0?n.redirectRules.map(((e,t)=>function(n,e){let t=arguments.length>2&&void 0!==arguments[2]&&arguments[2];const o=n.triggerUrl||"",a=n.destinationUrl||"";if(!o&&!a)return"";const c=n.matchType===r,s=e?"":"border-bottom: 1px dashed #e1e3e5;",d=`\n    <div class="abconvert-product-info" style="flex: 1; min-width: 0;">\n      <div style="font-size: 11px; color: #6d7175; margin-bottom: 2px;">From (${i[n.matchType]||n.matchType||""})</div>\n      <div style="font-size: 12px; color: #303030; word-break: break-all; margin-bottom: 8px;">${o}</div>\n      <div style="font-size: 11px; color: #6d7175; margin-bottom: 2px;">To</div>\n      <div style="font-size: 12px; word-break: break-all;">${t?'<span style="color: #8c9196;">No redirect</span>':a}</div>\n    </div>\n  `;return c?`\n      <a href="${o}" class="abconvert-product-item" style="${s}">\n        ${d}\n        <span class="abconvert-product-arrow">→</span>\n      </a>\n    `:`\n    <div style="display: flex; align-items: center; gap: 8px; padding: 6px 10px; margin: 2px 0; ${s}">\n      ${d}\n    </div>\n  `}(e,t===n.redirectRules.length-1,n.isControl))).join(""):n.legacyUrl?`\n      <div style="display: flex; align-items: center; gap: 6px;">\n        <span style="font-size: 10px; color: #8c9196; text-transform: uppercase; letter-spacing: 0.3px; width: 32px; flex-shrink: 0;">To</span>\n        <span style="font-size: 12px; color: #303030; flex: 1; word-break: break-all;">${n.legacyUrl}</span>\n      </div>\n    `:""}(s);return d?(0,o.q)({id:"abconvert-redirect-rules",title:"Redirect URLs",content:`<div class="abconvert-card">${d}</div>`,expanded:a,embedded:c}):""}function c(n,e){(0,o.s)(n,"abconvert-redirect-rules","400px",e)}},947:(n,e,t)=>{t.d(e,{$F:()=>r,G:()=>i,eo:()=>a});const o="__ABConvertPreviewRegistry",r="abconvert:preview-registry-updated";function i(){return window[o]||(window[o]={}),window[o]}function a(n,e){const t=i();t[n]!==e&&(t[n]=e,window.dispatchEvent(new Event(r)))}},1338:(n,e,t)=>{t.d(e,{A:()=>r});var o=t(6538);
715const r={displayName:"Checkout Test",normalize:function(n){const e={};return(n?.experiments||[]).forEach((n=>{if("preview"!==n.status)return;const t=n.id;t&&(e[t]={id:t,name:n.name||"Checkout Test",experimentId:n.experimentId??t,status:"Preview",startTime:n.startedAt?new Date(n.startedAt).toISOString():void 0,trafficAllocationPercent:n.traffic?.allocationPercent,audienceTargeting:n.traffic?.audience,forceAssignRules:n.traffic?.forceAssign,groups:(n.groups||[]).map((n=>({name:n.name,percentage:n.percentage,isControl:n.isControl,id:n.id,modifications:n.modifications||[]}))),_original:n})})),e},renderPanel:function(n,e){const{experimentData:t,currentGroupIndex:r}=n,i=t?.groups||[];return(0,o.RW)({groups:i,currentGroupIndex:r,expanded:e?.has?.(o.gv)??!1,expandedSections:e,embedded:n.embedded})},initPanelEvents:function(n,e,t){(0,o.MY)(n,t)}}},1719:(n,e,t)=>{t.d(e,{N:()=>i,c:()=>r});var o=t(6868);function r(n){let{groups:e,currentGroupIndex:t,expanded:r=!1,embedded:i=!1}=n;if(!e||0===e.length)return"";const a=e[t];if(!a)return"";const c=function(n){const e=n.theme||{},t=e.name||"Unknown Theme",o=e.id||"";return`\n    <div style="display: flex; align-items: center; gap: 8px; padding: 6px 10px; margin: 2px 0; ">\n      <div class="abconvert-product-info" style="flex: 1; min-width: 0;">\n        <div style="font-size: 12px; color: #303030; word-break: break-all;">\n          ${t}${n.isControl?' <span style="font-size: 10px; color: #8c9196; background: #f1f2f3; padding: 1px 5px; border-radius: 3px; margin-left: 4px;">Control</span>':""}\n        </div>\n        <div style="font-size: 11px; color: #6d7175; margin-top: 2px;">\n          Theme ID: ${o}\n        </div>\n      </div>\n    </div>\n  `}(a);return(0,o.q)({id:"abconvert-theme-info",title:"Theme Assignment",content:`<div class="abconvert-card">${c}</div>`,expanded:r,embedded:i})}function i(n,e){(0,o.s)(n,"abconvert-theme-info","200px",e)}},1840:(n,e,t)=>{t.d(e,{k:()=>a,l:()=>i});var o=t(6868),r=t(4788);function i(n){let{groups:e,currentGroupIndex:t,expanded:i=!1,embedded:a=!1}=n;if(!e||0===e.length)return"";const c=e[t]||e[0],s=c.template||c.variation?.template||{},d=s.type||"unknown",l=s.suffix||"Default";let u="#";if(s.previewUrl){const n=new URL((0,r.hM)(s.previewUrl));n.searchParams.delete("view"),n.searchParams.delete("_abr"),u=n.toString()}const p=`\n    <div class="abconvert-card">\n      <a href="${u}" class="abconvert-product-item">\n        <div class="abconvert-product-info">\n          <div class="abconvert-product-title">${l}</div>\n          <div class="abconvert-product-variants" style="text-transform: capitalize;">${d}</div>\n        </div>\n        <span class="abconvert-product-arrow">→</span>\n      </a>\n    </div>\n  `;return(0,o.q)({id:"abconvert-template-variation",title:"Template Variation",content:p,expanded:i,embedded:a})}function a(n,e){(0,o.s)(n,"abconvert-template-variation","200px",e)}},1951:(n,e,t)=>{t.d(e,{iX:()=>c,q2:()=>a});var o=t(2639);const r='<svg viewBox="0 0 12 12" width="12" height="12" fill="none" aria-hidden="true"><path d="M3 4.5 6 7.5l3-3" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>';function i(n){return`abconvert-combined-mod-${n}`}function a(n){let{type:e,label:t,summary:a,contentHtml:c,expanded:s=!1}=n;const d=i(e),l=s?"expanded":"",u=a?`<span class="abconvert-combined-mod-summary">${(0,o.Z)(a)}</span>`:"";return`\n    <div class="abconvert-combined-mod">\n      <button id="${d}-toggle" class="abconvert-combined-mod-head" type="button">\n        <span class="abconvert-combined-mod-label">${(0,o.Z)(t)}</span>\n        <span class="abconvert-combined-mod-meta">\n          ${u}\n          <span id="${d}-arrow" class="abconvert-combined-mod-arrow ${l}">${r}</span>\n        </span>\n      </button>\n      <div id="${d}-content" class="abconvert-combined-mod-content ${l}">\n        ${c}\n      </div>\n    </div>\n  `}function c(n,e,t){const o=i(e),r=n.querySelector(`#${o}-toggle`),a=n.querySelector(`#${o}-content`),c=n.querySelector(`#${o}-arrow`);if(!r||!a)return;const s=n=>{a.style.maxHeight=n?"none":"0",c&&c.classList.toggle("expanded",n)};s(a.classList.contains("expanded")),r.addEventListener("click",(()=>{const n=a.classList.toggle("expanded");s(n),t&&t(`${o}:expanded`,n)}))}},2228:(n,e,t)=>{t.d(e,{A:()=>r});var o=t(5998);
715const r={displayName:"Offer Test",normalize:function(n){const e={};return(n?.experiments||[]).forEach((t=>{"Preview"===t.status&&(e[t.experimentId]={id:t.experimentId,name:t.name||"Offer Test",experimentId:t.numericId||t.experimentId,version:n.version||"v1",status:t.status,startTime:t.startTime,trafficAllocationPercent:t.trafficAllocationPercent,audienceTargeting:t.audienceTargeting,forceAssignRules:t.forceAssignRules,groups:(t.testGroups||[]).map((n=>({name:n.name,percentage:n.percentage,isControl:n.isControl,offer:n.offer||{title:"",parts:[]}}))),_original:t})})),e},renderPanel:function(n,e){const{experimentData:t,currentGroupIndex:r}=n,i=t.groups||[];return(0,o.R)({groups:i,currentGroupIndex:r,expanded:e.has("abconvert-offer-config"),embedded:n.embedded})},initPanelEvents:function(n,e,t){(0,o.g)(n,t)},onGroupSwitch:function(n){try{const e=`abconvert.offer-msg.dismissed.${n.id}.`,t=[];for(let n=0;n<sessionStorage.length;n++){const o=sessionStorage.key(n);o&&o.startsWith(e)&&t.push(o)}t.forEach((n=>sessionStorage.removeItem(n)))}catch{}}}},2639:(n,e,t)=>{function o(n){return String(n??"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;")}t.d(e,{Z:()=>o})},3835:(n,e,t)=>{t.d(e,{A:()=>o});const o={displayName:"Combined Test",normalize:function(n){const e={};return(n?.experiments||[]).forEach((n=>{if("preview"!==n.status)return;const t=n.id;t&&(e[t]={id:t,name:n.name||"Combined test",experimentId:n.experimentId??t,status:"Preview",startTime:n.startedAt,trafficAllocationPercent:n.traffic?.allocationPercent,audienceTargeting:n.traffic?.audience,forceAssignRules:n.traffic?.forceAssign,groups:(n.groups||[]).map((n=>({name:n.name,percentage:n.percentage,isControl:n.isControl,modifications:n.modifications||[]}))),_original:n})})),e}}},4366:(n,e,t)=>{function o(n){return Array.isArray(n?.availableMarkets)?n.availableMarkets:r(n)}function r(n){const e=new Set,t=n?.products||[];for(const n of t)for(const t of n.variants||[])if(t.testGroups)for(const n of t.testGroups)n?.countryMap&&Object.keys(n.countryMap).forEach((n=>e.add(n)));return Array.from(e).sort()}function i(n){let{availableMarkets:e,currentMarket:t,shopPrimaryCountry:o,marketNames:r,pricedCountries:i}=n;if(!e||0===e.length)return"";const a=!!o&&e.includes(o),c=t||(a?o:null),s=e.map((n=>`<option value="${n}" ${n===c?"selected":""}>${r?.[n]||n}</option>`)).join(""),d=a?"":`<option value="">${o?`Default (${o})`:"Default (Shop Currency)"}</option>`,l=(window.Shopify?.country||"").toUpperCase(),u=c&&l&&l!==c,p=Array.isArray(i)&&i.includes(l);let v="";return u&&p?v=`<div class="abconvert-market-mismatch-note" style="margin-top:6px;font-size:12px;color:#616161;">\n        Showing ${l} prices (this page's country).\n      </div>`:u&&(v=`<div class="abconvert-market-mismatch-note" style="margin-top:6px;font-size:12px;color:#996a13;">\n        This page is shown for ${l}, so prices follow ${l}.\n        Open a product below, or switch the preview's country bar, to see ${r?.[c]||c} prices.\n      </div>`),`\n    <div class="abconvert-section">\n      <label class="abconvert-section-label">Preview Market</label>\n      <select id="abconvert-market-selector" class="abconvert-select">\n        ${d}\n        ${s}\n      </select>\n      ${v}\n    </div>\n  `}function a(n,e){const t=n.querySelector("#abconvert-market-selector");t&&t.addEventListener("change",(function(){const n=this.value||null;e&&e(n)}))}t.d(e,{BP:()=>a,P7:()=>r,SP:()=>o,sz:()=>i})},4788:(n,e,t)=>{t.d(e,{DZ:()=>l,IL:()=>c,K7:()=>$,P3:()=>f,Ys:()=>v,a4:()=>g,e1:()=>p,gp:()=>u,hM:()=>m,nI:()=>b,tj:()=>s,uH:()=>h,xX:()=>d});const o={PREVIEW_MODE:"abconvert.preview",PREVIEW_EXPERIMENT_ID:"abconvert_preview_experiment_id",PREVIEW_GROUP_PREFIX:"abconvert.experiment.",PREVIEW_GROUP_SUFFIX:".group",PREVIEW_MARKET:"abconvert-country",EXPANDED_SECTIONS:"abconvert.widget.expanded"};function r(n){try{return window.sessionStorage?.getItem(n)??null}catch(n){return null}}function i(n,e){try{window.sessionStorage?.setItem(n,e)}catch(n){}}function a(n){try{return window.localStorage?.getItem(n)??null}catch(n){return null}}function c(){return"true"===r(o.PREVIEW_MODE)}function s(){return r(o.PREVIEW_EXPERIMENT_ID)}function d(n){i(o.PREVIEW_EXPERIMENT_ID,n)}function l(n){const e=r(o.PREVIEW_GROUP_PREFIX+n+o.PREVIEW_GROUP_SUFFIX);return null!==e?parseInt(e,10):null}function u(n,e){i(o.PREVIEW_GROUP_PREFIX+n+o.PREVIEW_GROUP_SUFFIX,e.toString())}function p(){return r(o.PREVIEW_MARKET)||a(o.PREVIEW_MARKET)}function v(n){n?(i(o.PREVIEW_MARKET,n),function(n,e){try{window.localStorage?.setItem(n,e)}catch(n){}}(o.PREVIEW_MARKET,n)):(function(n){try{window.sessionStorage?.removeItem(n)}catch(n){}}(o.PREVIEW_MARKET),function(n){try{window.localStorage?.removeItem(n)}catch(n){}}(o.PREVIEW_MARKET))}function f(n){return new URLSearchParams(window.location.search).get(n)}function b(n){const e=new URL(window.location.href);e.searchParams.delete(n),window.history.replaceState({},"",e.toString())}function g(n){const e=new URL(window.location.href);
715Object.entries(n).forEach((n=>{let[t,o]=n;null!=o?e.searchParams.set(t,o):e.searchParams.delete(t)})),window.location.href=e.toString()}function m(n){const e=new URL(window.location.href),t=new URL(n,window.location.origin),i=e.searchParams.get("country")||r(o.PREVIEW_MARKET)||a(o.PREVIEW_MARKET);return i&&t.searchParams.set("country",i),t.toString()}function h(){const n=r(o.EXPANDED_SECTIONS);return new Set(n?JSON.parse(n):[])}function $(n){i(o.EXPANDED_SECTIONS,JSON.stringify([...n]))}},5001:(n,e,t)=>{t.d(e,{A:()=>i});var o=t(1719);function r(n){n.searchParams.delete("_abr"),n.searchParams.delete("preview_theme_id"),n.searchParams.delete("pb")}const i={displayName:"Theme Test",normalize:function(n){if(!n||"Preview"!==n.status)return{};const e=n.experimentId;if(!e)return{};const t=n.testGroups||[];return{[e]:{id:e,name:"Theme Test",experimentId:n.numericId||e,version:n.version||"legacy",status:n.status,startTime:n.startTime,trafficAllocationPercent:n.trafficAllocationPercent,audienceTargeting:n.audienceTargeting,forceAssignRules:n.forceAssignRules,groups:t.map((n=>({name:n.name,percentage:n.percentage,isControl:n.isControl,theme:n.variation?.theme||n.theme}))),_original:n}}},renderPanel:function(n,e){const{experimentData:t,currentGroupIndex:r}=n,i=t.groups||[];return(0,o.c)({groups:i,currentGroupIndex:r,expanded:e.has("abconvert-theme-info"),embedded:n.embedded})},initPanelEvents:function(n,e,t){(0,o.N)(n,t)},onGroupSwitch:function(){const n=new URL(window.location.href);return r(n),window.location.replace(n.toString()),!0},stripGroupSwitchParams:r}},5233:(n,e,t)=>{t.d(e,{A:()=>a});var o=t(4788),r=t(8711),i=t(4366);const a={displayName:"Price Test",normalize:function(n){const e=n?.experiments||{},t={};return Object.entries(e).forEach((n=>{let[e,o]=n;"Preview"===o.status&&(t[e]={...o,id:e,name:o.name||"Price Test",experimentId:o.experimentId||e,version:o.version||"v3",status:o.status,groups:o.groups||[],products:o.products||[],shopPrimaryCountry:o.shopPrimaryCountry||null})})),t},resolveState:function(n){return{selectedMarket:(0,o.e1)(),availableMarkets:(0,i.SP)(n)}},renderPanel:function(n,e){const{experimentData:t,experimentId:o,currentGroupIndex:a,selectedMarket:c,availableMarkets:s}=n,d=t.products,l=t.shopPrimaryCountry;return(0,i.sz)({availableMarkets:s,currentMarket:c,shopPrimaryCountry:l,marketNames:t.marketNames,pricedCountries:(0,i.P7)(t)})+(0,r.K)({products:d,experimentId:o,groupIndex:a,selectedMarket:c,shop:{currency:t.shopCurrency,primaryCountry:l,countryCurrencies:t.countryCurrencies},expanded:e.has("abconvert-products"),embedded:n.embedded})},initPanelEvents:function(n,e,t){const a=e.experimentData?.shopPrimaryCountry||"US";(0,i.BP)(n,(n=>{(0,o.Ys)(n||null),(0,o.a4)({country:n||a})})),(0,r.j)(n,t)}}},5246:(n,e,t)=>{t.d(e,{H5:()=>h,JB:()=>f,Mo:()=>g,Mq:()=>k,WU:()=>m,uh:()=>$});var o=t(947),r=t(1951),i=t(5233),a=t(8368),c=t(7626),s=t(6020),d=t(5848),l=t(5001),u=t(1338),p=t(2228),v=t(3835);const f={PRICE:"price",CONTENT:"content",URL_REDIRECT:"urlRedirect",TEMPLATE:"template",THEME:"theme",SHIPPING:"shipping",PAYMENT:"payment",DELIVERY:"delivery",CHECKOUT_UI:"checkoutUI",CHECKOUT_TEST:"checkoutTest",VISUAL_EDITOR:"visualEditor",OFFER:"offer",COMBINED:"combined"},b={[f.PRICE]:i.A,[f.SHIPPING]:a.A,[f.URL_REDIRECT]:c.A,[f.VISUAL_EDITOR]:s.A,[f.TEMPLATE]:d.A,[f.THEME]:l.A,[f.CHECKOUT_TEST]:u.A,[f.OFFER]:p.A,[f.COMBINED]:v.A};function g(){const n=(0,o.G)(),e={},t=b[f.COMBINED],r=t?.normalize?t.normalize(n[f.COMBINED]):{},i=new Set(Object.keys(r));for(const[n,t]of Object.entries(r))e[n]={...t,testType:f.COMBINED,modificationEntries:{}};for(const[t,o]of Object.entries(n)){if(t===f.COMBINED)continue;const n=b[t];if(n?.normalize)for(const[r,a]of Object.entries(n.normalize(o))){const n=i.has(r)?e[r]:null;n?n.modificationEntries[t]={...a,testType:t}:null==(a.combinedExperimentId??a._original?.combinedExperimentId)&&(e[r]={...a,testType:t})}}return e}function m(n,e){const t=b[n];return t?.resolveState?t.resolveState(e):{}}function h(n,e,t){if(n===f.COMBINED)return function(n,e){const{experimentData:t,currentGroupIndex:o}=n,i=t.modificationEntries||{};return x(t,o).map((n=>{const t=y[n.type],a=i[t],c=a?h(t,w(t,a,o),e):'<div class="abconvert-combined-mod-empty">No detail available.</div>',s=`abconvert-combined-mod-${t}:expanded`;return(0,r.q2)({type:t,label:E(t),summary:n.summary,contentHtml:c,expanded:e.has(s)})})).join("")}(e,t);const o=b[n];return o?.renderPanel?o.renderPanel(e,t):""}function $(n,e,t,o){if(n===f.COMBINED)return void function(n,e,t){const{experimentData:o,currentGroupIndex:i}=e,a=o.modificationEntries||{};for(const e of x(o,i)){const o=y[e.type];(0,r.iX)(n,o,t);const c=a[o];c&&$(o,n,w(o,c,i),t)}}(e,t,o);const i=b[n];i?.initPanelEvents&&i.initPanelEvents(e,t,o)}function x(n,e){const t=n?.groups||[];return(t[e]??t[0])?.modifications||[]}function w(n,e,t){return{testType:n,experimentData:e,experimentId:e.id,currentGroupIndex:t,embedded:!0,...m(n,e)}}const y={"price-cart-transform-test":f.PRICE,"shipping-test":f.SHIPPING,"offer-test":f.OFFER,"url-redirect-test":f.URL_REDIRECT,"template-test":f.TEMPLATE,"theme-test":f.THEME,"visual-editor-content-test":f.VISUAL_EDITOR,"checkout-test":f.CHECKOUT_TEST};function k(n,e,t){if(n===f.COMBINED)return function(n,e){const t=new URL(window.location.href);let o=!1;for(const r of function(n){const e=new Set;for(const t of n?.groups||[])for(const n of t.modifications||[])n?.type&&e.add(n.type);return[...e]}(n)){const i=b[y[r]];i&&(i.stripGroupSwitchParams?(i.stripGroupSwitchParams(t),o=!0):i.onGroupSwitch&&i.onGroupSwitch(n,e))}return!!o&&(window.location.replace(t.toString()),!0)}(e,t);const o=b[n];return!!o?.onGroupSwitch&&!0===o.onGroupSwitch(e,t)}function E(n){const e=b[n];return e?.displayName||"A/B Test"}},5848:(n,e,t)=>{t.d(e,{A:()=>i});var o=t(1840);function r(n){n.searchParams.delete("view"),n.searchParams.delete("_abr")}
715const i={displayName:"Template Test",normalize:function(n){const e={};return(n?.experiments||[]).forEach((n=>{if("Preview"!==n.status)return;const t=n.experimentId;e[t]={id:t,name:n.name||"Template Test",experimentId:n.numericId||t,version:n.version||"v1",status:n.status||"Active",startTime:n.startTime,trafficAllocationPercent:n.trafficAllocationPercent,audienceTargeting:n.audienceTargeting,forceAssignRules:n.forceAssignRules,groups:(n.testGroups||[]).map((n=>({name:n.name,percentage:n.percentage,template:n.template||n.variation?.template||{}}))),_original:n}})),e},renderPanel:function(n,e){const{experimentData:t,currentGroupIndex:r}=n,i=t.groups||[];return(0,o.l)({groups:i,currentGroupIndex:r,expanded:e.has("abconvert-template-variation"),embedded:n.embedded})},initPanelEvents:function(n,e,t){(0,o.k)(n,t)},onGroupSwitch:function(n,e){const t=new URL(window.location.href);return r(t),window.location.href=t.toString(),!0},stripGroupSwitchParams:r}},5998:(n,e,t)=>{t.d(e,{R:()=>m,g:()=>h});var o=t(6868),r=t(2639);const i=3,a={"amount-off-products":"Amount off products","amount-off-order":"Amount off order","shipping-discount":"Shipping discount","volume-discount":"Volume discount","threshold-discount":"Threshold discount"},c={product:'<svg viewBox="0 0 20 20" width="16" height="16" fill="none" aria-hidden="true"><path d="M10 2.5l6.5 3.25v7L10 16l-6.5-3.25v-7L10 2.5z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/><path d="M3.5 5.75L10 9l6.5-3.25M10 9v7" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>',collection:'<svg viewBox="0 0 20 20" width="16" height="16" fill="none" aria-hidden="true"><rect x="3" y="3" width="6" height="6" rx="1" stroke="currentColor" stroke-width="1.5"/><rect x="11" y="3" width="6" height="6" rx="1" stroke="currentColor" stroke-width="1.5"/><rect x="3" y="11" width="6" height="6" rx="1" stroke="currentColor" stroke-width="1.5"/><rect x="11" y="11" width="6" height="6" rx="1" stroke="currentColor" stroke-width="1.5"/></svg>',shipping:'<svg viewBox="0 0 20 20" width="16" height="16" fill="none" aria-hidden="true"><path d="M2 10h11l-2-3M2 10l2 3M16 10v4a1 1 0 0 1-1 1h-1m-9 0h6m3 0a2 2 0 1 1-4 0 2 2 0 0 1 4 0z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>'};function s(n){return n?"percentage"===n.type?`${n.amount}%`:`$${n.amount}`:""}function d(n){const e=function(n){switch(n.type){case"amount-off-products":case"amount-off-order":return`${s(n.value)} off`;case"shipping-discount":return"percentage"===n.value?.type&&n.value.amount>=100?"Free shipping":`${s(n.value)} off`;case"volume-discount":case"threshold-discount":{const e=(n.tiers||[]).filter((n=>n.threshold>0&&n.value?.amount>0));if(0===e.length)return"volume-discount"===n.type?"Volume discount — no tiers set":"Threshold discount — no tiers set";const t=function(n){const e=n.filter((n=>"percentage"===n.value?.type)),t=n.filter((n=>"fixedAmount"===n.value?.type)),o=e.length>=t.length?e:t;return o.reduce(((n,e)=>e.value.amount>n.amount?e.value:n),o[0]?.value??n[0].value)}(e),o=1===e.length?"tier":"tiers";return`Up to ${s(t)} off (${e.length} ${o})`}default:return n.type||""}}(n);return[e,...v(n)].join(" · ")}function l(n,e){return null==e?`${n}+ items`:e===n+1?1===n?"1 item":`${n} items`:`${n}–${e-1} items`}function u(n,e){if(null==e)return`$${p(n)}+`;const t=Number.isInteger(n)&&Number.isInteger(e)?e-1:Math.round(100*(e-.01))/100;return`$${p(n)}–$${p(t)}`}function p(n){return Number.isInteger(n)?String(n):n.toFixed(2)}function v(n){const e=[];("amount-off-products"===n.type||"amount-off-order"===n.type||"shipping-discount"===n.type)&&"percentage"===n.value?.type&&n.value.maxDiscountAmount>0&&e.push(`Max $${n.value.maxDiscountAmount} cap`);const t=n.condition;
715return t&&"none"!==t.type&&("min-subtotal"===t.type?e.push(`Min order $${t.amount}`):"min-quantity"===t.type&&e.push(`Min ${t.quantity} item${1===t.quantity?"":"s"}`)),e}function f(n,e){return`${n} ${e}${1===n?"":"s"}`}function b(n){if(!n)return'<span class="abconvert-offer-type abconvert-offer-type-empty">No offer</span>';const e=a[n.type]||n.type;return`<span class="abconvert-offer-type">${(0,r.Z)(e)}</span>`}function g(n,e){const t=n?.parts||[];if(0===t.length)return function(n){const e=n?"No offer (normal price)":"No offer configured";return`\n    <div class="abconvert-offer-card">\n      <div class="abconvert-offer-head">\n        <div class="abconvert-offer-primary-row">\n          <div class="abconvert-offer-primary">${(0,r.Z)(e)}</div>\n          ${b(null)}\n        </div>\n      </div>\n    </div>\n  `}(e);const o=t.length>1,a=t.map(d).join(" + "),p=t[0],g=o?null:function(n){if("amount-off-products"===n.type||"volume-discount"===n.type){const e=n.scope;if(!e||"all-products"===e.type)return null;if("specific-products"===e.type){const n=(e.products||[]).map((n=>n.title));return 0===n.length?null:{icon:c.product,label:f(n.length,"product"),names:n}}if("specific-collections"===e.type){const n=(e.collections||[]).map((n=>n.title));return 0===n.length?null:{icon:c.collection,label:f(n.length,"collection"),names:n}}}if("shipping-discount"===n.type){const e=n.scope;if(!e||"all-rates"===e.type)return null;if("specific-rates"===e.type){const n=e.rateNames||[];return 0===n.length?null:{icon:c.shipping,label:f(n.length,"rate"),names:n}}}return null}(p),m=n.title?.trim()||"",h=m||a,$=o?"":function(n){if("volume-discount"!==n.type&&"threshold-discount"!==n.type)return"";const e=(n.tiers||[]).filter((n=>n.threshold>0&&n.value?.amount>0));if(0===e.length)return"";const t="volume-discount"===n.type,o=t?"Qty":"Spend",i=t?l:u,a=[...e].sort(((n,e)=>n.threshold-e.threshold)),c=a.map(((n,e)=>{const t=a[e+1];return`\n    <div class="abconvert-offer-tier-row">
715\n      <span class="abconvert-offer-tier-qty">${(0,r.Z)(i(n.threshold,t?.threshold))}</span>\n      <span class="abconvert-offer-tier-discount">${(0,r.Z)(`${s(n.value)} off`)}</span>\n    </div>\n  `})).join("");return`\n    <div class="abconvert-offer-tier-table">\n      <div class="abconvert-offer-tier-header">\n        <span class="abconvert-offer-tier-header-label">${(0,r.Z)(o)}</span>\n        <span class="abconvert-offer-tier-header-label">Discount</span>\n      </div>\n      ${c}\n    </div>\n  `}(p),x=$?v(p).join(" · "):a,w=m&&x?`<div class="abconvert-offer-secondary">${(0,r.Z)(x)}</div>`:"";return`\n    <div class="abconvert-offer-card">\n      <div class="abconvert-offer-head">\n        <div class="abconvert-offer-primary-row">\n          <div class="abconvert-offer-primary">${(0,r.Z)(h)}</div>\n          ${b(p)}\n        </div>\n        ${w}\n      </div>\n      ${$}\n      ${function(n){if(!n)return"";const e=n.names.slice(0,i),t=n.names.slice(i),o=t.length,a=t.join(", "),c=o>0?`<span class="abconvert-offer-overflow" data-tooltip="${(0,r.Z)(a)}" aria-label="${(0,r.Z)(a)}">+${o} more</span>`:"";return`\n    <div class="abconvert-offer-scope">
715\n      <span class="abconvert-offer-scope-icon">${n.icon}</span>\n      <div class="abconvert-offer-scope-body">\n        <div class="abconvert-offer-scope-count">${(0,r.Z)(n.label)}</div>\n        <div class="abconvert-offer-scope-names">\n          <span>${(0,r.Z)(e.join(", "))}</span>\n          ${c}\n        </div>\n      </div>\n    </div>\n  `}(g)}\n    </div>\n  `}function m(n){let{groups:e,currentGroupIndex:t,expanded:r=!1,embedded:i=!1}=n;if(!e||0===e.length)return"";const a=e[t]??e[0];return a?(0,o.q)({id:"abconvert-offer-config",title:"Offer Config",content:g(a.offer,a.isControl),expanded:r,embedded:i}):""}function h(n,e){(0,o.s)(n,"abconvert-offer-config","320px",e)}},6020:(n,e,t)=>{t.d(e,{A:()=>i});var o=t(9885);let r=null;const i={displayName:"Visual Editor Test",normalize:function(n){const e={};return(n?.experiments||[]).forEach((n=>{if("Preview"!==n.status)return;const t=n.experimentId;e[t]={id:t,name:n.name||"Visual Editor Test",experimentId:n.numericId||t,status:n.status||"Active",startTime:n.startTime,trafficAllocationPercent:n.trafficAllocationPercent,audienceTargeting:n.audienceTargeting,forceAssignRules:n.forceAssignRules,groups:n.testGroups||[],_original:n}})),e},renderPanel:function(n,e){const{experimentData:t,currentGroupIndex:i}=n,a=t.groups||[];return(0,o.k)({groups:a,groupIndex:i,expanded:e.has("abconvert-visual-editor-pages"),activeTab:r,embedded:n.embedded})},initPanelEvents:function(n,e,t){const{experimentData:i,currentGroupIndex:a}=e,c=i.groups||[];(0,o.H)(n,t,(n=>{r=n}),{groups:c,groupIndex:a})}}},6538:(n,e,t)=>{t.d(e,{MY:()=>C,RW:()=>E,gv:()=>i});var o=t(6868),r=t(2639);const i="abconvert-checkout-config",a=["delivery","payment","content","cart","upsell"],c={delivery:"Delivery",payment:"Payment",content:"Content blocks",cart:"Cart",upsell:"Upsell"},s={heading:"content",banner:"content","trust-badge":"content",button:"content",benefit:"content",image:"content","payment-icon":"content","upsell-product-tile":"upsell","cart-control":"cart"},d={heading:"Heading",banner:"Banner","trust-badge":"Trust badge",button:"Button",benefit:"Benefit list",image:"Image","payment-icon":"Payment icons","upsell-product-tile":"Product offer","cart-control":"Cart control"},l={hide:"Hide",rename:"Rename",reorder:"Reorder"},u={heading:'<svg viewBox="0 0 16 16" width="14" height="14" fill="none" aria-hidden="true"><path d="M3 3v10M9 3v10M3 8h6" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"/><path d="M11 6.5l1.5-1V13" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"/></svg>',banner:'<svg viewBox="0 0 16 16" width="14" height="14" fill="none" aria-hidden="true"><rect x="2.5" y="4.5" width="11" height="7" rx="1.5" stroke="currentColor" stroke-width="1.3"/><circle cx="5.5" cy="8" r="0.9" fill="currentColor"/><path d="M7.5 8h3.5" stroke="currentColor" stroke-width="1.3" stroke-linecap="round"/></svg>',"trust-badge":'<svg viewBox="0 0 16 16" width="14" height="14" fill="none" aria-hidden="true"><path d="M8 2.2 13 4v4.2c0 2.6-2 4.7-5 5.6-3-.9-5-3-5-5.6V4l5-1.8Z" stroke="currentColor" stroke-width="1.3" stroke-linejoin="round"/><path d="m6 8 1.5 1.5L10 7" stroke="currentColor" stroke-width="1.3" stroke-linecap="round" stroke-linejoin="round"/></svg>',button:'<svg viewBox="0 0 16 16" width="14" height="14" fill="none" aria-hidden="true"><rect x="2" y="6" width="12" height="4" rx="2" stroke="currentColor" stroke-width="1.3"/><circle cx="11.5" cy="8" r="0.9" fill="currentColor"/></svg>',benefit:'<svg viewBox="0 0 16 16" width="14" height="14" fill="none" aria-hidden="true"><path d="M3 4.5h10M3 8h10M3 11.5h6.5" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"/><circle cx="3" cy="4.5" r="0.6" fill="currentColor"/><circle cx="3" cy="8" r="0.6" fill="currentColor"/><circle cx="3" cy="11.5" r="0.6" fill="currentColor"/></svg>',image:'<svg viewBox="0 0 16 16" width="14" height="14" fill="none" aria-hidden="true"><rect x="2.5" y="3" width="11" height="10" rx="1.5" stroke="currentColor" stroke-width="1.3"/><circle cx="6" cy="6.5" r="1.1" stroke="currentColor" stroke-width="1.2"/><path d="m3 12 3.2-3.5 2.3 2L11 7l2 2.4" stroke="currentColor" stroke-width="1.3" stroke-linejoin="round"/></svg>',"payment-icon":'<svg viewBox="0 0 16 16" width="14" height="14" fill="none" aria-hidden="true"><rect x="2" y="4.5" width="12" height="7.5" rx="1.3" stroke="currentColor" stroke-width="1.3"/><path d="M2 7h12" stroke="currentColor" stroke-width="1.3"/><path d="M4.5 9.5h2" stroke="currentColor" stroke-width="1.3" stroke-linecap="round"/></svg>',"upsell-product-tile":'<svg viewBox="0 0 16 16" width="14" height="14" fill="none" aria-hidden="true"><path d="m4 12 4-7 4 7" stroke="currentColor" stroke-width="1.4" stroke-linejoin="round" stroke-linecap="round"/>
715<path d="M5 8.5h6" stroke="currentColor" stroke-width="1.3" stroke-linecap="round"/></svg>',"cart-control":'<svg viewBox="0 0 16 16" width="14" height="14" fill="none" aria-hidden="true"><path d="M2.5 4.5h2l1.4 6.4a1.2 1.2 0 0 0 1.2 1h4.6a1.2 1.2 0 0 0 1.2-1l.9-4.4H5" stroke="currentColor" stroke-width="1.3" stroke-linecap="round" stroke-linejoin="round"/><circle cx="6.5" cy="13.5" r="0.9" fill="currentColor"/><circle cx="11" cy="13.5" r="0.9" fill="currentColor"/></svg>',hide:'<svg viewBox="0 0 16 16" width="14" height="14" fill="none" aria-hidden="true"><path d="M2.5 8s2-4 5.5-4 5.5 4 5.5 4-2 4-5.5 4-5.5-4-5.5-4Z" stroke="currentColor" stroke-width="1.3" stroke-linejoin="round"/><circle cx="8" cy="8" r="1.6" stroke="currentColor" stroke-width="1.3"/><path d="m3 3 10 10" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"/></svg>',rename:'<svg viewBox="0 0 16 16" width="14" height="14" fill="none" aria-hidden="true"><path d="M2.5 13.5h11" stroke="currentColor" stroke-width="1.3" stroke-linecap="round"/><path d="m3 11 7.5-7.5a1.5 1.5 0 0 1 2.1 0l.4.4a1.5 1.5 0 0 1 0 2.1L5.5 13.5H3V11Z" stroke="currentColor" stroke-width="1.3" stroke-linejoin="round"/></svg>
715',reorder:'<svg viewBox="0 0 16 16" width="14" height="14" fill="none" aria-hidden="true"><path d="M3 4h7M3 8h7M3 12h7" stroke="currentColor" stroke-width="1.3" stroke-linecap="round"/><path d="m12.5 5 1 1.5L12 8M13.5 11l-1 1.5L11 11" stroke="currentColor" stroke-width="1.3" stroke-linecap="round" stroke-linejoin="round"/></svg>',arrow:'<svg viewBox="0 0 12 12" width="10" height="10" fill="none" aria-hidden="true"><path d="m4 2 4 4-4 4" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"/></svg>',check:'<svg viewBox="0 0 12 12" width="10" height="10" fill="none" aria-hidden="true"><path d="m3 6.5 2 2 4-4.5" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/></svg>'},p=new Set;function v(n){return`<span class="abconvert-checkout-meta">${(0,r.Z)(n)}</span>`}function f(n){return`<span class="abconvert-checkout-method-chip">${(0,r.Z)(n)}</span>`}function b(n,e){return`<span class="abconvert-checkout-flag ${e?"abconvert-checkout-flag-on":"abconvert-checkout-flag-off"}">${e?u.check:""}${(0,r.Z)(n)}</span>`}function g(n){const e=n[0];return e?n.length>1?`"${e.text}" + ${n.length-1} more`:e.url?`"${e.text}" → ${e.url}`:`"${e.text}"`:"(no buttons)"}function m(n){const e=[];return n.showQuantitySelector&&e.push("qty"),n.showVariantSelector&&e.push("variant"),e.length?` · ${e.join(" + ")}`:""}function h(n){if(!n)return"";const e=String(n).split("?")[0];return e.split("/").filter(Boolean).pop()||e}function $(n){return n?String(n).charAt(0).toUpperCase()+String(n).slice(1):""}const x={hide:{head:n=>{const e=(n.methods||[]).length;return v(`${e} ${1===e?"method":"methods"}`)},body:n=>{const e=n.methods||[];return 0===e.length?"":`<div class="abconvert-checkout-chip-row">${e.map(f).join("")}</div>`}},rename:{head:n=>{const e=n.renameRules||[];return 1===e.length?v(`${e[0].fromMatcher} "${e[0].from}"`):v(`${e.length} rules`)},body:n=>{const e=n.renameRules||[];return 0===e.length?"":`<div class="abconvert-checkout-rename-list">${e.map(w).join("")}</div>`}},reorder:{head:()=>v("pin to top"),body:n=>{const e=n.pinnedMethods||[];return 0===e.length?"":`<div class="abconvert-checkout-chip-row">${e.map(((n,e)=>function(n,e){return`<span class="abconvert-checkout-method-chip"><span class="abconvert-checkout-pin-idx">${e+1}.</span>${(0,r.Z)(n)}</span>`}(n.value,e))).join("")}</div>`}}};function w(n){const e=function(n){return"append"===n.toAction?`… ${n.to}`:"prepend"===n.toAction?`${n.to} …`:n.to}(n);return`\n    <div class="abconvert-checkout-rename-rule">
715\n      <span class="abconvert-checkout-method-chip">${(0,r.Z)(n.from)}</span>\n      <span class="abconvert-checkout-rename-arrow">${u.arrow}</span>\n      <span class="abconvert-checkout-method-chip abconvert-checkout-method-chip-strong">${(0,r.Z)(e)}</span>\n    </div>\n  `}function y(n){return`abconvert-checkout-section-${n}`}function k(n,e,t){const o=e.map((e=>"delivery"===n||"payment"===n?function(n){const e=x[n.op];if(!e)return"";const t=l[n.op]?n.op:"unknown",o=l[n.op]||(0,r.Z)(n.op);return`\n    <div class="abconvert-checkout-row">\n      <span class="abconvert-checkout-icon abconvert-checkout-icon-${t}">${u[n.op]||""}</span>\n      <div class="abconvert-checkout-body">\n        <div class="abconvert-checkout-row-head">\n          <span class="abconvert-checkout-type abconvert-checkout-type-${t}">${o}</span>\n          ${e.head(n)}\n        </div>\n        ${e.body(n)}\n      </div>\n    </div>\n  `}(e):"cart"===n?function(n){const e=n.props||{},t=e.buttonLabel?.trim()||"Edit",o=[b("Change variant",!!e.allowChangeVariant),b("Edit quantity",!!e.allowEditQuantity),b("Remove items",!!e.allowRemoveItems)].join("");return`\n    <div class="abconvert-checkout-row">
715\n      <span class="abconvert-checkout-icon">${u["cart-control"]}</span>\n      <div class="abconvert-checkout-body">\n        <div class="abconvert-checkout-row-head">\n          <span class="abconvert-checkout-type">${d["cart-control"]}</span>\n          <span class="abconvert-checkout-row-text-inline">"${(0,r.Z)(t)}"</span>\n        </div>\n        <div class="abconvert-checkout-chip-row">${o}</div>\n      </div>\n    </div>\n  `}(e):function(n){const{meta:e,text:t,metaTone:o}=function(n){const e=n.props||{};switch(n.blockType){case"heading":return{meta:e.size?$(e.size):"Large",text:`"${e.title?.trim()||"(no title)"}"`};case"banner":return{meta:e.tone?$(e.tone):"Auto",text:`"${e.title?.trim()||"(no title)"}"`,metaTone:(t=e.tone,"success"===t||"critical"===t||"warning"===t||"info"===t?t:"")};case"trust-badge":{const n=e.items||[];return{meta:`${$(e.layout||"vertical")} · ${n.length}`,text:n.map((n=>n.title)).filter(Boolean).join(" · ")||"(no items)"}}case"button":{const n=e.items||[],t=n[0],o=t?.variant?$(t.variant):"Primary";return{meta:e.fullWidth?`${o} · Full width`:o,text:g(n)}}case"benefit":{const n=e.items||[];return{meta:`${$(e.layout||"list")} · ${n.length}`,text:e.title?.trim()?`"${e.title}" · ${n.length} ${1===n.length?"item":"items"}`:n.map((n=>n.text)).filter(Boolean).join(" · ")||"(no items)"}}case"image":{const n=e.images||[],t=$(e.layout||(n.length>1?"carousel":"single")),o=n.length>1?`${t} · ${n.length}`:t,r=function(n){if(!n.length)return"(no images)";const e=n[0],t=h(e?.url)||"(image)";if(1===n.length)return t;const o=h(n[1]?.url);return 2===n.length&&o?`${t} · ${o}`:o?`${t} · ${o} · +${n.length-2}`:`${t} · +${n.length-1}`}(n);return{meta:o,text:r}}case"payment-icon":{const n=e.icons||[];return{meta:String(n.length),text:n.length?n.join(" · "):"(no icons)"}}case"upsell-product-tile":return{meta:`${"manual"===e.recommendation?"Specific products":"Auto recommend"} · max ${e.maxProducts??1}`,text:e.title?.trim()?`"${e.title}"${m(e)}`:`Product offer${m(e)}`};default:return{meta:"",text:""}}var t}(n),i=d[n.blockType]||(0,r.Z)(n.blockType),a=e?`<span class="abconvert-checkout-meta${o?` abconvert-checkout-meta-${o}`:""}">${(0,r.Z)(e)}</span>`:"";return`\n    <div class="abconvert-checkout-row">
715\n      <span class="abconvert-checkout-icon">${u[n.blockType]||""}</span>\n      <div class="abconvert-checkout-body">\n        <div class="abconvert-checkout-row-head">\n          <span class="abconvert-checkout-type">${i}</span>\n          ${a}\n        </div>\n        <div class="abconvert-checkout-row-text">${(0,r.Z)(t)}</div>\n      </div>\n    </div>\n  `}(e))),i=y(n),a=function(n,e){return"cart"===n?"on":String(e.length)}(n,e),s=t?"expanded":"";return`\n    <div class="abconvert-checkout-section">\n      <button id="${i}-toggle" class="abconvert-checkout-section-head" type="button">\n        <span class="abconvert-checkout-section-label">${c[n]}</span>\n        <span class="abconvert-checkout-section-meta">\n          <span class="abconvert-checkout-section-count">${a}</span>\n          <span id="${i}-arrow" class="abconvert-checkout-section-arrow ${s}" aria-hidden="true"><svg viewBox="0 0 12 12" width="12" height="12" fill="none"><path d="M3 4.5 6 7.5l3-3" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg></span>\n        </span>\n      </button>\n      <div id="${i}-content" class="abconvert-checkout-section-rows ${s}">\n        ${o.join("")}\n      </div>\n    </div>\n  `}function E(n){let{groups:e,currentGroupIndex:t,expanded:r=!1,expandedSections:c,embedded:d=!1}=n;if(!e||0===e.length)return"";const l=e[t]??e[0];if(!l)return"";const u=function(n){const e={delivery:[],payment:[],content:[],cart:[],upsell:[]};for(const o of n||[])if("delivery"===o.kind)e.delivery.push(o);else if("payment"===o.kind)e.payment.push(o);else if("block"===o.kind){const n=s[o.blockType];n?e[n].push(o):(t=o.blockType,p.has(t)||(p.add(t),"undefined"!=typeof console&&console.warn&&console.warn(`[ABConvert] CheckoutTestPanel: unknown blockType "${t}". Add it to BLOCK_TYPE_TO_CATEGORY in panels/CheckoutTestPanel.js.`)))}var t;return e}(l.modifications),v=a.filter((n=>u[n].length>0)).map((n=>k(n,u[n],function(n,e){const t=y(n);return!e||"function"!=typeof e.has||!e.has(`${t}:collapsed`)}(n,c)))),f=v.length?v.join(""):'<div class="abconvert-checkout-empty">No modifications in this variant.</div>';return(0,o.q)({id:i,title:"Checkout modifications",content:`<div class="abconvert-checkout-panel">${f}</div>`,expanded:r,embedded:d})}function C(n,e){(0,o.s)(n,i,"2000px",e);for(const t of a)I(n,y(t),e)}function I(n,e,t){const o=n.querySelector(`#${e}-toggle`),r=n.querySelector(`#${e}-content`),i=n.querySelector(`#${e}-arrow`);o&&r&&o.addEventListener("click",(()=>{const n=r.classList.toggle("expanded");i&&i.classList.toggle("expanded",n),t&&t(`${e}:collapsed`,!n)}))}},6764:(n,e,t)=>{t.d(e,{d:()=>i,y:()=>a});var o=t(6868),r=t(7386);function i(n){let{groups:e,currentGroupIndex:t,expanded:i=!1,embedded:a=!1}=n;if(!e||0===e.length)return"";const c=(e[t]||e[0]).zoneRates||[];if(0===c.length)return"";const s=`\n    <div class="abconvert-card">\n      ${c.map((n=>{return`\n    <div class="abconvert-shipping-zone">\n      <div class="abconvert-shipping-zone-name">${n.zoneName}</div>\n      ${e=n.rates,e&&0!==e.length?e.map((n=>{const e=(0,r.lq)(n.price,n.currency),t=function(n){if(!n||!n.type)return"";if("price"===n.type){const e=n.currency||"USD",t=[];return null!=n.minimum&&t.push(`≥ ${(0,r.lq)(n.minimum,e)}`),null!=n.maximum&&t.push(`≤ ${(0,r.lq)(n.maximum,e)}`),t.join(" & ")}if("weight"===n.type){const e=n.unit||"g",t=[];return null!=n.minimum&&t.push(`≥ ${n.minimum}${e}`),null!=n.maximum&&t.push(`≤ ${n.maximum}${e}`),t.join(" & ")}return""}(n.condition),o=t?`<div class="abconvert-shipping-rate-condition">${t}</div>`:"";return`\n      <div class="abconvert-shipping-rate-row">\n        <span class="abconvert-shipping-rate-name">${n.name}</span>\n        <span class="abconvert-shipping-rate-price">${e}</span>\n        ${o}\n      </div>\n    `})).join(""):'<div class="abconvert-shipping-no-rates">No rates</div>'}\n    </div>\n  `;var e})).join("")}\n    </div>\n  `;return(0,o.q)({id:"abconvert-shipping-config",title:"Shipping Rates",content:s,expanded:i,embedded:a})}function a(n,e){(0,o.s)(n,"abconvert-shipping-config","400px",e)}},6868:(n,e,t)=>{function o(n){let{id:e,title:t,content:o,expanded:r=!1,icon:i="",embedded:a=!1}=n;if(a)return o;const c=r?"expanded":"";return`\n    <div class="abconvert-section">\n      <button id="${e}-toggle" class="abconvert-collapsible-header">
715\n        <span>${i?i+" ":""}${t}</span>\n        <span id="${e}-arrow" class="abconvert-collapsible-arrow ${c}">▼</span>\n      </button>\n      <div id="${e}-content" class="abconvert-collapsible-content ${c}">\n        ${o}\n      </div>\n    </div>\n  `}function r(n,e){let t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"240px",o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;const r=n.querySelector(`#${e}-toggle`),i=n.querySelector(`#${e}-content`),a=n.querySelector(`#${e}-arrow`);if(!r||!i)return;let c=i.classList.contains("expanded");r.addEventListener("click",(()=>{c=!c,c?(i.classList.add("expanded"),i.style.maxHeight=t,a&&a.classList.add("expanded")):(i.classList.remove("expanded"),i.style.maxHeight="0",a&&a.classList.remove("expanded")),o&&o(e,c)})),c&&(i.style.maxHeight=t)}t.d(e,{q:()=>o,s:()=>r})},7386:(n,e,t)=>{t.d(e,{$g:()=>r,Rj:()=>a,SS:()=>s,aO:()=>l,lq:()=>i});var o=t(9698);function r(n,e){const t=e||window.Shopify?.currency?.active||"USD",o="string"==typeof n?parseFloat(n):n;if(isNaN(o))return"";try{return new Intl.NumberFormat(void 0,{style:"currency",currency:t}).format(o)}catch(n){return`$${o.toFixed(2)}`}}function i(n,e){return r((0,o.i9)(n,e),e)}function a(n,e,t){const o=(window.Shopify?.country||"").toUpperCase(),r=n?.testGroups?.[e]?.countryMap;return o&&r&&void 0!==r[o]?o:t}function c(n,e){if(!e||void 0===n?.[e])return null;const t=n[e];return"object"==typeof t&&null!==t?{price:t.price,compareAtPrice:t.compareAtPrice}:{price:t,compareAtPrice:null}}function s(n,e,t,o){if(!n?.testGroups?.[e])return null;const r=n.testGroups[e];for(const n of[t,o]){const e=c(r.countryMap,n);if(e)return{...e,country:n}}return{price:r.price,compareAtPrice:r.compareAtPrice,country:null}}const d={US:"USD",CA:"CAD",GB:"GBP",DE:"EUR",FR:"EUR",IT:"EUR",ES:"EUR",NL:"EUR",AU:"AUD",NZ:"NZD",JP:"JPY",CN:"CNY",HK:"HKD",SG:"SGD",KR:"KRW",IN:"INR",BR:"BRL",MX:"MXN",CH:"CHF",SE:"SEK",NO:"NOK",DK:"DKK",PL:"PLN",AE:"AED",SA:"SAR",ZA:"ZAR",TH:"THB",MY:"MYR",PH:"PHP",ID:"IDR",VN:"VND",TW:"TWD",IL:"ILS",TR:"TRY",RU:"RUB",CZ:"CZK",HU:"HUF",RO:"RON",CL:"CLP",CO:"COP",AR:"ARS",PE:"PEN"};function l(n){let{currency:e,primaryCountry:t,countryCurrencies:o}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return n?.country?function(n,e){return e?.[n]?e[n]:d[n]||"USD"}(n.country,o):e||o?.[t]||window.Shopify?.currency?.active||"USD"}},7626:(n,e,t)=>{t.d(e,{A:()=>i});var o=t(63);function r(n){n.searchParams.delete("_abr")}const i={displayName:"URL Redirect Test",normalize:function(n){const e={};return(n?.experiments||[]).forEach((n=>{if("Preview"!==n.status)return;const t=n.experimentId;e[t]={id:t,name:n.name||"URL Redirect Test",experimentId:n.numericId||t,version:n.version||"v1",status:n.status||"Active",startTime:n.startTime,trafficAllocationPercent:n.trafficAllocationPercent,audienceTargeting:n.audienceTargeting,forceAssignRules:n.forceAssignRules,groups:(n.testGroups||[]).map((n=>({name:n.name,percentage:n.percentage,isControl:n.isControl,redirectRules:n.variation?.rules||[],legacyUrl:n.url||""}))),_original:n}})),e},renderPanel:function(n,e){const{experimentData:t,currentGroupIndex:r}=n,i=t.groups||[];return(0,o.i)({groups:i,currentGroupIndex:r,expanded:e.has("abconvert-redirect-rules"),embedded:n.embedded})},initPanelEvents:function(n,e,t){(0,o.L)(n,t)},onGroupSwitch:function(n,e){const t=new URL(window.location.href);return r(t),window.location.href=t.toString(),!0},stripGroupSwitchParams:r}},8368:(n,e,t)=>{t.d(e,{A:()=>r});var o=t(6764);const r={displayName:"Shipping Test",normalize:function(n){const e={};return(n?.experiments||[]).forEach((t=>{"Preview"===t.status&&(e[t.experimentId]={id:t.experimentId,name:t.name||"Shipping Test",experimentId:t.numericId||t.experimentId,version:n.version||"v2",status:t.status,startTime:t.startTime,trafficAllocationPercent:t.trafficAllocationPercent,audienceTargeting:t.audienceTargeting,forceAssignRules:t.forceAssignRules,groups:(t.testGroups||[]).map((n=>({name:n.name,percentage:n.percentage,isControl:n.isControl,id:n.id,zoneRates:n.zoneRates||[]}))),_original:t})})),e},renderPanel:function(n,e){const{experimentData:t,currentGroupIndex:r}=n,i=t.groups||[];return(0,o.d)({groups:i,currentGroupIndex:r,expanded:e.has("abconvert-shipping-config"),embedded:n.embedded})},initPanelEvents:function(n,e,t){(0,o.y)(n,t)}}},8711:(n,e,t)=>{t.d(e,{K:()=>c,j:()=>s});var o=t(6868),r=t(7386),i=t(4788);
715function a(n,e,t,o,a){if(!n||0===n.length)return"";const c=n.map((n=>function(n,e,t,o,a){const c=(0,i.hM)(n.url||"#"),s=n.title||"Untitled Product",d=n.variantCount||0,l=1===d?"1 variant":`${d} variants`,u=n.variants?.[0],p=u?function(n,e,t,o){const i=function(n,e,t,o){const i=(0,r.Rj)(n,e,t),a=(0,r.SS)(n,e,i,o.primaryCountry);if(!a||void 0===a.price||null===a.price)return"";const c=(0,r.aO)(a,o),s=(0,r.$g)(a.price,c);return a.compareAtPrice&&parseFloat(a.compareAtPrice)>0?`<s>${(0,r.$g)(a.compareAtPrice,c)}</s> ${s}`:s}(n,e,t,o);return i?`<div class="abconvert-product-price">${i}</div>`:""}(u,t,o,a):"";return`\n    <a href="${c}" class="abconvert-product-item">\n      ${n.image?`<img src="${n.image}" alt="${s}" class="abconvert-product-image" />`:""}\n      <div class="abconvert-product-info">\n        <div class="abconvert-product-title">${s}</div>\n        ${p}\n        <div class="abconvert-product-variants">${l}</div>\n      </div>\n      <span class="abconvert-product-arrow">→</span>\n    </a>\n  `}(n,0,t,o,a))).join("");return`\n    <div class="abconvert-card">\n      <div class="abconvert-product-list">\n        ${c}\n      </div>\n    </div>\n  `}function c(n){let{products:e,experimentId:t,groupIndex:r,selectedMarket:i,shop:c={},expanded:s=!1,embedded:d=!1}=n;if(!e||0===e.length)return"";const l=a(e,0,r,i,c);return(0,o.q)({id:"abconvert-products",title:`Products (${e.length})`,content:l,expanded:s,embedded:d})}function s(n,e){(0,o.s)(n,"abconvert-products","240px",e)}},9698:(n,e,t)=>{t.d(e,{i9:()=>r});const o=new Set(["BIF","CLP","DJF","GNF","ISK","JPY","KMF","KRW","PYG","RWF","UGX","VND","VUV","XAF","XOF","XPF"]);function r(n,e){const t=Number(null!=n?n:0);return Number.isFinite(t)?t/function(n){return o.has(String(null!=n?n:"").toUpperCase())?1:100}(e):0}new Map},9885:(n,e,t)=>{t.d(e,{H:()=>p,k:()=>u});var o=t(6868),r=t(2639);function i(n){return-1!==n.indexOf("*")}function a(n){const e=Array.isArray(n.targetUrls)?n.targetUrls.filter((n=>"string"==typeof n&&n.length>0)):[],t=e.length>0?e:n.targetUrl?[n.targetUrl]:["/"];return[...new Set(t.map((n=>function(n){try{return n.startsWith("http")?new URL(n).pathname||"/":n||"/"}catch{return n||"/"}}(n))))]}function c(n,e){if(!n||0===n.length)return[];const t=new Set;for(const e of n)for(const n of e.mutations||[])for(const e of a(n))t.add(e);const o=(n[e]||{}).mutations||[],r={};for(const n of t)r[n]={url:n,changeCount:0};for(const n of o)for(const e of a(n))r[e]&&r[e].changeCount++;return Object.values(r)}function s(n,e,t){return`\n    <div class="abconvert-ve-code-block">\n      <button class="abconvert-ve-code-toggle" data-target="${t}" aria-expanded="false" aria-controls="${t}">\n        <span class="abconvert-ve-code-chevron" id="${t}-chevron">\n          <svg width="12" height="12" viewBox="0 0 20 20" fill="currentColor">\n            <path d="M6 6l4 4 4-4" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"/>\n          </svg>\n        </span>\n        <span class="abconvert-ve-code-label">${n}</span>\n      </button>\n      <div class="abconvert-ve-code-content" id="${t}">\n        <pre class="abconvert-ve-code-pre">${(0,r.Z)(e)}</pre>\n      </div>\n    </div>\n  `}function d(n,e){const t=c(n,e);if(0===t.length)return'<div class="abconvert-ve-empty">No page modifications</div>';const o=window.location.pathname,a=t.map((n=>function(n,e){const t=1===n.changeCount?"1 change":`${n.changeCount} changes`,o=i(n.url),a=function(n,e){if(i(n))try{return function(n){const e=n.replace(/\*\*/g,"�").replace(/\*/g,"�").replace(/[.+?^${}()|[\]\\]/g,"\\$&").replace(new RegExp("�","g"),".*").replace(new RegExp("�","g"),"[^/]*");return new RegExp("^"+e+"$")}(n).test(e)}catch{return!1}return n===e}(n.url,e),c=n.url.startsWith("http")||n.url.startsWith("/")?(0,r.Z)(n.url):"#",s=`\n      <div class="abconvert-page-icon">\n        <svg width="16" height="16" viewBox="0 0 20 20" fill="currentColor">\n          <path d="M4 3a2 2 0 00-2 2v10a2 2 0 002 2h12a2 2 0 002-2V5a2 2 0 00-2-2H4zm0 1.5h12a.5.5 0 01.5.5v1.5h-13V5a.5.5 0 01.5-.5zM3.5 8h13v7a.5.5 0 01-.5.5H4a.5.5 0 01-.5-.5V8z"/>\n        </svg>\n      </div>\n      <div class="abconvert-page-info">\n        <div class="abconvert-page-path">${(0,r.Z)(n.url)}</div>\n        <div class="abconvert-page-changes">${t}</div>\n      </div>\n      ${o?"":`<span class="abconvert-product-arrow">
715${a?'<svg width="16" height="16" viewBox="0 0 20 20" fill="currentColor"><path d="M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 011.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z"/></svg>':"→"}</span>`}\n  `;return o?`\n    <div class="abconvert-page-item${a?" active":""}">${s}</div>\n  `:`\n    <a href="${c}" class="abconvert-page-item${a?" active":""}">${s}</a>\n  `}(n,o))).join("");return`\n    <div class="abconvert-card">\n      <div class="abconvert-page-list">${a}</div>\n    </div>\n  `}function l(n,e){const t=!n.isControl&&n.customCSS?.trim()||"",o=!n.isControl&&n.customJS?.trim()||"";return t||o?`\n    <div class="abconvert-ve-code-hint">Applied to all pages</div>\n    <div class="abconvert-card">\n      <div class="abconvert-ve-code-blocks">\n        ${t?s("CSS",t,`ve-css-${e}`):""}\n        ${o?s("JS",o,`ve-js-${e}`):""}\n      </div>\n    </div>\n  `:'<div class="abconvert-ve-empty">No custom code</div>'}function u(n){let{groups:e,groupIndex:t=0,expanded:r=!1,activeTab:i,embedded:a=!1}=n;c(e,t);const s=e[t]||{},u=e.some((n=>(n.mutations||[]).length>0)),p=e.some((n=>!n.isControl&&(n.customCSS?.trim()||n.customJS?.trim()))),v=i||(u?"modifications":p?"custom-code":"modifications"),f=`\n    \n    <div class="abconvert-ve-tabs" role="tablist">\n      <button class="abconvert-ve-tab${"modifications"===v?" active":""}${u?"":" disabled"}" role="tab" data-tab="modifications" aria-selected="${"modifications"===v}"${u?"":" disabled"}>\n        Modifications\n      </button>\n      <button class="abconvert-ve-tab${"custom-code"===v?" active":""}${p?"":" disabled"}" role="tab" data-tab="custom-code" aria-selected="${"custom-code"===v}"${p?"":" disabled"}>\n        Custom Code\n      </button>\n    </div>\n  \n    <div id="abconvert-ve-tab-content">${"custom-code"===v?l(s,t):d(e,t)}</div>\n  `;return(0,o.q)({id:"abconvert-visual-editor-pages",title:"Visual Editor Config",content:f,expanded:r,embedded:a})}function p(n,e,t,r){(0,o.s)(n,"abconvert-visual-editor-pages","500px",e);const i=n.querySelectorAll(".abconvert-ve-tab");i.forEach((e=>{e.addEventListener("click",(()=>{if(e.disabled||e.classList.contains("active"))return;const o=e.dataset.tab;i.forEach((n=>{n.classList.toggle("active",n===e),n.setAttribute("aria-selected",n===e?"true":"false")}));const a=n.querySelector("#abconvert-ve-tab-content");if(a&&r){const{groups:e,groupIndex:t}=r,i=e[t]||{};"modifications"===o?a.innerHTML=d(e,t):(a.innerHTML=l(i,t),v(n))}t&&t(o)}))})),v(n)}function v(n){n.querySelectorAll(".abconvert-ve-code-toggle").forEach((e=>{e.addEventListener("click",(()=>{const t=e.dataset.target,o=n.querySelector(`#${t}`),r=n.querySelector(`#${t}-chevron`);if(!o)return;const i=o.classList.contains("expanded");o.classList.toggle("expanded",!i),r&&r.classList.toggle("expanded",!i),e.setAttribute("aria-expanded",i?"false":"true")}))}))}}},e={};function t(o){var r=e[o];if(void 0!==r)return r.exports;var i=e[o]={exports:{}};return n[o](i,i.exports,t),i.exports}t.d=(n,e)=>{for(var o in e)t.o(e,o)&&!t.o(n,o)&&Object.defineProperty(n,o,{enumerable:!0,get:e[o]})},t.o=(n,e)=>Object.prototype.hasOwnProperty.call(n,e);const o="#ffffff",r="#f1f1f1",i="#f7f7f7",a="#f1f1f1",c="#cdfee1",s="#fea3a3",d="#fee3e3",l="#91d0ff",u="#e6f3ff",p="#fff4d4",v="#eef6ff",f="#303030",b="#616161",g="#b5b5b5",m="#007f5c",h="#c72b2b",$="#005fcc",x="#785a00",w="#005fcc",y="#ffffff",k="#e1e1e1",E="#ebebeb",C="#c7c7c7",I="#005fcc",P="#303030",S="#616161",T="2px",A="4px",R="6px",M="8px",z="12px",L="16px",D="Inter, -apple-system, BlinkMacSystemFont, 'San Francisco', 'Segoe UI', Roboto, 'Helvetica Neue', sans-serif",_="ui-monospace, SFMono-Regular, 'SF Mono', Consolas, 'Liberation Mono', Menlo, monospace",N="11px",G="12px",U="13px",j="14px",B="500",O="600",V="1.4",F="-0.01em",q="4px",H="6px",W="8px",Z="9999px",K="0 0 0 2px #005fcc",X="100ms",Y="200ms",J="cubic-bezier(0, 0, 0.58, 1)",Q="cubic-bezier(0.42, 0, 0.58, 1)",nn="150ms",en="cubic-bezier(0.42, 0, 0.58, 1)",tn="abconvert-preview-widget-styles";var on=t(4788),rn=t(6868);function an(n){return null==n||""===n?"(empty)":"object"==typeof n?JSON.stringify(n):String(n)}function cn(n){return n?"✓":"✗"}function sn(n){return n?"pass":"fail"}function dn(n){return`\n    <div class="abconvert-context-grid">
715\n      <span class="abconvert-context-label">Country:</span>\n      <span class="abconvert-context-value">${an(n.country)}</span>\n      <span class="abconvert-context-label">Device:</span>\n      <span class="abconvert-context-value">${an(n.device)}</span>\n      <span class="abconvert-context-label">Visitor:</span>\n      <span class="abconvert-context-value">${an(n.visitorType)}</span>\n      <span class="abconvert-context-label">Source:</span>\n      <span class="abconvert-context-value">${an(n.trafficSource)}</span>\n      <span class="abconvert-context-label">Referrer:</span>\n      <span class="abconvert-context-value">${an(n.referralDomain)}</span>\n      <span class="abconvert-context-label">Landing:</span>\n      <span class="abconvert-context-value">${an(n.landingPage)}</span>\n    </div>\n  `}function ln(n,e,t,o){const r=n.querySelector("#abconvert-assignment-result");r&&(r.className=`abconvert-result-box visible ${e}`,r.innerHTML=`\n    <div style="font-weight: 500; margin-bottom: 4px;">${t}</div>\n    <div style="font-size: 11px; color: #6d7175;">${o}</div>\n  `)}var un=t(5246),pn=t(947);const vn="abconvert-preview-widget";function fn(){if(window.Shopify?.designMode)return;if(!(0,on.IL)())return;const n=(0,on.P3)("abconvert_experiment_id");n&&(0,on.xX)(n),(0,on.nI)("abconvert_experiment_id"),(0,on.nI)("abconvert_preview_key"),window.abconvertCombinedTestDict&&(0,pn.eo)(un.JB.COMBINED,window.abconvertCombinedTestDict);const e=(0,un.Mo)(),t=Object.keys(e);if(0===t.length)return;const rn=(0,on.tj)();let an,cn;if(rn&&e[rn])an=rn,cn=e[rn];else if(rn){const n=t.find((n=>String(e[n].experimentId)===String(rn)));n&&(an=n,cn=e[n])}const sn=Boolean(an);if(an||(rn&&console.warn("[ABConvert] Preview target experiment not found in registry",{targetExperimentId:rn,availableIds:t,hint:"If the test was just created, confirm its window dict is defined (e.g. window.abconvertCheckoutTestDict) and that the theme snippet is installed."}),an=t[0],cn=e[an]),!cn)return;!sn&&rn||(0,on.xX)(an);const dn=document.getElementById(vn);if(dn){if(dn.dataset.experimentId===an)return;dn.remove()}const ln=(0,on.P3)("preview");null!==ln&&(0,on.gp)(an,parseInt(ln,10));const fn=gn(e,an);!function(){if(document.getElementById(tn))return;const n=`\n    /* =============================================================================\n       ABConvert Preview Widget Styles\n       Polaris-aligned design system (2024)\n       ============================================================================= */\n\n    /* Widget Container - Polaris Card elevated */\n    .abconvert-widget {\n      position: fixed;\n      top: 50%;\n      right: 20px;\n      transform: translateY(-50%);\n      width: 320px;\n      max-height: 80vh;\n      background: ${o};\n      border: 1px solid ${k};\n      border-radius: ${W};\n      box-shadow: 0 8px 16px -4px rgba(0, 0, 0, 0.09), 0 4px 8px -2px rgba(0, 0, 0, 0.04);\n      font-family: ${D};\n      font-size: ${U};\n      line-height: ${V};\n      z-index: 999999;\n      color: ${f};\n      overflow: hidden;\n      display: flex;\n      flex-direction: column;\n    }\n\n    /* Header - Polaris Card header pattern */\n    .abconvert-widget-header {\n      background: ${o};\n      border-bottom: 1px solid ${E};\n      padding: ${z} ${L};\n      cursor: move;\n      display: flex;\n      align-items: center;\n      gap: ${M};\n      user-select: none;\n      flex-shrink: 0;\n    }\n\n    .abconvert-widget-header.dragging {\n      cursor: grabbing;\n    }\n\n    .abconvert-drag-handle {\n      flex-shrink: 0;\n      color: ${S};\n      display: flex;\n      align-items: center;\n    }\n\n    .abconvert-drag-handle svg {\n      width: 16px;\n      height: 16px;\n    }\n\n    .abconvert-widget-title {\n      flex: 1;\n      min-width: 0;\n    }\n\n    .abconvert-widget-title-text {\n      font-weight: ${O};\n      font-size: ${j};\n      color: ${f};\n      letter-spacing: ${F};\n    }\n\n    .abconvert-widget-subtitle {\n      font-size: ${G};\n      color: ${b};\n      margin-top: ${T};\n    }\n\n    /* Close Button - Polaris icon button */\n    .abconvert-close-btn {\n      background: transparent;\n      border: none;\n      cursor: pointer;\n      color: ${S};\n      padding: 0;\n      width: 28px;\n      height: 28px;\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      border-radius: ${q};\n      transition: background ${nn} ${en},\n                  color ${nn} ${en};\n    }\n\n    .abconvert-close-btn:hover {\n      background: ${a};\n      color: #303030;\n    }\n\n    .abconvert-close-btn:focus-visible {\n      outline: none;\n      box-shadow: ${K};\n    }\n\n    .abconvert-close-btn svg {\n      width: 16px;\n      height: 16px;\n    }\n\n    /* Content Area */\n    .abconvert-widget-content {\n      padding: ${L};\n      flex: 1;\n      min-height: 0;\n      overflow-y: auto;\n      scrollbar-width: thin;\n      scrollbar-color: ${k} transparent;\n    }\n\n    .abconvert-widget-content::-webkit-scrollbar {\n      width: 6px;\n    }\n\n    .abconvert-widget-content::-webkit-scrollbar-track {\n      background: transparent;\n    }\n\n    .abconvert-widget-content::-webkit-scrollbar-thumb {\n      background: ${k};\n      border-radius: ${Z};\n    }\n\n    /* Section - Polaris BlockStack pattern */\n    .abconvert-section {\n      margin-bottom: ${L};\n    }\n\n    .abconvert-section:last-child {\n      margin-bottom: 0;\n    }\n\n    .abconvert-section-label {\n      display: block;\n      font-weight: ${B};\n      font-size: ${G};\n      margin-bottom: ${M};\n      color: ${f};\n    }\n\n    /* Select - Polaris Select component */\n    .abconvert-select {\n      width: 100%;\n      padding: ${M} ${z};\n      padding-right: 36px;\n      border: 1px solid ${k};\n      border-radius: ${W};\n      background-color: ${o};\n      font-size: ${U};\n      font-family: ${D};\n      cursor: pointer;\n      color: ${f};\n      appearance: none;\n      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 20 20' fill='%23616161'
715%3E%3Cpath d='M10 14l-5-5h10l-5 5z'/%3E%3C/svg%3E");\n      background-repeat: no-repeat;\n      background-position: right 12px center;\n      background-size: 12px;\n      transition: border-color ${nn} ${en},\n                  box-shadow ${nn} ${en};\n    }\n\n    .abconvert-select:hover {\n      border-color: ${C};\n    }\n\n    .abconvert-select:focus {\n      outline: none;\n      border-color: ${I};\n      box-shadow: 0 0 0 1px ${I};\n    }\n\n    .abconvert-select:disabled {\n      background-color: ${r};\n      color: ${g};\n      cursor: not-allowed;\n    }\n\n    /* Button - Polaris Button component */\n    .abconvert-btn {\n      display: inline-flex;\n      align-items: center;\n      justify-content: center;\n      gap: ${A};\n      padding: ${R} ${z};\n      min-height: 32px;\n      border-radius: ${W};\n      font-size: ${G};\n      font-weight: ${B};\n      font-family: ${D};\n      line-height: 1;\n      cursor: pointer;\n      text-decoration: none;\n      transition: background ${nn} ${en},\n                  border-color ${nn} ${en},\n                  box-shadow ${nn} ${en};\n    }\n\n    .abconvert-btn:focus-visible {\n      outline: none;\n      box-shadow: ${K};\n    }\n\n    /* Primary Button - Polaris primary variant */\n    .abconvert-btn-primary {\n      background: ${P};\n      color: ${y};\n      border: none;\n      box-shadow: inset 0 -1px 0 0 #b5b5b5;\n    }\n\n    .abconvert-btn-primary:hover {\n      background: #1a1a1a;\n    }\n\n    .abconvert-btn-primary:active {\n      background: #000000;\n    }\n\n    /* Secondary Button - Polaris default variant */\n    .abconvert-btn-secondary {\n      background: ${o};\n      color: ${f};\n      border: 1px solid ${k};\n    }\n\n    .abconvert-btn-secondary:hover {\n      background: ${a};\n      border-color: ${C};\n    }\n\n    .abconvert-btn-secondary:active {\n      background: #ededed;\n    }\n\n    /* Critical/Destructive Button */\n    .abconvert-btn-critical {\n      background: ${o};\n      color: ${h};\n      border: 1px solid #c72b2b;\n    }\n\n    .abconvert-btn-critical:hover {\n      background: ${d};\n    }\n\n    /* Card - Polaris nested card */\n    .abconvert-card {\n      background: ${i};\n      border: 1px solid ${E};\n      border-radius: ${W};\n      padding: ${z};\n    }\n\n    /* Group List - Clickable items for switching groups */\n    .abconvert-group-list {\n      display: flex;\n      flex-direction: column;\n      gap: ${T};\n    }\n\n    .abconvert-group-item {\n      width: 100%;\n      padding: ${M} ${z};\n      border: none;\n      border-radius: ${q};\n      background: transparent;\n      display: flex;\n      justify-content: space-between;\n      align-items: center;\n      font-size: ${U};\n      font-family: ${D};\n      cursor: pointer;\n      text-align: left;\n      transition: background ${nn} ${en};\n    }\n\n    .abconvert-group-item:hover {\n      background: ${a};\n    }\n\n    .abconvert-group-item:focus-visible {\n      outline: none;\n      box-shadow: ${K};\n    }\n\n    .abconvert-group-item.active {\n      background: ${u};\n      cursor: default;\n    }\n\n    .abconvert-group-item .name {\n      font-weight: 400;\n      color: ${f};\n    }\n\n    .abconvert-group-item.active .name {\n      font-weight: ${B};\n      color: ${$};\n    }\n\n    .abconvert-group-item .percentage {\n      font-size: ${G};\n      color: ${b};\n      font-variant-numeric: tabular-nums;\n    }\n\n    .abconvert-group-item.active .percentage {\n      color: ${$};\n    }\n\n    /* Badge - Polaris Badge component */\n    .abconvert-badge {\n      display: inline-flex;\n      align-items: center;\n      gap: ${A};\n      padding: ${T} ${M};\n      border-radius: ${Z};\n      font-size: ${N};\n      font-weight: ${B};\n      line-height: 1.4;\n    }\n\n    .abconvert-badge-success {\n      background: ${c};\n      color: ${m};\n    }\n\n    .abconvert-badge-info {\n      background: ${v};\n      color: ${w};\n    }\n\n    .abconvert-badge-warning {\n      background: ${p};\n      color: ${x};\n    }\n\n    .abconvert-badge-dot {\n      width: 6px;\n      height: 6px;\n      border-radius: 50%;\n      background: currentColor;\n    }\n\n    /* Offer Test Panel — mirrors admin OfferSummaryDisplay pattern */\n    .abconvert-offer-card {\n      display: flex;\n      flex-direction: column;\n      gap: ${z};\n      background: ${i};\n      border: 1px solid ${E};\n      border-radius: ${W};\n      padding: ${z};\n    }\n\n    .abconvert-offer-head {\n      display: flex;\n      flex-direction: column;\n      gap: ${A};\n    }\n\n    .abconvert-offer-primary-row {\n      display: flex;\n      align-items: flex-start;\n      justify-content: space-between;\n      gap: ${M};\n    }\n\n    .abconvert-offer-primary {\n      flex: 1;\n      min-width: 0;\n      font-size: ${j};\n      font-weight: 400;\n      color: ${f};\n      letter-spacing: ${F};\n      line-height: ${V};\n      word-break: break-word;\n    }\n\n    .abconvert-offer-secondary {\n      font-size: ${G};\n      color: ${b};\n      word-break: break-word;\n    }\n\n    .abconvert-offer-type {\n      flex-shrink: 0;\n      align-self: flex-start;\n      padding: 2px ${M};\n      border-radius: 999px;\n      background: ${v};\n      font-size: ${N};\n      font-weight: ${B};\n      color: ${w};\n      line-height: 1.25;\n      white-space: nowrap;\n    }
715\n\n    .abconvert-offer-type-empty {\n      background: ${i};\n      color: ${b};\n    }\n\n    .abconvert-offer-scope {\n      display: flex;\n      flex-direction: row;\n      gap: ${M};\n      align-items: flex-start;\n      padding: ${M} ${z};\n      background: ${o};\n      border: 1px solid ${E};\n      border-radius: ${H};\n    }\n\n    .abconvert-offer-scope-icon {\n      flex-shrink: 0;\n      color: ${S};\n      display: flex;\n      align-items: center;\n      margin-top: 2px;\n    }\n\n    .abconvert-offer-scope-body {\n      display: flex;\n      flex-direction: column;\n      gap: ${T};\n      flex: 1;\n      min-width: 0;\n    }\n\n    .abconvert-offer-scope-count {\n      font-size: ${N};\n      font-weight: ${B};\n      color: ${b};\n    }\n\n    .abconvert-offer-scope-names {\n      display: flex;\n      flex-direction: row;\n      gap: ${R};\n      align-items: center;\n      flex-wrap: wrap;\n      font-size: ${G};\n      color: ${f};\n      word-break: break-word;\n    }\n\n    .abconvert-offer-overflow {\n      position: relative;\n      display: inline-flex;\n      align-items: center;\n      padding: ${T} ${R};\n      background: ${r};\n      border-radius: ${q};\n      font-size: ${N};\n      color: ${b};\n    }\n\n    /* Fast CSS-only tooltip — replaces native title="" so we don't inherit the\n       browser's ~700ms hover delay. The widget container is overflow-hidden,\n       so the tooltip is anchored to the chip's left edge and extends rightward\n       (the +N more chip always sits near the widget's left side) to avoid\n       getting clipped. Width-capped so long lists wrap. */\n    .abconvert-offer-overflow::before {\n      content: attr(data-tooltip);\n      position: absolute;\n      bottom: calc(100% + ${A});\n      left: 0;\n      max-width: 220px;\n      width: max-content;\n      padding: ${R} ${M};\n      background: ${f};\n      color: ${y};\n      border-radius: ${q};\n      font-size: ${N};\n      line-height: ${V};\n      white-space: normal;\n      word-break: break-word;\n      text-align: left;\n      pointer-events: none;\n      opacity: 0;\n      transition: opacity ${X} ${J};\n      z-index: 1;\n    }\n\n    .abconvert-offer-overflow:hover::before,\n    .abconvert-offer-overflow:focus-visible::before {\n      opacity: 1;\n    }\n\n    /* Volume tier breakdown — 2-column threshold/discount table.\n       Lets merchants verify each tier rule from the storefront preview without\n       opening the admin. White card sits between the head block and scope row. */\n    .abconvert-offer-tier-table {\n      display: flex;\n      flex-direction: column;\n      background: ${o};\n      border: 1px solid ${E};\n      border-radius: ${H};\n      overflow: hidden;\n    }\n\n    .abconvert-offer-tier-header {\n      display: grid;\n      grid-template-columns: 1fr 1fr;\n      gap: ${M};\n      padding: ${M} ${z};\n      background: ${i};\n      border-bottom: 1px solid ${E};\n    }\n\n    .abconvert-offer-tier-header-label {\n      font-size: ${N};\n      font-weight: ${B};\n      color: ${b};\n      text-transform: uppercase;\n      letter-spacing: 0.5px;\n    }\n\n    .abconvert-offer-tier-row {\n      display: grid;\n      grid-template-columns: 1fr 1fr;\n      gap: ${M};\n      padding: ${M} ${z};\n      font-size: ${G};\n      color: ${f};\n    }\n\n    .abconvert-offer-tier-row + .abconvert-offer-tier-row {\n      border-top: 1px solid ${E};\n    }\n\n    .abconvert-offer-tier-qty {\n      color: ${f};\n    }\n\n    .abconvert-offer-tier-discount {\n      color: ${f};\n      font-weight: ${B};\n      font-variant-numeric: tabular-nums;\n    }\n\n    /* Checkout Test Panel — Delivery / Payment / Content / Cart / Upsell.\n       Categories mirror the editor picker; rows share a single icon-slot +\n       type/op + summary template so the panel scans top-to-bottom. */\n    .abconvert-checkout-panel {\n      display: flex;\n      flex-direction: column;\n      gap: ${z};\n    }\n\n    /* Combined test panel (PRO-2273): one collapsible per stacked modification,\n       whose body is that type's own preview panel. Header = type + short summary. */\n    .abconvert-combined-mod {\n      display: flex;\n      flex-direction: column;\n      border: 1px solid ${E};\n      border-radius: ${W};\n      overflow: hidden;\n      margin-bottom: ${M};\n    }\n\n    .abconvert-combined-mod-head {\n      display: flex;\n      align-items: center;\n      justify-content: space-between;\n      width: 100%;\n      padding: ${R} ${M};\n      background: ${i};\n      border: none;\n      font-family: ${D};\n      color: ${f};\n      cursor: pointer;\n      text-align: left;\n      transition: background-color ${X} ${J};\n    }\n\n    .abconvert-combined-mod-head:hover {\n      background-color: ${a};\n    }\n\n    .abconvert-combined-mod-label {\n      font-size: ${N};\n      font-weight: ${O};\n      color: ${f};\n    }\n\n    .abconvert-combined-mod-meta {\n      display: inline-flex;\n      align-items: center;\n      gap: ${R};\n    }\n\n    .abconvert-combined-mod-summary {\n      font-size: 10px;\n      font-weight: ${B};\n      color: ${b};\n    }\n\n    .abconvert-combined-mod-arrow {\n      color: ${S};\n      transition: transform ${Y} ${Q};\n      display: inline-flex;\n      align-items: center;\n    }\n\n    .abconvert-combined-mod-arrow.expanded {\n      transform: rotate(180deg);\n    }\n\n    .abconvert-combined-mod-content {\n      max-height: 0;\n      overflow: hidden;\n      padding: 0 ${M};\n    }\n\n    .abconvert-combined-mod-content.expanded {\n      padding: ${M};\n    }
715\n\n    .abconvert-combined-mod-empty {\n      font-size: ${N};\n      color: ${b};\n      text-align: center;\n    }\n\n    .abconvert-checkout-section {\n      display: flex;\n      flex-direction: column;\n      gap: ${M};\n    }\n\n    .abconvert-checkout-section-head {\n      display: flex;\n      align-items: center;\n      justify-content: space-between;\n      width: 100%;\n      padding: ${A} ${R};\n      margin: 0 -${R};\n      background: none;\n      border: none;\n      border-radius: ${q};\n      font-family: ${D};\n      color: ${f};\n      cursor: pointer;\n      text-align: left;\n      transition: background-color ${X} ${J};\n    }\n\n    .abconvert-checkout-section-head:hover {\n      background-color: ${a};\n    }\n\n    .abconvert-checkout-section-head:hover .abconvert-checkout-section-label,\n    .abconvert-checkout-section-head:focus-visible .abconvert-checkout-section-label {\n      color: ${f};\n    }\n\n    .abconvert-checkout-section-head:focus-visible {\n      outline: none;\n      background-color: ${a};\n    }\n\n    .abconvert-checkout-section-label {\n      font-size: ${N};\n      font-weight: ${O};\n      color: ${b};\n      text-transform: uppercase;\n      letter-spacing: 0.06em;\n    }\n\n    .abconvert-checkout-section-meta {\n      display: inline-flex;\n      align-items: center;\n      gap: ${R};\n    }\n\n    .abconvert-checkout-section-count {\n      font-size: ${N};\n      font-weight: ${B};\n      color: ${b};\n    }\n\n    .abconvert-checkout-section-arrow {\n      color: ${S};\n      transition: transform ${Y} ${Q};\n      display: inline-flex;\n      align-items: center;\n    }\n\n    .abconvert-checkout-section-arrow.expanded {\n      transform: rotate(180deg);\n    }\n\n    .abconvert-checkout-section-arrow svg {\n      display: block;\n    }\n\n    .abconvert-checkout-section-rows {\n      display: none;\n      flex-direction: column;\n      gap: ${A};\n      margin-top: ${M};\n    }\n\n    .abconvert-checkout-section-rows.expanded {\n      display: flex;\n    }\n\n    .abconvert-checkout-row {\n      display: flex;\n      align-items: flex-start;\n      gap: ${M};\n      padding: ${M};\n      background: ${i};\n      border: 1px solid ${E};\n      border-radius: ${W};\n    }\n\n    .abconvert-checkout-icon {\n      flex-shrink: 0;\n      width: 28px;\n      height: 28px;\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      background: ${o};\n      border: 1px solid ${k};\n      border-radius: ${H};\n      color: ${f};\n    }\n\n    .abconvert-checkout-icon-hide {\n      background: ${d};\n      border-color: ${s};\n      color: ${h};\n    }\n\n    .abconvert-checkout-icon-rename {\n      background: ${u};\n      border-color: ${l};\n      color: ${w};\n    }\n\n    .abconvert-checkout-body {\n      display: flex;\n      flex-direction: column;\n      gap: ${A};\n      flex: 1;\n      min-width: 0;\n    }\n\n    .abconvert-checkout-row-head {\n      display: flex;\n      align-items: center;\n      gap: ${R};\n      flex-wrap: wrap;\n    }\n\n    .abconvert-checkout-type {\n      font-size: 10px;\n      font-weight: ${O};\n      color: ${b};\n      text-transform: uppercase;\n      letter-spacing: 0.04em;\n    }\n\n    .abconvert-checkout-type-hide {\n      color: ${h};\n    }\n\n    .abconvert-checkout-type-rename {\n      color: ${w};\n    }\n\n    .abconvert-checkout-meta {\n      font-size: 10px;\n      font-weight: ${B};\n      color: ${b};\n      padding: 1px ${R};\n      background: ${o};\n      border: 1px solid ${E};\n      border-radius: 2px;\n    }\n\n    .abconvert-checkout-meta-success {\n      color: ${m};\n      background: ${c};\n      border-color: #a0e4cb;\n    }\n\n    .abconvert-checkout-meta-critical {\n      color: ${h};\n      background: ${d};\n      border-color: ${s};\n    }\n\n    .abconvert-checkout-meta-warning {\n      color: ${x};\n      background: ${p};\n      border-color: #ffe291;\n    }\n\n    .abconvert-checkout-meta-info {\n      color: ${w};\n      background: ${u};\n      border-color: ${l};\n    }\n\n    .abconvert-checkout-row-text {\n      font-size: ${G};\n      font-weight: ${B};\n      color: ${f};\n      overflow: hidden;\n      text-overflow: ellipsis;\n      white-space: nowrap;\n    }\n\n    .abconvert-checkout-row-text-inline {\n      font-size: ${G};\n      font-weight: ${B};\n      color: ${f};\n    }\n\n    .abconvert-checkout-chip-row {\n      display: flex;\n      flex-wrap: wrap;\n      gap: ${A};\n      align-items: center;\n    }\n\n    .abconvert-checkout-method-chip {\n      display: inline-flex;\n      align-items: center;\n      gap: ${A};\n      font-size: ${N};\n      font-weight: ${B};\n      color: ${f};\n      padding: ${T} ${R};\n      background: ${o};\n      border: 1px solid ${k};\n      border-radius: ${q};\n    }\n\n    .abconvert-checkout-method-chip-strong {\n      font-weight: ${O};\n    }\n\n    .abconvert-checkout-pin-idx {\n      font-size: 9px;\n      font-weight: 700;\n      color: ${b};\n    }\n\n    .abconvert-checkout-rename-list {\n      display: flex;\n      flex-direction: column;\n      gap: ${A};\n    }\n\n    .abconvert-checkout-rename-rule {\n      display: flex;\n      align-items: center;\n      gap: ${R};\n      flex-wrap: wrap;\n    }\n\n    .abconvert-checkout-rename-arrow {\n      color: ${b};\n      display: inline-flex;\n      align-items: center;\n    }\n\n    .abconvert-checkout-flag {\n      display: inline-flex;\n      align-items: center;\n      gap: ${A};\n      font-size: ${N};\n      font-weight: ${B};\n      padding: ${T} ${R};\n      border-radius: ${q};\n    }\n\n    .abconvert-checkout-flag-on {\n      color: ${m};\n      background: ${c};\n    }\n\n    .abconvert-checkout-flag-off {\n      color: ${g};\n      background: ${r};\n      text-decoration: line-through;\n    }
715\n\n    .abconvert-checkout-empty {\n      font-size: ${G};\n      color: ${b};\n      padding: ${z};\n      text-align: center;\n    }\n\n    /* Collapsible Section - Polaris Collapsible pattern */\n    .abconvert-collapsible-header {\n      width: 100%;\n      background: none;\n      border: none;\n      padding: ${M} 0;\n      text-align: left;\n      cursor: pointer;\n      font-weight: ${B};\n      font-size: ${U};\n      font-family: ${D};\n      color: ${f};\n      display: flex;\n      justify-content: space-between;\n      align-items: center;\n      transition: color ${nn} ${en};\n    }\n\n    .abconvert-collapsible-header:hover {\n      color: ${$};\n    }\n\n    .abconvert-collapsible-header:focus-visible {\n      outline: none;\n      color: ${$};\n    }\n\n    .abconvert-collapsible-arrow {\n      color: ${S};\n      transition: transform ${Y} ${Q};\n      display: flex;\n      align-items: center;\n    }\n\n    .abconvert-collapsible-arrow svg {\n      width: 16px;\n      height: 16px;\n    }\n\n    .abconvert-collapsible-arrow.expanded {\n      transform: rotate(180deg);\n    }\n\n    .abconvert-collapsible-content {\n      max-height: 0;\n      overflow: hidden;\n      transition: max-height 300ms ${Q};\n    }\n\n    .abconvert-collapsible-content.expanded {\n      max-height: 2000px;\n    }\n\n    /* Product List - Polaris ResourceItem pattern */\n    .abconvert-product-list {\n      max-height: 200px;\n      overflow-y: auto;\n      scrollbar-width: thin;\n      scrollbar-color: ${k} transparent;\n    }\n\n    .abconvert-product-list::-webkit-scrollbar {\n      width: 4px;\n    }\n\n    .abconvert-product-list::-webkit-scrollbar-thumb {\n      background: ${k};\n      border-radius: ${Z};\n    }\n\n    .abconvert-product-item {\n      display: flex;\n      align-items: center;\n      gap: ${z};\n      padding: ${M} ${z};\n      margin: ${T} 0;\n      border-radius: ${q};\n      text-decoration: none;\n      color: ${f};\n      transition: background ${nn} ${en};\n    }\n\n    .abconvert-product-item:hover {\n      background: ${a};\n    }\n\n    .abconvert-product-item:focus-visible {\n      outline: none;\n      box-shadow: ${K};\n    }\n\n    .abconvert-product-image {\n      width: 40px;\n      height: 40px;\n      border-radius: ${q};\n      object-fit: cover;\n      border: 1px solid ${E};\n      background: ${r};\n      flex-shrink: 0;\n    }\n\n    .abconvert-product-info {\n      flex: 1;\n      min-width: 0;\n    }\n\n    .abconvert-product-title {\n      font-size: ${U};\n      font-weight: ${B};\n      color: ${f};\n      overflow: hidden;\n      text-overflow: ellipsis;\n      white-space: nowrap;\n    }\n\n    .abconvert-product-price {\n      font-size: ${G};\n      color: ${b};\n      margin-top: ${T};\n      font-variant-numeric: tabular-nums;\n    }\n\n    .abconvert-product-price s {\n      color: ${g};\n      margin-right: ${A};\n    }\n\n    .abconvert-product-price .current-price {\n      color: ${m};\n      font-weight: ${B};\n    }\n\n    .abconvert-product-variants {\n      font-size: ${N};\n      color: ${b};\n      margin-top: ${T};\n    }\n\n    .abconvert-product-arrow {\n      color: ${S};\n      flex-shrink: 0;\n      display: flex;\n      align-items: center;\n    }\n\n    .abconvert-product-arrow svg {\n      width: 16px;\n      height: 16px;\n    }\n\n    /* Shipping Test Panel */\n    .abconvert-shipping-groups {\n      display: flex;\n      flex-direction: column;\n      gap: ${M};\n    }\n\n    .abconvert-shipping-group-card {\n      border: 1px solid ${E};\n      border-radius: ${W};\n      background: ${o};\n      overflow: hidden;\n    }\n\n    .abconvert-shipping-group-card.active {\n      border-color: ${E};\n    }\n\n    .abconvert-shipping-group-header {\n      padding: ${M} ${z};\n      font-weight: ${B};\n      font-size: ${G};\n      background: ${i};\n      border-bottom: 1px solid ${E};\n    }\n\n    .abconvert-shipping-zone {\n      padding: ${M} ${z};\n    }\n\n    .abconvert-shipping-zone + .abconvert-shipping-zone {\n      margin-top: ${M};\n    }\n\n    .abconvert-shipping-zone-name {\n      font-size: ${G};\n      font-weight: ${O};\n      color: ${f};\n      margin-bottom: ${A};\n      padding-bottom: ${A};\n      border-bottom: 1px solid ${E};\n    }\n\n    .abconvert-shipping-rate-row {\n      display: flex;\n      align-items: baseline;\n      gap: ${A};\n      font-size: ${G};\n      padding: ${T} 0;\n      flex-wrap: wrap;\n    }\n\n    .abconvert-shipping-rate-name {\n      flex: 1;\n      min-width: 0;\n      overflow: hidden;\n      text-overflow: ellipsis;\n      white-space: nowrap;\n      color: ${f};\n    }\n\n    .abconvert-shipping-rate-price {\n      flex-shrink: 0;\n      font-weight: ${B};\n      font-variant-numeric: tabular-nums;\n      color: ${f};\n    }\n\n    .abconvert-shipping-rate-condition {\n      width: 100%;\n      font-size: ${N};\n      color: ${b};\n      padding-left: ${M};\n    }\n\n    .abconvert-shipping-no-rates {\n      padding: ${M} ${z};\n      font-size: ${G};\n      color: ${b};\n      font-style: italic;\n    }\n\n    /* Visual Editor Tabs */\n    .abconvert-ve-tabs {\n      display: flex;\n      border-bottom: 1px solid ${E};\n      margin-bottom: ${z};\n      gap: 0;\n    }\n\n    .abconvert-ve-tab {\n      flex: 1;\n      background: none;\n      border: none;\n      border-bottom: 2px solid transparent;\n      padding: ${M} ${z};\n      font-size: ${G};\n      font-weight: ${B};\n      font-family: ${D};\n      color: ${b};\n      cursor: pointer;\n      transition: color ${nn} ${en},\n                  border-color ${nn} ${en};\n      text-align: center;\n    }\n\n    .abconvert-ve-tab:hover:not(:disabled) {\n      color: ${f};\n    }\n\n    .abconvert-ve-tab.active {\n      color: ${f};\n      border-bottom-color: ${P};\n    }\n\n    .abconvert-ve-tab:disabled {\n      color: ${g};
715\n      cursor: not-allowed;\n    }\n\n    .abconvert-ve-code-block {\n      margin-bottom: ${A};\n    }\n\n    .abconvert-ve-code-toggle {\n      display: flex;\n      align-items: center;\n      gap: ${A};\n      background: none;\n      border: none;\n      padding: ${A} 0;\n      cursor: pointer;\n      font-family: ${D};\n      font-size: ${N};\n      color: ${b};\n    }\n\n    .abconvert-ve-code-toggle:hover {\n      color: ${f};\n    }\n\n    .abconvert-ve-code-chevron {\n      display: flex;\n      align-items: center;\n      transition: transform ${Y} ${Q};\n    }\n\n    .abconvert-ve-code-chevron.expanded {\n      transform: rotate(180deg);\n    }\n\n    .abconvert-ve-code-content {\n      max-height: 0;\n      overflow: hidden;\n      transition: max-height ${Y} ${Q};\n    }\n\n    .abconvert-ve-code-content.expanded {\n      max-height: 400px;\n      overflow-y: auto;\n    }\n\n    .abconvert-ve-code-pre {\n      font-family: ${_};\n      font-size: ${N};\n      line-height: ${V};\n      background: ${r};\n      border: 1px solid ${E};\n      border-radius: ${q};\n      padding: ${M};\n      margin: 0;\n      white-space: pre-wrap;\n      word-break: break-word;\n      color: ${f};\n    }\n\n    .abconvert-ve-code-hint {\n      font-size: ${N};\n      color: ${b};\n      margin-bottom: ${M};\n    }\n\n    .abconvert-ve-empty {\n      font-size: ${G};\n      color: ${b};\n      padding: ${M} 0;\n      text-align: center;\n    }\n\n    /* Page List - Visual Editor panel */\n    .abconvert-page-list {\n      max-height: 200px;\n      overflow-y: auto;\n      scrollbar-width: thin;\n      scrollbar-color: ${k} transparent;\n    }\n\n    .abconvert-page-list::-webkit-scrollbar {\n      width: 4px;\n    }\n\n    .abconvert-page-list::-webkit-scrollbar-thumb {\n      background: ${k};\n      border-radius: ${Z};\n    }\n\n    .abconvert-page-item {\n      display: flex;\n      align-items: center;\n      gap: ${z};\n      padding: ${M} ${z};\n      margin: ${T} 0;\n      border-radius: ${q};\n      text-decoration: none;\n      color: ${f};\n      transition: background ${nn} ${en};\n    }\n\n    .abconvert-page-item:hover {\n      background: ${a};\n    }\n\n    .abconvert-page-item:focus-visible {\n      outline: none;\n      box-shadow: ${K};\n    }\n\n    .abconvert-page-item.active {\n      background: ${u};\n    }\n\n    .abconvert-page-icon {\n      flex-shrink: 0;\n      color: ${S};\n      display: flex;\n      align-items: center;\n    }\n\n    .abconvert-page-info {\n      flex: 1;\n      min-width: 0;\n    }\n\n    .abconvert-page-path {\n      font-size: ${U};\n      font-weight: ${B};\n      color: ${f};\n      overflow: hidden;\n      text-overflow: ellipsis;\n      white-space: nowrap;\n      font-family: ${_};\n    }\n\n    .abconvert-page-changes {\n      font-size: ${N};\n      color: ${b};\n      margin-top: ${T};\n    }\n\n    /* Debug Panel */\n    .abconvert-debug-section {\n      border-top: 1px solid ${E};\n      margin-top: ${z};\n      padding-top: ${z};\n    }\n\n    .abconvert-debug-header {\n      color: ${b};\n      font-size: ${G};\n      font-weight: ${B};\n      margin-bottom: ${M};\n    }\n\n    .abconvert-context-grid {\n      display: grid;\n      grid-template-columns: 90px 1fr;\n      gap: ${A} ${M};\n      font-size: ${G};\n    }\n\n    .abconvert-context-label {\n      color: ${b};\n    }\n\n    .abconvert-context-value {\n      font-family: ${_};\n      font-size: ${N};\n      color: ${f};\n      overflow: hidden;\n      text-overflow: ellipsis;\n      white-space: nowrap;\n    }\n\n    /* Info Banner - Polaris Banner component */\n    .abconvert-info-banner {\n      display: flex;\n      align-items: flex-start;\n      gap: ${M};\n      border-radius: ${W};\n      padding: ${z};\n      margin-bottom: ${L};\n      font-size: ${G};\n      line-height: ${V};\n      box-shadow: none;\n    }\n\n    .abconvert-info-banner .abconvert-badge {\n      flex-shrink: 0;
715\n      margin-top: 1px;\n    }\n\n    .abconvert-info-banner.highlight {\n      background: ${v};\n      border-left: 3px solid ${w};\n    }\n\n    .abconvert-info-banner.warning {\n      background: ${p};\n      border-left: 3px solid ${x};\n    }\n\n    .abconvert-info-banner.success {\n      background: ${c};\n      border-left: 3px solid ${m};\n    }\n\n    .abconvert-info-banner.critical {\n      background: ${d};\n      border-left: 3px solid ${h};\n    }\n\n    /* Override Controls */\n    .abconvert-override-grid {\n      display: grid;\n      grid-template-columns: 1fr 1fr;\n      gap: ${M};\n    }\n\n    .abconvert-override-select {\n      padding: ${R} ${M};\n      padding-right: 28px;\n      border: 1px solid ${k};\n      border-radius: ${q};\n      font-size: ${G};\n      font-family: ${D};\n      background-color: ${o};\n      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 20 20' fill='%23616161'%3E%3Cpath d='M10 14l-5-5h10l-5 5z'/%3E%3C/svg%3E");\n      background-repeat: no-repeat;\n      background-position: right 8px center;\n      appearance: none;\n      cursor: pointer;\n    }\n\n    .abconvert-override-select:focus {\n      outline: none;\n      border-color: ${I};\n      box-shadow: 0 0 0 1px ${I};\n    }\n\n    .abconvert-button-group {\n      display: flex;\n      gap: ${M};\n      margin-top: ${L};\n    }\n\n    .abconvert-button-group .abconvert-btn {\n      flex: 1;\n    }\n\n    /* Result Box */\n    .abconvert-result-box {\n      display: none;\n      margin-top: ${L};\n      padding: ${z};\n      border-radius: ${W};\n      font-size: ${G};\n      line-height: ${V};\n    }\n\n    .abconvert-result-box.visible {\n      display: block;\n    }\n\n    .abconvert-result-box.success {\n      background: ${c};\n      color: ${m};\n    }\n\n    .abconvert-result-box.error {\n      background: ${d};\n      color: ${h};\n    }\n\n    .abconvert-result-box.info {\n      background: ${v};\n      color: ${w};\n    }\n\n    .abconvert-result-box.warning {\n      background: ${p};\n      color: ${x};\n    }\n\n    /* Status indicators */\n    .abconvert-status-icon {\n      font-weight: ${O};\n      font-size: ${j};\n    }\n\n    .abconvert-status-icon.pass {\n      color: ${m};\n    }\n\n    .abconvert-status-icon.fail {\n      color: ${h};\n    }\n\n    /* Section headers - Polaris Text subdued pattern */\n    .abconvert-section-header {\n      font-weight: ${B};\n      font-size: ${N};\n      color: ${b};\n      margin-bottom: ${M};\n      text-transform: uppercase;\n      letter-spacing: 0.5px;\n    }\n\n    /* Experiment info */\n    .abconvert-experiment-info {\n      margin-bottom: ${L};\n    }\n\n    .abconvert-experiment-name {\n      font-weight: ${O};\n      font-size: ${j};\n      margin-bottom: ${A};\n      color: ${f};\n    }\n\n    .abconvert-experiment-meta {\n      display: flex;\n      align-items: center;\n      gap: ${M};\n      margin-bottom: ${M};\n      flex-wrap: wrap;\n    }\n\n    .abconvert-experiment-id {\n      font-size: ${G};\n      color: ${b};\n      font-family: ${_};\n    }\n\n    /* Divider */\n    .abconvert-divider {\n      height: 1px;\n      background: ${E};\n      margin: ${L} 0;\n    }\n\n    /* Empty state */\n    .abconvert-empty-state {\n      text-align: center;\n      padding: 24px ${L};\n      color: ${b};\n    }\n\n    .abconvert-empty-state-text {\n      font-size: ${G};\n    }\n\n    /* Loading state */\n    .abconvert-loading {\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      padding: ${L};\n    }\n\n    .abconvert-spinner {\n      width: 20px;\n      height: 20px;\n      border: 2px solid ${E};\n      border-top-color: ${P};\n      border-radius: 50%;\n      animation: abconvert-spin 0.8s linear infinite;\n    }\n\n    @keyframes abconvert-spin {\n      to {\n        transform: rotate(360deg);\n      }\n    }\n\n    /* Tooltip */\n    .abconvert-tooltip {\n      position: absolute;\n      background: ${f};\n      color: ${y};\n      padding: ${A} ${M};\n      border-radius: ${q};\n      font-size: ${N};\n      white-space: nowrap;\n      z-index: 1000;\n      pointer-events: none;\n      opacity: 0;\n      transition: opacity ${nn} ${en};\n    }\n\n    .abconvert-tooltip.visible {\n      opacity: 1;\n    }\n\n    /* Accessibility: Reduce motion */\n    @media (prefers-reduced-motion: reduce) {\n      .abconvert-widget *,\n      .abconvert-widget *::before,\n      .abconvert-widget *::after {\n        animation-duration: 0.01ms !important;\n        animation-iteration-count: 1 !important;\n        transition-duration: 0.01ms !important;\n      }\n    }\n  `,e=document.createElement("style");e.id=tn,e.textContent=n,document.head.appendChild(e)}();const hn=function(n){const e=function(n){let{totalExperiments:e}=n;return`\n    <div id="abconvert-widget-header" class="abconvert-widget-header">\n      \n    <svg class="abconvert-drag-handle" width="12" height="16" viewB
715ox="0 0 12 16" fill="none">\n      <circle cx="3" cy="3" r="1.5" fill="currentColor"/>\n      <circle cx="9" cy="3" r="1.5" fill="currentColor"/>\n      <circle cx="3" cy="8" r="1.5" fill="currentColor"/>\n      <circle cx="9" cy="8" r="1.5" fill="currentColor"/>\n      <circle cx="3" cy="13" r="1.5" fill="currentColor"/>\n      <circle cx="9" cy="13" r="1.5" fill="currentColor"/>\n    </svg>\n  \n      <div class="abconvert-widget-title">\n        <div class="abconvert-widget-title-text">ABConvert Preview</div>\n        <div class="abconvert-widget-subtitle">${1===e?"1 Preview Test in this theme":`${e} Preview Tests in this theme`}</div>\n      </div>\n      <button id="abconvert-widget-close" class="abconvert-close-btn" title="Close">\n        &times;\n      </button>\n    </div>\n  `}({totalExperiments:Object.keys(n.experiments).length}),t=bn(n);return`\n    <div id="${vn}" class="abconvert-widget">\n      ${e}\n      <div class="abconvert-widget-content">\n        ${t}\n      </div>\n    </div>\n  `}(fn);try{document.body.insertAdjacentHTML("beforeend",hn)}catch(n){return void console.error("[ABConvert] Failed to insert widget:",n)}const $n=document.getElementById(vn);$n&&($n.dataset.experimentId=an,function(n,e){const t=n.querySelector("#abconvert-widget-header");t&&function(n,e){let t,o,r,i,a=!1;e.addEventListener("mousedown",(c=>{r=c.clientX,i=c.clientY;const s=n.getBoundingClientRect();t=s.left,o=s.top,n.style.right="auto",n.style.left=t+"px",n.style.top=o+"px",n.style.transform="none",a=!0,e.classList.add("dragging")})),document.addEventListener("mousemove",(e=>{if(!a)return;e.preventDefault();const c=e.clientX-r,s=e.clientY-i,d=t+c,l=o+s,u=window.innerWidth-n.offsetWidth,p=window.innerHeight-n.offsetHeight,v=Math.max(0,Math.min(d,u)),f=Math.max(0,Math.min(l,p));n.style.left=v+"px",n.style.top=f+"px"})),document.addEventListener("mouseup",(()=>{a&&(a=!1,e.classList.remove("dragging"))}))}(n,t),function(n){const e=n.querySelector("#abconvert-widget-close");e&&e.addEventListener("click",(()=>{n.style.display="none"}))}(n),mn(n,e)}($n,fn))}function bn(n){const{testType:e,experiments:t,experimentId:o,experimentData:r,currentGroupIndex:i,isV5:a,debugInfo:c,debugApi:s}=n,d=r.groups||[],l=(0,on.uH)(),u=function(n){let{experiments:e,currentExperimentId:t}=n;const o=Object.keys(e);return o.length<=1?"":`\n    <div class="abconvert-section">\n      <label class="abconvert-section-label">Select Experiment</label>\n      <select id="abconvert-experiment-selector" class="abconvert-select">\n        ${o.map((n=>{const o=e[n],r=o.experimentId||n,i=o.name||"Untitled Experiment";return`<option value="${n}" ${n===t?"selected":""}>${i} (#${r})</option>`})).join("")}\n      </select>\n    </div>\n  `}({experiments:t,currentExperimentId:o}),p=function(n){let{name:e,experimentId:t,status:o}=n;return`\n    <div class="abconvert-experiment-info">\n      <div class="abconvert-experiment-name">${e||"Price Test Preview"}</div>\n      <div class="abconvert-experiment-meta">\n        <span class="abconvert-experiment-id">#${t||"—"}</span>\n        <span class="abconvert-badge abconvert-badge-success">\n          <span class="abconvert-badge-dot"></span>\n          ${o||"Preview"} Mode\n        </span>\n      </div>\n    </div>\n  `}({name:r.name,experimentId:r.experimentId||o,status:r.status||"Preview"}),v=function(n){let{groups:e,currentGroupIndex:t}=n;const o=e.map(((n,e)=>{const o=n.name||`Group ${e+1}`,r=n.percentage||0;return`\n      <button\n        class="abconvert-group-item ${e===t?"active":""}"\n        data-group-index="${e}"\n        type="button"\n      >\n        <span class="name">${o}</span>\n        <span class="percentage">${r}%</span>\n      </button>\n    `})).join("");return`\n    <div class="abconvert-section">\n      <div class="abconvert-section-label">Test Groups (${e.length})</div>\n      <div class="abconvert-card">\n        <div class="abconvert-group-list">\n          ${o}\n        </div>\n      </div>\n    </div>\n  `}({groups:d,currentGroupIndex:i}),f=(0,un.H5)(e,n,l),b=function(n){let{debugInfo:e,debugApi:t,testGroups:o,isV5:r,expanded:i=!1}=n;if(!r||!e||e.error)return"";const a=function(n,e,t){const o=n.visitorContext||{},r=n.currentContext||o,i=n.hasStoredContext,a=i?'<div class="abconvert-info-banner highlight">
715\n        <span class="abconvert-badge abconvert-badge-info">STORED</span>\n        <span>Using Stored Context - This experiment captured context when you first saw it. Context is locked for consistent targeting.</span>\n       </div>':'<div class="abconvert-info-banner warning">\n        <span class="abconvert-badge abconvert-badge-warning">NEW</span>\n        <span>No Stored Context - First time seeing this experiment. Current session context will be captured on first evaluation.</span>\n       </div>',c=`\n    <div style="margin-bottom: 12px;">\n      <div class="abconvert-section-header">\n        ${i?"Experiment Context (Stored)":"Session Context (Current)"}\n      </div>\n      <div class="abconvert-card" style="${i?"border-color: #005fcc;":""}">\n        ${dn(o)}\n      </div>\n    </div>\n  `,s=i?`\n    <div style="margin-bottom: 12px;">\n      <div class="abconvert-section-header" style="color: #616161;">\n        Current Session (Not Used)\n      </div>\n      <div class="abconvert-card" style="opacity: 0.7;">\n        ${dn(r)}\n      </div>\n    </div>\n  `:"",d=n.trafficAllocation||{},l=`\n    <div style="margin-bottom: 12px;">\n      <div class="abconvert-section-header">Traffic Allocation</div>\n      <div class="abconvert-card" style="font-size: 11px;">\n        <div style="display: flex; align-items: center; gap: 8px;">\n          <span class="abconvert-status-icon ${sn(d.inTest)}">\n            ${cn(d.inTest)}\n          </span>\n          <span>${d.percent??"?"}% of traffic enters test</span>\n          <span style="color: #6d7175;">(${d.inTest?"included":"excluded"})</span>\n        </div>\n      </div>\n    </div>\n  `;let u="";return null!==n.storedGroupIndex&&(u=`\n      <div class="abconvert-info-banner highlight" style="margin-top: 8px;">\n        <div style="font-weight: 500; color: #005bd3;">\n          Stored Assignment: ${t[n.storedGroupIndex]?.name||`Group ${n.storedGroupIndex}`} (index ${n.storedGroupIndex})\n        </div>\n      </div>\n    `),`\n    <div style="padding: 8px 0 16px 0;">\n      ${a}\n      ${c}\n      ${s}\n      ${l}\n      ${function(n,e,t){if(!(n.audienceTargeting?.config?.enabled&&n.audienceTargeting?.config?.groups?.length>0))return"";const o=n.audienceTargeting.config.groups.map((n=>(n.filters||[]).map((o=>{let r=!0;try{r=e.checkAudienceTargeting({enabled:!0,groups:[{id:n.id,filters:[o]}]},t)}catch(n){r=!1}const i=cn(r),a=sn(r),c=Array.isArray(o.value)?o.value.join(", "):o.value;return`\n        <div style="display: flex; align-items: center; gap: 6px; padding: 4px 0;">\n          <span class="abconvert-status-icon ${a}">${i}</span>\n          <span style="font-size: 11px;">${o.type}: ${o.operator} "${c}"</span>\n        </div>\n      `})).join(""))).join("");return`\n    <div style="margin-bottom: 12px;">\n      <div class="abconvert-section-header">\n        Audience Targeting\n        <span class="abconvert-status-icon ${sn(n.audienceTargeting.passes)}" style="margin-left: 4px;">\n          (${n.audienceTargeting.passes?"PASSES":"FAILS"})\n        </span>\n      </div>\n      <div class="abconvert-card" style="font-size: 11px;">\n        ${o||'<span style="color: #6d7175;">No filters configured</span>'}\n      </div>\n    </div>\n  `}(n,e,o)}\n      ${function(n){if(!(n.forceAssignRules?.config?.length>0))return"";const e=n.forceAssignRules.config.map((e=>{const t=n.forceAssignRules.result?.id===e.id;return`\n      <div style="display: flex; align-items: center; gap: 6px; padding: 4px 0; ${t?"background: #e3f1df; border-radius: 4px; padding: 4px 8px;":""}">\n        <span style="color: ${t?"#005bd3":"#6d7175"}; font-weight: bold;">${t?"→":"○"}</span>\n        <span style="font-size: 11px;">${e.filters.map((n=>`${n.type}=${Array.isArray(n.value)?n.value.join(","):n.value}`)).join(" & ")} → ${"assign_group"===e.action?`Group ${e.groupIndex}`:e.action}</span>\n      </div>\n    `})).join("");return`\n    <div style="margin-bottom: 12px;">\n      <div class="abconvert-section-header">\n        Force Assign Rules\n        ${n.forceAssignRules.result?'<span style="color: #005bd3; margin-left: 4px;">(Rule Matched!)</span>':""}\n      </div>\n      <div class="abconvert-card" style="font-size: 11px;">\n        ${e}\n      </div>\n    </div>\n  `}(n)}\n      ${u}\n      \n    <div style="margin-bottom: 12px; margin-top: 12px;">\n      <div class="abconvert-section-header">Override Context</div>\n      <div class="abconvert-override-grid">\n        <select id="abconvert-override-country" class="abconvert-override-select">\n          <option value="">Country: Auto</option>\n          <option value="US">United States</option>\n          <option value="CA">Canada</option>\n          <option value="GB">United Kingdom</option>\n          <option value="DE">Germany</option>\n          <option value="FR">France</option>\n          <option value="AU">Australia</option>\n        </select>\n        <select id="abconvert-override-device" class="abconvert-override-select">\n          <option value="">Device: Auto</option>\n          <option value="desktop">Desktop</option>\n          <option value="mobile">Mobile</option>\n        </select>\n        <select id="abconvert-override-source" class="abconvert-override-select">\n          <option value="">Source: Auto</option>\n          <option value="direct">Direct</option>\n          <option value="google">Google</option>\n          <option value="facebook">Facebook</option>\n          <option value="instagram">Instagram</option>\n          <option value="paid_search">Paid Search</option>\n          <option value="paid_social">Paid Social</option>\n          <option value="email">Email</option>\n        </select>\n        <select id="abconvert-override-visitor" class="abconvert-override-select">\n          <option value="">Visitor: Auto</option>\n          <option value="new">New</option>\n          <option value="returning">Returning</option>\n        </select>\n      </div>\n    </div>\n  \n      <div class="abconvert-button-group">\n        <button id="abconvert-recalculate" class="abconvert-btn abconvert-btn-primary">Test Assignment</button>\n        <button id="abconvert-clear-stored" class="abconvert-btn abconvert-btn-secondary">Clear Stored</button>\n      </div>\n      <div style="margin-top: 8px;">\n        <button id="abconvert-clear-context" class="abconvert-btn abconvert-btn-critical" style="width: 100%;">\n          Reset All Context (New Session)\n        </button>\n      </div>\n      <div id="abconvert-assignment-result" class="abconvert-result-box"></div>\n    </div>\n  `}(e,t,o);return`\n    <div class="abconvert-debug-section">\n      ${(0,rn.q)({id:"abconvert-debug",title:"Debug Panel (V5)",icon:"🔧",content:a,expanded:i})}\n    </div>\n  `}({debugInfo:c,debugApi:s,testGroups:d,isV5:a,expanded:l.has("abconvert-debug")});return`\n    ${u}\n    ${p}\n    ${v}\n    ${f}\n    ${b}\n  `}function gn(n,e){const t=n[e],o=t.testType;let r=(0,on.DZ)(e);const i=null!==r?r:0;null===r&&((0,on.gp)(e,0),window.location.reload());const a=window.abconvertDebug,c="v5"===t.version;let s=null;if(a&&c)try{s=a.getDebugInfo(e)}catch(n){console.warn("[ABConvert] Failed to get debug info:",n)}return{testType:o,experiments:n,experimentId:e,experimentData:t,currentGroupIndex:i,isV5:c,debugInfo:s,debugApi:a,...(0,un.WU)(o,t)}}function mn(n,e){const{testType:t,experiments:o,experimentId:r,experimentData:i,isV5:a,debugInfo:c,debugApi:s}=e,d=i.groups||[],l=(n,e)=>{const t=(0,on.uH)();e?t.add(n):t.delete(n),(0,on.K7)(t)};!function(n,e){const t=n.querySelector("#abconvert-experiment-selector");t&&t.addEventListener("change",(function(){const n=this.value;e&&e(n)}))}(n,(e=>{!function(n,e,t){(0,on.xX)(t),n.dataset.experimentId=t;const o=gn(e,t),r=n.querySelector(".abconvert-widget-content");r&&(r.innerHTML=bn(o),mn(n,o))}(n,o,e)})),function(n,e,t){n.querySelectorAll(".abconvert-group-item").forEach((n=>{n.addEventListener("click",(function(){const n=this.dataset.groupIndex;t&&t(n,e)}))}))}(n,r,((n,e)=>{(0,on.gp)(e,parseInt(n,10)),(0,un.Mq)(t,i,parseInt(n,10))||window.location.reload()})),(0,un.uh)(t,n,e,l),a&&c&&!c.error&&function(n,e,t,o,r,i){(0,rn.s)(n,"abconvert-debug","2000px",i);const a=n.querySelector("#abconvert-clear-stored");a&&o&&a.addEventListener("click",(()=>{o.clearStoredAssignment(String(t)),ln(n,"warning","Stored Assignment Cleared","Next visit will recalculate group assignment based on current context and rules.")}));const c=n.querySelector("#abconvert-clear-context");c&&o&&c.addEventListener("click",(()=>{o.clearStoredContext(),o.clearStoredAssignment(String(t)),ln(n,"error","All Context Reset","Traffic source, referral domain, landing page, visitor type, and visitor ID have been cleared.<br><br><strong>Reload the page</strong> to simulate a fresh visitor session.")}));const s=n.querySelector("#abconvert-recalculate");s&&o&&s.addEventListener("click",(()=>{!function(n,e,t,o,r){const i=n.querySelector("#abconvert-override-country")?.value,a=n.querySelector("#abconvert-override-device")?.value,c=n.querySelector("#abconvert-override-source")?.value,s=n.querySelector("#abconvert-override-visitor")?.value,d=o.getVisitorContext(e?.startTime),l={...d,country:i||d.country,device:a||d.device,trafficSource:c||d.trafficSource,visitorType:s||d.visitorType};o.clearStoredAssignment(String(t));const u=e?.groups?.map((n=>n.percentage))||[50,50],p=o.getVisitorId(),v=o.checkTrafficAllocation(p,String(t),e.trafficAllocationPercent??100),f=o.checkAudienceTargeting(e.audienceTargeting,l),b=o.evaluateForceAssignRules(e.forceAssignRules,l);if(v)if(f)if(b&&"exclude"===b.action)ln(n,"error","❌ Excluded by Force Rule",`Matched rule: ${b.id||"unknown"}`);else if(b&&"assign_group"===b.action)ln(n,"info",`→ Force Assigned to: ${r[b.groupIndex]?.name||`Group ${b.groupIndex}`}`,`Matched rule assigns to group index ${b.groupIndex}`);else{const i=o.getGroupAssignment({experimentId:String(t),trafficAllocationPercent:e.trafficAllocationPercent??100,audienceTargeting:e.audienceTargeting??null,forceAssignRules:e.forceAssignRules??null,percentages:u,experimentStartTime:e.startTime??null});ln(n,"success",`✓ Assigned to: ${r[i.groupIndex]?.name||`Group ${i.groupIndex}`}`,`Reason: ${i.reason}<br>Context used: ${l.country||"(auto)"}, ${l.device||"(auto)"}, ${l.trafficSource||"(auto)"}`)}else ln(n,"error","❌ Excluded from Test","Reason: Does not match audience targeting criteria");else ln(n,"error","❌ Excluded from Test",`Reason: Traffic allocation (visitor hash outside ${e.trafficAllocationPercent??100}% threshold)`)}(n,e,t,o,r)}))}(n,i,r,s,d,l)}let hn=!1;const $n="__ABConvertPreviewWidgetScheduler";function xn(){window[$n]===xn?hn||(hn=!0,setTimeout((()=>{hn=!1,fn()}),0)):window.removeEventListener(pn.$F,xn)}const wn=window[$n];"function"==typeof wn&&window.removeEventListener(pn.$F,wn),window[$n]=xn,window.addEventListener(pn.$F,xn),"loading"===document.readyState?document.addEventListener("DOMContentLoaded",xn,{once:!0}):xn()})();
716</script>
716
717<!-- BEGIN app block: shopify://apps/easy-tag-gtm-data-layer/blocks/datalayer-embed-block/be308f3f-c82d-4290-b187-8561d4a8782a -->
717<script>(function(w, d) {var f = d.getElementsByTagName('script')[0];var s = d.createElement('script');s.async = true;s.src = "https:\/\/cdn.shopify.com\/extensions\/9d4b20e8-14f7-4a65-86dc-eaa196dcf826\/2.1.0\/assets\/tidl-2.1.0.min.js";s.onload = function() {window.TAGinstall.init({"data_layer": {"model": "legacy","item_id_selector": "sku|variant_id"},"events":{"device_data":true,"user_data":true,"cart_data":true,"collections":true,"product_click":true,"product":true,"add_to_cart":true,"remove_from_cart":true,"login":true,"register":true,"search":true},"currency":"USD","gtm_container_id":"GTM-MK2FWML",}, {
718   "_internal": {},"contextData": {"page": {"type":"search"}
719   },"cartData" : {"pageType":"search","items": [],"total":0.0,"currency":"USD"}});
720
721
722    };
723    f.parentNode.insertBefore(s, f);
724})(window, document);
725</script>
725
726<!-- Google Tag Manager -->
727<script>
vendor: 327 bytes, lines 727-731
727(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
728new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
729j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
730'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
731})(window,document,'script','dataLayer','
731GTM-MK2FWML
vendor: 3 bytes, line 731
731');
731</script>
731
732<!-- End Google Tag Manager -->
733
734<!-- END app block --><!-- BEGIN app block: shopify://apps/microsoft-clarity/blocks/clarity_js/31c3d126-8116-4b4a-8ba1-baeda7c4aeea -->
735<script type="text/javascript">
736  (function (c, l, a, r, i, t, y) {
737    c[a] = c[a] || function () { (c[a].q = c[a].q || []).push(arguments); };
738    t = l.createElement(r); t.async = 1; t.src = "https://www.clarity.ms/tag/" + i + "?ref=shopify";
739    y = l.getElementsByTagName(r)[0]; y.parentNode.insertBefore(t, y);
740
741    c.Shopify.loadFeatures([{ name: "consent-tracking-api", version: "0.1" }], error => {
742      if (error) {
743        console.error("Error loading Shopify features:", error);
744        return;
745      }
746
747      c[a]('consentv2', {
748        ad_Storage: c.Shopify.customerPrivacy.marketingAllowed() ? "granted" : "denied",
749        analytics_Storage: c.Shopify.customerPrivacy.analyticsProcessingAllowed() ? "granted" : "denied",
750        source: 101,
751      });
752    });
753
754    l.addEventListener("visitorConsentCollected", function (e) {
755      c[a]('consentv2', {
756        ad_Storage: e.detail.marketingAllowed ? "granted" : "denied",
757        analytics_Storage: e.detail.analyticsAllowed ? "granted" : "denied",
758        source: 101,
759      });
760    });
761  })(window, document, "clarity", "script", "vt5ci30j4z");
762</script>
762
763
764
765
766<!-- END app block --><!-- BEGIN app block: shopify://apps/addify-country-restrictions/blocks/country-restriction/8f1a8878-9149-4768-b487-01b94759156f -->
767<input type="hidden" id="adfcr-product-id" value="">
768<script defer="defer">
769  var afcr_curr_collections = [];
770  
771  var afcr_collection_id = '';
772  var afcr_page_type = 'all';
773  
774
775  
776</script>
776
777
778<input type="hidden" value="thephotostick.myshopify.com" id="liquid_shop_name">
779
780<input type="hidden" id="adfcr-page-type" value="search">
781
782<input type="hidden" id="adfcr-product-collections" value="">
783
784
785
786
787
788
789
790
791
792<input type="hidden" id="adfcr-product-tags" value="">
793
794<script src="https://cdn.shopify.com/extensions/01a0f2cc-d857-741a-87d6-7af123479399/country-restriction-676/assets/afcr-theme-script.js" defer="defer"></script>
794
795
796
797
798<!-- END app block --><!-- BEGIN app block: shopify://apps/triplewhale/blocks/triple_pixel_snippet/483d496b-3f1a-4609-aea7-8eee3b6b7a2a --><link rel='preconnect dns-prefetch' href='https://api.config-security.com/' crossorigin />
799<link rel='preconnect dns-prefetch' href='https://conf.config-security.com/' crossorigin />
800<script>
801/* >> TriplePixel :: start*/
802window.TriplePixelData={TripleName:"thephotostick.myshopify.com",ver:"2.16",plat:"SHOPIFY",isHeadless:false,src:'SHOPIFY_EXT',product:{id:"",name:``,price:"",variant:"",av:{  }},search:"",collection:"",cart:"drawer",template:"search",curr:"USD" || "USD", market:"1259536520"},function(W,H,A,L,E,_,B,N){function O(U,T,P,H,R){void 0===R&&(R=!1),H=new XMLHttpRequest,P?(H.open("POST",U,!0),H.setRequestHeader("Content-Type","text/plain")):H.open("GET",U,!0),H.send(JSON.stringify(P||{})),H.onreadystatechange=function(){4===H.readyState&&200===H.status?(R=H.responseText,U.includes("/first")?eval(R):P||(N[B]=R)):(299<H.status||H.status<200)&&T&&!R&&(R=!0,O(U,T-1,P))}}if(N=window,!N[H+"sn"]){N[H+"sn"]=1,L=function(){return Date.now().toString(36)+"_"+Math.random().toString(36)};try{A.setItem(H,1+(0|A.getItem(H)||0)),(E=JSON.parse(A.getItem(H+"U")||"[]")).push({u:location.href,r:document.referrer,t:Date.now(),id:L()}),A.setItem(H+"U",JSON.stringify(E))}catch(e){}var i,m,p;A.getItem('"!nC`')||(_=A,A=N,A[H]||(E=A[H]=function(t,e,i){return void 0===i&&(i=[]),"State"==t?E.s:(W=L(),(E._q=E._q||[]).push([W,t,e].concat(i)),W)},E.s="Installed",E._q=[],E.ch=W,B="configSecurityConfModel",N[B]=1,O("https://conf.config-security.com/model",5),i=L(),m=A[atob("c2NyZWVu")],_.setItem("di_pmt_wt",i),p={id:i,action:"profile",avatar:_.getItem("auth-security_rand_salt_"),time:m[atob("d2lkdGg=")]+":"+m[atob("aGVpZ2h0")],host:A.TriplePixelData.TripleName,plat:A.TriplePixelData.plat,url:window.location.href.slice(0,500),ref:document.referrer,ver:A.TriplePixelData.ver},O("https://api.config-security.com/event",5,p),O("https://api.config-security.com/first?host=".concat(p.host,"&plat=").concat(p.plat),5)))}}("","TriplePixel",localStorage);
803/* << TriplePixel :: end*/
804</script>
804
805
806
807
808<!-- END app block --><!-- BEGIN app block: shopify://apps/seo-manager-venntov/blocks/seomanager/c54c366f-d4bb-4d52-8d2f-dd61ce8e7e12 --><!-- BEGIN app snippet: SEOManager4 -->
809<meta name='seomanager' content='4.0.5' /> 
810
811
812<script>
813	function sm_htmldecode(str) {
814		var txt = document.createElement('textarea');
815		txt.innerHTML = str;
816		return txt.value;
817	}
818
819	var venntov_title = sm_htmldecode("ThePhotoStick® - Official Site");
820	var venntov_description = sm_htmldecode("ThePhotoStick®");
821	
822	if (venntov_title != '') {
823		document.title = venntov_title;	
824	}
825	else {
826		document.title = "Search";	
827	}
828
829	if (document.querySelector('meta[name="description"]') == null) {
830		var venntov_desc = document.createElement('meta');
831		venntov_desc.name = "description";
832		venntov_desc.content = venntov_description;
833		var venntov_head = document.head;
834		venntov_head.appendChild(venntov_desc);
835	} else {
836		document.querySelector('meta[name="description"]').setAttribute("content", venntov_description);
837	}
838</script>
838
839
840<script>
841	var venntov_robotVals = "noindex, nofollow, noimageindex, noarchive, nosnippet, max-image-preview:large, max-snippet:-1, max-video-preview:-1";
842	if (venntov_robotVals !== "") {
843		document.querySelectorAll("[name='robots']").forEach(e => e.remove());
844		var venntov_robotMeta = document.createElement('meta');
845		venntov_robotMeta.name = "robots";
846		venntov_robotMeta.content = venntov_robotVals;
847		var venntov_head = document.head;
848		venntov_head.appendChild(venntov_robotMeta);
849	}
850</script>
850
851
852<script>
853	var venntov_googleVals = "notranslate, nositelinkssearchbox";
854	if (venntov_googleVals !== "") {
855		document.querySelectorAll("[name='google']").forEach(e => e.remove());
856		var venntov_googleMeta = document.createElement('meta');
857		venntov_googleMeta.name = "google";
858		venntov_googleMeta.content = venntov_googleVals;
859		var venntov_head = document.head;
860		venntov_head.appendChild(venntov_googleMeta);
861	}
862	</script>
862<script>
863			if (document.querySelector('meta[name="pinterest"]') == null) {
864				var venntov_pin = document.createElement('meta');
865				venntov_pin.name = "pinterest";
866				venntov_pin.content = "nopin";
867				var venntov_head = document.head;
868				venntov_head.appendChild(venntov_pin);
869			} else {
870				document.querySelector('meta[name="pinterest"]').setAttribute("content", "nopin");
871			}
872		</script>
872<meta name="google-site-verification" content="RaT-jMZuDpOeZGv96eejWVFaPHGeE3PZsf2dE7i_V5M" />
873	<!-- JSON-LD support -->
874			
874<script type="application/ld+json">
875			{
876				"@context": "http://schema.org",
877				"@type": "Organization",
878				"name": "ThePhotoStick",
879				"url": "https://www.thephotostick.com","logo": "https://customers.seomanager.com/knowledgegraph/logo/thephotostick_myshopify_com_logo.png?cache=4563"
880						,"image": "https://customers.seomanager.com/knowledgegraph/logo/thephotostick_myshopify_com_logo.png?cache=4563","contactPoint": [],"sameAs": ["https://facebook.com/thephotostickbrand", "https://www.instagram.com/thephotostickbrand", "", "https://www.pinterest.com/ThePhotoStickOfficial", "", "", "", ""]}
881			</script>
881
882
883<!-- 524F4D20383A3331 --><!-- END app snippet -->
884
885<!-- END app block --><!-- BEGIN app block: shopify://apps/okendo/blocks/theme-settings/bb689e69-ea70-4661-8fb7-ad24a2e23c29 --><!-- BEGIN app snippet: header-metafields -->
886
887
888
889
890
891
892
893
894
895
896
897
898    
899        <style data-oke-reviews-version="0.91.4" type="text/css" data-href="https://cdn-static.okendo.io/reviews-widget-plus/css/okendo-reviews-styles.6dbb2446.css"></style><style data-oke-reviews-version="0.91.4" type="text/css" data-href="https://cdn-static.okendo.io/reviews-widget-plus/css/modules/okendo-star-rating.4cb378a8.css"></style><style data-oke-reviews-version="0.91.4" type="text/css" data-href="https://cdn-static.okendo.io/reviews-widget-plus/css/modules/okendo-reviews-keywords.0942444f.css"></style><style data-oke-reviews-version="0.91.4" type="text/css" data-href="https://cdn-static.okendo.io/reviews-widget-plus/css/modules/okendo-reviews-summary.a0c9d7d6.css"></style><style type="text/css">.okeReviews[data-oke-container],div.okeReviews{font-size:14px;font-size:var(--oke-text-regular);font-weight:400;font-family:var(--oke-text-fontFamily);line-height:1.6}.okeReviews[data-oke-container] *,.okeReviews[data-oke-container] :after,.okeReviews[data-oke-container] :before,div.okeReviews *,div.okeReviews :after,div.okeReviews :before{box-sizing:border-box}.okeReviews[data-oke-container] h1,.okeReviews[data-oke-container] h2,.okeReviews[data-oke-container] h3,.okeReviews[data-oke-container] h4,.okeReviews[data-oke-container] h5,.okeReviews[data-oke-container] h6,div.okeReviews h1,div.okeReviews h2,div.okeReviews h3,div.okeReviews h4,div.okeReviews h5,div.okeReviews h6{font-size:1em;font-weight:400;line-height:1.4;margin:0}.okeReviews[data-oke-container] ul,div.okeReviews ul{padding:0;margin:0}.okeReviews[data-oke-container] li,div.okeReviews li{list-style-type:none;padding:0}.okeReviews[data-oke-container] p,div.okeReviews p{line-height:1.8;margin:0 0 4px}.okeReviews[data-oke-container] p:last-child,div.okeReviews p:last-child{margin-bottom:0}.okeReviews[data-oke-container] a,div.okeReviews a{text-decoration:none;color:inherit}.okeReviews[data-oke-container] button,div.okeReviews button{border-radius:0;border:0;box-shadow:none;margin:0;width:auto;min-width:auto;padding:0;background-color:transparent;min-height:auto}.okeReviews[data-oke-container] button,.okeReviews[data-oke-container] input,.okeReviews[data-oke-container] select,.okeReviews[data-oke-container] textarea,div.okeReviews button,div.okeReviews input,div.okeReviews select,div.okeReviews textarea{font-family:inherit;font-size:1em}.okeReviews[data-oke-container] label,.okeReviews[data-oke-container] select,div.okeReviews label,div.okeReviews select{display:inline}.okeReviews[data-oke-container] select,div.okeReviews select{width:auto}.okeReviews[data-oke-container] article,.okeReviews[data-oke-container] aside,div.okeReviews article,div.okeReviews aside{margin:0}.okeReviews[data-oke-container] table,div.okeReviews table{background:transparent;border:0;border-collapse:collapse;border-spacing:0;font-family:inherit;font-size:1em;table-layout:auto}.okeReviews[data-oke-container] table td,.okeReviews[data-oke-container] table th,.okeReviews[data-oke-container] table tr,div.okeReviews table td,div.okeReviews table th,div.okeReviews table tr{border:0;font-family:inherit;font-size:1em}.okeReviews[data-oke-container] table td,.okeReviews[data-oke-container] table th,div.okeReviews table td,div.okeReviews table th{background:transparent;font-weight:400;letter-spacing:normal;padding:0;text-align:left;text-transform:none;vertical-align:middle}.okeReviews[data-oke-container] table tr:hover td,.okeReviews[data-oke-container] table tr:hover th,div.okeReviews table tr:hover td,div.okeReviews table tr:hover th{background:transparent}.okeReviews[data-oke-container] fieldset,div.okeReviews fieldset{border:0;padding:0;margin:0;min-width:0}.okeReviews[data-oke-container] img,.okeReviews[data-oke-container] svg,div.okeReviews img,div.okeReviews svg{max-width:none}.okeReviews[data-oke-container] div:empty,div.okeReviews div:empty{display:block}.okeReviews[data-oke-container] .oke-icon:before,div.okeReviews .oke-icon:before{font-family:oke-widget-icons!important;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:inherit}.okeReviews[data-oke-container] .oke-icon--select-arrow:before,div.okeReviews .oke-icon--select-arrow:before{content:""}.okeReviews[data-oke-container] .oke-icon--loading:before,div.okeReviews .oke-icon--loading:before{content:""}
899.okeReviews[data-oke-container] .oke-icon--pencil:before,div.okeReviews .oke-icon--pencil:before{content:""}.okeReviews[data-oke-container] .oke-icon--filter:before,div.okeReviews .oke-icon--filter:before{content:""}.okeReviews[data-oke-container] .oke-icon--play:before,div.okeReviews .oke-icon--play:before{content:""}.okeReviews[data-oke-container] .oke-icon--tick-circle:before,div.okeReviews .oke-icon--tick-circle:before{content:""}.okeReviews[data-oke-container] .oke-icon--chevron-left:before,div.okeReviews .oke-icon--chevron-left:before{content:""}.okeReviews[data-oke-container] .oke-icon--chevron-right:before,div.okeReviews .oke-icon--chevron-right:before{content:""}.okeReviews[data-oke-container] .oke-icon--thumbs-down:before,div.okeReviews .oke-icon--thumbs-down:before{content:""}.okeReviews[data-oke-container] .oke-icon--thumbs-up:before,div.okeReviews .oke-icon--thumbs-up:before{content:""}.okeReviews[data-oke-container] .oke-icon--close:before,div.okeReviews .oke-icon--close:before{content:""}.okeReviews[data-oke-container] .oke-icon--chevron-up:before,div.okeReviews .oke-icon--chevron-up:before{content:""}.okeReviews[data-oke-container] .oke-icon--chevron-down:before,div.okeReviews .oke-icon--chevron-down:before{content:""}.okeReviews[data-oke-container] .oke-icon--star:before,div.okeReviews .oke-icon--star:before{content:""}.okeReviews[data-oke-container] .oke-icon--magnifying-glass:before,div.okeReviews .oke-icon--magnifying-glass:before{content:""}@font-face{font-family:oke-widget-icons;src:url(https://cdn-static.okendo.io/reviews-widget-plus/fonts/oke-widget-icons.ttf) format("truetype"),url(https://cdn-static.okendo.io/reviews-widget-plus/fonts/oke-widget-icons.woff) format("woff"),url(https://cdn-static.okendo.io/reviews-widget-plus/img/oke-widget-icons.bc0d6b0a.svg) format("svg");font-weight:400;font-style:normal;font-display:swap}.okeReviews[data-oke-container] .oke-button,div.okeReviews .oke-button{display:inline-block;border-style:solid;border-color:var(--oke-button-borderColor);border-width:var(--oke-button-borderWidth);background-color:var(--oke-button-backgroundColor);line-height:1;padding:12px 24px;margin:0;border-radius:var(--oke-button-borderRadius);color:var(--oke-button-textColor);text-align:center;position:relative;font-weight:var(--oke-button-fontWeight);font-size:var(--oke-button-fontSize);font-family:var(--oke-button-fontFamily);outline:0}.okeReviews[data-oke-container] .oke-button-text,.okeReviews[data-oke-container] .oke-button .oke-icon,div.okeReviews .oke-button-text,div.okeReviews .oke-button .oke-icon{line-height:1}.okeReviews[data-oke-container] .oke-button.oke-is-loading,div.okeReviews .oke-button.oke-is-loading{position:relative}.okeReviews[data-oke-container] .oke-button.oke-is-loading:before,div.okeReviews .oke-button.oke-is-loading:before{font-family:oke-widget-icons!important;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"";color:undefined;font-size:12px;display:inline-block;animation:oke-spin 1s linear infinite;position:absolute;width:12px;height:12px;top:0;left:0;bottom:0;right:0;margin:auto}.okeReviews[data-oke-container] .oke-button.oke-is-loading>*,div.okeReviews .oke-button.oke-is-loading>*{opacity:0}.okeReviews[data-oke-container] .oke-button.oke-is-active,div.okeReviews .oke-button.oke-is-active{background-color:var(--oke-button-backgroundColorActive);color:var(--oke-button-textColorActive);border-color:var(--oke-button-borderColorActive)}.okeReviews[data-oke-container] .oke-button:not(.oke-is-loading),div.okeReviews .oke-button:not(.oke-is-loading){cursor:pointer}.okeReviews[data-oke-container] .oke-button:not(.oke-is-loading):not(.oke-is-active):hover,div.okeReviews .oke-button:not(.oke-is-loading):not(.oke-is-active):hover{background-color:var(--oke-button-backgroundColorHover);color:var(--oke-button-textColorHover);border-color:var(--oke-button-borderColorHover);box-shadow:0 0 0 2px var(--oke-button-backgroundColorHover)}.okeReviews[data-oke-container] .oke-button:not(.oke-is-loading):not(.oke-is-active):active,.okeReviews[data-oke-container] .oke-button:not(.oke-is-loading):not(.oke-is-active):hover:active,div.okeReviews .oke-button:not(.oke-is-loading):not(.oke-is-active):active,div.okeReviews .oke-button:not(.oke-is-loading):not(.oke-is-active):hover:active{background-color:var(--oke-button-backgroundColorActive);color:var(--oke-button-textColorActive);border-color:var(--oke-button-borderColorActive)}.okeReviews[data-oke-container] .oke-title,div.okeReviews .oke-title{font-weight:var(--oke-title-fontWeight);font-size:var(--oke-title-fontSize);font-family:var(--oke-title-fontFamily)}.okeReviews[data-oke-container] .oke-bodyText,div.okeReviews .oke-bodyText{font-weight:var(--oke-bodyText-fontWeight);font-size:var(--oke-bodyText-fontSize);font-family:var(--oke-bodyText-fontFamily)}.okeReviews[data-oke-container] .oke-linkButton,div.okeReviews .oke-linkButton{curs
899or:pointer;font-weight:700;pointer-events:auto;text-decoration:underline}.okeReviews[data-oke-container] .oke-linkButton:hover,div.okeReviews .oke-linkButton:hover{text-decoration:none}.okeReviews[data-oke-container] .oke-readMore,div.okeReviews .oke-readMore{cursor:pointer;color:inherit;text-decoration:underline}.okeReviews[data-oke-container] .oke-select,div.okeReviews .oke-select{cursor:pointer;background-repeat:no-repeat;background-position-x:100%;background-position-y:50%;border:none;padding:0 24px 0 12px;-moz-appearance:none;appearance:none;color:inherit;-webkit-appearance:none;background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg fill='currentColor' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3Cpath d='M0 0h24v24H0z' fill='none'/%3E%3C/svg%3E");outline-offset:4px}.okeReviews[data-oke-container] .oke-select:disabled,div.okeReviews .oke-select:disabled{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg fill='%239a9db1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3Cpath d='M0 0h24v24H0z' fill='none'/%3E%3C/svg%3E")}.okeReviews[data-oke-container] .oke-loader,div.okeReviews .oke-loader{position:relative}.okeReviews[data-oke-container] .oke-loader:before,div.okeReviews .oke-loader:before{font-family:oke-widget-icons!important;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"";color:var(--oke-text-secondaryColor);font-size:12px;display:inline-block;animation:oke-spin 1s linear infinite;position:absolute;width:12px;height:12px;top:0;left:0;bottom:0;right:0;margin:auto}.okeReviews[data-oke-container] .oke-a11yText,div.okeReviews .oke-a11yText{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.okeReviews[data-oke-container] .oke-hidden,div.okeReviews .oke-hidden{display:none}.okeReviews[data-oke-container] .oke-modal,div.okeReviews .oke-modal{bottom:0;left:0;overflow:auto;position:fixed;right:0;top:0;z-index:2147483647;max-height:100%;background-color:rgba(0,0,0,.5);padding:40px 0 12px}@media only screen and (min-width:1024px){.okeReviews[data-oke-container] .oke-modal,div.okeReviews .oke-modal{display:flex;align-items:center;padding:48px 0}}.okeReviews[data-oke-container] .oke-modal ::-moz-selection,div.okeReviews .oke-modal ::-moz-selection{background-color:rgba(39,45,69,.2)}.okeReviews[data-oke-container] .oke-modal ::selection,div.okeReviews .oke-modal ::selection{background-color:rgba(39,45,69,.2)}.okeReviews[data-oke-container] .oke-modal,.okeReviews[data-oke-container] .oke-modal p,div.okeReviews .oke-modal,div.okeReviews .oke-modal p{color:#272d45}.okeReviews[data-oke-container] .oke-modal-content,div.okeReviews .oke-modal-content{background-color:#fff;margin:auto;position:relative;will-change:transform,opacity;width:calc(100% - 24px)}@media only screen and (min-width:1024px){.okeReviews[data-oke-container] .oke-modal-content,div.okeReviews .oke-modal-content{max-width:1000px}}.okeReviews[data-oke-container] .oke-modal-close,div.okeReviews .oke-modal-close{cursor:pointer;position:absolute;width:32px;height:32px;top:-32px;padding:4px;right:-4px;line-height:1}.okeReviews[data-oke-container] .oke-modal-close:before,div.okeReviews .oke-modal-close:before{font-family:oke-widget-icons!important;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"";color:#fff;font-size:24px;display:inline-block;width:24px;height:24px}.okeReviews[data-oke-container] .oke-modal-overlay,div.okeReviews .oke-modal-overlay{background-color:rgba(43,46,56,.9)}@media only screen and (min-width:1024px){.okeReviews[data-oke-container] .oke-modal--large .oke-modal-content,div.okeReviews .oke-modal--large .oke-modal-content{max-width:1200px}}.okeReviews[data-oke-container] .oke-modal .oke-helpful,.okeReviews[data-oke-container] .oke-modal .oke-helpful-vote-button,.okeReviews[data-oke-container] .oke-modal .oke-reviewContent-date,div.okeReviews .oke-modal .oke-helpful,div.okeReviews .oke-modal .oke-helpful-vote-button,div.okeReviews .oke-modal .oke-reviewContent-date{color:#676986}.oke-modal .okeReviews[data-oke-container].oke-w,.oke-modal div.okeReviews.oke-w{color:#272d45}.okeReviews[data-oke-container] .oke-tag,div.okeReviews .oke-tag{align-items:center;color:#272d45;display:flex;font-size:var(--oke-text-small);font-weight:600;text-align:left;position:relative;z-index:2;background-color:#f4f4f6;padding:4px 6px;border:none;border-radius:4px;gap:6px;line-height:1}.okeReviews[data-oke-container] .oke-tag svg,div.okeReviews .oke-tag svg{fill:currentColor;height:1rem}.okeReviews[data-oke-container] .hooper,div.okeReviews .hooper{height:auto}.okeReviews--left{text-align:left}.okeReviews--right{text-align:right}.okeReviews--center{text-align:center}.okeReviews :not([tabindex="-1"]):focus-visible{outline:5px auto highlight;outline:5px auto -webkit-focus-ring-color}.is-oke-modalOpen{overflow:hidden!important}img.oke-is-error{background-color:var(--oke-shadingColor);background-size:cover;background-position:50% 50%;box-shadow:inset 0 0 0 1px var(--oke-border-color)}@keyframes oke-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes oke-fade-in{0%{opacity:0}
899to{opacity:1}}.layout-panel-flex>div:has([data-oke-container]){width:100%}
900.oke-stars{line-height:1;position:relative;display:inline-block}.oke-stars-background svg{overflow:visible}.oke-stars-foreground{overflow:hidden;position:absolute;top:0;left:0}.oke-sr{display:inline-block;padding-top:var(--oke-starRating-spaceAbove);padding-bottom:var(--oke-starRating-spaceBelow)}.oke-sr .oke-is-clickable{cursor:pointer}.oke-sr--hidden{display:none}.oke-sr-count,.oke-sr-rating,.oke-sr-stars{display:inline-block;vertical-align:middle}.oke-sr-stars{line-height:1;margin-right:8px}.oke-sr-rating{display:none}.oke-sr-count--brackets:before{content:"("}.oke-sr-count--brackets:after{content:")"}
901.oke-rk{display:block}.okeReviews[data-oke-container] .oke-reviewsKeywords-heading,div.okeReviews .oke-reviewsKeywords-heading{font-weight:700;margin-bottom:8px}.okeReviews[data-oke-container] .oke-reviewsKeywords-heading-skeleton,div.okeReviews .oke-reviewsKeywords-heading-skeleton{height:calc(var(--oke-button-fontSize) + 4px);width:150px}.okeReviews[data-oke-container] .oke-reviewsKeywords-list,div.okeReviews .oke-reviewsKeywords-list{display:inline-flex;align-items:center;flex-wrap:wrap;gap:4px}.okeReviews[data-oke-container] .oke-reviewsKeywords-list-category,div.okeReviews .oke-reviewsKeywords-list-category{background-color:var(--oke-filter-backgroundColor);color:var(--oke-filter-textColor);border:1px solid var(--oke-filter-borderColor);border-radius:var(--oke-filter-borderRadius);padding:6px 16px;transition:background-color .1s ease-out,border-color .1s ease-out;white-space:nowrap}.okeReviews[data-oke-container] .oke-reviewsKeywords-list-category.oke-is-clickable,div.okeReviews .oke-reviewsKeywords-list-category.oke-is-clickable{cursor:pointer}.okeReviews[data-oke-container] .oke-reviewsKeywords-list-category.oke-is-active,div.okeReviews .oke-reviewsKeywords-list-category.oke-is-active{background-color:var(--oke-filter-backgroundColorActive);color:var(--oke-filter-textColorActive);border-color:var(--oke-filter-borderColorActive)}.okeReviews[data-oke-container] .oke-reviewsKeywords .oke-translateButton,div.okeReviews .oke-reviewsKeywords .oke-translateButton{margin-top:12px}
902.oke-rs{display:block}.oke-rs .oke-reviewsSummary.oke-is-preRender .oke-reviewsSummary-summary{-webkit-mask:linear-gradient(180deg,#000 0,#000 40%,transparent 95%,transparent 0) 100% 50%/100% 100% repeat-x;mask:linear-gradient(180deg,#000 0,#000 40%,transparent 95%,transparent 0) 100% 50%/100% 100% repeat-x;max-height:150px}.okeReviews[data-oke-container] .oke-reviewsSummary .oke-tooltip,div.okeReviews .oke-reviewsSummary .oke-tooltip{display:inline-block;font-weight:400}.okeReviews[data-oke-container] .oke-reviewsSummary .oke-tooltip-trigger,div.okeReviews .oke-reviewsSummary .oke-tooltip-trigger{height:15px;width:15px;overflow:hidden;transform:translateY(-10%)}.okeReviews[data-oke-container] .oke-reviewsSummary-heading,div.okeReviews .oke-reviewsSummary-heading{align-items:center;-moz-column-gap:4px;column-gap:4px;display:inline-flex;font-weight:700;margin-bottom:8px}.okeReviews[data-oke-container] .oke-reviewsSummary-heading-skeleton,div.okeReviews .oke-reviewsSummary-heading-skeleton{height:calc(var(--oke-button-fontSize) + 4px);width:150px}.okeReviews[data-oke-container] .oke-reviewsSummary-icon,div.okeReviews .oke-reviewsSummary-icon{fill:currentColor;font-size:14px}.okeReviews[data-oke-container] .oke-reviewsSummary-icon svg,div.okeReviews .oke-reviewsSummary-icon svg{vertical-align:baseline}.okeReviews[data-oke-container] .oke-reviewsSummary-summary.oke-is-truncated,div.okeReviews .oke-reviewsSummary-summary.oke-is-truncated{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}</style>
903    
904    
904<script type="application/json" id="oke-reviews-settings">{"subscriberId":"6ab59a42-ae74-4e4b-82e9-f6c571faf5d4","analyticsSettings":{"isWidgetOnScreenTrackingEnabled":true,"provider":"none"},"locale":"en","localeAndVariant":{"code":"en"},"matchCustomerLocale":true,"widgetSettings":{"global":{"dateSettings":{"format":{"type":"absolute","options":{"dateStyle":"medium"}}},"hideOkendoBranding":true,"reviewTranslationsMode":"per-review","showIncentiveIndicator":false,"searchEnginePaginationEnabled":true,"stars":{"backgroundColor":"#E5E5E5","foregroundColor":"#FFCF2A","interspace":2,"shape":{"type":"default"},"showBorder":false},"font":{"fontType":"inherit-from-page"}},"homepageCarousel":{"slidesPerPage":{"large":3,"medium":2},"totalSlides":12,"scrollBehaviour":"slide","style":{"showDates":true,"border":{"color":"#E5E5EB","width":{"value":1,"unit":"px"}},"headingFont":{"hasCustomFontSettings":false},"bodyFont":{"hasCustomFontSettings":false},"arrows":{"color":"#676986","size":{"value":24,"unit":"px"},"enabled":true},"avatar":{"backgroundColor":"#E5E5EB","placeholderTextColor":"#2C3E50","size":{"value":48,"unit":"px"},"enabled":true},"media":{"size":{"value":80,"unit":"px"},"imageGap":{"value":4,"unit":"px"},"enabled":true},"stars":{"height":{"value":18,"unit":"px"}},"productImageSize":{"value":48,"unit":"px"},"layout":{"name":"default","reviewDetailsPosition":"below","showProductName":false,"showAttributeBars":false,"showProductVariantName":false,"showProductDetails":"only-when-grouped"},"highlightColor":"#0E7A82","spaceAbove":{"value":20,"unit":"px"},"text":{"primaryColor":"#2C3E50","fontSizeRegular":{"value":14,"unit":"px"},"fontSizeSmall":{"value":12,"unit":"px"},"secondaryColor":"#676986"},"spaceBelow":{"value":20,"unit":"px"}},"defaultSort":"rating desc","autoPlay":false,"truncation":{"bodyMaxLines":4,"enabled":true,"truncateAll":false}},"mediaCarousel":{"minimumImages":1,"linkText":"Read More","autoPlay":false,"slideSize":"medium","arrowPosition":"outside"},"mediaGrid":{"gridStyleDesktop":{"layout":"default-desktop"},"gridStyleMobile":{"layout":"default-mobile"},"showMoreArrow":{"arrowColor":"#676986","enabled":true,"backgroundColor":"#f4f4f6"},"linkText":"Read More","infiniteScroll":false,"gapSize":{"value":10,"unit":"px"}},"questions":{"initialPageSize":6,"loadMorePageSize":6},"reviewsBadge":{"layout":"large","colorScheme":"dark"},"reviewsTab":{"enabled":false},"reviewsWidget":{"tabs":{"reviews":true,"questions":true},"header":{"columnDistribution":"space-around","verticalAlignment":"top","blocks":[{"columnWidth":"half","modules":[{"name":"rating-average","layout":"one-line"},{"name":"rating-breakdown","backgroundColor":"#f5f5f5","shadingColor":"#b0b0b0","stretchMode":"contain"}],"textAlignment":"left"},{"columnWidth":"half","modules":[{"name":"recommended"},{"name":"attributes","layout":"stacked","stretchMode":"stretch"}],"textAlignment":"left"},{"columnWidth":"one-third","modules":[{"name":"media-grid","imageGap":{"value":4,"unit":"px"},"scaleToFill":true,"rows":3,"columns":3}],"textAlignment":"center"}]},"style":{"showDates":true,"border":{"color":"#DEDEDE","width":{"value":1,"unit":"px"}},"bodyFont":{"fontSize":{"value":12,"unit":"px"},"fontType":"use-global","fontWeight":400,"hasCustomFontSettings":true},"headingFont":{"fontSize":{"value":14,"unit":"px"},"fontType":"use-global","fontWeight":600,"hasCustomFontSettings":true},"filters":{"backgroundColorActive":"#878787","backgroundColor":"#FFFFFF","borderColor":"#DBDDE4","borderRadius":{"value":100,"unit":"px"},"borderColorActive":"#878787","textColorActive":"#FFFFFF","textColor":"#504949","searchHighlightColor":"#99d1ef"},"avatar":{"backgroundColor":"#84CAF7","placeholderTextColor":"#FFFFFF","size":{"value":40,"unit":"px"},"enabled":true},"stars":{"height":{"value":15,"unit":"px"}},"shadingColor":"#F7F7F8","productImageSize":{"value":48,"unit":"px"},"button":{"backgroundColorActive":"#008BD8","borderColorHover":"#FFFFFF","backgroundColor":"#008BD8","borderColor":"#008BD8","backgroundColorHover":"#008BD8","textColorHover":"#FFFFFF","borderRadius":{"value":4,"unit":"px"},"borderWidth":{"value":0,"unit":"px"},"borderColorActive":"#FFFFFF","textColorActive":"#FFFFFF","textColor":"#FFFFFF","font":{"hasCustomFontSettings":false}},"highlightColor":"#008BD8","spaceAbove":{"value":18,"unit":"px"},"text":{"primaryColor":"#504949","fontSizeRegular":{"value":13,"unit":"px"},"fontSizeLarge":{"value":12,"unit":"px"},"fontSizeSmall":{"value":10,"unit":"px"},"secondaryColor":"#878787"},"spaceBelow":{"value":18,"unit":"px"},"attributeBar":{"style":"rounded","backgroundColor":"#dedede","shadingColor":"#b0b0b0","markerColor":"#008BD8"}},"showWhenEmpty":true,"reviews":{"list":{"layout":{"name":"masonry","cardLayout":{"reviewDetailsPosition":"above","showProductName":false,"showFullHeightImages":false,"showReply":true,"name":"featured","
904showAttributeBars":false,"showProductVariantName":false,"showProductDetails":"always"},"showProductVariantName":false,"columnAmount":3},"loyalty":{"maxInitialAchievements":3},"initialPageSize":10,"replyTruncation":{"bodyMaxLines":4,"enabled":true},"media":{"layout":"featured","size":{"value":200,"unit":"px"}},"truncation":{"bodyMaxLines":4,"truncateAll":false,"enabled":true},"loadMorePageSize":5},"controls":{"filterMode":"closed","freeTextSearchEnabled":false,"writeReviewButtonEnabled":true,"defaultSort":"date desc"}}},"starRatings":{"showWhenEmpty":false,"clickBehavior":"scroll-to-widget","style":{"text":{"content":"review-count","style":"number-and-text","brackets":false},"spaceAbove":{"value":0,"unit":"px"},"singleStar":false,"spaceBelow":{"value":0,"unit":"px"},"height":{"value":18,"unit":"px"}}}},"features":{"attributeFiltersEnabled":true,"recorderPlusEnabled":true,"recorderQandaPlusEnabled":true,"reviewsKeywordsEnabled":true,"reviewsSummariesEnabled":true}}</script>
904
905            <style id="oke-css-vars">:root{--oke-widget-spaceAbove:18px;--oke-widget-spaceBelow:18px;--oke-starRating-spaceAbove:0;--oke-starRating-spaceBelow:0;--oke-button-backgroundColor:#008bd8;--oke-button-backgroundColorHover:#008bd8;--oke-button-backgroundColorActive:#008bd8;--oke-button-textColor:#fff;--oke-button-textColorHover:#fff;--oke-button-textColorActive:#fff;--oke-button-borderColor:#008bd8;--oke-button-borderColorHover:#fff;--oke-button-borderColorActive:#fff;--oke-button-borderRadius:4px;--oke-button-borderWidth:0;--oke-button-fontWeight:700;--oke-button-fontSize:var(--oke-text-regular,14px);--oke-button-fontFamily:inherit;--oke-border-color:#dedede;--oke-border-width:1px;--oke-text-primaryColor:#504949;--oke-text-secondaryColor:#878787;--oke-text-small:10px;--oke-text-regular:13px;--oke-text-large:12px;--oke-text-fontFamily:inherit;--oke-avatar-size:40px;--oke-avatar-backgroundColor:#84caf7;--oke-avatar-placeholderTextColor:#fff;--oke-highlightColor:#008bd8;--oke-shadingColor:#f7f7f8;--oke-productImageSize:48px;--oke-attributeBar-shadingColor:#b0b0b0;--oke-attributeBar-borderColor:undefined;--oke-attributeBar-backgroundColor:#dedede;--oke-attributeBar-markerColor:#008bd8;--oke-filter-backgroundColor:#fff;--oke-filter-backgroundColorActive:#878787;--oke-filter-borderColor:#dbdde4;--oke-filter-borderColorActive:#878787;--oke-filter-textColor:#504949;--oke-filter-textColorActive:#fff;--oke-filter-borderRadius:100px;--oke-filter-searchHighlightColor:#99d1ef;--oke-mediaGrid-chevronColor:#676986;--oke-stars-foregroundColor:#ffcf2a;--oke-stars-backgroundColor:#e5e5e5;--oke-stars-borderWidth:0}.oke-w,.oke-modal{--oke-title-fontWeight:600;--oke-title-fontSize:14px;--oke-title-fontFamily:inherit;--oke-bodyText-fontWeight:400;--oke-bodyText-fontSize:12px;--oke-bodyText-fontFamily:inherit}</style>
906            <style id="oke-reviews-custom-css">.oke-reviewsTab{display:none !important}</style>
907            <template id="oke-reviews-body-template"><svg id="oke-star-symbols" style="display:none!important" data-oke-id="oke-star-symbols"><symbol id="oke-star-empty" style="overflow:visible;"><path id="star-default--empty" fill="var(--oke-stars-backgroundColor)" stroke="var(--oke-stars-borderColor)" stroke-width="var(--oke-stars-borderWidth)" d="M3.34 13.86c-.48.3-.76.1-.63-.44l1.08-4.56L.26 5.82c-.42-.36-.32-.7.24-.74l4.63-.37L6.92.39c.2-.52.55-.52.76 0l1.8 4.32 4.62.37c.56.05.67.37.24.74l-3.53 3.04 1.08 4.56c.13.54-.14.74-.63.44L7.3 11.43l-3.96 2.43z"/></symbol><symbol id="oke-star-filled" style="overflow:visible;"><path id="star-default--filled" fill="var(--oke-stars-foregroundColor)" stroke="var(--oke-stars-borderColor)" stroke-width="var(--oke-stars-borderWidth)" d="M3.34 13.86c-.48.3-.76.1-.63-.44l1.08-4.56L.26 5.82c-.42-.36-.32-.7.24-.74l4.63-.37L6.92.39c.2-.52.55-.52.76 0l1.8 4.32 4.62.37c.56.05.67.37.24.74l-3.53 3.04 1.08 4.56c.13.54-.14.74-.63.44L7.3 11.43l-3.96 2.43z"/></symbol></svg></template>
907<script>document.addEventListener('readystatechange',() =>{Array.from(document.getElementById('oke-reviews-body-template')?.content.children)?.forEach(function(child){if(!Array.from(document.body.querySelectorAll('[data-oke-id='.concat(child.getAttribute('data-oke-id'),']'))).length){document.body.prepend(child)}})},{once:true});</script>
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921<!-- END app snippet -->
922
923    <!-- BEGIN app snippet: okendo-reviews-json-ld -->
924<!-- END app snippet -->
925
926<!-- BEGIN app snippet: widget-plus-initialisation-script -->
927
928
929
930
931    
931<script async id="okendo-reviews-script" src="https://cdn-static.okendo.io/reviews-widget-plus/js/okendo-reviews.js"></script>
931
932
933<!-- END app snippet -->
934
935
936<!-- END app block --><!-- BEGIN app block: shopify://apps/gempages-builder/blocks/embed-gp-script-head/20b379d4-1b20-474c-a6ca-665c331919f3 -->
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951<!-- END app block --><!-- BEGIN app block: shopify://apps/abconvert/blocks/app-embed-custom-label/5c6be9a4-14ad-4ad6-a0b5-a41137ce4ddf -->
952<!-- END app block --><!-- BEGIN app block: shopify://apps/pagefly-ai-page-builder/blocks/app-embed/83e179f7-59a0-4589-8c66-c0dddf959200 -->
953
954<!-- BEGIN app snippet: pagefly-cro-ab-testing-main -->
955
956
957
958
959
960
961
962<script>
963  ;(function () {
964    const url = new URL(window.location)
965    const viewParam = url.searchParams.get('view')
966    if (viewParam && viewParam.includes('variant-pf-')) {
967      url.searchParams.set('pf_v', viewParam)
968      url.searchParams.delete('view')
969      window.history.replaceState({}, '', url)
970    }
971  })()
972</script>
972
973
974
975
976<script type='module'>
977  
978  window.PAGEFLY_CRO = window.PAGEFLY_CRO || {}
979
980  window.PAGEFLY_CRO['data_debug'] = {
981    original_template_suffix: "",
982    allow_ab_test: false,
983    ab_test_start_time: 0,
984    ab_test_end_time: 0,
985    today_date_time: 1790864126000,
986  }
987  window.PAGEFLY_CRO['GA4'] = { enabled: false}
988</script>
988
989
990<!-- END app snippet -->
991
992
993
994
995
996
997
998
999  
999<script src='https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-helper.js' defer='defer'></script>
999
1000
1001  
1001<script src='https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-general-helper.js' defer='defer'></script>
1001
1002
1003  
1003<script src='https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-snap-slider.js' defer='defer'></script>
1003
1004
1005  
1005<script src='https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-slideshow-v3.js' defer='defer'></script>
1005
1006
1007  
1007<script src='https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-slideshow-v4.js' defer='defer'></script>
1007
1008
1009  
1009<script src='https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-glider.js' defer='defer'></script>
1009
1010
1011  
1011<script src='https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-slideshow-v1-v2.js' defer='defer'></script>
1011
1012
1013  
1013<script src='https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-product-media.js' defer='defer'></script>
1013
1014
1015  
1015<script src='https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-product.js' defer='defer'></script>
1015
1016
1017
1018<script id='pagefly-helper-data' type='application/json'>
1019  {
1020    "page_optimization": {
1021      "assets_prefetching": true
1022    },
1023    "elements_asset_mapper": {
1024      "Accordion": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-accordion.js",
1025      "Accordion3": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-accordion3.js",
1026      "CountDown": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-countdown.js",
1027      "GMap1": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-gmap.js",
1028      "GMap2": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-gmap.js",
1029      "GMapBasicV2": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-gmap.js",
1030      "GMapAdvancedV2": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-gmap.js",
1031      "HTML.Video": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-htmlvideo.js",
1032      "HTML.Video2": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-htmlvideo2.js",
1033      "HTML.Video3": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-htmlvideo2.js",
1034      "BackgroundVideo": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-htmlvideo2.js",
1035      "Instagram": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-instagram.js",
1036      "Instagram2": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-instagram.js",
1037      "Insta3": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-instagram3.js",
1038      "Tabs": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-tab.js",
1039      "Tabs3": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-tab3.js",
1040      "ProductBox": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-cart.js",
1041      "FBPageBox2": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-facebook.js",
1042      "FBLikeButton2": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-facebook.js",
1043      "TwitterFeed2": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-twitter.js",
1044      "Paragraph4": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-paragraph4.js",
1045
1046      "AliReviews": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-3rd-elements.js",
1047      "BackInStock": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-3rd-elements.js",
1048      "GloboBackInStock": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-3rd-elements.js",
1049      "GrowaveWishlist": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-3rd-elements.js",
1050      "InfiniteOptionsShopPad": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-3rd-elements.js",
1051      "InkybayProductPersonalizer": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder
1051-362/assets/pagefly-3rd-elements.js",
1052      "LimeSpot": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-3rd-elements.js",
1053      "Loox": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-3rd-elements.js",
1054      "Opinew": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-3rd-elements.js",
1055      "Powr": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-3rd-elements.js",
1056      "ProductReviews": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-3rd-elements.js",
1057      "PushOwl": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-3rd-elements.js",
1058      "ReCharge": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-3rd-elements.js",
1059      "Rivyo": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-3rd-elements.js",
1060      "TrackingMore": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-3rd-elements.js",
1061      "Vitals": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-3rd-elements.js",
1062      "Wiser": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-3rd-elements.js"
1063    },
1064    "custom_elements_mapper": {
1065      "pf-click-action-element": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-click-action-element.js",
1066      "pf-dialog-element": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-dialog-element.js"
1067    }
1068  }
1069</script>
1069
1070
1071<script id='pagefly-heatmap-config' type='application/json'>
1072  {}
1073</script>
vendor: 1 bytes, line 1073
1073
1074<script>
1075  (function () {
1076    var el = document.getElementById('pagefly-heatmap-config')
1077    if (!el) { window.__pagefly_heatmap_config__ = {}; return }
1078    try {
1079      window.__pagefly_heatmap_config__ = JSON.parse(el.textContent || '{}') || {}
1080    } catch (e) {
1081      window.__pagefly_heatmap_config__ = {}
1082    }
1083  })()
1084</script>
vendor: 1 bytes, line 1084
1084
1085<script>
1086  // Heatmap overlay loader. Three gates, all of them cheap, none of them trusting the URL:
1087  // the visitor must have arrived on a pf_heatmap link, the SERVER must have published an
1088  // overlay path in the metafield, and this page must already be one the merchant enabled
1089  // tracking for. The last gate is what stops a crafted link pulling the asset onto an
1090  // arbitrary storefront page. Everything else is decided inside the asset, and by the server.
1091  (function () {
1092    var cfg = window.__pagefly_heatmap_config__ || {}
1093    var id = (window.__pagefly_page_setting__ || {}).pageId
1094    if (!/[#&]pf_heatmap=/.test(window.location.hash || '')) return
1095    if (!cfg.overlay_data_path || !Array.isArray(cfg.enabled_page_ids)) return
1096    if (!id || cfg.enabled_page_ids.indexOf(id) === -1) return
1097    var s = document.createElement('script')
1098    s.src = 'https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-heatmap-overlay.js'
1099    s.defer = true
1100    document.head.appendChild(s)
1101  })()
1102</script>
1102
1103
1104<!-- BEGIN app snippet: pf-ai-schema -->
1105<!-- END app snippet -->
1106
1107
1108<!-- END app block --><!-- BEGIN app block: shopify://apps/klaviyo-email-marketing-sms/blocks/klaviyo-onsite-embed/2632fe16-c075-4321-a88b-50b567f42507 -->
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121  
1121<script async src="https://static.klaviyo.com/onsite/js/VDt99H/klaviyo.js?company_id=VDt99H"></script>
1121
1122  
1122<script>!function(){if(!window.klaviyo){window._klOnsite=window._klOnsite||[];try{window.klaviyo=new Proxy({},{get:function(n,i){return"push"===i?function(){var n;(n=window._klOnsite).push.apply(n,arguments)}:function(){for(var n=arguments.length,o=new Array(n),w=0;w<n;w++)o[w]=arguments[w];var t="function"==typeof o[o.length-1]?o.pop():void 0,e=new Promise((function(n){window._klOnsite.push([i].concat(o,[function(i){t&&t(i),n(i)}]))}));return e}}})}catch(n){window.klaviyo=window.klaviyo||[],window.klaviyo.push=function(){var n;(n=window._klOnsite).push.apply(n,arguments)}}}}();</script>
1122
1123
1124  
1125
1126
1127
1128
1129  
1129<script>
1130    window.klaviyoReviewsProductDesignMode = false
1131  </script>
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141<!-- END app block --><!-- BEGIN app block: shopify://apps/quicky/blocks/quickBanner/3421d53e-fb02-449c-a9ef-daf28f28450a --><!-- BEGIN app snippet: vendors -->
1141<script defer src="https://cdn.shopify.com/extensions/01a0275c-692d-786e-ac26-0da514a772cd/quicky-137/assets/vendors.js"></script>
1141
1142<!-- END app snippet -->
1143<link rel="preconnect" href="https://static.devit.software" crossorigin>
1144<script>
1145  (() => {
1146    const url = new URL("https://cdn.shopify.com/extensions/01a0275c-692d-786e-ac26-0da514a772cd/quicky-137/assets/vendors.js");
1147    window.qb_public_path = `${url.origin}${url.pathname.replace('vendors.js', '')}`
1148  })()
1149</script>
1149
1150
1151<script>
1152  const __globalAbTest = `{}`;
1153</script>
1153
1154<style>#qb-extension-root [data-type_bar]>.qb-skeleton{display:none!important}</style>
1155<div id="qb-extension-root">
1156  
1157  
1158
1159  
1160  
1161  
1162
1163  
1164  <!-- BEGIN app snippet: actionBarSnippet --><div
1165  id='qb-689cf09eab9ff5d8a237e21b'
1166  class='qb-action-bar-block'
1167  data-target='website'
1168  data-plan='2'
1169  data-storeid='16814029'
1170  
1171    data-settings='{&quot;message&quot;:{&quot;borderWidth&quot;:{&quot;top&quot;:0,&quot;right&quot;:0,&quot;bottom&quot;:0,&quot;left&quot;:0},&quot;borderRadius&quot;:{&quot;topLeft&quot;:0,&quot;topRight&quot;:0,&quot;bottomLeft&quot;:0,&quot;bottomRight&quot;:0},&quot;mobile&quot;:{&quot;borderWidth&quot;:{&quot;top&quot;:0,&quot;right&quot;:0,&quot;bottom&quot;:0,&quot;left&quot;:0},&quot;borderRadius&quot;:{&quot;topLeft&quot;:0,&quot;topRight&quot;:0,&quot;bottomLeft&quot;:0,&quot;bottomRight&quot;:0},&quot;scale&quot;:60},&quot;tablet&quot;:{&quot;borderWidth&quot;:{&quot;top&quot;:0,&quot;right&quot;:0,&quot;bottom&quot;:0,&quot;left&quot;:0},&quot;borderRadius&quot;:{&quot;topLeft&quot;:0,&quot;topRight&quot;:0,&quot;bottomLeft&quot;:0,&quot;bottomRight&quot;:0},&quot;scale&quot;:&quot;70&quot;},&quot;text&quot;:&quot;&lt;p&gt;⬅ Back to App Shop&lt;/p&gt;&quot;,&quot;translatedText&quot;:{},&quot;font&quot;:&quot;Montserrat&quot;,&quot;fontWeight&quot;:500,&quot;fontStyle&quot;:&quot;normal&quot;,&quot;scale&quot;:90,&quot;color&quot;:&quot;#008bd8&quot;,&quot;align&quot;:&quot;center&quot;,&quot;borderColor&quot;:&quot;#ffffff&quot;,&quot;borderStyle&quot;:&quot;solid&quot;},&quot;timer&quot;:{&quot;borderWidth&quot;:{},&quot;borderRadius&quot;:{},&quot;section&quot;:{&quot;borderWidth&quot;:{},&quot;borderRadius&quot;:{},&quot;mobile&quot;:{&quot;borderWidth&quot;:{},&quot;borderRadius&quot;:{}},&quot;tablet&quot;:{&quot;borderWidth&quot;:{},&quot;borderRadius&quot;:{}}},&quot;mobile&quot;:{&quot;borderWidth&quot;:{},&quot;borderRadius&quot;:{}},&quot;tablet&quot;:{&quot;borderWidth&quot;:{},&quot;borderRadius&quot;:{}}},&quot;button&quot;:{&quot;hover&quot;:{&quot;textColor&quot;:&quot;&quot;,&quot;backgroundColor&quot;:&quot;&quot;,&quot;borderColor&quot;:&quot;&quot;},&quot;borderRadius&quot;:{&quot;topLeft&quot;:0,&quot;topRight&quot;:0,&quot;bottomLeft&quot;:0,&quot;bottomRight&quot;:0},&quot;borderWidth&quot;:{&quot;top&quot;:0,&quot;right&quot;:0,&quot;bottom&quot;:0,&quot;left&quot;:0},&quot;mobile&quot;:{&quot;borderWidth&quot;:{&quot;top&quot;:0,&quot;right&quot;:0,&quot;bottom&quot;:0,&quot;left&quot;:0},&quot;borderRadius&quot;:{&quot;topLeft&quot;:0,&quot;topRight&quot;:0,&quot;bottomLeft&quot;:0,&quot;bottomRight&quot;:0},&quot;fontSize&quot;:75},&quot;tablet&quot;:{&quot;borderWidth&quot;:{&quot;top&quot;:0,&quot;right&quot;:0,&quot;bottom&quot;:0,&quot;left&quot;:0},&quot;borderRadius&quot;:{&quot;topLeft&quot;:0,&quot;topRight&quot;:0,&quot;bottomLeft&quot;:0,&quot;bottomRight&quot;:0},&quot;fontSize&quot;:75},&quot;text&quot;:&quot;&quot;,&quot;translatedText&quot;:{},&quot;font&quot;:&quot;Lato&quot;,&quot;fontWeight&quot;:500,&quot;fontStyle&quot;:&quot;normal&quot;,&quot;fontSize&quot;:75,&quot;backgroundColor&quot;:&quot;#df65b2&quot;,&quot;backgroundOpacity&quot;:100,&quot;textColor&quot;:&quot;#ffffff&quot;,&quot;style&quot;:&quot;rounded_solid&quot;,&quot;borderStyle&quot;:&quot;solid&quot;,&quot;borderColor&quot;:&quot;#ffffff&quot;,&quot;url&quot;:&quot;/pages/shop-tpso-app&quot;,&quot;openNewWindow&quot;:false},&quot;declineButton&quot;:{&quot;hover&quot;:{}},&quot;preferenceButton&quot;:{&quot;hover&quot;:{}},&quot;cookies&quot;:{&quot;analytics&quot;:{&quot;title&quot;:{},&quot;description&quot;:{}},&quot;marketing&quot;:{&quot;title&quot;:{},&quot;description&quot;:{}},&quot;saleOfData&quot;:{&quot;title&quot;:{},&quot;description&quot;:{}},&quot;preferences&quot;:{&quot;title&quot;:{},&quot;description&quot;:{}},&quot;modalAcceptButton&quot;:{},&quot;modalCancelButton&quot;:{}},&quot;product&quot;:{&quot;id&quot;:null,&quot;title&quot;:null,&quot;handle&quot;:null,&quot;imgUrl&quot;:null},&quot;collection&quot;:{&quot;id&quot;:null,&quot;title&quot;:null,&quot;handle&quot;:null,&quot;imgUrl&quot;:null},&quot;discount&quot;:{&quot;hover&quot;:{&quot;borderColor&quot;:&quot;#f8f181&quot;},&quot;borderRadius&quot;:{&quot;topLeft&quot;:4,&quot;topRight&quot;:4,&quot;bottomLeft&quot;:4,&quot;bottomRight&quot;:4},&quot;borderWidth&quot;:{&quot;top&quot;:1,&quot;right&quot;:1,&quot;bottom&quot;:1,&quot;left&quot;:1},&quot;mobile&quot;:{&quot;borderRadius&quot;:{&quot;topLeft&quot;:4,&quot;topRight&quot;:4,&quot;bottomLeft&quot;:4,&quot;bottomRight&quot;:4},&quot;borderWidth&quot;:{&quot;top&quot;:1,&quot;right&quot;:1,&quot;bottom&quot;:1,&quot;left&quot;:1},&quot;scale&quot;:75},&quot;tablet&quot;:{&quot;borderRadius&quot;:{&quot;topLeft&quot;:4,&quot;topRight&quot;:4,&quot;bottomLeft&quot;:4,&quot;bottomRight&quot;:4},&quot;borderWidth&quot;:{&quot;top&quot;:1,&quot;right&quot;:1,&quot;bottom&quot;:1,&quot;left&quot;:1},&quot;scale&quot;:120},&quot;id&quot;:&quot;&quot;,&quot;code&quot;:&quot;EXAMPLE&quot;,&quot;color&quot;:&quot;#f8f181&quot;,&quot;labelColor&quot;:&quot;#ffffff&quot;,&quot;value&quot;:100,&quot;kind&quot;:&quot;%&quot;,&quot;font&quot;:&quot;Inter&quot;,&quot;fontWeight&quot;:900,&quot;fontStyle&quot;:&quot;normal&quot;,&quot;scale&quot;:100,&quot;codePadding&quot;:8,&quot;
1171codeBackgroundColor&quot;:&quot;#26243700&quot;,&quot;borderColor&quot;:&quot;#f8f181&quot;,&quot;borderStyle&quot;:&quot;solid&quot;},&quot;background&quot;:{&quot;mobile&quot;:{&quot;imageBgUse&quot;:true,&quot;image&quot;:&quot;&quot;,&quot;patternBgUse&quot;:false,&quot;pattern&quot;:&quot;&quot;,&quot;noneUse&quot;:false},&quot;tablet&quot;:{&quot;imageBgUse&quot;:true,&quot;image&quot;:&quot;&quot;,&quot;patternBgUse&quot;:false,&quot;pattern&quot;:&quot;&quot;,&quot;noneUse&quot;:false},&quot;color&quot;:&quot;#ffffff&quot;,&quot;imageBgUse&quot;:false,&quot;image&quot;:&quot;&quot;,&quot;patternBgUse&quot;:false,&quot;pattern&quot;:&quot;&quot;,&quot;opacity&quot;:30,&quot;imagePosition&quot;:&quot;cover&quot;,&quot;noneUse&quot;:false},&quot;border&quot;:{&quot;size&quot;:{&quot;top&quot;:2,&quot;right&quot;:2,&quot;bottom&quot;:2,&quot;left&quot;:2},&quot;borderRadius&quot;:{&quot;topLeft&quot;:10,&quot;topRight&quot;:10,&quot;bottomLeft&quot;:10,&quot;bottomRight&quot;:10},&quot;mobile&quot;:{&quot;borderRadius&quot;:{&quot;topLeft&quot;:0,&quot;topRight&quot;:0,&quot;bottomLeft&quot;:0,&quot;bottomRight&quot;:0},&quot;size&quot;:{&quot;top&quot;:0,&quot;right&quot;:0,&quot;bottom&quot;:0,&quot;left&quot;:0},&quot;horizontalSpace&quot;:18,&quot;verticalSpace&quot;:&quot;10&quot;},&quot;tablet&quot;:{&quot;borderRadius&quot;:{&quot;topLeft&quot;:0,&quot;topRight&quot;:0,&quot;bottomLeft&quot;:0,&quot;bottomRight&quot;:0},&quot;size&quot;:{&quot;top&quot;:0,&quot;right&quot;:0,&quot;bottom&quot;:0,&quot;left&quot;:0},&quot;horizontalSpace&quot;:18,&quot;verticalSpace&quot;:&quot;10&quot;},&quot;color&quot;:&quot;#ff9c27&quot;,&quot;style&quot;:&quot;solid&quot;,&quot;horizontalSpace&quot;:17,&quot;verticalSpace&quot;:&quot;10&quot;},&quot;icons&quot;:{&quot;hover&quot;:{},&quot;borderWidth&quot;:{},&quot;borderRadius&quot;:{},&quot;mobile&quot;:{&quot;borderWidth&quot;:{},&quot;borderRadius&quot;:{}},&quot;tablet&quot;:{&quot;borderWidth&quot;:{},&quot;borderRadius&quot;:{}}},&quot;customSettings&quot;:{&quot;inputsBorderWidth&quot;:{},&quot;inputBorderRadius&quot;:{},&quot;mobile&quot;:{&quot;inputsBorderWidth&quot;:{},&quot;inputBorderRadius&quot;:{}},&quot;tablet&quot;:{&quot;inputsBorderWidth&quot;:{},&quot;inputBorderRadius&quot;:{}},&quot;durationMode&quot;:{},&quot;durationTime&quot;:{},&quot;timerDigitLabel&quot;:{&quot;mobile&quot;:{},&quot;tablet&quot;:{}},&quot;clickAction&quot;:&quot;banner&quot;,&quot;typeId&quot;:2,&quot;messenger&quot;:&quot;whatsApp&quot;,&quot;phone&quot;:null,&quot;messengerUsername&quot;:null,&quot;email&quot;:null,&quot;imageMaxSize&quot;:60,&quot;generalImage&quot;:&quot;&quot;,&quot;countdownType&quot;:&quot;&quot;,&quot;everyDaySpecificShowTime&quot;:[],&quot;shippingCountries&quot;:[]},&quot;scheduling&quot;:{&quot;start&quot;:&quot;immediately&quot;,&quot;end&quot;:&quot;never&quot;,&quot;startDate&quot;:&quot;&quot;,&quot;endDate&quot;:&quot;&quot;,&quot;showCertain&quot;:false,&quot;certainDays&quot;:[],&quot;certainTime&quot;:[0,1439]},&quot;targeting&quot;:{&quot;showOnPages&quot;:{&quot;pages&quot;:[&quot;otherPage&quot;],&quot;customPage&quot;:[&quot;https://www.thephotostick.com/products/thephotostick-quick-click-remote-app-exclusive&quot;,&quot;https://www.thephotostick.com/products/thephotostick-travel-tech-case-app-exclusive&quot;,&quot;https://www.thephotostick.com/products/thephotostick-protective-usb-case-app-exclusive&quot;,&quot;https://www.thephotostick.com/products/thephotostick-keepsafe-pouch-app-exclusive&quot;],&quot;customPageSelect&quot;:&quot;include&quot;,&quot;queryParams&quot;:[],&quot;queryParamsSelect&quot;:&quot;include&quot;},&quot;showVisitors&quot;:{&quot;sources&quot;:[&quot;otherUrl&quot;],&quot;custom&quot;:[],&quot;customSelect&quot;:&quot;include&quot;},&quot;showLocation&quot;:{&quot;filter&quot;:&quot;include&quot;,&quot;countries&quot;:[&quot;ALL&quot;]},&quot;language&quot;:{&quot;isIncluded&quot;:&quot;include&quot;,&quot;languages&quot;:[]},&quot;domains&quot;:[&quot;all&quot;],&quot;choiceDevice&quot;:&quot;showAll&quot;,&quot;choiceOS&quot;:&quot;all&quot;},&quot;closeButton&quot;:{&quot;hover&quot;:{&quot;color&quot;:&quot;&quot;,&quot;borderColor&quot;:&quot;&quot;},&quot;borderWidth&quot;:{&quot;top&quot;:0,&quot;right&quot;:0,&quot;bottom&quot;:0,&quot;left&quot;:0},&quot;borderRadius&quot;:{&quot;topLeft&quot;:0,&quot;topRight&quot;:0,&quot;bottomLeft&quot;:0,&quot;bottomRight&quot;:0},&quot;mobile&quot;:{&quot;borderWidth&quot;:{&quot;top&quot;:0,&quot;right&quot;:0,&quot;bottom&quot;:0,&quot;left&quot;:0},&quot;borderRadius&quot;:{&quot;topLeft&quot;:0,&quot;topRight&quot;:0,&quot;bottomLeft&quot;:0,&quot;bottomRight&quot;:0},&quot;size&quot;:10,&quot;marginTop&quot;:2,&quot;marginRight&quot;:2},&quot;tablet&quot;:{&quot;borderWidth&quot;:{&quot;top&quot;:0,&quot;right&quot;:0,&quot;bottom&quot;:0,&quot;left&quot;:0},&quot;borderRadius&quot;:{&quot;topLeft&quot;:0,&quot;topRight&quot;:0,&quot;bottomLeft&quot;:0,&quot;bottomRight&quot;:0},&quot;size&quot;:10,&quot;marginTop&quot;:2,&quot;marginRight&quot;:2},&quot;close&quot;:false,&quot;size&quot;:10,&quot;marginTop&quot;:2,&quot;marginRight&quot;:2,&quot;borderColor&quot;:&quot;#ffffff&quot;,&quot;borderStyle&quot;:&quot;solid&quot;,&quot;color&quot;:&quot;#ffffff&quot;},&quot;settings&quot;:{&quot;showEvery&quot;:{&quot;each&quot;:5,&quot;unit&quot;:&quot;day&quot;},&quot;mobile&quot;:{},&quot;tablet&quot;:{},&quot;showBar&quot;:&quot;3_percent&quot;,&quot;position&quot;:&quot;header&quot;,&quot;showAfterClosing&quot;:false,&quot;layoutVariant&quot;:&quot;t-b-i&quot;,&quot;barPreset&quot;:&quot;default&quot;,&quot;zIndex&quot;:&quot;90&quot;,&quot;animationText&quot;:&quot;{\&quot;type\&quot;:\&quot;fide\&quot;,\&quot;propObject\&quot;:{\&quot;effect\&quot;:\&quot;fide\&quot;,\&quot;text\&quot;:[\&quot;Example\&quot;]}}&quot;,&quot;animationRepeat&quot;:false,&quot;animationSpeed&quot;:50},&quot;adaptability&quot;:{&quot;font&quot;:{&quot;mobile&quot;:5}},&quot;announcements&quot;:[{&quot;message&quot;:&quot;🎁 Special discount — 50% off all items&quot;,&quot;url&quot;:&quot;/collections/all&quot;,&quot;
1171colorBackground&quot;:&quot;linear-gradient(90deg, rgba(35, 21, 87, 1) 30%, rgba(255, 19, 97, 1) 100%)&quot;,&quot;backgroundImage&quot;:&quot;&quot;,&quot;opacityPercentage&quot;:100,&quot;selectTextAlign&quot;:&quot;center&quot;,&quot;colorText&quot;:&quot;#ffffff&quot;,&quot;scale&quot;:90,&quot;openNewWindow&quot;:false,&quot;borderSize&quot;:0,&quot;colorBorder&quot;:&quot;#000000&quot;,&quot;visible&quot;:true,&quot;patternBgUse&quot;:false,&quot;imageBgUse&quot;:true,&quot;backgroundPattern&quot;:&quot;&quot;,&quot;_id&quot;:&quot;689f9b4ac7858c67d61bc9fa&quot;}],&quot;barType&quot;:&quot;action-bar&quot;,&quot;banners&quot;:[],&quot;template&quot;:&quot;Action Bar — Dreamy Spectrum&quot;,&quot;published&quot;:true,&quot;inTesting&quot;:false}'
1172  
1173  data-block_id='689cf09eab9ff5d8a237e21b'
1174  data-type_bar=''
1175  
1176  style="height:max-content;width:100%;"
1177  
1178>
1179  
1180    <div class="qb-skeleton" style="display: grid;
1181      border-width: 2px 2px 2px 2px;
1182      border-style:solid;
1183      overflow: hidden;
1184      border-color:#ff9c27;
1185      border-radius: 10px 10px 10px 10px;
1186      background: #ffffff;
1187    
1188      grid-template-columns: 80% 20%;
1189    
1190      padding: 10px 17px;">
1191      <div class="qb-message qb-skeleton-item" style="font-size: 1.53em;color: #008bd8;">
1192        <p style='line-height: 1; margin: 0; padding: 5px; text-align: center'><p>⬅ Back to App Shop</p></p>
1193      </div>
1194      
1195      <div class="qb-button qb-skeleton-item"
1196           style="color:#ffffff;font-size:1.275em;display:flex;justify-content:right;align-items:center">
1197        <a href="#"
1198          style="padding: 5px 12px;background:#df65b2;border: 1px solid #ffffff;text-decoration:none;color:#ffffff;"></a>
1199      </div>
1200    </div>
1201  
1202</div>
1203
1204  <style>#qb-689cf09eab9ff5d8a237e21b {
1205          display: block;
1206          filter: blur(4px);
1207      }</style>
1208
1209
1210<script>
1211  (() => {
1212    const blockBar = document.querySelector('#qb-' + '689cf09eab9ff5d8a237e21b');
1213    const settingsObj = JSON.parse(blockBar.dataset.settings);
1214    if ('' !== 'section') {
1215      settingsObj.product.imgUrl = '' || '';
1216      settingsObj.product.handle = '' || '';
1217      settingsObj.collection.imgUrl = '' || '';
1218      settingsObj.collection.handle = '' || '';
1219    }
1220    blockBar.dataset.settings = JSON.stringify(settingsObj);
1221  })()
1222</script>
1222
1223<!-- END app snippet --><!-- BEGIN app snippet: checkShowBar -->
1224
1225
1226
1227    <style>#qb-689cf09eab9ff5d8a237e21b {
1228            display: none
1229        }</style>
1230
1231
1232
1233    
1233<script>
1234			(() => {
1235				const block = document.querySelector('#qb-689cf09eab9ff5d8a237e21b');
1236				block.dataset.branding = 'false';
1237
1238				const metafieldPage = ["otherPage"];
1239				const metafieldCustomPage = ["https:\/\/www.thephotostick.com\/products\/thephotostick-quick-click-remote-app-exclusive","https:\/\/www.thephotostick.com\/products\/thephotostick-travel-tech-case-app-exclusive","https:\/\/www.thephotostick.com\/products\/thephotostick-protective-usb-case-app-exclusive","https:\/\/www.thephotostick.com\/products\/thephotostick-keepsafe-pouch-app-exclusive"];
1240				const metafieldQueryParams = [];
1241				const metafieldDevice = "showAll";
1242				const metafieldVisitors = ["otherUrl"];
1243				const metafieldVisitorsCustom = [];
1244				const metafieldCountry = ["ALL"];
1245				const metafieldLanguage = [];
1246				const metafieldIsIncluded = "include";
1247				let showByLanguage = true;
1248				const include = !metafieldIsIncluded ? 'include' : metafieldIsIncluded;
1249				const languages = !metafieldLanguage ? [] : metafieldLanguage;
1250				const currentLocale = window?.Shopify?.locale
1251				if (include === 'include' && languages.length > 0) {
1252					showByLanguage = languages.includes(currentLocale);
1253				}
1254				if (include === 'exclude' && languages.length === 0) {
1255					showByLanguage = false;
1256				}
1257				if (include === 'exclude' && languages.length > 0) {
1258					showByLanguage = !languages.includes(currentLocale);
1259				}
1260				const page = metafieldPage || ["homePage", "productPage", "collectionPage", "cartPage", "blog", "otherPage"];
1261				const customPage = metafieldCustomPage || [];
1262				const queryParams = metafieldQueryParams || [];
1263				const device = metafieldDevice || 'showAll';
1264				const visitors = metafieldVisitors || ["facebook", "instagram", "twitter", "google", "pinterest", "otherUrl"];
1265				const customVisitors = metafieldVisitorsCustom || [];
1266				const country = metafieldCountry || ["ALL"];
1267
1268				if (page.length !== 6 || !page.includes('homePage', 'productPage', 'collectionPage', 'cartPage', 'blog', 'otherPage') ||
1269					customPage.length !== 0 || queryParams.length !== 0 || device !== 'showAll' || visitors.length !== 6 ||
1270					!visitors.includes("facebook", "instagram", "twitter", "google", "pinterest", "otherUrl") || customVisitors.length !== 0 ||
1271					country.length !== 1 || !country.includes('ALL') || !showByLanguage) {
1272					const block = document.querySelector('#qb-689cf09eab9ff5d8a237e21b');
1273					block.style.display = 'none';
1274				}
1275			})()
1276    </script>
1276
1277
1278
1279<script>
1280	(() => {
1281		const showAfterClosing = false;
1282		const block = document.querySelector('#qb-689cf09eab9ff5d8a237e21b');
1283		try {
1284			if (window.sessionStorage.getItem(`qb-action-bar-689cf09eab9ff5d8a237e21b-close`) && !showAfterClosing) {
1285				block.style.display = 'none';
1286				block.dataset.is_close_bar_initial = 'true';
1287			} else if (window.localStorage.getItem(`qb-action-bar-689cf09eab9ff5d8a237e21b-close`) && showAfterClosing) {
1288				const viewDate = window.localStorage.getItem(`qb-action-bar-689cf09eab9ff5d8a237e21b-view-date`)
1289					? new Date(window.localStorage.getItem(`qb-action-bar-689cf09eab9ff5d8a237e21b-view-date`))
1290					: null;
1291				const currentDate = new Date();
1292				if (viewDate && viewDate >= currentDate) {
1293					block.style.display = 'none';
1294					block.dataset.is_close_bar_initial = 'true';
1295				} else {
1296					window.localStorage.removeItem(`qb-action-bar-689cf09eab9ff5d8a237e21b-view-date`);
1297					window.localStorage.removeItem(`qb-action-bar-689cf09eab9ff5d8a237e21b-close`);
1298					block.dataset.is_close_bar_initial = 'false';
1299				}
1300			} else {
1301				block.dataset.is_close_bar_initial = 'false';
1302			}
1303		} catch (e) {
1304			block.dataset.is_close_bar_initial = 'false';
1305		}
1306	})()
1307</script>
1307
1308
1309
1310
1311
1312<!-- END app snippet --><!-- BEGIN app snippet: setScript -->
1312<script>
1313  (() => {
1314    const isScript = document.querySelector('#'+'qbActionBarScript');
1315    const extraScript = '';
1316    const extraScriptMarquee = ''
1317    if (!isScript) {
1318      if (extraScript) {
1319        const scriptCarousel = document.createElement('script');
1320        scriptCarousel.setAttribute('src', "");
1321        scriptCarousel.setAttribute('defer', '');
1322        document.body.appendChild(scriptCarousel);
1323      }
1324      if(extraScriptMarquee){
1325        const scriptMarquee = document.createElement('script');
1326        scriptMarquee.setAttribute('src', "");
1327        scriptMarquee.setAttribute('defer', '');
1328        document.body.appendChild(scriptMarquee);
1329      }
1330      const script = document.createElement('script');
1331      script.id = 'qbActionBarScript';
1332      script.setAttribute('src', "https://cdn.shopify.com/extensions/01a0275c-692d-786e-ac26-0da514a772cd/quicky-137/assets/actionBar.js");
1333      script.setAttribute('defer', '');
1334      document.body.appendChild(script);
1335    }
1336  })()
1337</script>
1337
1338<!-- END app snippet --><!-- BEGIN app snippet: commonStyle --><style data-shopify>
1339
1340    #qb-689cf09eab9ff5d8a237e21b > .qb-skeleton {
1341        display: none !important;
1342    }
1343    
1344            @font-face {
1345                font-family: Montserrat;
1346                font-display: swap;
1347                src: url("https://static.devit.software/fonts/Montserrat.woff") format("woff");
1348            }
1349    
1350    
1351            @font-face {
1352                font-family: Lato;
1353                font-display: swap;
1354                src: url("https://static.devit.software/fonts/Lato.woff") format("woff");
1355            }
1356    
1357    #qb-689cf09eab9ff5d8a237e21b .qb-message {
1358    
1359        font-family: Montserrat;
1360    
1361        font-weight: 500;
1362        font-style: normal;
1363    }
1364    #qb-689cf09eab9ff5d8a237e21b .qb-button {
1365    
1366        font-family: Lato;
1367    
1368        font-weight: 500;
1369        font-style: normal;
1370    }
1371
1372.qb-skeleton {font-size:10px;}.qb-skeleton-image{width:60px;height:60px;background-color:grey;border-radius:5px;}.qb-skeleton-multi-announcement{font-size:14px;}
1373@media (max-width:400px){.qb-skeleton{font-size:5px;display:flex !important;align-items:center;flex-direction: column !important;}.qb-skeleton-item:not(:first-child){margin-top:1rem;}.qb-skeleton-stop-war{text-align:center !important;}}
1374@media (min-width: 401px) and (max-width: 615px){.qb-skeleton{font-size:7px;}.qb-skeleton-image{width:40px;height:40px;}}
1375</style>
1376<!-- END app snippet -->
1377</div>
1378
1379<!-- END app block --><!-- BEGIN app block: shopify://apps/kaching-bundles/blocks/app-embed-block/6c637362-a106-4a32-94ac-94dcfd68cdb8 -->
1380<!-- Kaching Bundles App Embed -->
1381
1382<!-- BEGIN app snippet: app-embed-content -->
1383
1384
1385
1386
1387
1388
1389
1390<script>
1391  // Prevent duplicate initialization if both app embeds are enabled
1392  if (window.kachingBundlesAppEmbedLoaded) {
1393    console.warn('[Kaching Bundles] Multiple app embed blocks detected. Please disable one of them. Skipping duplicate initialization.');
1394  } else {
1395    window.kachingBundlesAppEmbedLoaded = true;
1396    window.kachingBundlesEnabled = true;
1397    window.kachingBundlesInitialized = false;
1398
1399    // Allow calling kachingBundlesInitialize before the script is loaded
1400    (() => {
1401      let shouldInitialize = false;
1402      let realInitialize = null;
1403
1404      window.kachingBundlesInitialize = () => {
1405        if (realInitialize) {
1406          realInitialize();
1407        } else {
1408          shouldInitialize = true;
1409        }
1410      };
1411
1412      Object.defineProperty(window, '__kachingBundlesInitializeInternal', {
1413        set(fn) {
1414          realInitialize = fn;
1415          if (shouldInitialize) {
1416            shouldInitialize = false;
1417            fn();
1418          }
1419        },
1420        get() {
1421          return realInitialize;
1422        }
1423      });
1424    })();
1425  }
1426</script>
1426
1427
1428
1429
1430<script id="kaching-bundles-config" type="application/json">
1431  {
1432    "shopifyDomain": "thephotostick.myshopify.com",
1433    "moneyFormat": "${{amount}}",
1434    "locale": "en",
1435    "liquidLocale": "en",
1436    "country": "AM",
1437    "currencyRate": 1,
1438    "marketCurrencyCode": "USD",
1439    "marketId": 1259536520,
1440    "productId": null,
1441    "storefrontAccessToken": "bfd27b5799283a301c7d3f312704227a",
1442    "includeSellingPlans": true,
1443    "includeAvailableQuantity": true,
1444    "customApiHost": null,
1445    "keepQuantityInput": false,
1446    "ignoreDeselect": false,
1447    "ignoreUnitPrice": false,
1448    "requireCustomerLogin": false,
1449    "abTestsRunning": false,
1450    "webPixel": true,
1451    "b2bCustomer": false,
1452    "isLoggedIn": false,
1453    "isDeprecatedAppEmbed": false,
1454    "preview": false,
1455    "defaultTranslations": {
1456      "system.out_of_stock": "There\u0026#39;s not enough items in our stock, please select smaller bundle.",
1457      "system.invalid_variant": "Sorry, this is not currently available.",
1458      "system.unavailable_option_value": "Unavailable",
1459      "system.confirm": "Confirm",
1460      "system.cancel": "Cancel",
1461      "system.free": "FREE",
1462      "system.search": "Search",
1463      "system.sort_by": "Sort by",
1464      "system.sort_relevance": "Relevance",
1465      "system.sort_newest_first": "Newest first",
1466      "system.sort_price_low_to_high": "Price: Low → High",
1467      "system.sort_price_high_to_low": "Price: High → Low",
1468      "system.no_results_found": "No results found",
1469      "system.no_results_description": "We can’t find any item matching your search.",
1470      "system.clear_search": "Clear search",
1471      "system.no_products_available": "No products available",
1472      "system.letters_only": "Only letters are allowed.",
1473      "system.numbers_only": "Only numbers are allowed.",
1474      "system.select_variant_alert": "Please select a variant.",
1475      "system.select_variant_placeholder": "Select",
1476      "system.personalisation_required_alert": "Please add personalisation for every item to continue.",
1477      "system.quantity": "Quantity",
1478      "system.subscription_plan": "Subscription plan",
1479      "system.remove": "Remove",
1480      "system.original_price": "Original price:",
1481      "system.price": "Price:"
1482    },
1483    "customSelectors": {
1484      "quantity": null,
1485      "addToCartButton": null,
1486      "variantPicker": null,
1487      "price": null,
1488      "priceCompare": null,
1489      "label": null
1490    },
1491    "shopCustomStyles": "",
1492    "brandColors": {"error":"#D72C2C","border":"#FF9C274D","overlay":"#000000","badgeText":"#FFFFFF","primaryText":"#171717","primaryAccent":"#FF9C27","secondaryText":"#555555","badgeBackgroun
1492d":"#FF9C27","primaryAccentText":"#FFFFFF","primaryBackground":"#FFFFFF","secondaryBackground":"#F0F0F0"},
1493    "featureFlags": {"cart_change_response_rewrite":false,"cart_interceptor_dedupe_disabled":false,"cart_interceptor_json_encoding":false,"debug_cart_add":false,"disable_nested_cart_lines":false,"early_fetch_override":false,"hide_missing_variants":false,"initialize_with_form_variant":false,"intercept_cart_request":false,"legacy_saved_percentage":false,"native_swatches_disabled":false,"observe_external_selling_plan":false,"observe_form_selling_plan":false,"percentage_cents_rounding_workaround":false,"pos_extension":false,"preserve_variant_selections":false,"price_rounding_v2":false,"propagate_line_properties":false,"propagate_picker_option_changes":false,"reinitialize_morphed_placeholders":false,"remove_variant_change_delay":false,"split_bxgy_items":false,"storefront_metaobjects":false,"variant_images":false}
1494
1495  }
1496</script>
1496
1497
1498<!-- BEGIN app snippet: translations -->
1499
1500
1501  
1502
1503<!-- END app snippet -->
1504
1505
1506
1507
1508  
1509  
1510
1511  <link rel="modulepreload" href="https://cdn.shopify.com/extensions/01a0f7cd-b84c-7ecc-9b44-143e27796d6f/kaching-bundles-2014/assets/kaching-bundles.js" crossorigin="anonymous" fetchpriority="high">
1512  
1513  
1513<script type="module" src="https://cdn.shopify.com/extensions/01a0f7cd-b84c-7ecc-9b44-143e27796d6f/kaching-bundles-2014/assets/loader.js" crossorigin="anonymous" fetchpriority="high"></script>
1513
1514  <link rel="stylesheet" href="https://cdn.shopify.com/extensions/01a0f7cd-b84c-7ecc-9b44-143e27796d6f/kaching-bundles-2014/assets/kaching-bundles.css" media="print" onload="this.media='all'" fetchpriority="high">
1515
1516  <style>
1517    .kaching-bundles__block {
1518      display: none;
1519    }
1520
1521    .kaching-bundles-sticky-atc {
1522      display: none;
1523    }
1524  </style>
1525
1526
1527
1528<!-- END app snippet -->
1529
1530<!-- Kaching Bundles App Embed End -->
1531
1532
1533<!-- END app block --><link href="https://cdn.shopify.com/extensions/01a0f2cc-d857-741a-87d6-7af123479399/country-restriction-676/assets/afcr-theme-style.css" rel="stylesheet" type="text/css" media="all">
1534<script src="https://cdn.shopify.com/extensions/01a0f6b7-00d2-7c68-a7d0-1cddb9b4bd1d/v2.14.152/assets/visitor-label-script.js" type="text/javascript" defer="defer"></script>
vendor: 1 bytes, line 1534
1534
1535<script src="https://cdn.shopify.com/extensions/01a0ef11-ed59-7a1a-9dac-8835710c3c5e/applovin-shop-integration-98/assets/app-embed.js" type="text/javascript" defer="defer"></script>
vendor: 1 bytes, line 1535
1535
1536<script src="https://cdn.shopify.com/extensions/01a014da-94f2-7b4b-a112-bb52e724a7a8/announcement-bar-with-slider-90/assets/ws-announcement.js" type="text/javascript" defer="defer"></script>
1536
1537<link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
1538<script>(function(){if ("sendBeacon" in navigator && "performance" in window) {try {var session_token_from_headers = performance.getEntriesByType('navigation')[0].serverTiming.find(x => x.name == '_s').description;} catch {var session_token_from_headers = undefined;}var session_cookie_matches = document.cookie.match(/_shopify_s=([^;]*)/);var session_token_from_cookie = session_cookie_matches && session_cookie_matches.length === 2 ? session_cookie_matches[1] : "";var session_token = session_token_from_headers || session_token_from_cookie || "";function handle_abandonment_event(e) {var entries = performance.getEntries().filter(function(entry) {return /monorail-edge.shopifysvc.com/.test(entry.name);});if (!window.abandonment_tracked && entries.length === 0) {window.abandonment_tracked = true;var currentMs = Date.now();var navigation_start = performance.timing.navigationStart;var payload = {shop_id: 16814029,url: window.location.href,navigation_start,duration: currentMs - navigation_start,session_token,page_type: "search"};window.navigator.sendBeacon("https://monorail-edge.shopifysvc.com/v1/produce", JSON.stringify({schema_id: "online_store_buyer_site_abandonment/1.1",payload: payload,metadata: {event_created_at_ms: currentMs,event_sent_at_ms: currentMs}}));}}window.addEventListener('pagehide', handle_abandonment_event);}}());</script>
vendor: 1 bytes, line 1538
1538
1539<script>
1540  window.__TREKKIE_SHIM_QUEUE = window.__TREKKIE_SHIM_QUEUE || [];
1541</script>
vendor: 1 bytes, line 1541
1541
1542<script>(function(){var wpmLoader=function(){"use strict";var e=/Googlebot|Storebot-Google|bingbot|Baiduspider|YandexBot|DuckDuckBot|Slurp|facebookexternalhit|Twitterbot|LinkedInBot|Applebot|AdsBot-Google|Mediapartners-Google|APIs-Google|PetalBot|SemrushBot|AhrefsBot|MJ12bot|DotBot|Acunetix|PerplexityBot|Perplexity-User/i,t=/bytedance/i;function i(){try{var e=document.cookie;if(!e||"string"!=typeof e)return;for(var t=0,i=e.split(";");t<i.length;t++){var n=i[t],r=n.indexOf("=");if(-1!==r){var o=n.slice(0,r).trim();if(o){var a=void 0;try{a=decodeURIComponent(o)}catch(e){a=o}if("_shopify_s"===a){var d=n.slice(r+1).trim();try{return decodeURIComponent(d)}catch(e){return d}}}}}return}catch(e){return}}function n(e){try{"undefined"!=typeof console&&"function"==typeof console.warn&&console.warn(e)}catch(e){}}function r(e,t){return"string"==typeof e&&e.length>0&&e.length<=t?e:void 0}function o(e){var t;switch(null==(t=null==e?void 0:e.navigation)?void 0:t.type){case 0:return"navigate";case 1:return"reload";case 2:return"back_forward";default:return}}function a(){var e,t,i;try{var n=null==(i=null==(t=null==(e=self.ShopifyAnalytics)?void 0:e.lib)?void 0:t.trekkie)?void 0:i.state;return"awaiting-consent"===n||"initialized"===n?n:void 0}catch(e){return}}return function(d,s,u,l){var c=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{};try{var p=c.trekkieShim;!0!==p&&"true"!==p||null!=window.__TREKKIE_SHIM_QUEUE||(window.__TREKKIE_SHIM_QUEUE=[])}catch(e){}var f,v,h,y,g=(v=(f={modern:/Edge?\/(1{2}[4-9]|1[2-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Firefox\/(1{2}[4-9]|1[2-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Chrom(ium|e)\/(9{2}|\d{3,})\.\d+(\.\d+|)|(Maci|X1{2}).+ Version\/(15\.\d+|(1[6-9]|[2-9]\d|\d{3,})\.\d+)([,.]\d+|)( \(\w+\)|)( Mobile\/\w+|) Safari\/|Chrome.+OPR\/(9{2}|\d{3,})\.\d+\.\d+|(CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS|CPU iPad OS)[ +]+(15[._]\d+|(1[6-9]|[2-9]\d|\d{3,})[._]\d+)([._]\d+|)|Android:?[ /-](14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})(\.\d+|)(\.\d+|)|Android.+Firefox\/(15\d|1[6-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+Chrom(ium|e)\/(14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|SamsungBrowser\/([2-9]\d|\d{3,})\.\d+/,legacy:/Edge?\/(1[6-9]|[2-9]\d|\d{3,})\.\d+(\.\d+|)|Firefox\/(5[4-9]|[6-9]\d|\d{3,})\.\d+(\.\d+|)|Chrom(ium|e)\/(5[1-9]|[6-9]\d|\d{3,})\.\d+(\.\d+|)([\d.]+$|.*Safari\/(?![\d.]+ Edge\/[\d.]+$))|(Maci|X1{2}).+ Version\/(10\.\d+|(1[1-9]|[2-9]\d|\d{3,})\.\d+)([,.]\d+|)( \(\w+\)|)( Mobile\/\w+|) Safari\/|Chrome.+OPR\/(3[89]|[4-9]\d|\d{3,})\.\d+\.\d+|(CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS|CPU iPad OS)[ +]+(10[._]\d+|(1[1-9]|[2-9]\d|\d{3,})[._]\d+)([._]\d+|)|Android:?[ /-](14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})(\.\d+|)(\.\d+|)|Mobile Safari.+OPR\/([89]\d|\d{3,})\.\d+\.\d+|Android.+Firefox\/(15\d|1[6-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+Chrom(ium|e)\/(14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+(UC? ?Browser|UCWEB|U3)[ /]?(15\.([5-9]|\d{2,})|(1[6-9]|[2-9]\d|\d{3,})\.\d+)\.\d+|SamsungBrowser\/(5\.\d+|([6-9]|\d{2,})\.\d+)|Android.+MQ{2}Browser\/(14(\.(9|\d{2,})|)|(1[5-9]|[2-9]\d|\d{3,})(\.\d+|))(\.\d+|)|K[Aa][Ii]OS\/(3\.\d+|([4-9]|\d{2,})\.\d+)(\.\d+|)/}).modern,h=f.legacy,(y=navigator.userAgent).match(e)?"bot":y.match(v)?"modern":y.match(h)?"legacy":y.match(t)?"bot":"unknown"),m=function(e){var t,i,n=r(e,128);try{var a=window.performance,d=null==(t=null==a?void 0:a.getEntriesByType)?void 0:t.call(a,"navigation")[0];if(!d)return{requestId:n,navigationType:o(a)};var s="type"in d?r(d.type,64):void 0,u="serverTiming"in d&&Array.isArray(d.serverTiming)?d.serverTiming:[];return{requestId:null!=n?n:r(null==(i=u.find(function(e){return"requestID"===e.name}))?void 0:i.description,128),navigationType:s}}catch(e){return{requestId:n}}}(c.requestId),w=function(e){var t=e.version,r=e.browserTarget,o=e.surface,a=e.shopId,d=e.monorailEndpoint,s=window.location.href;return{emit:function(e){var u=e.status,l=e.errorMsg,c=e.failureReason,p=e.useKeepaliveFallback,f=void 0!==p&&p,v=e.navigationType,h=e.pagehidePersisted,y=e.requestId,g=e.trekkieState;if(d){var m,w;try{var b=(new Date).getTime();m=JSON.stringify({metadata:{event_sent_at_ms:b},events:[{schema_id:"web_pixels_manager_load/3.3",payload:{version:t,bundle_target:r,page_url:s,status:u,surface:o,error_msg:l,failure_reason:c,navigation_type:v,pagehide_persisted:h,request_id:y,trekkie_state:g,shop_id:a,visit_token:i()},metadata:{event_created_at_ms:b}}]})}catch(e){return}try{if("function"==typeof window.navigator.sendBeacon&&-1===(w=window.navigator.userAgent).indexOf("iPhone; CPU iPhone OS 12_")&&-1===w.indexOf("iPad; CPU OS 12_")&&-1===w.indexOf("iPod touch; CPU iPhone OS 12_")&&window.navigator.sendBeacon.bind(window.navigator)(d,m))return}catch(e){}if(f)try{"function"==typeof window.fetch&&window.fetch(d,{method:"POST",headers:{"Content-Type":"text/plain"},body:m,keepalive:!0}
1542).catch(function(){})}catch(e){}else try{var _=new XMLHttpRequest;_.open("POST",d,!0),_.setRequestHeader("Content-Type","text/plain"),_.send(m)}catch(e){n("[Web Pixels Manager] Got an unhandled error while logging to Monorail.")}}else n("[Web Pixels Manager] No Monorail endpoint provided, skipping logging.")}}}({version:u,browserTarget:g,surface:d.surface,shopId:d.shopId,monorailEndpoint:d.monorailEndpoint});if(Boolean(null==(_=null==(b=window.Shopify)?void 0:b.analytics)?void 0:_.replayQueue))w.emit({status:"setup-skipped",errorMsg:"replay queue already initialized."});else{var b,_;w.emit({status:"setup-started"}),window.Shopify=window.Shopify||{};var S=window.Shopify;S.analytics=S.analytics||{};var P=S.analytics;P.replayQueue=[],P.publish=function(e,t,i){return P.replayQueue.push([e,t,i]),!0};try{self.performance.mark("wpm:start")}catch(e){}var k,C="modern"===g?"modern":"legacy",E=(null!=l?l:{modern:"",legacy:""})[C],I=[(k={baseUrl:s,hashVersion:u,buildTarget:C}).baseUrl,"/wpm","/b",k.hashVersion,"modern"===k.buildTarget?"m":"l",".js"].join(""),O=!1,T=!1;try{c.browserTarget=g,function(){O=!0;try{window.addEventListener("pagehide",M)}catch(e){O=!1}}(),R(function(){try{R(x)}catch(e){D(e)}}),w.emit({status:"loading",requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()})}catch(e){D(e)}}function U(){var e;if(q(),!function(){var e,t;return Boolean(null==(t=null==(e=window.Shopify)?void 0:e.analytics)?void 0:t.initialized)}()){var t,i,n;try{if("function"!=typeof(null==(e=window.webPixelsManager)?void 0:e.init))return void A();if(!(null!==(n=i=t=window.webPixelsManager.init(d))&&"function"!=typeof n&&Object(n)===n&&"publish"in i&&"function"==typeof i.publish&&"publishCustomEvent"in i&&"function"==typeof i.publishCustomEvent&&"visitor"in i&&"function"==typeof i.visitor))return void A()}catch(e){return void A(e)}var r=window.Shopify.analytics;r.replayQueue.forEach(function(e){var i=e[0],n=e[1],r=e[2];t.publishCustomEvent(i,n,r)}),r.replayQueue=[],r.publish=t.publishCustomEvent,r.visitor=t.visitor,r.initialized=!0}}function A(e){B("manager_api_unavailable",void 0===e?void 0:Q(e))}function x(){B("script_load_failed","".concat(I," has failed to load"))}function B(e,t){T||(T=!0,q(),w.emit({status:"failed",errorMsg:t,failureReason:e,requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()}))}function M(e){O&&(q(),w.emit({status:"pagehide-while-loading",useKeepaliveFallback:!0,pagehidePersisted:e.persisted,requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()}))}function q(){O=!1;try{window.removeEventListener("pagehide",M)}catch(e){}}function R(e){var t;!function(e){var t=e.src,i=e.async,n=void 0===i||i,r=e.onload,o=e.onerror,a=e.sri,d=e.scriptDataAttributes,s=void 0===d?{}:d,u=document.createElement("script"),l=document.querySelector("head"),c=document.querySelector("body");if(u.async=n,u.src=t,a&&(u.integrity=a,u.crossOrigin="anonymous"),s)for(var p in s)if(Object.prototype.hasOwnProperty.call(s,p))try{u.dataset[p]=String(s[p])}catch(e){}if(r&&u.addEventListener("load",r),o&&u.addEventListener("error",o),l)l.appendChild(u);else{if(!c)throw new Error("Did not find a head or body element to append the script");c.appendChild(u)}}({src:I,async:!0,onload:U,onerror:e,sri:(t=E,"string"==typeof t&&/^sha384-[A-Za-z0-9+/=]+$/.test(t)?E:""),scriptDataAttributes:c})}function D(e){B("script_append_failed",Q(e))}function Q(e){return e instanceof Error?e.message:"Unknown error"}}}();wpmLoader({shopId: 16814029,storefrontBaseUrl: "https://www.thephotostick.com",extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint: "https://www.thephotostick.com/.well-known/shopify/monorail/unstable/produce_batch",surface: "storefront-renderer",enabledBetaFlags: ["4c64608a","16072cab","8450a54b","7ee89bf1"],webPixelsConfigList: [{"id":"2867724424","configuration":"{\"accountID\":\"abconvert\",\"shopID\":\"thephotostick.myshopify.com\",\"debug\":\"false\",\"apiEndpoint\":\"https:\\\/\\\/app.abconvert.io\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"54eb69ada60c4e271588cac2428772c3","type":"APP","apiClientId":11583619073,"privacyPurposes":["SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"}
1542,{"id":"1753645192","configuration":"{\"projectId\":\"vt5ci30j4z\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"d8a2bb2ccbb513dc8e8b6937f4b8033e","type":"APP","apiClientId":240074326017,"privacyPurposes":[],"capabilities":["advanced_dom_events"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_personal_data"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"id":"1722941576","configuration":"{\"accountID\":\"VDt99H\",\"webPixelConfig\":\"eyJlbmFibGVBZGRlZFRvQ2FydEV2ZW50cyI6IHRydWV9\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"c63c5b72c8d77be5f2d27d14c081da38","type":"APP","apiClientId":123074,"privacyPurposes":["ANALYTICS","MARKETING"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized","enabledFlags":["9a3ed68a"]},{"id":"1438679176","configuration":"{\"pixelCode\":\"D4FPSHRC77U5N1GROPQG\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"22e92c2ad45662f435e4801458fb78cc","type":"APP","apiClientId":4383523,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":[]},"dataSharingState":"optimized"},{"id":"1300627592","configuration":"{\"appProxyPath\":\"\/apps\/pagefly\",\"analyticsEndpoint\":\"https:\/\/analytics-v1.pagefly.io\/analytics-v2\/events\",\"focusDuration\":\"3\",\"enableAdvancedTracking\":\"true\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"1e023fb0c721518c0dce4129e4d87a86","type":"APP","apiClientId":1743893,"privacyPurposes":["ANALYTICS","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_personal_data"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"1165983880","configuration":"{\"shopId\":\"thephotostick.myshopify.com\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"7093dff47f098f6de2afb75b62011ebe","type":"APP","apiClientId":2753413,"privacyPurposes":["ANALYTICS","MARKETING"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"1090879624","configuration":"{\"shopifyDomain\":\"thephotostick.myshopify.com\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"14b26290829f755f27eefbf196eb8024","type":"APP","apiClientId":2935586817,"privacyPurposes":[],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_email","read_customer_personal_data"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"id":"895189128","configuration":"{\"eventKey\":\"c958c4cb-9164-4dd4-a2a6-6311b480d53d\",\"name\":\"offline_thephotostick.myshopify.com - Axon Pixel\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"4a5dfd2e28427774549854cee30cb444","type":"APP","apiClientId":256560922625,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"711884936","configuration":"{\"shop\":\"thephotostick.myshopify.com\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"8191b3afdf35502386f815b4700e2fd8","type":"APP","apiClientId":3738181,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_name","read_customer_personal_data"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"684720264","configuration":"{\"pixel_id\":\"1413319306042591\",\"pixel_type\":\"facebook_pixel\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"96420dbe9ea96c426a1b7f364f977719","type":"APP","apiClientId":2329312,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized","enabledFlags":["9a3ed68a"]},{"id":"584122504","configuration":"{\"tagID\":\"2614441559962\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"7ae565e198624b39e0856d352b9a6b4c","type":"APP","apiClientId":3009811,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":[]},"dataSharingState":"optimized"},{"id":"477167752","configuration":"{\"config\":\"{\\\"pixel_id\\\":\\\"GT-P8Z9KGF\\\",\\\"target_country\\\":\\\"US\\\",\\\"gtag_events\\\":[{\\\"type\\\":\\\"purchase\\\",\\\"action_label\\\":\\\"MC-R2GFEVLLEV\\\"},{\\\"type\\\":\\\"page_view\\\",\\\"action_label\\\":\\\"MC-R2GFEVLLEV\\\"},{\\\"type\\\":\\\"view_item\\\",\\\"action_label\\\":\\\"MC-R2GFEVLLEV\\\"}],\\\"enable_monitoring_mode\\\":false}\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"a3321ca85cf5aaf6b57585fcd8d67b3a","type":"APP","apiClientId":1780363,"privacyPurposes":[],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized","enabledFlags":["9a3ed68a"]},{"id":"447217800","configuration":"{\"myshopifyDomain\":\"thephotostick.myshopify.com\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"23b97d18e2aa74363140dc29c9284e87","type":"APP","apiClientId":2775569,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_phone","read_customer_personal_data"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"34242696","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"1","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"name":"Buy With Prime Pixel","dataSharingAdjustments":{"protectedCustomerApprovalScopes":[],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"48300168","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"2","type":"CUSTOM","privacyPurposes":[],"name":"EasyTag - GTM","dataSharingAdjustments":{"protectedCustomerApprovalScopes":[],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"}
1542,{"id":"103350408","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"5","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"name":"FF Conv Pixel","dataSharingAdjustments":{"protectedCustomerApprovalScopes":[],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"108429448","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"1","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"name":"Retention","dataSharingAdjustments":{"protectedCustomerApprovalScopes":[],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"shopify-app-pixel","configuration":"{}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"0530","apiClientId":"shopify-pixel","type":"APP","privacyPurposes":["ANALYTICS","MARKETING"]},{"id":"shopify-custom-pixel","eventPayloadVersion":"v1","runtimeContext":"LAX","scriptVersion":"0530","apiClientId":"shopify-pixel","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING"]}],isMerchantRequest: false,initData: {"shop":{"name":"ThePhotoStick","paymentSettings":{"currencyCode":"USD"},"myshopifyDomain":"thephotostick.myshopify.com","countryCode":"US","storefrontUrl":"https:\/\/www.thephotostick.com"},"customer":null,"cart":null,"checkout":null,"productVariants":[],"products":[],"purchasingCompany":null},},"https://www.thephotostick.com/cdn","5982071ew7ea472e3p69b68784m2150dfea",{"modern":"","legacy":""},{"trekkieShim":true,"agentContext":true,"apiClientId":"580111","facebookCapiEnabled":"true","themeId":"148984823944","themeStoreId":"2412","themePublished":"true","eventMetadataId":"7030a0d6-1c86-4cff-b835-91cc3d4656e5","pageType":"searchresults","shopId":"16814029","storefrontBaseUrl":"https:\/\/www.thephotostick.com","extensionBaseUrl":"https:\/\/extensions.shopifycdn.com\/cdn\/shopifycloud\/web-pixels-manager","surface":"storefront-renderer","enabledBetaFlags":"[\"4c64608a\", \"16072cab\", \"8450a54b\", \"7ee89bf1\"]","isMerchantRequest":"false","hashVersion":"5982071ew7ea472e3p69b68784m2150dfea","publish":"custom","events":"[[\"page_viewed\",{}],[\"search_submitted\",{\"searchResult\":{\"query\":\"\",\"productVariants\":[]}}]]"});})();</script>
1542<script>
1543  window.ShopifyAnalytics = window.ShopifyAnalytics || {};
1544  window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {};
1545  window.ShopifyAnalytics.meta.currency = 'USD';
1546  var meta = {"products":[],"page":{"pageType":"searchresults","requestId":"6b11677c-4102-4b54-8740-3b0f3047f543-1790864125"}};
1547  for (var attr in meta) {
1548    window.ShopifyAnalytics.meta[attr] = meta[attr];
1549  }
1550</script>
vendor: 1 bytes, line 1550
1550
1551<script class="analytics">
1552  (function () {
1553    var customDocumentWrite = function(content) {
1554      var jquery = null;
1555
1556      if (window.jQuery) {
1557        jquery = window.jQuery;
1558      } else if (window.Checkout && window.Checkout.$) {
1559        jquery = window.Checkout.$;
1560      }
1561
1562      if (jquery) {
1563        jquery('body').append(content);
1564      }
1565    };
1566
1567    var hasLoggedConversion = function(token) {
1568      if (token) {
1569        return document.cookie.indexOf('loggedConversion=' + token) !== -1;
1570      }
1571      return false;
1572    }
1573
1574    var setCookieIfConversion = function(token) {
1575      if (token) {
1576        var twoMonthsFromNow = new Date(Date.now());
1577        twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2);
1578
1579        document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow;
1580      }
1581    }
1582
1583    var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || [];
1584    window.ShopifyAnalytics.lib.trekkie = window.trekkie;
1585    if (trekkie.integrations) {
1586      return;
1587    }
1588    trekkie.methods = [
1589      'identify',
1590      'page',
1591      'ready',
1592      'track',
1593      'trackForm',
1594      'trackLink'
1595    ];
1596    trekkie.factory = function(method) {
1597      return function() {
1598        var args = Array.prototype.slice.call(arguments);
1599        args.unshift(method);
1600        trekkie.push(args);
1601        if (method == 'track' || method == 'page') {
1602          var pageUrl;
1603          try {
1604            pageUrl = window.location.href;
1605          } catch (e) {}
1606          var pageReferrer;
1607          try {
1608            pageReferrer = document.referrer;
1609          } catch (e) {}
1610          try {
1611            if (window.__TREKKIE_SHIM_QUEUE == null) {
1612              window.__TREKKIE_SHIM_QUEUE = [];
1613            }
1614            window.__TREKKIE_SHIM_QUEUE.push({
1615              from: 'trekkie-stub',
1616              method: method,
1617              args: args.slice(1),
1618              pageContext: {
1619                url: pageUrl,
1620                referrer: pageReferrer
1621              }
1622            });
1623          } catch (e) {
1624            // no-op
1625          }
1626        }
1627        return trekkie;
1628      };
1629    };
1630    for (var i = 0; i < trekkie.methods.length; i++) {
1631      var key = trekkie.methods[i];
1632      trekkie[key] = trekkie.factory(key);
1633    }
1634    trekkie.load = function(config) {
1635      trekkie.config = config || {};
1636      trekkie.config.initialDocumentCookie = document.cookie;
1637      var first = document.getElementsByTagName('script')[0];
1638var script = document.createElement('script');
1639script.type = 'text/javascript';
1640script.onerror = function(e) {
1641  var scriptFallback = document.createElement('script');
1642  scriptFallback.type = 'text/javascript';
1643  scriptFallback.onerror = function(error) {
1644          var Monorail = {
1645      produce: function produce(monorailDomain, schemaId, payload) {
1646        var currentMs = new Date().getTime();
1647        var event = {
1648          schema_id: schemaId,
1649          payload: payload,
1650          metadata: {
1651            event_created_at_ms: currentMs,
1652            event_sent_at_ms: currentMs
1653          }
1654        };
1655        return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event));
1656      },
1657      sendRequest: function sendRequest(endpointUrl, payload) {
1658        // Try the sendBeacon API
1659        if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) {
1660          var blobData = new window.Blob([payload], {
1661            type: 'text/plain'
1662          });
1663
1664          if (window.navigator.sendBeacon(endpointUrl, blobData)) {
1665            return true;
1666          } // sendBeacon was not successful
1667
1668        } // XHR beacon
1669
1670        var xhr = new XMLHttpRequest();
1671
1672        try {
1673          xhr.open('POST', endpointUrl);
1674          xhr.setRequestHeader('Content-Type', 'text/plain');
1675          xhr.send(payload);
1676        } catch (e) {
1677          console.log(e);
1678        }
1679
1680        return false;
1681      },
1682      isIos12: function isIos12() {
1683        return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1;
1684      }
1685    };
1686    Monorail.produce('monorail-edge.shopifysvc.com',
1687      'trekkie_storefront_load_errors/1.1',
1688      {shop_id: 16814029,
1689      theme_id: 148984823944,
1690      app_name: "storefront",
1691      context_url: window.location.href,
1692      source_url: "//www.thephotostick.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js"});
1693
1694  };
1695  scriptFallback.async = true;
1696  scriptFallback.src = '//www.thephotostick.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js';
1697  first.parentNode.insertBefore(scriptFallback, first);
1698};
1699script.async = true;
1700script.src = '//www.thephotostick.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js';
1701first.parentNode.insertBefore(script, first);
1702
1703    };
1704    trekkie.load(
1705      {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":16814029,"isMerchantRequest":null,"themeId":148984823944,"themeCityHash":"14600691295094039864","contentLanguage":"en","currency":"USD","eventMetadataId":"7030a0d6-1c86-4cff-b835-91cc3d4656e5"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain","enabledBetaFlags":["764d78cb","8450a54b","7ee89bf1","4c64608a"]},"Session Attribution":{},"S2S":{"facebookCapiEnabled":true,"source":"trekkie-storefront-renderer","apiClientId":580111}}
1706    );
1707
1708    var loaded = false;
1709    trekkie.ready(function() {
1710      if (loaded) return;
1711      loaded = true;
1712
1713      window.ShopifyAnalytics.lib = window.trekkie;
1714
1715      var originalDocumentWrite = document.write;
1716      document.write = customDocumentWrite;
1717      try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {};
1718      document.write = originalDocumentWrite;
1719
1720      var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/)
1721      var token = match? match[1]: undefined;
1722      if (!hasLoggedConversion(token)) {
1723        setCookieIfConversion(token);
1724        window.ShopifyAnalytics.lib.track("Performed Search",{"query":null},undefined,undefined,{"shopifyEmitted":true});
1725      }
1726    });
1727
1728    window.ShopifyAnalytics.lib.page(null,{"pageType":"searchresults","requestId":"6b11677c-4102-4b54-8740-3b0f3047f543-1790864125","shopifyEmitted":true});
1729
1730    var eventsListenerScript = document.createElement('script');
1731    eventsListenerScript.async = true;
1732    eventsListenerScript.src = "//www.thephotostick.com/cdn/shopifycloud/storefront/assets/shop_events_listener-4e26a9ce.js";
1733    document.getElementsByTagName('head')[0].appendChild(eventsListenerScript);
1734})();</script>
vendor: 1 bytes, line 1734
1734
1735<script
1736  defer
1737  src="https://www.thephotostick.com/cdn/shopifycloud/perf-kit/shopify-perf-kit-3.9.4.min.js"
1738  data-application="storefront-renderer"
1739  data-shop-id="16814029"
1740  data-render-region="gcp-europe-west1"
1741  data-page-type="search"
1742  data-theme-instance-id="148984823944"
1743  data-theme-name="Concept"
1744  data-theme-version="5.3.3"
1745  data-monorail-region="shop_domain"
1746  data-resource-timing-sampling-rate="10"
1747  data-shs="true"
1748  data-shs-beacon="true"
1749  data-shs-export-with-fetch="true"
1750  data-shs-logs-sample-rate="1"
1751  data-shs-beacon-endpoint="https://www.thephotostick.com/api/collect"
1752></script>
vendor: 1 bytes, line 1752
1752
1753<script src="https://cdn.shopify.com/storefront/web-components/account.js" type="module" crossorigin fetchpriority="low" async></script>
1753<script id="shopify-customer-account-data" type="application/json">{"customer":null,"shop":{"id":"16814029","customerAccountTranslations":[{"key":"account_menu.signed_out_state.sheet_title","value":"Sign in or create account"},{"key":"account_menu.signed_out_state.section_divider","value":"More ways to sign in"},{"key":"account_menu.signed_out_state.alternate_divider","value":"OR"},{"key":"account_menu.signed_out_state.email_field_label","value":"Email"},{"key":"account_menu.signed_out_state.orders_button","value":"Orders"},{"key":"account_menu.signed_out_state.profile_button","value":"Profile"},{"key":"account_menu.signed_out_state.shop_login_button","value":"Sign in with Shop"},{"key":"account_menu.signed_out_state.continue_with_google","value":"Continue with Google"},{"key":"account_menu.signed_out_state.continue_with_facebook","value":"Continue with Facebook"},{"key":"account_menu.signed_out_state.marketing_consent_label","value":"Email me with news and offers"},{"key":"account_menu.signed_in_state.greeting_with_name","value":"Hi, {{first_name}}"},{"key":"account_menu.signed_in_state.greeting_without_name","value":"Account"},{"key":"account_menu.signed_in_state.orders_button","value":"Orders"},{"key":"account_menu.signed_in_state.profile_button","value":"Profile"},{"key":"account_menu.location_picker.sheet_title","value":"Locations"},{"key":"account_menu.location_picker.search_field_placeholder","value":"Search"},{"key":"account_menu.aria_labels.close_menu","value":"Close menu"},{"key":"account_menu.aria_labels.back_to_main_menu","value":"Back to main menu from {{title}}"},{"key":"account_menu.aria_labels.open_submenu","value":"{{title}}, opens submenu"},{"key":"account_menu.aria_labels.loading_menu","value":"Loading menu"},{"key":"account_menu.aria_labels.account","value":"Account"},{"key":"account_menu.aria_labels.sign_in_with_email","value":"Sign in with email"},{"key":"account_menu.aria_labels.sign_in","value":"Sign in"}],"socialLoginProviders":[{"handle":"Shop"}],"legacyCustomerAccounts":false,"signInLinksVisible":true,"b2bEnabled":false,"marketingConsentSigninEnabled":false},"visitor":{"country":"AM","language":"en"}}</script>
1753
1754<meta name="shopify-y" content="b1235b13-c209-4d8f-bd4d-33f73935bf4f" data-expiration="1822421726000"><meta name="shopify-s" content="8fefc2d9-df5a-4094-aa94-d3ba4f970289" data-expiration="1790865926000"><meta name="new-cookie-storage-activated" content="t">
1755</head>
1756
1757  <body class="template-search" data-rounded-button="round" data-rounded-input="round-slight" data-rounded-block="round" data-rounded-card="round" data-button-hover="standard" data-lazy-image data-modal-swipe-only data-title-animation data-page-rendering>
1758  <a class="sr-only skip-link" href="#MainContent">Skip to content</a><mouse-cursor class="mouse-cursor z-50 fixed select-none flex items-center justify-center pointer-events-none rounded-full" role="button" aria-label="Close" aria-hidden="true">
1759  <svg class="icon icon-cursor" stroke="currentColor" viewBox="0 0 40 40" fill="none" xmlns="http://www.w3.org/2000/svg" role="presentation">
1760    <path d="M10 30L30 10M10 10L30 30" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"></path>
1761  </svg>
1762</mouse-cursor>
1763<!-- BEGIN sections: header-group -->
1764<div id="shopify-section-sections--20232691351688__announcement-bar" class="shopify-section shopify-section-group-header-group topbar-section"><style>
1765    :root {
1766      --topbar-height: var(--sp-12);
1767    }
1768    
1769    @media screen and (min-width: 1536px) {
1770      :root {
1771        --topbar-height: var(--sp-14);
1772      }
1773    }
1774
1775    #shopify-section-sections--20232691351688__announcement-bar {
1776      --gradient-background: #008bd8;
1777      --color-background: 0 139 216;
1778      --color-foreground: 250 250 250;
1779      --color-highlight: 255 221 191;
1780    }
1781  </style><nav class="topbar topbar--center topbar--only page-width page-width--full section section--rounded relative grid py-0 h-full w-full items-center" aria-label="Announcement bar"><div class="announcement-bar h-full flex justify-center lg:justify-center relative">
1782  <announcement-bar id="Slider-sections--20232691351688__announcement-bar" class="announcement__slides" autoplay autoplay-speed="5"><div class="announcement__slide flex h-full" ><div class="announcement__content flex items-center gap-2 rte"><span class="announcement-icon hidden md:block"><svg class="icon icon-truck icon-xs stroke-1" viewBox="0 0 16 16" stroke="currentColor" fill="none" xmlns="http://www.w3.org/2000/svg" role="presentation">
1783      <path d="M6.66675 12.6667H9.33342M6.66675 12.6667C6.66675 13.7712 5.77132 14.6667 4.66675 14.6667C3.56218 14.6667 2.66675 13.7712 2.66675 12.6667M6.66675 12.6667C6.66675 11.5621 5.77132 10.6667 4.66675 10.6667C3.56218 10.6667 2.66675 11.5621 2.66675 12.6667M9.33342 12.6667C9.33342 13.7712 10.2288 14.6667 11.3334 14.6667C12.438 14.6667 13.3334 13.7712 13.3334 12.6667M9.33342 12.6667C9.33342 11.5621 10.2288 10.6667 11.3334 10.6667C12.438 10.6667 13.3334 11.5621 13.3334 12.6667M13.3334 12.6667V12.6667C14.438 12.6667 15.3334 11.7712 15.3334 10.6667V4.53334C15.3334 3.41324 15.3334 2.85319 15.1154 2.42536C14.9237 2.04904 14.6177 1.74308 14.2414 1.55133C13.8136 1.33334 13.2535 1.33334 12.1334 1.33334H10.3334C9.40153 1.33334 8.93559 1.33334 8.56805 1.48558C8.07799 1.68857 7.68864 2.07792 7.48566 2.56798C7.33342 2.93552 7.33342 3.40146 7.33342 4.33334V4.33334C7.33342 5.26523 7.33342 5.73117 7.18117 6.09871C6.97819 6.58877 6.58884 6.97811 6.09878 7.1811C5.73124 7.33334 5.2653 7.33334 4.33341 7.33334H1.00008M2.66675 12.6667V12.6667C2.20176 12.6667 1.96927 12.6667 1.77852 12.6156C1.26088 12.4769 0.85656 12.0725 0.717859 11.5549C0.666748 11.3642 0.666748 11.1317 0.666748 10.6667V8.86795C0.666748 8.44463 0.666748 8.23297 0.688385 8.0258C0.734513 7.58411 0.853872 7.15318 1.04157 6.7507C1.1296 6.56192 1.2385 6.38042 1.4563 6.01743V6.01743C1.78307 5.47281 1.94646 5.20049 2.14753 4.97976C2.57779 4.50743 3.14762 4.18479 3.77402 4.05886C4.06674 4.00001 4.38431 4.00001 5.01944 4.00001H7.33342" stroke-linecap="round" stroke-linejoin="round"/>
1784    </svg></span><p class="announcement-text leading-tight">FREE shipping on U.S. orders $50+</p></div></div></announcement-bar></div>
1785</nav>
1786</div><div id="shopify-section-sections--20232691351688__header" class="shopify-section shopify-section-group-header-group header-section"><style>
1787  #shopify-section-sections--20232691351688__header {
1788    --section-padding-top: 32px;
1789    --section-padding-bottom: 32px;
1790    --color-background: 255 255 255;
1791    --color-foreground: 23 23 23;
1792    --color-transparent: 23 23 23;
1793    --color-localization: ;
1794  }
1795</style><menu-drawer id="MenuDrawer" class="menu-drawer drawer drawer--start z-30 fixed bottom-0 left-0 h-full w-full pointer-events-none"
1796  data-section-id="sections--20232691351688__header"
1797  hidden
1798>
1799  <overlay-element class="overlay fixed-modal invisible opacity-0 fixed bottom-0 left-0 w-full h-screen pointer-events-none" aria-controls="MenuDrawer" aria-expanded="false"></overlay-element>
1800  <div class="drawer__inner z-10 absolute top-0 flex flex-col w-full h-full overflow-hidden">
1801    <gesture-element class="drawer__header flex justify-between opacity-0 invisible relative" tabindex="0">
1802      <span class="drawer__title heading lg:text-3xl text-2xl leading-none tracking-tight"></span>
1803      <button class="button button--secondary button--close drawer__close hidden sm:flex items-center justify-center" type="button" is="hover-button" aria-controls="MenuDrawer" aria-expanded="false" aria-label="Close">
1804        <span class="btn-fill" data-fill></span>
1805        <span class="btn-text"><svg class="icon icon-close icon-sm" viewBox="0 0 20 20" stroke="currentColor" fill="none" xmlns="http://www.w3.org/2000/svg" role="presentation">
1806      <path stroke-linecap="round" stroke-linejoin="round" d="M5 15L15 5M5 5L15 15"></path>
1807    </svg></span>
1808      </button>
1809    </gesture-element>
1810    <div class="drawer__content opacity-0 invisible flex flex-col h-full grow shrink">
1811      <nav class="relative grow overflow-hidden" role="navigation">
1812        <ul class="drawer__scrollable drawer__menu relative w-full h-full" role="list" data-parent><li class="drawer__menu-group"><a class="drawer__menu-item block heading text-2xl leading-none tracking-tight" href="/">Home</a></li><li class="drawer__menu-group"><details is="menu-details">
1813  <summary class="drawer__menu-item block cursor-pointer relative" aria-expanded="false">
1814    <span class="heading text-2xl leading-none tracking-tight"><api-button class="api-only" data-id="DrawerSubMenu-sections--20232691351688__header-2" data-section-id="sections--20232691351688__header"></api-button>Shop Products</span><svg class="icon icon-chevron-right icon-lg" viewBox="0 0 24 24" stroke="currentColor" fill="none" xmlns="http://www.w3.org/2000/svg" role="presentation">
1815      <path stroke-linecap="round" stroke-linejoin="round" d="M10 6L16 12L10 18"></path>
1816    </svg></summary>
1817  <div class="drawer__submenu z-1 absolute top-0 left-0 flex flex-col w-full h-full" data-parent><button type="button" class="tracking-tight heading text-base shrink-0 flex items-center gap-3 w-full" data-close>Shop Products</button><div id="DrawerSubMenu-sections--20232691351688__header-2" class="drawer__scrollable flex flex-col h-full"></div></div>
1818</details>
1819</li><li class="drawer__menu-group"><a class="drawer__menu-item block heading text-2xl leading-none tracking-tight" href="/pages/about-us">About Us</a></li><li class="drawer__menu-group"><a class="drawer__menu-item block heading text-2xl leading-none tracking-tight" href="https://www.thephotostick.com/blogs/stories-and-inspiration">ThePhotoStick® Blog</a></li><li class="drawer__menu-group"><details is="menu-details">
1820  <summary class="drawer__menu-item block cursor-pointer relative" aria-expanded="false">
1821    <span class="heading text-2xl leading-none tracking-tight"><api-button class="api-only" data-id="DrawerSubMenu-sections--20232691351688__header-5" data-section-id="sections--20232691351688__header"></api-button>Support</span><svg class="icon icon-chevron-right icon-lg" viewBox="0 0 24 24" stroke="currentColor" fill="none" xmlns="http://www.w3.org/2000/svg" role="presentation">
1822      <path stroke-linecap="round" stroke-linejoin="round" d="M10 6L16 12L10 18"></path>
1823    </svg></summary>
1824  <div class="drawer__submenu z-1 absolute top-0 left-0 flex flex-col w-full h-full" data-parent><button type="button" class="tracking-tight heading text-base shrink-0 flex items-center gap-3 w-full" data-close>Support</button><div id="DrawerSubMenu-sections--20232691351688__header-5" class="drawer__scrollable flex flex-col h-full"></div></div>
1825</details>
1826</li></ul>
1827      </nav>
1828      <div class="drawer__footer grid w-full"><div class="drawer__footer-bottom flex items-center justify-between gap-6"><shopify-store store-domain="https://www.thephotostick.com" country="AM" language="en"></shopify-store>
1829<shopify-account menu="customer-account-main-menu">
1830              <hover-element class="button button--primary icon-with-text" slot="signed-out-avatar">
1831                <span class="btn-fill" data-fill></span>
1832                <span class="btn-text"><svg class="icon icon-account-2 icon-xs" viewBox="0 0 16 17" stroke="currentColor" fill="none" xmlns="http://www.w3.org/2000/svg" role="presentation">
1833      <rect width="6.5" height="6.5" x="4.75" y="1.917" rx="3.25"></rect>
1834      <path stroke-linecap="round" d="M8 10.834c1 0 2.667.222 3 .333.333.11 2.467.533 3 1.333.667 1 .667 1.334.667 2.667M8 10.834c-1 0-2.667.222-3 .333-.333.11-2.467.533-3 1.333-.667 1-.667 1.334-.667 2.667"></path>
1835    </svg>Login</span>
1836              </hover-element>
1837            </shopify-account></div>
1838      </div>
1839    </div>
1840  </div>
1841</menu-drawer>
1842<header data-section-id="sections--20232691351688__header" class="header header--left-center mobile:header--center page-width page-width--full section section--rounded section--padding grid items-center z-20 relative w-full" is="sticky-header" data-sticky-type="always"><div class="header__icons header__icons--start flex justify-start z-2">
1843  <div class="header__buttons flex items-center gap-1d5"><a href="/search" class="search-drawer-button flex items-center justify-center" is="magnet-link" aria-controls="SearchDrawer" aria-expanded="false" >
1844        <span class="sr-only">Search</span><svg class="icon icon-search icon-md" viewBox="0 0 24 24" stroke="currentColor" fill="none" xmlns="http://www.w3.org/2000/svg" role="presentation">
1845      <path stroke-linecap="round" d="m21 21-3.636-3.636m0 0A9 9 0 1 0 4.636 4.636a9 9 0 0 0 12.728 12.728Z"></path>
1846    </svg></a><button class="menu-drawer-button flex items-center gap-2d5 justify-center" type="button" is="magnet-button" aria-controls="MenuDrawer" aria-expanded="false">
1847        <span class="sr-only">Site navigation</span><svg class="icon icon-hamburger icon-md" viewBox="0 0 24 24" stroke="currentColor" fill="none" xmlns="http://www.w3.org/2000/svg" role="presentation">
1848      <path stroke-linecap="round" d="M3 6H21M3 12H11M3 18H16"></path>
1849    </svg></button></div>
1850</div>
1851<div class="header__logo flex justify-center z-2" itemscope itemtype="http://schema.org/Organization"><a
1852      href="/"
1853      itemprop="url"
1854      class="header__logo-link has-white-logo flex items-center relative"
1855    >
1856      <span class="sr-only">ThePhotoStick</span><img src="//www.thephotostick.com/cdn/shop/files/TPSO_Logo.pdf.png?v=1774382146&amp;width=5760" alt="" srcset="//www.thephotostick.com/cdn/shop/files/TPSO_Logo.pdf.png?v=1774382146&amp;width=225 225w, //www.thephotostick.com/cdn/shop/files/TPSO_Logo.pdf.png?v=1774382146&amp;width=300 300w, //www.thephotostick.com/cdn/shop/files/TPSO_Logo.pdf.png?v=1774382146&amp;width=450 450w" width="5982" height="2852" loading="eager" fetchpriority="low" sizes="150px" style="max-height: 72px;max-width: 150px;" itemprop="logo" is="lazy-image" class="logo hidden md:block"><img src="//www.thephotostick.com/cdn/shop/files/TPSO_Logo_Color_Transparent.png?v=1687378839&amp;width=5318" alt="" srcset="//www.thephotostick.com/cdn/shop/files/TPSO_Logo_Color_Transparent.png?v=1687378839&amp;width=105 105w, //www.thephotostick.com/cdn/shop/files/TPSO_Logo_Color_Transparent.png?v=1687378839&amp;width=140 140w, //www.thephotostick.com/cdn/shop/files/TPSO_Logo_Color_Transparent.png?v=1687378839&amp;width=210 210w" width="5318" height="2535" loading="eager" fetchpriority="low" sizes="70px" style="max-height: 33px;max-width: 70px;" itemprop="logo" is="lazy-image" class="logo md:hidden"><img src="//www.thephotostick.com/cdn/shop/files/TPS_Logo_White_Transparent.png?v=1770130184&amp;width=1250" alt="" srcset="//www.thephotostick.com/cdn/shop/files/TPS_Logo_White_Transparent.png?v=1770130184&amp;width=225 225w, //www.thephotostick.com/cdn/shop/files/TPS_Logo_White_Transparent.png?v=1770130184&amp;width=300 300w, //www.thephotostick.com/cdn/shop/files/TPS_Logo_White_Transparent.png?v=1770130184&amp;width=450 450w" width="1250" height="625" loading="lazy" fetchpriority="low" sizes="150px" style="max-height: 75px;max-width: 150px;" itemprop="logo" is="lazy-image" class="white-logo hidden md:block absolute pointer-events-none"><img src="//www.thephotostick.com/cdn/shop/files/TPS_Logo_White_Transparent.png?v=1770130184&amp;width=1250" alt="" srcset="//www.thephotostick.com/cdn/shop/files/TPS_Logo_White_Transparent.png?v=1770130184&amp;width=105 105w, //www.thephotostick.com/cdn/shop/files/TPS_Logo_White_Transparent.png?v=1770130184&amp;width=140 140w, //www.thephotostick.com/cdn/shop/files/TPS_Logo_White_Transparent.png?v=1770130184&amp;width=210 210w" width="1250" height="625" loading="lazy" fetchpriority="low" sizes="70px" style="max-height: 35px;max-width: 70px;" itemprop="logo" is="lazy-image" class="white-logo md:hidden absolute pointer-events-none"></a></div><div class="header__navigation hidden lg:flex lg:gap-5 lg:justify-start">
1857    <nav class="header__menu hidden lg:flex" role="navigation" aria-label="Primary"><ul class="flex flex-wrap list-menu with-dot" role="list"><li>
1858        <a href="/" class="menu__item text-sm-lg flex items-center font-medium z-2 relative cursor-pointer" is="magnet-link" aria-label="Home">
1859          <span class="btn-text" data-text>Home</span></a>
1860      </li><li>
1861        <details is="details-dropdown" trigger="hover" level="top">
1862          <summary data-link="/collections/all-products" class="z-2 relative" aria-haspopup="true" aria-expanded="false" aria-label="Shop Products">
1863            <magnet-element class="menu__item text-sm-lg flex items-center font-medium z-2 relative cursor-pointer">
1864              <span class="btn-text" data-text>Shop Products</span></magnet-element>
1865          </summary>
1866          <div id="DropdownMenu-sections--20232691351688__header-2-start" class="dropdown opacity-0 invisible absolute top-0 max-w-full pointer-events-none">
1867            <div class="dropdown__container relative"><span class="dropdown__corner corner left top flex absolute pointer-events-none">
1868  <svg class="w-full h-auto" viewBox="0 0 101 101" stroke="none" fill="currentColor" xmlns="http://www.w3.org/2000/svg" role="presentation">
1869    <path fill-rule="evenodd" clip-rule="evenodd" d="M101 0H0V101H1C1 45.7715 45.7715 1 101 1V0Z"></path>
1870    <path d="M1 101C1 45.7715 45.7715 1 101 1" fill="none"></path>
1871  </svg>
1872</span>
1873<span class="dropdown__corner corner right top flex absolute pointer-events-none">
1874  <svg class="w-full h-auto" viewBox="0 0 101 101" stroke="none" fill="currentColor" xmlns="http://www.w3.org/2000/svg" role="presentation">
1875    <path fill-rule="evenodd" clip-rule="evenodd" d="M101 0H0V101H1C1 45.7715 45.7715 1 101 1V0Z"></path>
1876    <path d="M1 101C1 45.7715 45.7715 1 101 1" fill="none"></path>
1877  </svg>
1878</span><ul class="dropdown__nav flex flex-col gap-1d5 xl:gap-2" role="list"><li class="opacity-0">
1879                      <p>
1880                        <a href="/products/thephotostick-omni-x" class="reversed-link text-sm-base">NEW! Portable Photo & Video Backup</a>
1881                      </p>
1882                    </li><li class="opacity-0">
1883                      <p>
1884                        <a href="/collections/shop-thephotostick-omni" class="reversed-link text-sm-base">ThePhotoStick Omni Classic</a>
1885                      </p>
1886                    </li><li class="opacity-0">
1887                      <p>
1888                        <a href="/collections/shop-gear" class="reversed-link text-sm-base">ThePhotoStick Gear</a>
1889                      </p>
1890                    </li><li class="opacity-0">
1891                      <p>
1892                        <a href="/collections/shop-keepsake-collection" class="reversed-link text-sm-base">ThePhotoStick Keepsakes</a>
1893                      </p>
1894                    </li><li class="opacity-0">
1895                      <p>
1896                        <a href="/collections/shop-bundle-deals" class="reversed-link text-sm-base">Bundle Deals</a>
1897                      </p>
1898                    </li><li class="opacity-0">
1899                      <p>
1900                        <a href="/collections/shop-all-products" class="reversed-link text-sm-base">Shop All Products</a>
1901                      </p>
1902                    </li></ul>
1903            </div>
1904          </div>
1905        </details>
1906      </li><li>
1907        <a href="/pages/about-us" class="menu__item text-sm-lg flex items-center font-medium z-2 relative cursor-pointer" is="magnet-link" aria-label="About Us">
1908          <span class="btn-text" data-text>About Us</span></a>
1909      </li><li>
1910        <a href="https://www.thephotostick.com/blogs/stories-and-inspiration" class="menu__item text-sm-lg flex items-center font-medium z-2 relative cursor-pointer" is="magnet-link" aria-label="ThePhotoStick® Blog">
1911          <span class="btn-text" data-text>ThePhotoStick® Blog</span></a>
1912      </li><li>
1913        <details is="details-dropdown" trigger="hover" level="top">
1914          <summary data-link="/pages/support-center" class="z-2 relative" aria-haspopup="true" aria-expanded="false" aria-label="Support">
1915            <magnet-element class="menu__item text-sm-lg flex items-center font-medium z-2 relative cursor-pointer">
1916              <span class="btn-text" data-text>Support</span></magnet-element>
1917          </summary>
1918          <div id="DropdownMenu-sections--20232691351688__header-5-start" class="dropdown opacity-0 invisible absolute top-0 max-w-full pointer-events-none">
1919            <div class="dropdown__container relative"><span class="dropdown__corner corner left top flex absolute pointer-events-none">
1920  <svg class="w-full h-auto" viewBox="0 0 101 101" stroke="none" fill="currentColor" xmlns="http://www.w3.org/2000/svg" role="presentation">
1921    <path fill-rule="evenodd" clip-rule="evenodd" d="M101 0H0V101H1C1 45.7715 45.7715 1 101 1V0Z"></path>
1922    <path d="M1 101C1 45.7715 45.7715 1 101 1" fill="none"></path>
1923  </svg>
1924</span>
1925<span class="dropdown__corner corner right top flex absolute pointer-events-none">
1926  <svg class="w-full h-auto" viewBox="0 0 101 101" stroke="none" fill="currentColor" xmlns="http://www.w3.org/2000/svg" role="presentation">
1927    <path fill-rule="evenodd" clip-rule="evenodd" d="M101 0H0V101H1C1 45.7715 45.7715 1 101 1V0Z"></path>
1928    <path d="M1 101C1 45.7715 45.7715 1 101 1" fill="none"></path>
1929  </svg>
1930</span><ul class="dropdown__nav flex flex-col gap-1d5 xl:gap-2" role="list"><li class="opacity-0">
1931                      <p>
1932                        <a href="/pages/support-center" class="reversed-link text-sm-base">Support Center</a>
1933                      </p>
1934                    </li><li class="opacity-0">
1935                      <p>
1936                        <a href="https://www.thephotostick.com/a/faq" class="reversed-link text-sm-base">FAQs</a>
1937                      </p>
1938                    </li><li class="opacity-0">
1939                      <p>
1940                        <a href="https://www.thephotostick.com/blogs/help-and-troubleshooting/" class="reversed-link text-sm-base">Help & Troubleshooting</a>
1941                      </p>
1942                    </li><li class="opacity-0">
1943                      <p>
1944                        <a href="/pages/support-system-requirements" class="reversed-link text-sm-base">System Requirements</a>
1945                      </p>
1946                    </li><li class="opacity-0">
1947                      <p>
1948                        <a href="/pages/support-shipping-information" class="reversed-link text-sm-base">Shipping Information</a>
1949                      </p>
1950                    </li><li class="opacity-0">
1951                      <p>
1952                        <a href="/pages/support-return-and-refund-process" class="reversed-link text-sm-base">Returns and Refunds</a>
1953                      </p>
1954                    </li></ul>
1955            </div>
1956          </div>
1957        </details>
1958      </li></ul>
1959</nav>
1960  </div><div class="header__icons header__icons--end flex justify-end z-2">
1961  <div class="header__buttons flex items-center gap-1d5"><a href="/search" class="search-drawer-button flex items-center justify-center" is="magnet-link" aria-controls="SearchDrawer" aria-expanded="false" >
1962        <span class="sr-only">Search</span><svg class="icon icon-search icon-md" viewBox="0 0 24 24" stroke="currentColor" fill="none" xmlns="http://www.w3.org/2000/svg" role="presentation">
1963      <path stroke-linecap="round" d="m21 21-3.636-3.636m0 0A9 9 0 1 0 4.636 4.636a9 9 0 0 0 12.728 12.728Z"></path>
1964    </svg></a><shopify-account class="hidden lg:flex items-center justify-center" menu="customer-account-main-menu">
1965        <magnet-element class="block" slot="signed-out-avatar">
1966          <span class="sr-only">Login</span><svg class="icon icon-account icon-md" viewBox="0 0 24 24" stroke="currentColor" fill="none" xmlns="http://www.w3.org/2000/svg" role="presentation">
1967      <rect width="10.5" height="10.5" x="6.75" y="1.75" rx="5.25"></rect>
1968      <path stroke-linecap="round" d="M12 15.5c1.5 0 4 .333 4.5.5.5.167 3.7.8 4.5 2 1 1.5 1 2 1 4m-10-6.5c-1.5 0-4 .333-4.5.5-.5.167-3.7.8-4.5 2-1 1.5-1 2-1 4"></path>
1969    </svg></magnet-element>
1970      </shopify-account><a href="/cart" class="cart-drawer-button flex items-center justify-center relative" is="magnet-link" aria-controls="CartDrawer" aria-expanded="false" data-no-instant>
1971        <span class="sr-only">Cart</span><svg class="icon icon-cart icon-md" viewBox="0 0 24 24" stroke="currentColor" fill="none" xmlns="http://www.w3.org/2000/svg" role="presentation">
1972          <path stroke-linecap="round" stroke-linejoin="round" d="M1 1h.5v0c.226 0 .339 0 .44.007a3 3 0 0 1 2.62 1.976c.034.095.065.204.127.42l.17.597m0 0 1.817 6.358c.475 1.664.713 2.496 1.198 3.114a4 4 0 0 0 1.633 1.231c.727.297 1.592.297 3.322.297h2.285c1.75 0 2.626 0 3.359-.302a4 4 0 0 0 1.64-1.253c.484-.627.715-1.472 1.175-3.161l.06-.221c.563-2.061.844-3.092.605-3.906a3 3 0 0 0-1.308-1.713C19.92 4 18.853 4 16.716 4H4.857ZM12 20a2 2 0 1 1-4 0 2 2 
19720 0 1 4 0Zm8 0a2 2 0 1 1-4 0 2 2 0 0 1 4 0Z"></path>
1973        </svg><cart-count class="count absolute top-0 right-0 text-xs" aria-label="0 items" hidden>0</cart-count>
1974      </a><button class="menu-drawer-button flex items-center gap-2d5 justify-center" type="button" is="magnet-button" aria-controls="MenuDrawer" aria-expanded="false">
1975        <span class="sr-only">Site navigation</span><svg class="icon icon-hamburger icon-md" viewBox="0 0 24 24" stroke="currentColor" fill="none" xmlns="http://www.w3.org/2000/svg" role="presentation">
1976      <path stroke-linecap="round" d="M3 6H21M3 12H11M3 18H16"></path>
1977    </svg></button></div>
1978</div>
1979<span class="header__corner corner left bottom flex absolute pointer-events-none">
1980  <svg class="w-full h-auto" viewBox="0 0 101 101" stroke="none" fill="currentColor" xmlns="http://www.w3.org/2000/svg" role="presentation">
1981    <path fill-rule="evenodd" clip-rule="evenodd" d="M101 0H0V101H1C1 45.7715 45.7715 1 101 1V0Z"></path>
1982    <path d="M1 101C1 45.7715 45.7715 1 101 1" fill="none"></path>
1983  </svg>
1984</span>
1985<span class="header__corner corner right bottom flex absolute pointer-events-none">
1986  <svg class="w-full h-auto" viewBox="0 0 101 101" stroke="none" fill="currentColor" xmlns="http://www.w3.org/2000/svg" role="presentation">
1987    <path fill-rule="evenodd" clip-rule="evenodd" d="M101 0H0V101H1C1 45.7715 45.7715 1 101 1V0Z"></path>
1988    <path d="M1 101C1 45.7715 45.7715 1 101 1" fill="none"></path>
1989  </svg>
1990</span><span class="header__cutout cutout opacity-0 absolute left-0 top-100 w-full pointer-events-none"></span></header><span class="overlay opacity-0 z-1 fixed left-0 w-full pointer-events-none"></span>
1991</div>
1992<!-- END sections: header-group --><!-- BEGIN sections: overlay-group -->
1993<div id="shopify-section-sections--20232691384456__cart-drawer" class="shopify-section shopify-section-group-overlay-group">
1993<script src="//www.thephotostick.com/cdn/shop/t/45/assets/cart.js?v=156958169961437665681778619151" defer></script>
1993<cart-drawer id="CartDrawer" class="cart-drawer drawer drawer--end z-35 fixed bottom-0 left-0 h-full w-full pointer-events-none"
1994    role="dialog"
1995    aria-modal="true"
1996    aria-label="Cart"
1997    data-section-id="sections--20232691384456__cart-drawer"
1998    shopify-design-mode
1999    hidden
2000  >
2001    <overlay-element class="overlay fixed-modal invisible opacity-0 fixed bottom-0 left-0 w-full h-screen pointer-events-none" aria-controls="CartDrawer" aria-expanded="false"></overlay-element>
2002    <div class="drawer__inner z-10 absolute top-0 flex flex-col w-full h-full overflow-hidden">
2003      <gesture-element class="drawer__header flex justify-between opacity-0 invisible relative" tabindex="0">
2004        <ul class="drawer__tabs flex gap-10" is="tab-list">
2005          <li>
2006            <button class="drawer__tab relative" type="button" aria-controls="MiniCart-sections--20232691384456__cart-drawer" aria-expanded="true">
2007              <span class="drawer__title heading lg:text-3xl text-2xl leading-none tracking-tight">Cart</span>
2008              <cart-count class="count absolute font-medium text-xs lg:text-sm leading-none" aria-label="0 items" hidden>0</cart-count>
2009            </button>
2010          </li><li>
2011              <button class="drawer__tab" type="button" aria-controls="RecentlyViewed-sections--20232691384456__cart-drawer" aria-expanded="false">
2012                <span class="drawer__title heading lg:text-3xl text-2xl leading-none tracking-tight">Recently viewed</span>
2013              </button>
2014            </li></ul>
2015        <button class="button button--secondary button--close drawer__close hidden sm:flex items-center justify-center" type="button" is="hover-button" aria-controls="CartDrawer" aria-expanded="false" aria-label="Close">
2016          <span class="btn-fill" data-fill></span>
2017          <span class="btn-text"><svg class="icon icon-close icon-sm" viewBox="0 0 20 20" stroke="currentColor" fill="none" xmlns="http://www.w3.org/2000/svg" role="presentation">
2018      <path stroke-linecap="round" stroke-linejoin="round" d="M5 15L15 5M5 5L15 15"></path>
2019    </svg></span>
2020        </button>
2021      </gesture-element>
2022
2023      <div class="drawer__content opacity-0 invisible flex flex-col h-full grow shrink">
2024        <div id="MiniCart-sections--20232691384456__cart-drawer" class="drawer__panel opacity-0 flex flex-col overflow-hidden" open>
2025          <span class="sr-only">Cart</span>
2026          <div class="flex flex-col h-full"><div class="drawer__scrollable relative flex justify-center items-start grow shrink text-center">
2027                <div class="drawer__empty grid gap-5 md:gap-8">
2028                  <p class="drawer__empty-text h2 heading leading-none tracking-tight">Your cart is currently empty.</p>
2029                  <div class="drawer__empty-message text-sm md:text-base leading-tight rte"><p>Not sure where to start?<br/>Try these collections:</p></div>
2030                  <ul class="drawer__empty-collections grid gap-3"><li>
2031                          <a class="flex items-center justify-between" href="/collections/shop-all-products">
2032                            <span class="flex items-center gap-3">Shop: All Products</span><svg class="icon icon-arrow-right icon-sm transform" viewBox="0 0 21 20" stroke="currentColor" fill="none" xmlns="http://www.w3.org/2000/svg" role="presentation">
2033      <path stroke-linecap="round" stroke-linejoin="round" d="M3 10H18M18 10L12.1667 4.16675M18 10L12.1667 15.8334"></path>
2034    </svg></a>
2035                        </li></ul>
2036                </div>
2037              </div><div class="drawer__scrollable relative flex flex-col gap-9 grow shrink hidden"><div class="free-shipping-bar grid gap-3 w-full"><span class="text-sm leading-tight">Spend <span class="font-bold">$50.00</span> more to reach free shipping!</span>
2038    <progress-bar class="overflow-hidden rounded-full" style="--progress: 0%;"></progress-bar></div>
2039<cart-items class="block grow" data-section-id="sections--20232691384456__cart-drawer">
2040                <ul class="horizontal-products grid" role="list"></ul>
2041              </cart-items></div><div class="drawer__footer grid w-full hidden"><div class="drawer__footer-top flex"><button type="button" class="flex gap-2d5 grow items-center justify-center" aria-controls="CartNote-sections--20232691384456__cart-drawer" aria-expanded="false">
2041<svg class="icon icon-note icon-lg icon-light shrink-0" viewBox="0 0 25 24" stroke="currentColor" fill="none" xmlns="http://www.w3.org/2000/svg" role="presentation">
2042      <path class="fill" d="M12.9 2H12.1C8.73969 2 7.05953 2 5.77606 2.65396C4.64708 3.2292 3.7292 4.14708 3.15396 5.27606C2.5 6.55953 2.5 8.23969 2.5 11.6V12.4C2.5 15.7603 2.5 17.4405 3.15396 18.7239C3.7292 19.8529 4.64708 20.7708 5.77606 21.346C7.05953 22 8.73969 22 12.1 22H13.5C14.4319 22 14.8978 22 15.2654 21.8478C15.7554 21.6448 16.1448 21.2554 16.3478 20.7654C16.5 20.3978 16.5 19.9319 16.5 19C16.5 18.0681 16.5 17.6021 16.6522 17.2346C16.8552 16.7445 17.2446 16.3552 17.7346 16.1522C18.1022 16 18.5681 16 19.5 16C20.4319 16 20.8978 16 21.2654 15.8477C21.7554 15.6447 22.1448 15.2554 22.3478 14.7653C22.5 14.3978 22.5 13.9319 22.5 13V11.6C22.5 8.23969 22.5 6.55953 21.846 5.27606C21.2708 4.14708 20.3529 3.2292 19.2239 2.65396C17.9405 2 16.2603 2 12.9 2Z"></path>
2043      <path stroke-linecap="round" stroke-linejoin="round" d="M16.5 21.5V19.2C16.5 18.0799 16.5 17.5198 16.718 17.092C16.9097 16.7157 17.2157 16.4097 17.592 16.218C18.0198 16 18.5799 16 19.7 16H22M7.5 7H15.5M7.5 11H13.5M7.5 15H9.5M15.6716 22H12.1C8.73969 22 7.05953 22 5.77606 21.346C4.64708 20.7708 3.7292 19.8529 3.15396 18.7239C2.5 17.4405 2.5 15.7603 2.5 12.4V11.6C2.5 8.23969 2.5 6.55953 3.15396 5.27606C3.7292 4.14708 4.64708 3.2292 5.77606 2.65396C7.05953 2 8.73969 2 12.1 2H12.9C16.2603 2 17.9405 2 19.2239 2.65396C20.3529 3.2292 21.2708 4.14708 21.846 5.27606C22.5 6.55953 22.5 8.23969 22.5 11.6V15.1716C22.5 15.5088 22.5 15.6774 22.4912 15.8399C22.4171 17.2049 21.8791 18.5036 20.9663 19.5212C20.8577 19.6423 20.7385 19.7615 20.5 20V20C20.2615 20.2385 20.1423 20.3577 20.0212 20.4663C19.0036 21.3791 17.7049 21.9171 16.3399 21.9912C16.1774 22 16.0088 22 15.6716 22Z"></path>
2044    </svg><span class="reversed-link text-sm leading-tight">Order note</span>
2045                    </button><button type="button" class="flex gap-2d5 grow items-center justify-center" aria-controls="ShippingCalculator-sections--20232691384456__cart-drawer" aria-expanded="false"><api-button class="api-only" data-id="cart_drawer_shipping_calculator" data-section-id="sections--20232691384456__cart-drawer"></api-button><svg class="icon icon-package icon-lg icon-light shrink-0" viewBox="0 0 25 24" stroke="currentColor" fill="none" xmlns="http://www.w3.org/2000/svg" role="presentation">
2046      <path class="fill" d="M22.5 14.2825V7.28202C22.5 7.10718 22.4083 6.94515 22.2583 6.8552C22.0995 6.75991 21.9009 6.76067 21.7429 6.85718L15.0012 10.9731C14.0927 11.5278 13.6384 11.8052 13.1525 11.9135C12.7228 12.0092 12.2772 12.0092 11.8475 11.9135C11.3616 11.8052 10.9073 11.5278 9.99878 10.9731L3.25714 6.85718C3.09906 6.76067 2.90048 6.75991 2.74166 6.8552C2.59174 6.94515 2.5 7.10718 2.5 7.28202V14.2825C2.5 15.2735 2.5 15.769 2.64219 16.2143C2.76802 16.6083 2.97396 16.972 3.24708 17.2826C3.55572 17.6336 3.98062 17.8886 4.83042 18.3984L10.0304 21.5184C10.9283 22.0572 11.3773 22.3266 11.8565 22.4318C12.2805 22.5249 12.7195 22.5249 13.1435 22.4318C13.6227 22.3266 14.0717 22.0572 14.9696 21.5184L20.1696 18.3984C21.0194 17.8886 21.4443 17.6336 21.7529 17.2826C22.026 16.972 22.232 16.6083 22.3578 16.2143C22.5 15.769 22.5 15.2735 22.5 14.2825Z"></path>
2047      <path stroke-linecap="round" stroke-linejoin="round" d="M7.99988 9.5L17 4M12.5 12.5L21.5 7M12.5 12.5L3.5 7M12.5 12.5V22.5M2.5 9.71771V14.2823C2.5 15.2733 2.5 15.7688 2.64219 16.2141C2.76802 16.6081 2.97396 16.9718 3.24708 17.2824C3.55572 17.6334 3.98062 17.8884 4.83042 18.3983L10.0304 21.5183C10.9283 22.057 11.3773 22.3264 11.8565 22.4316C12.2805 22.5247 12.7195 22.5247 13.1435 22.4316C13.6227 22.3264 14.0717 22.057 14.9696 21.5183L20.1696 18.3983C21.0194 17.8884 21.4443 17.6334 21.7529 17.2824C22.026 16.9718 22.232 16.6081 22.3578 16.2141C22.5 15.7688 22.5 15.2733 22.5 14.2823V9.71771C22.5 8.72669 22.5 8.23117 22.3578 7.78593C22.232 7.39192 22.026 7.02818 21.7529 6.71757C21.4443 6.36657 21.0194 6.11163 20.1696 5.60175L14.9696 2.48175C14.0717 1.94301 13.6227 1.67364 13.1435 1.56839C12.7195 1.4753 12.2805 1.4753 11.8565 1.56839C11.3773 1.67364 10.9283 1.94301 10.0304 2.48175L4.83042 5.60175C3.98062 6.11163 3.55572 6.36657 3.24708 6.71757C2.97396 7.02818 2.76802 7.39192 2.64219 7.78593C2.5 8.23117 2.5 8.72669 2.5 9.71771Z"></path>
2048    </svg><span class="reversed-link text-sm leading-tight">Shipping</span>
2049                    </button><button type="button" class="flex gap-2d5 grow items-center justify-center" aria-controls="CartDiscount-sections--20232691384456__cart-drawer" aria-expanded="false">
2049<svg class="icon icon-sale icon-lg icon-light shrink-0" viewBox="0 0 24 24" stroke="currentColor" fill="none" xmlns="http://www.w3.org/2000/svg" role="presentation">
2050      <path class="fill" d="M7.24012 4.02997H7.09012C6.01012 4.02997 5.47012 4.02997 5.06012 4.23997C4.70012 4.41997 4.40012 4.71997 4.22012 5.07997C4.01012 5.48997 4.01012 6.02997 4.01012 7.10997V7.22997C4.01012 7.64997 4.01012 7.85997 3.97012 8.05997C3.93012 8.23997 3.87012 8.40997 3.78012 8.56997C3.68012 8.74997 3.55012 8.90997 3.28012 9.22997L2.84012 9.74997C2.24012 10.46 1.94012 10.81 1.82012 11.21C1.72012 11.56 1.72012 11.93 1.82012 12.28C1.93012 12.68 2.23012 13.03 2.84012 13.74L3.28012 14.26C3.55012 14.58 3.69012 14.74 3.78012 14.92C3.87012 15.08 3.93012 15.25 3.97012 15.43C4.01012 15.63 4.01012 15.84 4.01012 16.26V16.38C4.01012 17.46 4.01012 18 4.22012 18.41C4.40012 18.77 4.70012 19.07 5.06012 19.25C5.47012 19.46 6.01012 19.46 7.09012 19.46H7.24012C7.66012 19.46 7.87012 19.46 8.07012 19.5C8.25012 19.54 8.42012 19.6 8.58012 19.69C8.76012 19.79 8.92012 19.93 9.24012 20.2L9.74012 20.63C10.4501 21.24 10.8101 21.55 11.2101 21.66C11.5601 21.76 11.9401 21.76 12.2901 21.66C12.6901 21.54 13.0501 21.24 13.7601 20.63L14.2601 20.2C14.5801 19.93 14.7401 19.79 14.9201 19.69C15.0801 19.6 15.2501 19.54 15.4301 19.5C15.6301 19.46 15.8401 19.46 16.2601 19.46H16.3701C17.4501 19.46 17.9901 19.46 18.4001 19.25C18.7601 19.07 19.0601 18.77 19.2401 18.41C19.4501 18 19.4501 17.46 19.4501 16.38V16.27C19.4501 15.85 19.4501 15.64 19.4901 15.44C19.5301 15.26 19.5901 15.09 19.6801 14.93C19.7801 14.75 19.9201 14.59 20.1901 14.27L20.6201 13.77C21.2301 13.06 21.5401 12.7 21.6501 12.3C21.7501 11.95 21.7501 11.57 21.6501 11.22C21.5301 10.82 21.2301 10.46 20.6201 9.74997L20.1901 9.24997C19.9201 8.92997 19.7801 8.76997 19.6801 8.58997C19.5901 8.42997 19.5301 8.25997 19.4901 8.07997C19.4501 7.87997 19.4501 7.66997 19.4501 7.24997V7.13997C19.4501 6.05997 19.4501 5.51997 19.2401 5.10997C19.0601 4.74997 18.7601 4.44997 18.4001 4.26997C17.9901 4.05997 17.4501 4.05997 16.3701 4.05997H16.2601C15.8401 4.05997 15.6301 4.05997 15.4301 4.01997C15.2501 3.97997 15.0801 3.91997 14.9201 3.82997C14.7401 3.72997 14.5801 3.58997 14.2601 3.31997L13.7601 2.88997C13.0501 2.27997 12.6901 1.96997 12.2901 1.85997C11.9401 1.75997 11.5601 1.75997 11.2101 1.85997C10.8101 1.97997 10.4501 2.27997 9.74012 2.88997L9.24012 3.31997C8.92012 3.58997 8.76012 3.72997 8.58012 3.82997C8.42012 3.91997 8.25012 3.97997 8.07012 4.01997C7.87012 4.05997 7.66012 4.05997 7.24012 4.05997V4.02997Z"></path>
2051      <path stroke-linecap="round" d="M8.38012 15.36L11.7501 11.74L15.1201 8.11997M14.9201 14.59C14.9201 14.81 14.7401 14.99 14.5201 14.99C14.3001 14.99 14.1201 14.81 14.1201 14.59M14.9201 14.59C14.9201 14.37 14.7401 14.19 14.5201 14.19C14.3001 14.19 14.1201 14.37 14.1201 14.59M14.9201 14.59H14.1201M9.42012 9.00997C9.42012 9.22997 9.24012 9.40997 9.02012 9.40997C8.80012 9.40997 8.62012 9.22997 8.62012 9.00997M9.42012 9.00997C9.42012 8.78997 9.24012 8.60997 9.02012 8.60997C8.80012 8.60997 8.62012 8.78997 8.62012 9.00997M9.42012 9.00997H8.62012M7.24012 4.02997H7.09012C6.01012 4.02997 5.47012 4.02997 5.06012 4.23997C4.70012 4.41997 4.40012 4.71997 4.22012 5.07997C4.01012 5.48997 4.01012 6.02997 4.01012 7.10997V7.22997C4.01012 7.64997 4.01012 7.85997 3.97012 8.05997C3.93012 8.23997 3.87012 8.40997 3.78012 8.56997C3.68012 8.74997 3.55012 8.90997 3.28012 9.22997L2.84012 9.74997C2.24012 10.46 1.94012 10.81 1.82012 11.21C1.72012 11.56 1.72012 11.93 1.82012 12.28C1.93012 12.68 2.23012 13.03 2.84012 13.74L3.28012 14.26C3.55012 14.58 3.69012 14.74 3.78012 14.92C3.87012 15.08 3.93012 15.25 3.97012 15.43C4.01012 15.63 4.01012 15.84 4.01012 16.26V16.38C4.01012 17.46 4.01012 18 4.22012 18.41C4.40012 18.77 4.70012 19.07 5.06012 19.25C5.47012 19.46 6.01012 19.46 7.09012 19.46H7.24012C7.66012 19.46 7.87012 19.46 8.07012 19.5C8.25012 19.54 8.42012 19.6 8.58012 19.69C8.76012 19.79 8.92012 19.93 9.24012 20.2L9.74012 20.63C10.4501 21.24 10.8101 21.55 11.2101 21.66C11.5601 21.76 11.9401 21.76 12.2901 21.66C12.6901 21.54 13.0501 21.24 13.7601 20.63L14.2601 20.2C14.5801 19.93 14.7401 19.79 14.9201 19.69C15.0801 19.6 15.2501 19.54 15.4301 19.5C15.6301 19.46 15.8401 19.46 16.2601 19.46H16.3701C17.4501 19.46 17.9901 19.46 18.4001 19.25C18.7601 19.07 19.0601 18.77 19.2401 18.41C19.4501 18 19.4501 17.46 19.4501 16.38V16.27C19.4501 15.85 19.4501 15.64 19.4901 15.44C19.5301 15.26 19.5901 15.09 19.6801 14.93C19.7801 14.75 19.9201 14.59 20.1901 14.27L20.6201 13.77C21.2301 13.06 21.5401 12.7 21.6501 12.3C21.7501 11.95 21.7501 11.57 21.6501 11.22C21.5301 10.82 21.2301 10.46 20.6201 9.74997L20.1901 9.24997C19.9201 8.92997 19.7801 8.76997 19.6801 8.58997C19.5901 8.42997 19.5301 8.25997 19.4901 8.07997C19.4501 7.87997 19.4501 7.66997 19.4501 7.24997V7.13997C19.4501 6.05997 19.4501 5.51997 19.2401 5.10997C19.0601 4.74997 18.7601 4.44997 18.4001 4.26997C17.9901 4.05997 17.4501 4.05997 16.3701 4.05997H16.2601C15.8401 4.05997 15.6301 4.05997 15.4301 4.01997C15.2501 3.97997 15.0801 3.91997 14.9201 3.82997C14.7401 3.72997 14.5801 3.58997 14.2601 3.31997L13.7601 2.88997C13.0501 2.27997 12.6901 1.96997 12.2901 1.85997C11.9401 1.75997 11.5601 1.75997 11.2101 1.85997C10.8101 1.97997 10.4501 2.27997 9.74012 2.88997L9.24012 3.31997C8.92012 3.58997 8.76012 3.72997 8.58012 3.82997C8.42012 3.91997 8.25012 3.97997 8.07012 4.01997C7.87012 4.05997 7.66012 4.05997 7.24012 4.05997V4.02997Z"></path>
2052    </svg><span class="reversed-link text-sm leading-tight">Discount</span></button><modal-element id="CartNote-sections--20232691384456__cart-drawer" class="modal inv
2052isible absolute bottom-0 left-0 w-full h-full" role="dialog" hidden>
2053                      <overlay-element class="fixed-modal opacity-0 z-1 absolute top-0 left-0 w-full h-full" aria-controls="CartNote-sections--20232691384456__cart-drawer" aria-expanded="false"></overlay-element>
2054                      <div class="modal__container flex flex-col z-3 absolute left-0 bottom-0 w-full">
2055                        <div class="modal__header flex items-center justify-between relative">
2056                          <span class="font-medium text-sm md:text-base">Order special instructions</span>
2057                          <button type="button" class="close flex items-center justify-center absolute top-0 right-0" is="magnet-button" aria-controls="CartNote-sections--20232691384456__cart-drawer" aria-expanded="false" aria-label="Close"><svg class="icon icon-close icon-md" viewBox="0 0 20 20" stroke="currentColor" fill="none" xmlns="http://www.w3.org/2000/svg" role="presentation">
2058      <path stroke-linecap="round" stroke-linejoin="round" d="M5 15L15 5M5 5L15 15"></path>
2059    </svg></button>
2060                        </div>
2061                        <div class="modal__content flex flex-col overflow-hidden">
2062                          <cart-note class="modal__scrollable grid gap-4">
2063                            <div class="field">
2064                              <textarea name="note" class="textarea is-floating" rows="3" placeholder=" " id="CartNoteForm-sections--20232691384456__cart-drawer"></textarea>
2065                              <label class="label is-floating" for="CartNoteForm-sections--20232691384456__cart-drawer">Order note</label>
2066                            </div>
2067                            <div class="justify-self-start">
2068                              <button class="button button--primary" type="button" is="hover-button" aria-controls="CartNote-sections--20232691384456__cart-drawer" aria-expanded="false">
2069                                <span class="btn-fill" data-fill></span>
2070                                <span class="btn-text">Apply</span>
2071                              </button>
2072                            </div>
2073                          </cart-note>
2074                        </div>
2075                      </div>
2076                    </modal-element><modal-element id="ShippingCalculator-sections--20232691384456__cart-drawer" class="modal invisible absolute bottom-0 left-0 w-full h-full" role="dialog" hidden>
2077                      <overlay-element class="fixed-modal opacity-0 z-1 absolute top-0 left-0 w-full h-full" aria-controls="ShippingCalculator-sections--20232691384456__cart-drawer" aria-expanded="false"></overlay-element>
2078                      <div class="modal__container flex flex-col z-3 absolute left-0 bottom-0 w-full">
2079                        <div class="modal__header flex items-center justify-between relative">
2080                          <span class="font-medium text-sm md:text-base">Estimate shipping</span>
2081                          <button type="button" class="close flex items-center justify-center absolute top-0 right-0" is="magnet-button" aria-controls="ShippingCalculator-sections--20232691384456__cart-drawer" aria-expanded="false" aria-label="Close"><svg class="icon icon-close icon-md" viewBox="0 0 20 20" stroke="currentColor" fill="none" xmlns="http://www.w3.org/2000/svg" role="presentation">
2082      <path stroke-linecap="round" stroke-linejoin="round" d="M5 15L15 5M5 5L15 15"></path>
2083    </svg></button>
2084                        </div><div class="modal__content flex flex-col overflow-hidden" id="cart_drawer_shipping_calculator"></div></div>
2085                    </modal-element><modal-element id="CartDiscount-sections--20232691384456__cart-drawer" class="modal invisible absolute bottom-0 left-0 w-full h-full" role="dialog" hidden>
2086                      <overlay-element class="fixed-modal opacity-0 z-1 absolute top-0 left-0 w-full h-full" aria-controls="CartDiscount-sections--20232691384456__cart-drawer" aria-expanded="false"></overlay-element>
2087                      <div class="modal__container flex flex-col z-3 absolute left-0 bottom-0 w-full">
2088                        <div class="modal__header flex items-center justify-between relative">
2089                          <span class="font-medium text-sm md:text-base">Discount</span>
2090                          <button type="button" class="close flex items-center justify-center absolute top-0 right-0" is="magnet-button" aria-controls="CartDiscount-sections--20232691384456__cart-drawer" aria-expanded="false" aria-label="Close"><svg class="icon icon-close icon-md" viewBox="0 0 20 20" stroke="currentColor" fill="none" xmlns="http://www.w3.org/2000/svg" role="presentation">
2091      <path stroke-linecap="round" stroke-linejoin="round" d="M5 15L15 5M5 5L15 15"></path>
2092    </svg></button>
2093                        </div>
2094                        <div class="modal__content flex flex-col overflow-hidden">
2095                          <form class="modal__scrollable cart-discount grid gap-4" action="/cart" method="POST" novalidate is="cart-discount" data-section-id="sections--20232691384456__cart-drawer">
2096                            <ul class="active-facets flex flex-wrap items-center gap-2" role="list" aria-label="Discounts"></ul>
2097                            <div class="field">
2098                              <input type="text" name="discount" class="input is-floating" rows="3" placeholder=" " id="CartDiscountForm-sections--20232691384456__cart-drawer"/>
2099                              <label class="label is-floating" for="CartDiscountForm-sections--20232691384456__cart-drawer">Discount code</label>
2100                            </div>
2101                            <div class="justify-self-start">
2102                              <button class="button button--primary" type="submit" is="hover-button">
2103                                <span class="btn-fill" data-fill></span>
2104                                <span class="btn-text">Apply</span>
2105                              </button>
2106                            </div>
2107                            <div class="alert alert--error alert--transparent flex gap-2d5" hidden><svg class="icon icon-alert-circle-filled icon-sm shrink-0" viewBox="0 0 24 24" stroke="none" fill="currentColor" xmlns="http://www.w3.org/2000/svg" role="presentation">
2108      <path fill-rule="evenodd" clip-rule="evenodd" d="M1.25 12C1.25 6.06294 6.06294 1.25 12 1.25C17.9371 1.25 22.75 6.06294 22.75 12C22.75 17.9371 17.9371 22.75 12 22.75C6.06294 22.75 1.25 17.9371 1.25 12ZM12.75 7C12.75 6.58579 12.4142 6.25 12 6.25C11.5858 6.25 11.25 6.58579 11.25 7V13C11.25 13.4142 11.5858 13.75 12 13.75C12.4142 13.75 12.75 13.4142 12.75 13V7ZM12 15.25C11.3096 15.25 10.75 15.8096 10.75 16.5C10.75 17.1904 11.3096 17.75 12 17.75C12.6904 17.75 13.25 17.1904 13.25 16.5C13.25 15.8096 12.6904 15.25 12 15.25Z"></path>
2109    </svg><div class="grid gap-2 align-self-center text-sm leading-tight"></div>
2110                            </div>
2111                          </form>
2112                        </div>
2113                      </div>
2114                    </modal-element></div><div class="drawer__footer-bottom grid gap-6">
2115                <div class="grid gap-4 sm:grid-6"><div class="grid grid-cols-2 gap-4">
2116                    <div class="tax-note text-sm sm:text-base rte">Taxes and <a href="/policies/shipping-policy">shipping</a> calculated at checkout</div>
2117                    <div class="totals grid place-self-end gap-1">
2118                      <span class="totals__subtotal text-sm sm:text-base">Subtotal</span>
2119                      <div class="totals__subtotal-value text-lg-2xl font-bold leading-none tracking-tight">$0.00 USD</div>
2120                    </div>
2121                  </div>
2122                </div><form action="/cart" method="POST" novalidate class="drawer__footer-buttons grid grid-cols-12 gap-4"><button class="button button--primary icon-with-text col-span-full" type="submit" name="checkout" is="hover-button">
2123                        <span class="btn-fill" data-fill></span>
2124                        <span class="btn-text"><svg class="icon icon-lock icon-sm hidden sm:block" viewBox="0 0 20 20" stroke="currentColor" fill="none" xmlns="http://www.w3.org/2000/svg" role="presentation">
2125      <path stroke-linecap="round" d="M5.83333 6.66675V5.83341C5.83333 4.74781 5.83333 4.205 5.97218 3.76463C6.26651 2.83114 6.99772 2.09993 7.93122 1.8056C8.37159 1.66675 8.91439 1.66675 10 1.66675V1.66675C11.0856 1.66675 11.6284 1.66675 12.0688 1.8056C13.0023 2.09993 13.7335 2.83114 14.0278 3.76463C14.1667 4.205 14.1667 4.74781 14.1667 5.83341V6.66675M10 11.6667V13.3334M8.33333 18.3334H11.6667C13.3741 18.3334 14.2278 18.3334 14.909 18.077C15.9871 17.6713 16.8379 16.8205 17.2436 15.7424C17.5 15.0612 17.5 14.2075 17.5 12.5001V12.5001C17.5 10.7926 17.5 9.93892 17.2436 9.25775C16.8379 8.17969 15.9871 7.32888 14.909 6.92312C14.2278 6.66675 13.3741 6.66675 11.6667 6.66675H8.33333C6.62589 6.66675 5.77218 6.66675 5.091 6.92312C4.01294 7.32888 3.16213 8.17969 2.75638 9.25775C2.5 9.93892 2.5 10.7926 2.5 12.5001V12.5001C2.5 14.2075 2.5 15.0612 2.75638 15.7424C3.16213 16.8205 4.01294 17.6713 5.091 18.077C5.77218 18.3334 6.62589 18.3334 8.33333 18.3334Z"></path>
2126    </svg>Check out</span>
2127                      </button></form></div>
2128            </div>
2129          </div>
2130        </div><div id="RecentlyViewed-sections--20232691384456__cart-drawer" class="drawer__panel opacity-0 flex flex-col overflow-hidden">
2131            <span class="sr-only">Recently viewed</span>
2132            <recently-viewed class="cart__recent flex flex-col h-full" data-url="/search?section_id=sections--20232691384456__cart-drawer&type=product&q=" data-limit="5"></recently-viewed>
2133          </div></div>
2134    </div>
2135  </cart-drawer>
2136</div><div id="shopify-section-sections--20232691384456__search-drawer" class="shopify-section shopify-section-group-overlay-group"><search-drawer id="SearchDrawer" class="search-drawer drawer drawer--end z-35 fixed bottom-0 left-0 h-full w-full pointer-events-none"
2137    role="dialog"
2138    aria-modal="true"
2139    aria-label="Search"
2140    shopify-design-mode
2141    hidden
2142  >
2143    <overlay-element class="overlay fixed-modal invisible opacity-0 fixed bottom-0 left-0 w-full h-screen pointer-events-none" aria-controls="SearchDrawer" aria-expanded="false"></overlay-element>
2144    <div class="drawer__inner z-10 absolute top-0 flex flex-col w-full h-full overflow-hidden">
2145      <gesture-element class="drawer__header flex justify-between opacity-0 invisible relative" tabindex="0">
2146        <span class="drawer__title heading lg:text-3xl text-2xl leading-none tracking-tight">Search</span>
2147        <button class="button button--secondary button--close drawer__close hidden sm:flex items-center justify-center" type="button" is="hover-button" aria-controls="SearchDrawer" aria-expanded="false" aria-label="Close">
2148          <span class="btn-fill" data-fill></span>
2149          <span class="btn-text"><svg class="icon icon-close icon-sm" viewBox="0 0 20 20" stroke="currentColor" fill="none" xmlns="http://www.w3.org/2000/svg" role="presentation">
2150      <path stroke-linecap="round" stroke-linejoin="round" d="M5 15L15 5M5 5L15 15"></path>
2151    </svg></span>
2152        </button>
2153      </gesture-element>
2154      <div class="drawer__content opacity-0 invisible flex flex-col h-full grow shrink">
2155        <div class="drawer__scrollable relative flex flex-col grow shrink"><form class="search__form flex flex-col gap-8 h-full relative" action="/search" method="GET" role="search"
2156    is="predictive-search"
2157    data-section-id="sections--20232691384456__search-drawer"
2158    data-limit="3"
2159  >
2160  <input type="hidden" name="options[prefix]" value="last" />
2161  <label class="sr-only" for="SearchFormInput-sections--20232691384456__search-drawer">Search</label>
2162  <div class="search__field field flex items-center gap-4 relative"><input
2163      class="input search__input"
2164      type="search"
2165      name="q"
2166      id="SearchFormInput-sections--20232691384456__search-drawer"
2167      placeholder="Search for ..."
2168      autocomplete="off"
2169      autocorrect="off"
2170      autocapitalize="off"
2171      spellcheck="off"/>
2172      <button class="clear absolute flex items-center justify-center text-xs opacity-0" type="reset">
2173        <span>Clear</span><svg class="icon icon-loader icon-sm absolute opacity-0 invisible animate-spin" viewBox="0 0 18 18" stroke="currentColor" fill="none" xmlns="http://www.w3.org/2000/svg" role="presentation">
2174      <path stroke-linecap="round" stroke-linejoin="round" d="M0.7,9.9C0.5,5.2,4.1,1.2,8.5,1c4.7-0.3,8.9,3.8,8.8,8.8"></path>
2175    </svg></button></div>
2176    <div id="PredictiveSearchResults-sections--20232691384456__search-drawer" class="search__box search__results text-left flex flex-col items-start grow gap-10" role="listbox"></div></form>
2177</div>
2178      </div>
2179    </div>
2180  </search-drawer>
2181</div>
2182<!-- END sections: overlay-group --><div class="page-container" id="PageContainer">
2183      <main class="main-content relative" id="MainContent" role="main">
2184        <div id="shopify-section-template--20232691286152__main" class="shopify-section collection-section search-section"><style>
2185  #shopify-section-template--20232691286152__main {
2186    --section-padding-top: 40px;
2187    --section-padding-bottom: 100px;
2188  }
2189</style>
2190
2191<link href="//www.thephotostick.com/cdn/shop/t/45/assets/blog.css?v=107725454374733462721778619150" rel="stylesheet" type="text/css" media="all" />
2192<link href="//www.thephotostick.com/cdn/shop/t/45/assets/collection.css?v=70030043281113903561778619151" rel="stylesheet" type="text/css" media="all" />
2193<link href="//www.thephotostick.com/cdn/shop/t/45/assets/search.css?v=65436780809879621631778619167" rel="stylesheet" type="text/css" media="all" />
2194<script src="//www.thephotostick.com/cdn/shop/t/45/assets/collection.js?v=102030528375844515951778619152" defer="defer"></script>
vendor: 1 bytes, line 2194
2194
2195<script src="//www.thephotostick.com/cdn/shop/t/45/assets/search.js?v=6305371176491887341778619167" defer="defer"></script>
2195<div class="section section--padding section--rounded relative">
2196  <div class="collection page-width relative with-drawer">
2197    <div class="title-wrapper text-center leading-none grid gap-8">
2198      <h1 class="heading title-xl tracking-heading" tabindex="-1"><split-words class="split-words js-invisible block" data-animate="fade-up-large">Search</split-words></h1><form class="search__form flex flex-col gap-8 h-full relative" action="/search" method="GET" role="search"
2199    is="predictive-search"
2200    data-section-id="template--20232691286152__main"
2201    data-limit="3"
2202  >
2203  <input type="hidden" name="options[prefix]" value="last" />
2204  <label class="sr-only" for="SearchFormInput-template--20232691286152__main">Search</label>
2205  <div class="search__field field flex items-center gap-4 relative"><input
2206      class="input search__input"
2207      type="search"
2208      name="q"
2209      id="SearchFormInput-template--20232691286152__main"
2210      placeholder="Search for ..."
2211      autocomplete="off"
2212      autocorrect="off"
2213      autocapitalize="off"
2214      spellcheck="off"
2215        value=""
2216      />
2217      <button class="clear absolute flex items-center justify-center text-xs opacity-0" type="reset">
2218        <span>Clear</span><svg class="icon icon-loader icon-sm absolute opacity-0 invisible animate-spin" viewBox="0 0 18 18" stroke="currentColor" fill="none" xmlns="http://www.w3.org/2000/svg" role="presentation">
2219      <path stroke-linecap="round" stroke-linejoin="round" d="M0.7,9.9C0.5,5.2,4.1,1.2,8.5,1c4.7-0.3,8.9,3.8,8.8,8.8"></path>
2220    </svg></button></div>
2221    <div id="PredictiveSearchResults-template--20232691286152__main" class="search__box search__results text-left flex flex-col items-start grow gap-10" role="listbox"></div><predictive-search-overlay class="search__overlay block opacity-0 z-30 fixed top-0 left-0 w-full h-full pointer-events-none"></predictive-search-overlay></form>
2222</div><div class="active-facets flex flex-wrap items-center gap-2 z-1 relative" id="FacetFiltersActive"></div>
2223<div class="collection__content flex"><div class="flex flex-col gap-12 grow" id="ProductGridContainer"></div>
2224      </div></div>
2225</div>
2226
2227
2228</div><div id="shopify-section-template--20232691286152__recently-viewed" class="shopify-section recently-section"><style>
2229  #shopify-section-template--20232691286152__recently-viewed {
2230    --section-padding-top: 72px;
2231    --section-padding-bottom: 80px;}
2232</style>
2233
2234<recently-viewed class="recently-viewed block" data-url="/search?section_id=template--20232691286152__recently-viewed&type=product&q=" data-limit="6"></recently-viewed>
2235
2236
2237</div>
2238      </main>
2239
2240      <footer class="footer-group block w-full" is="footer-group"><!-- BEGIN sections: footer-group -->
2241<div id="shopify-section-sections--20232691318920__footer" class="shopify-section shopify-section-group-footer-group"><style>
2242  #shopify-section-sections--20232691318920__footer {
2243    --section-padding-top: 72px;
2244    --section-padding-bottom: 72px;--color-background: 47 104 179;--color-foreground: 255 255 255;
2245  --color-border: var(--color-foreground)/ 0.1;
2246  --color-border-dark: var(--color-foreground)/ 0.4;
2247  --color-border-light: var(--color-foreground)/ 0.06;--color-button-background: 255 255 255;
2248  --color-button-border: 255 255 255;--color-button-text: 47 104 179;}
2249</style><div class="section section--padding section--rounded" is="footer-parallax">
2250  <div class="footer page-width relative grid" role="region" aria-label="Footer"><div class="footer__left flex flex-col md:flex-row gap-10"><div class="footer__accordions flex flex-wrap flex-col md:flex-row md:grow md:gap-12"><details class="footer__item--link_list-1 details active" is="footer-details" >
2251      <summary class="details__summary flex items-center justify-between gap-2 cursor-pointer">
2252        <span class="heading text-base-2xl font-medium lg:font-heading">Quick links</span><svg class="icon icon-chevron-up icon-md" viewBox="0 0 24 24" stroke="currentColor" fill="none" xmlns="http://www.w3.org/2000/svg" role="presentation">
2253      <path stroke-linecap="round" stroke-linejoin="round" d="M6 15L12 9L18 15"></path>
2254    </svg></summary><div class="details__content">
2255      <ul class="flex flex-col gap-3"><li class="inline-flex">
2256            <a href="/" class="block reversed-link text-sm-lg leading-tight">Home</a>
2257          </li><li class="inline-flex">
2258            <a href="/collections/all-products" class="block reversed-link text-sm-lg leading-tight">Shop Products</a>
2259          </li><li class="inline-flex">
2260            <a href="/pages/about-us" class="block reversed-link text-sm-lg leading-tight">About Us</a>
2261          </li><li class="inline-flex">
2262            <a href="https://www.thephotostick.com/blogs/stories-and-inspiration" class="block reversed-link text-sm-lg leading-tight">ThePhotoStick® Blog</a>
2263          </li><li class="inline-flex">
2264            <a href="/pages/support-center" class="block reversed-link text-sm-lg leading-tight">Support</a>
2265          </li></ul>
2266    </div>
2267    <style>
2268      @media (min-width: 1280px) {
2269        .footer__item--link_list-1 { width: calc(50% - var(--sp-12)); }
2270      }
2271    </style></details>
2271<details class="footer__item--link_list-2 details active" is="footer-details" >
2272      <summary class="details__summary flex items-center justify-between gap-2 cursor-pointer">
2273        <span class="heading text-base-2xl font-medium lg:font-heading">Information</span><svg class="icon icon-chevron-up icon-md" viewBox="0 0 24 24" stroke="currentColor" fill="none" xmlns="http://www.w3.org/2000/svg" role="presentation">
2274      <path stroke-linecap="round" stroke-linejoin="round" d="M6 15L12 9L18 15"></path>
2275    </svg></summary><div class="details__content">
2276      <ul class="flex flex-col gap-3"><li class="inline-flex">
2277            <a href="/pages/shop-all-products" class="block reversed-link text-sm-lg leading-tight">Shop</a>
2278          </li><li class="inline-flex">
2279            <a href="/pages/about-us" class="block reversed-link text-sm-lg leading-tight">About</a>
2280          </li><li class="inline-flex">
2281            <a href="/pages/support-center" class="block reversed-link text-sm-lg leading-tight">Contact Us</a>
2282          </li><li class="inline-flex">
2283            <a href="/pages/support-center" class="block reversed-link text-sm-lg leading-tight">Support</a>
2284          </li><li class="inline-flex">
2285            <a href="/pages/support-return-and-refund-process" class="block reversed-link text-sm-lg leading-tight">Return Policy</a>
2286          </li><li class="inline-flex">
2287            <a href="/pages/support-shipping-information" class="block reversed-link text-sm-lg leading-tight">Shipping Policy</a>
2288          </li><li class="inline-flex">
2289            <a href="/pages/privacy-policy" class="block reversed-link text-sm-lg leading-tight">Privacy Policy</a>
2290          </li><li class="inline-flex">
2291            <a href="/pages/terms-of-service" class="block reversed-link text-sm-lg leading-tight">Terms of Service</a>
2292          </li></ul>
2293    </div>
2294    <style>
2295      @media (min-width: 1280px) {
2296        .footer__item--link_list-2 { width: calc(50% - var(--sp-12)); }
2297      }
2298    </style></details></div>
2299      </div><div class="footer__right grid gap-10"><div class="footer__newsletter grid gap-6"><p class="footer__logo leading-none">
2300                <a href="/">
2301                  <span class="sr-only">ThePhotoStick</span><img src="//www.thephotostick.com/cdn/shop/files/TPS_Logo_White_Transparent.png?v=1770130184&amp;width=1250" alt="" srcset="//www.thephotostick.com/cdn/shop/files/TPS_Logo_White_Transparent.png?v=1770130184&amp;width=150 150w, //www.thephotostick.com/cdn/shop/files/TPS_Logo_White_Transparent.png?v=1770130184&amp;width=200 200w, //www.thephotostick.com/cdn/shop/files/TPS_Logo_White_Transparent.png?v=1770130184&amp;width=300 300w" width="1250" height="625" loading="lazy" sizes="100px" style="--image-width: 100px; --image-height: 50px;" fetchpriority="low" is="lazy-image"></a>
2302              </p><p class="h3 text-xl md:title-md leading-none tracking-none font-medium lg:font-heading">Join ThePhotoStick® Community</p><form method="post" action="/contact#newsletter-sections--20232691318920__footer" id="newsletter-sections--20232691318920__footer" accept-charset="UTF-8" class="newsletter-form grid gap-5"><input type="hidden" name="form_type" value="customer" /><input type="hidden" name="utf8" value="✓" /><input type="hidden" name="contact[tags]" value="newsletter" />
2303  <input type="hidden" name="contact[context]" value="footer" />
2304  <div class="field relative">
2305    <input
2306      id="NewsletterForm--sections--20232691318920__footer"
2307      class="input is-floating input--fill"
2308      type="email"
2309      name="contact[email]"
2310      value=""
2311      autocorrect="off"
2312      autocapitalize="off"
2313      autocomplete="email"
2314      placeholder="Enter your email"
2315      required/>
2316    <label class="label is-floating" for="NewsletterForm--sections--20232691318920__footer">Enter your email</label>
2317    <div class="self-submit-button absolute">
2318      <button type="submit" class="button button--primary self-button flex justify-center items-center" is="magnet-button" data-magnet="20" aria-label="Subscribe">
2319        <span class="btn-text">
2320          <svg class="icon icon-arrow-right icon-xs transform" viewBox="0 0 16 16" stroke="currentColor" fill="none" xmlns="http://www.w3.org/2000/svg" role="presentation">
2321            <path stroke-linecap="round" stroke-linejoin="round" d="M2 8.00012H14M14 8.00012L9.33333 3.3335M14 8.00012L9.33333 12.6668"></path>
2322          </svg>
2323        </span>
2324      </button>
2325    </div>
2326  </div></form></div><div class="footer__socials flex align-self-end justify-start md:justify-end xl:justify-start"><ul class="flex flex-wrap items-center gap-7" role="list"><li><a target="_blank" rel="noopener noreferrer" href="https://www.facebook.com/thephotostickbrand" class="social_platform block relative" is="magnet-link" aria-describedby="a11y-new-window-message" aria-label="ThePhotoStick on Facebook"><svg class="icon icon-facebook icon-lg" viewBox="0 0 24 24" stroke="none" fill="currentColor" xmlns="http://www.w3.org/2000/svg" role="presentation">
2327      <path d="M9.03153 23L9 13H5V9H9V6.5C9 2.7886 11.2983 1 14.6091 1C16.1951 1 17.5581 1.11807 17.9553 1.17085V5.04948L15.6591 5.05052C13.8584 5.05052 13.5098 5.90614 13.5098 7.16171V9H18.75L16.75 13H13.5098V23H9.03153Z"/>
2328    </svg><span class="sr-only">Facebook</span>
2329        </a>
2330      </li><li><a target="_blank" rel="noopener noreferrer" href="https://www.instagram.com/thephotostickbrand/" class="social_platform block relative" is="magnet-link" aria-describedby="a11y-new-window-message" aria-label="ThePhotoStick on Instagram"><svg class="icon icon-instagram icon-lg" viewBox="0 0 24 24" stroke="none" fill="currentColor" xmlns="http://www.w3.org/2000/svg" role="presentation">
2331      <path d="M12 2.98C14.94 2.98 15.28 2.99 16.44 3.04C17.14 3.04 17.83 3.18 18.48 3.42C18.96 3.6 19.39 3.88 19.75 4.24C20.12 4.59 20.4 5.03 20.57 5.51C20.81 6.16 20.94 6.85 20.95 7.55C21 8.71 21.01 9.06 21.01 12C21.01 14.94 21 15.28 20.95 16.44C20.95 17.14 20.81 17.83 20.57 18.48C20.39 18.95 20.11 19.39 19.75 19.75C19.39 20.11 18.96 20.39 18.48 20.57C17.83 20.81 17.14 20.94 16.44 20.95C15.28 21 14.93 21.01 12 21.01C9.07 21.01 8.72 21 7.55 20.95C6.85 20.95 6.16 20.81 5.51 20.57C5.03 20.39 4.6 20.11 4.24 19.75C3.87 19.4 3.59 18.96 3.42 18.48C3.18 17.83 3.05 17.14 3.04 16.44C2.99 15.28 2.98 14.93 2.98 12C2.98 9.07 2.99 8.72 3.04 7.55C3.04 6.85 3.18 6.16 3.42 5.51C3.6 5.03 3.88 4.6 4.24 4.24C4.59 3.87 5.03 3.59 5.51 3.42C6.16 3.18 6.85 3.05 7.55 3.04C8.71 2.99 9.06 2.98 12 2.98ZM12 1C9.01 1 8.64 1.01 7.47 1.07C6.56 1.09 5.65 1.26 4.8 1.58C4.07 1.86 3.4 2.3 2.85 2.85C2.3 3.41 1.86 4.07 1.58 4.8C1.26 5.65 1.09 6.56 1.07 7.47C1.02 8.64 1 9.01 1 12C1 14.99 1.01 15.36 1.07 16.53C1.09 17.44 1.26 18.35 1.58 19.2C1.86 19.93 2.3 20.6 2.85 21.15C3.41 21.7 4.07 22.14 4.8 22.42C5.65 22.74 6.56 22.91 7.47 22.93C8.64 22.98 9.01 23 12 23C14.99 23 15.36 22.99 16.53 22.93C17.44 22.91 18.35 22.74 19.2 22.42C19.93 22.14 20.6 21.7 21.15 21.15C21.7 20.59 22.14 19.93 22.42 19.2C22.74 18.35 22.91 17.44 22.93 16.53C22.98 15.36 23 14.99 23 12C23 9.01 22.99 8.64 22.93 7.47C22.91 6.56 22.74 5.65 22.42 4.8C22.14 4.07 21.7 3.4 21.15 2.85C20.59 2.3 19.93 1.86 19.2 1.58C18.35 1.26 17.44 1.09 16.53 1.07C15.36 1.02 14.99 1 12 1ZM12 6.35C10.88 6.35 9.79 6.68 8.86 7.3C7.93 7.92 7.21 8.8 6.78 9.84C6.35 10.87 6.24 12.01 6.46 13.1C6.68 14.2 7.22 15.2 8.01 15.99C8.8 16.78 9.81 17.32 10.9 17.54C12 17.76 13.13 17.65 14.16 17.22C15.19 16.79 16.07 16.07 16.7 15.14C17.32 14.21 17.65 13.12 17.65 12C17.65 10.5 17.05 9.06 16 8.01C14.94 6.95 13.5 6.36 12.01 6.36L12 6.35ZM12 15.67C11.27 15.67 10.57 15.45 9.96 15.05C9.36 14.65 8.89 14.07 8.61 13.4C8.33 12.73 8.26 11.99 8.4 11.28C8.54 10.57 8.89 9.92 9.4 9.4C9.91 8.88 10.57 8.54 11.28 8.4C11.99 8.26 12.73 8.33 13.4 8.61C14.07 8.89 14.64 9.36 15.05 9.96C15.45 10.56 15.67 11.27 15.67 12C15.67 12.97 15.28 13.91 14.6 14.59C13.91 15.28 12.98 15.66 12.01 15.66L12 15.67ZM17.87 7.45C18.6 7.45 19.19 6.86 19.19 6.13C19.19 5.4 18.6 4.81 17.87 4.81C17.14 4.81 16.55 5.4 16.55 6.13C16.55 6.86 17.14 7.45 17.87 7.45Z"/>
2332    </svg><span class="sr-only">Instagram</span>
2333        </a>
2334      </li><li><a target="_blank" rel="noopener noreferrer" href="https://www.youtube.com/@thephotostick" class="social_platform block relative" is="magnet-link" aria-describedby="a11y-new-window-message" aria-label="ThePhotoStick on YouTube"><svg class="icon icon-youtube icon-lg" viewBox="0 0 24 24" stroke="none" fill="currentColor" xmlns="http://www.w3.org/2000/svg" role="presentation">
2335      <path d="M23.8 7.6C23.8 7.6 23.6 5.9 22.8 5.2C21.9 4.2 20.9 4.2 20.4 4.2C17 4 12 4 12 4C12 4 7 4 3.6 4.2C3.1 4.3 2.1 4.3 1.2 5.2C0.5 5.9 0.2 7.6 0.2 7.6C0.2 7.6 0 9.5 0 11.5V13.3C0 15.2 0.2 17.2 0.2 17.2C0.2 17.2 0.4 18.9 1.2 19.6C2.1 20.6 3.3 20.5 3.8 20.6C5.7 20.8 12 20.8 12 20.8C12 20.8 17 20.8 20.4 20.5C20.9 20.4 21.9 20.4 22.8 19.5C23.5 18.8 23.8 17.1 23.8 17.1C23.8 17.1 24 15.2 24 13.2V11.4C24 9.5 23.8 7.6 23.8 7.6ZM9.5 15.5V8.8L16 12.2L9.5 15.5Z"/>
2336    </svg><span class="sr-only">YouTube</span>
2337        </a>
2338      </li><li><a target="_blank" rel="noopener noreferrer" href="https://www.tiktok.com/@thephotostickomni" class="social_platform block relative" is="magnet-link" aria-describedby="a11y-new-window-message" aria-label="ThePhotoStick on TikTok"><svg class="icon icon-tiktok icon-lg" viewBox="0 0 24 24" stroke="none" fill="currentColor" xmlns="http://www.w3.org/2000/svg" role="presentation">
2339      <path d="M10.6315 8.937V13.059C10.1123 12.9221 9.56911 12.9034 9.0418 13.0044C8.5145 13.1054 8.01657 13.3234 7.58473 13.6424C7.15288 13.9613 6.79813 14.3732 6.54661 14.8475C6.2951 15.3218 6.15324 15.8466 6.13148 16.383C6.10175 16.8449 6.17125 17.3078 6.33531 17.7405C6.49938 18.1733 6.7542 18.5659 7.08266 18.892C7.41111 19.2181 7.80557 19.4701 8.23952 19.631C8.67346 19.7919 9.13684 19.8581 9.59848 19.825C10.0648 19.8608 10.5333 19.7949 10.9717 19.6319C11.41 19.4689 11.8078 19.2126 12.1374 18.8809C12.4671 18.5491 12.7208 18.1498 12.881 17.7104C13.0413 17.271 13.1042 16.8021 13.0655 16.336V0H17.1425C17.8355 4.315 19.9935 5.316 22.8825 5.778V9.913C20.8804 9.74881 18.9491 9.09645 17.2575 8.013V16.18C17.2575 19.88 15.0675 24 9.63048 24C8.61045 23.9955 7.60156 23.7875 6.66297 23.3881C5.72437 22.9886 4.87496 22.4059 4.16451 21.6739C3.45407 20.942 2.89689 20.0755 2.52563 19.1254C2.15438 18.1754 1.97652 17.1607 2.00248 16.141C2.03479 15.0794 2.29174 14.0366 2.75639 13.0815C3.22105 12.1265 3.88285 11.2807 4.69819 10.6C5.51352 9.9193 6.46387 9.41915 7.48658 9.1325C8.50929 8.84586 9.58114 8.77923 10.6315 8.937Z"/>
2340    </svg><span class="sr-only">TikTok</span>
2341        </a>
2342      </li><li><a target="_blank" rel="noopener noreferrer" href="https://www.pinterest.com/ThePhotoStickOfficial/" class="social_platform block relative" is="magnet-link" aria-describedby="a11y-new-window-message" aria-label="ThePhotoStick on Pinterest"><svg class="icon icon-pinterest icon-lg" viewBox="0 0 24 24" stroke="none" fill="currentColor" xmlns="http://www.w3.org/2000/svg" role="presentation">
2343      <path d="M12 1C5.95 1 1 5.95 1 12C1 16.675 3.93333 20.6167 7.96667 22.2667C7.875 21.4417 7.78333 20.0667 7.96667 19.15C8.15 18.325 9.25 13.65 9.25 13.65C9.25 13.65 8.975 12.9167 8.975 12C8.975 10.4417 9.89167 9.34167 10.9917 9.34167C11.9083 9.34167 12.3667 10.075 12.3667 10.9C12.3667 11.8167 11.725 13.2833 11.45 14.5667C11.175 15.6667 12 16.5833 13.1 16.5833C15.025 16.5833 16.5833 14.5667 16.5833 11.5417C16.5833 8.88333 14.6583 7.05 12 7.05C8.88333 7.05 7.05 9.43333 7.05 11.8167C7.05 12.7333 7.41667 13.7417 7.875 14.2917C7.96667 14.3833 7.96667 14.475 7.96667 14.5667C7.875 14.9333 7.69167 15.6667 7.69167 15.85C7.6 16.0333 7.50833 16.125 7.325 16.0333
2343C5.95 15.3917 5.125 13.375 5.125 11.8167C5.125 8.33333 7.69167 5.125 12.3667 5.125C16.2167 5.125 19.15 7.875 19.15 11.45C19.15 15.2083 16.7667 18.325 13.4667 18.325C12.3667 18.325 11.2667 17.775 10.9 17.0417C10.9 17.0417 10.35 19.15 10.2583 19.7C9.98333 20.6167 9.34167 21.8083 8.88333 22.5417C9.8 22.8167 10.9 23 12 23C18.05 23 23 18.05 23 12C23 5.95 18.05 1 12 1Z"/>
2344    </svg><span class="sr-only">Pinterest</span>
2345        </a>
2346      </li></ul></div><div class="follow-on-shop">
2346<script defer="defer" async type="module" src="https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.shop-follow-button.en.esm.js"></script>
vendor: 1 bytes, line 2346
2346
2347<script type="module">
2348  await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.shop-follow-button.en.esm.js");
2349
2350  
2351</script>
2351
2352
2353<shop-follow-button ux-mode="windoid" return-uri="https://www.thephotostick.com/account/redirect" proxy="true"></shop-follow-button>
2354</div></div></div><parallax-overlay class="footer-overlay hidden md:block z-20 absolute left-0 top-0 w-full pointer-events-none" data-target="height" data-start="100%" data-stop="0%"></parallax-overlay></div>
2355
2356
2357</div><div id="shopify-section-sections--20232691318920__custom_liquid_n3L7fw" class="shopify-section shopify-section-group-footer-group"><style>
2358  #shopify-section-sections--20232691318920__custom_liquid_n3L7fw {
2359    --section-padding-top: 72px;
2360    --section-padding-bottom: 72px;}
2361</style>
2362
2363<div class="section section--padding">
2364  <div class="page-width relative">
2365    
2366<div style="max-width: 600px; margin: 0 auto; background-color: #eef6fb; border: 1px solid #cce2f0; border-radius: 6px; padding: 20px; text-align: center;">
2367  <a href="#" class="termly-display-preferences" style="background-color: #1990C6; color: #ffffff; padding: 10px 20px; text-decoration: none; border-radius: 5px; display: inline-block; margin-bottom: 2px;">Consent Settings</a>
2368</div>
2369
2370<div style="text-align: left; padding-top: 25px;">
2371  <div style="max-width: 600px; margin: 0 auto; background-color: #eef6fb; border: 1px solid #cce2f0; border-radius: 6px; padding: 20px; font-size: 0.9em; color: #000; font-style: italic;">
2372    
2373    <div style="margin-bottom: 15px;">
2374      <a href="https://www.thephotostick.com/pages/dsar" style="display: block; margin: 8px 0; color: #0000EE;">Do Not Sell or Share My Personal Information</a>
2375      <a href="https://www.thephotostick.com/pages/dsar" style="display: block; margin: 8px 0; color: #0000EE;">Limit the Use Of My Sensitive Personal Information</a>
2376    </div>
2377
2378    <p><strong>IMPORTANT:</strong></p>
2379    <p><strong>These forms are for submitting Data Subject Access Requests (DSARs) related to privacy rights, such as accessing, deleting, or managing personal information.</strong></p>
2380    <p><u>It is not for order inquiries, cancellations, refunds, or technical support.</u></p>
2381
2382    <p style="margin-top: 10px;">
2383      For assistance with your order or product, please contact our support team by using the chat feature or visiting our 
2384      <a href="https://www.thephotostick.com/pages/support-center" style="color: #0000EE;">Support Center</a>.
2385    </p>
2386    
2387  </div>
2388</div>
2389
2390  </div>
2391</div>
2392
2393
2394</div>
2395<!-- END sections: footer-group --></footer>
2396    </div>
2397
2398    <ul hidden>
2399      <li id="a11y-refresh-page-message">Choosing a selection results in a full page refresh.</li>
2400      <li id="a11y-new-window-message">Opens in a new window.</li>
2401    </ul>
2401<script src="//www.thephotostick.com/cdn/shop/t/45/assets/instant-page.js?v=99963444960178710701778619156" type="module" fetchpriority="low" defer="defer"></script>
2401<!-- Maropost Code
2402    
2402<script async src='https://content.maropost.com/uploads/2043/websites/1/a731bd45f9438e1ac66f74219757a9fc85501e7e-v5.js' type='text/javascript'></script>
2402
2403 Maropost Code End -->
2404<!-- AccessiBe Code -->    
2405<script> (function(){ var s = document.createElement('script'); var h = document.querySelector('head') || document.body; s.src = 'https://acsbapp.com/apps/app/dist/js/app.js'; s.async = true; s.onload = function(){ acsbJS.init({ statementLink : '', footerHtml : '', hideMobile : false, hideTrigger : false, disableBgProcess : false, language : 'en', position : 'left', leadColor : '#146ff8', triggerColor : '#146ff8', triggerRadius : '50%', triggerPositionX : 'left', triggerPositionY : 'bottom', triggerIcon : 'people', triggerSize : 'medium', triggerOffsetX : 20, triggerOffsetY : 20, mobile : { triggerSize : 'small', triggerPositionX : 'left', triggerPositionY : 'bottom', triggerOffsetX : 10, triggerOffsetY : 10, triggerRadius : '50%' } }); }; h.appendChild(s); })(); </script>
2405
2406<!-- Button Logic for sales pages --> 
2407
2408
2409  <div id="shopify-block-AbmR4ZVhWZXJvS2NJQ__2786716548061469553" class="shopify-block shopify-app-block">
2410
2411<script>
2412</script>
2412
2413
2414 </div><div id="shopify-block-ARk1MeEJVR0Fxd3QzV__8847685616676869210" class="shopify-block shopify-app-block">
2415  <!-- BEGIN app snippet: announcement -->
2416
2417
2418
2419<script id="test-snippets">
2420  
2421    window.ab_animation = {"_id":"618c0d84fbd4e135b2a7af54", "rmvBtnEnabled":false, "slidePadding":8, "cssEnabled":false, "textAnimation":false, "shopUrl":"thephotostick.myshopify.com", "userId":"618c0d84fbd4e135b2a7af53", "animationIn":"lightSpeedIn", "animationOut":"slideOutRight", "autoplayTime":12500, "animationTime":1500, "slideHeight":"40", "type":"all", "slidePosition":"fixed", "rmvBtnColor":"#ffffff", "customCss":".section-header{ top: var(--announcement-bar-height0); }", "absolutePosition":"", "created":"2021-11-10T18:20:52.934Z", "updated":"2021-11-10T18:20:52.934Z", "__v":0, "StrictMobileSelector":"", "StrictSelector":"", "customPosition":"", "fixMobileSelector":"", "selector":"", "textAnimationBg":"#000", "textAnimationPadding":20, "textAnimationSliderWidth":0, "textAnimationTime":30, "textAnimationWidth":1541, "timePerPixel":76.86666666666666};
2422  
2423
2424  
2425    window.ab_announcement = [];
2426  
2427
2428   
2429    window.ab_user = {"recurringPlanName":"Yearly", "recurringPlanType":"Paid", "recurringPlanId":"Yearly"};
2430  
2431</script>
2431
2432
2433<script>
2434  var activeCurrency = "USD";
2435  var activeCurrencySymbol = "$";
2436  var productDetails = null;
2437  var ws_currencyFormat = "${{amount}} USD";
2438</script>
2438<!-- END app snippet -->
2439
2440</div><div id="shopify-block-Aakx5azA3LzNyenVHT__1561686393582567663" class="shopify-block shopify-app-block">
2440<script>
2441  const cartDetail = [
2442    
2443  ];
2444
2445  window.orichiLimit = {
2446    limits: [],
2447    currentProduct: null,
2448    collections: null,
2449    parameters: [],
2450    cartItems: null,
2451    cart: cartDetail,
2452    publicAccessToken: null,
2453    shopInfo:{
2454      currencyFormat: "${{amount}}",
2455    }
2456  };
2457  
2458    
2459    window.orichiLimit.limits = [{"Id":"0192778e-00b1-42c6-8095-aab70790b5c8","StoreId":"01927786-4286-457f-9543-957a921736b6","Title":"Max Quantity - 32GB TPSO (Sale) ET","Status":true,"Target":"product","CreatedDate":"2024-10-11T00:50:47.985322+07:00","ShopifyObjects":[{"Id":8385761411208,"Title":"32GB - ThePhotoStick® Omni (Sale)","Handle":"thephotostick-omni-32gb-sale","ParentId":0,"ParentName":""}],"ValidationRules":[{"Type":"maximum_quantity","Value":"3","Unit":null}],"AlertMessages":[{"Type":"cart_and_checkout","Value":"Limit of 5 items per purchase."}],"ProductTags":null,"CustomerTags":[],"IsApplyCountry":null,"IsApplyCustomerTags":null,"IsApplyCustomerLifetime":null,"CustomerGroupType":null,"AllowQuantities":null,"SpecificQuantities":null,"IsShowLimitTable":false,"StartDate":null,"EndDate":null,"IsSetEndDate":false,"LastUpdateLifetime":null,"UpdatedAt":null,"Countries":null,"ValidationRuleId":"gid://shopify/Validation/9994376","AlertInProductPage":true,"AlertProductPageMessage":"Quantity is not valid","LanguageCodes":null,"PreventCoPurchase":null,"AlertMessageLanguage":null,"IsAdvanceRuleMessage":false,"AdvanceRuleMessages":[],"AppearanceSetting":{"ProductPageCornerRadius":14,"ProductPageTextColor":"#000000","ProductPageBackgroundColor":"#F7CA00","OrderLimitTableShowMinimumColumn":true,"OrderLimitTableShowMaximumColumn":true,"OrderLimitTableTextColor":"#000000","OrderLimitTableBackgroundColor":"#F7CA00","CartPageTextColor":"#000000","CartPageBackgroundColor":"#F7CA00"},"TableMessages":null,"version":"2.2"},{"Id":"019296f8-ca83-4110-9fdc-0650bea79418","StoreId":"01927786-4286-457f-9543-957a921736b6","Title":"Max Quantity - TPSO Packs","Status":true,"Target":"product","CreatedDate":"2024-10-17T03:15:40.1630561+07:00","ShopifyObjects":[{"Id":6647449976968,"Title":"Buy 1 ThePhotoStick® Omni 64GB, Get 1 50% OFF","Handle":"buy-1-thephotostick-omni-64gb-get-1-50-off","ParentId":0,"ParentName":""},{"Id":6687211552904,"Title":"Buy 2 ThePhotoStick® Omni 128GB, Get 2 FREE","Handle":"buy-2-thephotostick-omni-128gb-get-2-free","ParentId":0,"ParentName":""},{"Id":8501669298312,"Title":"Buy 2 ThePhotoStick® Omni 128GB, Get 2 FREE - Sale","Handle":"buy-2-thephotostick-omni-128gb-get-2-free-sale","ParentId":0,"ParentName":""},{"Id":6687206965384,"Title":"Buy 2 ThePhotoStick® Omni 256GB, Get 2 FREE","Handle":"buy-2-thephotostick-omni-256gb-get-2-free","ParentId":0,"ParentName":""},{"Id":8501669625992,"Title":"Buy 2 ThePhotoStick® Omni 256GB, Get 2 FREE - Sale","Handle":"buy-2-thephotostick-omni-256gb-get-2-free-sale","ParentId":0,"ParentName":""},{"Id":6647455514760,"Title":"Buy 2 ThePhotoStick® Omni 64GB, Get 2 FREE","Handle":"buy-2-thephotostick-omni-64gb-get-2-free","ParentId":0,"ParentName":""},{"Id":8501670051976,"Title":"Buy 2 ThePhotoStick® Omni 64GB, Get 2 FREE - Sale","Handle":"buy-2-thephotostick-omni-64gb-get-2-free-sale","ParentId":0,"ParentName":""},{"Id":6646956687496,"Title":"Buy 2 ThePhotoStick® Omni 64GB, Get 40% OFF","Handle":"buy-2-thephotostick-omni-64gb-get-40-off","ParentId":0,"ParentName":""},{"Id":6647443751048,"Title":"Buy 3 ThePhotoStick® Omni 64GB, Get 50% OFF","Handle":"buy-3-thephotostick-omni-64gb-get-50-off","ParentId":0,"ParentName":""}],"ValidationRules":[{"Type":"maximum_quantity","Value":"1","Unit":null}],"AlertMessages":[{"Type":"cart_and_checkout","Value":"Limit of 5 items per purchase."}],"ProductTags":null,"CustomerTags":[],"IsApplyCountry":null,"IsApplyCustomerTags":null,"IsApplyCustomerLifetime":null,"CustomerGroupType":null,"AllowQuantities":null,"SpecificQuantities":null,"IsShowLimitTable":false,"StartDate":null,"EndDate":null,"IsSetEndDate":false,"LastUpdateLifetime":null,"UpdatedAt":null,"Countries":null,"ValidationRuleId":"gid://shopify/Validation/10256520","AlertInProductPage":true,"AlertProductPageMessage":"Quantity is not val
2459id","LanguageCodes":null,"PreventCoPurchase":null,"AlertMessageLanguage":null,"IsAdvanceRuleMessage":false,"AdvanceRuleMessages":[],"AppearanceSetting":{"ProductPageCornerRadius":14,"ProductPageTextColor":"#000000","ProductPageBackgroundColor":"#F7CA00","OrderLimitTableShowMinimumColumn":true,"OrderLimitTableShowMaximumColumn":true,"OrderLimitTableTextColor":"#000000","OrderLimitTableBackgroundColor":"#F7CA00","CartPageTextColor":"#000000","CartPageBackgroundColor":"#F7CA00"},"TableMessages":null,"version":"2.2"}];
2460    
2461  
2462  
2463  
2464    window.orichiLimit.publicAccessToken = "1398634fb126279d60628242bb7f579e";
2465  
2466  
2467    window.orichiLimit.IntendedError = {"version":"2.2"};
2468  
2469
2470  
2471  window.test={"access_token":"1398634fb126279d60628242bb7f579e","IntendedError":{"version":"2.2"},"limits":[{"Id":"0192778e-00b1-42c6-8095-aab70790b5c8","StoreId":"01927786-4286-457f-9543-957a921736b6","Title":"Max Quantity - 32GB TPSO (Sale) ET","Status":true,"Target":"product","CreatedDate":"2024-10-11T00:50:47.985322+07:00","ShopifyObjects":[{"Id":8385761411208,"Title":"32GB - ThePhotoStick® Omni (Sale)","Handle":"thephotostick-omni-32gb-sale","ParentId":0,"ParentName":""}],"ValidationRules":[{"Type":"maximum_quantity","Value":"3","Unit":null}],"AlertMessages":[{"Type":"cart_and_checkout","Value":"Limit of 5 items per purchase."}],"ProductTags":null,"CustomerTags":[],"IsApplyCountry":null,"IsApplyCustomerTags":null,"IsApplyCustomerLifetime":null,"CustomerGroupType":null,"AllowQuantities":null,"SpecificQuantities":null,"IsShowLimitTable":false,"StartDate":null,"EndDate":null,"IsSetEndDate":false,"LastUpdateLifetime":null,"UpdatedAt":null,"Countries":null,"ValidationRuleId":"gid:\/\/shopify\/Validation\/9994376","AlertInProductPage":true,"AlertProductPageMessage":"Quantity is not valid","LanguageCodes":null,"PreventCoPurchase":null,"AlertMessageLanguage":null,"IsAdvanceRuleMessage":false,"AdvanceRuleMessages":[],"AppearanceSetting":{"ProductPageCornerRadius":14,"ProductPageTextColor":"#000000","ProductPageBackgroundColor":"#F7CA00","OrderLimitTableShowMinimumColumn":true,"OrderLimitTableShowMaximumColumn":true,"OrderLimitTableTextColor":"#000000","OrderLimitTableBackgroundColor":"#F7CA00","CartPageTextColor":"#000000","CartPageBackgroundColor":"#F7CA00"},"TableMessages":null,"version":"2.2"},{"Id":"019296f8-ca83-4110-9fdc-0650bea79418","StoreId":"01927786-4286-457f-9543-957a921736b6","Title":"Max Quantity - TPSO Packs","Status":true,"Target":"product","CreatedDate":"2024-10-17T03:15:40.1630561+07:00","ShopifyObjects":[{"Id":6647449976968,"Title":"Buy 1 ThePhotoStick® Omni 64GB, Get 1 50% OFF","Handle":"buy-1-thephotostick-omni-64gb-get-1-50-off","ParentId":0,"ParentName":""},{"Id":6687211552904,"Title":"Buy 2 ThePhotoStick® Omni 128GB, Get 2 FREE","Handle":"buy-2-thephotostick-omni-128gb-get-2-free","ParentId":0,"ParentName":""},{"Id":8501669298312,"Title":"Buy 2 ThePhotoStick® Omni 128GB, Get 2 FREE - Sale","Handle":"buy-2-thephotostick-omni-128gb-get-2-free-sale","ParentId":0,"ParentName":""},{"Id":6687206965384,"Title":"Buy 2 ThePhotoStick® Omni 256GB, Get 2 FREE","Handle":"buy-2-thephotostick-omni-256gb-get-2-free","ParentId":0,"ParentName":""},{"Id":8501669625992,"Title":"Buy 2 ThePhotoStick® Omni 256GB, Get 2 FREE - Sale","Handle":"buy-2-thephotostick-omni-256gb-get-2-free-sale","ParentId":0,"ParentName":""},{"Id":6647455514760,"Title":"Buy 2 ThePhotoStick® Omni 64GB, Get 2 FREE","Handle":"buy-2-thephotostick-omni-64gb-get-2-free","ParentId":0,"ParentName":""},{"Id":8501670051976,"Title":"Buy 2 ThePhotoStick® Omni 64GB, Get 2 FREE - Sale","Handle":"buy-2-thephotostick-omni-64gb-get-2-free-sale","ParentId":0,"ParentName":""},{"Id":6646956687496,"Title":"Buy 2 ThePhotoStick® Omni 64GB, Get 40% OFF","Handle":"buy-2-thephotostick-omni-64gb-get-40-off","ParentId":0,"ParentName":""},{"Id":6647443751048,"Title":"Buy 3 ThePhotoStick® Omni 64GB, Get 50% OFF","Handle":"buy-3-thephotostick-omni-64gb-get-50-off","ParentId":0,"ParentName":""}],"ValidationRules":[{"Type":"maximum_quantity","Value":"1","Unit":null}],"AlertMessages":[{"Type":"cart_and_checkout","Value":"Limit of 5 items per purchase."}],"ProductTags":null,"CustomerTags":[],"IsApplyCountry":null,"IsApplyCustomerTags":null,"IsApplyCustomerLifetime":null,"CustomerGroupType":null,"AllowQuantities":null,"SpecificQuantities":null,"IsShowLimitTable":false,"StartDate":null,"EndDate":null,"IsSetEndDate":false,"LastUpdateLifetime":null,"UpdatedAt":null,"Countries":null,"ValidationRuleId":"gid:\/\/shopify\/Validation\/10256520","AlertInProductPage":true,"AlertProductPageMessage":"Quantity is not val
2471id","LanguageCodes":null,"PreventCoPurchase":null,"AlertMessageLanguage":null,"IsAdvanceRuleMessage":false,"AdvanceRuleMessages":[],"AppearanceSetting":{"ProductPageCornerRadius":14,"ProductPageTextColor":"#000000","ProductPageBackgroundColor":"#F7CA00","OrderLimitTableShowMinimumColumn":true,"OrderLimitTableShowMaximumColumn":true,"OrderLimitTableTextColor":"#000000","OrderLimitTableBackgroundColor":"#F7CA00","CartPageTextColor":"#000000","CartPageBackgroundColor":"#F7CA00"},"TableMessages":null,"version":"2.2"}]}
2472</script>
2472
2473
2474
2475
2476  
2476<script defer="defer" src="https://cdn.shopify.com/extensions/01a0e740-4c82-7845-92b0-c2827873adc8/madgic-checkout-validation-429/assets/orichi-limit-purchase.js"></script>
2476
2477
2478<link href="https://cdn.shopify.com/extensions/01a0e740-4c82-7845-92b0-c2827873adc8/madgic-checkout-validation-429/assets/orichi-limit-purchase.css" rel="stylesheet" type="text/css" />
2479
2480<script>
2481  window.themeSettings = {
2482    cartType: 'drawer',
2483    enableCartDrawer: false,
2484    useAjaxCart: "null",
2485
2486    // Một số theme có thể dùng tên biến khác
2487    cartStyle: '',
2488    miniCartEnabled: false,
2489
2490    // Export luôn template để check
2491    currentTemplate: 'search',
2492    cartTemplate: 'search'
2493  };
2494</script>
2494
2495
2496
2497</div>
2497<script src="https://cdn.shopify.com/storefront/standard-actions.js" type="module" data-source-attribution="shopify.standard_actions"></script>
2497
2498</body>
2499</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.