PageSourceSearch

https://lukeslobster.com/

html lukeslobster.com collected 2026-09-25 18:47:16 UTC 345,253 bytes, 6,313 lines download raw bytes

1<!doctype html>
2<html class="no-js" lang="en">
3	    
4	  <link rel="preconnect" href="https://cdn.cookie.pii.ai">
5      <link rel="preconnect" href="https://pieeyegpc.pii.ai" crossorigin="">
6      <link rel="dns-prefetch" href="https://pieeyegpc.pii.ai">
7      <link rel="preconnect" href="https://geo.pii.ai" crossorigin="">
8      <link rel="dns-prefetch" href="https://geo.pii.ai">
9	    
9<script>
10window.dataLayer = window.dataLayer || [];
11function gtag() {
12  dataLayer.push(arguments);
13}
14
15// --- Default Consent States ---
16const DENIED_CONSENT = {
17  functionality_storage: "denied",
18  personalization_storage: "denied",
19  analytics_storage: "denied",
20  ad_storage: "denied",
21  security_storage: "granted",
22  ad_user_data: "denied",
23  ad_personalization: "denied",
24};
25
26const GRANTED_CONSENT = {
27  functionality_storage: "granted",
28  personalization_storage: "granted",
29  analytics_storage: "granted",
30  ad_storage: "granted",
31  security_storage: "granted",
32  ad_user_data: "granted",
33  ad_personalization: "granted",
34};
35
36// --- Geo API ---
37async function getUserLocation() {
38  try {
39    const response = await fetch("https://geo.pii.ai/geo");
40    const data = await response.json();
41    return {
42      continent: data.location.continent.code,
43      country: data.location.country.code,
44      region: data.location.region.code,
45      city: data.location.city,
46      gpc : data.gpc
47    };
48  } catch (error) {
49    console.error("Error getting location from internal API:", error);
50    return null;
51  }
52}
53
54// --- Cookie helper ---
55async function getCookieValue(name) {
56  const match = document.cookie.match(new RegExp("(^| )" + name + "=([^;]+)"));
57  return match ? decodeURIComponent(match[2]) : null;
58}
59
60// --- Region-based rules ---
61async function shouldEnableConsentByDefault(location) {
62  if (!location) return false;
63
64  const { country, region, continent, gpc } = location;
65
66  // EU requires explicit consent
67  if (continent === "EU") return false;
68
69  if (country === "US" && gpc) return false;
70
71  // Canada - Quebec requires explicit consent
72  if (country === "CA" && region === "CA-QC") return false;
73
74  // US - California & Florida requires explicit consent
75  if (country === "US" && ["US-CA","US-FL"].includes(region)) return false;
76
77  // Default: implicit consent allowed
78  return true;
79}
80
81// --- Consent Application ---
82async function applyConsentSettings() {
83  const location = await getUserLocation();
84  if (!location) return false;
85
86  const allowConsent = await shouldEnableConsentByDefault(location);
87
88    // Everywhere else → region rules
89    if (allowConsent) {
90      gtag("consent", "default", GRANTED_CONSENT);
91      gtag("set", "url_passthrough", true);
92      gtag("set", "ads_data_redaction", false);
93    } else {
94      gtag("consent", "default", DENIED_CONSENT);
95      gtag("set", "url_passthrough", false);
96      gtag("set", "ads_data_redaction", true);
97    }
98}
99
100// --- Bootstrap ---
101(async function () {
102  let consentSettings = DENIED_CONSENT;
103  let consentFlag = false;
104
105  // --- Check base consent cookie ---
106  const consentCookie = await getCookieValue("consentGiven");
107  if (consentCookie) {
108    try {
109      consentSettings = JSON.parse(consentCookie);
110      consentFlag = true;
111    } catch {
112      //consentSettings = DENIED_CONSENT;
113	  console.warn('Error while parse cookie')
114    }
115  }
116
117  // --- Apply consent ---
118  if (consentFlag) {
119    await applyConsentSettings();
120    gtag("consent", "update", consentSettings);
121  } else {
122    await applyConsentSettings();
123  }
124
125  // --- Advanced consent cookie ---
126  const consentAdvance = await getCookieValue("consentAdvanceSetting");
127  if (consentAdvance) {
128    try {
129      const consentAdvanceSetting = JSON.parse(consentAdvance);
130      if (consentAdvanceSetting && typeof consentAdvanceSetting === "object") {
131        Object.entries(consentAdvanceSetting).forEach(([key, value]) => {
132          gtag("set", key, value);
133        });
134      } else {
135        throw new Error("Invalid consent object");
136      }
137    } catch (e) {
138      console.warn("Invalid consentAdvanceSetting cookie", e);
139    }
140  }
141
142  // Expose flag globally
143  window.consentFlag = consentFlag;
144})();
145</script>
145
146	     
146<script type="text/javascript" src="https://cdn.cookie.pii.ai/scripts/1/ws/812a7147-4944-4445-bd50-41fe46f1e944/domain/79710111-0ba2-4094-8233-01378cc90697/pieeyeBlocking-lukeslobster.js" async></script>
146
147	     <!-- Start of PieEye DNSS Script -->
148	       <link rel="stylesheet" href="https://pieeyegpc.pii.ai/1/dsrp/925406a0-8da7-4992-a1ca-8cb1baf88d73/gpc.css">
149	  
150	       
150<script type="text/javascript" src="https://pieeyegpc.pii.ai/1/dsrp/925406a0-8da7-4992-a1ca-8cb1baf88d73/gpc.min.js" async></script>
150
151	     <!-- End of PieEye DNSS Script -->
152    
153<script src="https://www.dwin1.com/19038.js" type="text/plain" class="pieeye-category-functional" defer="defer"></script>
153
154<!-- BEGIN SMART RECOGNITION CODE -->
155<script type="text/plain" class="pieeye-category-performance">
156var _avp = _avp || [];
157(function() {
158  var s = document.createElement('script');
159  s.type = 'text/javascript'; s.async = true; s.src = 'https://portal.smartrecognition.com/js/libcode3.js';
160  var x = document.getElementsByTagName('script')[0];
161  x.parentNode.insertBefore(s, x);
162})();
163</script>
163
164<div data-tagid="PrE7SPfPZZUmpJaHouEE">
165
166	
166<script type="text/javascript">
167var _avp = _avp || [];
168if (!document.cookie || document.cookie.indexOf('AVPDCAP=') == -1) {
169  _avp.push({ tagid: 'PrE7SPfPZZUmpJaHouEE', alias: '/', type: 'dynamic', zid: 7867, pid: 5382, secure: true });
170}
171</script>
171
172
173</div>
174<!-- END SMART RECOGNITION CODE -->
175<head>
176<script type="text/plain" class="pieeye-category-targeting-analytics">
177    (function(c,l,a,r,i,t,y){
178        c[a]=c[a]||function(){(c[a].q=c[a].q||[]).push(arguments)};
179        t=l.createElement(r);t.async=1;t.src="https://www.clarity.ms/tag/"+i;
180        y=l.getElementsByTagName(r)[0];y.parentNode.insertBefore(t,y);
181    })(window, document, "clarity", "script", "unhq9qbr4k");
182</script>
182
183	<meta charset="utf-8">
184	<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
185	<meta name="viewport" content="width=device-width,initial-scale=1">
186  <meta name="google-site-verification" content="HxnJT9FDN2TG_w-FFdnkbdtQrdEeQBg5dflwZLHIVYE" />
187  <meta name="facebook-domain-verification" content="afzlvjdksm7b0a65wtm3l1d61qc9j5" />
188  <meta name=”msvalidate.01″ content=”HxnJT9FDN2TG_w-FFdnkbdtQrdEeQBg5dflwZLHIVYE” />
189	<meta name="theme-color" content="#3a3a3a">
190	<link rel="canonical" href="https://lukeslobster.com/">
191	<link rel="preload" href="https://odd.identixweb.com/order-delivery-date/front_scripts/static/js/406.main.chunk.min.js" as="script">
192<link rel="preload" href="https://odd.identixweb.com/order-delivery-date/front_scripts/static/js/238.main.chunk.min.js" as="script">
193<script src="https://www.googleoptimize.com/optimize.js?id=OPT-WWMZJ4B"></script>
193<link rel="shortcut icon" href="//lukeslobster.com/cdn/shop/files/LL_Logo_32x32.png?v=1613599888" type="image/png"><title>Luke’s Lobster®
194&ndash;  Luke&#39;s Lobster</title>
195	
196
197<meta name="description" content="Official site for Luke’s Lobster. Get shack locations throughout the US and internationally, ship lobster domestically via our online market with same and next day shipping options, or find us in your local grocery store."><!-- /snippets/social-meta-tags.liquid -->
198
199
200
201
202<meta property="og:site_name" content=" Luke&#39;s Lobster">
203<meta property="og:url" content="https://lukeslobster.com/">
204<meta property="og:title" content="Luke’s Lobster®">
205<meta property="og:type" content="website">
206<meta property="og:description" content="Official site for Luke’s Lobster. Get shack locations throughout the US and internationally, ship lobster domestically via our online market with same and next day shipping options, or find us in your local grocery store.">
207
208
209
210
211
212  <meta name="twitter:site" content="@LukesLobster">
213
214<meta name="twitter:card" content="summary_large_image">
215<meta name="twitter:title" content="Luke’s Lobster®">
216<meta name="twitter:description" content="Official site for Luke’s Lobster. Get shack locations throughout the US and internationally, ship lobster domestically via our online market with same and next day shipping options, or find us in your local grocery store.">
217
218
219    <!-- Styles -->
220	<link rel="stylesheet" href="https://unpkg.com/aos@next/dist/aos.css" />
221	<link href="//lukeslobster.com/cdn/shop/t/22/assets/theme.scss.css?v=109821702912809686261762977493" rel="stylesheet" type="text/css" media="all" />
222    <link href="//lukeslobster.com/cdn/shop/t/22/assets/custom.css?v=35817060917422634761645190537" rel="stylesheet" type="text/css" media="all" />
223	<link href="//lukeslobster.com/cdn/shop/t/22/assets/styles.min.css?v=105218194582480627701781632388" rel="stylesheet" type="text/css" media="all" />
224	<!-- Slick -->
225    <link href="//lukeslobster.com/cdn/shop/t/22/assets/slick.min.css?v=60281339823247927561629734491" rel="stylesheet" type="text/css" media="all" />
226	<link href="//lukeslobster.com/cdn/shop/t/22/assets/accessible-slick-theme.min.css?v=142764853037847278881636745488" rel="stylesheet" type="text/css" media="all" />
227
228	<!-- Fancy Box script & Styles -->
229	<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fancyapps/[email protected]/dist/fancybox.css" />
230	
230<script  type="text/javascript" src="https://cdn.jsdelivr.net/npm/@fancyapps/[email protected]/dist/fancybox.umd.js" defer="defer"></script>
230
231
232	
232<script>
233		var theme = {
234			breakpoints: {
235				medium: 750,
236				large: 990,
237				widescreen: 1400
238			},
239			strings: {
240				addToCart: "Add to cart",
241				soldOut: "Sold out",
242				unavailable: "Unavailable",
243				regularPrice: "Regular price",
244				salePrice: "Sale price",
245				sale: "Sale",
246				fromLowestPrice: "from [price]",
247				vendor: "Vendor",
248				showMore: "Show More",
249				showLess: "Show Less",
250				searchFor: "Search for",
251				addressError: "Error looking up that address",
252				addressNoResults: "No results for that address",
253				addressQueryLimit: "You have exceeded the Google API usage limit. Consider upgrading to a \u003ca href=\"https:\/\/developers.google.com\/maps\/premium\/usage-limits\"\u003ePremium Plan\u003c\/a\u003e.",
254				authError: "There was a problem authenticating your Google Maps account.",
255				newWindow: "Opens in a new window.",
256				external: "Opens external website.",
257				newWindowExternal: "Opens external website in a new window.",
258				removeLabel: "Remove [product]",
259				update: "Update",
260				quantity: "Quantity",
261				discountedTotal: "Discounted total",
262				regularTotal: "Regular total",
263				priceColumn: "See Price column for discount details.",
264				quantityMinimumMessage: "Quantity must be 1 or more",
265				cartError: "There was an error while updating your cart. Please try again.",
266				removedItemMessage: "Removed \u003cspan class=\"cart__removed-product-details\"\u003e([quantity]) [link]\u003c\/span\u003e from your cart.",
267				unitPrice: "Unit price",
268				unitPriceSeparator: "per",
269				oneCartCount: "1 item",
270				otherCartCount: "[count] items",
271				quantityLabel: "Quantity: [count]",
272				products: "Products",
273				loading: "Loading",
274				number_of_results: "[result_number] of [results_count]",
275				number_of_results_found: "[results_count] results found",
276				one_result_found: "1 result found"
277			},
278			moneyFormat: "${{amount}}",
279			moneyFormatWithCurrency: "${{amount}} USD",
280			settings: {
281				predictiveSearchEnabled: true,
282				predictiveSearchShowPrice: false,
283				predictiveSearchShowVendor: false
284			}
285		}
286
287		document.documentElement.className = document.documentElement.className.replace('no-js', 'js');
288	</script>
288<script>
289  window.themeSettings = {
290    enable_cart_drawer: true
291  };
292</script>
292
293
294    <!-- Scripts -->
295	
295<script src="//lukeslobster.com/cdn/shop/t/22/assets/lazysizes.js?v=94224023136283657951629734472" async="async"></script>
295
296	
296<script src="//lukeslobster.com/cdn/shop/t/22/assets/vendor.js?v=90215607301161263901629734500" defer="defer"></script>
296
297	
297<script src="//lukeslobster.com/cdn/shop/t/22/assets/theme.js?v=9838616287431525121762871087" defer="defer"></script>
297
298	
298<script src="//lukeslobster.com/cdn/shop/t/22/assets/production.min.js?v=79593199049135918551781633031" defer="defer"></script>
298
299	
299<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
299
300
301   <!-- Google Tag Manager -->
302<script>
vendor: 327 bytes, lines 302-306
302(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
303new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
304j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
305'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
306})(window,document,'script','dataLayer','
306GTM-MJDSVL2
vendor: 3 bytes, line 306
306');
306</script>
306
307<!-- End Google Tag Manager -->
308
309
310<script>
311	
vendor: 131 bytes, lines 311-315
311window.dataLayer = window.dataLayer || [];
312	function gtag(){dataLayer.push(arguments);}
313	gtag('js', new Date());
314
315	gtag('config', '
315AW-822214704
vendor: 6 bytes, lines 315-316
315');
316  
316</script>
316
317
318
319<!-- Font Awesome -->
320<script type="text/javascript" src="https://kit.fontawesome.com/e1e30ecf8a.js" crossorigin="anonymous" defer="defer"></script>
320
321
322
323	
323<script>!function(){window.ZipifyPages=window.ZipifyPages||{},window.ZipifyPages.analytics={},window.ZipifyPages.currency="USD",window.ZipifyPages.shopDomain="lukes-lobster-shop.myshopify.com",window.ZipifyPages.moneyFormat="${{amount}}",window.ZipifyPages.shopifyOptionsSelector=false,window.ZipifyPages.unitPriceEnabled=false,window.ZipifyPages.integrations="".split(","),window.ZipifyPages.crmUrl="https://crms.zipify.com",window.ZipifyPages.isPagesEntity=false,window.ZipifyPages.translations={soldOut:"Sold out",unavailable:"Unavailable"},window.ZipifyPages.routes={root:"\/",cart:{index:"\/cart",add:"\/cart\/add",change:"\/cart\/change",clear:"\/cart\/clear",update:"\/cart\/update"}};window.ZipifyPages.eventsSubscriptions=[],window.ZipifyPages.on=function(i,a){window.ZipifyPages.eventsSubscriptions.push([i,a])}}();</script>
323<script>(() => {
324(()=>{class g{constructor(t={}){this.defaultConfig={sectionIds:[],rootMargin:"0px",onSectionViewed:()=>{},onSectionInteracted:()=>{},minViewTime:500,minVisiblePercentage:30,interactiveSelector:'a, button, input, select, textarea, [role="button"], [tabindex]:not([tabindex="-1"])'},this.config={...this.defaultConfig,...t},this.viewedSections=new Set,this.observer=null,this.viewTimers=new Map,this.init()}init(){document.readyState==="loading"?document.addEventListener("DOMContentLoaded",this.setup.bind(this)):this.setup()}setup(){this.setupObserver(),this.setupGlobalClickTracking()}setupObserver(){const t={root:null,rootMargin:this.config.rootMargin,threshold:[0,.1,.2,.3,.4,.5,.6,.7,.8,.9,1]};this.observer=new IntersectionObserver(e=>{e.forEach(i=>{this.calculateVisibility(i)?this.handleSectionVisible(i.target):this.handleSectionHidden(i.target)})},t),this.config.sectionIds.forEach(e=>{const i=document.getElementById(e);i&&this.observer.observe(i)})}calculateVisibility(t){const e=window.innerHeight,i=window.innerWidth,n=e*i,o=t.boundingClientRect,s=Math.max(0,o.top),c=Math.min(e,o.bottom),d=Math.max(0,o.left),a=Math.min(i,o.right),r=Math.max(0,c-s),l=Math.max(0,a-d)*r,m=n>0?l/n*100:0,h=o.width*o.height,p=h>0?l/h*100:0,S=m>=this.config.minVisiblePercentage,b=p>=80;return S||b}isSectionViewed(t){return this.viewedSections.has(Number(t))}setupGlobalClickTracking(){document.addEventListener("click",t=>{const e=this.findParentTrackedSection(t.target);if(e){const i=this.findInteractiveElement(t.target,e.el);i&&(this.isSectionViewed(e.id)||this.trackSectionView(e.id),this.trackSectionInteract(e.id,i,t))}})}findParentTrackedSection(t){let e=t;for(;e&&e!==document.body;){const i=e.id||e.dataset.zpSectionId,n=i?parseInt(i,10):null;if(n&&!isNaN(n)&&this.config.sectionIds.includes(n))return{el:e,id:n};e=e.parentElement}return null}findInteractiveElement(t,e){let i=t;for(;i&&i!==e;){if(i.matches(this.config.interactiveSelector))return i;i=i.parentElement}return null}trackSectionView(t){this.viewedSections.add(Number(t)),this.config.onSectionViewed(t)}trackSectionInteract(t,e,i){this.config.onSectionInteracted(t,e,i)}handleSectionVisible(t){const e=t.id,i=setTimeout(()=>{this.isSectionViewed(e)||this.trackSectionView(e)},this.config.minViewTime);this.viewTimers.set(e,i)}handleSectionHidden(t){const e=t.id;this.viewTimers.has(e)&&(clearTimeout(this.viewTimers.get(e)),this.viewTimers.delete(e))}addSection(t){if(!this.config.sectionIds.includes(t)){this.config.sectionIds.push(t);const e=document.getElementById(t);e&&this.observer&&this.observer.observe(e)}}}class f{constructor(){this.sectionTracker=new g({onSectionViewed:this.onSectionViewed.bind(this),onSectionInteracted:this.onSectionInteracted.bind(this)}),this.runningSplitTests=[]}getCookie(t){const e=document.cookie.match(new RegExp(`(?:^|; )${t}=([^;]*)`));return e?decodeURIComponent(e[1]):null}setCookie(t,e){let i=`${t}=${encodeURIComponent(e)}; path=/; SameSite=Lax`;location.protocol==="https:"&&(i+="; Secure");const n=new Date;n.setTime(n.getTime()+365*24*60*60*1e3),i+=`; expires=${n.toUTCString()}`,document.cookie=i}pickByWeight(t){const e=Object.entries(t).map(([o,s])=>[Number(o),s]),i=e.reduce((o,[,s])=>o+s,0);let n=Math.random()*i;for(const[o,s]of e){if(n<s)return o;n-=s}return e[e.length-1][0]}render(t){const e=t.blocks,i=t.test,n=i.id,o=`zpSectionSplitTest${n}`;let s=Number(this.getCookie(o));e.some(r=>r.id===s)||(s=this.pickByWeight(i.distribution),this.setCookie(o,s));const c=e.find(r=>r.id===s),d=`sectionSplitTest${c.id}`,a=document.querySelector(`template[data-id="${d}"]`);if(!a){console.error(`Template for split test ${c.id} not found`);return}document.currentScript.parentNode.insertBefore(a.content.cloneNode(!0),document.currentScript),this.runningSplitTests.push({id:n,block:c,templateId:d}),this.initTrackingForSection(c.id)}findSplitTestForSection(t){return this.runningSplitTests.find(e=>e.block.id===Number(t))}initTrackingForSection(t){this.sectionTracker.addSection(t)}onSectionViewed(t){this.trackEvent({sectionId:t,event:"zp_section_viewed"})}onSectionInteracted(t){this.trackEvent({sectionId:t,event:"zp_section_clicked"})}trackEvent({event:t,sectionId:e,payload:i={}}){const n=this.findSplitTestForSection(e);n&&window.Shopify.analytics.publish(t,{...i,sectionId:e,splitTestHash:n.id})}}window.ZipifyPages??={};window.ZipifyPages.SectionSplitTest=new f;})();
325
326})()</script>
326<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
326<meta name="google-site-verification" content="RWz2yjfuodEnf8mpQH6sXKuBDQxQViQJey9IIJJDVNM">
327<meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/36382998667/digital_wallets/dialog">
328<link rel="ucp" href="/.well-known/ucp" version="2026-08-25">
328<script async="async" src="/checkouts/internal/preloads.js?locale=en-US&default_configuration_id=113016971"></script>
328
329<link rel="preconnect" href="https://shop.app" crossorigin="anonymous">
330<script async="async" src="https://shop.app/checkouts/internal/preloads.js?locale=en-US&default_configuration_id=113016971&shop_id=36382998667" crossorigin="anonymous"></script>
vendor: 1 bytes, line 330
330
331<script id="apple-pay-shop-capabilities" type="application/json">{"shopId":36382998667,"countryCode":"US","currencyCode":"USD","merchantCapabilities":["supports3DS"],"merchantId":"gid:\/\/shopify\/Shop\/36382998667","merchantName":" Luke's Lobster","requiredBillingContactFields":["postalAddress","email","phone"],"requiredShippingContactFields":["postalAddress","email","phone"],"shippingType":"shipping","supportedNetworks":["visa","masterCard","amex","discover","elo","jcb"],"total":{"type":"pending","label":" Luke's Lobster","amount":"1.00"},"shopifyPaymentsEnabled":true,"supportsSubscriptions":true}</script>
vendor: 1 bytes, line 331
331
332<script id="shopify-features" type="application/json">{"accessToken":"7831df81aec7ebe10597f4893aa93bd4","betas":["rich-media-storefront-analytics"],"domain":"lukeslobster.com","predictiveSearch":true,"shopId":36382998667,"locale":"en"}</script>
vendor: 1 bytes, line 332
332
333<script>var Shopify = Shopify || {};
334Shopify.shop = "lukes-lobster-shop.myshopify.com";
335Shopify.locale = "en";
336Shopify.currency = {"active":"USD","rate":"1.0"};
337Shopify.country = "US";
338Shopify.theme = {"name":"Luke's Lobster - Vont 11\/17","id":120456675467,"schema_name":"Debut","schema_version":"16.5.0","theme_store_id":796,"role":"main"};
339Shopify.theme.handle = "null";
340Shopify.theme.style = {"id":null,"handle":null};
341Shopify.cdnHost = "lukeslobster.com/cdn";
342Shopify.routes = Shopify.routes || {};
343Shopify.routes.root = "/";
344Shopify.shopJsCdnBaseUrl = "https://cdn.shopify.com/shopifycloud/shop-js";
345Shopify.SignInWithShop = Shopify.SignInWithShop || {};
346Shopify.SignInWithShop.User = Shopify.SignInWithShop.User || {};
347Shopify.SignInWithShop.User.recognized = false;</script>
vendor: 1 bytes, line 347
347
348<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
vendor: 1 bytes, line 348
348
349<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 349
349
350<script>
351  window.ShopifyPay = window.ShopifyPay || {};
352  window.ShopifyPay.apiHost = "shop.app\/pay";
353  window.ShopifyPay.redirectState = null;
354</script>
vendor: 1 bytes, line 354
354
355<script>
356  window.Shopify = window.Shopify || {};
357  window.Shopify.SignInWithShop = window.Shopify.SignInWithShop || {};
358  window.Shopify.SignInWithShop.assetMetrics = { sampleRate: 0.25 };
359  window.Shopify.SignInWithShop.eligible = true;
360</script>
vendor: 1 bytes, line 360
360
361<script id="shop-js-analytics" type="application/json">{"pageType":"index"}</script>
vendor: 1 bytes, line 361
361
362<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 362
362
363<script type="module">
364  await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js");
365
366  window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true});
367
368</script>
vendor: 1 bytes, line 368
368
369<script>
370  window.Shopify = window.Shopify || {};
371  if (!window.Shopify.featureAssets) window.Shopify.featureAssets = {};
372  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"]};
373</script>
vendor: 1 bytes, line 373
373
374<script>(function() {
375  var isLoaded = false;
376  function asyncLoad() {
377    if (isLoaded) return;
378    isLoaded = true;
379    var urls = ["https:\/\/str.rise-ai.com\/?shop=lukes-lobster-shop.myshopify.com","https:\/\/strn.rise-ai.com\/?shop=lukes-lobster-shop.myshopify.com","\/\/cdn.shopify.com\/proxy\/8bd5b5fcedc201be360d98fff81102cde3d4e65ee873054b22969aee080baf19\/bingshoppingtool-t2app-prod.trafficmanager.net\/uet\/tracking_script?shop=lukes-lobster-shop.myshopify.com\u0026sp-cache-control=cHVibGljLCBtYXgtYWdlPTkwMA","https:\/\/contact-forms-s.esc-apps-cdn.com\/production\/js\/client.js?shop=lukes-lobster-shop.myshopify.com","https:\/\/contact-forms-s.esc-apps-cdn.com\/production\/js\/client.js?shop=lukes-lobster-shop.myshopify.com","https:\/\/cdn.cookie.pii.ai\/scripts\/1\/ws\/812a7147-4944-4445-bd50-41fe46f1e944\/domain\/79710111-0ba2-4094-8233-01378cc90697\/shopify-loadscript-79710111-0ba2-4094-8233-01378cc90697.js?shop=lukes-lobster-shop.myshopify.com","https:\/\/static.shareasale.com\/json\/shopify\/shareasale-tracking.js?sasmid=100421\u0026ssmtid=92611\u0026shop=lukes-lobster-shop.myshopify.com","\/\/backinstock.useamp.com\/widget\/23266_1783059479.js?category=bis\u0026v=6\u0026shop=lukes-lobster-shop.myshopify.com"];
380    for (var i = 0; i < urls.length; i++) {
381      var s = document.createElement('script');
382      s.type = 'text/javascript';
383      s.async = true;
384      s.src = urls[i];
385      var x = document.getElementsByTagName('script')[0];
386      x.parentNode.insertBefore(s, x);
387    }
388  };
389  if(window.attachEvent) {
390    window.attachEvent('onload', asyncLoad);
391  } else {
392    window.addEventListener('load', asyncLoad, false);
393  }
394})();</script>
vendor: 1 bytes, line 394
394
395<script id="__st">var __st={"a":36382998667,"offset":-14400,"reqid":"618fb17b-45a8-45fb-8735-f4c48db608b7-1790360832","pageurl":"lukeslobster.com\/?srsltid=AU7gw4U3KRwRADfwlJq9GpnMml2P_DLk6r9nQd5C0VOg8veZhrWCCeBP","u":"d68b0024ae69","p":"home"};</script>
vendor: 1 bytes, line 395
395
396<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
vendor: 1 bytes, line 396
396
397<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 397
397
398<script integrity="sha256-JjoPp5ZfB1sSAs5SQaol1x1GgvveM+BgmRzyDexInEQ=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//lukeslobster.com/cdn/shopifycloud/storefront/assets/storefront/load_feature-1bd60354.js" crossorigin="anonymous"></script>
vendor: 1 bytes, line 398
398
399<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 = "//lukeslobster.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>
399<script crossorigin="anonymous" defer="defer" src="//lukeslobster.com/cdn/shopifycloud/storefront/assets/shopify_pay/storefront-616277c7.js?v=20250812"></script>
vendor: 1 bytes, line 399
399
400<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 400
400
401<script>
402  window.Shopify = window.Shopify || {};
403  window.Shopify.MCP = window.Shopify.MCP || {};
404  window.Shopify.MCP.enabled = true;
405  window.Shopify.MCP.shop = "lukes-lobster-shop.myshopify.com";
406  window.Shopify.MCP.mcpEndpoint = "https:\/\/lukeslobster.com\/api\/mcp";
407  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"]}}];
408</script>
vendor: 1 bytes, line 408
408
409<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("\/\/lukeslobster.com\/cdn\/shopifycloud\/storefront\/assets\/storefront\/webmcp-c6b62ece.js","sha256-ke4DDuBjdvea3vxLWxHc9E9nq8zihuG4IfYEGbb77ys=");})();
410</script>
vendor: 1 bytes, line 410
410
411<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://lukeslobster.com/cdn/shopifycloud/portable-wallets/latest/portable-wallets.en.js",t.type="module",document.head.appendChild(t)}};
412</script>
vendor: 1 bytes, line 412
412
413<script data-source-attribution="shopify.dynamic_checkout.buyer_consent">
414  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);
415</script>
vendor: 1 bytes, line 415
415
416<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})}}));
417</script>
417
418<link id="shopify-accelerated-checkout-styles" rel="stylesheet" media="screen" href="https://lukeslobster.com/cdn/shopifycloud/portable-wallets/latest/accelerated-checkout-backwards-compat.css" crossorigin="anonymous">
419<style id="shopify-accelerated-checkout-cart">
420        #shopify-buyer-consent {
421  margin-top: 1em;
422  display: inline-block;
423  width: 100%;
424}
425
426#shopify-buyer-consent.hidden {
427  display: none;
428}
429
430#shopify-subscription-policy-button {
431  background: none;
432  border: none;
433  padding: 0;
434  text-decoration: underline;
435  font-size: inherit;
436  cursor: pointer;
437}
438
439#shopify-subscription-policy-button::before {
440  box-shadow: none;
441}
442
443      </style>
444
445<script id="shopify-cfh-end">window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
445
446  
447  
447<script>
448  function getCookie(name) {
449    const value = `; ${document.cookie}`;
450    const parts = value.split(`; ${name}=`);
451    if (parts.length === 2) return parts.pop().split(';').shift();
452    return null;
453  }
454  
455  // Helper function to check and apply checkout consent
456  function checkAndApplyCheckoutConsent() {
457    try {
458      // Try getTrackingConsent() first
459      const trackingConsent = window.Shopify.customerPrivacy.getTrackingConsent();
460  
461      // Handle string responses - "no" means explicitly denied, "yes" means explicitly granted
462      if (typeof trackingConsent === 'string') {
463        if (trackingConsent === "no" || trackingConsent === "NO") {
464          return {
465            found: true,
466            consent: {
467              analytics: typeof window.Shopify?.customerPrivacy?.analyticsProcessingAllowed === "function"
468                ? window.Shopify.customerPrivacy.analyticsProcessingAllowed() === true
469                : false,
470              marketing: typeof window.Shopify?.customerPrivacy?.marketingAllowed === "function"
471                ? window.Shopify.customerPrivacy.marketingAllowed() === true
472                : false,
473              preferences: typeof window.Shopify?.customerPrivacy?.preferencesProcessingAllowed === "function"
474                ? window.Shopify.customerPrivacy.preferencesProcessingAllowed() === true
475                : false,
476              sale_of_data: typeof window.Shopify?.customerPrivacy?.marketingAllowed === "function"
477                ? window.Shopify.customerPrivacy.marketingAllowed() === true
478                : false,
479            }
480          };
481        } else if (trackingConsent === "yes" || trackingConsent === "YES") {
482          // When "yes", we should check if there are specific consent values stored
483          // For now, treat "yes" as all granted, but ideally we'd get the actual values
484          // This might need to be handled via subscribe callback for detailed consent
485          return {
486            found: true,
487            // If consent found means needs to set yes, but should check each category
488            consent: {
489              analytics: typeof window.Shopify?.customerPrivacy?.analyticsProcessingAllowed === "function"
490                ? window.Shopify.customerPrivacy.analyticsProcessingAllowed() === true
491                : false,
492              marketing: typeof window.Shopify?.customerPrivacy?.marketingAllowed === "function"
493                ? window.Shopify.customerPrivacy.marketingAllowed() === true
494                : false,
495              preferences: typeof window.Shopify?.customerPrivacy?.preferencesProcessingAllowed === "function"
496                ? window.Shopify.customerPrivacy.preferencesProcessingAllowed() === true
497                : false,
498              sale_of_data: typeof window.Shopify?.customerPrivacy?.marketingAllowed === "function"
499                ? window.Shopify.customerPrivacy.marketingAllowed() === true
500                : false,
501            }
502          };
503        } 
504      }
505    } catch (e) {
506      console.warn('Error checking getTrackingConsent():', e);
507    }
508    return { found: false, consent: null };
509  }
510  
511   // --- Geo API ---
512  async function getUserLocation() {
513    try {
514      const response = await fetch("https://geo.pii.ai/geo");
515      const data = await response.json();
516      return {
517        continent: data.location.continent.code,
518        country: data.location.country.code,
519        region: data.location.region.code,
520        city: data.location.city,
521        gpc: data.gpc
522      };
523    } catch (error) {
524      console.error("Error getting location from internal API:", error);
525      return null;
526    }
527  }
528
529  // --- Region-based rules ---
530  async function shouldEnableConsentByDefault(location) {
531    if (!location) return false;
532
533    const { country, region, continent, gpc } = location;
534    
535    // EU requires explicit consent
536    if (continent === "EU") return false;
537    
538    // GPC for US
539    if (gpc && country === "US") return false;
540
541    // Canada - Quebec requires explicit consent
542    if (country === "CA" && region === "CA-QC") return false;
543
544 // US - California & Florida requires explicit consent
545    if (country === "US" && ["US-CA","US-FL"].includes(region)) return false;
546
547    // Default: implicit consent allowed
548    return true;
549  }
550
551  async function applyConsentSettings() {
552    const location = await getUserLocation();
553    return shouldEnableConsentByDefault(location);
554  }
555  
556  
557  // Main consent initialization function
558  function initializeConsent() {
559    let checkoutConsentFound = false;
560    let consentInitialized = false;
561  
562    // Helper function to apply PieEye cookie logic
563    async function applyPieEyeLogic() {
564      if (consentInitialized) return; // Already initialized
565      consentInitialized = true;
566  
567      console.log('Consent - No checkout consent found, checking PieEye cookie');
568      const pieEyeCookie = getCookie('PieEyeConsent');
569  
570      if (!pieEyeCookie) {
571          console.log('Consent - PieEyeConsent cookie not found, setting initial consent');
572         const allowedConsent = await applyConsentSettings();
573
574		if (!allowedConsent) {
575			window.Shopify.customerPrivacy.setTrackingConsent(
576			{
577				analytics: false,
578				marketing: false,
579				preferences: false,
580				sale_of_data: false,
581			},
582			() => console.log('Default explicit consent set')
583			);
584		} else {
585			window.Shopify.customerPrivacy.setTrackingConsent(
586			{
587				analytics: true,
588				marketing: true,
589				preferences: true,
590				sale_of_data: true,
591			},
592			() => console.log('Default Implied consent set')
593			);
594		}
595      } else {
596        console.log('Consent - PieEyeConsent cookie found, using existing consent settings');
597      }
598    }
599 
600    // First, try to get checkout consent immediately
601    const immediateCheck = checkAndApplyCheckoutConsent();
602    if (immediateCheck.found) {
603      if (immediateCheck.consent) {
604        // We have the actual consent values, apply them immediately
605        console.log('Consent - Checkout consent found immediately with values, applying it:', immediateCheck.consent);
606        checkoutConsentFound = true;
607        consentInitialized = true;
608        window.Shopify.customerPrivacy.setTrackingConsent(immediateCheck.consent, () => {
609          console.log('Consent - Checkout consent applied successfully');
610        });
611        // Map our categories to appropriate cookie categories
612        // Strictly Necessary: always true (Shopify core requirement)
613        // Functionality: preferences
614        // Performance: analytics
615        // Targeting/Advertising: marketing or sale_of_data
616        // Create a cookie with the names of categories that are granted (true)
617        var grantedCategories = [];
618        grantedCategories.push('Strictly Necessary');
619        if (immediateCheck.consent.analytics === true) grantedCategories.push('Performance');
620        if (immediateCheck.consent.marketing === true || immediateCheck.consent.sale_of_data === true) grantedCategories.push('Targeting/Advertising');
621        if (immediateCheck.consent.preferences === true) grantedCategories.push('Functionality');
622        if (grantedCategories.length > 0) {
623          const domain = window.location.hostname;
624          //document.cookie = `pieeye-checkout-consent=${grantedCategories.join(',')};path=/;max-age=31536000;domain=${domain};SameSite=None;Secure`;
625          //document.cookie = `pieeye-checkout-consent=${grantedCategories.join(',')}; path=/; max-age=31536000;`;
626        }
627        return; // Exit early, skip PieEye cookie logic
628      } else {
629        // Consent exists but we need to wait for subscribe to get the actual values
630        console.log('Consent - waiting for subscribe callback to get values');
631        checkoutConsentFound = true; // Mark as found so we don't run PieEye logic
632        // Don't set consentInitialized yet - wait for subscribe to provide values
633      }
634    }
635  
636    // Subscribe to detect consent from checkout
637    let subscribeFired = false;
638    let pieEyeLogicApplied = false;
639  
640    if (typeof window.Shopify.customerPrivacy.subscribe === 'function') {
641      window.Shopify.customerPrivacy.subscribe(function(consent) {
642        console.log('Consent - subscribe callback received:', JSON.stringify(consent, null, 2));
643        subscribeFired = true;
644  
645        // First, try getTrackingConsent() again (it might be available now)
646        const trackingCheck = checkAndApplyCheckoutConsent();
647        if (trackingCheck.found && trackingCheck.consent && !checkoutConsentFound && !consentInitialized) {
648          console.log('Consent - Checkout consent found via getTrackingConsent() in subscribe callback');
649          checkoutConsentFound = true;
650          consentInitialized = true;
651          window.Shopify.customerPrivacy.setTrackingConsent(trackingCheck.consent, () => {
652            console.log('Consent - Checkout consent applied successfully from subscribe (getTrackingConsent)');
653          });
654          return;
655        }
656  
657        // Also try to extract from subscribe callback - check multiple possible formats
658        let visitorConsent = null;
659  
660        // Format 1: consent.visitorConsent
661        if (consent && consent.visitorConsent) {
662          visitorConsent = consent.visitorConsent;
663          console.log('Consent - Extracted visitorConsent from subscribe.visitorConsent:', visitorConsent);
664        }
665        // Format 2: consent.current.visitorConsent
666        else if (consent && consent.current && consent.current.visitorConsent) {
667          visitorConsent = consent.current.visitorConsent;
668          console.log('Consent - Extracted visitorConsent from subscribe.current.visitorConsent:', visitorConsent);
669        }
670        // Format 3: consent.value.visitorConsent
671        else if (consent && consent.value && consent.value.visitorConsent) {
672          visitorConsent = consent.value.visitorConsent;
673          console.log('Consent - Extracted visitorConsent from subscribe.value.visitorConsent:', visitorConsent);
674        }
675        // Format 4: consent directly has consent fields (check this last as it's less specific)
676        else if (consent && typeof consent === 'object' &&
677          (consent.analytics !== undefined || consent.marketing !== undefined ||
678            consent.preferences !== undefined || consent.saleOfData !== undefined ||
679            consent.sale_of_data !== undefined)) {
680          visitorConsent = consent;
681          console.log('Consent - Using consent directly from subscribe (has consent fields):', visitorConsent);
682        }
683  
684        // Debug: log the full consent structure if we couldn't extract visitorConsent
685        if (!visitorConsent && consent) {
686          console.log('Consent - Could not extract visitorConsent. Full consent object:', consent);
687          console.log('Consent - Consent keys:', Object.keys(consent));
688        }
689  
690        if (visitorConsent) {
691          // Check if this is actual consent (not just empty/undefined values)
692          const hasValidConsent =
693            visitorConsent.analytics !== undefined ||
694            visitorConsent.marketing !== undefined ||
695            visitorConsent.preferences !== undefined ||
696            visitorConsent.saleOfData !== undefined ||
697            visitorConsent.sale_of_data !== undefined;
698  
699          if (hasValidConsent) {
700            console.log('Consent - Checkout consent detected via subscribe callback:', visitorConsent);
701  
702            // Apply checkout consent immediately (highest priority) - even if already initialized
703            const consentToApply = {
704              analytics: visitorConsent.analytics !== undefined ? visitorConsent.analytics : false,
705              marketing: visitorConsent.marketing !== undefined ? visitorConsent.marketing : false,
706              preferences: visitorConsent.preferences !== undefined ? visitorConsent.preferences : false,
707              sale_of_data: (visitorConsent.saleOfData !== undefined ? visitorConsent.saleOfData :
708                visitorConsent.sale_of_data !== undefined ? visitorConsent.sale_of_data : false)
709            };
710  
711            console.log('Consent - Applying checkout consent (overriding any existing):', consentToApply);
712  
713            // Mark as found and initialized to prevent PieEye logic
714            checkoutConsentFound = true;
715            consentInitialized = true;
716  
717            window.Shopify.customerPrivacy.setTrackingConsent(consentToApply, () => {
718              console.log('Consent - Checkout consent applied successfully from subscribe');
719            });
720            return; // Exit early, consent found
721          } else {
722            console.log('Consent - Subscribe callback has visitorConsent but fields are undefined:', visitorConsent);
723          }
724        } else {
725          console.log('Consent - No visitorConsent found in subscribe callback. Consent object structure:', Object.keys(consent || {}));
726        }
727  
728        // If subscribe fired but no valid consent found, proceed with PieEye logic (only once)
729        // This handles both cases: no checkout consent detected, or checkout consent detected but no values provided
730        if (!consentInitialized && !pieEyeLogicApplied) {
731          if (checkoutConsentFound) {
732            console.log('Consent - Checkout consent was detected but subscribe did n
732ot provide values. Falling back to PieEye cookie logic.');
733            checkoutConsentFound = false; // Reset so PieEye can run
734          } else {
735            console.log('Consent - Subscribe fired but no checkout consent found, falling back to PieEye cookie logic');
736          }
737          pieEyeLogicApplied = true;
738          applyPieEyeLogic();
739        }
740      });
741      console.log('Consent - Subscribed to Shopify Customer Privacy API for checkout consent detection');
742    } else {
743      console.warn('Consent - Subscribe method not available');
744    }
745  
746    // Wait a short time for subscribe to fire, then fallback to PieEye logic if no consent found
747    setTimeout(function() {
748      // If checkout consent was found but not yet initialized, check if subscribe provided values
749      if (checkoutConsentFound && !consentInitialized) {
750        // Try one more time to get consent values
751        const finalCheck = checkAndApplyCheckoutConsent();
752        if (finalCheck.found && finalCheck.consent) {
753          console.log('Consent - Checkout consent values found in final check, applying it:', finalCheck.consent);
754          consentInitialized = true;
755          window.Shopify.customerPrivacy.setTrackingConsent(finalCheck.consent, () => {
756            console.log('Consent - Checkout consent applied successfully from final check');
757          });
758          return;
759        }
760  
761        // If subscribe fired but didn't provide values, or subscribe didn't fire, fall back to PieEye
762        if (subscribeFired) {
763          console.log('Consent - Checkout consent was detected but subscribe did not provide values. Falling back to PieEye cookie logic.');
764        } else {
765          console.log('Consent - Checkout consent was detected but subscribe did not fire. Falling back to PieEye cookie logic.');
766        }
767        // Reset checkoutConsentFound since we couldn't get actual values, allow PieEye to run
768        checkoutConsentFound = false;
769        // Fall through to run PieEye logic below
770      }
771  
772      // If no checkout consent found or we reset it above, proceed with PieEye logic
773      if (!checkoutConsentFound && !consentInitialized && !pieEyeLogicApplied) {
774        // Try one more time to get consent
775        const finalCheck = checkAndApplyCheckoutConsent();
776        if (finalCheck.found && finalCheck.consent) {
777          console.log('Consent - Checkout consent found in final check, applying it');
778          checkoutConsentFound = true;
779          consentInitialized = true;
780          window.Shopify.customerPrivacy.setTrackingConsent(finalCheck.consent, () => {
781            console.log('Consent - Checkout consent applied successfully from final check');
782          });
783          return;
784        }
785  
786        if (subscribeFired) {
787          console.log('Consent - Subscribe fired but no checkout consent detected, falling back to PieEye cookie logic');
788        } else {
789          console.log('Consent - Subscribe did not fire within timeout, falling back to PieEye cookie logic');
790        }
791        pieEyeLogicApplied = true;
792        applyPieEyeLogic();
793      }
794    }, 3000); // Wait 3 seconds for subscribe to fire
795  }
796  
797  window.Shopify.loadFeatures(
798    [
799      {
800        name: 'consent-tracking-api',
801        version: '0.1',
802      },
803    ],
804    function (error) {
805      if (error) throw error;
806      console.log('Consent - tracking API loaded');
807      initializeConsent();
808    }
809  );
810  window.addEventListener("pieEyeShopifyConsent", function (e) {
811    const existConsentShopify = setInterval(function () {
812      if (window.Shopify.customerPrivacy) {
813        clearInterval(existConsentShopify);
814        window.Shopify.customerPrivacy.setTrackingConsent({
815          "analytics": e.detail.analytics,
816          "marketing": e.detail.marketing,
817          "preferences": e.detail.preferences,
818          "sale_of_data": e.detail.sale_of_data,
819        }, () => console.log("Consent - consent captured"));
820      }
821    }, 100);
822  });
823  </script>
823
824
825  
826<script>window.BOLD = window.BOLD || {};
827    window.BOLD.common = window.BOLD.common || {};
828    window.BOLD.common.Shopify = window.BOLD.common.Shopify || {};
829    window.BOLD.common.Shopify.shop = {
830      domain: 'lukeslobster.com',
831      permanent_domain: 'lukes-lobster-shop.myshopify.com',
832      url: 'https://lukeslobster.com',
833      secure_url: 'https://lukeslobster.com',
834      money_format: "${{amount}}",
835      currency: "USD"
836    };
837    window.BOLD.common.Shopify.customer = {
838      id: null,
839      tags: null,
840    };
841    window.BOLD.common.Shopify.cart = {"note":null,"attributes":{},"original_total_price":0,"total_price":0,"total_discount":0,"total_weight":0.0,"item_count":0,"items":[],"requires_shipping":false,"currency":"USD","items_subtotal_price":0,"cart_level_discount_applications":[],"checkout_charge_amount":0};
842    window.BOLD.common.template = 'index';window.BOLD.common.Shopify.formatMoney = function(money, format) {
843        function n(t, e) {
844            return "undefined" == typeof t ? e : t
845        }
846        function r(t, e, r, i) {
847            if (e = n(e, 2),
848                r = n(r, ","),
849                i = n(i, "."),
850            isNaN(t) || null == t)
851                return 0;
852            t = (t / 100).toFixed(e);
853            var o = t.split(".")
854                , a = o[0].replace(/(\d)(?=(\d\d\d)+(?!\d))/g, "$1" + r)
855                , s = o[1] ? i + o[1] : "";
856            return a + s
857        }
858        "string" == typeof money && (money = money.replace(".", ""));
859        var i = ""
860            , o = /\{\{\s*(\w+)\s*\}\}/
861            , a = format || window.BOLD.common.Shopify.shop.money_format || window.Shopify.money_format || "$ {{ amount }}";
862        switch (a.match(o)[1]) {
863            case "amount":
864                i = r(money, 2, ",", ".");
865                break;
866            case "amount_no_decimals":
867                i = r(money, 0, ",", ".");
868                break;
869            case "amount_with_comma_separator":
870                i = r(money, 2, ".", ",");
871                break;
872            case "amount_no_decimals_with_comma_separator":
873                i = r(money, 0, ".", ",");
874                break;
875            case "amount_with_space_separator":
876                i = r(money, 2, " ", ",");
877                break;
878            case "amount_no_decimals_with_space_separator":
879                i = r(money, 0, " ", ",");
880                break;
881            case "amount_with_apostrophe_separator":
882                i = r(money, 2, "'", ".");
883                break;
884        }
885        return a.replace(o, i);
886    };
887    window.BOLD.common.Shopify.saveProduct = function (handle, product) {
888      if (typeof handle === 'string' && typeof window.BOLD.common.Shopify.products[handle] === 'undefined') {
889        if (typeof product === 'number') {
890          window.BOLD.common.Shopify.handles[product] = handle;
891          product = { id: product };
892        }
893        window.BOLD.common.Shopify.products[handle] = product;
894      }
895    };
896    window.BOLD.common.Shopify.saveVariant = function (variant_id, variant) {
897      if (typeof variant_id === 'number' && typeof window.BOLD.common.Shopify.variants[variant_id] === 'undefined') {
898        window.BOLD.common.Shopify.variants[variant_id] = variant;
899      }
900    };window.BOLD.common.Shopify.products = window.BOLD.common.Shopify.products || {};
901    window.BOLD.common.Shopify.variants = window.BOLD.common.Shopify.variants || {};
902    window.BOLD.common.Shopify.handles = window.BOLD.common.Shopify.handles || {};window.BOLD.common.Shopify.saveProduct(null, null);window.BOLD.apps_installed = {"Product Bundles":2} || {};window.BOLD.common.Shopify.metafields = window.BOLD.common.Shopify.metafields || {};window.BOLD.common.Shopify.metafields["bold_rp"] = {};window.BOLD.common.Shopify.metafields["bold_csp_defaults"] = {};window.BOLD.common.cacheParams = window.BOLD.common.cacheParams || {};
903    window.BOLD.common.cacheParams.bundles = 1670522501;
904</script>
904<script src="https://bundles.boldapps.net/js/bundles.js" type="text/javascript"></script>
904
905<link href="//lukeslobster.com/cdn/shop/t/22/assets/bold-bundles.css?v=56303042398192224931677176555" rel="stylesheet" type="text/css" media="all" />
906
907
908<script>window.BOLD = window.BOLD || {};
909    window.BOLD.common = window.BOLD.common || {};
910    window.BOLD.common.Shopify = window.BOLD.common.Shopify || {};
911    window.BOLD.common.Shopify.shop = {
912      domain: 'lukeslobster.com',
913      permanent_domain: 'lukes-lobster-shop.myshopify.com',
914      url: 'https://lukeslobster.com',
915      secure_url: 'https://lukeslobster.com',
916      money_format: "${{amount}}",
917      currency: "USD"
918    };
919    window.BOLD.common.Shopify.customer = {
920      id: null,
921      tags: null,
922    };
923    window.BOLD.common.Shopify.cart = {"note":null,"attributes":{},"original_total_price":0,"total_price":0,"total_discount":0,"total_weight":0.0,"item_count":0,"items":[],"requires_shipping":false,"currency":"USD","items_subtotal_price":0,"cart_level_discount_applications":[],"checkout_charge_amount":0};
924    window.BOLD.common.template = 'index';window.BOLD.common.Shopify.formatMoney = function(money, format) {
925        function n(t, e) {
926            return "undefined" == typeof t ? e : t
927        }
928        function r(t, e, r, i) {
929            if (e = n(e, 2),
930                r = n(r, ","),
931                i = n(i, "."),
932            isNaN(t) || null == t)
933                return 0;
934            t = (t / 100).toFixed(e);
935            var o = t.split(".")
936                , a = o[0].replace(/(\d)(?=(\d\d\d)+(?!\d))/g, "$1" + r)
937                , s = o[1] ? i + o[1] : "";
938            return a + s
939        }
940        "string" == typeof money && (money = money.replace(".", ""));
941        var i = ""
942            , o = /\{\{\s*(\w+)\s*\}\}/
943            , a = format || window.BOLD.common.Shopify.shop.money_format || window.Shopify.money_format || "$ {{ amount }}";
944        switch (a.match(o)[1]) {
945            case "amount":
946                i = r(money, 2, ",", ".");
947                break;
948            case "amount_no_decimals":
949                i = r(money, 0, ",", ".");
950                break;
951            case "amount_with_comma_separator":
952                i = r(money, 2, ".", ",");
953                break;
954            case "amount_no_decimals_with_comma_separator":
955                i = r(money, 0, ".", ",");
956                break;
957            case "amount_with_space_separator":
958                i = r(money, 2, " ", ",");
959                break;
960            case "amount_no_decimals_with_space_separator":
961                i = r(money, 0, " ", ",");
962                break;
963            case "amount_with_apostrophe_separator":
964                i = r(money, 2, "'", ".");
965                break;
966        }
967        return a.replace(o, i);
968    };
969    window.BOLD.common.Shopify.saveProduct = function (handle, product) {
970      if (typeof handle === 'string' && typeof window.BOLD.common.Shopify.products[handle] === 'undefined') {
971        if (typeof product === 'number') {
972          window.BOLD.common.Shopify.handles[product] = handle;
973          product = { id: product };
974        }
975        window.BOLD.common.Shopify.products[handle] = product;
976      }
977    };
978    window.BOLD.common.Shopify.saveVariant = function (variant_id, variant) {
979      if (typeof variant_id === 'number' && typeof window.BOLD.common.Shopify.variants[variant_id] === 'undefined') {
980        window.BOLD.common.Shopify.variants[variant_id] = variant;
981      }
982    };window.BOLD.common.Shopify.products = window.BOLD.common.Shopify.products || {};
983    window.BOLD.common.Shopify.variants = window.BOLD.common.Shopify.variants || {};
984    window.BOLD.common.Shopify.handles = window.BOLD.common.Shopify.handles || {};window.BOLD.common.Shopify.saveProduct(null, null);window.BOLD.apps_installed = {"Product Bundles":2} || {};window.BOLD.common.Shopify.metafields = window.BOLD.common.Shopify.metafields || {};window.BOLD.common.Shopify.metafields["bold_rp"] = {};window.BOLD.common.Shopify.metafields["bold_csp_defaults"] = {};window.BOLD.common.cacheParams = window.BOLD.common.cacheParams || {};
985    window.BOLD.common.cacheParams.bundles = 1670522501;
986</script>
986<script src="https://bundles.boldapps.net/js/bundles.js" type="text/javascript"></script>
986
987<link href="//lukeslobster.com/cdn/shop/t/22/assets/bold-bundles.css?v=56303042398192224931677176555" rel="stylesheet" type="text/css" media="all" />
988<link href="//lukeslobster.com/cdn/shop/t/22/assets/instabadge.css?v=146305666997036385811703262861" rel="stylesheet" type="text/css" media="all" />
989
990
991
992<div class="al-test" style="display:none">
993
994</div>
995
996<script type="text/javascript">
997
998window.instabadge = {}
999window.instabadge.productBadgeMap = { "" : false }
1000window.instabadge.type = "TYPE_COLLECTION"
1001
1002if(typeof jQuery=='undefined') {
1003  var headTag = document.getElementsByTagName("head")[0];
1004  var jqTag = document.createElement('script');
1005  jqTag.type = 'text/javascript';
1006  jqTag.src = 'https://code.jquery.com/jquery-3.2.1.min.js ';
1007  jqTag.onload = function(){
1008    jQuery.noConflict();
1009    if (window.setupInstabadge){
1010      window.setupInstabadge();
1011    }
1012  };
1013  headTag.appendChild(jqTag);
1014}
1015
1016</script>
1016
1017
1018
1019
1020<script defer="defer">
1021    var u = function (t, e) {
1022        e || (e = window.location.href), t = t.replace(/[\[\]]/g, "\\$&");
1023        var n = new RegExp("[?&]" + t + "(=([^&#]*)|&|#|$)").exec(e);
1024        return n ? n[2] ? decodeURIComponent(n[2].replace(/\+/g, " ")) : "" : null
1025    }
1026    var allHandles = [];
1027    var c = {};
1028
1029    try {
1030        function cChanges() {
1031            document.querySelectorAll('.product-card,.ProductItem__Wrapper,.grid__item').forEach(function(element) {
1032                var parEle = element.querySelector("a.grid-view-item__link,a.ProductItem__ImageWrapper,a.full-unstyled-link");
1033                if (parEle) {
1034                    var urlParts = parEle.getAttribute("href").split("/");
1035                    var pUrl = urlParts[urlParts.length - 1];
1036                    if (allHandles.indexOf(pUrl) > -1) {
1037                        var p = c[pUrl] || null;
1038                        var h = u("sHash", window.location.href);
1039                        var v = "switch_" + p.exp_id;
1040                        ["set_0", "set_1"].includes(h) || (h = window.localStorage.getItem(v), ["set_0", "set_1"].includes(h) || (h = "set_" + (m = Number(p.exp_percent), Math.random() < m ? 1 : 0), window.localStorage.setItem(v, h)))
1041
1042                        element.querySelector(".price-item--regular,.ProductItem__Price").childNodes.forEach(function(eleNode) {
1043                            if (eleNode.nodeType === 3) {
1044                                eleNode.textContent = eleNode.textContent.replace(/From/ig, '');
1045                              	let re = new RegExp(`\\b${p["set_0"]}\\b`, 'i');  
1046                              	eleNode.textContent = eleNode.textContent.replace(re, p[h]);
1047                            }
1048                        });
1049                    }
1050                }
1051            });
1052        }
1053
1054        if (document.readyState === 'loading') {
1055          document.addEventListener('DOMContentLoaded', cChanges);
1056        } else {
1057          cChanges();
1058        }
1059    } catch (t) {
1060        console.log("some error.")
1061    }
1062</script>
1062
1063
1064
1065
1066
1067<!-- google dynamic remarketing tag for theme.liquid -->
1068
1069<script type="text/javascript">
1070  var google_tag_params = {
1071    ecomm_pagetype: 'home'
1072  };
1073</script>
1073
1074
1075<script>
1076  gtag('event', 'page_view', {'send_to': 'AW-822214704',
1077                              'ecomm_prodid':window.google_tag_params.ecomm_prodid,
1078                              'ecomm_pagetype': window.google_tag_params.ecomm_pagetype,
1079                              'ecomm_totalvalue':window.google_tag_params.ecomm_totalvalue
1080                             });
1081</script>
1081
1082
1083
1084
1085<script id="sca_fg_cart_ShowGiftAsProductTemplate" type="text/template">
1086  
1087  <div class="item not-sca-qv" id="sca-freegift-{{productID}}">
1088    <a class="close_box" style="display: none;position: absolute;top:5px;right: 10px;font-size: 22px;font-weight: bold;cursor: pointer;text-decoration:none;color: #aaa;">×</a>
1089    <a href="/products/{{productHandle}}" target="_blank"><img style="margin-left: auto; margin-right: auto; width: 50%;" class="lazyOwl" data-src="{{productImageURL}}"></a>
1090    <div class="sca-product-shop">
1091      <div class="review-summary3">
1092        <div class="yotpo bottomLine" style="text-align:center"
1093          data-product-id="{{productID}}"
1094          data-product-models="{{productID}}"
1095          data-name="{{productTitle}}"
1096          data-url="/products/{{productHandle}}">
1097        </div>
1098      </div>
1099      <div class="f-fix"><span class="sca-product-title" style="white-space: nowrap;color:#000;{{showfgTitle}}">{{productTitle}}</span>
1100          <div id="product-variants-{{productID}}">
1101            <div class="sca-price" id="price-field-{{productID}}">
1102              <span class="sca-old-price">{{variant_compare_at_price}}</span>
1103              <span class="sca-special-price">{{variant_price}}</span>
1104            </div>
1105            <div id="stay-content-sca-freegift-{{productID}}" class="sca-fg-cart-item">
1106              <a class="close_box" style="display: none;position: absolute;top:5px;right: 10px;font-size: 22px;font-weight: bold;cursor: pointer;text-decoration:none;color: #aaa;">×</a>
1107              <select id="product-select-{{productID}}" name="id" style="display: none">
1108                {{optionVariantData}}
1109              </select>
1110            </div>
1111          </div>
1112          <button type='button' id="sca-btn-select-{{productID}}" class="sca-button" onclick="onclickSelect_{{productID}}();"><span>{{SelectButton}}</span></button>
1113          <button type='button' id="sca-btn-{{productID}}" class="sca-button" style="display: none"><span>{{AddToCartButton}}</span></button>
1114      </div>
1115    </div>
1116  </div>
1117  
1118</script>
vendor: 1 bytes, line 1118
1118
1119<script id = "sca_fg_cart_ShowGiftAsProductScriptTemplate" type="text/template">
1120  
1121  
1122    var selectCallback_{{productID}}=function(t,a){if(t?(t.available?(SECOMAPP.jQuery("#sca-btn-{{productID}}").removeClass("disabled").removeAttr("disabled").html("<span>{{AddToCartButton}}</span>").fadeTo(200,1),SECOMAPP.jQuery("#sca-btn-{{productID}}").unbind("click"),SECOMAPP.jQuery("#sca-btn-{{productID}}").click(SECOMAPP.jQuery.proxy(function(){SECOMAPP.addGiftToCart(t.id,1)},t))):SECOMAPP.jQuery("#sca-btn-{{productID}}").html("<span>{{UnavailableButton}}</span>").addClass("disabled").attr("disabled","disabled").fadeTo(200,.5),t.compare_at_price>t.price?SECOMAPP.jQuery("#price-field-{{productID}}").html("<span class='sca-old-price'>"+SECOMAPP.formatMoney(t.compare_at_price)+"</span>&nbsp;<s class='sca-special-price'>"+SECOMAPP.formatMoney(t.price)+"</s>"):SECOMAPP.jQuery("#price-field-{{productID}}").html("<span class='sca-special-price'>"+SECOMAPP.formatMoney(t.price)+"</span>")):SECOMAPP.jQuery("#sca-btn-{{productID}}").html("<span>{{UnavailableButton}}</span>").addClass("disabled").attr("disabled","disabled").fadeTo(200,.5),t&&t.featured_image){var e=SECOMAPP.jQuery("#sca-freegift-{{productID}} img"),_=t.featured_image,c=e[0];Shopify.Image.switchImage(_,c,function(t,a,e){SECOMAPP.jQuery(e).parents("a").attr("href",t),SECOMAPP.jQuery(e).attr("src",t)})}},onclickSelect_{{productID}}=function(t){SECOMAPP.jQuery.getJSON("/products/{{productHandle}}.js",{_:(new Date).getTime()},function(t){SECOMAPP.jQuery(".owl-item #sca-freegift-{{productID}} span.sca-product-title").html(t.title);var e=[];SECOMAPP.jQuery.each(t.options,function(t,a){e[t]=a.name}),t.options=e;for(var a={{variantsGiftList}},_={{mainVariantsList}},c=t.variants.length-1;-1<c;c--)a.indexOf(t.variants[c].id)<0&&_.indexOf(t.variants[c].id)<0&&t.variants.splice(c,1);for(var o=_.length-1;-1<o;o--){var i=a[o],r=_[o],n=-1,s=-1;for(c=t.variants.length-1;-1<c;c--)t.variants[c].id==i?n=c:t.variants[c].id==r&&(s=c);-1<n&&-1<s&n!==s?("undefined"!=typeof SECOMAPP&&void 0!==SECOMAPP.fgsettings&&!0===SECOMAPP.fgsettings.sca_sync_gift&&void 0!==SECOMAPP.fgsettings.sca_fg_gift_variant_quantity_format&&"equal_original_inventory"===SECOMAPP.fgsettings.sca_fg_gift_variant_quantity_format&&(t.variants[n].available=t.variants[s].available,t.variants[n].inventory_management=t.variants[s].inventory_management),t.variants[n].option1=t.variants[s].option1,t.variants[n].options[0].name=t.variants[s].options[0].name,t.variants[n].options[1]&&(t.variants[n].options[1].name=t.variants[s].options[1].name,t.variants[n].option2=t.variants[s].option2),t.variants[n].options[2]&&(t.variants[n].options[2].name=t.variants[s].options[2].name,t.variants[n].option3=t.variants[s].option3),t.variants[n].title=t.variants[s].title,t.variants[n].name=t.variants[s].name,t.variants[n].public_title=t.variants[s].public_title,t.variants.splice(s,1)):(t.variants[s].id=i,t.variants[s].compare_at_price||(t.variants[s].compare_at_price=t.variants[s].price),t.variants[s].price=SECOMAPP.fgdata.giftid_price_mapping[i])}SECOMAPP.jQuery("#sca-btn-select-{{productID}}").hide(),SECOMAPP.jQuery("#product-select-{{productID}}").show(),SECOMAPP.jQuery("#sca-btn-{{productID}}").show(),SECOMAPP.jQuery("#stay-content-sca-freegift-{{productID}} .close_box").show(),SECOMAPP.jQuery("#stay-content-sca-freegift-{{productID}} .close_box").click(function(){SECOMAPP.jQuery("#stay-content-sca-freegift-{{productID}}").hide(),SECOMAPP.jQuery("#sca-btn-{{productID}}").hide(),SECOMAPP.jQuery("#sca-btn-select-{{productID}}").show()}),onclickSelect_{{productID}}=function(){SECOMAPP.jQuery("#stay-content-sca-freegift-{{productID}}").show(),SECOMAPP.jQuery("#sca-btn-{{productID}}").show(),SECOMAPP.jQuery("#sca-btn-select-{{productID}}").hide()},1==t.variants.length?(-1!==t.variants[0].title.indexOf("Default")&&SECOMAPP.jQuery("#sca-freegift-{{productID}} .selector-wrapper").hide(),1==t.variants[0].available&&(SECOMAPP.jQuery("#sca-btn-{{productID}}").show(),SECOMAPP.jQuery("#sca-btn-select-{{productID}}").hide(),SECOMAPP.jQuery("#sca-btn-{{productID}}").removeClass("disabled").removeAttr("disabled").html("<span>{{AddToCartButton}}</span>").fadeTo(200,1),SECOMAPP.jQuery("#sca-btn-{{productID}}").unbind("click"),SECOMAPP.jQuery("#sca-btn-{{productID}}").click(SECOMAPP.jQuery.proxy(function(){SECOMAPP.addGiftToCart(t.variants[0].id,1)},t)))):(new Shopify.OptionSelectors("product-select-{{productID}}",{product:t,onVariantSelected:selectCallback_{{productID}},enableHistoryState:!0}),SECOMAPP.jQuery("#stay-content-sca-freegift-{{productID}}").show(),SECOMAPP.jQuery("#stay-content-sca-freegift-{{productID}}").focus())})};1=={{variantsGiftList}}.length&&onclickSelect_{{productID}}();
1123  
1124</script>
1124
1125
1126<script id="sca_fg_cart_ShowGiftAsVariantTemplate" type="text/template">
1127  
1128  <div class="item not-sca-qv" id="sca-freegift-{{variantID}}">
1129    <a href="/products/{{productHandle}}?variant={{originalVariantID}}" target="_blank"><img style="margin-left: auto; margin-right: auto; width: 50%;" class="lazyOwl" data-src="{{variantImageURL}}"></a>
1130    <div class="sca-product-shop">
1131      <div class="review-summary3">
1132        <div class="yotpo bottomLine" style="text-align:center"
1133          data-product-id="{{productID}}"
1134          data-product-models="{{productID}}"
1135          data-name="{{productTitle}}"
1136          data-url="/products/{{productHandle}}">
1137        </div>
1138      </div>
1139      <div class="f-fix">
1140        <span class="sca-product-title" style="white-space: nowrap;color:#000;">{{variantTitle}}</span>
1141        <div class="sca-price">
1142          <span class="sca-old-price">{{variant_compare_at_price}}</span>
1143          <span class="sca-special-price">{{variant_price}}</span>
1144        </div>
1145        <button type="button" id="sca-btn{{variantID}}" class="sca-button" onclick="SECOMAPP.addGiftToCart({{variantID}},1);">
1146          <span>{{AddToCartButton}}</span>
1147        </button>
1148      </div>
1149    </div>
1150  </div>
1151  
1152</script>
1152
1153
1154<script id="sca_fg_prod_GiftList" type="text/template">
1155  
1156  <a style="text-decoration: none !important" id ="{{giftShowID}}" class="product-image freegif-product-image freegift-info-{{giftShowID}}"
1157     title="{{giftTitle}}" href="/products/{{productsHandle}}">
1158    <img class="not-sca-qv" src="{{giftImgUrl}}" alt="{{giftTitle}}" />
1159  </a>
1160  
1161</script>
1161
1162
1163<script id="sca_fg_prod_Gift_PopupDetail" type="text/template">
1164  
1165  <div class="sca-fg-item fg-info-{{giftShowID}}" style="display:none;z-index:2147483647;">
1166    <div class="sca-fg-item-options">
1167      <div class="sca-fg-item-option-title">
1168        <em>{{freegiftRuleName}}</em>
1169      </div>
1170      <div class="sca-fg-item-option-ct">
1171        <!--        <div class="sca-fg-image-item">
1172                        <img src="{{giftImgUrl}}" /> -->
1173        <div class="sca-fg-item-name">
1174          <a href="#">{{giftTitle}}</a>
1175        </div>
1176        <!--        </div> -->
1177      </div>
1178    </div>
1179  </div>
1180  
1181</script>
1181
1182
1183<script id="sca_fg_ajax_GiftListPopup" type="text/template">
1184  
1185  <div id="freegift_popup" class="mfp-hide">
1186    <div id="sca-fg-owl-carousel">
1187      <div id="freegift_cart_container" class="sca-fg-cart-container" style="display: none;">
1188        <div id="freegift_message" class="owl-carousel"></div>
1189      </div>
1190      <div id="sca-fg-slider-cart" style="display: none;">
1191        <div class="sca-fg-cart-title">
1192          <strong>{{popupTitle}}</strong>
1193        </div>
1194        <div id="sca_freegift_list" class="owl-carousel"></div>
1195      </div>
1196    </div>
1197  </div>
1198  
1199</script>
1199
1200
1201<script id="sca_fg_checkout_confirm_popup" type="text/template">
1202    
1203         <div class='sca-fg-checkout-confirm-popup' style='font-family: "Myriad","Cardo","Big Caslon","Bodoni MT",Georgia,serif; position: relative;background: #FFF;padding: 20px 20px 50px 20px;width: auto;max-width: 500px;margin: 20px auto;'>
1204             <h1 style='font-family: "Oswald","Cardo","Big Caslon","Bodoni MT",Georgia,serif;'>YOU CAN STILL ADD MORE!</h1>
1205             <p>You get 1 free item with every product purchased. It looks like you can still add more free item(s) to your cart. What would you like to do?</p>
1206             <p class='sca-fg-checkout-confirm-buttons' style='float: right;'>
1207                 <a class='btn popup-modal-dismiss action_button add_to_cart' href='#' style='width: 200px !important;margin-right: 20px;'>ADD MORE</a>
1208                 <a class='btn checkout__button continue-checkout action_button add_to_cart' href='/checkout' style='width: 200px !important;'>CHECKOUT</a>
1209             </p>
1210         </div>
1211    
1212</script>
1212
1213
1214
1215
1216<link href="//lukeslobster.com/cdn/shop/t/22/assets/sca.freegift.css?v=75813200356226696181645190572" rel="stylesheet" type="text/css" media="all" />
1217<script src="//lukeslobster.com/cdn/shopifycloud/storefront/assets/themes_support/option_selection-b017cd28.js" type="text/javascript"></script>
vendor: 1 bytes, line 1217
1217
1218<script data-cfasync="false">
1219    Shopify.money_format = "${{amount}}";
1220    //enable checking free gifts condition when checkout clicked
1221    if ((typeof SECOMAPP) === 'undefined') { window.SECOMAPP = {}; };
1222    SECOMAPP.enableOverrideCheckout = true;
1223    //    SECOMAPP.preStopAppCallback = function(cart){
1224    //        if(typeof yotpo!=='undefined' && typeof yotpo.initWidgets==='function'){
1225    //            yotpo.initWidgets();
1226    //        }
1227    //    }
1228</script>
vendor: 1 bytes, line 1228
1228
1229<script type="text/javascript">(function(){if(typeof SECOMAPP==="undefined"){SECOMAPP={}};if(typeof Shopify==="undefined"){Shopify={}};SECOMAPP.fg_ver=1637346627;SECOMAPP.fg_scriptfile="freegifts_20211029.min.js";SECOMAPP.gifts_list_avai={"39600128295051":true};})();</script>
1229
1230
1231<script data-cfasync="false" type="text/javascript">
1232  /* Smart Ecommerce App (SEA Inc)
1233  * http://www.secomapp.com
1234  * Do not reuse those source codes if don't have permission of us.
1235  * */
1236  
1237  
1238  !function(){Array.isArray||(Array.isArray=function(e){return"[object Array]"===Object.prototype.toString.call(e)}),"function"!=typeof Object.create&&(Object.create=function(e){function t(){}return t.prototype=e,new t}),Object.keys||(Object.keys=function(e){var t,o=[];for(t in e)Object.prototype.hasOwnProperty.call(e,t)&&o.push(t);return o}),String.prototype.endsWith||Object.defineProperty(String.prototype,"endsWith",{value:function(e,t){var o=this.toString();(void 0===t||t>o.length)&&(t=o.length),t-=e.length;var r=o.indexOf(e,t);return-1!==r&&r===t},writable:!0,enumerable:!0,configurable:!0}),Array.prototype.indexOf||(Array.prototype.indexOf=function(e,t){var o;if(null==this)throw new TypeError('"this" is null or not defined');var r=Object(this),i=r.length>>>0;if(0===i)return-1;var n=+t||0;if(Math.abs(n)===1/0&&(n=0),n>=i)return-1;for(o=Math.max(n>=0?n:i-Math.abs(n),0);o<i;){if(o in r&&r[o]===e)return o;o++}return-1}),Array.prototype.forEach||(Array.prototype.forEach=function(e,t){var o,r;if(null==this)throw new TypeError(" this is null or not defined");var i=Object(this),n=i.length>>>0;if("function"!=typeof e)throw new TypeError(e+" is not a function");for(arguments.length>1&&(o=t),r=0;r<n;){var a;r in i&&(a=i[r],e.call(o,a,r,i)),r++}}),console=console||{},console.log=console.log||function(){},"undefined"==typeof Shopify&&(Shopify={}),"function"!=typeof Shopify.onError&&(Shopify.onError=function(){}),"undefined"==typeof SECOMAPP&&(SECOMAPP={}),SECOMAPP.removeGiftsVariant=function(e){setTimeout(function(){try{e("select option").not(".sca-fg-cart-item select option").filter(function(){var t=e(this).val(),o=e(this).text();-1!==o.indexOf(" - ")&&(o=o.slice(0,o.indexOf(" - ")));var r=[];return-1!==o.indexOf(" / ")&&(r=o.split(" / "),o=r[r.length-1]),!!(void 0!==SECOMAPP.gifts_list_avai&&void 0!==SECOMAPP.gifts_list_avai[t]||o.endsWith("% off)"))&&(e(this).parent("select").find("option").not(".sca-fg-cart-item select option").filter(function(){var r=e(this).val();return e(this).text().endsWith(o)||r==t}).remove(),e(".dropdown *,ul li,label,div").filter(function(){var r=e(this).html(),i=e(this).data("value");return r&&r.endsWith(o)||i==t}).remove(),!0)})}catch(e){console.log(e)}},500)},SECOMAPP.formatMoney=function(e,t){"string"==typeof e&&(e=e.replace(".",""));var o="",r="undefined"!=typeof Shopify&&void 0!==Shopify.money_format?Shopify.money_format:"{{amount}}",i=/\{\{\s*(\w+)\s*\}\}/,n=t||(void 0!==this.fgsettings&&"string"==typeof this.fgsettings.sca_currency_format&&this.fgsettings.sca_currency_format.indexOf("amount")>-1?this.fgsettings.sca_currency_format:null)||r;if(n.indexOf("amount_no_decimals_no_comma_separator")<0&&n.indexOf("amount_no_comma_separator_up_cents")<0&&n.indexOf("amount_up_cents")<0&&"function"==typeof Shopify.formatMoney)return Shopify.formatMoney(e,n);function a(e,t){return void 0===e?t:e}function s(e,t,o,r,i,n){if(t=a(t,2),o=a(o,","),r=a(r,"."),isNaN(e)||null==e)return 0;var s=(e=(e/100).toFixed(t)).split(".");return s[0].replace(/(\d)(?=(\d\d\d)+(?!\d))/g,"$1"+o)+(s[1]?i&&n?i+s[1]+n:r+s[1]:"")}switch(n.match(i)[1]){case"amount":o=s(e,2);break;case"amount_no_decimals":o=s(e,0);break;case"amount_with_comma_separator":o=s(e,2,",",".");break;case"amount_no_decimals_with_comma_separator":o=s(e,0,",",".");break;case"amount_no_decimals_no_comma_separator":o=s(e,0,"","");break;case"amount_up_cents":o=s(e,2,",","","<sup>","</sup>");break;case"amount_no_comma_separator_up_cents":o=s(e,2,"","","<sup>","</sup>")}return n.replace(i,o)},SECOMAPP.setCookie=function(e,t,o,r,i){var n=new Date;n.setTime(n.getTime()+24*o*60*60*1e3+60*r*1e3);var a="expires="+n.toUTCString();document.cookie=e+"="+t+";"+a+(i?";path="+i:";path=/")},SECOMAPP.deleteCookie=function(e,t){document.cookie=e+"=; expires=Thu, 01 Jan 1970 00:00:00 UTC; "+(t?";path="+t:";path=/")},SECOMAPP.getCookie=function(e){for(var t=e+"=",o=document.cookie.split(";"),r=0;r<o.length;r++){for(var i=o[r];" "==i.charAt(0);)i=i.substring(1);if(0==i.indexOf(t))return i.substring(t.length,i.length)}return""},SECOMAPP.getQueryString=function(){for(var e={},t=window.location.search.substring(1).split("&"),o=0;o<t.length;o++){var r=t[o].split("=");if(void 0===e[r[0]])e[r[0]]=decodeURIComponent(r[1]);else if("string"==typeof e[r[0]]){var i=[e[r[0]],decodeURIComponent(r[1])];e[r[0]]=i}else e[r[0]].push(decodeURIComponent(r[1]))}return e},SECOMAPP.freegifts_product_json=function(e){if(Array.isArray||(Array.isArray=function(e){return"[object Array]"===Object.prototype.toString.call(e)}),String.prototype.endsWith||Object.defineProperty(String.prototype,"endsWith",{value:function(e,t){var o=this.toString();(void 0===t||t>o.length)&&(t=o.length),t-=e.length;var r=o.indexOf(e,t);return-1!==r&&r===t}}),e){if(e.options&&Array.isArray(e.options))for(var t=0;t<e.options.length;t++){if(void 0!==e.options[t]&&void 0!==e.options[t].values)if((r=e.options[t]).values&&Array.isArray(r.values))for(var o=0;o<r.values.length;o++)(r.values[o].endsWith("(Freegifts)")||r.values[o].endsWith("% off)"))&&(r.values.splice(o,1),o--)}if(e.options_with_values&&Array.isArray(e.options_with_values))for(t=0;t<e.options_with_values.length;t++){var r;if(void 0!==e.options_with_values[t]&&void 0!==e.options_with_values[t].values)if((r=e.options_with_values[t]).values&&Array.isArray(r.values))for(o=0;o<r.values.length;o++)(r.values[o].title.endsWith("(Freegifts)")||r.values[o].title.endsWith("% off)"))&&(r.values.splice(o,1),o--)}var i=e.price,n=e.price_max,a=e.price_min,s=e.compare_at_price,c=e.compare_at_price_max,f=e.compare_at_price_min;
1238if(e.variants&&Array.isArray(e.variants))for(var p=0;e.variants.length,void 0!==e.variants[p];p++){var l=e.variants[p],u=l.option3?l.option3:l.option2?l.option2:l.option1?l.option1:l.title?l.title:"";"undefined"!=typeof SECOMAPP&&void 0!==SECOMAPP.gifts_list_avai&&void 0!==SECOMAPP.gifts_list_avai[l.id]||u.endsWith("(Freegifts)")||u.endsWith("% off)")?(e.variants.splice(p,1),p-=1):((!n||n>=l.price)&&(n=l.price,i=l.price),(!a||a<=l.price)&&(a=l.price),l.compare_at_price&&((!c||c>=l.compare_at_price)&&(c=l.compare_at_price,s=l.compare_at_price),(!f||f<=l.compare_at_price)&&(f=l.compare_at_price)),void 0!==l.available&&1==l.available&&(e.available=!0))}e.price=i,e.price_max=a==n?null:a,e.price_min=n==a?null:n,e.compare_at_price=s,e.compare_at_price_max=f,e.compare_at_price_min=c,e.price_varies=n<a,e.compare_at_price_varies=c<f}return e},SECOMAPP.fg_codes=[],""!==SECOMAPP.getCookie("sca_fg_codes")&&(SECOMAPP.fg_codes=JSON.parse(SECOMAPP.getCookie("sca_fg_codes")));var e=SECOMAPP.getQueryString();e.freegifts_code&&-1===SECOMAPP.fg_codes.indexOf(e.freegifts_code)&&(void 0!==SECOMAPP.activateOnlyOnePromoCode&&!0===SECOMAPP.activateOnlyOnePromoCode&&(SECOMAPP.fg_codes=[]),SECOMAPP.fg_codes.push(e.freegifts_code),SECOMAPP.setCookie("sca_fg_codes",JSON.stringify(SECOMAPP.fg_codes)))}();
1239  
1240  ;SECOMAPP.customer={};SECOMAPP.customer.orders=[];SECOMAPP.customer.freegifts=[];;SECOMAPP.customer.email=null;SECOMAPP.customer.first_name=null;SECOMAPP.customer.last_name=null;SECOMAPP.customer.tags=null;SECOMAPP.customer.orders_count=null;SECOMAPP.customer.total_spent=null;
1241</script>
1241
1242
1243
1244
1245<script type="text/javascript">
1246  window.dataLayer = window.dataLayer || [];
1247
1248  window.appStart = function(){
1249     
1250
1251    window.productPageHandle = function(){
1252      var productName = "";
1253      var productId = "";
1254      var productPrice = "";
1255      var productBrand = "";
1256      var productCollection = ""
1257
1258      window.dataLayer.push({
1259        event: 'analyzify_productDetail',
1260        productName: productName,
1261        productId: productId,
1262        productPrice: productPrice,
1263        productBrand: productBrand,
1264        productCategory: productCollection,
1265      });
1266    };
1267
1268    
1269  }
1270
1271  appStart();
1272</script>
1272
1273
1274  
1275<!-- Start of Judge.me Core -->
1276<link rel="dns-prefetch" href="https://cdn.judge.me/">
1277<script data-cfasync='false' class='jdgm-settings-script'>window.jdgmSettings={"pagination":5,"disable_web_reviews":false,"coupon_receiving_condition":"","coupon_value_type":"percentage","coupon_value_percentage":10,"coupon_value_fixed_amount":0,"coupon_discount_type":"single","coupon_tier_text_enabled":false,"coupon_tier_text_percentage":10,"coupon_tier_text_fixed_amount":0,"coupon_tier_photo_enabled":false,"coupon_tier_photo_percentage":10,"coupon_tier_photo_fixed_amount":0,"coupon_tier_video_enabled":false,"coupon_tier_video_percentage":10,"coupon_tier_video_fixed_amount":0,"enable_coupons":false,"badge_no_review_text":"No reviews","badge_n_reviews_text":"{{ n }} review/reviews","badge_star_color":"#2e475e","hide_badge_preview_if_no_reviews":true,"badge_hide_text":false,"enforce_center_preview_badge":false,"widget_title":"Customer Reviews","widget_open_form_text":"Write a review","widget_close_form_text":"Cancel review","widget_refresh_page_text":"Refresh page","widget_summary_text":"Based on {{ number_of_reviews }} review/reviews","widget_no_review_text":"Be the first to write a review","widget_name_field_text":"Display name","widget_verified_name_field_text":"Verified Name (public)","widget_name_placeholder_text":"Display name","widget_required_field_error_text":"This field is required.","widget_email_field_text":"Email address","widget_verified_email_field_text":"Verified Email (private, can not be edited)","widget_email_placeholder_text":"Your email address","widget_email_field_error_text":"Please enter a valid email address.","widget_rating_field_text":"Rating","widget_review_title_field_text":"Review Title","widget_review_title_placeholder_text":"Give your review a title","widget_review_body_field_text":"Review content","widget_review_body_placeholder_text":"Start writing here...","widget_pictures_field_text":"Picture/Video (optional)","widget_submit_review_text":"Submit Review","widget_submit_verified_review_text":"Submit Verified Review","widget_submit_success_msg_with_auto_publish":"Thank y
1277ou! Please refresh the page in a few moments to see your review. You can remove or edit your review by logging into \u003ca href='https://judge.me/login' target='_blank' rel='nofollow noopener'\u003eJudge.me\u003c/a\u003e","widget_submit_success_msg_no_auto_publish":"Thank you! Your review will be published as soon as it is approved by the shop admin. You can remove or edit your review by logging into \u003ca href='https://judge.me/login' target='_blank' rel='nofollow noopener'\u003eJudge.me\u003c/a\u003e","widget_show_default_reviews_out_of_total_text":"Showing {{ n_reviews_shown }} out of {{ n_reviews }} reviews.","widget_show_all_link_text":"Show all","widget_show_less_link_text":"Show less","widget_author_said_text":"{{ reviewer_name }} said:","widget_days_text":"{{ n }} days ago","widget_weeks_text":"{{ n }} week/weeks ago","widget_months_text":"{{ n }} month/months ago","widget_years_text":"{{ n }} year/years ago","widget_yesterday_text":"Yesterday","widget_today_text":"Today","widget_replied_text":"\u003e\u003e {{ shop_name }} replied:","widget_read_more_text":"Read more","widget_reviewer_name_as_initial":"last_initial","widget_rating_filter_color":"#2e475e","widget_rating_filter_see_all_text":"See all reviews","widget_sorting_most_recent_text":"Most Recent","widget_sorting_highest_rating_text":"Highest Rating","widget_sorting_lowest_rating_text":"Lowest Rating","widget_sorting_with_pictures_text":"Only Pictures","widget_sorting_most_helpful_text":"Most Helpful","widget_open_question_form_text":"Ask a question","widget_reviews_subtab_text":"Reviews","widget_questions_subtab_text":"Questions","widget_question_label_text":"Question","widget_answer_label_text":"Answer","widget_question_placeholder_text":"Write your question here","widget_submit_question_text":"Submit Question","widget_question_submit_success_text":"Thank you for your question! We will notify you once it gets answered.","widget_star_color":"#2e475e","verified_badge_text":"Verified","verified_badge_bg_color":"","verified_badge_text_color":"","verified_badge_placement":"left-of-reviewer-name","widget_review_max_height":7,"widget_hide_border":true,"widget_social_share":false,"widget_thumb":true,"widget_review_location_show":false,"widget_location_format":"country_iso_code","all_reviews_include_out_of_store_products":true,"all_reviews_out_of_store_text":"(out of store)","all_reviews_pagination":100,"all_reviews_product_name_prefix_text":"about","enable_review_pictures":true,"enable_question_anwser":false,"widget_theme":"carousel","review_date_format":"mm/dd/yyyy","default_sort_method":"most-recent","enable_ai_review_visibility":true,"widget_product_reviews_subtab_text":"Product Reviews","widget_shop_reviews_subtab_text":"Shop Reviews","widget_other_products_reviews_text":"Reviews for other products","widget_store_reviews_subtab_text":"Store reviews","widget_product_variant_reference_text":"Review for","widget_no_store_reviews_text":"This store hasn't received any reviews yet","widget_web_restriction_product_reviews_text":"This product hasn't received any reviews yet","widget_no_items_text":"No items found","widget_show_more_text":"Show more","widget_write_a_store_review_text":"Write a Store Review","widget_product_and_store_reviews_text":"Product and store reviews","widget_reviews_in_collection_text":"Reviews in this collection","widget_other_languages_heading":"Reviews in Other Languages","widget_translate_review_text":"Translate review to {{ language }}","widget_translating_review_text":"Translating...","widget_show_original_translation_text":"Show original ({{ language }})","widget_translate_review_failed_text":"Review couldn't be translated.","widget_translate_review_retry_text":"Retry","widget_translate_review_try_again_later_text":"Try again later","show_product_url_for_grouped_product":false,"widget_sorting_pictures_first_text":"Pictures First","show_pictures_on_all_rev_page_mobile":false,"show_pictures_on_all_rev_page_desktop":false,"floating_tab_hide_mobile_install_preference":false,"floating_tab_button_name":"★ Reviews","floating_tab_title":"Let customers speak for us","floating_tab_button_color":"","floating_tab_button_background_color":"","floating_tab_url":"","floating_tab_url_enabled":false,"floating_tab_tab_style":"text","all_reviews_text_badge_text":"Customers rate us {{ shop.metafields.judgeme.all_reviews_rating | round: 1 }}/5 based on {{ shop.metafields.judgeme.all_reviews_count }} reviews.","all_reviews_text_badge_text_branded_style":"{{ shop.metafields.judgeme.all_reviews_rating | round: 1 }} out of 5 stars based on {{ shop.metafields.judgeme.all_reviews_count }} reviews","is_all_reviews_text_badge_a_link":false,"show_stars_for_all_reviews_text_badge":false,"all_reviews_text_badge_url":"","all_reviews_text_style":"text","all_reviews_text_color_style":"judgeme_brand_color","all_reviews_text_color":"#108474","all_reviews_text_show_jm_brand":true,"featured_carousel_show_header":true,"featured_carousel_title":"Who Loves Luke's?","testimonials_carousel_title":"Customers are saying","videos_carousel_title":"Real customer stories","cards_carousel_title":"Customers are saying","featured_carousel_count_text":"from {{ n }} reviews","featured_carousel_add_link_to_all_reviews_page":false,"featured_carousel_url":"","featured_carousel_show_images":true,"featured_carousel_autoslide_interval":5,"featured_carousel_arrows_on_the_sides":false,"featured_carousel_height":300,"featured_carousel_width":80,"featured_carousel_image_size":0,"featured_carousel_image_height":250,"featured_carousel_arrow_color":"#eeeeee","verified_count_badge_style":"vintage","verified_count_badge_orientation":"horizontal","verified_count_badge_color_style":"judgeme_brand_color","verified_count_badge_color":"#108474","is_verified_count_badge_a_link":false,"verified_count_badge_url":"","verified_count_badge_show_jm_brand":true,"widget_rating_preset_default":5,"widget_first_sub_tab":"product-reviews","widget_show_histogram":true,"widget_histogram_use_custom_color":true,"widget_pagination_use_custom_color":false,"widget_star_use_custom_color":true,"widget_verified_badge_use_custom_color":false,"widget_write_review_use_custom_color":false,"picture_reminder_submit_button":"Upload Pictures","enable_review_videos":false,"mute_video_by_default":false,"widget_sorting_videos_first_text":"Videos First","widget_review_pending_text":"Pending","featured_carousel_items_for_large_screen":4,"social_share_options_order":"Facebook,Twitter","remove_microdata_snippet":false,"disable_json_ld":false,"enable_json_ld_products":false,"preview_badge_show_question_text":false,"preview_badge_no_question_text":"No questions","preview_badge_n_question_text":"{{ number_of_questions }} question/questions","qa_badge_show_icon":false,"qa_badge_position":"same-row","remove_judgeme_branding":true,"widget_add_search_bar":false,"widget_search_bar_placeholder":"Search","widget_sorting_verified_only_text":"Verified only","widget_sorting_most_relevant_text":"Most Relevant","featured_carousel_theme":"compact","featured_carousel_show_rating":true,"featured_carousel_show_title":true,"featured_carousel_show_body":true,"featured_carousel_show_date":false,"featured_carousel_show_reviewer":true,"featured_carousel_show_product":false,"featured_carousel_header_background_color":"#108474","featured_carousel_header_text_color":"#ffffff","featured_carousel_name_product_separator":"reviewed","featured_carousel_full_star_background":"#2e465d","featured_carousel_empty_star_background":"#dadada","featured_carousel_vertical_theme_background":"#f9fafb","featured_carousel_verified_badge_enable":false,"featured_carousel_verified_badge_color":"#108474","featured_carousel_border_style":"round","featured_carousel_review_line_length_limit":3,"featured_carousel_more_reviews_button_text":"Read more reviews","featured_carousel_view_product_button_text":"View product","all_reviews_page_load_reviews_on":"scroll","all_reviews_page_load_more_text":"Load More Reviews","disable_fb_tab_reviews":false,"enable_ajax_cdn_cache":false,"widget_public_name_text":"displayed publicly like","default_reviewer_name":"John Smith","default_reviewer_name_has_non_latin":true,"widget_reviewer_anonymous":"Anonymous","medals_widget_title":"Judge.me Review Medals","medals_widget_background_color":"#f9fafb","medals_widget_position":"footer_all_pages","medals_widget_border_color":"#f9fafb","medals_widget_verified_text_position":"left","medals_widget_use_monochromatic_version":false,"medals_widget_elements_color":"#108474","show_reviewer_avatar":true,"widget_invalid_yt_video_url_error_text":"Not a YouTube video URL","widget_max_length_field_error_text":"Please enter no more than {0} characters.","widget_show_country_flag":false,"widget_show_collected_via_shop_app":true,"widget_verified_by_shop_badge_style":"light","widget_verified_by_shop_text":"Verified by Shop","widget_show_photo_gallery":false,"widget_load_with_code_splitting":true,"widget_ugc_install_preference":false,"widget_ugc_title":"Made by us, Shared by you","widget_ugc_subt
1277itle":"Tag us to see your picture featured in our page","widget_ugc_arrows_color":"#ffffff","widget_ugc_primary_button_text":"Buy Now","widget_ugc_primary_button_background_color":"#108474","widget_ugc_primary_button_text_color":"#ffffff","widget_ugc_primary_button_border_width":"0","widget_ugc_primary_button_border_style":"none","widget_ugc_primary_button_border_color":"#108474","widget_ugc_primary_button_border_radius":"25","widget_ugc_secondary_button_text":"Load More","widget_ugc_secondary_button_background_color":"#ffffff","widget_ugc_secondary_button_text_color":"#108474","widget_ugc_secondary_button_border_width":"2","widget_ugc_secondary_button_border_style":"solid","widget_ugc_secondary_button_border_color":"#108474","widget_ugc_secondary_button_border_radius":"25","widget_ugc_reviews_button_text":"View Reviews","widget_ugc_reviews_button_background_color":"#ffffff","widget_ugc_reviews_button_text_color":"#108474","widget_ugc_reviews_button_border_width":"2","widget_ugc_reviews_button_border_style":"solid","widget_ugc_reviews_button_border_color":"#108474","widget_ugc_reviews_button_border_radius":"25","widget_ugc_reviews_button_link_to":"judgeme-reviews-page","widget_ugc_show_post_date":true,"widget_ugc_max_width":"800","widget_rating_metafield_value_type":true,"widget_primary_color":"#2e475e","widget_enable_secondary_color":false,"widget_secondary_color":"#edf5f5","widget_summary_average_rating_text":"{{ average_rating }} out of 5","widget_media_grid_title":"Customer photos \u0026 videos","widget_media_grid_see_more_text":"See more","widget_round_style":false,"widget_show_product_medals":true,"widget_verified_by_judgeme_text":"Verified by Judge.me","widget_show_store_medals":true,"widget_verified_by_judgeme_text_in_store_medals":"Verified by Judge.me","widget_media_field_exceed_quantity_message":"Sorry, we can only accept {{ max_media }} for one review.","widget_media_field_exceed_limit_message":"{{ file_name }} is too large, please select a {{ media_type }} less than {{ size_limit }}MB.","widget_review_submitted_text":"Review Submitted!","widget_question_submitted_text":"Question Submitted!","widget_close_form_text_question":"Cancel","widget_write_your_answer_here_text":"Write your answer here","widget_enabled_branded_link":true,"widget_show_collected_by_judgeme":false,"widget_reviewer_name_color":"","widget_write_review_text_color":"","widget_write_review_bg_color":"","widget_collected_by_judgeme_text":"collected by Judge.me","widget_pagination_type":"standard","widget_load_more_text":"Load More","widget_load_more_color":"#108474","widget_full_review_text":"Full Review","widget_read_more_reviews_text":"Read More Reviews","widget_read_questions_text":"Read Questions","widget_questions_and_answers_text":"Questions \u0026 Answers","widget_verified_by_text":"Verified by","widget_verified_text":"Verified","widget_number_of_reviews_text":"{{ number_of_reviews }} reviews","widget_back_button_text":"Back","widget_next_button_text":"Next","widget_custom_forms_filter_button":"Filters","custom_forms_style":"vertical","widget_show_review_information":false,"how_reviews_are_collected":"How reviews are collected?","widget_show_review_keywords":false,"widget_gdpr_statement":"How we use your data: We'll only contact you about the review you left, and only if necessary. By submitting your review, you agree to Judge.me's \u003ca href='https://judge.me/terms' target='_blank' rel='nofollow noopener'\u003eterms\u003c/a\u003e, \u003ca href='https://judge.me/privacy' target='_blank' rel='nofollow noopener'\u003eprivacy\u003c/a\u003e and \u003ca href='https://judge.me/content-policy' target='_blank' rel='nofollow noopener'\u003econtent\u003c/a\u003e policies.","widget_multilingual_sorting_enabled":false,"widget_translate_review_content_enabled":false,"widget_translate_review_content_method":"manual","popup_widget_review_selection":"automatically_with_pictures","popup_widget_round_border_style":true,"popup_widget_show_title":true,"popup_widget_show_body":true,"popup_widget_show_reviewer":false,"popup_widget_show_product":true,"popup_widget_show_pictures":true,"popup_widget_use_review_picture":true,"popup_widget_show_on_home_page":true,"popup_widget_show_on_product_page":true,"popup_widget_show_on_collection_page":true,"popup_widget_show_on_cart_page":true,"popup_widget_position":"bottom_left","popup_widget_first_review_delay":5,"popup_widget_duration":5,"popup_widget_interval":5,"popup_widget_review_count":5,"popup_widget_hide_on_mobile":true,"review_snippet_widget_round_border_style":true,"review_snippet_widget_card_color":"#FFFFFF","review_snippet_widget_text_color":"#000000","review_snippet_widget_lighter_text_color":"#7B7B7B","review_snippet_widget_slider_arrows_background_color":"#FFFFFF","review_snippet_widget_slider_arrows_color":"#000000","review_snippet_widget_star_color":"#2e475e","show_product_variant":false,"all_reviews_product_variant_label_text":"Variant: ","widget_show_verified_branding":false,"widget_ai_summary_title":"Customers say","widget_ai_summary_disclaimer":"AI-powered review summary based on recent customer reviews","widget_show_ai_summary":false,"widget_show_ai_summary_bg":false,"write_review_button_visibility":"everyone","store_summary_widget_heading":"Customers rate this store","store_summary_widget_button_text":"View customer reviews","store_summary_widget_button_theme_text":"See AI reviews summary","widget_show_review_title_input":true,"widget_autofill_review_title":true,"redirect_reviewers_invited_via_email":"review_widget","request_store_review_after_product_review":false,"request_review_other_products_in_order":false,"review_form_color_scheme":"default","review_form_corner_style":"square","review_form_star_color":"#2e475e","review_form_text_color":"#333333","review_form_background_color":"#ffffff","review_form_field_background_color":"#fafafa","review_form_button_color":"#2e475e","review_form_button_text_color":"#ffffff","review_form_modal_overlay_color":"#000000","review_form_theme":"multi_step","review_form_location":"in_store_popup","review_form_external_page_background_color":"#C5F7F0","review_content_screen_title_text":"How would you rate this product?","review_content_introduction_text":"We would love it if you would share a bit about your experience.","store_review_form_title_text":"How would you rate this store?","store_review_form_introduction_text":"We would love it if you would share a bit about your experience.","show_review_guidance_text":true,"one_star_review_guidance_text":"Poor","five_star_review_guidance_text":"Great","customer_information_screen_title_text":"About you","customer_information_introduction_text":"Please tell us more about you.","custom_questions_screen_title_text":"Your experience in more detail","custom_questions_introduction_text":"Here are a few questions to help us understand more about your experience.","review_submitted_screen_title_text":"Thanks for your review!","review_submitted_screen_thank_you_text":"We are processing it and it will appear on the store soon.","review_submitted_screen_email_verification_text":"Please confirm your email by clicking the link we just sent you. This helps us keep reviews authentic.","confirm_email_screen_title_text":"Confirm your email","confirm_email_screen_message_text":"To help keep reviews authentic, we'll send you a secure link to continue writing your review. It only takes a moment.","check_email_screen_title_text":"Check your email","check_email_screen_message_text":"We sent you an email to {{ email }}. Click the button on the email to continue.","check_email_screen_resend_message_text":"Email resent!","check_email_resend_hint_text":"Didn't get the email? Check your spam folder or [resend the email].","verification_email_rate_limit_error_text":"You've reached the limit for review attempts on this product. Please check your inbox or try again later.","review_submitted_request_store_review_text":"Would you like to share your experience of shopping with us?","review_submitted_review_other_products_text":"Would you like to review these products?","store_review_screen_title_text":"Would you like to share your experience of shopping with us?","store_review_introduction_text":"We value your feedback and use it to improve. Please share any thoughts or suggestions you have.","reviewer_media_screen_title_picture_text":"Share a picture","reviewer_media_introduction_picture_text":"Upload a photo to support your review.","reviewer_media_screen_title_video_text":"Share a video","reviewer_media_introduction_video_text":"Upload a video to support your review.","reviewer_media_screen_title_picture_or_video_text":"Share a picture or video","reviewer_media_introduction_picture_or_video_text":"Upload a photo or video to support your review.","reviewer_media_
1277youtube_url_text":"Paste your Youtube URL here","advanced_settings_next_step_button_text":"Next","advanced_settings_close_review_button_text":"Close","modal_write_review_flow":false,"write_review_flow_required_text":"Required","write_review_flow_privacy_message_text":"We respect your privacy.","write_review_flow_anonymous_text":"Post review as anonymous","write_review_flow_visibility_text":"This won't be visible to other customers.","write_review_flow_multiple_selection_help_text":"Select as many as you like","write_review_flow_single_selection_help_text":"Select one option","write_review_flow_required_field_error_text":"This field is required","write_review_flow_invalid_email_error_text":"Please enter a valid email address","write_review_flow_max_length_error_text":"Max. {{ max_length }} characters.","write_review_flow_media_upload_text":"\u003cb\u003eClick to upload\u003c/b\u003e or drag and drop","write_review_flow_gdpr_statement":"We'll only contact you about your review if necessary. By submitting your review, you agree to our \u003ca href='https://judge.me/terms' target='_blank' rel='nofollow noopener'\u003eterms and conditions\u003c/a\u003e and \u003ca href='https://judge.me/privacy' target='_blank' rel='nofollow noopener'\u003eprivacy policy\u003c/a\u003e.","rating_only_reviews_enabled":false,"show_negative_reviews_help_screen":false,"new_review_flow_help_screen_rating_threshold":3,"negative_review_resolution_screen_title_text":"Tell us more","negative_review_resolution_text":"Your experience matters to us. If there were issues with your purchase, we're here to help. Feel free to reach out to us, we'd love the opportunity to make things right.","negative_review_resolution_button_text":"Contact us","negative_review_resolution_proceed_with_review_text":"Leave a review","negative_review_resolution_subject":"Issue with purchase from {{ shop_name }}.{{ order_name }}","coupon_promo_intro_any_review_text":"Write a review and get a coupon for {{ amount }} off your next purchase","coupon_promo_intro_with_photo_text":"Write a review and add a photo or video to get a coupon for {{ amount }} off your next purchase","coupon_promo_intro_with_video_text":"Write a review and add a video to get a coupon for {{ amount }} off your next purchase","coupon_promo_intro_up_to_any_review_text":"Write a review and get a coupon for up to {{ amount }} off your next purchase","coupon_promo_intro_up_to_with_photo_text":"Write a review and add a photo or video to get a coupon for up to {{ amount }} off your next purchase","coupon_promo_intro_external_text":"Write a review and get a reward for your next purchase","coupon_promo_intro_external_with_photo_text":"Write a review and add a photo or video to get a reward for your next purchase","coupon_promo_intro_external_with_video_text":"Write a review and add a video to get a reward for your next purchase","coupon_promo_media_photo_text":"Add a photo or video and get a coupon for {{ amount }} off your next purchase","coupon_promo_media_photo_only_text":"Add a photo and get a coupon for {{ amount }} off your next purchase","coupon_promo_media_video_text":"Add a video and get a coupon for {{ amount }} off your next purchase","coupon_promo_media_external_photo_text":"Add a photo or video and get a reward for your next purchase","coupon_promo_media_external_photo_only_text":"Add a photo and get a reward for your next purchase","coupon_promo_media_external_video_text":"Add a video and get a reward for your next purchase","coupon_promo_success_text":"You've got a coupon for your next purchase at {{ shop_name }}!","coupon_promo_success_subtext":"You'll receive your coupon email within the hour.","preview_badge_collection_page_install_status":false,"widget_review_custom_css":"","preview_badge_custom_css":"","preview_badge_stars_count":"5-stars","featured_carousel_custom_css":"","floating_tab_custom_css":"","all_reviews_widget_custom_css":"","medals_widget_custom_css":"","verified_badge_custom_css":"","all_reviews_text_custom_css":"","transparency_badges_collected_via_store_invite":false,"transparency_badges_from_another_provider":false,"transparency_badges_collected_from_store_visitor":false,"transparency_badges_collected_by_verified_review_provider":true,"transparency_badges_earned_reward":false,"transparency_badges_collected_via_store_invite_text":"Review collected via store invitation","transparency_badges_from_another_provider_text":"Review collected from another provider","transparency_badges_collected_from_store_visitor_text":"Review collected from a store visitor","transparency_badges_written_in_google_text":"Review written in Google","transparency_badges_written_in_etsy_text":"Review written in Etsy","transparency_badges_written_in_shop_app_text":"Review written in Shop App","transparency_badges_earned_reward_text":"Review earned a reward for future purchase","product_review_widget_per_page":3,"widget_other_languages_reviews_per_page":3,"widget_store_review_label_text":"Review about the store","widget_cart_mode_aggregate_heading_text":"Customers rate this store","checkout_comment_extension_title_on_product_page":"Customer Comments","checkout_comment_extension_num_latest_comment_show":5,"checkout_comment_extension_format":"name_and_timestamp","checkout_comment_customer_name":"last_initial","checkout_comment_comment_notification":true,"preview_badge_collection_page_install_preference":false,"preview_badge_home_page_install_preference":false,"preview_badge_product_page_install_preference":true,"review_widget_install_preference":"","review_carousel_install_preference":false,"floating_reviews_tab_install_preference":"none","verified_reviews_count_badge_install_preference":false,"all_reviews_text_install_preference":false,"review_widget_best_location":true,"judgeme_medals_install_preference":false,"review_widget_revamp_enabled":false,"review_widget_qna_enabled":false,"review_widget_header_theme":"minimal","review_widget_widget_title_enabled":true,"review_widget_header_text_size":"medium","review_widget_header_text_weight":"regular","review_widget_average_rating_style":"compact","review_widget_bar_chart_enabled":true,"review_widget_bar_chart_type":"numbers","review_widget_bar_chart_style":"standard","review_widget_expanded_media_gallery_enabled":false,"review_widget_show_review_highlights":false,"review_widget_show_review_keywords_in_gray":false,"review_widget_reviews_section_theme":"standard","review_widget_image_style":"thumbnails","review_widget_review_image_ratio":"square","review_widget_stars_size":"medium","review_widget_verified_badge":"standard_text","review_widget_review_title_text_size":"medium","review_widget_review_text_size":"medium","review_widget_review_text_length":"medium","review_widget_number_of_columns_desktop":3,"review_widget_carousel_transition_speed":5,"review_widget_custom_questions_answers_display":"always","review_widget_card_section_size":"small","review_widget_button_text_color":"#FFFFFF","review_widget_text_color":"#000000","review_widget_lighter_text_color":"#7B7B7B","review_widget_corner_styling":"soft","review_widget_review_word_singular":"review","review_widget_review_word_plural"
1277:"reviews","review_widget_voting_label":"Helpful?","review_widget_shop_reply_label":"Reply from {{ shop_name }}:","review_widget_filters_title":"Filters","review_widget_filter_rating_title":"Rating","review_widget_filter_keyword_title":"Keyword","review_widget_clear_filters_text":"Clear filters","review_widget_expand_more_text":"More","review_widget_review_highlights_title":"Review highlights","qna_widget_question_word_singular":"Question","qna_widget_question_word_plural":"Questions","qna_widget_answer_reply_label":"Answer from {{ answerer_name }}:","qna_content_screen_title_text":"Ask a question about this product","qna_widget_question_required_field_error_text":"Please enter your question.","qna_widget_flow_gdpr_statement":"We'll only contact you about your question if necessary. By submitting your question, you agree to our \u003ca href='https://judge.me/terms' target='_blank' rel='nofollow noopener'\u003eterms and conditions\u003c/a\u003e and \u003ca href='https://judge.me/privacy' target='_blank' rel='nofollow noopener'\u003eprivacy policy\u003c/a\u003e.","qna_widget_question_submitted_text":"Thanks for your question!","qna_widget_close_form_text_question":"Close","qna_widget_question_submit_success_text":"We’ll notify you by email when your question is answered.","all_reviews_widget_v2025_enabled":false,"all_reviews_widget_v2025_header_theme":"default","all_reviews_widget_v2025_widget_title_enabled":true,"all_reviews_widget_v2025_header_text_size":"medium","all_reviews_widget_v2025_header_text_weight":"regular","all_reviews_widget_v2025_average_rating_style":"compact","all_reviews_widget_v2025_bar_chart_enabled":true,"all_reviews_widget_v2025_bar_chart_type":"numbers","all_reviews_widget_v2025_bar_chart_style":"standard","all_reviews_widget_v2025_expanded_media_gallery_enabled":false,"all_reviews_widget_v2025_show_store_medals":true,"all_reviews_widget_v2025_show_photo_gallery":true,"all_reviews_widget_v2025_show_review_keywords":false,"all_reviews_widget_v2025_show_ai_summary":false,"all_reviews_widget_v2025_show_ai_summary_bg":false,"all_reviews_widget_v2025_show_review_highlights":false,"all_reviews_widget_v2025_show_review_keywords_in_gray":false,"all_reviews_widget_v2025_add_search_bar":false,"all_reviews_widget_v2025_default_sort_method":"most-recent","all_reviews_widget_v2025_reviews_per_page":10,"all_reviews_widget_v2025_reviews_section_theme":"default","all_reviews_widget_v2025_image_style":"thumbnails","all_reviews_widget_v2025_review_image_ratio":"square","all_reviews_widget_v2025_stars_size":"medium","all_reviews_widget_v2025_verified_badge":"standard_text","all_reviews_widget_v2025_review_title_text_size":"medium","all_reviews_widget_v2025_review_text_size":"medium","all_reviews_widget_v2025_review_text_length":"medium","all_reviews_widget_v2025_number_of_columns_desktop":3,"all_reviews_widget_v2025_carousel_transition_speed":5,"all_reviews_widget_v2025_custom_questions_answers_display":"always","all_reviews_widget_v2025_review_dates":false,"all_reviews_widget_v2025_card_section_size":"small","all_reviews_widget_v2025_show_product_variant":false,"all_reviews_widget_v2025_show_reviewer_avatar":true,"all_reviews_widget_v2025_reviewer_name_as_initial":"","all_reviews_widget_v2025_review_location_show":false,"all_reviews_widget_v2025_location_format":"","all_reviews_widget_v2025_show_country_flag":false,"all_reviews_widget_v2025_widget_thumb":false,"all_reviews_widget_v2025_verified_by_shop_badge_style":"light","all_reviews_widget_v2025_social_share":false,"all_reviews_widget_v2025_social_share_options_order":"Facebook,Twitter,LinkedIn,Pinterest","all_reviews_widget_v2025_pagination_type":"standard","all_reviews_widget_v2025_button_text_color":"#FFFFFF","all_reviews_widget_v2025_text_color":"#000000","all_reviews_widget_v2025_lighter_text_color":"#7B7B7B","all_reviews_widget_v2025_corner_styling":"soft","all_reviews_widget_v2025_title":"Customer reviews","all_reviews_widget_v2025_ai_summary_title":"Customers say about this store","all_reviews_widget_v2025_no_review_text":"Be the first to write a review","all_reviews_widget_v2025_review_highlights_title":"Review highlights","reviews_grid_widget_show_sample_reviews":false,"reviews_grid_widget_review_selection":"all","reviews_grid_widget_select_products":[],"reviews_grid_widget_show_media_only":false,"reviews_grid_widget_display_order":"media_first","reviews_grid_widget_card_grouping":"per_media","reviews_grid_widget_columns_desktop":3,"reviews_grid_widget_rows_desktop":3,"reviews_grid_widget_columns_mobile":2,"reviews_grid_widget_rows_mobile":6,"reviews_grid_widget_show_stars":true,"reviews_grid_widget_show_reviewer_name":true,"reviews_grid_widget_show_review_title_on_hover_desktop":true,"reviews_grid_widget_corner_styling":"soft","reviews_grid_widget_card_spacing":"medium","reviews_grid_widget_header_text_color":"#000000","reviews_grid_widget_star_and_reviewer_name_color":"#F9F9F9","reviews_grid_widget_overlay_and_background_color":"#000000","reviews_grid_widget_content_color":"#F9F9F9","reviews_grid_widget_header_text":"From our customers","reviews_grid_widget_show_average_rating":true,"trust_badge_enabled":false,"trust_badge_structure":"outline","trust_badge_color":"black","trust_badge_star":"black","trust_badge_rating_display_default":"show_avg_text","platform":"shopify","branding_url":"https://app.judge.me/reviews/stores/lukeslobster.com","branding_text":"Powered by Judge.me","locale":"en","reply_name":" Luke's Lobster","shop_currency":"USD","widget_version":"3.0","footer":true,"autopublish":false,"review_dates":true,"enable_custom_form":false,"shop_use_review_site":true,"shop_locale":"en","enable_multi_locales_translations":true,"show_review_title_input":true,"autofill_review_title":true,"review_verification_email_status":"never","require_verification_before_submit":false,"sign_in_with_
1277shop_enabled":false,"customer_account_validation_enabled":true,"most_relevant_sort_enabled":false,"coupon_promo_invited_eligible":true,"coupon_promo_web_eligible":false,"uses_coupon_integration":true,"uses_external_coupon":false,"can_be_branded":true,"rtl_stars_enabled_ar":true,"rtl_stars_enabled_he":true,"reply_name_text":" Luke's Lobster"};</script>
1277 <style class='jdgm-settings-style'>.jdgm-xx{left:0}:root{--jdgm-primary-color: #2e475e;--jdgm-secondary-color: rgba(46,71,94,0.1);--jdgm-star-color: #2e475e;--jdgm-write-review-text-color: white;--jdgm-write-review-bg-color: #2e475e;--jdgm-paginate-color: #2e475e;--jdgm-border-radius: 0;--jdgm-reviewer-name-color: #2e475e}.jdgm-histogram__bar-content{background-color:#2e475e}.jdgm-rev[data-verified-buyer=true] .jdgm-rev__icon.jdgm-rev__icon:after,.jdgm-rev__buyer-badge.jdgm-rev__buyer-badge{color:white;background-color:#2e475e}.jdgm-review-widget--small .jdgm-gallery.jdgm-gallery .jdgm-gallery__thumbnail-link:nth-child(8) .jdgm-gallery__thumbnail-wrapper.jdgm-gallery__thumbnail-wrapper:before{content:"See more"}@media only screen and (min-width: 768px){.jdgm-gallery.jdgm-gallery .jdgm-gallery__thumbnail-link:nth-child(8) .jdgm-gallery__thumbnail-wrapper.jdgm-gallery__thumbnail-wrapper:before{content:"See more"}}.jdgm-rev__thumb-btn{color:#2e475e}.jdgm-rev__thumb-btn:hover{opacity:0.8}.jdgm-rev__thumb-btn:not([disabled]):hover,.jdgm-rev__thumb-btn:hover,.jdgm-rev__thumb-btn:active,.jdgm-rev__thumb-btn:visited{color:#2e475e}.jdgm-preview-badge .jdgm-star.jdgm-star{color:#2e475e}.jdgm-prev-badge[data-average-rating='0.00']{display:none !important}.jdgm-widget.jdgm-all-reviews-widget,.jdgm-widget .jdgm-rev-widg{border:none;padding:0}.jdgm-author-fullname{display:none !important}.jdgm-author-all-initials{display:none !important}.jdgm-rev-widg__title{visibility:hidden}.jdgm-rev-widg__summary-text{visibility:hidden}.jdgm-prev-badge__text{visibility:hidden}.jdgm-rev__prod-link-prefix:before{content:'about'}.jdgm-rev__variant-label:before{content:'Variant: '}.jdgm-rev__out-of-store-text:before{content:'(out of store)'}@media only screen and (min-width: 768px){.jdgm-rev__pics .jdgm-rev_all-rev-page-picture-separator,.jdgm-rev__pics .jdgm-rev__product-picture{display:none}}@media only screen and (max-width: 768px){.jdgm-rev__pics .jdgm-rev_all-rev-page-picture-separator,.jdgm-rev__pics .jdgm-rev__product-picture{display:none}}.jdgm-preview-badge[data-template="collection"]{display:none !important}.jdgm-preview-badge[data-template="index"]{display:none !important}.jdgm-verified-count-badget[data-from-snippet="true"]{display:none !important}.jdgm-carousel-wrapper[data-from-snippet="true"]{display:none !important}.jdgm-all-reviews-text[data-from-snippet="true"]{display:none !important}.jdgm-medals-section[data-from-snippet="true"]{display:none !important}.jdgm-ugc-media-wrapper[data-from-snippet="true"]{display:none !important}.jdgm-rev__transparency-badge[data-badge-type="review_collected_via_store_invitation"]{display:none !important}.jdgm-rev__transparency-badge[data-badge-type="review_collected_from_another_provider"]{display:none !important}.jdgm-rev__transparency-badge[data-badge-type="review_collected_from_store_visitor"]{display:none !important}.jdgm-rev__transparency-badge[data-badge-type="review_earned_for_future_purchase"]{display:none !important}.jdgm-review-snippet-widget{--jdgm-snippet-card-color: #fff;--jdgm-snippet-text-color: #000;--jdgm-snippet-lighter-text-color: #7B7B7B;--jdgm-snippet-star-color: #2e475e;--jdgm-snippet-border-radius: 8px;--jdgm-snippet-arrows-bg-color: #fff;--jdgm-snippet-arrows-color: #000}.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__cards-container .jdgm-rev-snippet-card{border-radius:8px;background:#fff}.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__cards-container .jdgm-rev-snippet-card__rev-rating .jdgm-star{color:#2e475e}.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__prev-btn,.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__next-btn{border-radius:50%;background:#fff}.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__prev-btn>svg,.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__next-btn>svg{fill:#000}.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jm-mfp-content,.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev__icon,.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev__pic-img,.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev__reply{border-radius:8px}.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev[data-verified-buyer="true"] .jdgm-full-rev__icon::after{border-radius:8px}.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev .jdgm-rev__buyer-badge{border-radius:calc( 8px / 2 )}.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev .jdgm-full-rev__replier::before{content:' Luke&#39;s Lobster'}.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev .jdgm-full-rev__product-button{border-radius:calc( 8px * 6 )}
1278</style> <style class='jdgm-settings-style'></style>
1279
1280  
1281  
1282  
1283  <style class='jdgm-miracle-styles'>
1284  @-webkit-keyframes jdgm-spin{0%{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);-ms-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes jdgm-spin{0%{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);-ms-transform:rotate(359deg);transform:rotate(359deg)}}@font-face{font-family:'JudgemeStar';src:url("data:application/x-font-woff;charset=utf-8;base64,d09GRgABAAAAAAScAA0AAAAABrAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAEgAAAABoAAAAcbyQ+3kdERUYAAARgAAAAHgAAACAAMwAGT1MvMgAAAZgAAABGAAAAVi+vS9xjbWFwAAAB8AAAAEAAAAFKwBMjvmdhc3AAAARYAAAACAAAAAj//wADZ2x5ZgAAAkAAAAEJAAABdH33LXtoZWFkAAABMAAAAC0AAAA2BroQKWhoZWEAAAFgAAAAHAAAACQD5QHQaG10eAAAAeAAAAAPAAAAFAYAAABsb2NhAAACMAAAAA4AAAAOAO4AeG1heHAAAAF8AAAAHAAAACAASgAvbmFtZQAAA0wAAADeAAABkorWfVZwb3N0AAAELAAAACkAAABEp3ubLXgBY2BkYADhPPP4OfH8Nl8ZuJkYQODS2fRrCPr/aSYGxq1ALgcDWBoAO60LkwAAAHgBY2BkYGDc+v80gx4TAwgASaAICmABAFB+Arl4AWNgZGBgYGPQYWBiAAIwyQgWc2AAAwAHVQB6eAFjYGRiYJzAwMrAwejDmMbAwOAOpb8ySDK0MDAwMbByMsCBAAMCBKS5pjA4PGB4wMR44P8BBj3GrQymQGFGkBwAjtgK
1284/gAAeAFjYoAAEA1jAwAAZAAHAHgB3crBCcAwDEPRZydkih567CDdf4ZskmLwFBV8xBfCaC4BXkOUmx4sU0h2ngNb9V0vQCxaRKIAevT7fGWuBrEAAAAAAAAAAAA0AHgAugAAeAF9z79Kw1AUx/FzTm7un6QmJtwmQ5Bg1abgEGr/BAqlU6Gju+Cgg1MkQ/sA7Vj7BOnmO/gUvo2Lo14NqIO6/IazfD8HEODtmQCfoANwNsyp2/GJt3WKQrd1NLiYYWx2PBqOsmJMEOznPOTzfSCrhAtbbLdmeFLJV9eKd63WLrZcIcuaEVdssWCKM6pLCfTVOYbz/0pNSMSZKLIZpvh78sAUH6PlMrreTCabP9r+Z/puPZ2ur/RqpQHgh+MIegCnXeM4MRAPjYN//5tj4ZtTjkFqEdmeMShlEJ7tVAly2TAkx6R68Fl4E/aVvn8JqHFQ4JS1434gXKcuL31dDhzs3YbsEOAd/IU88gAAAHgBfY4xTgMxEEVfkk0AgRCioKFxQYd2ZRtpixxgRU2RfhU5q5VWseQ4JdfgAJyBlmNwAM7ABRhZQ0ORwp7nr+eZAa54YwYg9zm3ynPOeFRe8MCrciXOh/KSS76UV5L/iDmrLiS5AeU519wrL3jmSbkS5115yR2fyivJv9kx0ZMZ2RLZw27q87iNQi8EBo5FSPIMw3HqBboi5lKTGAGDp8FKXWP+t9TU01Lj5His1Ba6uM9dTEMwvrFmbf5GC/q2drW3ruXUhhsCiQOjznFlCzYhHUZp4xp76vsvQh89CQAAeAFjYGJABowM6IANLMrEyMTIzMjCXpyRWJBqZshWXJJYBKOMAFHFBucAAAAAAAAB//8AAngBY2BkYGDgA2IJBhBgAvKZGViBJAuYxwAABJsAOgAAeAFjYGBgZACCk535hiD60tn0azAaAEqpB6wAAA==") format("woff");font-weight:normal;font-style:normal}.jdgm-star{font-family:'JudgemeStar';display:inline !important;text-decoration:none !important;padding:0 4px 0 0 !important;margin:0 !important;font-weight:bold;opacity:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.jdgm-star:hover{opacity:1}.jdgm-star:last-of-type{padding:0 !important}.jdgm-star.jdgm--on:before{content:"\e000"}.jdgm-star.jdgm--off:before{content:"\e001"}.jdgm-star.jdgm--half:before{content:"\e002"}.jdgm-widget *{margin:0;line-height:1.4;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-overflow-scrolling:touch}.jdgm-hidden{display:none !important;visibility:hidden !important}.jdgm-temp-hidden{display:none}.jdgm-spinner{width:40px;height:40px;margin:auto;border-radius:50%;border-top:2px solid #eee;border-right:2px solid #eee;border-bottom:2px solid #eee;border-left:2px solid #ccc;-webkit-animation:jdgm-spin 0.8s infinite linear;animation:jdgm-spin 0.8s infinite linear}.jdgm-prev-badge{display:block !important}
1285
1286</style>
1287
1288
1289  
1290  
1291   
1292
1293
1294<script data-cfasync='false' class='jdgm-script'>
1295!function(e){window.jdgm=window.jdgm||{},jdgm.CDN_HOST="https://cdn.judge.me/",
1296jdgm.docReady=function(d){(e.attachEvent?"complete"===e.readyState:"loading"!==e.readyState)?
1297setTimeout(d,0):e.addEventListener("DOMContentLoaded",d)},jdgm.loadCSS=function(d,t,o,s){
1298!o&&jdgm.loadCSS.requestedUrls.indexOf(d)>=0||(jdgm.loadCSS.requestedUrls.push(d),
1299(s=e.createElement("link")).rel="stylesheet",s.class="jdgm-stylesheet",s.media="nope!",
1300s.href=d,s.onload=function(){this.media="all",t&&setTimeout(t)},e.body.appendChild(s))},
1301jdgm.loadCSS.requestedUrls=[],jdgm.docReady(function(){(window.jdgmLoadCSS||e.querySelectorAll(
1302".jdgm-widget, .jdgm-all-reviews-page").length>0)&&(jdgmSettings.widget_load_with_code_splitting?
1303parseFloat(jdgmSettings.widget_version)>=3?jdgm.loadCSS(jdgm.CDN_HOST+"widget_v3/base.css"):
1304jdgm.loadCSS(jdgm.CDN_HOST+"widget/base.css"):jdgm.loadCSS(jdgm.CDN_HOST+"shopify_v2.css"))})}(document);
1305</script>
vendor: 1 bytes, line 1305
1305
1306<script async data-cfasync="false" type="text/javascript" src="https://cdn.judge.me/loader.js"></script>
1306
1307
1308<noscript><link rel="stylesheet" type="text/css" media="all" href="https://cdn.judge.me/shopify_v2.css"></noscript>
1309<!-- End of Judge.me Core -->
1310
1311
1312<!-- BEGIN app block: shopify://apps/eg-auto-add-to-cart/blocks/app-embed/0f7d4f74-1e89-4820-aec4-6564d7e535d2 -->
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324  
1325    
1325<script
1326      async
1327      type="text/javascript"
1328      src="https://cdn.506.io/eg/script.js?shop=lukes-lobster-shop.myshopify.com&v=12"
1329    ></script>
1329
1330  
1331
1332
1333
1334  <meta id="easygift-shop" itemid="c2hvcF8kXzE3OTAzNjA4MzI=" content="{&quot;isInstalled&quot;:true,&quot;installedOn&quot;:&quot;2025-06-25T12:56:54.866Z&quot;,&quot;appVersion&quot;:&quot;3.0&quot;,&quot;subscriptionName&quot;:&quot;Unlimited&quot;,&quot;cartAnalytics&quot;:true,&quot;freeTrialEndsOn&quot;:null,&quot;settings&quot;:{&quot;reminderBannerStyle&quot;:{&quot;position&quot;:{&quot;horizontal&quot;:&quot;right&quot;,&quot;vertical&quot;:&quot;bottom&quot;},&quot;fontFamily&quot;:null,&quot;backgroundColor&quot;:&quot;#FFFFFF&quot;,&quot;borderRadius&quot;:null,&quot;padding&quot;:null,&quot;headerFontSize&quot;:null,&quot;subHeaderFontSize&quot;:null,&quot;closingMode&quot;:&quot;doNotAutoClose&quot;,&quot;cssStyles&quot;:&quot;&quot;,&quot;displayAfter&quot;:5,&quot;headerText&quot;:&quot;&quot;,&quot;imageUrl&quot;:null,&quot;primaryColor&quot;:&quot;#000000&quot;,&quot;reshowBannerAfter&quot;:&quot;everyNewSession&quot;,&quot;selfcloseAfter&quot;:5,&quot;showImage&quot;:false,&quot;subHeaderText&quot;:&quot;&quot;},&quot;addedItemIdentifier&quot;:&quot;_Gifted&quot;,&quot;ignoreOtherAppLineItems&quot;:null,&quot;customVariantsInfoLifetimeMins&quot;:1440,&quot;redirectPath&quot;:null,&quot;ignoreNonStandardCartRequests&quot;:false,&quot;bannerStyle&quot;:{&quot;position&quot;:{&quot;horizontal&quot;:&quot;right&quot;,&quot;vertical&quot;:&quot;bottom&quot;},&quot;fontFamily&quot;:null,&quot;backgroundColor&quot;:&quot;#FFFFFF&quot;,&quot;borderRadius&quot;:null,&quot;padding&quot;:null,&quot;headerFontSize&quot;:null,&quot;subHeaderFontSize&quot;:null,&quot;cssStyles&quot;:null,&quot;primaryColor&quot;:&quot;#000000&quot;},&quot;themePresetId&quot;:null,&quot;notificationStyle&quot;:{&quot;position&quot;:{&quot;horizontal&quot;:null,&quot;vertical&quot;:null},&quot;fontFamily&quot;:null,&quot;backgroundColor&quot;:&quot;#FFFFFF&quot;,&quot;borderRadius&quot;:null,&quot;headerFontSize&quot;:null,&quot;subHeaderFontSize&quot;:null,&quot;padding&quot;:null,&quot;cssStyles&quot;:null,&quot;duration&quot;:null,&quot;hasCustomizations&quot;:false,&quot;primaryColor&quot;:null},&quot;fetchCartData&quot;:false,&quot;useLocalStorage&quot;:{&quot;enabled&quot;:false,&quot;expiryMinutes&quot;:null},&quot;popupStyle&quot;:{&quot;buttonTextColor&quot;:null,&quot;headerFontFamily&quot;:null,&quot;bodyFontFamily&quot;:null,&quot;backgroundColor&quot;:&quot;#FFFFFF&quot;,&quot;borderRadius&quot;:null,&quot;padding&quot;:null,&quot;headerFontSize&quot;:null,&quot;subHeaderFontSize&quot;:null,&quot;bodyColor&quot;:null,&quot;bodyFontSize&quot;:null,&quot;closeModalOutsideClick&quot;:true,&quot;priceShowZeroDecimals&quot;:true,&quot;addButtonText&quot;:null,&quot;cssStyles&quot;:null,&quot;dismissButtonText&quot;:null,&quot;hasCustomizations&quot;:false,&quot;imageUrl&quot;:null,&quot;outOfStockButtonText&quot;:null,&quot;primaryColor&quot;:null,&quot;secondaryColor&quot;:null,&quot;showProductLink&quot;:false,&quot;subscriptionLabel&quot;:&quot;Subscription Plan&quot;},&quot;refreshAfterBannerClick&quot;:false,&quot;disableReapplyRules&quot;:false,&quot;disableReloadOnFailedAddition&quot;:false,&quot;autoReloadCartPage&quot;:false,&quot;ajaxRedirectPath&quot;:null,&quot;allowSimultaneousRequests&quot;:false,&quot;applyRulesOnCheckout&quot;:false,&quot;enableCartCtrlOverrides&quot;:false,&quot;customRedirectFromCart&quot;:null,&quot;scriptSettings&quot;:{&quot;branding&quot;:{&quot;removalRequestSent&quot;:null,&quot;show&quot;:false},&quot;productPageRedirection&quot;:{&quot;enabled&quot;:false,&quot;products&quot;:[],&quot;redirectionURL&quot;:&quot;\/&quot;},&quot;debugging&quot;:{&quot;enabled&quot;:false,&quot;enabledOn&quot;:null,&quot;stringifyObj&quot;:false},&quot;reApplyValueBasedRulesInCart&quot;:false,&quot;useFinalPriceGetEntireCart&quot;:false,&quot;fetchCartDataBeforeRequest&quot;:false,&quot;disableRedirectAfterFormSubmit&quot;:false,&quot;enableBuyNowInterceptions&quot;:false,&quot;useFinalPrice&quot;:false,&quot;hideGiftedPropertyText&quot;:false,&quot;customCSS&quot;:null,&quot;removeProductsAddedFromExpiredRules&quot;:true,&quot;decodePayload&quot;:false,&quot;delayUpdates&quot;:2000,&quot;hideAlertsOnFrontend&quot;:false,&quot;fetchProductInfoFromSavedDomain&quot;:false,&quot;removeEGPropertyFromSplitActionLineItems&quot;:false},&quot;promoCodeMessageStyle&quot;:{&quot;message&quot;:&quot;Free gift added!&quot;},&quot;accessToEnterprise&quot;:false},&quot;translations&quot;:null,&quot;defaultLocale&quot;:&quot;en&quot;,&quot;shopDomain&quot;:&quot;lukeslobster.com&quot;}">
1335
1336
1337<script defer>
1338  (async function() {
1339    try {
1340
1341      const blockVersion = "v3"
1342      if (blockVersion != "v3") {
1343        return
1344      }
1345
1346      let metaErrorFlag = false;
1347      if (metaErrorFlag) {
1348        return
1349      }
1350
1351      // Parse metafields as JSON
1352      const metafields = {};
1353
1354      // Process metafields in JavaScript
1355      let savedRulesArray = [];
1356      for (const [key, value] of Object.entries(metafields)) {
1357        if (value) {
1358          for (const prop in value) {
1359            // avoiding Object.Keys for performance gain -- no need to make an array of keys.
1360            savedRulesArray.push(value);
1361            break;
1362          }
1363        }
1364      }
1365
1366      const metaTag = document.createElement('meta');
1367      metaTag.id = 'easygift-rules';
1368      metaTag.content = JSON.stringify(savedRulesArray);
1369      metaTag.setAttribute('itemid', 'cnVsZXNfJF8xNzkwMzYwODMy');
1370
1371      document.head.appendChild(metaTag);
1372      } catch (err) {
1373        
1374      }
1375  })();
1376</script>
1376
1377
1378
1379  
1379<script
1380    type="text/javascript"
1381    defer
1382  >
1383
1384    (function () {
1385      try {
1386        window.EG_INFO = window.EG_INFO || {};
1387        var shopInfo = {"isInstalled":true,"installedOn":"2025-06-25T12:56:54.866Z","appVersion":"3.0","subscriptionName":"Unlimited","cartAnalytics":true,"freeTrialEndsOn":null,"settings":{"reminderBannerStyle":{"position":{"horizontal":"right","vertical":"bottom"},"fontFamily":null,"backgroundColor":"#FFFFFF","borderRadius":null,"padding":null,"headerFontSize":null,"subHeaderFontSize":null,"closingMode":"doNotAutoClose","cssStyles":"","displayAfter":5,"headerText":"","imageUrl":null,"primaryColor":"#000000","reshowBannerAfter":"everyNewSession","selfcloseAfter":5,"showImage":false,"subHeaderText":""},"addedItemIdentifier":"_Gifted","ignoreOtherAppLineItems":null,"customVariantsInfoLifetimeMins":1440,"redirectPath":null,"ignoreNonStandardCartRequests":false,"bannerStyle":{"position":{"horizontal":"right","vertical":"bottom"},"fontFamily":null,"backgroundColor":"#FFFFFF","borderRadius":null,"padding":null,"headerFontSize":null,"subHeaderFontSize":null,"cssStyles":null,"primaryColor":"#000000"},"themePresetId":null,"notificationStyle":{"position":{"horizontal":null,"vertical":null},"fontFamily":null,"backgroundColor":"#FFFFFF","borderRadius":null,"headerFontSize":null,"subHeaderFontSize":null,"padding":null,"cssStyles":null,"duration":null,"hasCustomizations":false,"primaryColor":null},"fetchCartData":false,"useLocalStorage":{"enabled":false,"expiryMinutes":null},"popupStyle":{"buttonTextColor":null,"headerFontFamily":null,"bodyFontFamily":null,"backgroundColor":"#FFFFFF","borderRadius":null,"padding":null,"headerFontSize":null,"subHeaderFontSize":null,"bodyColor":null,"bodyFontSize":null,"closeModalOutsideClick":true,"priceShowZeroDecimals":true,"addButtonText":null,"cssStyles":null,"dismissButtonText":null,"hasCustomizations":false,"imageUrl":null,"outOfStockButtonText":null,"primaryColor":null,"secondaryColor":null,"showProductLink":false,"subscriptionLabel":"Subscription Plan"},"refreshAfterBannerClick":false,"disableReapplyRules":false,"disableReloadOnFailedAddition":false,"autoReloadCartPage":false,"ajaxRedirectPath":null,"allowSimultaneousRequests":false,"applyRulesOnCheckout":false,"enableCartCtrlOverrides":false,"customRedirectFromCart":null,"scriptSettings":{"branding":{"removalRequestSent":null,"show":false},"productPageRedirection":{"enabled":false,"products":[],"redirectionURL":"\/"},"debugging":{"enabled":false,"enabledOn":null,"stringifyObj":false},"reApplyValueBasedRulesInCart":false,"useFinalPriceGetEntireCart":false,"fetchCartDataBeforeRequest":false,"disableRedirectAfterFormSubmit":false,"enableBuyNowInterceptions":false,"useFinalPrice":false,"hideGiftedPropertyText":false,"customCSS":null,"removeProductsAddedFromExpiredRules":true,"decodePayload":false,"delayUpdates":2000,"hideAlertsOnFrontend":false,"fetchProductInfoFromSavedDomain":false,"removeEGPropertyFromSplitActionLineItems":false},"promoCodeMessageStyle":{"message":"Free gift added!"},"accessToEnterprise":false},"translations":null,"defaultLocale":"en","shopDomain":"lukeslobster.com"};
1388        var productRedirectionEnabled = shopInfo.settings.scriptSettings.productPageRedirection.enabled;
1389        if (["Unlimited", "Enterprise"].includes(shopInfo.subscriptionName) && productRedirectionEnabled) {
1390          var products = shopInfo.settings.scriptSettings.productPageRedirection.products;
1391          if (products.length > 0) {
1392            var productIds = products.map(function(prod) {
1393              var productGid = prod.id;
1394              var productIdNumber = parseInt(productGid.split('/').pop());
1395              return productIdNumber;
1396            });
1397            var productInfo = null;
1398            var isProductInList = productIds.includes(productInfo.id);
1399            if (isProductInList) {
1400              var redirectionURL = shopInfo.settings.scriptSettings.productPageRedirection.redirectionURL;
1401              if (redirectionURL) {
1402                window.location = redirectionURL;
1403              }
1404            }
1405          }
1406        }
1407
1408        
1409      } catch(err) {
1410      return
1411    }}
1411)()
1412  </script>
1412
1413
1414
1415
1416<!-- END app block --><!-- BEGIN app block: shopify://apps/klaviyo-email-marketing-sms/blocks/klaviyo-onsite-embed/2632fe16-c075-4321-a88b-50b567f42507 -->
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429  
1429<script async src="https://static.klaviyo.com/onsite/js/Sa3M6Q/klaviyo.js?company_id=Sa3M6Q"></script>
1429
1430  
1430<script>!function(){if(!window.klaviyo){window._klOnsite=window._klOnsite||[];try{window.klaviyo=new Proxy({},{get:function(n,i){return"push"===i?function(){var n;(n=window._klOnsite).push.apply(n,arguments)}:function(){for(var n=arguments.length,o=new Array(n),w=0;w<n;w++)o[w]=arguments[w];var t="function"==typeof o[o.length-1]?o.pop():void 0,e=new Promise((function(n){window._klOnsite.push([i].concat(o,[function(i){t&&t(i),n(i)}]))}));return e}}})}catch(n){window.klaviyo=window.klaviyo||[],window.klaviyo.push=function(){var n;(n=window._klOnsite).push.apply(n,arguments)}}}}();</script>
1430
1431
1432  
1433
1434
1435
1436
1437  
1437<script>
1438    window.klaviyoReviewsProductDesignMode = false
1439  </script>
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449<!-- END app block --><!-- BEGIN app block: shopify://apps/delivery-pickup/blocks/odd-block/80605365-b4f4-42ba-9b84-3d39984a49dc -->  
1450  
1451  
1452  
1453  �
1454  
1454<script>
1455    function _0x2197(_0x2946b1,_0x6c7c4c){var _0x15d7c5=_0x15d7();return _0x2197=function(_0x219790,_0xc28fad){_0x219790=_0x219790-0x11e;var _0x5e1640=_0x15d7c5[_0x219790];return _0x5e1640;},_0x2197(_0x2946b1,_0x6c7c4c);}var _0x50d14b=_0x2197;(function(_0x227c2c,_0x423dfc){var _0x1ec0c9=_0x2197,_0x4f0baa=_0x227c2c();while(!![]){try{var _0x411c1e=parseInt(_0x1ec0c9(0x128))/0x1*(-parseInt(_0x1ec0c9(0x123))/0x2)+-parseInt(_0x1ec0c9(0x12b))/0x3+-parseInt(_0x1ec0c9(0x131))/0x4*(-parseInt(_0x1ec0c9(0x132))/0x5)+parseInt(_0x1ec0c9(0x133))/0x6*(parseInt(_0x1ec0c9(0x130))/0x7)+parseInt(_0x1ec0c9(0x126))/0x8*(-parseInt(_0x1ec0c9(0x12c))/0x9)+parseInt(_0x1ec0c9(0x121))/0xa+-parseInt(_0x1ec0c9(0x11e))/0xb*(-parseInt(_0x1ec0c9(0x135))/0xc);if(_0x411c1e===_0x423dfc)break;else _0x4f0baa['push'](_0x4f0baa['shift']());}catch(_0x405d49){_0x4f0baa['push'](_0x4f0baa['shift']());}}}(_0x15d7,0x9a9d2),window[_0x50d14b(0x12e)]=_0x50d14b(0x127));if(location['href'][_0x50d14b(0x12a)](_0x50d14b(0x136))){var order_id=atob(location[_0x50d14b(0x120)][_0x50d14b(0x129)]('?data=')[0x1])[_0x50d14b(0x129)]('&')[0x0][_0x50d14b(0x129)]('order_id=')[0x1],ty_link=atob(location[_0x50d14b(0x120)][_0x50d14b(0x129)](_0x50d14b(0x12f))[0x1])[_0x50d14b(0x129)]('&')[0x1][_0x50d14b(0x129)](_0x50d14b(0x137))[0x1],exist_id=localStorage[_0x50d14b(0x134)](_0x50d14b(0x122)),orderArray={};exist_id?(!JSON[_0x50d14b(0x124)](exist_id)[order_id]&&(orderArray[order_id]='0'),orderArray={...JSON['parse'](exist_id),...orderArray}):orderArray[order_id]='0',window[_0x50d14b(0x138)][_0x50d14b(0x125)](_0x50d14b(0x122),JSON[_0x50d14b(0x12d)](orderArray)),ty_link!=''&&(window[_0x50d14b(0x11f)]=ty_link);}function _0x15d7(){var _0x478bff=['997208RoDepl','{"0":1}','418478tReEui','split','includes','2243148YpOopi','81UqgdRC','stringify','prevent_checkout','?data=','35vemzzr','120NhMRkl','202715cchOqN','55716JRSdAd','getItem','20389548XjGGUI','data','order_link=','localStorage','11HvWIeX','location','href','7964580uJGPEk','order_id','6wJgwxN','parse','setItem'];_0x15d7=function(){return _0x478bff;};return _0x15d7();}
1456  </script>
1456<!-- When to load our JS in all pages -->
1457            
1457<script type="text/javascript" async src="https://odd.identixweb.com/order-delivery-date/front_scripts/static/js/main.js"></script>
1457�<!-- When to load our JS only in cart page but we need to load in customer order detail and account page for reschedule order details --><!-- To load our preview using "run wizard" button that time use this JS -->
1458 
1458<script type="text/javascript" async src="https://odd.identixweb.com/order-delivery-date/assets/js/odd_preview.min.js"></script>
1458
1459
1460  <!-- END app block --><!-- BEGIN app block: shopify://apps/c-hub-customer-accounts/blocks/app-embed/0fb3ba0b-4c65-4919-a85a-48bc2d368e9c -->
1460<script>(function () { try { localStorage.removeItem('chInitPageLoad'); } catch (error) {}})();</script>
1460<!-- END app block --><!-- BEGIN app block: shopify://apps/wrapped/blocks/app-embed/1714fc7d-e525-4a14-8c3e-1b6ed95734c5 -->
1460<script type="module" src="https://cdn.shopify.com/storefront/web-components.js"></script>
1460
1461<!-- BEGIN app snippet: app-embed.settings -->
1461<script type="text/javascript">
1462  window.Wrapped = { ...window.Wrapped };
1463  window.Wrapped.options = {"order":{"settings":{"optionMode":"advanced","visibilityTag":"wrapped:disabled","giftMessage":true,"giftMessageMaxChars":255,"giftSender":true,"giftReceiver":true,"giftMessageRequired":false,"giftSenderRequired":false,"giftReceiverRequired":false,"giftMessageEmoji":false,"giftSenderEmoji":false,"giftReceiverEmoji":false,"hideWhenRegionUnavailable":false,"hideForB2bCustomers":false,"giftOptionOptional":false,"visibilities":{"exclude":{"match":"all","products":[],"conditions":[{"value":"wrapped:disabled","attribute":"tag"}],"collections":[]},"include":null},"giftOptionLabels":{"primary":"Select a gift option"},"giftCheckboxLabels":{"primary":"🎁 Add a gift card\/message to this order?"},"giftMessageLabels":{"primary":"Add a personalized gift message:"},"giftMessagePlaceholderLabels":{"primary":"Write your message here..."},"giftSenderLabels":{"primary":"Sender:"},"giftSenderPlaceholderLabels":{"primary":"Sender name"},"giftReceiverLabels":{"primary":"Recipient:"},"giftReceiverPlaceholderLabels":{"primary":"Receiver name"},"saveLabels":{"primary":"Save"},"removeLabels":{"primary":"Remove"},"unavailableLabels":{"primary":"Unavailable"},"regionUnavailableLabels":{"primary":"Gifting not available in your region"},"giftOptionOptionalLabels":{"primary":"(Optional) Add gift option"},"visibilityHelperLabels":{"primary":"Unavailable for one or more items in your cart"},"requiredFieldLabels":{"primary":"Please fill out this field."},"emojiFieldLabels":{"primary":"Emoji characters are not permitted."},"usageLimitReached":false},"datafields":{"checkbox":"Gifting","message":"Gift Message","sender":"Gift Sender","receiver":"Gift Receiver","variant":"Gift Option"},"product":{"handle":"greeting-card","image":"https:\/\/cdn.shopify.com\/s\/files\/1\/0363\/8299\/8667\/products\/Congrats_4f22c431-35ed-4c55-b50e-2718e90ad0d7_600x600.jpg?v=1657562427","priceMode":"order","hiddenInventory":false,"variantPricingPaid":true,"variantPricingFree":false,"bundles":true,"id":6924636586123,"gid":"gid:\/\/shopify\/Product\/6924636586123","variants":[{"availableForSale":true,"title":"Happy Holidays","price":0.0,"id":42895769010315,"imageSrc":"https:\/\/cdn.shopify.com\/s\/files\/1\/0363\/8299\/8667\/files\/HappyHolidays_1_400x400.jpg?v=1732297979"},{"availableForSale":true,"title":"Birthday","price":0.0,"id":40686538719371,"imageSrc":"https:\/\/cdn.shopify.com\/s\/files\/1\/0363\/8299\/8667\/products\/Birthday_400x400.jpg?v=1659372025"},{"availableForSale":true,"title":"Congratulations","price":0.0,"id":40539377369227,"imageSrc":"https:\/\/cdn.shopify.com\/s\/files\/1\/0363\/8299\/8667\/products\/Congrats_4f22c431-35ed-4c55-b50e-2718e90ad0d7_400x400.jpg?v=1657562427"},{"availableForSale":true,"title":"Special Gift","price":0.0,"id":40539377401995,"imageSrc":"https:\/\/cdn.shopify.com\/s\/files\/1\/0363\/8299\/8667\/products\/General_513cf720-7003-47e9-8e93-6bb18cf3a481_400x400.jpg?v=1657562456"},{"availableForSale":true,"title":"Thank you","price":0.0,"id":40539377467531,"imageSrc":"https:\/\/cdn.shopify.com\/s\/files\/1\/0363\/8299\/8667\/products\/ThankYou_4bcaf942-42e3-4390-a27d-ac2dae4b43c8_400x400.jpg?v=1657563481"},{"availableForSale":true,"title":"Thinking of you","price":0.0,"id":40539377500299,"imageSrc":"https:\/\/cdn.shopify.com\/s\/files\/1\/0363\/8299\/8667\/products\/ThinkingofYou_193b457c-df00-4d9d-9f82-2a55bcf713e3_400x400.jpg?v=1657563504"},{"availableForSale":true,"title":"Be My Lobster","price":0.0,"id":40539377434763,"imageSrc":"https:\/\/cdn.shopify.com\/s\/files\/1\/0363\/8299\/8667\/products\/Love_1f17beed-bf9c-43a4-a52f-db7bbb7018b7_400x400.jpg?v=1657562486"}]},"blocks":[{"id":"1f45290f-612c-4dba-9858-2f314895e3d4","blockType":"cart_drawer","modal":true,"pricing":true,"refresh":false,"primaryCheckbox":true,"previewImage":false,"variantAppearance":"images","labels":{"primary":null},"targets":{"120305942667":{"id":"f848e4f4-f013-43f9-8086-dc7278fbe8da","selector":".wrapped-gift-card-container","repositionedByDeveloper":true,"position":"afterbegin","action":null,"actionDeveloper":"custom:event:cart-drawer","actionType":null,"actionTypeDeveloper":"event","formTarget":null},"120361156747":{"id":"c86a95f8-3816-481b-b16d-2828c8640894","selector":".wrapped-gift-card-container","repositionedByDeveloper":true,"position":"afterbegin","action":null,"actionDeveloper":"custom:event:cart-drawer","actionType":"reload","actionTypeDeveloper":"event","formTarget":null},"121304383627":{"id":"13be54dd-16a3-402b-bff6-b9d57ba33310","selector":".wrapped-gift-card-container","repositionedByDeveloper":true,"position":"afterbegin","action":null,"actionDeveloper":"custom:event:cart-drawer","actionType":"reload","actionTypeDeveloper":"event","formTarget":null},"121348030603":{"id":"4fba87c8-d345-4459-a3cc-fcb0177c59a3","selector":".wrapped-gift-card-container","repositionedByDeveloper":true,"position":"afterbegin","action":null,"actionDeveloper":"custom:event:cart-drawer","actionType":"reload","actionTypeDeveloper":"event","formTarget":null},"120667078795":{"id":"602c6cb4-7e30-4510-81a9-425fd7094381","selector":".wrapped-gift-card-container","repositionedByDeveloper":true,"position":"afterbegin","action":null,"actionDeveloper":"custom:event:cart-drawer","actionType":"reload","actionTypeDeveloper":"event","formTarget":null},"120320721035":{"id":"d9279577-f7ba-41aa-b4e5-28b1a9e1bf5a","selector":".wrapped-gift-card-container","repositionedByDeveloper":true,"position":"afterbegin","action":null,"actionDeveloper":"custom:event:cart-drawer","actionType":"reload","actionTypeDeveloper":"event","formTarget":null},"120430690443":{"id":"952ad900-b0fd-408d-b6c4-60e52d6be7d4","selector":".wrapped-gift-card-container","repositionedByDeveloper":true,"position":"afterbegin","action":null,"actionDeveloper":"custom:event:cart-drawer","actionType":"reload","actionTypeDeveloper":"event","formTarget":null},"120426168459":{"id":"e738b396-ad32-40cc-904d-ea5a6bca4ec5","selector":".wrapped-gift-card-container","repositionedByDeveloper":true,"position":"afterbegin","action":null,"actionDeveloper":"custom:event:cart-drawer","actionType":"reload","actionTypeDeveloper":"event","formTarget":null},"98069545099":{"id":"3bb5eee9-f81f-49fa-8ce6-3eefa23f3e6e","selector":".wrapped-gift-card-container","repositionedByDeveloper":true,"position":"afterbegin","action":null,"actionDeveloper":"custom:event:cart-drawer","actionType":"reload","actionTypeDeveloper":"event","formTarget":null},"120554848395":{"id":"3d3b1e02-f8ba-4d7a-8bc8-a22282ef7ba6","selector":".wrapped-gift-card-container","repositionedByDeveloper":true,"position":"afterbegin","action":null,"actionDeveloper":"custom:event:cart-drawer","actionType":"reload","actionTypeDeveloper":"event","formTarget":null},"120179982475":{"id":"77c88fcc-8243-40e5-a7fa-503397bc60e3","selector":".wrapped-gift-card-container","repositionedByDeveloper":true,"position":"afterbegin","action":null,"actionDeveloper":"custom:event:cart-drawer","actionType":"reload","actionTypeDeveloper":"event","formTarget":null},"152728797323":{"id":"b23d17c7-a5c6-4710-8edf-0e386c7cf25a","selector":".wrapped-gift-card-container","repositionedByDeveloper":true,"position":"afterbegin","action":null,"actionDeveloper":"custom:event:cart-drawer","actionType":"reload","actionTypeDeveloper":"event","formTarget":null},"150863609995":{"id":"5ee3b7f2-1dfb-4d47-b3f5-7ee130f693fb","selector":".wrapped-gift-card-container","repositionedByDeveloper":true,"position":"afterbegin","action":null,"actionDeveloper":"custom:event:cart-drawer","actionType":"reload","actionTypeDeveloper":"event","formTarget":null},"134079250571":{"id":"62b57e4b-7d00-4b03-a541-7ce7d3c87d9c","selector":".wrapped-gift-card-container","repositionedByDeveloper":true,"position":"afterbegin","action":null,"actionDeveloper":"custom:event:cart-drawer","actionType":"reload","actionTypeDeveloper":"event","formTarget":null},"120456675467":{"id":"bc36ff24-f269-471a-bcc9-ddcf8a446be3","selector":".wrapped-gift-card-container","repositionedByDeveloper":true,"position":"afterbegin","action":null,"actionDeveloper":"custom:event:cart-drawer","actionType":"reload","actionTypeDeveloper":"event","formTarget":null},"default":{"id":"bc36ff24-f269-471a-bcc9-ddcf8a446be3","selector":".wrapped-gift-card-container","repositionedByDeveloper":true,"position":"afterbegin","action":null,"actionDeveloper":"custom:event:cart-drawer","actionType":"reload","actionTypeDeveloper":"event","formTarget":null}}}]}};
1464  window.Wrapped.settings = {"activated":true,"debug":false,"scripts":"document.addEventListener('DOMContentLoaded', (event) =\u003e {\n  setTimeout(() =\u003e {\n    window.Wrapped?.buildExtensions()\n  }, 1000)\n})","styles":"wrapped-extension[target-group=\"drawer\"] {\n  margin: 1em !important;\n  margin-top: 0 !important;\n}\n\nwrapped-extension[target-group=\"drawer\"] [feature=\"variant\"][selector-type=\"images\"] [part=\"container\"] {\n  \u0026 fieldset {\n    max-height: 250px !important;\n  }\n}\n\nwrapped-extension span {\n  margin: unset !important;\n}","skipFetchInterceptor":false,"skipXhrInterceptor":false,"moneyFormatMode":"default","token":"51083659bb8e00d1fe207116c3a686d3","usageLimitNoticeKeys":{"importantNotice":"Important Notice","nextSteps":"Next Steps"}};
1465  window.Wrapped.settings.block = {"extension_background_primary_color":"#ffffff","extension_background_secondary_color":"#ffffff","extension_border_color":"rgba(0,0,0,0)","border_width":3,"border_radius":30,"spacing_scale":"--wrapped-spacing-scale-base","hover_style":"--wrapped-hover-style-light","font_color":"#2d465d","font_secondary_color":"#333333","font_scale":125,"form_element_text_color":"#2d465d","background_color":"#ffffff","border_color":"#2d465d","checkbox_radio_color":"rgba(0,0,0,0)","primary_button_text":"#ffffff","primary_button_surface":"#2d465d","primary_button_border":"rgba(0,0,0,0)","secondary_button_text":"#333333","secondary_button_surface":"#0000000f","secondary_button_border":"rgba(0,0,0,0)","media_fit":"inline","gift_thumbnail_size":140,"gift_thumbnail_position":"--wrapped-thumbnail-position-start"};
1466  window.Wrapped.settings.market = null;
1467  window.Wrapped.settings.moneyFormat = "${{amount}}";
1468  window.Wrapped.settings.moneyWithCurrencyFormat = "${{amount}} USD";
1469  window.Wrapped.settings.shopCurrency = "USD";
1470
1471  if (window.Wrapped.settings.debug) {
1472    const logStyle = 'background-color:black;color:#ffc863;font-size:12px;font-weight:400;padding:12px;border-radius:10px;'
1473    console.log('%c Gift options by Wrapped | Learn more at https://apps.shopify.com/wrapped', logStyle)
1474    console.debug('[wrapped:booting]', window.Wrapped)
1475  }
1476</script>
1476
1477<!-- END app snippet --><!-- BEGIN app snippet: app-embed.styles --><style type="text/css">
1478
1479wrapped-extension[hidden],
1480wrapped-gift-block[hidden] {
1481  display: none !important;
1482}
1483
1484wrapped-extension:empty:not([hidden]) {
1485  display: flex !important;
1486}
1487wrapped-gift-block:empty:not([hidden]) {
1488  display: block !important;
1489}
1490</style>
1491<!-- END app snippet --><!-- BEGIN app snippet: app-embed.shadow --><template id="wrapped-shadow-styles">
1492:host {
1493  /* breakpoints: not-implemented / reference only */
1494  /* --shadow-breakpoint-xs: 320px; */
1495  /* --shadow-breakpoint-sm: 490px; */
1496  /* --shadow-breakpoint-md: 768px; */
1497  /* --shadow-breakpoint-lg: 1040px; */
1498  /* --shadow-breakpoint-xl: 1440px; */
1499
1500  
1501  --shadow-thumbnail-position-start:
1502    "media gift-dialog-header"
1503    "media content"
1504    "media gift-block-actions";
1505  --shadow-thumbnail-position-end:
1506    "gift-dialog-header media"
1507    "content media"
1508    "gift-block-actions media";
1509
1510  /* border radius */
1511  --shadow-border-radius-xs: calc(var(--shadow-border-radius-scale, 65) / 100 * 1rem);
1512  --shadow-border-radius-sm: calc(var(--shadow-border-radius-scale, 65) / 100 * 1.5rem);
1513  --shadow-border-radius-base: calc(var(--shadow-border-radius-scale, 65) / 100 * 2.5rem);
1514
1515  --shadow-outline-width: calc(var(--shadow-border-width) + 0.5px);
1516
1517  /* buttons */
1518  
1519  --shadow-hover-style-light: #ffffff;
1520  --shadow-hover-style-dark: #000000;
1521
1522  --shadow-primary-button-surface--active: color-mix(in srgb, var(--shadow-primary-button-surface), var(--shadow-hover-style) 20%);
1523  --shadow-primary-button-surface--hover: color-mix(in srgb, var(--shadow-primary-button-surface), var(--shadow-hover-style) 16%);
1524
1525  --shadow-primary-button-text-color--active: color-mix(in srgb, var(--shadow-primary-button-text-color), var(--shadow-hover-style) 20%);
1526  --shadow-primary-button-text-color--hover: color-mix(in srgb, var(--shadow-primary-button-text-color), var(--shadow-hover-style) 16%);
1527
1528  --shadow-secondary-button-surface--active: color-mix(in srgb, var(--shadow-secondary-button-surface), var(--shadow-hover-style) 20%);
1529  --shadow-secondary-button-surface--hover: color-mix(in srgb, var(--shadow-secondary-button-surface), var(--shadow-hover-style) 16%);
1530
1531  --shadow-secondary-button-text-color--active: color-mix(in srgb, var(--shadow-secondary-button-text-color), var(--shadow-hover-style) 20%);
1532  --shadow-secondary-button-text-color--hover: color-mix(in srgb, var(--shadow-secondary-button-text-color), var(--shadow-hover-style) 16%);
1533
1534  /* do not change the root text size */
1535  --shadow-font-size: 16px;
1536
1537  /* text and fonts */
1538  --shadow-font-size-sm: clamp(12px, calc(14px * var(--shadow-font-scale)), 16px);
1539  --shadow-font-size-base: clamp(12px, calc(16px * var(--shadow-font-scale)), 20px);
1540  --shadow-font-size-lg: clamp(16px, calc(24px * var(--shadow-font-scale)), 28px);
1541  --shadow-font-weight-md: 500;
1542  --shadow-font-weight-lg: 600;
1543  --shadow-line-height-base: 1.5em;
1544
1545  /* transitions */
1546  --shadow-transition-duration: 0.1s;
1547  --shadow-spinner-duration: 0.7s;
1548
1549  /* disabled */
1550  --shadow-disabled-opacity-sm: 0.16;
1551  --shadow-disabled-opacity: 0.32;
1552  --shadow-disabled-opacity-md: 0.4;
1553  --shadow-disabled-opacity-lg: 0.64;
1554
1555  /* precalculated percentages for color-mix */
1556  --shadow-disabled-opacity-percent: 32%;
1557  --shadow-disabled-opacity-sm-percent: 16%;
1558  --shadow-disabled-opacity-md-percent: 40%;
1559  --shadow-disabled-opacity-lg-percent: 64%;
1560  --shadow-disabled-cursor: not-allowed;
1561
1562  /* form elements */
1563  --shadow-form-element-surface--disabled: color-mix(in srgb, var(--shadow-form-element-surface) var(--shadow-disabled-opacity-percent), var(--shadow-secondary-text-color) 8%);
1564
1565  --shadow-form-element-border-color--active: color-mix(in srgb, var(--shadow-form-element-border-color), white 83%);
1566  --shadow-form-element-border-color--disabled: color-mix(in srgb, var(--shadow-form-element-border-color) var(--shadow-disabled-opacity-percent), var(--shadow-secondary-text-color) 8%);
1567
1568  --shadow-form-element-text-color--disabled: color-mix(in srgb, var(--shadow-form-element-text-color), var(--shadow-secondary-text-color) 8%);
1569
1570  --shadow-form-element-placeholder-text-color: color-mix(in srgb, var(--shadow-form-element-text-color) var(--shadow-disabled-opacity-percent), transparent);
1571  --shadow-form-element-placeholder-text-color--disabled: color-mix(in srgb, var(--shadow-form-element-text-color) var(--shadow-disabled-opacity-percent), var(--shadow-secondary-text-color) 8%);
1572
1573  --shadow-form-element-selection-color--active: color-mix(in srgb, var(--shadow-form-element-selection-color), var(--shadow-hover-style) 40%);
1574  --shadow-form-element-selection-color--hover: color-mix(in srgb, var(--shadow-form-element-selection-color), var(--shadow-hover-style) 32%);
1575
1576  /* primary colors */
1577  --shadow-primary-text-color--hover: color-mix(in srgb, var(--shadow-primary-text-color), var(--shadow-hover-style) 32%);
1578
1579  /* secondary colors */
1580  --shadow-secondary-text-color--disabled: color-mix(in srgb, var(--shadow-secondary-text-color) var(--shadow-disabled-opacity-lg-percent), var(--shadow-secondary-text-color) 8%);
1581
1582  /* spacing */
1583  
1584  --shadow-spacing-scale-base: 1;
1585  --shadow-spacing-scale-less: 0.75;
1586  --shadow-spacing-scale-more: 1.166;
1587
1588  --shadow-spacing-fixed: 4px;
1589  --shadow-spacing-base: clamp(12px, calc(16px * var(--shadow-spacing-scale)), 24px);
1590  --shadow-spacing-lg: clamp(16px, calc(24px * var(--shadow-spacing-scale)), 28px);
1591  --shadow-spacing-sm: clamp(8px, calc(12px * var(--shadow-spacing-scale)), 14px);
1592  --shadow-spacing-xs: clamp(6px, calc(8px * var(--shadow-spacing-scale)), 10px);
1593
1594  /* inline block */
1595  --shadow-feature-max-height: 500px;
1596  --shadow-textarea-min-height: 80px;
1597  --shadow-block-margin-block-start: calc(1em * var(--shadow-spacing-scale));
1598  --shadow-block-margin-block-end: calc(2em * var(--shadow-spacing-scale));
1599
1600  /* shadows */
1601  --shadow-shadow-blur: 1.5rem;
1602  --shadow-shadow-color: rgba(0, 0, 0, 0.25);
1603  --shadow-shadow-offset: 0.75rem;
1604
1605  /* the default look: what a shop without a presets entry paints; a saved entry overrides these per option type below */
1606  --shadow-font-family: inherit;
1607  --shadow-header-font-family: inherit;
1608  --shadow-font-weight-base: 400;
1609  --shadow-letter-spacing: normal;
1610  --shadow-button-text-transform: none;
1611  --shadow-button-letter-spacing: normal;
1612  --shadow-button-font-style: normal;
1613  --shadow-launcher-button-font-weight: 400;
1614  --shadow-launcher-button-max-width: 500px;
1615  --shadow-launcher-button-alignment: center;
1616  --shadow-launcher-button-content-justify-content: space-between;
1617  --shadow-launcher-button-content-flex-direction: row-reverse;
1618  --shadow-grid-template-areas: var(--shadow-thumbnail-position-start);
1619  --shadow-border-radius-scale: 60;
1620  --shadow-block-border-surface: #00000000;
1621  --shadow-border-width: 1px;
1622  --shadow-hover-style: var(--shadow-hover-style-light, --shadow-hover-style-light);
1623  --shadow-launcher-button-surface: #000000;
1624  --shadow-launcher-button-text-color: #ffffff;
1625  --shadow-launcher-button-border-surface: #00000000;
1626  --shadow-primary-button-surface: #000000;
1627  --shadow-primary-button-text-color: #ffffff;
1628  --shadow-primary-button-border-surface: #00000000;
1629  --shadow-primary-button-border-surface--active: transparent;
1630  --shadow-primary-button-border-surface--hover: transparent;
1631  --shadow-secondary-button-surface: #0000000f;
1632  --shadow-secondary-button-text-color: #333333;
1633  --shadow-secondary-button-border-surface: #00000000;
1634  --shadow-secondary-button-border-surface--active: transparent;
1635  --shadow-secondary-button-border-surface--hover: transparent;
1636  --shadow-font-scale: calc(100 / 100);
1637  --shadow-form-element-surface: #ffffff;
1638  --shadow-form-element-border-color: #0000000f;
1639  --shadow-form-element-text-color: #333333;
1640  --shadow-form-element-selection-color: #000000;
1641  --shadow-selection-accent-color: var(--shadow-form-element-selection-color);
1642  --shadow-selection-checked-surface: var(--shadow-form-element-selection-color);
1643  --shadow-selection-swatch-color: var(--shadow-form-element-selection-color);
1644  --shadow-primary-surface: #ffffff;
1645  --shadow-primary-text-color: #000000;
1646  --shadow-secondary-surface: #f3f3f3;
1647  --shadow-secondary-text-color: #333333;
1648  --shadow-spacing-scale: var(--shadow-spacing-scale-base, 1);
1649  --shadow-gift-thumbnail-size: 60px;
1650  --shadow-thumbnail-size: clamp(40px, var(--shadow-gift-thumbnail-size), 200px
1650);
1651  --shadow-thumbnail-flex-direction: row;
1652  --shadow-thumbnail-order: -1;
1653  --shadow-thumbnail-margin-left: 0;
1654  --shadow-thumbnail-margin-right: 0.6em;
1655
1656  /* default styles */
1657  all: revert;
1658  box-sizing: border-box;
1659  cursor: default;
1660  display: block;
1661  font-family: var(--shadow-font-family);
1662  font-size: var(--shadow-font-size);
1663  line-height: var(--shadow-line-height-base);
1664  letter-spacing: var(--shadow-letter-spacing);
1665  margin-block-start: var(--shadow-block-margin-start, var(--shadow-spacing-xs)) !important;
1666  margin-block-end: var(--shadow-block-margin-end, var(--shadow-spacing-xs)) !important;
1667  text-align: start;
1668  width: -webkit-fill-available;
1669  white-space: normal;
1670}
1671
1672
1673
1674:host([option-type="product"]) {
1675  --shadow-font-family: inherit;
1676  --shadow-header-font-family: inherit;
1677  --shadow-font-weight-base: 400;
1678  --shadow-letter-spacing: normal;
1679  --shadow-button-text-transform: none;
1680  --shadow-button-letter-spacing: normal;
1681  --shadow-button-font-style: normal;
1682  --shadow-launcher-button-font-weight: 400;
1683  --shadow-launcher-button-max-width: 500px;
1684  --shadow-launcher-button-alignment: center;
1685  --shadow-launcher-button-content-justify-content: space-between;
1686  --shadow-launcher-button-content-flex-direction: row-reverse;
1687  --shadow-grid-template-areas: var(--shadow-thumbnail-position-start);
1688
1689  /* border radius */
1690  --shadow-border-radius-scale: 30;
1691
1692  --shadow-block-border-surface: #00000000;
1693  --shadow-border-width: 3px;
1694
1695  /* buttons */
1696  --shadow-hover-style: var(--shadow-hover-style-light, --shadow-hover-style-light);
1697
1698  --shadow-launcher-button-surface: #2d465d;
1699  --shadow-launcher-button-text-color: #ffffff;
1700  --shadow-launcher-button-border-surface: #00000000;
1701
1702  --shadow-primary-button-surface: #2d465d;
1703  --shadow-primary-button-text-color: #ffffff;
1704  --shadow-primary-button-border-surface: #00000000;
1705
1706  --shadow-primary-button-border-surface--active: transparent;
1707  --shadow-primary-button-border-surface--hover: transparent;
1708
1709  --shadow-secondary-button-surface: #0000000f;
1710  --shadow-secondary-button-text-color: #333333;
1711  --shadow-secondary-button-border-surface: #00000000;
1712
1713  --shadow-secondary-button-border-surface--active: transparent;
1714  --shadow-secondary-button-border-surface--hover: transparent;
1715
1716  /* text and fonts */
1717  --shadow-font-scale: calc(125 / 100);
1718
1719  /* form elements */
1720  --shadow-form-element-surface: #ffffff;
1721  --shadow-form-element-border-color: #2d465d;
1722  --shadow-form-element-text-color: #2d465d;
1723  --shadow-form-element-selection-color: rgba(0,0,0,0);
1724
1725  --shadow-selection-accent-color: auto;
1726  --shadow-selection-checked-surface: var(--shadow-primary-text-color);
1727  --shadow-selection-swatch-color: var(--shadow-form-element-border-color);
1728
1729  /* primary colors */
1730  --shadow-primary-surface: #ffffff;
1731  --shadow-primary-text-color: #2d465d;
1732
1733  /* secondary colors */
1734  --shadow-secondary-surface: #ffffff;
1735  --shadow-secondary-text-color: #333333;
1736
1737  /* spacing */
1738  --shadow-spacing-scale: var(--shadow-spacing-scale-base, 1);
1739
1740  /* media */
1741  --shadow-gift-thumbnail-size: 140px;
1742  --shadow-thumbnail-size: clamp(40px, var(--shadow-gift-thumbnail-size), 200px);
1743
1744  --shadow-thumbnail-flex-direction: row;
1745  --shadow-thumbnail-order: -1;
1746  --shadow-thumbnail-margin-left: 0;
1747  --shadow-thumbnail-margin-right: 0.6em;
1748}
1749
1750
1751:host([option-type="order"]) {
1752  --shadow-font-family: inherit;
1753  --shadow-header-font-family: inherit;
1754  --shadow-font-weight-base: 400;
1755  --shadow-letter-spacing: normal;
1756  --shadow-button-text-transform: none;
1757  --shadow-button-letter-spacing: normal;
1758  --shadow-button-font-style: normal;
1759  --shadow-launcher-button-font-weight: 400;
1760  --shadow-launcher-button-max-width: 500px;
1761  --shadow-launcher-button-alignment: center;
1762  --shadow-launcher-button-content-justify-content: space-between;
1763  --shadow-launcher-button-content-flex-direction: row-reverse;
1764  --shadow-grid-template-areas: var(--shadow-thumbnail-position-start);
1765
1766  /* border radius */
1767  --shadow-border-radius-scale: 30;
1768
1769  --shadow-block-border-surface: #00000000;
1770  --shadow-border-width: 3px;
1771
1772  /* buttons */
1773  --shadow-hover-style: var(--shadow-hover-style-light, --shadow-hover-style-light);
1774
1775  --shadow-launcher-button-surface: #2d465d;
1776  --shadow-launcher-button-text-color: #ffffff;
1777  --shadow-launcher-button-border-surface: #00000000;
1778
1779  --shadow-primary-button-surface: #2d465d;
1780  --shadow-primary-button-text-color: #ffffff;
1781  --shadow-primary-button-border-surface: #00000000;
1782
1783  --shadow-primary-button-border-surface--active: transparent;
1784  --shadow-primary-button-border-surface--hover: transparent;
1785
1786  --shadow-secondary-button-surface: #0000000f;
1787  --shadow-secondary-button-text-color: #333333;
1788  --shadow-secondary-button-border-surface: #00000000;
1789
1790  --shadow-secondary-button-border-surface--active: transparent;
1791  --shadow-secondary-button-border-surface--hover: transparent;
1792
1793  /* text and fonts */
1794  --shadow-font-scale: calc(125 / 100);
1795
1796  /* form elements */
1797  --shadow-form-element-surface: #ffffff;
1798  --shadow-form-element-border-color: #2d465d;
1799  --shadow-form-element-text-color: #2d465d;
1800  --shadow-form-element-selection-color: rgba(0,0,0,0);
1801
1802  --shadow-selection-accent-color: auto;
1803  --shadow-selection-checked-surface: var(--shadow-primary-text-color);
1804  --shadow-selection-swatch-color: var(--shadow-form-element-border-color);
1805
1806  /* primary colors */
1807  --shadow-primary-surface: #ffffff;
1808  --shadow-primary-text-color: #2d465d;
1809
1810  /* secondary colors */
1811  --shadow-secondary-surface: #ffffff;
1812  --shadow-secondary-text-color: #333333;
1813
1814  /* spacing */
1815  --shadow-spacing-scale: var(--shadow-spacing-scale-base, 1);
1816
1817  /* media */
1818  --shadow-gift-thumbnail-size: 140px;
1819  --shadow-thumbnail-size: clamp(40px, var(--shadow-gift-thumbnail-size), 200px);
1820
1821  --shadow-thumbnail-flex-direction: row;
1822  --shadow-thumbnail-order: -1;
1823  --shadow-thumbnail-margin-left: 0;
1824  --shadow-thumbnail-margin-right: 0.6em;
1825}
1826
1827
1828
1829
1830*,
1831*::before,
1832*::after {
1833  box-sizing: border-box;
1834}
1835
1836
1837gift-block-launcher:not([variant="inline"]) {
1838  display: flex;
1839  flex-direction: column;
1840  gap: var(--shadow-spacing-xs);
1841  align-items: var(--shadow-launcher-button-alignment);
1842
1843  
1844  & gift-block-visibility-notice {
1845    display: block;
1846    font-family: var(--shadow-font-family);
1847    font-size: smaller;
1848    font-weight: var(--shadow-font-weight-base);
1849    font-style: var(--shadow-button-font-style);
1850    letter-spacing: var(--shadow-button-letter-spacing);
1851    padding: 0 var(--shadow-spacing-sm);
1852    text-transform: var(--shadow-button-text-transform);
1853    width: 100%;
1854  }
1855}
1856
1857.gift-block__launcher {
1858  background-color: var(--shadow-launcher-button-surface);
1859  border-color: var(--shadow-launcher-button-border-surface);
1860  border-width: var(--shadow-launcher-button-border-width, var(--shadow-border-width));
1861  border-radius: var(--shadow-launcher-button-border-radius, var(--shadow-border-radius-sm));
1862  border-style: solid;
1863  color: var(--shadow-launcher-button-text-color);
1864  padding: var(--shadow-spacing-sm);
1865  font-family: var(--shadow-font-family);
1866  font-size: var(--shadow-font-size-base);
1867  font-weight: var(--shadow-launcher-button-font-weight);
1868  font-style: var(--shadow-button-font-style);
1869  letter-spacing: var(--shadow-button-letter-spacing);
1870  max-width: var(--shadow-block-launcher-button-max-width, var(--shadow-launcher-button-max-width));
1871  text-transform: var(--shadow-button-text-transform);
1872  width: 100%;
1873
1874  &:hover {
1875    cursor: pointer;
1876    background-color: var(--shadow-primary-button-surface--hover);
1877    border-color: var(--shadow-primary-button-border-surface--hover);
1878  }
1879
1880  &:active {
1881    background-color: var(--shadow-primary-button-surface--active);
1882    border-color: var(--shadow-primary-button-border-surface--active);
1883  }
1884
1885  &:focus,
1886  &:focus-visible {
1887    outline: none;
1888  }
1889
1890  &[with-checkmark] {
1891    position: relative;
1892    display: inline-flex;
1893    align-items: center;
1894    gap: var(--shadow-spacing-fixed);
1895
1896    & .icon-wrapper {
1897      display: flex;
1898      flex-shrink: 0;
1899    }
1900
1901    &[with-gift-options] {
1902      .checkmark-icon {
1903        display: block;
1904        /* animation: unblur calc(var(--shadow-transition-duration) * 3) ease forwards; */
1905      }
1906    }
1907  }
1908
1909  &[variant="link"] {
1910    background: none;
1911    border: none;
1912    color: var(--shadow-primary-text-color);
1913    font-size: var(--shadow-font-size-base);
1914    font-weight: var(--shadow-font-weight-base);
1915    font-style: var(--shadow-button-font-style);
1916    letter-spacing: var(--shadow-button-letter-spacing);
1917    text-transform: var(--shadow-button-text-transform);
1918    text-decoration: none;
1919    margin-inline-start: -0.25rem;
1920    padding: 0;
1921    width: auto;
1922
1923    &:hover {
1924      cursor: pointer;
1925      color: var(--shadow-primary-text-color--hover);
1926      text-decoration: underline;
1927    }
1928
1929    &[with-checkmark] {
1930      padding-left: 0;
1931      text-align: start;
1932      word-break: keep-all;
1933    }
1934
1935    & .button-content {
1936      flex-direction: row;
1937      justify-content: flex-start;
1938    }
1939  }
1940
1941  & .button-content {
1942    display: inline-flex;
1943    align-items: center;
1944    gap: var(--shadow-spacing-fixed);
1945
1946    flex-direction: var(--shadow-launcher-button-content-flex-direction);
1947    justify-content: var(--shadow-launcher-button-content-justify-content);
1948    width: 100%;
1949
1950    & .label {
1951      text-align: start;
1952    }
1953  }
1954
1955  & .icon-wrapper {
1956    display: none;
1957    align-items: center;
1958    justify-content: center;
1959    width: 1.5em;
1960    height: 1.5em;
1961
1962    svg {
1963      fill: currentColor;
1964      height: 100%;
1965      width: 100%;
1966    }
1967
1968    .checkmark-icon {
1969      display: none;
1970    }
1971  }
1972}
1973.gift-block__launcher:disabled,
1974.gift-block__launcher[usage-limit-reached],
1975.gift-block__launcher[region-unavailable] {
1976  cursor: var(--shadow-disabled-cursor);
1977  opacity: var(--shadow-disabled-opacity);
1978  pointer-events: none;
1979
1980  &[with-checkmark] {
1981    .icon-wrapper {
1982      opacity: var(--shadow-disabled-opacity-md);
1983    }
1984  }
1985}
1986
1987/* gift block modal */
1988.gift-block-modal {
1989  background-color: var(--shadow-primary-surface);
1990  border: none;
1991  border-radius: var(--shadow-border-radius-base);
1992  box-shadow: 0 var(--shadow-shadow-offset) var(--shadow-shadow-blur) var(--shadow-shadow-color);
1993  outline: var(--shadow-border-width) solid var(--shadow-block-border-surface);
1994  padding: 0;
1995}
1996.gift-block-modal::backdrop {
1997  background-color: rgba(156, 163, 175, 0.75);
1998}
1999.gift-block-modal:focus,
2000.gift-block-modal:focus-visible {
2001  outline: var(--shadow-border-width) solid var(--shadow-block-border-surface);
2002}
2003@media (max-width: 768px) {
2004  .gift-block-modal {
2005    max-height: calc(100% - var(--shadow-spacing-sm));
2006    max-width: calc(100% - var(--shadow-spacing-sm));
2007    overscroll-behavior: contain;
2008  }
2009}
2010
2011/* gift block modal layout */
2012.gift-block-modal-layout {
2013  display: grid;
2014  grid-template-areas: var(--shadow-grid-template-areas);
2015  grid-template-columns: 1fr 1fr;
2016  grid-template-rows: auto 1fr auto;
2017  max-height: 80dvh;
2018  max-width: 80dvw;
2019  overflow: hidden;
2020}
2021/* Collapse to 1-column layout if media is hidden */
2022.gift-block-modal-layout:has(section#media[hidden]),
2023.gift-block-modal-layout:has(section#media.with-media-inline),
2024.gift-block-modal-layout:not(:has(section#media)),
2025.gift-block-modal-layout:not(:has(section#media img)) {
2026  grid-template-areas:
2027    "gift-dialog-header"
2028    "content"
2029    "gift-block-actions";
2030  grid-template-columns: 1fr;
2031  grid-template-rows: auto 1fr auto;
2032
2033  section#media {
2034    display: none;
2035  }
2036}
2037
2038
2039gift-dialog-header {
2040  align-items: flex-start;
2041  background-color: var(--shadow-primary-surface);
2042  display: flex;
2043  flex-direction: row;
2044  gap: var(--shadow-spacing-fixed);
2045  grid-area: gift-dialog-header;
2046  justify-content: space-between;
2047  padding: var(--shadow-spacing-lg);
2048  position: sticky;
2049  top: 0;
2050  z-index: 1;
2051
2052  & h1 {
2053    color: var(--shadow-primary-text-color);
2054    font-family: var(--shadow-header-font-family);
2055    font-size: var(--shadow-font-size-lg);
2056    font-weight: var(--shadow-font-weight-md);
2057    line-height: 1.25em;
2058    margin: 0;
2059  }
2060
2061  /* dismiss button styles */
2062  & button {
2063    background-color: color-mix(in srgb, var(--shadow-secondary-text-color) 8%, transparent);
2064    color: var(--shadow-secondary-text-color);
2065    border-radius: var(--shadow-border-radius-xs);
2066    font-size: var(--shadow-font-size-sm);
2067    font-weight: var(--shadow-font-weight-lg);
2068    font-style: var(--shadow-button-font-style);
2069    letter-spacing: var(--shadow-button-letter-spacing);
2070    text-transform: var(--shadow-button-text-transform);
2071    width: 2.25em;
2072    height: 2.25em;
2073    min-width: 2.25em;
2074    min-height: 2.25em;
2075    outline: none;
2076    border: 0;
2077    cursor: pointer;
2078    transition: background-color var(--shadow-transition-duration) ease,
2079                color var(--shadow-transition-duration) ease;
2080
2081    &:hover {
2082      background-color: color-mix(in srgb, var(--shadow-secondary-text-color) 6%, var(--shadow-hover-style) 12%);
2083    }
2084
2085    &:active {
2086      background-color: color-mix(in srgb, var(--shadow-secondary-text-color) 16%, var(--shadow-hover-style) 16%);
2087    }
2088
2089    &:disabled {
2090      pointer-events: none;
2091      opacity: var(--shadow-disabled-opacity);
2092    }
2093  }
2094}
2095
2096
2097.gift-block-modal-layout gift-block-actions {
2098  background-color: var(--shadow-primary-surface);
2099  bottom: 0;
2100  grid-area: gift-block-actions;
2101  overscroll-behavior: contain;
2102  position: sticky;
2103  z-index: 1;
2104
2105  /* the buttons live in the component's own shadow; only its layout knobs are ours */
2106  --shadow-actions-gap: var(--shadow-spacing-sm);
2107  --shadow-actions-padding: var(--shadow-spacing-lg);
2108}
2109
2110gift-dialog-content {
2111  display: contents;
2112}
2113
2114section#media {
2115  align-self: stretch;
2116  background-color: var(--shadow-secondary-surface);
2117  grid-area: media;
2118  grid-row: 1 / 4;
2119  height: 100%;
2120  padding: var(--shadow-spacing-lg);
2121  position: sticky;
2122  top: 0;
2123  transition: order var(--shadow-transition-duration) ease,
2124              width var(--shadow-transition-duration) ease;
2125
2126  &.with-media-cover {
2127    & img {
2128      height: 100%;
2129    }
2130  }
2131
2132  &.with-media-fill {
2133    padding: 0;
2134
2135    & img {
2136      border-radius: 0;
2137      height: 100%;
2138    }
2139  }
2140
2141  & shopify-media {
2142    & img {
2143      border-radius: var(--shadow-border-radius-sm);
2144      width: 100%;
2145      height: auto;
2146    }
2147  }
2148}
2149
2150section#content {
2151  grid-area: content;
2152  background-color: var(--shadow-primary-surface);
2153
2154  overflow-y: auto;
2155  overscroll-behavior: contain;
2156  scrollbar-width: thin;
2157  -webkit-overflow-scrolling: touch;
2158
2159  padding: var(--shadow-spacing-lg);
2160  padding-bottom: 0;
2161  padding-top: 0;
2162
2163  position: relative; /* important to prevent content shifting when changing variants */
2164
2165  align-items: stretch;
2166  display: flex;
2167  flex-direction: column;
2168  justify-content: flex-start;
2169  gap: var(--shadow-spacing-lg);
2170  transition: order var(--shadow-transition-duration) ease;
2171
2172  @media (max-width: 768px) {
2173    & > *:first-child:not(:only-child) {
2174      margin-top: unset;
2175    }
2176  }
2177
2178  
2179  & gift-block-option-heading {
2180    display: block;
2181
2182    & span[part="label"] {
2183      color: var(--shadow-primary-text-color);
2184      display: block;
2185      font-size: var(--shadow-font-size-base);
2186      font-weight: var(--shadow-font-weight-md, 500);
2187      line-height: 1.25em;
2188    }
2189  }
2190
2191  
2192  & .gift-option-group {
2193    display: flex;
2194    flex-direction: column;
2195    gap: var(--shadow-spacing-lg);
2196  }
2197
2198  /* gift product details */
2199  & .gift-product {
2200    display: flex;
2201    flex-direction: column;
2202    gap: var(--shadow-spacing-base);
2203  }
2204
2205  & .gift-product-header {
2206    align-items: center;
2207    display: flex;
2208    flex-direction: var(--shadow-thumbnail-flex-direction);
2209    flex-wrap: wrap;
2210    row-gap: var(--shadow-spacing-base);
2211    column-gap: var(--shadow-spacing-sm);
2212  }
2213
2214  & .gift-product-content {
2215    display: flex;
2216    flex: 1 1 50%;
2217    flex-direction: column;
2218    gap: var(--shadow-spacing-xs);
2219  }
2220
2221  & .gift-product-media {
2222    display: flex;
2223    align-items: center;
2224
2225    &:has(shopify-media) {
2226      --shadow-inline-media-max-size: var(--shadow-gift-thumbnail-size);
2227      --shadow-inline-media-size: clamp(40px, var(--shadow-gift-thumbnail-size), var(--shadow-inline-media-max-size));
2228
2229      border-radius: var(--shadow-border-radius-sm);
2230
2231      height: var(--shadow-inline-media-size);
2232      width: var(--shadow-inline-media-size);
2233
2234      overflow: hidden;
2235
2236      margin-inline-start: auto;
2237      margin-inline-end: auto;
2238    }
2239
2240    & shopify-media {
2241      & img {
2242        border-radius: var(--shadow-border-radius-sm);
2243        width: 100%;
2244        height: auto;
2245      }
2246    }
2247  }
2248
2249  & .gift-product-title {
2250    color: var(--shadow-primary-text-color);
2251    display: var(--shadow-gift-product-title-display, block);
2252    font-size: var(--shadow-font-size-base);
2253    font-weight: var(--shadow-font-weight-md);
2254    margin: 0;
2255  }
2256  & .gift-product-pricing {
2257    display: flex;
2258    gap: var(--shadow-spacing-xs);
2259    margin: 0;
2260    font-weight: var(--shadow-font-weight-base);
2261    font-size: clamp(12px, calc(var(--shadow-font-size-base) * 0.94), 18px);
2262    line-height: 1em;
2263  }
2264  & .gift-product-price {
2265    color: var(--shadow-secondary-text-color);
2266  }
2267  & .gift-product-price--compare {
2268    color: var(--shadow-secondary-text-color);
2269    text-decoration: line-through;
2270    opacity: var(--shadow-disabled-opacity);
2271  }
2272  & .gift-product-description {
2273    font-weight: var(--shadow-font-weight-base);
2274    color: var(--shadow-secondary-text-color);
2275    font-size: clamp(12px, calc(var(--shadow-font-size-base) * 0.94), 18px);
2276    line-height: 1.5em;
2277
2278    & shopify-data {
2279      & :first-child {
2280        margin-top: 0;
2281      }
2282
2283      & :last-child {
2284        margin-bottom: 0;
2285      }
2286
2287      & ul {
2288        padding-left: var(--shadow-spacing-lg);
2289      }
2290    }
2291  }
2292}
2293
2294
2295:host(wrapped-gift-block) gift-block-option-heading label {
2296  align-items: center;
2297  cursor: pointer;
2298  display: flex;
2299  gap: var(--shadow-spacing-sm);
2300
2301  & input[type="checkbox"] {
2302    accent-color: var(--shadow-selection-accent-color);
2303    cursor: pointer;
2304    flex: 0 0 auto;
2305    height: var(--shadow-font-size-base);
2306    margin: 0;
2307    width: var(--shadow-font-size-base);
2308  }
2309}
2310
2311
2312:host(wrapped-gift-block[gift-option-optional]) section#content .gift-option-group {
2313  border-radius: var(--shadow-border-radius-sm);
2314  position: relative;
2315}
2316
2317
2318:host(wrapped-gift-block[gift-option-optional]:not([gift-option-included])) section#content .gift-option-group {
2319  pointer-events: none;
2320}
2321
2322:host(wrapped-gift-block[gift-option-optional]:not([gift-option-included])) section#content .gift-option-group::after {
2323  background-color: color-mix(in srgb, var(--shadow-primary-surface) 62%, transparent);
2324  border-radius: inherit;
2325  content: '';
2326  inset: calc(var(--shadow-spacing-sm) * -1);
2327  position: absolute;
2328}
2329
2330/* shopify variant selector */
2331
2332:host(wrapped-extension) gift-variant-selector {
2333  --shadow-picker-padding: var(--shadow-spacing-sm) var(--shadow-spacing-base);
2334  --shadow-picker-rows-padding: var(--shadow-spacing-sm);
2335}
2336
2337
2338:host(wrapped-extension[saving="true"]) gift-variant-selector {
2339  --shadow-picker-opacity: 0.7;
2340  --shadow-picker-pointer-events: none;
2341}
2342
2343
2344:host(wrapped-gift-block[gift-option-optional]:not([gift-option-included])) gift-variant-selector {
2345  --shadow-picker-selection-color: var(--shadow-form-element-border-color);
2346  --shadow-picker-selection-width: var(--shadow-border-width);
2347  --shadow-picker-swatch-selection-color: rgba(0, 0, 0, .1);
2348}
2349
2350
2351:host(wrapped-extension[gift-option-optional="true"]:not([gift-option-included])) gift-variant-selector,
2352:host(wrapped-gift-block[gift-option-optional="true"]:not([gift-option-included])) gift-variant-selector {
2353  --shadow-picker-card-accent: color-mix(in srgb, var(--shadow-form-element-border-color) 25%, transparent);
2354  --shadow-picker-card-opacity: 0.8;
2355  --shadow-picker-card-ring: transparent;
2356  --shadow-picker-radio-appearance: none;
2357  --shadow-picker-radio-border: var(--shadow-border-width) solid var(--shadow-form-element-border-color);
2358  --shadow-picker-radio-surface: var(--shadow-form-element-surface);
2359  --shadow-picker-row-shadow: none;
2360  --shadow-picker-row-surface: initial;
2361}
2362
2363
2364wrapped-message-field {
2365  gap: var(--shadow-spacing-xs);
2366
2367  & label {
2368    color: var(--shadow-secondary-text-color);
2369    font-size: var(--shadow-font-size-sm);
2370    font-weight: var(--shadow-font-weight-base);
2371    line-height: 1em;
2372  }
2373
2374  & :is(input, textarea) {
2375    background-color: var(--shadow-form-element-surface);
2376    border: none;
2377    border-radius: var(--shadow-border-radius-sm);
2378    color: var(--shadow-form-element-text-color);
2379    font-family: var(--shadow-font-family);
2380    font-size: var(--shadow-font-size-base);
2381    margin: 0;
2382    min-height: 42px;
2383    outline: var(--shadow-border-width) solid var(--shadow-form-element-border-color);
2384    padding: var(--shadow-spacing-sm);
2385    width: 100%;
2386  }
2387
2388  & :is(input, textarea):is(:active, :focus, :focus-visible) {
2389    outline-color: var(--shadow-form-element-selection-color);
2390    outline-width: var(--shadow-outline-width);
2391  }
2392
2393  & :is(input, textarea)::placeholder {
2394    color: var(--shadow-form-element-placeholder-text-color);
2395  }
2396
2397  & textarea {
2398    min-height: 100px;
2399    resize: vertical;
2400  }
2401
2402  & span.counter {
2403    align-self: flex-end;
2404    color: var(--shadow-secondary-text-color);
2405    font-size: var(--shadow-font-size-sm);
2406    line-height: normal;
2407  }
2408}
2409
2410
2411wrapped-message-field[disabled] {
2412  cursor: var(--shadow-disabled-cursor);
2413  opacity: var(--shadow-disabled-opacity-md);
2414  pointer-events: none;
2415  transition: background-color var(--shadow-transition-duration) ease,
2416              color var(--shadow-transition-duration) ease;
2417
2418  & :is(input, textarea) {
2419    background-color: var(--shadow-form-element-surface--disabled);
2420    color: transparent;
2421    outline-color: var(--shadow-form-element-border-color--disabled);
2422  }
2423}
2424
2425
2426
2427
2428:host(wrapped-extension) {
2429  background-color: var(--shadow-primary-surface) !important;
2430  border: var(--shadow-border-width) solid var(--shadow-block-border-surface) !important;
2431  border-radius: var(--shadow-border-radius-sm) !important;
2432  color: var(--shadow-primary-text-color) !important;
2433  display: flex;
2434  flex-direction: column !important;
2435  font-size: var(--shadow-font-size-base) !important;
2436  height: fit-content !important;
2437  margin-block-start: var(--shadow-block-margin-start, var(--shadow-block-margin-block-start)) !important;
2438  margin-block-end: var(--shadow-block-margin-end, var(--shadow-block-margin-block-end)) !important;
2439  min-width: unset !important;
2440  max-width: 640px !important;
2441  overflow: hidden !important;
2442  padding: unset !important;
2443  width: unset !important;
2444}
2445
2446:host(wrapped-extension[option-type="order"]) {
2447  margin-left: auto !important;
2448  margin-right: 0 !important;
2449  width: stretch !important;
2450}
2451
2452:host(wrapped-extension[target-group="drawer"][option-type="order"]) {
2453  max-width: unset !important;
2454  margin-left: unset !important;
2455  margin-right: unset !important;
2456  margin-block-end: var(--shadow-block-margin-end, calc(var(--shadow-block-margin-block-end) * 0.5)) !important;
2457}
2458
2459
2460wrapped-advanced-mode,
2461wrapped-basic-mode {
2462  display: contents;
2463}
2464
2465
2466:host(wrapped-extension) [part="feature"],
2467:host(wrapped-extension) gift-block-launcher {
2468  overflow: hidden !important;
2469
2470  & [part="container"] {
2471    display: flex;
2472    flex-direction: column;
2473    row-gap: 0.25em;
2474
2475    
2476    & label {
2477      align-items: center !important;
2478      column-gap: var(--shadow-spacing-sm) !important;
2479      cursor: pointer !important;
2480      display: flex;
2481      line-height: normal !important;
2482      margin: 0 !important;
2483      pointer-events: auto !important;
2484      text-align: left !important;
2485      text-transform: unset !important;
2486    }
2487  }
2488}
2489
2490
2491:host(wrapped-extension) [part="feature"] {
2492  background-color: var(--shadow-secondary-surface);
2493}
2494
2495
2496:host(wrapped-extension) [part="feature"]:is([feature="variant"], [feature="gift-option"]) {
2497  display: block;
2498}
2499
2500:host(wrapped-extension) [part="feature"][enabled="false"] {
2501  display: none;
2502  opacity: 0;
2503  visibility: hidden;
2504}
2505
2506
2507:host(wrapped-extension) [part="disclosure"] {
2508  display: grid;
2509  grid-template-rows: 0fr;
2510  transition: grid-template-rows 0.25s cubic-bezier(0.42, 0, 0.58, 1);
2511}
2512
2513
2514:host(wrapped-extension) [part="disclosure-content"] {
2515  display: flex;
2516  flex-direction: column;
2517  min-height: 0;
2518  opacity: 0;
2519  overflow: hidden;
2520  visibility: hidden;
2521  transition: opacity 0.25s, visibility 0.25s;
2522}
2523
2524
2525:host(wrapped-extension[expanded="true"]) gift-block-launcher:has(~ [part="disclosure"] [part="feature"][enabled="true"]:not([singular="true"])) {
2526  border-bottom: var(--shadow-border-width) solid var(--shadow-block-border-surface);
2527}
2528
2529:host(wrapped-extension[expanded="true"]) [part="disclosure"],
2530:host(wrapped-extension[hidden-checkbox="true"]) [part="disclosure"] {
2531  grid-template-rows: 1fr;
2532}
2533
2534:host(wrapped-extension[expanded="true"]) [part="disclosure-content"],
2535:host(wrapped-extension[hidden-checkbox="true"]) [part="disclosure-content"] {
2536  opacity: 1;
2537  visibility: visible;
2538}
2539
2540:host(wrapped-extension[hidden-checkbox="true"]) gift-block-launcher {
2541  display: none;
2542  opacity: 0;
2543  visibility: hidden;
2544}
2545
2546
2547:host(wrapped-extension[limited="true"]),
2548:host(wrapped-extension[region-unavailable="true"]) {
2549  cursor: none !important;
2550  pointer-events: none !important;
2551  opacity: 0.6 !important;
2552
2553  & [part="container"] {
2554    & label {
2555      pointer-events: none !important;
2556    }
2557  }
2558}
2559
2560
2561:host(wrapped-extension[saving="true"]) {
2562  & [part="container"] {
2563    & label {
2564      pointer-events: none !important;
2565
2566      & input[type="checkbox"], input[type="radio"], span {
2567        opacity: 0.7 !important;
2568        transition: opacity 300ms cubic-bezier(0.25, 0.1, 0.25, 1);
2569      }
2570    }
2571
2572    & select {
2573      pointer-events: none !important;
2574      opacity: 0.7 !important;
2575    }
2576
2577    & button {
2578      pointer-events: none;
2579      opacity: 0.7;
2580      transition: opacity 300ms cubic-bezier(0.25, 0.1, 0.25, 1);
2581    }
2582  }
2583}
2584
2585:host(wrapped-extension) gift-block-launcher [part="container"] {
2586  padding: var(--shadow-spacing-sm);
2587
2588  & label {
2589    padding: 0 !important;
2590
2591    
2592    & input[type="checkbox"] {
2593      cursor: pointer;
2594      clip: unset !important;
2595      display: inline-block !important;
2596      flex-shrink: 0 !important;
2597      height: var(--shadow-font-size-base) !important;
2598      margin: 0  !important;
2599      min-height: revert !important;
2600      position: unset !important;
2601      top: unset !important;
2602      width: var(--shadow-font-size-base) !important;
2603
2604      &::before {
2605        content: unset !important;
2606      }
2607      &::after {
2608        content: unset !important;
2609      }
2610
2611      &:checked::before {
2612        content: unset !important;
2613      }
2614
2615      &:checked::after {
2616        content: unset !important;
2617      }
2618    }
2619
2620    & span {
2621      &[part="label"] {
2622        border: unset !important;
2623        flex-grow: 1;
2624        padding: unset !important;
2625      }
2626
2627      &[part="pricing"] {
2628        align-content: center;
2629        font-size: var(--shadow-font-size-sm);
2630        white-space: nowrap;
2631      }
2632
2633      &[part="thumbnail"] {
2634        background-color: var(--shadow-form-element-surface);
2635        background-size: cover;
2636        background-position: center;
2637        background-repeat: no-repeat;
2638        border: var(--shadow-border-width) solid #ddd;
2639        border-color: var(--shadow-form-element-border-color);
2640        border-radius: var(--shadow-border-radius-sm);
2641        min-height: var(--shadow-thumbnail-size);
2642        max-height: var(--shadow-thumbnail-size);
2643        min-width: var(--shadow-thumbnail-size);
2644        max-width: var(--shadow-thumbnail-size);
2645        height: 100%;
2646        width: 100%;
2647        display: inline-block;
2648        overflow: hidden;
2649        vertical-align: middle;
2650        order: var(--shadow-thumbnail-order);
2651
2652        margin-right: var(--shadow-thumbnail-margin-right);
2653        margin-left: var(--shadow-thumbnail-margin-left);
2654      }
2655    }
2656  }
2657
2658}
2659
2660
2661:host(wrapped-extension) [feature="gift-option"] [part="container"] {
2662  padding: var(--shadow-spacing-sm);
2663
2664  & label {
2665    align-items: center;
2666    cursor: pointer;
2667    display: flex;
2668    gap: var(--shadow-spacing-sm);
2669  }
2670
2671  & input[type="checkbox"] {
2672    cursor: pointer;
2673    flex: 0 0 auto;
2674    height: var(--shadow-font-size-base);
2675    margin: 0;
2676    width: var(--shadow-font-size-base);
2677  }
2678
2679  & span[part="label"] {
2680    color: var(--shadow-primary-text-color);
2681    display: block;
2682    font-size: var(--shadow-font-size-base);
2683    font-weight: var(--shadow-font-weight-md, 500);
2684    line-height: 1.25em;
2685  }
2686}
2687
2688
2689:host(wrapped-extension) gift-block-launcher [part="container"] label input[type="checkbox"],
2690:host(wrapped-extension) [feature="gift-option"] [part="container"] label input[type="checkbox"] {
2691  appearance: none;
2692  background-color: var(--shadow-form-element-surface);
2693  background-position: center;
2694  background-repeat: no-repeat;
2695  background-size: 82%;
2696  border: var(--shadow-border-width) solid var(--shadow-form-element-border-color);
2697  border-radius: min(4px, var(--shadow-border-radius-sm));
2698  box-sizing: border-box;
2699
2700  &:checked {
2701    background-color: var(--shadow-selection-checked-surface);
2702    border-color: var(--shadow-selection-checked-surface);
2703
2704    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='white' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round' d='M3.5 8.4l3 3 6-6'/%3E%3C/svg%3E");
2705  }
2706
2707  &:focus-visible {
2708    outline: var(--shadow-outline-width) solid var(--shadow-form-element-selection-color);
2709    outline-offset: var(--shadow-border-width);
2710  }
2711}
2712
2713
2714:host(wrapped-extension[hidden-checkbox="false"][gift-option-optional="false"]) [feature="variant"][enabled="true"][singular="true"] {
2715  display: none;
2716}
2717
2718
2719:host(wrapped-extension[gift-option-optional="true"]) .gift-option-group {
2720  transition: opacity 0.25s cubic-bezier(0.42, 0, 0.58, 1);
2721}
2722
2723
2724:host(wrapped-extension[gift-option-optional="true"]:not([gift-option-included])) .gift-option-group {
2725  opacity: 0.5;
2726  pointer-events: none;
2727}
2728
2729
2730:host(wrapped-extension[gift-option-optional="true"]) [feature="variant"][singular="true"] gift-variant-selector {
2731  --shadow-picker-list-overflow: auto;
2732}
2733
2734
2735:host(wrapped-extension) gift-block-message {
2736  --shadow-message-gap: var(--shadow-spacing-sm);
2737  --shadow-message-padding: var(--shadow-spacing-sm);
2738  --shadow-message-input-flex: 1 1 40%;
2739
2740  & wrapped-message-field {
2741    
2742    & label {
2743      color: var(--shadow-primary-text-color);
2744    }
2745
2746    & textarea {
2747      min-height: var(--shadow-textarea-min-height);
2748    }
2749  }
2750}
2751
2752
2753:host(wrapped-extension) gift-block-actions {
2754  --shadow-actions-gap: var(--shadow-spacing-xs);
2755  --shadow-actions-padding: var(--shadow-spacing-sm);
2756}
2757
2758/* media queries */
2759/* md - and above */
2760@media (min-width: 768px) {
2761  :host {
2762    --shadow-section-max-width: 420px;
2763  }
2764
2765  gift-dialog-content > section {
2766    min-width: var(--shadow-section-max-width);
2767    max-width: var(--shadow-section-max-width);
2768  }
2769
2770  gift-dialog-header,
2771  .gift-block-modal-layout gift-block-actions {
2772    min-width: var(--shadow-section-max-width);
2773    max-width: var(--shadow-section-max-width);
2774  }
2775}
2776
2777/* md - and below */
2778@media (max-width: 768px) {
2779  :host {
2780    --shadow-section-max-width: 390px;
2781  }
2782
2783  gift-dialog-content > section {
2784    min-width: var(--shadow-section-max-width);
2785    max-width: var(--shadow-section-max-width);
2786  }
2787
2788  gift-dialog-header,
2789  .gift-block-modal-layout gift-block-actions {
2790    min-width: var(--shadow-section-max-width);
2791    max-width: var(--shadow-section-max-width);
2792  }
2793
2794  gift-dialog-header {
2795    padding: var(--shadow-spacing-base);
2796  }
2797
2798  .gift-block-modal-layout gift-block-actions {
2799    --shadow-actions-padding: var(--shadow-spacing-base);
2800  }
2801
2802  .gift-block-modal-layout {
2803    grid-template-areas:
2804      "gift-dialog-header"
2805      "media"
2806      "content"
2807      "gift-block-actions";
2808    grid-template-columns: 1fr;
2809    grid-template-rows: auto auto 1fr auto;
2810    max-height: calc(100dvh - var(--shadow-spacing-base));
2811    max-width: 100dvw;
2812  }
2813
2814  gift-dialog-content {
2815    display: grid;
2816    grid-template-areas:
2817      "media"
2818      "content";
2819    grid-template-columns: 1fr;
2820    grid-template-rows: auto 1fr;
2821    overflow-y: auto;
2822    overscroll-behavior: contain;
2823    scrollbar-width: thin;
2824    -webkit-overflow-scrolling: touch;
2825  }
2826
2827  section#media {
2828    background: none;
2829    grid-row: auto;
2830    position: relative;
2831    padding: 0;
2832
2833    & shopify-media {
2834      & img {
2835        border-radius: unset;
2836        min-height: var(--shadow-section-max-width);
2837        max-height: var(--shadow-section-max-width);
2838      }
2839    }
2840  }
2841
2842  section#content {
2843    overflow-y: unset;
2844    padding: var(--shadow-spacing-base);
2845
2846    &.with-media-inline {
2847      padding-top: 0;
2848    }
2849
2850    & .gift-product-media {
2851      &:has(shopify-media) {
2852        --shadow-inline-media-max-size: 330px;
2853      }
2854    }
2855  }
2856}
2857
2858/* sm - and below */
2859@media (max-width: 480px) {
2860  :host {
2861    --shadow-section-max-width: 100%;
2862  }
2863
2864  section#media {
2865    & shopify-media {
2866      & img {
2867        border-radius: unset;
2868        min-height: 350px;
2869        max-height: 350px;
2870      }
2871    }
2872  }
2873}
2874
2875@keyframes unblur {
2876  from { filter: blur(2px); }
2877  to { filter: blur(0px); }
2878}
2879</template>
2880<!-- END app snippet --><!-- BEGIN app snippet: app-embed.customizations -->
2880<script type="text/javascript">
2881  // store customizations
2882  if (window.Wrapped?.settings?.styles) {
2883    const styleElement = document.createElement('style')
2884    styleElement.type = 'text/css'
2885    styleElement.appendChild(document.createTextNode(window.Wrapped.settings.styles))
2886    document.head.appendChild(styleElement)
2887  }
2888
2889  if (window.Wrapped?.settings?.scripts) {
2890    const scriptElement = document.createElement('script')
2891    scriptElement.type = 'text/javascript'
2892    scriptElement.appendChild(document.createTextNode(window.Wrapped.settings.scripts))
2893    document.head.appendChild(scriptElement)
2894  }
2895
2896  // theme customizations
2897  if (window.Wrapped?.theme?.styles) {
2898    const styleElement = document.createElement('style')
2899    styleElement.type = 'text/css'
2900    styleElement.appendChild(document.createTextNode(window.Wrapped.theme.styles))
2901    document.head.appendChild(styleElement)
2902  }
2903
2904  if (window.Wrapped?.theme?.scripts) {
2905    const scriptElement = document.createElement('script')
2906    scriptElement.type = 'text/javascript'
2907    scriptElement.appendChild(document.createTextNode(window.Wrapped.theme.scripts))
2908    document.head.appendChild(scriptElement)
2909  }
2910</script>
2910
2911<!-- END app snippet -->
2912
2913
2914<!-- END app block --><!-- BEGIN app block: shopify://apps/loyalty-rewards-and-referrals/blocks/embed-sdk/6f172e67-4106-4ac0-89c5-b32a069b3101 -->
2915
2916<style
2917  type='text/css'
2918  data-lion-app-styles='main'
2919  data-lion-app-styles-settings='{&quot;disableBundledCSS&quot;:false,&quot;disableBundledFonts&quot;:false,&quot;useClassIsolator&quot;:false}'
2920></style>
2921
2922<!-- loyaltylion.snippet.version=9283085fd3+12800 -->
2923
2924
2925<script>
2926  
2927  !function(t,n){function o(n){var o=t.getElementsByTagName("script")[0],i=t.createElement("script");i.src=n,i.crossOrigin="",o.parentNode.insertBefore(i,o)}if(!n.isLoyaltyLion){window.loyaltylion=n,void 0===window.lion&&(window.lion=n),n.version=2,n.isLoyaltyLion=!0;var i=new Date,e=i.getFullYear().toString()+i.getMonth().toString()+i.getDate().toString();o("https://sdk.loyaltylion.net/static/2/loader.js?t="+e);var r=!1;n.init=function(t){if(r)throw new Error("Cannot call lion.init more than once");r=!0;var a=n._token=t.token;if(!a)throw new Error("Token must be supplied to lion.init");for(var l=[],s="_push configure bootstrap shutdown on removeListener authenticateCustomer".split(" "),c=0;c<s.length;c+=1)!function(t,n){t[n]=function(){l.push([n,Array.prototype.slice.call(arguments,0)])}}(n,s[c]);o("https://sdk.loyaltylion.net/sdk/start/"+a+".js?t="+e+i.getHours().toString()),n._initData=t,n._buffer=l}}}(document,window.loyaltylion||[]);
2928
2929  
2930    
2931      loyaltylion.init(
2932        { token: "799575c935eeef9c8f5c9a9ab61ed40e" }
2933      );
2934    
2935  
2936
2937  loyaltylion.configure({
2938    disableBundledCSS: false,
2939    disableBundledFonts: false,
2940    useClassIsolator: false,
2941  })
2942
2943  
2944</script>
2944
2945
2946
2947
2948<!-- END app block --><!-- BEGIN app block: shopify://apps/judge-me-reviews/blocks/judgeme_core/61ccd3b1-a9f2-4160-9fe9-4fec8413e5d8 --><!-- Start of Judge.me Core -->
2949
2950
2951
2952
2953
2954
2955
2956<link rel="dns-prefetch" href="https://cdn.judge.me">
2957<link rel="dns-prefetch" href="https://cdn1.judge.me">
2958<link rel="dns-prefetch" href="https://api.judge.me">
2959
2960<script data-cfasync='false' class='jdgm-settings-script'>window.jdgmSettings={"pagination":5,"disable_web_reviews":false,"coupon_receiving_condition":"","coupon_value_type":"percentage","coupon_value_percentage":10,"coupon_value_fixed_amount":0,"coupon_discount_type":"single","coupon_tier_text_enabled":false,"coupon_tier_text_percentage":10,"coupon_tier_text_fixed_amount":0,"coupon_tier_photo_enabled":false,"coupon_tier_photo_percentage":10,"coupon_tier_photo_fixed_amount":0,"coupon_tier_video_enabled":false,"coupon_tier_video_percentage":10,"coupon_tier_video_fixed_amount":0,"enable_coupons":false,"badge_no_review_text":"No reviews","badge_n_reviews_text":"{{ n }} review/reviews","badge_star_color":"#2e475e","hide_badge_preview_if_no_reviews":true,"badge_hide_text":false,"enforce_center_preview_badge":false,"widget_title":"Customer Reviews","widget_open_form_text":"Write a review","widget_close_form_text":"Cancel review","widget_refresh_page_text":"Refresh page","widget_summary_text":"Based on {{ number_of_reviews }} review/reviews","widget_no_review_text":"Be the first to write a review","widget_name_field_text":"Display name","widget_verified_name_field_text":"Verified Name (public)","widget_name_placeholder_text":"Display name","widget_required_field_error_text":"This field is required.","widget_email_field_text":"Email address","widget_verified_email_field_text":"Verified Email (private, can not be edited)","widget_email_placeholder_text":"Your email address","widget_email_field_error_text":"Please enter a valid email address.","widget_rating_field_text":"Rating","widget_review_title_field_text":"Review Title","widget_review_title_placeholder_text":"Give your review a title","widget_review_body_field_text":"Review content","widget_review_body_placeholder_text":"Start writing here...","widget_pictures_field_text":"Picture/Video (optional)","widget_submit_review_text":"Submit Review","widget_submit_verified_review_text":"Submit Verified Review","widget_submit_success_msg_with_auto_publish":"Thank y
2960ou! Please refresh the page in a few moments to see your review. You can remove or edit your review by logging into \u003ca href='https://judge.me/login' target='_blank' rel='nofollow noopener'\u003eJudge.me\u003c/a\u003e","widget_submit_success_msg_no_auto_publish":"Thank you! Your review will be published as soon as it is approved by the shop admin. You can remove or edit your review by logging into \u003ca href='https://judge.me/login' target='_blank' rel='nofollow noopener'\u003eJudge.me\u003c/a\u003e","widget_show_default_reviews_out_of_total_text":"Showing {{ n_reviews_shown }} out of {{ n_reviews }} reviews.","widget_show_all_link_text":"Show all","widget_show_less_link_text":"Show less","widget_author_said_text":"{{ reviewer_name }} said:","widget_days_text":"{{ n }} days ago","widget_weeks_text":"{{ n }} week/weeks ago","widget_months_text":"{{ n }} month/months ago","widget_years_text":"{{ n }} year/years ago","widget_yesterday_text":"Yesterday","widget_today_text":"Today","widget_replied_text":"\u003e\u003e {{ shop_name }} replied:","widget_read_more_text":"Read more","widget_reviewer_name_as_initial":"last_initial","widget_rating_filter_color":"#2e475e","widget_rating_filter_see_all_text":"See all reviews","widget_sorting_most_recent_text":"Most Recent","widget_sorting_highest_rating_text":"Highest Rating","widget_sorting_lowest_rating_text":"Lowest Rating","widget_sorting_with_pictures_text":"Only Pictures","widget_sorting_most_helpful_text":"Most Helpful","widget_open_question_form_text":"Ask a question","widget_reviews_subtab_text":"Reviews","widget_questions_subtab_text":"Questions","widget_question_label_text":"Question","widget_answer_label_text":"Answer","widget_question_placeholder_text":"Write your question here","widget_submit_question_text":"Submit Question","widget_question_submit_success_text":"Thank you for your question! We will notify you once it gets answered.","widget_star_color":"#2e475e","verified_badge_text":"Verified","verified_badge_bg_color":"","verified_badge_text_color":"","verified_badge_placement":"left-of-reviewer-name","widget_review_max_height":7,"widget_hide_border":true,"widget_social_share":false,"widget_thumb":true,"widget_review_location_show":false,"widget_location_format":"country_iso_code","all_reviews_include_out_of_store_products":true,"all_reviews_out_of_store_text":"(out of store)","all_reviews_pagination":100,"all_reviews_product_name_prefix_text":"about","enable_review_pictures":true,"enable_question_anwser":false,"widget_theme":"carousel","review_date_format":"mm/dd/yyyy","default_sort_method":"most-recent","enable_ai_review_visibility":true,"widget_product_reviews_subtab_text":"Product Reviews","widget_shop_reviews_subtab_text":"Shop Reviews","widget_other_products_reviews_text":"Reviews for other products","widget_store_reviews_subtab_text":"Store reviews","widget_product_variant_reference_text":"Review for","widget_no_store_reviews_text":"This store hasn't received any reviews yet","widget_web_restriction_product_reviews_text":"This product hasn't received any reviews yet","widget_no_items_text":"No items found","widget_show_more_text":"Show more","widget_write_a_store_review_text":"Write a Store Review","widget_product_and_store_reviews_text":"Product and store reviews","widget_reviews_in_collection_text":"Reviews in this collection","widget_other_languages_heading":"Reviews in Other Languages","widget_translate_review_text":"Translate review to {{ language }}","widget_translating_review_text":"Translating...","widget_show_original_translation_text":"Show original ({{ language }})","widget_translate_review_failed_text":"Review couldn't be translated.","widget_translate_review_retry_text":"Retry","widget_translate_review_try_again_later_text":"Try again later","show_product_url_for_grouped_product":false,"widget_sorting_pictures_first_text":"Pictures First","show_pictures_on_all_rev_page_mobile":false,"show_pictures_on_all_rev_page_desktop":false,"floating_tab_hide_mobile_install_preference":false,"floating_tab_button_name":"★ Reviews","floating_tab_title":"Let customers speak for us","floating_tab_button_color":"","floating_tab_button_background_color":"","floating_tab_url":"","floating_tab_url_enabled":false,"floating_tab_tab_style":"text","all_reviews_text_badge_text":"Customers rate us {{ shop.metafields.judgeme.all_reviews_rating | round: 1 }}/5 based on {{ shop.metafields.judgeme.all_reviews_count }} reviews.","all_reviews_text_badge_text_branded_style":"{{ shop.metafields.judgeme.all_reviews_rating | round: 1 }} out of 5 stars based on {{ shop.metafields.judgeme.all_reviews_count }} reviews","is_all_reviews_text_badge_a_link":false,"show_stars_for_all_reviews_text_badge":false,"all_reviews_text_badge_url":"","all_reviews_text_style":"text","all_reviews_text_color_style":"judgeme_brand_color","all_reviews_text_color":"#108474","all_reviews_text_show_jm_brand":true,"featured_carousel_show_header":true,"featured_carousel_title":"Who Loves Luke's?","testimonials_carousel_title":"Customers are saying","videos_carousel_title":"Real customer stories","cards_carousel_title":"Customers are saying","featured_carousel_count_text":"from {{ n }} reviews","featured_carousel_add_link_to_all_reviews_page":false,"featured_carousel_url":"","featured_carousel_show_images":true,"featured_carousel_autoslide_interval":5,"featured_carousel_arrows_on_the_sides":false,"featured_carousel_height":300,"featured_carousel_width":80,"featured_carousel_image_size":0,"featured_carousel_image_height":250,"featured_carousel_arrow_color":"#eeeeee","verified_count_badge_style":"vintage","verified_count_badge_orientation":"horizontal","verified_count_badge_color_style":"judgeme_brand_color","verified_count_badge_color":"#108474","is_verified_count_badge_a_link":false,"verified_count_badge_url":"","verified_count_badge_show_jm_brand":true,"widget_rating_preset_default":5,"widget_first_sub_tab":"product-reviews","widget_show_histogram":true,"widget_histogram_use_custom_color":true,"widget_pagination_use_custom_color":false,"widget_star_use_custom_color":true,"widget_verified_badge_use_custom_color":false,"widget_write_review_use_custom_color":false,"picture_reminder_submit_button":"Upload Pictures","enable_review_videos":false,"mute_video_by_default":false,"widget_sorting_videos_first_text":"Videos First","widget_review_pending_text":"Pending","featured_carousel_items_for_large_screen":4,"social_share_options_order":"Facebook,Twitter","remove_microdata_snippet":false,"disable_json_ld":false,"enable_json_ld_products":false,"preview_badge_show_question_text":false,"preview_badge_no_question_text":"No questions","preview_badge_n_question_text":"{{ number_of_questions }} question/questions","qa_badge_show_icon":false,"qa_badge_position":"same-row","remove_judgeme_branding":true,"widget_add_search_bar":false,"widget_search_bar_placeholder":"Search","widget_sorting_verified_only_text":"Verified only","widget_sorting_most_relevant_text":"Most Relevant","featured_carousel_theme":"compact","featured_carousel_show_rating":true,"featured_carousel_show_title":true,"featured_carousel_show_body":true,"featured_carousel_show_date":false,"featured_carousel_show_reviewer":true,"featured_carousel_show_product":false,"featured_carousel_header_background_color":"#108474","featured_carousel_header_text_color":"#ffffff","featured_carousel_name_product_separator":"reviewed","featured_carousel_full_star_background":"#2e465d","featured_carousel_empty_star_background":"#dadada","featured_carousel_vertical_theme_background":"#f9fafb","featured_carousel_verified_badge_enable":false,"featured_carousel_verified_badge_color":"#108474","featured_carousel_border_style":"round","featured_carousel_review_line_length_limit":3,"featured_carousel_more_reviews_button_text":"Read more reviews","featured_carousel_view_product_button_text":"View product","all_reviews_page_load_reviews_on":"scroll","all_reviews_page_load_more_text":"Load More Reviews","disable_fb_tab_reviews":false,"enable_ajax_cdn_cache":false,"widget_public_name_text":"displayed publicly like","default_reviewer_name":"John Smith","default_reviewer_name_has_non_latin":true,"widget_reviewer_anonymous":"Anonymous","medals_widget_title":"Judge.me Review Medals","medals_widget_background_color":"#f9fafb","medals_widget_position":"footer_all_pages","medals_widget_border_color":"#f9fafb","medals_widget_verified_text_position":"left","medals_widget_use_monochromatic_version":false,"medals_widget_elements_color":"#108474","show_reviewer_avatar":true,"widget_invalid_yt_video_url_error_text":"Not a YouTube video URL","widget_max_length_field_error_text":"Please enter no more than {0} characters.","widget_show_country_flag":false,"widget_show_collected_via_shop_app":true,"widget_verified_by_shop_badge_style":"light","widget_verified_by_shop_text":"Verified by Shop","widget_show_photo_gallery":false,"widget_load_with_code_splitting":true,"widget_ugc_install_preference":false,"widget_ugc_title":"Made by us, Shared by you","widget_ugc_subt
2960itle":"Tag us to see your picture featured in our page","widget_ugc_arrows_color":"#ffffff","widget_ugc_primary_button_text":"Buy Now","widget_ugc_primary_button_background_color":"#108474","widget_ugc_primary_button_text_color":"#ffffff","widget_ugc_primary_button_border_width":"0","widget_ugc_primary_button_border_style":"none","widget_ugc_primary_button_border_color":"#108474","widget_ugc_primary_button_border_radius":"25","widget_ugc_secondary_button_text":"Load More","widget_ugc_secondary_button_background_color":"#ffffff","widget_ugc_secondary_button_text_color":"#108474","widget_ugc_secondary_button_border_width":"2","widget_ugc_secondary_button_border_style":"solid","widget_ugc_secondary_button_border_color":"#108474","widget_ugc_secondary_button_border_radius":"25","widget_ugc_reviews_button_text":"View Reviews","widget_ugc_reviews_button_background_color":"#ffffff","widget_ugc_reviews_button_text_color":"#108474","widget_ugc_reviews_button_border_width":"2","widget_ugc_reviews_button_border_style":"solid","widget_ugc_reviews_button_border_color":"#108474","widget_ugc_reviews_button_border_radius":"25","widget_ugc_reviews_button_link_to":"judgeme-reviews-page","widget_ugc_show_post_date":true,"widget_ugc_max_width":"800","widget_rating_metafield_value_type":true,"widget_primary_color":"#2e475e","widget_enable_secondary_color":false,"widget_secondary_color":"#edf5f5","widget_summary_average_rating_text":"{{ average_rating }} out of 5","widget_media_grid_title":"Customer photos \u0026 videos","widget_media_grid_see_more_text":"See more","widget_round_style":false,"widget_show_product_medals":true,"widget_verified_by_judgeme_text":"Verified by Judge.me","widget_show_store_medals":true,"widget_verified_by_judgeme_text_in_store_medals":"Verified by Judge.me","widget_media_field_exceed_quantity_message":"Sorry, we can only accept {{ max_media }} for one review.","widget_media_field_exceed_limit_message":"{{ file_name }} is too large, please select a {{ media_type }} less than {{ size_limit }}MB.","widget_review_submitted_text":"Review Submitted!","widget_question_submitted_text":"Question Submitted!","widget_close_form_text_question":"Cancel","widget_write_your_answer_here_text":"Write your answer here","widget_enabled_branded_link":true,"widget_show_collected_by_judgeme":false,"widget_reviewer_name_color":"","widget_write_review_text_color":"","widget_write_review_bg_color":"","widget_collected_by_judgeme_text":"collected by Judge.me","widget_pagination_type":"standard","widget_load_more_text":"Load More","widget_load_more_color":"#108474","widget_full_review_text":"Full Review","widget_read_more_reviews_text":"Read More Reviews","widget_read_questions_text":"Read Questions","widget_questions_and_answers_text":"Questions \u0026 Answers","widget_verified_by_text":"Verified by","widget_verified_text":"Verified","widget_number_of_reviews_text":"{{ number_of_reviews }} reviews","widget_back_button_text":"Back","widget_next_button_text":"Next","widget_custom_forms_filter_button":"Filters","custom_forms_style":"vertical","widget_show_review_information":false,"how_reviews_are_collected":"How reviews are collected?","widget_show_review_keywords":false,"widget_gdpr_statement":"How we use your data: We'll only contact you about the review you left, and only if necessary. By submitting your review, you agree to Judge.me's \u003ca href='https://judge.me/terms' target='_blank' rel='nofollow noopener'\u003eterms\u003c/a\u003e, \u003ca href='https://judge.me/privacy' target='_blank' rel='nofollow noopener'\u003eprivacy\u003c/a\u003e and \u003ca href='https://judge.me/content-policy' target='_blank' rel='nofollow noopener'\u003econtent\u003c/a\u003e policies.","widget_multilingual_sorting_enabled":false,"widget_translate_review_content_enabled":false,"widget_translate_review_content_method":"manual","popup_widget_review_selection":"automatically_with_pictures","popup_widget_round_border_style":true,"popup_widget_show_title":true,"popup_widget_show_body":true,"popup_widget_show_reviewer":false,"popup_widget_show_product":true,"popup_widget_show_pictures":true,"popup_widget_use_review_picture":true,"popup_widget_show_on_home_page":true,"popup_widget_show_on_product_page":true,"popup_widget_show_on_collection_page":true,"popup_widget_show_on_cart_page":true,"popup_widget_position":"bottom_left","popup_widget_first_review_delay":5,"popup_widget_duration":5,"popup_widget_interval":5,"popup_widget_review_count":5,"popup_widget_hide_on_mobile":true,"review_snippet_widget_round_border_style":true,"review_snippet_widget_card_color":"#FFFFFF","review_snippet_widget_text_color":"#000000","review_snippet_widget_lighter_text_color":"#7B7B7B","review_snippet_widget_slider_arrows_background_color":"#FFFFFF","review_snippet_widget_slider_arrows_color":"#000000","review_snippet_widget_star_color":"#2e475e","show_product_variant":false,"all_reviews_product_variant_label_text":"Variant: ","widget_show_verified_branding":false,"widget_ai_summary_title":"Customers say","widget_ai_summary_disclaimer":"AI-powered review summary based on recent customer reviews","widget_show_ai_summary":false,"widget_show_ai_summary_bg":false,"write_review_button_visibility":"everyone","store_summary_widget_heading":"Customers rate this store","store_summary_widget_button_text":"View customer reviews","store_summary_widget_button_theme_text":"See AI reviews summary","widget_show_review_title_input":true,"widget_autofill_review_title":true,"redirect_reviewers_invited_via_email":"review_widget","request_store_review_after_product_review":false,"request_review_other_products_in_order":false,"review_form_color_scheme":"default","review_form_corner_style":"square","review_form_star_color":"#2e475e","review_form_text_color":"#333333","review_form_background_color":"#ffffff","review_form_field_background_color":"#fafafa","review_form_button_color":"#2e475e","review_form_button_text_color":"#ffffff","review_form_modal_overlay_color":"#000000","review_form_theme":"multi_step","review_form_location":"in_store_popup","review_form_external_page_background_color":"#C5F7F0","review_content_screen_title_text":"How would you rate this product?","review_content_introduction_text":"We would love it if you would share a bit about your experience.","store_review_form_title_text":"How would you rate this store?","store_review_form_introduction_text":"We would love it if you would share a bit about your experience.","show_review_guidance_text":true,"one_star_review_guidance_text":"Poor","five_star_review_guidance_text":"Great","customer_information_screen_title_text":"About you","customer_information_introduction_text":"Please tell us more about you.","custom_questions_screen_title_text":"Your experience in more detail","custom_questions_introduction_text":"Here are a few questions to help us understand more about your experience.","review_submitted_screen_title_text":"Thanks for your review!","review_submitted_screen_thank_you_text":"We are processing it and it will appear on the store soon.","review_submitted_screen_email_verification_text":"Please confirm your email by clicking the link we just sent you. This helps us keep reviews authentic.","confirm_email_screen_title_text":"Confirm your email","confirm_email_screen_message_text":"To help keep reviews authentic, we'll send you a secure link to continue writing your review. It only takes a moment.","check_email_screen_title_text":"Check your email","check_email_screen_message_text":"We sent you an email to {{ email }}. Click the button on the email to continue.","check_email_screen_resend_message_text":"Email resent!","check_email_resend_hint_text":"Didn't get the email? Check your spam folder or [resend the email].","verification_email_rate_limit_error_text":"You've reached the limit for review attempts on this product. Please check your inbox or try again later.","review_submitted_request_store_review_text":"Would you like to share your experience of shopping with us?","review_submitted_review_other_products_text":"Would you like to review these products?","store_review_screen_title_text":"Would you like to share your experience of shopping with us?","store_review_introduction_text":"We value your feedback and use it to improve. Please share any thoughts or suggestions you have.","reviewer_media_screen_title_picture_text":"Share a picture","reviewer_media_introduction_picture_text":"Upload a photo to support your review.","reviewer_media_screen_title_video_text":"Share a video","reviewer_media_introduction_video_text":"Upload a video to support your review.","reviewer_media_screen_title_picture_or_video_text":"Share a picture or video","reviewer_media_introduction_picture_or_video_text":"Upload a photo or video to support your review.","reviewer_media_
2960youtube_url_text":"Paste your Youtube URL here","advanced_settings_next_step_button_text":"Next","advanced_settings_close_review_button_text":"Close","modal_write_review_flow":false,"write_review_flow_required_text":"Required","write_review_flow_privacy_message_text":"We respect your privacy.","write_review_flow_anonymous_text":"Post review as anonymous","write_review_flow_visibility_text":"This won't be visible to other customers.","write_review_flow_multiple_selection_help_text":"Select as many as you like","write_review_flow_single_selection_help_text":"Select one option","write_review_flow_required_field_error_text":"This field is required","write_review_flow_invalid_email_error_text":"Please enter a valid email address","write_review_flow_max_length_error_text":"Max. {{ max_length }} characters.","write_review_flow_media_upload_text":"\u003cb\u003eClick to upload\u003c/b\u003e or drag and drop","write_review_flow_gdpr_statement":"We'll only contact you about your review if necessary. By submitting your review, you agree to our \u003ca href='https://judge.me/terms' target='_blank' rel='nofollow noopener'\u003eterms and conditions\u003c/a\u003e and \u003ca href='https://judge.me/privacy' target='_blank' rel='nofollow noopener'\u003eprivacy policy\u003c/a\u003e.","rating_only_reviews_enabled":false,"show_negative_reviews_help_screen":false,"new_review_flow_help_screen_rating_threshold":3,"negative_review_resolution_screen_title_text":"Tell us more","negative_review_resolution_text":"Your experience matters to us. If there were issues with your purchase, we're here to help. Feel free to reach out to us, we'd love the opportunity to make things right.","negative_review_resolution_button_text":"Contact us","negative_review_resolution_proceed_with_review_text":"Leave a review","negative_review_resolution_subject":"Issue with purchase from {{ shop_name }}.{{ order_name }}","coupon_promo_intro_any_review_text":"Write a review and get a coupon for {{ amount }} off your next purchase","coupon_promo_intro_with_photo_text":"Write a review and add a photo or video to get a coupon for {{ amount }} off your next purchase","coupon_promo_intro_with_video_text":"Write a review and add a video to get a coupon for {{ amount }} off your next purchase","coupon_promo_intro_up_to_any_review_text":"Write a review and get a coupon for up to {{ amount }} off your next purchase","coupon_promo_intro_up_to_with_photo_text":"Write a review and add a photo or video to get a coupon for up to {{ amount }} off your next purchase","coupon_promo_intro_external_text":"Write a review and get a reward for your next purchase","coupon_promo_intro_external_with_photo_text":"Write a review and add a photo or video to get a reward for your next purchase","coupon_promo_intro_external_with_video_text":"Write a review and add a video to get a reward for your next purchase","coupon_promo_media_photo_text":"Add a photo or video and get a coupon for {{ amount }} off your next purchase","coupon_promo_media_photo_only_text":"Add a photo and get a coupon for {{ amount }} off your next purchase","coupon_promo_media_video_text":"Add a video and get a coupon for {{ amount }} off your next purchase","coupon_promo_media_external_photo_text":"Add a photo or video and get a reward for your next purchase","coupon_promo_media_external_photo_only_text":"Add a photo and get a reward for your next purchase","coupon_promo_media_external_video_text":"Add a video and get a reward for your next purchase","coupon_promo_success_text":"You've got a coupon for your next purchase at {{ shop_name }}!","coupon_promo_success_subtext":"You'll receive your coupon email within the hour.","preview_badge_collection_page_install_status":false,"widget_review_custom_css":"","preview_badge_custom_css":"","preview_badge_stars_count":"5-stars","featured_carousel_custom_css":"","floating_tab_custom_css":"","all_reviews_widget_custom_css":"","medals_widget_custom_css":"","verified_badge_custom_css":"","all_reviews_text_custom_css":"","transparency_badges_collected_via_store_invite":false,"transparency_badges_from_another_provider":false,"transparency_badges_collected_from_store_visitor":false,"transparency_badges_collected_by_verified_review_provider":true,"transparency_badges_earned_reward":false,"transparency_badges_collected_via_store_invite_text":"Review collected via store invitation","transparency_badges_from_another_provider_text":"Review collected from another provider","transparency_badges_collected_from_store_visitor_text":"Review collected from a store visitor","transparency_badges_written_in_google_text":"Review written in Google","transparency_badges_written_in_etsy_text":"Review written in Etsy","transparency_badges_written_in_shop_app_text":"Review written in Shop App","transparency_badges_earned_reward_text":"Review earned a reward for future purchase","product_review_widget_per_page":3,"widget_other_languages_reviews_per_page":3,"widget_store_review_label_text":"Review about the store","widget_cart_mode_aggregate_heading_text":"Customers rate this store","checkout_comment_extension_title_on_product_page":"Customer Comments","checkout_comment_extension_num_latest_comment_show":5,"checkout_comment_extension_format":"name_and_timestamp","checkout_comment_customer_name":"last_initial","checkout_comment_comment_notification":true,"preview_badge_collection_page_install_preference":false,"preview_badge_home_page_install_preference":false,"preview_badge_product_page_install_preference":true,"review_widget_install_preference":"","review_carousel_install_preference":false,"floating_reviews_tab_install_preference":"none","verified_reviews_count_badge_install_preference":false,"all_reviews_text_install_preference":false,"review_widget_best_location":true,"judgeme_medals_install_preference":false,"review_widget_revamp_enabled":false,"review_widget_qna_enabled":false,"review_widget_header_theme":"minimal","review_widget_widget_title_enabled":true,"review_widget_header_text_size":"medium","review_widget_header_text_weight":"regular","review_widget_average_rating_style":"compact","review_widget_bar_chart_enabled":true,"review_widget_bar_chart_type":"numbers","review_widget_bar_chart_style":"standard","review_widget_expanded_media_gallery_enabled":false,"review_widget_show_review_highlights":false,"review_widget_show_review_keywords_in_gray":false,"review_widget_reviews_section_theme":"standard","review_widget_image_style":"thumbnails","review_widget_review_image_ratio":"square","review_widget_stars_size":"medium","review_widget_verified_badge":"standard_text","review_widget_review_title_text_size":"medium","review_widget_review_text_size":"medium","review_widget_review_text_length":"medium","review_widget_number_of_columns_desktop":3,"review_widget_carousel_transition_speed":5,"review_widget_custom_questions_answers_display":"always","review_widget_card_section_size":"small","review_widget_button_text_color":"#FFFFFF","review_widget_text_color":"#000000","review_widget_lighter_text_color":"#7B7B7B","review_widget_corner_styling":"soft","review_widget_review_word_singular":"review","review_widget_review_word_plural"
2960:"reviews","review_widget_voting_label":"Helpful?","review_widget_shop_reply_label":"Reply from {{ shop_name }}:","review_widget_filters_title":"Filters","review_widget_filter_rating_title":"Rating","review_widget_filter_keyword_title":"Keyword","review_widget_clear_filters_text":"Clear filters","review_widget_expand_more_text":"More","review_widget_review_highlights_title":"Review highlights","qna_widget_question_word_singular":"Question","qna_widget_question_word_plural":"Questions","qna_widget_answer_reply_label":"Answer from {{ answerer_name }}:","qna_content_screen_title_text":"Ask a question about this product","qna_widget_question_required_field_error_text":"Please enter your question.","qna_widget_flow_gdpr_statement":"We'll only contact you about your question if necessary. By submitting your question, you agree to our \u003ca href='https://judge.me/terms' target='_blank' rel='nofollow noopener'\u003eterms and conditions\u003c/a\u003e and \u003ca href='https://judge.me/privacy' target='_blank' rel='nofollow noopener'\u003eprivacy policy\u003c/a\u003e.","qna_widget_question_submitted_text":"Thanks for your question!","qna_widget_close_form_text_question":"Close","qna_widget_question_submit_success_text":"We’ll notify you by email when your question is answered.","all_reviews_widget_v2025_enabled":false,"all_reviews_widget_v2025_header_theme":"default","all_reviews_widget_v2025_widget_title_enabled":true,"all_reviews_widget_v2025_header_text_size":"medium","all_reviews_widget_v2025_header_text_weight":"regular","all_reviews_widget_v2025_average_rating_style":"compact","all_reviews_widget_v2025_bar_chart_enabled":true,"all_reviews_widget_v2025_bar_chart_type":"numbers","all_reviews_widget_v2025_bar_chart_style":"standard","all_reviews_widget_v2025_expanded_media_gallery_enabled":false,"all_reviews_widget_v2025_show_store_medals":true,"all_reviews_widget_v2025_show_photo_gallery":true,"all_reviews_widget_v2025_show_review_keywords":false,"all_reviews_widget_v2025_show_ai_summary":false,"all_reviews_widget_v2025_show_ai_summary_bg":false,"all_reviews_widget_v2025_show_review_highlights":false,"all_reviews_widget_v2025_show_review_keywords_in_gray":false,"all_reviews_widget_v2025_add_search_bar":false,"all_reviews_widget_v2025_default_sort_method":"most-recent","all_reviews_widget_v2025_reviews_per_page":10,"all_reviews_widget_v2025_reviews_section_theme":"default","all_reviews_widget_v2025_image_style":"thumbnails","all_reviews_widget_v2025_review_image_ratio":"square","all_reviews_widget_v2025_stars_size":"medium","all_reviews_widget_v2025_verified_badge":"standard_text","all_reviews_widget_v2025_review_title_text_size":"medium","all_reviews_widget_v2025_review_text_size":"medium","all_reviews_widget_v2025_review_text_length":"medium","all_reviews_widget_v2025_number_of_columns_desktop":3,"all_reviews_widget_v2025_carousel_transition_speed":5,"all_reviews_widget_v2025_custom_questions_answers_display":"always","all_reviews_widget_v2025_review_dates":false,"all_reviews_widget_v2025_card_section_size":"small","all_reviews_widget_v2025_show_product_variant":false,"all_reviews_widget_v2025_show_reviewer_avatar":true,"all_reviews_widget_v2025_reviewer_name_as_initial":"","all_reviews_widget_v2025_review_location_show":false,"all_reviews_widget_v2025_location_format":"","all_reviews_widget_v2025_show_country_flag":false,"all_reviews_widget_v2025_widget_thumb":false,"all_reviews_widget_v2025_verified_by_shop_badge_style":"light","all_reviews_widget_v2025_social_share":false,"all_reviews_widget_v2025_social_share_options_order":"Facebook,Twitter,LinkedIn,Pinterest","all_reviews_widget_v2025_pagination_type":"standard","all_reviews_widget_v2025_button_text_color":"#FFFFFF","all_reviews_widget_v2025_text_color":"#000000","all_reviews_widget_v2025_lighter_text_color":"#7B7B7B","all_reviews_widget_v2025_corner_styling":"soft","all_reviews_widget_v2025_title":"Customer reviews","all_reviews_widget_v2025_ai_summary_title":"Customers say about this store","all_reviews_widget_v2025_no_review_text":"Be the first to write a review","all_reviews_widget_v2025_review_highlights_title":"Review highlights","reviews_grid_widget_show_sample_reviews":false,"reviews_grid_widget_review_selection":"all","reviews_grid_widget_select_products":[],"reviews_grid_widget_show_media_only":false,"reviews_grid_widget_display_order":"media_first","reviews_grid_widget_card_grouping":"per_media","reviews_grid_widget_columns_desktop":3,"reviews_grid_widget_rows_desktop":3,"reviews_grid_widget_columns_mobile":2,"reviews_grid_widget_rows_mobile":6,"reviews_grid_widget_show_stars":true,"reviews_grid_widget_show_reviewer_name":true,"reviews_grid_widget_show_review_title_on_hover_desktop":true,"reviews_grid_widget_corner_styling":"soft","reviews_grid_widget_card_spacing":"medium","reviews_grid_widget_header_text_color":"#000000","reviews_grid_widget_star_and_reviewer_name_color":"#F9F9F9","reviews_grid_widget_overlay_and_background_color":"#000000","reviews_grid_widget_content_color":"#F9F9F9","reviews_grid_widget_header_text":"From our customers","reviews_grid_widget_show_average_rating":true,"trust_badge_enabled":false,"trust_badge_structure":"outline","trust_badge_color":"black","trust_badge_star":"black","trust_badge_rating_display_default":"show_avg_text","platform":"shopify","branding_url":"https://app.judge.me/reviews/stores/lukeslobster.com","branding_text":"Powered by Judge.me","locale":"en","reply_name":" Luke's Lobster","shop_currency":"USD","widget_version":"3.0","footer":true,"autopublish":false,"review_dates":true,"enable_custom_form":false,"shop_use_review_site":true,"shop_locale":"en","enable_multi_locales_translations":true,"show_review_title_input":true,"autofill_review_title":true,"review_verification_email_status":"never","require_verification_before_submit":false,"sign_in_with_
2960shop_enabled":false,"customer_account_validation_enabled":true,"most_relevant_sort_enabled":false,"coupon_promo_invited_eligible":true,"coupon_promo_web_eligible":false,"uses_coupon_integration":true,"uses_external_coupon":false,"can_be_branded":true,"rtl_stars_enabled_ar":true,"rtl_stars_enabled_he":true,"reply_name_text":" Luke's Lobster"};</script>
2960 <style class='jdgm-settings-style'>.jdgm-xx{left:0}:root{--jdgm-primary-color: #2e475e;--jdgm-secondary-color: rgba(46,71,94,0.1);--jdgm-star-color: #2e475e;--jdgm-write-review-text-color: white;--jdgm-write-review-bg-color: #2e475e;--jdgm-paginate-color: #2e475e;--jdgm-border-radius: 0;--jdgm-reviewer-name-color: #2e475e}.jdgm-histogram__bar-content{background-color:#2e475e}.jdgm-rev[data-verified-buyer=true] .jdgm-rev__icon.jdgm-rev__icon:after,.jdgm-rev__buyer-badge.jdgm-rev__buyer-badge{color:white;background-color:#2e475e}.jdgm-review-widget--small .jdgm-gallery.jdgm-gallery .jdgm-gallery__thumbnail-link:nth-child(8) .jdgm-gallery__thumbnail-wrapper.jdgm-gallery__thumbnail-wrapper:before{content:"See more"}@media only screen and (min-width: 768px){.jdgm-gallery.jdgm-gallery .jdgm-gallery__thumbnail-link:nth-child(8) .jdgm-gallery__thumbnail-wrapper.jdgm-gallery__thumbnail-wrapper:before{content:"See more"}}.jdgm-rev__thumb-btn{color:#2e475e}.jdgm-rev__thumb-btn:hover{opacity:0.8}.jdgm-rev__thumb-btn:not([disabled]):hover,.jdgm-rev__thumb-btn:hover,.jdgm-rev__thumb-btn:active,.jdgm-rev__thumb-btn:visited{color:#2e475e}.jdgm-preview-badge .jdgm-star.jdgm-star{color:#2e475e}.jdgm-prev-badge[data-average-rating='0.00']{display:none !important}.jdgm-widget.jdgm-all-reviews-widget,.jdgm-widget .jdgm-rev-widg{border:none;padding:0}.jdgm-author-fullname{display:none !important}.jdgm-author-all-initials{display:none !important}.jdgm-rev-widg__title{visibility:hidden}.jdgm-rev-widg__summary-text{visibility:hidden}.jdgm-prev-badge__text{visibility:hidden}.jdgm-rev__prod-link-prefix:before{content:'about'}.jdgm-rev__variant-label:before{content:'Variant: '}.jdgm-rev__out-of-store-text:before{content:'(out of store)'}@media only screen and (min-width: 768px){.jdgm-rev__pics .jdgm-rev_all-rev-page-picture-separator,.jdgm-rev__pics .jdgm-rev__product-picture{display:none}}@media only screen and (max-width: 768px){.jdgm-rev__pics .jdgm-rev_all-rev-page-picture-separator,.jdgm-rev__pics .jdgm-rev__product-picture{display:none}}.jdgm-preview-badge[data-template="collection"]{display:none !important}.jdgm-preview-badge[data-template="index"]{display:none !important}.jdgm-verified-count-badget[data-from-snippet="true"]{display:none !important}.jdgm-carousel-wrapper[data-from-snippet="true"]{display:none !important}.jdgm-all-reviews-text[data-from-snippet="true"]{display:none !important}.jdgm-medals-section[data-from-snippet="true"]{display:none !important}.jdgm-ugc-media-wrapper[data-from-snippet="true"]{display:none !important}.jdgm-rev__transparency-badge[data-badge-type="review_collected_via_store_invitation"]{display:none !important}.jdgm-rev__transparency-badge[data-badge-type="review_collected_from_another_provider"]{display:none !important}.jdgm-rev__transparency-badge[data-badge-type="review_collected_from_store_visitor"]{display:none !important}.jdgm-rev__transparency-badge[data-badge-type="review_earned_for_future_purchase"]{display:none !important}.jdgm-review-snippet-widget{--jdgm-snippet-card-color: #fff;--jdgm-snippet-text-color: #000;--jdgm-snippet-lighter-text-color: #7B7B7B;--jdgm-snippet-star-color: #2e475e;--jdgm-snippet-border-radius: 8px;--jdgm-snippet-arrows-bg-color: #fff;--jdgm-snippet-arrows-color: #000}.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__cards-container .jdgm-rev-snippet-card{border-radius:8px;background:#fff}.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__cards-container .jdgm-rev-snippet-card__rev-rating .jdgm-star{color:#2e475e}.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__prev-btn,.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__next-btn{border-radius:50%;background:#fff}.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__prev-btn>svg,.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__next-btn>svg{fill:#000}.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jm-mfp-content,.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev__icon,.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev__pic-img,.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev__reply{border-radius:8px}.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev[data-verified-buyer="true"] .jdgm-full-rev__icon::after{border-radius:8px}.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev .jdgm-rev__buyer-badge{border-radius:calc( 8px / 2 )}.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev .jdgm-full-rev__replier::before{content:' Luke&#39;s Lobster'}.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev .jdgm-full-rev__product-button{border-radius:calc( 8px * 6 )}
2961</style> <style class='jdgm-settings-style'></style>
2962
2963  
2964  
2965  
2966  <style class='jdgm-miracle-styles'>
2967  @-webkit-keyframes jdgm-spin{0%{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);-ms-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes jdgm-spin{0%{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);-ms-transform:rotate(359deg);transform:rotate(359deg)}}@font-face{font-family:'JudgemeStar';src:url("data:application/x-font-woff;charset=utf-8;base64,d09GRgABAAAAAAScAA0AAAAABrAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAEgAAAABoAAAAcbyQ+3kdERUYAAARgAAAAHgAAACAAMwAGT1MvMgAAAZgAAABGAAAAVi+vS9xjbWFwAAAB8AAAAEAAAAFKwBMjvmdhc3AAAARYAAAACAAAAAj//wADZ2x5ZgAAAkAAAAEJAAABdH33LXtoZWFkAAABMAAAAC0AAAA2BroQKWhoZWEAAAFgAAAAHAAAACQD5QHQaG10eAAAAeAAAAAPAAAAFAYAAABsb2NhAAACMAAAAA4AAAAOAO4AeG1heHAAAAF8AAAAHAAAACAASgAvbmFtZQAAA0wAAADeAAABkorWfVZwb3N0AAAELAAAACkAAABEp3ubLXgBY2BkYADhPPP4OfH8Nl8ZuJkYQODS2fRrCPr/aSYGxq1ALgcDWBoAO60LkwAAAHgBY2BkYGDc+v80gx4TAwgASaAICmABAFB+Arl4AWNgZGBgYGPQYWBiAAIwyQgWc2AAAwAHVQB6eAFjYGRiYJzAwMrAwejDmMbAwOAOpb8ySDK0MDAwMbByMsCBAAMCBKS5pjA4PGB4wMR44P8BBj3GrQymQGFGkBwAjtgK
2967/gAAeAFjYoAAEA1jAwAAZAAHAHgB3crBCcAwDEPRZydkih567CDdf4ZskmLwFBV8xBfCaC4BXkOUmx4sU0h2ngNb9V0vQCxaRKIAevT7fGWuBrEAAAAAAAAAAAA0AHgAugAAeAF9z79Kw1AUx/FzTm7un6QmJtwmQ5Bg1abgEGr/BAqlU6Gju+Cgg1MkQ/sA7Vj7BOnmO/gUvo2Lo14NqIO6/IazfD8HEODtmQCfoANwNsyp2/GJt3WKQrd1NLiYYWx2PBqOsmJMEOznPOTzfSCrhAtbbLdmeFLJV9eKd63WLrZcIcuaEVdssWCKM6pLCfTVOYbz/0pNSMSZKLIZpvh78sAUH6PlMrreTCabP9r+Z/puPZ2ur/RqpQHgh+MIegCnXeM4MRAPjYN//5tj4ZtTjkFqEdmeMShlEJ7tVAly2TAkx6R68Fl4E/aVvn8JqHFQ4JS1434gXKcuL31dDhzs3YbsEOAd/IU88gAAAHgBfY4xTgMxEEVfkk0AgRCioKFxQYd2ZRtpixxgRU2RfhU5q5VWseQ4JdfgAJyBlmNwAM7ABRhZQ0ORwp7nr+eZAa54YwYg9zm3ynPOeFRe8MCrciXOh/KSS76UV5L/iDmrLiS5AeU519wrL3jmSbkS5115yR2fyivJv9kx0ZMZ2RLZw27q87iNQi8EBo5FSPIMw3HqBboi5lKTGAGDp8FKXWP+t9TU01Lj5His1Ba6uM9dTEMwvrFmbf5GC/q2drW3ruXUhhsCiQOjznFlCzYhHUZp4xp76vsvQh89CQAAeAFjYGJABowM6IANLMrEyMTIzMjCXpyRWJBqZshWXJJYBKOMAFHFBucAAAAAAAAB//8AAngBY2BkYGDgA2IJBhBgAvKZGViBJAuYxwAABJsAOgAAeAFjYGBgZACCk535hiD60tn0azAaAEqpB6wAAA==") format("woff");font-weight:normal;font-style:normal}.jdgm-star{font-family:'JudgemeStar';display:inline !important;text-decoration:none !important;padding:0 4px 0 0 !important;margin:0 !important;font-weight:bold;opacity:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.jdgm-star:hover{opacity:1}.jdgm-star:last-of-type{padding:0 !important}.jdgm-star.jdgm--on:before{content:"\e000"}.jdgm-star.jdgm--off:before{content:"\e001"}.jdgm-star.jdgm--half:before{content:"\e002"}.jdgm-widget *{margin:0;line-height:1.4;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-overflow-scrolling:touch}.jdgm-hidden{display:none !important;visibility:hidden !important}.jdgm-temp-hidden{display:none}.jdgm-spinner{width:40px;height:40px;margin:auto;border-radius:50%;border-top:2px solid #eee;border-right:2px solid #eee;border-bottom:2px solid #eee;border-left:2px solid #ccc;-webkit-animation:jdgm-spin 0.8s infinite linear;animation:jdgm-spin 0.8s infinite linear}.jdgm-prev-badge{display:block !important}
2968
2969</style>
2970
2971
2972  
2973  
2974   
2975
2976
2977
2978  
2979    
2980    
2981    
2982      
2982<script id="judgeme_widget_carousel_js" data-cfasync="false" type="text/javascript" async src="https://cdn.shopify.com/extensions/01a0cdf8-b2d2-7ccd-a251-5cf8c66ad2ca/judgeme-762/assets/widget_v3_theme_carousel.js"></script>
2982
2983    
2984  
2985    
2986    
2987    
2988      <link id="judgeme_widget_carousel_css" rel="stylesheet" type="text/css" media="nope!" onload="this.media='all'" href="https://cdn.shopify.com/extensions/01a0cdf8-b2d2-7ccd-a251-5cf8c66ad2ca/judgeme-762/assets/widget_v3_theme_carousel.css">
2989    
2990  
2991
2992
2993<script data-cfasync='false' class='jdgm-script'>
2994!function(e){window.jdgm=window.jdgm||{};
2995/* INF-1976 */
2996var _jdgmBlocked=function(){var raw=(window.jdgmSettings||{}).hostname_allowlist;var list=(raw==null?"":""+raw).split(/[\s,]+/).map(function(h){return h.trim().toLowerCase().replace(/\.$/,"");}).filter(function(h){return h;});if(!list.length)return false;var host=(e.location.hostname||"").toLowerCase().replace(/\.$/,"");if(/(^|\.)shopifypreview\.com$/.test(host))return false;var bare=host.replace(/^www\./,"");for(var i=0;i<list.length;i++){var en=list[i];if(en.indexOf("*.")===0){var b=en.slice(2);if(host===b||host.slice(-(b.length+1))==="."+b)return false;}else if(bare===en.replace(/^www\./,""))return false;}return true;}();
2997if(_jdgmBlocked){jdgm._loaderExecuted=true;jdgm._blocked=true;var _jdgmS=e.createElement("style");_jdgmS.textContent='[class^="jdgm-"],[class*=" jdgm-"]{display:none !important}';(e.head||e.documentElement).appendChild(_jdgmS);return;}
2998jdgm.CDN_HOST="https://cdnwidget.judge.me/",jdgm.CDN_HOST_ALT="https://cdn2.judge.me/cdn/widget_frontend/",jdgm.API_HOST="https://api.judge.me/",jdgm.CDN_BASE_URL="https://cdn.shopify.com/extensions/01a0cdf8-b2d2-7ccd-a251-5cf8c66ad2ca/judgeme-762/assets/",jdgm.CDN_API_HOST="https://cdn.judge.me/",
2999jdgm.docReady=function(d){(e.attachEvent?"complete"===e.readyState:"loading"!==e.readyState)?
3000setTimeout(d,0):e.addEventListener("DOMContentLoaded",d)},jdgm.loadCSS=function(d,t,o,a){
3001!o&&jdgm.loadCSS.requestedUrls.indexOf(d)>=0||(jdgm.loadCSS.requestedUrls.push(d),
3002(a=e.createElement("link")).rel="stylesheet",a.class="jdgm-stylesheet",a.media="nope!",
3003a.href=d,a.onload=function(){this.media="all",t&&setTimeout(t)},e.body.appendChild(a))},
3004jdgm.loadCSS.requestedUrls=[],jdgm.loadJS=function(e,d){var t=new XMLHttpRequest;
3005t.onreadystatechange=function(){4===t.readyState&&t.status>=200&&t.status<300&&(Function(t.response)(),d&&d(t.response))},
3006t.open("GET",e),t.onerror=function(){if(e.indexOf(jdgm.CDN_HOST)===0&&jdgm.CDN_HOST_ALT!==jdgm.CDN_HOST){var f=e.replace(jdgm.CDN_HOST,jdgm.CDN_HOST_ALT);jdgm.loadJS(f,d)}},t.send()},jdgm.docReady((function(){(window.jdgmLoadCSS||e.querySelectorAll(
3007".jdgm-widget, .jdgm-all-reviews-page").length>0)&&(jdgmSettings.widget_load_with_code_splitting?
3008parseFloat(jdgmSettings.widget_version)>=3?jdgm.loadCSS(jdgm.CDN_BASE_URL+"widget_v3_base.css"):
3009jdgm.loadCSS(jdgm.CDN_BASE_URL+"widget_base.css"):jdgm.loadCSS(jdgm.CDN_BASE_URL+"shopify_v2.css")
3010)}))}(document);
3011</script>
3011
3012<noscript><link rel="stylesheet" type="text/css" media="all" href="https://cdn.shopify.com/extensions/01a0cdf8-b2d2-7ccd-a251-5cf8c66ad2ca/judgeme-762/assets/shopify_v2.css"></noscript>
3013
3014<!-- BEGIN app snippet: theme_fix_tags -->
3014<script>
3015  (function() {
3016    var jdgmThemeFixes = null;
3017    if (!jdgmThemeFixes) return;
3018
3019    // "All themes" fix: CSS and JS applied on every theme. CSS is injected
3020    // before the per-theme fix so the theme-specific CSS wins the cascade.
3021    // HTML is never applied globally (too risky).
3022    var allThemesFix = jdgmThemeFixes['all'];
3023    if (allThemesFix && allThemesFix.css) {
3024      var allStyleTag = document.createElement('style');
3025      allStyleTag.classList.add('jdgm-theme-fix-style-all');
3026      allStyleTag.innerHTML = allThemesFix.css;
3027      document.head.append(allStyleTag);
3028    };
3029
3030    if (allThemesFix && allThemesFix.js) {
3031      var allScriptTag = document.createElement('script');
3032      allScriptTag.classList.add('jdgm-theme-fix-script-all');
3033      allScriptTag.innerHTML = allThemesFix.js;
3034      document.head.append(allScriptTag);
3035    };
3036
3037    var thisThemeFix = jdgmThemeFixes[Shopify.theme.id];
3038    if (!thisThemeFix) return;
3039
3040    if (thisThemeFix.html) {
3041      document.addEventListener("DOMContentLoaded", function() {
3042        var htmlDiv = document.createElement('div');
3043        htmlDiv.classList.add('jdgm-theme-fix-html');
3044        htmlDiv.innerHTML = thisThemeFix.html;
3045        document.body.append(htmlDiv);
3046      });
3047    };
3048
3049    if (thisThemeFix.css) {
3050      var styleTag = document.createElement('style');
3051      styleTag.classList.add('jdgm-theme-fix-style');
3052      styleTag.innerHTML = thisThemeFix.css;
3053      document.head.append(styleTag);
3054    };
3055
3056    if (thisThemeFix.js) {
3057      var scriptTag = document.createElement('script');
3058      scriptTag.classList.add('jdgm-theme-fix-script');
3059      scriptTag.innerHTML = thisThemeFix.js;
3060      document.head.append(scriptTag);
3061    };
3062  })();
3063</script>
3063
3064<!-- END app snippet -->
3065<!-- End of Judge.me Core -->
3066
3067
3068
3069<!-- END app block -->
3069<script src="https://cdn.shopify.com/extensions/01a0d961-e9e5-711e-86f8-bda023d4c9bb/wrapped-2509/assets/wrapped-app-embed.js" type="text/javascript" defer="defer"></script>
vendor: 1 bytes, line 3069
3069
3070<script src="https://cdn.shopify.com/extensions/01a0cdf8-b2d2-7ccd-a251-5cf8c66ad2ca/judgeme-762/assets/loader.js" type="text/javascript" defer="defer"></script>
3070
3071<meta property="og:image" content="https://cdn.shopify.com/s/files/1/0363/8299/8667/files/6rDogBWQLqt2EECDML69_logo_vector_blue_2_Copy.png?height=628&pad_color=ffffff&v=1618496852&width=1200" />
3072<meta property="og:image:secure_url" content="https://cdn.shopify.com/s/files/1/0363/8299/8667/files/6rDogBWQLqt2EECDML69_logo_vector_blue_2_Copy.png?height=628&pad_color=ffffff&v=1618496852&width=1200" />
3073<meta property="og:image:width" content="1200" />
3074<meta property="og:image:height" content="628" />
3075<link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
3076<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: 36382998667,url: window.location.href,navigation_start,duration: currentMs - navigation_start,session_token,page_type: "index"};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 3076
3076
3077<script>
3078  window.__TREKKIE_SHIM_QUEUE = window.__TREKKIE_SHIM_QUEUE || [];
3079</script>
vendor: 1 bytes, line 3079
3079
3080<script>
3081  window.ShopifyAnalytics = window.ShopifyAnalytics || {};
3082  window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {};
3083  window.ShopifyAnalytics.meta.currency = 'USD';
3084  var meta = {"page":{"pageType":"home","requestId":"618fb17b-45a8-45fb-8735-f4c48db608b7-1790360832"}};
3085  for (var attr in meta) {
3086    window.ShopifyAnalytics.meta[attr] = meta[attr];
3087  }
3088</script>
vendor: 1 bytes, line 3088
3088
3089<script class="analytics">
3090  (function () {
3091    var customDocumentWrite = function(content) {
3092      var jquery = null;
3093
3094      if (window.jQuery) {
3095        jquery = window.jQuery;
3096      } else if (window.Checkout && window.Checkout.$) {
3097        jquery = window.Checkout.$;
3098      }
3099
3100      if (jquery) {
3101        jquery('body').append(content);
3102      }
3103    };
3104
3105    var hasLoggedConversion = function(token) {
3106      if (token) {
3107        return document.cookie.indexOf('loggedConversion=' + token) !== -1;
3108      }
3109      return false;
3110    }
3111
3112    var setCookieIfConversion = function(token) {
3113      if (token) {
3114        var twoMonthsFromNow = new Date(Date.now());
3115        twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2);
3116
3117        document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow;
3118      }
3119    }
3120
3121    var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || [];
3122    window.ShopifyAnalytics.lib.trekkie = window.trekkie;
3123    if (trekkie.integrations) {
3124      return;
3125    }
3126    trekkie.methods = [
3127      'identify',
3128      'page',
3129      'ready',
3130      'track',
3131      'trackForm',
3132      'trackLink'
3133    ];
3134    trekkie.factory = function(method) {
3135      return function() {
3136        var args = Array.prototype.slice.call(arguments);
3137        args.unshift(method);
3138        trekkie.push(args);
3139        if (method == 'track' || method == 'page') {
3140          var pageUrl;
3141          try {
3142            pageUrl = window.location.href;
3143          } catch (e) {}
3144          var pageReferrer;
3145          try {
3146            pageReferrer = document.referrer;
3147          } catch (e) {}
3148          try {
3149            if (window.__TREKKIE_SHIM_QUEUE == null) {
3150              window.__TREKKIE_SHIM_QUEUE = [];
3151            }
3152            window.__TREKKIE_SHIM_QUEUE.push({
3153              from: 'trekkie-stub',
3154              method: method,
3155              args: args.slice(1),
3156              pageContext: {
3157                url: pageUrl,
3158                referrer: pageReferrer
3159              }
3160            });
3161          } catch (e) {
3162            // no-op
3163          }
3164        }
3165        return trekkie;
3166      };
3167    };
3168    for (var i = 0; i < trekkie.methods.length; i++) {
3169      var key = trekkie.methods[i];
3170      trekkie[key] = trekkie.factory(key);
3171    }
3172    trekkie.load = function(config) {
3173      trekkie.config = config || {};
3174      trekkie.config.initialDocumentCookie = document.cookie;
3175      var first = document.getElementsByTagName('script')[0];
3176var script = document.createElement('script');
3177script.type = 'text/javascript';
3178script.onerror = function(e) {
3179  var scriptFallback = document.createElement('script');
3180  scriptFallback.type = 'text/javascript';
3181  scriptFallback.onerror = function(error) {
3182          var Monorail = {
3183      produce: function produce(monorailDomain, schemaId, payload) {
3184        var currentMs = new Date().getTime();
3185        var event = {
3186          schema_id: schemaId,
3187          payload: payload,
3188          metadata: {
3189            event_created_at_ms: currentMs,
3190            event_sent_at_ms: currentMs
3191          }
3192        };
3193        return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event));
3194      },
3195      sendRequest: function sendRequest(endpointUrl, payload) {
3196        // Try the sendBeacon API
3197        if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) {
3198          var blobData = new window.Blob([payload], {
3199            type: 'text/plain'
3200          });
3201
3202          if (window.navigator.sendBeacon(endpointUrl, blobData)) {
3203            return true;
3204          } // sendBeacon was not successful
3205
3206        } // XHR beacon
3207
3208        var xhr = new XMLHttpRequest();
3209
3210        try {
3211          xhr.open('POST', endpointUrl);
3212          xhr.setRequestHeader('Content-Type', 'text/plain');
3213          xhr.send(payload);
3214        } catch (e) {
3215          console.log(e);
3216        }
3217
3218        return false;
3219      },
3220      isIos12: function isIos12() {
3221        return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1;
3222      }
3223    };
3224    Monorail.produce('monorail-edge.shopifysvc.com',
3225      'trekkie_storefront_load_errors/1.1',
3226      {shop_id: 36382998667,
3227      theme_id: 120456675467,
3228      app_name: "storefront",
3229      context_url: window.location.href,
3230      source_url: "//lukeslobster.com/cdn/s/trekkie.storefront.f1ba865b3fecd812ad617f74ac079261075e9edb.min.js"});
3231
3232  };
3233  scriptFallback.async = true;
3234  scriptFallback.src = '//lukeslobster.com/cdn/s/trekkie.storefront.f1ba865b3fecd812ad617f74ac079261075e9edb.min.js';
3235  first.parentNode.insertBefore(scriptFallback, first);
3236};
3237script.async = true;
3238script.src = '//lukeslobster.com/cdn/s/trekkie.storefront.f1ba865b3fecd812ad617f74ac079261075e9edb.min.js';
3239first.parentNode.insertBefore(script, first);
3240
3241    };
3242    trekkie.load(
3243      {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":36382998667,"isMerchantRequest":null,"themeId":120456675467,"themeCityHash":"12752617770234376116","contentLanguage":"en","currency":"USD","eventMetadataId":"4196cf0d-a00e-40b3-aede-9293cdf4c42c"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain","enabledBetaFlags":["764d78cb","8450a54b","7ee89bf1"]},"Session Attribution":{},"S2S":{"facebookCapiEnabled":true,"source":"trekkie-storefront-renderer","apiClientId":580111}}
3244    );
3245
3246    var loaded = false;
3247    trekkie.ready(function() {
3248      if (loaded) return;
3249      loaded = true;
3250
3251      window.ShopifyAnalytics.lib = window.trekkie;
3252
3253      var originalDocumentWrite = document.write;
3254      document.write = customDocumentWrite;
3255      try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {};
3256      document.write = originalDocumentWrite;
3257
3258      var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/)
3259      var token = match? match[1]: undefined;
3260      if (!hasLoggedConversion(token)) {
3261        setCookieIfConversion(token);
3262        
3263      }
3264    });
3265
3266    window.ShopifyAnalytics.lib.page(null,{"pageType":"home","requestId":"618fb17b-45a8-45fb-8735-f4c48db608b7-1790360832","shopifyEmitted":true});
3267
3268    var eventsListenerScript = document.createElement('script');
3269    eventsListenerScript.async = true;
3270    eventsListenerScript.src = "//lukeslobster.com/cdn/shopifycloud/storefront/assets/shop_events_listener-4e26a9ce.js";
3271    document.getElementsByTagName('head')[0].appendChild(eventsListenerScript);
3272})();</script>
3272
3273  
3273<script>
3274  if (!window.ga || (window.ga && typeof window.ga !== 'function')) {
3275    window.ga = function ga() {
3276      (window.ga.q = window.ga.q || []).push(arguments);
3277      if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') {
3278        window.Shopify.analytics.publish("ga_stub_called", {}, {sendTo: "google_osp_migration"});
3279      }
3280      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.");
3281    };
3282    if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') {
3283      window.Shopify.analytics.publish("ga_stub_initialized", {}, {sendTo: "google_osp_migration"});
3284    }
3285  }
3286</script>
vendor: 1 bytes, line 3286
3286
3287<script
3288  defer
3289  src="https://lukeslobster.com/cdn/shopifycloud/perf-kit/shopify-perf-kit-3.9.4.min.js"
3290  data-application="storefront-renderer"
3291  data-shop-id="36382998667"
3292  data-render-region="gcp-us-central1"
3293  data-page-type="index"
3294  data-theme-instance-id="120456675467"
3295  data-theme-name="Debut"
3296  data-theme-version="16.5.0"
3297  data-monorail-region="shop_domain"
3298  data-resource-timing-sampling-rate="10"
3299  data-shs="true"
3300  data-shs-beacon="true"
3301  data-shs-export-with-fetch="true"
3302  data-shs-logs-sample-rate="1"
3303  data-shs-beacon-endpoint="https://lukeslobster.com/api/collect"
3304></script>
3304
3305<meta name="shopify-y" content="00000000-0000-0000-5000-000000000000" data-expiration="1821919635000"><meta name="shopify-s" content="00000000-0000-0000-5000-000000000000" data-expiration="1790363835000"><meta name="new-cookie-storage-activated" content="t">
3306</head>
3307
3308
3309<body class="template-index template-">
3310	<a class="in-page-link visually-hidden skip-link" href="#MainContent">Skip to content</a>
3311
3312	<div class="banner-header-wrapper">
3313		<div id="shopify-section-site-banner" class="shopify-section site-banners-container">
3314
3315<script>
3316	$("body").addClass("page-banner-active");
3317	console.log("Banner");
3318</script>
3318
3319
3320<div class="site-banners js-site-banners" role="banner">
3321
3322	
3323
3324		<div class="site-banner">
3325
3326			
3327
3328				<a href="/collections/all" class="site-banner__message">🦞FREE OVERNIGHT SHIPPING NATIONWIDE ON ALL ONLINE MARKET ORDERS🦞</a>
3329
3330			
3331
3332		</div>
3333
3334	
3335</div>
3336
3337
3338
3339
3340
3341</div>
3342
3343		<div id="shopify-section-header" class="shopify-section"><header class="site-header">
3344
3345	<div class="site-header-inner">
3346
3347		<div class="logo-container">
3348			<a href="https://www.lukeslobster.com" class="logo">
3349				<img src="//lukeslobster.com/cdn/shop/files/6rDogBWQLqt2EECDML69_logo_vector_blue_2_Copy_300x300.png?v=1618496852" alt=" Luke&#39;s Lobster">
3350			</a>
3351		</div>
3352
3353		<div class="header-nav js-header-nav">
3354			<nav class="main-nav">
3355				<ul class="main-menu menu">
3356					
3357
3358
3359
3360
3361
3362    
3363
3364        <li class="menu-item menu-item-has-children">
3365
3366            <a href="/pages/shack-locations">Shacks</a>
3367
3368            <button class="menu-arrow js-menu-arrow" aria-expanded="false">
3369                <img src="//lukeslobster.com/cdn/shop/t/22/assets/icon-arrow--blue.svg?v=112125002108557019051629734443" alt="Menu Toggle">
3370            </button>
3371
3372            
3373
3374                <ul class="sub-menu">
3375
3376                    
3377
3378                        <li class="menu-item">
3379                            <a href="https://order.online/business/LukesLobster-3570" class="menu-item">ORDER LOCAL PICKUP &amp; DELIVERY</a>
3380                        </li>
3381
3382                    
3383
3384                        <li class="menu-item">
3385                            <a href="/pages/shack-locations" class="menu-item">Locations</a>
3386                        </li>
3387
3388                    
3389
3390                        <li class="menu-item">
3391                            <a href="/pages/shack-catering" class="menu-item">Shack Catering</a>
3392                        </li>
3393
3394                    
3395
3396                        <li class="menu-item">
3397                            <a href="/pages/gift-cards" class="menu-item">Order Gift Cards</a>
3398                        </li>
3399
3400                    
3401
3402                </ul>
3403
3404            
3405
3406        </li>
3407        
3408    
3409
3410
3411
3412
3413
3414    
3415
3416        <li class="menu-item menu-item-has-children">
3417
3418            <a href="/pages/shop">Shop</a>
3419
3420            <button class="menu-arrow js-menu-arrow" aria-expanded="false">
3421                <img src="//lukeslobster.com/cdn/shop/t/22/assets/icon-arrow--blue.svg?v=112125002108557019051629734443" alt="Menu Toggle">
3422            </button>
3423
3424            
3425
3426                <ul class="sub-menu">
3427
3428                    
3429
3430                        <li class="menu-item">
3431                            <a href="/pages/all-products" class="menu-item">All Seafood</a>
3432                        </li>
3433
3434                    
3435
3436                        <li class="menu-item">
3437                            <a href="/collections/grocery" class="menu-item">Grocery</a>
3438                        </li>
3439
3440                    
3441
3442                        <li class="menu-item">
3443                            <a href="/collections/lobster-roll-kits" class="menu-item">Lobster Roll Kits</a>
3444                        </li>
3445
3446                    
3447
3448                        <li class="menu-item">
3449                            <a href="/collections/lobster-tails" class="menu-item">Lobster Tails &amp; Meat</a>
3450                        </li>
3451
3452                    
3453
3454                        <li class="menu-item">
3455                            <a href="/products/livelobster" class="menu-item">Live Lobster</a>
3456                        </li>
3457
3458                    
3459
3460                        <li class="menu-item">
3461                            <a href="/pages/frequently-asked-questions" class="menu-item">FAQ</a>
3462                        </li>
3463
3464                    
3465
3466                </ul>
3467
3468            
3469
3470        </li>
3471        
3472    
3473
3474
3475
3476
3477
3478    
3479
3480        <li class="menu-item menu-item-has-children">
3481
3482            <a href="/pages/lukes-grocery-products">Grocery</a>
3483
3484            <button class="menu-arrow js-menu-arrow" aria-expanded="false">
3485                <img src="//lukeslobster.com/cdn/shop/t/22/assets/icon-arrow--blue.svg?v=112125002108557019051629734443" alt="Menu Toggle">
3486            </button>
3487
3488            
3489
3490                <ul class="sub-menu">
3491
3492                    
3493
3494                        <li class="menu-item">
3495                            <a href="/pages/lukes-grocery-products" class="menu-item">Our Products</a>
3496                        </li>
3497
3498                    
3499
3500                        <li class="menu-item">
3501                            <a href="/pages/where-to-find-us" class="menu-item">Where to Find Us</a>
3502                        </li>
3503
3504                    
3505
3506                </ul>
3507
3508            
3509
3510        </li>
3511        
3512    
3513
3514
3515				</ul>
3516
3517				<ul class="secondary-menu menu">
3518					
3519
3520
3521
3522
3523
3524    
3525
3526        <li class="menu-item menu-item-has-children">
3527
3528            <a href="/pages/jointhecrew">Careers</a>
3529
3530            <button class="menu-arrow js-menu-arrow" aria-expanded="false">
3531                <img src="//lukeslobster.com/cdn/shop/t/22/assets/icon-arrow--blue.svg?v=112125002108557019051629734443" alt="Menu Toggle">
3532            </button>
3533
3534            
3535
3536                <ul class="sub-menu">
3537
3538                    
3539
3540                        <li class="menu-item">
3541                            <a href="/pages/lifeatlukes" class="menu-item">Life at Luke&#39;s</a>
3542                        </li>
3543
3544                    
3545
3546                        <li class="menu-item">
3547                            <a href="/pages/growth-at-lukes" class="menu-item">Chart Your Course</a>
3548                        </li>
3549
3550                    
3551
3552                        <li class="menu-item">
3553                            <a href="/pages/copy-of-careers-julia-draft" class="menu-item">Crew Perks</a>
3554                        </li>
3555
3556                    
3557
3558                </ul>
3559
3560            
3561
3562        </li>
3563        
3564    
3565
3566
3567
3568
3569
3570    
3571
3572        <li class="menu-item">
3573
3574            <a href="https://shop.lukeslobster.com/blogs/recipes" class="menu-item">
3575                Recipes
3576            </a>
3577        </li>
3578
3579    
3580
3581
3582
3583
3584
3585    
3586
3587        <li class="menu-item menu-item-has-children">
3588
3589            <a href="/pages/about-us">About</a>
3590
3591            <button class="menu-arrow js-menu-arrow" aria-expanded="false">
3592                <img src="//lukeslobster.com/cdn/shop/t/22/assets/icon-arrow--blue.svg?v=112125002108557019051629734443" alt="Menu Toggle">
3593            </button>
3594
3595            
3596
3597                <ul class="sub-menu">
3598
3599                    
3600
3601                        <li class="menu-item">
3602                            <a href="/pages/mission" class="menu-item">Mission</a>
3603                        </li>
3604
3605                    
3606
3607                        <li class="menu-item">
3608                            <a href="/pages/taste" class="menu-item">Taste</a>
3609                        </li>
3610
3611                    
3612
3613                        <li class="menu-item">
3614                            <a href="/pages/ourcommunity" class="menu-item">Community</a>
3615                        </li>
3616
3617                    
3618
3619                        <li class="menu-item">
3620                            <a href="/pages/ecosystem" class="menu-item">Ecosystem</a>
3621                        </li>
3622
3623                    
3624
3625                        <li class="menu-item">
3626                            <a href="/pages/meet-the-crew" class="menu-item">Meet the Crew</a>
3627                        </li>
3628
3629                    
3630
3631                </ul>
3632
3633            
3634
3635        </li>
3636        
3637    
3638
3639
3640				</ul>
3641			</nav>
3642		</div>
3643
3644		<div class="search js-search">
3645
3646			<form class="search-form" action="/search" method="get" role="search">
3647
3648				<label for="SearchInput">Search</label>
3649
3650				<!-- <input
3651					id="searchInput"
3652					type="text"
3653					name="q"
3654					placeholder="Enter search terms..."
3655					role="combobox"
3656					aria-autocomplete="list"
3657					aria-owns="predictive-search-results"
3658					aria-expanded="false"
3659					aria-label="Search"
3660					aria-haspopup="listbox"
3661					class="search-input"
3662					data-predictive-search-drawer-input
3663				/> -->
3664				<input
3665					id="searchInput"
3666					type="text"
3667					name="q"
3668					placeholder="Enter search terms..."
3669					role="combobox"
3670					aria-autocomplete="list"
3671					aria-expanded="false"
3672					aria-label="Search"
3673					aria-haspopup="listbox"
3674					class="search-input"
3675					data-predictive-search-drawer-input
3676				/>
3677				<input type="hidden" name="options[prefix]" value="last" aria-hidden="true" />
3678
3679				<button class="button button--blue" type="submit" data-search-form-submit>Search</button>
3680			</form>
3681
3682		</div>
3683
3684		<div class="header-actions">
3685
3686			<button class="search-icon js-toggle-search" type="button" aria-label="Toggle Search"><img src="//lukeslobster.com/cdn/shop/t/22/assets/icon-search.svg?v=141449128602758212791629734452" alt="Search"></button>
3687
3688			
3689          
3690        <a href="https://lukeslobster.com/pages/rewards" class="header-actions__account">
3691            <img src="//lukeslobster.com/cdn/shop/t/22/assets/icon-account.svg?v=41369914107869226951629734442" alt="Create Account">
3692        </a>
3693    
3694
3695
3696
3697			<a href="/cart" class="header-actions__cart">
3698				<img src="//lukeslobster.com/cdn/shop/t/22/assets/icon-cart.svg?v=172320051677446208381629734449" alt="Cart">
3699				<div id="CartCount" class="cart-count hide" data-cart-count-bubble>
3700					<span data-cart-count>0</span>
3701					<span class="icon__fallback-text medium-up--hide">items</span>
3702				</div>
3703			</a>
3704
3705			
3706				<button type="button" class="menu-button js-toggle-menu" aria-label="Menu" aria-expanded="false"></button>
3707				
3708			
3709		</div>
3710
3711	</div>
3712
3713</header>
3714
3715
3716<script type="application/ld+json">
3717{
3718	"@context": "http://schema.org",
3719	"@type": "Organization",
3720	"name": " Luke\u0026#39;s Lobster",
3721	
3722		"logo": "https:\/\/lukeslobster.com\/cdn\/shop\/files\/6rDogBWQLqt2EECDML69_logo_vector_blue_2_Copy_small.png?v=1618496852",
3723	
3724	"sameAs": [
3725		"https:\/\/twitter.com\/LukesLobster",
3726		"https:\/\/www.facebook.com\/LukesLobster\/",
3727		"https:\/\/www.pinterest.com\/lukeslobster\/",
3728		"https:\/\/www.instagram.com\/lukeslobster\/?hl=en",
3729		"",
3730		"",
3731		"https:\/\/www.youtube.com\/lukeslobster",
3732		""
3733	],
3734	"url": "https:\/\/lukeslobster.com"
3735}
3736</script>
3736
3737
3738
3739	
3740	
3740<script type="application/ld+json">
3741		{
3742			"@context": "http://schema.org",
3743			"@type": "WebSite",
3744			"name": " Luke\u0026#39;s Lobster",
3745			"potentialAction": {
3746				"@type": "SearchAction",
3747				"target": "https:\/\/lukeslobster.com\/search?q={search_term_string}",
3748				"query-input": "required name=search_term_string"
3749			},
3750			"url": "https:\/\/lukeslobster.com"
3751		}
3752	</script>
3752
3753
3754
3755
3756</div>
3757
3758	</div>
3759
3760
3761	<div class="page-container" id="PageContainer">
3762
3763		<main class="main-content js-focus-hidden" id="MainContent" role="main" tabindex="-1">
3764			    <div class="icartShopifyCartContent">
3765<div id="shopify-section-slider-home-masthead" class="shopify-section">
3766
3767
3768    <div class="visually-hidden">This is a slideshow. Use the Next and Previous buttons, dot indicators, or left and right arrow keys on your keyboard to navigate between slides.</div>
3769
3770	<section class="slider js-slick-slider" 
3771             role="region" 
3772             aria-roledescription="carousel" 
3773             aria-label="Homepage Slideshow" 
3774             data-transition-speed="8" >
3775
3776		
3777		
3778
3779            
3780
3781            
3782
3783                <div class="slide slide--has-image" 
3784                     role="group" 
3785                     aria-roledescription="slide" 
3786                     aria-label="Slide 1 of 4" 
3787                     style="background-image: url('//lukeslobster.com/cdn/shop/files/LukesMay-95_1_1400x1400_crop_center.jpg?v=1726750837');">
3788                    
3789                         
3790        <div class="slide__content has-overlay">
3791    
3792
3793     
3794        <h2>National Lobster Day: Sept 24th and 25th</h2>
3795    
3796
3797    
3798    
3799    
3800        <div class="button-container">
3801            
3802                <a href="/pages/national-lobster-day-2026" class="button">Learn how we're celebrating here!</a>
3803            
3804
3805            
3806        </div>
3807    
3808
3809</div>
3810
3811                </div>
3812    
3813            
3814
3815		
3816
3817            
3818
3819            
3820
3821                <div class="slide slide--has-image" 
3822                     role="group" 
3823                     aria-roledescription="slide" 
3824                     aria-label="Slide 2 of 4" 
3825                     style="background-image: url('//lukeslobster.com/cdn/shop/files/IMG_9002_1400x1400_crop_center.jpg?v=1781100997');">
3826                    
3827                        
3828        <div class="slide__content">
3829    
3830
3831     
3832        <h2>Now availabe at Costco!</h2>
3833    
3834
3835     
3836        <p><strong>Find our mini lobster cakes at Costco warehouses in the Northeast</strong></p>  
3837    
3838    
3839    
3840        <div class="button-container">
3841            
3842                <a href="https://lukeslobster.com/pages/mini-lobster-cakes" class="button">Learn More about our Mini Lobster Cakes!</a>
3843            
3844
3845            
3846        </div>
3847    
3848
3849</div>
3850
3851                </div>
3852    
3853            
3854
3855		
3856
3857            
3858
3859            
3860
3861                <div class="slide slide--has-image" 
3862                     role="group" 
3863                     aria-roledescription="slide" 
3864                     aria-label="Slide 3 of 4" 
3865                     style="background-image: url('//lukeslobster.com/cdn/shop/files/Chris_1400x1400_crop_center.jpg?v=1621560771');">
3866                    
3867                        
3868        <div class="slide__content">
3869    
3870
3871     
3872        <h2>We're a Certified B CORP</h2>
3873    
3874
3875    
3876    
3877    
3878        <div class="button-container">
3879            
3880                <a href="/pages/mission" class="button">Learn about our B Corp Certification</a>
3881            
3882
3883            
3884        </div>
3885    
3886
3887</div>
3888
3889                </div>
3890    
3891            
3892
3893		
3894
3895            
3896
3897            
3898
3899                <div class="slide slide--has-image" 
3900                     role="group" 
3901                     aria-roledescription="slide" 
3902                     aria-label="Slide 4 of 4" 
3903                     style="background-image: url('//lukeslobster.com/cdn/shop/files/C78CE71A-E70D-461E-833E-3BCE73EBE3D9_1_201_a_1400x1400_crop_center.jpg?v=1672945501');">
3904                    
3905                        
3906        <div class="slide__content">
3907    
3908
3909     
3910        <h2>The Lift All Boats Project</h2>
3911    
3912
3913    
3914    
3915    
3916        <div class="button-container">
3917            
3918                <a href="https://www.liftallboatsmaine.org/" class="button">Learn More about Lift All Boats</a>
3919            
3920
3921            
3922                <a href="https://www.islandinstitute.org/get-involved/lift-all-boats/" class="button"></a>
3923            
3924        </div>
3925    
3926
3927</div>
3928
3929                </div>
3930    
3931            
3932
3933		
3934
3935	</section>
3936
3937
3938
3939
3940</div>
3941<!-- BEGIN content_for_index --><div id="shopify-section-16185207233be722ae" class="shopify-section">
3942
3943
3944
3945    <section class="locations-slider">
3946
3947        
3948            <h2>Order Local Pick-up or Delivery</h2>
3949        
3950
3951        <div class="locations-slider-list js-locations-slider" data-transition-speed="4">
3952
3953            
3954
3955                
3956
3957                    
3958                    
3959                    
3960
3961                    <div class="locations-slider-item">
3962
3963                        <img src="//lukeslobster.com/cdn/shop/t/22/assets/lighthouse
3963-icon.svg?v=29893675152307780781629734473" alt="">
3964
3965                        <a href="/pages/portland-pier" class="locations-slider-item__link">Portland Pier</a>
3966
3967                    </div>
3968
3969                
3970
3971            
3972
3973                
3974
3975                    
3976                    
3977                    
3978
3979                    <div class="locations-slider-item">
3980
3981                        <img src="//lukeslobster.com/cdn/shop/t/22/assets/lighthouse-icon.svg?v=29893675152307780781629734473" alt="">
3982
3983                        <a href="/pages/back-bay" class="locations-slider-item__link">Back Bay</a>
3984
3985                    </div>
3986
3987                
3988
3989            
3990
3991                
3992
3993                    
3994                    
3995                    
3996
3997                    <div class="locations-slider-item">
3998
3999                        <img src="//lukeslobster.com/cdn/shop/t/22/assets/lighthouse-icon.svg?v=29893675152307780781629734473" alt="">
4000
4001                        <a href="/pages/downtown-crossing" class="locations-slider-item__link">Downtown Crossing</a>
4002
4003                    </div>
4004
4005                
4006
4007            
4008
4009                
4010
4011                    
4012                    
4013                    
4014
4015                    <div class="locations-slider-item">
4016
4017                        <img src="//lukeslobster.com/cdn/shop/t/22/assets/lighthouse-icon.svg?v=29893675152307780781629734473" alt="">
4018
4019                        <a href="/pages/upper-east-side" class="locations-slider-item__link">Upper East Side</a>
4020
4021                    </div>
4022
4023                
4024
4025            
4026
4027                
4028
4029                    
4030                    
4031                    
4032
4033                    <div class="locations-slider-item">
4034
4035                        <img src="//lukeslobster.com/cdn/shop/t/22/assets/lighthouse-icon.svg?v=29893675152307780781629734473" alt="">
4036
4037                        <a href="/pages/garment-district" class="locations-slider-item__link">Garment District</a>
4038
4039                    </div>
4040
4041                
4042
4043            
4044
4045                
4046
4047                    
4048                    
4049                    
4050
4051                    <div class="locations-slider-item">
4052
4053                        <img src="//lukeslobster.com/cdn/shop/t/22/assets/lighthouse-icon.svg?v=29893675152307780781629734473" alt="">
4054
4055                        <a href="/pages/union-square" class="locations-slider-item__link">Union Square</a>
4056
4057                    </div>
4058
4059                
4060
4061            
4062
4063                
4064
4065                    
4066                    
4067                    
4068
4069                    <div class="locations-slider-item">
4070
4071                        <img src="//lukeslobster.com/cdn/shop/t/22/assets/lighthouse-icon.svg?v=29893675152307780781629734473" alt="">
4072
4073                        <a href="/pages/fidi" class="locations-slider-item__link">FiDi</a>
4074
4075                    </div>
4076
4077                
4078
4079            
4080
4081                
4082
4083                    
4084                    
4085                    
4086
4087                    <div class="locations-slider-item">
4088
4089                        <img src="//lukeslobster.com/cdn/shop/t/22/assets/lighthouse-icon.svg?v=29893675152307780781629734473" alt="">
4090
4091                        <a href="/pages/brooklyn-bridge-park" class="locations-slider-item__link">Brooklyn Bridge Park</a>
4092
4093                    </div>
4094
4095                
4096
4097            
4098
4099                
4100
4101                    
4102                    
4103                    
4104
4105                    <div class="locations-slider-item">
4106
4107                        <img src="//lukeslobster.com/cdn/shop/t/22/assets/lighthouse-icon.svg?v=29893675152307780781629734473" alt="">
4108
4109                        <a href="/pages/rittenhouse" class="locations-slider-item__link">Rittenhouse</a>
4110
4111                    </div>
4112
4113                
4114
4115            
4116
4117                
4118
4119                    
4120                    
4121                    
4122
4123                    <div class="locations-slider-item">
4124
4125                        <img src="//lukeslobster.com/cdn/shop/t/22/assets/lighthouse-icon.svg?v=29893675152307780781629734473" alt="">
4126
4127                        <a href="/pages/penn-quarter" class="locations-slider-item__link">Penn Quarter</a>
4128
4129                    </div>
4130
4131                
4132
4133            
4134
4135                
4136
4137                    
4138                    
4139                    
4140
4141                    <div class="locations-slider-item">
4142
4143                        <img src="//lukeslobster.com/cdn/shop/t/22/assets/lighthouse
4143-icon.svg?v=29893675152307780781629734473" alt="">
4144
4145                        <a href="/pages/city-hall" class="locations-slider-item__link">Chicago City Hall</a>
4146
4147                    </div>
4148
4149                
4150
4151            
4152
4153                
4154
4155                    
4156                    
4157                    
4158
4159                    <div class="locations-slider-item">
4160
4161                        <img src="//lukeslobster.com/cdn/shop/t/22/assets/lighthouse-icon.svg?v=29893675152307780781629734473" alt="">
4162
4163                        <a href="/pages/brickell-city-centre" class="locations-slider-item__link">Brickell City Centre</a>
4164
4165                    </div>
4166
4167                
4168
4169            
4170
4171                
4172
4173                    
4174                    
4175                    
4176
4177                    <div class="locations-slider-item">
4178
4179                        <img src="//lukeslobster.com/cdn/shop/t/22/assets/lighthouse-icon.svg?v=29893675152307780781629734473" alt="">
4180
4181                        <a href="/pages/las-vegas-fashion-show-mall" class="locations-slider-item__link">Las Vegas</a>
4182
4183                    </div>
4184
4185                
4186
4187            
4188
4189                
4190
4191                    
4192                    
4193                    
4194
4195                    <div class="locations-slider-item">
4196
4197                        <img src="//lukeslobster.com/cdn/shop/t/22/assets/lighthouse-icon.svg?v=29893675152307780781629734473" alt="">
4198
4199                        <a href="/pages/soma" class="locations-slider-item__link">SoMa</a>
4200
4201                    </div>
4202
4203                
4204
4205            
4206
4207        </div>
4208
4209    </section>
4210
4211
4212
4213
4214
4215
4216<script>
4217    $(document).ready(function() {
4218        $('.locations-slider-list ').slick({
4219            slidesToShow: 3,
4220            arrows: true,
4221            dots: false,
4222            autoplay: false,
4223            autoplaySpeed: 2000,
4224            mobileFirst: true,
4225            responsive: [
4226            {
4227                breakpoint: 600,
4228                settings: {
4229                    slidesToShow: 4,
4230                }
4231            },
4232            {
4233                breakpoint: 800,
4234                settings: {
4235                    slidesToShow: 5,
4236                }
4237            }
4238            ]
4239        });
4240    });
4241
4242</script>
4242
4243</div><div id="shopify-section-162007140445508d20" class="shopify-section"><section class="cards-row">
4244
4245    
4246
4247        <div class="content-cards-row">
4248
4249            
4250
4251                <div class="card">
4252                    <a href="/pages/locations" class="card-link">
4253                        <div class="card-link__media">
4254                            <img src="//lukeslobster.com/cdn/shop/files/Shack_250x250_crop_center.gif?v=1621560666" alt="">
4255                        </div>
4256                        <span class="card-link__title">Visit Luke's Shacks</span>
4257                    </a>
4258                </div>
4259
4260            
4261
4262                <div class="card">
4263                    <a href="https://lukeslobster.com/pages/shop" class="card-link">
4264                        <div class="card-link__media">
4265                            <img src="//lukeslobster.com/cdn/shop/files/Untitled_Artwork_2_250x250_crop_center.gif?v=1621537296" alt="">
4266                        </div>
4267                        <span class="card-link__title">Ship Luke's Seafood Nationwide</span>
4268                    </a>
4269                </div>
4270
4271            
4272
4273                <div class="card">
4274                    <a href="https://lukeslobster.com/pages/lukes-grocery-products" class="card-link">
4275                        <div class="card-link__media">
4276                            <img src="//lukeslobster.com/cdn/shop/files/IMG_3032_250x250_crop_center.gif?v=1621428004" alt="">
4277                        </div>
4278                        <span class="card-link__title">Find Luke’s in Grocery Stores</span>
4279                    </a>
4280                </div>
4281
4282            
4283
4284                <div class="card">
4285                    <a href="/pages/catering" class="card-link">
4286                        <div class="card-link__media">
4287                            <img src="//lukeslobster.com/cdn/shop/files/catering_250x250_crop_center.gif?v=1621560686" alt="">
4288                        </div>
4289                        <span class="card-link__title">Book Luke’s Catering</span>
4290                    </a>
4291                </div>
4292
4293            
4294
4295        </div>
4296
4297    
4298
4299</section>
4300
4301
4302<script>
4303    $(document).ready(function() {
4304        $('.content-cards-row').slick({
4305            slidesToShow: 1,
4306            centerMode: true,
4307            arrows: true,
4308            centerPadding: '80px',
4309            autoplay: false,
4310            autoplaySpeed: 2000,
4311            variableWidth: true,
4312            mobileFirst: true,
4313            responsive: [
4314            {
4315                breakpoint: 600,
4316                settings: {
4317                    slidesToShow: 2,
4318                }
4319            },
4320            {
4321                breakpoint: 800,
4322                settings: "unslick"
4323            }
4324            ]
4325        });
4326    });
4327
4328</script>
4328
4329</div><div id="shopify-section-1620161407a55a519e" class="shopify-section"><section class="content-with-gallery">
4330    
4331
4332            <div class="content-gallery"
4333                data-aos="fade-up-right"
4334                data-aos-duration='1000'
4335                data-aos-once="true"
4336            >
4337
4338                
4339
4340                    <div class="gallery-img">
4341                                <img class="lazyload" lazy src="//lukeslobster.com/cdn/shop/files/JW1A6990_250x250_crop_center.jpg?v=1621906443" alt="">
4342                    </div>
4343
4344                
4345
4346                    <div class="gallery-img">
4347                                <img class="lazyload" lazy src="//lukeslobster.com/cdn/shop/files/Image_block_seaweed_250x250_crop_center.png?v=1620161523" alt="">
4348                    </div>
4349
4350                
4351
4352                    <div class="gallery-img">
4353                                <img class="lazyload" lazy src="//lukeslobster.com/cdn/shop/files/Image_block_fisherman_2_250x250_crop_center.png?v=1620161536" alt="">
4354                    </div>
4355
4356                
4357
4358            </div>
4359
4360    
4361
4362    
4363
4364            <div class="right-section">
4365                <div class="content-body"
4366                    data-aos="fade-up-left"
4367                    data-aos-duration='1000'
4368                    data-aos-once="true"
4369                >
4370                    
4371                        <h2>WE KNOW OUR FISHERMEN SO YOU CAN TOO</h2>
4372                    
4373
4374                    
4375                        <p>Luke's Lobster first opened its doors in NYC in 2009. We now bring traceable, sustainable seafood to guests across the country in our shacks, in grocery stores, and shipped nationwide to your doorstep. We work directly with fishermen to hand pick the best seafood, bring it straight to our own seafood company to steam and pick it perfectly, and then ship directly to our shacks and customers. Cutting out the middleman means better tasting seafood for you to enjoy and a fairer price for our fishermen.<br/></p><p></p>
4376                    
4377                </div>
4378                
4379                    <div class="body-img"
4380                        data-aos="fade-up-left"
4381                        data-aos-duration='1000'
4382                        data-aos-once="true"
4383                    >
4384                        <img class="lazyload" lazy src="//lukeslobster.com/cdn/shop/files/Image_block_people_fishing_500x500.png?v=1620162614" alt="">
4385                    </div>
4386                
4387            </div>
4388
4389    
4390
4391</section>
4392
4393
4394
4395</div><div id="shopify-section-16185226218076df80" class="shopify-section">
4396
4397
4398
4399
4400<section class="content-with-media">
4401
4402    <div class="content-body"
4403        data-aos="fade-up-right"
4404        data-aos-duration='1000'
4405        data-aos-offset="200"
4406        data-aos-once="true"
4407    >
4408        
4409            <h2>Bringing the ocean’s best catch to you</h2>
4410        
4411
4412        
4413            <p>In 2013, the Luke’s team opened its own seafood purchasing and production business in Saco, Maine. This made Luke’s truly vertically integrated, buying directly from fishermen we know and trust and handling their seafood throughout the journey from the dock to your plate. </p><p>In 2018, Luke’s expanded into branded grocery, launching its flash-frozen lobster meat, tails, and seafood meals in grocery stores around the country, while also becoming a certified B Corp that same year. And in 2020, when restaurants were closing and markets for sustainable seafood vanishing, Luke’s launched its online market, to bring a taste of Maine direct to doorsteps around the country.</p>
4414        
4415    </div>
4416    
4417    <div class="content-media" 
4418        data-aos="fade-up-left"
4419        data-aos-duration='1000'
4420        data-aos-offset="300"
4421        data-aos-once="true"
4422    >
4423
4424        
4425    
4426            <div class="content-media__image">
4427                <img src="//lukeslobster.com/cdn/shop/files/IMG_1492_500x.jpg?v=1622633878" alt="Illustrated fishing pier with fisherman" >
4428            </div>
4429            
4430        
4431
4432    </div>
4433
4434</section>
4435
4436
4437
4438</div><div id="shopify-section-16185230313556ef0d" class="shopify-section">
4439
4440
4441
4442
4443
4444    
4445    <div class="gallery-title">
4446        <h2>Come Visit Our Shacks!</h2>
4447    </div>
4448    
4449<style data-shopify>
4450        .alternating-gallery img:nth-child(5) {
4451            display: none;
4452        }
4453    </style>
4454
4455    <section class="alternating-gallery"
4456        data-aos="fade-up"
4457        data-aos-duration='1000'
4458        data-aos-offset="100"
4459        data-aos-once="true"
4460    >
4461
4462
4463        
4464        
4465        
4466        
4467        
4468        
4469
4470
4471
4472        
4473
4474            
4475
4476                
4477                
4478
4479                
4480                    <img class="lazyload" src="//lukeslobster.com/cdn/shop/files/CC_2018_04_19_0366_350x500_crop_center.jpg?v=1621907035"  alt="Woman standing in Front of a Luke's Lobster Shack holding a basket with a lobster roll" >
4481                
4482
4483            
4484
4485        
4486
4487            
4488
4489                
4490                
4491
4492                
4493                    <img class="lazyload" src="//lukeslobster.com/cdn/shop/files/CC_2018_05_24_0423_ea582b58-372e-473e-802a-96732272e206_350x500_crop_center.jpg?v=1621906978"  alt="A smiling woman holding a lobster roll poses in front of the Brooklyn Bridge Luke's Lobster Shack " >
4494                
4495
4496            
4497
4498        
4499
4500            
4501
4502                
4503                
4504
4505                
4506                    <img class="lazyload" src="//lukeslobster.com/cdn/shop/files/IMG_3079_2_350x500_crop_center.jpg?v=1617995118"  alt="A smiling man in a professional kitchen packing a Luke's Lobster takeout bag" >
4507                
4508
4509            
4510
4511        
4512
4513            
4514
4515                
4516                
4517
4518                
4519                    <img class="lazyload" src="//lukeslobster.com/cdn/shop/files/CC_2018_05_24_1060_350x500_crop_center.jpg?v=1621907006"  alt="A smiling person holding a Luke's Lobster takeout bag standing in front of decorative lobster crates" >
4520                
4521
4522            
4523
4524        
4525
4526            
4527
4528                
4529                
4530
4531                
4532
4533            
4534
4535        
4536
4537    </section>
4538
4539
4540
4541
4542</div><div id="shopify-section-1618523785d04fa85f" class="shopify-section">
4543
4544
4545
4546
4547
4548
4549
4550
4551
4552    <!-- "false"
4553    null -->
4554
4555    <section 
4556        
4557            data-aos="fade-up"
4558            data-aos-duration='1000'
4559            data-aos-offset="100"
4560            data-aos-once="true"
4561            class="hero-image 
4562        
4563        
4564        
4565         hero--has-color-overlay">
4566        
4567        <style data-shopify>
4568            .hero-image {
4569                background-image: url('//lukeslobster.com/cdn/shop/files/Lukes_hi_res_fix-1_adobespark_2000x2000.jpg?v=1622142704');
4570            }
4571        </style>  
4572
4573
4574        <div class="hero__content">
4575            
4576                <h2>Need Inspiration?</h2>
4577            
4578            
4579            <p></p>
4580
4581            
4582                <a href="/blogs/recipes" class="button button--blue">Browse Recipes</a>
4583            
4584            
4585        </div>
4586
4587    
4588
4589</section>
4590
4591
4592</div><!-- END content_for_index -->
4593<script>
4594 (function(e, t, r, n) {
4595    var o, c, s;
4596    o = e.document, c = t.children[0], s = o.createElement("script"), e.StorefrontSDKObject = "StorefrontSDK", e[e.StorefrontSDKObject] = {
4597        executeCommand: function(t, r) {
4598            e[e.StorefrontSDKObject].buffer.push([t, r])
4599        },
4600        buffer: []
4601    }, s.async = 1, s.src ='https://web-apps.cdn4dd.com/webapps/sdk-storefront/latest/sdk.js' , t.insertBefore(s, c)
4602})(window, document.head);
4603StorefrontSDK.executeCommand('renderFloatingButton', {
4604    businessId: 3570,
4605    businessSlug: 'LukesLobster',
4606    floatingBar: true,
4607    position: 'bottom',
4608    buttonAlignment: 'center',
4609    backgroundColor: 'transparent',
4610    bottomOffset: '30px',
4611    buttonBackgroundColor: '#2e465d',
4612    buttonWidth: '400px',
4613    borderColor: 'transparent',
4614    buttonFontSize: '15px',
4615    buttonText: 'Order Local Pick Up & Delivery - Powered by Doordash',
4616    fontFamily: 'Din-Bold',
4617    buttonRadius: '5px',
4618    showModal: false,
4619    targetWindow: '_blank'
4620  } 
4621)
4622</script>
4622
4623</div>
4624<div class="ic-additional-checkout-buttons" style="display: none">
4625&lt;div class=&quot;dynamic-checkout__content&quot; id=&quot;dynamic-checkout-cart&quot; data-shopify=&quot;dynamic-checkout-cart&quot;&gt; &lt;shopify-accelerated-checkout-cart wallet-configs=&quot;[{&amp;quot;supports_subs&amp;quot;:true,&amp;quot;supports_def_opts&amp;quot;:false,&amp;quot;name&amp;quot;:&amp;quot;shop_pay&amp;quot;,&amp;quot;wallet_params&amp;quot;:{&amp;quot;shopId&amp;quot;:36382998667,&amp;quot;merchantName&amp;quot;:&amp;quot; Luke&amp;#39;s Lobster&amp;quot;,&amp;quot;personalized&amp;quot;:false}},{&amp;quot;supports_subs&amp;quot;:false,&amp;quot;supports_def_opts&amp;quot;:false,&amp;quot;name&amp;quot;:&amp;quot;amazon_pay&amp;quot;,&amp;quot;wallet_params&amp;quot;:{&amp;quot;checkoutLanguage&amp;quot;:&amp;quot;en_US&amp;quot;,&amp;quot;ledgerCurrency&amp;quot;:&amp;quot;USD&amp;quot;,&amp;quot;placement&amp;quot;:&amp;quot;Cart&amp;quot;,&amp;quot;sandbox&amp;quot;:false,&amp;quot;merchantId&amp;quot;:&amp;quot;A19HSX2W14S9VQ&amp;quot;,&amp;quot;productType&amp;quot;:&amp;quot;PayAndShip&amp;quot;,&amp;quot;design&amp;quot;:&amp;quot;C0002&amp;quot;}}]&quot; access-token=&quot;7831df81aec7ebe10597f4893aa93bd4&quot; buyer-country=&quot;US&quot; buyer-locale=&quot;en&quot; buyer-currency=&quot;USD&quot; shop-id=&quot;36382998667&quot; cart-id=&quot;19759e8f7efc2eed467321ba275ca97a&quot; enabled-flags=&quot;[&amp;quot;1172c16a&amp;quot;,&amp;quot;a1d1f9a1&amp;quot;,&amp;quot;f5afabb3&amp;quot;,&amp;quot;370070f3&amp;quot;]&quot; &gt; &lt;div class=&quot;wallet-button-wrapper&quot;&gt; &lt;ul class=&#39;wallet-cart-grid wallet-cart-grid--skeleton&#39; role=&quot;list&quot; data-shopify-buttoncontainer=&quot;true&quot;&gt; &lt;li data-testid=&#39;grid-cell&#39; class=&#39;wallet-cart-button-container&#39;&gt;&lt;div class=&#39;wallet-cart-button wallet-cart-button__skeleton&#39; role=&#39;button&#39; disabled aria-hidden=&#39;true&#39;&gt;&amp;nbsp&lt;/div&gt;&lt;/li&gt;&lt;li data-testid=&#39;grid-cell&#39; class=&#39;wallet-cart-button-container&#39;&gt;&lt;div class=&#39;wallet-cart-button wallet-cart-button__skeleton&#39; role=&#39;button&#39; disabled aria-hidden=&#39;true&#39;&gt;&amp;nbsp&lt;/div&gt;&lt;/li&gt; &lt;/ul&gt; &lt;/div&gt; &lt;/shopify-accelerated-checkout-cart&gt; &lt;/div&gt;
4626</div>
4627<style>.icartShopifyCartContent{width: 100%;}</style>
4628		</main>
4629
4630		<div id="shopify-section-footer" class="shopify-section">
4631
4632    <!-- order banner -->
4633
4634
4635
4636
4637<div class="order-banner ">
4638    <a class="button button--pink" href="https://lukeslobster.com/pages/order-local-pickup-and-delivery">Order Local Pick-up or Delivery</a>
4639</div>
4640
4641
4642
4643
4644
4645<footer class="site-footer">
4646
4647    <div class="site-footer-inner">
4648
4649        <div class="footer-block footer-block-newsletter">
4650
4651            
4652                <h4>Sign up for exclusive offers</h4>
4653            
4654    
4655            
4656                <p>New subscribers get 10% off your next order from our Online Market!</p>
4657            
4658<form method="post" action="/contact#ContactFooter" id="ContactFooter" accept-charset="UTF-8" class="contact-form" novalidate="novalidate"><input type="hidden" name="form_type" value="customer" /><input type="hidden" name="utf8" value="✓" />
4659<input type="hidden" name="contact[tags]" value="newsletter">
4660    
4661                <div class="input-group ">
4662                    <label for="ContactFooter-email">Email Address</label>
4663                    <input type="email"
4664                        name="contact[email]"
4665                        id="ContactFooter-email"
4666                        class="input-group__field newsletter__input"
4667                        value=""
4668                        placeholder="Email address"
4669                        aria-label="Email address"
4670                        aria-required="true"
4671                        required
4672                        autocorrect="off"
4673                        autocapitalize="off"
4674                        autocomplete="email"
4675                        
4676                    >
4677                    
4678                    <button type="submit" class="button button--blue" name="commit" id="Subscribe">Subscribe</button>
4679    
4680                </div>
4681    
4682                
4683    
4684            </form>
4685    
4686        </div>
4687    
4688        <div class="footer-block footer-block-menu">
4689    
4690            <nav class="footer-nav">
4691    
4692                <ul class="footer-menu menu">
4693                    
4694                    
4695                        <li class="menu-item">
4696                            <a href="/blogs/press">Press</a>
4697                        </li>
4698                    
4699                        <li class="menu-item">
4700                            <a href="/pages/accessibility">Accessibility</a>
4701                        </li>
4702                    
4703                        <li class="menu-item">
4704                            <a href="/pages/copy-of-privacy-policy-feb-2026">Privacy Policy</a>
4705                        </li>
4706                    
4707                        <li class="menu-item">
4708                            <a href="/pages/frequently-asked-questions">FAQ</a>
4709                        </li>
4710                    
4711                        <li class="menu-item">
4712                            <a href="/pages/contact-us">Contact</a>
4713                        </li>
4714                    
4715                        <li class="menu-item">
4716                            <a href="/pages/affiliate_program">Affiliate Program</a>
4717                        </li>
4718                    
4719                        <li class="menu-item">
4720                            <a href="/pages/wholesale-information">Wholesale</a>
4721                        </li>
4722                    
4723                        <li class="menu-item">
4724                            <a href="/pages/sms-terms-of-use">SMS Terms of Use </a>
4725                        </li>
4726                    
4727                     <li class="menu-item">
4728                            <a href="https://dsrp.pii.ai/p/9af5868d-adc4-4dfc-bc6f-bf05510cb9fa/submit.html">Data Subject Request</a>
4729                     </li>
4730                     <li onClick="showPopup()" class="menu-item"><a href="#" role="button" onclick="event.preventDefault(); showPopup();"  onkeydown="if(event.key === ' ' || event.key === 'Enter') { event.preventDefault(); showPopup(); }" >Do Not Sell or Share</a></li> 
4731    
4732                </ul>
4733    
4734            </nav>
4735    
4736        </div>
4737    
4738
4739        
4740
4741            <div class="footer-block footer-block-social">
4742                
4743                    <div class="b-corp-container">
4744                        <img src="//lukeslobster.com/cdn/shop/t/22/assets/icon-bcorp.png?v=62003405429551887791629734448" alt="B-Corp Certified">
4745                        <div class="b-corp-text">
4746                            <p>Luke’s is proud to be a B Corp</p>
4747                            <a class="button button--light" href="/pages/mission">Learn more about Luke's social responsibility</a>
4748                        </div>
4749                    </div>
4750                    
4751
4752                
4753                    <ul class="social-links">
4754                        
4755                            <li>
4756                                <a href="https://www.facebook.com/LukesLobster/" target="_blank" title="Luke's Lobster Facebook | Opens New Tab">
4757                                    <img src="//lukeslobster.com/cdn/shop/t/22/assets/icon-social-facebook.svg?v=3719076125614820921629734453" alt="Facebook">
4758                                </a>
4759                            </li>
4760                        
4761
4762                        
4763                            <li>
4764                                <a href="https://twitter.com/LukesLobster" target="_blank" title="Luke's Lobster Twitter | Opens New Tab">
4765                                    <img src="//lukeslobster.com/cdn/shop/t/22/assets/icon-social-twitter.svg?v=78359154122104731031629734454" alt="Twitter">
4766                                </a>
4767                            </li>
4768                        
4769
4770                        
4771                            <li>
4772                                <a href="https://www.pinterest.com/lukeslobster/" target="_blank" title="Luke's Lobster Pinterest | Opens New Tab">
4773                                    <img src="//lukeslobster.com/cdn/shop/t/22/assets/icon-social-pinterest.svg?v=46561224468598131481629734454" alt="Pinterest">
4774                                </a>
4775                            </li>
4776                        
4777
4778                        
4779                            <li>
4780                                <a href="https://www.instagram.com/lukeslobster/?hl=en" target="_blank" title="Luke's Lobster Instagram | Opens New Tab">
4781                                    <img src="//lukeslobster.com/cdn/shop/t/22/assets/icon-social-instagram.svg?v=127110577257383177491629734453" alt="Instagram">
4782                                </a>
4783                            </li>
4784                        
4785                        
4786                        
4787                            <li>
4788                                <a href="https://www.youtube.com/lukeslobster" target="_blank">
4789                                    <img src="//lukeslobster.com/cdn/shop/t/22/assets/icon-social-youtube.svg?v=169098454549551246521629734455" alt="Youtube">
4790                                </a>
4791                            </li>
4792                        
4793                    </ul>
4794                
4795
4796                
4797                
4798            </div>
4799        
4800            
4801
4802        <span class="copyright">&copy; 2026,  Luke&#39;s Lobster</span>
4803
4804    </div>
4805
4806</footer>
4807
4808
4809
4810</div>
4811
4812	</div>
4813  <!-- Google Tag Manager (noscript) -->
vendor: 68 bytes, lines 4813-4814
4813
4814<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
4814GTM-MJDSVL2
vendor: 83 bytes, lines 4814-4815
4814"
4815height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
4816<!-- End Google Tag Manager (noscript) -->
4817
4818  
4818<script>
4819  window.addEventListener('load', function() {
4820    if (document.location.pathname == '/pages/union-square') {
4821      gtag('event', 'conversion', {
4822        'send_to': 'AW-822214704/XcgCCO7JoKkYELCAiIgD'
4823      });
4824    }
4825    if (document.location.pathname == '/pages/upper-east-side') {
4826      gtag('event', 'conversion', {
4827        'send_to': 'AW-822214704/gMsBCIjPoKkYELCAiIgD'
4828      });
4829    }
4830    if (document.location.pathname == '/pages/upper-west-side') {
4831      gtag('event', 'conversion', {
4832        'send_to': 'AW-822214704/x20tCKrWoKkYELCAiIgD'
4833      });
4834    }
4835  });
4836
4837</script>
4837
4838
4839	<ul hidden>
4840		<li id="a11y-refresh-page-message">Choosing a selection results in a full page refresh.</li>
4841		<li id="a11y-selection-message">Press the space key then arrow keys to make a selection.</li>
4842	</ul>
4843
4844	<!-- AOS -->
4845<script type="text/javascript" src="https://unpkg.com/aos@next/dist/aos.js"></script>
4845
4846
4847	<!-- Back in Stock helper snippet -->
4848	
4849
4850<script id="back-in-stock-helper">
4851  var _BISConfig = _BISConfig || {};
4852
4853
4854
4855
4856</script>
4856
4857
4858
4859	<!-- End Back in Stock helper snippet -->
4860	<!-- "snippets/revy-bundle-script.liquid" was not rendered, the associated app was uninstalled -->
4861
4862	
4863	
4863<script src="//lukeslobster.com/cdn/shop/t/22/assets/custom.js?v=102652811802241478691744901266" type="text/javascript"></script>
4863
4864 <!-- "snippets/smile-initializer.liquid" was not rendered, the associated app was uninstalled -->
4865
4866
4867
4868<script>(()=>{if(window.ZipifyPages??={},!window.ZipifyPages.isGlobalSectionScriptsLoaded)return;window.ZipifyPages.isGlobalSectionScriptsLoaded=!1;"https://cdn03.zipify.com/javascript/page-published-scripts.min.js".split(",").map((i=>i.trim())).forEach((i=>{const e=document.createElement("script");Object.assign(e,{src:i,defer:!0,type:"module"}),document.body.appendChild(e)}))})();</script>
4868<script id="published-popup-template" type="text/template"><form class="zpa-crm-popup-form" id="zpa-crm-form" action="/subscribe" method="post" data-zpa-crm-form><header class="zpa-crm-popup-header"><button class="zpa-popup-btn-close" type="button"aria-label="Close Navigation" data-close-btn><svg class="zpa-popup-btn-close-icon" width="34" height="34" data-name="btn-close"><use href="#btn-close"></use></svg></button></header><div class="zpa-crm-popup-body" data-popup-content></div></form></script>
4868 
4868<script id="crm-button-popup" type="text/template">{! if (progress_image_option == 1)!}<div class="zpa-crm-popup-progressbar-wrap"><img class="zpa-crm-popup-img-progress zpa-img-fluid zpa-center-block" src="{!= progress_image.src !}"></div>{! !}<h1 class="zpa-crm-popup-title" style="color:{!= form_name_color !}; font-family:{!= form_name_font_family !}; font-size:{!= form_name_font_size !};">{!= form_name !}</h1><div class="zpa-crm-popup-form-container">{! if (form_image_option == 1) !}<div class="zpa-crm-popup-image-box"><img class="zpa-crm-popup-img-asside zpa-img-fluid zpa-center-block" style="border-radius:{!= form_image_shape !};" src="{!= form_image.src !}"></div>{! !}<div class="zpa-crm-popup-form-box"><div class="zpa-crm-popup-field-wrap">{! if (first_name_option == 1) !}<label class="zpa-crm-popup-field-wrap zpa-crm-popup-field-first-name zpa-text-field zpa-offset-bottom-xs"><input class="zpa-text-field__input" type="text" name="first_name" data-user-fname data-zp-input><span class="zpa-text-field__label">First Name</span></label>{! !}{! if (last_name_option == 1) !}<label class="zpa-crm-popup-field-wrap zpa-crm-popup-field-last-name zpa-text-field zpa-offset-bottom-xs"><input class="zpa-text-field__input" type="text" name="last_name" data-user-lname data-zp-input><span class="zpa-text-field__label">Last Name</span></label>{! !}</div><label class="zpa-text-field"><input class="zpa-text-field__input" type="email" name="email" required data-user-email data-zp-input><span class="zpa-text-field__label">Email Address</span></label>{! if (phone_option == 1) !}<label class="zpa-text-field zpa-crm-popup-field-phone"><input class="zpa-text-field__input" name="phone" type="tel" data-user-phone data-zp-input><span class="zpa-text-field__label">Phone Number</span></label>{! !}</div></div>{! if (gdpr_status != 'disable') !}<div>{! if (gdpr_status == 'enable_with_checkbox') !}<label class="zpa-control zpa-control--top zpa-control-checkbox zpa-offset-bottom-xs hidden" data-gdpr-checkbox-section><input class="zpa-control__field" type="checkbox" name="gdpr" data-gdpr-checkbox><span class="zpa-control__indicator zpa-offset-right-xs"></span><span class="zpa-fsize-xs" data-gdpr-checkbox-text></span></label>{! !}{! if (gdpr_status == 'enable_without_checkbox') !}<p class="zpa-fsize-xs zpa-text-center zpa-offset-top-none zpa-offset-bottom-xs hidden" data-gdpr-message-section></p>{! !}</div>{! !}<button class="zpa-crm-button-checkout zpa-btn-custom" type="submit" style="color:{!= checkout_button_color !}; background-color: {!= checkout_button_background_color !}" data-checkout-btn data-zpa-submit-button>{!= checkout_button_caption !}</button>{! if (comment_text_status == 1) !}<p class="zpa-crm-popup-description" style="color: {!= comment_text_font_color !}" data-comment-text-status>{!= comment_text !}</p>{! !}{! if (banner_image_option == 1)!}<img class="zpa-crm-popup-img-footer zpa-img-fluid zpa-center-block" src="{!= banner_image.src !}">{! !}</script>
4868
4869
4870
4871  
4872<style>
4873  /* Drawer container */
4874  .drawer {
4875  position: fixed;
4876  top: 0;
4877  right: 0;
4878  width: 400px;
4879  max-width: 100%;
4880  height: 100%;
4881  background: #fff;
4882  box-shadow: -4px 0 20px rgba(0, 0, 0, 0.2);
4883  z-index: 100010;      /* make sure the drawer is above the Doordash button */
4884  display: flex;
4885  flex-direction: column;
4886  transform: translateX(100%);
4887  transition: transform 0.3s ease;
4888}
4889
4890  .drawer--open {
4891    transform: translateX(0);
4892  }
4893  .drawer__backdrop {
4894    position: fixed;
4895    top: 0;
4896    left: 0;
4897    width: 100%;
4898    height: 100%;
4899    background: rgba(0, 0, 0, 0.4);
4900    z-index: 9998;
4901  }
4902  .drawer__container {
4903    display: flex;
4904    flex-direction: column;
4905    height: 100%;
4906  }
4907  .drawer__body {
4908    flex: 1;
4909    overflow-y: auto;
4910    -webkit-overflow-scrolling: touch;
4911    padding: 0 12px; /* reduced padding from 16px */
4912  }
4913  .drawer__header,
4914  .drawer__footer {
4915    padding: 16px;
4916    background: #fff;
4917  }
4918  .drawer__header {
4919    display: flex;
4920    flex-direction: column;
4921    border-bottom: none;
4922  }
4923  .drawer__close {
4924    font-size: 24px;
4925    background: none;
4926    border: none;
4927    cursor: pointer;
4928    color: #2d465d;
4929    align-self: flex-end;
4930  }
4931  .drawer__footer {
4932    display: flex;
4933    flex-direction: column;
4934    gap: 12px;
4935  }
4936
4937  .upsell-variant-selector {
4938  width: 100%;
4939  padding: 0.5em 1.5em 0.5em 0.5em; /* space for arrow */
4940  border: 1px solid #ccc;
4941  border-radius: 6px;
4942  margin-bottom: 10px; /* spacing below select */
4943  font-size: 0.9rem;
4944  background-color: #fff;
4945  background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='5'%3E%3Cpath fill='black' d='M0 0l5 5 5-5z'/%3E%3C/svg%3E");
4946  background-repeat: no-repeat;
4947  background-position: right 0.5em center;
4948  background-size: 10px 5px;
4949  appearance: none; /* removes default arrow in some browsers */
4950  cursor: pointer;
4951}
4952
4953.upsell-variant-selector:focus {
4954  border-color: #007bff;
4955  outline: none;
4956  box-shadow: 0 0 3px #007bff;
4957}
4958.upsell-card .upsell-variant-label {
4959 display: inline-block;
4960  background-color: #f5f5f5; /* light gray background */
4961  color: #333; /* dark text */
4962  font-size: 0.75rem; /* smaller font */
4963  font-weight: 600;
4964  padding: 0.2em 0.5em; /* small padding */
4965  border-radius: 0.4em; /* rounded corners */
4966  margin-bottom: 0.5em; /* spacing from variant selector */
4967  text-align: center;
4968  white-space: nowrap; /* prevents wrapping */
4969}
4970
4971  /* Cart steps */
4972  .cart-step {
4973    display: flex;
4974    flex-direction: column;
4975    height: 100%;
4976    width: 100%;
4977    position: absolute;
4978    top: 0;
4979    left: 0;
4980    transition: opacity 0.3s ease, transform 0.3s ease;
4981    opacity: 0;
4982    transform: translateX(100%);
4983    pointer-events: none;
4984    background: #fff;
4985    z-index: 1;
4986  }
4987  .cart-step.active {
4988    opacity: 1;
4989    transform: translateX(0);
4990    pointer-events: auto;
4991    z-index: 2;
4992  }
4993
4994  /* Cart header */
4995  .cart-header {
4996    font-size: 20px;
4997    font-weight: 700;
4998    color: #2d465d;
4999    margin: 0 0 8px 0;
5000  }
5001  #CartItemCount {
5002    font-weight: 700;
5003  }
5004
5005  /* Order minimum progress */
5006  .order-minimum-progress {
5007    padding: 12px;
5008    background: #fff;
5009    border-radius: 6px;
5010    border: 1px solid #2d465d33;
5011    text-align: center;
5012    margin-bottom: 8px;
5013  }
5014  .order-minimum-text {
5015    font-size: 0.95rem;
5016    font-weight: 600;
5017    margin-bottom: 6px;
5018    color: #2d465d;
5019  }
5020  .progress-bar-container {
5021    width: 100%;
5022    height: 10px;
5023    background: #eee;
5024    border-radius: 5px;
5025    overflow: hidden;
5026  }
5027  .progress-bar {
5028    height: 100%;
5029    width: 0%;
5030    background: #2d465d;
5031    border-radius: 5px;
5032    transition: width 0.3s ease;
5033  }
5034
5035  /* Cart items */
5036  .cart-item {
5037    display: flex;
5038    align-items: flex-start;
5039    padding: 10px 0; /* reduced from 12px */
5040    border-bottom: none;
5041    gap: 10px; /* reduced from 12px */
5042  }
5043  .cart-item-image {
5044    width: 70px;
5045    height: 70px;
5046    object-fit: cover;
5047    border-radius: 8px;
5048    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.07);
5049    flex-shrink: 0;
5050  }
5051  .cart-item-details {
5052    flex: 1;
5053    display: flex;
5054    flex-direction: column;
5055    gap: 6px;
5056  }
5057  .cart-item-title {
5058    font-weight: 700;
5059    margin: 0;
5060    color: #2d465d;
5061    font-size: 16px;
5062  }
5063  .cart-item-variant {
5064    font-size: 0.95rem;
5065    color: #2d465d99;
5066    margin: 0;
5067    font-style: italic;
5068  }
5069  .cart-item-qty-price {
5070    display: flex;
5071    justify-content: space-between;
5072    align-items: center;
5073    gap: 12px;
5074    margin-top: auto;
5075  }
5076  .qty-controls {
5077    display: flex;
5078    align-items: center;
5079    gap: 6px;
5080  }
5081  .cart-item-qty,
5082  .cart-item-qty-minus,
5083  .cart-item-qty-plus {
5084    width: 34px;
5085    height: 34px;
5086    text-align: center;
5087    border: 1.5px solid #2d465d;
5088    border-radius: 8px;
5089    background: #fff;
5090    cursor: pointer;
5091    color: #2d465d;
5092    font-weight: 700;
5093    font-size: 18px;
5094    user-select: none;
5095    display: flex;
5096    justify-content: center;
5097    align-items: center;
5098  }
5099  .cart-item-qty {
5100    width: 64px;
5101    font-size: 16px;
5102    line-height: 34px;
5103    border-radius: 8px;
5104    padding: 0 8px;
5105    -moz-appearance: textfield;
5106  }
5107  .cart-item-qty::-webkit-inner-spin-button,
5108  .cart-item-qty::-webkit-outer-spin-button {
5109    -webkit-appearance: none;
5110    margin: 0;
5111  }
5112  .cart-item-price {
5113    font-weight: 700;
5114    color: #2d465d;
5115    font-size: 16px;
5116    white-space: nowrap;
5117  }
5118  .cart-item-remove {
5119    background: none;
5120    border: none;
5121    font-size: 22px;
5122    cursor: pointer;
5123    color: #d64545;
5124    align-self: flex-start;
5125    padding: 0;
5126    transition: color 0.3s ease;
5127  }
5128  .cart-item-remove:hover {
5129    color: #a02a2a;
5130  }
5131
5132  /* Subtotals and actions */
5133  .cart-subtotals,
5134  .cart-actions {
5135    display: flex;
5136    flex-direction: column;
5137    gap: 12px;
5138  }
5139  .subtotal-wrapper {
5140    display: flex;
5141    justify-content: space-between;
5142    align-items: center;
5143  }
5144  #subtotal-amount {
5145    font-weight: 700;
5146    font-size: 1.25rem;
5147    color: #2d465d;
5148  }
5149
5150  /* Discounts */
5151  .cart-discount-wrapper,
5152  #discount-container,
5153  #cart-discounts {
5154    display: flex;
5155    flex-wrap: wrap;
5156    align-items: center;
5157    gap: 12px;
5158    width: 100%;
5159  }
5160  #discount-container input {
5161    flex: 1;
5162    min-width: 0;
5163    padding: 8px 12px;
5164    border: 1.5px solid #2d465d;
5165    border-radius: 8px;
5166    font-size: 14px;
5167  }
5168  #discount-container button {
5169    flex-shrink: 0;
5170    padding: 8px 16px;
5171    background-color: #2d465d;
5172    color: #fff;
5173    border: none;
5174    border-radius: 8px;
5175    font-weight: 700;
5176    cursor: pointer;
5177    transition: background-color 0.3s ease;
5178  }
5179  #discount-container button:hover {
5180    background-color: #223746;
5181  }
5182  .cart-discount {
5183    display: flex;
5184    justify-content: space-between;
5185    align-items: center;
5186    padding: 10px 16px;
5187    background: #f1f1f1;
5188    border-radius: 8px;
5189    flex: 1 1 auto;
5190    min-width: 0;
5191    font-size: 14px;
5192    color: #2d465d;
5193  }
5194  .cart-discount button {
5195    background: none;
5196    border: none;
5197    cursor: pointer;
5198    font-size: 18px;
5199    color: #2d465d;
5200    transition: color 0.3s ease;
5201  }
5202  .cart-discount button:hover {
5203    color: #a02a2a;
5204  }
5205
5206 .cart-item-discount-badge {
5207  display: block;
5208  width: 100%;
5209  margin-top: 8px;
5210  padding: 6px 12px;
5211  background-color: #f3f6f8;
5212  border-top: 4px solid #2e475e; /* Top accent */
5213  border-radius: 6px;
5214  box-shadow: 0 3px 6px rgba(0,0,0,0.12); /* soft 3D shadow */
5215  font-size: 0.85rem;
5216  font-weight: 600;
5217  color: #2e475e;
5218}
5219
5220
5221.cart-item-discount-badge .discount-title {
5222  display: block;
5223  font-weight: 700;             /* Bold title */
5224}
5225
5226.cart-item-discount-badge .discount-savings {
5227  display: block;
5228  font-size: 0.8rem;
5229  font-weight: 500;
5230  margin-top: 2px;
5231  color: #1a2a3a;               /* Slightly darker for contrast */
5232}
5233
5234
5235  /* Buttons */
5236  .btn--primary {
5237    background-color: #2d465d;
5238    color: #fff;
5239    border: none;
5240    padding: 12px;
5241    border-radius: 8px;
5242    font-weight: 700;
5243    text-align: center;
5244    transition: background-color 0.3s ease, transform 0.2s ease;
5245    cursor: pointer;
5246  }
5247  .btn--primary:hover {
5248    background-color: #223746;
5249  }
5250  .btn--primary.btn--disabled {
5251    background-color: #ccc !important;
5252    cursor: not-allowed;
5253    opacity: 0.6;
5254  }
5255  .btn--secondary {
5256    background-color: #fff;
5257    color: #2d465d;
5258    border: 1.5px solid #2d465d;
5259    padding: 12px;
5260    border-radius: 8px;
5261    font-weight: 700;
5262    text-align: center;
5263    cursor: pointer;
5264    transition: background-color 0.3s ease;
5265  }
5266  .btn--secondary:hover {
5267    background-color: #f0f4f7;
5268  }
5269  #checkout-btn {
5270    display: block !important;
5271    width: 100% !important;
5272    padding: 14px 0 !important;
5273    text-align: center !important;
5274    background-color: #2d465d !important;
5275    color: #fff !important;
5276    font-weight: 700 !important;
5277    border: none !important;
5278    border-radius: 14px !important;
5279    cursor: pointer !important;
5280    transition: background-color 0.3s, transform 0.2s !important;
5281    position: relative !important;
5282    z-index: 100005 !important;
5283  }
5284  #checkout-btn:hover {
5285    background-color: #1f3245 !important;
5286    transform: translateY(-2px) !important;
5287  }
5288#go-to-step-2 {
5289  position: relative;   /* stay in drawer layout */
5290  z-index: 100005;      /* higher than the Doordash button */
5291}
5292
5293
5294
5295  /* Empty cart */
5296  .empty-cart {
5297    text-align: center;
5298    padding: 60px 16px;
5299    color: #2d465d;
5300    font-weight: 600;
5301    font-size: 18px;
5302  }
5303
5304  /* Minimum warnings */
5305  .minimum-warning,
5306  #minimum-warning-2 {
5307    font-size: 0.95rem;
5308    color: #d00;
5309    text-align: center;
5310    margin: 0;
5311    font-weight: 700;
5312  }
5313
5314  /* Wrapped gift cards */
5315  .wrapped-gift-card-container {
5316    max-height: 220px !important;
5317    overflow-y: auto !important;
5318    padding: 8px !important;
5319    border-top: none;
5320  }
5321:root {
5322  --wrapped-font-size-default: 12px !important;
5323}
5324
5325
5326  /* Calendar section */
5327  .calendar_section {
5328    display: flex;
5329    gap: 12px;
5330    flex-wrap: wrap;
5331    justify-content: flex-start;
5332    margin-top: 16px;
5333  }
5334  .delivery-day {
5335    padding: 10px 16px;
5336    border: 1.5px solid #2d465d33;
5337    border-radius: 8px;
5338    cursor: pointer;
5339    background: #f9f9f9;
5340    font-weight: 600;
5341    color: #2d465d;
5342    transition: background-color 0.3s ease, color 0.3s ease;
5343  }
5344  .delivery-day.selected {
5345    background: #2d465d;
5346    color: #fff;
5347  }
5348
5349  /* ===============================
5350     UPSSELL SECTION — Enhanced Visuals and Merged Styles
5351     =============================== */
5352
5353.upsell-section {
5354  margin-top: 12px;
5355  padding: 12px 8px 16px 8px;
5356  border-top: 1.5px solid #e1e8f0;
5357  background: #f9fbfc;
5358  border-radius: 12px;
5359}
5360
5361.upsell-section > .upsell-title {
5362  margin: 0 0 12px 0;
5363  font-weight: 800;
5364  font-size: 17px;
5365  color: #1f3245;
5366  letter-spacing: 0.03em;
5367  text-transform: uppercase;
5368  text-align: left;
5369}
5370
5371.upsell-scroll {
5372  display: grid;
5373  grid-template-columns: repeat(2, 1fr);
5374  gap: 12px;
5375  padding: 0;
5376  overflow: visible;
5377}
5378
5379.upsell-scroll > div,
5380.upsell-card {
5381  width: 100%;
5382  background: #fff;
5383  border: 1.5px solid #dde6ed;
5384  border-radius: 14px;
5385  padding: 12px 10px 54px 10px;
5386  box-shadow: 0 2px 6px rgba(45, 70, 93, 0.08);
5387  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
5388  cursor: pointer;
5389  display: flex;
5390  flex-direction: column;
5391  align-items: center;
5392  gap: 8px;
5393  min-height: 180px;
5394  position: relative;
5395}
5396
5397.upsell-scroll > div:hover,
5398.upsell-card:hover,
5399.upsell-card:focus-within {
5400  transform: translateY(-4px);
5401  box-shadow: 0 8px 20px rgba(45, 70, 93, 0.15);
5402  border-color: #2d465d;
5403  outline: none;
5404}
5405
5406.upsell-scroll img,
5407.upsell-card img {
5408  width: 64px;
5409  height: 64px;
5410  object-fit: contain;
5411  border-radius: 8px;
5412  background: #f0f4f8;
5413  padding: 6px;
5414  box-shadow: inset 0 0 6px #d7e1eb;
5415  transition: box-shadow 0.3s ease;
5416  margin: 0;
5417}
5418
5419.upsell-card:hover img {
5420  box-shadow: inset 0 0 10px #b0c4d9;
5421}
5422
5423.upsell-scroll .upsell-title,
5424.upsell-card .upsell-title {
5425  font-weight: 700;
5426  font-size: 15px;
5427  color: #223746;
5428  margin: 0;
5429  min-height: 42px;
5430  text-align: center;
5431  line-height: 1.2;
5432  overflow: hidden;
5433  text-overflow: ellipsis;
5434  display: -webkit-box;
5435  -webkit-line-clamp: 2;
5436  -webkit-box-orient: vertical;
5437  cursor: default;
5438}
5439
5440.upsell-scroll .upsell-price,
5441.upsell-card .upsell-price {
5442  font-weight: 600;
5443  font-size: 13px;
5444  color: #5a5a5a;
5445  margin: 0 0 10px 0;
5446}
5447
5448
5449.btn-upsell-add {
5450  font-size: 14px !important;
5451  padding: 10px 14px !important;
5452  width: calc(100% - 20px); /* full width minus horizontal card padding */
5453  border-radius: 12px;
5454  background-color: #2d465d;
5455  color: #fff;
5456  border: none;
5457  font-weight: 700;
5458  box-shadow: 0 4px 14px rgba(45, 70, 93, 0.4);
5459  transition: background-color 0.3s ease, box-shadow 0.3s ease, transform 0.15s ease;
5460  cursor: pointer;
5461  user-select: none;
5462  position: absolute;
5463  bottom: 12px;
5464  left: 10px;
5465  right: 10px;
5466  box-sizing: border-box; /* ensure padding included in width */
5467}
5468
5469.btn-upsell-add:hover,
5470.btn-upsell-add:focus-visible {
5471  background-color: #223746;
5472  box-shadow: 0 6px 20px rgba(34, 55, 70, 0.6);
5473  outline-offset: 2px;
5474  transform: translateY(-2px);
5475}
5476/* Delivery info cards container */
5477.delivery-info-cards {
5478  display: flex;
5479  flex-direction: column; /* default stacked for desktop */
5480  gap: 12px;
5481  margin-top: 16px;
5482}
5483
5484/* Individual card styling */
5485.delivery-card {
5486  background: #fff;
5487  border: 1px solid #2d465d33;
5488  border-radius: 10px;
5489  padding: 12px 16px;
5490  box-shadow: 0 2px 6px rgba(0,0,0,0.08);
5491  color: #2d465d;
5492  font-size: 14px;
5493}
5494
5495.delivery-card p {
5496  font-weight: 700;
5497  margin-bottom: 6px;
5498}
5499
5500.delivery-card ul {
5501  padding-left: 20px;
5502  margin: 0;
5503  list-style-type: disc;
5504  line-height: 1.5;
5505}
5506
5507.delivery-card li {
5508  margin-bottom: 4px;
5509}
5510
5511/* Responsive upsell grid */
5512@media (max-width: 768px) {
5513  .upsell-scroll {
5514    grid-template-columns: repeat(2, 1fr);
5515    gap: 10px;
5516  }
5517  .upsell-card {
5518    min-height: 160px;
5519    padding-bottom: 50px;
5520  }
5521  .upsell-scroll img,
5522  .upsell-card img {
5523    width: 56px;
5524    height: 56px;
5525  }
5526  .btn-upsell-add {
5527    font-size: 13px !important;
5528    padding: 8px 12px !important;
5529    bottom: 10px;
5530    left: 8px;
5531    right: 8px;
5532    width: calc(100% - 16px);
5533  }
5534}
5535
5536/* Responsive mobile adjustments */
5537@media (max-width: 768px) {
5538  .drawer {
5539    width: 100vw !important;
5540    max-width: 100vw !important;
5541  }
5542  .drawer__container,
5543  .drawer__body {
5544    width: 100%;
5545  }
5546  .cart-item-image {
5547    width: 50px;
5548    height: 50px;
5549  }
5550  .cart-item-title {
5551    font-size: 14px;
5552  }
5553  .cart-item-variant {
5554    font-size: 12px;
5555  }
5556  .cart-item-price {
5557    font-size: 14px;
5558  }
5559  .cart-item-qty {
5560    width: 40px !important;
5561    height: 28px !important;
5562    font-size: 14px !important;
5563  }
5564  .cart-item-qty-minus,
5565  .cart-item-qty-plus {
5566    width: 28px !important;
5567    height: 28px !important;
5568    font-size: 16px !important;
5569  }
5570  .delivery-info-cards {
5571    flex-direction: row;
5572    gap: 8px;
5573  }
5574  .delivery-card {
5575    flex: 1 1 50%; /* each card takes 50% width */
5576    box-sizing: border-box;
5577  }
5578}
5579</style>
5580
5581
5582
5583<div id="CartDrawer" class="drawer drawer--right" aria-modal="true" role="dialog" aria-labelledby="cart-header-label" aria-describedby="cart-description">
5584  <div class="drawer__backdrop" tabindex="-1"></div>
5585  <div class="drawer__container" role="document">
5586
5587    <div class="cart-step active" id="cart-step-1" aria-live="polite">
5588      <div class="drawer__header">
5589        <button class="drawer__close" aria-label="Close cart drawer">×</button>
5590        <p class="cart-header" id="cart-header-label">Cart (<span id="CartItemCount">0</span>)</p>
5591        <div class="order-minimum-progress" aria-describedby="order-minimum-text">
5592          <div class="order-minimum-text" id="order-minimum-text">Minimum order: $80</div>
5593          <div class="progress-bar-container" role="progressbar" aria-valuemin="0" aria-valuemax="100" aria-valuenow="0">
5594            <div class="progress-bar" id="order-progress-bar"></div>
5595          </div>
5596        </div>
5597      </div>
5598      <div class="drawer__body" id="cart-step-1-body">
5599        <div id="CartDrawerContents"><p>Loading cart...</p></div>
5600        <div class="wrapped-gift-card-container" id="wrapped-gift-card-container" aria-label="Gift cards"></div>
5601        <div id="shopify-section-cart-upsell-products" class="shopify-section">
5602
5603<div class="upsell-section">
5604  <p class="upsell-title">You May Also Like:</p>
5605  <div class="upsell-scroll" role="list">
5606    
5607    
5608      
5609
5610      
5611        
5612        
5613          
5614          
5615          
5616            <div class="upsell-card"
5617                 data-variant-id=""
5618                 data-min-cart-quantity="0"
5619                 data-discount=""
5620                 data-discount-amount="0">
5621              
5622              
5623              <img src="//lukeslobster.com/cdn/shopifycloud/storefront/assets/no-image-100-2a702f30_100x100.gif" alt="">
5624
5625              <p class="upsell-title"></p>
5626
5627              
5628
5629              
5630                
5631                
5632                <p class="upsell-price">
5633                  
5634                    
5635                  
5636                </p>
5637              
5638
5639              <button class="btn btn--secondary btn-upsell-add"
5640        data-variant-id="">
5641  Add
5642</button>
5643            </div>
5644
5645            
5646          
5647        
5648      
5649    
5650      
5651
5652      
5653        
5654        
5655          
5656          
5657          
5658            <div class="upsell-card"
5659                 data-variant-id="39274035380363"
5660                 data-min-cart-quantity="0"
5661                 data-discount=""
5662                 data-discount-amount="0">
5663              
5664              
5665              <img src="//lukeslobster.com/cdn/shop/files/LukesStudio_December2023-13_100x100.jpg?v=1761661409" alt="New England Clam Chowder - Serves 1">
5666
5667              <p class="upsell-title">New England Clam Chowder - Serves 1</p>
5668
5669              
5670
5671              
5672                
5673                
5674                <p class="upsell-price">
5675                  
5676                    $12.00
5677                  
5678                </p>
5679              
5680
5681              <button class="btn btn--secondary btn-upsell-add"
5682        data-variant-id="39274035380363">
5683  Add
5684</button>
5685            </div>
5686
5687            
5688          
5689        
5690      
5691    
5692      
5693
5694      
5695        
5696        
5697          
5698          
5699          
5700            <div class="upsell-card"
5701                 data-variant-id="32974432895115"
5702                 data-min-cart-quantity="0"
5703                 data-discount=""
5704                 data-discount-amount="0">
5705              
5706              
5707              <img src="//lukeslobster.com/cdn/shop/files/StudioShots-41_0f91dd9b-857a-4ff7-b7e4-ce015d1cab
5707cd_100x100.jpg?v=1770149669" alt="Lobster Mac & Cheese - Serves 1">
5708
5709              <p class="upsell-title">Lobster Mac & Cheese - Serves 1</p>
5710
5711              
5712
5713              
5714                
5715                
5716                <p class="upsell-price">
5717                  
5718                    $12.00
5719                  
5720                </p>
5721              
5722
5723              <button class="btn btn--secondary btn-upsell-add"
5724        data-variant-id="32974432895115">
5725  Add
5726</button>
5727            </div>
5728
5729            
5730          
5731        
5732      
5733    
5734      
5735
5736      
5737        
5738        
5739          
5740          
5741          
5742            <div class="upsell-card"
5743                 data-variant-id="45495963156619"
5744                 data-min-cart-quantity="0"
5745                 data-discount=""
5746                 data-discount-amount="0">
5747              
5748              
5749              <img src="//lukeslobster.com/cdn/shop/files/February_PastaPackaging-37_100x100.jpg?v=1770987938" alt="Rigatoni Shrimp Alfredo - Serves 1">
5750
5751              <p class="upsell-title">Rigatoni Shrimp Alfredo - Serves 1</p>
5752
5753              
5754
5755              
5756                
5757                
5758                <p class="upsell-price">
5759                  
5760                    $12.00
5761                  
5762                </p>
5763              
5764
5765              <button class="btn btn--secondary btn-upsell-add"
5766        data-variant-id="45495963156619">
5767  Add
5768</button>
5769            </div>
5770
5771            
5772          
5773        
5774      
5775    
5776  </div>
5777</div>
5778
5779
5780
5781
5782</div>
5783      </div>
5784      <div class="drawer__footer">
5785        <div id="cart-subtotals" class="cart-subtotals" aria-live="polite">
5786          <div class="subtotal-wrapper">
5787            <span class="subtotal-label">Subtotal:</span>
5788            <span id="subtotal-amount"><strong>$0.00</strong></span>
5789          </div>
5790          <div id="cart-discount-wrapper" class="cart-discount-wrapper">
5791            <div id="discount-container">
5792              <input type="text" id="cart-discount-code" placeholder="Discount code" aria-label="Enter discount code">
5793              <button id="apply-discount" class="btn btn--secondary">Apply</button>
5794            </div>
5795            <div id="cart-discounts" role="list" aria-label="Applied discounts"></div>
5796          </div>
5797        </div>
5798        <button id="go-to-step-2" class="btn btn--primary" aria-controls="cart-step-2" aria-expanded="false">Select Delivery Date</button>
5799      </div>
5800    </div>
5801
5802    <div class="cart-step" id="cart-step-2" aria-live="polite">
5803      <div class="drawer__header">
5804        <button id="back-to-step-1" class="btn btn--secondary" aria-controls="cart-step-1" aria-expanded="false">← Back to Cart</button>
5805      </div>
5806      <div class="drawer__body" id="cart-step-2-body">
5807<div class="calendar_section" id="calendar_section" aria-label="Delivery date selection"></div>
5808<div class="delivery-info-cards">
5809  <div class="delivery-card frozen-items">
5810    <p><strong>Frozen Items</strong></p>
5811    <ul>
5812      <li>Order 2-3 days in advance for on-time delivery.</li>
5813      <li>May arrive as late as 9pm with dry ice and gel packs.</li>
5814      <li>Thaw in fridge 16-24 hours before use.</li>
5815    </ul>
5816  </div>
5817  <div class="delivery-card live-lobsters">
5818    <p><strong>Live Lobsters</strong></p>
5819    <ul>
5820      <li>Delivered around noon on the day before or day of cooking.</li>
5821      <li>Best enjoyed same day for freshness.</li>
5822    </ul>
5823  </div>
5824</div>
5825      </div>
5826      <div class="drawer__footer">
5827        <a href="/checkout" id="checkout-btn" class="btn btn--primary btn--disabled" aria-disabled="true" tabindex="-1">Checkout</a>
5828        <p id="minimum-warning-2" class="minimum-warning" aria-live="assertive"></p>
5829      </div>
5830    </div>
5831
5832  </div>
5833</div>
5834
5835<script src="https://cdn.shopify.com/extensions/019a0261-c0cb-7c65-8ba5-5634a49ef862/wrapped-1651/assets/wrapped-app-embed.js"></script>
5835
5836
5837<script>
5838document.addEventListener('DOMContentLoaded', () => {
5839  const cartDrawer = document.getElementById('CartDrawer');
5840  const cartDrawerContents = document.getElementById('CartDrawerContents');
5841  const drawerCloseBtn = cartDrawer.querySelector('.drawer__close');
5842  const drawerBackdrop = cartDrawer.querySelector('.drawer__backdrop');
5843  const cartIcon = document.querySelector('.header-actions__cart');
5844  const checkoutBtn = document.getElementById('checkout-btn');
5845  const cartItemCount = document.getElementById('CartItemCount');
5846  const minimumWarning = document.getElementById('minimum-warning-2');
5847  const orderMinimumText = document.getElementById('order-minimum-text');
5848  const orderProgressBar = document.getElementById('order-progress-bar');
5849  const wrappedContainer = document.getElementById('wrapped-gift-card-container');
5850  const discountContainer = document.getElementById('discount-container');
5851  const applyDiscountBtn = document.getElementById('apply-discount');
5852  const discountInput = document.getElementById('cart-discount-code');
5853  const cartDiscounts = document.getElementById('cart-discounts');
5854  const upsellContainer = document.getElementById('upsell-scroll');
5855  const step1 = document.getElementById('cart-step-1');
5856  const step2 = document.getElementById('cart-step-2');
5857  const goToStep2Btn = document.getElementById('go-to-step-2');
5858  const backToStep1Btn = document.getElementById('back-to-step-1');
5859
5860  const ORDER_MINIMUM = 8000; // $80 in cents
5861  let cartMeetsMinimum = false;
5862  let deliveryDateSelected = false;
5863
5864  /* ---------------- Discount Handling ---------------- */
5865  applyDiscountBtn?.addEventListener('click', () => {
5866    const code = discountInput.value.trim();
5867    if (!code) return alert('Enter a discount code.');
5868    fetch('/cart/update.js', {
5869      method: 'POST',
5870      headers: {'Content-Type': 'application/json'},
5871      body: JSON.stringify({ discount: code })
5872    }).then(() => fetchCart());
5873  });
5874
5875  function removeDiscount() {
5876    fetch('/cart/update.js', {
5877      method: 'POST',
5878      headers: {'Content-Type': 'application/json'},
5879      body: JSON.stringify({ discount: '' })
5880    }).then(() => fetchCart());
5881  }
5882
5883  function fetchCart() {
5884    fetch('/cart.js')
5885      .then(res => res.json())
5886      .then(cart => {
5887        window.__latestCart = cart; // global reference
5888        renderCartDrawer(cart);
5889        renderUpsell(cart);
5890      })
5891      .catch(err => console.error('Cart fetch failed:', err));
5892  }
5893
5894  /* ---------------- Gift Card Logic ---------------- */
5895  function cartContainsOnlyGiftCards(cart) {
5896    return cart.items.length > 0 && cart.items.every(item =>
5897      item.product_type && item.product_type.toLowerCase().includes('gift card')
5898    );
5899  }
5900
5901  // Modify updateCheckoutButton to account for gift cards
5902  const originalUpdateCheckoutButton = updateCheckoutButton;
5903  updateCheckoutButton = function() {
5904    const subtotal = Number(cartDrawerContents.dataset.cartSubtotal || 0);
5905    const onlyGiftCards = window.__latestCart && cartContainsOnlyGiftCards(window.__latestCart);
5906
5907    if (onlyGiftCards) {
5908      checkoutBtn.classList.remove('btn--disabled');
5909      checkoutBtn.removeAttribute('aria-disabled');
5910      checkoutBtn.style.pointerEvents = 'auto';
5911      checkoutBtn.tabIndex = 0;
5912      minimumWarning.textContent = '';
5913      return;
5914    }
5915
5916    // Otherwise, run original logic
5917    originalUpdateCheckoutButton();
5918  };
5919  // Patch fetchCart to store cart globally for gift card checks
5920const originalFetchCart = fetchCart;
5921fetchCart = function() {
5922  fetch('/cart.js')
5923    .then(res => res.json())
5924    .then(cart => {
5925      window.__latestCart = cart; // store globally
5926      renderCartDrawer(cart);
5927      renderUpsell(cart);
5928
5929      const onlyGiftCards = cartContainsOnlyGiftCards(cart);
5930
5931      // Update progress bar and button
5932      if (onlyGiftCards) {
5933        orderMinimumText.textContent = 'Gift cards do not require a delivery date or minimum.';
5934        orderProgressBar.style.width = '100%';
5935        cartMeetsMinimum = true;
5936        deliveryDateSelected = true;
5937      }
5938
5939      updateCheckoutButton();
5940    })
5941    .catch(err => console.error('Cart fetch failed:', err));
5942};
5943  function updateOrderMinimumMessage(subtotal) {
5944    if (subtotal < ORDER_MINIMUM) {
5945      const diff = ORDER_MINIMUM - subtotal;
5946      orderMinimumText.textContent = `${Shopify.formatMoney(diff)} until free shipping`;
5947      orderProgressBar.style.width = `${Math.min((subtotal / ORDER_MINIMUM) * 100, 100)}%`;
5948    } else {
5949      orderProgressBar.style.width = '100%';
5950      orderMinimumText.textContent = deliveryDateSelected ? '' : 'Select a delivery date to checkout';
5951    }
5952  }
5953
5954  function isGiftItem(item) {
5955    return item.properties && Object.keys(item.properties).some(k => /_Gifted/i.test(k));
5956  }
5957
5958 /* ---------------- Render Cart Drawer ---------------- */
5959function renderCartDrawer(cart) {
5960  cartDrawerContents.innerHTML = '';
5961  cartItemCount.textContent = cart.item_count;
5962  cartDrawerContents.dataset.cartSubtotal = cart.total_price;
5963  cartMeetsMinimum = cart.total_price >= ORDER_MINIMUM;
5964  updateOrderMinimumMessage(cart.total_price);
5965
5966  // ---------------- Discounts ----------------
5967  cartDiscounts.innerHTML = '';
5968  const discountMap = {};
5969
5970  // Gifted item discounts (non-removable)
5971  cart.items.forEach(item => {
5972    if (item.properties && item.properties['']) {
5973      const title = '2 Free Rolls w/ Fall Favs';
5974      const amount = item.original_price * item.quantity;
5975      discountMap[title] = { amount, removable: false };
5976    }
5977  });
5978
5979  // Cart-level discounts (removable)
5980  (cart.cart_level_discount_applications || []).forEach(discount => {
5981    const title = discount.title;
5982    const amount = discount.total_allocated_amount;
5983    discountMap[title] = { amount, removable: true };
5984  });
5985
5986  // Line-item discounts (non-removable)
5987  cart.items.forEach(item => {
5988    (item.discounts || []).forEach(d => {
5989      const title = d.title;
5990      const amount = d.amount;
5991      if (!discountMap[title]) {
5992        discountMap[title] = { amount, removable: false };
5993      }
5994    });
5995  });
5996
5997  // Render all discounts
5998  Object.entries(discountMap).forEach(([title, { amount, removable }]) => {
5999    const el = document.createElement('div');
6000    el.classList.add('cart-discount');
6001    el.innerHTML = `<span><strong>Discount: ${title}</strong></span>
6002                    <button class="remove-discount" type="button" style="display:${removable ? 'inline-block' : 'none'}">×</button>`;
6003    if (removable) el.querySelector('button').addEventListener('click', removeDiscount);
6004    cartDiscounts.appendChild(el);
6005  });
6006
6007  // Determine if any discount exists
6008  const hasAnyDiscount = Object.keys(discountMap).length > 0;
6009  discountContainer.style.display = 'flex';
6010cartDiscounts.style.display = hasAnyDiscount ? 'flex' : 'none';
6011
6012  // ---------------- Cart Items ----------------
6013  if (cart.items.length === 0) {
6014    cartDrawerContents.innerHTML = '<p class="empty-cart">Your cart is empty</p>';
6015  } else {
6016    cart.items.forEach(item => {
6017      const img = item.image ? item.image.replace(/(\.(jpg|png|gif))/, '_100x100$1') : 'https://via.placeholder.com/100';
6018      const price = Shopify.formatMoney(item.final_line_price);
6019      const originalPrice = Shopify.formatMoney(item.original_line_price);
6020
6021      // Build discount badges for this item
6022let discountLabelsHTML = '';
6023
6024// Only show discounts that are applied to this specific item
6025const lineItemDiscounts = [
6026  ...(item.discount_allocations || []).filter(alloc => alloc.amount > 0).map(alloc => ({
6027    title: alloc.discount_application?.title || 'Discount'
6028  })),
6029  ...(item.discounts || []).map(d => ({ title: d.title }))
6030];
6031
6032lineItemDiscounts.forEach(d => {
6033  discountLabelsHTML += `
6034    <div class="cart-item-discount-badge" style="display:flex; flex-direction:column; margin-top:4px; padding:4px 8px; background:#f3f6f8; border-radius:6px; width:100%;">
6035      <span class="discount-title" style="font-size:.85rem; color:#2e475e; font-weight: bold;">${d.title}</span>
6036    </div>
6037  `;
6038});
6039
6040      const div = document.createElement('div');
6041      div.classList.add('cart-item');
6042      div.dataset.variantId = item.variant_id;
6043
6044      div.innerHTML = `
6045        <img src="${img}" alt="${item.product_title}" class="cart-item-image">
6046        <div class="cart-item-details">
6047          <p class="cart-item-title">${item.product_title}</p>
6048          <p class="cart-item-variant">${item.variant_title || ''}</p>
6049          <div class="cart-item-qty-price">
6050            <div class="qty-controls">
6051              <button type="button" class="cart-item-qty-minus" data-variant-id="${item.variant_id}" aria-label="Decrease quantity for ${item.product_title}">−</button>
6052              <input type="number" class="cart-item-qty" value="${item.quantity}" min="0" data-variant-id="${item.variant_id}" aria-label="${item.product_title} quantity">
6053              <button type="button" class="cart-item-qty-plus" data-variant-id="${item.variant_id}" aria-label="Increase quantity for ${item.product_title}">+</button>
6054            </div>
6055            <span class="cart-item-price">${price}</span>
6056          </div>
6057          ${discountLabelsHTML}
6058        </div>
6059        <button type="button" class="cart-item-remove" data-variant-id="${item.variant_id}" aria-label="Remove ${item.product_title} from cart">
6059×</button>
6060      `;
6061      cartDrawerContents.appendChild(div);
6062    });
6063
6064    // Add quantity and remove handlers
6065    cartDrawerContents.querySelectorAll('.cart-item-qty-minus').forEach(btn => btn.addEventListener('click', e => updateQty(e, -1)));
6066    cartDrawerContents.querySelectorAll('.cart-item-qty-plus').forEach(btn => btn.addEventListener('click', e => updateQty(e, 1)));
6067    cartDrawerContents.querySelectorAll('.cart-item-qty').forEach(input => input.addEventListener('change', updateQtyInput));
6068    cartDrawerContents.querySelectorAll('.cart-item-remove').forEach(btn => btn.addEventListener('click', removeItem));
6069  }
6070
6071  document.getElementById('subtotal-amount').innerHTML = `<strong>${Shopify.formatMoney(cart.total_price)}</strong>`;
6072  updateCheckoutButton();
6073}
6074
6075  /* ---------------- Cart Updates ---------------- */
6076  function updateCart(variantId, qty) {
6077    fetch('/cart.js')
6078      .then(res => res.json())
6079      .then(cart => {
6080        const updates = [{ id: variantId, quantity: qty }];
6081        const triggerItem = cart.items.find(i => i.variant_id == variantId);
6082        if (triggerItem) {
6083          cart.items.forEach(item => {
6084            if (isGiftItem(item) && item.properties['_Gifted'] === String(triggerItem.variant_id)) {
6085              updates.push({ id: item.variant_id, quantity: qty });
6086            }
6087          });
6088        }
6089
6090        return fetch('/cart/update.js', {
6091          method: 'POST',
6092          headers: {'Content-Type': 'application/json'},
6093          body: JSON.stringify({ updates: Object.fromEntries(updates.map(u => [u.id, u.quantity])) })
6094        });
6095      })
6096      .then(() => setTimeout(fetchCart, 200));
6097  }
6098
6099  function updateQty(e, delta) {
6100    e.preventDefault();
6101    const id = e.currentTarget.dataset.variantId;
6102    const input = cartDrawerContents.querySelector(`.cart-item-qty[data-variant-id="${id}"]`);
6103    const newQty = Math.max(0, parseInt(input.value) + delta);
6104    input.value = newQty;
6105    updateCart(id, newQty);
6106  }
6107
6108  function updateQtyInput(e) {
6109    e.preventDefault();
6110    const id = e.currentTarget.dataset.variantId;
6111    const newQty = Math.max(0, parseInt(e.currentTarget.value) || 0);
6112    updateCart(id, newQty);
6113  }
6114
6115  function removeItem(e) {
6116    e.preventDefault();
6117    const id = e.currentTarget.dataset.variantId;
6118    updateCart(id, 0);
6119  }
6120
6121  /* ---------------- Drawer Control ---------------- */
6122  function openDrawer() {
6123    cartDrawer.style.display = 'flex';
6124    if (window.innerWidth <= 768) document.body.style.overflow = 'hidden';
6125    setTimeout(() => cartDrawer.classList.add('drawer--open'), 10);
6126    document.dispatchEvent(new CustomEvent('custom:event:cart-drawer'));
6127    fetchCart();
6128  }
6129
6130  function closeDrawer() {
6131    cartDrawer.classList.remove('drawer--open');
6132    setTimeout(() => (cartDrawer.style.display = 'none'), 300);
6133    document.body.style.overflow = '';
6134  }
6135
6136  cartIcon?.addEventListener('click', e => { e.preventDefault(); openDrawer(); });
6137  drawerCloseBtn.addEventListener('click', closeDrawer);
6138  drawerBackdrop.addEventListener('click', closeDrawer);
6139
6140  /* ---------------- Step Navigation ---------------- */
6141  goToStep2Btn.addEventListener('click', () => {
6142    if (!cartMeetsMinimum) {
6143      alert('Add more items to reach the $80 minimum.');
6144      return;
6145    }
6146    step1.classList.remove('active');
6147    step2.classList.add('active');
6148    goToStep2Btn.setAttribute('aria-expanded', 'true');
6149    backToStep1Btn.setAttribute('aria-expanded', 'true');
6150  });
6151
6152  backToStep1Btn.addEventListener('click', () => {
6153    step2.classList.remove('active');
6154    step1.classList.add('active');
6155    goToStep2Btn.setAttribute('aria-expanded', 'false');
6156    backToStep1Btn.setAttribute('aria-expanded', 'false');
6157  });
6158
6159  function updateCheckoutButton() {
6160    if (cartMeetsMinimum && deliveryDateSelected) {
6161      checkoutBtn.classList.remove('btn--disabled');
6162      checkoutBtn.removeAttribute('aria-disabled');
6163      checkoutBtn.style.pointerEvents = 'auto';
6164      checkoutBtn.tabIndex = 0;
6165      minimumWarning.textContent = '';
6166    } else {
6167      checkoutBtn.classList.add('btn--disabled');
6168      checkoutBtn.setAttribute('aria-disabled', 'true');
6169      checkoutBtn.style.pointerEvents = 'none';
6170      checkoutBtn.tabIndex = -1;
6171      minimumWarning.textContent = !cartMeetsMinimum
6172        ? 'Add more items to reach the $80 minimum.'
6173        : 'Select a delivery date to checkout.';
6174    }
6175  }
6176
6177  checkoutBtn.addEventListener('click', e => {
6178    e.preventDefault();
6179    if (!cartMeetsMinimum) return alert('Add more items to reach the $80 minimum.');
6180    if (!deliveryDateSelected) return alert('Please select a delivery date before checking out.');
6181    window.location.href = '/checkout';
6182  });
6183
6184  /* ---------------- Delivery Date Selection ---------------- */
6185  function observeCalendar() {
6186    const cal = document.querySelector('.uiDeliveryCalendar');
6187    if (!cal) return setTimeout(observeCalendar, 200);
6188
6189    const updateSelection = () => {
6190      const selectedDay = cal.querySelector('.rmdp-day.rmdp-selected');
6191      deliveryDateSelected = !!selectedDay;
6192      const subtotal = Number(cartDrawerContents.dataset.cartSubtotal || 0);
6193      updateCheckoutButton();
6194      updateOrderMinimumMessage(subtotal);
6195    };
6196
6197    updateSelection();
6198    cal.addEventListener('click', () => setTimeout(updateSelection, 50));
6199
6200    const observer = new MutationObserver(mutations => {
6201      for (const mutation of mutations) {
6202        if (mutation.type === 'attributes' && mutation.attributeName === 'class') {
6203          updateSelection();
6204          break;
6205        }
6206      }
6207    });
6208
6209    observer.observe(cal, { attributes: true, subtree: true, attributeFilter: ['class'] });
6210  }
6211  observeCalendar();
6212
6213  function pollDeliveryDateSelection() {
6214    const calendarWrapper = document.querySelector('.uiDeliveryCalendar') || document.getElementById('calendar_section');
6215    if (!calendarWrapper) {
6216      setTimeout(pollDeliveryDateSelection, 300);
6217      return;
6218    }
6219    let lastSelected = null;
6220
6221    setInterval(() => {
6222      const selectedDay = calendarWrapper.querySelector('.rmdp-day.rmdp-selected');
6223      const currentlySelected = !!selectedDay;
6224      if (currentlySelected !== lastSelected) {
6225        lastSelected = currentlySelected;
6226        deliveryDateSelected = currentlySelected;
6227        const subtotal = Number(cartDrawerContents.dataset.cartSubtotal || 0);
6228        updateCheckoutButton();
6229        updateOrderMinimumMessage(subtotal);
6230      }
6231    }, 500);
6232  }
6233  pollDeliveryDateSelection();
6234
6235  /* ---------------- Wrapped Gift Card ---------------- */
6236  document.addEventListener('custom:event:cart-drawer', () => {
6237    if (window.Wrapped) {
6238      Wrapped.init({
6239        container: wrappedContainer,
6240        uuid: '1f45290f-612c-4dba-9858-2f314895e3d4'
6241      });
6242    }
6243  });
6244
6245 function renderUpsell(cart) {
6246  const upsellContainer = document.querySelector('.upsell-scroll');
6247  if (!upsellContainer) return;
6248
6249  upsellContainer.querySelectorAll('.upsell-card').forEach(card => {
6250    const variantId = parseInt(card.dataset.variantId, 10);
6251    const minQty = parseInt(card.dataset.minCartQuantity, 10) || 0;
6252
6253    // Check if this variant is in the cart
6254    const inCart = cart.items.some(item => item.variant_id === variantId);
6255
6256    // Show the card if variant NOT in cart AND cart meets minimum quantity
6257    card.style.display = (!inCart && cart.item_count >= minQty) ? 'flex' : 'none';
6258
6259    // Attach click listener only once
6260    const btn = card.querySelector('.btn-upsell-add');
6261    if (!btn || btn.dataset.listenerAttached) return;
6262
6263    btn.addEventListener('click', e => {
6264      e.preventDefault();
6265      const variantId = parseInt(btn.dataset.variantId, 10);
6266
6267      const bodyData = { id: variantId, quantity: 1 };
6268
6269      fetch('/cart/add.js', {
6270        method: 'POST',
6271        headers: { 'Content-Type': 'application/json' },
6272        body: JSON.stringify(bodyData)
6273      })
6274      .then(() => fetchCart()) // Refresh cart data after adding
6275      .catch(() => alert('Unable to add item to cart.'));
6276    });
6277
6278    btn.dataset.listenerAttached = true;
6279  });
6280}
6281
6282
6283  /* ---------------- Form Add-to-Cart ---------------- */
6284  document.querySelectorAll('form[action^="/cart/add"]').forEach(form => {
6285    form.addEventListener('submit', async e => {
6286      e.preventDefault();
6287      const formData = new FormData(form);
6288      const variantId = formData.get('id');
6289      const quantity = parseInt(formData.get('quantity')) || 1;
6290
6291      try {
6292        await fetch('/cart/add.js', {
6293          method: 'POST',
6294          headers: { 'Content-Type': 'application/json' },
6295          body: JSON.stringify({ id: variantId, quantity })
6296        });
6297        openDrawer();
6298      } catch {
6299        alert('Failed to add item to cart.');
6300      }
6301    });
6302  });
6303
6304  /* ---------------- Initial Fetch ---------------- */
6305  fetchCart();
6306
6307});
6308</script>
6308
6309
6310  <style>  </style>
6311<script src="https://cdn.shopify.com/storefront/standard-actions.js" type="module" data-source-attribution="shopify.standard_actions"></script>
6311
6312</body> 
6312<script> (function(){ var s = document.createElement('script'); var h = document.querySelector('head') || document.body; s.src = 'https://acsbapp.com/apps/app/dist/js/app.js'; s.async = true; s.onload = function(){ acsbJS.init(); }; h.appendChild(s); })(); </script>
6312 
6313</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.