PageSourceSearch

https://blossomcoffeeroasters.com/products/rwanda-rulindo-murambi

html blossomcoffeeroasters.com collected 2026-10-09 00:01:05 UTC 290,977 bytes, 3,980 lines download raw bytes

vendor: 1 bytes, line 1
1
2<script>
3  const dynamicSellingPlansMap = {};
4  
5    
6      
7        
8          dynamicSellingPlansMap['3594158254'] = {
9            name: '20% off this order, 10% off next orders',
10            id: '3594158254'
11          }
12        
13      
14    
15  
16    
17      
18    
19      
20        
21          dynamicSellingPlansMap['3594158254'] = {
22            name: '20% off this order, 10% off next orders',
23            id: '3594158254'
24          }
25        
26      
27    
28  
29    
30      
31    
32      
33        
34          dynamicSellingPlansMap['3594158254'] = {
35            name: '20% off this order, 10% off next orders',
36            id: '3594158254'
37          }
38        
39      
40    
41  
42    
43      
44    
45      
46        
47          dynamicSellingPlansMap['3594158254'] = {
48            name: '20% off this order, 10% off next orders',
49            id: '3594158254'
50          }
51        
52      
53    
54  
55    
56      
57    
58      
59        
60          dynamicSellingPlansMap['3594158254'] = {
61            name: '20% off this order, 10% off next orders',
62            id: '3594158254'
63          }
64        
65      
66    
67  
68    
69      
70    
71      
72        
73          dynamicSellingPlansMap['3594158254'] = {
74            name: '20% off this order, 10% off next orders',
75            id: '3594158254'
76          }
77        
78      
79    
80  
81    
82      
83    
84      
85        
86          dynamicSellingPlansMap['3594158254'] = {
87            name: '20% off this order, 10% off next orders',
88            id: '3594158254'
89          }
90        
91      
92    
93  
94    
95      
96    
97      
98        
99          dynamicSellingPlansMap['3594158254'] = {
100            name: '20% off this order, 10% off next orders',
101            id: '3594158254'
102          }
103        
104      
105    
106  
107    
108      
109    
110      
111        
112          dynamicSellingPlansMap['3594158254'] = {
113            name: '20% off this order, 10% off next orders',
114            id: '3594158254'
115          }
116        
117      
118    
119  
120    
121  
122    
123      
124        
125          dynamicSellingPlansMap['3594158254'] = {
126            name: '20% off this order, 10% off next orders',
127            id: '3594158254'
128          }
129        
130      
131    
132  
133    
134      
135        
136          dynamicSellingPlansMap['3594158254'] = {
137            name: '20% off this order, 10% off next orders',
138            id: '3594158254'
139          }
140        
141      
142    
143  
144    
145      
146    
147      
148        
149          dynamicSellingPlansMap['3594158254'] = {
150            name: '20% off this order, 10% off next orders',
151            id: '3594158254'
152          }
153        
154      
155    
156  
157    
158      
159        
160          dynamicSellingPlansMap['3594158254'] = {
161            name: '20% off this order, 10% off next orders',
162            id: '3594158254'
163          }
164        
165      
166    
167  
168
169  const dynamicSellingPlansList = Object.values(dynamicSellingPlansMap);
170
171  const sbuOnlyClass = "sbu-only";
172  const hideDynamicOptions = (dynamicSellingPlans) => {
173    for (const dynamicSellingPlan of dynamicSellingPlans) {
174      const dynamicIdOptions = document.querySelectorAll(
175        `option[value='${dynamicSellingPlan.id}']`
176      );
177      const dynamicNameOptions = document.querySelectorAll(
178        `option[value='${dynamicSellingPlan.name}']`
179      );
180  
181      [...dynamicIdOptions, ...dynamicNameOptions].forEach((dynamicOption) => {
182        let selectParent = dynamicOption;
183        while (selectParent && selectParent.tagName !== "SELECT") {
184          selectParent = selectParent.parentElement;
185        }
186        if (selectParent.classList.contains(sbuOnlyClass)) {
187          selectParent.disabled = true;
188          return;
189        }
190        if (selectParent?.value === dynamicOption?.value) {
191          const allOptions = selectParent.querySelectorAll("option");
192          allOptions.forEach((opt) => {
193            if (opt.value === dynamicOption.value) {
194              opt.innerText = "Based on usage";
195            } else {
196              opt.remove();
197            }
198          });
199          selectParent.disabled = true;
200          selectParent.classList.add(sbuOnlyClass);
201        } else {
202          dynamicOption.remove();
203        }
204      });
205    }
206  };
207
208  const setCartChangeListeners = (dynamicSellingPlans) => {
209    const values = [];
210    dynamicSellingPlans.forEach((plan) => {
211      values.push(plan.id);
212      values.push(plan.name);
213    });
214  
215    const observer = new MutationObserver((mutations) => {
216      observer.disconnect();
217      mutations.forEach((mutation) => {
218        if (mutation.type === "childList") {
219          if (!values.includes(mutation.target.value)) {
220            hideDynamicOptions(dynamicSellingPlans);
221          }
222        }
223      });
224  
225      observer.observe(document.body, {
226        childList: true,
227        subtree: true,
228      });
229    });
230  
231    observer.observe(document.body, {
232      childList: true,
233      subtree: true,
234    });
235  };
236
237  if (dynamicSellingPlansList.length) {
238    document.addEventListener("DOMContentLoaded", function() {
239      hideDynamicOptions(dynamicSellingPlansList);
240      setCartChangeListeners(dynamicSellingPlansList);
241    });
242  }
243</script>
243
244
245
246<!doctype html>
247<html class="no-js" lang="en">
248  <head>
249    
249<script
250      shopify_url="vashon-coffee-company.myshopify.com"
251      shopify_data="{&quot;first_name&quot;:null,&quot;address1&quot;:&quot;15315 82nd Place Southwest&quot;,&quot;phone&quot;:&quot;2065674403&quot;,&quot;city&quot;:&quot;Vashon&quot;,&quot;zip&quot;:&quot;98070&quot;,&quot;province&quot;:&quot;Washington&quot;,&quot;country&quot;:&quot;United States&quot;,&quot;last_name&quot;:null,&quot;address2&quot;:&quot;&quot;,&quot;company&quot;:&quot;Vashon Coffee Company&quot;,&quot;latitude&quot;:47.467766,&quot;longitude&quot;:-122.438223,&quot;name&quot;:&quot;&quot;,&quot;country_code&quot;:&quot;US&quot;,&quot;province_code&quot;:&quot;WA&quot;}"
252      defer="defer"
253      src="https://assets.entanglecommerce.com/google-review-assets/gr-extension.min.js"
254    ></script>
254
255    <link
256      href="https://assets.entanglecommerce.com/google-review-assets/gr-extension.min.css"
257      rel="stylesheet"
258      type="text/css"
259    >
260    <meta charset="utf-8">
261    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
262    <meta name="viewport" content="width=device-width,initial-scale=1">
263    <meta name="theme-color" content="#111111">
264    <link rel="canonical" href="https://blossomcoffeeroasters.com/products/rwanda-rulindo-murambi"><link rel="shortcut icon" href="//blossomcoffeeroasters.com/cdn/shop/files/Blossom_Bee_PNG_32x32.png?v=1641836754" type="image/png"><title>Rwanda - Rulindo Murambi - Washed
265&ndash; Blossom Coffee Roasters
266</title>
267
268<meta name="description" content="This lot of Rulindo Murambi was grown by more than 170 family owned farms in Rwanda&#39;s Gatsibo district."><meta property="og:site_name" content="Blossom Coffee Roasters">
269  <meta property="og:url" content="https://blossomcoffeeroasters.com/products/rwanda-rulindo-murambi">
270  <meta property="og:title" content="Rwanda - Rulindo Murambi - Washed">
271  <meta property="og:type" content="product">
272  <meta property="og:description" content="This lot of Rulindo Murambi was grown by more than 170 family owned farms in Rwanda&#39;s Gatsibo district."><meta property="og:image" content="http://blossomcoffeeroasters.com/cdn/shop/files/Rwanda_Rulindo_Washed_1200x1200.jpg?v=1788888722"><meta property="og:image" content="http://blossomcoffeeroasters.com/cdn/shop/files/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53_1200x1200.jpg?v=1788888722"><meta property="og:image" content="http://blossomcoffeeroasters.com/cdn/shop/files/Rwanda-Rulindo-Murambi1_1200x1200.jpg?v=1787433962">
273  <meta property="og:image:secure_url" content="https://blossomcoffeeroasters.com/cdn/shop/files/Rwanda_Rulindo_Washed_1200x1200.jpg?v=1788888722"><meta property="og:image:secure_url" content="https://blossomcoffeeroasters.com/cdn/shop/files/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53_1200x1200.jpg?v=1788888722"><meta property="og:image:secure_url" content="https://blossomcoffeeroasters.com/cdn/shop/files/Rwanda-Rulindo-Murambi1_1200x1200.jpg?v=1787433962">
274  <meta name="twitter:site" content="@">
275  <meta name="twitter:card" content="summary_large_image">
276  <meta name="twitter:title" content="Rwanda - Rulindo Murambi - Washed">
277  <meta name="twitter:description" content="This lot of Rulindo Murambi was grown by more than 170 family owned farms in Rwanda&#39;s Gatsibo district.">
278
279
280    <style data-shopify>
281  @font-face {
282  font-family: Lato;
283  font-weight: 400;
284  font-style: normal;
285  src: url("//blossomcoffeeroasters.com/cdn/fonts/lato/lato_n4.c3b93d431f0091c8be23185e15c9d1fee1e971c5.woff2") format("woff2"),
286       url("//blossomcoffeeroasters.com/cdn/fonts/lato/lato_n4.d5c00c781efb195594fd2fd4ad04f7882949e327.woff") format("woff");
287}
288
289  @font-face {
290  font-family: Figtree;
291  font-weight: 400;
292  font-style: normal;
293  src: url("//blossomcoffeeroasters.com/cdn/fonts/figtree/figtree_n4.3c0838aba1701047e60be6a99a1b0a40ce9b8419.woff2") format("woff2"),
294       url("//blossomcoffeeroasters.com/cdn/fonts/figtree/figtree_n4.c0575d1db21fc3821f17fd6617d3dee552312137.woff") format("woff");
295}
296
297
298  @font-face {
299  font-family: Figtree;
300  font-weight: 700;
301  font-style: normal;
302  src: url("//blossomcoffeeroasters.com/cdn/fonts/figtree/figtree_n7.2fd9bfe01586148e644724096c9d75e8c7a90e55.woff2") format("woff2"),
303       url("//blossomcoffeeroasters.com/cdn/fonts/figtree/figtree_n7.ea05de92d862f9594794ab281c4c3a67501ef5fc.woff") format("woff");
304}
305
306  @font-face {
307  font-family: Figtree;
308  font-weight: 400;
309  font-style: italic;
310  src: url("//blossomcoffeeroasters.com/cdn/fonts/figtree/figtree_i4.89f7a4275c064845c304a4cf8a4a586060656db2.woff2") format("woff2"),
311       url("//blossomcoffeeroasters.com/cdn/fonts/figtree/figtree_i4.6f955aaaafc55a22ffc1f32ecf3756859a5ad3e2.woff") format("woff");
312}
313
314  @font-face {
315  font-family: Figtree;
316  font-weight: 700;
317  font-style: italic;
318  src: url("//blossomcoffeeroasters.com/cdn/fonts/figtree/figtree_i7.06add7096a6f2ab742e09ec7e498115904eda1fe.woff2") format("woff2"),
319       url("//blossomcoffeeroasters.com/cdn/fonts/figtree/figtree_i7.ee584b5fcaccdbb5518c0228158941f8df81b101.woff") format("woff");
320}
321
322</style>
323
324    <link href="//blossomcoffeeroasters.com/cdn/shop/t/18/assets/theme.css?v=151153970120426123601753825282" rel="stylesheet" type="text/css" media="all" />
325<style data-shopify>
326  :root {
327    --typeHeaderPrimary: Lato;
328    --typeHeaderFallback: sans-serif;
329    --typeHeaderSize: 35px;
330    --typeHeaderWeight: 400;
331    --typeHeaderLineHeight: 1.2;
332    --typeHeaderSpacing: 0.0em;
333
334    --typeBasePrimary:Figtree;
335    --typeBaseFallback:sans-serif;
336    --typeBaseSize: 14px;
337    --typeBaseWeight: 400;
338    --typeBaseLineHeight: 1.6;
339    --typeBaseSpacing: 0.025em;
340
341    --iconWeight: 4px;
342    --iconLinecaps: miter;
343  }
344
345  
346.collection-hero__content:before,
347  .hero__image-wrapper:before,
348  .hero__media:before {
349    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.0) 0%, rgba(0, 0, 0, 0.0) 40%, rgba(0, 0, 0, 0.62) 100%);
350  }
351
352  .skrim__item-content .skrim__overlay:after {
353    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.0) 30%, rgba(0, 0, 0, 0.62) 100%);
354  }
355</style>
356<script
357      shopify_url="vashon-coffee-company.myshopify.com"
358      shopify_data="{&quot;first_name&quot;:null,&quot;address1&quot;:&quot;15315 82nd Place Southwest&quot;,&quot;phone&quot;:&quot;2065674403&quot;,&quot;city&quot;:&quot;Vashon&quot;,&quot;zip&quot;:&quot;98070&quot;,&quot;province&quot;:&quot;Washington&quot;,&quot;country&quot;:&quot;United States&quot;,&quot;last_name&quot;:null,&quot;address2&quot;:&quot;&quot;,&quot;company&quot;:&quot;Vashon Coffee Company&quot;,&quot;latitude&quot;:47.467766,&quot;longitude&quot;:-122.438223,&quot;name&quot;:&quot;&quot;,&quot;country_code&quot;:&quot;US&quot;,&quot;province_code&quot;:&quot;WA&quot;}"
359      defer="defer"
360      src="https://assets.entanglecommerce.com/google-review-assets/gr-extension.min.js"
361    ></script>
361
362    <link
363      href="https://assets.entanglecommerce.com/google-review-assets/gr-extension.min.css"
364      rel="stylesheet"
365      type="text/css"
366    >
367
368    
368<script>
369      document.documentElement.className = document.documentElement.className.replace('no-js', 'js');
370
371      window.theme = window.theme || {};
372      theme.routes = {
373        cart: "/cart",
374        cartAdd: "/cart/add.js",
375        cartChange: "/cart/change"
376      };
377      theme.strings = {
378        soldOut: "Sold Out",
379        unavailable: "Unavailable",
380        stockLabel: "[count] in stock",
381        willNotShipUntil: "Will not ship until [date]",
382        willBeInStockAfter: "Will be in stock after [date]",
383        waitingForStock: "Inventory on the way",
384        cartSavings: "You're saving [savings]",
385        cartEmpty: "Your cart is currently empty.",
386        cartTermsConfirmation: "You must agree with the terms and conditions of sales to check out"
387      };
388      theme.settings = {
389        dynamicVariantsEnable: true,
390        dynamicVariantType: "button",
391        cartType: "drawer",
392        moneyFormat: "${{amount}}",
393        predictiveSearch: true,
394        predictiveSearchType: "product,article,page,collection",
395        inventoryThreshold: 10,
396        quickView: false,
397        themeName: 'Motion',
398        themeVersion: "5.1.4"
399      };
400    </script>
400
401
402    
402<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
402<meta name="google-site-verification" content="mkBzb8v-MX16texCn7ydTUSUXVLc-lfcKMhSy6w7RBw">
403<meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/2337869/digital_wallets/dialog">
404<meta id="in-context-paypal-metadata" data-shop-id="2337869" data-venmo-supported="false" data-environment="production" data-locale="en_US" data-paypal-v4="true" data-currency="USD">
405<link rel="ucp" href="/.well-known/ucp" version="2026-08-25"><link rel="buy" href="/cart/48930908635310:1?ucp/version=2026-08-25&amp;context/payment/0/handler=dev.shopify.shop_pay" payment="dev.shopify.shop_pay com.google.pay dev.shopify.card"><link rel="alternate" type="application/json+oembed" href="https://blossomcoffeeroasters.com/products/rwanda-rulindo-murambi.oembed">
406<script async="async" src="/checkouts/internal/preloads.js?locale=en-US"></script>
406
407<link rel="preconnect" href="https://shop.app" crossorigin="anonymous">
408<script async="async" src="https://shop.app/checkouts/internal/preloads.js?locale=en-US&shop_id=2337869" crossorigin="anonymous"></script>
vendor: 1 bytes, line 408
408
409<script id="apple-pay-shop-capabilities" type="application/json">{"shopId":2337869,"countryCode":"US","currencyCode":"USD","merchantCapabilities":["supports3DS"],"merchantId":"gid:\/\/shopify\/Shop\/2337869","merchantName":"Blossom Coffee Roasters","requiredBillingContactFields":["postalAddress","email"],"requiredShippingContactFields":["postalAddress","email"],"shippingType":"shipping","supportedNetworks":["visa","masterCard","discover","amex","elo","jcb"],"total":{"type":"pending","label":"Blossom Coffee Roasters","amount":"1.00"},"shopifyPaymentsEnabled":true,"supportsSubscriptions":true}</script>
vendor: 1 bytes, line 409
409
410<script id="shopify-features" type="application/json">{"accessToken":"fccb586a957e17c0fabf8fe09f843265","betas":["rich-media-storefront-analytics"],"domain":"blossomcoffeeroasters.com","predictiveSearch":true,"shopId":2337869,"locale":"en"}</script>
vendor: 1 bytes, line 410
410
411<script>var Shopify = Shopify || {};
412Shopify.shop = "vashon-coffee-company.myshopify.com";
413Shopify.locale = "en";
414Shopify.currency = {"active":"USD","rate":"1.0"};
415Shopify.country = "US";
416Shopify.theme = {"name":"Motion-w-BoldCode | July.29.25","id":145191108782,"schema_name":"Motion","schema_version":"5.1.4","theme_store_id":847,"role":"main"};
417Shopify.theme.handle = "null";
418Shopify.theme.style = {"id":null,"handle":null};
419Shopify.cdnHost = "blossomcoffeeroasters.com/cdn";
420Shopify.routes = Shopify.routes || {};
421Shopify.routes.root = "/";
422Shopify.shopJsCdnBaseUrl = "https://cdn.shopify.com/shopifycloud/shop-js";
423Shopify.SignInWithShop = Shopify.SignInWithShop || {};
424Shopify.SignInWithShop.User = Shopify.SignInWithShop.User || {};
425Shopify.SignInWithShop.User.recognized = false;</script>
vendor: 1 bytes, line 425
425
426<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
vendor: 1 bytes, line 426
426
427<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 427
427
428<script>
429  window.ShopifyPay = window.ShopifyPay || {};
430  window.ShopifyPay.apiHost = "shop.app\/pay";
431  window.ShopifyPay.redirectState = null;
432</script>
vendor: 1 bytes, line 432
432
433<script>
434  window.Shopify = window.Shopify || {};
435  window.Shopify.SignInWithShop = window.Shopify.SignInWithShop || {};
436  window.Shopify.SignInWithShop.assetMetrics = { sampleRate: 0.25 };
437  window.Shopify.SignInWithShop.eligible = true;
438</script>
vendor: 1 bytes, line 438
438
439<script id="shop-js-analytics" type="application/json">{"pageType":"product"}</script>
vendor: 1 bytes, line 439
439
440<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 440
440
441<script type="module">
442  await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js");
443
444  window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true});
445
446</script>
vendor: 1 bytes, line 446
446
447<script>
448  window.Shopify = window.Shopify || {};
449  if (!window.Shopify.featureAssets) window.Shopify.featureAssets = {};
450  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"]};
451</script>
vendor: 1 bytes, line 451
451
452<script>(function() {
453  var isLoaded = false;
454  function asyncLoad() {
455    if (isLoaded) return;
456    isLoaded = true;
457    var urls = ["https:\/\/chimpstatic.com\/mcjs-connected\/js\/users\/759893abfa2829620780f4d36\/8de35c4a54870a4558cd05fc6.js?shop=vashon-coffee-company.myshopify.com","\/\/cdn.shopify.com\/proxy\/1c9f9144e0132b30b446e2c236a7671a232a0b32556b62522c2a735f4670eba8\/shopify-public.herokuapp.com\/widget?shop=vashon-coffee-company.myshopify.com\u0026sp-cache-control=cHVibGljLCBtYXgtYWdlPTkwMA","https:\/\/cdn.hextom.com\/js\/quickannouncementbar.js?shop=vashon-coffee-company.myshopify.com"];
458    for (var i = 0; i < urls.length; i++) {
459      var s = document.createElement('script');
460      s.type = 'text/javascript';
461      s.async = true;
462      s.src = urls[i];
463      var x = document.getElementsByTagName('script')[0];
464      x.parentNode.insertBefore(s, x);
465    }
466  };
467  if(window.attachEvent) {
468    window.attachEvent('onload', asyncLoad);
469  } else {
470    window.addEventListener('load', asyncLoad, false);
471  }
472})();</script>
vendor: 1 bytes, line 472
472
473<script id="__st">var __st={"a":2337869,"offset":-25200,"reqid":"9311fcdd-7d6d-4d63-a1a6-f3e22e608cbd-1791504064","pageurl":"blossomcoffeeroasters.com\/products\/rwanda-rulindo-murambi","u":"59de8c01be64","p":"product","rtyp":"product","rid":9218078736558};</script>
vendor: 1 bytes, line 473
473
474<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
vendor: 1 bytes, line 474
474
475<script id="captcha-bootstrap">!function(){'use strict';const t='contact',e='account',n='new_comment',o=[[t,t],['blogs',n],['comments',n],[t,'customer']],c=[[e,'customer_login'],[e,'guest_login'],[e,'recover_customer_password'],[e,'create_customer']],r=t=>t.map((([t,e])=>`form[action*='/${t}']:not([data-nocaptcha='true']) input[name='form_type'][value='${e}']`)).join(','),a=t=>()=>t?[...document.querySelectorAll(t)].map((t=>t.form)):[];function s(){const t=[...o],e=r(t);return a(e)}const i='password',u='form_key',d=['recaptcha-v3-token','g-recaptcha-response','h-captcha-response',i],f=()=>{try{return window.sessionStorage}catch{return}},m='__shopify_v',_=t=>t.elements[u];function p(t,e,n=!1){try{const o=window.sessionStorage,c=JSON.parse(o.getItem(e)),{data:r}=function(t){const{data:e,action:n}=t;return t[m]||n?{data:e,action:n}:{data:t,action:n}}(c);for(const[e,n]of Object.entries(r))t.elements[e]&&(t.elements[e].value=n);n&&o.removeItem(e)}catch(o){console.error('form repopulation failed',{error:o})}}const l='form_type',E='cptcha';function T(t){t.dataset[E]=!0}const w=window,h=w.document,L='Shopify',v='ce_forms',y='captcha';let A=!1;((t,e)=>{const n=(g='f06e6c50-85a8-45c8-87d0-21a2b65856fe',I='https://cdn.shopify.com/shopifycloud/storefront-forms-hcaptcha/ce_storefront_forms_captcha_hcaptcha.v1.5.3.iife.js',D={infoText:'Protected by hCaptcha',privacyText:'Privacy',termsText:'Terms'},(t,e,n)=>{const o=w[L][v],c=o.bindForm;if(c)return c(t,g,e,D).then(n);var r;o.q.push([[t,g,e,D],n]),r=I,A||(h.body.append(Object.assign(h.createElement('script'),{id:'captcha-provider',async:!0,src:r})),A=!0)});var g,I,D;w[L]=w[L]||{},w[L][v]=w[L][v]||{},w[L][v].q=[],w[L][y]=w[L][y]||{},w[L][y].protect=function(t,e){n(t,void 0,e),T(t)},Object.freeze(w[L][y]),function(t,e,n,w,h,L){const[v,y,A,g]=function(t,e,n){const i=e?o:[],u=t?c:[],d=[...i,...u],f=r(d),m=r(i),_=r(d.filter((([t,e])=>n.includes(e))));return[a(f),a(m),a(_),s()]}(w,h,L),I=t=>{const e=t.target;return e instanceof HTMLFormElement?e:e&&e.form},D=t=>v().includes(t);t.addEventListener('submit',(t=>{const e=I(t);if(!e)return;const n=D(e)&&!e.dataset.hcaptchaBound&&!e.dataset.recaptchaBound,o=_(e),c=g().includes(e)&&(!o||!o.value);(n||c)&&t.preventDefault(),c&&!n&&(function(t){try{if(!f())return;!function(t){const e=f();if(!e)return;const n=_(t);if(!n)return;const o=n.value;o&&e.removeItem(o)}(t);const e=Array.from(Array(32),(()=>Math.random().toString(36)[2])).join('');!function(t,e){_(t)||t.append(Object.assign(document.createElement('input'),{type:'hidden',name:u})),t.elements[u].value=e}(t,e),function(t,e){const n=f();if(!n)return;const o=[...t.querySelectorAll(`input[type='${i}']`)].map((({name:t})=>t)),c=[...d,...o],r={};for(const[a,s]of new FormData(t).entries())c.includes(a)||(r[a]=s);n.setItem(e,JSON.stringify({[m]:1,action:t.action,data:r}))}(t,e)}catch(e){console.error('failed to persist form',e)}}(e),e.submit())}));const S=(t,e)=>{t&&!t.dataset[E]&&(n(t,e.some((e=>e===t))),T(t))};for(const o of['focusin','change'])t.addEventListener(o,(t=>{const e=I(t);D(e)&&S(e,y())}));const B=e.get('form_key'),M=e.get(l),P=B&&M;t.addEventListener('DOMContentLoaded',(()=>{const t=y();if(P)for(const e of t)e.elements[l].value===M&&p(e,B);[...new Set([...A(),...v().filter((t=>'true'===t.dataset.shopifyCaptcha))])].forEach((e=>S(e,t)))}))}(h,new URLSearchParams(w.location.search),n,t,e,['guest_login'])})(!0,!0)}();</script>
vendor: 1 bytes, line 475
475
476<script integrity="sha256-JjoPp5ZfB1sSAs5SQaol1x1GgvveM+BgmRzyDexInEQ=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//blossomcoffeeroasters.com/cdn/shopifycloud/storefront/assets/storefront/load_feature-1bd60354.js" crossorigin="anonymous"></script>
vendor: 1 bytes, line 476
476
477<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 = "//blossomcoffeeroasters.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>
477<script crossorigin="anonymous" defer="defer" src="//blossomcoffeeroasters.com/cdn/shopifycloud/storefront/assets/shopify_pay/storefront-f0e26bdf.js?v=20250812"></script>
vendor: 1 bytes, line 477
477
478<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 478
478
479<script>
480  window.Shopify = window.Shopify || {};
481  window.Shopify.MCP = window.Shopify.MCP || {};
482  window.Shopify.MCP.enabled = true;
483  window.Shopify.MCP.shop = "vashon-coffee-company.myshopify.com";
484  window.Shopify.MCP.mcpEndpoint = "https:\/\/blossomcoffeeroasters.com\/api\/mcp";
485  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?\"\nSet policy_types to also get the store's written policies (full text and URL).\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."},"policy_types":{"type":"array","items":{"type":"string","enum":["refund","shipping","privacy","terms_of_service","terms_of_sale","subscription","legal_notice","contact"]},"description":"Policy kinds to fetch, chosen from the user's question — e.g. [\"refund\"] for returns\/exchanges\/damaged items, [\"contact\"] for phone\/hours\/address. Include every kind the question touches. Omit it to get only FAQ answers."}},"required":["query"]}}];
486</script>
vendor: 1 bytes, line 486
486
487<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("\/\/blossomcoffeeroasters.com\/cdn\/shopifycloud\/storefront\/assets\/storefront\/webmcp-c6b62ece.js","sha256-ke4DDuBjdvea3vxLWxHc9E9nq8zihuG4IfYEGbb77ys=");})();
488</script>
vendor: 1 bytes, line 488
488
489<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://blossomcoffeeroasters.com/cdn/shopifycloud/portable-wallets/latest/portable-wallets.en.js",t.type="module",document.head.appendChild(t)}};
490</script>
vendor: 1 bytes, line 490
490
491<script data-source-attribution="shopify.dynamic_checkout.buyer_consent">
492  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);
493</script>
vendor: 1 bytes, line 493
493
494<script>
495  function portableWalletsCleanup(e){e&&e.src&&console.error("Failed to load portable wallets script "+e.src);var t=document.querySelectorAll("shopify-accelerated-checkout .shopify-payment-button__skeleton, shopify-accelerated-checkout-cart .wallet-cart-button__skeleton"),e=document.getElementById("shopify-buyer-consent");for(let e=0;e<t.length;e++)t[e].remove();e&&e.remove()}function portableWalletsNotLoadedAsModule(e){e instanceof ErrorEvent&&"string"==typeof e.message&&e.message.includes("import.meta")&&"string"==typeof e.filename&&e.filename.includes("portable-wallets")&&(window.removeEventListener("error",portableWalletsNotLoadedAsModule),window.Shopify.PaymentButton.failedToLoad=e,"loading"===document.readyState?document.addEventListener("DOMContentLoaded",window.Shopify.PaymentButton.init):window.Shopify.PaymentButton.init())}window.addEventListener("error",portableWalletsNotLoadedAsModule);
496</script>
496
497
498<script type="module" src="https://blossomcoffeeroasters.com/cdn/shopifycloud/portable-wallets/latest/portable-wallets.en.js" onError="portableWalletsCleanup(this)" crossorigin="anonymous"></script>
vendor: 1 bytes, line 498
498
499<script nomodule>
500  document.addEventListener("DOMContentLoaded", portableWalletsCleanup);
501</script>
501
502
503<link id="shopify-accelerated-checkout-styles" rel="stylesheet" media="screen" href="https://blossomcoffeeroasters.com/cdn/shopifycloud/portable-wallets/latest/accelerated-checkout-backwards-compat.css" crossorigin="anonymous">
504<style id="shopify-accelerated-checkout-cart">
505        #shopify-buyer-consent {
506  margin-top: 1em;
507  display: inline-block;
508  width: 100%;
509}
510
511#shopify-buyer-consent.hidden {
512  display: none;
513}
514
515#shopify-subscription-policy-button {
516  background: none;
517  border: none;
518  padding: 0;
519  text-decoration: underline;
520  font-size: inherit;
521  cursor: pointer;
522}
523
524#shopify-subscription-policy-button::before {
525  box-shadow: none;
526}
527
528      </style>
529
530<script id="shopify-cfh-end">window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
530
531
532    
532<script src="//blossomcoffeeroasters.com/cdn/shop/t/18/assets/vendor-scripts-v9.js" defer="defer"></script>
532<script src="//blossomcoffeeroasters.com/cdn/shop/t/18/assets/theme.js?v=100448733424141412851753820268" defer="defer"></script>
532<script src="//blossomcoffeeroasters.com/cdn/shop/t/18/assets/bsub.js?v=158520562351594542841753820268" type="text/javascript"></script>
532
533    <link href="//blossomcoffeeroasters.com/cdn/shop/t/18/assets/bsub.css?v=123080243802390461061753820268" rel="stylesheet" type="text/css" media="all" />
534  <!-- BEGIN app block: shopify://apps/bold-subscriptions/blocks/bsub-embed/9ceb49f0-5fe5-4b5e-943d-f8af8985167d -->
535<script id="bold-subscriptions-app-embed-script" type="text/javascript" defer>
536    
537        
538            if (window.location.href.includes('pages/manage-subscriptions')) {
539                const queryParams = new URLSearchParams(window.location.search);
540                if(queryParams.has('deep_link') && queryParams.get('deep_link') === 'upsell' &&
541                    queryParams.has('type') && queryParams.get('type') === 'upcoming-order-email'
542                ) {
543                    window.location.href=`/account/login?${queryParams.toString()}&from_msp=true`;
544                }
545            } else if (window.location.href.includes('/account/login')) {
546                document.addEventListener('DOMContentLoaded', function() {
547                    const queryParams = new URLSearchParams(window.location.search);
548                    if(queryParams.has('from_msp')) {
549                        queryParams.delete('from_msp');
550
551                        let form = document.querySelector("#customer_login");
552
553                        if(form) {
554                            let input = document.createElement('input');
555                            input.type = 'hidden';
556                            input.name = 'return_to';
557                            input.value = `https://blossomcoffeeroasters.com/pages/manage-subscriptions?${queryParams.toString()}`;
558
559                            form.appendChild(input);
560                        }
561                    }
562                });
563            }
564        
565    
566
567    window.BOLD = window.BOLD || {};
568    window.BOLD.subscriptions = window.BOLD.subscriptions || {};
569    window.BOLD.subscriptions.config = window.BOLD.subscriptions.config || {};
570    window.BOLD.subscriptions.config.isAppEmbedEnabled = true;
571    window.BOLD.subscriptions.classes = window.BOLD.subscriptions.classes || {};
572    window.BOLD.subscriptions.patches = window.BOLD.subscriptions.patches || {};
573    window.BOLD.subscriptions.patches.maxCheckoutRetries = window.BOLD.subscriptions.patches.maxCheckoutRetries || 200;
574    window.BOLD.subscriptions.patches.currentCheckoutRetries = window.BOLD.subscriptions.patches.currentCheckoutRetries || 0;
575    window.BOLD.subscriptions.patches.maxCashierPatchAttempts = window.BOLD.subscriptions.patches.maxCashierPatchAttempts || 200;
576    window.BOLD.subscriptions.patches.currentCashierPatchAttempts = window.BOLD.subscriptions.patches.currentCashierPatchAttempts || 0;
577    window.BOLD.subscriptions.config.platform = 'shopify';
578    window.BOLD.subscriptions.config.shopDomain = 'vashon-coffee-company.myshopify.com';
579    window.BOLD.subscriptions.config.customDomain = 'blossomcoffeeroasters.com';
580    window.BOLD.subscriptions.config.shopIdentifier = '2337869';
581    window.BOLD.subscriptions.config.cashierUrl = 'https://cashier.boldcommerce.com';
582    window.BOLD.subscriptions.config.boldAPIBase = 'https://app-api.boldapps.net/';
583    window.BOLD.subscriptions.config.cashierApplicationUUID = '2e6a2bbc-b12b-4255-abdf-a02af85c0d4e';
584    window.BOLD.subscriptions.config.appUrl = 'https://sub.boldapps.net';
585    window.BOLD.subscriptions.config.currencyCode = 'USD';
586    window.BOLD.subscriptions.config.checkoutType = 'shopify';
587    window.BOLD.subscriptions.config.currencyFormat = "$\u0026#123;\u0026#123;amount}}";
588    window.BOLD.subscriptions.config.shopCurrencies = [{"id":7673,"currency":"USD","currency_format":"$\u0026#123;\u0026#123;amount}}","created_at":"2024-10-17 00:21:39","updated_at":"2024-10-17 00:21:39"}];
589    window.BOLD.subscriptions.config.shopSettings = {"allow_msp_cancellation":true,"allow_msp_prepaid_renewal":true,"customer_can_pause_subscription":true,"customer_can_change_next_order_date":true,"customer_can_change_order_frequency":true,"customer_can_create_an_additional_order":false,"customer_can_use_passwordless_login":false,"customer_passwordless_login_redirect":false,"customer_can_add_products_to_existing_subscriptions":true,"customer_can_reactivate_subscription":true,"customer_can_reactivate_subscription_with_deleted_products":false,"show_currency_code":true,"stored_payment_method_policy":"required","customer_portal_path":"pages\/manage-subscriptions","display_only_subscription_products":false};
590    window.BOLD.subscriptions.config.customerLoginPath = null;
591    window.BOLD.subscriptions.config.isPrepaidEnabled = window.BOLD.subscriptions.config.isPrepaidEnabled || true;
592    window.BOLD.subscriptions.config.loadSubscriptionGroupFrom = 'default';
593    window.BOLD.subscriptions.config.loadSubscriptionGroupFromTypes = "default";
594    window.BOLD.subscriptions.config.cashierPluginOnlyMode = window.BOLD.subscriptions.config.cashierPluginOnlyMode || false;
595    if (window.BOLD.subscriptions.config.waitForCheckoutLoader === undefined) {
596        window.BOLD.subscriptions.config.waitForCheckoutLoader = true;
597    }
598
599    window.BOLD.subscriptions.config.addToCartFormSelectors = window.BOLD.subscriptions.config.addToCartFormSelectors || [];
600    window.BOLD.subscriptions.config.addToCartButtonSelectors = window.BOLD.subscriptions.config.addToCartButtonSelectors || [];
601    window.BOLD.subscriptions.config.widgetInsertBeforeSelectors = window.BOLD.subscriptions.config.widgetInsertBeforeSelectors || [];
602    window.BOLD.subscriptions.config.quickAddToCartButtonSelectors = window.BOLD.subscriptions.config.quickAddToCartButtonSelectors || [];
603    window.BOLD.subscriptions.config.cartElementSelectors = window.BOLD.subscriptions.config.cartElementSelectors || [];
604    window.BOLD.subscriptions.config.cartTotalElementSelectors = window.BOLD.subscriptions.config.cartTotalElementSelectors || [];
605    window.BOLD.subscriptions.config.lineItemSelectors = window.BOLD.subscriptions.config.lineItemSelectors || [];
606    window.BOLD.subscriptions.config.lineItemNameSelectors = window.BOLD.subscriptions.config.lineItemNameSelectors || [];
607    window.BOLD.subscriptions.config.checkoutButtonSelectors = window.BOLD.subscriptions.config.checkoutButtonSelectors || [];
608
609    window.BOLD.subscriptions.config.featureFlags = window.BOLD.subscriptions.config.featureFlagOverrides || ["BE-2298-Support-Variant-Selections-In-Sub-Groups","BE-6925-remove-bold-error-code-from-error-message","BE-8664-default-address-source-bold","BE-9502-add-logs-to-investigate-infinite-loop","BE-6695-improve-subs-onboarding","BE-10096-list-deleted-variants","BE-10183-customer-portal-paginates-products","BE-10178-suppress-dup-inventory-failure-emails","BE-9073-reactivate-subscription-setting"];
610    window.BOLD.subscriptions.config.subscriptionProcessingFrequency = '60';
611    window.BOLD.subscriptions.config.requireMSPInitialLoadingMessage = true;
612    window.BOLD.subscriptions.data = window.BOLD.subscriptions.data || {};
613
614    // Interval text markup template
615    window.BOLD.subscriptions.config.lineItemPropertyListSelectors = window.BOLD.subscriptions.config.lineItemPropertyListSelectors || [];
616    window.BOLD.subscriptions.config.lineItemPropertyListSelectors.push('dl.definitionList');
617    window.BOLD.subscriptions.config.lineItemPropertyListTemplate = window.BOLD.subscriptions.config.lineItemPropertyListTemplate || '<dl class="definitionList"></dl>';
618    window.BOLD.subscriptions.config.lineItemPropertyTemplate = window.BOLD.subscriptions.config.lineItemPropertyTemplate || '<dt class="definitionList-key">{{key}}:</dt><dd class="definitionList-value">{{value}}</dd>';
619
620    // Discount text markup template
621    window.BOLD.subscriptions.config.discountItemTemplate = window.BOLD.subscriptions.config.discountItemTemplate || '<div class="bold-subscriptions-discount"><div class="bold-subscriptions-discount__details">{{details}}</div><div class="bold-subscriptions-discount__total">{{total}}</div></div>';
622
623
624    // Constants in XMLHttpRequest are not reliable, so we will create our own
625    // reference: https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/readyState
626    window.BOLD.subscriptions.config.XMLHttpRequest = {
627        UNSENT:0,            // Client has been created. open() not called yet.
628        OPENED: 1,           // open() has been called.
629        HEADERS_RECEIVED: 2, // send() has been called, and headers and status are available.
630        LOADING: 3,          // Downloading; responseText holds partial data.
631        DONE: 4              // The operation is complete.
632    };
633
634    window.BOLD.subscriptions.config.assetBaseUrl = 'https://sub.boldapps.net';
635    if (window.localStorage && window.localStorage.getItem('boldSubscriptionsAssetBaseUrl')) {
636        window.BOLD.subscriptions.config.assetBaseUrl = window.localStorage.getItem('boldSubscriptionsAssetBaseUrl')
637    }
638
639    window.BOLD.subscriptions.data.subscriptionGroups = [];
640    if (localStorage && localStorage.getItem('boldSubscriptionsSubscriptionGroups')) {
641        window.BOLD.subscriptions.data.subscriptionGroups = JSON.parse(localStorage.getItem('boldSubscriptionsSubscriptionGroups'));
642    } else {
643        window.BOLD.subscriptions.data.subscriptionGroups = [{"id":44315,"billing_rules":[{"id":109334,"subscription_group_id":44315,"interval_name":"Monthly","billing_rule":"FREQ=MONTHLY","custom_billing_rule":""},{"id":109335,"subscription_group_id":44315,"interval_name":"Weekly","billing_rule":"FREQ=WEEKLY","custom_billing_rule":""},{"id":109336,"subscription_group_id":44315,"interval_name":"Bi-Weekly","billing_rule":"FREQ=WEEKLY;INTERVAL=2","custom_billing_rule":""}],"is_subscription_only":false,"allow_prepaid":false,"allow_dynamic_discount":false,"is_prepaid_only":false,"should_continue_prepaid":true,"continue_prepaid_type":"as_prepaid","prepaid_durations":[{"id":43785,"subscription_group_id":44315,"total_duration":1,"discount_type":"percentage","discount_value":0}],"dynamic_discounts":[{"id":6457,"subscription_group_id":44315,"order_number":3,"discount_type":"percentage","discount_value":0}],"selection_options":[{"platform_entity_id":null}],"discount_type":"no_discount","percent_discount":0,"fixed_discount":0,"can_add_to_cart":true},{"id":44316,"billing_rules":[{"id":109337,"subscription_group_id":44316,"interval_name":"Monthly","billing_rule":"FREQ=MONTHLY","custom_billing_rule":""},{"id":109338,"subscription_group_id":44316,"interval_name":"Weekly","billing_rule":"FREQ=WEEKLY","custom_billing_rule":""},{"id":109339,"subscription_group_id":44316,"interval_name":"Bi-Weekly","billing_rule":"FREQ=WEEKLY;INTERVAL=2","custom_billing_rule":""}],"is_subscription_only":false,"allow_prepaid":false,"allow_dynamic_discount":false,"is_prepaid_only":false,"should_continue_prepaid":true,"continue_prepaid_type":"as_prepaid","prepaid_durations":[{"id":43786,"subscription_group_id":44316,"total_duration":1,"discount_type":"percentage","discount_value":0}],"dynamic_discounts":[{"id":6458,"subscription_group_id":44316,"order_number":3,"discount_type":"percentage","discount_value":0}],"selection_options":[{"platform_entity_id":null}],"discount_type":"no_discount","percent_discount":0,"fixed_discount":0,"can_add_to_cart":true},{"id":44317,"billing_rules":[{"id":109340,"subscription_group_id":44317,"interval_name":"Monthly","billing_rule":"FREQ=MONTHLY","custom_billing_rule":""},{"id":109341,"subscription_group_id":44317,"interval_name":"Weekly","billing_rule":"FREQ=WEEKLY","custom_billing_rule":""},{"id":109342,"subscription_group_id":44317,"interval_name":"Bi-Weekly","billing_rule":"FREQ=WEEKLY","custom_billing_rule":""}],"is_subscription_only":false,"allow_prepaid":false,"allow_dynamic_discount":false,"is_prepaid_only":false,"should_continue_prepaid":true,"continue_prepaid_type":"as_prepaid","prepaid_durations":[{"id":43787,"subscription_group_id":44317,"total_duration":1,"discount_type":"percentage","discount_value":0}],"dynamic_discounts":[{"id":2294,"subscription_group_id":44317,"order_number":3,"discount_type":"percentage","discount_value":0}],"selection_options":[{"platform_entity_id":null}],"discount_type":"no_discount","percent_discount":0,"fixed_discount":0,"can_add_to_cart":true},{"id":45094,"billing_rules":[{"id":111675,"subscription_group_id":45094,"interval_name":"Weekly","billing_rule":"FREQ=WEEKLY","custom_billing_rule":""},{"id":111676,"subscription_group_id":45094,"interval_name":"Bi Weekly","billing_rule":"FREQ=WEEKLY","custom_billing_rule":""},{"id":111677,"subscription_group_id":45094,"interval_name":"Monthly","billing_rule":"FREQ=MONTHLY","custom_billing_rule":""}],"is_subscription_only":false,"allow_prepaid":false,"allow_dynamic_discount":false,"is_prepaid_only":false,"should_continue_prepaid":true,"continue_prepaid_type":"as_prepaid","prepaid_durations":[{"id":44570,"subscription_group_id":45094,"total_duration":1,"discount_type":"percentage","discount_value":0}],"dynamic_discounts":[{"id":1943,"subscription_group_id":45094,"order_number":3,"discount_type":"percentage","discount_value":0}],"selection_options":[{"platform_entity_id":null}],"discount_type":"no_discount","percent_discount":0,"fixed_discount":0,"can_add_to_cart":true},{"id":58659,"billing_rules":[{"id":136510,"subscription_group_id":58659,"interval_name":"Monthly","billing_rule":"FREQ=MONTHLY","custom_billing_rule":""},{"id":136511,"subscription_group_id":58659,"interval_name":"Weekly","billing_rule":"FREQ=WEEKLY","custom_billing_rule":""}
643,{"id":136512,"subscription_group_id":58659,"interval_name":"Bi-weekly","billing_rule":"FREQ=WEEKLY;INTERVAL=2","custom_billing_rule":""}],"is_subscription_only":false,"allow_prepaid":false,"allow_dynamic_discount":false,"is_prepaid_only":false,"should_continue_prepaid":true,"continue_prepaid_type":"as_prepaid","prepaid_durations":[{"id":60081,"subscription_group_id":58659,"total_duration":1,"discount_type":"percentage","discount_value":0}],"dynamic_discounts":[{"id":6574,"subscription_group_id":58659,"order_number":1,"discount_type":"percentage","discount_value":0}],"selection_options":[{"platform_entity_id":null}],"discount_type":"percentage","percent_discount":10,"fixed_discount":0,"can_add_to_cart":true},{"id":58661,"billing_rules":[{"id":136514,"subscription_group_id":58661,"interval_name":"Monthly","billing_rule":"FREQ=MONTHLY","custom_billing_rule":""},{"id":136515,"subscription_group_id":58661,"interval_name":"Bi-weekly","billing_rule":"FREQ=WEEKLY;INTERVAL=2","custom_billing_rule":""},{"id":136516,"subscription_group_id":58661,"interval_name":"Weekly","billing_rule":"FREQ=WEEKLY","custom_billing_rule":""}],"is_subscription_only":false,"allow_prepaid":false,"allow_dynamic_discount":false,"is_prepaid_only":false,"should_continue_prepaid":true,"continue_prepaid_type":"as_prepaid","prepaid_durations":[{"id":60082,"subscription_group_id":58661,"total_duration":1,"discount_type":"percentage","discount_value":0}],"dynamic_discounts":[{"id":6575,"subscription_group_id":58661,"order_number":1,"discount_type":"percentage","discount_value":0}],"selection_options":[{"platform_entity_id":null}],"discount_type":"percentage","percent_discount":10,"fixed_discount":0,"can_add_to_cart":true},{"id":58662,"billing_rules":[{"id":136517,"subscription_group_id":58662,"interval_name":"Monthly","billing_rule":"FREQ=MONTHLY","custom_billing_rule":""},{"id":136518,"subscription_group_id":58662,"interval_name":"Bi-Weekly","billing_rule":"FREQ=WEEKLY;INTERVAL=2","custom_billing_rule":""},{"id":136519,"subscription_group_id":58662,"interval_name":"Weekly","billing_rule":"FREQ=WEEKLY","custom_billing_rule":""}],"is_subscription_only":false,"allow_prepaid":false,"allow_dynamic_discount":false,"is_prepaid_only":false,"should_continue_prepaid":true,"continue_prepaid_type":"as_prepaid","prepaid_durations":[{"id":60083,"subscription_group_id":58662,"total_duration":1,"discount_type":"percentage","discount_value":0}],"dynamic_discounts":[{"id":6576,"subscription_group_id":58662,"order_number":1,"discount_type":"percentage","discount_value":0}],"selection_options":[{"platform_entity_id":null}],"discount_type":"percentage","percent_discount":10,"fixed_discount":0,"can_add_to_cart":true},{"id":58663,"billing_rules":[{"id":136520,"subscription_group_id":58663,"interval_name":"Monthly","billing_rule":"FREQ=MONTHLY","custom_billing_rule":""},{"id":136521,"subscription_group_id":58663,"interval_name":"Bi-Weekly","billing_rule":"FREQ=WEEKLY;INTERVAL=2","custom_billing_rule":""},{"id":136522,"subscription_group_id":58663,"interval_name":"Weekly","billing_rule":"FREQ=WEEKLY","custom_billing_rule":""}],"is_subscription_only":false,"allow_prepaid":false,"allow_dynamic_discount":false,"is_prepaid_only":false,"should_continue_prepaid":true,"continue_prepaid_type":"as_prepaid","prepaid_durations":[{"id":60084,"subscription_group_id":58663,"total_duration":1,"discount_type":"percentage","discount_value":0}],"dynamic_discounts":[{"id":6577,"subscription_group_id":58663,"order_number":1,"discount_type":"percentage","discount_value":0}],"selection_options":[{"platform_entity_id":null}],"discount_type":"percentage","percent_discount":10,"fixed_discount":0,"can_add_to_cart":true},{"id":58664,"billing_rules":[{"id":136523,"subscription_group_id":58664,"interval_name":"Monthly","billing_rule":"FREQ=MONTHLY","custom_billing_rule":""},{"id":136524,"subscription_group_id":58664,"interval_name":"Bi-Weekly","billing_rule":"FREQ=WEEKLY;INTERVAL=2","custom_billing_rule":""},{"id":136525,"subscription_group_id":58664,"interval_name":"Weekly","billing_rule":"FREQ=WEEKLY","custom_billing_rule":""}],"is_subscription_only":false,"allow_prepaid":false,"allow_dynamic_discount":false,"is_prepaid_only":false,"should_continue_prepaid":true,"continue_prepaid_type":"as_prepaid","prepaid_durations":[{"id":60085,"subscription_group_id":58664,"total_duration":1,"discount_type":"percentage","discount_value":0}],"dynamic_discounts":[{"id":6578,"subscription_group_id":58664,"order_number":1,"discount_type":"percentage","discount_value":0}],"selection_options":[{"platform_entity_id":null}],"discount_type":"percentage","percent_discount":10,"fixed_discount":0,"can_add_to_cart":true},{"id":58665,"billing_rules":[{"id":136526,"subscription_group_id":58665,"interval_name":"Monthly","billing_rule":"FREQ=MONTHLY","custom_billing_rule":""},{"id":136527,"subscription_group_id":58665,"interval_name":"Bi-Weekly","billing_rule":"FREQ=WEEKLY;INTERVAL=2","custom_billing_rule":""},{"id":136528,"subscription_group_id":58665,"interval_name":"Weekly","billing_rule":"FREQ=WEEKLY","custom_billing_rule":""}],"is_subscription_only":false,"allow_prepaid":false,"allow_dynamic_discount":false,"is_prepaid_only":false,"should_continue_prepaid":true,"continue_prepaid_type":"as_prepaid","prepaid_durations":[{"id":60086,"subscription_group_id":58665,"total_duration":1,"discount_type":"percentage","discount_value":0}],"dynamic_discounts":[{"id":6579,"subscription_group_id":58665,"order_number":1,"discount_type":"percentage","discount_value":0}],"selection_options":[{"platform_entity_id":null}],"discount_type":"percentage","percent_discount":10,"fixed_discount":0,"can_add_to_cart":true},{"id":58666,"billing_rules":[{"id":136529,"subscription_group_id":58666,"interval_name":"Monthly","billing_rule":"FREQ=MONTHLY","custom_billing_rule":""},{"id":136530,"subscription_group_id":58666,"interval_name":"Bi-Weekly","billing_rule":"FREQ=WEEKLY;INTERVAL=2","custom_billing_rule":""}],"is_subscription_only":false,"allow_prepaid":false,"allow_dynamic_discount":false,"is_prepaid_only":false,"should_continue_prepaid":true,"continue_prepaid_type":"as_prepaid","prepaid_durations":[{"id":60087,"subscription_group_id":58666,"total_duration":1,"discount_type":"percentage","discount_value":0}],"dynamic_discounts":[{"id":6580,"subscription_group_id":58666,"order_number":1,"discount_type":"percentage","discount_value":0}],"selection_options":[{"platform_entity_id":null}],"discount_type":"percentage","percent_discount":10,"fixed_discount":0,"can_add_to_cart":true},{"id":58667,"billing_rules":[{"id":136531,"subscription_group_id":58667,"interval_name":"Monthly","billing_rule":"FREQ=MONTHLY","custom_billing_rule":""},{"id":136532,"subscription_group_id":58667,"interval_name":"Bi-Weekly","billing_rule":"FREQ=WEEKLY;INTERVAL=2","custom_billing_rule":""},{"id":136533,"subscription_group_id":58667,"interval_name":"Weekly","billing_rule":"FREQ=WEEKLY","custom_billing_rule":""}],"is_subscription_only":false,"allow_prepaid":false,"allow_dynamic_discount":false,"is_prepaid_only":false,"should_continue_prepaid":true,"continue_prepaid_type":"as_prepaid","prepaid_durations":[{"id":60088,"subscription_group_id":58667,"total_duration":1,"discount_type":"percentage","discount_value":0}],"dynamic_discounts":[{"id":6581,"subscription_group_id":58667,"order_number":1,"discount_type":"percentage","discount_value":0}],"selection_options":[{"platform_entity_id":null}],"discount_type":"percentage","percent_discount":10,"fixed_discount":0,"can_add_to_cart":true},{"id":58668,"billing_rules":[{"id":136534,"subscription_group_id":58668,"interval_name":"Monthly","billing_rule":"FREQ=MONTHLY","custom_billing_rule":""},{"id":136535,"subscription_group_id":58668,"interval_name":"Bi-Weekly","billing_rule":"FREQ=WEEKLY;INTERVAL=2","custom_billing_rule":""},{"id":136536,"subscription_group_id":58668,"interval_name":"Weekly","billing_rule":"FREQ=WEEKLY","custom_billing_rule":""}],"is_subscription_only":false,"allow_prepaid":false,"allow_dynamic_discount":false,"is_prepaid_only":false,"should_continue_prepaid":true,"continue_prepaid_type":"as_prepaid","prepaid_durations":[{"id":60089,"
643subscription_group_id":58668,"total_duration":1,"discount_type":"percentage","discount_value":0}],"dynamic_discounts":[{"id":6582,"subscription_group_id":58668,"order_number":1,"discount_type":"percentage","discount_value":0}],"selection_options":[{"platform_entity_id":null}],"discount_type":"percentage","percent_discount":10,"fixed_discount":0,"can_add_to_cart":true}];
644    }
645
646    window.BOLD.subscriptions.isFeatureFlagEnabled = function (featureFlag) {
647        for (var i = 0; i < window.BOLD.subscriptions.config.featureFlags.length; i++) {
648            if (window.BOLD.subscriptions.config.featureFlags[i] === featureFlag){
649                return true;
650            }
651        }
652        return false;
653    }
654
655    window.BOLD.subscriptions.logger = {
656        tag: "bold_subscriptions",
657        // the bold subscriptions log level
658        // 0 - errors (default)
659        // 1 - warnings + errors
660        // 2 - info + warnings + errors
661        // use window.localStorage.setItem('boldSubscriptionsLogLevel', x) to set the log level
662        levels: {
663            ERROR: 0,
664            WARN: 1,
665            INFO: 2,
666        },
667        level: parseInt((window.localStorage && window.localStorage.getItem('boldSubscriptionsLogLevel')) || "0", 10),
668        _log: function(callArgs, level) {
669            if (!window.console) {
670                return null;
671            }
672
673            if (window.BOLD.subscriptions.logger.level < level) {
674                return;
675            }
676
677            var params = Array.prototype.slice.call(callArgs);
678            params.unshift(window.BOLD.subscriptions.logger.tag);
679
680            switch (level) {
681                case window.BOLD.subscriptions.logger.levels.INFO:
682                    console.info.apply(null, params);
683                    return;
684                case window.BOLD.subscriptions.logger.levels.WARN:
685                    console.warn.apply(null, params);
686                    return;
687                case window.BOLD.subscriptions.logger.levels.ERROR:
688                    console.error.apply(null, params);
689                    return;
690                default:
691                    console.log.apply(null, params);
692                    return;
693            }
694        },
695        info: function() {
696            window.BOLD.subscriptions.logger._log(arguments, window.BOLD.subscriptions.logger.levels.INFO);
697        },
698        warn: function() {
699            window.BOLD.subscriptions.logger._log(arguments, window.BOLD.subscriptions.logger.levels.WARN);
700        },
701        error: function() {
702            window.BOLD.subscriptions.logger._log(arguments, window.BOLD.subscriptions.logger.levels.ERROR);
703        }
704    }
705
706    window.BOLD.subscriptions.shouldLoadSubscriptionGroupFromAPI = function() {
707        return window.BOLD.subscriptions.config.loadSubscriptionGroupFrom === window.BOLD.subscriptions.config.loadSubscriptionGroupFromTypes['BSUB_API'];
708    }
709
710    window.BOLD.subscriptions.getSubscriptionGroupFromProductId = function (productId) {
711        var data = window.BOLD.subscriptions.data;
712        var foundGroup = null;
713        for (var i = 0; i < data.subscriptionGroups.length; i += 1) {
714            var subscriptionGroup = data.subscriptionGroups[i];
715            for (var j = 0; j < subscriptionGroup.selection_options.length; j += 1) {
716                var selectionOption = subscriptionGroup.selection_options[j];
717                if (selectionOption.platform_entity_id === productId.toString()) {
718                    foundGroup = subscriptionGroup;
719                    break;
720                }
721            }
722            if (foundGroup) {
723                break;
724            }
725        }
726        return foundGroup;
727    };
728
729    window.BOLD.subscriptions.getSubscriptionGroupById = function(subGroupId) {
730        var subscriptionGroups = window.BOLD.subscriptions.data.subscriptionGroups;
731
732        for (var i = 0; i < subscriptionGroups.length; i += 1) {
733            var subGroup = subscriptionGroups[i];
734            if (subGroup.id === subGroupId) {
735                return subGroup;
736            }
737        }
738
739        return null;
740    };
741
742    window.BOLD.subscriptions.addSubscriptionGroup = function (subscriptionGroup) {
743        if(!window.BOLD.subscriptions.getSubscriptionGroupById(subscriptionGroup.id))
744        {
745            window.BOLD.subscriptions.data.subscriptionGroups.push(subscriptionGroup);
746        }
747    }
748
749    window.BOLD.subscriptions.getSubscriptionGroupPrepaidDurationById = function(subscriptionGroupId, prepaidDurationId) {
750        var subscriptionGroup = window.BOLD.subscriptions.getSubscriptionGroupById(subscriptionGroupId);
751
752        if (
753            !subscriptionGroup
754            || !subscriptionGroup.prepaid_durations
755            || !subscriptionGroup.prepaid_durations.length
756        ) {
757            return null;
758        }
759
760        for (var i = 0; i < subscriptionGroup.prepaid_durations.length; i++) {
761            var prepaidDuration = subscriptionGroup.prepaid_durations[i];
762            if (prepaidDuration.id === prepaidDurationId) {
763                return prepaidDuration;
764            }
765        }
766
767        return null;
768    }
769
770    window.BOLD.subscriptions.getSubscriptionGroupBillingRuleById = function(subGroup, billingRuleId) {
771        for (var i = 0; i < subGroup.billing_rules.length; i += 1) {
772            var billingRule = subGroup.billing_rules[i];
773            if (billingRule.id === billingRuleId) {
774                return billingRule;
775            }
776        }
777
778        return null;
779    };
780
781    window.BOLD.subscriptions.toggleDisabledAddToCartButtons = function(d) {
782        var addToCartForms = document.querySelectorAll(window.BOLD.subscriptions.config.addToCartFormSelectors.join(','));
783        var disable = !!d;
784        for (var i = 0; i < addToCartForms.length; i++) {
785            var addToCartForm = addToCartForms[i];
786            var productId = window.BOLD.subscriptions.getProductIdFromAddToCartForm(
786addToCartForm);
787            var subscriptionGroup = window.BOLD.subscriptions.getSubscriptionGroupFromProductId(productId);
788
789            if(window.BOLD.subscriptions.isFeatureFlagEnabled('BS2-4659_improve_large_group_selection') ) {
790                if (subscriptionGroup || window.BOLD.subscriptions.shouldLoadSubscriptionGroupFromAPI()) {
791                    var addToCartButtons = addToCartForm.querySelectorAll(window.BOLD.subscriptions.config.addToCartButtonSelectors.join(','));
792                    for (var j = 0; j < addToCartButtons.length; j++) {
793                        var addToCartButton = addToCartButtons[j];
794                        var toggleAction = disable ?  addToCartButton.setAttribute : addToCartButton.removeAttribute;
795
796                        addToCartButton.disabled = disable;
797                        toggleAction.call(addToCartButton, 'data-disabled-by-subscriptions', disable);
798                    }
799                }
800            } else {
801                if (subscriptionGroup) {
802                    var addToCartButtons = addToCartForm.querySelectorAll(window.BOLD.subscriptions.config.addToCartButtonSelectors.join(','));
803                    for (var j = 0; j < addToCartButtons.length; j++) {
804                        var addToCartButton = addToCartButtons[j];
805                        var toggleAction = disable ?  addToCartButton.setAttribute : addToCartButton.removeAttribute;
806
807                        addToCartButton.disabled = disable;
808                        toggleAction.call(addToCartButton, 'data-disabled-by-subscriptions', disable);
809                    }
810                }
811            }
812
813        }
814    };
815
816    window.BOLD.subscriptions.disableAddToCartButtons = function () {
817        // only disable the add to cart buttons if the app isn't loaded yet
818        if (!window.BOLD.subscriptions.app) {
819            window.BOLD.subscriptions.toggleDisabledAddToCartButtons(true);
820        } else {
821            window.BOLD.subscriptions.enableAddToCartButtons();
822        }
823    };
824
825    window.BOLD.subscriptions.enableAddToCartButtons = function () {
826        document.removeEventListener('click', window.BOLD.subscriptions.preventSubscriptionAddToCart);
827        window.BOLD.subscriptions.toggleDisabledAddToCartButtons(false);
828    };
829
830    window.BOLD.subscriptions.toggleDisabledCheckoutButtons = function(d) {
831        var checkoutButtons = document.querySelectorAll(window.BOLD.subscriptions.config.checkoutButtonSelectors.join(','));
832        var disable = !!d;
833        for (var i = 0; i < checkoutButtons.length; i++) {
834            var checkoutButton = checkoutButtons[i];
835            var toggleAction = disable ? checkoutButton.setAttribute : checkoutButton.removeAttribute;
836
837            checkoutButton.disabled = disable;
838            toggleAction.call(checkoutButton, 'data-disabled-by-subscriptions', disable);
839        }
840    }
841
842    window.BOLD.subscriptions.disableCheckoutButtons = function() {
843        // only disable the checkout buttons if the app isn't loaded yet
844        if (!window.BOLD.subscriptions.app) {
845            window.BOLD.subscriptions.toggleDisabledCheckoutButtons(true);
846        } else {
847            window.BOLD.subscriptions.enableCheckoutButtons();
848        }
849    }
850
851    window.BOLD.subscriptions.enableCheckoutButtons = function() {
852        document.removeEventListener('click', window.BOLD.subscriptions.preventCheckout);
853        window.BOLD.subscriptions.toggleDisabledCheckoutButtons(false);
854    }
855
856    window.BOLD.subscriptions.hasSuccessfulAddToCarts = function() {
857        if (typeof(Storage) !== "undefined") {
858            var successfulAddToCarts = JSON.parse(
859                window.localStorage.getItem('boldSubscriptionsSuccessfulAddToCarts') || '[]'
860            );
861            if (successfulAddToCarts.length > 0) {
862                return true;
863            }
864        }
865
866        return false;
867    }
868
869    window.BOLD.subscriptions.hasPendingAddToCarts = function() {
870        if (typeof(Storage) !== "undefined") {
871            var pendingAddToCarts = JSON.parse(
872                window.localStorage.getItem('boldSubscriptionsPendingAddToCarts') || '[]'
873            );
874            if (pendingAddToCarts.length > 0) {
875                return true;
876            }
877        }
878
879        return false;
880    }
881
882    window.BOLD.subscriptions.addJSAsset = function(src, deferred) {
883        var scriptTag = document.getElementById('bold-subscriptions-app-embed-script');
884        var jsElement = document.createElement('script');
885        jsElement.type = 'text/javascript';
886        jsElement.src = src;
887        if (deferred) {
888           jsElement.defer = true;
889        }
890        scriptTag.parentNode.insertBefore(jsElement, scriptTag);
891    };
892
893    window.BOLD.subscriptions.addCSSAsset = function(href) {
894        var scriptTag = document.getElementById('bold-subscriptions-app-embed-script');
895        var cssElement = document.createElement('link');
896        cssElement.href = href;
897        cssElement.rel = 'stylesheet';
898        scriptTag.parentNode.insertBefore(cssElement, scriptTag);
899    };
900
901    window.BOLD.subscriptions.loadStorefrontAssets = function loadStorefrontAssets() {
902        var assets = window.BOLD.subscriptions.config.assets;
903        window.BOLD.subscriptions.addCSSAsset(window.BOLD.subscriptions.config.assetBaseUrl + '/static/' + assets['storefront.css']);
904        window.BOLD.subscriptions.addJSAsset(window.BOLD.subscriptions.config.assetBaseUrl + '/static/' + assets['storefront.js'], false);
905    };
906
907    window.BOLD.subscriptions.loadCustomerPortalAssets = function loadCustomerPortalAssets() {
908      if (document.getElementById('customer-portal-root') || document.getElementsByClassName('bsub-express-add-ons-widget')) {
909        var assets = window.BOLD.subscriptions.config.assets;
910        window.BOLD.subscriptions.addCSSAsset(window.BOLD.subscriptions.config.assetBaseUrl + '/static/' + assets['customer_portal.css']);
911        window.BOLD.subscriptions.addJSAsset(window.BOLD.subscriptions.config.assetBaseUrl + '/static/' + assets['customer_portal.js'], true);
912      }
913    };
914
915    window.BOLD.subscriptions.processManifest = function() {
916        if (!window.BOLD.subscriptions.processedManifest) {
917            window.BOLD.subscriptions.processedManifest = true;
918            window.BOLD.subscriptions.config.assets = JSON.parse(this.responseText);
919
920            
921            window.BOLD.subscriptions.loadCustomerPortalAssets();
922        }
923    };
924
925    window.BOLD.subscriptions.addInitialLoadingMessage = function() {
926        var customerPortalNode = document.getElementById('customer-portal-root');
927        if (customerPortalNode && window.BOLD.subscriptions.config.requireMSPInitialLoadingMessage) {
928            customerPortalNode.innerHTML = '<div class="bold-subscriptions-loader-container"><div class="bold-subscriptions-loader"></div></div>';
929        }
930    }
931
932    window.BOLD.subscriptions.contentLoaded = function() {
933        window.BOLD.subscriptions.data.contentLoadedEventTriggered = true;
934        window.BOLD.subscriptions.addInitialLoadingMessage();
935        
936    };
937
938    window.BOLD.subscriptions.preventSubscriptionAddToCart = function(e) {
939        if (e.target.matches(window.BOLD.subscriptions.config.addToCartButtonSelectors.join(',')) && e.target.form) {
940            var productId = window.BOLD.subscriptions.getProductIdFromAddToCartForm(e.target.form);
941            var subscriptionGroup = window.BOLD.subscriptions.getSubscriptionGroupFromProductId(productId);
942            if(window.BOLD.subscriptions.isFeatureFlagEnabled('BS2-4659_improve_large_group_selection'))
943            {
944                if (subscriptionGroup || window.BOLD.subscriptions.shouldLoadSubscriptionGroupFromAPI()) {
945                    // This code prevents products in subscription groups from being added to the cart before the
946                    // Subscriptions app fully loads. Once the subscriptions app loads it will re-enable the
947                    // buttons. Use window.BOLD.subscriptions.enableAddToCartButtons enable them manually.
948                    e.preventDefault();
949                    return false;
950                }
951            } else {
952                if (subscriptionGroup) {
953                    // This code prevents products in subscription groups from being added to the cart before the
954                    // Subscriptions app fully loads. Once the subscriptions app loads it will re-enable the
955                    // buttons. Use window.BOLD.subscriptions.enableAddToCartButtons enable them manually.
956                    e.preventDefault();
957                    return false;
958                }
959            }
960
961        }
962    };
963
964    window.BOLD.subscriptions.preventCheckout = function(e) {
965        if (
966            e.target.matches(window.BOLD.subscriptions.config.checkoutButtonSelectors.join(','))
967            && (window.BOLD.subscriptions.hasSuccessfulAddToCarts() || window.BOLD.subscriptions.hasPendingAddToCarts())
968        ) {
969            // This code prevents checkouts on the shop until the Subscriptions app fully loads.
970            // When the Subscriptions app is ready it will enable the checkout buttons itself.
971            // Use window.BOLD.subscriptions.enableCheckoutButtons to enable them manually.
972            e.preventDefault();
973            return false;
974        }
975    }
976
977    if (!window.BOLD.subscriptions.config.legacyAssetsLoaded) {
978        
979        document.addEventListener('DOMContentLoaded', window.BOLD.subscriptions.contentLoaded);
980    }
981
982    if (!Element.prototype.matches) {
983        Element.prototype.matches =
984            Element.prototype.matchesSelector ||
985            Element.prototype.mozMatchesSelector ||
986            Element.prototype.msMatchesSelector ||
987            Element.prototype.oMatchesSelector ||
988            Element.prototype.webkitMatchesSelector ||
989            function(s) {
990                var matches = (this.document || this.ownerDocument).querySelectorAll(s),
991                    i = matches.length;
992                while (--i >= 0 && matches.item(i) !== this) {}
993                return i > -1;
994            };
995    }
996
997    if (!Element.prototype.closest) {
998        Element.prototype.closest = function(s) {
999            var el = this;
1000
1001            do {
1002                if (Element.prototype.matches.call(el, s)) return el;
1003                el = el.parentElement || el.parentNode;
1004            } while (el !== null && el.nodeType === 1);
1005            return null;
1006        };
1007    }
1008
1009    window.BOLD.subscriptions.setVisibilityOfAdditionalCheckoutButtons = function (isVisible) {
1010        if (window.BOLD.subscriptions.config.additionalCheckoutSelectors === undefined) {
1011            return;
1012        }
1013
1014        var selectors = window.BOLD.subscriptions.config.additionalCheckoutSelectors;
1015
1016        for (var i = 0; i < selectors.length; i++) {
1017            var elements = document.querySelectorAll(selectors[i]);
1018
1019            for (var j = 0; j < elements.length; j++) {
1020                elements[j].style.display = isVisible ? 'block' : 'none';
1021            }
1022        }
1023    }
1024
1025    window.BOLD.subscriptions.hideAdditionalCheckoutButtons = function() {
1026        window.BOLD.subscriptions.setVisibilityOfAdditionalCheckoutButtons(false);
1027    };
1028
1029    window.BOLD.subscriptions.showAdditionalCheckoutButtons = function() {
1030        window.BOLD.subscriptions.setVisibilityOfAdditionalCheckoutButtons(true);
1031    };
1032
1033    window.BOLD.subscriptions.enhanceMspUrls = function(data) {
1034        var mspUrl = 'https://sub.boldapps.net/shop/19591/customer_portal';
1035        var elements = document.querySelectorAll("a[href='"+mspUrl+"']");
1036
1037        if(!elements.length || !data.success) {
1038            return;
1039        }
1040
1041        for (var i = 0; i < elements.length; i++) {
1042            elements[i].href = elements[i].href + "?jwt="+data.value.jwt+"&customerId="+data.value.customerId;
1043        }
1044    };
1045
1046    if (!window.BOLD.subscriptions.config.legacyAssetsLoaded) {
1047        window.addEventListener('load', function () {
1048          if (document.getElementById('customer-portal-root')) {
1049            window.BOLD.subscriptions.getJWT(window.BOLD.subscriptions.enhanceMspUrls);
1050          }
1051        });
1052
1053        // This will be called immediately
1054        // Use this anonymous function to avoid polluting the global namespace
1055        (function() {
1056            var xhr = new XMLHttpRequest();
1057            xhr.addEventListener('load', window.BOLD.subscriptions.processManifest);
1058            xhr.open('GET', window.BOLD.subscriptions.config.assetBaseUrl + '/static/manifest.json?t=' + (new Date()).getTime());
1059            xhr.send();
1060        })()
1061    }
1062
1063    window.BOLD.subscriptions.patches.patchCashier = function() {
1064        if (window.BOLD && window.BOLD.checkout) {
1065            window.BOLD.checkout.disable();
1066            window.BOLD.checkout.listenerFn = window.BOLD.subscriptions.patches.cashierListenerFn;
1067            window.BOLD.checkout.enable();
1068        } else if (window.BOLD.subscriptions.patches.currentCashierPatchAttempts < window.BOLD.subscriptions.patches.maxCashierPatchAttempts) {
1069            window.BOLD.subscriptions.patches.currentCashierPatchAttempts++;
1070            setTimeout(window.BOLD.subscriptions.patches.patchCashier, 100);
1071        }
1072    };
1073
1074    window.BOLD.subscriptions.patches.finishCheckout = function(event, form, cart) {
1075        window.BOLD.subscriptions.patches.currentCheckoutRetries++;
1076
1077        if (!window.BOLD.subscriptions.app
1078            && window.BOLD.subscriptions.patches.currentCheckoutRetries < window.BOLD.subscriptions.patches.maxCheckoutRetries
1079        ) {
1080            setTimeout(function () { window.BOLD.subscriptions.patches.finishCheckout(event, form, cart); }, 100);
1081            return;
1082        } else if (window.BOLD.subscriptions.app) {
1083            window.BOLD.subscriptions.patches.currentCheckoutRetries = 0;
1084            window.BOLD.subscriptions.app.addCartParams(form, cart);
1085        }
1086
1087        var noSubscriptions = false;
1088        if ((window.BOLD.subscriptions.app && window.BOLD.subscriptions.app.successfulAddToCarts.length === 0)
1089            || !window.BOLD.subscriptions.app
1090        ) {
1091            noSubscriptions = true;
1092            event.target.dataset.cashierConfirmedNoPlugins = true;
1093
1094            if (window.BOLD.subscriptions.setCashierFeatureToken) {
1095                window.BOLD.subscriptions.setCashierFeatureToken(false);
1096            }
1097        }
1098
1099        if ((noSubscriptions && window.BOLD.subscriptions.config.cashierPluginOnlyMode)
1100            || (typeof BOLD.checkout.isFeatureRequired === 'function' && !BOLD.checkout.isFeatureRequired())
1101        ) {
1102            // send them to the original checkout when in plugin only mode
1103            // and either BSUB is there but there are no subscription products
1104            // or BSUB isn't there at all
1105            if (form.dataset.old_form_action) {
1106                form.action = form.dataset.old_form_action;
1107            }
1108            event.target.click();
1109        } else {
1110            // sends them to Cashier since BSUB got a chance to add it's stuff
1111            // and plugin only mode is not enabled
1112            form.submit();
1113        }
1114    };
1115</script>
vendor: 1 bytes, line 1115
1115
1116<script id="bold-subscriptions-app-embed-platform-script" type="text/javascript" defer>
1117    window.BOLD.subscriptions.config.shopPlatformId = '2337869';
1118    window.BOLD.subscriptions.config.appSlug = 'subscriptions';
1119
1120    window.BOLD = window.BOLD || {};
1121    window.BOLD.subscriptions = window.BOLD.subscriptions || {};
1122    window.BOLD.subscriptions.data = window.BOLD.subscriptions.data || {};
1123    window.BOLD.subscriptions.data.platform = window.BOLD.subscriptions.data.platform || {};
1124    window.BOLD.subscriptions.data.platform.customer = { id: '' };
1125    window.BOLD.subscriptions.data.platform.product = {"id":9218078736558,"title":"Rwanda - Rulindo Murambi - Washed","handle":"rwanda-rulindo-murambi","description":"\u003cp\u003eThis lot of Rulindo Murambi was grown by more than 170 family owned farms in Rwanda's Gatsibo district. Smallholder farmers bring their cherries to the centralized Murambi washing station where they are processed with safer, more modernized machinery than individual farmers are able to access. Murambi begins the processing with the quality control method of hand sorting and floating the cherries in water. They are then depulped and fermented. The fermentation process is halted by a 18-24 hour freshwater soak, after which the parchment is washed for a second time. Washing station workers perform a final round of quality control by meticulously hand sorting the parchment on pre-drying tables while it is gently dried to the touch. After removing any parchment with defects from the lot, they transfer it to fully exposed drying tables for 14-21 days. \u003c\/p\u003e\n\u003cp\u003eWe love this coffee's bright opening plum notes, which meld into smooth dark chocolate and the rich sweetness of brown sugar. Brew it as a pourover for more prominent fruit notes or try it as espresso to bring out its complex chocolate flavor!\u003c\/p\u003e","published_at":"2026-09-08T10:33:08-07:00","created_at":"2026-08-22T14:27:54-07:00","vendor":"Blossom Coffee Roasters","type":"Coffee","tags":["Africa","Bottomless","Coffee","Light roast","Rwanda","specialty coffee","Washed"],"price":2250,"price_min":2250,"price_max":11000,"available":true,"price_varies":true,"compare_at_price":null,"compare_at_price_min":0,"compare_at_price_max":0,"compare_at_price_varies":false,"variants":[{"id":48930908635310,"title":"12oz","option1":"12oz","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":true,"featured_image":{"id":45430876766382,"product_id":9218078736558,"position":1,"created_at":"2026-09-08T10:32:00-07:00","updated_at":"2026-09-08T10:32:02-07:00","alt":null,"width":2654,"height":2653,"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed.jpg?v=1788888722","variant_ids":[48930908635310]},"available":true,"name":"Rwanda - Rulindo Murambi - Washed - 12oz","public_title":"12oz","options":["12oz"],"price":2250,"weight":0,"compare_at_price":null,"inventory_quantity":-6,"inventory_management":null,"inventory_policy":"deny","barcode":null,"featured_media":{"alt":null,"id":35956263452846,"position":1,"preview_image":{"aspect_ratio":1.0,"height":2653,"width":2654,"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed.jpg?v=1788888722"}},"requires_selling_plan":false,"selling_plan_allocations":[{"price_adjustments":[{"position":1,"price":1800},{"position":2,"price":2025}],"price":1800,"compare_at_price":2250,"per_delivery_price":1800,"selling_plan_id":3594158254,"selling_plan_group_id":"52d60c9a87e98523ff88ad283e61aad784cf310a"}],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":48930908668078,"title":"1lb","option1":"1lb","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":true,"featured_image":{"id":45430876799150,"product_id":9218078736558,"position":2,"created_at":"2026-09-08T10:32:00-07:00","updated_at":"2026-09-08T10:32:02-07:00","alt":null,"width":1125,"height":675,"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53.jpg?v=1788888722","variant_ids":[48930908668078,48930908700846,48930908733614]},"available":true,"name":"Rwanda - Rulindo Murambi - Washed - 1lb","public_title":"1lb","options":["1lb"],"price":2600,"weight":0,"compare_at_price":null,"inventory_quantity":-4,"inventory_management":null,"inventory_policy":"deny","barcode":null,"featured_media":{"alt":null,"id":35956263649454,"position":2,"preview_image":{"aspect_ratio":1.667,"height":675,"width":1125,"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53.jpg?v=1788888722"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":48930908700846,"title":"2lb","option1":"2lb","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":true,"featured_image":{"id":45430876799150,"product_id":9218078736558,"position":2,"created_at":"2026-09-08T10:32:00-07:00","updated_at":"2026-09-08T10:32:02-07:00","alt":null,"width":1125,"height":675,"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53.jpg?v=1788888722","variant_ids":[48930908668078,48930908700846,48930908733614]},"available":true,"name":"Rwanda - Rulindo Murambi - Washed - 2lb","public_title":"2lb","options":["2lb"],"price":4800,"weight":0,"compare_at_price":null,"inventory_quantity":-1,"inventory_management":null,"inventory_policy":"deny","barcode":null,"featured_media":{"alt":null,"id":35956263649454,"position":2,"preview_image":{"aspect_ratio":1.667,"height":675,"width":1125,"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53.jpg?v=1788888722"}},"requires_selling_plan":false,"selling_plan_allocations":[{"price_adjustments":[{"position":1,"price":3840},{"position":2,"price":4320}],"price":3840,"compare_at_price":4800,"per_delivery_price":3840,"selling_plan_id":3594158254,"selling_plan_group_id":"52d60c9a87e98523ff88ad283e61aad784cf310a"}],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":48930908733614,"title":"5lb","option1":"5lb","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":true,"featured_image":{"id":45430876799150,"product_id":9218078736558,"position":2,"created_at":"2026-09-08T10:32:00-07:00","updated_at":"2026-09-08T10:32:02-07:00","alt":null,"width":1125,"height":675,"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53.jpg?v=1788888722","variant_ids":[48930908668078,48930908700846,48930908733614]},"available":true,"name":"Rwanda - Rulindo Murambi - Washed - 5lb","public_title":"5lb","options":["5lb"],"price":11000,"weight":0,"compare_at_price":null,"inventory_quantity":0,"inventory_management":null,"inventory_policy":"deny","barcode":null,"featured_media":{"alt":null,"id":35956263649454,"position":2,"preview_image":{"aspect_ratio":1.667,"height":675,"width":1125,"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53.jpg?v=1788888722"}},"requires_selling_plan":false,"selling_plan_allocations":[{"price_adjustments":[{"position":1,"price":8800},{"position":2,"price":9900}],"price":8800,"compare_at_price":11000,"per_delivery_price":8800,"selling_plan_id":3594158254,"selling_plan_group_id":"52d60c9a87e98523ff88ad283e61aad784cf310a"}],"quantity_rule":{"min":1,"max":null,"increment":1}}],"images":["\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed.jpg?v=1788888722","\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53.jpg?v=1788888722","\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda-Rulindo-Murambi1.jpg?v=1787433962","\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda-Rulindo-Murambi2.jpg?v=1787433976","\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda-Rulindo-Murambi3.jpg?v=1787433980"],"featured_image":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed.jpg?v=1788888722","options":["Size"],"media":[{"alt":null,"id":35956263452846,"position":1,"preview_image":{"aspect_ratio":1.0,"height":2653,"width":2654,"
1125src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed.jpg?v=1788888722"},"aspect_ratio":1.0,"height":2653,"media_type":"image","src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed.jpg?v=1788888722","width":2654},{"alt":null,"id":35956263649454,"position":2,"preview_image":{"aspect_ratio":1.667,"height":675,"width":1125,"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53.jpg?v=1788888722"},"aspect_ratio":1.667,"height":675,"media_type":"image","src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53.jpg?v=1788888722","width":1125},{"alt":null,"id":35690512548014,"position":3,"preview_image":{"aspect_ratio":1.499,"height":683,"width":1024,"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda-Rulindo-Murambi1.jpg?v=1787433962"},"aspect_ratio":1.499,"height":683,"media_type":"image","src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda-Rulindo-Murambi1.jpg?v=1787433962","width":1024},{"alt":null,"id":35690512973998,"position":4,"preview_image":{"aspect_ratio":1.499,"height":683,"width":1024,"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda-Rulindo-Murambi2.jpg?v=1787433976"},"aspect_ratio":1.499,"height":683,"media_type":"image","src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda-Rulindo-Murambi2.jpg?v=1787433976","width":1024},{"alt":null,"id":35690513006766,"position":5,"preview_image":{"aspect_ratio":1.499,"height":683,"width":1024,"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda-Rulindo-Murambi3.jpg?v=1787433980"},"aspect_ratio":1.499,"height":683,"media_type":"image","src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda-Rulindo-Murambi3.jpg?v=1787433980","width":1024}],"requires_selling_plan":false,"selling_plan_groups":[{"id":"52d60c9a87e98523ff88ad283e61aad784cf310a","name":"Subscribe by Usage","options":[{"name":"Delivery every","position":1,"values":["1 Week"]}],"selling_plans":[{"id":3594158254,"name":"20% off this order, 10% off next orders","description":null,"options":[{"name":"Delivery every","position":1,"value":"1 Week"}],"recurring_deliveries":false,"price_adjustments":[{"order_count":1,"position":1,"value_type":"percentage","value":20},{"order_count":null,"position":2,"value_type":"percentage","value":10}],"checkout_charge":{"value_type":"percentage","value":100}}],"app_id":"bottomless-dynamic-subscription"}],"content":"\u003cp\u003eThis lot of Rulindo Murambi was grown by more than 170 family owned farms in Rwanda's Gatsibo district. Smallholder farmers bring their cherries to the centralized Murambi washing station where they are processed with safer, more modernized machinery than individual farmers are able to access. Murambi begins the processing with the quality control method of hand sorting and floating the cherries in water. They are then depulped and fermented. The fermentation process is halted by a 18-24 hour freshwater soak, after which the parchment is washed for a second time. Washing station workers perform a final round of quality control by meticulously hand sorting the parchment on pre-drying tables while it is gently dried to the touch. After removing any parchment with defects from the lot, they transfer it to fully exposed drying tables for 14-21 days. \u003c\/p\u003e\n\u003cp\u003eWe love this coffee's bright opening plum notes, which meld into smooth dark chocolate and the rich sweetness of brown sugar. Brew it as a pourover for more prominent fruit notes or try it as espresso to bring out its complex chocolate flavor!\u003c\/p\u003e"};
1126    window.BOLD.subscriptions.data.platform.products = [];
1127    window.BOLD.subscriptions.data.platform.variantProductMap = {};
1128
1129    window.BOLD.subscriptions.getProductByVariantId = function(variantId) {
1130        if (window.BOLD.subscriptions.data.platform.product && 
1131            window.BOLD.subscriptions.data.platform.product.variants) {
1132            for (var i = 0; i < window.BOLD.subscriptions.data.platform.product.variants.length; i++) {
1133                if (window.BOLD.subscriptions.data.platform.product.variants[i].id === variantId) {
1134                    return window.BOLD.subscriptions.data.platform.product;
1135                }
1136            }
1137        }
1138
1139        if (window.BOLD.subscriptions.data.platform.variantProductMap[variantId]) {
1140            return window.BOLD.subscriptions.data.platform.variantProductMap[variantId];
1141        }
1142
1143        var productElements = document.querySelectorAll('[data-product-id]');
1144        for (var i = 0; i < productElements.length; i++) {
1145            var productJsonElement = productElements[i].querySelector('[data-product-json]');
1146            
1147            if (productJsonElement) {
1148                try {
1149                    var productData = JSON.parse(productJsonElement.textContent);
1150                    if (productData && productData.variants) {
1151                        for (var j = 0; j < productData.variants.length; j++) {
1152                            if (productData.variants[j].id === variantId) {
1153                                return productData;
1154                            }
1155                        }
1156                    }
1157                } catch (e) {
1158                    // Continue if parsing fails
1159                }
1160            }
1161        }
1162
1163        return null;
1164    }
1165
1166    window.BOLD.subscriptions.config.addToCartFormSelectors.push(
1167        '.product-form.product-form-product-template:not(.bold-subscriptions-no-widget)'
1168        ,'.product-form.product-form--payment-button:not(.bold-subscriptions-no-widget)'
1169    );
1170    window.BOLD.subscriptions.config.addToCartButtonSelectors.push('[type="submit"]');
1171    window.BOLD.subscriptions.config.quickAddToCartButtonSelectors.push('a[data-event-type="product-click"]');
1172    window.BOLD.subscriptions.config.widgetInsertBeforeSelectors.push('[type="submit"]');
1173    window.BOLD.subscriptions.config.cartElementSelectors.push('form[action="/cart"]');
1174    window.BOLD.subscriptions.config.cartTotalElementSelectors.push('[data-cart-subtotal]', '.text-right .ajaxcart__subtotal');
1175    window.BOLD.subscriptions.config.checkoutButtonSelectors.push(
1176        '[name="checkout"]',
1177        '[href*="checkout"]:not([href*="tools/checkout"])',
1178        '[onclick*="checkout"]:not([onclick*="tools/checkout"])',
1179    );
1180
1181    // Discount text markup template
1182    
1183    window.BOLD.subscriptions.config.discountItemTemplate = '<div class="bold-subscriptions-discount"><div class="bold-subscriptions-discount__details">{{details}}</div><div class="bold-subscriptions-discount__total">{{total}}</div></div>';
1184    
1185
1186    window.BOLD.subscriptions.getProductIdFromAddToCartForm = function(addToCartForm) {
1187        var idInput = addToCartForm.querySelector('[name="id"]');
1188        if (idInput === null) {
1189            window.BOLD.subscriptions.logger.error('could not get variant id input from add to cart form — make sure your form has an input with [name="id"]')
1190            return null;
1191        }
1192
1193        var variantId = parseInt(idInput.value, 10);
1194        if (isNaN(variantId)) {
1195            window.BOLD.subscriptions.logger.error('could not parse variant id from [name="id"] input')
1196            return null;
1197        }
1198
1199        var product = window.BOLD.subscriptions.getProductByVariantId(variantId);
1200
1201        if (product === undefined || product === null) {
1202            window.BOLD.subscriptions.logger.error('could not find product data for variant id ' + variantId + ' — product data may not be available on this page')
1203            return null;
1204        }
1205
1206        return product.id;
1207    };
1208
1209    window.BOLD.subscriptions.getAddToCartForms = function() {
1210        var forms = [];
1211        var idInputs = document.querySelectorAll('[name="id"]');
1212
1213        for (var i = 0; i < idInputs.length; i++) {
1214            var idInput = idInputs[i];
1215            var form = idInput.closest('form:not(.bold-subscriptions-no-widget)');
1216            if (form) {
1217                forms.push(form);
1218            }
1219        }
1220
1221        return forms;
1222    };
1223
1224    window.BOLD.subscriptions.getJWT = function (callback) {
1225        if(window.BOLD.subscriptions.data.platform.customer.id !== '') {
1226            var shopPlatformId = '2337869';
1227            var appSlug = 'subscriptions';
1228            var customerPlatformId = window.BOLD.subscriptions.data.platform.customer.id;
1229            var proxyPath = '/apps/app-proxy/customers/v1/shops/'+shopPlatformId+'/apps/'+appSlug+'/customers/pid/'+customerPlatformId+'/jwt';
1230
1231            var xmlhttp = new XMLHttpRequest();
1232
1233            xmlhttp.onreadystatechange = function() {
1234                if (xmlhttp.readyState === window.BOLD.subscriptions.config.XMLHttpRequest.DONE) {
1235                    if (xmlhttp.status === 200) {
1236                        var data = JSON.parse(xmlhttp.responseText);
1237                        callback({
1238                            success: true,
1239                            value: {
1240                                jwt: data.bold_platform_jwt,
1241                                customerId: window.BOLD.subscriptions.data.platform.customer.id,
1242                            },
1243                        });
1244                    } else if (xmlhttp.status === 404) {
1245                        callback({
1246                            success: false,
1247                            error: 'not_logged_in',
1248                        });
1249                    } else {
1250                        callback({
1251                            success: false,
1252                            error: 'unknown',
1253                        });
1254                    }
1255                }
1256            };
1257
1258            xmlhttp.open("GET", proxyPath, true);
1259            xmlhttp.setRequestHeader('Accept', 'application/liquid');
1260            xmlhttp.send();
1261        } else {
1262            callback({
1263                success: false,
1264                error: 'not_logged_in',
1265            });
1266        }
1267    };
1268
1269    window.BOLD.subscriptions.setCashierFeatureToken = function(value) {
1270        if (window.BOLD.checkout_features_defaults && window.BOLD.subscriptions.config.cashierApplicationUUID) {
1271            window.BOLD.checkout_features_defaults.forEach(function(item) {
1272                if (item.id === window.BOLD.subscriptions.config.cashierApplicationUUID) {
1273                    item.require = value;
1274                }
1275            });
1276        }
1277    };
1278
1279    // Cashier patches
1280    window.BOLD.subscriptions.patches.cashierListenerFn = function(event) {
1281        if (window.BOLD.checkout.isCheckoutButton(event.target) && window.BOLD.checkout.isEnabled()) {
1282            window.BOLD.subscriptions.patches.pushToCashier(event);
1283        } else if(window.BOLD.checkout.isCheckoutButton(event.target) && typeof window.cashier_installed_on_site === 'undefined') {
1284            var request = new XMLHttpRequest();
1285            request.open('HEAD', '/apps/checkout/isInstalled', false);
1286            request.send(null);
1287
1288            if(request.status >= 200 && request.status < 400) {
1289                window.BOLD.subscriptions.patches.pushToCashier(event);
1290            } else {
1291                window.cashier_installed_on_site = false;
1292            }
1293        }
1294    };
1295
1296    window.BOLD.subscriptions.localTime = function() {
1297        var localDate = new Date();
1298        return localDate.getTime();
1299    };
1300
1301
1302    window.BOLD.subscriptions.patches.pushToCashier = function(event) {
1303        event.preventDefault();
1304        var form = window.BOLD.checkout.getForm(event.target);
1305        var formData = new FormData(form);
1306        var request = new XMLHttpRequest();
1307        request.open('POST', '/cart/update.js?tmp=' + Date.now(), true);
1308        request.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
1309
1310        request.onload = function() {
1311            if (request.status >= 200 && request.status < 400) {
1312                // Success!
1313                var cart = JSON.parse(request.responseText);
1314
1315                // If items are empty redirect back to the cart
1316                if (cart.items.length === 0) {
1317                    return window.location.href = '/cart';
1318                }
1319
1320                cart.items.forEach(function(element) {
1321                    delete element.product_description;
1322                });
1323
1324                if (document.getElementById('CartSpecialInstructions')) {
1325                    // If the cart note exists, grab its value
1326                    cart.note = document.getElementById('CartSpecialInstructions').value;
1327                }
1328
1329                var cartObj = JSON.stringify(cart);
1330
1331                var form = window.BOLD.checkout.getForm(event.target);
1332                form.dataset.old_form_action = form.action;
1333                form.action = '/apps/checkout/begin-checkout' + googleAnalyticsGetParamString({});
1334                var cartCookie = window.BOLD.checkout.getCookie('cart');
1335                var element = document.createElement('INPUT');
1336                element.type = 'HIDDEN';
1337                element.name = 'cart_id';
1338                element.value = cartCookie;
1339                form.appendChild(element);
1340
1341                var dateElement = document.createElement('INPUT');
1342                dateElement.type = 'HIDDEN';
1343                dateElement.name = 'checkout_local_time';
1344                dateElement.value = window.BOLD.subscriptions.localTime();
1345                form.appendChild(dateElement);
1346
1347                var cartElement = document.createElement('INPUT');
1348                cartElement.type = 'HIDDEN';
1349                cartElement.name = 'cart';
1350                cartElement.value = cartObj;
1351                form.appendChild(cartElement);
1352                form.method = 'POST';
1353
1354                if(window.BOLD && window.BOLD.checkout && typeof window.BOLD.checkout.languageIsoCode === 'string') {
1355                    var langInput = document.createElement('INPUT');
1356                    langInput.type = 'HIDDEN';
1357                    langInput.name = 'language_iso';
1358                    langInput.value = window.BOLD.checkout.languageIsoCode;
1359                    form.appendChild(langInput);
1360                }
1361
1362                if (window.BOLD && window.BOLD.common && typeof window.BOLD.common.eventEmitter === 'object' && typeof window.BOLDCURRENCY !== 'undefined') {
1363                    window.BOLD.common.eventEmitter.emit('BOLD_CASHIER_checkout', {target: form});
1364                }
1365
1366                window.BOLD.subscriptions.patches.finishCheckout(event, form, cart);
1367            }
1368        };
1369
1370        request.send(formData);
1371    };
1372
1373    
1374</script>
1374
1375
1376
1377<!-- END app block --><!-- BEGIN app block: shopify://apps/judge-me-reviews/blocks/judgeme_core/61ccd3b1-a9f2-4160-9fe9-4fec8413e5d8 --><!-- Start of Judge.me Core -->
1378
1379
1380
1381
1382
1383
1384
1385<link rel="dns-prefetch" href="https://cdn.judge.me">
1386<link rel="dns-prefetch" href="https://cdn1.judge.me">
1387<link rel="dns-prefetch" href="https://api.judge.me">
1388
1389<script data-cfasync='false' class='jdgm-settings-script'>window.jdgmSettings={"pagination":5,"disable_web_reviews":false,"coupon_receiving_condition":"","coupon_value_type":"percentage","coupon_value_percentage":10,"coupon_value_fixed_amount":0,"coupon_discount_type":"single","coupon_tier_text_enabled":false,"coupon_tier_text_percentage":10,"coupon_tier_text_fixed_amount":0,"coupon_tier_photo_enabled":false,"coupon_tier_photo_percentage":10,"coupon_tier_photo_fixed_amount":0,"coupon_tier_video_enabled":false,"coupon_tier_video_percentage":10,"coupon_tier_video_fixed_amount":0,"enable_coupons":false,"badge_no_review_text":"No reviews","badge_n_reviews_text":"{{ n }} review/reviews","hide_badge_preview_if_no_reviews":true,"badge_hide_text":false,"enforce_center_preview_badge":false,"widget_title":"Customer Reviews","widget_open_form_text":"Write a review","widget_close_form_text":"Cancel review","widget_refresh_page_text":"Refresh page","widget_summary_text":"Based on {{ number_of_reviews }} review/reviews","widget_no_review_text":"Be the first to write a review","widget_name_field_text":"Display name","widget_verified_name_field_text":"Verified Name (public)","widget_name_placeholder_text":"Display name","widget_required_field_error_text":"This field is required.","widget_email_field_text":"Email address","widget_verified_email_field_text":"Verified Email (private, can not be edited)","widget_email_placeholder_text":"Your email address","widget_email_field_error_text":"Please enter a valid email address.","widget_rating_field_text":"Rating","widget_review_title_field_text":"Review Title","widget_review_title_placeholder_text":"Give your review a title","widget_review_body_field_text":"Review content","widget_review_body_placeholder_text":"Start writing here...","widget_pictures_field_text":"Picture/Video (optional)","widget_submit_review_text":"Submit Review","widget_submit_verified_review_text":"Submit Verified Review","widget_submit_success_msg_with_auto_publish":"Thank y
1389ou! Please refresh the page in a few moments to see your review. You can remove or edit your review by logging into \u003ca href='https://judge.me/login' target='_blank' rel='nofollow noopener'\u003eJudge.me\u003c/a\u003e","widget_submit_success_msg_no_auto_publish":"Thank you! Your review will be published as soon as it is approved by the shop admin. You can remove or edit your review by logging into \u003ca href='https://judge.me/login' target='_blank' rel='nofollow noopener'\u003eJudge.me\u003c/a\u003e","widget_show_default_reviews_out_of_total_text":"Showing {{ n_reviews_shown }} out of {{ n_reviews }} reviews.","widget_show_all_link_text":"Show all","widget_show_less_link_text":"Show less","widget_author_said_text":"{{ reviewer_name }} said:","widget_days_text":"{{ n }} days ago","widget_weeks_text":"{{ n }} week/weeks ago","widget_months_text":"{{ n }} month/months ago","widget_years_text":"{{ n }} year/years ago","widget_yesterday_text":"Yesterday","widget_today_text":"Today","widget_replied_text":"\u003e\u003e {{ shop_name }} replied:","widget_read_more_text":"Read more","widget_reviewer_name_as_initial":"","widget_rating_filter_color":"","widget_rating_filter_see_all_text":"See all reviews","widget_sorting_most_recent_text":"Most Recent","widget_sorting_highest_rating_text":"Highest Rating","widget_sorting_lowest_rating_text":"Lowest Rating","widget_sorting_with_pictures_text":"Only Pictures","widget_sorting_most_helpful_text":"Most Helpful","widget_open_question_form_text":"Ask a question","widget_reviews_subtab_text":"Reviews","widget_questions_subtab_text":"Questions","widget_question_label_text":"Question","widget_answer_label_text":"Answer","widget_question_placeholder_text":"Write your question here","widget_submit_question_text":"Submit Question","widget_question_submit_success_text":"Thank you for your question! We will notify you once it gets answered.","verified_badge_text":"Verified","verified_badge_bg_color":"","verified_badge_text_color":"","verified_badge_placement":"left-of-reviewer-name","widget_review_max_height":"","widget_hide_border":false,"widget_social_share":false,"widget_thumb":false,"widget_review_location_show":false,"widget_location_format":"","all_reviews_include_out_of_store_products":true,"all_reviews_out_of_store_text":"(out of store)","all_reviews_pagination":100,"all_reviews_product_name_prefix_text":"about","enable_review_pictures":true,"enable_question_anwser":false,"widget_theme":"","review_date_format":"mm/dd/yyyy","default_sort_method":"most-recent","enable_ai_review_visibility":true,"widget_product_reviews_subtab_text":"Product Reviews","widget_shop_reviews_subtab_text":"Shop Reviews","widget_other_products_reviews_text":"Reviews for other products","widget_store_reviews_subtab_text":"Store reviews","widget_product_variant_reference_text":"Review for","widget_no_store_reviews_text":"This store hasn't received any reviews yet","widget_web_restriction_product_reviews_text":"This product hasn't received any reviews yet","widget_no_items_text":"No items found","widget_show_more_text":"Show more","widget_write_a_store_review_text":"Write a Store Review","widget_product_and_store_reviews_text":"Product and store reviews","widget_reviews_in_collection_text":"Reviews in this collection","widget_other_languages_heading":"Reviews in Other Languages","widget_translate_review_text":"Translate review to {{ language }}","widget_translating_review_text":"Translating...","widget_show_original_translation_text":"Show original ({{ language }})","widget_translate_review_failed_text":"Review couldn't be translated.","widget_translate_review_retry_text":"Retry","widget_translate_review_try_again_later_text":"Try again later","show_product_url_for_grouped_product":false,"widget_sorting_pictures_first_text":"Pictures First","show_pictures_on_all_rev_page_mobile":false,"show_pictures_on_all_rev_page_desktop":false,"floating_tab_hide_mobile_install_preference":false,"floating_tab_button_name":"★ Reviews","floating_tab_title":"Let customers speak for us","floating_tab_button_color":"","floating_tab_button_background_color":"","floating_tab_url":"","floating_tab_url_enabled":false,"floating_tab_tab_style":"text","all_reviews_text_badge_text":"Customers rate us {{ shop.metafields.judgeme.all_reviews_rating | round: 1 }}/5 based on {{ shop.metafields.judgeme.all_reviews_count }} reviews.","all_reviews_text_badge_text_branded_style":"{{ shop.metafields.judgeme.all_reviews_rating | round: 1 }} out of 5 stars based on {{ shop.metafields.judgeme.all_reviews_count }} reviews","is_all_reviews_text_badge_a_link":false,"show_stars_for_all_reviews_text_badge":false,"all_reviews_text_badge_url":"","all_reviews_text_style":"branded","all_reviews_text_color_style":"judgeme_brand_color","all_reviews_text_color":"#108474","all_reviews_text_show_jm_brand":true,"featured_carousel_show_header":true,"featured_carousel_title":"Let customers speak for us","testimonials_carousel_title":"Customers are saying","videos_carousel_title":"Real customer stories","cards_carousel_title":"Customers are saying","featured_carousel_count_text":"from {{ n }} reviews","featured_carousel_add_link_to_all_reviews_page":false,"featured_carousel_url":"","featured_carousel_show_images":true,"featured_carousel_autoslide_interval":5,"featured_carousel_arrows_on_the_sides":false,"featured_carousel_height":250,"featured_carousel_width":80,"featured_carousel_image_size":0,"featured_carousel_image_height":250,"featured_carousel_arrow_color":"#eeeeee","verified_count_badge_style":"branded","verified_count_badge_orientation":"horizontal","verified_count_badge_color_style":"judgeme_brand_color","verified_count_badge_color":"#108474","is_verified_count_badge_a_link":false,"verified_count_badge_url":"","verified_count_badge_show_jm_brand":true,"widget_rating_preset_default":5,"widget_first_sub_tab":"product-reviews","widget_show_histogram":true,"widget_histogram_use_custom_color":false,"widget_pagination_use_custom_color":false,"widget_star_use_custom_color":false,"widget_verified_badge_use_custom_color":false,"widget_write_review_use_custom_color":false,"picture_reminder_submit_button":"Upload Pictures","enable_review_videos":false,"mute_video_by_default":false,"widget_sorting_videos_first_text":"Videos First","widget_review_pending_text":"Pending","featured_carousel_items_for_large_screen":3,"social_share_options_order":"Facebook,Twitter","remove_microdata_snippet":false,"disable_json_ld":false,"enable_json_ld_products":false,"preview_badge_show_question_text":false,"preview_badge_no_question_text":"No questions","preview_badge_n_question_text":"{{ number_of_questions }} question/questions","qa_badge_show_icon":false,"qa_badge_position":"same-row","remove_judgeme_branding":false,"widget_add_search_bar":false,"widget_search_bar_placeholder":"Search","widget_sorting_verified_only_text":"Verified only","widget_sorting_most_relevant_text":"Most Relevant","featured_carousel_theme":"default","featured_carousel_show_rating":true,"featured_carousel_show_title":true,"featured_carousel_show_body":true,"featured_carousel_show_date":false,"featured_carousel_show_reviewer":true,"featured_carousel_show_product":false,"featured_carousel_header_background_color":"#108474","featured_carousel_header_text_color":"#ffffff","featured_carousel_name_product_separator":"reviewed","featured_carousel_full_star_background":"#108474","featured_carousel_empty_star_background":"#dadada","featured_carousel_vertical_theme_background":"#f9fafb","featured_carousel_verified_badge_enable":true,"featured_carousel_verified_badge_color":"#108474","featured_carousel_border_style":"round","featured_carousel_review_line_length_limit":3,"featured_carousel_more_reviews_button_text":"Read more reviews","featured_carousel_view_product_button_text":"View product","all_reviews_page_load_reviews_on":"scroll","all_reviews_page_load_more_text":"Load More Reviews","disable_fb_tab_reviews":false,"enable_ajax_cdn_cache":false,"widget_public_name_text":"displayed publicly like","default_reviewer_name":"John Smith","default_reviewer_name_has_non_latin":true,"widget_reviewer_anonymous":"Anonymous","medals_widget_title":"Judge.me Review Medals","medals_widget_background_color":"#f9fafb","medals_widget_position":"footer_all_pages","medals_widget_border_color":"#f9fafb","medals_widget_verified_text_position":"left","medals_widget_use_monochromatic_version":false,"medals_widget_elements_color":"#108474","show_reviewer_avatar":true,"widget_invalid_yt_video_url_error_text":"Not a YouTube video URL","widget_max_length_field_error_text":"Please enter no more than {0} characters.","widget_show_country_flag":false,"widget_show_collected_via_shop_app":true,"widget_verified_by_shop_badge_style":"light","widget_verified_by_shop_text":"Verified by Shop","widget_show_photo_gallery":false,"widget_load_with_code_splitting":true,"widget_ugc_install_preference":false,"widget_ugc_title":"Made by us, Shared by you","widget_ugc_subt
1389itle":"Tag us to see your picture featured in our page","widget_ugc_arrows_color":"#ffffff","widget_ugc_primary_button_text":"Buy Now","widget_ugc_primary_button_background_color":"#108474","widget_ugc_primary_button_text_color":"#ffffff","widget_ugc_primary_button_border_width":"0","widget_ugc_primary_button_border_style":"none","widget_ugc_primary_button_border_color":"#108474","widget_ugc_primary_button_border_radius":"25","widget_ugc_secondary_button_text":"Load More","widget_ugc_secondary_button_background_color":"#ffffff","widget_ugc_secondary_button_text_color":"#108474","widget_ugc_secondary_button_border_width":"2","widget_ugc_secondary_button_border_style":"solid","widget_ugc_secondary_button_border_color":"#108474","widget_ugc_secondary_button_border_radius":"25","widget_ugc_reviews_button_text":"View Reviews","widget_ugc_reviews_button_background_color":"#ffffff","widget_ugc_reviews_button_text_color":"#108474","widget_ugc_reviews_button_border_width":"2","widget_ugc_reviews_button_border_style":"solid","widget_ugc_reviews_button_border_color":"#108474","widget_ugc_reviews_button_border_radius":"25","widget_ugc_reviews_button_link_to":"judgeme-reviews-page","widget_ugc_show_post_date":true,"widget_ugc_max_width":"800","widget_rating_metafield_value_type":true,"widget_primary_color":"#FFB9D1","widget_enable_secondary_color":false,"widget_secondary_color":"#edf5f5","widget_summary_average_rating_text":"{{ average_rating }} out of 5","widget_media_grid_title":"Customer photos \u0026 videos","widget_media_grid_see_more_text":"See more","widget_round_style":false,"widget_show_product_medals":true,"widget_verified_by_judgeme_text":"Verified by Judge.me","widget_show_store_medals":true,"widget_verified_by_judgeme_text_in_store_medals":"Verified by Judge.me","widget_media_field_exceed_quantity_message":"Sorry, we can only accept {{ max_media }} for one review.","widget_media_field_exceed_limit_message":"{{ file_name }} is too large, please select a {{ media_type }} less than {{ size_limit }}MB.","widget_review_submitted_text":"Review Submitted!","widget_question_submitted_text":"Question Submitted!","widget_close_form_text_question":"Cancel","widget_write_your_answer_here_text":"Write your answer here","widget_enabled_branded_link":true,"widget_show_collected_by_judgeme":true,"widget_reviewer_name_color":"","widget_write_review_text_color":"","widget_write_review_bg_color":"","widget_collected_by_judgeme_text":"collected by Judge.me","widget_pagination_type":"standard","widget_load_more_text":"Load More","widget_load_more_color":"#108474","widget_full_review_text":"Full Review","widget_read_more_reviews_text":"Read More Reviews","widget_read_questions_text":"Read Questions","widget_questions_and_answers_text":"Questions \u0026 Answers","widget_verified_by_text":"Verified by","widget_verified_text":"Verified","widget_number_of_reviews_text":"{{ number_of_reviews }} reviews","widget_back_button_text":"Back","widget_next_button_text":"Next","widget_custom_forms_filter_button":"Filters","custom_forms_style":"horizontal","widget_show_review_information":false,"how_reviews_are_collected":"How reviews are collected?","widget_show_review_keywords":false,"widget_gdpr_statement":"How we use your data: We'll only contact you about the review you left, and only if necessary. By submitting your review, you agree to Judge.me's \u003ca href='https://judge.me/terms' target='_blank' rel='nofollow noopener'\u003eterms\u003c/a\u003e, \u003ca href='https://judge.me/privacy' target='_blank' rel='nofollow noopener'\u003eprivacy\u003c/a\u003e and \u003ca href='https://judge.me/content-policy' target='_blank' rel='nofollow noopener'\u003econtent\u003c/a\u003e policies.","widget_multilingual_sorting_enabled":false,"widget_translate_review_content_enabled":false,"widget_translate_review_content_method":"manual","popup_widget_review_selection":"automatically_with_pictures","popup_widget_round_border_style":true,"popup_widget_show_title":true,"popup_widget_show_body":true,"popup_widget_show_reviewer":false,"popup_widget_show_product":true,"popup_widget_show_pictures":true,"popup_widget_use_review_picture":true,"popup_widget_show_on_home_page":true,"popup_widget_show_on_product_page":true,"popup_widget_show_on_collection_page":true,"popup_widget_show_on_cart_page":true,"popup_widget_position":"bottom_left","popup_widget_first_review_delay":5,"popup_widget_duration":5,"popup_widget_interval":5,"popup_widget_review_count":5,"popup_widget_hide_on_mobile":true,"review_snippet_widget_round_border_style":true,"review_snippet_widget_card_color":"#FFFFFF","review_snippet_widget_text_color":"#000000","review_snippet_widget_lighter_text_color":"#7B7B7B","review_snippet_widget_slider_arrows_background_color":"#FFFFFF","review_snippet_widget_slider_arrows_color":"#000000","review_snippet_widget_star_color":"#FFB9D1","show_product_variant":false,"all_reviews_product_variant_label_text":"Variant: ","widget_show_verified_branding":true,"widget_ai_summary_title":"Customers say","widget_ai_summary_disclaimer":"AI-powered review summary based on recent customer reviews","widget_show_ai_summary":false,"widget_show_ai_summary_bg":false,"write_review_button_visibility":"everyone","store_summary_widget_heading":"Customers rate this store","store_summary_widget_button_text":"View customer reviews","store_summary_widget_button_theme_text":"See AI reviews summary","widget_show_review_title_input":true,"widget_autofill_review_title":true,"redirect_reviewers_invited_via_email":"external_form","request_store_review_after_product_review":false,"request_review_other_products_in_order":false,"review_form_color_scheme":"default","review_form_corner_style":"square","review_form_star_color":"#FFB9D1","review_form_text_color":"#333333","review_form_background_color":"#ffffff","review_form_field_background_color":"#fafafa","review_form_button_color":"#FFB9D1","review_form_button_text_color":"#ffffff","review_form_modal_overlay_color":"#000000","review_form_theme":"multi_step","review_form_location":"in_store_popup","review_form_external_page_background_color":"#C5F7F0","review_content_screen_title_text":"How would you rate this product?","review_content_introduction_text":"We would love it if you would share a bit about your experience.","store_review_form_title_text":"How would you rate this store?","store_review_form_introduction_text":"We would love it if you would share a bit about your experience.","show_review_guidance_text":true,"one_star_review_guidance_text":"Poor","five_star_review_guidance_text":"Great","customer_information_screen_title_text":"About you","customer_information_introduction_text":"Please tell us more about you.","custom_questions_screen_title_text":"Your experience in more detail","custom_questions_introduction_text":"Here are a few questions to help us understand more about your experience.","review_submitted_screen_title_text":"Thanks for your review!","review_submitted_screen_thank_you_text":"We are processing it and it will appear on the store soon.","review_submitted_screen_email_verification_text":"Please confirm your email by clicking the link we just sent you. This helps us keep reviews authentic.","confirm_email_screen_title_text":"Confirm your email","confirm_email_screen_message_text":"To help keep reviews authentic, we'll send you a secure link to continue writing your review. It only takes a moment.","check_email_screen_title_text":"Check your email","check_email_screen_message_text":"We sent you an email to {{ email }}. Click the button on the email to continue.","check_email_screen_resend_message_text":"Email resent!","check_email_resend_hint_text":"Didn't get the email? Check your spam folder or [resend the email].","verification_email_rate_limit_error_text":"You've reached the limit for review attempts on this product. Please check your inbox or try again later.","review_submitted_request_store_review_text":"Would you like to share your experience of shopping with us?","review_submitted_review_other_products_text":"Would you like to review these products?","store_review_screen_title_text":"Would you like to share your experience of shopping with us?","store_review_introduction_text":"We value your feedback and use it to improve. Please share any thoughts or suggestions you have.","reviewer_media_screen_title_picture_text":"Share a picture","reviewer_media_introduction_picture_text":"Upload a photo to support your review.","reviewer_media_screen_title_video_text":"Share a video","reviewer_media_introduction_video_text":"Upload a video to support your review.","reviewer_media_screen_title_picture_or_video_text":"Share a picture or video","reviewer_media_introduction_picture_or_video_text":"Upload a photo or video to support your review.","reviewer_media_
1389youtube_url_text":"Paste your Youtube URL here","advanced_settings_next_step_button_text":"Next","advanced_settings_close_review_button_text":"Close","modal_write_review_flow":false,"write_review_flow_required_text":"Required","write_review_flow_privacy_message_text":"We respect your privacy.","write_review_flow_anonymous_text":"Post review as anonymous","write_review_flow_visibility_text":"This won't be visible to other customers.","write_review_flow_multiple_selection_help_text":"Select as many as you like","write_review_flow_single_selection_help_text":"Select one option","write_review_flow_required_field_error_text":"This field is required","write_review_flow_invalid_email_error_text":"Please enter a valid email address","write_review_flow_max_length_error_text":"Max. {{ max_length }} characters.","write_review_flow_media_upload_text":"\u003cb\u003eClick to upload\u003c/b\u003e or drag and drop","write_review_flow_gdpr_statement":"We'll only contact you about your review if necessary. By submitting your review, you agree to our \u003ca href='https://judge.me/terms' target='_blank' rel='nofollow noopener'\u003eterms and conditions\u003c/a\u003e and \u003ca href='https://judge.me/privacy' target='_blank' rel='nofollow noopener'\u003eprivacy policy\u003c/a\u003e.","rating_only_reviews_enabled":false,"show_negative_reviews_help_screen":false,"new_review_flow_help_screen_rating_threshold":3,"negative_review_resolution_screen_title_text":"Tell us more","negative_review_resolution_text":"Your experience matters to us. If there were issues with your purchase, we're here to help. Feel free to reach out to us, we'd love the opportunity to make things right.","negative_review_resolution_button_text":"Contact us","negative_review_resolution_proceed_with_review_text":"Leave a review","negative_review_resolution_subject":"Issue with purchase from {{ shop_name }}.{{ order_name }}","coupon_promo_intro_any_review_text":"Write a review and get a coupon for {{ amount }} off your next purchase","coupon_promo_intro_with_photo_text":"Write a review and add a photo or video to get a coupon for {{ amount }} off your next purchase","coupon_promo_intro_with_video_text":"Write a review and add a video to get a coupon for {{ amount }} off your next purchase","coupon_promo_intro_up_to_any_review_text":"Write a review and get a coupon for up to {{ amount }} off your next purchase","coupon_promo_intro_up_to_with_photo_text":"Write a review and add a photo or video to get a coupon for up to {{ amount }} off your next purchase","coupon_promo_intro_external_text":"Write a review and get a reward for your next purchase","coupon_promo_intro_external_with_photo_text":"Write a review and add a photo or video to get a reward for your next purchase","coupon_promo_intro_external_with_video_text":"Write a review and add a video to get a reward for your next purchase","coupon_promo_media_photo_text":"Add a photo or video and get a coupon for {{ amount }} off your next purchase","coupon_promo_media_photo_only_text":"Add a photo and get a coupon for {{ amount }} off your next purchase","coupon_promo_media_video_text":"Add a video and get a coupon for {{ amount }} off your next purchase","coupon_promo_media_external_photo_text":"Add a photo or video and get a reward for your next purchase","coupon_promo_media_external_photo_only_text":"Add a photo and get a reward for your next purchase","coupon_promo_media_external_video_text":"Add a video and get a reward for your next purchase","coupon_promo_success_text":"You've got a coupon for your next purchase at {{ shop_name }}!","coupon_promo_success_subtext":"You'll receive your coupon email within the hour.","preview_badge_collection_page_install_status":false,"widget_review_custom_css":"","preview_badge_custom_css":"","preview_badge_stars_count":"5-stars","featured_carousel_custom_css":"","floating_tab_custom_css":"","all_reviews_widget_custom_css":"","medals_widget_custom_css":"","verified_badge_custom_css":"","all_reviews_text_custom_css":"","transparency_badges_collected_via_store_invite":false,"transparency_badges_from_another_provider":false,"transparency_badges_collected_from_store_visitor":false,"transparency_badges_collected_by_verified_review_provider":true,"transparency_badges_earned_reward":false,"transparency_badges_collected_via_store_invite_text":"Review collected via store invitation","transparency_badges_from_another_provider_text":"Review collected from another provider","transparency_badges_collected_from_store_visitor_text":"Review collected from a store visitor","transparency_badges_written_in_google_text":"Review written in Google","transparency_badges_written_in_etsy_text":"Review written in Etsy","transparency_badges_written_in_shop_app_text":"Review written in Shop App","transparency_badges_earned_reward_text":"Review earned a reward for future purchase","product_review_widget_per_page":10,"widget_other_languages_reviews_per_page":3,"widget_store_review_label_text":"Review about the store","widget_cart_mode_aggregate_heading_text":"Customers rate this store","checkout_comment_extension_title_on_product_page":"Customer Comments","checkout_comment_extension_num_latest_comment_show":5,"checkout_comment_extension_format":"name_and_timestamp","checkout_comment_customer_name":"last_initial","checkout_comment_comment_notification":true,"preview_badge_collection_page_install_preference":false,"preview_badge_home_page_install_preference":false,"preview_badge_product_page_install_preference":false,"review_widget_install_preference":"","review_carousel_install_preference":false,"floating_reviews_tab_install_preference":"none","verified_reviews_count_badge_install_preference":false,"all_reviews_text_install_preference":false,"review_widget_best_location":false,"judgeme_medals_install_preference":false,"review_widget_revamp_enabled":false,"review_widget_qna_enabled":false,"review_widget_header_theme":"minimal","review_widget_widget_title_enabled":true,"review_widget_header_text_size":"medium","review_widget_header_text_weight":"regular","review_widget_average_rating_style":"compact","review_widget_bar_chart_enabled":true,"review_widget_bar_chart_type":"numbers","review_widget_bar_chart_style":"standard","review_widget_expanded_media_gallery_enabled":false,"review_widget_show_review_highlights":false,"review_widget_show_review_keywords_in_gray":false,"review_widget_reviews_section_theme":"standard","review_widget_image_style":"thumbnails","review_widget_review_image_ratio":"square","review_widget_stars_size":"medium","review_widget_verified_badge":"standard_text","review_widget_review_title_text_size":"medium","review_widget_review_text_size":"medium","review_widget_review_text_length":"medium","review_widget_number_of_columns_desktop":3,"review_widget_carousel_transition_speed":5,"review_widget_custom_questions_answers_display":"always","review_widget_card_section_size":"small","review_widget_button_text_color":"#FFFFFF","review_widget_text_color":"#000000","review_widget_lighter_text_color":"#7B7B7B","review_widget_corner_styling":"soft","review_widget_review_word_singular":"review","review_widget_review_word_plural"
1389:"reviews","review_widget_voting_label":"Helpful?","review_widget_shop_reply_label":"Reply from {{ shop_name }}:","review_widget_filters_title":"Filters","review_widget_filter_rating_title":"Rating","review_widget_filter_keyword_title":"Keyword","review_widget_clear_filters_text":"Clear filters","review_widget_expand_more_text":"More","review_widget_review_highlights_title":"Review highlights","qna_widget_question_word_singular":"Question","qna_widget_question_word_plural":"Questions","qna_widget_answer_reply_label":"Answer from {{ answerer_name }}:","qna_content_screen_title_text":"Ask a question about this product","qna_widget_question_required_field_error_text":"Please enter your question.","qna_widget_flow_gdpr_statement":"We'll only contact you about your question if necessary. By submitting your question, you agree to our \u003ca href='https://judge.me/terms' target='_blank' rel='nofollow noopener'\u003eterms and conditions\u003c/a\u003e and \u003ca href='https://judge.me/privacy' target='_blank' rel='nofollow noopener'\u003eprivacy policy\u003c/a\u003e.","qna_widget_question_submitted_text":"Thanks for your question!","qna_widget_close_form_text_question":"Close","qna_widget_question_submit_success_text":"We’ll notify you by email when your question is answered.","all_reviews_widget_v2025_enabled":false,"all_reviews_widget_v2025_header_theme":"default","all_reviews_widget_v2025_widget_title_enabled":true,"all_reviews_widget_v2025_header_text_size":"medium","all_reviews_widget_v2025_header_text_weight":"regular","all_reviews_widget_v2025_average_rating_style":"compact","all_reviews_widget_v2025_bar_chart_enabled":true,"all_reviews_widget_v2025_bar_chart_type":"numbers","all_reviews_widget_v2025_bar_chart_style":"standard","all_reviews_widget_v2025_expanded_media_gallery_enabled":false,"all_reviews_widget_v2025_show_store_medals":true,"all_reviews_widget_v2025_show_photo_gallery":true,"all_reviews_widget_v2025_show_review_keywords":false,"all_reviews_widget_v2025_show_ai_summary":false,"all_reviews_widget_v2025_show_ai_summary_bg":false,"all_reviews_widget_v2025_show_review_highlights":false,"all_reviews_widget_v2025_show_review_keywords_in_gray":false,"all_reviews_widget_v2025_add_search_bar":false,"all_reviews_widget_v2025_default_sort_method":"most-recent","all_reviews_widget_v2025_reviews_per_page":10,"all_reviews_widget_v2025_reviews_section_theme":"default","all_reviews_widget_v2025_image_style":"thumbnails","all_reviews_widget_v2025_review_image_ratio":"square","all_reviews_widget_v2025_stars_size":"medium","all_reviews_widget_v2025_verified_badge":"standard_text","all_reviews_widget_v2025_review_title_text_size":"medium","all_reviews_widget_v2025_review_text_size":"medium","all_reviews_widget_v2025_review_text_length":"medium","all_reviews_widget_v2025_number_of_columns_desktop":3,"all_reviews_widget_v2025_carousel_transition_speed":5,"all_reviews_widget_v2025_custom_questions_answers_display":"always","all_reviews_widget_v2025_review_dates":false,"all_reviews_widget_v2025_card_section_size":"small","all_reviews_widget_v2025_show_product_variant":false,"all_reviews_widget_v2025_show_reviewer_avatar":true,"all_reviews_widget_v2025_reviewer_name_as_initial":"","all_reviews_widget_v2025_review_location_show":false,"all_reviews_widget_v2025_location_format":"","all_reviews_widget_v2025_show_country_flag":false,"all_reviews_widget_v2025_widget_thumb":false,"all_reviews_widget_v2025_verified_by_shop_badge_style":"light","all_reviews_widget_v2025_social_share":false,"all_reviews_widget_v2025_social_share_options_order":"Facebook,Twitter,LinkedIn,Pinterest","all_reviews_widget_v2025_pagination_type":"standard","all_reviews_widget_v2025_button_text_color":"#FFFFFF","all_reviews_widget_v2025_text_color":"#000000","all_reviews_widget_v2025_lighter_text_color":"#7B7B7B","all_reviews_widget_v2025_corner_styling":"soft","all_reviews_widget_v2025_title":"Customer reviews","all_reviews_widget_v2025_ai_summary_title":"Customers say about this store","all_reviews_widget_v2025_no_review_text":"Be the first to write a review","all_reviews_widget_v2025_review_highlights_title":"Review highlights","reviews_grid_widget_show_sample_reviews":false,"reviews_grid_widget_review_selection":"all","reviews_grid_widget_select_products":[],"reviews_grid_widget_show_media_only":false,"reviews_grid_widget_display_order":"media_first","reviews_grid_widget_card_grouping":"per_media","reviews_grid_widget_columns_desktop":3,"reviews_grid_widget_rows_desktop":3,"reviews_grid_widget_columns_mobile":2,"reviews_grid_widget_rows_mobile":6,"reviews_grid_widget_show_stars":true,"reviews_grid_widget_show_reviewer_name":true,"reviews_grid_widget_show_review_title_on_hover_desktop":true,"reviews_grid_widget_corner_styling":"soft","reviews_grid_widget_card_spacing":"medium","reviews_grid_widget_header_text_color":"#000000","reviews_grid_widget_star_and_reviewer_name_color":"#F9F9F9","reviews_grid_widget_overlay_and_background_color":"#000000","reviews_grid_widget_content_color":"#F9F9F9","reviews_grid_widget_header_text":"From our customers","reviews_grid_widget_show_average_rating":true,"trust_badge_enabled":false,"trust_badge_structure":"outline","trust_badge_color":"black","trust_badge_star":"black","trust_badge_rating_display_default":"show_avg_text","platform":"shopify","branding_url":"https://app.judge.me/reviews","branding_text":"Powered by Judge.me","locale":"en","reply_name":"Blossom Coffee Roasters","shop_currency":"USD","widget_version":"3.0","footer":true,"autopublish":true,"review_dates":true,"enable_custom_form":false,"shop_locale":"en","enable_multi_locales_translations":false,"show_review_title_input":true,"autofill_review_title":true,"review_verification_email_status":"always","require_verification_before_submit":false,"sign_in_with_
1389shop_enabled":false,"customer_account_validation_enabled":true,"most_relevant_sort_enabled":false,"coupon_promo_invited_eligible":true,"coupon_promo_web_eligible":false,"uses_coupon_integration":false,"uses_external_coupon":false,"can_be_branded":true,"rtl_stars_enabled_ar":true,"rtl_stars_enabled_he":true,"reply_name_text":"Blossom Coffee Roasters"};</script>
1389 <style class='jdgm-settings-style'>.jdgm-xx{left:0}:root{--jdgm-primary-color: #FFB9D1;--jdgm-secondary-color: rgba(255,185,209,0.1);--jdgm-star-color: #FFB9D1;--jdgm-write-review-text-color: white;--jdgm-write-review-bg-color: #FFB9D1;--jdgm-paginate-color: #FFB9D1;--jdgm-border-radius: 0;--jdgm-reviewer-name-color: #FFB9D1}.jdgm-histogram__bar-content{background-color:#FFB9D1}.jdgm-rev[data-verified-buyer=true] .jdgm-rev__icon.jdgm-rev__icon:after,.jdgm-rev__buyer-badge.jdgm-rev__buyer-badge{color:white;background-color:#FFB9D1}.jdgm-review-widget--small .jdgm-gallery.jdgm-gallery .jdgm-gallery__thumbnail-link:nth-child(8) .jdgm-gallery__thumbnail-wrapper.jdgm-gallery__thumbnail-wrapper:before{content:"See more"}@media only screen and (min-width: 768px){.jdgm-gallery.jdgm-gallery .jdgm-gallery__thumbnail-link:nth-child(8) .jdgm-gallery__thumbnail-wrapper.jdgm-gallery__thumbnail-wrapper:before{content:"See more"}}.jdgm-prev-badge[data-average-rating='0.00']{display:none !important}.jdgm-author-all-initials{display:none !important}.jdgm-author-last-initial{display:none !important}.jdgm-rev-widg__title{visibility:hidden}.jdgm-rev-widg__summary-text{visibility:hidden}.jdgm-prev-badge__text{visibility:hidden}.jdgm-rev__prod-link-prefix:before{content:'about'}.jdgm-rev__variant-label:before{content:'Variant: '}.jdgm-rev__out-of-store-text:before{content:'(out of store)'}@media only screen and (min-width: 768px){.jdgm-rev__pics .jdgm-rev_all-rev-page-picture-separator,.jdgm-rev__pics .jdgm-rev__product-picture{display:none}}@media only screen and (max-width: 768px){.jdgm-rev__pics .jdgm-rev_all-rev-page-picture-separator,.jdgm-rev__pics .jdgm-rev__product-picture{display:none}}.jdgm-preview-badge[data-template="product"]{display:none !important}.jdgm-preview-badge[data-template="collection"]{display:none !important}.jdgm-preview-badge[data-template="index"]{display:none !important}.jdgm-review-widget[data-from-snippet="true"]{display:none !important}.jdgm-verified-count-badget[data-from-snippet="true"]{display:none !important}.jdgm-carousel-wrapper[data-from-snippet="true"]{display:none !important}.jdgm-all-reviews-text[data-from-snippet="true"]{display:none !important}.jdgm-medals-section[data-from-snippet="true"]{display:none !important}.jdgm-ugc-media-wrapper[data-from-snippet="true"]{display:none !important}.jdgm-rev__transparency-badge[data-badge-type="review_collected_via_store_invitation"]{display:none !important}.jdgm-rev__transparency-badge[data-badge-type="review_collected_from_another_provider"]{display:none !important}.jdgm-rev__transparency-badge[data-badge-type="review_collected_from_store_visitor"]{display:none !important}.jdgm-rev__transparency-badge[data-badge-type="review_earned_for_future_purchase"]{display:none !important}.jdgm-review-snippet-widget{--jdgm-snippet-card-color: #fff;--jdgm-snippet-text-color: #000;--jdgm-snippet-lighter-text-color: #7B7B7B;--jdgm-snippet-star-color: #FFB9D1;--jdgm-snippet-border-radius: 8px;--jdgm-snippet-arrows-bg-color: #fff;--jdgm-snippet-arrows-color: #000}.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__cards-container .jdgm-rev-snippet-card{border-radius:8px;background:#fff}.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__cards-container .jdgm-rev-snippet-card__rev-rating .jdgm-star{color:#FFB9D1}.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__prev-btn,.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__next-btn{border-radius:50%;background:#fff}.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__prev-btn>svg,.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__next-btn>svg{fill:#000}.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jm-mfp-content,.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev__icon,.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev__pic-img,.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev__reply{border-radius:8px}.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev[data-verified-buyer="true"] .jdgm-full-rev__icon::after{border-radius:8px}.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev .jdgm-rev__buyer-badge{border-radius:calc( 8px / 2 )}.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev .jdgm-full-rev__replier::before{content:'Blossom Coffee Roasters'}.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev .jdgm-full-rev__product-button{border-radius:calc( 8px * 6 )}
1390</style> <style class='jdgm-settings-style'></style>
1391
1392  
1393  
1394  
1395  <style class='jdgm-miracle-styles'>
1396  @-webkit-keyframes jdgm-spin{0%{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);-ms-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes jdgm-spin{0%{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);-ms-transform:rotate(359deg);transform:rotate(359deg)}}@font-face{font-family:'JudgemeStar';src:url("data:application/x-font-woff;charset=utf-8;base64,d09GRgABAAAAAAScAA0AAAAABrAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAEgAAAABoAAAAcbyQ+3kdERUYAAARgAAAAHgAAACAAMwAGT1MvMgAAAZgAAABGAAAAVi+vS9xjbWFwAAAB8AAAAEAAAAFKwBMjvmdhc3AAAARYAAAACAAAAAj//wADZ2x5ZgAAAkAAAAEJAAABdH33LXtoZWFkAAABMAAAAC0AAAA2BroQKWhoZWEAAAFgAAAAHAAAACQD5QHQaG10eAAAAeAAAAAPAAAAFAYAAABsb2NhAAACMAAAAA4AAAAOAO4AeG1heHAAAAF8AAAAHAAAACAASgAvbmFtZQAAA0wAAADeAAABkorWfVZwb3N0AAAELAAAACkAAABEp3ubLXgBY2BkYADhPPP4OfH8Nl8ZuJkYQODS2fRrCPr/aSYGxq1ALgcDWBoAO60LkwAAAHgBY2BkYGDc+v80gx4TAwgASaAICmABAFB+Arl4AWNgZGBgYGPQYWBiAAIwyQgWc2AAAwAHVQB6eAFjYGRiYJzAwMrAwejDmMbAwOAOpb8ySDK0MDAwMbByMsCBAAMCBKS5pjA4PGB4wMR44P8BBj3GrQymQGFGkBwAjtgK
1396/gAAeAFjYoAAEA1jAwAAZAAHAHgB3crBCcAwDEPRZydkih567CDdf4ZskmLwFBV8xBfCaC4BXkOUmx4sU0h2ngNb9V0vQCxaRKIAevT7fGWuBrEAAAAAAAAAAAA0AHgAugAAeAF9z79Kw1AUx/FzTm7un6QmJtwmQ5Bg1abgEGr/BAqlU6Gju+Cgg1MkQ/sA7Vj7BOnmO/gUvo2Lo14NqIO6/IazfD8HEODtmQCfoANwNsyp2/GJt3WKQrd1NLiYYWx2PBqOsmJMEOznPOTzfSCrhAtbbLdmeFLJV9eKd63WLrZcIcuaEVdssWCKM6pLCfTVOYbz/0pNSMSZKLIZpvh78sAUH6PlMrreTCabP9r+Z/puPZ2ur/RqpQHgh+MIegCnXeM4MRAPjYN//5tj4ZtTjkFqEdmeMShlEJ7tVAly2TAkx6R68Fl4E/aVvn8JqHFQ4JS1434gXKcuL31dDhzs3YbsEOAd/IU88gAAAHgBfY4xTgMxEEVfkk0AgRCioKFxQYd2ZRtpixxgRU2RfhU5q5VWseQ4JdfgAJyBlmNwAM7ABRhZQ0ORwp7nr+eZAa54YwYg9zm3ynPOeFRe8MCrciXOh/KSS76UV5L/iDmrLiS5AeU519wrL3jmSbkS5115yR2fyivJv9kx0ZMZ2RLZw27q87iNQi8EBo5FSPIMw3HqBboi5lKTGAGDp8FKXWP+t9TU01Lj5His1Ba6uM9dTEMwvrFmbf5GC/q2drW3ruXUhhsCiQOjznFlCzYhHUZp4xp76vsvQh89CQAAeAFjYGJABowM6IANLMrEyMTIzMjCXpyRWJBqZshWXJJYBKOMAFHFBucAAAAAAAAB//8AAngBY2BkYGDgA2IJBhBgAvKZGViBJAuYxwAABJsAOgAAeAFjYGBgZACCk535hiD60tn0azAaAEqpB6wAAA==") format("woff");font-weight:normal;font-style:normal}.jdgm-star{font-family:'JudgemeStar';display:inline !important;text-decoration:none !important;padding:0 4px 0 0 !important;margin:0 !important;font-weight:bold;opacity:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.jdgm-star:hover{opacity:1}.jdgm-star:last-of-type{padding:0 !important}.jdgm-star.jdgm--on:before{content:"\e000"}.jdgm-star.jdgm--off:before{content:"\e001"}.jdgm-star.jdgm--half:before{content:"\e002"}.jdgm-widget *{margin:0;line-height:1.4;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-overflow-scrolling:touch}.jdgm-hidden{display:none !important;visibility:hidden !important}.jdgm-temp-hidden{display:none}.jdgm-spinner{width:40px;height:40px;margin:auto;border-radius:50%;border-top:2px solid #eee;border-right:2px solid #eee;border-bottom:2px solid #eee;border-left:2px solid #ccc;-webkit-animation:jdgm-spin 0.8s infinite linear;animation:jdgm-spin 0.8s infinite linear}.jdgm-spinner:empty{display:block}.jdgm-prev-badge{display:block !important}
1397
1398</style>
1399
1400
1401  
1402  
1403   
1404
1405
1406
1407
1408<script data-cfasync='false' class='jdgm-script'>
1409!function(e){window.jdgm=window.jdgm||{};
1410/* INF-1976 */
1411var _jdgmBlocked=function(){var raw=(window.jdgmSettings||{}).hostname_allowlist;var list=(raw==null?"":""+raw).split(/[\s,]+/).map(function(h){return h.trim().toLowerCase().replace(/\.$/,"");}).filter(function(h){return h;});if(!list.length)return false;var host=(e.location.hostname||"").toLowerCase().replace(/\.$/,"");if(/(^|\.)shopifypreview\.com$/.test(host))return false;var bare=host.replace(/^www\./,"");for(var i=0;i<list.length;i++){var en=list[i];if(en.indexOf("*.")===0){var b=en.slice(2);if(host===b||host.slice(-(b.length+1))==="."+b)return false;}else if(bare===en.replace(/^www\./,""))return false;}return true;}();
1412if(_jdgmBlocked){jdgm._loaderExecuted=true;jdgm._blocked=true;var _jdgmS=e.createElement("style");_jdgmS.textContent='[class^="jdgm-"],[class*=" jdgm-"]{display:none !important}';(e.head||e.documentElement).appendChild(_jdgmS);return;}
1413jdgm.CDN_HOST="https://cdnwidget.judge.me/",jdgm.CDN_HOST_ALT="https://cdn2.judge.me/cdn/widget_frontend/",jdgm.API_HOST="https://api.judge.me/",jdgm.CDN_BASE_URL="https://cdn.shopify.com/extensions/01a11b30-98d5-7ae3-b2f4-f79b3c6f32c4/judgeme-775/assets/",jdgm.CDN_API_HOST="https://cdn.judge.me/",
1414jdgm.docReady=function(d){(e.attachEvent?"complete"===e.readyState:"loading"!==e.readyState)?
1415setTimeout(d,0):e.addEventListener("DOMContentLoaded",d)},jdgm.loadCSS=function(d,t,o,a){
1416!o&&jdgm.loadCSS.requestedUrls.indexOf(d)>=0||(jdgm.loadCSS.requestedUrls.push(d),
1417(a=e.createElement("link")).rel="stylesheet",a.class="jdgm-stylesheet",a.media="nope!",
1418a.href=d,a.onload=function(){this.media="all",t&&setTimeout(t)},e.body.appendChild(a))},
1419jdgm.loadCSS.requestedUrls=[],jdgm.loadJS=function(e,d){var t=new XMLHttpRequest;
1420t.onreadystatechange=function(){4===t.readyState&&t.status>=200&&t.status<300&&(Function(t.response)(),d&&d(t.response))},
1421t.open("GET",e),t.onerror=function(){if(e.indexOf(jdgm.CDN_HOST)===0&&jdgm.CDN_HOST_ALT!==jdgm.CDN_HOST){var f=e.replace(jdgm.CDN_HOST,jdgm.CDN_HOST_ALT);jdgm.loadJS(f,d)}},t.send()},jdgm.docReady((function(){(window.jdgmLoadCSS||e.querySelectorAll(
1422".jdgm-widget, .jdgm-all-reviews-page").length>0)&&(jdgmSettings.widget_load_with_code_splitting?
1423parseFloat(jdgmSettings.widget_version)>=3?jdgm.loadCSS(jdgm.CDN_BASE_URL+"widget_v3_base.css"):
1424jdgm.loadCSS(jdgm.CDN_BASE_URL+"widget_base.css"):jdgm.loadCSS(jdgm.CDN_BASE_URL+"shopify_v2.css")
1425)}))}(document);
1426</script>
1426
1427<noscript><link rel="stylesheet" type="text/css" media="all" href="https://cdn.shopify.com/extensions/01a11b30-98d5-7ae3-b2f4-f79b3c6f32c4/judgeme-775/assets/shopify_v2.css"></noscript>
1428
1429<!-- BEGIN app snippet: theme_fix_tags -->
1429<script>
1430  (function() {
1431    var jdgmThemeFixes = null;
1432    if (!jdgmThemeFixes) return;
1433
1434    // "All themes" fix: CSS and JS applied on every theme. CSS is injected
1435    // before the per-theme fix so the theme-specific CSS wins the cascade.
1436    // HTML is never applied globally (too risky).
1437    var allThemesFix = jdgmThemeFixes['all'];
1438    if (allThemesFix && allThemesFix.css) {
1439      var allStyleTag = document.createElement('style');
1440      allStyleTag.classList.add('jdgm-theme-fix-style-all');
1441      allStyleTag.innerHTML = allThemesFix.css;
1442      document.head.append(allStyleTag);
1443    };
1444
1445    if (allThemesFix && allThemesFix.js) {
1446      var allScriptTag = document.createElement('script');
1447      allScriptTag.classList.add('jdgm-theme-fix-script-all');
1448      allScriptTag.innerHTML = allThemesFix.js;
1449      document.head.append(allScriptTag);
1450    };
1451
1452    var thisThemeFix = jdgmThemeFixes[Shopify.theme.id];
1453    if (!thisThemeFix) return;
1454
1455    if (thisThemeFix.html) {
1456      document.addEventListener("DOMContentLoaded", function() {
1457        var htmlDiv = document.createElement('div');
1458        htmlDiv.classList.add('jdgm-theme-fix-html');
1459        htmlDiv.innerHTML = thisThemeFix.html;
1460        document.body.append(htmlDiv);
1461      });
1462    };
1463
1464    if (thisThemeFix.css) {
1465      var styleTag = document.createElement('style');
1466      styleTag.classList.add('jdgm-theme-fix-style');
1467      styleTag.innerHTML = thisThemeFix.css;
1468      document.head.append(styleTag);
1469    };
1470
1471    if (thisThemeFix.js) {
1472      var scriptTag = document.createElement('script');
1473      scriptTag.classList.add('jdgm-theme-fix-script');
1474      scriptTag.innerHTML = thisThemeFix.js;
1475      document.head.append(scriptTag);
1476    };
1477  })();
1478</script>
1478
1479<!-- END app snippet -->
1480<!-- End of Judge.me Core -->
1481
1482
1483
1484<!-- END app block -->
1484<script src="https://cdn.shopify.com/extensions/01a11b30-98d5-7ae3-b2f4-f79b3c6f32c4/judgeme-775/assets/loader.js" type="text/javascript" defer="defer"></script>
1484
1485<link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
1486<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: 2337869,url: window.location.href,navigation_start,duration: currentMs - navigation_start,session_token,page_type: "product"};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 1486
1486
1487<script>
1488  window.__TREKKIE_SHIM_QUEUE = window.__TREKKIE_SHIM_QUEUE || [];
1489</script>
vendor: 1 bytes, line 1489
1489
1490<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}
1490).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: 2337869,storefrontBaseUrl: "https://blossomcoffeeroasters.com",extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint: "https://blossomcoffeeroasters.com/.well-known/shopify/monorail/unstable/produce_batch",surface: "storefront-renderer",enabledBetaFlags: ["4c64608a","16072cab","8450a54b"],webPixelsConfigList: [{"id":"1820623022","configuration":"{\"mailchimp_store_id\":\"store_h9qpskauh5hk5rgcemla\", \"mailchimp_user_id\":\"142265489\",\"mailchimp_list_id\":\"9d3a3ab32e\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"e357a49eadeb6216a959d63fa3fb8f55","type":"APP","apiClientId":2585307,"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"]}
1490,{"id":"1000308910","configuration":"{\"webPixelName\":\"Judge.me\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"8acc938b1a30dc7624e304493ca567d7","type":"APP","apiClientId":683015,"privacyPurposes":["ANALYTICS"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"id":"487063726","configuration":"{\"config\":\"{\\\"google_tag_ids\\\":[\\\"G-E1N1V4WPLX\\\",\\\"GT-WRDHDVV\\\"],\\\"target_country\\\":\\\"US\\\",\\\"gtag_events\\\":[{\\\"type\\\":\\\"search\\\",\\\"action_label\\\":\\\"G-E1N1V4WPLX\\\"},{\\\"type\\\":\\\"begin_checkout\\\",\\\"action_label\\\":\\\"G-E1N1V4WPLX\\\"},{\\\"type\\\":\\\"remove_from_cart\\\",\\\"action_label\\\":\\\"G-E1N1V4WPLX\\\"},{\\\"type\\\":\\\"view_item\\\",\\\"action_label\\\":[\\\"G-E1N1V4WPLX\\\",\\\"MC-QBN2SQSR6C\\\"]},{\\\"type\\\":\\\"purchase\\\",\\\"action_label\\\":[\\\"G-E1N1V4WPLX\\\",\\\"MC-QBN2SQSR6C\\\"]},{\\\"type\\\":\\\"add_shipping_info\\\",\\\"action_label\\\":\\\"G-E1N1V4WPLX\\\"},{\\\"type\\\":\\\"page_view\\\",\\\"action_label\\\":[\\\"G-E1N1V4WPLX\\\",\\\"MC-QBN2SQSR6C\\\"]},{\\\"type\\\":\\\"view_item_list\\\",\\\"action_label\\\":\\\"G-E1N1V4WPLX\\\"},{\\\"type\\\":\\\"add_payment_info\\\",\\\"action_label\\\":\\\"G-E1N1V4WPLX\\\"},{\\\"type\\\":\\\"add_to_cart\\\",\\\"action_label\\\":\\\"G-E1N1V4WPLX\\\"},{\\\"type\\\":\\\"view_cart\\\",\\\"action_label\\\":\\\"G-E1N1V4WPLX\\\"}],\\\"enable_monitoring_mode\\\":false}\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"a3321ca85cf5aaf6b57585fcd8d67b3a","type":"APP","apiClientId":1780363,"privacyPurposes":[],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized","enabledFlags":["9a3ed68a"]},{"id":"184877230","configuration":"{\"pixel_id\":\"768815557048986\",\"pixel_type\":\"facebook_pixel\",\"metaapp_system_user_token\":\"-\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"bd2f978c17a94bbb8a74d43de2165dc5","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":"83919022","eventPayloadVersion":"v1","runtimeContext":"LAX","scriptVersion":"1","type":"CUSTOM","privacyPurposes":["ANALYTICS"],"name":"Google Analytics tag (migrated)"},{"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":"Blossom Coffee Roasters","paymentSettings":{"currencyCode":"USD"},"myshopifyDomain":"vashon-coffee-company.myshopify.com","countryCode":"US","storefrontUrl":"https:\/\/blossomcoffeeroasters.com"},"customer":null,"cart":null,"checkout":null,"productVariants":[{"price":{"amount":22.5,"currencyCode":"USD"},"product":{"title":"Rwanda - Rulindo Murambi - Washed","vendor":"Blossom Coffee Roasters","id":"9218078736558","untranslatedTitle":"Rwanda - Rulindo Murambi - Washed","url":"\/products\/rwanda-rulindo-murambi","type":"Coffee"},"id":"48930908635310","image":{"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed.jpg?v=1788888722"},"sku":null,"title":"12oz","untranslatedTitle":"12oz"},{"price":{"amount":26.0,"currencyCode":"USD"},"product":{"title":"Rwanda - Rulindo Murambi - Washed","vendor":"Blossom Coffee Roasters","id":"9218078736558","untranslatedTitle":"Rwanda - Rulindo Murambi - Washed","url":"\/products\/rwanda-rulindo-murambi","type":"Coffee"},"id":"48930908668078","image":{"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53.jpg?v=1788888722"},"sku":null,"title":"1lb","untranslatedTitle":"1lb"},{"price":{"amount":48.0,"currencyCode":"USD"},"product":{"title":"Rwanda - Rulindo Murambi - Washed","vendor":"Blossom Coffee Roasters","id":"9218078736558","untranslatedTitle":"Rwanda - Rulindo Murambi - Washed","url":"\/products\/rwanda-rulindo-murambi","type":"Coffee"},"id":"48930908700846","image":{"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53.jpg?v=1788888722"},"sku":null,"title":"2lb","untranslatedTitle":"2lb"},{"price":{"amount":110.0,"currencyCode":"USD"},"product":{"title":"Rwanda - Rulindo Murambi - Washed","vendor":"Blossom Coffee Roasters","id":"9218078736558","untranslatedTitle":"Rwanda - Rulindo Murambi - Washed","url":"\/products\/rwanda-rulindo-murambi","type":"Coffee"},"id":"48930908733614","image":{"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53.jpg?v=1788888722"},"sku":null,"title":"5lb","untranslatedTitle":"5lb"}],"products":[{"id":"9218078736558","handle":"rwanda-rulindo-murambi","isCollective":null,"title":"Rwanda - Rulindo Murambi - Washed","type":"Coffee","untranslatedTitle":"Rwanda - Rulindo Murambi - Washed","url":"\/products\/rwanda-rulindo-murambi","vendor":"Blossom Coffee Roasters","remoteShopId":null,"variants":[{"id":"48930908635310","image":{"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed.jpg?v=1788888722"},"price":{"amount":22.5,"currencyCode":"USD"},"sku":null,"title":"12oz","untranslatedTitle":"12oz"},{"id":"48930908668078","image":{"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53.jpg?v=1788888722"},"price":{"amount":26.0,"currencyCode":"USD"},"sku":null,"title":"1lb","untranslatedTitle":"1lb"},{"id":"48930908700846","image":{"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53.jpg?v=1788888722"},"price":{"amount":48.0,"currencyCode":"USD"},"sku":null,"title":"2lb","untranslatedTitle":"2lb"},{"id":"48930908733614","image":{"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53.jpg?v=1788888722"},"price":{"amount":110.0,"currencyCode":"USD"},"sku":null,"title":"5lb","untranslatedTitle":"5lb"}]},{"id":"7982574207150","handle":"cold-brew-blend","isCollective":null,"title":"Cold Brew Blend","type":"Coffee","untranslatedTitle":"Cold Brew Blend","url":"\/products\/cold-brew-blend","vendor":"Blossom Coffee Roasters","remoteShopId":null,"variants":[{"id":"43970804482222","image":{"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Cold_Brew_Blend_Website_Bag_Photo.jpg?v=1784063478"},"price":{"amount":20.0,"currencyCode":"USD"},"sku":null,"title":"12 oz","untranslatedTitle":"12 oz"}]},{"id":"4697106645062","handle":"darkside-of-the-moon","isCollective":null,"title":"Dark Side of the Moon","type":"Coffee","untranslatedTitle":"Dark Side of the Moon","url":"\/products\/darkside-of-the-moon","vendor":"Blossom Coffee Roasters","remoteShopId":null,"variants":[{"id":"32113011458118","image":{"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/products\/Blossom_Coffee_Dark_Side_of_the_Moon.png?v=1776362775"},"price":{"amount":19.75,"currencyCode":"USD"},"sku":null,"title":"12 oz","untranslatedTitle":"12 oz"}]},{"id":"4618192650310","handle":"decaf-ethiopia-swiss-water-processed","isCollective":null,"title":"Decaf Ethiopia - Swiss Water Processed","type":"Coffee","untranslatedTitle":"Decaf Ethiopia - Swiss Water Processed","url":"\/products\/decaf-ethiopia-swiss-water-processed","vendor":"Blossom Coffee Roasters","remoteShopId":null,"variants":[{"id":"31974545588294","image":{"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Ethiopia_Decaf_Bag_for_Website.jpg?v=1773763228"},"price":{"amount":21.5,"currencyCode":"USD"},"sku":"","title":"12oz","untranslatedTitle":"12oz"}]},{"id":"6075311947950","handle":"deja-vu-1","isCollective":null,"title":"Deja Vu","type":"Coffee","untranslatedTitle":"Deja Vu","url":"\/products\/deja-vu-1","vendor":"Blossom Coffee Roasters","remoteShopId":null,"variants":[{"id":"37523725222062","image":{"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Deja_Vu_bag_front.png?v=1776366601"},"price":{"amount":20.5,"currencyCode":"USD"},"sku":null,"title":"12 oz","untranslatedTitle":"12 oz"}]},{"id":"6075322007726","handle":"dilworth","isCollective":null,"title":"Dilworth Decaf","type":"Coffee","untranslatedTitle":"Dilworth Decaf","url":"\/products\/dilworth","vendor":"Blossom Coffee Roasters","remoteShopId":null,"variants":[{"id":"37523813138606","image":{"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Dilworth_Decaf_bag_for_Website_no_ORG.jpg?v=1773780594"},"price":{"amount":20.5,"currencyCode":"USD"},"sku":null,"title":"12 oz","untranslatedTitle":"12 oz"}]},{"id":"4697152127046","handle":"espresso-velluto","isCollective":null,"title":"Espresso Velluto","type":"Coffee","untranslatedTitle":"Espresso Velluto","url":"\/products\/espresso-velluto","vendor":"Blossom Coffee Roasters","remoteShopId":null,"variants":[{"id":"32113040031814","image":{"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Espresso_Velluto_Bag_Front.jpg?v=1776365496"},"price":{"amount":20.0,"currencyCode":"USD"},"sku":null,"title":"12 oz","untranslatedTitle":"12 oz"}]},{"id":"4694481764422","handle":"ethiopia-ardi","isCollective":null,"title":"Ethiopia - Ardi - Natural","type":"Coffee","untranslatedTitle":"Ethiopia - Ardi - Natural","url":"\/products\/ethiopia-ardi","vendor":"Blossom Coffee Roasters","remoteShopId":null,"variants":[{"id":"32109462159430","image":{"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/products\/ArdiBagforWebsitePGEG.jpg?v=1633469792"},"price":{"amount":22.5,"currencyCode":"USD"},"sku":"","title":"12 oz","untranslatedTitle":"12 oz"}]},{"id":"6075319648430","handle":"first-light-breakfast-blend-1","isCollective":null,"title":"First Light Breakfast Blend","type":"Coffee","untranslatedTitle":"First Light Breakfast Blend","url":"\/products\/first-light-breakfast-blend-1","vendor":"Blossom Coffee Roasters","remoteShopId":null,"variants":[{"id":"37523799670958","image":{"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/products\/FirstLightRightAngelJPEG_3x-80.jpg?v=1605228752"},"price":{"amount":19.75,"currencyCode":"USD"},"sku":null,"title":"12 oz","untranslatedTitle":"12 oz"}]},{"id":"6075312505006","handle":"test-french-roast-organic-blend","isCollective":null,"title":"French Roast","type":"Coffee","untranslatedTitle":"French Roast","url":"\/products\/test-french-roast-organic-blend","vendor":"Blossom Coffee Roasters","remoteShopId":null,"variants":[{"id":"37523728793774","image":{"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/French_Roast_Bag__Front.jpg?v=1776367310"},"price":{"amount":20.5,"currencyCode":"USD"},"sku":null,"title":"12oz","untranslatedTitle":"12oz"}]},{"id":"8478748639406","handle":"guatemala-joyabaj-natural","isCollective":null,"title":"Guatemala - Joyabaj - Natural","type":"Coffee","untranslatedTitle":"Guatemala - Joyabaj - Natural","url":"\/products\/guatemala-joyabaj-natural","vendor":"Blossom Coffee Roasters","remoteShopId":null,"variants":[{"id":"45387660066990","image":{"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Guatemala_Joyabaj_Natural_3c6526a2-f6e9-4d06-9e1a-926766d64e9f.jpg?v=1787163606"},"price":{"amount":22.0,"currencyCode":"USD"},"sku":null,"title":"12oz","untranslatedTitle":"12oz"}]},{"id":"9142088007854","handle":"sumatra-gayo-wet-hulled","isCollective":null,"title":"Mandheling Gayo - Wet Hulled","type":"Coffee","untranslatedTitle":"Mandheling Gayo - Wet Hulled","url":"\/products\/sumatra-gayo-wet-hulled","vendor":"Blossom Coffee Roasters","remoteShopId":null,"variants":[{"id":"47964316827822","image":{"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Sumatra_Mandheling_Gayo_Wet_Hulled.jpg?v=1781046189"},"price":{"amount":21.0,"currencyCode":"USD"},"sku":null,"title":"12oz","untranslatedTitle":"12oz"}]},{"id":"9126582911150","handle":"mexico-alta-veracruz-natural","isCollective":null,"title":"Mexico - Altura Veracruz - Natural","type":"Coffee","untranslatedTitle":"Mexico - Altura Veracruz - Natural","url":"\/products\/mexico-alta-veracruz-natural","vendor":"Blossom Coffee Roasters","remoteShopId":null,"variants":[{"id":"47905379680430","image":{"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/MexicoAltaVeracruzNatural.jpg?v=1779735666"},"price":{"amount":20.5,"currencyCode":"USD"},"sku":null,"title":"12 oz.","untranslatedTitle":"12 oz."}]}
1490,{"id":"6075008778414","handle":"nectar","isCollective":null,"title":"Nectar","type":"Coffee","untranslatedTitle":"Nectar","url":"\/products\/nectar","vendor":"Blossom Coffee Roasters","remoteShopId":null,"variants":[{"id":"37522500223150","image":{"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Nectar_Web_PNG.png?v=1773192768"},"price":{"amount":20.5,"currencyCode":"USD"},"sku":null,"title":"12oz","untranslatedTitle":"12oz"}]}],"purchasingCompany":null},},"https://blossomcoffeeroasters.com/cdn","7ec887c8w14f9f074p854094e1m1370c602",{"modern":"","legacy":""},{"trekkieShim":true,"agentContext":true,"apiClientId":"580111","facebookCapiEnabled":"true","themeId":"145191108782","themeStoreId":"847","themePublished":"true","eventMetadataId":"74b223c0-c44e-4f13-b657-44c2f9bc0c3f","pageType":"product","resourceId":"9218078736558","shopId":"2337869","storefrontBaseUrl":"https:\/\/blossomcoffeeroasters.com","extensionBaseUrl":"https:\/\/extensions.shopifycdn.com\/cdn\/shopifycloud\/web-pixels-manager","surface":"storefront-renderer","enabledBetaFlags":"[\"4c64608a\", \"16072cab\", \"8450a54b\"]","isMerchantRequest":"false","hashVersion":"7ec887c8w14f9f074p854094e1m1370c602","publish":"custom","events":"[[\"page_viewed\",{}],[\"product_viewed\",{\"productVariant\":{\"price\":{\"amount\":22.5,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Rwanda - Rulindo Murambi - Washed\",\"vendor\":\"Blossom Coffee Roasters\",\"id\":\"9218078736558\",\"untranslatedTitle\":\"Rwanda - Rulindo Murambi - Washed\",\"url\":\"\/products\/rwanda-rulindo-murambi\",\"type\":\"Coffee\"},\"id\":\"48930908635310\",\"image\":{\"src\":\"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed.jpg?v=1788888722\"},\"sku\":null,\"title\":\"12oz\",\"untranslatedTitle\":\"12oz\"}}]]"});})();</script>
1490<script>
1491  window.ShopifyAnalytics = window.ShopifyAnalytics || {};
1492  window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {};
1493  window.ShopifyAnalytics.meta.currency = 'USD';
1494  var meta = {"product":{"id":9218078736558,"gid":"gid:\/\/shopify\/Product\/9218078736558","vendor":"Blossom Coffee Roasters","type":"Coffee","handle":"rwanda-rulindo-murambi","variants":[{"id":48930908635310,"price":2250,"name":"Rwanda - Rulindo Murambi - Washed - 12oz","public_title":"12oz","sku":null},{"id":48930908668078,"price":2600,"name":"Rwanda - Rulindo Murambi - Washed - 1lb","public_title":"1lb","sku":null},{"id":48930908700846,"price":4800,"name":"Rwanda - Rulindo Murambi - Washed - 2lb","public_title":"2lb","sku":null},{"id":48930908733614,"price":11000,"name":"Rwanda - Rulindo Murambi - Washed - 5lb","public_title":"5lb","sku":null}],"remote":false},"page":{"pageType":"product","resourceType":"product","resourceId":9218078736558,"requestId":"9311fcdd-7d6d-4d63-a1a6-f3e22e608cbd-1791504064"}};
1495  for (var attr in meta) {
1496    window.ShopifyAnalytics.meta[attr] = meta[attr];
1497  }
1498</script>
vendor: 1 bytes, line 1498
1498
1499<script class="analytics">
1500  (function () {
1501    var customDocumentWrite = function(content) {
1502      var jquery = null;
1503
1504      if (window.jQuery) {
1505        jquery = window.jQuery;
1506      } else if (window.Checkout && window.Checkout.$) {
1507        jquery = window.Checkout.$;
1508      }
1509
1510      if (jquery) {
1511        jquery('body').append(content);
1512      }
1513    };
1514
1515    var hasLoggedConversion = function(token) {
1516      if (token) {
1517        return document.cookie.indexOf('loggedConversion=' + token) !== -1;
1518      }
1519      return false;
1520    }
1521
1522    var setCookieIfConversion = function(token) {
1523      if (token) {
1524        var twoMonthsFromNow = new Date(Date.now());
1525        twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2);
1526
1527        document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow;
1528      }
1529    }
1530
1531    var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || [];
1532    window.ShopifyAnalytics.lib.trekkie = window.trekkie;
1533    if (trekkie.integrations) {
1534      return;
1535    }
1536    trekkie.methods = [
1537      'identify',
1538      'page',
1539      'ready',
1540      'track',
1541      'trackForm',
1542      'trackLink'
1543    ];
1544    trekkie.factory = function(method) {
1545      return function() {
1546        var args = Array.prototype.slice.call(arguments);
1547        args.unshift(method);
1548        trekkie.push(args);
1549        if (method == 'track' || method == 'page') {
1550          var pageUrl;
1551          try {
1552            pageUrl = window.location.href;
1553          } catch (e) {}
1554          var pageReferrer;
1555          try {
1556            pageReferrer = document.referrer;
1557          } catch (e) {}
1558          try {
1559            if (window.__TREKKIE_SHIM_QUEUE == null) {
1560              window.__TREKKIE_SHIM_QUEUE = [];
1561            }
1562            window.__TREKKIE_SHIM_QUEUE.push({
1563              from: 'trekkie-stub',
1564              method: method,
1565              args: args.slice(1),
1566              pageContext: {
1567                url: pageUrl,
1568                referrer: pageReferrer
1569              }
1570            });
1571          } catch (e) {
1572            // no-op
1573          }
1574        }
1575        return trekkie;
1576      };
1577    };
1578    for (var i = 0; i < trekkie.methods.length; i++) {
1579      var key = trekkie.methods[i];
1580      trekkie[key] = trekkie.factory(key);
1581    }
1582    trekkie.load = function(config) {
1583      trekkie.config = config || {};
1584      trekkie.config.initialDocumentCookie = document.cookie;
1585      var first = document.getElementsByTagName('script')[0];
1586var script = document.createElement('script');
1587script.type = 'text/javascript';
1588script.onerror = function(e) {
1589  var scriptFallback = document.createElement('script');
1590  scriptFallback.type = 'text/javascript';
1591  scriptFallback.onerror = function(error) {
1592          var Monorail = {
1593      produce: function produce(monorailDomain, schemaId, payload) {
1594        var currentMs = new Date().getTime();
1595        var event = {
1596          schema_id: schemaId,
1597          payload: payload,
1598          metadata: {
1599            event_created_at_ms: currentMs,
1600            event_sent_at_ms: currentMs
1601          }
1602        };
1603        return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event));
1604      },
1605      sendRequest: function sendRequest(endpointUrl, payload) {
1606        // Try the sendBeacon API
1607        if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) {
1608          var blobData = new window.Blob([payload], {
1609            type: 'text/plain'
1610          });
1611
1612          if (window.navigator.sendBeacon(endpointUrl, blobData)) {
1613            return true;
1614          } // sendBeacon was not successful
1615
1616        } // XHR beacon
1617
1618        var xhr = new XMLHttpRequest();
1619
1620        try {
1621          xhr.open('POST', endpointUrl);
1622          xhr.setRequestHeader('Content-Type', 'text/plain');
1623          xhr.send(payload);
1624        } catch (e) {
1625          console.log(e);
1626        }
1627
1628        return false;
1629      },
1630      isIos12: function isIos12() {
1631        return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1;
1632      }
1633    };
1634    Monorail.produce('monorail-edge.shopifysvc.com',
1635      'trekkie_storefront_load_errors/1.1',
1636      {shop_id: 2337869,
1637      theme_id: 145191108782,
1638      app_name: "storefront",
1639      context_url: window.location.href,
1640      source_url: "//blossomcoffeeroasters.com/cdn/s/trekkie.storefront.51e69540e15035ae012ec8cc42e8f9cd792233a0.min.js"});
1641
1642  };
1643  scriptFallback.async = true;
1644  scriptFallback.src = '//blossomcoffeeroasters.com/cdn/s/trekkie.storefront.51e69540e15035ae012ec8cc42e8f9cd792233a0.min.js';
1645  first.parentNode.insertBefore(scriptFallback, first);
1646};
1647script.async = true;
1648script.src = '//blossomcoffeeroasters.com/cdn/s/trekkie.storefront.51e69540e15035ae012ec8cc42e8f9cd792233a0.min.js';
1649first.parentNode.insertBefore(script, first);
1650
1651    };
1652    trekkie.load(
1653      {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":2337869,"isMerchantRequest":null,"themeId":145191108782,"themeCityHash":"8044000261906306243","contentLanguage":"en","currency":"USD","eventMetadataId":"74b223c0-c44e-4f13-b657-44c2f9bc0c3f"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain","enabledBetaFlags":["764d78cb","8450a54b","4c64608a"]},"Session Attribution":{},"S2S":{"facebookCapiEnabled":true,"source":"trekkie-storefront-renderer","apiClientId":580111}}
1654    );
1655
1656    var loaded = false;
1657    trekkie.ready(function() {
1658      if (loaded) return;
1659      loaded = true;
1660
1661      window.ShopifyAnalytics.lib = window.trekkie;
1662
1663      var originalDocumentWrite = document.write;
1664      document.write = customDocumentWrite;
1665      try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {};
1666      document.write = originalDocumentWrite;
1667
1668      var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/)
1669      var token = match? match[1]: undefined;
1670      if (!hasLoggedConversion(token)) {
1671        setCookieIfConversion(token);
1672        window.ShopifyAnalytics.lib.track("Viewed Product",{"currency":"USD","variantId":48930908635310,"productId":9218078736558,"productGid":"gid:\/\/shopify\/Product\/9218078736558","name":"Rwanda - Rulindo Murambi - Washed - 12oz","price":"22.50","sku":null,"brand":"Blossom Coffee Roasters","variant":"12oz","category":"Coffee","nonInteraction":true,"remote":false,"available":true},undefined,undefined,{"shopifyEmitted":true});
1673      }
1674    });
1675
1676    window.ShopifyAnalytics.lib.page(null,{"pageType":"product","resourceType":"product","resourceId":9218078736558,"requestId":"9311fcdd-7d6d-4d63-a1a6-f3e22e608cbd-1791504064","shopifyEmitted":true});
1677
1678    var eventsListenerScript = document.createElement('script');
1679    eventsListenerScript.async = true;
1680    eventsListenerScript.src = "//blossomcoffeeroasters.com/cdn/shopifycloud/storefront/assets/shop_events_listener-4e26a9ce.js";
1681    document.getElementsByTagName('head')[0].appendChild(eventsListenerScript);
1682})();</script>
1682
1683  
1683<script>
1684  if (!window.ga || (window.ga && typeof window.ga !== 'function')) {
1685    window.ga = function ga() {
1686      (window.ga.q = window.ga.q || []).push(arguments);
1687      if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') {
1688        window.Shopify.analytics.publish("ga_stub_called", {}, {sendTo: "google_osp_migration"});
1689      }
1690      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.");
1691    };
1692    if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') {
1693      window.Shopify.analytics.publish("ga_stub_initialized", {}, {sendTo: "google_osp_migration"});
1694    }
1695  }
1696</script>
vendor: 1 bytes, line 1696
1696
1697<script
1698  defer
1699  src="https://blossomcoffeeroasters.com/cdn/shopifycloud/perf-kit/shopify-perf-kit-3.10.1.min.js"
1700  data-application="storefront-renderer"
1701  data-shop-id="2337869"
1702  data-render-region="gcp-us-central1"
1703  data-page-type="product"
1704  data-theme-instance-id="145191108782"
1705  data-theme-name="Motion"
1706  data-theme-version="5.1.4"
1707  data-monorail-region="shop_domain"
1708  data-resource-timing-sampling-rate="10"
1709  data-shs="true"
1710  data-shs-beacon="true"
1711  data-shs-export-with-fetch="true"
1712  data-shs-logs-sample-rate="1"
1713  data-shs-beacon-endpoint="https://blossomcoffeeroasters.com/api/collect"
1714></script>
vendor: 1 bytes, line 1714
1714
1715<script src="https://cdn.shopify.com/storefront/standard-actions.js" type="module" data-source-attribution="shopify.standard_actions"></script>
1715
1716<meta name="shopify-y" content="b3fb7bf0-5527-47ec-a6f6-14751499f073" data-expiration="1823061664000"><meta name="shopify-s" content="0d7c5e63-bb3a-40cd-84a0-11e6a25a5876" data-expiration="1791505864000"><meta name="new-cookie-storage-activated" content="t">
1717</head>
1718
1719  <body
1720    class="template-product"
1721    data-transitions="false"
1722    data-type_base_accent_transform="true"
1723    data-type_header_accent_transform="true"
1724    data-animate_sections="false"
1725    data-animate_underlines="true"
1726    data-animate_buttons="true"
1727    data-animate_images="false"
1728    data-animate_page_transition_style="page-slow-fade"
1729    data-type_header_accent_transform="true"
1730    data-type_header_text_alignment=""
1731    data-animate_images_style="zoom-fade"
1732  >
1733    
1734
1735    <a class="in-page-link visually-hidden skip-link" href="#MainContent">Skip to content</a>
1736
1737    <div id="PageContainer" class="page-container">
1738      <div class="transition-body">
1739        <div id="shopify-section-header" class="shopify-section">
1740
1741
1742
1743<div id="NavDrawer" class="drawer drawer--left">
1744  <div class="drawer__contents">
1745    <div class="drawer__fixed-header">
1746      <div class="drawer__header appear-animation appear-delay-1">
1747        <div class="drawer__title"></div>
1748        <div class="drawer__close">
1749          <button type="button" class="drawer__close-button js-drawer-close">
1750            <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-close" viewBox="0 0 64 64"><path d="M19 17.61l27.12 27.13m0-27.12L19 44.74"/></svg>
1751            <span class="icon__fallback-text">Close menu</span>
1752          </button>
1753        </div>
1754      </div>
1755    </div>
1756    <div class="drawer__scrollable">
1757      <ul class="mobile-nav" role="navigation" aria-label="Primary">
1758        
1759
1760
1761          <li class="mobile-nav__item appear-animation appear-delay-2">
1762            
1763              <div class="mobile-nav__has-sublist">
1764                
1765                  <a href="/collections/coffee" class="mobile-nav__link" id="Label-collections-coffee1">
1766                    Coffee
1767                  </a>
1768                  <div class="mobile-nav__toggle">
1769                    <button type="button" class="collapsible-trigger collapsible--auto-height" aria-controls="Linklist-collections-coffee1">
1770                      <span class="collapsible-trigger__icon collapsible-trigger__icon--open" role="presentation">
1771  <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon--wide icon-chevron-down" viewBox="0 0 28 16"><path d="M1.57 1.59l12.76 12.77L27.1 1.59" stroke-width="2" stroke="#000" fill="none" fill-rule="evenodd"/></svg>
1772</span>
1773
1774                    </button>
1775                  </div>
1776                
1777              </div>
1778            
1779
1780            
1781              <div id="Linklist-collections-coffee1" class="mobile-nav__sublist collapsible-content collapsible-content--all" aria-labelledby="Label-collections-coffee1">
1782                <div class="collapsible-content__inner">
1783                  <ul class="mobile-nav__sublist">
1784                    
1785
1786
1787                      <li class="mobile-nav__item">
1788                        <div class="mobile-nav__child-item">
1789                          
1790                            <a href="/collections/blends" class="mobile-nav__link" id="Sublabel-collections-blends1">
1791                              Blends
1792                            </a>
1793                          
1794                          
1795                        </div>
1796
1797                        
1798                      </li>
1799                    
1800
1801
1802                      <li class="mobile-nav__item">
1803                        <div class="mobile-nav__child-item">
1804                          
1805                            <a href="/collections/single-origins" class="mobile-nav__link" id="Sublabel-collections-single-origins2">
1806                              Single-Origins
1807                            </a>
1808                          
1809                          
1810                        </div>
1811
1812                        
1813                      </li>
1814                    
1815
1816
1817                      <li class="mobile-nav__item">
1818                        <div class="mobile-nav__child-item">
1819                          
1820                            <a href="/collections/best-sellers" class="mobile-nav__link" id="Sublabel-collections-best-sellers3">
1821                              Best Sellers
1822                            </a>
1823                          
1824                          
1825                        </div>
1826
1827                        
1828                      </li>
1829                    
1830
1831
1832                      <li class="mobile-nav__item">
1833                        <div class="mobile-nav__child-item">
1834                          
1835                            <a href="/collections/decaf" class="mobile-nav__link" id="Sublabel-collections-decaf4">
1836                              Decaf
1837                            </a>
1838                          
1839                          
1840                        </div>
1841
1842                        
1843                      </li>
1844                    
1845                  </ul>
1846                </div>
1847              </div>
1848            
1849          </li>
1850        
1851
1852
1853          <li class="mobile-nav__item appear-animation appear-delay-3">
1854            
1855              <div class="mobile-nav__has-sublist">
1856                
1857                  <a href="/collections/tea" class="mobile-nav__link" id="Label-collections-tea2">
1858                    Tea
1859                  </a>
1860                  <div class="mobile-nav__toggle">
1861                    <button type="button" class="collapsible-trigger collapsible--auto-height" aria-controls="Linklist-collections-tea2">
1862                      <span class="collapsible-trigger__icon collapsible-trigger__icon--open" role="presentation">
1863  <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon--wide icon-chevron-down" viewBox="0 0 28 16"><path d="M1.57 1.59l12.76 12.77L27.1 1.59" stroke-width="2" stroke="#000" fill="none" fill-rule="evenodd"/></svg>
1864</span>
1865
1866                    </button>
1867                  </div>
1868                
1869              </div>
1870            
1871
1872            
1873              <div id="Linklist-collections-tea2" class="mobile-nav__sublist collapsible-content collapsible-content--all" aria-labelledby="Label-collections-tea2">
1874                <div class="collapsible-content__inner">
1875                  <ul class="mobile-nav__sublist">
1876                    
1877
1878
1879                      <li class="mobile-nav__item">
1880                        <div class="mobile-nav__child-item">
1881                          
1882                            <a href="/collections/herbal" class="mobile-nav__link" id="Sublabel-collections-herbal1">
1883                              Herbal
1884                            </a>
1885                          
1886                          
1887                        </div>
1888
1889                        
1890                      </li>
1891                    
1892
1893
1894                      <li class="mobile-nav__item">
1895                        <div class="mobile-nav__child-item">
1896                          
1897                            <a href="/collections/green-1" class="mobile-nav__link" id="Sublabel-collections-green-12">
1898                              Green
1899                            </a>
1900                          
1901                          
1902                        </div>
1903
1904                        
1905                      </li>
1906                    
1907
1908
1909                      <li class="mobile-nav__item">
1910                        <div class="mobile-nav__child-item">
1911                          
1912                            <a href="/collections/black" class="mobile-nav__link" id="Sublabel-collections-black3">
1913                              Black
1914                            </a>
1915                          
1916                          
1917                        </div>
1918
1919                        
1920                      </li>
1921                    
1922                  </ul>
1923                </div>
1924              </div>
1925            
1926          </li>
1927        
1928
1929
1930          <li class="mobile-nav__item appear-animation appear-delay-4">
1931            
1932              <div class="mobile-nav__has-sublist">
1933                
1934                  <a href="/collections/subscriptions" class="mobile-nav__link" id="Label-collections-subscriptions3">
1935                    Subscriptions
1936                  </a>
1937                  <div class="mobile-nav__toggle">
1938                    <button type="button" class="collapsible-trigger collapsible--auto-height" aria-controls="Linklist-collections-subscriptions3">
1939                      <span class="collapsible-trigger__icon collapsible-trigger__icon--open" role="presentation">
1940  <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon--wide icon-chevron-down" viewBox="0 0 28 16"><path d="M1.57 1.59l12.76 12.77L27.1 1.59" stroke-width="2" stroke="#000" fill="none" fill-rule="evenodd"/></svg>
1941</span>
1942
1943                    </button>
1944                  </div>
1945                
1946              </div>
1947            
1948
1949            
1950              <div id="Linklist-collections-subscriptions3" class="mobile-nav__sublist collapsible-content collapsible-content--all" aria-labelledby="Label-collections-subscriptions3">
1951                <div class="collapsible-content__inner">
1952                  <ul class="mobile-nav__sublist">
1953                    
1954
1955
1956                      <li class="mobile-nav__item">
1957                        <div class="mobile-nav__child-item">
1958                          
1959                            <a href="/collections/subscriptions" class="mobile-nav__link" id="Sublabel-collections-subscriptions1">
1960                              Subscriptions
1961                            </a>
1962                          
1963                          
1964                        </div>
1965
1966                        
1967                      </li>
1968                    
1969
1970
1971                      <li class="mobile-nav__item">
1972                        <div class="mobile-nav__child-item">
1973                          
1974                            <a href="/collections/bundles" class="mobile-nav__link" id="Sublabel-collections-bundles2">
1975                              Bundles
1976                            </a>
1977                          
1978                          
1979                        </div>
1980
1981                        
1982                      </li>
1983                    
1984
1985
1986                      <li class="mobile-nav__item">
1987                        <div class="mobile-nav__child-item">
1988                          
1989                            <a href="/collections/gifts" class="mobile-nav__link" id="Sublabel-collections-gifts3">
1990                              Merch
1991                            </a>
1992                          
1993                          
1994                        </div>
1995
1996                        
1997                      </li>
1998                    
1999                  </ul>
2000                </div>
2001              </div>
2002            
2003          </li>
2004        
2005
2006
2007          <li class="mobile-nav__item appear-animation appear-delay-5">
2008            
2009              <div class="mobile-nav__has-sublist">
2010                
2011                  <a href="/pages/our-coffee" class="mobile-nav__link" id="Label-pages-our-coffee4">
2012                    About
2013                  </a>
2014                  <div class="mobile-nav__toggle">
2015                    <button type="button" class="collapsible-trigger collapsible--auto-height" aria-controls="Linklist-pages-our-coffee4">
2016                      <span class="collapsible-trigger__icon collapsible-trigger__icon--open" role="presentation">
2017  <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon--wide icon-chevron-down" viewBox="0 0 28 16"><path d="M1.57 1.59l12.76 12.77L27.1 1.59" stroke-width="2" stroke="#000" fill="none" fill-rule="evenodd"/></svg>
2018</span>
2019
2020                    </button>
2021                  </div>
2022                
2023              </div>
2024            
2025
2026            
2027              <div id="Linklist-pages-our-coffee4" class="mobile-nav__sublist collapsible-content collapsible-content--all" aria-labelledby="Label-pages-our-coffee4">
2028                <div class="collapsible-content__inner">
2029                  <ul class="mobile-nav__sublist">
2030                    
2031
2032
2033                      <li class="mobile-nav__item">
2034                        <div class="mobile-nav__child-item">
2035                          
2036                            <a href="/pages/our-coffee" class="mobile-nav__link" id="Sublabel-pages-our-coffee1">
2037                              About Us
2038                            </a>
2039                          
2040                          
2041                        </div>
2042
2043                        
2044                      </li>
2045                    
2046
2047
2048                      <li class="mobile-nav__item">
2049                        <div class="mobile-nav__child-item">
2050                          
2051                            <a href="/pages/faq" class="mobile-nav__link" id="Sublabel-pages-faq2">
2052                              FAQ
2053                            </a>
2054                          
2055                          
2056                        </div>
2057
2058                        
2059                      </li>
2060                    
2061
2062
2063                      <li class="mobile-nav__item">
2064                        <div class="mobile-nav__child-item">
2065                          
2066                            <a href="/pages/islanders" class="mobile-nav__link" id="Sublabel-pages-islanders3">
2067                              Islanders
2068                            </a>
2069                          
2070                          
2071                        </div>
2072
2073                        
2074                      </li>
2075                    
2076                  </ul>
2077                </div>
2078              </div>
2079            
2080          </li>
2081        
2082
2083
2084          <li class="mobile-nav__item appear-animation appear-delay-6">
2085            
2086              <a href="/pages/wholesale" class="mobile-nav__link">Wholesale</a>
2087            
2088
2089            
2090          </li>
2091        
2092
2093
2094          <li class="mobile-nav__item appear-animation appear-delay-7">
2095            
2096              <a href="/pages/contact-us" class="mobile-nav__link">Contact Us</a>
2097            
2098
2099            
2100          </li>
2101        
2102
2103        
2104
2105            <li class="mobile-nav__item appear-animation appear-delay-8">
2106              <a href="/account/login" class="mobile-nav__link">Log in</a>
2107            </li>
2108          
2109        
2110
2111        <li class="mobile-nav__spacer"></li>
2112
2113      </ul>
2114
2115      <ul class="mobile-nav__social">
2116        
2117<li class="appear-animation appear-delay-9">
2118            <a target="_blank" rel="noopener" href="https://www.facebook.com/people/Blossom-Coffee-Roasters/61551381509077/" title="Blossom Coffee Roasters on Facebook">
2119              <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-facebook" viewBox="0 0 32 32"><path fill="#444" d="M18.56 31.36V17.28h4.48l.64-5.12h-5.12v-3.2c0-1.28.64-2.56 2.56-2.56h2.56V1.28H19.2c-3.84 0-7.04 2.56-7.04 7.04v3.84H7.68v5.12h4.48v14.08h6.4z"/></svg>
2120              <span class="icon__fallback-text">Facebook</span>
2121            </a>
2122          </li>
2123        
2124        
2125        
2126        
2127<li class="appear-animation appear-delay-10">
2128            <a target="_blank" rel="noopener" href="https://instagram.com/blossomcoffeeroastery" title="Blossom Coffee Roasters on Instagram">
2129              <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-instagram" viewBox="0 0 32 32"><path fill="#444" d="M16 3.094c4.206 0 4.7.019 6.363.094 1.538.069 2.369.325 2.925.544.738.287 1.262.625 1.813 1.175s.894 1.075 1.175 1.813c.212.556.475 1.387.544 2.925.075 1.662.094 2.156.094 6.363s-.019 4.7-.094 6.363c-.069 1.538-.325 2.369-.544 2.925-.288.738-.625 1.262-1.175 1.813s-1.075.894-1.813 1.175c-.556.212-1.387.475-2.925.544-1.663.075-2.156.094-6.363.094s-4.7-.019-6.363-.094c-1.537-.069-2.369-.325-2.925-.544-.737-.288-1.263-.625-1.813-1.175s-.894-1.075-1.175-1.813c-.212-.556-.475-1.387-.544-2.925-.075-1.663-.094-2.156-.094-6.363s.019-4.7.094-6.363c.069-1.537.325-2.369.544-2.925.287-.737.625-1.263 1.175-1.813s1.075-.894 1.813-1.175c.556-.212 1.388-.475 2.925-.544 1.662-.081 2.156-.094 6.363-.094zm0-2.838c-4.275 0-4.813.019-6.494.094-1.675.075-2.819.344-3.819.731-1.037.4-1.913.944-2.788 1.819S1.486 4.656 1.08 5.688c-.387 1-.656 2.144-.731 3.825-.
2129075 1.675-.094 2.213-.094 6.488s.019 4.813.094 6.494c.075 1.675.344 2.819.731 3.825.4 1.038.944 1.913 1.819 2.788s1.756 1.413 2.788 1.819c1 .387 2.144.656 3.825.731s2.213.094 6.494.094 4.813-.019 6.494-.094c1.675-.075 2.819-.344 3.825-.731 1.038-.4 1.913-.944 2.788-1.819s1.413-1.756 1.819-2.788c.387-1 .656-2.144.731-3.825s.094-2.212.094-6.494-.019-4.813-.094-6.494c-.075-1.675-.344-2.819-.731-3.825-.4-1.038-.944-1.913-1.819-2.788s-1.756-1.413-2.788-1.819c-1-.387-2.144-.656-3.825-.731C20.812.275 20.275.256 16 .256z"/><path fill="#444" d="M16 7.912a8.088 8.088 0 0 0 0 16.175c4.463 0 8.087-3.625 8.087-8.088s-3.625-8.088-8.088-8.088zm0 13.338a5.25 5.25 0 1 1 0-10.5 5.25 5.25 0 1 1 0 10.5zM26.294 7.594a1.887 1.887 0 1 1-3.774.002 1.887 1.887 0 0 1 3.774-.003z"/></svg>
2130              <span class="icon__fallback-text">Instagram</span>
2131            </a>
2132          </li>
2133        
2134        
2135        
2136        
2137        
2138        
2139        
2140      </ul>
2141    </div>
2142    </div>
2143</div>
2144
2145
2146  <div id="CartDrawer" class="drawer drawer--right">
2147    <form action="/cart" method="post" novalidate class="drawer__contents">
2148      <div class="drawer__fixed-header">
2149        <div class="drawer__header appear-animation appear-delay-1">
2150          <div class="drawer__title">Cart</div>
2151          <div class="drawer__close">
2152            <button type="button" class="drawer__close-button js-drawer-close">
2153              <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-close" viewBox="0 0 64 64"><path d="M19 17.61l27.12 27.13m0-27.12L19 44.74"/></svg>
2154              <span class="icon__fallback-text">Close cart</span>
2155            </button>
2156          </div>
2157        </div>
2158      </div>
2159
2160      <div id="CartContainer" class="drawer__inner"></div>
2161    </form>
2162  </div>
2163
2164
2165
2166
2167
2168
2169<style data-shopify>
2170  .site-nav__link,
2171  .site-nav__dropdown-link {
2172    font-size: 18px;
2173  }
2174
2175  
2176</style>
2177
2178<div data-section-id="header" data-section-type="header-section">
2179  <div class="header-wrapper">
2180
2181    
2182      <div class="announcement announcement--closeable announcement--closed">
2183  
2184
2185    <span class="announcement__text announcement__text--open" data-text="free-shipping-on-orders-over-50">
2186      Free Shipping on Orders Over $50
2187    </span>
2188
2189  
2190
2191  
2192    <button type="button" class="text-link announcement__close">
2193      <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-close" viewBox="0 0 64 64"><path d="M19 17.61l27.12 27.13m0-27.12L19 44.74"/></svg>
2194      <span class="icon__fallback-text">"Close"</span>
2195    </button>
2196  
2197</div>
2198
2199    
2200
2201    <header
2202      class="site-header"
2203      data-sticky="false"
2204      data-overlay="false">
2205      <div class="page-width">
2206        <div
2207          class="header-layout header-layout--center-split"
2208          data-logo-align="center">
2209
2210          
2211
2212          
2213
2214          
2215            <div class="header-item header-item--left header-item--navigation">
2216              
2217                
2218                  <div class="site-nav medium-down--hide">
2219                    <a href="/search" class="site-nav__link site-nav__link--icon js-search-header js-no-transition">
2220                      <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-search" viewBox="0 0 64 64"><path d="M47.16 28.58A18.58 18.58 0 1 1 28.58 10a18.58 18.58 0 0 1 18.58 18.58zM54 54L41.94 42"/></svg>
2221                      <span class="icon__fallback-text">Search</span>
2222                    </a>
2223                  </div>
2224                
2225              
2226
2227              
2228
2229              <div class="site-nav large-up--hide">
2230                <button
2231                  type="button"
2232                  class="site-nav__link site-nav__link--icon js-drawer-open-nav"
2233                  aria-controls="NavDrawer">
2234                  <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-hamburger" viewBox="0 0 64 64"><path d="M7 15h51M7 32h43M7 49h51"/></svg>
2235                  <span class="icon__fallback-text">Site navigation</span>
2236                </button>
2237              </div>
2238            </div>
2239
2240            
2241              
2242<div class="header-item header-item--logo-split" role="navigation" aria-label="Primary">
2243  <div class="header-item header-item--split-left">
2244    
2245
2246
2247<ul
2248  class="site-nav site-navigation medium-down--hide"
2249  >
2250  
2251
2252
2253    <li
2254      class="site-nav__item site-nav__expanded-item site-nav--has-dropdown"
2255      aria-haspopup="true">
2256
2257      <a href="/collections/coffee" class="site-nav__link site-nav__link--has-dropdown">
2258        Coffee
2259        
2260          <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon--wide icon-chevron-down" viewBox="0 0 28 16"><path d="M1.57 1.59l12.76 12.77L27.1 1.59" stroke-width="2" stroke="#000" fill="none" fill-rule="evenodd"/></svg>
2261        
2262      </a>
2263      
2264        <ul class="site-nav__dropdown text-left">
2265          
2266
2267
2268            <li class="">
2269              <a href="/collections/blends" class="site-nav__dropdown-link site-nav__dropdown-link--second-level ">
2270                Blends
2271                
2272              </a>
2273              
2274            </li>
2275          
2276
2277
2278            <li class="">
2279              <a href="/collections/single-origins" class="site-nav__dropdown-link site-nav__dropdown-link--second-level ">
2280                Single-Origins
2281                
2282              </a>
2283              
2284            </li>
2285          
2286
2287
2288            <li class="">
2289              <a href="/collections/best-sellers" class="site-nav__dropdown-link site-nav__dropdown-link--second-level ">
2290                Best Sellers
2291                
2292              </a>
2293              
2294            </li>
2295          
2296
2297
2298            <li class="">
2299              <a href="/collections/decaf" class="site-nav__dropdown-link site-nav__dropdown-link--second-level ">
2300                Decaf
2301                
2302              </a>
2303              
2304            </li>
2305          
2306        </ul>
2307      
2308    </li>
2309  
2310
2311
2312    <li
2313      class="site-nav__item site-nav__expanded-item site-nav--has-dropdown"
2314      aria-haspopup="true">
2315
2316      <a href="/collections/tea" class="site-nav__link site-nav__link--has-dropdown">
2317        Tea
2318        
2319          <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon--wide icon-chevron-down" viewBox="0 0 28 16"><path d="M1.57 1.59l12.76 12.77L27.1 1.59" stroke-width="2" stroke="#000" fill="none" fill-rule="evenodd"/></svg>
2320        
2321      </a>
2322      
2323        <ul class="site-nav__dropdown text-left">
2324          
2325
2326
2327            <li class="">
2328              <a href="/collections/herbal" class="site-nav__dropdown-link site-nav__dropdown-link--second-level ">
2329                Herbal
2330                
2331              </a>
2332              
2333            </li>
2334          
2335
2336
2337            <li class="">
2338              <a href="/collections/green-1" class="site-nav__dropdown-link site-nav__dropdown-link--second-level ">
2339                Green
2340                
2341              </a>
2342              
2343            </li>
2344          
2345
2346
2347            <li class="">
2348              <a href="/collections/black" class="site-nav__dropdown-link site-nav__dropdown-link--second-level ">
2349                Black
2350                
2351              </a>
2352              
2353            </li>
2354          
2355        </ul>
2356      
2357    </li>
2358  
2359
2360
2361    <li
2362      class="site-nav__item site-nav__expanded-item site-nav--has-dropdown"
2363      aria-haspopup="true">
2364
2365      <a href="/collections/subscriptions" class="site-nav__link site-nav__link--has-dropdown">
2366        Subscriptions
2367        
2368          <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon--wide icon-chevron-down" viewBox="0 0 28 16"><path d="M1.57 1.59l12.76 12.77L27.1 1.59" stroke-width="2" stroke="#000" fill="none" fill-rule="evenodd"/></svg>
2369        
2370      </a>
2371      
2372        <ul class="site-nav__dropdown text-left">
2373          
2374
2375
2376            <li class="">
2377              <a href="/collections/subscriptions" class="site-nav__dropdown-link site-nav__dropdown-link--second-level ">
2378                Subscriptions
2379                
2380              </a>
2381              
2382            </li>
2383          
2384
2385
2386            <li class="">
2387              <a href="/collections/bundles" class="site-nav__dropdown-link site-nav__dropdown-link--second-level ">
2388                Bundles
2389                
2390              </a>
2391              
2392            </li>
2393          
2394
2395
2396            <li class="">
2397              <a href="/collections/gifts" class="site-nav__dropdown-link site-nav__dropdown-link--second-level ">
2398                Merch
2399                
2400              </a>
2401              
2402            </li>
2403          
2404        </ul>
2405      
2406    </li>
2407  
2408</ul>
2409
2410  </div>
2411  <div class="header-item header-item--logo">
2412    
2413  
2414
2415    
2416<style data-shopify>
2417    .header-item--logo,
2418    .header-layout--left-center .header-item--logo,
2419    .header-layout--left-center .header-item--icons {
2420      -webkit-box-flex: 0 1 100px;
2421      -ms-flex: 0 1 100px;
2422      flex: 0 1 100px;
2423    }
2424
2425    @media only screen and (min-width: 769px) {
2426      .header-item--logo,
2427      .header-layout--left-center .header-item--logo,
2428      .header-layout--left-center .header-item--icons {
2429        -webkit-box-flex: 0 0 140px;
2430        -ms-flex: 0 0 140px;
2431        flex: 0 0 140px;
2432      }
2433    }
2434
2435    .site-header__logo a {
2436      max-width: 100px;
2437    }
2438    .is-light .site-header__logo .logo--inverted {
2439      max-width: 100px;
2440    }
2441    @media only screen and (min-width: 769px) {
2442      .site-header__logo a {
2443        max-width: 140px;
2444      }
2445
2446      .is-light .site-header__logo .logo--inverted {
2447        max-width: 140px;
2448      }
2449    }
2450    </style>
2451
2452    
2453      <div class="h1 site-header__logo" itemscope itemtype="http://schema.org/Organization">
2454    
2455    
2456      
2457      <a
2458        href="/"
2459        itemprop="url"
2460        class="site-header__logo-link logo--has-inverted">
2461        <img
2462          class="small--hide"
2463          src="//blossomcoffeeroasters.com/cdn/shop/files/Asset_1_c6097baf-a8e1-4050-88e1-b38f39600d26_140x.png?v=1613682594"
2464          srcset="//blossomcoffeeroasters.com/cdn/shop/files/Asset_1_c6097baf-a8e1-4050-88e1-b38f39600d26_140x.png?v=1613682594 1x, //blossomcoffeeroasters.com/cdn/shop/files/[email protected]?v=1613682594 2x"
2465          alt="Blossom Coffee Roasters"
2466          itemprop="logo">
2467        <img
2468          class="medium-up--hide"
2469          src="//blossomcoffeeroasters.com/cdn/shop/files/Asset_1_c6097baf-a8e1-4050-88e1-b38f39600d26_100x.png?v=1613682594"
2470          srcset="//blossomcoffeeroasters.com/cdn/shop/files/Asset_1_c6097baf-a8e1-4050-88e1-b38f39600d26_100x.png?v=1613682594 1x, //blossomcoffeeroasters.com/cdn/shop/files/[email protected]?v=1613682594 2x"
2471          alt="Blossom Coffee Roasters">
2472      </a>
2473      
2474        <a
2475          href="/"
2476          itemprop="url"
2477          class="site-header__logo-link logo--inverted">
2478          <img
2479            class="small--hide"
2480            src="//blossomcoffeeroasters.com/cdn/shop/files/Asset_1_c6097baf-a8e1-4050-88e1-b38f39600d26_140x.png?v=1613682594"
2481            srcset="//blossomcoffeeroasters.com/cdn/shop/files/Asset_1_c6097baf-a8e1-4050-88e1-b38f39600d26_140x.png?v=1613682594 1x, //blossomcoffeeroasters.com/cdn/shop/files/[email protected]?v=1613682594 2x"
2482            alt="Blossom Coffee Roasters"
2483            itemprop="logo">
2484          <img
2485            class="medium-up--hide"
2486            src="//blossomcoffeeroasters.com/cdn/shop/files/Asset_1_c6097baf-a8e1-4050-88e1-b38f39600d26_100x.png?v=1613682594"
2487            srcset="//blossomcoffeeroasters.com/cdn/shop/files/Asset_1_c6097baf-a8e1-4050-88e1-b38f39600d26_100x.png?v=1613682594 1x, //blossomcoffeeroasters.com/cdn/shop/files/[email protected]?v=1613682594 2x"
2488            alt="Blossom Coffee Roasters">
2489        </a>
2490      
2491    
2492    
2493      </div>
2494    
2495
2496  
2497
2498
2499
2500
2501  </div>
2502  <div class="header-item header-item--split-right">
2503    
2504
2505
2506<ul
2507  class="site-nav site-navigation medium-down--hide"
2508  >
2509  
2510
2511
2512    <li
2513      class="site-nav__item site-nav__expanded-item site-nav--has-dropdown"
2514      aria-haspopup="true">
2515
2516      <a href="/pages/our-coffee" class="site-nav__link site-nav__link--has-dropdown">
2517        About
2518        
2519          <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon--wide icon-chevron-down" viewBox="0 0 28 16"><path d="M1.57 1.59l12.76 12.77L27.1 1.59" stroke-width="2" stroke="#000" fill="none" fill-rule="evenodd"/></svg>
2520        
2521      </a>
2522      
2523        <ul class="site-nav__dropdown text-left">
2524          
2525
2526
2527            <li class="">
2528              <a href="/pages/our-coffee" class="site-nav__dropdown-link site-nav__dropdown-link--second-level ">
2529                About Us
2530                
2531              </a>
2532              
2533            </li>
2534          
2535
2536
2537            <li class="">
2538              <a href="/pages/faq" class="site-nav__dropdown-link site-nav__dropdown-link--second-level ">
2539                FAQ
2540                
2541              </a>
2542              
2543            </li>
2544          
2545
2546
2547            <li class="">
2548              <a href="/pages/islanders" class="site-nav__dropdown-link site-nav__dropdown-link--second-level ">
2549                Islanders
2550                
2551              </a>
2552              
2553            </li>
2554          
2555        </ul>
2556      
2557    </li>
2558  
2559
2560
2561    <li
2562      class="site-nav__item site-nav__expanded-item"
2563      >
2564
2565      <a href="/pages/wholesale" class="site-nav__link">
2566        Wholesale
2567        
2568      </a>
2569      
2570    </li>
2571  
2572
2573
2574    <li
2575      class="site-nav__item site-nav__expanded-item"
2576      >
2577
2578      <a href="/pages/contact-us" class="site-nav__link">
2579        Contact Us
2580        
2581      </a>
2582      
2583    </li>
2584  
2585</ul>
2586
2587  </div>
2588</div>
2589
2590            
2591
2592            
2593          
2594
2595          <div class="header-item header-item--icons">
2596            <div class="site-nav site-nav--icons">
2597  <div class="site-nav__icons">
2598    
2599      <a class="site-nav__link site-nav__link--icon medium-down--hide" href="/account">
2600        <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-user" viewBox="0 0 64 64"><path d="M35 39.84v-2.53c3.3-1.91 6-6.66 6-11.41 0-7.63 0-13.82-9-13.82s-9 6.19-9 13.82c0 4.75 2.7 9.51 6 11.41v2.53c-10.18.85-18 6-18 12.16h42c0-6.19-7.82-11.31-18-12.16z"/></svg>
2601        <span class="icon__fallback-text">
2602          
2603            Log in
2604          
2605        </span>
2606      </a>
2607    
2608
2609    
2610      <a href="/search" class="site-nav__link site-nav__link--icon js-search-header js-no-transition large-up--hide">
2611        <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-search" viewBox="0 0 64 64"><path d="M47.16 28.58A18.58 18.58 0 1 1 28.58 10a18.58 18.58 0 0 1 18.58 18.58zM54 54L41.94 42"/></svg>
2612        <span class="icon__fallback-text">Search</span>
2613      </a>
2614    
2615
2616    
2617
2618    <a href="/cart" class="site-nav__link site-nav__link--icon js-drawer-open-cart js-no-transition" aria-controls="CartDrawer" data-icon="cart">
2619      <span class="cart-link"><svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-cart" viewBox="0 0 64 64"><path d="M14 17.44h46.79l-7.94 25.61H20.96l-9.65-35.1H3"/><circle cx="27" cy="53" r="2"/><circle cx="47" cy="53" r="2"/></svg><span class="icon__fallback-text">Cart</span>
2620        <span class="cart-link__bubble"></span>
2621      </span>
2622    </a>
2623  </div>
2624</div>
2625
2626          </div>
2627        </div>
2628
2629        
2630      </div>
2631      <div class="site-header__search-container">
2632        <div class="site-header__search">
2633          <div class="page-width">
2634            <form action="/search" method="get" id="HeaderSearchForm" class="site-header__search-form" role="search">
2635              <input type="hidden" name="type" value="product,article,page,collection">
2636              <button type="submit" class="text-link site-header__search-btn">
2637                <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-search" viewBox="0 0 64 64"><path d="M47.16 28.58A18.58 18.58 0 1 1 28.58 10a18.58 18.58 0 0 1 18.58 18.58zM54 54L41.94 42"/></svg>
2638                <span class="icon__fallback-text">Search</span>
2639              </button>
2640              <input type="search" name="q" value="" placeholder="Search our store" class="site-header__search-input" aria-label="Search our store">
2641            </form>
2642            <button type="button" class="js-search-header-close text-link site-header__search-btn">
2643              <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-close" viewBox="0 0 64 64"><path d="M19 17.61l27.12 27.13m0-27.12L19 44.74"/></svg>
2644              <span class="icon__fallback-text">"Close (esc)"</span>
2645            </button>
2646          </div>
2647        </div><div class="predictive-results hide">
2648            <div class="page-width">
2649              <div id="PredictiveResults"></div>
2650              <div class="text-center predictive-results__footer">
2651                <button type="button" class="btn btn--small" data-predictive-search-button>
2652                  <small>
2653                    View more
2654                  </small>
2655                </button>
2656              </div>
2657            </div>
2658          </div></div>
2659    </header>
2660  </div>
2661</div>
2662
2663
2664</div>
2665
2666        <main class="main-content" id="MainContent">
2667          <div id="shopify-section-product-template" class="shopify-section"><div class="selling-plan-fieldset" data-product={"id":9218078736558,"title":"Rwanda&nbsp;-&nbsp;Rulindo&nbsp;Murambi&nbsp;-&nbsp;Washed","handle":"rwanda-rulindo-murambi","description":"\u003cp\u003eThis&nbsp;lot&nbsp;of&nbsp;Rulindo&nbsp;Murambi&nbsp;was&nbsp;grown&nbsp;by&nbsp;more&nbsp;than&nbsp;170&nbsp;family&nbsp;owned&nbsp;farms&nbsp;in&nbsp;Rwanda's&nbsp;Gatsibo&nbsp;district.&nbsp;Smallholder&nbsp;farmers&nbsp;bring&nbsp;their&nbsp;cherries&nbsp;to&nbsp;the&nbsp;centralized&nbsp;Murambi&nbsp;washing&nbsp;station&nbsp;where&nbsp;they&nbsp;are&nbsp;processed&nbsp;with&nbsp;safer,&nbsp;more&nbsp;modernized&nbsp;machinery&nbsp;than&nbsp;individual&nbsp;farmers&nbsp;are&nbsp;able&nbsp;to&nbsp;access.&nbsp;Murambi&nbsp;begins&nbsp;the&nbsp;processing&nbsp;with&nbsp;the&nbsp;quality&nbsp;control&nbsp;method&nbsp;of&nbsp;hand&nbsp;sorting&nbsp;and&nbsp;floating&nbsp;the&nbsp;cherries&nbsp;in&nbsp;water.&nbsp;They&nbsp;are&nbsp;then&nbsp;depulped&nbsp;and&nbsp;fermented.&nbsp;The&nbsp;fermentation&nbsp;process&nbsp;is&nbsp;halted&nbsp;by&nbsp;a&nbsp;18-24&nbsp;hour&nbsp;freshwater&nbsp;soak,&nbsp;after&nbsp;which&nbsp;the&nbsp;parchment&nbsp;is&nbsp;washed&nbsp;for&nbsp;a&nbsp;second&nbsp;time.&nbsp;Washing&nbsp;station&nbsp;workers&nbsp;perform&nbsp;a&nbsp;final&nbsp;round&nbsp;of&nbsp;quality&nbsp;control&nbsp;by&nbsp;meticulously&nbsp;hand&nbsp;sorting&nbsp;the&nbsp;parchment&nbsp;on&nbsp;pre-drying&nbsp;tables&nbsp;while&nbsp;it&nbsp;is&nbsp;gently&nbsp;dried&nbsp;to&nbsp;the&nbsp;touch.&nbsp;After&nbsp;removing&nbsp;any&nbsp;parchment&nbsp;with&nbsp;defects&nbsp;from&nbsp;the&nbsp;lot,&nbsp;they&nbsp;transfer&nbsp;it&nbsp;to&nbsp;fully&nbsp;exposed&nbsp;drying&nbsp;tables&nbsp;for&nbsp;14-21&nbsp;days. \u003c\/p\u003e\n\u003cp\u003eWe&nbsp;love&nbsp;this&nbsp;coffee's&nbsp;bright&nbsp;opening&nbsp;plum&nbsp;notes,&nbsp;which&nbsp;meld&nbsp;into&nbsp;smooth&nbsp;dark&nbsp;chocolate&nbsp;and&nbsp;the&nbsp;rich&nbsp;sweetness&nbsp;of&nbsp;brown&nbsp;sugar.&nbsp;Brew&nbsp;it&nbsp;as&nbsp;a&nbsp;pourover&nbsp;for&nbsp;more&nbsp;prominent&nbsp;fruit&nbsp;notes&nbsp;or&nbsp;try&nbsp;it&nbsp;as&nbsp;espresso&nbsp;to&nbsp;bring&nbsp;out&nbsp;its&nbsp;complex&nbsp;chocolate&nbsp;flavor!\u003c\/p\u003e","published_at":"2026-09-08T10:33:08-07:00","created_at":"2026-08-22T14:27:54-07:00","vendor":"Blossom&nbsp;Coffee&nbsp;Roasters","type":"Coffee","tags":["Africa","Bottomless","Coffee","Light&nbsp;roast","Rwanda","specialty&nbsp;coffee","Washed"],"price":2250,"price_min":2250,"price_max":11000,"available":true,"price_varies":true,"compare_at_price":null,"compare_at_price_min":0,"compare_at_price_max":0,"compare_at_price_varies":false,"variants":[{"id":48930908635310,"title":"12oz","option1":"12oz","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":true,"featured_image":{"id":45430876766382,"product_id":9218078736558,"position":1,"created_at":"2026-09-08T10:32:00-07:00","updated_at":"2026-09-08T10:32:02-07:00","alt":null,"width":2654,"height":2653,"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed.jpg?v=1788888722","variant_ids":[48930908635310]},"available":true,"name":"Rwanda&nbsp;-&nbsp;Rulindo&nbsp;Murambi&nbsp;-&nbsp;Washed&nbsp;-&nbsp;12oz","public_title":"12oz","options":["12oz"],"price":2250,"weight":0,"compare_at_price":null,"inventory_quantity":-6,"inventory_management":null,"inventory_policy":"deny","barcode":null,"featured_media":{"alt":null,"id":35956263452846,"position":1,"preview_image":{"aspect_ratio":1.0,"height":2653,"width":2654,"
2667src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed.jpg?v=1788888722"}},"requires_selling_plan":false,"selling_plan_allocations":[{"price_adjustments":[{"position":1,"price":1800},{"position":2,"price":2025}],"price":1800,"compare_at_price":2250,"per_delivery_price":1800,"selling_plan_id":3594158254,"selling_plan_group_id":"52d60c9a87e98523ff88ad283e61aad784cf310a"}],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":48930908668078,"title":"1lb","option1":"1lb","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":true,"featured_image":{"id":45430876799150,"product_id":9218078736558,"position":2,"created_at":"2026-09-08T10:32:00-07:00","updated_at":"2026-09-08T10:32:02-07:00","alt":null,"width":1125,"height":675,"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53.jpg?v=1788888722","variant_ids":[48930908668078,48930908700846,48930908733614]},"available":true,"name":"Rwanda&nbsp;-&nbsp;Rulindo&nbsp;Murambi&nbsp;-&nbsp;Washed&nbsp;-&nbsp;1lb","public_title":"1lb","options":["1lb"],"price":2600,"weight":0,"compare_at_price":null,"inventory_quantity":-4,"inventory_management":null,"inventory_policy":"deny","barcode":null,"featured_media":{"alt":null,"id":35956263649454,"position":2,"preview_image":{"aspect_ratio":1.667,"height":675,"width":1125,"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53.jpg?v=1788888722"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":48930908700846,"title":"2lb","option1":"2lb","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":true,"featured_image":{"id":45430876799150,"product_id":9218078736558,"position":2,"created_at":"2026-09-08T10:32:00-07:00","updated_at":"2026-09-08T10:32:02-07:00","alt":null,"width":1125,"height":675,"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53.jpg?v=1788888722","variant_ids":[48930908668078,48930908700846,48930908733614]},"available":true,"name":"Rwanda&nbsp;-&nbsp;Rulindo&nbsp;Murambi&nbsp;-&nbsp;Washed&nbsp;-&nbsp;2lb","public_title":"2lb","options":["2lb"],"price":4800,"weight":0,"compare_at_price":null,"inventory_quantity":-1,"inventory_management":null,"inventory_policy":"deny","barcode":null,"featured_media":{"alt":null,"id":35956263649454,"position":2,"preview_image":{"aspect_ratio":1.667,"height":675,"width":1125,"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53.jpg?v=1788888722"}},"requires_selling_plan":false,"selling_plan_allocations":[{"price_adjustments":[{"position":1,"price":3840},{"position":2,"price":4320}],"price":3840,"compare_at_price":4800,"per_delivery_price":3840,"selling_plan_id":3594158254,"selling_plan_group_id":"52d60c9a87e98523ff88ad283e61aad784cf310a"}],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":48930908733614,"title":"5lb","option1":"5lb","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":true,"featured_image":{"id":45430876799150,"product_id":9218078736558,"position":2,"created_at":"2026-09-08T10:32:00-07:00","updated_at":"2026-09-08T10:32:02-07:00","alt":null,"width":1125,"height":675,"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53.jpg?v=1788888722","variant_ids":[48930908668078,48930908700846,48930908733614]},"available":true,"name":"Rwanda&nbsp;-&nbsp;Rulindo&nbsp;Murambi&nbsp;-&nbsp;Washed&nbsp;-&nbsp;5lb","public_title":"5lb","options":["5lb"],"price":11000,"weight":0,"compare_at_price":null,"inventory_quantity":0,"inventory_management":null,"inventory_policy":"deny","barcode":null,"featured_media":{"alt":null,"id":35956263649454,"position":2,"preview_image":{"aspect_ratio":1.667,"height":675,"width":1125,"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53.jpg?v=1788888722"}},"requires_selling_plan":false,"selling_plan_allocations":[{"price_adjustments":[{"position":1,"price":8800},{"position":2,"price":9900}],"price":8800,"compare_at_price":11000,"per_delivery_price":8800,"selling_plan_id":3594158254,"selling_plan_group_id":"52d60c9a87e98523ff88ad283e61aad784cf310a"}],"quantity_rule":{"min":1,"max":null,"increment":1}}],"images":["\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed.jpg?v=1788888722","\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53.jpg?v=1788888722","\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda-Rulindo-Murambi1.jpg?v=1787433962","\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda-Rulindo-Murambi2.jpg?v=1787433976","\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda-Rulindo-Murambi3.jpg?v=1787433980"],"featured_image":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed.jpg?v=1788888722","options":["Size"],"media":[{"alt":null,"id":35956263452846,"position":1,"preview_image":{"aspect_ratio":1.0,"height":2653,"width":2654,"
2667src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed.jpg?v=1788888722"},"aspect_ratio":1.0,"height":2653,"media_type":"image","src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed.jpg?v=1788888722","width":2654},{"alt":null,"id":35956263649454,"position":2,"preview_image":{"aspect_ratio":1.667,"height":675,"width":1125,"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53.jpg?v=1788888722"},"aspect_ratio":1.667,"height":675,"media_type":"image","src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53.jpg?v=1788888722","width":1125},{"alt":null,"id":35690512548014,"position":3,"preview_image":{"aspect_ratio":1.499,"height":683,"width":1024,"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda-Rulindo-Murambi1.jpg?v=1787433962"},"aspect_ratio":1.499,"height":683,"media_type":"image","src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda-Rulindo-Murambi1.jpg?v=1787433962","width":1024},{"alt":null,"id":35690512973998,"position":4,"preview_image":{"aspect_ratio":1.499,"height":683,"width":1024,"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda-Rulindo-Murambi2.jpg?v=1787433976"},"aspect_ratio":1.499,"height":683,"media_type":"image","src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda-Rulindo-Murambi2.jpg?v=1787433976","width":1024},{"alt":null,"id":35690513006766,"position":5,"preview_image":{"aspect_ratio":1.499,"height":683,"width":1024,"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda-Rulindo-Murambi3.jpg?v=1787433980"},"aspect_ratio":1.499,"height":683,"media_type":"image","src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda-Rulindo-Murambi3.jpg?v=1787433980","width":1024}],"requires_selling_plan":false,"selling_plan_groups":[{"id":"52d60c9a87e98523ff88ad283e61aad784cf310a","name":"Subscribe&nbsp;by&nbsp;Usage","options":[{"name":"Delivery&nbsp;every","position":1,"values":["1&nbsp;Week"]}],"selling_plans":[{"id":3594158254,"name":"20%&nbsp;off&nbsp;this&nbsp;order,&nbsp;10%&nbsp;off&nbsp;next&nbsp;orders","description":null,"options":[{"name":"Delivery&nbsp;every","position":1,"value":"1&nbsp;Week"}],"recurring_deliveries":false,"price_adjustments":[{"order_count":1,"position":1,"value_type":"percentage","value":20},{"order_count":null,"position":2,"value_type":"percentage","value":10}],"checkout_charge":{"value_type":"percentage","value":100}}],"app_id":"bottomless-dynamic-subscription"}],"content":"\u003cp\u003eThis&nbsp;lot&nbsp;of&nbsp;Rulindo&nbsp;Murambi&nbsp;was&nbsp;grown&nbsp;by&nbsp;more&nbsp;than&nbsp;170&nbsp;family&nbsp;owned&nbsp;farms&nbsp;in&nbsp;Rwanda's&nbsp;Gatsibo&nbsp;district.&nbsp;Smallholder&nbsp;farmers&nbsp;bring&nbsp;their&nbsp;cherries&nbsp;to&nbsp;the&nbsp;centralized&nbsp;Murambi&nbsp;washing&nbsp;station&nbsp;where&nbsp;they&nbsp;are&nbsp;processed&nbsp;with&nbsp;safer,&nbsp;more&nbsp;modernized&nbsp;machinery&nbsp;than&nbsp;individual&nbsp;farmers&nbsp;are&nbsp;able&nbsp;to&nbsp;access.&nbsp;Murambi&nbsp;begins&nbsp;the&nbsp;processing&nbsp;with&nbsp;the&nbsp;quality&nbsp;control&nbsp;method&nbsp;of&nbsp;hand&nbsp;sorting&nbsp;and&nbsp;floating&nbsp;the&nbsp;cherries&nbsp;in&nbsp;water.&nbsp;They&nbsp;are&nbsp;then&nbsp;depulped&nbsp;and&nbsp;fermented.&nbsp;The&nbsp;fermentation&nbsp;process&nbsp;is&nbsp;halted&nbsp;by&nbsp;a&nbsp;18-24&nbsp;hour&nbsp;freshwater&nbsp;soak,&nbsp;after&nbsp;which&nbsp;the&nbsp;parchment&nbsp;is&nbsp;washed&nbsp;for&nbsp;a&nbsp;second&nbsp;time.&nbsp;Washing&nbsp;station&nbsp;workers&nbsp;perform&nbsp;a&nbsp;final&nbsp;round&nbsp;of&nbsp;quality&nbsp;control&nbsp;by&nbsp;meticulously&nbsp;hand&nbsp;sorting&nbsp;the&nbsp;parchment&nbsp;on&nbsp;pre-drying&nbsp;tables&nbsp;while&nbsp;it&nbsp;is&nbsp;gently&nbsp;dried&nbsp;to&nbsp;the&nbsp;touch.&nbsp;After&nbsp;removing&nbsp;any&nbsp;parchment&nbsp;with&nbsp;defects&nbsp;from&nbsp;the&nbsp;lot,&nbsp;they&nbsp;transfer&nbsp;it&nbsp;to&nbsp;fully&nbsp;exposed&nbsp;drying&nbsp;tables&nbsp;for&nbsp;14-21&nbsp;days. \u003c\/p\u003e\n\u003cp\u003eWe&nbsp;love&nbsp;this&nbsp;coffee's&nbsp;bright&nbsp;opening&nbsp;plum&nbsp;notes,&nbsp;which&nbsp;meld&nbsp;into&nbsp;smooth&nbsp;dark&nbsp;chocolate&nbsp;and&nbsp;the&nbsp;rich&nbsp;sweetness&nbsp;of&nbsp;brown&nbsp;sugar.&nbsp;Brew&nbsp;it&nbsp;as&nbsp;a&nbsp;pourover&nbsp;for&nbsp;more&nbsp;prominent&nbsp;fruit&nbsp;notes&nbsp;or&nbsp;try&nbsp;it&nbsp;as&nbsp;espresso&nbsp;to&nbsp;bring&nbsp;out&nbsp;its&nbsp;complex&nbsp;chocolate&nbsp;flavor!\u003c\/p\u003e"}></div>
2668
2669
2670
2671
2672
2673
2674
2675<div id="ProductSection-9218078736558"
2676  class="product-section"
2677  data-section-id="9218078736558"
2678  data-section-type="product-template"
2679  
2680    data-image-zoom="true"
2681  
2682  
2683  
2684  
2685    data-enable-history-state="true"
2686  >
2687
2688  
2688<script type="application/ld+json">
2689  {
2690    "@context": "http://schema.org",
2691    "@type": "Product",
2692    "offers": {
2693      "@type": "Offer",
2694      "availability":"https://schema.org/InStock",
2695      "price": "22.5",
2696      "priceCurrency": "USD",
2697      "priceValidUntil": "2026-10-18",
2698      "url": "https://blossomcoffeeroasters.com/products/rwanda-rulindo-murambi"
2699    },
2700    "brand": "Blossom Coffee Roasters",
2701    "sku": null,
2702    "name": "Rwanda - Rulindo Murambi - Washed",
2703    "description": "This lot of Rulindo Murambi was grown by more than 170 family owned farms in Rwanda's Gatsibo district. Smallholder farmers bring their cherries to the centralized Murambi washing station where they are processed with safer, more modernized machinery than individual farmers are able to access. Murambi begins the processing with the quality control method of hand sorting and floating the cherries in water. They are then depulped and fermented. The fermentation process is halted by a 18-24 hour freshwater soak, after which the parchment is washed for a second time. Washing station workers perform a final round of quality control by meticulously hand sorting the parchment on pre-drying tables while it is gently dried to the touch. After removing any parchment with defects from the lot, they transfer it to fully exposed drying tables for 14-21 days. \nWe love this coffee's bright opening plum notes, which meld into smooth dark chocolate and the rich sweetness of brown sugar. Brew it as a pourover for more prominent fruit notes or try it as espresso to bring out its complex chocolate flavor!",
2704    "category": "",
2705    "url": "https://blossomcoffeeroasters.com/products/rwanda-rulindo-murambi","image": {
2706      "@type": "ImageObject",
2707      "url": "https://blossomcoffeeroasters.com/cdn/shop/files/Rwanda_Rulindo_Washed_1024x1024.jpg?v=1788888722",
2708      "image": "https://blossomcoffeeroasters.com/cdn/shop/files/Rwanda_Rulindo_Washed_1024x1024.jpg?v=1788888722",
2709      "name": "Rwanda - Rulindo Murambi - Washed",
2710      "width": 1024,
2711      "height": 1024
2712    }
2713  }
2714</script>
2714
2715
2716
2717  <div class="page-content">
2718    <div class="page-width">
2719
2720      
2721        
2722
2723
2724  <nav class="breadcrumb" role="navigation" aria-label="breadcrumbs">
2725    <a href="/" title="Back to the frontpage">Home</a>
2726
2727    
2728
2729      
2730      <span class="divider" aria-hidden="true">/</span>
2731      <span class="breadcrumb--truncate">Rwanda - Rulindo Murambi - Washed</span>
2732
2733    
2734  </nav>
2735
2736
2737
2738
2739      
2740
2741      <div class="grid">
2742        <div class="grid__item medium-up--one-half">
2743          
2744  <div
2745    data-product-images
2746    data-zoom="true"
2747    data-has-slideshow="true">
2748    <div class="product__photos product__photos-9218078736558 product__photos--beside">
2749
2750      <div class="product__main-photos" data-aos data-product-single-media-group>
2751        <div id="ProductPhotos-9218078736558">
2752<div class="starting-slide" data-index="0">
2753
2754  
2755<div class="product-image-main product-image-main--9218078736558"><div class="image-wrap" style="height: 0; padding-bottom: 99.96232102486813%;"><img class="photoswipe__image lazyload"
2756          data-photoswipe-src="//blossomcoffeeroasters.com/cdn/shop/files/Rwanda_Rulindo_Washed_1800x1800.jpg?v=1788888722"
2757          data-photoswipe-width="2654"
2758          data-photoswipe-height="2653"
2759          data-index="1"
2760          data-src="//blossomcoffeeroasters.com/cdn/shop/files/Rwanda_Rulindo_Washed_{width}x.jpg?v=1788888722"
2761          data-widths="[360, 540, 720, 900, 1080]"
2762          data-aspectratio="1.0003769317753486"
2763          data-sizes="auto"
2764          alt="Rwanda - Rulindo Murambi - Washed"><button type="button" class="btn btn--no-animate btn--body btn--circle js-photoswipe__zoom product__photo-zoom">
2765            <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-search" viewBox="0 0 64 64"><path d="M47.16 28.58A18.58 18.58 0 1 1 28.58 10a18.58 18.58 0 0 1 18.58 18.58zM54 54L41.94 42"/></svg>
2766            <span class="icon__fallback-text">Close (esc)</span>
2767          </button></div></div>
2768
2769</div>
2770
2771<div class="secondary-slide" data-index="1">
2772
2773  
2774<div class="product-image-main product-image-main--9218078736558"><div class="image-wrap" style="height: 0; padding-bottom: 60.0%;"><img class="photoswipe__image lazyload"
2775          data-photoswipe-src="//blossomcoffeeroasters.com/cdn/shop/files/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53_1800x1800.jpg?v=1788888722"
2776          data-photoswipe-width="1125"
2777          data-photoswipe-height="675"
2778          data-index="2"
2779          data-src="//blossomcoffeeroasters.com/cdn/shop/files/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53_{width}x.jpg?v=1788888722"
2780          data-widths="[360, 540, 720, 900, 1080]"
2781          data-aspectratio="1.6666666666666667"
2782          data-sizes="auto"
2783          alt="Rwanda - Rulindo Murambi - Washed"><button type="button" class="btn btn--no-animate btn--body btn--circle js-photoswipe__zoom product__photo-zoom">
2784            <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-search" viewBox="0 0 64 64"><path d="M47.16 28.58A18.58 18.58 0 1 1 28.58 10a18.58 18.58 0 0 1 18.58 18.58zM54 54L41.94 42"/></svg>
2785            <span class="icon__fallback-text">Close (esc)</span>
2786          </button></div></div>
2787
2788</div>
2789
2790<div class="secondary-slide" data-index="2">
2791
2792  
2793<div class="product-image-main product-image-main--9218078736558"><div class="image-wrap" style="height: 0; padding-bottom: 66.69921875%;"><img class="photoswipe__image lazyload"
2794          data-photoswipe-src="//blossomcoffeeroasters.com/cdn/shop/files/Rwanda-Rulindo-Murambi1_1800x1800.jpg?v=1787433962"
2795          data-photoswipe-width="1024"
2796          data-photoswipe-height="683"
2797          data-index="3"
2798          data-src="//blossomcoffeeroasters.com/cdn/shop/files/Rwanda-Rulindo-Murambi1_{width}x.jpg?v=1787433962"
2799          data-widths="[360, 540, 720, 900, 1080]"
2800          data-aspectratio="1.499267935578331"
2801          data-sizes="auto"
2802          alt="Rwanda - Rulindo Murambi - Washed"><button type="button" class="btn btn--no-animate btn--body btn--circle js-photoswipe__zoom product__photo-zoom">
2803            <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-search" viewBox="0 0 64 64"><path d="M47.16 28.58A18.58 18.58 0 1 1 28.58 10a18.58 18.58 0 0 1 18.58 18.58zM54 54L41.94 42"/></svg>
2804            <span class="icon__fallback-text">Close (esc)</span>
2805          </button></div></div>
2806
2807</div>
2808
2809<div class="secondary-slide" data-index="3">
2810
2811  
2812<div class="product-image-main product-image-main--9218078736558"><div class="image-wrap" style="height: 0; padding-bottom: 66.69921875%;"><img class="photoswipe__image lazyload"
2813          data-photoswipe-src="//blossomcoffeeroasters.com/cdn/shop/files/Rwanda-Rulindo-Murambi2_1800x1800.jpg?v=1787433976"
2814          data-photoswipe-width="1024"
2815          data-photoswipe-height="683"
2816          data-index="4"
2817          data-src="//blossomcoffeeroasters.com/cdn/shop/files/Rwanda-Rulindo-Murambi2_{width}x.jpg?v=1787433976"
2818          data-widths="[360, 540, 720, 900, 1080]"
2819          data-aspectratio="1.499267935578331"
2820          data-sizes="auto"
2821          alt="Rwanda - Rulindo Murambi - Washed"><button type="button" class="btn btn--no-animate btn--body btn--circle js-photoswipe__zoom product__photo-zoom">
2822            <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-search" viewBox="0 0 64 64"><path d="M47.16 28.58A18.58 18.58 0 1 1 28.58 10a18.58 18.58 0 0 1 18.58 18.58zM54 54L41.94 42"/></svg>
2823            <span class="icon__fallback-text">Close (esc)</span>
2824          </button></div></div>
2825
2826</div>
2827
2828<div class="secondary-slide" data-index="4">
2829
2830  
2831<div class="product-image-main product-image-main--9218078736558"><div class="image-wrap" style="height: 0; padding-bottom: 66.69921875%;"><img class="photoswipe__image lazyload"
2832          data-photoswipe-src="//blossomcoffeeroasters.com/cdn/shop/files/Rwanda-Rulindo-Murambi3_1800x1800.jpg?v=1787433980"
2833          data-photoswipe-width="1024"
2834          data-photoswipe-height="683"
2835          data-index="5"
2836          data-src="//blossomcoffeeroasters.com/cdn/shop/files/Rwanda-Rulindo-Murambi3_{width}x.jpg?v=1787433980"
2837          data-widths="[360, 540, 720, 900, 1080]"
2838          data-aspectratio="1.499267935578331"
2839          data-sizes="auto"
2840          alt="Rwanda - Rulindo Murambi - Washed"><button type="button" class="btn btn--no-animate btn--body btn--circle js-photoswipe__zoom product__photo-zoom">
2841            <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-search" viewBox="0 0 64 64"><path d="M47.16 28.58A18.58 18.58 0 1 1 28.58 10a18.58 18.58 0 0 1 18.58 18.58zM54 54L41.94 42"/></svg>
2842            <span class="icon__fallback-text">Close (esc)</span>
2843          </button></div></div>
2844
2845</div>
2846</div>
2847
2848        
2849<div class="product__photo-dots product__photo-dots--9218078736558"></div>
2850      </div>
2851
2852      <div
2853        id="ProductThumbs-9218078736558"
2854        class="product__thumbs product__thumbs--beside "
2855        data-position="beside"
2856        data-arrows="true"
2857        data-aos><div class="product__thumb-item"
2858              data-index="0">
2859              <div class="image-wrap" style="height: 0; padding-bottom: 99.96232102486813%;">
2860                <a
2861                  href="//blossomcoffeeroasters.com/cdn/shop/files/Rwanda_Rulindo_Washed_1800x1800.jpg?v=1788888722"
2862                  class="product__thumb product__thumb-9218078736558 js-no-transition"
2863                  data-index="0"
2864                  data-id="35956263452846"><img class="animation-delay-3 lazyload"
2865                      data-src="//blossomcoffeeroasters.com/cdn/shop/files/Rwanda_Rulindo_Washed_{width}x.jpg?v=1788888722"
2866                      data-widths="[360, 540, 720, 900, 1080]"
2867                      data-aspectratio="1.0003769317753486"
2868                      data-sizes="auto"
2869                      alt="Rwanda - Rulindo Murambi - Washed">
2870                </a>
2871              </div>
2872            </div>
2873          <div class="product__thumb-item"
2874              data-index="1">
2875              <div class="image-wrap" style="height: 0; padding-bottom: 60.0%;">
2876                <a
2877                  href="//blossomcoffeeroasters.com/cdn/shop/files/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53_1800x1800.jpg?v=1788888722"
2878                  class="product__thumb product__thumb-9218078736558 js-no-transition"
2879                  data-index="1"
2880                  data-id="35956263649454"><img class="animation-delay-6 lazyload"
2881                      data-src="//blossomcoffeeroasters.com/cdn/shop/files/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53_{width}x.jpg?v=1788888722"
2882                      data-widths="[360, 540, 720, 900, 1080]"
2883                      data-aspectratio="1.6666666666666667"
2884                      data-sizes="auto"
2885                      alt="Rwanda - Rulindo Murambi - Washed">
2886                </a>
2887              </div>
2888            </div>
2889          <div class="product__thumb-item"
2890              data-index="2">
2891              <div class="image-wrap" style="height: 0; padding-bottom: 66.69921875%;">
2892                <a
2893                  href="//blossomcoffeeroasters.com/cdn/shop/files/Rwanda-Rulindo-Murambi1_1800x1800.jpg?v=1787433962"
2894                  class="product__thumb product__thumb-9218078736558 js-no-transition"
2895                  data-index="2"
2896                  data-id="35690512548014"><img class="animation-delay-9 lazyload"
2897                      data-src="//blossomcoffeeroasters.com/cdn/shop/files/Rwanda-Rulindo-Murambi1_{width}x.jpg?v=1787433962"
2898                      data-widths="[360, 540, 720, 900, 1080]"
2899                      data-aspectratio="1.499267935578331"
2900                      data-sizes="auto"
2901                      alt="Rwanda - Rulindo Murambi - Washed">
2902                </a>
2903              </div>
2904            </div>
2905          <div class="product__thumb-item"
2906              data-index="3">
2907              <div class="image-wrap" style="height: 0; padding-bottom: 66.69921875%;">
2908                <a
2909                  href="//blossomcoffeeroasters.com/cdn/shop/files/Rwanda-Rulindo-Murambi2_1800x1800.jpg?v=1787433976"
2910                  class="product__thumb product__thumb-9218078736558 js-no-transition"
2911                  data-index="3"
2912                  data-id="35690512973998"><img class="animation-delay-12 lazyload"
2913                      data-src="//blossomcoffeeroasters.com/cdn/shop/files/Rwanda-Rulindo-Murambi2_{width}x.jpg?v=1787433976"
2914                      data-widths="[360, 540, 720, 900, 1080]"
2915                      data-aspectratio="1.499267935578331"
2916                      data-sizes="auto"
2917                      alt="Rwanda - Rulindo Murambi - Washed">
2918                </a>
2919              </div>
2920            </div>
2921          <div class="product__thumb-item"
2922              data-index="4">
2923              <div class="image-wrap" style="height: 0; padding-bottom: 66.69921875%;">
2924                <a
2925                  href="//blossomcoffeeroasters.com/cdn/shop/files/Rwanda-Rulindo-Murambi3_
29251800x1800.jpg?v=1787433980"
2926                  class="product__thumb product__thumb-9218078736558 js-no-transition"
2927                  data-index="4"
2928                  data-id="35690513006766"><img class="animation-delay-15 lazyload"
2929                      data-src="//blossomcoffeeroasters.com/cdn/shop/files/Rwanda-Rulindo-Murambi3_{width}x.jpg?v=1787433980"
2930                      data-widths="[360, 540, 720, 900, 1080]"
2931                      data-aspectratio="1.499267935578331"
2932                      data-sizes="auto"
2933                      alt="Rwanda - Rulindo Murambi - Washed">
2934                </a>
2935              </div>
2936            </div>
2937          
2938        
2939      </div>
2940    </div>
2941  </div>
2942  
2942<script type="application/json" id="ModelJson-9218078736558">
2943    []
2944  </script>
2944
2945
2946
2947        </div>
2948
2949        <div class="grid__item medium-up--one-half">
2950
2951          <div class="product-single__meta">
2952            
2953
2954            
2955              <h1 class="h2 product-single__title">
2956                Rwanda - Rulindo Murambi - Washed
2957              </h1>
2958            
2959
2960            
2961
2962            
2963
2964              <span id="PriceA11y-9218078736558" class="visually-hidden">Regular price</span>
2965            
2966
2967            <span id="ProductPrice-9218078736558"
2968              class="product__price">
2969              $22.50
2970            </span>
2971
2972            <div class="product__unit-price product__unit-price-wrapper--9218078736558 hide"><span class="product__unit-price--9218078736558"></span>/<span class="product__unit-base--9218078736558"></span>
2973            </div>
2974
2975            <hr class="hr--medium">
2976
2977            
2978              
2979              
2980<form method="post" action="/cart/add" id="AddToCartForm-9218078736558" accept-charset="UTF-8" class="product-single__form" enctype="multipart/form-data"><input type="hidden" name="form_type" value="product" /><input type="hidden" name="utf8" value="✓" />
2981  
2982
2983        <div class="variant-wrapper variant-wrapper--button js">
2984  <label class="variant__label"
2985    for="ProductSelect-9218078736558-option-0">
2986    Size
2987    
2988  </label>
2989
2990  
2991  <fieldset class="variant-input-wrap"
2992    name="Size"
2993    data-index="option1"
2994    id="ProductSelect-9218078736558-option-0">
2995    
2996
2997      <div
2998        class="variant-input"
2999        data-index="option1"
3000        data-value="12oz">
3001        <input type="radio"
3002           checked="checked"
3003          value="12oz"
3004          data-index="option1"
3005          name="Size"
3006          class="variant__input-9218078736558"
3007          
3008          
3009          id="ProductSelect-9218078736558-option-size-12oz">
3010        
3011          <label for="ProductSelect-9218078736558-option-size-12oz">12oz</label>
3012        
3013      </div>
3014    
3015
3016      <div
3017        class="variant-input"
3018        data-index="option1"
3019        data-value="1lb">
3020        <input type="radio"
3021          
3022          value="1lb"
3023          data-index="option1"
3024          name="Size"
3025          class="variant__input-9218078736558"
3026          
3027          
3028          id="ProductSelect-9218078736558-option-size-1lb">
3029        
3030          <label for="ProductSelect-9218078736558-option-size-1lb">1lb</label>
3031        
3032      </div>
3033    
3034
3035      <div
3036        class="variant-input"
3037        data-index="option1"
3038        data-value="2lb">
3039        <input type="radio"
3040          
3041          value="2lb"
3042          data-index="option1"
3043          name="Size"
3044          class="variant__input-9218078736558"
3045          
3046          
3047          id="ProductSelect-9218078736558-option-size-2lb">
3048        
3049          <label for="ProductSelect-9218078736558-option-size-2lb">2lb</label>
3050        
3051      </div>
3052    
3053
3054      <div
3055        class="variant-input"
3056        data-index="option1"
3057        data-value="5lb">
3058        <input type="radio"
3059          
3060          value="5lb"
3061          data-index="option1"
3062          name="Size"
3063          class="variant__input-9218078736558"
3064          
3065          
3066          id="ProductSelect-9218078736558-option-size-5lb">
3067        
3068          <label for="ProductSelect-9218078736558-option-size-5lb">5lb</label>
3069        
3070      </div>
3071    
3072  </fieldset>
3073</div>
3074
3075      
3076
3077
3078  <select name="id" id="ProductSelect-9218078736558" class="product-single__variants no-js">
3079    
3080      
3081        <option 
3082          selected="selected" 
3083          value="48930908635310">
3084          12oz - $22.50 USD
3085        </option>
3086      
3087    
3088      
3089        <option 
3090          value="48930908668078">
3091          1lb - $26.00 USD
3092        </option>
3093      
3094    
3095      
3096        <option 
3097          value="48930908700846">
3098          2lb - $48.00 USD
3099        </option>
3100      
3101    
3102      
3103        <option 
3104          value="48930908733614">
3105          5lb - $110.00 USD
3106        </option>
3107      
3108    
3109  </select>
3110
3111  
3112    <div class="product__quantity product__quantity--button">
3113      <label for="Quantity-9218078736558">Quantity</label>
3114      <div class="js-qty__wrapper">
3115  <input type="text" id="Quantity-9218078736558"
3116    class="js-qty__num"
3117    value="1"
3118    min="1"
3119    aria-label="quantity"
3120    pattern="[0-9]*"
3121    name="quantity">
3122  <button type="button"
3123    class="js-qty__adjust js-qty__adjust--minus"
3124    aria-label="Reduce item quantity by one">
3125      <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-minus" viewBox="0 0 20 20"><path fill="#444" d="M17.543 11.029H2.1A1.032 1.032 0 0 1 1.071 10c0-.566.463-1.029 1.029-1.029h15.443c.566 0 1.029.463 1.029 1.029 0 .566-.463 1.029-1.029 1.029z"/></svg>
3126      <span class="icon__fallback-text" aria-hidden="true">&minus;</span>
3127  </button>
3128  <button type="button"
3129    class="js-qty__adjust js-qty__adjust--plus"
3130    aria-label="Increase item quantity by one">
3131      <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-plus" viewBox="0 0 20 20"><path fill="#444" d="M17.409 8.929h-6.695V2.258c0-.566-.506-1.029-1.071-1.029s-1.071.463-1.071 1.029v6.671H1.967C1.401 8.929.938 9.435.938 10s.463 1.071 1.029 1.071h6.605V17.7c0 .566.506 1.029 1.071 1.029s1.071-.463 1.071-1.029v-6.629h6.695c.566 0 1.029-.506 1.029-1.071s-.463-1.071-1.029-1.071z"/></svg>
3132      <span class="icon__fallback-text" aria-hidden="true">+</span>
3133  </button>
3134</div>
3135
3136    </div>
3137  
3138
3139  
3140
3141
3142<!-- Bold Subscriptions Widget -->
3143
3144<br>
3145
3146  
3147    <div class="payment-buttons">
3148  
3149<button
3150      type="submit"
3151      name="add"
3152      id="AddToCart-9218078736558"
3153      class="addtocart btn--tertiary btn--full btn--no-animate add-to-cart"
3154      >
3155      <span id="AddToCartText-9218078736558" data-default-text="Add to cart">
3156        Add to cart
3157      </span>
3158    </button>
3159
3160    
3161      <div data-shopify="payment-button" class="shopify-payment-button"> <shopify-accelerated-checkout recommended="{&quot;supports_subs&quot;:true,&quot;supports_def_opts&quot;:false,&quot;name&quot;:&quot;shop_pay&quot;,&quot;wallet_params&quot;:{&quot;shopId&quot;:2337869,&quot;merchantName&quot;:&quot;Blossom Coffee Roasters&quot;,&quot;personalized&quot;:true}}" fallback="{&quot;supports_subs&quot;:true,&quot;supports_def_opts&quot;:true,&quot;name&quot;:&quot;buy_it_now&quot;,&quot;wallet_params&quot;:{}}" access-token="fccb586a957e17c0fabf8fe09f843265" buyer-country="US" buyer-locale="en" buyer-currency="USD" variant-params="[{&quot;id&quot;:48930908635310,&quot;requiresShipping&quot;:true},{&quot;id&quot;:48930908668078,&quot;requiresShipping&quot;:true},{&quot;id&quot;:48930908700846,&quot;requiresShipping&quot;:true},{&quot;id&quot;:48930908733614,&quot;requiresShipping&quot;:true}]" shop-id="2337869" enabled-flags="[&quot;1172c16a&quot;,&quot;a1d1f9a1&quot;,&quot;f5afabb3&quot;,&quot;370070f3&quot;]" > <div class="shopify-payment-button__button" role="button" disabled aria-hidden="true" style="background-color: transparent; border: none"> <div class="shopify-payment-button__skeleton">&nbsp;</div> </div> <div class="shopify-payment-button__more-options shopify-payment-button__skeleton" role="button" disabled aria-hidden="true">&nbsp;</div> </shopify-accelerated-checkout> <small id="shopify-buyer-consent" class="hidden" aria-hidden="true" data-consent-type="subscription"> This item is a deferred, subscription, or recurring purchase. By continuing, I agree to the <span id="shopify-subscription-policy-button">cancellation policy</span> and authorize you to charge my payment method at the prices, frequency and dates listed on this page until my order is fulfilled or I cancel, if permitted. </small> </div>
3162    
3163
3164  
3165    </div>
3166  
3167
3168  <textarea id="VariantsJson-9218078736558" class="hide" aria-hidden="true">
3169    [{"id":48930908635310,"title":"12oz","option1":"12oz","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":true,"featured_image":{"id":45430876766382,"product_id":9218078736558,"position":1,"created_at":"2026-09-08T10:32:00-07:00","updated_at":"2026-09-08T10:32:02-07:00","alt":null,"width":2654,"height":2653,"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed.jpg?v=1788888722","variant_ids":[48930908635310]},"available":true,"name":"Rwanda - Rulindo Murambi - Washed - 12oz","public_title":"12oz","options":["12oz"],"price":2250,"weight":0,"compare_at_price":null,"inventory_quantity":-6,"inventory_management":null,"inventory_policy":"deny","barcode":null,"featured_media":{"alt":null,"id":35956263452846,"position":1,"preview_image":{"aspect_ratio":1.0,"height":2653,"width":2654,"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed.jpg?v=1788888722"}},"requires_selling_plan":false,"selling_plan_allocations":[{"price_adjustments":[{"position":1,"price":1800},{"position":2,"price":2025}],"price":1800,"compare_at_price":2250,"per_delivery_price":1800,"selling_plan_id":3594158254,"selling_plan_group_id":"52d60c9a87e98523ff88ad283e61aad784cf310a"}],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":48930908668078,"title":"1lb","option1":"1lb","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":true,"featured_image":{"id":45430876799150,"product_id":9218078736558,"position":2,"created_at":"2026-09-08T10:32:00-07:00","updated_at":"2026-09-08T10:32:02-07:00","alt":null,"width":1125,"height":675,"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53.jpg?v=1788888722","variant_ids":[48930908668078,48930908700846,48930908733614]},"available":true,"name":"Rwanda - Rulindo Murambi - Washed - 1lb","public_title":"1lb","options":["1lb"],"price":2600,"weight":0,"compare_at_price":null,"inventory_quantity":-4,"inventory_management":null,"inventory_policy":"deny","barcode":null,"featured_media":{"alt":null,"id":35956263649454,"position":2,"preview_image":{"aspect_ratio":1.667,"height":675,"width":1125,"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53.jpg?v=1788888722"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":48930908700846,"title":"2lb","option1":"2lb","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":true,"featured_image":{"id":45430876799150,"product_id":9218078736558,"position":2,"created_at":"2026-09-08T10:32:00-07:00","updated_at":"2026-09-08T10:32:02-07:00","alt":null,"width":1125,"height":675,"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53.jpg?v=1788888722","variant_ids":[48930908668078,48930908700846,48930908733614]},"available":true,"name":"Rwanda - Rulindo Murambi - Washed - 2lb","public_title":"2lb","options":["2lb"],"price":4800,"weight":0,"compare_at_price":null,"inventory_quantity":-1,"inventory_management":null,"inventory_policy":"deny","barcode":null,"featured_media":{"alt":null,"id":35956263649454,"position":2,"preview_image":{"aspect_ratio":1.667,"height":675,"width":1125,"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53.jpg?v=1788888722"}},"requires_selling_plan":false,"selling_plan_allocations":[{"price_adjustments":[{"position":1,"price":3840},{"position":2,"price":4320}],"price":3840,"compare_at_price":4800,"per_delivery_price":3840,"selling_plan_id":3594158254,"selling_plan_group_id":"52d60c9a87e98523ff88ad283e61aad784cf310a"}],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":48930908733614,"title":"5lb","option1":"5lb","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":true,"featured_image":{"id":45430876799150,"product_id":9218078736558,"position":2,"created_at":"2026-09-08T10:32:00-07:00","updated_at":"2026-09-08T10:32:02-07:00","alt":null,"width":1125,"height":675,"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53.jpg?v=1788888722","variant_ids":[48930908668078,48930908700846,48930908733614]},"available":true,"name":"Rwanda - Rulindo Murambi - Washed - 5lb","public_title":"5lb","options":["5lb"],"price":11000,"weight":0,"compare_at_price":null,"inventory_quantity":0,"inventory_management":null,"inventory_policy":"deny","barcode":null,"featured_media":{"alt":null,"id":35956263649454,"position":2,"preview_image":{"aspect_ratio":1.667,"height":675,"width":1125,"src":"\/\/blossomcoffeeroasters.com\/cdn\/shop\/files\/Rwanda_Rulindo_Washed_de17d574-4f51-467a-a23d-86ef009a7d53.jpg?v=1788888722"}},"requires_selling_plan":false,"selling_plan_allocations":[{"price_adjustments":[{"position":1,"price":8800},{"position":2,"price":9900}],"price":8800,"compare_at_price":11000,"per_delivery_price":8800,"selling_plan_id":3594158254,"selling_plan_group_id":"52d60c9a87e98523ff88ad283e61aad784cf310a"}],"quantity_rule":{"min":1,"max":null,"increment":1}}]
3170  </textarea>
3171  
3172<input type="hidden" name="product-id" value="9218078736558" /><input type="hidden" name="section-id" value="product-template" /></form>
3173
3174            
3175
3176            
3177              <div class="product-single__description rte">
3178                <p>This lot of Rulindo Murambi was grown by more than 170 family owned farms in Rwanda's Gatsibo district. Smallholder farmers bring their cherries to the centralized Murambi washing station where they are processed with safer, more modernized machinery than individual farmers are able to access. Murambi begins the processing with the quality control method of hand sorting and floating the cherries in water. They are then depulped and fermented. The fermentation process is halted by a 18
3178-24 hour freshwater soak, after which the parchment is washed for a second time. Washing station workers perform a final round of quality control by meticulously hand sorting the parchment on pre-drying tables while it is gently dried to the touch. After removing any parchment with defects from the lot, they transfer it to fully exposed drying tables for 14-21 days. </p>
3179<p>We love this coffee's bright opening plum notes, which meld into smooth dark chocolate and the rich sweetness of brown sugar. Brew it as a pourover for more prominent fruit notes or try it as espresso to bring out its complex chocolate flavor!</p>
3180              </div>
3181
3182              
3183
3184
3185
3186
3187
3188            
3189
3190            
3191              <div class="social-sharing"><a target="_blank" rel="noopener" href="//www.facebook.com/sharer.php?u=https://blossomcoffeeroasters.com/products/rwanda-rulindo-murambi" class="social-sharing__link" title="Share on Facebook">
3192      <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-facebook" viewBox="0 0 32 32"><path fill="#444" d="M18.56 31.36V17.28h4.48l.64-5.12h-5.12v-3.2c0-1.28.64-2.56 2.56-2.56h2.56V1.28H19.2c-3.84 0-7.04 2.56-7.04 7.04v3.84H7.68v5.12h4.48v14.08h6.4z"/></svg>
3193      <span class="social-sharing__title" aria-hidden="true">Share</span>
3194      <span class="visually-hidden">Share on Facebook</span>
3195    </a></div>
3196
3197            
3198          </div>
3199        </div>
3200      </div>
3201
3202      
3203    </div>
3204  </div>
3205</div>
3206
3207
3208
3209
3210
3211</div>
3212<!-- Start of Judge.me code --><div style='clear:both'></div><div id='judgeme_product_reviews' class='jdgm-widget jdgm-review-widget' data-product-title='Rwanda - Rulindo Murambi - Washed' data-id='9218078736558' data-auto-install='false'><div class='jdgm-rev-widg' data-updated-at='2026-09-08T17:43:44Z' data-average-rating='0.00' data-number-of-reviews='0' data-number-of-questions='0' data-image-url='https://cdn.shopify.com/s/files/1/0233/7869/files/Rwanda_Rulindo_Washed.jpg?v=1788888722'> <style class='jdgm-temp-hiding-style'>.jdgm-rev-widg{ display: none }</style> <div class='jdgm-rev-widg__header'> <h2 class='jdgm-rev-widg__title'>Customer Reviews</h2>  <div class='jdgm-rev-widg__summary'> <div class='jdgm-rev-widg__summary-stars' aria-label='Average rating is 0.00 stars' role='img'> <span class='jdgm-star jdgm--off'></span><span class='jdgm-star jdgm--off'></span><span class='jdgm-star jdgm--off'></span><span class='jdgm-star jdgm--off'></span><span class='jdgm-star jdgm--off'></span> </div> <div class='jdgm-rev-widg__summary-text'>Be the first to write a review</div> </div> <a style='display: none' href='#' class='jdgm-write-rev-link' role='button'>Write a review</a> <div class='jdgm-histogram jdgm-temp-hidden'>  <div class='jdgm-histogram__row' data-rating='5' data-frequency='0' data-percentage='0'>  <div class='jdgm-histogram__star' role='button' aria-label="0% (0) reviews with 5 star rating"  tabindex='0' ><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span></div> <div class='jdgm-histogram__bar'> <div class='jdgm-histogram__bar-content' style='width: 0%;'> </div> </div> <div class='jdgm-histogram__percentage'>0%</div> <div class='jdgm-histogram__frequency'>(0)</div> </div>  <div class='jdgm-histogram__row' data-rating='4' data-frequency='0' data-percentage='0'>  <div class='jdgm-histogram__star' role='button' aria-label="0% (0) reviews with 4 star rating"  tabindex='0' ><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--off'></span></div> <div class='jdgm-histogram__bar'> <div class='jdgm-histogram__bar-content' style='width: 0%;'> </div> </div> <div class='jdgm-histogram__percentage'>0%</div> <div class='jdgm-histogram__frequency'>(0)</div> </div>  <div class='jdgm-histogram__row' data-rating='3' data-frequency='0' data-percentage='0'>  <div class='jdgm-histogram__star' role='button' aria-label="0% (0) reviews with 3 star rating"  tabindex='0' ><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--off'></span><span class='jdgm-star jdgm--off'></span></div> <div class='jdgm-histogram__bar'> <div class='jdgm-histogram__bar-content' style='width: 0%;'> </div> </div> <div class='jdgm-histogram__percentage'>0%</div> <div class='jdgm-histogram__frequency'>(0)</div> </div>  <div class='jdgm-histogram__row' data-rating='2' data-frequency='0' data-percentage='0'>  <div class='jdgm-histogram__star' role='button' aria-label="0% (0) reviews with 2 star rating"  tabindex='0' ><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--off'></span><span class='jdgm-star jdgm--off'></span><span class='jdgm-star jdgm--off'></span></div> <div class='jdgm-histogram__bar'> <div class='jdgm-histogram__bar-content' style='width: 0%;'> </div> </div> <div class='jdgm-histogram__percentage'>0%</div> <div class='jdgm-histogram__frequency'>(0)</div> </div>  <div class='jdgm-histogram__row' data-rating='1' data-frequency='0' data-percentage='0'>  <div class='jdgm-histogram__star' role='button' aria-label="0% (0) reviews with 1 star rating"  tabindex='0' ><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--off'></span><span class='jdgm-star jdgm--off'></span><span class='jdgm-star jdgm--off'></span><span class='jdgm-star jdgm--off'></span></div> <div class='jdgm-histogram__bar'> <div class='jdgm-histogram__bar-content' style='width: 0%;'> </div> </div> <div class='jdgm-histogram__percentage'>0%</div> <div class='jdgm-histogram__frequency'>(0)</div> </div>  <div class='jdgm-histogram__row jdgm-histogram__clear-filter' data-rating=null tabindex='0'></div> </div>     <div class='jdgm-rev-widg__sort-wrapper'></div> </div> <div class='jdgm-rev-widg__body'>  <div class='jdgm-rev-widg__reviews'></div> <div class='jdgm-paginate' data-per-page='5' data-url='https://api.judge.me/reviews/reviews_for_widget' style="display: none;"></div>  </div> <div class='jdgm-rev-widg__paginate-spinner-wrapper'> <div class='jdgm-spinner'></div> </div> </div></div><!-- End of Judge.me code -->
3213<div id="shopify-section-product-recommendations" class="shopify-section">
3214
3215
3216
3217  
3218
3219  
3220
3221  
3222
3223  
3224
3225  
3226
3227  
3228
3229  
3230
3231
3232<div
3233    id="Recommendations-9218078736558"
3234    data-section-id="9218078736558"
3235    data-section-type="product-recommendations"
3236    data-enable="true"
3237    data-product-id="9218078736558"
3238    data-url="/recommendations/products"
3239    data-limit="6">
3240
3241    <div
3242      data-section-id="9218078736558"
3243      data-subsection
3244      data-section-type="collection-template"
3245      class="index-section">
3246      <div class="page-width">
3247        <header class="section-header">
3248          <h3 class="section-header__title">
3249            You may also like
3250          </h3>
3251        </header>
3252      </div>
3253
3254      <div class="page-width page-width--flush-small">
3255        <div class="grid-overflow-wrapper">
3256          
3257            <div class="product-recommendations-placeholder">
3258              
3259              <div class="grid grid--uniform visually-invisible" aria-hidden="true">
3260                
3261
3262
3263
3264
3265
3266
3267<div class="grid__item grid-product small--one-half medium-up--one-fifth" data-aos="row-of-">
3268  <div class="grid-product__content">
3269    
3270      
3271      
3272    
3273    
3274
3275<a href="/products/rwanda-rulindo-murambi" class="grid-product__link ">
3276      <div class="grid-product__image-mask">
3277        
3278          <div
3279            class="grid__image-ratio grid__image-ratio--square lazyload"
3280            data-bgset="
3281  
3282  //blossomcoffeeroasters.com/cdn/shop/files/Rwanda_Rulindo_Washed_180x.jpg?v=1788888722 180w 180h,
3283  //blossomcoffeeroasters.com/cdn/shop/files/Rwanda_Rulindo_Washed_360x.jpg?v=1788888722 360w 360h,
3284  //blossomcoffeeroasters.com/cdn/shop/files/Rwanda_Rulindo_Washed_540x.jpg?v=1788888722 540w 540h,
3285  //blossomcoffeeroasters.com/cdn/shop/files/Rwanda_Rulindo_Washed_720x.jpg?v=1788888722 720w 720h,
3286  //blossomcoffeeroasters.com/cdn/shop/files/Rwanda_Rulindo_Washed_900x.jpg?v=1788888722 900w 900h,
3287  //blossomcoffeeroasters.com/cdn/shop/files/Rwanda_Rulindo_Washed_1080x.jpg?v=1788888722 1080w 1080h,
3288  //blossomcoffeeroasters.com/cdn/shop/files/Rwanda_Rulindo_Washed_1296x.jpg?v=1788888722 1296w 1296h,
3289  //blossomcoffeeroasters.com/cdn/shop/files/Rwanda_Rulindo_Washed_1512x.jpg?v=1788888722 1512w 1511h,
3290  //blossomcoffeeroasters.com/cdn/shop/files/Rwanda_Rulindo_Washed_1728x.jpg?v=1788888722 1728w 1727h
3291
3292"
3293            data-sizes="auto">
3294          </div>
3295        
3296
3297        
3298          
3299        
3300      </div>
3301
3302      <div class="grid-product__meta">
3303        <div class="grid-product__title">Rwanda - Rulindo Murambi - Washed</div>
3304        
3305        <div class="grid-product__price">
3306          
3307          
3308            
3309            <span >
3310              from $22.50
3311            </span>
3312          
3313</div>
3314        
3315      </div>
3316    </a>
3317    
3318  </div>
3319</div>
3320
3321              </div>
3322            </div>
3323          
3324          
3325        </div>
3326      </div>
3327    </div>
3328  </div>
3329</div>
3330<div id="shopify-section-product-collection-links" class="shopify-section">
3331</div>
3332
3333        </main>
3334
3335        <div id="shopify-section-footer" class="shopify-section"><footer class="site-footer" data-section-id="footer" data-section-type="footer-section">
3336  <div id="grp-entangle--root" class="grp-entangle--root"></div>
3337  <div class="page-width">
3338    <div class="grid">
3339      
3340      
3341        
3342        <style data-shopify>
3343          @media only screen and (min-width: 769px) {
3344            .footer__item--1494292481350 {
3345              width: 25%;
3346            }
3347          }
3348        </style>
3349
3350        
3351
3352        
3353            <div  class="grid__item small--hide footer__item--1494292481350">
3354              <div class="footer__logo-social">
3355  
3356    <style data-shopify>
3357      .footer__logo a {
3358        height: 78px;
3359      }
3360    </style>
3361<div class="footer__logo">
3362      <a href="/">
3363        <img src="//blossomcoffeeroasters.com/cdn/shop/files/[email protected]?v=1613682594" alt="Blossom Coffee Roasters">
3364      </a>
3365    </div>
3366  
3367
3368  <ul class="no-bullets footer__social">
3369    
3370      <li>
3371        <a target="_blank" rel="noopener" href="https://www.facebook.com/people/Blossom-Coffee-Roasters/61551381509077/" title="Blossom Coffee Roasters on Facebook">
3372          <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-facebook" viewBox="0 0 32 32"><path fill="#444" d="M18.56 31.36V17.28h4.48l.64-5.12h-5.12v-3.2c0-1.28.64-2.56 2.56-2.56h2.56V1.28H19.2c-3.84 0-7.04 2.56-7.04 7.04v3.84H7.68v5.12h4.48v14.08h6.4z"/></svg>
3373          <span class="icon__fallback-text">Facebook</span>
3374        </a>
3375      </li>
3376    
3377    
3378    
3379    
3380      <li>
3381        <a target="_blank" rel="noopener" href="https://instagram.com/blossomcoffeeroastery" title="Blossom Coffee Roasters on Instagram">
3382          <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-instagram" viewBox="0 0 32 32"><path fill="#444" d="M16 3.094c4.206 0 4.7.019 6.363.094 1.538.069 2.369.325 2.925.544.738.287 1.262.625 1.813 1.175s.894 1.075 1.175 1.813c.212.556.475 1.387.544 2.925.075 1.662.094 2.156.094 6.363s-.019 4.7-.094 6.363c-.069 1.538-.325 2.369-.544 2.925-.288.738-.625 1.262-1.175 1.813s-1.075.894-1.813 1.175c-.556.212-1.387.475-2.925.544-1.663.075-2.156.094-6.363.094s-4.7-.019-6.363-.094c-1.537-.069-2.369-.325-2.925-.544-.737-.288-1.263-.625-1.813-1.175s-.894-1.075-1.175-1.813c-.212-.556-.475-1.387-.544-2.925-.075-1.663-.094-2.156-.094-6.363s.019-4.7.094-6.363c.069-1.537.325-2.369.544-2.925.287-.737.625-1.263 1.175-1.813s1.075-.894 1.813-1.175c.556-.212 1.388-.475 2.925-.544 1.662-.081 2.156-.094 6.363-.094zm0-2.838c-4.275 0-4.813.019-6.494.094-1.675.075-2.819.344-3.819.731-1.037.4-1.913.944-2.788 1.819S1.486 4.656 1.08 5.688c-.387 1-.656 2.144-.731 3.825-.075 1.675-.094 2.213-.094 6.488s.019 4.813.094 6.494c.075 1.675.344 2.819.731 3.825.4 1.038.944 1.913 1.819 2.788s1.756 1.413 2.788 1.819c1 .387 2.144.656 3.825.731s2.213.094 6.494.094 4.813-.019 6.494-.094c1.675-.075 2.819-.344 3.825-.731 1.038-.4 1.913-.944 2.788-1.819s1.413-1.756 1.819-2.788c.387-1 .656-2.144.731-3.825s.094-2.212.094-6.494-.019-4.813-.094-6.494c-.075-1.675-.344-2.819-.731-3.825-.4-1.038-.944-1.913-1.819-2.788s-1.756-1.413-2.788-1.819c-1-.387-2.144-.656-3.825-.731C20.812.275 20.275.256 16 .256z"/><path fill="#444" d="M16 7.912a8.088 8.088 0 0 0 0 16.175c4.463 0 8.087-3.625 8.087-8.088s-3.625-8.088-8.088-8.088zm0 13.338a5.25 5.25 0 1 1 0-10.5 5.25 5.25 0 1 1 0 10.5zM26.294 7.594a1.887 1.887 0 1 1-3.774.002 1.887 1.887 0 0 1 3.774-.003z"/></svg>
3383          <span class="icon__fallback-text">Instagram</span>
3384        </a>
3385      </li>
3386    
3387    
3388    
3389    
3390    
3391    
3392    
3393  </ul>
3394
3395</div>
3396
3397<p class="footer__powered_by small--hide"><a target="_blank" rel="nofollow" href="https://www.shopify.com/pci-compl
3397iant?utm_campaign=poweredby&amp;utm_medium=shopify&amp;utm_source=onlinestore">This store is PCI Compliant</a></p>
3398
3399
3400            </div>
3401          
3402      
3403        
3404        <style data-shopify>
3405          @media only screen and (min-width: 769px) {
3406            .footer__item--1494292485313 {
3407              width: 18%;
3408            }
3409          }
3410        </style>
3411
3412        
3413
3414        
3415            <div  class="grid__item footer__item--1494292485313">
3416              
3417  
3418    <p class="footer__title small--hide">
3419      SHOP
3420    </p>
3421    <button type="button" class="footer__title collapsible-trigger collapsible-trigger-btn medium-up--hide" aria-controls="Footer-1494292485313">
3422      SHOP
3423      <span class="collapsible-trigger__icon collapsible-trigger__icon--open" role="presentation">
3424  <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon--wide icon-chevron-down" viewBox="0 0 28 16"><path d="M1.57 1.59l12.76 12.77L27.1 1.59" stroke-width="2" stroke="#000" fill="none" fill-rule="evenodd"/></svg>
3425</span>
3426
3427    </button>
3428  
3429  <div
3430    
3431      id="Footer-1494292485313" class="collapsible-content collapsible-content--small"
3432    >
3433    <div class="collapsible-content__inner">
3434      <div class="footer__collapsible">
3435        <ul class="no-bullets site-footer__linklist">
3436          
3437            <li><a href="https://blossomcoffeeroasters.com/collections/coffee">Coffee</a></li>
3438          
3439            <li><a href="https://blossomcoffeeroasters.com/collections/tea">Tea</a></li>
3440          
3441            <li><a href="/search">Search</a></li>
3442          
3443        </ul>
3444      </div>
3445    </div>
3446  </div>
3447
3448
3449            </div>
3450        
3451      
3452        
3453        <style data-shopify>
3454          @media only screen and (min-width: 769px) {
3455            .footer__item--e8adae13-a7fa-4a46-9084-7a7b30a25983 {
3456              width: 20%;
3457            }
3458          }
3459        </style>
3460
3461        
3462
3463        
3464            <div  class="grid__item footer__item--e8adae13-a7fa-4a46-9084-7a7b30a25983">
3465              
3466  
3467    <p class="footer__title small--hide">
3468      BLOSSOM
3469    </p>
3470    <button type="button" class="footer__title collapsible-trigger collapsible-trigger-btn medium-up--hide" aria-controls="Footer-e8adae13-a7fa-4a46-9084-7a7b30a25983">
3471      BLOSSOM
3472      <span class="collapsible-trigger__icon collapsible-trigger__icon--open" role="presentation">
3473  <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon--wide icon-chevron-down" viewBox="0 0 28 16"><path d="M1.57 1.59l12.76 12.77L27.1 1.59" stroke-width="2" stroke="#000" fill="none" fill-rule="evenodd"/></svg>
3474</span>
3475
3476    </button>
3477  
3478  <div
3479    
3480      id="Footer-e8adae13-a7fa-4a46-9084-7a7b30a25983" class="collapsible-content collapsible-content--small"
3481    >
3482    <div class="collapsible-content__inner">
3483      <div class="footer__collapsible">
3484        <ul class="no-bullets site-footer__linklist">
3485          
3486            <li><a href="/pages/our-coffee">About Us</a></li>
3487          
3488            <li><a href="/pages/wholesale">Wholesale</a></li>
3489          
3490            <li><a href="/pages/islanders">Islanders</a></li>
3491          
3492            <li><a href="/pages/contact-us">Contact Us</a></li>
3493          
3494        </ul>
3495      </div>
3496    </div>
3497  </div>
3498
3499
3500            </div>
3501        
3502      
3503        
3504        <style data-shopify>
3505          @media only screen and (min-width: 769px) {
3506            .footer__item--1494292487693 {
3507              width: 33%;
3508            }
3509          }
3510        </style>
3511
3512        
3513
3514        
3515            <div  class="grid__item footer__item--1494292487693">
3516              
3517  <p class="footer__title small--hide">SUBSCRIBE</p>
3518  <button type="button" class="footer__title collapsible-trigger collapsible-trigger-btn medium-up--hide" aria-controls="Footer-1494292487693">
3519    SUBSCRIBE
3520    <span class="collapsible-trigger__icon collapsible-trigger__icon--open" role="presentation">
3521  <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon--wide icon-chevron-down" viewBox="0 0 28 16"><path d="M1.57 1.59l12.76 12.77L27.1 1.59" stroke-width="2" stroke="#000" fill="none" fill-rule="evenodd"/></svg>
3522</span>
3523
3524  </button>
3525
3526<div
3527  
3528    id="Footer-1494292487693" class="collapsible-content collapsible-content--small"
3529  >
3530  <div class="collapsible-content__inner">
3531    <div class="footer__collapsible">
3532      
3533        <p><p>Subscribe to our email list to get monthly special offers and limited-time deals.</p></p>
3534      
3535
3536      <form method="post" action="/contact#newsletter-footer" id="newsletter-footer" accept-charset="UTF-8" class="contact-form"><input type="hidden" name="form_type" value="customer" /><input type="hidden" name="utf8" value="✓" />
3537        
3538        
3539
3540        <label for="Email-1494292487693" class="hidden-label">Enter your email</label>
3541        <input type="hidden" name="contact[tags]" value="prospect,newsletter">
3542        <input type="hidden" name="contact[context]" value="footer">
3543        <div class="footer__newsletter">
3544          <input type="email" value="" placeholder="Enter your email" name="contact[email]" id="Email-1494292487693" class="footer__newsletter-input" autocorrect="off" autocapitalize="off">
3545          <button type="submit" class="footer__newsletter-btn" name="commit">
3546            <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-email" viewBox="0 0 64 64"><path d="M63 52H1V12h62zM1 12l25.68 24h9.72L63 12M21.82 31.68L1.56 51.16m60.78.78L41.27 31.68"/></svg>
3547          </button>
3548        </div>
3549      </form>
3550    </div>
3551  </div>
3552</div>
3553
3554            </div>
3555          
3556      
3557      
3558        
3559          <div class="grid__item medium-up--hide">
3560            <div class="footer__logo-social">
3561  
3562    <style data-shopify>
3563      .footer__logo a {
3564        height: 78px;
3565      }
3566    </style>
3567<div class="footer__logo">
3568      <a href="/">
3569        <img src="//blossomcoffeeroasters.com/cdn/shop/files/[email protected]?v=1613682594" alt="Blossom Coffee Roasters">
3570      </a>
3571    </div>
3572  
3573
3574  <ul class="no-bullets footer__social">
3575    
3576      <li>
3577        <a target="_blank" rel="noopener" href="https://www.facebook.com/people/Blossom-Coffee-Roasters/61551381509077/" title="Blossom Coffee Roasters on Facebook">
3578          <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-facebook" viewBox="0 0 32 32"><path fill="#444" d="M18.56 31.36V17.28h4.48l.64-5.12h-5.12v-3.2c0-1.28.64-2.56 2.56-2.56h2.56V1.28H19.2c-3.84 0-7.04 2.56-7.04 7.04v3.84H7.68v5.12h4.48v14.08h6.4z"/></svg>
3579          <span class="icon__fallback-text">Facebook</span>
3580        </a>
3581      </li>
3582    
3583    
3584    
3585    
3586      <li>
3587        <a target="_blank" rel="noopener" href="https://instagram.com/blossomcoffeeroastery" title="Blossom Coffee Roasters on Instagram">
3588          <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-instagram" viewBox="0 0 32 32"><path fill="#444" d="M16 3.094c4.206 0 4.7.019 6.363.094 1.538.069 2.369.325 2.925.544.738.287 1.262.625 1.813 1.175s.894 1.075 1.175 1.813c.212.556.475 1.387.544 2.925.075 1.662.094 2.156.094 6.363s-.019 4.7-.094 6.363c-.069 1.538-.325 2.369-.544 2.925-.288.738-.625 1.262-1.175 1.813s-1.075.894-1.813 1.175c-.556.212-1.387.475-2.925.544-1.663.075-2.156.094-6.363.094s-4.7-.019-6.363-.094c-1.537-.069-2.369-.325-2.925-.544-.737-.288-1.263-.625-1.813-1.175s-.894-1.075-1.175-1.813c-.212-.556-.475-1.387-.544-2.925-.075-1.663-.094-2.156-.094-6.363s.019-4.7.094-6.363c.069-1.537.325-2.369.544-2.925.287-.737.625-1.263 1.175-1.813s1.075-.894 1.813-1.175c.556-.212 1.388-.475 2.925-.544 1.662-.081 2.156-.094 6.363-.094zm0-2.838c-4.275 0-4.813.019-6.494.094-1.675.075-2.819.344-3.819.731-1.037.4-1.913.944-2.788 1.819S1.486 4.656 1.08 5.688c-.387 1-.656 2.144-.731 3.825-.075 1.675-.094 2.213-.094 6.488s.019 4.813.094 6.494c.075 1.675.344 2.819.731 3.825.4 1.038.944 1.913 1.819 2.788s1.756 1.413 2.788 1.819c1 .387 2.144.656 3.825.731s2.213.094 6.494.094 4.813-.019 6.494-.094c1.675-.075 2.819-.344 3.825-.731 1.038-.4 1.913-.944 2.788-1.819s1.413-1.756 1.819-2.788c.387-1 .656-2.144.731-3.825s.094-2.212.094-6.494-.019-4.813-.094-6.494c-.075-1.675-.344-2.819-.731-3.825-.4-1.038-.944-1.913-1.819-2.788s-1.756-1.413-2.788-1.819c-1-.387-2.144-.656-3.825-.731C20.812.275 20.275.256 16 .256z"/><path fill="#444" d="M16 7.912a8.088 8.088 0 0 0 0 16.175c4.463 0 8.087-3.625 8.087-8.088s-3.625-8.088-8.088-8.088zm0 13.338a5.25 5.25 0 1 1 0-10.5 5.25 5.25 0 1 1 0 10.5zM26.294 7.594a1.887 1.887 0 1 1-3.774.002 1.887 1.887 0 0 1 3.774-.003z"/></svg>
3589          <span class="icon__fallback-text">Instagram</span>
3590        </a>
3591      </li>
3592    
3593    
3594    
3595    
3596    
3597    
3598    
3599  </ul>
3600
3601</div>
3602
3603<p class="footer__powered_by"><a target="_blank" rel="nofollow" href="https://www.shopify.com/pci-compliant?utm_campaign=poweredby&amp;utm_medium=shopify&amp;utm_source=onlinestore">This store is PCI Compliant</a></p>
3604
3605
3606          </div>
3607        
3608      
3609        
3610      
3611        
3612      
3613        
3614      
3615    </div>
3616
3617    <div class="site-footer__bottom">
3618
3619      
3620        <div class="footer__copyright site-footer__bottom-block text-center">
3621          &copy; 2026
3622          Blossom Coffee Roasters
3623          
3624        </div>
3625      
3626    </div>
3627  </div>
3628  <div id="grp-entangle--root" class="grp-entangle--root"></div>
3629</footer>
3630
3631
3632</div>
3633      </div>
3634    </div>
3635
3636    <div id="shopify-section-newsletter-popup" class="shopify-section index-section--hidden">
3637
3638
3639</div>
3640<script id="CartTemplate" type="text/template">
3641
3642  <div class="drawer__scrollable">
3643    {{#items}}
3644    <div class="ajaxcart__product appear-animation appear-delay-{{animationRow}}">
3645      <div class="ajaxcart__row">
3646        <div class="grid">
3647          <div class="grid__item one-third">
3648            <a href="{{url}}" class="ajaxcart__product-image"><img src="{{img}}" alt="{{name}}"></a>
3649          </div>
3650          <div class="grid__item two-thirds">
3651            <div class="ajaxcart__product-name--wrapper">
3652              <a href="{{url}}" class="ajaxcart__product-name">{{{name}}}</a>
3653              {{#if variation}}
3654                <span class="ajaxcart__product-meta">{{variation}}</span>
3655              {{/if}}
3656              {{#properties}}
3657                {{#each this}}
3658                  {{#if this}}
3659                    <span class="ajaxcart__product-meta">{{@key}}: {{this}}</span>
3660                  {{/if}}
3661                {{/each}}
3662              {{/properties}}
3663                     {{{sellingPlan}}}
3664            </div>
3665
3666            <div class="grid grid--full display-table">
3667              <div class="grid__item display-table-cell one-half">
3668                <label for="updates_{{key}}" class="visually-hidden">Quantity</label>
3669                <div class="js-qty__wrapper">
3670                  <input type="text" id="updates_{{key}}"
3671                    class="js-qty__num"
3672                    value="{{itemQty}}"
3673                    data-id="{{key}}"
3674                    min="0"
3675                    aria-label="quantity"
3676                    pattern="[0-9]*"
3677                    name="updates[]">
3678                  <button type="button"
3679                    class="js-qty__adjust js-qty__adjust--minus"
3680                    aria-label="Reduce item quantity by one">
3681                      <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-minus" viewBox="0 0 20 20"><path fill="#444" d="M17.543 11.029H2.1A1.032 1.032 0 0 1 1.071 10c0-.566.463-1.029 1.029-1.029h15.443c.566 0 1.029.463 1.029 1.029 0 .566-.463 1.029-1.029 1.029z"/></svg>
3682                      <span class="icon__fallback-text" aria-hidden="true">&minus;</span>
3683                  </button>
3684                  <button type="button"
3685                    class="js-qty__adjust js-qty__adjust--plus"
3686                    aria-label="Increase item quantity by one">
3687                      <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-plus" viewBox="0 0 20 20"><path fill="#444" d="M17.409 8.929h-6.695V2.258c0-.566-.506-1.029-1.071-1.029s-1.071.463-1.071 1.029v6.671H1.967C1.401 8.929.938 9.435.938 10s.463 1.071 1.029 1.071h6.605V17.7c0 .566.506 1.029 1.071 1.029s1.071-.463 1.071-1.029v-6.629h6.695c.566 0 1.029-.506 1.029-1.071s-.463-1.071-1.029-1.071z"/></svg>
3688                      <span class="icon__fallback-text" aria-hidden="true">+</span>
3689                  </button>
3690                </div>
3691              </div>
3692              <div class="grid__item display-table-cell one-half text-right">
3693                {{#if discountsApplied}}
3694                  <small class="cart__price--strikethrough">{{{price}}}</small>
3695                  <span class="ajaxcart__price">
3696                    {{{discountedPrice}}}
3697                  </span>
3698                {{else}}
3699                  <span class="ajaxcart__price">
3700                    {{{price}}}
3701                  </span>
3702                {{/if}}
3703              </div>
3704            </div>
3705
3706            <div class="grid grid--full">
3707              {{#if discountsApplied}}
3708                <div class="grid__item text-right">
3709                  {{#each discounts}}
3710                    <small class="ajaxcart__discount cart__discount">
3711                      {{this.discount_application.title}} (-{{{this.formattedAmount}}})
3712                    </small>
3713                  {{/each}}
3714                </div>
3715              {{/if}}
3716
3717              {{#if unitBase}}
3718                <div class="grid__item text-right">
3719                  <div class="product__unit-price">
3720                    {{{ unitPrice }}}/{{{ unitBase }}}
3721                  </div>
3722                </div>
3723              {{/if}}
3724            </div>
3725          </div>
3726        </div>
3727      </div>
3728    </div>
3729    {{/items}}
3730
3731    
3732      <div class="appear-animation appear-delay-{{lastAnimationRow}}">
3733        <label for="CartSpecialInstructions" class="ajaxcart__note">Write a gift message</label>
3734        <textarea name="note" class="input-full cart-notes" id="CartSpecialInstructions">{{note}}</textarea>
3735      </div>
3736    
3737  </div>
3738  <div class="drawer__footer appear-animation appear-delay-{{lastAnimationRow}}">
3739    {{#if cartDiscounts }}
3740      <div class="grid grid--full">
3741        <div class="grid__item one-half">
3742          <p class="ajaxcart__subtotal">Discounts</p>
3743        </div>
3744        <div class="grid__item one-half text-right">
3745          {{#each cartDiscounts}}
3746            <p class="ajaxcart__price cart__discount">
3747              {{this.title}} (-{{{this.formattedAmount}}})
3748            </p>
3749          {{/each}}
3750        </div>
3751      </div>
3752    {{/if}}
3753    <div class="grid grid--full">
3754      <div class="grid__item one-half">
3755        <p class="ajaxcart__subtotal">Subtotal</p>
3756      </div>
3757      <div class="grid__item one-half text-right">
3758        <p class="ajaxcart__price">{{{totalPrice}}}</p>
3759      </div>
3760    </div>
3761    {{#if totalCartDiscount}}
3762      <p class="ajaxcart__savings text-center">{{{totalCartDiscount}}}</p>
3763    {{/if}}
3764    <p class="ajaxcart__note">
3765      Shipping, taxes, and discount codes calculated at checkout.
3766    </p>
3767    
3768    
3769      
3770    
3771    <button type="submit" class="btn btn--full cart__checkout" name="checkout">
3772      Check out
3773    </button>
3774  </div>
3775
3776</script>
vendor: 1 bytes, line 3776
3776
3777<script id="PredictiveTemplate" type="text/template">
3778  <div class="predictive-result__layout">
3779    
3780      {{#if products}}
3781        <div data-type-products>
3782          <div class="grid grid--small">
3783            {{#products}}
3784              <div class="grid__item medium-up--one-third">
3785                <a href="{{url}}" class="predictive__result">
3786                  <div class="predictive__result-image">
3787                    {{#if image }}
3788                      <img src="{{image}}" alt="{{title}}">
3789                    {{/if}}
3790                  </div>
3791                  <div class="predictive__result-meta">
3792                    <div class="grid-product__title">
3793                      {{title}}
3794                    </div>
3795                    
3796                    
3797                  </div>
3798                </a>
3799              </div>
3800            {{/products}}
3801          </div>
3802        </div>
3803      {{/if}}
3804
3805      {{#if collections}}
3806        <div data-type-collections>
3807          <p class="h6 predictive__label">Collections:</p>
3808          <div class="grid grid--small">
3809            {{#collections}}
3810              <div class="grid__item medium-up--one-third">
3811                <a href="{{url}}" class="predictive__result">
3812                  <div class="predictive__result-image">
3813                    {{#if image }}
3814                      <img src="{{image}}" alt="{{title}}">
3815                    {{/if}}
3816                  </div>
3817                  <div class="predictive__result-meta">
3818                    <div class="grid-product__title">
3819                      {{title}}
3820                    </div>
3821                  </div>
3822                </a>
3823              </div>
3824            {{/collections}}
3825          </div>
3826        </div>
3827      {{/if}}
3828
3829      {{#if pages}}
3830        <div data-type-pages>
3831          <p class="h6 predictive__label">Pages:</p>
3832          {{#pages}}
3833            <div>
3834              <a href="{{url}}">
3835                {{title}}
3836              </a>
3837            </div>
3838          {{/pages}}
3839        </div>
3840      {{/if}}
3841
3842      {{#if articles}}
3843        <div data-type-articles>
3844          <p class="h6 predictive__label">Articles:</p>
3845          <div class="grid grid--small">
3846            {{#articles}}
3847              <div class="grid__item medium-up--one-third">
3848                <a href="{{url}}" class="predictive__result">
3849                  <div class="predictive__result-image">
3850                    {{#if image }}
3851                      <img src="{{image}}" alt="{{title}}">
3852                    {{/if}}
3853                  </div>
3854                  <div class="predictive__result-meta">
3855                    {{title}}
3856                  </div>
3857                </a>
3858              </div>
3859            {{/articles}}
3860          </div>
3861        </div>
3862      {{/if}}
3863    
3864  </div>
3865</script>
3865
3866
3867    <div class="hide">
3868      <button
3869        id="prevArrowTemplate"
3870        class="slick-prev"
3871        aria-label="Previous"
3872        type="button"
3873      >
3874        <svg
3875          aria-hidden="true"
3876          focusable="false"
3877          role="presentation"
3878          class="icon icon-chevron-left"
3879          viewBox="0 0 284.49 498.98"
3880        >
3881          <path d="M249.49 0a35 35 0 0 1 24.75 59.75L84.49 249.49l189.75 189.74a35.002 35.002 0 1 1-49.5 49.5L10.25 274.24a35 35 0 0 1 0-49.5L224.74 10.25A34.89 34.89 0 0 1 249.49 0z"/>
3882        </svg>
3883        <span class="icon__fallback-text">Previous</span>
3884      </button>
3885      <button id="nextArrowTemplate" class="slick-next" aria-label="Next" type="button">
3886        <svg
3887          aria-hidden="true"
3888          focusable="false"
3889          role="presentation"
3890          class="icon icon-chevron-right"
3891          viewBox="0 0 284.49 498.98"
3892        >
3893          <path d="M35 498.98a35 35 0 0 1-24.75-59.75l189.74-189.74L10.25 59.75a35.002 35.002 0 0 1 49.5-49.5l214.49 214.49a35 35 0 0 1 0 49.5L59.75 488.73A34.89 34.89 0 0 1 35 498.98z"/>
3894        </svg>
3895        <span class="icon__fallback-text">Next</span>
3896      </button>
3897    </div>
3898
3899    <div id="VideoModal" class="modal modal--solid">
3900  <div class="modal__inner">
3901    <div class="modal__centered page-width text-center">
3902      <div class="modal__centered-content">
3903        <div class="video-wrapper video-wrapper--modal">
3904          <div id="VideoHolder"></div>
3905        </div>
3906      </div>
3907    </div>
3908  </div>
3909
3910  <button type="button" class="modal__close js-modal-close text-link">
3911    <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-close" viewBox="0 0 64 64"><path d="M19 17.61l27.12 27.13m0-27.12L19 44.74"/></svg>
3912    <span class="icon__fallback-text">"Close (esc)"</span>
3913  </button>
3914</div>
3915
3916    <div class="pswp" tabindex="-1" role="dialog" aria-hidden="true">
3917  <div class="pswp__bg"></div>
3918  <div class="pswp__scroll-wrap">
3919    <div class="pswp__container">
3920      <div class="pswp__item"></div>
3921      <div class="pswp__item"></div>
3922      <div class="pswp__item"></div>
3923    </div>
3924
3925    <div class="pswp__ui pswp__ui--hidden">
3926      <button class="btn btn--no-animate btn--body btn--circle pswp__button pswp__button--arrow--left" title="Previous">
3927        <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-chevron-left" viewBox="0 0 284.49 498.98"><path d="M249.49 0a35 35 0 0 1 24.75 59.75L84.49 249.49l189.75 189.74a35.002 35.002 0 1 1-49.5 49.5L10.25 274.24a35 35 0 0 1 0-49.5L224.74 10.25A34.89 34.89 0 0 1 249.49 0z"/></svg>
3928      </button>
3929
3930      <button class="btn btn--no-animate btn--body btn--circle btn--large pswp__button pswp__button--close" title="Close (esc)">
3931        <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-close" viewBox="0 0 64 64"><path d="M19 17.61l27.12 27.13m0-27.12L19 44.74"/></svg>
3932      </button>
3933
3934      <button class="btn btn--no-animate btn--body btn--circle pswp__button pswp__button--arrow--right" title="Next">
3935        <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-chevron-right" viewBox="0 0 284.49 498.98"><path d="M35 498.98a35 35 0 0 1-24.75-59.75l189.74-189.74L10.25 59.75a35.002 35.002 0 0 1 49.5-49.5l214.49 214.49a35 35 0 0 1 0 49.5L59.75 488.73A34.89 34.89 0 0 1 35 498.98z"/></svg>
3936      </button>
3937    </div>
3938  </div>
3939</div>
3940
3941
3942    <!-- **BEGIN** Hextom QAB Integration // Main Include - DO NOT MODIFY -->
3943    <!-- **BEGIN** Hextom QAB Integration // Main - DO NOT MODIFY -->
3944<script type="application/javascript">
3945    window.hextom_qab_meta = {
3946        p1: [
3947            
3948                
3949                    "acirfA"
3950                    ,
3951                
3952                    "sselmottoB"
3953                    ,
3954                
3955                    "eeffoC"
3956                    ,
3957                
3958                    "tsaor thgiL"
3959                    ,
3960                
3961                    "adnawR"
3962                    ,
3963                
3964                    "eeffoc ytlaiceps"
3965                    ,
3966                
3967                    "dehsaW"
3968                    
3969                
3970            
3971        ],
3972        p2: {
3973            
3974        }
3975    };
3976</script>
3976
3977<!-- **END** Hextom QAB Integration // Main - DO NOT MODIFY -->
3978    <!-- **END** Hextom QAB Integration // Main Include - DO NOT MODIFY -->
3979    <div id="bb-be">
3980    

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.