PageSourceSearch

https://www.lieuditwinery.com/account/login

html lieuditwinery.com collected 2026-10-04 13:24:04 UTC 195,269 bytes, 3,104 lines download raw bytes

1<!doctype html>
2<html class="js" lang="en">
3  <head>
4    <style>
5      #ecom-age-verification{
6    background: #F4ECE2 !important;
7}
8</style>
9 
10
11
12
13  
14  
15  
16  <link href="//www.lieuditwinery.com/cdn/shop/t/9/assets/beae.base.min.css?v=74638711127764541021721048251" rel="stylesheet" type="text/css" media="all" />
17  
18  
19      
20  
21      
22  
22<script src="//www.lieuditwinery.com/cdn/shop/t/9/assets/beae.base.min.js?v=107610079472565882131721048251" defer="defer"></script>
22
23<meta charset="utf-8">
24    <meta http-equiv="X-UA-Compatible" content="IE=edge">
25    <meta name="viewport" content="width=device-width,initial-scale=1">
26    <meta name="theme-color" content="">
27    <link rel="canonical" href="https://www.lieuditwinery.com/account/login"><link rel="icon" type="image/png" href="//www.lieuditwinery.com/cdn/shop/files/Logo_17c1bf3b-44ae-4f20-ba23-280cd8ad1f8d.png?crop=center&height=32&v=1718201124&width=32"><link rel="preconnect" href="https://fonts.shopifycdn.com" crossorigin><title>
28      Account
29 &ndash; Lieu Dit Winery</title>
30
31    
32
33    
34
35<meta property="og:site_name" content="Lieu Dit Winery">
36<meta property="og:url" content="https://www.lieuditwinery.com/account/login">
37<meta property="og:title" content="Account">
38<meta property="og:type" content="website">
39<meta property="og:description" content="Lieu Dit Winery"><meta name="twitter:card" content="summary_large_image">
40<meta name="twitter:title" content="Account">
41<meta name="twitter:description" content="Lieu Dit Winery">
42
43
44    
44<script src="//www.lieuditwinery.com/cdn/shop/t/9/assets/constants.js?v=58251544750838685771718808903" defer="defer"></script>
44
45    
45<script src="//www.lieuditwinery.com/cdn/shop/t/9/assets/pubsub.js?v=158357773527763999511718808903" defer="defer"></script>
45
46    
46<script src="//www.lieuditwinery.com/cdn/shop/t/9/assets/global.js?v=136628361274817707361718808903" defer="defer"></script>
46<script src="//www.lieuditwinery.com/cdn/shop/t/9/assets/animations.js?v=88693664871331136111718808903" defer="defer"></script>
46<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
46<meta name="facebook-domain-verification" content="ud32bfhoqmh5elp19gqatcrtgdhcie">
47<meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/7028047908/digital_wallets/dialog">
48<link rel="ucp" href="/.well-known/ucp" version="2026-08-25">
48<script async="async" src="/checkouts/internal/preloads.js?locale=en-US"></script>
48
49<link rel="preconnect" href="https://shop.app" crossorigin="anonymous">
50<script async="async" src="https://shop.app/checkouts/internal/preloads.js?locale=en-US&shop_id=7028047908" crossorigin="anonymous"></script>
vendor: 1 bytes, line 50
50
51<script id="apple-pay-shop-capabilities" type="application/json">{"shopId":7028047908,"countryCode":"US","currencyCode":"USD","merchantCapabilities":["supports3DS"],"merchantId":"gid:\/\/shopify\/Shop\/7028047908","merchantName":"Lieu Dit Winery","requiredBillingContactFields":["postalAddress","email","phone"],"requiredShippingContactFields":["postalAddress","email","phone"],"shippingType":"shipping","supportedNetworks":["visa","masterCard","amex","discover","elo","jcb"],"total":{"type":"pending","label":"Lieu Dit Winery","amount":"1.00"},"shopifyPaymentsEnabled":true,"supportsSubscriptions":true}</script>
vendor: 1 bytes, line 51
51
52<script id="shopify-features" type="application/json">{"accessToken":"bdebea379f3b11bf503b7b707ab4a6ca","betas":["rich-media-storefront-analytics"],"domain":"www.lieuditwinery.com","predictiveSearch":true,"shopId":7028047908,"locale":"en"}</script>
vendor: 1 bytes, line 52
52
53<script>var Shopify = Shopify || {};
54Shopify.shop = "lieu-dit-winery.myshopify.com";
55Shopify.locale = "en";
56Shopify.currency = {"active":"USD","rate":"1.0"};
57Shopify.country = "US";
58Shopify.theme = {"name":"Lieu Dit Winery","id":124444115002,"schema_name":"Trade","schema_version":"14.0.0","theme_store_id":2699,"role":"main"};
59Shopify.theme.handle = "null";
60Shopify.theme.style = {"id":null,"handle":null};
61Shopify.cdnHost = "www.lieuditwinery.com/cdn";
62Shopify.routes = Shopify.routes || {};
63Shopify.routes.root = "/";
64Shopify.shopJsCdnBaseUrl = "https://cdn.shopify.com/shopifycloud/shop-js";
65Shopify.SignInWithShop = Shopify.SignInWithShop || {};
66Shopify.SignInWithShop.User = Shopify.SignInWithShop.User || {};
67Shopify.SignInWithShop.User.recognized = false;</script>
vendor: 1 bytes, line 67
67
68<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
vendor: 1 bytes, line 68
68
69<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 69
69
70<script>
71  window.ShopifyPay = window.ShopifyPay || {};
72  window.ShopifyPay.apiHost = "shop.app\/pay";
73  window.ShopifyPay.redirectState = null;
74</script>
vendor: 1 bytes, line 74
74
75<script>
76  window.Shopify = window.Shopify || {};
77  window.Shopify.SignInWithShop = window.Shopify.SignInWithShop || {};
78  window.Shopify.SignInWithShop.assetMetrics = { sampleRate: 0.25 };
79  window.Shopify.SignInWithShop.eligible = true;
80</script>
vendor: 1 bytes, line 80
80
81<script id="shop-js-analytics" type="application/json">{"pageType":"customers/login"}</script>
vendor: 1 bytes, line 81
81
82<script defer="defer" async type="module" src="https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-customer-accounts.en.esm.js"></script>
vendor: 1 bytes, line 82
82
83<script defer="defer" async type="module" src="https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-customer-accounts-sign-up.en.esm.js"></script>
vendor: 1 bytes, line 83
83
84<script type="module">
85  await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-customer-accounts.en.esm.js");
86await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-customer-accounts-sign-up.en.esm.js");
87
88  window.Shopify.SignInWithShop?.initCustomerAccounts?.(true, {"fedCMEnabled":true,"windoidEnabled":true});
89window.Shopify.SignInWithShop?.initCustomerAccountsSignUp?.({"fedCMEnabled":true,"windoidEnabled":true});
90
91</script>
vendor: 1 bytes, line 91
91
92<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 92
92
93<script type="module">
94  await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js");
95
96  window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true});
97
98</script>
vendor: 1 bytes, line 98
98
99<script>
100  window.Shopify = window.Shopify || {};
101  if (!window.Shopify.featureAssets) window.Shopify.featureAssets = {};
102  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"]};
103</script>
vendor: 1 bytes, line 103
103
104<script>(function() {
105  var isLoaded = false;
106  function asyncLoad() {
107    if (isLoaded) return;
108    isLoaded = true;
109    var urls = ["https:\/\/scripts.juniphq.com\/v1\/junip_shopify.js?shop=lieu-dit-winery.myshopify.com","https:\/\/a.mailmunch.co\/widgets\/site-1073200-2849d986850fb301156d575966e35e7402245c13.js?shop=lieu-dit-winery.myshopify.com","https:\/\/chimpstatic.com\/mcjs-connected\/js\/users\/23df39cf6e5718508c213e7c3\/690636998f7495cee9ad9810d.js?shop=lieu-dit-winery.myshopify.com","\/\/cdn.shopify.com\/proxy\/5be95a96e3590f6d6807da4d228b017e250ed88bfa0bc9624c21eb5b855b3323\/b2b-solution.bsscommerce.com\/js\/bss-b2b-cp.js?shop=lieu-dit-winery.myshopify.com\u0026sp-cache-control=cHVibGljLCBtYXgtYWdlPTkwMA"];
110    for (var i = 0; i < urls.length; i++) {
111      var s = document.createElement('script');
112      s.type = 'text/javascript';
113      s.async = true;
114      s.src = urls[i];
115      var x = document.getElementsByTagName('script')[0];
116      x.parentNode.insertBefore(s, x);
117    }
118  };
119  if(window.attachEvent) {
120    window.attachEvent('onload', asyncLoad);
121  } else {
122    window.addEventListener('load', asyncLoad, false);
123  }
124})();</script>
vendor: 1 bytes, line 124
124
125<script id="__st">var __st={"a":7028047908,"offset":-14400,"reqid":"eb780ae2-fed8-4caa-b4e4-d02abcc5751e-1791120243","pageurl":"www.lieuditwinery.com\/account\/login","u":"77b37158e51b"};</script>
vendor: 1 bytes, line 125
125
126<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
vendor: 1 bytes, line 126
126
127<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 127
127
128<script integrity="sha256-JjoPp5ZfB1sSAs5SQaol1x1GgvveM+BgmRzyDexInEQ=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//www.lieuditwinery.com/cdn/shopifycloud/storefront/assets/storefront/load_feature-1bd60354.js" crossorigin="anonymous"></script>
vendor: 1 bytes, line 128
128
129<script>(function () {var userAgent = navigator.userAgent;var platform = navigator.platform;var maxTouchPoints = navigator.maxTouchPoints || 0;var isIOS = /iPad|iPhone|iPod/.test(platform) || (platform === 'MacIntel' && maxTouchPoints > 1);var isMacSafari = platform.indexOf('Mac') === 0 && /Safari/.test(userAgent) && !/Chrome|Chromium|CriOS|FxiOS|Edg|OPR|Android/.test(userAgent);var isAppleSafari = isIOS || isMacSafari;if (isAppleSafari) {fetch('/sf_private_access_tokens' + location.search).catch(function () {});}function browserMajorVersion(pattern) {var match = userAgent.match(pattern);return match ? parseInt(match[1], 10) : null;}function shouldLoadAutosizesPolyfill() {if (!window.PerformanceObserver?.supportedEntryTypes?.includes('paint')) {return false;}var chromeVersion = browserMajorVersion(/Chrome\/(\d+)/);if (chromeVersion !== null) {return chromeVersion < 126;}var firefoxVersion = browserMajorVersion(/Firefox\/(\d+)/);if (firefoxVersion !== null) {return firefoxVersion < 150;}var safariVersion = isAppleSafari ? browserMajorVersion(/Version\/(\d+).*Safari\//) : null;if (safariVersion !== null) {return safariVersion < 27;}return true;}if (shouldLoadAutosizesPolyfill()) {var autosizesScript = document.createElement('script');autosizesScript.async = true;autosizesScript.crossOrigin = 'anonymous';autosizesScript.src = "//www.lieuditwinery.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>
129<script crossorigin="anonymous" defer="defer" src="//www.lieuditwinery.com/cdn/shopifycloud/storefront/assets/shopify_pay/storefront-616277c7.js?v=20250812"></script>
vendor: 1 bytes, line 129
129
130<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 130
130
131<script>
132  window.Shopify = window.Shopify || {};
133  window.Shopify.MCP = window.Shopify.MCP || {};
134  window.Shopify.MCP.enabled = true;
135  window.Shopify.MCP.shop = "lieu-dit-winery.myshopify.com";
136  window.Shopify.MCP.mcpEndpoint = "https:\/\/www.lieuditwinery.com\/api\/mcp";
137  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"]}}];
138</script>
vendor: 1 bytes, line 138
138
139<script>(()=>{var d="shopify:webmcp_adapter_loaded",n=Symbol.for("shopify.webmcp_adapter_loading");function s(c,a,{win:r=window,doc:o=document}={}){function p(){try{return r.localStorage.getItem(d)==="true"}catch{return!1}}function l(){try{r.localStorage.setItem(d,"true")}catch{}}function u(){return typeof(o.modelContext||r.navigator?.modelContext)?.registerTool=="function"}function f(){if(r[n]||!u())return;let t=o.head||o.getElementsByTagName("head")[0];if(!t)return;let e=o.createElement("script");e.type="module",e.crossOrigin="anonymous",a&&(e.integrity=a),e.src=c,e.addEventListener("load",l,{once:!0}),e.addEventListener("error",()=>{r[n]=!1},{once:!0}),t.appendChild(e),r[n]=!0}function _(t){let e=o.getElementById("shopify-origin-trials");if(!e||r.__shopifyOriginTrialsDone){t();return}e.addEventListener("load",t,{once:!0}),e.addEventListener("error",t,{once:!0})}function i(){_(()=>r.setTimeout(f,0))}function m(){o.addEventListener("DOMContentLoaded",i,{once:!0})}p()?i():m()}s("\/\/www.lieuditwinery.com\/cdn\/shopifycloud\/storefront\/assets\/storefront\/webmcp-c6b62ece.js","sha256-ke4DDuBjdvea3vxLWxHc9E9nq8zihuG4IfYEGbb77ys=");})();
140</script>
vendor: 1 bytes, line 140
140
141<script data-source-attribution="shopify.dynamic_checkout.dynamic.init">var Shopify=Shopify||{};Shopify.PaymentButton=Shopify.PaymentButton||{isStorefrontPortableWallets:!0,init:function(){window.Shopify.PaymentButton.init=function(){};var t=document.createElement("script");t.src="https://www.lieuditwinery.com/cdn/shopifycloud/portable-wallets/latest/portable-wallets.en.js",t.type="module",document.head.appendChild(t)}};
142</script>
vendor: 1 bytes, line 142
142
143<script data-source-attribution="shopify.dynamic_checkout.buyer_consent">
144  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);
145</script>
vendor: 1 bytes, line 145
145
146<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})}}));
147</script>
147
148<link id="shopify-accelerated-checkout-styles" rel="stylesheet" media="screen" href="https://www.lieuditwinery.com/cdn/shopifycloud/portable-wallets/latest/accelerated-checkout-backwards-compat.css" crossorigin="anonymous">
149<style id="shopify-accelerated-checkout-cart">
150        #shopify-buyer-consent {
151  margin-top: 1em;
152  display: inline-block;
153  width: 100%;
154}
155
156#shopify-buyer-consent.hidden {
157  display: none;
158}
159
160#shopify-subscription-policy-button {
161  background: none;
162  border: none;
163  padding: 0;
164  text-decoration: underline;
165  font-size: inherit;
166  cursor: pointer;
167}
168
169#shopify-subscription-policy-button::before {
170  box-shadow: none;
171}
172
173      </style>
174<script id="sections-script" data-sections="header" defer="defer" src="//www.lieuditwinery.com/cdn/shop/t/9/compiled_assets/scripts.js?v=184325197989695213571734259508"></script>
vendor: 1 bytes, line 174
174
175<script id="shopify-cfh-end">window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
175
176
177
178    <style data-shopify>
179      
180      
181      
182      
183      @font-face {
184  font-family: "DM Sans";
185  font-weight: 500;
186  font-style: normal;
187  font-display: swap;
188  src: url("//www.lieuditwinery.com/cdn/fonts/dm_sans/dmsans_n5.8a0f1984c77eb7186ceb87c4da2173ff65eb012e.woff2") format("woff2"),
189       url("//www.lieuditwinery.com/cdn/fonts/dm_sans/dmsans_n5.9ad2e755a89e15b3d6c53259daad5fc9609888e6.woff") format("woff");
190}
191
192
193      
194        :root,
195        .color-scheme-1 {
196          --color-background: 244,244,244;
197        
198          --gradient-background: #f4f4f4;
199        
200
201        
202
203        --color-foreground: 43,44,45;
204        --color-background-contrast: 180,180,180;
205        --color-shadow: 0,17,40;
206        --color-button: 183,172,162;
207        --color-button-text: 38,38,38;
208        --color-secondary-button: 244,244,244;
209        --color-secondary-button-text: 0,17,40;
210        --color-link: 0,17,40;
211        --color-badge-foreground: 43,44,45;
212        --color-badge-background: 244,244,244;
213        --color-badge-border: 43,44,45;
214        --payment-terms-background-color: rgb(244 244 244);
215      }
216      
217        
218        .color-scheme-2 {
219          --color-background: 255,255,255;
220        
221          --gradient-background: #ffffff;
222        
223
224        
225
226        --color-foreground: 38,38,38;
227        --color-background-contrast: 191,191,191;
228        --color-shadow: 0,17,40;
229        --color-button: 121,112,104;
230        --color-button-text: 255,255,255;
231        --color-secondary-button: 255,255,255;
232        --color-secondary-button-text: 121,117,114;
233        --color-link: 121,117,114;
234        --color-badge-foreground: 38,38,38;
235        --color-badge-background: 255,255,255;
236        --color-badge-border: 38,38,38;
237        --payment-terms-background-color: rgb(255 255 255);
238      }
239      
240        
241        .color-scheme-3 {
242          --color-background: 194,183,172;
243        
244          --gradient-background: #c2b7ac;
245        
246
247        
248
249        --color-foreground: 38,38,38;
250        --color-background-contrast: 137,119,101;
251        --color-shadow: 0,17,40;
252        --color-button: 253,253,253;
253        --color-button-text: 38,38,38;
254        --color-secondary-button: 194,183,172;
255        --color-secondary-button-text: 84,72,60;
256        --color-link: 84,72,60;
257        --color-badge-foreground: 38,38,38;
258        --color-badge-background: 194,183,172;
259        --color-badge-border: 38,38,38;
260        --payment-terms-background-color: rgb(194 183 172);
261      }
262      
263        
264        .color-scheme-4 {
265          --color-background: 28,34,40;
266        
267          --gradient-background: #1c2228;
268        
269
270        
271
272        --color-foreground: 255,255,255;
273        --color-background-contrast: 39,47,55;
274        --color-shadow: 0,17,40;
275        --color-button: 255,255,255;
276        --color-button-text: 0,17,40;
277        --color-secondary-button: 28,34,40;
278        --color-secondary-button-text: 255,255,255;
279        --color-link: 255,255,255;
280        --color-badge-foreground: 255,255,255;
281        --color-badge-background: 28,34,40;
282        --color-badge-border: 255,255,255;
283        --payment-terms-background-color: rgb(28 34 40);
284      }
285      
286        
287        .color-scheme-5 {
288          --color-background: 50,56,65;
289        
290          --gradient-background: #323841;
291        
292
293        
294
295        --color-foreground: 255,255,255;
296        --color-background-contrast: 61,68,79;
297        --color-shadow: 0,17,40;
298        --color-button: 183,172,162;
299        --color-button-text: 38,38,38;
300        --color-secondary-button: 50,56,65;
301        --color-secondary-button-text: 255,255,255;
302        --color-link: 255,255,255;
303        --color-badge-foreground: 255,255,255;
304        --color-badge-background: 50,56,65;
305        --color-badge-border: 255,255,255;
306        --payment-terms-background-color: rgb(50 56 65);
307      }
308      
309        
310        .color-scheme-006fe274-a695-4233-ad56-13e5ddd44d67 {
311          --color-background: 255,249,242;
312        
313          --gradient-background: #fff9f2;
314        
315
316        
317
318        --color-foreground: 17,17,19;
319        --color-background-contrast: 255,190,114;
320        --color-shadow: 0,17,40;
321        --color-button: 17,17,19;
322        --color-button-text: 255,249,242;
323        --color-secondary-button: 255,249,242;
324        --color-secondary-button-text: 17,17,19;
325        --color-link: 17,17,19;
326        --color-badge-foreground: 17,17,19;
327        --color-badge-background: 255,249,242;
328        --color-badge-border: 17,17,19;
329        --payment-terms-background-color: rgb(255 249 242);
330      }
331      
332        
333        .color-scheme-edecdc98-e968-41ff-85c6-8560641c6f92 {
334          --color-background: 17,17,19;
335        
336          --gradient-background: #111113;
337        
338
339        
340
341        --color-foreground: 255,249,242;
342        --color-background-contrast: 139,139,152;
343        --color-shadow: 0,17,40;
344        --color-button: 17,17,19;
345        --color-button-text: 255,249,242;
346        --color-secondary-button: 17,17,19;
347        --color-secondary-button-text: 0,17,40;
348        --color-link: 0,17,40;
349        --color-badge-foreground: 255,249,242;
350        --color-badge-background: 17,17,19;
351        --color-badge-border: 255,249,242;
352        --payment-terms-background-color: rgb(17 17 19);
353      }
354      
355
356      body, .color-scheme-1, .color-scheme-2, .color-scheme-3, .color-scheme-4, .color-scheme-5, .color-scheme-006fe274-a695-4233-ad56-13e5ddd44d67, .color-scheme-edecdc98-e968-41ff-85c6-8560641c6f92 {
357        color: rgba(var(--color-foreground), 0.75);
358        background-color: rgb(var(--color-background));
359      }
360
361      :root {
362        --font-body-family: "system_ui", -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', 'Noto Sans', 'Liberation Sans', Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
363        --font-body-style: normal;
364        --font-body-weight: 400;
365        --font-body-weight-bold: 700;
366
367        --font-heading-family: "DM Sans", sans-serif;
368        --font-heading-style: normal;
369        --font-heading-weight: 500;
370
371        --font-body-scale: 1.0;
372        --font-heading-scale: 1.05;
373
374        --media-padding: px;
375        --media-border-opacity: 0.05;
376        --media-border-width: 1px;
377        --media-radius: 8px;
378        --media-shadow-opacity: 0.0;
379        --media-shadow-horizontal-offset: 0px;
380        --media-shadow-vertical-offset: 4px;
381        --media-shadow-blur-radius: 5px;
382        --media-shadow-visible: 0;
383
384        --page-width: 120rem;
385        --page-width-margin: 0rem;
386
387        --product-card-image-padding: 1.2rem;
388        --product-card-corner-radius: 3.6rem;
389        --product-card-text-alignment: left;
390        --product-card-border-width: 0.0rem;
391        --product-card-border-opacity: 0.1;
392        --product-card-shadow-opacity: 0.0;
393        --product-card-shadow-visible: 0;
394        --product-card-shadow-horizontal-offset: 0.0rem;
395        --product-card-shadow-vertical-offset: 0.4rem;
396        --product-card-shadow-blur-radius: 0.5rem;
397
398        --collection-card-image-padding: 0.0rem;
399        --collection-card-corner-radius: 0.8rem;
400        --collection-card-text-alignment: left;
401        --collection-card-border-width: 0.0rem;
402        --collection-card-border-opacity: 0.1;
403        --collection-card-shadow-opacity: 0.0;
404        --collection-card-shadow-visible: 0;
405        --collection-card-shadow-horizontal-offset: 0.0rem;
406        --collection-card-shadow-vertical-offset: 0.4rem;
407        --collection-card-shadow-blur-radius: 0.5rem;
408
409        --blog-card-image-padding: 0.0rem;
410        --blog-card-corner-radius: 0.8rem;
411        --blog-card-text-alignment: left;
412        --blog-card-border-width: 0.0rem;
413        --blog-card-border-opacity: 0.1;
414        --blog-card-shadow-opacity: 0.0;
415        --blog-card-shadow-visible: 0;
416        --blog-card-shadow-horizontal-offset: 0.0rem;
417        --blog-card-shadow-vertical-offset: 0.4rem;
418        --blog-card-shadow-blur-radius: 0.5rem;
419
420        --badge-corner-radius: 4.0rem;
421
422        --popup-border-width: 1px;
423        --popup-border-opacity: 0.1;
424        --popup-corner-radius: 8px;
425        --popup-shadow-opacity: 0.05;
426        --popup-shadow-horizontal-offset: 0px;
427        --popup-shadow-vertical-offset: 4px;
428        --popup-shadow-blur-radius: 5px;
429
430        --drawer-border-width: 1px;
431        --drawer-border-opacity: 0.1;
432        --drawer-shadow-opacity: 0.0;
433        --drawer-shadow-horizontal-offset: 0px;
434        --drawer-shadow-vertical-offset: 4px;
435        --drawer-shadow-blur-radius: 5px;
436
437        --spacing-sections-desktop: 0px;
438        --spacing-sections-mobile: 0px;
439
440        --grid-desktop-vertical-spacing: 12px;
441        --grid-desktop-horizontal-spacing: 12px;
442        --grid-mobile-vertical-spacing: 6px;
443        --grid-mobile-horizontal-spacing: 6px;
444
445        --text-boxes-border-opacity: 0.1;
446        --text-boxes-border-width: 0px;
447        --text-boxes-radius: 8px;
448        --text-boxes-shadow-opacity: 0.0;
449        --text-boxes-shadow-visible: 0;
450        --text-boxes-shadow-horizontal-offset: 0px;
451        --text-boxes-shadow-vertical-offset: 4px;
452        --text-boxes-shadow-blur-radius: 5px;
453
454        --buttons-radius: 6px;
455        --buttons-radius-outset: 7px;
456        --buttons-border-width: 1px;
457        --buttons-border-opacity: 1.0;
458        --buttons-shadow-opacity: 0.0;
459        --buttons-shadow-visible: 0;
460        --buttons-shadow-horizontal-offset: 0px;
461        --buttons-shadow-vertical-offset: 4px;
462        --buttons-shadow-blur-radius: 5px;
463        --buttons-border-offset: 0.3px;
464
465        --inputs-radius: 6px;
466        --inputs-border-width: 1px;
467        --inputs-border-opacity: 0.55;
468        --inputs-shadow-opacity: 0.0;
469        --inputs-shadow-horizontal-offset: 0px;
470        --inputs-margin-offset: 0px;
471        --inputs-shadow-vertical-offset: 4px;
472        --inputs-shadow-blur-radius: 5px;
473        --inputs-radius-outset: 7px;
474
475        --variant-pills-radius: 40px;
476        --variant-pills-border-width: 1px;
477        --variant-pills-border-opacity: 0.55;
478        --variant-pills-shadow-opacity: 0.0;
479        --variant-pills-shadow-horizontal-offset: 0px;
480        --variant-pills-shadow-vertical-offset: 4px;
481        --variant-pills-shadow-blur-radius: 5px;
482      }
483
484      *,
485      *::before,
486      *::after {
487        box-sizing: inherit;
488      }
489
490      html {
491        box-sizing: border-box;
492        font-size: calc(var(--font-body-scale) * 62.5%);
493        height: 100%;
494      }
495
496      body {
497        display: grid;
498        grid-template-rows: auto auto 1fr auto;
499        grid-template-columns: 100%;
500        min-height: 100%;
501        margin: 0;
502        font-size: 1.5rem;
503        letter-spacing: 0.06rem;
504        line-height: calc(1 + 0.8 / var(--font-body-scale));
505        font-family: var('TimesNow-Light');
506        font-style: var(--font-body-style);
507        font-weight: var(--font-body-weight);
508      }
509/* 
510       @font-face { 
511font-family: 'TimesNow-Light';
512src: url(https://cdn.shopify.com/s/files/1/0070/2804/7908/files/TimesNow-Light.woff?v=1717595068) format('woff2');
513} 
514
515      @font-face { 
516font-family: 'TimesNow-SemiBold';
517src: url(https://cdn.shopify.com/s/files/1/0070/2804/7908/files/TimesNow-SemiBold.woff?v=1717595080) format('woff2');
518} 
519
520       @font-face { 
521font-family: 'Sneak-Regular';
522src: url(https://cdn.shopify.com/s/files/1/0070/2804/7908/files/Sneak-Regular.woff?v=1717595110) format('woff2');
523} 
524      
525       @font-face { 
526font-family: 'Sneak-Medium';
527src: url(https://cdn.shopify.com/s/files/1/0070/2804/7908/files/Sneak-Medium.woff?v=1717595162) format('woff2');
528} 
529
530       @font-face { 
531font-family: 'Sneak-Bold';
532src: url(https://cdn.shopify.com/s/files/1/0070/2804/7908/files/Sneak-Bold.woff?v=1717595162) format('woff2');
533}  */
534      
535
536      @media screen and (min-width: 750px) {
537        body {
538          font-size: 1.6rem;
539        }
540      }
541    </style>
542
543    <link href="//www.lieuditwinery.com/cdn/shop/t/9/assets/base.css?v=29404288273096915591722272272" rel="stylesheet" type="text/css" media="all" />
544
545      <link rel="preload" as="font" href="//www.lieuditwinery.com/cdn/fonts/dm_sans/dmsans_n5.8a0f1984c77eb7186ceb87c4da2173ff65eb012e.woff2" type="font/woff2" crossorigin>
546      
547<link
548        rel="stylesheet"
549        href="//www.lieuditwinery.com/cdn/shop/t/9/assets/component-predictive-search.css?v=118923337488134913561718808903"
550        media="print"
551        onload="this.media='all'"
552      >
552<script>
553      if (Shopify.designMode) {
554        document.documentElement.classList.add('shopify-design-mode');
555      }
556    </script>
556
557  
558            
559                
560            
561
562  
562<script>    !function(t,o,c,k){if(!t.tock){var e=t.tock=function(){e.callMethod?    e.callMethod.apply(e,arguments):e.queue.push(arguments)};t._tock||(t._tock=e),    e.push=e,e.loaded=!0,e.version='1.0',e.queue=[];var f=o.createElement(c);f.async=!0,    f.src=k;var g=o.getElementsByTagName(c)[0];g.parentNode.insertBefore(f,g)}}(    window,document,'script','https://www.exploretock.com/tock.js');    tock('init', 'tyler-x-lieu-dit');    </script>
562
563  
564
565
566
567<script src="https://cdn.chord.co/analytics-liquid-identifiers/v1/analytics-liquid-identifiers.min.js" defer="defer"></script>
567
568
569<!-- BEGIN app block: shopify://apps/winehub-commerce/blocks/exclusive-product-locker/c0ed40b1-a5e6-4ec9-bd28-157981fb797f -->
570    <style>
571        .wh-welcome-back {
572            font-weight: 600;
573            margin-left: 4px;
574            display: flex;
575            align-items: center;
576            font-size: 12px;
577        }
578        .wh-welcome-back-nav {
579            display: flex;
580            align-items: center;
581            justify-content: center;
582            /**width: fit-content;**/
583            background-color: #f0f0f0;
584            color: #000;
585            padding: 10px;
586            border-radius: 0px;
587        }
588        .wh-profile-button {
589            display: flex;
590            align-content: center;
591            flex-wrap: wrap;
592            padding: 12px;
593        }
594    </style>
595    
595<script>
596        const debug = false;
597        let store = `lieu-dit-winery.myshopify.com`;
598        let customerId = ``;
599        if (!customerId) {
600            customerId = 'none';
601        }
602        let variantChangeHandler = null;
603        let variantChangeHandlerAdded = false;
604        let isCheckingExclusive = false;
605        let checkExclusiveTimeout = null;
606        let base_url = "https://api.winehub.io";
607        if (store == 'winehub-demo.myshopify.com') {
608            base_url = "https://staging-api.winehub.io";
609        }
610
611        const profileIconSVG = `
612            <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-user"><path d="M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"/><circle cx="12" cy="7" r="4"/></svg>
613        `;
614
615        const profileIcon = document.createElement('div');
616        profileIcon.innerHTML = profileIconSVG;
617        profileIcon.classList.add('wh-profile-icon');
618
619        function createProfileButton() {
620            // link to /apps/winehub
621            const profileButton = document.createElement('a');
622            profileButton.href = `https://www.lieuditwinery.com/apps/winehub`;
623            profileButton.innerHTML = profileIconSVG;
624            profileButton.classList.add('wh-profile-button');
625            return profileButton;
626        }
627
628        function _0x569a(){const _0xc58f4b=['split','1508120wmjjay','442729kVWNed','fromCharCode','map','877644ewBLIJ','charCodeAt','toLowerCase','join','4040766MDCNcL','1069215vxBRAg','1663285ppZxuB','replace','toUpperCase','length','4371108eDXEIJ'];_0x569a=function(){return _0xc58f4b;};return _0x569a();}(function(_0x2ab4b9,_0x484b0d){const _0x4acce4=_0x382b,_0x208460=_0x2ab4b9();while(!![]){try{const _0x94c7c2=-parseInt(_0x4acce4(0x1bf))/0x1+parseInt(_0x4acce4(0x1ce))/0x2+-parseInt(_0x4acce4(0x1c7))/0x3+parseInt(_0x4acce4(0x1c2))/0x4+parseInt(_0x4acce4(0x1c8))/0x5+parseInt(_0x4acce4(0x1c6))/0x6+-parseInt(_0x4acce4(0x1cc))/0x7;if(_0x94c7c2===_0x484b0d)break;else _0x208460['push'](_0x208460['shift']());}catch(_0x5c8ee1){_0x208460['push'](_0x208460['shift']());}}}(_0x569a,0x87beb));function decodeText(_0x59c5ae){const _0x564a33=_0x382b;return _0x59c5ae['split']('\x20')['map'](_0x4b1bad=>{const _0x2f1dfb=_0x382b;return _0x4b1bad=_0x4b1bad['replace'](/@/g,'k')[_0x2f1dfb(0x1c9)](/&/g,'o'),_0x4b1bad[_0x2f1dfb(0x1cb)]&&(_0x4b1bad=_0x4b1bad[_0x2f1dfb(0x1cd)]('')[_0x2f1dfb(0x1c1)](_0x42869e=>shiftCharBack(_0x42869e,0x6))[_0x2f1dfb(0x1c5)]('')),_0x4b1bad;})[_0x564a33(0x1c5)]('\x20');}function _0x382b(_0x2e9e48,_0x203e9a){const _0x569a66=_0x569a();return _0x382b=function(_0x382b0d,_0x265b6e){_0x382b0d=_0x382b0d-0x1bf;let _0x2f09b3=_0x569a66[_0x382b0d];return _0x2f09b3;},_0x382b(_0x2e9e48,_0x203e9a);}function shiftCharBack(_0x4f415f,_0x11b39c){const _0x3c76cf=_0x382b,_0x45cee1=_0x4f415f===_0x4f415f[_0x3c76cf(0x1ca)](),_0x3dc289=_0x45cee1?0x41:0x61,_0x417199=_0x4f415f[_0x3c76cf(0x1c4)]()[_0x3c76cf(0x1c3)](0x0);if(_0x417199<0x61||_0x417199>0x7a)return _0x4f415f;return String[_0x3c76cf(0x1c0)]((_0x417199-0x61-_0x11b39c+0x1a)%0x1a+_0x3dc289);}
629
630        window.onload = async function() {
631            const currencyCode = `USD` || 'AUD';
632            let _json = await checkProductDiscounts(0, currencyCode, customerId);
633            let json = _json?.exclusive ?? {};
634            let json_tier = _json?.tierProduct ?? {};
635            let json_club = _json?.clubDiscount ?? {};
636            let json_tier_general = _json?.tierGeneral ?? {};
637            //const json_tier = _json?.tierProduct ?? {};
638            //const json_club = _json?.clubDiscount ?? {};
639            //const json_tier_general = _json?.tierGeneral ?? {};
640            //const json = _json?.exclusive ?? {}; // original exclusive
641
642            const res = loadCss(customerId, _json.css);
643            const tierName = _json?.css?.tierName ?? '';
644            const welcomeBarEnabled = `false`;
645            let usingLegacyCustomerAccount = false;
646            if (welcomeBarEnabled == 'true'){
647                //const loginLinks = document.querySelectorAll('a[href="/account"]') // customer is logged in
648                let loginLinks = Array.from(document.querySelectorAll('a[href]')).filter(link => 
649                    link.getAttribute('href').includes('/account?locale') // new customer accounts
650                );
651
652                if (loginLinks.length == 0) {
653                    usingLegacyCustomerAccount = true;
654                    loginLinks = document.querySelectorAll('a[href="/account"]') // legacy customer accounts
655                }
656
657                const loginLink = loginLinks[loginLinks.length - 1]
658                //const showTier = ``
659                const renderAboveNav = `false`
660                const customerName = ``
661
662                if (loginLink && tierName) {
663                    const parent = loginLink.parentElement
664
665                    const div = document.createElement('div')
666                    // welcome back <customer_name> you are a <tier_name> member
667                    const welcomeBackMessage = `Welcome back {customer_name}, you are a {tier_name} member`
668                    const chunk1 = welcomeBackMessage.split('{customer_name}')[0] ?? '';
669                    const chunk2 = welcomeBackMessage.split('{customer_name}')[1] ?? '';
670                    const chunk2_ = chunk2.split('{tier_name}')[0]
671                    const welcomeBack = `${chunk1}${chunk2_}${tierName}`
672                    const chunk3 = welcomeBackMessage.split('{tier_name}')[1] ?? '';
673                    if (!chunk1 || !chunk2){
674                        div.innerHTML = `Welcome back `
675                    }
676                    div.innerHTML = `${welcomeBack}${chunk3}`
677                    div.classList.add('wh-welcome-back')
678
679                    const profileButton = createProfileButton();
680
681                    if (renderAboveNav == 'true'){
682                        const navBanner = document.createElement('div')
683                        navBanner.classList.add('wh-welcome-back-nav')
684                        navBanner.appendChild(div)
685                        if (!window.location.href.includes('/apps/winehub') && !usingLegacyCustomerAccount){
686                            navBanner.appendChild(profileButton)
687                        }
688                        const header = document.querySelector('header')
689                        const parentHeader = header.parentElement
690                        parentHeader.insertBefore(navBanner, header)
691                    } else {
692                        const welcomeBarPosition = `left`
693                        if (welcomeBarPosition == 'left') {
694                            parent.insertBefore(div, loginLink)
695                        } else {
696                            parent.appendChild(div)
697                        }
698
699                        // if the current url contains /apps/winehub do not insert the profile button
700                        if (!window.location.href.includes('/apps/winehub') && !usingLegacyCustomerAccount){
701                            parent.insertBefore(profileButton, loginLink);
702                        }
703                    }
704                } else if (loginLink && customerName?.length > 0){
705                    const parent = loginLink.parentElement
706
707                    const div = document.createElement('div')
708                    div.innerHTML = `Welcome back `
709                    div.classList.add('wh-welcome-back')
710                    const profileButton = createProfileButton();
711
712                    if (renderAboveNav == 'true'){
713                        const navBanner = document.createElement('div')
714                        navBanner.classList.add('wh-welcome-back-nav')
715                        navBanner.appendChild(div)
716                        if (!window.location.href.includes('/apps/winehub') && !usingLegacyCustomerAccount){
717                            navBanner.appendChild(profileButton)
718                        }
719                        const header = document.querySelector('header')
720                        const parentHeader = header.parentElement
721                        parentHeader.insertBefore(navBanner, header)
722                    } else {
723                        const welcomeBarPosition = `left`
724                        if (welcomeBarPosition == 'left') {
725                            parent.insertBefore(div, loginLink)
726                        } else {
727                            parent.appendChild(div)
728                        }
729
730                        // if the current url contains /apps/winehub do not insert the profile button
731                        if (!window.location.href.includes('/apps/winehub') && !usingLegacyCustomerAccount){
732                            parent.insertBefore(profileButton, loginLink);
733                        }
734                    }
735
736                }
737            }
738
739            //////console.log('RUNNING WH-PRODUCT-LOCKER 22 - 23-07-2024'); // use this value to determine if shopify actually updated the script
740            //////console.log('RUNNING WH-PRODUCT-LOCKER 29 - 09-08-2024'); // use this value to determine if shopify actually updated the script
741            //console.log('RUNNING WH-PRODUCT-LOCKER 31 - 2025-01-03'); // use this value to determine if shopify actually updated the script
742            console.log('RUNNING WH-PRODUCT-LOCKER 31 - 2025-12-05'); // use this value to determine if shopify actually updated the script
743            if (`true` != 'true'){
744                //console.log('pricing display is disabled');
745                return;
746            }
747            //////console.log('currencyFormat', currencyFormat, currencyCode);
748
749            /** Product Variants **/
750            const items = document.querySelectorAll('form[action="/cart/add"]');
751            if (items.length) {
752                const variantRadios = document.querySelector('variant-radios');
753                //let id = items[0][2].getAttribute('value');
754                //////console.log('variantRadios length', variantRadios.variantData.length)
755                const variants = variantRadios?.querySelector('script')
756                const variantScriptData = JSON.parse(variants?.innerHTML || '{}');
757                //////console.log('variantScriptData', variantScriptData);
758                let variantCount = 0;
759                if (variantScriptData.length) {
760                    variantCount = variantScriptData?.filter((variant) => variant.id).length;
761                }
762
763                //////console.log('variant count', variantCount);
764                if (variantCount) {
765                    let idElement = document.querySelector('[data-variant-id]') ?? document.querySelector('[data-product-id]');
766                    let id = idElement?.getAttribute('data-variant-id') ?? idElement?.getAttribute('data-product-id');
767
768                    //////console.log('id', id);
769
770                    if (!id) {
771                        const formInput = items[0].querySelectorAll('input');
772                        for (let i = 0; i < formInput.length; i++) {
773                            const className = formInput[i].className;
774                            if (className == 'product-variant-id') {
775                                id = items[0].getAttribute('value');
776                            }
777                        }
778                    }
779
780                    //////console.log('script', variantScriptData, id, currencyCode);
781                    if (variantCount > 1) {
782                        // check initial variant on load
783                        if (!id) {
784                            id = variantScriptData[0].id;
785                        }
786
787                        _json = await checkProductDiscounts(id, currencyCode, customerId);
788                        json = _json?.exclusive ?? {};
789                        json_tier = _json?.tierProduct ?? {};
790                        json_club = _json?.clubDiscount ?? {};
791                        json_tier_general = _json?.tierGeneral ?? {};
792
793                        checkIsExclusiveSingleProduct(id, currencyCode, json, json_tier, json_club, json_t
793ier_general);
794
795                        // Remove existing listener if it exists to prevent duplicates
796                        if (variantChangeHandlerAdded && variantChangeHandler) {
797                            document.removeEventListener('change', variantChangeHandler);
798                            variantChangeHandlerAdded = false;
799                        }
800                        
801                        // Create the handler function
802                        variantChangeHandler = async function(event) {
803                            // Prevent duplicate calls
804                            if (isCheckingExclusive) {
805                                return;
806                            }
807
808                            const form = event.target.closest('form[action="/cart/add"]');
809                            if (!form) return;
810
811                            const id = form.querySelector('input[name="id"]')?.value;
812                            if (!id) return;
813
814                            // Only process radio or hidden input changes
815                            if (event.target.type !== "radio" && event.target.type !== "hidden") {
816                                return;
817                            }
818
819                                // Clear any pending timeout
820                                if (checkExclusiveTimeout) {
821                                    clearTimeout(checkExclusiveTimeout);
822                                }
823
824                                // Debounce the execution
825                                checkExclusiveTimeout = setTimeout(async () => {
826                                    if (isCheckingExclusive) {
827                                        return;
828                                    }
829                                
830                                    isCheckingExclusive = true;
831
832                                    try {
833                                        // wait for the retail price to finish doing its thing
834                                        await new Promise(resolve => setTimeout(resolve, 1000));
835
836                                        if (items.length) {
837                                        const _json = await checkProductDiscounts(id, currencyCode, customerId);
838                                            const json = _json?.exclusive ?? {};
839                                            const json_tier = _json?.tierProduct ?? {};
840                                            const json_club = _json?.clubDiscount ?? {};
841                                            const json_tier_general = _json?.tierGeneral ?? {};
842
843                                        console.log('checking exclusive single product', id, currencyCode, json, json_tier, json_club, json_tier_general);
844                                        checkIsExclusiveSingleProduct(id, currencyCode, json, json_tier, json_club, json_tier_general);
845                                        }
846                                    } finally {
847                                        isCheckingExclusive = false;
848                                    }
849                                }, 100);
850                        };
851
852                        // Add the event listener only once
853                        if (!variantChangeHandlerAdded) {
854                            document.addEventListener('change', variantChangeHandler);
855                            variantChangeHandlerAdded = true;
856                            }
857                    } else {
858                        // single variant no options
859                        if (!id) {
860                            id = variantScriptData[0].id;
861                        }
862                        _json = await checkProductDiscounts(id, currencyCode, customerId);
863                        json = _json?.exclusive ?? {};
864                        json_tier = _json?.tierProduct ?? {};
865                        json_club = _json?.clubDiscount ?? {};
866                        json_tier_general = _json?.tierGeneral ?? {};
867                        checkIsExclusiveSingleProduct(id, currencyCode, json, json_tier, json_club, json_t
867ier_general);
868                    }
869                } else {
870                    id = ``;
871                    _json = await checkProductDiscounts(id, currencyCode, customerId);
872                    json = _json?.exclusive ?? {};
873                    json_tier = _json?.tierProduct ?? {};
874                    json_club = _json?.clubDiscount ?? {};
875                    json_tier_general = _json?.tierGeneral ?? {};
876                    checkIsExclusiveSingleProduct(id, currencyCode, json, json_tier, json_club, json_tier_general);
877                }
878            }
879
880            /** Collections / product cards (incl. recommendations) **/
881            ////console.log('checking collections');
882            
883            {
884                // Liquid ids are a fast path on collection pages; recommendations
885                // and "Choose options" cards are discovered from the DOM.
886                const collectionProductData = [
887                    
888                ];
889                const handleToProductId = {};
890                for (const product of collectionProductData) {
891                    if (product.handle && product.id) {
892                        handleToProductId[product.handle] = product.id;
893                    }
894                }
895                await priceAllProductCards(currencyCode, customerId, handleToProductId);
896            }
897            // changing filters is client side so we have to recheck on click
898            document.addEventListener('click', function(event) {
899                if (event.target.id.toLowerCase().includes('filter')){
900                    setTimeout(function () {
901                        
902                    }, 2000)
903                }
904            })
905
906
907            /** Integrations **/
908            // event listener for select with class bundle-product
909            document.addEventListener('change', function(event) {
910                if (event.target.classList.contains('bundle-product')) {
911                    // check if the value is a number
912                    //console.log('bundle product event', event);
913                    if (!isNaN(event.target.value)) {
914                        //console.log('checking bundle product', event.target.value, currencyCode);
915                        //checkIsExclusiveSingleProduct(event.target.value, currencyCode);
916                    }
917                }
918            });
919        }
920
921        function createLoading() {
922            const div = document.querySelector('.price');
923            const previousPrice = div.innerHTML;
924            div.innerHTML = 'Loading...';
925            return previousPrice;
926        }
927
928        function removeLoading(price) {
929            const div = document.querySelector('.price');
930            div.innerHTML = price;
931        }
932
933        function createRootContainer(isTierGeneral = false) {
934            //console.log('creating root for single');
935            let priceDiv = document.querySelector('.price__container')
936
937            // target class
938            if (!priceDiv) {
939                // try and find a potential child of an existing price container
940                // and then set the priceDiv to the parent of that child
941                // we can add more classes here if themes have non-standard class names
942                const partialClasses = [
943                    'price__regular',
944                    'price__content',
945                    'prodPrice',
946                    'price-ui',
947                    'modal_price',
948                    'price-list',
949                    'current-price',
950                    //'metafield-rich_text_field',
951                ];
952
953                for (const partialClass of partialClasses) {
954                    const element = document.querySelector(`[class*="${partialClass}"]`);
955                    if (element) {
956                        priceDiv = element.parentElement;
957                        break;
958                    }
959                }
960            }
961
962            if (!isTierGeneral && priceDiv){
963                // remove the rrp display
964                priceDiv.className = '';
965                priceDiv.classList.add('price', 'price--large', 'price--on-sale', 'price--show-badge', 'wh_price__div');
966                priceDiv.style.display = 'none';
967            }
968
969            // target form
970            if (!priceDiv){
971                const newDiv = document.createElement('div');
972                priceDiv = document.querySelector('product-form');
973                const parent = priceDiv.parentElement;
974                parent.insertBefore(newDiv, priceDiv);
975                const child = document.createElement('div');
976                newDiv.appendChild(child);
977                priceDiv = child;
978            }
979
980            const parent = priceDiv?.parentElement;
981            const badges = parent?.querySelectorAll('.badge');
982            // hide all badges
983            for (let i = 0; i < badges?.length; i++) {
984                //////console.log('hiding badge');
985                badges[i].style.display = 'none';
986            }
987            return priceDiv;
988
989        }
990
991        function createNewPriceContainer(regularPrice, discountedPrice, title, expires, remaining, blockBadgeColor, blockBadgeBackgroun
991dColor, blockBadgeText, strikethroughEnabled, showBeforeDiscountPrice, isTierGeneral = false) {
992            ////console.log('creating new container');
993            const priceDiv = document.createElement('div')
994            priceDiv.className = '';
995            priceDiv.classList.add('price', 'price--large', 'price--on-sale', 'price--show-badge');
996
997            let priceContainer = document.createElement('div');
998            priceDiv.appendChild(priceContainer);
999            priceContainer.className = '.price__container';
1000
1001            const priceRegular = document.createElement('div');
1002            //priceContainer.appendChild(priceRegular);
1003            const priceContainerInnerDiv = document.createElement('div');
1004            priceContainerInnerDiv.classList.add('wh_card__inner');
1005            priceContainer.appendChild(priceContainerInnerDiv);
1006
1007            const prs1 = document.createElement('span');
1008            const prs2 = document.createElement('span');
1009            const prs3 = document.createElement('span');
1010            const prs4 = document.createElement('span');
1011            priceRegular.appendChild(prs1);
1012            priceRegular.appendChild(prs2);
1013            priceRegular.appendChild(prs3);
1014            priceRegular.appendChild(prs4);
1015
1016            const priceRegularSpan = priceRegular.querySelectorAll('span');
1017
1018            priceRegularSpan[0].className = '';
1019            priceRegularSpan[0].classList.add('visually-hidden', 'visually-hidden--inline');
1020            priceRegularSpan[1].className = '';
1021            priceRegularSpan[1].classList.add('price-item', 'price-item--regular');
1022
1023            const priceSale = document.createElement('div');
1024            priceSale.classList.add('wh_price__sale');
1025            //priceContainer.appendChild(priceSale);
1026            priceContainerInnerDiv.appendChild(priceSale);
1027
1028            const pss1 = document.createElement('span');
1029            const pss2 = document.createElement('span');
1030            const pss3 = document.createElement('span');
1031            const pss4 = document.createElement('span');
1032            priceSale.appendChild(pss1); // hidden
1033            priceSale.appendChild(pss2); // regular price with strikethrough
1034            priceSale.appendChild(pss3); // hidden
1035            priceSale.appendChild(pss4); // discounted price
1036
1037            const priceSaleSpan = priceSale.querySelectorAll('span');
1038            priceSaleSpan[0].className = '';
1039            priceSaleSpan[0].classList.add('visually-hidden', 'visually-hidden--inline');
1040            //////console.log('strikethrough enabled', strikethroughEnabled);
1041            let strikethrough;
1042            //if (strikethroughEnabled == false) {
1043            //    strikethrough = document.createElement('span');
1044            //} else {
1045            //    strikethrough = document.createElement('s');
1046            //}
1047            const pricesEqual = regularPrice == discountedPrice;
1048            strikethrough = document.createElement('span');
1049            priceSaleSpan[1].appendChild(strikethrough);
1050            //////console.log('strikethroughs', strikethrough);
1051            strikethrough.innerHTML = `RRP: ${regularPrice}`;
1052            strikethrough.className = '';
1053            // extract percentage from discounted price
1054            const hasPercentage = discountedPrice.includes('%');
1055            if (hasPercentage){
1056                const percentage = parseInt(discountedPrice.match(/\d+/g)[0]);
1057                const reg = parseFloat(regularPrice.replace("$", ""));
1058                const value = reg * (1 - percentage / 100);
1059                //discountedPrice = `${value} (${percentage}% off)`;
1060            }
1061            if (isTierGeneral){
1062                priceSaleSpan[1].innerHTML = '';
1063            }
1064            priceSaleSpan[2].className = '';
1065            priceSaleSpan[2].classList.add('visually-hidden', 'visually-hidden--inline');
1066            priceSaleSpan[3].className = '';
1067            priceSaleSpan[3].classList.add('price-item', 'price-item--sale', 'price-item--last');
1068            priceSaleSpan[3].innerHTML = `${discountedPrice}`;
1069            if (pricesEqual) {
1070                priceSaleSpan[3].innerHTML = ``;
1071            }
1072
1073            strikethrough.classList.add('wh_regular__price');
1074            priceSaleSpan[3].classList.add('wh_discount__price');
1075
1076            const spanList = priceDiv.querySelectorAll('span');
1077            const badge = document.createElement('span');
1078
1079            // badge disabled
1080            //priceContainer.insertBefore(badge, priceSale);
1081
1082            //const spacer_before = document.createElement("br");
1083            //priceContainer.insertBefore(spacer_before, priceSale);
1084
1085            // show title before or after discount price
1086
1087            if (!pricesEqual) {
1088                if (title && !showBeforeDiscountPrice) {
1089                    const titleDiv = document.createElement('div');
1090                    titleDiv.classList.add('wh_card__content');
1091                    const titleSpan = document.createElement('span');
1092                    titleSpan.innerHTML = title;
1093                    //////console.log('title', title, showBeforeDiscountPrice);
1094                    //titleSpan.style.color = blockBadgeColor ?? 'inherit';
1095                    priceContainerInnerDiv.appendChild(titleDiv);
1096                    titleDiv.appendChild(titleSpan);
1097                } else if (title && showBeforeDiscountPrice) {
1098                    const titleDiv = document.createElement('div');
1099                    titleDiv.classList.add('wh_card__content');
1100                    const titleSpan = document.createElement('span');
1101                    titleSpan.innerHTML = `| <b>${title}</b>`;
1102                    if (isTierGeneral){
1103                    titleSpan.innerHTML = `<b>${title}</b>`;
1104                    }
1105                    //////console.log('title', title, showBeforeDiscountPrice);
1106                    //titleSpan.style.color = blockBadgeColor ?? 'inherit';
1107                    priceSale.insertBefore(titleDiv, priceSaleSpan[2]);
1108                    titleDiv.appendChild(titleSpan);
1109                }
1110            }
1111
1112            //if (expires) {
1113            //    const expiresSpan = document.createElement('label');
1114            //    const daysRemaining = Math.floor((new Date(expires) - new Date()) / (1000 * 60 * 60 * 24));
1115            //    expiresSpan.innerHTML = `Days left to claim: ${daysRemaining}`;
1116            //    expiresSpan.className = 'quantity__label form__label';
1117            //    priceContainer.appendChild(expiresSpan);
1118            //}
1119
1120            if (remaining) {
1121                const remainingSpan = document.createElement('label');
1122                remainingSpan.innerHTML = `Quantity to claim: ${remaining}`;
1123                remainingSpan.className = 'quantity__label form__label';
1124                remainingSpan.style.color = blockBadgeColor ?? 'inherit';
1125                //priceContainer.appendChild(remainingSpan);
1126                priceContainerInnerDiv.appendChild(remainingSpan);
1127            }
1128
1129            //let text = `Exclusive`
1130            //let text = `${text} &#x2022; ${title}`;
1131            let text = `${title}`;
1132            badge.innerHTML = text.replace(/"/g, '');
1133            const color = `${blockBadgeBackgroundColor}`
1134            const text_color = `${blockBadgeColor}`
1135            badge.style = `background-color: ${color.replace(/"/g, '')}; color: ${text_color.replace(/"/g, '')};`;
1136            badge.classList = 'badge price__badge-sale';
1137
1138            priceContainer.classList.add('wh_card__wrapper');
1139            //////console.log('price container added', priceContainer);
1140            return priceDiv;
1141        }
1142
1143        function createTargetedPriceContainer(regularPrice, discountedPrice, title, expires, remaining, blockBadgeColor, blockBadgeBackgroundColor, blockBadgeText, strikethroughEnabled, showBeforeDiscountPrice, isTierGeneral, targetClass, showTitle = false, createParent = false){
1144            let calculatedPrice = '';
1145            if (showTitle){
1146                title = `<b>${title}</b>`;
1147                // extract percentage from discounted price
1148                const percentage = parseInt(discountedPrice.match(/\d+/g)[0]);
1149                calculatedPrice = regularPrice * (1 - percentage / 100);
1150            }
1151            let target = document.querySelector(`[class*="${targetClass}"]`);
1152            if (createParent){
1153                let parent = document.querySelector(`[class*="${targetClass}"]`);
1154                target = document.createElement('div');
1155                parent.appendChild(target);
1156            }
1157            if (!target){
1158                target = document.querySelector(`.${targetClass}`);
1159            }
1160            ////console.log('target', target);
1161            const pricesEqual = regularPrice == discountedPrice;
1162            if (pricesEqual) {
1163                if (showTitle){
1164                    target.innerHTML = `<span class="wh_regular__price"><s>${regularPrice}</s></span><span class="wh_discount__price"></span>`;
1165                } else {
1166                    target.innerHTML = `<span class="wh_regular__price"><s>${regularPrice}</s></span><span class="wh_discount__price"></span>`;
1167                }
1168            } else {
1169                if (showTitle){
1170                    target.innerHTML = `<span class="wh_title">${title}</span><span class="wh_regular__price"><s>${regularPrice}</s><span class="wh_calculated__price">${calculatedPrice}</span></span><span class="wh_discount__price">${discountedPrice}</span>`;
1171                } else {
1172                    target.innerHTML = `<span class="wh_regular__price"><s>${regularPrice}</s></span><span class="wh_discount__price">${discountedPrice}</span>`;
1173                }
1174            }
1175        }
1176
1177        async function checkProductDiscounts(id, currencyCode, customerId) {
1178            if (id === '') {
1179                return;
1180            }
1181            const response = await fetch(`${base_url}/store/exclusive-products/${id}/${currencyCode}/${customerId}`, {
1182                method: 'GET',
1183                headers: {
1184                    'Content-Type': 'application/json',
1185                    'Shopify-Site': `lieu-dit-winery.myshopify.com`,
1186                }
1187            });
1188            let json = await response.json();
1189            return json;
1190        }
1191
1192        function loadCss(customerId, json) {
1193            const fontFamily = json?.globalCss?.fontFamily ?? 'inherit';
1194            const tierName = json?.tierName ?? '';
1195            //const fontSize = json?.globalCss?.fontSize ?? '16px';
1196            const fontSize = '16px';
1197            const flexDirection = json?.globalCss?.flexDirection ?? 'row';
1198            let color = json?.globalCss?.color ?? 'inherit';
1199            //const fontFamily = 'gothamlight';
1200            let style = document.createElement('style');
1201
1202            const isDarkMode = document.querySelector('.dark-version') ?? false;
1203            if (isDarkMode) {
1204            color = '#fff';
1205            }
1206
1207            const css = `
1208                .wh_card__wrapper {
1209                    /*position: relative;*/
1210                    display: flex !important;
1211                    flex-direction: column !important;
1212                    border-radius: 8px;
1213                    overflow: hidden;
1214                    transition: box-shadow 0.3s;
1215                    margin: 0 0 20px 0 !important;
1216                    text-align: center;
1217                    font-stretch: semi-expanded;
1218                    font-family: ${fontFamily} !important;
1219                    font-size: ${fontSize} !important;
1220                    color: ${color} !important;
1221                }
1222                .wh_card__wrapper:hover {
1223                    /*box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);*/
1224                }
1225                .wh_card__inner {
1226                    position: relative;
1227                    display: flex;
1228                    flex-direction: ${flexDirection};
1229                }
1230                .wh_card__content {
1231                    display: block;
1232                    padding-right: 6px;
1233                }
1234                .wh_discount__price {
1235                    margin-right: 1px;
1236                    font-size: ${fontSize} !important;
1237                }
1238                .wh_regular__price {
1239                    margin-right: 6px;
1240                    font-size: ${fontSize} !important;
1241                }
1242                .wh_price__sale {
1243                    display: flex;
1244                    flex-direction: row;
1245                    justify-content: center;
1246                    align-items: center;
1247                }
1248            `;
1249
1250            style.innerHTML = css;
1251            document.head.appendChild(style);
1252
1253            if (tierName){
1254                return json;
1255            }
1256        }
1257
1258        function applyDiscountPriceToElement(element, json){
1259            const discountedPrice = json.discountedPrice;
1260            const regularPrice = json.regularPrice;
1261            if (discountedPrice != regularPrice){
1262                const priceSale = document.createElement('div');
1263                priceSale.innerHTML = `<span class="wh_regular__price"><s>${regularPrice}</s></span><span class="wh_discount__price">${discountedPrice}</span>`;
1264                const parent = element.parentElement;
1265                parent.appendChild(priceSale);
1266                element.style.display = 'none';
1267            }
1268        }
1269
1270        const productCardPartialClasses = [
1271            'card-wrapper',
1272            'card__wrapper',
1273            'product-card product-card--',
1274            'featured-collection-item',
1275        ];
1276        const productJsonByHandle = {};
1277
1278        function findClosestProductCard(element) {
1279            if (!element) {
1280                return null;
1281            }
1282            for (const partialClass of productCardPartialClasses) {
1283                const card = element.closest(`[class*="${partialClass}"]`);
1284                if (card) {
1285                    return card;
1286                }
1287            }
1288            return null;
1289        }
1290
1291        function getAllProductCards() {
1292            for (const partialClass of productCardPartialClasses) {
1293                const cards = document.querySelectorAll(`[class*="${partialClass}"]`);
1294                if (cards.length > 0) {
1295                    return Array.from(cards);
1296                }
1297            }
1298            return [];
1299        }
1300
1301        function getHandleFromHref(href) {
1302            if (!href) {
1303                return null;
1304            }
1305            try {
1306                const pathname = new URL(href, window.location.origin).pathname;
1307                const match = pathname.match(/\/products\/([^\/?#]+)/);
1308                return match ? decodeURIComponent(match[1]) : null;
1309            } catch (e) {
1310                return null;
1311            }
1312        }
1313
1314        function getProductHandleFromCard(card) {
1315            if (!card) {
1316                return null;
1317            }
1318            const links = card.querySelectorAll('a[href*="/products/"]');
1319            for (const link of links) {
1320                const handle = getHandleFromHref(link.href);
1321                if (handle) {
1322                    return handle;
1323                }
1324            }
1325            return null;
1326        }
1327
1328        function findProductCardByHandle(handle) {
1329            if (!handle) {
1330                return null;
1331            }
1332            const hrefNeedle = `/products/${handle}`;
1333            const links = document.querySelectorAll(`a[href*="${hrefNeedle}"]`);
1334            for (const link of links) {
1335                try {
1336                    const pathname = new URL(link.href, window.location.origin).pathname;
1337                    if (
1338                        pathname === hrefNeedle ||
1339                        pathname.endsWith(hrefNeedle) ||
1340                        pathname.includes(`${hrefNeedle}/`)
1341                    ) {
1342                        const card = findClosestProductCard(link);
1343                        if (card) {
1344                            return card;
1345                        }
1346                    }
1347                } catch (e) {
1348                    // ignore malformed hrefs
1349                }
1350            }
1351            return null;
1352        }
1353
1354        function getVariantOrProductIdFromCard(card) {
1355            if (!card) {
1356                return null;
1357            }
1358            const form = card.querySelector('form[action="/cart/add"]');
1359            if (form) {
1360                const formId = form.querySelector('input[name="id"]')?.value
1361                    ?? form.querySelector('input[name="product-id"]')?.value;
1362                if (formId) {
1363                    return formId;
1364                }
1365            }
1366            return card.querySelector('[data-product-id]')?.getAttribute('data-product-id')
1367                ?? card.getAttribute('data-product-id')
1368                ?? null;
1369        }
1370
1371        async function resolveProductIdForCard(card, handleToProductId = {}) {
1372            const fromCard = getVariantOrProductIdFromCard(card);
1373            if (fromCard) {
1374                return fromCard;
1375            }
1376            const handle = getProductHandleFromCard(card);
1377            if (!handle) {
1378                return null;
1379            }
1380            if (handleToProductId[handle]) {
1381                return handleToProductId[handle];
1382            }
1383            // "Choose options" cards / recommendations often have no form id —
1384            // resolve via Shopify's public product JSON.
1385            try {
1386                if (!productJsonByHandle[handle]) {
1387                    productJsonByHandle[handle] = fetch(`/products/${handle}.js`)
1388                        .then((response) => (response.ok ? response.json() : null))
1389                        .catch(() => null);
1390                }
1391                const productJson = await productJsonByHandle[handle];
1392                if (productJson?.id) {
1393                    return String(productJson.id);
1394                }
1395                if (productJson?.variants?.[0]?.id) {
1396                    return String(productJson.variants[0].id);
1397                }
1398            } catch (e) {
1399                // ignore lookup failures
1400            }
1401            return null;
1402        }
1403
1404        async function priceAllProductCards(currencyCode, customerId, handleToProductId = {}) {
1405            const pricedCards = new WeakSet();
1406            const cards = getAllProductCards();
1407            for (const card of cards) {
1408                if (pricedCards.has(card)) {
1409                    continue;
1410                }
1411                // Skip the main PDP price block when present on product templates
1412                if (card.closest('product-info, .product__info-wrapper, .product__info-container')) {
1413                    continue;
1414                }
1415                const id = await resolveProductIdForCard(card, handleToProductId);
1416                if (!id) {
1417                    continue;
1418                }
1419                const _json = await checkProductDiscounts(id, currencyCode, customerId);
1420                const json = _json?.exclusive ?? {};
1421                const json_tier = _json?.tierProduct ?? {};
1422                const json_club = _json?.clubDiscount ?? {};
1423                const json_tier_general = _json?.tierGeneral ?? {};
1424                checkIsExclusiveCollection(id, currencyCode, card, json, json_tier, json_club, json_tier_general);
1425                pricedCards.add(card);
1426            }
1427        }
1428
1429        function findPriceElementInCard(card) {
1430            if (!card) {
1431                return null;
1432            }
1433            const partialClasses = [
1434                'price__regular',
1435                'price__content',
1436                'product-card__price',
1437                'price',
1438                'modal_price',
1439                'price-list',
1440                'current-price',
1441            ];
1442            for (const partialClass of partialClasses) {
1443                const element = card.querySelector(`[class*="${partialClass}"]`);
1444                if (element) {
1445                    return element;
1446                }
1447            }
1448            return null;
1449        }
1450
1451        async function checkIsExclusiveCollection(id, currencyCode, card, json, json_tier, json_club, json_tier_general){
1452            //let id = form.querySelector('data-product')?.getAttribute('data-product') ?? form.querySelector('data-product-id')?.getAttribute('data-product-id');
1453            const showPricingOnCollectionPage = `true`;
1454            if (showPricingOnCollectionPage == 'false') {
1455                return;
1456            }
1457            const requestPath = window.location.pathname;
1458            if (requestPath?.includes('gift-vouchers')){
1459                return;
1460            }
1461            // Accept a card element (preferred). Legacy numeric index is no longer used.
1462            let form = card && card.nodeType === 1 ? card : null;
1463            if (!form) {
1464                return;
1465            }
1466
1467            //let isExclusive = json.exclusive ?? false;
1468            let isExclusive = false;
1469            let isClubProduct = json_club.clubDiscount ?? false;
1470            let isTierProduct = json_tier.tierProduct ?? false;
1471            let isTierGeneral = json_tier_general.tierGeneral ?? false;
1472
1473
1474            if (isExclusive && customerId != 'none' && json.exclusiveProducts?.length > 0) {
1475                // adding badge to product card
1476                const cardInner = form.querySelector('.card__inner');
1477                const cardContent = cardInner.querySelector('.card__content');
1478                const cardBadge = cardContent.querySelector('.card__badge');
1479                const newBadge = document.createElement('div');
1480                newBadge.classList = "card__badge top left";
1481                const spacer = document.createElement("br");
1482                cardContent.appendChild(spacer);
1483                cardContent.appendChild(spacer);
1484                cardContent.appendChild(newBadge);
1485                const span = document.createElement("span");
1486                span.classList = 'badge badge--bottom-left';
1487
1488                let text = `Exclusive`
1489                span.innerHTML = text.replace(/"/g, '');
1490                const color = `${blockBadgeBackgroundColor}`
1491                const text_color = `${blockBadgeColor}`
1492                span.style = `background-color: ${color.replace(/"/g, '')}; color: ${text_color.replace(/"/g, '')};`;
1493                newBadge.appendChild(span);
1494            } else if (isTierProduct && customerId != 'none' && json_tier.tierProducts?.length > 0){
1495                if (form){
1496                    let priceRegular = findPriceElementInCard(form);
1497                    //if (priceRegular){
1498                    //    const _json_tier = json_tier.tierProducts[0];
1499                    //    applyDiscountPriceToElement(priceRegular, _json_tier);
1500                    //}
1501                    const _json_tier = json_tier.tierProducts[0];
1502                    const discountedPrice = _json_tier.discountedPrice;
1503                    const regularPrice = _json_tier.regularPrice;
1504                    if (discountedPrice != regularPrice){
1505                        if (priceRegular){
1506                            const priceSale = document.createElement('div');
1507                            priceSale.innerHTML = `<span class="wh_regular__price"><s>${regularPrice}</s></span><span class="wh_discount__price">${discountedPrice}</span>`;
1508                            const parent = priceRegular.parentElement;
1509                            //parent.appendChild(priceSale);
1510                            //priceRegular.style.display = 'none';
1511                        } else {
1512                            ////console.log('price regular not found');
1513                        }
1514                    }
1515                }
1516            } else if (isClubProduct && customerId != 'none'){
1517                if (form){
1518                    let priceRegular = findPriceElementInCard(form);
1519                    //if (priceRegular){
1520                    //    applyDiscountPriceToElement(priceRegular, json_club);
1521                    //}
1522                    const discountedPrice = json_club.discountedPrice;
1523                    const regularPrice = json_club.regularPrice;
1524                    if (discountedPrice != regularPrice){
1525                        if (priceRegular){
1526                            const priceSale = document.createElement('div');
1527                            priceSale.innerHTML = `<span class="wh_regular__price"><s>${regularPrice}</s></span><span class="wh_discount__price">${discountedPrice}</span>`;
1528                            const parent = priceRegular.parentElement;
1529                            parent.appendChild(priceSale);
1530                            priceRegular.style.display = 'none';
1531                        } else {
1532                            ////console.log('price regular not found');
1533                        }
1534                    }
1535                }
1536            } else if (isTierGeneral && customerId != 'none'){
1537                // only showing one for logged in customer currently on collections page
1538                if (form){
1539                    let priceRegular = findPriceElementInCard(form);
1540                    //if (priceRegular){
1541                    //    applyDiscountPriceToElement(priceRegular, json_tier_general.tierGeneralObj[0]);
1542                    //}
1543                    const _json_tier_general = json_tier_general.tierGeneralObj[0];
1544                    if (!_json_tier_general) {
1545                        return;
1546                    }
1547                    const discountedPrice = _json_tier_general.discountedPrice;
1548                    const regularPrice = _json_tier_general.regularPrice;
1549                    if (discountedPrice != regularPrice){
1550                        if (priceRegular){
1551                            const storeUrl = `lieu-dit-winery.myshopify.com`;
1552                            const priceSale = document.createElement('div');
1553                            priceSale.innerHTML = `<span class="wh_regular__price"><s>${regularPrice}</s></span><span class="wh_discount__price">${discountedPrice}</span>`;
1554                            const parent = priceRegular.parentElement;
1555                            if (storeUrl == decodeText('qu@xt@x-c&[email protected]&le.ius')){
1556                                // as parent
1557                                priceRegular.innerHTML = `<span class="wh_regular__price"><s>${regularPrice}</s></span><span class="wh_discount__price">${discountedPrice}</span>`;
1558                            } else {
1559                                // as child
1560                                parent.appendChild(priceSale);
1561                                priceRegular.style.display = 'none';
1562                            }
1563                        } else {
1564                            ////console.log('price regular not found');
1565                        }
1566                    }
1567                }
1568            }
1569        };
1570
1571        async function checkIsExclusiveSingleProduct(id, currencyCode, json, json_tier, json_club, json_t
1571ier_general) {
1572            if (id == '') {
1573                return;
1574            }
1575            //////console.log('checking single');
1576            //let json = {
1577            //    "exclusive": true,
1578            //    "exclusiveProducts": [
1579            //        {
1580            //            "regularPrice": "$100.00",
1581            //            "discountedPrice": "$50.00",
1582            //            "title": "Silver Tier",
1583            //            "remaining": 5,
1584            //            "expires": "2024-03-31T23:59:59Z"
1585            //        },
1586            //        {
1587            //            "regularPrice": "$200.00",
1588            //            "discountedPrice": "$100.00",
1589            //            "title": "Gold Tier",
1590            //            "remaining": 10,
1591            //            "expires": "2021-12-31T23:59:59Z"
1592            //        }
1593            //    ]
1594            //}
1595
1596            if (!debug) {
1597            }
1598
1599            //json = await checkId(id, currencyCode, customerId); // exclusive
1600            //json_tier = await checkTierProduct(id, currencyCode, customerId); // tier
1601            //////console.log('checking club with id', id);
1602            //json_club = await checkClubProduct(id, currencyCode, customerId); // club
1603            //json_tier_general = await checkTierGeneral(id, currencyCode, customerId); // tier general
1604
1605            let isExclusive = json.exclusive ?? false;
1606            let isTierProduct = json_tier.tierProduct ?? false;
1607            let isClubProduct = json_club.clubDiscount ?? false;
1608            let isTierGeneral = json_tier_general.tierGeneral ?? false;
1609            //let isTierGeneral = false;
1610            let globalRoot = null;
1611
1612            //////console.log('isExclusive', isExclusive, 'isTierProduct', isTierProduct, 'isClubProduct', isClubProduct);
1613
1614            // we either display the exclusive products or the tier products
1615            if (isExclusive && customerId != 'none' && json.exclusiveProducts?.length > 0) {
1616                const exclusiveProducts = json.exclusiveProducts;
1617
1618                // return if exclusive products is empty
1619
1620                if (exclusiveProducts?.length == 0) {
1621                    return;
1622                }
1623
1624                /** Creating the root price div **/
1625
1626                const priceDiv = createRootContainer(null);
1627                globalRoot = priceDiv;
1628                //////console.log('root created');
1629
1630                /** Creating price divs for each exclusive price **/
1631
1632                for (let i = 0; i < exclusiveProducts.length; i++) {
1633                    const ep = exclusiveProducts[i];
1634                    const regularPrice = ep.regularPrice;
1635                    const discountedPrice = ep.discountedPrice;
1636                    let title = ep.title;
1637                    const expires = ep.expires;
1638                    const remaining = ep.remaining;
1639                    const blockBadgeText = ep.blockBadgeText ?? `MEMBER'S PRICE:`;
1640                    const blockBadgeBackgroundColor = ep.blockBadgeBackgroundColor;
1641                    const blockBadgeColor = ep.blockBadgeColor;
1642                    const strikethroughEnabled = ep.strikethroughEnabled;
1643                    const showBeforeDiscountPrice = ep.showBeforeDiscountPrice ?? true;
1644                    title = blockBadgeText;
1645                    const newPriceDiv = createNewPriceContainer(regularPrice, discountedPrice, title, expires, remaining, blockBadgeColor, blockBadgeBackgroundColor, blockBadgeText, strikethroughEnabled, showBeforeDiscountPrice);
1646                    const parent = priceDiv.parentElement;
1647                    parent.appendChild(newPriceDiv);
1648                }
1649
1650            } else if (isTierProduct && json_tier.tierProducts?.length > 0) {
1651                const tierProducts = json_tier.tierProducts;
1652                const priceDiv = createRootContainer(null);
1653                globalRoot = priceDiv;
1654                //////console.log('root created');
1655
1656                if (tierProducts?.length == 0) {
1657                    return;
1658                }
1659
1660                for (let i = 0; i < tierProducts.length; i++) {
1661                    const index = i;
1662                    const ep = tierProducts[i];
1663                    const regularPrice = ep.regularPrice;
1664                    const discountedPrice = ep.discountedPrice;
1665                    let title = ep.title;
1666                    const expires = ep.expires;
1667                    const remaining = ep.remaining;
1668                    const blockBadgeText = ep.blockBadgeText ?? `MEMBER'S PRICE:`;
1669                    const blockBadgeBackgroundColor = ep.blockBadgeBackgroundColor;
1670                    const blockBadgeColor = ep.blockBadgeColor;
1671                    const strikethroughEnabled = ep.strikethroughEnabled ?? false;
1672                    const showBeforeDiscountPrice = ep.showBeforeDiscountPrice ?? true;
1673                    title = blockBadgeText;
1674                    const newPriceDiv = createNewPriceContainer(regularPrice, discountedPrice, title, expires, remaining, blockBadgeColor, blockBadgeBackgroundColor, blockBadgeText, strikethroughEnabled, showBeforeDiscountPrice);
1675                    const parent = priceDiv.parentElement;
1676                    parent.appendChild(newPriceDiv);
1677                    //////console.log('appended latest 6', newPriceDiv);
1678                }
1679            } else if (isClubProduct){
1680                //const clubProducts = json_club.clubProducts;
1681                const storeUrl = `lieu-dit-winery.myshopify.com`;
1682                if (storeUrl == 'ipsvh1-0m.myshopify.com'){ // hotifx, remove this line once option is configurable
1683                    const ep = json_club;
1684                    const regularPrice = ep.regularPrice;
1685                    const discountedPrice = ep.discountedPrice;
1686                    let title = ep.title ?? '';
1687                    const expires = null;
1688                    const remaining = null;
1689                    const blockBadgeText = ep.blockBadgeText ?? `CLUB PRICE:`;
1690                    const blockBadgeBackgroundColor = ep.blockBadgeBackgroundColor;
1691                    const blockBadgeColor = ep.blockBadgeColor;
1692                    const strikethroughEnabled = ep.strikethroughEnabled ?? false;
1693                    const showBeforeDiscountPrice = true; // not needed for tier general
1694                    const targetClass = 'current-price';
1695                    createTargetedPriceContainer(regularPrice, discountedPrice, title, expires, remaining, blockBadgeColor, blockBadgeBackgroundColor, blockBadgeText, strikethroughEnabled, showBeforeDiscountPrice, isTierGeneral, targetClass);
1696                    return;
1697                }
1698                const priceDiv = createRootContainer(null);
1699                globalRoot = priceDiv;
1700                //////console.log('root created');
1701                const regularPrice = json_club.regularPrice;
1702                const discountedPrice = json_club.discountedPrice;
1703                let title = json_club.title ?? '';
1704                const expires = null;
1705                const remaining = null;
1706                const blockBadgeText = json_club.blockBadgeText ?? `CLUB PRICE:`;
1707                const blockBadgeBackgroundColor = json_club.blockBadgeBackgroundColor ?? '#f8f8f8';
1708                const blockBadgeColor = json_club.blockBadgeColor ?? '#000';
1709                const strikethroughEnabled = json_club.strikethroughEnabled ?? false;
1710                const showBeforeDiscountPrice = json_club.showBeforeDiscountPrice ?? true;
1711                title = blockBadgeText;
1712                const newPriceDiv = createNewPriceContainer(regularPrice, discountedPrice, title, expires, remaining, blockBadgeColor, blockBadgeBackgroundColor, blockBadgeText, strikethroughEnabled, showBeforeDiscountPrice);
1713                const parent = priceDiv.parentElement;
1714                parent.appendChild(newPriceDiv);
1715                //////console.log('appended latest 10', newPriceDiv);
1716            }
1717
1718            if (isTierGeneral && !isTierProduct && !isClubProduct && !isExclusive){
1719                const storeUrl = `lieu-dit-winery.myshopify.com`;
1720                const tierGeneral = json_tier_general.tierGeneralObj;
1721                if (storeUrl == decodeText('qu@xt@x-c&[email protected]&le.ius')){ // hotifx, remove this line once option is configurable
1722                    for (let i = 0; i < tierGeneral.length; i++) {
1723                        const index = i;
1724                        const ep = tierGeneral[i];
1725                        const regularPrice = ep.regularPrice;
1726                        const discountedPrice = ep.discountedPrice;
1727                        let title = ep.title ?? `Tier ${index + 1}`;
1728                        const expires = ep.expires;
1729                        const remaining = ep.remaining;
1730                        const blockBadgeText = ep.blockBadgeText ?? `MEMBER'S PRICE:`;
1731                        const blockBadgeBackgroundColor = ep.blockBadgeBackgroundColor;
1732                        const blockBadgeColor = ep.blockBadgeColor;
1733                        const strikethroughEnabled = ep.strikethroughEnabled ?? false;
1734                        const showBeforeDiscountPrice = true; // not needed for tier general
1735                        //////console.log('tier general', title);
1736                        const targetClass = 'prodPrice';
1737                        createTargetedPriceContainer(regularPrice, discountedPrice, title, expires, remaining, blockBadgeColor, blockBadgeBackgroundColor, blockBadgeText, strikethroughEnabled, showBeforeDiscountPrice, isTierGeneral, targetClass);
1738                    }
1739                    return;
1740                }
1741                // LOAD THE CHANGE
1742                if (storeUrl == ''){ // hotifx, remove this line once option is configurable
1743                    for (let i = 0; i < tierGeneral.length; i++) {
1744                        const index = i;
1745                        const ep = tierGeneral[i];
1746                        const regularPrice = ep.regularPrice;
1747                        const discountedPrice = ep.discountedPrice;
1748                        let title = ep.title ?? `Tier ${index + 1}`;
1749                        const expires = ep.expires;
1750                        const remaining = ep.remaining;
1751                        const blockBadgeText = ep.blockBadgeText ?? `MEMBER'S PRICE:`;
1752                        const blockBadgeBackgroundColor = ep.blockBadgeBackgroundColor;
1753                        const blockBadgeColor = ep.blockBadgeColor;
1754                        const strikethroughEnabled = ep.strikethroughEnabled ?? false;
1755                        const showBeforeDiscountPrice = true; // not needed for tier general
1756                        //////console.log('tier general', title);
1757                        const targetClass = '!mt-[--gutter-sm]';
1758                        const showTitle = true;
1759                        createTargetedPriceContainer(regularPrice, discountedPrice, title, expires, remaining, blockBadgeColor, blockBadgeBackgroundColor, blockBadgeText, strikethroughEnabled, showBeforeDiscountPrice, isTierGeneral, targetClass, showTitle);
1760                    }
1761                    return;
1762                }
1763                let priceDiv = null;
1764                if (!globalRoot){
1765                    priceDiv = createRootContainer(true);
1766                } else {
1767                    priceDiv = globalRoot;
1768                }
1769
1770                if (tierGeneral?.length == 0) {
1771                    return;
1772                }
1773
1774                for (let i = 0; i < tierGeneral.length; i++) {
1775                    const index = i;
1776                    const ep = tierGeneral[i];
1777                    const regularPrice = ep.regularPrice;
1778                    const discountedPrice = ep.discountedPrice;
1779                    let title = ep.title ?? `Tier ${index + 1}`;
1780                    const expires = ep.expires;
1781                    const remaining = ep.remaining;
1782                    const blockBadgeText = ep.blockBadgeText ?? `MEMBER'S PRICE:`;
1783                    const blockBadgeBackgroundColor = ep.blockBadgeBackgroundColor;
1784                    const blockBadgeColor = ep.blockBadgeColor;
1785                    const strikethroughEnabled = ep.strikethroughEnabled ?? false;
1786                    const showBeforeDiscountPrice = true; // not needed for tier general
1787                    //////console.log('tier general', title);
1788                    const newPriceDiv = createNewPriceContainer(regularPrice, discountedPrice, title, expires, remaining, blockBadgeColor, blockBadgeBackgroundColor, blockBadgeText, strikethroughEnabled, showBeforeDiscountPrice, isTierGeneral);
1789                    const parent = priceDiv.parentElement;
1790                    parent.appendChild(newPriceDiv);
1791                    //////console.log('appended latest 12', newPriceDiv);
1792                }
1793
1794                //console.log('priceDiv', priceDiv);
1795            }
1796        }
1797    </script>
1797
1798
1799
1800
1801<!-- END app block --><!-- BEGIN app block: shopify://apps/ecomposer-builder/blocks/app-embed/a0fc26e1-7741-4773-8b27-39389b4fb4a0 --><!-- DNS Prefetch & Preconnect -->
1802<link rel="preconnect" href="https://cdn.ecomposer.app" crossorigin>
1803<link rel="dns-prefetch" href="https://cdn.ecomposer.app">
1804
1805<link rel="prefetch" href="https://cdn.ecomposer.app/vendors/css/[email protected]" as="style">
1806<link rel="prefetch" href="https://cdn.ecomposer.app/vendors/js/[email protected]" as="script">
1807<link rel="prefetch" href="https://cdn.ecomposer.app/vendors/js/ecom_modal.js" as="script">
1808
1809<!-- Global CSS --><!--ECOM-EMBED-->
1810  <style id="ecom-global-css" class="ecom-global-css">/**ECOM-INSERT-CSS**/.ecom-section > div.core__row--columns, .ecom-section>.ecom-inner{max-width: 1200px;}.ecom-column>div.core__column--wrapper, .ec-flex-wp{padding: 20px;}div.core__blocks--body>div.ecom-block.elmspace:not(:first-child), .core__group--body>div.ecom-block.elmspace:not(:first-child), div.core__blocks--body>.ec-flex-wp.elmspace:not(:first-child), .core__blocks>div.ecom-block.elmspace:not(:first-child){margin-top: 20px;}:root{--ecom-global-container-width:1200px;--ecom-global-colunm-gap:20px;--ecom-global-elements-space:20px;--ecom-global-colors-primary:#ffffff;--ecom-global-colors-secondary:#ffffff;--ecom-global-colors-text:#ffffff;--ecom-global-colors-accent:#ffffff;--ecom-global-colors-GuDPPJ:#FFF9F2;--ecom-global-colors-WgOxxS:#F4ECE2;--ecom-global-colors-7sqAV2:#D7CCBF;--ecom-global-colors-8XYxCg:#111113;--ecom-global-typography-h1-font-weight:600;--ecom-global-typography-h1-font-size:72px;--ecom-global-typography-h1-line-height:90px;--ecom-global-typography-h1-letter-spacing:-0.02em;--ecom-global-typography-h2-font-weight:600;--ecom-global-typography-h2-font-size:60px;--ecom-global-typography-h2-line-height:72px;--ecom-global-typography-h2-letter-spacing:-0.02em;--ecom-global-typography-h3-font-weight:600;--ecom-global-typography-h3-font-size:48px;--ecom-global-typography-h3-line-height:60px;--ecom-global-typography-h3-letter-spacing:-0.02em;--ecom-global-typography-h4-font-weight:600;--ecom-global-typography-h4-font-size:36px;--ecom-global-typography-h4-line-height:44px;--ecom-global-typography-h4-letter-spacing:-0.02em;--ecom-global-typography-h5-font-weight:600;--ecom-global-typography-h5-font-size:30px;--ecom-global-typography-h5-line-height:38px;--ecom-global-typography-h6-font-weight:600;--ecom-global-typography-h6-font-size:24px;--ecom-global-typography-h6-line-height:32px;--ecom-global-typography-h7-font-weight:400;--ecom-global-typography-h7-font-size:18px;--ecom-global-typography-h7-line-height:28px;--ecom-global-typography-88vfPM-font-family:TimesNow-SemiLight;--ecom-global-typography-88vfPM-font-size:14px;--ecom-global-typography-ArK4hU-font-size:10px;--ecom-global-typography-ArK4hU-font-family:TimesNow-SemiBold;--ecom-global-typography-ArK4hU-text-decoration:none;--ecom-global-typography-ArK4hU-font-style:normal;--ecom-global-typography-ArK4hU-font-weight:100;}</style>
1811  <!--/ECOM-EMBED--><!-- Custom CSS & JS --><style id="ecom-custom-css">.ecom-collection__product-form__actions.ecom-collection__product-quantity--inline {
1812    flex-direction: row-reverse !important;
1813}</style><!-- Open Graph Meta Tags for Pages --><!-- AI Search Optimization (LLM Outreach) --><!-- Critical Inline Styles -->
1814<style class="ecom-theme-helper">.ecom-animation{opacity:0}.ecom-animation.animate,.ecom-animation.ecom-animated{opacity:1}.ecom-cart-popup{display:grid;position:fixed;inset:0;z-index:9999999;align-content:center;padding:5px;justify-content:center;align-items:center;justify-items:center}.ecom-cart-popup::before{content:' ';position:absolute;background:#e5e5e5b3;inset:0}.ecom-ajax-loading{cursor:not-allowed;pointer-events:none;opacity:.6}#ecom-toast{visibility:hidden;max-width:50px;height:60px;margin:auto;background-color:#333;color:#fff;text-align:center;border-radius:2px;position:fixed;z-index:1;left:0;right:0;bottom:30px;font-size:17px;display:grid;grid-template-columns:50px auto;align-items:center;justify-content:start;align-content:center;justify-items:start}#ecom-toast.ecom-toast-show{visibility:visible;animation:ecomFadein .5s,ecomExpand .5s .5s,ecomStay 3s 1s,ecomShrink .5s 4s,ecomFadeout .5s 4.5s}#ecom-toast #ecom-toast-icon{width:50px;height:100%;box-sizing:border-box;background-color:#111;color:#fff;padding:5px}#ecom-toast .ecom-toast-icon-svg{width:100%;height:100%;position:relative;vertical-align:middle;margin:auto;text-align:center}#ecom-toast #ecom-toast-desc{color:#fff;padding:16px;overflow:hidden;white-space:nowrap}@media(max-width:768px){#ecom-toast #ecom-toast-desc{white-space:normal;min-width:250px}#ecom-toast{height:auto;min-height:60px}}.ecom__column-full-height{height:100%}[data-ec-sr]>.core__row--columns>.ecom-column:not(.ecom-sr-visible):not(.ecom-sr-done),[data-ec-sr].ec-flex-wp>.ecom-inner>.ecom-block:not(.ecom-sr-visible):not(.ecom-sr-done),[data-ec-sr].ec-flex-wp>.ecom-inner>.ec-flex-wp.core__block:not(.ecom-sr-visible):not(.ecom-sr-done),[data-ec-sr].ec-flex-wp>.ecom-block:not(.ecom-sr-visible):not(.ecom-sr-done),[data-ec-sr].ec-flex-wp>.ec-flex-wp.core__block:not(.ecom-sr-visible):not(.ecom-sr-done),[data-ec-sr]>.ecom-grid-layout>.ecom-grid-item:not(.ecom-sr-visible):not(.ecom-sr-done),[data-ec-sr-items] [data-ec-sr-item]:not(.ecom-sr-visible):not(.ecom-sr-done){opacity:0}
1814.ecom-sr-done{opacity:1}@keyframes ecom-sr-fade-up{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes ecom-sr-fade-in{from{opacity:0}to{opacity:1}}@keyframes ecom-sr-slide-left{from{opacity:0;transform:translateX(40px)}to{opacity:1;transform:translateX(0)}}@keyframes ecom-sr-zoom-in{from{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.ecom-sr-visible{animation-fill-mode:both!important;animation-duration:.6s!important;animation-timing-function:cubic-bezier(.25,.46,.45,.94)!important}.ecom-sr-visible[data-sr-anim="fade-up"]{animation-name:ecom-sr-fade-up!important}.ecom-sr-visible[data-sr-anim="fade-in"]{animation-name:ecom-sr-fade-in!important}.ecom-sr-visible[data-sr-anim="slide-left"]{animation-name:ecom-sr-slide-left!important}.ecom-sr-visible[data-sr-anim="zoom-in"]{animation-name:ecom-sr-zoom-in!important}@keyframes ecomFadein{from{bottom:0;opacity:0}to{bottom:30px;opacity:1}}@keyframes ecomExpand{from{min-width:50px}to{min-width:var(--ecom-max-width)}}@keyframes ecomStay{from{min-width:var(--ecom-max-width)}to{min-width:var(--ecom-max-width)}}@keyframes ecomShrink{from{min-width:var(--ecom-max-width)}to{min-width:50px}}@keyframes ecomFadeout{from{bottom:30px;opacity:1}to{bottom:60px;opacity:0}}</style>
1815
1816
1817<!-- EComposer Config Script -->
1818<script id="ecom-theme-helpers" async>
1819window.EComposer=window.EComposer||{};(function(){if(!this.configs)this.configs={};this.configs={"custom_code":{"custom_css":".ecom-collection__product-form__actions.ecom-collection__product-quantity--inline {\r\n    flex-direction: row-reverse !important;\r\n}"},"instagram":null};this.configs.ajax_cart={enable:false};this.customer=false;this.initQuickview=function(){};
1820this.proxy_path='/apps/ecomposer-visual-page-builder';this.popupScriptUrl='';this.routes={domain:'https://www.lieuditwinery.com',root_url:'/',collections_url:'/collections',all_products_collection_url:'/collections/all',cart_url:'/cart',cart_add_url:'/cart/add',cart_change_url:'/cart/change',cart_clear_url:'/cart/clear',cart_update_url:'/cart/update',product_recommendations_url:'/recommendations/products'};
1821this.queryParams={};
1822if(window.location.search.length){new URLSearchParams(window.location.search).forEach((value,key)=>{this.queryParams[key]=value})}
1823this.money_format="${{amount}}";
1824this.money_with_currency_format="${{amount}}";
1825this.currencyCodeEnabled=true;this.abTestingData = [];this.formatMoney=function(t,e){const r=this.currencyCodeEnabled?this.money_with_currency_format:this.money_format;function a(t,e){return void 0===t?e:t}function o(t,e,r,o){if(e=a(e,2),r=a(r,","),o=a(o,"."),isNaN(t)||null==t)return 0;var n=(t=(t/100).toFixed(e)).split(".");return n[0].replace(/(\d)(?=(\d\d\d)+(?!\d))/g,"$1"+r)+(n[1]?o+n[1]:"")}"string"==typeof t&&(t=t.replace(".",""));var n="",i=/\{\{\s*(\w+)\s*\}\}/,s=e||r;switch(s.match(i)[1]){case"amount":n=o(t,2);break;case"amount_no_decimals":n=o(t,0);break;case"amount_with_comma_separator":n=o(t,2,".",",");break;case"amount_with_space_separator":n=o(t,2," ",",");break;case"amount_with_period_and_space_separator":n=o(t,2," ",".");break;case"amount_no_decimals_with_comma_separator":n=o(t,0,".",",");break;case"amount_no_decimals_with_space_separator":n=o(t,0," ");break;case"amount_with_apostrophe_separator":n=o(t,2,"'",".")}return s.replace(i,n)};
1826this.resizeImage=function(t,e){try{if(!e||"original"==e||"full"==e||"master"==e)return t;if(-1!==t.indexOf("cdn.shopify.com")||-1!==t.indexOf("/cdn/shop/")){var r=t.match(/\.(jpg|jpeg|gif|png|bmp|bitmap|tiff|tif|webp)((\#[0-9a-z\-]+)?(\?v=.*)?)?$/gim);if(null==r)return null;var a=t.split(r[0]),o=r[0];return a[0]+"_"+e+o}}catch(r){return t}return t};
1827this.getProduct=function(t){if(!t)return!1;let e=("/"===this.routes.root_url?"":this.routes.root_url)+"/products/"+t+".js?shop="+Shopify.shop;return window.ECOM_LIVE&&(e="/shop/builder/ajax/ecom-proxy/products/"+t+"?shop="+Shopify.shop),window.fetch(e,{headers:{"Content-Type":"application/json"}}).then(t=>t.ok?t.json():false)};
1828const u=new URLSearchParams(window.location.search);if(u.has("ecom-redirect")){const r=u.get("ecom-redirect");if(r){let d;try{d=decodeURIComponent(r)}catch{return}d=d.trim().replace(/[\r\n\t]/g,"");if(d.length>2e3)return;const p=["javascript:","data:","vbscript:","file:","ftp:","mailto:","tel:","sms:","chrome:","chrome-extension:","moz-extension:","ms-browser-extension:"],l=d.toLowerCase();for(const o of p)if(l.includes(o))return;const x=[/
1828<script/i,/<\/script/i,/javascript:/i,/vbscript:/i,/onload=/i,/onerror=/i,/onclick=/i,/onmouseover=/i,/onfocus=/i,/onblur=/i,/onsubmit=/i,/onchange=/i,/alert\s*\(/i,/confirm\s*\(/i,/prompt\s*\(/i,/document\./i,/window\./i,/eval\s*\(/i];for(const t of x)if(t.test(d))return;if(d.startsWith("/")&&!d.startsWith("//")){if(!/^[a-zA-Z0-9\-._~:/?#[\]@!$&'()*+,;=%]+$/.test(d))return;if(d.includes("../")||d.includes("./"))return;window.location.href=d;return}if(!d.includes("://")&&!d.startsWith("//")){if(!/^[a-zA-Z0-9\-._~:/?#[\]@!$&'()*+,;=%]+$/.test(d))return;if(d.includes("../")||d.includes("./"))return;window.location.href="/"+d;return}let n;try{n=new URL(d)}catch{return}if(!["http:","https:"].includes(n.protocol))return;if(n.port&&(parseInt(n.port)<1||parseInt(n.port)>65535))return;const a=[window.location.hostname];if(a.includes(n.hostname)&&(n.href===d||n.toString()===d))window.location.href=d}}
1829}).bind(window.EComposer)();
1830if(window.Shopify&&window.Shopify.designMode&&window.top&&window.top.opener){window.addEventListener("load",function(){window.top.opener.postMessage({action:"ecomposer:loaded"},"*")})}
1831</script>
1831<!-- Quickview Script -->
1832<script id="ecom-theme-quickview" async>
1833window.EComposer=window.EComposer||{};(function(){this.initQuickview=function(){var enable_qv=false;
1834enable_qv=true;
1835let ecom_quickview=document.querySelector('.ecom-quickview');if(!ecom_quickview){const qv_wrapper_script=document.querySelector('#ecom-quickview-template-html');if(!qv_wrapper_script)return;ecom_quickview=document.createElement('div');ecom_quickview.classList.add('ecom-quickview');ecom_quickview.innerHTML=qv_wrapper_script.innerHTML;document.body.prepend(ecom_quickview);}const qv_wrapper=ecom_quickview.querySelector('.ecom-quickview__wrapper');if(!qv_wrapper)return;const ecomQuickview=function(e){let t=qv_wrapper.querySelector(".ecom-quickview__content-data");if(t){let i=document.createRange().createContextualFragment(e);t.innerHTML="",t.append(i),qv_wrapper.classList.add("ecom-open");let c=new CustomEvent("ecom:quickview:init",{detail:{wrapper:qv_wrapper}});document.dispatchEvent(c),window.EComposer&&window.EComposer.ajaxCart&&typeof window.EComposer.ajaxCart==="function"&&window.EComposer.ajaxCart(),requestAnimationFrame(function(){requestAnimationFrame(function(){qv_wrapper.classList.add("ecom-display")})}),closeQuickview(t)}},closeQuickview=function(e){let t=qv_wrapper.querySelector(".ecom-quickview__close-btn"),i=qv_wrapper.querySelector(".ecom-quickview__content");function c(t){let o=t.target;do{if(o==i||o&&o.classList&&o.classList.contains("ecom-modal"))return;o=o.parentNode}while(o);o!=i&&(qv_wrapper.classList.add("ecom-remove"),qv_wrapper.classList.remove("ecom-open","ecom-display","ecom-remove"),setTimeout(function(){e.innerHTML=""},300),document.removeEventListener("click",c),document.removeEventListener("keydown",n))}function n(t){(t.isComposing||27===t.keyCode)&&(qv_wrapper.classList.add("ecom-remove"),qv_wrapper.classList.remove("ecom-open","ecom-display","ecom-remove"),setTimeout(function(){e.innerHTML=""},300),document.removeEventListener("keydown",n),document.removeEventListener("click",c))}t&&t.addEventListener("click",function(t){t.preventDefault(),document.removeEventListener("click",c),document.removeEventListener("keydown",n),qv_wrapper.classList.add("ecom-remove"),qv_wrapper.classList.remove("ecom-open","ecom-display","ecom-remove"),setTimeout(function(){e.innerHTML=""},300)}),document.addEventListener("click",c),document.addEventListener("keydown",n)};function quickViewHandler(e){e&&e.preventDefault();let t=this;t.classList&&t.classList.add("ecom-loading");let i=t.classList?t.getAttribute("href"):window.location.pathname;if(i){if(window.location.search.includes("ecom_template_id")){let c=new URLSearchParams(location.search);i=window.location.pathname+"?section_id="+c.get("ecom_template_id")}else i+=(i.includes("?")?"&":"?")+"section_id=ecom-default-template-quickview";fetch(i).then(function(e){return 200==e.status?e.text():window.document.querySelector("#admin-bar-iframe")?(404==e.status?alert("Please create Ecomposer quickview template first!"):alert("Have some problem with quickview!"),t.classList&&t.classList.remove("ecom-loading"),!1):void window.open(new URL(i).pathname,"_blank")}).then(function(e){e&&(ecomQuickview(e),setTimeout(function(){t.classList&&t.classList.remove("ecom-loading")},300))}).catch(function(e){})}}
1836if(window.location.search.includes('ecom_template_id')&&!window.EComposer.quickviewAutoOpened){window.EComposer.quickviewAutoOpened=true;setTimeout(quickViewHandler,1000)}
1837if(enable_qv){document.querySelectorAll('.ecom-product-quickview:not(.ecom-quickview-initialized)').forEach(function(button){button.classList.add('ecom-quickview-initialized');button.addEventListener('click',quickViewHandler)})}
1838}}).bind(window.EComposer)();
1839</script>
1839
1840
1841<!-- Quickview Template -->
1842<script type="text/template" id="ecom-quickview-template-html">
1843<div class="ecom-quickview__wrapper ecom-dn"><div class="ecom-quickview__container"><div class="ecom-quickview__content"><div class="ecom-quickview__content-inner"><div class="ecom-quickview__content-data"></div></div></div><span class="ecom-quickview__close-btn"><svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32"><path d="M10.722 9.969l-0.754 0.754 5.278 5.278-5.253 5.253 0.754 0.754 5.253-5.253 5.253 5.253 0.754-0.754-5.253-5.253 5.278-5.278-0.754-0.754-5.278 5.278z" fill="#ffffff"></path></svg></span></div></div>
1844</script>
1844
1845
1846<!-- Quickview Styles -->
1847<style class="ecom-theme-quickview">.ecom-quickview__wrapper{opacity:0;display:none;pointer-events:none;position:fixed!important;inset:0;z-index:9999;outline:0;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.ecom-quickview__wrapper.ecom-open{display:block;pointer-events:auto;opacity:1;transition:opacity .2s ease}.ecom-quickview__container{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,0);opacity:1;transition:background .3s ease;padding:12px;box-sizing:border-box}.ecom-quickview__wrapper.ecom-open .ecom-quickview__container{background:rgba(0,0,0,.7)}.ecom-quickview__content{opacity:0;visibility:hidden;transform:translateY(30px);transition:all .3s cubic-bezier(.25,.8,.25,1);max-width:100%;width:100%;max-height:90vh}.ecom-quickview__wrapper.ecom-display .ecom-quickview__content{opacity:1;visibility:visible;transform:translateY(0)}.ecom-quickview__content-inner{background:#fff;border-radius:12px;overflow:hidden;max-height:90vh;width:100%;max-width:1100px;margin:0 auto;-webkit-overflow-scrolling:touch;overflow-y:auto}.ecom-quickview__content-inner::-webkit-scrollbar{width:0;background:transparent}.ecom-quickview__close-btn{position:fixed!important;top:24px;right:24px;width:32px;height:32px;background:none;color:#fff;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s,transform .3s;z-index:100001;cursor:pointer;transform:scale(.8);filter:drop-shadow(0 1px 3px rgba(0,0,0,.5))}.ecom-quickview__wrapper.ecom-open .ecom-quickview__close-btn{opacity:1;transform:scale(1)}.ecom-quickview__close-btn:hover,.ecom-quickview__close-btn:active{transform:scale(1.15)}@media (max-width:1200px){.ecom-quickview__container{padding:8px}.ecom-quickview__close-btn{top:16px;right:16px;width:28px;height:28px}.ecom-quickview__content-inner{max-height:96vh;border-radius:0}}@media (max-width:767px) and (orientation:portrait){.ecom-quickview__wrapper,.ecom-quickview__container{position:absolute}}</style><!-- Toast Template -->
1848<script type="text/template" id="ecom-template-html"><!-- BEGIN app snippet: ecom-toast --><div id="ecom-toast"><div id="ecom-toast-icon"><svg xmlns="http://www.w3.org/2000/svg" class="ecom-toast-icon-svg ecom-toast-icon-info" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"/></svg>
1849<svg class="ecom-toast-icon-svg ecom-toast-icon-success" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm0 48c110.5 0 200 89.5 200 200 0 110.5-89.5 200-200 200-110.5 0-200-89.5-200-200 0-110.5 89.5-200 200-200m140.2 130.3l-22.5-22.7c-4.7-4.7-12.3-4.7-17-.1L215.3 303.7l-59.8-60.3c-4.7-4.7-12.3-4.7-17-.1l-22.7 22.5c-4.7 4.7-4.7 12.3-.1 17l90.8 91.5c4.7 4.7 12.3 4.7 17 .1l172.6-171.2c4.7-4.7 4.7-12.3 .1-17z"/></svg>
1850</div><div id="ecom-toast-desc"></div></div><!-- END app snippet --></script>
1850<!-- END app block --><!-- BEGIN app block: shopify://apps/triplewhale/blocks/triple_pixel_snippet/483d496b-3f1a-4609-aea7-8eee3b6b7a2a --><link rel='preconnect dns-prefetch' href='https://api.config-security.com/' crossorigin />
1851<link rel='preconnect dns-prefetch' href='https://conf.config-security.com/' crossorigin />
1852<script>
1853/* >> TriplePixel :: start*/
1854window.TriplePixelData={TripleName:"lieu-dit-winery.myshopify.com",ver:"2.16",plat:"SHOPIFY",isHeadless:false,src:'SHOPIFY_EXT',product:{id:"",name:``,price:"",variant:"",av:{  }},search:"",collection:"",cart:"page",template:"login",curr:"USD" || "USD", market:"112295994"},function(W,H,A,L,E,_,B,N){function O(U,T,P,H,R){void 0===R&&(R=!1),H=new XMLHttpRequest,P?(H.open("POST",U,!0),H.setRequestHeader("Content-Type","text/plain")):H.open("GET",U,!0),H.send(JSON.stringify(P||{})),H.onreadystatechange=function(){4===H.readyState&&200===H.status?(R=H.responseText,U.includes("/first")?eval(R):P||(N[B]=R)):(299<H.status||H.status<200)&&T&&!R&&(R=!0,O(U,T-1,P))}}if(N=window,!N[H+"sn"]){N[H+"sn"]=1,L=function(){return Date.now().toString(36)+"_"+Math.random().toString(36)};try{A.setItem(H,1+(0|A.getItem(H)||0)),(E=JSON.parse(A.getItem(H+"U")||"[]")).push({u:location.href,r:document.referrer,t:Date.now(),id:L()}),A.setItem(H+"U",JSON.stringify(E))}catch(e){}var i,m,p;A.getItem('"!nC`')||(_=A,A=N,A[H]||(E=A[H]=function(t,e,i){return void 0===i&&(i=[]),"State"==t?E.s:(W=L(),(E._q=E._q||[]).push([W,t,e].concat(i)),W)},E.s="Installed",E._q=[],E.ch=W,B="configSecurityConfModel",N[B]=1,O("https://conf.config-security.com/model",5),i=L(),m=A[atob("c2NyZWVu")],_.setItem("di_pmt_wt",i),p={id:i,action:"profile",avatar:_.getItem("auth-security_rand_salt_"),time:m[atob("d2lkdGg=")]+":"+m[atob("aGVpZ2h0")],host:A.TriplePixelData.TripleName,plat:A.TriplePixelData.plat,url:window.location.href.slice(0,500),ref:document.referrer,ver:A.TriplePixelData.ver},O("https://api.config-security.com/event",5,p),O("https://api.config-security.com/first?host=".concat(p.host,"&plat=").concat(p.plat),5)))}}("","TriplePixel",localStorage);
1855/* << TriplePixel :: end*/
1856</script>
1856
1857
1858
1859
1860<!-- END app block --><!-- BEGIN app block: shopify://apps/winehub-commerce/blocks/customer-portal-redirect/c0ed40b1-a5e6-4ec9-bd28-157981fb797f --><!-- Winehub Customer Portal Redirect -->
1861<!-- Current Path: /account/login -->
1862<!-- END app block --><!-- BEGIN app block: shopify://apps/pagefly-ai-page-builder/blocks/app-embed/83e179f7-59a0-4589-8c66-c0dddf959200 -->
1863
1864<!-- BEGIN app snippet: pagefly-cro-ab-testing-main -->
1865
1866
1867
1868
1869
1870
1871
1872<script>
1873  ;(function () {
1874    const url = new URL(window.location)
1875    const viewParam = url.searchParams.get('view')
1876    if (viewParam && viewParam.includes('variant-pf-')) {
1877      url.searchParams.set('pf_v', viewParam)
1878      url.searchParams.delete('view')
1879      window.history.replaceState({}, '', url)
1880    }
1881  })()
1882</script>
1882
1883
1884
1885
1886<script type='module'>
1887  
1888  window.PAGEFLY_CRO = window.PAGEFLY_CRO || {}
1889
1890  window.PAGEFLY_CRO['data_debug'] = {
1891    original_template_suffix: "",
1892    allow_ab_test: false,
1893    ab_test_start_time: 0,
1894    ab_test_end_time: 0,
1895    today_date_time: 1791120243000,
1896  }
1897  window.PAGEFLY_CRO['GA4'] = { enabled: false}
1898</script>
1898
1899
1900<!-- END app snippet -->
1901
1902
1903
1904
1905
1906
1907
1908
1909  
1909<script src='https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-helper.js' defer='defer'></script>
1909
1910
1911  
1911<script src='https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-general-helper.js' defer='defer'></script>
1911
1912
1913  
1913<script src='https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-snap-slider.js' defer='defer'></script>
1913
1914
1915  
1915<script src='https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-slideshow-v3.js' defer='defer'></script>
1915
1916
1917  
1917<script src='https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-slideshow-v4.js' defer='defer'></script>
1917
1918
1919  
1919<script src='https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-glider.js' defer='defer'></script>
1919
1920
1921  
1921<script src='https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-slideshow-v1-v2.js' defer='defer'></script>
1921
1922
1923  
1923<script src='https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-product-media.js' defer='defer'></script>
1923
1924
1925  
1925<script src='https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-product.js' defer='defer'></script>
1925
1926
1927
1928<script id='pagefly-helper-data' type='application/json'>
1929  {
1930    "page_optimization": {
1931      "assets_prefetching": false
1932    },
1933    "elements_asset_mapper": {
1934      "Accordion": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-accordion.js",
1935      "Accordion3": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-accordion3.js",
1936      "CountDown": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-countdown.js",
1937      "GMap1": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-gmap.js",
1938      "GMap2": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-gmap.js",
1939      "GMapBasicV2": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-gmap.js",
1940      "GMapAdvancedV2": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-gmap.js",
1941      "HTML.Video": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-htmlvideo.js",
1942      "HTML.Video2": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-htmlvideo2.js",
1943      "HTML.Video3": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-htmlvideo2.js",
1944      "BackgroundVideo": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-htmlvideo2.js",
1945      "Instagram": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-instagram.js",
1946      "Instagram2": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-instagram.js",
1947      "Insta3": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-instagram3.js",
1948      "Tabs": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-tab.js",
1949      "Tabs3": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-tab3.js",
1950      "ProductBox": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-cart.js",
1951      "FBPageBox2": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-facebook.js",
1952      "FBLikeButton2": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-facebook.js",
1953      "TwitterFeed2": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-twitter.js",
1954      "Paragraph4": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-paragraph4.js",
1955
1956      "AliReviews": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-3rd-elements.js",
1957      "BackInStock": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-3rd-elements.js",
1958      "GloboBackInStock": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-3rd-elements.js",
1959      "GrowaveWishlist": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-3rd-elements.js",
1960      "InfiniteOptionsShopPad": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-3rd-elements.js",
1961      "InkybayProductPersonalizer": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder
1961-363/assets/pagefly-3rd-elements.js",
1962      "LimeSpot": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-3rd-elements.js",
1963      "Loox": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-3rd-elements.js",
1964      "Opinew": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-3rd-elements.js",
1965      "Powr": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-3rd-elements.js",
1966      "ProductReviews": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-3rd-elements.js",
1967      "PushOwl": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-3rd-elements.js",
1968      "ReCharge": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-3rd-elements.js",
1969      "Rivyo": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-3rd-elements.js",
1970      "TrackingMore": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-3rd-elements.js",
1971      "Vitals": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-3rd-elements.js",
1972      "Wiser": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-3rd-elements.js"
1973    },
1974    "custom_elements_mapper": {
1975      "pf-click-action-element": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-click-action-element.js",
1976      "pf-dialog-element": "https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-dialog-element.js"
1977    }
1978  }
1979</script>
1979
1980
1981<script id='pagefly-heatmap-config' type='application/json'>
1982  {}
1983</script>
vendor: 1 bytes, line 1983
1983
1984<script>
1985  (function () {
1986    var el = document.getElementById('pagefly-heatmap-config')
1987    if (!el) { window.__pagefly_heatmap_config__ = {}; return }
1988    try {
1989      window.__pagefly_heatmap_config__ = JSON.parse(el.textContent || '{}') || {}
1990    } catch (e) {
1991      window.__pagefly_heatmap_config__ = {}
1992    }
1993  })()
1994</script>
vendor: 1 bytes, line 1994
1994
1995<script>
1996  // Heatmap overlay loader. Three gates, all of them cheap, none of them trusting the URL:
1997  // the visitor must have arrived on a pf_heatmap link, the SERVER must have published an
1998  // overlay path in the metafield, and this page must already be one the merchant enabled
1999  // tracking for. The last gate is what stops a crafted link pulling the asset onto an
2000  // arbitrary storefront page. Everything else is decided inside the asset, and by the server.
2001  (function () {
2002    var cfg = window.__pagefly_heatmap_config__ || {}
2003    var id = (window.__pagefly_page_setting__ || {}).pageId
2004    if (!/[#&]pf_heatmap=/.test(window.location.hash || '')) return
2005    if (!cfg.overlay_data_path || !Array.isArray(cfg.enabled_page_ids)) return
2006    if (!id || cfg.enabled_page_ids.indexOf(id) === -1) return
2007    var s = document.createElement('script')
2008    s.src = 'https://cdn.shopify.com/extensions/01a0f807-168f-7fcf-a3d0-e91e9a539d12/pagefly-ai-page-builder-363/assets/pagefly-heatmap-overlay.js'
2009    s.defer = true
2010    document.head.appendChild(s)
2011  })()
2012</script>
2012
2013
2014<!-- BEGIN app snippet: pf-ai-schema -->
2015<!-- END app snippet -->
2016
2017
2018<!-- END app block -->
2018<script src="https://cdn.shopify.com/extensions/01a0f119-97d5-70ad-8274-d2ee373cf011/ecomposer-145/assets/ecom.js" type="text/javascript" defer="defer"></script>
2018
2019<link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
2020<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: 7028047908,url: window.location.href,navigation_start,duration: currentMs - navigation_start,session_token,page_type: "customers/login"};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 2020
2020
2021<script>
2022  window.__TREKKIE_SHIM_QUEUE = window.__TREKKIE_SHIM_QUEUE || [];
2023</script>
vendor: 1 bytes, line 2023
2023
2024<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}
2024).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: 7028047908,storefrontBaseUrl: "https://www.lieuditwinery.com",extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint: "https://www.lieuditwinery.com/.well-known/shopify/monorail/unstable/produce_batch",surface: "storefront-renderer",enabledBetaFlags: ["4c64608a","16072cab","8450a54b","7ee89bf1"],webPixelsConfigList: [{"id":"760545338","configuration":"{\"mailchimp_store_id\":\"store_nlf4b412bw7u84he33bu\", \"mailchimp_user_id\":\"19790647\",\"mailchimp_list_id\":\"fbef9f75e0\"}","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":"673447994","configuration":"{\"shopId\":\"lieu-dit-winery.myshopify.com\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"7093dff47f098f6de2afb75b62011ebe","type":"APP","apiClientId":2753413,"privacyPurposes":["ANALYTICS","MARKETING"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]}
2024,"dataSharingState":"unrestricted"},{"id":"452100154","configuration":"{\"webPixelName\":\"Judge.me\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"8acc938b1a30dc7624e304493ca567d7","type":"APP","apiClientId":683015,"privacyPurposes":["ANALYTICS"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"id":"201916474","configuration":"{\"pixel_id\":\"3723086031279716\",\"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":"25788474","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"10","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"name":"Segment Analytics"},{"id":"57409594","eventPayloadVersion":"v1","runtimeContext":"LAX","scriptVersion":"1","type":"CUSTOM","privacyPurposes":["ANALYTICS"],"name":"Google Analytics tag (migrated)"},{"id":"96796730","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"4","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"name":"Chord Unified Pixel"},{"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":"Lieu Dit Winery","paymentSettings":{"currencyCode":"USD"},"myshopifyDomain":"lieu-dit-winery.myshopify.com","countryCode":"US","storefrontUrl":"https:\/\/www.lieuditwinery.com"},"customer":null,"cart":null,"checkout":null,"productVariants":[],"products":[],"purchasingCompany":null},},"https://www.lieuditwinery.com/cdn","5982071ew7ea472e3p69b68784m2150dfea",{"modern":"","legacy":""},{"trekkieShim":true,"agentContext":true,"apiClientId":"580111","facebookCapiEnabled":"true","themeId":"124444115002","themeStoreId":"2699","themePublished":"true","eventMetadataId":"a53db5b5-383c-4bfa-8706-6c1a86e0b655","shopId":"7028047908","storefrontBaseUrl":"https:\/\/www.lieuditwinery.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\",{}]]"});})();</script>
2024<script>
2025  window.ShopifyAnalytics = window.ShopifyAnalytics || {};
2026  window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {};
2027  window.ShopifyAnalytics.meta.currency = 'USD';
2028  var meta = {"page":{"requestId":"eb780ae2-fed8-4caa-b4e4-d02abcc5751e-1791120243"}};
2029  for (var attr in meta) {
2030    window.ShopifyAnalytics.meta[attr] = meta[attr];
2031  }
2032</script>
vendor: 1 bytes, line 2032
2032
2033<script class="analytics">
2034  (function () {
2035    var customDocumentWrite = function(content) {
2036      var jquery = null;
2037
2038      if (window.jQuery) {
2039        jquery = window.jQuery;
2040      } else if (window.Checkout && window.Checkout.$) {
2041        jquery = window.Checkout.$;
2042      }
2043
2044      if (jquery) {
2045        jquery('body').append(content);
2046      }
2047    };
2048
2049    var hasLoggedConversion = function(token) {
2050      if (token) {
2051        return document.cookie.indexOf('loggedConversion=' + token) !== -1;
2052      }
2053      return false;
2054    }
2055
2056    var setCookieIfConversion = function(token) {
2057      if (token) {
2058        var twoMonthsFromNow = new Date(Date.now());
2059        twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2);
2060
2061        document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow;
2062      }
2063    }
2064
2065    var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || [];
2066    window.ShopifyAnalytics.lib.trekkie = window.trekkie;
2067    if (trekkie.integrations) {
2068      return;
2069    }
2070    trekkie.methods = [
2071      'identify',
2072      'page',
2073      'ready',
2074      'track',
2075      'trackForm',
2076      'trackLink'
2077    ];
2078    trekkie.factory = function(method) {
2079      return function() {
2080        var args = Array.prototype.slice.call(arguments);
2081        args.unshift(method);
2082        trekkie.push(args);
2083        if (method == 'track' || method == 'page') {
2084          var pageUrl;
2085          try {
2086            pageUrl = window.location.href;
2087          } catch (e) {}
2088          var pageReferrer;
2089          try {
2090            pageReferrer = document.referrer;
2091          } catch (e) {}
2092          try {
2093            if (window.__TREKKIE_SHIM_QUEUE == null) {
2094              window.__TREKKIE_SHIM_QUEUE = [];
2095            }
2096            window.__TREKKIE_SHIM_QUEUE.push({
2097              from: 'trekkie-stub',
2098              method: method,
2099              args: args.slice(1),
2100              pageContext: {
2101                url: pageUrl,
2102                referrer: pageReferrer
2103              }
2104            });
2105          } catch (e) {
2106            // no-op
2107          }
2108        }
2109        return trekkie;
2110      };
2111    };
2112    for (var i = 0; i < trekkie.methods.length; i++) {
2113      var key = trekkie.methods[i];
2114      trekkie[key] = trekkie.factory(key);
2115    }
2116    trekkie.load = function(config) {
2117      trekkie.config = config || {};
2118      trekkie.config.initialDocumentCookie = document.cookie;
2119      var first = document.getElementsByTagName('script')[0];
2120var script = document.createElement('script');
2121script.type = 'text/javascript';
2122script.onerror = function(e) {
2123  var scriptFallback = document.createElement('script');
2124  scriptFallback.type = 'text/javascript';
2125  scriptFallback.onerror = function(error) {
2126          var Monorail = {
2127      produce: function produce(monorailDomain, schemaId, payload) {
2128        var currentMs = new Date().getTime();
2129        var event = {
2130          schema_id: schemaId,
2131          payload: payload,
2132          metadata: {
2133            event_created_at_ms: currentMs,
2134            event_sent_at_ms: currentMs
2135          }
2136        };
2137        return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event));
2138      },
2139      sendRequest: function sendRequest(endpointUrl, payload) {
2140        // Try the sendBeacon API
2141        if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) {
2142          var blobData = new window.Blob([payload], {
2143            type: 'text/plain'
2144          });
2145
2146          if (window.navigator.sendBeacon(endpointUrl, blobData)) {
2147            return true;
2148          } // sendBeacon was not successful
2149
2150        } // XHR beacon
2151
2152        var xhr = new XMLHttpRequest();
2153
2154        try {
2155          xhr.open('POST', endpointUrl);
2156          xhr.setRequestHeader('Content-Type', 'text/plain');
2157          xhr.send(payload);
2158        } catch (e) {
2159          console.log(e);
2160        }
2161
2162        return false;
2163      },
2164      isIos12: function isIos12() {
2165        return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1;
2166      }
2167    };
2168    Monorail.produce('monorail-edge.shopifysvc.com',
2169      'trekkie_storefront_load_errors/1.1',
2170      {shop_id: 7028047908,
2171      theme_id: 124444115002,
2172      app_name: "storefront",
2173      context_url: window.location.href,
2174      source_url: "//www.lieuditwinery.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js"});
2175
2176  };
2177  scriptFallback.async = true;
2178  scriptFallback.src = '//www.lieuditwinery.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js';
2179  first.parentNode.insertBefore(scriptFallback, first);
2180};
2181script.async = true;
2182script.src = '//www.lieuditwinery.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js';
2183first.parentNode.insertBefore(script, first);
2184
2185    };
2186    trekkie.load(
2187      {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":7028047908,"isMerchantRequest":null,"themeId":124444115002,"themeCityHash":"5065471869518555355","contentLanguage":"en","currency":"USD","eventMetadataId":"a53db5b5-383c-4bfa-8706-6c1a86e0b655"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain","enabledBetaFlags":["764d78cb","8450a54b","7ee89bf1","4c64608a"]},"Session Attribution":{},"S2S":{"facebookCapiEnabled":true,"source":"trekkie-storefront-renderer","apiClientId":580111}}
2188    );
2189
2190    var loaded = false;
2191    trekkie.ready(function() {
2192      if (loaded) return;
2193      loaded = true;
2194
2195      window.ShopifyAnalytics.lib = window.trekkie;
2196
2197      var originalDocumentWrite = document.write;
2198      document.write = customDocumentWrite;
2199      try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {};
2200      document.write = originalDocumentWrite;
2201
2202      var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/)
2203      var token = match? match[1]: undefined;
2204      if (!hasLoggedConversion(token)) {
2205        setCookieIfConversion(token);
2206        
2207      }
2208    });
2209
2210    window.ShopifyAnalytics.lib.page(null,{"requestId":"eb780ae2-fed8-4caa-b4e4-d02abcc5751e-1791120243","shopifyEmitted":true});
2211
2212    var eventsListenerScript = document.createElement('script');
2213    eventsListenerScript.async = true;
2214    eventsListenerScript.src = "//www.lieuditwinery.com/cdn/shopifycloud/storefront/assets/shop_events_listener-4e26a9ce.js";
2215    document.getElementsByTagName('head')[0].appendChild(eventsListenerScript);
2216})();</script>
2216
2217  
2217<script>
2218  if (!window.ga || (window.ga && typeof window.ga !== 'function')) {
2219    window.ga = function ga() {
2220      (window.ga.q = window.ga.q || []).push(arguments);
2221      if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') {
2222        window.Shopify.analytics.publish("ga_stub_called", {}, {sendTo: "google_osp_migration"});
2223      }
2224      console.error("Shopify's Google Analytics stub called with:", Array.from(arguments), "\nSee https://help.shopify.com/manual/promoting-marketing/pixels/pixel-migration#google for more information.");
2225    };
2226    if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') {
2227      window.Shopify.analytics.publish("ga_stub_initialized", {}, {sendTo: "google_osp_migration"});
2228    }
2229  }
2230</script>
vendor: 1 bytes, line 2230
2230
2231<script
2232  defer
2233  src="https://www.lieuditwinery.com/cdn/shopifycloud/perf-kit/shopify-perf-kit-3.9.4.min.js"
2234  data-application="storefront-renderer"
2235  data-shop-id="7028047908"
2236  data-render-region="gcp-us-east1"
2237  data-page-type="customers/login"
2238  data-theme-instance-id="124444115002"
2239  data-theme-name="Trade"
2240  data-theme-version="14.0.0"
2241  data-monorail-region="shop_domain"
2242  data-resource-timing-sampling-rate="10"
2243  data-shs="true"
2244  data-shs-beacon="true"
2245  data-shs-export-with-fetch="true"
2246  data-shs-logs-sample-rate="1"
2247  data-shs-beacon-endpoint="https://www.lieuditwinery.com/api/collect"
2248></script>
2248
2249<meta name="shopify-y" content="db25d9a0-7508-4a4f-a9d8-f911b9c2f398" data-expiration="1822677843000"><meta name="shopify-s" content="7543b7af-2f5b-4e70-bb32-2040e81ac778" data-expiration="1791122043000"><meta name="new-cookie-storage-activated" content="t">
2250</head>
2251
2252<script src="//www.lieuditwinery.com/cdn/shop/t/9/assets/loop_bundle.js?v=134193039818244484621774992385"></script>
2252
2253  <body class="gradient animate--hover-default">
2254    <a class="skip-to-content-link button visually-hidden" href="#MainContent">
2255      Skip to content
2256    </a><!-- BEGIN sections: header-group -->
2257<div id="shopify-section-sections--15044386553914__header" class="shopify-section shopify-section-group-header-group section-header"><link rel="stylesheet" href="//www.lieuditwinery.com/cdn/shop/t/9/assets/component-list-menu.css?v=151968516119678728991718808903" media="print" onload="this.media='all'">
2258<link rel="stylesheet" href="//www.lieuditwinery.com/cdn/shop/t/9/assets/component-search.css?v=165164710990765432851718808903" media="print" onload="this.media='all'">
2259<link rel="stylesheet" href="//www.lieuditwinery.com/cdn/shop/t/9/assets/component-menu-drawer.css?v=110695408305392539491718808903" media="print" onload="this.media='all'">
2260<link rel="stylesheet" href="//www.lieuditwinery.com/cdn/shop/t/9/assets/component-cart-notification.css?v=54116361853792938221718808903" media="print" onload="this.media='all'">
2261<link rel="stylesheet" href="//www.lieuditwinery.com/cdn/shop/t/9/assets/component-cart-items.css?v=127384614032664249911718808903" media="print" onload="this.media='all'"><link rel="stylesheet" href="//www.lieuditwinery.com/cdn/shop/t/9/assets/component-price.css?v=70172745017360139101718808903" media="print" onload="this.media='all'"><style>
2262  header-drawer {
2263    justify-self: start;
2264    margin-left: -1.2rem;
2265  }.menu-drawer-container {
2266    display: flex;
2267  }
2268
2269  .list-menu {
2270    list-style: none;
2271    padding: 0;
2272    margin: 0;
2273  }
2274
2275  .list-menu--inline {
2276    display: inline-flex;
2277    flex-wrap: wrap;
2278  }
2279
2280  summary.list-menu__item {
2281    padding-right: 2.7rem;
2282  }
2283
2284  .list-menu__item {
2285    display: flex;
2286    align-items: center;
2287    line-height: calc(1 + 0.3 / var(--font-body-scale));
2288  }
2289
2290  .list-menu__item--link {
2291    text-decoration: none;
2292    padding-bottom: 1rem;
2293    padding-top: 1rem;
2294    line-height: calc(1 + 0.8 / var(--font-body-scale));
2295  }
2296
2297  @media screen and (min-width: 750px) {
2298    .list-menu__item--link {
2299      padding-bottom: 0.5rem;
2300      padding-top: 0.5rem;
2301    }
2302  }
2303</style><style data-shopify>.header {
2304    padding: 4px 3rem 4px 3rem;
2305  }
2306
2307  .section-header {
2308    position: sticky; /* This is for fixing a Safari z-index issue. PR #2147 */
2309    margin-bottom: 0px;
2310  }
2311
2312  @media screen and (min-width: 750px) {
2313    .section-header {
2314      margin-bottom: 0px;
2315    }
2316  }
2317
2318  @media screen and (min-width: 990px) {
2319    .header {
2320      padding-top: 8px;
2321      padding-bottom: 8px;
2322    }
2323  }</style>
2323<script src="//www.lieuditwinery.com/cdn/shop/t/9/assets/details-disclosure.js?v=13653116266235556501718808903" defer="defer"></script>
vendor: 1 bytes, line 2323
2323
2324<script src="//www.lieuditwinery.com/cdn/shop/t/9/assets/details-modal.js?v=25581673532751508451718808903" defer="defer"></script>
vendor: 1 bytes, line 2324
2324
2325<script src="//www.lieuditwinery.com/cdn/shop/t/9/assets/cart-notification.js?v=133508293167896966491718808903" defer="defer"></script>
vendor: 1 bytes, line 2325
2325
2326<script src="//www.lieuditwinery.com/cdn/shop/t/9/assets/search-form.js?v=133129549252120666541718808903" defer="defer"></script>
2326<svg xmlns="http://www.w3.org/2000/svg" class="hidden">
2327  <symbol id="icon-search" viewbox="0 0 18 19" fill="none">
2328    <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"/>
2329  </symbol>
2330
2331  <symbol id="icon-reset" class="icon icon-close"  fill="none" viewBox="0 0 18 18" stroke="currentColor">
2332    <circle r="8.5" cy="9" cx="9" stroke-opacity="0.2"/>
2333    <path d="M6.82972 6.82915L1.17193 1.17097" stroke-linecap="round" stroke-linejoin="round" transform="translate(5 5)"/>
2334    <path d="M1.22896 6.88502L6.77288 1.11523" stroke-linecap="round" stroke-linejoin="round" transform="translate(5 5)"/>
2335  </symbol>
2336
2337  <symbol id="icon-close" class="icon icon-close" fill="none" viewBox="0 0 18 17">
2338    <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">
2339  </symbol>
2340</svg><sticky-header data-sticky-type="on-scroll-up" class="header-wrapper color-scheme-006fe274-a695-4233-ad56-13e5ddd44d67 gradient header-wrapper--border-bottom"><header class="header header--middle-center header--mobile-center page-width drawer-menu header--has-menu header--has-account">
2341
2342<header-drawer data-breakpoint="desktop">
2343  <details id="Details-menu-drawer-container" class="menu-drawer-container">
2344    <summary
2345      class="header__icon header__icon--menu header__icon--summary link focus-inset"
2346      aria-label="Menu"
2347    >
2348      <span>
2349        <svg
2350  xmlns="http://www.w3.org/2000/svg"
2351  aria-hidden="true"
2352  focusable="false"
2353  class="icon icon-hamburger"
2354  fill="none"
2355  viewBox="0 0 18 16"
2356>
2357  <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">
2358</svg>
2359
2360        <svg
2361  xmlns="http://www.w3.org/2000/svg"
2362  aria-hidden="true"
2363  focusable="false"
2364  class="icon icon-close"
2365  fill="none"
2366  viewBox="0 0 18 17"
2367>
2368  <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">
2369</svg>
2370
2371      </span>
2372    </summary>
2373    <div id="menu-drawer" class="gradient menu-drawer motion-reduce color-scheme-006fe274-a695-4233-ad56-13e5ddd44d67">
2374      <div class="menu-drawer__inner-container">
2375        <div class="menu-drawer__navigation-container">
2376          <nav class="menu-drawer__navigation">
2377            <ul class="menu-drawer__menu has-submenu list-menu" role="list"><li><details id="Details-menu-drawer-menu-item-1">
2378                      <summary
2379                        id="HeaderDrawer-shop"
2380                        class="menu-drawer__menu-item list-menu__item link link--text focus-inset"
2381                      >
2382                        Shop
2383                        <svg
2384  viewBox="0 0 14 10"
2385  fill="none"
2386  aria-hidden="true"
2387  focusable="false"
2388  class="icon icon-arrow"
2389  xmlns="http://www.w3.org/2000/svg"
2390>
2391  <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">
2392</svg>
2393
2394                        <svg aria-hidden="true" focusable="false" class="icon icon-caret" viewBox="0 0 10 6">
2395  <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">
2396</svg>
2397
2398                      </summary>
2399                      <div
2400                        id="link-shop"
2401                        class="menu-drawer__submenu has-submenu gradient motion-reduce"
2402                        tabindex="-1"
2403                      >
2404                        <div class="menu-drawer__inner-submenu">
2405                          <button class="menu-drawer__close-button link link--text focus-inset" aria-expanded="true">
2406                            <svg
2407  viewBox="0 0 14 10"
2408  fill="none"
2409  aria-hidden="true"
2410  focusable="false"
2411  class="icon icon-arrow"
2412  xmlns="http://www.w3.org/2000/svg"
2413>
2414  <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">
2415</svg>
2416
2417                            Shop
2418                          </button>
2419                          <ul class="menu-drawer__menu list-menu" role="list" tabindex="-1"><li><a
2420                                    id="HeaderDrawer-shop-shop-all"
2421                                    href="/collections/best-sellers-copy"
2422                                    class="menu-drawer__menu-item link link--text list-menu__item focus-inset"
2423                                    
2424                                  >
2425                                    Shop All
2426                                  </a></li><li><a
2427                                    id="HeaderDrawer-shop-whites-rose"
2428                                    href="/collections/whites"
2429                                    class="menu-drawer__menu-item link link--text list-menu__item focus-inset"
2430                                    
2431                                  >
2432                                    Whites &amp; Rosé
2433                                  </a></li><li><a
2434                                    id="HeaderDrawer-shop-reds"
2435                                    href="/collections/reds"
2436                                    class="menu-drawer__menu-item link link--text list-menu__item focus-inset"
2437                                    
2438                                  >
2439                                    Reds
2440                                  </a></li><li><a
2441                                    id="HeaderDrawer-shop-large-format"
2442                                    href="/collections/large-format"
2443                                    class="menu-drawer__menu-item link link--text list-menu__item focus-inset"
2444                                    
2445                                  >
2446                                    Large Format
2447                                  </a></li><li><a
2448                                    id="HeaderDrawer-shop-gift-ideas"
2449                                    href="/collections/gift-ideas"
2450                                    class="menu-drawer__menu-item link link--text list-menu__item focus-inset"
2451                                    
2452                                  >
2453                                    Gift Ideas
2454                                  </a></li></ul>
2455                        </div>
2456                      </div>
2457                    </details></li><li>
2457<details id="Details-menu-drawer-menu-item-2">
2458                      <summary
2459                        id="HeaderDrawer-about"
2460                        class="menu-drawer__menu-item list-menu__item link link--text focus-inset"
2461                      >
2462                        About
2463                        <svg
2464  viewBox="0 0 14 10"
2465  fill="none"
2466  aria-hidden="true"
2467  focusable="false"
2468  class="icon icon-arrow"
2469  xmlns="http://www.w3.org/2000/svg"
2470>
2471  <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">
2472</svg>
2473
2474                        <svg aria-hidden="true" focusable="false" class="icon icon-caret" viewBox="0 0 10 6">
2475  <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">
2476</svg>
2477
2478                      </summary>
2479                      <div
2480                        id="link-about"
2481                        class="menu-drawer__submenu has-submenu gradient motion-reduce"
2482                        tabindex="-1"
2483                      >
2484                        <div class="menu-drawer__inner-submenu">
2485                          <button class="menu-drawer__close-button link link--text focus-inset" aria-expanded="true">
2486                            <svg
2487  viewBox="0 0 14 10"
2488  fill="none"
2489  aria-hidden="true"
2490  focusable="false"
2491  class="icon icon-arrow"
2492  xmlns="http://www.w3.org/2000/svg"
2493>
2494  <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">
2495</svg>
2496
2497                            About
2498                          </button>
2499                          <ul class="menu-drawer__menu list-menu" role="list" tabindex="-1"><li><a
2500                                    id="HeaderDrawer-about-about-us"
2501                                    href="/pages/our-story"
2502                                    class="menu-drawer__menu-item link link--text list-menu__item focus-inset"
2503                                    
2504                                  >
2505                                    About Us
2506                                  </a></li><li><a
2507                                    id="HeaderDrawer-about-visit-us"
2508                                    href="/pages/visit-us"
2509                                    class="menu-drawer__menu-item link link--text list-menu__item focus-inset"
2510                                    
2511                                  >
2512                                    Visit Us
2513                                  </a></li></ul>
2514                        </div>
2515                      </div>
2516                    </details></li><li><a
2517                      id="HeaderDrawer-club-lieu-dit"
2518                      href="/pages/club-lieu-dit"
2519                      class="menu-drawer__menu-item list-menu__item link link--text focus-inset"
2520                      
2521                    >
2522                      Club Lieu Dit
2523                    </a></li><li><a
2524                      id="HeaderDrawer-contact"
2525                      href="/pages/contact-us"
2526                      class="menu-drawer__menu-item list-menu__item link link--text focus-inset"
2527                      
2528                    >
2529                      Contact
2530                    </a></li></ul>
2531          </nav>
2532          <div class="menu-drawer__utility-links"><a
2533                href="/account/login"
2534                class="menu-drawer__account link focus-inset h5 medium-hide large-up-hide"
2535              >
2536                <account-icon><svg
2537  xmlns="http://www.w3.org/2000/svg"
2538  aria-hidden="true"
2539  focusable="false"
2540  class="icon icon-account"
2541  fill="none"
2542  viewBox="0 0 18 19"
2543>
2544  <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.
25441-3.67-1.35-6.17-1.35z" fill="currentColor">
2545</svg>
2546
2547</account-icon>Log in</a><div class="menu-drawer__localization header-localization">
2548</div><ul class="list list-social list-unstyled" role="list"></ul>
2549          </div>
2550        </div>
2551      </div>
2552    </div>
2553  </details>
2554</header-drawer>
2555
2556<a href="/" class="header__heading-link link link--text focus-inset"><div class="header__heading-logo-wrapper">
2557                
2558                <img src="//www.lieuditwinery.com/cdn/shop/files/Logo_2_ca9acc8d-792c-4586-bb04-7ae171f9e86a.png?v=1718201355&amp;width=600" alt="Lieu Dit Winery" srcset="//www.lieuditwinery.com/cdn/shop/files/Logo_2_ca9acc8d-792c-4586-bb04-7ae171f9e86a.png?v=1718201355&amp;width=170 170w, //www.lieuditwinery.com/cdn/shop/files/Logo_2_ca9acc8d-792c-4586-bb04-7ae171f9e86a.png?v=1718201355&amp;width=255 255w, //www.lieuditwinery.com/cdn/shop/files/Logo_2_ca9acc8d-792c-4586-bb04-7ae171f9e86a.png?v=1718201355&amp;width=340 340w" width="170" height="44.73125" loading="eager" class="header__heading-logo" sizes="(min-width: 750px) 170px, 50vw">
2559              </div></a><div class="header__icons header__icons--localization header-localization">
2560      <div class="desktop-localization-wrapper">
2561</div>
2562      
2563
2564<details-modal class="header__search">
2565  <details>
2566    <summary
2567      class="header__icon header__icon--search header__icon--summary link focus-inset modal__toggle"
2568      aria-haspopup="dialog"
2569      aria-label="Search"
2570    >
2571      <span>
2572        <svg class="modal__toggle-open icon icon-search" aria-hidden="true" focusable="false">
2573          <use href="#icon-search">
2574        </svg>
2575        <svg class="modal__toggle-close icon icon-close" aria-hidden="true" focusable="false">
2576          <use href="#icon-close">
2577        </svg>
2578      </span>
2579    </summary>
2580    <div
2581      class="search-modal modal__content gradient"
2582      role="dialog"
2583      aria-modal="true"
2584      aria-label="Search"
2585    >
2586      <div class="modal-overlay"></div>
2587      <div
2588        class="search-modal__content search-modal__content-bottom"
2589        tabindex="-1"
2590      ><predictive-search class="search-modal__form" data-loading-text="Loading..."><form action="/search" method="get" role="search" class="search search-modal__form">
2591          <div class="field">
2592            <input
2593              class="search__input field__input"
2594              id="Search-In-Modal"
2595              type="search"
2596              name="q"
2597              value=""
2598              placeholder="Search"role="combobox"
2599                aria-expanded="false"
2600                aria-owns="predictive-search-results"
2601                aria-controls="predictive-search-results"
2602                aria-haspopup="listbox"
2603                aria-autocomplete="list"
2604                autocorrect="off"
2605                autocomplete="off"
2606                autocapitalize="off"
2607                spellcheck="false">
2608            <label class="field__label" for="Search-In-Modal">Search</label>
2609            <input type="hidden" name="options[prefix]" value="last">
2610            <button
2611              type="reset"
2612              class="reset__button field__button hidden"
2613              aria-label="Clear search term"
2614            >
2615              <svg class="icon icon-close" aria-hidden="true" focusable="false">
2616                <use xlink:href="#icon-reset">
2617              </svg>
2618            </button>
2619            <button class="search__button field__button" aria-label="Search">
2620              <svg class="icon icon-search" aria-hidden="true" focusable="false">
2621                <use href="#icon-search">
2622              </svg>
2623            </button>
2624          </div><div class="predictive-search predictive-search--header" tabindex="-1" data-predictive-search>
2625
2626<link href="//www.lieuditwinery.com/cdn/shop/t/9/assets/component-loading-spinner.css?v=116724955567955766481718808903" rel="stylesheet" type="text/css" media="all" />
2627
2628<div class="predictive-search__loading-state">
2629  <svg
2630    aria-hidden="true"
2631    focusable="false"
2632    class="spinner"
2633    viewBox="0 0 66 66"
2634    xmlns="http://www.w3.org/2000/svg"
2635  >
2636    <circle class="path" fill="none" stroke-width="6" cx="33" cy="33" r="30"></circle>
2637  </svg>
2638</div>
2639</div>
2640
2641            <span class="predictive-search-status visually-hidden" role="status" aria-hidden="true"></span></form></predictive-search><button
2642          type="button"
2643          class="search-modal__close-button modal__close-button link link--text focus-inset"
2644          aria-label="Close"
2645        >
2646          <svg class="icon icon-close" aria-hidden="true" focusable="false">
2647            <use href="#icon-close">
2648          </svg>
2649        </button>
2650      </div>
2651    </div>
2652  </details>
2653</details-modal>
2654
2655<a href="/account/login" class="header__icon header__icon--account link focus-inset small-hide">
2656          <account-icon><svg
2657  xmlns="http://www.w3.org/2000/svg"
2658  aria-hidden="true"
2659  focusable="false"
2660  class="icon icon-account"
2661  fill="none"
2662  viewBox="0 0 18 19"
2663>
2664  <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">
2665</svg>
2666
2667</account-icon>
2668          <span class="visually-hidden">Log in</span>
2669        </a><a href="/cart" class="header__icon header__icon--cart link focus-inset" id="cart-icon-bubble"><svg
2670  class="icon icon-cart-empty"
2671  aria-hidden="true"
2672  focusable="false"
2673  xmlns="http://www.w3.org/2000/svg"
2674  viewBox="0 0 40 40"
2675  fill="none"
2676>
2677  <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"/>
2678</svg>
2679<span class="visually-hidden">Cart</span></a>
2680    </div>
2681  </header>
2682</sticky-header>
2683
2684<script type="application/ld+json">
2685  {
2686    "@context": "http://schema.org",
2687    "@type": "Organization",
2688    "name": "Lieu Dit Winery",
2689    
2690      "logo": "https:\/\/www.lieuditwinery.com\/cdn\/shop\/files\/Logo_2_ca9acc8d-792c-4586-bb04-7ae171f9e86a.png?v=1718201355\u0026width=500",
2691    
2692    "sameAs": [
2693      "",
2694      "",
2695      "",
2696      "",
2697      "",
2698      "",
2699      "",
2700      "",
2701      ""
2702    ],
2703    "url": "https:\/\/www.lieuditwinery.com"
2704  }
2705</script>
2705
2706</div>
2707<!-- END sections: header-group -->
2708
2709    <main id="MainContent" class="content-for-layout focus-none" role="main" tabindex="-1">
2710      <div id="shopify-section-template--15044391534650__main" class="shopify-section"><link href="//www.lieuditwinery.com/cdn/shop/t/9/assets/customer.css?v=34961046807264576181718808903" rel="stylesheet" type="text/css" media="all" />
2711<style data-shopify>.section-template--15044391534650__main-padding {
2712    padding-top: 27px;
2713    padding-bottom: 27px;
2714  }
2715
2716  @media screen and (min-width: 750px) {
2717    .section-template--15044391534650__main-padding {
2718      padding-top: 36px;
2719      padding-bottom: 36px;
2720    }
2721  }</style><div class="customer login section-template--15044391534650__main-padding">
2722  <h1 id="recover" tabindex="-1">
2723    Reset your password
2724  </h1>
2725  <div>
2726    <p>
2727      We will send you an email to reset your password
2728    </p><form method="post" action="/account/recover" accept-charset="UTF-8"><input type="hidden" name="form_type" value="recover_customer_password" /><input type="hidden" name="utf8" value="✓" />
2729      <div class="field">
2730        <input
2731          type="email"
2732          value=""
2733          name="email"
2734          id="RecoverEmail"
2735          autocorrect="off"
2736          autocapitalize="off"
2737          autocomplete="email"
2738          
2739          placeholder="Email"
2740        >
2741        <label for="RecoverEmail">
2742          Email
2743        </label>
2744      </div><button>
2745        Submit
2746      </button>
2747
2748      <a href="#login">
2749        Cancel
2750      </a></form></div>
2751
2752  <h1 id="login" tabindex="-1">
2753    Login
2754  </h1>
2755  <div><form method="post" action="/account/login" id="customer_login" accept-charset="UTF-8" data-login-with-shop-sign-in="true" novalidate="novalidate"><input type="hidden" name="form_type" value="customer_login" /><input type="hidden" name="utf8" value="✓" /><section name="sign-in-with-shop-provider">
2756          
2756<script defer="defer" async type="module" src="https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.shop-login-button.en.esm.js"></script>
vendor: 1 bytes, line 2756
2756
2757<script type="module">
2758  await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.shop-login-button.en.esm.js");
2759
2760  
2761</script>
2761
2762
2763<shop-login-button ux-mode="windoid" return-uri="https://www.lieuditwinery.com/account/redirect" proxy="true" redirect-type="iframe" response-type="code"></shop-login-button>
2764
2765<p>
2766              or
2767            </p></section><div class="field">
2768        <input
2769          type="email"
2770          name="customer[email]"
2771          id="CustomerEmail"
2772          autocomplete="email"
2773          autocorrect="off"
2774          autocapitalize="off"
2775          
2776          placeholder="Email"
2777        >
2778        <label for="CustomerEmail">
2779          Email
2780        </label>
2781      </div><div class="field">
2782          <input
2783            type="password"
2784            value=""
2785            name="customer[password]"
2786            id="CustomerPassword"
2787            autocomplete="current-password"
2788            
2789            placeholder="Password"
2790          >
2791          <label for="CustomerPassword">
2792            Password
2793          </label>
2794        </div>
2795
2796        <a href="#recover">
2797          Forgot your password?
2798        </a><button>
2799        Sign in
2800      </button>
2801
2802      <a href="/account/register">
2803        Create account
2804      </a></form></div></div>
2805
2806
2807</div>
2808    </main>
2809
2810    <!--ECOM-FOOTER--><div id="shopify-section-ecom-mystorefooter-footer" class="shopify-section"> 
2811 
2812 
2813 
2814 <link rel="stylesheet" media="print" onload="this.media='all'" id="ecom-vendors-modal_css" href="https://cdn.ecomposer.app/vendors/css/ecom_modal.css" /><link rel="stylesheet" media="all" id="ecom-vendors-css_ecomposer_base" href="https://cdn.ecomposer.app/vendors/css/ecom-base.css?v=1.6" /><noscript><link rel="stylesheet" media="all" onload="this.media='all'" id="ecom-vendors-modal_css" href="https://cdn.ecomposer.app/vendors/css/ecom_modal.css" /><link rel="stylesheet" media="all" id="ecom-vendors-css_ecomposer_base" href="https://cdn.ecomposer.app/vendors/css/ecom-base.css?v=1.6" /></noscript>
2814<script type="text/javascript" asyc="async" id="ecom-vendors-modal_js" src="https://cdn.ecomposer.app/vendors/js/ecom_modal.js" ></script>
2814
2815<link href="https://fonts.googleapis.com/css?family=Inter:100,200,300,400,500,600,700,800,900&display=swap" rel="stylesheet"/>
2816<link href="//www.lieuditwinery.com/cdn/shop/t/9/assets/ecom-669a60c145ffef8b99037289.css?v=61651008708079888541722800647" rel="stylesheet" type="text/css" media="all" />
2817<script src="//www.lieuditwinery.com/cdn/shop/t/9/assets/ecom-669a60c145ffef8b99037289.js?v=22481965890986681941722728438" defer="defer"></script>
vendor: 1 bytes, line 2817
2817
2818<script type="text/javascript" class="ecom-page-info">
2819 window.EComposer = window.EComposer || {};
2820 window.EComposer.TEMPLATE_ID="669a60c145ffef8b99037289";
2821 window.EComposer.FOOTER = {"template_id":"669a60c145ffef8b99037289","title":"My_Store_Footer","type":"footer","slug":"ecom-mystorefooter","plan_id":4};
2822 </script>
2822
2823<div class="ecom-builder" id="ecom-mystorefooter"><div class="ecom-sections" data-section-id="ecom-mystorefooter-footer"><section class="ecom-row ecom-core ecom-section ecom-22e6j3l3m03" data-id="ecom-22e6j3l3m03" style="z-index: inherit;"><div data-deep="1" class="core__row--columns core__row--full"><div class="ecom-column ecom-core core__column--first ecom-79707ekq78m"><div class="core__column--wrapper"><div class="ecom-column__overlay"><div class="ecom-overlay"></div></div><div class="core__blocks" index="0"><div class="core__blocks--body"><div class="ecom-block ecom-core core__block elmspace ecom-57elijjokwd" data-core-is="block"><div class="ecom-element ecom-base-image" deep="1"><figure><div class="ecom-container-image ecom-image-align" data-stopdrag=""><div data-stopdrag="" class="ecom-image-content-position ecom-image-default ecom-base-image-container-overlay" style=""><a href="https://checkout.lieuditwinery.com/" class="ecom-image-picture-link ecom-image-picture ecom-base-image-container-overlay ecom-flex"><picture><img loading="lazy" fetchpriority="low" src="https://cdn.shopify.com/s/files/1/0070/2804/7908/files/LD_Logo.png?v=1717613680" alt="LD_Logo" width="250" height="260" style=""></picture></a></div></div></figure></div></div> </div></div></div></div> <div class="ecom-column ecom-core ecom-530h72m7ve7"><div class="core__column--wrapper"><div class="ecom-column__overlay"><div class="ecom-overlay"></div></div><div class="core__blocks" index="1"><div class="core__blocks--body"><div class="ecom-block ecom-core core__block elmspace ecom-nean86xfzea" data-core-is="block"><div class="ecom__element element__heading ecom-element ecom-html" data-stopdrag="true" deep="1"><h3 class="ecom__heading ecom-db"><div></div>Join the Community<div><div><div><div><div><div><div></div></div></div></div></div></div></div></h3></div></div> <div class="ecom-block ecom-core core__block ecom-zdq1by80ktq" data-core-is="block"><div class="ecom__element ecom-element element__text" data-stopdrag="" deep="1"><div class="text-content ecom-html has-drop-cap-view-framed"><p>Sign up for our newsletter to get updates on new wines and opportunities.</p></div></div></div> <div class="ecom-block ecom-core core__block ecom-n6f17wkspn" data-core-is="block"><div class="ecom-element ecom-shopify-elements ecom-shopify__newsletter-form" deep="1"><div class="ecom-shopify__newsletter-form-wrapper ecom-w__full"><div class="ecom-shopify__newsletter-form-container"><div>
2824 <form method="post" action="/contact" id="newsletter-form-ecom-n6f17wkspn" accept-charset="UTF-8" class="ecom-shopify__newsletter-form"><input type="hidden" name="form_type" value="customer" /><input type="hidden" name="utf8" value="✓" />
2825 <input type="hidden" name="contact[tags]" value="newsletter" />
2826 <div class="ecom-newsletter-form-content-wrap">
2827 <div class="ecom-newsletter-form-content">
2828 <input
2829 id="ECom-NewsletterForm-ecom-n6f17wkspn"
2830 type="email"
2831 name="contact[email]"
2832 class="ecom-shopify__newsletter-form-field--input"
2833 value=""
2834 aria-required="true"
2835 autocorrect="off"
2836 autocapitalize="off"
2837 autocomplete="email"
2838 
2839 placeholder="Enter your email"
2840 required
2841 >
2842 <button type="submit" class="ecome-shopify__newsletter__button" name="commit">
2843 <span> Submit </span>
2844 <span class="ecom-shopify__newsletter__button-icon"> </span>
2845 </button>
2846 </div>
2847 
2848 </div><div class="ecom-shopify__newsletter-form-message ecom-dn">
2849 <p class="ecom-shopify__newsletter-form-detail-error">
2850 Email have already subscribed!
2851 </p>
2852 </div>
2853 </form>
2854 </div></div></div></div></div> </div></div></div></div> <div class="ecom-column ecom-core core__column--last ecom-swh89mt6fx8"><div class="core__column--wrapper"><div class="ecom-column__overlay"><div class="ecom-overlay"></div></div><div class="core__blocks" index="2"><div class="core__blocks--body"><div class="ecom-block ecom-core core__block elmspace ecom-cxkga84o4ch" data-core-is="block"><div class="ecom-element ecom-shopify ecom-shopify__menu" deep="1"><div class="ecom-element ecom-shopify ecom-shopify__menu-wrapper" data-show-all="false"><div class="ecom-element ecom-shopify ecom-shopify__menu-container">
2855<div class="ecom-shopify__menu-list--wrapper ecom-flex">
2856									<ul class="ecom-shopify__menu-list" data-menu-layout="vertical">
2857										
2858											
2859												
2860												<li class="ecom-shopify__menu-item ecom-shopify__menu-item-type--frontpage_link ecom-shopify__menu-item--has-children ">
2861													<div class="ecom-menu_item ecom-items">
2862														<a class="ecom-menu_title ecom-element--menu_title " href="/" title="Shop" target="_self">
2863															Shop
2864<div class="ecom-element--menu_icon">
2865																	<div class="ecom-items--icon ecom-element--menu_icon--normal">
2866																		
2867																	</div>
2868																	<div class="ecom-items--icon ecom-element--menu_icon--active">
2869																		
2870																	</div>
2871																</div></a>
2872													</div>
2873													
2874<ul class="ecom-shopify__menu-sub-menu" data-menu-size="5" data-menu-level="">
2875															
2876																
2877																<li class="ecom-shopify__menu-child-link-item ecom-shopify__menu-child-link-item-type--collection_link  ecom-shopify__menu-item--link " >
2878																	<div class="ecom-menu_item ecom-items">
2879																		<a class="ecom-menu_title ecom-element--menu_title" href="/collections/best-sellers-copy" title="Shop All" target="_self">
2880																			Shop All
2881</a>
2882																		
2883																	</div>
2884																	</li>
2885															
2886																
2887																<li class="ecom-shopify__menu-child-link-item ecom-shopify__menu-child-link-item-type--collection_link  ecom-shopify__menu-item--link " >
2888																	<div class="ecom-menu_item ecom-items">
2889																		<a class="ecom-menu_title ecom-element--menu_title" href="/collections/whites" title="Whites &amp; Rosé" target="_self">
2890																			Whites & Rosé
2891</a>
2892																		
2893																	</div>
2894																	</li>
2895															
2896																
2897																<li class="ecom-shopify__menu-child-link-item ecom-shopify__menu-child-link-item-type--collection_link  ecom-shopify__menu-item--link " >
2898																	<div class="ecom-menu_item ecom-items">
2899																		<a class="ecom-menu_title ecom-element--menu_title" href="/collections/reds" title="Reds" target="_self">
2900																			Reds
2901</a>
2902																		
2903																	</div>
2904																	</li>
2905															
2906																
2907																<li class="ecom-shopify__menu-child-link-item ecom-shopify__menu-child-link-item-type--collection_link  ecom-shopify__menu-item--link " >
2908																	<div class="ecom-menu_item ecom-items">
2909																		<a class="ecom-menu_title ecom-element--menu_title" href="/collections/large-format" title="Large Format" target="_self">
2910																			Large Format
2911</a>
2912																		
2913																	</div>
2914																	</li>
2915															
2916																
2917																<li class="ecom-shopify__menu-child-link-item ecom-shopify__menu-child-link-item-type--collection_link  ecom-shopify__menu-item--link " >
2918																	<div class="ecom-menu_item ecom-items">
2919																		<a class="ecom-menu_title ecom-element--menu_title" href="/collections/gift-ideas" title="Gift Ideas" target="_self">
2920																			Gift Ideas
2921</a>
2922																		
2923																	</div>
2924																	</li>
2925															
2926														</ul>
2927													
2928												</li>
2929											
2930												
2931												<li class="ecom-shopify__menu-item ecom-shopify__menu-item-type--page_link ecom-shopify__menu-item--has-children ">
2932													<div class="ecom-menu_item ecom-items">
2933														<a class="ecom-menu_title ecom-element--menu_title " href="/pages/our-story" title="About" target="_self">
2934															About
2935<div class="ecom-element--menu_icon">
2936																	<div class="ecom-items--icon ecom-element--menu_icon--normal">
2937																		
2938																	</div>
2939																	<div class="ecom-items--icon ecom-element--menu_icon--active">
2940																		
2941																	</div>
2942																</div></a>
2943													</div>
2944													
2945<ul class="ecom-shopify__menu-sub-menu" data-menu-size="2" data-menu-level="">
2946															
2947																
2948																<li class="ecom-shopify__menu-child-link-item ecom-shopify__menu-child-link-item-type--page_link  ecom-shopify__menu-item--link " >
2949																	<div class="ecom-menu_item ecom-items">
2950																		<a class="ecom-menu_title ecom-element--menu_title" href="/pages/our-story" title="About Us" target="_self">
2951																			About Us
2952</a>
2953																		
2954																	</div>
2955																	</li>
2956															
2957																
2958																<li class="ecom-shopify__menu-child-link-item ecom-shopify__menu-child-link-item-type--page_link  ecom-shopify__menu-item--link " >
2959																	<div class="ecom-menu_item ecom-items">
2960																		<a class="ecom-menu_title ecom-element--menu_title" href="/pages/visit-us" title="Visit Us" target="_self">
2961																			Visit Us
2962</a>
2963																		
2964																	</div>
2965																	</li>
2966															
2967														</ul>
2968													
2969												</li>
2970											
2971												
2972												<li class="ecom-shopify__menu-item ecom-shopify__menu-item-type--page_link  ecom-shopify__menu-item--link ">
2973													<div class="ecom-menu_item ecom-items">
2974														<a class="ecom-menu_title ecom-element--menu_title " href="/pages/club-lieu-dit" title="Club Lieu Dit" target="_self">
2975															Club Lieu Dit
2976</a>
2977													</div>
2978													
2979												</li>
2980											
2981												
2982												<li class="ecom-shopify__menu-item ecom-shopify__menu-item-type--page_link  ecom-shopify__menu-item--link ">
2983													<div class="ecom-menu_item ecom-items">
2984														<a class="ecom-menu_title ecom-element--menu_title " href="/pages/contact-us" title="Contact" target="_self">
2985															Contact
2986</a>
2987													</div>
2988													
2989												</li>
2990											
2991										
2992									</ul>
2993								</div>
2994							</div></div></div></div>
2994 <div class="ecom-block ecom-core core__block elmspace ecom-t8ua7gcnf2" data-core-is="block"><div class="ecom-element ecom-icon ecom-flex" deep="1"><a class="ecom-icon--container ecom-in_flex" href="https://www.instagram.com/lieuditwinery/"><svg width="25" height="25" viewBox="0 0 25 25" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><path d="M7.25 0.1H17.75C21.6948 0.1 24.9 3.30523 24.9 7.25V17.75C24.9 19.6463 24.1467 21.4649 22.8058 22.8058C21.4649 24.1467 19.6463 24.9 17.75 24.9H7.25C3.30523 24.9 0.1 21.6948 0.1 17.75V7.25C0.1 5.3537 0.853302 3.53507 2.19419 2.19419C3.53507 0.853302 5.3537 0.1 7.25 0.1ZM7 2.4C5.78 2.4 4.60998 2.88464 3.74731 3.74731C2.88464 4.60998 2.4 5.78 2.4 7V18C2.4 20.5427 4.45727 22.6 7 22.6H18C19.22 22.6 20.39 22.1154 21.2527 21.2527C22.1154 20.39 22.6 19.22 22.6 18V7C22.6 4.45727 20.5427 2.4 18 2.4H7ZM19.0625 4.475C19.4504 4.475 19.8224 4.62908 20.0966 4.90336C20.3709 5.17763 20.525 5.54962 20.525 5.9375C20.525 6.32538 20.3709 6.69737 20.0966 6.97164C19.8224 7.24592 19.4504 7.4 19.0625 7.4C18.6746 7.4 18.3026 7.24592 18.0284 6.97164C17.7541 6.69737 17.6 6.32538 17.6 5.9375C17.6 5.54962 17.7541 5.17763 18.0284 4.90336C18.3026 4.62908 18.6746 4.475 19.0625 4.475ZM12.5 6.35C14.1311 6.35 15.6954 6.99794 16.8487 8.15129C18.0021 9.30464 18.65 10.8689 18.65 12.5C18.65 14.1311 18.0021 15.6954 16.8487 16.8487C15.6954 18.0021 14.1311 18.65 12.5 18.65C10.8689 18.65 9.30464 18.0021 8.15129 16.8487C6.99794 15.6954 6.35 14.1311 6.35 12.5C6.35 10.8689 6.99794 9.30464 8.15129 8.15129C9.30464 6.99794 10.8689 6.35 12.5 6.35ZM12.5 8.65C11.4789 8.65 10.4997 9.05562 9.77764 9.77764C9.05562 10.4997 8.65 11.4789 8.65 12.5C8.65 13.5211 9.05562 14.5003 9.77764 15.2224C10.4997 15.9444 11.4789 16.35 12.5 16.35C13.5211 16.35 14.5003 15.9444 15.2224 15.2224C15.9444 14.5003 16.35 13.5211 16.35 12.5C16.35 11.4789 15.9444 10.4997 15.2224 9.77764C14.5003 9.05562 13.5211 8.65 12.5 8.65Z" fill="#111113" stroke="#FFF9F2" stroke-width="0.2"></path></svg></a></div></div> <div class="ecom-block ecom-core core__block elmspace ecom-t7mpdqvgoxb" data-core-is="block"><div class="ecom__element element__heading ecom-element ecom-html" data-stopdrag="true" deep="1"><h3 class="ecom__heading ecom-db">© 2024 Lieu Dit Winery</h3></div></div> </div></div></div></div> </div><div class="ecom-section__overlay"><div class="ecom-overlay"></div></div> </section>
2995</div></div>
2996</div><!--/ECOM-FOOTER-->
2997
2998    <ul hidden>
2999      <li id="a11y-refresh-page-message">Choosing a selection results in a full page refresh.</li>
3000      <li id="a11y-new-window-message">Opens in a new window.</li>
3001    </ul>
3002
3003    
3003<script>
3004      window.shopUrl = 'https://www.lieuditwinery.com';
3005      window.routes = {
3006        cart_add_url: '/cart/add',
3007        cart_change_url: '/cart/change',
3008        cart_update_url: '/cart/update',
3009        cart_url: '/cart',
3010        predictive_search_url: '/search/suggest',
3011      };
3012
3013      window.cartStrings = {
3014        error: `There was an error while updating your cart. Please try again.`,
3015        quantityError: `You can only add [quantity] of this item to your cart.`,
3016      };
3017
3018      window.variantStrings = {
3019        addToCart: `Add to cart`,
3020        soldOut: `Sold out`,
3021        unavailable: `Unavailable`,
3022        unavailable_with_option: `[value] - Unavailable`,
3023      };
3024
3025      window.quickOrderListStrings = {
3026        itemsAdded: `[quantity] items added`,
3027        itemAdded: `[quantity] item added`,
3028        itemsRemoved: `[quantity] items removed`,
3029        itemRemoved: `[quantity] item removed`,
3030        viewCart: `View cart`,
3031        each: `[money]/ea`,
3032        min_error: `This item has a minimum of [min]`,
3033        max_error: `This item has a maximum of [max]`,
3034        step_error: `You can only add this item in increments of [step]`,
3035      };
3036
3037      window.accessibilityStrings = {
3038        imageAvailable: `Image [index] is now available in gallery view`,
3039        shareSuccess: `Link copied to clipboard`,
3040        pauseSlideshow: `Pause slideshow`,
3041        playSlideshow: `Play slideshow`,
3042        recipientFormExpanded: `Gift card recipient form expanded`,
3043        recipientFormCollapsed: `Gift card recipient form collapsed`,
3044        countrySelectorSearchCount: `[count] countries/regions found`,
3045      };
3046    </script>
3046<script src="//www.lieuditwinery.com/cdn/shop/t/9/assets/predictive-search.js?v=162273246065392412141718808903" defer="defer"></script>
3046
3047
3048
3049<!-- START BEAE POPUP BUILDER -->
3050<!-- END BEAE POPUP BUILDER -->
3051
3052<!--BEGIN-AGE-VERIFICATION--><!-- Ecomposer Age verification Extension --><!--END-AGE-VERIFICATION-->
3052<script type="module">
3053      import { ChordAnalytics } from 'https://cdn.jsdelivr.net/npm/@chordcommerce/[email protected]/+esm';
3054
3055      const chord = new ChordAnalytics({
3056        cdpDomain: 'https://production.cdp.ingest.chord.co',
3057        cdpWriteKey: 'iPDuQQbWGG3FEMLuJB9StJmQKEHEJtvw:WTg6v12ztlihobrseN2AhkYZmy8yGe48',
3058        enableWebPixelListener: true,
3059        enableIdentifierSync: true,
3060        formatters: {
3061          objects: {},
3062          events: {}
3063        },
3064        metadata: {
3065          i18n: {
3066            currency: "USD",
3067            locale: "en-US",
3068          },
3069          ownership: {
3070            omsId: 'df9d8dad-2906-493e-8f7a-ee8b58d87440',
3071            storeId: 'df9d8dad-2906-493e-8f7a-ee8b58d87440',
3072            tenantId: '5954f655-3669-4583-82ee-ba3ad24251d4',
3073          },
3074          platform: { name: 'shopify', type: 'web' },
3075          store: { domain: 'lieu-dit-winery' },
3076        }
3077      });
3078
3079      window.chord = chord;
3080    </script>
3080
3081<div id="shopify-block-AQ3hNeFE1dUJ4dlA4d__5846654113244447633" class="shopify-block shopify-app-block">
3082
3083<link href="//cdn.shopify.com/extensions/5e39e146-0368-46de-9a5c-89f7f070a322/xo-scroll-to-top-4/assets/xo-scroll2top.css" rel="stylesheet" type="text/css" media="all" />
3084<div id="xo-scroll2top" class="xo-scroll2top xo-scroll2top--1 xo-scroll2top--right
3085     xo-scroll2top--fade "><svg className="xo-small" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg">
3086        <polygon fill=#fff9f2 points="1 28 16 4 31 28 16 18 1 28" />
3087    </svg></div>
3088
3089<style>.xo-scroll2top { --xo-st-bg-color:rgba(215,204,191,1);--xo-st-bg-color2:rgba(17,17,19,1); --xo-st-bd-radius:4px;--xo-st-bd-radius2:3px;--xo-st-width:38px;--xo-st-height:38px;--xo-st-scale: 1;
3090    --xo-st-textColor: rgba(0,0,0,1);--xo-st-textColor2: rgba(35,123,226,1);right: 20px;bottom: 20px; }
3091</style>
3092<script type="text/javascript">
3093const xoscroll2topInit = {
3094      id: 'xo-scroll2top', duration: 100,
3095      appear: -1,
3096      toElement: {elm: '', offset: 0},
3097      status: false  };
3098</script>
vendor: 1 bytes, line 3098
3098
3099<script src="https://cdn.shopify.com/extensions/5e39e146-0368-46de-9a5c-89f7f070a322/xo-scroll-to-top-4/assets/xo-scroll2top.js" defer="defer"></script>
3099
3100
3101
3102</div><!-- Failed to render app block "15685250022964305326": app block path "shopify://apps/elevar-conversion-tracking/blocks/dataLayerEmbed/bc30ab68-b15c-4311-811f-8ef485877ad6" does not exist -->
3102<script src="https://cdn.shopify.com/storefront/standard-actions.js" type="module" data-source-attribution="shopify.standard_actions"></script>
3102
3103</body>
3104</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.