PageSourceSearch

https://www.drinkjoey.com/collections/shop-all

html drinkjoey.com collected 2026-10-04 20:15:54 UTC 228,715 bytes, 2,983 lines download raw bytes

1<!doctype html>
2
3<html lang="en" dir="ltr">
4  <head>
5<!-- Start of Booster Apps Seo-0.1-->
5<script type="application/ld+json">
6  {
7    "@context": "https://schema.org",
8    "@type": "WebSite",
9    "name": "Joe\u0026#39;y",
10    "url": "https://www.drinkjoey.com",
11    "potentialAction": {
12      "@type": "SearchAction",
13      "query-input": "required name=query",
14      "target": "https://www.drinkjoey.com/search?q={query}"
15    }
16  }
17</script>
17<script type="application/ld+json">
18  {
19    "@context": "https://schema.org",
20    "@type": "CollectionPage",
21    "name": "Shop all",
22    "url": "https://www.drinkjoey.com/collections/shop-all","mainEntity": {
23      "@type": "ItemList",
24      "numberOfItems": 7,
25      "itemListElement": [{
26          "@type": "ListItem",
27          "position": 1,
28          "name": "Original Joe'y",
29          "url": "https://www.drinkjoey.com/products/joey-flavor-original"
30        },{
31          "@type": "ListItem",
32          "position": 2,
33          "name": "Vanilla Joe'y",
34          "url": "https://www.drinkjoey.com/products/joey-flavor-vanilla"
35        },{
36          "@type": "ListItem",
37          "position": 3,
38          "name": "Mocha Joe'y",
39          "url": "https://www.drinkjoey.com/products/joey-flavor-mocha"
40        },{
41          "@type": "ListItem",
42          "position": 4,
43          "name": "Froth'y",
44          "url": "https://www.drinkjoey.com/products/frothy"
45        },{
46          "@type": "ListItem",
47          "position": 5,
48          "name": "Joe'y Jar",
49          "url": "https://www.drinkjoey.com/products/joey-jar"
50        },{
51          "@type": "ListItem",
52          "position": 6,
53          "name": "Joe'y Mug",
54          "url": "https://www.drinkjoey.com/products/fellow-ceramic-mug"
55        },{
56          "@type": "ListItem",
57          "position": 7,
58          "name": "Joe'y Tumbler",
59          "url": "https://www.drinkjoey.com/products/joey-tumbler"
60        }]
61    }
62  }
63</script>
63
64<!-- end of Booster Apps SEO -->
65
66
67    
68    
69    
70    
71    
72      
73      
74    
75<style>#footer-app,#home-product-pages-app{overflow-x:clip;}</style>
76
77    <meta charset="utf-8">
78    <meta name="viewport" content="width=device-width, initial-scale=1.0, height=device-height, minimum-scale=1.0, maximum-scale=5.0">
79
80    
81<link rel="canonical" href="https://www.drinkjoey.com/collections/shop-all"><link rel="shortcut icon" href="//www.drinkjoey.com/cdn/shop/files/Joe_y_Shopify_Square_Logo.png?v=1735544978&width=96">
82      <link rel="apple-touch-icon" href="//www.drinkjoey.com/cdn/shop/files/Joe_y_Shopify_Square_Logo.png?v=1735544978&width=180"><link rel="preconnect" href="https://fonts.shopifycdn.com" crossorigin><link rel="preload" href="//www.drinkjoey.com/cdn/fonts/instrument_sans/instrumentsans_n4.db86542ae5e1596dbdb28c279ae6c2086c4c5bfa.woff2" as="font" type="font/woff2" crossorigin><link rel="preload" href="//www.drinkjoey.com/cdn/fonts/nunito/nunito_n4.fc49103dc396b42cae9460289072d384b6c6eb63.woff2" as="font" type="font/woff2" crossorigin><link rel="preload" href="//www.drinkjoey.com/cdn/shop/files/mohr-black-webfont.woff2?v=15419162492476879935" as="font" type="font/woff2" crossorigin>
83    <link rel="preload" href="//www.drinkjoey.com/cdn/shop/files/mohr-semibold-webfont.woff2?v=3232129701942460624" as="font" type="font/woff2" crossorigin><meta property="og:type" content="website">
84  <meta property="og:title" content="Shop all"><meta property="og:image" content="http://www.drinkjoey.com/cdn/shop/collections/shop-all-183212.png?v=1749353416&width=2048">
85  <meta property="og:image:secure_url" content="https://www.drinkjoey.com/cdn/shop/collections/shop-all-183212.png?v=1749353416&width=2048">
86  <meta property="og:image:width" content="2624">
87  <meta property="og:image:height" content="704"><meta property="og:description" content="Shop Joe&#39;y in Original, Vanilla and Mocha, plus kits and accessories: the Froth&#39;y frother, jar, mug and tumbler. Subscribe and save 20%."><meta property="og:url" content="https://www.drinkjoey.com/collections/shop-all">
88<meta property="og:site_name" content="Joe&#39;y"><meta name="twitter:card" content="summary"><meta name="twitter:title" content="Shop all">
89  <meta name="twitter:description" content=""><meta name="twitter:image" content="https://www.drinkjoey.com/cdn/shop/collections/shop-all-183212.png?crop=center&height=1200&v=1749353416&width=1200">
90  <meta name="twitter:image:alt" content="Shop all | Respect des Fonds">
90<script type="application/ld+json">
91  {
92    "@context": "https://schema.org",
93    "@type": "BreadcrumbList",
94    "itemListElement": [{
95        "@type": "ListItem",
96        "position": 1,
97        "name": "Home",
98        "item": "https://www.drinkjoey.com"
99      },{
100            "@type": "ListItem",
101            "position": 2,
102            "name": "Shop all",
103            "item": "https://www.drinkjoey.com/collections/shop-all"
104          }]
105  }
106</script>
106<style>/* Typography (heading) */
107  @font-face {
108  font-family: "Instrument Sans";
109  font-weight: 400;
110  font-style: normal;
111  font-display: fallback;
112  src: url("//www.drinkjoey.com/cdn/fonts/instrument_sans/instrumentsans_n4.db86542ae5e1596dbdb28c279ae6c2086c4c5bfa.woff2") format("woff2"),
113       url("//www.drinkjoey.com/cdn/fonts/instrument_sans/instrumentsans_n4.510f1b081e58d08c30978f465518799851ef6d8b.woff") format("woff");
114}
115
116@font-face {
117  font-family: "Instrument Sans";
118  font-weight: 400;
119  font-style: italic;
120  font-display: fallback;
121  src: url("//www.drinkjoey.com/cdn/fonts/instrument_sans/instrumentsans_i4.028d3c3cd8d085648c808ceb20cd2fd1eb3560e5.woff2") format("woff2"),
122       url("//www.drinkjoey.com/cdn/fonts/instrument_sans/instrumentsans_i4.7e90d82df8dee29a99237cd19cc529d2206706a2.woff") format("woff");
123}
124
125/* Typography (body) */
126  @font-face {
127  font-family: Nunito;
128  font-weight: 400;
129  font-style: normal;
130  font-display: fallback;
131  src: url("//www.drinkjoey.com/cdn/fonts/nunito/nunito_n4.fc49103dc396b42cae9460289072d384b6c6eb63.woff2") format("woff2"),
132       url("//www.drinkjoey.com/cdn/fonts/nunito/nunito_n4.5d26d13beeac3116db2479e64986cdeea4c8fbdd.woff") format("woff");
133}
134
135@font-face {
136  font-family: Nunito;
137  font-weight: 400;
138  font-style: italic;
139  font-display: fallback;
140  src: url("//www.drinkjoey.com/cdn/fonts/nunito/nunito_i4.fd53bf99043ab6c570187ed42d1b49192135de96.woff2") format("woff2"),
141       url("//www.drinkjoey.com/cdn/fonts/nunito/nunito_i4.cb3876a003a73aaae5363bb3e3e99d45ec598cc6.woff") format("woff");
142}
143
144@font-face {
145  font-family: Nunito;
146  font-weight: 700;
147  font-style: normal;
148  font-display: fallback;
149  src: url("//www.drinkjoey.com/cdn/fonts/nunito/nunito_n7.37cf9b8cf43b3322f7e6e13ad2aad62ab5dc9109.woff2") format("woff2"),
150       url("//www.drinkjoey.com/cdn/fonts/nunito/nunito_n7.45cfcfadc6630011252d54d5f5a2c7c98f60d5de.woff") format("woff");
151}
152
153@font-face {
154  font-family: Nunito;
155  font-weight: 700;
156  font-style: italic;
157  font-display: fallback;
158  src: url("//www.drinkjoey.com/cdn/fonts/nunito/nunito_i7.3f8ba2027bc9ceb1b1764ecab15bae73f86c4632.woff2") format("woff2"),
159       url("//www.drinkjoey.com/cdn/fonts/nunito/nunito_i7.82bfb5f86ec77ada3c9f660da22064c2e46e1469.woff") format("woff");
160}
161
162:root {
163    /* Container */
164    --container-max-width: 100%;
165    --container-xxs-max-width: 27.5rem; /* 440px */
166    --container-xs-max-width: 42.5rem; /* 680px */
167    --container-sm-max-width: 61.25rem; /* 980px */
168    --container-md-max-width: 71.875rem; /* 1150px */
169    --container-lg-max-width: 78.75rem; /* 1260px */
170    --container-xl-max-width: 85rem; /* 1360px */
171    --container-gutter: 1.25rem;
172
173    --section-vertical-spacing: 2.25rem;
174    --section-vertical-spacing-tight:2.5rem;
175
176    --section-stack-gap:1.75rem;
177    --section-stack-gap-tight:1.75rem;
178
179    /* Form settings */
180    --form-gap: 1.25rem; /* Gap between fieldset and submit button */
181    --fieldset-gap: 1rem; /* Gap between each form input within a fieldset */
182    --form-control-gap: 0.625rem; /* Gap between input and label (ignored for floating label) */
183    --checkbox-control-gap: 0.75rem; /* Horizontal gap between checkbox and its associated label */
184    --input-padding-block: 0.65rem; /* Vertical padding for input, textarea and native select */
185    --input-padding-inline: 0.8rem; /* Horizontal padding for input, textarea and native select */
186    --checkbox-size: 0.875rem; /* Size (width and height) for checkbox */
187
188    /* Other sizes */
189    --sticky-area-height: calc(var(--announcement-bar-is-sticky, 0) * var(--announcement-bar-height, 0px) + var(--header-is-sticky, 0) * var(--header-is-visible, 1) * var(--header-height, 0px));
190
191    /* RTL support */
192    --transform-logical-flip: 1;
193    --transform-origin-start: left;
194    --transform-origin-end: right;
195
196    /**
197     * ---------------------------------------------------------------------
198     * TYPOGRAPHY
199     * ---------------------------------------------------------------------
200     */
201
202    /* Font properties */
203    --heading-font-family: "Instrument Sans", sans-serif;
204    --heading-font-weight: 400;
205    --heading-font-style: normal;
206    --heading-text-transform: uppercase;
207    --heading-letter-spacing: 0.18em;
208    --text-font-family: Nunito, sans-serif;
209    --text-font-weight: 400;
210    --text-font-style: normal;
211    --text-letter-spacing: 0.0em;
212    --button-font: var(--text-font-style) var(--text-font-weight) var(--text-sm) / 1.65 var(--text-font-family);
213    --button-text-transform: uppercase;
214    --button-letter-spacing: 0.18em;
215
216    /* Font sizes */--text-heading-size-factor: 1;
217    --text-h1: max(0.6875rem, clamp(1.375rem, 1.146341463414634rem + 0.975609756097561vw, 2rem) * var(--text-heading-size-factor));
218    --text-h2: max(0.6875rem, clamp(1.25rem, 1.0670731707317074rem + 0.7804878048780488vw, 1.75rem) * var(--text-heading-size-factor));
219    --text-h3: max(0.6875rem, clamp(1.125rem, 1.0335365853658536rem + 0.3902439024390244vw, 1.375rem) * var(--text-heading-size-factor));
220    --text-h4: max(0.6875rem, clamp(1rem, 0.9542682926829268rem + 0.1951219512195122vw, 1.125rem) * var(--text-heading-size-factor));
221    --text-h5: calc(0.875rem * var(--text-heading-size-factor));
222    --text-h6: calc(0.75rem * var(--text-heading-size-factor));
223
224    --text-xs: 0.75rem;
225    --text-sm: 0.8125rem;
226    --text-base: 0.875rem;
227    --text-lg: 1.0rem;
228    --text-xl: 1.125rem;
229
230    /* Rounded variables (used for border radius) */
231    --rounded-full: 9999px;
232    --button-border-radius: 0.0rem;
233    --input-border-radius: 0.0rem;
234
235    /* Box shadow */
236    --shadow-sm: 0 2px 8px rgb(0 0 0 / 0.05);
237    --shadow: 0 5px 15px rgb(0 0 0 / 0.05);
238    --shadow-md: 0 5px 30px rgb(0 0 0 / 0.05);
239    --shadow-block: px px px rgb(var(--text-primary) / 0.0);
240
241    /**
242     * ---------------------------------------------------------------------
243     * OTHER
244     * ---------------------------------------------------------------------
245     */
246
247    --checkmark-svg-url: url(//www.drinkjoey.com/cdn/shop/t/105/assets/checkmark.svg?v=77552481021870063511790653094);
248    --cursor-zoom-in-svg-url: url(//www.drinkjoey.com/cdn/shop/t/105/assets/cursor-zoom-in.svg?v=53880737899771658811790653094);
249  }
250
251  [dir="rtl"]:root {
252    /* RTL support */
253    --transform-logical-flip: -1;
254    --transform-origin-start: right;
255    --transform-origin-end: left;
256  }
257
258  @media screen and (min-width: 700px) {
259    :root {
260      /* Typography (font size) */
261      --text-xs: 0.75rem;
262      --text-sm: 0.8125rem;
263      --text-base: 0.875rem;
264      --text-lg: 1.0rem;
265      --text-xl: 1.25rem;
266
267      /* Spacing settings */
268      --container-gutter: 2rem;
269    }
270  }
271
272  @media screen and (min-width: 1000px) {
273    :root {
274      /* Spacing settings */
275      --container-gutter: 3rem;
276
277      --section-vertical-spacing: 3.5rem;
278      --section-vertical-spacing-tight: 3.5rem;
279
280      --section-stack-gap:2.5rem;
281      --section-stack-gap-tight:2.5rem;
282    }
283  }:root {/* Overlay used for modal */
284    --page-overlay: 0 0 0 / 0.4;
285
286    /* We use the first scheme background as default */
287    --page-background: ;
288
289    /* Product colors */
290    --on-sale-text: 227 44 43;
291    --on-sale-badge-background: 227 44 43;
292    --on-sale-badge-text: 255 255 255;
293    --sold-out-badge-background: 239 239 239;
294    --sold-out-badge-text: 0 0 0 / 0.65;
295    --custom-badge-background: 28 28 28;
296    --custom-badge-text: 255 255 255;
297    --star-color: 28 28 28;
298
299    /* Status colors */
300    --success-background: 212 227 203;
301    --success-text: 48 122 7;
302    --warning-background: 253 241 224;
303    --warning-text: 237 138 0;
304    --error-background: 243 204 204;
305    --error-text: 203 43 43;
306  }.color-scheme--scheme-1 {
307      /* Color settings */--accent: 28 28 28;
308      --text-color: 28 28 28;
309      --background: 239 239 239 / 1.0;
310      --background-without-opacity: 239 239 239;
311      --background-gradient: ;--border-color: 207 207 207;/* Button colors */
312      --button-background: 28 28 28;
313      --button-text-color: 255 255 255;
314
315      /* Circled buttons */
316      --circle-button-background: 255 255 255;
317      --circle-button-text-color: 28 28 28;
318    }.shopify-section:has(.section-spacing.color-scheme--bg-609ecfcfee2f667ac6c12366fc6ece56) + .shopify-section:has(.section-spacing.color-scheme--bg-609ecfcfee2f667ac6c12366fc6ece56:not(.bordered-section)) .section-spacing {
319      padding-block-start: 0;
320    }.color-scheme--scheme-2 {
321      /* Color settings */--accent: 28 28 28;
322      --text-color: 28 28 28;
323      --background: 255 255 255 / 1.0;
324      --background-without-opacity: 255 255 255;
325      --background-gradient: ;--border-color: 221 221 221;/* Button colors */
326      --button-background: 28 28 28;
327      --button-text-color: 255 255 255;
328
329      /* Circled buttons */
330      --circle-button-background: 255 255 255;
331      --circle-button-text-color: 28 28 28;
332    }.shopify-section:has(.section-spacing.color-scheme--bg-54922f2e920ba8346f6dc0fba343d673) + .shopify-section:has(.section-spacing.color-scheme--bg-54922f2e920ba8346f6dc0fba343d673:not(.bordered-section)) .section-spacing {
333      padding-block-start: 0;
334    }.color-scheme--scheme-3 {
335      /* Color settings */--accent: 255 255 255;
336      --text-color: 255 255 255;
337      --background: 28 28 28 / 1.0;
338      --background-without-opacity: 28 28 28;
339      --background-gradient: ;--border-color: 62 62 62;/* Button colors */
340      --button-background: 255 255 255;
341      --button-text-color: 28 28 28;
342
343      /* Circled buttons */
344      --circle-button-background: 255 255 255;
345      --circle-button-text-color: 28 28 28;
346    }.shopify-section:has(.section-spacing.color-scheme--bg-c1f8cb21047e4797e94d0969dc5d1e44) + .shopify-section:has(.section-spacing.color-scheme--bg-c1f8cb21047e4797e94d0969dc5d1e44:not(.bordered-section)) .section-spacing {
347      padding-block-start: 0;
348    }.color-scheme--scheme-4 {
349      /* Color settings */--accent: 255 255 255;
350      --text-color: 255 255 255;
351      --background: 0 0 0 / 0.0;
352      --background-without-opacity: 0 0 0;
353      --background-gradient: ;--border-color: 255 255 255;/* Button colors */
354      --button-background: 255 255 255;
355      --button-text-color: 28 28 28;
356
357      /* Circled buttons */
358      --circle-button-background: 255 255 255;
359      --circle-button-text-color: 28 28 28;
360    }.shopify-section:has(.section-spacing.color-scheme--bg-3671eee015764974ee0aef1536023e0f) + .shopify-section:has(.section-spacing.color-scheme--bg-3671eee015764974ee0aef1536023e0f:not(.bordered-section)) .section-spacing {
361      padding-block-start: 0;
362    }.color-scheme--dialog {
363      /* Color settings */--accent: 28 28 28;
364      --text-color: 28 28 28;
365      --background: 255 255 255 / 1.0;
366      --background-without-opacity: 255 255 255;
367      --background-gradient: ;--border-color: 221 221 221;/* Button colors */
368      --button-background: 28 28 28;
369      --button-text-color: 255 255 255;
370
371      /* Circled buttons */
372      --circle-button-background: 255 255 255;
373      --circle-button-text-color: 28 28 28;
374    }
375</style>
376<title>Shop All | Joe&#39;y Mushroom Coffee Alternative</title>
377<meta name="description" content="Shop Joe&#39;y in Original, Vanilla and Mocha, plus kits and accessories: the Froth&#39;y frother, jar, mug and tumbler. Subscribe and save 20%.">
378<link rel="preconnect" href="https://cdn.shopify.com">
379<link rel="preconnect" href="https://cdn.shopify.com" crossorigin>
380<link rel="preload" as="font" type="font/woff2" crossorigin href="https://cdn.shopify.com/s/files/1/0558/5803/6906/files/basic_definition-webfont.woff2?v=1739392597"><style>
381  @font-face {
382    font-family: BasicDefinition;
383    src: url("https://cdn.shopify.com/s/files/1/0558/5803/6906/files/basic_definition-webfont.woff2?v=1739392597") format("woff2"),
384         url("https://cdn.shopify.com/s/files/1/0558/5803/6906/files/basic_definition-webfont.woff?v=1739392597") format("woff");
385    font-display: swap;
386  }
387</style>
388<script>
389(function () {
390  try { if (document.fonts && document.fonts.load) document.fonts.load('1em BasicDefinition'); } catch (e) {}
391
392  /* ---- cap un-sized Shopify CDN images ---- */
393  var CAP = 1200;
394  var HOST = /(cdn\.shopify\.com\/s\/files\/|\/cdn\/shop\/files\/)/;
395  var EXT = /\.(png|jpe?g|webp)(\?|$)/i;
396  function cap(v) {
397    if (typeof v !== 'string' || !HOST.test(v) || !EXT.test(v) || /[?&]width=/.test(v)) return v;
398    return v + (v.indexOf('?') === -1 ? '?' : '&') + 'width=' + CAP;
399  }
400  var setAttr = Element.prototype.setAttribute;
401  Element.prototype.setAttribute = function (name, value) {
402    try {
403      if (this instanceof HTMLImageElement && String(name).toLowerCase() === 'src') value = cap(value);
404    } catch (e) {}
405    return setAttr.call(this, name, value);
406  };
407  try {
408    var d = Object.getOwnPropertyDescriptor(HTMLImageElement.prototype, 'src');
409    if (d && d.set && d.get) {
410      Object.defineProperty(HTMLImageElement.prototype, 'src', {
411        configurable: true, enumerable: d.enumerable, get: d.get,
412        set: function (v) { d.set.call(this, cap(v)); }
413      });
414    }
415  } catch (e) {}
416
417  /* ---- posters for Shopify-hosted videos ---- */
418  var VID = /cdn\.shopify\.com\/videos\/c\/(?:o\/v|vp\/[0-9a-f]{32})\/([0-9a-f]{32})/i;
419  function poster(v) {
420    try {
421      if (v.getAttribute('poster')) return;
422      var s = v.getAttribute('src') || (v.querySelector('source') || {}).src || '';
423      var m = VID.exec(s);
424      if (!m) return;
425      v.setAttribute('poster', 'https://cdn.shopify.com/s/files/1/0558/5803/6906/files/preview_images/' + m[1] + '.thumbnail.0000000000.jpg?width=900');
426    } catch (e) {}
427  }
428  function scan(root) {
429    if (!root || !root.querySelectorAll) return;
430    if (root.tagName === 'VIDEO') poster(root);
431    var list = root.querySelectorAll('video');
432    for (var i = 0; i < list.length; i++) poster(list[i]);
433  }
434  try {
435    new MutationObserver(function (muts) {
436      for (var i = 0; i < muts.length; i++) {
437        var m = muts[i];
438        if (m.type === 'childList') {
439          for (var j = 0; j < m.addedNodes.length; j++) {
440            var n = m.addedNodes[j];
441            if (n.nodeType === 1) scan(n.tagName === 'SOURCE' ? n.parentNode : n);
442          }
443        }
444      }
445    }).observe(document.documentElement, { childList: true, subtree: true });
446  } catch (e) {}
447})();
448</script>
vendor: 1 bytes, line 448
448
449<script>
450  // This allows to expose several variables to the global scope, to be used in scripts
451  window.themeVariables = {
452    settings: {
453      showPageTransition: null,
454      pageType: "collection",
455      moneyFormat: "${{amount}}",
456      moneyWithCurrencyFormat: "${{amount}} USD",
457      currencyCodeEnabled: false,
458      cartType: "drawer",
459      staggerMenuApparition: true
460    },
461
462    strings: {
463      addedToCart: "Added to your cart!",
464      closeGallery: "Close gallery",
465      zoomGallery: "Zoom picture",
466      errorGallery: "Image cannot be loaded",
467      shippingEstimatorNoResults: "Sorry, we do not ship to your address.",
468      shippingEstimatorOneResult: "There is one shipping rate for your address:",
469      shippingEstimatorMultipleResults: "There are several shipping rates for your address:",
470      shippingEstimatorError: "One or more error occurred while retrieving shipping rates:",
471      next: "Next",
472      previous: "Previous"
473    },
474
475    mediaQueries: {
476      'sm': 'screen and (min-width: 700px)',
477      'md': 'screen and (min-width: 1000px)',
478      'lg': 'screen and (min-width: 1150px)',
479      'xl': 'screen and (min-width: 1400px)',
480      '2xl': 'screen and (min-width: 1600px)',
481      'sm-max': 'screen and (max-width: 699px)',
482      'md-max': 'screen and (max-width: 999px)',
483      'lg-max': 'screen and (max-width: 1149px)',
484      'xl-max': 'screen and (max-width: 1399px)',
485      '2xl-max': 'screen and (max-width: 1599px)',
486      'motion-safe': '(prefers-reduced-motion: no-preference)',
487      'motion-reduce': '(prefers-reduced-motion: reduce)',
488      'supports-hover': 'screen and (pointer: fine)',
489      'supports-touch': 'screen and (hover: none)'
490    }
491  };</script>
491<script>
492/* ============================================================================
493   Joe'y image diet  (2026-09-01)
494   ----------------------------------------------------------------------------
495   The header's flavor menu ships three PNGs - Original_20.png, Vanilla_20.png,
496   Mocha_20.png - at **4167 x 4167** each, on every page load, with no srcset and
497   no loading attribute. They render at 0 x 0 until the menu is opened and at
498   roughly 60px after that. Measured: about 366 KB transferred each, ~1.1 MB a
499   page, and that is AFTER Shopify's automatic WebP conversion. The same file at
500   ?width=400 is 27 KB.
501
502   Their URLs are hardcoded in the compiled bundle - they do not appear anywhere
503   in the server-rendered HTML - so there is no Liquid or theme setting to point
504   at a smaller asset. This intercepts the attribute write instead, before the
505   browser starts the fetch, and appends a width parameter that Shopify's CDN
506   honours. Verified: all three arrive at 27-28 KB and no full-size request is
507   made at all, so the rewrite lands ahead of the fetch rather than cancelling it.
508
509   Deliberately narrow: it only touches <img>, only the `src` attribute, only
510   those three filenames, and only when no width is already set. Everything else
511   falls through to the native setter untouched.
512
513   THE REAL FIX is to replace the source files with assets sized for their use
514   (they are ~70x larger than they render), which needs no code at all. Delete
515   this snippet when that happens, or when the rebuilt buy block renders the
516   menu from Liquid with a proper srcset.
517   ============================================================================ */
518(function () {
519  var RE = /\/files\/(Original|Vanilla|Mocha)_20\.png/i;
520  var WIDTH = 400;
521
522  function slim(value) {
523    if (typeof value !== 'string') return value;
524    if (!RE.test(value)) return value;
525    if (value.indexOf('width=') > -1) return value;
526    return value + (value.indexOf('?') === -1 ? '?' : '&') + 'width=' + WIDTH;
527  }
528
529  var setAttr = Element.prototype.setAttribute;
530  Element.prototype.setAttribute = function (name, value) {
531    try {
532      if (this instanceof HTMLImageElement && String(name).toLowerCase() === 'src') {
533        value = slim(value);
534      }
535    } catch (e) {}
536    return setAttr.call(this, name, value);
537  };
538
539  try {
540    var d = Object.getOwnPropertyDescriptor(HTMLImageElement.prototype, 'src');
541    if (d && d.set && d.get) {
542      Object.defineProperty(HTMLImageElement.prototype, 'src', {
543        configurable: true,
544        enumerable: d.enumerable,
545        get: d.get,
546        set: function (v) { d.set.call(this, slim(v)); }
547      });
548    }
549  } catch (e) {}
550})();
551</script>
551<script>
552/* ============================================================================
553   Joe'y PDP sold-out guard  (added 2026-09-01)
554   ----------------------------------------------------------------------------
555   PROBLEM: the buy block on /products/joey (React app in assets/home.js) only
556   sets a price from a size it can actually sell. When every size of the selected
557   flavor is unavailable, no size gets selected and the buy block goes quietly
558   wrong in three ways at once:
559     1. the frequency tiles keep whatever was on screen before: "$0 $0" on a
560        fresh load (what the hamburger menu link to Mocha showed on 2026-09-01)
561        or the previous flavor's price after a flavor switch (Mocha showing
562        Original's $48 / $60, which is worse than $0);
563     2. the size tiles show the generic "COMING SOON!" art, which is wrong for a
564        bag we have been selling since March, it is sold out;
565     3. Add to Cart still looks live. It is inert (verified 2026-09-01: a real
566        click adds nothing, while the same click on Original adds the starter
567        kit), so nothing oversells, but the customer gets a dead button with no
568        explanation.
569   Mocha's only SKU, JMS20R1 (20 servings), had gone out of stock at -47, DENY.
570
571   FIX, while the buy block has no size selected:
572     - hide the two price headings and show a copy of each carrying the correct
573       price for the selected flavor, read live from /products/<handle>.js
574       (public endpoint, no token). Subscribe price = list x 0.8, which is what
575       the app itself renders ($60/$48, $25/$20, $9.99/$7.99);
576     - and when that product has NO available variant at all, mark every size
577       the flavor really sells "BACK SOON" (sizes it does not sell keep the
578       "COMING SOON!" art, which is accurate for them) and turn Add to Cart into
579       a disabled BACK SOON button.
580   As soon as a size is selected again every copy and overlay is removed and the
581   app's own markup comes back.
582
583   The app's own DOM text is never rewritten. React keeps a handle on each price
584   text node and skips a re-render when its value is unchanged, so editing those
585   nodes in place leaves the edit stuck on screen after the flavor changes back
586   (Original rendering Mocha's $20 / $25 with the 60 serving size selected).
587   Hiding and copying keeps React's tree consistent with what React believes.
588
589   The BACK SOON tile is an overlay inset inside the existing tile art, so the
590   rounded border still comes from the image and the three tiles stay identical
591   in shape. `.size-item` carries `opacity: 0.5`, so the colours below are the
592   PRE-fade values: they were derived by sampling the rendered tile
593   (cream 249,228,190 / ink 177,141,131) and undoing the 50% blend against the
594   page background (247,223,212). Verified: the overlay renders within 4/255 of
595   the neighbouring COMING SOON tiles on every channel.
596
597   MAINTENANCE: keys off .flavor-item.selected img[alt], .size-item(.selected),
598   .frquent-item h3, .joey-freindly-buy-add-cart and the "60 serv" / "20 serv" /
599   "8 serv" variant titles, all of which come from the compiled app. If those are
600   renamed the guard stops firing and the page falls back to the $0 render. The
601   real fix belongs in the selector app source, which has no deploy path yet
602   (repo drift, see joey-pdp-selector-app in project memory).
603   ============================================================================ */
604(function () {
605  var HANDLES = {
606    original: 'joey-flavor-original',
607    vanilla: 'joey-flavor-vanilla',
608    mocha: 'joey-flavor-mocha'
609  };
610  /* Tile order on the page is 60, 20, 8. */
611  var SIZE_ORDER = [/60\s*serv/i, /20\s*serv/i, /(8\s*serv|to.?go|sachet)/i];
612  var TILE_CREAM = '#FBE9A8';
613  var TILE_INK = '#6B3B32';
614  var cache = {};
615  var shown = [];
616  var overlays = [];
617  var shownKey = null;
618  var pending = false;
619  var timer = null;
620
621  function num(n) {
622    return (Math.round(n * 100) / 100).toFixed(2).replace(/\.00$/, '');
623  }
624
625  function money(n) {
626    return '$' + num(n);
627  }
628
629  function load(handle) {
630    if (!cache[handle]) {
631      cache[handle] = fetch('/products/' + handle + '.js')
632        .then(function (r) { return r.ok ? r.json() : null; })
633        .catch(function () { return null; });
634    }
635    return cache[handle];
636  }
637
638  /* Variant sitting in each size slot, or null when the flavor has no such bag. */
639  function variantsBySize(product) {
640    var out = [null, null, null];
641    if (!product || !product.variants) return out;
642    for (var i = 0; i < SIZE_ORDER.length; i++) {
643      for (var j = 0; j < product.variants.length; j++) {
644        if (SIZE_ORDER[i].test(product.variants[j].title || '')) { out[i] = product.variants[j]; break; }
645      }
646    }
647    return out;
648  }
649
650  /* Largest size the flavor actually sells: 60, then 20, then the 8 / to-go. */
651  function headlineVariant(bySize, product) {
652    for (var i = 0; i < bySize.length; i++) if (bySize[i]) return bySize[i];
653    return product && product.variants ? product.variants[0] : null;
654  }
655
656  function selectedHandle() {
657    var img = document.querySelector('.flavor-item.selected img[alt]');
658    if (!img) return null;
659    return HANDLES[(img.getAttribute('alt') || '').trim().toLowerCase()] || null;
660  }
661
662  /* Only step in once the sizes have rendered and none of them is selected,
663     which is exactly the state where the app stops maintaining the price. */
664  function stranded() {
665    if (!document.querySelectorAll('.size-item').length) return false;
666    return !document.querySelector('.size-item.selected');
667  }
668
669  function setPrice(root, value) {
670    for (var i = 0; i < root.childNodes.length; i++) {
671      var n = root.childNodes[i];
672      if (n.nodeType !== 3) continue;
673      var t = n.nodeValue || '';
674      if (/^\s*\d[\d.,]*\s*$/.test(t)) {
675        n.nodeValue = t.replace(/\d[\d.,]*/, function () { return num(value); });
676      } else if (/\$\s*\d[\d.,]*/.test(t)) {
677        n.nodeValue = t.replace(/\$\s*\d[\d.,]*/, function () { return money(value); });
678      }
679    }
680  }
681
682  function hideAndCopy(original, decorate) {
683    var copy = original.cloneNode(true);
684    decorate(copy);
685    copy.setAttribute('data-joey-sold-out-guard', '1');
686    original.parentNode.insertBefore(copy, original.nextSibling);
687    shown.push({ original: original, copy: copy, display: original.style.display });
688    original.style.display = 'none';
689    return copy;
690  }
691
692  function soldOutTile(tile) {
693    var position = tile.style.position;
694    var mark = document.createElement('div');
695    mark.setAttribute('data-joey-sold-out-guard', '1');
696    mark.style.cssText = 'position:absolute;top:4px;right:4px;bottom:4px;left:4px;'
697      + 'border-radius:6px;background:' + TILE_CREAM + ';color:' + TILE_INK + ';'
698      + 'display:flex;align-items:center;justify-content:center;text-align:center;'
699      + 'font-family:MohrBlack,sans-serif;font-size:20px;line-height:1.15;'
700      + 'letter-spacing:0.01em;text-transform:uppercase;pointer-events:none;';
701    mark.textContent = 'Back soon';
702    tile.style.position = 'relative';
703    tile.appendChild(mark);
704    overlays.push({ tile: tile, mark: mark, position: position });
705  }
706
707  function teardown() {
708    for (var i = 0; i < shown.length; i++) {
709      if (shown[i].copy.parentNode) shown[i].copy.parentNode.removeChild(shown[i].copy);
710      shown[i].original.style.display = shown[i].display;
711    }
712    shown = [];
713    for (var j = 0; j < overlays.length; j++) {
714      if (overlays[j].mark.parentNode) overlays[j].mark.parentNode.removeChild(overlays[j].mark);
715      overlays[j].tile.style.position = overlays[j].position;
716    }
717    overlays = [];
718    shownKey = null;
719  }
720
721  function intact() {
722    if (!shown.length) return false;
723    for (var i = 0; i < shown.length; i++) {
724      if (!document.contains(shown[i].copy)) return false;
725      if (!document.contains(shown[i].original)) return false;
726      if (shown[i].original.style.display !== 'none') return false;
727    }
728    for (var j = 0; j < overlays.length; j++) {
729      if (!document.contains(overlays[j].mark)) return false;
730    }
731    return true;
732  }
733
734  /* A heading with a <span> is the subscribe tile: its own text run holds the
735     subscribe price and the span holds the struck-through list price. */
736  function build(key, sub, list, bySize, allSoldOut) {
737    if (shownKey === key && intact()) return;
738    teardown();
739
740    var hs = document.querySelectorAll('.frquent-item h3');
741    for (var i = 0; i < hs.length; i++) {
742      var h = hs[i];
743      if ((h.textContent || '').indexOf('$') === -1) continue;
744      hideAndCopy(h, function (copy) {
745        var span = copy.querySelector('span');
746        setPrice(copy, span ? sub : list);
747        if (span) setPrice(span, list);
748      });
749    }
750
751    if (allSoldOut) {
752      var tiles = document.querySelectorAll('.size-item');
753      for (var t = 0; t < tiles.length && t < bySize.length; t++) {
754        if (bySize[t]) soldOutTile(tiles[t]);
755      }
756      var atc = document.querySelector('.joey-freindly-buy-add-cart');
757      if (atc) {
758        hideAndCopy(atc, function (copy) {
759          copy.style.pointerEvents = 'none';
760          copy.style.opacity = '0.55';
761          copy.style.cursor = 'default';
762          copy.setAttribute('aria-disabled', 'true');
763          var label = copy.firstElementChild || copy;
764          label.textContent = 'Back soon';
765        });
766      }
767    }
768
769    shownKey = shown.length ? key : null;
770  }
771
772  function fix() {
773    if (pending) return;
774    if (!stranded()) {
775      if (shown.length || overlays.length) teardown();
776      return;
777    }
778    var handle = selectedHandle();
779    if (!handle) return;
780    pending = true;
781    load(handle).then(function (product) {
782      pending = false;
783      if (!stranded()) return;
784      var bySize = variantsBySize(product);
785      var v = headlineVariant(bySize, product);
786      if (!v || !v.price) return;
787      var allSoldOut = true;
788      for (var i = 0; i < product.variants.length; i++) {
789        if (product.variants[i].available) { allSoldOut = false; break; }
790      }
791      var list = v.price / 100;
792      build(handle + ':' + v.id + ':' + allSoldOut, Math.round(list * 80) / 100, list, bySize, allSoldOut);
793    });
794  }
795
796  function start() {
797    if (!document.getElementById('home-product-pages-app')) return;
798    fix();
799    new MutationObserver(function () {
800      clearTimeout(timer);
801      timer = setTimeout(fix, 120);
802    }).observe(document.body, { childList: true, subtree: true, characterData: true });
803  }
804
805  if (document.readyState === 'loading') {
806    document.addEventListener('DOMContentLoaded', start);
807  } else {
808    start();
809  }
810})();
811</script>
811<style>
812  /* ==========================================================================
813     Joe'y mobile fixes  (2026-09-01)
814     --------------------------------------------------------------------------
815     Two measured defects on the PDP, phones only. Desktop is deliberately left
816     pixel-identical: every rule sits inside the max-width query.
817
818     1. iOS Safari zooms the page when a focused form control is under 16px, and
819        does not zoom back out. Two controls on the PDP were under: the delivery
820        frequency combobox input (13px) and Okendo's review sort select (14px).
821        A customer tapping "deliver every 1 month" mid-purchase got thrown into a
822        zoomed, sideways-scrolling page. Only those two are raised. The quantity
823        input and the email field are already 20px and are not touched, because a
824        blanket rule would shrink them.
825
826     2. Twelve elements in the buy block render under 12px, some at 8px, and they
827        carry real merchandising ("NEW!", "MOST POPULAR!", the per-cup prices).
828
829     Sizes were checked against their containers before being raised:
830       .new-label          48px badge in a 113px tile        -> 10px, fits
831       .new-label.most-populer  92px badge in a 366px card   -> 10px, fits
832       .size-title         full tile width                   -> 12px, fits
833       .new-label.kit-label     102px badge in a 113px tile  -> LEFT AT 8px.
834         "FREE STARTER KIT!" already fills its tile; any bump overflows on a
835         phone, where the tile is ~104px. Needs shorter copy or a layout change,
836         not a font size.
837       .size-title.just-want-bag  159px inside a 113px tile  -> LEFT AT 10px.
838         Already overflows its tile at the current size. Pre-existing; same
839         answer, it needs layout work.
840
841     Delete this snippet when the buy block is rebuilt in Liquid - the rebuilt
842     section should just use readable sizes to begin with.
843     ========================================================================== */
844  @media (max-width: 767px) {
845    #home-product-pages-app input[type="text"] { font-size: 16px !important; }
846    [class*="oke-"] select { font-size: 16px !important; }
847
848    #home-product-pages-app .new-label { font-size: 10px !important; }
849    #home-product-pages-app .new-label.kit-label { font-size: 8px !important; }
850    #home-product-pages-app .size-title { font-size: 12px !important; }
851    #home-product-pages-app .size-title.just-want-bag { font-size: 10px !important; }
852  }
853</style><style>
854  /* ==========================================================================
855     Joe'y sticky add to cart  (2026-09-01)
856     --------------------------------------------------------------------------
857     Phones only. The PDP is long and the buy button scrolls away and never comes
858     back, which on a 70%-mobile store is the most-cited missing pattern on a
859     product page. This puts the current selection and price back in reach.
860
861     It does NOT add to cart itself. The real button lives inside the compiled
862     React app and only responds to a genuine pointer event (verified
863     2026-09-01: a programmatic .click() on it adds nothing, a real click adds
864     the item). So the bar scrolls back to the buy block and highlights it, which
865     is honest and cannot mis-add a variant. When the rebuilt Liquid buy block
866     lands, this can post to /cart/add directly.
867
868     Everything it shows is mirrored from what the buy block is already
869     rendering, so it inherits the price guard: a sold-out flavor shows the same
870     "Back soon" wording and the bar goes inert.
871     ========================================================================== */
872  .joey-satc{
873    position:fixed;left:0;right:0;bottom:0;z-index:40;
874    display:none;align-items:center;gap:12px;
875    padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px));
876    background:#FAF0D6;border-top:2px solid #E3C4B4;
877    box-shadow:0 -6px 18px rgba(92,12,13,.10);
878    transform:translateY(110%);transition:transform .22s ease;
879  }
880  .joey-satc.is-on{transform:translateY(0)}
881  .joey-satc__info{min-width:0;flex:1;line-height:1.2}
882  .joey-satc__flavor{display:block;font-family:MohrBlack,sans-serif;font-size:13px;color:#5C0C0D;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
883  .joey-satc__size{display:block;font-family:MohrSemibold,sans-serif;font-size:11px;color:#8A4418}
884  .joey-satc__price{font-family:MohrBlack,sans-serif;font-size:17px;color:#580D17;white-space:nowrap}
885  .joey-satc__price s{color:#A92C00;font-size:14px;margin-left:5px}
886  .joey-satc__btn{
887    border:0;border-radius:24px;padding:13px 20px;min-height:44px;
888    font-family:MohrBlack,sans-serif;font-size:15px;letter-spacing:.02em;text-transform:uppercase;
889    cursor:pointer;white-space:nowrap;
890    /* Theme CSS sets `background-image: none` on buttons at a higher specificity
891       than a class rule can reach from here (verified 2026-09-01: the button
892       computed to `background-image: none` / transparent). !important is the
893       narrow fix - it applies to this one injected element and nothing on the
894       page reads these declarations. */
895    background-color:#8A4418 !important;
896    background-image:linear-gradient(90deg,#7D3C11 0%,#BC7550 25%,#8A4418 45%,#661F0A 63.5%,#9D5A2E 100%) !important;
897    color:#FFF6E6 !important;
898  }
899  .joey-satc__btn[disabled]{opacity:.55;cursor:default}
900  @media (max-width: 767px){ .joey-satc{display:flex} }
901  @media (max-width: 767px){ body.joey-satc-on{padding-bottom:78px} }
902</style>
903
904<script>
905(function () {
906  function ready(fn) {
907    if (document.readyState === 'loading') document.addEventListener('DOMContentLoaded', fn);
908    else fn();
909  }
910
911  ready(function () {
912    if (!document.getElementById('home-product-pages-app')) return;
913
914    var bar = document.createElement('div');
915    bar.className = 'joey-satc';
916    bar.setAttribute('data-joey-satc', '1');
917    bar.innerHTML =
918      '<span class="joey-satc__info">' +
919        '<span class="joey-satc__flavor" data-satc-flavor></span>' +
920        '<span class="joey-satc__size" data-satc-size></span>' +
921      '</span>' +
922      '<span class="joey-satc__price" data-satc-price></span>' +
923      '<button type="button" class="joey-satc__btn" data-satc-btn>Add to cart</button>';
924    document.body.appendChild(bar);
925
926    var flavorEl = bar.querySelector('[data-satc-flavor]');
927    var sizeEl = bar.querySelector('[data-satc-size]');
928    var priceEl = bar.querySelector('[data-satc-price]');
929    var btn = bar.querySelector('[data-satc-btn]');
930
931    function realAtc() {
932      var all = document.querySelectorAll('.joey-freindly-buy-add-cart');
933      for (var i = 0; i < all.length; i++) {
934        if (all[i].style.display !== 'none' && all[i].getBoundingClientRect().height > 0) return all[i];
935      }
936      return null;
937    }
938
939    function buyBlock() {
940      return document.querySelector('.frquent-item') || document.getElementById('home-product-pages-app');
941    }
942
943    /* Never write a value that is already there: the observer below watches the
944       whole body, and re-assigning identical text would keep waking it. */
945    function set(el, value) {
946      if (el.textContent !== value) el.textContent = value;
947    }
948
949    /* Mirror whatever the buy block currently says. No independent source of
950       truth, so this cannot disagree with the page. */
951    function sync() {
952      var atc = realAtc();
953      if (!atc) return;
954
955      var img = document.querySelector('.flavor-item.selected img[alt]');
956      set(flavorEl, img ? (img.getAttribute('alt') || '').trim() + " Joe'y" : "Joe'y");
957
958      var selected = document.querySelector('.size-item.selected img[alt]');
959      set(sizeEl, selected ? (selected.getAttribute('alt') || '').replace(/\bCup\b/i, 'cups') : '');
960
961      /* The price guard hides the app's own heading and shows a corrected clone
962         beside it, so take the first heading that carries a price AND is
963         actually visible. Reading the hidden one gives the stale price the
964         guard exists to suppress. */
965      var chosen = document.querySelector('.frquent-item.selected') || document.querySelector('.frquent-item');
966      /* The heading is "$48 <span>$60</span>": the span is the full price the
967         buy block strikes out. Keep that split so the bar strikes it out too
968         (fixed 2026-09-24: the bar used to flatten it to plain "$48 $60"). */
969      var now = '', was = '';
970      if (chosen) {
971        var hs = chosen.querySelectorAll('h3');
972        for (var i = 0; i < hs.length; i++) {
973          if ((hs[i].textContent || '').indexOf('$') > -1 && hs[i].getBoundingClientRect().height > 0) {
974            var sp = hs[i].querySelector('span, s, del');
975            was = sp && /\$\s*\d/.test(sp.textContent) ? sp.textContent.trim() : '';
976            now = hs[i].textContent;
977            if (was) now = now.replace(sp.textContent, '');
978            now = now.replace(/^\s*ONE-TIME PURCHASE\s*/i, '').trim();
979            break;
980          }
981        }
982      }
983      var key = now + '|' + was;
984      if (priceEl.getAttribute('data-k') !== key) {
985        priceEl.setAttribute('data-k', key);
986        priceEl.textContent = now;
987        if (was) {
988          var strike = document.createElement('s');
989          strike.textContent = was;
990          priceEl.appendChild(strike);
991        }
992      }
993
994      var label = (atc.textContent || '').trim();
995      var buyable = /add to cart/i.test(label);
996      set(btn, buyable ? 'Add to cart' : label || 'Unavailable');
997      if (btn.disabled !== !buyable) btn.disabled = !buyable;
998    }
999
1000    btn.addEventListener('click', function () {
1001      var target = buyBlock();
1002      if (!target) return;
1003      target.scrollIntoView({ behavior: 'smooth', block: 'center' });
1004      var atc = realAtc();
1005      if (!atc) return;
1006      atc.style.transition = 'box-shadow .25s ease';
1007      atc.style.boxShadow = '0 0 0 4px rgba(169,44,0,.45)';
1008      setTimeout(function () { atc.style.boxShadow = ''; }, 1400);
1009    });
1010
1011    /* Show the bar once the real button has scrolled above the viewport.
1012       An IntersectionObserver was tried first and does not work here: the app
1013       replaces the button element on every re-render, so the observer ends up
1014       watching a detached node and stops firing. A rAF-throttled scroll read is
1015       cheap and cannot go stale. */
1016    var ticking = false;
1017    function place() {
1018      var atc = realAtc();
1019      /* The body padding is toggled WITH the bar, never on mount. The app div
1020         is present on the homepage too, where there is no buy block and the bar
1021         therefore never shows: reserving 78px there left a strip of body
1022         background below the footer on phones (found on the live site
1023         2026-09-01, right after publish). */
1024      var on = !!atc && atc.getBoundingClientRect().bottom < 0;
1025      bar.classList.toggle('is-on', on);
1026      document.body.classList.toggle('joey-satc-on', on);
1027    }
1028    /* rAF does NOT fire in a backgrounded tab (verified 2026-09-01: a hidden
1029       tab never ran the callback). Without the timer below, a customer who
1030       scrolls and then switches apps mid-scroll - the single most common thing
1031       that happens on a phone - leaves `ticking` stuck true, and the bar never
1032       updates again for the rest of the session. The timeout still fires while
1033       hidden, throttled, so it unsticks the flag and re-reads on return. */
1034    function onScroll() {
1035      if (ticking) return;
1036      ticking = true;
1037      requestAnimationFrame(function () { ticking = false; place(); });
1038      setTimeout(function () { if (ticking) { ticking = false; place(); } }, 250);
1039    }
1040    window.addEventListener('scroll', onScroll, { passive: true });
1041    window.addEventListener('resize', place, { passive: true });
1042    document.addEventListener('visibilitychange', function () { ticking = false; place(); });
1043
1044    var t = null;
1045    new MutationObserver(function () {
1046      clearTimeout(t);
1047      t = setTimeout(function () { sync(); place(); }, 150);
1048    }).observe(document.body, { childList: true, subtree: true, characterData: true });
1049
1050    sync();
1051    place();
1052  });
1053})();
1054</script>
1054
1055<style>
1056  :root {
1057    --joey-plaid:
1058      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='f'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 .93 0 0 0 0 .8 0 0 0 .32 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23f)'/%3E%3C/svg%3E"),
1059      url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.45 .75' numOctaves='4' seed='7' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .12 0 0 0 0 .03 0 0 0 0 .02 0 0 0 .6 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E"),
1060      repeating-linear-gradient(45deg, rgba(0,0,0,.07) 0 1px, transparent 1px 3px),
1061      repeating-linear-gradient(90deg,
1062        rgba(168,63,33,.62) 0 18px, transparent 18px 26px,
1063        rgba(255,212,87,.7) 26px 28px, transparent 28px 36px,
1064        rgba(246,139,31,.38) 36px 48px, transparent 48px 58px,
1065        rgba(20,4,4,.45) 58px 62px, transparent 62px 72px),
1066      repeating-linear-gradient(0deg,
1067        rgba(168,63,33,.62) 0 18px, transparent 18px 26px,
1068        rgba(255,212,87,.7) 26px 28px, transparent 28px 36px,
1069        rgba(246,139,31,.38) 36px 48px, transparent 48px 58px,
1070        rgba(20,4,4,.45) 58px 62px, transparent 62px 72px);
1071    --joey-plaid-size: 180px 180px, 220px 220px, auto, auto, auto;
1072    --joey-frame: 10px;
1073  }
1074  @media (max-width: 767px) { :root { --joey-frame: 6px; } }
1075
1076  aside.shopify-section--announcement-bar .announcement-bar:not([data-joey-sale-bar]) {
1077    position: relative;
1078    background-color: #5c0c0d !important;
1079    background-image: var(--joey-plaid) !important;
1080    background-size: var(--joey-plaid-size) !important;
1081    background-attachment: fixed !important;
1082    box-shadow: inset 0 3px 5px rgba(0,0,0,.28), inset 0 -3px 5px rgba(0,0,0,.28);
1083    padding-top: 9px !important;
1084    padding-bottom: 9px !important;
1085  }
1086  /* the message sits on a small felt patch */
1087  aside.shopify-section--announcement-bar .announcement-bar:not([data-joey-sale-bar]) .prose {
1088    width: fit-content;
1089    max-width: calc(100% - 8px);
1090    margin-inline: auto;
1091    padding: 3px 14px 2px;
1092    border-radius: 5px;
1093    background-color: #5c0c0d;
1094    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='f'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.95' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 .93 0 0 0 0 .8 0 0 0 .22 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23f)'/%3E%3C/svg%3E");
1095    box-shadow: 0 1px 3px rgba(0,0,0,.45);
1096    text-shadow: 0 1px 1px rgba(0,0,0,.35);
1097  }
1098  .announcement-bar__carousel { margin-left: 0 !important; }
1099
1100  /* plaid frame around the whole window: thin sides and bottom, the banner is
1101     the top. background-attachment: fixed lines the tartan up with the banner.
1102     Kept below the menu overlay (z 99998) so an open menu covers it. */
1103  .joey-frame i {
1104    position: fixed;
1105    z-index: 99990;
1106    pointer-events: none;
1107    background-color: #5c0c0d;
1108    background-image: var(--joey-plaid);
1109    background-size: var(--joey-plaid-size);
1110    background-attachment: fixed;
1111  }
1112  .joey-frame .l { left: 0; top: var(--announcement-bar-height, 0px); bottom: 0; width: var(--joey-frame); box-shadow: 1px 0 3px rgba(0,0,0,.35); }
1113  .joey-frame .r { right: 0; top: var(--announcement-bar-height, 0px); bottom: 0; width: var(--joey-frame); box-shadow: -1px 0 3px rgba(0,0,0,.35); }
1114  .joey-frame .b { left: 0; right: 0; bottom: 0; height: var(--joey-frame); box-shadow: 0 -1px 3px rgba(0,0,0,.35); }
1115  /* keep the footer and the phone add-to-cart bar clear of the frame */
1116  body { padding-bottom: var(--joey-frame); }
1117  .joey-satc { left: var(--joey-frame) !important; right: var(--joey-frame) !important; bottom: var(--joey-frame) !important; }
1118  @media (max-width: 767px) { body.joey-satc-on { padding-bottom: calc(78px + var(--joey-frame)); } }
1119
1120  /* falling leaves */
1121  .joey-leaves { position: fixed; inset: 0; pointer-events: none; overflow: hidden; z-index: 2147483000; }
1122  .joey-leaf { position: absolute; top: -60px; will-change: transform; animation: joeyLeafFall var(--d) linear var(--delay) forwards; opacity: 0; }
1123  .joey-leaf svg { display: block; width: var(--s); height: var(--s); animation: joeyLeafSway var(--sw) ease-in-out var(--delay) infinite alternate; filter: drop-shadow(0 2px 2px rgba(60,12,6,.25)); }
1124  @keyframes joeyLeafFall {
1125    0%   { transform: translate3d(0,0,0); opacity: 0; }
1126    6%   { opacity: 1; }
1127    82%  { opacity: 1; }
1128    100% { transform: translate3d(var(--drift), calc(100vh + 80px), 0); opacity: 0; }
1129  }
1130  @keyframes joeyLeafSway {
1131    0%   { transform: translateX(calc(var(--sway) * -1)) rotate(calc(var(--r) - 35deg)) rotateY(0deg); }
1132    100% { transform: translateX(var(--sway)) rotate(calc(var(--r) + 35deg)) rotateY(30deg); }
1133  }
1134</style>
1135
1136<script>
1137(function () {
1138  function add() {
1139    if (!document.body || document.querySelector('.joey-frame')) return;
1140    var f = document.createElement('div');
1141    f.className = 'joey-frame';
1142    f.setAttribute('aria-hidden', 'true');
1143    f.innerHTML = '<i class="l"></i><i class="r"></i><i class="b"></i>';
1144    document.body.appendChild(f);
1145  }
1146  if (document.readyState === 'loading') document.addEventListener('DOMContentLoaded', add);
1147  else add();
1148})();
1149</script>
1149<style>
1150  [id$="__announcement-bar"].shopify-section { z-index: 99998 !important; }
1151</style>
1152<style>
1153        :root{
1154          --heading-font-family: "MohrSemibold", sans-serif !important;
1155          --text-font-family: "MohrSemibold", sans-serif !important;
1156        }
1157      </style><style>
1158        body,
1159        .color-scheme--scheme-1,
1160        .collection-toolbar{ background-color: #FAF0D6 !important; }
1161      </style>
1161<script async crossorigin fetchpriority="high" src="/cdn/shopifycloud/importmap-polyfill/es-modules-shim.2.4.0.js"></script>
vendor: 1 bytes, line 1161
1161
1162<script type="importmap">{
1163        "imports": {
1164          "vendor": "//www.drinkjoey.com/cdn/shop/t/105/assets/vendor.min.js?v=118757129943152772801790653094",
1165          "theme": "//www.drinkjoey.com/cdn/shop/t/105/assets/theme.js?v=145321480898471368621790653094",
1166          "photoswipe": "//www.drinkjoey.com/cdn/shop/t/105/assets/photoswipe.min.js?v=13374349288281597431790653094"
1167        }
1168      }
1169    </script>
1169
1170
1171    
1171<script type="module" src="//www.drinkjoey.com/cdn/shop/t/105/assets/vendor.min.js?v=118757129943152772801790653094"></script>
1171
1172    
1172<script type="module" src="//www.drinkjoey.com/cdn/shop/t/105/assets/theme.js?v=145321480898471368621790653094"></script>
1172
1173
1174    
1174<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
1174<meta name="google-site-verification" content="2GEnPeCNexy_Y1hympuDWqthUvMBacXWHQQfhb3iZrI">
1175<meta name="google-site-verification" content="XAAP3VegxsTn79zrWMxVfGgd6DdPTVrNQVpoGejgtn0">
1176<meta name="facebook-domain-verification" content="01y9qfnt4lkbpft7uf2whx2io66nkq">
1177<meta name="facebook-domain-verification" content="yzn3aw2g7n21cupxfqe6akv3kd2i8j">
1178<meta name="facebook-domain-verification" content="c46vu4jo6eo145aaay4q1uz6lolqjt">
1179<meta name="google-site-verification" content="hhS9Ly__OoOp6J9OPNZeW6JWBg3jMWgHwlwujlIL7Lc">
1180<meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/55858036906/digital_wallets/dialog">
1181<meta id="in-context-paypal-metadata" data-shop-id="55858036906" data-venmo-supported="false" data-environment="production" data-locale="en_US" data-paypal-v4="true" data-currency="USD">
1182<link rel="ucp" href="/.well-known/ucp" version="2026-08-25"><link rel="alternate" type="application/atom+xml" title="Feed" href="/collections/shop-all.atom" />
1183<link rel="alternate" type="application/json+oembed" href="https://www.drinkjoey.com/collections/shop-all.oembed">
1184<script async="async" src="/checkouts/internal/preloads.js?locale=en-US&default_configuration_id=2449244330"></script>
1184
1185<link rel="preconnect" href="https://shop.app" crossorigin="anonymous">
1186<script async="async" src="https://shop.app/checkouts/internal/preloads.js?locale=en-US&default_configuration_id=2449244330&shop_id=55858036906" crossorigin="anonymous"></script>
vendor: 1 bytes, line 1186
1186
1187<script id="apple-pay-shop-capabilities" type="application/json">{"shopId":55858036906,"countryCode":"US","currencyCode":"USD","merchantCapabilities":["supports3DS"],"merchantId":"gid:\/\/shopify\/Shop\/55858036906","merchantName":"Joe'y","requiredBillingContactFields":["postalAddress","email"],"requiredShippingContactFields":["postalAddress","email"],"shippingType":"shipping","supportedNetworks":["visa","masterCard","amex","discover","elo","jcb"],"total":{"type":"pending","label":"Joe'y","amount":"1.00"},"shopifyPaymentsEnabled":true,"supportsSubscriptions":true}</script>
vendor: 1 bytes, line 1187
1187
1188<script id="shopify-features" type="application/json">{"accessToken":"71c7991f4dd115db80926914fe0f1e63","betas":["rich-media-storefront-analytics"],"domain":"www.drinkjoey.com","predictiveSearch":true,"shopId":55858036906,"locale":"en"}</script>
vendor: 1 bytes, line 1188
1188
1189<script>var Shopify = Shopify || {};
1190Shopify.shop = "respect-des-fonds.myshopify.com";
1191Shopify.locale = "en";
1192Shopify.currency = {"active":"USD","rate":"1.0"};
1193Shopify.country = "US";
1194Shopify.theme = {"name":"SEO: titles + descriptions back (09-29)","id":187423195306,"schema_name":"Prestige","schema_version":"10.7.0","theme_store_id":855,"role":"main"};
1195Shopify.theme.handle = "null";
1196Shopify.theme.style = {"id":null,"handle":null};
1197Shopify.cdnHost = "www.drinkjoey.com/cdn";
1198Shopify.routes = Shopify.routes || {};
1199Shopify.routes.root = "/";
1200Shopify.shopJsCdnBaseUrl = "https://cdn.shopify.com/shopifycloud/shop-js";
1201Shopify.SignInWithShop = Shopify.SignInWithShop || {};
1202Shopify.SignInWithShop.User = Shopify.SignInWithShop.User || {};
1203Shopify.SignInWithShop.User.recognized = false;</script>
vendor: 1 bytes, line 1203
1203
1204<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
vendor: 1 bytes, line 1204
1204
1205<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 1205
1205
1206<script>
1207  window.ShopifyPay = window.ShopifyPay || {};
1208  window.ShopifyPay.apiHost = "shop.app\/pay";
1209  window.ShopifyPay.redirectState = null;
1210</script>
vendor: 1 bytes, line 1210
1210
1211<script>
1212  window.Shopify = window.Shopify || {};
1213  window.Shopify.SignInWithShop = window.Shopify.SignInWithShop || {};
1214  window.Shopify.SignInWithShop.assetMetrics = { sampleRate: 0.25 };
1215  window.Shopify.SignInWithShop.eligible = true;
1216</script>
vendor: 1 bytes, line 1216
1216
1217<script id="shop-js-analytics" type="application/json">{"pageType":"collection"}</script>
vendor: 1 bytes, line 1217
1217
1218<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 1218
1218
1219<script type="module">
1220  await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js");
1221
1222  window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true});
1223
1224</script>
vendor: 1 bytes, line 1224
1224
1225<script>
1226  window.Shopify = window.Shopify || {};
1227  if (!window.Shopify.featureAssets) window.Shopify.featureAssets = {};
1228  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"]};
1229</script>
vendor: 1 bytes, line 1229
1229
1230<script>(function() {
1231  var isLoaded = false;
1232  function asyncLoad() {
1233    if (isLoaded) return;
1234    isLoaded = true;
1235    var urls = ["https:\/\/static.rechargecdn.com\/assets\/js\/widget.min.js?shop=respect-des-fonds.myshopify.com"];
1236    for (var i = 0; i < urls.length; i++) {
1237      var s = document.createElement('script');
1238      s.type = 'text/javascript';
1239      s.async = true;
1240      s.src = urls[i];
1241      var x = document.getElementsByTagName('script')[0];
1242      x.parentNode.insertBefore(s, x);
1243    }
1244  };
1245  if(window.attachEvent) {
1246    window.attachEvent('onload', asyncLoad);
1247  } else {
1248    window.addEventListener('load', asyncLoad, false);
1249  }
1250})();</script>
vendor: 1 bytes, line 1250
1250
1251<script id="__st">var __st={"a":55858036906,"offset":-25200,"reqid":"1fdcd342-1dfd-4543-a8d2-b717bd036347-1791144953","pageurl":"www.drinkjoey.com\/collections\/shop-all","u":"fa4c5b5a2eb6","p":"collection","rtyp":"collection","rid":264022884522};</script>
vendor: 1 bytes, line 1251
1251
1252<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
vendor: 1 bytes, line 1252
1252
1253<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'])})(!1,!0)}();</script>
vendor: 1 bytes, line 1253
1253
1254<script integrity="sha256-JjoPp5ZfB1sSAs5SQaol1x1GgvveM+BgmRzyDexInEQ=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//www.drinkjoey.com/cdn/shopifycloud/storefront/assets/storefront/load_feature-1bd60354.js" crossorigin="anonymous"></script>
vendor: 1 bytes, line 1254
1254
1255<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.drinkjoey.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>
1255<script crossorigin="anonymous" defer="defer" src="//www.drinkjoey.com/cdn/shopifycloud/storefront/assets/shopify_pay/storefront-616277c7.js?v=20250812"></script>
vendor: 1 bytes, line 1255
1255
1256<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 1256
1256
1257<script>
1258  window.Shopify = window.Shopify || {};
1259  window.Shopify.MCP = window.Shopify.MCP || {};
1260  window.Shopify.MCP.enabled = true;
1261  window.Shopify.MCP.shop = "respect-des-fonds.myshopify.com";
1262  window.Shopify.MCP.mcpEndpoint = "https:\/\/www.drinkjoey.com\/api\/mcp";
1263  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"]}}];
1264</script>
vendor: 1 bytes, line 1264
1264
1265<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.drinkjoey.com\/cdn\/shopifycloud\/storefront\/assets\/storefront\/webmcp-c6b62ece.js","sha256-ke4DDuBjdvea3vxLWxHc9E9nq8zihuG4IfYEGbb77ys=");})();
1266</script>
vendor: 1 bytes, line 1266
1266
1267<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.drinkjoey.com/cdn/shopifycloud/portable-wallets/latest/portable-wallets.en.js",t.type="module",document.head.appendChild(t)}};
1268</script>
vendor: 1 bytes, line 1268
1268
1269<script data-source-attribution="shopify.dynamic_checkout.buyer_consent">
1270  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);
1271</script>
vendor: 1 bytes, line 1271
1271
1272<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})}}));
1273</script>
1273
1274<link id="shopify-accelerated-checkout-styles" rel="stylesheet" media="screen" href="https://www.drinkjoey.com/cdn/shopifycloud/portable-wallets/latest/accelerated-checkout-backwards-compat.css" crossorigin="anonymous">
1275<style id="shopify-accelerated-checkout-cart">
1276        #shopify-buyer-consent {
1277  margin-top: 1em;
1278  display: inline-block;
1279  width: 100%;
1280}
1281
1282#shopify-buyer-consent.hidden {
1283  display: none;
1284}
1285
1286#shopify-subscription-policy-button {
1287  background: none;
1288  border: none;
1289  padding: 0;
1290  text-decoration: underline;
1291  font-size: inherit;
1292  cursor: pointer;
1293}
1294
1295#shopify-subscription-policy-button::before {
1296  box-shadow: none;
1297}
1298
1299      </style>
1300
1301<script id="shopify-cfh-end">window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
1301
1302
1303    
1304
1305    
1306<link href="//www.drinkjoey.com/cdn/shop/t/105/assets/theme.css?v=100252600308972364641790653094" rel="stylesheet" type="text/css" media="all" /><style>
1307      @font-face{font-family:'mohr-bold';src:url(//www.drinkjoey.com/cdn/shop/files/mohr-black-webfont.woff2?v=15419162492476879935) format('woff2'),url(//www.drinkjoey.com/cdn/shop/files/mohr-black-webfont.woff?v=17283674973405835481) format('woff');font-weight:700;font-style:normal;font-display:swap;}
1308      @font-face{font-family:'mohr-semibold';src:url(//www.drinkjoey.com/cdn/shop/files/mohr-semibold-webfont.woff2?v=3232129701942460624) format('woff2'),url(//www.drinkjoey.com/cdn/shop/files/mohr-semibold-webfont.woff?v=4214723708176290236) format('woff');font-weight:600;font-style:normal;font-display:swap;}
1309    </style><link href="//www.drinkjoey.com/cdn/shop/t/105/assets/index-iEgHy6o_.css?v=117052360089712125011790653094" rel="stylesheet" type="text/css" media="all" /><style>
1310      @font-face{font-family:"MohrBlack";src:url("//www.drinkjoey.com/cdn/shop/files/mohr-black-webfont.woff2?v=15419162492476879935") format("woff2");font-weight:normal;font-style:normal;font-display:swap;}
1311      @font-face{font-family:"MohrSemibold";src:url("//www.drinkjoey.com/cdn/shop/files/mohr-semibold-webfont.woff2?v=3232129701942460624") format("woff2");font-weight:normal;font-style:normal;font-display:swap;}
1312      @font-face{font-family:"MohrAltBlack";src:url("//www.drinkjoey.com/cdn/shop/files/MohrAlt-Black.otf?v=2522732506380928468") format("opentype");font-weight:normal;font-style:normal;font-display:swap;}
1313      @font-face{font-family:"MohrBold";src:url("//www.drinkjoey.com/cdn/shop/files/Mohr-Bold.otf?v=3515179194629886407") format("opentype");font-weight:normal;font-style:normal;font-display:swap;}
1314    </style>
1315
1316    
1317
1318
1319
1320
1321<!-- BEGIN app block: shopify://apps/klaviyo-email-marketing-sms/blocks/klaviyo-onsite-embed/2632fe16-c075-4321-a88b-50b567f42507 -->
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334  
1334<script async src="https://static.klaviyo.com/onsite/js/SqCGnt/klaviyo.js?company_id=SqCGnt"></script>
1334
1335  
1335<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>
1335
1336
1337  
1338
1339
1340
1341
1342  
1342<script>
1343    window.klaviyoReviewsProductDesignMode = false
1344  </script>
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354<!-- END app block --><!-- BEGIN app block: shopify://apps/okendo/blocks/theme-settings/bb689e69-ea70-4661-8fb7-ad24a2e23c29 --><!-- BEGIN app snippet: header-metafields -->
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367    
1368        <style data-oke-reviews-version="0.85.5" type="text/css" data-href="https://d3hw6dc1ow8pp2.cloudfront.net/reviews-widget-plus/css/okendo-reviews-styles.18391d59.css"></style><style data-oke-reviews-version="0.85.5" type="text/css" data-href="https://d3hw6dc1ow8pp2.cloudfront.net/reviews-widget-plus/css/modules/okendo-star-rating.4cb378a8.css"></style><style data-oke-reviews-version="0.85.5" type="text/css" data-href="https://d3hw6dc1ow8pp2.cloudfront.net/reviews-widget-plus/css/modules/okendo-reviews-keywords.0942444f.css"></style><style data-oke-reviews-version="0.85.5" type="text/css" data-href="https://d3hw6dc1ow8pp2.cloudfront.net/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:""}
1368.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://d3hw6dc1ow8pp2.cloudfront.net/reviews-widget-plus/fonts/oke-widget-icons.ttf) format("truetype"),url(https://d3hw6dc1ow8pp2.cloudfront.net/reviews-widget-plus/fonts/oke-widget-icons.woff) format("woff"),url(https://d3hw6dc1ow8pp2.cloudfront.net/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
1368or: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 32px}@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% - 64px)}@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}
1368to{opacity:1}}.layout-panel-flex>div:has([data-oke-container]){width:100%}
1369.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:")"}
1370.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}
1371.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>
1372    
1373    
1373<script type="application/json" id="oke-reviews-settings">{"subscriberId":"ffd1e690-43d9-4772-89cb-9362e976c71d","analyticsSettings":{"isWidgetOnScreenTrackingEnabled":true,"provider":"ua"},"locale":"en","localeAndVariant":{"code":"en"},"matchCustomerLocale":false,"widgetSettings":{"global":{"dateSettings":{"format":{"type":"relative"}},"hideOkendoBranding":true,"reviewTranslationsMode":"off","showIncentiveIndicator":false,"searchEnginePaginationEnabled":true,"stars":{"backgroundColor":"#FFFFFF","foregroundColor":"#FFD300","interspace":2,"shape":{"type":"default"},"showBorder":false},"font":{"fontType":"inherit-from-page"}},"homepageCarousel":{"slidesPerPage":{"large":3,"medium":2},"totalSlides":12,"scrollBehaviour":"slide","style":{"showDates":false,"border":{"color":"#C1C1C1","width":{"value":1,"unit":"px"}},"bodyFont":{"fontSize":{"value":14,"unit":"px"},"fontType":"use-global","fontWeight":400,"hasCustomFontSettings":true},"headingFont":{"fontSize":{"value":14,"unit":"px"},"fontType":"use-global","fontWeight":600,"hasCustomFontSettings":true},"arrows":{"color":"#676986","size":{"value":24,"unit":"px"},"enabled":true},"avatar":{"backgroundColor":"#2D2D2B","placeholderTextColor":"#2D2D2B","size":{"value":48,"unit":"px"},"enabled":false},"media":{"size":{"value":80,"unit":"px"},"imageGap":{"value":4,"unit":"px"},"enabled":false},"stars":{"height":{"value":15,"unit":"px"}},"productImageSize":{"value":48,"unit":"px"},"layout":{"name":"default","reviewDetailsPosition":"below","showProductName":false,"showAttributeBars":false,"showProductDetails":"only-when-grouped"},"highlightColor":"#E7B87F","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":true,"truncation":{"bodyMaxLines":10,"truncateAll":false,"enabled":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":"left","verticalAlignment":"top","blocks":[{"columnWidth":"half","modules":[{"name":"rating-average","layout":"two-line"},{"name":"rating-breakdown","backgroundColor":"#F4F4F6","shadingColor":"#2D2D2B","stretchMode":"contain"}],"textAlignment":"left"},{"columnWidth":"half","modules":[{"name":"media-grid","imageGap":{"value":4,"unit":"px"},"scaleToFill":true,"rows":2,"columns":10}],"textAlignment":"left"}]},"style":{"showDates":false,"border":{"color":"#C1C1C1","width":{"value":1,"unit":"px"}},"bodyFont":{"hasCustomFontSettings":false},"headingFont":{"hasCustomFontSettings":false},"filters":{"backgroundColorActive":"#676986","backgroundColor":"#FFFFFF","borderColor":"#DBDDE4","borderRadius":{"value":100,"unit":"px"},"borderColorActive":"#676986","textColorActive":"#FFFFFF","textColor":"#2C3E50","searchHighlightColor":"#B2F9E9"},"avatar":{"enabled":false},"stars":{"height":{"value":15,"unit":"px"},"globalOverrideSettings":{"backgroundColor":"#E5E5E5","foregroundColor":"#E7B87F","interspace":2,"showBorder":false}},"shadingColor":"#FFFFFF","productImageSize":{"value":48,"unit":"px"},"button":{"backgroundColorActive":"#FFFFFF","borderColorHover":"#C1C1C1","backgroundColor":"#FFFFFF","borderColor":"#C1C1C1","backgroundColorHover":"#FFFFFF","textColorHover":"#525252","borderRadius":{"value":0,"unit":"px"},"borderWidth":{"value":1,"unit":"px"},"borderColorActive":"#C1C1C1","textColorActive":"#525252","textColor":"#525252","font":{"hasCustomFontSettings":false}},"highlightColor":"#E7B87F","spaceAbove":{"value":20,"unit":"px"},"text":{"primaryColor":"#525252","fontSizeRegular":{"value":14,"unit":"px"},"fontSizeLarge":{"value":20,"unit":"px"},"fontSizeSmall":{"value":12,"unit":"px"},"secondaryColor":"#525252"},"spaceBelow":{"value":20,"unit":"px"},"attributeBar":{"style":"default","backgroundColor":"#D3D4DD","shadingColor":"#9A9DB1","markerColor":"#2D2D2B"}},"showWhenEmpty":true,"reviews":{"list":{"layout":{"name":"minimal","showAttributeBars":true,"showProductVariantName":false,"columnAmount":4,"showProductDetails":"only-when-grouped"},"initialPageSize":12,"media":{"layout":"hidden"},"truncation":{"bodyMaxLines":10,"truncateAll":false,"enabled":false},"loadMorePageSize":12},"controls":{"filterMode":"off","defaultSort":"rating desc","writeReviewButtonEnabled":true,"freeTextSearchEnabled":false}}},"starRatings":{"showWhenEmpty":false,"clickBehavior":"scroll-to-widget","style":{"text":{"content":"review-count","style":"number-and-text","brackets":false},"spaceAbove":{"value":0,"unit":"px"},"spaceBelow":{"value":0,"unit":"px"},"height":{"value":18,"unit":"px"}}}},"features":{"attributeFiltersEnabled":true,"recorderPlusEnabled":true,"recorderQandaPlusEnabled":true,"reviewsKeywordsEnabled":true,"reviewsSummariesEnabled":true}}</script>
1373
1374            <style id="oke-css-vars">:root{--oke-widget-spaceAbove:20px;--oke-widget-spaceBelow:20px;--oke-starRating-spaceAbove:0;--oke-starRating-spaceBelow:0;--oke-button-backgroundColor:#fff;--oke-button-backgroundColorHover:#fff;--oke-button-backgroundColorActive:#fff;--oke-button-textColor:#525252;--oke-button-textColorHover:#525252;--oke-button-textColorActive:#525252;--oke-button-borderColor:#c1c1c1;--oke-button-borderColorHover:#c1c1c1;--oke-button-borderColorActive:#c1c1c1;--oke-button-borderRadius:0;--oke-button-borderWidth:1px;--oke-button-fontWeight:700;--oke-button-fontSize:var(--oke-text-regular,14px);--oke-button-fontFamily:inherit;--oke-border-color:#c1c1c1;--oke-border-width:1px;--oke-text-primaryColor:#525252;--oke-text-secondaryColor:#525252;--oke-text-small:12px;--oke-text-regular:14px;--oke-text-large:20px;--oke-text-fontFamily:inherit;--oke-avatar-size:undefined;--oke-avatar-backgroundColor:undefined;--oke-avatar-placeholderTextColor:undefined;--oke-highlightColor:#e7b87f;--oke-shadingColor:#fff;--oke-productImageSize:48px;--oke-attributeBar-shadingColor:#9a9db1;--oke-attributeBar-borderColor:undefined;--oke-attributeBar-backgroundColor:#d3d4dd;--oke-attributeBar-markerColor:#2d2d2b;--oke-filter-backgroundColor:#fff;--oke-filter-backgroundColorActive:#676986;--oke-filter-borderColor:#dbdde4;--oke-filter-borderColorActive:#676986;--oke-filter-textColor:#2c3e50;--oke-filter-textColorActive:#fff;--oke-filter-borderRadius:100px;--oke-filter-searchHighlightColor:#b2f9e9;--oke-mediaGrid-chevronColor:#676986;--oke-stars-foregroundColor:#ffd300;--oke-stars-backgroundColor:#fff;--oke-stars-borderWidth:0}.oke-w,.oke-modal{--oke-stars-foregroundColor:#e7b87f;--oke-stars-backgroundColor:#e5e5e5;--oke-stars-borderWidth:0}.oke-w,oke-modal{--oke-title-fontWeight:600;--oke-title-fontSize:var(--oke-text-regular,14px);--oke-title-fontFamily:inherit;--oke-bodyText-fontWeight:400;--oke-bodyText-fontSize:var(--oke-text-regular,14px);--oke-bodyText-fontFamily:inherit}</style>
1375            <style id="oke-reviews-custom-css">.okeReviews.oke-w .oke-helpful,.okeReviews .oke-modal .oke-w-reviewSimple-helpful,.okeReviews.oke-w .oke-w-reviews-count,.okeReviews.oke-w label.oke-sortSelect-label,.okeReviews .oke-modal .oke-w-reviewer-avatar{display:none}.okeReviews.oke-w .oke-reviewContent-title,.okeReviews .oke-modal .oke-reviewContent-title{font-family:"futura-medium",sans-serif;font-size:17.5px;font-weight:700;letter-spacing:normal}.okeReviews.oke-w .oke-w-navBar .oke-w-navBar-item{font-family:"futura-medium",sans-serif;font-size:14px;font-weight:700;letter-spacing:normal}.okeReviews .oke-modal,.okeReviews .oke-modal .oke-helpful,.okeReviews .oke-modal .oke-helpful-vote-button,.okeReviews .oke-modal .oke-reviewContent-date,.okeReviews .oke-modal p,.okeReviews .oke-modal .oke-reviewContent-title{color:#5c0c0d}.okeReviews.oke-w .oke-reviewContent-body p,.okeReviews .oke-modal .oke-reviewContent-body p{line-height:25.2px;font-weight:400;letter-spacing:normal}.okeReviews.oke-w .oke-button{font-family:"futura-book",sans-serif;font-weight:400;font-size:14px;letter-spacing:normal}.okeReviews.oke-w .oke-button:not(.oke-is-loading):not(.oke-is-active):hover{box-shadow:0 0}.okeReviews.oke-w a.oke-w-writeReview.oke-button{height:100%}.okeReviews.oke-w .oke-is-small .oke-w-reviews-writeReview{width:100%}.okeReviews.oke-w .oke-is-small a.oke-w-writeReview.oke-button{width:100%}.okeReviews.oke-w .oke-is-small .oke-button{width:100%}.okeReviews.oke-w .oke-is-small .oke-qw-header-sort,.okeReviews.oke-w .oke-is-small .oke-qw-header-askQuestion{width:100%;margin:0}.okeReviews[data-oke-container].oke-w .oke-questions-main{margin-top:1em}.okeReviews.oke-w span.oke-w-ratingAverageModule-rating-average,.okeReviews.oke-w span.oke-w-recommendsModule-value{background:#ffd45c;color:#fff;font-weight:700;padding:.25em .7em;font-size:16px}.okeReviews.oke-w .oke-w-reviewer-identity span.oke-w-reviewer-name,.oke-w-reviewer-verified{font-size:14px;font-weight:400}.okeReviews.oke-w .oke-w-header{border:1px solid #a83f21;border-right:0;border-left:0;padding:1.5em;margin-bottom:25px}.okeReviews.oke-w .oke-w-header-content-block.oke-w-header-content-block--oneThird.oke-w-header-content-block--left{border-right:1px solid #a83f21;padding-right:2em;margin-right:2em;margin-bottom:0}.okeReviews.oke-w[data-oke-container] .oke-w-reviews-head,div.okeReviews.oke-w .oke-w-reviews-head{margin-bottom:16px}.okeReviews.oke-w .oke-is-small .oke-w-header-content-block.oke-w-header-content-block--oneThird.oke-w-header-content-block--left{border:0;padding-right:0;margin-right:0;margin-bottom:1.5em}.okeReviews.oke-w .oke-is-small .oke-w-recommendsModule{display:flex;align-items:center}.okeReviews.oke-w .oke-is-small span.oke-w-recommendsModule-value{margin-right:5px}.okeReviews.oke-w .oke-w-ratingAverageModule-count{margin-top:10px}.okeReviews.oke-w .oke-is-small ul.oke-mediaStrip.oke-mediaStrip--maxImages-10{grid-template-columns:repeat(4,4fr) !important}.okeReviews.oke-w .oke-is-small ul.oke-mediaStrip.oke-mediaStrip--maxImages-10 li{height:60px !important;width:60px !important}.okeReviews.oke-w .oke-w-breakdownModule-distribution-bar{border-radius:0;height:1.4em}.okeReviews.oke-w .oke-w-breakdownModule-distribution-bar-fill{border-radius:0}.okeReviews.oke-w .oke-w-reviews-controls{justify-content:flex-end}.okeReviews.oke-w .oke-sortSelect{border:1px solid #a84024;padding:10px 20px;margin-bottom:.6em}.okeReviews.oke-w .oke-qw-header-sort .oke-sortSelect{height:40px;margin-bottom:0;padding:8px 11px}.okeReviews.oke-w .oke-is-small .oke-w-reviews-sort{width:100%}.okeReviews.oke-w .oke-is-small .oke-sortSelect{display:flex;align-items:center;flex-flow:column wrap}.okeReviews.oke-w .oke-is-small .oke-w-reviews-head{margin-bottom:1em}.okeReviews.oke-w .oke-w-reviewer div{display:flex;flex-flow:row wrap}.okeReviews.oke-w .oke-w-reviewer-identity{margin-right:1em}.okeReviews.oke-w .oke-w-reviewReply-main{flex-flow:column wrap}.okeReviews.oke-w .oke-w-reviewReply-body{padding-top:10px}.okeReviews.oke-w .oke-w-reviewMinimal-reply{border-top:1px solid #a84024;border-bottom:0;border-right:0;border-left:0}.okeReviews.oke-w span.oke-w-navBar-item-count::before,.okeReviews.oke-w span.oke-w-navBar-item-count::after{display:none}.okeReviews.oke-w span.oke-w-navBar-item-count{color:#fff;background:#5c0c0d;padding:1px 6px;font-size:.714em}.okeReviews[data-oke-container].oke-w .oke-button{font-family:"futura-book",sans-serif;font-weight:400;font-size:14px;letter-spacing:normal}.okeReviews[data-oke-container].oke-w .oke-w-reviews-controls{justify-content:flex-end}.okeReviews[data-oke-container].oke-w .oke-helpful,.okeReviews[data-oke-container] .oke-modal .oke-w-reviewSimple-helpful,.okeReviews[data-oke-container] .oke-modal .oke-w-reviewer-avatar{display:none}.okeReviews[data-oke-container].oke-w .oke-w-reviewMinimal-reply{border-top:1px solid #a84024;border-bottom:0;border-right:0;border-left:0}.okeReviews[data-oke-container].oke-w .oke-w-breakdownModule-distribution-bar{border-radius:0;height:1.4em}.okeReviews[data-oke-container].oke-w .oke-w-breakdownModule-distribution-bar-fill{border-radius:0}.okeReviews[data-oke-container].oke-modal .oke-reviewContent-body p{color:#5c0c0d}
1375div.okeReviews[data-oke-container] .oke-reviewCarousel-header{display:none}</style>
1376            <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>
1376<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>
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390<!-- END app snippet -->
1391
1392    <!-- BEGIN app snippet: okendo-reviews-json-ld -->
1393<!-- END app snippet -->
1394
1395<!-- BEGIN app snippet: widget-plus-initialisation-script -->
1396
1397
1398
1399
1400    
1400<script async id="okendo-reviews-script" src="https://cdn-static.okendo.io/reviews-widget-plus/js/okendo-reviews.js"></script>
1400
1401
1402<!-- END app snippet -->
1403
1404
1405<!-- END app block --><!-- BEGIN app block: shopify://apps/eg-auto-add-to-cart/blocks/app-embed/0f7d4f74-1e89-4820-aec4-6564d7e535d2 -->
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417  
1418    
1418<script
1419      async
1420      type="text/javascript"
1421      src="https://cdn.506.io/eg/script.js?shop=respect-des-fonds.myshopify.com&v=12"
1422    ></script>
1422
1423  
1424
1425
1426
1427  <meta id="easygift-shop" itemid="c2hvcF8kXzE3OTExNDQ5NTQ=" content="{&quot;isInstalled&quot;:true,&quot;installedOn&quot;:&quot;2025-11-12T06:12:36.891Z&quot;,&quot;appVersion&quot;:&quot;3.0&quot;,&quot;subscriptionName&quot;:&quot;Unlimited&quot;,&quot;cartAnalytics&quot;:true,&quot;freeTrialEndsOn&quot;:null,&quot;settings&quot;:{&quot;reminderBannerStyle&quot;:{&quot;position&quot;:{&quot;horizontal&quot;:&quot;right&quot;,&quot;vertical&quot;:&quot;bottom&quot;},&quot;closingMode&quot;:&quot;doNotAutoClose&quot;,&quot;cssStyles&quot;:&quot;&quot;,&quot;displayAfter&quot;:5,&quot;headerText&quot;:&quot;&quot;,&quot;imageUrl&quot;:null,&quot;primaryColor&quot;:&quot;#000000&quot;,&quot;reshowBannerAfter&quot;:&quot;everyNewSession&quot;,&quot;selfcloseAfter&quot;:5,&quot;showImage&quot;:false,&quot;subHeaderText&quot;:&quot;&quot;},&quot;addedItemIdentifier&quot;:&quot;_Gifted&quot;,&quot;ignoreOtherAppLineItems&quot;:null,&quot;customVariantsInfoLifetimeMins&quot;:1440,&quot;redirectPath&quot;:null,&quot;ignoreNonStandardCartRequests&quot;:false,&quot;bannerStyle&quot;:{&quot;position&quot;:{&quot;horizontal&quot;:&quot;right&quot;,&quot;vertical&quot;:&quot;bottom&quot;},&quot;cssStyles&quot;:null,&quot;primaryColor&quot;:&quot;#000000&quot;},&quot;themePresetId&quot;:null,&quot;notificationStyle&quot;:{&quot;position&quot;:{&quot;horizontal&quot;:null,&quot;vertical&quot;:null},&quot;cssStyles&quot;:null,&quot;duration&quot;:null,&quot;hasCustomizations&quot;:false,&quot;primaryColor&quot;:null},&quot;fetchCartData&quot;:false,&quot;useLocalStorage&quot;:{&quot;enabled&quot;:false,&quot;expiryMinutes&quot;:null},&quot;popupStyle&quot;:{&quot;closeModalOutsideClick&quot;:true,&quot;priceShowZeroDecimals&quot;:true,&quot;addButtonText&quot;:null,&quot;cssStyles&quot;:null,&quot;dismissButtonText&quot;:null,&quot;hasCustomizations&quot;:false,&quot;imageUrl&quot;:null,&quot;outOfStockButtonText&quot;:null,&quot;primaryColor&quot;:null,&quot;secondaryColor&quot;:null,&quot;showProductLink&quot;:false,&quot;subscriptionLabel&quot;:null},&quot;refreshAfterBannerClick&quot;:false,&quot;disableReapplyRules&quot;:false,&quot;disableReloadOnFailedAddition&quot;:false,&quot;autoReloadCartPage&quot;:false,&quot;ajaxRedirectPath&quot;:null,&quot;allowSimultaneousRequests&quot;:false,&quot;applyRulesOnCheckout&quot;:false,&quot;enableCartCtrlOverrides&quot;:true,&quot;customRedirectFromCart&quot;:null,&quot;scriptSettings&quot;:{&quot;branding&quot;:{&quot;removalRequestSent&quot;:null,&quot;show&quot;:false},&quot;productPageRedirection&quot;:{&quot;enabled&quot;:false,&quot;products&quot;:[],&quot;redirectionURL&quot;:&quot;\/&quot;},&quot;debugging&quot;:{&quot;enabled&quot;:false,&quot;enabledOn&quot;:null,&quot;stringifyObj&quot;:false},&quot;useFinalPriceGetEntireCart&quot;:false,&quot;disableRedirectAfterFormSubmit&quot;:false,&quot;customCSS&quot;:null,&quot;decodePayload&quot;:false,&quot;delayUpdates&quot;:2000,&quot;enableBuyNowInterceptions&quot;:false,&quot;fetchCartDataBeforeRequest&quot;:false,&quot;fetchProductInfoFromSavedDomain&quot;:false,&quot;hideAlertsOnFrontend&quot;:false,&quot;hideGiftedPropertyText&quot;:false,&quot;removeEGPropertyFromSplitActionLineItems&quot;:false,&quot;removeProductsAddedFromExpiredRules&quot;:false,&quot;useFinalPrice&quot;:false},&quot;accessToEnterprise&quot;:false},&quot;translations&quot;:null,&quot;defaultLocale&quot;:&quot;en&quot;,&quot;shopDomain&quot;:&quot;www.drinkjoey.com&quot;}">
1428
1429
1430<script defer>
1431  (async function() {
1432    try {
1433
1434      const blockVersion = "v3"
1435      if (blockVersion != "v3") {
1436        return
1437      }
1438
1439      let metaErrorFlag = false;
1440      if (metaErrorFlag) {
1441        return
1442      }
1443
1444      // Parse metafields as JSON
1445      const metafields = {"easygift-rule-691425fd8b00f3a8826afe1c":{"schedule":{"enabled":false,"starts":null,"ends":null},"trigger":{"productTags":{"targets":[],"collectionInfo":null,"sellingPlan":null},"promoCode":null,"promoCodeDiscount":null,"type":"productsInclude","minCartValue":null,"hasUpperCartValue":false,"upperCartValue":null,"products":[{"name":"Joe'y to-go'y - Default Title","variantId":47610827604138,"variantGid":"gid:\/\/shopify\/ProductVariant\/47610827604138","productGid":"gid:\/\/shopify\/Product\/8291109929130","handle":"joey-to-goy","sellingPlans":[],"alerts":[],"_id":"691425fd8b00f3a8826afe1d"}],"collections":[],"condition":"quantity","conditionMin":3,"conditionMax":null,"collectionSellingPlanType":null},"action":{"notification":{"enabled":false,"headerText":null,"subHeaderText":null,"showImage":false,"imageUrl":""},"discount":{"type":"shpAutomatic","title":"FROTHYTOGOY","id":"gid:\/\/shopify\/DiscountAutomaticNode\/1489855578282","createdByEasyGift":true,"value":100,"discountType":"percentage","easygiftAppDiscount":false,"issue":null},"popupOptions":{"headline":null,"subHeadline":null,"showItemsPrice":false,"popupDismissable":false,"imageUrl":null,"persistPopup":false,"rewardQuantity":1,"showDiscountedPrice":false,"hideOOSItems":false,"showVariantsSeparately":false},"banner":{"enabled":false,"headerText":null,"imageUrl":null,"subHeaderText":null,"showImage":false,"displayAfter":"5","closingMode":"doNotAutoClose","selfcloseAfter":"5","reshowBannerAfter":"everyNewSession","redirectLink":null},"type":"addAutomatically","products":[{"name":"Froth'y - Default Title","variantId":"41764410556586","variantGid":"gid:\/\/shopify\/ProductVariant\/41764410556586","productGid":"gid:\/\/shopify\/Product\/7064716738730","quantity":1,"handle":"frothy","price":"18.00"}],"limit":1,"preventProductRemoval":false,"addAvailableProducts":false},"targeting":{"link":{"destination":null,"data":null,"cookieLifetime":14},"additionalCriteria":{"geo":{"include":[],"exclude":[]},"type":null,"customerTags":[],"customerTagsExcluded":[],"customerId":[],"orderCount":null,"hasOrderCountMax":false,"orderCountMax":null,"totalSpent":null,"hasTotalSpentMax":false,"totalSpentMax":null},"type":"all"},"settings":{"worksInReverse":true,"runsOncePerSession":false,"preventAddedItemPurchase":false,"showReminderBanner":false},"_id":"691425fd8b00f3a8826afe1c","name":"Free Frother with To-Goys","store":"69142552c95522827f6f6123","shop":"respect-des-fonds","active":true,"translations":null,"createdAt":"2025-11-12T06:15:25.200Z","updatedAt":"2025-11-12T06:15:25.200Z","__v":0}};
1446
1447      // Process metafields in JavaScript
1448      let savedRulesArray = [];
1449      for (const [key, value] of Object.entries(metafields)) {
1450        if (value) {
1451          for (const prop in value) {
1452            // avoiding Object.Keys for performance gain -- no need to make an array of keys.
1453            savedRulesArray.push(value);
1454            break;
1455          }
1456        }
1457      }
1458
1459      const metaTag = document.createElement('meta');
1460      metaTag.id = 'easygift-rules';
1461      metaTag.content = JSON.stringify(savedRulesArray);
1462      metaTag.setAttribute('itemid', 'cnVsZXNfJF8xNzkxMTQ0OTU0');
1463
1464      document.head.appendChild(metaTag);
1465      } catch (err) {
1466        
1467      }
1468  })();
1469</script>
1469
1470
1471
1472  
1472<script
1473    type="text/javascript"
1474    defer
1475  >
1476
1477    (function () {
1478      try {
1479        window.EG_INFO = window.EG_INFO || {};
1480        var shopInfo = {"isInstalled":true,"installedOn":"2025-11-12T06:12:36.891Z","appVersion":"3.0","subscriptionName":"Unlimited","cartAnalytics":true,"freeTrialEndsOn":null,"settings":{"reminderBannerStyle":{"position":{"horizontal":"right","vertical":"bottom"},"closingMode":"doNotAutoClose","cssStyles":"","displayAfter":5,"headerText":"","imageUrl":null,"primaryColor":"#000000","reshowBannerAfter":"everyNewSession","selfcloseAfter":5,"showImage":false,"subHeaderText":""},"addedItemIdentifier":"_Gifted","ignoreOtherAppLineItems":null,"customVariantsInfoLifetimeMins":1440,"redirectPath":null,"ignoreNonStandardCartRequests":false,"bannerStyle":{"position":{"horizontal":"right","vertical":"bottom"},"cssStyles":null,"primaryColor":"#000000"},"themePresetId":null,"notificationStyle":{"position":{"horizontal":null,"vertical":null},"cssStyles":null,"duration":null,"hasCustomizations":false,"primaryColor":null},"fetchCartData":false,"useLocalStorage":{"enabled":false,"expiryMinutes":null},"popupStyle":{"closeModalOutsideClick":true,"priceShowZeroDecimals":true,"addButtonText":null,"cssStyles":null,"dismissButtonText":null,"hasCustomizations":false,"imageUrl":null,"outOfStockButtonText":null,"primaryColor":null,"secondaryColor":null,"showProductLink":false,"subscriptionLabel":null},"refreshAfterBannerClick":false,"disableReapplyRules":false,"disableReloadOnFailedAddition":false,"autoReloadCartPage":false,"ajaxRedirectPath":null,"allowSimultaneousRequests":false,"applyRulesOnCheckout":false,"enableCartCtrlOverrides":true,"customRedirectFromCart":null,"scriptSettings":{"branding":{"removalRequestSent":null,"show":false},"productPageRedirection":{"enabled":false,"products":[],"redirectionURL":"\/"},"debugging":{"enabled":false,"enabledOn":null,"stringifyObj":false},"useFinalPriceGetEntireCart":false,"disableRedirectAfterFormSubmit":false,"customCSS":null,"decodePayload":false,"delayUpdates":2000,"enableBuyNowInterceptions":false,"fetchCartDataBeforeRequest":false,"fetchProductInfoFromSavedDomain":false,"hideAlertsOnFrontend":false,"hideGiftedPropertyText":false,"removeEGPropertyFromSplitActionLineItems":false,"removeProductsAddedFromExpiredRules":false,"useFinalPrice":false},"accessToEnterprise":false},"translations":null,"defaultLocale":"en","shopDomain":"www.drinkjoey.com"};
1481        var productRedirectionEnabled = shopInfo.settings.scriptSettings.productPageRedirection.enabled;
1482        if (["Unlimited", "Enterprise"].includes(shopInfo.subscriptionName) && productRedirectionEnabled) {
1483          var products = shopInfo.settings.scriptSettings.productPageRedirection.products;
1484          if (products.length > 0) {
1485            var productIds = products.map(function(prod) {
1486              var productGid = prod.id;
1487              var productIdNumber = parseInt(productGid.split('/').pop());
1488              return productIdNumber;
1489            });
1490            var productInfo = null;
1491            var isProductInList = productIds.includes(productInfo.id);
1492            if (isProductInList) {
1493              var redirectionURL = shopInfo.settings.scriptSettings.productPageRedirection.redirectionURL;
1494              if (redirectionURL) {
1495                window.location = redirectionURL;
1496              }
1497            }
1498          }
1499        }
1500
1501        
1502      } catch(err) {
1503      return
1504    }}
1504)()
1505  </script>
1505
1506
1507
1508
1509<!-- 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 />
1510<link rel='preconnect dns-prefetch' href='https://conf.config-security.com/' crossorigin />
1511<script>
1512/* >> TriplePixel :: start*/
1513window.TriplePixelData={TripleName:"respect-des-fonds.myshopify.com",ver:"2.16",plat:"SHOPIFY",isHeadless:false,src:'SHOPIFY_EXT',product:{id:"",name:``,price:"",variant:"",av:{  }},search:"",collection:"264022884522",cart:"drawer",template:"collection",curr:"USD" || "USD", market:"2944434346"},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);
1514/* << TriplePixel :: end*/
1515</script>
1515
1516
1517
1518
1519<!-- END app block --><link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
1520<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: 55858036906,url: window.location.href,navigation_start,duration: currentMs - navigation_start,session_token,page_type: "collection"};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 1520
1520
1521<script>
1522  window.__TREKKIE_SHIM_QUEUE = window.__TREKKIE_SHIM_QUEUE || [];
1523</script>
vendor: 1 bytes, line 1523
1523
1524<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}
1524).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: 55858036906,storefrontBaseUrl: "https://www.drinkjoey.com",extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint: "https://www.drinkjoey.com/.well-known/shopify/monorail/unstable/produce_batch",surface: "storefront-renderer",enabledBetaFlags: ["4c64608a","16072cab","8450a54b","7ee89bf1"],webPixelsConfigList: [{"id":"1921515690","configuration":"{\"pixelCode\":\"D9G0VT3C77U6HL2UKCE0\"}","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":["share_all_events"]},"dataSharingState":"optimized"}
1524,{"id":"1800536234","configuration":"{\"widgetId\":\"w4gasgzuq0ud6os\",\"baseRequestUrl\":\"https:\\\/\\\/shopify-server.getredo.com\\\/widgets\",\"splitEnabled\":\"false\",\"customerAccountsEnabled\":\"false\",\"conciergeSplitEnabled\":\"false\",\"marketingEnabled\":\"true\",\"expandedWarrantyEnabled\":\"false\",\"storefrontSalesAIEnabled\":\"false\",\"conversionEnabled\":\"false\",\"contextualEnabled\":\"false\",\"failedDiscountRescueEnabled\":\"false\",\"galePaymentInfoEnabled\":\"false\",\"coverageProductIds\":\"[]\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"9b8b9baae668c34654484d7b7cf88765","type":"APP","apiClientId":3426665,"privacyPurposes":["ANALYTICS","MARKETING"],"capabilities":["advanced_dom_events"],"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":"1387364522","configuration":"{\"accountID\":\"SqCGnt\",\"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":"831619242","configuration":"{\"store_id\":\"129492\",\"environment\":\"prod\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"10c4f173702937db6fa4bf871600cafd","type":"APP","apiClientId":294517,"privacyPurposes":["ANALYTICS"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"id":"785580202","configuration":"{}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"9bce1c0cdfc09538057898e4ff134fa2","type":"APP","apiClientId":30400643073,"privacyPurposes":["ANALYTICS"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"id":"776339626","configuration":"{\"accountID\":\"1220658\",\"workspaceId\":\"dd5b22eb-b540-468f-ad84-3c0b0a672e41\",\"projectId\":\"9274028b-2d7a-49e6-9587-38e743a71c35\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"d98eb033f1e81320021a411362de3a55","type":"APP","apiClientId":5461967,"privacyPurposes":["ANALYTICS"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":[],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"id":"625017002","configuration":"{\"shopId\":\"respect-des-fonds.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":"353304746","configuration":"{\"config\":\"{\\\"google_tag_ids\\\":[\\\"G-BJP4F079NB\\\",\\\"AW-10821211039\\\",\\\"GT-5MJQZL7\\\"],\\\"target_country\\\":\\\"US\\\",\\\"gtag_events\\\":[{\\\"type\\\":\\\"begin_checkout\\\",\\\"action_label\\\":[\\\"G-BJP4F079NB\\\",\\\"AW-10821211039\\\/GtptCJnvqogDEJ-n-qco\\\"]},{\\\"type\\\":\\\"search\\\",\\\"action_label\\\":[\\\"G-BJP4F079NB\\\",\\\"AW-10821211039\\\/Iz4NCJzvqogDEJ-n-qco\\\"]},{\\\"type\\\":\\\"remove_from_cart\\\",\\\"action_label\\\":\\\"G-BJP4F079NB\\\"},{\\\"type\\\":\\\"view_item\\\",\\\"action_label\\\":[\\\"G-BJP4F079NB\\\",\\\"AW-10821211039\\\/c4YPCJPvqogDEJ-n-qco\\\",\\\"MC-F1GNKZ7WHN\\\"]},{\\\"type\\\":\\\"add_shipping_info\\\",\\\"action_label\\\":\\\"G-BJP4F079NB\\\"},{\\\"type\\\":\\\"purchase\\\",\\\"action_label\\\":[\\\"G-BJP4F079NB\\\",\\\"AW-10821211039\\\/l-yrCJDvqogDEJ-n-qco\\\",\\\"MC-F1GNKZ7WHN\\\"]},{\\\"type\\\":\\\"page_view\\\",\\\"action_label\\\":[\\\"G-BJP4F079NB\\\",\\\"AW-10821211039\\\/sEYlCI3vqogDEJ-n-qco\\\",\\\"MC-F1GNKZ7WHN\\\"]},{\\\"type\\\":\\\"view_item_list\\\",\\\"action_label\\\":\\\"G-BJP4F079NB\\\"},{\\\"type\\\":\\\"add_payment_info\\\",\\\"action_label\\\":[\\\"G-BJP4F079NB\\\",\\\"AW-10821211039\\\/FWXuCJ_vqogDEJ-n-qco\\\"]},{\\\"type\\\":\\\"add_to_cart\\\",\\\"action_label\\\":[\\\"G-BJP4F079NB\\\",\\\"AW-10821211039\\\/tnLGCJbvqogDEJ-n-qco\\\"]},{\\\"type\\\":\\\"view_cart\\\",\\\"action_label\\\":\\\"G-BJP4F079NB\\\"}],\\\"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"]}
1524,{"id":"151716010","configuration":"{\"pixel_id\":\"334821632442998\",\"pixel_type\":\"facebook_pixel\",\"metaapp_system_user_token\":\"-\"}","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":"61702314","configuration":"{\"tagID\":\"2613974770120\"}","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":["share_all_events"]},"dataSharingState":"optimized"},{"id":"26149034","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"2","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"name":"Website Sale - New"},{"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":"Joe'y","paymentSettings":{"currencyCode":"USD"},"myshopifyDomain":"respect-des-fonds.myshopify.com","countryCode":"US","storefrontUrl":"https:\/\/www.drinkjoey.com"},"customer":null,"cart":null,"checkout":null,"productVariants":[],"products":[{"id":"8402841600170","handle":"joey-flavor-original","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"48120166809770","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"8402826166442","handle":"joey-flavor-vanilla","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"48120094654634","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"8402830491818","handle":"joey-flavor-mocha","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"48120089673898","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7064716738730","handle":"frothy","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"41764410556586","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"8002412413098","handle":"joey-jar","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"46151459799210","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"8005121015978","handle":"fellow-ceramic-mug","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"46161441063082","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"8248263540906","handle":"joey-tumbler","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"47442121228458","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]}],"purchasingCompany":null},},"https://www.drinkjoey.com/cdn","5982071ew7ea472e3p69b68784m2150dfea",{"modern":"","legacy":""},{"trekkieShim":true,"agentContext":true,"apiClientId":"580111","facebookCapiEnabled":"true","themeId":"187423195306","themeStoreId":"855","themePublished":"true","eventMetadataId":"4d9f3068-959c-46d2-b29c-947f20424513","pageType":"collection","resourceId":"264022884522","shopId":"55858036906","storefrontBaseUrl":"https:\/\/www.drinkjoey.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\",{}],[\"collection_viewed\",{\"collection\":{\"id\":\"264022884522\",\"title\":\"Shop all\",\"productVariants\":[{\"price\":{\"amount\":60.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Original Joe'y\",\"vendor\":\"Joe'y\",\"id\":\"8402841600170\",\"untranslatedTitle\":\"Original Joe'y\",\"url\":\"\/products\/joey-flavor-original\",\"type\":\"Coffee\"},\"id\":\"48120166809770\",\"image\":{\"src\":\"\/\/www.drinkjoey.com\/cdn\/shop\/files\/Joe_y_Original_Hero_c446e8f0-f664-498a-8e13-2b804d859ed2.png?v=1774228682\"}
1524,\"sku\":\"JOS60R1\",\"title\":\"60 servings\",\"untranslatedTitle\":\"60 servings\"},{\"price\":{\"amount\":25.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Vanilla Joe'y\",\"vendor\":\"Joe'y\",\"id\":\"8402826166442\",\"untranslatedTitle\":\"Vanilla Joe'y\",\"url\":\"\/products\/joey-flavor-vanilla\",\"type\":\"Coffee\"},\"id\":\"48120094654634\",\"image\":{\"src\":\"\/\/www.drinkjoey.com\/cdn\/shop\/files\/Vanilla_Hero.png?v=1775457395\"},\"sku\":\"JVS20R1\",\"title\":\"20 servings\",\"untranslatedTitle\":\"20 servings\"},{\"price\":{\"amount\":25.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Mocha Joe'y\",\"vendor\":\"Joe'y\",\"id\":\"8402830491818\",\"untranslatedTitle\":\"Mocha Joe'y\",\"url\":\"\/products\/joey-flavor-mocha\",\"type\":\"Coffee\"},\"id\":\"48120089673898\",\"image\":{\"src\":\"\/\/www.drinkjoey.com\/cdn\/shop\/files\/Mocha_Joe_y_Hero_1cf51123-4243-49f2-b977-d35266d846d5.png?v=1774228687\"},\"sku\":\"JMS20R1\",\"title\":\"20 servings\",\"untranslatedTitle\":\"20 servings\"},{\"price\":{\"amount\":18.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Froth'y\",\"vendor\":\"Joe'y\",\"id\":\"7064716738730\",\"untranslatedTitle\":\"Froth'y\",\"url\":\"\/products\/frothy\",\"type\":\"Milk Frothers \u0026 Steamers\"},\"id\":\"41764410556586\",\"image\":{\"src\":\"\/\/www.drinkjoey.com\/cdn\/shop\/files\/1O3A2161.jpg?v=1775458123\"},\"sku\":\"FR1\",\"title\":\"Default Title\",\"untranslatedTitle\":\"Default Title\"},{\"price\":{\"amount\":20.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Joe'y Jar\",\"vendor\":\"Joe'y\",\"id\":\"8002412413098\",\"untranslatedTitle\":\"Joe'y Jar\",\"url\":\"\/products\/joey-jar\",\"type\":\"\"},\"id\":\"46151459799210\",\"image\":{\"src\":\"\/\/www.drinkjoey.com\/cdn\/shop\/files\/1O3A2165.jpg?v=1749024977\"},\"sku\":\"JJR1\",\"title\":\"Default Title\",\"untranslatedTitle\":\"Default Title\"},{\"price\":{\"amount\":15.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Joe'y Mug\",\"vendor\":\"Joe'y\",\"id\":\"8005121015978\",\"untranslatedTitle\":\"Joe'y Mug\",\"url\":\"\/products\/fellow-ceramic-mug\",\"type\":\"\"},\"id\":\"46161441063082\",\"image\":{\"src\":\"\/\/www.drinkjoey.com\/cdn\/shop\/files\/1O3A2168.jpg?v=1749024788\"},\"sku\":\"JMR1\",\"title\":\"Default Title\",\"untranslatedTitle\":\"Default Title\"},{\"price\":{\"amount\":15.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Joe'y Tumbler\",\"vendor\":\"Joe'y\",\"id\":\"8248263540906\",\"untranslatedTitle\":\"Joe'y Tumbler\",\"url\":\"\/products\/joey-tumbler\",\"type\":\"\"},\"id\":\"47442121228458\",\"image\":{\"src\":\"\/\/www.drinkjoey.com\/cdn\/shop\/files\/Joe_y_Tumbler_915811e0-e83c-4653-b531-f8df89b8c843.png?v=1762920982\"},\"sku\":\"JTR1\",\"title\":\"Default Title\",\"untranslatedTitle\":\"Default Title\"}]}}]]"});})();</script>
1524<script>
1525  window.ShopifyAnalytics = window.ShopifyAnalytics || {};
1526  window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {};
1527  window.ShopifyAnalytics.meta.currency = 'USD';
1528  var meta = {"products":[{"id":8402841600170,"gid":"gid:\/\/shopify\/Product\/8402841600170","vendor":"Joe'y","type":"Coffee","handle":"joey-flavor-original","variants":[{"id":48120166809770,"price":6000,"name":"Original Joe'y - 60 servings","public_title":"60 servings","sku":"JOS60R1"},{"id":48120166842538,"price":2500,"name":"Original Joe'y - 20 servings","public_title":"20 servings","sku":"JOS20R1"},{"id":48120166875306,"price":999,"name":"Original Joe'y - 8 servings (to-go)","public_title":"8 servings (to-go)","sku":"JOSS8R1"}],"remote":false},{"id":8402826166442,"gid":"gid:\/\/shopify\/Product\/8402826166442","vendor":"Joe'y","type":"Coffee","handle":"joey-flavor-vanilla","variants":[{"id":48120094654634,"price":2500,"name":"Vanilla Joe'y - 20 servings","public_title":"20 servings","sku":"JVS20R1"}],"remote":false},{"id":8402830491818,"gid":"gid:\/\/shopify\/Product\/8402830491818","vendor":"Joe'y","type":"Coffee","handle":"joey-flavor-mocha","variants":[{"id":48120089673898,"price":2500,"name":"Mocha Joe'y - 20 servings","public_title":"20 servings","sku":"JMS20R1"}],"remote":false},{"id":7064716738730,"gid":"gid:\/\/shopify\/Product\/7064716738730","vendor":"Joe'y","type":"Milk Frothers \u0026 Steamers","handle":"frothy","variants":[{"id":41764410556586,"price":1800,"name":"Froth'y","public_title":null,"sku":"FR1"}],"remote":false},{"id":8002412413098,"gid":"gid:\/\/shopify\/Product\/8002412413098","vendor":"Joe'y","type":"","handle":"joey-jar","variants":[{"id":46151459799210,"price":2000,"name":"Joe'y Jar","public_title":null,"sku":"JJR1"}],"remote":false},{"id":8005121015978,"gid":"gid:\/\/shopify\/Product\/8005121015978","vendor":"Joe'y","type":"","handle":"fellow-ceramic-mug","variants":[{"id":46161441063082,"price":1500,"name":"Joe'y Mug","public_title":null,"sku":"JMR1"}],"remote":false},{"id":8248263540906,"gid":"gid:\/\/shopify\/Product\/8248263540906","vendor":"Joe'y","type":"","handle":"joey-tumbler","variants":[{"id":47442121228458,"price":1500,"name":"Joe'y Tumbler","public_title":null,"sku":"JTR1"}],"remote":false}],"page":{"pageType":"collection","resourceType":"collection","resourceId":264022884522,"requestId":"1fdcd342-1dfd-4543-a8d2-b717bd036347-1791144953"}};
1529  for (var attr in meta) {
1530    window.ShopifyAnalytics.meta[attr] = meta[attr];
1531  }
1532</script>
vendor: 1 bytes, line 1532
1532
1533<script class="analytics">
1534  (function () {
1535    var customDocumentWrite = function(content) {
1536      var jquery = null;
1537
1538      if (window.jQuery) {
1539        jquery = window.jQuery;
1540      } else if (window.Checkout && window.Checkout.$) {
1541        jquery = window.Checkout.$;
1542      }
1543
1544      if (jquery) {
1545        jquery('body').append(content);
1546      }
1547    };
1548
1549    var hasLoggedConversion = function(token) {
1550      if (token) {
1551        return document.cookie.indexOf('loggedConversion=' + token) !== -1;
1552      }
1553      return false;
1554    }
1555
1556    var setCookieIfConversion = function(token) {
1557      if (token) {
1558        var twoMonthsFromNow = new Date(Date.now());
1559        twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2);
1560
1561        document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow;
1562      }
1563    }
1564
1565    var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || [];
1566    window.ShopifyAnalytics.lib.trekkie = window.trekkie;
1567    if (trekkie.integrations) {
1568      return;
1569    }
1570    trekkie.methods = [
1571      'identify',
1572      'page',
1573      'ready',
1574      'track',
1575      'trackForm',
1576      'trackLink'
1577    ];
1578    trekkie.factory = function(method) {
1579      return function() {
1580        var args = Array.prototype.slice.call(arguments);
1581        args.unshift(method);
1582        trekkie.push(args);
1583        if (method == 'track' || method == 'page') {
1584          var pageUrl;
1585          try {
1586            pageUrl = window.location.href;
1587          } catch (e) {}
1588          var pageReferrer;
1589          try {
1590            pageReferrer = document.referrer;
1591          } catch (e) {}
1592          try {
1593            if (window.__TREKKIE_SHIM_QUEUE == null) {
1594              window.__TREKKIE_SHIM_QUEUE = [];
1595            }
1596            window.__TREKKIE_SHIM_QUEUE.push({
1597              from: 'trekkie-stub',
1598              method: method,
1599              args: args.slice(1),
1600              pageContext: {
1601                url: pageUrl,
1602                referrer: pageReferrer
1603              }
1604            });
1605          } catch (e) {
1606            // no-op
1607          }
1608        }
1609        return trekkie;
1610      };
1611    };
1612    for (var i = 0; i < trekkie.methods.length; i++) {
1613      var key = trekkie.methods[i];
1614      trekkie[key] = trekkie.factory(key);
1615    }
1616    trekkie.load = function(config) {
1617      trekkie.config = config || {};
1618      trekkie.config.initialDocumentCookie = document.cookie;
1619      var first = document.getElementsByTagName('script')[0];
1620var script = document.createElement('script');
1621script.type = 'text/javascript';
1622script.onerror = function(e) {
1623  var scriptFallback = document.createElement('script');
1624  scriptFallback.type = 'text/javascript';
1625  scriptFallback.onerror = function(error) {
1626          var Monorail = {
1627      produce: function produce(monorailDomain, schemaId, payload) {
1628        var currentMs = new Date().getTime();
1629        var event = {
1630          schema_id: schemaId,
1631          payload: payload,
1632          metadata: {
1633            event_created_at_ms: currentMs,
1634            event_sent_at_ms: currentMs
1635          }
1636        };
1637        return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event));
1638      },
1639      sendRequest: function sendRequest(endpointUrl, payload) {
1640        // Try the sendBeacon API
1641        if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) {
1642          var blobData = new window.Blob([payload], {
1643            type: 'text/plain'
1644          });
1645
1646          if (window.navigator.sendBeacon(endpointUrl, blobData)) {
1647            return true;
1648          } // sendBeacon was not successful
1649
1650        } // XHR beacon
1651
1652        var xhr = new XMLHttpRequest();
1653
1654        try {
1655          xhr.open('POST', endpointUrl);
1656          xhr.setRequestHeader('Content-Type', 'text/plain');
1657          xhr.send(payload);
1658        } catch (e) {
1659          console.log(e);
1660        }
1661
1662        return false;
1663      },
1664      isIos12: function isIos12() {
1665        return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1;
1666      }
1667    };
1668    Monorail.produce('monorail-edge.shopifysvc.com',
1669      'trekkie_storefront_load_errors/1.1',
1670      {shop_id: 55858036906,
1671      theme_id: 187423195306,
1672      app_name: "storefront",
1673      context_url: window.location.href,
1674      source_url: "//www.drinkjoey.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js"});
1675
1676  };
1677  scriptFallback.async = true;
1678  scriptFallback.src = '//www.drinkjoey.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js';
1679  first.parentNode.insertBefore(scriptFallback, first);
1680};
1681script.async = true;
1682script.src = '//www.drinkjoey.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js';
1683first.parentNode.insertBefore(script, first);
1684
1685    };
1686    trekkie.load(
1687      {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":55858036906,"isMerchantRequest":null,"themeId":187423195306,"themeCityHash":"8444241140878522874","contentLanguage":"en","currency":"USD","eventMetadataId":"4d9f3068-959c-46d2-b29c-947f20424513"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain","enabledBetaFlags":["764d78cb","8450a54b","7ee89bf1","4c64608a"]},"Session Attribution":{},"S2S":{"facebookCapiEnabled":true,"source":"trekkie-storefront-renderer","apiClientId":580111}}
1688    );
1689
1690    var loaded = false;
1691    trekkie.ready(function() {
1692      if (loaded) return;
1693      loaded = true;
1694
1695      window.ShopifyAnalytics.lib = window.trekkie;
1696
1697      var originalDocumentWrite = document.write;
1698      document.write = customDocumentWrite;
1699      try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {};
1700      document.write = originalDocumentWrite;
1701
1702      var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/)
1703      var token = match? match[1]: undefined;
1704      if (!hasLoggedConversion(token)) {
1705        setCookieIfConversion(token);
1706        window.ShopifyAnalytics.lib.track("Viewed Product Category",{"currency":"USD","category":"Collection: shop-all","collectionName":"shop-all","collectionId":264022884522,"nonInteraction":true},undefined,undefined,{"shopifyEmitted":true});
1707      }
1708    });
1709
1710    window.ShopifyAnalytics.lib.page(null,{"pageType":"collection","resourceType":"collection","resourceId":264022884522,"requestId":"1fdcd342-1dfd-4543-a8d2-b717bd036347-1791144953","shopifyEmitted":true});
1711
1712    var eventsListenerScript = document.createElement('script');
1713    eventsListenerScript.async = true;
1714    eventsListenerScript.src = "//www.drinkjoey.com/cdn/shopifycloud/storefront/assets/shop_events_listener-4e26a9ce.js";
1715    document.getElementsByTagName('head')[0].appendChild(eventsListenerScript);
1716})();</script>
1716
1717  
1717<script>
1718  if (!window.ga || (window.ga && typeof window.ga !== 'function')) {
1719    window.ga = function ga() {
1720      (window.ga.q = window.ga.q || []).push(arguments);
1721      if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') {
1722        window.Shopify.analytics.publish("ga_stub_called", {}, {sendTo: "google_osp_migration"});
1723      }
1724      console.error("Shopify's Google Analytics stub called with:", Array.from(arguments), "\nSee https://help.shopify.com/manual/promoting-marketing/pixels/pixel-migration#google for more information.");
1725    };
1726    if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') {
1727      window.Shopify.analytics.publish("ga_stub_initialized", {}, {sendTo: "google_osp_migration"});
1728    }
1729  }
1730</script>
vendor: 1 bytes, line 1730
1730
1731<script
1732  defer
1733  src="https://www.drinkjoey.com/cdn/shopifycloud/perf-kit/shopify-perf-kit-3.9.4.min.js"
1734  data-application="storefront-renderer"
1735  data-shop-id="55858036906"
1736  data-render-region="gcp-us-central1"
1737  data-page-type="collection"
1738  data-theme-instance-id="187423195306"
1739  data-theme-name="Prestige"
1740  data-theme-version="10.7.0"
1741  data-monorail-region="shop_domain"
1742  data-resource-timing-sampling-rate="10"
1743  data-shs="true"
1744  data-shs-beacon="true"
1745  data-shs-export-with-fetch="true"
1746  data-shs-logs-sample-rate="1"
1747  data-shs-beacon-endpoint="https://www.drinkjoey.com/api/collect"
1748></script>
1748
1749<meta name="shopify-y" content="8bdbfd9f-a2fa-492c-8c00-9887432067f9" data-expiration="1822702553000"><meta name="shopify-s" content="08b84a00-9517-4cf8-a7c2-a26651998bae" data-expiration="1791146753000"><meta name="new-cookie-storage-activated" content="t">
1750</head>
1751
1752  
1753
1754  <body style='overflow-x: hidden !important' class="features--button-transition features--zoom-image  color-scheme color-scheme--scheme-1 collection-shop-all"><template id="drawer-default-template">
1755  <div part="base">
1756    <div part="overlay"></div>
1757
1758    <div part="content">
1759      <header part="header">
1760        <slot name="header"></slot>
1761
1762        <dialog-close-button style="display: contents">
1763          <button type="button" part="close-button tap-area" aria-label="Close"><svg aria-hidden="true" focusable="false" fill="currentColor" width="24" class="icon icon-close" viewBox="0 0 100 100"> 
1764      <path fill="currentColor" d="M50,5.1C25.2,5.1,5.1,25.2,5.1,50S25.2,95,50,95S95,74.9,95,50S74.9,5.1,50,5.1z M50,88.5c-21.3,0-38.5-17.2-38.5-38.5 S28.8,11.5,50,11.5S88.5,28.8,88.5,50S71.3,88.5,50,88.5z M61.4,34.2L50,45.5L38.7,34.2c-1.3-1.2-3.3-1.2-4.5,0.1 c-1.2,1.2-1.2,3.2,0,4.5L45.5,50L34.2,61.4c-1.2,1.3-1.2,3.3,0.1,4.5c1.2,1.2,3.2,1.2,4.5,0L50,54.6l11.3,11.3 c1.3,1.2,3.3,1.2,4.5-0.1c1.2-1.2,1.2-3.2,0-4.5L54.6,50l11.3-11.3c1.2-1.3,1.2-3.3-0.1-4.5C64.6,32.9,62.6,32.9,61.4,34.2z"/> 
1765    </svg></button>
1766        </dialog-close-button>
1767      </header>
1768
1769      <div part="body">
1770        <slot></slot>
1771      </div>
1772
1773      <footer part="footer">
1774        <slot name="footer"></slot>
1775      </footer>
1776    </div>
1777  </div>
1778</template><template id="modal-default-template">
1779  <div part="base">
1780    <div part="overlay"></div>
1781
1782    <div part="content">
1783      <header part="header">
1784        <slot name="header"></slot>
1785
1786        <dialog-close-button style="display: contents">
1787          <button type="button" part="close-button tap-area" aria-label="Close"><svg aria-hidden="true" focusable="false" fill="currentColor" width="24" class="icon icon-close" viewBox="0 0 100 100"> 
1788      <path fill="currentColor" d="M50,5.1C25.2,5.1,5.1,25.2,5.1,50S25.2,95,50,95S95,74.9,95,50S74.9,5.1,50,5.1z M50,88.5c-21.3,0-38.5-17.2-38.5-38.5 S28.8,11.5,50,11.5S88.5,28.8,88.5,50S71.3,88.5,50,88.5z M61.4,34.2L50,45.5L38.7,34.2c-1.3-1.2-3.3-1.2-4.5,0.1 c-1.2,1.2-1.2,3.2,0,4.5L45.5,50L34.2,61.4c-1.2,1.3-1.2,3.3,0.1,4.5c1.2,1.2,3.2,1.2,4.5,0L50,54.6l11.3,11.3 c1.3,1.2,3.3,1.2,4.5-0.1c1.2-1.2,1.2-3.2,0-4.5L54.6,50l11.3-11.3c1.2-1.3,1.2-3.3-0.1-4.5C64.6,32.9,62.6,32.9,61.4,34.2z"/> 
1789    </svg></button>
1790        </dialog-close-button>
1791      </header>
1792
1793      <div part="body">
1794        <slot></slot>
1795      </div>
1796    </div>
1797  </div>
1798</template><template id="popover-default-template">
1799  <div part="base">
1800    <div part="overlay"></div>
1801
1802    <div part="content">
1803      <header part="header">
1804        <slot name="header"></slot>
1805
1806        <dialog-close-button style="display: contents">
1807          <button type="button" part="close-button tap-area" aria-label="Close"><svg aria-hidden="true" focusable="false" fill="currentColor" width="24" class="icon icon-close" viewBox="0 0 100 100"> 
1808      <path fill="currentColor" d="M50,5.1C25.2,5.1,5.1,25.2,5.1,50S25.2,95,50,95S95,74.9,95,50S74.9,5.1,50,5.1z M50,88.5c-21.3,0-38.5-17.2-38.5-38.5 S28.8,11.5,50,11.5S88.5,28.8,88.5,50S71.3,88.5,50,88.5z M61.4,34.2L50,45.5L38.7,34.2c-1.3-1.2-3.3-1.2-4.5,0.1 c-1.2,1.2-1.2,3.2,0,4.5L45.5,50L34.2,61.4c-1.2,1.3-1.2,3.3,0.1,4.5c1.2,1.2,3.2,1.2,4.5,0L50,54.6l11.3,11.3 c1.3,1.2,3.3,1.2,4.5-0.1c1.2-1.2,1.2-3.2,0-4.5L54.6,50l11.3-11.3c1.2-1.3,1.2-3.3-0.1-4.5C64.6,32.9,62.6,32.9,61.4,34.2z"/> 
1809    </svg></button>
1810        </dialog-close-button>
1811      </header>
1812
1813      <div part="body">
1814        <slot></slot>
1815      </div>
1816    </div>
1817  </div>
1818</template><template id="header-search-default-template">
1819  <div part="base">
1820    <div part="overlay"></div>
1821
1822    <div part="content">
1823      <slot></slot>
1824    </div>
1825  </div>
1826</template><template id="video-media-default-template">
1827  <slot></slot>
1828
1829  <svg part="play-button" fill="none" width="48" height="48" viewBox="0 0 48 48">
1830    <path fill-rule="evenodd" clip-rule="evenodd" d="M48 24c0 13.255-10.745 24-24 24S0 37.255 0 24 10.745 0 24 0s24 10.745 24 24Zm-18 0-9-6.6v13.2l9-6.6Z" fill="var(--play-button-background, #efefef)"/>
1831  </svg>
1832</template>
1833<loading-bar class="loading-bar" aria-hidden="true"></loading-bar>
1834    <a href="#main" allow-hash-change class="skip-to-content sr-only">Skip to content</a>
1835
1836    <span id="header-scroll-tracker" style="position: absolute; width: 1px; height: 1px; top: var(--header-scroll-tracker-offset, 10px); left: 0;"></span><!-- BEGIN sections: header-group -->
1837<aside id="shopify-section-sections--27797482537130__announcement-bar" class="shopify-section shopify-section-group-header-group shopify-section--announcement-bar"><style>
1838      :root {
1839        --announcement-bar-is-sticky: 1;}#shopify-section-sections--27797482537130__announcement-bar {
1840          position: sticky;
1841          top: 0;
1842          z-index: 5;
1843        }
1844
1845        .shopify-section--header ~ #shopify-section-sections--27797482537130__announcement-bar {
1846          top: calc(var(--header-is-sticky, 0) * var(--header-height, 0px));
1847          z-index: 4; /* We have to lower the z-index in case the announcement bar is displayed after the header */
1848        }#shopify-section-sections--27797482537130__announcement-bar {
1849        --announcement-bar-font-size: 0.625rem;
1850      }
1851
1852      @media screen and (min-width: 999px) {
1853        #shopify-section-sections--27797482537130__announcement-bar {
1854          --announcement-bar-font-size: 0.6875rem;
1855        }
1856      }
1857
1858      .announcement-bar {
1859        background: #5c0c0d !important;
1860        padding-top: 8px;
1861        padding-bottom: 6px;
1862        cursor: pointer;
1863      }
1864
1865      .announcement-bar .prose {
1866        font-size: 14px !important;
1867        font-weight: 700 !important;
1868        letter-spacing: 0.4px !important;
1869        font-family: 'mohr-bold', 'MohrSemibold', sans-serif !important;
1870        color: #ffe8af !important;
1871        user-select: none;
1872      }
1873
1874      .announcement-bar__carousel {
1875        margin-left: 20px; /* Otherwise doesn't line up with logo */
1876      }
1877
1878      .announcement-bar .klaviyo-form-trigger {
1879        cursor: pointer;
1880      }
1881
1882      .announcement-bar:hover .prose,
1883      .announcement-bar .klaviyo-form-trigger:hover {
1884        color: #ffd459 !important;
1885      }
1886
1887      /* the carousel arrows keep their own cursor: they page the messages,
1888         they do not open the popup */
1889      .announcement-bar carousel-prev-button button,
1890      .announcement-bar carousel-next-button button {
1891        cursor: default;
1892      }
1893    </style>
1894
1895    <height-observer variable="announcement-bar"><div
1896  class="announcement-bar color-scheme color-scheme--scheme-3"data-alia-campaign-id="14549"
1897    role="button"
1898    tabindex="0"
1899    aria-label="Open the 20% off first order offer">
1899<announcement-bar-carousel allow-swipe autoplay="5" id="carousel-sections--27797482537130__announcement-bar" class="announcement-bar__carousel"><p class="klaviyo-form-trigger prose heading is-selected" >BETTER MORNINGS AHEAD ☕ 20% OFF FIRST PURCHASE!</p></announcement-bar-carousel></div>
1900    </height-observer>
1901
1902    
1902<script>
1903document.addEventListener('DOMContentLoaded', function () {
1904  // Keep the height var up to date
1905  var sect = document.getElementById('shopify-section-sections--27797482537130__announcement-bar');
1906  if (sect) {
1907    document.documentElement.style.setProperty('--announcement-bar-height', `${sect.clientHeight.toFixed(2)}px`);
1908  }
1909
1910  /* --------------------------------------------------------------------
1911     Open the Alia popup from the announcement bar.
1912
1913     Alia's documented SDK call is:
1914       window.alia.push({ type: 'open', campaignID: <number>, ignoreTargeting: true })
1915
1916     Two things matter and both were wrong before:
1917       1. campaignID must be a NUMBER. Passing the string '14549' does nothing.
1918       2. ignoreTargeting must be true, otherwise Alia refuses to reopen the
1919          popup for anyone who has already dismissed it once, which is most
1920          returning visitors and is exactly the case where a click is deliberate.
1921     Verified against campaign 14549 on the live storefront, 4 September 2026.
1922     -------------------------------------------------------------------- */
1923  var ALIA_FALLBACK_CAMPAIGN = 14549;
1924
1925  function openAliaPopup(sourceEl) {
1926    var host = sourceEl && sourceEl.closest ? sourceEl.closest('[data-alia-campaign-id]') : null;
1927    var raw = host ? host.getAttribute('data-alia-campaign-id') : null;
1928    var campaignID = parseInt(raw, 10);
1929    if (!campaignID) campaignID = ALIA_FALLBACK_CAMPAIGN;
1930
1931    function send() {
1932      if (window.alia && typeof window.alia.push === 'function') {
1933        window.alia.push({ type: 'open', campaignID: campaignID, ignoreTargeting: true });
1934        return true;
1935      }
1936      return false;
1937    }
1938
1939    if (send()) return;
1940
1941    // Alia's script may not have booted yet on a fast click. Poll briefly.
1942    var tries = 0;
1943    var timer = setInterval(function () {
1944      if (send() || ++tries > 20) clearInterval(timer);
1945    }, 250);
1946  }
1947
1948  // The whole bar is the target, not just the message text, so clicking the
1949  // padding works too. The carousel arrows are excluded so they still page.
1950  function opener(target) {
1951    if (!target || !target.closest) return null;
1952    if (target.closest('a, button, carousel-prev-button, carousel-next-button')) return null;
1953    return target.closest('.announcement-bar');
1954  }
1955
1956  document.addEventListener('click', function (e) {
1957    var el = opener(e.target);
1958    if (!el) return;
1959    e.preventDefault();
1960    openAliaPopup(el);
1961  }, true);
1962
1963  document.addEventListener('keydown', function (e) {
1964    if (e.key !== 'Enter' && e.key !== ' ') return;
1965    var el = opener(e.target);
1966    if (!el) return;
1967    e.preventDefault();
1968    openAliaPopup(el);
1969  }, true);
1970});
1971</script>
1971
1972</aside><div id="shopify-section-sections--27797482537130__header" class="shopify-section shopify-section-group-header-group"><div id="header-app" style="overflow: hidden"></div>
1973
1974
1975<script type="module" src="//www.drinkjoey.com/cdn/shop/t/105/assets/header.js?v=31227410264906599751790653094"></script>
1975</div><section id="shopify-section-sections--27797482537130__custom_liquid_wKnkXA" class="shopify-section shopify-section-group-header-group shopify-section--custom-liquid"><div class=" color-scheme color-scheme--scheme-1 color-scheme--bg-609ecfcfee2f667ac6c12366fc6ece56 ">
1976    <div class="">
1977      <div class="text-center">
1978
1979<style>
1980  #sachet-qr-banner {
1981    display: none;
1982    align-items: center;
1983    justify-content: center;
1984    gap: 8px;
1985    background: #F5C544;
1986    color: #5C1A1B;
1987    padding: 10px 16px;
1988    box-sizing: border-box;
1989    position: relative;
1990    left: 50%;
1991    margin-left: -50vw;
1992    width: 100vw;
1993    font-weight: 700;
1994    font-size: 15px;
1995    line-height: 1.3;
1996    text-align: center;
1997  }
1998  #sachet-qr-banner.is-visible {
1999    display: flex;
2000  }
2001  #sachet-qr-banner .sachet-emoji {
2002    font-size: 18px;
2003    flex: none;
2004  }
2005  @media screen and (max-width: 749px) {
2006    #sachet-qr-banner {
2007      font-size: 13px;
2008      padding: 8px 12px;
2009      gap: 6px;
2010    }
2011    #sachet-qr-banner .sachet-emoji {
2012      font-size: 15px;
2013    }
2014  }
2015</style>
2016
2017<div id="sachet-qr-banner">
2018  <span class="sachet-emoji">🎉</span>
2019  <span>You're getting an extra <strong>25% off</strong> — auto-applied at checkout!</span>
2020</div>
2021
2022<script>
2023(function () {
2024  function qrVisitor() {
2025    // 1. Arrived directly from the QR redirect URL
2026    var params = new URLSearchParams(window.location.search);
2027    if (params.get('utm_campaign') === 'sachet') return true;
2028
2029    // 2. Shopify discount cookie set by the /discount/SACHET25 link
2030    var m = document.cookie.match(/(?:^|;\s*)discount_code=([^;]+)/);
2031    if (m && decodeURIComponent(m[1]).toUpperCase().indexOf('SACHET25') !== -1) return true;
2032
2033    // 3. Seen earlier this session (survives navigating away and back)
2034    if (sessionStorage.getItem('sachetQR') === '1') return true;
2035
2036    return false;
2037  }
2038
2039  if (qrVisitor()) {
2040    try { sessionStorage.setItem('sachetQR', '1'); } catch (e) {}
2041    var el = document.getElementById('sachet-qr-banner');
2042    if (el) el.classList.add('is-visible');
2043
2044    // Suppress the Alia signup popup for QR visitors (they already have a better offer).
2045    // Closes immediately and re-closes any time Alia tries to show a popup this session.
2046    var closeAlia = function () {
2047      window.alia = window.alia || [];
2048      window.alia.push({ type: 'close' });
2049    };
2050    closeAlia();
2051    document.addEventListener('alia:campaignMatched', closeAlia);
2052    document.addEventListener('alia:popupView', closeAlia);
2053
2054    // Confetti on first landing only (once per session, not on every page).
2055    if (!sessionStorage.getItem('sachetConfetti')) {
2056      try { sessionStorage.setItem('sachetConfetti', '1'); } catch (e) {}
2057      var s = document.createElement('script');
2058      s.src = 'https://cdn.jsdelivr.net/npm/[email protected]/dist/confetti.browser.min.js';
2059      s.onload = function () {
2060        var colors = ['#F5C544', '#5C1A1B', '#FFFFFF', '#E8A33D'];
2061        confetti({ particleCount: 90, spread: 70, origin: { y: 0.25 }, colors: colors, disableForReducedMotion: true });
2062        setTimeout(function () {
2063          confetti({ particleCount: 50, angle: 60, spread: 55, origin: { x: 0, y: 0.4 }, colors: colors, disableForReducedMotion: true });
2064          confetti({ particleCount: 50, angle: 120, spread: 55, origin: { x: 1, y: 0.4 }, colors: colors, disableForReducedMotion: true });
2065        }, 250);
2066      };
2067      document.head.appendChild(s);
2068    }
2069  }
2070})();
2071</script>
2071</div>
2072    </div>
2073  </div>
2074</section>
2075<!-- END sections: header-group --><!-- BEGIN sections: overlay-group -->
2076<section id="shopify-section-sections--27797484109994__cart-drawer" class="shopify-section shopify-section-group-overlay-group shopify-section--cart-drawer"><cart-drawer style="display: none" id="cart-drawer" class="cart-drawer drawer drawer--center-body color-scheme color-scheme--scheme-1" initial-focus="false" handle-editor-events>
2077  <p class="h4 cart-drawer-header" slot="header">Cart</p><p class="h5 text-center">Your cart is empty</p></cart-drawer>
2078
2079
2080
2081
2082</section>
2083<!-- END sections: overlay-group --><main id="main" class="anchor">
2084      <div id="shopify-section-template--27797488009386__joey_seo_h1" class="shopify-section"><h1 class="joey-seo-h1" style="position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;">Shop all Joe&#39;y</h1>
2085
2086</div><section id="shopify-section-template--27797488009386__main" class="shopify-section shopify-section-shop-all"><section class="shopall">
2087  <div class="sa-wrap">
2088
2089    <div class="sa-intro">
2090      <h2 class="sa-h1">Shop All</h2></div>
2091
2092    <div class="sa-kits"><div class="sa-trial">
2093      <a class="sa-trial-media" href="/products/joey-tasting-kit">
2094        <img class="sa-trial-img" src="https://cdn.shopify.com/s/files/1/0558/5803/6906/files/Tasting_Kit_Image_B.png?v=1782923709&width=680" loading="lazy" alt="Joe'y Tasting Kit">
2095      </a>
2096      <div class="sa-trial-body">
2097        <h3 class="sa-trial-h">Try all three flavors</h3>
2098        <div class="sa-chips">
2099          <span class="sa-chip"><i style="background:#E4A11B"></i>Original</span>
2100          <span class="sa-chip"><i style="background:#5AA9E6"></i>Vanilla</span>
2101          <span class="sa-chip"><i style="background:#7A4A2B"></i>Mocha</span>
2102        </div>
2103        <p>One kit, all three blends. The easiest way to find your favorite before you commit to a bag.</p>
2104        <div class="sa-buyrow">
2105          <span class="sa-price">$55.00 <s class="sa-was">$72.00</s></span>
2106          <a class="sa-pill" href="/products/joey-tasting-kit">Shop now</a>
2107        </div>
2108      </div>
2109    </div><div class="sa-trial sa-starter"><div class="sa-trial-media"><img class="sa-trial-img" src="//www.drinkjoey.com/cdn/shop/files/Starter_Kit_Hero.png?v=1774228856&width=680" loading="lazy" alt="Joe'y Starter Kit (60 servings)"></div><div class="sa-trial-body">
2110    <h3 class="sa-trial-h">Try the<br class="sa-br"> starter kit</h3>
2111    <div class="sa-chips">
2112      <span class="sa-chip"><i style="background:#E4A11B"></i>60 cups</span>
2113      <span class="sa-chip"><i style="background:#A83F21"></i>Frother</span>
2114      <span class="sa-chip"><i style="background:#C8651B"></i>Scoop</span>
2115      <span class="sa-chip"><i style="background:#5C0C0D"></i>Recipe book</span>
2116    </div>
2117    <p>Everything you need to start your Joe'y ritual, in one gift box.</p>
2118    <div class="sa-buyrow"><span class="sa-oos">Out of stock</span></div>
2119  </div>
2120</div><style>
2121  .shopall .sa-trial.sa-starter{background:#F9D9B4;}
2122  .shopall .sa-starter .sa-br{display:none;}
2123  .shopall .sa-wrap .sa-kits{grid-template-columns:minmax(0,1fr);}
2124  .shopall .sa-wrap .sa-kits .sa-trial{min-width:0;}
2125  @media (min-width:621px){
2126    .shopall .sa-starter .sa-chips{flex-wrap:nowrap;gap:4px;}
2127    .shopall .sa-starter .sa-chip{white-space:nowrap;font-size:10px;padding:5px 7px;gap:5px;letter-spacing:.2px;}
2128    .shopall .sa-starter .sa-chip i{width:7px;height:7px;}
2129  }
2130  @media (min-width:1024px){
2131    .shopall .sa-wrap .sa-kits{grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
2132    .shopall .sa-kits .sa-trial{grid-template-columns:200px minmax(0,1fr);}
2133    .shopall .sa-starter .sa-br{display:inline;}
2134  }
2135  @media (max-width:620px){
2136    .shopall .sa-wrap .sa-kits .sa-trial{grid-template-columns:112px minmax(0,1fr);}
2137    .shopall .sa-wrap .sa-kits .sa-trial-media{padding:14px 6px 14px 14px;}
2138    .shopall .sa-wrap .sa-kits .sa-buyrow{flex-wrap:wrap;gap:10px 14px;}
2139    .shopall .sa-wrap .sa-kits .sa-price{font-size:28px;}
2140    .shopall .sa-wrap .sa-kits .sa-was{font-size:19px;}
2141  }
2142</style>
2143</div>
2144
2145    <div class="sa-sechead"><h3>Pick your Joe'y</h3><span class="sa-rule"></span></div><div class="sa-flavor">
2146        <div class="sa-flabel"><h4 style="color:#A83F21">Original</h4><span class="sa-desc">Perfectly roasted · Deliciously smooth</span></div>
2147        <div class="sa-grid sa-cols3"><div class="sa-card sa-soon">
2148                <div class="sa-media">
2149                  <img class="sa-bag sa-ghost" src="https://cdn.shopify.com/s/files/1/0558/5803/6906/files/Original_20.png?v=1775457279&width=640" loading="lazy" alt="Original Joe'y, 20 cups (Out of stock)">
2150                  <span class="sa-veil"><span class="sa-oos">Out of stock</span></span>
2151                </div>
2152                <div class="sa-info">
2153                  <span class="sa-name">Original Joe'y</span>
2154                  <span class="sa-sub">20 cups</span>
2155                  <span class="sa-cs">Out of stock</span>
2156                </div>
2157              </div><div class="sa-card sa-soon">
2158                <div class="sa-media">
2159                  <img class="sa-bag sa-ghost" src="https://cdn.shopify.com/s/files/1/0558/5803/6906/files/joey-60-cups-option.png?v=1745537502&width=640" loading="lazy" alt="Original Joe'y, 60 cups (Out of stock)">
2160                  <span class="sa-veil"><span class="sa-oos">Out of stock</span></span>
2161                </div>
2162                <div class="sa-info">
2163                  <span class="sa-name">Original Joe'y</span>
2164                  <span class="sa-sub">60 cups</span>
2165                  <span class="sa-cs">Out of stock</span>
2166                </div>
2167              </div><a class="sa-card" href="/products/joey?flavor=Original&size=8">
2168                <div class="sa-media">
2169                  <img class="sa-bag" src="https://cdn.shopify.com/s/files/1/0558/5803/6906/files/Joe_yTo-go_yBoxRender.png?v=1769694223&width=640" loading="lazy" alt="Original Joe'y, 8 cups · to-go">
2170                </div>
2171                <div class="sa-info">
2172                  <span class="sa-name">Original Joe'y</span>
2173                  <span class="sa-sub" style="background:#A83F21;color:#FBE7D8">8 cups · to-go</span>
2174                  <span class="sa-pr">$7.99</span>
2175                  <span class="sa-ps">$1.00 / cup</span></div>
2176              </a></div>
2177      </div><div class="sa-flavor">
2178        <div class="sa-flabel"><h4 style="color:#3F3759">Vanilla</h4><span class="sa-desc">Toasty · Creamy · Lightly sweet</span></div>
2179        <div class="sa-grid sa-cols3"><a class="sa-card" href="/products/joey?flavor=Vanilla&size=20">
2180                <div class="sa-media">
2181                  <img class="sa-bag" src="https://cdn.shopify.com/s/files/1/0558/5803/6906/files/Vanilla_20.png?v=1775457395&width=640" loading="lazy" alt="Vanilla Joe'y, 20 cups">
2182                </div>
2183                <div class="sa-info">
2184                  <span class="sa-name">Vanilla Joe'y</span>
2185                  <span class="sa-sub" style="background:#3F3759;color:#E9E4F2">20 cups</span>
2186                  <span class="sa-pr">$20.00</span>
2187                  <span class="sa-ps">$1.00 / cup</span></div>
2188              </a><div class="sa-card sa-soon">
2189                <div class="sa-media">
2190                  <img class="sa-bag sa-ghost" src="https://cdn.shopify.com/s/files/1/0558/5803/6906/files/joey-60-cups-option.png?v=1745537502&width=640" loading="lazy" alt="Vanilla Joe'y, 60 cups (Coming soon)">
2191                  <span class="sa-veil"><span class="sa-oos">Coming soon</span></span>
2192                </div>
2193                <div class="sa-info">
2194                  <span class="sa-name">Vanilla Joe'y</span>
2195                  <span class="sa-sub">60 cups</span>
2196                  <span class="sa-cs">Coming soon</span>
2197                </div>
2198              </div><div class="sa-card sa-soon">
2199                <div class="sa-media">
2200                  <img class="sa-bag sa-ghost" src="https://cdn.shopify.com/s/files/1/0558/5803/6906/files/Joe_yTo-go_yBoxRender.png?v=1769694223&width=640" loading="lazy" alt="Vanilla Joe'y, 8 cups · to-go (Coming soon)">
2201                  <span class="sa-veil"><span class="sa-oos">Coming soon</span></span>
2202                </div>
2203                <div class="sa-info">
2204                  <span class="sa-name">Vanilla Joe'y</span>
2205                  <span class="sa-sub">8 cups · to-go</span>
2206                  <span class="sa-cs">Coming soon</span>
2207                </div>
2208              </div></div>
2209      </div><div class="sa-flavor">
2210        <div class="sa-flabel"><h4 style="color:#3E2024">Mocha</h4><span class="sa-desc">Bold · Deep · Dark chocolatey</span></div>
2211        <div class="sa-grid sa-cols3"><a class="sa-card" href="/products/joey?flavor=Mocha&size=20">
2212                <div class="sa-media">
2213                  <img class="sa-bag" src="https://cdn.shopify.com/s/files/1/0558/5803/6906/files/M
2213ocha_20.png?v=1775457279&width=640" loading="lazy" alt="Mocha Joe'y, 20 cups">
2214                </div>
2215                <div class="sa-info">
2216                  <span class="sa-name">Mocha Joe'y</span>
2217                  <span class="sa-sub" style="background:#3E2024;color:#F0E3DF">20 cups</span>
2218                  <span class="sa-pr">$20.00</span>
2219                  <span class="sa-ps">$1.00 / cup</span></div>
2220              </a><div class="sa-card sa-soon">
2221                <div class="sa-media">
2222                  <img class="sa-bag sa-ghost" src="https://cdn.shopify.com/s/files/1/0558/5803/6906/files/joey-60-cups-option.png?v=1745537502&width=640" loading="lazy" alt="Mocha Joe'y, 60 cups (Coming soon)">
2223                  <span class="sa-veil"><span class="sa-oos">Coming soon</span></span>
2224                </div>
2225                <div class="sa-info">
2226                  <span class="sa-name">Mocha Joe'y</span>
2227                  <span class="sa-sub">60 cups</span>
2228                  <span class="sa-cs">Coming soon</span>
2229                </div>
2230              </div><div class="sa-card sa-soon">
2231                <div class="sa-media">
2232                  <img class="sa-bag sa-ghost" src="https://cdn.shopify.com/s/files/1/0558/5803/6906/files/Joe_yTo-go_yBoxRender.png?v=1769694223&width=640" loading="lazy" alt="Mocha Joe'y, 8 cups · to-go (Coming soon)">
2233                  <span class="sa-veil"><span class="sa-oos">Coming soon</span></span>
2234                </div>
2235                <div class="sa-info">
2236                  <span class="sa-name">Mocha Joe'y</span>
2237                  <span class="sa-sub">8 cups · to-go</span>
2238                  <span class="sa-cs">Coming soon</span>
2239                </div>
2240              </div></div>
2241      </div><div class="sa-sechead"><h3>Accessories</h3><span class="sa-rule"></span></div>
2242    <div class="sa-grid sa-cols4"><a class="sa-card sa-acc" href="/products/frothy">
2243            <div class="sa-media sa-media-acc"><span class="sa-save">Save $7.00</span><img class="sa-accimg" src="//www.drinkjoey.com/cdn/shop/files/1O3A2161.jpg?v=1775458123&width=600" loading="lazy" alt="Froth'y">
2244            </div>
2245            <div class="sa-info">
2246              <span class="sa-name">Froth'y</span>
2247              <span class="sa-sub">Rechargeable frother</span>
2248              <span class="sa-pr">$18.00<span class="sa-cmp">$25.00</span></span>
2249            </div>
2250          </a><a class="sa-card sa-acc" href="/products/joey-jar">
2251            <div class="sa-media sa-media-acc"><span class="sa-save">Save $5.00</span><img class="sa-accimg" src="//www.drinkjoey.com/cdn/shop/files/1O3A2165.jpg?v=1749024977&width=600" loading="lazy" alt="Joe'y Jar">
2252            </div>
2253            <div class="sa-info">
2254              <span class="sa-name">Joe'y Jar</span>
2255              <span class="sa-sub">Ceramic jar + spoon</span>
2256              <span class="sa-pr">$20.00<span class="sa-cmp">$25.00</span></span>
2257            </div>
2258          </a><a class="sa-card sa-acc" href="/products/fellow-ceramic-mug">
2259            <div class="sa-media sa-media-acc"><span class="sa-save">Save $5.00</span><img class="sa-accimg" src="//www.drinkjoey.com/cdn/shop/files/1O3A2168.jpg?v=1749024788&width=600" loading="lazy" alt="Joe'y Mug">
2260            </div>
2261            <div class="sa-info">
2262              <span class="sa-name">Joe'y Mug</span>
2263              <span class="sa-sub">Ceramic embossed mug</span>
2264              <span class="sa-pr">$15.00<span class="sa-cmp">$20.00</span></span>
2265            </div>
2266          </a><a class="sa-card sa-acc" href="/products/joey-tumbler">
2267            <div class="sa-media sa-media-acc"><span class="sa-save">Save $5.00</span><img class="sa-accimg" src="//www.drinkjoey.com/cdn/shop/files/Joe_y_Tumbler_915811e0-e83c-4653-b531-f8df89b8c843.png?v=1762920982&width=600" loading="lazy" alt="Joe'y Iced Tumbler">
2268            </div>
2269            <div class="sa-info">
2270              <span class="sa-name">Joe'y Iced Tumbler</span>
2271              <span class="sa-sub">Insulated glass + straw</span>
2272              <span class="sa-pr">$15.00<span class="sa-cmp">$20.00</span></span>
2273            </div>
2274          </a></div>
2275
2276  </div>
2277</section><style data-shopify>.shopall{
2278    --sa-cream:#F6EFD8; --sa-tile:#FBF4E1;
2279    --sa-ink:#1C1C1C; --sa-sub:rgba(28,28,28,.6);
2280    --sa-rustp:#AB3700; --sa-maroon:#5C0C0D;
2281    --sa-gold:#FFD459; --sa-goldd:#EBBB44; --sa-line:#E6D9B8; --sa-grey:#8C846B;
2282    background:var(--sa-cream); display:block; padding:34px 0 46px;
2283    font-family:'Nunito',sans-serif; color:var(--sa-ink);
2284  }
2285  .shopall *{box-sizing:border-box;}
2286  .shopall .sa-wrap{max-width:1200px;margin:0 auto;padding:0 26px;}
2287  .shopall a{text-decoration:none;color:inherit;}
2288  .shopall img{display:block;}
2289
2290  .shopall .sa-intro{text-align:center;padding:12px 10px 2px;}
2291  .shopall .sa-h1{font-family:'MohrBlack',sans-serif;font-weight:normal;font-size:clamp(34px,5vw,56px);color:#3A2417;text-transform:uppercase;letter-spacing:1px;line-height:1;margin:0;}
2292  .shopall .sa-intro p{margin:10px 0 0;color:var(--sa-sub);font-size:16px;font-weight:700;}
2293
2294  .shopall .sa-sechead{display:flex;align-items:center;gap:16px;margin:40px 2px 20px;}
2295  .shopall .sa-sechead h3{font-family:'MohrBlack',sans-serif;font-weight:normal;font-size:clamp(20px,3vw,28px);color:var(--sa-maroon);text-transform:uppercase;letter-spacing:.6px;margin:0;}
2296  .shopall .sa-rule{flex:1;height:2px;background:var(--sa-line);}
2297
2298  /* kits: stacked on tablet/phone, side by side on desktop */
2299  .shopall .sa-kits{display:grid;grid-template-columns:1fr;gap:18px;margin-top:10px;}
2300  .shopall .sa-kits .sa-trial{margin-top:0;}
2301  @media (min-width:1024px){
2302    .shopall .sa-kits{grid-template-columns:1fr 1fr;}
2303    .shopall .sa-kits .sa-trial{grid-template-columns:200px 1fr;}
2304    .shopall .sa-kits .sa-trial-body{padding:22px 24px 22px 4px;}
2305    .shopall .sa-kits .sa-trial-h{font-size:30px;}
2306    .shopall .sa-kits .sa-buyrow{gap:16px;flex-wrap:wrap;}
2307  }
2308
2309  /* trial */
2310  .shopall .sa-trial{position:relative;display:grid;grid-template-columns:.62fr 1.38fr;align-items:center;gap:8px;background:#FBE7AE;border-radius:20px;overflow:hidden;margin-top:10px;}
2311  .shopall .sa-trial-media{position:relative;display:flex;align-items:center;justify-content:center;padding:14px;}
2312  .shopall .sa-trial-img{width:100%;max-width:230px;aspect-ratio:1/1;object-fit:cover;border-radius:14px;transition:transform .35s cubic-bezier(.2,.7,.2,1);}
2313  .shopall .sa-trial-media:hover .sa-trial-img{transform:scale(1.03);}
2314  .shopall .sa-trial-body{padding:22px 40px 22px 4px;}
2315  .shopall .sa-trial-h{font-family:'MohrBlack',sans-serif;font-weight:normal;font-size:clamp(24px,3.2vw,38px);color:#3A2417;text-transform:uppercase;line-height:.98;margin:0;}
2316  .shopall .sa-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;}
2317  .shopall .sa-chip{display:inline-flex;align-items:center;gap:7px;background:rgba(255,255,255,.7);font-family:'MohrSemibold',sans-serif;text-transform:uppercase;letter-spacing:.4px;font-size:11px;color:#4c3a2c;padding:5px 11px;border-radius:999px;}
2318  .shopall .sa-chip i{width:9px;height:9px;border-radius:50%;display:inline-block;}
2319  .shopall .sa-trial-body p{margin:12px 0 0;font-size:14px;color:#5b4326;font-weight:700;max-width:44ch;line-height:1.45;}
2320  .shopall .sa-buyrow{display:flex;align-items:center;gap:24px;margin-top:16px;}
2321  .shopall .sa-price{font-family:'MohrBlack','Nunito',sans-serif;font-weight:normal;font-size:32px;color:var(--sa-rustp);line-height:1;}
2322  .shopall .sa-was{font-family:'MohrBlack','Nunito',sans-serif;color:#C7A98C;text-decoration:line-through;font-size:23px;margin-left:9px;}
2323  .shopall .sa-pill{display:inline-flex;align-items:center;background:var(--sa-gold);color:var(--sa-maroon);font-family:'MohrSemibold',sans-serif;text-transform:uppercase;letter-spacing:.6px;font-size:13px;padding:12px 28px;border-radius:999px;transition:transform .15s ease,background .15s ease;}
2324  .shopall .sa-pill:hover{background:var(--sa-goldd);transform:translateY(-1px);}
2325
2326  /* flavor group */
2327  .shopall .sa-flabel{display:flex;align-items:center;gap:12px;margin:30px 2px 14px;flex-wrap:wrap;}
2328  .shopall .sa-flabel h4{font-family:'MohrBlack',sans-serif;font-weight:normal;font-size:26px;text-transform:uppercase;letter-spacing:.5px;margin:0;line-height:1;}
2329  .shopall .sa-desc{font-family:'MohrSemibold',sans-serif;color:var(--sa-sub);text-transform:uppercase;letter-spacing:.4px;font-size:13px;}
2330
2331  .shopall .sa-grid{display:grid;gap:22px;}
2332  .shopall .sa-cols3{grid-template-columns:repeat(3,1fr);}
2333  .shopall .sa-cols4{grid-template-columns:repeat(4,1fr);}
2334
2335  /* product card (floating packshot) */
2336  .shopall .sa-card{display:flex;flex-direction:column;background:transparent;padding-top:6px;}
2337  .shopall .sa-media{position:relative;aspect-ratio:1/1;}
2338  .shopall .sa-bag{position:absolute;inset:18px;width:calc(100% - 36px);height:calc(100% - 36px);object-fit:contain;filter:drop-shadow(0 20px 16px rgba(60,32,10,.22));transition:transform .3s cubic-bezier(.2,.7,.2,1);}
2339  .shopall a.sa-card:hover .sa-bag{transform:scale(1.06);}
2340  .shopall .sa-badge{position:absolute;top:10px;left:50%;transform:translateX(-50%);z-index:2;background:var(--sa-maroon);color:#fff;font-family:'MohrSemibold',sans-serif;text-transform:uppercase;letter-spacing:.5px;font-size:11px;padding:6px 12px;border-radius:999px;white-space:nowrap;}
2341  .shopall .sa-sticker{position:absolute;bottom:12px;right:12px;z-index:2;width:90px;height:90px;border-radius:50%;background:#B03200;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:3px;padding:8px;transform:rotate(-8deg);box-shadow:0 8px 18px rgba(90,30,0,.3);border:3px solid #fff;}
2342  .shopall .sa-sticker .sa-froth{width:24px;height:34px;flex:none;}
2343  .shopall .sa-sticker span{font-family:'MohrBlack','Nunito',sans-serif;text-transform:uppercase;letter-spacing:.4px;font-size:11px;line-height:1.02;}
2344
2345  .shopall .sa-info{padding:14px 4px 4px;display:flex;flex-direction:column;gap:4px;align-items:center;text-align:center;}
2346  .shopall .sa-name{font-family:'MohrBlack','Nunito',sans-serif;font-weight:normal;text-transform:uppercase;letter-spacing:0;font-size:16px;color:var(--sa-ink);}
2347  .shopall .sa-sub{display:inline-block;font-family:'MohrBlack','Nunito',sans-serif;font-weight:normal;text-transform:uppercase;letter-spacing:.3px;font-size:12px;color:#F6EFD8;background:#3A2417;padding:5px 14px;border-radius:999px;margin-top:6px;}
2348  .shopall .sa-soon .sa-sub{background:#9A907A;color:#fff;}
2349  .shopall .sa-pr{font-family:'MohrBlack','Nunito',sans-serif;font-weight:normal;font-size:23px;color:var(--sa-rustp);margin-top:5px;line-height:1;}
2350  .shopall .sa-cmp{font-family:'MohrBlack','Nunito',sans-serif;color:#C7A98C;text-decoration:line-through;margin-left:8px;font-size:17px;}
2351  .shopall .sa-ps{font-family:'MohrSemibold',sans-serif;text-transform:uppercase;letter-spacing:.4px;font-size:11px;color:var(--sa-sub);margin-top:3px;}
2352  .shopall .sa-poptag{margin-top:9px;background:var(--sa-gold);color:var(--sa-maroon);font-family:'MohrSemibold',sans-serif;text-transform:uppercase;letter-spacing:.5px;font-size:10px;padding:5px 13px;border-radius:999px;}
2353
2354  /* accessories tile */
2355  .shopall .sa-media-acc{background:#fff;border:1px solid var(--sa-line);border-radius:16px;overflow:hidden;padding:0;}
2356  .shopall .sa-accimg{width:100%;height:100%;object-fit:cover;transition:transform .35s cubic-bezier(.2,.7,.2,1);}
2357  .shopall a.sa-card:hover .sa-accimg{transform:scale(1.05);}
2358  .shopall .sa-save{position:absolute;top:10px;right:10px;z-index:2;background:#B03200;color:#fff;font-family:'MohrSemibold',sans-serif;text-transform:uppercase;letter-spacing:.4px;font-size:11px;padding:6px 10px;border-radius:999px;}
2359
2360  /* coming soon = flat grey ghost (no writing) */
2361  .shopall .sa-ghost{filter:grayscale(1) contrast(0) brightness(1.42) drop-shadow(0 18px 14px rgba(70,60,40,.1));}
2362  .shopall .sa-soon .sa-media-acc{filter:grayscale(1) opacity(.62);}
2363  .shopall .sa-veil{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:3;}
2364  .shopall .sa-media-acc .sa-veil{background:rgba(150,143,120,.28);}
2365  .shopall .sa-oos{background:var(--sa-grey);color:#fff;font-family:'MohrSemibold',sans-serif;text-transform:uppercase;letter-spacing:1px;font-size:12px;padding:9px 16px;border-radius:999px;box-shadow:0 6px 16px rgba(60,40,10,.2);}
2366  .shopall .sa-soon .sa-badge{background:#9A907A;}
2367  .shopall .sa-soon .sa-name{color:var(--sa-grey);}
2368  .shopall .sa-cs{font-family:'MohrSemibold',sans-serif;text-transform:uppercase;letter-spacing:.6px;font-size:13px;color:var(--sa-grey);margin-top:4px;}
2369
2370  @media (max-width:900px){ .shopall .sa-cols4{grid-template-columns:repeat(2,1fr);} }
2371  @media (max-width:620px){
2372    .shopall .sa-trial{grid-template-columns:130px 1fr;gap:6px;}
2373    .shopall .sa-trial-media{padding:16px;}
2374    .shopall .sa-trial-body{padding:18px 18px 20px 2px;}
2375    .shopall .sa-cols3{grid-template-columns:repeat(2,1fr);}
2376  }
2377  @media (max-width:430px){ .shopall .sa-cols3,.shopall .sa-cols4{grid-template-columns:1fr;} }</style>
2378</section>
2379<!-- BEGIN sections: footer-group -->
2380<div id="shopify-section-sections--27797482438826__footer-joey" class="shopify-section shopify-section-group-footer-group"><style>
2381  .jf {
2382    --jf-cream: #ffe8af;
2383    --jf-ink: #5c0c0d;
2384    position: relative;
2385    width: 100%;
2386    background: linear-gradient(100deg, #6a2a0b 0%, #bc7550 14%, #8a4418 28%, #5a1c08 42%, #c58258 56%, #7d3c11 70%, #5e2406 84%, #b06a42 100%);
2387    background-size: 240% 100%;
2388    animation: jfMetal 16s ease-in-out infinite alternate;
2389    isolation: isolate;
2390    color: #fff;
2391    padding: 96px 0 0;
2392    margin-top: -20px;
2393    overflow: hidden;
2394    --size: 14px;
2395    --m: 1.5;
2396    --p: calc(var(--m) * var(--size));
2397    --R: calc(var(--size) * sqrt(var(--m) * var(--m) + 1));
2398    -webkit-mask: radial-gradient(var(--R) at 50% calc(var(--size) + var(--p)), #000 99%, #0000 101%) calc(50% - 2 * var(--size)) 0 / calc(4 * var(--size)) 100%,
2399                  radial-gradient(var(--R) at 50% calc(-1 * var(--p)), #0000 99%, #000 101%) 50% var(--size) / calc(4 * var(--size)) 100% repeat-x;
2400    mask: radial-gradient(var(--R) at 50% calc(var(--size) + var(--p)), #000 99%, #0000 101%) calc(50% - 2 * var(--size)) 0 / calc(4 * var(--size)) 100%,
2401          radial-gradient(var(--R) at 50% calc(-1 * var(--p)), #0000 99%, #000 101%) 50% var(--size) / calc(4 * var(--size)) 100% repeat-x;
2402  }
2403  .jf *, .jf *::before, .jf *::after { box-sizing: border-box; }
2404  .jf > * { position: relative; z-index: 2; }
2405  .jf::before {
2406    content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none;
2407    background: linear-gradient(112deg, transparent 38%, rgba(255,232,175,.18) 46%, rgba(255,246,222,.42) 50%, rgba(255,232,175,.18) 54%, transparent 62%);
2408    background-size: 300% 100%;
2409    mix-blend-mode: overlay;
2410    animation: jfSheen 9s cubic-bezier(.45,0,.2,1) infinite;
2411  }
2412  .jf::after {
2413    content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none;
2414    background:
2415      radial-gradient(520px circle at var(--jf-mx, 70%) var(--jf-my, 30%), rgba(255,236,200,.22), transparent 60%),
2416      repeating-linear-gradient(90deg, rgba(255,255,255,.035) 0 1px, transparent 1px 3px),
2417      linear-gradient(180deg, rgba(255,255,255,.10), transparent 30%, rgba(0,0,0,.18));
2418    mix-blend-mode: soft-light;
2419  }
2420  @keyframes jfMetal { from { background-position: 0% 50%; } to { background-position: 100% 50%; } }
2421  @keyframes jfSheen { 0% { background-position: 120% 0; } 55%, 100% { background-position: -20% 0; } }
2422  @media (prefers-reduced-motion: reduce) {
2423    .jf, .jf::before { animation: none; }
2424  }
2425  .jf a { color: inherit; text-decoration: none; }
2426
2427  .jf__top {
2428    max-width: 1240px;
2429    margin: 0 auto;
2430    padding: 0 48px;
2431    display: grid;
2432    grid-template-columns: minmax(0, 1fr) auto;
2433    gap: 48px;
2434    align-items: start;
2435  }
2436
2437  .jf__title {
2438    max-width: 480px;
2439    font-family: MohrBlack, sans-serif;
2440    font-size: 30px;
2441    text-transform: uppercase;
2442    line-height: 1;
2443    margin: 0 0 22px;
2444    color: var(--jf-cream);
2445  }
2446  .jf .css-n48rgu { position: relative; width: 100%; max-width: 480px; }
2447  .jf .css-7n72pu {
2448    width: 100%;
2449    height: 64px;
2450    border: 0;
2451    border-radius: 999px;
2452    background: var(--jf-cream);
2453    padding: 4px 170px 0 28px;
2454    font-family: MohrBlack, sans-serif;
2455    font-size: 17px;
2456    color: var(--jf-ink);
2457    outline: 0;
2458  }
2459  .jf .css-7n72pu::placeholder { color: var(--jf-ink); opacity: .75; text-transform: uppercase; letter-spacing: .04em; }
2460  .jf .css-1hfft79 {
2461    position: absolute;
2462    top: 7px; right: 7px; bottom: 7px;
2463    display: flex; align-items: center; justify-content: center;
2464    border: 0; border-radius: 999px;
2465    background: var(--jf-ink);
2466    color: var(--jf-cream);
2467    padding: 0 30px;
2468    cursor: pointer;
2469    transition: background .2s ease;
2470  }
2471  .jf .css-1hfft79:hover { background: #793211; }
2472  .jf .css-1hfft79 > div {
2473    font-family: MohrBlack, sans-serif;
2474    font-size: 19px; line-height: 1; margin-top: 3px;
2475    text-transform: uppercase;
2476  }
2477  .jf .success, .jf .error {
2478    max-width: 480px;
2479    border-radius: 999px;
2480    padding: 18px 28px 14px;
2481    font-family: MohrBlack, sans-serif;
2482    font-size: 17px; line-height: 1.2;
2483  }
2484  .jf .success { background: var(--jf-cream); color: var(--jf-ink); }
2485  .jf .error { background: #b94a48; color: #fff; margin-bottom: 12px; }
2486
2487  .jf__cols {
2488    display: grid;
2489    grid-template-columns: repeat(3, max-content);
2490    column-gap: 56px;
2491  }
2492  .jf__h {
2493    font-family: MohrBlack, sans-serif;
2494    font-size: 30px;
2495    text-transform: uppercase;
2496    color: var(--jf-cream);
2497    line-height: 1;
2498    margin: 0 0 22px;
2499  }
2500  .jf__col a {
2501    display: block;
2502    font-family: MohrBlack, sans-serif;
2503    font-size: 15px;
2504    letter-spacing: .05em;
2505    text-transform: uppercase;
2506    line-height: 1.25;
2507    padding: 5px 0;
2508    white-space: nowrap;
2509    transition: color .2s ease;
2510  }
2511  .jf__col a:hover { color: var(--jf-ink); }
2512
2513  .jf__social { display: flex; gap: 20px; margin-top: 26px; }
2514  .jf__social a { display: block; width: 28px; height: 28px; color: var(--jf-cream); transition: color .2s ease, transform .2s ease; }
2515  .jf__social a:hover { color: var(--jf-ink); transform: translateY(-2px); }
2516  .jf__social svg { display: block; width: 100%; height: 100%; fill: currentColor; }
2517
2518  .jf__legal {
2519    max-width: 1240px;
2520    margin: 0 auto;
2521    padding: 0 48px 40px;
2522    display: flex; flex-wrap: wrap; justify-content: center; gap: 6px 18px;
2523    font-family: MohrSemibold, sans-serif;
2524    font-size: 12px;
2525    opacity: .85;
2526  }
2527  .jf__legal a:hover { color: var(--jf-ink); }
2528
2529  .jf__mark {
2530    display: block;
2531    width: min(44vw, 640px);
2532    margin: 0 auto;
2533    padding: 72px 0 28px;
2534  }
2535  .jf__mark svg { display: block; width: 100%; height: auto; }
2536  .jf__mark path, .jf__mark ellipse { fill: var(--jf-cream); }
2537
2538  @media screen and (max-width: 1240px) {
2539    .jf__cols { column-gap: 36px; }
2540  }
2541  @media screen and (max-width: 1024px) {
2542    .jf__top { grid-template-columns: 1fr; gap: 56px; padding: 0 32px; }
2543    .jf__legal { padding: 0 32px 36px; }
2544  }
2545  /* Phones: Apple-style collapsible sections. Each heading is a row with a chevron; tap to open. */
2546  @media screen and (max-width: 760px) {
2547    .jf__cols { grid-template-columns: 1fr; gap: 0; }
2548    .jf__col { border-top: 1px solid rgba(255,232,175,.28); }
2549    .jf__col:last-child { border-bottom: 1px solid rgba(255,232,175,.28); }
2550    .jf .jf__h {
2551      display: flex; align-items: center; justify-content: space-between;
2552      margin: 0; padding: 18px 0 14px; cursor: pointer; user-select: none;
2553      -webkit-tap-highlight-color: transparent;
2554    }
2555    .jf__h::after {
2556      content: ""; width: 9px; height: 9px; margin: -4px 4px 0 0;
2557      border-right: 2px solid currentColor; border-bottom: 2px solid currentColor;
2558      transform: rotate(45deg); transition: transform .3s ease;
2559    }
2560    .jf__col.is-open .jf__h::after { transform: rotate(-135deg); margin-top: 4px; }
2561    .jf__links { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .3s ease; }
2562    .jf__links > div { overflow: hidden; }
2563    .jf__col.is-open .jf__links { grid-template-rows: 1fr; }
2564    .jf__col.is-open .jf__links > div { padding-bottom: 14px; }
2565    .jf .jf__col a { font-size: 13px; padding: 7px 0; }
2566  }
2567  @media screen and (max-width: 640px) {
2568    .jf { padding-top: 72px; }
2569    .jf__top { padding: 0 20px; gap: 44px; }
2570    .jf__title { font-size: 24px; }
2571    .jf .css-7n72pu { height: 56px; font-size: 15px; padding-right: 130px; padding-left: 22px; }
2572    .jf .css-1hfft79 { padding: 0 20px; }
2573    .jf .css-1hfft79 > div { font-size: 16px; }
2574    .jf__social { gap: 16px; margin-top: 20px; }
2575    .jf__social a { width: 24px; height: 24px; }
2576    .jf__h { font-size: 20px; margin-bottom: 12px; }
2577    .jf__mark { width: 62vw; padding: 48px 0 20px; }
2578    .jf__legal { padding: 0 20px 28px; font-size: 11px; gap: 6px 14px; }
2579  }
2580</style>
2581
2582<footer id="footer-app" class="jf" role="contentinfo">
2583  <div class="jf__top">
2584    <div class="jf__news">
2585      <h2 class="jf__title">Better mornings, straight to your inbox.</h2>
2586      
2587<form method="post" action="/contact#footer-newsletter" id="footer-newsletter" accept-charset="UTF-8" class="Footer__Newsletter Form alternate"><input type="hidden" name="form_type" value="customer" /><input type="hidden" name="utf8" value="✓" /><!-- <input type="text" name="contact[first_name]" placeholder="First name" class="Form__Input" required>  -->
2588    <input type="hidden" name="contact[tags]" value="newsletter">
2589
2590    <div class="css-n48rgu e13tduah13">
2591      <input aria-label="Email" placeholder="Email" required="" class="css-7n72pu e13tduah12" type="email" name="contact[email]">
2592      <button type="submit" class="css-1hfft79 e13tduah11">
2593        <div>Subscribe</div>
2594      </button>
2595    </div></form>
2596      <div class="jf__social">
2597  <a href="https://www.instagram.com/drinkjoey" target="_blank" rel="noopener" aria-label="Joe'y on Instagram"><svg viewBox="0 0 24 24" aria-hidden="true"><path d="M7.0301.084c-1.2768.0602-2.1487.264-2.911.5634-.7888.3075-1.4575.72-2.1228 1.3877-.6652.6677-1.075 1.3368-1.3802 2.127-.2954.7638-.4956 1.6365-.552 2.914-.0564 1.2775-.0689 1.6882-.0626 4.947.0062 3.2586.0206 3.6671.0825 4.9473.061 1.2765.264 2.1482.5635 2.9107.308.7889.72 1.4573 1.388 2.1228.6679.6655 1.3365 1.0743 2.1285 1.38.7632.295 1.6361.4961 2.9134.552 1.2773.056 1.6884.069 4.9462.0627 3.2578-.0062 3.668-.0207 4.9478-.0814 1.28-.0607 2.147-.2652 2.9098-.5633.7889-.3086 1.4578-.72 2.1228-1.3881.665-.6682 1.0745-1.3378 1.3795-2.1284.2957-.7632.4966-1.636.552-2.9124.056-1.2809.0692-1.6898.063-4.948-.0063-3.2583-.021-3.6668-.0817-4.9465-.0607-1.2797-.264-2.1487-.5633-2.9117-.3084-.7889-.72-1.4568-1.3876-2.1228C21.2982 1.33 20.628.9208 19.8378.6165 19.074.321 18.2017.1197 16.9244.0645 15.6471.0093 15.236-.005 11.977.0014 8.718.0076 8.31.0215 7.0301.0839m.1402 21.6932c-1.17-.0509-1.8053-.2453-2.2287-.408-.5606-.216-.96-.4771-1.3819-.895-.422-.4178-.6811-.8186-.9-1.378-.1644-.4234-.3624-1.058-.4171-2.228-.0595-1.2645-.072-1.6442-.079-4.848-.00
25977-3.2037.0053-3.583.0607-4.848.05-1.169.2456-1.805.408-2.2282.216-.5613.4762-.96.895-1.3816.4188-.4217.8184-.6814 1.3783-.9003.423-.1651 1.0575-.3614 2.227-.4171 1.2655-.06 1.6447-.072 4.848-.079 3.2033-.007 3.5835.005 4.8495.0608 1.169.0508 1.8053.2445 2.228.408.5608.216.96.4754 1.3816.895.4217.4194.6816.8176.9005 1.3787.1653.4217.3617 1.056.4169 2.2263.0602 1.2655.0739 1.645.0796 4.848.0058 3.203-.0055 3.5834-.061 4.848-.051 1.17-.245 1.8055-.408 2.2294-.216.5604-.4763.96-.8954 1.3814-.419.4215-.8181.6811-1.3783.9-.4224.1649-1.0577.3617-2.2262.4174-1.2656.0595-1.6448.072-4.8493.079-3.2045.007-3.5825-.006-4.848-.0608M16.953 5.5864A1.44 1.44 0 1 0 18.39 4.144a1.44 1.44 0 0 0-1.437 1.4424M5.8385 12.012c.0067 3.4032 2.7706 6.1557 6.173 6.1493 3.4026-.0065 6.157-2.7701 6.1506-6.1733-.0065-3.4032-2.771-6.1565-6.174-6.1498-3.403.0067-6.156 2.771-6.1496 6.1738M8 12.0077a4 4 0 1 1 4.008 3.9921A3.9996 3.9996 0 0 1 8 12.0077"/></svg></a>
2598  <a href="https://www.tiktok.com/@drinkjoey" target="_blank" rel="noopener" aria-label="Joe'y on TikTok"><svg viewBox="0 0 24 24" aria-hidden="true"><path d="M12.525.02c1.31-.02 2.61-.01 3.91-.02.08 1.53.63 3.09 1.75 4.17 1.12 1.11 2.7 1.62 4.24 1.79v4.03c-1.44-.05-2.89-.35-4.2-.97-.57-.26-1.1-.59-1.62-.93-.01 2.92.01 5.84-.02 8.75-.08 1.4-.54 2.79-1.35 3.94-1.31 1.92-3.58 3.17-5.91 3.21-1.43.08-2.86-.31-4.08-1.03-2.02-1.19-3.44-3.37-3.650-5.71-.02-.5-.03-1-.01-1.49.18-1.9 1.12-3.72 2.58-4.96 1.66-1.44 3.98-2.13 6.15-1.72.02 1.48-.04 2.96-.04 4.44-.99-.32-2.15-.23-3.02.37-.63.41-1.11 1.04-1.36 1.75-.21.51-.15 1.07-.14 1.61.24 1.64 1.82 3.02 3.5 2.87 1.12-.01 2.19-.66 2.77-1.61.19-.33.4-.67.41-1.06.1-1.79.06-3.57.07-5.36.01-4.03-.01-8.05.02-12.07z"/></svg></a>
2599  <a href="https://www.facebook.com/drinkjoey" target="_blank" rel="noopener" aria-label="Joe'y on Facebook"><svg viewBox="0 0 24 24" aria-hidden="true"><path d="M9.101 23.691v-7.98H6.627v-3.667h2.474v-1.58c0-4.085 1.848-5.978 5.858-5.978.401 0 .955.042 1.468.103a8.68 8.68 0 0 1 1.141.195v3.325a8.623 8.623 0 0 0-.653-.036 26.805 26.805 0 0 0-.733-.009c-.707 0-1.259.096-1.675.309a1.686 1.686 0 0 0-.679.622c-.258.42-.374.995-.374 1.752v1.297h3.919l-.386 2.103-.287 1.564h-3.246v8.245C19.396 23.238 24 18.179 24 12.044c0-6.627-5.373-12-12-12s-12 5.373-12 12c0 5.628 3.874 10.35 9.101 11.647Z"/></svg></a>
2600  <a href="https://www.pinterest.com/drinkjoey/" target="_blank" rel="noopener" aria-label="Joe'y on Pinterest"><svg viewBox="0 0 24 24" aria-hidden="true"><path d="M12.017 0C5.396 0 .029 5.367.029 11.987c0 5.079 3.158 9.417 7.618 11.162-.105-.949-.199-2.403.041-3.439.219-.937 1.406-5.957 1.406-5.957s-.359-.72-.359-1.781c0-1.663.967-2.911 2.168-2.911 1.024 0 1.518.769 1.518 1.688 0 1.029-.653 2.567-.992 3.992-.285 1.193.6 2.165 1.775 2.165 2.128 0 3.768-2.245 3.768-5.487 0-2.861-2.063-4.869-5.008-4.869-3.41 0-5.409 2.562-5.409 5.199 0 1.033.394 2.143.889 2.741.099.12.112.225.085.345-.09.375-.293 1.199-.334 1.363-.053.225-.172.271-.401.165-1.495-.69-2.433-2.878-2.433-4.646 0-3.776 2.748-7.252 7.920-7.252 4.158 0 7.392 2.967 7.392 6.923 0 4.135-2.607 7.462-6.233 7.462-1.214 0-2.354-.629-2.758-1.379l-.749 2.848c-.269 1.045-1.004 2.352-1.498 3.146 1.123.345 2.306.535 3.55.535 6.607 0 11.985-5.365 11.985-11.987C23.97 5.39 18.592.026 11.985.026L12.017 0z"/></svg></a>
2601</div>
2602
2603    </div>
2604
2605    <nav class="jf__cols" aria-label="Footer">
2606      <div class="jf__col">
2607        <h3 class="jf__h">Shop</h3>
2608        <div class="jf__links"><div>
2609            <a href="/collections/shop-all">Shop all</a>
2610            <a href="/pages/subscription">Why subscribe?</a>
2611            <a href="/pages/referral">Give 30%, get $10</a>
2612            <a href="/pages/store-locator">Find a store</a>
2613            <a href="https://wholesale.drinkjoey.com">Wholesale</a>
2614        </div></div>
2615      </div>
2616      <div class="jf__col">
2617        <h3 class="jf__h">Learn</h3>
2618        <div class="jf__links"><div>
2619            <a href="/pages/our-story">Our story</a>
2620            <a href="/pages/joey-vs-coffee">Joe'y vs. coffee</a>
2621            <a href="/pages/better-mushroom-coffee">What's mushroom coffee?</a>
2622            <a href="/pages/cut-back-on-caffeine">How to cut caffeine</a>
2623            <a href="/pages/morning-cup-that-does-more">Our 12 superfoods</a>
2624        </div></div>
2625      </div>
2626      <div class="jf__col">
2627        <h3 class="jf__h">Help</h3>
2628        <div class="jf__links"><div>
2629            <a href="/pages/track">Track my order</a>
2630            <a href="/apps/redo/returns-portal/login?referralId=6a21cd3b5e6fef513e7c5e49">Returns</a>
2631            <a href="/pages/faq">FAQ</a>
2632            <a href="/pages/contact-us">Contact us</a>
2633            <a href="/pages/accessibility">Accessibility</a>
2634        </div></div>
2635      </div>
2636    </nav>
2637  </div>
2638
2639  <a class="jf__mark" href="/" aria-label="Joe'y home">
2640    <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 215.31 97.82" aria-hidden="true">
2641      <path d="M146.1,4.52a11.29,11.29,0,0,0-7.65-2.36,10.76,10.76,0,0,0-4.52,1.25A9.28,9.28,0,0,0,129.17,14c1.41,6.26,7,8.23,10.77,9a24.68,24.68,0,0,1,11.59,5.68,1.47,1.47,0,0,0,1.08.38,1.54,1.54,0,0,0,1.46-1.54C154.06,21.59,153.08,10.19,146.1,4.52Z"></path>
2642      <path d="M202.51,23.92c-8.49.21-11.66,7.87-12.42,10.18a.7.7,0,0,0,.4.88,15.31,15.31,0,0,1,5.75,3.91c6.41,7.6.67,18.94-2.19,24.11-.19-.31-.32-.48-.41-.66-.63-1.31-1.27-2.62-1.88-3.94-4.34-9.48-7.87-19.28-11.3-29.12-.1-.31-.21-.61-.32-.91a2.85,2.85,0,0,0-2.66-1.9,2.74,2.74,0,0,0-.74.1c-5.89,1.7-11.4,3.35-17.38,5a2.39,2.39,0,0,0-1.78,2.3l0,3.17a2.35,2.35,0,0,0,1.29,2.11,10.11,10.11,0,0,1,4.76,4.72c.74,1.81,1.53,3.6,2.24,5.42,3.1,7.95,6.61,15.73,10.38,23.39,1.66,3.35,4.51,7.69,6.24,11a1.33,1.33,0,0,1,0,1.18c-1.59,2.39-3.82,4.25-6.75,4.26h0c-3.85,0-6.55-5-3.35-9.37a.62.62,0,0,0,.09-.64,8.55,8.55,0,0,0-7.85-4.76,8,8,0,0,0-1.63.16c-5.35,1.1-8.55,5-8.35,10.1.34,8.62,7.75,13.21,15.69,13.21,10.8,0,17.58-8.38,20.05-12,5-7.39,20.5-35.9,22.16-39.06C220.36,31.66,210.12,23.74,202.51,23.92Z"></path>
2643      <path d="M77.79,26.52c-17.22,0-28.67,11.67-28.67,29.23S60.57,85.09,77.79,85.09s28.56-11.78,28.56-29.34S94.91,26.52,77.79,26.52Zm.11,51c-5,0-6.73-5.56-6.73-21.78S72.94,34,77.9,34c4.64,0,6.29,5.56,6.29,21.78S82.54,77.53,77.9,77.53Z"></path>
2644      <path d="M46.31,68.54c0-4.46,0-26.89,0-35.93,0-3.63-.8-5.8-4.29-5.8a18.21,18.21,0,0,0-4.88.87L19.49,32.45a2.75,2.75,0,0,0-2.17,2.61v3.21a2.39,2.39,0,0,0,2,2.11c4.06.63,4.42,1.95,4.4,5.58,0,0-.11,37.21-.13,38.69,0,.55-.16,1.09-1.36,1.09-5.39,0-7.39-7.93-5.45-15.35a.79.79,0,0,0-.25-.8,7.64,7.64,0,0,0-4.9-1.5A11.38,11.38,0,0,0,0,79.69C-.23,94.41,17.59,94.91,19.72,94.91h.16a32.33,32.33,0,0,0,11.64-2.29,20.8,20.8,0,0,0,12.13-11.1A31.12,31.12,0,0,0,46.31,68.54Z"></path>
2645      <path d="M153.05,65.92a.9.9,0,0,0-1.37,0c-2,2.45-5.54,6.29-11.4,6.29-3.44,0-8.43-1.32-11.44-7.38a13.65,13.65,0,0,1-1.48-5.31l29.54-7.29a1.16,1.16,0,0,0,.89-1.22,30.33,30.33,0,0,0-4.45-13.65,22.88,22.88,0,0,0-12.73-9.76,26.28,26.28,0,0,0-7.76-1.17,28.44,28.44,0,0,0-5.7.59c-8.38,1.7-22.08,8.45-22.15,28.32h0c0,.13,0,.26,0,.4,0,17.56,11.44,29.34,28.67,29.34,14,0,21.69-9.71,23.87-12.86a.92.92,0,0,0-.06-1.11ZM131.82,34.26a4.52,4.52,0,0,1,3.34,1.54,7.69,7.69,0,0,1,1.69,3,15,15,0,0,1,.77,4.8,6.11,6.11,0,0,1-4.45,6c-2,.6-6.76,1.46-7.34,1.56C125.49,34.94,130.44,34.26,131.82,34.26Z"></path>
2646      <ellipse cx="32.72" cy="12.18" rx="12.08" ry="12.18"></ellipse>
2647    </svg>
2648
2649  </a>
2650
2651  <div class="jf__legal">
2652    <span>&copy; 2026 Joe&rsquo;y. All rights reserved.</span>
2653    <a href="/policies/privacy-policy">Privacy</a>
2654    <a href="/policies/terms-of-service">Terms &amp; Conditions</a>
2655    <a href="/policies/shipping-policy">Shipping Policy</a>
2656    <a href="/policies/subscription-policy">Cancellation Policy</a>
2657  </div>
2658</footer>
2659<script>
2660  (function(){
2661    var mq=window.matchMedia('(max-width: 760px)');
2662    document.querySelectorAll('.jf__col').forEach(function(col){
2663      var h=col.querySelector('.jf__h'); if(!h) return;
2664      h.setAttribute('role','button'); h.setAttribute('tabindex','0'); h.setAttribute('aria-expanded','false');
2665      function toggle(){ if(!mq.matches) return; var o=col.classList.toggle('is-open'); h.setAttribute('aria-expanded',o?'true':'false'); }
2666      h.addEventListener('click',toggle);
2667      h.addEventListener('keydown',function(e){ if(e.key==='Enter'||e.key===' '){ e.preventDefault(); toggle(); } });
2668    });
2669  })();
2670  (function(){
2671    var f=document.querySelector('.jf'); if(!f||!window.matchMedia('(hover:hover)').matches) return;
2672    var raf=0; f.addEventListener('pointermove',function(e){
2673      if(raf) return; raf=requestAnimationFrame(function(){ raf=0;
2674        var r=f.getBoundingClientRect();
2675        f.style.setProperty('--jf-mx',(e.clientX-r.left)+'px');
2676        f.style.setProperty('--jf-my',(e.clientY-r.top)+'px');
2677      });
2678    });
2679  })();
2680</script>
2680
2681</div>
2682<!-- END sections: footer-group --></main>
2683    <div id="modal-root"></div>
2684
2685<script>
2686(function() {
2687  var DISCLOSURE_ID = 'joey-arl-cart-disclosure';
2688
2689  function injectDisclosure() {
2690    if (document.getElementById(DISCLOSURE_ID)) return;
2691    var form = document.querySelector('form.cart-drawer__footer');
2692    if (!form) return;
2693    var btn = form.querySelector('button[name="checkout"], button[type="submit"]');
2694    if (!btn) return;
2695    var box = document.createElement('div');
2696    box.id = DISCLOSURE_ID;
2697    box.style.cssText = 'padding:0 16px 12px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:12px;line-height:1.6;color:#666666;';
2698    box.innerHTML = '<strong style="color:#444444;">Subscription terms:</strong> Your subscription renews automatically at the frequency and price shown, plus taxes, until you cancel. To cancel, log in at drinkjoey.com → Manage Subscription → Cancel Subscription, or email <a href="mailto:[email protected]" style="color:#666666;">[email protected]</a> or call <a href="tel:+12674783038" style="color:#666666;">+1 (267) 478-3038</a>. <a href="/policies/subscription-policy" style="color:#666666;text-decoration:underline;">Full cancellation policy</a>';
2699    form.appendChild(box);
2700  }
2701
2702  function removeDisclosure() {
2703    var el = document.getElementById(DISCLOSURE_ID);
2704    if (el) el.remove();
2705  }
2706
2707  function checkCartAndUpdate() {
2708    fetch('/cart.js')
2709      .then(function(r) { return r.json(); })
2710      .then(function(cart) {
2711        var hasSub = cart.items.some(function(item) {
2712          return item.selling_plan_allocation != null;
2713        });
2714        if (hasSub) {
2715          injectDisclosure();
2716        } else {
2717          removeDisclosure();
2718        }
2719      });
2720  }
2721
2722  new MutationObserver(function() {
2723    if (document.querySelector('form.cart-drawer__footer')) {
2724      checkCartAndUpdate();
2725    } else {
2726      removeDisclosure();
2727    }
2728  }).observe(document.body, { childList: true, subtree: true });
2729})();
2730</script>
2730
2731
2732<script>
2733/* ============================================================================
2734   Joe'y PDP deep links  (added 2026-06-19; ?variant mapping added 2026-06-20)
2735   ----------------------------------------------------------------------------
2736   Adds URL params to /products/joey so links can preselect size + starter kit:
2737     ?size=60|20|8   -> selects the size
2738     ?kit=0          -> on size=60, drops the free starter kit (just the bag);
2739                        the kit is included by default
2740   (?flavor=Original|Vanilla|Mocha is handled natively by the site, not here.)
2741
2742   Google Shopping support: Google's feed links the Original product's variants
2743   with ?variant=<id>. We map those three variant IDs to the matching size below
2744   (variantSizeMap) so a Shopping click lands on the right size/price instead of
2745   the default 60-serving+kit view. If those variant IDs ever change in Shopify,
2746   update variantSizeMap.
2747
2748   MAINTENANCE NOTE: this works by clicking the product page's buttons by their
2749   CSS class names: .size-item (size buttons), .kit-label ("FREE STARTER KIT!"
2750   tag), .just-want-bag (kit/bag toggle). If the product component is ever
2751   rebuilt and these classes are renamed or removed, the ?size= / ?kit= links
2752   silently stop working (page falls back to the default 60-serving). Flavor
2753   links keep working. Fix = update the class names below to match the new markup.
2754   ============================================================================ */
2755(function () {
2756  var params = new URLSearchParams(location.search);
2757  var s = params.get('size');
2758  if (s === null) {
2759    var variantSizeMap = { '48120166842538': '20', '48120166875306': '8', '48120166809770': '60' };
2760    var vid = params.get('variant');
2761    if (vid && variantSizeMap[vid]) s = variantSizeMap[vid];
2762  }
2763  var map = { '60': 0, '20': 1, '8': 2 };
2764  if (!(s in map)) return;
2765  var wantKit = params.get('kit') !== '0';
2766  var tries = 0;
2767  var timer = setInterval(function () {
2768    var items = document.querySelectorAll('.size-item');
2769    if (items.length >= 3) {
2770      clearInterval(timer);
2771      var el = items[map[s]];
2772      var oos = /out of stock/i.test(el.textContent) || el.querySelector('img[alt="Out Of Stock"]');
2773      if (!el || oos) return;
2774      el.click();
2775      if (s === '60') {
2776        setTimeout(function () {
2777          var sel = document.querySelector('.size-item.selected');
2778          var kitActive = !!(sel && sel.querySelector('.kit-label'));
2779          var toggle = sel && sel.querySelector('.just-want-bag');
2780          if (toggle && kitActive !== wantKit) toggle.click();
2781        }, 500);
2782      }
2783    } else if (++tries > 50) {
2784      clearInterval(timer);
2785    }
2786  }, 150);
2787})();
2788</script>
2788
2789
2790
2791<style>  </style>
2792<div id="shopify-block-AMXlNNXM5SWtGZ0cxR__17151115064775110295" class="shopify-block shopify-app-block"><style data-recharge-theme='{"has_theme_customization": true, "design_mode": false }'>
2793  .recharge-theme {
2794    /* App */
2795    --recharge-app-background: #FAF0D6;
2796    --recharge-app-container: 1200px;
2797    --recharge-app-vertical-padding: 32px;
2798
2799    /* Brand colors */
2800    
2801--recharge-color-brand: #5B0E10;
2802
2803    /* Tints */
2804    --recharge-color-brand-120: #340809;
2805    --recharge-color-brand-20: #7c3e40;
2806    --recharge-color-brand-40: #9d6e70;
2807    --recharge-color-brand-60: #bd9f9f;
2808    --recharge-color-brand-75: #d6c3c3;
2809    --recharge-color-brand-85: #e6dbdb;
2810
2811    /* Neutral */
2812    --recharge-color-neutral: hsl(358, 35%, 7%);
2813    --recharge-color-neutral-80: hsl(358, 7%, 25%);
2814    --recharge-color-neutral-70: hsl(358, 5%, 35%);
2815    --recharge-color-neutral-40: hsl(358, 3%, 63%);
2816    --recharge-color-neutral-10: hsl(358, 2%, 91%);
2817    
2818
2819    /* Links */
2820    --recharge-button-secondary: #A84024;
2821    --recharge-button-secondary-120: #83321c;
2822    --recharge-button-secondary-60: #cb8c7c;
2823
2824    /* Images */
2825    --recharge-images-ratio: 1;
2826
2827    /* Cards */
2828    
2829    --recharge-cards-background: #FAF0D6;
2830    
2831
2832    
2833    --recharge-cards-border-color: RGBA(0,0,0,0);
2834    
2835
2836    /* Fonts */
2837    --recharge-typography-scale: 16px;
2838    --recharge-typography-size-1: calc(3 * var(--recharge-typography-scale));
2839    --recharge-typography-size-2: calc(2.25 * var(--recharge-typography-scale));
2840    --recharge-typography-size-3: calc(1.625 * var(--recharge-typography-scale));
2841    --recharge-typography-size-4: calc(1.25 * var(--recharge-typography-scale));
2842    --recharge-typography-size-5: calc(1 * var(--recharge-typography-scale));
2843    --recharge-typography-size-6: calc(.875 * var(--recharge-typography-scale));
2844
2845    /** Text **/
2846    --recharge-typography-light: #FFFFFF;
2847    --recharge-typography-primary: var(--recharge-color-neutral);
2848    --recharge-typography-secondary: var(--recharge-color-neutral-70);
2849
2850    /* Corners */
2851    --recharge-corners-radius: 8px;
2852
2853    --recharge-button-border-radius: 8px;
2854    
2855
2856    /* Views */
2857    
2858    --recharge-views-background: #FAF0D6;
2859    
2860
2861    /* Buttons */
2862    --recharge-button-font-family: inherit;
2863    --recharge-button-brand: var(--recharge-color-brand);
2864    --recharge-button-color: #FFFFFF;
2865  }
2866</style>
2867
2868</div><div id="shopify-block-AWGxmMlp0WWFnTzZRY__16798170927650018749" class="shopify-block shopify-app-block">
2869
2870
2871
2872
2873
2874
2875
2876  
2877  
2878
2879
2880
2881
2882<div id="recharge-storefront-experiences">
2883  
2884  <div></div>
2885</div>
2886<script type="module" src="https://static.rechargecdn.com/assets/storefront-experiences/storefront-experiences.js"></script>
2886
2887
2888<script>
2889  (function () {
2890    
2891    
2892    
2893    
2894    
2895  
2896    window.RechargeStorefrontConfig = {
2897      customer: null,
2898      shop: {
2899        currency: "USD",
2900        locale: "en",
2901        identifier: "respect-des-fonds.myshopify.com",
2902        market_id: 2944434346,
2903        currency_format: "${{amount}}",
2904        routes: {
2905          cart: "\/cart",
2906          root: "\/",
2907        },
2908      },
2909      cart_overlay:{"enabled":true},
2910      cart_overlay_preview:{"config":{"settings":{"advanced":{"drawer_settings":{"drawer_width_enabled":false,"z_index_enabled":false}},"blocks":[{"settings":{"background_color":"#E3EBF0","foreground_color":"#0B1317","padding_bottom":12,"padding_top":12,"text":"\u003cp\u003e{{product_title}} added to the cart!\u003c\/p\u003e"},"type":"banner"},{"settings":{"padding_bottom":20,"padding_top":20,"text":"\u003ch1\u003eSubscribe \u0026 save {{discount}}\u003c\/h1\u003e\u003cp\u003eWhen you subscribe, you'll also get these benefits:\u003c\/p\u003e\u003cul\u003e\u003cli\u003e\u003cp\u003eSave {{discount}} on every order\u003c\/p\u003e\u003c\/li\u003e\u003cli\u003e\u003cp\u003eSkip, delay or cancel any time\u003c\/p\u003e\u003c\/li\u003e\u003cli\u003e\u003cp\u003eFree shipping in the US\u003c\/p\u003e\u003c\/li\u003e\u003cli\u003e\u003cp\u003eRenew on your timeframe\u003c\/p\u003e\u003c\/li\u003e\u003c\/ul\u003e"},"type":"text_area"},{"settings":{"divider_placement":"top","frequency_select_label":"Deliver every","padding_bottom":10,"padding_top":20,"savings_text":"Saving {{discount}}","show_divider_line":true,"show_frequency_select_label":true,"show_savings_text":true,"show_strikethrough_price":true},"type":"upsell_product"},{"settings":{"padding_bottom":20,"padding_top":10,"primary_button_text":"Subscribe \u0026 save {{discount}}","secondary_button_text":"Continue to your cart"},"type":"upsell_buttons"}
2910],"theme":{"accent_color":"#16833a","background_color":"#FFFFFF","border_radius":"full","error_color":"#EC3D10","foreground_color":"#000000","link_color":"#467c99","muted_color":"#535a5d","padding_left":24,"padding_right":24,"primary_color":"#467c99","primary_foreground_color":"#ffffff","secondary_color":"#E3EBF0","secondary_foreground_color":"#467c99"}},"type":"upsell","upsell_config":{"upsell_delivery_frequency":"default"},"flow_id":0}},
2911      cart_drawer:{"config":{"config":{"cross_sell":{"enabled":true,"config_list":[{"trigger":{"type":"any"},"cross_sell":{"type":"specific_products","products":[{"id":"7064716738730","handle":"frothy","variant_ids":["41764410556586"],"purchase_option":"onetime_only","frequency_selection":"customer"},{"id":"8002412413098","handle":"joey-jar","variant_ids":["46151459799210"],"purchase_option":"onetime_only","frequency_selection":"customer"},{"id":"8005121015978","handle":"fellow-ceramic-mug","variant_ids":["46161441063082"],"purchase_option":"onetime_only","frequency_selection":"customer"},{"id":"8248263540906","handle":"joey-tumbler","variant_ids":["47442121228458"],"purchase_option":"onetime_only","frequency_selection":"customer"}],"number_of_products":4}}]},"upsell_cart_items":true,"shipping_progress_bar":{"enabled":false,"required_amount":50,"required_amount_type":"discounted","subscriptions_unlock_free_shipping":false}},"settings":{"theme":{"link_color":"rgba(92, 12, 13, 1)","error_color":"#EC3D10","muted_color":"#535a5d","accent_color":"rgba(168, 63, 33, 1)","padding_left":24,"border_radius":"full","padding_right":24,"primary_color":"rgba(92, 12, 13, 1)","secondary_color":"rgba(255, 232, 175, 1)","background_color":"rgba(253, 249, 239, 1)","foreground_color":"rgba(92, 12, 13, 1)","primary_foreground_color":"#ffffff","secondary_foreground_color":"rgba(168, 63, 33, 1)"},"advanced":{"selectors":{"cart_count":"[data-recharge-cart-count],\n.e1a3k64w0","cart_trigger":"[data-recharge-cart-trigger], .e1a3k64w0","cart_count_enabled":false,"add_to_cart_enabled":false,"cart_trigger_enabled":true,"add_to_cart_override_type":"auto"},"drawer_settings":{"z_index":"9999999999","z_index_enabled":true,"drawer_width_enabled":false}},"templates":{"empty":{"body":{"blocks":[{"type":"text_area","settings":{"text":"\u003ch2\u003eYour cart is empty!\u003c\/h2\u003e","padding_top":0,"padding_bottom":8}},{"type":"empty_cart_button","settings":{"button_text":"Continue shopping","button_action":"close"}}],"alignment":"center","padding_top":0,"padding_bottom":0},"footer":{"blocks":[],"padding_top":20,"padding_bottom":20,"section_divider":"shadow","background_color":"#FFFFFF"},"header":{"blocks":[{"type":"cart_title","settings":{"title":"\u003ch2 style=\"font-size: 24px;\"\u003eYour cart ({{items_count}})\u003c\/h2\u003e","padding_top":16,"padding_bottom":16}}],"show_divider_line":true}},"line_items":{"body":{"blocks":[{"type":"line_items","settings":{"upsell":{"display_type":"button","text_discount":"Upgrade to subscription and save {{discount}}","text_no_discount":"Upgrade to a subscription","frequency_select_label":"Deliver every","show_onetime_frequency":false,"onetime_frequency_label":"One-time purchase","upsell_in_progress_text":"Upgrading to subscription...","text_discount_quantity_upsell":"Subscribe and buy {{quantity}}, save {{discount}}!"},"padding_top":18,"savings_text":"Saving {{discount}}","padding_bottom":18,"show_divider_line":true,"show_savings_text":true,"show_strikethrough_price":true}},{"type":"cross_sell","settings":{"show_title":true,"title_text":"\u003ch4 style=\"text-align: center\"\u003eDon’t Forget the Extras!\u003c\/h4\u003e","padding_top":11,"padding_bottom":35,"display_options":"dropdown","card_background_color":"rgba(250, 250, 250, 1)","add_to_cart_button_text":"Add","section_background_color":"rgba(255, 227, 130, 1)","display_products_on_cards":true,"prompt_one_time_option_text":"One-time purchase","prompt_add_to_cart_button_text":"Add to cart","prompt_variant_selection_label":"Options","prompt_frequency_selection_label":"Deliver every"}}],"alignment":"top","padding_top":0,"padding_bottom":0},"footer":{"blocks":[{"type":"subtotal","settings":{"padding_top":0,"padding_bottom":4,"subtotal_text_plural":"\u003cstrong\u003eSubtotal ({{items_count}} items):\u003c\/strong\u003e","subtotal_text_singular":"\u003cstrong\u003eSubtotal ({{items_count}} item):\u003c\/strong\u003e","show_strikethrough_price":true}},{"type":"checkout_button","settings":{"padding_top":4,"padding_bottom":0,"checkout_button_text":"Checkout"}},{"type":"text_area","settings":{"text":"\u003cp\u003eSubscription terms: Your subscription renews automatically at the frequency and price shown, plus taxes, until you cancel. To cancel, log in at \u003ca target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"http:\/\/drinkjoey.com\"\u003edrinkjoey.com\u003c\/a\u003e → Manage Subscription → Cancel Subscription, or email \u003ca target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"mailto:[email protected]\"\[email protected]\u003c\/a\u003e or call +1 (2
291167) 478-3038. Full terms: drinkjoey.com\/policies\/subscription-policy\u003c\/p\u003e","padding_top":20,"padding_bottom":20}}],"padding_top":20,"padding_bottom":20,"section_divider":"shadow","background_color":"rgba(253, 248, 237, 1)"},"header":{"blocks":[{"type":"cart_title","settings":{"title":"\u003ch2\u003eYour Cart ({{items_count}})\u003c\/h2\u003e","padding_top":16,"padding_bottom":16}},{"type":"shipping_progress_bar","settings":{"icon":"https:\/\/static.stage.rechargecdn.com\/assets\/affinity-components\/shipping-default.png","show_icon":false,"padding_top":16,"completed_text":"\u003cp style=\"text-align:center;\"\u003e🎉 \u003cstrong\u003eCongrats\u003c\/strong\u003e—you've unlocked free shipping!\u003c\/p\u003e","padding_bottom":16,"background_color":"#FFFFFF","in_progress_text":"\u003cp style=\"text-align:center;\"\u003eSpend \u003cstrong\u003e{{amount}}\u003c\/strong\u003e more for free shipping\u003c\/p\u003e","divider_placement":"top","show_divider_line":true,"bar_background_color":"#E3EBF0","bar_foreground_color":"#16833A"}}],"show_divider_line":true}}}},"passed_activation_ready_schema":true,"flow_id":239344},"enabled":true},
2912      cart_drawer_preview:{},
2913      bundles_selling_plan_sync_enabled:false,
2914    };
2915  })();
2916</script>
2916
2917
2918
2919
2920
2921</div><div id="shopify-block-AVElYbHJnemxjbVVrN__10840395464443086010" class="shopify-block shopify-app-block">
2922
2923
2924<script>
2925  console.log("[Alia app extension] v1.0.5");
2926
2927  const BACKEND_URL = "https://backend.alia-prod.com";
2928
2929  window.ALIA_SHOPIFY_EXTENSION_INFO = {
2930    customerID: "",
2931    country: "US",
2932    market: "us",
2933    language: "en"
2934  }
2935
2936  if (document.readyState !== "loading") {
2937    initAlia();
2938  } else {
2939    document.addEventListener("DOMContentLoaded", () => initAlia(), { once: true });
2940  }
2941
2942  async function initAlia() {
2943    const url = BACKEND_URL + "/public/launcher.js?shopifyUrl=respect-des-fonds.myshopify.com";
2944    const script = document.createElement("script");
2945    script.src = url;
2946    script.async = true;
2947    document.head.appendChild(script);
2948  }
2949</script>
2949
2950
2951</div>
2951<script src="https://cdn.shopify.com/storefront/standard-actions.js" type="module" data-source-attribution="shopify.standard_actions"></script>
2951
2952</body>
2953</html><style>
2954  [id^="alia-root"] img[src*="logoheader"],
2955  [id^="alia-popup"] img[src*="logoheader"]{
2956    display:block !important;
2957    margin-left:auto !important;
2958    margin-right:auto !important;
2959  }
2960
2961  /* Alia popup, answer buttons.
2962
2963     In the popup's content column every child fills the column except the
2964     stack holding the four answer buttons, which Alia sizes to a fixed 288px
2965     and gives no side margins. So it sits flush left while the headline and
2966     "No thanks" centre above and below it. Measured on a 430px phone the
2967     column is 398px and the stack 288px, putting it 34px off centre; at 768px
2968     the same stack is 179px off.
2969
2970     Auto side margins centre it, and are a no-op for the siblings that already
2971     fill the column. The :has() scope pins the rule to the one container that
2972     holds the popup logo, so no other part of Alia's layout is touched, and on
2973     a browser without :has() support nothing applies and the popup renders as
2974     it does today.
2975
2976     This belongs in Alia's own popup editor, on the button container's width.
2977     Delete this rule once it is set there.
2978     Added 2026-09-08. */
2979  [id^="alia-root"] div[id^="alia-"]:has(> img[src*="logoheader"]) >
2979 div[id^="alia-"]{
2980    margin-left:auto !important;
2981    margin-right:auto !important;
2982  }
2983</style>

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.