1<!doctype html> 2 3<html 4 class="no-js" 5 lang="en" 6 dir="ltr"> 7 <head> 8<!-- Start of Shoplift scripts --> 9<!-- 2026-05-07T21:56:00.6045069Z --> 10<style>.shoplift-hide { opacity: 0 !important; }</style> 11<style id="sl-preview-bar-hide">#preview-bar-iframe, #PBarNextFrameWrapper { display: none !important; }</style>
12<script type="text/javascript">(function(rootPath, template, themeRole, themeId, isThemePreview){ /* Generated on 2026-08-17T20:01:14.4088954Z */(function(){"use strict";var te=document.createElement("style");te.textContent=`#shoplift-preview-control{position:fixed;max-width:332px;height:56px;background-color:#141414;z-index:9999;bottom:20px;display:flex;border-radius:8px;box-shadow:13px 22px 7px #0000,9px 14px 7px #00000003,5px 8px 6px #0000000d,2px 4px 4px #00000017,1px 1px 2px #0000001a,0 0 #0000001a;align-items:center;margin:0 auto;left:16px;right:16px;opacity:0;transform:translateY(20px);visibility:hidden;transition:opacity .4s ease-in-out,transform .4s ease-in-out,visibility 0s .4s}#shoplift-preview-control.visible{opacity:1;transform:translateY(0);visibility:visible;transition:opacity .4s ease-in-out,transform .4s ease-in-out,visibility 0s 0s}#shoplift-preview-control *{font-family:Inter,sans-serif;color:#fff;box-sizing:border-box;font-size:16px}#shoplift-preview-variant-title{font-weight:400;line-height:140%;font-size:16px;text-align:start;letter-spacing:-.16px;flex-grow:1;text-wrap:nowrap;overflow:hidden;text-overflow:ellipsis}#shoplift-preview-variant-selector{position:relative;display:block;padding:6px 0;height:100%;min-width:0;flex:1 1 auto}#shoplift-preview-variant-menu-trigger{border:none;cursor:pointer;width:100%;background-color:transparent;padding:0 16px;border-left:1px solid #333;border-right:1px solid #333;height:100%;display:flex;align-items:center;justify-content:start;gap:8px}#shoplift-preview-variant-selector .menu-variant-label{width:24px;height:24px;border-radius:50%;padding:6px;display:flex;justify-content:center;align-items:center;font-size:12px;font-style:normal;font-weight:600;line-height:100%;letter-spacing:-.12px;flex-shrink:0}#shoplift-preview-variant-selector .preview-variant-menu{position:absolute;bottom:110%;transform:translate3d(0,20px,0);visibility:hidden;pointer-events:none;opacity:0;cursor:pointer;background-color:#141414;border:1px solid #141414;border-radius:6px;width:100%;max-height:156px;overflow-y:auto;box-shadow:0 8px 16px #0003;z-index:1;transition:opacity .3s ease-in-out,transform .3s ease-in-out,visibility 0s .3s}#shoplift-preview-variant-selector .preview-variant-menu.preview-variant-menu__visible{visibility:visible;pointer-events:auto;opacity:100;transform:translateZ(0);transition:opacity .3s ease-in-out,transform .3s ease-in-out,visibility 0s 0s}@media screen and (max-width:400px){#shoplift-preview-variant-selector .preview-variant-menu{position:fixed;left:0;right:0;width:auto;bottom:110%}}#shoplift-preview-variant-selector .preview-variant-menu .preview-variant-menu--item{padding:12px 16px;display:flex;overflow:hidden}#shoplift-preview-variant-selector .preview-variant-menu .preview-variant-menu--item .menu-variant-label{margin-right:6px}#shoplift-preview-variant-selector .preview-variant-menu .preview-variant-menu--item span{overflow:hidden;text-overflow:ellipsis;text-wrap:nowrap;white-space:nowrap;color:#f6f6f6;font-size:14px;font-style:normal;font-weight:500}#shoplift-preview-variant-selector .preview-variant-menu .preview-variant-menu--item:hover{background-color:#545454}#shoplift-preview-variant-selector .preview-variant-menu .preview-variant-menu--item:last-of-type{border-bottom-left-radius:6px;border-bottom-right-radius:6px}#shoplift-preview-variant-selector .preview-variant-menu .preview-variant-menu--item:first-of-type{border-top-left-radius:6px;border-top-right-radius:6px}#shoplift-preview-control div:has(#shoplift-exit-preview-button){padding:0 16px}#shoplift-exit-preview-button{padding:6px 8px;font-weight:500;line-height:75%;border-radius:4px;background-color:transparent;border:none;text-decoration:none}#shoplift-exit-preview-button:hover{cursor:pointer;background-color:#333}#shoplift-preview-subscription-warning{position:relative;display:flex;align-items:center;gap:6px;padding:6px 10px;margin:0 4px;border-left:1px solid #333;cursor:help;outline:none}#shoplift-preview-subscription-warning__icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background-color:#f59e0b;color:#141414!important;font-weight:700;font-size:12px!important;line-height:1;flex-shrink:0}#shoplift-preview-subscription-warning__label{font-size:13px!important;font-weight:500;color:#fbbf24!important;text-wrap:nowrap;white-space:nowrap}#shoplift-preview-subscription-warning__tooltip{position:absolute;bottom:calc(100% + 8px);right:0;max-width:320px;width:max-content;padding:10px 12px;border-radius:6px;background-color:#1f1f1f;color:#fff!important;font-size:12px!important;line-height:1.4!important;box-shadow:0 8px 16px #0000004d;z-index:10000;opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity .2s ease-in-out,transform .2s ease-in-out,visibility 0s .2s;pointer-events:none}#shoplift-preview-subscription-warning__tooltip.shoplift-preview-subscription-warning__tooltip--visible{opacity:1;visibility:visible;transform:translateY(0);transition:opacity .2s ease-in-out,transform .2s ease-in-out,visibility 0s 0s}#shoplift-preview-subscription-warning:focus-visible{box-shadow:inset 0 0 0 2px #f59e0b;border-radius:4px}#shoplift-preview-control:has(#shoplift-preview-subscription-warning){max-width:480px}/*$vite$:1*/`,document.head.appendChild(te);var fe=" daum[ /]| deusu/| yadirectfetcher|(?:^|[^g])news(?!sapphire)|(?<! (?:channel/|google/))google(?!(app|/google| pixel))|(?<! cu)bots?(?:\\b|_)|(?<!(?: ya| yandex|^job|inapp;) ?)search|(?<!(?:lib))http|(?<![hg]m)score|@[a-z][\\w-]+\\.|\\(\\)|\\.com|\\b\\d{13}\\b|^<|^[\\w \\.\\-\\(?:\\):]+(?:/v?\\d+(?:\\.\\d+)?(?:\\.\\d{1,10})*?)?(?:,|$)|^[^ ]{50,}$|^\\d+\\b|^\\w+/[\\w\\(\\)]*$|^active|^ad muncher|^amaya|^avsdevicesdk/|^biglotron|^bot|^bw/|^clamav[ /]|^client/|^cobweb/|^custom|^ddg[_-]android|^discourse|^dispatch/\\d|^downcast/|^duckduckgo|^facebook|^getright/|^gozilla/|^hobbit|^hotzonu|^hwcdn/|^jeode/|^jetty/|^jigsaw|^microsoft bits|^movabletype|^mozilla/\\d\\.\\d \\(compatible;?\\)$|^mozilla/\\d\\.\\d \\w*$|^navermailapp|^netsurf|^offline|^owler|^postman|^python|^rank|^read|^reed|^rest|^rss|^snapchat|^space bison|^svn|^swcd |^taringa|^thumbor/|^track|^valid|^w3c|^webbandit/|^webcopier|^wget|^whatsapp|^wordpress|^xenu link sleuth|^yahoo|^yandex|^zdm/\\d|^zoom marketplace/|^{{.*}}$|admin|analyzer|archive|ask jeeves/teoma|bit\\.ly/|bluecoat drtr|browsex|burpcollaborator|capture|catch|check|chrome-lighthouse|chromeframe|classifier|clean|cloud|crawl|cypress/|dareboost|datanyze|dejaclick|detect|dmbrowser|download|evc-batch/|feed|firep
12hp|gomezagent|headless|httrack|hubspot marketing grader|hydra|ibisbrowser|images|insight|inspect|iplabel|ips-agent|java(?!;)|library|mail\\.ru/|manager|measure|neustar wpm|node|nutch|offbyone|optimize|pageburst|pagespeed|parser|perl|phantomjs|pingdom|powermarks|preview|proxy|ptst[ /]\\d|reputation|resolver|retriever|rexx;|rigor|rss\\b|scan|scrape|server|sogou|sparkler/|speedcurve|spider|splash|statuscake|synapse|synthetic|tools|torrent|trace|transcoder|url|virtuoso|wappalyzer|watch|webglance|webkit2png|whatcms/|zgrab",ge=/bot|spider|crawl|http|lighthouse/i,z;function me(){if(z instanceof RegExp)return z;try{z=new RegExp(fe,"i")}catch{z=ge}return z}function ye(a){return!!a&&me().test(a)}class Q{timestamp;constructor(){this.timestamp=new Date}}class ve extends Q{type;testId;hypothesisId;constructor(e,t,i){super(),this.type=3,this.testId=e,this.hypothesisId=t,this.timestamp=i}}class we extends Q{type;path;constructor(e){super(),this.type=4,this.path=e}}class be extends Q{type;cart;constructor(e){super(),this.type=5,this.cart=e}}class ie extends Error{isBot;constructor(){super(),this.isBot=!0}}function Se(a,e,t){for(const i of e.selectors){const s=a.querySelectorAll(i.cssSelector);for(let r=0;r<s.length;r++)t(e.testId,e.hypothesisId)}re(a,e,(i,s,r,n,o)=>o(s,r),t)}function U(a,e,t){for(const i of e.selectors)ne(a,e.testId,e.hypothesisId,i,t??(()=>{}));re(a,e,ne,t??(()=>{}))}function se(a){return a.urlPatterns.reduce((e,t)=>{switch(t.operator){case"contains":return e+`.*${t}.*`;case"endsWith":return e+`.*${t}`;case"startsWith":return e+`${t}.*`}},"")}function re(a,e,t,i){new MutationObserver(()=>{for(const r of e.selectors)t(a,e.testId,e.hypothesisId,r,i)}).observe(a.documentElement,{childList:!0,subtree:!0})}function ne(a,e,t,i,s){const r=a.querySelectorAll(i.cssSelector);for(let n=0;n<r.length;n++){let o=r.item(n);if(o instanceof HTMLElement&&o.dataset.shoplift!==""){o.dataset.shoplift="";for(const l of i.actions.sort(xe))o=Ce(a,i.cssSelector,o,l)}}return r.length>0&&s?(s(e,t),!0):!1}function Ce(a,e,t,i){switch(i.type){case"innerHtml":t.innerHTML=i.value;break;case"attribute":Te(t,i.scope,i.value);break;case"css":Ie(a,e,i.value);break;case"js":Pe(a,t,i);break;case"copy":return Ae(t);case"remove":Ee(t);break;case"move":ke(t,parseInt(i.value));break}return t}function Te(a,e,t){a.setAttribute(e,t)}function Ie(a,e,t){const i=a.createElement("style");i.innerHTML=`${e} { ${t} }`,a.getElementsByTagName("head")[0]?.appendChild(i)}function Pe(a,e,t){Function("document","element",`"use strict"; ${t.value}`)(a,e)}function Ae(a){const e=a.cloneNode(!0);if(!a.parentNode)throw"Can't copy node outside of DOM";return a.parentNode.insertBefore(e,a.nextSibling),e}function Ee(a){a.remove()}function ke(a,e){if(e===0)return;const t=Array.prototype.slice.call(a.parentElement.children).indexOf(a),i=Math.min(Math.max(t+e,0),a.parentElement.children.length-1);a.parentElement.children.item(i).insertAdjacentElement(e>0?"afterend":"beforebegin",a)}function xe(a,e){return oe(a)-oe(e)}function oe(a){return a.type==="copy"||a.type==="remove"?0:1}var M=(a=>(a[a.Template=0]="Template",a[a.Theme=1]="Theme",a[a.UrlRedirect=2]="UrlRedirect",a[a.Script=3]="Script",a[a.Dom=4]="Dom",a[a.Price=5]="Price",a))(M||{});const _e="data:image/svg+xml,%3csvg%20width='12'%20height='12'%20viewBox='0%200%2012%2012'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M9.96001%207.90004C9.86501%207.90004%209.77001%207.86504%209.69501%207.79004L6.43501%204.53004C6.19501%204.29004%205.80501%204.29004%205.56501%204.53004L2.30501%207.79004C2.16001%207.93504%201.92001%207.93504%201.77501%207.79004C1.63001%207.64504%201.63001%207.40504%201.77501%207.26004L5.03501%204.00004C5.56501%203.47004%206.43001%203.47004%206.96501%204.00004L10.225%207.26004C10.37%207.40504%2010.37%207.64504%2010.225%207.79004C10.15%207.86004%2010.055%207.90004%209.96001%207.90004Z'%20fill='white'/%3e%3c/svg%3e",Re="data:image/svg+xml,%3csvg%20width='14'%20height='24'%20viewBox='0%200%2014%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M12.3976%2014.5255C12.2833%2013.8788%2012.0498%2013.3024%2011.6952%2012.7961C11.3416%2012.2898%2010.9209%2011.8353%2010.4353%2011.4317C9.94868%2011.0291%209.43546%2010.6488%208.89565%2010.292C8.48487%2010.049%208.09577%209.78565%207.72637%209.50402C7.35697%209.2224%207.08016%208.89503%206.89694%208.51987C6.71273%208.14471%206.67826%207.69533%206.79055%207.1697C6.86345%206.83216%206.97476%206.54647%207.12351%206.31162C7.27324%206.07778%207.47124%205.89986%207.7175%205.77684C7.96377%205.65483%208.21989%205.59383%208.48389%205.59383C8.88087%205.59383%209.17639%205.7016%209.3734%205.91714C9.56943%206.13268%209.68271%206.42345%209.71424%206.78946C9.74576%207.15547%209.72015%207.55401%209.63839%207.98509C9.55663%208.41617%209.43645%208.84724%209.27687%209.27934L13.5127%208.80149C13.9638%207.52656%2014.1017%206.42447%2013.9264%205.49725C13.751%204.56901%2013.2664%203.85122%2012.4724%203.34491C12.239%203.19648%2011.9779%203.07041%2011.6893%202.96569L12.0026%201.50979L9.86397%200L
127.3875%201.50979L7.11169%202.78878C6.65166%202.8874%206.21724%203.01957%205.8114%203.19038C4.85292%203.594%204.06684%204.15115%203.45117%204.86385C2.83452%205.57655%202.42571%206.40108%202.22378%207.33847C2.06616%208.06947%202.04942%208.70796%202.17551%209.25087C2.30061%209.7948%202.52028%2010.2828%202.8355%2010.7139C3.14974%2011.145%203.51816%2011.5344%203.93977%2011.881C4.36039%2012.2288%204.782%2012.5521%205.20164%2012.851C5.68334%2013.1702%206.13844%2013.5169%206.56497%2013.8921C6.99052%2014.2672%207.31954%2014.7125%207.55004%2015.228C7.78055%2015.7445%207.81502%2016.3769%207.65347%2017.1262C7.56482%2017.5389%207.43676%2017.8765%207.27028%2018.1388C7.10381%2018.4011%206.89596%2018.5983%206.64772%2018.7295C6.3985%2018.8606%206.12071%2018.9267%205.8114%2018.9267C5.21641%2018.9267%204.79776%2018.6034%204.62833%2018.1632C4.4589%2017.7229%204.47367%2017.2583%204.60075%2016.5639C4.72782%2015.8705%205.05092%2015.1395%205.37107%2014.3699H1.17665C1.17665%2014.3699%200.207341%2016.1115%200.0310135%2017.6762C-0.0655232%2018.5302%200.0635208%2019.2653%200.41519%2019.8844C0.76686%2020.5036%201.33032%2020.9814%202.10655%2021.319C2.39222%2021.443%202.7104%2021.5447%203.05813%2021.623L2.54589%2024H7.17473L7.7047%2021.5386C8.08493%2021.442%208.43857%2021.3231%208.76562%2021.1787C9.73985%2020.7476%2010.52%2020.1427%2011.1071%2019.3649C11.6932%2018.5871%2012.0873%2017.7291%2012.2892%2016.7917C12.4744%2015.9295%2012.5099%2015.1741%2012.3966%2014.5275L12.3976%2014.5255Z'%20fill='white'/%3e%3c/svg%3e";async function De(a){let e=a.replace(/-/g,"+").replace(/_/g,"/");for(;e.length%4;)e+="=";const t=atob(e),i=Uint8Array.from(t,n=>n.charCodeAt(0)),s=new Blob([i]).stream().pipeThrough(new DecompressionStream("gzip")),r=await new Response(s).text();return JSON.parse(r)}function F(a,e){return typeof e=="string"&&/\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d+(?:Z|[+-]\d+)/.test(e)?new Date(e):e}function X(a,e){return e}function q(a,e=!1,t=!1,i=","){const s=a/100;if(t){const n=Math.round(s).toLocaleString("en-US");return i!==","?n.replace(/,/g,i):n}else{const r=e?",":".",n=s.toFixed(2).split("."),o=parseInt(n[0],10),l=n[1]??"00",c=o.toLocaleString("en-US");return i!==","?`${c.replace(/,/g,i)}${r}${l}`:e?`${c.replace(/,/g,".")}${r}${l}`:`${c}${r}${l}`}}function H(a,e,t,i){const s=e.replace("{{amount}}",q(a,!1,!1)).replace("{{amount_no_decimals}}",q(a,!1,!0)).replace("{{amount_with_comma_separator}}",q(a,!0,!1)).replace("{{amount_no_decimals_with_comma_separator}}",q(a,!0,!0)).replace("{{amount_with_space_separator}}",q(a,!1,!1," ")).replace("{{amount_no_decimals_with_space_separator}}",q(a,!1,!0," ")).replace("{{amount_with_apostrophe_separator}}",q(a,!1,!1,"'")).replace("{{amount_no_decimals_with_apostrophe_separator}}",q(a,!1,!0,"'")).replace("{{amount_with_period_and_space_separator}}",q(a,!1,!1,". ")).replace("{{amount_no_decimals_with_period_and_space_separator}}",q(a,!1,!0,". "));return i?`${s} ${t}`:s}function ae(a){return a.replace(/[^\d.,\s-]/g,"").trim()}function j(a){const e=new Map;for(const[t,i,s]of a.variants)e.set(t,{priceInCents:i,compareAtPriceInCents:s});return e}function Ve(a,e,t,i){const{priceInCents:s,compareAtPriceInCents:r}=t,{moneyFormat:n,currency:o,currencyCodeEnabled:l}=i;if(a.getAttribute("data-sl-attribute-p")===e)a.innerHTML=H(s,n,o,l);else if(a.getAttribute("data-sl-attribute-cap")===e)r<=0||r<=s?a.remove():a.innerHTML=H(r,n,o,l);else if(a.getAttribute("data-sl-attribute-discount")===e&&!(r<=0||r<=s)){const d=Math.round((r-s)/r*100),p=ae(H(r-s,n,o,!1)),h=a.getAttribute("data-sl-format")||"percent";h==="percent"?a.textContent=`-${d}%`:h==="amount"?a.textContent=`-${p}`:h==="both"&&(a.textContent=`-${d}% (-${p})`)}}function Oe(a){const e=[],t={id:"url-pattern",operator:"contains",value:"/"};for(const[i,s,r]of a.variants){e.push({id:`p-${i}`,cssSelector:`[data-sl-attribute-p="${i}"]`,urlPatterns:[t],actions:[{id:`p-action-${i}`,type:"innerHtml",scope:"price",value:H(s,a.moneyFormat,a.currency,a.currencyCodeEnabled)}]});const n=r<=0||r<=s;if(e.push({id:`cap-${i}`,cssSelector:`[data-sl-attribute-cap="${i}"]`,urlPatterns:[t],actions:[{id:`cap-action-${i}`,type:n?"remove":"innerHtml",scope:"compare-at-price",value:n?"":H(r,a.moneyFormat,a.currency,a.currencyCodeEnabled)}]}),!n&&r>s){const o=Math.round((r-s)/r*100),l=ae(H(r-s,a.moneyFormat,a.currency,!1));e.push({id:`d-${i}`,cssSelector:`[data-sl-attribute-discount="${i}"]`,urlPatterns:[t],actions:[{id:`d-action-${i}`,type:"js",scope:null,value:`var format = element.getAttribute('data-sl-format') || 'percent'; if (format === 'percent') { element.textContent = '-${o}%'; } else if (format === 'amount') { element.textContent = '-${l}'; } else if (format === 'both') { element.textContent = '-${o}% (-${l})'; }`}]})}}return e}const Le=a=>{let e=5381;for(let t=0;t<a.length;t++)e=(e*33^a.charCodeAt(t))>>>0;return e.toString(36)},$e=()=>Math.random().toString(36).slice(2,10)+Date.now().toString(36).slice(-4),Me=a=>btoa(JSON.stringify(a)).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,""),ee=a=>a.replace(/#slr-[a-z0-9]+$/,""),Xe="modulepreload",et=function(a){return"/"+a},tt={},qe=function(e,t,i){let s=Promise.resolve();function r(n){const o=new Event("vite:preloadError",{cancelable:!0});if(o.payload=n,window.dispatchEvent(o),!o.defaultPrevented)throw n}return s.then(n=>{for(const o of n||[])o.status==="rejected"&&r(o.reason);return e().catch(r)})};function le(a,e,t){const i=t?a.plans.filter(c=>!c.variantId||c.variantId===t):a.plans,s=[],r=[];for(const c of i)c.direction==="decrease"?(s.push(c.existingShopifyPlanId),r.push(c.createdShopifyPlanId)):(s.push(c.createdShopifyPlanId),r.push(c.existingShopifyPlanId));const n=e?s:r,o=e?r:s;if(t)for(const c of a.plans)for(const d of[c.existingShopifyPlanId,c.createdShopifyPlanId])d&&!n.includes(d)&&!o.includes(d)&&o.push(d);const l={};for(let c=0;c<o.length;c++){const d=o[c],p=n[c];d&&p&&(l[d]=p)}return{showPlanIds:n,hidePlanIds:o,swapMap:l}}function ce(a,e,t){const i=e?a.plans.find(r=>r.variantId===e):void 0;if(i)return i.direction;if(t){const r=a.plans.find(n=>n.productId===t);if(r)return r.direction}return a.plans.find(r=>!r.variantId)?.direction??null}function K(a,e){const t=e?a.plans.filter(r=>!r.productId||r.productId===e):a.plans,i={};for(const r of t)i[r.existingShopifyPlanId]=r.existingDiscountAmount,i[r.createdShopifyPlanId]=r.existingDiscountAmount;
12const s=Math.max(...Object.values(i),0);return{discountMap:i,maxDiscount:s}}function W(a){const e=document.querySelector('form[action*="/cart/add"] input[name="product-id"]')?.value;if(e)return e;if(a){for(const r of Array.from(document.querySelectorAll("[data-sl-attribute-p]"))){const n=r.getAttribute("data-sl-attribute-p");if(!n)continue;const o=a.variants.find(l=>l[0]===n);if(o?.[3])return o[3]}const s=document.querySelector('form[action*="/cart/add"] input[name="id"]')?.value;if(s){const r=a.variants.find(n=>n[0]===s);if(r?.[3])return r[3]}}const t=window,i=t.ShopifyAnalytics?.meta?.product?.id??t.meta?.product?.id;return i!=null?String(i):null}function D(a,e){return a.widget.selectors[e]??[]}function N(a,e){return a.replace(/[\d.]+%/,`${e}%`)}function $(a,e){const t=document.createTreeWalker(a,NodeFilter.SHOW_TEXT);let i=t.nextNode();for(;i;){if(i.nodeValue!==null){const s=e(i.nodeValue);if(s!==i.nodeValue){i.nodeValue=s;return}}i=t.nextNode()}}function de(a,e){return a===null?!1:a==="decrease"?!e:e}async function He(a){if(a.subscriptionSwapDone)return;const e=a.getActiveAssignment();if(!e)return;const t=a.getHypothesis(e.hypothesisId);if(!t?.subscriptionData)return;a.subscriptionSwapDone=!0;const i=t.subscriptionData,s=t.isControl,r=[...new Set(i.plans.map(d=>d.direction))].join(",");a.log(`[SUB-SWAP] ${s?"A":"B"} side, directions=${r}`);const n=i.plans.some(d=>d.variantId);let o=!1,l=!1;function c(){if(!l){l=!0;try{const d=n?document.querySelector("select[name='id'], input[name='id']")?.value:void 0,{showPlanIds:p,hidePlanIds:h,swapMap:u}=le(i,s,d);a.swapMap=u;const b=D(i,"widgetParent"),k=D(i,"subscriptionPlans"),S=D(i,"subscriptionInput");if(!b.length||!k.length||!S.length)return;const C=document.querySelector(b[0].selector);if(!C?.shadowRoot)return;const _=C.shadowRoot.querySelector(k[0].selector);if(!_?.shadowRoot)return;const T=S[0].selector;let m=null;if(i.widget.widgetType==="buttons"||i.widget.widgetType==="radio"){const y=Array.from(_.shadowRoot.querySelectorAll(T));if(!y.length)return;for(const v of y){const g=v.closest("label");g&&(p.includes(v.value)?g.style.display="":h.includes(v.value)&&(g.style.display="none"))}const w=y.some(v=>p.includes(v.value)&&v.checked),I=y.some(v=>h.includes(v.value)&&v.checked);if((w||I)&&(o=!1),!w&&!o){o=!0;for(const v of y)if(p.includes(v.value)){v.closest("label")?.click(),v.dispatchEvent(new Event("change",{bubbles:!0}));break}}const f=y.find(v=>v.checked);m=f&&p.includes(f.value)?f.value:p[0]??null}else if(i.widget.widgetType==="dropdown"){const y=_.shadowRoot.querySelector("select");if(!y)return;for(const w of Array.from(y.options))h.includes(w.value)&&(w.style.display="none",w.disabled=!0);if(h.includes(y.value)){const w=Array.from(y.options).find(I=>p.includes(I.value));w&&(y.value=w.value,y.dispatchEvent(new Event("change",{bubbles:!0})))}m=p.includes(y.value)?y.value:p[0]??null}if(m){const y=Array.from(document.querySelectorAll('input[name="selling_plan"]'));for(const w of y)w.value!==m&&(w.value=m)}}finally{l=!1}}}if(a.subscriptionHideWrongPlans=c,a.swapMap=le(i,s).swapMap,c(),n){const d=document.querySelector("select[name='id'], input[name='id']");d&&d.addEventListener("change",c)}}function B(a){const e=D(a,"widgetParent");return e.length?document.querySelector(e[0].selector)?.shadowRoot??null:null}function J(a,e){const t=D(a,"subscriptionPlans");return t.length?e.querySelector(t[0].selector)?.shadowRoot??null:null}function Y(a,e){const t=new URLSearchParams(window.location.search).get("variant");if(t)return t;{const i=document.querySelector('form[action*="/cart/add"] input[name="id"]')?.value;if(i)return i}return a.size>0?[...a.keys()][0]:void 0}function G(a,e){return H(a,e.moneyFormat,e.currency,e.currencyCodeEnabled)}function Ne({originalFetch:a,swapMap:e,slptValue:t,getSelectedPlanId:i,log:s}){if(window.fetch.__shoplift_intercepted)return s("[SUB-INTERCEPT] already installed â skipping"),()=>{};function r(o){if(i){const l=i();if(l)return e[l]??l}return e[o]??o}const n=function(o,l){if((typeof o=="string"?o:o instanceof URL?o.href:o.url).includes("/cart/add")&&l?.body)try{if(l.body instanceof FormData){const d=l.body.get("selling_plan");d?l.body.set("selling_plan",r(String(d))):(!d||d==="")&&t&&l.body.set("properties[_slpt]",t)}
12else if(typeof l.body=="string"){const d=JSON.parse(l.body);if(d.items)for(const p of d.items){const h=String(p.selling_plan??"");h?p.selling_plan=r(h):!p.selling_plan&&t&&(p.properties||(p.properties={}),p.properties._slpt=t)}else if(d.id){const p=String(d.selling_plan??"");p?d.selling_plan=r(p):!d.selling_plan&&t&&(d.properties||(d.properties={}),d.properties._slpt=t)}l.body=JSON.stringify(d)}}catch(d){s("[SUB-INTERCEPT] body parse failed; cart-add proceeds with un-swapped plan",d)}return a.call(window,o,l)};return n.__shoplift_intercepted=!0,window.fetch=n,function(){window.fetch===n&&(window.fetch=a)}}function Ue({log:a}){if(window.fetch.__shoplift_intercepted)return a("[SUB-PREVIEW-BLOCK] already installed â skipping"),()=>{};const e=window.fetch,t=function(i,s){const r=typeof i=="string"?i:i instanceof URL?i.href:i.url;return r.includes("/cart/add")?(a("[SUB-PREVIEW-BLOCK] cart-add blocked in preview mode",{url:r}),Promise.resolve(new Response(JSON.stringify({id:0,properties:{},quantity:0,variant_id:0,key:"preview",title:"Preview â cart-add blocked",price:0,original_price:0,line_price:0,original_line_price:0,total_discount:0,discounts:[],preview:!0}),{status:200,headers:{"Content-Type":"application/json"}}))):e.call(window,i,s)};return t.__shoplift_intercepted=!0,window.fetch=t,function(){window.fetch===t&&(window.fetch=e)}}function ue({data:a,runUpdates:e,debounceMs:t=150}){let i=null;function s(){i&&clearTimeout(i),e(),i=setTimeout(e,t)}let r=null;const n=[],o={childList:!0,subtree:!0,characterData:!0,attributes:!0};function l(h){for(const u of n)u.disconnect();n.length=0;for(const u of Array.from(h.querySelectorAll("*")))if(u.shadowRoot){const b=new MutationObserver(s);b.observe(u.shadowRoot,o),n.push(b)}}function c(){const h=B(a);return h?(r&&r.disconnect(),l(h),r=new MutationObserver(u=>{u.some(b=>b.type==="childList"&&b.addedNodes.length>0)&&l(h),s()}),r.observe(h,o),!0):!1}const d=document.body||document.documentElement,p=new MutationObserver(()=>{c()&&s()});return p.observe(d,{childList:!0,subtree:!0}),c()&&s(),e(),function(){i&&(clearTimeout(i),i=null),p.disconnect(),r&&(r.disconnect(),r=null);for(const u of n)u.disconnect();n.length=0}}async function Fe(a){if(a.subscriptionPriceDone)return;const e=a.getActiveAssignment(),t=e?a.getHypothesis(e.hypothesisId):void 0,i=t?.subscriptionData?null:a.findActiveSubscriptionTestControl(),s=t?.subscriptionData?t:i?.hypothesis;if(!s?.subscriptionData)return;const r=t?.subscriptionData?e.testId:i.testId;a.subscriptionPriceDone=!0;const n=s.subscriptionData,o=s.isControl,l=s.priceData,c=n.widget.widgetType;let d=W(l),p=K(n,d),h=p.discountMap,u=p.maxDiscount;function b(){const g=W(l);g!==d&&(d=g,p=K(n,d),h=p.discountMap,u=p.maxDiscount,a.log(`[SUB-PRICE] scope refreshed side=${o?"A":"B"}, currentProductId=${d??"n/a"}, maxDiscount=${u}`))}a.log(`[SUB-PRICE] side=${o?"A":"B"}, currentProductId=${d??"n/a"}, maxDiscount=${u}`),a.updatePriceTestHiddenInputs(r,o?"control":"variant",!1);function k(){if(!l)return null;const g=j(l),P=Y(g),A=ce(n,P,d);if(!de(A,o))return null;const E=P?g.get(P):void 0;return E?{formattedVariantPrice:G(E.priceInCents,l),formattedDiscounted:G(E.priceInCents*(1-u/100),l)}:null}Ne({originalFetch:a.fetch,swapMap:a.swapMap??{},slptValue:a.slptValue??void 0,log:a.log,getSelectedPlanId:()=>{const g=B(n);if(!g)return null;const P=J(n,g);if(!P)return null;const A=D(n,"subscriptionInput"),E=A.length?A[0].selector:'input[name="rc_plan"]';return P.querySelector(`${E}:checked`)?.value??null}});function S(g){const P=D(n,"subscriptionDiscount");for(const A of P)if(A.selector.includes("badge")||A.selector.includes("__badge")){const E=g.querySelector(A.selector);E?.textContent&&!E.textContent.includes(`${u}%`)&&$(E,x=>N(x,u))}}function C(g){const P=k();if(!P)return;const A=D(n,"subscriptionCompareAt");for(const E of A){const x=g.querySelector(E.selector)||g.querySelector(`[part~="${E.selector}"]`);x?.textContent&&!x.textContent.includes(P.formattedVariantPrice)&&$(x,R=>/\d/.test(R)?P.formattedVariantPrice:R)}}function _(g,P){const A=D(n,"subscriptionCompareAt"),E=P===0?"none":"";for(const x of A){const R=g.querySelector(x.selector)||g.querySelector(`[part~="${x.selector}"]`);R&&(E==="none"?R.style.display!=="none"&&(R.style.display="none"):R.style.display==="none"&&(R.style.display=""))}}function T(g){const P=D(n,"subscriptionInput"),A=P.length?P[0].selector:'input[name="rc_plan"]',E=D(n,"subscriptionPlanDiscount"),x=E.length?E[0].selector:".rc-plans-button__discount";for(const R of Array.from(g.querySelectorAll("label"))){const O=R.querySelector(A),V=R.querySelector(x);
12if(O&&V){const L=h[O.value];if(L!==void 0){if(L===0)V.style.display!=="none"&&(V.style.display="none");else if(V.style.display==="none"&&(V.style.display=""),V.textContent){const Z=V.textContent.match(/[\d.]+%/)?.[0];Z&&Z!==`${L}%`&&$(V,Qe=>N(Qe,L))}}}}}function m(g){const P=g.querySelector("select");if(P)for(const A of Array.from(P.options)){const E=h[A.value];if(E!==void 0&&A.textContent){const x=A.textContent.match(/[\d.]+%/)?.[0];x&&x!==`${E}%`&&(A.textContent=N(A.textContent,E))}}}function y(g,P){const E=D(n,"subscriptionDiscount").filter(x=>x.selector.includes("benefit")||x.selector==="rc-benefits");for(const x of E){const R=g.querySelector(x.selector);if(R?.shadowRoot){for(const O of Array.from(R.shadowRoot.querySelectorAll("li")))if(O.textContent?.includes("Save")){const V=O;if(P===0)V.style.display!=="none"&&(V.style.display="none");else{V.style.display==="none"&&(V.style.display="");const L=O.textContent.match(/[\d.]+%/)?.[0];L&&L!==`${P}%`&&$(O,Z=>N(Z,P))}}}}}let w=!1;function I(){if(!w){w=!0;try{if(b(),d!==null&&Object.keys(h).length===0)return;const g=B(n);if(!g)return;S(g),l&&C(g);const P=J(n,g);let A=u;if(P){const E=D(n,"subscriptionInput"),x=E.length?E[0].selector:'input[name="rc_plan"]',R=P.querySelector(`${x}:checked`);if(R){const O=h[R.value];O!==void 0&&(A=O)}c==="buttons"||c==="radio"?T(P):m(P)}_(g,A),y(g,A)}finally{w=!1}}}function f(){const g=k();if(!g)return;const P=B(n);if(!P)return;const A=D(n,"onetimeToggle"),E=A.length?A[0].selector:'input[value="onetime"]';if(!P.querySelector(E)?.checked)return;const R=D(n,"subscriptionPrice");for(const O of R){const V=P.querySelector(O.selector)||P.querySelector(`[part~="${O.selector}"]`);V?.textContent&&!V.textContent.includes(g.formattedDiscounted)&&$(V,L=>/\d/.test(L)?g.formattedDiscounted:L)}}function v(){a.subscriptionHideWrongPlans&&a.subscriptionHideWrongPlans(),I(),a.subscriptionUpdateOneTime&&a.subscriptionUpdateOneTime(),f()}ue({data:n,runUpdates:v})}async function Be(a){if(a.subscriptionOneTimeDone)return;const e=a.getActiveAssignment(),t=e?a.getHypothesis(e.hypothesisId):void 0,i=!!(t?.subscriptionData&&t.priceData),s=i?null:a.findActiveSubscriptionTestControl(),r=i?t:s?.hypothesis;if(!r?.subscriptionData||!r.priceData)return;const n=i?e.testId:s.testId;a.subscriptionOneTimeDone=!0;const o=r.subscriptionData,l=r.priceData,c=j(l),d=r.isControl,p=d?"control":"variant";a.slptValue=`${n}:${p}:f`,a.updatePriceTestHiddenInputs(n,p,!1);function h(){const u=B(o);if(!u)return;const b=Y(c);if(!b)return;const k=W(l),S=ce(o,b,k);if(!de(S,d))return;const C=c.get(b);if(!C)return;const _=H(C.priceInCents,l.moneyFormat,l.currency,l.currencyCodeEnabled),T=D(o,"onetimePrice");if(!T.length)return;const m=D(o,"onetimeContainer"),y=m.length?m[0].selector:'[part~="rc-purchase-option__onetime"]',I=u.querySelector(y)??u;for(const f of T){let v=null;try{v=I.querySelector(f.selector)}catch{v=null}v??=I.querySelector(`[part~="${f.selector}"]`),v&&v.textContent&&!v.textContent.includes(_)&&$(v,g=>/\d/.test(g)?_:g)}}a.subscriptionUpdateOneTime=h,h()}async function ze(a,e){const{subscriptionPreviewRender:t}=await qe(async()=>{const{subscriptionPreviewRender:i}=await Promise.resolve().then(()=>Ze);return{subscriptionPreviewRender:i}},void 0);return t(a.subscriptionData,a.priceData,a.isControl,e)}function We(a,e){const t=a.widget.selectors.widgetParent??[],i=a.widget.selectors.subscriptionPlans??[],s=a.widget.selectors.subscriptionInput??[];if(!t.length||!i.length||!s.length){e("[SUB-GLOBAL-HIDE] Missing required selectors â skipping");return}const r=t[0].selector,n=i[0].selector,o=s[0].selector;let l=!1,c=null,d=!1;function p(){if(!d){d=!0;try{h()}finally{d=!1}}}function h(){const C=document.querySelector(r);if(!C?.shadowRoot)return;const _=C.shadowRoot.querySelector(n);if(!_?.shadowRoot)return;_.shadowRoot!==c&&(c=_.shadowRoot,l=!1);let T=0;if(a.widget.widgetType==="buttons"||a.widget.widgetType==="radio"){const m=Array.from(_.shadowRoot.querySelectorAll(o));for(const f of m)if(a.planIds.includes(f.value)){f.disabled||(f.disabled=!0);const v=f.closest("label");v&&v.style.display!=="none"&&(v.style.display="none",T++)}const y=m.filter(f=>!a.planIds.includes(f.value));if(!y.some(f=>f.checked)&&!l&&y.length>0){l=!0;const f=y[0];f.closest("label")?.click(),f.dispatchEvent(new Event("change",{bubbles:!0})),e(`[SUB-GLOBAL-HIDE] Preselected first visible plan input=${f.value}`)}const I=y.find(f=>f.checked)??y[0];
12if(I){const f=Array.from(document.querySelectorAll('input[name="selling_plan"]'));for(const v of f)v.value!==I.value&&(v.value=I.value,e(`[SUB-GLOBAL-HIDE] Mirrored plan id ${I.value} to form selling_plan input`))}}else if(a.widget.widgetType==="dropdown"){const m=_.shadowRoot.querySelector("select");if(!m)return;for(const I of Array.from(m.options))a.planIds.includes(I.value)&&(I.style.display!=="none"&&(I.style.display="none"),I.disabled||(I.disabled=!0),T++);const y=Array.from(m.options).filter(I=>!a.planIds.includes(I.value)),w=y.some(I=>I.value===m.value);y.length>0&&!w&&!l&&(l=!0,m.value=y[0].value,m.dispatchEvent(new Event("change",{bubbles:!0})),e(`[SUB-GLOBAL-HIDE] Preselected first visible option=${y[0].value}`))}T>0&&e(`[SUB-GLOBAL-HIDE] Hidden ${T} B-side plan buttons`)}const u={childList:!0,subtree:!0,characterData:!0};let b=null;function k(C){b?.disconnect(),b=new MutationObserver(()=>p()),b.observe(C,u)}function S(){const C=document.querySelector(r);if(!C?.shadowRoot)return!1;p(),new MutationObserver(()=>{p();const m=C.shadowRoot.querySelector(n);m?.shadowRoot&&k(m.shadowRoot)}).observe(C.shadowRoot,u);const T=C.shadowRoot.querySelector(n);return T?.shadowRoot&&k(T.shadowRoot),!0}if(!S()){e("[SUB-GLOBAL-HIDE] Widget not in DOM yet â waiting via MutationObserver");const C=new MutationObserver(()=>{S()&&C.disconnect()});C.observe(document.body??document.documentElement,{childList:!0,subtree:!0})}}const pe="Limited preview",Ge="Add-to-cart and checkout prices won't reflect this test until it launches â test selling plans are not created in your subscription app until after a test is launched.",je=5e3;function Ke(){const a=document.createElement("div");a.id="shoplift-preview-subscription-warning";const e=document.createElement("span");e.id="shoplift-preview-subscription-warning__icon",e.setAttribute("aria-hidden","true"),e.textContent="!";const t=document.createElement("span");t.id="shoplift-preview-subscription-warning__label",t.textContent=pe;const i=document.createElement("div");i.id="shoplift-preview-subscription-warning__tooltip",i.setAttribute("role","tooltip"),i.textContent=Ge,a.appendChild(e),a.appendChild(t),a.appendChild(i),a.setAttribute("tabindex","0"),a.setAttribute("aria-describedby",i.id),a.setAttribute("aria-label",pe);let s=null;function r(){s!==null&&(clearTimeout(s),s=null)}function n(){i.classList.add("shoplift-preview-subscription-warning__tooltip--visible")}function o(){i.classList.remove("shoplift-preview-subscription-warning__tooltip--visible")}function l(){n(),r(),s=setTimeout(()=>{o(),s=null},je)}function c(){r(),n()}function d(){s===null&&o()}a.addEventListener("mouseenter",c),a.addEventListener("mouseleave",d),a.addEventListener("focus",c),a.addEventListener("blur",d);function p(u){try{const b=u.target;if(!(b instanceof Element))return;(b.closest('form[action*="/cart/add"] button[type="submit"], form[action*="/cart/add"] input[type="submit"]')!==null||b.closest('[name="add"], button[name="add"], [data-add-to-cart], button[data-add-to-cart]')!==null)&&l()}catch{}}document.addEventListener("click",p,!0);function h(){r(),document.removeEventListener("click",p,!0),a.removeEventListener("mouseenter",c),a.removeEventListener("mouseleave",d),a.removeEventListener("focus",c),a.removeEventListener("blur",d),a.remove()}return{root:a,tooltip:i,cleanup:h}}let he=!1;class Je{constructor(e,t,i,s,r,n,o,l,c,d,p,h,u,b=!1){this.shop=e,this.host=t,this.eventHost=i,this.disableReferrerOverride=l,this.logHistory=[],this.legacySessionKey=`SHOPLIFT_SESSION_${this.shop}`,this.cssHideClass=s?"shoplift-hide":"",this.testConfigs=p.map(S=>({...S,startAt:new Date(S.startAt),statusHistory:S.statusHistory.map(C=>({...C,createdAt:new Date(C.createdAt)}))})),this.inactiveTestConfigs=h,this.hiddenSubscriptionPlans=u,this.sendPageView=!!r,this.shopliftDebug=n===!0,this.telemetryEnabled=c===!0,this.geoViaShopify=b===!0,this.gaConfig=o!=={"sendEvents":true,"mode":"gtm"}?o:{sendEvents:!1},this.fetch=window.fetch.bind(window),this.localStorageSet=window.localStorage.setItem.bind(window.localStorage),this.localStorageGet=window.localStorage.getItem.bind(window.localStorage);const k=this.getDeviceType();this.device=k!=="tablet"?k:"mobile",this.state=this.loadState(),this.shopifyAnalyticsId=this.getShopifyAnalyticsId(),this.testsFilteredByAudience=p.filter(S=>
12S.status=="active"),this.getCountryTimeout=d===1000?1e3:d,window.__slReadCookie=S=>{const C=this.getCookie(S);if(C===null)return null;try{return decodeURIComponent(C)}catch{return C}},this.log("State Loaded",JSON.stringify(this.state))}shop;host;eventHost;disableReferrerOverride;DATA_SL_ATTRIBUTE_P="data-sl-attribute-p";DATA_SL_TEST_ID="data-sl-test-id";VIEWPORT_TRACK_THRESHOLD=.5;temporarySessionKey="Shoplift_Session";essentialSessionKey="Shoplift_Essential";analyticsSessionKey="Shoplift_Analytics";priceSelectorsSessionKey="Shoplift_PriceSelectors_v2";legacySessionKey;cssHideClass;testConfigs;inactiveTestConfigs;hiddenSubscriptionPlans;testsFilteredByAudience;sendPageView;shopliftDebug;gaConfig;telemetryEnabled;getCountryTimeout;geoViaShopify;resolvedRegion=null;state;subscriptionPreviewWarningCleanup=null;shopifyAnalyticsId;cookie=document.cookie;isSyncing=!1;isSyncingGA=!1;fetch;localStorageSet;localStorageGet;sessionStorageSet=window.sessionStorage.setItem.bind(window.sessionStorage);sessionStorageGet=window.sessionStorage.getItem.bind(window.sessionStorage);urlParams=new URLSearchParams(window.location.search);device;logHistory;activeViewportObservers=new Map;clientIdRetryCount=0;deriveCategoryFromExistingTests(){if(!this.state.temporary.testCategory&&this.state.essential.visitorTests.length>0){const e=this.state.essential.visitorTests.some(t=>{if(!t.hypothesisId)return!1;const i=this.getHypothesis(t.hypothesisId);return i&&["theme","basicScript","price"].includes(i.type)});this.state.temporary.testCategory=e?"global":"conditional",this.persistTemporaryState(),this.log("Derived test category from existing visitorTests: %s",this.state.temporary.testCategory)}}
12async init(){try{if(this.log("Shoplift script initializing"),window.Shopify&&window.Shopify.designMode){this.log("Skipping script for design mode");return}if(window.location.href.includes("slScreenshot=true")){this.log("Skipping script for screenshot");return}if(window.location.hostname.endsWith(".edgemesh.com")){this.log("Skipping script for preview");return}if(window.location.href.includes("isShopliftMerchant")){const n=this.urlParams.get("isShopliftMerchant")==="true";this.log("Setting merchant session to %s",n),this.state.temporary.isMerchant=n,this.persistTemporaryState()}if(this.state.temporary.isMerchant){this.log("Setting up preview for merchant"),typeof window.shoplift!="object"&&this.setShopliftStub(),this.state.temporary.previewConfig||this.hidePage(),await this.initPreview(),document.querySelector("#sl-preview-bar-hide")?.remove();return}if(this.state.temporary.previewConfig=void 0,ye(navigator.userAgent))return;const e=Date.now(),t=!this.state.temporary.lastSeen||e-this.state.temporary.lastSeen>1800*1e3;(!this.state.temporary.entryPage||t)&&(this.state.temporary.entryPage=ee(window.location.href)),this.state.temporary.lastSeen=e,this.persistTemporaryState(),window.__slEntryPage=this.state.temporary.entryPage??"";const i=this.state.essential.visitorTests.filter(n=>n.hypothesisId&&+n.createdAt>Date.now()-6e4);if(i.length===0)this.sendDiagnosticTelemetry("page-landed",null);else for(const n of i)this.sendDiagnosticTelemetry("page-landed",n.testId,{hypothesisId:n.hypothesisId,isControl:n.assignedTo==="control",testType:n.testType??"unknown"});if(navigator.userAgent.includes("Chrome/118")){this.log("Random: %o",[Math.random(),Math.random(),Math.random()]);const n=await this.makeRequest({url:`${this.eventHost}/api/v0/events/ip`,method:"get"}).then(o=>o?.json());this.log(`IP: ${n}`),this.makeRequest({url:`${this.eventHost}/api/v0/logs`,method:"post",data:JSON.stringify(this.debugState(),X)}).catch()}if(this.shopifyAnalyticsId=this.getShopifyAnalyticsId(),this.monitorConsentChange(),this.checkForThemePreview())return;if(!this.disableReferrerOverride&&this.state.temporary.originalReferrer!=null){this.log(`Overriding referrer from '${document.referrer}' to '${this.state.temporary.originalReferrer}'`);const n=this.state.temporary.originalReferrer;delete this.state.temporary.originalReferrer,this.persistTemporaryState(),Object.defineProperty(document,"referrer",{get:()=>n,enumerable:!0,configurable:!0})}if(await this.refreshVisitor(this.shopifyAnalyticsId),await this.handleVisitorTest()){this.log("Redirecting for visitor test");return}this.setShoplift(),this.showPage(),this.ensureCartAttributesForExistingPriceTests(!1);const r=this.state.essential.visitorTests.some(n=>(n.hypothesisId?this.getHypothesis(n.hypothesisId):void 0)?.subscriptionData!=null)||Object.values(this.state.temporary.testReservations??{}).some(n=>this.getHypothesis(n.hypothesisId)?.subscriptionData!=null);this.hiddenSubscriptionPlans&&!r&&(this.log(`[SUB-GLOBAL] Visitor not in subscription test â hiding ${this.hiddenSubscriptionPlans.planIds.length} B-side plans`),We(this.hiddenSubscriptionPlans,n=>this.log(n))),await this.subscriptionSwap(),await this.subscriptionOneTimePrice(),await this.subscriptionPriceChange(),await this.finalize(),console.log("SHOPLIFT SCRIPT INITIALIZED!")}catch(e){if(e instanceof ie)return;throw e}finally{typeof window.shoplift!="object"&&this.setShopliftStub()}}getVariantColor(e){switch(e){case"a":return{text:"#141414",bg:"#E2E2E2"};case"b":return{text:"rgba(255, 255, 255, 1)",bg:"rgba(37, 99, 235, 1)"}}}getDefaultVariantTitle(e){return e.title?e.title:e.type==="price"?e.isControl?"Original prices":"Variant prices":e.isControl?"Original":"Untitled variant "+e.label.toUpperCase()}async initPreview(){const e=this.urlParams.get("previewConfig");if(e){this.state.temporary.previewConfig=void 0,this.log("Setting up the preview"),this.log("Found preview config, writing to temporary state");const t=await De(e);if(this.state.temporary.previewConfig=t,this.state.temporary.previewConfig.testTypeCategory===M.Price){this.hidePage(!0);const s=this.state.temporary.previewConfig;let r=`${this.host}/api/dom-selectors/${s.storeId}/${s.testId}/${s.isDraft||!1}`;s.shopifyProductId&&(r+=`?productId=${s.shopifyProductId}`);const n=await this.makeJsonRequest({method:"get",url:r}).catch(o=>(this.log("Error getting domSelectors",o),null));
12if(s.variants.forEach(o=>o.domSelectors=n[o.id]?.domSelectors),s.isDraft){const o=`${this.host}/api/dom-selectors/${s.storeId}/${s.testId}/subscription-preview`,l=await this.makeJsonRequest({method:"get",url:o}).catch(c=>(this.log("No subscription preview data for draft (test may not have a subscription widget)",c),null));l?.subscriptionData&&s.variants.forEach(c=>{c.subscriptionData=l.subscriptionData,c.priceData=l.priceData})}}this.persistTemporaryState();const i=new URL(window.location.toString());i.searchParams.delete("previewConfig"),this.queueRedirect(i)}else if(this.state.temporary.previewConfig){this.showPage();const t=this.state.temporary.previewConfig;if(t.testTypeCategory===M.Template&&this.handleTemplatePreview(t)&&this.initPreviewControls(t),t.testTypeCategory===M.UrlRedirect&&this.handleUrlPreview(t)&&this.initPreviewControls(t),t.testTypeCategory===M.Script&&this.handleScriptPreview(t)&&this.initPreviewControls(t),t.testTypeCategory===M.Price){const i=await this.handlePricePreview(t);t.isDraft?await this.handleSubscriptionPricePreview(t):await this.handleSubscriptionLivePreview(t),i&&this.initPreviewControls(t)}}}initPreviewControls(e){document.addEventListener("DOMContentLoaded",()=>{const t=e.variants.find(b=>b.id===e.currentVariant),i=t?.label||"a",s=e.variants,r=document.createElement("div");r.id="shoplift-preview-control";const n=document.createElement("div"),o=document.createElement("img");o.src=Re,o.height=24,o.width=14,n.style.padding="0 16px",n.style.lineHeight="100%",n.appendChild(o),r.appendChild(n);const l=document.createElement("div");l.id="shoplift-preview-variant-selector";const c=document.createElement("button");c.id="shoplift-preview-variant-menu-trigger";const d=document.createElement("div");d.className="menu-variant-label",d.style.backgroundColor=this.getVariantColor(i).bg,d.style.color=this.getVariantColor(i).text,d.innerText=i.toUpperCase(),c.appendChild(d);const p=document.createElement("span");if(p.id="shoplift-preview-variant-title",p.innerText=t?this.getDefaultVariantTitle(t):"Untitled variant "+i.toUpperCase(),c.appendChild(p),s.length>1){const b=document.createElement("img");b.src=_e,b.width=12,b.height=12,b.style.height="12px",b.style.width="12px",c.appendChild(b);const k=document.createElement("div");k.className="preview-variant-menu";for(const S of e.variants.filter(C=>C.id!==e.currentVariant)){const C=document.createElement("div");C.className="preview-variant-menu--item";const _=document.createElement("div");_.className="menu-variant-label",_.style.backgroundColor=this.getVariantColor(S.label).bg,_.style.color=this.getVariantColor(S.label).text,_.style.flexShrink="0",_.innerText=S.label.toUpperCase(),C.appendChild(_);const T=document.createElement("span");T.innerText=this.getDefaultVariantTitle(S),C.appendChild(T),C.addEventListener("click",()=>{this.pickVariant(S.id)}),k.appendChild(C)}l.appendChild(k),c.addEventListener("click",()=>{k.className!=="preview-variant-menu preview-variant-menu__visible"?k.classList.add("preview-variant-menu__visible"):k.classList.remove("preview-variant-menu__visible")}),document.addEventListener("click",S=>{S.target instanceof Element&&!c.contains(S.target)&&k.className==="preview-variant-menu preview-variant-menu__visible"&&k.classList.remove("preview-variant-menu__visible")})}else c.style.pointerEvents="none",d.style.margin="0";if(l.appendChild(c),r.appendChild(l),e.hasSubscription){this.subscriptionPreviewWarningCleanup?.();const b=Ke();r.appendChild(b.root),this.subscriptionPreviewWarningCleanup=b.cleanup}const h=document.createElement("div"),u=document.createElement("button");u.id="shoplift-exit-preview-button",u.innerText="Exit",h.appendChild(u),u.addEventListener("click",()=>{this.exitPreview()}),r.appendChild(h),document.body.appendChild(r),requestAnimationFrame(()=>{r.classList.add("visible")})}),this.ensureCartAttributesForExistingPriceTests(!0)}pickVariant(e){if(this.state.temporary.previewConfig){const t=this.state.temporary.previewConfig,i=new URL(window.location.toString());if(t.testTypeCategory===M.UrlRedirect){const s=t.variants.find(r=>r.id===t.currentVariant)?.redirectUrl;if(i.pathname===s){const r=t.variants.find(n=>n.id===e)?.redirectUrl;r&&(i.pathname=r)}}if(t.testTypeCategory===M.Template){const s=t.variants.find(r=>r.id===t.currentVariant)?.pathName;if(s&&i.pathname===s){const r=t.variants.find(n=>n.id===e)?.pathName;r&&r!==s&&(i.pathname=r)}}t.currentVariant=e,this.persistTemporaryState(),this.queueRedirect(i)}}exitPreview(){const e=new URL(window.location.toString());if(this.state.temporary.previewConfig?.testTypeCategory===M.Template&&e.searchParams.delete("view"),this.state.temporary.previewConfig?.testTypeCategory===M.Script&&e.searchParams.delete("slVariant"),this.state.temporary.previewConfig?.testTypeCategory===M.UrlRedirect){const i=this.state.temporary.previewConfig.variants.filter(r=>!r.isControl&&r.redirectUrl!==null).map(r=>r.redirectUrl),s=this.state.temporary.previewConfig.variants.find(r=>r.label==="a")?.redirectUrl;i.includes(e.pathname)&&s&&(e.pathname=s)}this.state.temporary.isMerchant=!1,e.searchParams.delete("isShopliftMerchant"),this.state.temporary.previewConfig=void 0,this.persistTemporaryState(),this.subscriptionPreviewWarningCleanup?.(),this.subscriptionPreviewWarningCleanup=null,this.hidePage(),this.queueRedirect(e)}handleTemplatePreview(e){const t=e.currentVariant,i=e.variants.find(l=>l.id===t);if(!i)return!1;const s=e.variants.find(l=>l.isControl);if(!s)return!1;this.log("Setting up template preview for type",s.type);
12const r=new URL(window.location.toString()),n=r.searchParams.get("view"),o=i.type===s.type;return!o&&!i.isControl&&template.suffix===s.affix&&this.typeFromTemplate()===s.type&&i.pathName!==null?(this.log("Hit control template type, redirecting to the variant url"),this.hidePage(),r.pathname=i.pathName,this.queueRedirect(r),!0):(!i.isControl&&this.typeFromTemplate()==i.type&&template.suffix===s.affix&&o&&n!==(i.affix||"__DEFAULT__")&&(this.log("Template type and affix match control, updating the view param"),r.searchParams.delete("view"),this.log("Setting the new viewParam to",i.affix||"__DEFAULT__"),this.hidePage(),r.searchParams.set("view",i.affix||"__DEFAULT__"),this.queueRedirect(r)),n!==null&&n!==(i.affix||"__DEFAULT__")&&(r.searchParams.delete("view"),this.hidePage(),this.queueRedirect(r)),!0)}handleUrlPreview(e){const t=e.currentVariant,i=e.variants.find(n=>n.id===t),s=e.variants.find(n=>n.isControl)?.redirectUrl;if(!i)return!1;this.log("Setting up URL redirect preview");const r=new URL(window.location.toString());return r.pathname===s&&!i.isControl&&i.redirectUrl!==null&&(this.log("Url matches control, redirecting"),this.hidePage(),r.pathname=i.redirectUrl,this.queueRedirect(r)),!0}handleScriptPreview(e){const t=e.currentVariant,i=e.variants.find(n=>n.id===t);if(!i)return!1;this.log("Setting up script preview");const s=new URL(window.location.toString());return s.searchParams.get("slVariant")!==i.id&&(this.log("current id doesn't match the variant, redirecting"),s.searchParams.delete("slVariant"),this.log("Setting the new slVariantParam"),this.hidePage(),s.searchParams.set("slVariant",i.id),this.queueRedirect(s)),!0}async handlePricePreview(e){const t=e.currentVariant,i=e.variants.find(s=>s.id===t);return i?(this.log("Setting up price preview"),i.domSelectors&&i.domSelectors.length>0&&(U(document,{testId:e.testId,hypothesisId:i.id,selectors:i.domSelectors}),this.ensureCartAttributesForExistingPriceTests(!0)),!0):!1}async handleSubscriptionPricePreview(e){const t=e.variants.find(i=>i.id===e.currentVariant);t?.subscriptionData&&(this.log("Setting up subscription price preview"),await ze({id:t.id,isControl:t.isControl,subscriptionData:t.subscriptionData,priceData:t.priceData},(i,...s)=>this.log(i,...s)))}async handleSubscriptionLivePreview(e){this.testConfigs.find(s=>s.id===e.testId)?.hypotheses.find(s=>s.id===e.currentVariant)?.subscriptionData&&(this.log("Setting up subscription live preview"),this.subscriptionSwapDone=!1,this.subscriptionOneTimeDone=!1,this.subscriptionPriceDone=!1,await this.subscriptionSwap(),await this.subscriptionOneTimePrice(),await this.subscriptionPriceChange())}async finalize(){const e=await this.getCartState();e!==null&&this.queueCartUpdate(e),this.pruneStateAndSave(),await this.syncAllEvents()}setShoplift(){this.log("Setting up public API");const t=this.urlParams.get("slVariant")==="true",i=t?null:this.urlParams.get("slVariant");window.shoplift={isHypothesisActive:async s=>{if(this.log("Script checking variant for hypothesis '%s'",s),t)return this.log("Forcing variant for hypothesis '%s'",s),!0;if(i!==null)return this.log("Forcing hypothesis '%s'",i),s===i;const r=this.testConfigs.find(o=>o.hypotheses.some(l=>l.id===s));if(!r)return this.log("No test found for hypothesis '%s'",s),!1;const n=this.state.essential.visitorTests.find(o=>o.testId===r.id);return n?(this.log("Active visitor test found",s),n.hypothesisId===s):(await this.manuallySplitVisitor(r),this.testConfigs.some(o=>o.hypotheses.some(l=>l.id===s&&this.state.essential.visitorTests.some(c=>c.hypothesisId===l.id))))},setAnalyticsConsent:async s=>{await this.onConsentChange(s,!0)},getVisitorData:()=>({visitor:this.state.analytics.visitor,visitorTests:this.state.essential.visitorTests.filter(s=>!s.isInvalid).map(s=>{const{shouldSendToGa:r,savedAt:n,...o}=s;return o})})}}setShopliftStub(){this.log("Setting up stubbed public API");const t=this.urlParams.get("slVariant")==="true",i=t?null:this.urlParams.get("slVariant");window.shoplift={isHypothesisActive:s=>Promise.resolve(t||s===i),setAnalyticsConsent:()=>Promise.resolve(),getVisitorData:()=>({visitor:null,visitorTests:[]})}}async manuallySplitVisitor(e){this.log("Starting manual split for test '%s'",e.id),await this.handleVisitorTest([e]);const t=this.getReservationForTest(e.id);t&&!t.isRealized&&t.entryCriteriaKey&&(this.log("Realizing manual API reservation for test '%s'",e.id),this.realizeReservationForCriteria(t.entryCriteriaKey)),this.saveState(),this.syncAllEvents()}async handleVisitorTest(e){await this.filterTestsByAudience(this.testConfigs,this.state.analytics.visitor??this.buildBaseVisitor(),this.state.essential.visitorTests),this.pruneStaleVisitorTests(),this.deriveC
12ategoryFromExistingTests(),this.clearStaleReservations();let t=e?e.filter(i=>this.testsFilteredByAudience.some(s=>s.id===i.id)):[...this.testsForUrl(this.testsFilteredByAudience),...this.domTestsForUrl(this.testsFilteredByAudience)];try{if(t.length===0)return this.log("No tests found"),!1;this.log("Checking for existing visitor test on page");const i=this.getCurrentVisitorHypothesis(t);if(i){this.log("Found current visitor test");const l=this.considerRedirect(i);return l&&(this.log("Redirecting for current visitor test"),this.redirect(i)),l}const s=this.getReservationForCurrentPage();if(s){this.log("Found matching reservation for current page: %s",s.testId);const l=this.getHypothesis(s.hypothesisId);if(l){l.type!=="price"&&this.realizeReservationForCriteria(s.entryCriteriaKey);const c=this.considerRedirect(l);return c&&this.redirect(l),c}}this.log("No active test relation for test page");const r=this.testsForUrl(this.inactiveTestConfigs.filter(l=>this.testIsPaused(l)&&l.hypotheses.some(c=>this.state.essential.visitorTests.some(d=>d.hypothesisId===c.id)))).map(l=>l.id);if(r.length>0)return this.log("Visitor has paused tests for test page, skipping test assignment: %o",r),!1;if(!this.state.temporary.testCategory){const l=this.testsFilteredByAudience.filter(d=>this.isGlobalEntryCriteria(this.getEntryCriteriaKey(d))),c=this.testsFilteredByAudience.filter(d=>!this.isGlobalEntryCriteria(this.getEntryCriteriaKey(d)));if(this.log("Category dice roll - global tests: %o, conditional tests: %o",l.map(d=>({id:d.id,title:d.title,criteria:this.getEntryCriteriaKey(d)})),c.map(d=>({id:d.id,title:d.title,criteria:this.getEntryCriteriaKey(d)}))),l.length>0&&c.length>0){const d=l.length,p=c.length,h=d+p,u=Math.random()*h;this.state.temporary.testCategory=u<d?"global":"conditional",this.log("Category dice roll: rolled %.2f of %d (global weight: %d, conditional weight: %d), selected '%s'",u,h,d,p,this.state.temporary.testCategory)}else l.length>0?(this.state.temporary.testCategory="global",this.log("Only global tests available, setting category to global")):(this.state.temporary.testCategory="conditional",this.log("Only conditional tests available, setting category to conditional"));this.persistTemporaryState()}const n=this.state.temporary.testCategory;if(this.log("Visitor test category: %s",n),n==="global"){const l=this.testsFilteredByAudience.filter(c=>!this.isGlobalEntryCriteria(this.getEntryCriteriaKey(c)));for(const c of l)this.markTestAsBlocked(c,"category:global");t=t.filter(c=>this.isGlobalEntryCriteria(this.getEntryCriteriaKey(c)))}else{const l=this.testsFilteredByAudience.filter(c=>this.isGlobalEntryCriteria(this.getEntryCriteriaKey(c)));for(const c of l)this.markTestAsBlocked(c,"category:conditional");t=t.filter(c=>!this.isGlobalEntryCriteria(this.getEntryCriteriaKey(c)))}if(t.length===0)return this.log("No tests remaining after category filter"),!1;this.createReservations(t);const o=this.getReservationForCurrentPage();if(o&&!o.isRealized){const l=this.getHypothesis(o.hypothesisId);if(l){l.type!=="price"&&this.realizeReservationForCriteria(o.entryCriteriaKey);const c=this.considerRedirect(l);return c&&(this.log("Redirecting for new test"),this.redirect(l)),c}}return!1}finally{this.includeInDomTests(),this.saveState()}}includeInDomTests(){this.applyControlForAudienceFilteredPriceTests();const e=this.getDomTestsForCurrentUrl(),t=this.getVisitorDomHypothesis(e);for(const i of e){this.log("Evaluating dom test '%s'",i.id);const s=i.hypotheses.some(u=>u.type==="price");if(this.state.essential.visitorTests.find(u=>u.testId===i.id&&u.isInvalid&&!u.hypothesisId)){if(this.log("Visitor is blocked from test '%s', applying control prices if price test",i.id),s){const u=i.hypotheses.find(b=>b.isControl);u?.priceData&&(this.applyPriceTestWithMapLookup(i.id,u,[u],()=>{this.log("Control prices applied for blocked visitor, no metrics tracked")}),this.updatePriceTestHiddenInputs(i.id,"control",!1))}continue}const n=this.getReservationForTest(i.id);let o=null,l=!1;const c=t.find(u=>i.hypotheses.some(b=>u.id===b.id));if(n)o=this.getHypothesis(n.hypothesisId)??null,this.log("Using reserved hypothesis '%s' for test '%s'",n.hypothesisId,i.id);else if(c)o=c,this.log("Using existing hypothesis assignment for test '%s'",i.id);else if(s){const u=this.visitorActiveTestTypeWithReservations();u?(l=!0,this.log("Visitor already in test type '%s', treating as non-test for price test '%s'",u,i.id)):o=this.pickHypothesis(i)}else o=this.pickHypothesis(i);if(l&&s){const u=i.hypotheses.find(b=>b.isControl);u?.priceData&&(this.log("Applying control prices for non-test visitor on price test '%s' (Map-based)",i.id),this.applyPriceTestWithMapLookup(i.id,u,[u],()=>{this.log("Control prices applied for non-test visitor, no metrics tracked")}
12),this.updatePriceTestHiddenInputs(i.id,"control",!1));continue}if(!o){this.log("Failed to pick hypothesis for test");continue}this.sendDiagnosticTelemetry("assignment",i.id,{hypothesisId:o.id,isControl:o.isControl,testType:o.type});const d=i.bayesianRevision??4,p=o.type==="price",h=d>=5;if(p&&h){if(this.log(`Price test with Map-based lookup (v${d}): ${i.id}`),!o.priceData){this.log("No price data for hypothesis '%s', skipping",o.id);continue}const u=o.isControl?"control":"variant";this.log(`Setting up Map-based price test for ${u} (test: ${i.id})`),this.applyPriceTestWithMapLookup(i.id,o,i.hypotheses,b=>{const k=this.getReservationForTest(b);k&&!k.isRealized&&k.entryCriteriaKey?this.realizeReservationForCriteria(k.entryCriteriaKey):this.queueAddVisitorToTest(b,o),this.saveState(),this.queuePageView(window.location.pathname),this.syncAllEvents()});continue}if(p&&!h){this.log(`Price test without viewport tracking (v${d}): ${i.id}`);const u=this.getDomSelectorsForHypothesis(o);if(u.length===0)continue;U(document,{testId:i.id,hypothesisId:o.id,selectors:u},b=>{this.queueAddVisitorToTest(b,o),this.saveState(),this.queuePageView(window.location.pathname),this.syncAllEvents()});continue}if(!o.domSelectors||o.domSelectors.length===0){this.log("No selectors found, skipping hypothesis");continue}U(document,{testId:i.id,hypothesisId:o.id,selectors:o.domSelectors},u=>{this.queueAddVisitorToTest(u,o),this.saveState(),this.queuePageView(window.location.pathname),this.syncAllEvents()})}}considerRedirect(e){if(this.log("Considering redirect for hypothesis '%s'",e.id),e.isControl)return this.log("Skipping redirect for control"),!1;if(e.type==="basicScript"||e.type==="manualScript")return this.log("Skipping redirect for script test"),!1;const t=this.state.essential.visitorTests.find(n=>n.hypothesisId===e.id),i=new URL(window.location.toString()),r=new URLSearchParams(window.location.search).get("view");if(e.type==="theme"){if(!(e.themeId===themeId)){if(this.log("Theme id '%s' is not hypothesis theme ID '%s'",e.themeId,themeId),this.isAppProxyPath())return this.log("On App Proxy path, skipping theme redirect to avoid infinite loop"),!1;if(t&&t.themeId!==e.themeId&&(t.themeId===themeId||!this.isThemePreview()))this.log("On old theme, redirecting and updating local visitor"),t.themeId=e.themeId;else if(this.isThemePreview())return this.log("On non-test theme, skipping redirect"),!1;return this.log("Hiding page to redirect for theme test"),this.hidePage(),!0}return!1}else if(e.type!=="dom"&&e.type!=="price"&&e.affix!==template.suffix&&e.affix!==r||e.redirectPath&&!i.pathname.endsWith(e.redirectPath))return this.log("Hiding page to redirect for template test"),this.hidePage(),!0;return this.log("Not redirecting"),!1}redirect(e){if(this.log("Redirecting to hypothesis '%s'",e.id),e.isControl)return;const t=new URL(window.location.toString());if(t.searchParams.delete("view"),e.redirectPath){const n=RegExp("^(/w{2}-w{2})/").exec(t.pathname);if(n&&n.length>1){const o=n[1];t.pathname=`${o}${e.redirectPath}`}else t.pathname=e.redirectPath}else e.type==="theme"?(t.searchParams.set("_ab","0"),t.searchParams.set("_fd","0"),t.searchParams.set("_sc","1"),t.searchParams.set("preview_theme_id",e.themeId.toString())):e.type!=="urlRedirect"&&t.searchParams.set("view",e.affix);const i=this.state.essential.visitorTests.find(n=>n.hypothesisId===e.id)?.testId,s=t.pathname+t.search,r=window.location.pathname+window.location.search;if(i&&s!==r){const n=$e(),o=Me({v:2,t:i,n,fh:Le(window.location.pathname+window.location.search)});t.hash=`slr-${n}`;const l=new Date(Date.now()+3e4).toUTCString();document.cookie=`shoplift_redirect=${o};domain=.${window.location.hostname};path=/;SameSite=Strict;expires=${l}`}this.queueRedirect(t)}async refreshVisitor(e){if(e===null||!this.state.essential.isFirstLoad||!this.testConfigs.some(i=>i.visitorOption!=="all"))return;this.log("Refreshing visitor"),this.hidePage();const t=await this.getVisitor(e);t&&t.id&&this.updateLocalVisitor(t)}buildBaseVisitor(){return{shopifyAnalyticsId:this.shopifyAnalyticsId,device:this.device,country:null,...this.state.essential.initialState}}getInitialState(){const e=this.getUTMValue("utm_source")??"",t=this.getUTMValue("utm_medium")??"",i=this.getUTMValue("utm_campaign")??"",s=this.getUTMValue("utm_content")??"",r=window.document.referrer,n=this.device;return{createdAt:new Date,utmSource:e,utmMedium:t,utmCampaign:i,utmContent:s,referrer:r,device:n}}checkForThemePreview(){return this.log("Checking for theme preview"),window.location.hostname.endsWith(".shopifypreview.com")?(this.log("on shopify preview domain"),this.clearThemeBar(!0,!1,this.state),document.querySelector("#sl-preview-bar-hide")?.remove(),!1):this.isThemePreview()?this.state.essential.visitorTests.some(e=>e.isThemeTest&&e.hypothesisId!=null&&this.getHypothesis(e.hypothesisId)&&e.themeId===themeId)?(this.log("On active theme test, remov
12ing theme bar"),this.clearThemeBar(!1,!0,this.state),!1):this.state.essential.visitorTests.some(e=>e.isThemeTest&&e.hypothesisId!=null&&!this.getHypothesis(e.hypothesisId)&&e.themeId===themeId)?(this.log("Visitor is on an inactive theme test, redirecting to main theme"),this.redirectToMainTheme(),!0):this.state.essential.isFirstLoad?(this.log("No visitor found on theme preview, redirecting to main theme"),this.redirectToMainTheme(),!0):this.inactiveTestConfigs.some(e=>e.hypotheses.some(t=>t.themeId===themeId))?(this.log("Current theme is an inactive theme test, redirecting to main theme"),this.redirectToMainTheme(),!0):this.testConfigs.some(e=>e.hypotheses.some(t=>t.themeId===themeId))?(this.log("Falling back to clearing theme bar"),this.clearThemeBar(!1,!0,this.state),!1):(this.log("No tests on current theme, skipping script"),this.clearThemeBar(!0,!1,this.state),document.querySelector("#sl-preview-bar-hide")?.remove(),!0):(this.log("Not on theme preview"),this.clearThemeBar(!0,!1,this.state),!1)}redirectToMainTheme(){this.hidePage();const e=new URL(window.location.toString());e.searchParams.set("preview_theme_id",""),this.queueRedirect(e)}testsForUrl(e){const t=new URL(window.location.href),i=this.typeFromTemplate();return e.filter(s=>s.hypotheses.some(r=>r.type!=="dom"&&r.type!=="price"&&(r.isControl&&r.type===i&&r.affix===template.suffix||r.type==="theme"||r.isControl&&r.type==="urlRedirect"&&r.redirectPath&&t.pathname.endsWith(r.redirectPath)||r.type==="basicScript"))&&(s.ignoreTestViewParameterEnforcement||!t.searchParams.has("view")||s.hypotheses.map(r=>r.affix).includes(t.searchParams.get("view")??"")))}domTestsForUrl(e){const t=new URL(window.location.href);return e.filter(i=>i.hypotheses.some(s=>s.type!=="dom"&&s.type!=="price"?!1:s.type==="price"&&s.priceData&&s.priceData.variants.length>0?!0:s.domSelectors&&s.domSelectors.some(r=>new RegExp(se(r)).test(ee(t.toString())))))}async filterTestsByAudience(e,t,i){const s=[],r=e.some(o=>(o.requiresRegion||this.geoViaShopify&&o.requiresCountry)&&!i.some(l=>l.testId===o.id));this.resolvedRegion===null&&r&&(this.log("Hiding page to wait for Shopify region resolution"),this.hidePage(),await this.waitForResolvedRegion()),window.__slRegion=this.resolvedRegion??"";let n=t.country;this.geoViaShopify?n=this.resolvedRegion?this.resolvedRegion.slice(0,2):n:!n&&e.some(o=>o.requiresCountry&&!i.some(l=>l.testId===o.id))&&(this.log("Hiding page to check geoip"),this.hidePage(),n=await this.makeJsonRequest({method:"get",url:`${this.eventHost}/api/v0/visitors/get-country`,signal:AbortSignal.timeout(this.getCountryTimeout)}).catch(o=>(this.log("Error getting country",o),null)));for(const o of e){if(this.log("Checking audience for test '%s'",o.id),this.state.essential.visitorTests.some(d=>d.testId===o.id&&d.hypothesisId==null)){console.log(`Skipping blocked test '${o.id}'`);continue}const l=this.visitorCreatedDuringTestActive(o.statusHistory);(i.some(d=>d.testId===o.id&&(o.device==="all"||o.device===t.device&&o.device===this.device))||this.isTargetAudience(o,t,l,n))&&(this.log("Visitor is in audience for test '%s'",o.id),s.push(o))}this.testsFilteredByAudience=s}async waitForResolvedRegion(e=1500,t=50){const i=Date.now();for(;this.resolvedRegion===null&&Date.now()-i<e;)await new Promise(s=>window.setTimeout(s,t))}isTargetAudience(e,t,i,s){const r=this.getChannel(t);return(e.device==="all"||e.device===t.device&&e.device===this.device)&&(e.visitorOption==="all"||e.visitorOption==="new"&&i||e.visitorOption==="returning"&&!i)&&(e.targetAudiences.length===0||e.targetAudiences.reduce((n,o)=>n||o.reduce((l,c)=>l&&c(t,i,r,s),!0),!1))}visitorCreatedDuringTestActive(e){let t="";for(const i of e){if(this.state.analytics.visitor!==null&&this.state.analytics.visitor.createdAt<i.createdAt||this.state.essential.initialState.createdAt<i.createdAt)break;t=i.status}return t==="active"}getDomTestsForCurrentUrl(){return this.domTestsForUrl(this.testsFilteredByAudience)}getCurrentVisitorHypothesis(e){return e.flatMap(t=>t.hypotheses).find(t=>t.type!=="dom"&&t.type!=="price"&&this.state.essential.visitorTests.some(i=>i.hypothesisId===t.id))}getVisitorDomHypothesis(e){return e.flatMap(t=>t.hypotheses).filter(t=>(t.type==="dom"||t.type==="price")&&this.state.essential.visitorTests.some(i=>i.hypothesisId===t.id))}getHypothesis(e){return this.testConfigs.filter(t=>t.hypotheses.some(i=>i.id===e)).map(t=>t.hypotheses.find(i=>i.id===e))[0]}getActiveAssignment(){if(this.state.temporary.isMerchant&&this.state.temporary.previewConfig){const t=this.state.temporary.previewConfig;return t.currentVariant&&t.testId?{testId:t.testId,hypothesisId:t.currentVariant}:null}const e=this.state.essential.visitorTests.find(t=>t.hypothesisId);return e?.hypothesisId?{testId:e.testId,hypothesisId:e.hypothesisId}:null}findActiveSubscriptionTestControl(){for(const e of this.testConfigs){const t=e.hypotheses.find(i=>i.isControl);if(t?.subscriptionData)return{testId:e.id,hypothesis:t}}return null}getDomSelectorsForHypothesis(e){if(!e)return[];if(e.domSelectors&&e.domSelectors.length>0)return e.domSelectors;if(e.priceData){const t=`${this.priceSelectorsSessionKey}_${e.id}`;try{const s=sessionStorage.getItem(t);if(s){const r=JSON.parse(s);return e.domSelectors=r,this.log("Loaded %d price selectors from cache for hypothesis '%s'",r.length,e.id),r}}catch{}const i=Oe(e.priceData);e.domSelectors=i;try{sessionStorage.setItem(t,JSON.stringify(i)),this.log("Generated and cached %d price selectors for hypothesis '%s'",i.length,e.id)}catch{this.log("Generated %d price selectors for hypothesis '%s' (cache unavailable)",i.length,e.id)}return i}return[]}hasThemeTest(e){return e.some(t=>t.hypotheses.some(i=>i.type==="theme"))}hasTestThatIsNotThemeTest(e){return e.some(t=>t.hypotheses.some(i=>i.type!=="theme"&&i.type!=="dom"&&i.type!=="price"))}hasThemeAndOtherTestTypes(e){return this.hasThemeTest(e)&&this.hasTestThatIsNotThemeTest(e)}testIsPaused(e){return e.status==="paused"||e.status==="incompatible"||e.status==="suspended"}visitorActiveTestType(){const e=this.state.essential.visitorTests.filter(t=>this.testConfigs.some(i=>i.hypotheses.some(s=>s.id==t.hypothesisId)));return e.length===0?null:e.some(t=>t.isThemeTest)?"theme":"templateOrUrlRedirect"}getReservationType(e){return e==="price"||this.isTemplateTestType(e)?"deferred":"immediate"}isTemplateTestType(e){return["product","collection","landing","index","cart","search","blog","article","collectionList"].includes(e)}getEntryCriteriaKey(e){const t=e.hypotheses.find(i=>i.isControl);if(!t)return`unknown:${e.id}`;switch(t.type){case"theme":return"global:theme";case"basicScript":return"global:autoApi";case"price":return"global:price";case"manualScript":return`conditional:manualApi:${e.id}`;case"urlRedirect":return`conditional:url:${t.redirectPath||"unknown"}`;default:return`conditional:template:${t.type}`}}isGlobalEntryCriteria(e){return e.startsWith("global:")}groupTestsByEntryCriteria(e){const t=new Map;for(const i of e){const s=this.getEntryCriteriaKey(i),r=t.get(s)||[];r.push(i),t.set(s,r)}return t}doesCurrentPageMatchEntryCriteria(e){if(this.isGlobalEntryCriteria(e))return!0;
12if(e==="conditional:manualApi")return!1;if(e.startsWith("conditional:url:")){const t=e.replace("conditional:url:","");return window.location.pathname.endsWith(t)}if(e.startsWith("conditional:template:")){const t=e.replace("conditional:template:","");return this.typeFromTemplate()===t}return!1}hasActiveReservation(){const e=this.getActiveReservations();return Object.values(e).some(t=>!t.isRealized)}getActiveReservation(){const e=this.getActiveReservations();return Object.values(e).find(t=>!t.isRealized)??null}clearStaleReservations(){const e=this.state.temporary.testReservations;if(!e)return;let t=!1;for(const[i,s]of Object.entries(e)){const r=this.testConfigs.find(o=>o.id===s.testId);if(!r){this.log("Test '%s' no longer in config, clearing reservation for criteria '%s'",s.testId,i),delete e[i],t=!0;continue}if(r.status!=="active"){this.log("Test '%s' status is '%s', clearing reservation for criteria '%s'",s.testId,r.status,i),delete e[i],t=!0;continue}this.testsFilteredByAudience.some(o=>o.id===s.testId)||(this.log("Visitor no longer passes audience for test '%s', clearing reservation for criteria '%s'",s.testId,i),delete e[i],t=!0)}t&&this.persistTemporaryState()}createReservations(e){if(this.state.temporary.testReservations||(this.state.temporary.testReservations={}),this.state.temporary.rolledEntryCriteria||(this.state.temporary.rolledEntryCriteria=[]),this.state.temporary.testCategory==="global"){this.createSingleReservation(e,"global");return}const i=e.filter(o=>this.doesCurrentPageMatchEntryCriteria(this.getEntryCriteriaKey(o))),s=e.filter(o=>!this.doesCurrentPageMatchEntryCriteria(this.getEntryCriteriaKey(o)));this.log("Conditional tests split - matching current page: %d, not matching: %d",i.length,s.length),i.length>0&&this.log("Tests matching current page (same pool): %o",i.map(o=>({id:o.id,title:o.title,criteria:this.getEntryCriteriaKey(o)})));const r=`conditional:current-page:${this.typeFromTemplate()}`;if(i.length>0&&!this.state.temporary.rolledEntryCriteria.includes(r)){this.createSingleReservation(i,r);for(const o of i){const l=this.getEntryCriteriaKey(o);this.state.temporary.rolledEntryCriteria.includes(l)||this.state.temporary.rolledEntryCriteria.push(l)}}const n=this.groupTestsByEntryCriteria(s);for(const[o,l]of n){if(this.state.temporary.rolledEntryCriteria.includes(o)){this.log("Already rolled for criteria '%s', skipping",o);continue}if(l.some(S=>this.state.essential.visitorTests.some(C=>C.testId===S.id))){this.log("Visitor already has VT for criteria '%s', skipping",o),this.state.temporary.rolledEntryCriteria.push(o);continue}const d=[...l].sort((S,C)=>S.id.localeCompare(C.id));this.log("Test dice roll for criteria '%s' - available tests: %o",o,d.map(S=>({id:S.id,title:S.title})));const p=Math.floor(Math.random()*d.length),h=d[p];this.log("Test dice roll: picked index %d of %d, selected test '%s' (%s)",p+1,l.length,h.id,h.title);const u=this.pickHypothesis(h);if(!u){this.log("No hypothesis picked for test '%s'",h.id);continue}this.sendDiagnosticTelemetry("assignment",h.id,{hypothesisId:u.id,isControl:u.isControl,testType:u.type});const b=this.getReservationType(u.type),k={testId:h.id,hypothesisId:u.id,testType:u.type,reservationType:b,isThemeTest:u.type==="theme",themeId:u.themeId,createdAt:new Date,isRealized:!1,entryCriteriaKey:o};this.state.temporary.testReservations[o]=k,this.state.temporary.rolledEntryCriteria.push(o),this.log("Created %s reservation for test '%s' (criteria: %s)",b,h.id,o);for(const S of l)S.id!==h.id&&this.markTestAsBlocked(S,o)}this.persistTemporaryState()}createSingleReservation(e,t){if(this.state.temporary.rolledEntryCriteria.includes(t)){this.log("Already rolled for pool '%s', skipping",t);return}if(e.some(p=>this.state.essential.visitorTests.some(h=>h.testId===p.id&&!h.isInvalid))){this.log("Visitor already has VT for pool '%s', skipping",t),this.state.temporary.rolledEntryCriteria.push(t);return}if(e.length===0){this.log("No tests in pool '%s'",t);return}const s=[...e].sort((p,h)=>p.id.localeCompare(h.id));this.log("Test dice roll for pool '%s' - available tests: %o",t,s.map(p=>({id:p.id,title:p.title,criteria:this.getEntryCriteriaKey(p)})));const r=Math.floor(Math.random()*s.length),n=s[r];this.log("Test dice roll: picked index %d of %d, selected test '%s' (%s)",r,e.length,n.id,n.title);const o=this.pickHypothesis(n);if(!o){this.log("No hypothesis picked for test '%s'",n.id);return}this.sendDiagnosticTelemetry("assignment",n.id,{hypothesisId:o.id,isControl:o.isControl,testType:o.type});const l=this.getReservationType(o.type),c=this.getEntryCriteriaKey(n),d={testId:n.id,hypothesisId:o.id,testType:o.type,reservationType:l,isThemeTest:o.type==="theme",themeId:o.themeId,createdAt:new Date,isRealized:!1,entryCriteriaKey:c};this.state.temporary.testReservations[c]=d,this.state.temporary.rolledEntryCriteria.push(t),this.log("Created %s reservation for test '%s' from pool '%s' (criteria: %s)",l,n.id,t,c);for(const p of e)p.id!==n.id&&this.markTestAsBlocked(p,`pool:${t}`);this.persistTemporaryState()}markTestAsBlocked(e,t){this.state.essential.visitorTests.some(i=>i.testId===e.id)||(this.log("Blocking visitor from test '%s' (reason: %s)",e.id,t),this.state.essential.visitorTests.push({createdAt:new Date,testId:e.id,hypothesisId:null,isThemeTest:e.hypotheses.some(i=>
12i.type==="theme"),shouldSendToGa:!1,isSaved:!0,isInvalid:!0,themeId:void 0}))}realizeReservationForCriteria(e){const t=this.state.temporary.testReservations?.[e];if(!t)return this.log("No reservation found for criteria '%s'",e),!1;if(t.isRealized)return this.log("Reservation already realized for criteria '%s'",e),!1;if(this.state.essential.visitorTests.some(s=>s.testId===t.testId&&!s.isInvalid))return this.log("Visitor already assigned to test '%s'",t.testId),!1;const i=this.getHypothesis(t.hypothesisId);return i?(t.isRealized=!0,this.persistTemporaryState(),this.queueAddVisitorToTest(t.testId,i),this.saveState(),this.log("Realized reservation for test '%s' (criteria: %s)",t.testId,e),!0):(this.log("Hypothesis '%s' not found",t.hypothesisId),!1)}getActiveReservations(){return this.state.temporary.testReservations??{}}getReservationForCurrentPage(){const e=this.getActiveReservations();for(const[t,i]of Object.entries(e)){if(i.isRealized)continue;const s=this.testConfigs.find(r=>r.id===i.testId);if(!(!s||s.status!=="active")&&this.doesCurrentPageMatchEntryCriteria(t))return i}return null}getReservationForTest(e){const t=this.getActiveReservations();return Object.values(t).find(i=>i.testId===e)??null}getReservationTestType(){const e=this.getActiveReservations(),t=Object.values(e);if(t.length===0)return null;for(const i of t)if(i.isThemeTest)return"theme";for(const i of t)if(i.testType==="price")return"price";return t.some(i=>!i.isRealized)?"templateOrUrlRedirect":null}hasPriceTests(e){return e.some(t=>t.hypotheses.some(i=>i.type==="price"))}_priceTestProductIds=null;getPriceTestProductIds(){if(this._priceTestProductIds)return this._priceTestProductIds;const e=new Set;for(const t of this.testConfigs)for(const i of t.hypotheses)if(i.type==="price"){for(const s of i.domSelectors||[]){const r=s.cssSelector.match(/data-sl-attribute-(?:p|cap)="(\d+)"/);r?.[1]&&e.add(r[1])}if(i.priceData?.variants)for(const[s]of i.priceData.variants)e.add(s)}return this._priceTestProductIds=e,this.log("Built price test product ID cache with %d products",e.size),e}isProductInAnyPriceTest(e){return this.getPriceTestProductIds().has(e)}visitorActiveTestTypeWithReservations(){const e=this.getActiveReservations();for(const r of Object.values(e)){if(r.isThemeTest)return"theme";if(r.testType==="price")return"price"}if(Object.values(e).some(r=>!r.isRealized)){if(this.state.temporary.testCategory==="global")for(const n of Object.values(e)){if(n.testType==="theme")return"theme";if(n.testType==="price")return"price";if(n.testType==="basicScript")return"theme"}return"templateOrUrlRedirect"}const i=this.state.essential.visitorTests.filter(r=>!r.isInvalid&&this.testConfigs.some(n=>n.hypotheses.some(o=>o.id===r.hypothesisId)));return i.length===0?null:i.some(r=>this.getHypothesis(r.hypothesisId)?.type==="price")?"price":i.some(r=>r.isThemeTest)?"theme":"templateOrUrlRedirect"}applyControlForAudienceFilteredPriceTests(){const e=this.testConfigs.filter(s=>s.status==="active"&&s.hypotheses.some(r=>r.type==="price"));if(e.length===0)return;const t=this.testsFilteredByAudience.filter(s=>s.hypotheses.some(r=>r.type==="price")),i=e.filter(s=>!t.some(r=>r.id===s.id));if(i.length!==0){this.log("Found %d price tests filtered by audience, applying control selectors",i.length);for(const s of i){const r=s.hypotheses.find(c=>c.isControl),n=this.getDomSelectorsForHypothesis(r);if(n.length===0){this.log("No control selectors for audience-filtered price test '%s'",s.id);continue}const o=new URL(window.location.href);n.some(c=>{try{return new RegExp(se(c)).test(ee(o.toString()))}catch{return!1}})&&(this.log("Applying control selectors for audience-filtered price test '%s'",s.id),U(document,{testId:s.id,hypothesisId:r.id,selectors:n},()=>{}),this.updatePriceTestHiddenInputs(s.id,"control",!1))}}}pickHypothesis(e){let t=Math.random();const i=e.hypotheses.reduce((r,n)=>r+n.visitorCount,0);return e.hypotheses.sort((r,n)=>r.isControl?n.isControl?0:-1:n.isControl?1:0).reduce((r,n)=>{if(r!==null)return r;const l=e.hypotheses.reduce((c,d)=>c&&d.visitorCount>20,!0)?n.visitorCount/i-n.trafficPercentage:0;return t<=n.trafficPercentage-l?n:(t-=n.trafficPercentage-l,null)},null)}typeFromTemplate(){switch(template.type){case"list-collections":return"collectionList";case"page":return"landing";case"article":case"blog":case"cart":case"collection":case"index":case"product":case"search":return template.type;default:return null}}queueRedirect(e){this.saveState(),this.disableReferrerOverride||(this.log(`Saving temporary referrer override '${document.referrer}'`),this.state.temporary.originalReferrer=document.referrer,this.persistTemporaryState()),window.setTimeout(()=>window.location.assign(e),0),window.setTimeout(()=>{this.syncAllEvents()},2e3)}scheduleRetrySync(){this.clientIdRetryCount>=5||(this.clientIdRetryCount++,window.setTimeout(()=>{this.syncAllEvents()},500))}async syncAllEvents(){const e=async()=>
12{if(this.isSyncing){window.setTimeout(()=>{(async()=>await e())()},500);return}try{if(this.isSyncing=!0,this.syncGAEvents(),this.shopifyAnalyticsId||(this.shopifyAnalyticsId=this.getShopifyAnalyticsId()),!this.shopifyAnalyticsId){this.scheduleRetrySync();return}await this.syncEvents()}finally{this.isSyncing=!1}};await e()}async syncEvents(){if(!this.state.essential.consentApproved||!this.shopifyAnalyticsId||this.state.analytics.queue.length===0)return;const e=this.state.analytics.queue.length,t=this.state.analytics.queue.splice(0,e);this.log("Syncing %s events",e);try{const i={shop:this.shop,visitorDetails:{shopifyAnalyticsId:this.shopifyAnalyticsId,device:this.state.analytics.visitor?.device??this.device,country:this.state.analytics.visitor?.country??null,...this.state.essential.initialState},events:this.state.essential.visitorTests.filter(r=>!r.isInvalid&&!r.isSaved&&r.hypothesisId!=null).map(r=>new ve(r.testId,r.hypothesisId,r.createdAt)).concat(t)};await this.sendEvents(i);for(const r of this.state.essential.visitorTests.filter(n=>!n.isInvalid&&!n.isSaved&&n.hypothesisId!=null))this.sendDiagnosticTelemetry("event-delivered",r.testId,{hypothesisId:r.hypothesisId,isControl:r.assignedTo==="control",testType:r.testType??"unknown"});const s=await this.getVisitor(this.shopifyAnalyticsId);s!==null&&this.updateLocalVisitor(s);for(const r of this.state.essential.visitorTests.filter(n=>!n.isInvalid&&!n.isSaved))r.isSaved=!0,r.savedAt=Date.now()}catch{this.state.analytics.queue.splice(0,0,...t)}finally{this.saveState()}}syncGAEvents(){if(!this.gaConfig.sendEvents){if(he)return;he=!0,this.log("UseGtag is false â skipping GA Events");return}if(this.isSyncingGA){this.log("Already syncing GA - skipping GA events");return}const e=this.state.essential.visitorTests.filter(t=>t.shouldSendToGa);e.length!==0&&(this.isSyncingGA=!0,this.log("Syncing %s GA Events",e.length),Promise.allSettled(e.map(t=>this.sendGAEvent(t))).then(()=>this.log("All gtag events sent")).finally(()=>this.isSyncingGA=!1))}sendGAEvent(e){return new Promise(t=>{this.log("Sending GA Event for test %s, hypothesis %s",e.testId,e.hypothesisId);const i=()=>{this.log("GA acknowledged event for hypothesis %s",e.hypothesisId),e.shouldSendToGa=!1,this.persistEssentialState(),t()},s={exp_variant_string:`SL-${e.testId}-${e.hypothesisId}`};
12this.shopliftDebug&&Object.assign(s,{debug_mode:!0});function r(n,o,l){window.dataLayer=window.dataLayer||[],window.dataLayer.push(arguments)}this.gaConfig.mode==="gtag"?r("event","experience_impression",{...s,event_callback:i}):(window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"experience_impression",...s,eventCallback:i}))})}updateLocalVisitor(e){let t;({visitorTests:t,...this.state.analytics.visitor}=e),this.log("updateLocalVisitor - server returned %d tests: %o",t.length,t.map(s=>({testId:s.testId,hypothesisId:s.hypothesisId,isInvalid:s.isInvalid}))),this.log("updateLocalVisitor - local has %d tests: %o",this.state.essential.visitorTests.length,this.state.essential.visitorTests.map(s=>({testId:s.testId,hypothesisId:s.hypothesisId,isSaved:s.isSaved,isInvalid:s.isInvalid})));const i=300*1e3;for(const s of this.state.essential.visitorTests.filter(r=>r.isSaved&&(!r.savedAt||Date.now()-r.savedAt>i)&&!t.some(n=>n.testId===r.testId)))this.log("updateLocalVisitor - marking LOCAL test as INVALID (isSaved && not in server): testId=%s, hypothesisId=%s",s.testId,s.hypothesisId),s.isInvalid=!0;for(const s of t){const r=this.state.essential.visitorTests.findIndex(o=>o.testId===s.testId);if(!(r!==-1))this.log("updateLocalVisitor - ADDING server test (not found locally): testId=%s, hypothesisId=%s",s.testId,s.hypothesisId),this.state.essential.visitorTests.push(s);else{const o=this.state.essential.visitorTests.at(r);this.log("updateLocalVisitor - REPLACING local test with server test: testId=%s, local hypothesisId=%s -> server hypothesisId=%s, local isInvalid=%s -> false",s.testId,o?.hypothesisId,s.hypothesisId,o?.isInvalid),s.isInvalid=!1,s.shouldSendToGa=o?.shouldSendToGa??!1,s.testType=o?.testType,s.assignedTo=o?.assignedTo,s.testTitle=o?.testTitle,this.state.essential.visitorTests.splice(r,1,s)}}this.log("updateLocalVisitor - FINAL local tests: %o",this.state.essential.visitorTests.map(s=>({testId:s.testId,hypothesisId:s.hypothesisId,isSaved:s.isSaved,isInvalid:s.isInvalid}))),this.state.analytics.visitor.storedAt=new Date}async getVisitor(e){try{return await this.makeJsonRequest({method:"get",url:`${this.eventHost}/api/v0/visitors/by-key/${this.shop}/${e}`})}catch{return null}}async sendEvents(e){await this.makeRequest({method:"post",url:`${this.eventHost}/api/v0/events`,data:JSON.stringify(e)})}sendDiagnosticTelemetry(e,t,i){if(!this.telemetryEnabled||!navigator.sendBeacon)return;const s=this.state.essential.consentApproved,r=JSON.stringify({shop:this.shop,testId:t,checkpoint:e,device:this.device,...s?{visitorId:this.shopifyAnalyticsId??"unknown"}:{},clientTimestamp:Date.now(),consentApproved:s,hasConsentInteraction:this.state.essential.hasConsentInteraction,...i});navigator.sendBeacon(`${this.eventHost}/api/v0/telemetry`,new Blob([r],{type:"text/plain"}))}getUTMValue(e){const i=decodeURIComponent(window.location.search.substring(1)).split("&");for(let s=0;s<i.length;s++){const r=i[s].split("=");if(r[0]===e)return r[1]||null}return null}hidePage(e){this.log("Hiding page"),this.cssHideClass&&!window.document.documentElement.classList.contains(this.cssHideClass)&&(window.document.documentElement.classList.add(this.cssHideClass),e||setTimeout(this.removeAsyncHide(this.cssHideClass),2e3))}showPage(){this.cssHideClass&&this.removeAsyncHide(this.cssHideClass)()}getDeviceType(){function e(){let i=!1;return(function(s){(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(s)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|
12sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(s.substr(0,4)))&&(i=!0)})(navigator.userAgent||navigator.vendor),i}function t(){let i=!1;return(function(s){(/android|ipad|playbook|silk/i.test(s)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(s.substr(0,4)))&&(i=!0)})(navigator.userAgent||navigator.vendor),i}return e()?"mobile":t()?"tablet":"desktop"}removeAsyncHide(e){return()=>{e&&window.document.documentElement.classList.remove(e)}}async getCartState(){try{let e=await this.makeJsonRequest({method:"get",url:`${window.location.origin}/cart.js`});return e===null||(e.note===null&&(e=await this.makeJsonRequest({method:"post",url:`${window.location.origin}/cart/update.js`,data:JSON.stringify({note:""})})),e==null)?null:{token:e.token,total_price:e.total_price,total_discount:e.total_discount,currency:e.currency,items_subtotal_price:e.items_subtotal_price,items:e.items.map(t=>({quantity:t.quantity,variant_id:t.variant_id,key:t.key,price:t.price,final_line_price:t.final_line_price,sku:t.sku,product_id:t.product_id}))}}catch(e){return this.log("Error sending cart info",e),null}}ensureCartAttributesForExistingPriceTests(e){try{if(this.log("Checking visitor assignments for active price tests"),e&&this.state.temporary.previewConfig){const t=this.state.temporary.previewConfig;this.log("Using preview config for merchant:",t.testId);let i="variant";if(t.variants&&t.variants.length>0){const s=t.variants.find(r=>r.id===t.currentVariant);s&&s.isControl&&(i="control")}this.log("Merchant preview - updating hidden inputs:",t.testId,i),this.updatePriceTestHiddenInputs(t.testId,i,!0);return}for(const t of this.state.essential.visitorTests){const i=this.testConfigs.find(n=>n.id===t.testId);if(!i){this.log("Test config not found:",t.testId);continue}const s=i.hypotheses.find(n=>n.id===t.hypothesisId);if(!s||s.type!=="price")continue;const r=s.isControl?"control":"variant";this.log("Updating hidden inputs for price test:",t.testId,r),this.updatePriceTestHiddenInputs(t.testId,r,e)}}catch(t){this.log("Error ensuring cart attributes for existing price tests:",t)}}subscriptionSwapDone=!1;subscriptionHideWrongPlans=null;subscriptionPriceDone=!1;subscriptionUpdateOneTime=null;subscriptionOneTimeDone=!1;swapMap=null;slptValue=null;async subscriptionSwap(){await He(this)}async subscriptionPriceChange(){await Fe(this)}async subscriptionOneTimePrice(){await Be(this)}
12updatePriceTestHiddenInputs(e,t,i){try{this.cleanupPriceTestObservers();const s=`${e}:${t}:${i?"t":"f"}`,r=T=>{const m=T.getAttribute("data-sl-pid");if(!m)return!0;if(i&&this.state.temporary.previewConfig){const w=this.state.temporary.previewConfig,I=t==="control"?"a":"b",f=w.variants.find(v=>v.label===I);if(!f)return!1;for(const v of f.domSelectors||[]){const g=v.cssSelector.match(/data-sl-attribute-(?:p|cap)="(\d+)"/);if(g){const P=g[1];if(this.log(`Extracted ID from selector: ${P}, comparing to: ${m}`),P===m)return this.log("Product ID match found in preview config:",m,"variant:",f.label),!0}else this.log(`Could not extract ID from selector: ${v.cssSelector}`)}return this.log("No product ID match in preview config for:",m,"variant:",I),!1}const y=this.testConfigs.find(w=>w.id===e);if(!y)return this.log("Test config not found for testId:",e),!1;for(const w of y.hypotheses||[]){for(const I of w.domSelectors||[]){const f=I.cssSelector.match(/data-sl-attribute-(?:p|cap)="(\d+)"/);if(f&&f[1]===m)return this.log("Product ID match found in domSelectors:",m,"for test:",e),!0}if(w.priceData?.variants){for(const I of w.priceData.variants)if(I[0]===m)return this.log("Product ID match found in priceData:",m,"for test:",e),!0}}return this.log("No product ID match for:",m,"in test:",e),!1},n=new Set;let o=!1,l=null;const c=(T,m)=>{if(document.querySelectorAll("[data-sl-attribute-p]").forEach(w=>{if(w instanceof Element&&w.nodeType===Node.ELEMENT_NODE&&w.isConnected&&document.contains(w))try{T.observe(w,{childList:!0,subtree:!0,characterData:!0,characterDataOldValue:!0,attributes:!1})}catch(I){this.log(`Failed to observe element (${m}):`,I)}}),document.body&&document.body.isConnected)try{T.observe(document.body,{childList:!0,subtree:!0,characterData:!0,characterDataOldValue:!0,attributes:!1})}catch(w){this.log(`Failed to observe document.body (${m}):`,w)}},d=(T,m,y,w)=>{const I=T.filter(f=>{const v=f.cssSelector.match(/data-sl-attribute-(?:p|cap)="(\d+)"/);return v&&v[1]===w});this.log(`Applying ${y} DOM selectors, total: ${T.length}, filtered: ${I.length}`),I.length>0&&U(document,{testId:e,hypothesisId:m,selectors:I})},p=(T,m)=>{this.log(`Applying DOM selector changes for product ID: ${T}`),m.disconnect(),o=!0;try{if(i&&this.state.temporary.previewConfig){const y=t==="control"?"a":"b",w=this.state.temporary.previewConfig.variants.find(I=>I.label===y);if(!w?.domSelectors){this.log(`No DOM selectors found for preview variant: ${y}`);return}d(w.domSelectors,w.id,"preview config",T)}else{const y=this.testConfigs.find(I=>I.id===e);if(!y){this.log(`No test config found for testId: ${e}`);return}const w=y.hypotheses.find(I=>t==="control"?I.isControl:!I.isControl);if(!w?.domSelectors){this.log(`No DOM selectors found for assignment: ${t}`);return}d(w.domSelectors,w.id,"live config",T)}}finally{l!==null&&clearTimeout(l),l=window.setTimeout(()=>{o=!1,l=null,c(m,"reconnection"),this.log("Re-established innerHTML observer after DOM changes")},50)}},h=new MutationObserver(T=>{if(!o)for(const m of T){if(m.type!=="childList"&&m.type!=="characterData")continue;let y=m.target;m.type==="characterData"&&(y=m.target.parentElement||m.target.parentNode);let w=y,I=w.getAttribute("data-sl-attribute-p");for(;!I&&w.parentElement;)w=w.parentElement,I=w.getAttribute("data-sl-attribute-p");if(!I)continue;const f=w.innerHTML||w.textContent||"";let v="";m.type==="characterData"&&m.oldValue!==null&&(v=m.oldValue),this.log(`innerHTML changed on element with data-sl-attribute-p="${I}"`),v&&this.log(`Previous content: "${v}"`),this.log(`Current content: "${f}"`),p(I,h)}});c(h,"initial setup"),n.add(h);const u=new MutationObserver(T=>{T.forEach(m=>{m.addedNodes.forEach(y=>{if(y.nodeType===Node.ELEMENT_NODE){const w=y;k(w);const I=w.matches('input[name="properties[_slpt]"]')?[w]:w.querySelectorAll('input[name="properties[_slpt]"]');I.length>0&&this.log(`MutationObserver found ${I.length} new hidden input(s)`),I.forEach(f=>{const v=f.getAttribute("data-sl-pid");if(this.log(`MutationObserver checking new input with data-sl-pid="${v}"`),r(f))f.value!==s&&(f.value=s,this.log("Updated newly added hidden input:",s)),S(f);else{const g=f.getAttribute("data-sl-pid");g&&this.isProductInAnyPriceTest(g)?this.log("Preserving hidden input for product ID '%s' - belongs to a different price test",g):(f.remove(),this.log("Removed newly added non-matching hidden input for product ID:",g))}})}})})});n.add(u);const b=new MutationObserver(T=>{T.forEach(m=>{if(m.type==="attributes"&&m.attributeName==="data-sl-pid"){const y=m.target;if(this.log("AttributeObserver detected data-sl-pid attribute change on:",y.tagName),y.matches('input[name="properties[_slpt]"]')){const w=y,I=m.oldValue,f=w.getAttribute("data-sl-pid");this.log(`data-sl-pid changed from "${I}" to "${f}" - triggering payment placement updates`),r(w)?(w.value!==s&&(w.value=s,this.log("Updated hidden input after data-sl-pid change:",s)),f&&p(f,h),this.log("Re-running payment placement updates after variant change"),k(document.body)):f&&this.isProductInAnyPriceTest(f)?this.log("Preserving hidden input for product ID '%s' - belongs to a different price test",f):(w.remove(),this.log("Removed non-matching hidden input after data-sl-pid change:",f))}}})});n.add(b);const k=T=>{T.tagName==="SHOPIFY-PAYMENT-TERMS"&&(this.log("MutationObserver found new shopify-payment-terms element"),this.updateShopifyPaymentTerms(e,t));const m=T.querySelectorAll("shopify-payment-terms");m.length>0&&(this.log(`MutationObserver found ${m.length}
12 shopify-payment-terms in added node`),this.updateShopifyPaymentTerms(e,t)),T.tagName==="AFTERPAY-PLACEMENT"&&(this.log("MutationObserver found new afterpay-placement element"),this.updateAfterpayPlacements(e,t,"afterpay"));const y=T.querySelectorAll("afterpay-placement");y.length>0&&(this.log(`MutationObserver found ${y.length} afterpay-placement in added node`),this.updateAfterpayPlacements(e,t,"afterpay")),T.tagName==="SQUARE-PLACEMENT"&&(this.log("MutationObserver found new square-placement element"),this.updateAfterpayPlacements(e,t,"square"));const w=T.querySelectorAll("square-placement");w.length>0&&(this.log(`MutationObserver found ${w.length} square-placement in added node`),this.updateAfterpayPlacements(e,t,"square")),T.tagName==="KLARNA-PLACEMENT"&&(this.log("MutationObserver found new klarna-placement element"),this.updateKlarnaPlacements(e,t));const I=T.querySelectorAll("klarna-placement");I.length>0&&(this.log(`MutationObserver found ${I.length} klarna-placement in added node`),this.updateKlarnaPlacements(e,t))},S=T=>{b.observe(T,{attributes:!0,attributeFilter:["data-sl-pid"],attributeOldValue:!0,subtree:!1});const m=T.getAttribute("data-sl-pid");this.log(`Started AttributeObserver on specific input with data-sl-pid="${m}"`)},C=()=>{const T=document.querySelectorAll('input[name="properties[_slpt]"]');this.log(`Found ${T.length} existing hidden inputs to check`),T.forEach(m=>{const y=m.getAttribute("data-sl-pid");this.log(`Checking existing input with data-sl-pid="${y}"`),r(m)?(m.value=s,this.log("Updated existing hidden input:",s),y&&(this.log("Applying initial DOM selector changes for existing product"),p(y,h)),S(m)):y&&this.isProductInAnyPriceTest(y)?this.log("Preserving hidden input for product ID '%s' - belongs to a different price test",y):(m.remove(),this.log("Removed non-matching hidden input for product ID:",y))})},_=()=>{document.body?(u.observe(document.body,{childList:!0,subtree:!0}),this.log("Started MutationObserver on document.body"),C(),k(document.body)):document.readyState==="loading"?document.addEventListener("DOMContentLoaded",()=>{document.body&&(u.observe(document.body,{childList:!0,subtree:!0}),this.log("Started MutationObserver after DOMContentLoaded"),C(),k(document.body))}):(this.log("Set timeout on observer"),setTimeout(_,10))};_(),window.__shopliftPriceTestObservers=n,window.__shopliftPriceTestValue=s,this.log("Set up DOM observer for price test hidden inputs")}catch(s){this.log("Error updating price test hidden inputs:",s)}}updateKlarnaPlacements(e,t){this.updatePlacementElements(e,t,"klarna-placement",(i,s)=>{i.setAttribute("data-purchase-amount",s.toString())})}cleanupPriceTestObservers(){const e=window.__shopliftPriceTestObservers;e&&(e.forEach(t=>{t.disconnect()}),e.clear(),this.log("Cleaned up existing price test observers")),delete window.__shopliftPriceTestObservers,delete window.__shopliftPriceTestValue}updateAfterpayPlacements(e,t,i="afterpay"){const s=i==="square"?"square-placement":"afterpay-placement";if(document.querySelectorAll(s).length===0){this.log(`No ${s} elements found on page - early return`);return}this.updatePlacementElements(e,t,s,(n,o)=>{if(i==="afterpay"){const l=(o/100).toFixed(2);n.setAttribute("data-amount",l)}else n.setAttribute("data-amount",o.toString())}),this.log("updateAfterpayPlacements completed")}updatePlacementElements(e,t,i,s){const r=document.querySelectorAll(i);if(r.length===0){this.log(`No ${i} elements found - early return`);return}let n;if(this.state.temporary.isMerchant&&this.state.temporary.previewConfig){const l=t==="control"?"a":"b",c=this.state.temporary.previewConfig.variants.find(d=>d.label===l);if(!c?.domSelectors){this.log(`No variant found for label ${l} in preview config for ${i}`);return}n=c.domSelectors,this.log(`Using preview config for ${i} in merchant mode, variant: ${l}`)}else{const l=this.testConfigs.find(d=>d.id===e);if(!l){this.log(`No testConfig found for id: ${e} - early return`);return}
12const c=l.hypotheses.find(d=>t==="control"?d.isControl:!d.isControl);if(!c?.domSelectors){this.log(`No hypothesis or domSelectors found for assignment: ${t} - early return`);return}n=c.domSelectors}const o=new RegExp(`${this.DATA_SL_ATTRIBUTE_P}=["'](\\d+)["']`);r.forEach(l=>{let c=null;const d=l.parentElement;if(d&&(c=d.querySelector('input[name="properties[_slpt]"]')),c||(c=l.querySelector('input[name="properties[_slpt]"]')),!c){this.log(`No hidden input found for ${i} element`);return}const p=c.getAttribute("data-sl-pid");if(!p){this.log("Hidden input has no data-sl-pid attribute - skipping");return}const h=n.find(S=>{const C=S.cssSelector.match(o);return C&&C[1]===p});if(!h){this.log(`No matching selector found for productId: ${p} - skipping element`);return}const u=h.actions.find(S=>S.scope==="price");if(!u?.value){this.log("No price action or value found - skipping element");return}const b=parseFloat(u.value.replace(/[^0-9.]/g,""));if(Number.isNaN(b)){this.log(`Invalid price "${u.value}" for product ${p} - skipping`);return}const k=Math.round(b*100);s(l,k)}),this.log(`updatePlacementElements completed for ${i}`)}updateShopifyPaymentTerms(e,t){const i=document.querySelectorAll("shopify-payment-terms");if(i.length===0)return;this.log("Store using shopify payments");let s;if(this.state.temporary.isMerchant&&this.state.temporary.previewConfig){const n=t==="control"?"a":"b",o=this.state.temporary.previewConfig.variants.find(l=>l.label===n);if(!o||!o.domSelectors){this.log(`No variant found for label ${n} in preview config`);return}s=o.domSelectors,this.log(`Using preview config for shopify-payment-terms in merchant mode, variant: ${n}`)}else{const n=this.testConfigs.find(l=>l.id===e);if(!n)return;const o=n.hypotheses.find(l=>t==="control"?l.isControl===!0:l.isControl===!1);if(!o||!o.domSelectors)return;s=o.domSelectors}const r=new RegExp(`${this.DATA_SL_ATTRIBUTE_P}=["'](\\d+)["']`);i.forEach(n=>{const o=n.getAttribute("variant-id");if(!o)return;const l=s.find(c=>{const d=c.cssSelector.match(r);return d&&d[1]===o});if(l){const c=l.actions.find(d=>d.scope==="price");if(c&&c.value){const d=n.getAttribute("shopify-meta");if(d)try{const p=JSON.parse(d);if(p.variants&&Array.isArray(p.variants)){const h=p.variants.find(u=>u.id?.toString()===o);if(h){h.full_price=c.value;const u=parseFloat(c.value.replace(/[^0-9.]/g,""));if(h.number_of_payment_terms&&h.number_of_payment_terms>1){const b=u/h.number_of_payment_terms;h.price_per_term=`$${b.toFixed(2)}`}n.setAttribute("shopify-meta",JSON.stringify(p))}}}catch(p){this.log("Error parsing/updating shoplift-meta:",p)}}}})}async makeJsonRequest(e){const t=await this.makeRequest(e);return t===null?null:JSON.parse(await t.text(),F)}async makeRequest(e){const{url:t,method:i,headers:s,data:r,signal:n}=e,o=new Headers;if(s)for(const c in s)o.append(c,s[c]);(!s||!s.Accept)&&o.append("Accept","application/json"),(!s||!s["Content-Type"])&&o.append("Content-Type","application/json"),(this.eventHost.includes("ngrok.io")||this.eventHost.includes("ngrok-free.app"))&&o.append("ngrok-skip-browser-warning","1234");const l=await this.fetch(t,{method:i,headers:o,body:r,signal:n});if(!l.ok){if(l.status===204)return null;if(l.status===422){const c=await l.json();if(typeof c<"u"&&c.isBot)throw new ie}throw new Error(`Error sending shoplift request ${l.status}`)}return l}queueAddVisitorToTest(e,t){if(this.state.essential.visitorTests.some(s=>s.testId===e))return;const i=this.testConfigs.find(s=>s.id===e);if(this.state.essential.visitorTests.push({createdAt:new Date,testId:e,hypothesisId:t.id,isThemeTest:t.type==="theme",themeId:t.themeId,isSaved:!1,isInvalid:!1,shouldSendToGa:!0,testType:t.type,assignedTo:t.isControl?"control":"variant",testTitle:i?.title}),t.type==="price"){const s=t.isControl?"control":"variant";this.log("Price test assignment detected, updating cart attributes:",e,s),this.updatePriceTestHiddenInputs(e,s,!1)}}queueCartUpdate(e){this.queueEvent(new be(e))}queuePageView(e){this.queueEvent(new we(e))}queueEvent(e){!this.state.essential.consentApproved&&this.state.essential.hasConsentInteraction||this.state.analytics.queue.length>10||this.state.analytics.queue.push(e)}legacyGetLocalStorageVisitor(){const e=this.localStorageGet(this.legacySessionKey);if(e)try{return JSON.parse(e,F)}catch{}return null}pruneStaleVisitorTests(){this.state.essential.visitorTests=this.state.essential.visitorTests.filter(e=>this.testConfigs.some(t=>t.id==e.testId)||this.inactiveTestConfigs.filter(t=>this.testIsPaused(t)).some(t=>t.id===e.testId))}pruneStateAndSave(){this.pruneStaleVisitorTests(),this.saveState()}saveState(){this.persistEssentialState(),this.persistAnalyticsState()}loadState(){const e=this.loadAnalyticsState(),t={analytics:e,essential:this.loadEssentialState(e),temporary:this.loadTemporaryState()},i=this.legacyGetLocalStorageVisitor(),s=this.legacyGetCookieVisitor(),r=[i,s].filter(n=>n!==null).sort((n,o)=>+o.storedAt-+n.storedAt)[0];return t.analytics.visitor===null&&r&&({visitorTests:t.essential.visitorTests,...t.analytics.visitor}=r,t.essential.isFirstLoad=!1,t.essential.initialState={createdAt:r.createdAt,referrer:r.referrer,utmCampaign:r.utmCampaign,utmContent:r.utmContent,utmMedium:r.utmMedium,utmSource:r.utmSource,device:r.device},this.deleteCookie("SHOPLIFT"),this.deleteLocalStorage(this.legacySessionKey)),!t.essential.consentApproved&&t.essential.hasConsentInteraction&&this.deleteLocalStorage(this.analyticsSessionKey),t}loadEssentialState(e){const t=this.loadLocalStorage(this.essentialSessionKey),i=this.loadCookie(this.essentialSessionKey),s=this.getInitialState();e.visitor?.device&&(s.device=e.visitor.device);const r={timestamp:new Date,consentApproved:!1,hasConsentInteraction:!1,debugMode:!1,initialState:s,visitorTests:[],isFirstLoad:!0},n=[t,i].filter(o=>o!==null).sort((o,l)=>+l.timestamp-+o.timestamp)[0]??r;return n.initialState||(e.visitor!==null?n.initialState=e.visitor:(n.initialState=s,n.initialState.createdAt=n.timestamp)),n}loadAnalyticsState(){const e=this.loadLocalStorage(this.analyticsSessionKey),t=this.loadCookie(this.analyticsSessionKey),i={timestamp:new Date,visitor:null,queue:[]},s=[e,t].filter(r=>r!==null).sort((r,n)=>+n.timestamp-+r.timestamp)[0]??i;return s.queue.length===0&&e&&e.queue.length>1&&(s.queue=e.queue),s}loadTemporaryState(){const e=this.sessionStorageGet(this.temporarySessionKey),t=e?JSON.parse(e,F):null,i=this.loadCookie(this.temporarySessionKey);return t??i??{isMerchant:!1,timestamp:new Date}}persistEssentialState(){this.log("Persisting essential state"),this.state.essential.isFirstLoad=!1,this.state.essential.timestamp=new Date,this.persistLocalStorageState(this.essentialSessionKey,this.state.essential),this.persist
12CookieState(this.essentialSessionKey,this.state.essential)}persistAnalyticsState(){this.log("Persisting analytics state"),this.state.essential.consentApproved&&(this.state.analytics.timestamp=new Date,this.persistLocalStorageState(this.analyticsSessionKey,this.state.analytics),this.persistCookieState(this.analyticsSessionKey,{...this.state.analytics,queue:[]}))}persistTemporaryState(){this.log("Setting temporary session state"),this.state.temporary.timestamp=new Date,this.sessionStorageSet(this.temporarySessionKey,JSON.stringify(this.state.temporary)),this.persistCookieState(this.temporarySessionKey,this.state.temporary,!0)}loadLocalStorage(e){const t=this.localStorageGet(e);if(t===null)return null;try{return JSON.parse(t,F)}catch{return null}}loadCookie(e){const t=this.getCookie(e);if(t===null)return null;try{return JSON.parse(t,F)}catch{return null}}persistLocalStorageState(e,t){this.localStorageSet(e,JSON.stringify(t))}persistCookieState(e,t,i=!1){const s=JSON.stringify(t),r=i?"":`expires=${new Date(new Date().getTime()+864e5*365).toUTCString()};`;document.cookie=`${e}=${s};domain=.${window.location.hostname};path=/;SameSite=Strict;${r}`}deleteCookie(e){const t=new Date(0).toUTCString();document.cookie=`${e}=;domain=.${window.location.hostname};path=/;expires=${t};`}deleteLocalStorage(e){window.localStorage.removeItem(e)}getChannel(e){return[{"name":"cross-network","test":(v) => new RegExp(".*cross-network.*", "i").test(v.utmCampaign)},{"name":"direct","test":(v) => v.utmSource === "" && v.utmMedium === ""},{"name":"paid-shopping","test":(v) => (new RegExp("^(?:Google|IGShopping|aax-us-east\.amazon-adsystem\.com|aax\.amazon-adsystem\.com|alibaba|alibaba\.com|amazon|amazon\.co\.uk|amazon\.com|apps\.shopify\.com|checkout\.shopify\.com|checkout\.stripe\.com|cr\.shopping\.naver\.com|cr2\.shopping\.naver\.com|ebay|ebay\.co\.uk|ebay\.com|ebay\.com\.au|ebay\.de|etsy|etsy\.com|m\.alibaba\.com|m\.shopping\.naver\.com|mercadolibre|mercadolibre\.com|mercadolibre\.com\.ar|mercadolibre\.com\.mx|message\.alibaba\.com|msearch\.shopping\.naver\.com|nl\.shopping\.net|no\.shopping\.net|offer\.alibaba\.com|one\.walmart\.com|order\.shopping\.yahoo\.co\.jp|partners\.shopify\.com|s3\.amazonaws\.com|se\.shopping\.net|shop\.app|shopify|shopify\.com|shopping\.naver\.com|shopping\.yahoo\.co\.jp|shopping\.yahoo\.com|shopzilla|shopzilla\.com|simplycodes\.com|store\.shopping\.yahoo\.co\.jp|stripe|stripe\.com|uk\.shopping\.net|walmart|walmart\.com)$", "i").test(v.utmSource) || new RegExp("^(.*(([^a-df-z]|^)shop|shopping).*)$", "i").test(v.utmCampaign)) && new RegExp("^(.*cp.*|ppc|retargeting|paid.*)$", "i").test(v.utmMedium)},{"name":"paid-search","test":(v) => new RegExp("^(?:360\.cn|alice|aol|ar\.search\.yahoo\.com|ask|at\.search\.yahoo\.com|au\.search\.yahoo\.com|auone|avg|babylon|baidu|biglobe|biglobe\.co\.jp|biglobe\.ne\.jp|bing|br\.search\.yahoo\.com|ca\.search\.yahoo\.com|centrum\.cz|ch\.search\.yahoo\.com|cl\.search\.yahoo\.com|cn\.bing\.com|cnn|co\.search\.yahoo\.com|comcast|conduit|daum|daum\.net|de\.search\.yahoo\.com|dk\.search\.yahoo\.com|dogpile|dogpile\.com|duckduckgo|ecosia\.org|email\.seznam\.cz|eniro|es\.search\.yahoo\.com|espanol\.search\.yahoo\.com|exalead\.com|excite\.com|fi\.search\.yahoo\.com|firmy\.cz|fr\.search\.yahoo\.com|globo|go\.mail\.ru|google|google-play|hk\.search\.yahoo\.com|id\.search\.yahoo\.com|in\.search\.yahoo\.com|incredimail|it\.search\.yahoo\.com|kvasir|lens\.google\.com|lite\.qwant\.com|lycos|m\.baidu\.com|m\.naver\.com|m\.search\.naver\.com|m\.sogou\.com|mail\.rambler\.ru|mail\.yandex\.ru|malaysia\.search\.yahoo\.com|msn|msn\.com|mx\.search\.yahoo\.com|najdi|naver|naver\.com|news\.google\.com|nl\.search\.yahoo\.com|no\.search\.yahoo\.com|ntp\.msn\.com|nz\.search\.yahoo\.com|onet|onet\.pl|pe\.search\.yahoo\.com|ph\.search\.yahoo\.com|pl\.search\.yahoo\.com|play\.google\.com|qwant|qwant\.com|rakuten|rakuten\.co\.jp|rambler|rambler\.ru|se\.search\.yahoo\.com|search-results|search\.aol\.co\.uk|search\.aol\.com|search\.google\.com|search\.smt\.docomo\.ne\.jp|search\.ukr\.net|secureurl\.ukr\.net|seznam|seznam\.cz|sg\.search\.yahoo\.com|so\.com|sogou|sogou\.com|sp-web\.search\.auone\.jp|startsiden|startsiden\.no|suche\.aol\.de|terra|th\.search\.yahoo\.com|tr\.search\.yahoo\.com|tut\.by|tw\.search\.yahoo\.com|uk\.search\.yahoo\.com|ukr|us\.search\.yahoo\.com|virgilio|vn\.search\.yahoo\.com|wap\.sogou\.com|webmaster\.yandex\.ru|websearch\.rakuten\.co\.jp|yahoo|yahoo\.co\.jp|yahoo\.com|yandex|yandex\.by|yandex\.com|yandex\.com\.tr|yandex\.fr|yandex\.kz|yandex\.ru|yandex\.ua|y
12andex\.uz|zen\.yandex\.ru)$", "i").test(v.utmSource) && new RegExp("^(.*cp.*|ppc|retargeting|paid.*)$", "i").test(v.utmMedium)},{"name":"paid-social","test":(v) => new RegExp("^(?:43things|43things\.com|51\.com|5ch\.net|Hatena|ImageShack|academia\.edu|activerain|activerain\.com|activeworlds|activeworlds\.com|addthis|addthis\.com|airg\.ca|allnurses\.com|allrecipes\.com|alumniclass|alumniclass\.com|ameba\.jp|ameblo\.jp|americantowns|americantowns\.com|amp\.reddit\.com|ancestry\.com|anobii|anobii\.com|answerbag|answerbag\.com|answers\.yahoo\.com|aolanswers|aolanswers\.com|apps\.facebook\.com|ar\.pinterest\.com|artstation\.com|askubuntu|askubuntu\.com|asmallworld\.com|athlinks|athlinks\.com|away\.vk\.com|awe\.sm|b\.hatena\.ne\.jp|baby-gaga|baby-gaga\.com|babyblog\.ru|badoo|badoo\.com|bebo|bebo\.com|beforeitsnews|beforeitsnews\.com|bharatstudent|bharatstudent\.com|biip\.no|biswap\.org|bit\.ly|blackcareernetwork\.com|blackplanet|blackplanet\.com|blip\.fm|blog\.com|blog\.feedspot\.com|blog\.goo\.ne\.jp|blog\.naver\.com|blog\.yahoo\.co\.jp|blogg\.no|bloggang\.com|blogger|blogger\.com|blogher|blogher\.com|bloglines|bloglines\.com|blogs\.com|blogsome|blogsome\.com|blogspot|blogspot\.com|blogster|blogster\.com|blurtit|blurtit\.com|bookmarks\.yahoo\.co\.jp|bookmarks\.yahoo\.com|br\.pinterest\.com|brightkite|brightkite\.com|brizzly|brizzly\.com|business\.facebook\.com|buzzfeed|buzzfeed\.com|buzznet|buzznet\.com|cafe\.naver\.com|cafemom|cafemom\.com|camospace|camospace\.com|canalblog\.com|care\.com|care2|care2\.com|caringbridge\.org|catster|catster\.com|cbnt\.io|cellufun|cellufun\.com|centerblog\.net|chat\.zalo\.me|chegg\.com|chicagonow|chicagonow\.com|chiebukuro\.yahoo\.co\.jp|classmates|classmates\.com|classquest|classquest\.com|co\.pinterest\.com|cocolog-nifty|cocolog-nifty\.com|copainsdavant\.linternaute\.com|couchsurfing\.org|cozycot|cozycot\.com|cross\.tv|crunchyroll|crunchyroll\.com|cyworld|cyworld\.com|cz\.pinterest\.com|d\.hatena\.ne\.jp|dailystrength\.org|deluxe\.com|deviantart|deviantart\.com|dianping|dianping\.com|digg|digg\.com|diigo|diigo\.com|discover\.hubpages\.com|disqus|disqus\.com|dogster|dogster\.com|dol2day|dol2day\.com|doostang|doostang\.com|dopplr|dopplr\.com|douban|douban\.com|draft\.blogger\.com|draugiem\.lv|drugs-forum|drugs-forum\.com|dzone|dzone\.com|edublogs\.org|elftown|elftown\.com|epicurious\.com|everforo\.com|exblog\.jp|extole|extole\.com|facebook|facebook\.com|faceparty|faceparty\.com|fandom\.com|fanpop|fanpop\.com|fark|fark\.com|fb|fb\.me|fc2|fc2\.com|feedspot|feministing|feministing\.com|filmaffinity|filmaffinity\.com|flickr|flickr\.com|flipboard|flipboard\.com|folkdirect|folkdirect\.com|foodservice|foodservice\.com|forums\.androidcentral\.com|forums\.crackberry\.com|forums\.imore\.com|forums\.nexopia\.com|forums\.webosnation\.com|forums\.wpcentral\.com|fotki|fotki\.com|fotolog|fotolog\.com|foursquare|foursquare\.com|free\.facebook\.com|friendfeed|friendfeed\.com|fruehstueckstreff\.org|fubar|fubar\.com|gaiaonline|gaiaonline\.com|gamerdna|gamerdna\.com|gather\.com|geni\.com|getpocket\.com|glassboard|glassboard\.com|glassdoor|glassdoor\.com|godtube|godtube\.com|goldenline\.pl|goldstar|goldstar\.com|goo\.gl|gooblog|goodreads|goodreads\.com|google\+|googlegroups\.com|googleplus|govloop|govloop\.com|gowalla|gowalla\.com|gree\.jp|groups\.google\.com|gulli\.com|gutefrage\.net|habbo|habbo\.com|hi5|hi5\.com|hootsuite|hootsuite\.com|houzz|houzz\.com|hoverspot|hoverspot\.com|hr\.com|hu\.pinterest\.com|hubculture|hubculture\.com|hubpages\.com|hyves\.net|hyves\.nl|ibibo|ibibo\.com|id\.pinterest\.com|identi\.ca|ig|imageshack\.com|imageshack\.us|imvu|imvu\.com|in\.pinterest\.com|insanejournal|insanejournal\.com|instagram|instagram\.com|instapaper|instapaper\.com|internations\.org|interpals\.net|intherooms|intherooms\.com|irc-galleria\.net|is\.gd|italki|italki\.com|jammerdirect|jammerdirect\.com|jappy\.com|jappy\.de|kaboodle\.com|kakao|kakao\.com|kakaocorp\.com|kaneva|kaneva\.com|kin\.naver\.com|l\.facebook\.com|l\.instagram\.com|l\.messenger\.com|last\.fm|librarything|librarything\.com|lifestream\.aol\.com|line|line\.me|linkedin|linkedin\.com|listal|listal\.com|listography|listography\.com|livedoor\.com|livedoorblog|livejournal|livejournal\.com|lm\.facebook\.com|lnkd\.in|m\.blog\.naver\.com|m\.cafe\.naver\.com|m\.facebook\.com|m\.kin\.naver\.com|m\.vk\.com|m\.yelp\.com|mbga\.jp|medium\.com|meetin\.org|meetup|meetup\.com|meinvz\.net|meneame\.net|menuism\.com|messages\.google\.com|messages\.yahoo\.co\.jp|messenger|messenger\.com|mix\.com|mixi\.jp|mobile\.facebook\.com|mocospace|mocospace\.com|mouthshut|mouthshut\.com|movabletype|movabletype\.com|mubi|mubi\.com|my\.o
12pera\.com|myanimelist\.net|myheritage|myheritage\.com|mylife|mylife\.com|mymodernmet|mymodernmet\.com|myspace|myspace\.com|netvibes|netvibes\.com|news\.ycombinator\.com|newsshowcase|nexopia|ngopost\.org|niconico|nicovideo\.jp|nightlifelink|nightlifelink\.com|ning|ning\.com|nl\.pinterest\.com|odnoklassniki\.ru|odnoklassniki\.ua|okwave\.jp|old\.reddit\.com|oneworldgroup\.org|onstartups|onstartups\.com|opendiary|opendiary\.com|oshiete\.goo\.ne\.jp|out\.reddit\.com|over-blog\.com|overblog\.com|paper\.li|partyflock\.nl|photobucket|photobucket\.com|pinboard|pinboard\.in|pingsta|pingsta\.com|pinterest|pinterest\.at|pinterest\.ca|pinterest\.ch|pinterest\.cl|pinterest\.co\.kr|pinterest\.co\.uk|pinterest\.com|pinterest\.com\.au|pinterest\.com\.mx|pinterest\.de|pinterest\.es|pinterest\.fr|pinterest\.it|pinterest\.jp|pinterest\.nz|pinterest\.ph|pinterest\.pt|pinterest\.ru|pinterest\.se|pixiv\.net|pl\.pinterest\.com|playahead\.se|plurk|plurk\.com|plus\.google\.com|plus\.url\.google\.com|pocket\.co|posterous|posterous\.com|pro\.homeadvisor\.com|pulse\.yahoo\.com|qapacity|qapacity\.com|quechup|quechup\.com|quora|quora\.com|qzone\.qq\.com|ravelry|ravelry\.com|reddit|reddit\.com|redux|redux\.com|renren|renren\.com|researchgate\.net|reunion|reunion\.com|reverbnation|reverbnation\.com|rtl\.de|ryze|ryze\.com|salespider|salespider\.com|scoop\.it|screenrant|screenrant\.com|scribd|scribd\.com|scvngr|scvngr\.com|secondlife|secondlife\.com|serverfault|serverfault\.com|shareit|sharethis|sharethis\.com|shvoong\.com|sites\.google\.com|skype|skyrock|skyrock\.com|slashdot\.org|slideshare\.net|smartnews\.com|snapchat|snapchat\.com|social|sociallife\.com\.br|socialvibe|socialvibe\.com|spaces\.live\.com|spoke|spoke\.com|spruz|spruz\.com|ssense\.com|stackapps|stackapps\.com|stackexchange|stackexchange\.com|stackoverflow|stackoverflow\.com|stardoll\.com|stickam|stickam\.com|studivz\.net|suomi24\.fi|superuser|superuser\.com|sweeva|sweeva\.com|t\.co|t\.me|tagged|tagged\.com|taggedmail|taggedmail\.com|talkbiznow|talkbiznow\.com|taringa\.net|techmeme|techmeme\.com|tencent|tencent\.com|tiktok|tiktok\.com|tinyurl|tinyurl\.com|toolbox|toolbox\.com|touch\.facebook\.com|tr\.pinterest\.com|travellerspoint|travellerspoint\.com|tripadvisor|tripadvisor\.com|trombi|trombi\.com|trustpilot|tudou|tudou\.com|tuenti|tuenti\.com|tumblr|tumblr\.com|tweetdeck|tweetdeck\.com|twitter|twitter\.com|twoo\.com|typepad|typepad\.com|unblog\.fr|urbanspoon\.com|ushareit\.com|ushi\.cn|vampirefreaks|vampirefreaks\.com|vampirerave|vampirerave\.com|vg\.no|video\.ibm\.com|vk\.com|vkontakte\.ru|wakoopa|wakoopa\.com|wattpad|wattpad\.com|web\.facebook\.com|web\.skype\.com|webshots|webshots\.com|wechat|wechat\.com|weebly|weebly\.com|weibo|weibo\.com|wer-weiss-was\.de|weread|weread\.com|whatsapp|whatsapp\.com|wiki\.answers\.com|wikihow\.com|wikitravel\.org|woot\.com|wordpress|wordpress\.com|wordpress\.org|xanga|xanga\.com|xing|xing\.com|yahoo-mbga\.jp|yammer|yammer\.com|yelp|yelp\.co\.uk|yelp\.com|youroom\.in|za\.pinterest\.com|zalo|zoo\.gr|zooppa|zooppa\.com)$", "i").test(v.utmSource) && new RegExp("^(.*cp.*|ppc|retargeting|paid.*)$", "i").test(v.utmMedium)},{"name":"paid-video","test":(v) => new RegExp("^(?:blog\.twitch\.tv|crackle|crackle\.com|curiositystream|curiositystream\.com|d\.tube|dailymotion|dailymotion\.com|dashboard\.twitch\.tv|disneyplus|disneyplus\.com|fast\.wistia\.net|help\.hulu\.com|help\.netflix\.com|hulu|hulu\.com|id\.twitch\.tv|iq\.com|iqiyi|iqiyi\.com|jobs\.netflix\.com|justin\.tv|m\.twitch\.tv|m\.youtube\.com|music\.youtube\.com|netflix|netflix\.com|player\.twitch\.tv|player\.vimeo\.com|ted|ted\.com|twitch|twitch\.tv|utreon|utreon\.com|veoh|veoh\.com|viadeo\.journaldunet\.com|vimeo|vimeo\.com|wistia|wistia\.com|youku|youku\.com|youtube|youtube\.com)$", "i").test(v.utmSource) && new RegExp("^(.*cp.*|ppc|retargeting|paid.*)$", "i").test(v.utmMedium)},{"name":"display","test":(v) => new RegExp("^(?:display|banner|expandable|interstitial|cpm)$", "i").test(v.utmMedium)},{"name":"paid-other","test":(v) => new RegExp("^(.*cp.*|ppc|retargeting|paid.*)$", "i").test(v.utmMedium)}
12,{"name":"organic-shopping","test":(v) => new RegExp("^(?:360\.cn|alice|aol|ar\.search\.yahoo\.com|ask|at\.search\.yahoo\.com|au\.search\.yahoo\.com|auone|avg|babylon|baidu|biglobe|biglobe\.co\.jp|biglobe\.ne\.jp|bing|br\.search\.yahoo\.com|ca\.search\.yahoo\.com|centrum\.cz|ch\.search\.yahoo\.com|cl\.search\.yahoo\.com|cn\.bing\.com|cnn|co\.search\.yahoo\.com|comcast|conduit|daum|daum\.net|de\.search\.yahoo\.com|dk\.search\.yahoo\.com|dogpile|dogpile\.com|duckduckgo|ecosia\.org|email\.seznam\.cz|eniro|es\.search\.yahoo\.com|espanol\.search\.yahoo\.com|exalead\.com|excite\.com|fi\.search\.yahoo\.com|firmy\.cz|fr\.search\.yahoo\.com|globo|go\.mail\.ru|google|google-play|hk\.search\.yahoo\.com|id\.search\.yahoo\.com|in\.search\.yahoo\.com|incredimail|it\.search\.yahoo\.com|kvasir|lens\.google\.com|lite\.qwant\.com|lycos|m\.baidu\.com|m\.naver\.com|m\.search\.naver\.com|m\.sogou\.com|mail\.rambler\.ru|mail\.yandex\.ru|malaysia\.search\.yahoo\.com|msn|msn\.com|mx\.search\.yahoo\.com|najdi|naver|naver\.com|news\.google\.com|nl\.search\.yahoo\.com|no\.search\.yahoo\.com|ntp\.msn\.com|nz\.search\.yahoo\.com|onet|onet\.pl|pe\.search\.yahoo\.com|ph\.search\.yahoo\.com|pl\.search\.yahoo\.com|play\.google\.com|qwant|qwant\.com|rakuten|rakuten\.co\.jp|rambler|rambler\.ru|se\.search\.yahoo\.com|search-results|search\.aol\.co\.uk|search\.aol\.com|search\.google\.com|search\.smt\.docomo\.ne\.jp|search\.ukr\.net|secureurl\.ukr\.net|seznam|seznam\.cz|sg\.search\.yahoo\.com|so\.com|sogou|sogou\.com|sp-web\.search\.auone\.jp|startsiden|startsiden\.no|suche\.aol\.de|terra|th\.search\.yahoo\.com|tr\.search\.yahoo\.com|tut\.by|tw\.search\.yahoo\.com|uk\.search\.yahoo\.com|ukr|us\.search\.yahoo\.com|virgilio|vn\.search\.yahoo\.com|wap\.sogou\.com|webmaster\.yandex\.ru|websearch\.rakuten\.co\.jp|yahoo|yahoo\.co\.jp|yahoo\.com|yandex|yandex\.by|yandex\.com|yandex\.com\.tr|yandex\.fr|yandex\.kz|yandex\.ru|yandex\.ua|yandex\.uz|zen\.yandex\.ru)$", "i").test(v.utmSource) || new RegExp("^(.*(([^a-df-z]|^)shop|shopping).*)$", "i").test(v.utmCampaign)},{"name":"organic-social","test":(v) => new RegExp("^(?:43things|43things\.com|51\.com|5ch\.net|Hatena|ImageShack|academia\.edu|activerain|activerain\.com|activeworlds|activeworlds\.com|addthis|addthis\.com|airg\.ca|allnurses\.com|allrecipes\.com|alumniclass|alumniclass\.com|ameba\.jp|ameblo\.jp|americantowns|americantowns\.com|amp\.reddit\.com|ancestry\.com|anobii|anobii\.com|answerbag|answerbag\.com|answers\.yahoo\.com|aolanswers|aolanswers\.com|apps\.facebook\.com|ar\.pinterest\.com|artstation\.com|askubuntu|askubuntu\.com|asmallworld\.com|athlinks|athlinks\.com|away\.vk\.com|awe\.sm|b\.hatena\.ne\.jp|baby-gaga|baby-gaga\.com|babyblog\.ru|badoo|badoo\.com|bebo|bebo\.com|beforeitsnews|beforeitsnews\.com|bharatstudent|bharatstudent\.com|biip\.no|biswap\.org|bit\.ly|blackcareernetwork\.com|blackplanet|blackplanet\.com|blip\.fm|blog\.com|blog\.feedspot\.com|blog\.goo\.ne\.jp|blog\.naver\.com|blog\.yahoo\.co\.jp|blogg\.no|bloggang\.com|blogger|blogger\.com|blogher|blogher\.com|bloglines|bloglines\.com|blogs\.com|blogsome|blogsome\.com|blogspot|blogspot\.com|blogster|blogster\.com|blurtit|blurtit\.com|bookmarks\.yahoo\.co\.jp|bookmarks\.yahoo\.com|br\.pinterest\.com|brightkite|brightkite\.com|brizzly|brizzly\.com|business\.facebook\.com|buzzfeed|buzzfeed\.com|buzznet|buzznet\.com|cafe\.naver\.com|cafemom|cafemom\.com|camospace|camospace\.com|canalblog\.com|care\.com|care2|care2\.com|caringbridge\.org|catster|catster\.com|cbnt\.io|cellufun|cellufun\.com|centerblog\.net|chat\.zalo\.me|chegg\.com|chicagonow|chicagonow\.com|chiebukuro\.yahoo\.co\.jp|classmates|classmates\.com|classquest|classquest\.com|co\.pinterest\.com|cocolog-nifty|cocolog-nifty\.com|copainsdavant\.linternaute\.com|couchsurfing\.org|cozycot|cozycot\.com|cross\.tv|crunchyroll|crunchyroll\.com|cyworld|cyworld\.com|cz\.pinterest\.com|d\.hatena\.ne\.jp|dailystrength\.org|deluxe\.com|deviantart|deviantart\.com|dianping|dianping\.com|digg|digg\.com|diigo|diigo\.com|discover\.hubpages\.com|disqus|disqus\.com|dogster|dogster\.com|dol2day|dol2day\.com|doostang|doostang\.com|dopplr|dopplr\.com|douban|douban\.com|draft\.blogger\.com|draugiem\.lv|drugs-forum|drugs-forum\.com|dzone|dzone\.com|edublogs\.org|elftown|elftown\.com|epicurious\.com|everforo\.com|exblog\.jp|extole|extole\.com|facebook|facebook\.com|faceparty|faceparty\.com|fandom\.com|fanpop|fanpop\.com|fark|fark\.com|fb|fb\.me|fc2|fc2\.com|feedspot|feministing|feministing\.com|filmaffinity|filmaffinity\.com|flickr|flickr\.com|flipboard|flipboard\.com|folkdirect|folkdirect\.com|foodservice|foodservice\.com|forums\.androidcentral\.com|forums\.crackberry\.com|forums\.imore\.com|forums\.nexopia\.com|forums\.webosnation\.com|forums\.wpcentral\.com|fotki|fotki\.com|fotolog|fotolog\.com|foursquare|foursquare\.com|free\.facebook\.com|friendfeed|friendfeed\.com|fruehstueckstreff\.org|fubar|fubar\.com|gaiaonline|gaiaonline\.com|gamerdna|gamerdna\.com|gather\.com|geni\.com|getpocket\.com|glassboard|glassboard\.com|glassdoor|glassdoor\.com|godtube|godtube\.com|goldenline\.pl|goldstar|goldstar\.com|goo\.gl|gooblog|goodreads|goodreads\.com|google\+|googlegroups\.com|googleplus|govloop|govloop\.com|gowalla|gowalla\.com|gree\.jp|groups\.google\.com|gulli\.com|gutefrage\.net|habbo|habbo\.com|hi5|hi5\.com|hootsuite|hootsuite\.com|houzz|houzz\.com|hoverspot|hoverspot\.com|hr\.com|hu\.pinterest\.com|hubculture|hubculture\.com|hubpages\.com|hyves\.net|hyves\.nl|ibibo|ibibo\.com|id\.pinterest\.com|identi\.ca|ig|imageshack\.com|imageshack\.us|imvu|imvu\.com|in\.pinterest\.com|insanejournal|insanejournal\.com|instagram|instagram\.com|instapaper|instapaper\.com|internations\.org|interpals\.net|intherooms|intherooms\.com|irc-galleria\.net|is\.gd|italki|italki\.com|jammerdirect|jammerdirect\.com|jappy\.com|jappy\.de|kaboodle\.com|k
12akao|kakao\.com|kakaocorp\.com|kaneva|kaneva\.com|kin\.naver\.com|l\.facebook\.com|l\.instagram\.com|l\.messenger\.com|last\.fm|librarything|librarything\.com|lifestream\.aol\.com|line|line\.me|linkedin|linkedin\.com|listal|listal\.com|listography|listography\.com|livedoor\.com|livedoorblog|livejournal|livejournal\.com|lm\.facebook\.com|lnkd\.in|m\.blog\.naver\.com|m\.cafe\.naver\.com|m\.facebook\.com|m\.kin\.naver\.com|m\.vk\.com|m\.yelp\.com|mbga\.jp|medium\.com|meetin\.org|meetup|meetup\.com|meinvz\.net|meneame\.net|menuism\.com|messages\.google\.com|messages\.yahoo\.co\.jp|messenger|messenger\.com|mix\.com|mixi\.jp|mobile\.facebook\.com|mocospace|mocospace\.com|mouthshut|mouthshut\.com|movabletype|movabletype\.com|mubi|mubi\.com|my\.opera\.com|myanimelist\.net|myheritage|myheritage\.com|mylife|mylife\.com|mymodernmet|mymodernmet\.com|myspace|myspace\.com|netvibes|netvibes\.com|news\.ycombinator\.com|newsshowcase|nexopia|ngopost\.org|niconico|nicovideo\.jp|nightlifelink|nightlifelink\.com|ning|ning\.com|nl\.pinterest\.com|odnoklassniki\.ru|odnoklassniki\.ua|okwave\.jp|old\.reddit\.com|oneworldgroup\.org|onstartups|onstartups\.com|opendiary|opendiary\.com|oshiete\.goo\.ne\.jp|out\.reddit\.com|over-blog\.com|overblog\.com|paper\.li|partyflock\.nl|photobucket|photobucket\.com|pinboard|pinboard\.in|pingsta|pingsta\.com|pinterest|pinterest\.at|pinterest\.ca|pinterest\.ch|pinterest\.cl|pinterest\.co\.kr|pinterest\.co\.uk|pinterest\.com|pinterest\.com\.au|pinterest\.com\.mx|pinterest\.de|pinterest\.es|pinterest\.fr|pinterest\.it|pinterest\.jp|pinterest\.nz|pinterest\.ph|pinterest\.pt|pinterest\.ru|pinterest\.se|pixiv\.net|pl\.pinterest\.com|playahead\.se|plurk|plurk\.com|plus\.google\.com|plus\.url\.google\.com|pocket\.co|posterous|posterous\.com|pro\.homeadvisor\.com|pulse\.yahoo\.com|qapacity|qapacity\.com|quechup|quechup\.com|quora|quora\.com|qzone\.qq\.com|ravelry|ravelry\.com|reddit|reddit\.com|redux|redux\.com|renren|renren\.com|researchgate\.net|reunion|reunion\.com|reverbnation|reverbnation\.com|rtl\.de|ryze|ryze\.com|salespider|salespider\.com|scoop\.it|screenrant|screenrant\.com|scribd|scribd\.com|scvngr|scvngr\.com|secondlife|secondlife\.com|serverfault|serverfault\.com|shareit|sharethis|sharethis\.com|shvoong\.com|sites\.google\.com|skype|skyrock|skyrock\.com|slashdot\.org|slideshare\.net|smartnews\.com|snapchat|snapchat\.com|social|sociallife\.com\.br|socialvibe|socialvibe\.com|spaces\.live\.com|spoke|spoke\.com|spruz|spruz\.com|ssense\.com|stackapps|stackapps\.com|stackexchange|stackexchange\.com|stackoverflow|stackoverflow\.com|stardoll\.com|stickam|stickam\.com|studivz\.net|suomi24\.fi|superuser|superuser\.com|sweeva|sweeva\.com|t\.co|t\.me|tagged|tagged\.com|taggedmail|taggedmail\.com|talkbiznow|talkbiznow\.com|taringa\.net|techmeme|techmeme\.com|tencent|tencent\.com|tiktok|tiktok\.com|tinyurl|tinyurl\.com|toolbox|toolbox\.com|touch\.facebook\.com|tr\.pinterest\.com|travellerspoint|travellerspoint\.com|tripadvisor|tripadvisor\.com|trombi|trombi\.com|trustpilot|tudou|tudou\.com|tuenti|tuenti\.com|tumblr|tumblr\.com|tweetdeck|tweetdeck\.com|twitter|twitter\.com|twoo\.com|typepad|typepad\.com|unblog\.fr|urbanspoon\.com|ushareit\.com|ushi\.cn|vampirefreaks|vampirefreaks\.com|vampirerave|vampirerave\.com|vg\.no|video\.ibm\.com|vk\.com|vkontakte\.ru|wakoopa|wakoopa\.com|wattpad|wattpad\.com|web\.facebook\.com|web\.skype\.com|webshots|webshots\.com|wechat|wechat\.com|weebly|weebly\.com|weibo|weibo\.com|wer-weiss-was\.de|weread|weread\.com|whatsapp|whatsapp\.com|wiki\.answers\.com|wikihow\.com|wikitravel\.org|woot\.com|wordpress|wordpress\.com|wordpress\.org|xanga|xanga\.com|xing|xing\.com|yahoo-mbga\.jp|yammer|yammer\.com|yelp|yelp\.co\.uk|yelp\.com|youroom\.in|za\.pinterest\.com|zalo|zoo\.gr|zooppa|zooppa\.com)$", "i").test(v.utmSource) || new RegExp("^(?:social|social-network|social-media|sm|social network|social media)$", "i").test(v.utmMedium)},{"name":"organic-video","test":(v) => new RegExp("^(?:blog\.twitch\.tv|crackle|crackle\.com|curiositystream|curiositystream\.com|d\.tube|dailymotion|dailymotion\.com|dashboard\.twitch\.tv|disneyplus|disneyplus\.com|fast\.wistia\.net|help\.hulu\.com|help\.netflix\.com|hulu|hulu\.com|id\.twitch\.tv|iq\.com|iqiyi|iqiyi\.com|jobs\.netflix\.com|justin\.tv|m\.twitch\.tv|m\.youtube\.com|music\.youtube\.com|netflix|netflix\.com|player\.twitch\.tv|player\.vimeo\.com|ted|ted\.com|twitch|twitch\.tv|utreon|utreon\.com|veoh|veoh\.com|viadeo\.journaldunet\.com|vimeo|vimeo\.com|wistia|wistia\.com|youku|youku\.com|youtube|youtube\.com)$", "i").test(v.utmSource) || new RegExp("^(.*video.*)$", "i").test(v.utmMedium)},{"name":"organic-search","test":(v) => new RegExp("^(?:360\.cn|alice|aol|ar\.search\.yahoo\.com|ask|at\.search\.yahoo\.com|au\.search\.yahoo\.com|auone|avg|babylon|baidu|biglobe|biglobe\.co\.jp|biglobe\.ne\.jp|bing|br\.search\.yahoo\.com|ca\.search\.yahoo\.com|centrum\.cz|ch\.search\.yahoo\.com|cl\.search\.yahoo\.com|cn\.bing\.com|cnn|co\.search\.yahoo\.com|comcast|conduit|daum|daum\.net|de\.search\.yahoo\.com|dk\.search\.yahoo\.com|dogpile|dogpile\.com|duckduckgo|ecosia\.org|email\.seznam\.cz|eniro|es\.search\.yahoo\.com|espanol\.search\.yahoo\.com|exalead\.com|excite\.com|fi\.search\.yahoo\.com|firmy\.cz|fr\.search\.yahoo\.com|globo|go\.mail\.ru|google|google-play|hk\.search\.yahoo\.com|id\.search\.yahoo\.com|in\.search\.yahoo\.com|incredimail|it\.search\.yahoo\.com|kvasir|lens\.google\.com|lite\.qwant\.com|lycos|m\.baidu\.com|m\.naver\.com|m\.search\.naver\.com|m\.sogou\.com|mail\.rambler\.ru|mail\.yandex\.ru|malaysia\.search\.yahoo\.com|msn|msn\.com|mx\.search\.yahoo\.com|najdi|naver|naver\.com|news\.google\.com|nl\.search\.yahoo\.com|no\.search\.yahoo\.com|ntp\.msn\.com|nz\.search\.yahoo\.com|onet|onet\.pl|pe\.search\.yahoo\.com|ph\.search\.yahoo\.com|pl\.search\.yahoo\.com|play\.google\.com|qwant|qwant\.com|rakuten|rakuten\.co\.jp|rambler|rambler\.ru|se\.search\.yahoo\.com|search-results|search\.aol\.co\.uk|search\.aol\.com|search\.google\.com|search\.smt\.docomo\.ne\.jp|search\.ukr\.net|secureurl\.ukr\.net|seznam|seznam\.cz|sg\.search\.yahoo\.com|so\.com|sogou|sogou\.com|sp-web\.search\.auone\.jp|startsiden|startsiden\.no|suche\.aol\.de|terra|th\.search\.yahoo\.com|tr\.search\.yahoo\.com|tut\.by|tw\.search\.yahoo\.com|uk\.search\.yahoo\.com|ukr|us\.search\.yahoo\.com|virgilio|vn\.search\.yahoo\.com|wap\.sogou\.com|webmaster\.yandex\.ru|websearch\.rakuten\.co\.jp|yahoo|yahoo\.co\.jp|yahoo\.com|yandex|yandex\.by|yandex\.com|yandex\.com\.tr|yandex\.fr|yandex\.kz|yandex\.ru|yandex\.ua|y
12andex\.uz|zen\.yandex\.ru)$", "i").test(v.utmSource) || v.utmMedium.toLowerCase() === "organic"},{"name":"referral","test":(v) => new RegExp("^(?:referral|app|link)$", "i").test(v.utmMedium)},{"name":"email","test":(v) => new RegExp("^(?:email|e-mail|e_mail|e mail)$", "i").test(v.utmMedium) || new RegExp("^(?:email|e-mail|e_mail|e mail)$", "i").test(v.utmSource)},{"name":"affiliate","test":(v) => v.utmMedium.toLowerCase() === "affiliate"},{"name":"audio","test":(v) => v.utmMedium.toLowerCase() === "audio"},{"name":"sms","test":(v) => v.utmSource.toLowerCase() === "sms" || v.utmMedium.toLowerCase() === "sms"},{"name":"mobile-push-notification","test":(v) => v.utmSource.toLowerCase() === "firebase" || new RegExp("(?:.*mobile.*|.*notification.*|push$)", "i").test(v.utmMedium)}].find(i=>i.test(e))?.name??"other"}getShopifyAnalyticsId(){const e=this.getCookie("_shopify_y");if(e)return e;try{const t=this.localStorageGet("Shoplift_ClientId");if(t)return t}catch{}return null}legacyGetCookieVisitor(){const e=this.getCookie("SHOPLIFT");return e===null?null:JSON.parse(e,F)}getCookie(e){const t=this.cookie.split("; ").filter(i=>i.split("=").at(0)===e).at(0);return t===void 0?null:t.split("=").slice(1).join("=")}monitorConsentChange(){document.addEventListener("visitorConsentCollected",e=>{(async()=>await this.onConsentChange(e.detail.analyticsAllowed,!0))()}),document.readyState==="loading"?document.addEventListener("DOMContentLoaded",()=>this.loadShopifyConsentApiWithRetry()):this.loadShopifyConsentApiWithRetry()}loadShopifyConsentApiWithRetry(){let e=0;const t=()=>{this.loadShopifyConsentApi()||e++<10&&window.setTimeout(t,100)};t()}loadShopifyConsentApi(){if(window.Shopify){this.log("Loading Shopify features");const e=async()=>{if(!window.Shopify){this.log("Shopify object missing... suddenly?");return}if(window.Shopify.customerPrivacy===void 0){this.log("Shopify CustomerPrivacy api still missing, trying again in 1000ms"),t=window.setTimeout(()=>{(async()=>await e())()},1e3);return}if(this.geoViaShopify){const s=window.Shopify.customerPrivacy.getRegion?.();this.resolvedRegion=typeof s=="string"?s.replace(/-/g,""):""}const i=window.Shopify.customerPrivacy.getTrackingConsent();await this.onConsentChange(window.Shopify.customerPrivacy.analyticsProcessingAllowed(),i==="yes")};let t=window.setTimeout(()=>{(async()=>await e())()},5e3);return window.Shopify.loadFeatures([{name:"consent-tracking-api",version:"0.1"}],i=>{(async()=>{if(window.clearTimeout(t),i){this.log("Error loading consent tracking",i);return}await e()})()}),!0}return!1}async onConsentChange(e,t){try{if(this.log("Consent change detected",e,t),this.state.essential.consentApproved=e,this.state.essential.hasConsentInteraction=t,!this.state.essential.consentApproved){this.state.essential.hasConsentInteraction&&(this.state.analytics.queue.length=0),this.saveState();return}this.cookie=document.cookie,this.shopifyAnalyticsId=this.getShopifyAnalyticsId();for(const i of this.state.analytics.queue.filter(s=>s.type===1||s.type===2)){const s=i;s.shopifyAnalyticsId=this.shopifyAnalyticsId}this.saveState(),await this.syncAllEvents()}catch(i){this.log("Error syncing on consent change",i)}}isThemePreview(){return isThemePreview||themeRole!=="main"}isAppProxyPath(){const e=["/apps/","/tools/","/a/"],t=window.location.pathname;return e.some(i=>t.startsWith(i))}clearThemeBar(e,t,i){const s=structuredClone(i);this.log("Looking for theme bar"),this.waitForElement(null,"body").then(r=>this.waitForElement(r,"#preview-bar-iframe, #PBarNextFrameWrapper").then(n=>(this.log("Found theme bar"),t&&(this.log("Removing theme bar"),n.remove()),e?this.makeRequest({url:`${this.eventHost}/api/v0/logs`,method:"post",data:JSON.stringify({...this.debugState(),stateAtEvaluation:s},X)}):Promise.resolve(null)))).catch(r=>console.error(r))}waitForElement(e,t){return new Promise(i=>{const s=document.querySelector(t);if(s){i(s);return}const r=new MutationObserver(n=>{const o=document.querySelector(t);if(o){r.disconnect(),i(o);return}});r.observe(e??document.documentElement,{childList:!0})})}setDebug(e){this.state.essential.debugMode=e,this.saveState()}log(e,...t){let i=0;const s=e.replace(/%[sdoOfF]/g,r=>{if(i>=t.length)return r;const n=t[i++];return r==="%o"||r==="%O"?JSON.stringify(n):String(n)});this.logHistory.push(`[${new Date().toISOString()}][SL] ${s}`),!(!this.state.essential.debugMode&&!this.shopliftDebug)&&console.debug(`[SL] ${e}`,...t)}debugState(){return{state:this.state,storage:{essential:this.loadLocalStorage(this.essentialSessionKey),analytics:this.loadLocalStorage(this.analyticsSessionKey)},params:{shop:this.shop,host:this.host,eventHost:this.eventHost,cssHideClass:this.cssHideClass,testConfigs:this.testConfigs,inactiveTestConfigs:this.inactiveTestConfigs,sendPageView:this.sendPageView,isShopifyMerchantCookie
12:this.getCookie("is_shopify_merchant"),themeId,url:window.location.href,isThemePreview,themeRole,gaConfig:this.gaConfig},logHistory:this.logHistory}}createViewportObserver(e,t={}){const{threshold:i=this.VIEWPORT_TRACK_THRESHOLD,triggerOnce:s=!0}=t,r=new Set;return new IntersectionObserver(n=>{n.forEach(o=>{if(o.isIntersecting&&!r.has(o.target)){const l=o.target,c=l.getAttribute(this.DATA_SL_TEST_ID);c&&(e(c,l),s&&r.add(l))}})},{threshold:i})}applyChangesWithViewport(e,t,i,s){const r=t.selectorsForViewportTracking??t.selectors,n=o=>{if(this.state.essential.visitorTests.some(h=>h.testId===o)||this.activeViewportObservers.has(o))return;const l=[];if(r.forEach(h=>{e.querySelectorAll(h.cssSelector).forEach(b=>l.push(b))}),l.length===0)return;let c=!1;const d=()=>{c||(c=!0,i(o),p.disconnect(),this.activeViewportObservers.delete(o))},p=this.createViewportObserver(()=>{d()},{triggerOnce:!0,...s});this.activeViewportObservers.set(o,p),this.log(`Created viewport observer for test ${o}, observing ${l.length} elements`),l.forEach(h=>{h.setAttribute(this.DATA_SL_TEST_ID,String(o)),p.observe(h)}),setTimeout(()=>{c||l.forEach(h=>{const u=h.getBoundingClientRect(),b=s?.threshold??this.VIEWPORT_TRACK_THRESHOLD,k=Math.min(u.bottom,window.innerHeight)-Math.max(u.top,0),S=Math.min(u.right,window.innerWidth)-Math.max(u.left,0);u.top<window.innerHeight&&u.bottom>0&&u.left<window.innerWidth&&u.right>0&&k>0&&S>0&&k>=u.height*b&&(this.log(`Price element already visible in viewport for test ${o}:`,h),d())})},100)};t.selectors.length>0&&U(e,t,()=>{}),Se(e,{testId:t.testId,hypothesisId:t.hypothesisId,selectors:r},o=>{n(o)})}applyPriceTestWithMapLookup(e,t,i,s){if(!t.priceData){this.log("No price data for hypothesis '%s'",t.id);return}this.log("Hypothesis '%s' isControl=%s, priceData has %d variants",t.id,t.isControl,t.priceData.variants.length);const r=t.priceData.variants.slice(0,3);for(const[S,C,_]of r)this.log(" Sample priceData: variant=%s, price=%d, compareAt=%d",S,C,_);const n=j(t.priceData),o=new Set;for(const S of i)if(S.priceData)for(const[C]of S.priceData.variants)o.add(C);this.log("Price test Map lookup: %d products in hypothesis, %d total products to track",n.size,o.size);const l=t.priceData,c=new WeakSet;let d=!1;const p="[data-sl-attribute-p], [data-sl-attribute-cap], [data-sl-attribute-discount]",h=S=>{if(c.has(S))return;const C=S.getAttribute("data-sl-attribute-p"),_=S.getAttribute("data-sl-attribute-cap"),T=S.getAttribute("data-sl-attribute-discount"),m=C||_||T;if(!m||!o.has(m))return;c.add(S);const y=n.get(m);y&&(this.log("Applying price for product %s: %d cents (compare at: %d cents)",m,y.priceInCents,y.compareAtPriceInCents),Ve(S,m,y,l),this.log("Applied price to element for product %s",m)),!d&&!this.state.essential.visitorTests.some(w=>w.testId===e)&&(S.setAttribute(this.DATA_SL_TEST_ID,String(e)),this.setupElementViewportTracking(S,e,()=>{d||(d=!0,s(e))}))},u=()=>{const S=document.querySelectorAll(p);this.log("Scanning for price elements, found: %d",S.length),S.forEach(h)},b=new MutationObserver(S=>{for(const C of S)C.type==="childList"&&C.addedNodes.forEach(_=>{if(_.nodeType===Node.ELEMENT_NODE){const T=_;(T.hasAttribute("data-sl-attribute-p")||T.hasAttribute("data-sl-attribute-cap")||T.hasAttribute("data-sl-attribute-discount"))&&h(T),T.querySelectorAll(p).forEach(h)}}),C.type==="attributes"&&C.target instanceof Element&&h(C.target)}),k=document.body||document.documentElement;b.observe(k,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["data-sl-attribute-p","data-sl-attribute-cap","data-sl-attribute-discount"]}),this.log("MutationObserver started for price elements"),u(),document.readyState==="loading"&&document.addEventListener("DOMContentLoaded",()=>{this.log("DOMContentLoaded - rescanning for price elements"),u()}),setTimeout(()=>{this.log("Delayed rescan for price elements"),u()},100),setTimeout(()=>{this.log("Final rescan for price elements"),u()},500)}setupElementViewportTracking(e,t,i){const s=this.VIEWPORT_TRACK_THRESHOLD,r=e.getBoundingClientRect(),n=Math.min(r.bottom,window.innerHeight)-Math.max(r.top,0),o=Math.min(r.right,window.innerWidth)-Math.max(r.left,0);if(r.top<window.innerHeight&&r.bottom>0&&r.left<window.innerWidth&&r.right>0&&n>0&&o>0&&n>=r.height*s){this.log("Price element already visible for test %s",t),i();return}const c=new IntersectionObserver(d=>{for(const p of d)if(p.isIntersecting&&p.intersectionRatio>=s){this.log("Price element entered viewport for test %s",t),c.disconnect(),i();break}},{threshold:s});c.observe(e)}debug(){const e=this.debugState();console.log(JSON.stringify(e,X,2))}}(async function(){window.shopliftInstance||(window.shopliftInstance=new Je("littlewords.myshopify.com","https://app.shoplift.ai","https://events.shoplift.ai",false,false,false,{"sendEvents":true,"mode":"gtm"},false,false,1000,[],[{"id":"019c2ef5-db90-7e08-9cd1-0078b816780e","bayesianRevision":5,"status":"cancelled","hypotheses":[{"id":"019c28bc-e60c-7736-86e1-5ed6da10b456","type":"theme","themeId":188681748561,"affix":"","isControl":true,"redirectPath":null},{"id":"019c29d3-30ae-7462-a942-138bae92c7ed","type":"theme","themeId":192143327313,"affix":"","isControl":false,"redirectPath":null}],"ignoreTestViewParameterEnforcement":false},{"id":"019d885e-2b6e-7523-b882-4b7f280527c1","bayesianRevision":5,"status":"completed","hypotheses":[{"id":"019d8859-8bf5-74ea-89d2-1b5896beeaf4","type":"theme","themeId":188681748561,"affix":"","isControl":true,"redirectPath":null},{"id":"019d885a-a7ad-7592-9db3-ccf641ee44e5","type":"theme","themeId":194868281425,"affix":"","isControl":false,"redirectPath":null}],"ignoreTestViewParameterEnforcement":false},{"id":"019df99c-1231-756b-85f4-14bd7c64b1ee","bayesianRevision":5,"status":"cancelled","hypotheses":[{"id":"019df994-f1ef-7299-b12d-9950eb1b7b9c","type":"theme","themeId":188681748561,"affix":"","isControl":true,"redirectPath":null},{"id":"019df99b-237f-7eba-bdbe-74ed3c744355","type":"theme","themeId":195769040977,"affix":"","isControl":false,"redirectPath":null}],"ignoreTestViewParameterEnforcement":false}
12],null,false),await window.shopliftInstance.init())})();async function Ye(a,e,t,i){const s=Ue({log:i});if(t)return i("[SUB-PREVIEW] A side â no overlay applied; widget renders naturally"),s;const r=a.widget.widgetType,n=e?j(e):null;let o=W(e),l=K(a,o),c=l.discountMap,d=l.maxDiscount;function p(){const f=W(e);f!==o&&(o=f,l=K(a,o),c=l.discountMap,d=l.maxDiscount,i(`[SUB-PREVIEW] scope refreshed currentProductId=${o??"n/a"}, maxDiscount=${d}`))}i(`[SUB-PREVIEW] side=B, currentProductId=${o??"n/a"}, maxDiscount=${d}`);function h(f){if(!e||!n)return null;const v=Y(n),g=v?n.get(v):void 0;return g?{formattedVariantPrice:G(g.priceInCents,e),formattedDiscounted:G(g.priceInCents*(1-f/100),e)}:null}function u(f){const v=J(a,f);if(!v)return d;const g=D(a,"subscriptionInput"),P=g.length?g[0].selector:'input[name="rc_plan"]',A=v.querySelector(`${P}:checked`);if(A){const E=c[A.value];if(E!==void 0)return E}return d}function b(f){const v=D(a,"subscriptionDiscount");for(const g of v)if(g.selector.includes("badge")||g.selector.includes("__badge")){const P=f.querySelector(g.selector);P?.textContent&&!P.textContent.includes(`${d}%`)&&$(P,A=>N(A,d))}}function k(f,v){const g=h(v);if(!g)return;const P=D(a,"subscriptionCompareAt");for(const A of P){const E=f.querySelector(A.selector)||f.querySelector(`[part~="${A.selector}"]`);E?.textContent&&!E.textContent.includes(g.formattedVariantPrice)&&$(E,x=>/\d/.test(x)?g.formattedVariantPrice:x)}}function S(f,v){const g=h(v);if(!g)return;const P=D(a,"subscriptionPrice");for(const A of P){const E=f.querySelector(A.selector)||f.querySelector(`[part~="${A.selector}"]`);E?.textContent&&!E.textContent.includes(g.formattedDiscounted)&&$(E,x=>/\d/.test(x)?g.formattedDiscounted:x)}}function C(f){const v=D(a,"subscriptionInput"),g=v.length?v[0].selector:'input[name="rc_plan"]',P=D(a,"subscriptionPlanDiscount"),A=P.length?P[0].selector:".rc-plans-button__discount";for(const E of Array.from(f.querySelectorAll("label"))){const x=E.querySelector(g),R=E.querySelector(A);if(x&&R?.textContent){const O=c[x.value];if(O!==void 0){const V=R.textContent.match(/[\d.]+%/)?.[0];V&&V!==`${O}%`&&$(R,L=>N(L,O))}}}}function _(f){const v=f.querySelector("select");if(v)for(const g of Array.from(v.options)){const P=c[g.value];if(P!==void 0&&g.textContent){const A=g.textContent.match(/[\d.]+%/)?.[0];A&&A!==`${P}%`&&(g.textContent=N(g.textContent,P))}}}function T(f){const v=D(a,"onetimePrice");if(!v.length||!e||!n)return;const g=Y(n),P=g?n.get(g):void 0;if(!P)return;const A=G(P.priceInCents,e),E=D(a,"onetimeContainer"),x=E.length?E[0].selector:'[part~="rc-purchase-option__onetime"]',R=f.querySelector(x);if(R)for(const O of v){const V=R.querySelector(`[part~="${O.selector}"]`);V?.textContent&&!V.textContent.includes(A)&&$(V,L=>/\d/.test(L)?A:L)}}function m(f,v){const P=D(a,"subscriptionDiscount").filter(A=>A.selector.includes("benefit")||A.selector==="rc-benefits");for(const A of P){const E=f.querySelector(A.selector);if(E?.shadowRoot){for(const x of Array.from(E.shadowRoot.querySelectorAll("li")))if(x.textContent?.includes("Save")){const R=x.textContent.match(/[\d.]+%/)?.[0];R&&R!==`${v}%`&&$(x,O=>N(O,v))}}}}let y=!1;function w(){if(!y){y=!0;try{p();const f=B(a);if(!f)return;const v=u(f);b(f),k(f,v),S(f,v),T(f);const g=J(a,f);g&&(r==="buttons"||r==="radio"?C(g):_(g)),m(f,v)}finally{y=!1}}}const I=ue({data:a,runUpdates:w});return function(){I(),s()}}const Ze=Object.freeze(Object.defineProperty({__proto__:null,subscriptionPreviewRender:Ye},Symbol.toStringTag,{value:"Module"}))})(); })("/", { suffix: "", type: "collection" }, "main", 188681748561, false)</script>
12 13<!-- End of Shoplift scripts --> 14 15 16 <meta charset="utf-8"> 17 <meta name="viewport" content="width=device-width, initial-scale=1.0, height=device-height, minimum-scale=1.0, maximum-scale=5.0"><link rel="dns-prefetch" href="//cdn.shopify.com"> 18 <link rel="dns-prefetch" href="//cdn.jsdelivr.net"> 19 <link rel="dns-prefetch" href="//bundle.dyn-rev.app"> 20 <link rel="preconnect" href="//cdn.shopify.com" crossorigin> 21 <link rel="preconnect" href="//cdn.jsdelivr.net" crossorigin> 22 23 <title> 24 25 Beaded & Custom Bracelets | Friendship Bracelets | Shop All 26 27 </title><meta name="description" content="Shop all bracelets at Little Words Project. Our beaded bracelets aim to inspire & encourage people to be kind to themselves & to pay that kindness forward."><link rel="canonical" href="https://www.littlewordsproject.com/collections/shop"> 28 29 30 31 32<!-- Google Tag Manager -->
33<script>
vendor: 415 bytes, lines 33-43
33 34 (function (w, d, s, l, i) { 35 w[l] = w[l] || []; 36 w[l].push({ 'gtm.start': new Date().getTime(), event: 'gtm.js' }); 37 var f = d.getElementsByTagName(s)[0], 38 j = d.createElement(s), 39 dl = l != 'dataLayer' ? '&l=' + l : ''; 40 j.async = true; 41 j.src = 'https://www.googletagmanager.com/gtm.js?id=' + i + dl; 42 f.parentNode.insertBefore(j, f); 43 })(window, document, 'script', 'dataLayer', '
43GTM-5NMV6CV
vendor: 4 bytes, line 43
43');
44</script>
44 45<!-- End Google Tag Manager --> 46
47<script type="text/javascript" defer> 48 (function(c,l,a,r,i,t,y){ 49 c[a]=c[a]||function(){(c[a].q=c[a].q||[]).push(arguments)}; 50 t=l.createElement(r);t.async=1;t.src="https://www.clarity.ms/tag/"+i; 51 y=l.getElementsByTagName(r)[0];y.parentNode.insertBefore(t,y); 52 })(window, document, "clarity", "script", "mk5i58ooxe"); 53</script>
53 54
55<script type="text/javascript" defer> 56 (function(c,l,a,r,i,t,y){ 57 c[a]=c[a]||function(){(c[a].q=c[a].q||[]).push(arguments)}; 58 t=l.createElement(r);t.async=1;t.src="https://www.clarity.ms/tag/"+i; 59 y=l.getElementsByTagName(r)[0];y.parentNode.insertBefore(t,y); 60 })(window, document, "clarity", "script", "frofxf500c"); 61</script>
61 62<link rel="shortcut icon" href="//www.littlewordsproject.com/cdn/shop/files/favicon_fb02bd02-e9e0-473d-89f6-fec0f4595e6b.png?v=1711032454&width=96"> 63 <link rel="apple-touch-icon" href="//www.littlewordsproject.com/cdn/shop/files/favicon_fb02bd02-e9e0-473d-89f6-fec0f4595e6b.png?v=1711032454&width=180"><link rel="preconnect" href="https://fonts.shopifycdn.com" crossorigin> 64<link rel="dns-prefetch" href="https://productreviews.shopifycdn.com"> 65 66<link rel="preconnect" href="https://fonts.googleapis.com"> 67<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> 68<link rel="preload" href="https://fonts.googleapis.com/css2?family=Anton&family=Inter:wght@400;500&display=swap" as="style" onload="this.rel='stylesheet'"><link rel="preload" href="https://use.typekit.net/pin1etu.css" as="style" onload="this.rel='stylesheet'"> 69<noscript><link rel="stylesheet" href="https://use.typekit.net/pin1etu.css"></noscript> 70<style> 71 @font-face { 72 font-family: 'Canela'; 73 src: url(//www.littlewordsproject.com/cdn/shop/t/940/assets/Canela-LightItalic.woff2?v=41612447605475406001763029462) format('woff2'); 74 font-weight: 300; 75 font-style: italic; 76 font-display: swap; 77 } 78 79 @font-face { 80 font-family: 'Canela'; 81 src: url(//www.littlewordsproject.com/cdn/shop/t/940/assets/Canela-Light.woff2?v=136196625888589590831763029462) format('woff2'); 82 font-weight: 300; 83 font-style: normal; 84 font-display: swap; 85 } 86 87 @font-face { 88 font-family: 'Canela'; 89 src: url(//www.littlewordsproject.com/cdn/shop/t/940/assets/Canela-ThinItalic.woff2?v=166246835010988988971763029463) format('woff2'); 90 font-weight: 100; 91 font-style: italic; 92 font-display: swap; 93 } 94 95 @font-face { 96 font-family: 'Canela'; 97 src: url(//www.littlewordsproject.com/cdn/shop/t/940/assets/Canela-Thin.woff2?v=47694837334443941121763029463) format('woff2'); 98 font-weight: 100; 99 font-style: normal; 100 font-display: swap; 101 } 102 103 @font-face { 104 font-family: 'Larsseit'; 105 src: url(//www.littlewordsproject.com/cdn/shop/t/940/assets/Larsseit-Thin.woff2?v=101968842838903375971763029464) format('woff2'); 106 font-weight: 100; 107 font-style: normal; 108 font-display: swap; 109 } 110 111 @font-face { 112 font-family: 'Larsseit'; 113 src: url(//www.littlewordsproject.com/cdn/shop/t/940/assets/Larsseit-Medium.woff2?v=90797641549033014901763029464) format('woff2'); 114 font-weight: 500; 115 font-style: normal; 116 font-display: swap; 117 } 118 119 @font-face { 120 font-family: 'Larsseit'; 121 src: url(//www.littlewordsproject.com/cdn/shop/t/940/assets/Larsseit-Light.woff2?v=182226853819564961451763029464) format('woff2'); 122 font-weight: 300; 123 font-style: normal; 124 font-display: swap; 125 } 126 127 @font-face { 128 font-family: 'Larsseit'; 129 src: url(//www.littlewordsproject.com/cdn/shop/t/940/assets/Larsseit.woff2?v=43175624790988522721763029465) format('woff2'); 130 font-weight: normal; 131 font-style: normal; 132 font-display: swap; 133 } 134</style> 135 136<meta property="og:type" content="website"> 137 <meta property="og:title" content="Shop All Bracelets & Accessories"><meta property="og:image" content="http://www.littlewordsproject.com/cdn/shop/files/Frame_2477_280a6d2e-ab4c-4047-a7ec-7c29d7aedfc5.jpg?v=1751472295&width=2048"> 138 <meta property="og:image:secure_url" content="https://www.littlewordsproject.com/cdn/shop/files/Frame_2477_280a6d2e-ab4c-4047-a7ec-7c29d7aedfc5.jpg?v=1751472295&width=2048"> 139 <meta property="og:image:width" content="2400"> 140 <meta property="og:image:height" content="1256"><meta property="og:description" content="Shop all bracelets at Little Words Project. Our beaded bracelets aim to inspire & encourage people to be kind to themselves & to pay that kindness forward."><meta property="og:url" content="https://www.littlewordsproject.com/collections/shop"> 141<meta property="og:site_name" content="Little Words Project"><meta name="twitter:card" content="summary"><meta name="twitter:title" content="Shop All Bracelets & Accessories"> 142 <meta name="twitter:description" content=""><meta name="twitter:image" content="https://www.littlewordsproject.com/cdn/shop/files/Frame_2477_280a6d2e-ab4c-4047-a7ec-7c29d7aedfc5.jpg?crop=center&height=1200&v=1751472295&width=1200"> 143 <meta name="twitter:image:alt" content=""> 144 145 146
146<script type="application/ld+json"> 147 { 148 "@context": "https://schema.org", 149 "@type": "BreadcrumbList", 150 "itemListElement": [{ 151 "@type": "ListItem", 152 "position": 1, 153 "name": "Home", 154 "item": "https://www.littlewordsproject.com" 155 },{ 156 "@type": "ListItem", 157 "position": 2, 158 "name": "Shop All Bracelets \u0026 Accessories", 159 "item": "https://www.littlewordsproject.com/collections/shop" 160 }] 161 } 162 </script>
162 163 164<style>/* Typography (heading) *//* Typography (heading) */ 165 166 167/* Typography (body) */ 168/* Typography (body) */ 169 170 171 172 173 174 175 176:root { 177 /* Container */ 178 --container-max-width: 100%; 179 --container-xxs-max-width: 27.5rem; /* 440px */ 180 --container-xs-max-width: 42.5rem; /* 680px */ 181 --container-sm-max-width: 61.25rem; /* 980px */ 182 --container-md-max-width: 71.875rem; /* 1150px */ 183 --container-lg-max-width: 78.75rem; /* 1260px */ 184 --container-xl-max-width: 85rem; /* 1360px */ 185 --container-gutter: 1.25rem; 186 187 --section-with-border-vertical-spacing: 2.5rem; 188 --section-with-border-vertical-spacing-tight:2.5rem; 189 --section-without-border-vertical-spacing:3.75rem; 190 --section-without-border-vertical-spacing-tight:3.75rem; 191 192 --section-stack-gap:3rem; 193 --section-stack-gap-tight: 2.25rem; 194 195 /* Form settings */ 196 --form-gap: 1.25rem; /* Gap between fieldset and submit button */ 197 --fieldset-gap: 1rem; /* Gap between each form input within a fieldset */ 198 --form-control-gap: 0.625rem; /* Gap between input and label (ignored for floating label) */ 199 --checkbox-control-gap: 0.75rem; /* Horizontal gap between checkbox and its associated label */ 200 --input-padding-block: 0.65rem; /* Vertical padding for input, textarea and native select */ 201 --input-padding-inline: 0.8rem; /* Horizontal padding for input, textarea and native select */ 202 --checkbox-size: 0.875rem; /* Size (width and height) for checkbox */ 203 204 /* Other sizes */ 205 --sticky-area-height: calc(var(--announcement-bar-is-sticky, 0) * var(--announcement-bar-height, 0px) + var(--header-is-sticky, 0) * var(--header-height, 0px)); 206 207 /* RTL support */ 208 --transform-logical-flip: 1; 209 --transform-origin-start: left; 210 --transform-origin-end: right; 211 212 /** 213 * --------------------------------------------------------------------- 214 * TYPOGRAPHY 215 * --------------------------------------------------------------------- 216 */ 217 218 /* Font properties */ 219 220 --heading-font-family: 'Canela', 'Helvetica Neue', 'Arial', 'Lucida Grande', sans-serif; 221 --heading-font-weight: 400; 222 --heading-font-style: normal; 223 --heading-text-transform: normal; 224 --heading-letter-spacing: 1px; 225 226 --text-font-family: 'Larsseit', 'Helvetica Neue', Arial, 'Lucida Grande', sans-serif; 227 --text-font-weight: 400; 228 --text-font-style: normal; 229 --text-letter-spacing: 0px; 230 --button-font: var(--text-font-style) var(--text-font-weight) var(--text-sm) / 1.65 var(--text-font-family); 231 --button-text-transform: uppercase; 232 --button-letter-spacing: 0.0em; 233 234 /* Font sizes */--text-heading-size-factor: 1; 235 --text-h1: max(0.6875rem, clamp(1.375rem, 1.146341463414634rem + 0.975609756097561vw, 2rem) * var(--text-heading-size-factor)); 236 --text-h2: max(0.6875rem, clamp(1.25rem, 1.0670731707317074rem + 0.7804878048780488vw, 1.75rem) * var(--text-heading-size-factor)); 237 --text-h3: max(0.6875rem, clamp(1.125rem, 1.0335365853658536rem + 0.3902439024390244vw, 1.375rem) * var(--text-heading-size-factor)); 238 --text-h4: max(0.6875rem, clamp(1rem, 0.9542682926829268rem + 0.1951219512195122vw, 1.125rem) * var(--text-heading-size-factor)); 239 --text-h5: calc(0.875rem * var(--text-heading-size-factor)); 240 241 --text-h6: 1rem; 242 243 --text-xs: 1.3rem; 244 --text-sm: 1.4rem; 245 --text-base: 1.5rem; 246 --text-lg: 1.7rem; 247 --text-xl: 2.0rem; 248 249 /** 250 * --------------------------------------------------------------------- 251 * COLORS 252 * --------------------------------------------------------------------- 253 */ 254 255 /* Color settings */--accent: 46 43 216; 256 --text-primary: 13 12 34; 257 --background-primary: 255 255 255; 258 --background-secondary: 255 255 255; 259 --border-color: 219 219 222; 260 --page-overlay: 0 0 0 / 0.4; 261 262 /* Button colors */ 263 --button-text-origin: rgb(255 255 255); 264 --button-text: var(--button-text-origin); 265 266 --button-background-primary: 46 43 216; 267 --button-text-primary: 255 255 255; 268 269 --button-background-secondary: #2e2bd8; 270 --button-text-secondary: rgb(255 255 255); 271 272 /* Status colors */ 273 --success-background: 212 227 203; 274 --success-text: 48 122 7; 275 --warning-background: 253 241 224; 276 --warning-text: 237 138 0; 277 --error-background: 247 218 218;
278 --error-text: 220 100 100; 279 280 /* Product colors */ 281 --on-sale-text: 218 159 196; 282 --on-sale-badge-background: 218 159 196; 283 --on-sale-badge-text: 255, 255, 255; 284 --sold-out-badge-background: 214 212 204; 285 --sold-out-badge-text: 255, 255, 255; 286 --custom-badge-background: 255 255 255; 287 --custom-badge-text: 218, 159, 196, 1.0; 288 --star-color: 110 95 165; 289 290 --new-arrial-badge-background: 46 43 216; 291 --new-arrial-badge-text: 255, 255, 255; 292 293 294 --going-fast-badge-background: 232 221 250; 295 --going-fast-badge-text: 255, 255, 255; 296 297 --adrianas-pick-background: 255 255 255; 298 --adrianas-pick-text: 218, 159, 196, 1; 299 300 --best-seller-background: 196 217 251; 301 --best-seller-text: 13, 12, 34; 302 303 /* Header colors */--header-background: 255 255 255; 304 --header-text: 13 12 34; 305 --header-border-color: 219 219 222; 306 307 /* Footer colors */--footer-background: 247 246 239; 308 --footer-text: 13 12 34; 309 --footer-border-color: 212 211 208; 310 311 /* Modal colors */--modal-background: 255 255 255; 312 --modal-text: 13 12 34; 313 --modal-border-color: 219 219 222; 314 315 /* Drawer colors (reuse the same as modal) */ 316 --drawer-background: 255 255 255; 317 --drawer-text: 13 12 34; 318 --drawer-border-color: 219 219 222; 319 320 /* Popover background (uses the primary background) */ 321 --popover-background: 255 255 255; 322 --popover-text: 13 12 34; 323 --popover-border-color: 219 219 222; 324 325 /* Rounded variables (used for border radius) */ 326 --rounded-full: 9999px; 327 --button-border-radius: 6.0rem; 328 --input-border-radius: 0.0rem; 329 330 /* Box shadow */ 331 --shadow-sm: 0 2px 8px rgb(0 0 0 / 0.05); 332 --shadow: 0 5px 15px rgb(0 0 0 / 0.05); 333 --shadow-md: 0 5px 30px rgb(0 0 0 / 0.05); 334 --shadow-block: px px px rgb(var(--text-primary) / 0.0); 335 336 /** 337 * --------------------------------------------------------------------- 338 * OTHER 339 * --------------------------------------------------------------------- 340 */ 341 342 --checkmark-svg-url: url(//www.littlewordsproject.com/cdn/shop/t/940/assets/checkmark.svg?v=77552481021870063511763029494); 343 --cursor-zoom-in-svg-url: url(//www.littlewordsproject.com/cdn/shop/t/940/assets/cursor-zoom-in.svg?v=13188268709560618851763029494); 344 } 345 346 [dir="rtl"]:root { 347 /* RTL support */ 348 --transform-logical-flip: -1; 349 --transform-origin-start: right; 350 --transform-origin-end: left; 351 } 352 353 @media screen and (min-width: 700px) { 354 :root { 355 /* Typography (font size) */ 356 --text-xs: 0.875rem; 357 --text-sm: 0.9375rem; 358 --text-base: 1.0rem; 359 --text-lg: 1.125rem; 360 --text-xl: 1.375rem; 361 362 /* Spacing settings */ 363 --container-gutter: 2rem; 364 } 365 } 366 367 @media screen and (min-width: 1000px) { 368 :root { 369 /* Spacing settings */ 370 --container-gutter: 2.5rem; 371 372 --section-with-border-vertical-spacing: 4rem; 373 --section-with-border-vertical-spacing-tight: 4rem; 374 --section-without-border-vertical-spacing: 6rem; 375 --section-without-border-vertical-spacing-tight: 6rem; 376 377 --section-stack-gap:3rem; 378 --section-stack-gap-tight:3rem; 379 } 380 } 381</style> 382<style> 383 :root { 384 --lwp-wishlist-empty: url(//www.littlewordsproject.com/cdn/shop/t/940/assets/wishlist-heart.svg?v=142998762457524273291763029464); 385 --algolia-search-svg: url(//www.littlewordsproject.com/cdn/shop/t/940/assets/algolia-search-v2.svg?v=7058627); 386 --lwp-wishlist-full: url(//www.littlewordsproject.com/cdn/shop/t/940/assets/wishlist-heart-full.svg?v=105517619601608475561763029463); 387 --newsletter-arrow: url(//www.littlewordsproject.com/cdn/shop/t/940/assets/newsletter-arrow.svg?v=149438047366874072251763029465); 388 --gamification-gift-select-svg: url('//www.littlewordsproject.com/cdn/shop/t/940/assets/select-arrow_down.svg?v=132452761303059159021763029465'); 389 --map-angle: url(//www.littlewordsproject.com/cdn/shop/t/940/assets/map-angle.png?v=121582214675752451711763029466); 390 } 391</style> 392 393 394 <style> 395 badge-list.badge-list .badge, 396 .ns-product .ns-product_badge-list .ns-product_badge-item.badge, .ns-autocomplete .ns-product .ns-product_badge-item, 397 product-card .badge-list .badge.badge--custom { 398 font-weight: 700 !important; 399 font-size: 10px !important; 400 line-height: 10px !important; 401 border: 1px solid transparent !important; 402 padding: 10px 12px 8px 12px !important; 403 border-radius: 52.5px !important; 404 height: unset; 405 font-family: Larsseit !important;
406 height: 26px !important; 407 } 408 409 .ns-autocomplete .ns-product .ns-product_badge-item, 410 product-card .badge-list .badge.badge--custom { 411 412 background-color: #DA9FC4; 413 border-color: #DA9FC4; 414 color: #FFFFFF; 415 } 416 417 .badge--on-sale, 418 .badge--onSale { 419 background: #2e2bd8 !important; 420 color: rgb(var(--on-sale-badge-text)); 421 } 422 423 @media (min-width: 768px) { 424 badge-list.badge-list .badge, 425 .ns-product .ns-product_badge-list .ns-product_badge-item.badge, .ns-autocomplete .ns-product .ns-product_badge-item, 426 product-card .badge-list .badge.badge--custom { 427 font-size: 12px !important; 428 line-height: 12px !important; 429 padding: 12px 22px 10px 22px !important; 430 height: 34px !important; 431 } 432 } 433 434 435 436 437 badge-list.badge-list .badge--add-charms, 438 .ns-product .ns-product_badge-list .ns-product_badge-item.badge.custom-badge-add-charms, 439 .ns-autocomplete .ns-product .ns-product_badge-item[data-custom-badge="add-charms"], 440 product-card .badge-list .badge.badge--custom.custom-badge-add-charms, 441 product-card .badge-list .badge.badge--custom[data-custom-badge="add-charms"] { 442 background-color: #da9fc4 !important; 443 border-color: !important; 444 color: #ffffff !important; 445 } 446 447 448 449 450 badge-list.badge-list .badge--__customizerlabel-on-sale, 451 .ns-product .ns-product_badge-list .ns-product_badge-item.badge.custom-badge-__customizerlabel-on-sale, 452 .ns-autocomplete .ns-product .ns-product_badge-item[data-custom-badge="__customizerlabel-on-sale"], 453 product-card .badge-list .badge.badge--custom.custom-badge-__customizerlabel-on-sale, 454 product-card .badge-list .badge.badge--custom[data-custom-badge="__customizerlabel-on-sale"] { 455 background-color: #2e2bd8 !important; 456 border-color: !important; 457 color: #ffffff !important; 458 } 459 460 461 462 463 badge-list.badge-list .badge--vintage, 464 .ns-product .ns-product_badge-list .ns-product_badge-item.badge.custom-badge-vintage, 465 .ns-autocomplete .ns-product .ns-product_badge-item[data-custom-badge="vintage"], 466 product-card .badge-list .badge.badge--custom.custom-badge-vintage, 467 product-card .badge-list .badge.badge--custom[data-custom-badge="vintage"] { 468 background-color: #da9fc4 !important; 469 border-color: !important; 470 color: #ffffff !important; 471 } 472 473 474 475 476 badge-list.badge-list .badge--__customizerlabel-new, 477 .ns-product .ns-product_badge-list .ns-product_badge-item.badge.custom-badge-__customizerlabel-new, 478 .ns-autocomplete .ns-product .ns-product_badge-item[data-custom-badge="__customizerlabel-new"], 479 product-card .badge-list .badge.badge--custom.custom-badge-__customizerlabel-new, 480 product-card .badge-list .badge.badge--custom[data-custom-badge="__customizerlabel-new"] { 481 background-color: #ffffff !important; 482 border-color: !important; 483 color: #2e2bd8 !important; 484 } 485 486 487 488 489 badge-list.badge-list .badge--new, 490 .ns-product .ns-product_badge-list .ns-product_badge-item.badge.custom-badge-new, 491 .ns-autocomplete .ns-product .ns-product_badge-item[data-custom-badge="new"], 492 product-card .badge-list .badge.badge--custom.custom-badge-new, 493 product-card .badge-list .badge.badge--custom[data-custom-badge="new"] { 494 background-color: #ffffff !important; 495 border-color: #2e2bd8 !important; 496 color: #2e2bd8 !important; 497 } 498 499 500 501 502 badge-list.badge-list .badge--pre-order, 503 .ns-product .ns-product_badge-list .ns-product_badge-item.badge.custom-badge-pre-order, 504 .ns-autocomplete .ns-product .ns-product_badge-item[data-custom-badge="pre-order"], 505 product-card .badge-list .badge.badge--custom.custom-badge-pre-order, 506 product-card .badge-list .badge.badge--custom[data-custom-badge="pre-order"] { 507 background-color: #c4d9fb !important; 508 border-color: !important; 509 color: #0d0c22 !important; 510 } 511 512 513 514 515 badge-list.badge-list .badge--ready-to-ship, 516 .ns-product .ns-product_badge-list .ns-product_badge-item.badge.custom-badge-ready-to-ship, 517 .ns-autocomplete .ns-product .ns-product_badge-item[data-custom-badge="ready-to-ship"], 518 product-card .badge-list .badge.badge--custom.custom-badge-ready-to-ship, 519 product-card .badge-list .badge.badge--custom[data-custom-badge="ready-to-ship"] { 520 background-color: #DA9FC4 !important; 521 border-color: !important; 522 color: #ffffff !important; 523 } 524 525 526 527 528 badge-list.badge-list .badge--__label-vintage-beads, 529 .ns-product .ns-product_badge-list .ns-product_badge-item.badge.custom-badge-__label-vintage-beads, 530 .ns-autocomplete .ns-product .ns-product_badge-item[data-custom-badge="__label-vintage-beads"], 531 product-card .badge-list .badge.badge--custom.custom-badge-__label-vintage-beads, 532 product-card .badge-list .badge.badge--custom[data-custom-badge="__label-vintage-beads"] { 533 background-color: #DA9FC4 !important; 534 border-color: !important; 535 color: #ffffff !important; 536 } 537 538 539 540 badge-list.badge-list .badge--extra-30--off, 541 badge-list.badge-list .badge.badge--custom.badge--extra-30--off, 542 .ns-product .ns-product_badge-list .ns-product_badge-item.badge.custom-badge-extra-30--off, 543 product-card .badge-list .badge.badge--custom.custom-badge-extra-30--off { 544 background-color: #dc6464 !important; 545 border-color: !important; 546 color: #ffffff !important; 547 } 548 </style> 549 550
551<script> 552 function handleize(text) { 553 return text.toString().toLowerCase() 554 .replace(/\s+/g, '-') // Replace spaces with - 555 .replace(/[^\w\-]+/g, '') // Remove all non-word chars 556 .replace(/\-\-+/g, '-') // Replace multiple - with single - 557 .replace(/^-+/, '') // Trim - from start of text 558 .replace(/-+$/, ''); // Trim - from end of text 559 } 560 561 function applyCustomBadgeClass() { 562 const spans = document.querySelectorAll('.ns-product_badge-item.badge'); 563 spans.forEach(span => { 564 const content = handleize(span.textContent); 565 const customClass = 'custom-badge-' + content; 566 if (!span.classList.contains(customClass)) { 567 span.classList.add(customClass); 568 } 569 }); 570 } 571 572 document.addEventListener("DOMContentLoaded", () => { 573 const nostoCollection = document.querySelector('.CollectionMain'); 574 if (nostoCollection) { 575 const observer = new MutationObserver((mutationsList, observer) => { 576 for (let mutation of mutationsList) { 577 if (mutation.type === "childList") { 578 if (mutation.target.querySelector('.ns-product-grid')) { 579 setTimeout(() => { 580 applyCustomBadgeClass(); 581 observer.disconnect(); 582 }, 300); 583 } 584 } 585 } 586 }); 587 observer.observe(nostoCollection, { childList: true, subtree: true }); 588 setTimeout(() => { 589 observer.disconnect(); 590 }, 7000); 591 } 592 }) 593</script>
593 594 595 596 597 <style> 598 599 .add-charms-badge { 600 background-color: #da9fc4 !important; 601 color: #ffffff !important; 602 } 603 604 .on-sale-badge { 605 background-color: #2e2bd8 !important; 606 color: #ffffff !important; 607 } 608 609 .vintage-badge { 610 background-color: #da9fc4 !important; 611 color: #ffffff !important; 612 } 613 614 .new-badge { 615 background-color: #ffffff !important; 616 color: #2e2bd8 !important; 617 } 618 619 .new-badge { 620 background-color: #ffffff !important; 621 color: #2e2bd8 !important; 622 } 623 624 .pre-order-badge { 625 background-color: #c4d9fb !important; 626 color: #0d0c22 !important; 627 } 628 629 .ready-to-ship-badge { 630 background-color: #DA9FC4 !important; 631 color: #ffffff !important; 632 } 633 634 .vintage-beads-badge { 635 background-color: #DA9FC4 !important; 636 color: #ffffff !important; 637 } 638 639 </style> 640 641 642<link href="//www.littlewordsproject.com/cdn/shop/t/940/assets/rafteltech-css-vars.css?v=92973811523662642751763029464" rel="stylesheet" type="text/css" media="all" />
642<script> 643 document.documentElement.classList.replace('no-js', 'js'); 644 645 // This allows to expose several variables to the global scope, to be used in scripts 646 window.themeVariables = { 647 settings: { 648 showPageTransition: false, 649 pageType: "collection", 650 moneyFormat: "${{amount}}", 651 moneyWithCurrencyFormat: "${{amount}} USD", 652 currencyCodeEnabled: false, 653 cartType: "message", 654 655 quickBuyExclusions: "collection_custom, gift card, store_appointment, collection_refinedcord, collection_events, quick-add-pdp, open-customizer", 656 657 658 }, 659 660 strings: { 661 addToCartButton: "Add to cart", 662 soldOutButton: "Sold out", 663 notifyMeButton: "Notify Me When Available", 664 preOrderButton: "Pre-order", 665 unavailableButton: "Unavailable", 666 addedToCart: "Added to your cart!", 667 closeGallery: "Close gallery", 668 zoomGallery: "Zoom picture", 669 errorGallery: "Image cannot be loaded", 670 soldOutBadge: "Sold out", 671 discountBadge: "Save @@", 672 sku: "SKU:", 673 shippingEstimatorNoResults: "Sorry, we do not ship to your address.", 674 shippingEstimatorOneResult: "There is one shipping rate for your address:", 675 shippingEstimatorMultipleResults: "There are several shipping rates for your address:", 676 shippingEstimatorError: "One or more error occurred while retrieving shipping rates:", 677 next: "Next", 678 previous: "Previous" 679 }, 680 681 mediaQueries: { 682 'sm': 'screen and (min-width: 700px)', 683 'md': 'screen and (min-width: 1000px)', 684 'lg': 'screen and (min-width: 1150px)', 685 'xl': 'screen and (min-width: 1400px)', 686 '2xl': 'screen and (min-width: 1600px)', 687 'sm-max': 'screen and (max-width: 699px)', 688 'md-max': 'screen and (max-width: 999px)', 689 'lg-max': 'screen and (max-width: 1149px)', 690 'xl-max': 'screen and (max-width: 1399px)', 691 '2xl-max': 'screen and (max-width: 1599px)', 692 'motion-safe': '(prefers-reduced-motion: no-preference)', 693 'motion-reduce': '(prefers-reduced-motion: reduce)', 694 'supports-hover': 'screen and (pointer: fine)', 695 'supports-touch': 'screen and (hover: none)' 696 } 697 }; 698 699 700 window.gamificationExclusion = []; 701 702</script>
702 703 704 <!-- Plugins -->
705<script src="//www.littlewordsproject.com/cdn/shop/t/940/assets/jquery.min.js?v=158417595810649192771763029465"></script>
705 706 707<!-- Begin BlackCrow Script Tag: DO NOT MODIFY! --> 708<link 709 rel="preload" 710 as="script" 711 href="https://shopify-init.blackcrow.ai/js/core/littlewords.js?shopify_app_version=1.0.151&shop=littlewords.myshopify.com" 712>
713<script defer 714 src="https://shopify-init.blackcrow.ai/js/core/littlewords.js?shopify_app_version=1.0.151&shop=littlewords.myshopify.com" 715></script>
715 716<!-- End BlackCrow Script Tag --> 717 718<!-- BE IXF: JavaScript begin --> 719<!-- 720 Access to and use of BrightEdge AutoPilot - Self Connecting Pages is governed by the 721 Infrastructure Product Terms located at: www.brightedge.com/infrastructure-product-terms. 722 Customer acknowledges and agrees it has read, understands and agrees to be bound by the 723 Infrastructure Product Terms. 724--><!-- BE IXF: JavaScript end --> 725 726 727 728<link 729 rel="stylesheet" 730 href="//www.littlewordsproject.com/cdn/shop/t/940/assets/slick.min.css?v=44312729335421437611763029462" 731 media="print" 732 onload="this.media='all'" 733> 734<noscript><link href="//www.littlewordsproject.com/cdn/shop/t/940/assets/slick.min.css?v=44312729335421437611763029462" rel="stylesheet" type="text/css" media="all" /></noscript> 735 736<link 737 rel="stylesheet" 738 href="//www.littlewordsproject.com/cdn/shop/t/940/assets/slick-theme.min.css?v=151715854934032399511763029466" 739 media="print" 740 onload="this.media='all'" 741> 742<noscript><link href="//www.littlewordsproject.com/cdn/shop/t/940/assets/slick-theme.min.css?v=151715854934032399511763029466" rel="stylesheet" type="text/css" media="all" /></noscript> 743
744<script src="//www.littlewordsproject.com/cdn/shop/t/940/assets/slick.min.js?v=6665132008698487401763029462"></script>
744 745 746<link 747 rel="stylesheet" 748 href="https://unpkg.com/flickity@2/dist/flickity.min.css" 749 media="print" 750 onload="this.media='all'" 751> 752<noscript><link href="https://unpkg.com/flickity@2/dist/flickity.min.css" rel="stylesheet" type="text/css" media="all" /></noscript>
753<script defer src="https://cdnjs.cloudflare.com/ajax/libs/flickity/1.1.0/flickity.pkgd.min.js"></script>
753 754 755 756<link rel="stylesheet" href="https://cdn.plyr.io/3.7.8/plyr.css" media="print" onload="this.media='all'" /> 757<noscript><link href="https://cdn.plyr.io/3.7.8/plyr.css" rel="stylesheet" type="text/css" media="all" /></noscript>
758<script defer src="https://cdn.plyr.io/3.7.8/plyr.js"></script>
758 759
760<script defer src="//www.littlewordsproject.com/cdn/shop/t/940/assets/video-inline-module.js?v=155135907297391713331763029463"></script>
760 761 762 763 764<!-- End Plugins --> 765 766<!-- YotPo App --> 767 768<!-- End of YotPo App --> 769 770<!-- Start SearchSpring --> 771 772 773 774 775 776 777 778<!-- End SearchSpring --> 779 780 781<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fancyapps/[email protected]/dist/fancybox/fancybox.css" media="print" onload="this.media='all'"> 782<noscript><link href="https://cdn.jsdelivr.net/npm/@fancyapps/[email protected]/dist/fancybox/fancybox.css" rel="stylesheet" type="text/css" media="all" /></noscript> 783
784<script src="https://cdn.jsdelivr.net/npm/@fancyapps/[email protected]/dist/fancybox/fancybox.umd.js" defer></script>
784 785 786
787<script async src="//www.littlewordsproject.com/cdn/shop/t/940/assets/es-module-shims.min.js?v=114726340736633916291763029463"></script>
787 788 789<!-- GWP -->
790<script id="GwpDiscountJson" type="application/json"> 791 { 792 "items": [ 793 794 795 796 797 798 799 800 801 802 803 804 { 805 "id": "15702501654609", 806 "vid": "59103859408977", 807 "variant_ids": [59103859408977], 808 "threshold": "0", 809 "utm_param_enabled": "true", 810 "utm_param": "utm_source=Klaviyo\u0026utm_medium=email\u0026utm_campaign=wotm-october\u0026tw_source=klaviyo\u0026tw_medium=campaign\u0026variant=58480157786193", 811 "included_in": [15630476279889], 812 "customer_specific": null, 813 "discount_code": "" 814 } 815 816 817 818 819 820 821 , 822 823 { 824 "id": "15702501654609", 825 "vid": "59103859408977", 826 "variant_ids": [59103859408977], 827 "threshold": "0", 828 "utm_param_enabled": "true", 829 "utm_param": "utm_source=onesignal\u0026utm_medium=push\u0026utm_campaign=wotm-october", 830 "included_in": [15630476279889], 831 "customer_specific": null, 832 "discount_code": "" 833 } 834 835 836 837 838 839 840 , 841 842 { 843 "id": "15702501654609", 844 "vid": "59103859408977", 845 "variant_ids": [59103859408977], 846 "threshold": "0", 847 "utm_param_enabled": "true", 848 "utm_param": "utm_campaign=wotm-october\u0026utm_medium=sms\u0026utm_source=postscript\u0026variant=58480157786193", 849 "included_in": [15630476279889], 850 "customer_specific": null, 851 "discount_code": "" 852 } 853 854 855 856 ], 857 "cart_utm_param": "" 858 } 859</script>
859 860
861<script> 862 let activatedGwp = null; 863 let activeGWPArr = []; 864 window.customerTags = []; 865 866 // This snippet runs in <head> before content_for_header defines window.Shopify.routes, 867 // so the root is rendered server side instead of read from window.Shopify 868 const gwpRoutesRoot = "\/"; 869 870 const gwpPostJson = async (path, body) => { 871 const response = await fetch(gwpRoutesRoot + path, { 872 method: 'POST', 873 headers: { 874 'Content-Type': 'application/json' 875 }, 876 body: JSON.stringify(body) 877 }); 878 return response.json(); 879 } 880 881 const gwpLineProperties = (variantId, productId) => ({ 882 _gwp_enabled: `gid://shopify/ProductVariant/${variantId}`, 883 _gwp_product_id: `gid://shopify/Product/${productId}` 884 }); 885 886 // A cart line is a gift only if it was added by this script (has the _gwp_enabled property). 887 // Matching on variant alone would treat a paid purchase of the same product as the gift. 888 const isGwpLine = (item) => !!(item.properties && item.properties['_gwp_enabled']); 889 890 // Checks whether a cart line item belongs to a given gwp: same product, default variant or any of its variant_ids 891 const isGwpItem = (gwp, item) => { 892 const variantIds = gwp.variant_ids || []; 893 return item.product_id == gwp.id || gwp.vid == item.variant_id || variantIds.includes(parseInt(item.variant_id)); 894 } 895 896 const isGwpValid = (gwp, cart, cartPrice) => { 897 const customerTag = gwp.customer_specific && gwp.customer_specific.customer_tag; 898 if (customerTag && !(window.customerTags || []).includes(customerTag)) { 899 console.log("GWP not applicable for customer tag", customerTag); 900 return false; 901 } 902 903 // When the gwp has a discount_code, the cart must have that code applied. 904 // Applicability is not required: the code may only become applicable once the gift is in the cart. 905 const requiredCode = (gwp.discount_code || '').trim().toLowerCase(); 906 if (requiredCode) { 907 const cartCodes = (cart.discount_codes || []).map((discount) => (discount.code || '').trim().toLowerCase()); 908 if (!cartCodes.includes(requiredCode)) { 909 console.log("GWP discount code not matched", gwp.discount_code, "cart codes", cartCodes); 910 return false; 911 } 912 } 913 914 // included_in can be missing when the metaobject field is unset 915 const includedIn = gwp.included_in || []; 916 const isIncluded = includedIn.length == 0 || 917 cart.items.some((item) => !isGwpLine(item) && includedIn.includes(item.product_id)); 918 919 console.log("VALIDATE GWP", gwp, "is_included", isIncluded, "cart_price", cartPrice, "threshold", gwp.threshold); 920 return isIncluded && cartPrice >= parseFloat(gwp.threshold); 921 } 922 923 // Determine to Add or Remove 924 925 let gwpRunning = false; 926 let gwpRerun = null; 927 928 const handleGwp = async (isCartUpdate) => { 929 // Active gwps are resolved asynchronously; validating before that would see none and remove the gift 930 await gwpReady; 931 932 // Overlapping runs (initial check + cart:refreshed) would both see the gift missing and add it twice 933 if (gwpRunning) { 934 gwpRerun = gwpRerun || !!isCartUpdate; 935 return; 936 } 937 gwpRunning = true; 938 939 try { 940 const cart = await (await fetch(gwpRoutesRoot + 'cart.js')).json(); 941 942 // Gift lines must not count towards the threshold they are validated against 943 const gwpLines = cart.items.filter(isGwpLine); 944 const gwpLinesTotal = gwpLines.reduce((sum, item) => sum + item.final_line_price, 0); 945 const cartPrice = (cart.total_price - gwpLinesTotal) / 100.0; 946 947 const updates = {}; 948 const itemsToAdd = []; 949 950 // Remove gifts that no longer belong to any active gwp 951 for (const item of gwpLines) { 952 if (!activeGWPArr.some((gwp) => isGwpItem(gwp, item))) { 953 updates[item.key] = 0; 954 } 955 } 956 957 for (const gwp of activeGWPArr) { 958 const lines = gwpLines.filter((item) => isGwpItem(gwp, item)); 959 960 if (isGwpValid(gwp, cart, cartPrice)) { 961 if (lines.length == 0) { 962 itemsToAdd.push({ id: gwp.vid, quantity: 1, properties: gwpLineProperties(gwp.vid, gwp.id) }); 963 } else { 964 // Keep a single gift: one line, quantity 1
965 lines.forEach((item, index) => { 966 if (index > 0) { 967 updates[item.key] = 0; 968 } else if (item.quantity != 1) { 969 updates[item.key] = 1; 970 } 971 }); 972 } 973 } else { 974 // remove whichever variant of this gwp is actually in the cart, not just the default one 975 lines.forEach((item) => { updates[item.key] = 0; }); 976 } 977 } 978 979 console.log("GWP lines in cart", gwpLines.map((item) => item.key), "updates", updates, "to add", itemsToAdd); 980 981 const hasUpdates = Object.keys(updates).length > 0; 982 if (hasUpdates) { 983 await gwpPostJson('cart/update.js', { updates }); 984 } 985 if (itemsToAdd.length > 0) { 986 await gwpPostJson('cart/add.js', { items: itemsToAdd }); 987 } 988 989 if (hasUpdates || itemsToAdd.length > 0 || isCartUpdate) { 990 document.documentElement.dispatchEvent( 991 new CustomEvent("cart:refresh", { 992 bubbles: true, 993 }) 994 ); 995 } 996 997 if (isCartUpdate) { 998 const drawer = document.querySelector("cart-drawer"); 999 if (drawer) { 1000 drawer.show(); 1001 } 1002 } 1003 } catch (error) { 1004 console.error("GWP validation failed", error); 1005 } finally { 1006 gwpRunning = false; 1007 if (gwpRerun !== null) { 1008 const rerunIsCartUpdate = gwpRerun; 1009 gwpRerun = null; 1010 handleGwp(rerunIsCartUpdate); 1011 } 1012 } 1013 } 1014 1015 // Reads a query string (or a full URL) into [key, value] pairs, ignoring empty values 1016 const parseGwpParams = (value) => [...new URLSearchParams((value || '').split('?').pop())] 1017 .filter(([key, paramValue]) => key && paramValue); 1018 1019 // The campaign is identified by its utm_* params; other params (variant, tw_*, _kx...) differ 1020 // per link in the same email, so they are only compared when no utm_* param is configured 1021 const isGwpUtmInUrl = (utmParam) => { 1022 const configured = parseGwpParams(utmParam); 1023 const utmOnly = configured.filter(([key]) => key.toLowerCase().startsWith('utm_')); 1024 const required = utmOnly.length > 0 ? utmOnly : configured; 1025 if (required.length == 0) { 1026 return false; 1027 } 1028 const current = new URLSearchParams(location.search); 1029 return required.every(([key, paramValue]) => (current.get(key) || '').toLowerCase() == paramValue.toLowerCase()); 1030 } 1031 1032 const getGwpSession = (key) => { 1033 try { 1034 return sessionStorage.getItem(key); 1035 } catch (error) { 1036 return null; 1037 } 1038 } 1039 1040 const setGwpSession = (key, value) => { 1041 try { 1042 sessionStorage.setItem(key, value); 1043 } catch (error) {} 1044 } 1045 1046 const saveUtmInCart = async (utm_param = null) => { 1047 console.log("Saving utm", utm_param); 1048 if(utm_param) { 1049 let attributes = { 1050 '_gwp_utm_param': utm_param, 1051 '_gwp_url_validated': true 1052 }; 1053 await gwpPostJson('cart/update.js', { attributes }); 1054 } 1055 } 1056 1057 // Parsed immediately rather than waiting for DOMContentLoaded: the JSON script 1058 // tag is already in the DOM (it's the preceding sibling in this file), and 1059 // waiting for DOMContentLoaded left a window where cart drawer refresh events 1060 // could fire before window.gwp was ever set, throwing on window.gwp.items. 1061 const gwpReady = (async function initGwp() { 1062 const gwpDiscountJsonContent = document.querySelector('#GwpDiscountJson').innerHTML; 1063 window.gwp = JSON.parse(gwpDiscountJsonContent); 1064 1065 if(window.gwp.items.length > 0) { 1066 for(const gwpItem of window.gwp.items) { 1067 const utmParam = gwpItem.utm_param || ''; 1068 // sessionStorage is per tab, so the cart attribute keeps the promo active in new tabs and later visits 1069 const isUtmValidated = utmParam && ( 1070 isGwpUtmInUrl(utmParam) || 1071 getGwpSession('_gwp_utm_param') == utmParam || 1072 window.gwp.cart_utm_param == utmParam 1073 ); 1074 if(gwpItem.utm_param_enabled == 'true' && isUtmValidated) { 1075 setGwpSession('_gwp_url_validated', 'true'); 1076 setGwpSession('_gwp_utm_param', utmParam); 1077 1078 activatedGwp = gwpItem; 1079 activeGWPArr.push(gwpItem); 1080 1081 if (window.gwp.cart_utm_param != utmParam) { 1082 console.log('ITEM SAVE UTM'); 1083 try { 1084 await saveUtmInCart(utmParam); 1085 } catch (error) { 1086 console.error("GWP could not save utm in cart", error); 1087 } 1088 } 1089 break; 1090 } 1091 else if(activatedGwp == null && gwpItem.utm_param_enabled != 'true') { 1092 activatedGwp = gwpItem; 1093 activeGWPArr.push(gwpItem); 1094 } 1095 } 1096 } 1097 })(); 1098 1099 gwpReady.then(() => { 1100 setTimeout(() => { 1101 if (window.gwp?.items?.length > 0) { 1102 handleGwp(); 1103 } 1104 }, 2000); 1105 }); 1106 1107 document.addEventListener('cart:refreshed', () => { 1108 if(window.isCartRefreshed) { 1109 if (window.gwp?.items?.length > 0) { 1110 console.log("Cart refreshed - handling GWP"); 1111 setTimeout(() => { 1112 handleGwp(true); 1113 }, 1000); 1114 } 1115 window.isCartRefreshed = false;
1116 } 1117 }); 1118 1119 document.addEventListener('change', async (e) => { 1120 if(e.target.classList.contains('gwp-variant-selector')) { 1121 // Swap the gift line by its key so a paid line of the same variant is never touched 1122 await gwpPostJson('cart/change.js', { id: e.target.dataset.key, quantity: 0 }); 1123 await gwpPostJson('cart/add.js', { 1124 items: [{ 1125 id: e.target.value, 1126 quantity: 1, 1127 properties: gwpLineProperties(e.target.value, e.target.dataset.productId) 1128 }] 1129 }); 1130 document.documentElement.dispatchEvent( 1131 new CustomEvent("cart:refresh", { 1132 bubbles: true, 1133 }) 1134 ); 1135 } 1136 }) 1137</script>
1137 1138 1139 1140<!-- Nosto --> 1141<link rel="preconnect" href="https://connect.nosto.com"> 1142 1143 <link rel="preconnect" href="https://search.nosto.com" crossorigin> 1144
1145<script src="https://connect.nosto.com/include/script/shopify-12599863.js?shop=littlewords.myshopify.com" defer></script>
1145 1146 1147
1148<script src="https://cdn.jsdelivr.net/npm/@loophq/onstore-sdk@latest/dist/loop-onstore-sdk.min.js" defer></script>
vendor: 1 bytes, line 1148
1148
1149<script defer> 1150 if (typeof LoopOnstore !== 'undefined') { 1151 LoopOnstore.init({ 1152 key: "417e1e2fe9528a14751cfe297425f01fdeb3f990", 1153 attach: ".cart-checkout" 1154 }); 1155 } 1156</script>
1156 1157 1158
1158<script> 1159 window.isCartRefreshed = false; 1160 </script>
1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171
1171<script async crossorigin fetchpriority="high" src="/cdn/shopifycloud/importmap-polyfill/es-modules-shim.2.4.0.js"></script>
vendor: 1 bytes, line 1171
1171
1172<script type="importmap">{ 1173 "imports": { 1174 "vendor": "//www.littlewordsproject.com/cdn/shop/t/940/assets/vendor.min.js?v=119239172136752899051763029462", 1175 "theme": "//www.littlewordsproject.com/cdn/shop/t/940/assets/theme.js?v=72279929261281740171775755656", 1176 "photoswipe": "//www.littlewordsproject.com/cdn/shop/t/940/assets/photoswipe.min.js?v=96595610301167188461763029463", 1177 "quick-buy": "//www.littlewordsproject.com/cdn/shop/t/940/assets/quick-buy.module.js?v=11163870052573205111781861737", 1178 "gift-card-form": "//www.littlewordsproject.com/cdn/shop/t/940/assets/gift-card-form.module.js?v=163867038818316568111772486690", 1179 "flatpickr": "https://cdn.jsdelivr.net/npm/flatpickr/dist/flatpickr.min.js" 1180 } 1181 } 1182 </script>
1182 1183 1184
1184<script type="module" src="//www.littlewordsproject.com/cdn/shop/t/940/assets/vendor.min.js?v=119239172136752899051763029462"></script>
1184 1185
1185<script type="module" src="//www.littlewordsproject.com/cdn/shop/t/940/assets/theme.js?v=72279929261281740171775755656"></script>
1185 1186 1187<link rel="preload" href="//www.littlewordsproject.com/cdn/shop/t/940/assets/custom.js?v=60511115120773168251788858135" as="script"> 1188 1189
1189<script> 1190 window.earlyAccess = null; 1191 window.earlyAccessArray = []; 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 // Visible Early Access sections 1214 const visibleEarlyAccessSections = () => { 1215 document.querySelectorAll('.section-early-access').forEach((section) => { 1216 let sectionWrapper = section.querySelector('.section-early-access-wrapper'); 1217 if(sectionWrapper.dataset.tag == '') { 1218 section.classList.remove('hidden'); 1219 } 1220 else { 1221 let tags = window.earlyAccess.accessTag.replaceAll(', ', ',').split(','); 1222 let sectionTags = sectionWrapper.dataset.tag.replaceAll(', ', ',').split(','); 1223 if(tags.some(value => sectionTags.includes(value))) { 1224 section.classList.remove('hidden'); 1225 } 1226 } 1227 }) 1228 } 1229 1230 // Update announcement bar 1231 const updateEarlyAccessAnnouncement = (is_early_access_enabled) => { 1232 let announcementCarousel = document.querySelector('announcement-bar-carousel'); 1233 let announcementCarouselBtnPrev = document.querySelector('.announcement-bar button[is="carousel-prev-button"]'); 1234 let announcementCarouselBtnNext = document.querySelector('.announcement-bar button[is="carousel-next-button"]'); 1235 1236 if(!announcementCarousel) return; 1237 1238 let ea_slide_count = 0; 1239 announcementCarousel.querySelectorAll('.slide-item').forEach((slide, idx) => { 1240 if(is_early_access_enabled) { 1241 if(slide.classList.contains('early-access-slide')) { 1242 let tags = window.earlyAccess.accessTag.replaceAll(', ', ',').split(','); 1243 let slideTags = slide.dataset.eaTag.replaceAll(', ', ',').split(','); 1244 if(slide.dataset.eaTag == '' || tags.some(value => slideTags.includes(value))) { 1245 console.log(slide.dataset.eaTag == '', tags.some(value => slideTags.includes(value))); 1246 if(ea_slide_count == 0) { 1247 slide.classList.add('is-selected'); 1248 } 1249 ea_slide_count ++; 1250 } 1251 else { 1252 slide.remove(); 1253 } 1254 } 1255 else { 1256 slide.remove(); 1257 } 1258 } 1259 else { 1260 if(slide.classList.contains('early-access-slide')) { 1261 slide.remove(); 1262 } 1263 } 1264 }) 1265 1266 announcementCarousel.classList.remove('visibility-hidden'); 1267 1268 if(is_early_access_enabled && ea_slide_count <= 1) { 1269 announcementCarouselBtnPrev.classList.add('hidden'); 1270 announcementCarouselBtnNext.classList.add('hidden'); 1271 } 1272 } 1273 1274 1275 let page_template = 'collection'; 1276 1277 let baseAccess = null; 1278 let accessCount = 0; 1279 1280 for(eAccess of window.earlyAccessArray) { 1281 if(eAccess.isDefault == 'true') { 1282 baseAccess = eAccess; 1283 break; 1284 } 1285 else { 1286 if(eAccess.utm_enabeld == 'true') { 1287 if(location.href.includes(eAccess.utm_param) || localStorage.getItem('_ea_utm_param') == eAccess.utm_param) { 1288 localStorage.setItem('_ea_utm_param', eAccess.utm_param); 1289 if(window.earlyAccess == null) { 1290 window.earlyAccess = eAccess; 1291 } 1292 accessCount ++; 1293 } 1294 } 1295 else { 1296 if(window.earlyAccess == null) { 1297 window.earlyAccess = eAccess; 1298 } 1299 accessCount ++; 1300 } 1301 } 1302 } 1303 1304 if(baseAccess != null) { 1305 window.earlyAccess = baseAccess; 1306 } 1307 1308 if(window.earlyAccess != null) { 1309 1310 // Redirect valid users to Early Access landing page 1311 if(page_template == 'index' & window.earlyAccess.redirectUrl != '') { 1312 location.href = window.earlyAccess.redirectUrl; 1313 } 1314 1315 window.addEventListener('DOMContentLoaded', () => { 1316 visibleEarlyAccessSections(); 1317 updateEarlyAccessAnnouncement(true); 1318 }) 1319 } 1320 else { 1321 1322 window.addEventListener('DOMContentLoaded', () => { 1323 updateEarlyAccessAnnouncement(false); 1324 }) 1325 1326 // Redirect to the homepage if invalided users access the Early Access landing page 1327 if(window.earlyAccess != null && window.earlyAccess.redirectUrl == location.href) { 1328 location.href = '/'; 1329 } 1330 } 1331 1332</script>
1332 1333 1334
1334<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
1334<meta name="google-site-verification" content="fNs7n1erzNyNpuuhV39OtL16YK4lmLRhh14ioSTvfZo"> 1335<meta name="google-site-verification" content="fNs7n1erzNyNpuuhV39OtL16YK4lmLRhh14ioSTvfZo"> 1336<meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/12599863/digital_wallets/dialog"> 1337<meta id="in-context-paypal-metadata" data-shop-id="12599863" data-venmo-supported="true" data-environment="production" data-locale="en_US" data-paypal-v4="true" data-currency="USD"> 1338<link rel="ucp" href="/.well-known/ucp" version="2026-08-25"><link rel="alternate" type="application/atom+xml" title="Feed" href="/collections/shop.atom" /> 1339<link rel="alternate" hreflang="x-default" href="https://www.littlewordsproject.com/collections/shop"> 1340<link rel="alternate" hreflang="en" href="https://www.littlewordsproject.com/collections/shop"> 1341<link rel="alternate" hreflang="en-CA" href="https://www.littlewordsproject.com/en-ca/collections/shop"> 1342<link rel="alternate" type="application/json+oembed" href="https://www.littlewordsproject.com/collections/shop.oembed">
1343<script async="async" src="/checkouts/internal/preloads.js?locale=en-US&default_configuration_id=11015848017"></script>
1343 1344<link rel="preconnect" href="https://shop.app" crossorigin="anonymous">
1345<script async="async" src="https://shop.app/checkouts/internal/preloads.js?locale=en-US&default_configuration_id=11015848017&shop_id=12599863" crossorigin="anonymous"></script>
vendor: 1 bytes, line 1345
1345
1346<script id="apple-pay-shop-capabilities" type="application/json">{"shopId":12599863,"countryCode":"US","currencyCode":"USD","merchantCapabilities":["supports3DS"],"merchantId":"gid:\/\/shopify\/Shop\/12599863","merchantName":"Little Words Project","requiredBillingContactFields":["postalAddress","email"],"requiredShippingContactFields":["postalAddress","email"],"shippingType":"shipping","supportedNetworks":["visa","masterCard","amex","discover","elo","jcb"],"total":{"type":"pending","label":"Little Words Project","amount":"1.00"},"shopifyPaymentsEnabled":true,"supportsSubscriptions":true}</script>
vendor: 1 bytes, line 1346
1346
1347<script id="shopify-features" type="application/json">{"accessToken":"094cee51e0b12b0f1f85ad301ef9f4fa","betas":["rich-media-storefront-analytics"],"domain":"www.littlewordsproject.com","predictiveSearch":true,"shopId":12599863,"locale":"en"}</script>
vendor: 1 bytes, line 1347
1347
1348<script>var Shopify = Shopify || {}; 1349Shopify.shop = "littlewords.myshopify.com"; 1350Shopify.locale = "en"; 1351Shopify.currency = {"active":"USD","rate":"1.0"}; 1352Shopify.country = "US"; 1353Shopify.theme = {"name":"[MAIN] - Production Theme - v3.0.0","id":188681748561,"schema_name":"Prestige","schema_version":"7.3.2","theme_store_id":null,"role":"main"}; 1354Shopify.theme.handle = "null"; 1355Shopify.theme.style = {"id":null,"handle":null}; 1356Shopify.cdnHost = "www.littlewordsproject.com/cdn"; 1357Shopify.routes = Shopify.routes || {}; 1358Shopify.routes.root = "/"; 1359Shopify.shopJsCdnBaseUrl = "https://cdn.shopify.com/shopifycloud/shop-js"; 1360Shopify.SignInWithShop = Shopify.SignInWithShop || {}; 1361Shopify.SignInWithShop.User = Shopify.SignInWithShop.User || {}; 1362Shopify.SignInWithShop.User.recognized = false;</script>
vendor: 1 bytes, line 1362
1362
1363<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
vendor: 1 bytes, line 1363
1363
1364<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 1364
1364
1365<script> 1366 window.ShopifyPay = window.ShopifyPay || {}; 1367 window.ShopifyPay.apiHost = "shop.app\/pay"; 1368 window.ShopifyPay.redirectState = null; 1369</script>
vendor: 1 bytes, line 1369
1369
1370<script> 1371 window.Shopify = window.Shopify || {}; 1372 window.Shopify.SignInWithShop = window.Shopify.SignInWithShop || {}; 1373 window.Shopify.SignInWithShop.assetMetrics = { sampleRate: 0.25 }; 1374 window.Shopify.SignInWithShop.eligible = true; 1375</script>
vendor: 1 bytes, line 1375
1375
1376<script id="shop-js-analytics" type="application/json">{"pageType":"collection"}</script>
vendor: 1 bytes, line 1376
1376
1377<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 1377
1377
1378<script type="module"> 1379 await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js"); 1380 1381 window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true}); 1382 1383</script>
vendor: 1 bytes, line 1383
1383
1384<script> 1385 window.Shopify = window.Shopify || {}; 1386 if (!window.Shopify.featureAssets) window.Shopify.featureAssets = {}; 1387 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"]}; 1388</script>
vendor: 1 bytes, line 1388
1388
1389<script>(function() { 1390 var isLoaded = false; 1391 function asyncLoad() { 1392 if (isLoaded) return; 1393 isLoaded = true; 1394 var urls = ["\/\/www.powr.io\/powr.js?powr-token=littlewords.myshopify.com\u0026external-type=shopify\u0026shop=littlewords.myshopify.com","\/\/cdn.shopify.com\/proxy\/53db97ef4827b71d2a3946fec28965343abbb4885b0fc4a33801853c10215bc0\/bingshoppingtool-t2app-prod.trafficmanager.net\/uet\/tracking_script?shop=littlewords.myshopify.com\u0026sp-cache-control=cHVibGljLCBtYXgtYWdlPTkwMA","\/\/cdn.shopify.com\/proxy\/fef1e604e9044384aad4ed8aceed05f8564936374b0ea2e156f2e13407b686ee\/littlewords.bookthatapp.com\/javascripts\/bta-installed.js?shop=littlewords.myshopify.com\u0026sp-cache-control=cHVibGljLCBtYXgtYWdlPTkwMA","\/\/littlewords.bookthatapp.com\/javascripts\/bta.js?shop=littlewords.myshopify.com","https:\/\/connect.nosto.com\/include\/script\/shopify-12599863.js?shop=littlewords.myshopify.com","https:\/\/cdn.shopify.com\/s\/files\/1\/1259\/9863\/t\/472\/assets\/loy_12599863.js?v=1746730644\u0026shop=littlewords.myshopify.com","https:\/\/dh5lo0rakl82a.cloudfront.net\/popups-subscription.js?shop=littlewords.myshopify.com","https:\/\/sdk.postscript.io\/sdk-script-loader.bundle.js?shopId=533827\u0026shop=littlewords.myshopify.com","https:\/\/pdq-scripts.pdqprod.link\/pdq-plugins.js?shop=littlewords.myshopify.com","\/\/cdn.shopify.com\/proxy\/591806f932e2f91ee0300f0f9d95363449ea27ac4fcc52a667aace157adc483d\/littlewords.bookthatapp.c
1394om\/sdk\/v1\/js\/bta-order-status-bootstrap.min.js?shop=littlewords.myshopify.com\u0026sp-cache-control=cHVibGljLCBtYXgtYWdlPTkwMA","https:\/\/shopify-extension.getredo.com\/main.js?widget_id=rfrf6q0upx910bj\u0026shop=littlewords.myshopify.com"]; 1395 for (var i = 0; i < urls.length; i++) { 1396 var s = document.createElement('script'); 1397 s.type = 'text/javascript'; 1398 s.async = true; 1399 s.src = urls[i]; 1400 var x = document.getElementsByTagName('script')[0]; 1401 x.parentNode.insertBefore(s, x); 1402 } 1403 }; 1404 if(window.attachEvent) { 1405 window.attachEvent('onload', asyncLoad); 1406 } else { 1407 window.addEventListener('load', asyncLoad, false); 1408 } 1409})();</script>
vendor: 1 bytes, line 1409
1409
1410<script id="__st">var __st={"a":12599863,"offset":-14400,"reqid":"d3dbcf52-5844-4782-a8f1-03e80efafda5-1790962792","pageurl":"www.littlewordsproject.com\/collections\/shop","u":"0d841da2920a","p":"collection","rtyp":"collection","rid":173291110481};</script>
vendor: 1 bytes, line 1410
1410
1411<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
vendor: 1 bytes, line 1411
1411
1412<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 1412
1412
1413<script integrity="sha256-JjoPp5ZfB1sSAs5SQaol1x1GgvveM+BgmRzyDexInEQ=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//www.littlewordsproject.com/cdn/shopifycloud/storefront/assets/storefront/load_feature-1bd60354.js" crossorigin="anonymous"></script>
vendor: 1 bytes, line 1413
1413
1414<script>(function () {var userAgent = navigator.userAgent;var platform = navigator.platform;var maxTouchPoints = navigator.maxTouchPoints || 0;var isIOS = /iPad|iPhone|iPod/.test(platform) || (platform === 'MacIntel' && maxTouchPoints > 1);var isMacSafari = platform.indexOf('Mac') === 0 && /Safari/.test(userAgent) && !/Chrome|Chromium|CriOS|FxiOS|Edg|OPR|Android/.test(userAgent);var isAppleSafari = isIOS || isMacSafari;if (isAppleSafari) {fetch('/sf_private_access_tokens' + location.search).catch(function () {});}function browserMajorVersion(pattern) {var match = userAgent.match(pattern);return match ? parseInt(match[1], 10) : null;}function shouldLoadAutosizesPolyfill() {if (!window.PerformanceObserver?.supportedEntryTypes?.includes('paint')) {return false;}var chromeVersion = browserMajorVersion(/Chrome\/(\d+)/);if (chromeVersion !== null) {return chromeVersion < 126;}var firefoxVersion = browserMajorVersion(/Firefox\/(\d+)/);if (firefoxVersion !== null) {return firefoxVersion < 150;}var safariVersion = isAppleSafari ? browserMajorVersion(/Version\/(\d+).*Safari\//) : null;if (safariVersion !== null) {return safariVersion < 27;}return true;}if (shouldLoadAutosizesPolyfill()) {var autosizesScript = document.createElement('script');autosizesScript.async = true;autosizesScript.crossOrigin = 'anonymous';autosizesScript.src = "//www.littlewordsproject.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>
1414<script crossorigin="anonymous" defer="defer" src="//www.littlewordsproject.com/cdn/shopifycloud/storefront/assets/shopify_pay/storefront-616277c7.js?v=20250812"></script>
vendor: 1 bytes, line 1414
1414
1415<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 1415
1415
1416<script> 1417 window.Shopify = window.Shopify || {}; 1418 window.Shopify.MCP = window.Shopify.MCP || {}; 1419 window.Shopify.MCP.enabled = true; 1420 window.Shopify.MCP.shop = "littlewords.myshopify.com"; 1421 window.Shopify.MCP.mcpEndpoint = "https:\/\/www.littlewordsproject.com\/api\/mcp"; 1422 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"]}}]; 1423</script>
vendor: 1 bytes, line 1423
1423
1424<script>(()=>{var d="shopify:webmcp_adapter_loaded",n=Symbol.for("shopify.webmcp_adapter_loading");function s(c,a,{win:r=window,doc:o=document}={}){function p(){try{return r.localStorage.getItem(d)==="true"}catch{return!1}}function l(){try{r.localStorage.setItem(d,"true")}catch{}}function u(){return typeof(o.modelContext||r.navigator?.modelContext)?.registerTool=="function"}function f(){if(r[n]||!u())return;let t=o.head||o.getElementsByTagName("head")[0];if(!t)return;let e=o.createElement("script");e.type="module",e.crossOrigin="anonymous",a&&(e.integrity=a),e.src=c,e.addEventListener("load",l,{once:!0}),e.addEventListener("error",()=>{r[n]=!1},{once:!0}),t.appendChild(e),r[n]=!0}function _(t){let e=o.getElementById("shopify-origin-trials");if(!e||r.__shopifyOriginTrialsDone){t();return}e.addEventListener("load",t,{once:!0}),e.addEventListener("error",t,{once:!0})}function i(){_(()=>r.setTimeout(f,0))}function m(){o.addEventListener("DOMContentLoaded",i,{once:!0})}p()?i():m()}s("\/\/www.littlewordsproject.com\/cdn\/shopifycloud\/storefront\/assets\/storefront\/webmcp-c6b62ece.js","sha256-ke4DDuBjdvea3vxLWxHc9E9nq8zihuG4IfYEGbb77ys=");})(); 1425</script>
vendor: 1 bytes, line 1425
1425
1426<script data-source-attribution="shopify.dynamic_checkout.dynamic.init">var Shopify=Shopify||{};Shopify.PaymentButton=Shopify.PaymentButton||{isStorefrontPortableWallets:!0,init:function(){window.Shopify.PaymentButton.init=function(){};var t=document.createElement("script");t.src="https://www.littlewordsproject.com/cdn/shopifycloud/portable-wallets/latest/portable-wallets.en.js",t.type="module",document.head.appendChild(t)}}; 1427</script>
vendor: 1 bytes, line 1427
1427
1428<script data-source-attribution="shopify.dynamic_checkout.buyer_consent"> 1429 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); 1430</script>
vendor: 1 bytes, line 1430
1430
1431<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})}})); 1432</script>
1432 1433<link id="shopify-accelerated-checkout-styles" rel="stylesheet" media="screen" href="https://www.littlewordsproject.com/cdn/shopifycloud/portable-wallets/latest/accelerated-checkout-backwards-compat.css" crossorigin="anonymous"> 1434<style id="shopify-accelerated-checkout-cart"> 1435 #shopify-buyer-consent { 1436 margin-top: 1em; 1437 display: inline-block; 1438 width: 100%; 1439} 1440 1441#shopify-buyer-consent.hidden { 1442 display: none; 1443} 1444 1445#shopify-subscription-policy-button { 1446 background: none; 1447 border: none; 1448 padding: 0; 1449 text-decoration: underline; 1450 font-size: inherit; 1451 cursor: pointer; 1452} 1453 1454#shopify-subscription-policy-button::before { 1455 box-shadow: none; 1456} 1457 1458 </style> 1459
1460<script id="shopify-cfh-end">window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
1460 1461<link rel="preload" href="//www.littlewordsproject.com/cdn/shop/t/940/assets/theme.css?v=60907440638757924311775755655" as="style" onload="this.onload=null;this.rel='stylesheet'"> 1462 <link rel="preload" href="//www.littlewordsproject.com/cdn/shop/t/940/assets/component-collection.css?v=99914602432300769891775851945" as="style" onload="this.onload=null;this.rel='stylesheet'"> 1463 <link rel="preload" href="//www.littlewordsproject.com/cdn/shop/t/940/assets/component-product-card.css?v=92017322155019610501763029465" as="style" onload="this.onload=null;this.rel='stylesheet'"> 1464 <noscript><link rel="stylesheet" href="//www.littlewordsproject.com/cdn/shop/t/940/assets/theme.css?v=60907440638757924311775755655"></noscript> 1465 <noscript><link rel="stylesheet" href="//www.littlewordsproject.com/cdn/shop/t/940/assets/component-collection.css?v=99914602432300769891775851945"></noscript> 1466 <noscript><link rel="stylesheet" href="//www.littlewordsproject.com/cdn/shop/t/940/assets/component-product-card.css?v=92017322155019610501763029465"></noscript><link href="//www.littlewordsproject.com/cdn/shop/t/940/assets/spacing.min.css?v=146324527973017927421763029464" rel="stylesheet" type="text/css" media="all" /><link href="//www.littlewordsproject.com/cdn/shop/t/940/assets/layout.css?v=10003468985810083441778598770" rel="stylesheet" type="text/css" media="all" /><link href="//www.littlewordsproject.com/cdn/shop/t/940/assets/custom.css?v=117430122052010673991777577439" rel="stylesheet" type="text/css" media="all" /><link href="//www.littlewordsproject.com/cdn/shop/t/940/assets/custom.v2.css?v=21885749680826022561763029464" rel="stylesheet" type="text/css" media="all" /> 1467<link href="//www.littlewordsproject.com/cdn/shop/t/940/assets/component-cart-drawer.css?v=1440147725127115371778265456" rel="stylesheet" type="text/css" media="all" /><link href="//www.littlewordsproject.com/cdn/shop/t/940/assets/component-product-card.css?v=92017322155019610501763029465" rel="stylesheet" type="text/css" media="all" /> 1468 <link href="//www.littlewordsproject.com/cdn/shop/t/940/assets/sections-v2.0a.css?v=8463928793350834001779809256" rel="stylesheet" type="text/css" media="all" /> 1469 <link href="//www.littlewordsproject.com/cdn/shop/t/940/assets/component-cart.css?v=51313446012708460811779398642" rel="stylesheet" type="text/css" media="all" /> 1470 <link href="//www.littlewordsproject.com/cdn/shop/t/940/assets/global-pages.css?v=171878313562265522531763029464" rel="stylesheet" type="text/css" media="all" /> 1471 <link href="//www.littlewordsproject.com/cdn/shop/t/940/assets/customer-account.css?v=70107717438519294511763029466" rel="stylesheet" type="text/css" media="all" /> 1472 <link href="//www.littlewordsproject.com/cdn/shop/t/940/assets/mothers-day.css?v=101338818071245972471778078730" rel="stylesheet" type="text/css" media="all" /> 1473 <link href="//www.littlewordsproject.com/cdn/shop/t/940/assets/popup.css?v=147335432310607276261763029464" rel="stylesheet" type="text/css" media="all" /> 1474 1475 1476 1477 1478 1479
1479<script> 1480 window.Shopify = window.Shopify || {theme: {id: 188681748561, role: 'main' } }; 1481 window._template = { 1482 directory: "", 1483 name: "collection", 1484 suffix: "" 1485 }; 1486 </script>
1486 1487 1488 1489 1490<link href="//www.littlewordsproject.com/cdn/shop/t/940/assets/component-collection.css?v=99914602432300769891775851945" rel="stylesheet" type="text/css" media="all" /> 1491 <style> 1492 @media screen and (max-width: 768px) { 1493 body .shopify-section--main-collection .CollectionMain .swiper-pagination { 1494 display: block; 1495 --swiper-pagination-bottom: -4px; 1496 } 1497 1498 body .shopify-section--main-collection .CollectionMain .swiper-pagination .swiper-pagination-bullet { 1499 border: 1px solid #da9fc4; 1500 --swiper-pagination-bullet-inactive-color: transparent; 1501 --swiper-pagination-color: #da9fc4; 1502 --swiper-pagination-bullet-size: 4px; 1503 --swiper-pagination-bullet-opacity: 1; 1504 --swiper-pagination-bullet-inactive-opacity: 1; 1505 } 1506 } 1507 </style> 1508 1509 1510 1511 <style> 1512 @media screen and (max-width: 768px) { 1513 body .shopify-section--main-collection .CollectionMain .swiper-button-next, 1514 body .shopify-section--main-collection .CollectionMain .swiper-button-prev { 1515 display: block; 1516 visibility: hidden; 1517 animation: show 0.5s ease-in-out 2s forwards; 1518 top: 50%; 1519 transform: translateY(-50%); 1520 margin: 0; 1521 line-height: 1; 1522 background: rgba(255,255,255, 1); 1523 width: 20px; 1524 height: 20px; 1525 display: flex; 1526 justify-content: center; 1527 align-items: center; 1528 border-radius: 50%; 1529 1530 --swiper-navigation-color: #da9fc4; 1531 --swiper-navigation-size: 10px; 1532 --swiper-navigation-sides-offset: 5px; 1533 } 1534 1535 1536 @keyframes show { 1537 0% { 1538 visibility: hidden; 1539 } 1540 100% { 1541 visibility: visible; 1542 } 1543 } 1544 1545 1546 body .shopify-section--main-collection .CollectionMain .swiper-button-next::after { 1547 margin-left: 2px; 1548 font-weight: 900; 1549 } 1550 body .shopify-section--main-collection .CollectionMain .swiper-button-prev::after { 1551 margin-right: 2px; 1552 font-weight: 900; 1553 } 1554 } 1555 </style> 1556
1556<script> 1557 document.addEventListener("DOMContentLoaded", () => { 1558 function checkSwiperSlides(attempts = 6) { 1559 let tries = 0; 1560 let swipersInitialized = false; 1561 1562 const interval = setInterval(() => { 1563 document.querySelectorAll('.swiper').forEach((swiperContainer) => { 1564 const slides = swiperContainer.querySelectorAll('.swiper-wrapper .swiper-slide'); 1565 const nextButton = swiperContainer.querySelector('.swiper-button-next'); 1566 const prevButton = swiperContainer.querySelector('.swiper-button-prev'); 1567 1568 if (slides.length > 0) { 1569 swipersInitialized = true; 1570 if (slides.length === 1) { 1571 if (nextButton) nextButton.style.display = 'none'; 1572 if (prevButton) prevButton.style.display = 'none'; 1573 } 1574 } 1575 }); 1576 1577 tries++; 1578 if (swipersInitialized || tries >= attempts) { 1579 clearInterval(interval); 1580 } 1581 }, 2000); 1582 } 1583 1584 checkSwiperSlides(); 1585 }); 1586 1587 1588 </script>
1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602
1602<script src="//www.littlewordsproject.com/cdn/shop/t/940/assets/slider.js?v=90171995771059705821763029463" defer="defer"></script>
1602 1603 1604 <!-- AB Test --> 1605
1605<script src="//www.littlewordsproject.com/cdn/shop/t/940/assets/ab-test-script.js?v=111307384019735786771763029466" defer="defer"></script>
1605 1606 1607 1608 1609 1610 <!-- Verifypass --> 1611 1612 <!-- End Verifypass --> 1613 1614 1615
1615<script src="//www.littlewordsproject.com/cdn/shop/t/940/assets/component-cart-2.0.js?v=114802142945638476771763029463" defer></script>
1615 1616
1616<script src="//www.littlewordsproject.com/cdn/shop/t/940/assets/occasion-selector.js?v=31208180808606636611763029466" defer></script>
1616 1617
1617<script src="//www.littlewordsproject.com/cdn/shop/t/940/assets/tapcart-product-form.js?v=27883007223142464391763029464" defer></script>
1617 1618 1619 1620
1620<script data-remove-announcement-bar> 1621 function announcementBar() { 1622 let hideBar = document.querySelector('aside[id*="shopify-section-sections--"][id*="__announcement-bar"]'); 1623 if (hideBar) { 1624 hideBar.style.display = 'none'; 1625 } 1626 } 1627 document.addEventListener('DOMContentLoaded', (event) => { 1628 const urlParams = new URLSearchParams(window.location.search); 1629 const source = urlParams.get('source'); 1630 const platform = urlParams.get('platform'); 1631 if (source === 'shop2app') { 1632 if (platform === 'ios' || platform === 'android') { 1633 announcementBar(); 1634 } 1635 } 1636 }); 1637</script>
1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647
1648<script> 1649 document.addEventListener("DOMContentLoaded", function () { 1650 console.log('Klaviyo - Add to Cart tracking initialized'); 1651 1652 function trackAddToCart(variantId, productHandle, quantity = 1) { 1653 if (!variantId || !productHandle) { 1654 console.warn('Klaviyo: Missing variantId or productHandle'); 1655 return; 1656 } 1657 1658 const qty = parseInt(quantity) || 1; 1659 1660 fetch(`/products/${productHandle}.js`) 1661 .then(response => { 1662 if (!response.ok) { 1663 throw new Error(`Klaviyo: Failed to fetch product â status ${response.status}`); 1664 } 1665 return response.json(); 1666 }) 1667 .then(product => { 1668 if (!product || !product.id || !product.variants || !product.variants[0]) { 1669 console.warn('Klaviyo: Incomplete or invalid product data', product); 1670 return; 1671 } 1672 1673 const addedItem = { 1674 ProductID: product.id, 1675 SKU: product.variants[0].sku, 1676 ProductName: product.title, 1677 Quantity: qty, 1678 ItemPrice: parseFloat(product.price) / 100, 1679 RowTotal: (parseFloat(product.price) * qty) / 100, 1680 ProductURL: "https://www.littlewordsproject.com" + product.url, 1681 ImageURL: product.featured_image, 1682 ProductCategories: product.type ? [product.type] : [] 1683 }; 1684 1685 // Wait a moment to ensure the cart is updated 1686 setTimeout(() => { 1687 fetch('/cart.js') 1688 .then(response => { 1689 if (!response.ok) { 1690 throw new Error(`Klaviyo: Failed to fetch cart â status ${response.status}`); 1691 } 1692 return response.json(); 1693 }) 1694 .then(cart => { 1695 const cartItems = cart.items.map(item => ({ 1696 ProductID: item.product_id, 1697 SKU: item.sku, 1698 ProductName: item.product_title, 1699 Quantity: item.quantity, 1700 ItemPrice: item.price / 100, 1701 RowTotal: (item.price * item.quantity) / 100, 1702 ProductURL: item.url ? `${window.location.origin}${item.url}` : window.location.href, 1703 ImageURL: item.image, 1704 ProductCategories: item.product_type ? [item.product_type] : [] 1705 })); 1706 1707 const itemNames = cartItems.map(i => i.ProductName); 1708 const allCategories = [ 1709 ...new Set(cartItems.flatMap(i => i.ProductCategories || [])) 1710 ]; 1711 1712 const payload = { 1713 "$value": addedItem.RowTotal, 1714 "AddedItemProductName": addedItem.ProductName, 1715 "AddedItemProductID": addedItem.ProductID, 1716 "AddedItemSKU": addedItem.SKU, 1717 "AddedItemCategories": addedItem.ProductCategories, 1718 "AddedItemImageURL": addedItem.ImageURL, 1719 "AddedItemURL": addedItem.ProductURL, 1720 "AddedItemPrice": addedItem.ItemPrice, 1721 "AddedItemQuantity": addedItem.Quantity, 1722 "ItemNames": itemNames, 1723 "CheckoutURL": `${window.location.origin}/checkout`, 1724 "Items": cartItems 1725 }; 1726 1727 console.log('Klaviyo - payload:', payload); 1728 1729 if (window._learnq && Array.isArray(window._learnq)) { 1730 console.log('Klaviyo - Sending track via _learnq'); 1731 window._learnq.push(['track', 'Added to Cart', payload]); 1732 } else if (window.klaviyo && typeof window.klaviyo.track === 'function') { 1733 console.log('Klaviyo - Sending track via klaviyo.track'); 1734 window.klaviyo.track("Added to Cart", payload); 1735 } else { 1736 console.warn('Klaviyo: No tracking object found (_learnq or klaviyo)'); 1737 } 1738 }) 1739 .catch(err => { 1740 console.error('Klaviyo: Error fetching cart data', err); 1741 }); 1742 }, 500); // Delay to make sure cart is updated 1743 }) 1744 .catch(err => { 1745 console.error('Klaviyo: Error fetching product data', err); 1746 }); 1747 } 1748 1749 function extractHandleFromURL(url) {
1750 try { 1751 const pathname = new URL(url).pathname; 1752 const parts = pathname.split('/').filter(Boolean); 1753 const productIndex = parts.indexOf('products'); 1754 if (productIndex !== -1 && parts.length > productIndex + 1) { 1755 return parts[productIndex + 1]; 1756 } 1757 } catch (err) { 1758 console.warn('Invalid URL:', url); 1759 } 1760 return null; 1761 } 1762 1763 1764 // Form tracking 1765 document.querySelectorAll('form[action^="/cart/add"]').forEach(function (form) { 1766 form.addEventListener('submit', function () { 1767 try { 1768 const formData = new FormData(form); 1769 const variantId = formData.get('id'); 1770 const productHandle = formData.get('product-handle'); 1771 const quantity = formData.get('quantity'); 1772 1773 console.log('Klaviyo - form submit detected'); 1774 1775 trackAddToCart(variantId, productHandle, quantity); 1776 } catch (err) { 1777 console.error('Klaviyo: Error in form submit handler', err); 1778 } 1779 }); 1780 }); 1781 1782 // Custom JS event tracking 1783 document.addEventListener("customAddToCart", function (event) { 1784 try { 1785 console.log("Klaviyo - customAddToCart triggered", event); 1786 const { id, handle, quantity, nosto, product } = event.detail; 1787 if (nosto && product) { 1788 const { productId, url} = product; 1789 trackAddToCart(productId, extractHandleFromURL(url), quantity); 1790 } else { 1791 trackAddToCart(id, handle, quantity); 1792 } 1793 } catch (err) { 1794 console.error('Klaviyo: Error in customAddToCart handler', err); 1795 } 1796 }); 1797 }); 1798</script>
1798 1799 1800 1801<style> 1802 body .yotpo-widget-instance .yotpo-reviews-star-ratings-widget, body .yotpo-widget-instance .yotpo-reviews-main-widget { 1803 display: none !important; 1804 } 1805</style> 1806 1807 1808<style> 1809 1810 body pickeasy-app-widget { 1811 width: 100%; 1812 } 1813 1814 body pickeasy-app-widget .order-pickup-location-search { 1815 width: 100%; 1816 display: none; 1817 } 1818 1819 body pickeasy-app-widget #order-slots { 1820 padding-top: 0 !important; 1821 padding-inline: 0 !important; 1822 } 1823 body pickeasy-app-widget .order-slots { 1824 padding-left: 2rem !important; 1825 padding-right: 2rem !important; 1826 } 1827 1828 body pickeasy-app-widget .pickeasy-pickup-div { 1829 margin-top: 10px !important; 1830 } 1831 body pickeasy-app-widget .ft-options-container .ft-options-cell .ft-options{ 1832 background: transparent !important; 1833 border: none !important; 1834 font-size: var(--fs-base-14) !important; 1835 line-height: var(--lh-base-1) !important; 1836 font-weight: var(--fw-regular) !important; 1837 letter-spacing: var(--letter-spacing-05) !important; 1838 display: flex !important; 1839 align-items: center !important; 1840 gap: 8px !important; 1841 flex-direction: row !important; 1842 } 1843 1844 body pickeasy-app-widget .ft-options-container .ft-options-cell .ft-options .label-container { 1845 display: flex !important; 1846 flex-direction: column !important; 1847 justify-content: center !important; 1848 font-size: 12px !important; 1849 text-align: left !important; 1850 letter-spacing: 0 !important; 1851 } 1852 1853 body pickeasy-app-widget .ft-options-container .ft-options-cell .ft-options.ft-options-active { 1854 border: none !important; 1855 } 1856 1857 /* Toggle track */ 1858 body pickeasy-app-widget .ft-options-container .ft-options-cell .ft-options .icon-container { 1859 display: flex !important; 1860 width: 44px !important; 1861 height: 24px !important; 1862 min-width: 44px !important; 1863 background: #ccc !important; 1864 border-radius: 12px !important; 1865 position: relative !important; 1866 flex-shrink: 0 !important; 1867 } 1868 1869 /* Hide the SVG inside the track */ 1870 body pickeasy-app-widget .ft-options-container .ft-options-cell .ft-options .icon-container svg { 1871 display: none !important; 1872 } 1873 1874 /* Toggle knob (off position) */ 1875 body pickeasy-app-widget .ft-options-container .ft-options-cell .ft-options .icon-container::after { 1876 content: '' !important; 1877 width: 20px !important; 1878 height: 20px !important; 1879 background: white !important; 1880 border-radius: 50% !important; 1881 position: absolute !important; 1882 top: 2px !important; 1883 left: 2px !important; 1884 transition: left 0.2s ease !important; 1885 box-shadow: 0 1px 3px rgba(0,0,0,0.2) !important; 1886 } 1887 1888 /* Active toggle: blue track */ 1889 body pickeasy-app-widget .ft-options-container .ft-options-cell .ft-options.ft-options-active .icon-container { 1890 background: rgba(46,43,216, 0.5) !important; 1891 } 1892 1893 /* Active toggle: knob slides right */ 1894 body pickeasy-app-widget .ft-options-container .ft-options-cell .ft-options.ft-options-active .icon-container::after { 1895 left: 22px !important; 1896 } 1897 1898 body pickeasy-app-widget .ft-options-container { 1899 display: flex !important; 1900 1901 } 1902 1903 body pickeasy-store-pickup #order-pickup-locations { 1904 box-shadow: none; 1905 } 1906 1907 body pickeasy-app-widget .pickup-location+.pickup-location { 1908 padding-block-start: unset !important; 1909 } 1910 1911 body #pickup-location-content:has(input[type="radio"]:checked), 1912 body #pickup-location-content:hover { 1913 background: #DA9FC41A !important; 1914 border-color: #DA9FC4 !important; 1915 } 1916 1917 /* media query para mobile */ 1918 @media only screen and (max-width: 767px) { 1919 body pickeasy-app-widget { 1920 width: 100% !important; 1921 } 1922 1923 body pickeasy-app-widget .order-slots { 1924 padding-left: 10px !important; 1925 padding-right: 10px !important; 1926 } 1927 } 1928 1929</style> 1930
1931<script> 1932 1933 1934 let standardButtonClicked = false; 1935 document.addEventListener('cartDraweOpened', function(e) { 1936 const pickeasyWidget = document.querySelector('pickeasy-app-widget'); 1937 if (pickeasyWidget) { 1938 standardButton = pickeasyWidget.querySelector('#standard-shipping-option-div'); 1939 if (standardButton && !standardButtonClicked) { 1940 standardButton.click(); 1941 standardButtonClicked = true; 1942 } 1943 } 1944 }); 1945 1946 document.addEventListener('DOMContentLoaded', function() { 1947 const drawer = document.querySelector("cart-drawer"); 1948 if (drawer) { 1949 const observer = new MutationObserver((mutationsList, observer) => { 1950 observer.observe(drawer, { attributes: true, childList: true, subtree: true }); 1951 }); 1952 } 1953 1954 const pickeasyWidget = document.querySelector('pickeasy-app-widget'); 1955 if (pickeasyWidget) { 1956 standardButton = pickeasyWidget.querySelector('#standard-shipping-option-div'); 1957 if (standardButton) { 1958 console.log("pickeasy - standard button"); 1959 } 1960 } 1961 }); 1962</script>
1962 1963<link href="//www.littlewordsproject.com/cdn/shop/t/940/assets/section-storytelling-block.css?v=70012548844637707881763029465" rel="stylesheet" type="text/css" media="all" />
1964<script> 1965 1966 window.ml_config = JSON.parse('{"pixel":{"endpoint":"https://api-little-words.malachyte.com/v1/pixel-event","token":"ZwvpepACb22TOaskV1h8zL3D0OE5kUQCCSFjRSRU"},"recommendation":{"endpoint":"https://api-little-words.malachyte.com/v1/recommendations","token":"ZwvpepACb22TOaskV1h8zL3D0OE5kUQCCSFjRSRU"}}'); 1967 1968 localStorage.setItem("mlk", "eyJwaXhlbCI6eyJlbmRwb2ludCI6Imh0dHBzOi8vYXBpLWxpdHRsZS13b3Jkcy5tYWxhY2h5dGUuY29tL3YxL3BpeGVsLWV2ZW50IiwidG9rZW4iOiJad3ZwZXBBQ2IyMlRPYXNrVjFoOHpMM0QwT0U1a1VRQ0NTRmpSU1JVIn0sInJlY29tbWVuZGF0aW9uIjp7ImVuZHBvaW50IjoiaHR0cHM6Ly9hcGktbGl0dGxlLXdvcmRzLm1hbGFjaHl0ZS5jb20vdjEvcmVjb21tZW5kYXRpb25zIiwidG9rZW4iOiJad3ZwZXBBQ2IyMlRPYXNrVjFoOHpMM0QwT0U1a1VRQ0NTRmpSU1JVIn19"); 1969</script>
1969 1970<!-- BEGIN app block: shopify://apps/keepcart-coupon-protect/blocks/keepcart/6c9b264a-3284-48f2-a6f6-2836be6ada2a --> 1971 1972 1973 1974
1975<script src="https://cdn.shopify.com/extensions/01a0cff8-2c69-745f-8772-fd89b29d2d4b/keepcart-2-253/assets/vars.generated.js" defer="defer"></script>
1975 1976 1977
1977<script src="https://cdn.shopify.com/extensions/01a0cff8-2c69-745f-8772-fd89b29d2d4b/keepcart-2-253/assets/keepcart-embed-catalog.min.js" defer="defer"></script>
1977 1978
1979<script src="https://cdn.shopify.com/extensions/01a0cff8-2c69-745f-8772-fd89b29d2d4b/keepcart-2-253/assets/keepcart-embed-deferred.min.js" defer="defer"></script>
1979 1980 1981 1982 <style> 1983 #kc-discount-banner { 1984 1985 --kc-banner-bg: #1a1a1a; 1986 1987 1988 --kc-banner-color: #f5f5f5; 1989 1990 --kc-banner-font-size: 15px; 1991 --kc-banner-font: Helvetica, Arial, sans-serif; 1992 } 1993 1994 </style> 1995
1995<script> 1996 window.__KC_BANNER_CONFIG__ = { 1997 position: "bottom", 1998 autoHide: 7, 1999 animate: true, 2000 message: "Discount [code] applied - [value] off your order!" 2001 }; 2002 </script>
2002 2003 2004 2005 2006<!-- END app block --><!-- BEGIN app block: shopify://apps/elevar-conversion-tracking/blocks/dataLayerEmbed/bc30ab68-b15c-4311-811f-8ef485877ad6 --> 2007 2008 2009
2010<script type="module" dynamic> 2011 const configUrl = "/a/elevar/static/configs/cf7d0192b393dd38fb3cc4e56019f94cdd21c74c/config.js"; 2012 const config = (await import(configUrl)).default; 2013 const scriptUrl = config.script_src_app_theme_embed; 2014 2015 if (scriptUrl) { 2016 const { handler } = await import(scriptUrl); 2017 2018 await handler( 2019 config, 2020 { 2021 cartData: { 2022 marketId: "5668945", 2023 localeCountryCode:"US", 2024 attributes:{}, 2025 cartTotal: "0.0", 2026 currencyCode:"USD", 2027 items: [] 2028} 2029, 2030 user: { 2031 cartTotal: "0.0", 2032 currencyCode:"USD", 2033 customer: {}, 2034} 2035, 2036 isOnCartPage:false, 2037 collectionView:{ 2038 currencyCode:"USD", 2039 items: [{id:"W-CUS-BLUX",name:"Custom Bluestone", 2040 brand:"Imperial", 2041 category:"Custom", 2042 variant:"Bluestone \/ White \/ XXS", 2043 price: "35.0", 2044 productId: "6899436781649", 2045 variantId: "58320596467793", 2046 handle:"custom-bluestone", 2047 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/BLUESTONE_f86a23cf-26ad-4e0b-997b-e02744627803.webp?v=1775584132"},{id:"W-CUS-GOLX",name:"Custom Gold Plated", 2048 brand:"Imperial", 2049 category:"Custom", 2050 variant:"Gold Plated \/ White \/ XXS", 2051 price: "45.0", 2052 productId: "4593974083665", 2053 variantId: "58320612327505", 2054 handle:"gold-plated", 2055 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/GOLD_PLATED-2.webp?v=1775584747"},{id:"W-CUS-AMDX",name:"Custom Amethyst Dreams Crystal", 2056 brand:"Imperial", 2057 category:"Custom", 2058 variant:"Amethyst Dreams Crystal \/ White \/ XXS", 2059 price: "35.0", 2060 productId: "7000245370961", 2061 variantId: "58320588406865", 2062 handle:"custom-amethyst-dream-crystal", 2063 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/AMETHYST_DREAMS-1.webp?v=1775586157"},{id:"W-CUS-RAIX",name:"Custom Rainbow", 2064 brand:"Imperial", 2065 category:"Custom", 2066 variant:"Rainbow Disc \/ White \/ XXS", 2067 price: "35.0", 2068 productId: "6899441336401", 2069 variantId: "58320591192145", 2070 handle:"custom-rainbow", 2071 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/RAINBOW-1.webp?v=1775588259"},{id:"W-CUS-JOYX",name:"Custom Joyful Stone", 2072 brand:"Imperial", 2073 category:"Custom", 2074 variant:"Joyful Stone \/ White \/ XXS", 2075 price: "35.0", 2076 productId: "7049945579601", 2077 variantId: "58320617078865", 2078 handle:"custom-joyful", 2079 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/JOYFUL-1.webp?v=1775595886"},{id:"MYS2-0",name:"Two Mystery Bracelets", 2080 brand:"Little Words Project", 2081 category:"Upsell", 2082 variant:"XS", 2083 price: "20.0", 2084 productId: "6844119810129", 2085 variantId: "42352461348945", 2086 handle:"mystery-duo", 2087 compareAtPrice: "50.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/products\/MysteryBag_048ce06a-bed3-48fd-968a-1674d7ad22e7.jpg?v=1651505106"},{id:"IW-GDE-UHE0",name:"Good Energy- Lucky Symbols", 2088 brand:"Imperial", 2089 category:"LWP Core", 2090 variant:"Under His Eye \/ XS", 2091 price: "25.0", 2092 productId: "6632340947025", 2093 variantId: "40463532916817", 2094 handle:"good-energy-lucky-symbols", 2095 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/GoodEnergyWebUpdated.webp?v=1770832256"},{id:"W-CUS-PCLX",name:"Custom Pink Chalk", 2096 brand:"Imperial", 2097 category:"Custom", 2098 variant:"Pink Chalk \/ White \/ XXS", 2099 price: "35.0", 2100 productId: "7594583326801", 2101 variantId: "58320627302481", 2102 handle:"custom-pink-chalk", 2103 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/PINK_CHALK-1.webp?v=1775586535"},{id:"W-CUS-LAVX",name:"Custom Lava Stone Men's", 2104 brand:"Imperial", 2105 category:"Custom", 2106 variant:"Lava Stone Men's \/ White \/ XXS", 2107 price: "35.0", 2108 productId: "6899410698321", 2109 variantId: "58320621404241", 2110 handle:"custom-lava-stone-mens", 2111 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/LAVA_STONE_MENS-1.webp?v=1775595973"},{id:"W-CUS-SESAX",name:"Custom Sea Salt", 2112 brand:"Imperial", 2113 category:"Custom",
2114 variant:"Sea Salt \/ White \/ XXS", 2115 price: "35.0", 2116 productId: "7594586112081", 2117 variantId: "58320639328337", 2118 handle:"custom-sea-salt", 2119 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/SEA_SALT-1.webp?v=1775588109"},{id:"BB-SIN-NAS",name:"The Bead Bar®- Nashville", 2120 brand:"Little Words Project", 2121 category:"Beading Table", 2122 variant:"Single", 2123 price: "25.0", 2124 productId: "7675780857937", 2125 variantId: "42002632048721", 2126 handle:"the-bead-bar-nashville", 2127 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/NASHVILLE_0ba8789e-b313-4688-b1e0-48fdc339e148.jpg?v=1744729269"},{id:"W-CUS-STWCX",name:"Custom Strawberry Cloud", 2128 brand:"Imperial", 2129 category:"Custom", 2130 variant:"Strawberry Cloud \/ White \/ XXS", 2131 price: "35.0", 2132 productId: "7594582900817", 2133 variantId: "58320625041489", 2134 handle:"custom-strawberry-cloud", 2135 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/Frame_40499.webp?v=1790868256"},{id:"W-CUS-SILX",name:"Custom Silver Plated", 2136 brand:"Imperial", 2137 category:"Custom", 2138 variant:"Silver Plated \/ White \/ XXS", 2139 price: "40.0", 2140 productId: "6899409944657", 2141 variantId: "58320624779345", 2142 handle:"custom-silver-plated", 2143 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/SILVER_PLATED-1.webp?v=1775596445"},{id:"W-CUS-SOPX",name:"Custom Strand of Pearls", 2144 brand:"Imperial", 2145 category:"Custom", 2146 variant:"Strand of Pearls \/ White \/ XXS", 2147 price: "35.0", 2148 productId: "7594584211537", 2149 variantId: "58320629596241", 2150 handle:"custom-strand-of-pearls", 2151 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/STRAND_OF_PEARLS-1.jpg?v=1775597828"},{id:"W-CUS-CHAX",name:"Custom Chambray", 2152 brand:"Imperial", 2153 category:"Custom", 2154 variant:"Chambray \/ White \/ XXS", 2155 price: "35.0", 2156 productId: "7594581721169", 2157 variantId: "58320634118225", 2158 handle:"custom-chambray", 2159 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/CHAMBRAY-1.jpg?v=1775598109"},{id:"W-CUS-LILGX",name:"Custom Lilac Garden", 2160 brand:"Imperial", 2161 category:"Custom", 2162 variant:"Lilac Garden \/ White \/ XXS", 2163 price: "35.0", 2164 productId: "7594584703057", 2165 variantId: "58320634544209", 2166 handle:"custom-lilac-garden", 2167 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/LILAC_GARDEN-1.jpg?v=1775597915"},{id:"W-CUS-MTD-CMWX",name:"Custom Calm Waters", 2168 brand:"JoinUS", 2169 category:"Custom", 2170 variant:"Calm Waters \/ White \/ XXS", 2171 price: "35.0", 2172 productId: "7764245643345", 2173 variantId: "58320677797969", 2174 handle:"custom-calm-waters", 2175 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/CALM_WATERS-1.webp?v=1775595606"},{id:"SPC-BRE-CTC1",name:"Breathe", 2176 brand:"Imperial", 2177 category:"LWP Core", 2178 variant:"Cotton Clouds \/ S\/M", 2179 price: "25.0", 2180 productId: "7223304650833", 2181 variantId: "40770451701841", 2182 handle:"breathe-your-faves-leveled-up-1", 2183 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/ClassicsBreatheWeb-2.jpg?v=1707253645"},{id:"TS-FEA-PHZ0",name:"Fearless", 2184 brand:"Imperial", 2185 category:"Capsule", 2186 variant:"Purple Haze \/ XS", 2187 price: "25.0", 2188 productId: "7087087583313", 2189 variantId: "40631910301777", 2190 handle:"fearless", 2191 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/TaylorFearlessWeb_1.jpg?v=1685416619"},{id:"W-CUS-SHRX",name:"Custom Sherbert", 2192 brand:"Imperial", 2193 category:"Custom", 2194 variant:"Sherbert \/ White \/ XXS", 2195 price: "35.0", 2196 productId: "7594585161809", 2197 variantId: "58320636706897", 2198 handle:"custom-sherbert", 2199 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/SHERBERT-1.jpg?v=1775598199"},{id:"LWPSB1-CRCLALWTXXS",name:"Custom Clear Crystal", 2200 brand:"Imperial", 2201 category:"Custom", 2202 variant:"Clear Crystal \/ White \/ XXS", 2203 price: "35.0", 2204 productId: "7616623247441", 2205 variantId: "58320604921937", 2206 handle:"custom-clear-crystal", 2207 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/CLEAR_CRYSTAL-1.jpg?v=1775598155"},{id:"CW-GRA-SHT0",name:"Grateful", 2208 brand:"Imperial", 2209 category:"LWP Core", 2210 variant:"Shiny Things \/ No Charm \/ XS", 2211 price: "25.0", 2212 productId: "7188347519057", 2213 variantId: "40617041690705", 2214 handle:"grateful-best-of", 2215 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/GratefulEditedWeb.jpg?v=1704469012"},{id:"CW-BLE-MID1",name:"Blessed", 2216 brand:"JoinUS", 2217 category:"LWP Core", 2218 variant:"Midnight \/ No Charm \/ S\/M", 2219 price: "25.0", 2220 productId: "7188346994769", 2221 variantId: "40617036742737", 2222 handle:"blessed-bracelet", 2223 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/BlessedWeb_9b67d4c8-3f57-4d35-8f35-b0f9a6aa50cd.jpg?v=1764207189"},{id:"GIFTBOX-SLIDER",name:"Gift Box \u0026 Pouch", 2224 brand:"Packaging Specialties", 2225 category:"Packaging", 2226 variant:"Default Title", 2227 price: "8.0", 2228 productId: "7770537787473", 2229 variantId: "42383675424849", 2230 handle:"gift-box-pouch", 2231 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/SlideBoxOpenSideWeb.jpg?v=1745000831"},{id:"BB-SIN-DIS",name:"The Bead Bar®- Disney Springs", 2232 brand:"Little Words Project", 2233 category:"Beading Table", 2234 variant:"Single - $35", 2235 price: "25.0", 2236 productId: "7675954561105", 2237 variantId: "42003503743057", 2238 handle:"the-bead-bar-disney-springs", 2239 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/Disney_1-2.png?v=1747771308"},{id:"MTD-BOY-BDY0",name:"Boy Mom- Family", 2240 brand:"JoinUS", 2241 category:"Capsule", 2242 variant:"Blue Dynamite \/ White \/ XS", 2243 price: "25.0", 2244 productId: "7758312767569", 2245 variantId: "42343722057809", 2246 handle:"boy-mom-family-bracelet", 2247 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/MDBoyMomWeb.jpg?v=1744044523"},{id:"BB-SIN-BOS",name:"The Bead Bar®- Boston", 2248 brand:"Little Words Project", 2249 category:"Beading Table", 2250 variant:"Single", 2251 price: "25.0", 2252 productId: "7675951186001", 2253 variantId: "42003490996305", 2254 handle:"the-bead-bar-boston", 2255 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/Boston_3-2.png?v=1747771217"},{id:"W-CUS-MTD-PYLX",name:"Custom Peachy Love", 2256 brand:"JoinUS", 2257 category:"Custom", 2258 variant:"Peachy Love \/ White \/ XXS", 2259 price: "35.0", 2260 productId: "7726648852561", 2261 variantId: "58320677437521", 2262 handle:"custom-peachy-love", 2263 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/PEACHY_LOVE-1.webp?v=1775599161"},{id:"CHR-CZ-A",name:"CZ Letter Charm", 2264 brand:"China Creations", 2265 category:"Charm", 2266 variant:"A", 2267 price: "16.0", 2268 productId: "7764238827601", 2269 variantId: "42365202366545", 2270 handle:"cz-letter-charm", 2271 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/ACZWeb_f683
2271192b-314a-4111-9667-3571d0b5fa8c.jpg?v=1744246602"},{id:"BB-SIN-TAM",name:"The Bead Bar®- Tampa", 2272 brand:"Little Words Project", 2273 category:"Beading Table", 2274 variant:"Single", 2275 price: "25.0", 2276 productId: "7675953381457", 2277 variantId: "42003498795089", 2278 handle:"the-bead-bar-tampa", 2279 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/Tampa_1-2.png?v=1747771544"},{id:"CHR-BOW",name:"Bow Charm", 2280 brand:"Imperial", 2281 category:"Charm", 2282 variant:"Default Title", 2283 price: "12.0", 2284 productId: "7631414526033", 2285 variantId: "41851170488401", 2286 handle:"bow-charm", 2287 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/BowWeb_c79b0258-0147-4c23-be54-098a57cc87c7.jpg?v=1775517254"},{id:"BRI-BRI-LAC0",name:"Bride", 2288 brand:"Imperial", 2289 category:"LWP Core", 2290 variant:"Lace \/ XS", 2291 price: "15.0", 2292 productId: "6829772341329", 2293 variantId: "40375068295249", 2294 handle:"bride-1", 2295 compareAtPrice: "25.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/BrideWeb_1_56ff21b2-0b28-4e7f-b798-8aabc62d3594.jpg?v=1712091467"},{id:"BB-SIN-SH",name:"The Bead Bar®- Short Hills", 2296 brand:"Little Words Project", 2297 category:"Beading Table", 2298 variant:"Single", 2299 price: "25.0", 2300 productId: "7739039252561", 2301 variantId: "42257020977233", 2302 handle:"the-bead-bar-short-hills", 2303 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/Short_Hills_2-2.png?v=1766762281"},{id:"CHR-CRS",name:"Cross Charm", 2304 brand:"Imperial", 2305 category:"Charm", 2306 variant:"Default Title", 2307 price: "12.0", 2308 productId: "7631640690769", 2309 variantId: "41852708257873", 2310 handle:"cross-charm", 2311 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/EtchedCrossWeb.jpg?v=1764207189"},{id:"CHR-BS-JAN",name:"Birthstone Charm", 2312 brand:"Imperial", 2313 category:"Charm", 2314 variant:"January", 2315 price: "16.0", 2316 productId: "7666458099793", 2317 variantId: "41965991690321", 2318 handle:"birthstones-charm", 2319 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/JanuaryWeb_8afc54ba-9811-4976-ab56-bced5286d57c.jpg?v=1727966491"},{id:"MTD-MAM-LUL0",name:"Mama- Family", 2320 brand:"JoinUS", 2321 category:"Capsule", 2322 variant:"Lullaby \/ XS", 2323 price: "25.0", 2324 productId: "7758337114193", 2325 variantId: "42344036794449", 2326 handle:"mama-family-bracelet", 2327 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/MDMamaWeb.jpg?v=1744248114"},{id:"BB-SIN-PV",name:"The Bead Bar®- Long Branch", 2328 brand:"Little Words Project", 2329 category:"Beading Table", 2330 variant:"Single", 2331 price: "25.0", 2332 productId: "7675952005201", 2333 variantId: "42003493945425", 2334 handle:"the-bead-bar-long-branch", 2335 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/LONG_BRANCH.jpg?v=1744729056"},{id:"FMC-GDM-MGA0",name:"Godmother- Family", 2336 brand:"Imperial", 2337 category:"Capsule", 2338 variant:"Morning Air \/ XS", 2339 price: "20.0", 2340 productId: "7293641916497", 2341 variantId: "40972055150673", 2342 handle:"godmother-family", 2343 compareAtPrice: "25.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/FamilyGodMotherWeb-2.jpg?v=1712348675"},{id:"BFF-MYP-ORB0",name:"My Person- Friendship", 2344 brand:"Imperial", 2345 category:"LWP Core", 2346 variant:"Orbit \/ XS", 2347 price: "10.0", 2348 productId: "6756547395665", 2349 variantId: "40375066296401", 2350 handle:"my-person-friendship", 2351 compareAtPrice: "25.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/products\/MyPersonWeb-min_1.jpg?v=1641318927"},{id:"W-CUS-GLDHX",name:"Custom Golden Hour", 2352 brand:"Imperial", 2353 category:"Custom", 2354 variant:"Golden Hour \/ White \/ XXS", 2355 price: "45.0", 2356 productId: "7594586636369", 2357 variantId: "58320642113617",
2358 handle:"custom-golden-hour", 2359 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/GOLDEN_HOUR-2.webp?v=1775599074"},{id:"CHR-PAW",name:"Puffy Paw Print Charm", 2360 brand:"Imperial", 2361 category:"Charm", 2362 variant:"Default Title", 2363 price: "12.0", 2364 productId: "7631595962449", 2365 variantId: "41852411347025", 2366 handle:"puffy-paw-print-charm", 2367 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/PawWeb.jpg?v=1727465202"},{id:"CHR-PHEA",name:"Puffy Heart Charm", 2368 brand:"Imperial", 2369 category:"Charm", 2370 variant:"Default Title", 2371 price: "12.0", 2372 productId: "7631438282833", 2373 variantId: "41851309785169", 2374 handle:"puffy-heart-charm", 2375 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/PuffyHeartCharm.jpg?v=1775733037"},{id:"MTD-GRA-PYL0",name:"Grandma- Family", 2376 brand:"JoinUS", 2377 category:"Capsule", 2378 variant:"Peachy Love \/ White \/ XS", 2379 price: "25.0", 2380 productId: "7758343143505", 2381 variantId: "42344117370961", 2382 handle:"grandma-family-bracelet", 2383 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/MDGrandmaWeb_8ec5da3a-9ad1-435d-8988-a08a1509ede9.jpg?v=1744133800"},{id:"VD-MAB-MLL0",name:"Moon \u0026 Back", 2384 brand:"Imperial", 2385 category:"Capsule", 2386 variant:"Moonlit Love \/ XS", 2387 price: "18.0", 2388 productId: "7705151373393", 2389 variantId: "42106290274385", 2390 handle:"moon-back-love-club", 2391 compareAtPrice: "25.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/VDMoonBackWeb_9c015ebe-4df8-43d9-8688-4a3257a05fab.jpg?v=1735573370"},{id:"LWBI-FKC-FKC0",name:"F*ck Cancer- Cancer Prevention", 2392 brand:"Imperial", 2393 category:"LWP Core", 2394 variant:"F*ck Cancer \/ No Charm \/ XS", 2395 price: "30.0", 2396 productId: "7454438064209", 2397 variantId: "41366639935569", 2398 handle:"f-ck-cancer-cancer-prevention-2024", 2399 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/OPTION2-10.webp?v=1770215767"},{id:"MM-MAM-CTP1",name:"Mama \u0026 Mini- Family", 2400 brand:"Imperial", 2401 category:"LWP Core", 2402 variant:"Cutie Pie \/ S\/M + Kid", 2403 price: "45.0", 2404 productId: "7074483208273", 2405 variantId: "40325244846161", 2406 handle:"mama-mini-mom-life", 2407 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/products\/Mini_MeWebUpdated.jpg?v=1678815479"},{id:"W-CUS-MTD-LULX",name:"Custom Lullaby", 2408 brand:"JoinUS", 2409 category:"Custom", 2410 variant:"Lullaby \/ White \/ XXS", 2411 price: "35.0", 2412 productId: "7764245315665", 2413 variantId: "58320676028497", 2414 handle:"custom-lullaby", 2415 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/LullabyWeb.webp?v=1776288069"},{id:"W-CUS-DMRX",name:"Custom Dreamy Rays", 2416 brand:"JoinUS", 2417 category:"Custom", 2418 variant:"Dreamy Rays \/ White \/ XXS", 2419 price: "35.0", 2420 productId: "7803705851985", 2421 variantId: "58320683302993", 2422 handle:"custom-dreamy-rays", 2423 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/DREAMY_RAYS-1.webp?v=1775595490"},{id:"MTD-AUN-LVM0",name:"Auntie- Family", 2424 brand:"JoinUS", 2425 category:"Capsule", 2426 variant:"Lavender Mist \/ White \/ XS", 2427 price: "25.0", 2428 productId: "7758343766097", 2429 variantId: "42344125857873", 2430 handle:"auntie-family-bracelet", 2431 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/MDAuntieWeb_c907bbae-a3d8-47e6-9113-2e8316444fbf.jpg?v=1744133829"},{id:"BB-SIN-RF",name:"The Bead Bar®- Long Island", 2432 brand:"Little Words Project", 2433 category:"Beading Table", 2434 variant:"Single", 2435 price: "25.0", 2436 productId: "7675954987089", 2437 variantId: "42003508428881", 2438 handle:"the-bead-bar-long-island", 2439 compareAtPrice: "0.0",image:"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/IMG_0956.webp?v=1782507990"},] 2440 }, 2441 searchResultsView:null, 2442 productView:null, 2443 } 2444 ); 2445 } 2446</script>
2446 2447 2448 2449<!-- END app block --><!-- BEGIN app block: shopify://apps/bta-booking-app/blocks/widgets/447b4be3-b8e8-4347-959f-d9a05d4b2d5d -->
2450<script>var bondVariantIds = [], btaVariantIdsInCart = [], productConfig = {}, productMetafields;productMetafields = ''; 2451 2452 if (productMetafields !== '') { 2453 productConfig = JSON.parse('{"' + 2454 decodeURI(productMetafields).replace(/"/g, '\\"').replace(/&/g, '","').replace(/=/g, '":"') 2455 + '"}'); 2456 } 2457 2458 const parsedSettings = JSON.parse('{"dateFormat":"MM/DD/YYYY","domain":"www.littlewordsproject.com","env":"production","path_prefix":"/apps/bookthatapp","should_load":true,"widget_enabled_list":["appt","reservation"],"widget_on_every_page":true,"widgets_mode":{}}' || '{}') 2459 2460 window.BtaConfig = { 2461 account: 'littlewords', 2462 bondVariantIds: bondVariantIds, 2463 btaVariantIdsInCart: btaVariantIdsInCart, 2464 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}`, 2465 customer: '',settings: parsedSettings, 2466 version: '1.6' 2467 } 2468 2469 const pathPrefix = parsedSettings.path_prefix || '/apps/bookthatapp'; 2470 const widgetScriptUrl = `https://www.littlewordsproject.com${pathPrefix}/sdk/v1/js/bta-widgets-bootstrap.min.js`; 2471 2472 const widgetScript = document.createElement('script'); 2473 2474 widgetScript.src = widgetScriptUrl; 2475 widgetScript.defer = true; 2476 // render the script tag in the head 2477 document.head.appendChild(widgetScript); 2478 2479 const bookingFormsScript = document.createElement('script'); 2480 2481 bookingFormsScript.src = `https://www.littlewordsproject.com${pathPrefix}/booking_forms.js`; 2482 bookingFormsScript.defer = true; 2483 document.head.appendChild(bookingFormsScript); 2484</script>
2484 2485 2486<meta name="bookthatapp-legacy-script-tag-marker" content="bta-installed.js"> 2487 2488 2489<!-- END app block --><!-- BEGIN app block: shopify://apps/klaviyo-email-marketing-sms/blocks/klaviyo-onsite-embed/2632fe16-c075-4321-a88b-50b567f42507 --> 2490 2491 2492 2493 2494 2495 2496 2497 2498 2499 2500 2501 2502
2502<script async src="https://static.klaviyo.com/onsite/js/SqmXHT/klaviyo.js?company_id=SqmXHT"></script>
2502 2503
2503<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>
2503 2504 2505 2506 2507 2508 2509 2510
2510<script> 2511 window.klaviyoReviewsProductDesignMode = false 2512 </script>
2512 2513 2514 2515 2516 2517 2518 2519 2520 2521 2522<!-- END app block --><!-- BEGIN app block: shopify://apps/ground/blocks/ground_script/33606432-4610-4a99-a33b-7bec990f60ef -->
2522<script type="text/javascript" async src="https://onsite.joinground.com/ground.js"></script>
2522 2523 2524<!-- END app block --><!-- BEGIN app block: shopify://apps/nosto/blocks/nosto-script-embed-block/a67c43f0-0fc3-4649-a7dc-65ac499cae31 --><!-- BEGIN app snippet: nosto-shop-id -->
2524<script type="application/json" id="nosto-market-tagging">{"shopId":"12599863","market":"5668945","locale":"en" 2525}</script>
2525 2526<!-- END app snippet -->
2527<script> 2528 (function () { 2529 // Market/locale (when resolved) are baked in server-side above, so no DOM parsing or extra 2530 // network hop is needed to build this URL. The only thing that can't be decided server-side 2531 // is the markets-preview override, which depends on a query param/cookie only visible 2532 // client-side - so this inline check is all that's left before the script tag is created. 2533 // It's inline (not a separate asset file) so the preview check runs synchronously, before the 2534 // nosto.js fetch starts - keeping it a single request with no risk of a duplicate load. 2535 var NOSTO_MARKETS_PREVIEW_PARAM = "nostomarketspreview" 2536 2537 function getCookie(cname) { 2538 var name = cname + "=" 2539 var ca = document.cookie.split(';') 2540 for (var i = 0; i < ca.length; i++) { 2541 var c = ca[i] 2542 while (c.charAt(0) === ' ') { 2543 c = c.substring(1) 2544 } 2545 if (c.indexOf(name) === 0) { 2546 try { 2547 return decodeURIComponent(c.substring(name.length, c.length)) 2548 } catch (err) { 2549 console.warn('Failed to decode cookie value', cname, err) 2550 } 2551 } 2552 } 2553 return "" 2554 } 2555 2556 var storage = { 2557 getItem: function (key) { return sessionStorage && sessionStorage.getItem(key) }, 2558 setItem: function (key, value) { return sessionStorage && sessionStorage.setItem(key, value) }, 2559 removeItem: function (key) { return sessionStorage && sessionStorage.removeItem(key) } 2560 } 2561 2562 function isMarketsPreviewEnabled() { 2563 var urlParams = new URLSearchParams(window.location.search) 2564 var isPreviewEnabled = urlParams.get(NOSTO_MARKETS_PREVIEW_PARAM) === "true" 2565 var isPreviewEnabledFromStorage = storage.getItem(NOSTO_MARKETS_PREVIEW_PARAM) === "true" 2566 2567 if (isPreviewEnabled || isPreviewEnabledFromStorage) { 2568 !isPreviewEnabledFromStorage && storage.setItem(NOSTO_MARKETS_PREVIEW_PARAM, "true") 2569 return true 2570 } 2571 2572 if (getCookie(NOSTO_MARKETS_PREVIEW_PARAM) === "true") { 2573 storage.setItem(NOSTO_MARKETS_PREVIEW_PARAM, "true") 2574 return true 2575 } 2576 2577 storage.removeItem(NOSTO_MARKETS_PREVIEW_PARAM) 2578 return false 2579 } 2580 2581 var src = "\/apps\/proxy\/script\/shopify\/market\/nosto.js?merchant=shopify-12599863\u0026market=5668945\u0026locale=en" 2582 if (isMarketsPreviewEnabled()) { 2583 src += "&preview=true" 2584 } 2585 2586 var SCRIPT_ID = "nosto-market-script" 2587 if (document.getElementById(SCRIPT_ID)) { 2588 return 2589 } 2590 2591 var nostoMarketScript = document.createElement("script") 2592 nostoMarketScript.id = SCRIPT_ID 2593 nostoMarketScript.async = true 2594 nostoMarketScript.src = src 2595 document.head.appendChild(nostoMarketScript) 2596 })() 2597</script>
2597 2598 2599 2600<!-- END app block --><!-- BEGIN app block: shopify://apps/ta-mappy-store-locator-maps/blocks/bss-sl-script/edfca2bd-82ad-413c-b32c-580d239b17ab -->
2600<script id="bss-locator-config-data"> 2601 var locatorData = {"storeId":6984,"domain":"littlewords.myshopify.com","styleId":"cf4f5a2b0f0436f","pageId":104748908625,"redirectToPage":"store-locator","apiKey":"AIzaSyCGqzYcVE16RAmiXzRf7UyyEjAsJHRakLg","mapboxToken":null,"translation":"{\"radius\":\"Radius\",\"tag\":\"Tag\",\"countries\":\"Countries\",\"tagOption\":\"Select tag\",\"countryOption\":\"Select country\",\"clearAllFilter\":\"Clear all filter\",\"findStore\":\"Find Store\",\"store\":\"Stores\",\"find_my_location\":\"Find my location\",\"schedule\":\"Schedule\",\"phone\":\"Phone\",\"email\":\"Email\",\"website\":\"Website\",\"fax\":\"Fax\",\"address\":\"Address\",\"enter_your_location\":\"Enter your zip code\",\"list\":\"List\",\"map\":\"Map\",\"directionLink\":\"Get Directions\",\"monday\":\"MONDAY\",\"tuesday\":\"TUESDAY\",\"wednesday\":\"WEDNESDAY\",\"thursday\":\"THURSDAY\",\"friday\":\"FRIDAY\",\"saturday\":\"SATURDAY\",\"sunday\":\"SUNDAY\",\"product\":\"Product\",\"distance\":\"Distance\",\"notFound\":\"Not found any stores\",\"noLimit\":\"No limit\",\"youAreHere\":\"You are here\",\"all\":\"All\",\"filterByCountry\":\"Filter by country\",\"searchResult\":\"Search results\",\"searchByLocation\":\"Location\",\"searchByPhone\":\"Phone\",\"searchByStoreName\":\"Store name\",\"searchByZipCode\":\"ZIP code\",\"enterPhoneNumber\":\"Enter phone number\",\"enterStoreName\":\"Enter store name\",\"enterZipCode\":\"Enter ZIP code\",\"enterTextOptimize\":\"Enter your address to find your nearest stores.\"}","planCode":"unlimited","mapType":0,"mapStyleType":0,"customStyleId":"","zoom_map":"7","zoom_on_click":15,"scheduleMenu":0,"addressMenu":1,"additionalAddressMenu":1,"phoneMenu":0,"faxMenu":0,"emailMenu":0,"websiteMenu":0,"storeLinkMenu":0,"notShowColonMenu":0,"scheduleMap":0,"addressMap":1,"additionalAddressMap":1,"phoneMap":0,"faxMap":0,"emailMap":0,"websiteMap":0,"storeLinkMap":0,"notShowColonMap":0,"directionLinkMenu":1,"directionLinkMap":1,"contactButtonLinkMenu":0,"contactButtonLinkMap":0,"autoDetectAddress":1,"radiusSearch":1,"defaultRadius":50,"searchResultQuantityDisplay":50,"tagSearch":1,"tagOption":0,"countryOption":0,"pageTitle":"<h1 style=\"text-align: center;\">Store Locator</h1>","pageDescription":"","showPageTitle":0,"showPageDescription":0,"showCountryFilter":0,"selectLocation":1,"selectPhone":0,"selectStoreName":1,"selectZipCode":1,"template":1,"layout":2,"enableSearchButton":1,"mapLayout":{"mobile":{"type":"hybrid","layout":"left","searchBarPosition":"menuBlock"},"desktop":{"type":"split","layout":"left","searchBarPosition":"menuBlock"}},"searchBar":1,"searchBarPosition":1,"searchSuggestion":0,"searchSuggestionCountries":[],"distanceUnit":"miles","zoomCountLocation":1,"clusterColor":null,"clusterNumberColor":null,"customFieldMap":0,"customFieldMenu":0,"imageMap":1,"imageMenu":1,"defaultLat":null,"defaultLng":null,"manual_default_address":0,"showAllAddress":0,"orderLocations":"priority","detectViewport":0,"createdAt":"2025-04-21T16:37:42.000Z","formActive":0,"formTitleActive":0,"formTitle":"","formDescription":"","formErrorMessage":"","formCustomCss":"","mapCustomCss":"","isNewPlaceAPI":false,"isRestricted":false,"cssAssets":[],"tagList":[{"id":10698,"tag_text":"LWP Store","tag_priority":1000,"categories":[]},{"id":10699,"tag_text":"Retailer","tag_priority":1000,"categories":[]},{"id":10700,"tag_text":"Target","tag_priority":1000,"categories":[]}],"categoriesList":[],"locationCount":2964,"maxVersion":1} || {}; 2602 if (typeof BSS_SL == 'undefined' || locatorData != "") { 2603 let storeLocators = [] 2604 let tagList = [] 2605 2606 2607 2608 2609 2610 2611 let mapPopupData = {"id":6548,"shop_domain":"littlewords.myshopify.com","enable":0,"pages":"index,cart,product,list-collections,search,blog,all_articles,all_custom_pages","icon":"https://mappy.tech-arms.io/image/map-pin-blue.svg","show_search_bar":0,"show_on_mobile":1,"show_on_desktop":1,"mobile_position":"bottom-right","desktop_position":"bottom-right","newPages":"/,cart,product,list-collections,search,blog,all_articles,all_custom_pages","typePage":"index,cart,product,list-collections,search,blog,all_articles,all_custom_pages","show_on_desktop_css":"@media only screen and (min-width: 749px) {\n #bss-map-p
2611opup {\n bottom: 6px;\n right: 5px;\n }\n }","show_on_mobile_css":"@media only screen and (max-width: 749px) {\n #bss-map-popup {\n bottom: 6px;\n right: 5px;\n }\n }"} 2612 let isWatermark = 0 2613 var translationData = {"originalTranslation":{"all":"All","fax":"Fax","map":"Map","tag":"Tag","list":"List","email":"Email","phone":"Phone","store":"Stores","friday":"FRIDAY","monday":"MONDAY","radius":"Radius","sunday":"SUNDAY","address":"Address","noLimit":"No limit","product":"Product","tuesday":"TUESDAY","website":"Website","distance":"Distance","notFound":"Not found any stores","saturday":"SATURDAY","schedule":"Schedule","thursday":"THURSDAY","countries":"Countries","findStore":"Find Store","tagOption":"Select tag","wednesday":"WEDNESDAY","youAreHere":"You are here","enterZipCode":"Enter ZIP code","searchResult":"Search results","countryOption":"Select country","directionLink":"Get Directions","searchByPhone":"Phone","clearAllFilter":"Clear all filter","enterStoreName":"Enter store name","filterByCountry":"Filter by country","searchByZipCode":"ZIP code","enterPhoneNumber":"Enter phone number","find_my_location":"Find my location","searchByLocation":"Location","enterTextOptimize":"Enter your address to find your nearest stores.","searchByStoreName":"Store name","enter_your_location":"Enter your zip code"},"translations":null}; 2614 var BSS_SL_metaobject = {"isUseMetaobject":true,"storefrontAccessToken":"e7664aa93ae81cf116e7f64f81c32825","apiVersion":"2026-01"}; 2615 var BSS_SL = { 2616 ...locatorData, 2617 isWatermark, 2618 isOldUnlimited: locatorData.defaultRadius === 100 && !BSS_SL_metaobject, 2619 configData: storeLocators, 2620 tagData: tagList, 2621 enablePopup: mapPopupData.enable, 2622 pages: mapPopupData.newPages, 2623 typePage: mapPopupData.typePage, 2624 icon: mapPopupData.icon, 2625 showSearchBar: mapPopupData.show_search_bar, 2626 searchBar: locatorData.searchBar ?? 1, 2627 imageMap: locatorData.imageMap ?? 1, 2628 imageMenu: locatorData.imageMenu ?? 1, 2629 showOnMobile: mapPopupData.show_on_mobile, 2630 showOnDesktop: mapPopupData.show_on_desktop, 2631 mobilePosition: mapPopupData.mobile_position, 2632 desktopPosition: mapPopupData.desktop_position, 2633 mapLayout: locatorData.mapLayout || { 2634 desktop: { 2635 type: locatorData.layout === 1 ? "combine" : "split", 2636 layout: locatorData.template === 1 ? "left" : "right", 2637 searchBarPosition: locatorData.searchBarPosition === 1 ? "menuBlock" : "aboveMap" 2638 }, 2639 mobile: { 2640 type: "hybrid", 2641 layout: "left", 2642 searchBarPosition: locatorData.searchBarPosition === 1 ? "menuBlock" : "aboveMap" 2643 } 2644 } 2645 }; 2646 } 2647 Object.defineProperty(BSS_SL, 'planCode', { writable: false, configurable: false }); 2648</script>
vendor: 1 bytes, line 2648
2648
2649<script> 2650 function fn(){ 2651 if (typeof BSS_SL.configData == 'undefined') { 2652 if(window.location.pathname == '/pages/store-locator' && document.getElementById("PageContainer")) document.getElementById("PageContainer").remove(); 2653 } 2654 } 2655 if (document.readyState === "complete" || document.readyState === "interactive") setTimeout(fn, 1); 2656 else document.addEventListener("DOMContentLoaded", fn); 2657</script>
2657 2658
2659<script src="https://cdn.shopify.com/extensions/01a0f1c7-3455-7566-b3f5-bff2dd9e7b92/version_0fc88322-2026-09-30_17h05m/assets/bss-loader.js" defer></script>
2659 2660 2661
2662<script id="bss-locator-config-setting"> 2663 if (typeof BSS_SL == 'undefined') var BSS_SL = {}; 2664 2665 2666</script>
2666 2667 2668
2668<script>function bssFixSupportFullWidthMap(BSS_SL) { 2669 // Write code here 2670 if((window.location.pathname.includes('/store-locator') || window.location.pathname.includes(BSS_SL.redirectToPage)) && !document.querySelector('#dynamic-style')) { 2671 const styleTag = document.createElement('style'); 2672 styleTag.id = 'dynamic-style'; 2673 2674 const cssRules = ` 2675 body { 2676 font: unset; 2677 } 2678 @media (min-width: 768px) { 2679 .container.container--md { 2680 --container-max-width: 80%; 2681 } 2682 } 2683 input#bss-radius-filter { 2684 accent-color: #DA9FC4; 2685 } 2686 div[style*="width: 100%;background: #EEF9F9"] { 2687 display: none; 2688 } 2689 label.check-wrapper { 2690 padding-left: 38px; 2691 margin-right: 4px; 2692 } 2693 .check-wrapper input:checked ~ .bss-checkmark { 2694 background-color: #DA9FC4; 2695 border: 2px solid #DA9FC4; 2696 } 2697 #store-locator-page-parent, 2698 #store-locator-page-parent a { 2699 font-family: var(--text-font-family) !important; 2700 } 2701 #store-locator-page-parent svg path { 2702 fill: #2E2BD8 !important; 2703 } 2704 #store-locator-page-parent .custom-select__trigger svg path { 2705 fill: none !important; 2706 stroke: #2E2BD8 !important; 2707 } 2708 button#bss-search-btn svg path { 2709 stroke: #fff !important; 2710 fill: none !important; 2711 } 2712 button#bss-search-btn { 2713 background-color: #2E2BD8; 2714 border: 1px solid #2E2BD8; 2715 } 2716 .get-direction-btn { 2717 background-color: #DA9FC4; 2718 border: 1px solid #DA9FC4; 2719 } 2720 .get-direction-btn span { 2721 color: #fff; 2722 } 2723 #locator-title h1 { 2724 color: #DA9FC4; 2725 font-size: 40px; 2726 margin-bottom: 28px; 2727 } 2728 .store-field-info, .social-media { 2729 margin-bottom: 2px !important; 2730 } 2731 .bss-store-result > div > div:first-child{ 2732 margin-bottom: 8px !important; 2733 } 2734 .bss-store-result > div { 2735 padding: 5px 20px !important; 2736 } 2737 `; 2738 2739 styleTag.innerHTML = cssRules; 2740 document.head.appendChild(styleTag); 2741 2742 const proseEl = document.querySelector('.section-stack .prose'); 2743 if (proseEl) proseEl.classList.remove('prose'); 2744 if(!document.querySelector('.bss-map-block')) { 2745 if(BSS_SL.showPageTitle) { 2746 const title = document.querySelector('h1[class*="h2"]') || document.querySelector('h1[class*="h1"]'); 2747 const titleLocator = document.getElementById('locator-title') 2748 if(title) title.style.display = 'none'; 2749 if(titleLocator && BSS_SL.pageTitle) titleLocator.style.display = 'block'; 2750 if(title && titleLocator) titleLocator.children[0].className = title.className; 2751 } 2752 } 2753 2754 if (window.innerWidth <= 768) { 2755 const mapBox = document.getElementById('bss-map-search-box'); 2756 const icon = document.querySelector('.store-list-button-icon'); 2757 if (mapBox) { 2758 mapBox.setAttribute('isopen', '1'); 2759 } 2760 if (icon) { 2761 icon.classList.add('rotate'); 2762 } 2763 } 2764 2765 } 2766}</script>
2766 2767 2768<!-- END app block --><!-- BEGIN app block: shopify://apps/okendo/blocks/theme-settings/bb689e69-ea70-4661-8fb7-ad24a2e23c29 --><!-- BEGIN app snippet: header-metafields --> 2769 2770 2771 2772 2773 2774 2775 2776 2777 2778 2779 2780 2781 2782 <style data-oke-reviews-version="0.86.0" type="text/css" data-href="https://cdn-static.okendo.io/reviews-widget-plus/css/okendo-reviews-styles.6dbb2446.css"></style><style data-oke-reviews-version="0.86.0" type="text/css" data-href="https://cdn-static.okendo.io/reviews-widget-plus/css/modules/okendo-star-rating.4cb378a8.css"></style><style data-oke-reviews-version="0.86.0" type="text/css" data-href="https://cdn-static.okendo.io/reviews-widget-plus/css/modules/okendo-reviews-keywords.0942444f.css"></style><style data-oke-reviews-version="0.86.0" type="text/css" data-href="https://cdn-static.okendo.io/reviews-widget-plus/css/modules/okendo-reviews-summary.a0c9d7d6.css"></style><style type="text/css">.okeReviews[data-oke-container],div.okeReviews{font-size:14px;font-size:var(--oke-text-regular);font-weight:400;font-family:var(--oke-text-fontFamily);line-height:1.6}.okeReviews[data-oke-container] *,.okeReviews[data-oke-container] :after,.okeReviews[data-oke-container] :before,div.okeReviews *,div.okeReviews :after,div.okeReviews :before{box-sizing:border-box}.okeReviews[data-oke-container] h1,.okeReviews[data-oke-container] h2,.okeReviews[data-oke-container] h3,.okeReviews[data-oke-container] h4,.okeReviews[data-oke-container] h5,.okeReviews[data-oke-container] h6,div.okeReviews h1,div.okeReviews h2,div.okeReviews h3,div.okeReviews h4,div.okeReviews h5,div.okeReviews h6{font-size:1em;font-weight:400;line-height:1.4;margin:0}.okeReviews[data-oke-container] ul,div.okeReviews ul{padding:0;margin:0}.okeReviews[data-oke-container] li,div.okeReviews li{list-style-type:none;padding:0}.okeReviews[data-oke-container] p,div.okeReviews p{line-height:1.8;margin:0 0 4px}.okeReviews[data-oke-container] p:last-child,div.okeReviews p:last-child{margin-bottom:0}.okeReviews[data-oke-container] a,div.okeReviews a{text-decoration:none;color:inherit}.okeReviews[data-oke-container] button,div.okeReviews button{border-radius:0;border:0;box-shadow:none;margin:0;width:auto;min-width:auto;padding:0;background-color:transparent;min-height:auto}.okeReviews[data-oke-container] button,.okeReviews[data-oke-container] input,.okeReviews[data-oke-container] select,.okeReviews[data-oke-container] textarea,div.okeReviews button,div.okeReviews input,div.okeReviews select,div.okeReviews textarea{font-family:inherit;font-size:1em}.okeReviews[data-oke-container] label,.okeReviews[data-oke-container] select,div.okeReviews label,div.okeReviews select{display:inline}.okeReviews[data-oke-container] select,div.okeReviews select{width:auto}.okeReviews[data-oke-container] article,.okeReviews[data-oke-container] aside,div.okeReviews article,div.okeReviews aside{margin:0}.okeReviews[data-oke-container] table,div.okeReviews table{background:transparent;border:0;border-collapse:collapse;border-spacing:0;font-family:inherit;font-size:1em;table-layout:auto}.okeReviews[data-oke-container] table td,.okeReviews[data-oke-container] table th,.okeReviews[data-oke-container] table tr,div.okeReviews table td,div.okeReviews table th,div.okeReviews table tr{border:0;font-family:inherit;font-size:1em}.okeReviews[data-oke-container] table td,.okeReviews[data-oke-container] table th,div.okeReviews table td,div.okeReviews table th{background:transparent;font-weight:400;letter-spacing:normal;padding:0;text-align:left;text-transform:none;vertical-align:middle}.okeReviews[data-oke-container] table tr:hover td,.okeReviews[data-oke-container] table tr:hover th,div.okeReviews table tr:hover td,div.okeReviews table tr:hover th{background:transparent}.okeReviews[data-oke-container] fieldset,div.okeReviews fieldset{border:0;padding:0;margin:0;min-width:0}.okeReviews[data-oke-container] img,.okeReviews[data-oke-container] svg,div.okeReviews img,div.okeReviews svg{max-width:none}.okeReviews[data-oke-container] div:empty,div.okeReviews div:empty{display:block}.okeReviews[data-oke-container] .oke-icon:before,div.okeReviews .oke-icon:before{font-family:oke-widget-icons!important;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:inherit}.okeReviews[data-oke-container] .oke-icon--select-arrow:before,div.okeReviews .oke-icon--select-arrow:before{content:"î¤"}.okeReviews[data-oke-container] .oke-icon--loading:before,div.okeReviews .oke-icon--loading:before{content:"î¤"}
2782.okeReviews[data-oke-container] .oke-icon--pencil:before,div.okeReviews .oke-icon--pencil:before{content:"î¤"}.okeReviews[data-oke-container] .oke-icon--filter:before,div.okeReviews .oke-icon--filter:before{content:"î¤"}.okeReviews[data-oke-container] .oke-icon--play:before,div.okeReviews .oke-icon--play:before{content:"î¤"}.okeReviews[data-oke-container] .oke-icon--tick-circle:before,div.okeReviews .oke-icon--tick-circle:before{content:"î¤
"}.okeReviews[data-oke-container] .oke-icon--chevron-left:before,div.okeReviews .oke-icon--chevron-left:before{content:"î¤"}.okeReviews[data-oke-container] .oke-icon--chevron-right:before,div.okeReviews .oke-icon--chevron-right:before{content:"î¤"}.okeReviews[data-oke-container] .oke-icon--thumbs-down:before,div.okeReviews .oke-icon--thumbs-down:before{content:"î¤"}.okeReviews[data-oke-container] .oke-icon--thumbs-up:before,div.okeReviews .oke-icon--thumbs-up:before{content:"î¤"}.okeReviews[data-oke-container] .oke-icon--close:before,div.okeReviews .oke-icon--close:before{content:"î¤"}.okeReviews[data-oke-container] .oke-icon--chevron-up:before,div.okeReviews .oke-icon--chevron-up:before{content:"î¤"}.okeReviews[data-oke-container] .oke-icon--chevron-down:before,div.okeReviews .oke-icon--chevron-down:before{content:"î¤"}.okeReviews[data-oke-container] .oke-icon--star:before,div.okeReviews .oke-icon--star:before{content:"î¤"}.okeReviews[data-oke-container] .oke-icon--magnifying-glass:before,div.okeReviews .oke-icon--magnifying-glass:before{content:"î¤"}@font-face{font-family:oke-widget-icons;src:url(https://cdn-static.okendo.io/reviews-widget-plus/fonts/oke-widget-icons.ttf) format("truetype"),url(https://cdn-static.okendo.io/reviews-widget-plus/fonts/oke-widget-icons.woff) format("woff"),url(https://cdn-static.okendo.io/reviews-widget-plus/img/oke-widget-icons.bc0d6b0a.svg) format("svg");font-weight:400;font-style:normal;font-display:swap}.okeReviews[data-oke-container] .oke-button,div.okeReviews .oke-button{display:inline-block;border-style:solid;border-color:var(--oke-button-borderColor);border-width:var(--oke-button-borderWidth);background-color:var(--oke-button-backgroundColor);line-height:1;padding:12px 24px;margin:0;border-radius:var(--oke-button-borderRadius);color:var(--oke-button-textColor);text-align:center;position:relative;font-weight:var(--oke-button-fontWeight);font-size:var(--oke-button-fontSize);font-family:var(--oke-button-fontFamily);outline:0}.okeReviews[data-oke-container] .oke-button-text,.okeReviews[data-oke-container] .oke-button .oke-icon,div.okeReviews .oke-button-text,div.okeReviews .oke-button .oke-icon{line-height:1}.okeReviews[data-oke-container] .oke-button.oke-is-loading,div.okeReviews .oke-button.oke-is-loading{position:relative}.okeReviews[data-oke-container] .oke-button.oke-is-loading:before,div.okeReviews .oke-button.oke-is-loading:before{font-family:oke-widget-icons!important;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"î¤";color:undefined;font-size:12px;display:inline-block;animation:oke-spin 1s linear infinite;position:absolute;width:12px;height:12px;top:0;left:0;bottom:0;right:0;margin:auto}.okeReviews[data-oke-container] .oke-button.oke-is-loading>*,div.okeReviews .oke-button.oke-is-loading>*{opacity:0}.okeReviews[data-oke-container] .oke-button.oke-is-active,div.okeReviews .oke-button.oke-is-active{background-color:var(--oke-button-backgroundColorActive);color:var(--oke-button-textColorActive);border-color:var(--oke-button-borderColorActive)}.okeReviews[data-oke-container] .oke-button:not(.oke-is-loading),div.okeReviews .oke-button:not(.oke-is-loading){cursor:pointer}.okeReviews[data-oke-container] .oke-button:not(.oke-is-loading):not(.oke-is-active):hover,div.okeReviews .oke-button:not(.oke-is-loading):not(.oke-is-active):hover{background-color:var(--oke-button-backgroundColorHover);color:var(--oke-button-textColorHover);border-color:var(--oke-button-borderColorHover);box-shadow:0 0 0 2px var(--oke-button-backgroundColorHover)}.okeReviews[data-oke-container] .oke-button:not(.oke-is-loading):not(.oke-is-active):active,.okeReviews[data-oke-container] .oke-button:not(.oke-is-loading):not(.oke-is-active):hover:active,div.okeReviews .oke-button:not(.oke-is-loading):not(.oke-is-active):active,div.okeReviews .oke-button:not(.oke-is-loading):not(.oke-is-active):hover:active{background-color:var(--oke-button-backgroundColorActive);color:var(--oke-button-textColorActive);border-color:var(--oke-button-borderColorActive)}.okeReviews[data-oke-container] .oke-title,div.okeReviews .oke-title{font-weight:var(--oke-title-fontWeight);font-size:var(--oke-title-fontSize);font-family:var(--oke-title-fontFamily)}.okeReviews[data-oke-container] .oke-bodyText,div.okeReviews .oke-bodyText{font-weight:var(--oke-bodyText-fontWeight);font-size:var(--oke-bodyText-fontSize);font-family:var(--oke-bodyText-fontFamily)}.okeReviews[data-oke-container] .oke-linkButton,div.okeReviews .oke-linkButton{curs
2782or:pointer;font-weight:700;pointer-events:auto;text-decoration:underline}.okeReviews[data-oke-container] .oke-linkButton:hover,div.okeReviews .oke-linkButton:hover{text-decoration:none}.okeReviews[data-oke-container] .oke-readMore,div.okeReviews .oke-readMore{cursor:pointer;color:inherit;text-decoration:underline}.okeReviews[data-oke-container] .oke-select,div.okeReviews .oke-select{cursor:pointer;background-repeat:no-repeat;background-position-x:100%;background-position-y:50%;border:none;padding:0 24px 0 12px;-moz-appearance:none;appearance:none;color:inherit;-webkit-appearance:none;background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg fill='currentColor' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3Cpath d='M0 0h24v24H0z' fill='none'/%3E%3C/svg%3E");outline-offset:4px}.okeReviews[data-oke-container] .oke-select:disabled,div.okeReviews .oke-select:disabled{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg fill='%239a9db1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3Cpath d='M0 0h24v24H0z' fill='none'/%3E%3C/svg%3E")}.okeReviews[data-oke-container] .oke-loader,div.okeReviews .oke-loader{position:relative}.okeReviews[data-oke-container] .oke-loader:before,div.okeReviews .oke-loader:before{font-family:oke-widget-icons!important;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"î¤";color:var(--oke-text-secondaryColor);font-size:12px;display:inline-block;animation:oke-spin 1s linear infinite;position:absolute;width:12px;height:12px;top:0;left:0;bottom:0;right:0;margin:auto}.okeReviews[data-oke-container] .oke-a11yText,div.okeReviews .oke-a11yText{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.okeReviews[data-oke-container] .oke-hidden,div.okeReviews .oke-hidden{display:none}.okeReviews[data-oke-container] .oke-modal,div.okeReviews .oke-modal{bottom:0;left:0;overflow:auto;position:fixed;right:0;top:0;z-index:2147483647;max-height:100%;background-color:rgba(0,0,0,.5);padding:40px 0 12px}@media only screen and (min-width:1024px){.okeReviews[data-oke-container] .oke-modal,div.okeReviews .oke-modal{display:flex;align-items:center;padding:48px 0}}.okeReviews[data-oke-container] .oke-modal ::-moz-selection,div.okeReviews .oke-modal ::-moz-selection{background-color:rgba(39,45,69,.2)}.okeReviews[data-oke-container] .oke-modal ::selection,div.okeReviews .oke-modal ::selection{background-color:rgba(39,45,69,.2)}.okeReviews[data-oke-container] .oke-modal,.okeReviews[data-oke-container] .oke-modal p,div.okeReviews .oke-modal,div.okeReviews .oke-modal p{color:#272d45}.okeReviews[data-oke-container] .oke-modal-content,div.okeReviews .oke-modal-content{background-color:#fff;margin:auto;position:relative;will-change:transform,opacity;width:calc(100% - 24px)}@media only screen and (min-width:1024px){.okeReviews[data-oke-container] .oke-modal-content,div.okeReviews .oke-modal-content{max-width:1000px}}.okeReviews[data-oke-container] .oke-modal-close,div.okeReviews .oke-modal-close{cursor:pointer;position:absolute;width:32px;height:32px;top:-32px;padding:4px;right:-4px;line-height:1}.okeReviews[data-oke-container] .oke-modal-close:before,div.okeReviews .oke-modal-close:before{font-family:oke-widget-icons!important;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"î¤";color:#fff;font-size:24px;display:inline-block;width:24px;height:24px}.okeReviews[data-oke-container] .oke-modal-overlay,div.okeReviews .oke-modal-overlay{background-color:rgba(43,46,56,.9)}@media only screen and (min-width:1024px){.okeReviews[data-oke-container] .oke-modal--large .oke-modal-content,div.okeReviews .oke-modal--large .oke-modal-content{max-width:1200px}}.okeReviews[data-oke-container] .oke-modal .oke-helpful,.okeReviews[data-oke-container] .oke-modal .oke-helpful-vote-button,.okeReviews[data-oke-container] .oke-modal .oke-reviewContent-date,div.okeReviews .oke-modal .oke-helpful,div.okeReviews .oke-modal .oke-helpful-vote-button,div.okeReviews .oke-modal .oke-reviewContent-date{color:#676986}.oke-modal .okeReviews[data-oke-container].oke-w,.oke-modal div.okeReviews.oke-w{color:#272d45}.okeReviews[data-oke-container] .oke-tag,div.okeReviews .oke-tag{align-items:center;color:#272d45;display:flex;font-size:var(--oke-text-small);font-weight:600;text-align:left;position:relative;z-index:2;background-color:#f4f4f6;padding:4px 6px;border:none;border-radius:4px;gap:6px;line-height:1}.okeReviews[data-oke-container] .oke-tag svg,div.okeReviews .oke-tag svg{fill:currentColor;height:1rem}.okeReviews[data-oke-container] .hooper,div.okeReviews .hooper{height:auto}.okeReviews--left{text-align:left}.okeReviews--right{text-align:right}.okeReviews--center{text-align:center}.okeReviews :not([tabindex="-1"]):focus-visible{outline:5px auto highlight;outline:5px auto -webkit-focus-ring-color}.is-oke-modalOpen{overflow:hidden!important}img.oke-is-error{background-color:var(--oke-shadingColor);background-size:cover;background-position:50% 50%;box-shadow:inset 0 0 0 1px var(--oke-border-color)}@keyframes oke-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes oke-fade-in{0%{opacity:0}
2782to{opacity:1}}.layout-panel-flex>div:has([data-oke-container]){width:100%} 2783.oke-stars{line-height:1;position:relative;display:inline-block}.oke-stars-background svg{overflow:visible}.oke-stars-foreground{overflow:hidden;position:absolute;top:0;left:0}.oke-sr{display:inline-block;padding-top:var(--oke-starRating-spaceAbove);padding-bottom:var(--oke-starRating-spaceBelow)}.oke-sr .oke-is-clickable{cursor:pointer}.oke-sr--hidden{display:none}.oke-sr-count,.oke-sr-rating,.oke-sr-stars{display:inline-block;vertical-align:middle}.oke-sr-stars{line-height:1;margin-right:8px}.oke-sr-rating{display:none}.oke-sr-count--brackets:before{content:"("}.oke-sr-count--brackets:after{content:")"} 2784.oke-rk{display:block}.okeReviews[data-oke-container] .oke-reviewsKeywords-heading,div.okeReviews .oke-reviewsKeywords-heading{font-weight:700;margin-bottom:8px}.okeReviews[data-oke-container] .oke-reviewsKeywords-heading-skeleton,div.okeReviews .oke-reviewsKeywords-heading-skeleton{height:calc(var(--oke-button-fontSize) + 4px);width:150px}.okeReviews[data-oke-container] .oke-reviewsKeywords-list,div.okeReviews .oke-reviewsKeywords-list{display:inline-flex;align-items:center;flex-wrap:wrap;gap:4px}.okeReviews[data-oke-container] .oke-reviewsKeywords-list-category,div.okeReviews .oke-reviewsKeywords-list-category{background-color:var(--oke-filter-backgroundColor);color:var(--oke-filter-textColor);border:1px solid var(--oke-filter-borderColor);border-radius:var(--oke-filter-borderRadius);padding:6px 16px;transition:background-color .1s ease-out,border-color .1s ease-out;white-space:nowrap}.okeReviews[data-oke-container] .oke-reviewsKeywords-list-category.oke-is-clickable,div.okeReviews .oke-reviewsKeywords-list-category.oke-is-clickable{cursor:pointer}.okeReviews[data-oke-container] .oke-reviewsKeywords-list-category.oke-is-active,div.okeReviews .oke-reviewsKeywords-list-category.oke-is-active{background-color:var(--oke-filter-backgroundColorActive);color:var(--oke-filter-textColorActive);border-color:var(--oke-filter-borderColorActive)}.okeReviews[data-oke-container] .oke-reviewsKeywords .oke-translateButton,div.okeReviews .oke-reviewsKeywords .oke-translateButton{margin-top:12px} 2785.oke-rs{display:block}.oke-rs .oke-reviewsSummary.oke-is-preRender .oke-reviewsSummary-summary{-webkit-mask:linear-gradient(180deg,#000 0,#000 40%,transparent 95%,transparent 0) 100% 50%/100% 100% repeat-x;mask:linear-gradient(180deg,#000 0,#000 40%,transparent 95%,transparent 0) 100% 50%/100% 100% repeat-x;max-height:150px}.okeReviews[data-oke-container] .oke-reviewsSummary .oke-tooltip,div.okeReviews .oke-reviewsSummary .oke-tooltip{display:inline-block;font-weight:400}.okeReviews[data-oke-container] .oke-reviewsSummary .oke-tooltip-trigger,div.okeReviews .oke-reviewsSummary .oke-tooltip-trigger{height:15px;width:15px;overflow:hidden;transform:translateY(-10%)}.okeReviews[data-oke-container] .oke-reviewsSummary-heading,div.okeReviews .oke-reviewsSummary-heading{align-items:center;-moz-column-gap:4px;column-gap:4px;display:inline-flex;font-weight:700;margin-bottom:8px}.okeReviews[data-oke-container] .oke-reviewsSummary-heading-skeleton,div.okeReviews .oke-reviewsSummary-heading-skeleton{height:calc(var(--oke-button-fontSize) + 4px);width:150px}.okeReviews[data-oke-container] .oke-reviewsSummary-icon,div.okeReviews .oke-reviewsSummary-icon{fill:currentColor;font-size:14px}.okeReviews[data-oke-container] .oke-reviewsSummary-icon svg,div.okeReviews .oke-reviewsSummary-icon svg{vertical-align:baseline}.okeReviews[data-oke-container] .oke-reviewsSummary-summary.oke-is-truncated,div.okeReviews .oke-reviewsSummary-summary.oke-is-truncated{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}</style> 2786 2787
2787<script type="application/json" id="oke-reviews-settings">{"subscriberId":"39716fe6-9837-4b54-9b05-e73532ff3261","analyticsSettings":{"isWidgetOnScreenTrackingEnabled":true,"provider":"gtm"},"locale":"en","localeAndVariant":{"code":"en"},"matchCustomerLocale":false,"widgetSettings":{"global":{"dateSettings":{"format":{"type":"absolute","options":{"dateStyle":"short"}}},"hideOkendoBranding":true,"reviewTranslationsMode":"off","showIncentiveIndicator":false,"searchEnginePaginationEnabled":false,"stars":{"backgroundColor":"#E5E5E5","foregroundColor":"#DA9FC4","interspace":2,"shape":{"type":"default"},"showBorder":false},"font":{"fontType":"inherit-from-page"}},"homepageCarousel":{"slidesPerPage":{"large":3,"medium":2},"totalSlides":12,"scrollBehaviour":"slide","style":{"showDates":true,"border":{"color":"#DA9FC4","width":{"value":2,"unit":"px"}},"bodyFont":{"hasCustomFontSettings":false},"headingFont":{"fontSize":{"value":25,"unit":"px"},"fontType":"use-global","fontWeight":600,"hasCustomFontSettings":true},"arrows":{"color":"#0D0C22","size":{"value":24,"unit":"px"},"enabled":true},"avatar":{"backgroundColor":"#E5E5EB","placeholderTextColor":"#2C3E50","size":{"value":48,"unit":"px"},"enabled":false},"media":{"size":{"value":200,"unit":"px"},"imageGap":{"value":4,"unit":"px"},"enabled":true},"stars":{"height":{"value":18,"unit":"px"}},"productImageSize":{"value":30,"unit":"px"},"layout":{"name":"default","reviewDetailsPosition":"below","showAttributeBars":false,"showProductDetails":"never"},"highlightColor":"#DA9FC4","spaceAbove":{"value":20,"unit":"px"},"text":{"primaryColor":"#0D0C22","fontSizeRegular":{"value":14,"unit":"px"},"fontSizeSmall":{"value":12,"unit":"px"},"secondaryColor":"#0D0C22"},"spaceBelow":{"value":20,"unit":"px"}},"featuredReviewsTags":["v0Y8awr"],"defaultSort":"tags desc","autoPlay":false,"secondarySort":"rating desc","truncation":{"bodyMaxLines":2,"truncateAll":false,"enabled":true}},"mediaCarousel":{"minimumImages":1,"linkText":"Read More","autoPlay":false,"slideSize":"medium","arrowPosition":"outside"},"mediaGrid":{"gridStyleDesktop":{"layout":"default-desktop"},"gridStyleMobile":{"layout":"default-mobile"},"showMoreArrow":{"arrowColor":"#676986","enabled":true,"backgroundColor":"#f4f4f6"},"linkText":"Read More","infiniteScroll":false,"gapSize":{"value":10,"unit":"px"}},"questions":{"initialPageSize":6,"loadMorePageSize":6},"reviewsBadge":{"layout":"large","colorScheme":"dark"},"reviewsTab":{"enabled":false},"reviewsWidget":{"tabs":{"reviews":true,"questions":true},"header":{"columnDistribution":"center","verticalAlignment":"top","blocks":[{"columnWidth":"full","modules":[{"name":"rating-average","layout":"two-line"},{"name":"reviews-summary","heading":"Reviews Summary","maxTextLines":2}],"textAlignment":"center"},{"columnWidth":"full","modules":[{"name":"media-carousel","imageGap":{"value":4,"unit":"px"},"imageHeight":{"value":150,"unit":"px"}}],"textAlignment":"center"}]},"style":{"showDates":true,"border":{"color":"#D6D4CC","width":{"value":1,"unit":"px"}},"bodyFont":{"hasCustomFontSettings":false},"headingFont":{"hasCustomFontSettings":false},"filters":{"backgroundColorActive":"#DA9FC4","backgroundColor":"#FFFFFF","borderColor":"#DBDDE4","borderRadius":{"value":100,"unit":"px"},"borderColorActive":"#DA9FC4","textColorActive":"#FFFFFF","textColor":"#0D0C22","searchHighlightColor":"#DA9FC4"},"avatar":{"enabled":false},"stars":{"height":{"value":18,"unit":"px"}},"shadingColor":"#F7F7F8","productImageSize":{"value":48,"unit":"px"},"button":{"backgroundColorActive":"#DA9FC4","borderColorHover":"#DA9FC4","backgroundColor":"#DA9FC4","borderColor":"#DA9FC4","backgroundColorHover":"#DA9FC4","textColorHover":"#FFFFFF","borderRadius":{"value":4,"unit":"px"},"borderWidth":{"value":1,"unit":"px"},"borderColorActive":"#DA9FC4","textColorActive":"#FFFFFF","textColor":"#FFFFFF","font":{"hasCustomFontSettings":false}},"highlightColor":"#DA9FC4","spaceAbove":{"value":20,"unit":"px"},"text":{"primaryColor":"#0D0C22","fontSizeRegular":{"value":16,"unit":"px"},"fontSizeLarge":{"value":20,"unit":"px"},"fontSizeSmall":{"value":16,"unit":"px"},"secondaryColor":"#0D0C22"},"spaceBelow":{"value":20,"unit":"px"},"attributeBar":{"style":"default","backgroundColor":"#D3D4DD","shadingColor":"#9A9DB1","markerColor":"#00CAAA"}},"showWhenEmpty":true,"reviews":{"list":{"layout":{"collapseReviewerDetails":false,"columnAmount":4,"
2787name":"default","showAttributeBars":false,"borderStyle":"minimal","showProductVariantName":false,"showProductDetails":"never"},"loyalty":{"maxInitialAchievements":3},"initialPageSize":5,"replyTruncation":{"bodyMaxLines":4,"enabled":true},"media":{"layout":"hidden"},"truncation":{"bodyMaxLines":4,"truncateAll":false,"enabled":true},"loadMorePageSize":5},"controls":{"filterMode":"open-always","freeTextSearchEnabled":true,"keywordsFilterEnabled":true,"writeReviewButtonEnabled":true,"defaultSort":"date desc"}}},"starRatings":{"showWhenEmpty":false,"clickBehavior":"scroll-to-widget","style":{"text":{"content":"review-count","style":"number-and-text","brackets":false},"spaceAbove":{"value":0,"unit":"px"},"singleStar":false,"spaceBelow":{"value":0,"unit":"px"},"height":{"value":18,"unit":"px"}}}},"features":{"attributeFiltersEnabled":true,"recorderPlusEnabled":true,"recorderQandaPlusEnabled":true,"reviewsKeywordsEnabled":true,"reviewsSummariesEnabled":true}}</script>
2787 2788 <style id="oke-css-vars">:root{--oke-widget-spaceAbove:20px;--oke-widget-spaceBelow:20px;--oke-starRating-spaceAbove:0;--oke-starRating-spaceBelow:0;--oke-button-backgroundColor:#da9fc4;--oke-button-backgroundColorHover:#da9fc4;--oke-button-backgroundColorActive:#da9fc4;--oke-button-textColor:#fff;--oke-button-textColorHover:#fff;--oke-button-textColorActive:#fff;--oke-button-borderColor:#da9fc4;--oke-button-borderColorHover:#da9fc4;--oke-button-borderColorActive:#da9fc4;--oke-button-borderRadius:4px;--oke-button-borderWidth:1px;--oke-button-fontWeight:700;--oke-button-fontSize:var(--oke-text-regular,14px);--oke-button-fontFamily:inherit;--oke-border-color:#d6d4cc;--oke-border-width:1px;--oke-text-primaryColor:#0d0c22;--oke-text-secondaryColor:#0d0c22;--oke-text-small:16px;--oke-text-regular:16px;--oke-text-large:20px;--oke-text-fontFamily:inherit;--oke-avatar-size:undefined;--oke-avatar-backgroundColor:undefined;--oke-avatar-placeholderTextColor:undefined;--oke-highlightColor:#da9fc4;--oke-shadingColor:#f7f7f8;--oke-productImageSize:48px;--oke-attributeBar-shadingColor:#9a9db1;--oke-attributeBar-borderColor:undefined;--oke-attributeBar-backgroundColor:#d3d4dd;--oke-attributeBar-markerColor:#00caaa;--oke-filter-backgroundColor:#fff;--oke-filter-backgroundColorActive:#da9fc4;--oke-filter-borderColor:#dbdde4;--oke-filter-borderColorActive:#da9fc4;--oke-filter-textColor:#0d0c22;--oke-filter-textColorActive:#fff;--oke-filter-borderRadius:100px;--oke-filter-searchHighlightColor:#da9fc4;--oke-mediaGrid-chevronColor:#676986;--oke-stars-foregroundColor:#da9fc4;--oke-stars-backgroundColor:#e5e5e5;--oke-stars-borderWidth:0}.oke-w,.oke-modal{--oke-title-fontWeight:600;--oke-title-fontSize:var(--oke-text-regular,14px);--oke-title-fontFamily:inherit;--oke-bodyText-fontWeight:400;--oke-bodyText-fontSize:var(--oke-text-regular,14px);--oke-bodyText-fontFamily:inherit}</style> 2789 <style id="oke-reviews-custom-css">.okeReviews.oke-sr{display:block}.product-info__block-item.liquid:has(.okeReviews.oke-sr){margin-block-start:10px;margin-top:0;margin-bottom:15px}.oke-sr-count{color:#da9fc4}[data-oke-widget] div.okeReviews[data-oke-container].oke-w{max-width:unset}div.oke-modal .okeReviews[data-oke-container].oke-w,div.okeReviews[data-oke-container] .oke-modal,div.okeReviews[data-oke-container] .oke-modal p,div.okeReviews[data-oke-container] .oke-modal .oke-helpful,div.okeReviews[data-oke-container] .oke-modal .oke-helpful-vote-button,div.okeReviews[data-oke-container] .oke-modal .oke-reviewContent-date{color:var(--oke-text-primaryColor)}div.okeReviews[data-oke-container] .oke-w-reviewer-name,div.okeReviews[data-oke-container] .oke-w-reviewer-verified{font-weight:400;font-size:18px}div.okeReviews[data-oke-container] .oke-reviewContent-title,div.okeReviews .oke-reviewContent-title{font-weight:300;font-size:30px;
2789font-family:'Canela','Helvetica Neue','Arial','Lucida Grande',sans-serif}.okeReviews[data-oke-container].oke-w .oke-button,div.okeReviews .oke-button{text-transform:uppercase;font-size:14px;font-weight:700}div.okeReviews[data-oke-container] .oke-w-filterOption-label,div.okeReviews .oke-w-filterOption-label{border:0}.okeReviews[data-oke-container].oke-w .oke-button:not(.oke-is-loading):not(.oke-is-active):hover,div.okeReviews .oke-button:not(.oke-is-loading):not(.oke-is-active):hover{box-shadow:initial}.okeReviews.oke-w .oke-is-small .oke-w-reviews-writeReview{width:100%;padding-top:10px}.okeReviews.oke-w .oke-is-small .oke-button,.okeReviews.oke-w .oke-is-small .oke-qw-header-askQuestion{width:100%}div.okeReviews[data-oke-container] .oke-sortSelect-label{margin-right:0}div.okeReviews[data-oke-container] .oke-w-reviews-controls{flex-wrap:wrap}div.okeReviews[data-oke-container] .oke-w-review-main .oke-helpful,div.okeReviews .oke-w-review-main .oke-helpful,div.okeReviews[data-oke-container] .oke-w-review-recommendation,div.okeReviews[data-oke-container] .oke-w-reviewer-verified-icon:before,div.okeReviews[data-oke-container] .oke-w-reviews-writeReview{display:none}div.okeReviews[data-oke-container] .oke-w-review--minimalBorders .oke-w-review-side{border:0}div.okeReviews[data-oke-container] .oke-w-ratingAverageModule-rating-average{font-size:48px;font-weight:400;color:#da9fc4;
2789font-family:'Canela','Helvetica Neue','Arial','Lucida Grande',sans-serif;line-height:1}div.okeReviews[data-oke-container] .oke-w-navBar-item[aria-selected=true],div.okeReviews .oke-w-navBar-item[aria-selected=true]{color:#da9fc4;border-color:#da9fc4}@media all and (max-width:768px){.product-info__block-item .oke-sr{padding-top:12px}}.product-info__block-item.app:has(>#shopify-block-AZXp1V2h2d3BocTNHc__okendo_reviews_keywords_CX7MT8){display:none}</style> 2790 <template id="oke-reviews-body-template"><svg id="oke-star-symbols" style="display:none!important" data-oke-id="oke-star-symbols"><symbol id="oke-star-empty" style="overflow:visible;"><path id="star-default--empty" fill="var(--oke-stars-backgroundColor)" stroke="var(--oke-stars-borderColor)" stroke-width="var(--oke-stars-borderWidth)" d="M3.34 13.86c-.48.3-.76.1-.63-.44l1.08-4.56L.26 5.82c-.42-.36-.32-.7.24-.74l4.63-.37L6.92.39c.2-.52.55-.52.76 0l1.8 4.32 4.62.37c.56.05.67.37.24.74l-3.53 3.04 1.08 4.56c.13.54-.14.74-.63.44L7.3 11.43l-3.96 2.43z"/></symbol><symbol id="oke-star-filled" style="overflow:visible;"><path id="star-default--filled" fill="var(--oke-stars-foregroundColor)" stroke="var(--oke-stars-borderColor)" stroke-width="var(--oke-stars-borderWidth)" d="M3.34 13.86c-.48.3-.76.1-.63-.44l1.08-4.56L.26 5.82c-.42-.36-.32-.7.24-.74l4.63-.37L6.92.39c.2-.52.55-.52.76 0l1.8 4.32 4.62.37c.56.05.67.37.24.74l-3.53 3.04 1.08 4.56c.13.54-.14.74-.63.44L7.3 11.43l-3.96 2.43z"/></symbol></svg></template>
2790<script>document.addEventListener('readystatechange',() =>{Array.from(document.getElementById('oke-reviews-body-template')?.content.children)?.forEach(function(child){if(!Array.from(document.body.querySelectorAll('[data-oke-id='.concat(child.getAttribute('data-oke-id'),']'))).length){document.body.prepend(child)}})},{once:true});</script>
2790 2791 2792 2793 2794 2795 2796 2797 2798 2799 2800 2801 2802 2803 2804<!-- END app snippet --> 2805 2806 <!-- BEGIN app snippet: okendo-reviews-json-ld --> 2807<!-- END app snippet --> 2808 2809<!-- BEGIN app snippet: widget-plus-initialisation-script --> 2810 2811 2812 2813 2814
2814<script async id="okendo-reviews-script" src="https://cdn-static.okendo.io/reviews-widget-plus/js/okendo-reviews.js"></script>
2814 2815 2816<!-- END app snippet --> 2817 2818 2819<!-- END app block -->
2819<script src="https://cdn.shopify.com/extensions/01a0f73f-32b1-72a0-95a2-b3115e89ddb0/order-delivery-date-time-111/assets/slots-script-tag.js" type="text/javascript" defer="defer"></script>
2819 2820<link href="https://cdn.shopify.com/extensions/01a0cff8-2c69-745f-8772-fd89b29d2d4b/keepcart-2-253/assets/app.css" rel="stylesheet" type="text/css" media="all">
2821<script src="https://cdn.shopify.com/extensions/01a0ef41-2e5e-744b-a57b-7cec88bf7012/rivo-loyalty-rewards-referrals-823/assets/rivo-app-embed.js" type="text/javascript" defer="defer"></script>
2821 2822<link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
2823<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: 12599863,url: window.location.href,navigation_start,duration: currentMs - navigation_start,session_token,page_type: "collection"};window.navigator.sendBeacon("https://monorail-edge.shopifysvc.com/v1/produce", JSON.stringify({schema_id: "online_store_buyer_site_abandonment/1.1",payload: payload,metadata: {event_created_at_ms: currentMs,event_sent_at_ms: currentMs}}));}}window.addEventListener('pagehide', handle_abandonment_event);}}());</script>
vendor: 1 bytes, line 2823
2823
2824<script> 2825 window.__TREKKIE_SHIM_QUEUE = window.__TREKKIE_SHIM_QUEUE || []; 2826</script>
vendor: 1 bytes, line 2826
2826
2827<script>(function(){var wpmLoader=function(){"use strict";var e=/Googlebot|Storebot-Google|bingbot|Baiduspider|YandexBot|DuckDuckBot|Slurp|facebookexternalhit|Twitterbot|LinkedInBot|Applebot|AdsBot-Google|Mediapartners-Google|APIs-Google|PetalBot|SemrushBot|AhrefsBot|MJ12bot|DotBot|Acunetix|PerplexityBot|Perplexity-User/i,t=/bytedance/i;function i(){try{var e=document.cookie;if(!e||"string"!=typeof e)return;for(var t=0,i=e.split(";");t<i.length;t++){var n=i[t],r=n.indexOf("=");if(-1!==r){var o=n.slice(0,r).trim();if(o){var a=void 0;try{a=decodeURIComponent(o)}catch(e){a=o}if("_shopify_s"===a){var d=n.slice(r+1).trim();try{return decodeURIComponent(d)}catch(e){return d}}}}}return}catch(e){return}}function n(e){try{"undefined"!=typeof console&&"function"==typeof console.warn&&console.warn(e)}catch(e){}}function r(e,t){return"string"==typeof e&&e.length>0&&e.length<=t?e:void 0}function o(e){var t;switch(null==(t=null==e?void 0:e.navigation)?void 0:t.type){case 0:return"navigate";case 1:return"reload";case 2:return"back_forward";default:return}}function a(){var e,t,i;try{var n=null==(i=null==(t=null==(e=self.ShopifyAnalytics)?void 0:e.lib)?void 0:t.trekkie)?void 0:i.state;return"awaiting-consent"===n||"initialized"===n?n:void 0}catch(e){return}}return function(d,s,u,l){var c=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{};try{var p=c.trekkieShim;!0!==p&&"true"!==p||null!=window.__TREKKIE_SHIM_QUEUE||(window.__TREKKIE_SHIM_QUEUE=[])}catch(e){}var f,v,h,y,g=(v=(f={modern:/Edge?\/(1{2}[4-9]|1[2-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Firefox\/(1{2}[4-9]|1[2-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Chrom(ium|e)\/(9{2}|\d{3,})\.\d+(\.\d+|)|(Maci|X1{2}).+ Version\/(15\.\d+|(1[6-9]|[2-9]\d|\d{3,})\.\d+)([,.]\d+|)( \(\w+\)|)( Mobile\/\w+|) Safari\/|Chrome.+OPR\/(9{2}|\d{3,})\.\d+\.\d+|(CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS|CPU iPad OS)[ +]+(15[._]\d+|(1[6-9]|[2-9]\d|\d{3,})[._]\d+)([._]\d+|)|Android:?[ /-](14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})(\.\d+|)(\.\d+|)|Android.+Firefox\/(15\d|1[6-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+Chrom(ium|e)\/(14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|SamsungBrowser\/([2-9]\d|\d{3,})\.\d+/,legacy:/Edge?\/(1[6-9]|[2-9]\d|\d{3,})\.\d+(\.\d+|)|Firefox\/(5[4-9]|[6-9]\d|\d{3,})\.\d+(\.\d+|)|Chrom(ium|e)\/(5[1-9]|[6-9]\d|\d{3,})\.\d+(\.\d+|)([\d.]+$|.*Safari\/(?![\d.]+ Edge\/[\d.]+$))|(Maci|X1{2}).+ Version\/(10\.\d+|(1[1-9]|[2-9]\d|\d{3,})\.\d+)([,.]\d+|)( \(\w+\)|)( Mobile\/\w+|) Safari\/|Chrome.+OPR\/(3[89]|[4-9]\d|\d{3,})\.\d+\.\d+|(CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS|CPU iPad OS)[ +]+(10[._]\d+|(1[1-9]|[2-9]\d|\d{3,})[._]\d+)([._]\d+|)|Android:?[ /-](14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})(\.\d+|)(\.\d+|)|Mobile Safari.+OPR\/([89]\d|\d{3,})\.\d+\.\d+|Android.+Firefox\/(15\d|1[6-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+Chrom(ium|e)\/(14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+(UC? ?Browser|UCWEB|U3)[ /]?(15\.([5-9]|\d{2,})|(1[6-9]|[2-9]\d|\d{3,})\.\d+)\.\d+|SamsungBrowser\/(5\.\d+|([6-9]|\d{2,})\.\d+)|Android.+MQ{2}Browser\/(14(\.(9|\d{2,})|)|(1[5-9]|[2-9]\d|\d{3,})(\.\d+|))(\.\d+|)|K[Aa][Ii]OS\/(3\.\d+|([4-9]|\d{2,})\.\d+)(\.\d+|)/}).modern,h=f.legacy,(y=navigator.userAgent).match(e)?"bot":y.match(v)?"modern":y.match(h)?"legacy":y.match(t)?"bot":"unknown"),m=function(e){var t,i,n=r(e,128);try{var a=window.performance,d=null==(t=null==a?void 0:a.getEntriesByType)?void 0:t.call(a,"navigation")[0];if(!d)return{requestId:n,navigationType:o(a)};var s="type"in d?r(d.type,64):void 0,u="serverTiming"in d&&Array.isArray(d.serverTiming)?d.serverTiming:[];return{requestId:null!=n?n:r(null==(i=u.find(function(e){return"requestID"===e.name}))?void 0:i.description,128),navigationType:s}}catch(e){return{requestId:n}}}(c.requestId),w=function(e){var t=e.version,r=e.browserTarget,o=e.surface,a=e.shopId,d=e.monorailEndpoint,s=window.location.href;return{emit:function(e){var u=e.status,l=e.errorMsg,c=e.failureReason,p=e.useKeepaliveFallback,f=void 0!==p&&p,v=e.navigationType,h=e.pagehidePersisted,y=e.requestId,g=e.trekkieState;if(d){var m,w;try{var b=(new Date).getTime();m=JSON.stringify({metadata:{event_sent_at_ms:b},events:[{schema_id:"web_pixels_manager_load/3.3",payload:{version:t,bundle_target:r,page_url:s,status:u,surface:o,error_msg:l,failure_reason:c,navigation_type:v,pagehide_persisted:h,request_id:y,trekkie_state:g,shop_id:a,visit_token:i()},metadata:{event_created_at_ms:b}}]})}catch(e){return}try{if("function"==typeof window.navigator.sendBeacon&&-1===(w=window.navigator.userAgent).indexOf("iPhone; CPU iPhone OS 12_")&&-1===w.indexOf("iPad; CPU OS 12_")&&-1===w.indexOf("iPod touch; CPU iPhone OS 12_")&&window.navigator.sendBeacon.bind(window.navigator)(d,m))return}catch(e){}if(f)try{"function"==typeof window.fetch&&window.fetch(d,{method:"POST",headers:{"Content-Type":"text/plain"},body:m,keepalive:!0}
2827).catch(function(){})}catch(e){}else try{var _=new XMLHttpRequest;_.open("POST",d,!0),_.setRequestHeader("Content-Type","text/plain"),_.send(m)}catch(e){n("[Web Pixels Manager] Got an unhandled error while logging to Monorail.")}}else n("[Web Pixels Manager] No Monorail endpoint provided, skipping logging.")}}}({version:u,browserTarget:g,surface:d.surface,shopId:d.shopId,monorailEndpoint:d.monorailEndpoint});if(Boolean(null==(_=null==(b=window.Shopify)?void 0:b.analytics)?void 0:_.replayQueue))w.emit({status:"setup-skipped",errorMsg:"replay queue already initialized."});else{var b,_;w.emit({status:"setup-started"}),window.Shopify=window.Shopify||{};var S=window.Shopify;S.analytics=S.analytics||{};var P=S.analytics;P.replayQueue=[],P.publish=function(e,t,i){return P.replayQueue.push([e,t,i]),!0};try{self.performance.mark("wpm:start")}catch(e){}var k,C="modern"===g?"modern":"legacy",E=(null!=l?l:{modern:"",legacy:""})[C],I=[(k={baseUrl:s,hashVersion:u,buildTarget:C}).baseUrl,"/wpm","/b",k.hashVersion,"modern"===k.buildTarget?"m":"l",".js"].join(""),O=!1,T=!1;try{c.browserTarget=g,function(){O=!0;try{window.addEventListener("pagehide",M)}catch(e){O=!1}}(),R(function(){try{R(x)}catch(e){D(e)}}),w.emit({status:"loading",requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()})}catch(e){D(e)}}function U(){var e;if(q(),!function(){var e,t;return Boolean(null==(t=null==(e=window.Shopify)?void 0:e.analytics)?void 0:t.initialized)}()){var t,i,n;try{if("function"!=typeof(null==(e=window.webPixelsManager)?void 0:e.init))return void A();if(!(null!==(n=i=t=window.webPixelsManager.init(d))&&"function"!=typeof n&&Object(n)===n&&"publish"in i&&"function"==typeof i.publish&&"publishCustomEvent"in i&&"function"==typeof i.publishCustomEvent&&"visitor"in i&&"function"==typeof i.visitor))return void A()}catch(e){return void A(e)}var r=window.Shopify.analytics;r.replayQueue.forEach(function(e){var i=e[0],n=e[1],r=e[2];t.publishCustomEvent(i,n,r)}),r.replayQueue=[],r.publish=t.publishCustomEvent,r.visitor=t.visitor,r.initialized=!0}}function A(e){B("manager_api_unavailable",void 0===e?void 0:Q(e))}function x(){B("script_load_failed","".concat(I," has failed to load"))}function B(e,t){T||(T=!0,q(),w.emit({status:"failed",errorMsg:t,failureReason:e,requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()}))}function M(e){O&&(q(),w.emit({status:"pagehide-while-loading",useKeepaliveFallback:!0,pagehidePersisted:e.persisted,requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()}))}function q(){O=!1;try{window.removeEventListener("pagehide",M)}catch(e){}}function R(e){var t;!function(e){var t=e.src,i=e.async,n=void 0===i||i,r=e.onload,o=e.onerror,a=e.sri,d=e.scriptDataAttributes,s=void 0===d?{}:d,u=document.createElement("script"),l=document.querySelector("head"),c=document.querySelector("body");if(u.async=n,u.src=t,a&&(u.integrity=a,u.crossOrigin="anonymous"),s)for(var p in s)if(Object.prototype.hasOwnProperty.call(s,p))try{u.dataset[p]=String(s[p])}catch(e){}if(r&&u.addEventListener("load",r),o&&u.addEventListener("error",o),l)l.appendChild(u);else{if(!c)throw new Error("Did not find a head or body element to append the script");c.appendChild(u)}}({src:I,async:!0,onload:U,onerror:e,sri:(t=E,"string"==typeof t&&/^sha384-[A-Za-z0-9+/=]+$/.test(t)?E:""),scriptDataAttributes:c})}function D(e){B("script_append_failed",Q(e))}function Q(e){return e instanceof Error?e.message:"Unknown error"}}}();wpmLoader({shopId: 12599863,storefrontBaseUrl: "https://www.littlewordsproject.com",extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint: "https://www.littlewordsproject.com/.well-known/shopify/monorail/unstable/produce_batch",surface: "storefront-renderer",enabledBetaFlags: ["4c64608a","16072cab","8450a54b","7ee89bf1"],webPixelsConfigList: [{"id":"4746018897","configuration":"{\"loopShopId\":\"7805\",\"loopWebPixelEndpoint\":\"https:\\\/\\\/shopify-events.loopreturns.com\\\/\",\"loopStorefrontApiEndpoint\":\"https:\\\/\\\/api.loopreturns.com\\\/storefront\\\/v1\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"8945b974e010ef7b3eeec64ee8a9f0ad","type":"APP","apiClientId":1662707,"privacyPurposes":["ANALYTICS"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]}
2827,"dataSharingState":"unrestricted"},{"id":"4589486161","configuration":"{\"merchantId\":\"1041721\", \"url\":\"https:\/\/classic.avantlink.com\", \"shopName\":\"littlewords\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"26843be7e7f0ff401f557cffac6b5a49","type":"APP","apiClientId":125215244289,"privacyPurposes":["ANALYTICS","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_personal_data"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"4533813329","configuration":"{\"shopID\":\"12599863\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"661cb915019a6836503f79bf7365ed06","type":"APP","apiClientId":37840257025,"privacyPurposes":["ANALYTICS"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"id":"4516577361","configuration":"{\"config_url\": \"https:\/\/shopify-gtm-suite.getelevar.com\/configs\/cf7d0192b393dd38fb3cc4e56019f94cdd21c74c\/config.js\"}","eventPayloadVersion":"v1","runtimeContext":"LAX","scriptVersion":"7ae63d00911d5ee26809bf1e3232d852","type":"APP","apiClientId":2509311,"privacyPurposes":[],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"id":"4417585233","configuration":"{\"tenantId\":\"7acf9128-f311-4e22-ae25-743a8e7bcd65\", \"shop\":\"littlewords.myshopify.com\", \"datasourceId\":\"e795bcd2-d60d-4f62-a3c2-57fab37cbf53\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"10f834a725b0f75d83684545ab47baca","type":"APP","apiClientId":4294333,"privacyPurposes":["ANALYTICS"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"id":"4317708369","configuration":"{\"myshopifyDomain\":\"littlewords.myshopify.com\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"23b97d18e2aa74363140dc29c9284e87","type":"APP","apiClientId":2775569,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_phone","read_customer_personal_data"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"4230185041","configuration":"{\"accountID\":\"3002\",\"pixelToken\":\"k6vfxm8rj3olhvqhqkychgi1lewozcuk\",\"sentryDsn\":\"https:\\\/\\\/f8803489a339de9179bc2a439cc32f35@o4507333300387840.ingest.us.sentry.io\\\/4507339674615808\",\"sentryTunnelUrl\":\"extension-blocks-service.pdqprod.link\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"026539480a22d143c4935671ead21750","type":"APP","apiClientId":4269887,"privacyPurposes":["ANALYTICS","MARKETING"],"capabilities":["advanced_dom_events"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"4157669457","configuration":"{\"accountID\":\"auto-installed\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"85a9cb3e05138742d23f5f28a6538d99","type":"APP","apiClientId":249584615425,"privacyPurposes":["ANALYTICS"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"3329163345","configuration":"{\"store_id\":\"215674\",\"environment\":\"prod\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"10c4f173702937db6fa4bf871600cafd","type":"APP","apiClientId":294517,"privacyPurposes":["ANALYTICS"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]}
2827,"dataSharingState":"unrestricted"},{"id":"3187998801","configuration":"{\"ti\":\"17339512\",\"endpoint\":\"https:\/\/bat.bing.com\/action\/0\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"5ee93563fe31b11d2d65e2f09a5229dc","type":"APP","apiClientId":2997493,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_personal_data"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"2946793553","configuration":"{\"accountID\":\"SqmXHT\",\"webPixelConfig\":\"eyJlbmFibGVBZGRlZFRvQ2FydEV2ZW50cyI6IHRydWV9\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"c63c5b72c8d77be5f2d27d14c081da38","type":"APP","apiClientId":123074,"privacyPurposes":["ANALYTICS","MARKETING"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted","enabledFlags":["9a3ed68a"]},{"id":"2894790737","configuration":"{\"accountID\":\"cmfe9g8cj0000l704cssmf657\",\"popupIds\":\"[{\\\"id\\\": \\\"e7167dd3-8029-4d93-b77c-645b01474043\\\", \\\"device\\\": \\\"desktop\\\", \\\"region\\\": \\\"US\\\"}, {\\\"id\\\": \\\"e7167dd3-8029-4d93-b77c-645b01474043\\\", \\\"device\\\": \\\"mobile\\\", \\\"region\\\": \\\"US\\\"}, {\\\"id\\\": \\\"836048a9-92a6-4198-a2fb-7a7f8bb05df7\\\", \\\"device\\\": \\\"desktop\\\", \\\"region\\\": \\\"CA\\\"}, {\\\"id\\\": \\\"836048a9-92a6-4198-a2fb-7a7f8bb05df7\\\", \\\"device\\\": \\\"mobile\\\", \\\"region\\\": \\\"CA\\\"}]\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"feee654a5cfd363c9eab361d4283a4b3","type":"APP","apiClientId":59645886465,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"962035793","configuration":"{\"config\":\"{\\\"google_tag_ids\\\":[\\\"AW-950897715\\\",\\\"GT-NS92T33\\\",\\\"G-5Q0PZZ8DBE\\\",\\\"GT-TNHWZRB\\\"],\\\"gtag_events\\\":[{\\\"type\\\":\\\"search\\\",\\\"action_label\\\":[\\\"AW-950897715\\\/BTgVCP_AhvkYELOYtsUD\\\",\\\"G-5Q0PZZ8DBE\\\",\\\"G-WNMHNQMFCX\\\"]},{\\\"type\\\":\\\"begin_checkout\\\",\\\"action_label\\\":[\\\"AW-950897715\\\/B0SHCP3BhvkYELOYtsUD\\\",\\\"G-5Q0PZZ8DBE\\\",\\\"G-WNMHNQMFCX\\\"]},{\\\"type\\\":\\\"view_item\\\",\\\"action_label\\\":[\\\"AW-950897715\\\/gYLvCPzAhvkYELOYtsUD\\\",\\\"MC-CYMPJFMNM6\\\",\\\"G-5Q0PZZ8DBE\\\",\\\"G-WNMHNQMFCX\\\"]},{\\\"type\\\":\\\"purchase\\\",\\\"action_label\\\":[\\\"AW-950897715\\\/LHDBCPbAhvkYELOYtsUD\\\",\\\"MC-CYMPJFMNM6\\\",\\\"AW-950897715\\\/WMb4CIz24dACELOYtsUD\\\",\\\"G-5Q0PZZ8DBE\\\",\\\"G-WNMHNQMFCX\\\"]},{\\\"type\\\":\\\"page_view\\\",\\\"action_label\\\":[\\\"AW-950897715\\\/3G-2CPnAhvkYELOYtsUD\\\",\\\"MC-CYMPJFMNM6\\\",\\\"G-5Q0PZZ8DBE\\\",\\\"G-WNMHNQMFCX\\\"]},{\\\"type\\\":\\\"add_payment_info\\\",\\\"action_label\\\":[\\\"AW-950897715\\\/NyloCIDChvkYELOYtsUD\\\",\\\"G-5Q0PZZ8DBE\\\",\\\"G-WNMHNQMFCX\\\"]},{\\\"type\\\":\\\"add_to_cart\\\",\\\"action_label\\\":[\\\"AW-950897715\\\/oPttCPrBhvkYELOYtsUD\\\",\\\"G-5Q0PZZ8DBE\\\",\\\"G-WNMHNQMFCX\\\"]}],\\\"enable_monitoring_mode\\\":false}\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"a3321ca85cf5aaf6b57585fcd8d67b3a","type":"APP","apiClientId":1780363,"privacyPurposes":[],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted","enabledFlags":["9a3ed68a"]},{"id":"736165969","configuration":"{\"shopId\":\"533827\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"2eedfe5ca9c7d4954f200bfa1ffb380d","type":"APP","apiClientId":2328352,"privacyPurposes":["MARKETING"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]}
2827,"dataSharingState":"unrestricted","enabledFlags":["9a3ed68a"]},{"id":"543490129","configuration":"{\"shopId\":\"littlewords.myshopify.com\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"31536d5a2ef62c1887054e49fd58dba0","type":"APP","apiClientId":4845829,"privacyPurposes":["ANALYTICS"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"id":"475791441","configuration":"{\"integrationId\":\"7c8f4cbb-8199-40af-b0d6-2d951babf5ab\",\"brandId\":\"62cbf314-db85-4896-b930-d79099159a1c\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"3d68c7edeb1fe14187fca3e6ba72edda","type":"APP","apiClientId":2567979,"privacyPurposes":["ANALYTICS"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"id":"319750225","configuration":"{\"accountID\":\"shopify-12599863\", \"endpoint\":\"https:\/\/connect.nosto.com\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"85848493c2a1c7a4bbf22728b6f9f31f","type":"APP","apiClientId":272825,"privacyPurposes":["ANALYTICS","MARKETING"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_email","read_customer_name","read_customer_personal_data"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"115212369","configuration":"{\"tagID\":\"2612832131311\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"7ae565e198624b39e0856d352b9a6b4c","type":"APP","apiClientId":3009811,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"16089169","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"2","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"name":"Microsoft Ads UET"},{"id":"16154705","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"1","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"name":"Microsoft Clarity"}
2827,{"id":"16187473","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"1","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"name":"Google Ads Conversion"},{"id":"16220241","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"2","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"name":"Google Ads Remarketing"},{"id":"21037137","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"1","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"name":"Epsilon Pixel"},{"id":"62324817","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"9","type":"CUSTOM","privacyPurposes":["SALE_OF_DATA"],"name":"Beam Statsig"},{"id":"102563921","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"3","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"name":"GTM DataLayer Tag"},{"id":"250478673","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"1","type":"CUSTOM","privacyPurposes":[],"name":"Elevar - Checkout Tracking"},{"id":"275742801","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"1","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"name":"Audiohook Purchase Event"},{"id":"277938257","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"1","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"name":"Liftoff Pixel"},{"id":"shopify-app-pixel","configuration":"{}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"0530","apiClientId":"shopify-pixel","type":"APP","privacyPurposes":["ANALYTICS","MARKETING"]},{"id":"shopify-custom-pixel","eventPayloadVersion":"v1","runtimeContext":"LAX","scriptVersion":"0530","apiClientId":"shopify-pixel","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING"]}],isMerchantRequest: false,initData: {"shop":{"name":"Little Words Project","paymentSettings":{"currencyCode":"USD"},"myshopifyDomain":"littlewords.myshopify.com","countryCode":"US","storefrontUrl":"https:\/\/www.littlewordsproject.com"},"customer":null,"cart":null,"checkout":null,"productVariants":[],"products":[{"id":"6899436781649","handle":"custom-bluestone","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"58320596467793","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"4593974083665","handle":"gold-plated","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"58320612327505","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7000245370961","handle":"custom-amethyst-dream-crystal","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"58320588406865","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"6899441336401","handle":"custom-rainbow","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"58320591192145","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7049945579601","handle":"custom-joyful","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"58320617078865","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"6844119810129","handle":"mystery-duo","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"42352461348945","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"6632340947025","handle":"good-energy-lucky-symbols","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"40463532916817","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7594583326801","handle":"custom-pink-chalk","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"58320627302481","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"6899410698321","handle":"custom-lava-stone-mens","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"58320621404241","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7594586112081","handle":"custom-sea-salt","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"58320639328337","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7675780857937","handle":"the-bead-bar-nashville","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"42002632048721","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7594582900817","handle":"custom-strawberry-cloud","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"58320625041489","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"6899409944657","handle":"custom-silver-plated","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"58320624779345","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7594584211537","handle":"custom-strand-of-pearls","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"58320629596241","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7594581721169","handle":"custom-chambray","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"58320634118225","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7594584703057","handle":"custom-lilac-garden","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"58320634544209","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7764245643345","handle":"custom-calm-waters","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"58320677797969","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7223304650833","handle":"breathe-your-faves-leveled-up-1","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"40770451669073","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7087087583313","handle":"fearless","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"40631910301777","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7594585161809","handle":"custom-sherbert","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"58320636706897","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7616623247441","handle":"custom-clear-crystal","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"58320604921937","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7188347519057","handle":"grateful-best-of","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"40617041690705","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7188346994769","handle":"blessed-bracelet","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"40617036709969","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7770537787473","handle":"gift-box-pouch","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"42383675424849","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7675954561105","handle":"the-bead-bar-disney-springs","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"42003503743057","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7758312767569","handle":"boy-mom-family-bracelet","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"42343722057809","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7675951186001","handle":"the-bead-bar-boston","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"42003490996305","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7726648852561","handle":"custom-peachy-love","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"58320677437521","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7764238827601","handle":"cz-letter-charm","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"42365202366545","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7675953381457","handle":"the-bead-bar-tampa","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"42003498795089","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7631414526033","handle":"bow-charm","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"41851170488401","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"6829772341329","handle":"bride-1","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"40375068295249","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7739039252561","handle":"the-bead-bar-short-hills","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"42257020977233","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7631640690769","handle":"cross-charm","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"41852708257873","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7666458099793","handle":"birthstones-charm","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"41965991690321","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7758337114193","handle":"mama-family-bracelet","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"42344036794449","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7675952005201","handle":"the-bead-bar-long-branch","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"42003493945425","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7293641916497","handle":"godmother-family","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"40972055150673","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"6756547395665","handle":"my-person-friendship","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"40375066296401","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]}
2827,{"id":"7594586636369","handle":"custom-golden-hour","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"58320642113617","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7631595962449","handle":"puffy-paw-print-charm","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"41852411347025","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7631438282833","handle":"puffy-heart-charm","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"41851309785169","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7758343143505","handle":"grandma-family-bracelet","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"42344117370961","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7705151373393","handle":"moon-back-love-club","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"42106290274385","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7454438064209","handle":"f-ck-cancer-cancer-prevention-2024","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"41366639935569","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7074483208273","handle":"mama-mini-mom-life","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"40325244846161","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7764245315665","handle":"custom-lullaby","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"58320676028497","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7803705851985","handle":"custom-dreamy-rays","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"58320683302993","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7758343766097","handle":"auntie-family-bracelet","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"42344125857873","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7675954987089","handle":"the-bead-bar-long-island","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"42003508428881","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]}],"purchasingCompany":null},},"https://www.littlewordsproject.com/cdn","5982071ew7ea472e3p69b68784m2150dfea",{"modern":"","legacy":""},{"trekkieShim":true,"agentContext":true,"apiClientId":"580111","facebookCapiEnabled":"false","themeId":"188681748561","themePublished":"true","eventMetadataId":"f33577aa-74e0-4498-839b-f8a39ef9fb70","pageType":"collection","resourceId":"173291110481","shopId":"12599863","storefrontBaseUrl":"https:\/\/www.littlewordsproject.com","extensionBaseUrl":"https:\/\/extensions.shopifycdn.com\/cdn\/shopifycloud\/web-pixels-manager","surface":"storefront-renderer","enabledBetaFlags":"[\"4c64608a\", \"16072cab\", \"8450a54b\", \"7ee89bf1\"]","isMerchantRequest":"false","hashVersion":"5982071ew7ea472e3p69b68784m2150dfea","publish":"custom","events":"[[\"page_viewed\",{}],[\"collection_viewed\",{\"collection\":{\"id\":\"173291110481\",\"title\":\"Shop All Bracelets \u0026 Accessories\",\"productVariants\":[{\"price\":{\"amount\":35.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Custom Bluestone\",\"vendor\":\"Imperial\",\"id\":\"6899436781649\",\"untranslatedTitle\":\"Custom Bluestone\",\"url\":\"\/products\/custom-bluestone\",\"type\":\"Custom\"},\"id\":\"58320596467793\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/BLUESTONE_f86a23cf-2
28276ad-4e0b-997b-e02744627803.webp?v=1775584132\"},\"sku\":\"W-CUS-BLUX\",\"title\":\"Bluestone \/ White \/ XXS\",\"untranslatedTitle\":\"Bluestone \/ White \/ XXS\"},{\"price\":{\"amount\":45.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Custom Gold Plated\",\"vendor\":\"Imperial\",\"id\":\"4593974083665\",\"untranslatedTitle\":\"Custom Gold Plated\",\"url\":\"\/products\/gold-plated\",\"type\":\"Custom\"},\"id\":\"58320612327505\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/GOLD_PLATED-2.webp?v=1775584747\"},\"sku\":\"W-CUS-GOLX\",\"title\":\"Gold Plated \/ White \/ XXS\",\"untranslatedTitle\":\"Gold Plated \/ White \/ XXS\"},{\"price\":{\"amount\":35.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Custom Amethyst Dreams Crystal\",\"vendor\":\"Imperial\",\"id\":\"7000245370961\",\"untranslatedTitle\":\"Custom Amethyst Dreams Crystal\",\"url\":\"\/products\/custom-amethyst-dream-crystal\",\"type\":\"Custom\"},\"id\":\"58320588406865\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/AMETHYST_DREAMS-1.webp?v=1775586157\"},\"sku\":\"W-CUS-AMDX\",\"title\":\"Amethyst Dreams Crystal \/ White \/ XXS\",\"untranslatedTitle\":\"Amethyst Dreams Crystal \/ White \/ XXS\"},{\"price\":{\"amount\":35.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Custom Rainbow\",\"vendor\":\"Imperial\",\"id\":\"6899441336401\",\"untranslatedTitle\":\"Custom Rainbow\",\"url\":\"\/products\/custom-rainbow\",\"type\":\"Custom\"},\"id\":\"58320591192145\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/RAINBOW-1.webp?v=1775588259\"},\"sku\":\"W-CUS-RAIX\",\"title\":\"Rainbow Disc \/ White \/ XXS\",\"untranslatedTitle\":\"Rainbow Disc \/ White \/ XXS\"},{\"price\":{\"amount\":35.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Custom Joyful Stone\",\"vendor\":\"Imperial\",\"id\":\"7049945579601\",\"untranslatedTitle\":\"Custom Joyful Stone\",\"url\":\"\/products\/custom-joyful\",\"type\":\"Custom\"},\"id\":\"58320617078865\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/JOYFUL-1.webp?v=1775595886\"},\"sku\":\"W-CUS-JOYX\",\"title\":\"Joyful Stone \/ White \/ XXS\",\"untranslatedTitle\":\"Joyful Stone \/ White \/ XXS\"},{\"price\":{\"amount\":20.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Two Mystery Bracelets\",\"vendor\":\"Little Words Project\",\"id\":\"6844119810129\",\"untranslatedTitle\":\"Two Mystery Bracelets\",\"url\":\"\/products\/mystery-duo\",\"type\":\"Upsell\"},\"id\":\"42352461348945\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/products\/MysteryBag_048ce06a-bed3-48fd-968a-1674d7ad22e7.jpg?v=1651505106\"},\"sku\":\"MYS2-0\",\"title\":\"XS\",\"untranslatedTitle\":\"XS\"},{\"price\":{\"amount\":25.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Good Energy- Lucky Symbols\",\"vendor\":\"Imperial\",\"id\":\"6632340947025\",\"untranslatedTitle\":\"Good Energy- Lucky Symbols\",\"url\":\"\/products\/good-energy-lucky-symbols\",\"type\":\"LWP Core\"},\"id\":\"40463532916817\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/GoodEnergyWebUpdated.webp?v=1770832256\"},\"sku\":\"IW-GDE-UHE0\",\"title\":\"Under His Eye \/ XS\",\"untranslatedTitle\":\"Under His Eye \/ XS\"},{\"price\":{\"amount\":35.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Custom Pink Chalk\",\"vendor\":\"Imperial\",\"id\":\"7594583326801\",\"untranslatedTitle\":\"Custom Pink Chalk\",\"url\":\"\/products\/custom-pink-chalk\",\"type\":\"Custom\"},\"id\":\"58320627302481\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/PINK_CHALK-1.webp?v=1775586535\"},\"sku\":\"W-CUS-PCLX\",\"title\":\"Pink Chalk \/ White \/ XXS\",\"untranslatedTitle\":\"Pink Chalk \/ White \/ XXS\"},{\"price\":{\"amount\":35.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Custom Lava Stone Men's\",\"vendor\":\"Imperial\",\"id\":\"6899410698321\",\"untranslatedTitle\":\"Custom Lava Stone Men's\",\"url\":\"\/products\/custom-lava-stone-mens\",\"type\":\"Custom\"},\"id\":\"58320621404241\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/LAVA_STONE_MENS-1.webp?v=1775595973\"}
2827,\"sku\":\"W-CUS-LAVX\",\"title\":\"Lava Stone Men's \/ White \/ XXS\",\"untranslatedTitle\":\"Lava Stone Men's \/ White \/ XXS\"},{\"price\":{\"amount\":35.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Custom Sea Salt\",\"vendor\":\"Imperial\",\"id\":\"7594586112081\",\"untranslatedTitle\":\"Custom Sea Salt\",\"url\":\"\/products\/custom-sea-salt\",\"type\":\"Custom\"},\"id\":\"58320639328337\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/SEA_SALT-1.webp?v=1775588109\"},\"sku\":\"W-CUS-SESAX\",\"title\":\"Sea Salt \/ White \/ XXS\",\"untranslatedTitle\":\"Sea Salt \/ White \/ XXS\"},{\"price\":{\"amount\":35.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"The Bead Bar®- Nashville\",\"vendor\":\"Little Words Project\",\"id\":\"7675780857937\",\"untranslatedTitle\":\"The Bead Bar®- Nashville\",\"url\":\"\/products\/the-bead-bar-nashville\",\"type\":\"Beading Table\"},\"id\":\"42002632048721\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/NASHVILLE_0ba8789e-b313-4688-b1e0-48fdc339e148.jpg?v=1744729269\"},\"sku\":\"BB-SIN-NAS\",\"title\":\"Single\",\"untranslatedTitle\":\"Single\"},{\"price\":{\"amount\":35.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Custom Strawberry Cloud\",\"vendor\":\"Imperial\",\"id\":\"7594582900817\",\"untranslatedTitle\":\"Custom Strawberry Cloud\",\"url\":\"\/products\/custom-strawberry-cloud\",\"type\":\"Custom\"},\"id\":\"58320625041489\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/Frame_40499.webp?v=1790868256\"},\"sku\":\"W-CUS-STWCX\",\"title\":\"Strawberry Cloud \/ White \/ XXS\",\"untranslatedTitle\":\"Strawberry Cloud \/ White \/ XXS\"},{\"price\":{\"amount\":40.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Custom Silver Plated\",\"vendor\":\"Imperial\",\"id\":\"6899409944657\",\"untranslatedTitle\":\"Custom Silver Plated\",\"url\":\"\/products\/custom-silver-plated\",\"type\":\"Custom\"},\"id\":\"58320624779345\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/SILVER_PLATED-1.webp?v=1775596445\"},\"sku\":\"W-CUS-SILX\",\"title\":\"Silver Plated \/ White \/ XXS\",\"untranslatedTitle\":\"Silver Plated \/ White \/ XXS\"},{\"price\":{\"amount\":35.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Custom Strand of Pearls\",\"vendor\":\"Imperial\",\"id\":\"7594584211537\",\"untranslatedTitle\":\"Custom Strand of Pearls\",\"url\":\"\/products\/custom-strand-of-pearls\",\"type\":\"Custom\"},\"id\":\"58320629596241\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/STRAND_OF_PEARLS-1.jpg?v=1775597828\"},\"sku\":\"W-CUS-SOPX\",\"title\":\"Strand of Pearls \/ White \/ XXS\",\"untranslatedTitle\":\"Strand of Pearls \/ White \/ XXS\"},{\"price\":{\"amount\":35.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Custom Chambray\",\"vendor\":\"Imperial\",\"id\":\"7594581721169\",\"untranslatedTitle\":\"Custom Chambray\",\"url\":\"\/products\/custom-chambray\",\"type\":\"Custom\"},\"id\":\"58320634118225\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/CHAMBRAY-1.jpg?v=1775598109\"},\"sku\":\"W-CUS-CHAX\",\"title\":\"Chambray \/ White \/ XXS\",\"untranslatedTitle\":\"Chambray \/ White \/ XXS\"},{\"price\":{\"amount\":35.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Custom Lilac Garden\",\"vendor\":\"Imperial\",\"id\":\"7594584703057\",\"untranslatedTitle\":\"Custom Lilac Garden\",\"url\":\"\/products\/custom-lilac-garden\",\"type\":\"Custom\"},\"id\":\"58320634544209\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/LILAC_GARDEN-1.jpg?v=1775597915\"},\"sku\":\"W-CUS-LILGX\",\"title\":\"Lilac Garden \/ White \/ XXS\",\"untranslatedTitle\":\"Lilac Garden \/ White \/ XXS\"},{\"price\":{\"amount\":35.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Custom Calm Waters\",\"vendor\":\"JoinUS\",\"id\":\"7764245643345\",\"untranslatedTitle\":\"Custom Calm Waters\",\"url\":\"\/products\/custom-calm-waters\",\"type\":\"Custom\"},\"id\":\"58320677797969\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/CALM_WATERS-1.webp?v=1775595606\"},\"sku\":\"W-CUS-MTD-CMWX\",\"title\":\"Calm Waters \/ White \/ XXS\",\"untranslatedTitle\":\"Calm Waters \/ White \/ XXS\"},{\"price\":{\"amount\":25.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Breathe\",\"vendor\":\"Imperial\",\"id\":\"7223304650833\",\"untranslatedTitle\":\"Breathe\",\"url\":\"\/products\/breathe-your-faves-leveled-up-1\",\"type\":\"LWP Core\"},\"id\":\"40770451669073\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/ClassicsBreatheWeb-2.jpg?v=1707253645\"}
2827,\"sku\":\"SPC-BRE-CTC0\",\"title\":\"Cotton Clouds \/ XS\",\"untranslatedTitle\":\"Cotton Clouds \/ XS\"},{\"price\":{\"amount\":25.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Fearless\",\"vendor\":\"Imperial\",\"id\":\"7087087583313\",\"untranslatedTitle\":\"Fearless\",\"url\":\"\/products\/fearless\",\"type\":\"Capsule\"},\"id\":\"40631910301777\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/TaylorFearlessWeb_1.jpg?v=1685416619\"},\"sku\":\"TS-FEA-PHZ0\",\"title\":\"Purple Haze \/ XS\",\"untranslatedTitle\":\"Purple Haze \/ XS\"},{\"price\":{\"amount\":35.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Custom Sherbert\",\"vendor\":\"Imperial\",\"id\":\"7594585161809\",\"untranslatedTitle\":\"Custom Sherbert\",\"url\":\"\/products\/custom-sherbert\",\"type\":\"Custom\"},\"id\":\"58320636706897\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/SHERBERT-1.jpg?v=1775598199\"},\"sku\":\"W-CUS-SHRX\",\"title\":\"Sherbert \/ White \/ XXS\",\"untranslatedTitle\":\"Sherbert \/ White \/ XXS\"},{\"price\":{\"amount\":35.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Custom Clear Crystal\",\"vendor\":\"Imperial\",\"id\":\"7616623247441\",\"untranslatedTitle\":\"Custom Clear Crystal\",\"url\":\"\/products\/custom-clear-crystal\",\"type\":\"Custom\"},\"id\":\"58320604921937\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/CLEAR_CRYSTAL-1.jpg?v=1775598155\"},\"sku\":\"LWPSB1-CRCLALWTXXS\",\"title\":\"Clear Crystal \/ White \/ XXS\",\"untranslatedTitle\":\"Clear Crystal \/ White \/ XXS\"},{\"price\":{\"amount\":25.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Grateful\",\"vendor\":\"Imperial\",\"id\":\"7188347519057\",\"untranslatedTitle\":\"Grateful\",\"url\":\"\/products\/grateful-best-of\",\"type\":\"LWP Core\"},\"id\":\"40617041690705\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/GratefulEditedWeb.jpg?v=1704469012\"},\"sku\":\"CW-GRA-SHT0\",\"title\":\"Shiny Things \/ No Charm \/ XS\",\"untranslatedTitle\":\"Shiny Things \/ No Charm \/ XS\"},{\"price\":{\"amount\":25.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Blessed\",\"vendor\":\"JoinUS\",\"id\":\"7188346994769\",\"untranslatedTitle\":\"Blessed\",\"url\":\"\/products\/blessed-bracelet\",\"type\":\"LWP Core\"},\"id\":\"40617036709969\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/BlessedWeb_9b67d4c8-3f57-4d35-8f35-b0f9a6aa50cd.jpg?v=1764207189\"},\"sku\":\"CW-BLE-MID0\",\"title\":\"Midnight \/ No Charm \/ XS\",\"untranslatedTitle\":\"Midnight \/ No Charm \/ XS\"},{\"price\":{\"amount\":8.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Gift Box \u0026 Pouch\",\"vendor\":\"Packaging Specialties\",\"id\":\"7770537787473\",\"untranslatedTitle\":\"Gift Box \u0026 Pouch\",\"url\":\"\/products\/gift-box-pouch\",\"type\":\"Packaging\"},\"id\":\"42383675424849\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/SlideBoxOpenSideWeb.jpg?v=1745000831\"},\"sku\":\"GIFTBOX-SLIDER\",\"title\":\"Default Title\",\"untranslatedTitle\":\"Default Title\"},{\"price\":{\"amount\":35.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"The Bead Bar®- Disney Springs\",\"vendor\":\"Little Words Project\",\"id\":\"7675954561105\",\"untranslatedTitle\":\"The Bead Bar®- Disney Springs\",\"url\":\"\/products\/the-bead-bar-disney-springs\",\"type\":\"Beading Table\"},\"id\":\"42003503743057\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/Disney_1-2.png?v=1747771308\"},\"sku\":\"BB-SIN-DIS\",\"title\":\"Single - $35\",\"untranslatedTitle\":\"Single - $35\"},{\"price\":{\"amount\":25.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Boy Mom- Family\",\"vendor\":\"JoinUS\",\"id\":\"7758312767569\",\"untranslatedTitle\":\"Boy Mom- Family\",\"url\":\"\/products\/boy-mom-family-bracelet\",\"type\":\"Capsule\"},\"id\":\"42343722057809\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/MDBoyMomWeb.jpg?v=1744044523\"},\"sku\":\"MTD-BOY-BDY0\",\"title\":\"Blue Dynamite \/ White \/ XS\",\"untranslatedTitle\":\"Blue Dynamite \/ White \/ XS\"},{\"price\":{\"amount\":35.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"The Bead Bar®- Boston\",\"vendor\":\"Little Words Project\",\"id\":\"7675951186001\",\"untranslatedTitle\":\"The Bead Bar®- Boston\",\"url\":\"\/products\/the-bead-bar-boston\",\"type\":\"Beading Table\"},\"id\":\"42003490996305\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/Boston_3-2.png?v=1747771217\"},\"sku\":\"BB-SIN-BOS\",\"title\":\"Single\",\"untranslatedTitle\":\"Single\"},{\"price\":{\"amount\":35.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Custom Peachy Love\",\"vendor\":\"JoinUS\",\"id\":\"7726648852561\",\"untranslatedTitle\":\"Custom Peachy Love\",\"url\":\"\/products\/custom-peachy-love\",\"type\":\"Custom\"},\"id\":\"58320677437521\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/PEACHY_LOVE-1.webp?v=1775599161\"}
2827,\"sku\":\"W-CUS-MTD-PYLX\",\"title\":\"Peachy Love \/ White \/ XXS\",\"untranslatedTitle\":\"Peachy Love \/ White \/ XXS\"},{\"price\":{\"amount\":16.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"CZ Letter Charm\",\"vendor\":\"China Creations\",\"id\":\"7764238827601\",\"untranslatedTitle\":\"CZ Letter Charm\",\"url\":\"\/products\/cz-letter-charm\",\"type\":\"Charm\"},\"id\":\"42365202366545\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/ACZWeb_f683192b-314a-4111-9667-3571d0b5fa8c.jpg?v=1744246602\"},\"sku\":\"CHR-CZ-A\",\"title\":\"A\",\"untranslatedTitle\":\"A\"},{\"price\":{\"amount\":35.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"The Bead Bar®- Tampa\",\"vendor\":\"Little Words Project\",\"id\":\"7675953381457\",\"untranslatedTitle\":\"The Bead Bar®- Tampa\",\"url\":\"\/products\/the-bead-bar-tampa\",\"type\":\"Beading Table\"},\"id\":\"42003498795089\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/Tampa_1-2.png?v=1747771544\"},\"sku\":\"BB-SIN-TAM\",\"title\":\"Single\",\"untranslatedTitle\":\"Single\"},{\"price\":{\"amount\":12.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Bow Charm\",\"vendor\":\"Imperial\",\"id\":\"7631414526033\",\"untranslatedTitle\":\"Bow Charm\",\"url\":\"\/products\/bow-charm\",\"type\":\"Charm\"},\"id\":\"41851170488401\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/BowWeb_c79b0258-0147-4c23-be54-098a57cc87c7.jpg?v=1775517254\"},\"sku\":\"CHR-BOW\",\"title\":\"Default Title\",\"untranslatedTitle\":\"Default Title\"},{\"price\":{\"amount\":15.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Bride\",\"vendor\":\"Imperial\",\"id\":\"6829772341329\",\"untranslatedTitle\":\"Bride\",\"url\":\"\/products\/bride-1\",\"type\":\"LWP Core\"},\"id\":\"40375068295249\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/BrideWeb_1_56ff21b2-0b28-4e7f-b798-8aabc62d3594.jpg?v=1712091467\"},\"sku\":\"BRI-BRI-LAC0\",\"title\":\"Lace \/ XS\",\"untranslatedTitle\":\"Lace \/ XS\"},{\"price\":{\"amount\":35.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"The Bead Bar®- Short Hills\",\"vendor\":\"Little Words Project\",\"id\":\"7739039252561\",\"untranslatedTitle\":\"The Bead Bar®- Short Hills\",\"url\":\"\/products\/the-bead-bar-short-hills\",\"type\":\"Beading Table\"},\"id\":\"42257020977233\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/Short_Hills_2-2.png?v=1766762281\"},\"sku\":\"BB-SIN-SH\",\"title\":\"Single\",\"untranslatedTitle\":\"Single\"},{\"price\":{\"amount\":12.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Cross Charm\",\"vendor\":\"Imperial\",\"id\":\"7631640690769\",\"untranslatedTitle\":\"Cross Charm\",\"url\":\"\/products\/cross-charm\",\"type\":\"Charm\"},\"id\":\"41852708257873\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/EtchedCrossWeb.jpg?v=1764207189\"},\"sku\":\"CHR-CRS\",\"title\":\"Default Title\",\"untranslatedTitle\":\"Default Title\"},{\"price\":{\"amount\":16.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Birthstone Charm\",\"vendor\":\"Imperial\",\"id\":\"7666458099793\",\"untranslatedTitle\":\"Birthstone Charm\",\"url\":\"\/products\/birthstones-charm\",\"type\":\"Charm\"},\"id\":\"41965991690321\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/JanuaryWeb_8afc54ba-9811-4976-ab56-bced5286d57c.jpg?v=1727966491\"},\"sku\":\"CHR-BS-JAN\",\"title\":\"January\",\"untranslatedTitle\":\"January\"},{\"price\":{\"amount\":25.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Mama- Family\",\"vendor\":\"JoinUS\",\"id\":\"7758337114193\",\"untranslatedTitle\":\"Mama- Family\",\"url\":\"\/products\/mama-family-bracelet\",\"type\":\"Capsule\"},\"id\":\"42344036794449\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/MDMamaWeb.jpg?v=1744248114\"},\"sku\":\"MTD-MAM-LUL0\",\"title\":\"Lullaby \/ XS\",\"untranslatedTitle\":\"Lullaby \/ XS\"},{\"price\":{\"amount\":35.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"The Bead Bar®- Long Branch\",\"vendor\":\"Little Words Project\",\"id\":\"7675952005201\",\"untranslatedTitle\":\"The Bead Bar®- Long Branch\",\"url\":\"\/products\/the-bead-bar-long-branch\",\"type\":\"Beading Table\"},\"id\":\"42003493945425\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/LONG_BRANCH.jpg?v=1744729056\"},\"sku\":\"BB-SIN-PV\",\"title\":\"Single\",\"untranslatedTitle\":\"Single\"},{\"price\":{\"amount\":20.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Godmother- Family\",\"vendor\":\"Imperial\",\"id\":\"7293641916497\",\"untranslatedTitle\":\"Godmother- Family\",\"url\":\"\/products\/godmother-family\",\"type\":\"Capsule\"},\"id\":\"40972055150673\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/FamilyGodMotherWeb-2.jpg?v=1712348675\"},\"sku\":\"FMC-GDM-MGA0\",\"title\":\"Morning Air \/ XS\",\"untranslatedTitle\":\"Morning Air \/ XS\"},{\"price\":{\"amount\":10.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"My Person- Friendship\",\"vendor\":\"Imperial\",\"id\":\"6756547395665\",\"untranslatedTitle\":\"My Person- Friendship\",\"url\":\"\/products\/my-person-friendship\",\"type\":\"LWP Core\"},\"id\":\"40375066296401\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/products\/MyPersonWeb-min_1.jpg?v=1641318927\"}
2827,\"sku\":\"BFF-MYP-ORB0\",\"title\":\"Orbit \/ XS\",\"untranslatedTitle\":\"Orbit \/ XS\"},{\"price\":{\"amount\":45.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Custom Golden Hour\",\"vendor\":\"Imperial\",\"id\":\"7594586636369\",\"untranslatedTitle\":\"Custom Golden Hour\",\"url\":\"\/products\/custom-golden-hour\",\"type\":\"Custom\"},\"id\":\"58320642113617\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/GOLDEN_HOUR-2.webp?v=1775599074\"},\"sku\":\"W-CUS-GLDHX\",\"title\":\"Golden Hour \/ White \/ XXS\",\"untranslatedTitle\":\"Golden Hour \/ White \/ XXS\"},{\"price\":{\"amount\":12.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Puffy Paw Print Charm\",\"vendor\":\"Imperial\",\"id\":\"7631595962449\",\"untranslatedTitle\":\"Puffy Paw Print Charm\",\"url\":\"\/products\/puffy-paw-print-charm\",\"type\":\"Charm\"},\"id\":\"41852411347025\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/PawWeb.jpg?v=1727465202\"},\"sku\":\"CHR-PAW\",\"title\":\"Default Title\",\"untranslatedTitle\":\"Default Title\"},{\"price\":{\"amount\":12.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Puffy Heart Charm\",\"vendor\":\"Imperial\",\"id\":\"7631438282833\",\"untranslatedTitle\":\"Puffy Heart Charm\",\"url\":\"\/products\/puffy-heart-charm\",\"type\":\"Charm\"},\"id\":\"41851309785169\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/PuffyHeartCharm.jpg?v=1775733037\"},\"sku\":\"CHR-PHEA\",\"title\":\"Default Title\",\"untranslatedTitle\":\"Default Title\"},{\"price\":{\"amount\":25.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Grandma- Family\",\"vendor\":\"JoinUS\",\"id\":\"7758343143505\",\"untranslatedTitle\":\"Grandma- Family\",\"url\":\"\/products\/grandma-family-bracelet\",\"type\":\"Capsule\"},\"id\":\"42344117370961\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/MDGrandmaWeb_8ec5da3a-9ad1-435d-8988-a08a1509ede9.jpg?v=1744133800\"},\"sku\":\"MTD-GRA-PYL0\",\"title\":\"Peachy Love \/ White \/ XS\",\"untranslatedTitle\":\"Peachy Love \/ White \/ XS\"},{\"price\":{\"amount\":18.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Moon \u0026 Back\",\"vendor\":\"Imperial\",\"id\":\"7705151373393\",\"untranslatedTitle\":\"Moon \u0026 Back\",\"url\":\"\/products\/moon-back-love-club\",\"type\":\"Capsule\"},\"id\":\"42106290274385\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/VDMoonBackWeb_9c015ebe-4df8-43d9-8688-4a3257a05fab.jpg?v=1735573370\"},\"sku\":\"VD-MAB-MLL0\",\"title\":\"Moonlit Love \/ XS\",\"untranslatedTitle\":\"Moonlit Love \/ XS\"},{\"price\":{\"amount\":30.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"F*ck Cancer- Cancer Prevention\",\"vendor\":\"Imperial\",\"id\":\"7454438064209\",\"untranslatedTitle\":\"F*ck Cancer- Cancer Prevention\",\"url\":\"\/products\/f-ck-cancer-cancer-prevention-2024\",\"type\":\"LWP Core\"},\"id\":\"41366639935569\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/OPTION2-10.webp?v=1770215767\"},\"sku\":\"LWBI-FKC-FKC0\",\"title\":\"F*ck Cancer \/ No Charm \/ XS\",\"untranslatedTitle\":\"F*ck Cancer \/ No Charm \/ XS\"},{\"price\":{\"amount\":45.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Mama \u0026 Mini- Family\",\"vendor\":\"Imperial\",\"id\":\"7074483208273\",\"untranslatedTitle\":\"Mama \u0026 Mini- Family\",\"url\":\"\/products\/mama-mini-mom-life\",\"type\":\"LWP Core\"},\"id\":\"40325244846161\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/products\/Mini_MeWebUpdated.jpg?v=1678815479\"},\"sku\":\"MM-MAM-CTP1\",\"title\":\"Cutie Pie \/ S\/M + Kid\",\"untranslatedTitle\":\"Cutie Pie \/ S\/M + Kid\"},{\"price\":{\"amount\":35.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Custom Lullaby\",\"vendor\":\"JoinUS\",\"id\":\"7764245315665\",\"untranslatedTitle\":\"Custom Lullaby\",\"url\":\"\/products\/custom-lullaby\",\"type\":\"Custom\"},\"id\":\"58320676028497\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/LullabyWeb.webp?v=1776288069\"},\"sku\":\"W-CUS-MTD-LULX\",\"title\":\"Lullaby \/ White \/ XXS\",\"untranslatedTitle\":\"Lullaby \/ White \/ XXS\"},{\"price\":{\"amount\":35.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Custom Dreamy Rays\",\"vendor\":\"JoinUS\",\"id\":\"7803705851985\",\"untranslatedTitle\":\"Custom Dreamy Rays\",\"url\":\"\/products\/custom-dreamy-rays\",\"type\":\"Custom\"}
2827,\"id\":\"58320683302993\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/DREAMY_RAYS-1.webp?v=1775595490\"},\"sku\":\"W-CUS-DMRX\",\"title\":\"Dreamy Rays \/ White \/ XXS\",\"untranslatedTitle\":\"Dreamy Rays \/ White \/ XXS\"},{\"price\":{\"amount\":25.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"Auntie- Family\",\"vendor\":\"JoinUS\",\"id\":\"7758343766097\",\"untranslatedTitle\":\"Auntie- Family\",\"url\":\"\/products\/auntie-family-bracelet\",\"type\":\"Capsule\"},\"id\":\"42344125857873\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/MDAuntieWeb_c907bbae-a3d8-47e6-9113-2e8316444fbf.jpg?v=1744133829\"},\"sku\":\"MTD-AUN-LVM0\",\"title\":\"Lavender Mist \/ White \/ XS\",\"untranslatedTitle\":\"Lavender Mist \/ White \/ XS\"},{\"price\":{\"amount\":35.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"The Bead Bar®- Long Island\",\"vendor\":\"Little Words Project\",\"id\":\"7675954987089\",\"untranslatedTitle\":\"The Bead Bar®- Long Island\",\"url\":\"\/products\/the-bead-bar-long-island\",\"type\":\"Beading Table\"},\"id\":\"42003508428881\",\"image\":{\"src\":\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/IMG_0956.webp?v=1782507990\"},\"sku\":\"BB-SIN-RF\",\"title\":\"Single\",\"untranslatedTitle\":\"Single\"}]}}]]"});})();</script>
2827<script> 2828 window.ShopifyAnalytics = window.ShopifyAnalytics || {}; 2829 window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {}; 2830 window.ShopifyAnalytics.meta.currency = 'USD'; 2831 var meta = {"products":[{"id":6899436781649,"gid":"gid:\/\/shopify\/Product\/6899436781649","vendor":"Imperial","type":"Custom","handle":"custom-bluestone","variants":[{"id":58320596467793,"price":3500,"name":"Custom Bluestone - Bluestone \/ White \/ XXS","public_title":"Bluestone \/ White \/ XXS","sku":"W-CUS-BLUX"},{"id":39946228203601,"price":3500,"name":"Custom Bluestone - Bluestone \/ White \/ XS","public_title":"Bluestone \/ White \/ XS","sku":"W-CUS-BLU0"},{"id":39946228236369,"price":3500,"name":"Custom Bluestone - Bluestone \/ White \/ S\/M","public_title":"Bluestone \/ White \/ S\/M","sku":"W-CUS-BLU1"},{"id":39946228269137,"price":3500,"name":"Custom Bluestone - Bluestone \/ White \/ M\/L","public_title":"Bluestone \/ White \/ M\/L","sku":"W-CUS-BLU2"},{"id":39946228301905,"price":3500,"name":"Custom Bluestone - Bluestone \/ White \/ L\/XL","public_title":"Bluestone \/ White \/ L\/XL","sku":"W-CUS-BLU3"},{"id":58320596500561,"price":3500,"name":"Custom Bluestone - Bluestone \/ Black \/ XXS","public_title":"Bluestone \/ Black \/ XXS","sku":"B-CUS-BLUX"},{"id":40355168092241,"price":3500,"name":"Custom Bluestone - Bluestone \/ Black \/ XS","public_title":"Bluestone \/ Black \/ XS","
2831sku":"B-CUS-BLU0"},{"id":40355168125009,"price":3500,"name":"Custom Bluestone - Bluestone \/ Black \/ S\/M","public_title":"Bluestone \/ Black \/ S\/M","sku":"B-CUS-BLU1"},{"id":40355168157777,"price":3500,"name":"Custom Bluestone - Bluestone \/ Black \/ M\/L","public_title":"Bluestone \/ Black \/ M\/L","sku":"B-CUS-BLU2"},{"id":40355168190545,"price":3500,"name":"Custom Bluestone - Bluestone \/ Black \/ L\/XL","public_title":"Bluestone \/ Black \/ L\/XL","sku":"B-CUS-BLU3"},{"id":58320596533329,"price":3700,"name":"Custom Bluestone - Bluestone \/ Pink \/ XXS","public_title":"Bluestone \/ Pink \/ XXS","sku":"P-CUS-BLUX"},{"id":42154518478929,"price":3700,"name":"Custom Bluestone - Bluestone \/ Pink \/ XS","public_title":"Bluestone \/ Pink \/ XS","sku":"P-CUS-BLU0"},{"id":42154518511697,"price":3700,"name":"Custom Bluestone - Bluestone \/ Pink \/ S\/M","public_title":"Bluestone \/ Pink \/ S\/M","sku":"P-CUS-BLU1"},{"id":42154518544465,"price":3700,"name":"Custom Bluestone - Bluestone \/ Pink \/ M\/L","public_title":"Bluestone \/ Pink \/ M\/L","sku":"P-CUS-BLU2"},{"id":42154518577233,"price":3700,"name":"Custom Bluestone - Bluestone \/ Pink \/ L\/XL","public_title":"Bluestone \/ Pink \/ L\/XL","sku":"P-CUS-BLU3"},{"id":58618454966353,"price":3700,"name":"Custom Bluestone - Bluestone \/ Lavender \/ XXS","public_title":"Bluestone \/ Lavender \/ XXS","sku":"L-CUS-BLUX"},{"id":58618454999121,"price":3700,"name":"Custom Bluestone - Bluestone \/ Lavender \/ XS","public_title":"Bluestone \/ Lavender \/ XS","sku":"L-CUS-BLU0"},{"id":58618455031889,"price":3700,"name":"Custom Bluestone - Bluestone \/ Lavender \/ S\/M","public_title":"Bluestone \/ Lavender \/ S\/M","sku":"L-CUS-BLU1"},{"id":58618455064657,"price":3700,"name":"Custom Bluestone - Bluestone \/ Lavender \/ M\/L","public_title":"Bluestone \/ Lavender \/ M\/L","sku":"L-CUS-BLU2"},{"id":58618455097425,"price":3700,"name":"Custom Bluestone - Bluestone \/ Lavender \/ L\/XL","public_title":"Bluestone \/ Lavender \/ L\/XL","sku":"L-CUS-BLU3"},{"id":59264535396433,"price":3700,"name":"Custom Bluestone - Bluestone \/ Blue \/ XXS","public_title":"Bluestone \/ Blue \/ XXS","sku":"BLU-CUS-BLUX"},{"id":59264535429201,"price":3700,"name":"Custom Bluestone - Bluestone \/ Blue \/ XS","public_title":"Bluestone \/ Blue \/ XS","sku":"BLU-CUS-BLU0"},{"id":59264535461969,"price":3700,"name":"Custom Bluestone - Bluestone \/ Blue \/ S\/M","public_title":"Bluestone \/ Blue \/ S\/M","sku":"BLU-CUS-BLU1"},{"id":59264535494737,"price":3700,"name":"Custom Bluestone - Bluestone \/ Blue \/ M\/L","public_title":"Bluestone \/ Blue \/ M\/L","sku":"BLU-CUS-BLU2"},{"id":59264535527505,"price":3700,"name":"Custom Bluestone - Bluestone \/ Blue \/ L\/XL","public_title":"Bluestone \/ Blue \/ L\/XL","sku":"BLU-CUS-BLU3"}
2831,{"id":58320596566097,"price":5000,"name":"Custom Bluestone - Bluestone \/ Gold \/ XXS","public_title":"Bluestone \/ Gold \/ XXS","sku":"G-CUS-BLUX"},{"id":40383608946769,"price":5000,"name":"Custom Bluestone - Bluestone \/ Gold \/ XS","public_title":"Bluestone \/ Gold \/ XS","sku":"G-CUS-BLU0"},{"id":40383608979537,"price":5000,"name":"Custom Bluestone - Bluestone \/ Gold \/ S\/M","public_title":"Bluestone \/ Gold \/ S\/M","sku":"G-CUS-BLU1"},{"id":40383609012305,"price":5000,"name":"Custom Bluestone - Bluestone \/ Gold \/ M\/L","public_title":"Bluestone \/ Gold \/ M\/L","sku":"G-CUS-BLU2"},{"id":40383609045073,"price":5000,"name":"Custom Bluestone - Bluestone \/ Gold \/ L\/XL","public_title":"Bluestone \/ Gold \/ L\/XL","sku":"G-CUS-BLU3"}],"remote":false},{"id":4593974083665,"gid":"gid:\/\/shopify\/Product\/4593974083665","vendor":"Imperial","type":"Custom","handle":"gold-plated","variants":[{"id":58320612327505,"price":4500,"name":"Custom Gold Plated - Gold Plated \/ White \/ XXS","public_title":"Gold Plated \/ White \/ XXS","sku":"W-CUS-GOLX"}
2831,{"id":32871251279953,"price":4500,"name":"Custom Gold Plated - Gold Plated \/ White \/ XS","public_title":"Gold Plated \/ White \/ XS","sku":"W-CUS-GOL0"},{"id":32215083155537,"price":4500,"name":"Custom Gold Plated - Gold Plated \/ White \/ S\/M","public_title":"Gold Plated \/ White \/ S\/M","sku":"W-CUS-GOL1"},{"id":32215083090001,"price":4500,"name":"Custom Gold Plated - Gold Plated \/ White \/ M\/L","public_title":"Gold Plated \/ White \/ M\/L","sku":"W-CUS-GOL2"},{"id":32871251312721,"price":4500,"name":"Custom Gold Plated - Gold Plated \/ White \/ L\/XL","public_title":"Gold Plated \/ White \/ L\/XL","sku":"W-CUS-GOL3"},{"id":58320612360273,"price":4500,"name":"Custom Gold Plated - Gold Plated \/ Black \/ XXS","public_title":"Gold Plated \/ Black \/ XXS","sku":"B-CUS-GOLX"},{"id":40355170943057,"price":4500,"name":"Custom Gold Plated - Gold Plated \/ Black \/ XS","public_title":"Gold Plated \/ Black \/ XS","sku":"B-CUS-GOL0"},{"id":40355170975825,"price":4500,"name":"Custom Gold Plated - Gold Plated \/ Black \/ S\/M","public_title":"Gold Plated \/ Black \/ S\/M","sku":"B-CUS-GOL1"}
2831,{"id":40355171008593,"price":4500,"name":"Custom Gold Plated - Gold Plated \/ Black \/ M\/L","public_title":"Gold Plated \/ Black \/ M\/L","sku":"B-CUS-GOL2"},{"id":40355171041361,"price":4500,"name":"Custom Gold Plated - Gold Plated \/ Black \/ L\/XL","public_title":"Gold Plated \/ Black \/ L\/XL","sku":"B-CUS-GOL3"},{"id":58320612393041,"price":4700,"name":"Custom Gold Plated - Gold Plated \/ Pink \/ XXS","public_title":"Gold Plated \/ Pink \/ XXS","sku":"P-CUS-GOLX"},{"id":42154497933393,"price":4700,"name":"Custom Gold Plated - Gold Plated \/ Pink \/ XS","public_title":"Gold Plated \/ Pink \/ XS","sku":"P-CUS-GOL0"},{"id":42154497966161,"price":4700,"name":"Custom Gold Plated - Gold Plated \/ Pink \/ S\/M","public_title":"Gold Plated \/ Pink \/ S\/M","sku":"P-CUS-GOL1"},{"id":42154497998929,"price":4700,"name":"Custom Gold Plated - Gold Plated \/ Pink \/ M\/L","public_title":"Gold Plated \/ Pink \/ M\/L","sku":"P-CUS-GOL2"},{"id":42154498031697,"price":4700,"name":"Custom Gold Plated - Gold Plated \/ Pink \/ L\/XL","public_title":"Gold Plated \/ Pink \/ L\/XL","sku":"P-CUS-GOL3"},{"id":58617854984273,"price":4700,"name":"Custom Gold Plated - Gold Plated \/ Lavender \/ XXS","public_title":"Gold Plated \/ Lavender \/ XXS","sku":"L-CUS-GOLX"},{"id":58617855017041,"price":4700,"name":"Custom Gold Plated - Gold Plated \/ Lavender \/ XS","public_title":"Gold Plated \/ Lavender \/ XS","sku":"L-CUS-GOL0"},{"id":58617855049809,"price":4700,"name":"Custom Gold Plated - Gold Plated \/ Lavender \/ S\/M","public_title":"Gold Plated \/ Lavender \/ S\/M","sku":"L-CUS-GOL1"},{"id":58617855082577,"price":4700,"name":"Custom Gold Plated - Gold Plated \/ Lavender \/ M\/L","public_title":"Gold Plated \/ Lavender \/ M\/L","sku":"L-CUS-GOL2"},{"id":58617855115345,"price":4700,"name":"Custom Gold Plated - Gold Plated \/ Lavender \/ L\/XL","public_title":"Gold Plated \/ Lavender \/ L\/XL","sku":"L-CUS-GOL3"},{"id":59266925396049,"price":4700,"name":"Custom Gold Plated - Gold Plated \/ Blue \/ XXS","public_title":"Gold Plated \/ Blue \/ XXS","sku":"BLU-CUS-GOLX"},{"id":59266925428817,"price":4700,"name":"Custom Gold Plated - Gold Plated \/ Blue \/ XS","public_title":"Gold Plated \/ Blue \/ XS","sku":"BLU-CUS-GOL0"},{"id":59266925461585,"price":4700,"name":"Custom Gold Plated - Gold Plated \/ Blue \/ S\/M","public_title":"Gold Plated \/ Blue \/ S\/M","sku":"BLU-CUS-GOL1"},{"id":59266925494353,"price":4700,"name":"Custom Gold Plated - Gold Plated \/ Blue \/ M\/L","public_title":"Gold Plated \/ Blue \/ M\/L","sku":"BLU-CUS-GOL2"},{"id":59266925527121,"price":4700,"name":"Custom Gold Plated - Gold Plated \/ Blue \/ L\/XL","public_title":"Gold Plated \/ Blue \/ L\/XL","sku":"BLU-CUS-GOL3"},{"id":58320612425809,"price":6000,"name":"Custom Gold Plated - Gold Plated \/ Gold \/ XXS","public_title":"Gold Plated \/ Gold \/ XXS","sku":"G-CUS-GOLX"},{"id":40383611994193,"price":6000,"name":"Custom Gold Plated - Gold Plated \/ Gold \/ XS","public_title":"Gold Plated \/ Gold \/ XS","sku":"G-CUS-GOL0"},{"id":40383612026961,"price":6000,"name":"Custom Gold Plated - Gold Plated \/ Gold \/ S\/M","public_title":"Gold Plated \/ Gold \/ S\/M","sku":"G-CUS-GOL1"},{"id":40383612059729,"price":6000,"name":"Custom Gold Plated - Gold Plated \/ Gold \/ M\/L","public_title":"Gold Plated \/ Gold \/ M\/L","sku":"G-CUS-GOL2"},{"id":40383612092497,"price":6000,"name":"Custom Gold Plated - Gold Plated \/ Gold \/ L\/XL","public_title":"Gold Plated \/ Gold \/ L\/XL","sku":"G-CUS-GOL3"}],"remote":false},{"id":7000245370961,"gid":"gid:\/\/shopify\/Product\/7000245370961","vendor":"Imperial","type":"Custom","handle":"custom-amethyst-dream-crystal","variants":[{"id":58320588406865,"price":3500,"name":"Custom Amethyst Dreams Crystal - Amethyst Dreams Crystal \/ White \/ XXS","public_title":"Amethyst Dreams Crystal \/ White \/ XXS","sku":"W-CUS-AMDX"},{"id":40156659286097,"price":3500,"name":"Custom Amethyst Dreams Crystal - Amethyst Dreams Crystal \/ White \/ XS","public_title":"Amethyst Dreams Crystal \/ White \/ XS","sku":"W-CUS-AMD0"},{"id":40156659318865,"price":3500,"name":"Custom Amethyst Dreams Crystal - Amethyst Dreams Crystal \/ White \/ S\/M","public_title":"Amethyst Dreams Crystal \/ White \/ S\/M","sku":"W-CUS-AMD1"},{"id":40156659351633,"price":3500,"name":"Custom Amethyst Dreams Crystal - Amethyst Dreams Crystal \/ White \/ M\/L","public_title":"Amethyst Dreams Crystal \/ White \/ M\/L","sku":"W-CUS-AMD2"},{"id":40156659384401,"price":3500,"name":"Custom Amethyst Dreams Crystal - Amethyst Dreams Crystal \/ White \/ L\/XL","public_title":"Amethyst Dreams Crystal \/ White \/ L\/XL","sku":"W-CUS-AMD3"},{"id":58320588439633,"price":3500,"name":"Custom Amethyst Dreams Crystal - Amethyst Dreams Crystal \/ Black \/ XXS","public_title":"Amethyst Dreams Crystal \/ Black \/ XXS","sku":"B-CUS-AMDX"},{"id":40355167699025,"price":3500,"name":"Custom Amethyst Dreams Crystal - Amethyst Dreams Crystal \/ Black \/ XS","public_title":"Amethyst Dreams Crystal \/ Black \/ XS","
2831sku":"B-CUS-AMD0"},{"id":40355167731793,"price":3500,"name":"Custom Amethyst Dreams Crystal - Amethyst Dreams Crystal \/ Black \/ S\/M","public_title":"Amethyst Dreams Crystal \/ Black \/ S\/M","sku":"B-CUS-AMD1"},{"id":40355167764561,"price":3500,"name":"Custom Amethyst Dreams Crystal - Amethyst Dreams Crystal \/ Black \/ M\/L","public_title":"Amethyst Dreams Crystal \/ Black \/ M\/L","sku":"B-CUS-AMD2"},{"id":40355167797329,"price":3500,"name":"Custom Amethyst Dreams Crystal - Amethyst Dreams Crystal \/ Black \/ L\/XL","public_title":"Amethyst Dreams Crystal \/ Black \/ L\/XL","sku":"B-CUS-AMD3"},{"id":58320588472401,"price":3700,"name":"Custom Amethyst Dreams Crystal - Amethyst Dreams Crystal \/ Pink \/ XXS","public_title":"Amethyst Dreams Crystal \/ Pink \/ XXS","sku":"P-CUS-AMDX"},{"id":42154484072529,"price":3700,"name":"Custom Amethyst Dreams Crystal - Amethyst Dreams Crystal \/ Pink \/ XS","public_title":"Amethyst Dreams Crystal \/ Pink \/ XS","sku":"P-CUS-AMD0"},{"id":42154484105297,"price":3700,"name":"Custom Amethyst Dreams Crystal - Amethyst Dreams Crystal \/ Pink \/ S\/M","public_title":"Amethyst Dreams Crystal \/ Pink \/ S\/M","sku":"P-CUS-AMD1"},{"id":42154484138065,"price":3700,"name":"Custom Amethyst Dreams Crystal - Amethyst Dreams Crystal \/ Pink \/ M\/L","public_title":"Amethyst Dreams Crystal \/ Pink \/ M\/L","sku":"P-CUS-AMD2"},{"id":42154484170833,"price":3700,"name":"Custom Amethyst Dreams Crystal - Amethyst Dreams Crystal \/ Pink \/ L\/XL","public_title":"Amethyst Dreams Crystal \/ Pink \/ L\/XL","sku":"P-CUS-AMD3"},{"id":58618877280337,"price":3700,"name":"Custom Amethyst Dreams Crystal - Amethyst Dreams Crystal \/ Lavender \/ XXS","public_title":"Amethyst Dreams Crystal \/ Lavender \/ XXS","sku":"L-CUS-AMDX"},{"id":58618877313105,"price":3700,"name":"Custom Amethyst Dreams Crystal - Amethyst Dreams Crystal \/ Lavender \/ XS","public_title":"Amethyst Dreams Crystal \/ Lavender \/ XS","sku":"L-CUS-AMD0"},{"id":58618877345873,"price":3700,"name":"Custom Amethyst Dreams Crystal - Amethyst Dreams Crystal \/ Lavender \/ S\/M","public_title":"Amethyst Dreams Crystal \/ Lavender \/ S\/M","sku":"L-CUS-AMD1"},{"id":58618877378641,"price":3700,"name":"Custom Amethyst Dreams Crystal - Amethyst Dreams Crystal \/ Lavender \/ M\/L","public_title":"Amethyst Dreams Crystal \/ Lavender \/ M\/L","sku":"L-CUS-AMD2"},{"id":58618877411409,"price":3700,"name":"Custom Amethyst Dreams Crystal - Amethyst Dreams Crystal \/ Lavender \/ L\/XL","public_title":"Amethyst Dreams Crystal \/ Lavender \/ L\/XL","sku":"L-CUS-AMD3"},{"id":59266897838161,"price":3700,"name":"Custom Amethyst Dreams Crystal - Amethyst Dreams Crystal \/ Blue \/ XXS","public_title":"Amethyst Dreams Crystal \/ Blue \/ XXS","sku":"BLU-CUS-AMDX"},{"id":59266897870929,"price":3700,"name":"Custom Amethyst Dreams Crystal - Amethyst Dreams Crystal \/ Blue \/ XS","public_title":"Amethyst Dreams Crystal \/ Blue \/ XS","sku":"BLU-CUS-AMD0"},{"id":59266897903697,"price":3700,"name":"Custom Amethyst Dreams Crystal - Amethyst Dreams Crystal \/ Blue \/ S\/M","public_title":"Amethyst Dreams Crystal \/ Blue \/ S\/M","sku":"BLU-CUS-AMD1"},{"id":59266897936465,"price":3700,"name":"Custom Amethyst Dreams Crystal - Amethyst Dreams Crystal \/ Blue \/ M\/L","public_title":"Amethyst Dreams Crystal \/ Blue \/ M\/L","sku":"BLU-CUS-AMD2"},{"id":59266897969233,"price":3700,"name":"Custom Amethyst Dreams Crystal - Amethyst Dreams Crystal \/ Blue \/ L\/XL","public_title":"Amethyst Dreams Crystal \/ Blue \/ L\/XL","sku":"BLU-CUS-AMD3"}
2831,{"id":58320588505169,"price":5000,"name":"Custom Amethyst Dreams Crystal - Amethyst Dreams Crystal \/ Gold \/ XXS","public_title":"Amethyst Dreams Crystal \/ Gold \/ XXS","sku":"G-CUS-AMDX"},{"id":40383608553553,"price":5000,"name":"Custom Amethyst Dreams Crystal - Amethyst Dreams Crystal \/ Gold \/ XS","public_title":"Amethyst Dreams Crystal \/ Gold \/ XS","sku":"G-CUS-AMD0"},{"id":40383608586321,"price":5000,"name":"Custom Amethyst Dreams Crystal - Amethyst Dreams Crystal \/ Gold \/ S\/M","public_title":"Amethyst Dreams Crystal \/ Gold \/ S\/M","sku":"G-CUS-AMD1"},{"id":40383608619089,"price":5000,"name":"Custom Amethyst Dreams Crystal - Amethyst Dreams Crystal \/ Gold \/ M\/L","public_title":"Amethyst Dreams Crystal \/ Gold \/ M\/L","sku":"G-CUS-AMD2"},{"id":40383608651857,"price":5000,"name":"Custom Amethyst Dreams Crystal - Amethyst Dreams Crystal \/ Gold \/ L\/XL","public_title":"Amethyst Dreams Crystal \/ Gold \/ L\/XL","sku":"G-CUS-AMD3"}],"remote":false},{"id":6899441336401,"gid":"gid:\/\/shopify\/Product\/6899441336401","vendor":"Imperial","type":"Custom","handle":"custom-rainbow","variants":[{"id":58320591192145,"price":3500,"name":"Custom Rainbow - Rainbow Disc \/ White \/ XXS","public_title":"Rainbow Disc \/ White \/ XXS","sku":"W-CUS-RAIX"},{"id":39946233446481,"price":3500,"name":"Custom Rainbow - Rainbow Disc \/ White \/ XS","public_title":"Rainbow Disc \/ White \/ XS","sku":"W-CUS-RAI0"},{"id":39946233479249,"price":3500,"name":"Custom Rainbow - Rainbow Disc \/ White \/ S\/M","public_title":"Rainbow Disc \/ White \/ S\/M","sku":"W-CUS-RAI1"},{"id":39946233512017,"price":3500,"name":"Custom Rainbow - Rainbow Disc \/ White \/ M\/L","public_title":"Rainbow Disc \/ White \/ M\/L","sku":"W-CUS-RAI2"},{"id":39946233544785,"price":3500,"name":"Custom Rainbow - Rainbow Disc \/ White \/ L\/XL","public_title":"Rainbow Disc \/ White \/ L\/XL","sku":"W-CUS-RAI3"},{"id":58320591224913,"price":3500,"name":"Custom Rainbow - Rainbow Disc \/ Black \/ XXS","public_title":"Rainbow Disc \/ Black \/ XXS","sku":"B-CUS-RAIX"},{"id":40355169861713,"price":3500,"name":"Custom Rainbow - Rainbow Disc \/ Black \/ XS","public_title":"Rainbow Disc \/ Black \/ XS","
2831sku":"B-CUS-RAI0"},{"id":40355169894481,"price":3500,"name":"Custom Rainbow - Rainbow Disc \/ Black \/ S\/M","public_title":"Rainbow Disc \/ Black \/ S\/M","sku":"B-CUS-RAI1"},{"id":40355169927249,"price":3500,"name":"Custom Rainbow - Rainbow Disc \/ Black \/ M\/L","public_title":"Rainbow Disc \/ Black \/ M\/L","sku":"B-CUS-RAI2"},{"id":40355169960017,"price":3500,"name":"Custom Rainbow - Rainbow Disc \/ Black \/ L\/XL","public_title":"Rainbow Disc \/ Black \/ L\/XL","sku":"B-CUS-RAI3"},{"id":58320591257681,"price":3700,"name":"Custom Rainbow - Rainbow Disc \/ Pink \/ XXS","public_title":"Rainbow Disc \/ Pink \/ XXS","sku":"P-CUS-RAIX"},{"id":42154475913297,"price":3700,"name":"Custom Rainbow - Rainbow Disc \/ Pink \/ XS","public_title":"Rainbow Disc \/ Pink \/ XS","sku":"P-CUS-RAI0"},{"id":42154475946065,"price":3700,"name":"Custom Rainbow - Rainbow Disc \/ Pink \/ S\/M","public_title":"Rainbow Disc \/ Pink \/ S\/M","sku":"P-CUS-RAI1"},{"id":42154475978833,"price":3700,"name":"Custom Rainbow - Rainbow Disc \/ Pink \/ M\/L","public_title":"Rainbow Disc \/ Pink \/ M\/L","sku":"P-CUS-RAI2"},{"id":42154476011601,"price":3700,"name":"Custom Rainbow - Rainbow Disc \/ Pink \/ L\/XL","public_title":"Rainbow Disc \/ Pink \/ L\/XL","sku":"P-CUS-RAI3"},{"id":58618851655761,"price":3700,"name":"Custom Rainbow - Rainbow Disc \/ Lavender \/ XXS","public_title":"Rainbow Disc \/ Lavender \/ XXS","sku":"L-CUS-RAIX"},{"id":58618851688529,"price":3700,"name":"Custom Rainbow - Rainbow Disc \/ Lavender \/ XS","public_title":"Rainbow Disc \/ Lavender \/ XS","sku":"L-CUS-RAI0"},{"id":58618851721297,"price":3700,"name":"Custom Rainbow - Rainbow Disc \/ Lavender \/ S\/M","public_title":"Rainbow Disc \/ Lavender \/ S\/M","sku":"L-CUS-RAI1"},{"id":58618851754065,"price":3700,"name":"Custom Rainbow - Rainbow Disc \/ Lavender \/ M\/L","public_title":"Rainbow Disc \/ Lavender \/ M\/L","sku":"L-CUS-RAI2"},{"id":58618851786833,"price":3700,"name":"Custom Rainbow - Rainbow Disc \/ Lavender \/ L\/XL","public_title":"Rainbow Disc \/ Lavender \/ L\/XL","sku":"L-CUS-RAI3"},{"id":59266944827473,"price":3700,"name":"Custom Rainbow - Rainbow Disc \/ Blue \/ XXS","public_title":"Rainbow Disc \/ Blue \/ XXS","sku":"BLU-CUS-RAIX"},{"id":59266944860241,"price":3700,"name":"Custom Rainbow - Rainbow Disc \/ Blue \/ XS","public_title":"Rainbow Disc \/ Blue \/ XS","sku":"BLU-CUS-RAI0"},{"id":59266944893009,"price":3700,"name":"Custom Rainbow - Rainbow Disc \/ Blue \/ S\/M","public_title":"Rainbow Disc \/ Blue \/ S\/M","sku":"BLU-CUS-RAI1"},{"id":59266944925777,"price":3700,"name":"Custom Rainbow - Rainbow Disc \/ Blue \/ M\/L","public_title":"Rainbow Disc \/ Blue \/ M\/L","sku":"BLU-CUS-RAI2"},{"id":59266944958545,"price":3700,"name":"Custom Rainbow - Rainbow Disc \/ Blue \/ L\/XL","public_title":"Rainbow Disc \/ Blue \/ L\/XL","sku":"BLU-CUS-RAI3"}
2831,{"id":58320591290449,"price":5000,"name":"Custom Rainbow - Rainbow Disc \/ Gold \/ XXS","public_title":"Rainbow Disc \/ Gold \/ XXS","sku":"G-CUS-RAIX"},{"id":40383610945617,"price":5000,"name":"Custom Rainbow - Rainbow Disc \/ Gold \/ XS","public_title":"Rainbow Disc \/ Gold \/ XS","sku":"G-CUS-RAI0"},{"id":40383610978385,"price":5000,"name":"Custom Rainbow - Rainbow Disc \/ Gold \/ S\/M","public_title":"Rainbow Disc \/ Gold \/ S\/M","sku":"G-CUS-RAI1"},{"id":40383611011153,"price":5000,"name":"Custom Rainbow - Rainbow Disc \/ Gold \/ M\/L","public_title":"Rainbow Disc \/ Gold \/ M\/L","sku":"G-CUS-RAI2"},{"id":40383611043921,"price":5000,"name":"Custom Rainbow - Rainbow Disc \/ Gold \/ L\/XL","public_title":"Rainbow Disc \/ Gold \/ L\/XL","sku":"G-CUS-RAI3"}],"remote":false},{"id":7049945579601,"gid":"gid:\/\/shopify\/Product\/7049945579601","vendor":"Imperial","type":"Custom","handle":"custom-joyful","variants":[{"id":58320617078865,"price":3500,"name":"Custom Joyful Stone - Joyful Stone \/ White \/ XXS","public_title":"Joyful Stone \/ White \/ XXS","sku":"W-CUS-JOYX"},{"id":40269393854545,"price":3500,"name":"Custom Joyful Stone - Joyful Stone \/ White \/ XS","public_title":"Joyful Stone \/ White \/ XS","sku":"W-CUS-JOY0"},{"id":40269393887313,"price":3500,"name":"Custom Joyful Stone - Joyful Stone \/ White \/ S\/M","public_title":"Joyful Stone \/ White \/ S\/M","sku":"W-CUS-JOY1"},{"id":40269393920081,"price":3500,"name":"Custom Joyful Stone - Joyful Stone \/ White \/ M\/L","public_title":"Joyful Stone \/ White \/ M\/L","sku":"W-CUS-JOY2"},{"id":40269393952849,"price":3500,"name":"Custom Joyful Stone - Joyful Stone \/ White \/ L\/XL","public_title":"Joyful Stone \/ White \/ L\/XL","sku":"W-CUS-JOY3"},{"id":58320617111633,"price":3500,"name":"Custom Joyful Stone - Joyful Stone \/ Black \/ XXS","public_title":"Joyful Stone \/ Black \/ XXS","sku":"B-CUS-JOYX"},{"id":40355169075281,"price":3500,"name":"Custom Joyful Stone - Joyful Stone \/ Black \/ XS","public_title":"Joyful Stone \/ Black \/ XS","
2831sku":"B-CUS-JOY0"},{"id":40355169108049,"price":3500,"name":"Custom Joyful Stone - Joyful Stone \/ Black \/ S\/M","public_title":"Joyful Stone \/ Black \/ S\/M","sku":"B-CUS-JOY1"},{"id":40355169140817,"price":3500,"name":"Custom Joyful Stone - Joyful Stone \/ Black \/ M\/L","public_title":"Joyful Stone \/ Black \/ M\/L","sku":"B-CUS-JOY2"},{"id":40355169173585,"price":3500,"name":"Custom Joyful Stone - Joyful Stone \/ Black \/ L\/XL","public_title":"Joyful Stone \/ Black \/ L\/XL","sku":"B-CUS-JOY3"},{"id":58320617144401,"price":3700,"name":"Custom Joyful Stone - Joyful Stone \/ Pink \/ XXS","public_title":"Joyful Stone \/ Pink \/ XXS","sku":"P-CUS-JOYX"},{"id":42153315467345,"price":3700,"name":"Custom Joyful Stone - Joyful Stone \/ Pink \/ XS","public_title":"Joyful Stone \/ Pink \/ XS","sku":"P-CUS-JOY0"},{"id":42153315500113,"price":3700,"name":"Custom Joyful Stone - Joyful Stone \/ Pink \/ S\/M","public_title":"Joyful Stone \/ Pink \/ S\/M","sku":"P-CUS-JOY1"},{"id":42153315532881,"price":3700,"name":"Custom Joyful Stone - Joyful Stone \/ Pink \/ M\/L","public_title":"Joyful Stone \/ Pink \/ M\/L","sku":"P-CUS-JOY2"},{"id":42153315565649,"price":3700,"name":"Custom Joyful Stone - Joyful Stone \/ Pink \/ L\/XL","public_title":"Joyful Stone \/ Pink \/ L\/XL","sku":"P-CUS-JOY3"},{"id":58618906902609,"price":3700,"name":"Custom Joyful Stone - Joyful Stone \/ Lavender \/ XXS","public_title":"Joyful Stone \/ Lavender \/ XXS","sku":"L-CUS-JOYX"},{"id":58618906935377,"price":3700,"name":"Custom Joyful Stone - Joyful Stone \/ Lavender \/ XS","public_title":"Joyful Stone \/ Lavender \/ XS","sku":"L-CUS-JOY0"},{"id":58618906968145,"price":3700,"name":"Custom Joyful Stone - Joyful Stone \/ Lavender \/ S\/M","public_title":"Joyful Stone \/ Lavender \/ S\/M","sku":"L-CUS-JOY1"},{"id":58618907000913,"price":3700,"name":"Custom Joyful Stone - Joyful Stone \/ Lavender \/ M\/L","public_title":"Joyful Stone \/ Lavender \/ M\/L","sku":"L-CUS-JOY2"},{"id":58618907033681,"price":3700,"name":"Custom Joyful Stone - Joyful Stone \/ Lavender \/ L\/XL","public_title":"Joyful Stone \/ Lavender \/ L\/XL","sku":"L-CUS-JOY3"},{"id":59266927231057,"price":3700,"name":"Custom Joyful Stone - Joyful Stone \/ Blue \/ XXS","public_title":"Joyful Stone \/ Blue \/ XXS","sku":"BLU-CUS-JOYX"},{"id":59266927263825,"price":3700,"name":"Custom Joyful Stone - Joyful Stone \/ Blue \/ XS","public_title":"Joyful Stone \/ Blue \/ XS","sku":"BLU-CUS-JOY0"},{"id":59266927296593,"price":3700,"name":"Custom Joyful Stone - Joyful Stone \/ Blue \/ S\/M","public_title":"Joyful Stone \/ Blue \/ S\/M","sku":"BLU-CUS-JOY1"},{"id":59266927329361,"price":3700,"name":"Custom Joyful Stone - Joyful Stone \/ Blue \/ M\/L","public_title":"Joyful Stone \/ Blue \/ M\/L","sku":"BLU-CUS-JOY2"},{"id":59266927362129,"price":3700,"name":"Custom Joyful Stone - Joyful Stone \/ Blue \/ L\/XL","public_title":"Joyful Stone \/ Blue \/ L\/XL","sku":"BLU-CUS-JOY3"}
2831,{"id":58320617177169,"price":5000,"name":"Custom Joyful Stone - Joyful Stone \/ Gold \/ XXS","public_title":"Joyful Stone \/ Gold \/ XXS","sku":"G-CUS-JOYX"},{"id":40383610060881,"price":5000,"name":"Custom Joyful Stone - Joyful Stone \/ Gold \/ XS","public_title":"Joyful Stone \/ Gold \/ XS","sku":"G-CUS-JOY0"},{"id":40383610093649,"price":5000,"name":"Custom Joyful Stone - Joyful Stone \/ Gold \/ S\/M","public_title":"Joyful Stone \/ Gold \/ S\/M","sku":"G-CUS-JOY1"},{"id":40383610126417,"price":5000,"name":"Custom Joyful Stone - Joyful Stone \/ Gold \/ M\/L","public_title":"Joyful Stone \/ Gold \/ M\/L","sku":"G-CUS-JOY2"},{"id":40383610159185,"price":5000,"name":"Custom Joyful Stone - Joyful Stone \/ Gold \/ L\/XL","public_title":"Joyful Stone \/ Gold \/ L\/XL","sku":"G-CUS-JOY3"}],"remote":false},{"id":6844119810129,"gid":"gid:\/\/shopify\/Product\/6844119810129","vendor":"Little Words Project","type":"Upsell","handle":"mystery-duo","variants":[{"id":42352461348945,"price":2000,"name":"Two Mystery Bracelets - XS","public_title":"XS","sku":"MYS2-0"},{"id":39845041209425,"price":2000,"name":"Two Mystery Bracelets - S\/M","public_title":"S\/M","sku":"MYS2-1"},{"id":39845041242193,"price":2000,"name":"Two Mystery Bracelets - M\/L","public_title":"M\/L","sku":"MYS2-2"},{"id":42352461381713,"price":2000,"name":"Two Mystery Bracelets - L\/XL","public_title":"L\/XL","sku":"MYS2-3"}],"remote":false},{"id":6632340947025,"gid":"gid:\/\/shopify\/Product\/6632340947025","vendor":"Imperial","type":"LWP Core","handle":"good-energy-lucky-symbols","variants":[{"id":40463532916817,"price":2500,"name":"Good Energy- Lucky Symbols - Under His Eye \/ XS","public_title":"Under His Eye \/ XS","sku":"IW-GDE-UHE0"},{"id":39482136690769,"price":2500,"name":"Good Energy- Lucky Symbols - Under His Eye \/ S\/M","public_title":"Under His Eye \/ S\/M","sku":"IW-GDE-UHE1"},{"id":39482136723537,"price":2500,"name":"Good Energy- Lucky Symbols - Under His Eye \/ M\/L","public_title":"Under His Eye \/ M\/L","sku":"IW-GDE-UHE2"},{"id":40463532949585,"price":2500,"name":"Good Energy- Lucky Symbols - Under His Eye \/ L\/XL","public_title":"Under His Eye \/ L\/XL","sku":"IW-GDE-UHE3"}],"remote":false},{"id":7594583326801,"gid":"gid:\/\/shopify\/Product\/7594583326801","vendor":"Imperial","type":"Custom","handle":"custom-pink-chalk","variants":[{"id":58320627302481,"price":3500,"name":"Custom Pink Chalk - Pink Chalk \/ White \/ XXS","public_title":"Pink Chalk \/ White \/ XXS","sku":"W-CUS-PCLX"},{"id":41721396756561,"price":3500,"name":"Custom Pink Chalk - Pink Chalk \/ White \/ XS","public_title":"Pink Chalk \/ White \/ XS","sku":"W-CUS-PCL0"},{"id":41721396789329,"price":3500,"name":"Custom Pink Chalk - Pink Chalk \/ White \/ S\/M","public_title":"Pink Chalk \/ White \/ S\/M","sku":"W-CUS-PCL1"},{"id":41721396822097,"price":3500,"name":"Custom Pink Chalk - Pink Chalk \/ White \/ M\/L","public_title":"Pink Chalk \/ White \/ M\/L","sku":"W-CUS-PCL2"},{"id":41721396854865,"price":3500,"name":"Custom Pink Chalk - Pink Chalk \/ White \/ L\/XL","public_title":"Pink Chalk \/ White \/ L\/XL","sku":"W-CUS-PCL3"},{"id":58320627335249,"price":3500,"name":"Custom Pink Chalk - Pink Chalk \/ Black \/ XXS","public_title":"Pink Chalk \/ Black \/ XXS","sku":"B-CUS-PCLX"},{"id":41721396887633,"price":3500,"name":"Custom Pink Chalk - Pink Chalk \/ Black \/ XS","public_title":"Pink Chalk \/ Black \/ XS","
2831sku":"B-CUS-PCL0"},{"id":41721396920401,"price":3500,"name":"Custom Pink Chalk - Pink Chalk \/ Black \/ S\/M","public_title":"Pink Chalk \/ Black \/ S\/M","sku":"B-CUS-PCL1"},{"id":41721396953169,"price":3500,"name":"Custom Pink Chalk - Pink Chalk \/ Black \/ M\/L","public_title":"Pink Chalk \/ Black \/ M\/L","sku":"B-CUS-PCL2"},{"id":41721396985937,"price":3500,"name":"Custom Pink Chalk - Pink Chalk \/ Black \/ L\/XL","public_title":"Pink Chalk \/ Black \/ L\/XL","sku":"B-CUS-PCL3"},{"id":58320627368017,"price":3700,"name":"Custom Pink Chalk - Pink Chalk \/ Pink \/ XXS","public_title":"Pink Chalk \/ Pink \/ XXS","sku":"P-CUS-PCLX"},{"id":42154516480081,"price":3700,"name":"Custom Pink Chalk - Pink Chalk \/ Pink \/ XS","public_title":"Pink Chalk \/ Pink \/ XS","sku":"P-CUS-PCL0"},{"id":42154516512849,"price":3700,"name":"Custom Pink Chalk - Pink Chalk \/ Pink \/ S\/M","public_title":"Pink Chalk \/ Pink \/ S\/M","sku":"P-CUS-PCL1"},{"id":42154516545617,"price":3700,"name":"Custom Pink Chalk - Pink Chalk \/ Pink \/ M\/L","public_title":"Pink Chalk \/ Pink \/ M\/L","sku":"P-CUS-PCL2"},{"id":42154516578385,"price":3700,"name":"Custom Pink Chalk - Pink Chalk \/ Pink \/ L\/XL","public_title":"Pink Chalk \/ Pink \/ L\/XL","sku":"P-CUS-PCL3"},{"id":58591365398609,"price":3700,"name":"Custom Pink Chalk - Pink Chalk \/ Lavender \/ XXS","public_title":"Pink Chalk \/ Lavender \/ XXS","sku":"L-CUS-PCLX"},{"id":58591365431377,"price":3700,"name":"Custom Pink Chalk - Pink Chalk \/ Lavender \/ XS","public_title":"Pink Chalk \/ Lavender \/ XS","sku":"L-CUS-PCL0"},{"id":58591365464145,"price":3700,"name":"Custom Pink Chalk - Pink Chalk \/ Lavender \/ S\/M","public_title":"Pink Chalk \/ Lavender \/ S\/M","sku":"L-CUS-PCL1"},{"id":58591365496913,"price":3700,"name":"Custom Pink Chalk - Pink Chalk \/ Lavender \/ M\/L","public_title":"Pink Chalk \/ Lavender \/ M\/L","sku":"L-CUS-PCL2"},{"id":58591365529681,"price":3700,"name":"Custom Pink Chalk - Pink Chalk \/ Lavender \/ L\/XL","public_title":"Pink Chalk \/ Lavender \/ L\/XL","sku":"L-CUS-PCL3"},{"id":59266935717969,"price":3700,"name":"Custom Pink Chalk - Pink Chalk \/ Blue \/ XXS","public_title":"Pink Chalk \/ Blue \/ XXS","sku":"BLU-CUS-PCLX"},{"id":59266935750737,"price":3700,"name":"Custom Pink Chalk - Pink Chalk \/ Blue \/ XS","public_title":"Pink Chalk \/ Blue \/ XS","sku":"BLU-CUS-PCL0"},{"id":59266935783505,"price":3700,"name":"Custom Pink Chalk - Pink Chalk \/ Blue \/ S\/M","public_title":"Pink Chalk \/ Blue \/ S\/M","sku":"BLU-CUS-PCL1"},{"id":59266935816273,"price":3700,"name":"Custom Pink Chalk - Pink Chalk \/ Blue \/ M\/L","public_title":"Pink Chalk \/ Blue \/ M\/L","sku":"BLU-CUS-PCL2"},{"id":59266935849041,"price":3700,"name":"Custom Pink Chalk - Pink Chalk \/ Blue \/ L\/XL","public_title":"Pink Chalk \/ Blue \/ L\/XL","sku":"BLU-CUS-PCL3"}
2831,{"id":58320627400785,"price":5000,"name":"Custom Pink Chalk - Pink Chalk \/ Gold \/ XXS","public_title":"Pink Chalk \/ Gold \/ XXS","sku":"G-CUS-PCLX"},{"id":41721397018705,"price":5000,"name":"Custom Pink Chalk - Pink Chalk \/ Gold \/ XS","public_title":"Pink Chalk \/ Gold \/ XS","sku":"G-CUS-PCL0"},{"id":41721397051473,"price":5000,"name":"Custom Pink Chalk - Pink Chalk \/ Gold \/ S\/M","public_title":"Pink Chalk \/ Gold \/ S\/M","sku":"G-CUS-PCL1"},{"id":41721397084241,"price":5000,"name":"Custom Pink Chalk - Pink Chalk \/ Gold \/ M\/L","public_title":"Pink Chalk \/ Gold \/ M\/L","sku":"G-CUS-PCL2"},{"id":41721397117009,"price":5000,"name":"Custom Pink Chalk - Pink Chalk \/ Gold \/ L\/XL","public_title":"Pink Chalk \/ Gold \/ L\/XL","sku":"G-CUS-PCL3"}],"remote":false},{"id":6899410698321,"gid":"gid:\/\/shopify\/Product\/6899410698321","vendor":"Imperial","type":"Custom","handle":"custom-lava-stone-mens","variants":[{"id":58320621404241,"price":3500,"name":"Custom Lava Stone Men's - Lava Stone Men's \/ White \/ XXS","public_title":"Lava Stone Men's \/ White \/ XXS","sku":"W-CUS-LAVX"},{"id":41839078604881,"price":3500,"name":"Custom Lava Stone Men's - Lava Stone Men's \/ White \/ XS","public_title":"Lava Stone Men's \/ White \/ XS","sku":"W-CUS-LAV0"},{"id":39946162896977,"price":3500,"name":"Custom Lava Stone Men's - Lava Stone Men's \/ White \/ S\/M","public_title":"Lava Stone Men's \/ White \/ S\/M","sku":"W-CUS-LAV1"},{"id":39946162929745,"price":3500,"name":"Custom Lava Stone Men's - Lava Stone Men's \/ White \/ M\/L","public_title":"Lava Stone Men's \/ White \/ M\/L","sku":"W-CUS-LAV2"},{"id":39946162962513,"price":3500,"name":"Custom Lava Stone Men's - Lava Stone Men's \/ White \/ L\/XL","public_title":"Lava Stone Men's \/ White \/ L\/XL","sku":"W-CUS-LAV3"},{"id":58320621437009,"price":3500,"name":"Custom Lava Stone Men's - Lava Stone Men's \/ Black \/ XXS","public_title":"Lava Stone Men's \/ Black \/ XXS","sku":"B-CUS-LAVX"},{"id":41839078637649,"price":3500,"name":"Custom Lava Stone Men's - Lava Stone Men's \/ Black \/ XS","public_title":"Lava Stone Men's \/ Black \/ XS","
2831sku":"B-CUS-LAV0"},{"id":40355169206353,"price":3500,"name":"Custom Lava Stone Men's - Lava Stone Men's \/ Black \/ S\/M","public_title":"Lava Stone Men's \/ Black \/ S\/M","sku":"B-CUS-LAV1"},{"id":40355169239121,"price":3500,"name":"Custom Lava Stone Men's - Lava Stone Men's \/ Black \/ M\/L","public_title":"Lava Stone Men's \/ Black \/ M\/L","sku":"B-CUS-LAV2"},{"id":40355169271889,"price":3500,"name":"Custom Lava Stone Men's - Lava Stone Men's \/ Black \/ L\/XL","public_title":"Lava Stone Men's \/ Black \/ L\/XL","sku":"B-CUS-LAV3"},{"id":58320621469777,"price":3700,"name":"Custom Lava Stone Men's - Lava Stone Men's \/ Pink \/ XXS","public_title":"Lava Stone Men's \/ Pink \/ XXS","sku":"P-CUS-LAVX"},{"id":42153306456145,"price":3700,"name":"Custom Lava Stone Men's - Lava Stone Men's \/ Pink \/ XS","public_title":"Lava Stone Men's \/ Pink \/ XS","sku":"P-CUS-LAV0"},{"id":42153306488913,"price":3700,"name":"Custom Lava Stone Men's - Lava Stone Men's \/ Pink \/ S\/M","public_title":"Lava Stone Men's \/ Pink \/ S\/M","sku":"P-CUS-LAV1"},{"id":42153306521681,"price":3700,"name":"Custom Lava Stone Men's - Lava Stone Men's \/ Pink \/ M\/L","public_title":"Lava Stone Men's \/ Pink \/ M\/L","sku":"P-CUS-LAV2"},{"id":42153306554449,"price":3700,"name":"Custom Lava Stone Men's - Lava Stone Men's \/ Pink \/ L\/XL","public_title":"Lava Stone Men's \/ Pink \/ L\/XL","sku":"P-CUS-LAV3"},{"id":58618415841361,"price":3700,"name":"Custom Lava Stone Men's - Lava Stone Men's \/ Lavender \/ XXS","public_title":"Lava Stone Men's \/ Lavender \/ XXS","sku":"L-CUS-LAVX"},{"id":58618415874129,"price":3700,"name":"Custom Lava Stone Men's - Lava Stone Men's \/ Lavender \/ XS","public_title":"Lava Stone Men's \/ Lavender \/ XS","sku":"L-CUS-LAV0"},{"id":58618415906897,"price":3700,"name":"Custom Lava Stone Men's - Lava Stone Men's \/ Lavender \/ S\/M","public_title":"Lava Stone Men's \/ Lavender \/ S\/M","sku":"L-CUS-LAV1"},{"id":58618415939665,"price":3700,"name":"Custom Lava Stone Men's - Lava Stone Men's \/ Lavender \/ M\/L","public_title":"Lava Stone Men's \/ Lavender \/ M\/L","sku":"L-CUS-LAV2"},{"id":58618415972433,"price":3700,"name":"Custom Lava Stone Men's - Lava Stone Men's \/ Lavender \/ L\/XL","public_title":"Lava Stone Men's \/ Lavender \/ L\/XL","sku":"L-CUS-LAV3"},{"id":59266927689809,"price":3700,"name":"Custom Lava Stone Men's - Lava Stone Men's \/ Blue \/ XXS","public_title":"Lava Stone Men's \/ Blue \/ XXS","sku":"BLU-CUS-LAVX"},{"id":59266927722577,"price":3700,"name":"Custom Lava Stone Men's - Lava Stone Men's \/ Blue \/ XS","public_title":"Lava Stone Men's \/ Blue \/ XS","sku":"BLU-CUS-LAV0"},{"id":59266927755345,"price":3700,"name":"Custom Lava Stone Men's - Lava Stone Men's \/ Blue \/ S\/M","public_title":"Lava Stone Men's \/ Blue \/ S\/M","sku":"BLU-CUS-LAV1"},{"id":59266927788113,"price":3700,"name":"Custom Lava Stone Men's - Lava Stone Men's \/ Blue \/ M\/L","public_title":"Lava Stone Men's \/ Blue \/ M\/L","sku":"BLU-CUS-LAV2"},{"id":59266927820881,"price":3700,"name":"Custom Lava Stone Men's - Lava Stone Men's \/ Blue \/ L\/XL","public_title":"Lava Stone Men's \/ Blue \/ L\/XL","sku":"BLU-CUS-LAV3"}
2831,{"id":58320621502545,"price":5000,"name":"Custom Lava Stone Men's - Lava Stone Men's \/ Gold \/ XXS","public_title":"Lava Stone Men's \/ Gold \/ XXS","sku":"G-CUS-LAVX"},{"id":41839078670417,"price":5000,"name":"Custom Lava Stone Men's - Lava Stone Men's \/ Gold \/ XS","public_title":"Lava Stone Men's \/ Gold \/ XS","sku":"G-CUS-LAV0"},{"id":40383610191953,"price":5000,"name":"Custom Lava Stone Men's - Lava Stone Men's \/ Gold \/ S\/M","public_title":"Lava Stone Men's \/ Gold \/ S\/M","sku":"G-CUS-LAV1"},{"id":40383610224721,"price":5000,"name":"Custom Lava Stone Men's - Lava Stone Men's \/ Gold \/ M\/L","public_title":"Lava Stone Men's \/ Gold \/ M\/L","sku":"G-CUS-LAV2"},{"id":40383610257489,"price":5000,"name":"Custom Lava Stone Men's - Lava Stone Men's \/ Gold \/ L\/XL","public_title":"Lava Stone Men's \/ Gold \/ L\/XL","sku":"G-CUS-LAV3"}],"remote":false},{"id":7594586112081,"gid":"gid:\/\/shopify\/Product\/7594586112081","vendor":"Imperial","type":"Custom","handle":"custom-sea-salt","variants":[{"id":58320639328337,"price":3500,"name":"Custom Sea Salt - Sea Salt \/ White \/ XXS","public_title":"Sea Salt \/ White \/ XXS","sku":"W-CUS-SESAX"},{"id":41721401966673,"price":3500,"name":"Custom Sea Salt - Sea Salt \/ White \/ XS","public_title":"Sea Salt \/ White \/ XS","sku":"W-CUS-SESA0"},{"id":41721401999441,"price":3500,"name":"Custom Sea Salt - Sea Salt \/ White \/ S\/M","public_title":"Sea Salt \/ White \/ S\/M","sku":"W-CUS-SESA1"},{"id":41721402032209,"price":3500,"name":"Custom Sea Salt - Sea Salt \/ White \/ M\/L","public_title":"Sea Salt \/ White \/ M\/L","sku":"W-CUS-SESA2"},{"id":41721402064977,"price":3500,"name":"Custom Sea Salt - Sea Salt \/ White \/ L\/XL","public_title":"Sea Salt \/ White \/ L\/XL","sku":"W-CUS-SESA3"},{"id":58320639361105,"price":3500,"name":"Custom Sea Salt - Sea Salt \/ Black \/ XXS","public_title":"Sea Salt \/ Black \/ XXS","sku":"B-CUS-SESAX"},{"id":41721402097745,"price":3500,"name":"Custom Sea Salt - Sea Salt \/ Black \/ XS","public_title":"Sea Salt \/ Black \/ XS","
2831sku":"B-CUS-SESA0"},{"id":41721402130513,"price":3500,"name":"Custom Sea Salt - Sea Salt \/ Black \/ S\/M","public_title":"Sea Salt \/ Black \/ S\/M","sku":"B-CUS-SESA1"},{"id":41721402163281,"price":3500,"name":"Custom Sea Salt - Sea Salt \/ Black \/ M\/L","public_title":"Sea Salt \/ Black \/ M\/L","sku":"B-CUS-SESA2"},{"id":41721402196049,"price":3500,"name":"Custom Sea Salt - Sea Salt \/ Black \/ L\/XL","public_title":"Sea Salt \/ Black \/ L\/XL","sku":"B-CUS-SESA3"},{"id":58320639393873,"price":3700,"name":"Custom Sea Salt - Sea Salt \/ Pink \/ XXS","public_title":"Sea Salt \/ Pink \/ XXS","sku":"P-CUS-SESAX"},{"id":42154510909521,"price":3700,"name":"Custom Sea Salt - Sea Salt \/ Pink \/ XS","public_title":"Sea Salt \/ Pink \/ XS","sku":"P-CUS-SESA0"},{"id":42154510942289,"price":3700,"name":"Custom Sea Salt - Sea Salt \/ Pink \/ S\/M","public_title":"Sea Salt \/ Pink \/ S\/M","sku":"P-CUS-SESA1"},{"id":42154510975057,"price":3700,"name":"Custom Sea Salt - Sea Salt \/ Pink \/ M\/L","public_title":"Sea Salt \/ Pink \/ M\/L","sku":"P-CUS-SESA2"},{"id":42154511007825,"price":3700,"name":"Custom Sea Salt - Sea Salt \/ Pink \/ L\/XL","public_title":"Sea Salt \/ Pink \/ L\/XL","sku":"P-CUS-SESA3"},{"id":58591348359249,"price":3700,"name":"Custom Sea Salt - Sea Salt \/ Lavender \/ XXS","public_title":"Sea Salt \/ Lavender \/ XXS","sku":"L-CUS-SEASX"},{"id":58591348392017,"price":3700,"name":"Custom Sea Salt - Sea Salt \/ Lavender \/ XS","public_title":"Sea Salt \/ Lavender \/ XS","sku":"L-CUS-SEAS0"},{"id":58591348424785,"price":3700,"name":"Custom Sea Salt - Sea Salt \/ Lavender \/ S\/M","public_title":"Sea Salt \/ Lavender \/ S\/M","sku":"L-CUS-SEAS1"},{"id":58591348457553,"price":3700,"name":"Custom Sea Salt - Sea Salt \/ Lavender \/ M\/L","public_title":"Sea Salt \/ Lavender \/ M\/L","sku":"L-CUS-SEAS2"},{"id":58591348490321,"price":3700,"name":"Custom Sea Salt - Sea Salt \/ Lavender \/ L\/XL","public_title":"Sea Salt \/ Lavender \/ L\/XL","sku":"L-CUS-SEAS3"},{"id":59266936209489,"price":3700,"name":"Custom Sea Salt - Sea Salt \/ Blue \/ XXS","public_title":"Sea Salt \/ Blue \/ XXS","sku":"BLU-CUS-SESAX"},{"id":59266936242257,"price":3700,"name":"Custom Sea Salt - Sea Salt \/ Blue \/ XS","public_title":"Sea Salt \/ Blue \/ XS","sku":"BLU-CUS-SESA0"},{"id":59266936275025,"price":3700,"name":"Custom Sea Salt - Sea Salt \/ Blue \/ S\/M","public_title":"Sea Salt \/ Blue \/ S\/M","sku":"BLU-CUS-SESA1"},{"id":59266936307793,"price":3700,"name":"Custom Sea Salt - Sea Salt \/ Blue \/ M\/L","public_title":"Sea Salt \/ Blue \/ M\/L","sku":"BLU-CUS-SESA2"},{"id":59266936340561,"price":3700,"name":"Custom Sea Salt - Sea Salt \/ Blue \/ L\/XL","public_title":"Sea Salt \/ Blue \/ L\/XL","sku":"BLU-CUS-SESA3"}
2831,{"id":58320639426641,"price":5000,"name":"Custom Sea Salt - Sea Salt \/ Gold \/ XXS","public_title":"Sea Salt \/ Gold \/ XXS","sku":"G-CUS-SESAX"},{"id":41721402228817,"price":5000,"name":"Custom Sea Salt - Sea Salt \/ Gold \/ XS","public_title":"Sea Salt \/ Gold \/ XS","sku":"G-CUS-SESA0"},{"id":41721402261585,"price":5000,"name":"Custom Sea Salt - Sea Salt \/ Gold \/ S\/M","public_title":"Sea Salt \/ Gold \/ S\/M","sku":"G-CUS-SESA1"},{"id":41721402294353,"price":5000,"name":"Custom Sea Salt - Sea Salt \/ Gold \/ M\/L","public_title":"Sea Salt \/ Gold \/ M\/L","sku":"G-CUS-SESA2"},{"id":41721402327121,"price":5000,"name":"Custom Sea Salt - Sea Salt \/ Gold \/ L\/XL","public_title":"Sea Salt \/ Gold \/ L\/XL","sku":"G-CUS-SESA3"}],"remote":false},{"id":7675780857937,"gid":"gid:\/\/shopify\/Product\/7675780857937","vendor":"Little Words Project","type":"Beading Table","handle":"the-bead-bar-nashville","variants":[{"id":42002632048721,"price":3500,"name":"The Bead Bar®- Nashville - Single","public_title":"Single","sku":"BB-SIN-NAS"}
2831,{"id":42002632081489,"price":5000,"name":"The Bead Bar®- Nashville - Double","public_title":"Double","sku":"BB-DOU-NAS"},{"id":42002632114257,"price":6500,"name":"The Bead Bar®- Nashville - Triple","public_title":"Triple","sku":"BB-TRI-NAS"},{"id":42002632147025,"price":2500,"name":"The Bead Bar®- Nashville - Little","public_title":"Little","sku":"BB-LTR-NAS"}],"remote":false},{"id":7594582900817,"gid":"gid:\/\/shopify\/Product\/7594582900817","vendor":"Imperial","type":"Custom","handle":"custom-strawberry-cloud","variants":[{"id":58320625041489,"price":3500,"name":"Custom Strawberry Cloud - Strawberry Cloud \/ White \/ XXS","public_title":"Strawberry Cloud \/ White \/ XXS","sku":"W-CUS-STWCX"},{"id":41721395970129,"price":3500,"name":"Custom Strawberry Cloud - Strawberry Cloud \/ White \/ XS","public_title":"Strawberry Cloud \/ White \/ XS","sku":"W-CUS-STWC0"},{"id":41721396002897,"price":3500,"name":"Custom Strawberry Cloud - Strawberry Cloud \/ White \/ S\/M","public_title":"Strawberry Cloud \/ White \/ S\/M","sku":"W-CUS-STWC1"},{"id":41721396035665,"price":3500,"name":"Custom Strawberry Cloud - Strawberry Cloud \/ White \/ M\/L","public_title":"Strawberry Cloud \/ White \/ M\/L","sku":"W-CUS-STWC2"},{"id":41721396068433,"price":3500,"name":"Custom Strawberry Cloud - Strawberry Cloud \/ White \/ L\/XL","public_title":"Strawberry Cloud \/ White \/ L\/XL","sku":"W-CUS-STWC3"},{"id":58320625074257,"price":3500,"name":"Custom Strawberry Cloud - Strawberry Cloud \/ Black \/ XXS","public_title":"Strawberry Cloud \/ Black \/ XXS","sku":"B-CUS-STWCX"},{"id":41721396101201,"price":3500,"name":"Custom Strawberry Cloud - Strawberry Cloud \/ Black \/ XS","public_title":"Strawberry Cloud \/ Black \/ XS","
2831sku":"B-CUS-STWC0"},{"id":41721396133969,"price":3500,"name":"Custom Strawberry Cloud - Strawberry Cloud \/ Black \/ S\/M","public_title":"Strawberry Cloud \/ Black \/ S\/M","sku":"B-CUS-STWC1"},{"id":41721396166737,"price":3500,"name":"Custom Strawberry Cloud - Strawberry Cloud \/ Black \/ M\/L","public_title":"Strawberry Cloud \/ Black \/ M\/L","sku":"B-CUS-STWC2"},{"id":41721396199505,"price":3500,"name":"Custom Strawberry Cloud - Strawberry Cloud \/ Black \/ L\/XL","public_title":"Strawberry Cloud \/ Black \/ L\/XL","sku":"B-CUS-STWC3"},{"id":58320625107025,"price":3700,"name":"Custom Strawberry Cloud - Strawberry Cloud \/ Pink \/ XXS","public_title":"Strawberry Cloud \/ Pink \/ XXS","sku":"P-CUS-STWCX"},{"id":42153101885521,"price":3700,"name":"Custom Strawberry Cloud - Strawberry Cloud \/ Pink \/ XS","public_title":"Strawberry Cloud \/ Pink \/ XS","sku":"P-CUS-STWC0"},{"id":42153101918289,"price":3700,"name":"Custom Strawberry Cloud - Strawberry Cloud \/ Pink \/ S\/M","public_title":"Strawberry Cloud \/ Pink \/ S\/M","sku":"P-CUS-STWC1"},{"id":42153101951057,"price":3700,"name":"Custom Strawberry Cloud - Strawberry Cloud \/ Pink \/ M\/L","public_title":"Strawberry Cloud \/ Pink \/ M\/L","sku":"P-CUS-STWC2"},{"id":42153101983825,"price":3700,"name":"Custom Strawberry Cloud - Strawberry Cloud \/ Pink \/ L\/XL","public_title":"Strawberry Cloud \/ Pink \/ L\/XL","sku":"P-CUS-STWC3"},{"id":58591377326161,"price":3700,"name":"Custom Strawberry Cloud - Strawberry Cloud \/ Lavender \/ XXS","public_title":"Strawberry Cloud \/ Lavender \/ XXS","sku":"L-CUS-STWCX"},{"id":58591377358929,"price":3700,"name":"Custom Strawberry Cloud - Strawberry Cloud \/ Lavender \/ XS","public_title":"Strawberry Cloud \/ Lavender \/ XS","sku":"L-CUS-STWC0"},{"id":58591377391697,"price":3700,"name":"Custom Strawberry Cloud - Strawberry Cloud \/ Lavender \/ S\/M","public_title":"Strawberry Cloud \/ Lavender \/ S\/M","sku":"L-CUS-STWC1"},{"id":58591377424465,"price":3700,"name":"Custom Strawberry Cloud - Strawberry Cloud \/ Lavender \/ M\/L","public_title":"Strawberry Cloud \/ Lavender \/ M\/L","sku":"L-CUS-STWC2"},{"id":58591377457233,"price":3700,"name":"Custom Strawberry Cloud - Strawberry Cloud \/ Lavender \/ L\/XL","public_title":"Strawberry Cloud \/ Lavender \/ L\/XL","sku":"L-CUS-STWC3"},{"id":59266938798161,"price":3700,"name":"Custom Strawberry Cloud - Strawberry Cloud \/ Blue \/ XXS","public_title":"Strawberry Cloud \/ Blue \/ XXS","sku":"BLU-CUS-STWCX"},{"id":59266938830929,"price":3700,"name":"Custom Strawberry Cloud - Strawberry Cloud \/ Blue \/ XS","public_title":"Strawberry Cloud \/ Blue \/ XS","sku":"BLU-CUS-STWC0"},{"id":59266938863697,"price":3700,"name":"Custom Strawberry Cloud - Strawberry Cloud \/ Blue \/ S\/M","public_title":"Strawberry Cloud \/ Blue \/ S\/M","sku":"BLU-CUS-STWC1"},{"id":59266938896465,"price":3700,"name":"Custom Strawberry Cloud - Strawberry Cloud \/ Blue \/ M\/L","public_title":"Strawberry Cloud \/ Blue \/ M\/L","sku":"BLU-CUS-STWC2"},{"id":59266938929233,"price":3700,"name":"Custom Strawberry Cloud - Strawberry Cloud \/ Blue \/ L\/XL","public_title":"Strawberry Cloud \/ Blue \/ L\/XL","sku":"BLU-CUS-STWC3"}
2831,{"id":58320625139793,"price":5000,"name":"Custom Strawberry Cloud - Strawberry Cloud \/ Gold \/ XXS","public_title":"Strawberry Cloud \/ Gold \/ XXS","sku":"G-CUS-STWCX"},{"id":41721396232273,"price":5000,"name":"Custom Strawberry Cloud - Strawberry Cloud \/ Gold \/ XS","public_title":"Strawberry Cloud \/ Gold \/ XS","sku":"G-CUS-STWC0"},{"id":41721396265041,"price":5000,"name":"Custom Strawberry Cloud - Strawberry Cloud \/ Gold \/ S\/M","public_title":"Strawberry Cloud \/ Gold \/ S\/M","sku":"G-CUS-STWC1"},{"id":41721396297809,"price":5000,"name":"Custom Strawberry Cloud - Strawberry Cloud \/ Gold \/ M\/L","public_title":"Strawberry Cloud \/ Gold \/ M\/L","sku":"G-CUS-STWC2"},{"id":41721396330577,"price":5000,"name":"Custom Strawberry Cloud - Strawberry Cloud \/ Gold \/ L\/XL","public_title":"Strawberry Cloud \/ Gold \/ L\/XL","sku":"G-CUS-STWC3"}],"remote":false},{"id":6899409944657,"gid":"gid:\/\/shopify\/Product\/6899409944657","vendor":"Imperial","type":"Custom","handle":"custom-silver-plated","variants":[{"id":58320624779345,"price":4000,"name":"Custom Silver Plated - Silver Plated \/ White \/ XXS","public_title":"Silver Plated \/ White \/ XXS","sku":"W-CUS-SILX"},{"id":39946162241617,"price":4000,"name":"Custom Silver Plated - Silver Plated \/ White \/ XS","public_title":"Silver Plated \/ White \/ XS","sku":"W-CUS-SIL0"},{"id":39946162274385,"price":4000,"name":"Custom Silver Plated - Silver Plated \/ White \/ S\/M","public_title":"Silver Plated \/ White \/ S\/M","sku":"W-CUS-SIL1"},{"id":39946162307153,"price":4000,"name":"Custom Silver Plated - Silver Plated \/ White \/ M\/L","public_title":"Silver Plated \/ White \/ M\/L","sku":"W-CUS-SIL2"},{"id":39946162339921,"price":4000,"name":"Custom Silver Plated - Silver Plated \/ White \/ L\/XL","public_title":"Silver Plated \/ White \/ L\/XL","sku":"W-CUS-SIL3"},{"id":58320624812113,"price":4000,"name":"Custom Silver Plated - Silver Plated \/ Black \/ XXS","public_title":"Silver Plated \/ Black \/ XXS","sku":"B-CUS-SILX"},{"id":40355169992785,"price":4000,"name":"Custom Silver Plated - Silver Plated \/ Black \/ XS","public_title":"Silver Plated \/ Black \/ XS","
2831sku":"B-CUS-SIL0"},{"id":40355170025553,"price":4000,"name":"Custom Silver Plated - Silver Plated \/ Black \/ S\/M","public_title":"Silver Plated \/ Black \/ S\/M","sku":"B-CUS-SIL1"},{"id":40355170058321,"price":4000,"name":"Custom Silver Plated - Silver Plated \/ Black \/ M\/L","public_title":"Silver Plated \/ Black \/ M\/L","sku":"B-CUS-SIL2"},{"id":40355170091089,"price":4000,"name":"Custom Silver Plated - Silver Plated \/ Black \/ L\/XL","public_title":"Silver Plated \/ Black \/ L\/XL","sku":"B-CUS-SIL3"},{"id":58320624844881,"price":4200,"name":"Custom Silver Plated - Silver Plated \/ Pink \/ XXS","public_title":"Silver Plated \/ Pink \/ XXS","sku":"P-CUS-SILX"},{"id":42153178300497,"price":4200,"name":"Custom Silver Plated - Silver Plated \/ Pink \/ XS","public_title":"Silver Plated \/ Pink \/ XS","sku":"P-CUS-SIL0"},{"id":42153178333265,"price":4200,"name":"Custom Silver Plated - Silver Plated \/ Pink \/ S\/M","public_title":"Silver Plated \/ Pink \/ S\/M","sku":"P-CUS-SIL1"},{"id":42153178366033,"price":4200,"name":"Custom Silver Plated - Silver Plated \/ Pink \/ M\/L","public_title":"Silver Plated \/ Pink \/ M\/L","sku":"P-CUS-SIL2"},{"id":42153178398801,"price":4200,"name":"Custom Silver Plated - Silver Plated \/ Pink \/ L\/XL","public_title":"Silver Plated \/ Pink \/ L\/XL","sku":"P-CUS-SIL3"},{"id":58618386907217,"price":4200,"name":"Custom Silver Plated - Silver Plated \/ Lavender \/ XXS","public_title":"Silver Plated \/ Lavender \/ XXS","sku":"L-CUS-SILX"},{"id":58618386939985,"price":4200,"name":"Custom Silver Plated - Silver Plated \/ Lavender \/ XS","public_title":"Silver Plated \/ Lavender \/ XS","sku":"L-CUS-SIL0"},{"id":58618386972753,"price":4200,"name":"Custom Silver Plated - Silver Plated \/ Lavender \/ S\/M","public_title":"Silver Plated \/ Lavender \/ S\/M","sku":"L-CUS-SIL1"},{"id":58618387005521,"price":4200,"name":"Custom Silver Plated - Silver Plated \/ Lavender \/ M\/L","public_title":"Silver Plated \/ Lavender \/ M\/L","sku":"L-CUS-SIL2"},{"id":58618387038289,"price":4200,"name":"Custom Silver Plated - Silver Plated \/ Lavender \/ L\/XL","public_title":"Silver Plated \/ Lavender \/ L\/XL","sku":"L-CUS-SIL3"},{"id":59266937290833,"price":4200,"name":"Custom Silver Plated - Silver Plated \/ Blue \/ XXS","public_title":"Silver Plated \/ Blue \/ XXS","sku":"BLU-CUS-SILX"},{"id":59266937323601,"price":4200,"name":"Custom Silver Plated - Silver Plated \/ Blue \/ XS","public_title":"Silver Plated \/ Blue \/ XS","sku":"BLU-CUS-SIL0"},{"id":59266937356369,"price":4200,"name":"Custom Silver Plated - Silver Plated \/ Blue \/ S\/M","public_title":"Silver Plated \/ Blue \/ S\/M","sku":"BLU-CUS-SIL1"},{"id":59266937389137,"price":4200,"name":"Custom Silver Plated - Silver Plated \/ Blue \/ M\/L","public_title":"Silver Plated \/ Blue \/ M\/L","sku":"BLU-CUS-SIL2"},{"id":59266937421905,"price":4200,"name":"Custom Silver Plated - Silver Plated \/ Blue \/ L\/XL","public_title":"Silver Plated \/ Blue \/ L\/XL","sku":"BLU-CUS-SIL3"},{"id":58320624877649,"price":5500,"name":"Custom Silver Plated - Silver Plated \/ Gold \/ XXS","public_title":"Silver Plated \/ Gold \/ XXS","sku":"G-CUS-SILX"},{"id":40383611076689,"price":5500,"name":"Custom Silver Plated - Silver Plated \/ Gold \/ XS","public_title":"Silver Plated \/ Gold \/ XS","sku":"G-CUS-SIL0"},{"id":40383611109457,"price":5500,"name":"Custom Silver Plated - Silver Plated \/ Gold \/ S\/M","public_title":"Silver Plated \/ Gold \/ S\/M","sku":"G-CUS-SIL1"},{"id":40383611142225,"price":5500,"name":"Custom Silver Plated - Silver Plated \/ Gold \/ M\/L","public_title":"Silver Plated \/ Gold \/ M\/L","sku":"G-CUS-SIL2"},{"id":40383611174993,"price":5500,"name":"Custom Silver Plated - Silver Plated \/ Gold \/ L\/XL","public_title":"Silver Plated \/ Gold \/ L\/XL","sku":"G-CUS-SIL3"}],"remote":false},{"id":7594584211537,"gid":"gid:\/\/shopify\/Product\/7594584211537","vendor":"Imperial","type":"Custom","handle":"custom-strand-of-pearls","variants":[{"id":58320629596241,"price":3500,"name":"Custom Strand of Pearls - Strand of Pearls \/ White \/ XXS","public_title":"Strand of Pearls \/ White \/ XXS","sku":"W-CUS-SOPX"},{"id":41721398001745,"price":3500,"name":"Custom Strand of Pearls - Strand of Pearls \/ White \/ XS","public_title":"Strand of Pearls \/ White \/ XS","
2831sku":"W-CUS-SOP0"},{"id":41721398067281,"price":3500,"name":"Custom Strand of Pearls - Strand of Pearls \/ White \/ S\/M","public_title":"Strand of Pearls \/ White \/ S\/M","sku":"W-CUS-SOP1"},{"id":41721398100049,"price":3500,"name":"Custom Strand of Pearls - Strand of Pearls \/ White \/ M\/L","public_title":"Strand of Pearls \/ White \/ M\/L","sku":"W-CUS-SOP2"},{"id":41721398132817,"price":3500,"name":"Custom Strand of Pearls - Strand of Pearls \/ White \/ L\/XL","public_title":"Strand of Pearls \/ White \/ L\/XL","sku":"W-CUS-SOP3"},{"id":58320629629009,"price":3500,"name":"Custom Strand of Pearls - Strand of Pearls \/ Black \/ XXS","public_title":"Strand of Pearls \/ Black \/ XXS","sku":"B-CUS-SOPX"},{"id":41721398165585,"price":3500,"name":"Custom Strand of Pearls - Strand of Pearls \/ Black \/ XS","public_title":"Strand of Pearls \/ Black \/ XS","sku":"B-CUS-SOP0"},{"id":41721398198353,"price":3500,"name":"Custom Strand of Pearls - Strand of Pearls \/ Black \/ S\/M","public_title":"Strand of Pearls \/ Black \/ S\/M","sku":"B-CUS-SOP1"},{"id":41721398231121,"price":3500,"name":"Custom Strand of Pearls - Strand of Pearls \/ Black \/ M\/L","public_title":"Strand of Pearls \/ Black \/ M\/L","sku":"B-CUS-SOP2"},{"id":41721398263889,"price":3500,"name":"Custom Strand of Pearls - Strand of Pearls \/ Black \/ L\/XL","public_title":"Strand of Pearls \/ Black \/ L\/XL","sku":"B-CUS-SOP3"},{"id":58320629661777,"price":3700,"name":"Custom Strand of Pearls - Strand of Pearls \/ Pink \/ XXS","public_title":"Strand of Pearls \/ Pink \/ XXS","sku":"P-CUS-SOPX"},{"id":42153107226705,"price":3700,"name":"Custom Strand of Pearls - Strand of Pearls \/ Pink \/ XS","public_title":"Strand of Pearls \/ Pink \/ XS","
2831sku":"P-CUS-SOP0"},{"id":42153107259473,"price":3700,"name":"Custom Strand of Pearls - Strand of Pearls \/ Pink \/ S\/M","public_title":"Strand of Pearls \/ Pink \/ S\/M","sku":"P-CUS-SOP1"},{"id":42153107292241,"price":3700,"name":"Custom Strand of Pearls - Strand of Pearls \/ Pink \/ M\/L","public_title":"Strand of Pearls \/ Pink \/ M\/L","sku":"P-CUS-SOP2"},{"id":42153107325009,"price":3700,"name":"Custom Strand of Pearls - Strand of Pearls \/ Pink \/ L\/XL","public_title":"Strand of Pearls \/ Pink \/ L\/XL","sku":"P-CUS-SOP3"},{"id":58619539914833,"price":3700,"name":"Custom Strand of Pearls - Strand of Pearls \/ Lavender \/ XXS","public_title":"Strand of Pearls \/ Lavender \/ XXS","sku":"L-CUS-SOPX"},{"id":58619539947601,"price":3700,"name":"Custom Strand of Pearls - Strand of Pearls \/ Lavender \/ XS","public_title":"Strand of Pearls \/ Lavender \/ XS","sku":"L-CUS-SOP0"},{"id":58619539980369,"price":3700,"name":"Custom Strand of Pearls - Strand of Pearls \/ Lavender \/ S\/M","public_title":"Strand of Pearls \/ Lavender \/ S\/M","sku":"L-CUS-SOP1"},{"id":58619540013137,"price":3700,"name":"Custom Strand of Pearls - Strand of Pearls \/ Lavender \/ M\/L","public_title":"Strand of Pearls \/ Lavender \/ M\/L","sku":"L-CUS-SOP2"},{"id":58619540045905,"price":3700,"name":"Custom Strand of Pearls - Strand of Pearls \/ Lavender \/ L\/XL","public_title":"Strand of Pearls \/ Lavender \/ L\/XL","sku":"L-CUS-SOP3"},{"id":59266938208337,"price":3700,"name":"Custom Strand of Pearls - Strand of Pearls \/ Blue \/ XXS","public_title":"Strand of Pearls \/ Blue \/ XXS","sku":"BLU-CUS-SOPX"},{"id":59266938241105,"price":3700,"name":"Custom Strand of Pearls - Strand of Pearls \/ Blue \/ XS","public_title":"Strand of Pearls \/ Blue \/ XS","sku":"BLU-CUS-SOP0"},{"id":59266938273873,"price":3700,"name":"Custom Strand of Pearls - Strand of Pearls \/ Blue \/ S\/M","public_title":"Strand of Pearls \/ Blue \/ S\/M","sku":"BLU-CUS-SOP1"},{"id":59266938306641,"price":3700,"name":"Custom Strand of Pearls - Strand of Pearls \/ Blue \/ M\/L","public_title":"Strand of Pearls \/ Blue \/ M\/L","sku":"BLU-CUS-SOP2"},{"id":59266938339409,"price":3700,"name":"Custom Strand of Pearls - Strand of Pearls \/ Blue \/ L\/XL","public_title":"Strand of Pearls \/ Blue \/ L\/XL","sku":"BLU-CUS-SOP3"}
2831,{"id":58320629694545,"price":5000,"name":"Custom Strand of Pearls - Strand of Pearls \/ Gold \/ XXS","public_title":"Strand of Pearls \/ Gold \/ XXS","sku":"G-CUS-SOPX"},{"id":41721398296657,"price":5000,"name":"Custom Strand of Pearls - Strand of Pearls \/ Gold \/ XS","public_title":"Strand of Pearls \/ Gold \/ XS","sku":"G-CUS-SOP0"},{"id":41721398329425,"price":5000,"name":"Custom Strand of Pearls - Strand of Pearls \/ Gold \/ S\/M","public_title":"Strand of Pearls \/ Gold \/ S\/M","sku":"G-CUS-SOP1"},{"id":41721398362193,"price":5000,"name":"Custom Strand of Pearls - Strand of Pearls \/ Gold \/ M\/L","public_title":"Strand of Pearls \/ Gold \/ M\/L","sku":"G-CUS-SOP2"},{"id":41721398394961,"price":5000,"name":"Custom Strand of Pearls - Strand of Pearls \/ Gold \/ L\/XL","public_title":"Strand of Pearls \/ Gold \/ L\/XL","sku":"G-CUS-SOP3"}],"remote":false},{"id":7594581721169,"gid":"gid:\/\/shopify\/Product\/7594581721169","vendor":"Imperial","type":"Custom","handle":"custom-chambray","variants":[{"id":58320634118225,"price":3500,"name":"Custom Chambray - Chambray \/ White \/ XXS","public_title":"Chambray \/ White \/ XXS","sku":"W-CUS-CHAX"},{"id":41721394233425,"price":3500,"name":"Custom Chambray - Chambray \/ White \/ XS","public_title":"Chambray \/ White \/ XS","sku":"W-CUS-CHA0"},{"id":41721394266193,"price":3500,"name":"Custom Chambray - Chambray \/ White \/ S\/M","public_title":"Chambray \/ White \/ S\/M","sku":"W-CUS-CHA1"},{"id":41721394298961,"price":3500,"name":"Custom Chambray - Chambray \/ White \/ M\/L","public_title":"Chambray \/ White \/ M\/L","sku":"W-CUS-CHA2"},{"id":41721394331729,"price":3500,"name":"Custom Chambray - Chambray \/ White \/ L\/XL","public_title":"Chambray \/ White \/ L\/XL","sku":"W-CUS-CHA3"},{"id":58320634150993,"price":3500,"name":"Custom Chambray - Chambray \/ Black \/ XXS","public_title":"Chambray \/ Black \/ XXS","sku":"B-CUS-CHAX"},{"id":41721394364497,"price":3500,"name":"Custom Chambray - Chambray \/ Black \/ XS","public_title":"Chambray \/ Black \/ XS","
2831sku":"B-CUS-CHA0"},{"id":41721394397265,"price":3500,"name":"Custom Chambray - Chambray \/ Black \/ S\/M","public_title":"Chambray \/ Black \/ S\/M","sku":"B-CUS-CHA1"},{"id":41721394430033,"price":3500,"name":"Custom Chambray - Chambray \/ Black \/ M\/L","public_title":"Chambray \/ Black \/ M\/L","sku":"B-CUS-CHA2"},{"id":41721394462801,"price":3500,"name":"Custom Chambray - Chambray \/ Black \/ L\/XL","public_title":"Chambray \/ Black \/ L\/XL","sku":"B-CUS-CHA3"},{"id":58320634183761,"price":3700,"name":"Custom Chambray - Chambray \/ Pink \/ XXS","public_title":"Chambray \/ Pink \/ XXS","sku":"P-CUS-CHAX"},{"id":42154507796561,"price":3700,"name":"Custom Chambray - Chambray \/ Pink \/ XS","public_title":"Chambray \/ Pink \/ XS","sku":"P-CUS-CHA0"},{"id":42154507829329,"price":3700,"name":"Custom Chambray - Chambray \/ Pink \/ S\/M","public_title":"Chambray \/ Pink \/ S\/M","sku":"P-CUS-CHA1"},{"id":42154507862097,"price":3700,"name":"Custom Chambray - Chambray \/ Pink \/ M\/L","public_title":"Chambray \/ Pink \/ M\/L","sku":"P-CUS-CHA2"},{"id":42154507894865,"price":3700,"name":"Custom Chambray - Chambray \/ Pink \/ L\/XL","public_title":"Chambray \/ Pink \/ L\/XL","sku":"P-CUS-CHA3"},{"id":58619519008849,"price":3700,"name":"Custom Chambray - Chambray \/ Lavender \/ XXS","public_title":"Chambray \/ Lavender \/ XXS","sku":"L-CUS-CHAX"},{"id":58619519041617,"price":3700,"name":"Custom Chambray - Chambray \/ Lavender \/ XS","public_title":"Chambray \/ Lavender \/ XS","sku":"L-CUS-CHA0"},{"id":58619519074385,"price":3700,"name":"Custom Chambray - Chambray \/ Lavender \/ S\/M","public_title":"Chambray \/ Lavender \/ S\/M","sku":"L-CUS-CHA1"},{"id":58619519107153,"price":3700,"name":"Custom Chambray - Chambray \/ Lavender \/ M\/L","public_title":"Chambray \/ Lavender \/ M\/L","sku":"L-CUS-CHA2"},{"id":58619519139921,"price":3700,"name":"Custom Chambray - Chambray \/ Lavender \/ L\/XL","public_title":"Chambray \/ Lavender \/ L\/XL","sku":"L-CUS-CHA3"},{"id":59266907242577,"price":3700,"name":"Custom Chambray - Chambray \/ Blue \/ XXS","public_title":"Chambray \/ Blue \/ XXS","sku":"BLU-CUS-CHAX"},{"id":59266907275345,"price":3700,"name":"Custom Chambray - Chambray \/ Blue \/ XS","public_title":"Chambray \/ Blue \/ XS","sku":"BLU-CUS-CHA0"},{"id":59266907308113,"price":3700,"name":"Custom Chambray - Chambray \/ Blue \/ S\/M","public_title":"Chambray \/ Blue \/ S\/M","sku":"BLU-CUS-CHA1"},{"id":59266907340881,"price":3700,"name":"Custom Chambray - Chambray \/ Blue \/ M\/L","public_title":"Chambray \/ Blue \/ M\/L","sku":"BLU-CUS-CHA2"},{"id":59266907373649,"price":3700,"name":"Custom Chambray - Chambray \/ Blue \/ L\/XL","public_title":"Chambray \/ Blue \/ L\/XL","sku":"BLU-CUS-CHA3"}
2831,{"id":58320634216529,"price":5000,"name":"Custom Chambray - Chambray \/ Gold \/ XXS","public_title":"Chambray \/ Gold \/ XXS","sku":"G-CUS-CHAX"},{"id":41721394495569,"price":5000,"name":"Custom Chambray - Chambray \/ Gold \/ XS","public_title":"Chambray \/ Gold \/ XS","sku":"G-CUS-CHA0"},{"id":41721394528337,"price":5000,"name":"Custom Chambray - Chambray \/ Gold \/ S\/M","public_title":"Chambray \/ Gold \/ S\/M","sku":"G-CUS-CHA1"},{"id":41721394561105,"price":5000,"name":"Custom Chambray - Chambray \/ Gold \/ M\/L","public_title":"Chambray \/ Gold \/ M\/L","sku":"G-CUS-CHA2"},{"id":41721394593873,"price":5000,"name":"Custom Chambray - Chambray \/ Gold \/ L\/XL","public_title":"Chambray \/ Gold \/ L\/XL","sku":"G-CUS-CHA3"}],"remote":false},{"id":7594584703057,"gid":"gid:\/\/shopify\/Product\/7594584703057","vendor":"Imperial","type":"Custom","handle":"custom-lilac-garden","variants":[{"id":58320634544209,"price":3500,"name":"Custom Lilac Garden - Lilac Garden \/ White \/ XXS","public_title":"Lilac Garden \/ White \/ XXS","sku":"W-CUS-LILGX"},{"id":41721399017553,"price":3500,"name":"Custom Lilac Garden - Lilac Garden \/ White \/ XS","public_title":"Lilac Garden \/ White \/ XS","sku":"W-CUS-LILG0"},{"id":41721399050321,"price":3500,"name":"Custom Lilac Garden - Lilac Garden \/ White \/ S\/M","public_title":"Lilac Garden \/ White \/ S\/M","sku":"W-CUS-LILG1"},{"id":41721399083089,"price":3500,"name":"Custom Lilac Garden - Lilac Garden \/ White \/ M\/L","public_title":"Lilac Garden \/ White \/ M\/L","sku":"W-CUS-LILG2"},{"id":41721399115857,"price":3500,"name":"Custom Lilac Garden - Lilac Garden \/ White \/ L\/XL","public_title":"Lilac Garden \/ White \/ L\/XL","sku":"W-CUS-LILG3"},{"id":58320634576977,"price":3500,"name":"Custom Lilac Garden - Lilac Garden \/ Black \/ XXS","public_title":"Lilac Garden \/ Black \/ XXS","sku":"B-CUS-LILGX"},{"id":41721399148625,"price":3500,"name":"Custom Lilac Garden - Lilac Garden \/ Black \/ XS","public_title":"Lilac Garden \/ Black \/ XS","
2831sku":"B-CUS-LILG0"},{"id":41721399181393,"price":3500,"name":"Custom Lilac Garden - Lilac Garden \/ Black \/ S\/M","public_title":"Lilac Garden \/ Black \/ S\/M","sku":"B-CUS-LILG1"},{"id":41721399214161,"price":3500,"name":"Custom Lilac Garden - Lilac Garden \/ Black \/ M\/L","public_title":"Lilac Garden \/ Black \/ M\/L","sku":"B-CUS-LILG2"},{"id":41721399246929,"price":3500,"name":"Custom Lilac Garden - Lilac Garden \/ Black \/ L\/XL","public_title":"Lilac Garden \/ Black \/ L\/XL","sku":"B-CUS-LILG3"},{"id":58320634609745,"price":3700,"name":"Custom Lilac Garden - Lilac Garden \/ Pink \/ XXS","public_title":"Lilac Garden \/ Pink \/ XXS","sku":"P-CUS-LILGX"},{"id":42153089073233,"price":3700,"name":"Custom Lilac Garden - Lilac Garden \/ Pink \/ XS","public_title":"Lilac Garden \/ Pink \/ XS","sku":"P-CUS-LILG0"},{"id":42153089106001,"price":3700,"name":"Custom Lilac Garden - Lilac Garden \/ Pink \/ S\/M","public_title":"Lilac Garden \/ Pink \/ S\/M","sku":"P-CUS-LILG1"},{"id":42153089138769,"price":3700,"name":"Custom Lilac Garden - Lilac Garden \/ Pink \/ M\/L","public_title":"Lilac Garden \/ Pink \/ M\/L","sku":"P-CUS-LILG2"},{"id":42153089171537,"price":3700,"name":"Custom Lilac Garden - Lilac Garden \/ Pink \/ L\/XL","public_title":"Lilac Garden \/ Pink \/ L\/XL","sku":"P-CUS-LILG3"},{"id":58591363432529,"price":3700,"name":"Custom Lilac Garden - Lilac Garden \/ Lavender \/ XXS","public_title":"Lilac Garden \/ Lavender \/ XXS","sku":"L-CUS-LILGX"},{"id":58591363465297,"price":3700,"name":"Custom Lilac Garden - Lilac Garden \/ Lavender \/ XS","public_title":"Lilac Garden \/ Lavender \/ XS","sku":"L-CUS-LILG0"},{"id":58591363498065,"price":3700,"name":"Custom Lilac Garden - Lilac Garden \/ Lavender \/ S\/M","public_title":"Lilac Garden \/ Lavender \/ S\/M","sku":"L-CUS-LILG1"},{"id":58591363530833,"price":3700,"name":"Custom Lilac Garden - Lilac Garden \/ Lavender \/ M\/L","public_title":"Lilac Garden \/ Lavender \/ M\/L","sku":"L-CUS-LILG2"},{"id":58591363563601,"price":3700,"name":"Custom Lilac Garden - Lilac Garden \/ Lavender \/ L\/XL","public_title":"Lilac Garden \/ Lavender \/ L\/XL","sku":"L-CUS-LILG3"},{"id":59266928148561,"price":3700,"name":"Custom Lilac Garden - Lilac Garden \/ Blue \/ XXS","public_title":"Lilac Garden \/ Blue \/ XXS","sku":"BLU-CUS-LILGX"},{"id":59266928181329,"price":3700,"name":"Custom Lilac Garden - Lilac Garden \/ Blue \/ XS","public_title":"Lilac Garden \/ Blue \/ XS","sku":"BLU-CUS-LILG0"},{"id":59266928214097,"price":3700,"name":"Custom Lilac Garden - Lilac Garden \/ Blue \/ S\/M","public_title":"Lilac Garden \/ Blue \/ S\/M","sku":"BLU-CUS-LILG1"},{"id":59266928246865,"price":3700,"name":"Custom Lilac Garden - Lilac Garden \/ Blue \/ M\/L","public_title":"Lilac Garden \/ Blue \/ M\/L","sku":"BLU-CUS-LILG2"},{"id":59266928279633,"price":3700,"name":"Custom Lilac Garden - Lilac Garden \/ Blue \/ L\/XL","public_title":"Lilac Garden \/ Blue \/ L\/XL","sku":"BLU-CUS-LILG3"}
2831,{"id":58320634642513,"price":5000,"name":"Custom Lilac Garden - Lilac Garden \/ Gold \/ XXS","public_title":"Lilac Garden \/ Gold \/ XXS","sku":"G-CUS-LILGX"},{"id":41721399279697,"price":5000,"name":"Custom Lilac Garden - Lilac Garden \/ Gold \/ XS","public_title":"Lilac Garden \/ Gold \/ XS","sku":"G-CUS-LILG0"},{"id":41721399312465,"price":5000,"name":"Custom Lilac Garden - Lilac Garden \/ Gold \/ S\/M","public_title":"Lilac Garden \/ Gold \/ S\/M","sku":"G-CUS-LILG1"},{"id":41721399345233,"price":5000,"name":"Custom Lilac Garden - Lilac Garden \/ Gold \/ M\/L","public_title":"Lilac Garden \/ Gold \/ M\/L","sku":"G-CUS-LILG2"},{"id":41721399378001,"price":5000,"name":"Custom Lilac Garden - Lilac Garden \/ Gold \/ L\/XL","public_title":"Lilac Garden \/ Gold \/ L\/XL","sku":"G-CUS-LILG3"}],"remote":false},{"id":7764245643345,"gid":"gid:\/\/shopify\/Product\/7764245643345","vendor":"JoinUS","type":"Custom","handle":"custom-calm-waters","variants":[{"id":58320677797969,"price":3500,"name":"Custom Calm Waters - Calm Waters \/ White \/ XXS","public_title":"Calm Waters \/ White \/ XXS","sku":"W-CUS-MTD-CMWX"},{"id":42365245784145,"price":3500,"name":"Custom Calm Waters - Calm Waters \/ White \/ XS","public_title":"Calm Waters \/ White \/ XS","sku":"W-CUS-MTD-CMW0"},{"id":42365245816913,"price":3500,"name":"Custom Calm Waters - Calm Waters \/ White \/ S\/M","public_title":"Calm Waters \/ White \/ S\/M","sku":"W-CUS-MTD-CMW1"},{"id":42365245849681,"price":3500,"name":"Custom Calm Waters - Calm Waters \/ White \/ M\/L","public_title":"Calm Waters \/ White \/ M\/L","sku":"W-CUS-MTD-CMW2"},{"id":42365245882449,"price":3500,"name":"Custom Calm Waters - Calm Waters \/ White \/ L\/XL","public_title":"Calm Waters \/ White \/ L\/XL","sku":"W-CUS-MTD-CMW3"},{"id":58320677830737,"price":3500,"name":"Custom Calm Waters - Calm Waters \/ Black \/ XXS","public_title":"Calm Waters \/ Black \/ XXS","sku":"B-CUS-MTD-CMWX"},{"id":42366033625169,"price":3500,"name":"Custom Calm Waters - Calm Waters \/ Black \/ XS","public_title":"Calm Waters \/ Black \/ XS","
2831sku":"B-CUS-MTD-CMW0"},{"id":42366033657937,"price":3500,"name":"Custom Calm Waters - Calm Waters \/ Black \/ S\/M","public_title":"Calm Waters \/ Black \/ S\/M","sku":"B-CUS-MTD-CMW1"},{"id":42366033690705,"price":3500,"name":"Custom Calm Waters - Calm Waters \/ Black \/ M\/L","public_title":"Calm Waters \/ Black \/ M\/L","sku":"B-CUS-MTD-CMW2"},{"id":42366033723473,"price":3500,"name":"Custom Calm Waters - Calm Waters \/ Black \/ L\/XL","public_title":"Calm Waters \/ Black \/ L\/XL","sku":"B-CUS-MTD-CMW3"},{"id":58320677863505,"price":3700,"name":"Custom Calm Waters - Calm Waters \/ Pink \/ XXS","public_title":"Calm Waters \/ Pink \/ XXS","sku":"P-CUS-MTD-CMWX"},{"id":42366033494097,"price":3700,"name":"Custom Calm Waters - Calm Waters \/ Pink \/ XS","public_title":"Calm Waters \/ Pink \/ XS","sku":"P-CUS-MTD-CMW0"},{"id":42366033526865,"price":3700,"name":"Custom Calm Waters - Calm Waters \/ Pink \/ S\/M","public_title":"Calm Waters \/ Pink \/ S\/M","sku":"P-CUS-MTD-CMW1"},{"id":42366033559633,"price":3700,"name":"Custom Calm Waters - Calm Waters \/ Pink \/ M\/L","public_title":"Calm Waters \/ Pink \/ M\/L","sku":"P-CUS-MTD-CMW2"},{"id":42366033592401,"price":3700,"name":"Custom Calm Waters - Calm Waters \/ Pink \/ L\/XL","public_title":"Calm Waters \/ Pink \/ L\/XL","sku":"P-CUS-MTD-CMW3"},{"id":58620696789073,"price":3700,"name":"Custom Calm Waters - Calm Waters \/ Lavender \/ XXS","public_title":"Calm Waters \/ Lavender \/ XXS","sku":"L-CUS-MTD-CMWX"},{"id":58620696821841,"price":3700,"name":"Custom Calm Waters - Calm Waters \/ Lavender \/ XS","public_title":"Calm Waters \/ Lavender \/ XS","sku":"L-CUS-MTD-CMW0"},{"id":58620696854609,"price":3700,"name":"Custom Calm Waters - Calm Waters \/ Lavender \/ S\/M","public_title":"Calm Waters \/ Lavender \/ S\/M","sku":"L-CUS-MTD-CMW1"},{"id":58620696887377,"price":3700,"name":"Custom Calm Waters - Calm Waters \/ Lavender \/ M\/L","public_title":"Calm Waters \/ Lavender \/ M\/L","sku":"L-CUS-MTD-CMW2"},{"id":58620696920145,"price":3700,"name":"Custom Calm Waters - Calm Waters \/ Lavender \/ L\/XL","public_title":"Calm Waters \/ Lavender \/ L\/XL","sku":"L-CUS-MTD-CMW3"},{"id":59266901016657,"price":3700,"name":"Custom Calm Waters - Calm Waters \/ Blue \/ XXS","public_title":"Calm Waters \/ Blue \/ XXS","sku":"BLU-CUS-MTD-CMWX"},{"id":59266901049425,"price":3700,"name":"Custom Calm Waters - Calm Waters \/ Blue \/ XS","public_title":"Calm Waters \/ Blue \/ XS","sku":"BLU-CUS-MTD-CMW0"},{"id":59266901082193,"price":3700,"name":"Custom Calm Waters - Calm Waters \/ Blue \/ S\/M","public_title":"Calm Waters \/ Blue \/ S\/M","sku":"BLU-CUS-MTD-CMW1"},{"id":59266901114961,"price":3700,"name":"Custom Calm Waters - Calm Waters \/ Blue \/ M\/L","public_title":"Calm Waters \/ Blue \/ M\/L","sku":"BLU-CUS-MTD-CMW2"},{"id":59266901147729,"price":3700,"name":"Custom Calm Waters - Calm Waters \/ Blue \/ L\/XL","public_title":"Calm Waters \/ Blue \/ L\/XL","sku":"BLU-CUS-MTD-CMW3"}
2831,{"id":58320677896273,"price":5000,"name":"Custom Calm Waters - Calm Waters \/ Gold \/ XXS","public_title":"Calm Waters \/ Gold \/ XXS","sku":"G-CUS-MTD-CMWX"},{"id":42366033756241,"price":5000,"name":"Custom Calm Waters - Calm Waters \/ Gold \/ XS","public_title":"Calm Waters \/ Gold \/ XS","sku":"G-CUS-MTD-CMW0"},{"id":42366033789009,"price":5000,"name":"Custom Calm Waters - Calm Waters \/ Gold \/ S\/M","public_title":"Calm Waters \/ Gold \/ S\/M","sku":"G-CUS-MTD-CMW1"},{"id":42366033821777,"price":5000,"name":"Custom Calm Waters - Calm Waters \/ Gold \/ M\/L","public_title":"Calm Waters \/ Gold \/ M\/L","sku":"G-CUS-MTD-CMW2"},{"id":42366033854545,"price":5000,"name":"Custom Calm Waters - Calm Waters \/ Gold \/ L\/XL","public_title":"Calm Waters \/ Gold \/ L\/XL","sku":"G-CUS-MTD-CMW3"}],"remote":false},{"id":7223304650833,"gid":"gid:\/\/shopify\/Product\/7223304650833","vendor":"Imperial","type":"LWP Core","handle":"breathe-your-faves-leveled-up-1","variants":[{"id":40770451669073,"price":2500,"name":"Breathe - Cotton Clouds \/ XS","public_title":"Cotton Clouds \/ XS","sku":"SPC-BRE-CTC0"},{"id":40770451701841,"price":2500,"name":"Breathe - Cotton Clouds \/ S\/M","public_title":"Cotton Clouds \/ S\/M","sku":"SPC-BRE-CTC1"},{"id":40770451734609,"price":2500,"name":"Breathe - Cotton Clouds \/ M\/L","public_title":"Cotton Clouds \/ M\/L","sku":"SPC-BRE-CTC2"},{"id":40770451767377,"price":2500,"name":"Breathe - Cotton Clouds \/ L\/XL","public_title":"Cotton Clouds \/ L\/XL","sku":"SPC-BRE-CTC3"}],"remote":false},{"id":7087087583313,"gid":"gid:\/\/shopify\/Product\/7087087583313","vendor":"Imperial","type":"Capsule","handle":"fearless","variants":[{"id":40631910301777,"price":2500,"name":"Fearless - Purple Haze \/ XS","public_title":"Purple Haze \/ XS","sku":"TS-FEA-PHZ0"},{"id":40353398620241,"price":2500,"name":"Fearless - Purple Haze \/ S\/M","public_title":"Purple Haze \/ S\/M","sku":"TS-FEA-PHZ1"},{"id":40353398653009,"price":2500,"name":"Fearless - Purple Haze \/ M\/L","public_title":"Purple Haze \/ M\/L","sku":"TS-FEA-PHZ2"},{"id":40631910334545,"price":2500,"name":"Fearless - Purple Haze \/ L\/XL","public_title":"Purple Haze \/ L\/XL","sku":"TS-FEA-PHZ3"}],"remote":false},{"id":7594585161809,"gid":"gid:\/\/shopify\/Product\/7594585161809","vendor":"Imperial","type":"Custom","handle":"custom-sherbert","variants":[{"id":58320636706897,"price":3500,"name":"Custom Sherbert - Sherbert \/ White \/ XXS","public_title":"Sherbert \/ White \/ XXS","sku":"W-CUS-SHRX"},{"id":41721399836753,"price":3500,"name":"Custom Sherbert - Sherbert \/ White \/ XS","public_title":"Sherbert \/ White \/ XS","sku":"W-CUS-SHR0"},{"id":41721399869521,"price":3500,"name":"Custom Sherbert - Sherbert \/ White \/ S\/M","public_title":"Sherbert \/ White \/ S\/M","sku":"W-CUS-SHR1"},{"id":41721399902289,"price":3500,"name":"Custom Sherbert - Sherbert \/ White \/ M\/L","public_title":"Sherbert \/ White \/ M\/L","sku":"W-CUS-SHR2"},{"id":41721399935057,"price":3500,"name":"Custom Sherbert - Sherbert \/ White \/ L\/XL","public_title":"Sherbert \/ White \/ L\/XL","sku":"W-CUS-SHR3"},{"id":58320636739665,"price":3500,"name":"Custom Sherbert - Sherbert \/ Black \/ XXS","public_title":"Sherbert \/ Black \/ XXS","sku":"B-CUS-SHRX"},{"id":41721399967825,"price":3500,"name":"Custom Sherbert - Sherbert \/ Black \/ XS","public_title":"Sherbert \/ Black \/ XS","
2831sku":"B-CUS-SHR0"},{"id":41721400000593,"price":3500,"name":"Custom Sherbert - Sherbert \/ Black \/ S\/M","public_title":"Sherbert \/ Black \/ S\/M","sku":"B-CUS-SHR1"},{"id":41721400033361,"price":3500,"name":"Custom Sherbert - Sherbert \/ Black \/ M\/L","public_title":"Sherbert \/ Black \/ M\/L","sku":"B-CUS-SHR2"},{"id":41721400066129,"price":3500,"name":"Custom Sherbert - Sherbert \/ Black \/ L\/XL","public_title":"Sherbert \/ Black \/ L\/XL","sku":"B-CUS-SHR3"},{"id":58320636772433,"price":3700,"name":"Custom Sherbert - Sherbert \/ Pink \/ XXS","public_title":"Sherbert \/ Pink \/ XXS","sku":"P-CUS-SHRX"},{"id":42153059876945,"price":3700,"name":"Custom Sherbert - Sherbert \/ Pink \/ XS","public_title":"Sherbert \/ Pink \/ XS","sku":"P-CUS-SHR0"},{"id":42153059909713,"price":3700,"name":"Custom Sherbert - Sherbert \/ Pink \/ S\/M","public_title":"Sherbert \/ Pink \/ S\/M","sku":"P-CUS-SHR1"},{"id":42153059942481,"price":3700,"name":"Custom Sherbert - Sherbert \/ Pink \/ M\/L","public_title":"Sherbert \/ Pink \/ M\/L","sku":"P-CUS-SHR2"},{"id":42153059975249,"price":3700,"name":"Custom Sherbert - Sherbert \/ Pink \/ L\/XL","public_title":"Sherbert \/ Pink \/ L\/XL","sku":"P-CUS-SHR3"},{"id":58619573403729,"price":3700,"name":"Custom Sherbert - Sherbert \/ Lavender \/ XXS","public_title":"Sherbert \/ Lavender \/ XXS","sku":"L-CUS-SHRX"},{"id":58619573436497,"price":3700,"name":"Custom Sherbert - Sherbert \/ Lavender \/ XS","public_title":"Sherbert \/ Lavender \/ XS","sku":"L-CUS-SHR0"},{"id":58619573469265,"price":3700,"name":"Custom Sherbert - Sherbert \/ Lavender \/ S\/M","public_title":"Sherbert \/ Lavender \/ S\/M","sku":"L-CUS-SHR1"},{"id":58619573502033,"price":3700,"name":"Custom Sherbert - Sherbert \/ Lavender \/ M\/L","public_title":"Sherbert \/ Lavender \/ M\/L","sku":"L-CUS-SHR2"},{"id":58619573534801,"price":3700,"name":"Custom Sherbert - Sherbert \/ Lavender \/ L\/XL","public_title":"Sherbert \/ Lavender \/ L\/XL","sku":"L-CUS-SHR3"},{"id":59266936635473,"price":3700,"name":"Custom Sherbert - Sherbert \/ Blue \/ XXS","public_title":"Sherbert \/ Blue \/ XXS","sku":"BLU-CUS-SHRX"},{"id":59266936668241,"price":3700,"name":"Custom Sherbert - Sherbert \/ Blue \/ XS","public_title":"Sherbert \/ Blue \/ XS","sku":"BLU-CUS-SHR0"},{"id":59266936701009,"price":3700,"name":"Custom Sherbert - Sherbert \/ Blue \/ S\/M","public_title":"Sherbert \/ Blue \/ S\/M","sku":"BLU-CUS-SHR1"},{"id":59266936733777,"price":3700,"name":"Custom Sherbert - Sherbert \/ Blue \/ M\/L","public_title":"Sherbert \/ Blue \/ M\/L","sku":"BLU-CUS-SHR2"},{"id":59266936766545,"price":3700,"name":"Custom Sherbert - Sherbert \/ Blue \/ L\/XL","public_title":"Sherbert \/ Blue \/ L\/XL","sku":"BLU-CUS-SHR3"}
2831,{"id":58320636805201,"price":5000,"name":"Custom Sherbert - Sherbert \/ Gold \/ XXS","public_title":"Sherbert \/ Gold \/ XXS","sku":"G-CUS-SHRX"},{"id":41721400098897,"price":5000,"name":"Custom Sherbert - Sherbert \/ Gold \/ XS","public_title":"Sherbert \/ Gold \/ XS","sku":"G-CUS-SHR0"},{"id":41721400131665,"price":5000,"name":"Custom Sherbert - Sherbert \/ Gold \/ S\/M","public_title":"Sherbert \/ Gold \/ S\/M","sku":"G-CUS-SHR1"},{"id":41721400164433,"price":5000,"name":"Custom Sherbert - Sherbert \/ Gold \/ M\/L","public_title":"Sherbert \/ Gold \/ M\/L","sku":"G-CUS-SHR2"},{"id":41721400197201,"price":5000,"name":"Custom Sherbert - Sherbert \/ Gold \/ L\/XL","public_title":"Sherbert \/ Gold \/ L\/XL","sku":"G-CUS-SHR3"}],"remote":false},{"id":7616623247441,"gid":"gid:\/\/shopify\/Product\/7616623247441","vendor":"Imperial","type":"Custom","handle":"custom-clear-crystal","variants":[{"id":58320604921937,"price":3500,"name":"Custom Clear Crystal - Clear Crystal \/ White \/ XXS","public_title":"Clear Crystal \/ White \/ XXS","sku":"LWPSB1-CRCLALWTXXS"},{"id":41788009906257,"price":3500,"name":"Custom Clear Crystal - Clear Crystal \/ White \/ XS","public_title":"Clear Crystal \/ White \/ XS","sku":"LWPSB1-CRCLALWTXS"},{"id":41788009939025,"price":3500,"name":"Custom Clear Crystal - Clear Crystal \/ White \/ S\/M","public_title":"Clear Crystal \/ White \/ S\/M","sku":"LWPSB1-CRCLALWTSM"},{"id":41788009971793,"price":3500,"name":"Custom Clear Crystal - Clear Crystal \/ White \/ M\/L","public_title":"Clear Crystal \/ White \/ M\/L","sku":"LWPSB1-CRCLALWTML"},{"id":41788010004561,"price":3500,"name":"Custom Clear Crystal - Clear Crystal \/ White \/ L\/XL","public_title":"Clear Crystal \/ White \/ L\/XL","sku":"LWPSB1-CRCLALWTLXL"},{"id":58320604954705,"price":3500,"name":"Custom Clear Crystal - Clear Crystal \/ Black \/ XXS","public_title":"Clear Crystal \/ Black \/ XXS","sku":"B-CUS-CLRX"},{"id":41788010070097,"price":3500,"name":"Custom Clear Crystal - Clear Crystal \/ Black \/ XS","public_title":"Clear Crystal \/ Black \/ XS","
2831sku":"B-CUS-CLR0"},{"id":41788010102865,"price":3500,"name":"Custom Clear Crystal - Clear Crystal \/ Black \/ S\/M","public_title":"Clear Crystal \/ Black \/ S\/M","sku":"B-CUS-CLR1"},{"id":41788010135633,"price":3500,"name":"Custom Clear Crystal - Clear Crystal \/ Black \/ M\/L","public_title":"Clear Crystal \/ Black \/ M\/L","sku":"B-CUS-CLR2"},{"id":41788010201169,"price":3500,"name":"Custom Clear Crystal - Clear Crystal \/ Black \/ L\/XL","public_title":"Clear Crystal \/ Black \/ L\/XL","sku":"B-CUS-CLR3"},{"id":58320604987473,"price":3700,"name":"Custom Clear Crystal - Clear Crystal \/ Pink \/ XXS","public_title":"Clear Crystal \/ Pink \/ XXS","sku":"P-CUS-CLRX"},{"id":42153064431697,"price":3700,"name":"Custom Clear Crystal - Clear Crystal \/ Pink \/ XS","public_title":"Clear Crystal \/ Pink \/ XS","sku":"P-CUS-CLR0"},{"id":42153064464465,"price":3700,"name":"Custom Clear Crystal - Clear Crystal \/ Pink \/ S\/M","public_title":"Clear Crystal \/ Pink \/ S\/M","sku":"P-CUS-CLR1"},{"id":42153064497233,"price":3700,"name":"Custom Clear Crystal - Clear Crystal \/ Pink \/ M\/L","public_title":"Clear Crystal \/ Pink \/ M\/L","sku":"P-CUS-CLR2"},{"id":42153064530001,"price":3700,"name":"Custom Clear Crystal - Clear Crystal \/ Pink \/ L\/XL","public_title":"Clear Crystal \/ Pink \/ L\/XL","sku":"P-CUS-CLR3"},{"id":58591343280209,"price":3700,"name":"Custom Clear Crystal - Clear Crystal \/ Lavender \/ XXS","public_title":"Clear Crystal \/ Lavender \/ XXS","sku":"L-CUS-CLRX"},{"id":58591343312977,"price":3700,"name":"Custom Clear Crystal - Clear Crystal \/ Lavender \/ XS","public_title":"Clear Crystal \/ Lavender \/ XS","sku":"L-CUS-CLR0"},{"id":58591343345745,"price":3700,"name":"Custom Clear Crystal - Clear Crystal \/ Lavender \/ S\/M","public_title":"Clear Crystal \/ Lavender \/ S\/M","sku":"L-CUS-CLR1"},{"id":58591343378513,"price":3700,"name":"Custom Clear Crystal - Clear Crystal \/ Lavender \/ M\/L","public_title":"Clear Crystal \/ Lavender \/ M\/L","sku":"L-CUS-CLR2"},{"id":58591343411281,"price":3700,"name":"Custom Clear Crystal - Clear Crystal \/ Lavender \/ L\/XL","public_title":"Clear Crystal \/ Lavender \/ L\/XL","sku":"L-CUS-CLR3"},{"id":59266909012049,"price":3700,"name":"Custom Clear Crystal - Clear Crystal \/ Blue \/ XXS","public_title":"Clear Crystal \/ Blue \/ XXS","sku":"BLU-CUS-CLRX"},{"id":59266909044817,"price":3700,"name":"Custom Clear Crystal - Clear Crystal \/ Blue \/ XS","public_title":"Clear Crystal \/ Blue \/ XS","sku":"BLU-CUS-CLR0"},{"id":59266909077585,"price":3700,"name":"Custom Clear Crystal - Clear Crystal \/ Blue \/ S\/M","public_title":"Clear Crystal \/ Blue \/ S\/M","sku":"BLU-CUS-CLR1"},{"id":59266909110353,"price":3700,"name":"Custom Clear Crystal - Clear Crystal \/ Blue \/ M\/L","public_title":"Clear Crystal \/ Blue \/ M\/L","sku":"BLU-CUS-CLR2"},{"id":59266909143121,"price":3700,"name":"Custom Clear Crystal - Clear Crystal \/ Blue \/ L\/XL","public_title":"Clear Crystal \/ Blue \/ L\/XL","sku":"BLU-CUS-CLR3"}
2831,{"id":58320605020241,"price":5000,"name":"Custom Clear Crystal - Clear Crystal \/ Gold \/ XXS","public_title":"Clear Crystal \/ Gold \/ XXS","sku":"G-CUS-CLRX"},{"id":41788010233937,"price":5000,"name":"Custom Clear Crystal - Clear Crystal \/ Gold \/ XS","public_title":"Clear Crystal \/ Gold \/ XS","sku":"G-CUS-CLR0"},{"id":41788010266705,"price":5000,"name":"Custom Clear Crystal - Clear Crystal \/ Gold \/ S\/M","public_title":"Clear Crystal \/ Gold \/ S\/M","sku":"G-CUS-CLR1"},{"id":41788010299473,"price":5000,"name":"Custom Clear Crystal - Clear Crystal \/ Gold \/ M\/L","public_title":"Clear Crystal \/ Gold \/ M\/L","sku":"G-CUS-CLR2"},{"id":41788010332241,"price":5000,"name":"Custom Clear Crystal - Clear Crystal \/ Gold \/ L\/XL","public_title":"Clear Crystal \/ Gold \/ L\/XL","sku":"G-CUS-CLR3"}],"remote":false},{"id":7188347519057,"gid":"gid:\/\/shopify\/Product\/7188347519057","vendor":"Imperial","type":"LWP Core","handle":"grateful-best-of","variants":[{"id":40617041690705,"price":2500,"name":"Grateful - Shiny Things \/ No Charm \/ XS","public_title":"Shiny Things \/ No Charm \/ XS","sku":"CW-GRA-SHT0"},{"id":40617041723473,"price":2500,"name":"Grateful - Shiny Things \/ No Charm \/ S\/M","public_title":"Shiny Things \/ No Charm \/ S\/M","sku":"CW-GRA-SHT1"},{"id":40617041756241,"price":2500,"name":"Grateful - Shiny Things \/ No Charm \/ M\/L","public_title":"Shiny Things \/ No Charm \/ M\/L","sku":"CW-GRA-SHT2"},{"id":40617041789009,"price":2500,"name":"Grateful - Shiny Things \/ No Charm \/ L\/XL","public_title":"Shiny Things \/ No Charm \/ L\/XL","sku":"CW-GRA-SHT3"},{"id":59482351992913,"price":3500,"name":"Grateful - Shiny Things \/ Puffy Heart \/ XS","public_title":"Shiny Things \/ Puffy Heart \/ XS","sku":"BST-GRH-BUN0"},{"id":59482352025681,"price":3500,"name":"Grateful - Shiny Things \/ Puffy Heart \/ S\/M","public_title":"Shiny Things \/ Puffy Heart \/ S\/M","sku":"BST-GRH-BUN1"},{"id":59482352058449,"price":3500,"name":"Grateful - Shiny Things \/ Puffy Heart \/ M\/L","public_title":"Shiny Things \/ Puffy Heart \/ M\/L","sku":"BST-GRH-BUN2"},{"id":59482352091217,"price":3500,"name":"Grateful - Shiny Things \/ Puffy Heart \/ L\/XL","public_title":"Shiny Things \/ Puffy Heart \/ L\/XL","sku":"BST-GRH-BUN3"},{"id":59482352123985,"price":3500,"name":"Grateful - Shiny Things \/ Bow \/ XS","public_title":"Shiny Things \/ Bow \/ XS","
2831sku":"BST-GRB-BUN0"},{"id":59482352156753,"price":3500,"name":"Grateful - Shiny Things \/ Bow \/ S\/M","public_title":"Shiny Things \/ Bow \/ S\/M","sku":"BST-GRB-BUN1"},{"id":59482352189521,"price":3500,"name":"Grateful - Shiny Things \/ Bow \/ M\/L","public_title":"Shiny Things \/ Bow \/ M\/L","sku":"BST-GRB-BUN2"},{"id":59482352222289,"price":3500,"name":"Grateful - Shiny Things \/ Bow \/ L\/XL","public_title":"Shiny Things \/ Bow \/ L\/XL","sku":"BST-GRB-BUN3"},{"id":59482352255057,"price":3500,"name":"Grateful - Shiny Things \/ Puffy Star \/ XS","public_title":"Shiny Things \/ Puffy Star \/ XS","sku":"BST-GRS-BUN0"},{"id":59482352287825,"price":3500,"name":"Grateful - Shiny Things \/ Puffy Star \/ S\/M","public_title":"Shiny Things \/ Puffy Star \/ S\/M","sku":"BST-GRS-BUN1"},{"id":59482352320593,"price":3500,"name":"Grateful - Shiny Things \/ Puffy Star \/ M\/L","public_title":"Shiny Things \/ Puffy Star \/ M\/L","sku":"BST-GRS-BUN2"},{"id":59482352353361,"price":3500,"name":"Grateful - Shiny Things \/ Puffy Star \/ L\/XL","public_title":"Shiny Things \/ Puffy Star \/ L\/XL","sku":"BST-GRS-BUN3"}],"remote":false},{"id":7188346994769,"gid":"gid:\/\/shopify\/Product\/7188346994769","vendor":"JoinUS","type":"LWP Core","handle":"blessed-bracelet","variants":[{"id":40617036709969,"price":2500,"name":"Blessed - Midnight \/ No Charm \/ XS","public_title":"Midnight \/ No Charm \/ XS","sku":"CW-BLE-MID0"},{"id":40617036742737,"price":2500,"name":"Blessed - Midnight \/ No Charm \/ S\/M","public_title":"Midnight \/ No Charm \/ S\/M","sku":"CW-BLE-MID1"},{"id":40617036775505,"price":2500,"name":"Blessed - Midnight \/ No Charm \/ M\/L","public_title":"Midnight \/ No Charm \/ M\/L","sku":"CW-BLE-MID2"},{"id":40617036808273,"price":2500,"name":"Blessed - Midnight \/ No Charm \/ L\/XL","public_title":"Midnight \/ No Charm \/ L\/XL","sku":"CW-BLE-MID3"},{"id":58582611656785,"price":3500,"name":"Blessed - Midnight \/ Cross Charm \/ XS","public_title":"Midnight \/ Cross Charm \/ XS","sku":"BLE-CHR-BUN0"},{"id":58582611689553,"price":3500,"name":"Blessed - Midnight \/ Cross Charm \/ S\/M","public_title":"Midnight \/ Cross Charm \/ S\/M","sku":"BLE-CHR-BUN1"},{"id":58582611722321,"price":3500,"name":"Blessed - Midnight \/ Cross Charm \/ M\/L","public_title":"Midnight \/ Cross Charm \/ M\/L","sku":"BLE-CHR-BUN2"},{"id":58582611755089,"price":3500,"name":"Blessed - Midnight \/ Cross Charm \/ L\/XL","public_title":"Midnight \/ Cross Charm \/ L\/XL","sku":"BLE-CHR-BUN3"},{"id":58582611787857,"price":3500,"name":"Blessed - Midnight \/ Star of David Charm \/ XS","public_title":"Midnight \/ Star of David Charm \/ XS","sku":"FTH-BES-BUN0"},{"id":58582611820625,"price":3500,"name":"Blessed - Midnight \/ Star of David Charm \/ S\/M","public_title":"Midnight \/ Star of David Charm \/ S\/M","sku":"FTH-BES-BUN1"},{"id":58582611853393,"price":3500,"name":"Blessed - Midnight \/ Star of David Charm \/ M\/L","public_title":"Midnight \/ Star of David Charm \/ M\/L","sku":"FTH-BES-BUN2"},{"id":58582611886161,"price":3500,"name":"Blessed - Midnight \/ Star of David Charm \/ L\/XL","public_title":"Midnight \/ Star of David Charm \/ L\/XL","sku":"FTH-BES-BUN3"}],"remote":false},{"id":7770537787473,"gid":"gid:\/\/shopify\/Product\/7770537787473","vendor":"Packaging Specialties","type":"Packaging","handle":"gift-box-pouch","variants":[{"id":42383675424849,"price":800,"name":"Gift Box \u0026 Pouch","public_title":null,"sku":"GIFTBOX-SLIDER"}],"remote":false},{"id":7675954561105,"gid":"gid:\/\/shopify\/Product\/7675954561105","vendor":"Little Words Project","type":"Beading Table","handle":"the-bead-bar-disney-springs","variants":[{"id":42003503743057,"price":3500,"name":"The Bead Bar®- Disney Springs - Single - $35","public_title":"Single - $35","sku":"BB-SIN-DIS"}
2831,{"id":42003503775825,"price":5000,"name":"The Bead Bar®- Disney Springs - Double - $50","public_title":"Double - $50","sku":"BB-DOU-DIS"},{"id":42003503808593,"price":6500,"name":"The Bead Bar®- Disney Springs - Triple - $65","public_title":"Triple - $65","sku":"BB-TRI-DIS"},{"id":42003503841361,"price":2500,"name":"The Bead Bar®- Disney Springs - Little-r - $25","public_title":"Little-r - $25","sku":"BB-LTR-DIS"}],"remote":false},{"id":7758312767569,"gid":"gid:\/\/shopify\/Product\/7758312767569","vendor":"JoinUS","type":"Capsule","handle":"boy-mom-family-bracelet","variants":[{"id":42343722057809,"price":2500,"name":"Boy Mom- Family - Blue Dynamite \/ White \/ XS","public_title":"Blue Dynamite \/ White \/ XS","sku":"MTD-BOY-BDY0"},{"id":42343689617489,"price":2500,"name":"Boy Mom- Family - Blue Dynamite \/ White \/ S\/M","public_title":"Blue Dynamite \/ White \/ S\/M","sku":"MTD-BOY-BDY1"},{"id":42343689650257,"price":2500,"name":"Boy Mom- Family - Blue Dynamite \/ White \/ M\/L","public_title":"Blue Dynamite \/ White \/ M\/L","sku":"MTD-BOY-BDY2"},{"id":42343722090577,"price":2500,"name":"Boy Mom- Family - Blue Dynamite \/ White \/ L\/XL","public_title":"Blue Dynamite \/ White \/ L\/XL","sku":"MTD-BOY-BDY3"},{"id":59276736626769,"price":4000,"name":"Boy Mom- Family - Blue Dynamite \/ Gold \/ XS","public_title":"Blue Dynamite \/ Gold \/ XS","sku":"G-MTD-BOY-BDY0"},{"id":59276736659537,"price":4000,"name":"Boy Mom- Family - Blue Dynamite \/ Gold \/ S\/M","public_title":"Blue Dynamite \/ Gold \/ S\/M","sku":"G-MTD-BOY-BDY1"},{"id":59276736692305,"price":4000,"name":"Boy Mom- Family - Blue Dynamite \/ Gold \/ M\/L","public_title":"Blue Dynamite \/ Gold \/ M\/L","sku":"G-MTD-BOY-BDY2"},{"id":59276736725073,"price":4000,"name":"Boy Mom- Family - Blue Dynamite \/ Gold \/ L\/XL","public_title":"Blue Dynamite \/ Gold \/ L\/XL","sku":"G-MTD-BOY-BDY3"}],"remote":false},{"id":7675951186001,"gid":"gid:\/\/shopify\/Product\/7675951186001","vendor":"Little Words Project","type":"Beading Table","handle":"the-bead-bar-boston","variants":[{"id":42003490996305,"price":3500,"name":"The Bead Bar®- Boston - Single","public_title":"Single","sku":"BB-SIN-BOS"}
2831,{"id":42003491029073,"price":5000,"name":"The Bead Bar®- Boston - Double","public_title":"Double","sku":"BB-DOU-BOS"},{"id":42003491061841,"price":6500,"name":"The Bead Bar®- Boston - Triple","public_title":"Triple","sku":"BB-TRI-BOS"},{"id":42003491094609,"price":2500,"name":"The Bead Bar®- Boston - Little","public_title":"Little","sku":"BB-LTR-BOS"}],"remote":false},{"id":7726648852561,"gid":"gid:\/\/shopify\/Product\/7726648852561","vendor":"JoinUS","type":"Custom","handle":"custom-peachy-love","variants":[{"id":58320677437521,"price":3500,"name":"Custom Peachy Love - Peachy Love \/ White \/ XXS","public_title":"Peachy Love \/ White \/ XXS","sku":"W-CUS-MTD-PYLX"},{"id":42212192354385,"price":3500,"name":"Custom Peachy Love - Peachy Love \/ White \/ XS","public_title":"Peachy Love \/ White \/ XS","sku":"W-CUS-MTD-PYL0"},{"id":42212192387153,"price":3500,"name":"Custom Peachy Love - Peachy Love \/ White \/ S\/M","public_title":"Peachy Love \/ White \/ S\/M","sku":"W-CUS-MTD-PYL1"},{"id":42212192419921,"price":3500,"name":"Custom Peachy Love - Peachy Love \/ White \/ M\/L","public_title":"Peachy Love \/ White \/ M\/L","sku":"W-CUS-MTD-PYL2"},{"id":42212192452689,"price":3500,"name":"Custom Peachy Love - Peachy Love \/ White \/ L\/XL","public_title":"Peachy Love \/ White \/ L\/XL","sku":"W-CUS-MTD-PYL3"},{"id":58320677470289,"price":3500,"name":"Custom Peachy Love - Peachy Love \/ Black \/ XXS","public_title":"Peachy Love \/ Black \/ XXS","sku":"B-CUS-MTD-PYLX"},{"id":42366029725777,"price":3500,"name":"Custom Peachy Love - Peachy Love \/ Black \/ XS","public_title":"Peachy Love \/ Black \/ XS","
2831sku":"B-CUS-MTD-PYL0"},{"id":42366029758545,"price":3500,"name":"Custom Peachy Love - Peachy Love \/ Black \/ S\/M","public_title":"Peachy Love \/ Black \/ S\/M","sku":"B-CUS-MTD-PYL1"},{"id":42366029791313,"price":3500,"name":"Custom Peachy Love - Peachy Love \/ Black \/ M\/L","public_title":"Peachy Love \/ Black \/ M\/L","sku":"B-CUS-MTD-PYL2"},{"id":42366029824081,"price":3500,"name":"Custom Peachy Love - Peachy Love \/ Black \/ L\/XL","public_title":"Peachy Love \/ Black \/ L\/XL","sku":"B-CUS-MTD-PYL3"},{"id":58320677503057,"price":3700,"name":"Custom Peachy Love - Peachy Love \/ Pink \/ XXS","public_title":"Peachy Love \/ Pink \/ XXS","sku":"P-CUS-MTD-PYLX"},{"id":42366029594705,"price":3700,"name":"Custom Peachy Love - Peachy Love \/ Pink \/ XS","public_title":"Peachy Love \/ Pink \/ XS","sku":"P-CUS-MTD-PYL0"},{"id":42366029627473,"price":3700,"name":"Custom Peachy Love - Peachy Love \/ Pink \/ S\/M","public_title":"Peachy Love \/ Pink \/ S\/M","sku":"P-CUS-MTD-PYL1"},{"id":42366029660241,"price":3700,"name":"Custom Peachy Love - Peachy Love \/ Pink \/ M\/L","public_title":"Peachy Love \/ Pink \/ M\/L","sku":"P-CUS-MTD-PYL2"},{"id":42366029693009,"price":3700,"name":"Custom Peachy Love - Peachy Love \/ Pink \/ L\/XL","public_title":"Peachy Love \/ Pink \/ L\/XL","sku":"P-CUS-MTD-PYL3"},{"id":58620648161361,"price":3700,"name":"Custom Peachy Love - Peachy Love \/ Lavender \/ XXS","public_title":"Peachy Love \/ Lavender \/ XXS","sku":"L-CUS-MTD-PYLX"},{"id":58620648194129,"price":3700,"name":"Custom Peachy Love - Peachy Love \/ Lavender \/ XS","public_title":"Peachy Love \/ Lavender \/ XS","sku":"L-CUS-MTD-PYL0"},{"id":58620648226897,"price":3700,"name":"Custom Peachy Love - Peachy Love \/ Lavender \/ S\/M","public_title":"Peachy Love \/ Lavender \/ S\/M","sku":"L-CUS-MTD-PYL1"},{"id":58620648259665,"price":3700,"name":"Custom Peachy Love - Peachy Love \/ Lavender \/ M\/L","public_title":"Peachy Love \/ Lavender \/ M\/L","sku":"L-CUS-MTD-PYL2"},{"id":58620648292433,"price":3700,"name":"Custom Peachy Love - Peachy Love \/ Lavender \/ L\/XL","public_title":"Peachy Love \/ Lavender \/ L\/XL","sku":"L-CUS-MTD-PYL3"},{"id":59266934997073,"price":3700,"name":"Custom Peachy Love - Peachy Love \/ Blue \/ XXS","public_title":"Peachy Love \/ Blue \/ XXS","sku":"BLU-CUS-MTD-PYLX"},{"id":59266935029841,"price":3700,"name":"Custom Peachy Love - Peachy Love \/ Blue \/ XS","public_title":"Peachy Love \/ Blue \/ XS","sku":"BLU-CUS-MTD-PYL0"},{"id":59266935062609,"price":3700,"name":"Custom Peachy Love - Peachy Love \/ Blue \/ S\/M","public_title":"Peachy Love \/ Blue \/ S\/M","sku":"BLU-CUS-MTD-PYL1"},{"id":59266935095377,"price":3700,"name":"Custom Peachy Love - Peachy Love \/ Blue \/ M\/L","public_title":"Peachy Love \/ Blue \/ M\/L","sku":"BLU-CUS-MTD-PYL2"},{"id":59266935128145,"price":3700,"name":"Custom Peachy Love - Peachy Love \/ Blue \/ L\/XL","public_title":"Peachy Love \/ Blue \/ L\/XL","sku":"BLU-CUS-MTD-PYL3"}
2831,{"id":58320677535825,"price":5000,"name":"Custom Peachy Love - Peachy Love \/ Gold \/ XXS","public_title":"Peachy Love \/ Gold \/ XXS","sku":"G-CUS-MTD-PYLX"},{"id":42366029856849,"price":5000,"name":"Custom Peachy Love - Peachy Love \/ Gold \/ XS","public_title":"Peachy Love \/ Gold \/ XS","sku":"G-CUS-MTD-PYL0"},{"id":42366029889617,"price":5000,"name":"Custom Peachy Love - Peachy Love \/ Gold \/ S\/M","public_title":"Peachy Love \/ Gold \/ S\/M","sku":"G-CUS-MTD-PYL1"},{"id":42366029922385,"price":5000,"name":"Custom Peachy Love - Peachy Love \/ Gold \/ M\/L","public_title":"Peachy Love \/ Gold \/ M\/L","sku":"G-CUS-MTD-PYL2"},{"id":42366029955153,"price":5000,"name":"Custom Peachy Love - Peachy Love \/ Gold \/ L\/XL","public_title":"Peachy Love \/ Gold \/ L\/XL","sku":"G-CUS-MTD-PYL3"}],"remote":false},{"id":7764238827601,"gid":"gid:\/\/shopify\/Product\/7764238827601","vendor":"China Creations","type":"Charm","handle":"cz-letter-charm","variants":[{"id":42365202366545,"price":1600,"name":"CZ Letter Charm - A","public_title":"A","sku":"CHR-CZ-A"},{"id":42365202399313,"price":1600,"name":"CZ Letter Charm - B","public_title":"B","sku":"CHR-CZ-B"},{"id":42365202432081,"price":1600,"name":"CZ Letter Charm - C","public_title":"C","sku":"CHR-CZ-C"},{"id":42365202464849,"price":1600,"name":"CZ Letter Charm - D","public_title":"D","sku":"CHR-CZ-D"},{"id":42365202497617,"price":1600,"name":"CZ Letter Charm - E","public_title":"E","sku":"CHR-CZ-E"},{"id":42365202530385,"price":1600,"name":"CZ Letter Charm - F","public_title":"F","sku":"CHR-CZ-F"},{"id":42365202563153,"price":1600,"name":"CZ Letter Charm - G","public_title":"G","sku":"CHR-CZ-G"},{"id":42365202595921,"price":1600,"name":"CZ Letter Charm - H","public_title":"H","sku":"CHR-CZ-H"},{"id":42365202628689,"price":1600,"name":"CZ Letter Charm - I","public_title":"I","sku":"CHR-CZ-I"},{"id":42365202661457,"price":1600,"name":"CZ Letter Charm - J","public_title":"J","sku":"CHR-CZ-J"},{"id":42365202694225,"price":1600,"name":"CZ Letter Charm - K","public_title":"K","sku":"CHR-CZ-K"},{"id":42365202726993,"price":1600,"name":"CZ Letter Charm - L","public_title":"L","sku":"CHR-CZ-L"},{"id":42365202759761,"price":1600,"name":"CZ Letter Charm - M","public_title":"M","sku":"CHR-CZ-M"},{"id":42365202792529,"price":1600,"name":"CZ Letter Charm - N","public_title":"N","sku":"CHR-CZ-N"},{"id":42365202825297,"price":1600,"name":"CZ Letter Charm - O","public_title":"O","sku":"CHR-CZ-O"},{"id":42365202858065,"price":1600,"name":"CZ Letter Charm - P","public_title":"P","sku":"CHR-CZ-P"},{"id":42365202890833,"price":1600,"name":"CZ Letter Charm - Q","public_title":"Q","sku":"CHR-CZ-Q"},{"id":42365202923601,"price":1600,"name":"CZ Letter Charm - R","public_title":"R","sku":"CHR-CZ-R"},{"id":42365202956369,"price":1600,"name":"CZ Letter Charm - S","public_title":"S","sku":"CHR-CZ-S"},{"id":42365202989137,"price":1600,"name":"CZ Letter Charm - T","public_title":"T","sku":"CHR-CZ-T"},{"id":42365203021905,"price":1600,"name":"CZ Letter Charm - U","public_title":"U","sku":"CHR-CZ-U"},{"id":42365203054673,"price":1600,"name":"CZ Letter Charm - V","public_title":"V","sku":"CHR-CZ-V"},{"id":42365203087441,"price":1600,"name":"CZ Letter Charm - W","public_title":"W","sku":"CHR-CZ-W"},{"id":42365203120209,"price":1600,"name":"CZ Letter Charm - X","public_title":"X","sku":"CHR-CZ-X"},{"id":42365203152977,"price":1600,"name":"CZ Letter Charm - Y","public_title":"Y","sku":"CHR-CZ-Y"},{"id":42365203185745,"price":1600,"name":"CZ Letter Charm - Z","public_title":"Z","sku":"CHR-CZ-Z"}],"remote":false},{"id":7675953381457,"gid":"gid:\/\/shopify\/Product\/7675953381457","vendor":"Little Words Project","type":"Beading Table","handle":"the-bead-bar-tampa","variants":[{"id":42003498795089,"price":3500,"name":"The Bead Bar®- Tampa - Single","public_title":"Single","sku":"BB-SIN-TAM"}
2831,{"id":42003498827857,"price":5000,"name":"The Bead Bar®- Tampa - Double","public_title":"Double","sku":"BB-DOU-TAM"},{"id":42003498860625,"price":6500,"name":"The Bead Bar®- Tampa - Triple","public_title":"Triple","sku":"BB-TRI-TAM"},{"id":42003498893393,"price":2500,"name":"The Bead Bar®- Tampa - Little","public_title":"Little","sku":"BB-LTR-TAM"}],"remote":false},{"id":7631414526033,"gid":"gid:\/\/shopify\/Product\/7631414526033","vendor":"Imperial","type":"Charm","handle":"bow-charm","variants":[{"id":41851170488401,"price":1200,"name":"Bow Charm","public_title":null,"sku":"CHR-BOW"}],"remote":false},{"id":6829772341329,"gid":"gid:\/\/shopify\/Product\/6829772341329","vendor":"Imperial","type":"LWP Core","handle":"bride-1","variants":[{"id":40375068295249,"price":1500,"name":"Bride - Lace \/ XS","public_title":"Lace \/ XS","sku":"BRI-BRI-LAC0"},{"id":39821473448017,"price":1500,"name":"Bride - Lace \/ S\/M","public_title":"Lace \/ S\/M","sku":"BRI-BRI-LAC1"},{"id":39821473480785,"price":1500,"name":"Bride - Lace \/ M\/L","public_title":"Lace \/ M\/L","sku":"BRI-BRI-LAC2"}
2831,{"id":40375068328017,"price":1500,"name":"Bride - Lace \/ L\/XL","public_title":"Lace \/ L\/XL","sku":"BRI-BRI-LAC3"}],"remote":false},{"id":7739039252561,"gid":"gid:\/\/shopify\/Product\/7739039252561","vendor":"Little Words Project","type":"Beading Table","handle":"the-bead-bar-short-hills","variants":[{"id":42257020977233,"price":3500,"name":"The Bead Bar®- Short Hills - Single","public_title":"Single","sku":"BB-SIN-SH"},{"id":42257021010001,"price":5000,"name":"The Bead Bar®- Short Hills - Double","public_title":"Double","sku":"BB-DOU-SH"},{"id":42257021042769,"price":6500,"name":"The Bead Bar®- Short Hills - Triple","public_title":"Triple","sku":"BB-TRI-SH"},{"id":42257021075537,"price":2500,"name":"The Bead Bar®- Short Hills - Little","public_title":"Little","sku":"BB-LTR-SH"}],"remote":false},{"id":7631640690769,"gid":"gid:\/\/shopify\/Product\/7631640690769","vendor":"Imperial","type":"Charm","handle":"cross-charm","variants":[{"id":41852708257873,"price":1200,"name":"Cross Charm","public_title":null,"sku":"CHR-CRS"}],"remote":false},{"id":7666458099793,"gid":"gid:\/\/shopify\/Product\/7666458099793","vendor":"Imperial","type":"Charm","handle":"birthstones-charm","variants":[{"id":41965991690321,"price":1600,"name":"Birthstone Charm - January","public_title":"January","sku":"CHR-BS-JAN"},{"id":41965991723089,"price":1600,"name":"Birthstone Charm - February","public_title":"February","sku":"CHR-BS-FEB"},{"id":41965991755857,"price":1600,"name":"Birthstone Charm - March","public_title":"March","sku":"CHR-BS-MAR"},{"id":41965991788625,"price":1600,"name":"Birthstone Charm - April","public_title":"April","sku":"CHR-BS-APR"},{"id":41965991821393,"price":1600,"name":"Birthstone Charm - May","public_title":"May","sku":"CHR-BS-MAY"},{"id":41965991854161,"price":1600,"name":"Birthstone Charm - June","public_title":"June","sku":"CHR-BS-JUN"},{"id":41965991886929,"price":1600,"name":"Birthstone Charm - July","public_title":"July","sku":"CHR-BS-JUL"},{"id":41965991919697,"price":1600,"name":"Birthstone Charm - August","public_title":"August","sku":"CHR-BS-AUG"},{"id":41965991952465,"price":1600,"name":"Birthstone Charm - September","public_title":"September","sku":"CHR-BS-SEP"},{"id":41965991985233,"price":1600,"name":"Birthstone Charm - October","public_title":"October","sku":"CHR-BS-OCT"},{"id":41965992018001,"price":1600,"name":"Birthstone Charm - November","public_title":"November","sku":"CHR-BS-NOV"},{"id":41965992050769,"price":1600,"name":"Birthstone Charm - December","public_title":"December","sku":"CHR-BS-DEC"}],"remote":false},{"id":7758337114193,"gid":"gid:\/\/shopify\/Product\/7758337114193","vendor":"JoinUS","type":"Capsule","handle":"mama-family-bracelet","variants":[{"id":42344036794449,"price":2500,"name":"Mama- Family - Lullaby \/ XS","public_title":"Lullaby \/ XS","sku":"MTD-MAM-LUL0"},{"id":42344036827217,"price":2500,"name":"Mama- Family - Lullaby \/ S\/M","public_title":"Lullaby \/ S\/M","sku":"MTD-MAM-LUL1"},{"id":42344036859985,"price":2500,"name":"Mama- Family - Lullaby \/ M\/L","public_title":"Lullaby \/ M\/L","sku":"MTD-MAM-LUL2"},{"id":42344036892753,"price":2500,"name":"Mama- Family - Lullaby \/ L\/XL","public_title":"Lullaby \/ L\/XL","sku":"MTD-MAM-LUL3"}],"remote":false},{"id":7675952005201,"gid":"gid:\/\/shopify\/Product\/7675952005201","vendor":"Little Words Project","type":"Beading Table","handle":"the-bead-bar-long-branch","variants":[{"id":42003493945425,"price":3500,"name":"The Bead Bar®- Long Branch - Single","public_title":"Single","sku":"BB-SIN-PV"}
2831,{"id":42003493978193,"price":5000,"name":"The Bead Bar®- Long Branch - Double","public_title":"Double","sku":"BB-DOU-PV"},{"id":42003494010961,"price":6500,"name":"The Bead Bar®- Long Branch - Triple","public_title":"Triple","sku":"BB-TRI-PV"},{"id":42003494043729,"price":2500,"name":"The Bead Bar®- Long Branch - Little","public_title":"Little","sku":"BB-LTR-PV"}],"remote":false},{"id":7293641916497,"gid":"gid:\/\/shopify\/Product\/7293641916497","vendor":"Imperial","type":"Capsule","handle":"godmother-family","variants":[{"id":40972055150673,"price":2000,"name":"Godmother- Family - Morning Air \/ XS","public_title":"Morning Air \/ XS","sku":"FMC-GDM-MGA0"},{"id":40972055183441,"price":2000,"name":"Godmother- Family - Morning Air \/ S\/M","public_title":"Morning Air \/ S\/M","sku":"FMC-GDM-MGA1"},{"id":40972055216209,"price":2000,"name":"Godmother- Family - Morning Air \/ M\/L","public_title":"Morning Air \/ M\/L","sku":"FMC-GDM-MGA2"},{"id":40972055248977,"price":2000,"name":"Godmother- Family - Morning Air \/ L\/XL","public_title":"Morning Air \/ L\/XL","sku":"FMC-GDM-MGA3"}],"remote":false},{"id":6756547395665,"gid":"gid:\/\/shopify\/Product\/6756547395665","vendor":"Imperial","type":"LWP Core","handle":"my-person-friendship","variants":[{"id":40375066296401,"price":1000,"name":"My Person- Friendship - Orbit \/ XS","public_title":"Orbit \/ XS","sku":"BFF-MYP-ORB0"},{"id":39696258957393,"price":1000,"name":"My Person- Friendship - Orbit \/ S\/M","public_title":"Orbit \/ S\/M","sku":"BFF-MYP-ORB1"},{"id":39696258990161,"price":1000,"name":"My Person- Friendship - Orbit \/ M\/L","public_title":"Orbit \/ M\/L","sku":"BFF-MYP-ORB2"},{"id":40375066329169,"price":1000,"name":"My Person- Friendship - Orbit \/ L\/XL","public_title":"Orbit \/ L\/XL","sku":"BFF-MYP-ORB3"}],"remote":false},{"id":7594586636369,"gid":"gid:\/\/shopify\/Product\/7594586636369","vendor":"Imperial","type":"Custom","handle":"custom-golde
2831n-hour","variants":[{"id":58320642113617,"price":4500,"name":"Custom Golden Hour - Golden Hour \/ White \/ XXS","public_title":"Golden Hour \/ White \/ XXS","sku":"W-CUS-GLDHX"},{"id":41721402818641,"price":4500,"name":"Custom Golden Hour - Golden Hour \/ White \/ XS","public_title":"Golden Hour \/ White \/ XS","sku":"W-CUS-GLDH0"},{"id":41721402851409,"price":4500,"name":"Custom Golden Hour - Golden Hour \/ White \/ S\/M","public_title":"Golden Hour \/ White \/ S\/M","sku":"W-CUS-GLDH1"},{"id":41721402884177,"price":4500,"name":"Custom Golden Hour - Golden Hour \/ White \/ M\/L","public_title":"Golden Hour \/ White \/ M\/L","sku":"W-CUS-GLDH2"},{"id":41721402949713,"price":4500,"name":"Custom Golden Hour - Golden Hour \/ White \/ L\/XL","public_title":"Golden Hour \/ White \/ L\/XL","sku":"W-CUS-GLDH3"},{"id":58320642146385,"price":4500,"name":"Custom Golden Hour - Golden Hour \/ Black \/ XXS","public_title":"Golden Hour \/ Black \/ XXS","sku":"B-CUS-GLDHX"},{"id":41721402982481,"price":4500,"name":"Custom Golden Hour - Golden Hour \/ Black \/ XS","public_title":"Golden Hour \/ Black \/ XS","
2831sku":"B-CUS-GLDH0"},{"id":41721403015249,"price":4500,"name":"Custom Golden Hour - Golden Hour \/ Black \/ S\/M","public_title":"Golden Hour \/ Black \/ S\/M","sku":"B-CUS-GLDH1"},{"id":41721403048017,"price":4500,"name":"Custom Golden Hour - Golden Hour \/ Black \/ M\/L","public_title":"Golden Hour \/ Black \/ M\/L","sku":"B-CUS-GLDH2"},{"id":41721403080785,"price":4500,"name":"Custom Golden Hour - Golden Hour \/ Black \/ L\/XL","public_title":"Golden Hour \/ Black \/ L\/XL","sku":"B-CUS-GLDH3"},{"id":58320642179153,"price":4700,"name":"Custom Golden Hour - Golden Hour \/ Pink \/ XXS","public_title":"Golden Hour \/ Pink \/ XXS","sku":"P-CUS-GLDHX"},{"id":42153046376529,"price":4700,"name":"Custom Golden Hour - Golden Hour \/ Pink \/ XS","public_title":"Golden Hour \/ Pink \/ XS","sku":"P-CUS-GLDH0"},{"id":42153046409297,"price":4700,"name":"Custom Golden Hour - Golden Hour \/ Pink \/ S\/M","public_title":"Golden Hour \/ Pink \/ S\/M","sku":"P-CUS-GLDH1"},{"id":42153046442065,"price":4700,"name":"Custom Golden Hour - Golden Hour \/ Pink \/ M\/L","public_title":"Golden Hour \/ Pink \/ M\/L","sku":"P-CUS-GLDH2"},{"id":42153046474833,"price":4700,"name":"Custom Golden Hour - Golden Hour \/ Pink \/ L\/XL","public_title":"Golden Hour \/ Pink \/ L\/XL","sku":"P-CUS-GLDH3"},{"id":58591343902801,"price":4700,"name":"Custom Golden Hour - Golden Hour \/ Lavender \/ XXS","public_title":"Golden Hour \/ Lavender \/ XXS","sku":"L-CUS-GLDHX"},{"id":58591343935569,"price":4700,"name":"Custom Golden Hour - Golden Hour \/ Lavender \/ XS","public_title":"Golden Hour \/ Lavender \/ XS","sku":"L-CUS-GLDH0"},{"id":58591343968337,"price":4700,"name":"Custom Golden Hour - Golden Hour \/ Lavender \/ S\/M","public_title":"Golden Hour \/ Lavender \/ S\/M","sku":"L-CUS-GLDH1"},{"id":58591344001105,"price":4700,"name":"Custom Golden Hour - Golden Hour \/ Lavender \/ M\/L","public_title":"Golden Hour \/ Lavender \/ M\/L","sku":"L-CUS-GLDH2"},{"id":58591344033873,"price":4700,"name":"Custom Golden Hour - Golden Hour \/ Lavender \/ L\/XL","public_title":"Golden Hour \/ Lavender \/ L\/XL","sku":"L-CUS-GLDH3"},{"id":59266925625425,"price":4700,"name":"Custom Golden Hour - Golden Hour \/ Blue \/ XXS","public_title":"Golden Hour \/ Blue \/ XXS","sku":"BLU-CUS-GLDHX"},{"id":59266925658193,"price":4700,"name":"Custom Golden Hour - Golden Hour \/ Blue \/ XS","public_title":"Golden Hour \/ Blue \/ XS","sku":"BLU-CUS-GLDH0"},{"id":59266925690961,"price":4700,"name":"Custom Golden Hour - Golden Hour \/ Blue \/ S\/M","public_title":"Golden Hour \/ Blue \/ S\/M","sku":"BLU-CUS-GLDH1"},{"id":59266925723729,"price":4700,"name":"Custom Golden Hour - Golden Hour \/ Blue \/ M\/L","public_title":"Golden Hour \/ Blue \/ M\/L","sku":"BLU-CUS-GLDH2"},{"id":59266925756497,"price":4700,"name":"Custom Golden Hour - Golden Hour \/ Blue \/ L\/XL","public_title":"Golden Hour \/ Blue \/ L\/XL","sku":"BLU-CUS-GLDH3"},{"id":58320642211921,"price":6000,"name":"Custom Golden Hour - Golden Hour \/ Gold \/ XXS","public_title":"Golden Hour \/ Gold \/ XXS","sku":"G-CUS-GLDHX"},{"id":41721403113553,"price":6000,"name":"Custom Golden Hour - Golden Hour \/ Gold \/ XS","public_title":"Golden Hour \/ Gold \/ XS","sku":"G-CUS-GLDH0"},{"id":41721403146321,"price":6000,"name":"Custom Golden Hour - Golden Hour \/ Gold \/ S\/M","public_title":"Golden Hour \/ Gold \/ S\/M","sku":"G-CUS-GLDH1"},{"id":41721403179089,"price":6000,"name":"Custom Golden Hour - Golden Hour \/ Gold \/ M\/L","public_title":"Golden Hour \/ Gold \/ M\/L","sku":"G-CUS-GLDH2"},{"id":41721403211857,"price":6000,"name":"Custom Golden Hour - Golden Hour \/ Gold \/ L\/XL","public_title":"Golden Hour \/ Gold \/ L\/XL","sku":"G-CUS-GLDH3"}],"remote":false},{"id":7631595962449,"gid":"gid:\/\/shopify\/Product\/7631595962449","vendor":"Imperial","type":"Charm","handle":"puffy-paw-print-charm","variants":[{"id":41852411347025,"price":1200,"name":"Puffy Paw Print Charm","public_title":null,"sku":"CHR-PAW"}],"remote":false},{"id":7631438282833,"gid":"gid:\/\/shopify\/Product\/7631438282833","vendor":"Imperial","type":"Charm","handle":"puffy-heart-charm","variants":[{"id":41851309785169,"price":1200,"name":"Puffy Heart Charm","public_title":null,"sku":"CHR-PHEA"}],"remote":false},{"id":7758343143505,"gid":"gid:\/\/shopify\/Product\/7758343143505","vendor":"JoinUS","type":"Capsule","handle":"grandma-family-bracelet","variants":[{"id":42344117370961,"price":2500,"name":"Grandma- Family - Peachy Love \/ White \/ XS","public_title":"Peachy Love \/ White \/ XS","
2831sku":"MTD-GRA-PYL0"},{"id":42344117403729,"price":2500,"name":"Grandma- Family - Peachy Love \/ White \/ S\/M","public_title":"Peachy Love \/ White \/ S\/M","sku":"MTD-GRA-PYL1"},{"id":42344117436497,"price":2500,"name":"Grandma- Family - Peachy Love \/ White \/ M\/L","public_title":"Peachy Love \/ White \/ M\/L","sku":"MTD-GRA-PYL2"},{"id":42344117469265,"price":2500,"name":"Grandma- Family - Peachy Love \/ White \/ L\/XL","public_title":"Peachy Love \/ White \/ L\/XL","sku":"MTD-GRA-PYL3"},{"id":59276740034641,"price":4000,"name":"Grandma- Family - Peachy Love \/ Gold \/ XS","public_title":"Peachy Love \/ Gold \/ XS","sku":"G-MTD-GRA-PYL0"},{"id":59276740067409,"price":4000,"name":"Grandma- Family - Peachy Love \/ Gold \/ S\/M","public_title":"Peachy Love \/ Gold \/ S\/M","sku":"G-MTD-GRA-PYL1"},{"id":59276740100177,"price":4000,"name":"Grandma- Family - Peachy Love \/ Gold \/ M\/L","public_title":"Peachy Love \/ Gold \/ M\/L","sku":"G-MTD-GRA-PYL2"},{"id":59276740132945,"price":4000,"name":"Grandma- Family - Peachy Love \/ Gold \/ L\/XL","public_title":"Peachy Love \/ Gold \/ L\/XL","sku":"G-MTD-GRA-PYL3"}],"remote":false},{"id":7705151373393,"gid":"gid:\/\/shopify\/Product\/7705151373393","vendor":"Imperial","type":"Capsule","handle":"moon-back-love-club","variants":[{"id":42106290274385,"price":1800,"name":"Moon \u0026 Back - Moonlit Love \/ XS","public_title":"Moonlit Love \/ XS","sku":"VD-MAB-MLL0"},{"id":42106290307153,"price":1800,"name":"Moon \u0026 Back - Moonlit Love \/ S\/M","public_title":"Moonlit Love \/ S\/M","sku":"VD-MAB-MLL1"},{"id":42106290339921,"price":1800,"name":"Moon \u0026 Back - Moonlit Love \/ M\/L","public_title":"Moonlit Love \/ M\/L","sku":"VD-MAB-MLL2"},{"id":42106290372689,"price":1800,"name":"Moon \u0026 Back - Moonlit Love \/ L\/XL","public_title":"Moonlit Love \/ L\/XL","sku":"VD-MAB-MLL3"}],"remote":false},{"id":7454438064209,"gid":"gid:\/\/shopify\/Product\/7454438064209","vendor":"Imperial","type":"LWP Core","handle":"f-ck-cancer-cancer-prevention-2024","variants":[{"id":41366639935569,"price":3000,"name":"F*ck Cancer- Cancer Prevention - F*ck Cancer \/ No Charm \/ XS","public_title":"F*ck Cancer \/ No Charm \/ XS","sku":"LWBI-FKC-FKC0"},{"id":41366639968337,"price":3000,"name":"F*ck Cancer- Cancer Prevention - F*ck Cancer \/ No Charm \/ S\/M","public_title":"F*ck Cancer \/ No Charm \/ S\/M","sku":"LWBI-FKC-FKC1"},{"id":41366640001105,"price":3000,"name":"F*ck Cancer- Cancer Prevention - F*ck Cancer \/ No Charm \/ M\/L","public_title":"F*ck Cancer \/ No Charm \/ M\/L","sku":"LWBI-FKC-FKC2"},{"id":41366640033873,"price":3000,"name":"F*ck Cancer- Cancer Prevention - F*ck Cancer \/ No Charm \/ L\/XL","public_title":"F*ck Cancer \/ No Charm \/ L\/XL","sku":"LWBI-FKC-FKC3"}
2831,{"id":59056967876689,"price":4500,"name":"F*ck Cancer- Cancer Prevention - F*ck Cancer \/ Breast Cancer Ribbon \/ XS","public_title":"F*ck Cancer \/ Breast Cancer Ribbon \/ XS","sku":"BUN-FKC0"},{"id":59056967909457,"price":4500,"name":"F*ck Cancer- Cancer Prevention - F*ck Cancer \/ Breast Cancer Ribbon \/ S\/M","public_title":"F*ck Cancer \/ Breast Cancer Ribbon \/ S\/M","sku":"BUN-FKC1"},{"id":59056967942225,"price":4500,"name":"F*ck Cancer- Cancer Prevention - F*ck Cancer \/ Breast Cancer Ribbon \/ M\/L","public_title":"F*ck Cancer \/ Breast Cancer Ribbon \/ M\/L","sku":"BUN-FKC2"},{"id":59056967974993,"price":4500,"name":"F*ck Cancer- Cancer Prevention - F*ck Cancer \/ Breast Cancer Ribbon \/ L\/XL","public_title":"F*ck Cancer \/ Breast Cancer Ribbon \/ L\/XL","sku":"BUN-FKC3"},{"id":59056968007761,"price":4500,"name":"F*ck Cancer- Cancer Prevention - F*ck Cancer \/ Pediatric Cancer Ribbon \/ XS","public_title":"F*ck Cancer \/ Pediatric Cancer Ribbon \/ XS","sku":"BUN-FKCP0"},{"id":59056968040529,"price":4500,"name":"F*ck Cancer- Cancer Prevention - F*ck Cancer \/ Pediatric Cancer Ribbon \/ S\/M","public_title":"F*ck Cancer \/ Pediatric Cancer Ribbon \/ S\/M","sku":"BUN-FKCP1"}
2831,{"id":59056968073297,"price":4500,"name":"F*ck Cancer- Cancer Prevention - F*ck Cancer \/ Pediatric Cancer Ribbon \/ M\/L","public_title":"F*ck Cancer \/ Pediatric Cancer Ribbon \/ M\/L","sku":"BUN-FKCP2"},{"id":59056968106065,"price":4500,"name":"F*ck Cancer- Cancer Prevention - F*ck Cancer \/ Pediatric Cancer Ribbon \/ L\/XL","public_title":"F*ck Cancer \/ Pediatric Cancer Ribbon \/ L\/XL","sku":"BUN-FKCP3"},{"id":59056968138833,"price":4500,"name":"F*ck Cancer- Cancer Prevention - F*ck Cancer \/ Cancer Ribbon \/ XS","public_title":"F*ck Cancer \/ Cancer Ribbon \/ XS","sku":"BUN-FKCC0"},{"id":59056968171601,"price":4500,"name":"F*ck Cancer- Cancer Prevention - F*ck Cancer \/ Cancer Ribbon \/ S\/M","public_title":"F*ck Cancer \/ Cancer Ribbon \/ S\/M","sku":"BUN-FKCC1"},{"id":59056968204369,"price":4500,"name":"F*ck Cancer- Cancer Prevention - F*ck Cancer \/ Cancer Ribbon \/ M\/L","public_title":"F*ck Cancer \/ Cancer Ribbon \/ M\/L","sku":"BUN-FKCC2"},{"id":59056968237137,"price":4500,"name":"F*ck Cancer- Cancer Prevention - F*ck Cancer \/ Cancer Ribbon \/ L\/XL","public_title":"F*ck Cancer \/ Cancer Ribbon \/ L\/XL","sku":"BUN-FKCC3"}],"remote":false},{"id":7074483208273,"gid":"gid:\/\/shopify\/Product\/7074483208273","vendor":"Imperial","type":"LWP Core","handle":"mama-mini-mom-life","variants":[{"id":40325244846161,"price":4500,"n
2831ame":"Mama \u0026 Mini- Family - Cutie Pie \/ S\/M + Kid","public_title":"Cutie Pie \/ S\/M + Kid","sku":"MM-MAM-CTP1"},{"id":40325244878929,"price":4500,"name":"Mama \u0026 Mini- Family - Cutie Pie \/ M\/L + Kid","public_title":"Cutie Pie \/ M\/L + Kid","sku":"MM-MAM-CTP2"}],"remote":false},{"id":7764245315665,"gid":"gid:\/\/shopify\/Product\/7764245315665","vendor":"JoinUS","type":"Custom","handle":"custom-lullaby","variants":[{"id":58320676028497,"price":3500,"name":"Custom Lullaby - Lullaby \/ White \/ XXS","public_title":"Lullaby \/ White \/ XXS","sku":"W-CUS-MTD-LULX"},{"id":42365244604497,"price":3500,"name":"Custom Lullaby - Lullaby \/ White \/ XS","public_title":"Lullaby \/ White \/ XS","sku":"W-CUS-MTD-LUL0"},{"id":42365244637265,"price":3500,"name":"Custom Lullaby - Lullaby \/ White \/ S\/M","public_title":"Lullaby \/ White \/ S\/M","sku":"W-CUS-MTD-LUL1"},{"id":42365244670033,"price":3500,"name":"Custom Lullaby - Lullaby \/ White \/ M\/L","public_title":"Lullaby \/ White \/ M\/L","sku":"W-CUS-MTD-LUL2"},{"id":42365244702801,"price":3500,"name":"Custom Lullaby - Lullaby \/ White \/ L\/XL","public_title":"Lullaby \/ White \/ L\/XL","sku":"W-CUS-MTD-LUL3"}
2831,{"id":58320676126801,"price":5000,"name":"Custom Lullaby - Lullaby \/ Gold \/ XXS","public_title":"Lullaby \/ Gold \/ XXS","sku":"G-CUS-MTD-LULX"},{"id":42366034640977,"price":5000,"name":"Custom Lullaby - Lullaby \/ Gold \/ XS","public_title":"Lullaby \/ Gold \/ XS","sku":"G-CUS-MTD-LUL0"},{"id":42366034673745,"price":5000,"name":"Custom Lullaby - Lullaby \/ Gold \/ S\/M","public_title":"Lullaby \/ Gold \/ S\/M","sku":"G-CUS-MTD-LUL1"},{"id":42366034706513,"price":5000,"name":"Custom Lullaby - Lullaby \/ Gold \/ M\/L","public_title":"Lullaby \/ Gold \/ M\/L","sku":"G-CUS-MTD-LUL2"},{"id":42366034739281,"price":5000,"name":"Custom Lullaby - Lullaby \/ Gold \/ L\/XL","public_title":"Lullaby \/ Gold \/ L\/XL","sku":"G-CUS-MTD-LUL3"}],"remote":false},{"id":7803705851985,"gid":"gid:\/\/shopify\/Product\/7803705851985","vendor":"JoinUS","type":"Custom","handle":"custom-dreamy-rays","variants":[{"id":58320683302993,"price":3500,"name":"Custom Dreamy Rays - Dreamy Rays \/ White \/ XXS","public_title":"Dreamy Rays \/ White \/ XXS","sku":"W-CUS-DMRX"},{"id":42513317232721,"price":3500,"name":"Custom Dreamy Rays - Dreamy Rays \/ White \/ XS","public_title":"Dreamy Rays \/ White \/ XS","sku":"W-CUS-DMR0"},{"id":42513317265489,"price":3500,"name":"Custom Dreamy Rays - Dreamy Rays \/ White \/ S\/M","public_title":"Dreamy Rays \/ White \/ S\/M","sku":"W-CUS-DMR1"},{"id":42513317298257,"price":3500,"name":"Custom Dreamy Rays - Dreamy Rays \/ White \/ M\/L","public_title":"Dreamy Rays \/ White \/ M\/L","sku":"W-CUS-DMR2"},{"id":42513317331025,"price":3500,"name":"Custom Dreamy Rays - Dreamy Rays \/ White \/ L\/XL","public_title":"Dreamy Rays \/ White \/ L\/XL","sku":"W-CUS-DMR3"},{"id":58320683335761,"price":3500,"name":"Custom Dreamy Rays - Dreamy Rays \/ Black \/ XXS","public_title":"Dreamy Rays \/ Black \/ XXS","sku":"B-CUS-DMRX"},{"id":42513317494865,"price":3500,"name":"Custom Dreamy Rays - Dreamy Rays \/ Black \/ XS","public_title":"Dreamy Rays \/ Black \/ XS","
2831sku":"B-CUS-DMR0"},{"id":42513317527633,"price":3500,"name":"Custom Dreamy Rays - Dreamy Rays \/ Black \/ S\/M","public_title":"Dreamy Rays \/ Black \/ S\/M","sku":"B-CUS-DMR1"},{"id":42513317560401,"price":3500,"name":"Custom Dreamy Rays - Dreamy Rays \/ Black \/ M\/L","public_title":"Dreamy Rays \/ Black \/ M\/L","sku":"B-CUS-DMR2"},{"id":42513317593169,"price":3500,"name":"Custom Dreamy Rays - Dreamy Rays \/ Black \/ L\/XL","public_title":"Dreamy Rays \/ Black \/ L\/XL","sku":"B-CUS-DMR3"},{"id":58320683368529,"price":3700,"name":"Custom Dreamy Rays - Dreamy Rays \/ Pink \/ XXS","public_title":"Dreamy Rays \/ Pink \/ XXS","sku":"P-CUS-DMRX"},{"id":42513317363793,"price":3700,"name":"Custom Dreamy Rays - Dreamy Rays \/ Pink \/ XS","public_title":"Dreamy Rays \/ Pink \/ XS","sku":"P-CUS-DMR0"},{"id":42513317396561,"price":3700,"name":"Custom Dreamy Rays - Dreamy Rays \/ Pink \/ S\/M","public_title":"Dreamy Rays \/ Pink \/ S\/M","sku":"P-CUS-DMR1"},{"id":42513317429329,"price":3700,"name":"Custom Dreamy Rays - Dreamy Rays \/ Pink \/ M\/L","public_title":"Dreamy Rays \/ Pink \/ M\/L","sku":"P-CUS-DMR2"},{"id":42513317462097,"price":3700,"name":"Custom Dreamy Rays - Dreamy Rays \/ Pink \/ L\/XL","public_title":"Dreamy Rays \/ Pink \/ L\/XL","sku":"P-CUS-DMR3"},{"id":58591213158481,"price":3700,"name":"Custom Dreamy Rays - Dreamy Rays \/ Lavender \/ XXS","public_title":"Dreamy Rays \/ Lavender \/ XXS","sku":"L-CUS-DMRX"},{"id":58591213191249,"price":3700,"name":"Custom Dreamy Rays - Dreamy Rays \/ Lavender \/ XS","public_title":"Dreamy Rays \/ Lavender \/ XS","sku":"L-CUS-DMR0"},{"id":58591213224017,"price":3700,"name":"Custom Dreamy Rays - Dreamy Rays \/ Lavender \/ S\/M","public_title":"Dreamy Rays \/ Lavender \/ S\/M","sku":"L-CUS-DMR1"},{"id":58591213256785,"price":3700,"name":"Custom Dreamy Rays - Dreamy Rays \/ Lavender \/ M\/L","public_title":"Dreamy Rays \/ Lavender \/ M\/L","sku":"L-CUS-DMR2"},{"id":58591213289553,"price":3700,"name":"Custom Dreamy Rays - Dreamy Rays \/ Lavender \/ L\/XL","public_title":"Dreamy Rays \/ Lavender \/ L\/XL","sku":"L-CUS-DMR3"},{"id":59266910486609,"price":3700,"name":"Custom Dreamy Rays - Dreamy Rays \/ Blue \/ XXS","public_title":"Dreamy Rays \/ Blue \/ XXS","sku":"BLU-CUS-DMRX"},{"id":59266910519377,"price":3700,"name":"Custom Dreamy Rays - Dreamy Rays \/ Blue \/ XS","public_title":"Dreamy Rays \/ Blue \/ XS","sku":"BLU-CUS-DMR0"},{"id":59266910552145,"price":3700,"name":"Custom Dreamy Rays - Dreamy Rays \/ Blue \/ S\/M","public_title":"Dreamy Rays \/ Blue \/ S\/M","sku":"BLU-CUS-DMR1"},{"id":59266910584913,"price":3700,"name":"Custom Dreamy Rays - Dreamy Rays \/ Blue \/ M\/L","public_title":"Dreamy Rays \/ Blue \/ M\/L","sku":"BLU-CUS-DMR2"},{"id":59266910617681,"price":3700,"name":"Custom Dreamy Rays - Dreamy Rays \/ Blue \/ L\/XL","public_title":"Dreamy Rays \/ Blue \/ L\/XL","sku":"BLU-CUS-DMR3"}
2831,{"id":58320683401297,"price":5000,"name":"Custom Dreamy Rays - Dreamy Rays \/ Gold \/ XXS","public_title":"Dreamy Rays \/ Gold \/ XXS","sku":"G-CUS-DMRX"},{"id":42513317625937,"price":5000,"name":"Custom Dreamy Rays - Dreamy Rays \/ Gold \/ XS","public_title":"Dreamy Rays \/ Gold \/ XS","sku":"G-CUS-DMR0"},{"id":42513317658705,"price":5000,"name":"Custom Dreamy Rays - Dreamy Rays \/ Gold \/ S\/M","public_title":"Dreamy Rays \/ Gold \/ S\/M","sku":"G-CUS-DMR1"},{"id":42513317691473,"price":5000,"name":"Custom Dreamy Rays - Dreamy Rays \/ Gold \/ M\/L","public_title":"Dreamy Rays \/ Gold \/ M\/L","sku":"G-CUS-DMR2"},{"id":42513317724241,"price":5000,"name":"Custom Dreamy Rays - Dreamy Rays \/ Gold \/ L\/XL","public_title":"Dreamy Rays \/ Gold \/ L\/XL","sku":"G-CUS-DMR3"}],"remote":false},{"id":7758343766097,"gid":"gid:\/\/shopify\/Product\/7758343766097","vendor":"JoinUS","type":"Capsule","handle":"auntie-family-bracelet","variants":[{"id":42344125857873,"price":2500,"name":"Auntie- Family - Lavender Mist \/ White \/ XS","public_title":"Lavender Mist \/ White \/ XS","sku":"MTD-AUN-LVM0"},{"id":42344125890641,"price":2500,"name":"Auntie- Family - Lavender Mist \/ White \/ S\/M","public_title":"Lavender Mist \/ White \/ S\/M","sku":"MTD-AUN-LVM1"},{"id":42344125923409,"price":2500,"name":"Auntie- Family - Lavender Mist \/ White \/ M\/L","public_title":"Lavender Mist \/ White \/ M\/L","sku":"MTD-AUN-LVM2"},{"id":42344125956177,"price":2500,"name":"Auntie- Family - Lavender Mist \/ White \/ L\/XL","public_title":"Lavender Mist \/ White \/ L\/XL","sku":"MTD-AUN-LVM3"},{"id":59276784664657,"price":4000,"name":"Auntie- Family - Lavender Mist \/ Gold \/ XS","public_title":"Lavender Mist \/ Gold \/ XS","sku":"G-MTD-AUN-LVM0"},{"id":59276784697425,"price":4000,"name":"Auntie- Family - Lavender Mist \/ Gold \/ S\/M","public_title":"Lavender Mist \/ Gold \/ S\/M","sku":"G-MTD-AUN-LVM1"},{"id":59276784730193,"price":4000,"name":"Auntie- Family - Lavender Mist \/ Gold \/ M\/L","public_title":"Lavender Mist \/ Gold \/ M\/L","sku":"G-MTD-AUN-LVM2"},{"id":59276784762961,"price":4000,"name":"Auntie- Family - Lavender Mist \/ Gold \/ L\/XL","public_title":"Lavender Mist \/ Gold \/ L\/XL","sku":"G-MTD-AUN-LVM3"}],"remote":false},{"id":7675954987089,"gid":"gid:\/\/shopify\/Product\/7675954987089","vendor":"Little Words Project","type":"Beading Table","handle":"the-bead-bar-long-island","variants":[{"id":42003508428881,"price":3500,"name":"The Bead Bar®- Long Island - Single","public_title":"Single","sku":"BB-SIN-RF"}
2831,{"id":42003508461649,"price":5000,"name":"The Bead Bar®- Long Island - Double","public_title":"Double","sku":"BB-DOU-RF"},{"id":42003508494417,"price":6500,"name":"The Bead Bar®- Long Island - Triple","public_title":"Triple","sku":"BB-TRI-RF"},{"id":42003508527185,"price":2500,"name":"The Bead Bar®- Long Island - Little","public_title":"Little","sku":"BB-LTR-RF"}],"remote":false}],"page":{"pageType":"collection","resourceType":"collection","resourceId":173291110481,"requestId":"d3dbcf52-5844-4782-a8f1-03e80efafda5-1790962792"}}; 2832 for (var attr in meta) { 2833 window.ShopifyAnalytics.meta[attr] = meta[attr]; 2834 } 2835</script>
vendor: 1 bytes, line 2835
2835
2836<script class="analytics"> 2837 (function () { 2838 var customDocumentWrite = function(content) { 2839 var jquery = null; 2840 2841 if (window.jQuery) { 2842 jquery = window.jQuery; 2843 } else if (window.Checkout && window.Checkout.$) { 2844 jquery = window.Checkout.$; 2845 } 2846 2847 if (jquery) { 2848 jquery('body').append(content); 2849 } 2850 }; 2851 2852 var hasLoggedConversion = function(token) { 2853 if (token) { 2854 return document.cookie.indexOf('loggedConversion=' + token) !== -1; 2855 } 2856 return false; 2857 } 2858 2859 var setCookieIfConversion = function(token) { 2860 if (token) { 2861 var twoMonthsFromNow = new Date(Date.now()); 2862 twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2); 2863 2864 document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow; 2865 } 2866 } 2867 2868 var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || []; 2869 window.ShopifyAnalytics.lib.trekkie = window.trekkie; 2870 if (trekkie.integrations) { 2871 return; 2872 } 2873 trekkie.methods = [ 2874 'identify', 2875 'page', 2876 'ready', 2877 'track', 2878 'trackForm', 2879 'trackLink' 2880 ]; 2881 trekkie.factory = function(method) { 2882 return function() { 2883 var args = Array.prototype.slice.call(arguments); 2884 args.unshift(method); 2885 trekkie.push(args); 2886 if (method == 'track' || method == 'page') { 2887 var pageUrl; 2888 try { 2889 pageUrl = window.location.href; 2890 } catch (e) {} 2891 var pageReferrer; 2892 try { 2893 pageReferrer = document.referrer; 2894 } catch (e) {} 2895 try { 2896 if (window.__TREKKIE_SHIM_QUEUE == null) { 2897 window.__TREKKIE_SHIM_QUEUE = []; 2898 } 2899 window.__TREKKIE_SHIM_QUEUE.push({ 2900 from: 'trekkie-stub', 2901 method: method, 2902 args: args.slice(1), 2903 pageContext: { 2904 url: pageUrl, 2905 referrer: pageReferrer 2906 } 2907 }); 2908 } catch (e) { 2909 // no-op 2910 } 2911 } 2912 return trekkie; 2913 }; 2914 }; 2915 for (var i = 0; i < trekkie.methods.length; i++) { 2916 var key = trekkie.methods[i]; 2917 trekkie[key] = trekkie.factory(key); 2918 } 2919 trekkie.load = function(config) { 2920 trekkie.config = config || {}; 2921 trekkie.config.initialDocumentCookie = document.cookie; 2922 var first = document.getElementsByTagName('script')[0]; 2923var script = document.createElement('script'); 2924script.type = 'text/javascript'; 2925script.onerror = function(e) { 2926 var scriptFallback = document.createElement('script'); 2927 scriptFallback.type = 'text/javascript'; 2928 scriptFallback.onerror = function(error) { 2929 var Monorail = { 2930 produce: function produce(monorailDomain, schemaId, payload) { 2931 var currentMs = new Date().getTime(); 2932 var event = { 2933 schema_id: schemaId, 2934 payload: payload, 2935 metadata: { 2936 event_created_at_ms: currentMs, 2937 event_sent_at_ms: currentMs 2938 } 2939 }; 2940 return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event)); 2941 }, 2942 sendRequest: function sendRequest(endpointUrl, payload) { 2943 // Try the sendBeacon API 2944 if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) { 2945 var blobData = new window.Blob([payload], { 2946 type: 'text/plain' 2947 }); 2948 2949 if (window.navigator.sendBeacon(endpointUrl, blobData)) { 2950 return true; 2951 } // sendBeacon was not successful 2952 2953 } // XHR beacon 2954 2955 var xhr = new XMLHttpRequest(); 2956 2957 try { 2958 xhr.open('POST', endpointUrl); 2959 xhr.setRequestHeader('Content-Type', 'text/plain'); 2960 xhr.send(payload); 2961 } catch (e) { 2962 console.log(e); 2963 } 2964 2965 return false; 2966 }, 2967 isIos12: function isIos12() { 2968 return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1; 2969 } 2970 }; 2971 Monorail.produce('monorail-edge.shopifysvc.com', 2972 'trekkie_storefront_load_errors/1.1', 2973 {shop_id: 12599863, 2974 theme_id: 188681748561, 2975 app_name: "storefront", 2976 context_url: window.location.href, 2977 source_url: "//www.littlewordsproject.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js"}); 2978 2979 }; 2980 scriptFallback.async = true; 2981 scriptFallback.src = '//www.littlewordsproject.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js'; 2982 first.parentNode.insertBefore(scriptFallback, first); 2983}; 2984script.async = true; 2985script.src = '//www.littlewordsproject.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js'; 2986first.parentNode.insertBefore(script, first); 2987 2988 }; 2989 trekkie.load( 2990 {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":12599863,"isMerchantRequest":null,"themeId":188681748561,"themeCityHash":"1050394805278460096","contentLanguage":"en","currency":"USD","eventMetadataId":"f33577aa-74e0-4498-839b-f8a39ef9fb70"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain","enabledBetaFlags":["764d78cb","8450a54b","7ee89bf1","4c64608a"]},"Session Attribution":{},"S2S":{"facebookCapiEnabled":false,"source":"trekkie-storefront-renderer","apiClientId":580111}} 2991 ); 2992 2993 var loaded = false;
2994 trekkie.ready(function() { 2995 if (loaded) return; 2996 loaded = true; 2997 2998 window.ShopifyAnalytics.lib = window.trekkie; 2999 3000 var originalDocumentWrite = document.write; 3001 document.write = customDocumentWrite; 3002 try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {}; 3003 document.write = originalDocumentWrite; 3004 3005 var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/) 3006 var token = match? match[1]: undefined; 3007 if (!hasLoggedConversion(token)) { 3008 setCookieIfConversion(token); 3009 window.ShopifyAnalytics.lib.track("Viewed Product Category",{"currency":"USD","category":"Collection: shop","collectionName":"shop","collectionId":173291110481,"nonInteraction":true},undefined,undefined,{"shopifyEmitted":true}); 3010 } 3011 }); 3012 3013 window.ShopifyAnalytics.lib.page(null,{"pageType":"collection","resourceType":"collection","resourceId":173291110481,"requestId":"d3dbcf52-5844-4782-a8f1-03e80efafda5-1790962792","shopifyEmitted":true}); 3014 3015 var eventsListenerScript = document.createElement('script'); 3016 eventsListenerScript.async = true; 3017 eventsListenerScript.src = "//www.littlewordsproject.com/cdn/shopifycloud/storefront/assets/shop_events_listener-4e26a9ce.js"; 3018 document.getElementsByTagName('head')[0].appendChild(eventsListenerScript); 3019})();</script>
3019 3020
3020<script> 3021 if (!window.ga || (window.ga && typeof window.ga !== 'function')) { 3022 window.ga = function ga() { 3023 (window.ga.q = window.ga.q || []).push(arguments); 3024 if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') { 3025 window.Shopify.analytics.publish("ga_stub_called", {}, {sendTo: "google_osp_migration"}); 3026 } 3027 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."); 3028 }; 3029 if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') { 3030 window.Shopify.analytics.publish("ga_stub_initialized", {}, {sendTo: "google_osp_migration"}); 3031 } 3032 } 3033</script>
vendor: 1 bytes, line 3033
3033
3034<script 3035 defer 3036 src="https://www.littlewordsproject.com/cdn/shopifycloud/perf-kit/shopify-perf-kit-3.9.4.min.js" 3037 data-application="storefront-renderer" 3038 data-shop-id="12599863" 3039 data-render-region="gcp-us-central1" 3040 data-page-type="collection" 3041 data-theme-instance-id="188681748561" 3042 data-theme-name="Prestige" 3043 data-theme-version="7.3.2" 3044 data-monorail-region="shop_domain" 3045 data-resource-timing-sampling-rate="10" 3046 data-shs="true" 3047 data-shs-beacon="true" 3048 data-shs-export-with-fetch="true" 3049 data-shs-logs-sample-rate="1" 3050 data-shs-beacon-endpoint="https://www.littlewordsproject.com/api/collect" 3051></script>
3051 3052<meta name="shopify-y" content="80c25a9d-f0d0-4c59-b9c7-e19b256b52fb" data-expiration="1822520392000"><meta name="shopify-s" content="2d5df5db-8079-4558-8f68-f95928619be8" data-expiration="1790964592000"><meta name="new-cookie-storage-activated" content="t"> 3053</head> 3054 3055 3056 3057
3057<script defer src="https://d2zd0wa1vpt7j9.cloudfront.net/f8e75f07c789b9de/wwai_section_analytics.js"></script>
vendor: 1 bytes, line 3057
3057
3058<script defer src="https://d2zd0wa1vpt7j9.cloudfront.net/engagement_metrics_visualisation.js"></script>
3058 3059 3060 3061 3062 3063 <!-- Show dynamic Checkout --> 3064 <style> 3065 body shopify-accelerated-checkout-cart, body .shopify-payment-button, body shopify-accelerated-checkout { 3066 display: block !important; 3067 } 3068 </style> 3069 3070 3071 <body 3072 id="body" data-test-props="false" data-test-tab="false" data-test-13="false" data-test-14="false" 3073 data-test-15="false" class="features--button-transition features--zoom-image template-collection " 3074 gamification-data="false" 3075 data-test-badge="true" 3076 data-test-nav-stack = "false"><template id="drawer-default-template"> 3077 <div part="base"> 3078 <div part="overlay"></div> 3079 3080 <div part="content"> 3081 <header part="header"> 3082 <slot name="header"></slot> 3083 3084 <button type="button" is="dialog-close-button" part="close-button tap-area" aria-label="Close"><svg width="21" viewBox="0 0 23 23" fill="none" xmlns="http://www.w3.org/2000/svg"> 3085 <path d="M1 1L22 22" stroke="#0D0C22" stroke-linecap="round"/> 3086 <path d="M1 22L22 1" stroke="#0D0C22" stroke-linecap="round"/> 3087 </svg></button> 3088 </header> 3089 3090 <div part="body"> 3091 <slot></slot> 3092 </div> 3093 3094 <footer part="footer"> 3095 <slot name="footer"></slot> 3096 </footer> 3097 </div> 3098 </div> 3099</template><template id="modal-default-template"> 3100 <div part="base"> 3101 <div part="overlay"></div> 3102 3103 <div part="content"> 3104 <header part="header"> 3105 <slot name="header"></slot> 3106 3107 <button type="button" is="dialog-close-button" part="close-button tap-area" aria-label="Close"><svg aria-hidden="true" focusable="false" fill="none" width="14" class="icon icon-close" viewBox="0 0 16 16"> 3108 <path d="m1 1 14 14M1 15 15 1" stroke="currentColor" stroke-width="1.5"/> 3109 </svg> 3110 3111 </button> 3112 </header> 3113 3114 <div part="body"> 3115 <slot></slot> 3116 </div> 3117 </div> 3118 </div> 3119</template><template id="popover-default-template"> 3120 <div part="base"> 3121 <div part="overlay"></div> 3122 3123 <div part="content"> 3124 <header part="header"> 3125 <slot name="header"></slot> 3126 3127 <button type="button" is="dialog-close-button" part="close-button tap-area" aria-label="Close"><svg aria-hidden="true" focusable="false" fill="none" width="14" class="icon icon-close" viewBox="0 0 16 16"> 3128 <path d="m1 1 14 14M1 15 15 1" stroke="currentColor" stroke-width="1.5"/> 3129 </svg> 3130 3131 </button> 3132 </header> 3133 3134 <div part="body"> 3135 <slot></slot> 3136 </div> 3137 </div> 3138 </div> 3139</template><template id="header-search-default-template"> 3140 <div part="base"> 3141 <div part="overlay"></div> 3142 3143 <div part="content"> 3144 <slot></slot> 3145 </div> 3146 </div> 3147</template><template id="video-media-default-template"> 3148 <slot></slot> 3149 3150 <svg part="play-button" fill="none" width="48" height="48" viewBox="0 0 48 48"> 3151 <path fill-rule="evenodd" clip-rule="evenodd" d="M48 24c0 13.255-10.745 24-24 24S0 37.255 0 24 10.745 0 24 0s24 10.745 24 24Zm-18 0-9-6.6v13.2l9-6.6Z" fill="var(--play-button-background, #ffffff)"/> 3152 </svg> 3153</template><loading-bar class="loading-bar" aria-hidden="true"></loading-bar> 3154 <!-- Google Tag Manager (noscript) -->
vendor: 68 bytes, lines 3154-3155
3154 3155<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
3155GTM-5NMV6CV
vendor: 83 bytes, lines 3155-3156
3155" 3156height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
3157<!-- End Google Tag Manager (noscript) --> 3158 <a 3159 href="#main" 3160 allow-hash-change 3161 class="skip-to-content sr-only">Skip to content</a><!-- BEGIN sections: header-group --> 3162<aside id="shopify-section-sections--26985957425233__announcement-bar" class="shopify-section shopify-section-group-header-group shopify-section--announcement-bar always-visible"><style> 3163 :root { 3164 --announcement-bar-is-sticky: 1; 3165 }#shopify-section-sections--26985957425233__announcement-bar { 3166 position: sticky; 3167 top: 0; 3168 z-index: 5; 3169 } 3170 3171 .shopify-section--header ~ #shopify-section-sections--26985957425233__announcement-bar { 3172 top: calc(var(--header-is-sticky, 0) * var(--header-height, 0px)); 3173 }#shopify-section-sections--26985957425233__announcement-bar { 3174 --announcement-bar-font-size: 0.5625rem; 3175 } 3176 3177 @media screen and (min-width: 999px) { 3178 #shopify-section-sections--26985957425233__announcement-bar { 3179 --announcement-bar-font-size: 0.75rem; 3180 } 3181 } 3182 </style> 3183 3184 <height-observer variable="announcement-bar"> 3185 <div class="announcement-bar" style="--background: 196 217 251 ; background-color: rgb(var(--background));--text-color: 13 12 34; color: rgb(var(--text-color));--border-color:169 186 218;"><button type="button" is="carousel-prev-button" class="tap-area" aria-controls="carousel-sections--26985957425233__announcement-bar"> 3186 <span class="sr-only">Previous</span><svg aria-hidden="true" focusable="false" fill="none" width="12" class="icon icon-arrow-left icon--direction-aware" viewBox="0 0 16 18"> 3187 <path d="M11 1 3 9l8 8" stroke="currentColor" stroke-linecap="square"/> 3188 </svg></button><announcement-bar-carousel allow-swipe autoplay="5" id="carousel-sections--26985957425233__announcement-bar" class="announcement-bar__carousel visibility-hidden ff-text"><div class="prose heading d-flex slide-item is-selected " data-ea-tag=""> 3189 <span class=""></span> 3190 � 3191 <a href="/collections/kindfluencer-breast-cancer-awareness-collective" class="announcement-bar__link d-flex"> 3192 NEW BREAST CANCER AWARENESS COLLECTIVE 3193 <svg width="13" viewBox="0 0 13 13" fill="none"> 3194 <path d="M2.48633 6.35059H10.7363" stroke="#D6402C" stroke-linecap="round" stroke-linejoin="round"></path> 3195 <path d="M7.36133 2.94385L10.7363 6.35039L7.36133 9.75693" stroke="#D6402C" stroke-linecap="round" stroke-linejoin="round"></path> 3196 </svg> 3197 3198 </a> 3199 �</div><div class="prose heading d-flex slide-item " data-ea-tag=""> 3200 <span class=""></span> 3201 � 3202 <a href="/products/word-of-the-month-subscription" class="announcement-bar__link d-flex"> 3203 3204 OCTOBER'S WORD OF THE MONTH: SLOW DOWN 3205 3206 <svg width="13" viewBox="0 0 13 13" fill="none"> 3207 <path d="M2.48633 6.35059H10.7363" stroke="#D6402C" stroke-linecap="round" stroke-linejoin="round"></path> 3208 <path d="M7.36133 2.94385L10.7363 6.35039L7.36133 9.75693" stroke="#D6402C" stroke-linecap="round" stroke-linejoin="round"></path> 3209 </svg> 3210 3211 </a> 3212 �</div><div class="prose heading d-flex slide-item " data-ea-tag=""> 3213 <span class=""></span> 3214 � 3215 <a href="#" class="announcement-bar__link d-flex"> 3216 FREE US SHIPPING ON ALL ORDERS $60+ 3217 <svg width="13" viewBox="0 0 13 13" fill="none"> 3218 <path d="M2.48633 6.35059H10.7363" stroke="#D6402C" stroke-linecap="round" stroke-linejoin="round"></path> 3219 <path d="M7.36133 2.94385L10.7363 6.35039L7.36133 9.75693" stroke="#D6402C" stroke-linecap="round" stroke-linejoin="round"></path> 3220 </svg> 3221 3222 </a> 3223 �</div></announcement-bar-carousel><button type="button" is="carousel-next-button" class="tap-area" aria-controls="carousel-sections--26985957425233__announcement-bar"> 3224 <span class="sr-only">Next</span><svg aria-hidden="true" focusable="false" fill="none" width="12" class="icon icon-arrow-right icon--direction-aware" viewBox="0 0 16 18"> 3225 <path d="m5 17 8-8-8-8" stroke="currentColor" stroke-linecap="square"/> 3226 </svg></button> 3227 3228 </div> 3229 </height-observer> 3230 3231
3231<script> 3232 document.documentElement.style.setProperty('--announcement-bar-height', `${Math.round(document.getElementById('shopify-section-sections--26985957425233__announcement-bar').clientHeight)}px`); 3233 </script>
3233 3234 3235 �</aside><header id="shopify-section-sections--26985957425233__header" class="shopify-section shopify-section-group-header-group shopify-section--header always-visible"><style> 3236 :root { 3237 --header-is-sticky: 1; 3238 } 3239 3240 #shopify-section-sections--26985957425233__header { 3241 --header-grid: "primary-nav logo secondary-nav" / minmax(0, 1fr) auto minmax(0, 1fr); 3242 --header-padding-block: 1rem; 3243 --header-transparent-header-text-color: 255 255 255; 3244 --header-separation-border-color: 0 0 0 / 0; 3245 3246 position: relative; 3247 z-index: 5; 3248 } 3249 3250 3251 /* ---------- CUSTOM IMAGE (header.liquid AND side-menu-link.liquid) ---------- */ 3252 .convert__custom--buttom-a { 3253 display: none; 3254 } 3255 .convert__custom--buttom-b { 3256 display: block; 3257 } 3258 .custom__link--desktop { 3259 background-image: url('//www.littlewordsproject.com/cdn/shop/files/Group_2_2_1.png?v=1776108697'); 3260 background-size: 113px auto; 3261 background-repeat: no-repeat; 3262 background-position: center; 3263 width: 113px; 3264 padding-top: 40px; 3265 } 3266 /* ---------- CUSTOM IMAGE (header.liquid AND side-menu-link.liquid) ---------- */ 3267 .custom__link--desktop:hover { 3268 background-image: url('//www.littlewordsproject.com/cdn/shop/files/Group_3_93127e44-6867-4
3268692-9f84-6db0a1b292d3.png?v=1776108609'); 3269 } 3270 3271 .custom__link--mobile { 3272 background-image: url('//www.littlewordsproject.com/cdn/shop/files/Group_2_2_1.png?v=1776108697'); 3273 background-size: 170px auto !important; 3274 background-repeat: no-repeat; 3275 background-position: center; 3276 padding: 17px 0; 3277 width: 170px !important; 3278 height: 64px; 3279 } 3280 3281 @media screen and (min-width: 1000px) and (max-width:1250px) { 3282 .custom__link--desktop { 3283 background-size: 90px auto; 3284 width: 90px; 3285 padding-top: 30px; 3286 } 3287 } 3288 3289 @media screen and (min-width: 1000px) and (max-width:1600px) { 3290 .header__secondary-nav ul.h-stack { 3291 gap: 24px; 3292 } 3293 } 3294 3295 3296 @media screen and (min-width: 700px) { 3297 #shopify-section-sections--26985957425233__header { 3298 --header-padding-block: 1.6rem; 3299 } 3300 } 3301 3302 @media screen and (min-width: 1000px) { 3303 #shopify-section-sections--26985957425233__header {} 3304 }#shopify-section-sections--26985957425233__header { 3305 position: sticky; 3306 top: 0; 3307 } 3308 3309 .shopify-section--announcement-bar ~ #shopify-section-sections--26985957425233__header { 3310 top: calc(var(--announcement-bar-is-sticky, 0) * calc(var(--announcement-bar-height, 0px) - 1px)); 3311 }#shopify-section-sections--26985957425233__header { 3312 --header-logo-width: 55px; 3313 --header-logo-height: 41px; 3314 } 3315 3316 @media screen and (min-width: 700px) { 3317 #shopify-section-sections--26985957425233__header { 3318 --header-logo-width: 95px; 3319 --header-logo-height: 70px; 3320 } 3321 }</style> 3322 3323<height-observer variable="header"> 3324 <x-header class="header"> 3325 <a href="/" class="header__logo"><span class="sr-only">Little Words Project</span><img src="//www.littlewordsproject.com/cdn/shop/files/Black_LWP_Logo.png?v=1754684133&width=345" alt="" srcset="//www.littlewordsproject.com/cdn/shop/files/Black_LWP_Logo.png?v=1754684133&width=190 190w, //www.littlewordsproject.com/cdn/shop/files/Black_LWP_Logo.png?v=1754684133&width=285 285w" width="345" height="255" loading="eager" sizes="95px" class="header__logo-image"></a> 3326 3327<nav 3328 class="header__primary-nav " 3329 aria-label="Primary navigation" 3330 > 3331 <button 3332 class="sidebar-menu-toggle md:hidden" 3333 type="button" 3334 aria-controls="sidebar-menu" 3335 > 3336 <span class="sr-only">Open navigation menu</span><svg xmlns="http://www.w3.org/2000/svg" width="21" height="16" class="header__nav-icon nav-open icon icon-hamburger" viewBox="0 0 21 16" fill="none"> 3337 <path d="M1 1H20M1 8H20M1 15H20" stroke="black" stroke-linecap="round"/> 3338 </svg><svg xmlns="http://www.w3.org/2000/svg" width="17" height="17" class="header__nav-icon nav-close icon icon-hamburger-close" viewBox="0 0 17 17" fill="none"> 3339 <path d="M1 1L16 16" stroke="black" stroke-linecap="round"/> 3340 <path d="M1 16L16 1" stroke="black" stroke-linecap="round"/> 3341 </svg></button><ul class="contents unstyled-list md-max:hidden"> 3342 3343 <li class="header__primary-nav-item link-color_shop-by" data-title="Shop By"><details 3344 is="mega-menu-disclosure" 3345 class="header__menu-disclosure" 3346 follow-summary-link 3347 trigger="hover" 3348 > 3349 <summary 3350 data-follow-link="/collections/shop" 3351 class="h6 ff-text fw-sb typography-desktop-12--medium uppercase" 3352 > 3353 3354 3355 3356 3357 3358 3359 3360 3361 3362 3363 3364 3365 3366 3367 3368 3369 3370 3371 3372 3373 3374 3375 3376 Shop By 3377 3378 3379 3380 3381 3382 </summary><div class="mega-menu pb-80" > 3383 <div class="megamenu-wrapper h-stack gap-10 flex-grow align-start justify-between"> 3384 <div class="megamenu-links h-stack align-start flex-grow justify-between" style="--linklist-max-width: ;"><div class="megamenu-block megamenu-linklist v-stack gap-6"> 3385 <h6 class="mega-menu-link-heading ff-heading typography-desktop-21--large">Category</h6> 3386 <ul class="unstyled-list ff-text typography-desktop-16"> 3387 3388 <li> 3389 3390 3391 3392 3393 3394
3395 3396 3397 3398 3399 3400 3401 3402 3403 3404 3405 3406 3407 3408 3409 3410 3411 3412 3413 <a href="/collections/shop" class=""> 3414 Shop All 3415 </a> 3416 3417 3418 3419 </li> 3420 3421 <li> 3422 3423 3424 3425 3426 3427 3428 3429 3430 3431 3432 3433 3434 3435 3436 3437 3438 3439 3440 3441 3442 3443 3444 3445 3446 <a href="/collections/beaded-word-bracelets" class=""> 3447 Beaded Word Bracelets 3448 </a> 3449 3450 3451 3452 </li> 3453 3454 <li> 3455 3456 3457 3458 3459 3460 3461 3462 3463 3464 3465 3466 3467 3468 3469 3470 3471 3472 3473 3474 3475 3476 3477 3478 3479 <a href="/collections/layering-bracelets" class=""> 3480 Layering Bracelets 3481 </a> 3482 3483 3484 3485 </li> 3486 3487 <li> 3488 3489 3490 3491 3492 3493 3494 3495 3496 3497 3498 3499 3500 3501 3502 3503 3504 3505 3506 3507 3508 3509 3510 3511 3512 <a href="/collections/custom" class=""> 3513 Custom 3514 </a> 3515 3516 3517 3518 </li> 3519 3520 <li> 3521 3522 3523 3524 3525 3526 3527 3528 3529 3530 3531 3532 3533 3534 3535 3536 3537 3538 3539 3540 3541 3542 3543 3544 3545 <a href="/collections/charms-by-little-words-project" class=""> 3546 Charms 3547 </a> 3548 3549 3550 3551 </li> 3552 3553 <li> 3554 3555 3556 3557 3558 3559 3560 3561 3562 3563 3564 3565 3566 3567 3568 3569 3570 3571 3572 3573 3574 3575 3576 3577 3578 <a href="/collections/little-luxuries" class=""> 3579 Demi-Fine Little Luxuries 3580 </a> 3581 3582 3583 3584 </li> 3585 3586 <li> 3587 3588 3589 3590 3591 3592 3593 3594 3595 3596 3597 3598 3599 3600 3601 3602 3603 3604 3605 3606 3607 3608 3609 3610 3611 <a href="/collections/gift-sets-1" class=""> 3612 Gift Sets 3613 </a> 3614 3615 3616 3617 </li> 3618 3619 <li> 3620 3621 3622 3623 3624 3625 3626 3627 3628 3629 3630 3631 3632 3633 3634 3635 3636 3637 3638 3639 3640 3641 3642 3643 3644 <a href="/collections/bead-kits" class=""> 3645 Bead Kits 3646 </a> 3647 3648 3649 3650 </li> 3651 3652 <li> 3653 3654 3655 3656 3657 3658 3659 3660 3661 3662 3663 3664 3665 3666 3667 3668 3669 3670 3671 3672 3673 3674 3675 3676 3677 <a href="/collections/bag-charms" class=""> 3678 Bag Charms 3679 </a> 3680 3681 3682 3683 </li> 3684 3685 </ul> 3686 </div><div class="megamenu-block megamenu-linklist v-stack gap-6"> 3687 <h6 class="mega-menu-link-heading ff-heading typography-desktop-21--large">Collections</h6> 3688 <ul class="unstyled-list ff-text typography-desktop-16"> 3689 3690 <li> 3691 3692 3693 3694 3695 3696 3697 3698 3699 3700 3701 3702 3703 3704 3705 3706 3707 3708 3709 3710 3711 3712 3713 3714 3715 <a href="/collections/falling-into-place" class=""> 3716 Falling into Place 3717 </a> 3718 3719 3720 3721 </li> 3722 3723 <li> 3724 3725 3726 3727 3728 3729 3730 3731 3732 3733 3734 3735 3736 3737 3738 3739 3740 3741 3742 3743 3744 3745 3746 3747 3748 <a href="/collections/magic-hour" class=""> 3749 Magic Hour 3750 </a> 3751 3752 3753 3754 </li> 3755 3756 <li> 3757 3758 3759 3760 3761 3762 3763 3764 3765 3766 3767 3768 3769 3770 3771 3772 3773 3774 3775 3776 3777 3778 3779 3780 3781 <a href="/collections/whimsy-girl" class=""> 3782 Whimsy Girl 3783 </a> 3784 3785 3786 3787 </li> 3788 3789 <li> 3790 3791 3792 3793 3794 3795 3796 3797 3798 3799 3800 3801 3802 3803 3804 3805 3806 3807 3808 3809 3810 3811 3812 3813 3814 <a href="/collections/bolder-by-little-words-project" class=""> 3815 BOLDER 3816 </a> 3817 3818 3819 3820 </li> 3821 3822 <li> 3823 3824 3825 3826 3827 3828 3829 3830 3831 3832 3833 3834 3835 3836 3837 3838 3839 3840 3841 3842 3843 3844 3845 3846 3847 <a href="/collections/kids-collection" class=""> 3848 Kids Collection 3849 </a> 3850 3851 3852 3853 </li> 3854 3855 <li> 3856 3857 3858 3859 3860 3861 3862 3863 3864 3865 3866 3867 3868 3869 3870 3871 3872 3873 3874 3875 3876 3877 3878 3879 3880 <a href="/collections/faith-bracelets" class=""> 3881 Keep the Faith 3882 </a> 3883 3884 3885 3886 </li> 3887 3888 <li> 3889 3890 3891 3892 3893 3894 3895 3896 3897 3898 3899 3900 3901 3902 3903 3904 3905 3906 3907 3908 3909 3910 3911 3912 3913 <a href="/collections/family-collection" class=""> 3914 Friends & Family 3915 </a> 3916 3917 3918 3919 </li> 3920 3921 <li> 3922 3923 3924 3925 3926 3927 3928 3929 3930 3931 3932 3933 3934 3935 3936 3937 3938 3939 3940 3941 3942 3943 3944 3945 3946 <a href="/collections/founder-favorites" class=""> 3947 Founder Favorites 3948 </a> 3949 3950 3951 3952 </li> 3953 3954 </ul> 3955 </div><div class="megamenu-block megamenu-linklist v-stack gap-6"> 3956 <h6 class="mega-menu-link-heading ff-heading typography-desktop-21--large">Collabs</h6> 3957 <ul class="unstyled-list ff-text typography-desktop-16"> 3958 3959 <li> 3960 3961 3962 3963 3964 3965
3966 3967 3968 3969 3970 3971 3972 3973 3974 3975 3976 3977 3978 3979 3980 3981 3982 3983 3984 <a href="/collections/lwp-x-disney-halloween" class=""> 3985 Disney Halloween 3986 </a> 3987 3988 3989 3990 </li> 3991 3992 <li> 3993 3994 3995 3996 3997 3998 3999 4000 4001 4002 4003 4004 4005 4006 4007 4008 4009 4010 4011 4012 4013 4014 4015 4016 4017 <a href="/collections/lwp-x-chicago" class=""> 4018 Chicago 4019 </a> 4020 4021 4022 4023 </li> 4024 4025 <li> 4026 4027 4028 4029 4030 4031 4032 4033 4034 4035 4036 4037 4038 4039 4040 4041 4042 4043 4044 4045 4046 4047 4048 4049 4050 <a href="/collections/the-marvel-spider-man-collection-by-little-words-project" class=""> 4051 Marvel's Spider-Man 4052 </a> 4053 4054 4055 4056 </li> 4057 4058 <li> 4059 4060 4061 4062 4063 4064 4065 4066 4067 4068 4069 4070 4071 4072 4073 4074 4075 4076 4077 4078 4079 4080 4081 4082 4083 <a href="/collections/lwp-x-disney-mickey-friends" class=""> 4084 Disney Mickey & Friends 4085 </a> 4086 4087 4088 4089 </li> 4090 4091 <li> 4092 4093 4094 4095 4096 4097 4098 4099 4100 4101 4102 4103 4104 4105 4106 4107 4108 4109 4110 4111 4112 4113 4114 4115 4116 <a href="/collections/lwp-x-disney-pixars-toy-story" class=""> 4117 Pixar's Toy Story 4118 </a> 4119 4120 4121 4122 </li> 4123 4124 <li> 4125 4126 4127 4128 4129 4130 4131 4132 4133 4134 4135 4136 4137 4138 4139 4140 4141 4142 4143 4144 4145 4146 4147 4148 4149 <a href="/collections/lwp-x-disney" class=""> 4150 Disney 4151 </a> 4152 4153 4154 4155 </li> 4156 4157 <li> 4158 4159 4160 4161 4162 4163 4164 4165 4166 4167 4168 4169 4170 4171 4172 4173 4174 4175 4176 4177 4178 4179 4180 4181 4182 <a href="/collections/college" class=""> 4183 College 4184 </a> 4185 4186 4187 4188 </li> 4189 4190 </ul> 4191 </div><div class="megamenu-block megamenu-linklist v-stack gap-6"> 4192 <h6 class="mega-menu-link-heading ff-heading typography-desktop-21--large">Givebacks</h6> 4193 <ul class="unstyled-list ff-text typography-desktop-16"> 4194 4195 <li> 4196 4197 4198 4199 4200 4201 4202 4203 4204 4205 4206 4207 4208 4209 4210 4211 4212 4213 4214 4215 4216 4217 4218 4219 4220 <a href="/collections/lwp-x-mariskas-joyful-heart-foundation" class=""> 4221 Mariska's Joyful Heart Foundation 4222 </a> 4223 4224 4225 4226 </li> 4227 4228 <li> 4229 4230 4231 4232 4233 4234 4235 4236 4237 4238 4239 4240 4241 4242 4243 4244 4245 4246 4247 4248 4249 4250 4251 4252 4253 <a href="/collections/brooke-eby-end-als" class=""> 4254 Brooke Eby- End ALS 4255 </a> 4256 4257 4258 4259 </li> 4260 4261 <li> 4262 4263 4264 4265 4266 4267 4268 4269 4270 4271 4272 4273 4274 4275 4276 4277 4278 4279 4280 4281 4282 4283 4284 4285 4286 <a href="/collections/kindfluencer-breast-cancer-awareness-collective" class=""> 4287 Kindfluencer- Breast Cancer Awareness Collective 4288 </a> 4289 4290 4291 4292 </li> 4293 4294 <li> 4295 4296 4297 4298 4299 4300 4301 4302 4303 4304 4305 4306 4307 4308 4309 4310 4311 4312 4313 4314 4315 4316 4317 4318 4319 <a href="/collections/kindfluencer-misty-copeland" class=""> 4320 Kindfluencer- Misty Copeland 4321 </a> 4322 4323 4324 4325 </li> 4326 4327 <li> 4328 4329 4330 4331 4332 4333 4334 4335 4336 4337 4338 4339 4340 4341 4342 4343 4344 4345 4346 4347 4348 4349 4350 4351 4352 <a href="/collections/kindfluencer-alexia-del-valle" class=""> 4353 Kindfluencer- Alexia Del Valle 4354 </a> 4355 4356 4357 4358 </li> 4359 4360 <li> 4361 4362 4363 4364 4365 4366 4367 4368 4369 4370 4371 4372 4373 4374 4375 4376 4377 4378 4379 4380 4381 4382 4383 4384 4385 <a href="/collections/kindfluencer-rylee-ta" class=""> 4386 Kindfluencer- Rylee Ta 4387 </a> 4388 4389 4390 4391 </li> 4392 4393 <li> 4394 4395 4396 4397 4398 4399 4400 4401 4402 4403 4404 4405 4406 4407 4408 4409 4410 4411 4412 4413 4414 4415 4416 4417 4418 <a href="/collections/lwp-x-dolly-partons-imagination-library" class=""> 4419 Dolly Parton's Imagination Library 4420 </a> 4421 4422 4423 4424 </li> 4425 4426 <li> 4427 4428 4429 4430 4431 4432 4433 4434 4435 4436 4437 4438 4439 4440 4441 4442 4443 4444 4445 4446 4447 4448 4449 4450 4451 <a href="/collections/lwp-x-sydney-towle" class=""> 4452 Sydney Towle 4453 </a> 4454 4455 4456 4457 </li> 4458 4459 <li> 4460 4461 4462 4463 4464 4465 4466 4467 4468 4469 4470 4471 4472 4473 4474 4475 4476 4477 4478 4479 4480 4481 4482 4483 4484 <a href="/pages/little-words-big-impact" class=""> 4485 Little Words Big Impact 4486 </a> 4487 4488 4489 4490 </li> 4491 4492 </ul> 4493 </div><div class="megamenu-block megamenu-linklist v-stack gap-6"> 4494 <h6 class="mega-menu-link-heading ff-heading typography-desktop-21--large">Merch & Gifts</h6> 4495 <ul class="unstyled-list ff-text typography-desktop-16"> 4496 4497 <li> 4498 4499 4500 4501 4502 4503
4504 4505 4506 4507 4508 4509 4510 4511 4512 4513 4514 4515 4516 4517 4518 4519 4520 4521 4522 <a href="/collections/merch" class=""> 4523 Merch 4524 </a> 4525 4526 4527 4528 </li> 4529 4530 <li> 4531 4532 4533 4534 4535 4536 4537 4538 4539 4540 4541 4542 4543 4544 4545 4546 4547 4548 4549 4550 4551 4552 4553 4554 4555 <a href="/products/lwp-e-gift-card" class=""> 4556 Gift Card 4557 </a> 4558 4559 4560 4561 </li> 4562 4563 </ul> 4564 </div></div></div> 4565</div> 4566 4567 4568 4569 <style> 4570 4571 li.link-color_best-sellers > a, 4572 li.link-color_best-sellers > a div:first-child, 4573 li.link-color_best-sellers > details summary:first-child { 4574 color: #0d0c22 !important; 4575 } 4576 4577 li.link-color_charms > a, 4578 li.link-color_charms > a div:first-child, 4579 li.link-color_charms > details summary:first-child { 4580 color: #0d0c22 !important; 4581 } 4582 4583 li.link-color_new-trending > a, 4584 li.link-color_new-trending > a div:first-child, 4585 li.link-color_new-trending > details summary:first-child { 4586 color: #0d0c22 !important; 4587 } 4588 4589 li.link-color_discover > a, 4590 li.link-color_discover > a div:first-child, 4591 li.link-color_discover > details summary:first-child { 4592 color: #0d0c22 !important; 4593 } 4594 4595 li.link-color_sale-up-to-75-off > a, 4596 li.link-color_sale-up-to-75-off > a div:first-child, 4597 li.link-color_sale-up-to-75-off > details summary:first-child { 4598 color: #0d0c22 !important; 4599 } 4600 4601 li.link-color_shop-by > a, 4602 li.link-color_shop-by > a div:first-child, 4603 li.link-color_shop-by > details summary:first-child { 4604 color: #0d0c22 !important; 4605 } 4606 4607 li.link-color_the-bead-bar-experience > a, 4608 li.link-color_the-bead-bar-experience > a div:first-child, 4609 li.link-color_the-bead-bar-experience > details summary:first-child { 4610 color: #0d0c22 !important; 4611 } 4612 4613 </style> 4614 4615 4616 <style> 4617 4618 li.sublink-color_adrianas-book-collection a { 4619 color: #0d0c22 !important; 4620 } 4621 4622 li.sublink-color_bases a { 4623 color: #0d0c22 !important; 4624 } 4625 4626 li.sublink-color_bead-kits a { 4627 color: #0d0c22 !important; 4628 } 4629 4630 li.sublink-color_bundles a { 4631 color: #0d0c22 !important; 4632 } 4633 4634 li.sublink-color_charms a { 4635 color: #0d0c22 !important; 4636 } 4637 4638 li.sublink-color_college a { 4639 color: #0d0c22 !important; 4640 } 4641 4642 li.sublink-color_custom a { 4643 color: #0d0c22 !important; 4644 } 4645 4646 li.sublink-color_disney a { 4647 color: #0d0c22 !important; 4648 } 4649 4650 li.sublink-color_disneys-lilo-stitch a { 4651 color: #0d0c22 !important; 4652 } 4653 4654 li.sublink-color_farmers-market a { 4655 color: #0d0c22 !important; 4656 } 4657 4658 li.sublink-color_friends-family a { 4659 color: #0d0c22 !important; 4660 } 4661 4662 li.sublink-color_gift-card a { 4663 color: #0d0c22 !important; 4664 } 4665 4666 li.sublink-color_kindfluencer a { 4667 color: #0d0c22 !important; 4668 } 4669 4670 li.sublink-color_laura-beverlin a { 4671 color: #0d0c22 !important; 4672 } 4673 4674 li.sublink-color_little-layers a { 4675 color: #0d0c22 !important; 4676 } 4677 4678 li.sublink-color_merch a { 4679 color: #0d0c22 !important; 4680 } 4681 4682 li.sublink-color_metallic-bubbles a { 4683 color: #0d0c22 !important; 4684 } 4685 4686 li.sublink-color_shop-all a { 4687 color: #0d0c22 !important; 4688 } 4689 4690 li.sublink-color_original-word-bracelets a { 4691 color: #0d0c22 !important; 4692 } 4693 4694 li.sublink-color_sale a { 4695 color: #2e2bd8 !important; 4696 } 4697 4698 li.sublink-color_shop-for-a-cause a { 4699 color: #0d0c22 !important; 4700 } 4701 4702 li.sublink-color_wicked a { 4703 color: #0d0c22 !important; 4704 } 4705 4706 </style> 4707 4708</details></li> 4709 4710 <li class="header__primary-nav-item link-color_best-sellers" data-title="Best Sellers"><a 4711 href="/collections/best-sellers" 4712 class="block h6 ff-text typography-desktop-12--medium uppercase" 4713 4714 > 4715 <div class="convert__custom--buttom-b"> 4716 4717 4718 4719 4720 4721 4722 4723 4724 4725 4726 4727 4728 4729 4730 4731 4732 4733 4734 4735 4736 4737 4738 4739 4740 Best Sellers 4741 4742 4743 4744 4745 4746 </div> 4747 4748 <div class="convert__custom--buttom-a"> 4749 Best Sellers 4750 </div> 4751 </a></li> 4752 4753 <li class="header__primary-nav-item link-color_new-trending" data-title="New & Trending"><a 4754 href="/collections/new-trending" 4755 class="block h6 ff-text typography-desktop-12--medium uppercase" 4756 4757 > 4758 <div class="convert__custom--buttom-b"> 4759 4760 4761 4762 4763 4764 4765 4766 4767 4768 4769 4770 4771 4772 4773 4774 4775 4776 4777 4778 4779 4780 4781 4782 4783 New & Trending 4784 4785 4786 4787 4788 4789 </div> 4790 4791 <div class="convert__custom--buttom-a"> 4792 New & Trending 4793 </div> 4794 </a></li> 4795 4796 <li class="header__primary-nav-item link-color_custom" data-title="Custom"><a 4797 href="/collections/custom" 4798 class="block h6 ff-text typography-desktop-12--medium uppercase" 4799 4800 > 4801 <div class="convert__custom--buttom-b"> 4802 4803 <div class="custom__link--desktop"></div> 4804 4805 </div> 4806 4807 <div class="convert__custom--buttom-a"> 4808 Custom 4809 </div> 4810 </a></li><li class="header__primary-nav-item variant-b__link" data-title="Stack"> 4811 <a 4812 href="https://www.littlewordsproject.com/collections/stack-save" 4813 class="block h6 ff-text typography-desktop-12--medium uppercase " 4814 > 4815 <div class="convert__custom--buttom"> 4816 <div class="variant-b__link" id="variant-b__link--desktop"><img src="https://cdn.shopify.com/s/files/1/1259/9863/files/Nav.svg?v=1736958065" alt="variant-b"></div> 4817 4818 </div> 4819 </a> 4820 4821 </li> 4822 <li class="header__primary-nav-item variant-c__link" data-title="Stack"> 4823 <a 4824 href="https://littlewords.myshopify.com/pages/build-your-own-bundle" 4825 class="block h6 ff-text typography-desktop-12--medium uppercase " 4826 > 4827 <div class="convert__custom--buttom"> 4828 4829 <div class="variant-c__link" id="variant-c__link--desktop"><img src="https://cdn.shopify.com/s/files/1/1259/9863/files/Nav.svg?v=1736958065" alt="variant-c"></div> 4830 </div> 4831 </a> 4832 4833 </li> 4834 </ul></nav><nav class="header__secondary-nav" aria-label="Secondary navigation"> 4835 4836 <ul class="h-stack gap-10 mr-20 unstyled-list md-max:hidden"> 4837 4838 <li class="header__primary-nav-item link-color_subscribe-save" data-title="Subscribe & Save"><a 4839 href="/products/word-of-the-month-subscription" 4840 class="block h6 ff-text typography-desktop-12--medium uppercase" 4841 4842 > 4843 4844 4845 4846 4847 4848 4849 4850 4851 4852 4853 4854 4855 4856 4857 4858 4859 4860 4861 4862 4863 4864 4865 Subscribe & Save
4866 4867 4868 4869 4870 4871 </a></li> 4872 4873 <li class="header__primary-nav-item link-color_sale" data-title="Sale"><a 4874 href="/collections/sale" 4875 class="block h6 ff-text typography-desktop-12--medium uppercase" 4876 4877 > 4878 4879 4880 4881 4882 4883 4884 4885 4886 4887 4888 4889 4890 4891 4892 4893 4894 4895 4896 4897 4898 4899 4900 Sale 4901 4902 4903 4904 4905 4906 </a></li> 4907 4908 <li class="header__primary-nav-item link-color_book-the-bead-bar" data-title="Book The Bead Bar®"><a 4909 href="/pages/the-bead-bar" 4910 class="block h6 ff-text typography-desktop-12--medium uppercase" 4911 4912 > 4913 4914 4915 4916 4917 4918 4919 4920 4921 4922 4923 4924 4925 4926 4927 4928 4929 4930 4931 4932 4933 4934 4935 Book The Bead Bar® 4936 4937 4938 4939 4940 4941 </a></li></ul> 4942 4943<a 4944 href="/search" 4945 class="js-search-toggle" 4946 4947 > 4948 <span class="sr-only">Open search</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="23" class="header__nav-icon icon icon-search" viewBox="0 0 24 23" fill="none"> 4949 <path d="M10.4176 16.8333C13.9615 16.8333 16.8343 13.9605 16.8343 10.4167C16.8343 6.87284 13.9615 4 10.4176 4C6.87382 4 4.00098 6.87284 4.00098 10.4167C4.00098 13.9605 6.87382 16.8333 10.4176 16.8333Z" stroke="black" stroke-width="1.41667" stroke-miterlimit="10" stroke-linecap="round"/> 4950 <path d="M16.584 17.75L20.0007 21.1667" stroke="black" stroke-width="1.41667" stroke-miterlimit="10" stroke-linecap="round"/> 4951 </svg></a> 4952 4953 <style> 4954 .header__primary-nav-item[data-title="Wishlist"] { 4955 display: none; 4956 } 4957 </style> 4958<a href="/account" class="sm-max:hidden_"> 4959 <span class="sr-only">Open account page</span><svg xmlns="http://www.w3.org/2000/svg" width="23" height="23" class="header__nav-icon icon icon-account" viewBox="0 0 23 23" fill="none"> 4960 <path d="M2.83398 21.2498C3.33398 19.7498 3.91732 17.8332 6.75065 15.9165" stroke="black" stroke-width="1.41667" stroke-miterlimit="10" stroke-linecap="round"/> 4961 <path d="M14.8343 11.5C15.6676 10.25 15.751 9.58333 15.751 8.75C15.751 6.08333 13.5843 4 11.001 4C8.33431 4 6.25098 6.16667 6.25098 8.75C6.25098 11.0833 7.91764 12.8333 10.1676 13.5C17.3343 15.5833 18.4176 19.6667 18.9176 21.25" stroke="black" stroke-width="1.41667" stroke-miterlimit="10" stroke-linecap="round"/> 4962 </svg></a><a 4963 href="/cart" 4964 class="relative" 4965 4966 aria-controls="cart-drawer" 4967 4968 > 4969 <span class="sr-only">Open cart</span><svg xmlns="http://www.w3.org/2000/svg" width="18" height="20" class="header__nav-icon icon icon-cart" viewBox="0 0 18 20" fill="none"> 4970 <path d="M5.33301 5.83317C5.33301 2.74984 7.33301 1.4165 9.16634 1.4165C10.9997 1.4165 12.9997 2.83317 12.9997 5.83317" stroke="black" stroke-width="1.41667" stroke-miterlimit="10" stroke-linecap="round"/> 4971 <path d="M0.833008 9.4165H17.1663" stroke="black" stroke-width="1.41667" stroke-miterlimit="10" stroke-linecap="round"/> 4972 <path d="M0.832935 9.5C0.749602 9.66667 1.08294 14 2.83294 16.4167C4.7496 19.0833 7.83294 18.6667 9.08294 18.6667" stroke="black" stroke-width="1.41667" stroke-miterlimit="10" stroke-linecap="round"/> 4973 <path d="M17.166 9.5C17.2493 9.66667 16.916 14 15.166 16.4167C13.2493 19.0833 10.166 18.6667 8.91602 18.6667" stroke="black" stroke-width="1.41667" stroke-miterlimit="10" stroke-linecap="round"/> 4974 </svg><cart-dot class="header__cart-dot "> 4975 <cart-count>0</cart-count> 4976 </cart-dot> 4977 </a> 4978 </nav><link href="//www.littlewordsproject.com/cdn/shop/t/940/assets/storytelling-search-styles.css?v=6263560888775913111763029466" rel="stylesheet" type="text/css" media="all" /><div id="header-search-sections--26985957425233__header" class="header-search" aria-expanded="false"> 4979 <div class="overlay"></div> 4980 <div class="header-search-wrapper"> 4981 <div class="container"> 4982 <form id="predictive-search-form" action="/search" method="GET" aria-owns="header-predictive-search" class="header-search__form" role="search"> 4983 <div class="header-search__form-control"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="23" class="icon icon-search" viewBox="0 0 24 23" fill="none"> 4984 <path d="M10.4176 16.8333C13.9615 16.8333 16.8343 13.9605 16.8343 10.4167C16.8343 6.87284 13.9615 4 10.4176 4C6.87382 4 4.00098 6.87284 4.00098 10.4167C4.00098 13.9605 6.87382 16.8333 10.4176 16.8333Z" stroke="black" stroke-width="1.41667" stroke-miterlimit="10" stroke-linecap="round"/> 4985 <path d="M16.584 17.75L20.0007 21.1667" stroke="black" stroke-width="1.41667" stroke-miterlimit="10" stroke-linecap="round"/> 4986 </svg><input type="search" name="q" spellcheck="false" class="header-search__input h5 sm:h4" aria-label="Search" placeholder="Search for..."> 4987 <button type="button" is="dialog-close-button">
4988 <span class="sr-only">Close</span><svg aria-hidden="true" focusable="false" fill="none" width="16" class="icon icon-close" viewBox="0 0 16 16"> 4989 <path d="m1 1 14 14M1 15 15 1" stroke="currentColor" stroke-width="1.5"/> 4990 </svg> 4991 4992 </button> 4993 </div> 4994 </form> 4995 <predictive-search id="header-predictive-search" class="predictive-search"> 4996 <div class="predictive-search__content" slot="results"></div> 4997 </predictive-search> 4998 </div> 4999 </div> 5000</div><template id="header-sidebar-template"> 5001 <div part="base"> 5002 <div part="overlay"></div> 5003 5004 <div part="content"> 5005 5006 5007 <div part="panel-list"> 5008 <slot name="main-panel"></slot><slot name="collapsible-panel"></slot></div> 5009 </div> 5010 </div> 5011</template> 5012 5013<header-sidebar id="sidebar-menu" class="header-sidebar drawer drawer--sm" template="header-sidebar-template" open-from="left"><div class="header-sidebar__main-panel" slot="main-panel"> 5014 <div class="header-sidebar__scroller"> 5015 <ul class="header-sidebar__linklist mob-pt-30 divide-y unstyled-list" role="list" > 5016 5017 5018 5019 5020 5021 5022 5023 5024 5025 5026 5027 <li class="link-idx-1"> 5028 <a href="/collections/shop" class="header-sidebar__linklist-button h6"> 5029 <span class="link-title">Shop All</span> 5030 5031 </a> 5032 </li> 5033 5034 5035 5036 5037 5038 5039 5040 5041 5042 5043 5044 5045 5046 5047 5048<li class="link-idx-1 link-color_shop-by" data-title="Shop By"><button type="button" class="header-sidebar__linklist-button h6" aria-controls="header-panel-1" aria-expanded="false"> 5049 5050 5051 5052 5053 5054 <span class="link-title"> 5055 5056 5057 5058 5059 5060 5061 5062 5063 5064 5065 5066 5067 5068 5069 5070 5071 5072 5073 5074 5075 5076 5077 5078 Shop By 5079 5080 5081 5082 5083 </span> 5084 5085<svg xmlns="http://www.w3.org/2000/svg" width="10" height="19" viewBox="0 0 10 19" fill="none"> 5086 <path d="M1 1L9.14645 9.14645C9.34171 9.34171 9.34171 9.65829 9.14645 9.85355L1 18" stroke="black" stroke-linecap="round"/> 5087 </svg></button></li> 5088 5089 5090 5091 5092 5093 5094 5095 5096 5097 5098 5099<li class="link-idx-1 link-color_best-sellers" data-title="Best Sellers"><a href="/collections/best-sellers" class="header-sidebar__linklist-button h6"> 5100 5101 5102 5103 5104 <div class="convert__custom--buttom-a"> 5105 <span class="link-title">Best Sellers</span> 5106 </div> 5107 5108 <div class="convert__custom--buttom-b"> 5109 5110 5111 5112 5113 5114 5115 5116 5117 5118 5119 5120 5121 5122 5123 5124 5125 5126 5127 5128 5129 5130 5131 5132 <span class="link-title">Best Sellers</span> 5133 5134 5135 5136 5137 5138 </div> 5139 5140 </a></li> 5141 5142 5143 5144 5145 5146 5147 5148 5149 5150 5151 5152<li class="link-idx-1 link-color_new-trending" data-title="New & Trending"><a href="/collections/new-trending" class="header-sidebar__linklist-button h6"> 5153 5154 5155 5156 5157 <div class="convert__custom--buttom-a"> 5158 <span class="link-title">New & Trending</span> 5159 </div> 5160 5161 <div class="convert__custom--buttom-b"> 5162 5163 5164 5165 5166 5167 5168 5169 5170 5171 5172 5173 5174 5175 5176 5177 5178 5179 5180 5181 5182 5183 5184 5185 <span class="link-title">New & Trending</span> 5186 5187 5188 5189 5190 5191 </div> 5192 5193 </a></li> 5194 5195 5196 5197 5198 5199 5200 5201 5202 5203 5204 5205<li class="link-idx-1 link-color_custom" data-title="Custom"><a href="/collections/custom" class="header-sidebar__linklist-button h6"> 5206 5207 5208 5209 5210 <div class="convert__custom--buttom-a"> 5211 <span class="link-title">Custom</span> 5212 </div> 5213 5214 <div class="convert__custom--buttom-b"> 5215 5216 <div class="custom__link--mobile"> 5217 </div> 5218 5219 </div> 5220 5221 </a></li> 5222<li class="header__primary-nav-item variant-b__link" data-title="Stack"> 5223 <a 5224 href="https://www.littlewordsproject.com/collections/stack-save" 5225 class="block h6 ff-text typography-desktop-12--medium uppercase" 5226 > 5227 <div class="convert__custom--buttom"> 5228 <div class="variant-b__link" id="variant-b__link--mobile"><img src="https://cdn.shopify.com/s/files/1/1259/9863/files/Nav.svg?v=1736958065" alt="variant-b"></div> 5229 </div> 5230 </a> 5231 </li> 5232 <li class="header__primary-nav-item variant-c__link" data-title="Stack"> 5233 <a 5234 href="https://littlewords.myshopify.com/pages/build-your-own-bundle" 5235 class="block h6 ff-text typography-desktop-12--medium uppercase" 5236 > 5237 <div class="convert__custom--buttom"> 5238 <div class="variant-c__link" id="variant-c__link--mobile"><img src="https://cdn.shopify.com/s/files/1/1259/9863/files/Nav.svg?v=1736958065" alt="variant-c"></div> 5239 </div> 5240 </a> 5241 </li> 5242 5243 5244 5245 5246 5247 5248 5249 5250<li class="link-idx-1 link-color_subscribe-save" data-title="Subscribe & Save"><a href="/products/word-of-the-month-subscription" class="header-sidebar__linklist-button h6"> 5251 5252 5253 5254 5255 <div class="convert__custom--buttom-a">
5256 <span class="link-title">Subscribe & Save</span> 5257 </div> 5258 5259 <div class="convert__custom--buttom-b"> 5260 5261 5262 5263 5264 5265 5266 5267 5268 5269 5270 5271 5272 5273 5274 5275 5276 5277 5278 5279 5280 5281 5282 5283 <span class="link-title">Subscribe & Save</span> 5284 5285 5286 5287 5288 5289 </div> 5290 5291 </a></li> 5292 5293 5294 5295 5296 5297 5298<li class="link-idx-1 link-color_sale" data-title="Sale"><a href="/collections/sale" class="header-sidebar__linklist-button h6"> 5299 5300 5301 5302 5303 <div class="convert__custom--buttom-a"> 5304 <span class="link-title">Sale</span> 5305 </div> 5306 5307 <div class="convert__custom--buttom-b"> 5308 5309 5310 5311 5312 5313 5314 5315 5316 5317 5318 5319 5320 5321 5322 5323 5324 5325 5326 5327 5328 5329 5330 5331 <span class="link-title">Sale</span> 5332 5333 5334 5335 5336 5337 </div> 5338 5339 </a></li> 5340 5341 5342 5343 5344 5345 5346<li class="link-idx-1 link-color_book-the-bead-bar" data-title="Book The Bead Bar®"><a href="/pages/the-bead-bar" class="header-sidebar__linklist-button h6"> 5347 5348 5349 5350 5351 <div class="convert__custom--buttom-a"> 5352 <span class="link-title">Book The Bead Bar®</span> 5353 </div> 5354 5355 <div class="convert__custom--buttom-b"> 5356 5357 5358 5359 5360 5361 5362 5363 5364 5365 5366 5367 5368 5369 5370 5371 5372 5373 5374 5375 5376 5377 5378 5379 <span class="link-title">Book The Bead Bar®</span> 5380 5381 5382 5383 5384 5385 </div> 5386 5387 </a></li> 5388 5389 5390 5391 5392 5393 5394 5395 </ul> 5396 5397 5398 <ul class="header-sidebar__linklist extra unstyled-list mob-pt-15 mob-mt-60" role="list"> 5399 5400 5401 5402 5403 5404 5405 5406 5407 5408<li class="link-idx-2 border-spacing link-color_our-story" data-title="Our Story"><a href="/pages/our-story" class="header-sidebar__linklist-button h6"> 5409 5410 5411 5412 5413 <div class="convert__custom--buttom-a"> 5414 <span class="link-title">Our Story</span> 5415 </div> 5416 5417 <div class="convert__custom--buttom-b"> 5418 5419 5420 5421 5422 5423 5424 5425 5426 5427 5428 5429 5430 5431 5432 5433 5434 5435 5436 5437 5438 5439 5440 5441 <span class="link-title">Our Story</span> 5442 5443 5444 5445 5446 5447 </div> 5448 5449 </a></li> 5450 5451 5452 5453 5454 5455 5456 5457<li class="link-idx-2 link-color_my-account" data-title="My Account"><a href="#" class="header-sidebar__linklist-button h6"> 5458 5459 5460 5461 5462 <div class="convert__custom--buttom-a"> 5463 <span class="link-title">My Account</span> 5464 </div> 5465 5466 <div class="convert__custom--buttom-b"> 5467 5468 5469 5470 5471 5472 5473 5474 5475 5476 5477 5478 5479 5480 5481 5482 5483 5484 5485 5486 5487 5488 5489 5490 <span class="link-title">My Account</span> 5491 5492 5493 5494 5495 5496 </div> 5497 5498 </a></li> 5499 5500 5501 5502 5503 5504 5505 5506<li class="link-idx-2 link-color_our-impact" data-title="Our Impact"><a href="/pages/little-words-big-impact" class="header-sidebar__linklist-button h6"> 5507 5508 5509 5510 5511 <div class="convert__custom--buttom-a"> 5512 <span class="link-title">Our Impact</span> 5513 </div> 5514 5515 <div class="convert__custom--buttom-b"> 5516 5517 5518 5519 5520 5521 5522 5523 5524 5525 5526 5527 5528 5529 5530 5531 5532 5533 5534 5535 5536 5537 5538 5539 <span class="link-title">Our Impact</span> 5540 5541 5542 5543 5544 5545 </div> 5546 5547 </a></li> 5548 5549 5550 5551 5552 5553 5554 5555<li class="link-idx-2 link-color_rewards" data-title="Rewards"><a href="/pages/rewards" class="header-sidebar__linklist-button h6"> 5556 5557 5558 5559 5560 <div class="convert__custom--buttom-a"> 5561 <span class="link-title">Rewards</span> 5562 </div> 5563 5564 <div class="convert__custom--buttom-b"> 5565 5566 5567 5568 5569 5570 5571 5572 5573 5574 5575 5576 5577 5578 5579 5580 5581 5582 5583 5584 5585 5586 5587 5588 <span class="link-title">Rewards</span> 5589 5590 5591 5592 5593 5594 </div> 5595 5596 </a></li> 5597 5598 5599 5600 5601 5602 5603 5604<li class="link-idx-2 link-color_connect-your-word" data-title="Connect Your Word"><a href="/pages/connect-your-word" class="header-sidebar__linklist-button h6"> 5605 5606 5607 5608 5609 <div class="convert__custom--buttom-a"> 5610 <span class="link-title">Connect Your Word</span> 5611 </div> 5612 5613 <div class="convert__custom--buttom-b"> 5614 5615 5616 5617 5618 5619 5620 5621 5622 5623 5624 5625 5626 5627 5628 5629 5630 5631 5632 5633 5634 5635 5636 5637 <span class="link-title">Connect Your Word</span> 5638 5639 5640 5641 5642 5643 </div> 5644 5645 </a></li> 5646 5647 5648 5649 5650 5651 5652 5653<li class="link-idx-2 link-color_our-stores" data-title="Our Stores"><a href="/pages/our-stores" class="header-sidebar__linklist-button h6"> 5654 5655 5656 5657 5658 <div class="convert__custom--buttom-a">
5659 <span class="link-title">Our Stores</span> 5660 </div> 5661 5662 <div class="convert__custom--buttom-b"> 5663 5664 5665 5666 5667 5668 5669 5670 5671 5672 5673 5674 5675 5676 5677 5678 5679 5680 5681 5682 5683 5684 5685 5686 <span class="link-title">Our Stores</span> 5687 5688 5689 5690 5691 5692 </div> 5693 5694 </a></li> 5695 5696 5697 5698 5699 5700 5701 5702<li class="link-idx-2 link-color_contact-us" data-title="Contact Us"><a href="/pages/contact" class="header-sidebar__linklist-button h6"> 5703 5704 5705 5706 5707 <div class="convert__custom--buttom-a"> 5708 <span class="link-title">Contact Us</span> 5709 </div> 5710 5711 <div class="convert__custom--buttom-b"> 5712 5713 5714 5715 5716 5717 5718 5719 5720 5721 5722 5723 5724 5725 5726 5727 5728 5729 5730 5731 5732 5733 5734 5735 <span class="link-title">Contact Us</span> 5736 5737 5738 5739 5740 5741 </div> 5742 5743 </a></li> 5744 5745 5746 5747 5748 5749 5750 5751<li class="link-idx-2 link-color_size-guide" data-title="Size Guide"><a href="/pages/size-guide" class="header-sidebar__linklist-button h6"> 5752 5753 5754 5755 5756 <div class="convert__custom--buttom-a"> 5757 <span class="link-title">Size Guide</span> 5758 </div> 5759 5760 <div class="convert__custom--buttom-b"> 5761 5762 5763 5764 5765 5766 5767 5768 5769 5770 5771 5772 5773 5774 5775 5776 5777 5778 5779 5780 5781 5782 5783 5784 <span class="link-title">Size Guide</span> 5785 5786 5787 5788 5789 5790 </div> 5791 5792 </a></li> 5793 5794 </ul> 5795 5796 5797 5798 5799 </div> 5800 </div><header-sidebar-collapsible-panel class="header-sidebar__collapsible-panel" slot="collapsible-panel"> 5801 <div class="header-sidebar__scroller"> 5802 5803 5804 5805<div id="header-panel-1" class="header-sidebar__sub-panel" hidden> 5806 <button type="button" class="header-sidebar__back-button link-faded text-with-icon h6 md:hidden" data-action="close-panel"><svg xmlns="http://www.w3.org/2000/svg" width="10" height="19" viewBox="0 0 10 19" fill="none"> 5807 <path d="M9.5 18L1 9.5L9.5 1" stroke="currentColor" stroke-linecap="round"/> 5808 </svg>Shop By</button> 5809 5810 <ul class="header-sidebar__linklist unstyled-list" role="list"><li><details is="accordion-disclosure" class="group" open > 5811 <summary class="header-sidebar__linklist-button h6"> 5812 <span class="link-title">Category</span> 5813 <span class="animated-plus group-expanded:rotate" aria-hidden="true"></span> 5814 </summary> 5815 5816 <div class="header-sidebar__nested-linklist"> 5817 5818 5819 5820 5821 5822 5823 5824 5825 5826 5827 5828 5829 5830 5831 5832 5833 5834 5835 5836 5837 5838 5839 5840 <a href="/collections/shop" class="link-faded-reverse"> 5841 Shop All 5842 </a> 5843 5844 5845 5846 5847 5848 5849 5850 5851 5852 5853 5854 5855 5856 5857 5858 5859 5860 5861 5862 5863 5864 5865 5866 5867 5868 5869 5870 <a href="/collections/beaded-word-bracelets" class="link-faded-reverse"> 5871 Beaded Word Bracelets 5872 </a> 5873 5874 5875 5876 5877 5878 5879 5880 5881 5882 5883 5884 5885 5886 5887 5888 5889 5890 5891 5892 5893 5894 5895 5896 5897 5898 5899 5900 <a href="/collections/layering-bracelets" class="link-faded-reverse"> 5901 Layering Bracelets 5902 </a> 5903 5904 5905 5906 5907 5908 5909 5910 5911 5912 5913 5914 5915 5916 5917 5918 5919 5920 5921 5922 5923 5924 5925 5926 5927 5928 5929 5930 <a href="/collections/custom" class="link-faded-reverse"> 5931 Custom 5932 </a> 5933 5934 5935 5936 5937 5938 5939 5940 5941 5942 5943 5944 5945 5946 5947 5948 5949 5950 5951 5952 5953 5954 5955 5956 5957 5958 5959 5960 <a href="/collections/charms-by-little-words-project" class="link-faded-reverse"> 5961 Charms 5962 </a> 5963 5964 5965 5966 5967 5968 5969 5970 5971 5972 5973 5974 5975 5976 5977 5978 5979 5980 5981 5982 5983 5984 5985 5986 5987 5988 5989 5990 <a href="/collections/little-luxuries" class="link-faded-reverse"> 5991 Demi-Fine Little Luxuries 5992 </a> 5993 5994 5995 5996 5997 5998 5999 6000 6001 6002 6003 6004 6005 6006 6007 6008 6009 6010 6011 6012 6013 6014 6015 6016 6017 6018 6019 6020 <a href="/collections/gift-sets-1" class="link-faded-reverse"> 6021 Gift Sets 6022 </a> 6023 6024 6025 6026 6027 6028 6029 6030 6031 6032 6033 6034 6035 6036 6037 6038 6039 6040 6041 6042 6043 6044 6045 6046 6047 6048 6049 6050 <a href="/collections/bead-kits" class="link-faded-reverse"> 6051 Bead Kits 6052 </a> 6053 6054 6055 6056 6057 6058 6059 6060 6061 6062 6063 6064 6065 6066 6067 6068 6069 6070 6071 6072 6073 6074 6075 6076 6077 6078 6079 6080 <a href="/collections/bag-charms" class="link-faded-reverse"> 6081 Bag Charms 6082 </a> 6083 6084 6085 6086</div> 6087 </details></li><li><details is="accordion-disclosure" class="group" > 6088 <summary class="header-sidebar__linklist-button h6"> 6089 <span class="link-title">Collections</span> 6090 <span class="animated-plus group-expanded:rotate" aria-hidden="true"></span> 6091 </summary> 6092 6093 <div class="header-sidebar__nested-linklist"> 6094 6095 6096 6097 6098
6099 6100 6101 6102 6103 6104 6105 6106 6107 6108 6109 6110 6111 6112 6113 6114 6115 6116 6117 <a href="/collections/falling-into-place" class="link-faded-reverse"> 6118 Falling into Place 6119 </a> 6120 6121 6122 6123 6124 6125 6126 6127 6128 6129 6130 6131 6132 6133 6134 6135 6136 6137 6138 6139 6140 6141 6142 6143 6144 6145 6146 6147 <a href="/collections/magic-hour" class="link-faded-reverse"> 6148 Magic Hour 6149 </a> 6150 6151 6152 6153 6154 6155 6156 6157 6158 6159 6160 6161 6162 6163 6164 6165 6166 6167 6168 6169 6170 6171 6172 6173 6174 6175 6176 6177 <a href="/collections/whimsy-girl" class="link-faded-reverse"> 6178 Whimsy Girl 6179 </a> 6180 6181 6182 6183 6184 6185 6186 6187 6188 6189 6190 6191 6192 6193 6194 6195 6196 6197 6198 6199 6200 6201 6202 6203 6204 6205 6206 6207 <a href="/collections/bolder-by-little-words-project" class="link-faded-reverse"> 6208 BOLDER 6209 </a> 6210 6211 6212 6213 6214 6215 6216 6217 6218 6219 6220 6221 6222 6223 6224 6225 6226 6227 6228 6229 6230 6231 6232 6233 6234 6235 6236 6237 <a href="/collections/kids-collection" class="link-faded-reverse"> 6238 Kids Collection 6239 </a> 6240 6241 6242 6243 6244 6245 6246 6247 6248 6249 6250 6251 6252 6253 6254 6255 6256 6257 6258 6259 6260 6261 6262 6263 6264 6265 6266 6267 <a href="/collections/faith-bracelets" class="link-faded-reverse"> 6268 Keep the Faith 6269 </a> 6270 6271 6272 6273 6274 6275 6276 6277 6278 6279 6280 6281 6282 6283 6284 6285 6286 6287 6288 6289 6290 6291 6292 6293 6294 6295 6296 6297 <a href="/collections/family-collection" class="link-faded-reverse"> 6298 Friends & Family 6299 </a> 6300 6301 6302 6303 6304 6305 6306 6307 6308 6309 6310 6311 6312 6313 6314 6315 6316 6317 6318 6319 6320 6321 6322 6323 6324 6325 6326 6327 <a href="/collections/founder-favorites" class="link-faded-reverse"> 6328 Founder Favorites 6329 </a> 6330 6331 6332 6333</div> 6334 </details></li><li><details is="accordion-disclosure" class="group" > 6335 <summary class="header-sidebar__linklist-button h6"> 6336 <span class="link-title">Collabs</span> 6337 <span class="animated-plus group-expanded:rotate" aria-hidden="true"></span> 6338 </summary> 6339 6340 <div class="header-sidebar__nested-linklist"> 6341 6342 6343 6344 6345 6346 6347 6348 6349 6350 6351 6352 6353 6354 6355 6356 6357 6358 6359 6360 6361 6362 6363 6364 <a href="/collections/lwp-x-disney-halloween" class="link-faded-reverse"> 6365 Disney Halloween 6366 </a> 6367 6368 6369 6370 6371 6372 6373 6374 6375 6376 6377 6378 6379 6380 6381 6382 6383 6384 6385 6386 6387 6388 6389 6390 6391 6392 6393 6394 <a href="/collections/lwp-x-chicago" class="link-faded-reverse"> 6395 Chicago 6396 </a> 6397 6398 6399 6400 6401 6402 6403 6404 6405 6406 6407 6408 6409 6410 6411 6412 6413 6414 6415 6416 6417 6418 6419 6420 6421 6422 6423 6424 <a href="/collections/the-marvel-spider-man-collection-by-little-words-project" class="link-faded-reverse"> 6425 Marvel's Spider-Man 6426 </a> 6427 6428 6429 6430 6431 6432 6433 6434 6435 6436 6437 6438 6439 6440 6441 6442 6443 6444 6445 6446 6447 6448 6449 6450 6451 6452 6453 6454 <a href="/collections/lwp-x-disney-mickey-friends" class="link-faded-reverse"> 6455 Disney Mickey & Friends 6456 </a> 6457 6458 6459 6460 6461 6462 6463 6464 6465 6466 6467 6468 6469 6470 6471 6472 6473 6474 6475 6476 6477 6478 6479 6480 6481 6482 6483 6484 <a href="/collections/lwp-x-disney-pixars-toy-story" class="link-faded-reverse"> 6485 Pixar's Toy Story 6486 </a> 6487 6488 6489 6490 6491 6492 6493 6494 6495 6496 6497 6498 6499 6500 6501 6502 6503 6504 6505 6506 6507 6508 6509 6510 6511 6512 6513 6514 <a href="/collections/lwp-x-disney" class="link-faded-reverse"> 6515 Disney 6516 </a> 6517 6518 6519 6520 6521 6522 6523 6524 6525 6526 6527 6528 6529 6530 6531 6532 6533 6534 6535 6536 6537 6538 6539 6540 6541 6542 6543 6544 <a href="/collections/college" class="link-faded-reverse"> 6545 College 6546 </a> 6547 6548 6549 6550</div> 6551 </details></li><li><details is="accordion-disclosure" class="group" > 6552 <summary class="header-sidebar__linklist-button h6"> 6553 <span class="link-title">Givebacks</span> 6554 <span class="animated-plus group-expanded:rotate" aria-hidden="true"></span> 6555 </summary> 6556 6557 <div class="header-sidebar__nested-linklist"> 6558 6559 6560 6561 6562 6563 6564 6565 6566 6567 6568 6569 6570 6571 6572 6573 6574 6575 6576 6577 6578 6579 6580 6581 <a href="/collections/lwp-x-mariskas-joyful-heart-foundation" class="link-faded-reverse"> 6582 Mariska's Joyful Heart Foundation 6583 </a> 6584 6585 6586 6587 6588 6589 6590 6591 6592 6593 6594 6595 6596 6597 6598 6599 6600 6601 6602 6603 6604 6605 6606 6607 6608 6609 6610 6611 <a href="/collections/brooke-eby-end-als" class="link-faded-reverse"> 6612 Brooke Eby- End ALS 6613 </a> 6614 6615 6616 6617 6618 6619 6620 6621 6622 6623 6624 6625 6626 6627 6628 6629 6630 6631 6632 6633 6634 6635 6636 6637 6638 6639 6640 6641 <a href="/collections/kindfluencer-breast-cancer-awareness-collective" class="link-faded-reverse"> 6642 Kindfluencer- Breast Cancer Awareness Collective 6643 </a> 6644 6645 6646 6647 6648 6649 6650 6651 6652 6653 6654 6655 6656 6657 6658 6659 6660 6661 6662 6663 6664 6665 6666 6667 6668 6669 6670 6671 <a href="/collections/kindfluencer-misty-copeland" class="link-faded-reverse"> 6672 Kindfluencer- Misty Copeland 6673 </a> 6674 6675 6676 6677 6678 6679 6680 6681 6682 6683 6684 6685 6686 6687 6688 6689 6690 6691 6692 6693 6694 6695 6696 6697 6698 6699 6700 6701 <a href="/collections/kindfluencer-alexia-del-valle" class="link-faded-reverse"> 6702 Kindfluencer- Alexia Del Valle 6703 </a> 6704 6705 6706 6707 6708 6709 6710 6711 6712
6713 6714 6715 6716 6717 6718 6719 6720 6721 6722 6723 6724 6725 6726 6727 6728 6729 6730 6731 <a href="/collections/kindfluencer-rylee-ta" class="link-faded-reverse"> 6732 Kindfluencer- Rylee Ta 6733 </a> 6734 6735 6736 6737 6738 6739 6740 6741 6742 6743 6744 6745 6746 6747 6748 6749 6750 6751 6752 6753 6754 6755 6756 6757 6758 6759 6760 6761 <a href="/collections/lwp-x-dolly-partons-imagination-library" class="link-faded-reverse"> 6762 Dolly Parton's Imagination Library 6763 </a> 6764 6765 6766 6767 6768 6769 6770 6771 6772 6773 6774 6775 6776 6777 6778 6779 6780 6781 6782 6783 6784 6785 6786 6787 6788 6789 6790 6791 <a href="/collections/lwp-x-sydney-towle" class="link-faded-reverse"> 6792 Sydney Towle 6793 </a> 6794 6795 6796 6797 6798 6799 6800 6801 6802 6803 6804 6805 6806 6807 6808 6809 6810 6811 6812 6813 6814 6815 6816 6817 6818 6819 6820 6821 <a href="/pages/little-words-big-impact" class="link-faded-reverse"> 6822 Little Words Big Impact 6823 </a> 6824 6825 6826 6827</div> 6828 </details></li><li><details is="accordion-disclosure" class="group" > 6829 <summary class="header-sidebar__linklist-button h6"> 6830 <span class="link-title">Merch & Gifts</span> 6831 <span class="animated-plus group-expanded:rotate" aria-hidden="true"></span> 6832 </summary> 6833 6834 <div class="header-sidebar__nested-linklist"> 6835 6836 6837 6838 6839 6840 6841 6842 6843 6844 6845 6846 6847 6848 6849 6850 6851 6852 6853 6854 6855 6856 6857 6858 <a href="/collections/merch" class="link-faded-reverse"> 6859 Merch 6860 </a> 6861 6862 6863 6864 6865 6866 6867 6868 6869 6870 6871 6872 6873 6874 6875 6876 6877 6878 6879 6880 6881 6882 6883 6884 6885 6886 6887 6888 <a href="/products/lwp-e-gift-card" class="link-faded-reverse"> 6889 Gift Card 6890 </a> 6891 6892 6893 6894</div> 6895 </details></li></ul><div class="header-sidebar__promo scroll-area bleed md:unbleed m-fd-column mob-mt-45"> 6896 6897 6898 6899 6900 6901 6902 6903 6904 6905 6906 6907 6908 6909 6910 6911 6912 6913 6914 6915 6916 6917 6918 6919 6920 6921 6922 6923 6924 6925 6926 6927 6928 6929 6930 6931 6932 6933 6934 6935 6936 6937 6938 6939 6940 6941 6942 6943</div></div> 6944 6945 6946 6947 6948 6949 6950 6951 6952 6953 6954 6955 6956 6957 6958 6959 6960 6961 6962 6963 6964 6965 6966 6967 6968 6969 6970 6971 6972 6973 6974 6975 6976 6977 6978 6979 6980 6981 6982 6983 6984 6985 6986 6987 </div> 6988 </header-sidebar-collapsible-panel></header-sidebar></x-header> 6989</height-observer> 6990
6991<script> 6992 document.documentElement.style.setProperty( 6993 '--header-height', 6994 `${Math.round(document.getElementById('shopify-section-sections--26985957425233__header').clientHeight)}px` 6995 ); 6996</script>
6996 6997
6998<script> 6999 7000 function initHoverImageChange() { 7001 const wrapperImages = document.querySelectorAll('div[data-hover-img][data-original-img]'); 7002 7003 wrapperImages.forEach(element => { 7004 const image = element.querySelector('img'); 7005 7006 if (image) { 7007 const originalSrc = element.getAttribute('data-original-img'); 7008 const hoverSrc = element.getAttribute('data-hover-img'); 7009 7010 if (!originalSrc || !hoverSrc) { 7011 return; 7012 } 7013 7014 element.addEventListener('mouseenter', function () { 7015 image.src = hoverSrc; 7016 }); 7017 7018 element.addEventListener('mouseleave', function () { 7019 image.src = originalSrc; 7020 }); 7021 } 7022 }); 7023 } 7024 7025 function initParentBorderChange() { 7026 const wrapperElements = document.querySelectorAll('.wrapper-custom-link-image'); 7027 7028 wrapperElements.forEach(wrapper => { 7029 const parentElement = wrapper.closest('.header-sidebar__linklist-button'); 7030 7031 if (parentElement) { 7032 parentElement.style.border = 'none'; 7033 } 7034 }); 7035 } 7036 7037 7038 document.addEventListener("DOMContentLoaded", function () { 7039 initHoverImageChange(); 7040 initParentBorderChange(); 7041 }); 7042 7043</script>
7043 7044 7045 7046</header><div id="shopify-section-sections--26985957425233__collection_carousel_44wEw3" class="shopify-section shopify-section-group-header-group"> 7047 7048</div><section id="shopify-section-sections--26985957425233__download_banner_4UbHC7" class="shopify-section shopify-section-group-header-group shopify-section--download-banner"> 7049 7050<div class="lwp-mobile-download-banner-container lwp-mobile-download-banner-bottom lwp-mobile-download-banner-cls" id="lwp-download-web-banner" style="font-family: System"> 7051 <div class="lwp-mobile-download-banner-content lwp-mobile-download-banner-cls" style=" 7052 background-color: #FFFFFF; 7053 color: #000000; 7054 "> 7055 <div class="lwp-mdb-column lwp-mdb-column-1 lwp-mobile-download-banner-cls"> 7056 <div class="lwp-mobile-download-banner-app-icon lwp-mobile-download-banner-cls"> 7057 <img src="https://cdn.shopify.com/s/files/1/1259/9863/files/lwp-image-app.png?v=1736167312" alt="App Icon" class="lwp-mobile-download-banner-app-icon-image lwp-mobile-download-banner-cls" /> 7058 </div> 7059 <div class="lwp-mobile-download-banner-text lwp-mobile-download-banner-cls"> 7060 <div class="lwp-mobile-download-banner-title lwp-mobile-download-banner-cls"> 7061 <span class="lwp-mobile-download-banner-cls">Little Words Project</span> 7062 </div> 7063 <div class="lwp-mobile-download-banner-subtitle lwp-mobile-download-banner-cls"> 7064 <span class="lwp-mobile-download-banner-cls">Download our app! Get 10% off!</span> 7065 </div> 7066 </div> 7067 </div> 7068 <div class="lwp-mdb-column lwp-mdb-column-2 lwp-mobile-download-banner-cls"> 7069 <div class="lwp-mobile-download-banner-download-button lwp-mobile-download-banner-cls" id="download-btn"> 7070 7071 <button class="lwp-mobile-download-banner-download-button-text lwp-mobile-download-banner-cls" style="background: #000000; color: #FFFFFF;">Get</button> 7072 7073 </div> 7074 </div> 7075 </div> 7076 <div id="lwp-close-banner" class="lwp-mdb-close-button lwp-mobile-download-banner-cls"><a href="#" aria-label="close" role="button" class="lwp-mobile-download-banner-cls"></a></div> 7077</div> 7078 7079 7080 <style> 7081 body .tc-mobile-download-banner-bottom.svelte-vzkjil.svelte-vzkjil { 7082 display: none !important; 7083 } 7084 </style> 7085 7086 7087 7088 <style> 7089 @media (min-width: 768px) { 7090 .lwp-mobile-download-banner-container { 7091 display: none; 7092 } 7093 } 7094 </style> 7095 7096 7097 <style> 7098 .lock .lwp-mobile-download-banner-container { 7099 display: none; 7100 } 7101 </style> 7102 7103 7104 7105 7106 7107<style> 7108 .lwp-mobile-download-banner-container.lwp-mobile-download-banner-cls.lwp-mobile-download-banner-cls{ 7109 position:fixed; 7110 left:0; 7111 right:0; 7112 margin:0 auto; 7113 z-index:2147483647; 7114 width:90vw; 7115 border-radius:10px; 7116 box-shadow:rgba(0, 0, 0, 0.2) 0px 2px 16px 0px; 7117 } 7118 7119 .lwp-mobile-download-banner-bottom.lwp-mobile-download-banner-cls.lwp-mobile-download-banner-cls{ 7120 bottom:calc(env(safe-area-inset-bottom, 0) + 20px); 7121 } 7122 7123 .lwp-mobile-download-banner-content.lwp-mobile-download-banner-cls.lwp-mobile-download-banner-cls{ 7124 display:flex; 7125 background-color:#fff; 7126 padding:12px 24px 12px 15px; 7127 align-items:center; 7128 max-height:84px; 7129 justify-content:space-between; 7130 border-radius:10px; 7131 } 7132 7133 .lwp-mdb-column.lwp-mobile-download-banner-cls.lwp-mobile-download-banner-cls{ 7134 display:flex; 7135 align-items:center; 7136 justify-content:center; 7137 } 7138 7139 .lwp-mdb-column-2.lwp-mobile-download-banner-cls.lwp-mobile-download-banner-cls{ 7140 margin-right:5px; 7141 } 7142 7143 .lwp-mobile-download-banner-app-icon.lwp-mobile-download-banner-cls.lwp-mobile-download-banner-cls{ 7144 max-width:60px; 7145 max-height:60px; 7146 box-shadow:0 5px 12px 0 rgba(0, 0, 0, 0.2); 7147 border-radius:8.5px; 7148 overflow:hidden; 7149 } 7150 7151 .lwp-mobile-download-banner-app-icon.lwp-mobile-download-banner-cls .lwp-mobile-download-banner-app-icon-image.lwp-mobile-download-banner-cls{ 7152 width:100%; 7153 height:100%; 7154 } 7155 7156 .lwp-mobile-download-banner-text.lwp-mobile-download-banner-cls.lwp-mobile-download-banner-cls{ 7157 display:block; 7158 font-size:12px; 7159 margin-left:15px; 7160 line-height:16px; 7161 letter-spacing:0.03px; 7162 overflow:hidden; 7163 } 7164 7165 .lwp-mobile-download-banner-subtitle.lwp-mobile-download-banner-cls.lwp-mobile-download-banner-cls{ 7166 font-family:system-light; 7167 font-weight:lighter; 7168 font-size:10px; 7169 line-height:15px; 7170 letter-spacing:0.04pt; 7171 max-width:130px; 7172 word-break:break-word; 7173 } 7174 7175 .lwp-mobile-download-banner-download-button.lwp-mobile-download-banner-cls.lwp-mobile-download-banner-cls{ 7176 width:100%; 7177 } 7178 7179 .lwp-mobile-download-banner-download-button.lwp-mobile-download-banner-cls button.lwp-mobile-download-banner-cls{ 7180 text-decoration:none; 7181 } 7182 7183 .lwp-mobile-download-banner-download-button.lwp-mobile-download-banner-cls button.lwp-mobile-download-banner-cls{ 7184 background:black; 7185 color:white; 7186 font-size:12px; 7187 padding:10px 15px; 7188 border-radius:18px; 7189 line-height:15px; 7190 letter-spacing:1px; 7191 border:none; 7192 min-width:70px; 7193 text-transform:uppercase; 7194 text-decoration:none; 7195 display:flex; 7196 flex:1; 7197 justify-content:center; 7198 } 7199 7200 .lwp-mdb-close-button.lwp-mobile-download-banner-cls.lwp-mobile-download-banner-cls{ 7201 position:absolute; 7202 top:-10px; 7203 right:-6px; 7204 display:block; 7205 margin:0; 7206 width:28px; 7207 height:28px; 7208 border:0; 7209 text-align:center; 7210 border-radius:14px; 7211 background-color:#d7d7d7; 7212 } 7213 7214 .lwp-mdb-close-button.lwp-mobile-download-banner-cls a.lwp-mobile-download-banner-cls{ 7215 display:block!important; 7216 } 7217 7218 .lwp-mdb-close-button.lwp-mobile-download-banner-cls .lwp-mobile-download-banner-cls::before,.lwp-mdb-close-button.lwp-mobile-download-banner-cls .lwp-mobile-download-banner-cls::after{ 7219 position:absolute; 7220 width:2px; 7221 height:16px; 7222 background:#4f4f4f; 7223 content:" "; 7224 top:6px; 7225 } 7226 7227 .lwp-mdb-close-button.lwp-mobile-download-banner-cls .lwp-mobile-download-banner-cls::before{ 7228 transform:rotate(45deg); 7229 } 7230 7231 .lwp-mdb-close-button.lwp-mobile-download-banner-cls .lwp-mobile-download-banner-cls::after{ 7232 transform:rotate(-45deg); 7233 } 7234 7235 @media (min-width: 768px){ 7236 7237 .lwp-mobile-download-banner-title.lwp-mobile-download-banner-cls.lwp-mobile-download-banner-cls{ 7238 font-size:16px; 7239 margin-bottom:4px; 7240 } 7241 7242 .lwp-mobile-download-banner-subtitle.lwp-mobile-download-banner-cls.lwp-mobile-download-banner-cls{ 7243 font-size:14px; 7244 max-width:240px; 7245 } 7246 7247 .lwp-mobile-download-banner-download-button.lwp-mobile-download-banner-cls button.lwp-mobile-download-banner-cls{ 7248 width:130px; 7249 padding:16px 20px 16px 20px; 7250 border-radius:24px; 7251 font-size:14px; 7252 } 7253 7254 } 7255 7256</style> 7257 7258
7258<script> 7259 7260 document.addEventListener("DOMContentLoaded", () => { 7261 const button = document.getElementById("download-btn"); 7262 // Detectar el sistema operativo 7263 const userAgent = navigator.userAgent || navigator.vendor || window.opera; 7264 let appUrl = ""; 7265 if (/android/i.test(userAgent)) { 7266 // Enlace a Google Play Store 7267 appUrl = "https://play.google.com/store/apps/details?id=co.tapcart.app.id_Mv9y7dtOJG"; 7268 } else if (/iPad|iPhone|iPod/.test(userAgent) && !window.MSStream) { 7269 // Enlace a App Store 7270 appUrl = "https://apps.apple.com/app/id1154397428"; 7271 } else { 7272 // Opcional: Mostrar mensaje para otros dispositivos 7273 appUrl = "#"; 7274 button.innerText = "App no disponible para tu dispositivo"; 7275 button.disabled = true; 7276 } 7277 // Asignar enlace al botón 7278 button.addEventListener("click", () => { 7279 if (appUrl !== "#") { 7280 window.location.href = appUrl; 7281 } 7282 }); 7283 }); 7284 </script>
7284 7285 7286
7287<script> 7288 document.addEventListener("DOMContentLoaded", () => { 7289 const banner = document.getElementById('lwp-download-web-banner'); 7290 const closeButton = document.getElementById('lwp-close-banner'); 7291 7292 // Ocultar el banner si está marcado en sessionStorage 7293 if (sessionStorage.getItem('hideBanner')) { 7294 banner.style.display = 'none'; 7295 } 7296 7297 // Configurar el botón de cierre 7298 closeButton.addEventListener('click', () => { 7299 banner.style.display = 'none'; 7300 sessionStorage.setItem('hideBanner', 'true'); // Marcar el banner como oculto 7301 }); 7302 }); 7303</script>
7303 7304 7305</section> 7306<!-- END sections: header-group --><!-- BEGIN sections: overlay-group --> 7307<section id="shopify-section-sections--26985957490769__cart-drawer" class="shopify-section shopify-section-group-overlay-group shopify-section--cart-drawer"> 7308 7309 7310 7311<cart-drawer 7312 id="cart-drawer" 7313 class="cart-drawer drawer drawer--center-body" 7314 initial-focus="false" 7315 handle-editor-events> 7316 7317 7318 <p class="h4 cart-drawer__title" slot="header">Cart </p> 7319 7320 7321 7322 7323 7324 7325<div class="cart-drawer__empty-header text-center mt-50"> 7326 <p class="h4"> 7327 7328 Your Cart is Empty 7329 7330 </p> 7331 7332 <div class="cart-drawer__empty-subtitle"><p>Join the kindness revolution.</p></div> 7333 7334</div> 7335 7336 7337 <div class="cart-drawer__empty-primary-menu mt-50"> 7338 <ul class="cart-drawer__empty-linklist cart-drawer__empty-menulist"> 7339 7340 <li class="linklist-item cart-drawer__empty-linklist mb-15"> 7341 <a href="/collections/best-sellers"> 7342 7343 7344 7345 7346 7347 7348 <picture class="custom-rimage" style=""> 7349 7350 7351 7352 7353 <img src="//www.littlewordsproject.com/cdn/shop/files/best_sellers.png?v=1711117334&width=1500" alt="" srcset="//www.littlewordsproject.com/cdn/shop/files/best_sellers.png?v=1711117334&width=400 400w, //www.littlewordsproject.com/cdn/shop/files/best_sellers.png?v=1711117334&width=500 500w, //www.littlewordsproject.com/cdn/shop/files/best_sellers.png?v=1711117334&width=600 600w, //www.littlewordsproject.com/cdn/shop/files/best_sellers.png?v=1711117334&width=700 700w, //www.littlewordsproject.com/cdn/shop/files/best_sellers.png?v=1711117334&width=800 800w, //www.littlewordsproject.com/cdn/shop/files/best_sellers.png?v=1711117334&width=900 900w, //www.littlewordsproject.com/cdn/shop/files/best_sellers.png?v=1711117334&width=1000 1000w, //www.littlewordsproject.com/cdn/shop/files/best_sellers.png?v=1711117334&width=1200 1200w, //www.littlewordsproject.com/cdn/shop/files/best_sellers.png?v=1711117334&width=1400 1400w" width="1500" height="2000" loading="lazy" sizes="(max-width: 699px) 100vw, 50vw" reveal-on-scroll="false" class=""> 7354 </picture> 7355 7356 Best Sellers 7357 </a> 7358 </li> 7359 7360 <li class="linklist-item cart-drawer__empty-linklist mb-15"> 7361 <a href="/collections/new-trending"> 7362 7363 7364 7365 7366 7367 7368 7369 7370 7371 7372 7373 7374 7375 <picture class="custom-rimage" style=""> 7376 7377 7378 7379 7380 <img src="//www.littlewordsproject.com/cdn/shop/files/create_your_own_cfed60b9-fef8-41c3-befb-6b2663ada410.jpg?v=1710951807&width=1500" alt="" srcset="//www.littlewordsproject.com/cdn/shop/files/create_your_own_cfed60b9-fef8-41c3-befb-6b2663ada410.jpg?v=1710951807&width=400 400w, //www.littlewordsproject.com/cdn/shop/files/create_your_own_cfed60b9-fef8-41c3-befb-6b2663ada410.jpg?v=1710951807&width=500 500w, //www.littlewordsproject.com/cdn/shop/files/create_your_own_cfed60b9-fef8-41c3-befb-6b2663ada410.jpg?v=1710951807&width=600 600w, //www.littlewordsproject.com/cdn/shop/files/create_your_own_cfed60b9-fef8-41c3-befb-6b2663ada410.jpg?v=1710951807&width=700 700w, //www.littlewordsproject.com/cdn/shop/files/create_your_own_cfed60b9-fef8-41c3-befb-6b2663ada410.jpg?v=1710951807&width=800 800w, //www.littlewordsproject.com/cdn/shop/files/create_your_own_cfed60b9-fef8-41c3-befb-6b2663ada410.jpg?v=1710951807&width=900 900w, //www.littlewordsproject.com/cdn/shop/files/create_your_own_cfed60b9-fef8-41c3-befb-6b2663ada410.jpg?v=1710951807&width=1000 1000w, //www.littlewordsproject.com/cdn/shop/files/create_your_own_cfed60b9-fef8-41c3-befb-6b2663ada410.jpg?v=1710951807&width=1200 1200w, //www.littlewordsproject.com/cdn/shop/files/create_your_own_cfed60b9-fef8-41c3-befb-6b2663ada410.jpg?v=1710951807&width=1400 1400w" width="1500" height="2000" loading="lazy" sizes="(max-width: 699px) 100vw, 50vw" reveal-on-scroll="false" class=""> 7381 </picture> 7382 7383 New & Trending 7384 </a> 7385 </li> 7386 7387 <li class="linklist-item cart-drawer__empty-linklist mb-15"> 7388 <a href="/collections/little-luxuries"> 7389 7390 7391 7392 7393 7394 7395 7396 7397 7398 7399
7400 7401 7402 7403 7404 7405 7406 7407 7408 7409 <picture class="custom-rimage" style=""> 7410 7411 7412 7413 7414 <img src="//www.littlewordsproject.com/cdn/shop/files/CAMPAIGN_NAME_-_MOBILE_COLLECTION_CAROUSEL_ac83c6ad-acbf-46c6-978a-c534b8715e82.jpg?v=1761074488&width=1000" alt="" srcset="//www.littlewordsproject.com/cdn/shop/files/CAMPAIGN_NAME_-_MOBILE_COLLECTION_CAROUSEL_ac83c6ad-acbf-46c6-978a-c534b8715e82.jpg?v=1761074488&width=400 400w, //www.littlewordsproject.com/cdn/shop/files/CAMPAIGN_NAME_-_MOBILE_COLLECTION_CAROUSEL_ac83c6ad-acbf-46c6-978a-c534b8715e82.jpg?v=1761074488&width=500 500w, //www.littlewordsproject.com/cdn/shop/files/CAMPAIGN_NAME_-_MOBILE_COLLECTION_CAROUSEL_ac83c6ad-acbf-46c6-978a-c534b8715e82.jpg?v=1761074488&width=600 600w, //www.littlewordsproject.com/cdn/shop/files/CAMPAIGN_NAME_-_MOBILE_COLLECTION_CAROUSEL_ac83c6ad-acbf-46c6-978a-c534b8715e82.jpg?v=1761074488&width=700 700w, //www.littlewordsproject.com/cdn/shop/files/CAMPAIGN_NAME_-_MOBILE_COLLECTION_CAROUSEL_ac83c6ad-acbf-46c6-978a-c534b8715e82.jpg?v=1761074488&width=800 800w, //www.littlewordsproject.com/cdn/shop/files/CAMPAIGN_NAME_-_MOBILE_COLLECTION_CAROUSEL_ac83c6ad-acbf-46c6-978a-c534b8715e82.jpg?v=1761074488&width=900 900w, //www.littlewordsproject.com/cdn/shop/files/CAMPAIGN_NAME_-_MOBILE_COLLECTION_CAROUSEL_ac83c6ad-acbf-46c6-978a-c534b8715e82.jpg?v=1761074488&width=1000 1000w" width="1000" height="1000" loading="lazy" sizes="(max-width: 699px) 100vw, 50vw" reveal-on-scroll="false" class=""> 7415 </picture> 7416 7417 Little Luxuries 7418 </a> 7419 </li> 7420 7421 </ul> 7422 </div> 7423 7424 7425 7426 <div class="cart-drawer__empty-secondary-menu cart-drawer__empty-secondary-menu-ctas mb-30"> 7427 <ul class="cart-drawer__empty-linklist"> 7428 7429 <li class="linklist-item mb-15"> 7430 <a 7431 class="button button--primary button-full" 7432 href="/collections/custom" 7433 > 7434 Create A Custom Bracelet 7435 </a> 7436 </li> 7437 7438 7439 <li class="linklist-item"> 7440 <a 7441 class="button button--secondary button--outline button-full" 7442 href="/collections/shop" 7443 > 7444 Shop All Products 7445 </a> 7446 </li> 7447 7448 7449 </ul> 7450 </div> 7451 7452</cart-drawer> 7453 7454 7455<style> 7456 /* The discount badge inherits page typography in the drawer: global-discount-style 7457 is only rendered via global_discount.liquid, which the cart drawer never 7458 includes, so the intended .offer-in-amount__text treatment never loads here. 7459 Tighten the leading so the two-line badge reads as one compact block. */ 7460 .line-item .info-disc.offer-in-amount__text { 7461 line-height: 1.25; 7462 /* Inherited padding is 2px top / 0 bottom, so the text sits flush against 7463 the badge edge once the leading is tightened. global-discount-style 7464 intends 5px here; pair that with a little more horizontal room so the 7465 two lines sit centred in the pill. */ 7466 padding: 5px 8px !important; 7467 } 7468</style> 7469
7470<script> 7471 document.addEventListener('DOMContentLoaded', () => { 7472 function updateDiscounts() { 7473 const lineItems = document.querySelectorAll('.line-item'); 7474 7475 lineItems.forEach(lineItem => { 7476 const discountBadge = lineItem.querySelector('.info-disc'); 7477 // Discounts 7478 if (discountBadge) { 7479 const discountText = discountBadge.textContent.trim(); 7480 const moneyMatch = discountText.match(/-\$([\d,]+(?:\.\d{2})?)/); 7481 if (moneyMatch) { 7482 // Liquid renders "<discount name> (-$45.00)". This previously 7483 // replaced the whole badge with the amount, discarding the 7484 // discount name Shopify returns in discount_allocations. Show 7485 // the name instead, falling back to the amount when a discount 7486 // has none, and put the savings on a second line beneath it. 7487 const amount = `SAVE $${moneyMatch[1]}`; 7488 const title = discountText 7489 .replace(/\s*\(?\s*-\$[\d,]+(?:\.\d{2})?\s*\)?\s*$/, '') 7490 .trim(); 7491 discountBadge.textContent = ''; 7492 if (title) { 7493 // Built from text nodes rather than innerHTML so a discount 7494 // name can never inject markup into the cart. The badge 7495 // already computes white-space: normal, so the break needs 7496 // no CSS - the <br> only fixes where it lands instead of 7497 // leaving it to the column width. 7498 discountBadge.append( 7499 document.createTextNode(title), 7500 document.createElement('br'), 7501 document.createTextNode(amount) 7502 ); 7503 } else { 7504 discountBadge.textContent = amount; 7505 } 7506 discountBadge.classList.add('offer-in-amount__text'); 7507 } 7508 } 7509 7510 const compareAtPrice = document.querySelector('.line-item compare-at-price'); 7511 const offerInAmount = lineItem.querySelector('.inf-save'); 7512 const originalPriceElements = lineItem.querySelectorAll('.original-priceD'); 7513 7514 originalPriceElements.forEach(originalPriceEl => { 7515 const compareAtPriceEl = originalPriceEl.querySelector('compare-at-price') || 7516 originalPriceEl.closest('.line-item')?.querySelector('compare-at-price'); 7517 7518 if (compareAtPriceEl) { 7519 if (discountBadge) { 7520 console.log("4--------------------", discountBadge); 7521 compareAtPriceEl.style.display = 'none'; 7522 } else if (lineItem.querySelector('.offer-in-amount__text')) { 7523 compareAtPriceEl.style.display = 'block'; 7524 } 7525 } 7526 }); 7527 if (offerInAmount) { 7528 if (discountBadge) { 7529 offerInAmount.style.display = 'none'; 7530 } 7531 } 7532 if (discountBadge) { 7533 if (discountBadge.textContent.includes('$0.00')) { 7534 discountBadge.style.display = 'none'; 7535 } else { 7536 // Set with priority. Something else on the page hides .info-disc 7537 // with an !important rule, which a plain inline display loses to, 7538 // leaving the badge present in the DOM but never rendered. 7539 discountBadge.style.setProperty('display', 'block', 'important'); 7540 } 7541 } 7542 }); 7543 } 7544 7545 const observer = new MutationObserver(() => { 7546 updateDiscounts(); 7547 // dispatch a custom event to notify other scripts 7548 /* const event = new CustomEvent('cartDraweOpened', { 7549 bubbles: true, 7550 cancelable: true 7551 }); 7552 document.dispatchEvent(event); */ 7553 }); 7554
7555 const cartContainer = document.querySelector('#cart-drawer'); 7556 if (cartContainer) { 7557 observer.observe(cartContainer, { 7558 childList: true, 7559 subtree: true 7560 }); 7561 } 7562 7563 updateDiscounts(); 7564}); 7565</script>
7565 7566 7567 7568</section> 7569<!-- END sections: overlay-group --><main id="main" class="anchor"> 7570 <section id="shopify-section-template--26985961062481__collection-banner" class="shopify-section shopify-section--collection-banner"> 7571 7572 7573<style> 7574 #shopify-section-template--26985961062481__collection-banner { 7575 padding-top: 10px; 7576 padding-bottom: 0px; 7577 } 7578 @media (max-width: 767px) { 7579 #shopify-section-template--26985961062481__collection-banner { 7580 padding-top: 10px; 7581 padding-bottom: 0px; 7582 } 7583 } 7584</style> 7585 7586 7587 7588 7589 7590 7591 <style> 7592 .shopify-section--collection-banner .Collection-Header-Carousel { 7593 padding-bottom: 2rem; 7594 padding-top: 2rem; 7595 background-color: #ffffff; 7596 } 7597 @media (min-width: 768px) { 7598 .shopify-section--collection-banner .Collection-Header-Carousel { 7599 padding-bottom: 3.125rem; 7600 padding-top: 2rem; 7601 } 7602 } 7603 </style> 7604 7605 7606 7607 <style> 7608 .shopify-section--collection-banner .collection-banner .prose .SectionHeader__Heading.Heading, 7609 .shopify-section--collection-banner .collection-banner .prose .SectionHeader__Description { 7610 color: #ffffff; 7611 } 7612 </style> 7613 7614 7615 <style> 7616 @media screen and (max-width: 767px) { 7617 .shopify-section--collection-banner .collection-banner .prose .SectionHeader__Heading.Heading, 7618 .shopify-section--collection-banner .collection-banner .prose .SectionHeader__Description { 7619 color: #ffffff; 7620 } 7621 } 7622 </style> 7623 7624 7625 7626 7627 7628 7629 7630 7631 7632 7633 7634 7635 7636<div class="Collection-Header-Carousel Collection-Header-Carousel-No-Margin" data-disable-reveal> 7637 <div class="Collection-Header-Carousel-Message__Warpper"> 7638 7639 <div class="Collection-Header-Carousel-Message__Warpper-Breadcrumb 7640 " 7641 7642 7643 > 7644 7645 7646 7647 7648 7649 <span class="First-Breadcrumb">Shop All</span> 7650 7651 7652 7653 7654 7655 </div> 7656 7657 7658 7659 7660 <div class="Collection-Header-Carousel-Message__Warpper-Content swiperCollection"> 7661 <div class="swiper-wrapper"> 7662 7663 7664 7665 <div class="Collection-Header-Carousel-Message__Warpper-Content--Item swiper-slide"> 7666 <a href="/collections/best-sellers"> 7667 <div class="Collection-Header-Carousel-Message__Warpper-Content--Item-Image"> 7668 7669 <img src="https://cld.accentuate.io/289618952273/1745373514173/CAMPAIGN-NAME---MOBILE-COLLECTION-CAROUSEL-7.webp?v=1774042106060&options=" width="400" height="400" /> 7670 7671 </div> 7672 <div class="Collection-Header-Carousel-Message__Warpper-Content--Item-Title"> 7673 Best Sellers 7674 </div> 7675 </a> 7676 </div> 7677 7678 7679 7680 7681 <div class="Collection-Header-Carousel-Message__Warpper-Content--Item swiper-slide"> 7682 <a href="/collections/new-trending"> 7683 <div class="Collection-Header-Carousel-Message__Warpper-Content--Item-Image"> 7684 7685 <img src="https://cld.accentuate.io/266920820817/1790338413437/CAMPAIGN-NAME---MOBILE-COLLECTION-CAROUSEL.webp?v=1790859119094&options=" width="400" height="400" /> 7686 7687 </div> 7688 <div class="Collection-Header-Carousel-Message__Warpper-Content--Item-Title"> 7689 New & Trending 7690 </div> 7691 </a> 7692 </div> 7693 7694 7695 7696 7697 <div class="Collection-Header-Carousel-Message__Warpper-Content--Item swiper-slide"> 7698 <a href="/collections/word-of-the-month"> 7699 <div class="Collection-Header-Carousel-Message__Warpper-Content--Item-Image"> 7700 7701 <img src="https://cld.accentuate.io/678914031697/1775016368269/OCT-WOTM---MOBILE-COLLECTION-CAROUSEL.webp?v=1790826342073&options=" width="400" height="400" /> 7702 7703 </div> 7704 <div class="Collection-Header-Carousel-Message__Warpper-Content--Item-Title"> 7705 Word of the Month 7706 </div> 7707 </a> 7708 </div> 7709 7710 7711 7712 7713 <div class="Collection-Header-Carousel-Message__Warpper-Content--Item swiper-slide"> 7714 <a href="/collections/custom"> 7715 <div class="Collection-Header-Carousel-Message__Warpper-Content--Item-Image"> 7716 7717 <img src="https://cld.accentuate.io/98564046929/1711575588685/CAMPAIGN_NAME_-_SMALL_ST-1_ecbd7451-51cf-4987-ad18-873ee43ccc48.webp?v=1778263737187&options=" width="400" height="400" /> 7718 7719 </div> 7720 <div class="Collection-Header-Carousel-Message__Warpper-Content--Item-Title"> 7721 Custom 7722 </div> 7723 </a> 7724 </div> 7725 7726 7727 7728 7729 <div class="Collection-Header-Carousel-Message__Warpper-Content--Item swiper-slide"> 7730 <a href="/collections/beaded-word-bracelets"> 7731 <div class="Collection-Header-Carousel-Message__Warpper-Content--Item-Image"> 7732 7733 <img src="https://cld.accentuate.io/676760846417/1763679261568/CAMPAIGN-NAME---MOBILE-COLLECTION-CAROUSEL-(1).webp?v=1778263948660&options=" width="400" height="400" /> 7734 7735 </div> 7736 <div class="Collection-Header-Carousel-Message__Warpper-Content--Item-Title"> 7737 Bracelets 7738 </div> 7739 </a> 7740 </div> 7741 7742 7743 7744 7745 <div class="Collection-Header-Carousel-Message__Warpper-Content--Item swiper-slide"> 7746 <a href="/collections/charms-by-little-words-project"> 7747 <div class="Collection-Header-Carousel-Message__Warpper-Content--Item-Image"> 7748 7749 <img src="https://cld.accentuate.io/286004871249/1730117181484/CAMPAIGN-NAME---MOBILE-COLLECTION-CAROUSEL.webp?v=1778263933112&options=" width="400" height="400" /> 7750 7751 </div> 7752 <div class="Collection-Header-Carousel-Message__Warpper-Content--Item-Title"> 7753 Charms 7754 </div> 7755 </a> 7756 </div> 7757 7758 7759 7760 7761 <div class="Collection-Header-Carousel-Message__Warpper-Content--Item swiper-slide"> 7762 <a href="/collections/necklaces"> 7763 <div class="Collection-Header-Carousel-Message__Warpper-Content--Item-Image"> 7764 7765 <img src="https://cld.accentuate.io/277043576913/1711575695720/CAMPAIGN-NAME---MOBILE-COLLECTION-CAROUSEL-1.webp?v=1778263955989&options=" width="400" height="400" /> 7766 7767 </div> 7768 <div class="Collection-Header-Carousel-Message__Warpper-Content--Item-Title"> 7769 Necklaces 7770 </div> 7771 </a> 7772 </div> 7773 7774 7775 7776 7777 <div class="Collection-Header-Carousel-Message__Warpper-Content--Item swiper-slide"> 7778 <a href="/collections/rings"> 7779 <div class="Collection-Header-Carousel-Message__Warpper-Content--Item-Image"> 7780 7781 <img src="https://cld.accentuate.io/277043642449/1745373970617/CAMPAIGN-NAME---MOBILE-COLLECTION-CAROUSEL-6.webp?v=1774042258388&options=" width="400" height="400" /> 7782 7783 </div> 7784 <div class="Collection-Header-Carousel-Message__Warpper-Content--Item-Title"> 7785 Rings 7786 </div> 7787 </a> 7788 </div> 7789 7790 7791 7792 7793 <div class="Collection-Header-Carousel-Message__Warpper-Content--Item swiper-slide"> 7794 <a href="/products/lwp-gift-card"> 7795 <div class="Collection-Header-Carousel-Message__Warpper-Content--Item-Image"> 7796 7797 7798 7799 <img src="//www.littlewordsproject.com/cdn/shop/files/Frame_40235_50556e86-a693-43a9-830c-61ea82169016.jpg?v=1743598965" width="400" height="400"> 7800 7801 7802 7803 </div> 7804 <div class="Collection-Header-Carousel-Message__Warpper-Content--Item-Title"> 7805 Gift Cards 7806 </div> 7807 </a> 7808 </div> 7809 7810 7811 <div class="Collection-Header-Carousel-Message__Warpper-Content--Item swiper-slide Last-Item"></div> 7812 7813 7814 </div> 7815 </div> 7816 <div class="Collection-Header-Carousel-Message__Warpper-Content-scrollbar"></div> 7817 7818 </div> 7819</div> 7820 7821 7822<style> 7823 .SectionHeader__onlyTitle--center { 7824 text-align: center; 7825 } 7826 .SectionHeader__onlyTitle--left { 7827 text-align: start; 7828 } 7829 .SectionHeader__onlyTitle--right { 7830 text-align: end; 7831 } 7832</style> 7833
7834<script> 7835 document.addEventListener('DOMContentLoaded', function () { 7836 const swiper = new Swiper('.swiperCollection', { 7837 direction: 'horizontal', 7838 slidesPerView: 'auto', 7839 freeMode: false, 7840 spaceBetween: 20, 7841 freeMode: true, 7842 mousewheel: { 7843 releaseOnEdges: true, 7844 }, 7845 scrollbar: { 7846 el: '.Collection-Header-Carousel-Message__Warpper-Content-scrollbar', 7847 draggable: true, 7848 }, 7849 }); 7850 }); 7851</script>
7851 7852 7853 7854 7855<style> #shopify-section-template--26985961062481__collection-banner .Collection-Header-Carousel {margin: 4px 0;} #shopify-section-template--26985961062481__collection-banner .Collection-Header-Carousel-Message__Warpper {padding: 0 !important;} #shopify-section-template--26985961062481__collection-banner .Collection-Header-Carousel-Message__Warpper-Content--Item.swiper-slide {margin-left: 13px !important; margin-right: -4px !important;} #shopify-section-template--26985961062481__collection-banner .Collection-Header-Carousel-Message__Warpper-Content-scrollbar {display: none !important;} </style></section><section id="shopify-section-template--26985961062481__main" class="shopify-section shopify-section--main-collection"> 7856 7857 7858<style> 7859 #shopify-section-template--26985961062481__main { 7860 padding-top: 0px; 7861 padding-bottom: 45px; 7862 } 7863 @media (max-width: 767px) { 7864 #shopify-section-template--26985961062481__main { 7865 padding-top: 0px; 7866 padding-bottom: 45px; 7867 } 7868 } 7869</style> 7870 7871<style> 7872 #shopify-section-template--26985961062481__main { 7873 --product-list-horizontal-spacing-factor: 1; 7874 --product-list-vertical-spacing-factor: 1; 7875 7876 7877 --collection-items-per-row-medium: 2; 7878 --collection-items-per-row-large: 1; 7879 } 7880 7881 #shopify-section-template--26985961062481__main .product-list { 7882 --product-list-max-items-per-row-allowed: 99 !important; 7883 } 7884 7885 @media screen and (min-width: 700px) { 7886 #shopify-section-template--26985961062481__main { 7887 7888 --collection-items-per-row-compact: 4; 7889 --collection-items-per-row-medium: 3; 7890 --collection-items-per-row-large: 2; 7891 } 7892 } 7893 7894 @media screen and (min-width: 1000px) { 7895 #shopify-section-template--26985961062481__main {--collection-items-per-row-compact: 6; 7896 --collection-items-per-row-medium: 4; 7897 --collection-items-per-row-large: 3;} 7898 7899 #shopify-section-template--26985961062481__main .collection {} 7900 } 7901 7902 @media screen and (min-width: 1400px) { 7903 #shopify-section-template--26985961062481__main {} 7904 } 7905 7906 7907</style><div class="container" 7908 data-section-index="2" 7909 data-disable-reveal 7910> 7911 7912 7913 <div id="collection-content-template--26985961062481__main" class="v-stack gap-6 sm:gap-4" data-grid-collection="0" > 7914 <div class="collection-custom-header-message"> 7915 <div class="left-content"> 7916 <div class="Collection-Custom-Message"> 7917 <div class="Collection-Custom-Message__Warpper"> 7918 7919 7920 7921 <div class="Collection-Custom-Message__Warpper-Image"> 7922 7923 <img src="https://original.accentuate.io/173291110481/1708033595040/CAMPAIGN-NAME---MOBILE-COLLECTION-CAROUSEL-3.webp?v=1774042219905" alt="" /> 7924 7925 </div> 7926 7927 7928 <div class="Collection-Custom-Message__Warpper-Content"> 7929 <p data-start="137" data-end="368" data-pasted="true">Each piece invites you to <u>love yourself louder</u>. Wear your word, then <u>pass it on</u> to <u>spread kindness</u> wherever it goes.</p><p data-start="370" data-end="398"><br></p> 7930 </div> 7931 7932 </div> 7933</div> 7934 7935<style> 7936 .Collection-Custom-Message { 7937 max-width: 695px; 7938 } 7939</style> 7940 7941 </div> 7942 <div class="right-content"> 7943 <button class="typography-desktop-14--button typography-mobile-13--button button--lwp button button--outline" aria-controls="ais-filter-sort" aria-expanded="false" 7944 style="width:fit-content;--button-background: var(--color-electric-blue-rgb);--button-outline-color: var(--color-electric-blue-rgb);--button-text-color: var(--color-white-rgb);" 7945 >Filter & Sort</button> 7946 </div> 7947 </div> 7948 7949 7950 <div class="ais-toolbar h-stack justify-between align-center"> 7951 <div class="ais-current-refined-values-container"></div> 7952 <div class="ais-result h-stack gap-6"> 7953 <div class="ais-result-count"></div> 7954 <div class="ais-clear-refinements-container"></div> 7955 </div> 7956 </div> 7957 7958 7959 <div class="CollectionMain" data-jebbit-index="4"></div></div> 7960</div> 7961 7962 <div class="popup js--popup" data-popup="collection-quiz" data-popup-trigger-index="4"> 7963 <div class="popup-content"> 7964 <div class="popup-close"><svg aria-hidden="true" focusable="false" fill="none" width="16" class="icon icon-close" viewBox="0 0 16 16"> 7965 <path d="m1 1 14 14M1 15 15 1" stroke="currentColor" stroke-width="1.5"/> 7966 </svg> 7967 7968 </div> 7969 <iframe class="jebbit-iframe" src="https://littlewords.jebbit.com/srohybva?L=Full+Page&JC=Shop+All&deferred=true" seamless="true" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen style="width:100%;min-height:600px;" onload='function embedJebbit(t){function e(t){var e="attach"===t?window.addEventListener:window.removeEventListener;e("DOMContentLoaded",n,!1),e("load",n,!1),e("scroll",n,!1),e("resize",n,!1)}var i=document.querySelector(t);function n(){var t,e,n,o;e=(t=i).getBoundingClientRect(),n=t.clientHeight/2,o=t.clientWidth/2,e.top>=0&&e.left>
7969=0&&e.top<=(window.innerHeight||document.documentElement.clientHeight)-n&&e.left<=(window.innerWidth||document.documentElement.clientWidth)-o&&i.contentWindow.postMessage("startJebbitCampaign","*")}window.addEventListener("message",function t(i){i&&"https://littlewords.jebbit.com"===i.origin&&("jebbitSessionCreated"===i.data?e("remove",n):"jebbitCampaignLoaded"===i.data?n():i.data&&"redirect"===i.data.action&&i.data.options&&i.data.options.link&&(window.location.href=i.data.options.link))},!1),e("attach")}embedJebbit(".jebbit-iframe")'></iframe>
7969<script>window.addEventListener("message",function(t){t&&"https://littlewords.jebbit.com"===t.origin&&t.data&&"addToCart"===t.data.action&&(t.source.postMessage({type:"response",isShopify:void 0!==window.Shopify},t.origin),window.Shopify&&fetch(window.Shopify.routes.root+"cart/add.js",{method:"POST",body:JSON.stringify(t.data.formData),headers:{"Content-Type":"application/json"}}).then(function(t){console.log(t)}).catch(function(t){console.log(response)}))});</script>
7969 7970 </div> 7971 <div class="popup-bg"></div> 7972 </div> 7973 7974 7975<style> 7976 7977 .ais-Hits-item .collection-grid-description { 7978 display: none; 7979 } 7980 7981</style> 7982
7983<script> 7984window.storytellings = window.storytellings || {}; 7985 7986async function loadStorytellingBlocks() { 7987 try { 7988 // Use Shopify's Section Rendering API to fetch storytelling blocks 7989 const baseUrl = window.location.pathname || window.Shopify?.routes?.root; 7990 const response = await fetch(`${baseUrl}?sections=storytelling-block`); 7991 7992 if (!response.ok) { 7993 throw new Error(`HTTP error! status: ${response.status}`); 7994 } 7995 7996 const data = await response.json(); 7997 const htmlContent = data['storytelling-block']; 7998 7999 if (!htmlContent) { 8000 console.warn('No storytelling-block content found in response'); 8001 return; 8002 } 8003 8004 // Create a temporary DOM element to parse the HTML 8005 const tempDiv = document.createElement('div'); 8006 tempDiv.innerHTML = htmlContent; 8007 8008 // Find all .rt_storytelling elements in the response 8009 const storytellingElements = tempDiv.querySelectorAll('.rt_storytelling'); 8010 8011 if (storytellingElements.length === 0) { 8012 console.log('No storytelling elements found'); 8013 return; 8014 } 8015 8016 console.log(`Found ${storytellingElements.length} storytelling elements`); 8017 insertStorytellingElements(storytellingElements); 8018 8019 } catch (error) { 8020 console.error('Failed to load storytelling blocks:', error); 8021 } 8022} 8023 8024function insertStorytellingElements(storytellingElements) { 8025 // Find the target product grid 8026 const productGrid = document.querySelector('ol.ns-product-grid'); 8027 8028 if (!productGrid) { 8029 console.warn('Element with class ns-product-grid (ol) not found'); 8030 return; 8031 } 8032 8033 storytellingElements.forEach(element => { 8034 const afterProductId = element.dataset.afterProduct; 8035 const position = element.dataset.position; 8036 const storytellingId = element.dataset.storytellingId || element.id; 8037 8038 // Check if this storytelling element already exists in the DOM 8039 const existingElement = productGrid.querySelector(`[data-storytelling-id="${storytellingId}"]`); 8040 if (existingElement) { 8041 console.log(`Storytelling element with id "${storytellingId}" already exists, skipping insertion`); 8042 return; 8043 } 8044 8045 // Clone the element to avoid moving it from the temporary container 8046 const clonedElement = element.cloneNode(true); 8047 8048 if (afterProductId && afterProductId.trim() !== '') { 8049 // Insert after specific product 8050 insertAfterProduct(productGrid, clonedElement, afterProductId); 8051 } else if (position && position.trim() !== '') { 8052 // Insert at specific position 8053 insertAtPosition(productGrid, clonedElement, parseInt(position, 10)); 8054 } else { 8055 console.warn('Storytelling element has no after-product or position data:', element); 8056 } 8057 }); 8058} 8059 8060function insertAfterProduct(productGrid, storytellingElement, afterProductId) { 8061 // Find the product item with matching data-nosto-product value 8062 const targetProduct = productGrid.querySelector(`li[data-nosto-product="${afterProductId}"]`); 8063 8064 if (!targetProduct) { 8065 console.warn(`Product with data-nosto-product="${afterProductId}" not found`); 8066 return; 8067 } 8068 8069 // Create a wrapper li element for the storytelling content 8070 const listItem = document.createElement('li'); 8071 listItem.appendChild(storytellingElement); 8072 8073 // Insert immediately after the target product 8074 targetProduct.insertAdjacentElement('afterend', listItem); 8075 console.log(`Inserted storytelling element after product ${afterProductId}`); 8076} 8077 8078function insertAtPosition(productGrid, storytellingElement, position) { 8079 const children = Array.from(productGrid.children); 8080 8081 // Create a wrapper li element for the storytelling content 8082 const listItem = document.createElement('li'); 8083 listItem.appendChild(storytellingElement); 8084 8085 if (position <= 0 || position > children.length) { 8086 // Append at the end if position is out of bounds 8087 productGrid.appendChild(listItem); 8088 console.log(`Inserted storytelling element at end (position ${position} out of bounds)`); 8089 } else { 8090 // Insert at the specified position (1-based index) 8091 const targetChild = children[position - 1]; 8092 if (targetChild) { 8093 targetChild.insertAdjacentElement('beforebegin', listItem); 8094 console.log(`Inserted storytelling element at position ${position}`); 8095 } else { 8096 productGrid.appendChild(listItem); 8097 console.log(`Inserted storytelling element at end (fallback for position ${position})`); 8098 } 8099 } 8100} 8101 8102// Observer to watch for changes in the ns-product-grid element 8103function setupProductGridObserver() { 8104 const targetElement = document.querySelector('.CollectionMain'); 8105 8106 if (!targetElement) { 8107 console.warn('Element with class ns-product-grid not found'); 8108 return; 8109 } 8110 8111 const observer = new MutationObserver((mutations) => { 8112 mutations.forEach((mutation) => { 8113 if (mutation.type === 'childList' || mutation.type === 'attributes') { 8114 // Debounce the storytelling insertion to avoid multiple rapid calls 8115 if (window.storytellingTimeout) { 8116 clearTimeout(window.storytellingTimeout); 8117 } 8118 window.storytellingTimeout = setTimeout(() => { 8119 loadStorytellingBlocks(); 8120 }, 100); 8121 } 8122 }); 8123 }); 8124 8125 observer.observe(targetElement, { 8126 childList: true, 8127 subtree: true, 8128 attributes: true 8129 }); 8130 8131 console.log('Product grid observer initialized'); 8132} 8133 8134// Initialize when DOM is ready 8135if (document.readyState === 'loading') { 8136 document.addEventListener('DOMContentLoaded', () => { 8137 loadStorytellingBlocks(); 8138 setupProductGridObserver(); 8139 }); 8140} else { 8141 loadStorytellingBlocks(); 8142 setupProductGridObserver(); 8143} 8144</script>
8144 8145 8146</section><section id="shopify-section-template--26985961062481__nosto_recommendations_collection_JeUzPt" class="shopify-section shopify-section--nosto-collection-recommendations"> 8147 <div id="nosto-collection-recommendations"></div> 8148 8149 8150<div class="nosto_element" id="collection-page" 8151 data-section-index="3" 8152 8153></div> 8154 8155 8156</section> 8157 </main><!-- BEGIN sections: footer-group --> 8158<footer id="shopify-section-sections--26985957326929__footer" class="shopify-section shopify-section-group-footer-group shopify-section--footer disabled-reveal"><style> 8159 #shopify-section-sections--26985957326929__footer { 8160 --footer-content-justify-items: space-between; 8161 } 8162</style> 8163 8164 8165 8166 8167<div class="shopify-section footer "> 8168 <div class="container"> 8169 <div class="footer__inner"> 8170 8171 8172 8173 <div class="newsletter--hide--desktop"> 8174 <div class="newsletter-lwp" style="--text-color: #ffffff; 8175 --background-color: #da9fc4;"> 8176 <div class="newsletter main-wrapper lwp-flex"> 8177 <div class="newsletter__item newsletter__item-content lwp-flex"> 8178 <div class="newsletter__item newsletter__item-logo"> 8179 <svg class="" role="presentation" viewBox="0 0 103 90.8" style="enable-background:new 0 0 103 90.8;" xml:space="preserve"> 8180 <style type="text/css"> 8181 .st0{fill:#C4D9FB;stroke:#000000;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round;} 8182 .st1{fill:none;stroke:#000000;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round;} 8183 .st2{fill:#FFFFFF;stroke:#000000;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round;} 8184 .st3{fill:#000000;} 8185 </style> 8186 <g id="Layer_2_1_"> 8187 <g id="Layer_1-2"> 8188 <path class="st0" d="M82.9,90.1c0,0-82.4-10.9-82.2-11.9l7.4-56.1l84.3,11.4L85,88.5C84.9,89.5,83.9,90.2,82.9,90.1 8189 C82.9,90.1,82.9,90.1,82.9,90.1z"/> 8190 <line class="st1" x1="60.7" y1="63.6" x2="92.4" y2="33.4"/> 8191 <line class="st1" x1="8.1" y1="22.1" x2="33" y2="60"/> 8192 <path class="st0" d="M82.8,90.1c0.6,0.1,1.3-0.2,1.7-0.6L52,54.3c-1.9-2-4.9-2.4-7.2-1l-43.6,25C1.3,78.3,82.8,90.1,82.8,90.1z"/> 8193 <path class="st2" d="M48,48.3c0,0,4.6-3.7,8.2,0.3c4,4.3-0.2,13-9.8,14.2c0,0-11.4-5.9-8.4-13.7C40.2,43.6,47.6,46.3,48,48.3z"/> 8194 </g> 8195 </g> 8196 </svg> 8197 8198 </div> 8199 <div class="newsletter__message ff-heading"> 8200 <span class="newsletter__message--default active">Stay In The Know</span> 8201 <span class="newsletter__message--success">You're subscribed! Check your email for your discount.</span> 8202 <span class="newsletter__message--error">You're already subscribed to Little Words Project!</span> 8203 </div> 8204 </div> 8205 <div class="newsletter__item newsletter__item-form"> 8206 <div class="klaviyo-form-VSDkcB"></div> 8207 </div> 8208 </div> 8209</div> 8210 8211<style> 8212 .footer__inner .newsletter-lwp { 8213 padding: 0.75rem; 8214 min-width: 100%; 8215 width: 100%; 8216 } 8217 8218 .footer__inner .newsletter.main-wrapper.lwp-flex { 8219 --lwp-flex-row-gap: 1.125rem; 8220 --lwp-flex-column-gap: 1.125rem; 8221 } 8222 8223 body .footer__inner .newsletter-lwp > *, 8224 body .footer__inner .newsletter-lwp input, 8225 body .footer__inner .newsletter-lwp input::placeholder { 8226 font-size: 20px !important; 8227 } 8228 8229 body .footer__inner .newsletter__message.ff-heading { 8230 font-size: 18px; 8231 } 8232 8233 .footer__inner .newsletter__item.newsletter__item-logo svg { 8234 width: 50px; 8235 } 8236 8237 .footer__inner .newsletter__message { 8238 margin-bottom: 0; 8239 } 8240 8241 8242 8243 .footer__inner .klaviyo-form { 8244 width: 100%; 8245 } 8246 8247 @media screen and (max-width: 767px) { 8248 .newsletter__item.newsletter__item-form { 8249 padding: 1rem 0 1rem 1rem; 8250 } 8251 8252 .footer__inner .newsletter__message.ff-heading { 8253 padding-bottom: 20px; 8254 } 8255 } 8256 8257 @media screen and (min-width: 1024px) { 8258 8259 .footer__inner .newsletter-lwp { 8260 margin: 25px 0; 8261 } 8262 8263 .newsletter.main-wrapper.lwp-flex { 8264 flex-direction: row 8265 } 8266 } 8267 8268 @media screen and (min-width: 1281px) { 8269 .footer__inner .newsletter-lwp { 8270 max-width: fit-content; 8271 min-width: unset; 8272 } 8273 8274 .footer__inner .newsletter-lwp .newsletter { 8275 padding: 0.5rem 1rem; 8276 } 8277 8278 .footer__inner .newsletter__item.newsletter__item-form button:before { 8279 background-size: 19px; 8280 top: -2px; 8281 } 8282 8283 8284 .footer__inner .newsletter__item.newsletter__item-form button { 8285 width: 24px !important; 8286 height: 20px !important; 8287 } 8288 } 8289 8290 @media (min-width: 1281px) { 8291 .newsletter--hide--desktop { 8292 display: none !important; 8293 } 8294 } 8295 8296 @media (max-width: 1280px) { 8297 .newsletter--hide--tablet { 8298 display: none !important; 8299 } 8300 } 8301 8302</style> 8303 </div> 8304 8305 8306<div class="footer__block-list ff-text"><div class="footer__block footer__block--image v-stack" ><img src="//www.littlewordsproject.com/cdn/shop/files/footer-logo-v2.png?v=1706888329&width=1080" alt="" srcset="//www.littlewordsproject.com/cdn/shop/files/footer-logo-v2.png?v=1706888329&width=220 220w, //www.littlewordsproject.com/cdn/shop/files/footer-logo-v2.png?v=1706888329&width=440 440w" width="1080" height="815" loading="lazy" sizes="220px" style="--image-max-width: 220px" class="constrained-image hide--mobile"> 8307 <div class="newsletter--hide--tablet"> 8308 <div class="newsletter-lwp" style="--text-color: #ffffff; 8309 --background-color: #da9fc4;"> 8310 <div class="newsletter main-wrapper lwp-flex"> 8311 <div class="newsletter__item newsletter__item-content lwp-flex"> 8312 <div class="newsletter__item newsletter__item-logo">
8313 <svg class="" role="presentation" viewBox="0 0 103 90.8" style="enable-background:new 0 0 103 90.8;" xml:space="preserve"> 8314 <style type="text/css"> 8315 .st0{fill:#C4D9FB;stroke:#000000;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round;} 8316 .st1{fill:none;stroke:#000000;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round;} 8317 .st2{fill:#FFFFFF;stroke:#000000;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round;} 8318 .st3{fill:#000000;} 8319 </style> 8320 <g id="Layer_2_1_"> 8321 <g id="Layer_1-2"> 8322 <path class="st0" d="M82.9,90.1c0,0-82.4-10.9-82.2-11.9l7.4-56.1l84.3,11.4L85,88.5C84.9,89.5,83.9,90.2,82.9,90.1 8323 C82.9,90.1,82.9,90.1,82.9,90.1z"/> 8324 <line class="st1" x1="60.7" y1="63.6" x2="92.4" y2="33.4"/> 8325 <line class="st1" x1="8.1" y1="22.1" x2="33" y2="60"/> 8326 <path class="st0" d="M82.8,90.1c0.6,0.1,1.3-0.2,1.7-0.6L52,54.3c-1.9-2-4.9-2.4-7.2-1l-43.6,25C1.3,78.3,82.8,90.1,82.8,90.1z"/> 8327 <path class="st2" d="M48,48.3c0,0,4.6-3.7,8.2,0.3c4,4.3-0.2,13-9.8,14.2c0,0-11.4-5.9-8.4-13.7C40.2,43.6,47.6,46.3,48,48.3z"/> 8328 </g> 8329 </g> 8330 </svg> 8331 8332 </div> 8333 <div class="newsletter__message ff-heading"> 8334 <span class="newsletter__message--default active">Stay In The Know</span> 8335 <span class="newsletter__message--success">You're subscribed! Check your email for your discount.</span> 8336 <span class="newsletter__message--error">You're already subscribed to Little Words Project!</span> 8337 </div> 8338 </div> 8339 <div class="newsletter__item newsletter__item-form"> 8340 <div class="klaviyo-form-VSDkcB"></div> 8341 </div> 8342 </div> 8343</div> 8344 8345<style> 8346 .footer__inner .newsletter-lwp { 8347 padding: 0.75rem; 8348 min-width: 100%; 8349 width: 100%; 8350 } 8351 8352 .footer__inner .newsletter.main-wrapper.lwp-flex { 8353 --lwp-flex-row-gap: 1.125rem; 8354 --lwp-flex-column-gap: 1.125rem; 8355 } 8356 8357 body .footer__inner .newsletter-lwp > *, 8358 body .footer__inner .newsletter-lwp input, 8359 body .footer__inner .newsletter-lwp input::placeholder { 8360 font-size: 20px !important; 8361 } 8362 8363 body .footer__inner .newsletter__message.ff-heading { 8364 font-size: 18px; 8365 } 8366 8367 .footer__inner .newsletter__item.newsletter__item-logo svg { 8368 width: 50px; 8369 } 8370 8371 .footer__inner .newsletter__message { 8372 margin-bottom: 0; 8373 } 8374 8375 8376 8377 .footer__inner .klaviyo-form { 8378 width: 100%; 8379 } 8380 8381 @media screen and (max-width: 767px) { 8382 .newsletter__item.newsletter__item-form { 8383 padding: 1rem 0 1rem 1rem; 8384 } 8385 8386 .footer__inner .newsletter__message.ff-heading { 8387 padding-bottom: 20px; 8388 } 8389 } 8390 8391 @media screen and (min-width: 1024px) { 8392 8393 .footer__inner .newsletter-lwp { 8394 margin: 25px 0; 8395 } 8396 8397 .newsletter.main-wrapper.lwp-flex { 8398 flex-direction: row 8399 } 8400 } 8401 8402 @media screen and (min-width: 1281px) { 8403 .footer__inner .newsletter-lwp { 8404 max-width: fit-content; 8405 min-width: unset; 8406 } 8407 8408 .footer__inner .newsletter-lwp .newsletter { 8409 padding: 0.5rem 1rem; 8410 } 8411 8412 .footer__inner .newsletter__item.newsletter__item-form button:before { 8413 background-size: 19px; 8414 top: -2px; 8415 } 8416 8417 8418 .footer__inner .newsletter__item.newsletter__item-form button { 8419 width: 24px !important; 8420 height: 20px !important; 8421 } 8422 } 8423 8424 @media (min-width: 1281px) { 8425 .newsletter--hide--desktop { 8426 display: none !important; 8427 } 8428 } 8429 8430 @media (max-width: 1280px) { 8431 .newsletter--hide--tablet { 8432 display: none !important; 8433 } 8434 } 8435 8436</style> 8437 </div> 8438 8439 8440 <div class="footer__block-app-buttons h-stack flex-wrap gap-3"> 8441 8442 <p class="h6 full-width text-upper mb-15 fw-b no-ls">DOWNLOAD OUR APP!</p> 8443 8444 8445 <a href="https://apps.apple.com/us/app/little-words-project/id1154397428" aria-label="App Store"> 8446 8447<img src="//www.littlewordsproject.com/cdn/shop/files/app_store_6a81e22b-2660-4566-91b9-e9afe9744915.png?v=1713294192&width=359" alt="" srcset="//www.littlewordsproject.com/cdn/shop/files/app_store_6a81e22b-2660-4566-91b9-e9afe9744915.png?v=1713294192&width=140 140w, //www.littlewordsproject.com/cdn/shop/files/app_store_6a81e22b-2660-4566-91b9-e9afe9744915.png?v=1713294192&width=280 280w" width="359" height="120" loading="lazy" style="--image-max-width: 140px" sizes="140px" class="constrained-image"></a> 8448 8449 8450 8451 <a href="https://play.google.com/store/apps/details?id=co.tapcart.app.id_Mv9y7dtOJG" aria-label="App Store"> 8452 8453<img src="//www.littlewordsproject.com/cdn/shop/files/google_play_09cc76f4-9233-4b8e-8ec3-f75c5c9e5d90.png?v=1713294213&width=358" alt="" srcset="//www.littlewordsproject.com/cdn/shop/files/google_play_09cc76f4-9233-4b8e-8ec3-f75c5c9e5d90.png?v=1713294213&width=140 140w, //www.littlewordsproject.com/cdn/shop/files/google_play_09cc76f4-9233-4b8e-8ec3-f75c5c9e5d90.png?v=1713294213&width=280 280w" width="358" height="120" loading="lazy" style="--image-max-width: 140px" sizes="140px" class="constrained-image"></a> 8454 8455 </div></div><div class="footer__block footer__block--links" ><div class="v-stack gap-6 sm:gap-7"><p class="h6">DISCOVER</p><ul class="v-stack gap-2.5 unstyled-list uppercase ff-text typography-desktop-14--regular typography-mobile-13" role="list"><li> 8456 <a href="/pages/our-story" class="link-faded__">OUR STORY</a> 8457 </li><li> 8458 <a href="/pages/little-words-big-impact" class="link-faded__">OUR IMPACT</a> 8459 </li><li> 8460 <a href="https://swqr.link/connectlittlewordsproject" class="link-faded__">CONNECT YOUR WORD</a> 8461 </li><li> 8462 <a href="/pages/track-your-word" class="link-faded__">TRACK YOUR WORD</a> 8463 </li><li> 8464 <a href="/pages/events" class="link-faded__">UPCOMING EVENTS</a> 8465 </li><li> 8466 <a href="/pages/party-packages" class="link-faded__">HOST AN EVENT</a> 8467 </li><li> 8468 <a href="/pages/tyb-rewards" class="link-faded__">COMMUNITY REWARDS</a> 8469 </li><li> 8470 <a href="/pages/rewards" class="link-faded__">LOYALTY PROGRAM</a> 8471 </li></ul> 8472 </div></div><div class="footer__block footer__block--links" ><div class="v-stack gap-6 sm:gap-7"><p class="h6">SUPPORT</p><ul class="v-stack gap-2.5 unstyled-list uppercase ff-text typography-desktop-14--regular typography-mobile-13" role="list"><li> 8473 <a href="https://little-words-project.gorgias.help/en-US" class="link-faded__">FAQS</a> 8474 </li><li> 8475 <a href="https://littlewordsproject.loopreturns.com/" class="link-faded__">RETURNS</a> 8476 </li><li> 8477 <a href="https://www.littlewordsproject.com/pages/warranty" class="link-faded__">WARRANTY CLAIM</a> 8478 </li><li> 8479 <a href="/pages/size-guide" class="link-faded__">SIZE GUIDE</a> 8480 </li><li> 8481 <a href="https://www.littlewordsproject.com/account/" class="link-faded__">MY ACCOUNT</a> 8482 </li><li> 8483 <a href="/pages/contact" class="link-faded__">CONTACT US</a> 8484 </li><li> 8485 <a href="/pages/our-stores" class="link-faded__">OUR STORES</a> 8486 </li><li> 8487 <a href="/pages/careers" class="link-faded__">CAREERS</a> 8488 </li><li> 8489 <a href="/pages/promotion-terms" class="link-faded__">PROMOTION TERMS</a> 8490 </li><li> 8491 <a href="https://www.littlewordsproject.com/apps/redo/returns-portal/login?withdraw=true" class="link-faded__">EU WITHDRAWAL</a> 8492 </li></ul> 8493 </div></div><div class="footer__block footer__block--links" ><div class="v-stack gap-6 sm:gap-7"><p class="h6">Wholesale</p><ul class="v-stack gap-2.5 unstyled-list uppercase ff-text typography-desktop-14--regular typography-mobile-13" role="list"><li> 8494 <a href="/pages/wholesale-application" class="link-faded__">Wholesale Application</a> 8495 </li><li> 8496 <a href="/pages/store-locator" class="link-faded__">Independent Retailers</a> 8497 </li><li> 8498 <a href="/pages/corporate-gifting" class="link-faded__">Corporate Gifting</a> 8499 </li><li> 8500 <a href="/pages/private-label-opportunities" class="link-faded__">Private Label Inquiry</a> 8501 </li></ul> 8502 </div></div></div> 8503 8504 8505<div class="footer-logo-mobile hide--desktop"><img src="//www.littlewordsproject.com/cdn/shop/files/footer-logo-v2.png?v=1706888329&width=1080" alt="" srcset="//www.littlewordsproject.com/cdn/shop/files/footer-logo-v2.png?v=1706888329&width=220 220w, //www.littlewordsproject.com/cdn/shop/files/footer-logo-v2.png?v=1706888329&width=440 440w" width="1080" height="815" loading="lazy" sizes="220px" style="--image-max-width: 220px" class="constrained-image m-auto"></div> 8506 8507 <div class="footer__aside justify-content-center ff-text fs-base text-black"> 8508 8509 <!--BE IXF: For your website, the location is --> 8510 8511 <!--BE IXF: end -->
8511<div class="footer__copyright h-stack m-fd-column justify-between mt-25 mob-mt-15"> 8512 8513 <ul class="Linklist unstyled-list h-stack gap-8 mob-pb-15"><li class="Linklist__Item typography-desktop-14--regular typography-mobile-11"> 8514 <a href="/policies/privacy-policy" class="Link Link--primary text--size-base">Privacy Policy</a> 8515 </li><li class="Linklist__Item typography-desktop-14--regular typography-mobile-11"> 8516 <a href="/policies/terms-of-service" class="Link Link--primary text--size-base">Terms & Conditions</a> 8517 </li><li class="Linklist__Item"> 8518 <span class="Link Link--primary text--size-base" id="accessibilityWidget" tabindex="0" style="cursor: pointer;"> 8519 8520 Accessibility 8521 </span> 8522 </li> 8523 </ul> 8524 8525 <!--BE IXF: For your website, the location is --> 8526 <div class="be-ix-link-block"><!--Link Block Target Div--></div> 8527 <!--BE IXF: end --> 8528 <p class="heading copyright mob-mt-15 text-capitalize fs-text typography-desktop-14--regular typography-mobile-11 no-ls">© 2026 Little Words Project</p> 8529 </div></div> 8530 </div> 8531 </div> 8532</div> 8533 8534</footer> 8535<!-- END sections: footer-group --> 8536 8537 8538 8539 8540 8541 8542 8543 8544 8545<style> 8546 .promo-progress-bar { 8547 background: #c4d9fb; 8548 } 8549 .promo-progress-bar-discount-unlocked { 8550 background: #C4D9FB; 8551 } 8552 </style> 8553 8554<div id="popup-size" style="display: none; top: 50% !important;"> 8555 <div class="modal-content"> 8556 <div class="head-popup line"> 8557 <p>Find Your Wrist Size</p> 8558 <button id="close-popup-size"><img src="//www.littlewordsproject.com/cdn/shop/t/940/assets/close.svg?v=148444070865264718551763029466" alt="Close image"></button> 8559 </div> 8560 <div class="content-popup"> 8561 <p>Here are the steps to determine your wrist size. For the most precise bracelet fit, refer to the size chart. If you desire a looser fit, consider sizing up.</p> 8562 8563 <div class="popup-steps"> 8564 <img src="https://cdn.shopify.com/s/files/1/1259/9863/files/use-tape.png?v=1718923640" alt="" class="popup-img" > 8565 <div class="popup-steps-need"> 8566 <p class="subtitle line">Option 1 - Use a Flexible Measuring Tape</p> 8567 <span class="bold">You'll need:</span><br> 8568 <div class="conten-icon"> 8569 <img src="//www.littlewordsproject.com/cdn/shop/t/940/assets/tape.svg?v=123021812364588334481763029464" alt="Tape image"><span>Flexible measuring tape</span> 8570 </div> 8571 <p>Place your hand palm-up and encircle your wrist with the measuring tape, positioning it just above the wrist bone. Record the measurement of your wrist circumference.</p> 8572 </div> 8573 </div> 8574 <div class="popup-steps"> 8575 <img src="https://cdn.shopify.com/s/files/1/1259/9863/files/use-string.png?v=1718923640" alt="" class="popup-img" > 8576 <div class="popup-steps-need"> 8577 <p class="subtitle line">Option 2 - Use a String</p> 8578 <span class="bold">You'll need:</span><br> 8579 <div class="conten-icon"> 8580 <img src="//www.littlewordsproject.com/cdn/shop/t/940/assets/strip.svg?v=171181318499722981571763029462" alt="String or strip image"><span>String or strip of paper </span> 8581 <img src="//www.littlewordsproject.com/cdn/shop/t/940/assets/ruler.svg?v=99874418840746322821763029462" alt="Ruler image"><span>Ruler</span> 8582 <br><img src="//www.littlewordsproject.com/cdn/shop/t/940/assets/pen.svg?v=139014683506634798951763029463" alt="Pen image"><span>Pen or Marker</span> 8583 </div> 8584 <p>With your hand open and facing upward, loop the string or strip of paper around your wrist, above the wrist bone. Make a mark where the ends meet, then lay the string or paper flat and measure it to the mark for your wrist size. Remember to record the measurement.</p> 8585 </div> 8586 </div> 8587 <div class="popup-steps"> 8588 <img src="https://cdn.shopify.com/s/files/1/1259/9863/files/Size_Guide_-_SITE-removebg-preview.png?v=1752174786" alt="" class="popup-img" > 8589 <div class="popup-steps-need"> 8590 <p class="subtitle line">Option 3 - Printable Size guide</p>
8591 <span class="bold">You'll need:</span><br> 8592 <div class="conten-icon"> 8593 <img src="//www.littlewordsproject.com/cdn/shop/t/940/assets/printer.svg?v=91998678654548696571763029464" alt="Printer image"><span>Printer</span><br> 8594 <img src="//www.littlewordsproject.com/cdn/shop/t/940/assets/scissorrs.svg?v=140121377277801210361763029462" alt="Scissors image"><span>Scissors</span> 8595 </div> 8596 <p class="m-24">Print this <a href="https://cdn.shopify.com/s/files/1/1259/9863/files/SizeGuide_ebd023bb-c53f-4527-b16f-87301a006eed.pdf?v=1771608531" target="_blank">PDF</a>, ensuring that the "Scale to fit" option is disabled in the print settings dialogue box. The Wrist Sizer must be printed on an A4 (8 1/2 x 11 inches) size page. Cut the Paper Wrist Sizer and follow the instructions. 8597 Watch the full instructional video <a href="/pages/size-guide-2-0">here</a>.</p> 8598 </div> 8599 </div> 8600 8601 </div> 8602 </div> 8603</div>
8604<script src="//www.littlewordsproject.com/cdn/shop/t/940/assets/popup-size.js?v=13388638199576370931763029463" defer></script>
8604 8605 <!-- Start Image Lazyload -->
8606<script> 8607 window.lazySizesConfig = { 8608 loadHidden: false, 8609 hFac: 0.5, 8610 expFactor: 2, 8611 ricTimeout: 150, 8612 lazyClass: 'Image--lazyLoad', 8613 loadingClass: 'Image--lazyLoading', 8614 loadedClass: 'Image--lazyLoaded', 8615 }; 8616</script>
vendor: 1 bytes, line 8616
8616
8617<script src="//www.littlewordsproject.com/cdn/shop/t/940/assets/lazysizes.min.js?v=174358363404432586981763029464" async></script>
8617 8618<!-- End Image Lazyload --> 8619 8620 8621 <link rel="preload" href="https://cdn.jsdelivr.net/npm/flatpickr/dist/flatpickr.min.css" as="style" onload="this.rel='stylesheet'"> 8622<noscript><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/flatpickr/dist/flatpickr.min.css"></noscript>
8623<script type="module" src="https://cdn.jsdelivr.net/npm/flatpickr/dist/flatpickr.min.js"></script>
8623 8624 8625<link rel="preload" href="https://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.css" as="style" onload="this.rel='stylesheet'"> 8626<noscript><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.css"></noscript>
8627<script defer src="https://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.js"></script>
8627 8628
8629<script type="module" src="//www.littlewordsproject.com/cdn/shop/t/940/assets/gift-card-form.module.js?v=163867038818316568111772486690"></script>
vendor: 1 bytes, line 8629
8629
8630<script type="module" src="//www.littlewordsproject.com/cdn/shop/t/940/assets/quick-buy.module.js?v=11163870052573205111781861737"></script>
vendor: 1 bytes, line 8630
8630
8631<script type="module" src="//www.littlewordsproject.com/cdn/shop/t/940/assets/custom.js?v=60511115120773168251788858135" defer></script>
vendor: 1 bytes, line 8631
8631
8632<script type="module" src="//www.littlewordsproject.com/cdn/shop/t/940/assets/custom.v2.js?v=4070371640059898371763029465"></script>
8632 8633 8634 8635 8636 8637 8638 8639 8640<!-- Start Epsilon Tag --> 8641
8642<script> 8643 var dtm_config = { 8644 dtm_user_id: "", 8645 dtm_email_hash: "", 8646 dtmc_department: "", 8647 dtmc_category: "Shop All Bracelets \u0026 Accessories", 8648 dtmc_sub_category: "", 8649 dtmc_product_id: "", 8650 dtmc_brand: "", 8651 dtmc_upc: "", 8652 dtmc_mpn: "", 8653 }; 8654</script>
vendor: 1 bytes, line 8654
8654
8655<script src='https://dtm.littlewordsproject.com/profile/visit/js/1_0?dtm_cid=82580&dtm_cmagic=470dcc&dtm_fid=101&dtm_promo_id=3&cachebuster=1790962792'></script>
8655 8656 8657<!-- End Epsilon Tag --> 8658 8659 8660 8661 8662
8662<script defer> 8663 var initGorgiasChatPromise = (window.GorgiasChat) ? window.GorgiasChat.init() : new Promise(function (resolve) { window.addEventListener('gorgias-widget-loaded', function () { resolve();})}); 8664 8665 function updateGorgiasChat(iframe, iframeDocument) { 8666 if (iframe) { 8667 iframe.style.cssText= ` 8668 display: block; 8669 bottom: 120px; 8670 right: 27px!important; 8671 width: 48px; 8672 height: 52px; 8673 z-index: 2 !important;`; 8674 } 8675 if (iframeDocument) { 8676 const removeSpan = iframeDocument.querySelector('span'); 8677 const messengerButton = iframeDocument.querySelector('[data-testid="gorgias-chat-messenger-button"]'); 8678 if (removeSpan && messengerButton) { 8679 removeSpan.style.cssText= 'display: none;'; 8680 messengerButton.style.cssText = 'padding: 21px; height: auto; background: rgb(218,159,196);'; 8681 const childs = messengerButton.querySelectorAll('div'); 8682 if (childs.length > 0) { 8683 childs.forEach((item, index) => { 8684 item.style.cssText= 'left: 0;right: 0; margin: auto;'; 8685 if (index === 0) { 8686 let svgPath = item.querySelector('svg path'); 8687 if (svgPath) { 8688 svgPath.style.cssText= 'fill: #ffffff'; 8689 svgPath.setAttribute('fill', 'white'); 8690 listenerChanges(); 8691 } 8692 } 8693 }); 8694 } 8695 } 8696 } 8697 } 8698 8699 function getIframe() { 8700 let iframe = document.querySelector("#chat-button"); 8701 const iframes = document.querySelectorAll('#gorgias-chat-container iframe'); 8702 if (!iframe) { 8703 if (iframes.length == 1) { 8704 iframe = iframes[0]; 8705 } 8706 if (iframes.length > 1) { 8707 iframe = iframes[iframes.length - 1]; 8708 } 8709 } 8710 return iframe; 8711 } 8712 8713 function listenerChanges() { 8714 const iframe = getIframe(); 8715 if (iframe) { 8716 const iframeDocument = iframe.contentDocument || iframe.contentWindow.document; 8717 if (iframeDocument) { 8718 const observer = new MutationObserver((mutations, observer) => { 8719 updateGorgiasChat(iframe, false); 8720 }); 8721 observer.observe(iframeDocument, { 8722 subtree: true, 8723 attributes: true 8724 }); 8725 } 8726 } 8727 } 8728 8729 initGorgiasChatPromise.then(function() { 8730 const iframe = getIframe(); 8731 if (iframe) { 8732 iframe.addEventListener('load', function() { 8733 const iframeDocument = iframe.contentDocument || iframe.contentWindow.document; 8734 if (iframeDocument) { 8735 setTimeout(()=>{ 8736 updateGorgiasChat(iframe); 8737 }, 500); 8738 setTimeout(()=>{ 8739 updateGorgiasChat(false, iframeDocument); 8740 }, 400); 8741 } 8742 }); 8743 } 8744 }) 8745 8746 document.addEventListener('DOMContentLoaded', () => { 8747 let attempts = 6; 8748 function updateAccessibility() { 8749 if (attempts > 0) { 8750 setTimeout(()=> { 8751 const accessibility = document.querySelector('#userwayAccessibilityIcon'); 8752 if (accessibility) { 8753 accessibility.style.cssText = `display: block; 8754 bottom: 70px !important; 8755 right: 27px !important; 8756 position: fixed !important; 8757 transform: unset !important; 8758 left: unset !important; 8759 background: rgb(218,159,196) !important; 8760 background-color: rgb(218,159,196) !important; 8761 width: 48px !important; 8762 height: 48px !important; 8763 max-width: 48px !important; 8764 max-height: 48px!important; 8765 display: flex; 8766 justify-content: center; 8767 align-items: center;`; 8768 } else { 8769 attempts = attempts - 1; 8770 updateAccessibility(); 8771 } 8772 }, 2200); 8773 } 8774 } 8775 8776 let cleanUserTries = 0; 8777 function cleanUserWayButtonsWrapper() { 8778 const userwayButtonsWrapper = document.querySelector('.userway_buttons_wrapper'); 8779 if (userwayButtonsWrapper) { 8780 userwayButtonsWrapper.style.cssText = 'left: 0; right: 0; transform: unset; z-index: 2 !important;'; 8781 const userwayIcon = document.querySelector('img.ui_b'); 8782 if (userwayIcon) { 8783 userwayIcon.src = userwayIcon.src.replace('body_bl', 'body_wh'); 8784 } 8785 const accessibilityWrapper = document.querySelector('.uwy.umb.userway_p3'); 8786 if (accessibilityWrapper) { 8787 setTimeout(() => { 8788 accessibilityWrapper.style.cssText = 'display: block !important;'; 8789 }, 2000); 8790 } 8791 } else { 8792 if (cleanUserTries <= 10) { 8793 cleanUserTries++; 8794 setTimeout(() => { 8795 cleanUserWayButtonsWrapper() 8796 }, 1000); 8797 } 8798 } 8799 } 8800 updateAccessibility(); 8801 cleanUserWayButtonsWrapper(); 8802 }); 8803 8804</script>
8804 8805 8806 <!--Gorgias Chat Widget Start--> 8807
8807<script id="gorgias-chat-widget-install" defer> 8808 !function(_) { 8809 _.GORGIAS_CHAT_APP_ID="6018", 8810 _.GORGIAS_CHAT_BASE_URL="us-east1-898b.production.gorgias.chat", 8811 _.GORGIAS_API_BASE_URL="config.gorgias.chat"; 8812 var e=new XMLHttpRequest;e.open("GET","https://config.gorgias.chat/applications/6018",!0), 8813 e.onload=function(t) { 8814 if(4===e.readyState) 8815 if(200===e.status){ 8816 var n=JSON.parse(e.responseText); 8817 if(!n.application||!n.bundleVersion)throw new Error("Missing fields in the response body - https://config.gorgias.chat/applications/6018"); 8818 if(_.GORGIAS_CHAT_APP=n.application, 8819 _.GORGIAS_CHAT_BUNDLE_VERSION=n.bundleVersion, 8820 n&&n.texts&&(_.GORGIAS_CHAT_TEXTS=n.texts), 8821 n&&n.sspTexts&&(_.GORGIAS_CHAT_SELF_SERVICE_PORTAL_TEXTS=n.sspTexts), 8822 !document.getElementById("gorgias-chat-container")) { 8823 var o=document.createElement("div"); 8824 o.id="gorgias-chat-container", 8825 document.body.appendChild(o); 8826 var r=document.createElement("script"); 8827 r.setAttribute("defer",!0), 8828 r.src="https://client-builds.production.gorgias.chat/{bundleVersion}/static/js/main.js".replace("{bundleVersion}",n.bundleVersion), 8829 document.body.appendChild(r) 8830 } 8831 } else 8832 console.error("Failed request GET - https://config.gorgias.chat/applications/6018") 8833 }, 8834 e.onerror=function(_){ 8835 console.error(_) 8836 }, 8837 e.send() 8838 }(window||{}); 8839 </script>
8839 8840 <!--Gorgias Chat Widget End--> 8841 8842<style> 8843 .uwy, body .uwy {z-index: 5000 !important;} 8844/* body.template-index .uwy.userway_p5 .uai { bottom: 80px !important; left: 20px !important;} */ 8845 /* Fix CLS: position:fixed removes the container from document flow; no size constraints avoids cross-browser iframe clipping */ 8846 #gorgias-chat-container { 8847 position: fixed !important; 8848 bottom: 0; 8849 right: 0; 8850 z-index: 9999; 8851 } 8852</style> 8853 8854 8855
8856<script defer> 8857 var maxRepetitions = 60 8858 var repetitionCount = 0 8859 var isWindowStyleAppended = false 8860 var gorgiasChatInterval = window.setInterval(function() { 8861 var container = document.querySelector('#gorgias-chat-container'); 8862 var chatButtonHead = container?.querySelector('#chat-button')?.contentWindow.document.querySelector('head'); 8863 var chatWindowHead = container?.querySelector('#chat-window')?.contentWindow.document.querySelector('head'); 8864 8865 if (chatButtonHead?.children.length && chatWindowHead?.children.length && !isWindowStyleAppended) { 8866 var buttonStyle = document.createElement('style'); 8867 buttonStyle.textContent = 'button[class*=messenger-button-iframe] {background: #DA9FC4; width: 50px; height: 50px;}'; 8868 buttonStyle.textContent += '#chat-button {width: 60px !important; height: 60px !important;}'; 8869 chatButtonHead.appendChild(buttonStyle); 8870 8871 var windowStyles = document.createElement('style'); 8872 windowStyles.textContent = '.message-window-iframe-1a7azey {background-color: #DA9FC4}'; // the custom CSS for the chat window 8873 chatWindowHead.appendChild(windowStyles); 8874 isWindowStyleAppended = true; 8875 } 8876 if (++repetitionCount == maxRepetitions) { 8877 window.clearInterval(gorgiasChatInterval); 8878 } 8879 }, 100); 8880</script>
8880 8881 8882 8883 8884 8885<!-- Footer Plugin -->
8886<script async type=âtext/javascriptâ src=âhttps://static.klaviyo.com/onsite/js/klaviyo.js?company_id=SqmXHTâ></s> 8887 8888
8889<script defer>(function(d){var s = d.createElement("script");s.setAttribute("data-account", "10ZXia8I58");s.setAttribute("src", "https://accessibilityserver.org/widget.js");(d.body || d.head).appendChild(s);})(document)</script>
8889<noscript>Please ensure Javascript is enabled for purposes of <a href="https://accessibilityserver.org">website accessibility</a></noscript> 8890 8891 8892 8893<!-- End Footer Plugin --> 8894 8895 8896 8897 8898 8899 8900
8900<script> 8901 document.addEventListener("fg-gifts:added", async () => { 8902 const CART_APPLY_DISCOUNT_CODES = ` 8903 mutation cartDiscountCodesUpdate($cartId: ID!, $discountCodes: [String!]) { 8904 cartDiscountCodesUpdate(cartId: $cartId, discountCodes: $discountCodes) { 8905 cart { 8906 id 8907 discountCodes { 8908 applicable 8909 code 8910 } 8911 } 8912 userErrors { 8913 code 8914 field 8915 message 8916 } 8917 } 8918 } 8919 ` 8920 const utils = { 8921 empty: (data) => { 8922 if (data === 0) { 8923 return true 8924 } 8925 if (typeof data == "number" || typeof data == "boolean") { 8926 return false 8927 } 8928 if (typeof data == "undefined" || data === null) { 8929 return true 8930 } 8931 if (typeof data.length != "undefined") { 8932 return data.length === 0 8933 } 8934 let count = 0 8935 for (let i in data) { 8936 if (data.hasOwnProperty(i)) { 8937 count++ 8938 } 8939 } 8940 8941 return count === 0 8942 }, 8943 getCookie: (cname) => { 8944 let name = cname + "=" 8945 let decodedCookie = document.cookie 8946 let ca = decodedCookie.split(';') 8947 for (let i = 0; i < ca.length; i++) { 8948 let c = ca[i] 8949 while (c.charAt(0) === ' ') { 8950 c = c.substring(1) 8951 } 8952 if (c.indexOf(name) === 0) { 8953 let value = c.substring(name.length, c.length) 8954 try { 8955 return decodeURIComponent(value) 8956 } catch (error) { 8957 console.warn('BOGOS track: Error decoding cookie', error) 8958 return undefined 8959 } 8960 } 8961 } 8962 return undefined 8963 }, 8964 routePath: (path) => { 8965 path = path.replace(/^\/+|\/+$/g, ''); 8966 return `${FGSECOMAPP.variables.Shopify?.routes?.root ?? "/"}${path}`; 8967 }, 8968 convertObjToString: (obj, type = "base64") => { 8969 return type === "uri" 8970 ? FGSECOMAPP.helper.LZString.compressToEncodedURIComponent(JSON.stringify(obj)) 8971 : FGSECOMAPP.helper.LZString.compressToBase64(JSON.stringify(obj)); 8972 } 8973 } 8974 const storefront = { 8975 createQuery: () => { 8976 const {access_token} = FGSECOMAPP.storefront || {}; 8977 const token = utils.getCookie("cart") ?? FGSECOMAPP.SHOPIFY_CART?.token; 8978 if (utils.empty(access_token) || utils.empty(token)) return {}; 8979 8980 return { 8981 url: `https://${Shopify?.shop}/api/2024-01/graphql.json`, 8982 headers: { 8983 "Content-Type": "application/json", 8984 "X-Shopify-Storefront-Access-Token": access_token 8985 }, 8986 variables: { 8987 cartId: `gid://shopify/Cart/${token}`, 8988 }, 8989 token 8990 } 8991 }, 8992 apply_discounts: async (discountCodes) => { 8993 try { 8994 const {url, headers, variables} = storefront.createQuery(); 8995 if (utils.empty(url)) return; 8996 8997 return fetch(url, { 8998 method: "POST", 8999 headers, 9000 body: JSON.stringify({ 9001 query: CART_APPLY_DISCOUNT_CODES, 9002 variables: { 9003 ...variables, 9004 discountCodes 9005 } 9006 }) 9007 }); 9008 } catch (e) { 9009 console.warn("BOGOS track: storefront discount failed", e); 9010 } 9011 } 9012 } 9013 9014 const apply_discounts = async (codes) => { 9015 const formData = new FormData; 9016 formData.append("checkout", "") 9017 9018 let codesApply = [ 9019 ...FGSECOMAPP.bogos_discounts_apply, 9020 ...codes
9021 ].filter(Boolean); 9022 FGSECOMAPP.bogos_discounts_apply = [...new Set(codesApply)]; 9023 codesApply = FGSECOMAPP.bogos_discounts_apply.join(","); 9024 9025 localStorage.setItem( 9026 FGSECOMAPP.variables.constants.bogos_discounts_apply, 9027 utils.convertObjToString(FGSECOMAPP.bogos_discounts_apply) 9028 ); 9029 9030 if (!codesApply.length) return; 9031 9032 try { 9033 const rs = await storefront.apply_discounts(FGSECOMAPP.bogos_discounts_apply) 9034 if (rs?.ok) return; 9035 9036 await fetch(`/cart?discount=${codesApply}`, { 9037 method: "POST", 9038 headers: { 9039 "bogos_bundle": codes.toString() 9040 }, 9041 body: formData 9042 }); 9043 9044 fetch(`/checkout?discount=${codesApply}`).then() 9045 } catch (e) { 9046 console.warn("BOGOS track: apply codes failed", codesApply, e) 9047 } 9048 } 9049 9050 await apply_discounts(FGSECOMAPP.arrOfferAdded.map(offerAdded =>
9050 offerAdded.code).filter(Boolean)) 9051}) 9052</script>
9052 9053 9054
9054<script defer> 9055 if (typeof nostojs !== 'undefined') { 9056 nostojs(function(api){ api.loadRecommendations(); }); 9057 } 9058</script>
9058 9059 9060 <!--Convert Bundle Start--> 9061
9061<script id="convert-bundle-loader" src="https://bundle.dyn-rev.app/loader.js?g_cvt_id=a26c083b-97ec-4cb2-8b88-f039a12cbc45" defer></script>
9061 9062 <!--Convert Bundle End--> 9063 9064 <!-- RIVO CSS for the product points --> 9065 <style> 9066/* --- Style the main wrapper --- */ 9067div#loy-potential-points { 9068 background: transparent; 9069 margin-bottom: 10px; 9070 padding: 0 !important; 9071 align-items: center; 9072 gap: 3px !important; 9073} 9074 9075/* --- Hide the title block --- */ 9076div#loy-potential-points div#potential-points-text h3 { 9077 display: none; 9078} 9079 9080/* --- Style the text --- */ 9081div#loy-potential-points div#potential-points-text p { 9082 font-size: 12px; 9083 color: #0D0C22; 9084 margin: 0; 9085 font-weight: 400; 9086} 9087 9088div#loy-potential-points div#potential-points-text strong, 9089div#loy-potential-points div#potential-points-text a { 9090 color: rgba(218, 159, 196, 1); 9091 font-weight: 400; 9092} 9093 9094/* --- Style the links --- */ 9095div#loy-potential-points div#potential-points-text a { 9096 text-decoration: underline; 9097} 9098 9099/* --- Style the icon --- */ 9100div#loy-potential-points img { 9101 width: 1.1em; 9102 height: 1.1em; 9103} 9104 9105</style> 9106 9107 9108
9108<script> 9109window.searchStorytelling = window.searchStorytelling || { 9110 queue: [], 9111 executionTimer: null, 9112 isExecuting: false, 9113 lastExecutedValue: '' 9114}; 9115 9116async function loadSearchStorytellingBlocks() { 9117 try { 9118 // Use Shopify's Section Rendering API to fetch storytelling blocks 9119 const baseUrl = window.location.pathname || window.Shopify?.routes?.root; 9120 const fetchUrl = `${baseUrl}?sections=storytelling-search-block`; 9121 const response = await fetch(fetchUrl); 9122 9123 if (!response.ok) { 9124 throw new Error(`HTTP error! status: ${response.status}`); 9125 } 9126 9127 const data = await response.json(); 9128 const htmlContent = data['storytelling-search-block']; 9129 9130 if (!htmlContent) { 9131 console.warn('No storytelling-search-block content found in response', data); 9132 return; 9133 } 9134 9135 const tempDiv = document.createElement('div'); 9136 tempDiv.innerHTML = htmlContent; 9137 9138 const storytellingElements = tempDiv.querySelectorAll('.rt_storytelling'); 9139 if (storytellingElements.length === 0) { 9140 return; 9141 } 9142 9143 // Store the storytelling elements for later use 9144 window.searchStorytelling.elements = storytellingElements; 9145 } catch (error) { 9146 console.error('Failed to load search storytelling blocks:', error); 9147 } 9148} 9149 9150// Queue management for storytelling verification 9151function enqueueStorytellingCheck(searchValue) { 9152 // Add to queue (replace any existing item with same value) 9153 const existingIndex = window.searchStorytelling.queue.findIndex(item => item.searchValue === searchValue); 9154 const queueItem = { 9155 searchValue: searchValue, 9156 timestamp: Date.now() 9157 }; 9158 9159 if (existingIndex !== -1) { 9160 window.searchStorytelling.queue[existingIndex] = queueItem; 9161 } else { 9162 window.searchStorytelling.queue.push(queueItem); 9163 } 9164 9165 // Clear existing timer 9166 if (window.searchStorytelling.executionTimer) { 9167 clearTimeout(window.searchStorytelling.executionTimer); 9168 } 9169 9170 // Set new timer to execute after 250ms of inactivity 9171 window.searchStorytelling.executionTimer = setTimeout(() => { 9172 executeStorytellingQueue(); 9173 }, 150); 9174} 9175 9176function executeStorytellingQueue() { 9177 if (window.searchStorytelling.isExecuting) { 9178 return; 9179 } 9180 9181 if (window.searchStorytelling.queue.length === 0) { 9182 return; 9183 } 9184 9185 // Get the current input value to ensure we have the most up-to-date search term 9186 const currentInput = document.querySelector('.header-search__input'); 9187 const currentSearchValue = currentInput ? currentInput.value.trim() : ''; 9188 9189 // Get the most recent item from queue 9190 const latestItem = window.searchStorytelling.queue[window.searchStorytelling.queue.length - 1]; 9191 const queueSearchValue = latestItem.searchValue; 9192 9193 // Use the current input value if it's different from queue value (user typed more) 9194 const searchValue = currentSearchValue || queueSearchValue; 9195 9196 // Skip if same as last executed value 9197 if (window.searchStorytelling.lastExecutedValue === searchValue) { 9198 window.searchStorytelling.queue = []; 9199 return; 9200 } 9201 9202 // Clear queue and execute 9203 window.searchStorytelling.queue = []; 9204 window.searchStorytelling.isExecuting = true; 9205 window.searchStorytelling.lastExecutedValue = searchValue; 9206 9207 try { 9208 if (searchValue && searchValue !== '') { 9209 checkAndInsertSearchStorytelling(searchValue); 9210 } else { 9211 // If search is empty, remove all storytelling elements 9212 const allExistingStorytellingElements = document.querySelectorAll('[data-storytelling-search-item="true"]'); 9213 allExistingStorytellingElements.forEach(el => el.remove()); 9214 } 9215 } finally { 9216 // Reset execution flag after processing 9217 setTimeout(() => { 9218 window.searchStorytelling.isExecuting = false; 9219 }, 100); 9220 } 9221} 9222 9223function checkAndInsertSearchStorytelling(searchValue) { 9224 9225 // Get stored storytelling elements 9226 const storytellingElements = window.searchStorytelling.elements; 9227 9228 if (!storytellingElements || storytellingElements.length === 0) { 9229 return; 9230 } 9231 9232 // Find the autocomplete suggestion list - try multiple possible selectors 9233 let suggestionList = document.querySelector('.ns-autocomplete_suggestion-list'); 9234 9235 // Fallback selectors for different autocomplete implementations 9236 if (!suggestionList) { 9237 suggestionList = document.querySelector('.predictive-search__products'); 9238 } 9239 9240 if (!suggestionList) { 9241 suggestionList = document.querySelector('.autocomplete-results'); 9242 } 9243 9244 if (!suggestionList) { 9245 // Look for any container that might hold search results 9246 suggestionList = document.querySelector('[class*="autocomplete"], [class*="suggestion"], [class*="search-result"]'); 9247 } 9248 9249 if (!suggestionList) { 9250 console.warn('RT: No suitable autocomplete suggestion container found'); 9251 return; 9252 } 9253 9254 // Get all existing storytelling elements in the DOM 9255 const existingStorytellingElements = document.querySelectorAll('[data-storytelling-search-item="true"]'); 9256 9257 // Track which storytelling elements should be kept 9258 const elementsToKeep = new Set(); 9259 let matchingElements = 0; 9260 9261 // Check each storytelling element for keyword matches
9262 storytellingElements.forEach((element, index) => { 9263 const searchKeywords = element.dataset.searchKeywords; 9264 const searchPosition = element.dataset.searchPosition; 9265 const storytellingId = element.dataset.searchStorytellingId || element.id; 9266 9267 if (!searchKeywords || !searchPosition) { 9268 return; 9269 } 9270 9271 let keywords; 9272 try { 9273 keywords = searchKeywords.split(',').map(k => k.trim()); 9274 } catch (e) { 9275 console.warn('Failed to parse search keywords:', searchKeywords); 9276 return; 9277 } 9278 9279 // Check if search value matches any of the keywords 9280 const searchValueLower = searchValue.toLowerCase(); 9281 const hasMatchingKeyword = keywords.some(keyword => { 9282 const keywordLower = keyword.toLowerCase(); 9283 // Check for partial matches - either keyword contains search or search contains keyword 9284 const searchContainsKeyword = searchValueLower.includes(keywordLower); 9285 const keywordContainsSearch = keywordLower.includes(searchValueLower); 9286 const match = searchContainsKeyword || keywordContainsSearch; 9287 return match; 9288 }); 9289 9290 if (hasMatchingKeyword) { 9291 matchingElements++; 9292 elementsToKeep.add(storytellingId); 9293 9294 // Check if element already exists in DOM 9295 const existingElement = document.querySelector(`[data-search-storytelling-id="${storytellingId}"]`); 9296 if (existingElement) { 9297 // SKip 9298 } else { 9299 insertStorytellingIntoSearch(suggestionList, element, parseInt(searchPosition, 10), storytellingId); 9300 } 9301 } 9302 }); 9303 9304 // Remove existing storytelling elements that don't match current search 9305 existingStorytellingElements.forEach(el => { 9306 const elementId = el.getAttribute('data-search-storytelling-id'); 9307 if (!elementsToKeep.has(elementId)) { 9308 el.remove(); 9309 } 9310 }); 9311} 9312 9313function insertStorytellingIntoSearch(suggestionList, storytellingElement, position, storytellingId) { 9314 // Find all product items within the suggestion list - try multiple selectors 9315 let productsWrapperList = document.querySelectorAll('.ns-autocomplete_products'); 9316 9317 // check the visible wrapper 9318 let productsWrapper = Array.from(productsWrapperList).find(wrapper => { 9319 return wrapper.checkVisibility(); 9320 }); 9321 9322 if (!productsWrapper) { 9323 productsWrapper = suggestionList.querySelector('.ns-product-grid'); 9324 } 9325 9326 let productItems = productsWrapper.querySelectorAll('.ns-product'); 9327 9328 // Fallback to other possible product item selectors 9329 if (productItems.length === 0) { 9330 productItems = suggestionList.querySelectorAll('[class*="product"]'); 9331 } 9332 9333 if (productItems.length === 0) { 9334 productItems = suggestionList.querySelectorAll('li, .item, .result-item'); 9335 } 9336 9337 // Keep if storytellingId exist in DOM 9338 const existingStorytelling = document.querySelector(`[data-search-storytelling-id="${storytellingId}"]`); 9339 if (existingStorytelling) { 9340 // keep existing, do not insert again 9341 return false; 9342 } 9343 9344 // Clone the storytelling element 9345 const clonedElement = storytellingElement.cloneNode(true); 9346 9347 // Mark this as a search storytelling item for easy cleanup 9348 clonedElement.setAttribute('data-storytelling-search-item', 'true'); 9349 clonedElement.setAttribute('data-search-storytelling-id', storytellingId); 9350 9351 // Create a wrapper that mimics the structure of other search results 9352 const wrapper = document.createElement('div'); 9353 wrapper.className = 'ns-product storytelling-search-result'; 9354 wrapper.setAttribute('data-storytelling-search-item', 'true'); 9355 wrapper.appendChild(clonedElement); 9356 9357 if (position <= 0 || position > productItems.length || productItems.length === 0) { 9358 // Append at the end if position is out of bounds or no products found 9359 suggestionList.appendChild(wrapper); 9360 } else { 9361 // Insert at the specified position (1-based index) 9362 const targetProduct = productItems[position - 1]; 9363 if (targetProduct) { 9364 // Insert immediately after the target product 9365 targetProduct.insertAdjacentElement('afterend', wrapper); 9366 } else { 9367 suggestionList.appendChild(wrapper); 9368 } 9369 } 9370} 9371 9372// Observer to watch for changes in the search form and input 9373function setupSearchStorytellingObserver() { 9374 const searchFormControl = document.querySelector('.header-search__form-control'); 9375 9376 if (!searchFormControl) { 9377 console.warn('Element with class header-search__form-control not found'); 9378 return; 9379 } 9380 9381 const searchInput = searchFormControl.querySelector('.header-search__input'); 9382 9383 if (!searchInput) { 9384 console.warn('Element with class header-search__input not found'); 9385 return; 9386 } 9387 9388 9389 // Observer for changes in the search results area 9390 const resultsObserver = new MutationObserver((mutations) => { 9391 // Skip if we're currently executing to avoid conflicts 9392 if (window.searchStorytelling.isExecuting) { 9393 return; 9394 } 9395 9396 let shouldCheckStorytelling = false;
9397 9398 mutations.forEach((mutation) => { 9399 if (mutation.type === 'childList') { 9400 // Check if new search results were added or existing ones modified 9401 const addedNodes = Array.from(mutation.addedNodes); 9402 const removedNodes = Array.from(mutation.removedNodes); 9403 9404 // Ignore changes to our own storytelling elements 9405 const hasNonStorytellingResults = addedNodes.some(node => { 9406 if (node.nodeType === Node.ELEMENT_NODE) { 9407 // Skip if this is our own storytelling element 9408 if (node.hasAttribute && node.hasAttribute('data-storytelling-search-item')) { 9409 return false; 9410 } 9411 return node.classList.contains('ns-product') || 9412 node.querySelector('.ns-product') || 9413 node.querySelector('.predictive-search__products') || 9414 node.classList.contains('ns-autocomplete_products') || 9415 node.querySelector('.ns-autocomplete_products'); 9416 } 9417 return false; 9418 }); 9419 9420 if (hasNonStorytellingResults) { 9421 shouldCheckStorytelling = true; 9422 } 9423 } 9424 }); 9425 9426 if (shouldCheckStorytelling) { 9427 const reSearchInput = document.querySelector('.header-search__input'); 9428 const currentSearchValue = reSearchInput ? reSearchInput.value : ''; 9429 if (currentSearchValue && currentSearchValue.trim() !== '') { 9430 enqueueStorytellingCheck(currentSearchValue.trim()); 9431 } 9432 } 9433 }); 9434 9435 // Watch for changes in the search area with more comprehensive options 9436 const searchContainer = document.querySelector('.header-search'); 9437 if (searchContainer) { 9438 resultsObserver.observe(searchContainer, { 9439 childList: true, 9440 subtree: true, 9441 attributes: true, 9442 attributeFilter: ['class', 'style', 'data-visible'] 9443 }); 9444 } 9445 9446 // Listen for input events to enqueue storytelling checks 9447 searchInput.addEventListener('input', () => { 9448 const searchValue = searchInput.value; 9449 9450 if (searchValue && searchValue.trim() !== '') { 9451 enqueueStorytellingCheck(searchValue.trim()); 9452 } else { 9453 // Clear queue and storytelling elements when search is empty 9454 window.searchStorytelling.queue = []; 9455 window.searchStorytelling.lastExecutedValue = ''; 9456 if (window.searchStorytelling.executionTimer) { 9457 clearTimeout(window.searchStorytelling.executionTimer); 9458 } 9459 9460 const suggestionList = document.querySelector('.ns-autocomplete_suggestion-list') || 9461 document.querySelector('.predictive-search__products') || 9462 document.querySelector('.autocomplete-results') || 9463 document.querySelector('[class*="autocomplete"], [class*="suggestion"], [class*="search-result"]'); 9464 9465 if (suggestionList) { 9466 const existingStorytellingElements = suggestionList.querySelectorAll('[data-storytelling-search-item="true"]'); 9467 existingStorytellingElements.forEach(el => el.remove()); 9468 } 9469 } 9470 }); 9471 9472 // Also listen for keyup events to catch any missed changes 9473 searchInput.addEventListener('keyup', () => { 9474 const searchValue = searchInput.value; 9475 9476 if (searchValue && searchValue.trim() !== '') { 9477 enqueueStorytellingCheck(searchValue.trim()); 9478 } 9479 }); 9480 9481 // Listen for paste events 9482 searchInput.addEventListener('paste', () => { 9483 setTimeout(() => { 9484 const searchValue = searchInput.value; 9485 if (searchValue && searchValue.trim() !== '') { 9486 enqueueStorytellingCheck(searchValue.trim()); 9487 } 9488 }, 10); // Small delay to ensure paste content is processed 9489 }); 9490 9491 // Listen for focus events on search input 9492 searchInput.addEventListener('focus', () => { 9493 setTimeout(() => { 9494 const searchValue = searchInput.value; 9495 if (searchValue && searchValue.trim() !== '') { 9496 enqueueStorytellingCheck(searchValue.trim()); 9497 } 9498 }, 100); 9499 }); 9500} 9501 9502// Initialize search storytelling when DOM is ready 9503if (document.readyState === 'loading') { 9504 document.addEventListener('DOMContentLoaded', () => { 9505 loadSearchStorytellingBlocks(); 9506 setupSearchStorytellingObserver(); 9507 }); 9508} else { 9509 loadSearchStorytellingBlocks(); 9510 setupSearchStorytellingObserver(); 9511} 9512 9513// Safety mechanism to reset execution flag and clear old queue items 9514setInterval(() => { 9515 // Reset execution flag if stuck 9516 if (window.searchStorytelling.isExecuting) { 9517 window.searchStorytelling.isExecuting = false;
9518 } 9519 9520 // Clear very old queue items (older than 10 seconds) 9521 const now = Date.now(); 9522 window.searchStorytelling.queue = window.searchStorytelling.queue.filter(item => { 9523 return (now - item.timestamp) < 3000; 9524 }); 9525 9526 // Periodic check to ensure we're in sync with current input value 9527 const currentInput = document.querySelector('.header-search__input'); 9528 if (currentInput) { 9529 const currentValue = currentInput.value.trim(); 9530 // If input has a value but we haven't processed it, and no queue is pending 9531 if (currentValue && 9532 currentValue !== window.searchStorytelling.lastExecutedValue && 9533 window.searchStorytelling.queue.length === 0 && 9534 !window.searchStorytelling.isExecuting) { 9535 enqueueStorytellingCheck(currentValue); 9536 } 9537 } 9538}, 3000); // Check every 3 seconds 9539</script>
9539 9540 9541 9542
9543<script> 9544async function loadStorytellingBlocks() { 9545 // Validate that [data-nosto-element="search"] is present in the DOM 9546 if (!document.querySelector('[data-nosto-element="search"]')) { 9547 return; 9548 } 9549 9550 const params = new URLSearchParams(window.location.search); 9551 const searchQuery = params.get('q')?.trim(); 9552 9553 if (!searchQuery) return; 9554 9555 try { 9556 const baseUrl = window.location.pathname || window.Shopify?.routes?.root; 9557 const response = await fetch(`${baseUrl}?sections=storytelling-search-block`); 9558 9559 if (!response.ok) return; 9560 9561 const data = await response.json(); 9562 const htmlContent = data['storytelling-search-block']; 9563 if (!htmlContent) return; 9564 9565 const tempDiv = document.createElement('div'); 9566 tempDiv.innerHTML = htmlContent; 9567 const storytellingElements = tempDiv.querySelectorAll('.rt_storytelling'); 9568 9569 if (storytellingElements.length === 0) return; 9570 9571 insertStorytellingElements(storytellingElements, searchQuery); 9572 } catch (error) { 9573 console.error('Error loading storytelling blocks:', error); 9574 } 9575} 9576 9577function insertStorytellingElements(elements, searchQuery) { 9578 const productGrid = document.querySelector('ol.ns-product-grid, .product-list, [id^="product-list"]'); 9579 if (!productGrid) return; 9580 9581 const searchQueryLower = searchQuery.toLowerCase(); 9582 const matchedStorytellingIds = new Set(); 9583 9584 elements.forEach((element) => { 9585 const keywords = element.dataset.searchKeywords?.split(',').map(k => k.trim()) || []; 9586 const position = parseInt(element.dataset.searchPosition, 10); 9587 const storytellingId = element.dataset.searchStorytellingId || element.id; 9588 9589 if (!keywords.length || !position) return; 9590 9591 const hasMatch = keywords.some(keyword => { 9592 const keywordLower = keyword.toLowerCase(); 9593 return searchQueryLower.includes(keywordLower) || keywordLower.includes(searchQueryLower); 9594 }); 9595 9596 if (!hasMatch) return; 9597 9598 matchedStorytellingIds.add(storytellingId); 9599 9600 // Check if storytelling element already exists 9601 const existingElement = productGrid.querySelector(`li[data-search-results-storytelling][data-search-storytelling-id="${storytellingId}"]`); 9602 9603 if (existingElement) { 9604 // Check if element is already in the correct position 9605 const children = Array.from(productGrid.children); 9606 if (position > 0 && position <= children.length) { 9607 const targetChild = children[position - 1]; 9608 const nextSibling = targetChild.nextElementSibling; 9609 9610 // Only move if not already in the correct position 9611 if (nextSibling !== existingElement) { 9612 targetChild.insertAdjacentElement('afterend', existingElement); 9613 } 9614 } 9615 return; 9616 } 9617 9618 const listItem = document.createElement('li'); 9619 listItem.setAttribute('data-search-results-storytelling', 'true'); 9620 listItem.setAttribute('data-search-storytelling-id', storytellingId); 9621 listItem.appendChild(element.cloneNode(true)); 9622 9623 const children = Array.from(productGrid.children); 9624 if (position > 0 && position <= children.length) { 9625 children[position - 1].insertAdjacentElement('afterend', listItem); 9626 } 9627 }); 9628 9629 // Remove storytelling elements that don't match 9630 const allStorytellingElements = productGrid.querySelectorAll('li[data-search-results-storytelling]'); 9631 allStorytellingElements.forEach((listItem) => { 9632 const storytellingId = listItem.getAttribute('data-search-storytelling-id'); 9633 if (!matchedStorytellingIds.has(storytellingId)) { 9634 listItem.remove(); 9635 } 9636 }); 9637} 9638 9639// Watch for [data-nosto-element="search"] and load storytelling blocks 9640let debounceTimeout; 9641const observer = new MutationObserver(() => { 9642 if (document.querySelector('[data-nosto-element="search"]')) { 9643 // Clear previous timeout to prevent multiple calls 9644 clearTimeout(debounceTimeout); 9645 9646 debounceTimeout = setTimeout(() => { 9647 loadStorytellingBlocks(); 9648 }, 300); 9649 } 9650}); 9651 9652observer.observe(document.body, { 9653 childList: true, 9654 subtree: true 9655}); 9656 9657// Also check if [data-nosto-element="search"] is already in DOM on page load 9658if (document.readyState === 'loading') { 9659 document.addEventListener('DOMContentLoaded', loadStorytellingBlocks); 9660} else { 9661 loadStorytellingBlocks(); 9662} 9663</script>
vendor: 1 bytes, line 9663
9663
9664<script> 9665 window.nvdStopRedirect = true 9666 </script>
9666 9667 9668
9668<script defer src="https://static.shopmy.us/Affiliates/sms_aff_clicktrack.js?domain=littlewordsproject.com&expires=30"></script>
9668 9669 9670 <style> .custom-badge--size.most-popular {display: none;} .product-sticky-bar__info .size-chooser {display: none;} </style> 9671<div id="shopify-block-AR2NLc2c4ekp0em1iV__10111608272286102450" class="shopify-block shopify-app-block"><!-- BEGIN app snippet: disable-checkout-until-slots-load-with-listener --><style> 9672 .cart__ctas{ display: block !important } 9673 .cart-notification__links .button.button--primary.button--full-width{ display: none !important } 9674</style>
9675<script> 9676var isHulkAppGetDetailsRequestListened = false; 9677var validCartForms = getvalidCartForms(); 9678var xhrRequestExactMatch = null; 9679var xhrRequestPartialMatch = null; 9680var xhrRequestExactMatchTimeout = 500; 9681var xhrRequestPartialMatchTimeout = 500; 9682var fetchRequestExactMatch = null; 9683var fetchRequestPartialMatch = null; 9684var fetchRequestExactMatchTimeout = 10; 9685var fetchRequestPartialMatchimeout = 500; 9686var isVersion2Theme = false; 9687if(validCartForms.length && checkIsVersion2Theme(validCartForms)) { 9688 isVersion2Theme = true; 9689} 9690 9691 9692 9693 9694function hulkappsCheckoutClick() { 9695 return false; 9696} 9697function isV1AppWidgetWithMinPerformance6() { 9698 if(typeof window !== 'undefined'){ 9699 let appPerformanceVersion = Number((window.availableSetup?.appPerformanceVersion || 'v0').replace('v', '')); 9700 return window.availableSetup?.appWidgetVersion == 'v1' && appPerformanceVersion >= 6; 9701 } 9702 return false; 9703} 9704function checkIsVersion2Theme(cartForms) { 9705 var firstTwoCartForms = cartForms.slice(0, 2); 9706 var isFormWithButton = false; 9707 for (let cartForm of firstTwoCartForms) { 9708 if (isCheckoutButtonFound(cartForm)) { 9709 isFormWithButton = true; 9710 } 9711 } 9712 if (isFormWithButton) 9713 return false; 9714 else { 9715 if (getNextValidSubmitButton(firstTwoCartForms[firstTwoCartForms.length - 1])) { 9716 return true; 9717 } 9718 return false; 9719 } 9720} 9721function getNextValidSubmitButton(cartForm) { 9722 if (!isCheckoutButtonFound(cartForm)) { 9723 let nextSibling = cartForm.nextElementSibling; 9724 let parentNode = cartForm.parentNode; 9725 if (nextSibling) { 9726 if (isCheckoutButtonFound(nextSibling)) 9727 return true; 9728 else 9729 return getNextValidSubmitButton(nextSibling); 9730 } 9731 else if (parentNode) 9732 return getNextValidSubmitButton(parentNode); 9733 else 9734 return false; 9735 } 9736 else 9737 return true; 9738} 9739function isCheckoutButtonFound(cartForm) { 9740 var submitButtons = cartForm.querySelectorAll("button[type='submit'][name='checkout']"); 9741 var submitInputs = cartForm.querySelectorAll("input[type='submit'][name='checkout']"); 9742 if ((submitButtons && submitButtons.length) || (submitInputs && submitInputs.length)) 9743 return true; 9744 else 9745 return false; 9746} 9747function reLoadSlotPicker(request, requestType, url, timeOut) { 9748 if(requestType === "exact" && url === request) { 9749 isHulkAppGetDetailsRequestListened = false; 9750 disableCheckout(); 9751 setTimeout(function(){disableCheckout();}, 10); 9752 setTimeout(function(){if(typeof loadSlots !== 'undefined')loadSlots();}, timeOut); 9753 } 9754 else if(requestType === "partial" && url.indexOf(request) !== -1) { 9755 isHulkAppGetDetailsRequestListened = false; 9756 disableCheckout(); 9757 setTimeout(function(){disableCheckout();}, 10); 9758 setTimeout(function(){if(typeof loadSlots !== 'undefined')loadSlots();}, timeOut); 9759 } 9760} 9761function getvalidCartForms() { 9762 let cartForms = []; 9763 var formsInPage = document.querySelectorAll('form'); 9764 if(formsInPage) { 9765 for(var i = 0; i < formsInPage.length; i++) { 9766 if( 9767 (formsInPage[i].method === 'post') && 9768 (formsInPage[i].action.endsWith('/cart') || formsInPage[i].action.endsWith('/cart/') || formsInPage[i].action.indexOf('/cart?') > -1) 9769 ) { 9770 cartForms.push(formsInPage[i]); 9771 } 9772 } 9773 } 9774 return cartForms; 9775} 9776function isCartAction(url) { 9777 let cartActions = ["/cart/add.js","/cart/change.js","/cart/clear.js","/cart/add","/cart/change","/cart/clear","/cart/update.js","/cart/update"]; // removed "/cart/update.js","/cart/update" as reload is not needed for these 9778 if((typeof window !== 'undefined' && window.availableSetup) && window.availableSetup.updatePropertyOnCheckout) { 9779 cartActions = cartActions.filter(action => action !== "/cart/update.js" && action !== "/cart/update"); 9780 } 9781 return cartActions.includes(url) 9782} 9783function disableCheckout() { 9784 //Polyfill for endsWith - starts 9785 if (!String.prototype.endsWith) { 9786 String.prototype.endsWith = function(search, this_len) { 9787 if (this_len === undefined || this_len > this.length) { 9788 this_len = this.length; 9789 } 9790 return this.substring(this_len - search.length, this_len) === search; 9791 }; 9792 } 9793 //Polyfill for endsWith - ends 9794 if(validCartForms.length) { 9795 if(isVersion2Theme) { 9796 var checkoutButtonsInPage1 = document.querySelectorAll("button[name='checkout'][type='submit']"); 9797 var checkoutButtonsInPage2 = document.querySelectorAll("input[name='checkout'][type='submit']"); 9798 if (checkoutButtonsInPage1 && checkoutButtonsInPage1.length) { 9799 checkoutButtonsInPage1[0].disabled = true; 9800 if (checkoutButtonsInPage1.length > 1) { checkoutButtonsInPage1[1].disabled = true;} 9801 } 9802 if (checkoutButtonsInPage2 && checkoutButtonsInPage2.length) { 9803 checkoutButtonsInPage2[0].disabled = true; 9804 if (checkoutButtonsInPage2.length > 1) { checkoutButtonsInPage2[1].disabled = true;} 9805 } 9806 } 9807 else { 9808 var checkoutButton1 = validCartForms[0].querySelector("button[name='checkout'][type='submit']"); 9809 if(checkoutButton1) { checkoutButton1.disabled = true;} 9810 else { 9811 checkoutButton1 = validCartForms[0].querySelector("input[name='checkout'][type='submit']"); 9812 if(checkoutButton1){ checkoutButton1.disabled = true;} 9813 } 9814 if(validCartForms.length > 1) { 9815 var checkoutButton2 = validCartForms[1].querySelector("button[name='checkout'][type='submit']"); 9816 if(checkoutButton2) { checkoutButton2.disabled = true;} 9817 else { 9818 checkoutButton2 = validCartForms[1].querySelector("input[name='checkout'][type='submit']"); 9819 if(checkoutButton2){ checkoutButton2.disabled = true;} 9820 } 9821 } 9822 } 9823 } 9824}; 9825disableCheckout(); 9826 var pickeasyXMLHttpRequestListeners = window.XMLHttpRequest.prototype.open; 9827 function openReplacement(method, url, async, user, password) { if(window && window.pickeasy && window.pickeasy.isLoggingEnabled) console.log('XHR', method, url) 9828 this.addEventListener("load", function () { 9829 if(typeof url === "string") { let splitURL = url.split("?"); 9830 if(splitURL && splitURL.length) { 9831 if (isCartAction(splitURL[0])) { isHulkAppGetDetailsRequestListened = false; 9832 disableCheckout(); 9833 setTimeout(function(){if(typeof loadSlots !== 'undefined')loadSlots();}, 500); 9834 } 9835 } 9836 if(method === 'POST' && isHulkAppGetDetailsRequestListened === false && url.indexOf('get_cart_details') !== -1) { // Hulk app listener 9837 isHulkAppGetDetailsRequestListened = true; 9838 disableCheckout(); 9839 setTimeout(function(){disableCheckout();}, 10); 9840 Â Â Â Â Â Â setTimeout(function(){if(typeof loadSlots !== 'undefined' && !isV1AppWidgetWithMinPerformance6())loadSlots();}, 500); 9841 } 9842 if(xhrRequestExactMatch) { let xhrRequestExactSplits = xhrRequestExactMatch.split(","); 9843 for(var x = 0; x < xhrRequestExactSplits.length; x++) { reLoadSlotPicker(xhrRequestExactSplits[x], "exact", url, xhrRequestExactMatchTimeout);} 9844 } 9845 if(xhrRequestPartialMatch) { let xhrRequestsPartialSplits = xhrRequestPartialMatch.split(","); 9846 for(var x = 0; x < xhrRequestsPartialSplits.length; x++) { reLoadSlotPicker(xhrRequestsPartialSplits[x], "partial", url, xhrRequestPartialMatchTimeout);} 9847 } 9848 } 9849 });
9850 return pickeasyXMLHttpRequestListeners.apply(this, arguments); 9851 } 9852 window.XMLHttpRequest.prototype.open = openReplacement; 9853 var pickeasyFetchRequestListeners = fetch; // must be on the global scope 9854 fetch = async function(url, options) { if(window && window.pickeasy && window.pickeasy.isLoggingEnabled) console.log('Fetch', url); 9855 var promise = pickeasyFetchRequestListeners(url, options); 9856 await promise; 9857 if(typeof url === "string") { let splitURL = url.split("?"); 9858 if(splitURL && splitURL.length) { 9859 if (isCartAction(splitURL[0])) { isHulkAppGetDetailsRequestListened = false; 9860 disableCheckout(); 9861 setTimeout(function(){if(typeof loadSlots !== 'undefined' && !isV1AppWidgetWithMinPerformance6())loadSlots();}, 500); 9862 } 9863 } 9864 if(fetchRequestExactMatch) { let fetchRequestsExactSplits = fetchRequestExactMatch.split(","); 9865 for(var x = 0; x < fetchRequestsExactSplits.length; x++) { reLoadSlotPicker(fetchRequestsExactSplits[x], "exact", url, fetchRequestExactMatchTimeout);} 9866 } 9867 if(fetchRequestPartialMatch) { let fetchRequestsPartialSplits = fetchRequestPartialMatch.split(","); 9868 for(var x = 0; x < fetchRequestsPartialSplits.length; x++) { reLoadSlotPicker(fetchRequestsPartialSplits[x], "partial", url, fetchRequestPartialMatchimeout);} 9869 } 9870 } 9871 return promise; 9872 } 9873</script>
9873<!-- END app snippet --><!-- BEGIN app snippet: additional-javascript-and-css -->
9873<script> 9874// mutation to loadSlots 9875let lbCustomMutationObserver = new MutationObserver(async (mutationRecords) => { 9876 try { 9877 mutationRecords.forEach((mutation) => { 9878 if (mutation.type === "childList") { 9879 mutation.addedNodes.forEach(async (addedNode) => { 9880 if (addedNode.tagName === "DIV") { 9881 if (addedNode.className.includes("cart-drawer__items")) { 9882console.log("addedNode",addedNode); 9883 setTimeout(function () { 9884 if (typeof loadSlots !== 'undefined') { 9885 loadSlots(); 9886 } 9887 }, 10); 9888 } 9889 } 9890 }); 9891 } 9892 }); 9893 } catch (error) { 9894 console.log("fn:lbCustomMutationObserver : ", error); 9895 } 9896}); 9897 9898lbCustomMutationObserver.observe(document.querySelector("body"), { 9899 childList: true, 9900 subtree: true, 9901 attributes: true, 9902}); 9903 9904 9905if(window.location.pathname === '/cart') { 9906 let cartDrawerForm = document.querySelector(".cart-drawer__form"); 9907 if(cartDrawerForm) 9908 cartDrawerForm.method="get"; 9909 document.getElementsByClassName("header__icon header__icon--cart link focus-inset")[0].addEventListener("click", function(e){ 9910 console.log("Disabling drawer cart in cart page - In Store Pickup Local Delivery App"); 9911 e.stopImmediatePropagation(); 9912 }); 9913} 9914</script>
9914 9915 9916<style> 9917.cart-drawer__footer { 9918 max-height: 65vh !important; 9919 overflow: auto; 9920} 9921</style><!-- END app snippet -->
9922<script type="module" src="https://cdn.shopify.com/extensions/01a0f73f-32b1-72a0-95a2-b3115e89ddb0/order-delivery-date-time-111/assets/pickeasy-app-widget.esm.js" defer></script>
9922 9923 9924 9925</div><!-- Failed to render app block "17174303574952363282": app block path "shopify://apps/fondue-cashback-promotions/blocks/caseback-embed/dcfd972d-99c5-4526-b55b-2d76e990dec8" does not exist --><div id="shopify-block-AcVdWR1d0ZzhmRUg1e__11560147490181472608" class="shopify-block shopify-app-block"><!-- BEGIN app snippet: rivo-init -->
9925<script type="text/javascript" id="rivo-app-embed-init"> 9926 window.Rivo = window.Rivo || {}; 9927 window.Rivo.embedded_version_enabled = true; 9928 window.Rivo.common = window.Rivo.common || {}; 9929 window.Rivo.common.shop = { 9930 permanent_domain: 'littlewords.myshopify.com', 9931 currency: "USD", 9932 money_format: "${{amount}}", 9933 id: 12599863 9934 }; 9935 9936 window.Rivo.common.template = 'collection'; 9937 window.Rivo.common.full_template = 'collection'; 9938 window.Rivo.common.cart = {}; 9939 window.Rivo.common.translations = {"account_widget":{"en":{"or_text":"OR","city_text":"City","edit_text":"Edit","name_text":"Name","email_text":"Email","order_text":"Order","phone_text":"Phone","taxes_text":"Taxes","total_text":"Total","delete_text":"Delete","select_text":"Select","address_text":"Address","company_text":"Company","country_text":"Country","discount_text":"Discount","province_text":"Province","shipping_text":"Shipping","sold_out_text":"Sold out","subtotal_text":"Subtotal","zip_code_text":"ZIP Code","last_name_text":"Last Name","community_title":"Community","favorites_title":"Favorites","first_name_text":"First Name","home_cta_1_text":"View Rewards","home_cta_2_text":"Manage Subscriptions","home_cta_3_text":null,"add_to_cart_text":"Add to Cart","amount_paid_text":"Amount paid","footer_home_text":"For You","items_count_text":"items","net_payment_text":"Net payment","postal_code_text":"Postal Code","saved_cart_title":"Saved from Cart","are_you_sure_text":"Are you sure you want to?","collections_title":"Collections","contact_info_text":"Contact info","email_placeholder":"Email","google_login_text":"Sign in with Google","login_button_text":"Log In or Sign Up","login_footer_text":"","login_issues_text":"Click here to sign in with your password if you are having issues","my_addresses_text":"My Addresses","order_placed_text":"Placed on","verify_title_text":"Enter the code sent to [[email]]","all_favorites_text":"All Favorites","community_subtitle":"Post your challenges and get rewarded. We'll automatically drop points into your account for every challenge you complete.","footer_orders_text":"Orders","latest_order_title":"Latest Order","notifications_text":"Notifications","profile_list_links":[{"url":"https:\/\/little-words-project.gorgias.help\/en-US","text":"FAQs","open_new_tab":true},{"url":"\/pages\/size-guide-2-0","text":"Size Guide","open_new_tab":true},{"url":"\/pages\/store-locations","text":"Our Stores","open_new_tab":true},{"url":"\/pages\/contact","text":"Contact Us","open_new_tab":true}],"verify_button_text":"Verify Code","ways_to_earn_title":"Ways to earn","address_line_1_text":"Address Line 1","address_line_2_text":"Apartment, suite, etc.","buy_gift_card_title":"Buy Gift Card","delete_address_text":"Yes, Delete Address","external_login_text":"Sign in or Sign up","footer_profile_text":"Profile","home_referral_title":"Refer a Friend \u0026 Earn","my_preferences_text":"My Preferences","payment_method_text":"Payment Method","popular_today_title":"Popular Today","select_country_text":"Select Country","select_options_text":"Select Options","shop_pay_login_text":"Sign in with","taxes_included_text":"Taxes (included)","update_profile_text":"Update Profile","view_favorites_text":"View Favorites","amount_refunded_text":"Amount refunded","billing_address_text":"Billing Address","claim_transfer_title":"Claim Store Credit","home_logged_in_title":"Welcome \u003cspan rivo-ax-text='$store.rivo_profile_customer?.first_name'\u003e\u003c\/span\u003e","order_cancelled_text":"Cancelled on","profile_log_out_text":"Log out","profile_pos_qr_title":"In-Store Sign-In","redeem_rewards_title":"Redeem Rewards","save_collection_text":"Save Collection","select_province_text":"Select Province","shipping_method_text":"Shipping Method","address_default_badge":"Default","alternate_login_title":"Having issues signing in?","community_button_text":"View Challenges","company_optional_text":"Company (Optional)","featured_content_link":null,"footer_community_text":"Community","home_logged_out_title":"Sign in to your account","membership_gift_title":"Select Your Free Gift","recently_viewed_title":"Recently Viewed","share_collection_text":"Share","shipping_address_text":"Shipping Address","transfer_credit_title":"Send Store Credit","add_to_collection_text":"Add to Collection","featured_content_title":"Visit a Little Words Project store near you!","home_referral_subtitle":"\u003cspan rivo-ax-text='$store.rivo_profile_customer?.referral_stats?.completed_count'\u003e\u003c\/span\u003e referrals completed so far","home_wallet_pass_title":"Add Wallet Pass","orders_logged_in_title":"Your Orders","added_to_cart_link_text":"Go to Cart","additional_details_text":"Additional Details","home_logged_in_subtitle":"","home_referral_copy_text":"Referral link copied to clipboard","membership_manage_title":"Manage Membership","orders_empty_state_text":"You haven't placed any orders yet","orders_logged_out_title":"Log in to view, track, and manage your orders","profile_pos_qr_subtitle":"Show this code to a store associate at checkout to sign in to your account from a retail store.","redeem_rewards_url_text":"My Rewards","survey_next_button_text":"Next","survey_ski
9939p_button_text":"Skip","vip_tier_progress_title":"\u003cspan rivo-ax-html='$store.rivo_profile_customer?.current_vip_tier_info?.tier?.name'\u003e\u003c\/span\u003e","alternate_login_subtitle":"Use one of the following methods below to sign in.","home_logged_out_subtitle":"Get access to your rewards and more","membership_gift_subtitle":"Your membership includes a free gift. Choose an option below to add it to your cart.","mobile_phone_number_text":"Mobile Phone Number","order_cancel_button_text":"Cancel Order","order_item_refunded_text":"(Refunded)","shipping_addresses_title":"Shipping Addresses","transfer_credit_subtitle":"\u003cp\u003eYour balance: \u003cspan rivo-ax-text='$store.rivo_profile_customer?.pretty_credits_tally'\u003e\u003c\/span\u003e\u003c\/p\u003e\u003cp\u003eTransfer credit to a friend or family member. They'll receive an email or SMS with a link to redeem the credit. The credit will be instantly deducted from your account and refunded to you if not claimed within 30 days.\u003c\/p\u003e","verify_login_issues_text":"Having issues? Click here to try again.","featured_content_subtitle":"Get to know where our stores are located!","home_wallet_pass_subtitle":"Unlock exclusive rewards and offers.","order_returns_button_text":"Start a Return","accepts_sms_marketing_text":"Text me with news and offers","add_shipping_address_title":"Add Shipping Address","alternate_login_email_text":"Sign in with an email and password","claim_transfer_email_label":"Email","create_new_collection_text":"Create New Collection","enter_collection_name_text":"Enter Collection Name","favorites_empty_state_text":"No favorited products","order_tracking_button_text":"Track Shipment","redeem_rewards_unlock_text":"from unlocking this reward","save_shipping_address_text":"Save Shipping Address","vip_tier_progress_subtitle":"Earn \u003cspan rivo-ax-html='$store.rivo_profile_customer?.current_vip_tier_info?.next_tier?.formatted_to_spend_or_earn || $store.rivo_profile_customer?.current_vip_tier_info?.next_tier?.to_spend_or_earn'\u003e\u003c\/span\u003e Points to unlock \u003cspan rivo-ax-html='$store.rivo_profile_customer?.current_vip_tier_info?.next_tier?.name'\u003e\u003c\/span\u003e","alternate_login_google_text":"Sign in with Google","buy_again_notification_text":"Order added to the cart","claim_transfer_claim_button":"Claim Store Credit","claim_transfer_login_button":"Sign in to claim your gift","edit_shipping_address_title":"Edit Shipping Address","favorite_button_active_text":"Added to favorites","home_button_membership_text":"Credit","home_referral_page_subtitle":"Refer a friend who makes a purchase and both of you will claim rewards.","id_copied_notification_text":"ID copied to clipboard","login_verify_identity_title":"Verify your identity","order_buy_again_button_text":"Buy Again","saved_cart_empty_state_text":"No saved cart items","set_as_default_address_text":"Set as default address","transfer_credit_date_header":"Date","transfer_credit_link_copied":"Link copied!","vip_tier_progress_link_text":"View perks","address_line_2_optional_text":"Address Line 2 (Optional)","collections_empty_state_text":"No collections","email_cannot_be_changed_text":"Email used for login cannot be updated","home_expiration_message_text":"{{balance_label}} expire {{expiration_date}}","home_logged_out_orders_title":"Manage orders, track shipments, and easily start a return","home_wallet_pass_button_text":"Add Wallet Pass","login_accepts_marketing_text":"Email me with updates and offers","loyalty_opt_in_checkbox_text":"Send me loyalty program updates and exclusive offers","transfer_credit_amount_label":"Amount","transfer_credit_no_transfers":"No transfers yet","transfer_credit_send_another":"Send another credit","add_to_cart_notification_text":"Added to cart","alternate_login_shop_pay_text":"Sign in to an existing account with Shop Pay","favorite_button_inactive_text":"Add to favorites","home_additional_button_1_text":"CONNECTED BRACELETS","home_additional_button_2_text":"SUBSCRIPTION PORTAL","home_logged_out_profile_title":"Manage addresses, contact info, and personal preferences","orders_additional_button_text":"","redeem_rewards_available_text":"available to redeem","same_as_shipping_address_text":"Same as shipping address","transfer_credit_amount_header":"Amount","transfer_credit_history_title":"Transfer History","transfer_credit_message_label":"Message (optional)","home_button_gift_card_cta_text":"My Credit","lookup_gift_card_used_subtitle":"We hope you enjoy your purchase!","lookup_gift_card_used_tos_text":"We hope you enjoy your purchase!","order_limited_time_button_text":null,"address_saved_notification_text":"Address saved","apply_discount_add_to_cart_text":"Apply discount \u0026 add to cart","featured_content_image_position":"center center","generic_error_notification_text":"Looks like we hit an issue. Please try again","home_button_balance_points_text":"Points","home_button_gift_card_code_text":"ID: ","home_button_gift_card_copy_text":"Copy ID","home_button_membership_cta_text":"My Membership","home_logged_out_favorites_title":"Sign in to access your favorites","home_logged_out_orders_subtitle":"Get access to your rewards, referrals, and more","profile_list_personal_info_text":"Personal Information","redeem_rewards_points_away_text":"away","transfer_credit_generate_button":"Generate Gift URL","transfer_credit_share_link_text":"Share this link with your friend:","view_product_action_button_text":"View product","claim_transfer_email_placeholder":"[email protected]","home_logged_out_profile_subtitle":"Get access to your rewards, referrals, and more","lookup_gift_card_unused_subtitle":"Copy the code below to redeem your gift card","lookup_gift_card_unused_tos_text":"Apply this code at checkout to redeem your gift card","recently_viewed_empty_state_text":"No recently viewed products","address_deleted_notification_text":"Address deleted successfully","international_returns_button_text":"Start an International Return","profile_updated_notification_text":"Profile updated","shipping_address_empty_state_text":"You haven't added any shipping addresses yet","add_to_favorites_notification_text":"Save Item","alternate_login_another_email_text":"Try sending another code","claim_transfer_claimed_amount_text":"You received {{amount}}!","claim_transfer_claimed_sender_text":"{{sender}} sent you store credit","claim_transfer_pending_sender_text":"{{sender}} sent you {{amount}}","home_logged_out_favorites_subtitle":"Get access to your rewards, referrals, and more","transfer_credit_description_header":"Description","transfer_credit_no_credit_subtitle":"\u003cp\u003eYour balance: \u003cspan rivo-ax-text='$store.rivo_profile_customer?.pretty_credits_tally'\u003e\u003c\/span\u003e\u003c\/p\u003e\u003cp\u003eSorry, you don't have enough credit right now to send.\u003c\/p\u003e","ways_to_earn_transactions_url_text":"View activity","cancel_membership_notification_text":"Membership canceled","home_button_balance_points_cta_text":"My Rewards","added_to_favorites_notification_text":"Item saved","collection_created_notification_text":"Collection Created","profile_list_shipping_addresses_text":"Shipping Addresses","claim_transfer_pending_anonymous_text":"Someone sent you {{amount}}","membership_manage_status_profile_text":"Update and manage your membership details.","error_adding_to_cart_notification_text":"Error adding items to cart","membership_manage_become_a_member_text":"Become a Member","buy_gift_card_recipient_email_self_text":"The gift card will be sent to you.","gift_card_code_copied_notification_text":"Gift Card Code Copied","home_button_membership_paywall_cta_text":"Join our Membership","membership_gift_add_to_cart_button_text":"Add to Cart","orders_secondary_additional_button_text":"","remove_from_favorites_notification_text":"Remove item","vip_tier_progress_amount_spent_subtitle":"Spend \u003cspan rivo-ax-html='$store.rivo_profile_customer?.current_vip_tier_info?.next_tier?.formatted_to_spend_or_earn || $store.rivo_profile_customer?.current_vip_tier_info?.next_tier?.to_spend_or_earn'\u003e\u003c\/span\u003e to unlock \u003cspan rivo-ax-html='$store.rivo_profile_customer?.current_vip_tier_info?.next_tier?.name'\u003e\u003c\/span\u003e","vip_tier_progress_orders_count_subtitle":"Place \u003cspan rivo-ax-html='$store.rivo_profile_customer?.current_vip_tier_info?.next_tier?.formatted_to_spend_or_earn || $store.rivo_profile_customer?.current_vip_tier_info?.next_tier?.to_spend_or_earn'\u003e\u003c\/span\u003e Orders to unlock \u003cspan rivo-ax-html='$store.rivo_profile_customer?.current_vip_tier_info?.next_tier?.name'\u003e\u003c\/span\u003e","membership_manage_credits_activity_title":"Credits Activity","membership_reactivated_notification_text":"Your membership has been reactivated!","removed_from_favorites_notification_text":"Item removed","membership_update_payment_method_subtitle":"We've just sent you an email to update your payment method. The email subject line is \"Update your payment method\". Please check your email to continue.","buy_gift_card_recipient_email_directly_text":"The gift card will be emailed directly to the recipient.","membership_manage_credits_activity_subtitle":"You have \u003cstrong\u003e\u003cspan rivo-ax-data rivo-ax-text=\"$store.rivo_profile_customer.pretty_credits_tally\"\u003e\u003c\/span\u003e\u003c\/strong\u003e in store credit","membership_manage_status_cancelled_subtitle":"Your membership has been cancelled","send_payment_method_email_notification_text":"We've sent an email to update your payment method","membership_manage_status_is_subscriber_title":"Active Member","membership_manage_status_is_subscriber_subtitle":"Your membership is currently active","membership_manage_status_not_subscriber_subtitle":"You are not an active member","membership_manage_status_update_payment_link_text":"Update Payment Method","membership_manage_status_cancel_membership_link_text":"Cancel Membership","membership_manage_status_paid_next_billing_date_text":"You will be charged next on \u003cspan rivo-ax-text='$store.rivo_profile_customer.membership_subscription_contract.pretty_next_billing_date_at'\u003e\u003c\/span\u003e","membership_manage_status_rejoin_membership_link_text":"Rejoin Membership","membership_manage_status_manual_next_billing_date_text":"You've been manually placed on this tier.","membership_manage_status_pending_cancellation_subtitle":"Your membership will be cancelled on \u003cspan rivo-ax-text='$store.rivo_profile_customer.membership_subscription_contract.pretty_next_billing_date_at'\u003e\u003c\/span\u003e"}},"loyalty_landing_page":{"en":{"acct_creation_btn":"Start Earning","acct_creation_desc":"Get rewarded for being an awesome customer","visitor_point_desc":"Earn points and turn these into rewards!","acct_creation_title":"Join and Earn Rewards","acct_creation_sign_in":"Already a member?","loyalty_page_general_spent":"Spent","loyalty_page_rewards_title":"Redeemed Rewards","loyalty_page_general_points":"Points","loyalty_page_general_redeem":"Redeem","loyalty_page_rewards_subtitle":"Rewards can only be applied to eligible full-price items and canât be used on licensed products.","loyalty_page_banner_earn_button":"Earn Points","loyalty_page_rewards_no_rewards":"No rewards yet.","loyalty_page_ways_to_earn_title":"Ways to Earn Points","loyalty_page_banner_login_button":"Sign In","loyalty_page_upload_receipt_help":"Upload a re
9939ceipt within the last 30 days to earn points. Please lay the receipt on a flat surface and take a photo from a close distance.","loyalty_page_banner_redeem_button":"Redeem Rewards","loyalty_page_subscribe_email_help":"Subscribe to our email list and earn points","loyalty_page_ways_to_redeem_title":"Reward Options","vip_tiers_table_perk_translations":[],"loyalty_page_customer_birthday_day":"Day","loyalty_page_upload_receipt_attach":"Attach File","loyalty_page_upload_receipt_button":"Submit Receipt","loyalty_page_ways_to_earn_subtitle":"","loyalty_page_banner_logged_in_title":"\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1259\/9863\/files\/The_Little_Loyalty_Club.png?v=1748610726\" loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"auto\" alt=\"The Little Loyalty Club\"\u003e","loyalty_page_banner_register_button":"Join Now","loyalty_page_explainer_step_1_title":"Join for free","loyalty_page_explainer_step_2_title":"Shop \u0026 Earn","loyalty_page_explainer_step_3_title":"Redeem Your Points","loyalty_page_subscribe_email_button":"Subscribe","loyalty_page_upload_receipt_no_file":"Please select a file to upload","loyalty_page_upload_receipt_success":"Thanks! Your receipt will be reviewed shortly","loyalty_page_banner_logged_out_title":"\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1259\/9863\/files\/The_Little_Loyalty_Club.png?v=1748610726\" loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"auto\" alt=\"The Little Loyalty Club\"\u003e","loyalty_page_banner_login_button_url":"","loyalty_page_customer_birthday_month":"Month","loyalty_page_customer_birthday_title":"Celebrate your birthday","loyalty_page_ways_to_redeem_subtitle":"\u003cb\u003eRewards can only be redeemed at checkout.\u003c\/b\u003e\u003cbr\u003eRewards can only be applied to eligible full-price items and canât be used on licensed products.","loyalty_page_general_enter_valid_date":"Please enter a valid date","loyalty_page_explainer_logged_in_title":"Hi \u003cspan rivo-x-data=\"{ username: $store.customer.first_name || 'there' }\" rivo-x-text=\"username\"\u003e\u003c\/span\u003e, you have \u003cstrong\u003e\u003cspan rivo-x-data rivo-x-text=\"$store.customer.pretty_points_tally\"\u003e\u003c\/span\u003e\u003c\/strong\u003e Points","loyalty_page_explainer_step_1_subtitle":"Create an account or log in to start earning points on every purchase.","loyalty_page_explainer_step_2_subtitle":"Earn 1 point for every $1 spent.\u003cbr\u003eUnlock bonus ways to earn more points along the way.","loyalty_page_explainer_step_3_subtitle":"Use your points for discounts on your favorites or free gifts.","loyalty_page_vip_tier_1_threshold_text":"Free to Join","loyalty_page_vip_tier_2_threshold_text":"Spend $125","loyalty_page_vip_tier_3_threshold_text":"Spend $250","loyalty_page_vip_tier_4_threshold_text":null,"loyalty_page_vip_tier_5_threshold_text":null,"loyalty_page_vip_tier_6_threshold_text":null,"loyalty_page_vip_tiers_logged_in_title":"Loyalty Club Tiers","loyalty_page_activity_table_header_date":"Date","loyalty_page_activity_table_no_activity":"No activity yet","loyalty_page_banner_register_button_url":"","loyalty_page_explainer_logged_out_title":"How it Works","loyalty_page_vip_tiers_logged_out_title":"Loyalty Club Tiers","loyalty_page_activity_expiration_warning":"\u003cspan class=\"rivo-expiry-date\"\u003ePoints Expiration Date: \u003cspan rivo-x-data rivo-x-text=\"$store.customer.points_expiry\"\u003e\u003c\/span\u003e\u003c\/span\u003e\u003cbr\u003e\u003cbr\u003e\u003cspan class=\"rivo-expiry-current-tier\"\u003eTier: \u003cspan rivo-x-data rivo-x-text=\"$store.customer?.current_vip_tier_info?.tier?.name\"\u003e\u003c\/span\u003e\u003c\/span\u003e","loyalty_page_customer_birthday_save_date":"Save Date","loyalty_page_upload_challenge_photo_help":"Upload a challenge photo to earn.","loyalty_page_activity_table_header_action":"Activity","loyalty_page_banner_logged_in_description":"A little loyalty goes a long way.\u003cbr\u003eEarn rewards points with every purchase!","loyalty_page_explainer_logged_in_subtitle":"Here's an overview of your current points balance and recent activity","loyalty_page_vip_tiers_logged_in_subtitle":"You are on the \u003cspan rivo-x-data rivo-x-text=\"$store.customer?.current_vip_tier_info?.tier?.name\"\u003e\u003c\/span\u003e tier","loyalty_page_banner_logged_out_description":" Join The Little Loyalty Club and start earning points every time you shop","loyalty_page_general_activate_store_credit":"Activate Store Credit","loyalty_page_general_redeemed_store_credit":"Redeemed Store Credit","loyalty_page_upload_challenge_photo_attach":"Attach File","loyalty_page_upload_challenge_photo_button":"Submit Challenge Photo","loyalty_page_vip_tiers_logged_out_subtitle":"","loyalty_page_activity_table_header_earnings":"Points","loyalty_page_upload_challenge_photo_no_file":"Please select a file to upload","loyalty_page_upload_challenge_photo_success":"Thanks! Your challenge photo will be reviewed shortly","loyalty_page_vip_tiers_progress_column_title":"","loyalty_page_activity_table_header_expiration":"Expires At","loyalty_page_vip_tiers_progress_column_subtitle":"Spend \u003cspan rivo-x-data rivo-x-text=\"$store.customer?.current_vip_tier_info?.next_tier?.formatted_to_spend_or_earn\"\u003e\u003c\/span\u003e to reach the \u
9939003cspan rivo-x-data rivo-x-text=\"$store.customer?.current_vip_tier_info?.next_tier?.name\"\u003e\u003c\/span\u003e tier."}},"general":{"en":{"vip_perks":"Perks","vip_tiers":"VIP Tiers","general_by":"by","vip_reward":"VIP reward","vip_status":"VIP Status","general_day":"Day","social_like":"Like","social_share":"Share","vip_benefits":"Benefits","general_error":"Hmm, something went wrong, please try again shortly","general_month":"Month","general_point":"Point","general_spend":"you spend","general_spent":"Spent","social_follow":"Follow","tos_expiry_at":"Reward expires on {{expiry_date}}.","vip_tier_desc":"Gain access to exclusive rewards.","general_credit":"Credit","general_points":"Points","general_redeem":"Redeem","general_reward":"reward","vip_tier_spend":"Spend {{amount}}","general_credits":"Credits","general_go_back":"Go back","general_pending":"Pending","general_rewards":"Rewards","general_sign_in":"Sign in","general_sign_up":"Sign up","referrals_title":"Referral Program","review_complete":"Post a product review","survey_complete":"Complete a Survey","general_approved":"Approved","general_share_on":"Share on","general_you_have":"You have","tos_free_product":"Reward only applies to {{product_name}}","general_cancelled":"Cancelled","general_edit_date":"Edit Date","general_save_date":"Save date","general_show_more":"Show more","general_signed_up":"signed up","referral_complete":"Complete a Referral","tos_expiry_months":"Expires {{expiry_months}} month(s) after being redeemed.","vip_tier_achieved":"Unlocked {{tier_name}}","vip_tier_added_to":"Added to {{tier_name}}","general_apply_code":"Apply code","general_share_link":"Share your Personal Link","referrals_email_to":"To","vip_achieved_until":"Achieved until","vip_tier_to_unlock":"to unlock","general_reward_show":"Show","referrals_completed":"referrals completed so far","vip_tier_dropped_to":"Fell to {{tier_name}}","vip_tier_on_highest":"You did it! You're on the highest tier ð","general_balance_text":"store credit","general_past_rewards":"Past rewards","general_product_page":"\u003cspan class=\"rivo-text-underline\"\u003eproduct page\u003c\/span\u003e","general_ways_to_earn":"Ways to earn","general_your_rewards":"Your rewards","referrals_email_send":"Send email","referrals_get_reward":"Get your","referrals_share_link":"Share this link with a friend for them to claim the reward","social_facebook_like":"Like page on Facebook","social_tiktok_follow":"Follow on TikTok","social_twitter_share":"Share link on X","tos_min_order_amount":"Applies to all orders over {{min_order_amount}}.","vip_tier_earn_points":"Earn {{points}} Points","vip_tier_retained_to":"Kept {{tier_name}}","vip_tier_vip_history":"VIP History","general_cancel_points":"Points canceled","general_no_points_yet":"No Points yet","general_refund_points":"Points refunded","general_sms_subscribe":"Subscribe to SMS","social_facebook_share":"Share link on Facebook","social_twitter_follow":"Follow on X","vip_reward_earned_via":"Earned via {{vip_tier_name}} tier","vip_you_have_achieved":"You've achieved","wallet_pass_subscribe":"Add Wallet Pass","general_cancel_credits":"Credits canceled","general_no_rewards_yet":"No rewards yet","general_place_an_order":"Place an order","general_points_expired":"Points expired","general_refund_credits":"Credits refunded","general_sms_subscribed":"Subscribed to SMS","general_upload_receipt":"Submit a Receipt","general_ways_to_redeem":"Ways to redeem","referrals_claim_reward":"Claim your gift","referrals_code_invalid":"This referral code is invalid","referrals_email_invite":"Refer friends by email","referrals_visitor_desc":"Refer a friend who makes a purchase and both of you will claim rewards.","review_complete_points":"{{points_amount}} Points for every review posted","tos_min_order_quantity":"Minimum {{min_order_quantity}} items required in cart.","general_birthday_reward":"Celebrate with a reward","general_challenge_photo":"Submit a Challenge Photo","general_credits_expired":"Credits expired","general_discount_amount":"points for ${{discount_amount}} off","general_email_subscribe":"Subscribe to Emails","general_expiration_date":"Expiration Date","general_no_activity_yet":"No activity yet","general_placed_an_order":"Placed an order","general_points_activity":"Points History","general_share_via_email":"Share via Email","general_upcoming_reward":"Upcoming reward","general_you_have_points":"You have {{points}} points","membership_order_placed":"Credits earned from placing an order","referrals_email_message":"Message","referrals_invalid_email":"Please enter a valid email address","referrals_referral_code":"Your referral link to share","social_instagram_follow":"Follow on Instagram","tos_apply_to_collection":"Only for products in specific collections.","tos_max_shipping_amount":"Maximum shipping amount of {{max_shipping_amount}}.","vip_tier_no_vip_history":"No VIP membership history yet","general_email_subscribed":"Subscribed to Emails","general_enter_valid_date":"Please enter a valid date","general_points_for_every":"Points for every","general_uploaded_re
9939ceipt":"Submitted a Receipt","general_vip_tier_upgrade":"VIP Tier Upgrade Points","referral_complete_points":"{{points_amount}} Points for every referral completed","referrals_call_to_action":"Refer friends and earn","referrals_claimed_reward":"Here's your","referrals_create_account":"Create an Account","referrals_status_blocked":"blocked","referrals_status_pending":"pending","referrals_your_referrals":"Your referrals","general_click_to_see_more":"View My Rewards Account","general_product_purchased":"Product Purchased","general_redeemed_a_reward":"Redeemed a Reward","general_use_discount_code":"Use this discount code on your next order!","gift_card_sync_past_tense":"Gift card sync","referrals_already_visited":"Already visited this page","referrals_general_invalid":"Sorry, looks like this referral is invalid","referrals_referred_reward":"They will get","referrals_referrer_reward":"You will get","general_celebrate_birthday":"Celebrate a birthday","general_how_to_earn_points":"How do I earn Points?","referrals_no_referrals_yet":"No referrals yet","referrals_program_disabled":"This referral program is disabled","referrals_status_completed":"completed","review_complete_past_tense":"Posted a product review","survey_complete_past_tense":"Completed a Survey","general_add_product_to_cart":"Add product to cart","general_balance_text_plural":"Credits","general_fallback_first_name":"there","general_not_enough_earnings":"Not enough earnings to redeem","general_were_awarded_points":"were awarded points","activity_table_header_status":"Status","general_manual_points_adjust":"manual points adjustment","referral_complete_past_tense":"Completed a Referral","referrals_similar_ip_invalid":"We are unable to process referrals within the same IP address","store_credit_sync_past_tense":"Store credit sync","vip_tier_orders_placed_count":"Place {{amount}} Orders","general_activate_store_credit":"Activate Store Credit","general_celebrate_anniversary":"Celebrate Loyalty Anniversary","general_punch_card_checkpoint":"Punch Card Checkpoint","general_redeemed_store_credit":"Redeemed Store Credit","checkout_ui_redeem_points_desc":"You have {{points}} points! Redeem for discounts on this order.","general_discount_amount_coupon":"${{discount_amount}} off coupon","general_have_not_earned_points":"You haven't earned any Points yet.","membership_page_benefits_title":"All The Perks, None of the FOMO","referrals_email_to_placeholder":"Add a comma-separated list of emails","referrals_name_must_be_present":"Please enter your first name","checkout_ui_redeem_points_login":"Log in","checkout_ui_redeem_points_title":"Redeem your points","general_add_points_default_note":"Points granted by points import","general_celebrate_your_birthday":"Let's celebrate your birthday! ð Please give us 30 days notice - otherwise, you'll have to wait another year.","general_please_choose_an_option":"Please choose an option from the","general_redeem_error_max_points":"Exceeded maximum points to spend","general_redeem_error_min_points":"Did not meet minimum points to redeem","referrals_email_already_claimed":"This email has already been claimed","referrals_general_invalid_title":"We're Sorry","social_facebook_like_past_tense":"Liked a page on Facebook","social_tiktok_follow_past_tense":"Followed on TikTok","social_twitter_share_past_tense":"Shared a link on X","social_facebook_share_past_tense":"Shared a link on Facebook","social_twitter_follow_past_tense":"Followed on X","wallet_pass_subscribe_past_tense":"Added Wallet Pass","general_points_for_judgeme_review":"JudgeMe review","membership_page_benefits_subtitle":"","referrals_account_already_claimed":"You already have an account. You can invite your friends to win rewards!","vip_tier_products_purchased_count":"Purchase {{amount}} Specific Products","checkout_ui_activate_account_title":"Activate Your Account","checkout_ui_redeemed_rewards_title":"Your rewards","general_reset_removal_default_note":"Existing points removed for points reset from import","referrals_your_referrals_show_here":"Your referrals will show here.","social_instagram_follow_past_tense":"Followed on Instagram","checkout_ui_points_estimation_title":"Complete this purchase to earn up to {{points}} points","checkout_ui_refer_friends_login_url":"account\/login?return_url=\/account\u0026email={{customer_email}}","general_loyalty_program_and_rewards":"Loyalty Program \u0026 Rewards","general_vip_tier_upgrade_past_tense":"{{tier_name}} Entry Points","general_your_rewards_will_show_here":"Your rewards will show here.","membership_page_banner_login_button":"Sign In","membership_page_banner_login_prefix":"Already a member?","membership_tier_unlocked_past_tense":"Membership Signup","referrals_email_message_placeholder":"Customize your referral message. The referral link will be automatically added.","checkout_ui_redeem_points_login_desc":"to view your points balance and discover rewards available for redemption.","checkout_ui_redeem_store_credit_desc":"You have ${{store_credit}} in store credit.","vip_tier_product_ids_purchased_count":"Purchase {{amount}} Specific Products","checkout_ui_cashback_estimation_title":"Complete this purchase to earn up to {{cashback}} in CashBack","checkout_ui_install_wallet_pass_title":"Install our Wallet Pass for E
9939xclusive Offers","checkout_ui_points_estimation_subtext":"Loyalty points can be redeemed for rewards on future purchases. Actual points awarded may differ if other discounts are applied.","checkout_ui_redeem_store_credit_title":"Apply your store credit","checkout_ui_refer_friends_login_title":"Claim your points from this purchase !","general_celebrate_birthday_past_tense":"Celebrated a birthday","general_reset_new_balance_default_note":"Points reset to new balance by points import","general_use_discount_code_free_product":"Use this discount code on your next order to get a free product!","membership_page_explainer_step_1_title":"Add to cart","membership_page_explainer_step_2_title":"Check out to activate","membership_page_explainer_step_3_title":"Enjoy your perks","membership_recurring_signup_past_tense":"Recurring Credit","referrals_advocate_stats_email_claimed":"Claimed","checkout_ui_activate_account_button_url":"\/account\/login?return_url=\/account","checkout_ui_cashback_estimation_subtext":"CashBack can be redeemed for rewards on future purchases. Actual CashBack awarded may differ if other discounts are applied.","membership_page_banner_login_button_url":"\/account\/login?return_url=\/account","checkout_ui_activate_account_button_text":"Activate Account","checkout_ui_activate_account_description":"Activate your loyalty account to start earning points, tracking rewards, and accessing exclusive member benefits.","checkout_ui_redeem_points_alternate_name":"points","checkout_ui_redeemed_rewards_description":"Your rewards available to use","checkout_ui_redeemed_rewards_login_title":"Log in","checkout_ui_refer_friends_referral_title":"Refer a Friend","general_celebrate_anniversary_past_tense":"Celebrated Loyalty Anniversary","referrals_advocate_stats_email_completed":"Completed","referrals_create_account_to_claim_coupon":"Create an Account to claim your coupon","checkout_ui_redeemed_rewards_select_label":"Select a Reward","membership_page_banner_add_to_cart_button":"Join\u003cs\u003e$250\/yr\u003c\/s\u003e$200\/yr","membership_page_explainer_step_1_subtitle":"Add your membership to your cart for $250 annually and unlock benefits.","membership_page_explainer_step_2_subtitle":"Complete checkout and lock in your spotâyour membership is now official.","membership_page_explainer_step_3_subtitle":"Dive right in and enjoy rewards, free shipping, and insider access.","checkout_ui_install_wallet_pass_button_url":"\/#rivo","general_converted_to_credits_external_note":"Converted your points balance to store credit","general_converted_to_credits_internal_note":"Converted from points to store credit","membership_page_activity_table_header_date":"Date","membership_page_activity_table_no_activity":"No activity yet","membership_page_banner_is_subscriber_title":"\u003cspan class=\"rivo-hero-subheading\"\u003e$200 annually\u003c\/span\u003e\u003cbr\u003eYay! Youâre Officially In!","membership_page_status_is_subscriber_title":"You have an Active Membership","referrals_advocate_stats_email_link_clicks":"Link Clicks","checkout_ui_install_wallet_pass_button_text":"Install Wallet Pass","checkout_ui_install_wallet_pass_description":"Unlock exclusive offers and rewards with our Wallet Pass.","checkout_ui_login_notification_banner_title":"Have loyalty discounts or rewards that you'd like to apply?","checkout_ui_refer_friends_login_description":"Log in or register to activate your loyalty account, redeem your points and access your special offers.","membership_page_activity_expiration_warning":"Expiration Date: \u003cspan rivo-x-data rivo-x-text=\"$store.customer.points_expiry\"\u003e\u003c\/span\u003e","membership_page_banner_non_subscriber_title":"\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1259\/9863\/files\/Membership_TheLittleCircle_Logo.svg?v=1759775727\" class=\"rivo-hero-logo\" alt=\"The Little Circle Membership Logo\" loading=\"lazy\" width=\"100\" height=\"100\" \/\u003e\u003cbr\u003e\u003cspan class=\"rivo-hero-subheading\"\u003eNow $200 for launch week\u003c\/span\u003e\u003cbr\u003eThe Little Circle Membership","membership_recurring_anniversary_past_tense":"Membership Anniversary Credits","checkout_ui_redeem_incremental_earnings_desc":"How much of your {{balance}} in balance (equivalent to ${{balance_to_currency}}) would you like to redeem?","checkout_ui_refer_friends_login_button_title":"Activate my account","general_order_placed_store_credit_multiplier":"Earn cash back for every $1 spent","membership_page_activity_table_header_action":"Activity","referrals_advocate_stats_email_unique_visits":"Unique visits from your link","referrals_email_your_friend_has_referred_you":"Your friend has referred you to {{shop_name}}","checkout_ui_login_notification_banner_subtext":"to login to your account","checkout_ui_redeem_incremental_earnings_login":"Log in","checkout_ui_redeem_incremental_earnings_title":"Redeem store balance","checkout_ui_redeem_points_select_custom_label":"{{reward_name}} orders ${{min_order_amount}}+ for {{points_amount}} points","checkout_ui_refer_friends_referral_button_url":"","membership_page_banner_add_to_cart_button_url":"\/membership-add-to-cart","membership_page_cancel_membership_modal_title":"Are you sure you want to cancel your membership?","membership_page_explainer_is_subscriber_title":"Hi \u003cspan rivo-x-data=\"{ username: $store.customer.first_name || 'there' }\" rivo-x-text=\"username\"\u003e\u003c\/span\u003e, you have \u003cstrong\u003e\u003cspan rivo-x-data rivo-x-text=\"$store.customer.pretty_credits_tally\"\u003e\u003c\/span\u003e\u003c\/strong\u003e in Store Credit","membership_page_status_is_subscriber_subtitle":"You will be charged next on \u003cspan rivo-x-data rivo-x-text=\"$store.customer?.membership?.pretty_next_charge_date\"\u003e\u003c\/span\u003e","referrals_email_checkout_out_and_claim_reward":"Check out the referral link and claim a free reward.","checkout_ui_redeem_points_select_discount_desc":"Please select a discount","checkout_ui_redeemed_rewards_login_description":"to view your rewards available to use.","checkout_ui_refer_friends_referral_description":"Share your referral link with friends and earn rewards each time a new friend makes a purchase.","membership_page_activity_table_header_earnings":"Points","membership_page_cancel_membership_modal_button":"Yes, Cancel my Membership","membership_page_explainer_non_subscriber_title":"How it Works","checkout_ui_login_notification_banner_link_text":"Click here","checkout_ui_redeem_points_select_discount_label":"Select Discount","checkout_ui_redeemed_rewards_select_description":"Please select a reward","checkout_ui_refer_friends_referral_button_title":"Refer a Friend","membership_page_status_update_payment_link_text":"Update Payment Method","referrals_advocate_stats_email_no_referrals_yet":"No referrals yet.","membership_page_banner_is_subscriber_description":"Exclusive gifts, cashback, secret
9939collectionsâyouâve unlocked it all.","membership_page_explainer_is_subscriber_subtitle":"Here's an overview of your current credits balance and recent activity","checkout_ui_redeem_store_credit_apply_button_text":"Apply Store Credit","membership_page_banner_non_subscriber_description":"Join our membership and enjoy rewards, gifts, and insider accessâmade just for you.","membership_page_update_payment_method_modal_title":"Update Payment Method","checkout_ui_redeem_incremental_earnings_login_desc":"to view your balance.","membership_page_status_cancel_membership_link_text":"Cancel","membership_page_status_rejoin_membership_link_text":"Rejoin Membership","checkout_ui_refer_friends_referral_text_field_label":"Your referral link","membership_page_cancel_membership_modal_description":"We'd hate to see you leave. Your membership includes exclusive benefits that you'll lose access to immediately.","checkout_ui_redeem_incremental_earnings_desc_applied":"You're using {{applied_balance}} of your available {{balance}} in store credit","membership_page_status_pending_cancellation_subtitle":"Your membership will be cancelled on \u003cspan rivo-x-data rivo-x-text=\"$store.customer?.membership?.pretty_queued_for_cancellation_at\"\u003e\u003c\/span\u003e","checkout_ui_cashback_estimation_title_usd_to_currency":"Complete this purchase to earn up to {{cashback_usd_to_currency}} in CashBack","referrals_advocate_stats_email_friends_order_verified":"Friends order was verified","referrals_advocate_stats_email_referral_link_to_share":"Here's your referral link to share with friends.","referrals_advocate_stats_email_friend_claimed_discount":"Friend claimed discount","checkout_ui_cashback_estimation_subtext_usd_to_currency":"CashBack can be redeemed for rewards on future purchases. Actual CashBack awarded may differ if other discounts are applied.","checkout_ui_post_purchase_account_activation_button_url":"\/account\/login?return_url=\/account","membership_page_update_payment_method_modal_description":"We've sent you an email to update your payment method. Please check your inbox and follow the instructions.","checkout_ui_redeem_incremental_earnings_form_input_label":"Earnings amount","checkout_ui_redeem_incremental_discount_code_change_error":"{{code}} couldn't be used with your existing discounts.","checkout_ui_redeem_incremental_earnings_form_submit_button":"Redeem","checkout_ui_redeem_points_not_enough_points_banner_message":"You're {{points_amount}} points away from a reward","checkout_ui_redeem_incremental_earnings_desc_usd_to_currency":"You have {{formatted_credits_tally_usd_to_currency}}) in store credit to redeem (subject to FX rates at time of redemption)","checkout_ui_redeem_incremental_earnings_desc_usd_to_currency_applied":"You're using {{applied_balance_to_currency}} of your available {{formatted_credits_tally_usd_to_currency}} in store credit","general_cashback_not_earned_subject":"You didn't earn CashBack on this order","general_cashback_not_earned_title":"You didn't earn CashBack on this order","general_cashback_not_earned_subtitle":"This order wasn't eligible for CashBack.","general_drop_points":"Limited time bonus points","general_drop_credits":"Limited time bonus credits","general_store_credit_transfer_sent_via_gift_url":"Sent {{amount}} credit via gift URL {{transfer_url}}","general_store_credit_transfer_sent":"Sent {{amount}} credit to {{recipient_email}}","general_store_credit_transfer_received":"Received {{amount}} credit from {{sender_email}}","general_drop_points_expired":"Limited time bonus points expired","general_drop_credits_expired":"Limited time bonus credits expired","general_store_credit_redeemed":"{{store_credit_amount}} in store credit has been added to your account. Apply at checkout.","general_discount_code_applied_to_cart":"Discount applied to your cart","general_apply_code_now":"Apply code now","general_apply_to_subscription":"Apply to subscription","general_or":"OR","general_choose_redemption_destination":"Choose to use it now or on your next subscription order","general_subscription_redemption_applied":"This reward will apply to your next subscription order","activity_expiration_label":"Expires","activity_table_header_expiration":"Expires At","social_provide_instagram_handle":"Share your Instagram handle","social_provide_tiktok_handle":"Share your TikTok handle","social_provide_instagram_handle_past_tense":"Shared your Instagram handle","social_provide_tiktok_handle_past_tense":"Shared your TikTok handle","social_provide_handle_button":"Share handle","social_handle_placeholder":"@username","social_handle_missing":"Please enter your handle","checkout_ui_redeem_points_store_credit_success":"{{store_credit_amount}} in store credit redeemed. Apply to this order from the payment section.","checkout_ui_gift_with_purchase_applied_message":"Free gift applied","checkout_ui_redeem_incremental_earnings_store_credit_success":"{{store_credit_amount}} in store credit redeemed. Apply to this order from the payment section.","membership_page_activity_table_header_expiration":"Expires At"}}}; 9940 window.Rivo.global_config = {"asset_urls":{"loy":{"api_js":"https:\/\/cdn.shopify.com\/s\/files\/1\/0194\/1736\/6592\/t\/1\/assets\/ba_rivo_api.js?v=1764090844","lp_js":"https:\/\/cdn.shopify.com\/s\/files\/1\/0194\/1736\/6592\/t\/1\/assets\/ba_rivo_lp.js?v=1764090843","lp_css":"https:\/\/cdn.shopify.com\/s\/files\/1\/0194\/1736\/6592\/t\/1\/assets\/ba_rivo_lp.css?v=1787090345","profile_js":"https:\/\/cdn.shopify.com\/s\/files\/1\/0194\/1736\/6592\/t\/1\/assets\/ba_rivo_profile.js?v=1764090842","profile_loyalty_js":null,"profile_css":"https:\/\/cdn.shopify.com\/s\/files\/1\/0194\/1736\/6592\/t\/1\/assets\/ba_rivo_profile.css?v=1786981399","init_js":"https:\/\/cdn.shopify.com\/s\/files\/1\/0194\/1736\/6592\/t\/1\/assets\/ba_loy_init.js?v=1764090841","referrals_js":"https:\/\/cdn.shopify.com\/s\/files\/1\/0194\/1736\/6592\/t\/1\/assets\/ba_loy_referrals.js?v=1764090845","referrals_css":"https:\/\/cdn.shopify.com\/s\/files\/1\/0194\/1736\/6592\/t\/1\/assets\/ba_loy_referrals.css?v=1700287043","widget_js":"https:\/\/cdn.shopify.com\/s\/files\/1\/0037\/2110\/1430\/t\/963\/assets\/ba_loy_widget.js?v=1728252181","widget_css":"https:\/\/cdn.shopify.com\/s\/files\/1\/0194\/1736\/6592\/t\/1\/assets\/ba_loy_widget.css?v=1692840875","page_init_js":"https:\/\/cdn.shopify.com\/s\/files\/1\/0194\/1736\/6592\/t\/1\/assets\/ba_loy_page_init.js?v=1711433130","page_widget_js":"https:\/\/cdn.shopify.com\/s\/files\/1\/0194\/1736\/6592\/t\/1\/assets\/ba_loy_page_widget.js?v=1711432435","page_widget_css":"https:\/\/cdn.shopify.com\/s\/files\/1\/0194\/1736\/6592\/t\/1\/assets\/ba_loy_page.css?v=1693059047","page_preview_js":null,"app_proxy_applications_js":"https:\/\/cdn.shopify.com\/s\/files\/1\/0194\/1736\/6592\/t\/1\/assets\/app_proxy_application.js?v=1708835151"},"forms":{"init_js":"https:\/\/cdn.shopify.com\/s\/files\/1\/0194\/1736\/6592\/t\/1\/assets\/ba_forms_init.js?v=1711433134","widget_js":"https:\/\/cdn.shopify.com\/s\/files\/1\/0194\/1736\/6592\/t\/1\/assets\/ba_forms_widget.js?v=1711433135","forms_css":"https:\/\/cdn.shopify.com\/s\/files\/1\/0194\/1736\/6592\/t\/1\/assets\/ba_forms.css?v=1691714518"},"global":{"helper_js":"https:\/\/cdn.shopify.com\/s\/files\/1\/0194\/1736\/6592\/t\/1\/assets\/ba_tracking.js?v=1764090840"}},"proxy_paths":{"loy":"\/apps\/ba-loy","app_metrics":"\/apps\/ba-loy\/app_metrics"},"aat":["loy"],"pv":false,"sts":false,"bam":true,"batc":false,"base_money_format":"${{amount}}","points_delimiter":",","online_store_version":2,"loy_js_api_enabled":true,"hide_console_ad":false,"shopify_markets_enabled":false,"google_client_id":"105612801293-jl45mtn6o4i8sp8ino3575joje4tputh.apps.googleusercontent.com","multipass_v_token":false,"clear_latest_order_cache":false,"shop":{"id":12599863,"name":"Little Words Project","domain":"www.littlewordsproject.com"},"theme_extension_local_assets":false}; 9941 9942 if (!window.Rivo.global_config.theme_extension_local_assets) { 9943 window.Rivo.global_config.asset_urls = { 9944 ...window.Rivo.global_config.asset_urls, 9945 loy: { 9946 api_js: 'https://cdn.shopify.com/extensions/01a0ef41-2e5e-744b-a57b-7cec88bf7012/rivo-loyalty-rewards-referrals-823/assets/ba_rivo_api.js', 9947 init_js: 'https://cdn.shopify.com/extensions/01a0ef41-2e5e-744b-a57b-7cec88bf7012/rivo-loyalty-rewards-referrals-823/assets/ba_loy_init.js', 9948 referrals_js: 'https://cdn.shopify.com/extensions/01a0ef41-2e5e-744b-a57b-7cec88bf7012/rivo-loyalty-rewards-referrals-823/assets/ba_loy_referrals.js', 9949 referrals_css: 'https://cdn.shopify.com/extensions/01a0ef41-2e5e-744b-a57b-7cec88bf7012/rivo-loyalty-rewards-referrals-823/assets/ba_loy_referrals.css', 9950 widget_js: 'https://cdn.shopify.com/extensions/01a0ef41-2e5e-744b-a57b-7cec88bf7012/rivo-loyalty-rewards-referrals-823/assets/ba_loy_widget.js', 9951 widget_css: 'https://cdn.shopify.com/extensions/01a0ef41-2e5e-744b-a57b-7cec88bf7012/rivo-loyalty-rewards-referrals-823/assets/ba_loy_widget.css', 9952 page_init_js: 'https://cdn.shopify.com/extensions/01a0ef41-2e5e-744b-a57b-7cec88bf7012/rivo-loyalty-rewards-referrals-823/assets/ba_loy_page_init.js', 9953 page_widget_js: 'https://cdn.shopify.com/extensions/01a0ef41-2e5e-744b-a57b-7cec88bf7012/rivo-loyalty-rewards-referrals-823/assets/ba_loy_page_widget.js', 9954 page_widget_css: 'https://cdn.shopify.com/extensions/01a0ef41-2e5e-744b-a57b-7cec88bf7012/rivo-loyalty-rewards-referrals-823/assets/ba_loy_page.css', 9955 page_preview_js: "/assets/msg/loy_page_preview.js", 9956 app_proxy_application_js: 'https://cdn.shopify.com/extensions/01a0ef41-2e5e-744b-a57b-7cec88bf7012/rivo-loyalty-rewards-referrals-823/assets/app_proxy_application.js', 9957 lp_js: 'https://cdn.shopify.com/extensions/01a0ef41-2e5e-744b-a57b-7cec88bf7012/rivo-loyalty-rewards-referrals-823/assets/ba_rivo_lp.js', 9958 profile_js: 'https://cdn.shopify.com/extensions/01a0ef41-2e5e-744b-a57b-7cec88bf7012/rivo-loyalty-rewards-referrals-823/assets/ba_rivo_profile.js', 9959 profile_loyalty_js: 'https://cdn.shopify.com/extensions/01a0ef41-2e5e-744b-a57b-7cec88bf7012/rivo-loyalty-rewards-referrals-823/assets/ba_rivo_profile_loyalty.js' 9960 }, 9961 forms: { 9962 init_js: 'https://cdn.shopify.com/extensions/01a0ef41-2e5e-744b-a57b-7cec88bf7012/rivo-loyalty-rewards-referrals-823/assets/ba_forms_init.js', 9963 widget_js: 'https://cdn.shopify.com/extensions/01a0ef41-2e5e-744b-a57b-7cec88bf7012/rivo-loyalty-rewards-referrals-823/assets/ba_forms_widget.js', 9964 forms_css: 'https://cdn.shopify.com/extensions/01a0ef41-2e5e-744b-a57b-7cec88bf7012/rivo-loyalty-rewards-referrals-823/assets/ba_forms.css' 9965 }, 9966 global: { 9967 helper_js: 'https://cdn.shopify.com/extensions/01a0ef41-2e5e-744b-a57b-7cec88bf7012/rivo-loyalty-rewards-referrals-823/assets/ba_tracking.js' 9968 } 9969 }; 9970 } 9971 9972 9973 if (window.Rivo.common.template == 'collection'){ 9974 window.Rivo.common.collection = { 9975 id: 173291110481, title: "Shop All Bracelets \u0026 Accessories", handle: "shop", 9976 all_products_count: 786 9977 }; 9978 } 9979 9980 9981 window.Rivo.loy_config = {"brand_theme_settings":{"enabled":false,"button_bg":"#20124d","header_bg":"#20124d","desc_color":"#737376","icon_color":"#3a3a3a","link_color":"#20124d","visibility":"both","cards_shape":"rounded","hide_widget":false,"launcher_bg":"#20124d","mobile_icon":"star","mobile_text":"Rewards","title_color":"#212b36","banner_image":"","desktop_icon":"star","desktop_text":"Rewards","inputs_shape":"rounded","primary_font":"Inter","buttons_shape":"rounded","mobile_layout":"icon_with_text","primary_color":"#20124d","desktop_layout":"icon_with_text","launcher_shape":"circle","secondary_font":"Inter","container_shape":"rounded","mobile_placement":"left","button_text_color":"#FFFFFF","desktop_placement":"left","header_text_color":"#FFFFFF","powered_by_hidden":false,"launcher_text_color":"#ffffff","mobile_side_spacing":20,"desktop_side_spacing":20,"panel_order_settings":{"vip":3,"points":1,"referrals":2},"mobile_bottom_spacing":20,"desktop_bottom_spacing":20,"hide_widget_permanently":false,"hide_widget_launcher_on_mobile":false},"launcher_style_settings":{"enabled":false,"button_bg":"#20124d","header_bg":"#20124d","desc_color":"#737376","icon_color":"#3a3a3a","link_color":"#20124d","visibility":"both","cards_shape":"rounded","hide_widget":false,"launcher_bg":"#20124d","mobile_icon":"star","mobile_text":"Rewards","title_color":"#212b36","banner_image":"","desktop_icon":"star","desktop_text":"Rewards","inputs_shape":"rounded","primary_font":"Inter","buttons_shape":"rounded","mobile_layout":"icon_with_text","primary_color":"#20124d","desktop_layout":"icon_with_text","launcher_shape":"circle","secondary_font":"Inter","container_shape":"rounded","mobile_placement":"left","button_text_color":"#FFFFFF","desktop_placement":"left","header_text_color":"#FFFFFF","powered_by_hidden":false,"launcher_text_color":"#ffffff","mobile_side_spacing":20,"desktop_side_spacing":20,"panel_order_settings":{"vip":3,"points":1,"referrals":2},"mobile_bottom_spacing":20,"desktop_bottom_spacing":20,"hide_widget_permanently":false,"hide_widget_launcher_on_mobile":false},"points_program_enabled":true,"referral_program_enabled":true,"membership_program_enabled":true,"vip_program_enabled":true,"vip_progress_block_show_highest_tier":false,"vip_program_tier_type":"amount_spent","vip_program_peri
9981od":"rolling_year","floating_widget_settings":{"enabled":false,"button_bg":"#20124d","header_bg":"#20124d","desc_color":"#737376","icon_color":"#3a3a3a","link_color":"#20124d","visibility":"both","cards_shape":"rounded","hide_widget":false,"launcher_bg":"#20124d","mobile_icon":"star","mobile_text":"Rewards","title_color":"#212b36","banner_image":"","desktop_icon":"star","desktop_text":"Rewards","inputs_shape":"rounded","primary_font":"Inter","buttons_shape":"rounded","mobile_layout":"icon_with_text","primary_color":"#20124d","desktop_layout":"icon_with_text","launcher_shape":"circle","secondary_font":"Inter","container_shape":"rounded","mobile_placement":"left","button_text_color":"#FFFFFF","desktop_placement":"left","header_text_color":"#FFFFFF","powered_by_hidden":false,"launcher_text_color":"#ffffff","mobile_side_spacing":20,"desktop_side_spacing":20,"panel_order_settings":{"points":1,"referrals":2,"vip":3},"mobile_bottom_spacing":20,"desktop_bottom_spacing":20,"hide_widget_permanently":false,"hide_widget_launcher_on_mobile":false,"desktop_launcher_icon":null,"mobile_launcher_icon":null},"widget_custom_icons":{"brand_icon":null,"rewards":null,"ways_to_earn":null,"ways_to_redeem":null},"widget_css":"#baLoySectionWrapper .ba-loy-bg-color {\n background: linear-gradient(125deg, hsla(254,62%,19%,1), hsla(254,71%,3%,1));\n}\n\n#baLoySectionWrapper .section-panel-wrapper {\n box-shadow:rgba(0, 0, 0, 0.1) 0px 4px 15px 0px, rgba(0, 0, 0, 0.1) 0px 1px 2px 0px, #20124d 0px 2px 0px 0px inset;\n}\n\n\n\n\n.header-main, .header-secondary, .points-expiry-desc {\n color: #FFFFFF !important;\n}\n.main-default a.sign-in{\n color: #20124d !important;\n}\n\n.section-table-piece-detail-items .li-img path {\n fill: #3a3a3a;\n}\n\n.buttons-icons-detail-image .li-img {\n fill: #3a3a3a;\n}\n\n#baLoySectionWrapper .loy-button-main{\n background: #20124d;\n color: #FFFFFF;\n}\n\n #baLoySectionWrapper .loy-button-main{\n color: #FFFFFF;\n }\n\n #baLoySectionWrapper .main-default, #baLoySectionWrapper div.panel-section .head-title,#baLoySectionWrapper body {\n color: #212b36;\n }\n\n #baLoySectionWrapper .section-panel-wrapper .panel-desc, #baLoySectionWrapper .main-default.sign-in-text{\n color: #737376;\n }\n\n #launcher-wrapper{\n background: #20124d;\n }\n\n#baLoySectionWrapper div.section-bottom{\n display:none;\n}\n\n.ba-loy-namespace .ba-loy-messenger-frame, #launcher-wrapper{\n left: 20px;\n right: auto;\n}\n.ba-loy-namespace .ba-loy-messenger-frame {\n bottom: 90px;\n}\n#launcher-wrapper{\n bottom: 20px;\n}\n\n.launcher-text{\n color: #ffffff !important;\n}\n\n#launcher-wrapper .launcher-desktop { display: block; }\n#launcher-wrapper .launcher-mobile { display: none; }\n\n@media (max-device-width: 851px) and (orientation: landscape), (max-width: 500px) {\n .ba-loy-namespace .ba-loy-messenger-frame{\n height: 100%;\n min-height: 100%;\n bottom: 0;\n right: 0;\n left: 0;\n top: 0;\n width: 100%;\n border-radius: 0 !important;\n }\n #launcher-wrapper.up{\n display: none;\n }\n #launcher-wrapper{\n left: 20px;\n right: auto;\n bottom: 20px;\n }\n #launcher-wrapper .launcher-desktop { display: none; }\n #launcher-wrapper .launcher-mobile { display: block; }\n}\n\n\n\n.ba-loy-circle{border-radius: 30px !important;}\n.ba-loy-rounded{border-radius: 10px !important;}\n.ba-loy-square{border-radius: 0px !important;}\n","domain_name":"loyalty.rivo.io","font_settings":{"primary_font":"Inter","secondary_font":"Inter"},"translations":{"vip_perks":"Perks","vip_tiers":"VIP Tiers","general_by":"by","general_or":"OR","vip_reward":"VIP reward","vip_status":"VIP Status","general_day":"Day","social_like":"Like","social_share":"Share","vip_benefits":"Benefits","general_error":"Hmm, something went wrong, please try again shortly","general_month":"Month","general_point":"Point","general_spend":"you spend","general_spent":"Spent","social_follow":"Follow","tos_expiry_at":"Reward expires on {{expiry_date}}.","vip_tier_desc":"Gain access to exclusive rewards.","general_credit":"Credit","general_points":"Points","general_redeem":"Redeem","general_reward":"reward","vip_tier_spend":"Spend {{amount}}","general_credits":"Credits","general_go_back":"Go back","general_pending":"Pending","general_rewards":"Rewards","general_sign_in":"Sign in","general_sign_up":"Sign up","referrals_title":"Referral Program","review_complete":"Post a product review","survey_complete":"Complete a Survey","general_approved":"Approved","general_share_on":"Share on","general_you_have":"You have","tos_free_product":"Reward only applies to {{product_name}}","acct_creation_btn":"Start Earning","general_cancelled":"Cancelled","general_edit_date":"Edit Date","general_save_date":"Save date","general_show_more":"Show more","general_signed_up":"signed up","member_point_desc":"Earn points and turn these into rewards!","referral_complete":"Complete a Referral","tos_expiry_months":"Expires {{expiry_months}} month(s) after being redeemed.","vip_tier_achieved":"Unlocked {{tier_name}}","vip_tier_added_to":"Added to {{tier_name}}","acct_creation_desc":"Get rewarded for being an awesome customer","general_apply_code":"Apply code","general_share_link":"Share your Personal Link","referrals_email_to":"To","vip_achieved_until":"Achieved until","vip_tier_to_unlock":"to unlock","visitor_point_desc":"Earn points and turn these into rewards!","acct_creation_title":"Join and Earn Rewards","general_drop_points":"Limited time bonus points","general_reward_show":"Show","member_header_title":"{points}","member_point_header":"Points","referrals_completed":"referrals completed so far","vip_tier_dropped_to":"Fell to {{tier_name}}","vip_tier_on_highest":"You did it! You're on the highest tier ð","general_balance_text":"store credit","general_drop_credits":"Limited time bonus credits","general_past_rewards":"Past rewards","general_product_page":"\u
9981003cspan class=\"rivo-text-underline\"\u003eproduct page\u003c\/span\u003e","general_ways_to_earn":"Ways to earn","general_your_rewards":"Your rewards","referrals_email_send":"Send email","referrals_get_reward":"Get your","referrals_share_link":"Share this link with a friend for them to claim the reward","social_facebook_like":"Like page on Facebook","social_tiktok_follow":"Follow on TikTok","social_twitter_share":"Share link on X","tos_min_order_amount":"Applies to all orders over {{min_order_amount}}.","vip_tier_earn_points":"Earn {{points}} Points","vip_tier_retained_to":"Kept {{tier_name}}","vip_tier_vip_history":"VIP History","visitor_header_title":"Rewards Program","visitor_point_header":"Earn Points","acct_creation_sign_in":"Already a member?","general_cancel_points":"Points canceled","general_no_points_yet":"No Points yet","general_refund_points":"Points refunded","general_sms_subscribe":"Subscribe to SMS","member_header_caption":"Your points","social_facebook_share":"Share link on Facebook","social_handle_missing":"Please enter your handle","social_twitter_follow":"Follow on X","vip_reward_earned_via":"Earned via {{vip_tier_name}} tier","vip_you_have_achieved":"You've achieved","wallet_pass_subscribe":"Add Wallet Pass","general_apply_code_now":"Apply code now","general_cancel_credits":"Credits canceled","general_no_rewards_yet":"No rewards yet","general_place_an_order":"Place an order","general_points_expired":"Points expired","general_refund_credits":"Credits refunded","general_sms_subscribed":"Subscribed to SMS","general_upload_receipt":"Submit a Receipt","general_ways_to_redeem":"Ways to redeem","referrals_claim_reward":"Claim your gift","referrals_code_invalid":"This referral code is invalid","referrals_email_invite":"Refer friends by email","referrals_visitor_desc":"Refer a friend who makes a purchase and both of you will claim rewards.","review_complete_points":"{{points_amount}} Points for every review posted","tos_min_order_quantity":"Minimum {{min_order_quantity}} items required in cart.","visitor_header_caption":"Earn points, save, and unlock exclusive perks","general_birthday_reward":"Celebrate with a reward","general_challenge_photo":"Submit a Challenge Photo","general_credits_expired":"Credits expired","general_discount_amount":"points for ${{discount_amount}} off","general_email_subscribe":"Subscribe to Emails","general_expiration_date":"Expiration Date","general_no_activity_yet":"No activity yet","general_placed_an_order":"Placed an order","general_points_activity":"Points History","general_share_via_email":"Share via Email","general_upcoming_reward":"Upcoming reward","general_you_have_points":"You have {{points}} points","membership_order_placed":"Credits earned from placing an order","referrals_email_message":"Message","referrals_invalid_email":"Please enter a valid email address","referrals_referral_code":"Your referral link to share","social_instagram_follow":"Follow on Instagram","tos_apply_to_collection":"Only for products in specific collections.","tos_max_shipping_amount":"Maximum shipping amount of {{max_shipping_amount}}.","vip_tier_no_vip_history":"No VIP membership history yet","general_email_subscribed":"Subscribed to Emails","general_enter_valid_date":"Please enter a valid date","general_points_for_every":"Points for every","general_uploaded_receipt":"Submitted a Receipt","general_vip_tier_upgrade":"VIP Tier Upgrade Points","referral_complete_points":"{{points_amount}} Points for every referral completed","referrals_call_to_action":"Refer friends and earn","referrals_claimed_reward":"Here's your","referrals_create_account":"Create an Account","referrals_status_blocked":"blocked","referrals_status_pending":"pending","referrals_your_referrals":"Your referrals","activity_expiration_label":"Expires","general_click_to_see_more":"View My Rewards Account","general_product_purchased":"Product Purchased","general_redeemed_a_reward":"Redeemed a Reward","general_use_discount_code":"Use this discount code on your next order!","gift_card_sync_past_tense":"Gift card sync","referrals_already_visited":"Already visited this page","referrals_general_invalid":"Sorry, looks like this referral is invali
9981d","referrals_referred_reward":"They will get","referrals_referrer_reward":"You will get","social_handle_placeholder":"@username","general_celebrate_birthday":"Celebrate a birthday","general_how_to_earn_points":"How do I earn Points?","loyalty_page_general_spent":"Spent","loyalty_page_rewards_title":"Redeemed Rewards","referrals_no_referrals_yet":"No referrals yet","referrals_program_disabled":"This referral program is disabled","referrals_status_completed":"completed","review_complete_past_tense":"Posted a product review","survey_complete_past_tense":"Completed a Survey","general_add_product_to_cart":"Add product to cart","general_balance_text_plural":"Credits","general_drop_points_expired":"Limited time bonus points expired","general_fallback_first_name":"there","general_not_enough_earnings":"Not enough earnings to redeem","general_were_awarded_points":"were awarded points","loyalty_page_general_points":"Points","loyalty_page_general_redeem":"Redeem","activity_table_header_status":"Status","general_drop_credits_expired":"Limited time bonus credits expired","general_manual_points_adjust":"manual points adjustment","referral_complete_past_tense":"Completed a Referral","referrals_similar_ip_invalid":"We are unable to process referrals within the same IP address","social_provide_handle_button":"Share handle","social_provide_tiktok_handle":"Share your TikTok handle","store_credit_sync_past_tense":"Store credit sync","vip_tier_orders_placed_count":"Place {{amount}} Orders","general_activate_store_credit":"Activate Store Credit","general_apply_to_subscription":"Apply to subscription","general_celebrate_anniversary":"Celebrate Loyalty Anniversary","general_punch_card_checkpoint":"Punch Card Checkpoint","general_redeem_error_vip_tier":"This reward requires a higher VIP tier","general_redeemed_store_credit":"Redeemed Store Credit","general_store_credit_redeemed":"{{store_credit_amount}} in store credit has been added to your account. Apply at checkout.","loyalty_page_rewards_subtitle":"Once you claim a reward, youâll have 90 days to use it. Rewards can only be applied to eligible full-price items and canât be used on licensed products.","checkout_ui_redeem_points_desc":"You have {{points}} points! Redeem for discounts on this order.","general_discount_amount_coupon":"${{discount_amount}} off coupon","general_have_not_earned_points":"You haven't earned any Points yet.","membership_page_benefits_title":"All The Perks, None of the FOMO","referrals_email_to_placeholder":"Add a comma-separated list of emails","referrals_name_must_be_present":"Please enter your first name","account_ui_loyalty_status_title":"Welcome, {{first_name}}! You have {{balance}} points","checkout_ui_redeem_points_login":"Log in","checkout_ui_redeem_points_title":"Redeem your points","general_add_points_default_note":"Points granted by points import","general_celebrate_your_birthday":"Let's celebrate your birthday! ð Please give us 30 days notice - otherwise, you'll have to wait another year.","general_please_choose_an_option":"Please choose an option from the","general_redeem_error_max_points":"Exceeded maximum points to spend","general_redeem_error_min_points":"Did not meet minimum points to redeem","loyalty_page_banner_earn_button":"Earn Points","loyalty_page_rewards_no_rewards":"No rewards yet.","loyalty_page_ways_to_earn_title":"Ways to Earn Points","referrals_email_already_claimed":"This email has already been claimed","referrals_general_invalid_title":"We're Sorry","social_facebook_like_past_tense":"Liked a page on Facebook","social_provide_instagram_handle":"Share your Instagram handle","social_tiktok_follow_past_tense":"Followed on TikTok","social_twitter_share_past_tense":"Shared a link on X","activity_table_header_expiration":"Expires At","loyalty_page_banner_login_button":"Sign In","loyalty_page_upload_receipt_help":"Upload a receipt within the last 30 days to earn points. Please lay the receipt on a flat surface and take a photo from a close distance.","social_facebook_share_past_tense":"Shared a link on Facebook","social_twitter_follow_past_tense":"Followed on X","wallet_pass_subscribe_past_tense":"Added Wallet Pass","account_slideout_home_login_title":"Sign in to manage your account","general_cashback_not_earned_title":"You didn't earn CashBack on this order","general_cross_collection_purchase":"Cross Collection Purchase","general_points_for_judgeme_review":"JudgeMe review","loyalty_page_banner_redeem_button":"Redeem Rewards","loyalty_page_subscribe_email_help":"Subscribe to our email list and earn points","loyalty_page_ways_to_redeem_title":"Redeem For Discounts","membership_page_benefits_subt
9981itle":"","referrals_account_already_claimed":"You already have an account. You can invite your friends to win rewards!","vip_tier_products_purchased_count":"Purchase {{amount}} Specific Products","account_ui_loyalty_status_subtitle":"You're on the {{vip_tier_name}} tier","checkout_ui_activate_account_title":"Activate Your Account","checkout_ui_redeemed_rewards_title":"Your rewards","general_reset_removal_default_note":"Existing points removed for points reset from import","general_store_credit_transfer_sent":"Sent {{amount}} credit to {{recipient_email}}","loyalty_page_customer_birthday_day":"Day","loyalty_page_upload_receipt_attach":"Attach File","loyalty_page_upload_receipt_button":"Submit Receipt","loyalty_page_ways_to_earn_subtitle":"","referrals_your_referrals_show_here":"Your referrals will show here.","social_instagram_follow_past_tense":"Followed on Instagram","account_slideout_orders_login_title":"Sign in to view your orders","checkout_ui_points_estimation_title":"Complete this purchase to earn up to {{points}} points","checkout_ui_refer_friends_login_url":"account\/login?return_url=\/account\u0026email={{customer_email}}","general_cashback_not_earned_subject":"You didn't earn CashBack on this order","general_loyalty_program_and_rewards":"Loyalty Program \u0026 Rewards","general_vip_tier_upgrade_past_tense":"{{tier_name}} Entry Points","general_your_rewards_will_show_here":"Your rewards will show here.","loyalty_page_banner_logged_in_title":"\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1259\/9863\/files\/The_Little_Loyalty_Club.png?v=1748610726\" loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"auto\" alt=\"The Little Loyalty Club\"\u003e","loyalty_page_banner_register_button":"Join Now","loyalty_page_explainer_step_1_title":"Join for free","loyalty_page_explainer_step_2_title":"Shop \u0026 Earn","loyalty_page_explainer_step_3_title":"Redeem Your Points","loyalty_page_subscribe_email_button":"Subscribe","loyalty_page_upload_receipt_no_file":"Please select a file to upload","loyalty_page_upload_receipt_success":"Thanks! Your receipt will be reviewed shortly","membership_page_banner_login_button":"Sign In","membership_page_banner_login_prefix":"Already a member?","membership_tier_unlocked_past_tense":"Membership Signup","referrals_email_message_placeholder":"Customize your referral message. The referral link will be automatically added.","account_slideout_profile_login_title":"Sign in to manage your profile","checkout_ui_redeem_points_login_desc":"to view your points balance and discover rewards available for redemption.","checkout_ui_redeem_store_credit_desc":"You have ${{store_credit}} in store credit.","general_cashback_not_earned_subtitle":"This order wasn't eligible for CashBack.","loyalty_page_banner_logged_out_title":"\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1259\/9863\/files\/The_Little_Loyalty_Club.png?v=1748610726\" loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"auto\" alt=\"The Little Loyalty Club\"\u003e","loyalty_page_banner_login_button_url":"","loyalty_page_customer_birthday_month":"Month","loyalty_page_customer_birthday_title":"Celebrate your birthday","loyalty_page_ways_to_redeem_subtitle":"Once you claim a reward, youâll have 90 days to use it. Rewards can only be applied to eligible full-price items and canât be used on licensed products.","vip_tier_product_ids_purchased_count":"Purchase {{amount}} Specific Products","checkout_ui_cashback_estimation_title":"Complete this purchase to earn up to {{cashback}} in CashBack","checkout_ui_install_wallet_pass_title":"Install our Wallet Pass for Exclusive Offers","checkout_ui_points_estimation_subtext":"Loyalty points can be redeemed for rewards on future purchases. Actual points awarded may differ if other discounts are applied.","checkout_ui_redeem_store_credit_title":"Apply your store credit","checkout_ui_refer_friends_login_title":"Claim your points from this purchase !","general_applied_to_subscription_order":"Applied to subscription order","general_celebrate_birthday_past_tense":"Celebrated a birthday","general_choose_redemption_destination":"Choose to use it now or on your next subscription order","general_discount_code_applied_to_cart":"Discount applied to your cart","loyalty_page_general_enter_valid_date":"Please enter a valid date","account_dashboard_activity_block_t
9981itle":"Your Activity","account_dashboard_member_card_cta_text":"View Rewards","account_dashboard_referral_block_title":"Refer a friend","general_reset_new_balance_default_note":"Points reset to new balance by points import","general_store_credit_transfer_received":"Received {{amount}} credit from {{sender_email}}","general_use_discount_code_free_product":"Use this discount code on your next order to get a free product!","loyalty_page_explainer_logged_in_title":"Hi \u003cspan rivo-x-data=\"{ username: $store.customer.first_name || 'there' }\" rivo-x-text=\"username\"\u003e\u003c\/span\u003e, you have \u003cstrong\u003e\u003cspan rivo-x-data rivo-x-text=\"$store.customer.pretty_points_tally\"\u003e\u003c\/span\u003e\u003c\/strong\u003e Points","loyalty_page_explainer_step_1_subtitle":"Create an account or log in to start earning points on every purchase.","loyalty_page_explainer_step_2_subtitle":"Earn 1 point for every $1 spent.\u003cbr\u003eUnlock bonus ways to earn more points along the way.","loyalty_page_explainer_step_3_subtitle":"Use your points for discounts on your favorites or free gifts.","loyalty_page_vip_tier_1_threshold_text":"Free to Join","loyalty_page_vip_tier_2_threshold_text":"Spend $125","loyalty_page_vip_tier_3_threshold_text":"Spend $250","loyalty_page_vip_tiers_logged_in_title":"Loyalty Club Tiers","membership_page_explainer_step_1_title":"Add to cart","membership_page_explainer_step_2_title":"Check out to activate","membership_page_explainer_step_3_title":"Enjoy your perks","membership_recurring_signup_past_tense":"Recurring Credit","referrals_advocate_stats_email_claimed":"Claimed","checkout_ui_activate_account_button_url":"\/account\/login?return_url=\/account","checkout_ui_cashback_estimation_subtext":"CashBack can be redeemed for rewards on future purchases. Actual CashBack awarded may differ if other discounts are applied.","general_subscription_redemption_applied":"This reward will apply to your next subscription order","loyalty_page_activity_table_header_date":"Date","loyalty_page_activity_table_no_activity":"No activity yet","loyalty_page_banner_register_button_url":"","loyalty_page_explainer_logged_out_title":"How it Works","loyalty_page_vip_tiers_logged_out_title":"Loyalty Club Tiers","membership_page_banner_login_button_url":"\/account\/login?return_url=\/account","social_provide_tiktok_handle_past_tense":"Shared your TikTok handle","account_dashboard_member_card_body_title":"You have \u003cstrong\u003e\u003cspan rivo-x-data rivo-x-text=\"$store.customer.pretty_points_tally\"\u003e\u003c\/span\u003e\u003c\/strong\u003e Points","account_ui_loyalty_status_cta_button_url":"\/pages\/loyalty-program","checkout_ui_activate_account_button_text":"Activate Account","checkout_ui_activate_account_description":"Activate your loyalty account to start earning points, tracking rewards, and accessing exclusive member benefits.","checkout_ui_redeem_points_alternate_name":"points","checkout_ui_redeemed_rewards_description":"Your rewards available to use","checkout_ui_redeemed_rewards_login_title":"Log in","checkout_ui_refer_friends_referral_title":"Refer a Friend","general_celebrate_anniversary_past_tense":"Celebrated Loyalty Anniversary","loyalty_page_activity_expiration_warning":"\u003cspan class=\"rivo-expiry-date\"\u003ePoints Expiration Date: \u003cspan rivo-x-data rivo-x-text=\"$store.customer.points_expiry\"\u003e\u003c\/span\u003e\u003c\/span\u003e\u003cbr\u003e\u003cbr\u003e\u003cspan class=\"rivo-expiry-current-tier\"\u003eTier: \u003cspan rivo-x-data rivo-x-text=\"$store.customer?.current_vip_tier_info?.tier?.name\"\u003e\u003c\/span\u003e\u003c\/span\u003e","loyalty_page_customer_birthday_save_date":"Save Date","loyalty_page_upload_challenge_photo_help":"Upload a challenge photo to earn.","referrals_advocate_stats_email_completed":"Completed","referrals_create_account_to_claim_coupon":"Create an Account to claim your coupon","account_dashboard_referral_block_subtitle":"Give your friends a reward and claim your own when they make a purchase","account_ui_loyalty_status_cta_button_text":"View Rewards","checkout_ui_redeemed_rewards_select_label":"Select a Reward","loyalty_page_activity_table_header_action":"Activity","loyalty_page_banner_logged_in_description":"A little loyalty goes a long way.\u003cbr\u003eEarn rewards points with every purchase!","loyalty_page_explainer_logged_in_subtitle":"Here's an overview of your current points balance and recent activity","loyalty_page_vip_tiers_logged_in_subtitle":"You are on the \u003cspan rivo-x-data rivo-x-text=\"$store.customer?.current_vip_tier_info?.tier?.name\"\u003e\u003c\/span\u003e tier","membership_page_banner_add_to_cart_button":"Join\u003cs\u003e$250\/yr\u003c\/s\u003e$200\/yr","membership_page_explainer_step_1_subtitle":"Add your membership to your cart for $250 annually and unlock benefits.","membership_page_explainer_step_2_subtitle":"Complete checkout and lock in your spotâyour membership is now official.","membership_page_explainer_step_3_subtitle":"Dive right in and enjoy rewards, free shipping, and insider access.","account_dashboard_member_card_header_title":"Welcome \u003cspan rivo-x-data rivo-x-text=\"$store.customer?.first_name\"\u003e\u003c\/span\u003e","account_dashboard_vip_tiers_progress_t
9981itle":"VIP Tier Status","checkout_ui_install_wallet_pass_button_url":"\/#rivo","general_converted_to_credits_external_note":"Converted your points balance to store credit","general_converted_to_credits_internal_note":"Converted from points to store credit","loyalty_page_banner_logged_out_description":" Join The Little Loyalty Club and start earning points every time you shop","loyalty_page_general_activate_store_credit":"Activate Store Credit","loyalty_page_general_redeemed_store_credit":"Redeemed Store Credit","loyalty_page_upload_challenge_photo_attach":"Attach File","loyalty_page_upload_challenge_photo_button":"Submit Challenge Photo","loyalty_page_vip_tiers_logged_out_subtitle":"","membership_page_activity_table_header_date":"Date","membership_page_activity_table_no_activity":"No activity yet","membership_page_banner_is_subscriber_title":"\u003cspan class=\"rivo-hero-subheading\"\u003e$200 annually\u003c\/span\u003e\u003cbr\u003eYay! Youâre Officially In!","membership_page_status_is_subscriber_title":"You have an Active Membership","referrals_advocate_stats_email_link_clicks":"Link Clicks","social_provide_instagram_handle_past_tense":"Shared your Instagram handle","account_dashboard_member_card_body_subtitle":"You're on the \u003cspan rivo-x-data rivo-x-text=\"$store.customer?.current_vip_tier_info?.tier?.name\"\u003e\u003c\/span\u003e tier","account_dashboard_referral_block_share_html":"\u003ca href=\"\/pages\/refer-a-friend\"\u003eEmail your link to friends\u003c\/a\u003e or \u003ca href=\"\/pages\/refer-a-friend?popup_panel=email_stats\"\u003eget your stats\u003c\/a\u003e","checkout_ui_install_wallet_pass_button_text":"Install Wallet Pass","checkout_ui_install_wallet_pass_description":"Unlock exclusive offers and rewards with our Wallet Pass.","checkout_ui_login_notification_banner_title":"Have loyalty discounts or rewards that you'd like to apply?","checkout_ui_refer_friends_login_description":"Log in or register to activate your loyalty account, redeem your points and access your special offers.","loyalty_page_activity_table_header_earnings":"Points","loyalty_page_upload_challenge_photo_no_file":"Please select a file to upload","loyalty_page_upload_challenge_photo_success":"Thanks! Your challenge photo will be reviewed shortly","membership_page_activity_expiration_warning":"Expiration Date: \u003cspan rivo-x-data rivo-x-text=\"$store.customer.points_expiry\"\u003e\u003c\/span\u003e","membership_page_banner_non_subscriber_title":"\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1259\/9863\/files\/Membership_TheLittleCircle_Logo.svg?v=1759775727\" class=\"rivo-hero-logo\" alt=\"The Little Circle Membership Logo\" loading=\"lazy\" width=\"100\" height=\"100\" \/\u003e\u003cbr\u003e\u003cspan class=\"rivo-hero-subheading\"\u003eNow $200 for launch week\u003c\/span\u003e\u003cbr\u003eThe Little Circle Membership","membership_recurring_anniversary_past_tense":"Membership Anniversary Credits","account_dashboard_unused_rewards_block_title":"Use your rewards","checkout_ui_redeem_incremental_earnings_desc":"How much of your {{balance}} in balance (equivalent to ${{balance_to_currency}}) would you like to redeem?","checkout_ui_refer_friends_login_button_title":"Activate my account","general_order_placed_store_credit_multiplier":"Earn cash back for every $1 spent","loyalty_page_vip_tiers_progress_column_title":"","membership_page_activity_table_header_action":"Activity","referrals_advocate_stats_email_unique_visits":"Unique visits from your link","referrals_email_your_friend_has_referred_you":"Your friend has referred you to {{shop_name}}","account_dashboard_vip_tiers_progress_subtitle":"Earn \u003cspan rivo-x-data rivo-x-text=\"$store.customer?.current_vip_tier_info?.next_tier?.formatted_to_spend_or_earn\"\u003e\u003c\/span\u003e points to reach the \u003cspan rivo-x-data rivo-x-text=\"$store.customer?.current_vip_tier_info?.next_tier?.name\"\u003e\u003c\/span\u003e tier.","checkout_ui_login_notification_banner_subtext":"to login to your account","checkout_ui_redeem_incremental_earnings_login":"Log in","checkout_ui_redeem_incremental_earnings_title":"Redeem store balance","checkout_ui_redeem_points_select_custom_label":"{{reward_name}} orders ${{min_order_amount}}+ for {{points_amount}} points","checkout_ui_refer_friends_referral_button_url":"","loyalty_page_activity_table_header_expiration":"Expires At","membership_page_banner_add_to_cart_button_url":"\/membership-add-to-cart","membership_page_cancel_membership_modal_title":"Are you sure you want to cancel your membership?","membership_page_explainer_is_subscriber_title":"Hi \u003cspan rivo-x-data=\"{ username: $store.customer.first_name || 'there' }\" rivo-x-text=\"username\"\u003e\u003c\/span\u003e, you have \u003cstrong\u003e\u003cspan rivo-x-data rivo-x-text=\"$store.customer.pretty_credits_tally\"\u003e\u003c\/span\u003e\u003c\/strong\u003e in Store Credit","membership_page_status_is_subscriber_subtitle":"You will be charged next on \u003cspan rivo-x-data rivo-x-text=\"$store.customer?.membership?.pretty_next_charge_date\"\u003e\u003c\/span\u003e","referrals_email_checkout_out_and_claim_reward":"Check out the referral link and claim a free reward.","account_dashboard_rewards_progress_block_t
9981itle":"Earn more rewards","checkout_ui_gift_with_purchase_applied_message":"Free gift applied","checkout_ui_redeem_points_select_discount_desc":"Please select a discount","checkout_ui_redeem_points_store_credit_success":"{{store_credit_amount}} in store credit redeemed. Apply to this order from the payment section.","checkout_ui_redeemed_rewards_login_description":"to view your rewards available to use.","checkout_ui_refer_friends_referral_description":"Share your referral link with friends and earn rewards each time a new friend makes a purchase.","membership_page_activity_table_header_earnings":"Points","membership_page_cancel_membership_modal_button":"Yes, Cancel my Membership","membership_page_explainer_non_subscriber_title":"How it Works","account_dashboard_unused_rewards_block_subtitle":"Use your previously redeemed rewards:","checkout_ui_login_notification_banner_link_text":"Click here","checkout_ui_redeem_points_select_discount_label":"Select Discount","checkout_ui_redeemed_rewards_select_description":"Please select a reward","checkout_ui_refer_friends_referral_button_title":"Refer a Friend","general_store_credit_transfer_sent_via_gift_url":"Sent {{amount}} credit via gift URL {{transfer_url}}","loyalty_page_vip_tiers_progress_column_subtitle":"Spend \u003cspan rivo-x-data rivo-x-text=\"$store.customer?.current_vip_tier_info?.next_tier?.formatted_to_spend_or_earn\"\u003e\u003c\/span\u003e to reach the \u003cspan rivo-x-data rivo-x-text=\"$store.customer?.current_vip_tier_info?.next_tier?.name\"\u003e\u003c\/span\u003e tier.","membership_page_status_update_payment_link_text":"Update Payment Method","referrals_advocate_stats_email_no_referrals_yet":"No referrals yet.","account_dashboard_unused_rewards_block_date_text":"Redeemed on: {{date}}","membership_page_activity_table_header_expiration":"Expires At","membership_page_banner_is_subscriber_description":"Exclusive gifts, cashback, secret collectionsâyouâve unlocked it all.","membership_page_explainer_is_subscriber_subtitle":"Here's an overview of your current credits balance and recent activity","account_dashboard_referral_block_copy_button_text":"Copy","account_dashboard_rewards_progress_block_subtitle":"Earn another \u003cspan rivo-x-data rivo-x-text=\"$store.customer.pretty_points_amount_to_next_reward\"\u003e\u003c\/span\u003e points to unlock a \u003cspan rivo-x-data rivo-x-text=\"$store.customer.next_reward?.name\"\u003e\u003c\/span\u003e reward\u003c\/p\u003e","account_dashboard_unused_rewards_block_no_rewards":"No rewards yet","checkout_ui_redeem_store_credit_apply_button_text":"Apply Store Credit","membership_page_banner_non_subscriber_description":"Join our membership and enjoy rewards, gifts, and insider accessâmade just for you.","membership_page_update_payment_method_modal_title":"Update Payment Method","checkout_ui_redeem_incremental_earnings_login_desc":"to view your balance.","membership_page_status_cancel_membership_link_text":"Cancel","membership_page_status_rejoin_membership_link_text":"Rejoin Membership","checkout_ui_refer_friends_referral_text_field_label":"Your referral link","membership_page_cancel_membership_modal_description":"We'd hate to see you leave. Your membership includes exclusive benefits that you'll lose access to immediately.","checkout_ui_redeem_incremental_earnings_desc_applied":"You're using {{applied_balance}} of your available {{balance}} in store credit","membership_page_status_pending_cancellation_subtitle":"Your membership will be cancelled on \u003cspan rivo-x-data rivo-x-text=\"$store.customer?.membership?.pretty_queued_for_cancellation_at\"\u003e\u003c\/span\u003e","checkout_ui_cashback_estimation_title_usd_to_currency":"Complete this purchase to earn up to {{cashback_usd_to_currency}} in CashBack","referrals_advocate_stats_email_friends_order_verified":"Friends order was verified","referrals_advocate_stats_email_referral_link_to_share":"Here's your referral link to share with friends.","referrals_advocate_stats_email_friend_claimed_discount":"Friend claimed discount","account_dashboard_vip_tiers_progress_completed_subtitle":"Congrats! You've reached the highest tier.","checkout_ui_cashback_estimation_subtext_usd_to_currency":"CashBack can be redeemed for rewards on future purchases. Actual CashBack awarded may differ if other discounts are applied.","checkout_ui_post_purchase_account_activation_button_url":"\/account\/login?return_url=\/account","membership_page_update_payment_method_modal_description":"We've sent you an email to update your payment method. Please check your inbox and follow the instructions.","checkout_ui_redeem_incremental_earnings_form_input_label":"Earnings amount","checkout_ui_redeem_incremental_discount_code_change_error":"{{code}} couldn't be used with your existing discounts.","checkout_ui_redeem_incremental_earnings_form_submit_button":"Redeem","checkout_ui_redeem_points_not_enough_points_banner_message":"You're {{points_amount}} points away from a reward","account_dashboard_rewards_progress_block_completed_subtitle":"Keep earning points to unlock more rewards","checkout_ui_redeem_incremental_earnings_desc_usd_to_currency":"You have {{formatted_credits_tally_usd_to_currency}}) in store credit to redeem (subject to FX rates at time of redemption)","checkout_ui_redeem_incremental_earnings_store_credit_success":"{{store_credit_amount}} in store credit redeemed. Apply to this order from the payment section.","checkout_ui_redeem_incremental_earnings_desc_usd_to_currency_applied":"You're using {{applied_balance_to_currency}} of your available {{formatted_credits_tally_usd_to_currency}} in store credit"},"custom_css":null,"ways_to_earn":[{"id":400457,"title":"Create an Account","status":"active","name":"Create an Account","trigger":"customer_member_enabled","points_amount":30,"credits_amount":0.0,"balance_amount":30,"description":null,"url":null,"button_text":null,"pretty_earnings_text":"30 Points","card_click_method":null,"hidden_from_ui":false,"creation_source":null,"translations":[],"icon_url":"https:\/\/loyalty.rivo.io\/assets\/69o6fvddi544in376johwjnd9ysb","multi_balance_settings_by_tiers":{},"multipliers":[],"currency_base_amount":1,"points_type":"fixed"},{"id":400458,"title":"Place an order","status":"active","name":null,"trigger":"order_placed","points_amount":1,"credits_amount":0.0,"balance_amount":1,"description":"$1 spent = 1 Point","url":"","button_text":null,"pretty_earnings_text":"1 Points","card_click_method":"modal","hidden_from_ui":false,"creation_source":null,"translations":[],"icon_url":"https:\/\/loyalty.rivo.io\/assets\/68oilknavxjw4bxqf03ahapvtydd","multi_balance_settings_by_tiers":{"Crystal":{"balance_amount":1,"currency_base_amount":1,"vip_tier_multiplier_amount":null},"Silver":{"balance_amount":1,"currency_base_amount":1,"vip_tier_multiplier_amount":1.25},"Gold":{"balance_amount":1,"currency_base_amount":1,"vip_tier_multiplier_amount":1.5}},"multipliers":[{"collection_id":"682399531089","multiplier_amount":2.0}],"currency_base_amount":1,"points_type":"multiplier"},{"id":425479,"title":"Post a product review","status":"active","name":null,"trigger":"review_complete","points_amount":15,"credits_amount":0.0,"balance_amount":15,"description":"{{points_amount}} Points\u003cbr\u003e\u003cb\u003eLimited to 10 times per year","url":"","button_text":null,"pretty_earnings_text":"15 Points","card_click_method":"modal","hidden_from_ui":false,"creation_source":null,"translations":[],"icon_url":"https:\/\/loyalty.rivo.io\/assets\/bh1d6jjirnc2klwcindgl9wp5uwf"},{"id":400459,"title":"Birthday Gift","status":"active","name":"Birthday Gift","trigger":"customer_birthday","points_amount":150,"credits_amount":0.0,"balance_amount":150,"description":"{{points_amount}} Points","url":null,"button_text":null,"pretty_earnings_text":"150 Points","card_click_method":null,"hidden_from_ui":false,"creation_source":null,"translations":[],"icon_url":"https:\/\/loyalty.rivo.io\/assets\/kpywj6dc9vxmqcr0x2onj8au34q3","multi_balance_settings_by_tiers":{},"multipliers":[],"currency_base_amount":1,"points_type":"fixed"}
9981,{"id":624622,"title":"Subscribe to Word of the Month","status":"active","name":"Subscribe to Word of the Month","trigger":"product_purchased","points_amount":50,"credits_amount":0.0,"balance_amount":50,"description":"{{points_amount}} points","url":"https:\/\/www.littlewordsproject.com\/products\/word-of-the-month-subscription","button_text":null,"pretty_earnings_text":"50 Points","card_click_method":"new_tab","hidden_from_ui":false,"creation_source":null,"translations":[],"icon_url":"https:\/\/loyalty.rivo.io\/assets\/qouy2jn7kbtk17mw6gu5qdwtsz0o"},{"id":425470,"title":"Instagram Follow","name":"Instagram Follow","social":true,"trigger":"instagram_follow","status":"active","points_amount":5,"credits_amount":0.0,"balance_amount":5,"url":"https:\/\/instagram.com\/littlewordsproject","pretty_earnings_text":"5 Points","hidden_from_ui":false,"translations":[],"icon_url":"https:\/\/loyalty.rivo.io\/assets\/tz9vv35xrw4c6ed3d6yo7odxjt9v"},{"id":425472,"title":"TikTok Follow","name":"TikTok Follow","social":true,"trigger":"tiktok_follow","status":"active","points_amount":5,"credits_amount":0.0,"balance_amount":5,"url":"https:\/\/www.tiktok.com\/@littlewordsproject","pretty_earnings_text":"5 Points","hidden_from_ui":false,"translations":[],"icon_url":"https:\/\/loyalty.rivo.io\/assets\/b82l12j808edv15fhnbbj6xxuvlp"},{"id":425473,"title":"Submit a Receipt","status":"active","name":null,"trigger":"upload_receipt","points_amount":1,"credits_amount":0.0,"balance_amount":1,"description":null,"url":null,"button_text":null,"pretty_earnings_text":"1 Points","card_click_method":null,"hidden_from_ui":false,"creation_source":null,"translations":[],"icon_url":"https:\/\/loyalty.rivo.io\/assets\/ycw9i2wr7fy3gxqdhpgx7wcnxo0v","multi_balance_settings_by_tiers":{},"multipliers":[],"currency_base_amount":1,"points_type":"multiplier"},{"id":448934,"title":"Pass It On","status":"active","name":"Pass It On","trigger":"custom_action","points_amount":5,"credits_amount":0.0,"balance_amount":5,"description":"{{points_amount}} points when someone registers your bracelet using it's QR code","url":"","button_text":"","pretty_earnings_text":"5 Points","card_click_method":null,"hidden_from_ui":false,"creation_source":null,"translations":[],"icon_url":"https:\/\/loyalty.rivo.io\/assets\/1iscf5p3q1ouwvsazyy6efxt8rzk"},{"id":415441,"title":"All In-App Orders","status":"active","name":"All In-App Orders","trigger":"custom_action","points_amount":5,"credits_amount":0.0,"balance_amount":5,"description":"{{points_amount}} Points","url":"","button_text":"","pretty_earnings_text":"5 Points","card_click_method":null,"hidden_from_ui":false,"creation_source":null,"translations":[],"icon_url":"https:\/\/loyalty.rivo.io\/assets\/pfyjglvctl7yyix5qrg4xmrufnck"},{"id":415537,"title":"2x Points at The Bead Bar","status":"active","name":"2x Points at The Bead Bar","trigger":"custom_action","points_amount":0,"credits_amount":0.0,"balance_amount":0,"description":"2x Points","url":"https:\/\/www.littlewordsproject.com\/collections\/beading-experience","button_text":"Book Now","pretty_earnings_text":"0 Points","card_click_method":null,"hidden_from_ui":false,"creation_source":null,"translations":[],"icon_url":"https:\/\/loyalty.rivo.io\/assets\/aoackw27uzi9sxu28ox40n674is2"},{"id":434515,"title":"Connect Your Bracelet","status":"active","name":"Connect Your Bracelet","trigger":"custom_action","points_amount":10,"credits_amount":0.0,"balance_amount":10,"description":"{{points_amount}} Points\u003cbr\u003e\u003cb\u003eLimited to 20 times per year","url":"https:\/\/www.littlewordsproject.com\/pages\/connect-your-word","button_text":"Connect","pretty_earnings_text":"10 Points","card_click_method":null,"hidden_from_ui":false,"creation_source":null,"translations":[],"icon_url":"https:\/\/loyalty.rivo.io\/assets\/jndrju74xy0h3zv9ptw1o39rg38a"},{"id":413425,"title":"Complete a Referral","status":"active","name":"Complete a Referral","trigger":"referral_complete","points_amount":150,"credits_amount":0.0,"balance_amount":150,"description":"{{points_amount}} Points","url":"","button_text":null,"pretty_earnings_text":"150 Points","card_click_method":"modal","hidden_from_ui":true,"creation_source":null,"translations":[],"icon_url":"https:\/\/loyalty.rivo.io\/assets\/tzi56ieygqfwjw29ub84cpa593t3"}],"points_rewards":[{"id":496980,"name":"Free Standard US Shipping","enabled":true,"points_amount":50,"points_type":"fixed","reward_type":"free_shipping","source":"points","pretty_display_rewards":"Free Standard US Shipping (50 points required)","icon_url":"https:\/\/loyalty.rivo.io\/assets\/y8nmura0q5rnwsj1sj3oxrkw2ze3","pretty_points_amount":"50","purchase_type":"one_time","recurring_cycle_limit":null,"min_order_quantity":null,"translations":[],"reward_value":100.0,"min_order_value_in_cents":null,"terms_of_service":{"reward_type":"free_shipping","max_shipping_amount":7.0,"expiry_months":3,"show_tos":true},"pretty_terms_of_service":"Maximum shipping amount of $7.00. Expires 3 month(s) after being redeemed. ","translated_terms_of_service":{}},{"id":461444,"name":"$10 off","enabled":true,"points_amount":100,"points_type":"fixed","reward_type":"fixed_amount","source":"points","pretty_display_rewards":"$10 off (100 points required)","icon_url":"https:\/\/loyalty.rivo.io\/assets\/vfcxgxhoozsf4m19vm8z9vwvshil","pretty_points_amount":"100","purchase_type":"both","recurring_cycle_limit":null,"min_order_quantity":null,"translations":[],"reward_value":10.0,"min_order_value_in_cents":null,"terms_of_service":{"reward_type":"fixed_amount","applies_to":"collection","expiry_months":3,"show_tos":true},"pretty_terms_of_service":"Only for products in specific collections. Expires 3 month(s) after being redeemed. ","translated_terms_of_service":{}},{"id":461445,"name":"$20 off","enabled":true,"points_amount":200,"points_type":"fixed","reward_type":"fixed_amount","source":"points","pretty_display_rewards":"$20 off (200 points required)","icon_url":"https:\/\/loyalty.rivo.io\/assets\/2ikjcv6qcrb136w5isnt6o26fv1m","pretty_points_amount":"200","purchase_type":"both","recurring_cycle_limit":null,"min_order_quantity":null,"translations":[],"reward_value":20.0,"min_order_value_in_cents":null,"terms_of_service":{"reward_type":"fixed_amount","applies_to":"collection","expiry_months":3,"show_tos":true},"pretty_terms_of_service":"Only for products in specific collections. Expires 3 month(s) after being redeemed. ","translated_terms_of_service":{}},{"id":475662,"name":"$30 off","enabled":true,"points_amount":300,"points_type":"fixed","reward_type":"fixed_amount","source":"points","pretty_display_rewards":"$30 off (300 points required)","icon_url":"https:\/\/loyalty.rivo.io\/assets\/yt38f542drmsr7ifl5xlg56cayhn","pretty_points_amount":"300","purchase_type":"both","recurring_cycle_limit":null,"min_order_quantity":null,"translations":[],"reward_value":30.0,"min_order_value_in_cents":null,"terms_of_service":{"reward_type":"fixed_amount","applies_to":"collection","expiry_months":3,"show_tos":true},"pretty_terms_of_service":"Only for products in specific collections. Expires 3 month(s) after being redeemed. ","translated_terms_of_service":{}},{"id":609012,"name":"Bead Bar Single Session","enabled":true,"points_amount":0,"points_type":"fixed","reward_type":"fixed_amount","source":"points","pretty_display_rewards":"Bead Bar Single Session (0 points required)","icon_url":null,"pretty_points_amount":"0","purchase_type":"one_time","recurring_cycle_limit":null,"min_order_quantity":null,"translations":[],"reward_value":35.0,"min_order_value_in_cents":null,"terms_of_service":{"reward_type":"fixed_amount","applies_to":"collection","show_tos":true},"pretty_terms_of_service":"Only for products in specific collections. ","translated_terms_of_service":{}}],"rewards":[{"id":496980,"name":"Free Standard US Shipping","enabled":true,"points_amount":50,"points_type":"fixed","reward_type":"free_shipping","source":"points","pretty_display_rewards":"Free Standard US Shipping (50 points required)","icon_url":"https:\/\/loyalty.rivo.io\/assets\/y8nmura0q5rnwsj1sj3oxrkw2ze3","pretty_points_amount":"50","purchase_type":"one_time","recurring_cycle_limit":null,"min_order_quantity":null,"translations":[],"reward_value":100.0,"min_order_value_in_cents":null,"terms_of_service":{"reward_type":"free_shipping","max_shipping_amount":7.0,"expiry_months":3,"show_tos":true},"pretty_terms_of_service":"Maximum shipping amount of $7.00. Expires 3 month(s) after being redeemed. ","translated_terms_of_service":{}},{"id":461444,"name":"$10 off","enabled":true,"points_amount":100,"points_type":"fixed","reward_type":"fixed_amount","source":"points","pretty_display_rewards":"$10 off (100 points required)","icon_url":"https:\/\/loyalty.rivo.io\/assets\/vfcxgxhoozsf4m19vm8z9vwvshil","pretty_points_amount":"100","purchase_type":"both","recurring_cycle_limit":null,"min_order_quantity":null,"translations":[],"reward_value":10.0,"min_order_value_in_cents":null,"terms_of_service":{"reward_type":"fixed_amount","applies_to":"collection","expiry_months":3,"show_tos":true},"pretty_terms_of_service":"Only for products in specific collections. Expires 3 month(s) after being redeemed. ","translated_terms_of_service":{}},{"id":461445,"name":"$20 off","enabled":true,"points_amount":200,"points_type":"fixed","reward_type":"fixed_amount","source":"points","pretty_display_rewards":"$20 off (200 points required)","icon_url":"https:\/\/loyalty.rivo.io\/assets\/2ikjcv6qcrb136w5isnt6o26fv1m","pretty_points_amount":"200","purchase_type":"both","recurring_cycle_limit":null,"min_order_quantity":null,"translations":[],"reward_value":20.0,"min_order_value_in_cents":null,"terms_of_service":{"reward_type":"fixed_amount","applies_to":"collection","expiry_months":3,"show_tos":true},"pretty_terms_of_service":"Only for products in specific collections. Expires 3 month(s) after being redeemed. ","translated_terms_of_service":{}},{"id":475662,"name":"$30 off","enabled":true,"points_amount":300,"points_type":"fixed","reward_type":"fixed_amount","source":"points","pretty_display_rewards":"$30 off (300 points required)","icon_url":"https:\/\/loyalty.rivo.io\/assets\/yt38f542drmsr7ifl5xlg56cayhn","pretty_points_amount":"300","purchase_type":"both","recurring_cycle_limit":null,"min_order_quantity":null,"translations":[],"reward_value":30.0,"min_order_value_in_cents":null,"terms_of_service":{"reward_type":"fixed_amount","applies_to":"collection","expiry_months":3,"show_tos":true},"pretty_terms_of_service":"Only for products in specific collections. Expires 3 month(s) after being redeemed. ","translated_terms_of_service":{}},{"id":609012,"name":"Bead Bar Single Session","enabled":true,"points_amount":0,"points_type":"fixed","reward_type":"fixed_amount","source":"points","pretty_display_rewards":"Bead Bar Single Session (0 points required)","icon_url":null,"pretty_points_amount":"0","purchase_type":"one_time","recurring_cycle_limit":null,"min_order_quantity":null,"translations":[],"reward_value":35.0,"min_order_value_in_cents":null,"terms_of_service":{"reward_type":"fixed_amount","applies_to":"collection","show_tos":true},"pretty_terms_of_service":"Only for products in specific collections. ","translated_terms_of_service":{}}],"referral_rewards":{"referrer_reward":{"id":461446,"name":"$5 off coupon","reward_type":"fixed_amount","properties":{"applies_to":"entire","auto_redeem_enabled":false,"refund_on_expiry_enabled":false,"hide_from_checkout_enabled":false,"hide_from_site_enabled":false,"min_order_value_excludes_free_product":false,"applies_to_full_price_items_only":false,"translations":[]}},"referred_reward":{"id":712110,"name":"$5 off coupon","reward_type":"fixed_amount","properties":{"applies_to":"entire","translations":[],"collection_id":null,"min_requirement":"min_purchase_amount","auto_redeem_enabled":false,"customer_points_get":1.0,"increment_points_value":100,"refund_on_expiry_enabled":false,"applies_to_full_price_items_only":false,"min_order_value_excludes_free_product":false,"hide_from_checkout_enabled":false,"hide_from_site_enabled":false}}},"referral_settings":{"referrals_landing_path":"","referrals_landing_domain":""},"referral_social_settings":{"sms":true,"email":true,"twitter":false,"facebook":false,"whatsapp":true,"share_order":["sms","email","link","twitter","facebook","whatsapp"],"sms_message":"","twitter_message":"","whatsapp_message":""},"referrals_customer_account_required":false,"friend_discounts_disabled":false,"vip_tiers":[{"id":368842,"name":"Crystal","threshold":0,"perks":[],"icon_url":null,"desc":"\u003cspan\u003eSpend $0.00 \u003c\/span\u003e","translations":[],"rewards":[],"threshold_text":"Free to Join"},{"id":368843,"name":"Silver","threshold":125,"perks":[],"icon_url":null,"desc":"\u003cspan\u003eSpend $125.00 \u003c\/span\u003e","translations":[],"rewards":[],"threshold_text":"Spend $125"},{"id":368844,"name":"Gold","threshold":250,"perks":[],"icon_url":null,"desc":"\u003cspan\u003eSpend $250.00 \u003c\/span\u003e","translations":[],"rewards":[{"id":479063,"name":"LTYGOLDBEAD","enabled":true,"points_amount":0,"points_type":"fixed","reward_type":"percentage","source":"vip_tier","pretty_display_rewards":"LTYGOLDBEAD (0 points required)","icon_url":null,"pretty_points_amount":"0","purchase_type":"one_time","recurring_cycle_limit":null,"min_order_quantity":null,"translations":[],"reward_value":10.0,"min_order_value_in_cents":null,"terms_of_service":{"reward_type":"percentage","applies_to":"entire","show_tos":false},"pretty_terms_of_service":"","vip_tier":{"id":368844,"shop_id":12599863,"name":"Gold","threshold":250,"perks":[],"created_at":"2025-05-08T18:57:28.838Z","updated_at":"2025-10-10T15:29:55.592Z","deleted_at":null,"properties":{"entry_rules":[],"entry_product_ids":[],"translations":[]},"entry_rules":[],"entry_rules_operator":null,"entry_product_count":null,"entry_product_ids":[],"translations":[]}}],"threshold_text":"Spend $250"}],"account_embed_widget_settings":{"enabled":false,"target_page":"customers\/account","custom_insert_method":"beforeend"},"loyalty_landing_page_settings":{"enabled":false,"theme_id":"","template_suffix":"rivo-loyalty-landing-page","vip_tiers_table_data":[{"perk":"Points per $1 Spent","tiers":[{"id":"368842","value":"1x"},{"id":"368843","value":"1.25x"},{"id":"368844","value":"1.5x"}]},{"perk":"Birthday Gift","tiers":[{"id":"368842","value":"150 Points"},{"id":"368843","value":"150 Points"},{"id":"368844","value":"150 Points"}]},{"perk":"Member only drops + promos","tiers":[{"id":"368842","value":"\u
99810026nbsp;â¹"},{"id":"368843","value":"\u0026nbsp;â¹"},{"id":"368844","value":"\u0026nbsp;â¹"}]},{"perk":"Free Points","tiers":[{"id":"368842","value":""},{"id":"368843","value":"Bi-Annual"},{"id":"368844","value":"Quarterly"}]},{"perk":"Early Access","tiers":[{"id":"368842","value":""},{"id":"368843","value":"\u0026nbsp;â¹"},{"id":"368844","value":"\u0026nbsp;â¹"}]},{"perk":"Upgrade Tier Bonus","tiers":[{"id":"368842","value":""},{"id":"368843","value":"50 Points"},{"id":"368844","value":"50 Points"}]},{"perk":"10% off the Bead Bar","tiers":[{"id":"368842","value":""},{"id":"368843","value":""},{"id":"368844","value":"\u0026nbsp;â¹"}]}],"primary_button_class_names":"button","secondary_button_class_names":"button","theme_extension_files_added_at":"2025-05-26T14:56:53.886Z","theme_extension_files_verified_at":"2025-05-26T14:56:53.886Z","product_add_to_card_button_redirect_url":""},"membership_landing_page_settings":{"enabled":false,"theme_id":"","template_suffix":"rivo-membership-landing-page","primary_button_class_names":"button","secondary_button_class_names":"button","theme_extension_files_added_at":"2025-08-12T19:08:08.889Z","theme_extension_files_verified_at":"2025-08-12T19:08:08.889Z"},"account_dashboard_settings":{},"forms":[],"points_expiry_enabled":true,"credits_expiry_enabled":false,"points_per_points_log_expiry_enabled":false,"credits_per_points_log_expiry_enabled":false,"frontend":{"potential_points":{"order_placed":{"enabled":true,"points_type":"multiplier","points_amount":1,"currency_base_amount":1,"multi_balance_settings_by_tiers":{"Crystal":{"balance_amount":1,"currency_base_amount":1,"vip_tier_multiplier_amount":null},"Silver":{"balance_amount":1,"currency_base_amount":1,"vip_tier_multiplier_amount":1.25},"Gold":{"balance_amount":1,"currency_base_amount":1,"vip_tier_multiplier_amount":1.5}}}}},"referral_campaigns":[{"id":59863,"name":"Give $15 Get 150 Points","display_type":"inline","status":"active","page_settings":{"friend_claim_title":"You've got $15 off waiting","friend_reward_title":"Yay, your $15 off is here!","invalid_button_text":"Shop Now","advocate_share_title":"$15 for Them.","advocate_reward_title":"Use your discount","advocate_signup_title":"$15 for Them.","friend_reward_copy_text":"Copy","advocate_share_link_mode":"exposed","friend_claim_button_text":"Claim Discount","friend_claim_description":"Enter your email to claim $15 off your first order of $40+.","advocate_email_stats_text":"My Stats","advocate_reward_copy_text":"Copy","advocate_share_link_title":"Share your link","friend_claim_expired_text":"Sorry, this referral link has expired. Come back later!","friend_reward_description":"Use this code on your first order of $40+.","advocate_email_stats_title":"Send my Stats","advocate_share_description":"Gift them $15 off their first order of $40+. When they use it, you'll score 150 points!","advocate_share_email_title":"Share via Email","advocate_reward_description":"Here's your {{discount_amount}} reward. Use this discount code on your next order.","advocate_share_expired_text":"Sorry, this referral link has expired. Come back later!","advocate_share_header_title":"Refer a friend","advocate_signup_button_text":"Invite Friends","advocate_signup_description":"Gift them $15 off their first order of $40+. When they use it, you'll score 150 points!","advocate_email_stats_enabled":true,"advocate_share_email_subject":"Your friend has sent you a gift","advocate_signup_expired_text":"Sorry, this referral link has expired. Come back later!","friend_claim_disclaimer_text":"This offer is only valid for new customers with an order of $40 or more before discounts.","friend_reward_disclaimer_text":"Offer only valid for new customers. Your order must total at least $40 before discounts are applied. This code cannot be combined with other discount codes, and some products are excluded. Look for a note on the product page to see if an item is eligible.","advocate_share_appended_params":"","advocate_share_disclaimer_text":"This offer is only valid for new customers with an order of $40 or more before discounts. You'll get your points once their order ships.","friend_claim_email_placeholder":"Your email","advocate_reward_disclaimer_text":"","advocate_share_copy_button_text":"Copy Link","advocate_share_email_note_label":"Additional Note:","advocate_share_link_description":"You can share this link anywhere with a friend.","advocate_signup_disclaimer_text":"This offer is only valid for new customers with an order of $40 or more before discounts. You'll get your points once their order ships.","friend_reward_apply_button_text":"Apply code","advocate_email_stats_button_text":"Send Email","advocate_email_stats_description":"Your stats will be sent to {{email}}","advocate_share_email_button_text":"Send Email","friend_claim_cta_version_enabled":false,"friend_reward_auto_apply_enabled":true,"friend_reward_post_discount_path":"","advocate_reward_apply_button_text":"Apply code","advocate_signup_email_placeholder":"Your email","advocate_reward_auto_apply_enabled":false,"advocate_reward_post_discount_path":"","advocate_share_email_subject_label":"Subject:","advocate_share_personal_link_label":"Here is your personal link:","friend_reward_coupon_field_enabled":true,"advocate_share_email_reminder_label":"Send reminder after 3 days","advocate_reward_coupon_field_enabled":true,"advocate_share_email_sent_from_label":"To:","friend_claim_additional_close_params":[],"advocate_share_email_note_placeholder":"Add something else for your friends here. We'll prepopulate the rest!","advocate_signup_first_name_placeholder":"Your first name","advocate_signup_requires_login_enabled":false,"friend_claim_terms_and_conditions_path":"","friend_claim_terms_and_conditions_text":"Terms \u0026 Conditions","friend_reward_terms_and_conditions_path":"","friend_reward_terms_and_conditions_text":"Terms \u0026 Conditions","advocate_share_email_subject_placeholder":"Here's a gift","advocate_share_terms_and_conditions_path":"","advocate_share_terms_and_conditions_text":"Terms \u0026 Conditions","advocate_signup_first_name_field_enabled":true,"advocate_reward_terms_and_conditions_path":"","advocate_reward_terms_and_conditions_text":"Terms \u0026 Conditions","advocate_signup_terms_and_conditions_path":"","advocate_signup_terms_and_conditions_text":"Terms \u0026 Conditions","friend_claim_terms_and_conditions_enabled":false,"advocate_signup_requires_login_button_text":"Sign In or Sign Up","friend_reward_terms_and_conditions_enabled":false,"advocate_email_stats_logged_out_description":"Please enter the email you used to signup","advocate_share_email_recipients_placeholder":"Comma separated list of email addresses","advocate_share_terms_and_conditions_enabled":false,"advocate_reward_terms_and_conditions_enabled":false,"advocate_signup_terms_and_conditions_enabled":false,"friend_claim_accepts_marketing_checkbox_text":"Subscribe to email marketing","advocate_signup_accepts_marketing_checkbox_text":"Get friendly emails from the Little Words Project.","friend_claim_accepts_marketing_checkbox_enabled":true,"advocate_signup_accepts_marketing_checkbox_enabled":true,"advocate_signup_accepts_marketing_checkbox_default_checked":true,"friend_claim_first_name_field_enabled":false,"friend_claim_first_name_placeholder":"Your first name"},"design_settings":{"share_mode":"blocks","primary_color":"#000000","background_type":"column","secondary_color":"#CCCCCC","title_font_size":42,"button_font_size":14,"footer_font_size":12,"header_font_size":18,"title_font_color":"#0d0c22","title_text_align":"center","button_font_color":"#0d0c22","footer_font_color":"#cccccc","footer_text_align":"center","header_font_color":"#0d0c22","header_text_align":"center","subtitle_font_size":18,"background_position":"right","button_border_color":"#da9ec4","primary_font_family":"inherit","subtitle_font_color":"#0d0c22","subtitle_text_align":"center","mobile_inline_height":950,"desktop_inline_height":750,"secondary_font_family":"inherit","button_background_color":"#da9ec4","header_background_color":"#efefef","advocate_share_email_note_enabled":true,"advocate_share_email_subject_enabled":true,"advocate_share_email_reminder_enabled":true},"advocate_rules":[],"friend_rules":[],"advocate_reward":{"name":"150 Points"},"friend_reward":{"id":712110,"name":"$5 off coupon","enabled":true,"points_amount":0,"points_type":"fixed","reward_type":"fixed_amount","source":"referred","pretty_display_rewards":"$5 off coupon (0 points required)","icon_url":null,"pretty_points_amount":"0","purchase_type":"one_time","recurring_cycle_limit":null,"min_order_quantity":null,"translations":[],"reward_value":15.0,"min_order_value_in_cents":40,"terms_of_service":{"reward_type":"fixed_amount","min_order_amount":0.4,"applies_to":"entire","show_tos":true},"pretty_terms_of_service":"Applies to all orders over $0.40. "},"expires_at":null,"background_image_url":"https:\/\/loyalty.rivo.io\/assets\/90cuebgglhgvgww9heyw6azvb66u","custom_css":"@font-face {\n font-family: 'Larsseit';\n src: url('https:\/\/cdn.shopify.com\/s\/files\/1\/1259\/9863\/files\/Larsseit.woff2?v=1705962788') format('woff2');\n font-weight: 400;\n font-style: normal;\n \n}\n\n@font-face {\n font-family: 'Larsseit';\n src: url('https:\/\/cdn.shopify.com\/s\/files\/1\/1259\/9863\/files\/Larsseit-Medium.woff2?v=1708978559') format('woff2');\n font-weight: 500;\n font-style: normal;\n \n}\n\n\n@font-face {\n font-family: 'Canela';\n src: url('https:\/\/cdn.shopify.com\/s\/files\/1\/1259\/9863\/files\/Canela-Thin_0714c7a0-2318-4ca6-82f1-a8bfe7b297e0.woff2?v=1708978559') format('woff2');\n font-weight: 250;\n font-style: normal;\n}\n\n#baLoySectionWrapper,\n#baLoySectionWrapper p,\n#baLoySectionWrapper .icon-and-text-row,\n#baLoySectionWrapper button,\n#baLoySectionWrapper label,\n#baLoySectionWrapper .header-secondary,\n#baLoySectionWrapper .loy-button,\n#baLoySectionWrapper .loy-button-secondary,\n#baLoySectionWrapper .loy-button-link-main,\n#baLoySectionWrapper .ba-tooltip,\n#baLoySectionWrapper .sign-in-text,\n#baLoySectionWrapper .less-color.text-nowrap,\n#baLoySectionWrapper .content-subtitle,\n#baLoySectionWrapper .panel-desc,\n#baLoySectionWrapper .section-table-piece-detail-items,\n#baLoySectionWrapper .dob-fields,\n#baLoySectionWrapper .account-login,\n#baLoySectionWrapper .txt-info,\n#baLoySectionWrapper .txt-warning,\n#baLoySectionWrapper .section-top-bar,\n#baLoySectionWrapper .txt-field,\n#baLoySectionWrapper .section-footer,\n#baLoySectionWrapper input,\n#baLoySectionWrapper .content .header,\n#baLoySectionWrapper .content {\n font-weight: 400;\n font-family: \"Larsseit\", sans-serif !important;\n}\n\n#baLoySectionWrapper .content {\n align-self: center;\n width: 100%;\n}\n\n#baLoySectionWrapper .content-title,\n#baLoySectionWrapper h1 {\n color: #0d0c22;\n text-transform: capitalize;\n font-weight: 250;\n line-height: 1.2;\n font-family: 'Canela', serif !important;\n}\n\n#baLoySectionWrapper .referral-body {\n background: #f7f6ef;\n}\n\n#baLoySectionWrapper .content-wrapper {\n padding: 30px;\n max-width: 500px;\n margin: 0 auto;\n}\n\n#baLoySectionWrapper #advocate-signup-page .content-title,\n#baLoySectionWrapper #advocate-share-page .content-title {\n margin-top: 0;\n display: grid;\n}\n\n#baLoySectionWrapper #advocate-signup-page .content-title:after,\n#baLoySectionWrapper #advocate-share-page .content-title:after {\n
9981content: \"150 Points for You.\";\n font-size: 56px;\n}\n\n#baLoySectionWrapper #advocate-signup-page .content-wrapper,\n#baLoySectionWrapper #advocate-share-page .content-wrapper {\n padding-top: 20px;\n}\n\n#baLoySectionWrapper .content .header {\n margin: 0 auto;\n font-size: 16px !important;\n text-transform: uppercase;\n padding-bottom: 0;\n background: transparent;\n font-weight: 400;\n}\n\n#baLoySectionWrapper .button,\n#baLoySectionWrapper .copy-coupon.dflex button.button {\n min-height: 40px;\n border-radius: 100px;\n text-transform: uppercase;\n letter-spacing: 1.5px;\n padding-left: 10px;\n padding-right: 10px;\n font-weight: 500;\n transition: background-size .30s cubic-bezier(.785,.135,.15,.86), background-position .45s step-end, color .45s cubic-bezier(.785,.135,.15,.86), border .45s cubic-bezier(.785,.135,.15,.86);\n}\n\n#baLoySectionWrapper .button:hover,\n#baLoySectionWrapper .button:focus,\n#baLoySectionWrapper .button:active,\n#baLoySectionWrapper .copy-coupon.dflex button.button:hover,\n#baLoySectionWrapper .copy-coupon.dflex button.button:focus,\n#baLoySectionWrapper .copy-coupon.dflex button.button:active {\n opacity: 1;\n background: #FFF;\n color: #da9ec4;\n}\n\n#baLoySectionWrapper .icon-and-text-row svg {\n fill: #0d0c22;\n}\n\n#baLoySectionWrapper .icon-and-text-row:hover svg {\n fill: #da9ec4;\n}\n\nsvg.path-stroke path {\n stroke: #0d0c22;\n}\n\n#baLoySectionWrapper .icon-and-text-row:hover svg.path-stroke path {\n stroke: #da9ec4;\n}\n\n#baLoySectionWrapper .section-footer,\n#baLoySectionWrapper label {\n color: #0d0c22 !important;\n}\n\n#baLoySectionWrapper input.txt-field {\n border: 1px solid #da9ec4;\n border-radius: none;\n background: #fff;\n transition: all 0.2s ease-in;\n}\n\n#baLoySectionWrapper input.txt-field::placeholder {\n color: #0d0c22 !important;\n}\n\n#baLoySectionWrapper input,\n#baLoySectionWrapper textarea {\n border: 1px solid #da9ec4 !important;\n border-radius: 5px !important;\n}\n\n#baLoySectionWrapper input.txt-field:active,\n#baLoySectionWrapper input.txt-field:hover {\n border: 1px solid #c4d8fb !important;\n box-shadow: 0 0 0 0.5px #c4d8fb inset;\n}\n\n#baLoySectionWrapper input.referral-link {\n font-size: 14px !important;\n font-weight: 400;\n}\n\n#baLoySectionWrapper .popup-page.active {\n background: #C4D9FB !important;\n border: 3px solid #0d0c22;\n opacity: 0.98;\n}\n\n#baLoySectionWrapper .popup-page input.txt-field {\n background: #fff;\n}\n\n#baLoySectionWrapper .email-share-success-icon svg circle {\n fill: #000;\n}\n\n#baLoySectionWrapper .popup-page .form-label {\n display: flex;\n align-items: center;\n gap: 5px;\n}\n\n#baLoySectionWrapper .popup-page input[type=\"checkbox\"] {\n margin-top: 0;\n}\n\n#baLoySectionWrapper .popup-page.active .form-label {\n margin-bottom: 15px;\n margin-top: 0;\n display: flex;\n gap: 5px;\n align-items: center;\n}\n\n#baLoySectionWrapper input[type=\"checkbox\"] {\n margin-bottom: 0;\n}\n\n#baLoySectionWrapper .copy-coupon.dflex {\n gap: 5px;\n}\n\n#baLoySectionWrapper .content-title {\n margin-top: 0;\n}\n\n@media (max-width: 680px) {\n #baLoySectionWrapper .mobile-image {\n background-position: bottom;\n }\n\n #baLoySectionWrapper .content-title {\n font-size: 24px;\n }\n\n #baLoySectionWrapper .content-subtitle {\n font-size: 16px;\n }\n\n #baLoySectionWrapper #advocate-signup-page .content-title:after,\n #baLoySectionWrapper #advocate-share-page .content-title:after {\n content: \"150 Points for You.\";\n font-size: 32px;\n }\n\n #baLoySectionWrapper #advocate-reward-page .content-title,\n #baLoySectionWrapper #friend-claim-page .content-title,\n #baLoySectionWrapper #friend-reward-page .content-title {\n font-size: 24px;\n margin-top: 15px;\n }\n\n #baLoySectionWrapper .referral-body {\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n padding: 0;\n }\n\n #baLoySectionWrapper .content .header {\n text-decoration: none !important;\n margin-bottom: 0 !important;\n }\n\n #baLoySectionWrapper .content-wrapper {\n padding: 20px;\n }\n}","share_via_email_default_subject":"Your friend gifted you $15 off at Little Words Project.","landing_path":null,"advocate_overlay_enabled":false,"post_order_advocate_overlay_enabled":false,"post_order_advocate_overlay_delay":0,"post_order_advocate_overlay_frequency":0,"streamlined_enabled":false,"locale_translations":{}}],"paid_membership_settings":{"landing_path":"\/","legacy_product_ids":[],"cancellation_policy":"end_of_period","final_reminder_days":3,"rebill_reminder_days":5,"migration_mode_enabled":false,"rebill_attempt_interval":"hourly","daily_rebill_attempt_timezone":"America\/Los_Angeles","daily_rebill_attempt_utc_hour":16,"landing_path_redirect_enabled":true,"default_enrollment_tier_method":"customer_creation","failed_payments_retry_schedule":[{"days_after_last_retry":1},{"days_after_last_retry":2},{"days_after_last_retry":3},{"days_after_last_retry":5},{"days_after_last_retry":5},{"days_after_last_retry":5},{"days_after_last_retry":5}],"daily_failed_payments_attempt_utc_hour":23,"selling_plan_after_add_to_cart_js_method":"redirect_to_cart","membership_gift_order_count_starts_at_enrollment":false},"checkout_ui_settings":{"global_show_login_url":"\/customer_authentication\/login?return_to=\/checkout","global_show_login_enabled":false,"redeem_points_max_rewards":10,"redeem_store_credit_button_kind":"primary","global_show_login_header_enabled":false,"shopify_markets_metaobject_enabled":false,"post_purchase_referral_hero_image_url":"","post_purchase_referral_preview_emails":"","redeem_points_use_custom_select_label":false,"redeem_points_expanded_version_enabled":false,"redeem_points_only_show_from_countries":[],"redeem_points_show_all_rewards_enabled":false,"redeem_points_select_apply_button_enabled":false,"redeemed_rewards_only_show_from_countries":[],"post_purchase_account_activation_image_url":"","post_purchase_referral_hide_from_countries":[],"redeem_points_default_select_label_enabled":true,"hide_all_checkout_extensions_from_countries":[],"post_purchase_install_wallet_pass_image_url":"","post_purchase_referral_preview_mode_enabled":false,"only_show_checkout_extensions_from_countries":[],"post_purchase_referral_share_buttons_enabled":false,"redeem_points_disable_reward_options_enabled":false,"redeem_store_credit_only_show_from_countries":[],"redeem_points_hide_redeem_when_discount_exists":true,"redeem_points_not_enough_points_banner_enabled":false,"post_purchase_referral_only_show_from_countries":[],"redeem_incremental_earnings_balance_to_currency":false,"redeem_points_expanded_show_custom_icons_enabled":true,"redeemed_rewards_hide_selections_when_no_options":true,"clear_discount_codes_with_prefix_on_consolidation":"","post_purchase_account_activation_button_full_width":true,"cashback_estimation_balance_usd_to_currency_enabled":false,"redeem_points_hide_redeem_when_free_product_applied":false,"redeem_incremental_earnings_only_show_from_countries":[],"redeem_points_hide_selections_unless_discount_exists":true,"post_purchase_account_activation_preview_mode_enabled":false,"post_purchase_referral_always_show_to_advocate_enabled":false,"redeemed_rewards_hide_selections_when_discount_applied":true,"post_purchase_account_activation_membership_mode_enabled":false,"redeem_incremental_earnings_balance_applied_mode_enabled":false,"redeem_incremental_earnings_input_amount_stepper_enabled":false,"post_purchase_account_activation_only_show_from_countries":[],"post_purchase_install_wallet_pass_only_show_from_countries":[],"redeem_incremental_earnings_balance_usd_to_currency_enabled":false,"redeem_incremental_earnings_hide_redeem_when_discount_exists":false,"redeem_incremental_earnings_hide_redeem_when_insufficient_balance":false,"redeem_incremental_earnings_hide_redeem_unless_minimum_order_value_is_met":false},"discount_code_prefix_settings":{"global_prefix":"LTY-","loyalty_prefix":"","vip_tier_prefix":"","loyalty_gift_prefix":"LGIFT-","referral_friend_prefix":"LTY-FRIEND-","referral_advocate_prefix":"LTY-ADVOCATE-"},"membership_tiers":[{"id":1829,"name":"The Little Circle Membership","icon_url":null,"price":250.0,"billing_interval":"annually","enabled":true,"product_id":7852980764753,"variant_id":42875369848913,"selling_plan_id":1526693969,"gwp_reward_enabled":false,"gwp_product_id":null,"gwp_variant_id":null,"gwp_variant_ids":[],"gwp_gifts":[],"static_discounts":[{"id":545093,"identifier":"membership_shipping_discount","code":"LITTLECIRCLE","description":"Free shipping","is_auto_applied":false}],"benefits":[{"identifier":"membership_priority_support","title":"Free Shipping on Every Order","description":"Enjoy unlimited free shipping with every purchaseâno minimums, no exceptions","position":1,"show_on_landing_page":true,"benefitable_id":null,"benefitable_type":null,"icon_url":"https:\/\/loyalty.rivo.io\/assets\/vqxj12pz2o00u70asyavmabxygd2"},{"identifier":"membership_early_access","title":"10% Back in Store Credit on Every Purchase","description":"Earn rewards as you shopâget 10% back to spend on your next order.","position":2,"show_on_landing_page":true,"benefitable_id":null,"benefitable_type":null,"icon_url":"https:\/\/loyalty.rivo.io\/assets\/yjhnq1jo9gvrvgmfabiyvbqdbet1"},{"identifier":"membership_gated_content","title":"Exclusive Welcome Gift ($70+ Value)","description":"Receive a premium welcome gift, valued at over $70, just for joining.","position":3,"show_on_landing_page":true,"benefitable_id":null,"benefitable_type":null,"icon_url":"https:\/\/loyalty.rivo.io\/assets\/hspfzyzhnhvsxxtavrsmj3i1ze67"},{"identifier":"membership_shipping_discount","title":"Members-Only Sales \u0026 Secret Collections","description":"Access exclusive sales and limited-edition collections reserved for members.","position":4,"
9981show_on_landing_page":true,"benefitable_id":545093,"benefitable_type":"Reward","icon_url":"https:\/\/loyalty.rivo.io\/assets\/9yl8nq0vkllen4evgqe0jf82tj6y"},{"identifier":"membership_signup_discount","title":"Invites to Digital \u0026 IRL Private Events","description":"Join us for special online and in-person events you wonât find anywhere else.","position":5,"show_on_landing_page":true,"benefitable_id":545094,"benefitable_type":"Reward","icon_url":"https:\/\/loyalty.rivo.io\/assets\/i64rzvn5ennd61b972ichkdoa58u"},{"identifier":"membership_tier_unlocked","title":"Co-Create New Products with Us","description":"Help shape our futureâshare your ideas and be part of product development.","position":6,"show_on_landing_page":true,"benefitable_id":476895,"benefitable_type":"EarningRule","icon_url":"https:\/\/loyalty.rivo.io\/assets\/ivv24dg60dhh89i4czfwrvnb01yb"},{"identifier":"membership_recurring_signup","title":"Access to Our Group on Instagram","description":"Get behind-the-scenes content and insider updatesâadded weekly for members.","position":7,"show_on_landing_page":true,"benefitable_id":476896,"benefitable_type":"EarningRule","icon_url":"https:\/\/loyalty.rivo.io\/assets\/q0h18ieolz1ywt7fwlftoo4lmdgl"}],"ways_to_earn":[{"id":476895,"title":null,"status":"inactive","name":null,"trigger":"membership_tier_unlocked","points_amount":0,"credits_amount":0.0,"balance_amount":0,"description":null,"url":null,"button_text":null,"pretty_earnings_text":"0 Points","card_click_method":null,"hidden_from_ui":false,"creation_source":null,"translations":[]},{"id":476896,"title":null,"status":"inactive","name":null,"trigger":"membership_recurring_signup","points_amount":0,"credits_amount":0.0,"balance_amount":0,"description":null,"url":null,"button_text":null,"pretty_earnings_text":"0 Points","card_click_method":null,"hidden_from_ui":false,"creation_source":null,"translations":[]},{"id":476897,"title":null,"status":"inactive","name":null,"trigger":"membership_recurring_anniversary","points_amount":0,"credits_amount":0.0,"balance_amount":0,"description":null,"url":null,"button_text":null,"pretty_earnings_text":"0 Points","card_click_method":null,"hidden_from_ui":false,"creation_source":null,"translations":[]},{"id":476898,"title":"Credits earned from placing an order","status":"active","name":null,"trigger":"membership_order_placed","points_amount":0,"credits_amount":0.1,"balance_amount":0.1,"description":null,"url":null,"button_text":null,"pretty_earnings_text":"$0.10 Credits","card_click_method":null,"hidden_from_ui":false,"creation_source":null,"translations":[],"multi_balance_settings_by_tiers":{},"multipliers":[],"currency_base_amount":1,"points_type":"multiplier"}]}],"credit_mode":false,"active_bonus_campaign":null,"active_bonus_campaigns":[],"js_api_config":{"emit_points_balances_on_load":false},"auto_login":{"enabled":true,"email_provider":"kl","email_identifier":"utm_klaviyo_id","auto_login_reload_enabled":false,"auto_login_bypass_only_mode_enabled":false},"account_widget_settings":{"logo":"\u003cspan class=\"sr-only\"\u003eLittle Words Project\u003c\/span\n\u003e\u003cimg\n src=\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/header-logo-v2_1_6a68ec1a-86e3-47f5-96e9-6ef4caef6865.png?v=1743607931\u0026amp;width=250\"\n alt=\"\"\n srcset=\"\/\/www.littlewordsproject.com\/cdn\/shop\/files\/header-logo-v2_1_6a68ec1a-86e3-47f5-96e9-6ef4caef6865.png?v=1743607931\u0026amp;width=190 190w, \/\/www.littlewordsproject.com\/cdn\/shop\/files\/header-logo-v2_1_6a68ec1a-86e3-47f5-96e9-6ef4caef6865.png?v=1743607931\u0026amp;width=250 250w\"\n width=\"250\"\n height=\"177\"\n sizes=\"95px\"\n class=\"header__logo-image\"\n\u003e","enabled":true,"or_text":"OR","city_text":"City","edit_text":"Edit","name_text":"Name","custom_css":":root {\n --rivo-color-lavender: #e8dcfa;\n --rivo-color-lemon: #fefcd4;\n --rivo-color-blue: #c4d8fb;\n --rivo-color-blush: #fde4e1;\n --rivo-color-pink: #da9ec4;\n --rivo-border-radius: 20px;\n --rivo-color-text: #0d0c22;\n --rivo-color-highlight: #2d2bd7;\n}\n\n\/* --- Header --- *\/\n.rivo-slideout__header {\n box-shadow: none;\n height: 80px;\n border-bottom: 1px solid var(--rivo-color-lavender);\n}\n\n.rivo-slideout__header a span {\n width: auto;\n max-width: 150px;\n}\n\n.rivo-slideout__header a.rivo-aw-logo img {\n max-height: 50px;\n}\n\n.rivo-slideout__header a {\n width: auto;\n display: flex;\n align-self: center;\n}\n\n.rivo-aw-title,\nh3.rivo-aw-smaller-title {\n line-height: 1.2;\n font-weight: 500;\n font-family: Canela, \"Helvetica Neue\", Arial, \"Lucida Grande\", sans-serif;\n}\n\n.rivo-aw-home-hero h2 {\n font-size: 24px;\n font-weight: 400;\n}\n\n.rivo-checkbox-label {\n font-weight: 400 !important;\n}\n\n.rivo-slideout__container p,\n.rivo-aw-home-featured-content-subtitle {\n font-weight: 300;\n}\n\n\/* --- INPUT --- *\/\n\n.rivo-slideout__container input[type=\"text\"],\n.rivo-slideout__container input[type=\"email\"],\n.rivo-slideout__container input[type=\"tel\"],\n.rivo-slideout__container input[type=\"password\"],\n.rivo-slideout__container select {\n border-radius: 5px;\n}\n\n.rivo-form-field label,\n.rivo-preference-item-label,\n.rivo-profile-list-item-title,\n.rivo-aw-smaller-title {\n font-weight: 400;\n}\n\n\/* --- BUTTONS --- *\/\n\n.rivo-aw-button-points-balance-number,\nspan.rivo-aw-button-points-balance-currency {\n font-size: 16px;\n text-transform: uppercase;\n}\n\n.rivo-aw-button-component-cta-text {\n text-transform: uppercase;\n}\n\n.rivo-aw-button-points-balance-number {\n margin-right: 5px;\n}\n\n.rivo-aw-home-button-components a {\n padding: 0.85rem 2.75rem 0.8rem 2.75rem;\n}\n\n.rivo-aw-button-points.button {\n padding-left: 1.5rem;\n padding-right: 1.5rem;\n}\n\n.rivo-aw-button-component-cta svg path {\n transition: all .2s ease;\n}\n\n.rivo-aw-button-points:hover svg path {\n fill: var(--rivo-color-highlight) !important;\n}\n\n.rivo-aw-button-component-cta svg {\n margin-top: -2px;\n}\n\n.rivo-aw-button-points-balance-container {\n padding: 0;\n}\n\n.rivo-slideout__container .rivo-button--secondary {\n background: transparent;\n border-color: #2d2bd7;\n color: #2d2bd7;\n}\n\n.rivo-checkbox-container input[type=\"checkbox\"] {\n -webkit-appearance: auto;\n}\n\n.rivo-login-component input[type=\"text\"]:focus-visible,\n.rivo-login-component input[type=\"email\"]:focus-visible {\n border-color: var(--rivo-aw-primary-color, #303030);\n}\n\n.rivo-shop-pay-svg path {\n fill: var(--rivo-color-highlight) !important;\n}\n\na.rivo-collection-item {\n transition: all 0.2s ease;\n font-weight: 400;\n}\n\na.rivo-collection-item:hover {\n background: var(--rivo-color-lavender);\n border-color: var(--rivo-color-lavender);\n color: var(--rivo-color-text);\n}\n\n\/* --- Empty container --- *\/\n.rivo-empty-state-container {\n border: 1px solid var(--rivo-color-pink);\n border-radius: 5px;\n padding: 30px;\n text-align: center;\n width: 100%;\n color: rgba(0, 0, 0, 0.7) !important;\n margin-top: 10px;\n margin-bottom: 0;\n}\n\n.rivo-sms-terms-and-conditions {\n color: rgba(0, 0, 0, 0.7);\n line-height: 15px;\n font-size: 14px !important;\n}\n\n.rivo-aw-order-item-quantity {\n padding-top: 2px;\n}\n\nlabel.rivo-checkbox-container {\n align-items: baseline;\n}\n\n.rivo-mini-block-link .rivo-favorite-button,\n.rivo-product-action-image .rivo-favorite-button {\n background: transparent;\n}\n\n\/* --- Image Blocks --- *\/\n\n.rivo-mini-block-title,\n.rivo-product-action-title {\n font-family: Canela, \"Helvetica Neue\", Arial, \"Lucida Grande\", sans-serif;\n text-transform: capitalize;\n line-height: 1.2;\n max-height: 45px;\n}\n\n.rivo-product-action-body .rivo-product-action-price,\n.rivo-product-action-title {\n font-weight: 400;\n}\n\n.rivo-mini-block-title,\n.rivo-mini-block-price {\n display: flex !important;\n}\n\n.rivo-mini-block-subtitle {\n margin-top: 5px;\n}\n\n.rivo-product-price {\n font-weight: 400;\n}
9981\n\n.rivo-compare-price .rivo-product-price {\n color: var(--rivo-color-highlight);\n}\n\n.rivo-aw-go-to-page {\n background: transparent;\n}\n\n.rivo-product-image {\n aspect-ratio: auto;\n border-radius: 4px;\n}\n\n.rivo-profile-list {\n margin-top: 15px;\n order: 1;\n}\n\n\/* --- Order code --- *\/\n\n.rivo-aw-order-total-row.total-price {\n font-weight: 500;\n} \n\n.rivo-aw-order-index-name,\n.rivo-order-details-page .rivo-aw-heading.with-backlink .rivo-aw-title {\n font-weight: 500;\n font-family: Larsseit, \"Helvetica Neue\", Arial, \"Lucida Grande\", sans-serif;\n}\n\n.rivo-h4-title {\n font-weight: 400;\n}\n\n\/* --- Featured Content --- *\/\n\nh2.rivo-aw-home-featured-content-title {\n margin: 5px 0 !important;\n font-size: 24px;\n}\n\n.rivo-aw-home-featured-content-image-wrapper,\n.rivo-aw-home-featured-content-image-wrapper img {\n border-radius: 10px !important;\n}\n\n.rivo-favorite-button span svg {\n width: 17px;\n height: 17px;\n}\n\n\n\/* --- Footer --- *\/\n\n#rivo-slideout-footer {\n background: var(--rivo-color-blue);\n box-shadow: none;\n}\n\n.rivo-footer-nav-text {\n text-transform: uppercase;\n color: var(--rivo-color-text);\n font-weight: 300;\n}\n\n#rivo-slideout-footer .rivo-slideout-navigation .active .rivo-footer-nav-text {\n font-weight: 500;\n}\n\n.rivo-login-footer-link a {\n text-decoration: underline;\n}\n\n.rivo-or-text {\n font-size: 12px;\n}\n\n\/* --- Close button --- *\/\n.rivo-slideout__close,\n.rivo-aw-mini-modal__close {\n background: transparent;\n}\n\n@media screen and (max-width: 450px) {\n .rivo-slideout__header a.rivo-aw-logo {\n height: auto;\n }\n .rivo-aw-home-featured-content-subtitle {\n font-size: 16px;\n }\n}\n\n@media screen and (min-width: 769px) {\n .rivo-slideout__container {\n margin: 12px;\n height: calc(100% - 1.5rem) !important;\n border-radius: 20px;\n }\n}\n\n.rivo-aw-profile-manage-membership {\n display: none;\n}\n\n.rivo-slideout__overlay {\n background: #00000066;\n}","email_text":"Email","order_text":"Order","phone_text":"Phone","taxes_text":"Taxes","total_text":"Total","cards_shape":"rounded","delete_text":"Delete","select_text":"Select","address_text":"Address","company_text":"Company","country_text":"Country","inputs_shape":"rounded","buttons_shape":"rounded","discount_text":"Discount","primary_color":"#0d0c22","province_text":"Province","shipping_text":"Shipping","sold_out_text":"Sold out","subtotal_text":"Subtotal","zip_code_text":"ZIP Code","community_text":"Community","home_cta_1_url":"\/pages\/loyalty-program","home_cta_2_url":"","home_cta_3_url":"","last_name_text":"Last Name","launcher_shape":"circle","container_shape":"rounded","favorites_title":"Favorites","first_name_text":"First Name","home_cta_1_text":"View Rewards","home_cta_2_text":"Manage Subscriptions","home_cta_3_text":"","input_font_size":16,"show_powered_by":false,"add_to_cart_text":"Add to Cart","amount_paid_text":"Amount paid","footer_font_size":14,"footer_home_text":"For You","google_client_id":"105612801293-jl45mtn6o4i8sp8ino3575joje4tputh.apps.googleusercontent.com","net_payment_text":"Net payment","orders_page_size":10,"saved_cart_title":"Saved from Cart","toast_font_color":"#ffffff","are_you_sure_text":"Are you sure you want to?","cache_app_enabled":false,"collections_title":"Collections","community_enabled":false,"contact_info_text":"Contact info","currency_decimals":2,"default_font_size":16,"desktop_placement":"left","email_placeholder":"Email","favorites_enabled":false,"google_login_text":"Sign in with Google","home_referral_url":"\/pages\/refer-a-friend","login_button_text":"Sign In","login_issues_link":"\/account\/login","login_issues_text":"Click here to sign in with your password if you are having issues","my_addresses_text":"My Addresses","onload_javascript":"","order_placed_text":"Placed on","verify_title_text":"Enter the code sent to [[email]]","all_favorites_text":"All Favorites","external_login_url":"https:\/\/www.littlewordsproject.com\/customer_authentication\/login?return_to=\/?show_rivo_account=true","footer_orders_text":"Orders","home_cta_1_enabled":false,"home_cta_2_enabled":false,"home_cta_3_enabled":false,"latest_order_title":"Latest Order","notifications_text":"Notifications","privacy_policy_url":"\/policies\/privacy-policy","profile_list_links":[],"reload_after_login":true,"saved_cart_enabled":false,"shop_login_enabled":false,"verify_button_text":"Verify Code","address_line_2_text":"Apartment, suite, etc.","apple_login_enabled":false,"delete_address_text":"Yes, Delete Address","external_login_text":"Sign in or Sign up","footer_profile_text":"Profile","home_referral_title":"Refer a Friend \u0026 Earn","locale_urls_enabled":false,"mobile_side_spacing":20,"my_preferences_text":"My Preferences","payment_method_text":"Payment Method","popular_today_title":"Popular Today","select_country_text":"Select Country","select_options_text":"Select Options","skip_edgemesh_cache":false,"slideout_icon_color":"#0d0c22","taxes_included_text":"Taxes (included)","update_profile_text":"Update Profile","view_favorites_text":"View Favorites","amount_refunded_text":"Amount refunded","billing_address_text":"Billing Address","desktop_side_spacing":20,"excluded_product_ids":[],"favorites_load_delay":0,"footer_icons_enabled":false,"google_login_enabled":true,"hide_rivo_login_form":true,"home_logged_in_title":"Welcome \u003cspan rivo-ax-text='$store.rivo_profile_customer?.first_name'\u003e\u003c\/span\u003e","legacy_gift_card_app":"","legacy_login_enabled":true,"order_cancelled_text":"Cancelled on","profile_log_out_text":"Log out","save_collection_text":"Save Collection","select_province_text":"Select Province","shipping_method_text":"Shipping Method","terms_of_service_url":"\/policies\/terms-of-service","address_default_badge":"Default","alternate_login_title":"Having issues signing in?","featured_content_link":"\/pages\/store-locations","featured_home_content":"","home_logged_out_title":"Sign in to your account","home_referral_enabled":true,"legacy_membership_app":"","mobile_bottom_spacing":20,"order_returns_enabled":true,"order_returns_partner":"loop_returns","popular_today_enabled":true,"recently_viewed_title":"Recently Viewed","redeem_rewards_filter":"all","replace_account_links":true,"shipping_address_text":"Shipping Address","slideout_border_color":"#da9ec4","vip_tier_progress_url":"\/pages\/rewards","add_to_collection_text":"Add to Collection","compare_at_price_color":"#c70000","custom_sub_cta_content":"","custom_sub_cta_enabled":false,"desktop_bottom_spacing":20,"external_login_enabled":true,"hide_sold_out_products":true,"home_referral_subtitle":"\u003cspan rivo-ax-text='$store.rivo_profile_customer?.referral_stats?.completed_count'\u003e\u003c\/span\u003e referrals completed so far","home_wallet_pass_title":"Add Wallet Pass","login_footer_font_size":12,"next_billing_date_text":"You will be charged next on \u003cspan rivo-ax-text='$store.membership_subscription_contract.pretty_next_billing_date_at'\u003e\u003c\/span\u003e","order_tracking_partner":"custom_link","orders_logged_in_title":"Your Orders","popular_products_count":20,"product_rating_enabled":false,"profile_pos_qr_enabled":false,"shop_pay_login_enabled":true,"slideout_subdued_color":"#f7f7f7","toast_background_color":"#0d0c22","added_to_cart_link_text":"Go to Cart","additional_details_text":"Additional Details","alternate_login_enabled":false,"custom_sms_consent_text":"","home_logged_in_subtitle":"You have \u003cspan class='rivo-pretty-points-balance' rivo-ax-text='$store.rivo_profile_customer?.pretty_points_tally'\u003e\u003c\/span\u003e points","home_referral_copy_text":"Referral link copied to clipboard","ignore_inventory_policy":false,"order_buy_again_enabled":true,"order_returns_subdomain":"littlewordsproject","orders_empty_state_text":"You haven't placed any orders yet","orders_logged_out_title":"Log in to view, track, and manage your orders","post_login_reload_paths":[],"post_sign_in_javascript":"","recently_viewed_enabled":true,"refresh_cart_javascript":"","section_title_font_size":18,"survey_next_button_text":"Next","survey_ski
9981p_button_text":"Skip","alternate_login_subtitle":"Use one of the following methods below to sign in.","custom_hide_product_tags":[],"desktop_sidebar_position":"left","home_logged_out_subtitle":"Get access to your rewards, referrals, and more","home_wallet_pass_enabled":false,"legacy_gift_card_enabled":false,"order_cancel_button_text":"Cancel Order","replace_legacy_app_links":true,"shipping_addresses_title":"Shipping Addresses","verify_login_issues_link":"\/#rivo","verify_login_issues_text":"Having issues? Click here to try again.","community_cover_image_url":"","home_button_gift_card_url":"","home_cta_1_primary_button":true,"home_cta_2_primary_button":false,"home_cta_3_primary_button":false,"home_wallet_pass_subtitle":"Unlock exclusive rewards and offers.","legacy_points_balance_app":"rivo","on_hash_change_javascript":"","order_returns_button_text":"Start a Return","order_returns_custom_link":"","slideout_background_color":"#f7f6ef","accepts_sms_marketing_text":"Text me with news and offers","add_shipping_address_title":"Add Shipping Address","added_to_cart_link_enabled":false,"alternate_login_email_text":"Sign in with an email and password","create_new_collection_text":"Create New Collection","favorites_empty_state_text":"No favorited products","featured_content_image_url":"https:\/\/cdn.shopify.com\/s\/files\/1\/1259\/9863\/files\/Short_Hills_2-2.png?v=1747771389","home_button_membership_url":"","logged_out_title_font_size":24,"membership_cover_image_url":"","mini_block_title_font_size":16,"order_tracking_button_text":"Track Shipment","order_tracking_custom_link":"https:\/\/www.littlewordsproject.com\/pages\/tracking-page","primary_button_class_names":"button","redirect_from_account_page":true,"save_shipping_address_text":"Save Shipping Address","vip_progress_block_enabled":true,"alternate_login_google_text":"Sign in with Google","buy_again_notification_text":"Order added to the cart","edit_shipping_address_title":"Edit Shipping Address","favorite_button_active_text":"Added to favorites","home_button_membership_text":"Credit","home_loyalty_button_enabled":true,"home_referral_page_subtitle":"Refer a friend who makes a purchase and both of you will claim rewards.","login_verify_identity_title":"Verify your identity","loyalty_opt_in_checkbox_tag":"rivo-loyalty-opt-in","order_buy_again_button_text":"Buy Again","order_cancel_button_enabled":false,"saved_cart_empty_state_text":"No saved cart items","set_as_default_address_text":"Set as default address","slideout_heading_font_color":"#0d0c22","account_verification_enabled":false,"collections_empty_state_text":"No collections","email_cannot_be_changed_text":"Email used for login cannot be updated","exposed_line_item_properties":[],"favorite_button_active_color":"#2d2bd7","home_additional_button_1_url":"\/pages\/account-connected-bracelets?skip_rivo_redirect=true","home_additional_button_2_url":"https:\/\/www.littlewordsproject.com\/tools\/recurring\/login","home_logged_out_orders_title":"Manage orders, track shipments, and easily start a return","login_accepts_marketing_text":"Email me with updates and offers","loyalty_opt_in_checkbox_text":"Email me just loyalty offers","order_returns_fulfilled_only":false,"order_track_shipment_enabled":true,"orders_additional_button_url":"","redeem_rewards_block_enabled":false,"redeem_rewards_display_style":"horizontal","secondary_button_class_names":"button rivo-button--secondary","accepts_sms_marketing_enabled":true,"add_to_cart_notification_text":"Added to cart","alternate_login_shop_pay_text":"Sign in to an existing account with Shop Pay","favorite_button_inactive_text":"Add to favorites","featured_home_content_enabled":true,"home_gift_card_button_enabled":false,"home_logged_out_profile_title":"Manage addresses, contact info, and personal preferences","international_returns_enabled":false,"legacy_points_balance_enabled":false,"mini_block_subtitle_font_size":14,"new_customer_accounts_enabled":false,"order_limited_time_button_url":"","same_as_shipping_address_text":"Same as shipping address","shop_pay_login_button_enabled":true,"home_button_balance_points_url":"\/pages\/rewards","home_button_components_enabled":false,"home_button_gift_card_cta_text":"My Credit","home_membership_button_enabled":false,"order_limited_time_button_text":"","address_saved_notification_text":"Address saved","apply_discount_add_to_cart_text":"Apply discount \u0026 add to cart","featured_content_image_position":"center center","home_button_balance_points_text":"Points","home_button_gift_card_code_text":"ID: ","home_button_gift_card_copy_text":"Copy ID","home_button_membership_cta_text":"My Membership","home_expiration_message_enabled":false,"home_logged_out_favorites_title":"Sign in to access your favorites","home_logged_out_orders_subtitle":"Get access to your rewards, referrals, and more","login_accepts_marketing_default":true,"login_accepts_marketing_enabled":true,"loyalty_opt_in_checkbox_default":true,"loyalty_opt_in_checkbox_enabled":false,"profile_list_personal_info_text":"Personal Information","view_product_action_button_text":"View product","home_additional_button_1_enabled":true,"home_additional_button_2_enabled":true,"home_logged_out_profile_subtitle":"Get access to your rewards, referrals, and more","home_wallet_pass_ios_button_text":"Add Apple Wallet Pass","mini_block_product_price_enabled":false,"mini_block_product_title_enabled":false,"orders_additional_button_enabled":false,"product_compare_at_price_enabled":true,"recently_viewed_empty_state_text":"No recently viewed products","slideout_body_primary_font_color":"#0d0c22","address_deleted_notification_text":"Address deleted successfully","international_returns_button_text":"Start an International Return","login_accepts_marketing_countries":[],"order_limited_time_button_enabled":false,"profile_updated_notification_text":"Profile updated","shipping_address_empty_state_text":"You haven't added any shipping addresses yet","add_to_favorites_notification_text":"Save Item","alternate_login_another_email_text":"Try sending another code","home_button_membership_paywall_url":"","home_logged_out_favorites_subtitle":"Get access to your rewards, referrals, and more","redirect_to_classic_login_on_error":false,"share_favorite_collections_enabled":false,"shop_pay_login_email_field_enabled":true,"slideout_body_secondary_font_color":"#0d0c22","verify_login_
9981issues_alt_login_text":"Having issues? Click here to sign in with an alternate method","view_product_action_button_enabled":false,"cancel_membership_notification_text":"Membership canceled","home_button_balance_points_cta_text":"My Rewards","order_returns_button_primary_button":false,"recently_viewed_collections_enabled":true,"added_to_favorites_notification_text":"Item saved","home_wallet_pass_android_button_text":"Add Google Wallet Pass","order_tracking_button_primary_button":true,"profile_list_shipping_addresses_text":"Shipping Addresses","apple_login_private_relay_error_title":"Please sign in using a different method","order_buy_again_button_primary_button":false,"order_cancel_button_threshold_enabled":true,"orders_secondary_additional_button_url":"","home_button_membership_paywall_cta_text":"Join our Membership","orders_additional_button_primary_button":false,"remove_from_favorites_notification_text":"Remove item","apple_login_private_relay_error_subtitle":"Sorry, we couldn't authenticate your Apple account. Please try again using your email or Sign in with Google.","apple_login_reject_private_relay_enabled":false,"home_logged_out_profile_subtitle_enabled":true,"order_cancel_button_threshold_in_minutes":30,"order_limited_time_button_primary_button":false,"removed_from_favorites_notification_text":"Item removed","show_as_loyalty_page_login_modal_enabled":false,"orders_secondary_additional_button_enabled":false,"international_returns_button_primary_button":false,"send_payment_method_email_notification_text":"Confirmation email sent","order_limited_time_button_threshold_in_minutes":15,"orders_secondary_additional_button_primary_button":false,"css_variables":":root {\n --rivo-aw-background-color: #f7f6ef;\n --rivo-aw-desktop-sidebar-left: 0px;\n --rivo-aw-desktop-sidebar-right: auto;\n --rivo-aw-desktop-slidein-translate-x: -100%;\n --rivo-aw-desktop-slideout-translate-x: -100%;\n --rivo-aw-heading-font-color: #0d0c22;\n --rivo-aw-body-primary-font-color: #0d0c22;\n --rivo-aw-body-secondary-font-color: #0d0c22;\n --rivo-aw-border-color: #da9ec4;\n --rivo-aw-subdued-color: #f7f7f7;\n --rivo-aw-icon-color: #0d0c22;\n --rivo-aw-primary-color: #0d0c22;\n --rivo-aw-favorite-button-active-color: #2d2bd7;\n --rivo-aw-toast-offset-left: 15px;\n --rivo-aw-toast-offset-right: auto;\n --rivo-aw-default-font-size: 16px;\n \n --rivo-aw-input-font-size: 16px;\n --rivo-aw-section-title-font-size: 18px;\n --rivo-aw-logged-out-title-font-size: 24px;\n \n --rivo-aw-mini-block-title-font-size: 16px;\n --rivo-aw-mini-block-subtitle-font-size: 14px;\n --rivo-aw-login-footer-font-size: 12px;\n --rivo-aw-footer-font-size: 14px;\n --rivo-aw-toast-background-color: #0d0c22;\n --rivo-aw-toast-font-color: #ffffff;\n \n \n --rivo-aw-home-featured-content-image-position: center center;\n --rivo-aw-compare-at-price-color: #c70000;\n \n }","terms_and_conditions":"By signing in, you agree to our \u003ca class=\"rivo-underline-link\" href=\"\/policies\/privacy-policy\" target=\"_blank\"\u003eprivacy policy\u003c\/a\u003e and \u003ca class=\"rivo-underline-link\" href=\"\/policies\/terms-of-service\" target=\"_blank\"\u003eterms of service\u003c\/a\u003e","sms_terms_and_conditions":"By signing up via text, you consent to receive recurring automated marketing messages, including cart reminders, at the provided number. Consent is not required for purchase. Reply STOP to opt out or HELP for assistance. Message frequency varies; standard message and data rates may apply. View our \u003ca class=\"rivo-underline-link\" href=\"\/policies\/privacy-policy\" target=\"_blank\"\u003eprivacy policy\u003c\/a\u003e and \u003ca class=\"rivo-underline-link\" href=\"\/policies\/terms-of-service\" target=\"_blank\"\u003eterms of service\u003c\/a\u003e"},"persisted_login_enabled":false,"preference_questions":[],"customer_id_verification_enabled":false,"ping_enabled":true,"contests":[],"active_contest":null,"activate_store_balance_consolidation_enabled":true,"deduct_after_order_placed_channels":["checkout","storefront","merchant_api","auto_redeem","in_app"],"edit_order_settings":{"enabled":false,"note_text":"Order Note","note_enabled":false,"cancel_enabled":true,"cancel_reasons":["Changed my mind","Shipping concerns","Ordered by mistake","Other"],"note_button_text":"Update Note","note_placeholder":"Add a note to your order","threshold_method":"fulfilled","cancel_button_text":"Cancel Order","contact_info_enabled":true,"preview_mode_enabled":false,"contact_info_button_text":"Update Contact Information","shipping_address_enabled":true,"threshold_time_in_minutes":15,"preview_mode_email_domains":[],"shipping_address_button_text":"Update Shipping Address"},"gift_card_settings":{"enabled":true,"gift_card_image_url":"https:\/\/cdn.shopify.com\/s\/files\/1\/1259\/9863\/files\/Little_Circle_Membership_PDP.webp?v=1755788965","gift_card_product_ids":["7853886079057"]},"surveys":[],"order_earnings_delay_in_seconds":null,"cashback_program_enabled":false,"cashback_offers":[],"fallback_to_db_from_shopify_api_enabled":false,"credit_transfers_enabled":false,"wallet_pass_enabled":false,"account_widget_sections":[],"order_settings":{"order_price_exclude_discounts":false,"order_price_include_taxes":false,"order_price_include_shipping":false,"order_reward_channels":"all","order_reward_financial_statuses":["paid"],"order_revoke_financial_statuses":["0","refunded","0","partially_refunded","0","voided"],"convert_pos_customers_to_members":false,"discount_code_prefix_settings":{"global_prefix":"LTY-","loyalty_prefix":"","vip_tier_prefix":"","loyalty_gift_prefix":"LGIFT-","referral_friend_prefix":"LTY-FRIEND-","referral_advocate_prefix":"LTY-ADVOCATE-"},"capitalize_discount_codes":false,"discount_combination_settings":{},"discount_combinations_with_product_enabled":false,"discount_combinations_with_order_enabled":false,"discount_combinations_with_shipping_enabled":false,"points_program_excluded_collection_ids":[],"points_program_excluded_product_ids":[0],"points_program_excluded_order_tags":["rivo_membership_order"],"skip_order_earnings_on_product_ids":[],"points_order_earnings_rounding_enabled":true,"points_order_earnings_rounding_type":"round","credits_order_earnings_rounding_enabled":false,"credits_order_earnings_rounding_type":"round","credits_order_earnings_rounding_precision":2,"points_order_earnings_rounding_precision":0,"points_program_fulfillment_earnings_trigger":"order_fulfilled"}}; 9982 window.Rivo.loy_config.api_endpoint = "\/apps\/ba-loy"; 9983</script>
9983 9984
9985<script type="text/javascript" id="rivo-js-customer-init" dynamic> 9986 9987</script>
9987 9988 9989 9990 <link rel="stylesheet" type="text/css" href="https://cdn.shopify.com/s/files/1/0194/1736/6592/t/1/assets/ba_rivo_profile.css?v=1786981399"/> 9991 <style type="text/css"> 9992 9993 :root { 9994 --rivo-aw-background-color: #f7f6ef; 9995 --rivo-aw-desktop-sidebar-left: 0px; 9996 --rivo-aw-desktop-sidebar-right: auto; 9997 --rivo-aw-desktop-slidein-translate-x: -100%; 9998 --rivo-aw-desktop-slideout-translate-x: -100%; 9999 --rivo-aw-heading-font-color: #0d0c22; 10000 --rivo-aw-body-primary-font-color: #0d0c22; 10001 --rivo-aw-body-secondary-font-color: #0d0c22; 10002 --rivo-aw-border-color: #da9ec4; 10003 --rivo-aw-subdued-color: #f7f7f7; 10004 --rivo-aw-icon-color: #0d0c22; 10005 --rivo-aw-primary-color: #0d0c22; 10006 --rivo-aw-favorite-button-active-color: #2d2bd7; 10007 --rivo-aw-toast-offset-left: 15px; 10008 --rivo-aw-toast-offset-right: auto; 10009 --rivo-aw-default-font-size: 16px; 10010 10011 --rivo-aw-input-font-size: 16px; 10012 --rivo-aw-section-title-font-size: 18px; 10013 --rivo-aw-logged-out-title-font-size: 24px; 10014 10015 --rivo-aw-mini-block-title-font-size: 16px; 10016 --rivo-aw-mini-block-subtitle-font-size: 14px; 10017 --rivo-aw-login-footer-font-size: 12px; 10018 --rivo-aw-footer-font-size: 14px; 10019 --rivo-aw-toast-background-color: #0d0c22; 10020 --rivo-aw-toast-font-color: #ffffff; 10021 10022 10023 --rivo-aw-home-featured-content-image-position: center center; 10024 --rivo-aw-compare-at-price-color: #c70000; 10025 10026 } 10027 :root { 10028 --rivo-color-lavender: #e8dcfa; 10029 --rivo-color-lemon: #fefcd4; 10030 --rivo-color-blue: #c4d8fb; 10031 --rivo-color-blush: #fde4e1; 10032 --rivo-color-pink: #da9ec4; 10033 --rivo-border-radius: 20px; 10034 --rivo-color-text: #0d0c22; 10035 --rivo-color-highlight: #2d2bd7; 10036} 10037 10038/* --- Header --- */ 10039.rivo-slideout__header { 10040 box-shadow: none; 10041 height: 80px; 10042 border-bottom: 1px solid var(--rivo-color-lavender); 10043} 10044 10045.rivo-slideout__header a span { 10046 width: auto; 10047 max-width: 150px; 10048} 10049 10050.rivo-slideout__header a.rivo-aw-logo img { 10051 max-height: 50px; 10052} 10053 10054.rivo-slideout__header a { 10055 width: auto; 10056 display: flex; 10057 align-self: center; 10058} 10059 10060.rivo-aw-title, 10061h3.rivo-aw-smaller-title { 10062 line-height: 1.2; 10063 font-weight: 500; 10064 font-family: Canela, "Helvetica Neue", Arial, "Lucida Grande", sans-serif; 10065} 10066 10067.rivo-aw-home-hero h2 { 10068 font-size: 24px; 10069 font-weight: 400; 10070} 10071 10072.rivo-checkbox-label { 10073 font-weight: 400 !important; 10074} 10075 10076.rivo-slideout__container p, 10077.rivo-aw-home-featured-content-subtitle { 10078 font-weight: 300; 10079} 10080 10081/* --- INPUT --- */ 10082 10083.rivo-slideout__container input[type="text"], 10084.rivo-slideout__container input[type="email"], 10085.rivo-slideout__container input[type="tel"], 10086.rivo-slideout__container input[type="password"], 10087.rivo-slideout__container select { 10088 border-radius: 5px; 10089} 10090 10091.rivo-form-field label, 10092.rivo-preference-item-label, 10093.rivo-profile-list-item-title, 10094.rivo-aw-smaller-title { 10095 font-weight: 400; 10096} 10097 10098/* --- BUTTONS --- */ 10099 10100.rivo-aw-button-points-balance-number, 10101span.rivo-aw-button-points-balance-currency { 10102 font-size: 16px; 10103 text-transform: uppercase; 10104} 10105 10106.rivo-aw-button-component-cta-text { 10107 text-transform: uppercase; 10108} 10109 10110.rivo-aw-button-points-balance-number { 10111 margin-right: 5px; 10112} 10113 10114.rivo-aw-home-button-components a { 10115 padding: 0.85rem 2.75rem 0.8rem 2.75rem; 10116} 10117 10118.rivo-aw-button-points.button { 10119 padding-left: 1.5rem; 10120 padding-right: 1.5rem; 10121} 10122 10123.rivo-aw-button-component-cta svg path { 10124 transition: all .2s ease; 10125} 10126 10127.rivo-aw-button-points:hover svg path { 10128 fill: var(--rivo-color-highlight) !important; 10129} 10130 10131.rivo-aw-button-component-cta svg { 10132 margin-top: -2px; 10133} 10134 10135.rivo-aw-button-points-balance-container { 10136 padding: 0; 10137} 10138 10139.rivo-slideout__container .rivo-button--secondary { 10140 background: transparent; 10141 border-color: #2d2bd7; 10142 color: #2d2bd7; 10143} 10144 10145.rivo-checkbox-container input[type="checkbox"] { 10146 -webkit-appearance: auto; 10147} 10148 10149.rivo-login-component input[type="text"]:focus-visible, 10150.rivo-login-component input[type="email"]:focus-visible { 10151 border-color: var(--rivo-aw-primary-color, #303030); 10152} 10153 10154.rivo-shop-pay-svg path { 10155 fill: var(--rivo-color-highlight) !important; 10156} 10157 10158a.rivo-collection-item { 10159 transition: all 0.2s ease; 10160 font-weight: 400; 10161} 10162 10163a.rivo-collection-item:hover { 10164 background: var(--rivo-color-lavender); 10165 border-color: var(--rivo-color-lavender); 10166 color: var(--rivo-color-text); 10167} 10168 10169/* --- Empty container --- */ 10170.rivo-empty-state-container { 10171 border: 1px solid var(--rivo-color-pink); 10172 border-radius: 5px; 10173 padding: 30px; 10174 text-align: center; 10175 width: 100%; 10176 color: rgba(0, 0, 0, 0.7) !important; 10177 margin-top: 10px; 10178 margin-bottom: 0; 10179} 10180 10181.rivo-sms-terms-and-conditions { 10182 color: rgba(0, 0, 0, 0.7); 10183 line-height: 15px; 10184 font-size: 14px !important; 10185} 10186 10187.rivo-aw-order-item-quantity { 10188 padding-top: 2px; 10189} 10190 10191label.rivo-checkbox-container { 10192 align-items: baseline; 10193} 10194 10195.rivo-mini-block-link .rivo-favorite-button, 10196.rivo-product-action-image .rivo-favorite-button { 10197 background: transparent; 10198} 10199
10200/* --- Image Blocks --- */ 10201 10202.rivo-mini-block-title, 10203.rivo-product-action-title { 10204 font-family: Canela, "Helvetica Neue", Arial, "Lucida Grande", sans-serif; 10205 text-transform: capitalize; 10206 line-height: 1.2; 10207 max-height: 45px; 10208} 10209 10210.rivo-product-action-body .rivo-product-action-price, 10211.rivo-product-action-title { 10212 font-weight: 400; 10213} 10214 10215.rivo-mini-block-title, 10216.rivo-mini-block-price { 10217 display: flex !important; 10218} 10219 10220.rivo-mini-block-subtitle { 10221 margin-top: 5px; 10222} 10223 10224.rivo-product-price { 10225 font-weight: 400; 10226} 10227 10228.rivo-compare-price .rivo-product-price { 10229 color: var(--rivo-color-highlight); 10230} 10231 10232.rivo-aw-go-to-page { 10233 background: transparent; 10234} 10235 10236.rivo-product-image { 10237 aspect-ratio: auto; 10238 border-radius: 4px; 10239} 10240 10241.rivo-profile-list { 10242 margin-top: 15px; 10243 order: 1; 10244} 10245 10246/* --- Order code --- */ 10247 10248.rivo-aw-order-total-row.total-price { 10249 font-weight: 500; 10250} 10251 10252.rivo-aw-order-index-name, 10253.rivo-order-details-page .rivo-aw-heading.with-backlink .rivo-aw-title { 10254 font-weight: 500; 10255 font-family: Larsseit, "Helvetica Neue", Arial, "Lucida Grande", sans-serif; 10256} 10257 10258.rivo-h4-title { 10259 font-weight: 400; 10260} 10261 10262/* --- Featured Content --- */ 10263 10264h2.rivo-aw-home-featured-content-title { 10265 margin: 5px 0 !important; 10266 font-size: 24px; 10267} 10268 10269.rivo-aw-home-featured-content-image-wrapper, 10270.rivo-aw-home-featured-content-image-wrapper img { 10271 border-radius: 10px !important; 10272} 10273 10274.rivo-favorite-button span svg { 10275 width: 17px; 10276 height: 17px; 10277} 10278 10279 10280/* --- Footer --- */ 10281 10282#rivo-slideout-footer { 10283 background: var(--rivo-color-blue); 10284 box-shadow: none; 10285} 10286 10287.rivo-footer-nav-text { 10288 text-transform: uppercase; 10289 color: var(--rivo-color-text); 10290 font-weight: 300; 10291} 10292 10293#rivo-slideout-footer .rivo-slideout-navigation .active .rivo-footer-nav-text { 10294 font-weight: 500; 10295} 10296 10297.rivo-login-footer-link a { 10298 text-decoration: underline; 10299} 10300 10301.rivo-or-text { 10302 font-size: 12px; 10303} 10304 10305/* --- Close button --- */ 10306.rivo-slideout__close, 10307.rivo-aw-mini-modal__close { 10308 background: transparent; 10309} 10310 10311@media screen and (max-width: 450px) { 10312 .rivo-slideout__header a.rivo-aw-logo { 10313 height: auto; 10314 } 10315 .rivo-aw-home-featured-content-subtitle { 10316 font-size: 16px; 10317 } 10318} 10319 10320@media screen and (min-width: 769px) { 10321 .rivo-slideout__container { 10322 margin: 12px; 10323 height: calc(100% - 1.5rem) !important; 10324 border-radius: 20px; 10325 } 10326} 10327 10328.rivo-aw-profile-manage-membership { 10329 display: none; 10330} 10331 10332.rivo-slideout__overlay { 10333 background: #00000066; 10334} 10335 </style> 10336 <div id="rivo-shop-pay-login-container" style="display: none;"> 10337
10337<script defer="defer" async type="module" src="https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.shop-login-button.en.esm.js"></script>
vendor: 1 bytes, line 10337
10337
10338<script type="module"> 10339 await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.shop-login-button.en.esm.js"); 10340 10341 10342</script>
10342 10343 10344<shop-login-button ux-mode="windoid" return-uri="https://www.littlewordsproject.com/account/redirect" proxy="true" redirect-type="iframe" response-type="code"></shop-login-button> 10345 10346 </div> 10347 10348<div rivo-ax-data="rivoAccountSlideoutComponent()" rivo-ax-init="initRivoAccountSlideout" class="micromodal-slideout" id="rivo-account-slideout" aria-hidden="true"> 10349 <div class="rivo-slideout__overlay" tabindex="-1" data-rivo-account-slideout-micromodal-close> 10350 <div class="rivo-slideout__container" role="dialog" aria-modal="true" aria-labelledby="rivo-account-dialog-title" tabindex="-1" rivo-ax-bind:class="{ 'rivo-aw-logged-in': $store.rivo_profile_customer, 'rivo-aw-logged-out': !$store.rivo_profile_customer }"> 10351 <header class="rivo-slideout__header rivo-slideout-section"> 10352 <button type="button" class="rivo-slideout__close" aria-label="Close modal" data-rivo-account-slideout-micromodal-close></button> 10353 <h2 id="rivo-account-dialog-title" class="rivo-visually-hidden">Account</h2> 10354 <a href="#rivo" class="rivo-aw-logo" rivo-ax-on:click.prevent="changePage('rivo')" rivo-ax-show="$store.rivo_aw_settings.logo && !$store.current_survey_question" aria-label="Go to home"><span aria-hidden="true" rivo-ax-html="$store.rivo_aw_settings.logo"></span></a> 10355 <div class="rivo-survey-progress-bar-container" rivo-ax-show="$store.current_survey_question" rivo-ax-cloak> 10356 <div class="rivo-survey-progress-bar" role="progressbar" aria-valuenow="0" rivo-ax-effect="$el.setAttribute('aria-valuenow', $store.current_survey?.percentage_completed || 100)" aria-valuemin="0" aria-valuemax="100" aria-label="Survey progress"> 10357 <div class="rivo-survey-progress-bar-fill" rivo-ax-bind:style="'width: ' + ($store.current_survey?.percentage_completed || 100) + '%'"></div> 10358 </div> 10359 <button class="rivo-survey-skip-question" rivo-ax-on:click="saveSurveyAnswer($event, true)" aria-label="Skip current survey question">Skip</button> 10360 </div> 10361 </header> 10362 <div class="rivo-slideout__content rivo-slideout-section"> 10363 <div id="rivo-profile-main"></div> 10364 <template rivo-ax-if="$store.rivo_aw_settings.show_powered_by"> 10365 <div class="rivo-powered-by"> 10366 <a href="https://rivo.io?utm_source=widget&utm_campaign=powered-by" target="_blank" aria-label="Powered by Rivo - Opens in new window"> 10367 <span class="rivo-powered-by-text">Powered by </span> 10368 <div class="rivo-powered-by-icon" rivo-ax-html="$store.icons.rivo"></div> 10369 </a> 10370 </div> 10371 </template> 10372 </div> 10373 <footer id="rivo-slideout-footer" class="rivo-slideout-section" rivo-ax-show="!hideFooter"> 10374 <div class="rivo-slideout-navigation" role="tablist" rivo-ax-on:keydown="handleTabKeydown($event)" rivo-ax-bind:class="{ 'rivo-footer-with-icons': $store.rivo_aw_settings.footer_icons_enabled }" rivo-ax-show="!showStickyFooterButton"> 10375 <a href="#rivo" id="rivo-tab-rivo" role="tab" aria-controls="rivo-tabpanel-rivo" aria-selected="true" tabindex="0" rivo-ax-effect="$el.setAttribute('aria-selected', currentPage === 'rivo' ? 'true' : 'false'); $el.setAttribute('tabindex', currentPage === 'rivo' ? '0' : '-1')" rivo-ax-bind:class="{ 'active': currentPage === 'rivo' }" rivo-ax-on:click.prevent="changePage('rivo')"> 10376 <div rivo-ax-html="$store.icons.profile_home" rivo-ax-show="$store.rivo_aw_settings.footer_icons_enabled"></div> 10377 <div class="rivo-footer-nav-text" rivo-ax-text="$store.rivo_aw_translation?.footer_home_text || $store.rivo_aw_settings.footer_home_text">For You</div> 10378 </a> 10379 <a href="#rivo-orders" id="rivo-tab-rivo-orders" role="tab" aria-controls="rivo-tabpanel-rivo-orders" aria-selected="false" tabindex="-1" rivo-ax-effect="$el.setAttribute('aria-selected', (currentPage === 'rivo-orders' || currentPage === 'rivo-order-details') ? 'true' : 'false'); $el.setAttribute('tabindex', (currentPage === 'rivo-orders' || currentPage === 'rivo-order-details') ? '0' : '-1')" rivo-ax-bind:class="{ 'active': currentPage === 'rivo-orders' || currentPage === 'rivo-order-details' }" rivo-ax-on:click.prevent="changePage('rivo-orders')"> 10380 <div rivo-ax-html="$store.icons.profile_orders" rivo-ax-show="$store.rivo_aw_settings.footer_icons_enabled"></div> 10381 <div class="rivo-footer-nav-text" rivo-ax-text="$store.rivo_aw_translation?.footer_orders_text || $store.rivo_aw_settings.footer_orders_text">Orders</div> 10382 </a> 10383 <a href="#rivo-profile" id="rivo-tab-rivo-profile" role="tab" aria-controls="rivo-tabpanel-rivo-profile" aria-selected="false" tabindex="-1" rivo-ax-effect="$el.setAttribute('aria-selected', currentPage === 'rivo-profile' ? 'true' : 'false'); $el.setAttribute('tabindex', currentPage === 'rivo-profile' ? '0' : '-1')" rivo-ax-bind:class="{ 'active': currentPage === 'rivo-profile' }" rivo-ax-on:click.prevent="changePage('rivo-profile')"> 10384 <div rivo-ax-html="$store.icons.profile_user" rivo-ax-show="$store.rivo_aw_settings.footer_icons_enabled"></div> 10385 <div class="rivo-footer-nav-text" rivo-ax-text="$store.rivo_aw_translation?.footer_profile_text || $store.rivo_aw_settings.footer_profile_text">Profile</div> 10386 </a> 10387 <template rivo-ax-if="$store.rivo_aw_settings.community_enabled"> 10388 <a href="#rivo-community" id="rivo-tab-rivo-community" role="tab" aria-controls="rivo-tabpanel-rivo-community" aria-selected="false" tabindex="-1" rivo-ax-effect="$el.setAttribute('aria-selected', currentPage === 'rivo-community' ? 'true' : 'false'); $el.setAttribute('tabindex', currentPage === 'rivo-community' ? '0' : '-1')" rivo-ax-bind:class="{ 'active': currentPage === 'rivo-community' }" rivo-ax-on:click.prevent="changePage('rivo-community')"> 10389 <div rivo-ax-html="$store.icons.profile_user" rivo-ax-show="$store.rivo_aw_settings.footer_icons_enabled"></div> 10390 <div class="rivo-footer-nav-text" rivo-ax-text="$store.rivo_aw_translation?.footer_community_text || $store.rivo_aw_settings.footer_community_text"></div> 10391 </a> 10392 </template> 10393 </div> 10394 <template rivo-ax-if="showStickyFooterButton && $store.current_survey_question"> 10395 <div class="rivo-sticky-footer-container"> 10396 <button rivo-ax-bind:class="$store.rivo_aw_settings.primary_button_class_names" aria-label="Continue survey" rivo-ax-text="$store.rivo_aw_settings.survey_next_button_text" rivo-ax-on:click="saveSurveyAnswer($event)"></button> 10397 </div> 10398 </template> 10399 </footer> 10400 <div class="rivo-aw-mini-modal rivo-aw-mini-modal-micromodal-slide" id="rivo-aw-mini-modal" aria-hidden="true"> 10401 <div class="rivo-aw-mini-modal__overlay" tabindex="-1" data-rivo-mini-micromodal-close> 10402 <div class="rivo-aw-mini-modal__container" role="dialog" aria-modal="true"> 10403 <button class="rivo-aw-mini-modal__close" aria-label="Close modal" data-rivo-mini-micromodal-close></button> 10404 <div class="rivo-aw-mini-modal__content" rivo-ax-html="miniModalContent"></div> 10405 </div> 10406 </div> 10407 </div> 10408 </div> 10409 </div> 10410 </div> 10411 10412<!-- END app snippet --> 10413 10414 10415</div><div id="shopify-block-AMXlNNXM5SWtGZ0cxR__17151115064775110295" class="shopify-block shopify-app-block"><style data-recharge-theme='{"has_theme_customization": true, "design_mode": false }'> 10416 .recharge-theme { 10417 /* App */ 10418 --recharge-app-background: #F7F6EF; 10419 --recharge-app-container: 1200px;
10420 --recharge-app-vertical-padding: 32px; 10421 10422 /* Brand colors */ 10423 10424--recharge-color-brand: #2E2BD8; 10425 10426 /* Tints */ 10427 --recharge-color-brand-120: #2421b4; 10428 --recharge-color-brand-20: #5855e0; 10429 --recharge-color-brand-40: #8280e8; 10430 --recharge-color-brand-60: #abaaef; 10431 --recharge-color-brand-75: #cbcaf5; 10432 --recharge-color-brand-85: #e0dff9; 10433 10434 /* Neutral */ 10435 --recharge-color-neutral: hsl(241, 35%, 7%); 10436 --recharge-color-neutral-80: hsl(241, 7%, 25%); 10437 --recharge-color-neutral-70: hsl(241, 5%, 35%); 10438 --recharge-color-neutral-40: hsl(241, 3%, 63%); 10439 --recharge-color-neutral-10: hsl(241, 2%, 91%); 10440 10441 10442 /* Links */ 10443 --recharge-button-secondary: #DA9FC4; 10444 --recharge-button-secondary-120: #cd7eb0; 10445 --recharge-button-secondary-60: #e9c5dc; 10446 10447 /* Images */ 10448 --recharge-images-ratio: 1; 10449 10450 /* Cards */ 10451 10452 --recharge-cards-background: #FFFFFF; 10453 10454 10455 10456 --recharge-cards-border-color: RGBA(0,0,0,0); 10457 10458 10459 /* Fonts */ 10460 --recharge-typography-scale: 16px; 10461 --recharge-typography-size-1: calc(3 * var(--recharge-typography-scale)); 10462 --recharge-typography-size-2: calc(2.25 * var(--recharge-typography-scale)); 10463 --recharge-typography-size-3: calc(1.625 * var(--recharge-typography-scale)); 10464 --recharge-typography-size-4: calc(1.25 * var(--recharge-typography-scale)); 10465 --recharge-typography-size-5: calc(1 * var(--recharge-typography-scale)); 10466 --recharge-typography-size-6: calc(.875 * var(--recharge-typography-scale)); 10467 10468 /** Text **/ 10469 --recharge-typography-light: #FFFFFF; 10470 --recharge-typography-primary: var(--recharge-color-neutral); 10471 --recharge-typography-secondary: var(--recharge-color-neutral-70); 10472 10473 /* Corners */ 10474 --recharge-corners-radius: 8px; 10475 10476 --recharge-button-border-radius: 8px; 10477 10478 10479 /* Views */ 10480 10481 --recharge-views-background: #F7F6EF; 10482 10483 10484 /* Buttons */ 10485 --recharge-button-font-family: inherit; 10486 --recharge-button-brand: var(--recharge-color-brand); 10487 --recharge-button-color: RGB(255,255,255); 10488 } 10489</style> 10490 10491</div><div id="shopify-block-ATEE3ZkFQcUtzdnBXZ__6990797075511561578" class="shopify-block shopify-app-block"><!-- BEGIN app snippet: nosto-tagging --> 10492 10493<div class="nosto_page_type" style="display:none">category</div> 10494 10495 10496 <div class="nosto_market" style="display:none"> 10497 <span class="id">5668945</span> 10498 <span class="locale">en</span> 10499 <span class="b2b">false</span> 10500 </div> 10501 10502 10503<div class="nosto_shopify_shop" style="display: none"> 10504 <span class="id">12599863</span> 10505</div> 10506 10507 10508 10509 10510 10511 10512 10513 <div class="nosto_category" translate="no" style="display:none"> 10514 <span class="category_string">Shop All Bracelets & Accessories</span> 10515 <span class="id">173291110481</span> 10516 </div> 10517 10518 10519 10520 10521 10522 10523 10524 <div class="nosto_cart" style="display:none"> 10525 10526 10527 10528 </div> 10529 10530 10531 10532 10533 10534<!-- END app snippet --> 10535 10536 10537</div>
10537<script src="https://cdn.shopify.com/storefront/standard-actions.js" type="module" data-source-attribution="shopify.standard_actions"></script>
10537 10538</body> 10539</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.