1<!doctype html> 2<html class="no-js" lang="en"> 3 <head> 4 <!-- Added by AVADA SEO Suite --> 5 6 7 <!-- /Added by AVADA SEO Suite --> 8 <meta charset="utf-8"> 9 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 10 <meta name="viewport" content="width=device-width,initial-scale=1"> 11 <meta name="theme-color" content=""> 12 <link rel="canonical" href="https://fleurdemernj.com/products/kids-craft-club-flower-fairies-january-18th"> 13 <link rel="preconnect" href="https://cdn.shopify.com" crossorigin><link rel="preconnect" href="https://fonts.shopifycdn.com" crossorigin><title> 14 Kids Craft Club in Ocean Township NJ | Fleur de Mer 15</title> 16 17 18 <meta name="description" content="Join Kids Craft Club at Fleur de Mer in Ocean Township NJ. A relaxed, parent supervised craft class for kids ages 3 to 7, including materials and a take home flower."> 19 20 21 22 23<meta property="og:site_name" content="Fleur de Mer"> 24<meta property="og:url" content="https://fleurdemernj.com/products/kids-craft-club-flower-fairies-january-18th"> 25<meta property="og:title" content="Kids Craft Club in Ocean Township NJ | Fleur de Mer"> 26<meta property="og:type" content="product"> 27<meta property="og:description" content="Join Kids Craft Club at Fleur de Mer in Ocean Township NJ. A relaxed, parent supervised craft class for kids ages 3 to 7, including materials and a take home flower."><meta property="og:image" content="http://fleurdemernj.com/cdn/shop/files/CopyofCenteredBeginningsSoundBath_VisionBoardNight_InstagramPost_1.png?v=1766814530"> 28 <meta property="og:image:secure_url" content="https://fleurdemernj.com/cdn/shop/files/CopyofCenteredBeginningsSoundBath_VisionBoardNight_InstagramPost_1.png?v=1766814530"> 29 <meta property="og:image:width" content="1080"> 30 <meta property="og:image:height" content="1080"><meta property="og:price:amount" content="15.00"> 31 <meta property="og:price:currency" content="USD"><meta name="twitter:card" content="summary_large_image"> 32<meta name="twitter:title" content="Kids Craft Club in Ocean Township NJ | Fleur de Mer"> 33<meta name="twitter:description" content="Join Kids Craft Club at Fleur de Mer in Ocean Township NJ. A relaxed, parent supervised craft class for kids ages 3 to 7, including materials and a take home flower."> 34 35 36
36<script src="//fleurdemernj.com/cdn/shop/t/1/assets/constants.js?v=165488195745554878101678481345" defer="defer"></script>
36 37
37<script src="//fleurdemernj.com/cdn/shop/t/1/assets/pubsub.js?v=2921868252632587581678481355" defer="defer"></script>
37 38
38<script src="//fleurdemernj.com/cdn/shop/t/1/assets/global.js?v=85297797553816670871678481348" defer="defer"></script>
38 39
39<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
39<meta name="robots" content="noindex,nofollow"> 40<meta name="facebook-domain-verification" content="adn7xgp1pmu7ygg47an51bqstw1sa6"> 41<meta name="google-site-verification" content="66KIf3gDH8ebNW0fYndVv2Pdpg0v1vVGSzJOogoOlnk"> 42<meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/73177301270/digital_wallets/dialog"> 43<meta id="in-context-paypal-metadata" data-shop-id="73177301270" data-venmo-supported="false" data-environment="production" data-locale="en_US" data-paypal-v4="true" data-currency="USD"> 44<link rel="ucp" href="/.well-known/ucp" version="2026-08-25"><link rel="buy" href="/cart/50882504458518:1?ucp/version=2026-08-25&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://fleurdemernj.com/products/kids-craft-club-flower-fairies-january-18th.oembed">
45<script async="async" src="/checkouts/internal/preloads.js?locale=en-US"></script>
45 46<link rel="preconnect" href="https://shop.app" crossorigin="anonymous">
47<script async="async" src="https://shop.app/checkouts/internal/preloads.js?locale=en-US&shop_id=73177301270" crossorigin="anonymous"></script>
vendor: 1 bytes, line 47
47
48<script id="apple-pay-shop-capabilities" type="application/json">{"shopId":73177301270,"countryCode":"US","currencyCode":"USD","merchantCapabilities":["supports3DS"],"merchantId":"gid:\/\/shopify\/Shop\/73177301270","merchantName":"Fleur de Mer","requiredBillingContactFields":["postalAddress","email","phone"],"requiredShippingContactFields":["postalAddress","email","phone"],"shippingType":"shipping","supportedNetworks":["visa","masterCard","amex","discover","elo","jcb"],"total":{"type":"pending","label":"Fleur de Mer","amount":"1.00"},"shopifyPaymentsEnabled":true,"supportsSubscriptions":true}</script>
vendor: 1 bytes, line 48
48
49<script id="shopify-features" type="application/json">{"accessToken":"393e4840c0c8cdf0fb2735077b04edf2","betas":["rich-media-storefront-analytics"],"domain":"fleurdemernj.com","predictiveSearch":true,"shopId":73177301270,"locale":"en"}</script>
vendor: 1 bytes, line 49
49
50<script>var Shopify = Shopify || {}; 51Shopify.shop = "fleurdemernj.myshopify.com"; 52Shopify.locale = "en"; 53Shopify.currency = {"active":"USD","rate":"1.0"}; 54Shopify.country = "US"; 55Shopify.theme = {"name":"Dawn","id":145301799190,"schema_name":"Dawn","schema_version":"8.0.1","theme_store_id":887,"role":"main"}; 56Shopify.theme.handle = "null"; 57Shopify.theme.style = {"id":null,"handle":null}; 58Shopify.cdnHost = "fleurdemernj.com/cdn"; 59Shopify.routes = Shopify.routes || {}; 60Shopify.routes.root = "/"; 61Shopify.shopJsCdnBaseUrl = "https://cdn.shopify.com/shopifycloud/shop-js"; 62Shopify.SignInWithShop = Shopify.SignInWithShop || {}; 63Shopify.SignInWithShop.User = Shopify.SignInWithShop.User || {}; 64Shopify.SignInWithShop.User.recognized = false;</script>
vendor: 1 bytes, line 64
64
65<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
vendor: 1 bytes, line 65
65
66<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 66
66
67<script> 68 window.ShopifyPay = window.ShopifyPay || {}; 69 window.ShopifyPay.apiHost = "shop.app\/pay"; 70 window.ShopifyPay.redirectState = null; 71</script>
vendor: 1 bytes, line 71
71
72<script> 73 window.Shopify = window.Shopify || {}; 74 window.Shopify.SignInWithShop = window.Shopify.SignInWithShop || {}; 75 window.Shopify.SignInWithShop.assetMetrics = { sampleRate: 0.25 }; 76 window.Shopify.SignInWithShop.eligible = true; 77</script>
vendor: 1 bytes, line 77
77
78<script id="shop-js-analytics" type="application/json">{"pageType":"product"}</script>
vendor: 1 bytes, line 78
78
79<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 79
79
80<script type="module"> 81 await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js"); 82 83 window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true}); 84 85</script>
vendor: 1 bytes, line 85
85
86<script> 87 window.Shopify = window.Shopify || {}; 88 if (!window.Shopify.featureAssets) window.Shopify.featureAssets = {}; 89 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"]}; 90</script>
vendor: 1 bytes, line 90
90
91<script>(function() { 92 var isLoaded = false; 93 function asyncLoad() { 94 if (isLoaded) return; 95 isLoaded = true; 96 var urls = ["https:\/\/chimpstatic.com\/mcjs-connected\/js\/users\/f3bb7db4f3450995874fc0ca6\/828c8ef4e675749843f0e4369.js?shop=fleurdemernj.myshopify.com","https:\/\/cdn.nfcube.com\/instafeed-280ac74e177bc185427e7c88ccadf1be.js?shop=fleurdemernj.myshopify.com","https:\/\/cdn.autoketing.org\/sdk-cdn\/popup-fullsize\/dist\/popup-fullsize-embed.js?t=1700702897145986021\u0026shop=fleurdemernj.myshopify.com"]; 97 for (var i = 0; i < urls.length; i++) { 98 var s = document.createElement('script'); 99 s.type = 'text/javascript'; 100 s.async = true; 101 s.src = urls[i]; 102 var x = document.getElementsByTagName('script')[0]; 103 x.parentNode.insertBefore(s, x); 104 } 105 }; 106 if(window.attachEvent) { 107 window.attachEvent('onload', asyncLoad); 108 } else { 109 window.addEventListener('load', asyncLoad, false); 110 } 111})();</script>
vendor: 1 bytes, line 111
111
112<script id="__st">var __st={"a":73177301270,"offset":-14400,"reqid":"a45f40bb-8765-424d-b550-8b1cb8ae66dc-1791100168","pageurl":"fleurdemernj.com\/products\/kids-craft-club-flower-fairies-january-18th","u":"22afada71e6c","p":"product","rtyp":"product","rid":10351856746774};</script>
vendor: 1 bytes, line 112
112
113<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
vendor: 1 bytes, line 113
113
114<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 114
114
115<script integrity="sha256-JjoPp5ZfB1sSAs5SQaol1x1GgvveM+BgmRzyDexInEQ=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//fleurdemernj.com/cdn/shopifycloud/storefront/assets/storefront/load_feature-1bd60354.js" crossorigin="anonymous"></script>
vendor: 1 bytes, line 115
115
116<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 = "//fleurdemernj.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>
116<script crossorigin="anonymous" defer="defer" src="//fleurdemernj.com/cdn/shopifycloud/storefront/assets/shopify_pay/storefront-616277c7.js?v=20250812"></script>
vendor: 1 bytes, line 116
116
117<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 117
117
118<script> 119 window.Shopify = window.Shopify || {}; 120 window.Shopify.MCP = window.Shopify.MCP || {}; 121 window.Shopify.MCP.enabled = true; 122 window.Shopify.MCP.shop = "fleurdemernj.myshopify.com"; 123 window.Shopify.MCP.mcpEndpoint = "https:\/\/fleurdemernj.com\/api\/mcp"; 124 window.Shopify.MCP.tools = [{"name":"search_shop_policies_and_faqs","description":"Used to get facts about the stores policies, products, or services.\nSome examples of questions you can ask are:\n - What is your return policy?\n - What is your shipping policy?\n - What is your phone number?\n - What are your hours of operation?\"\n","inputSchema":{"$schema":"https:\/\/json-schema.org\/draft\/2020-12\/schema","type":"object","properties":{"query":{"type":"string","description":"A natural language query."},"context":{"type":"string","description":"Additional information about the request such as user demographics, mood, location, or other relevant details that could help in tailoring the response appropriately."}},"required":["query"]}}]; 125</script>
vendor: 1 bytes, line 125
125
126<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("\/\/fleurdemernj.com\/cdn\/shopifycloud\/storefront\/assets\/storefront\/webmcp-c6b62ece.js","sha256-ke4DDuBjdvea3vxLWxHc9E9nq8zihuG4IfYEGbb77ys=");})(); 127</script>
vendor: 1 bytes, line 127
127
128<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://fleurdemernj.com/cdn/shopifycloud/portable-wallets/latest/portable-wallets.en.js",t.type="module",document.head.appendChild(t)}}; 129</script>
vendor: 1 bytes, line 129
129
130<script data-source-attribution="shopify.dynamic_checkout.buyer_consent"> 131 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); 132</script>
vendor: 1 bytes, line 132
132
133<script data-source-attribution="shopify.dynamic_checkout.cart.bootstrap">document.addEventListener("DOMContentLoaded",(function(){function t(){return document.querySelector("shopify-accelerated-checkout-cart, shopify-accelerated-checkout")}if(t())Shopify.PaymentButton.init();else{new MutationObserver((function(e,n){t()&&(Shopify.PaymentButton.init(),n.disconnect())})).observe(document.body,{childList:!0,subtree:!0})}})); 134</script>
134 135<link id="shopify-accelerated-checkout-styles" rel="stylesheet" media="screen" href="https://fleurdemernj.com/cdn/shopifycloud/portable-wallets/latest/accelerated-checkout-backwards-compat.css" crossorigin="anonymous"> 136<style id="shopify-accelerated-checkout-cart"> 137 #shopify-buyer-consent { 138 margin-top: 1em; 139 display: inline-block; 140 width: 100%; 141} 142 143#shopify-buyer-consent.hidden { 144 display: none; 145} 146 147#shopify-subscription-policy-button { 148 background: none; 149 border: none; 150 padding: 0; 151 text-decoration: underline; 152 font-size: inherit; 153 cursor: pointer; 154} 155 156#shopify-subscription-policy-button::before { 157 box-shadow: none; 158} 159 160 </style>
161<script id="sections-script" data-sections="header,footer" defer="defer" src="//fleurdemernj.com/cdn/shop/t/1/compiled_assets/scripts.js?v=82519944509819407471739340178"></script>
vendor: 1 bytes, line 161
161
162<script id="shopify-cfh-end">window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
162 163 164 165 <style data-shopify> 166 @font-face { 167 font-family: Poppins; 168 font-weight: 400; 169 font-style: normal; 170 font-display: swap; 171 src: url("//fleurdemernj.com/cdn/fonts/poppins/poppins_n4.0ba78fa5af9b0e1a374041b3ceaadf0a43b41362.woff2") format("woff2"), 172 url("//fleurdemernj.com/cdn/fonts/poppins/poppins_n4.214741a72ff2596839fc9760ee7a770386cf16ca.woff") format("woff"); 173} 174 175 @font-face { 176 font-family: Poppins; 177 font-weight: 700; 178 font-style: normal; 179 font-display: swap; 180 src: url("//fleurdemernj.com/cdn/fonts/poppins/poppins_n7.56758dcf284489feb014a026f3727f2f20a54626.woff2") format("woff2"), 181 url("//fleurdemernj.com/cdn/fonts/poppins/poppins_n7.f34f55d9b3d3205d2cd6f64955ff4b36f0cfd8da.woff") format("woff"); 182} 183 184 @font-face { 185 font-family: Poppins; 186 font-weight: 400; 187 font-style: italic; 188 font-display: swap; 189 src: url("//fleurdemernj.com/cdn/fonts/poppins/poppins_i4.846ad1e22474f856bd6b81ba4585a60799a9f5d2.woff2") format("woff2"), 190 url("//fleurdemernj.com/cdn/fonts/poppins/poppins_i4.56b43284e8b52fc64c1fd271f289a39e8477e9ec.woff") format("woff"); 191} 192 193 @font-face { 194 font-family: Poppins; 195 font-weight: 700; 196 font-style: italic; 197 font-display: swap; 198 src: url("//fleurdemernj.com/cdn/fonts/poppins/poppins_i7.42fd71da11e9d101e1e6c7932199f925f9eea42d.woff2") format("woff2"), 199 url("//fleurdemernj.com/cdn/fonts/poppins/poppins_i7.ec8499dbd7616004e21155106d13837fff4cf556.woff") format("woff"); 200} 201 202 @font-face { 203 font-family: Poppins; 204 font-weight: 400; 205 font-style: normal; 206 font-display: swap; 207 src: url("//fleurdemernj.com/cdn/fonts/poppins/poppins_n4.0ba78fa5af9b0e1a374041b3ceaadf0a43b41362.woff2") format("woff2"), 208 url("//fleurdemernj.com/cdn/fonts/poppins/poppins_n4.214741a72ff2596839fc9760ee7a770386cf16ca.woff") format("woff"); 209} 210 211 212 :root { 213 --font-body-family: Poppins, sans-serif; 214 --font-body-style: normal; 215 --font-body-weight: 400; 216 --font-body-weight-bold: 700; 217 218 --font-heading-family: Poppins, sans-serif; 219 --font-heading-style: normal; 220 --font-heading-weight: 400; 221 222 --font-body-scale: 1.0; 223 --font-heading-scale: 1.0; 224 225 --color-base-text: 18, 18, 18; 226 --color-shadow: 18, 18, 18; 227 --color-base-background-1: 255, 255, 255; 228 --color-base-background-2: 243, 243, 243; 229 --color-base-solid-button-labels: 255, 255, 255; 230 --color-base-outline-button-labels: 18, 18, 18; 231 --color-base-accent-1: 18, 18, 18; 232 --color-base-accent-2: 255, 222, 222; 233 --payment-terms-background-color: #ffffff; 234 235 --gradient-base-background-1: #ffffff; 236 --gradient-base-background-2: #f3f3f3; 237 --gradient-base-accent-1: #121212; 238 --gradient-base-accent-2: #ffdede; 239 240 --media-padding: px; 241 --media-border-opacity: 0.05; 242 --media-border-width: 1px; 243 --media-radius: 0px; 244 --media-shadow-opacity: 0.0; 245 --media-shadow-horizontal-offset: 0px; 246 --media-shadow-vertical-offset: 4px; 247 --media-shadow-blur-radius: 5px; 248 --media-shadow-visible: 0; 249 250 --page-width: 120rem; 251 --page-width-margin: 0rem; 252 253 --product-card-image-padding: 0.0rem; 254 --product-card-corner-radius: 0.0rem; 255 --product-card-text-alignment: left; 256 --product-card-border-width: 0.0rem; 257 --product-card-border-opacity: 0.1; 258 --product-card-shadow-opacity: 0.0; 259 --product-card-shadow-visible: 0; 260 --product-card-shadow-horizontal-offset: 0.0rem; 261 --product-card-shadow-vertical-offset: 0.4rem; 262 --product-card-shadow-blur-radius: 0.5rem; 263 264 --collection-card-image-padding: 0.0rem; 265 --collection-card-corner-radius: 0.0rem; 266 --collection-card-text-alignment: left; 267 --collection-card-border-width: 0.0rem; 268 --collection-card-border-opacity: 0.1; 269 --collection-card-shadow-opacity: 0.0; 270 --collection-card-shadow-visible: 0; 271 --collection-card-shadow-horizontal-offset: 0.0rem; 272 --collection-card-shadow-vertical-offset: 0.4rem; 273 --collection-card-shadow-blur-radius: 0.5rem; 274 275 --blog-card-image-padding: 0.0rem; 276 --blog-card-corner-radius: 0.0rem; 277 --blog-card-text-alignment: left; 278 --blog-card-border-width: 0.0rem; 279 --blog-card-border-opacity: 0.1; 280 --blog-card-shadow-opacity: 0.0; 281 --blog-card-shadow-visible: 0; 282 --blog-card-shadow-horizontal-offset: 0.0rem; 283 --blog-card-shadow-vertical-offset: 0.4rem; 284 --blog-card-shadow-blur-radius: 0.5rem; 285 286 --badge-corner-radius: 4.0rem; 287 288 --popup-border-width: 1px; 289 --popup-border-opacity: 0.1; 290 --popup-corner-radius: 0px; 291 --popup-shadow-opacity: 0.0; 292 --popup-shadow-horizontal-offset: 0px; 293 --popup-shadow-vertical-offset: 4px; 294 --popup-shadow-blur-radius: 5px; 295 296 --drawer-border-width: 1px; 297 --drawer-border-opacity: 0.1; 298 --drawer-shadow-opacity: 0.0; 299 --drawer-shadow-horizontal-offset: 0px; 300 --drawer-shadow-vertical-offset: 4px; 301 --drawer-shadow-blur-radius: 5px; 302 303 --spacing-sections-desktop: 0px; 304 --spacing-sections-mobile: 0px; 305 306 --grid-desktop-vertical-spacing: 8px; 307 --grid-desktop-horizontal-spacing: 8px; 308 --grid-mobile-vertical-spacing: 4px; 309 --grid-mobile-horizontal-spacing: 4px; 310 311 --text-boxes-border-opacity: 0.1; 312 --text-boxes-border-width: 0px; 313 --text-boxes-radius: 0px; 314 --text-boxes-shadow-opacity: 0.0; 315 --text-boxes-shadow-visible: 0; 316 --text-boxes-shadow-horizontal-offset: 0px; 317 --text-boxes-shadow-vertical-offset: 4px; 318 --text-boxes-shadow-blur-radius: 5px; 319 320 --buttons-radius: 0px; 321 --buttons-radius-outset: 0px; 322 --buttons-border-width: 1px; 323 --buttons-border-opacity: 1.0; 324 --buttons-shadow-opacity: 0.0; 325 --buttons-shadow-visible: 0; 326 --buttons-shadow-horizontal-offset: 0px; 327 --buttons-shadow-vertical-offset: 4px; 328 --buttons-shadow-blur-radius: 5px; 329 --buttons-border-offset: 0px; 330 331 --inputs-radius: 0px; 332 --inputs-border-width: 1px; 333 --inputs-border-opacity: 0.55; 334 --inputs-shadow-opacity: 0.0; 335 --inputs-shadow-horizontal-offset: 0px; 336 --inputs-margin-offset: 0px; 337 --inputs-shadow-vertical-offset: 4px; 338 --inputs-shadow-blur-radius: 5px; 339 --inputs-radius-outset: 0px; 340 341 --variant-pills-radius: 40px; 342 --variant-pills-border-width: 1px; 343 --variant-pills-border-opacity: 0.55; 344 --variant-pills-shadow-opacity: 0.0; 345 --variant-pills-shadow-horizontal-offset: 0px; 346 --variant-pills-shadow-vertical-offset: 4px; 347 --variant-pills-shadow-blur-radius: 5px; 348 } 349 350 *, 351 *::before, 352 *::after { 353 box-sizing: inherit; 354 } 355 356 html { 357 box-sizing: border-box; 358 font-size: calc(var(--font-body-scale) * 62.5%); 359 height: 100%; 360 } 361 362 body { 363 display: grid; 364 grid-template-rows: auto auto 1fr auto; 365 grid-template-columns: 100%; 366 min-height: 100%; 367 margin: 0; 368 font-size: 1.5rem; 369 letter-spacing: 0.06rem; 370 line-height: calc(1 + 0.8 / var(--font-body-scale)); 371 font-family: var(--font-body-family); 372 font-style: var(--font-body-style); 373 font-weight: var(--font-body-weight); 374 } 375 376 @media screen and (min-width: 750px) { 377 body { 378 font-size: 1.6rem; 379 } 380 } 381 </style> 382 383 <link href="//fleurdemernj.com/cdn/shop/t/1/assets/base.css?v=83
3831047894957930821678481324" rel="stylesheet" type="text/css" media="all" /> 384<link rel="preload" as="font" href="//fleurdemernj.com/cdn/fonts/poppins/poppins_n4.0ba78fa5af9b0e1a374041b3ceaadf0a43b41362.woff2" type="font/woff2" crossorigin><link rel="preload" as="font" href="//fleurdemernj.com/cdn/fonts/poppins/poppins_n4.0ba78fa5af9b0e1a374041b3ceaadf0a43b41362.woff2" type="font/woff2" crossorigin><link rel="stylesheet" href="//fleurdemernj.com/cdn/shop/t/1/assets/component-predictive-search.css?v=85913294783299393391678481340" media="print" onload="this.media='all'">
384<script>document.documentElement.className = document.documentElement.className.replace('no-js', 'js'); 385 if (Shopify.designMode) { 386 document.documentElement.classList.add('shopify-design-mode'); 387 } 388 </script>
388<!-- BEGIN app block: shopify://apps/foxify-page-builder/blocks/app-embed/4e19e422-f550-4994-9ea0-84f23728223d --> 389 390 391 392 <link rel='preconnect' href='https://fonts.googleapis.com'> 393 <link rel='preconnect' href='https://fonts.gstatic.com' crossorigin> 394 <link rel='preconnect' href='https://burst.shopifycdn.com' crossorigin> 395 <style data-foxify-critical-css> 396 .x-main {--x-container-width: 1170px; 397 --x-vertical-space: 100px; 398 --x-container-narrow-width: 800px; 399 --x-product-card-radius: 0px; 400 --x-product-card-background-color: none; 401 --x-collection-card-radius: 0px; 402 --x-collection-card-background-color: none; 403 --x-collection-card-image-radius: 0%; 404 --x-article-card-radius: 0px; 405 --x-article-card-background-color: none;} 406 .x-swiper-wrapper { 407 position: relative; 408 width: 100%; 409 height: 100%; 410 display: flex; 411 transition-property: transform; 412 box-sizing: content-box; 413 } 414 .x-swiper-container:not(.swiper-initialized) .x-swiper-wrapper { 415 flex-flow: row nowrap; 416 } 417 @media (min-width: 1024px) { 418 .x-swiper-container:not(.swiper-initialized) .x-swiper-wrapper > .x-swiper-slide { 419 width: calc(100%/var(--swiper-desktop-column, 4)); 420 flex: 0 0 auto; 421 } 422 } 423 424 425 </style> 426 427
427<script id='foxify-app-settings'> 428 var ShopifyRootUrl = "\/"; 429 var is_section_published = false; 430 var is_section_gen2_published = false; 431 ShopifyRootUrl = ShopifyRootUrl.endsWith('/') ? ShopifyRootUrl : ShopifyRootUrl + '/'; 432 window.Foxify = window.Foxify || {} 433 window.Foxify.Libs = {} 434 Foxify.Settings = { 435 waterMark: false, 436 templateId: 10351856746774, 437 templateSuffix: "foxify-kids-craft-club-in-ocean-township-nj-or-fleur-de-mer.gen2", 438 templateVersion: "gen2", 439 proxySubpath: "apps\/foxify-preview", 440 webPixelAppType: "production", 441 isFoxifyPage: true, 442 designMode: false, 443 isMobile: window.matchMedia('screen and (max-width: 639px)').matches, 444 template: "product", 445 currency_code: "USD", 446 money_format: "${{amount}}", 447 money_with_currency_format: "${{amount}} USD", 448 shop_domain: "https:\/\/fleurdemernj.com", 449 routes: { 450 base_url: window.location.origin + ShopifyRootUrl, 451 root: "/", 452 cart: "/cart", 453 cart_add_url: "/cart/add", 454 cart_change_url: "/cart/change", 455 cart_update_url: "/cart/update", 456 predictive_search_url: '/search/suggest' 457 }, 458 locale: { 459 current: "en", 460 primary: "en", 461 }, 462 base_url: window.location.origin + ShopifyRootUrl, 463 enableAjaxAtc: false 464 } 465 Foxify.Strings = { 466 addToCart: 'Add to cart', 467 soldOut: 'Sold out', 468 unavailable: 'Unavailable', 469 inStock: 'In stock', 470 outOfStock: 'Out of stock', 471 unitPrice: 'Unit price', 472 unitPriceSeparator: 'per', 473 itemAddedToCart: '{{ name }} added to cart', 474 requiredField: 'Please fill all the required fields (*).', 475 savePriceHtml: "Save \u003cspan data-sale-value\u003e{{ amount }}\u003c\/span\u003e" 476 }; 477 Foxify.Extensions = { 478 optionsSwatches: { 479 enabled: false, 480 options: null, 481 } 482 }; 483 window.Foxify.Libs = { 484 parallax: "https://cdn.shopify.com/extensions/01a0fbfd-45c5-74b0-b827-e1b762f545f1/foxify-builder-538/assets/foxify-parallax.js", 485 variantPickerGen2: "https://cdn.shopify.com/extensions/01a0fbfd-45c5-74b0-b827-e1b762f545f1/foxify-builder-538/assets/variant-picker.gen2.js", 486 mediaGalleryGen2: "https://cdn.shopify.com/extensions/01a0fbfd-45c5-74b0-b827-e1b762f545f1/foxify-builder-538/assets/media-gallery.gen2.js", 487 productGen2Style: "https://cdn.shopify.com/extensions/01a0fbfd-45c5-74b0-b827-e1b762f545f1/foxify-builder-538/assets/product.gen2.css", 488 } 489 </script>
489 490 491 492 493 <link href="https://cdn.shopify.com/extensions/01a0fbfd-45c5-74b0-b827-e1b762f545f1/foxify-builder-538/assets/vendor.gen2.js" as="script" fetchpriority="high" rel="preload"> 494 <link href="https://cdn.shopify.com/extensions/01a0fbfd-45c5-74b0-b827-e1b762f545f1/foxify-builder-538/assets/global.gen2.js" as="script" fetchpriority="high" rel="preload"> 495 <link href="https://cdn.shopify.com/extensions/01a0fbfd-45c5-74b0-b827-e1b762f545f1/foxify-builder-538/assets/animate.gen2.js" as="script" fetchpriority="high" rel="preload"> 496 <link href="https://cdn.shopify.com/extensions/01a0fbfd-45c5-74b0-b827-e1b762f545f1/foxify-builder-538/assets/animations.gen2.css" as="style" fetchpriority="high" rel="preload"> 497 <link href="https://cdn.shopify.com/extensions/01a0fbfd-45c5-74b0-b827-e1b762f545f1/foxify-builder-538/assets/components.gen2.css" as="style" fetchpriority="high" rel="preload"> 498 499 <link href="https://cdn.shopify.com/extensions/01a0fbfd-45c5-74b0-b827-e1b762f545f1/foxify-builder-538/assets/base.gen2.css" as="style" fetchpriority="auto" rel="preload"> 500 <link href="https://cdn.shopify.com/extensions/01a0fbfd-45c5-74b0-b827-e1b762f545f1/foxify-builder-538/assets/elements.gen2.css" as="style" fetchpriority="auto" rel="preload"> 501 <link href="https://cdn.shopify.com/extensions/01a0fbfd-45c5-74b0-b827-e1b762f545f1/foxify-builder-538/assets/grid.gen2.css" as="style" fetchpriority="auto" rel="preload"> 502 503 <link rel='stylesheet' href='https://cdn.shopify.com/extensions/01a0fbfd-45c5-74b0-b827-e1b762f545f1/foxify-builder-538/assets/animations.gen2.css' media='print' onload="this.media='all'"> 504 <link href="//cdn.shopify.com/extensions/01a0fbfd-45c5-74b0-b827-e1b762f545f1/foxify-builder-538/assets/base.gen2.css" rel="stylesheet" type="text/css" media="all" /> 505 <link href="//cdn.shopify.com/extensions/01a0fbfd-45c5-74b0-b827-e1b762f545f1/foxify-builder-538/assets/elements.gen2.css" rel="stylesheet" type="text/css" media="all" /> 506 <link href="//cdn.shopify.com/extensions/01a0fbfd-45c5-74b0-b827-e1b762f545f1/foxify-builder-538/assets/grid.gen2.css" rel="stylesheet" type="text/css" media="all" /> 507 <link href="//cdn.shopify.com/extensions/01a0fbfd-45c5-74b0-b827-e1b762f545f1/foxify-builder-538/assets/components.gen2.css" rel="stylesheet" type="text/css" media="all" /> 508 509 510 511 <link data-foxify rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500&display=swap" /> 512 <style data-foxify> 513 .x-main {--x-gs-accent-1: #222222;--x-gs-accent-2: #ee5d0b;--x-gs-background-1: #ffffff;--x-gs-background-2: #F5F5F5;--x-gs-text-color: #222222;--x-gs-heading-color: #222222;--x-gs-border-color: #ebebeb;--x-gs-light-grey: #e9e9e9;--x-gs-dark-grey: #666666;--x-gs-hot-color: #b62814;--x-gs-mega-title-font-stack: Inter;--x-gs-mega-title-font-size: 64px;--x-gs-mega-title-font-weight: 500;--x-gs-heading-1-font-stack: Inter;--x-gs-heading-1-font-size: 42px;--x-gs-heading-1-font-weight: 500;--x-gs-heading-2-font-stack: Inter;--x-gs-heading-2-font-size: 34px;--x-gs-heading-2-font-weight: 500;--x-gs-heading-3-font-stack: Inter;--x-gs-heading-3-font-size: 26px;--x-gs-heading-3-font-weight: 500;--x-gs-heading-4-font-stack: Inter;--x-gs-heading-4-font-size: 20px;--x-gs-heading-4-font-weight: 500;--x-gs-heading-5-font-stack: Inter;--x-gs-heading-5-font-size: 18px;--x-gs-heading-5-font-weight: 500;--x-gs-heading-6-font-stack: Inter;--x-gs-heading-6-font-size: 15px;--x-gs-body-text-font-stack: Inter;--x-gs-body-text-font-size: 16px;--x-gs-body-text-font-weight: 400;--x-gs-card-title-font-stack: Inter;--x-gs-card-title-font-size: 16px;--x-gs-card-title-font-weight: 400;--x-gs-subheading-font-stack: Inter;--x-gs-subheading-font-size: 14px;--x-gs-subheading-font-weight: 400;--x-gs-caption-font-stack: Inter;--x-gs-caption-font-size: 13px;--x-gs-caption-font-weight: 400;--x-gs-text-link-font-stack: Inter;--x-gs-text-link-font-size: 16px;--x-gs-text-link-font-weight: 400;} 514 .x-main .x-gs-text-link {font-family: Inter;font-weight: 400; 515font-size: 16px; 516color: var(--x-gs-accent-2);text-decoration-color: #ee5d0b;text-decoration-line: underline;
516line-height: 26px; 517}.x-main .x-gs-caption {font-family: Inter;font-weight: 400; 518font-size: 13px; 519line-height: 18px; 520}.x-main .x-gs-subheading {font-family: Inter;font-weight: 400; 521font-size: 14px; 522text-transform: uppercase; 523line-height: 20px; 524letter-spacing: 1px; 525}.x-main .x-gs-card-title {font-family: Inter;font-weight: 400; 526font-size: 16px; 527color: var(--x-gs-heading-color);text-decoration-color: #222222;line-height: 26px; 528}.x-main .x-gs-body-text {font-family: Inter;font-weight: 400; 529font-size: 16px; 530line-height: 26px; 531}.x-main .x-gs-heading-6 {font-family: Inter;font-size: 15px; 532line-height: 24px; 533color: var(--x-gs-heading-color);text-decoration-color: #222222;}.x-main .x-gs-heading-5 {font-family: Inter;font-weight: 500; 534font-size: 18px; 535line-height: 26px; 536color: var(--x-gs-heading-color);text-decoration-color: #222222;}.x-main .x-gs-heading-4 {font-family: Inter;font-weight: 500; 537font-size: 20px; 538line-height: 32px; 539color: var(--x-gs-heading-color);text-decoration-color: #222222;}.x-main .x-gs-heading-3 {font-family: Inter;font-weight: 500; 540font-size: 26px; 541line-height: 40px; 542color: var(--x-gs-heading-color);text-decoration-color: #222222;}.x-main .x-gs-heading-2 {font-family: Inter;font-weight: 500; 543font-size: 34px; 544color: var(--x-gs-heading-color);text-decoration-color: #222222;line-height: 50px; 545}.x-main .x-gs-heading-1 {font-family: Inter;font-weight: 500; 546font-size: 42px; 547color: var(--x-gs-heading-color);text-decoration-color: #222222;line-height: 60px; 548}.x-main .x-gs-mega-title {font-family: Inter;font-weight: 500; 549font-size: 64px; 550color: var(--x-gs-heading-color);text-decoration-color: #222222;line-height: 80px; 551}.x-main .x-gs-link-button {color: var(--x-gs-accent-1);text-decoration-color: #222222;background-color: transparent;-webkit-background-clip: unset;font-family: Inter;text-decoration-line: underline;font-weight: 500; 552height: 26px; 553font-size: 16px; 554border-style: none; 555}.x-main .x-gs-link-button:hover {color: var(--x-gs-accent-2);text-decoration-color: #ee5d0b;text-decoration-line: underline;}.x-main .x-gs-white-button {background-color: #ffffff;-webkit-background-clip: unset;color: #000000;text-decoration-color: #000000;font-family: Inter;font-weight: 500; 556height: 50px; 557padding-left: 32px; 558padding-right: 32px; 559font-size: 16px; 560border-radius: 3px; 561}.x-main .x-gs-white-button:hover {background-color: #000000;-webkit-background-clip: unset;border-color: #000000;color: #FFFFFF;text-decoration-color: #FFFFFF;}.x-main .x-gs-outline-button {color: #222222;text-decoration-color: #222222;background-color: transparent;-webkit-background-clip: unset;font-family: Inter;font-weight: 500; 562height: 50px; 563padding-left: 32px; 564padding-right: 32px; 565font-size: 16px; 566border-radius: 3px; 567border-width: 1px; 568border-color: #222222;border-style: solid; 569}.x-main .x-gs-outline-button:hover {border-color: #000000;color: #ffffff;text-decoration-color: #ffffff;background-color: #000000;-webkit-background-clip: unset;}.x-main .x-gs-primary-button {background-color: var(--x-gs-accent-1);-webkit-background-clip: unset;color: #FFFFFF;text-decoration-color: #FFFFFF;font-family: Inter;font-weight: 500; 570height: 50px; 571padding-left: 32px; 572padding-right: 32px; 573font-size: 16px; 574border-radius: 3px; 575}.x-main .shopify-payment-button__button.shopify-payment-button__button--unbranded {background-color: var(--x-gs-accent-1);-webkit-background-clip: unset;color: #FFFFFF;text-decoration-color: #FFFFFF;font-family: Inter;font-weight: 500; 576height: 50px; 577padding-left: 32px; 578padding-right: 32px; 579font-size: 16px; 580border-radius: 3px; 581} .x-main .shopify-payment-button__button.shopify-payment-button__button--unbranded:hover {background-color: #000000;-webkit-background-clip: unset;color: #FFFFFF;text-decoration-color: #FFFFFF;border-color: #000000;}.x-main .x-gs-primary-button:hover {background-color: #000000;-webkit-background-clip: unset;color: #FFFFFF;text-decoration-color: #FFFFFF;border-color: #000000;}.x-main .x-gs-accent-1 {background-image: unset; -webkit-background-clip:unset; color: #222222;}.x-main .x-gs-accent-2 {background-image: unset; -webkit-background-clip:unset;
581 color: #ee5d0b;}.x-main .x-gs-background-1 {background-image: unset; -webkit-background-clip:unset; color: #ffffff;}.x-main .x-gs-background-2 {background-image: unset; -webkit-background-clip:unset; color: #F5F5F5;}.x-main .x-gs-text-color {background-image: unset; -webkit-background-clip:unset; color: #222222;}.x-main .x-gs-heading-color {background-image: unset; -webkit-background-clip:unset; color: #222222;}.x-main .x-gs-border-color {background-image: unset; -webkit-background-clip:unset; color: #ebebeb;}.x-main .x-gs-light-grey {background-image: unset; -webkit-background-clip:unset; color: #e9e9e9;}.x-main .x-gs-dark-grey {background-image: unset; -webkit-background-clip:unset; color: #666666;}.x-main .x-gs-hot-color {background-image: unset; -webkit-background-clip:unset; color: #b62814;} 582 </style> 583 584 585 586 587 588
588<script src='https://cdn.shopify.com/extensions/01a0fbfd-45c5-74b0-b827-e1b762f545f1/foxify-builder-538/assets/vendor.gen2.js' defer></script>
588 589
589<script src='https://cdn.shopify.com/extensions/01a0fbfd-45c5-74b0-b827-e1b762f545f1/foxify-builder-538/assets/global.gen2.js' defer></script>
589 590
590<script src='https://cdn.shopify.com/extensions/01a0fbfd-45c5-74b0-b827-e1b762f545f1/foxify-builder-538/assets/product-form.gen2.js' defer></script>
590 591
591<script src='https://cdn.shopify.com/extensions/01a0fbfd-45c5-74b0-b827-e1b762f545f1/foxify-builder-538/assets/animate.gen2.js' defer></script>
591 592 593
593<script src='https://cdn.shopify.com/extensions/01a0fbfd-45c5-74b0-b827-e1b762f545f1/foxify-builder-538/assets/foxify-analytic.js' defer></script>
593 594 595 596 597
597<script> 598 document.documentElement.classList.add('x-page'); 599 </script>
599 600 601 602 603 604 605 606 <style data-foxify-custom-css> 607 .section-header.shopify-section-group-header-group { 608 z-index: 4 !important; 609} 610 </style> 611 612 613 614 615 616 617 618 619 620 621
621<script id='foxify-recently-viewed-product'> 622 const productHandle = "kids-craft-club-flower-fairies-january-18th"; 623 let max = 20; 624 const saveKey = 'foxify:recently-viewed'; 625 const products = localStorage.getItem(saveKey) ? JSON.parse(localStorage.getItem(saveKey)) : []; 626 if (productHandle && !products.includes(productHandle)) { 627 products.push(productHandle) 628 } 629 localStorage.setItem(saveKey, JSON.stringify(products.filter((x, i) => { 630 return i <= max - 1 631 }))) 632 </script>
632 633 634 635 636 637 638<!-- END app block --><!-- BEGIN app block: shopify://apps/inbox/blocks/chat/841fc607-4181-4ad1-842d-e24d7f8bad6b --><link rel='modulepreload' href='https://cdn.shopify.com/storefront/web-components/chat.js' crossorigin fetchpriority='low'> 639
640<script id='shopify-chat-app-embed-data' type='application/json'> 641 { 642 "settings": { 643 "invertActivatorColors": true, 644 "greetingMessage": "ð Hi, message us with any questions. We're happy to help!", 645 "showFeaturedProducts": true, 646 "featuredProducts": [], 647 "horizontalPosition": "bottom_right", 648 "icon": "chat_bubble", 649 "buttonLabel": "Chat" 650 } 651 } 652</script>
652 653 654<style data-shopify> 655 656 657 /* Shadow DOM content does not prevent theme-wide :empty rules from matching the host. */ 658 shopify-chat:defined:empty { 659 display: grid; 660 } 661 662 :root { 663 --shopify-chat-bg-color: #FFFFFF; 664 --shopify-chat-text-color: #000000; 665 --shopify-chat-accent-bg-color: #000000; 666 --shopify-chat-accent-text-color: #FFFFFF; 667 --shopify-chat-activator-offset: 20px; 668 669 670 671 --shopify-chat-activator-font-size: 16px; 672 --shopify-chat-border-radius: 16px; 673 } 674 675 676</style> 677
678<script src='https://cdn.shopify.com/storefront/web-components/chat.js' type='module' crossorigin fetchpriority='low' async></script>
678 679 680 681<!-- END app block --><!-- BEGIN app block: shopify://apps/avada-seo-suite/blocks/avada-seo/15507c6e-1aa3-45d3-b698-7e175e033440 -->
681<script> 682 window.AVADA_SEO_ENABLED = true; 683</script>
683<!-- BEGIN app snippet: avada-frequently-asked-questions --> 684 685 686 687 688 689 690 691 692 693 694 695 696<!-- END app snippet --> 697<!-- END app block -->
697<script src="https://cdn.shopify.com/extensions/01a104d5-f835-74a9-9124-382330ee2e0c/digital-appointments-561/assets/embedInit.js" type="text/javascript" defer="defer"></script>
697 698<link href="https://cdn.shopify.com/extensions/01a104d5-f835-74a9-9124-382330ee2e0c/digital-appointments-561/assets/style.css" rel="stylesheet" type="text/css" media="all"> 699<link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
700<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: 73177301270,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 700
700
701<script> 702 window.__TREKKIE_SHIM_QUEUE = window.__TREKKIE_SHIM_QUEUE || []; 703</script>
vendor: 1 bytes, line 703
703
704<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}
704).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: 73177301270,storefrontBaseUrl: "https://fleurdemernj.com",extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint: "https://fleurdemernj.com/.well-known/shopify/monorail/unstable/produce_batch",surface: "storefront-renderer",enabledBetaFlags: ["4c64608a","16072cab","8450a54b","7ee89bf1"],webPixelsConfigList: [{"id":"2299265302","configuration":"{\"mailchimp_store_id\":\"store_ssqnnjy3vmhwiuyf4r72\", \"mailchimp_user_id\":\"189003358\",\"mailchimp_list_id\":\"e03d96f75d\"}","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"]},{"id":"2199159062","configuration":"{\"accountID\":\"fleurdemernj\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"4f82d0323b06a4642fbff9b42c9979eb","type":"APP","apiClientId":12388204545,"privacyPurposes":["ANALYTICS","MARKETING"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"}
704,{"id":"1329430806","configuration":"{\"accountID\":\"2de2ed03-0af8-4fa2-a602-a56f522d5573\",\"configs\":\"foxify,420dde02-66e0-4e84-a285-abcd1bbc3790,https:\/\/tracking.foxecom.app\/track\/batch\",\"appType\":\"production\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"9f2319e6a77ced168521277a4f8f9877","type":"APP","apiClientId":12239405057,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_email","read_customer_name","read_customer_personal_data"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"758579478","configuration":"{\"config\":\"{\\\"pixel_id\\\":\\\"G-2FJL1E5TTS\\\",\\\"target_country\\\":\\\"US\\\",\\\"gtag_events\\\":[{\\\"type\\\":\\\"begin_checkout\\\",\\\"action_label\\\":\\\"G-2FJL1E5TTS\\\"},{\\\"type\\\":\\\"search\\\",\\\"action_label\\\":\\\"G-2FJL1E5TTS\\\"},{\\\"type\\\":\\\"view_item\\\",\\\"action_label\\\":[\\\"G-2FJL1E5TTS\\\",\\\"MC-TQX31WVXQ7\\\"]},{\\\"type\\\":\\\"purchase\\\",\\\"action_label\\\":[\\\"G-2FJL1E5TTS\\\",\\\"MC-TQX31WVXQ7\\\"]},{\\\"type\\\":\\\"page_view\\\",\\\"action_label\\\":[\\\"G-2FJL1E5TTS\\\",\\\"MC-TQX31WVXQ7\\\"]},{\\\"type\\\":\\\"add_payment_info\\\",\\\"action_label\\\":\\\"G-2FJL1E5TTS\\\"},{\\\"type\\\":\\\"add_to_cart\\\",\\\"action_label\\\":\\\"G-2FJL1E5TTS\\\"}],\\\"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":"352354582","configuration":"{\"pixel_id\":\"769562491131801\",\"pixel_type\":\"facebook_pixel\",\"metaapp_system_user_token\":\"-\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"96420dbe9ea96c426a1b7f364f977719","type":"APP","apiClientId":2329312,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized","enabledFlags":["9a3ed68a"]},{"id":"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":"Fleur de Mer","paymentSettings":{"currencyCode":"USD"},"myshopifyDomain":"fleurdemernj.myshopify.com","countryCode":"US","storefrontUrl":"https:\/\/fleurdemernj.com"},"customer":null,"cart":null,"checkout":null,"productVariants":[{"price":{"amount":15.0,"currencyCode":"USD"},"product":{"title":"Kids Craft Club: Flower Fairies | January 18th","vendor":"Fleur de Mer","id":"10351856746774","untranslatedTitle":"Kids Craft Club: Flower Fairies | January 18th","url":"\/products\/kids-craft-club-flower-fairies-january-18th","type":""},"id":"50882504458518","image":{"src":"\/\/fleurdemernj.com\/cdn\/shop\/files\/CopyofCenteredBeginningsSoundBath_VisionBoardNight_InstagramPost_1.png?v=1766814530"},"sku":null,"title":"One","untranslatedTitle":"One"},{"price":{"amount":27.0,"currencyCode":"USD"},"product":{"title":"Kids Craft Club: Flower Fairies | January 18th","vendor":"Fleur de Mer","id":"10351856746774","untranslatedTitle":"Kids Craft Club: Flower Fairies | January 18th","url":"\/products\/kids-craft-club-flower-fairies-january-18th","type":""},"id":"50882504491286","image":{"src":"\/\/fleurdemernj.com\/cdn\/shop\/files\/CopyofCenteredBeginningsSoundBath_VisionBoardNight_InstagramPost_1.png?v=1766814530"},"sku":null,"title":"Two","untranslatedTitle":"Two"},{"price":{"amount":39.0,"currencyCode":"USD"},"product":{"title":"Kids Craft Club: Flower Fairies | January 18th","vendor":"Fleur de Mer","id":"10351856746774","untranslatedTitle":"Kids Craft Club: Flower Fairies | January 18th","url":"\/products\/kids-craft-club-flower-fairies-january-18th","type":""},"id":"50882504524054","image":{"src":"\/\/fleurdemernj.com\/cdn\/shop\/files\/CopyofCenteredBeginningsSoundBath_VisionBoardNight_InstagramPost_1.png?v=1766814530"},"sku":null,"title":"Three","untranslatedTitle":"Three"},{"price":{"amount":51.0,"currencyCode":"USD"},"product":{"title":"Kids Craft Club: Flower Fairies | January 18th","vendor":"Fleur de Mer","id":"10351856746774","untranslatedTitle":"Kids Craft Club: Flower Fairies | January 18th","url":"\/products\/kids-craft-club-flower-fairies-january-18th","type":""},"id":"50882504556822","image":{"src":"\/\/fleurdemernj.com\/cdn\/shop\/files\/CopyofCenteredBeginningsSoundBath_VisionBoardNight_InstagramPost_1.png?v=1766814530"},"sku":null,"title":"Four","untranslatedTitle":"Four"}
704],"products":[{"id":"10351856746774","handle":"kids-craft-club-flower-fairies-january-18th","isCollective":null,"title":"Kids Craft Club: Flower Fairies | January 18th","type":null,"untranslatedTitle":"Kids Craft Club: Flower Fairies | January 18th","url":"\/products\/kids-craft-club-flower-fairies-january-18th","vendor":"Fleur de Mer","remoteShopId":null,"variants":[{"id":"50882504458518","image":{"src":"\/\/fleurdemernj.com\/cdn\/shop\/files\/CopyofCenteredBeginningsSoundBath_VisionBoardNight_InstagramPost_1.png?v=1766814530"},"price":{"amount":15.0,"currencyCode":"USD"},"sku":null,"title":"One","untranslatedTitle":"One"},{"id":"50882504491286","image":{"src":"\/\/fleurdemernj.com\/cdn\/shop\/files\/CopyofCenteredBeginningsSoundBath_VisionBoardNight_InstagramPost_1.png?v=1766814530"},"price":{"amount":27.0,"currencyCode":"USD"},"sku":null,"title":"Two","untranslatedTitle":"Two"},{"id":"50882504524054","image":{"src":"\/\/fleurdemernj.com\/cdn\/shop\/files\/CopyofCenteredBeginningsSoundBath_VisionBoardNight_InstagramPost_1.png?v=1766814530"},"price":{"amount":39.0,"currencyCode":"USD"},"sku":null,"title":"Three","untranslatedTitle":"Three"},{"id":"50882504556822","image":{"src":"\/\/fleurdemernj.com\/cdn\/shop\/files\/CopyofCenteredBeginningsSoundBath_VisionBoardNight_InstagramPost_1.png?v=1766814530"},"price":{"amount":51.0,"currencyCode":"USD"},"sku":null,"title":"Four","untranslatedTitle":"Four"}]}],"purchasingCompany":null},},"https://fleurdemernj.com/cdn","5982071ew7ea472e3p69b68784m2150dfea",{"modern":"","legacy":""},{"trekkieShim":true,"agentContext":true,"apiClientId":"580111","facebookCapiEnabled":"true","themeId":"145301799190","themeStoreId":"887","themePublished":"true","eventMetadataId":"72642810-4e60-4a42-a380-bb2cb26a1744","pageType":"product","resourceId":"10351856746774","shopId":"73177301270","storefrontBaseUrl":"https:\/\/fleurdemernj.com","extensionBaseUrl":"https:\/\/extensions.shopifycdn.com\/cdn\/shopifycloud\/web-pixels-manager","surface":"storefront-renderer","enabledBetaFlags":"[\"4c64608a\", \"16072cab\", \"8450a54b\", \"7ee89bf1\"]","isMerchantRequest":"false","hashVersion":"5982071ew7ea472e3p69b68784m2150dfea","publish":"custom","events":"[[\"page_viewed\",{}],[\"product_viewed\",{\"productVariant\":{\"price\":{\"amount\":15.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Kids Craft Club: Flower Fairies | January 18th\",\"vendor\":\"Fleur de Mer\",\"id\":\"10351856746774\",\"untranslatedTitle\":\"Kids Craft Club: Flower Fairies | January 18th\",\"url\":\"\/products\/kids-craft-club-flower-fairies-january-18th\",\"type\":\"\"},\"id\":\"50882504458518\",\"image\":{\"src\":\"\/\/fleurdemernj.com\/cdn\/shop\/files\/CopyofCenteredBeginningsSoundBath_VisionBoardNight_InstagramPost_1.png?v=1766814530\"},\"sku\":null,\"title\":\"One\",\"untranslatedTitle\":\"One\"}}]]"});})();</script>
704<script> 705 window.ShopifyAnalytics = window.ShopifyAnalytics || {}; 706 window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {}; 707 window.ShopifyAnalytics.meta.currency = 'USD'; 708 var meta = {"product":{"id":10351856746774,"gid":"gid:\/\/shopify\/Product\/10351856746774","vendor":"Fleur de Mer","type":"","handle":"kids-craft-club-flower-fairies-january-18th","variants":[{"id":50882504458518,"price":1500,"name":"Kids Craft Club: Flower Fairies | January 18th - One","public_title":"One","sku":null},{"id":50882504491286,"price":2700,"name":"Kids Craft Club: Flower Fairies | January 18th - Two","public_title":"Two","sku":null},{"id":50882504524054,"price":3900,"name":"Kids Craft Club: Flower Fairies | January 18th - Three","public_title":"Three","sku":null},{"id":50882504556822,"price":5100,"name":"Kids Craft Club: Flower Fairies | January 18th - Four","public_title":"Four","sku":null}],"remote":false},"page":{"pageType":"product","resourceType":"product","resourceId":10351856746774,"requestId":"a45f40bb-8765-424d-b550-8b1cb8ae66dc-1791100168"}}; 709 for (var attr in meta) { 710 window.ShopifyAnalytics.meta[attr] = meta[attr]; 711 } 712</script>
vendor: 1 bytes, line 712
712
713<script class="analytics"> 714 (function () { 715 var customDocumentWrite = function(content) { 716 var jquery = null; 717 718 if (window.jQuery) { 719 jquery = window.jQuery; 720 } else if (window.Checkout && window.Checkout.$) { 721 jquery = window.Checkout.$; 722 } 723 724 if (jquery) { 725 jquery('body').append(content); 726 } 727 }; 728 729 var hasLoggedConversion = function(token) { 730 if (token) { 731 return document.cookie.indexOf('loggedConversion=' + token) !== -1; 732 } 733 return false; 734 } 735 736 var setCookieIfConversion = function(token) { 737 if (token) { 738 var twoMonthsFromNow = new Date(Date.now()); 739 twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2); 740 741 document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow; 742 } 743 } 744 745 var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || []; 746 window.ShopifyAnalytics.lib.trekkie = window.trekkie; 747 if (trekkie.integrations) { 748 return; 749 } 750 trekkie.methods = [ 751 'identify', 752 'page', 753 'ready', 754 'track', 755 'trackForm', 756 'trackLink' 757 ]; 758 trekkie.factory = function(method) { 759 return function() { 760 var args = Array.prototype.slice.call(arguments); 761 args.unshift(method); 762 trekkie.push(args); 763 if (method == 'track' || method == 'page') { 764 var pageUrl; 765 try { 766 pageUrl = window.location.href; 767 } catch (e) {} 768 var pageReferrer; 769 try { 770 pageReferrer = document.referrer; 771 } catch (e) {} 772 try { 773 if (window.__TREKKIE_SHIM_QUEUE == null) { 774 window.__TREKKIE_SHIM_QUEUE = []; 775 } 776 window.__TREKKIE_SHIM_QUEUE.push({ 777 from: 'trekkie-stub', 778 method: method, 779 args: args.slice(1), 780 pageContext: { 781 url: pageUrl, 782 referrer: pageReferrer 783 } 784 }); 785 } catch (e) { 786 // no-op 787 } 788 } 789 return trekkie; 790 }; 791 }; 792 for (var i = 0; i < trekkie.methods.length; i++) { 793 var key = trekkie.methods[i]; 794 trekkie[key] = trekkie.factory(key); 795 } 796 trekkie.load = function(config) { 797 trekkie.config = config || {}; 798 trekkie.config.initialDocumentCookie = document.cookie; 799 var first = document.getElementsByTagName('script')[0]; 800var script = document.createElement('script'); 801script.type = 'text/javascript'; 802script.onerror = function(e) { 803 var scriptFallback = document.createElement('script'); 804 scriptFallback.type = 'text/javascript'; 805 scriptFallback.onerror = function(error) { 806 var Monorail = { 807 produce: function produce(monorailDomain, schemaId, payload) { 808 var currentMs = new Date().getTime(); 809 var event = { 810 schema_id: schemaId, 811 payload: payload, 812 metadata: { 813 event_created_at_ms: currentMs, 814 event_sent_at_ms: currentMs 815 } 816 }; 817 return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event)); 818 }, 819 sendRequest: function sendRequest(endpointUrl, payload) { 820 // Try the sendBeacon API 821 if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) { 822 var blobData = new window.Blob([payload], { 823 type: 'text/plain' 824 }); 825 826 if (window.navigator.sendBeacon(endpointUrl, blobData)) { 827 return true; 828 } // sendBeacon was not successful 829 830 } // XHR beacon 831 832 var xhr = new XMLHttpRequest(); 833 834 try { 835 xhr.open('POST', endpointUrl); 836 xhr.setRequestHeader('Content-Type', 'text/plain'); 837 xhr.send(payload); 838 } catch (e) { 839 console.log(e); 840 } 841 842 return false; 843 }, 844 isIos12: function isIos12() { 845 return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1; 846 } 847 }; 848 Monorail.produce('monorail-edge.shopifysvc.com', 849 'trekkie_storefront_load_errors/1.1', 850 {shop_id: 73177301270, 851 theme_id: 145301799190, 852 app_name: "storefront", 853 context_url: window.location.href, 854 source_url: "//fleurdemernj.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js"}); 855 856 }; 857 scriptFallback.async = true; 858 scriptFallback.src = '//fleurdemernj.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js'; 859 first.parentNode.insertBefore(scriptFallback, first); 860}; 861script.async = true; 862script.src = '//fleurdemernj.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js'; 863first.parentNode.insertBefore(script, first); 864 865 }; 866 trekkie.load( 867 {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":73177301270,"isMerchantRequest":null,"themeId":145301799190,"themeCityHash":"9266381785518632384","contentLanguage":"en","currency":"USD","eventMetadataId":"72642810-4e60-4a42-a380-bb2cb26a1744"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain","enabledBetaFlags":["764d78cb","8450a54b","7ee89bf1","4c64608a"]},"Session Attribution":{},"S2S":{"facebookCapiEnabled":true,"source":"trekkie-storefront-renderer","apiClientId":580111}} 868 ); 869 870 var loaded = false;
871 trekkie.ready(function() { 872 if (loaded) return; 873 loaded = true; 874 875 window.ShopifyAnalytics.lib = window.trekkie; 876 877 var originalDocumentWrite = document.write; 878 document.write = customDocumentWrite; 879 try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {}; 880 document.write = originalDocumentWrite; 881 882 var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/) 883 var token = match? match[1]: undefined; 884 if (!hasLoggedConversion(token)) { 885 setCookieIfConversion(token); 886 window.ShopifyAnalytics.lib.track("Viewed Product",{"currency":"USD","variantId":50882504458518,"productId":10351856746774,"productGid":"gid:\/\/shopify\/Product\/10351856746774","name":"Kids Craft Club: Flower Fairies | January 18th - One","price":"15.00","sku":null,"brand":"Fleur de Mer","variant":"One","category":"","nonInteraction":true,"remote":false,"available":true},undefined,undefined,{"shopifyEmitted":true}); 887 } 888 }); 889 890 window.ShopifyAnalytics.lib.page(null,{"pageType":"product","resourceType":"product","resourceId":10351856746774,"requestId":"a45f40bb-8765-424d-b550-8b1cb8ae66dc-1791100168","shopifyEmitted":true}); 891 892 var eventsListenerScript = document.createElement('script'); 893 eventsListenerScript.async = true; 894 eventsListenerScript.src = "//fleurdemernj.com/cdn/shopifycloud/storefront/assets/shop_events_listener-4e26a9ce.js"; 895 document.getElementsByTagName('head')[0].appendChild(eventsListenerScript); 896})();</script>
vendor: 1 bytes, line 896
896
897<script 898 defer 899 src="https://fleurdemernj.com/cdn/shopifycloud/perf-kit/shopify-perf-kit-3.9.4.min.js" 900 data-application="storefront-renderer" 901 data-shop-id="73177301270" 902 data-render-region="gcp-us-central1" 903 data-page-type="product" 904 data-theme-instance-id="145301799190" 905 data-theme-name="Dawn" 906 data-theme-version="8.0.1" 907 data-monorail-region="shop_domain" 908 data-resource-timing-sampling-rate="10" 909 data-shs="true" 910 data-shs-beacon="true" 911 data-shs-export-with-fetch="true" 912 data-shs-logs-sample-rate="1" 913 data-shs-beacon-endpoint="https://fleurdemernj.com/api/collect" 914></script>
vendor: 1 bytes, line 914
914
915<script id="shopify-chat-page-data" type="application/json">{"greetingMessage":"Welcome to Fleur de Mer. How can I help?","customerServiceEmail":"[email protected]","onlineStorePasswordProtected":false,"continueAsChip":false,"translations":[{"key":"agent_chat.panel.open_chat","value":"Open chat"},{"key":"agent_chat.panel.ask_anything","value":"Ask anything"},{"key":"agent_chat.panel.title","value":"Storekick"},{"key":"agent_chat.panel.unread_replies","value":"Unread replies"},{"key":"agent_chat.panel.back_to_chat","value":"Back to chat"},{"key":"agent_chat.panel.see_history","value":"See chat history"},{"key":"agent_chat.panel.new_chat","value":"Create a new chat"},{"key":"agent_chat.panel.close","value":"Close chat"},{"key":"agent_chat.panel.undock","value":"Undock chat"},{"key":"agent_chat.panel.dock","value":"Dock chat"},{"key":"agent_chat.panel.expand","value":"Expand chat"},{"key":"agent_chat.panel.contract","value":"Contract chat"},{"key":"agent_chat.panel.jump_to_latest","value":"Jump to latest"},{"key":"agent_chat.panel.loading_chat","value":"Loading chat"},{"key":"agent_chat.input.label","value":"Type your message"},{"key":"agent_chat.input.placeholder","value":"Ask anything..."},{"key":"agent_chat.input.send","value":"Send"},{"key":"agent_chat.input.stop","value":"Stop generating"},{"key":"agent_chat.thinking","value":"Thinking..."},{"key":"agent_chat.first_response_delayed","value":"Agent is taking longer to respondâ¦"},{"key":"agent_chat.searching","value":"Searching..."},{"key":"agent_chat.message.sent_timestamp","value":"Sent · {{time}}"},{"key":"agent_chat.message.automated_label","value":"Automated"},{"key":"agent_chat.message.automated_timestamp","value":"Automated · {{time}}"},{"key":"agent_chat.liveAgentHandoff","value":"Someone from our team will be with you shortly"},{"key":"agent_chat.human_handoff.action","value":"Chat with our team"},{"key":"agent_chat.human_handoff.request","value":"Iâd like to talk to someone from your team"},{"key":"agent_chat.human_handoff.ai_assistant","value":"AI assistant"},{"key":"agent_chat.greeting.default","value":"Hi there!"},{"key":"agent_chat.greeting.with_name","value":"Hi {{name}}!"},{"key":"agent_chat.greeting.welcome","value":"You can ask questions about shopping, sizing\/dimensions, shipping, returns, or order status."},{"key":"agent_chat.greeting.welcome_back","value":"Welcome back to %{shop_name}! How can I help?"},{"key":"agent_chat.greeting.welcome_back_no_shop","value":"Welcome back! How can I help?"},{"key":"agent_chat.greeting.welcome_to_shop","value":"Welcome to %{shop_name}. How can I help?"},{"key":"agent_chat.greeting.generic","value":"How can I help?"},{"key":"agent_chat.disclaimer.text","value":"This chat is powered by AI from Shopify and may make mistakes. Your messages are visible to {{shop_name}}. See"},{"key":"agent_chat.disclaimer.text_human","value":"Your messages are visible to {{shop_name}} and to Shopify for the provision and improvement of the services. See"},{"key":"agent_chat.disclaimer.link_text","value":"privacy policy"},{"key":"agent_chat.error.response_unavailable","value":"Response unavailable"},{"key":"agent_chat.error.generic","value":"Something went wrong."},{"key":"agent_chat.error.response_failed","value":"Couldnât load this message"},{"key":"agent_chat.error.message_send_failed","value":"Your message couldnât be sent"},{"key":"agent_chat.error.attachment_upload_failed","value":"Your attachment didnât upload"},{"key":"agent_chat.error.first_response_stalled","value":"Agent couldnât respond"},{"key":"agent_chat.error.try_again","value":"Try again"},{"key":"agent_chat.error.unavailable","value":"Chat isn't available right now - try again later"},{"key":"agent_chat.error.usage_limit","value":"Message limit reached â try again later or email us at {{email}}"},{"key":"agent_chat.error.usage_limit_no_email","value":"Message limit reached â try again later"},{"key":"agent_chat.error.cost_quota_unhandled","value":"Chat isnât available right nowâemail us at {{email}}"},{"key":"agent_chat.error.cost_quota_unhandled_no_email","value":"Chat isnât available right now"},{"key":"agent_chat.error.cost_quota_handover","value":"AI assistant isnât available right now â our team will reply shortly"},{"key":"agent_chat.history.heading","value":"Chat history"},{"key":"agent_chat.history.loading","value":"Loading conversation history"},{"key":"agent_chat.history.aria_label","value":"Conversation history"},{"key":"agent_chat.history.no_conversations","value":"No conversations"},{"key":"agent_chat.history.conversation.one","value":"conversation"},{"key":"agent_chat.history.conversation.other","value":"conversations"},{"key":"agent_chat.history.error_message","value":"Something went wrong."},{"key":"agent_chat.history.try_again","value":"Try again"},{"key":"agent_chat.history.no_past","value":"No past conversations"},{"key":"agent_chat.history.start_new","value":"Start a new chat"},{"key":"agent_chat.history.untitled","value":"Untitled conversation"},{"key":"agent_chat.history.resume","value":"Resume: {{title}}"},{"key":"agent_chat.history.resume_with_time","value":"Resume: {{title}}, {{time}}"},{"key":"agent_chat.history.delete","value":"Delete conversation: {{title}}"},{"key":"agent_chat.history.delete_failed","value":"Could not delete conversation"},{"key":"agent_chat.feedback.group_label","value":"Message feedback"},{"key":"agent_chat.feedback.thumbs_up","value":"Thumbs up"},{"key":"agent_chat.feedback.thumbs_down","value":"Thumbs down"},{"key":"agent_chat.feedback.add_comment","value":"Add comment"},{"key":"agent_chat.feedback.thanks","value":"Thanks for your feedback"},{"key":"agent_chat.feedback.placeholder_up","value":"Tell us what went well"},{"key":"agent_chat.feedback.placeholder_down","value":"Tell us what could have been better"},{"key":"agent_chat.feedback.comment_label","value":"Feedback comment"},{"key":"agent_chat.feedback.cancel","value":"Cancel"},{"key":"agent_chat.feedback.submit","value":"Submit"},{"key":"agent_chat.feedback.character_count","value":"{{current}}\/{{max}}"},{"key":"agent_chat.feedback.character_limit_reached","value":"Maximum length reached. Feedback is limited to {{max}} characters."},{"key":"agent_chat.buyer_profile.button.open","value":"Buyer Profile"},{"key":"agent_chat.buyer_profile.title","value":"Buyer Profile"},{"key":"agent_chat.buyer_profile.empty","value":"No buyer profile available."},{"key":"agent_chat.buyer_profile.close","value":"Close"},{"key":"agent_chat.suggestions.empty_state_label","value":"Suggested questions"},{"key":"agent_chat.suggestions.quick_reply_label","value":"Suggested replies"},{"key":"agent_chat.auth.sign_in_to_continue","value":"Sign in to continue"},{"key":"agent_chat.auth.sign_in","value":"Sign in"},{"key":"agent_chat.auth.skip_and_chat","value":"Skip and start chatting"},{"key":"agent_chat.auth.pre_chat_title","value":"Sign in to personalize and save your chats"},{"key":"agent_chat.auth.pre_chat_subtitle","value":"Sign in or create an account"},{"key":"agent_chat.auth.staff_chat_required_title","value":"Don't miss a reply"},{"key":"agent_chat.auth.staff_chat_required_subtitle","value":"Sign in to chat with our team. We'll email you if you leave the chat."},{"key":"agent_chat.auth.share_disclaimer","value":"By continuing, Shop will share your name and email with this store. See their {{terms_link}} and {{privacy_link}}"},{"key":"agent_chat.auth.terms_link","value":"terms"},{"key":"agent_chat.auth.privacy_link","value":"privacy policy"},{"key":"agent_chat.auth.declined_pre_chat","value":"I canât connect you with the store unless you sign in."},{"key":"agent_chat.reply_by_email.continuation_prompt","value":"If you leave the chat, weâll email you when thereâs a reply."},{"key":"agent_chat.reply_by_email.sign_in_prompt","value":"Sign in to get emailed when thereâs a reply."},{"key":"agent_chat.order_lookup.track_order","value":"Track my order"},{"key":"agent_chat.order_lookup.track_another_order","value":"Track another order"},{"key":"agent_chat.order_lookup.new_conversation","value":"New conversation"},{"key":"agent_chat.order_lookup.follow_up_label","value":"Order lookup actions"},{"key":"agent_chat.order_lookup.enter_order_information","value":"Enter order information"},{"key":"agent_chat.order_lookup.prompt","value":"To see your order status, please provide your order details."},{"key":"agent_chat.order_lookup.form_title","value":"Track my order"},{"key":"agent_chat.order_lookup.form_subtitle","value":"Please provide your information."},{"key":"agent_chat.order_lookup.order_number_label","value":"Order number"},{"key":"agent_chat.order_lookup.email_label","value":"Email address"},{"key":"agent_chat.order_lookup.submit","value":"Track my order"},{"key":"agent_chat.order_lookup.cancel","value":"Cancel"},{"key":"agent_chat.order_lookup.invalid_order_number","value":"Please enter a valid order number with only numbers and letters, no spaces (e.g. 1006)."},{"key":"agent_chat.order_lookup.invalid_order_number_whitespace","value":"Please enter a valid order number with only numbers and letters, no spaces (e.g. 1006)."},{"key":"agent_chat.order_lookup.invalid_email","value":"Please enter a valid email address"},{"key":"agent_chat.order_lookup.generic_error","value":"There was a problem looking up your order. Please try again."},{"key":"agent_chat.order_lookup.rate_limited_error","value":"Too many attempts. Try again later."},{"key":"agent_chat.order_lookup.locked_composer_status","value":"Order lookup is in progress. Start a new conversation to ask something else."},{"key":"agent_chat.legacy_contact.form_title","value":"Before we get started"},{"key":"agent_chat.legacy_contact.form_subtitle","value":"Please provide your information so we can reply to you if you leave the chat."},{"key":"agent_chat.legacy_contact.first_name_label","value":"First name"},{"key":"agent_chat.legacy_contact.last_name_label","value":"Last name"},{"key":"agent_chat.legacy_contact.email_label","value":"Email"},{"key":"agent_chat.legacy_contact.marketing_opt_in","value":"Email me with news and offers"},{"key":"agent_chat.legacy_contact.submit","value":"Start chat"},{"key":"agent_chat.legacy_contact.cancel","value":"Cancel"}
915,{"key":"agent_chat.legacy_contact.invalid_first_name","value":"Enter a valid first name."},{"key":"agent_chat.legacy_contact.invalid_last_name","value":"Enter a valid last name."},{"key":"agent_chat.legacy_contact.invalid_email","value":"Enter a valid email address."},{"key":"agent_chat.legacy_contact.invalid_email_length","value":"Email address is too long."},{"key":"agent_chat.legacy_contact.generic_error","value":"Something went wrong."},{"key":"agent_chat.legacy_contact.rate_limited_error","value":"Too many attempts. Try again later."},{"key":"agent_chat.discountCard.useDiscount","value":"Use discount"},{"key":"agent_chat.discountCard.discountApplicationContext","value":"Applies automatically at checkout"},{"key":"agent_chat.cart.checkout","value":"Checkout"},{"key":"agent_chat.product.add_to_cart","value":"Add to cart"},{"key":"agent_chat.product.view_details","value":"View details"},{"key":"agent_chat.product.out_of_stock","value":"Out of stock"},{"key":"agent_chat.product.compare_suggestions","value":"Compare suggestions"},{"key":"agent_chat.product.hide_suggestions","value":"Hide suggestions"},{"key":"agent_chat.product.sold_out","value":"Sold out"},{"key":"agent_chat.order.item.one","value":"item"},{"key":"agent_chat.order.item.other","value":"items"},{"key":"agent_chat.order.less_items.one","value":"- hide {{count}} item"},{"key":"agent_chat.order.less_items.other","value":"- hide {{count}} items"},{"key":"agent_chat.order.more_items.one","value":"+ {{count}} more item"},{"key":"agent_chat.order.more_items.other","value":"+ {{count}} more items"},{"key":"agent_chat.order.view_order","value":"View order {{orderId}}"},{"key":"agent_chat.order.track_shipment","value":"Track shipment"},{"key":"agent_chat.order.of_total","value":"{{index}} of {{total}}"},{"key":"agent_chat.order.label","value":"Order {{number}}"},{"key":"agent_chat.order.count.one","value":"{{count}} Order"},{"key":"agent_chat.order.count.other","value":"{{count}} Orders"},{"key":"agent_chat.order.ordered_on","value":"Ordered {{date}}"},{"key":"agent_chat.order.select","value":"Select order {{number}}"},{"key":"agent_chat.return.heading","value":"Select items to return"},{"key":"agent_chat.return.toggle_item","value":"Select {{name}}"},{"key":"agent_chat.return.select_item_non_returnable","value":"{{name}}, not returnable"},{"key":"agent_chat.return.quantity_label","value":"Return quantity"},{"key":"agent_chat.return.reason_label","value":"Reason for return"},{"key":"agent_chat.return.reason_placeholder","value":"Select a reason"},{"key":"agent_chat.return.confirm","value":"Request return"},{"key":"agent_chat.return.confirmed","value":"Return requested"},{"key":"agent_chat.return.reason.size_too_small","value":"Size too small"},{"key":"agent_chat.return.reason.size_too_large","value":"Size too large"},{"key":"agent_chat.return.reason.unwanted","value":"Unwanted"},{"key":"agent_chat.return.reason.not_as_described","value":"Not as described"},{"key":"agent_chat.return.reason.wrong_item","value":"Wrong item"},{"key":"agent_chat.return.reason.defective","value":"Defective"},{"key":"agent_chat.return.reason.style","value":"Style"},{"key":"agent_chat.return.reason.color","value":"Color"},{"key":"agent_chat.return.reason.other_reason","value":"Other"},{"key":"agent_chat.scroll.previous","value":"Previous"},{"key":"agent_chat.scroll.next","value":"Next"}]}</script>
vendor: 1 bytes, line 915
915
916<script id="shopify-customer-account-data" type="application/json">{"customer":null,"shop":{"id":"73177301270","customerAccountTranslations":[{"key":"account_menu.signed_out_state.sheet_title","value":"Sign in or create account"},{"key":"account_menu.signed_out_state.section_divider","value":"More ways to sign in"},{"key":"account_menu.signed_out_state.alternate_divider","value":"OR"},{"key":"account_menu.signed_out_state.email_field_label","value":"Email"},{"key":"account_menu.signed_out_state.orders_button","value":"Orders"},{"key":"account_menu.signed_out_state.profile_button","value":"Profile"},{"key":"account_menu.signed_out_state.shop_login_button","value":"Sign in with Shop"},{"key":"account_menu.signed_out_state.continue_with_google","value":"Continue with Google"},{"key":"account_menu.signed_out_state.continue_with_facebook","value":"Continue with Facebook"},{"key":"account_menu.signed_out_state.marketing_consent_label","value":"Email me with news and offers"},{"key":"account_menu.signed_in_state.greeting_with_name","value":"Hi, {{first_name}}"},{"key":"account_menu.signed_in_state.greeting_without_name","value":"Account"},{"key":"account_menu.signed_in_state.orders_button","value":"Orders"},{"key":"account_menu.signed_in_state.profile_button","value":"Profile"},{"key":"account_menu.location_picker.sheet_title","value":"Locations"},{"key":"account_menu.location_picker.search_field_placeholder","value":"Search"},{"key":"account_menu.aria_labels.close_menu","value":"Close menu"},{"key":"account_menu.aria_labels.back_to_main_menu","value":"Back to main menu from {{title}}"},{"key":"account_menu.aria_labels.open_submenu","value":"{{title}}, opens submenu"},{"key":"account_menu.aria_labels.loading_menu","value":"Loading menu"},{"key":"account_menu.aria_labels.account","value":"Account"},{"key":"account_menu.aria_labels.sign_in_with_email","value":"Sign in with email"},{"key":"account_menu.aria_labels.sign_in","value":"Sign in"}],"socialLoginProviders":[{"handle":"Shop"}],"legacyCustomerAccounts":false,"signInLinksVisible":true,"b2bEnabled":false,"marketingConsentSigninEnabled":true,"marketingConsentPreselected":true},"visitor":{"country":"US","language":"en"}}</script>
916 917<meta name="shopify-y" content="1db817f2-ab8b-4f6a-8626-15923590fc8a" data-expiration="1822657768000"><meta name="shopify-s" content="0f3a082d-a1fd-4746-a7b4-e2c74dc56c0e" data-expiration="1791101968000"><meta name="new-cookie-storage-activated" content="t"> 918</head> 919 920 <body class="gradient"> 921 <a class="skip-to-content-link button visually-hidden" href="#MainContent"> 922 Skip to content 923 </a><!-- BEGIN sections: header-group --> 924<div id="shopify-section-sections--18181486248214__announcement-bar" class="shopify-section shopify-section-group-header-group announcement-bar-section"><div class="announcement-bar color-background-2 gradient" role="region" aria-label="Announcement" ><a href="/pages/contact" class="announcement-bar__link link link--text focus-inset animate-arrow"><div class="page-width"> 925 <p class="announcement-bar__message center h5"> 926 <span>We take flower orders 7 days a week, call or text at 732-998-0715!</span><svg 927 viewBox="0 0 14 10" 928 fill="none" 929 aria-hidden="true" 930 focusable="false" 931 class="icon icon-arrow" 932 xmlns="http://www.w3.org/2000/svg" 933> 934 <path fill-rule="evenodd" clip-rule="evenodd" d="M8.537.808a.5.5 0 01.817-.162l4 4a.5.5 0 010 .708l-4 4a.5.5 0 11-.708-.708L11.793 5.5H1a.5.5 0 010-1h10.793L8.646 1.354a.5.5 0 01-.109-.546z" fill="currentColor"> 935</svg> 936 937</p> 938 </div></a></div> 939</div><div id="shopify-section-sections--18181486248214__header" class="shopify-section shopify-section-group-header-group section-header"><link rel="stylesheet" href="//fleurdemernj.com/cdn/shop/t/1/assets/component-list-menu.css?v=151968516119678728991678481334" media="print" onload="this.media='all'"> 940<link rel="stylesheet" href="//fleurdemernj.com/cdn/shop/t/1/assets/component-search.css?v=184225813856820874251678481342" media="print" onload="this.media='all'"> 941<link rel="stylesheet" href="//fleurdemernj.com/cdn/shop/t/1/assets/component-menu-drawer.css?v=182311192829367774911678481337" media="print" onload="this.media='all'"> 942<link rel="stylesheet" href="//fleurdemernj.com/cdn/shop/t/1/assets/component-cart-notification.css?v=137625604348931474661678481330" media="print" onload="this.media='all'"> 943<link rel="stylesheet" href="//fleurdemernj.com/cdn/shop/t/1/assets/component-cart-items.css?v=23917223812499722491678481329" media="print" onload="this.media='all'"><link rel="stylesheet" href="//fleurdemernj.com/cdn/shop/t/1/assets/component-price.css?v=65402837579211014041678481340" media="print" onload="this.media='all'"> 944 <link rel="stylesheet" href="//fleurdemernj.com/cdn/shop/t/1/assets/component-loading-overlay.css?v=167310470843593579841678481336" media="print" onload="this.media='all'"><noscript><link href="//fleurdemernj.com/cdn/shop/t/1/assets/component-list-menu.css?v=151968516119678728991678481334" rel="stylesheet" type="text/css" media="all" /></noscript> 945<noscript><link href="//fleurdemernj.com/cdn/shop/t/1/assets/component-search.css?v=184225813856820874251678481342" rel="stylesheet" type="text/css" media="all" /></noscript> 946<noscript><link href="//fleurdemernj.com/cdn/shop/t/1/assets/component-menu-drawer.css?v=182311192829367774911678481337" rel="stylesheet" type="text/css" media="all" /></noscript> 947<noscript><link href="//fleurdemernj.com/cdn/shop/t/1/assets/component-cart-notification.css?v=137625604348931474661678481330" rel="stylesheet" type="text/css" media="all" /></noscript> 948<noscript><link href="//fleurdemernj.com/cdn/shop/t/1/assets/component-cart-items.css?v=23917223812499722491678481329" rel="stylesheet" type="text/css" media="all" /></noscript> 949 950<style> 951 header-drawer { 952 justify-self: start; 953 margin-left: -1.2rem; 954 } 955 956 .header__heading-logo { 957 max-width: 270px; 958 }@media screen and (min-width: 990px) { 959 header-drawer { 960 display: none; 961 } 962 } 963 964 .menu-drawer-container { 965 display: flex; 966 } 967 968 .list-menu { 969 list-style: none; 970 padding: 0; 971 margin: 0; 972 } 973 974 .list-menu--inline { 975 display: inline-flex; 976 flex-wrap: wrap; 977 } 978 979 summary.list-menu__item { 980 padding-right: 2.7rem; 981 } 982 983 .list-menu__item { 984 display: flex; 985 align-items: center; 986 line-height: calc(1 + 0.3 / var(--font-body-scale)); 987 } 988 989 .list-menu__item--link { 990 text-decoration: none; 991 padding-bottom: 1rem; 992 padding-top: 1rem; 993 line-height: calc(1 + 0.8 / var(--font-body-scale)); 994 } 995 996 @media screen and (min-width: 750px) { 997 .list-menu__item--link { 998 padding-bottom: 0.5rem; 999 padding-top: 0.5rem; 1000 } 1001 } 1002</style><style data-shopify>.header { 1003 padding-top: 10px; 1004 padding-bottom: 10px; 1005 } 1006 1007 .section-header { 1008 position: sticky; /* This is for fixing a Safari z-index issue. PR #2147 */ 1009 margin-bottom: 0px; 1010 } 1011 1012 @media screen and (min-width: 750px) { 1013 .section-header { 1014 margin-bottom: 0px; 1015 } 1016 } 1017 1018 @media screen and (min-width: 990px) { 1019 .header { 1020 padding-top: 20px; 1021 padding-bottom: 20px; 1022 } 1023 }</style>
1023<script src="//fleurdemernj.com/cdn/shop/t/1/assets/details-disclosure.js?v=153497636716254413831678481346" defer="defer"></script>
vendor: 1 bytes, line 1023
1023
1024<script src="//fleurdemernj.com/cdn/shop/t/1/assets/details-modal.js?v=4511761896672669691678481347" defer="defer"></script>
vendor: 1 bytes, line 1024
1024
1025<script src="//fleurdemernj.com/cdn/shop/t/1/assets/cart-notification.js?v=160453272920806432391678481325" defer="defer"></script>
vendor: 1 bytes, line 1025
1025
1026<script src="//fleurdemernj.com/cdn/shop/t/1/assets/search-form.js?v=113639710312857635801678481356" defer="defer"></script>
1026<svg xmlns="http://www.w3.org/2000/svg" class="hidden"> 1027 <symbol id="icon-search" viewbox="0 0 18 19" fill="none"> 1028 <path fill-rule="evenodd" clip-rule="evenodd" d="M11.03 11.68A5.784 5.784 0 112.85 3.5a5.784 5.784 0 018.18 8.18zm.26 1.12a6.78 6.78 0 11.72-.7l5.4 5.4a.5.5 0 11-.71.7l-5.41-5.4z" fill="currentColor"/> 1029 </symbol> 1030 1031 <symbol id="icon-reset" class="icon icon-close" fill="none" viewBox="0 0 18 18" stroke="currentColor"> 1032 <circle r="8.5" cy="9" cx="9" stroke-opacity="0.2"/> 1033 <path d="M6.82972 6.82915L1.17193 1.17097" stroke-linecap="round" stroke-linejoin="round" transform="translate(5 5)"/> 1034 <path d="M1.22896 6.88502L6.77288 1.11523" stroke-linecap="round" stroke-linejoin="round" transform="translate(5 5)"/> 1035 </symbol> 1036 1037 <symbol id="icon-close" class="icon icon-close" fill="none" viewBox="0 0 18 17"> 1038 <path d="M.865 15.978a.5.5 0 00.707.707l7.433-7.431 7.579 7.282a.501.501 0 00.846-.37.5.5 0 00-.153-.351L9.712 8.546l7.417-7.416a.5.5 0 10-.707-.708L8.991 7.853 1.413.573a.5.5 0 10-.693.72l7.563 7.268-7.418 7.417z" fill="currentColor"> 1039 </symbol> 1040</svg> 1041<sticky-header data-sticky-type="on-scroll-up" class="header-wrapper color-background-1 gradient header-wrapper--border-bottom"> 1042 <header class="header header--top-center header--mobile-center page-width header--has-menu"><header-drawer data-breakpoint="tablet"> 1043 <details id="Details-menu-drawer-container" class="menu-drawer-container"> 1044 <summary class="header__icon header__icon--menu header__icon--summary link focus-inset" aria-label="Menu"> 1045 <span> 1046 <svg 1047 xmlns="http://www.w3.org/2000/svg" 1048 aria-hidden="true" 1049 focusable="false" 1050 class="icon icon-hamburger" 1051 fill="none" 1052 viewBox="0 0 18 16" 1053> 1054 <path d="M1 .5a.5.5 0 100 1h15.71a.5.5 0 000-1H1zM.5 8a.5.5 0 01.5-.5h15.71a.5.5 0 010 1H1A.5.5 0 01.5 8zm0 7a.5.5 0 01.5-.5h15.71a.5.5 0 010 1H1a.5.5 0 01-.5-.5z" fill="currentColor"> 1055</svg> 1056 1057 <svg 1058 xmlns="http://www.w3.org/2000/svg" 1059 aria-hidden="true" 1060 focusable="false" 1061 class="icon icon-close" 1062 fill="none" 1063 viewBox="0 0 18 17" 1064> 1065 <path d="M.865 15.978a.5.5 0 00.707.707l7.433-7.431 7.579 7.282a.501.501 0 00.846-.37.5.5 0 00-.153-.351L9.712 8.546l7.417-7.416a.5.5 0 10-.707-.708L8.991 7.853 1.413.573a.5.5 0 10-.693.72l7.563 7.268-7.418 7.417z" fill="currentColor"> 1066</svg> 1067 1068 </span> 1069 </summary> 1070 <div id="menu-drawer" class="gradient menu-drawer motion-reduce" tabindex="-1"> 1071 <div class="menu-drawer__inner-container"> 1072 <div class="menu-drawer__navigation-container"> 1073 <nav class="menu-drawer__navigation"> 1074 <ul class="menu-drawer__menu has-submenu list-menu" role="list"><li><details id="Details-menu-drawer-menu-item-1"> 1075 <summary class="menu-drawer__menu-item list-menu__item link link--text focus-inset"> 1076 Order Flowers 1077 <svg 1078 viewBox="0 0 14 10" 1079 fill="none" 1080 aria-hidden="true" 1081 focusable="false" 1082 class="icon icon-arrow" 1083 xmlns="http://www.w3.org/2000/svg" 1084> 1085 <path fill-rule="evenodd" clip-rule="evenodd" d="M8.537.808a.5.5 0 01.817-.162l4 4a.5.5 0 010 .708l-4 4a.5.5 0 11-.708-.708L11.793 5.5H1a.5.5 0 010-1h10.793L8.646 1.354a.5.5 0 01-.109-.546z" fill="currentColor"> 1086</svg> 1087 1088 <svg aria-hidden="true" focusable="false" class="icon icon-caret" viewBox="0 0 10 6"> 1089 <path fill-rule="evenodd" clip-rule="evenodd" d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z" fill="currentColor"> 1090</svg> 1091 1092 </summary> 1093 <div id="link-order-flowers" class="menu-drawer__submenu has-submenu gradient motion-reduce" tabindex="-1"> 1094 <div class="menu-drawer__inner-submenu"> 1095 <button class="menu-drawer__close-button link link--text focus-inset" aria-expanded="true"> 1096 <svg 1097 viewBox="0 0 14 10" 1098 fill="none" 1099 aria-hidden="true" 1100 focusable="false" 1101 class="icon icon-arrow" 1102 xmlns="http://www.w3.org/2000/svg" 1103> 1104 <path fill-rule="evenodd" clip-rule="evenodd" d="M8.537.808a.5.5 0 01.817-.162l4 4a.5.5 0 010 .708l-4 4a.5.5 0 11-.708-.708L11.793 5.5H1a.5.5 0 010-1h10.793L8.646 1.354a.5.5 0 01-.109-.546z" fill="currentColor"> 1105</svg> 1106 1107 Order Flowers 1108 </button> 1109 <ul class="menu-drawer__menu list-menu" role="list" tabindex="-1"><li><a href="/collections/spring-collection" class="menu-drawer__menu-item link link--text list-menu__item focus-inset">
1110 Core Floral Collection 1111 </a></li><li><a href="https://www.doordash.com/store/fleur-de-mer-ocean-township-27478236/?event_type=autocomplete&pickup=false" class="menu-drawer__menu-item link link--text list-menu__item focus-inset"> 1112 DoorDash Ocean Township 1113 </a></li><li><a href="/collections/flower-subscriptions" class="menu-drawer__menu-item link link--text list-menu__item focus-inset"> 1114 Flower Subscriptions 1115 </a></li><li><a href="/collections/gift-cards" class="menu-drawer__menu-item link link--text list-menu__item focus-inset"> 1116 Gift Certificates 1117 </a></li></ul> 1118 </div> 1119 </div> 1120 </details></li><li><details id="Details-menu-drawer-menu-item-2"> 1121 <summary class="menu-drawer__menu-item list-menu__item link link--text focus-inset menu-drawer__menu-item--active"> 1122 Classes & Events 1123 <svg 1124 viewBox="0 0 14 10" 1125 fill="none" 1126 aria-hidden="true" 1127 focusable="false" 1128 class="icon icon-arrow" 1129 xmlns="http://www.w3.org/2000/svg" 1130> 1131 <path fill-rule="evenodd" clip-rule="evenodd" d="M8.537.808a.5.5 0 01.817-.162l4 4a.5.5 0 010 .708l-4 4a.5.5 0 11-.708-.708L11.793 5.5H1a.5.5 0 010-1h10.793L8.646 1.354a.5.5 0 01-.109-.546z" fill="currentColor"> 1132</svg> 1133 1134 <svg aria-hidden="true" focusable="false" class="icon icon-caret" viewBox="0 0 10 6"> 1135 <path fill-rule="evenodd" clip-rule="evenodd" d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z" fill="currentColor"> 1136</svg> 1137 1138 </summary> 1139 <div id="link-classes-events" class="menu-drawer__submenu has-submenu gradient motion-reduce" tabindex="-1"> 1140 <div class="menu-drawer__inner-submenu"> 1141 <button class="menu-drawer__close-button link link--text focus-inset" aria-expanded="true"> 1142 <svg 1143 viewBox="0 0 14 10" 1144 fill="none" 1145 aria-hidden="true" 1146 focusable="false" 1147 class="icon icon-arrow" 1148 xmlns="http://www.w3.org/2000/svg" 1149> 1150 <path fill-rule="evenodd" clip-rule="evenodd" d="M8.537.808a.5.5 0 01.817-.162l4 4a.5.5 0 010 .708l-4 4a.5.5 0 11-.708-.708L11.793 5.5H1a.5.5 0 010-1h10.793L8.646 1.354a.5.5 0 01-.109-.546z" fill="currentColor"> 1151</svg> 1152 1153 Classes & Events 1154 </button> 1155 <ul class="menu-drawer__menu list-menu" role="list" tabindex="-1"><li><a href="/collections/classes" class="menu-drawer__menu-item link link--text list-menu__item focus-inset"> 1156 All Classes & Events 1157 </a></li><li><a href="/collections/floral-arranging-workshops-at-fleur-de-mer" class="menu-drawer__menu-item link link--text list-menu__item focus-inset"> 1158 Floral Arranging 1159 </a></li><li><a href="/products/kids-craft-club-flower-fairies-january-18th" class="menu-drawer__menu-item link link--text list-menu__item focus-inset menu-drawer__menu-item--active" aria-current="page"> 1160 Kids Craft Club 1161 </a></li></ul> 1162 </div> 1163 </div> 1164 </details></li><li><a href="/pages/new-jersey-mobile-flower-bar-by-fleur-de-mer" class="menu-drawer__menu-item list-menu__item link link--text focus-inset"> 1165 Mobile Flower Bar 1166 </a></li><li><details id="Details-menu-drawer-menu-item-4"> 1167 <summary class="menu-drawer__menu-item list-menu__item link link--text focus-inset"> 1168 Weddings 1169 <svg 1170 viewBox="0 0 14 10" 1171 fill="none" 1172 aria-hidden="true" 1173 focusable="false" 1174 class="icon icon-arrow" 1175 xmlns="http://www.w3.org/2000/svg" 1176> 1177 <path fill-rule="evenodd" clip-rule="evenodd" d="M8.537.808a.5.5 0 01.817-.162l4 4a.5.5 0 010 .708l-4 4a.5.5 0 11-.708-.708L11.793 5.5H1a.5.5 0 010-1h10.793L8.646 1.354a.5.5 0 01-.109-.546z" fill="currentColor"> 1178</svg> 1179 1180 <svg aria-hidden="true" focusable="false" class="icon icon-caret" viewBox="0 0 10 6"> 1181 <path fill-rule="evenodd" clip-rule="evenodd" d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z" fill="currentColor"> 1182</svg> 1183 1184 </summary> 1185 <div id="link-weddings" class="menu-drawer__submenu has-submenu gradient motion-reduce" tabindex="-1"> 1186 <div class="menu-drawer__inner-submenu"> 1187 <button class="menu-drawer__close-button link link--text focus-inset" aria-expanded="true"> 1188 <svg 1189 viewBox="0 0 14 10" 1190 fill="none" 1191 aria-hidden="true" 1192 focusable="false" 1193 class="icon icon-arrow" 1194 xmlns="http://www.w3.org/2000/svg" 1195> 1196 <path fill-rule="evenodd" clip-rule="evenodd" d="M8.537.808a.5.5 0 01.817-.162l4 4a.5.5 0 010 .708l-4 4a.5.5 0 11-.708-.708L11.793 5.5H1a.5.5 0 010-1h10.793L8.646 1.354a.5.5 0 01-.109-.546z" fill="currentColor"> 1197</svg> 1198 1199 Weddings 1200 </button> 1201 <ul class="menu-drawer__menu list-menu" role="list" tabindex="-1"><li><a href="/pages/wedding-florals-new-jersey" class="menu-drawer__menu-item link link--text list-menu__item focus-inset"> 1202 Wedding Inquiries 1203 </a></li></ul> 1204 </div> 1205 </div> 1206 </details></li><li>
1206<details id="Details-menu-drawer-menu-item-5"> 1207 <summary class="menu-drawer__menu-item list-menu__item link link--text focus-inset"> 1208 Private Parties 1209 <svg 1210 viewBox="0 0 14 10" 1211 fill="none" 1212 aria-hidden="true" 1213 focusable="false" 1214 class="icon icon-arrow" 1215 xmlns="http://www.w3.org/2000/svg" 1216> 1217 <path fill-rule="evenodd" clip-rule="evenodd" d="M8.537.808a.5.5 0 01.817-.162l4 4a.5.5 0 010 .708l-4 4a.5.5 0 11-.708-.708L11.793 5.5H1a.5.5 0 010-1h10.793L8.646 1.354a.5.5 0 01-.109-.546z" fill="currentColor"> 1218</svg> 1219 1220 <svg aria-hidden="true" focusable="false" class="icon icon-caret" viewBox="0 0 10 6"> 1221 <path fill-rule="evenodd" clip-rule="evenodd" d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z" fill="currentColor"> 1222</svg> 1223 1224 </summary> 1225 <div id="link-private-parties" class="menu-drawer__submenu has-submenu gradient motion-reduce" tabindex="-1"> 1226 <div class="menu-drawer__inner-submenu"> 1227 <button class="menu-drawer__close-button link link--text focus-inset" aria-expanded="true"> 1228 <svg 1229 viewBox="0 0 14 10" 1230 fill="none" 1231 aria-hidden="true" 1232 focusable="false" 1233 class="icon icon-arrow" 1234 xmlns="http://www.w3.org/2000/svg" 1235> 1236 <path fill-rule="evenodd" clip-rule="evenodd" d="M8.537.808a.5.5 0 01.817-.162l4 4a.5.5 0 010 .708l-4 4a.5.5 0 11-.708-.708L11.793 5.5H1a.5.5 0 010-1h10.793L8.646 1.354a.5.5 0 01-.109-.546z" fill="currentColor"> 1237</svg> 1238 1239 Private Parties 1240 </button> 1241 <ul class="menu-drawer__menu list-menu" role="list" tabindex="-1"><li><a href="/pages/private-parties" class="menu-drawer__menu-item link link--text list-menu__item focus-inset"> 1242 Parties & Celebrations 1243 </a></li><li><a href="/pages/event-space-rental-in-monmouth-county-fleur-de-mer" class="menu-drawer__menu-item link link--text list-menu__item focus-inset"> 1244 Book Our Space 1245 </a></li><li><a href="/pages/birthday-parties" class="menu-drawer__menu-item link link--text list-menu__item focus-inset"> 1246 Birthday Parties 1247 </a></li><li><a href="/pages/affordable-mobile-flower-bar-rental-program-by-fleur-de-mer" class="menu-drawer__menu-item link link--text list-menu__item focus-inset"> 1248 Flower Bar Rental Program 1249 </a></li></ul> 1250 </div> 1251 </div> 1252 </details></li><li><a href="/blogs/news" class="menu-drawer__menu-item list-menu__item link link--text focus-inset"> 1253 Blog 1254 </a></li><li><a href="/pages/contact" class="menu-drawer__menu-item list-menu__item link link--text focus-inset"> 1255 Contact 1256 </a></li></ul> 1257 </nav> 1258 <div class="menu-drawer__utility-links"><a href="https://fleurdemernj.com/customer_authentication/redirect?locale=en®ion_country=US" class="menu-drawer__account link focus-inset h5"> 1259 <svg 1260 xmlns="http://www.w3.org/2000/svg" 1261 aria-hidden="true" 1262 focusable="false" 1263 class="icon icon-account" 1264 fill="none" 1265 viewBox="0 0 18 19" 1266> 1267 <path fill-rule="evenodd" clip-rule="evenodd" d="M6 4.5a3 3 0 116 0 3 3 0 01-6 0zm3-4a4 4 0 100 8 4 4 0 000-8zm5.58 12.15c1.12.82 1.83 2.24 1.91 4.85H1.51c.08-2.6.79-4.03 1.9-4.85C4.66 11.75 6.5 11.5 9 11.5s4.35.26 5.58 1.15zM9 10.5c-2.5 0-4.65.24-6.17 1.35C1.27 12.98.5 14.93.5 18v.5h17V18c0-3.07-.77-5.02-2.33-6.15-1.52-1.1-3.67-1.35-6.17-1.35z" fill="currentColor"> 1268</svg> 1269 1270Log in</a><ul class="list list-social list-unstyled" role="list"><li class="list-social__item"> 1271 <a href="https://www.facebook.com/fleurdemernj" class="list-social__link link"><svg aria-hidden="true" focusable="false" class="icon icon-facebook" viewB
1271ox="0 0 18 18"> 1272 <path fill="currentColor" d="M16.42.61c.27 0 .5.1.69.28.19.2.28.42.28.7v15.44c0 .27-.1.5-.28.69a.94.94 0 01-.7.28h-4.39v-6.7h2.25l.31-2.65h-2.56v-1.7c0-.4.1-.72.28-.93.18-.2.5-.32 1-.32h1.37V3.35c-.6-.06-1.27-.1-2.01-.1-1.01 0-1.83.3-2.45.9-.62.6-.93 1.44-.93 2.53v1.97H7.04v2.65h2.24V18H.98c-.28 0-.5-.1-.7-.28a.94.94 0 01-.28-.7V1.59c0-.27.1-.5.28-.69a.94.94 0 01.7-.28h15.44z"> 1273</svg> 1274<span class="visually-hidden">Facebook</span> 1275 </a> 1276 </li><li class="list-social__item"> 1277 <a href="https://www.instagram.com/fleurdemernj/" class="list-social__link link"><svg aria-hidden="true" focusable="false" class="icon icon-instagram" viewBox="0 0 18 18"> 1278 <path fill="currentColor" d="M8.77 1.58c2.34 0 2.62.01 3.54.05.86.04 1.32.18 1.63.3.41.17.7.35 1.01.66.3.3.5.6.65 1 .12.32.27.78.3 1.64.05.92.06 1.2.06 3.54s-.01 2.62-.05 3.54a4.79 4.79 0 01-.3 1.63c-.17.41-.35.7-.66 1.01-.3.3-.6.5-1.01.66-.31.12-.77.26-1.63.3-.92.04-1.2.05-3.54.05s-2.62 0-3.55-.05a4.79 4.79 0 01-1.62-.3c-.42-.16-.7-.35-1.01-.66-.31-.3-.5-.6-.66-1a4.87 4.87 0 01-.3-1.64c-.04-.92-.05-1.2-.05-3.54s0-2.62.05-3.54c.04-.86.18-1.32.3-1.63.16-.41.35-.7.66-1.01.3-.3.6-.5 1-.65.32-.12.78-.27 1.63-.3.93-.05 1.2-.06 3.55-.06zm0-1.58C6.39 0 6.09.01 5.15.05c-.93.04-1.57.2-2.13.4-.57.23-1.06.54-1.55 1.02C1 1.96.7 2.45.46 3.02c-.22.56-.37 1.2-.4 2.13C0 6.1 0 6.4 0 8.77s.01 2.68.05 3.61c.04.94.2 1.57.4 2.13.23.58.54 1.07 1.02 1.56.49.48.98.78 1.55 1.01.56.22 1.2.37 2.13.4.94.05 1.24.06 3.62.06 2.39 0 2.68-.01 3.62-.05.93-.04 1.57-.2 2.13-.41a4.27 4.27 0 001.55-1.01c.49-.49.79-.98 1.01-1.56.22-.55.37-1.19.41-2.13.04-.93.05-1.23.05-3.61 0-2.39 0-2.68-.05-3.62a6.47 6.47 0 00-.4-2.13 4.27 4.27 0 00-1.02-1.55A4.35 4.35 0 0014.52.46a6.43 6.43 0 00-2.13-.41A69 69 0 008.77 0z"/> 1279 <path fill="currentColor" d="M8.8 4a4.5 4.5 0 100 9 4.5 4.5 0 000-9zm0 7.43a2.92 2.92 0 110-5.85 2.92 2.92 0 010 5.85zM13.43 5a1.05 1.05 0 100-2.1 1.05 1.05 0 000 2.1z"> 1280</svg> 1281<span class="visually-hidden">Instagram</span> 1282 </a> 1283 </li></ul> 1284 </div> 1285 </div> 1286 </div> 1287 </div> 1288 </details> 1289 </header-drawer><details-modal class="header__search"> 1290 <details> 1291 <summary class="header__icon header__icon--search header__icon--summary link focus-inset modal__toggle" aria-haspopup="dialog" aria-label="Search"> 1292 <span> 1293 <svg class="modal__toggle-open icon icon-search" aria-hidden="true" focusable="false"> 1294 <use href="#icon-search"> 1295 </svg> 1296 <svg class="modal__toggle-close icon icon-close" aria-hidden="true" focusable="false"> 1297 <use href="#icon-close"> 1298 </svg> 1299 </span> 1300 </summary> 1301 <div class="search-modal modal__content gradient" role="dialog" aria-modal="true" aria-label="Search"> 1302 <div class="modal-overlay"></div> 1303 <div class="search-modal__content search-modal__content-bottom" tabindex="-1"><predictive-search class="search-modal__form" data-loading-text="Loading..."><form action="/search" method="get" role="search" class="search search-modal__form"> 1304 <div class="field"> 1305 <input class="search__input field__input" 1306 id="Search-In-Modal-1" 1307 type="search" 1308 name="q" 1309 value="" 1310 placeholder="Search"role="combobox" 1311 aria-expanded="false" 1312 aria-owns="predictive-search-results" 1313 aria-controls="predictive-search-results" 1314 aria-haspopup="listbox" 1315 aria-autocomplete="list" 1316 autocorrect="off" 1317 autocomplete="off" 1318 autocapitalize="off" 1319 spellcheck="false"> 1320 <label class="field__label" for="Search-In-Modal-1">Search</label> 1321 <input type="hidden" name="options[prefix]" value="last"> 1322 <button type="reset" class="reset__button field__button hidden" aria-label="Clear search term"> 1323 <svg class="icon icon-close" aria-hidden="true" focusable="false"> 1324 <use xlink:href="#icon-reset"> 1325 </svg> 1326 </button> 1327 <button class="search__button field__button" aria-label="Search"> 1328 <svg class="icon icon-search" aria-hidden="true" focusable="false"> 1329 <use href="#icon-search"> 1330 </svg> 1331 </button> 1332 </div><div class="predictive-search predictive-search--header" tabindex="-1" data-predictive-search> 1333 <div class="predictive-search__loading-state"> 1334 <svg aria-hidden="true" focusable="false" class="spinner" viewBox="0 0 66 66" xmlns="http://www.w3.org/2000/svg"> 1335 <circle class="path" fill="none" stroke-width="6" cx="33" cy="33" r="30"></circle> 1336 </svg> 1337 </div> 1338 </div> 1339
1340 <span class="predictive-search-status visually-hidden" role="status" aria-hidden="true"></span></form></predictive-search><button type="button" class="modal__close-button link link--text focus-inset" aria-label="Close"> 1341 <svg class="icon icon-close" aria-hidden="true" focusable="false"> 1342 <use href="#icon-close"> 1343 </svg> 1344 </button> 1345 </div> 1346 </div> 1347 </details> 1348 </details-modal><a href="/" class="header__heading-link link link--text focus-inset"><img src="//fleurdemernj.com/cdn/shop/files/Fleur_De_Mer_NJ_Logo.png?v=1678482107&width=500" alt="Fleur de Mer" srcset="//fleurdemernj.com/cdn/shop/files/Fleur_De_Mer_NJ_Logo.png?v=1678482107&width=50 50w, //fleurdemernj.com/cdn/shop/files/Fleur_De_Mer_NJ_Logo.png?v=1678482107&width=100 100w, //fleurdemernj.com/cdn/shop/files/Fleur_De_Mer_NJ_Logo.png?v=1678482107&width=150 150w, //fleurdemernj.com/cdn/shop/files/Fleur_De_Mer_NJ_Logo.png?v=1678482107&width=200 200w, //fleurdemernj.com/cdn/shop/files/Fleur_De_Mer_NJ_Logo.png?v=1678482107&width=250 250w, //fleurdemernj.com/cdn/shop/files/Fleur_De_Mer_NJ_Logo.png?v=1678482107&width=300 300w, //fleurdemernj.com/cdn/shop/files/Fleur_De_Mer_NJ_Logo.png?v=1678482107&width=400 400w, //fleurdemernj.com/cdn/shop/files/Fleur_De_Mer_NJ_Logo.png?v=1678482107&width=500 500w" width="270" height="155.0" class="header__heading-logo motion-reduce"> 1349</a><nav class="header__inline-menu"> 1350 <ul class="list-menu list-menu--inline" role="list"><li><header-menu> 1351 <details id="Details-HeaderMenu-1"> 1352 <summary class="header__menu-item list-menu__item link focus-inset"> 1353 <span>Order Flowers</span> 1354 <svg aria-hidden="true" focusable="false" class="icon icon-caret" viewBox="0 0 10 6"> 1355 <path fill-rule="evenodd" clip-rule="evenodd" d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z" fill="currentColor"> 1356</svg> 1357 1358 </summary> 1359 <ul id="HeaderMenu-MenuList-1" class="header__submenu list-menu list-menu--disclosure gradient caption-large motion-reduce global-settings-popup" role="list" tabindex="-1"><li><a href="/collections/spring-collection" class="header__menu-item list-menu__item link link--text focus-inset caption-large"> 1360 Core Floral Collection 1361 </a></li><li><a href="https://www.doordash.com/store/fleur-de-mer-ocean-township-27478236/?event_type=autocomplete&pickup=false" class="header__menu-item list-menu__item link link--text focus-inset caption-large"> 1362 DoorDash Ocean Township 1363 </a></li><li><a href="/collections/flower-subscriptions" class="header__menu-item list-menu__item link link--text focus-inset caption-large"> 1364 Flower Subscriptions 1365 </a></li><li><a href="/collections/gift-cards" class="header__menu-item list-menu__item link link--text focus-inset caption-large"> 1366 Gift Certificates 1367 </a></li></ul> 1368 </details> 1369 </header-menu></li><li><header-menu> 1370 <details id="Details-HeaderMenu-2"> 1371 <summary class="header__menu-item list-menu__item link focus-inset"> 1372 <span class="header__active-menu-item">Classes & Events</span> 1373 <svg aria-hidden="true" focusable="false" class="icon icon-caret" viewBox="0 0 10 6"> 1374 <path fill-rule="evenodd" clip-rule="evenodd" d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z" fill="currentColor"> 1375</svg> 1376 1377 </summary> 1378 <ul id="HeaderMenu-MenuList-2" class="header__submenu list-menu list-menu--disclosure gradient caption-large motion-reduce global-settings-popup" role="list" tabindex="-1"><li><a href="/collections/classes" class="header__menu-item list-menu__item link link--text focus-inset caption-large"> 1379 All Classes & Events 1380 </a></li><li>
1380<a href="/collections/floral-arranging-workshops-at-fleur-de-mer" class="header__menu-item list-menu__item link link--text focus-inset caption-large"> 1381 Floral Arranging 1382 </a></li><li><a href="/products/kids-craft-club-flower-fairies-january-18th" class="header__menu-item list-menu__item link link--text focus-inset caption-large list-menu__item--active" aria-current="page"> 1383 Kids Craft Club 1384 </a></li></ul> 1385 </details> 1386 </header-menu></li><li><a href="/pages/new-jersey-mobile-flower-bar-by-fleur-de-mer" class="header__menu-item list-menu__item link link--text focus-inset"> 1387 <span>Mobile Flower Bar</span> 1388 </a></li><li><header-menu> 1389 <details id="Details-HeaderMenu-4"> 1390 <summary class="header__menu-item list-menu__item link focus-inset"> 1391 <span>Weddings</span> 1392 <svg aria-hidden="true" focusable="false" class="icon icon-caret" viewBox="0 0 10 6"> 1393 <path fill-rule="evenodd" clip-rule="evenodd" d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z" fill="currentColor"> 1394</svg> 1395 1396 </summary> 1397 <ul id="HeaderMenu-MenuList-4" class="header__submenu list-menu list-menu--disclosure gradient caption-large motion-reduce global-settings-popup" role="list" tabindex="-1"><li><a href="/pages/wedding-florals-new-jersey" class="header__menu-item list-menu__item link link--text focus-inset caption-large"> 1398 Wedding Inquiries 1399 </a></li></ul> 1400 </details> 1401 </header-menu></li><li><header-menu> 1402 <details id="Details-HeaderMenu-5"> 1403 <summary class="header__menu-item list-menu__item link focus-inset"> 1404 <span>Private Parties</span> 1405 <svg aria-hidden="true" focusable="false" class="icon icon-caret" viewBox="0 0 10 6"> 1406 <path fill-rule="evenodd" clip-rule="evenodd" d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z" fill="currentColor"> 1407</svg> 1408 1409 </summary> 1410 <ul id="HeaderMenu-MenuList-5" class="header__submenu list-menu list-menu--disclosure gradient caption-large motion-reduce global-settings-popup" role="list" tabindex="-1"><li><a href="/pages/private-parties" class="header__menu-item list-menu__item link link--text focus-inset caption-large"> 1411 Parties & Celebrations 1412 </a></li><li><a href="/pages/event-space-rental-in-monmouth-county-fleur-de-mer" class="header__menu-item list-menu__item link link--text focus-inset caption-large"> 1413 Book Our Space 1414 </a></li><li><a href="/pages/birthday-parties" class="header__menu-item list-menu__item link link--text focus-inset caption-large"> 1415 Birthday Parties 1416 </a></li><li><a href="/pages/affordable-mobile-flower-bar-rental-program-by-fleur-de-mer" class="header__menu-item list-menu__item link link--text focus-inset caption-large"> 1417 Flower Bar Rental Program 1418 </a></li></ul> 1419 </details> 1420 </header-menu></li><li><a href="/blogs/news" class="header__menu-item list-menu__item link link--text focus-inset"> 1421 <span>Blog</span> 1422 </a></li><li><a href="/pages/contact" class="header__menu-item list-menu__item link link--text focus-inset"> 1423 <span>Contact</span> 1424 </a></li></ul> 1425 </nav><div class="header__icons"> 1426 <details-modal class="header__search"> 1427 <details> 1428 <summary class="header__icon header__icon--search header__icon--summary link focus-inset modal__toggle" aria-haspopup="dialog" aria-label="Search">
1429 <span> 1430 <svg class="modal__toggle-open icon icon-search" aria-hidden="true" focusable="false"> 1431 <use href="#icon-search"> 1432 </svg> 1433 <svg class="modal__toggle-close icon icon-close" aria-hidden="true" focusable="false"> 1434 <use href="#icon-close"> 1435 </svg> 1436 </span> 1437 </summary> 1438 <div class="search-modal modal__content gradient" role="dialog" aria-modal="true" aria-label="Search"> 1439 <div class="modal-overlay"></div> 1440 <div class="search-modal__content search-modal__content-bottom" tabindex="-1"><predictive-search class="search-modal__form" data-loading-text="Loading..."><form action="/search" method="get" role="search" class="search search-modal__form"> 1441 <div class="field"> 1442 <input class="search__input field__input" 1443 id="Search-In-Modal" 1444 type="search" 1445 name="q" 1446 value="" 1447 placeholder="Search"role="combobox" 1448 aria-expanded="false" 1449 aria-owns="predictive-search-results" 1450 aria-controls="predictive-search-results" 1451 aria-haspopup="listbox" 1452 aria-autocomplete="list" 1453 autocorrect="off" 1454 autocomplete="off" 1455 autocapitalize="off" 1456 spellcheck="false"> 1457 <label class="field__label" for="Search-In-Modal">Search</label> 1458 <input type="hidden" name="options[prefix]" value="last"> 1459 <button type="reset" class="reset__button field__button hidden" aria-label="Clear search term"> 1460 <svg class="icon icon-close" aria-hidden="true" focusable="false"> 1461 <use xlink:href="#icon-reset"> 1462 </svg> 1463 </button> 1464 <button class="search__button field__button" aria-label="Search"> 1465 <svg class="icon icon-search" aria-hidden="true" focusable="false"> 1466 <use href="#icon-search"> 1467 </svg> 1468 </button> 1469 </div><div class="predictive-search predictive-search--header" tabindex="-1" data-predictive-search> 1470 <div class="predictive-search__loading-state"> 1471 <svg aria-hidden="true" focusable="false" class="spinner" viewBox="0 0 66 66" xmlns="http://www.w3.org/2000/svg"> 1472 <circle class="path" fill="none" stroke-width="6" cx="33" cy="33" r="30"></circle> 1473 </svg> 1474 </div> 1475 </div> 1476 1477 <span class="predictive-search-status visually-hidden" role="status" aria-hidden="true"></span></form></predictive-search><button type="button" class="search-modal__close-button modal__close-button link link--text focus-inset" aria-label="Close"> 1478 <svg class="icon icon-close" aria-hidden="true" focusable="false"> 1479 <use href="#icon-close"> 1480 </svg> 1481 </button> 1482 </div> 1483 </div> 1484 </details> 1485 </details-modal><a href="https://fleurdemernj.com/customer_authentication/redirect?locale=en®ion_country=US" class="header__icon header__icon--account link focus-inset small-hide"> 1486 <svg 1487 xmlns="http://www.w3.org/2000/svg" 1488 aria-hidden="true" 1489 focusable="false" 1490 class="icon icon-account" 1491 fill="none" 1492 viewBox="0 0 18 19" 1493> 1494 <path fill-rule="evenodd" clip-rule="evenodd" d="M6 4.5a3 3 0 116 0 3 3 0 01-6 0zm3-4a4 4 0 100 8 4 4 0 000-8zm5.58 12.15c1.12.82 1.83 2.24 1.91 4.85H1.51c.08-2.6.79-4.03 1.9-4.85C4.66 11.75 6.5 11.5 9 11.5s4.35.26 5.58 1.15zM9 10.5c-2.5 0-4.65.24-6.17 1.35C1.27 12.98.5 14.93.5 18v.5h17V18c0-3.07-.77-5.02-2.33-6.15-1.52-1.1-3.67-1.35-6.17-1.35z" fill="currentColor"> 1495</svg> 1496
1497 <span class="visually-hidden">Log in</span> 1498 </a><a href="/cart" class="header__icon header__icon--cart link focus-inset" id="cart-icon-bubble"><svg 1499 class="icon icon-cart-empty" 1500 aria-hidden="true" 1501 focusable="false" 1502 xmlns="http://www.w3.org/2000/svg" 1503 viewBox="0 0 40 40" 1504 fill="none" 1505> 1506 <path d="m15.75 11.8h-3.16l-.77 11.6a5 5 0 0 0 4.99 5.34h7.38a5 5 0 0 0 4.99-5.33l-.78-11.61zm0 1h-2.22l-.71 10.67a4 4 0 0 0 3.99 4.27h7.38a4 4 0 0 0 4-4.27l-.72-10.67h-2.22v.63a4.75 4.75 0 1 1 -9.5 0zm8.5 0h-7.5v.63a3.75 3.75 0 1 0 7.5 0z" fill="currentColor" fill-rule="evenodd"/> 1507</svg> 1508<span class="visually-hidden">Cart</span></a> 1509 </div> 1510 </header> 1511</sticky-header> 1512
1513<script type="application/ld+json"> 1514 { 1515 "@context": "http://schema.org", 1516 "@type": "Organization", 1517 "name": "Fleur de Mer", 1518 1519 "logo": "https:\/\/fleurdemernj.com\/cdn\/shop\/files\/Fleur_De_Mer_NJ_Logo.png?v=1678482107\u0026width=500", 1520 1521 "sameAs": [ 1522 "", 1523 "https:\/\/www.facebook.com\/fleurdemernj", 1524 "", 1525 "https:\/\/www.instagram.com\/fleurdemernj\/", 1526 "", 1527 "", 1528 "", 1529 "", 1530 "" 1531 ], 1532 "url": "https:\/\/fleurdemernj.com" 1533 } 1534</script>
1534 1535</div> 1536<!-- END sections: header-group --> 1537 1538 1539 <main id="MainContent" class="content-for-layout focus-none" role="main" tabindex="-1"> 1540 <div id="shopify-section-template--26026056679702__foxify-1766786444j889X" class="shopify-section foxify-main f-app"> 1541 1542 1543
1543<script> 1544 window.Foxify = window.Foxify || {} 1545 Foxify.ThemeStyles = { 1546 product: "https://fleurdemernj.com/cdn/shop/t/1/assets/foxify-product.css?v=164499641456331026621770876991", 1547 swiper: "https://fleurdemernj.com/cdn/shop/t/1/assets/foxify-swiper.css?v=27070665459576732971760484925", 1548 } 1549 1550 Foxify.ThemeScripts = { 1551 productModel: "https://fleurdemernj.com/cdn/shop/t/1/assets/foxify-product-model.js?v=881", 1552 productMedia: "https://fleurdemernj.com/cdn/shop/t/1/assets/foxify-media-gallery.js?v=139472779801846609431770876991", 1553 variantPicker: "https://fleurdemernj.com/cdn/shop/t/1/assets/foxify-variant-picker.js?v=97474091165838446041770876991" 1554 } 1555 1556 Foxify.pageId = '1766786444j889X'; 1557 Foxify.default = false; 1558 </script>
1558 1559 1560<div class="x-app x-main"> 1561<link href="https://fonts.googleapis.com/css2?family=Outfit:wght@100;200;300;400;500;600;700;800;900&display=swap" id="Outfit" data-foxify-editor="font-components" rel="stylesheet"> 1562<link href="https://fonts.googleapis.com/css2?family=DM+Sans:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap" id="DM Sans" data-foxify-editor="font-components" rel="stylesheet"> 1563<link href="https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,200;0,300;0,400;0,500;0,600;0,700;0,800;1,200;1,300;1,400;1,500;1,600;1,700;1,800&display=swap" id="Plus Jakarta Sans" data-foxify-editor="font-components" rel="stylesheet"> 1564<style data-foxify-editor="foxify-custom-fonts"> 1565 @font-face { 1566 font-family: ClashDisplay-Semibold; 1567 src: url('https://cdn.shopify.com/s/files/1/0667/8442/8285/files/ClashDisplay-Semibold_5860c2ef-9176-413e-beef-ea1db6009b1c.otf?v=1720425934'); 1568 } 1569 1570 @font-face { 1571 font-family: ClashDisplay-Medium; 1572 src: url('https://cdn.shopify.com/s/files/1/0667/8442/8285/files/ClashDisplay-Medium.otf?v=1720425934'); 1573 } 1574 </style> 1575<link href="//fleurdemernj.com/cdn/shop/t/1/assets/foxify-1766786444j889X.css?v=124531718652444194401775000257" rel="stylesheet" type="text/css" media="all" /> 1576<style data-foxify-custom-code-page="css">.press--ct .x-press__content-wrapper { 1577 --press-content-padding: 16%; 1578} 1579.press--ct .x-press__text { 1580 padding: 0; 1581} 1582.press--ct .x-press__list { 1583 margin-top: 64px; 1584} 1585.press--ct .x-press__logo { 1586 padding: 0 25px; 1587} 1588 1589.product-destails--ct .x-price { 1590 display: flex; 1591 line-height: inherit; 1592} 1593.x-price__regular, .x-price__sale { 1594 margin: 0; 1595 align-items: center; 1596 gap: 8px; 1597} 1598.product-destails--ct .x-form-label .x-variant-picker__selected-value { 1599 color: rgba(102, 102, 102, 1); 1600 font-weight: 400; 1601} 1602.product-destails--ct .x-variant-picker__option-values { 1603 gap: 8px; 1604} 1605.product-destails--ct .x-variant-picker__option-button--color { 1606 --x-color-swatch-size: 46px; 1607 --x-color-swatch-radius: 50%; 1608 border: 2px solid rgba(204, 204, 204, 1)!important; 1609} 1610.product-destails--ct input[type=radio]:checked+.x-variant-picker__option-button--color { 1611 border: 7px solid #fff!important; 1612 box-shadow: 0 0 0 2px rgba(204, 204, 204, 1); 1613} 1614.product-list--ct .x-product-card--style-4 .x-product-card__wrapper { 1615 border: none; 1616} 1617.product-list--ct .x-product-card--style-4 .x-product-card__info { 1618 padding-bottom: 0; 1619} 1620.product-list--ct .x-product-card__title { 1621 font-family: 'Outfit'; 1622 font-weight: 500; 1623 font-size: 24px; 1624 line-height: 1.26; 1625 color: rgba(51, 51, 51, 1); 1626 margin-bottom: 12px!important; 1627} 1628.product-list--ct .x-price { 1629 line-height: 1; 1630} 1631.product-list--ct .x-price__regular, 1632.product-list--ct .x-price__sale { 1633 margin: 0; 1634 align-items: center; 1635} 1636.product-list--ct .x-price-item { 1637 font-family: 'Outfit'; 1638 font-weight: 400; 1639 font-size: 18px; 1640 line-height: 1.26; 1641 color: rgba(102, 102, 102, 1); 1642} 1643.product-list--ct .x-badge { 1644 font-family: 'Outfit'; 1645 font-weight: 500; 1646 font-size: 12px; 1647 text-transform: capitalize; 1648 letter-spacing: 0; 1649 padding: 5px 10px; 1650} 1651.product-list--ct .x-product-card__atc { 1652 margin-top: 10px; 1653 padding-right: 40PX; 1654 padding-left: 40px; 1655 background-color: rgba(231, 154, 130, 1); 1656 font-family: 'Outfit'; 1657 font-weight: 500; 1658 font-size: 18px; 1659 line-height: 1; 1660 text-transform: capitalize; 1661 color: rgba(255, 255, 255, 1); 1662 border-radius: 52; 1663 border: none; 1664 width: fit-content; 1665} 1666.product-list--ct .x-product-card__atc:hover { 1667 background-color: #000; 1668} 1669.product-list--ct .x-mobile-swiper { 1670 --scroll-padding: 15px; 1671} 1672 1673.testimonial--ct .x-testimonial-item__star { 1674 margin-top: 4px; 1675 margin-left: 18px; 1676} 1677.testimonial--ct .x-testimonial-item__text { 1678 margin: 0 30px 12px 18px; 1679} 1680.testimonial--ct .x-testimonial-item__info { 1681 display: flex; 1682 align-items: center; 1683 gap: 8px; 1684 padding-left: 18px; 1685 padding-bottom: 28px; 1686} 1687.testimonial--ct .x-swiper-controls__inner { 1688 background: transparent; 1689 margin-top: 10px; 1690} 1691.testimonial--ct .x-swiper-pagination-bullet { 1692 background: rgba(51, 51, 51, 0.3); 1693 border: none; 1694} 1695.testimonial--ct .x-swiper-pagination-bullet-active { 1696 background: transparent; 1697 border: 1px solid rgba(51, 51, 51, 1); 1698} 1699@media (max-width: 1023px) { 1700 .press--ct .x-press__list { 1701 margin-top: 40px; 1702 } 1703 .press--ct .x-press__logo { 1704 padding: 0 15px; 1705 } 1706 1707} 1708@media (max-width: 767px) { 1709 .press--ct .x-press__content-wrapper { 1710 --press-content-padding: 0; 1711 } 1712 .press--ct .x-press__list { 1713 margin-top: 24px; 1714 } 1715 .x-press__list .swiper-thumbs { 1716 width: 50vw; 1717 } 1718 .testimonial--ct .x-swiper-wrapper { 1719 padding: 0; 1720 }
1721 .testimonial--ct .x-swiper-controls__inner { 1722 margin-top: 0px; 1723 } 1724}</style> 1725<div data-foxify-editor="svg-templates" style="display: none;"><svg id="1786939949knn7U" width="41" height="40" viewBox="0 0 41 40" fill="none" xmlns="http://www.w3.org/2000/svg" class="f-icon-uploaded f-icon-Heart.svg"> 1726<g clip-path="url(#clip0_2022_5166)"> 1727<path d="M20.5 35C20.5 35 4.25 26.25 4.25 15.9375C4.25 13.6997 5.13895 11.5536 6.72129 9.97129C8.30362 8.38895 10.4497 7.5 12.6875 7.5C16.2172 7.5 19.2406 9.42344 20.5 12.5C21.7594 9.42344 24.7828 7.5 28.3125 7.5C30.5503 7.5 32.6964 8.38895 34.2787 9.97129C35.8611 11.5536 36.75 13.6997 36.75 15.9375C36.75 26.25 20.5 35 20.5 35Z" stroke="black" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"></path> 1728</g> 1729<defs> 1730<clipPath id="clip0_2022_5166"> 1731<rect width="40" height="40" fill="white" transform="translate(0.5)"></rect> 1732</clipPath> 1733</defs> 1734</svg> 1735</div> 1736<div id="x-1beljuqn" class="x-section x-1beljuqn x-animation-pageload x-animation-pageload:xFadeIn"><div class="x-container-full x-layout-grid"><div id="x-wl905vhu" class="x-layout-none x-grid x-wl905vhu x-element sm:x-grid-1 md:x-grid-2 x-grid-2" style="--x-column-gap: 0px; --x-md-column-gap: 0px; --x-sm-column-gap: 0px; --x-row-gap: 32px; --x-md-row-gap: 24px; --x-sm-row-gap: 0px;"><div id="x-3321f7ta" class="x-layout-auto x-cell x-3321f7ta x-element x-animation-pageload x-animation-pageload:xFadeInUp"><h2 id="x-xckb1uhj" class="x-layout-none x-text x-xckb1uhj x-element x-rte"> 1737Kids Craft Club in Monmouth County</h2><p id="x-xlgz8vma" class="x-layout-none x-text x-xlgz8vma x-element x-rte"> 1738Join us for the launch of our brand new Kids version of our Craft Club at Fleur de Mer in Ocean Township. This relaxed crafting morning is designed for young creatives to make something special.</p><a id="x-fbjiirw6" href="#x-vzalgnia" class="x-layout-none x-button x-fbjiirw6 x-element"><span> 1739Register Now</span></a></div><div id="x-7z7i2iht" class="x-layout-auto x-cell x-7z7i2iht x-element x-animation-pageload x-animation-pageload:xFadeIn"><div id="x-s1skf80s" class="x-layout-none x-image-element x-s1skf80s x-element x-image--fill"><x-image class="x-image" data-priority="auto"><img srcset="https://cdn.shopify.com/s/files/1/0731/7730/1270/files/dragos-gontariu-54VAb3f1z6w-unsplash.jpg?v=1766786567&width=165 165w, https://cdn.shopify.com/s/files/1/0731/7730/1270/files/dragos-gontariu-54VAb3f1z6w-unsplash.jpg?v=1766786567&width=360 360w, https://cdn.shopify.com/s/files/1/0731/7730/1270/files/dragos-gontariu-54VAb3f1z6w-unsplash.jpg?v=1766786567&width=533 533w, https://cdn.shopify.com/s/files/1/0731/7730/1270/files/dragos-gontariu-54VAb3f1z6w-unsplash.jpg?v=1766786567&width=720 720w, https://cdn.shopify.com/s/files/1/0731/7730/1270/files/dragos-gontariu-54VAb3f1z6w-unsplash.jpg?v=1766786567&width=940 940w, https://cdn.shopify.com/s/files/1/0731/7730/1270/files/dragos-gontariu-54VAb3f1z6w-unsplash.jpg?v=1766786567&width=1066 1066w, https://cdn.shopify.com/s/files/1/0731/7730/1270/files/dragos-gontariu-54VAb3f1z6w-unsplash.jpg?v=1766786567&width=1500 1500w, https://cdn.shopify.com/s/files/1/0731/7730/1270/files/dragos-gontariu-54VAb3f1z6w-unsplash.jpg?v=1766786567&width=1780 1780w, https://cdn.shopify.com/s/files/1/0731/7730/1270/files/dragos-gontariu-54VAb3f1z6w-unsplash.jpg?v=1766786567&width=2000 2000w, https://cdn.shopify.com/s/files/1/0731/7730/1270/files/dragos-gontariu-54VAb3f1z6w-unsplash.jpg?v=1766786567&width=3000 3000w, https://cdn.shopify.com/s/files/1/0731/7730/1270/files/dragos-gontariu-54VAb3f1z6w-unsplash.jpg?v=1766786567&width=3840 3840w, https://cdn.shopify.com/s/files/1/0731/7730/1270/files/dragos-gontariu-54VAb3f1z6w-unsplash.jpg?v=1766786567 4288w" src="//cdn.shopify.com/s/files/1/0731/7730/1270/files/dragos-gontariu-54VAb3f1z6w-unsplash_360x.jpg?v=1766786567" sizes="(min-width: 1200px) 533px, (min-width: 990px) calc((100vw - 130px) / 3), (min-width: 750px) calc((100vw - 120px) / 2), calc((100vw - 35px) / 2)" alt="dragos-gontariu-54VAb3f1z6w-unsplash.jpg" loading="lazy" width="4288" height="2848" fetchpriority="auto"></x-image></div></div></div></div></div><div id="x-gf6bygyn" class="x-section x-gf6bygyn" style="--x-container-width: 1240px;"><div class="x-container-custom x-layout-grid"><div id="x-1y2vlp6f" class="x-layout-none x-grid x-1y2vlp6f x-element sm:x-grid-1 md:x-grid-2 x-grid-7" style="--x-column-gap: 32px; --x-md-column-gap: 24px; --x-sm-column-gap: 16px; --x-row-gap: 32px; --x-md-row-gap: 24px; --x-sm-row-gap: 48px;"><div id="x-8whh4mm7" class="x-layout-auto x-cell x-8whh4mm7 x-element x-tablet-hidden"><div id="x-2p3zn56i" class="x-layout-none x-image-element x-2p3zn56i x-element x-animation-entrance x-animation-entrance:xFadeInUp x-image--fill"><x-image class="x-image" data-priority="auto"><img srcset="https://cdn.shopify.com/s/files/1/0731/7730/1270/files/Untitled_design_67.png?v=1766809854&width=165 165w, https://cdn.shopify.com/s/files/1/0731/7730/1270/files/Untitled_design_67.png?v=1766809854&width=360 360w, https://cdn.shopify.com/s/files/1/0731/7730/1270/files/Untitled_design_67.png?v=1766809854&width=533 533w, https://cdn.shopify.com/s/files/1/0731/7730/1270/files/Untitled_design_67.png?v=1766809854&width=720 720w, https://cdn.shopify.com/s/files/1/0731/7730/1270/files/Untitled_design_67.png?v=1766809854&width=940 940w, https://cdn.shopify.com/s/files/1/0731/7730/1270/files/Untitled_design_67.png?v=1766809854&width=1066 1066w, https://cdn.shopify.com/s/files/1/0731/7730/1270/files/Untitled_design_67.png?v=1766809854&width=1500 1500w, https://cdn.shopify.com/s/files/1/0731/7730/1270/files/Untitled_design_67.png?v=1766809854&width=1780 1780w, https://cdn.shopify.com/s/files/1/0731/7730/1270/files/Untitled_design_67.png?v=1766809854 1905w" src="//cdn.shopify.com/s/files/1/0731/7730/1270/files/Untitled_design_67_360x.png?v=1766809854" sizes="(min-width: 1200px) 533px, (min-width: 990px) calc((100vw - 130px) / 3), (min-width: 750px) calc((100vw - 120px) / 2), calc((100vw - 35px) / 2)" alt="Untitled design (67).png" loading="lazy" width="1905" height="2254" fetchpriority="auto"></x-image></div></div><div id="x-crtm5xnw" class="x-layout-auto x-cell x-crtm5xnw x-element x-animation-entrance x-animation-entrance:xFadeInUp">
1739<p id="x-avo14im8" class="x-layout-none x-text x-avo14im8 x-element x-rte"> 1740CRAFT WITH LOVE</p><h2 id="x-pd159a0e" class="x-layout-none x-text x-pd159a0e x-element x-rte"> 1741A creative, welcoming activity for young kids in Ocean Township</h2><div id="x-84yogzgy" class="x-layout-none x-text x-84yogzgy x-element x-rte"> 1742<p>Kids Craft Club at Fleur de Mer is a gentle, relaxed crafting experience designed for young children and their grown ups. Hosted in our Ocean Township flower shop, this club offers a cozy way for kids to create something fun with their hands, enjoy a bit of structure, and spend time in a calm, community focused space.</p><p>Families join us from across Monmouth County, including Ocean Township, Asbury Park, Eatontown, Red Bank, Long Branch, and surrounding areas. Whether you are looking for a weekday or weekend activity, Kids Craft Club is meant to feel easy, joyful, and low pressure.</p></div><div id="x-9ly8juo1" class="x-layout-none x-divider x-9ly8juo1 x-element"><div class="x-divider__line" style="--x-divider-width: 1px; --x-divider-style: solid; --x-divider-color: rgba(237, 237, 237, 1);"></div></div></div></div></div></div><div id="x-vr4t3a0d" class="x-section x-vr4t3a0d x-mobile-hidden x-tablet-hidden"><div class="x-container-full x-layout-grid"><div id="x-xa4wc4fa" class="x-layout-auto x-stack x-xa4wc4fa x-element"><h2 id="x-qpgtt8xe" class="x-layout-none x-text x-qpgtt8xe x-element x-rte"> 1743<span style="text-transform: capitalize;">Pricing</span></h2><div id="x-ccuymf0s" class="x-layout-none x-text x-ccuymf0s x-element x-rte"> 1744<p><span contenteditable="false">$15 per child</span><br><span contenteditable="false">Additional siblings are $12 each</span></p><p></p><p>Each child participating needs their own ticket.</p><p><span contenteditable="false">If a sibling attends and chooses to participate without being registered in advance, you will be asked to pay for their materials at the end of class</span>.</p></div></div><div id="x-nbyqb3is" class="x-layout-auto x-stack x-nbyqb3is x-element"><span id="x-mz9mtmlj" class="x-layout-none x-icon x-mz9mtmlj x-element"><svg width="41" height="40" viewBox="0 0 41 40" fill="none" xmlns="http://www.w3.org/2000/svg" class="f-icon-uploaded f-icon-Heart.svg"><use href="#1786939949knn7U"></use></svg> 1745</span><h2 id="x-w5l4lbay" class="x-layout-none x-text x-w5l4lbay x-element x-rte"> 1746<span style="text-transform: capitalize;">Who Kids Craft Club is For</span></h2><div id="x-5rh0cc7z" class="x-layout-none x-text x-5rh0cc7z x-element x-rte"> 1747Recommended for children ages 3 to 7.<br><br><span contenteditable="false">A parent or guardian must remain on site and supervise their child for the duration of the session.</span><span contenteditable="false"></span></div></div></div></div><div id="x-cn0syokf" class="x-section x-cn0syokf x-desk-hidden"><div class="x-container-full x-layout-grid"><div id="x-8v5810qz" class="x-layout-auto x-stack x-8v5810qz x-element"><h2 id="x-ge0pzdjm" class="x-layout-none x-text x-ge0pzdjm x-element x-rte"> 1748<span style="text-transform: capitalize;">Pricing</span></h2><div id="x-9do8tggg" class="x-layout-none x-text x-9do8tggg x-element x-rte"> 1749<p><span contenteditable="false">$15 per child</span><br><span contenteditable="false">Additional siblings are $12 each</span></p><p></p><p>Each child participating needs their own ticket.</p><p><span contenteditable="false">If a sibling attends and chooses to participate without being registered in advance, you will be asked to pay for their materials at the end of class</span>.</p></div></div><div id="x-fz5sfztb" class="x-layout-auto x-stack x-fz5sfztb x-element"><span id="x-ilxegkpd" class="x-layout-none x-icon x-ilxegkpd x-element"><svg width="41" height="40" viewBox="0 0 41 40" fill="none" xmlns="http://www.w3.org/2000/svg" class="f-icon-uploaded f-icon-Heart.svg"><use href="#1786939949knn7U"></use></svg> 1750</span><h2 id="x-lhb15ju2" class="x-layout-none x-text x-lhb15ju2 x-element x-rte"> 1751<span style="text-transform: capitalize;">Who Kids Craft Club is For</span></h2><div id="x-9cs99csl" class="x-layout-none x-text x-9cs99csl x-element x-rte"> 1752Recommended for children ages 3 to 7.<br><br><span contenteditable="false">A parent or guardian must remain on site and supervise their child for the duration of the session.</span><span contenteditable="false"></span></div></div></div></div><div id="x-li2hoxay" class="x-section x-li2hoxay x-mobile-hidden x-tablet-hidden" style="--x-container-width: 1240px;"><div class="x-container-custom x-layout-grid"><div id="x-aemce74c" class="x-layout-none x-image-element x-aemce74c x-element x-image--fill"><x-image class="x-image" data-priority="auto"><img srcset="https://cdn.shopify.com/s/files/1/0731/7730/1270/files/Untitled_1270_x_941_px.png?v=1766810355&width=165 165w, https://cdn.shopify.com/s/files/1/0731/7730/1270/files/Untitled_1270_x_941_px.png?v=1766810355&width=360 360w, https://cdn.shopify.com/s/files/1/0731/7730/1270/files/Untitled_1270_x_941_px.png?v=1766810355&width=533 533w, https://cdn.shopify.com/s/files/1/0731/7730/1270/files/Untitled_1270_x_941_px.png?v=1766810355&width=720 720w, https://cdn.shopify.com/s/files/1/0731/7730/1270/files/Untitled_1270_x_941_px.png?v=1766810355&width=940 940w, https://cdn.shopify.com/s/files/1/0731/7730/1270/files/Untitled_1270_x_941_px.png?v=1766810355&width=1066 1066w, https://cdn.shopify.com/s/files/1/0731/7730/1270/files/Untitled_1270_x_941_px.png?v=1766810355 1270w" src="//cdn.shopify.com/s/files/1/0731/7730/1270/files/Untitled_1270_x_941_px_360x.png?v=1766810355" sizes="(min-width: 1200px) 533px, (min-width: 990px) calc((100vw - 130px) / 3), (min-width: 750px) calc((100vw - 120px) / 2), calc((100vw - 35px) / 2)" alt="Untitled (1270 x 941 px).png" loading="lazy" width="1270" height="941" fetchpriority="auto"></x-image></div><div id="x-8pk6vevy" class="x-layout-auto x-stack x-8pk6vevy x-element"><h2 id="x-bir0lli8" class="x-layout-none x-text x-bir0lli8 x-element x-rte"> 1753What to expect at Kids Craft Club</h2><div id="x-ypgrvnm1" class="x-layout-none x-text x-ypgrvnm1 x-element x-rte"> 1754<p><span contenteditable="false">Kids Craft Club is meant to feel relaxed, creative, and easygoing.</span></p><p><span contenteditable="false">Each session includes:</span></p><p><span contenteditable="false">⢠A simple craft activity kids can work on with their grown up nearby</span><br><span contenteditable="false">⢠All materials provided</span><br><span contenteditable="false">⢠Time at the end to color or enjoy a low key game</span><br><span contenteditable="false">
1754⢠A cozy, structured setup inside our flower and gift shop</span><br><span contenteditable="false">⢠A small flower moment before heading out</span></p><p><span contenteditable="false">This is not a drop off class or a fully guided lesson. Parents and guardians stay with their children and can help as much or as little as their child needs.</span></p><p><span contenteditable="false">Before leaving, each child gets to pick one flower stem to take home as a sweet little keepsake from their visit.</span></p></div></div></div></div><div id="x-ipce8mc6" class="x-section x-ipce8mc6 x-desk-hidden" style="--x-container-width: 1240px;"><div class="x-container-custom x-layout-grid"><div id="x-imr8xuar" class="x-layout-auto x-stack x-imr8xuar x-element"><h2 id="x-ijijx4s5" class="x-layout-none x-text x-ijijx4s5 x-element x-rte"> 1755What to expect at Kids Craft Club</h2><div id="x-mt7l1ncq" class="x-layout-none x-text x-mt7l1ncq x-element x-rte"> 1756<p><span contenteditable="false">Kids Craft Club is meant to feel relaxed, creative, and easygoing.</span></p><p><span contenteditable="false">Each session includes:</span></p><p><span contenteditable="false">⢠A simple craft activity kids can work on with their grown up nearby</span><br><span contenteditable="false">⢠All materials provided</span><br><span contenteditable="false">⢠Time at the end to color or enjoy a low key game</span><br><span contenteditable="false">⢠A cozy, structured setup inside our flower and gift shop</span><br><span contenteditable="false">⢠A small flower moment before heading out</span></p><p><span contenteditable="false">This is not a drop off class or a fully guided lesson. Parents and guardians stay with their children and can help as much or as little as their child needs.
1756</span></p><p><span contenteditable="false">Before leaving, each child gets to pick one flower stem to take home as a sweet little keepsake from their visit.</span></p></div></div></div></div><div id="x-vzalgnia" class="x-section x-vzalgnia"><div class="x-container x-layout-grid"> 1757 1758 </div></div><div id="x-ioxs0ysn" class="x-section x-ioxs0ysn" style="--x-container-width: 1170px;"><div class="x-container-custom x-layout-grid"><div id="x-xt91cxnb" class="x-layout-none x-grid x-xt91cxnb x-element sm:x-grid-1 md:x-grid-2 x-grid-2" style="--x-column-gap: 30px; --x-md-column-gap: 30px; --x-sm-column-gap: 16px; --x-row-gap: 32px; --x-md-row-gap: 24px; --x-sm-row-gap: 32px;"><div id="x-m4jc5rll" class="x-layout-auto x-cell x-m4jc5rll x-element"><h2 id="x-hubivk97" class="x-layout-none x-text x-hubivk97 x-element x-rte"> 1759Frequently Asked Questions</h2>
1759<script src="//fleurdemernj.com/cdn/shop/t/1/assets/foxify-collapsible.gen2.js?v=75497269705387513881770876991" defer=""></script>
1759<div id="x-h6xmfjic" class="x-layout-auto x-collapsible x-h6xmfjic x-element x-collapsible-tab--icon-angle"><div id="x-ep4esgmg" class="x-collapsible-content x-ep4esgmg x-element"><x-collapsible-tab class="x-collapsible__item" data-hide-if-empty="true" open="true" data-one-open="true"><div class="x-collapsible__button" data-trigger="true"><span> 1760Is Kids Craft Club a drop off class?</span><span class="x-collapsible__button-icon"><svg width="2" height="12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 1.333v9.334" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg><svg width="2" height="12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 1.333v9.334" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg></span></div><div class="x-collapsible__content-wrapper" data-content="true"><div class="x-collapsible__content x-layout-auto"><div id="x-m0pi9x4t" class="x-layout-none x-text x-m0pi9x4t x-element x-rte"> 1761No. Kids Craft Club is parent supervised. A parent or guardian must stay with their child for the entire session and can help as much or as little as needed.</div></div></div></x-collapsible-tab></div><div id="x-jq5kp4u9" class="x-collapsible-content x-jq5kp4u9 x-element"><x-collapsible-tab class="x-collapsible__item" data-hide-if-empty="true" data-one-open="true"><div class="x-collapsible__button" data-trigger="true"><span> 1762What if my child wants help with the craft?</span><span class="x-collapsible__button-icon"><svg width="2" height="12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 1.333v9.334" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg><svg width="2" height="12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 1.333v9.334" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg></span></div><div class="x-collapsible__content-wrapper" data-content="true"><div class="x-collapsible__content x-layout-auto"><div id="x-czxtibj7" class="x-layout-none x-text x-czxtibj7 x-element x-rte"> 1763Thatâs totally expected. This is a relaxed, casual activity. Parents are encouraged to assist their child and let them explore at their own pace!</div></div></div></x-collapsible-tab></div><div id="x-f7wjjes1" class="x-collapsible-content x-f7wjjes1 x-element"><x-collapsible-tab class="x-collapsible__item" data-hide-if-empty="true" data-one-open="true"><div class="x-collapsible__button" data-trigger="true"><span> 1764What if my child doesnât finish the craft?</span><span class="x-collapsible__button-icon"><svg width="2" height="12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 1.333v9.334" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg><svg width="2" height="12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 1.333v9.334" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg></span></div><div class="x-collapsible__content-wrapper" data-content="true"><div class="x-collapsible__content x-layout-auto"><p id="x-9c0208lb" class="x-layout-none x-text x-9c0208lb x-element x-rte"> 1765No problem at all. There is no pressure to finish. Kids can take their project home to complete if theyâd like with the exception of materials that must remain at the shop such as markers, crayons, glue etc. </p></div></div></x-collapsible-tab></div><div id="x-xhx3papz" class="x-collapsible-content x-xhx3papz x-element"><x-collapsible-tab class="x-collapsible__item" data-hide-if-empty="true" data-one-open="true"><div class="x-collapsible__button" data-trigger="true"><span> 1766What if my child or I am sick?</span><span class="x-collapsible__button-icon"><svg width="2" height="12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 1.333v9.334" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg><svg width="2" height="12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 1.333v9.334" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg></span></div><div class="x-collapsible__content-wrapper" data-content="true"><div class="x-collapsible__content x-layout-auto"><div id="x-ngvflby8" class="x-layout-none x-text x-ngvflby8 x-element x-rte"> 1767If you or your child are feeling unwell, please skip the session and join us another time to help keep the space healthy for everyone.</div></div></div></x-collapsible-tab></div><div id="x-0fsfxfzr" class="x-collapsible-content x-0fsfxfzr x-element"><x-collapsible-tab class="x-collapsible__item" data-hide-if-empty="true" data-one-open="true"><div class="x-collapsible__button" data-trigger="true"><span> 1768Where do I park and is there a restroom?</span><span class="x-collapsible__button-icon"><svg width="2" height="12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 1.333v9.334" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg><svg width="2" height="12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 1.333v9.334" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg></span></div><div class="x-collapsible__content-wrapper" data-content="true"><div class="x-collapsible__content x-layout-auto"><div id="x-c2pv7qyn" class="x-layout-none x-text x-c2pv7qyn x-element x-rte"> 1769<p>Free parking is available in our plaza and we do have a restroom on site.</p><p></p></div></div></div></x-collapsible-tab></div><div id="x-svhbjvlg" class="x-collapsible-content x-svhbjvlg x-element"><x-collapsible-tab class="x-collapsible__item" data-hide-if-empty="true" data-one-open="true"><div class="x-collapsible__button" data-trigger="true"><span> 1770What is the cancellation or weather policy?</span><span class="x-collapsible__button-icon"><svg width="2" height="12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 1.333v9.334" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg><svg width="2" height="12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 1.333v9.334" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg></span></div><div class="x-collapsible__content-wrapper" data-content="true"><div class="x-collapsible__content x-layout-auto"><div id="x-mbmi5fmf" class="x-layout-none x-text x-mbmi5fmf x-element x-rte"> 1771<p>Because materials are purchased in advance, tickets are non refundable. If a session is canceled due to weather, you will receive credit to use toward a future Kids Craft Club date. </p><p></p></div></div></div></x-collapsible-tab></div><div id="x-fdtzq2p8" class="x-collapsible-content x-fdtzq2p8 x-element"><x-collapsible-tab class="x-collapsible__item" data-hide-if-empty="true" data-one-open="true"><div class="x-collapsible__button" data-trigger="true"><span> 1772What if I bring a sibling who wasnât registered?</span><span class="x-collapsible__button-icon"><svg width="2" height="12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 1.333v9.334" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg><svg width="2" height="12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 1.333v9.334" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg></span></div><div class="x-collapsible__content-wrapper" data-content="true"><div class="x-collapsible__content x-layout-auto"><div id="x-lzrhq82m" class="x-layout-none x-text x-lzrhq82m x-element x-rte"> 1773<p>Each child participating needs their own ticket. If a sibling cho
1773oses to participate without being registered in advance, you will be asked to pay for their materials at the end of class, pending availability.</p><p></p></div></div></div></x-collapsible-tab></div></div></div><div id="x-uc59d84h" class="x-layout-auto x-cell x-uc59d84h x-element"><div id="x-ylagzyyp" class="x-layout-none x-image-element x-ylagzyyp x-element x-image--fill"><x-image class="x-image" data-priority="auto"><img srcset="https://cdn.shopify.com/s/files/1/0731/7730/1270/files/Untitled_design_68.png?v=1766813520&width=165 165w, https://cdn.shopify.com/s/files/1/0731/7730/1270/files/Untitled_design_68.png?v=1766813520&width=360 360w, https://cdn.shopify.com/s/files/1/0731/7730/1270/files/Untitled_design_68.png?v=1766813520&width=533 533w, https://cdn.shopify.com/s/files/1/0731/7730/1270/files/Untitled_design_68.png?v=1766813520&width=720 720w, https://cdn.shopify.com/s/files/1/0731/7730/1270/files/Untitled_design_68.png?v=1766813520 940w" src="//cdn.shopify.com/s/files/1/0731/7730/1270/files/Untitled_design_68_360x.png?v=1766813520" sizes="(min-width: 1200px) 533px, (min-width: 990px) calc((100vw - 130px) / 3), (min-width: 750px) calc((100vw - 120px) / 2), calc((100vw - 35px) / 2)" alt="Untitled design (68).png" loading="lazy" width="940" height="1260" fetchpriority="auto"></x-image></div></div></div></div></div><div id="x-vbaanr8l" class="x-section x-vbaanr8l"><div class="x-container x-layout-grid"><div id="x-sl7hls7f" class="x-layout-auto x-stack x-sl7hls7f x-element"><h2 id="x-vv4zecu1" class="x-layout-none x-text x-vv4zecu1 x-element x-rte"> 1774Stay in the loop</h2><div id="x-t2np0xvy" class="x-layout-none x-text x-t2np0xvy x-element x-rte"> 1775<p>Want to be the first to hear about new Kids Craft Club dates and seasonal craft themes?</p><p></p><p><span contenteditable="false">Join our email list for updates and early access to registration.</span></p></div><div id="x-gqn1wt6e" class="x-layout-none x-subscribe-form x-gqn1wt6e x-element"><div class="x-subscribe-form__wrapper x-h-full x-w-full"><form method="post" action="/contact#Subscribe-x-gqn1wt6e" id="Subscribe-x-gqn1wt6e" accept-charset="UTF-8" class="x-form__wrapper"><input type="hidden" name="form_type" value="customer" /><input type="hidden" name="utf8" value="â" /><input type="hidden" name="contact[tags]" value="newsletter"><label class="x-visually-hidden" for="Subscribe-x-gqn1wt6e-email">Email</label><div class="x-subscribe-form__form x-flex x-h-full"><input type="email" name="contact[email]" id="Subscribe-x-gqn1wt6e-email" placeholder=" 1776Enter your email" autocorrect="off" autocapitalize="off" class="x-form-control" required="" value=""><button type="submit" class="x-subscribe-form__button x-button" aria-label=" 1777Subscribe"><span class="x-subscribe-form__button-label"> 1778Subscribe</span></button></div></form></div></div></div></div></div>
1779<script data-foxify-custom-code-page="js" defer></script>
1779 1780 1781 1782</div> 1783 1784 </div> 1785 </main> 1786 1787 1788<!-- BEGIN sections: footer-group --> 1789<section id="shopify-section-sections--18181486215446__1691098465fea8f156" class="shopify-section shopify-section-group-footer-group section"><div class="page-width"></div> 1790 1791 1792</section><div id="shopify-section-sections--18181486215446__footer" class="shopify-section shopify-section-group-footer-group"> 1793<link href="//fleurdemernj.com/cdn/shop/t/1/assets/section-footer.css?v=29640687956118599371678481360" rel="stylesheet" type="text/css" media="all" /> 1794<link rel="stylesheet" href="//fleurdemernj.com/cdn/shop/t/1/assets/component-newsletter.css?v=103472482056003053551678481338" media="print" onload="this.media='all'"> 1795<link rel="stylesheet" href="//fleurdemernj.com/cdn/shop/t/1/assets/component-list-menu.css?v=151968516119678728991678481334" media="print" onload="this.media='all'"> 1796<link rel="stylesheet" href="//fleurdemernj.com/cdn/shop/t/1/assets/component-list-payment.css?v=69253961410771838501678481335" media="print" onload="this.media='all'"> 1797<link rel="stylesheet" href="//fleurdemernj.com/cdn/shop/t/1/assets/component-list-social.css?v=52211663153726659061678481335" media="print" onload="this.media='all'"> 1798<link rel="stylesheet" href="//fleurdemernj.com/cdn/shop/t/1/assets/component-rte.css?v=73443491922477598101678481342" media="print" onload="this.media='all'"> 1799<link rel="stylesheet" href="//fleurdemernj.com/cdn/shop/t/1/assets/disclosure.css?v=646595190999601341678481347" media="print" onload="this.media='all'"> 1800 1801<noscript><link href="//fleurdemernj.com/cdn/shop/t/1/assets/component-newsletter.css?v=103472482056003053551678481338" rel="stylesheet" type="text/css" media="all" /></noscript> 1802<noscript><link href="//fleurdemernj.com/cdn/shop/t/1/assets/component-list-menu.css?v=151968516119678728991678481334" rel="stylesheet" type="text/css" media="all" /></noscript> 1803<noscript><link href="//fleurdemernj.com/cdn/shop/t/1/assets/component-list-payment.css?v=69253961410771838501678481335" rel="stylesheet" type="text/css" media="all" /></noscript> 1804<noscript><link href="//fleurdemernj.com/cdn/shop/t/1/assets/component-list-social.css?v=52211663153726659061678481335" rel="stylesheet" type="text/css" media="all" /></noscript> 1805<noscript><link href="//fleurdemernj.com/cdn/shop/t/1/assets/component-rte.css?v=73443491922477598101678481342" rel="stylesheet" type="text/css" media="all" /></noscript> 1806<noscript><link href="//fleurdemernj.com/cdn/shop/t/1/assets/disclosure.css?v=646595190999601341678481347" rel="stylesheet" type="text/css" media="all" /></noscript><style data-shopify>.footer { 1807 margin-top: 36px; 1808 } 1809 1810 .section-sections--18181486215446__footer-padding { 1811 padding-top: 27px; 1812 padding-bottom: 27px; 1813 } 1814 1815 @media screen and (min-width: 750px) { 1816 .footer { 1817 margin-top: 48px; 1818 } 1819 1820 .section-sections--18181486215446__footer-padding { 1821 padding-top: 36px; 1822 padding-bottom: 36px; 1823 } 1824 }</style><footer class="footer color-background-1 gradient section-sections--18181486215446__footer-padding"><div class="footer__content-top page-width"><div class="footer__blocks-wrapper grid grid--1-col grid--2-col grid--4-col-tablet "><div class="footer-block grid__item" ><h2 class="footer-block__heading">Fleur de Mer Flower Bar & Boutique</h2><div class="footer-block__details-content rte"> 1825 <p>3316 Sunset Ave. Ocean NJ 07712 </p><p>200 Monmouth St. Red Bank NJ 07701 </p><p>Call or text 732-998-0715 | Email: [email protected]</p> 1826 </div></div></div><div class="footer-block--newsletter"><div class="footer-block__newsletter"><h2 class="footer-block__heading">Subscribe to our emails</h2><form method="post" action="/contact#ContactFooter" id="ContactFooter" accept-charset="UTF-8" class="footer__newsletter newsletter-form"><input type="hidden" name="form_type" value="customer" /><input type="hidden" name="utf8" value="â" /><input type="hidden" name="contact[tags]" value="newsletter"> 1827 <div class="newsletter-form__field-wrapper"> 1828 <div class="field"> 1829 <input 1830 id="NewsletterForm--sections--18181486215446__footer" 1831 type="email" 1832 name="contact[email]" 1833 class="field__input" 1834 value="" 1835 aria-required="true" 1836 autocorrect="off" 1837 autocapitalize="off" 1838 autocomplete="email" 1839 1840 placeholder="Email" 1841 required 1842 > 1843 <label class="field__label" for="NewsletterForm--sections--18181486215446__footer"> 1844 Email 1845 </label> 1846 <button type="submit" class="newsletter-form__button field__button" name="commit" id="Subscribe" aria-label="Subscribe"> 1847 <svg 1848 viewBox="0 0 14 10" 1849 fill="none" 1850 aria-hidden="true" 1851 focusable="false" 1852 class="icon icon-arrow" 1853 xmlns="http://www.w3.org/2000/svg" 1854> 1855 <path fill-rule="evenodd" clip-rule="evenodd" d="M8.537.808a.5.5 0 01.817-.162l4 4a.5.5 0 010 .708l-4 4a.5.5 0 11-.708-.708L11.793 5.5H1a.5.5 0 010-1h10.793L8.646 1.354a.5.5 0 01-.109-.546z" fill="currentColor"> 1856</svg> 1857 1858 </button> 1859 </div></div></form></div><ul class="footer__list-social list-unstyled list-social"><li class="list-social__item"> 1860 <a href="https://www.facebook.com/fleurdemernj" class="link list-social__link" ><svg aria-hidden="true" focusable="false" class="icon icon-facebook" viewB
1860ox="0 0 18 18"> 1861 <path fill="currentColor" d="M16.42.61c.27 0 .5.1.69.28.19.2.28.42.28.7v15.44c0 .27-.1.5-.28.69a.94.94 0 01-.7.28h-4.39v-6.7h2.25l.31-2.65h-2.56v-1.7c0-.4.1-.72.28-.93.18-.2.5-.32 1-.32h1.37V3.35c-.6-.06-1.27-.1-2.01-.1-1.01 0-1.83.3-2.45.9-.62.6-.93 1.44-.93 2.53v1.97H7.04v2.65h2.24V18H.98c-.28 0-.5-.1-.7-.28a.94.94 0 01-.28-.7V1.59c0-.27.1-.5.28-.69a.94.94 0 01.7-.28h15.44z"> 1862</svg> 1863<span class="visually-hidden">Facebook</span> 1864 </a> 1865 </li><li class="list-social__item"> 1866 <a href="https://www.instagram.com/fleurdemernj/" class="link list-social__link" ><svg aria-hidden="true" focusable="false" class="icon icon-instagram" viewBox="0 0 18 18"> 1867 <path fill="currentColor" d="M8.77 1.58c2.34 0 2.62.01 3.54.05.86.04 1.32.18 1.63.3.41.17.7.35 1.01.66.3.3.5.6.65 1 .12.32.27.78.3 1.64.05.92.06 1.2.06 3.54s-.01 2.62-.05 3.54a4.79 4.79 0 01-.3 1.63c-.17.41-.35.7-.66 1.01-.3.3-.6.5-1.01.66-.31.12-.77.26-1.63.3-.92.04-1.2.05-3.54.05s-2.62 0-3.55-.05a4.79 4.79 0 01-1.62-.3c-.42-.16-.7-.35-1.01-.66-.31-.3-.5-.6-.66-1a4.87 4.87 0 01-.3-1.64c-.04-.92-.05-1.2-.05-3.54s0-2.62.05-3.54c.04-.86.18-1.32.3-1.63.16-.41.35-.7.66-1.01.3-.3.6-.5 1-.65.32-.12.78-.27 1.63-.3.93-.05 1.2-.06 3.55-.06zm0-1.58C6.39 0 6.09.01 5.15.05c-.93.04-1.57.2-2.13.4-.57.23-1.06.54-1.55 1.02C1 1.96.7 2.45.46 3.02c-.22.56-.37 1.2-.4 2.13C0 6.1 0 6.4 0 8.77s.01 2.68.05 3.61c.04.94.2 1.57.4 2.13.23.58.54 1.07 1.02 1.56.49.48.98.78 1.55 1.01.56.22 1.2.37 2.13.4.94.05 1.24.06 3.62.06 2.39 0 2.68-.01 3.62-.05.93-.04 1.57-.2 2.13-.41a4.27 4.27 0 001.55-1.01c.49-.49.79-.98 1.01-1.56.22-.55.37-1.19.41-2.13.04-.93.05-1.23.05-3.61 0-2.39 0-2.68-.05-3.62a6.47 6.47 0 00-.4-2.13 4.27 4.27 0 00-1.02-1.55A4.35 4.35 0 0014.52.46a6.43 6.43 0 00-2.13-.41A69 69 0 008.77 0z"/> 1868 <path fill="currentColor" d="M8.8 4a4.5 4.5 0 100 9 4.5 4.5 0 000-9zm0 7.43a2.92 2.92 0 110-5.85 2.92 2.92 0 010 5.85zM13.43 5a1.05 1.05 0 100-2.1 1.05 1.05 0 000 2.1z"> 1869</svg> 1870<span class="visually-hidden">Instagram</span> 1871 </a> 1872 </li></ul></div> 1873 </div><div class="footer__content-bottom"> 1874 <div class="footer__content-bottom-wrapper page-width"> 1875 <div class="footer__column footer__localization isolate"></div> 1876 <div class="footer__column footer__column--info"><div class="footer__payment"> 1877 <span class="visually-hidden">Payment methods</span> 1878 <ul class="list list-payment" role="list"><li class="list-payment__item"> 1879 <svg class="icon icon--full-color" xmlns="http://www.w3.org/2000/svg" role="img" viewBox="0 0 38 24" width="38" height="24" fill="none" aria-labelledby="pi-american_express"><title id="pi-american_express">American Express</title><rect x=".5" y=".5" width="37" height="23" rx="2.5" stroke="#000" stroke-opacity=".07" fill="none"/><path d="M35 0H3C1.3 0 0 1.3 0 3V21C0 22.7 1.4 24 3 24H35C36.7 24 38 22.7 38 21V3C38 1.3 36.6 0 35 0Z" fill="#0071CE" style="fill:#0071CE;fill:color(display-p3 0.0000 0.4431 0.8078);fill-opacity:1;"/><path d="M3 0.5H35C36.3348 0.5 37.5 1.58692 37.5 3V21C37.5 22.4239 36.4239 23.5 35 23.5H3C1.66524 23.5 0.5 22.4131 0.5 21V3C0.5 1.57614 1.57614 0.5 3 0.5Z" stroke="black" stroke-opacity="0.07" style="stroke:black;stroke-opacity:0.07;"/><path d="M25.8662 6.33203V3H31L31.8662 5.5332L32.7334 3H37V14.2002H36.7998L34.8672 16.2656L36.7998 18.3594H37V21.2666H33.5996L31.9336 19.3994L30.2002 21.2666H19.4668V12.666H16L20.2666 3H24.4004L25.8662 6.33203ZM20.5996 20.2656H27V18.5322H22.666V17.3994H26.8662V15.666H22.666V14.5322H27V12.7988H20.5996V20.2656ZM30.5332 16.5322L27 20.2656H29.5996L31.8662 17.8662L34.0664 20.2656H36.7324L33.1992 16.4658L36.7324 12.7988H34.1328L31.8662 15.1992L29.7324 12.7988H27L30.5332 16.5322ZM17.666 11.7324H19.9326L20.5332 10.1992H23.999L24.666 11.7324H26.999L23.666 4.19922H20.999L17.666 11.7324ZM33.5996 4.19922L31.9326 8.86621L30.1992 4.19922H27V11.666H29.0664V6.39941L31 11.666H32.7998L34.7324 6.39941V11.666H36.7324V4.13281L33.5996 4.19922ZM23.2656 8.46582H21.2656L22.2656 5.99902L23.2656 8.46582Z" fill="white" style="fill:white;fill-opacity:1;"/></svg> 1880 1881 </li><li class="list-payment__item"> 1882 <svg class="icon icon--full-color" version="1.1" xmlns="http://www.w3.org/2000/svg" role="img" x="0" y="0" width="38" height="24" viewBox="0 0 165.521 105.965" xml:space="preserve" aria-labelledby="pi-apple_pay"><title id="pi-apple_pay">Apple Pay</title><path fill="#000" d="M150.698 0H14.823c-.566 0-1.133 0-1.698.003-.477.004-.953.009-1.43.022-1.039.028-2.087.09-3.113.274a10.51 10.51 0 0 0-2.958.975 9.932 9.932 0 0 0-4.35 4.35 10.463 10.463 0 0 0-.975 2.96C.113 9.611.052 10.658.024 11.696a70.22 70.22 0 0 0-.022 1.43C0 13.69 0 14.256 0 14.823v76.318c0 .567 0 1.132.002 1.699.003.476.009.953.022 1.43.028 1.036.09 2.084.275 3.11a10.46 10.46 0 0 0 .974 2.96 9.897 9.897 0 0 0 1.83 2.52 9.874 9.874 0 0 0 2.52 1.83c.947.483 1.917.79 2.96.977 1.025.183 2.073.245 3.112.273.477.011.953.017 1.43.02.565.004 1.132.004 1.698.004h135.875c.565 0 1.132 0 1.697-.004.476-.002.952-.009 1.431-.02 1.037-.028 2.085-.09 3.113-.273a10.478 10.478 0 0 0 2.958-.977 9.955 9.955 0 0 0 4.35-4.35c.483-.947.789-1.917.974-2.96.186-1.026.246-2.074.274-3.11.013-.477.02-.954.022-1.43.004-.567.004-1.132.004-1.699V14.824c0-.567 0-1.133-.004-1.699a63.067 63.067 0 0 0-.022-1.429c-.028-1.038-.088-2.085-.274-3.112a10.4 10.4 0 0 0-.974-2.96 9.94 9.94 0 0 0-4.35-4.35A10.52 10.52 0 0 0 156.939.3c-1.028-.185-2.076-.246-3.113-.274a71.417 71.417 0 0 0-1.431-.022C151.83 0 151.263 0 150.698 0z" /><path fill="#FFF" d="M150.698 3.532l1.672.003c.452.003.905.008 1.36.02.793.022 1.719.065 2.583.22.75.135 1.38.34 1.984.648a6.392 6.392 0 0 1 2.804 2.807c.306.6.51 1.226.645 1.983.154.854.197 1.783.218 2.58.013.45.019.9.02 1.36.005.557.005 1.113.005 1.671v76.318c0 .558
18820 1.114-.004 1.682-.002.45-.008.9-.02 1.35-.022.796-.065 1.725-.221 2.589a6.855 6.855 0 0 1-.645 1.975 6.397 6.397 0 0 1-2.808 2.807c-.6.306-1.228.511-1.971.645-.881.157-1.847.2-2.574.22-.457.01-.912.017-1.379.019-.555.004-1.113.004-1.669.004H14.801c-.55 0-1.1 0-1.66-.004a74.993 74.993 0 0 1-1.35-.018c-.744-.02-1.71-.064-2.584-.22a6.938 6.938 0 0 1-1.986-.65 6.337 6.337 0 0 1-1.622-1.18 6.355 6.355 0 0 1-1.178-1.623 6.935 6.935 0 0 1-.646-1.985c-.156-.863-.2-1.788-.22-2.578a66.088 66.088 0 0 1-.02-1.355l-.003-1.327V14.474l.002-1.325a66.7 66.7 0 0 1 .02-1.357c.022-.792.065-1.717.222-2.587a6.924 6.924 0 0 1 .646-1.981c.304-.598.7-1.144 1.18-1.623a6.386 6.386 0 0 1 1.624-1.18 6.96 6.96 0 0 1 1.98-.646c.865-.155 1.792-.198 2.586-.22.452-.012.905-.017 1.354-.02l1.677-.003h135.875" /><g><g><path fill="#000" d="M43.508 35.77c1.404-1.755 2.356-4.112 2.105-6.52-2.054.102-4.56 1.355-6.012 3.112-1.303 1.504-2.456 3.959-2.156 6.266 2.306.2 4.61-1.152 6.063-2.858" /><path fill="#000" d="M45.587 39.079c-3.35-.2-6.196 1.9-7.795 1.9-1.6 0-4.049-1.8-6.698-1.751-3.447.05-6.645 2-8.395 5.1-3.598 6.2-.95 15.4 2.55 20.45 1.699 2.5 3.747 5.25 6.445 5.151 2.55-.1 3.549-1.65 6.647-1.65 3.097 0 3.997 1.65 6.696 1.6 2.798-.05 4.548-2.5 6.247-5 1.95-2.85 2.747-5.6 2.797-5.75-.05-.05-5.396-2.101-5.446-8.251-.05-5.15 4.198-7.6 4.398-7.751-2.399-3.548-6.147-3.948-7.447-4.048" /></g><g><path fill="#000" d="M78.973 32.11c7.278 0 12.347 5.017 12.347 12.321 0 7.33-5.173 12.373-12.529 12.373h-8.058V69.62h-5.822V32.11h14.062zm-8.24 19.807h6.68c5.07 0 7.954-2.729 7.954-7.46 0-4.73-2.885-7.434-7.928-7.434h-6.706v14.894z" /><path fill="#000" d="M92.764 61.847c0-4.809 3.665-7.564 10.423-7.98l7.252-.442v-2.08c0-3.04-2.001-4.704-5.562-4.704-2.938 0-5.07 1.507-5.51 3.82h-5.252c.157-4.86 4.731-8.395 10.918-8.395 6.654 0 10.995 3.483 10.995 8.89v18.663h-5.38v-4.497h-.13c-1.534 2.937-4.914 4.782-8.579 4.782-5.406 0-9.175-3.222-9.175-8.057zm17.675-2.417v-2.106l-6.472.416c-3.64.234-5.536 1.585-5.536 3.95 0 2.288 1.975 3.77 5.068 3.77 3.95 0 6.94-2.522 6.94-6.03z" /><path fill="#000" d="M120.975 79.652v-4.496c.364.051 1.247.103 1.715.103 2.573 0 4.029-1.09 4.913-3.899l.52-1.663-9.852-27.293h6.082l6.863 22.146h.13l6.862-22.146h5.927l-10.216 28.67c-2.34 6.577-5.017 8.735-10.683 8.735-.442 0-1.872-.052-2.261-.157z" /></g></g></svg> 1883 1884 </li><li class="list-payment__item"> 1885 <svg class="icon icon--full-color" viewBox="0 0 38 24" xmlns="http://www.w3.org/2000/svg" role="img" width="38" height="24" aria-labelledby="pi-diners_club"><title id="pi-diners_club">Diners Club</title><path opacity=".07" d="M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3z"/><path fill="#fff" d="M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32"/><path d="M12 12v3.7c0 .3-.2.3-.5.2-1.9-.8-3-3.3-2.3-5.4.4-1.1 1.2-2 2.3-2.4.4-.2.5-.1.5.2V12zm2 0V8.3c0-.3 0-.3.3-.2 2.1.8 3.2 3.3 2.4 5.4-.4 1.1-1.2 2-2.3 2.4-.4.2-.4.1-.4-.2V12zm7.2-7H13c3.8 0 6.8 3.1 6.8 7s-3 7-6.8 7h8.2c3.8 0 6.8-3.1 6.8-7s-3-7-6.8-7z" fill="#3086C8"/></svg> 1886 </li><li class="list-payment__item"> 1887 <svg class="icon icon--full-color" viewBox="0 0 38 24" width="38" height="24" role="img" aria-labelledby="pi-discover" fill="none" xmlns="http://www.w3.org/2000/svg"><title id="pi-discover">Discover</title><path fill="#000" opacity=".07" d="M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3z"/><path d="M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32z" fill="#fff"/><path d="M3.57 7.16H2v5.5h1.57c.83 0 1.43-.2 1.96-.63.63-.52 1-1.3 1-2.11-.01-1.63-1.22-2.76-2.96-2.76zm1.26 4.14c-.34.3-.77.44-1.47.44h-.29V8.1h.29c.69 0 1.11.12 1.47.44.37.33.59.84.59 1.37 0 .53-.22 1.06-.59 1.39zm2.19-4.14h1.07v5.5H7.02v-5.5zm3.69 2.11c-.64-.24-.83-.4-.83-.69 0-.35.34-.61.8-.61.32 0 .59.13.86.45l.56-.73c-.46-.4-1.01-.61-1.62-.61-.97 0-1.72.68-1.72 1.58 0 .76.35 1.15 1.35 1.51.42.15.63.25.74.31.21.14.32.34.32.57 0 .45-.35.78-.83.78-.51 0-.92-.26-1.17-.73l-.69.67c.49.73 1.09 1.05 1.9 1.05 1.11 0 1.9-.74 1.9-1.81.02-.89-.35-1.29-1.57-1.74zm1.92.65c0 1.62 1.27 2.87 2.9 2.87.46 0 .86-.09 1.34-.32v-1.26c-.43.43-.81.6-1.29.6-1.08 0-1.85-.78-1.85-1.9 0-1.06.79-1.89 1.8-1.89.51 0 .9.18 1.34.62V7.38c-.47-.24-.86-.34-1.32-.34-1.61 0-2.92 1.28-2.92 2.88zm12.76.94l-1.47-3.7h-1.17l2.33 5.64h.58l2.37-5.64h-1.16l-1.48 3.7zm3.13 1.8h3.04v-.93h-1.97v-1.48h1.9v-.93h-1.9V8.1h1.97v-.94h-3.04v5.5zm7.29-3.87c0-1.03-.71-1.62-1.95-1.62h-1.59v5.5h1.07v-2.21h.14l1.48 2.21h1.32l-1.73-2.32c.81-.17 1.26-.72 1.26-1.56zm-2.16.91h-.31V8.03h.33c.67 0 1.03.28 1.03.82 0 .55-.36.85-1.05.85z" fill="#231F20"/><path d="M20.16 12.86a2.931 2.931 0 100-5.862 2.931 2.931 0 000 5.862z" fill="url(#pi-paint0_linear)"/><path opacity=".65" d="M20.16 12.86a2.931 2.931 0 100-5.862 2.931 2.931 0 000 5.862z" fill="url(#pi-paint1_linear)"/><path d="M36.57 7.506c0-.1-.07-.15-.18-.15h-.16v.48h.12v-.19l.14.19h.14l-.16-.2c.06-.01.1-.06.1-.13zm-.2.07h-.02v-.13h.02c.06 0 .09.02.09.06 0 .05-.03.07-.09.07z" fill="#231F20"/><path d="M36.41 7.176c-.23 0-.42.19-.42.42 0 .23.19.42.42.42.23 0 .42-.19.42-.42 0-.23-.19-.42-.42-.42zm0 .77c-.18 0-.34-.15-.34-.35 0-.19.15-.35.34-.35.18 0 .33.16.33.35 0 .19-.15.35-.33.35z" fill="#231F20"/><path d="M37 12.984S27.09 19.873 8.976 23h26.023a2 2 0 002-1.984l.024-3.02L37 12.985z" fill="#F48120"/><defs><linearGradient id="pi-paint0_linear" x1="21.657" y1="12.275" x2="19.632" y2="9.104" gradientUnits="userSpaceOnUse"><stop stop-color="#F89F20"/><stop offset=".25" stop-color="#F79A20"/><stop offset=".533" stop-color="#F68D20"/><stop offset=".62" stop-color="#F58720"/><stop offset=".723" stop-color="#F48120"/><stop offset="1" stop-color="#F37521"/></linearGradient><linearGradient id="pi-paint1_linear" x1="21.338" y1="12.232" x2="18.378" y2="6.446" gradientUnits="userSpaceOnUse"><stop stop-color="#F58720"/><stop offset=".359" stop-color="#E16F27"/><stop offset=".703" stop-color="#D4602C"/><stop offset=".982" stop-color="#D05B2E"/></linearGradient></defs></svg> 1888 </li><li class="list-payment__item"> 1889 <svg class="icon icon--full-color" xmlns="http://www.w3.org/2000/svg" role="img" viewBox="0 0 38 24" width="38" height="24" aria-labelledby="pi-google_pay"><title id="pi-google_pay">Google Pay</title><path d="M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3z" fill="#000" opacity=".07"/><path d="M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32" fill="#FFF"/><path d="M18.093 11.976v3.2h-1.018v-7.9h2.691a2.447 2.447 0 0 1 1.747.692 2.28 2.28 0 0 1 .11 3.224l-.11.116c-.47.447-1.098.69-1.747.674l-1.673-.006zm0-3.732v2.788h1.698c.377.012.741-.135 1.005-.404a1.391 1.391 0 0 0-1.005-2.354l-1.698-.03zm6.484 1.348c.65-.03 1.286.188 1.778.613.445.43.682 1.03.65 1.649v3.334h-.969v-.766h-.049a1.93 1.93 0 0 1-1.673.931 2.17 2.17 0 0 1-1.496-.533 1.667 1.667 0 0 1-.613-1.324 1.606 1.606 0 0 1 .613-1.336 2.746 2.746 0 0 1 1.698-.515c.517-.02 1.03.093 1.49.331v-.208a1.134 1.134 0 0 0-.417-.901 1.416 1.416 0 0 0-.98-.368 1.545 1.545 0 0 0-1.319.717l-.895-.564a2.488 2.488 0 0 1 2.182-1.
188906zM23.29 13.52a.79.79 0 0 0 .337.662c.223.176.5.269.785.263.429-.001.84-.17 1.146-.472.305-.286.478-.685.478-1.103a2.047 2.047 0 0 0-1.324-.374 1.716 1.716 0 0 0-1.03.294.883.883 0 0 0-.392.73zm9.286-3.75l-3.39 7.79h-1.048l1.281-2.728-2.224-5.062h1.103l1.612 3.885 1.569-3.885h1.097z" fill="#5F6368"/><path d="M13.986 11.284c0-.308-.024-.616-.073-.92h-4.29v1.747h2.451a2.096 2.096 0 0 1-.9 1.373v1.134h1.464a4.433 4.433 0 0 0 1.348-3.334z" fill="#4285F4"/><path d="M9.629 15.721a4.352 4.352 0 0 0 3.01-1.097l-1.466-1.14a2.752 2.752 0 0 1-4.094-1.44H5.577v1.17a4.53 4.53 0 0 0 4.052 2.507z" fill="#34A853"/><path d="M7.079 12.05a2.709 2.709 0 0 1 0-1.735v-1.17H5.577a4.505 4.505 0 0 0 0 4.075l1.502-1.17z" fill="#FBBC04"/><path d="M9.629 8.44a2.452 2.452 0 0 1 1.74.68l1.3-1.293a4.37 4.37 0 0 0-3.065-1.183 4.53 4.53 0 0 0-4.027 2.5l1.502 1.171a2.715 2.715 0 0 1 2.55-1.875z" fill="#EA4335"/></svg> 1890 1891 </li><li class="list-payment__item"> 1892 <svg class="icon icon--full-color" xmlns="http://www.w3.org/2000/svg" role="img" viewBox="0 0 38 24" width="38" height="24" fill="none" aria-labelledby="pi-master"><title id="pi-master">Mastercard</title><rect x=".5" y=".5" width="37" height="23" rx="2.5" stroke="#000" stroke-opacity=".07" fill="none"/><path d="M35 0H3C1.3 0 0 1.3 0 3V21C0 22.7 1.4 24 3 24H35C36.7 24 38 22.7 38 21V3C38 1.3 36.6 0 35 0Z" fill="#1C1C1C" style="fill:#1C1C1C;fill:color(display-p3 0.1098 0.1098 0.1098);fill-opacity:1;"/><path d="M35 1C36.1 1 37 1.9 37 3V21C37 22.1 36.1 23 35 23H3C1.9 23 1 22.1 1 21V3C1 1.9 1.9 1 3 1H35Z" fill="#232323" style="fill:#232323;fill:color(display-p3 0.1373 0.1373 0.1373);fill-opacity:1;"/><path d="M14.6364 19.2727C18.8538 19.2727 22.2727 15.8538 22.2727 11.6364C22.2727 7.41892 18.8538 4 14.6364 4C10.4189 4 7 7.41892 7 11.6364C7 15.8538 10.4189 19.2727 14.6364 19.2727Z" fill="#EB001B" style="fill:#EB001B;fill:color(display-p3 0.9216 0.0000 0.1059);fill-opacity:1;"/><path d="M23.3637 19.2727C27.5811 19.2727 31 15.8538 31 11.6364C31 7.41892 27.5811 4 23.3637 4C19.1462 4 15.7273 7.41892 15.7273 11.6364C15.7273 15.8538 19.1462 19.2727 23.3637 19.2727Z" fill="#F79E1B" style="fill:#F79E1B;fill:color(display-p3 0.9686 0.6196 0.1059);fill-opacity:1;"/><path d="M22.2727 11.6362C22.2727 9.01797 20.9637 6.72706 19 5.41797C17.0364 6.83615 15.7273 9.12706 15.7273 11.6362C15.7273 14.1452 17.0364 16.5452 19 17.8543C20.9637 16.5452 22.2727 14.2543 22.2727 11.6362Z" fill="#FF5F00" style="fill:#FF5F00;fill:color(display-p3 1.0000 0.3725 0.0000);fill-opacity:1;"/></svg> 1893 1894 </li><li class="list-payment__item"> 1895 <svg class="icon icon--full-color" viewBox="0 0 38 24" xmlns="http://www.w3.org/2000/svg" width="38" height="24" role="img" aria-labelledby="pi-paypal"><title id="pi-paypal">PayPal</title><path opacity=".07" d="M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3z"/><path fill="#fff" d="M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32"/><path fill="#003087" d="M23.9 8.3c.2-1 0-1.7-.6-2.3-.6-.7-1.7-1-3.1-1h-4.1c-.3 0-.5.2-.6.5L14 15.6c0 .2.1.4.3.4H17l.4-3.4 1.8-2.2 4.7-2.1z"/><path fill="#3086C8" d="M23.9 8.3l-.2.2c-.5 2.8-2.2 3.8-4.6 3.8H18c-.3 0-.5.2-.6.5l-.6 3.9-.2 1c0 .2.1.4.3.4H19c.3 0 .5-.2.5-.4v-.1l.4-2.4v-.1c0-.2.3-.4.5-.4h.3c2.1 0 3.7-.8 4.1-3.2.2-1 .1-1.8-.4-2.4-.1-.5-.3-.7-.5-.8z"/><path fill="#012169" d="M23.3 8.1c-.1-.1-.2-.1-.3-.1-.1 0-.2 0-.3-.1-.3-.1-.7-.1-1.1-.1h-3c-.1 0-.2
18950-.2.1-.2.1-.3.2-.3.4l-.7 4.4v.1c0-.3.3-.5.6-.5h1.3c2.5 0 4.1-1 4.6-3.8v-.2c-.1-.1-.3-.2-.5-.2h-.1z"/></svg> 1896 </li><li class="list-payment__item"> 1897 <svg class="icon icon--full-color" xmlns="http://www.w3.org/2000/svg" role="img" viewBox="0 0 38 24" width="38" height="24" aria-labelledby="pi-shopify_pay"><title id="pi-shopify_pay">Shop Pay</title><path opacity=".07" d="M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3z" fill="#000"/><path d="M35.889 0C37.05 0 38 .982 38 2.182v19.636c0 1.2-.95 2.182-2.111 2.182H2.11C.95 24 0 23.018 0 21.818V2.182C0 .982.95 0 2.111 0H35.89z" fill="#5A31F4"/><path d="M9.35 11.368c-1.017-.223-1.47-.31-1.47-.705 0-.372.306-.558.92-.558.54 0 .934.238 1.225.704a.079.079 0 00.104.03l1.146-.584a.082.082 0 00.032-.114c-.475-.831-1.353-1.286-2.51-1.286-1.52 0-2.464.755-2.464 1.956 0 1.275 1.15 1.597 2.17 1.82 1.02.222 1.474.31 1.474.705 0 .396-.332.582-.993.582-.612 0-1.065-.282-1.34-.83a.08.08 0 00-.107-.035l-1.143.57a.083.083 0 00-.036.111c.454.92 1.384 1.437 2.627 1.437 1.583 0 2.539-.742 2.539-1.98s-1.155-1.598-2.173-1.82v-.003zM15.49 8.855c-.65 0-1.224.232-1.636.646a.04.04 0 01-.069-.03v-2.64a.08.08 0 00-.08-.081H12.27a.08.08 0 00-.08.082v8.194a.08.08 0 00.08.082h1.433a.08.08 0 00.081-.082v-3.594c0-.695.528-1.227 1.239-1.227.71 0 1.226.521 1.226 1.227v3.594a.08.08 0 00.081.082h1.433a.08.08 0 00.081-.082v-3.594c0-1.51-.981-2.577-2.355-2.577zM20.753 8.62c-.778 0-1.507.24-2.03.588a.082.082 0 00-.027.109l.632 1.088a.08.08 0 00.11.03 2.5 2.5 0 011.318-.366c1.25 0 2.17.891 2.17 2.068 0 1.003-.736 1.745-1.669 1.745-.76 0-1.288-.446-1.288-1.077 0-.361.152-.657.548-.866a.08.08 0 00.032-.113l-.596-1.018a.08.08 0 00-.098-.035c-.799.299-1.359 1.018-1.359 1.984 0 1.46 1.152 2.55 2.76 2.55 1.877 0 3.227-1.313 3.227-3.195 0-2.018-1.57-3.492-3.73-3.492zM28.675 8.843c-.724 0-1.373.27-1.845.746-.026.027-.069.007-.069-.029v-.572a.08.08 0 00-.08-.082h-1.397a.08.08 0 00-.08.082v8.182a.08.08 0 00.08.081h1.433a.08.08 0 00.081-.081v-2.683c0-.036.043-.054.069-.03a2.6 2.6 0 001.808.7c1.682 0 2.993-1.373 2.993-3.157s-1.313-3.157-2.993-3.157zm-.271 4.929c-.956 0-1.681-.768-1.681-1.783s.723-1.783 1.681-1.783c.958 0 1.68.755 1.68 1.783 0 1.027-.713 1.783-1.681 1.783h.001z" fill="#fff"/></svg> 1898 1899 </li><li class="list-payment__item"> 1900 <svg class="icon icon--full-color" xmlns="http://www.w3.org/2000/svg" role="img" viewBox="0 0 38 24" width="38" height="24" fill="none" aria-labelledby="pi-visa"><title id="pi-visa">Visa</title><rect x=".5" y=".5" width="37" height="23" rx="2.5" stroke="#000" stroke-opacity=".07" fill="none"/><path d="M35 0H3C1.3 0 0 1.3 0 3V21C0 22.7 1.4 24 3 24H35C36.7 24 38 22.7 38 21V3C38 1.3 36.6 0 35 0Z" fill="#142FBD" style="fill:#142FBD;fill:color(display-p3 0.0784 0.1843 0.7412);fill-opacity:1;"/><path d="M35 1C36.1 1 37 1.9 37 3V21C37 22.1 36.1 23 35 23H3C1.9 23 1 22.1 1 21V3C1 1.9 1.9 1 3 1H35Z" fill="#1532CB" style="fill:#1532CB;fill:color(display-p3 0.0824 0.1961 0.7961);fill-opacity:1;"/><path d="M29.5944 10.2167H29.2778C28.8556 11.2722 28.5389 11.8 28.2222 13.3833H30.2278C29.9111 11.8 29.9111 11.0611 29.5944 10.2167V10.2167ZM32.6556 16.4444H30.8611C30.7556 16.4444 30.7556 16.4444 30.65 16.3389L30.4389 15.3889L30.3333 15.1778H27.8C27.6944 15.1778 27.5889 15.1778 27.5889 15.3889L27.2722 16.3389C27.2722 16.4444 27.1667 16.4444 27.1667 16.4444H24.95L25.1611 15.9167L28.2222 8.73889C28.2222 8.21111 28.5389 8 29.0667 8H30.65C30.7556 8 30.8611 8 30.8611 8.21111L32.3389 15.0722C32.4444 15.4944 32.55 15.8111 32.55 16.2333C32.6556 16.3389 32.6556 16.3389 32.6556 16.4444V16.4444ZM18.5111 16.1278L18.9333 14.2278C19.0389 14.2278 19.1444 14.3333 19.1444 14.3333C19.8833 14.65 20.6222 14.8611 21.3611 14.7556C21.5722 14.7556 21.8889 14.65 22.1 14.5444C22.6278 14.3333 22.6278 13.8056 22.2056 13.3833C21.9944 13.1722 21.6778 13.0667 21.3611 12.8556C20.9389 12.6444 20.5167 12.4333 20.2 12.1167C18.9333 11.0611 19.3556 9.58333 20.0944 8.84444C20.7278 8.42222 21.0444 8 21.8889 8C23.1556 8 24.5278 8 25.1611 8.21111H25.2667C25.1611 8.84444 25.0556 9.37222 24.8444 10.0056C24.3167 9.79444 23.7889 9.58333 23.2611 9.58333C22.9444 9.58333 22.6278 9.58333 22.3111 9.68889C22.1 9.68889 21.9944 9.79444 21.8889 9.9C21.6778 10.1111 21.6778 10.4278 21.8889 10.6389L22.4167 11.0611C22.8389 11.2722 23.2611 11.4833 23.5778 11.6944C24.1056 12.0111 24.6333 12.5389 24.7389 13.1722C24.95 14.1222 24.6333 14.9667 23.7889 15.6C23.2611 16.0222 23.05 16.2333 22.3111 16.2333C20.8333 16.2333 19.6722 16.3389 18.7222 16.0222C18.6167 16.2333 18.6167 16.2333 18.5111 16.1278V16.1278ZM14.8167 16.4444C14.9222 15.7056 14.9222 15.7056 15.0278 15.3889C15.5556 13.0667 16.0833 10.6389 16.5056 8.31667C16.6111 8.10556 16.6111 8 16.8222 8H18.7222C18.5111 9.26667 18.3 10.2167 17.9833 11.3778C17.6667 12.9611 17.35 14.5444 16.9278 16.1278C16.9278 16.3389 16.8222 16.3389 16.6111 16.3389L14.8167 16.4444ZM5 8.21111C5 8.10556 5.21111 8 5.31667 8H8.90556C9.43333 8 9.85556 8.31667 9.96111 8.84444L10.9111 13.4889C10.9111 13.5944 10.9111 13.5944 11.0167 13.7C11.0167 13.5944 11.1222 13.5944 11.1222 13.5944L13.3389 8.21111C13.2333 8.10556 13.3389 8 13.4444 8H15.6611C15.6611 8.10556 15.6611 8.10556 15.5556 8.21111L12.2833 15.9167C12.1778 16.1278 12.1778
190016.2333 12.0722 16.3389C11.9667 16.4444 11.7556 16.3389 11.5444 16.3389H9.96111C9.85556 16.3389 9.75 16.3389 9.75 16.1278L8.06111 9.58333C7.85 9.37222 7.53333 9.05556 7.11111 8.95C6.47778 8.63333 5.31667 8.42222 5.10556 8.42222L5 8.21111Z" fill="white" style="fill:white;fill-opacity:1;"/></svg> 1901 1902 </li></ul> 1903 </div></div> 1904 </div> 1905 <div class="footer__content-bottom-wrapper page-width"> 1906 <div class="footer__copyright caption"> 1907 <small class="copyright__content">© 2026, <a href="/" title="">Fleur de Mer</a></small> 1908 <small class="copyright__content"><a target="_blank" rel="nofollow" href="https://www.shopify.com?utm_campaign=poweredby&utm_medium=shopify&utm_source=onlinestore">Powered by Shopify</a></small></div> 1909 </div> 1910 </div> 1911</footer> 1912 1913 1914 1915 1916</div> 1917<!-- END sections: footer-group --> 1918 1919 <ul hidden> 1920 <li id="a11y-refresh-page-message">Choosing a selection results in a full page refresh.</li> 1921 <li id="a11y-new-window-message">Opens in a new window.</li> 1922 </ul> 1923 1924
1924<script> 1925 window.shopUrl = 'https://fleurdemernj.com'; 1926 window.routes = { 1927 cart_add_url: '/cart/add', 1928 cart_change_url: '/cart/change', 1929 cart_update_url: '/cart/update', 1930 cart_url: '/cart', 1931 predictive_search_url: '/search/suggest' 1932 }; 1933 1934 window.cartStrings = { 1935 error: `There was an error while updating your cart. Please try again.`, 1936 quantityError: `You can only add [quantity] of this item to your cart.` 1937 } 1938 1939 window.variantStrings = { 1940 addToCart: `Add to cart`, 1941 soldOut: `Sold out`, 1942 unavailable: `Unavailable`, 1943 unavailable_with_option: `[value] - Unavailable`, 1944 } 1945 1946 window.accessibilityStrings = { 1947 imageAvailable: `Image [index] is now available in gallery view`, 1948 shareSuccess: `Link copied to clipboard`, 1949 pauseSlideshow: `Pause slideshow`, 1950 playSlideshow: `Play slideshow`, 1951 } 1952 </script>
1952<script src="//fleurdemernj.com/cdn/shop/t/1/assets/predictive-search.js?v=16985596534672189881678481352" defer="defer"></script>
1952<link href="//fleurdemernj.com/cdn/shop/t/1/assets/recurpay.css?v=125643435436263558611691098952" rel="stylesheet" type="text/css" media="all" />
1953<script defer> 1954 (function() { 1955 //Append Script 1956 var initScript = function(url, callback) { 1957 var script = document.createElement("script"); 1958 script.type = "text/javascript"; 1959 if (script.readyState){ 1960 script.onreadystatechange = function() { 1961 if (script.readyState == "loaded" || script.readyState == "complete") { 1962 script.onreadystatechange = null; 1963 callback(); 1964 } 1965 }; 1966 } else { 1967 script.onload = function() { 1968 callback(); 1969 }; 1970 } 1971 script.src = url; 1972 document.getElementsByTagName("head")[0].appendChild(script); 1973 }; 1974 1975 var recurpaySubscription = function($) { 1976 window.recurpay = {}; 1977 recurpay.domainURL = 'https://fleurdemernj.recurpay.com'; 1978 recurpay.action = 'default'; 1979 recurpay.product= []; 1980 recurpay.product.id ="10351856746774"; 1981 recurpay.product.available = "true"; 1982 recurpay.product.availableVariant = "50882504458518"; 1983 recurpay.product.onlySubscription = "false"; 1984 recurpay.checkout = 'shopify'; 1985 recurpay.pageTemplate = "product.foxify-kids-craft-club-in-ocean-township-nj-or-fleur-de-mer.gen2"; 1986 recurpay.prepaidMixedCart = true; 1987 recurpay.subscriptionFirst = true; 1988 recurpay.subscriptionInfluence = false; 1989 recurpay.subscriptionInfluenceCount = -1; 1990 recurpay.checkout_btn_override_class = ".icart-checkout-btn, .hs-checkout-purchase, .recurpay-custom-checkout-btn"; 1991 recurpay.pdpAPI = recurpay.domainURL + '/api/storefront/v2/plans'; 1992 recurpay.accountAPI = recurpay.domainURL + '/api/storefront/v2/customers//subscriptions/count'; 1993 recurpay.manageAccountAPI = recurpay.domainURL + "/storefront/account/authenticate/"; 1994 recurpay.checkoutAPI = recurpay.domainURL + '/checkout/initiate.rp'; 1995 recurpay.logURL = recurpay.domainURL + '/api/storefront/v2/logger'; 1996 1997 recurpay.customer = 'guest'; 1998 1999 if((window.location.href.indexOf("/products/") > -1) && (window.location.href.indexOf("recurpay_preview=true") > -1)){ 2000 recurpay.pdpAPI = recurpay.domainURL + '/api/storefront/v2/plans?fetch=force'; 2001 } 2002 var accountTemplate = '', 2003 accountSelector = "#recurpay-account-widget", 2004 pdpSelector = ".recurpay-pdp-widget", 2005 subscriptionSelector = "#recurpay-manage-subscriptions", 2006 checkoutSelector = '[href="/checkout"], form[action="/cart"] button[type="submit"][name="checkout"], form[action="/cart"] input[type="submit"][name="checkout"], form[action="/checkout"] input[type="submit"][name="checkout"], form[action="/checkout"] button[type="submit"][name="checkout"], button[type="submit"][name="checkout"],button[name="checkout"], button.ucd-checkout-btn', 2007 atcFormSelector = 'form[action*="/cart/add"], form[action*="/cart/add.js"], form[id^="product_form_"], form[data-productid], form[action*="/cart/add"][data-js-product-form], form#AddToCartForm, #addToCartFormId1, form.product-form, #AddToCartForm_id, form[data-cart-submit="data-cart-submit"][data-productid], form.lh-product-form, form.shg-product-atc-btn-wrapper, form.shopify-product-form', 2008 atcSelector = '[name="add"], [type=\"submit\"], button#AddToCart, button.gf_add-to-cart', 2009 buynowSelector = '.shopify-payment-button,.shopify-payment-button__button'; 2010 2011 // ACCOUNT PAGE 2012 if(recurpay.pageTemplate == "customers/account" && $(accountSelector).length <= 0){ 2013 if($('.card__linklist').length >0){ 2014 $('.card__linklist').before('<div id="recurpay-account-widget"></div>'); 2015 } 2016 else if($('.flits-account-page-title').length >0){ 2017 $('.flits-account-page-title').append('<div id="recurpay-account-widget"></div>'); 2018 } 2019 else if($('a[href*="/account/addresses"]').length >0){ 2020 $('a[href*="/account/addresses"]').before('<div id="recurpay-account-widget"></div>'); 2021 } 2022 else if ($('.order-history').length >0){ 2023 $('.order-history').before('<div id="recurpay-account-widget"></div>'); 2024 } 2025 else if ($('a[href*="/account/logout"]').length >0){ 2026 $('a[href*="/account/logout"]').before('<div id="recurpay-account-widget"></div>'); 2027 } 2028 else{ 2029 logEvent("account_widget","Failed to show account snippet", "critical"); 2030 } 2031 } 2032 if($(accountSelector).length && recurpay.customer !== "guest"){ 2033 function recurAccount(count){ 2034 accountTemplate += '<div class="subscription__account" data-subscription-block>' 2035 accountTemplate += '<div class="subscription__account--content">' 2036 accountTemplate += '<div class="subscription__account--heading">'+recurpay.accountSettings.translations.breadcrumb_subscription_heading+' <span data-subscription-count>('+count+')</span></div>' 2037 if(count !== 0){ 2038 accountTemplate += '<div class="subscription__account--text" data-active-subscriptions>'+recurpay.accountSettings.translations.breadcrumb_subscription_description+'</div>' 2039 accountTemplate += '<div class="subscription__account--button" id="recurpay-manage-subscriptions"><a href="#">'+recurpay.accountSettings.translations.breadcrumb_subscription_button_text+'</a></div>' 2040 } 2041 else{ 2042 accountTemplate += '<div class="subscription__account--text" data-active-subscriptions>'+recurpay.accountSettings.translations.breadcrumb_subscription_placeholder_for_no_subscriptions+'</
2042div>' 2043 accountTemplate += '<div class="subscription__account--button"><a href="/">'+recurpay.accountSettings.translations.breadcrumb_subscription_text_for_no_subscriptions+'</a></div>' 2044 } 2045 accountTemplate += '</div></div>' 2046 return accountTemplate; 2047 } 2048 $.ajax({ 2049 url: recurpay.accountAPI+"?settings=true", 2050 type: 'GET', 2051 async:true, 2052 success: function(response){ 2053 var accountHTML = ''; 2054 if(response != "ERROR") { 2055 if(response.settings !== null && !$.isEmptyObject(response.settings)){ 2056 recurpay.accountSettings = response.settings; 2057 document.documentElement.style.setProperty('--recurpay_primary_color', recurpay.accountSettings.snippet_color_codes.account_brand_color); 2058 document.documentElement.style.setProperty('--recurpay_button_text_color', recurpay.accountSettings.snippet_color_codes.account_button_text_color); 2059 document.documentElement.style.setProperty('--recurpay_button_bg_color', recurpay.accountSettings.snippet_color_codes.account_button_color); 2060 } 2061 accountHTML = recurAccount(response.count); 2062 } 2063 else { 2064 accountHTML = recurAccount(0); 2065 } 2066 if($(accountSelector).length){ 2067 $(accountSelector).html(accountHTML); 2068 } 2069 }, 2070 error: function(jqXhr, textStatus, errorThrown){ 2071 console.log( errorThrown ); 2072 } 2073 }); 2074 $(document).on('click', subscriptionSelector, function(e) { 2075 e.preventDefault(); 2076 var checkoutForm = $("<form action='"+recurpay.manageAccountAPI+"' method='post' style='display:none;'></form>"); 2077 $('body').append(checkoutForm); 2078 checkoutForm.submit(); 2079 }); 2080 } 2081 2082 // CART PAGE 2083 function recurCart(cartData){ 2084 var checkoutData = [], 2085 cartItems = cartData.items, 2086 cartAttributes = [], 2087 cartNote = cartData.note, 2088 recurpayCheckout = false; 2089 $.each( cartData.attributes, function(key, value ) { 2090 if(key != "Plan" && key != '_PlanId'){ 2091 cartAttributes.push({ 2092 name: key, 2093 value:value 2094 }); 2095 } 2096 }); 2097 for(var i=0; i < cartItems.length; i++){ 2098 var Planid = '', 2099 item = cartItems[i], 2100 property = item.properties, 2101 lineProperty = []; 2102 if(property){ 2103 if(property._PlanId){ 2104 Planid = property._PlanId 2105 recurpayCheckout = true; 2106 } 2107 $.each( property, function(key, value ) { 2108 if(key != "Plan" && key != '_PlanId'){ 2109 lineProperty.push({ 2110 name: key, 2111 value:value 2112 }); 2113 } 2114 }); 2115 } 2116 if(Planid == ''){ 2117 checkoutData.push({ 2118 quantity: item.quantity, 2119 variant_id: item.id, 2120 properties: lineProperty, 2121 type: 'ONETIME', 2122 currency:'INR' 2123 }); 2124 } 2125 else{ 2126 checkoutData.push({ 2127 quantity: item.quantity, 2128 variant_id: item.id, 2129 properties: lineProperty, 2130 plan_id: Planid, 2131 type: 'SUBSCRIPTION', 2132 currency:'INR' 2133 }); 2134 } 2135 } 2136 if(recurpayCheckout) { 2137 var getCheckoutData = JSON.stringify(checkoutData), 2138 getCartAttributes = JSON.stringify(cartAttributes), 2139 cartNote = $('[name="note"]').val(); 2140 checkoutForm = $("<form action='"+recurpay.checkoutAPI+"' method='post' style='display:none;'>" + 2141 "<input type='hidden' name='line_items' value='"+getCheckoutData+"' />"+ 2142 "<input type='hidden' name='customer_id' value='"+recurpay.customer+"' />" + 2143 "<input type='hidden' name='note_attributes' value='"+getCartAttributes+"' />" + 2144 "<input type='hidden' name='note' value='"+cartNote+"' />" + 2145 "</form>"); 2146 $('body').append(checkoutForm); 2147 checkoutForm.submit(); 2148 } 2149 else { 2150 document.location.href = "/checkout"; 2151 } 2152 } 2153 2154 // VARIANT SELECTOR 2155 2156 function getProductHandle(href) { 2157 if (typeof href === "undefined") { 2158 var href = window.location.href; 2159 href = href.replace("/products/products", "/products"); 2160 } 2161 if (/\/products\/([^\?\/\n]+)/.test(href)) { 2162 var found = href.match(/\/products\/([^\?\/\n]+)/); 2163 if (typeof found[1] !== "undefined") { 2164 try { 2165 return decodeURIComponent(found[1]).replace("#", ""); 2166 } catch (e) { 2167 return found[1].replace("#", ""); 2168 } 2169 } 2170 } 2171 return false; 2172 } 2173 2174 recurpay.recurMoney = { 2175 formatPrice: function (price, convertCurrency) { 2176 if (typeof Shopify !== "undefined" && Shopify.hasOwnProperty("currency") && Shopify.currency.hasOwnProperty("rate")) { 2177 var currency = Shopify.currency.active; 2178 var exchangeRate = Shopify.currency.rate; 2179 var moneyFormat = "" + currency; 2180 var currencyFormat = ""; 2181 if (typeof convertCurrency === "undefined") { 2182 convertCurrency = false; 2183 } 2184 if (convertCurrency && exchangeRate !== "1.0") { 2185 price = this.convertMoney(price, exchangeRate, currency); 2186 } 2187 var bodyAttrMoneyFormat = $("body").attr("data-money-format"); 2188 if (currencyFormat !== "") { 2189 moneyFormat = currencyFormat; 2190 } 2191 else { 2192 if (typeof Shopify !== "undefined" && typeof Shopify.currency_settings !== "undefined" && typeof Shopify.currency_settings.money_format !== "undefined") { 2193 moneyFormat = Shopify.currency_settings.money_format; 2194 } else if (typeof window.money_format !== "undefined") { 2195 moneyFormat = window.money_format; 2196 } else if (typeof window.Theme !== "undefined" && typeof window.Theme.moneyFormat !== "undefined") { 2197 moneyFormat = window.Theme.moneyFormat; 2198 } else if (typeof window.theme !== "undefined" && typeof window.theme.moneyFormat !== "undefined") { 2199 moneyFormat = window.theme.moneyFormat; 2200 } else if (typeof window.theme !== "undefined" && typeof window.theme.money_format === "string") { 2201 moneyFormat = window.theme.money_format; 2202 } else if (typeof window.theme !== "undefined" && typeof window.theme.settings !== "undefined" && typeof window.theme.settings.moneyFormat !== "undefined") { 2203 moneyFormat = theme.settings.moneyFormat; 2204 } else if (typeof window.theme !== "undefined" && typeof window.theme.strings !== "undefined" && typeof window.theme.strings.moneyFormat === "string") { 2205 moneyFormat = window.theme.strings.moneyFormat; 2206 } else if (typeof window.Currency !== "undefined" && typeof window.Currency.money_format !== "undefined" && typeof window.Currency.money_format[currency] === "string") { 2207 moneyFormat = window.Currency.money_format[currency]; 2208 } else if (typeof window.Currency !== "undefined" && typeof window.Currency.money_format === "string") { 2209 moneyFormat = window.Currency.money_format; 2210 } else if (typeof bodyAttrMoneyFormat !== "undefined" && typeof bodyAttrMoneyFormat === "string" && bodyAttrMoneyFormat !== "") { 2211 moneyFormat = bodyAttrMoneyFormat; 2212 } else if (typeof wsgMoneyFormat === "string") { 2213 moneyFormat = wsgMoneyFormat; 2214 } else if (typeof price_format === "string") { 2215 moneyFormat = price_format; 2216 } else { 2217 price = price / 100;
2218 return price.toLocaleString(undefined, { style: "currency", currency: currency || this.getDefaultCurrency() }); 2219 } 2220 } 2221 return this.formatMoney(price, moneyFormat, currency || this.getDefaultCurrency()); 2222 } 2223 return ""; 2224 }, 2225 formatMoney: function (cents, format, fallbackCurrency, directionFor50) { 2226 if (typeof directionFor50 === "undefined") { 2227 var directionFor50 = "up"; 2228 } 2229 try { 2230 if (typeof cents == "string") { 2231 cents = cents.replace(".", ""); 2232 } 2233 var value = ""; 2234 var placeholderRegex = /\{\{\s*(\w+)\s*\}\}/; 2235 var formatString = format; 2236 function defaultOption(opt, def) { 2237 return typeof opt == "undefined" ? def : opt; 2238 } 2239 function formatWithDelimiters(number, precision, thousands, decimal, directionFor50) { 2240 precision = defaultOption(precision, 2); 2241 thousands = defaultOption(thousands, ","); 2242 decimal = defaultOption(decimal, "."); 2243 directionFor50 = defaultOption(directionFor50, "up"); 2244 if (isNaN(number) || number == null) { 2245 return 0; 2246 } 2247 var originalNumber = number; 2248 number = (number / 100.0).toFixed(precision); 2249 if (directionFor50 === "down") { 2250 if (originalNumber / 100 - number === -0.5) { 2251 number -= 1; 2252 number = number.toString(); 2253 } 2254 } 2255 var parts = number.split("."), 2256 dollars = parts[0].replace(/(\d)(?=(\d\d\d)+(?!\d))/g, "$1" + thousands), 2257 cents = parts[1] ? decimal + parts[1] : ""; 2258 return dollars + cents; 2259 } 2260 switch (formatString.match(placeholderRegex)[1]) { 2261 case "amount": 2262 value = formatWithDelimiters(cents, 2); 2263 break; 2264 case "amount_no_decimals": 2265 value = formatWithDelimiters(cents, 0, ",", ".", directionFor50); 2266 break; 2267 case "amount_with_comma_separator": 2268 value = formatWithDelimiters(cents, 2, ".", ","); 2269 break; 2270 case "amount_with_decimal_separator": 2271 value = formatWithDelimiters(cents, 2, ",", "."); 2272 break; 2273 case "amount_no_decimals_with_comma_separator": 2274 value = formatWithDelimiters(cents, 0, ".", ",", directionFor50); 2275 break; 2276 case "amount_no_decimals_with_space_separator": 2277 value = formatWithDelimiters(cents, 0, " ", ",", directionFor50); 2278 break; 2279 case "amount_with_apostrophe_separator": 2280 value = formatWithDelimiters(cents, 2, "'", "."); 2281 break; 2282 } 2283 return formatString.replace(placeholderRegex, value); 2284 } catch (e) { 2285 console.log(e.message); 2286 price = cents / 100; 2287 return price.toLocaleString(undefined, { style: "currency", currency: fallbackCurrency }); 2288 } 2289 }, 2290 convertMoney: function (value, rate, currency, round) { 2291 if (value <= 0) { 2292 return 0; 2293 } 2294 value *= rate; 2295 var roundUp = ["USD", "CAD", "AUD", "NZD", "SGD", "HKD", "GBP"]; 2296 var roundTo100 = ["JPY"]; 2297 var roundTo95 = ["EUR"]; 2298 if (round) { 2299 if (roundUp.indexOf(currency) !== -1) {
2300 value = Math.ceil(value); 2301 } else if (roundTo100.indexOf(currency) !== -1) { 2302 value = Math.ceil(value / 100) * 100; 2303 } else if (roundTo95.indexOf(currency) !== -1) { 2304 value = Math.ceil(value) - 0.05; 2305 } 2306 } 2307 return value; 2308 } 2309 }; 2310 2311 function logEvent(module_name,addon,type){ 2312 $.ajax({ 2313 url: recurpay.logURL, 2314 type: 'POST', 2315 async:true, 2316 dataType: 'json', 2317 data: { 2318 module:module_name, 2319 level: type, 2320 payload:{ 2321 store : recurpay.domainURL, 2322 remark: addon 2323 } 2324 }, 2325 success: function(response) { 2326 console.log("event logged"); 2327 } 2328 }); 2329 } 2330 2331 function calculatePrice(variant_id){ 2332 var variant_json = {}; 2333 var variant_price = 0; 2334 var productObj = {}; 2335 if(variant_id !== undefined && variant_id !== null){ 2336 variant_id = parseInt(variant_id); 2337 let variant_data = []; 2338 for(i=0 ; i< recurpay.productDatas.length; i++){ 2339 variant_data.push(...recurpay.productDatas[i].product.variants.filter(function(searchId) { 2340 return parseInt(searchId.id) == variant_id; 2341 })); 2342 } 2343 2344 if(variant_data.length >=1){ 2345 productObj.variant_price = variant_data[0].price; 2346 productObj.product_id = variant_data[0].product_id; 2347 } 2348 } 2349 else{ 2350 productObj.variant_price = recurpay.productDatas[0].product.variants[0].price; 2351 productObj.product_id = variant_data[0].product_id; 2352 } 2353 return productObj; 2354 } 2355 2356 function formatPriceMoney(price){ 2357 var multiple_price = price*100; 2358 var formatted_price = recurpay.recurMoney.formatPrice(multiple_price); 2359 return formatted_price; 2360 } 2361 2362 $(atcFormSelector).closest(".product__meta").find("button.product__chip").on("click", function () { 2363 var $this = $(this); 2364 setTimeout(function() { 2365 recurpay.product.selectedVariant = $this.parents(atcFormSelector).find('select[name="id"]').val(); 2366 recurDiscountedPrice(recurpay.product.selectedVariant); 2367 },100); 2368 }); 2369 2370 $(atcFormSelector).find(".combobox, .wetheme-dropdown__wrapper ul[id^='SingleOptionSelector-'] li, .option-values-radio .popover-list-item .form-element-radio, .single-option-selector .bcpo-image-parent, .regular-select-item, .bcpo-dd.single-option-selector ul.inner li, #clickyboxes-SingleOptionSelector-0 a, button.product__chip, .form-swatch-item, .product-variant__container .product-variant__label, .options-selection__option-value, .popout-list__option--product, .option-swatch .custom-swatch, ul.select-dropdown li, .swatch-element, .swatch_pr_item, .basel-swatch, .swatchBox label, .swatchBox span").on("click", function () { 2371 var $this = $(this); 2372 setTimeout(function() { 2373 recurpay.product.selectedVariant = $this.parents(atcFormSelector).find('select[name="id"], input[name="id"][type="radio"]:checked').val(); 2374 recurDiscountedPrice(recurpay.product.selectedVariant); 2375 },100); 2376 }); 2377 2378 $(atcFormSelector).closest(".product-selection").find("select.single-option-selector").on("change", function () { 2379 var $this = $(this); 2380 setTimeout(function() { 2381 recurpay.product.selectedVariant = $this.parents(atcFormSelector).find('select[name="id"]').val(); 2382 recurDiscountedPrice(recurpay.product.selectedVariant); 2383 },100); 2384 }); 2385 2386 $(atcFormSelector).find(".product-single__swatch__input").on("change", function () { 2387 var $this = $(this); 2388 setTimeout(function() { 2389 recurpay.product.selectedVariant = $this.parents(atcFormSelector).find('select[name="id"]').val(); 2390 recurDiscountedPrice(recurpay.product.selectedVariant); 2391 },100); 2392 }); 2393 2394 $(atcFormSelector).find('input#SelectedId, select.js-variant-select, input[name="id"], select[name="id"], select.single-option-selector, .zpa-single-option-selector, .select.options-selection__input-select, .form-options input.option-value-input, .variant-input input[type="radio"], .product-form__option-select, .option-selectors .selector-wrapper select, select.single-option-list-type, .product-options .option-input, select.input-reset, select.js-product-variant, select[data-single-option-selector], input[data-single-option-selector], select.single-option-selector-product-template, .single-option-selector[type="radio"], .single-option-selector-product-template[type="radio"]').on("change", function () { 2395 var $this = $(this) 2396 setTimeout(function() { 2397 console.log( $(this)); 2398 console.log($(this).parents(atcFormSelector)); 2399 recurpay.product.selectedVariant = $this.parents(atcFormSelector).find('input[name="id"], select[name="id"], input#SelectedId').val(); 2400 recurDiscountedPrice(recurpay.product.selectedVariant); 2401 },100); 2402 }); 2403 2404 function recurDiscountedPrice(variant){ 2405 var getVariantObj = calculatePrice(variant); 2406 var getVariantPrice = getVariantObj.variant_price; 2407 var getProductId = parseInt(getVariantObj.product_id); 2408 var showSavings = true;
2409 $('.recurpay-pdp-widget[data-product-id="'+getProductId+'"]').find(".recurpay__frequency_select option").each(function(){ 2410 var $this = $(this); 2411 console.log($this); 2412 var getDiscount = $(this).attr("data-plan-discount"); 2413 var getPlanName = $(this).attr("data-plan-name"); 2414 var getPlanShipment = $(this).attr("data-plan-shipment"); 2415 if(getPlanShipment == null || getPlanShipment == undefined || getPlanShipment == "null"){ 2416 getPlanShipment = 1; 2417 } 2418 if(getDiscount == null || getDiscount == undefined || getDiscount == "null"){ 2419 getDiscount = 0; 2420 } 2421 var discountedPrice = getVariantPrice - (getVariantPrice * getDiscount / 100); 2422 var getSavings = getVariantPrice*getPlanShipment - discountedPrice*getPlanShipment; 2423 2424 if(parseFloat(getVariantPrice) !== parseFloat(discountedPrice)){ 2425 $this.html(getPlanName+" ("+formatPriceMoney(discountedPrice*getPlanShipment)+")"); 2426 console.log( $('.recurpay-pdp-widget[data-product-id="'+getProductId+'"]')); 2427 if($this.is(':selected')){ 2428 $('.recurpay-pdp-widget[data-product-id="'+getProductId+'"]').find(".recurpay__widget_container[data-type='subscription-purchase']").find(".recurpay__group_compare_price").html("<span class='money'>"+formatPriceMoney(getVariantPrice*getPlanShipment)+"</span>"); 2429 } 2430 } 2431 else{ 2432 $this.html(getPlanName+"("+formatPriceMoney(discountedPrice*getPlanShipment)+")"); 2433 if($this.is(':selected')){ 2434 $('.recurpay-pdp-widget[data-product-id="'+getProductId+'"]').find(".recurpay__widget_container[data-type='subscription-purchase']").find(".recurpay__group_compare_price").html(""); 2435 } 2436 } 2437 if($this.is(':selected')){ 2438 if(getDiscount <=0){ 2439 showSavings = false; 2440 } 2441 $('.recurpay-pdp-widget[data-product-id="'+getProductId+'"]').find(".recurpay__widget_container[data-type='subscription-purchase']").find(".recurpay__saving_amount").html("<span class='money'>"+formatPriceMoney(getSavings)+"</span>"); 2442 $('.recurpay-pdp-widget[data-product-id="'+getProductId+'"]').find(".recurpay__widget_container[data-type='subscription-purchase']").find(".recurpay__group_selling_price").html("<span class='money'>"+formatPriceMoney(discountedPrice*getPlanShipment)+"</span>"); 2443 $('.recurpay-pdp-widget[data-product-id="'+getProductId+'"]').find(".recurpay__widget_container[data-type='subscription-purchase']").find(".recurpay__offer_saving_message_amount_text").html(parseFloat(getDiscount).toFixed(2).replace(/\.0+$/,'')); 2444 } 2445 $('.recurpay-pdp-widget[data-product-id="'+getProductId+'"]').find(".recurpay__widget_container[data-type='onetime-purchase']").find(".recurpay__group_selling_price").html("<span class='money'>"+formatPriceMoney(getVariantPrice)+"</span>"); 2446 $('.recurpay-pdp-widget[data-product-id="'+getProductId+'"]').find(".recurpay__widget_container[data-type='onetime-purchase']").find(".recurpay__offer_saving_message_amount_text").html(parseFloat(getDiscount).toFixed(2).replace(/\.0+$/,'')); 2447 }); 2448 } 2449 2450 function offerSavings(selector){ 2451 var selectedOption = $(selector).find('[name="recurpay__group_main"]').val(); 2452 var getDiscountVal = $(selector).find(".recurpay__frequency_select option:selected").attr("data-plan-discount"); 2453 2454 if(getDiscountVal == null || getDiscountVal == undefined || getDiscountVal == "null"){ 2455 getDiscountVal = 0; 2456 } 2457 if(parseFloat(getDiscountVal) > 0){ 2458 if($(selector).find('[name="recurpay__group_main"]:checked').val() == "subscription"){ 2459 $('.recurpay__offer_onetime').hide(); 2460 $('.recurpay__offer_subscription').css("display","flex"); 2461 } 2462 else{ 2463 $('.recurpay__offer_onetime').css("display","flex"); 2464 $('.recurpay__offer_subscription').hide(); 2465 } 2466 if(recurpay.settings.translations.premium_one_time_saving_icon == "" && recurpay.settings.translations.premium_one_time_saving_msg == "" && recurpay.settings.translations.premium_one_time_saving_label == "" && recurpay.settings.translations.premium_one_time_discount_label == ""){ 2467 $('.recurpay__offer_onetime').hide(); 2468 } 2469 if(recurpay.settings.translations.premium_subscription_saving_icon == "" && recurpay.settings.translations.premium_subscription_saving_msg == "" && recurpay.settings.translations.premium_subscription_saving_label == "" && recurpay.settings.translations.premium_subscription_discount_label == ""){ 2470 $('.recurpay__offer_subscription').hide(); 2471 } 2472 } 2473 else{ 2474 $('.recurpay__offer_wrapper').hide(); 2475 } 2476 } 2477 2478 // PRODUCT PAGE 2479 2480 function hexToRgbA(hex){ 2481 var c; 2482 if(/^#([A-Fa-f0-9]{3}){1,2}$/.test(hex)){ 2483 c= hex.substring(1).split(''); 2484 if(c.length== 3){ 2485 c= [c[0], c[0], c[1], c[1], c[2], c[2]]; 2486 } 2487 c= '0x'+c.join(''); 2488 return 'rgba('+[(c>>16)&255, (c>>8)&255, c&255].join(',')+',0.1)'; 2489 } 2490 return 'rgba(255, 255, 255, 0.1)'; 2491 } 2492 2493 function recurPDP(data){ 2494 var prepaidCount = 0, 2495 regularCount = 0, 2496 prepaidDiscount = [], 2497 maxPrepaidDiscount = '', 2498 getPlanDesc = '', 2499 pdpTemplate = '', 2500 GetPlans = ""; 2501 $.each(data.plans, function(key, plan) { 2502 var DiscountPercentageHtml = '', 2503 DescriptionHtml = '', 2504 PlanHtml = '', 2505 PlanDiscount = 0, 2506 PlanType = 'regular'; 2507 if(plan.type){
2508 PlanType = plan.type; 2509 if(PlanType == 'prepaid'){ 2510 prepaidCount += prepaidCount+1; 2511 prepaidDiscount.push(plan.pricing_policy[0].discount.value); 2512 } 2513 else{ 2514 regularCount += regularCount+1; 2515 } 2516 } 2517 if(plan.pricing_policy[0].discount.type == "percentage" && plan.pricing_policy[0].discount.value != 0){ 2518 PlanDiscount = plan.pricing_policy[0].discount.value; 2519 DiscountPercentageHtml = '<span class="recurpay__discount">(' + PlanDiscount + '% Off)</span>'; 2520 } 2521 if(plan.description) { 2522 DescriptionHtml = '<div class="recurpay__description" style="display:none" data-description-id="'+plan.id+'">' + plan.description + '</div>'; 2523 } 2524 if(recurpay.checkout == "shopify"){ 2525 if(key == 0){ 2526 PlanHtml += '<option value="" selected="selected" data-plan="' + plan.id + '" data-selling-plan="' + plan.selling_plan_id + '" data-plan-name="' + plan.name + '" data-plan-shipment= "'+plan.delivery_policy.shipment_count+'" data-plan-discount="'+PlanDiscount+'" data-plan-type="'+PlanType+'">'+plan.name+'</option>' 2527 } 2528 else{ 2529 PlanHtml += '<option value="" data-plan="' + plan.id + '" data-selling-plan="' + plan.selling_plan_id + '" data-plan-name="' + plan.name + '" data-plan-shipment= "'+plan.delivery_policy.shipment_count+'" data-plan-discount="'+PlanDiscount+'" data-plan-type="'+PlanType+'">'+plan.name+'</option>' 2530 } 2531 } 2532 else{ 2533 if(key == 0){ 2534 PlanHtml += '<option value="" selected="selected" data-plan="' + plan.id + '" data-plan-name="' + plan.name + '" data-plan-shipment= "'+plan.delivery_policy.shipment_count+'" data-plan-discount="'+PlanDiscount+'" data-plan-type="'+PlanType+'">'+plan.name+'</option>' 2535 } 2536 else{ 2537 PlanHtml += '<option value="" data-plan="' + plan.id + '" data-plan-name="' + plan.name + '" data-plan-shipment= "'+plan.delivery_policy.shipment_count+'" data-plan-discount="'+PlanDiscount+'" data-plan-type="'+PlanType+'">'+plan.name+'</option>' 2538 } 2539 } 2540 GetPlans += PlanHtml; 2541 getPlanDesc += DescriptionHtml; 2542 }) 2543 if(regularCount > 0 && prepaidCount >0){ 2544 maxPrepaidDiscount = Math.max.apply(Math,prepaidDiscount); 2545 } 2546 2547 if(recurpay.subscriptionFirst == true){ 2548 pdpTemplate += '<div class="recurpay__widget recurpay__subscription_first" data-recurpay-widget>' 2549 } 2550 else{ 2551 pdpTemplate += '<div class="recurpay__widget" data-recurpay-widget>' 2552 } 2553 pdpTemplate += '<div class="recurpay__widget_container" data-type="subscription-purchase">' 2554 pdpTemplate += '<input class="recurpay__subscribe_radio recurpay__group_input" name="recurpay__group_main" type="radio" autocomplete="off" value="subscription">' 2555 pdpTemplate += '<div for="recurpay__subscribe_radio" class="recurpay__group_label">' 2556 pdpTemplate += '<div class="recurpay__group_header"><div class="recurpay__radio_group">' 2557 pdpTemplate += '<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><circle cx="12" cy="12" r="10" stroke="currentColor" stroke-width="1"></circle><circle cx="12" cy="12" r="6" fill="currentColor" class="recurpay__radio_svg"></circle></svg>' 2558 pdpTemplate += '</div><div class="recurpay__group_title"> <div>'+recurpay.settings.translations.premium_subscription_label+'</div>' 2559 pdpTemplate += '<div class="recurpay__group_subtitle">'+recurpay.settings.translations.premium_subscription_label_description+'</div>' 2560 pdpTemplate += '</div><div class="recurpay__group_price_wrapper"><div class="recurpay__group_compare_price" ></div>' 2561 pdpTemplate += '<div class="recurpay__group_selling_price recurpay__group_discounted_price"></div></div></div>' 2562 pdpTemplate += '<div class="recurpay__group_content_wrapper"><div class="recurpay__group_content"><div class="recurpay__group_frequency">' 2563 pdpTemplate += '<div class="recurpay__frequency_label_title">'+recurpay.settings.translations.premium_frequency_dropdown_label+'</div>' 2564 pdpTemplate += '<select class="recurpay__frequency_select recurpay__frequency" name="recurpay-input">
2564'+GetPlans+'</select>' 2565 pdpTemplate += '</div><div class="recurpay__description_wrapper">'+getPlanDesc+'</div></div><div class="recurpay__action"><button type="button" data-recurpay-action="">'+recurpay.settings.translations.premium_subscription_button_text+'</button></div>' 2566 pdpTemplate += '</div>' 2567 2568 pdpTemplate += '<div class="recurpay__offer_wrapper recurpay__offer_onetime">'+recurpay.settings.translations.premium_one_time_saving_icon+'' 2569 pdpTemplate += '<div class="recurpay__offer_message recurpay__offer_message_onetime">' 2570 pdpTemplate += '<span>'+recurpay.settings.translations.premium_one_time_saving_msg+'</span>' 2571 pdpTemplate += '<span class="recurpay__offer_saving_message">' 2572 pdpTemplate += '<span class="recurpay__offer_saving_message_amount">'+recurpay.settings.translations.premium_one_time_discount_label+'' 2573 pdpTemplate += '</span><span class="recurpay__offer_saving_message_text">'+recurpay.settings.translations.premium_one_time_saving_label+'</span></span>' 2574 pdpTemplate += '</div></div>' 2575 2576 pdpTemplate += '<div class="recurpay__offer_wrapper recurpay__offer_subscription">'+recurpay.settings.translations.premium_subscription_saving_icon+'' 2577 pdpTemplate += '<div class="recurpay__offer_message recurpay__offer_message_subscription">' 2578 pdpTemplate += '<span>'+recurpay.settings.translations.premium_subscription_saving_msg+'</span>' 2579 pdpTemplate += '<span class="recurpay__offer_saving_message">'+recurpay.settings.translations.premium_subscription_discount_label+'' 2580 pdpTemplate += '<span class="recurpay__offer_saving_message_text">'+recurpay.settings.translations.premium_subscription_saving_label+'</span>' 2581 pdpTemplate += '</span></div></div>' 2582 pdpTemplate += '</div></div>' 2583 2584 pdpTemplate += '<div class="recurpay__widget_container recurpay__widget_container--selected" data-type="onetime-purchase">' 2585 pdpTemplate += '<input class="recurpay__onetime_radio recurpay__group_input" name="recurpay__group_main" type="radio" autocomplete="off" value="one-time" checked>' 2586 pdpTemplate += '<div for="recurpay__onetime_radio" class="recurpay__group_label">' 2587 pdpTemplate += '<div class="recurpay__group_header">' 2588 pdpTemplate += '<div class="recurpay__radio_group">' 2589 pdpTemplate += '<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><circle cx="12" cy="12" r="10" stroke="currentColor" stroke-width="1"></circle><circle cx="12" cy="12" r="6" fill="currentColor" class="recurpay__radio_svg"></circle></svg>' 2590 pdpTemplate += '</div><div class="recurpay__group_title">'+recurpay.settings.translations.premium_onetime_label+'</div>' 2591 pdpTemplate += '<div class="recurpay__group_price_wrapper"><div class="recurpay__group_selling_price"></div>' 2592 pdpTemplate += '</div></div></div></div></div>' 2593 2594 pdpTemplate += '<input type="hidden" class="recurpay_plan_name" name="" value="">'; 2595 pdpTemplate += '<input type="hidden" class="recurpay_plan_id" name="" value="">'; 2596 pdpTemplate += '<input type="hidden" class="recurpay_purchase_data" name="" value="">'; 2597 if(recurpay.checkout == "shopify"){ 2598 pdpTemplate += '<input type="hidden" class="recurpay_selling_plan_id" name="" value="">'; 2599 } 2600 pdpTemplate = pdpTemplate.replaceAll('[[SAVING_AMOUNT]]', '<span class="recurpay__offer_saving_message_amount recurpay__saving_amount"></span>'); 2601 pdpTemplate = pdpTemplate.replaceAll('[[DISCOUNT_PERCENTAGE]]', '<span class="recurpay__offer_saving_message_amount_text"></span>'); 2602 2603 return pdpTemplate; 2604 } 2605 if($(pdpSelector).length <= 0){ 2606 if (window.location.href.indexOf("/products/") > -1) { 2607 if($(atcFormSelector).find(atcSelector).filter(':visible').length){ 2608 if($(atcFormSelector).find(atcSelector).filter(':visible').first().parent().css('display') == 'flex' && $(atcFormSelector).find(atcSelector).filter(':visible').first().parent().css('flex-direction') == 'row'){ 2609 $(atcFormSelector).find(atcSelector).filter(':visible').first().parent().before('<div class="recurpay-pdp-widget" data-product-id="'+recurpay.product.id+'" data-product-available="'+recurpay.product.available+'" data-default-variant="'+recurpay.product.availableVariant+'" data-only-subscription="'+recurpay.product.onlySubscription+'"></div>'); 2610 } 2611 else{ 2612 $(atcFormSelector).find(atcSelector).filter(':visible').first().before('<div class="recurpay-pdp-widget" data-product-id="'+recurpay.product.id+'" data-product-available="'+recurpay.product.available+'" data-default-variant="'+recurpay.product.availableVariant+'" data-only-subscription="'+recurpay.product.onlySubscription+'"></div>'); 2613 } 2614 if($(pdpSelector).parent().css('position') == 'fixed' || $(pdpSelector).parent().css('position') == 'sticky' || $(pdpSelector).parent().css('position') == 'absolute' ){ 2615 $(pdpSelector).parent().addClass("recurpay-z-index"); 2616 } 2617 }
2618 else if($(atcFormSelector).find(atcSelector).length){ 2619 if($(atcFormSelector).find(atcSelector).first().parent().css('display') == 'flex' && $(atcFormSelector).find(atcSelector).filter(':visible').first().parent().css('flex-direction') == 'row'){ 2620 $(atcFormSelector).find(atcSelector).first().parent().before('<div class="recurpay-pdp-widget" data-product-id="'+recurpay.product.id+'" data-product-available="'+recurpay.product.available+'" data-default-variant="'+recurpay.product.availableVariant+'" data-only-subscription="'+recurpay.product.onlySubscription+'"></div>'); 2621 } 2622 else{ 2623 $(atcFormSelector).find(atcSelector).first().before('<div class="recurpay-pdp-widget" data-product-id="'+recurpay.product.id+'" data-product-available="'+recurpay.product.available+'" data-default-variant="'+recurpay.product.availableVariant+'" data-only-subscription="'+recurpay.product.onlySubscription+'"></div>'); 2624 } 2625 if($(pdpSelector).parent().css('position') == 'fixed' || $(pdpSelector).parent().css('position') == 'sticky' || $(pdpSelector).parent().css('position') == 'absolute' ){ 2626 $(pdpSelector).parent().addClass("recurpay-z-index"); 2627 } 2628 } 2629 else{ 2630 $(atcFormSelector).append('<div class="recurpay-pdp-widget" data-product-id="'+recurpay.product.id+'" data-product-available="'+recurpay.product.available+'" data-default-variant="'+recurpay.product.availableVariant+'" data-only-subscription="'+recurpay.product.onlySubscription+'"></div>') 2631 } 2632 } 2633 } 2634 if($(pdpSelector).length){ 2635 recurpay.allProducts = []; 2636 for(i=0; i<$(pdpSelector).length; i++){ 2637 if($(pdpSelector).eq(i).attr("data-product-id") != undefined && $(pdpSelector).eq(i).attr("data-product-available") != undefined ){ 2638 recurpay.allProducts.push($(pdpSelector).eq(i).attr("data-product-id")); 2639 } 2640 } 2641 $.ajax({
2642 url: recurpay.pdpAPI, 2643 type: 'POST', 2644 async:true, 2645 data: {"products": recurpay.allProducts,"settings": true}, 2646 success: function(response) { 2647 if(response != "ERROR") { 2648 if(response.plans.length > 0){ 2649 recurpay.productDatas = response.plans; 2650 if(response.settings.translations !== null && !$.isEmptyObject(response.settings.translations)){ 2651 recurpay.settings = response.settings; 2652 document.documentElement.style.setProperty('--recurpay_primary_color', recurpay.settings.snippet_color_codes.subscription_brand_color); 2653 document.documentElement.style.setProperty('--recurpay_secondary_color', recurpay.settings.snippet_color_codes.subscription_secondary_color); 2654 document.documentElement.style.setProperty('--recurpay_button_text_color', recurpay.settings.snippet_color_codes.subscription_button_text_color); 2655 document.documentElement.style.setProperty('--recurpay_button_bg_color', recurpay.settings.snippet_color_codes.subscription_button_color); 2656 document.documentElement.style.setProperty('--recurpay_savings_bg_color', hexToRgbA(recurpay.settings.snippet_color_codes.subscription_brand_color)); 2657 } 2658 $(response.plans).each(function(){ 2659 var pdpHTML = ''; 2660 var $this = $(this); 2661 if($this[0].product.plans.length >0){ 2662 pdpHTML = recurPDP($this[0].product); 2663 var getElem = $('.recurpay-pdp-widget[data-product-id="'+$this[0].product.id+'"]'); 2664 if($(getElem).length && $(getElem).attr("data-product-available") == "true"){ 2665 $(getElem).html(pdpHTML); 2666 if($(getElem).attr("data-only-subscription") == "true"){ 2667 $(getElem).find(".recurpay__widget[data-recurpay-widget]").addClass("recurpay_only_subscription_widget"); 2668 } 2669 if((window.location.href.indexOf("/products/") > -1) && (window.location.href.indexOf("snippet_status=false") > -1)){ 2670 $(getElem).before("<span class='recurpay-preview-text'>You are previewing subscriptions currently and the option below is not visible to customers on your live store. <a href='"+recurpay.domainURL+"/home?step=go_live' class='recurpay-preview-link' target='_blank'>Click here</a> if you are ready to show it your customers now.</span>") 2671 } 2672 if($(getElem).is(":hidden") || $(getElem).width() < 220){ 2673 logEvent("product_widget","Product snippet added but needs a reverification", "warning"); 2674 } 2675 } 2676 var params = new Proxy(new URLSearchParams(window.location.search), { 2677 get: (searchParams, prop) => searchParams.get(prop), 2678 }); 2679 2680 if(params.variant !== undefined && params.variant !== null){ 2681 var variant_id = parseInt(params.variant); 2682 let variant_data = []; 2683 variant_data.push(...$this[0].product.variants.filter(function(searchId) { 2684 return parseInt(searchId.id) == variant_id; 2685 })); 2686 if(variant_data.length >=1){ 2687 recurpay.product.selectedVariant = params.variant 2688 recurDiscountedPrice(recurpay.product.selectedVariant); 2689 } 2690 else{ 2691 recurpay.product.selectedVariant = $this[0].product.variants[0].id; 2692 recurDiscountedPrice($this[0].product.variants[0].id); 2693 } 2694 } 2695 else{ 2696 if(recurpay.product.availableVariant !== "" && recurpay.product.availableVariant !== undefined){ 2697 recurpay.product.selectedVariant = recurpay.product.availableVariant; 2698 recurDiscountedPrice(recurpay.product.availableVariant); 2699 } 2700 else{ 2701 recurpay.product.selectedVariant = $this[0].product.variants[0].id; 2702 recurDiscountedPrice($this[0].product.variants[0].id); 2703 } 2704 } 2705 } 2706 }); 2707 if(response.settings.sell_only_as_subscription !== undefined && response.settings.sell_only_as_subscription !== null){ 2708 if(response.settings.sell_only_as_subscription == true){ 2709 updateSelectors(true); 2710 } 2711 else{ 2712 updateSelectors(); 2713 } 2714 } 2715 } 2716 } 2717 } 2718 }); 2719 } 2720 else{ 2721 if((window.location.href.indexOf("/products/") > -1) && (window.location.href.indexOf("recurpay_preview=true") > -1)){ 2722 var modalHTML = ""; 2723 modalHTML += '<div class="recurpay-modal-container" data-recurpay-visibility-modal>' 2724 modalHTML += '<div class="recurpay-modal--overlay"></div>' 2725 modalHTML += '<div class="recurpay-modal-inner-container">' 2726 modalHTML += '<div class="recurpay-modal-content">' 2727 modalHTML += '<div class="recurpay-modal-header">' 2728 modalHTML += '<div class="recurpay-modal-image">' 2729 modalHTML += '<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" x="0px" y="0px" viewBox="0 0 600 600" xml:space="preserve"><g id="LEFT_ARM_1"><g id="XMLID_46_"><path id="XMLID_290_" fill="#FFB96C" d="M294.4,485.5c-1.2,0.3-2.4,0.4-3.6,0.4c-0.2,0-0.4,0-0.6,0c-8.4-0.3-16.2-6.9-21-15.7 c-21.3-39.2-27.1-63.4-34.8-89.9c-1.9-6.6-1.4-13.3,1.4-18.1c2.2-3.7,5.7-6.4,10.5-6.9
2729c0.6-0.1,1.1-0.1,1.7-0.1 c8.5,0,17.4,6.8,20.9,15.6l36.5,89.4C310,471.5,305,483.1,294.4,485.5z"></path><path id="XMLID_280_" fill="#FCAF63" d="M290.2,485.9c-8.4-0.3-16.2-6.9-21-15.7c-21.3-39.2-27.1-63.4-34.8-89.9 c-1.9-6.6-1.4-13.3,1.4-18.1c9.5,23,40.7,98.5,50.3,116.1C287.6,481.1,289,483.6,290.2,485.9z"></path></g></g><g id="LEFT_ARM_2"><g id="XMLID_10_"><g id="XMLID_42_"><path id="XMLID_293_" fill="#FFB96C" d="M340.2,472c-0.9,2.3-2.1,4.1-3.3,5c-7.2,5.7-14.3,7-26.2,9.6c-11.9,2.6-24.2,2-29.9-3.4 c-1.9-1.8-3.3-3.8-4.1-5.9c-2.5-6-0.3-12.3,6.8-15c4.2-1.6,42.4-10.6,48.7-9.4C343.1,455,342.9,465.3,340.2,472z"></path><path id="XMLID_279_" fill="#FCAF63" d="M340.2,472c-0.9,2.3-2.1,4.1-3.3,5c-7.2,5.7-14.3,7-26.2,9.6c-11.9,2.6-24.2,2-29.9-3.4 c-1.9-1.8-3.3-3.8-4.1-5.9c3.2,0.9,9.6,2.1,20.5,0.9C306.4,477.2,325.3,474.3,340.2,472z"></path></g><g id="XMLID_41_"><path id="XMLID_49_" fill="#FEA691" d="M330.2,453.6c-11.9,4-10.6,11.9-8.8,19.6c1.8,7.7,16.6,27.5,21.1,28.5s4.8-0.8,3.6-4.5 c-1.2-3.7-9.7-16.6-9.7-16.6s9.4,12.8,13.3,16.6c3.9,3.8,7.2,3.5,7.1-0.7c-0.2-4.2-9.5-18.3-9.5-18.3s8.2,10.8,11.6,14.5 s7.9,3.1,6.3-1.9c-1.5-5-8.3-15.9-8.3-15.9s6.6,11,11,12.1c4.4,1.1,1.7-5.5-3-13.9C360.3,464.5,345,448.6,330.2,453.6z"></path><path id="XMLID_50_" fill="#FEA691" d="M320.2,464.6c0,0-2.5,9.8-0.9,18.4s4.3,10.3,6.1,10.7s2.4-1.9,1.5-5.6 c-0.9-3.7,1.5-11,1.5-11S325.8,462.4,320.2,464.6z"></path></g></g></g><g id="BODY"><g id="XMLID_70_"><path id="XMLID_45_" fill="#FEC272" d="M273.1,496H172.2c0,0-13.9-97.2-5.1-121.1c2.5-6.8,5.8-12.3,9.6-16.9 c9.5-11.6,21.7-16.9,30-19c10.9-2.8,20.4-2.9,28.6-0.9c21.8,5.2,33.9,25.1,37.8,46.8C278.5,414.8,273.1,496,273.1,496z"></path><path id="XMLID_43_" fill="#F9B35F" d="M207.6,358.5c-13.2,3.4-25.3,3-31-0.5c9.5-11.6,21.7-16.9,30-19 c10.9-2.8,20.4-2.9,28.6-0.9C237,344.9,224.6,354.1,207.6,358.5z"></path></g></g><g id="RIGHT_ARM_1"><g id="XMLID_16_"><path id="XMLID_278_" fill="#FFCD92" d="M199,381.3c0,1.6-0.1,3.2-0.4,4.7c-4.1,26.6-27.7,90.6-27.7,90.6c-1.7,5.1-5.3,8.9-9.7,11 c-4.4,2-9.5,2.4-14.4,0.5c-7.6-3-11.2-10.2-11.2-18.1c0-1.7,0.2-3.4,0.5-5.1c6.9-37.3,19.2-68.2,29.3-90 c4.4-9.6,15.2-15.6,24.7-10.8c2.9,1.4,4.9,3.7,6.4,6.3C198.3,373.6,199,377.4,199,381.3z"></path><path id="XMLID_273_" fill="#FCB765" d="M199,381.3c0,1.6-0.1,3.2-0.4,4.7c-4.1,26.6-27.7,90.6-27.7,90.6c-1.7,5.1-5.3,8.9-9.7,11 l35.2-117.3C198.3,373.6,199,377.4,199,381.3z"></path></g></g><g id="RIGHT_ARM_2"><g id="XMLID_17_"><g id="XMLID_20_"><path id="XMLID_285_" fill="#FFCD92" d="M230.5,487.4c-2.2,5.4-9.4,5.6-9.4,5.6s-20.2,1.2-37.7,1.2c-17.5,0-34.7,0-41.7-7.9 c-1.4-1.6-2.5-3.4-3.1-5.3c-2.6-7.3,0.7-16,11.1-20.4c7.5-3.2,16.1-2.1,25.5-1.2c9.4,0.9,27.5,5.1,38,7.9 c10.6,2.7,16.9,5.4,17.8,15.4C231.3,484.6,231,486.1,230.5,487.4z"></path><path id="XMLID_284_" fill="#FCB765" d="M230.5,487.4c-2.2,5.4-9.4,5.6-9.4,5.6s-20.2,1.2-37.7,1.2c-17.5,0-34.7,0-41.7-7.9 c-1.4-1.6-2.5-3.4-3.1-5.3c7.8,2.4,18.3,5.2,26.7,5.9C189,488.9,220.4,487.9,230.5,487.4z"></path></g><g id="XMLID_2_"><g id="XMLID_18_"><path id="XMLID_47_" fill="#FEA691" d="M251.6,471.3c0,1.6-0.2,3.3-0.6,5.1c-2.1,8.6-13.2,15.2-30.1,16.1 c-7.5,0.4-12.6,0.4-16-0.4c-4.4-1.1-6.1-3.7-6.5-9.1c-0.5-6.9,4.7-13.2,8.6-15.9c11.7-7.9,22.6-8.5,32.1-7.6 C247.6,460.4,251.5,465.1,251.6,471.3z"></path><path id="XMLID_44_" fill="#FC8172" d="M251.6,471.3c0,1.6-0.2,3.3-0.6,5.1c-2.1,8.6-13.2,15.2-30.1,16.1 c-7.5,0.4-12.6,0.4-16-0.4c-0.4-1-0.7-2.2-0.8-3.7c-0.5-5.9,4.4-11.4,8.2-13.7c11.1-6.8,21.5-7.4,30.5-6.5 C246.8,468.5,249.7,469.6,251.6,471.3z"></path></g><g id="XMLID_19_"><path id="XMLID_48_" fill="#C7DCF9" d="M264.7,488.7c0,1.1-0.2,2.1-0.5,3.2h-55c-0.3-1-0.5-2.1-0.5-3.2c0-9.6,12.5-17.4,28-17.4 C252.2,471.3,264.7,479.1,264.7,488.7z"></path><path id="XMLID_254_" opacity="0.55" fill="#C7DCF9" d="M263.5,490.2c0,0.6-0.1,1.1-0.4,1.7h-50.3c-0.3-0.6-0.4-1.1-0.4-1.7 c0-5.1,11.4-9.3,25.5-9.3C252.1,480.9,263.5,485.1,263.5,490.2z"></path></g><g id="XMLID_37_"><path id="XMLID_28_" fill="#FEA691" d="M252.6,456.6c3.6,0.4,6.1,2.7,7.5,7.5c1.4,4.8,1.7,11.9,0.2,14.4 c-1.5,2.5-4.3,3.6-7.4,1.1c-3.1-2.5-4.8-9.5-5.8-13C245.9,462,244.5,455.8,252.6,456.6z"></path><g id="XMLID_4_"><path id="XMLID_38_" fill="#FEA691" d="M239.2,454.3c3.9,0.4,5.5,3.7,7,8.7c1.5,5,1.8,12.6,0.2,15.3c-1.6,2.6-4.6,3.8-7.9,1.2 c-3.3-2.6-5.2-10.1-6.2-13.8C231,460.8,230.4,453.5,239.2,454.3z"></path><path id="XMLID_79_" fill="#FF8D76" d="M243.1,480.8c-1.4,0.3-3,0-4.6-1.4c-3.3-2.6-5.1-10.1-6.2-13.8c-1.1-4-1.7-9.7,3-11.1 c-0.9,2.7-0.4,6.4,0.3,9.2c1,4.3,2.9,13,6.2,16C242.3,480.2,242.7,480.6,243.1,480.8z"></path></g><path id="XMLID_39_" fill="#FEA691" d="M224.6,456.6c3.9,0.4,6.5,2.9,8,7.9s1.8,12.6,0.2,15.3c-1.6,2.6-4.6,3.8-7.9,1.2 c-3.3-2.6-5.2-10.1-6.2-13.8C217.4,462.3,215.9,455.7,224.6,456.6z"></path><path id="XMLID_81_" fill="#FF8D76" d="M228.5,482.4c-1.1,0-2.3-0.5-3.5-1.5c-3.3-2.6-5.1-10.1-6.2-13.8 c-1-3.8-2.2-8.6,1.5-10.2c-0.3,2.5,0.4,5.7,1.1,8.3c1.2,4.5,3.3,13.7,7,17C228.4,482.4,228.4,482.4,228.5,482.4z"></path><path id="XMLID_40_" fill="#FEA691" d="M211.5,459.4c3.4-1,6,2.7,7.3,7.3c1.3,4.6,1.7,11.6,0.2,14c-1.4,2.4-4.2,3.5-7.2,1.1 c-3-2.4-3.8-7-4.7-10.4C205.9,467,204.9,461.4,211.5,459.4z"></path><path id="XMLID_82_" fill="#FF8D76" d="M215.2,483.2c-1.1,0-2.2-0.4-3.4-1.4c-3-2.4-3.8-7-4.7-10.4c-1.1-3.8-1.9-8.5,2.1-11 c-0.3,2.7,0.2,5.6,0.7,8.2c0.9,4.6,1.6,10.9,5,14.3C215,483,215.1,483.1,215.2,483.2z"></path><path id="XMLID_78_" fill="#FF8D76" d="M256.8,480.9c-1.2,0.1-2.5-0.3-3.8-1.4c-3.1-2.5-4.8-9.5-5.8-13c-1-3.7-2.2-8.5,1.8-9.7 c0,2.2,0.5,4.7,1,6.9c1,4.5,2.9,13.5,6.1,16.7C256.4,480.6,256.6,480.8,256.8,480.9z"></path></g></g></g></g><g id="HEAD"><g id="XMLID_89_"><path id="XMLID_6_" fill="#FF8D76" d="M208.8,235c0,0,9.3-3.8,15.6,8.8c6.3,12.7-0.5,20.8-0.5,20.8S217.7,246.3,208.8,235z"></path><path id="XMLID_173_" fill="#FEA691" d="M215.2,350.9c-8.8,4.1-14.9-1.6-14.9-1.6l-5.5-11.9l-9.9-21.4c14.9-3.2,27.9-5.7,27.9-5.7 l2.3,9.5l4.3,17.7C219.2,337.6,224,346.9,215.2,350.9z"></path><path id="XMLID_171_" fill="#FF8D76" d="M215,319.9c-1.3,1.9-2.7,3.9-4.4,5.8c-4.3,5.1-10.5,9-15.9,11.7l-9.9-21.4 c14.9-3.2,27.9-5.7,27.9-5.7L215,319.9z"></path><ellipse id="XMLID_3_" transform="matrix(0.8545 -0.5194 0.5194 0.8545 -114.0092 131.008)" fill="#FEA691" cx="176.9" cy="269" rx="47.2" ry="57.7"></ellipse><path id="XMLID_12_" fill="#FF8D76" d="M217.4,308.8c-2.9,3.7-6.5,
27296.9-10.6,9.5c-22.3,13.5-53.7,2.4-70.3-24.8 c-16.4-26.9-12-59.6,9.7-73.4c-12.6,16.2-13.2,42.2,0.3,64.3c16.5,27.2,48,38.3,70.3,24.8C217,309.1,217.2,309,217.4,308.8z"></path><path id="XMLID_5_" fill="#283575" d="M157.2,309.5c0,0-17-13.4-21.3-37.4s0.5-33.7,20.2-45.3c19.7-11.5,34.4-7.4,34.4-7.4 s-14-10.5-36.9-6.6c-22.9,3.8-46.2,25.6-41.4,58.4C117.2,306.2,138,316.5,157.2,309.5z"></path><path id="XMLID_11_" fill="#F76F59" d="M177.8,246.8c-2.7,1.9,1.1,12,9.3,19.5c8.2,7.5,16.1,3.6,16.3-3.8 C203.6,254.9,187.1,240.2,177.8,246.8z"></path><path id="XMLID_7_" fill="#FF8D76" d="M137.5,291.4c0,0-16,15.7-1.6,29.4c13.8,13.1,31.2-4.5,31.2-4.5S142.7,303.2,137.5,291.4z"></path><path id="XMLID_250_" fill="#F76F59" d="M139.4,300.5c0,0-9,8.8-0.9,16.6c7.8,7.4,17.6-2.5,17.6-2.5S142.3,307.2,139.4,300.5z"></path></g></g><g id="HAIR"><g id="XMLID_84_"><path id="XMLID_8_" fill="#283575" d="M188.5,218.1c0,0,1.7-30.2-15.5-42.5c-19.4-13.8-30.3,6.1-23.9,22.4 c2.8,7.3,5.8,11.7,8.2,14.3c2.2,2.4,5.2,3.8,8.4,4L188.5,218.1z"></path><path id="XMLID_9_" fill="#283575" d="M122.7,192.6c-15.3,12.2-2.1,29.7,4.2,34.4c2.7,2,5.6,3.6,8.1,4.8c3.4,1.6,7.4,1.4,10.6-0.6 l21.6-13.7C167.2,217.6,143,176.5,122.7,192.6z"></path><path id="XMLID_51_" fill="#3C4E8E" d="M159,172.3c-4.8,0.6,0.5,9.8,7.5,11S171.3,170.8,159,172.3z"></path><path id="XMLID_61_" fill="#3C4E8E" d="M128.7,192.8c-2.8,3.2,4.5,7.3,10.4,5.3C145.1,196.2,134.9,185.8,128.7,192.8z"></path></g></g><g id="MOUTH"><g id="XMLID_83_"><path id="XMLID_177_" fill="#F76F59" d="M217.7,285c-0.5,1-1.2,1.9-2.2,2.7c-3.7,2.9-6.5,7.1-8.5,11.5c-1.8,3.9-6.4,8.5-10.7,5.2 c-0.5-0.4-1-0.8-1.4-1.4c-4.5-5.7-2.8-20.4,4.2-26.9c5.4-5,12.1-3.7,15.5-0.9C217.9,277.7,219.3,281.7,217.7,285z"></path><path id="XMLID_175_" fill="#FF6EA9" d="M217.7,285c-0.5,1-1.2,1.9-2.2,2.7c-3.7,2.9-6.5,7.1-8.5,11.5c-1.8,3.9-6.4,8.5-10.7,5.2 c0-6.3,2.3-13.7,6.7-17.7C208.1,282.1,214.1,282.7,217.7,285z"></path></g></g><g id="EYE_1"><g id="XMLID_14_"><path id="XMLID_86_" fill="#1C3177" d="M155.8,267.7c-3.2,0-5.7-1-5.9-1.1c-1.3-0.5-1.9-2-1.4-3.3c0.5-1.3,2-1.9,3.3-1.4 c0.1,0,5.6,2.2,8.6-1.1c3.9-4.1-0.2-9.4-0.3-9.6c-0.9-1.1-0.7-2.7,0.4-3.6c1.1-0.9,2.7-0.7,3.6,0.4c2.4,3.1,5.5,10.4,0,16.2 C161.6,266.9,158.5,267.7,155.8,267.7z"></path></g></g><g id="EYE_2"><g id="XMLID_15_"><path id="XMLID_85_" fill="#1C3177" d="M193,242.6c-5.1,0-9.4-3.8-9.7-4c-1.1-0.9-1.1-2.6-0.2-3.6c0.9-1,2.5-1.1,3.6-0.2 c0,0,4.6,3.9,8,2.4c1.5-0.7,0.4-3.8,0.3-3.9c-0.5-1.3,0.1-2.8,1.5-3.3c1.3-0.5,2.8,0.1,3.3,1.4c1.5,3.7,1.1,8.6-3,10.4 C195.5,242.4,194.2,242.6,193,242.6z"></path></g></g><g id="EYEBROW_1"><g id="XMLID_1_"><path id="XMLID_88_" fill="#1C3177" d="M142.4,261.7c-0.1,0-0.2,0-0.3,0c-1.4-0.2-2.4-1.4-2.3-2.8c0-0.3,0.7-6.3,4.9-12.4 c4.1-6.1,8.3-8.2,8.5-8.3c1.3-0.6,2.8-0.1,3.4,1.2c0.6,1.3,0.1,2.8-1.2,3.4c0,0-3.2,1.7-6.5,6.5c-3.4,5-4,10-4,10.1 C144.8,260.7,143.7,261.7,142.4,261.7z"></path></g></g><g id="EYEBROW_2"><g id="XMLID_13_"><path id="XMLID_87_" fill="#1C3177" d="M179,232.1c-0.7,0-1.5-0.3-2-0.9c-0.9-1.1-0.7-2.7,0.4-3.6c0.3-0.2,2.6-2.1,6.7-3.3 c4.1-1.2,7.5-1.1,7.6-1.1c1.4,0,2.5,1.2,2.5,2.6c0,1.4-1.3,2.5-2.6,2.5c0,0-2.7-0.1-6,0.9c-3.2,1-5,2.4-5,2.4 C180.1,231.9,179.6,232.1,179,232.1z"></path></g></g><g id="TABLE"><g id="XMLID_248_"><path id="XMLID_22_" fill="#99ADF9" d="M505.9,506.3H98.3c-4,0-7.2-3.2-7.2-7.2l0,0c0-4,3.2-7.2,7.2-7.2h407.6 c4,0,7.2,3.2,7.2,7.2l0,0C513.1,503,509.9,506.3,505.9,506.3z"></path><path id="XMLID_198_" fill="#789FEF" d="M505.2,506.3H157.1c-4,0-7.2-3.2-7.2-7.2l0,0c0-4,3.2-7.2,7.2-7.2h348.1 c4,0,7.2,3.2,7.2,7.2l0,0C512.5,503,509.2,506.3,505.2,506.3z"></path></g></g><g id="DESKTOP"><g id="XMLID_186_"><g id="XMLID_182_"><path id="XMLID_25_" fill="#E1ECFF" d="M457.6,444.7h-186c-3.3,0-5.9-3-5.3-6.3l19.8-118.7c0.4-2.6,2.7-4.5,5.3-4.5h186 c3.3,0,5.9,3,5.3,6.3L463,440.2C462.5,442.8,460.3,444.7,457.6,444.7z"></path><path id="XMLID_29_" fill="#C7DCF9" d="M461.6,444.7H278c-3.3,0-5.9-3-5.3-6.3l19.8-118.7c0.4-2.6,2.7-4.5,5.3-4.5h183.6 c3.3,0,5.9,3,5.3,6.3l-19.8,118.7C466.5,442.8,464.2,444.7,461.6,444.7z"></path><path id="XMLID_31_" fill="#B7D4F7" d="M442.2,432H302c-2.6,0-4.5-2.3-4.1-4.8l15.1-90.6c0.3-2,2.1-3.5,4.1-3.5h140.1 c2.6,0,4.5,2.3,4.1,4.8l-15.1,90.6C445.9,430.5,444.2,432,442.2,432z"></path></g><g id="XMLID_183_"><path id="XMLID_24_" fill="#E1ECFF" d="M382.3,484.5h-25.5c-2.4,0-4.2-2-4-4.4l6.7-66.5c0.2-2,1.9-3.6,4-3.6H389 c2.4,0,4.2,2,4,4.4l-6.7,66.5C386.1,483,384.4,484.5,382.3,484.5z"></path><path id="XMLID_26_" fill="#C7DCF9" d="M384.1,484.5h-23.4c-1.5,0-2.7-1.3-2.6-2.8l7-69.4c0.1-1.3,1.2-2.3,2.6-2.3h23.4 c1.5,0,2.7,1.3,2.6,2.8l-7,69.4C386.5,483.5,385.4,484.5,384.1,484.5z"></path></g><g id="XMLID_185_"><path id="XMLID_27_" fill="#E1ECFF" d="M424.7,491.8H318.5c-2.2,0-4-1.8-4-4V479c0-2.2,1.8-4,4-4h106.2c2.2,0,4,1.8,4,4v8.8 C428.7,490,426.9,491.8,424.7,491.8z"></path><path id="XMLID_30_" fill="#C7DCF9" d="M426.9,491.8H327c-2.3,0-4.2-1.9-4.2-4.2v-8.4c0-2.3,1.9-4.2,4.2-4.2h99.9 c2.3,0,4.2,1.9,4.2,4.2v8.4C431,489.9,429.2,491.8,426.9,491.8z"></path></g></g></g><g id="SIGN"><g id="XMLID_21_"><path id="XMLID_77_" fill="#ff9800" d="M501.5,298.7c-1,0.7-2.3,1.2-3.7,1.2H402c-4.8,0-7.8-5-5.6-9.3l34.8-66.9l12.8-24.6 c2.4-4.5,8.8-4.5,11.2,0l48.2,91.5C505,293.6,503.9,297,501.5,298.7z"></path><path id="XMLID_74_" fill="#ff9800" d="M501.5,298.7c-1,0.7-2.3,1.2-3.7,1.2H402c-4.8,0-7.8-5-5.6-9.3l34.8-66.9L420.6,280 c-0.9,4.8,2.4,9.3,7.3,9.9L501.5,298.7z"></path><g id="XMLID_32_"><g id="XMLID_34_"><path id="XMLID_35_" fill="#FFFFFF" d="M445.2,264.1l-5-35.8c-0.2-1.2,0.8-2.3,2-2.3h14.2c1.2,0,2.1,1.1,2,2.3l-5,35.8 c-0.1,1-1,1.7-2,1.7h-4.3C446.1,265.9,445.3,265.1,445.2,264.1z"></path></g><circle id="XMLID_33_" fill="#FFFFFF" cx="449.3" cy="279.1" r="7.1"></circle></g></g></g></svg>' 2730 modalHTML += '</div>' 2731 modalHTML += '<h1 class="recurpay-preview-title">You are previewing subscriptions option for this product</h1>' 2732 modalHTML += '<span class="recurpay-preview-subtext">Note: This is not visible to your customers</span>' 2733 modalHTML += '</div>' 2734 modalHTML += '<div class="recurpay-modal-body">' 2735 modalHTML += '<div class="recurpay-modal-body-content">' 2736 modalHTML += '<div class="recurpay-modal-alert-box"><span class="recurpay-modal-alert-text">Looks like the subscription option is not visible on your store due to some conflict with theme. Talk to us on <a href="'+recurpay.domainURL+'/home?theme=false" target="_blank" data-initiate-live-chat>Live Chat</a>
2736 to get it resolved instantly</span></div>' 2737 modalHTML += '</div></div>' 2738 modalHTML += '<div class="recurpay-modal-footer">' 2739 modalHTML += '<a href="javascript:void(0)" class="recurpay-modal-cancel-link"><button type="button" class="recurpay-modal-cancel-btn">Close</button></a>' 2740 modalHTML += '<a href="'+recurpay.domainURL+'/home?theme=false" target="_blank" class="recurpay-modal-chat-link"><button type="button" class="recurpay-modal-chat-btn" data-initiate-live-chat>Start a Live Chat</button></a>' 2741 modalHTML += '</div></div></div></div>' 2742 if($('[data-recurpay-visibility-modal]').length <= 0){ 2743 if($('body').length){ 2744 $('body').append(modalHTML); 2745 } 2746 else if($('html').length){ 2747 $('html').append(modalHTML); 2748 } 2749 } 2750 } 2751 if((window.location.href.indexOf("/products/") > -1)){ 2752 logEvent("product_widget","Failed to show product snippet", "critical"); 2753 } 2754 } 2755 2756 function recurProperties(elem){ 2757 var getParent = $(elem).parents(pdpSelector); 2758 if( $(getParent).find("[name='recurpay__group_main'][value='subscription']").is(":checked")){ 2759 var planName = $(getParent).find('[name="recurpay-input"] option:selected').attr('data-plan-name'), 2760 planId = $(getParent).find('[name="recurpay-input"] option:selected').attr('data-plan'); 2761 $(getParent).find('.recurpay_plan_name').attr("name","properties[Plan]").val(planName); 2762 $(getParent).find('.recurpay_plan_id').attr("name","properties[_PlanId]").val(planId); 2763 if(parseInt(recurpay.subscriptionInfluence && recurpay.subscriptionInfluenceCount) >=1){ 2764 $(getParent).find('.recurpay_purchase_data').attr("name","properties[_PurchaseData]").val(recurpay.subscriptionInfluenceCount); 2765 } 2766 $(getParent).find('.recurpay__description[data-description-id]').hide(); 2767 $(getParent).find('.recurpay__description[data-description-id="'+planId+'"]').show(); 2768 if(recurpay.checkout == "shopify"){ 2769 var sellingPlanId = $(getParent).find('[name="recurpay-input"] option:selected').attr('data-selling-plan'); 2770 $(getParent).find('.recurpay_selling_plan_id').attr("name","selling_plan").val(sellingPlanId); 2771 } 2772 } 2773 else{ 2774 $(getParent).find('.recurpay_plan_name').attr("name",""); 2775 $(getParent).find('.recurpay_plan_id').attr("name",""); 2776 $(getParent).find('.recurpay_purchase_data').attr("name",""); 2777 if(recurpay.checkout == "shopify"){ 2778 $(getParent).find('.recurpay_selling_plan_id').attr("name",""); 2779 } 2780 } 2781 offerSavings(getParent); 2782 } 2783 function addSubscription(btn){ 2784 var variantSelector = $(btn).parents(atcFormSelector).find('[name="id"]'), 2785 quantitySelector = $(btn).parents(atcFormSelector).find('[name="quantity"]'), 2786 subscriptionPlanId = $(btn).parents(pdpSelector).find('[name="recurpay-input"] option:selected').attr('data-plan'), 2787 subscriptionPlanName = $(btn).parents(pdpSelector).find('[name="recurpay-input"] option:selected').attr('data-plan-name'), 2788 subscriptionPlanType = $(btn).parents(pdpSelector).find('[name="recurpay-input"] option:selected').attr('data-plan-type'), 2789 planVariant = parseInt(variantSelector.val()), 2790 planQuantity = 1, 2791 planParams = {}; 2792 if(quantitySelector.length) { 2793 planQuantity = parseInt(quantitySelector.val()); 2794 } 2795 2796 if(recurpay.checkout == "shopify"){ 2797 var sellingPlanId = $(btn).parents(pdpSelector).find('[name="recurpay-input"] option:selected').attr('data-selling-plan'); 2798 planParams = { 2799 id: planVariant, 2800 quantity: planQuantity, 2801 selling_plan: sellingPlanId, 2802 properties: { 2803 'Plan': subscriptionPlanName, 2804 '_PlanId': subscriptionPlanId 2805 } 2806 } 2807 } 2808 else{ 2809 planParams = { 2810 id: planVariant, 2811 quantity: planQuantity, 2812 properties: { 2813 'Plan': subscriptionPlanName, 2814 '_PlanId': subscriptionPlanId 2815 } 2816 } 2817 } 2818 2819 if(recurpay.checkout == "recurpay" && !recurpay.prepaidMixedCart && subscriptionPlanType == "prepaid"){ 2820 $.getJSON('/cart', function(response) { 2821 response.items = []; 2822 response.items.push(planParams); 2823 recurCart(response); 2824 }); 2825 } 2826 else{ 2827 if (recurpay.action == "default" && $(atcFormSelector).find(atcSelector).length){ 2828 $(btn).parents(atcFormSelector).find(atcSelector).first().click(); 2829 } 2830 else{ 2831 $.ajax({
2832 type: 'POST', 2833 url: '/cart/add.js', 2834 dataType: 'json', 2835 data: planParams, 2836 success: function() { 2837 if (recurpay.checkout == "recurpay" && recurpay.action == "checkout"){ 2838 $.getJSON('/cart', function(response) { 2839 recurCart(response); 2840 }); 2841 } 2842 else if(recurpay.action == "cart"){ 2843 document.location.href = '/cart'; 2844 } 2845 else{ 2846 document.location.href = '/checkout'; 2847 } 2848 }, 2849 error: function(xhr, status, error) { 2850 var err = eval("(" + xhr.responseText + ")"); 2851 $('[data-recurpay-error]') 2852 .html(err.description) 2853 .show().delay(3000).fadeOut(); 2854 } 2855 }); 2856 } 2857 } 2858 } 2859 2860 $(document).on('change',"[name='recurpay__group_main']", function(e) { 2861 var $this = $(this); 2862 $this.parents(pdpSelector).find('.recurpay__widget_container').removeClass("recurpay__widget_container--selected"); 2863 var checkVal = $this.val(); 2864 if($this.is(":checked")){ 2865 $this.parents('.recurpay__widget_container').addClass("recurpay__widget_container--selected"); 2866 } 2867 if(checkVal == "subscription"){ 2868 recurpay.subscriptionInfluence = true; 2869 recurpay.subscriptionInfluenceCount = recurpay.subscriptionInfluenceCount + 1; 2870 $this.parents(atcFormSelector).find(atcSelector).addClass("recurpay-hide"); 2871 $this.parents(atcFormSelector).find(buynowSelector).addClass("recurpay-hide"); 2872 $this.parents(pdpSelector).find('.recurpay__plans').show(); 2873 $this.parents(pdpSelector).find('.recurpay__group_content_wrapper').slideDown(); 2874 } 2875 else{ 2876 $this.parents(atcFormSelector).find(atcSelector).removeClass("recurpay-hide"); 2877 $this.parents(atcFormSelector).find(buynowSelector).removeClass("recurpay-hide"); 2878 $this.parents(pdpSelector).find('.recurpay__plans').hide(); 2879 $this.parents(pdpSelector).find('.recurpay__group_content_wrapper').slideUp(); 2880 } 2881 recurProperties($this); 2882 }); 2883 2884 $(document).on('change',"[name='recurpay-input']", function(e) { 2885 var getId = $(this).parents(atcFormSelector).find('input[name="id"], select[name="id"], input#SelectedId').val(); 2886 recurDiscountedPrice(getId); 2887 recurProperties($(this)); 2888 }); 2889 2890 $(document).on('click',".recurpay__group_label", function(e) { 2891 $(this).parents('.recurpay__widget_container').find('[name="recurpay__group_main"]').prop("checked",true).change(); 2892 }); 2893 2894 $(document).on('click',".recurpay-modal-cancel-btn", function(e) { 2895 $('[data-recurpay-visibility-modal]').hide(); 2896 }); 2897 2898 function updateSelectors(only_subscription){ 2899 for(r=0; r<$(pdpSelector).length; r++){ 2900 if($(pdpSelector).eq(r).attr("data-only-subscription") == "true" || only_subscription == true){ 2901 $(pdpSelector).eq(r).attr("data-only-subscription",true); 2902 $(pdpSelector).eq(r).find(".recurpay__widget[data-recurpay-widget]").addClass("recurpay_only_subscription_widget"); 2903 $(pdpSelector).eq(r).find("[name='recurpay__group_main'][value='subscription']").prop("checked",true).change(); 2904 } 2905 else{ 2906 if(recurpay.subscriptionFirst == true){ 2907 $(pdpSelector).eq(r).find("[name='recurpay__group_main'][value='subscription']").prop("checked",true).change(); 2908 } 2909 } 2910 } 2911 } 2912 2913 $(document).on('click',"[data-recurpay-action]", function(e) { 2914 e.preventDefault(); 2915 e.stopPropagation(); 2916 addSubscription($(this)); 2917 }); 2918 2919 if(recurpay.checkout == "recurpay"){ 2920 $(document).on('click', checkoutSelector, function(e) { 2921 e.preventDefault(); 2922 e.stopPropagation(); 2923 $.getJSON('/cart', function(response) { 2924 recurCart(response); 2925 }) 2926 }); 2927 if($(recurpay.checkout_btn_override_class).length){ 2928 document.addEventListener("click", handler, true); 2929 function handler(e) { 2930 if($(e.target).is(recurpay.checkout_btn_override_class)){ 2931 e.stopPropagation(); 2932 e.preventDefault(); 2933 $.getJSON('/cart', function(response) { 2934 recurCart(response); 2935 }); 2936 } 2937 } 2938 } 2939 } 2940 } 2941 //Append jQuery if it is not there, then call to recurpaySubscription 2942 //Otherwise directly call to recurpaySubscription 2943 if ((typeof(jQuery) == 'undefined')) { 2944 initScript('//ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js', function() { 2945 window.recurpayScript = jQuery.noConflict(true); 2946 recurpaySubscription(recurpayScript); 2947 }) 2948 } 2949 else { 2950 recurpaySubscription(jQuery); 2951 } 2952 })();
2953</script>
2953 2954 2955 2956 2957<link href="//fleurdemernj.com/cdn/shop/t/1/assets/recurpay-cart.css?v=163526486139767029711702888660" rel="stylesheet" type="text/css" media="all" />
2958<script defer> 2959 (function() { 2960 //Append Script 2961 var initScript = function(url, callback) { 2962 var script = document.createElement("script"); 2963 script.type = "text/javascript"; 2964 if (script.readyState){ 2965 script.onreadystatechange = function() { 2966 if (script.readyState == "loaded" || script.readyState == "complete") { 2967 script.onreadystatechange = null; 2968 callback(); 2969 } 2970 }; 2971 } else { 2972 script.onload = function() { 2973 callback(); 2974 }; 2975 } 2976 script.src = url; 2977 document.getElementsByTagName("head")[0].appendChild(script); 2978 }; 2979 2980 var recurpayCartSubscription = function($) { 2981 window.recurpayCart = {}; 2982 recurpayCart.domainURL = 'https://fleurdemernj.recurpay.com'; 2983 recurpayCart.checkout = 'shopify'; 2984 recurpayCart.logURL = recurpayCart.domainURL + '/api/storefront/v2/logger'; 2985 recurpayCart.pdpAPI = recurpayCart.domainURL + '/api/storefront/v2/plans'; 2986 if((window.location.href.indexOf("/products/") > -1) && (window.location.href.indexOf("recurpay_preview=true") > -1)){ 2987 recurpayCart.pdpAPI = recurpayCart.domainURL + '/api/storefront/v2/plans?fetch=force'; 2988 } 2989 2990 recurpayCart.recurMoney = { 2991 formatPrice: function (price, convertCurrency) { 2992 if (typeof Shopify !== "undefined" && Shopify.hasOwnProperty("currency") && Shopify.currency.hasOwnProperty("rate")) { 2993 var currency = Shopify.currency.active; 2994 var exchangeRate = Shopify.currency.rate; 2995 var moneyFormat = "" + currency; 2996 var currencyFormat = ""; 2997 if (typeof convertCurrency === "undefined") { 2998 convertCurrency = false; 2999 } 3000 if (convertCurrency && exchangeRate !== "1.0") { 3001 price = this.convertMoney(price, exchangeRate, currency); 3002 } 3003 var bodyAttrMoneyFormat = $("body").attr("data-money-format"); 3004 if (currencyFormat !== "") { 3005 moneyFormat = currencyFormat; 3006 } 3007 else { 3008 if (typeof Shopify !== "undefined" && typeof Shopify.currency_settings !== "undefined" && typeof Shopify.currency_settings.money_format !== "undefined") { 3009 moneyFormat = Shopify.currency_settings.money_format; 3010 } else if (typeof window.money_format !== "undefined") { 3011 moneyFormat = window.money_format; 3012 } else if (typeof window.Theme !== "undefined" && typeof window.Theme.moneyFormat !== "undefined") { 3013 moneyFormat = window.Theme.moneyFormat; 3014 } else if (typeof window.theme !== "undefined" && typeof window.theme.moneyFormat !== "undefined") { 3015 moneyFormat = window.theme.moneyFormat; 3016 } else if (typeof window.theme !== "undefined" && typeof window.theme.money_format === "string") { 3017 moneyFormat = window.theme.money_format; 3018 } else if (typeof window.theme !== "undefined" && typeof window.theme.settings !== "undefined" && typeof window.theme.settings.moneyFormat !== "undefined") { 3019 moneyFormat = theme.settings.moneyFormat; 3020 } else if (typeof window.theme !== "undefined" && typeof window.theme.strings !== "undefined" && typeof window.theme.strings.moneyFormat === "string") { 3021 moneyFormat = window.theme.strings.moneyFormat; 3022 } else if (typeof window.Currency !== "undefined" && typeof window.Currency.money_format !== "undefined" && typeof window.Currency.money_format[currency] === "string") { 3023 moneyFormat = window.Currency.money_format[currency]; 3024 } else if (typeof window.Currency !== "undefined" && typeof window.Currency.money_format === "string") { 3025 moneyFormat = window.Currency.money_format; 3026 } else if (typeof bodyAttrMoneyFormat !== "undefined" && typeof bodyAttrMoneyFormat === "string" && bodyAttrMoneyFormat !== "") { 3027 moneyFormat = bodyAttrMoneyFormat; 3028 } else if (typeof wsgMoneyFormat === "string") { 3029 moneyFormat = wsgMoneyFormat; 3030 } else if (typeof price_format === "string") { 3031 moneyFormat = price_format; 3032 } else { 3033 price = price / 100;
3034 return price.toLocaleString(undefined, { style: "currency", currency: currency || this.getDefaultCurrency() }); 3035 } 3036 } 3037 return this.formatMoney(price, moneyFormat, currency || this.getDefaultCurrency()); 3038 } 3039 return ""; 3040 }, 3041 formatMoney: function (cents, format, fallbackCurrency, directionFor50) { 3042 if (typeof directionFor50 === "undefined") { 3043 var directionFor50 = "up"; 3044 } 3045 try { 3046 if (typeof cents == "string") { 3047 cents = cents.replace(".", ""); 3048 } 3049 var value = ""; 3050 var placeholderRegex = /\{\{\s*(\w+)\s*\}\}/; 3051 var formatString = format; 3052 function defaultOption(opt, def) { 3053 return typeof opt == "undefined" ? def : opt; 3054 } 3055 function formatWithDelimiters(number, precision, thousands, decimal, directionFor50) { 3056 precision = defaultOption(precision, 2); 3057 thousands = defaultOption(thousands, ","); 3058 decimal = defaultOption(decimal, "."); 3059 directionFor50 = defaultOption(directionFor50, "up"); 3060 if (isNaN(number) || number == null) { 3061 return 0; 3062 } 3063 var originalNumber = number; 3064 number = (number / 100.0).toFixed(precision); 3065 if (directionFor50 === "down") { 3066 if (originalNumber / 100 - number === -0.5) { 3067 number -= 1; 3068 number = number.toString(); 3069 } 3070 } 3071 var parts = number.split("."), 3072 dollars = parts[0].replace(/(\d)(?=(\d\d\d)+(?!\d))/g, "$1" + thousands), 3073 cents = parts[1] ? decimal + parts[1] : ""; 3074 return dollars + cents; 3075 } 3076 switch (formatString.match(placeholderRegex)[1]) { 3077 case "amount": 3078 value = formatWithDelimiters(cents, 2); 3079 break; 3080 case "amount_no_decimals": 3081 value = formatWithDelimiters(cents, 0, ",", ".", directionFor50); 3082 break; 3083 case "amount_with_comma_separator": 3084 value = formatWithDelimiters(cents, 2, ".", ","); 3085 break; 3086 case "amount_with_decimal_separator": 3087 value = formatWithDelimiters(cents, 2, ",", "."); 3088 break; 3089 case "amount_no_decimals_with_comma_separator": 3090 value = formatWithDelimiters(cents, 0, ".", ",", directionFor50); 3091 break; 3092 case "amount_no_decimals_with_space_separator": 3093 value = formatWithDelimiters(cents, 0, " ", ",", directionFor50); 3094 break; 3095 case "amount_with_apostrophe_separator": 3096 value = formatWithDelimiters(cents, 2, "'", "."); 3097 break; 3098 } 3099 return formatString.replace(placeholderRegex, value); 3100 } catch (e) { 3101 console.log(e.message); 3102 price = cents / 100; 3103 return price.toLocaleString(undefined, { style: "currency", currency: fallbackCurrency }); 3104 } 3105 }, 3106 convertMoney: function (value, rate, currency, round) { 3107 if (value <= 0) { 3108 return 0; 3109 } 3110 value *= rate; 3111 var roundUp = ["USD", "CAD", "AUD", "NZD", "SGD", "HKD", "GBP"]; 3112 var roundTo100 = ["JPY"]; 3113 var roundTo95 = ["EUR"]; 3114 if (round) { 3115 if (roundUp.indexOf(currency) !== -1) {
3116 value = Math.ceil(value); 3117 } else if (roundTo100.indexOf(currency) !== -1) { 3118 value = Math.ceil(value / 100) * 100; 3119 } else if (roundTo95.indexOf(currency) !== -1) { 3120 value = Math.ceil(value) - 0.05; 3121 } 3122 } 3123 return value; 3124 } 3125 }; 3126 3127 function formatPriceMoney(price){ 3128 var multiple_price = price*100; 3129 var formatted_price = recurpayCart.recurMoney.formatPrice(multiple_price); 3130 return formatted_price; 3131 } 3132 3133 function callCart(){ 3134 $.getJSON('/cart', function(response) { 3135 createGlobalCart(response); 3136 }); 3137 } 3138 3139 const cxRunTime = window.fetch; 3140 window.fetch = function () { 3141 return new Promise((resolve, reject) => { 3142 cxRunTime 3143 .apply(this, arguments) 3144 .then((response) => { 3145 if ( 3146 response.url.indexOf("/cart/add") >= 0 || 3147 response.url.indexOf("/cart/change") >= 0 || 3148 response.url.indexOf("/cart/update") >= 0 || 3149 response.url.indexOf("/cart/clear") >= 0 3150 ) { 3151 setTimeout(function() {callCart()}, 1000); 3152 } 3153 resolve(response); 3154 }) 3155 .catch((error) => { 3156 reject(error); 3157 }); 3158 }); 3159 }; 3160 3161 3162 function createGlobalCart(cart){ 3163 recurpayCart.items = []; 3164 var allProducts = []; 3165 if(cart.items.length >0){ 3166 for(var i=0; i < cart.items.length; i++){ 3167 var Planid = '', 3168 item = cart.items[i], 3169 property = item.properties, 3170 sellingPlan = {}, 3171 sellingPlanId = '', 3172 subscriptionItem = false, 3173 lineProperty = []; 3174 if(item.selling_plan_allocation !== undefined && item.selling_plan_allocation !== null){ 3175 sellingPlan = item.selling_plan_allocation.selling_plan; 3176 sellingPlanId = item.selling_plan_allocation.selling_plan.id; 3177 if(sellingPlanId !== undefined && sellingPlanId !== null){ 3178 subscriptionItem = true; 3179 } 3180 } 3181 allProducts.push(cart.items[i].product_id); 3182 recurpayCart.items.push({ 3183 product_id: cart.items[i].product_id, 3184 variant_id: cart.items[i].id, 3185 selling_plan_id: sellingPlanId, 3186 subscription: subscriptionItem, 3187 item_details: cart.items[i], 3188 plans: [], 3189 }) 3190 } 3191 getCartPlans(allProducts); 3192 } 3193 } 3194 3195 function getCartPlans(products){ 3196 $.ajax({
3197 url: recurpayCart.pdpAPI, 3198 type: 'POST', 3199 async:true, 3200 data: {"products": products,"settings": true}, 3201 success: function(response) { 3202 if(response != "ERROR") { 3203 if(response.plans.length > 0){ 3204 if(response.settings.translations !== null && !$.isEmptyObject(response.settings.translations)){ 3205 recurpayCart.settings = response.settings; 3206 } 3207 $(response.plans).each(function(){ 3208 var $this = $(this); 3209 var pdpHTML = ''; 3210 var getProductId = $this[0].product.id; 3211 var $this = $(this); 3212 if($this[0].product.plans.length >0){ 3213 var indexes = recurpayCart.items.map((elm, idx) => elm.product_id == getProductId ? idx : '').filter(String); 3214 for (var i=0; i<indexes.length; i++){ 3215 var getIndex = indexes[i]; 3216 recurpayCart.items[getIndex].plans = $this[0].product.plans; 3217 } 3218 } 3219 }); 3220 if(response.settings.cart_upsell_status){ 3221 addCartWidget(); 3222 if(window.SLIDECART_UPDATE !== undefined){ 3223 window.SLIDECART_LOADED = function(cart) { 3224 addCartWidget(); 3225 } 3226 window.SLIDECART_UPDATE = function(cart) { 3227 addCartWidget(); 3228 } 3229 window.SLIDECART_ADD_TO_CART = function({ id, quantity }) { 3230 callCart(); 3231 } 3232 } 3233 } 3234 else{ 3235 sessionStorage.setItem("recurpay_cart_upsell", "false"); 3236 } 3237 } 3238 } 3239 } 3240 }); 3241 } 3242 3243 function addCartWidget(){ 3244 var getSelector = "form[action='/cart'],form[action='/checkout']:not(.js-cart_content__form),form[action*='checkout']:not(.js-cart_content__form),form[action~='/checkout']:not(.js-cart_content__form), form[action='/cart'], form[action^='/cart?'][method=post], #slidecarthq"; 3245 var eventLog = "failure"; 3246 if($(getSelector).length >0){ 3247 for (var i=0; i<$(getSelector).length; i++){ 3248 var cartSelector = $(getSelector)[i]; 3249 var qtySelectors = $(cartSelector).find('[name="updates[]"], .quantity-selector input'); 3250 var linkSelectors = $(cartSelector).find('a[href*="/products/"]'); 3251 var overrideAlignment = false; 3252 if($(qtySelectors).length <= 0 && $(linkSelectors).length <=0 && $(cartSelector).length >0){ 3253 if($(cartSelector).parents("#Cart-Drawer").length >0){ 3254 cartSelector = $(getSelector).eq(i).parents("#Cart-Drawer"); 3255 qtySelectors = $(cartSelector).find('[name="updates[]"], .quantity-selector input'); 3256 linkSelectors = $(cartSelector).find('a[href*="/products/"]'); 3257 } 3258 else if($(cartSelector).parents(".cart-drawer").length >0){ 3259 cartSelector = $(getSelector).eq(i).parents(".cart-drawer"); 3260 qtySelectors = $(cartSelector).find('[name="updates[]"], .quantity-selector input'); 3261 linkSelectors = $(cartSelector).find('a[href*="/products/"]'); 3262 } 3263 } 3264 if($(cartSelector).is("#cart-notification-form")){ 3265 var cartNotificationSelector = $(cartSelector).parents("#cart-notification"); 3266 for(var j =0; j < $(cartNotificationSelector).find("#cart-notification-product").length; j++){ 3267 var getWidgetCode = recurpayCartWidget(j); 3268 if($(cartNotificationSelector).find(".upgrade-subscription-cart[data-item-index='"+j+"']").length <=0){ 3269 $(cartNotificationSelector).find("#cart-notification-product").addClass("cart-subscription-notification-product"); 3270 $(cartNotificationSelector).find("#cart-notification-product").after("<div class='upgrade-subscription-cart upgrade-subscription-notification-cart' data-item-index='"+j+"'></div>") 3271 } 3272 $(cartNotificationSelector).find(".upgrade-subscription-cart[data-item-index='"+j+"']").html(getWidgetCode); 3273 } 3274 } 3275 if($(qtySelectors).length > 0){ 3276 for(var j=0; j<$(qtySelectors).length; j++){ 3277 var getWidgetCode = recurpayCartWidget(j); 3278 if($(qtySelectors).eq(j).parents("cart-drawer").length > 0 && $(cartSelector).find(".upgrade-subscription-cart[data-item-index='"+j+"']").length <=0){ 3279 $(qtySelectors).eq(j).closest("tr").after("<div class='upgrade-subscription-cart' data-item-index='"+j+"'></div>"); 3280 } 3281 else if($(qtySelectors).eq(j).closest("tr").length > 0 && $(cartSelector).find(".upgrade-subscription-cart[data-item-index='"+j+"']").length <=0){ 3282 if($(qtySelectors).eq(j).closest("tr").hasClass("cart-item") && $(qtySelectors).eq(j).closest("tr").find(".cart-item__details").length){ 3283 $(qtySelectors).eq(j).closest("tr").find(".cart-item__details").append("<div class='upgrade-subscription-cart' data-item-index='"+j+"'></div>"); 3284 } 3285 else{ 3286 $(qtySelectors).eq(j).closest("tr").after("<div class='upgrade-subscription-cart' data-item-index='"+j+"'></div>"); 3287 } 3288 } 3289 else if($(qtySelectors).eq(j).closest("[data-cart-item]").length > 0 && $(cartSelector).find(".upgrade-subscription-cart[data-item-index='"+j+"']").length <=0){ 3290 $(qtySelectors).eq(j).closest("[data-cart-item]").after("<div class='upgrade-subscription-cart' data-item-index='"+j+"'></div>"); 3291 } 3292 else if($(qtySelectors).eq(j).closest(".CartItem").length > 0 && $(cartSelector).find(".upgrade-subscription-cart[data-item-index='"+j+"']").length <=0){ 3293 if($(qtySelectors).eq(j).closest(".CartItem").find(".CartItem__Info").length){ 3294 $(qtySelectors).eq(j).closest(".CartItem").find(".CartItem__Info").after("<div class='upgrade-subscription-cart' data-item-index='"+j+"'></div>"); 3295 } 3296 else{ 3297 $(qtySelectors).eq(j).closest(".CartItem").after("<div class='upgrade-subscription-cart' data-item-index='"+j+"'></div>"); 3298 } 3299 } 3300 else if($(qtySelectors).eq(j).closest(".cart__item").length > 0){ 3301 if($(qtySelectors).eq(j).closest(".cart__item").hasClass("hide")){ 3302 if($(cartSelector).find(".upgrade-subscription-cart[data-item-index='"+j+"']").length <=0){ 3303 $(qtySelectors).eq(j).closest(".cart__item").after("<div class='upgrade-subscription-cart recurpay-hide' data-item-index='"+j+"'></div>"); 3304 } 3305 else{ 3306 $(cartSelector).find(".upgrade-subscription-cart[data-item-index='"+j+"']").addClass("recurpay-hide"); 3307 } 3308 } 3309 else if($(cartSelector).find(".upgrade-subscription-cart[data-item-index='"+j+"']").length <=0){ 3310 $(qtySelectors).eq(j).closest(".cart__item").after("<div class='upgrade-subscription-cart' data-item-index='"+j+"'></div>"); 3311 } 3312 } 3313 else if($(qtySelectors).eq(j).closest(".cart-item__grid").length > 0 && $(cartSelector).find(".upgrade-subscription-cart[data-item-index='"+j+"']").length <=0){ 3314 $(qtySelectors).eq(j).closest(".cart-item__grid").after("<div class='upgrade-subscription-cart' data-item-index='"+j+"'></div>"); 3315 } 3316 else if($(qtySelectors).eq(j).closest(".cart-item").length > 0 && $(cartSelector).find(".upgrade-subscription-cart[data-item-index='"+j+"']").length <=0){ 3317 $(qtySelectors).eq(j).closest(".cart-item").after("<div class='upgrade-subscription-cart' data-item-index='"+j+"'></div>"); 3318 } 3319 else if($(qtySelectors).eq(j).closest(".cart__row").length > 0 && $(cartSelector).find(".upgrade-subscription-cart[data-item-index='"+j+"']").length <=0){ 3320 $(qtySelectors).eq(j).closest(".cart__row").after("<div class='upgrade-subscription-cart' data-item-index='"+j+"'></div>"); 3321 } 3322 else if($(qtySelectors).eq(j).closest(".cart-row").length > 0 && $(cartSelector).find(".upgrade-subscription-cart[data-item-index='"+j+"']").length <=0){ 3323 $(qtySelectors).eq(j).closest(".cart-row").after("<div class='upgrade-subscription-cart' data-item-index='"+j+"'></div>"); 3324 } 3325 else if($(qtySelectors).eq(j).closest(".ajax-cart__item-qty").length > 0 && $(cartSelector).find(".upgrade-subscription-cart[data-item-index='"+j+"']").length <=0){ 3326 if($(qtySelectors).eq(j).closest(".ajax-cart__item-qty").parents('ul').length >0){ 3327 $(qtySelectors).eq(j).closest(".ajax-cart__item-qty").parents('ul').after("<div class='upgrade-subscription-cart' data-item-index='"+j+"'></div>"); 3328 } 3329 else{ 3330 $(qtySelectors).eq(j).closest(".ajax-cart__item-qty").after("<div class='upgrade-subscription-cart' data-item-index='"+j+"'></div>"); 3331 } 3332 } 3333 else if($(qtySelectors).eq(j).parent().css('display') == 'flex' && $(cartSelector).find(".upgrade-subscription-cart[data-item-index='"+j+"']").length <=0){ 3334 if($(qtySelectors).eq(j).parent().parent().css('display') == 'flex' && $(cartSelector).find(".upgrade-subscription-cart[data-item-index='"+j+"']").length <=0){ 3335 $(qtySelectors).eq(j).parent().parent().after("<div class='upgrade-subscription-cart' data-item-index='"+j+"'></div>"); 3336 } 3337 else if($(cartSelector).find(".upgrade-subscription-cart[data-item-index='"+j+"']").length <=0){ 3338 $(qtySelectors).eq(j).parent().after("<div class='upgrade-subscription-cart' data-item-index='"+j+"'></div>"); 3339 } 3340 overrideAlignment = true; 3341 } 3342 else if($(cartSelector).find(".upgrade-subscription-cart[data-item-index='"+j+"']").length <=0){ 3343 $(qtySelectors).eq(j).parent().after("<div class='upgrade-subscription-cart' data-item-index='"+j+"'></div>"); 3344 eventLog = "reverify"; 3345 overrideAlignment = true; 3346 } 3347 else{ 3348 if($(cartSelector).find(".upgrade-subscription-cart[data-item-index='"+j+"']").length <=0){ 3349 $(qtySelectors).eq(j).after("<div class='upgrade-subscription-cart' data-item-index='"+j+"'></div>"); 3350 eventLog = "reverify"; 3351 overrideAlignment = true; 3352 } 3353 } 3354 $(".upgrade-subscription-cart[data-item-index='"+j+"']").html(getWidgetCode); 3355 if(overrideAlignment){ 3356 if($(".upgrade-subscription-cart[data-item-index='"+j+"']").width() < 3
335600){ 3357 var getParent = $(".upgrade-subscription-cart[data-item-index='"+j+"']").parent(); 3358 var getAdjParent = $(".upgrade-subscription-cart[data-item-index='"+j+"']").parent().parent(); 3359 $(".upgrade-subscription-cart[data-item-index='"+j+"']").remove(); 3360 $(getParent).after("<div class='upgrade-subscription-cart' data-item-index='"+j+"'></div>"); 3361 $(".upgrade-subscription-cart[data-item-index='"+j+"']").html(getWidgetCode); 3362 if($(".upgrade-subscription-cart[data-item-index='"+j+"']").width() < 300){ 3363 $(".upgrade-subscription-cart[data-item-index='"+j+"']").remove(); 3364 $(getAdjParent).after("<div class='upgrade-subscription-cart' data-item-index='"+j+"'></div>"); 3365 $(".upgrade-subscription-cart[data-item-index='"+j+"']").html(getWidgetCode); 3366 } 3367 } 3368 } 3369 } 3370 } 3371 else if($(linkSelectors).length > 0){ 3372 window.linkArr = []; 3373 $(linkSelectors).each(function(){ 3374 var $this = $(this); 3375 linkArr.push($this.attr("href")); 3376 }); 3377 linkArr = linkArr.filter(function(itm, i, a) { 3378 return i == a.indexOf(itm); 3379 }); 3380 if(linkArr.length > 0){ 3381 for(var j=0; j<linkArr.length; j++){ 3382 var getWidgetCode = recurpayCartWidget(j); 3383 if($(cartSelector).find(".upgrade-subscription-cart[data-item-index='"+j+"']").length <=0){ 3384 $(cartSelector).find('a[href="'+linkArr[j]+'"]').last().after("<div class='upgrade-subscription-cart' data-item-index='"+j+"'></div>"); 3385 } 3386 $(".upgrade-subscription-cart[data-item-index='"+j+"']").html(getWidgetCode); 3387 eventLog = "reverify"; 3388 } 3389 } 3390 } 3391 else{ 3392 if(!$(cartSelector).is("#cart-notification-form") && !$(cartSelector).is("#slidecarthq")){ 3393 // logCartEvent("Failed to show cart snippet - Cart Qty", "critical"); 3394 } 3395 } 3396 } 3397 if($(".upgrade-subscription-cart").length <=0){ 3398 if(eventLog == "failure"){ 3399 logCartEvent("Failed to show cart snippet - Cart Qty", "critical"); 3400 } 3401 else{ 3402 logCartEvent("Cart snippet added but needs a reverification", "warning"); 3403 } 3404 } 3405 } 3406 else{ 3407 logCartEvent("Failed to show cart snippet - Cart Qty", "critical"); 3408 } 3409 } 3410 3411 3412 function logCartEvent(addon,type){ 3413 $.ajax({
3414 url: recurpayCart.logURL, 3415 type: 'POST', 3416 async:true, 3417 dataType: 'json', 3418 data: { 3419 module:"cart_upsell", 3420 level: type, 3421 payload:{ 3422 store : recurpayCart.domainURL, 3423 remark: addon 3424 } 3425 }, 3426 success: function(response) { 3427 console.log("event logged"); 3428 } 3429 }); 3430 } 3431 function recurpayCartWidget(index){ 3432 var cartWidget = ""; 3433 var showFlag = true; 3434 var sellingPlanId = recurpayCart.items[index].selling_plan_id; 3435 if(recurpayCart.items[index].selling_plan_id == undefined || recurpayCart.items[index].selling_plan_id == ""){ 3436 if(recurpayCart.items[index].plans.length >0){ 3437 sellingPlanId = recurpayCart.items[index].plans[0].selling_plan_id; 3438 } 3439 else{ 3440 showFlag = false; 3441 } 3442 } 3443 if(showFlag){ 3444 if(recurpayCart.checkout == 'recurpay'){ 3445 if(recurpayCart.items[index].item_details.properties != null && recurpayCart.items[index].item_details.properties != undefined && recurpayCart.items[index].item_details.properties != ""){ 3446 var planId = recurpayCart.items[index].item_details.properties._PlanId; 3447 if(planId != undefined && planId != ""){ 3448 var getIndex = recurpayCart.items[index].plans.map((elm, idx) => elm.id == parseInt(planId) ? idx : '').filter(String); 3449 } 3450 else{ 3451 var getIndex = 0; 3452 } 3453 } 3454 else{ 3455 var getIndex = 0; 3456 } 3457 } 3458 else{ 3459 var getIndex = recurpayCart.items[index].plans.map((elm, idx) => elm.selling_plan_id == sellingPlanId ? idx : '').filter(String); 3460 } 3461 var getSellingObject = recurpayCart.items[index].plans[getIndex]; 3462 var getDiscount = getSellingObject.pricing_policy[0].discount.value; 3463 var getQty = recurpayCart.items[index].item_details.quantity; 3464 var getPrice = parseFloat(recurpayCart.items[index].item_details.final_price*getQty)/100; 3465 var discountedPrice = getPrice - (getPrice * getDiscount / 100); 3466 var formattedPrice = formatPriceMoney(discountedPrice); 3467 var formattedHtmlPrice = '<span class="subscribe-text-button-price">'+formattedPrice+'</span>' 3468 3469 if(recurpayCart.items[index].selling_plan_id == undefined || recurpayCart.items[index].selling_plan_id == "" && recurpayCart.items[index].item_details.properties == null || recurpayCart.items[index].item_details.properties._PlanId == undefined || recurpayCart.items[index].item_details.properties._PlanId == ""){ 3470 if(recurpayCart.items[index].plans.length >0){ 3471 cartWidget = '<div class="upgrade-icon-wrapper" data-qty="'+getQty+'" data-plan-id= "'+recurpayCart.items[index].plans[0].id+'" data-default-selling-plan="'+recurpayCart.items[index].plans[0].selling_plan_id+'" data-index="'+index+'" data-selling-plan-id="'+recurpayCart.items[index].selling_plan_id+'" data-selling-plan-discount="'+getDiscount+'" data-product-id="'+recurpayCart.items[index].product_id+'" data-variant-id="'+recurpayCart.items[index].variant_id+'">' 3472 cartWidget += '<div class="img-src"><img src="'+recurpayCart.settings.translations.cart_subscription_img_url+'"></div>' 3473 cartWidget += '<div class="subscribe-text-wrapper">' 3474 cartWidget += '<span class="subscribe-text-head">'+recurpayCart.settings.translations.cart_subscription_heading+'</span>' 3475 cartWidget += '</div>' 3476 cartWidget += '<div class="subscribe-button-wrapper">' 3477 cartWidget += '<span class="subscribe-text-button"><span>'+recurpayCart.settings.translations.cart_subscription_cta_text+'</span>' 3478 cartWidget += '</div>' 3479 cartWidget += '</div>' 3480 } 3481 } 3482 else{ 3483 if(recurpayCart.checkout == 'recurpay'){ 3484 var getOriginalPrice = getPrice + (getPrice - discountedPrice); 3485 } 3486 else{ 3487 var getOriginalPrice = parseFloat(recurpayCart.items[index].item_details.selling_plan_allocation.compare_at_price*getQty)/100; 3488 } 3489 var getSavings = getOriginalPrice-getPrice; 3490 var getSavingsHTML = formatPriceMoney(getOriginalPrice-getPrice); 3491 3492 cartWidget = '<div class="upgrade-icon-wrapper upgrade-select-box" data-qty="'+getQty+'" data-default-selling-plan="'+recurpayCart.items[index].plans[0].selling_plan_id+'" data-index="'+index+'" data-selling-plan-discount="'+getDiscount+'" data-selling-plan-id="'+recurpayCart.items[index].selling_plan_id+'" data-product-id="'+recurpayCart.items[index].product_id+'" data-variant-id="'+recurpayCart.items[index].variant_id+'">' 3493 cartWidget += '<div class="cart-plan-dropdown-wrapper">' 3494 cartWidget += '<div class="cart-plan-dropdown-title">'+recurpayCart.settings.translations.cart_subscription_dropdown_label+'</div>' 3495 cartWidget += '<select class="cart-plan-dropdown">' 3496 if(!recurpayCart.settings.sell_only_as_subscription){ 3497 cartWidget += '<optgroup label="'+recurpayCart.settings.translations.cart_subscription_onetime_group_title+'">' 3498 cartWidget += '<option value="">'+recurpayCart.settings.translations.cart_subscription_onetime_group_value+'</option>' 3499 cartWidget += '</optgroup>' 3500 } 3501 cartWidget += '<optgroup label="'+recurpayCart.settings.translations.cart_subscription_group_title+'">' 3502 for(var i=0; i<recurpayCart.items[index].plans.length; i++){ 3503 if(parseInt(recurpayCart.items[index].selling_plan_id) == parseInt(recurpayCart.items[index].plans[i].selling_plan_id) || parseInt(recurpayCart.items[index].item_details.properties._PlanId) == recurpayCart.items[index].plans[i].id){ 3504 cartWidget += '<option data-plan-id = "'+recurpayCart.items[index].plans[i].id+'" value="'+recurpayCart.items[index].plans[i].selling_plan_id+'" selected>'+recurpayCart.items[index].plans[i].name+'</option>'; 3505 } 3506 else{ 3507 cartWidget += '<option data-plan-id = "'+recurpayCart.items[index].plans[i].id+'" value="'+recurpayCart.items[index].plans[i].selling_plan_id+'">'+recurpayCart.items[index].plans[i].name+'</option>'; 3508 } 3509 } 3510 cartWidget += '</optgroup></select>' 3511 cartWidget += '</div>' 3512 if(getSavings >0){ 3513 cartWidget += '<div class="cart-plan-saving-wrapper">' 3514 cartWidget += '<img class="cart-plan-saving-img" src="'+recurpayCart.settings.translations.cart_subscription_success_img_url+'" />' 3515 cartWidget += '<span class="cart-plan-saving-text">'+recurpayCart.settings.translations.cart_subscription_success_label+'</span>' 3516 cartWidget += '</div>' 3517 } 3518 cartWidget += '</div>' 3519 } 3520 if(getDiscount <=0){ 3521 cartWidget = cartWidget.replace('[[DISCOUNT_PERCENTAGE]]%', ''); 3522 } 3523 else{ 3524 cartWidget = cartWidget.replace('[[DISCOUNT_PERCENTAGE]]', getDiscount); 3525 } 3526 cartWidget = cartWidget.replace('[[AMOUNT]]', formattedHtmlPrice); 3527 cartWidget = cartWidget.replace('[[SAVED_AMOUNT]]', getSavingsHTML); 3528 } 3529 3530 return cartWidget; 3531 } 3532 3533 function updateCartData(elem, getSellingPlan){ 3534 var $this = $(elem); 3535 var getIndex = parseInt($this.parents(".upgrade-icon-wrapper").attr("data-index")); 3536 var getQty = parseInt($this.parents(".upgrade-icon-wrapper").attr("data-qty")); 3537 var getProperties = recurpayCart.items[getIndex].item_details.properties; 3538 var getAttributes = ''; 3539 if(!$.isEmptyObject(getProperties)){ 3540 getProperties['_PlanId'] = null; 3541 getProperties['Plan'] = null; 3542 getProperties['_is_cart_influenced'] = null; 3543 getAttributes = { 3544 '_is_cart_influenced' : null 3545 } 3546 } 3547 3548 if($.isEmptyObject(getProperties)){ 3549 getProperties = {}; 3550 getAttributes = { 3551 '_is_cart_influenced' : null 3552 } 3553 } 3554 3555 var getParams = { 3556 'line': getIndex+1, 3557 'quantity': getQty, 3558 'selling_plan': getSellingPlan, 3559 'properties':getProperties, 3560 'attributes':getAttributes 3561 } 3562 3563 3564 if(getSellingPlan !== undefined && getSellingPlan !== ""){ 3565 if(recurpayCart.checkout == 'recurpay'){ 3566 var planIndex = recurpayCart.items[getIndex].plans.map((elm, idx) => elm.id == parseInt(getSellingPlan) ? idx : '').filter(String); 3567 getParams.selling_plan = ""; 3568 } 3569 else{ 3570 var planIndex = recurpayCart.items[getIndex].plans.map((elm, idx) => elm.selling_plan_id == getSellingPlan ? idx : '').filter(String); 3571 } 3572 var getPlanId = recurpayCart.items[getIndex].plans[planIndex].id; 3573 var getSellingPlanName = recurpayCart.items[getIndex].plans[planIndex].name; 3574 getParams.properties['_PlanId'] = getPlanId; 3575 getParams.properties['Plan'] = getSellingPlanName; 3576 getParams.properties['_is_cart_influenced'] = 'Influenced by Recurpay cart subscriptions' 3577 getParams.attributes = { 3578 _is_cart_influenced : 'Influenced by Recurpay cart subscriptions' 3579 } 3580 } 3581 var cartURL = "/cart/change.js"; 3582 3583 $this.parents(".upgrade-icon-wrapper").addClass("btn-loading"); 3584 $.ajax({
3585 url: cartURL, 3586 type: 'POST', 3587 async:true, 3588 dataType: 'json', 3589 data: getParams, 3590 success: function(response) { 3591 if($this.parents('cart-drawer').length >0){ 3592 $.ajax({ 3593 url: '/?section_id=cart-drawer', 3594 type: 'GET', 3595 dataType: 'html', 3596 success:function(carthtml) { 3597 $('cart-drawer').html($(carthtml).find('cart-drawer').html()); 3598 createGlobalCart(response); 3599 $this.parents(".upgrade-icon-wrapper").removeClass("btn-loading"); 3600 } 3601 }); 3602 } 3603 else if(window.SLIDECART_UPDATE !== undefined){ 3604 window.SLIDECART_UPDATE(); 3605 createGlobalCart(response); 3606 } 3607 else{ 3608 window.location.href="/cart"; 3609 $this.parents(".upgrade-icon-wrapper").removeClass("btn-loading"); 3610 } 3611 } 3612 }); 3613 } 3614 3615 $(document).on('click',".subscribe-text-button", function(e){ 3616 var getSellingPlan = $(this).parents(".upgrade-icon-wrapper").attr("data-default-selling-plan"); 3617 if(recurpayCart.checkout == 'recurpay'){ 3618 getSellingPlan = $(this).parents(".upgrade-icon-wrapper").attr("data-plan-id"); 3619 } 3620 updateCartData($(this),getSellingPlan); 3621 }); 3622 3623 $(document).on('change',".cart-plan-dropdown", function(e){ 3624 e.preventDefault(); 3625 var getSellingPlan = $(this).val(); 3626 if(recurpayCart.checkout == 'recurpay'){ 3627 getSellingPlan = $(this).find('option:selected').attr('data-plan-id'); 3628 } 3629 updateCartData($(this),getSellingPlan); 3630 3631 }); 3632 3633 var getCartUpsellSession = sessionStorage.getItem("recurpay_cart_upsell"); 3634 if(getCartUpsellSession == "true" || getCartUpsellSession == undefined || getCartUpsellSession == null){ 3635 sessionStorage.setItem("recurpay_cart_upsell", "true"); 3636 callCart(); 3637 } 3638 3639 } 3640 //Append jQuery if it is not there, then call to recurpayCartSubscription 3641 //Otherwise directly call to recurpayCartSubscription 3642 if ((typeof(jQuery) == 'undefined')) { 3643 initScript('//ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js', function() { 3644 window.recurpayCartScript = jQuery.noConflict(true); 3645 recurpayCartSubscription(recurpayCartScript); 3646 }) 3647 } 3648 else { 3649 recurpayCartSubscription(jQuery); 3650 } 3651 })(); 3652</script>
3652 3653<div id="shopify-block-AYVN4d2FzN3ZOODVIZ__6e8f5020-fc3a-4acd-a31a-fb627c0270cf" class="shopify-block shopify-app-block"><!-- BEGIN app snippet: app_init --> 3654
3655<script type="text/javascript" data-id="bc_app_init_script"> 3656 window.BC_SHOPPING_CART = [] 3657 window.BC_SHOPPING_CART_TOTAL = 0 3658 window.BC_SHOP_LOCALE = 'en' 3659 window.BC_SLOT_ID = '' 3660 3661 window.BC_APP_SETTINGS = {"shopId":1300,"status":true,"showOnThankyou":false,"accentColor":"#f59898","design":{},"watchNode":null,"cssSelector":null,"cssSelectorPosition":"BEFORE","retainSelectionsOnReload":true,"enableChangeQuantityFix":false,"enableGlobalPostcodeChecker":false,"checkoutCssSelector":null,"ajaxWidgetInitDelay":1000,"customJs":null,"customCss":null,"enableDebug":false,"hasPostalCodes":true,"persistenceTarget":"cartAttributes","dateFormat":"PP","timeFormat":"%l:%M %p","locale":"en"} 3662 if (window.BC_APP_SETTINGS.customCss) { 3663 const style = document.createElement('style'); 3664 style.textContent = window.BC_APP_SETTINGS.customCss; 3665 window && window.document && window.document.head.appendChild(style); 3666 } 3667 if (window.BC_APP_SETTINGS.customJs) { 3668 eval?.(`${window.BC_APP_SETTINGS.customJs}`); 3669 } 3670 3671</script>
3671 3672
3673<script> 3674 window.BirdState = { 3675 settings: window.BC_APP_SETTINGS, 3676 locale: 'en', 3677 cart: [], 3678 cartTotal: 0, 3679 customer: 3680 { id: '', loggedIn: false, tags: [] } 3681 3682, 3683 languages: 3684 {"en":{"close":"Close","language":"en-US","map_error":"Failed to load map","time_label":"Select Delivery Time","date_format":"PP","time_format":"%l:%M %p","pickup_label":"Store Pickup","date_required":"Please select a date","error_message":"Please select date / time","pickup_locale":"en-CA","time_required":"Please select a time","widget_header":null,"your_location":"Your current location","calendar_label":"Pick a date","default_method":"Delivery","search_address":"Search address...","shipping_label":"Email Event Tickets","collector_phone":"Phone","delivery_locale":"en-delivery","product_page_on":"on","shipping_locale":"en","thankyou_header":"Your selected date and time","use_my_location":"Use my location","collector_header":"Enter collector details below","order_note_error":"Note is required","search_locations":"Search locations...","address_not_found":"Could not find this address","geolocation_error":"Unable to get location","pickup_note_label":"Pickup note","pickup_time_label":"Select Delivery Time","product_page_today":"today","sorted_by_distance":"Sorted by distance from","thankyou_day_label":"Selected Day","collector_last_name":"Last name","delivery_note_label":"Delivery note","message_optin_label":"I would like to receive SMS notifications about my order updates.","pickup_search_label":"Search for pickup location","product_page_closed":"Closed","shipping_note_label":"Shipping note","thankyou_date_label":"Selected Date","thankyou_time_label":"Selected Time","collector_first_name":"First name","collector_name_error":"Name is required","collector_name_label":"Name of person collecting","local_delivery_label":"Local Delivery","product_page_heading":"Delivery and pickup options","widget_footer_pickup":"","collector_email_error":"A valid email is required","collector_email_label":"Email of person collecting","collector_phone_error":"Phone is required","delivery_method_label":"Pick One","network_error_message":"Selections not saved. Please try again","product_page_in_stock":"In stock","product_page_ready_by":"Ready for collection from {{time}} on {{date}}","product_page_tomorrow":"tomorrow","products_pickup_error":"Products in cart are not available for pickup from selected location","thankyou_method_label":"Selected Method","thankyou_submit_label":"Submit","no_locations_available":"No locations available","pickup_min_value_error":"Minimum value for pickup is {{value}}","product_page_pickup_at":"Pickup at {{location}}","widget_footer_delivery":"","widget_footer_shipping":"","pickup_note_placeholder":"Enter any special instructions for pickup","product_page_change_zip":"Change","product_page_deliver_by":"Delivered by {{date}}","product_page_hide_hours":"Hide opening hours","products_delivery_error":"Products in the cart are not available for delivery","products_shipping_error":"Products in the cart are not available for shipping","thankyou_location_label":"Pickup Location","cart_eligibility_message":"The following items are not available for this location","delivery_min_value_error":"Minimum value for delivery is {{value}}","product_page_check_label":"Check","product_page_delivery_to":"Delivery to {{zip}}","product_page_input_error":"Add a postal code to check available delivery and pickup options.","select_delivery_location":"Select a delivery location","shipping_min_value_error":"Minimum value for shipping is {{value}}","address_input_placeholder":"Enter your address","collector_last_name_error":"Last name is required","delivery_note_placeholder":"Enter any special instructions for delivery","enter_address_find_stores":"Enter your address to find nearest stores","postal_code_checker_error":"Local delivery not available","postal_code_checker_label":"Do we deliver?","product_page_out_of_stock":"Out of stock","schedule_conflict_message":"These items have conflicting schedules and cannot be ordered together:","shipping_note_placeholder":"Enter any special instructions for shipping","showing_nearest_locations":"Showing nearest locations","thankyou_edit_modal_label":"Edit your selection","collector_first_name_error":"First name is required","product_page_limited_stock":"{{count}} in stock","product_page_modal_heading":"Find a store for pickup","product_page_opening_hours":"Show opening hours","thankyou_edit_button_label":"Edit","collector_email_placeholder":"Email address","collector_phone_placeholder":"Phone number","local_delivery_search_label":"Search location","postal_code_checker_success":"Local delivery available","local_delivery_pincode_error":"Local delivery not available.","postal_code_address_required":"Please enter postal code","product_page_showing_options":"Showing options for {{zip}}","product_page_view_all_stores":"View all stores","local_delivery_pincodes_label":"Enter your postal code","product_page_modal_subheading":"Showing stores near {{zip}}","cart_checkout_validation_error":"Your selections expired. Please select date/time again for your pickup or delivery","local_delivery_pincode_success":"Local delivery available.","local_delivery_pincodes_header":"Enter postal code to check if you are eligible for local delivery","collector_last_name_placeholder":"Last name","postal_code_textbox_placeholder":"Enter your postal code","collector_first_name_placeholder":"First name","checkout_address_validation_error":"{{field}} has changed from cart to checkout","checkout_address_validation_field":"address, city, province, country, postal code","product_page_pickup_not_available":"Pickup not available for this item","thankyou_slots_not_available_error":"No slots available","checkout_attribute_validation_error":"Date / Time is not selected in the cart. Select them in your cart to proceed","product_page_delivery_not_available":"Delivery not available for {{zip}}"}} 3685 3686, 3687 slotId: '' 3688 } 3689</script>
3689 3690 3691 3692 3693<link rel="stylesheet" href="https://cdn.shopify.com/extensions/01a10010-617f-7c69-a220-2bb59b253970/simple-on-time-delivery-505/assets/bird-pickup-styles.css"> 3694 3695 3696 3697<!-- END app snippet --> 3698
3698<script src="https://cdn.shopify.com/extensions/01a10010-617f-7c69-a220-2bb59b253970/simple-on-time-delivery-505/assets/bird-pickup-script.js" defer></script>
3698 3699</div><div id="shopify-block-AbEtVT3JpQ3FrR3lIN__5028733920296764920" class="shopify-block shopify-app-block"><input type="hidden" value="10351856746774" id="poptin-s-product-id"> 3700<input id="poptin-page-type" type="hidden" value="product"> 3701<input id="poptin-product-collections" type="hidden" value=""> 3702 3703 3704
3705<script src="https://cdn.popt.in/pixel.js" id="pixel-script-poptin-shopify" defer></script>
3705 3706 3707 3708</div><!-- Failed to render app block "7555218208816688692": app block path "shopify://apps/rivo-popups-email-pop-ups/blocks/app-embed/48a5a3ef-b6ff-431f-842f-6f17862c4a63" does not exist --><div id="shopify-block-AaUY3TDlOK3J2UVAyQ__4015264832934714879" class="shopify-block shopify-app-block"><!-- BEGIN app snippet: ecomsend-app -->
3708<script type="text/javascript"> 3709 //SendWILL APPS COMMON JS CODE 3710 window.EcomSendApps = window.EcomSendApps || {} 3711 3712 window.EcomSendApps.design_mode = false 3713 3714 3715 window.EcomSendApps.common = window.EcomSendApps.common || {} 3716 window.EcomSendApps.common.shop = { 3717 permanent_domain: 'fleurdemernj.myshopify.com', 3718 currency: "USD", 3719 money_format: "${{amount}}", 3720 id: 73177301270, 3721 } 3722 3723 3724 3725 window.EcomSendApps.common.customer = { 3726 id: null, 3727 tags: null, 3728 email: null, 3729 accepts_marketing: null, 3730 first_name: null, 3731 } 3732 3733 3734 3735 window.EcomSendApps.common.template = 'product' 3736</script>
3736 3737<!-- END app snippet --> 3738
3739<script> 3740 window.EcomSendApps = window.EcomSendApps || {} 3741 /** @description shared localStorage key used by web-pixel sandbox to read storefront GDPR mode */ 3742 const ECOMSEND_GDPR_ENABLED_STORAGE_KEY = "ECOMSEND:GDPR_ENABLED" 3743 /** @description storefront main bundle asset url */ 3744 const ECOMSEND_MAIN_SCRIPT_URL = 'https://cdn.shopify.com/extensions/01a0f197-ce1f-7a19-8adb-6b78fec4702f/ecomsend-209/assets/ecomsend.js' 3745 /** @description storefront style asset url */ 3746 const ECOMSEND_MAIN_STYLE_URL = 'https://cdn.shopify.com/extensions/01a0f197-ce1f-7a19-8adb-6b78fec4702f/ecomsend-209/assets/style.css' 3747 /** @description storefront wasm asset url for runtime signature module */ 3748 const ECOMSEND_WASM_ASSET_URL = 'https://cdn.shopify.com/extensions/01a0f197-ce1f-7a19-8adb-6b78fec4702f/ecomsend-209/assets/client_safe.wasm' 3749 /** @description fallback delay when requestIdleCallback is unavailable */ 3750 const ECOMSEND_IDLE_TIMEOUT_MS = 800 3751 /** @description user interaction events used to trigger lazy init earlier */ 3752 const ECOMSEND_INTERACTION_EVENTS = ["pointerdown", "keydown", "touchstart"] 3753 /** @description global flag key for emergency immediate loading */ 3754 const ECOMSEND_FORCE_IMMEDIATE_FLAG = window.EcomSendApps?.forceImmediateLoad === true 3755 /** @description default GDPR mode comes from block setting and can be overridden on window.EcomSendApps.GDPR */ 3756 const ECOMSEND_DEFAULT_GDPR_FLAG = false 3757 /** @description default CWTracks mode comes from block setting and can be overridden on window.EcomSendApps.CWTracksEnabled */ 3758 const ECOMSEND_DEFAULT_CWTRACKS_ENABLED = false 3759 3760 /** @description normalize merchant-provided GDPR switch into a strict boolean value */ 3761 function normalizeEcomsendBooleanFlag(rawValue) { 3762 if (typeof rawValue === "boolean") { 3763 return rawValue 3764 } 3765 if (typeof rawValue === "number") { 3766 return rawValue === 1 3767 } 3768 if (typeof rawValue === "string") { 3769 const normalizedValue = rawValue.trim().toLowerCase() 3770 return normalizedValue === "true" || normalizedValue === "1" || normalizedValue === "yes" 3771 } 3772 return false 3773 } 3774 3775 /** @description lock runtime switch value on EcomSendApps to reduce accidental console overwrite. */ 3776 function lockEcomsendReadonlyFlag(flagName, flagValue) { 3777 try { 3778 Object.defineProperty(window.EcomSendApps, flagName, { 3779 value: flagValue, 3780 writable: false, 3781 configurable: false, 3782 enumerable: true, 3783 }) 3784 return 3785 } catch (error) {} 3786 window.EcomSendApps[flagName] = flagValue 3787 } 3788 3789 /** @description resolve storefront GDPR mode from merchant theme override */ 3790 function resolveEcomsendGdprMode() { 3791 if (typeof window.EcomSendApps.GDPR === "undefined") { 3792 window.EcomSendApps.GDPR = ECOMSEND_DEFAULT_GDPR_FLAG 3793 } 3794 const gdprEnabled = normalizeEcomsendBooleanFlag(window.EcomSendApps.GDPR) 3795 window.EcomSendApps.GDPR = gdprEnabled 3796 return gdprEnabled 3797 } 3798 3799 /** @description resolve storefront CWTracks mode from merchant theme block setting and runtime override */ 3800 function resolveEcomsendCwTracksMode() { 3801 if (typeof window.EcomSendApps.CWTracksEnabled === "undefined") { 3802 window.EcomSendApps.CWTracksEnabled = ECOMSEND_DEFAULT_CWTRACKS_ENABLED 3803 } 3804 const cwTracksEnabled = normalizeEcomsendBooleanFlag(window.EcomSendApps.CWTracksEnabled) 3805 window.EcomSendApps.CWTracksEnabled = cwTracksEnabled 3806 return cwTracksEnabled 3807 } 3808 3809 /** @description persist storefront GDPR mode so web-pixel sandbox can consume the same switch */ 3810 function syncEcomsendGdprModeToStorage(gdprEnabled) { 3811 if (!window.localStorage) { 3812 return 3813 } 3814 if (gdprEnabled) { 3815 window.localStorage.setItem(ECOMSEND_GDPR_ENABLED_STORAGE_KEY, "true") 3816 return 3817 } 3818 window.localStorage.removeItem(ECOMSEND_GDPR_ENABLED_STORAGE_KEY) 3819 } 3820 3821 /** @description enable GDPR gating only when merchant explicitly turns on storefront GDPR mode */ 3822 const ECOMSEND_GDPR_ENABLED = resolveEcomsendGdprMode() 3823 /** @description enable CWTracks callback/event emit only when merchant turns on CWTracks mode. */ 3824 const ECOMSEND_CWTRACKS_ENABLED = resolveEcomsendCwTracksMode() 3825 lockEcomsendReadonlyFlag("GDPR", ECOMSEND_GDPR_ENABLED) 3826 lockEcomsendReadonlyFlag("CWTracksEnabled", ECOMSEND_CWTRACKS_ENABLED) 3827 3828 try { 3829 syncEcomsendGdprModeToStorage(ECOMSEND_GDPR_ENABLED) 3830 } catch (error) {} 3831 3832 /** @description create main stylesheet node for storefront runtime */ 3833 function createEcomSendMainStyleEle() { 3834 const ecomsendMainStyleEle = document.createElement("link") 3835 ecomsendMainStyleEle.rel = "stylesheet" 3836 ecomsendMainStyleEle.href = ECOMSEND_MAIN_STYLE_URL 3837 ecomsendMainStyleEle.dataset.ecomsendTag = "main-style" 3838 return ecomsendMainStyleEle 3839 } 3840 3841 /** @description append runtime stylesheet exactly once */ 3842 function ensureEcomSendMainStyleLoaded() { 3843 if (document.querySelector('link[data-ecomsend-tag="main-style"]')) { 3844 return 3845 } 3846 const ecomsendMainStyleEle = createEcomSendMainStyleEle() 3847 document.head.appendChild(ecomsendMainStyleEle) 3848 } 3849 3850 /** @description remove interaction listeners after first lazy-init trigger */ 3851 function clearInteractionListeners() {
3852 ECOMSEND_INTERACTION_EVENTS.forEach((eventName) => { 3853 window.removeEventListener(eventName, scheduleMainBundleLoad) 3854 }) 3855 } 3856 3857 /** @description run low-priority task via idle callback with timeout fallback */ 3858 function scheduleLowPriorityTask(taskRunner, timeoutMs) { 3859 if (window.requestIdleCallback) { 3860 window.requestIdleCallback(() => { 3861 taskRunner() 3862 }, { timeout: timeoutMs }) 3863 return 3864 } 3865 window.setTimeout(() => { 3866 taskRunner() 3867 }, timeoutMs) 3868 } 3869 3870 /** @description load main storefront bundle once and keep rollback override */ 3871 function loadEcomsendMainBundle() { 3872 if (window.__ecomsendMainBundleLoaded) { 3873 return 3874 } 3875 window.__ecomsendMainBundleLoaded = true 3876 clearInteractionListeners() 3877 /** @description ensure storefront runtime css is loaded together with main bundle */ 3878 ensureEcomSendMainStyleLoaded() 3879 const ecomsendMainScriptEle = document.createElement("script") 3880 ecomsendMainScriptEle.src = ECOMSEND_MAIN_SCRIPT_URL 3881 ecomsendMainScriptEle.async = true 3882 ecomsendMainScriptEle.dataset.ecomsendTag = "main-script" 3883 document.body.appendChild(ecomsendMainScriptEle) 3884 } 3885 3886 /** @description schedule heavy bundle with idle-first strategy to reduce main-thread contention */ 3887 function scheduleMainBundleLoad() { 3888 if (window.__ecomsendMainBundleLoadScheduled) { 3889 return 3890 } 3891 /** @description dedupe idle scheduling from DOMContentLoaded and first interactions */ 3892 window.__ecomsendMainBundleLoadScheduled = true 3893 if (ECOMSEND_FORCE_IMMEDIATE_FLAG) { 3894 loadEcomsendMainBundle() 3895 return 3896 } 3897 scheduleLowPriorityTask(loadEcomsendMainBundle, ECOMSEND_IDLE_TIMEOUT_MS) 3898 } 3899 3900 /** @description cache marketing params for pixel/report flows before heavy bundle starts */ 3901 function cacheMarketingParams() { 3902 const urlParams = new URLSearchParams(window.location.search) 3903 const marketingId = urlParams.get("ec_marketing_id") 3904 const ecEmailId = urlParams.get("ec_email_id") 3905 const ecMarketingSign = urlParams.get("ec_marketing_sign") 3906 3907 if (marketingId && window.localStorage) { 3908 window.localStorage.setItem("ec_marketing_id", marketingId) 3909 } 3910 if (ecEmailId && window.localStorage) { 3911 window.localStorage.setItem("ec_email_id", ecEmailId) 3912 } 3913 if (ecMarketingSign && window.localStorage) { 3914 window.localStorage.setItem("ec_marketing_sign", ecMarketingSign) 3915 } 3916 } 3917 3918 /** @description check whether marketing storage is allowed under Shopify customer privacy state */ 3919 function isMarketingStorageAllowedByCustomerPrivacy() { 3920 const customerPrivacy = window?.Shopify?.customerPrivacy 3921 if (!customerPrivacy) { 3922 return false 3923 } 3924 const marketingAllowed = typeof customerPrivacy.marketingAllowed === "function" && customerPrivacy.marketingAllowed() 3925 if (marketingAllowed) { 3926 return true 3927 } 3928 if (typeof customerPrivacy.currentVisitorConsent === "function") { 3929 const consent = customerPrivacy.currentVisitorConsent() 3930 return consent?.marketing === "yes" 3931 } 3932 return false 3933 } 3934 3935 /** @description check whether analytics storage is allowed under Shopify customer privacy state */ 3936 function isAnalyticsStorageAllowedByCustomerPrivacy() { 3937 const customerPrivacy = window?.Shopify?.customerPrivacy 3938 if (!customerPrivacy) { 3939 return false 3940 } 3941 const analyticsAllowed = typeof customerPrivacy.analyticsProcessingAllowed === "function" && customerPrivacy.analyticsProcessingAllowed() 3942 if (analyticsAllowed) { 3943 return true 3944 } 3945 if (typeof customerPrivacy.currentVisitorConsent === "function") { 3946 const consent = customerPrivacy.currentVisitorConsent() 3947 return consent?.analytics === "yes" 3948 } 3949 return false 3950 } 3951 3952 /** @description execute marketing param caching with GDPR guard: functional off when GDPR disabled */ 3953 function cacheMarketingParamsWithGdprGuard() { 3954 if (!ECOMSEND_GDPR_ENABLED) { 3955 cacheMarketingParams() 3956 return 3957 } 3958 if (isMarketingStorageAllowedByCustomerPrivacy()) { 3959 cacheMarketingParams() 3960 } 3961 } 3962 3963 /** @description cache shop id used by pixel report branches */ 3964 function cacheShopIdForPixel() { 3965 if (!window.EcomSendApps?.common?.shop?.id || !window.localStorage) { 3966 return 3967 } 3968 window.localStorage.setItem("ECOMSEND:ES_SHOP_ID", window.EcomSendApps.common.shop.id) 3969 } 3970 3971 /** 3972 * Flow client config (e.g. browserStaySeconds) is fetched by the main ecomsend.js bundle: 3973 * bootstrapFlowClientConfig â POST /api/automation/v2/clientFlowConfig (API Sign) 3974 * â localStorage ECOMSEND:FLOW_CLIENT_CONFIG.byEventId â read by web-pixel. 3975 * Keep new C-end Flow config on this path; do not scatter fetches in liquid. 3976 */ 3977 3978 /** @description execute shop id caching with GDPR guard and shared consent policy */ 3979 function cacheShopIdWithGdprGuard() { 3980 if (!ECOMSEND_GDPR_ENABLED) { 3981 cacheShopIdForPixel() 3982 return 3983 } 3984 if (isAnalyticsStorageAllowedByCustomerPrivacy()) { 3985 cacheShopIdForPixel() 3986 } 3987 } 3988 3989 /** @description load Shopify consent-tracking API before GDPR-gated cache writes */ 3990 function withCustomerPrivacyApiReady(onReady) { 3991 if (!ECOMSEND_GDPR_ENABLED) { 3992 onReady() 3993 return 3994 } 3995 if (window?.Shopify?.customerPrivacy) { 3996 onReady() 3997 return 3998 } 3999 if (typeof window?.Shopify?.loadFeatures !== "function") { 4000 return 4001 } 4002 window.Shopify.loadFeatures( 4003 [{ name: "consent-tracking-api", version: "0.1" }], 4004 (error) => { 4005 if (error) { 4006 return 4007 } 4008 onReady() 4009 } 4010 ) 4011 } 4012 4013 try { 4014 withCustomerPrivacyApiReady(() => { 4015 cacheMarketingParamsWithGdprGuard() 4016 cacheShopIdWithGdprGuard() 4017 }) 4018 if (ECOMSEND_GDPR_ENABLED) { 4019 document.addEventListener("visitorConsentCollected", () => { 4020 cacheMarketingParamsWithGdprGuard() 4021 cacheShopIdWithGdprGuard() 4022 }) 4023 } 4024 } catch (e) {} 4025 4026 /** @description inject wasm asset url into shared namespace before main bundle executes */ 4027 window.EcomSendApps.wasmURL = ECOMSEND_WASM_ASSET_URL 4028
4029 ECOMSEND_INTERACTION_EVENTS.forEach((eventName) => { 4030 window.addEventListener(eventName, scheduleMainBundleLoad, { once: true, passive: true }) 4031 }) 4032 4033 if (document.readyState === "loading") { 4034 document.addEventListener("DOMContentLoaded", scheduleMainBundleLoad, { once: true }) 4035 } else { 4036 scheduleMainBundleLoad() 4037 } 4038</script>
4038 4039 4040<style id="ecomsend-custom-style"></style> 4041
4042<script>window.shopLocale = 'en'</script>
4042 4043
4044<script> 4045 /** @description timeout used for deferred discount request scheduling */ 4046 const ECOMSEND_DISCOUNT_IDLE_TIMEOUT_MS = 1500 4047 4048 /** @description apply discount code from url query only when parameter exists */ 4049 function applyWillDiscountCode() { 4050 const urlParams = new URLSearchParams(window.location.search) 4051 const willDiscountCode = urlParams.get("willDiscountCode") 4052 if (!willDiscountCode || /[\u0000-\u001F\u007F]/.test(willDiscountCode)) { 4053 return 4054 } 4055 fetch("/cart/update.js", { 4056 method: "POST", 4057 headers: { 4058 "Content-Type": "application/json", 4059 }, 4060 body: JSON.stringify({ 4061 discount: willDiscountCode, 4062 }), 4063 }) 4064 } 4065 4066 try { 4067 if (!window.__ecomsendDeferredTasksScheduled) { 4068 /** @description global guard to avoid duplicate deferred task scheduling */ 4069 window.__ecomsendDeferredTasksScheduled = true 4070 if (window.requestIdleCallback) { 4071 window.requestIdleCallback(() => { 4072 applyWillDiscountCode() 4073 }, { timeout: ECOMSEND_DISCOUNT_IDLE_TIMEOUT_MS }) 4074 } else { 4075 window.setTimeout(() => { 4076 applyWillDiscountCode() 4077 }, ECOMSEND_DISCOUNT_IDLE_TIMEOUT_MS) 4078 } 4079 } 4080 } catch (error) {} 4081</script>
4081 4082 4083 4084 4085</div><div id="shopify-block-AWlhHVWJCOEVRSUtJY__16250556887416161327" class="shopify-block shopify-app-block">
4085<script> 4086 (function () { 4087 var state = (window.SERVICIFY_CALENDAR_GUARD = 4088 window.SERVICIFY_CALENDAR_GUARD || { installed: false, pending: null }); 4089 if (state.installed) return; 4090 state.installed = true; 4091 4092 var SELECTOR = 4093 'a[href*="servicify-calendar"], a[data-original-href*="servicify-calendar"], button[data-href*="servicify-calendar"]'; 4094 4095 function onCalendarClick(event) { 4096 var target = event.target; 4097 if (!target || typeof target.closest !== "function") return; 4098 var trigger = target.closest(SELECTOR); 4099 if (!trigger) return; 4100 // Already wired up: its own handler opens the modal. 4101 if (trigger.hasAttribute("data-servicify-modal-bound")) return; 4102 // Only a live anchor can navigate; a <button data-href> just gets its 4103 // otherwise-lost click recorded. 4104 if (trigger.hasAttribute("href")) event.preventDefault(); 4105 state.pending = { element: trigger, at: Date.now() }; 4106 } 4107 4108 document.addEventListener("click", onCalendarClick, true); 4109 // Middle-click never fires `click`, so it would park a 404 in a background tab. 4110 document.addEventListener("auxclick", onCalendarClick, true); 4111 })(); 4112</script>
4112<div id="servicify-app-embed-container"> 4113 <div id="digital_appointments_container" style="text-align: center; width: 100%"></div> 4114</div> 4115
4116<script> 4117 window.SERVICIFY_PRODUCT = window.ShopifyAnalytics?.meta?.product || {"id":10351856746774,"title":"Kids Craft Club: Flower Fairies | January 18th","handle":"kids-craft-club-flower-fairies-january-18th","description":"\u003cp data-start=\"234\" data-end=\"287\"\u003e\u003cstrong data-start=\"234\" data-end=\"287\"\u003eSunday, January 18th | 9:30â11:00am \u003c\/strong\u003e\u003c\/p\u003e\n\u003cp data-start=\"289\" data-end=\"528\"\u003eJoin us for another Kids Craft Club morning at Fleur de Mer. This relaxed, parent supervised crafting session invites young creatives to slow down, get imaginative, and make something magical together inside our Ocean Township flower shop.\u003c\/p\u003e\n\u003cp data-start=\"530\" data-end=\"734\"\u003eKids Craft Club is designed to feel easy and low pressure. Children can explore the craft at their own pace with a grown up nearby, followed by time to color or enjoy a simple game once crafting wraps up.\u003c\/p\u003e\n\u003cp data-start=\"754\" data-end=\"772\"\u003e\u003cstrong data-start=\"754\" data-end=\"772\"\u003eFlower Fairies: \u003c\/strong\u003eEach child will receive two fairy templates to color and decorate using dried florals and other materials. Kids will then glue their finished fairies onto popsicle sticks to create their very own fairy friends to take home.\u003c\/p\u003e\n\u003cp data-start=\"979\" data-end=\"1092\"\u003eBefore heading out, each child will also get to pick one flower stem as a sweet little keepsake from their visit.\u003c\/p\u003e\n\u003ch3 data-start=\"1094\" data-end=\"1102\"\u003eAges\u003c\/h3\u003e\n\u003cp data-start=\"1103\" data-end=\"1202\"\u003eSuitable for children ages 3 to 7. This age range is a guideline and parents know their child best.\u003c\/p\u003e\n\u003ch3 data-start=\"1204\" data-end=\"1215\"\u003ePricing\u003c\/h3\u003e\n\u003cp data-start=\"1216\" data-end=\"1275\"\u003e$15 for the first child\u003cbr data-start=\"1239\" data-end=\"1242\"\u003e$12 for each additional sibling\u003c\/p\u003e\n\u003cp data-start=\"1277\" data-end=\"1496\"\u003eEach participating child must have their own ticket. If a sibling attends and chooses to participate without being registered in advance, payment for materials will be required at the end of class, pending availability.\u003c\/p\u003e\n\u003ch3 data-start=\"1498\" data-end=\"1524\"\u003eSupervision and safety\u003c\/h3\u003e\n\u003cp data-start=\"1525\" data-end=\"1671\"\u003eThis is not a drop off program. A parent or guardian must remain in the shop for the duration of the class and supervise their child at all times.\u003c\/p\u003e\n\u003cp data-start=\"1673\" data-end=\"1835\"\u003eWe kindly ask families to be mindful of the space. While accidents happen, running or touching shop items without supervision is not permitted for safety reasons.\u003c\/p\u003e\n\u003ch3 data-start=\"1837\" data-end=\"1869\"\u003eWhat to know before you come\u003c\/h3\u003e\n\u003cp data-start=\"1870\" data-end=\"2115\"\u003ePlease arrive a few minutes early for check in. Crafting will begin promptly at 9:30am.\u003cbr data-start=\"1957\" data-end=\"1960\"\u003eComfortable clothing that can handle light crafting messes is recommended.\u003cbr data-start=\"2034\" data-end=\"2037\"\u003eA restroom is available in the shop.\u003cbr data-start=\"2073\" data-end=\"2076\"\u003eFree parking is available in our plaza.\u003c\/p\u003e\n\u003ch3 data-start=\"2117\" data-end=\"2140\"\u003eHealth and courtesy\u003c\/h3\u003e\n\u003cp data-start=\"2141\" data-end=\"2212\"\u003eIf you or your child are feeling unwell, please refrain from attending.\u003c\/p\u003e\n\u003ch3 data-start=\"2214\" data-end=\"2232\"\u003eWeather policy\u003c\/h3\u003e\n\u003cp data-start=\"2233\" data-end=\"2399\"\u003eIn the event of a snow day, your purchase will be credited for use at a future Kids Craft Club date. Materials are purchased in advance and refunds cannot be offered.\u003c\/p\u003e\n\u003ch3 data-start=\"2401\" data-end=\"2411\"\u003ePhotos\u003c\/h3\u003e\n\u003cp data-start=\"2412\" data-end=\"2551\"\u003eWe may take a few photos during the workshop for social media. Please let us know at check in if you prefer your child not be photographed.\u003c\/p\u003e\n\u003ch3 data-start=\"2553\" data-end=\"2565\"\u003eLocation\u003c\/h3\u003e\n\u003cp data-start=\"2566\" data-end=\"2631\"\u003eFleur de Mer Flower Bar and Boutique\u003cbr data-start=\"2602\" data-end=\"2605\"\u003eOcean Township, New Jersey\u003c\/p\u003e\n\u003cp data-start=\"2633\" data-end=\"2683\"\u003eSpace is limited and pre registration is required.\u003c\/p\u003e","published_at":"2026-01-18T19:12:40-05:00","created_at":"2025-12-27T00:48:28-05:00","vendor":"Fleur de Mer","type":"","tags":["E-ticket"],"price":1500,"price_min":1500,"price_max":5100,"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":50882504458518,"title":"One","option1":"One","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":true,"featured_image":null,"available":true,"name":"Kids Craft Club: Flower Fairies | January 18th - One","public_title":"One","options":["One"],"price":1500,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":50882504491286,"title":"Two","option1":"Two","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":true,"featured_image":null,"available":true,"name":"Kids Craft Club: Flower Fairies | January 18th - Two","public_title":"Two","options":["Two"],"price":2700,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":50882504524054,"title":"Three","option1":"Three","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":true,"featured_image":null,"available":true,"name":"Kids Craft Club: Flower Fairies | January 18th - Three","public_title":"Three","options":["Three"],"price":3900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":50882504556822,"title":"Four","option1":"Four","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":true,"featured_image":null,"available":true,"name":"Kids Craft Club: Flower Fairies | January 18th - Four","public_title":"Four","options":["Four"],"price":5100,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}],"images":["\/\/fleurdemernj.com\/cdn\/shop\/files\/CopyofCenteredBeginningsSoundBath_VisionBoardNight_InstagramPost_1.png?v=1766814530"],"featured_image":"\/\/fleurdemernj.com\/cdn\/shop\/files\/CopyofCenteredBeginningsSoundBath_VisionBoardNight_InstagramPost_1.png?v=1766814530","options":["Number of Children"],"media":[{"alt":null,"id":43614426038550,"position":1,"preview_image":{"aspect_ratio":1.0,"height":1080,"width":1080,"src":"\/\/fleurdemernj.com\/cdn\/shop\/files\/CopyofCenteredBeginningsSoundBath_VisionBoardNight_InstagramPost_1.png?v=1766814530"},"aspect_ratio":1.0,"height":1080,"media_type":"image","src":"\/\/fleurdemernj.com\/cdn\/shop\/files\/CopyofCenteredBeginningsSoundBath_VisionBoardNight_InstagramPost_1.png?v=1766814530","width":1080}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003cp data-start=\"234\" data-end=\"287\"\u003e\u003cstrong data-start=\"234\" data-end=\"287\"\u003eSunday, January 18th | 9:30â11:00am \u003c\/strong\u003e\u003c\/p\u003e\n\u003cp data-start=\"289\" data-end=\"528\"\u003eJoin us for another Kids Craft Club morning at Fleur de Mer. This relaxed, parent supervised crafting session invites young creatives to slow down, get imaginative, and make something magical together inside our Ocean Township flower shop.\u003c\/p\u003e\n\u003cp data-start=\"530\" data-end=\"734\"\u003eKids Craft Club is designed to feel easy and low pressure. Children can explore the craft at their own pace with a grown up nearby, followed by time to color or enjoy a simple game once crafting wraps up.\u003c\/p\u003e\n\u003cp data-start=\"754\" data-end=\"772\"\u003e\u003cstrong data-start=\"754\" data-end=\"772\"\u003eFlower Fairies: \u003c\/strong\u003eEac
4117h child will receive two fairy templates to color and decorate using dried florals and other materials. Kids will then glue their finished fairies onto popsicle sticks to create their very own fairy friends to take home.\u003c\/p\u003e\n\u003cp data-start=\"979\" data-end=\"1092\"\u003eBefore heading out, each child will also get to pick one flower stem as a sweet little keepsake from their visit.\u003c\/p\u003e\n\u003ch3 data-start=\"1094\" data-end=\"1102\"\u003eAges\u003c\/h3\u003e\n\u003cp data-start=\"1103\" data-end=\"1202\"\u003eSuitable for children ages 3 to 7. This age range is a guideline and parents know their child best.\u003c\/p\u003e\n\u003ch3 data-start=\"1204\" data-end=\"1215\"\u003ePricing\u003c\/h3\u003e\n\u003cp data-start=\"1216\" data-end=\"1275\"\u003e$15 for the first child\u003cbr data-start=\"1239\" data-end=\"1242\"\u003e$12 for each additional sibling\u003c\/p\u003e\n\u003cp data-start=\"1277\" data-end=\"1496\"\u003eEach participating child must have their own ticket. If a sibling attends and chooses to participate without being registered in advance, payment for materials will be required at the end of class, pending availability.\u003c\/p\u003e\n\u003ch3 data-start=\"1498\" data-end=\"1524\"\u003eSupervision and safety\u003c\/h3\u003e\n\u003cp data-start=\"1525\" data-end=\"1671\"\u003eThis is not a drop off program. A parent or guardian must remain in the shop for the duration of the class and supervise their child at all times.\u003c\/p\u003e\n\u003cp data-start=\"1673\" data-end=\"1835\"\u003eWe kindly ask families to be mindful of the space. While accidents happen, running or touching shop items without supervision is not permitted for safety reasons.\u003c\/p\u003e\n\u003ch3 data-start=\"1837\" data-end=\"1869\"\u003eWhat to know before you come\u003c\/h3\u003e\n\u003cp data-start=\"1870\" data-end=\"2115\"\u003ePlease arrive a few minutes early for check in. Crafting will begin promptly at 9:30am.\u003cbr data-start=\"1957\" data-end=\"1960\"\u003eComfortable clothing that can handle light crafting messes is recommended.\u003cbr data-start=\"2034\" data-end=\"2037\"\u003eA restroom is available in the shop.\u003cbr data-start=\"2073\" data-end=\"2076\"\u003eFree parking is available in our plaza.\u003c\/p\u003e\n\u003ch3 data-start=\"2117\" data-end=\"2140\"\u003eHealth and courtesy\u003c\/h3\u003e\n\u003cp data-start=\"2141\" data-end=\"2212\"\u003eIf you or your child are feeling unwell, please refrain from attending.\u003c\/p\u003e\n\u003ch3 data-start=\"2214\" data-end=\"2232\"\u003eWeather policy\u003c\/h3\u003e\n\u003cp data-start=\"2233\" data-end=\"2399\"\u003eIn the event of a snow day, your purchase will be credited for use at a future Kids Craft Club date. Materials are purchased in advance and refunds cannot be offered.\u003c\/p\u003e\n\u003ch3 data-start=\"2401\" data-end=\"2411\"\u003ePhotos\u003c\/h3\u003e\n\u003cp data-start=\"2412\" data-end=\"2551\"\u003eWe may take a few photos during the workshop for social media. Please let us know at check in if you prefer your child not be photographed.\u003c\/p\u003e\n\u003ch3 data-start=\"2553\" data-end=\"2565\"\u003eLocation\u003c\/h3\u003e\n\u003cp data-start=\"2566\" data-end=\"2631\"\u003eFleur de Mer Flower Bar and Boutique\u003cbr data-start=\"2602\" data-end=\"2605\"\u003eOcean Township, New Jersey\u003c\/p\u003e\n\u003cp data-start=\"2633\" data-end=\"2683\"\u003eSpace is limited and pre registration is required.\u003c\/p\u003e"}; 4118 window.SERVICIFY_STORE_URL = "https://fleurdemernj.com"; 4119 window.SERVICIFY_CSS_CLASSNAME = ""; 4120 // Lets the bundle tell the /servicify-calendar rescue apart from a real page 4121 // of the same name, and skip every other 404 outright (SER-857). 4122 window.SERVICIFY_PAGE_TYPE = "product"; 4123</script>
4123 4124</div>
4124<script src="https://cdn.shopify.com/storefront/standard-actions.js" type="module" data-source-attribution="shopify.standard_actions"></script>
4124 4125<shopify-store store-domain="https://fleurdemernj.com" country="US" language="en"></shopify-store> 4126<shopify-chat></shopify-chat> 4127</body> 4128</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.