1<!doctype html> 2 3<html lang="en" dir="ltr"> 4 <head> 5 <!-- Google Tag Manager --> 6
6<script>
vendor: 343 bytes, lines 6-10
6(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 7 new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 8 j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 9 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 10 })(window,document,'script','dataLayer','
10GTM-W7HFRTS2
vendor: 3 bytes, line 10
10');
10</script>
10 11 <!-- End Google Tag Manager --> 12 13
13<script> 14 window.Shopflo = { ...(window.Shopflo ?? {}), autoOnboarding: true }; 15 </script>
15 16 <!-- Start of Shoplift scripts --> 17 <!-- 2026-01-07T10:00:07.7449563Z --> 18<style>.shoplift-hide { opacity: 0 !important; }</style> 19<style id="sl-preview-bar-hide">#preview-bar-iframe, #PBarNextFrameWrapper { display: none !important; }</style>
20<script type="text/javascript">(function(rootPath, template, themeRole, themeId, isThemePreview){ /* Generated on 2026-01-15T08:00:03.2958461Z */var gt=Object.defineProperty;var mt=(R,x,V)=>x in R?gt(R,x,{enumerable:!0,configurable:!0,writable:!0,value:V}):R[x]=V;var w=(R,x,V)=>mt(R,typeof x!="symbol"?x+"":x,V);(function(){"use strict";var R=document.createElement("style");R.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}`,document.head.appendChild(R);var x=" 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
20hp|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",V=/bot|spider|crawl|http|lighthouse/i,D;function W(){if(D instanceof RegExp)return D;try{D=new RegExp(x,"i")}catch{D=V}return D}function J(c){return!!c&&W().test(c)}class M{constructor(){w(this,"timestamp");this.timestamp=new Date}}class Y extends M{constructor(e,i,s){super();w(this,"type");w(this,"testId");w(this,"hypothesisId");this.type=3,this.testId=e,this.hypothesisId=i,this.timestamp=s}}class Z extends M{constructor(e){super();w(this,"type");w(this,"path");this.type=4,this.path=e}}class Q extends M{constructor(e){super();w(this,"type");w(this,"cart");this.type=5,this.cart=e}}class N extends Error{constructor(){super();w(this,"isBot");this.isBot=!0}}function X(c,t,e){for(const i of t.selectors){const s=c.querySelectorAll(i.cssSelector);for(let r=0;r<s.length;r++)e(t.testId,t.hypothesisId)}q(c,t,(i,s,r,n,o)=>o(s,r),e)}function L(c,t,e){for(const i of t.selectors)U(c,t.testId,t.hypothesisId,i,e??(()=>{}));q(c,t,U,e??(()=>{}))}function F(c){return c.urlPatterns.reduce((t,e)=>{switch(e.operator){case"contains":return t+`.*${e}.*`;case"endsWith":return t+`.*${e}`;case"startsWith":return t+`${e}.*`}},"")}function q(c,t,e,i){new MutationObserver(()=>{for(const r of t.selectors)e(c,t.testId,t.hypothesisId,r,i)}).observe(c.documentElement,{childList:!0,subtree:!0})}function U(c,t,e,i,s){const r=c.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 a of i.actions.sort(at))o=tt(c,i.cssSelector,o,a)}}return r.length>0&&s?(s(t,e),!0):!1}function tt(c,t,e,i){switch(i.type){case"innerHtml":e.innerHTML=i.value;break;case"attribute":et(e,i.scope,i.value);break;case"css":it(c,t,i.value);break;case"js":st(c,e,i);break;case"copy":return rt(e);case"remove":ot(e);break;case"move":nt(e,parseInt(i.value));break}return e}function et(c,t,e){c.setAttribute(t,e)}function it(c,t,e){var s;const i=c.createElement("style");i.innerHTML=`${t} { ${e} }`,(s=c.getElementsByTagName("head")[0])==null||s.appendChild(i)}function st(c,t,e){Function("document","element",`"use strict"; ${e.value}`)(c,t)}function rt(c){const t=c.cloneNode(!0);if(!c.parentNode)throw"Can't copy node outside of DOM";return c.parentNode.insertBefore(t,c.nextSibling),t}function ot(c){c.remove()}function nt(c,t){if(t===0)return;const e=Array.prototype.slice.call(c.parentElement.children).indexOf(c),i=Math.min(Math.max(e+t,0),c.parentElement.children.length-1);c.parentElement.children.item(i).insertAdjacentElement(t>0?"afterend":"beforebegin",c)}function at(c,t){return z(c)-z(t)}function z(c){return c.type==="copy"||c.type==="remove"?0:1}var k=(c=>(c[c.Template=0]="Template",c[c.Theme=1]="Theme",c[c.UrlRedirect=2]="UrlRedirect",c[c.Script=3]="Script",c[c.Dom=4]="Dom",c[c.Price=5]="Price",c))(k||{});const lt="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",ct="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
207.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 dt(c){let t=c.replace(/-/g,"+").replace(/_/g,"/");for(;t.length%4;)t+="=";const e=atob(t),i=Uint8Array.from(e,n=>n.charCodeAt(0)),s=new Blob([i]).stream().pipeThrough(new DecompressionStream("gzip")),r=await new Response(s).text();return JSON.parse(r)}function O(c,t){return typeof t=="string"&&/\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d+(?:Z|[+-]\d+)/.test(t)?new Date(t):t}function H(c,t){return t}function E(c,t=!1,e=!1,i=","){const s=c/100;if(e){const n=Math.round(s).toLocaleString("en-US");return i!==","?n.replace(/,/g,i):n}else{const r=t?",":".",n=s.toFixed(2).split("."),o=parseInt(n[0],10),a=n[1]??"00",l=o.toLocaleString("en-US");return i!==","?`${l.replace(/,/g,i)}${r}${a}`:t?`${l.replace(/,/g,".")}${r}${a}`:`${l}${r}${a}`}}
20function $(c,t,e,i){const s=t.replace("{{amount}}",E(c,!1,!1)).replace("{{amount_no_decimals}}",E(c,!1,!0)).replace("{{amount_with_comma_separator}}",E(c,!0,!1)).replace("{{amount_no_decimals_with_comma_separator}}",E(c,!0,!0)).replace("{{amount_with_space_separator}}",E(c,!1,!1," ")).replace("{{amount_no_decimals_with_space_separator}}",E(c,!1,!0," ")).replace("{{amount_with_apostrophe_separator}}",E(c,!1,!1,"'")).replace("{{amount_no_decimals_with_apostrophe_separator}}",E(c,!1,!0,"'")).replace("{{amount_with_period_and_space_separator}}",E(c,!1,!1,". ")).replace("{{amount_no_decimals_with_period_and_space_separator}}",E(c,!1,!0,". "));return i?`${s} ${e}`:s}function B(c){return c.replace(/[^\d.,\s-]/g,"").trim()}function ht(c){const t=new Map;for(const[e,i,s]of c.v)t.set(e,{priceInCents:i,compareAtPriceInCents:s});return t}function pt(c,t,e,i){const{priceInCents:s,compareAtPriceInCents:r}=e,{mf:n,c:o,cce:a}=i;if(c.getAttribute("data-sl-attribute-p")===t)c.innerHTML=$(s,n,o,a);else if(c.getAttribute("data-sl-attribute-cap")===t)r<=0||r<=s?c.remove():c.innerHTML=$(r,n,o,a);else if(c.getAttribute("data-sl-attribute-discount")===t&&!(r<=0||r<=s)){const h=Math.round((r-s)/r*100),u=B($(r-s,n,o,!1)),p=c.getAttribute("data-sl-format")||"percent";p==="percent"?c.textContent=`-${h}%`:p==="amount"?c.textContent=`-${u}`:p==="both"&&(c.textContent=`-${h}% (-${u})`)}}function ut(c){const t=[],e={id:"url-pattern",operator:"contains",value:"/"};for(const[i,s,r]of c.v){t.push({id:`p-${i}`,cssSelector:`[data-sl-attribute-p="${i}"]`,urlPatterns:[e],actions:[{id:`p-action-${i}`,type:"innerHtml",scope:"price",value:$(s,c.mf,c.c,c.cce)}]});const n=r<=0||r<=s;if(t.push({id:`cap-${i}`,cssSelector:`[data-sl-attribute-cap="${i}"]`,urlPatterns:[e],actions:[{id:`cap-action-${i}`,type:n?"remove":"innerHtml",scope:"compare-at-price",value:n?"":$(r,c.mf,c.c,c.cce)}]}),!n&&r>s){const o=Math.round((r-s)/r*100),a=B($(r-s,c.mf,c.c,!1));t.push({id:`d-${i}`,cssSelector:`[data-sl-attribute-discount="${i}"]`,urlPatterns:[e],actions:[{id:`d-action-${i}`,type:"js",scope:null,value:`(function(doc, el) { var format = el.getAttribute('data-sl-format') || 'percent'; if (format === 'percent') { el.textContent = '-${o}%'; } else if (format === 'amount') { el.textContent = '-${a}'; } else if (format === 'both') { el.textContent = '-${o}% (-${a})'; } })`}]})}}return t}let G=!1;class ft{constructor(t,e,i,s,r,n,o,a,l,h,u){w(this,"DATA_SL_ATTRIBUTE_P","data-sl-attribute-p");w(this,"DATA_SL_TEST_ID","data-sl-test-id");w(this,"VIEWPORT_TRACK_THRESHOLD",.5);w(this,"temporarySessionKey","Shoplift_Session");w(this,"essentialSessionKey","Shoplift_Essential");w(this,"analyticsSessionKey","Shoplift_Analytics");w(this,"priceSelectorsSessionKey","Shoplift_PriceSelectors");w(this,"legacySessionKey");w(this,"cssHideClass");w(this,"testConfigs");w(this,"inactiveTestConfigs");w(this,"testsFilteredByAudience");w(this,"sendPageView");w(this,"shopliftDebug");w(this,"gaConfig");w(this,"getCountryTimeout");w(this,"state");w(this,"shopifyAnalyticsId");w(this,"cookie",document.cookie);w(this,"isSyncing",!1);w(this,"isSyncingGA",!1);w(this,"fetch");w(this,"localStorageSet");w(this,"localStorageGet");w(this,"sessionStorageSet",window.sessionStorage.setItem.bind(window.sessionStorage));w(this,"sessionStorageGet",window.sessionStorage.getItem.bind(window.sessionStorage));w(this,"urlParams",new URLSearchParams(window.location.search));w(this,"device");w(this,"logHistory");w(this,"activeViewportObservers",new Map);w(this,"_priceTestProductIds",null);this.shop=t,this.host=e,this.eventHost=i,this.disableReferrerOverride=a,this.logHistory=[],this.legacySessionKey=`SHOPLIFT_SESSION_${this.shop}`,this.cssHideClass=s?"shoplift-hide":"",this.testConfigs=h.map(d=>({...d,startAt:new Date(d.startAt),statusHistory:d.statusHistory.map(v=>({...v,createdAt:new Date(v.createdAt)}))})),this.inactiveTestConfigs=u,this.sendPageView=!!r,this.shopliftDebug=n===!0,this.gaConfig=o!=={"sendEvents":false,"mode":"gtag"}?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 p=this.getDeviceType();this.device=p!=="tablet"?p:"mobile",this.state=this.loadState(),this.shopifyAnalyticsId=this.getShopifyAnalyticsId(),this.testsFilteredByAudience=h.filter(d=>d.status=="active"),this.getCountryTimeout=l===1000?1e3:l,this.log("State Loaded",JSON.stringify(this.state))}deriveCategoryFromExistingTests(){if(!this.state.temporary.testCategory&&this.state.essential.visitorTests.length>0){const t=this.state.essential.visitorTests.some(e=>{if(!e.hypothesisId)return!1;const i=this.getHypothesis(e.hypothesisId);return i&&["theme","basicScript","price"].includes(i.type)});this.state.temporary.testCategory=t?"global":"conditional",this.persistTemporaryState(),this.log("Derived test category from existing visitorTests: %s",this.state.temporary.testCategory)}}
20async init(){var t;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 i=this.urlParams.get("isShopliftMerchant")==="true";this.log("Setting merchant session to %s",i),this.state.temporary.isMerchant=i,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(),(t=document.querySelector("#sl-preview-bar-hide"))==null||t.remove();return}if(this.state.temporary.previewConfig=void 0,J(navigator.userAgent))return;if(navigator.userAgent.includes("Chrome/118")){this.log("Random: %o",[Math.random(),Math.random(),Math.random()]);const i=await this.makeRequest({url:`${this.eventHost}/api/v0/events/ip`,method:"get"}).then(s=>s==null?void 0:s.json());this.log(`IP: ${i}`),this.makeRequest({url:`${this.eventHost}/api/v0/logs`,method:"post",data:JSON.stringify(this.debugState(),H)}).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 i=this.state.temporary.originalReferrer;delete this.state.temporary.originalReferrer,this.persistTemporaryState(),Object.defineProperty(document,"referrer",{get:()=>i,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),await this.finalize(),console.log("SHOPLIFT SCRIPT INITIALIZED!")}catch(e){if(e instanceof N)return;throw e}finally{typeof window.shoplift!="object"&&this.setShopliftStub()}}getVariantColor(t){switch(t){case"a":return{text:"#141414",bg:"#E2E2E2"};case"b":return{text:"rgba(255, 255, 255, 1)",bg:"rgba(37, 99, 235, 1)"}}}getDefaultVariantTitle(t){return t.title?t.title:t.type==="price"?t.isControl?"Original prices":"Variant prices":t.isControl?"Original":"Untitled variant "+t.label.toUpperCase()}async initPreview(){const t=this.urlParams.get("previewConfig");if(t){this.state.temporary.previewConfig=void 0,this.log("Setting up the preview"),this.log("Found preview config, writing to temporary state");const e=await dt(t);if(this.state.temporary.previewConfig=e,this.state.temporary.previewConfig.testTypeCategory===k.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));
20s.variants.forEach(o=>{var a;return o.domSelectors=(a=n[o.id])==null?void 0:a.domSelectors})}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 e=this.state.temporary.previewConfig;e.testTypeCategory===k.Template&&this.handleTemplatePreview(e)&&this.initPreviewControls(e),e.testTypeCategory===k.UrlRedirect&&this.handleUrlPreview(e)&&this.initPreviewControls(e),e.testTypeCategory===k.Script&&this.handleScriptPreview(e)&&this.initPreviewControls(e),e.testTypeCategory===k.Price&&await this.handlePricePreview(e)&&this.initPreviewControls(e)}}initPreviewControls(t){document.addEventListener("DOMContentLoaded",()=>{const e=t.variants.find(v=>v.id===t.currentVariant),i=(e==null?void 0:e.label)||"a",s=t.variants,r=document.createElement("div");r.id="shoplift-preview-control";const n=document.createElement("div"),o=document.createElement("img");o.src=ct,o.height=24,o.width=14,n.style.padding="0 16px",n.style.lineHeight="100%",n.appendChild(o),r.appendChild(n);const a=document.createElement("div");a.id="shoplift-preview-variant-selector";const l=document.createElement("button");l.id="shoplift-preview-variant-menu-trigger";const h=document.createElement("div");h.className="menu-variant-label",h.style.backgroundColor=this.getVariantColor(i).bg,h.style.color=this.getVariantColor(i).text,h.innerText=i.toUpperCase(),l.appendChild(h);const u=document.createElement("span");if(u.id="shoplift-preview-variant-title",u.innerText=e?this.getDefaultVariantTitle(e):"Untitled variant "+i.toUpperCase(),l.appendChild(u),s.length>1){const v=document.createElement("img");v.src=lt,v.width=12,v.height=12,v.style.height="12px",v.style.width="12px",l.appendChild(v);const T=document.createElement("div");T.className="preview-variant-menu";for(const m of t.variants.filter(C=>C.id!==t.currentVariant)){const C=document.createElement("div");C.className="preview-variant-menu--item";const A=document.createElement("div");A.className="menu-variant-label",A.style.backgroundColor=this.getVariantColor(m.label).bg,A.style.color=this.getVariantColor(m.label).text,A.style.flexShrink="0",A.innerText=m.label.toUpperCase(),C.appendChild(A);const y=document.createElement("span");y.innerText=this.getDefaultVariantTitle(m),C.appendChild(y),C.addEventListener("click",()=>{this.pickVariant(m.id)}),T.appendChild(C)}a.appendChild(T),l.addEventListener("click",()=>{T.className!=="preview-variant-menu preview-variant-menu__visible"?T.classList.add("preview-variant-menu__visible"):T.classList.remove("preview-variant-menu__visible")}),document.addEventListener("click",m=>{m.target instanceof Element&&!l.contains(m.target)&&T.className==="preview-variant-menu preview-variant-menu__visible"&&T.classList.remove("preview-variant-menu__visible")})}else l.style.pointerEvents="none",h.style.margin="0";a.appendChild(l),r.appendChild(a);const p=document.createElement("div"),d=document.createElement("button");d.id="shoplift-exit-preview-button",d.innerText="Exit",p.appendChild(d),d.addEventListener("click",()=>{this.exitPreview()}),r.appendChild(p),document.body.appendChild(r),requestAnimationFrame(()=>{r.classList.add("visible")})}),this.ensureCartAttributesForExistingPriceTests(!0)}pickVariant(t){var e,i,s,r;if(this.state.temporary.previewConfig){const n=this.state.temporary.previewConfig,o=new URL(window.location.toString());if(n.testTypeCategory===k.UrlRedirect){const a=(e=n.variants.find(l=>l.id===n.currentVariant))==null?void 0:e.redirectUrl;if(o.pathname===a){const l=(i=n.variants.find(h=>h.id===t))==null?void 0:i.redirectUrl;l&&(o.pathname=l)}}if(n.testTypeCategory===k.Template){const a=(s=n.variants.find(l=>l.id===n.currentVariant))==null?void 0:s.pathName;if(a&&o.pathname===a){const l=(r=n.variants.find(h=>h.id===t))==null?void 0:r.pathName;l&&l!==a&&(o.pathname=l)}}n.currentVariant=t,this.persistTemporaryState(),this.queueRedirect(o)}}exitPreview(){var e,i,s,r;const t=new URL(window.location.toString());if(((e=this.state.temporary.previewConfig)==null?void 0:e.testTypeCategory)===k.Template&&t.searchParams.delete("view"),((i=this.state.temporary.previewConfig)==null?void 0:i.testTypeCategory)===k.Script&&t.searchParams.delete("slVariant"),
20((s=this.state.temporary.previewConfig)==null?void 0:s.testTypeCategory)===k.UrlRedirect){const o=this.state.temporary.previewConfig.variants.filter(l=>!l.isControl&&l.redirectUrl!==null).map(l=>l.redirectUrl),a=(r=this.state.temporary.previewConfig.variants.find(l=>l.label==="a"))==null?void 0:r.redirectUrl;o.includes(t.pathname)&&a&&(t.pathname=a)}this.state.temporary.previewConfig=void 0,this.persistTemporaryState(),this.hidePage(),this.queueRedirect(t)}handleTemplatePreview(t){const e=t.currentVariant,i=t.variants.find(a=>a.id===e);if(!i)return!1;const s=t.variants.find(a=>a.isControl);if(!s)return!1;this.log("Setting up template preview for type",s.type);const 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&&(r.searchParams.delete("view"),this.hidePage(),this.queueRedirect(r)),!0)}handleUrlPreview(t){var n;const e=t.currentVariant,i=t.variants.find(o=>o.id===e),s=(n=t.variants.find(o=>o.isControl))==null?void 0:n.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(t){const e=t.currentVariant,i=t.variants.find(n=>n.id===e);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(t){const e=t.currentVariant,i=t.variants.find(s=>s.id===e);return i?(this.log("Setting up price preview"),i.domSelectors&&i.domSelectors.length>0&&(L(document,{testId:t.testId,hypothesisId:i.id,selectors:i.domSelectors}),this.ensureCartAttributesForExistingPriceTests(!0)),!0):!1}async finalize(){const t=await this.getCartState();t!==null&&this.queueCartUpdate(t),this.pruneStateAndSave(),await this.syncAllEvents()}setShoplift(){this.log("Setting up public API");const e=this.urlParams.get("slVariant")==="true",i=e?null:this.urlParams.get("slVariant");window.shoplift={isHypothesisActive:async s=>{if(this.log("Script checking variant for hypothesis '%s'",s),e)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(a=>a.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(a=>a.id===s&&this.state.essential.visitorTests.some(l=>l.hypothesisId===a.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 e=this.urlParams.get("slVariant")==="true",i=e?null:this.urlParams.get("slVariant");window.shoplift={isHypothesisActive:s=>Promise.resolve(e||s===i),setAnalyticsConsent:()=>Promise.resolve(),getVisitorData:()=>({visitor:null,visitorTests:[]})}}async manuallySplitVisitor(t){this.log("Starting manual split for test '%s'",t.id),await this.handleVisitorTest([t]),this.saveState(),this.syncAllEvents()}async handleVisitorTest(t){await this.filterTestsByAudience(this.testConfigs,this.state.analytics.visitor??this.buildBaseVisitor(),this.state.essential.visitorTests),this.deriveC
20ategoryFromExistingTests(),this.clearStaleReservations();let e=t?t.filter(i=>this.testsFilteredByAudience.some(s=>s.id===i.id)):[...this.testsForUrl(this.testsFilteredByAudience),...this.domTestsForUrl(this.testsFilteredByAudience)];try{if(e.length===0)return this.log("No tests found"),!1;this.log("Checking for existing visitor test on page");const i=this.getCurrentVisitorHypothesis(e);if(i){this.log("Found current visitor test");const a=this.considerRedirect(i);return a&&(this.log("Redirecting for current visitor test"),this.redirect(i)),a}const s=this.getReservationForCurrentPage();if(s){this.log("Found matching reservation for current page: %s",s.testId);const a=this.getHypothesis(s.hypothesisId);if(a){a.type!=="price"&&this.realizeReservationForCriteria(s.entryCriteriaKey);const l=this.considerRedirect(a);return l&&this.redirect(a),l}}this.log("No active test relation for test page");const r=this.testsForUrl(this.inactiveTestConfigs.filter(a=>this.testIsPaused(a)&&a.hypotheses.some(l=>this.state.essential.visitorTests.some(h=>h.hypothesisId===l.id)))).map(a=>a.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 a=this.testsFilteredByAudience.filter(h=>this.isGlobalEntryCriteria(this.getEntryCriteriaKey(h))),l=this.testsFilteredByAudience.filter(h=>!this.isGlobalEntryCriteria(this.getEntryCriteriaKey(h)));if(this.log("Category dice roll - global tests: %o, conditional tests: %o",a.map(h=>({id:h.id,title:h.title,criteria:this.getEntryCriteriaKey(h)})),l.map(h=>({id:h.id,title:h.title,criteria:this.getEntryCriteriaKey(h)}))),a.length>0&&l.length>0){const h=a.length,u=l.length,p=h+u,d=Math.random()*p;this.state.temporary.testCategory=d<h?"global":"conditional",this.log("Category dice roll: rolled %.2f of %d (global weight: %d, conditional weight: %d), selected '%s'",d,p,h,u,this.state.temporary.testCategory)}else a.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 a=this.testsFilteredByAudience.filter(l=>!this.isGlobalEntryCriteria(this.getEntryCriteriaKey(l)));for(const l of a)this.markTestAsBlocked(l,"category:global");e=e.filter(l=>this.isGlobalEntryCriteria(this.getEntryCriteriaKey(l)))}else{const a=this.testsFilteredByAudience.filter(l=>this.isGlobalEntryCriteria(this.getEntryCriteriaKey(l)));for(const l of a)this.markTestAsBlocked(l,"category:conditional");e=e.filter(l=>!this.isGlobalEntryCriteria(this.getEntryCriteriaKey(l)))}if(e.length===0)return this.log("No tests remaining after category filter"),!1;this.createReservations(e);const o=this.getReservationForCurrentPage();if(o&&!o.isRealized){const a=this.getHypothesis(o.hypothesisId);if(a){a.type!=="price"&&this.realizeReservationForCriteria(o.entryCriteriaKey);const l=this.considerRedirect(a);return l&&(this.log("Redirecting for new test"),this.redirect(a)),l}}return!1}finally{this.includeInDomTests(),this.saveState()}}includeInDomTests(){this.applyControlForAudienceFilteredPriceTests();const t=this.getDomTestsForCurrentUrl(),e=this.getVisitorDomHypothesis(t);for(const i of t){this.log("Evaluating dom test '%s'",i.id);const s=i.hypotheses.some(d=>d.type==="price");if(this.state.essential.visitorTests.find(d=>d.testId===i.id&&d.isInvalid&&!d.hypothesisId)){if(this.log("Visitor is blocked from test '%s', applying control prices if price test",i.id),s){const d=i.hypotheses.find(v=>v.isControl);d!=null&&d.priceData&&(this.applyPriceTestWithMapLookup(i.id,d,[d],()=>{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,a=!1;const l=e.find(d=>i.hypotheses.some(v=>d.id===v.id));if(n)o=this.getHypothesis(n.hypothesisId)??null,this.log("Using reserved hypothesis '%s' for test '%s'",n.hypothesisId,i.id);else if(l)o=l,this.log("Using existing hypothesis assignment for test '%s'",i.id);else if(s){const d=this.visitorActiveTestTypeWithReservations();d?(a=!0,this.log("Visitor already in test type '%s', treating as non-test for price test '%s'",d,i.id)):o=this.pickHypothesis(i)}else o=this.pickHypothesis(i);if(a&&s){const d=i.hypotheses.find(v=>v.isControl);d!=null&&d.priceData&&(this.log("Applying control prices for non-test visitor on price test '%s' (Map-based)",i.id),this.applyPriceTestWithMapLookup(i.id,d,[d],()=>{this.log("Control prices applied for non-test visitor, no metrics tracked")}
20),this.updatePriceTestHiddenInputs(i.id,"control",!1));continue}if(!o){this.log("Failed to pick hypothesis for test");continue}const h=i.bayesianRevision??4,u=o.type==="price",p=h>=5;if(u&&p){if(this.log(`Price test with Map-based lookup (v${h}): ${i.id}`),!o.priceData){this.log("No price data for hypothesis '%s', skipping",o.id);continue}const d=o.isControl?"control":"variant";this.log(`Setting up Map-based price test for ${d} (test: ${i.id})`),this.applyPriceTestWithMapLookup(i.id,o,i.hypotheses,v=>{const T=this.getReservationForTest(v);T&&!T.isRealized&&T.entryCriteriaKey?this.realizeReservationForCriteria(T.entryCriteriaKey):this.queueAddVisitorToTest(v,o),this.saveState(),this.queuePageView(window.location.pathname),this.syncAllEvents()});continue}if(u&&!p){this.log(`Price test without viewport tracking (v${h}): ${i.id}`);const d=this.getDomSelectorsForHypothesis(o);if(d.length===0)continue;L(document,{testId:i.id,hypothesisId:o.id,selectors:d},v=>{this.queueAddVisitorToTest(v,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}L(document,{testId:i.id,hypothesisId:o.id,selectors:o.domSelectors},d=>{this.queueAddVisitorToTest(d,o),this.saveState(),this.queuePageView(window.location.pathname),this.syncAllEvents()})}}considerRedirect(t){if(this.log("Considering redirect for hypothesis '%s'",t.id),t.isControl)return this.log("Skipping redirect for control"),!1;if(t.type==="basicScript"||t.type==="manualScript")return this.log("Skipping redirect for script test"),!1;const e=this.state.essential.visitorTests.find(n=>n.hypothesisId===t.id),i=new URL(window.location.toString()),r=new URLSearchParams(window.location.search).get("view");if(t.type==="theme"){if(!(t.themeId===themeId)){if(this.log("Theme id '%s' is not hypothesis theme ID '%s'",t.themeId,themeId),e&&e.themeId!==t.themeId&&(e.themeId===themeId||!this.isThemePreview()))this.log("On old theme, redirecting and updating local visitor"),e.themeId=t.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(t.type!=="dom"&&t.type!=="price"&&t.affix!==template.suffix&&t.affix!==r||t.redirectPath&&!i.pathname.endsWith(t.redirectPath))return this.log("Hiding page to redirect for template test"),this.hidePage(),!0;return this.log("Not redirecting"),!1}redirect(t){if(this.log("Redirecting to hypothesis '%s'",t.id),t.isControl)return;const e=new URL(window.location.toString());if(e.searchParams.delete("view"),t.redirectPath){const i=RegExp("^(/w{2}-w{2})/").exec(e.pathname);if(i&&i.length>1){const s=i[1];e.pathname=`${s}${t.redirectPath}`}else e.pathname=t.redirectPath}else t.type==="theme"?(e.searchParams.set("_ab","0"),e.searchParams.set("_fd","0"),e.searchParams.set("_sc","1"),e.searchParams.set("preview_theme_id",t.themeId.toString())):t.type!=="urlRedirect"&&e.searchParams.set("view",t.affix);this.queueRedirect(e)}async refreshVisitor(t){if(t===null||!this.state.essential.isFirstLoad||!this.testConfigs.some(i=>i.visitorOption!=="all"))return;this.log("Refreshing visitor"),this.hidePage();const e=await this.getVisitor(t);e&&e.id&&this.updateLocalVisitor(e)}buildBaseVisitor(){return{shopifyAnalyticsId:this.shopifyAnalyticsId,device:this.device,country:null,...this.state.essential.initialState}}getInitialState(){const t=this.getUTMValue("utm_source")??"",e=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:t,utmMedium:e,utmCampaign:i,utmContent:s,referrer:r,device:n}}checkForThemePreview(){var t,e;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),(t=document.querySelector("#sl-preview-bar-hide"))==null||t.remove(),!1):this.isThemePreview()?this.state.essential.visitorTests.some(i=>i.isThemeTest&&i.hypothesisId!=null&&this.getHypothesis(i.hypothesisId)&&i.themeId===themeId)?(this.log("On active theme test, remov
20ing theme bar"),this.clearThemeBar(!1,!0,this.state),!1):this.state.essential.visitorTests.some(i=>i.isThemeTest&&i.hypothesisId!=null&&!this.getHypothesis(i.hypothesisId)&&i.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(i=>i.hypotheses.some(s=>s.themeId===themeId))?(this.log("Current theme is an inactive theme test, redirecting to main theme"),this.redirectToMainTheme(),!0):this.testConfigs.some(i=>i.hypotheses.some(s=>s.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),(e=document.querySelector("#sl-preview-bar-hide"))==null||e.remove(),!0):(this.log("Not on theme preview"),this.clearThemeBar(!0,!1,this.state),!1)}redirectToMainTheme(){this.hidePage();const t=new URL(window.location.toString());t.searchParams.set("preview_theme_id",""),this.queueRedirect(t)}testsForUrl(t){const e=new URL(window.location.href),i=this.typeFromTemplate();return t.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&&e.pathname.endsWith(r.redirectPath)||r.type==="basicScript"))&&(s.ignoreTestViewParameterEnforcement||!e.searchParams.has("view")||s.hypotheses.map(r=>r.affix).includes(e.searchParams.get("view")??"")))}domTestsForUrl(t){const e=new URL(window.location.href);return t.filter(i=>i.hypotheses.some(s=>s.type!=="dom"&&s.type!=="price"?!1:s.type==="price"&&s.priceData&&s.priceData.v.length>0?!0:s.domSelectors&&s.domSelectors.some(r=>new RegExp(F(r)).test(e.toString()))))}async filterTestsByAudience(t,e,i){const s=[];let r=e.country;!r&&t.some(n=>n.requiresCountry&&!i.some(o=>o.testId===n.id))&&(this.log("Hiding page to check geoip"),this.hidePage(),r=await this.makeJsonRequest({method:"get",url:`${this.eventHost}/api/v0/visitors/get-country`,signal:AbortSignal.timeout(this.getCountryTimeout)}).catch(n=>(this.log("Error getting country",n),null)));for(const n of t){if(this.log("Checking audience for test '%s'",n.id),this.state.essential.visitorTests.some(l=>l.testId===n.id&&l.hypothesisId==null)){console.log(`Skipping blocked test '${n.id}'`);continue}const o=this.visitorCreatedDuringTestActive(n.statusHistory);(i.some(l=>l.testId===n.id&&(n.device==="all"||n.device===e.device&&n.device===this.device))||this.isTargetAudience(n,e,o,r))&&(this.log("Visitor is in audience for test '%s'",n.id),s.push(n))}this.testsFilteredByAudience=s}isTargetAudience(t,e,i,s){const r=this.getChannel(e);return(t.device==="all"||t.device===e.device&&t.device===this.device)&&(t.visitorOption==="all"||t.visitorOption==="new"&&i||t.visitorOption==="returning"&&!i)&&(t.targetAudiences.length===0||t.targetAudiences.reduce((n,o)=>n||o.reduce((a,l)=>a&&l(e,i,r,s),!0),!1))}visitorCreatedDuringTestActive(t){let e="";for(const i of t){if(this.state.analytics.visitor!==null&&this.state.analytics.visitor.createdAt<i.createdAt||this.state.essential.initialState.createdAt<i.createdAt)break;e=i.status}return e==="active"}getDomTestsForCurrentUrl(){return this.domTestsForUrl(this.testsFilteredByAudience)}getCurrentVisitorHypothesis(t){return t.flatMap(e=>e.hypotheses).find(e=>e.type!=="dom"&&e.type!=="price"&&this.state.essential.visitorTests.some(i=>i.hypothesisId===e.id))}getVisitorDomHypothesis(t){return t.flatMap(e=>e.hypotheses).filter(e=>(e.type==="dom"||e.type==="price")&&this.state.essential.visitorTests.some(i=>i.hypothesisId===e.id))}getHypothesis(t){return this.testConfigs.filter(e=>e.hypotheses.some(i=>i.id===t)).map(e=>e.hypotheses.find(i=>i.id===t))[0]}getDomSelectorsForHypothesis(t){if(!t)return[];if(t.domSelectors&&t.domSelectors.length>0)return t.domSelectors;if(t.priceData){const e=`${this.priceSelectorsSessionKey}_${t.id}`;try{const s=sessionStorage.getItem(e);if(s){const r=JSON.parse(s);return t.domSelectors=r,this.log("Loaded %d price selectors from cache for hypothesis '%s'",r.length,t.id),r}}catch{}const i=ut(t.priceData);t.domSelectors=i;try{sessionStorage.setItem(e,JSON.stringify(i)),this.log("Generated and cached %d price selectors for hypothesis '%s'",i.length,t.id)}catch{this.log("Generated %d price selectors for hypothesis '%s' (cache unavailable)",i.length,t.id)}return i}return[]}hasThemeTest(t){return t.some(e=>e.hypotheses.some(i=>i.type==="theme"))}hasTestThatIsNotThemeTest(t){return t.some(e=>e.hypotheses.some(i=>i.type!=="theme"&&i.type!=="dom"&&i.type!=="price"))}hasThemeAndOtherTestTypes(t){return this.hasThemeTest(t)&&this.hasTestThatIsNotThemeTest(t)}testIsPaused(t){return t.status==="paused"||t.status==="incompatible"||t.status==="suspended"}visitorActiveTestType(){const t=this.state.essential.visitorTests.filter(e=>this.testConfigs.some(i=>i.hypotheses.some(s=>s.id==e.hypothesisId)));return t.length===0?null:t.some(e=>e.isThemeTest)?"theme":"templateOrUrlRedirect"}getReservationType(t){return t==="price"||this.isTemplateTestType(t)?"deferred":"immediate"}isTemplateTestType(t){return["product","collection","landing","index","cart","search","blog","article","collectionList"].includes(t)}getEntryCriteriaKey(t){const e=t.hypotheses.find(i=>i.isControl);if(!e)return`unknown:${t.id}`;switch(e.type){case"theme":return"global:theme";case"basicScript":return"global:autoApi";case"price":return"global:price";case"manualScript":return`conditional:manualApi:${t.id}`;case"urlRedirect":return`conditional:url:${e.redirectPath||"unknown"}`;default:return`conditional:template:${e.type}`}}isGlobalEntryCriteria(t){return t.startsWith("global:")}groupTestsByEntryCriteria(t){const e=new Map;for(const i of t){const s=this.getEntryCriteriaKey(i),r=e.get(s)||[];r.push(i),e.set(s,r)}return e}doesCurrentPageMatchEntryCriteria(t){if(this.isGlobalEntryCriteria(t))return!0;
20if(t==="conditional:manualApi")return!1;if(t.startsWith("conditional:url:")){const e=t.replace("conditional:url:","");return window.location.pathname.endsWith(e)}if(t.startsWith("conditional:template:")){const e=t.replace("conditional:template:","");return this.typeFromTemplate()===e}return!1}hasActiveReservation(){const t=this.getActiveReservations();return Object.values(t).some(e=>!e.isRealized)}getActiveReservation(){const t=this.getActiveReservations();return Object.values(t).find(e=>!e.isRealized)??null}clearStaleReservations(){const t=this.state.temporary.testReservations;if(!t)return;let e=!1;for(const[i,s]of Object.entries(t)){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 t[i],e=!0;continue}if(r.status!=="active"){this.log("Test '%s' status is '%s', clearing reservation for criteria '%s'",s.testId,r.status,i),delete t[i],e=!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 t[i],e=!0)}e&&this.persistTemporaryState()}createReservations(t){if(this.state.temporary.testReservations||(this.state.temporary.testReservations={}),this.state.temporary.rolledEntryCriteria||(this.state.temporary.rolledEntryCriteria=[]),this.state.temporary.testCategory==="global"){this.createSingleReservation(t,"global");return}const i=t.filter(o=>this.doesCurrentPageMatchEntryCriteria(this.getEntryCriteriaKey(o))),s=t.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";if(i.length>0&&!this.state.temporary.rolledEntryCriteria.includes(r)){this.createSingleReservation(i,r);for(const o of i){const a=this.getEntryCriteriaKey(o);this.state.temporary.rolledEntryCriteria.includes(a)||this.state.temporary.rolledEntryCriteria.push(a)}}const n=this.groupTestsByEntryCriteria(s);for(const[o,a]of n){if(this.state.temporary.rolledEntryCriteria.includes(o)){this.log("Already rolled for criteria '%s', skipping",o);continue}if(a.some(m=>this.state.essential.visitorTests.some(C=>C.testId===m.id))){this.log("Visitor already has VT for criteria '%s', skipping",o),this.state.temporary.rolledEntryCriteria.push(o);continue}const h=[...a].sort((m,C)=>m.id.localeCompare(C.id));this.log("Test dice roll for criteria '%s' - available tests: %o",o,h.map(m=>({id:m.id,title:m.title})));const u=Math.floor(Math.random()*h.length),p=h[u];this.log("Test dice roll: picked index %d of %d, selected test '%s' (%s)",u+1,a.length,p.id,p.title);const d=this.pickHypothesis(p);if(!d){this.log("No hypothesis picked for test '%s'",p.id);continue}const v=this.getReservationType(d.type),T={testId:p.id,hypothesisId:d.id,testType:d.type,reservationType:v,isThemeTest:d.type==="theme",themeId:d.themeId,createdAt:new Date,isRealized:!1,entryCriteriaKey:o};this.state.temporary.testReservations[o]=T,this.state.temporary.rolledEntryCriteria.push(o),this.log("Created %s reservation for test '%s' (criteria: %s)",v,p.id,o);for(const m of a)m.id!==p.id&&this.markTestAsBlocked(m,o)}this.persistTemporaryState()}createSingleReservation(t,e){if(this.state.temporary.rolledEntryCriteria.includes(e)){this.log("Already rolled for pool '%s', skipping",e);return}if(t.some(u=>this.state.essential.visitorTests.some(p=>p.testId===u.id&&!p.isInvalid))){this.log("Visitor already has VT for pool '%s', skipping",e),this.state.temporary.rolledEntryCriteria.push(e);return}if(t.length===0){this.log("No tests in pool '%s'",e);return}const s=[...t].sort((u,p)=>u.id.localeCompare(p.id));this.log("Test dice roll for pool '%s' - available tests: %o",e,s.map(u=>({id:u.id,title:u.title,criteria:this.getEntryCriteriaKey(u)})));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,t.length,n.id,n.title);const o=this.pickHypothesis(n);if(!o){this.log("No hypothesis picked for test '%s'",n.id);return}const a=this.getReservationType(o.type),l=this.getEntryCriteriaKey(n),h={testId:n.id,hypothesisId:o.id,testType:o.type,reservationType:a,isThemeTest:o.type==="theme",themeId:o.themeId,createdAt:new Date,isRealized:!1,entryCriteriaKey:l};
20this.state.temporary.testReservations[l]=h,this.state.temporary.rolledEntryCriteria.push(e),this.log("Created %s reservation for test '%s' from pool '%s' (criteria: %s)",a,n.id,e,l);for(const u of t)u.id!==n.id&&this.markTestAsBlocked(u,`pool:${e}`);this.persistTemporaryState()}markTestAsBlocked(t,e){this.state.essential.visitorTests.some(i=>i.testId===t.id)||(this.log("Blocking visitor from test '%s' (reason: %s)",t.id,e),this.state.essential.visitorTests.push({createdAt:new Date,testId:t.id,hypothesisId:null,isThemeTest:t.hypotheses.some(i=>i.type==="theme"),shouldSendToGa:!1,isSaved:!0,isInvalid:!0,themeId:void 0}))}realizeReservationForCriteria(t){var s;const e=(s=this.state.temporary.testReservations)==null?void 0:s[t];if(!e)return this.log("No reservation found for criteria '%s'",t),!1;if(e.isRealized)return this.log("Reservation already realized for criteria '%s'",t),!1;if(this.state.essential.visitorTests.some(r=>r.testId===e.testId&&!r.isInvalid))return this.log("Visitor already assigned to test '%s'",e.testId),!1;const i=this.getHypothesis(e.hypothesisId);return i?(e.isRealized=!0,this.persistTemporaryState(),this.queueAddVisitorToTest(e.testId,i),this.saveState(),this.log("Realized reservation for test '%s' (criteria: %s)",e.testId,t),!0):(this.log("Hypothesis '%s' not found",e.hypothesisId),!1)}getActiveReservations(){return this.state.temporary.testReservations??{}}getReservationForCurrentPage(){const t=this.getActiveReservations();for(const[e,i]of Object.entries(t)){if(i.isRealized)continue;const s=this.testConfigs.find(r=>r.id===i.testId);if(!(!s||s.status!=="active")&&this.doesCurrentPageMatchEntryCriteria(e))return i}return null}getReservationForTest(t){const e=this.getActiveReservations();return Object.values(e).find(i=>i.testId===t)??null}getReservationTestType(){const t=this.getActiveReservations(),e=Object.values(t);if(e.length===0)return null;for(const i of e)if(i.isThemeTest)return"theme";for(const i of e)if(i.testType==="price")return"price";return e.some(i=>!i.isRealized)?"templateOrUrlRedirect":null}hasPriceTests(t){return t.some(e=>e.hypotheses.some(i=>i.type==="price"))}getPriceTestProductIds(){var e;if(this._priceTestProductIds)return this._priceTestProductIds;const t=new Set;for(const i of this.testConfigs)for(const s of i.hypotheses)if(s.type==="price"){for(const r of s.domSelectors||[]){const n=r.cssSelector.match(/data-sl-attribute-(?:p|cap)="(\d+)"/);n!=null&&n[1]&&t.add(n[1])}if((e=s.priceData)!=null&&e.v)for(const[r]of s.priceData.v)t.add(r)}return this._priceTestProductIds=t,this.log("Built price test product ID cache with %d products",t.size),t}isProductInAnyPriceTest(t){return this.getPriceTestProductIds().has(t)}visitorActiveTestTypeWithReservations(){const t=this.getActiveReservations();for(const r of Object.values(t)){if(r.isThemeTest)return"theme";if(r.testType==="price")return"price"}if(Object.values(t).some(r=>!r.isRealized)){if(this.state.temporary.testCategory==="global")for(const n of Object.values(t)){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=>{const n=this.getHypothesis(r.hypothesisId);return(n==null?void 0:n.type)==="price"})?"price":i.some(r=>r.isThemeTest)?"theme":"templateOrUrlRedirect"}applyControlForAudienceFilteredPriceTests(){const t=this.testConfigs.filter(s=>s.status==="active"&&s.hypotheses.some(r=>r.type==="price"));if(t.length===0)return;const e=this.testsFilteredByAudience.filter(s=>s.hypotheses.some(r=>r.type==="price")),i=t.filter(s=>!e.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(l=>l.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(l=>{try{return new RegExp(F(l)).test(o.toString())}catch{return!1}})&&(this.log("Applying control selectors for audience-filtered price test '%s'",s.id),L(document,{testId:s.id,hypothesisId:r.id,selectors:n},()=>{this.log("Control selectors applied for audience-filtered visitor, no metrics tracked")}
20),this.updatePriceTestHiddenInputs(s.id,"control",!1))}}}pickHypothesis(t){let e=Math.random();const i=t.hypotheses.reduce((r,n)=>r+n.visitorCount,0);return t.hypotheses.sort((r,n)=>r.isControl?n.isControl?0:-1:n.isControl?1:0).reduce((r,n)=>{if(r!==null)return r;const a=t.hypotheses.reduce((l,h)=>l&&h.visitorCount>20,!0)?n.visitorCount/i-n.trafficPercentage:0;return e<=n.trafficPercentage-a?n:(e-=n.trafficPercentage,null)},null)}typeFromTemplate(){switch(template.type){case"collection-list":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(t){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(t),0),window.setTimeout(()=>void this.syncAllEvents(),2e3)}async syncAllEvents(){const t=async()=>{if(this.isSyncing){window.setTimeout(()=>void(async()=>await t())(),500);return}try{this.isSyncing=!0,this.syncGAEvents(),await this.syncEvents()}finally{this.isSyncing=!1}};await t()}async syncEvents(){var i,s;if(!this.state.essential.consentApproved||!this.shopifyAnalyticsId||this.state.analytics.queue.length===0)return;const t=this.state.analytics.queue.length,e=this.state.analytics.queue.splice(0,t);this.log("Syncing %s events",t);try{const r={shop:this.shop,visitorDetails:{shopifyAnalyticsId:this.shopifyAnalyticsId,device:((i=this.state.analytics.visitor)==null?void 0:i.device)??this.device,country:((s=this.state.analytics.visitor)==null?void 0:s.country)??null,...this.state.essential.initialState},events:this.state.essential.visitorTests.filter(o=>!o.isInvalid&&!o.isSaved&&o.hypothesisId!=null).map(o=>new Y(o.testId,o.hypothesisId,o.createdAt)).concat(e)};await this.sendEvents(r);const n=await this.getVisitor(this.shopifyAnalyticsId);n!==null&&this.updateLocalVisitor(n);for(const o of this.state.essential.visitorTests.filter(a=>!a.isInvalid&&!a.isSaved))o.isSaved=!0,o.savedAt=Date.now()}catch{this.state.analytics.queue.splice(0,0,...e)}finally{this.saveState()}}syncGAEvents(){if(!this.gaConfig.sendEvents){if(G)return;G=!0,this.log("UseGtag is false — skipping GA Events");return}if(this.isSyncingGA){this.log("Already syncing GA - skipping GA events");return}const t=this.state.essential.visitorTests.filter(e=>e.shouldSendToGa);t.length!==0&&(this.isSyncingGA=!0,this.log("Syncing %s GA Events",t.length),Promise.allSettled(t.map(e=>this.sendGAEvent(e))).then(()=>this.log("All gtag events sent")).finally(()=>this.isSyncingGA=!1))}sendGAEvent(t){return new Promise(e=>{this.log("Sending GA Event for test %s, hypothesis %s",t.testId,t.hypothesisId);const i=()=>{this.log("GA acknowledged event for hypothesis %s",t.hypothesisId),t.shouldSendToGa=!1,this.persistEssentialState(),e()},s={exp_variant_string:`SL-${t.testId}-${t.hypothesisId}`};
20this.shopliftDebug&&Object.assign(s,{debug_mode:!0});function r(n,o,a){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(t){let e;({visitorTests:e,...this.state.analytics.visitor}=t),this.log("updateLocalVisitor - server returned %d tests: %o",e.length,e.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=5*60*1e3;for(const s of this.state.essential.visitorTests.filter(r=>r.isSaved&&(!r.savedAt||Date.now()-r.savedAt>i)&&!e.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 e){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==null?void 0:o.hypothesisId,s.hypothesisId,o==null?void 0:o.isInvalid),s.isInvalid=!1,s.shouldSendToGa=(o==null?void 0:o.shouldSendToGa)??!1,s.testType=o==null?void 0:o.testType,s.assignedTo=o==null?void 0:o.assignedTo,s.testTitle=o==null?void 0: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(t){try{return await this.makeJsonRequest({method:"get",url:`${this.eventHost}/api/v0/visitors/by-key/${this.shop}/${t}`})}catch{return null}}async sendEvents(t){await this.makeRequest({method:"post",url:`${this.eventHost}/api/v0/events`,data:JSON.stringify(t)})}getUTMValue(t){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]===t)return r[1]||null}return null}hidePage(t){this.log("Hiding page"),this.cssHideClass&&!window.document.documentElement.classList.contains(this.cssHideClass)&&(window.document.documentElement.classList.add(this.cssHideClass),t||setTimeout(this.removeAsyncHide(this.cssHideClass),2e3))}showPage(){this.cssHideClass&&this.removeAsyncHide(this.cssHideClass)()}getDeviceType(){function t(){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 )|
20sy(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 e(){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 t()?"mobile":e()?"tablet":"desktop"}removeAsyncHide(t){return()=>{t&&window.document.documentElement.classList.remove(t)}}async getCartState(){try{let t=await this.makeJsonRequest({method:"get",url:`${window.location.origin}/cart.js`});return t===null||(t.note===null&&(t=await this.makeJsonRequest({method:"post",url:`${window.location.origin}/cart/update.js`,data:JSON.stringify({note:""})})),t==null)?null:{token:t.token,total_price:t.total_price,total_discount:t.total_discount,currency:t.currency,items_subtotal_price:t.items_subtotal_price,items:t.items.map(e=>({quantity:e.quantity,variant_id:e.variant_id,key:e.key,price:e.price,final_line_price:e.final_line_price,sku:e.sku,product_id:e.product_id}))}}catch(t){return this.log("Error sending cart info",t),null}}ensureCartAttributesForExistingPriceTests(t){try{if(this.log("Checking visitor assignments for active price tests"),t&&this.state.temporary.previewConfig){const e=this.state.temporary.previewConfig;this.log("Using preview config for merchant:",e.testId);let i="variant";if(e.variants&&e.variants.length>0){const s=e.variants.find(r=>r.id===e.currentVariant);s&&s.isControl&&(i="control")}this.log("Merchant preview - updating hidden inputs:",e.testId,i),this.updatePriceTestHiddenInputs(e.testId,i,!0);return}for(const e of this.state.essential.visitorTests){const i=this.testConfigs.find(n=>n.id===e.testId);if(!i){this.log("Test config not found:",e.testId);continue}const s=i.hypotheses.find(n=>n.id===e.hypothesisId);if(!s||s.type!=="price")continue;const r=s.isControl?"control":"variant";this.log("Updating hidden inputs for price test:",e.testId,r),this.updatePriceTestHiddenInputs(e.testId,r,t)}}catch(e){this.log("Error ensuring cart attributes for existing price tests:",e)}}updatePriceTestHiddenInputs(t,e,i){try{this.cleanupPriceTestObservers();const s=`${t}:${e}:${i?"t":"f"}`,r=y=>{var g;const f=y.getAttribute("data-sl-pid");if(!f)return!0;if(i&&this.state.temporary.previewConfig){const S=this.state.temporary.previewConfig,I=e==="control"?"a":"b",P=S.variants.find(_=>_.label===I);if(!P)return!1;for(const _ of P.domSelectors||[]){const j=_.cssSelector.match(/data-sl-attribute-(?:p|cap)="(\d+)"/);if(j){const K=j[1];if(this.log(`Extracted ID from selector: ${K}, comparing to: ${f}`),K===f)return this.log("Product ID match found in preview config:",f,"variant:",P.label),!0}else this.log(`Could not extract ID from selector: ${_.cssSelector}`)}return this.log("No product ID match in preview config for:",f,"variant:",I),!1}const b=this.testConfigs.find(S=>S.id===t);if(!b)return this.log("Test config not found for testId:",t),!1;for(const S of b.hypotheses||[]){for(const I of S.domSelectors||[]){const P=I.cssSelector.match(/data-sl-attribute-(?:p|cap)="(\d+)"/);if(P&&P[1]===f)return this.log("Product ID match found in domSelectors:",f,"for test:",t),!0}if((g=S.priceData)!=null&&g.v){for(const I of S.priceData.v)if(I[0]===f)return this.log("Product ID match found in priceData:",f,"for test:",t),!0}}return this.log("No product ID match for:",f,"in test:",t),!1},n=new Set;let o=!1,a=null;const l=(y,f)=>{if(document.querySelectorAll("[data-sl-attribute-p]").forEach(g=>{if(g instanceof Element&&g.nodeType===Node.ELEMENT_NODE&&g.isConnected&&document.contains(g))try{y.observe(g,{childList:!0,subtree:!0,characterData:!0,characterDataOldValue:!0,attributes:!1})}catch(S){this.log(`Failed to observe element (${f}):`,S)}}),document.body&&document.body.isConnected)try{y.observe(document.body,{childList:!0,subtree:!0,characterData:!0,characterDataOldValue:!0,attributes:!1})}catch(g){this.log(`Failed to observe document.body (${f}):`,g)}},h=(y,f,b,g)=>{const S=y.filter(I=>{const P=I.cssSelector.match(/data-sl-attribute-(?:p|cap)="(\d+)"/);return P&&P[1]===g});this.log(`Applying ${b} DOM selectors, total: ${y.length}, filtered: ${S.length}`),S.length>0&&L(document,{testId:t,hypothesisId:f,selectors:S})},u=(y,f)=>{this.log(`Applying DOM selector changes for product ID: ${y}`),f.disconnect(),o=!0;try{if(i&&this.state.temporary.previewConfig){const b=e==="control"?"a":"b",g=this.state.temporary.previewConfig.variants.find(S=>S.label===b);if(!(g!=null&&g.domSelectors)){this.log(`No DOM selectors found for preview variant: ${b}`);return}h(g.domSelectors,g.id,"preview config",y)}else{const b=this.testConfigs.find(S=>S.id===t);if(!b){this.log(`No test config found for testId: ${t}`);return}const g=b.hypotheses.find(S=>e==="control"?S.isControl:!S.isControl);if(!(g!=null&&g.domSelectors)){this.log(`No DOM selectors found for assignment: ${e}`);return}h(g.domSelectors,g.id,"live config",y)}}finally{a!==null&&clearTimeout(a),a=window.setTimeout(()=>{o=!1,a=null,l(f,"reconnection"),this.log("Re-established innerHTML observer after DOM changes")}
20,50)}},p=new MutationObserver(y=>{if(!o)for(const f of y){if(f.type!=="childList"&&f.type!=="characterData")continue;let b=f.target;f.type==="characterData"&&(b=f.target.parentElement||f.target.parentNode);let g=b,S=g.getAttribute("data-sl-attribute-p");for(;!S&&g.parentElement;)g=g.parentElement,S=g.getAttribute("data-sl-attribute-p");if(!S)continue;const I=g.innerHTML||g.textContent||"";let P="";f.type==="characterData"&&f.oldValue!==null&&(P=f.oldValue),this.log(`innerHTML changed on element with data-sl-attribute-p="${S}"`),P&&this.log(`Previous content: "${P}"`),this.log(`Current content: "${I}"`),u(S,p)}});l(p,"initial setup"),n.add(p);const d=new MutationObserver(y=>{y.forEach(f=>{f.addedNodes.forEach(b=>{if(b.nodeType===Node.ELEMENT_NODE){const g=b;T(g);const S=g.matches('input[name="properties[_slpt]"]')?[g]:g.querySelectorAll('input[name="properties[_slpt]"]');S.length>0&&this.log(`MutationObserver found ${S.length} new hidden input(s)`),S.forEach(I=>{const P=I.getAttribute("data-sl-pid");if(this.log(`MutationObserver checking new input with data-sl-pid="${P}"`),r(I))I.value!==s&&(I.value=s,this.log("Updated newly added hidden input:",s)),m(I);else{const _=I.getAttribute("data-sl-pid");_&&this.isProductInAnyPriceTest(_)?this.log("Preserving hidden input for product ID '%s' - belongs to a different price test",_):(I.remove(),this.log("Removed newly added non-matching hidden input for product ID:",_))}})}})})});n.add(d);const v=new MutationObserver(y=>{y.forEach(f=>{if(f.type==="attributes"&&f.attributeName==="data-sl-pid"){const b=f.target;if(this.log("AttributeObserver detected data-sl-pid attribute change on:",b.tagName),b.matches('input[name="properties[_slpt]"]')){const g=b,S=f.oldValue,I=g.getAttribute("data-sl-pid");this.log(`data-sl-pid changed from "${S}" to "${I}" - triggering payment placement updates`),r(g)?(g.value!==s&&(g.value=s,this.log("Updated hidden input after data-sl-pid change:",s)),I&&u(I,p),this.log("Re-running payment placement updates after variant change"),T(document.body)):I&&this.isProductInAnyPriceTest(I)?this.log("Preserving hidden input for product ID '%s' - belongs to a different price test",I):(g.remove(),this.log("Removed non-matching hidden input after data-sl-pid change:",I))}}})});n.add(v);const T=y=>{y.tagName==="SHOPIFY-PAYMENT-TERMS"&&(this.log("MutationObserver found new shopify-payment-terms element"),this.updateShopifyPaymentTerms(t,e));const f=y.querySelectorAll("shopify-payment-terms");f.length>0&&(this.log(`MutationObserver found ${f.length} shopify-payment-terms in added node`),this.updateShopifyPaymentTerms(t,e)),y.tagName==="AFTERPAY-PLACEMENT"&&(this.log("MutationObserver found new afterpay-placement element"),this.updateAfterpayPlacements(t,e,"afterpay"));const b=y.querySelectorAll("afterpay-placement");b.length>0&&(this.log(`MutationObserver found ${b.length} afterpay-placement in added node`),this.updateAfterpayPlacements(t,e,"afterpay")),y.tagName==="SQUARE-PLACEMENT"&&(this.log("MutationObserver found new square-placement element"),this.updateAfterpayPlacements(t,e,"square"));const g=y.querySelectorAll("square-placement");g.length>0&&(this.log(`MutationObserver found ${g.length} square-placement in added node`),this.updateAfterpayPlacements(t,e,"square")),y.tagName==="KLARNA-PLACEMENT"&&(this.log("MutationObserver found new klarna-placement element"),this.updateKlarnaPlacements(t,e));const S=y.querySelectorAll("klarna-placement");S.length>0&&(this.log(`MutationObserver found ${S.length} klarna-placement in added node`),this.updateKlarnaPlacements(t,e))},m=y=>{v.observe(y,{attributes:!0,attributeFilter:["data-sl-pid"],attributeOldValue:!0,subtree:!1});const f=y.getAttribute("data-sl-pid");this.log(`Started AttributeObserver on specific input with data-sl-pid="${f}"`)},C=()=>{const y=document.querySelectorAll('input[name="properties[_slpt]"]');this.log(`Found ${y.length} existing hidden inputs to check`),y.forEach(f=>{const b=f.getAttribute("data-sl-pid");this.log(`Checking existing input with data-sl-pid="${b}"`),r(f)?(f.value=s,this.log("Updated existing hidden input:",s),b&&(this.log("Applying initial DOM selector changes for existing product"),u(b,p)),m(f)):b&&this.isProductInAnyPriceTest(b)?this.log("Preserving hidden input for product ID '%s' - belongs to a different price test",b):(f.remove(),this.log("Removed non-matching hidden input for product ID:",b))})},A=()=>{document.body?(d.observe(document.body,{childList:!0,subtree:!0}),this.log("Started MutationObserver on document.body"),C(),T(document.body)):document.readyState==="loading"?document.addEventListener("DOMContentLoaded",()=>{document.body&&(d.observe(document.body,{childList:!0,subtree:!0}),this.log("Started MutationObserver after DOMContentLoaded"),C(),T(document.body))}):(this.log("Set timeout on observer"),setTimeout(A,10))};A(),window.__shopliftPriceTestObservers=n,window.__shopliftPriceTestValue=s,this.log("Set up DOM observer for price test hidden input
20s")}catch(s){this.log("Error updating price test hidden inputs:",s)}}updateKlarnaPlacements(t,e){this.updatePlacementElements(t,e,"klarna-placement",(i,s)=>{i.setAttribute("data-purchase-amount",s.toString())})}cleanupPriceTestObservers(){const t=window.__shopliftPriceTestObservers;t&&(t.forEach(e=>{e.disconnect()}),t.clear(),this.log("Cleaned up existing price test observers")),delete window.__shopliftPriceTestObservers,delete window.__shopliftPriceTestValue}updateAfterpayPlacements(t,e,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(t,e,s,(n,o)=>{if(i==="afterpay"){const a=(o/100).toFixed(2);n.setAttribute("data-amount",a)}else n.setAttribute("data-amount",o.toString())}),this.log("updateAfterpayPlacements completed")}updatePlacementElements(t,e,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 a=e==="control"?"a":"b",l=this.state.temporary.previewConfig.variants.find(h=>h.label===a);if(!(l!=null&&l.domSelectors)){this.log(`No variant found for label ${a} in preview config for ${i}`);return}n=l.domSelectors,this.log(`Using preview config for ${i} in merchant mode, variant: ${a}`)}else{const a=this.testConfigs.find(h=>h.id===t);if(!a){this.log(`No testConfig found for id: ${t} - early return`);return}const l=a.hypotheses.find(h=>e==="control"?h.isControl:!h.isControl);if(!(l!=null&&l.domSelectors)){this.log(`No hypothesis or domSelectors found for assignment: ${e} - early return`);return}n=l.domSelectors}const o=new RegExp(`${this.DATA_SL_ATTRIBUTE_P}=["'](\\d+)["']`);r.forEach(a=>{let l=null;const h=a.parentElement;if(h&&(l=h.querySelector('input[name="properties[_slpt]"]')),l||(l=a.querySelector('input[name="properties[_slpt]"]')),!l){this.log(`No hidden input found for ${i} element`);return}const u=l.getAttribute("data-sl-pid");if(!u){this.log("Hidden input has no data-sl-pid attribute - skipping");return}const p=n.find(m=>{const C=m.cssSelector.match(o);return C&&C[1]===u});if(!p){this.log(`No matching selector found for productId: ${u} - skipping element`);return}const d=p.actions.find(m=>m.scope==="price");if(!(d!=null&&d.value)){this.log("No price action or value found - skipping element");return}const v=parseFloat(d.value.replace(/[^0-9.]/g,""));if(Number.isNaN(v)){this.log(`Invalid price "${d.value}" for product ${u} - skipping`);return}const T=Math.round(v*100);s(a,T)}),this.log(`updatePlacementElements completed for ${i}`)}updateShopifyPaymentTerms(t,e){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=e==="control"?"a":"b",o=this.state.temporary.previewConfig.variants.find(a=>a.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(a=>a.id===t);if(!n)return;const o=n.hypotheses.find(a=>e==="control"?a.isControl===!0:a.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 a=s.find(l=>{const h=l.cssSelector.match(r);return h&&h[1]===o});if(a){const l=a.actions.find(h=>h.scope==="price");if(l&&l.value){const h=n.getAttribute("shopify-meta");if(h)try{const u=JSON.parse(h);if(u.variants&&Array.isArray(u.variants)){const p=u.variants.find(d=>{var v;return((v=d.id)==null?void 0:v.toString())===o});if(p){p.full_price=l.value;const d=parseFloat(l.value.replace(/[^0-9.]/g,""));if(p.number_of_payment_terms&&p.number_of_payment_terms>1){const v=d/p.number_of_payment_terms;p.price_per_term=`$${v.toFixed(2)}`}n.setAttribute("shopify-meta",JSON.stringify(u))}}}catch(u){this.log("Error parsing/updating shoplift-meta:",u)}}}})}
20async makeJsonRequest(t){const e=await this.makeRequest(t);return e===null?null:JSON.parse(await e.text(),O)}async makeRequest(t){const{url:e,method:i,headers:s,data:r,signal:n}=t,o=new Headers;if(s)for(const l in s)o.append(l,s[l]);(!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 a=await this.fetch(e,{method:i,headers:o,body:r,signal:n});if(!a.ok){if(a.status===204)return null;if(a.status===422){const l=await a.json();if(typeof l<"u"&&l.isBot)throw new N}throw new Error(`Error sending shoplift request ${a.status}`)}return a}queueAddVisitorToTest(t,e){if(this.state.essential.visitorTests.some(s=>s.testId===t))return;const i=this.testConfigs.find(s=>s.id===t);if(this.state.essential.visitorTests.push({createdAt:new Date,testId:t,hypothesisId:e.id,isThemeTest:e.type==="theme",themeId:e.themeId,isSaved:!1,isInvalid:!1,shouldSendToGa:!0,testType:e.type,assignedTo:e.isControl?"control":"variant",testTitle:i==null?void 0:i.title}),e.type==="price"){const s=e.isControl?"control":"variant";this.log("Price test assignment detected, updating cart attributes:",t,s),this.updatePriceTestHiddenInputs(t,s,!1)}}queueCartUpdate(t){this.queueEvent(new Q(t))}queuePageView(t){this.queueEvent(new Z(t))}queueEvent(t){!this.state.essential.consentApproved&&this.state.essential.hasConsentInteraction||this.state.analytics.queue.length>10||this.state.analytics.queue.push(t)}legacyGetLocalStorageVisitor(){const t=this.localStorageGet(this.legacySessionKey);if(t)try{return JSON.parse(t,O)}catch{}return null}pruneStateAndSave(){this.state.essential.visitorTests=this.state.essential.visitorTests.filter(t=>this.testConfigs.some(e=>e.id==t.testId)||this.inactiveTestConfigs.filter(e=>this.testIsPaused(e)).some(e=>e.id===t.testId)),this.saveState()}saveState(){this.persistEssentialState(),this.persistAnalyticsState()}loadState(){const t=this.loadAnalyticsState(),e={analytics:t,essential:this.loadEssentialState(t),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 e.analytics.visitor===null&&r&&({visitorTests:e.essential.visitorTests,...e.analytics.visitor}=r,e.essential.isFirstLoad=!1,e.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)),!e.essential.consentApproved&&e.essential.hasConsentInteraction&&this.deleteLocalStorage(this.analyticsSessionKey),e}loadEssentialState(t){var o;const e=this.loadLocalStorage(this.essentialSessionKey),i=this.loadCookie(this.essentialSessionKey),s=this.getInitialState();(o=t.visitor)!=null&&o.device&&(s.device=t.visitor.device);const r={timestamp:new Date,consentApproved:!1,hasConsentInteraction:!1,debugMode:!1,initialState:s,visitorTests:[],isFirstLoad:!0},n=[e,i].filter(a=>a!==null).sort((a,l)=>+l.timestamp-+a.timestamp)[0]??r;return n.initialState||(t.visitor!==null?n.initialState=t.visitor:(n.initialState=s,n.initialState.createdAt=n.timestamp)),n}loadAnalyticsState(){const t=this.loadLocalStorage(this.analyticsSessionKey),e=this.loadCookie(this.analyticsSessionKey),i={timestamp:new Date,visitor:null,queue:[]},s=[t,e].filter(r=>r!==null).sort((r,n)=>+n.timestamp-+r.timestamp)[0]??i;return s.queue.length===0&&t&&t.queue.length>1&&(s.queue=t.queue),s}loadTemporaryState(){const t=this.sessionStorageGet(this.temporarySessionKey),e=t?JSON.parse(t,O):null,i=this.loadCookie(this.temporarySessionKey);return e??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.persistCookieState(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.persist
20CookieState(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(t){const e=this.localStorageGet(t);if(e===null)return null;try{return JSON.parse(e,O)}catch{return null}}loadCookie(t){const e=this.getCookie(t);if(e===null)return null;try{return JSON.parse(e,O)}catch{return null}}persistLocalStorageState(t,e){this.localStorageSet(t,JSON.stringify(e))}persistCookieState(t,e,i=!1){const s=JSON.stringify(e),r=i?"":`expires=${new Date(new Date().getTime()+864e5*365).toUTCString()};`;document.cookie=`${t}=${s};domain=.${window.location.hostname};path=/;SameSite=Strict;${r}`}deleteCookie(t){const e=new Date(0).toUTCString();document.cookie=`${t}=;domain=.${window.location.hostname};path=/;expires=${e};`}deleteLocalStorage(t){window.localStorage.removeItem(t)}getChannel(t){var i;return((i=[{"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
20andex\.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
20pera\.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)}
20,{"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
20akao|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
20andex\.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(s=>s.test(t)))==null?void 0:i.name)??"other"}getShopifyAnalyticsId(){return this.getCookie("_shopify_y")}legacyGetCookieVisitor(){const t=this.getCookie("SHOPLIFT");return t===null?null:JSON.parse(t,O)}getCookie(t){const e=this.cookie.split("; ").filter(i=>i.split("=").at(0)===t).at(0);return e===void 0?null:e.split("=").slice(1).join("=")}monitorConsentChange(){document.addEventListener("visitorConsentCollected",t=>void(async()=>await this.onConsentChange(t.detail.analyticsAllowed,!0))()),document.readyState==="loading"?document.addEventListener("DOMContentLoaded",()=>this.loadShopifyConsentApiWithRetry()):this.loadShopifyConsentApiWithRetry()}loadShopifyConsentApiWithRetry(){let t=0;const e=()=>{this.loadShopifyConsentApi()||t++<10&&window.setTimeout(e,100)};e()}loadShopifyConsentApi(){if(window.Shopify){this.log("Loading Shopify features");const t=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"),e=window.setTimeout(()=>void(async()=>await t())(),1e3);return}const i=window.Shopify.customerPrivacy.getTrackingConsent();await this.onConsentChange(window.Shopify.customerPrivacy.analyticsProcessingAllowed(),i==="yes")};let e=window.setTimeout(()=>void(async()=>await t())(),5e3);return window.Shopify.loadFeatures([{name:"consent-tracking-api",version:"0.1"}],i=>{(async()=>{if(window.clearTimeout(e),i){this.log("Error loading consent tracking",i);return}await t()})()}),!0}return!1}async onConsentChange(t,e){try{if(this.log("Consent change detected",t,e),this.state.essential.consentApproved=t,this.state.essential.hasConsentInteraction=e,!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"}clearThemeBar(t,e,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"),e&&(this.log("Removing theme bar"),n.remove()),t?this.makeRequest({url:`${this.eventHost}/api/v0/logs`,method:"post",data:JSON.stringify({...this.debugState(),stateAtEvaluation:s},H)}):Promise.resolve(null)))).catch(r=>console.error(r))}waitForElement(t,e){return new Promise(i=>{const s=document.querySelector(e);if(s){i(s);return}const r=new MutationObserver(n=>{const o=document.querySelector(e);if(o){r.disconnect(),i(o);return}});r.observe(t??document.documentElement,{childList:!0})})}setDebug(t){this.state.essential.debugMode=t,this.saveState()}log(t,...e){let i=0;const s=t.replace(/%[sdoOfF]/g,r=>{if(i>=e.length)return r;const n=e[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] ${t}`,...e)}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
20:this.getCookie("is_shopify_merchant"),themeId,url:window.location.href,isThemePreview,themeRole,gaConfig:this.gaConfig},logHistory:this.logHistory}}createViewportObserver(t,e={}){const{threshold:i=this.VIEWPORT_TRACK_THRESHOLD,triggerOnce:s=!0}=e,r=new Set;return new IntersectionObserver(n=>{n.forEach(o=>{if(o.isIntersecting&&!r.has(o.target)){const a=o.target,l=a.getAttribute(this.DATA_SL_TEST_ID);l&&(t(l,a),s&&r.add(a))}})},{threshold:i})}applyChangesWithViewport(t,e,i,s){const r=e.selectorsForViewportTracking??e.selectors,n=o=>{if(this.state.essential.visitorTests.some(p=>p.testId===o)||this.activeViewportObservers.has(o))return;const a=[];if(r.forEach(p=>{t.querySelectorAll(p.cssSelector).forEach(v=>a.push(v))}),a.length===0)return;let l=!1;const h=()=>{l||(l=!0,i(o),u.disconnect(),this.activeViewportObservers.delete(o))},u=this.createViewportObserver(()=>{h()},{triggerOnce:!0,...s});this.activeViewportObservers.set(o,u),this.log(`Created viewport observer for test ${o}, observing ${a.length} elements`),a.forEach(p=>{p.setAttribute(this.DATA_SL_TEST_ID,String(o)),u.observe(p)}),setTimeout(()=>{l||a.forEach(p=>{const d=p.getBoundingClientRect(),v=(s==null?void 0:s.threshold)??this.VIEWPORT_TRACK_THRESHOLD,T=Math.min(d.bottom,window.innerHeight)-Math.max(d.top,0),m=Math.min(d.right,window.innerWidth)-Math.max(d.left,0);d.top<window.innerHeight&&d.bottom>0&&d.left<window.innerWidth&&d.right>0&&T>0&&m>0&&T>=d.height*v&&(this.log(`Price element already visible in viewport for test ${o}:`,p),h())})},100)};e.selectors.length>0&&L(t,e,()=>{}),X(t,{testId:e.testId,hypothesisId:e.hypothesisId,selectors:r},o=>{n(o)})}applyPriceTestWithMapLookup(t,e,i,s){if(!e.priceData){this.log("No price data for hypothesis '%s'",e.id);return}this.log("Hypothesis '%s' isControl=%s, priceData has %d variants",e.id,e.isControl,e.priceData.v.length);const r=e.priceData.v.slice(0,3);for(const[m,C,A]of r)this.log(" Sample priceData: variant=%s, price=%d, compareAt=%d",m,C,A);const n=ht(e.priceData),o=new Set;for(const m of i)if(m.priceData)for(const[C]of m.priceData.v)o.add(C);this.log("Price test Map lookup: %d products in hypothesis, %d total products to track",n.size,o.size);const a=e.priceData,l=new WeakSet;let h=!1;const u="[data-sl-attribute-p], [data-sl-attribute-cap], [data-sl-attribute-discount]",p=m=>{if(l.has(m))return;const C=m.getAttribute("data-sl-attribute-p"),A=m.getAttribute("data-sl-attribute-cap"),y=m.getAttribute("data-sl-attribute-discount"),f=C||A||y;if(!f||!o.has(f))return;l.add(m);const b=n.get(f);b&&(this.log("Applying price for product %s: %d cents (compare at: %d cents)",f,b.priceInCents,b.compareAtPriceInCents),pt(m,f,b,a),this.log("Applied price to element for product %s",f)),!h&&!this.state.essential.visitorTests.some(g=>g.testId===t)&&(m.setAttribute(this.DATA_SL_TEST_ID,String(t)),this.setupElementViewportTracking(m,t,()=>{h||(h=!0,s(t))}))},d=()=>{const m=document.querySelectorAll(u);this.log("Scanning for price elements, found: %d",m.length),m.forEach(p)},v=new MutationObserver(m=>{for(const C of m)C.type==="childList"&&C.addedNodes.forEach(A=>{if(A.nodeType===Node.ELEMENT_NODE){const y=A;(y.hasAttribute("data-sl-attribute-p")||y.hasAttribute("data-sl-attribute-cap")||y.hasAttribute("data-sl-attribute-discount"))&&p(y),y.querySelectorAll(u).forEach(p)}}),C.type==="attributes"&&C.target instanceof Element&&p(C.target)}),T=document.body||document.documentElement;v.observe(T,{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"),d(),document.readyState==="loading"&&document.addEventListener("DOMContentLoaded",()=>{this.log("DOMContentLoaded - rescanning for price elements"),d()}),setTimeout(()=>{this.log("Delayed rescan for price elements"),d()},100),setTimeout(()=>{this.log("Final rescan for price elements"),d()},500)}setupElementViewportTracking(t,e,i){const s=this.VIEWPORT_TRACK_THRESHOLD,r=t.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",e),i();return}const l=new IntersectionObserver(h=>{for(const u of h)if(u.isIntersecting&&u.intersectionRatio>=s){this.log("Price element entered viewport for test %s",e),l.disconnect(),i();break}},{threshold:s});l.observe(t)}debug(){const t=this.debugState();console.log(JSON.stringify(t,H,2))}}(async function(){window.shopliftInstance||(window.shopliftInstance=new ft("love-depot-india.myshopify.com","https://app.shoplift.ai","https://events.shoplift.ai",false,false,false,{"sendEvents":false,"mode":"gtag"},false,1000,[],[]),await window.shopliftInstance.init())})()})(); })("/", { suffix: "", type: "search" }, "main", 139953668165, false)</script>
20 21 <!-- End of Shoplift scripts --> 22 23 <meta charset="utf-8"> 24 <meta 25 name="viewport" 26 content="width=device-width, initial-scale=1.0, height=device-height, minimum-scale=1.0, maximum-scale=5.0" 27 > 28 <meta name="robots" content="index"> 29 30 <title> 31 Search 32 </title><meta name="description" content="Buy sex toys, condoms & intimacy products at Love Depot. India’s trusted pleasure superstore! 100% discreet delivery with easy UPI & EMI payment options."><link rel="canonical" href="https://lovedepot.com/search"> 33 <link rel="preconnect" href="https://fonts.googleapis.com"> 34 <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> 35 <link 36 rel="preload" 37 href="https://fonts.googleapis.com/css2?family=Literata:ital,wght@0,100;0,300;0,400;0,500;0,600;0,700;1,100;1,300;1,400;1,500;1,600;1,700&display=swap" 38 as="style" 39 onload="this.onload=null;this.rel='stylesheet'" 40 > 41 <noscript 42 ><link 43 rel="stylesheet" 44 href="https://fonts.googleapis.com/css2?family=Literata:ital,wght@0,100;0,300;0,400;0,500;0,600;0,700;1,100;1,300;1,400;1,500;1,600;1,700&display=swap" 45 ></noscript><link rel="shortcut icon" href="//lovedepot.com/cdn/shop/files/ld_favicon_180_transparent_1.png?v=1791278580&width=96"> 46 <link rel="apple-touch-icon" href="//lovedepot.com/cdn/shop/files/ld_favicon_180_transparent_1.png?v=1791278580&width=180"><link rel="preload" href="//lovedepot.com/cdn/fonts/poppins/poppins_n6.aa29d4918bc243723d56b59572e18228ed0786f6.woff2" as="font" type="font/woff2" crossorigin><link rel="preload" href="//lovedepot.com/cdn/fonts/poppins/poppins_n4.0ba78fa5af9b0e1a374041b3ceaadf0a43b41362.woff2" as="font" type="font/woff2" crossorigin><link rel="preconnect" href="https://cdn.shopify.com" crossorigin> 47 <link rel="dns-prefetch" href="https://cdn.shopify.com"> 48<meta property="og:type" content="website"> 49 <meta property="og:title" content="Love Depot"> 50 <meta property="og:description" content="Buy sex toys, condoms & intimacy products at Love Depot. India’s trusted pleasure superstore! 100% discreet delivery with easy UPI & EMI payment options."> 51<meta property="og:image" content="https://lovedepot.com/cdn/shop/files/WhatsApp_Image_2026-03-02_at_12.01.00_PM.jpg?v=1772433561&width=1200"> 52 <meta property="og:image:secure_url" content="https://lovedepot.com/cdn/shop/files/WhatsApp_Image_2026-03-02_at_12.01.00_PM.jpg?v=1772433561&width=1200"> 53 <meta property="og:image:width" content="1200"> 54 <meta property="og:image:height" content="630"> 55 <meta property="og:image:alt" content="Love Depot"> 56<meta property="og:description" content="Buy sex toys, condoms & intimacy products at Love Depot. India’s trusted pleasure superstore! 100% discreet delivery with easy UPI & EMI payment options."><meta property="og:url" content="https://lovedepot.com/search"> 57<meta property="og:site_name" content="Love Depot"> 58<meta property="og:locale" content="en"> 59 60 61 62<meta name="twitter:card" content="summary_large_image"><meta name="twitter:title" content="Search"> 63 <meta name="twitter:description" content="Buy sex toys, condoms & intimacy products at Love Depot. India’s trusted pleasure superstore! 100% discreet delivery with easy UPI & EMI payment options."><meta name="twitter:image" content="https://lovedepot.com/cdn/shop/files/WhatsApp_Image_2026-03-02_at_12.01.00_PM.jpg?crop=center&height=630&v=1772433561&width=1200"> 64 <meta name="twitter:image:alt" content="Love Depot">
64<script type="application/ld+json"> 65 { 66 "@context": "https://schema.org", 67 "@type": "BreadcrumbList", 68 "itemListElement": [{ 69 "@type": "ListItem", 70 "position": 1, 71 "name": "Home", 72 "item": "https://lovedepot.com" 73 }] 74 } 75</script>
75 76<style>@font-face { 77 font-family: Poppins; 78 font-weight: 500; 79 font-style: normal; 80 font-display: swap; 81 src: url("//lovedepot.com/cdn/fonts/poppins/poppins_n5.ad5b4b72b59a00358afc706450c864c3c8323842.woff2") format("woff2"), 82 url("//lovedepot.com/cdn/fonts/poppins/poppins_n5.33757fdf985af2d24b32fcd84c9a09224d4b2c39.woff") format("woff"); 83} 84@font-face { 85 font-family: Poppins; 86 font-weight: 500; 87 font-style: italic; 88 font-display: swap; 89 src: url("//lovedepot.com/cdn/fonts/poppins/poppins_i5.6acfce842c096080e34792078ef3cb7c3aad24d4.woff2") format("woff2"), 90 url("//lovedepot.com/cdn/fonts/poppins/poppins_i5.a49113e4fe0ad7fd7716bd237f1602cbec299b3c.woff") format("woff"); 91} 92@font-face { 93 font-family: Poppins; 94 font-weight: 600; 95 font-style: normal; 96 font-display: swap; 97 src: url("//lovedepot.com/cdn/fonts/poppins/poppins_n6.aa29d4918bc243723d56b59572e18228ed0786f6.woff2") format("woff2"), 98 url("//lovedepot.com/cdn/fonts/poppins/poppins_n6.5f815d845fe073750885d5b7e619ee00e8111208.woff") format("woff"); 99} 100@font-face { 101 font-family: Poppins; 102 font-weight: 600; 103 font-style: italic; 104 font-display: swap; 105 src: url("//lovedepot.com/cdn/fonts/poppins/poppins_i6.bb8044d6203f492888d626dafda3c2999253e8e9.woff2") format("woff2"), 106 url("//lovedepot.com/cdn/fonts/poppins/poppins_i6.e233dec1a61b1e7dead9f920159eda42280a02c3.woff") format("woff"); 107} 108@font-face { 109 font-family: Poppins; 110 font-weight: 600; 111 font-style: normal; 112 font-display: swap; 113 src: url("//lovedepot.com/cdn/fonts/poppins/poppins_n6.aa29d4918bc243723d56b59572e18228ed0786f6.woff2") format("woff2"), 114 url("//lovedepot.com/cdn/fonts/poppins/poppins_n6.5f815d845fe073750885d5b7e619ee00e8111208.woff") format("woff"); 115} 116@font-face { 117 font-family: Poppins; 118 font-weight: 400; 119 font-style: normal; 120 font-display: swap; 121 src: url("//lovedepot.com/cdn/fonts/poppins/poppins_n4.0ba78fa5af9b0e1a374041b3ceaadf0a43b41362.woff2") format("woff2"), 122 url("//lovedepot.com/cdn/fonts/poppins/poppins_n4.214741a72ff2596839fc9760ee7a770386cf16ca.woff") format("woff"); 123} 124@font-face { 125 font-family: Poppins; 126 font-weight: 400; 127 font-style: italic; 128 font-display: swap; 129 src: url("//lovedepot.com/cdn/fonts/poppins/poppins_i4.846ad1e22474f856bd6b81ba4585a60799a9f5d2.woff2") format("woff2"), 130 url("//lovedepot.com/cdn/fonts/poppins/poppins_i4.56b43284e8b52fc64c1fd271f289a39e8477e9ec.woff") format("woff"); 131} 132@font-face { 133 font-family: Poppins; 134 font-weight: 500; 135 font-style: normal; 136 font-display: swap; 137 src: url("//lovedepot.com/cdn/fonts/poppins/poppins_n5.ad5b4b72b59a00358afc706450c864c3c8323842.woff2") format("woff2"), 138 url("//lovedepot.com/cdn/fonts/poppins/poppins_n5.33757fdf985af2d24b32fcd84c9a09224d4b2c39.woff") format("woff"); 139} 140@font-face { 141 font-family: Poppins; 142 font-weight: 600; 143 font-style: normal; 144 font-display: swap; 145 src: url("//lovedepot.com/cdn/fonts/poppins/poppins_n6.aa29d4918bc243723d56b59572e18228ed0786f6.woff2") format("woff2"), 146 url("//lovedepot.com/cdn/fonts/poppins/poppins_n6.5f815d845fe073750885d5b7e619ee00e8111208.woff") format("woff"); 147} 148@font-face { 149 font-family: Poppins; 150 font-weight: 600; 151 font-style: italic; 152 font-display: swap; 153 src: url("//lovedepot.com/cdn/fonts/poppins/poppins_i6.bb8044d6203f492888d626dafda3c2999253e8e9.woff2") format("woff2"), 154 url("//lovedepot.com/cdn/fonts/poppins/poppins_i6.e233dec1a61b1e7dead9f920159eda42280a02c3.woff") format("woff"); 155} 156:root { 157 /* Container */ 158 --container-max-width: 100%; 159 --container-gutter: 1.25rem; 160 161 /* Spacing */ 162 --section-vertical-spacing: 2rem; 163 --section-stack-row-gap: 1.5rem; 164 165 /* Form settings */ 166 --form-gap: 1rem; /* Gap between fieldset and submit button */ 167 --fieldset-gap: 0.5rem; /* Gap between each form input within a fieldset */ 168 --form-control-gap: 0.5rem; /* Gap between input and label (ignored for floating label) */ 169 --checkbox-control-gap: 0.75rem; /* Horizontal gap between checkbox and its associated label */ 170 --input-padding-block: 0.65rem; /* Vertical padding for input, textarea and native select */ 171 --input-padding-inline: 1rem; /* Horizontal padding for input, textarea and native select */ 172 --checkbox-size: 0.875rem; /* Size (width and height) for checkbox */ 173 174 /* Product listing gaps */ 175 --product-list-column-gap: 0.5rem; 176 --product-list-padding-inline: clamp(0px, var(--product-list-column-gap) , min(1.75rem, var(--product-list-column-gap)));--product-list-row-gap: 2rem;/* Other sizes */ 177 --header-group-height: calc(var(--announcement-bar-height, 0px) + var(--countdown-condensed-height, 0px) + var(--header-height, 0px)); 178 --sticky-area-height: calc(var(--announcement-bar-is-sticky, 0) * var(--announcement-bar-height, 0px) + var(--header-is-sticky, 0) * var(--header-height, 0px)); 179 --sticky-offset: calc(var(--announcement-bar-is-sticky, 0) * var(--announcement-bar-height, 0px) + var(--header-is-sticky, 0) * var(--header-is-visible, 1) * var(--header-height, 0px)); 180 181 /* RTL support */ 182 --transform-logical-flip: 1; 183 --transform-origin-start: left;
184 --transform-origin-end: right; 185 186 /** 187 * --------------------------------------------------------------------- 188 * TYPOGRAPHY 189 * --------------------------------------------------------------------- 190 */ 191 192 /* Font properties */ 193 --subheading-font-family: Poppins, sans-serif; 194 --subheading-font-weight: 500; 195 --subheading-font-style: normal; 196 --subheading-font-size: 0.8125rem; 197 --subheading-text-transform: none; 198 --subheading-letter-spacing: 0.01em; 199 --heading-font-family: Poppins, sans-serif; 200 --heading-font-weight: 600; 201 --heading-font-style: normal; 202 --heading-text-transform: none; 203 --heading-letter-spacing: 0.01em; 204 --heading-line-height: 1; 205 --heading-italic-font-family: Helvetica, Arial, sans-serif; 206 --heading-italic-font-weight: 400; 207 --heading-italic-font-size-multiplier: 0%; 208 --text-font-family: Poppins, sans-serif; 209 --text-font-weight: 400; 210 --text-font-style: normal; 211 --text-transform: normal; 212 --text-letter-spacing: 0.01em; 213 --text-line-height: 1.6; 214 --text-font-medium-weight: 500; 215 --text-font-bold-weight: 600; 216 --button-font: var(--text-font-style) var(--text-font-weight) var(--button-font-size) / normal var(--text-font-family); 217 --button-text-transform: none; 218 --button-letter-spacing: 0.01em; 219 220 /* Font sizes */--text-heading-size-factor: 0.9; 221 --text-display-xl: max(0.75rem, clamp(3.5rem, 1.9223rem + 6.7314vw, 10rem) * var(--text-heading-size-factor)); 222 --text-display-l: max(0.75rem, clamp(3.375rem, 2.1311rem + 5.3074vw, 8.5rem) * var(--text-heading-size-factor)); 223 --text-display-m: max(0.75rem, clamp(3.25rem, 2.3701rem + 3.7540vw, 6.875rem) * var(--text-heading-size-factor)); 224 --text-h1: max(0.75rem, clamp(3rem, 2.3325rem + 2.8479vw, 5.75rem) * var(--text-heading-size-factor)); 225 --text-h2: max(0.75rem, clamp(2.5rem, 1.9539rem + 2.3301vw, 4.75rem) * var(--text-heading-size-factor)); 226 --text-h3: max(0.75rem, clamp(2rem, 1.6359rem + 1.5534vw, 3.5rem) * var(--text-heading-size-factor)); 227 --text-h4: max(0.75rem, clamp(1.75rem, 1.4466rem + 1.2945vw, 3rem) * var(--text-heading-size-factor)); 228 --text-h5: max(0.75rem, clamp(1.375rem, 1.2233rem + 0.6472vw, 2rem) * var(--text-heading-size-factor)); 229 --text-h6: max(0.75rem, clamp(1.1875rem, 1.1117rem + 0.3236vw, 1.5rem) * var(--text-heading-size-factor)); 230 --text-h7: max(0.75rem, clamp(1rem, 0.9545rem + 0.1942vw, 1.1875rem) * var(--text-heading-size-factor)); 231 --text-xs: 0.6875rem; 232 --text-sm: 0.75rem; 233 --text-base: 0.875rem; 234 --text-lg: 1.0625rem; 235 --button-font-size: 0.875rem; 236 237 /* Rounded variables (used for border radius) */ 238 --rounded-full: 9999px; 239 --subheading-border-radius: 0.0rem; 240 --button-border-radius: 1.875rem; 241 --input-border-radius: 1.875rem; 242 243 /* Product card variables */ 244 --product-card-row-count: 2; 245 246 /** 247 * --------------------------------------------------------------------- 248 * OTHER 249 * --------------------------------------------------------------------- 250 */ 251 252 --icon-stroke-width: 1.5px; 253 --quotation-mark-svg: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" focusable="false" width="62" fill="none" viewBox="0 0 62 57"><path fill="%23000" d="M.79 31.904 11.924.816h12.296l-8.12 31.088h7.888V56.96H.79V31.904Zm37.351 0L49.277.816h12.064l-8.12 31.088h7.888V56.96H38.141V31.904Z" /></svg>'); 254 } 255 256 [dir="rtl"]:root { 257 /* RTL support */ 258 --transform-logical-flip: -1; 259 --transform-origin-start: right; 260 --transform-origin-end: left; 261 } 262 263 @media screen and (min-width: 700px) { 264 :root { 265 --text-xs: 0.75rem; 266 --text-sm: 0.875rem; 267 --text-base: 1.0rem; 268 --text-lg: 1.1875rem; 269 --subheading-font-size: 0.875rem; 270 271 /* Spacing */ 272 --container-gutter: 2rem; 273 274 /* Form settings */ 275 --form-gap: 1.25rem; /* Gap between fieldset and submit button */ 276 --fieldset-gap: 0.75rem; /* Gap between each form input within a fieldset */ 277 --input-padding-block: 0.75rem; /* Vertical padding for input, textarea and native select */ 278 279 /* Font sizes */ 280 --button-font-size: 0.9375rem; 281
282 /* Product listing gaps */--product-list-column-gap: 1.75rem; 283 --product-list-row-gap: 3rem;} 284 } 285 286 @media screen and (min-width: 1000px) { 287 :root { 288 /* Spacing settings */ 289 --section-vertical-spacing: 2rem; 290 --section-stack-row-gap: 3rem; 291 } 292 } 293 294 @media screen and (min-width: 1399px) { 295 :root { 296 /* Spacing settings */ 297 --section-vertical-spacing: 2rem; 298 --container-gutter: 3rem; 299 } 300 } 301 302 /** 303 * --------------------------------------------------------------------- 304 * COLORS 305 * --------------------------------------------------------------------- 306 */ 307 308 :root {--page-overlay: 0 0 0 / 0.4; 309 --dialog-backdrop-blur: 12px; 310 311 /* Status colors */ 312 --success-background: 227 240 232; 313 --success-text: 22 131 66; 314 --warning-background: 251 224 224; 315 --warning-text: 224 0 0; 316 --error-background: 251 224 224; 317 --error-text: 224 0 0; 318 319 /* Product colors */ 320 --on-sale-text: 255 188 0; 321 --on-sale-badge-background: 255 188 0; 322 --on-sale-badge-text: 0 0 0; 323 --sold-out-badge-background: 255 217 218; 324 --sold-out-badge-text: 0 0 0; 325 --custom-badge-background: 255 188 0; 326 --custom-badge-text: 0 0 0; 327 --star-color: 255 188 0; 328 }.color-scheme--scheme-1 { 329 --accent: 0 0 0; 330 --background: 255 255 255; 331 --background-gradient: ; 332 --background-secondary: 33 33 33; 333 --has-transparent-background: 0; 334 --has-filled-background: 1; 335 --text-color: 33 33 33;--border-color: 233 233 233;/* Subheading colors */--subheading-background: 0 0 0 / 0.0; 336 --subheading-border: none; 337 --subheading-text-color: 0 0 0; 338 --subheading-has-padding: 0; 339 340 /* Heading highlight */ 341 --heading-highlight-accent-color: 0 0 0; 342 --heading-highlight-text-color: 255 255 255; 343 344 /* Button colors */ 345 --button-background-primary: 0 0 0; 346 --button-text-primary: 255 255 255; 347 348 /* Form inputs */ 349 --input-background: 255 255 255; 350 --input-text-color: 0 0 0; 351 --input-text-transform: none; 352 }.shopify-section:has(> .color-scheme--scheme-1) + .shopify-section:has(> .color-scheme--scheme-1) { 353 --section-has-same-background-as-previous-section: 1; 354 }.shopify-section:has(> .color-scheme--scheme-1) + .shopify-section:has(> .color-scheme--scheme-1bff9295-0fbf-4222-aa8a-1dcecff4bfff) { 355 --section-has-same-background-as-previous-section: 1; 356 }.shopify-section:has(> .color-scheme--scheme-1) + .shopify-section:has(> .color-scheme--scheme-03e90f9b-5192-488f-893e-64cf3dc253e5) { 357 --section-has-same-background-as-previous-section: 1; 358 }.shopify-section:has(> .color-scheme--scheme-1) + .shopify-section:has(> .color-scheme--scheme-369e4996-11d1-462b-b490-37162caa197d) { 359 --section-has-same-background-as-previous-section: 1; 360 }.shopify-section:has(> .color-scheme--scheme-1) + .shopify-section:has(> .color-scheme--scheme-795ab92a-5873-444b-b686-2a77f2ce5c62) { 361 --section-has-same-background-as-previous-section: 1; 362 }.color-scheme--scheme-2 { 363 --accent: 33 33 33; 364 --background: 236 236 244; 365 --background-gradient: ; 366 --background-secondary: 250 244 240; 367 --has-transparent-background: 0; 368 --has-filled-background: 1; 369 --text-color: 53 53 53;--border-color: 218 218 225;/* Subheading colors */--subheading-background: 0 0 0 / 0.0; 370 --subheading-border: none; 371 --subheading-text-color: 2 2 2; 372 --subheading-has-padding: 0; 373 374 /* Heading highlight */ 375 --heading-highlight-accent-color: 53 53 53; 376 --heading-highlight-text-color: 255 255 255; 377 378 /* Button colors */ 379 --button-background-primary: 33 33 33; 380 --button-text-primary: 255 255 255; 381 382 /* Form inputs */ 383 --input-background: 255 255 255; 384 --input-text-color: 33 33 33; 385 --input-text-transform: none; 386 }.shopify-section:has(> .color-scheme--scheme-2) + .shopify-section:has(> .color-scheme--scheme-2) { 387 --section-has-same-background-as-previous-section: 1; 388 }.color-scheme--scheme-3 { 389 --accent: 255 255 255; 390 --background: 0 0 0 / 0; 391 --background-gradient: ; 392 --background-secondary: 240 240 240; 393 --has-transparent-background: 1; 394 --has-filled-background: 0; 395 --text-color: 255 255 255;--border-color: 255 255 255 / 0.6;/* Subheading colors */--subheading-background: 0 0 0 / 0.0; 396 --subheading-border: none; 397 --subheading-text-color: 255 255 255; 398 --subheading-has-padding: 0; 399 400 /* Heading highlight */ 401 --heading-highlight-accent-color: 3 3 5; 402 --heading-highlight-text-color: 255 255 255; 403 404 /* Button colors */ 405 --button-background-primary: 255 255 255; 406 --button-text-primary: 8 9 18; 407 408 /* Form inputs */ 409 --input-background: 255 255 255; 410 --input-text-color: 3 3 5; 411 --input-text-transform: none; 412 }.shopify-section:has(> .color-scheme--scheme-3) + .shopify-section:has(> .color-scheme--scheme-3) { 413 --section-has-same-background-as-previous-section: 1; 414 }.color-scheme--scheme-4 { 415 --accent: 33 33 33; 416 --background: 255 188 0; 417 --background-gradient: ; 418 --background-secondary: 255 255 255; 419 --has-transparent-background: 0; 420 --has-filled-background: 1; 421 --text-color: 61 61 61;--border-color: 236 175 6;/* Subheading colors */--subheading-background: 0 0 0 / 0.0; 422 --subheading-border: none; 423 --subheading-text-color: 250 244 240; 424 --subheading-has-padding: 0; 425 426 /* Heading highlight */ 427 --heading-highlight-accent-color: 250 244 240; 428 --heading-highlight-text-color: 50 30 30; 429 430 /* Button colors */ 431 --button-background-primary: 33 33 33; 432 --button-text-primary: 255 255 255; 433 434 /* Form inputs */ 435 --input-background: 35 15 15; 436 --input-text-color: 255 255 255; 437 --input-text-transform: none; 438 }.shopify-section:has(> .color-scheme--scheme-4) + .shopify-section:has(> .color-scheme--scheme-4) { 439 --section-has-same-background-as-previous-section: 1; 440 }.color-scheme--scheme-5 { 441 --accent: 0 0 0; 442 --background: 255 246 245; 443 --background-gradient: ; 444 --background-secondary: 255 255 255; 445 --has-transparent-background: 0; 446 --has-filled-background: 1; 447 --text-color: 0 0 0;--border-color: 230 221 221;/* Subheading colors */--subheading-background: 0 0 0 / 0.0; 448 --subheading-border: none; 449 --subheading-text-color: 50 30 30; 450 --subheading-has-padding: 0; 451 452 /* Heading highlight */ 453 --heading-highlight-accent-color: 0 0 0; 454 --heading-highlight-text-color: 255 255 255; 455 456 /* Button colors */ 457 --button-background-primary: 0 0 0; 458 --button-text-primary: 255 255 255; 459 460 /* Form inputs */ 461 --input-background: 255 255 255; 462 --input-text-color: 50 30 30; 463 --input-text-transform: none; 464 }.shopify-section:has(> .color-scheme--scheme-5) + .shopify-section:has(> .color-scheme--scheme-5) { 465 --section-has-same-background-as-previous-section: 1; 466 }.color-scheme--scheme-6 { 467 --accent: 0 0 0; 468 --background: 229 251 252; 469 --background-gradient: ; 470 --background-secondary: 255 255 255; 471 --has-transparent-background: 0; 472 --has-filled-background: 1; 473 --text-color: 0 0 0;--border-color: 206 226 227;/* Subheading colors */--subheading-background: 0 0 0 / 0.0; 474 --subheading-border: none; 475 --subheading-text-color: 255 255 255; 476 --subheading-has-padding: 0; 477 478 /* Heading highlight */ 479 --heading-highlight-accent-color: 155 7 15; 480 --heading-highlight-text-color: 155 7 15; 481 482 /* Button colors */ 483 --button-background-primary: 0 0 0; 484 --button-text-primary: 255 255 255; 485 486 /* Form inputs */ 487 --input-background: 255 255 255; 488 --input-text-color: 255 0 60; 489 --input-text-transform: none; 490 }.shopify-section:has(> .color-scheme--scheme-6) + .shopify-section:has(> .color-scheme--scheme-6) { 491 --section-has-same-background-as-previous-section: 1; 492 }.color-scheme--scheme-7 { 493 --accent: 255 255 255; 494 --background: 0 0 0; 495 --background-gradient: ; 496 --background-secondary: 0 0 0; 497 --has-transparent-background: 0; 498 --has-filled-background: 1; 499 --text-color: 255 255 255;--border-color: 26 26 26;/* Subheading colors */--subheading-background: 0 0 0 / 0.0; 500 --subheading-border: none; 501 --subheading-text-color: 255 255 255; 502 --subheading-has-padding: 0; 503 504 /* Heading highlight */ 505 --heading-highlight-accent-color: 255 255 255; 506 --heading-highlight-text-color: 255 255 255; 507 508 /* Button colors */ 509 --button-background-primary: 255 255 255; 510 --button-text-primary: 0 0 0; 511 512 /* Form inputs */ 513 --input-background: 0 0 0; 514 --input-text-color: 255 255 255; 515 --input-text-transform: none; 516 }.shopify-section:has(> .color-scheme--scheme-7) + .shopify-section:has(> .color-scheme--scheme-7) { 517 --section-has-same-background-as-previous-section: 1; 518 }.color-scheme--scheme-124993a2-34f9-408d-8370-9cb3e19f5aec { 519 --accent: 255 255 255; 520 --background: 214 41 125; 521 --background-gradient: ; 522 --background-secondary: 246 244 245; 523 --has-transparent-background: 0; 524 --has-filled-background: 1; 525 --text-color: 255 255 255;--border-color: 218 62 138;/* Subheading colors */--subheading-background: 0 0 0 / 0.0; 526 --subheading-border: none; 527 --subheading-text-color: 246 244 245; 528 --subheading-has-padding: 0; 529 530 /* Heading highlight */ 531 --heading-highlight-accent-color: 219 180 61; 532 --heading-highlight-text-color: 219 180 61; 533 534 /* Button colors */ 535 --button-background-primary: 255 255 255; 536 --button-text-primary: 214 41 125; 537 538 /* Form inputs */ 539 --input-background: 255 255 255; 540 --input-text-color: 50 30 30; 541 --input-text-transform: none; 542 }.shopify-section:has(> .color-scheme--scheme-124993a2-34f9-408d-8370-9cb3e19f5aec) + .shopify-section:has(> .color-scheme--scheme-124993a2-34f9-408d-8370-9cb3e19f5aec) { 543 --section-has-same-background-as-previous-section: 1; 544 }.color-scheme--scheme-d8b5dace-7d5a-4d09-bdcf-9900ea9133de { 545 --accent: 231 20 64; 546 --background: 0 0 0 / 0; 547 --background-gradient: linear-gradient(90deg, rgba(255, 65, 108, 0.05), rgba(255, 75, 43, 0.05) 100%); 548 --background-secondary: 255 255 255; 549 --has-transparent-background: 0; 550 --has-filled-background: 1; 551 --text-color: 61 61 61;--border-color: 61 61 61 / 0.1;/* Subheading colors */--subheading-background: 255 65 108; 552 --subheading-border: none; 553 --subheading-text-color: 255 255 255; 554 --subheading-has-padding: 1; 555 556 /* Heading highlight */ 557 --heading-highlight-accent-color: 255 65 108; 558 --heading-highlight-text-color: 61 61 61; 559 560 /* Button colors */ 561 --button-background-primary: 231 20 64; 562 --button-text-primary: 255 255 255; 563 564 /* Form inputs */ 565 --input-background: 0 0 0 / 0; 566 --input-text-color: 50 30 30; 567 --input-text-transform: none; 568 }.shopify-section:has(> .color-scheme--scheme-d8b5dace-7d5a-4d09-bdcf-9900ea9133de) + .shopify-section:has(> .color-scheme--scheme-d8b5dace-7d5a-4d09-bdcf-9900ea9133de) { 569 --section-has-same-background-as-previous-section: 1; 570 }.color-scheme--scheme-1bff9295-0fbf-4222-aa8a-1dcecff4bfff { 571 --accent: 255 255 255; 572 --background: 255 255 255; 573 --background-gradient: ; 574 --background-secondary: 255 255 255; 575 --has-transparent-background: 0; 576 --has-filled-background: 1; 577 --text-color: 33 33 33;--border-color: 233 233 233;/* Subheading colors */--subheading-background: 0 0 0 / 0.0; 578 --subheading-border: none; 579 --subheading-text-color: 8 9 18; 580 --subheading-has-padding: 0; 581 582 /* Heading highlight */ 583 --heading-highlight-accent-color: 50 30 30; 584 --heading-highlight-text-color: 8 9 18; 585 586 /* Button colors */ 587 --button-background-primary: 255 255 255; 588 --button-text-primary: 8 9 18; 589 590 /* Form inputs */ 591 --input-background: 255 255 255; 592 --input-text-color: 50 30 30; 593 --input-text-transform: none; 594 }.shopify-section:has(> .color-scheme--scheme-1bff9295-0fbf-4222-aa8a-1dcecff4bfff) + .shopify-section:has(> .color-scheme--scheme-1) { 595 --section-has-same-background-as-previous-section: 1; 596 }.shopify-section:has(> .color-scheme--scheme-1bff9295-0fbf-4222-aa8a-1dcecff4bfff) + .shopify-section:has(> .color-scheme--scheme-1bff9295-0fbf-4222-aa8a-1dcecff4bfff) { 597 --section-has-same-background-as-previous-section: 1; 598 }.shopify-section:has(> .color-scheme--scheme-1bff9295-0fbf-4222-aa8a-1dcecff4bfff) + .shopify-section:has(> .color-scheme--scheme-03e90f9b-5192-488f-893e-64cf3dc253e5) { 599 --section-has-same-background-as-previous-section: 1; 600 }.shopify-section:has(> .color-scheme--scheme-1bff9295-0fbf-4222-aa8a-1dcecff4bfff) + .shopify-section:has(> .color-scheme--scheme-369e4996-11d1-462b-b490-37162caa197d) { 601 --section-has-same-background-as-previous-section: 1; 602 }.shopify-section:has(> .color-scheme--scheme-1bff9295-0fbf-4222-aa8a-1dcecff4bfff) + .shopify-section:has(> .color-scheme--scheme-795ab92a-5873-444b-b686-2a77f2ce5c62) { 603 --section-has-same-background-as-previous-section: 1; 604 }.color-scheme--scheme-c6e5e069-b617-4942-83aa-074b3f678d01 { 605 --accent: 255 255 255; 606 --background: 215 15 32; 607 --background-gradient: ; 608 --background-secondary: 255 255 255; 609 --has-transparent-background: 0; 610 --has-filled-background: 1; 611 --text-color: 255 255 255;--border-color: 219 39 54;/* Subheading colors */--subheading-background: 0 0 0 / 0.0; 612 --subheading-border: none; 613 --subheading-text-color: 255 255 255; 614 --subheading-has-padding: 0; 615 616 /* Heading highlight */ 617 --heading-highlight-accent-color: 50 30 30; 618 --heading-highlight-text-color: 255 255 255; 619 620 /* Button colors */ 621 --button-background-primary: 255 255 255; 622 --button-text-primary: 0 0 0; 623 624 /* Form inputs */ 625 --input-background: 255 255 255; 626 --input-text-color: 50 30 30; 627 --input-text-transform: none; 628 }.shopify-section:has(> .color-scheme--scheme-c6e5e069-b617-4942-83aa-074b3f678d01) + .shopify-section:has(> .color-scheme--scheme-c6e5e069-b617-4942-83aa-074b3f678d01) { 629 --section-has-same-background-as-previous-section: 1; 630 }.color-scheme--scheme-1c323baa-6955-422c-87e5-4a07c9d546b4 { 631 --accent: 255 255 255; 632 --background: 255 227 235; 633 --background-gradient: ; 634 --background-secondary: 255 255 255; 635 --has-transparent-background: 0; 636 --has-filled-background: 1; 637 --text-color: 33 33 33;--border-color: 233 208 215;/* Subheading colors */--subheading-background: 0 0 0 / 0.0; 638 --subheading-border: none; 639 --subheading-text-color: 255 255 255; 640 --subheading-has-padding: 0; 641 642 /* Heading highlight */ 643 --heading-highlight-accent-color: 255 255 255; 644 --heading-highlight-text-color: 255 255 255; 645 646 /* Button colors */ 647 --button-background-primary: 255 255 255; 648 --button-text-primary: 0 0 0; 649 650 /* Form inputs */ 651 --input-background: 255 255 255; 652 --input-text-color: 0 0 0; 653 --input-text-transform: none; 654 }.shopify-section:has(> .color-scheme--scheme-1c323baa-6955-422c-87e5-4a07c9d546b4) + .shopify-section:has(> .color-scheme--scheme-1c323baa-6955-422c-87e5-4a07c9d546b4) { 655 --section-has-same-background-as-previous-section: 1; 656 }.color-scheme--scheme-03e90f9b-5192-488f-893e-64cf3dc253e5 { 657 --accent: 0 0 0; 658 --background: 255 255 255; 659 --background-gradient: ; 660 --background-secondary: 255 255 255; 661 --has-transparent-background: 0; 662 --has-filled-background: 1; 663 --text-color: 0 0 0;--border-color: 230 230 230;/* Subheading colors */--subheading-background: 0 0 0 / 0.0; 664 --subheading-border: none; 665 --subheading-text-color: 0 0 0; 666 --subheading-has-padding: 0; 667 668 /* Heading highlight */ 669 --heading-highlight-accent-color: 0 0 0; 670 --heading
670-highlight-text-color: 255 255 255; 671 672 /* Button colors */ 673 --button-background-primary: 0 0 0; 674 --button-text-primary: 255 255 255; 675 676 /* Form inputs */ 677 --input-background: 255 255 255; 678 --input-text-color: 0 0 0; 679 --input-text-transform: none; 680 }.shopify-section:has(> .color-scheme--scheme-03e90f9b-5192-488f-893e-64cf3dc253e5) + .shopify-section:has(> .color-scheme--scheme-1) { 681 --section-has-same-background-as-previous-section: 1; 682 }.shopify-section:has(> .color-scheme--scheme-03e90f9b-5192-488f-893e-64cf3dc253e5) + .shopify-section:has(> .color-scheme--scheme-1bff9295-0fbf-4222-aa8a-1dcecff4bfff) { 683 --section-has-same-background-as-previous-section: 1; 684 }.shopify-section:has(> .color-scheme--scheme-03e90f9b-5192-488f-893e-64cf3dc253e5) + .shopify-section:has(> .color-scheme--scheme-03e90f9b-5192-488f-893e-64cf3dc253e5) { 685 --section-has-same-background-as-previous-section: 1; 686 }.shopify-section:has(> .color-scheme--scheme-03e90f9b-5192-488f-893e-64cf3dc253e5) + .shopify-section:has(> .color-scheme--scheme-369e4996-11d1-462b-b490-37162caa197d) { 687 --section-has-same-background-as-previous-section: 1; 688 }.shopify-section:has(> .color-scheme--scheme-03e90f9b-5192-488f-893e-64cf3dc253e5) + .shopify-section:has(> .color-scheme--scheme-795ab92a-5873-444b-b686-2a77f2ce5c62) { 689 --section-has-same-background-as-previous-section: 1; 690 }.color-scheme--scheme-dd2d0544-cd9c-43a0-bff8-9234ddc4f343 { 691 --accent: 0 0 0; 692 --background: 255 246 247; 693 --background-gradient: ; 694 --background-secondary: 33 33 33; 695 --has-transparent-background: 0; 696 --has-filled-background: 1; 697 --text-color: 33 33 33;--border-color: 233 225 226;/* Subheading colors */--subheading-background: 0 0 0 / 0.0; 698 --subheading-border: none; 699 --subheading-text-color: 0 0 0; 700 --subheading-has-padding: 0; 701 702 /* Heading highlight */ 703 --heading-highlight-accent-color: 0 0 0; 704 --heading-highlight-text-color: 255 255 255; 705 706 /* Button colors */ 707 --button-background-primary: 0 0 0; 708 --button-text-primary: 255 255 255; 709 710 /* Form inputs */ 711 --input-background: 255 255 255; 712 --input-text-color: 0 0 0; 713 --input-text-transform: none; 714 }.shopify-section:has(> .color-scheme--scheme-dd2d0544-cd9c-43a0-bff8-9234ddc4f343) + .shopify-section:has(> .color-scheme--scheme-dd2d0544-cd9c-43a0-bff8-9234ddc4f343) { 715 --section-has-same-background-as-previous-section: 1; 716 }.color-scheme--scheme-b85834d6-fc74-4563-aff6-aa695fb4b98f { 717 --accent: 0 0 0; 718 --background: 190 224 230; 719 --background-gradient: ; 720 --background-secondary: 33 33 33; 721 --has-transparent-background: 0; 722 --has-filled-background: 1; 723 --text-color: 33 33 33;--border-color: 174 205 210;/* Subheading colors */--subheading-background: 0 0 0 / 0.0; 724 --subheading-border: none; 725 --subheading-text-color: 33 33 33; 726 --subheading-has-padding: 0; 727 728 /* Heading highlight */ 729 --heading-highlight-accent-color: 0 0 0; 730 --heading-highlight-text-color: 255 255 255; 731 732 /* Button colors */ 733 --button-background-primary: 0 0 0; 734 --button-text-primary: 255 255 255; 735 736 /* Form inputs */ 737 --input-background: 255 255 255; 738 --input-text-color: 0 0 0; 739 --input-text-transform: none; 740 }.shopify-section:has(> .color-scheme--scheme-b85834d6-fc74-4563-aff6-aa695fb4b98f) + .shopify-section:has(> .color-scheme--scheme-b85834d6-fc74-4563-aff6-aa695fb4b98f) { 741 --section-has-same-background-as-previous-section: 1; 742 }.color-scheme--scheme-369e4996-11d1-462b-b490-37162caa197d { 743 --accent: 0 0 0; 744 --background: 255 255 255; 745 --background-gradient: ; 746 --background-secondary: 33 33 33; 747 --has-transparent-background: 0; 748 --has-filled-background: 1; 749 --text-color: 61 61 61;--border-color: 236 236 236;/* Subheading colors */--subheading-background: 0 0 0 / 0.0; 750 --subheading-border: none; 751 --subheading-text-color: 33 33 33; 752 --subheading-has-padding: 0; 753 754 /* Heading highlight */ 755 --heading-highlight-accent-color: 0 0 0; 756 --heading-highlight-text-color: 255 255 255; 757 758 /* Button colors */ 759 --button-background-primary: 0 0 0; 760 --button-text-primary: 255 255 255; 761 762 /* Form inputs */ 763 --input-background: 255 255 255; 764 --input-text-color: 0 0 0; 765 --input-text-transform: none; 766 }.shopify-section:has(> .color-scheme--scheme-369e4996-11d1-462b-b490-37162caa197d) + .shopify-section:has(> .color-scheme--scheme-1) { 767 --section-has-same-background-as-previous-section: 1; 768 }.shopify-section:has(> .color-scheme--scheme-369e4996-11d1-462b-b490-37162caa197d) + .shopify-section:has(> .color-scheme--scheme-1bff9295-0fbf-4222-aa8a-1dcecff4bfff) { 769 --section-has-same-background-as-previous-section: 1; 770 }.shopify-section:has(> .color-scheme--scheme-369e4996-11d1-462b-b490-37162caa197d) + .shopify-section:has(> .color-scheme--scheme-03e90f9b-5192-488f-893e-64cf3dc253e5) { 771 --section-has-same-background-as-previous-section: 1; 772 }.shopify-section:has(> .color-scheme--scheme-369e4996-11d1-462b-b490-37162caa197d) + .shopify-section:has(> .color-scheme--scheme-369e4996-11d1-462b-b490-37162caa197d) { 773 --section-has-same-background-as-previous-section: 1; 774 }.shopify-section:has(> .color-scheme--scheme-369e4996-11d1-462b-b490-37162caa197d) + .shopify-section:has(> .color-scheme--scheme-795ab92a-5873-444b-b686-2a77f2ce5c62) { 775 --section-has-same-background-as-previous-section: 1; 776 }.color-scheme--scheme-89f02267-5a46-44b0-b11d-a5cbab2878b7 { 777 --accent: 0 0 0; 778 --background: 193 238 176; 779 --background-gradient: ; 780 --background-secondary: 33 33 33; 781 --has-transparent-background: 0; 782 --has-filled-background: 1; 783 --text-color: 33 33 33;--border-color: 177 218 162;/* Subheading colors */--subheading-background: 0 0 0 / 0.0; 784 --subheading-border: none; 785 --subheading-text-color: 0 0 0; 786 --subheading-has-padding: 0; 787 788 /* Heading highlight */ 789 --heading-highlight-accent-color: 0 0 0; 790 --heading-highlight-text-color: 255 255 255; 791 792 /* Button colors */ 793 --button-background-primary: 0 0 0; 794 --button-text-primary: 255 255 255; 795 796 /* Form inputs */ 797 --input-background: 255 255 255; 798 --input-text-color: 0 0 0; 799 --input-text-transform: none; 800 }.shopify-section:has(> .color-scheme--scheme-89f02267-5a46-44b0-b11d-a5cbab2878b7) + .shopify-section:has(> .color-scheme--scheme-89f02267-5a46-44b0-b11d-a5cbab2878b7) { 801 --section-has-same-background-as-previous-section: 1; 802 }.color-scheme--scheme-cd4fc17d-8a79-4e11-9131-7a36f057a531 { 803 --accent: 0 0 0; 804 --background: 255 181 162; 805 --background-gradient: ; 806 --background-secondary: 33 33 33; 807 --has-transparent-background: 0; 808 --has-filled-background: 1; 809 --text-color: 33 33 33;--border-color: 233 166 149;/* Subheading colors */--subheading-background: 0 0 0 / 0.0; 810 --subheading-border: none; 811 --subheading-text-color: 28 28 28; 812 --subheading-has-padding: 0; 813 814 /* Heading highlight */ 815 --heading-highlight-accent-color: 0 0 0; 816 --heading-highlight-text-color: 255 255 255; 817 818 /* Button colors */ 819 --button-background-primary: 0 0 0; 820 --button-text-primary: 255 255 255; 821 822 /* Form inputs */ 823 --input-background: 255 255 255; 824 --input-text-color: 0 0 0; 825 --input-text-transform: none; 826 }.shopify-section:has(> .color-scheme--scheme-cd4fc17d-8a79-4e11-9131-7a36f057a531) + .shopify-section:has(> .color-scheme--scheme-cd4fc17d-8a79-4e11-9131-7a36f057a531) { 827 --section-has-same-background-as-previous-section: 1; 828 }.color-scheme--scheme-eef55289-c5df-447d-a7db-6f6ebbad26cd { 829 --accent: 0 0 0; 830 --background: 33 33 33; 831 --background-gradient: ; 832 --background-secondary: 33 33 33; 833 --has-transparent-background: 0; 834 --has-filled-background: 1; 835 --text-color: 255 255 255;--border-color: 55 55 55;/* Subheading colors */--subheading-background: 0 0 0 / 0.0; 836 --subheading-border: none; 837 --subheading-text-color: 0 0 0; 838 --subheading-has-padding: 0; 839 840 /* Heading highlight */ 841 --heading-highlight-accent-color: 0 0 0; 842 --heading-highlight-text-color: 255 255 255; 843 844 /* Button colors */ 845 --button-background-primary: 0 0 0; 846 --button-text-primary: 255 255 255; 847 848 /* Form inputs */ 849 --input-background: 255 255 255; 850 --input-text-color: 0 0 0; 851 --input-text-transform: none; 852 }.shopify-section:has(> .color-scheme--scheme-eef55289-c5df-447d-a7db-6f6ebbad26cd) + .shopify-section:has(> .color-scheme--scheme-eef55289-c5df-447d-a7db-6f6ebbad26cd) { 853 --section-has-same-background-as-previous-section: 1; 854 }.color-scheme--scheme-118b6f6f-1677-4380-acd1-34eeba701923 {
855 --accent: 255 255 255; 856 --background: 47 38 128; 857 --background-gradient: ; 858 --background-secondary: 33 33 33; 859 --has-transparent-background: 0; 860 --has-filled-background: 1; 861 --text-color: 255 255 255;--border-color: 68 60 141;/* Subheading colors */--subheading-background: 0 0 0 / 0.0; 862 --subheading-border: none; 863 --subheading-text-color: 0 0 0; 864 --subheading-has-padding: 0; 865 866 /* Heading highlight */ 867 --heading-highlight-accent-color: 0 0 0; 868 --heading-highlight-text-color: 255 255 255; 869 870 /* Button colors */ 871 --button-background-primary: 255 255 255; 872 --button-text-primary: 0 0 0; 873 874 /* Form inputs */ 875 --input-background: 255 255 255; 876 --input-text-color: 0 0 0; 877 --input-text-transform: none; 878 }.shopify-section:has(> .color-scheme--scheme-118b6f6f-1677-4380-acd1-34eeba701923) + .shopify-section:has(> .color-scheme--scheme-118b6f6f-1677-4380-acd1-34eeba701923) { 879 --section-has-same-background-as-previous-section: 1; 880 }.color-scheme--scheme-795ab92a-5873-444b-b686-2a77f2ce5c62 { 881 --accent: 0 0 0; 882 --background: 255 255 255; 883 --background-gradient: ; 884 --background-secondary: 33 33 33; 885 --has-transparent-background: 0; 886 --has-filled-background: 1; 887 --text-color: 61 61 61;--border-color: 236 236 236;/* Subheading colors */--subheading-background: 0 0 0 / 0.0; 888 --subheading-border: none; 889 --subheading-text-color: 0 0 0; 890 --subheading-has-padding: 0; 891 892 /* Heading highlight */ 893 --heading-highlight-accent-color: 0 0 0; 894 --heading-highlight-text-color: 255 255 255; 895 896 /* Button colors */ 897 --button-background-primary: 0 0 0; 898 --button-text-primary: 255 255 255; 899 900 /* Form inputs */ 901 --input-background: 255 255 255; 902 --input-text-color: 0 0 0; 903 --input-text-transform: none; 904 }.shopify-section:has(> .color-scheme--scheme-795ab92a-5873-444b-b686-2a77f2ce5c62) + .shopify-section:has(> .color-scheme--scheme-1) { 905 --section-has-same-background-as-previous-section: 1; 906 }.shopify-section:has(> .color-scheme--scheme-795ab92a-5873-444b-b686-2a77f2ce5c62) + .shopify-section:has(> .color-scheme--scheme-1bff9295-0fbf-4222-aa8a-1dcecff4bfff) { 907 --section-has-same-background-as-previous-section: 1; 908 }.shopify-section:has(> .color-scheme--scheme-795ab92a-5873-444b-b686-2a77f2ce5c62) + .shopify-section:has(> .color-scheme--scheme-03e90f9b-5192-488f-893e-64cf3dc253e5) { 909 --section-has-same-background-as-previous-section: 1; 910 }.shopify-section:has(> .color-scheme--scheme-795ab92a-5873-444b-b686-2a77f2ce5c62) + .shopify-section:has(> .color-scheme--scheme-369e4996-11d1-462b-b490-37162caa197d) { 911 --section-has-same-background-as-previous-section: 1; 912 }.shopify-section:has(> .color-scheme--scheme-795ab92a-5873-444b-b686-2a77f2ce5c62) + .shopify-section:has(> .color-scheme--scheme-795ab92a-5873-444b-b686-2a77f2ce5c62) { 913 --section-has-same-background-as-previous-section: 1; 914 }</style> 915<style> 916 :root { 917 /* ============================== 918 COLORS — Mapped from Theme Color Scheme 919 Change these in: Theme Settings > Colors 920 ============================== */ 921 --ds-color-primary: rgb(var(--accent)); 922 --ds-color-secondary: rgb(var(--background-secondary)); 923 --ds-color-text: rgb(var(--text-color)); 924 --ds-color-background: rgb(var(--background)); 925 --ds-color-border: rgb(var(--border-color)); 926 --ds-color-btn-bg: rgb(var(--button-background-primary)); 927 --ds-color-btn-text: rgb(var(--button-text-primary)); 928 --ds-color-subheading-bg: rgb(var(--subheading-background)); 929 --ds-color-subheading-text: rgb(var(--subheading-text-color)); 930 --ds-color-input-bg: rgb(var(--input-background)); 931 --ds-color-input-text: rgb(var(--input-text-color)); 932 --ds-color-highlight-accent: rgb(var(--heading-highlight-accent-color)); 933 --ds-color-highlight-text: rgb(var(--heading-highlight-text-color)); 934 --ds-color-success: rgb(var(--success-text)); 935 --ds-color-warning: rgb(var(--warning-text)); 936 --ds-color-error: rgb(var(--error-text)); 937 938 /* ============================== 939 TYPOGRAPHY — MOBILE FIRST 940 ============================== */ 941 --ds-h1: 32px; 942 --ds-h2: 28px; 943 --ds-h3: 24px; 944 --ds-h4: 22px; 945 --ds-h5: 18px; 946 --ds-h6: 16px; 947 --ds-body: 14px; 948 --ds-small: 12px; 949 950 /* Font families (from Design System settings) */--ds-font-heading: '', ; 951 --ds-font-body: '', ; 952 --ds-font-subheading: '', ; 953 954 /* ============================== 955 SPACING 956 ============================== */ 957 --ds-space-unit: 8px; 958 --ds-space-1: calc(var(--ds-space-unit) * 1); 959 --ds-space-2: calc(var(--ds-space-unit) * 2); 960 --ds-space-3: calc(var(--ds-space-unit) * 3); 961 --ds-space-4: calc(var(--ds-space-unit) * 4); 962 --ds-space-5: calc(var(--ds-space-unit) * 5); 963 --ds-space-6: calc(var(--ds-space-unit) * 6); 964 --ds-space-8: calc(var(--ds-space-unit) * 8); 965 --ds-space-10: calc(var(--ds-space-unit) * 10); 966 --ds-space-12: calc(var(--ds-space-unit) * 12); 967 --ds-space-16: calc(var(--ds-space-unit) * 16); 968 969 --ds-section-gap: 40px; 970 971 /* ============================== 972 CONTAINER 973 ============================== */ 974 --ds-container-max: 1280px; 975 --ds-container-padding: 20px; 976 } 977 978 /* ============================== 979 TABLET (700px+) 980 ============================== */ 981 @media screen and (min-width: 700px) { 982 :root { 983 --ds-h1: 40px; 984 --ds-h2: 34px; 985 --ds-h3: 28px; 986 --ds-h4: 24px; 987 --ds-h5: 20px; 988 --ds-h6: 18px; 989 --ds-body: 15px; 990 } 991 } 992 993 /* ============================== 994 DESKTOP (1000px+) 995 ============================== */ 996 @media screen and (min-width: 1000px) { 997 :root { 998 --ds-h1: 48px; 999 --ds-h2: 40px; 1000 --ds-h3: 32px; 1001 --ds-h4: 28px; 1002 --ds-h5: 24px; 1003 --ds-h6: 20px; 1004 --ds-body: 16px; 1005 --ds-small: 14px; 1006 --ds-section-gap: 60px; 1007 --ds-container-padding: 48px; 1008 } 1009 } 1010</style>
1011<script> 1012 // This allows to expose several variables to the global scope, to be used in scripts 1013 window.themeVariables = { 1014 settings: { 1015 pageType: "search", 1016 moneyFormat: "₹{{amount_no_decimals}}", 1017 moneyWithCurrencyFormat: "₹{{amount_no_decimals}}", 1018 currencyCodeEnabled: false, 1019 cartType: "drawer", 1020 showHeadingEffectAnimation: true, 1021 staggerProducts: false 1022 }, 1023 1024 strings: { 1025 addedToCart: "{{product_title}} was added to cart", 1026 closeGallery: "Close gallery", 1027 zoomGallery: "Zoom", 1028 errorGallery: "Image cannot be loaded", 1029 shippingEstimatorNoResults: "Sorry, we do not ship to your address.", 1030 shippingEstimatorOneResult: "There is one shipping rate for your address:", 1031 shippingEstimatorMultipleResults: "There are several shipping rates for your address:", 1032 shippingEstimatorError: "One or more error occurred while retrieving shipping rates:", 1033 next: "Next", 1034 previous: "Previous" 1035 }, 1036 1037 mediaQueries: { 1038 'sm': 'screen and (min-width: 700px)', 1039 'md': 'screen and (min-width: 1000px)', 1040 'lg': 'screen and (min-width: 1150px)', 1041 'xl': 'screen and (min-width: 1400px)', 1042 '2xl': 'screen and (min-width: 1600px)', 1043 'sm-max': 'screen and (max-width: 699px)', 1044 'md-max': 'screen and (max-width: 999px)', 1045 'lg-max': 'screen and (max-width: 1149px)', 1046 'xl-max': 'screen and (max-width: 1399px)', 1047 '2xl-max': 'screen and (max-width: 1599px)', 1048 'motion-safe': '(prefers-reduced-motion: no-preference)', 1049 'motion-reduce': '(prefers-reduced-motion: reduce)', 1050 'supports-hover': 'screen and (pointer: fine)', 1051 'supports-touch': 'screen and (pointer: coarse)' 1052 } 1053 };</script>
1053<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
1053<meta name="google-site-verification" content="oWR4P32tMhdOlP5B9ZqHQxiUbOBH3FulhOzWixGYzrA"> 1054<meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/56505270341/digital_wallets/dialog"> 1055<link rel="ucp" href="/.well-known/ucp" version="2026-08-25">
1055<script async="async" src="/checkouts/internal/preloads.js?locale=en-IN"></script>
vendor: 1 bytes, line 1055
1055
1056<script id="shopify-features" type="application/json">{"accessToken":"7b966c8ca4ac760630e857446cae122b","betas":["rich-media-storefront-analytics"],"domain":"lovedepot.com","predictiveSearch":true,"shopId":56505270341,"locale":"en"}</script>
vendor: 1 bytes, line 1056
1056
1057<script>var Shopify = Shopify || {}; 1058Shopify.shop = "love-depot-india.myshopify.com"; 1059Shopify.locale = "en"; 1060Shopify.currency = {"active":"INR","rate":"1.0"}; 1061Shopify.country = "IN"; 1062Shopify.theme = {"name":"love-depot-india\/staging","id":139953668165,"schema_name":"Stretch","schema_version":"1.6.0","theme_store_id":null,"role":"main"}; 1063Shopify.theme.handle = "null"; 1064Shopify.theme.style = {"id":null,"handle":null}; 1065Shopify.cdnHost = "lovedepot.com/cdn"; 1066Shopify.routes = Shopify.routes || {}; 1067Shopify.routes.root = "/"; 1068Shopify.shopJsCdnBaseUrl = "https://cdn.shopify.com/shopifycloud/shop-js"; 1069Shopify.SignInWithShop = Shopify.SignInWithShop || {}; 1070Shopify.SignInWithShop.User = Shopify.SignInWithShop.User || {}; 1071Shopify.SignInWithShop.User.recognized = false;</script>
vendor: 1 bytes, line 1071
1071
1072<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
vendor: 1 bytes, line 1072
1072
1073<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 1073
1073
1074<script> 1075 window.Shopify = window.Shopify || {}; 1076 window.Shopify.SignInWithShop = window.Shopify.SignInWithShop || {}; 1077 window.Shopify.SignInWithShop.assetMetrics = { sampleRate: 0.25 }; 1078 window.Shopify.SignInWithShop.eligible = true; 1079</script>
vendor: 1 bytes, line 1079
1079
1080<script id="shop-js-analytics" type="application/json">{"pageType":"search"}</script>
vendor: 1 bytes, line 1080
1080
1081<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 1081
1081
1082<script type="module"> 1083 await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js"); 1084 1085 window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true}); 1086 1087</script>
vendor: 1 bytes, line 1087
1087
1088<script> 1089 window.Shopify = window.Shopify || {}; 1090 if (!window.Shopify.featureAssets) window.Shopify.featureAssets = {}; 1091 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"]}; 1092</script>
vendor: 1 bytes, line 1092
1092
1093<script>(function() { 1094 var isLoaded = false; 1095 function asyncLoad() { 1096 if (isLoaded) return; 1097 isLoaded = true; 1098 var urls = ["https:\/\/wareiq-shopify.s3.amazonaws.com\/wareiq-shipping-badges.js?shop=love-depot-india.myshopify.com","https:\/\/wareiq-shopify.s3.amazonaws.com\/wareiq-shipping-badges.js?shop=love-depot-india.myshopify.com","https:\/\/wareiq-shopify.s3.amazonaws.com\/wareiq-shipping-badges.js?shop=love-depot-india.myshopify.com","https:\/\/wareiq-shopify.s3.amazonaws.com\/wareiq-shipping-badges.js?shop=love-depot-india.myshopify.com","https:\/\/wareiq-shopify.s3.amazonaws.com\/wareiq-shipping-badges.js?shop=love-depot-india.myshopify.com","https:\/\/wareiq-shopify.s3.amazonaws.com\/wareiq-shipping-badges.js?shop=love-depot-india.myshopify.com","https:\/\/wareiq-shopify.s3.amazonaws.com\/wareiq-shipping-badges.js?shop=love-depot-india.myshopify.com","https:\/\/wareiq-shopify.s3.amazonaws.com\/wareiq-shipping-badges.js?shop=love-depot-india.myshopify.com","https:\/\/wareiq-shopify.s3.amazonaws.com\/wareiq-shipping-badges.js?shop=love-depot-india.myshopify.com","https:\/\/wareiq-shopify.s3.amazonaws.com\/wareiq-shipping-badges.js?shop=love-depot-india.myshopify.com","https:\/\/wareiq-shopify.s3.amazonaws.com\/wareiq-shipping-badges.js?shop=love-depot-india.myshopify.com","https:\/\/wareiq-shopify.s3.amazonaws.com\/wareiq-shipping-badges.js?shop=love-depot-india.myshopify.com","https:\/\/wareiq-shopify.s3.amazonaws.com\/wareiq-shipping-badges.js?shop=love-depot-india.myshopify.com","https:\/\/wareiq-shopify.s3.amazonaws.com\/wareiq-shipping-badges.js?shop=love-depot-india.myshopify.com"]; 1099 for (var i = 0; i < urls.length; i++) { 1100 var s = document.createElement('script'); 1101 s.type = 'text/javascript'; 1102 s.async = true; 1103 s.src = urls[i]; 1104 var x = document.getElementsByTagName('script')[0]; 1105 x.parentNode.insertBefore(s, x); 1106 } 1107 }; 1108 if(window.attachEvent) { 1109 window.attachEvent('onload', asyncLoad); 1110 } else { 1111 window.addEventListener('load', asyncLoad, false); 1112 } 1113})();</script>
vendor: 1 bytes, line 1113
1113
1114<script id="__st">var __st={"a":56505270341,"offset":19800,"reqid":"ee342d58-f0e7-489e-ad03-4a15aae9ec05-1791335260","pageurl":"lovedepot.com\/search","u":"5efba9cbfe5f","p":"searchresults"};</script>
vendor: 1 bytes, line 1114
1114
1115<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
vendor: 1 bytes, line 1115
1115
1116<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 1116
1116
1117<script integrity="sha256-JjoPp5ZfB1sSAs5SQaol1x1GgvveM+BgmRzyDexInEQ=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//lovedepot.com/cdn/shopifycloud/storefront/assets/storefront/load_feature-1bd60354.js" crossorigin="anonymous"></script>
vendor: 1 bytes, line 1117
1117
1118<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 = "//lovedepot.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>
1118<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 1118
1118
1119<script> 1120 window.Shopify = window.Shopify || {}; 1121 window.Shopify.MCP = window.Shopify.MCP || {}; 1122 window.Shopify.MCP.enabled = true; 1123 window.Shopify.MCP.shop = "love-depot-india.myshopify.com"; 1124 window.Shopify.MCP.mcpEndpoint = "https:\/\/lovedepot.com\/api\/mcp"; 1125 window.Shopify.MCP.tools = [{"name":"search_shop_policies_and_faqs","description":"Used to get facts about the stores policies, products, or services.\nSome examples of questions you can ask are:\n - What is your return policy?\n - What is your shipping policy?\n - What is your phone number?\n - What are your hours of operation?\"\nSet policy_types to also get the store's written policies (full text and URL).\n","inputSchema":{"$schema":"https:\/\/json-schema.org\/draft\/2020-12\/schema","type":"object","properties":{"query":{"type":"string","description":"A natural language query."},"context":{"type":"string","description":"Additional information about the request such as user demographics, mood, location, or other relevant details that could help in tailoring the response appropriately."},"policy_types":{"type":"array","items":{"type":"string","enum":["refund","shipping","privacy","terms_of_service","terms_of_sale","subscription","legal_notice","contact"]},"description":"Policy kinds to fetch, chosen from the user's question — e.g. [\"refund\"] for returns\/exchanges\/damaged items, [\"contact\"] for phone\/hours\/address. Include every kind the question touches. Omit it to get only FAQ answers."}},"required":["query"]}}]; 1126</script>
vendor: 1 bytes, line 1126
1126
1127<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("\/\/lovedepot.com\/cdn\/shopifycloud\/storefront\/assets\/storefront\/webmcp-c6b62ece.js","sha256-ke4DDuBjdvea3vxLWxHc9E9nq8zihuG4IfYEGbb77ys=");})(); 1128</script>
vendor: 1 bytes, line 1128
1128
1129<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://lovedepot.com/cdn/shopifycloud/portable-wallets/latest/portable-wallets.en.js",t.type="module",document.head.appendChild(t)}}; 1130</script>
vendor: 1 bytes, line 1130
1130
1131<script data-source-attribution="shopify.dynamic_checkout.buyer_consent"> 1132 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); 1133</script>
vendor: 1 bytes, line 1133
1133
1134<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})}})); 1135</script>
1135 1136
1137<script id="shopify-cfh-end">window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
1137 1138<link href="//lovedepot.com/cdn/shop/t/117/assets/theme-min.css?v=20804028374064787941790661093" rel="stylesheet" type="text/css" media="all" /><link href="//lovedepot.com/cdn/shop/t/117/assets/design-system.css?v=82148513856907750081775736826" rel="stylesheet" type="text/css" media="all" /><link href="//lovedepot.com/cdn/shop/t/117/assets/custom.css?v=92943816630421391411790686426" rel="stylesheet" type="text/css" media="all" /> 1139 1140 1141 1142 1143 1144 1145 1146 1147
1147<script src="https://bridge.shopflo.com/js/shopflo.bundle.js" async></script>
1147 1148 1149
1149<script> 1150 if ("navigation" in window) { 1151 // Modern path — catches everything 1152 navigation.addEventListener("navigate", (event) => { 1153 if (!event.canIntercept) return; 1154 if (event.hashChange || event.downloadRequest !== null) return; 1155 1156 const url = new URL(event.destination.url); 1157 1158 if (url.pathname === "/cart" || url.pathname.startsWith("/cart/")) { 1159 event.preventDefault(); 1160 triggerFloCart(); 1161 } 1162 }); 1163 1164 } else { 1165 // Fallback — covers older browsers 1166 // useCapture: true fires before the theme's own click listeners 1167 document.addEventListener("click", (e) => { 1168 const anchor = e.target.closest("a[href]"); 1169 if (!anchor) return; 1170 1171 try { 1172 const url = new URL(anchor.href, location.origin); 1173 if (url.pathname === "/cart" || url.pathname.startsWith("/cart/")) { 1174 e.preventDefault(); 1175 e.stopImmediatePropagation(); 1176 triggerFloCart(); 1177 } 1178 } catch {} 1179 }, true); 1180 } 1181 1182 function triggerFloCart() { 1183 console.log(":shopflo: opening cart"); 1184 window.handleFloCartBtn?.(); 1185 } 1186 </script>
1186 1187 <style> 1188 search-result-panel#main-search-results-product product-card.product-card[handle="le-wand-arch-massager"] { 1189 order: 1 !important; 1190 } 1191 1192 search-result-panel#main-search-results-product product-card.product-card { 1193 order: 2 !important; 1194 } 1195 </style> 1196 <!-- BEGIN app block: shopify://apps/se-wishlist-engine/blocks/app-embed/8f7c0857-8e71-463d-a168-8e133094753b --><link rel="preload" href="https://cdn.shopify.com/extensions/01a0c411-07b1-7271-9d7c-6ed52cf404ae/wishlist-engine-264/assets/wishlist-engine.css" as="style" onload="this.onload=null;this.rel='stylesheet'"> 1197<noscript><link rel="stylesheet" href="https://cdn.shopify.com/extensions/01a0c411-07b1-7271-9d7c-6ed52cf404ae/wishlist-engine-264/assets/wishlist-engine.css"></noscript> 1198 1199<meta name="wishlist_shop_current_currency" content="₹{{amount_no_decimals}}" id="wishlist_shop_current_currency"/>
1200<script data-id="Ad05seVZTT0FSY1FTM__14198427981142892921" type="application/javascript"> 1201 var customHeartIcon=''; 1202 var customHeartFillIcon=''; 1203</script>
1203 1204 1205
1206<script src="https://cdn.shopify.com/extensions/01a0c411-07b1-7271-9d7c-6ed52cf404ae/wishlist-engine-264/assets/wishlist-engine-app.js" defer></script>
1206 1207 1208<!-- END app block --><!-- BEGIN app block: shopify://apps/judge-me-reviews/blocks/judgeme_core/61ccd3b1-a9f2-4160-9fe9-4fec8413e5d8 --><!-- Start of Judge.me Core --> 1209 1210 1211 1212 1213 1214 1215 1216<link rel="dns-prefetch" href="https://cdn.judge.me"> 1217<link rel="dns-prefetch" href="https://cdn1.judge.me"> 1218<link rel="dns-prefetch" href="https://api.judge.me"> 1219
1220<script data-cfasync='false' class='jdgm-settings-script'>window.jdgmSettings={"pagination":5,"disable_web_reviews":false,"coupon_receiving_condition":"","coupon_value_type":"percentage","coupon_value_percentage":10,"coupon_value_fixed_amount":0,"coupon_discount_type":"single","coupon_tier_text_enabled":false,"coupon_tier_text_percentage":10,"coupon_tier_text_fixed_amount":0,"coupon_tier_photo_enabled":true,"coupon_tier_photo_percentage":10,"coupon_tier_photo_fixed_amount":0,"coupon_tier_video_enabled":false,"coupon_tier_video_percentage":10,"coupon_tier_video_fixed_amount":0,"enable_coupons":true,"badge_no_review_text":"No reviews","badge_n_reviews_text":"{{ average_rating_1_decimal }} \u003cspan\u003e({{ n }} reviews)\u003c/span\u003e","badge_star_color":"#FFBC00","hide_badge_preview_if_no_reviews":true,"badge_hide_text":false,"enforce_center_preview_badge":false,"widget_title":"People Really Love Us!","widget_open_form_text":"Write a review","widget_close_form_text":"Cancel review","widget_refresh_page_text":"Refresh page","widget_summary_text":"Based on {{ number_of_reviews }} review/reviews","widget_no_review_text":"Be the first to write a review","widget_name_field_text":"Display name","widget_verified_name_field_text":"Verified Name (public)","widget_name_placeholder_text":"Display name","widget_required_field_error_text":"This field is required.","widget_email_field_text":"Email address","widget_verified_email_field_text":"Verified Email (private, can not be edited)","widget_email_placeholder_text":"Your email address","widget_email_field_error_text":"Please enter a valid email address.","widget_rating_field_text":"Rating","widget_review_title_field_text":"Review Title","widget_review_title_placeholder_text":"Give your review a title","widget_review_body_field_text":"Review content","widget_review_body_placeholder_text":"Start writing here...","widget_pictures_field_text":"Picture/Video (optional)","widget_submit_review_text":"Submit Review","widget_submit_verified_review_text":"Submit Verified Review","widget_submit_success_msg_with_auto_publish":"Thank y
1220ou! Please refresh the page in a few moments to see your review. You can remove or edit your review by logging into \u003ca href='https://judge.me/login' target='_blank' rel='nofollow noopener'\u003eJudge.me\u003c/a\u003e","widget_submit_success_msg_no_auto_publish":"Thank you! Your review will be published as soon as it is approved by the shop admin. You can remove or edit your review by logging into \u003ca href='https://judge.me/login' target='_blank' rel='nofollow noopener'\u003eJudge.me\u003c/a\u003e","widget_show_default_reviews_out_of_total_text":"Showing {{ n_reviews_shown }} out of {{ n_reviews }} reviews.","widget_show_all_link_text":"Show all","widget_show_less_link_text":"Show less","widget_author_said_text":"{{ reviewer_name }} said:","widget_days_text":"{{ n }} days ago","widget_weeks_text":"{{ n }} week/weeks ago","widget_months_text":"{{ n }} month/months ago","widget_years_text":"{{ n }} year/years ago","widget_yesterday_text":"Yesterday","widget_today_text":"Today","widget_replied_text":"\u003e\u003e {{ shop_name }} replied:","widget_read_more_text":"Read more","widget_reviewer_name_as_initial":"first_name_only","widget_rating_filter_color":"","widget_rating_filter_see_all_text":"See all reviews","widget_sorting_most_recent_text":"Most Recent","widget_sorting_highest_rating_text":"Highest Rating","widget_sorting_lowest_rating_text":"Lowest Rating","widget_sorting_with_pictures_text":"Only Pictures","widget_sorting_most_helpful_text":"Most Helpful","widget_open_question_form_text":"Ask a question","widget_reviews_subtab_text":"Reviews","widget_questions_subtab_text":"Questions","widget_question_label_text":"Question","widget_answer_label_text":"Answer","widget_question_placeholder_text":"Write your question here","widget_submit_question_text":"Submit Question","widget_question_submit_success_text":"Thank you for your question! We will notify you once it gets answered.","widget_star_color":"#F2B844","verified_badge_text":"Verified","verified_badge_bg_color":"","verified_badge_text_color":"","verified_badge_placement":"left-of-reviewer-name","widget_review_max_height":3,"widget_hide_border":false,"widget_social_share":false,"widget_thumb":false,"widget_review_location_show":true,"widget_location_format":"","all_reviews_include_out_of_store_products":true,"all_reviews_out_of_store_text":"(out of store)","all_reviews_pagination":100,"all_reviews_product_name_prefix_text":"about","enable_review_pictures":true,"enable_question_anwser":false,"widget_theme":"leex","review_date_format":"dd/mm/yyyy","default_sort_method":"most-recent","enable_ai_review_visibility":true,"widget_product_reviews_subtab_text":"Product Reviews","widget_shop_reviews_subtab_text":"Shop Reviews","widget_other_products_reviews_text":"Reviews for other products","widget_store_reviews_subtab_text":"Store reviews","widget_product_variant_reference_text":"Review for","widget_no_store_reviews_text":"This store hasn't received any reviews yet","widget_web_restriction_product_reviews_text":"This product hasn't received any reviews yet","widget_no_items_text":"No items found","widget_show_more_text":"Show more","widget_write_a_store_review_text":"Write a Store Review","widget_product_and_store_reviews_text":"Product and store reviews","widget_reviews_in_collection_text":"Reviews in this collection","widget_other_languages_heading":"Reviews in Other Languages","widget_translate_review_text":"Translate review to {{ language }}","widget_translating_review_text":"Translating...","widget_show_original_translation_text":"Show original ({{ language }})","widget_translate_review_failed_text":"Review couldn't be translated.","widget_translate_review_retry_text":"Retry","widget_translate_review_try_again_later_text":"Try again later","show_product_url_for_grouped_product":false,"widget_sorting_pictures_first_text":"Pictures First","show_pictures_on_all_rev_page_mobile":false,"show_pictures_on_all_rev_page_desktop":false,"floating_tab_hide_mobile_install_preference":false,"floating_tab_button_name":"★ Reviews","floating_tab_title":"Let customers speak for us","floating_tab_button_color":"","floating_tab_button_background_color":"","floating_tab_url":"","floating_tab_url_enabled":false,"floating_tab_tab_style":"text","all_reviews_text_badge_text":"{{ shop.metafields.judgeme.shop_reviews_rating|round:1 }} | ({{ shop.metafields.judgeme.shop_reviews_count }} Reviews)","all_reviews_text_badge_text_branded_style":"{{ shop.metafields.judgeme.all_reviews_rating | round: 1 }} out of 5 stars based on {{ shop.metafields.judgeme.all_reviews_count }} reviews","is_all_reviews_text_badge_a_link":false,"show_stars_for_all_reviews_text_badge":true,"all_reviews_text_badge_url":"","all_reviews_text_style":"text","all_reviews_text_color_style":"custom","all_reviews_text_color":"#000000","all_reviews_text_show_jm_brand":true,"featured_carousel_show_header":true,"featured_carousel_title":"Let customers speak for us","testimonials_carousel_title":"Customers are saying","videos_carousel_title":"Real customer stories","cards_carousel_title":"Customers are saying","featured_carousel_count_text":"from {{ n }} reviews","featured_carousel_add_link_to_all_reviews_page":false,"featured_carousel_url":"","featured_carousel_show_images":true,"featured_carousel_autoslide_interval":5,"featured_carousel_arrows_on_the_sides":false,"featured_carousel_height":250,"featured_carousel_width":80,"featured_carousel_image_size":0,"featured_carousel_image_height":250,"featured_carousel_arrow_color":"#eeeeee","verified_count_badge_style":"branded","verified_count_badge_orientation":"horizontal","verified_count_badge_color_style":"judgeme_brand_color","verified_count_badge_color":"#108474","is_verified_count_badge_a_link":false,"verified_count_badge_url":"","verified_count_badge_show_jm_brand":true,"widget_rating_preset_default":5,"widget_first_sub_tab":"product-reviews","widget_show_histogram":true,"widget_histogram_use_custom_color":false,"widget_pagination_use_custom_color":false,"widget_star_use_custom_color":false,"widget_verified_badge_use_custom_color":false,"widget_write_review_use_custom_color":false,"picture_reminder_submit_button":"Upload Pictures","enable_review_videos":true,"mute_video_by_default":true,"widget_sorting_videos_first_text":"Videos First","widget_review_pending_text":"Pending","featured_carousel_items_for_large_screen":3,"social_share_options_order":"Facebook,Twitter","remove_microdata_snippet":true,"disable_json_ld":true,"enable_json_ld_products":false,"preview_badge_show_question_text":false,"preview_badge_no_question_text":"No questions","preview_badge_n_question_text":"{{ number_of_questions }} question/questions","qa_badge_show_icon":false,"qa_badge_position":"same-row","remove_judgeme_branding":false,"widget_add_search_bar":false,"widget_search_bar_placeholder":"Search","widget_sorting_verified_only_text":"Verified only","widget_sorting_most_relevant_text":"Most Relevant","featured_carousel_theme":"default","featured_carousel_show_rating":true,"featured_carousel_show_title":true,"featured_carousel_show_body":true,"featured_carousel_show_date":false,"featured_carousel_show_reviewer":true,"featured_carousel_show_product":false,"featured_carousel_header_background_color":"#108474","featured_carousel_header_text_color":"#ffffff","featured_carousel_name_product_separator":"reviewed","featured_carousel_full_star_background":"#108474","featured_carousel_empty_star_background":"#dadada","featured_carousel_vertical_theme_background":"#f9fafb","featured_carousel_verified_badge_enable":true,"featured_carousel_verified_badge_color":"#108474","featured_carousel_border_style":"round","featured_carousel_review_line_length_limit":3,"featured_carousel_more_reviews_button_text":"Read more reviews","featured_carousel_view_product_button_text":"View product","all_reviews_page_load_reviews_on":"scroll","all_reviews_page_load_more_text":"Load More Reviews","disable_fb_tab_reviews":false,"enable_ajax_cdn_cache":false,"widget_public_name_text":"displayed publicly like","default_reviewer_name":"John Smith","default_reviewer_name_has_non_latin":true,"widget_reviewer_anonymous":"Anonymous","medals_widget_title":"Judge.me Review Medals","medals_widget_background_color":"#f9fafb","medals_widget_position":"footer_all_pages","medals_widget_border_color":"#f9fafb","medals_widget_verified_text_position":"left","medals_widget_use_monochromatic_version":false,"medals_widget_elements_color":"#108474","show_reviewer_avatar":true,"widget_invalid_yt_video_url_error_text":"Not a YouTube video URL","widget_max_length_field_error_text":"Please enter no more than {0} characters.","widget_show_country_flag":false,"widget_show_collected_via_shop_app":true,"widget_verified_by_shop_badge_style":"light","widget_verified_by_shop_text":"Verified by Shop","widget_show_photo_gallery":true,"widget_load_with_code_splitting":true,"widget_ugc_install_preference":false,"widget_ugc_title":"Made by us, Shared by you","widget_ugc_subt
1220itle":"Tag us to see your picture featured in our page","widget_ugc_arrows_color":"#ffffff","widget_ugc_primary_button_text":"Buy Now","widget_ugc_primary_button_background_color":"#108474","widget_ugc_primary_button_text_color":"#ffffff","widget_ugc_primary_button_border_width":"0","widget_ugc_primary_button_border_style":"none","widget_ugc_primary_button_border_color":"#108474","widget_ugc_primary_button_border_radius":"25","widget_ugc_secondary_button_text":"Load More","widget_ugc_secondary_button_background_color":"#ffffff","widget_ugc_secondary_button_text_color":"#108474","widget_ugc_secondary_button_border_width":"2","widget_ugc_secondary_button_border_style":"solid","widget_ugc_secondary_button_border_color":"#108474","widget_ugc_secondary_button_border_radius":"25","widget_ugc_reviews_button_text":"View Reviews","widget_ugc_reviews_button_background_color":"#ffffff","widget_ugc_reviews_button_text_color":"#108474","widget_ugc_reviews_button_border_width":"2","widget_ugc_reviews_button_border_style":"solid","widget_ugc_reviews_button_border_color":"#108474","widget_ugc_reviews_button_border_radius":"25","widget_ugc_reviews_button_link_to":"judgeme-reviews-page","widget_ugc_show_post_date":true,"widget_ugc_max_width":"800","widget_rating_metafield_value_type":true,"widget_primary_color":"#9B0F07","widget_enable_secondary_color":false,"widget_secondary_color":"#edf5f5","widget_summary_average_rating_text":"{{ average_rating }} out of 5","widget_media_grid_title":"Shared Images by Our Customers","widget_media_grid_see_more_text":"See more","widget_round_style":true,"widget_show_product_medals":false,"widget_verified_by_judgeme_text":"Verified by Judge.me","widget_show_store_medals":true,"widget_verified_by_judgeme_text_in_store_medals":"Verified by Judge.me","widget_media_field_exceed_quantity_message":"Sorry, we can only accept {{ max_media }} for one review.","widget_media_field_exceed_limit_message":"{{ file_name }} is too large, please select a {{ media_type }} less than {{ size_limit }}MB.","widget_review_submitted_text":"Review Submitted!","widget_question_submitted_text":"Question Submitted!","widget_close_form_text_question":"Cancel","widget_write_your_answer_here_text":"Write your answer here","widget_enabled_branded_link":true,"widget_show_collected_by_judgeme":true,"widget_reviewer_name_color":"","widget_write_review_text_color":"","widget_write_review_bg_color":"","widget_collected_by_judgeme_text":"collected by Judge.me","widget_pagination_type":"standard","widget_load_more_text":"Load More","widget_load_more_color":"#108474","widget_full_review_text":"Full Review","widget_read_more_reviews_text":"Read More Reviews","widget_read_questions_text":"Read Questions","widget_questions_and_answers_text":"Questions \u0026 Answers","widget_verified_by_text":"Verified by","widget_verified_text":"Verified","widget_number_of_reviews_text":"{{ number_of_reviews }} reviews","widget_back_button_text":"Back","widget_next_button_text":"Next","widget_custom_forms_filter_button":"Filters","custom_forms_style":"horizontal","widget_show_review_information":false,"how_reviews_are_collected":"How reviews are collected?","widget_show_review_keywords":false,"widget_gdpr_statement":"How we use your data: We'll only contact you about the review you left, and only if necessary. By submitting your review, you agree to Judge.me's \u003ca href='https://judge.me/terms' target='_blank' rel='nofollow noopener'\u003eterms\u003c/a\u003e, \u003ca href='https://judge.me/privacy' target='_blank' rel='nofollow noopener'\u003eprivacy\u003c/a\u003e and \u003ca href='https://judge.me/content-policy' target='_blank' rel='nofollow noopener'\u003econtent\u003c/a\u003e policies.","widget_multilingual_sorting_enabled":false,"widget_translate_review_content_enabled":false,"widget_translate_review_content_method":"manual","popup_widget_review_selection":"automatically_with_pictures","popup_widget_round_border_style":true,"popup_widget_show_title":true,"popup_widget_show_body":true,"popup_widget_show_reviewer":false,"popup_widget_show_product":true,"popup_widget_show_pictures":true,"popup_widget_use_review_picture":true,"popup_widget_show_on_home_page":true,"popup_widget_show_on_product_page":true,"popup_widget_show_on_collection_page":true,"popup_widget_show_on_cart_page":true,"popup_widget_position":"bottom_left","popup_widget_first_review_delay":5,"popup_widget_duration":5,"popup_widget_interval":5,"popup_widget_review_count":5,"popup_widget_hide_on_mobile":true,"popup_widget_source_mode":"auto","popup_widget_page_product":"current_product","popup_widget_page_collection":"current_collection","popup_widget_page_cart":"cart_mode","popup_widget_page_home":"all","popup_widget_star_rating":"all","popup_widget_review_type":"all","popup_widget_top_up_thin_pages":true,"popup_widget_corner_styling":"soft","review_snippet_widget_round_border_style":true,"review_snippet_widget_card_color":"#FFFFFF","review_snippet_widget_text_color":"#000000","review_snippet_widget_lighter_text_color":"#7B7B7B","review_snippet_widget_slider_arrows_background_color":"#FFFFFF","review_snippet_widget_slider_arrows_color":"#000000","review_snippet_widget_star_color":"#9B0F07","show_product_variant":false,"all_reviews_product_variant_label_text":"Variant: ","widget_show_verified_branding":true,"widget_ai_summary_title":"Customers say","widget_ai_summary_disclaimer":"Summarized and selected by AI from recent customer reviews","widget_show_ai_summary":false,"widget_show_ai_summary_bg":false,"write_review_button_visibility":"everyone","store_summary_widget_heading":"Customers rate this store","store_summary_widget_button_text":"View customer reviews","store_summary_widget_button_theme_text":"See AI reviews summary","widget_show_review_title_input":true,"widget_autofill_review_title":true,"redirect_reviewers_invited_via_email":"review_widget","request_store_review_after_product_review":false,"request_review_other_products_in_order":true,"review_form_color_scheme":"custom","review_form_corner_style":"soft","review_form_star_color":"#FFBC00","review_form_text_color":"#333333","review_form_background_color":"#ffffff","review_form_field_background_color":"#fafafa","review_form_button_color":"#FF4B2B","review_form_button_text_color":"#ffffff","review_form_modal_overlay_color":"#000000","review_form_theme":"multi_step","review_form_location":"in_store_popup","review_form_external_page_background_color":"#C5F7F0","review_content_screen_title_text":"Write a Review","review_content_introduction_text":"We would love it if you would share a bit about your experience.","store_review_form_title_text":"How would you rate this store?","store_review_form_introduction_text":"We would love it if you would share a bit about your experience.","show_review_guidance_text":true,"one_star_review_guidance_text":"Poor","five_star_review_guidance_text":"Great","customer_information_screen_title_text":"About you","customer_information_introduction_text":"Please tell us more about you.","custom_questions_screen_title_text":"Your experience in more detail","custom_questions_introduction_text":"Here are a few questions to help us understand more about your experience.","review_submitted_screen_title_text":"Thanks for your review!","review_submitted_screen_thank_you_text":"We are processing it and it will appear on the store soon.","review_submitted_screen_email_verification_text":"Please confirm your email by clicking the link we just sent you. This helps us keep reviews authentic.","confirm_email_screen_title_text":"Confirm your email","confirm_email_screen_message_text":"To help keep reviews authentic, we'll send you a secure link to continue writing your review. It only takes a moment.","check_email_screen_title_text":"Check your email","check_email_screen_message_text":"We sent you an email to {{ email }}. Click the button on the email to continue.","check_email_screen_resend_message_text":"Email resent!","check_email_resend_hint_text":"Didn't get the email? Check your spam folder or [resend the email].","verification_email_rate_limit_error_text":"You've reached the limit for review attempts on this product. Please check your inbox or try again later.","review_submitted_request_store_review_text":"Would you like to share your experience of shopping with us?","review_submitted_review_other_products_text":"Would you like to review these products?","store_review_screen_title_text":"Would you like to share your experience of shopping with us?","store_review_introduction_text":"We value your feedback and use it to improve. Please share any thoughts or suggestions you have.","reviewer_media_screen_title_picture_text":"Share a picture","reviewer_media_introduction_picture_text":"Upload a photo to support your review.","reviewer_media_screen_title_video_text":"Share a video","reviewer_media_introduction_video_text":"Upload a video to support your review.","reviewer_media_screen_title_picture_or_video_text":"Share a picture or video","reviewer_media_introduction_picture_or_video_text":"Upload a photo or video to support your review.","reviewer_media_
1220youtube_url_text":"Paste your Youtube URL here","advanced_settings_next_step_button_text":"Next","advanced_settings_close_review_button_text":"Close","modal_write_review_flow":true,"write_review_flow_required_text":"Required","write_review_flow_privacy_message_text":"We respect your privacy.","write_review_flow_anonymous_text":"Post review as anonymous","write_review_flow_visibility_text":"This won't be visible to other customers.","write_review_flow_multiple_selection_help_text":"Select as many as you like","write_review_flow_single_selection_help_text":"Select one option","write_review_flow_required_field_error_text":"This field is required","write_review_flow_invalid_email_error_text":"Please enter a valid email address","write_review_flow_max_length_error_text":"Max. {{ max_length }} characters.","write_review_flow_media_upload_text":"\u003cb\u003eClick to upload\u003c/b\u003e or drag and drop","write_review_flow_gdpr_statement":"We'll only contact you about your review if necessary. By submitting your review, you agree to our \u003ca href='https://judge.me/terms' target='_blank' rel='nofollow noopener'\u003eterms and conditions\u003c/a\u003e and \u003ca href='https://judge.me/privacy' target='_blank' rel='nofollow noopener'\u003eprivacy policy\u003c/a\u003e.","rating_only_reviews_enabled":false,"show_negative_reviews_help_screen":false,"new_review_flow_help_screen_rating_threshold":3,"negative_review_resolution_screen_title_text":"Tell us more","negative_review_resolution_text":"Your experience matters to us. If there were issues with your purchase, we're here to help. Feel free to reach out to us, we'd love the opportunity to make things right.","negative_review_resolution_button_text":"Contact us","negative_review_resolution_proceed_with_review_text":"Leave a review","negative_review_resolution_subject":"Issue with purchase from {{ shop_name }}.{{ order_name }}","coupon_promo_intro_any_review_text":"Write a review and get a coupon for {{ amount }} off your next purchase","coupon_promo_intro_with_photo_text":"Write a review and add a photo or video to get a coupon for {{ amount }} off your next purchase","coupon_promo_intro_with_video_text":"Write a review and add a video to get a coupon for {{ amount }} off your next purchase","coupon_promo_intro_up_to_any_review_text":"Write a review and get a coupon for up to {{ amount }} off your next purchase","coupon_promo_intro_up_to_with_photo_text":"Write a review and add a photo or video to get a coupon for up to {{ amount }} off your next purchase","coupon_promo_intro_external_text":"Write a review and get a reward for your next purchase","coupon_promo_intro_external_with_photo_text":"Write a review and add a photo or video to get a reward for your next purchase","coupon_promo_intro_external_with_video_text":"Write a review and add a video to get a reward for your next purchase","coupon_promo_media_photo_text":"Add a photo or video and get a coupon for {{ amount }} off your next purchase","coupon_promo_media_photo_only_text":"Add a photo and get a coupon for {{ amount }} off your next purchase","coupon_promo_media_video_text":"Add a video and get a coupon for {{ amount }} off your next purchase","coupon_promo_media_external_photo_text":"Add a photo or video and get a reward for your next purchase","coupon_promo_media_external_photo_only_text":"Add a photo and get a reward for your next purchase","coupon_promo_media_external_video_text":"Add a video and get a reward for your next purchase","coupon_promo_success_text":"You've got a coupon for your next purchase at {{ shop_name }}!","coupon_promo_success_subtext":"You'll receive your coupon email within the hour.","preview_badge_collection_page_install_status":false,"widget_review_custom_css":"","preview_badge_custom_css":"","preview_badge_stars_count":"5-stars","featured_carousel_custom_css":"","floating_tab_custom_css":"","all_reviews_widget_custom_css":"","medals_widget_custom_css":"","verified_badge_custom_css":"","all_reviews_text_custom_css":"","transparency_badges_collected_via_store_invite":false,"transparency_badges_from_another_provider":false,"transparency_badges_collected_from_store_visitor":false,"transparency_badges_collected_by_verified_review_provider":true,"transparency_badges_earned_reward":false,"transparency_badges_collected_via_store_invite_text":"Review collected via store invitation","transparency_badges_from_another_provider_text":"Review collected from another provider","transparency_badges_collected_from_store_visitor_text":"Review collected from a store visitor","transparency_badges_written_in_google_text":"Review written in Google","transparency_badges_written_in_etsy_text":"Review written in Etsy","transparency_badges_written_in_shop_app_text":"Review written in Shop App","transparency_badges_earned_reward_text":"Review earned a reward for future purchase","product_review_widget_per_page":3,"widget_other_languages_reviews_per_page":3,"widget_store_review_label_text":"Review about the store","widget_cart_mode_aggregate_heading_text":"Customers rate this store","checkout_comment_extension_title_on_product_page":"Customer Comments","checkout_comment_extension_num_latest_comment_show":5,"checkout_comment_extension_format":"name_and_timestamp","checkout_comment_customer_name":"last_initial","checkout_comment_comment_notification":true,"preview_badge_collection_page_install_preference":false,"preview_badge_home_page_install_preference":false,"preview_badge_product_page_install_preference":false,"review_widget_install_preference":"","review_carousel_install_preference":false,"floating_reviews_tab_install_preference":"none","verified_reviews_count_badge_install_preference":false,"all_reviews_text_install_preference":false,"review_widget_best_location":false,"judgeme_medals_install_preference":false,"review_widget_revamp_enabled":false,"review_widget_qna_enabled":false,"review_widget_revamp_dual_publish_end_date":"2026-01-21T05:40:47.000+00:00","review_widget_header_theme":"standard","review_widget_widget_title_enabled":true,"review_widget_header_text_size":"medium","review_widget_header_text_weight":"regular","review_widget_average_rating_style":"minimal","review_widget_bar_chart_enabled":true,"review_widget_bar_chart_type":"numbers","review_widget_bar_chart_style":"standard","review_widget_expanded_media_gallery_enabled":true,"review_widget_show_review_highlights":false,"review_widget_show_review_keywords_in_gray":false,"review_widget_reviews_section_theme":"standard","review_widget_image_style":"thumbnails","review_widget_review_image_ratio":"square","review_widget_stars_size":"medium","review_widget_verified_badge":"standard_text","review_widget_review_title_text_size":"medium","review_widget_review_text_size":"medium","review_widget_review_text_length":"compact","review_widget_number_of_columns_desktop":3,"review_widget_carousel_transition_speed":5,"review_widget_custom_questions_answers_display":"always","review_widget_card_section_size":"small","review_widget_button_text_color":"#FFFFFF","review_widget_text_color":"#000000","review_widget_lighter_text_color":"#7B7B7B","review_widget_corner_styling":"soft","review_widget_review_word_singular":"review","review_widget_review_word_plural"
1220:"reviews","review_widget_voting_label":"Helpful?","review_widget_shop_reply_label":"Reply from {{ shop_name }}:","review_widget_filters_title":"Filters","review_widget_filter_rating_title":"Rating","review_widget_filter_keyword_title":"Keyword","review_widget_clear_filters_text":"Clear filters","review_widget_expand_more_text":"More","review_widget_review_highlights_title":"Review highlights","qna_widget_question_word_singular":"Question","qna_widget_question_word_plural":"Questions","qna_widget_answer_reply_label":"Answer from {{ answerer_name }}:","qna_content_screen_title_text":"Ask a question about this product","qna_widget_question_required_field_error_text":"Please enter your question.","qna_widget_flow_gdpr_statement":"We'll only contact you about your question if necessary. By submitting your question, you agree to our \u003ca href='https://judge.me/terms' target='_blank' rel='nofollow noopener'\u003eterms and conditions\u003c/a\u003e and \u003ca href='https://judge.me/privacy' target='_blank' rel='nofollow noopener'\u003eprivacy policy\u003c/a\u003e.","qna_widget_question_submitted_text":"Thanks for your question!","qna_widget_close_form_text_question":"Close","qna_widget_question_submit_success_text":"We’ll notify you by email when your question is answered.","all_reviews_widget_v2025_enabled":false,"all_reviews_widget_v2025_header_theme":"default","all_reviews_widget_v2025_widget_title_enabled":true,"all_reviews_widget_v2025_header_text_size":"medium","all_reviews_widget_v2025_header_text_weight":"regular","all_reviews_widget_v2025_average_rating_style":"compact","all_reviews_widget_v2025_bar_chart_enabled":true,"all_reviews_widget_v2025_bar_chart_type":"numbers","all_reviews_widget_v2025_bar_chart_style":"standard","all_reviews_widget_v2025_expanded_media_gallery_enabled":false,"all_reviews_widget_v2025_show_store_medals":true,"all_reviews_widget_v2025_show_photo_gallery":true,"all_reviews_widget_v2025_show_review_keywords":false,"all_reviews_widget_v2025_show_ai_summary":false,"all_reviews_widget_v2025_show_ai_summary_bg":false,"all_reviews_widget_v2025_show_review_highlights":false,"all_reviews_widget_v2025_show_review_keywords_in_gray":false,"all_reviews_widget_v2025_add_search_bar":false,"all_reviews_widget_v2025_default_sort_method":"most-recent","all_reviews_widget_v2025_reviews_per_page":10,"all_reviews_widget_v2025_reviews_section_theme":"default","all_reviews_widget_v2025_image_style":"thumbnails","all_reviews_widget_v2025_review_image_ratio":"square","all_reviews_widget_v2025_stars_size":"medium","all_reviews_widget_v2025_verified_badge":"standard_text","all_reviews_widget_v2025_review_title_text_size":"medium","all_reviews_widget_v2025_review_text_size":"medium","all_reviews_widget_v2025_review_text_length":"medium","all_reviews_widget_v2025_number_of_columns_desktop":3,"all_reviews_widget_v2025_carousel_transition_speed":5,"all_reviews_widget_v2025_custom_questions_answers_display":"always","all_reviews_widget_v2025_review_dates":false,"all_reviews_widget_v2025_card_section_size":"small","all_reviews_widget_v2025_show_product_variant":false,"all_reviews_widget_v2025_show_reviewer_avatar":true,"all_reviews_widget_v2025_reviewer_name_as_initial":"","all_reviews_widget_v2025_review_location_show":false,"all_reviews_widget_v2025_location_format":"","all_reviews_widget_v2025_show_country_flag":false,"all_reviews_widget_v2025_widget_thumb":false,"all_reviews_widget_v2025_verified_by_shop_badge_style":"light","all_reviews_widget_v2025_social_share":false,"all_reviews_widget_v2025_social_share_options_order":"Facebook,Twitter,LinkedIn,Pinterest","all_reviews_widget_v2025_pagination_type":"standard","all_reviews_widget_v2025_button_text_color":"#FFFFFF","all_reviews_widget_v2025_text_color":"#000000","all_reviews_widget_v2025_lighter_text_color":"#7B7B7B","all_reviews_widget_v2025_corner_styling":"soft","all_reviews_widget_v2025_title":"Customer reviews","all_reviews_widget_v2025_ai_summary_title":"Customers say about this store","all_reviews_widget_v2025_no_review_text":"Be the first to write a review","all_reviews_widget_v2025_review_highlights_title":"Review highlights","reviews_grid_widget_show_sample_reviews":false,"reviews_grid_widget_review_selection":"all","reviews_grid_widget_select_products":[],"reviews_grid_widget_show_media_only":false,"reviews_grid_widget_display_order":"media_first","reviews_grid_widget_card_grouping":"per_media","reviews_grid_widget_columns_desktop":3,"reviews_grid_widget_rows_desktop":3,"reviews_grid_widget_columns_mobile":2,"reviews_grid_widget_rows_mobile":6,"reviews_grid_widget_show_stars":true,"reviews_grid_widget_show_reviewer_name":true,"reviews_grid_widget_show_review_title_on_hover_desktop":true,"reviews_grid_widget_corner_styling":"soft","reviews_grid_widget_card_spacing":"medium","reviews_grid_widget_header_text_color":"#000000","reviews_grid_widget_star_and_reviewer_name_color":"#F9F9F9","reviews_grid_widget_overlay_and_background_color":"#000000","reviews_grid_widget_content_color":"#F9F9F9","reviews_grid_widget_header_text":"From our customers","reviews_grid_widget_show_average_rating":true,"trust_badge_enabled":false,"trust_badge_structure":"outline","trust_badge_color":"black","trust_badge_star":"black","trust_badge_rating_display_default":"show_avg_text","platform":"shopify","branding_url":"https://app.judge.me/reviews","branding_text":"Powered by Judge.me","locale":"en","reply_name":"Love Depot","shop_currency":"INR","widget_version":"3.0","footer":true,"autopublish":true,"review_dates":true,"enable_custom_form":false,"shop_locale":"en","enable_multi_locales_translations":true,"show_review_title_input":true,"autofill_review_title":true,"review_verification_email_status":"always","require_verification_before_submit":false,"sign_in_with_
1220shop_enabled":false,"customer_account_validation_enabled":true,"most_relevant_sort_enabled":false,"widget_events_v4_impressions_enabled":false,"widget_events_review_grain_enabled":false,"widget_events_v4_time_in_view_enabled":false,"widget_events_v4_session_key_enabled":false,"widget_events_v4_interactions_enabled":false,"widget_attribution_exposure_timestamps_enabled":false,"widget_attribution_v4_exposures_enabled":false,"coupon_promo_invited_eligible":true,"coupon_promo_web_eligible":true,"uses_coupon_integration":false,"uses_external_coupon":true,"hostname_allowlist":"","can_be_branded":false,"rtl_stars_enabled_ar":true,"rtl_stars_enabled_he":true,"reply_name_text":"Love Depot"};</script>
1220 <style class='jdgm-settings-style'>.jdgm-xx{left:0}:root{--jdgm-primary-color: #9B0F07;--jdgm-secondary-color: rgba(155,15,7,0.1);--jdgm-star-color: #F2B844;--jdgm-write-review-text-color: white;--jdgm-write-review-bg-color: #9B0F07;--jdgm-paginate-color: #9B0F07;--jdgm-border-radius: 10;--jdgm-reviewer-name-color: #9B0F07}.jdgm-histogram__bar-content{background-color:#9B0F07}.jdgm-rev[data-verified-buyer=true] .jdgm-rev__icon.jdgm-rev__icon:after,.jdgm-rev__buyer-badge.jdgm-rev__buyer-badge{color:white;background-color:#9B0F07}.jdgm-review-widget--small .jdgm-gallery.jdgm-gallery .jdgm-gallery__thumbnail-link:nth-child(8) .jdgm-gallery__thumbnail-wrapper.jdgm-gallery__thumbnail-wrapper:before{content:"See more"}@media only screen and (min-width: 768px){.jdgm-gallery.jdgm-gallery .jdgm-gallery__thumbnail-link:nth-child(8) .jdgm-gallery__thumbnail-wrapper.jdgm-gallery__thumbnail-wrapper:before{content:"See more"}}.jdgm-preview-badge .jdgm-star.jdgm-star{color:#FFBC00}.jdgm-prev-badge[data-average-rating='0.00']{display:none !important}.jdgm-author-fullname{display:none !important}.jdgm-author-all-initials{display:none !important}.jdgm-author-last-initial{display:none !important}.jdgm-rev-widg__title{visibility:hidden}.jdgm-rev-widg__summary-text{visibility:hidden}.jdgm-prev-badge__text{visibility:hidden}.jdgm-rev__prod-link-prefix:before{content:'about'}.jdgm-rev__variant-label:before{content:'Variant: '}.jdgm-rev__out-of-store-text:before{content:'(out of store)'}@media only screen and (min-width: 768px){.jdgm-rev__pics .jdgm-rev_all-rev-page-picture-separator,.jdgm-rev__pics .jdgm-rev__product-picture{display:none}}@media only screen and (max-width: 768px){.jdgm-rev__pics .jdgm-rev_all-rev-page-picture-separator,.jdgm-rev__pics .jdgm-rev__product-picture{display:none}}.jdgm-preview-badge[data-template="product"]{display:none !important}.jdgm-preview-badge[data-template="collection"]{display:none !important}.jdgm-preview-badge[data-template="index"]{display:none !important}.jdgm-review-widget[data-from-snippet="true"]{display:none !important}.jdgm-verified-count-badget[data-from-snippet="true"]{display:none !important}.jdgm-carousel-wrapper[data-from-snippet="true"]{display:none !important}.jdgm-all-reviews-text[data-from-snippet="true"]{display:none !important}.jdgm-medals-section[data-from-snippet="true"]{display:none !important}.jdgm-ugc-media-wrapper[data-from-snippet="true"]{display:none !important}.jdgm-rev__transparency-badge[data-badge-type="review_collected_via_store_invitation"]{display:none !important}.jdgm-rev__transparency-badge[data-badge-type="review_collected_from_another_provider"]{display:none !important}.jdgm-rev__transparency-badge[data-badge-type="review_collected_from_store_visitor"]{display:none !important}.jdgm-rev__transparency-badge[data-badge-type="review_earned_for_future_purchase"]{display:none !important}.jdgm-review-snippet-widget{--jdgm-snippet-card-color: #fff;--jdgm-snippet-text-color: #000;--jdgm-snippet-lighter-text-color: #7B7B7B;--jdgm-snippet-star-color: #9B0F07;--jdgm-snippet-border-radius: 8px;--jdgm-snippet-arrows-bg-color: #fff;--jdgm-snippet-arrows-color: #000}.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__cards-container .jdgm-rev-snippet-card{border-radius:8px;background:#fff}.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__cards-container .jdgm-rev-snippet-card__rev-rating .jdgm-star{color:#9B0F07}.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__prev-btn,.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__next-btn{border-radius:50%;background:#fff}.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__prev-btn>svg,.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__next-btn>svg{fill:#000}.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jm-mfp-content,.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev__icon,.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev__pic-img,.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev__reply{border-radius:8px}.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev[data-verified-buyer="true"] .jdgm-full-rev__icon::after{border-radius:8px}.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev .jdgm-rev__buyer-badge{border-radius:calc( 8px / 2 )}.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev .jdgm-full-rev__replier::before{content:'Love Depot'}.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev .jdgm-full-rev__product-button{border-radius:calc( 8px * 6 )} 1221</style> <style class='jdgm-settings-style'></style> 1222 1223 1224 1225 1226 <style class='jdgm-miracle-styles'> 1227 @-webkit-keyframes jdgm-spin{0%{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);-ms-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes jdgm-spin{0%{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);-ms-transform:rotate(359deg);transform:rotate(359deg)}}@font-face{font-family:'JudgemeStar';src:url("data:application/x-font-woff;charset=utf-8;base64,d09GRgABAAAAAAScAA0AAAAABrAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAEgAAAABoAAAAcbyQ+3kdERUYAAARgAAAAHgAAACAAMwAGT1MvMgAAAZgAAABGAAAAVi+vS9xjbWFwAAAB8AAAAEAAAAFKwBMjvmdhc3AAAARYAAAACAAAAAj//wADZ2x5ZgAAAkAAAAEJAAABdH33LXtoZWFkAAABMAAAAC0AAAA2BroQKWhoZWEAAAFgAAAAHAAAACQD5QHQaG10eAAAAeAAAAAPAAAAFAYAAABsb2NhAAACMAAAAA4AAAAOAO4AeG1heHAAAAF8AAAAHAAAACAASgAvbmFtZQAAA0wAAADeAAABkorWfVZwb3N0AAAELAAAACkAAABEp3ubLXgBY2BkYADhPPP4OfH8Nl8ZuJkYQODS2fRrCPr/aSYGxq1ALgcDWBoAO60LkwAAAHgBY2BkYGDc+v80gx4TAwgASaAICmABAFB+Arl4AWNgZGBgYGPQYWBiAAIwyQgWc2AAAwAHVQB6eAFjYGRiYJzAwMrAwejDmMbAwOAOpb8ySDK0MDAwMbByMsCBAAMCBKS5pjA4PGB4wMR44P8BBj3GrQymQGFGkBwAjtgK
1227/gAAeAFjYoAAEA1jAwAAZAAHAHgB3crBCcAwDEPRZydkih567CDdf4ZskmLwFBV8xBfCaC4BXkOUmx4sU0h2ngNb9V0vQCxaRKIAevT7fGWuBrEAAAAAAAAAAAA0AHgAugAAeAF9z79Kw1AUx/FzTm7un6QmJtwmQ5Bg1abgEGr/BAqlU6Gju+Cgg1MkQ/sA7Vj7BOnmO/gUvo2Lo14NqIO6/IazfD8HEODtmQCfoANwNsyp2/GJt3WKQrd1NLiYYWx2PBqOsmJMEOznPOTzfSCrhAtbbLdmeFLJV9eKd63WLrZcIcuaEVdssWCKM6pLCfTVOYbz/0pNSMSZKLIZpvh78sAUH6PlMrreTCabP9r+Z/puPZ2ur/RqpQHgh+MIegCnXeM4MRAPjYN//5tj4ZtTjkFqEdmeMShlEJ7tVAly2TAkx6R68Fl4E/aVvn8JqHFQ4JS1434gXKcuL31dDhzs3YbsEOAd/IU88gAAAHgBfY4xTgMxEEVfkk0AgRCioKFxQYd2ZRtpixxgRU2RfhU5q5VWseQ4JdfgAJyBlmNwAM7ABRhZQ0ORwp7nr+eZAa54YwYg9zm3ynPOeFRe8MCrciXOh/KSS76UV5L/iDmrLiS5AeU519wrL3jmSbkS5115yR2fyivJv9kx0ZMZ2RLZw27q87iNQi8EBo5FSPIMw3HqBboi5lKTGAGDp8FKXWP+t9TU01Lj5His1Ba6uM9dTEMwvrFmbf5GC/q2drW3ruXUhhsCiQOjznFlCzYhHUZp4xp76vsvQh89CQAAeAFjYGJABowM6IANLMrEyMTIzMjCXpyRWJBqZshWXJJYBKOMAFHFBucAAAAAAAAB//8AAngBY2BkYGDgA2IJBhBgAvKZGViBJAuYxwAABJsAOgAAeAFjYGBgZACCk535hiD60tn0azAaAEqpB6wAAA==") format("woff");font-weight:normal;font-style:normal}.jdgm-star{font-family:'JudgemeStar';display:inline !important;text-decoration:none !important;padding:0 4px 0 0 !important;margin:0 !important;font-weight:bold;opacity:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.jdgm-star:hover{opacity:1}.jdgm-star:last-of-type{padding:0 !important}.jdgm-star.jdgm--on:before{content:"\e000"}.jdgm-star.jdgm--off:before{content:"\e001"}.jdgm-star.jdgm--half:before{content:"\e002"}.jdgm-widget *{margin:0;line-height:1.4;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-overflow-scrolling:touch}.jdgm-hidden{display:none !important;visibility:hidden !important}.jdgm-temp-hidden{display:none}.jdgm-spinner{width:40px;height:40px;margin:auto;border-radius:50%;border-top:2px solid #eee;border-right:2px solid #eee;border-bottom:2px solid #eee;border-left:2px solid #ccc;-webkit-animation:jdgm-spin 0.8s infinite linear;animation:jdgm-spin 0.8s infinite linear}.jdgm-spinner:empty{display:block}.jdgm-prev-badge{display:block !important} 1228 1229</style> 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242
1242<script id="judgeme_widget_leex_js" data-cfasync="false" type="text/javascript" async src="https://cdn.shopify.com/extensions/01a11176-2280-7862-971a-b99c4fd1084c/judgeme-773/assets/shopify_v2_leex.js"></script>
1242 1243 1244 1245 1246 1247 1248 <link id="judgeme_widget_leex_css" rel="stylesheet" type="text/css" media="nope!" onload="this.media='all'" href="https://cdn.shopify.com/extensions/01a11176-2280-7862-971a-b99c4fd1084c/judgeme-773/assets/widget_v3_theme_leex.css"> 1249 1250 1251 1252
1253<script data-cfasync='false' class='jdgm-script'> 1254!function(e){window.jdgm=window.jdgm||{}; 1255/* INF-1976 */ 1256var _jdgmBlocked=function(){var raw=(window.jdgmSettings||{}).hostname_allowlist;var list=(raw==null?"":""+raw).split(/[\s,]+/).map(function(h){return h.trim().toLowerCase().replace(/\.$/,"");}).filter(function(h){return h;});if(!list.length)return false;var host=(e.location.hostname||"").toLowerCase().replace(/\.$/,"");if(/(^|\.)shopifypreview\.com$/.test(host))return false;var bare=host.replace(/^www\./,"");for(var i=0;i<list.length;i++){var en=list[i];if(en.indexOf("*.")===0){var b=en.slice(2);if(host===b||host.slice(-(b.length+1))==="."+b)return false;}else if(bare===en.replace(/^www\./,""))return false;}return true;}(); 1257if(_jdgmBlocked){jdgm._loaderExecuted=true;jdgm._blocked=true;var _jdgmS=e.createElement("style");_jdgmS.textContent='[class^="jdgm-"],[class*=" jdgm-"]{display:none !important}';(e.head||e.documentElement).appendChild(_jdgmS);return;} 1258jdgm.CDN_HOST="https://cdn2.judge.me/cdn/widget_frontend/",jdgm.CDN_HOST_ALT="https://cdn2.judge.me/cdn/widget_frontend/",jdgm.API_HOST="https://api.judge.me/",jdgm.CDN_BASE_URL="https://cdn.shopify.com/extensions/01a11176-2280-7862-971a-b99c4fd1084c/judgeme-773/assets/",jdgm.CDN_API_HOST="https://cdn.judge.me/", 1259jdgm.docReady=function(d){(e.attachEvent?"complete"===e.readyState:"loading"!==e.readyState)? 1260setTimeout(d,0):e.addEventListener("DOMContentLoaded",d)},jdgm.loadCSS=function(d,t,o,a){ 1261!o&&jdgm.loadCSS.requestedUrls.indexOf(d)>=0||(jdgm.loadCSS.requestedUrls.push(d), 1262(a=e.createElement("link")).rel="stylesheet",a.class="jdgm-stylesheet",a.media="nope!", 1263a.href=d,a.onload=function(){this.media="all",t&&setTimeout(t)},e.body.appendChild(a))}, 1264jdgm.loadCSS.requestedUrls=[],jdgm.loadJS=function(e,d){var t=new XMLHttpRequest; 1265t.onreadystatechange=function(){4===t.readyState&&t.status>=200&&t.status<300&&(Function(t.response)(),d&&d(t.response))}, 1266t.open("GET",e),t.onerror=function(){if(e.indexOf(jdgm.CDN_HOST)===0&&jdgm.CDN_HOST_ALT!==jdgm.CDN_HOST){var f=e.replace(jdgm.CDN_HOST,jdgm.CDN_HOST_ALT);jdgm.loadJS(f,d)}},t.send()},jdgm.docReady((function(){(window.jdgmLoadCSS||e.querySelectorAll( 1267".jdgm-widget, .jdgm-all-reviews-page").length>0)&&(jdgmSettings.widget_load_with_code_splitting? 1268parseFloat(jdgmSettings.widget_version)>=3?jdgm.loadCSS(jdgm.CDN_BASE_URL+"widget_v3_base.css"): 1269jdgm.loadCSS(jdgm.CDN_BASE_URL+"widget_base.css"):jdgm.loadCSS(jdgm.CDN_BASE_URL+"shopify_v2.css") 1270)}))}(document); 1271</script>
1271 1272<noscript><link rel="stylesheet" type="text/css" media="all" href="https://cdn.shopify.com/extensions/01a11176-2280-7862-971a-b99c4fd1084c/judgeme-773/assets/shopify_v2.css"></noscript> 1273 1274<!-- BEGIN app snippet: theme_fix_tags -->
1274<script> 1275 (function() { 1276 var jdgmThemeFixes = {"140480118853":{"html":"","css":"","js":"const observer = new MutationObserver(() =\u003e {\n if(jdgm.customizeBadges) {\n jdgm.customizeBadges();\n }\n });\n observer.observe(document.documentElement, { childList: true, subtree: true });"},"140713033797":{"html":"","css":"","js":"document.addEventListener(\"click\", (event)=\u003e {\n const button = event.target.closest(\".jdgm-write-rev-link\");\n const jdgmWriteRevLinks = document.querySelectorAll('.jdgm-write-rev-link');\n const reviewForm = document.querySelector('.jdgm-form-wrapper');\n if(button) {\n event.preventDefault();\n if (reviewForm.style.display === 'none') {\n reviewForm.style.display = 'block';\n } else {\n reviewForm.style.display = 'none';\n }\n }\n})"},"144636608581":{"html":"","css":" .jdgm-all-reviews__summary-text--verified {\n justify-content: center !important;\n }","js":""},"144682025029":{"html":"","css":"","js":""}}; 1277 if (!jdgmThemeFixes) return; 1278 1279 // "All themes" fix: CSS and JS applied on every theme. CSS is injected 1280 // before the per-theme fix so the theme-specific CSS wins the cascade. 1281 // HTML is never applied globally (too risky). 1282 var allThemesFix = jdgmThemeFixes['all']; 1283 if (allThemesFix && allThemesFix.css) { 1284 var allStyleTag = document.createElement('style'); 1285 allStyleTag.classList.add('jdgm-theme-fix-style-all'); 1286 allStyleTag.innerHTML = allThemesFix.css; 1287 document.head.append(allStyleTag); 1288 }; 1289 1290 if (allThemesFix && allThemesFix.js) { 1291 var allScriptTag = document.createElement('script'); 1292 allScriptTag.classList.add('jdgm-theme-fix-script-all'); 1293 allScriptTag.innerHTML = allThemesFix.js; 1294 document.head.append(allScriptTag); 1295 }; 1296 1297 var thisThemeFix = jdgmThemeFixes[Shopify.theme.id]; 1298 if (!thisThemeFix) return; 1299 1300 if (thisThemeFix.html) { 1301 document.addEventListener("DOMContentLoaded", function() { 1302 var htmlDiv = document.createElement('div'); 1303 htmlDiv.classList.add('jdgm-theme-fix-html'); 1304 htmlDiv.innerHTML = thisThemeFix.html; 1305 document.body.append(htmlDiv); 1306 }); 1307 }; 1308 1309 if (thisThemeFix.css) { 1310 var styleTag = document.createElement('style'); 1311 styleTag.classList.add('jdgm-theme-fix-style'); 1312 styleTag.innerHTML = thisThemeFix.css; 1313 document.head.append(styleTag); 1314 }; 1315 1316 if (thisThemeFix.js) { 1317 var scriptTag = document.createElement('script'); 1318 scriptTag.classList.add('jdgm-theme-fix-script'); 1319 scriptTag.innerHTML = thisThemeFix.js; 1320 document.head.append(scriptTag); 1321 }; 1322 })(); 1323</script>
1323 1324<!-- END app snippet --> 1325<!-- End of Judge.me Core --> 1326 1327 1328 1329<!-- END app block -->
1329<script src="https://cdn.shopify.com/extensions/01a11176-2280-7862-971a-b99c4fd1084c/judgeme-773/assets/loader.js" type="text/javascript" defer="defer"></script>
1329 1330<link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
1331<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: 56505270341,url: window.location.href,navigation_start,duration: currentMs - navigation_start,session_token,page_type: "search"};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 1331
1331
1332<script> 1333 window.__TREKKIE_SHIM_QUEUE = window.__TREKKIE_SHIM_QUEUE || []; 1334</script>
vendor: 1 bytes, line 1334
1334
1335<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}
1335).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: 56505270341,storefrontBaseUrl: "https://lovedepot.com",extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint: "https://lovedepot.com/.well-known/shopify/monorail/unstable/produce_batch",surface: "storefront-renderer",enabledBetaFlags: ["4c64608a","16072cab","8450a54b"],webPixelsConfigList: [{"id":"2502754373","configuration":"{\"accountID\":\"1WHAtPtDqoaf8j6lfCNemH64IPy2\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"7017740cfdd97897a59e5038f930e19e","type":"APP","apiClientId":44310888449,"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":"2398650437","configuration":"{}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"6e6b2e32fe
13356866115b7e49e2ae3c75b2","type":"APP","apiClientId":5940125,"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":"2369323077","configuration":"{\"accountID\":\"KAtyl3uhILaNV262gNSUiV6Jo7D3\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"1dd396892b5b97c85311bb397e70c829","type":"APP","apiClientId":11064672257,"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":"2333835333","configuration":"{\"pixelId\":\"c2a727bb-ebfe-4957-b239-f195182a66f5\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"c119f01612c13b62ab52809eb08154bb","type":"APP","apiClientId":2556259,"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":"unrestricted"},{"id":"2104164421","configuration":"{\"customDomain\":\"app.booleanmaths.com\",\"accountID\":\"de4f28dc-b5df-471d-bc29-1acd11a2e6ac\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"437e3b2ba132c48db5de3e3ef43077e4","type":"APP","apiClientId":210148622337,"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":"unrestricted"},{"id":"2031190085","configuration":"{\"accountID\":\"33457\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"8469e4e0feee8591731621538376d8bb","type":"APP","apiClientId":7991459841,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_email","read_customer_personal_data"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"857210949","configuration":"{\"verifastIndexName\":\"love-depot-india.myshopify.com\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"9677c1a03a29ab952a985298a431a9ed","type":"APP","apiClientId":72754888705,"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":"825622597","configuration":"{\"webPixelName\":\"Judge.me\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"8acc938b1a30dc7624e304493ca567d7","type":"APP","apiClientId":683015,"privacyPurposes":["ANALYTICS"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"id":"329285701","configuration":"{\"config\":\"{\\\"google_tag_ids\\\":[\\\"G-EVWQ1M1H9Y\\\"],\\\"target_country\\\":\\\"IN\\\",\\\"gtag_events\\\":[{\\\"type\\\":\\\"begin_checkout\\\",\\\"action_label\\\":\\\"G-EVWQ1M1H9Y\\\"},{\\\"type\\\":\\\"search\\\",\\\"action_label\\\":\\\"G-EVWQ1M1H9Y\\\"},{\\\"type\\\":\\\"remove_from_cart\\\",\\\"action_label\\\":\\\"G-EVWQ1M1H9Y\\\"},{\\\"type\\\":\\\"view_item\\\",\\\"action_label\\\":\\\"G-EVWQ1M1H9Y\\\"},{\\\"type\\\":\\\"add_shipping_info\\\",\\\"action_label\\\":\\\"G-EVWQ1M1H9Y\\\"},{\\\"type\\\":\\\"purchase\\\",\\\"action_label\\\":\\\"G-EVWQ1M1H9Y\\\"},{\\\"type\\\":\\\"page_view\\\",\\\"action_label\\\":\\\"G-EVWQ1M1H9Y\\\"},{\\\"type\\\":\\\"view_item_list\\\",\\\"action_label\\\":\\\"G-EVWQ1M1H9Y\\\"},{\\\"type\\\":\\\"add_payment_info\\\",\\\"action_label\\\":\\\"G-EVWQ1M1H9Y\\\"},{\\\"type\\\":\\\"add_to_cart\\\",\\\"action_label\\\":\\\"G-EVWQ1M1H9Y\\\"},{\\\"type\\\":\\\"view_cart\\\",\\\"action_label\\\":\\\"G-EVWQ1M1H9Y\\\"}],\\\"enable_monitoring_mode\\\":false}\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"a3321ca85cf5aaf6b57585fcd8d67b3a","type":"APP","apiClientId":1780363,"privacyPurposes":[],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized","enabledFlags":["9a3ed68a"]},{"id":"8781893","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"2","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"name":"Clevertap"},{"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":"Love Depot","paymentSettings":{"currencyCode":"INR"},"myshopifyDomain":"love-depot-india.myshopify.com","countryCode":"IN","storefrontUrl":"https:\/\/lovedepot.com"},"customer":null,"cart":null,"checkout":null,"productVariants":[],"products":[],"purchasingCompany":null},},"https://lovedepot.com/cdn","87a86122w399bf3b8pd0403c97m2c07468c",{"modern":"","legacy":""},{"trekkieShim":true,"agentContext":true,"apiClientId":"580111","facebookCapiEnabled":"false","themeId":"139953668165","themePublished":"true","eventMetadataId":"57480adc-6c8e-4aac-8ea7-a33aac36933c","pageType":"searchresults","shopId":"56505270341","storefrontBaseUrl":"https:\/\/lovedepot.com","extensionBaseUrl":"https:\/\/extensions.shopifycdn.com\/cdn\/shopifycloud\/web-pixels-manager","surface":"storefront-renderer","enabledBetaFlags":"[\"4c64608a\", \"16072cab\", \"8450a54b\"]","isMerchantRequest":"false","hashVersion":"87a86122w399bf3b8pd0403c97m2c07468c","publish":"custom","events":"[[\"page_viewed\",{}],[\"search_submitted\",{\"searchResult\":{\"query\":\"\",\"productVariants\":[]}}]]"});})();</script>
1335<script> 1336 window.ShopifyAnalytics = window.ShopifyAnalytics || {}; 1337 window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {}; 1338 window.ShopifyAnalytics.meta.currency = 'INR'; 1339 var meta = {"products":[],"page":{"pageType":"searchresults","requestId":"ee342d58-f0e7-489e-ad03-4a15aae9ec05-1791335260"}}; 1340 for (var attr in meta) { 1341 window.ShopifyAnalytics.meta[attr] = meta[attr]; 1342 } 1343</script>
vendor: 1 bytes, line 1343
1343
1344<script class="analytics"> 1345 (function () { 1346 var customDocumentWrite = function(content) { 1347 var jquery = null; 1348 1349 if (window.jQuery) { 1350 jquery = window.jQuery; 1351 } else if (window.Checkout && window.Checkout.$) { 1352 jquery = window.Checkout.$; 1353 } 1354 1355 if (jquery) { 1356 jquery('body').append(content); 1357 } 1358 }; 1359 1360 var hasLoggedConversion = function(token) { 1361 if (token) { 1362 return document.cookie.indexOf('loggedConversion=' + token) !== -1; 1363 } 1364 return false; 1365 } 1366 1367 var setCookieIfConversion = function(token) { 1368 if (token) { 1369 var twoMonthsFromNow = new Date(Date.now()); 1370 twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2); 1371 1372 document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow; 1373 } 1374 } 1375 1376 var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || []; 1377 window.ShopifyAnalytics.lib.trekkie = window.trekkie; 1378 if (trekkie.integrations) { 1379 return; 1380 } 1381 trekkie.methods = [ 1382 'identify', 1383 'page', 1384 'ready', 1385 'track', 1386 'trackForm', 1387 'trackLink' 1388 ]; 1389 trekkie.factory = function(method) { 1390 return function() { 1391 var args = Array.prototype.slice.call(arguments); 1392 args.unshift(method); 1393 trekkie.push(args); 1394 if (method == 'track' || method == 'page') { 1395 var pageUrl; 1396 try { 1397 pageUrl = window.location.href; 1398 } catch (e) {} 1399 var pageReferrer; 1400 try { 1401 pageReferrer = document.referrer; 1402 } catch (e) {} 1403 try { 1404 if (window.__TREKKIE_SHIM_QUEUE == null) { 1405 window.__TREKKIE_SHIM_QUEUE = []; 1406 } 1407 window.__TREKKIE_SHIM_QUEUE.push({ 1408 from: 'trekkie-stub', 1409 method: method, 1410 args: args.slice(1), 1411 pageContext: { 1412 url: pageUrl, 1413 referrer: pageReferrer 1414 } 1415 }); 1416 } catch (e) { 1417 // no-op 1418 } 1419 } 1420 return trekkie; 1421 }; 1422 }; 1423 for (var i = 0; i < trekkie.methods.length; i++) { 1424 var key = trekkie.methods[i]; 1425 trekkie[key] = trekkie.factory(key); 1426 } 1427 trekkie.load = function(config) { 1428 trekkie.config = config || {}; 1429 trekkie.config.initialDocumentCookie = document.cookie; 1430 var first = document.getElementsByTagName('script')[0]; 1431var script = document.createElement('script'); 1432script.type = 'text/javascript'; 1433script.onerror = function(e) { 1434 var scriptFallback = document.createElement('script'); 1435 scriptFallback.type = 'text/javascript'; 1436 scriptFallback.onerror = function(error) { 1437 var Monorail = { 1438 produce: function produce(monorailDomain, schemaId, payload) { 1439 var currentMs = new Date().getTime(); 1440 var event = { 1441 schema_id: schemaId, 1442 payload: payload, 1443 metadata: { 1444 event_created_at_ms: currentMs, 1445 event_sent_at_ms: currentMs 1446 } 1447 }; 1448 return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event)); 1449 }, 1450 sendRequest: function sendRequest(endpointUrl, payload) { 1451 // Try the sendBeacon API 1452 if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) { 1453 var blobData = new window.Blob([payload], { 1454 type: 'text/plain' 1455 }); 1456 1457 if (window.navigator.sendBeacon(endpointUrl, blobData)) { 1458 return true; 1459 } // sendBeacon was not successful 1460 1461 } // XHR beacon 1462 1463 var xhr = new XMLHttpRequest(); 1464 1465 try { 1466 xhr.open('POST', endpointUrl); 1467 xhr.setRequestHeader('Content-Type', 'text/plain'); 1468 xhr.send(payload); 1469 } catch (e) { 1470 console.log(e); 1471 } 1472 1473 return false; 1474 }, 1475 isIos12: function isIos12() { 1476 return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1; 1477 } 1478 }; 1479 Monorail.produce('monorail-edge.shopifysvc.com', 1480 'trekkie_storefront_load_errors/1.1', 1481 {shop_id: 56505270341, 1482 theme_id: 139953668165, 1483 app_name: "storefront", 1484 context_url: window.location.href, 1485 source_url: "//lovedepot.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js"}); 1486 1487 }; 1488 scriptFallback.async = true; 1489 scriptFallback.src = '//lovedepot.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js'; 1490 first.parentNode.insertBefore(scriptFallback, first); 1491}; 1492script.async = true; 1493script.src = '//lovedepot.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js'; 1494first.parentNode.insertBefore(script, first); 1495 1496 }; 1497 trekkie.load( 1498 {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":56505270341,"isMerchantRequest":null,"themeId":139953668165,"themeCityHash":"10566849825858691761","contentLanguage":"en","currency":"INR","eventMetadataId":"57480adc-6c8e-4aac-8ea7-a33aac36933c"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain","enabledBetaFlags":["764d78cb","8450a54b","4c64608a"]},"Session Attribution":{},"S2S":{"facebookCapiEnabled":false,"source":"trekkie-storefront-renderer","apiClientId":580111}} 1499 ); 1500 1501 var loaded = false;
1502 trekkie.ready(function() { 1503 if (loaded) return; 1504 loaded = true; 1505 1506 window.ShopifyAnalytics.lib = window.trekkie; 1507 1508 var originalDocumentWrite = document.write; 1509 document.write = customDocumentWrite; 1510 try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {}; 1511 document.write = originalDocumentWrite; 1512 1513 var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/) 1514 var token = match? match[1]: undefined; 1515 if (!hasLoggedConversion(token)) { 1516 setCookieIfConversion(token); 1517 window.ShopifyAnalytics.lib.track("Performed Search",{"query":null},undefined,undefined,{"shopifyEmitted":true}); 1518 } 1519 }); 1520 1521 window.ShopifyAnalytics.lib.page(null,{"pageType":"searchresults","requestId":"ee342d58-f0e7-489e-ad03-4a15aae9ec05-1791335260","shopifyEmitted":true}); 1522 1523 var eventsListenerScript = document.createElement('script'); 1524 eventsListenerScript.async = true; 1525 eventsListenerScript.src = "//lovedepot.com/cdn/shopifycloud/storefront/assets/shop_events_listener-4e26a9ce.js"; 1526 document.getElementsByTagName('head')[0].appendChild(eventsListenerScript); 1527})();</script>
vendor: 1 bytes, line 1527
1527
1528<script 1529 defer 1530 src="https://lovedepot.com/cdn/shopifycloud/perf-kit/shopify-perf-kit-3.9.6.min.js" 1531 data-application="storefront-renderer" 1532 data-shop-id="56505270341" 1533 data-render-region="gcp-us-central1" 1534 data-page-type="search" 1535 data-theme-instance-id="139953668165" 1536 data-theme-name="Stretch" 1537 data-theme-version="1.6.0" 1538 data-monorail-region="shop_domain" 1539 data-resource-timing-sampling-rate="10" 1540 data-shs="true" 1541 data-shs-beacon="true" 1542 data-shs-export-with-fetch="true" 1543 data-shs-logs-sample-rate="1" 1544 data-shs-beacon-endpoint="https://lovedepot.com/api/collect" 1545></script>
1545 1546<meta name="shopify-y" content="aa4d3085-ad09-4cae-ad46-889f048e7d06" data-expiration="1822892860000"><meta name="shopify-s" content="5458f0f4-724a-45b6-af2f-2b28a58745af" data-expiration="1791337060000"><meta name="new-cookie-storage-activated" content="t"> 1547</head> 1548 1549 1550 1551 <!-- Google Tag Manager (noscript) -->
vendor: 72 bytes, lines 1551-1552
1551 1552 <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
1552GTM-W7HFRTS2
vendor: 91 bytes, lines 1552-1554
1552" 1553 height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> 1554
1554<!-- End Google Tag Manager (noscript) --> 1555 1556 <body class="features--zoom-image "><template id="drawer-default-template"> 1557 <div part="base"> 1558 <div part="overlay"></div> 1559 1560 <div part="content"> 1561 <header part="header"> 1562 <dialog-close-button style="display: contents"> 1563 <button type="button" part="close-button"> 1564 <span class="sr-only" part="sr-only">Close</span> 1565 1566 <svg xmlns="http://www.w3.org/2000/svg" width="25" height="25" viewBox="0 0 32 32" fill="none"> 1567 <path d="M24 8L8 24" stroke="#212121" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 1568 <path d="M8 8L24 24" stroke="#212121" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 1569 </svg> 1570 </button> 1571 </dialog-close-button> 1572 1573 <slot name="header"></slot> 1574 </header> 1575 1576 <div part="body"> 1577 <slot></slot> 1578 </div> 1579 1580 <footer part="footer"> 1581 <slot name="footer"></slot> 1582 </footer> 1583 </div> 1584 </div> 1585</template><template id="drawer-popover-default-template"> 1586 <div part="base"> 1587 <div part="overlay"></div> 1588 1589 <div part="content"> 1590 <header part="header"> 1591 <dialog-close-button style="display: contents"> 1592 <button type="button" part="close-button"> 1593 <span class="sr-only" part="sr-only">Close</span><svg aria-hidden="true" focusable="false" width="10" class="icon icon-close" part="icon" fill="none" viewBox="0 0 10 10"> 1594 <path stroke="currentColor" d="m1 1 8 8m0-8L1 9" /> 1595 </svg></button> 1596 </dialog-close-button> 1597 1598 <slot name="header"></slot> 1599 </header> 1600 1601 <div part="body"> 1602 <slot></slot> 1603 </div> 1604 </div> 1605 </div> 1606</template><template id="modal-default-template"> 1607 <div part="base"> 1608 <div part="overlay"></div> 1609 1610 <div part="content"> 1611 <slot name="image"></slot> 1612 1613 <div part="body"> 1614 <dialog-close-button style="display: contents"> 1615 <button type="button" part="close-button"> 1616 <span class="sr-only" part="sr-only">Close</span><svg aria-hidden="true" focusable="false" width="10" class="icon icon-close" part="icon" fill="none" viewBox="0 0 10 10"> 1617 <path stroke="currentColor" d="m1 1 8 8m0-8L1 9" /> 1618 </svg></button> 1619 </dialog-close-button> 1620 1621 <slot></slot> 1622 </div> 1623 </div> 1624 </div> 1625</template><template id="popover-default-template"> 1626 <div part="base"> 1627 <div part="overlay"></div> 1628 1629 <div part="content"> 1630 <header part="header"> 1631 <slot name="header"></slot> 1632 1633 <dialog-close-button style="display: contents"> 1634 <button type="button" part="close-button"> 1635 <span class="sr-only" part="sr-only">Close</span><svg aria-hidden="true" focusable="false" width="10" class="icon icon-close" part="icon" fill="none" viewBox="0 0 10 10"> 1636 <path stroke="currentColor" d="m1 1 8 8m0-8L1 9" /> 1637 </svg></button> 1638 </dialog-close-button> 1639 </header> 1640 1641 <div part="body"> 1642 <slot></slot> 1643 </div> 1644 </div> 1645 </div> 1646</template><template id="simple-popover-default-template"> 1647 <div part="base"> 1648 <div part="overlay"></div> 1649 1650 <div part="content"> 1651 <dialog-close-button style="display: contents"> 1652 <button type="button" part="close-button overlaid-close-button"> 1653 <span class="sr-only" part="sr-only">Close</span><svg aria-hidden="true" focusable="false" width="10" class="icon icon-close" part="icon" fill="none" viewBox="0 0 10 10"> 1654 <path stroke="currentColor" d="m1 1 8 8m0-8L1 9" /> 1655 </svg></button> 1656 </dialog-close-button> 1657 1658 <div part="body"> 1659 <slot></slot> 1660 </div> 1661 </div> 1662 </div> 1663</template><template id="video-media-default-template"> 1664 <slot></slot> 1665 1666 <div part="play-button"><svg aria-hidden="true" focusable="false" width="12" class="icon icon-play-triangle" part="icon" fill="none" viewBox="0 0 12 17"> 1667 <path fill="#000" d="M1.783 15.889A1 1 0 0 1 .2 15.076V1.148A1 1 0 0 1 1.783.335l9.71 6.964a1 1 0 0 1 0 1.626l-9.71 6.964Z"/> 1668 </svg></div> 1669</template><loading-bar class="loading-bar" aria-hidden="true"></loading-bar> 1670 1671 <a href="#main" allow-hash-change class="skip-to-content sr-only">Skip to content</a> 1672 1673 <span id="header-scroll-tracker" style="position: absolute; width: 1px; height: 1px; top: 80px; left: 0;"></span><!-- BEGIN sections: header-group --> 1674<aside id="shopify-section-sections--17995989155909__announcement-bar" class="shopify-section shopify-section-group-header-group shopify-section--announcement-bar"><style> 1675 :root { 1676 --announcement-bar-is-sticky: 1; 1677 }#shopify-section-sections--17995989155909__announcement-bar carousel-prev-button, 1678 #shopify-section-sections--17995989155909__announcement-bar carousel-next-button { 1679 display: none !important; 1680 }#shopify-section-sections--17995989155909__announcement-bar { 1681 position: sticky; 1682 top: 0; 1683 } 1684 1685 .shopify-section--header ~ #shopify-section-sections--17995989155909__announcement-bar { 1686 top: calc(var(--header-is-sticky, 0) * var(--header-is-visible, 0) * var(--header-height, 0px)); 1687 }</style> 1688 1689 <div class="color-scheme color-scheme--scheme-c6e5e069-b617-4942-83aa-074b3f678d01"> 1690 <height-observer variable="announcement-bar"><announcement-bar 1691 id="carousel-sections--17995989155909__announcement-bar" 1692 allow-swipe 1693 cell-selector=".announcement-bar__message-list > *" 1694 1695 class="announcement-bar" 1696 ><div class="announcement-bar__message-list"><div 1697 class="is-selected announcement-bar__brand-logos" 1698 style="--logo-width: 85px;" 1699 1700 ><span class="announcement-bar__brand-text">From the House of TTK, creators of</span><a 1701 href="/collections/skore" 1702 class="announcement-bar__brand-link" 1703 1704 > 1705 <img 1706 src="//lovedepot.com/cdn/shop/files/image_17_181c7d3d-d116-44a5-a75c-46acf2663012.png?v=1779952712&width=170" 1707 alt="Brand logo" 1708 width="85" 1709 height="28" 1710 loading="eager" 1711 class="announcement-bar__brand-logo" 1712 > 1713 </a><span class="announcement-bar__brand-text">and</span><a 1714 href="/collections/mschief" 1715 class="announcement-bar__brand-link" 1716 1717 > 1718 <img 1719 src="//lovedepot.com/cdn/shop/files/image_19_52c6012a-14ae-4ec6-be0e-e865f2001e2d.png?v=1779952712&width=170" 1720 alt="Brand logo" 1721 width="85" 1722 height="31" 1723 loading="eager" 1724 class="announcement-bar__brand-logo" 1725 > 1726 </a></div></div></announcement-bar> 1727 </height-observer> 1728 </div> 1729 1730 <style> 1731 #shopify-section-sections--17995989155909__announcement-bar .announcement-bar__brand-logos { 1732 display: flex; 1733 align-items: center; 1734 justify-content: center; 1735 gap: 10px; 1736 flex-wrap: nowrap; 1737 width: 100%; 1738 padding: 0px 16px; 1739 } 1740 #shopify-section-sections--17995989155909__announcement-bar .announcement-bar__brand-text { 1741 font-size: 18px; 1742 color: #ffffff; 1743 font-weight: 500; 1744 white-space: nowrap; 1745 } 1746 #shopify-section-sections--17995989155909__announcement-bar .announcement-bar__brand-link { 1747 display: inline-flex; 1748 align-items: center; 1749 line-height: 0; 1750 flex-shrink: 0; 1751 } 1752 #shopify-section-sections--17995989155909__announcement-bar .announcement-bar__brand-logo { 1753 display: block; 1754 width: var(--logo-width, 85px); 1755 height: auto; 1756 } 1757 @media screen and (max-width: 749px) { 1758 #shopify-section-sections--17995989155909__announcement-bar .announcement-bar__brand-logos { 1759 gap: 6px; 1760 padding: 0px 10px; 1761 } 1762 #shopify-section-sections--17995989155909__announcement-bar .announcement-bar__brand-text { 1763 font-size: 11px; 1764 } 1765 #shopify-section-sections--17995989155909__announcement-bar .announcement-bar__brand-logo { 1766 width: min(var(--logo-width, 85px), 60px) !important; 1767 height: auto !important; 1768 } 1769 } 1770 1771 @media screen and (max-width: 400px) { 1772 #shopify-section-sections--17995989155909__announcement-bar .announcement-bar { 1773 gap: 5px; 1774 } 1775 #shopify-section-sections--17995989155909__announcement-bar .announcement-bar__brand-text { 1776 font-size: 10px; 1777 white-space: normal; 1778 } 1779 #shopify-section-sections--17995989155909__announcement-bar .announcement-bar__brand-logo { 1780 width: 43px !important; 1781 } 1782 #shopify-section-sections--17995989155909__announcement-bar .announcement-bar__brand-logos { 1783 padding: 0px; 1784 } 1785 } 1786 </style> 1787 1788
1788<script> 1789 const announcementEl = document.getElementById('shopify-section-sections--17995989155909__announcement-bar'); 1790 if (announcementEl) { 1791 document.documentElement.style.setProperty( 1792 '--announcement-bar-height', 1793 `${Math.round(announcementEl.clientHeight)}px` 1794 ); 1795 } 1796 </script>
1796 1797</aside><header id="shopify-section-sections--17995989155909__header" class="shopify-section shopify-section-group-header-group shopify-section--header"><style> 1798 :root { 1799 --header-is-sticky: 1; 1800 } 1801 1802 #shopify-section-sections--17995989155909__header {--header-grid: "primary-nav logo secondary-nav" / minmax(0, 1fr) auto minmax(0, 1fr);--header-transparent-header-text-color: 255 255 255; 1803 --header-non-transparent-text-color: 33 33 33; 1804 } 1805 1806 @media screen and (min-width: 1000px) { 1807 #shopify-section-sections--17995989155909__header {--header-grid: "logo primary-nav secondary-nav" / auto minmax(0, 1fr) auto;} 1808 }#shopify-section-sections--17995989155909__header { 1809 position: sticky; 1810 top: 0; 1811 } 1812 1813 .shopify-section--announcement-bar ~ #shopify-section-sections--17995989155909__header { 1814 top: calc(var(--announcement-bar-is-sticky, 0) * var(--announcement-bar-height, 0px)); 1815 }#shopify-section-sections--17995989155909__header { 1816 --header-logo-width: 70px; 1817 } 1818 1819 @media screen and (min-width: 700px) { 1820 #shopify-section-sections--17995989155909__header { 1821 --header-logo-width: 110px; 1822 } 1823 }</style> 1824 1825<height-observer variable="header"> 1826 <x-header 1827 class="header color-scheme color-scheme--scheme-1" 1828 1829 ><a href="/" class="header__logo"><span class="sr-only">Love Depot: India’s Most Trusted Shop for Sex Toys & Wellness</span><img src="//lovedepot.com/cdn/shop/files/90ac9efa11912386e90f24cada7176faacc461a3.png?v=1764581632&width=814" alt="Love Depot Logo 3" srcset="//lovedepot.com/cdn/shop/files/90ac9efa11912386e90f24cada7176faacc461a3.png?v=1764581632&width=220 220w, //lovedepot.com/cdn/shop/files/90ac9efa11912386e90f24cada7176faacc461a3.png?v=1764581632&width=330 330w" width="814" height="472" loading="eager" fetchpriority="high" sizes="110px" title="Love Depot Logo 3" class="header__logo-image"></a><nav 1830 class="header__primary-nav " 1831 aria-label="Primary navigation" 1832 > 1833 <button 1834 type="button" 1835 aria-controls="menu-drawer" 1836 class="tap-area md:hidden" 1837 > 1838 <span class="sr-only">Menu</span> 1839 1840 <div class="h-stack gap-3" aria-hidden="true"> 1841 <div class="header__hamburger"> 1842 <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"> 1843 <path class="line line-1" d="M4 12H20" stroke="black" stroke-linecap="round" stroke-linejoin="round"/> 1844 <path class="line line-2" d="M4 6H20" stroke="black" stroke-linecap="round" stroke-linejoin="round"/> 1845 <path class="line line-3" d="M4 18H20" stroke="black" stroke-linecap="round" stroke-linejoin="round"/> 1846 </svg> 1847 </div> 1848 1849 <span class="subheading md-max:hidden">Menu</span> 1850 </div> 1851 </button><a 1852 href="/search" 1853 class="header__search-link tap-area md:hidden" 1854 aria-controls="search-drawer" 1855 > 1856 <span class="sr-only">Search</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" class="icon icon-search" viewBox="0 0 24 24" fill="none"> 1857 <path d="M19 11C19 15.4183 15.4183 19 11 19C6.58172 19 3 15.4183 3 11C3 6.58172 6.58172 3 11 3C15.4183 3 19 6.58172 19 11Z" stroke="#212121" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 1858 <path d="M20.9999 21.0004L16.6499 16.6504" stroke="#212121" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 1859 </svg></a><ul class="contents unstyled-list md-max:hidden"> 1860 1861 <li><a 1862 href="/collections/all" 1863 class="block subheading link-reversed flex_menu_link" 1864 1865 1866 aria-expanded="false" aria-controls="header-menu-dropdown-1" 1867 data-open-on-hover 1868 >Shop For<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 1869 <path d="M15 7.5L10 12.5L5 7.5" stroke="#212121" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 1870 </svg></a><header-mega-menu id="header-menu-dropdown-1" class="mega-menu justify-center color-scheme color-scheme--scheme-1" ><div class="menu-promo__wrapper"><style> 1871 #promo-block-list-mega_menu_ThtCMFmega-menu { 1872 --menu-promo-block-column-gap: 4px; 1873 --menu-promo-blocks-count: 4; 1874 } 1875 </style><div id="promo-block-list-mega_menu_ThtCMFmega-menu" class="menu-promo menu-promo--with-spacing floating-control
1875s-container"> 1876 1877 <carousel-prev-button class="floating-controls__control floating-controls__control--offset" aria-controls="promo-block-list-mega_menu_ThtCMFmega-menu-carousel"> 1878 <button disabled class="circle-button circle-button--xl"> 1879 <span class="sr-only">Previous</span><svg aria-hidden="true" focusable="false" width="14" class="icon icon-big-arrow-left icon--direction-aware" part="icon" viewBox="0 0 36 36"> 1880 <path fill="none" stroke="currentColor" stroke-width="2" d="M35 18H3M19.5 34.5 3 18 19.5 1.5"/> 1881 </svg></button> 1882 </carousel-prev-button> 1883 1884 <scroll-carousel id="promo-block-list-mega_menu_ThtCMFmega-menu-carousel" class="menu-promo__carousel scroll-area"> 1885 1886 <a href="/collections/for-his-pleasure" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 1887 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/For_her_7.png?v=1773414542&width=920 460w, //lovedepot.com/cdn/shop/files/For_her_7.png?v=1773414542&width=1220 610w, //lovedepot.com/cdn/shop/files/For_her_7.png?v=1773414542&width=1830 915w, //lovedepot.com/cdn/shop/files/For_her_7.png?v=1773414542&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="486" height="240"><img src="//lovedepot.com/cdn/shop/files/For_Him-new-1.png?v=1779459203&width=333" alt="Sex Toys For Him" width="333" height="358" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom" title="Sex Toys For Him"></picture></div><div class="v-stack text-center gap-1"><p class="subheading">For Him</p> 1888 1889</div></div></a> 1890 1891 <a href="/collections/for-her-pleasure" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 1892 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/For_her_5.png?v=1773392903&width=920 460w, //lovedepot.com/cdn/shop/files/For_her_5.png?v=1773392903&width=1220 610w, //lovedepot.com/cdn/shop/files/For_her_5.png?v=1773392903&width=1830 915w, //lovedepot.com/cdn/shop/files/For_her_5.png?v=1773392903&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="486" height="240"><img src="//lovedepot.com/cdn/shop/files/For_Her-1.png?v=1779459241&width=333" alt="Sex Toys For Her" width="333" height="358" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom" title="Sex Toys For Her"></picture></div><div class="v-stack text-center gap-1"><p class="subheading">For Her</p> 1893 1894</div></div></a> 1895 1896 <a href="/collections/for-two-more" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 1897 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/For_her_8.png?v=1773414542&width=920 460w, //lovedepot.com/cdn/shop/files/For_her_8.png?v=1773414542&width=1220 610w, //lovedepot.com/cdn/shop/files/For_her_8.png?v=1773414542&width=1830 915w, //lovedepot.com/cdn/shop/files/For_her_8.png?v=1773414542&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="486" height="240"><img src="//lovedepot.com/cdn/shop/files/For_Couples-1.png?v=1779459272&width=333" alt="Sex Toys For Couples" width="333" height="358" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom" title="Sex Toys For Couples"></picture></div><div class="v-stack text-center gap-1"><p class="subheading">For Couples</p> 1898 1899</div></div></a> 1900 1901 <a href="/collections/essentials" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 1902 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/For_him_1_ca0b88a3-29da-4025-a0b5-910bddbe6dd6.png?v=1773392903&width=920 460w, //lovedepot.com/cdn/shop/files/For_him_1_ca0b88a3-29da-4025-a0b5-910bddbe6dd6.png?v=1773392903&width=1220 610w, //lovedepot.com/cdn/shop/files/For_him_1_ca0b88a3-29da-4025-a0b5-910bddbe6dd6.png?v=1773392903&width=1830 915w, //lovedepot.com/cdn/shop/files/For_him_1_ca0b88a3-29da-4025-a0b5-910bddbe6dd6.png?v=1773392903&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="486" height="240"><img src="//lovedepot.com/cdn/shop/files/Essentials-1.png?v=1779459315&width=333" alt="" width="333" height="358" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom"></picture></div><div class="v-stack text-center gap-1"><p class="subheading">Intimate Essentials</p> 1903 1904</div></div></a> 1905 1906
1907</scroll-carousel> 1908 1909 <carousel-next-button class="floating-controls__control floating-controls__control--offset" aria-controls="promo-block-list-mega_menu_ThtCMFmega-menu-carousel"> 1910 <button class="circle-button circle-button--xl"> 1911 <span class="sr-only">Next</span><svg aria-hidden="true" focusable="false" width="14" class="icon icon-big-arrow-right icon--direction-aware" part="icon" viewBox="0 0 36 36"> 1912 <path fill="none" stroke="currentColor" stroke-width="2" d="M1 18h32M16.5 1.5 33 18 16.5 34.5"/> 1913 </svg></button> 1914 </carousel-next-button> 1915 </div><div class="menu-promo__icons-with-text"><a href="https://lovedepot.wiq.app/" class="menu-promo__icon-with-text"> 1916 <img src="//lovedepot.com/cdn/shop/files/1a46e27fdd3ef7350fcbdbc7cc3e7947446e0a64.png?v=1771401176&width=100" alt="Track your order" width="100" height="100" loading="lazy"> 1917 <p>Track your order</p> 1918 </a><a href="/pages/about-us" class="menu-promo__icon-with-text"> 1919 <img src="//lovedepot.com/cdn/shop/files/Group_1000005959_17.png?v=1771489551&width=100" alt="About Us" width="100" height="100" loading="lazy"> 1920 <p>About Us</p> 1921 </a><a href="/pages/contact" class="menu-promo__icon-with-text"> 1922 <img src="//lovedepot.com/cdn/shop/files/dd9e713512e43c48d70b0ec4812854459998abf5.png?v=1771401176&width=100" alt="Contact Us" width="100" height="100" loading="lazy"> 1923 <p>Contact Us</p> 1924 </a><a href="/pages/faq" class="menu-promo__icon-with-text"> 1925 <img src="//lovedepot.com/cdn/shop/files/e46f0c34b8c437426afb9a0303cfc42e2bf3bf92.png?v=1771401176&width=100" alt="FAQ’s" width="100" height="100" loading="lazy"> 1926 <p>FAQ’s</p> 1927 </a></div></div></header-mega-menu></li> 1928 1929 <li><span 1930 class="block subheading link-reversed flex_menu_link" 1931 1932 aria-expanded="false" aria-controls="header-menu-dropdown-2" 1933 data-open-on-hover 1934 >Shop By Category<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 1935 <path d="M15 7.5L10 12.5L5 7.5" stroke="#212121" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 1936 </svg></span><header-mega-menu id="header-menu-dropdown-2" class="mega-menu justify-center color-scheme color-scheme--scheme-1" ><div class="menu-promo__wrapper"><style> 1937 #promo-block-list-mega_menu_ptrGApmega-menu { 1938 --menu-promo-block-column-gap: 4px; 1939 --menu-promo-blocks-count: 4; 1940 } 1941 </style><div id="promo-block-list-mega_menu_ptrGApmega-menu" class="menu-promo menu-promo--with-spacing floating-controls-container"> 1942 1943 <carousel-prev-button class="floating-controls__control floating-controls__control--offset" aria-controls="promo-block-list-mega_menu_ptrGApmega-menu-carousel"> 1944 <button disabled class="circle-button circle-button--xl"> 1945 <span class="sr-only">Previous</span><svg aria-hidden="true" focusable="false" width="14" class="icon icon-big-arrow-left icon--direction-aware" part="icon" viewBox="0 0 36 36"> 1946 <path fill="none" stroke="currentColor" stroke-width="2" d="M35 18H3M19.5 34.5 3 18 19.5 1.5"/> 1947 </svg></button> 1948 </carousel-prev-button> 1949 1950 <scroll-carousel id="promo-block-list-mega_menu_ptrGApmega-menu-carousel" class="menu-promo__carousel scroll-area"> 1951 1952 <a href="https://lovedepot.com/collections/g-c-spot-vibrators" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 1953 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/cat-1.jpg?v=1782110318&width=920 460w, //lovedepot.com/cdn/shop/files/cat-1.jpg?v=1782110318&width=1220 610w, //lovedepot.com/cdn/shop/files/cat-1.jpg?v=1782110318&width=1830 915w, //lovedepot.com/cdn/shop/files/cat-1.jpg?v=1782110318&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="589" height="589"><img src="//lovedepot.com/cdn/shop/files/cat-1.jpg?v=1782110318&width=589" alt="" width="589" height="589" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom"></picture></div><div class="v-stack text-center gap-1"><p class="subheading">G+C Spot</p> 1954 1955</div></div></a> 1956 1957 <a href="/collections/vibrating-cock-rings-for-couples" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 1958 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/cat-1_2_d4596645-f730-47d8-a9b4-53e284e92a99.png?v=1782110391&width=920 460w, //lovedepot.com/cdn/shop/files/cat-1_2_d4596645-f730-47d8-a9b4-53e284e92a99.png?v=1782110391&width=1220 610w, //lovedepot.com/cdn/shop/files/cat-1_2_d4596645-f730-47d8-a9b4-53e284e92a99.png?v=1782110391&width=1830 915w, //lovedepot.com/cdn/shop/files/cat-1_2_d4596645-f730-47d8-a9b4-53e284e92a99.png?v=1782110391&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="587" height="587"><img src="//lovedepot.com/cdn/shop/files/cat-1_2_d4596645-f730-47d8-a9b4-53e284e92a99.png?v=1782110391&width=587" alt="" width="587" height="587" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom"></picture></div><div class="v-stack text-center gap-1"><p class="subheading">Cock Rings</p> 1959 1960</div></div></a> 1961 1962 <a href="/collections/vibrating-strokers" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 1963 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/cat-1_8_27567991-5eec-4bc9-a51d-f2b6e71cc5f2.png?v=1782110163&width=920 460w, //lovedepot.com/cdn/shop/files/cat-1_8_27567991-5eec-4bc9-a51d-f2b6e71cc5f2.png?v=1782110163&width=1220 610w, //lovedepot.com/cdn/shop/files/cat-1_8_27567991-5eec-4bc9-a51d-f2b6e71cc5f2.png?v=1782110163&width=1830 915w, //lovedepot.com/cdn/shop/files/cat-1_8_27567991-5eec-4bc9-a51d-f2b6e71cc5f2.png?v=1782110163&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="572" height="572"><img src="//lovedepot.com/cdn/shop/files/cat-1_8_27567991-5eec-4bc9-a51d-f2b6e71cc5f2.png?v=1782110163&width=572" alt="" width="572" height="572" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom"></picture></div><div class="v-stack text-center gap-1"><p class="subheading">Vibrating Strokers</p> 1964 1965</div></div></a> 1966 1967 <a href="/collections/butt-plugs" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 1968 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/cat-1_19.png?v=1781186009&width=920 460w, //lovedepot.com/cdn/shop/files/cat-1_19.png?v=1781186009&width=1220 610w, //lovedepot.com/cdn/shop/files/cat-1_19.png?v=1781186009&width=1830 915w, //lovedepot.com/cdn/shop/files/cat-1_19.png?v=1781186009&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="600" height="600"><img src="//lovedepot.com/cdn/shop/files/cat-1_19.png?v=1781186009&width=600" alt="" width="600" height="600" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom"></picture></div><div class="v-stack text-center gap-1"><p class="subheading">Butt Plugs</p> 1969 1970</div></div></a> 1971 1972
1973</scroll-carousel> 1974 1975 <carousel-next-button class="floating-controls__control floating-controls__control--offset" aria-controls="promo-block-list-mega_menu_ptrGApmega-menu-carousel"> 1976 <button class="circle-button circle-button--xl"> 1977 <span class="sr-only">Next</span><svg aria-hidden="true" focusable="false" width="14" class="icon icon-big-arrow-right icon--direction-aware" part="icon" viewBox="0 0 36 36"> 1978 <path fill="none" stroke="currentColor" stroke-width="2" d="M1 18h32M16.5 1.5 33 18 16.5 34.5"/> 1979 </svg></button> 1980 </carousel-next-button> 1981 </div><div class="menu-promo__link-columns"><div class="menu-promo__link-columns-heading">All Categories(A-Z)</div><div class="menu-promo__link-columns-grid"><div class="menu-promo__link-column"> 1982 <ul class="menu-promo__link-list unstyled-list"><li> 1983 <a href="/collections/air-pulse-stimulator" class="menu-promo__link-item"> 1984 <span class="menu-promo__link-icon" aria-hidden="true"> 1985 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 1986 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 1987 </svg> 1988 </span> 1989 <span>Air Pulse Stimulators</span> 1990 </a> 1991 </li><li> 1992 <a href="/collections/anal-toys" class="menu-promo__link-item"> 1993 <span class="menu-promo__link-icon" aria-hidden="true"> 1994 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 1995 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 1996 </svg> 1997 </span> 1998 <span>Anal</span> 1999 </a> 2000 </li><li> 2001 <a href="/collections/app-controlled" class="menu-promo__link-item"> 2002 <span class="menu-promo__link-icon" aria-hidden="true"> 2003 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2004 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2005 </svg> 2006 </span> 2007 <span>App Controlled</span> 2008 </a> 2009 </li><li> 2010 <a href="/collections/bullet-vibrators" class="menu-promo__link-item"> 2011 <span class="menu-promo__link-icon" aria-hidden="true"> 2012 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2013 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2014 </svg> 2015 </span> 2016 <span>Bullet Vibrators</span> 2017 </a> 2018 </li><li> 2019 <a href="/collections/clitoral-stimulator" class="menu-promo__link-item">
2020 <span class="menu-promo__link-icon" aria-hidden="true"> 2021 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2022 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2023 </svg> 2024 </span> 2025 <span>Clitoral</span> 2026 </a> 2027 </li></ul> 2028 </div><div class="menu-promo__link-column"> 2029 <ul class="menu-promo__link-list unstyled-list"><li> 2030 <a href="/collections/buy-condoms" class="menu-promo__link-item"> 2031 <span class="menu-promo__link-icon" aria-hidden="true"> 2032 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2033 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2034 </svg> 2035 </span> 2036 <span>Condoms</span> 2037 </a> 2038 </li><li> 2039 <a href="/collections/energisers-enhancers" class="menu-promo__link-item"> 2040 <span class="menu-promo__link-icon" aria-hidden="true"> 2041 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2042 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2043 </svg> 2044 </span> 2045 <span>Energisers & Enhancers</span> 2046 </a> 2047 </li><li> 2048 <a href="/collections/finger-vibrator" class="menu-promo__link-item"> 2049 <span class="menu-promo__link-icon" aria-hidden="true"> 2050 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2051 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2052 </svg> 2053 </span> 2054 <span>Finger Vibrators</span> 2055 </a> 2056 </li><li> 2057 <a href="/collections/g-spot-vibrators" class="menu-promo__link-item"> 2058 <span class="menu-promo__link-icon" aria-hidden="true"> 2059 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2060 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2061 </svg> 2062 </span> 2063 <span>G-Spot</span> 2064 </a> 2065 </li><li> 2066 <a href="/collections/games-accessories" class="menu-promo__link-item"> 2067 <span class="menu-promo__link-icon" aria-hidden="true"> 2068 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2069 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2070 </svg> 2071 </span>
2072 <span>Games & Accessories</span> 2073 </a> 2074 </li></ul> 2075 </div><div class="menu-promo__link-column"> 2076 <ul class="menu-promo__link-list unstyled-list"><li> 2077 <a href="/collections/kegel-balls" class="menu-promo__link-item"> 2078 <span class="menu-promo__link-icon" aria-hidden="true"> 2079 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2080 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2081 </svg> 2082 </span> 2083 <span>Kegel Balls</span> 2084 </a> 2085 </li><li> 2086 <a href="/collections/lubricants" class="menu-promo__link-item"> 2087 <span class="menu-promo__link-icon" aria-hidden="true"> 2088 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2089 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2090 </svg> 2091 </span> 2092 <span>Lubricants</span> 2093 </a> 2094 </li><li> 2095 <a href="/collections/massage-sleeve-for-men" class="menu-promo__link-item"> 2096 <span class="menu-promo__link-icon" aria-hidden="true"> 2097 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2098 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2099 </svg> 2100 </span> 2101 <span>Manual Strokers</span> 2102 </a> 2103 </li><li> 2104 <a href="/collections/prostate-massager" class="menu-promo__link-item"> 2105 <span class="menu-promo__link-icon" aria-hidden="true"> 2106 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2107 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2108 </svg> 2109 </span> 2110 <span>Prostate Massagers</span> 2111 </a> 2112 </li></ul> 2113 </div><div class="menu-promo__link-column"> 2114 <ul class="menu-promo__link-list unstyled-list"><li> 2115 <a href="/collections/rabbit-vibrator" class="menu-promo__link-item"> 2116 <span class="menu-promo__link-icon" aria-hidden="true"> 2117 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2118 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2119 </svg> 2120 </span>
2121 <span>Rabbit Vibrators</span> 2122 </a> 2123 </li><li> 2124 <a href="/collections/remote-controlled-sex-toys" class="menu-promo__link-item"> 2125 <span class="menu-promo__link-icon" aria-hidden="true"> 2126 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2127 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2128 </svg> 2129 </span> 2130 <span>Remote Controlled</span> 2131 </a> 2132 </li><li> 2133 <a href="/collections/wand-massager" class="menu-promo__link-item"> 2134 <span class="menu-promo__link-icon" aria-hidden="true"> 2135 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2136 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2137 </svg> 2138 </span> 2139 <span>Wand Massagers</span> 2140 </a> 2141 </li><li> 2142 <a href="/collections/wearables" class="menu-promo__link-item"> 2143 <span class="menu-promo__link-icon" aria-hidden="true"> 2144 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2145 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2146 </svg> 2147 </span> 2148 <span>Wearables</span> 2149 </a> 2150 </li></ul> 2151 </div></div> 2152 </div><div class="menu-promo__icons-with-text"><a href="https://lovedepot.wiq.app/" class="menu-promo__icon-with-text"> 2153 <img src="//lovedepot.com/cdn/shop/files/1a46e27fdd3ef7350fcbdbc7cc3e7947446e0a64.png?v=1771401176&width=100" alt="Track your order" width="100" height="100" loading="lazy"> 2154 <p>Track your order</p> 2155 </a><a href="/pages/about-us" class="menu-promo__icon-with-text"> 2156 <img src="//lovedepot.com/cdn/shop/files/Group_1000005959_17.png?v=1771489551&width=100" alt="About Us" width="100" height="100" loading="lazy"> 2157 <p>About Us</p> 2158 </a><a href="/pages/contact" class="menu-promo__icon-with-text"> 2159 <img src="//lovedepot.com/cdn/shop/files/dd9e713512e43c48d70b0ec4812854459998abf5.png?v=1771401176&width=100" alt="Contact Us" width="100" height="100" loading="lazy"> 2160 <p>Contact Us</p> 2161 </a><a href="/pages/faq" class="menu-promo__icon-with-text"> 2162 <img src="//lovedepot.com/cdn/shop/files/e46f0c34b8c437426afb9a0303cfc42e2bf3bf92.png?v=1771401176&width=100" alt="FAQ’s" width="100" height="100" loading="lazy"> 2163 <p>FAQ’s</p> 2164 </a></div></div></header-mega-menu></li> 2165 2166 <li><span 2167 class="block subheading link-reversed flex_menu_link" 2168 2169 aria-expanded="false" aria-controls="header-menu-dropdown-3" 2170 data-open-on-hover 2171 >Shop By Brand<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2172 <path d="M15 7.5L10 12.5L5 7.5" stroke="#212121" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 2173 </svg></span><header-mega-menu id="header-menu-dropdown-3" class="mega-menu justify-center color-scheme color-scheme--scheme-1" ><div class="menu-promo__wrapper"><style> 2174 #promo-block-list-mega_menu_9GtqHQmega-menu { 2175 --menu-promo-block-column-gap: 4px; 2176 --menu-promo-blocks-count: 4; 2177 } 2178 </style><div class="menu-promo__title">Top-Selling Brands</div><div id="promo-block-list-mega_menu_9GtqHQmega-menu" class="menu-promo menu-promo--with-spacing floating-control
2178s-container"> 2179 2180 <carousel-prev-button class="floating-controls__control floating-controls__control--offset" aria-controls="promo-block-list-mega_menu_9GtqHQmega-menu-carousel"> 2181 <button disabled class="circle-button circle-button--xl"> 2182 <span class="sr-only">Previous</span><svg aria-hidden="true" focusable="false" width="14" class="icon icon-big-arrow-left icon--direction-aware" part="icon" viewBox="0 0 36 36"> 2183 <path fill="none" stroke="currentColor" stroke-width="2" d="M35 18H3M19.5 34.5 3 18 19.5 1.5"/> 2184 </svg></button> 2185 </carousel-prev-button> 2186 2187 <scroll-carousel id="promo-block-list-mega_menu_9GtqHQmega-menu-carousel" class="menu-promo__carousel scroll-area"> 2188 2189 <a href="/collections/mschief" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 2190 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/mschief_logo_1.png?v=1773397777&width=920 460w, //lovedepot.com/cdn/shop/files/mschief_logo_1.png?v=1773397777&width=1220 610w, //lovedepot.com/cdn/shop/files/mschief_logo_1.png?v=1773397777&width=1830 915w, //lovedepot.com/cdn/shop/files/mschief_logo_1.png?v=1773397777&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="225" height="225"><img src="//lovedepot.com/cdn/shop/files/Frame_2095586310.png?v=1771418083&width=250" alt="" width="250" height="80" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom"></picture></div><div class="v-stack text-center gap-1"><p class="subheading">MsChief</p> 2191 2192</div></div></a> 2193 2194 <a href="/collections/skore" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 2195 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/Skore_logo_1.png?v=1773397777&width=920 460w, //lovedepot.com/cdn/shop/files/Skore_logo_1.png?v=1773397777&width=1220 610w, //lovedepot.com/cdn/shop/files/Skore_logo_1.png?v=1773397777&width=1830 915w, //lovedepot.com/cdn/shop/files/Skore_logo_1.png?v=1773397777&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="225" height="225"><img src="//lovedepot.com/cdn/shop/files/Skore_0f6959ba-7c61-4944-9f15-d0654e8ba191.png?v=1771418084&width=250" alt="" width="250" height="80" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom"></picture></div><div class="v-stack text-center gap-1"><p class="subheading">Skore</p> 2196 2197</div></div></a> 2198 2199 <a href="/collections/satisfyer" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 2200 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/Satisfyer_logo_1.png?v=1773397776&width=920 460w, //lovedepot.com/cdn/shop/files/Satisfyer_logo_1.png?v=1773397776&width=1220 610w, //lovedepot.com/cdn/shop/files/Satisfyer_logo_1.png?v=1773397776&width=1830 915w, //lovedepot.com/cdn/shop/files/Satisfyer_logo_1.png?v=1773397776&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="225" height="225"><img src="//lovedepot.com/cdn/shop/files/Satisfyer_974ba0c0-b1d7-4b85-ba91-c22dc768b831.png?v=1771418083&width=250" alt="" width="250" height="80" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom"></picture></div><div class="v-stack text-center gap-1"><p class="subheading">Satisfyer</p> 2201 2202</div></div></a> 2203 2204 <a href="/collections/honey-play-box" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 2205 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/Plus_one_1.png?v=1773397776&width=920 460w, //lovedepot.com/cdn/shop/files/Plus_one_1.png?v=1773397776&width=1220 610w, //lovedepot.com/cdn/shop/files/Plus_one_1.png?v=1773397776&width=1830 915w, //lovedepot.com/cdn/shop/files/Plus_one_1.png?v=1773397776&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="225" height="225"><img src="//lovedepot.com/cdn/shop/files/Group_1_d6c51de0-80de-491d-afa6-de0189b1a523.png?v=1786370350&width=250" alt="" width="250" height="80" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom"></picture></div><div class="v-stack text-center gap-1"><p class="subheading">Honey PlayBox</p> 2206 2207</div></div></a> 2208 2209
2210</scroll-carousel> 2211 2212 <carousel-next-button class="floating-controls__control floating-controls__control--offset" aria-controls="promo-block-list-mega_menu_9GtqHQmega-menu-carousel"> 2213 <button class="circle-button circle-button--xl"> 2214 <span class="sr-only">Next</span><svg aria-hidden="true" focusable="false" width="14" class="icon icon-big-arrow-right icon--direction-aware" part="icon" viewBox="0 0 36 36"> 2215 <path fill="none" stroke="currentColor" stroke-width="2" d="M1 18h32M16.5 1.5 33 18 16.5 34.5"/> 2216 </svg></button> 2217 </carousel-next-button> 2218 </div><div class="menu-promo__link-columns"><div class="menu-promo__link-columns-heading">All Brands</div><div class="menu-promo__link-columns-grid"><div class="menu-promo__link-column"> 2219 <ul class="menu-promo__link-list unstyled-list"><li> 2220 <a href="/collections/b-vibe" class="menu-promo__link-item"> 2221 <span class="menu-promo__link-icon" aria-hidden="true"> 2222 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2223 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2224 </svg> 2225 </span> 2226 <span>B Vibe</span> 2227 </a> 2228 </li><li> 2229 <a href="/collections/creative-conceptions" class="menu-promo__link-item"> 2230 <span class="menu-promo__link-icon" aria-hidden="true"> 2231 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2232 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2233 </svg> 2234 </span> 2235 <span>Creative Conceptions</span> 2236 </a> 2237 </li><li> 2238 <a href="/collections/fifty-shades-of-grey" class="menu-promo__link-item"> 2239 <span class="menu-promo__link-icon" aria-hidden="true"> 2240 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2241 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2242 </svg> 2243 </span> 2244 <span>Fifty Shades of Grey</span> 2245 </a> 2246 </li></ul> 2247 </div><div class="menu-promo__link-column"> 2248 <ul class="menu-promo__link-list unstyled-list"><li> 2249 <a href="/collections/hot" class="menu-promo__link-item"> 2250 <span class="menu-promo__link-icon" aria-hidden="true"> 2251 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2252 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2253 </svg> 2254 </span> 2255 <span>Hot</span> 2256 </a> 2257 </li><li> 2258 <a href="/collections/iroha" class="menu-promo__link-item">
2259 <span class="menu-promo__link-icon" aria-hidden="true"> 2260 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2261 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2262 </svg> 2263 </span> 2264 <span>Iroha</span> 2265 </a> 2266 </li><li> 2267 <a href="/collections/je-joue" class="menu-promo__link-item"> 2268 <span class="menu-promo__link-icon" aria-hidden="true"> 2269 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2270 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2271 </svg> 2272 </span> 2273 <span>Je Joue</span> 2274 </a> 2275 </li></ul> 2276 </div><div class="menu-promo__link-column"> 2277 <ul class="menu-promo__link-list unstyled-list"><li> 2278 <a href="/collections/le-wand" class="menu-promo__link-item"> 2279 <span class="menu-promo__link-icon" aria-hidden="true"> 2280 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2281 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2282 </svg> 2283 </span> 2284 <span>Le Wand</span> 2285 </a> 2286 </li><li> 2287 <a href="/collections/oye-happy" class="menu-promo__link-item"> 2288 <span class="menu-promo__link-icon" aria-hidden="true"> 2289 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2290 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2291 </svg> 2292 </span> 2293 <span>Oye Happy</span> 2294 </a> 2295 </li><li> 2296 <a href="/collections/plusone" class="menu-promo__link-item"> 2297 <span class="menu-promo__link-icon" aria-hidden="true"> 2298 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2299 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2300 </svg> 2301 </span> 2302 <span>plusOne</span> 2303 </a> 2304 </li><li> 2305 <a href="/collections/romp" class="menu-promo__link-item"> 2306 <span class="menu-promo__link-icon" aria-hidden="true"> 2307 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2308 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2309 </svg> 2310 </span>
2311 <span>ROMP</span> 2312 </a> 2313 </li></ul> 2314 </div><div class="menu-promo__link-column"> 2315 <ul class="menu-promo__link-list unstyled-list"><li> 2316 <a href="/collections/we-vibe" class="menu-promo__link-item"> 2317 <span class="menu-promo__link-icon" aria-hidden="true"> 2318 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2319 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2320 </svg> 2321 </span> 2322 <span>We Vibe</span> 2323 </a> 2324 </li><li> 2325 <a href="/collections/womanizer" class="menu-promo__link-item"> 2326 <span class="menu-promo__link-icon" aria-hidden="true"> 2327 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2328 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2329 </svg> 2330 </span> 2331 <span>Womanizer</span> 2332 </a> 2333 </li><li> 2334 <a href="https://lovedepot.com/collections/shots" class="menu-promo__link-item"> 2335 <span class="menu-promo__link-icon" aria-hidden="true"> 2336 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2337 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2338 </svg> 2339 </span> 2340 <span>Shots</span> 2341 </a> 2342 </li><li> 2343 <a href="/collections/chisa" class="menu-promo__link-item"> 2344 <span class="menu-promo__link-icon" aria-hidden="true"> 2345 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2346 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2347 </svg> 2348 </span> 2349 <span>Chisa</span> 2350 </a> 2351 </li></ul> 2352 </div></div> 2353 </div><div class="menu-promo__icons-with-text"><a href="https://lovedepot.wiq.app/" class="menu-promo__icon-with-text"> 2354 <img src="//lovedepot.com/cdn/shop/files/1a46e27fdd3ef7350fcbdbc7cc3e7947446e0a64.png?v=1771401176&width=100" alt="Track your order" width="100" height="100" loading="lazy"> 2355 <p>Track your order</p> 2356 </a><a href="/pages/about-us" class="menu-promo__icon-with-text"> 2357 <img src="//lovedepot.com/cdn/shop/files/Group_1000005959_17.png?v=1771489551&width=100" alt="About Us" width="100" height="100" loading="lazy"> 2358 <p>About Us</p> 2359 </a><a href="/pages/contact" class="menu-promo__icon-with-text"> 2360 <img src="//lovedepot.com/cdn/shop/files/dd9e713512e43c48d70b0ec4812854459998abf5.png?v=1771401176&width=100" alt="Contact Us" width="100" height="100" loading="lazy"> 2361 <p>Contact Us</p> 2362 </a><a href="/pages/faq" class="menu-promo__icon-with-text"> 2363 <img src="//lovedepot.com/cdn/shop/files/e46f0c34b8c437426afb9a0303cfc42e2bf3bf92.png?v=1771401176&width=100" alt="FAQ’s" width="100" height="100" loading="lazy"> 2364 <p>FAQ’s</p> 2365 </a></div></div></header-mega-menu></li> 2366 2367 <li><span 2368 class="block subheading link-reversed flex_menu_link" 2369 2370 aria-expanded="false" aria-controls="header-menu-dropdown-4" 2371 data-open-on-hover 2372 >Shop By Collection<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2373 <path d="M15 7.5L10 12.5L5 7.5" stroke="#212121" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 2374 </svg></span><header-mega-menu id="header-menu-dropdown-4" class="mega-menu justify-center color-scheme color-scheme--scheme-1" ><div class="menu-promo__wrapper"><style> 2375 #promo-block-list-mega_menu_Wrrttemega-menu { 2376 --menu-promo-block-column-gap: 4px; 2377 --menu-promo-blocks-count: 4; 2378 } 2379 </style><div id="promo-block-list-mega_menu_Wrrttemega-menu" class="menu-promo menu-promo--with-spacing floating-control
2379s-container"> 2380 2381 <carousel-prev-button class="floating-controls__control floating-controls__control--offset" aria-controls="promo-block-list-mega_menu_Wrrttemega-menu-carousel"> 2382 <button disabled class="circle-button circle-button--xl"> 2383 <span class="sr-only">Previous</span><svg aria-hidden="true" focusable="false" width="14" class="icon icon-big-arrow-left icon--direction-aware" part="icon" viewBox="0 0 36 36"> 2384 <path fill="none" stroke="currentColor" stroke-width="2" d="M35 18H3M19.5 34.5 3 18 19.5 1.5"/> 2385 </svg></button> 2386 </carousel-prev-button> 2387 2388 <scroll-carousel id="promo-block-list-mega_menu_Wrrttemega-menu-carousel" class="menu-promo__carousel scroll-area"> 2389 2390 <a href="/collections/new-arrivals" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 2391 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/New_Arrivals_1.png?v=1773398180&width=920 460w, //lovedepot.com/cdn/shop/files/New_Arrivals_1.png?v=1773398180&width=1220 610w, //lovedepot.com/cdn/shop/files/New_Arrivals_1.png?v=1773398180&width=1830 915w, //lovedepot.com/cdn/shop/files/New_Arrivals_1.png?v=1773398180&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="486" height="240"><img src="//lovedepot.com/cdn/shop/files/New_Arrivals.jpg?v=1775211967&width=1368" alt="" srcset="//lovedepot.com/cdn/shop/files/New_Arrivals.jpg?v=1775211967&width=610 610w, //lovedepot.com/cdn/shop/files/New_Arrivals.jpg?v=1775211967&width=915 915w" width="1368" height="540" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom"></picture></div></div></a> 2392 2393 <a href="/collections/best-seller" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 2394 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/Best_Sellers_1.png?v=1773398209&width=920 460w, //lovedepot.com/cdn/shop/files/Best_Sellers_1.png?v=1773398209&width=1220 610w, //lovedepot.com/cdn/shop/files/Best_Sellers_1.png?v=1773398209&width=1830 915w, //lovedepot.com/cdn/shop/files/Best_Sellers_1.png?v=1773398209&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="486" height="240"><img src="//lovedepot.com/cdn/shop/files/Best_Sellers.jpg?v=1775212005&width=1368" alt="" srcset="//lovedepot.com/cdn/shop/files/Best_Sellers.jpg?v=1775212005&width=610 610w, //lovedepot.com/cdn/shop/files/Best_Sellers.jpg?v=1775212005&width=915 915w" width="1368" height="540" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom"></picture></div></div></a> 2395 2396 <a href="/collections/1599" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 2397 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/New_Arrivals_2.png?v=1773398154&width=920 460w, //lovedepot.com/cdn/shop/files/New_Arrivals_2.png?v=1773398154&width=1220 610w, //lovedepot.com/cdn/shop/files/New_Arrivals_2.png?v=1773398154&width=1830 915w, //lovedepot.com/cdn/shop/files/New_Arrivals_2.png?v=1773398154&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="486" height="240"><img src="//lovedepot.com/cdn/shop/files/Under_1599.jpg?v=1775212037&width=1368" alt="" srcset="//lovedepot.com/cdn/shop/files/Under_1599.jpg?v=1775212037&width=610 610w, //lovedepot.com/cdn/shop/files/Under_1599.jpg?v=1775212037&width=915 915w" width="1368" height="540" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom"></picture></div></div></a> 2398 2399 2400 2401 <a href="/collections/luxe" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 2402 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/Luxe_6.png?v=1773398154&width=920 460w, //lovedepot.com/cdn/shop/files/Luxe_6.png?v=1773398154&width=1220 610w, //lovedepot.com/cdn/shop/files/Luxe_6.png?v=1773398154&width=1830 915w, //lovedepot.com/cdn/shop/files/Luxe_6.png?v=1773398154&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="486" height="240"><img src="//lovedepot.com/cdn/shop/files/Under_1600.jpg?v=1775212173&width=1368" alt="" srcset="//lovedepot.com/cdn/shop/files/Under_1600.jpg?v=1775212173&width=610 610w, //lovedepot.com/cdn/shop/files/Under_1600.jpg?v=1775212173&width=915 915w" width="1368" height="540" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom"></picture></div></div></a>
2403</scroll-carousel> 2404 2405 <carousel-next-button class="floating-controls__control floating-controls__control--offset" aria-controls="promo-block-list-mega_menu_Wrrttemega-menu-carousel"> 2406 <button class="circle-button circle-button--xl"> 2407 <span class="sr-only">Next</span><svg aria-hidden="true" focusable="false" width="14" class="icon icon-big-arrow-right icon--direction-aware" part="icon" viewBox="0 0 36 36"> 2408 <path fill="none" stroke="currentColor" stroke-width="2" d="M1 18h32M16.5 1.5 33 18 16.5 34.5"/> 2409 </svg></button> 2410 </carousel-next-button> 2411 </div><div class="menu-promo__icons-with-text"><a href="https://lovedepot.wiq.app/" class="menu-promo__icon-with-text"> 2412 <img src="//lovedepot.com/cdn/shop/files/1a46e27fdd3ef7350fcbdbc7cc3e7947446e0a64.png?v=1771401176&width=100" alt="Track your order" width="100" height="100" loading="lazy"> 2413 <p>Track your order</p> 2414 </a><a href="/pages/about-us" class="menu-promo__icon-with-text"> 2415 <img src="//lovedepot.com/cdn/shop/files/Group_1000005959_17.png?v=1771489551&width=100" alt="About Us" width="100" height="100" loading="lazy"> 2416 <p>About Us</p> 2417 </a><a href="/pages/contact" class="menu-promo__icon-with-text"> 2418 <img src="//lovedepot.com/cdn/shop/files/dd9e713512e43c48d70b0ec4812854459998abf5.png?v=1771401176&width=100" alt="Contact Us" width="100" height="100" loading="lazy"> 2419 <p>Contact Us</p> 2420 </a><a href="/pages/faq" class="menu-promo__icon-with-text"> 2421 <img src="//lovedepot.com/cdn/shop/files/e46f0c34b8c437426afb9a0303cfc42e2bf3bf92.png?v=1771401176&width=100" alt="FAQ’s" width="100" height="100" loading="lazy"> 2422 <p>FAQ’s</p> 2423 </a></div></div></header-mega-menu></li> 2424 2425 <li><span 2426 class="block subheading link-reversed flex_menu_link" 2427 2428 aria-expanded="false" aria-controls="header-menu-dropdown-5" 2429 data-open-on-hover 2430 >More<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2431 <path d="M15 7.5L10 12.5L5 7.5" stroke="#212121" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 2432 </svg></span><header-mega-menu id="header-menu-dropdown-5" class="mega-menu justify-center color-scheme color-scheme--scheme-1" ><div class="menu-promo__wrapper"><style> 2433 #promo-block-list-mega_menu_pnRhV4mega-menu { 2434 --menu-promo-block-column-gap: 4px; 2435 --menu-promo-blocks-count: 2; 2436 } 2437 </style><div id="promo-block-list-mega_menu_pnRhV4mega-menu" class="menu-promo menu-promo--with-spacing floating-controls-container"> 2438 2439 <carousel-prev-button class="floating-controls__control floating-controls__control--offset" aria-controls="promo-block-list-mega_menu_pnRhV4mega-menu-carousel"> 2440 <button disabled class="circle-button circle-button--xl"> 2441 <span class="sr-only">Previous</span><svg aria-hidden="true" focusable="false" width="14" class="icon icon-big-arrow-left icon--direction-aware" part="icon" viewBox="0 0 36 36"> 2442 <path fill="none" stroke="currentColor" stroke-width="2" d="M35 18H3M19.5 34.5 3 18 19.5 1.5"/> 2443 </svg></button> 2444 </carousel-prev-button> 2445 2446 <scroll-carousel id="promo-block-list-mega_menu_pnRhV4mega-menu-carousel" class="menu-promo__carousel scroll-area"> 2447 2448 2449 2450 2451 <a href="/pages/how-we-deliver" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 2452 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/How_we_deliver_1.png?v=1773398359&width=920 460w, //lovedepot.com/cdn/shop/files/How_we_deliver_1.png?v=1773398359&width=1220 610w, //lovedepot.com/cdn/shop/files/How_we_deliver_1.png?v=1773398359&width=1830 915w, //lovedepot.com/cdn/shop/files/How_we_deliver_1.png?v=1773398359&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="486" height="240"><img src="//lovedepot.com/cdn/shop/files/How_We_Deliver.jpg?v=1775202033&width=1368" alt="" srcset="//lovedepot.com/cdn/shop/files/How_We_Deliver.jpg?v=1775202033&width=610 610w, //lovedepot.com/cdn/shop/files/How_We_Deliver.jpg?v=1775202033&width=915 915w" width="1368" height="472" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom"></picture></div></div></a> 2453 2454 <a href="/pages/returns-and-refunds" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 2455 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/Returns_refunds_1.png?v=1773398359&width=920 460w, //lovedepot.com/cdn/shop/files/Returns_refunds_1.png?v=1773398359&width=1220 610w, //lovedepot.com/cdn/shop/files/Returns_refunds_1.png?v=1773398359&width=1830 915w, //lovedepot.com/cdn/shop/files/Returns_refunds_1.png?v=1773398359&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="486" height="240"><img src="//lovedepot.com/cdn/shop/files/Return_and_Refunds.jpg?v=1775201992&width=1368" alt="" srcset="//lovedepot.com/cdn/shop/files/Return_and_Refunds.jpg?v=1775201992&width=610 610w, //lovedepot.com/cdn/shop/files/Return_and_Refunds.jpg?v=1775201992&width=915 915w" width="1368" height="472" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom"></picture></div></div></a> 2456
2457</scroll-carousel> 2458 2459 <carousel-next-button class="floating-controls__control floating-controls__control--offset" aria-controls="promo-block-list-mega_menu_pnRhV4mega-menu-carousel"> 2460 <button class="circle-button circle-button--xl"> 2461 <span class="sr-only">Next</span><svg aria-hidden="true" focusable="false" width="14" class="icon icon-big-arrow-right icon--direction-aware" part="icon" viewBox="0 0 36 36"> 2462 <path fill="none" stroke="currentColor" stroke-width="2" d="M1 18h32M16.5 1.5 33 18 16.5 34.5"/> 2463 </svg></button> 2464 </carousel-next-button> 2465 </div><div class="menu-promo__icons-with-text"><a href="https://lovedepot.wiq.app/" class="menu-promo__icon-with-text"> 2466 <img src="//lovedepot.com/cdn/shop/files/1a46e27fdd3ef7350fcbdbc7cc3e7947446e0a64.png?v=1771401176&width=100" alt="Track your order" width="100" height="100" loading="lazy"> 2467 <p>Track your order</p> 2468 </a><a href="/pages/about-us" class="menu-promo__icon-with-text"> 2469 <img src="//lovedepot.com/cdn/shop/files/Group_1000005959_17.png?v=1771489551&width=100" alt="About Us" width="100" height="100" loading="lazy"> 2470 <p>About Us</p> 2471 </a><a href="/pages/contact" class="menu-promo__icon-with-text"> 2472 <img src="//lovedepot.com/cdn/shop/files/dd9e713512e43c48d70b0ec4812854459998abf5.png?v=1771401176&width=100" alt="Contact Us" width="100" height="100" loading="lazy"> 2473 <p>Contact Us</p> 2474 </a><a href="/pages/faq" class="menu-promo__icon-with-text"> 2475 <img src="//lovedepot.com/cdn/shop/files/e46f0c34b8c437426afb9a0303cfc42e2bf3bf92.png?v=1771401176&width=100" alt="FAQ’s" width="100" height="100" loading="lazy"> 2476 <p>FAQ’s</p> 2477 </a></div></div></header-mega-menu></li> 2478 2479 <li><a 2480 href="/pages/contact" 2481 class="block subheading link-reversed " 2482 2483 2484 >Contact Us</a></li></ul></nav><nav class="header__secondary-nav" aria-label="Secondary navigation"> 2485 <ul class="contents unstyled-list"><li class="header__search-link md-max:hidden"> 2486 <a href="/search" class="tap-area" aria-controls="search-drawer"> 2487 <span class="sr-only">Search</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" class="icon icon-search" viewBox="0 0 24 24" fill="none"> 2488 <path d="M19 11C19 15.4183 15.4183 19 11 19C6.58172 19 3 15.4183 3 11C3 6.58172 6.58172 3 11 3C15.4183 3 19 6.58172 19 11Z" stroke="#212121" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 2489 <path d="M20.9999 21.0004L16.6499 16.6504" stroke="#212121" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 2490 </svg></a> 2491 </li><li class="header__wishlist-link"> 2492 <a href="/apps/wishlist" class="tap-area"> 2493 <span class="sr-only">Wishlist</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" class="icon icon-picto-heart" viewBox="0 0 24 24" fill="none"> 2494 <g clip-path="url(#clip0_521_14035)"> 2495 <path d="M3.57991 4.58045C4.08159 4.07702 4.67771 3.67758 5.33409 3.40503C5.99047 3.13249 6.6942 2.99219 7.40491 2.99219C8.11563 2.99219 8.81935 3.13249 9.47573 3.40503C10.1321 3.67758 10.7282 4.07702 11.2299 4.58045L11.9999 5.36045L12.7699 4.58045C13.2716 4.07702 13.8677 3.67758 14.5241 3.40504C15.1805 3.13249 15.8842 2.99219 16.5949 2.99219C17.3056 2.99219 18.0094 3.13249 18.6657 3.40504C19.3221 3.67758 19.9182 4.07702 20.4199 4.58045C22.5399 6.70045 22.6699 10.2804 19.9999 13.0004L11.9999 21.0004L3.99991 13.0004C1.32991 10.2804 1.45991 6.70045 3.57991 4.58045Z" stroke="#212121" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 2496 </g> 2497 <defs> 2498 <clipPath id="clip0_521_14035"> 2499 <rect width="24" height="24" fill="white" transform="matrix(-1 -8.74228e-08 -8.74228e-08 1 24 2.09815e-06)"/> 2500 </clipPath> 2501 </defs> 2502 </svg></a> 2503 </li><li class="header__cart-link relative"> 2504 <a 2505 onClick="window.handleFloCartBtn()" 2506 class="tap-area header__icon header__icon--cart link focus-inset flo-header-cart-btn" 2507 id="cart-icon-bubble1" 2508 >
2509 <span class="sr-only">Cart</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" class="icon icon-cart" viewBox="0 0 24 24" fill="none"> 2510 <path d="M16 22C15.4477 22 15 21.5523 15 21C15 20.4477 15.4477 20 16 20C16.5523 20 17 20.4477 17 21C17 21.5523 16.5523 22 16 22Z" stroke="#212121" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 2511 <path d="M5 22C4.44772 22 4 21.5523 4 21C4 20.4477 4.44772 20 5 20C5.55228 20 6 20.4477 6 21C6 21.5523 5.55228 22 5 22Z" stroke="#212121" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 2512 <path d="M21.9502 2.05078L19.9502 2.05078L17.2902 14.4708C17.1926 14.9256 16.9395 15.3323 16.5745 15.6206C16.2094 15.909 15.7553 16.0611 15.2902 16.0508L5.51019 16.0508C5.05502 16.05 4.61371 15.8941 4.25917 15.6086C3.90462 15.3232 3.65806 14.9253 3.56019 14.4808L1.91019 7.05078L18.8802 7.05078" stroke="#212121" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 2513 </svg></a> 2514 2515 <cart-count 2516 class="header__active-dot"hidden 2517 2518 > 2519 <span class="cart_item_number cart-count-bubble">0</span> 2520 </cart-count> 2521 </li> 2522 2523 2524<li class="header__account-link"> 2525 <a href="/account" class="tap-area"> 2526 <span class="sr-only">Login</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" class="icon icon-account" viewBox="0 0 24 24" fill="none"> 2527 <path d="M5 21L5 19C5 17.9391 5.42143 16.9217 6.17157 16.1716C6.92172 15.4214 7.93913 15 9 15L15 15C16.0609 15 17.0783 15.4214 17.8284 16.1716C18.5786 16.9217 19 17.9391 19 19V21" stroke="#212121" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 2528 <path d="M12 11C9.79086 11 8 9.20914 8 7C8 4.79086 9.79086 3 12 3C14.2091 3 16 4.79086 16 7C16 9.20914 14.2091 11 12 11Z" stroke="#212121" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 2529 </svg></a> 2530 </li></ul> 2531 </nav><header-menu-drawer id="menu-drawer" class="menu-drawer color-scheme color-scheme--scheme-1"> 2532 <template> 2533 <div part="overlay"></div> 2534 2535 <div part="content"> 2536 <slot></slot> 2537 </div> 2538 </template><header-menu-drawer-panel id="menu-drawer-panel-main" data-main-panel class="menu-drawer__panel"> 2539 <div class="menu-drawer__panel-body"><ul class="v-stack gap-3 faded-linklist unstyled-list"><li><div class="h4 text-start w-full"> 2540 <div class="h-stack gap-3 sm:gap-5">Shop For</div> 2541 </div></li><li class="menu-drawer__first-submenu"> 2542 <div class="v-stack gap-8"><div class="menu-promo__wrapper"><style> 2543 #promo-block-list-mega_menu_ThtCMFdrawer { 2544 --menu-promo-block-column-gap: 4px; 2545 --menu-promo-blocks-count: 4; 2546 } 2547 </style><div id="promo-block-list-mega_menu_ThtCMFdrawer" class="menu-promo menu-promo--with-spacing floating-controls-container"> 2548 2549 <carousel-prev-button class="floating-controls__control floating-controls__control--offset" aria-controls="promo-block-list-mega_menu_ThtCMFdrawer-carousel"> 2550 <button disabled class="circle-button circle-button--xl"> 2551 <span class="sr-only">Previous</span><svg aria-hidden="true" focusable="false" width="14" class="icon icon-big-arrow-left icon--direction-aware" part="icon" viewBox="0 0 36 36"> 2552 <path fill="none" stroke="currentColor" stroke-width="2" d="M35 18H3M19.5 34.5 3 18 19.5 1.5"/> 2553 </svg></button> 2554 </carousel-prev-button> 2555 2556 <scroll-carousel id="promo-block-list-mega_menu_ThtCMFdrawer-carousel" class="menu-promo__carousel scroll-area"> 2557 2558 <a href="/collections/for-his-pleasure" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 2559 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/For_her_7.png?v=1773414542&width=920 460w, //lovedepot.com/cdn/shop/files/For_her_7.png?v=1773414542&width=1220 610w, //lovedepot.com/cdn/shop/files/For_her_7.png?v=1773414542&width=1830 915w, //lovedepot.com/cdn/shop/files/For_her_7.png?v=1773414542&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="486" height="240"><img src="//lovedepot.com/cdn/shop/files/For_Him-new-1.png?v=1779459203&width=333" alt="Sex Toys For Him" width="333" height="358" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom" title="Sex Toys For Him"></picture></div><div class="v-stack text-center gap-1"><p class="subheading">For Him</p> 2560 2561</div></div></a> 2562 2563 <a href="/collections/for-her-pleasure" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 2564 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/For_her_5.png?v=1773392903&width=920 460w, //lovedepot.com/cdn/shop/files/For_her_5.png?v=1773392903&width=1220 610w, //lovedepot.com/cdn/shop/files/For_her_5.png?v=1773392903&width=1830 915w, //lovedepot.com/cdn/shop/files/For_her_5.png?v=1773392903&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="486" height="240"><img src="//lovedepot.com/cdn/shop/files/For_Her-1.png?v=1779459241&width=333" alt="Sex Toys For Her" width="333" height="358" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom" title="Sex Toys For Her"></picture></div><div class="v-stack text-center gap-1"><p class="subheading">For Her</p> 2565 2566</div></div></a> 2567 2568 <a href="/collections/for-two-more" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 2569 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/For_her_8.png?v=1773414542&width=920 460w, //lovedepot.com/cdn/shop/files/For_her_8.png?v=1773414542&width=1220 610w, //lovedepot.com/cdn/shop/files/For_her_8.png?v=1773414542&width=1830 915w, //lovedepot.com/cdn/shop/files/For_her_8.png?v=1773414542&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="486" height="240"><img src="//lovedepot.com/cdn/shop/files/For_Couples-1.png?v=1779459272&width=333" alt="Sex Toys For Couples" width="333" height="358" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom" title="Sex Toys For Couples"></picture></div><div class="v-stack text-center gap-1"><p class="subheading">For Couples</p> 2570 2571</div></div></a> 2572 2573 <a href="/collections/essentials" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 2574 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/For_him_1_ca0b88a3-29da-4025-a0b5-910bddbe6dd6.png?v=1773392903&width=920 460w, //lovedepot.com/cdn/shop/files/For_him_1_ca0b88a3-29da-4025-a0b5-910bddbe6dd6.png?v=1773392903&width=1220 610w, //lovedepot.com/cdn/shop/files/For_him_1_ca0b88a3-29da-4025-a0b5-910bddbe6dd6.png?v=1773392903&width=1830 915w, //lovedepot.com/cdn/shop/files/For_him_1_ca0b88a3-29da-4025-a0b5-910bddbe6dd6.png?v=1773392903&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="486" height="240"><img src="//lovedepot.com/cdn/shop/files/Essentials-1.png?v=1779459315&width=333" alt="" width="333" height="358" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom"></picture></div><div class="v-stack text-center gap-1"><p class="subheading">Intimate Essentials</p> 2575 2576</div></div></a> 2577 2578
2579</scroll-carousel> 2580 2581 <carousel-next-button class="floating-controls__control floating-controls__control--offset" aria-controls="promo-block-list-mega_menu_ThtCMFdrawer-carousel"> 2582 <button class="circle-button circle-button--xl"> 2583 <span class="sr-only">Next</span><svg aria-hidden="true" focusable="false" width="14" class="icon icon-big-arrow-right icon--direction-aware" part="icon" viewBox="0 0 36 36"> 2584 <path fill="none" stroke="currentColor" stroke-width="2" d="M1 18h32M16.5 1.5 33 18 16.5 34.5"/> 2585 </svg></button> 2586 </carousel-next-button> 2587 </div></div></div> 2588 </li><li><button type="button" class="h4 text-start w-full" data-panel-toggle aria-controls="menu-drawer-panel-2"> 2589 <div class="h-stack gap-3 sm:gap-5">Shop By Category<svg aria-hidden="true" focusable="false" width="36" class="shrink-0 capped-icon icon icon-big-arrow-right" part="icon" viewBox="0 0 36 36"> 2590 <path fill="none" stroke="currentColor" stroke-width="2" d="M1 18h32M16.5 1.5 33 18 16.5 34.5"/> 2591 </svg></div> 2592 </button></li><li><button type="button" class="h4 text-start w-full" data-panel-toggle aria-controls="menu-drawer-panel-3"> 2593 <div class="h-stack gap-3 sm:gap-5">Shop By Brand<svg aria-hidden="true" focusable="false" width="36" class="shrink-0 capped-icon icon icon-big-arrow-right" part="icon" viewBox="0 0 36 36"> 2594 <path fill="none" stroke="currentColor" stroke-width="2" d="M1 18h32M16.5 1.5 33 18 16.5 34.5"/> 2595 </svg></div> 2596 </button></li><li><button type="button" class="h4 text-start w-full" data-panel-toggle aria-controls="menu-drawer-panel-4"> 2597 <div class="h-stack gap-3 sm:gap-5">Shop By Collection<svg aria-hidden="true" focusable="false" width="36" class="shrink-0 capped-icon icon icon-big-arrow-right" part="icon" viewBox="0 0 36 36"> 2598 <path fill="none" stroke="currentColor" stroke-width="2" d="M1 18h32M16.5 1.5 33 18 16.5 34.5"/> 2599 </svg></div> 2600 </button></li><li><button type="button" class="h4 text-start w-full" data-panel-toggle aria-controls="menu-drawer-panel-5"> 2601 <div class="h-stack gap-3 sm:gap-5">More<svg aria-hidden="true" focusable="false" width="36" class="shrink-0 capped-icon icon icon-big-arrow-right" part="icon" viewBox="0 0 36 36"> 2602 <path fill="none" stroke="currentColor" stroke-width="2" d="M1 18h32M16.5 1.5 33 18 16.5 34.5"/> 2603 </svg></div> 2604 </button></li><li><a href="/pages/contact" title="Contact Us" class="h4 w-full">Contact Us</a></li></ul><ul class="v-stack gap-3 unstyled-list menu-drawer__secondary-links"><li> 2605 <a href="/account" class="subheading link-reversed">My Account</a> 2606 </li></ul></div><div class="menu-drawer__panel-footer"><div class="menu-drawer__footer-item"> 2607 <div class="menu-promo__icons-with-text"><a href="https://lovedepot.wiq.app/" class="menu-promo__icon-with-text"> 2608 <img src="//lovedepot.com/cdn/shop/files/1a46e27fdd3ef7350fcbdbc7cc3e7947446e0a64.png?v=1771401176&width=100" alt="Track your order" width="100" height="100" loading="lazy"> 2609 <p>Track your order</p> 2610 </a><a href="/pages/about-us" class="menu-promo__icon-with-text"> 2611 <img src="//lovedepot.com/cdn/shop/files/Group_1000005959_17.png?v=1771489551&width=100" alt="About Us" width="100" height="100" loading="lazy"> 2612 <p>About Us</p> 2613 </a><a href="/pages/contact" class="menu-promo__icon-with-text"> 2614 <img src="//lovedepot.com/cdn/shop/files/dd9e713512e43c48d70b0ec4812854459998abf5.png?v=1771401176&width=100" alt="Contact Us" width="100" height="100" loading="lazy"> 2615 <p>Contact Us</p> 2616 </a><a href="/pages/faq" class="menu-promo__icon-with-text"> 2617 <img src="//lovedepot.com/cdn/shop/files/e46f0c34b8c437426afb9a0303cfc42e2bf3bf92.png?v=1771401176&width=100" alt="FAQ’s" width="100" height="100" loading="lazy"> 2618 <p>FAQ’s</p> 2619 </a></div> 2620 </div></div></header-menu-drawer-panel><header-menu-drawer-panel id="menu-drawer-panel-2" class="menu-drawer__panel color-scheme color-scheme--scheme-1"> 2621 <div class="menu-drawer__panel-body"> 2622 <div class="v-stack gap-5.5">
2623 <button type="button" class="back-button justify-self-start" data-panel-toggle aria-controls="menu-drawer-panel-main"><svg aria-hidden="true" focusable="false" width="10" class="icon icon-back-arrow icon--direction-aware" part="icon" fill="none" viewBox="0 0 10 11"> 2624 <path stroke="currentColor" d="M5.5 1 1 5.5m0 0L5.5 10M1 5.5h9" /> 2625 </svg><span class="subheading">Back</span> 2626 </button> 2627 2628 <div class="v-stack gap-8"><div class="menu-promo__wrapper"><style> 2629 #promo-block-list-mega_menu_ptrGApdrawer { 2630 --menu-promo-block-column-gap: 4px; 2631 --menu-promo-blocks-count: 4; 2632 } 2633 </style><div id="promo-block-list-mega_menu_ptrGApdrawer" class="menu-promo menu-promo--with-spacing floating-controls-container"> 2634 2635 <carousel-prev-button class="floating-controls__control floating-controls__control--offset" aria-controls="promo-block-list-mega_menu_ptrGApdrawer-carousel"> 2636 <button disabled class="circle-button circle-button--xl"> 2637 <span class="sr-only">Previous</span><svg aria-hidden="true" focusable="false" width="14" class="icon icon-big-arrow-left icon--direction-aware" part="icon" viewBox="0 0 36 36"> 2638 <path fill="none" stroke="currentColor" stroke-width="2" d="M35 18H3M19.5 34.5 3 18 19.5 1.5"/> 2639 </svg></button> 2640 </carousel-prev-button> 2641 2642 <scroll-carousel id="promo-block-list-mega_menu_ptrGApdrawer-carousel" class="menu-promo__carousel scroll-area"> 2643 2644 <a href="https://lovedepot.com/collections/g-c-spot-vibrators" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 2645 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/cat-1.jpg?v=1782110318&width=920 460w, //lovedepot.com/cdn/shop/files/cat-1.jpg?v=1782110318&width=1220 610w, //lovedepot.com/cdn/shop/files/cat-1.jpg?v=1782110318&width=1830 915w, //lovedepot.com/cdn/shop/files/cat-1.jpg?v=1782110318&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="589" height="589"><img src="//lovedepot.com/cdn/shop/files/cat-1.jpg?v=1782110318&width=589" alt="" width="589" height="589" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom"></picture></div><div class="v-stack text-center gap-1"><p class="subheading">G+C Spot</p> 2646 2647</div></div></a> 2648 2649 <a href="/collections/vibrating-cock-rings-for-couples" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 2650 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/cat-1_2_d4596645-f730-47d8-a9b4-53e284e92a99.png?v=1782110391&width=920 460w, //lovedepot.com/cdn/shop/files/cat-1_2_d4596645-f730-47d8-a9b4-53e284e92a99.png?v=1782110391&width=1220 610w, //lovedepot.com/cdn/shop/files/cat-1_2_d4596645-f730-47d8-a9b4-53e284e92a99.png?v=1782110391&width=1830 915w, //lovedepot.com/cdn/shop/files/cat-1_2_d4596645-f730-47d8-a9b4-53e284e92a99.png?v=1782110391&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="587" height="587"><img src="//lovedepot.com/cdn/shop/files/cat-1_2_d4596645-f730-47d8-a9b4-53e284e92a99.png?v=1782110391&width=587" alt="" width="587" height="587" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom"></picture></div><div class="v-stack text-center gap-1"><p class="subheading">Cock Rings</p> 2651 2652</div></div></a> 2653 2654 <a href="/collections/vibrating-strokers" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 2655 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/cat-1_8_27567991-5eec-4bc9-a51d-f2b6e71cc5f2.png?v=1782110163&width=920 460w, //lovedepot.com/cdn/shop/files/cat-1_8_27567991-5eec-4bc9-a51d-f2b6e71cc5f2.png?v=1782110163&width=1220 610w, //lovedepot.com/cdn/shop/files/cat-1_8_27567991-5eec-4bc9-a51d-f2b6e71cc5f2.png?v=1782110163&width=1830 915w, //lovedepot.com/cdn/shop/files/cat-1_8_27567991-5eec-4bc9-a51d-f2b6e71cc5f2.png?v=1782110163&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="572" height="572"><img src="//lovedepot.com/cdn/shop/files/cat-1_8_27567991-5eec-4bc9-a51d-f2b6e71cc5f2.png?v=1782110163&width=572" alt="" width="572" height="572" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom"></picture></div><div class="v-stack text-center gap-1"><p class="subheading">Vibrating Strokers</p> 2656 2657</div></div></a> 2658 2659 <a href="/collections/butt-plugs" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 2660 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/cat-1_19.png?v=1781186009&width=920 460w, //lovedepot.com/cdn/shop/files/cat-1_19.png?v=1781186009&width=1220 610w, //lovedepot.com/cdn/shop/files/cat-1_19.png?v=1781186009&width=1830 915w, //lovedepot.com/cdn/shop/files/cat-1_19.png?v=1781186009&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="600" height="600"><img src="//lovedepot.com/cdn/shop/files/cat-1_19.png?v=1781186009&width=600" alt="" width="600" height="600" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom"></picture></div><div class="v-stack text-center gap-1"><p class="subheading">Butt Plugs</p> 2661 2662</div></div></a> 2663 2664
2665</scroll-carousel> 2666 2667 <carousel-next-button class="floating-controls__control floating-controls__control--offset" aria-controls="promo-block-list-mega_menu_ptrGApdrawer-carousel"> 2668 <button class="circle-button circle-button--xl"> 2669 <span class="sr-only">Next</span><svg aria-hidden="true" focusable="false" width="14" class="icon icon-big-arrow-right icon--direction-aware" part="icon" viewBox="0 0 36 36"> 2670 <path fill="none" stroke="currentColor" stroke-width="2" d="M1 18h32M16.5 1.5 33 18 16.5 34.5"/> 2671 </svg></button> 2672 </carousel-next-button> 2673 </div><div class="menu-promo__link-columns"><div class="menu-promo__link-columns-heading">All Categories(A-Z)</div><div class="menu-promo__link-columns-grid"><div class="menu-promo__link-column"> 2674 <ul class="menu-promo__link-list unstyled-list"><li> 2675 <a href="/collections/air-pulse-stimulator" class="menu-promo__link-item"> 2676 <span class="menu-promo__link-icon" aria-hidden="true"> 2677 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2678 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2679 </svg> 2680 </span> 2681 <span>Air Pulse Stimulators</span> 2682 </a> 2683 </li><li> 2684 <a href="/collections/anal-toys" class="menu-promo__link-item"> 2685 <span class="menu-promo__link-icon" aria-hidden="true"> 2686 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2687 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2688 </svg> 2689 </span> 2690 <span>Anal</span> 2691 </a> 2692 </li><li> 2693 <a href="/collections/app-controlled" class="menu-promo__link-item"> 2694 <span class="menu-promo__link-icon" aria-hidden="true"> 2695 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2696 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2697 </svg> 2698 </span> 2699 <span>App Controlled</span> 2700 </a> 2701 </li><li> 2702 <a href="/collections/bullet-vibrators" class="menu-promo__link-item"> 2703 <span class="menu-promo__link-icon" aria-hidden="true"> 2704 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2705 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2706 </svg> 2707 </span> 2708 <span>Bullet Vibrators</span> 2709 </a> 2710 </li><li> 2711 <a href="/collections/clitoral-stimulator" class="menu-promo__link-item">
2712 <span class="menu-promo__link-icon" aria-hidden="true"> 2713 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2714 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2715 </svg> 2716 </span> 2717 <span>Clitoral</span> 2718 </a> 2719 </li></ul> 2720 </div><div class="menu-promo__link-column"> 2721 <ul class="menu-promo__link-list unstyled-list"><li> 2722 <a href="/collections/buy-condoms" class="menu-promo__link-item"> 2723 <span class="menu-promo__link-icon" aria-hidden="true"> 2724 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2725 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2726 </svg> 2727 </span> 2728 <span>Condoms</span> 2729 </a> 2730 </li><li> 2731 <a href="/collections/energisers-enhancers" class="menu-promo__link-item"> 2732 <span class="menu-promo__link-icon" aria-hidden="true"> 2733 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2734 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2735 </svg> 2736 </span> 2737 <span>Energisers & Enhancers</span> 2738 </a> 2739 </li><li> 2740 <a href="/collections/finger-vibrator" class="menu-promo__link-item"> 2741 <span class="menu-promo__link-icon" aria-hidden="true"> 2742 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2743 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2744 </svg> 2745 </span> 2746 <span>Finger Vibrators</span> 2747 </a> 2748 </li><li> 2749 <a href="/collections/g-spot-vibrators" class="menu-promo__link-item"> 2750 <span class="menu-promo__link-icon" aria-hidden="true"> 2751 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2752 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2753 </svg> 2754 </span> 2755 <span>G-Spot</span> 2756 </a> 2757 </li><li> 2758 <a href="/collections/games-accessories" class="menu-promo__link-item"> 2759 <span class="menu-promo__link-icon" aria-hidden="true"> 2760 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2761 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2762 </svg> 2763 </span>
2764 <span>Games & Accessories</span> 2765 </a> 2766 </li></ul> 2767 </div><div class="menu-promo__link-column"> 2768 <ul class="menu-promo__link-list unstyled-list"><li> 2769 <a href="/collections/kegel-balls" class="menu-promo__link-item"> 2770 <span class="menu-promo__link-icon" aria-hidden="true"> 2771 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2772 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2773 </svg> 2774 </span> 2775 <span>Kegel Balls</span> 2776 </a> 2777 </li><li> 2778 <a href="/collections/lubricants" class="menu-promo__link-item"> 2779 <span class="menu-promo__link-icon" aria-hidden="true"> 2780 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2781 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2782 </svg> 2783 </span> 2784 <span>Lubricants</span> 2785 </a> 2786 </li><li> 2787 <a href="/collections/massage-sleeve-for-men" class="menu-promo__link-item"> 2788 <span class="menu-promo__link-icon" aria-hidden="true"> 2789 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2790 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2791 </svg> 2792 </span> 2793 <span>Manual Strokers</span> 2794 </a> 2795 </li><li> 2796 <a href="/collections/prostate-massager" class="menu-promo__link-item"> 2797 <span class="menu-promo__link-icon" aria-hidden="true"> 2798 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2799 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2800 </svg> 2801 </span> 2802 <span>Prostate Massagers</span> 2803 </a> 2804 </li></ul> 2805 </div><div class="menu-promo__link-column"> 2806 <ul class="menu-promo__link-list unstyled-list"><li> 2807 <a href="/collections/rabbit-vibrator" class="menu-promo__link-item"> 2808 <span class="menu-promo__link-icon" aria-hidden="true"> 2809 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2810 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2811 </svg> 2812 </span>
2813 <span>Rabbit Vibrators</span> 2814 </a> 2815 </li><li> 2816 <a href="/collections/remote-controlled-sex-toys" class="menu-promo__link-item"> 2817 <span class="menu-promo__link-icon" aria-hidden="true"> 2818 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2819 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2820 </svg> 2821 </span> 2822 <span>Remote Controlled</span> 2823 </a> 2824 </li><li> 2825 <a href="/collections/wand-massager" class="menu-promo__link-item"> 2826 <span class="menu-promo__link-icon" aria-hidden="true"> 2827 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2828 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2829 </svg> 2830 </span> 2831 <span>Wand Massagers</span> 2832 </a> 2833 </li><li> 2834 <a href="/collections/wearables" class="menu-promo__link-item"> 2835 <span class="menu-promo__link-icon" aria-hidden="true"> 2836 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2837 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2838 </svg> 2839 </span> 2840 <span>Wearables</span> 2841 </a> 2842 </li></ul> 2843 </div></div> 2844 </div></div></div> 2845 </div> 2846 </div> 2847 </header-menu-drawer-panel><header-menu-drawer-panel id="menu-drawer-panel-3" class="menu-drawer__panel color-scheme color-scheme--scheme-1"> 2848 <div class="menu-drawer__panel-body"> 2849 <div class="v-stack gap-5.5"> 2850 <button type="button" class="back-button justify-self-start" data-panel-toggle aria-controls="menu-drawer-panel-main"><svg aria-hidden="true" focusable="false" width="10" class="icon icon-back-arrow icon--direction-aware" part="icon" fill="none" viewBox="0 0 10 11"> 2851 <path stroke="currentColor" d="M5.5 1 1 5.5m0 0L5.5 10M1 5.5h9" /> 2852 </svg><span class="subheading">Back</span> 2853 </button> 2854 2855 <div class="v-stack gap-8"><div class="menu-promo__wrapper"><style> 2856 #promo-block-list-mega_menu_9GtqHQdrawer { 2857 --menu-promo-block-column-gap: 4px; 2858 --menu-promo-blocks-count: 4; 2859 } 2860 </style><div class="menu-promo__title">Top-Selling Brands</div><div id="promo-block-list-mega_menu_9GtqHQdrawer" class="menu-promo menu-promo--with-spacing floating-controls-container"> 2861 2862 <carousel-prev-button class="floating-controls__control floating-controls__control--offset" aria-controls="promo-block-list-mega_menu_9GtqHQdrawer-carousel"> 2863 <button disabled class="circle-button circle-button--xl"> 2864 <span class="sr-only">Previous</span><svg aria-hidden="true" focusable="false" width="14" class="icon icon-big-arrow-left icon--direction-aware" part="icon" viewBox="0 0 36 36"> 2865 <path fill="none" stroke="currentColor" stroke-width="2" d="M35 18H3M19.5 34.5 3 18 19.5 1.5"/> 2866 </svg></button> 2867 </carousel-prev-button> 2868
2869 <scroll-carousel id="promo-block-list-mega_menu_9GtqHQdrawer-carousel" class="menu-promo__carousel scroll-area"> 2870 2871 <a href="/collections/mschief" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 2872 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/mschief_logo_1.png?v=1773397777&width=920 460w, //lovedepot.com/cdn/shop/files/mschief_logo_1.png?v=1773397777&width=1220 610w, //lovedepot.com/cdn/shop/files/mschief_logo_1.png?v=1773397777&width=1830 915w, //lovedepot.com/cdn/shop/files/mschief_logo_1.png?v=1773397777&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="225" height="225"><img src="//lovedepot.com/cdn/shop/files/Frame_2095586310.png?v=1771418083&width=250" alt="" width="250" height="80" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom"></picture></div><div class="v-stack text-center gap-1"><p class="subheading">MsChief</p> 2873 2874</div></div></a> 2875 2876 <a href="/collections/skore" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 2877 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/Skore_logo_1.png?v=1773397777&width=920 460w, //lovedepot.com/cdn/shop/files/Skore_logo_1.png?v=1773397777&width=1220 610w, //lovedepot.com/cdn/shop/files/Skore_logo_1.png?v=1773397777&width=1830 915w, //lovedepot.com/cdn/shop/files/Skore_logo_1.png?v=1773397777&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="225" height="225"><img src="//lovedepot.com/cdn/shop/files/Skore_0f6959ba-7c61-4944-9f15-d0654e8ba191.png?v=1771418084&width=250" alt="" width="250" height="80" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom"></picture></div><div class="v-stack text-center gap-1"><p class="subheading">Skore</p> 2878 2879</div></div></a> 2880 2881 <a href="/collections/satisfyer" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 2882 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/Satisfyer_logo_1.png?v=1773397776&width=920 460w, //lovedepot.com/cdn/shop/files/Satisfyer_logo_1.png?v=1773397776&width=1220 610w, //lovedepot.com/cdn/shop/files/Satisfyer_logo_1.png?v=1773397776&width=1830 915w, //lovedepot.com/cdn/shop/files/Satisfyer_logo_1.png?v=1773397776&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="225" height="225"><img src="//lovedepot.com/cdn/shop/files/Satisfyer_974ba0c0-b1d7-4b85-ba91-c22dc768b831.png?v=1771418083&width=250" alt="" width="250" height="80" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom"></picture></div><div class="v-stack text-center gap-1"><p class="subheading">Satisfyer</p> 2883 2884</div></div></a> 2885 2886 <a href="/collections/honey-play-box" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 2887 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/Plus_one_1.png?v=1773397776&width=920 460w, //lovedepot.com/cdn/shop/files/Plus_one_1.png?v=1773397776&width=1220 610w, //lovedepot.com/cdn/shop/files/Plus_one_1.png?v=1773397776&width=1830 915w, //lovedepot.com/cdn/shop/files/Plus_one_1.png?v=1773397776&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="225" height="225"><img src="//lovedepot.com/cdn/shop/files/Group_1_d6c51de0-80de-491d-afa6-de0189b1a523.png?v=1786370350&width=250" alt="" width="250" height="80" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom"></picture></div><div class="v-stack text-center gap-1"><p class="subheading">Honey PlayBox</p> 2888 2889</div></div></a> 2890 2891 2892</scroll-carousel> 2893 2894 <carousel-next-button class="floating-controls__control floating-controls__control--offset" aria-controls="promo-block-list-mega_menu_9GtqHQdrawer-carousel"> 2895 <button class="circle-button circle-button--xl">
2896 <span class="sr-only">Next</span><svg aria-hidden="true" focusable="false" width="14" class="icon icon-big-arrow-right icon--direction-aware" part="icon" viewBox="0 0 36 36"> 2897 <path fill="none" stroke="currentColor" stroke-width="2" d="M1 18h32M16.5 1.5 33 18 16.5 34.5"/> 2898 </svg></button> 2899 </carousel-next-button> 2900 </div><div class="menu-promo__link-columns"><div class="menu-promo__link-columns-heading">All Brands</div><div class="menu-promo__link-columns-grid"><div class="menu-promo__link-column"> 2901 <ul class="menu-promo__link-list unstyled-list"><li> 2902 <a href="/collections/b-vibe" class="menu-promo__link-item"> 2903 <span class="menu-promo__link-icon" aria-hidden="true"> 2904 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2905 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2906 </svg> 2907 </span> 2908 <span>B Vibe</span> 2909 </a> 2910 </li><li> 2911 <a href="/collections/creative-conceptions" class="menu-promo__link-item"> 2912 <span class="menu-promo__link-icon" aria-hidden="true"> 2913 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2914 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2915 </svg> 2916 </span> 2917 <span>Creative Conceptions</span> 2918 </a> 2919 </li><li> 2920 <a href="/collections/fifty-shades-of-grey" class="menu-promo__link-item"> 2921 <span class="menu-promo__link-icon" aria-hidden="true"> 2922 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2923 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2924 </svg> 2925 </span> 2926 <span>Fifty Shades of Grey</span> 2927 </a> 2928 </li></ul> 2929 </div><div class="menu-promo__link-column"> 2930 <ul class="menu-promo__link-list unstyled-list"><li> 2931 <a href="/collections/hot" class="menu-promo__link-item"> 2932 <span class="menu-promo__link-icon" aria-hidden="true"> 2933 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2934 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2935 </svg> 2936 </span> 2937 <span>Hot</span> 2938 </a> 2939 </li><li> 2940 <a href="/collections/iroha" class="menu-promo__link-item"> 2941 <span class="menu-promo__link-icon" aria-hidden="true"> 2942 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2943 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2944 </svg> 2945 </span>
2946 <span>Iroha</span> 2947 </a> 2948 </li><li> 2949 <a href="/collections/je-joue" class="menu-promo__link-item"> 2950 <span class="menu-promo__link-icon" aria-hidden="true"> 2951 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2952 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2953 </svg> 2954 </span> 2955 <span>Je Joue</span> 2956 </a> 2957 </li></ul> 2958 </div><div class="menu-promo__link-column"> 2959 <ul class="menu-promo__link-list unstyled-list"><li> 2960 <a href="/collections/le-wand" class="menu-promo__link-item"> 2961 <span class="menu-promo__link-icon" aria-hidden="true"> 2962 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2963 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2964 </svg> 2965 </span> 2966 <span>Le Wand</span> 2967 </a> 2968 </li><li> 2969 <a href="/collections/oye-happy" class="menu-promo__link-item"> 2970 <span class="menu-promo__link-icon" aria-hidden="true"> 2971 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2972 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2973 </svg> 2974 </span> 2975 <span>Oye Happy</span> 2976 </a> 2977 </li><li> 2978 <a href="/collections/plusone" class="menu-promo__link-item"> 2979 <span class="menu-promo__link-icon" aria-hidden="true"> 2980 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2981 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2982 </svg> 2983 </span> 2984 <span>plusOne</span> 2985 </a> 2986 </li><li> 2987 <a href="/collections/romp" class="menu-promo__link-item"> 2988 <span class="menu-promo__link-icon" aria-hidden="true"> 2989 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 2990 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 2991 </svg> 2992 </span> 2993 <span>ROMP</span> 2994 </a> 2995 </li></ul> 2996 </div><div class="menu-promo__link-column"> 2997 <ul class="menu-promo__link-list unstyled-list"><li> 2998 <a href="/collections/we-vibe" class="menu-promo__link-item">
2999 <span class="menu-promo__link-icon" aria-hidden="true"> 3000 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 3001 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 3002 </svg> 3003 </span> 3004 <span>We Vibe</span> 3005 </a> 3006 </li><li> 3007 <a href="/collections/womanizer" class="menu-promo__link-item"> 3008 <span class="menu-promo__link-icon" aria-hidden="true"> 3009 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 3010 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 3011 </svg> 3012 </span> 3013 <span>Womanizer</span> 3014 </a> 3015 </li><li> 3016 <a href="https://lovedepot.com/collections/shots" class="menu-promo__link-item"> 3017 <span class="menu-promo__link-icon" aria-hidden="true"> 3018 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 3019 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 3020 </svg> 3021 </span> 3022 <span>Shots</span> 3023 </a> 3024 </li><li> 3025 <a href="/collections/chisa" class="menu-promo__link-item"> 3026 <span class="menu-promo__link-icon" aria-hidden="true"> 3027 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 3028 <path d="M6.81332 6.8095C8.48032 5.14401 10 0 10 0C10 0 11.5257 5.13997 13.1847 6.8095C14.8436 8.47903 20 10.003 20 10.003C20 10.003 14.8537 11.525 13.1867 13.1905C11.5197 14.856 10 20 10 20C10 20 8.48032 14.8499 6.81332 13.1824C5.14632 11.5149 0 9.99495 0 9.99495C0 9.99495 5.14632 8.47499 6.81332 6.8095Z" fill="#FFBC00"/> 3029 </svg> 3030 </span> 3031 <span>Chisa</span> 3032 </a> 3033 </li></ul> 3034 </div></div> 3035 </div></div></div> 3036 </div> 3037 </div> 3038 </header-menu-drawer-panel><header-menu-drawer-panel id="menu-drawer-panel-4" class="menu-drawer__panel color-scheme color-scheme--scheme-1"> 3039 <div class="menu-drawer__panel-body"> 3040 <div class="v-stack gap-5.5"> 3041 <button type="button" class="back-button justify-self-start" data-panel-toggle aria-controls="menu-drawer-panel-main"><svg aria-hidden="true" focusable="false" width="10" class="icon icon-back-arrow icon--direction-aware" part="icon" fill="none" viewBox="0 0 10 11"> 3042 <path stroke="currentColor" d="M5.5 1 1 5.5m0 0L5.5 10M1 5.5h9" /> 3043 </svg><span class="subheading">Back</span> 3044 </button> 3045 3046 <div class="v-stack gap-8"><div class="menu-promo__wrapper"><style> 3047 #promo-block-list-mega_menu_Wrrttedrawer { 3048 --menu-promo-block-column-gap: 4px; 3049 --menu-promo-blocks-count: 4; 3050 } 3051 </style><div id="promo-block-list-mega_menu_Wrrttedrawer" class="menu-promo menu-promo--with-spacing floating-control
3051s-container"> 3052 3053 <carousel-prev-button class="floating-controls__control floating-controls__control--offset" aria-controls="promo-block-list-mega_menu_Wrrttedrawer-carousel"> 3054 <button disabled class="circle-button circle-button--xl"> 3055 <span class="sr-only">Previous</span><svg aria-hidden="true" focusable="false" width="14" class="icon icon-big-arrow-left icon--direction-aware" part="icon" viewBox="0 0 36 36"> 3056 <path fill="none" stroke="currentColor" stroke-width="2" d="M35 18H3M19.5 34.5 3 18 19.5 1.5"/> 3057 </svg></button> 3058 </carousel-prev-button> 3059 3060 <scroll-carousel id="promo-block-list-mega_menu_Wrrttedrawer-carousel" class="menu-promo__carousel scroll-area"> 3061 3062 <a href="/collections/new-arrivals" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 3063 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/New_Arrivals_1.png?v=1773398180&width=920 460w, //lovedepot.com/cdn/shop/files/New_Arrivals_1.png?v=1773398180&width=1220 610w, //lovedepot.com/cdn/shop/files/New_Arrivals_1.png?v=1773398180&width=1830 915w, //lovedepot.com/cdn/shop/files/New_Arrivals_1.png?v=1773398180&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="486" height="240"><img src="//lovedepot.com/cdn/shop/files/New_Arrivals.jpg?v=1775211967&width=1368" alt="" srcset="//lovedepot.com/cdn/shop/files/New_Arrivals.jpg?v=1775211967&width=610 610w, //lovedepot.com/cdn/shop/files/New_Arrivals.jpg?v=1775211967&width=915 915w" width="1368" height="540" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom"></picture></div></div></a> 3064 3065 <a href="/collections/best-seller" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 3066 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/Best_Sellers_1.png?v=1773398209&width=920 460w, //lovedepot.com/cdn/shop/files/Best_Sellers_1.png?v=1773398209&width=1220 610w, //lovedepot.com/cdn/shop/files/Best_Sellers_1.png?v=1773398209&width=1830 915w, //lovedepot.com/cdn/shop/files/Best_Sellers_1.png?v=1773398209&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="486" height="240"><img src="//lovedepot.com/cdn/shop/files/Best_Sellers.jpg?v=1775212005&width=1368" alt="" srcset="//lovedepot.com/cdn/shop/files/Best_Sellers.jpg?v=1775212005&width=610 610w, //lovedepot.com/cdn/shop/files/Best_Sellers.jpg?v=1775212005&width=915 915w" width="1368" height="540" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom"></picture></div></div></a> 3067 3068 <a href="/collections/1599" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 3069 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/New_Arrivals_2.png?v=1773398154&width=920 460w, //lovedepot.com/cdn/shop/files/New_Arrivals_2.png?v=1773398154&width=1220 610w, //lovedepot.com/cdn/shop/files/New_Arrivals_2.png?v=1773398154&width=1830 915w, //lovedepot.com/cdn/shop/files/New_Arrivals_2.png?v=1773398154&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="486" height="240"><img src="//lovedepot.com/cdn/shop/files/Under_1599.jpg?v=1775212037&width=1368" alt="" srcset="//lovedepot.com/cdn/shop/files/Under_1599.jpg?v=1775212037&width=610 610w, //lovedepot.com/cdn/shop/files/Under_1599.jpg?v=1775212037&width=915 915w" width="1368" height="540" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom"></picture></div></div></a> 3070 3071 3072 3073 <a href="/collections/luxe" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 3074 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/Luxe_6.png?v=1773398154&width=920 460w, //lovedepot.com/cdn/shop/files/Luxe_6.png?v=1773398154&width=1220 610w, //lovedepot.com/cdn/shop/files/Luxe_6.png?v=1773398154&width=1830 915w, //lovedepot.com/cdn/shop/files/Luxe_6.png?v=1773398154&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="486" height="240"><img src="//lovedepot.com/cdn/shop/files/Under_1600.jpg?v=1775212173&width=1368" alt="" srcset="//lovedepot.com/cdn/shop/files/Under_1600.jpg?v=1775212173&width=610 610w, //lovedepot.com/cdn/shop/files/Under_1600.jpg?v=1775212173&width=915 915w" width="1368" height="540" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom"></picture></div></div></a>
3075</scroll-carousel> 3076 3077 <carousel-next-button class="floating-controls__control floating-controls__control--offset" aria-controls="promo-block-list-mega_menu_Wrrttedrawer-carousel"> 3078 <button class="circle-button circle-button--xl"> 3079 <span class="sr-only">Next</span><svg aria-hidden="true" focusable="false" width="14" class="icon icon-big-arrow-right icon--direction-aware" part="icon" viewBox="0 0 36 36"> 3080 <path fill="none" stroke="currentColor" stroke-width="2" d="M1 18h32M16.5 1.5 33 18 16.5 34.5"/> 3081 </svg></button> 3082 </carousel-next-button> 3083 </div></div></div> 3084 </div> 3085 </div> 3086 </header-menu-drawer-panel><header-menu-drawer-panel id="menu-drawer-panel-5" class="menu-drawer__panel color-scheme color-scheme--scheme-1"> 3087 <div class="menu-drawer__panel-body"> 3088 <div class="v-stack gap-5.5"> 3089 <button type="button" class="back-button justify-self-start" data-panel-toggle aria-controls="menu-drawer-panel-main"><svg aria-hidden="true" focusable="false" width="10" class="icon icon-back-arrow icon--direction-aware" part="icon" fill="none" viewBox="0 0 10 11"> 3090 <path stroke="currentColor" d="M5.5 1 1 5.5m0 0L5.5 10M1 5.5h9" /> 3091 </svg><span class="subheading">Back</span> 3092 </button> 3093 3094 <div class="v-stack gap-8"><div class="menu-promo__wrapper"><style> 3095 #promo-block-list-mega_menu_pnRhV4drawer { 3096 --menu-promo-block-column-gap: 4px; 3097 --menu-promo-blocks-count: 2; 3098 } 3099 </style><div id="promo-block-list-mega_menu_pnRhV4drawer" class="menu-promo menu-promo--with-spacing floating-controls-container"> 3100 3101 <carousel-prev-button class="floating-controls__control floating-controls__control--offset" aria-controls="promo-block-list-mega_menu_pnRhV4drawer-carousel"> 3102 <button disabled class="circle-button circle-button--xl"> 3103 <span class="sr-only">Previous</span><svg aria-hidden="true" focusable="false" width="14" class="icon icon-big-arrow-left icon--direction-aware" part="icon" viewBox="0 0 36 36"> 3104 <path fill="none" stroke="currentColor" stroke-width="2" d="M35 18H3M19.5 34.5 3 18 19.5 1.5"/> 3105 </svg></button> 3106 </carousel-prev-button> 3107 3108 <scroll-carousel id="promo-block-list-mega_menu_pnRhV4drawer-carousel" class="menu-promo__carousel scroll-area"> 3109 3110 3111 3112 3113 <a href="/pages/how-we-deliver" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 3114 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/How_we_deliver_1.png?v=1773398359&width=920 460w, //lovedepot.com/cdn/shop/files/How_we_deliver_1.png?v=1773398359&width=1220 610w, //lovedepot.com/cdn/shop/files/How_we_deliver_1.png?v=1773398359&width=1830 915w, //lovedepot.com/cdn/shop/files/How_we_deliver_1.png?v=1773398359&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="486" height="240"><img src="//lovedepot.com/cdn/shop/files/How_We_Deliver.jpg?v=1775202033&width=1368" alt="" srcset="//lovedepot.com/cdn/shop/files/How_We_Deliver.jpg?v=1775202033&width=610 610w, //lovedepot.com/cdn/shop/files/How_We_Deliver.jpg?v=1775202033&width=915 915w" width="1368" height="472" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom"></picture></div></div></a> 3115 3116 <a href="/pages/returns-and-refunds" class="menu-promo__item group"><div class="v-stack justify-items-center gap-3"><div class="overflow-hidden "><picture> 3117 <source media="(max-width: 989px)" srcset="//lovedepot.com/cdn/shop/files/Returns_refunds_1.png?v=1773398359&width=920 460w, //lovedepot.com/cdn/shop/files/Returns_refunds_1.png?v=1773398359&width=1220 610w, //lovedepot.com/cdn/shop/files/Returns_refunds_1.png?v=1773398359&width=1830 915w, //lovedepot.com/cdn/shop/files/Returns_refunds_1.png?v=1773398359&width=2440 1220w" sizes="(max-width: 989px) 100vw, 0px" width="486" height="240"><img src="//lovedepot.com/cdn/shop/files/Return_and_Refunds.jpg?v=1775201992&width=1368" alt="" srcset="//lovedepot.com/cdn/shop/files/Return_and_Refunds.jpg?v=1775201992&width=610 610w, //lovedepot.com/cdn/shop/files/Return_and_Refunds.jpg?v=1775201992&width=915 915w" width="1368" height="472" loading="lazy" sizes="(min-width: 990px) 915px, 0px" class="zoom-image group-hover:zoom"></picture></div></div></a> 3118
3119</scroll-carousel> 3120 3121 <carousel-next-button class="floating-controls__control floating-controls__control--offset" aria-controls="promo-block-list-mega_menu_pnRhV4drawer-carousel"> 3122 <button class="circle-button circle-button--xl"> 3123 <span class="sr-only">Next</span><svg aria-hidden="true" focusable="false" width="14" class="icon icon-big-arrow-right icon--direction-aware" part="icon" viewBox="0 0 36 36"> 3124 <path fill="none" stroke="currentColor" stroke-width="2" d="M1 18h32M16.5 1.5 33 18 16.5 34.5"/> 3125 </svg></button> 3126 </carousel-next-button> 3127 </div></div></div> 3128 </div> 3129 </div> 3130 </header-menu-drawer-panel></header-menu-drawer></x-header> 3131</height-observer> 3132
3133<script> 3134 document.documentElement.style.setProperty( 3135 '--header-height', 3136 `${Math.round(document.getElementById('shopify-section-sections--17995989155909__header').clientHeight)}px` 3137 ); 3138</script>
3138 3139 3140 3141</header> 3142<!-- END sections: header-group --><!-- BEGIN sections: overlay-group --> 3143<section id="shopify-section-sections--17995989221445__search-drawer" class="shopify-section shopify-section-group-overlay-group shopify-section--search-drawer"><x-drawer id="search-drawer" class="drawer drawer--search color-scheme color-scheme--scheme-1" handle-editor-events> 3144 <div slot="header"> 3145 <form action="/search" id="predictive-search-form" method="GET" aria-owns="predictive-search" class="search-drawer__form h-stack gap-2.5" role="search" data-search-drawer-form> 3146 <label for="search-drawer-input" class="sr-only">Search for...</label> 3147 <input 3148 id="search-drawer-input" 3149 type="search" 3150 class="search-drawer__input h7" 3151 name="q" 3152 placeholder="Search for..." 3153 autocomplete="off" 3154 autocorrect="off" 3155 data-search-drawer-input 3156 > 3157 3158 <div class="search-drawer__actions"> 3159 <button 3160 type="button" 3161 class="search-drawer__clear" 3162 data-search-drawer-clear 3163 aria-label="Clear" 3164 hidden 3165 > 3166 <svg class="search-drawer__clear-svg" width="20" height="20" viewBox="0 0 22 22" fill="none" aria-hidden="true" focusable="false"> 3167 <circle cx="11" cy="11" r="10" stroke="currentColor" stroke-width="1.5"></circle> 3168 <path d="M7.5 7.5l7 7m0-7-7 7" stroke="currentColor" stroke-width="1.5" stroke-linecap="round"></path> 3169 </svg> 3170 </button> 3171 3172 <span class="search-drawer__divider" aria-hidden="true"></span> 3173 3174 <button 3175 type="submit" 3176 class="search-drawer__submit" 3177 aria-label="Search" 3178 > 3179 <svg class="search-drawer__submit-svg" width="22" height="22" viewBox="0 0 24 24" fill="none" aria-hidden="true" focusable="false"> 3180 <path d="M19 11C19 15.4183 15.4183 19 11 19C6.58172 19 3 15.4183 3 11C3 6.58172 6.58172 3 11 3C15.4183 3 19 6.58172 19 11Z" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"></path> 3181 <path d="M21 21L16.65 16.65" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"></path> 3182 </svg> 3183 </button> 3184 </div> 3185 </form> 3186 </div> 3187 3188 <predictive-search id="predictive-search"> 3189 <div slot="placeholder"> 3190 <div class="v-stack gap-8 sm:gap-12"></div> 3191 </div> 3192 3193 <div slot="results" class="contents"><!-- FILL IN JS --></div> 3194 </predictive-search> 3195</x-drawer> 3196 3197<style> 3198 .search-drawer__form { 3199 width: 100%; 3200 align-items: center; 3201 } 3202 3203 .search-drawer__form .search-drawer__input { 3204 flex: 1 1 auto; 3205 min-width: 0; 3206 } 3207 3208 .search-drawer__actions { 3209 flex: 0 0 auto; 3210 display: inline-flex; 3211 align-items: center; 3212 gap: 0.625rem; 3213 line-height: 0; 3214 } 3215 3216 .search-drawer__clear, 3217 .search-drawer__submit { 3218 display: inline-flex; 3219 align-items: center; 3220 justify-content: center; 3221 width: 28px; 3222 height: 28px; 3223 padding: 0; 3224 margin: 0; 3225 border: 0; 3226 background: transparent; 3227 color: currentColor; 3228 cursor: pointer; 3229 appearance: none; 3230 line-height: 0; 3231 } 3232 3233 .search-drawer__clear[hidden] { 3234 display: none !important; 3235 } 3236 3237 .search-drawer__clear-svg, 3238 .search-drawer__submit-svg { 3239 display: block; 3240 width: 20px; 3241 height: 20px; 3242 flex-shrink: 0; 3243 margin: 0; 3244 } 3245 3246 .search-drawer__submit-svg { 3247 width: 22px; 3248 height: 22px; 3249 } 3250 3251 .search-drawer__divider { 3252 flex: 0 0 auto; 3253 align-self: center; 3254 width: 1px; 3255 height: 1.25rem; 3256 background: currentColor; 3257 opacity: 0.25; 3258 } 3259</style> 3260
3261<script> 3262 (function () { 3263 function syncClearButton(form) { 3264 var input = form.querySelector('[data-search-drawer-input]'); 3265 var clearBtn = form.querySelector('[data-search-drawer-clear]'); 3266 if (!input || !clearBtn) return; 3267 clearBtn.hidden = input.value.trim().length === 0; 3268 } 3269 3270 document.querySelectorAll('[data-search-drawer-form]').forEach(function (form) { 3271 var input = form.querySelector('[data-search-drawer-input]'); 3272 var clearBtn = form.querySelector('[data-search-drawer-clear]'); 3273 if (!input || !clearBtn) return; 3274 3275 syncClearButton(form); 3276 3277 input.addEventListener('input', function () { 3278 syncClearButton(form); 3279 }); 3280 3281 clearBtn.addEventListener('click', function () { 3282 input.value = ''; 3283 syncClearButton(form); 3284 input.dispatchEvent(new Event('input', { bubbles: true })); 3285 input.focus(); 3286 }); 3287 }); 3288 })(); 3289</script>
3289 3290 3291</section><div id="shopify-section-sections--17995989221445__age_verifier_popup_CKCCc4" class="shopify-section shopify-section-group-overlay-group shopify-section--age-verifier"> 3292</div> 3293<!-- END sections: overlay-group --><main id="main" class="anchor"> 3294 <section id="shopify-section-template--17995989516357__image_with_text_overlay_4p3w7F" class="shopify-section shopify-section--image-with-text-overlay"><div 3295 3296 allow-transparent-header 3297 3298 class="color-scheme color-scheme--scheme-d8b5dace-7d5a-4d09-bdcf-9900ea9133de" 3299> 3300 <div class="content-box min-h-auto"> 3301 <div 3302 class="content-box__background-media with-overlay" 3303 style="--overlay: 0 0 0 / 0.0" 3304 ><img src="//lovedepot.com/cdn/shop/files/Bg-Element.png?v=1772770989&width=3024" alt="Love Depot" srcset="//lovedepot.com/cdn/shop/files/Bg-Element.png?v=1772770989&width=200 200w, //lovedepot.com/cdn/shop/files/Bg-Element.png?v=1772770989&width=300 300w, //lovedepot.com/cdn/shop/files/Bg-Element.png?v=1772770989&width=400 400w, //lovedepot.com/cdn/shop/files/Bg-Element.png?v=1772770989&width=500 500w, //lovedepot.com/cdn/shop/files/Bg-Element.png?v=1772770989&width=600 600w, //lovedepot.com/cdn/shop/files/Bg-Element.png?v=1772770989&width=700 700w, //lovedepot.com/cdn/shop/files/Bg-Element.png?v=1772770989&width=800 800w, //lovedepot.com/cdn/shop/files/Bg-Element.png?v=1772770989&width=1000 1000w, //lovedepot.com/cdn/shop/files/Bg-Element.png?v=1772770989&width=1200 1200w, //lovedepot.com/cdn/shop/files/Bg-Element.png?v=1772770989&width=1400 1400w, //lovedepot.com/cdn/shop/files/Bg-Element.png?v=1772770989&width=1600 1600w, //lovedepot.com/cdn/shop/files/Bg-Element.png?v=1772770989&width=1800 1800w, //lovedepot.com/cdn/shop/files/Bg-Element.png?v=1772770989&width=2000 2000w, //lovedepot.com/cdn/shop/files/Bg-Element.png?v=1772770989&width=2200 2200w, //lovedepot.com/cdn/shop/files/Bg-Element.png?v=1772770989&width=2400 2400w, //lovedepot.com/cdn/shop/files/Bg-Element.png?v=1772770989&width=2600 2600w, //lovedepot.com/cdn/shop/files/Bg-Element.png?v=1772770989&width=2800 2800w, //lovedepot.com/cdn/shop/files/Bg-Element.png?v=1772770989&width=3000 3000w" width="3024" height="726" loading="eager" fetchpriority="high" title="Love Depot" sizes="100vw" style=" "></div><div class="place-self-start sm:place-self-start"> 3305 <div class="max-w-md prose prose-justify-start sm:prose-justify-start"><nav class="breadcrumb breadcrumb--start" aria-label="Breadcrumb navigation" role="navigation"> 3306 <ol class="breadcrumb__list"> 3307 <li class="breadcrumb__item"> 3308 <a href="/" class="breadcrumb__link">Home</a> 3309 </li></ol> 3310 </nav><p id="shopify-block-AZnp1alB2blJaWU8yS__heading_dPxUif" class="h4" >Search</p></div> 3311 </div> 3312 3313</div> 3314</div> 3315<style> 3316 a.breadcrumb__link { 3317 color: #3d3d3d; 3318 background: none !important; 3319 } 3320 3321 span.breadcrumb__current { 3322 margin-left: 8px; 3323 } 3324 3325 span.breadcrumb__separator { 3326 font-size: 20px; 3327 color: #3d3d3d; 3328 } 3329 3330 li.breadcrumb__item { 3331 display: flex; 3332 align-items: center; 3333 padding-left: 0; 3334 } 3335 span.breadcrumb__separator { 3336 padding-left: 10px; 3337 } 3338 .shopify-section--image-with-text-overlay p { 3339 margin-top: 15px; 3340 } 3341 li.header__news-link svg path { 3342 stroke: #212121; 3343 } 3344 3345 @media screen and (min-width: 768px) { 3346 .shopify-section--image-with-text-overlay .max-w-md.prose.prose-justify-start.sm\:prose-justify-start { 3347 padding-left: 20px; 3348 margin-top: -20px; 3349 } 3350 } 3351 @media screen and (max-width: 676px) { 3352 span.breadcrumb__separator { 3353 font-size: 16px; 3354 } 3355 li.breadcrumb__item { 3356 font-size: 14px; 3357 } 3358 ol.breadcrumb__list { 3359 margin-top: 0; 3360 } 3361 .content-box__background-media.with-overlay { 3362 border-bottom: 1px solid #ffd7d8; 3363 } 3364 .shopify-section--image-with-text-overlay p.h4 { 3365 font-size: 24px !important; 3366 font-weight: 600 !important; 3367 } 3368 } 3369 @media screen and (max-width: 500px) { 3370 li.breadcrumb__item { 3371 font-size: 12px; 3372 } 3373 .shopify-section--image-with-text-overlay p { 3374 margin-top: 10px; 3375 } 3376 } 3377 .shopify-section--image-with-text-overlay p.h4 {
3378 color: #e00034; 3379 font-size: 34px; 3380 } 3381 @media screen and (min-width: 1440px) { 3382 .shopify-section--image-with-text-overlay p.h4 { 3383 font-size: 40px; 3384 } 3385 .shopify-section--image-with-text-overlay p { 3386 font-size: 18px; 3387 } 3388 } 3389</style> 3390 3391</section><section id="shopify-section-template--17995989516357__main" class="shopify-section shopify-section--main-search"><style> 3392 #shopify-section-template--17995989516357__main { 3393 --blog-post-list-grid: auto / minmax(0, 1fr); 3394 --blog-post-list-gap: 2.5rem; 3395 } 3396 3397 @media screen and (min-width: 700px) { 3398 #shopify-section-template--17995989516357__main { 3399 --blog-post-list-grid: auto / repeat(2, minmax(0, 1fr)); 3400 --blog-post-list-gap: var(--container-gutter); 3401 } 3402 } 3403 3404 @media screen and (min-width: 1000px) { 3405 #shopify-section-template--17995989516357__main { 3406 --blog-post-list-grid: auto / repeat(3, minmax(0, 1fr)); 3407 } 3408 } 3409 3410 @media screen and (min-width: 1400px) { 3411 #shopify-section-template--17995989516357__main { 3412 --blog-post-list-grid: auto / repeat(4, minmax(0, 1fr)); 3413 } 3414 } 3415</style><link href="//lovedepot.com/cdn/shop/t/117/assets/plp.css?v=164512366646542246401789123390" rel="stylesheet" type="text/css" media="all" /><div class="color-scheme color-scheme--scheme-1"><div class="container"> 3416 <div class="empty-state"> 3417 <div class="prose prose-justify-center"><form class="search-page-form" action="/search" method="get" role="search" data-search-page-form> 3418 <div class="search-form search-form--page"> 3419 <div class="search-form__field"> 3420 <label for="search-page-input-empty" class="search-form__label">Search</label> 3421 <input 3422 id="search-page-input-empty" 3423 type="search" 3424 name="q" 3425 value="" 3426 class="search-form__input heading" 3427 placeholder="Search for..." 3428 autocomplete="off" 3429 autocorrect="off" 3430 data-search-page-input 3431 > 3432 </div> 3433 3434 <div class="search-form__actions"> 3435 <button 3436 type="button" 3437 class="search-form__clear" 3438 data-search-page-clear 3439 aria-label="Clear" 3440 hidden 3441 > 3442 <svg class="search-form__clear-svg" width="22" height="22" viewBox="0 0 22 22" fill="none" aria-hidden="true" focusable="false"> 3443 <circle cx="11" cy="11" r="10" stroke="currentColor" stroke-width="1.5"></circle> 3444 <path d="M7.5 7.5l7 7m0-7-7 7" stroke="currentColor" stroke-width="1.5" stroke-linecap="round"></path> 3445 </svg> 3446 </button> 3447 3448 <span class="search-form__divider" aria-hidden="true"></span> 3449 3450 <button 3451 type="submit" 3452 class="search-form__submit" 3453 aria-label="Search" 3454 > 3455 <svg class="search-form__submit-svg" width="24" height="24" viewBox="0 0 24 24" fill="none" aria-hidden="true" focusable="false"> 3456 <path d="M19 11C19 15.4183 15.4183 19 11 19C6.58172 19 3 15.4183 3 11C3 6.58172 6.58172 3 11 3C15.4183 3 19 6.58172 19 11Z" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"></path> 3457 <path d="M21 21L16.65 16.65" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"></path> 3458 </svg> 3459 </button> 3460 </div> 3461 </div> 3462</form> 3463</div> 3464 </div> 3465 </div></div>
3465<script> 3466 (function () { 3467 function syncClearButton(form) { 3468 var input = form.querySelector('[data-search-page-input]'); 3469 var clearBtn = form.querySelector('[data-search-page-clear]'); 3470 if (!input || !clearBtn) return; 3471 clearBtn.hidden = input.value.trim().length === 0; 3472 } 3473 3474 document.querySelectorAll('[data-search-page-form]').forEach(function (form) { 3475 var input = form.querySelector('[data-search-page-input]'); 3476 var clearBtn = form.querySelector('[data-search-page-clear]'); 3477 if (!input || !clearBtn) return; 3478 3479 syncClearButton(form); 3480 3481 input.addEventListener('input', function () { 3482 syncClearButton(form); 3483 }); 3484 3485 clearBtn.addEventListener('click', function () { 3486 input.value = ''; 3487 syncClearButton(form); 3488 input.focus(); 3489 }); 3490 }); 3491 })(); 3492</script>
3492 3493 3494<style> 3495 .search-page-form { 3496 width: 100%; 3497 max-width: 32rem; 3498 margin-inline: auto; 3499 } 3500 3501 .search-form.search-form--page { 3502 display: flex !important; 3503 align-items: center; 3504 gap: 0.75rem; 3505 grid-template-columns: none; 3506 padding: 0.75rem 1rem; 3507 border: 1px solid #3d3d3d; 3508 border-radius: 12px; 3509 background: #fff; 3510 transition: border-color 0.2s ease; 3511 } 3512 3513 .search-form.search-form--page:focus-within { 3514 border-color: #212121; 3515 } 3516 3517 .search-form--page .search-form__field { 3518 flex: 1 1 auto; 3519 min-width: 0; 3520 display: flex; 3521 flex-direction: column; 3522 align-items: flex-start; 3523 justify-content: center; 3524 gap: 0.15rem; 3525 } 3526 3527 .search-form--page .search-form__label { 3528 margin: 0; 3529 font-size: 0.75rem; 3530 line-height: 1.2; 3531 font-weight: 400; 3532 color: #212121; 3533 } 3534 3535 .search-form--page .search-form__input { 3536 width: 100%; 3537 padding: 0; 3538 border: 0; 3539 outline: none; 3540 box-shadow: none; 3541 background: transparent; 3542 font-size: 1.125rem; 3543 line-height: 1.3; 3544 color: #212121; 3545 appearance: none; 3546 -webkit-appearance: none; 3547 } 3548 3549 .search-form--page .search-form__input::placeholder { 3550 color: #9a9a9a; 3551 } 3552 3553 .search-form--page .search-form__actions { 3554 flex: 0 0 auto; 3555 display: inline-flex; 3556 align-items: center; 3557 gap: 0.75rem; 3558 line-height: 0; 3559 } 3560 3561 .search-form--page .search-form__clear, 3562 .search-form--page .search-form__submit { 3563 flex: 0 0 auto; 3564 display: inline-flex !important; 3565 align-items: center; 3566 justify-content: center; 3567 width: 28px; 3568 height: 28px; 3569 padding: 0; 3570 margin: 0 !important; 3571 border: 0; 3572 background: transparent; 3573 color: #212121; 3574 cursor: pointer; 3575 appearance: none; 3576 line-height: 0; 3577 } 3578 3579 .prose .search-form--page .search-form__clear, 3580 .prose .search-form--page .search-form__submit, 3581 .prose .search-form--page .search-form__actions { 3582 margin-block-start: 0 !important; 3583 } 3584 3585 .search-form--page .search-form__clear[hidden] { 3586 display: none !important; 3587 } 3588 3589 .search-form--page .search-form__clear-svg, 3590 .search-form--page .search-form__submit-svg { 3591 display: block; 3592 width: 22px; 3593 height: 22px; 3594 flex-shrink: 0; 3595 margin: 0; 3596 } 3597 3598 3599 3600 .search-form--page .search-form__divider { 3601 flex: 0 0 auto; 3602 align-self: center; 3603 width: 1px; 3604 height: 1.5rem; 3605 margin: 0; 3606 background: #cfcfcf; 3607 } 3608 3609 @media screen and (min-width: 700px) { 3610 .search-form.search-form--page { 3611 padding: 0.9rem 1.25rem; 3612 gap: 1rem; 3613 } 3614 3615 .search-form--page .search-form__actions { 3616 gap: 1rem; 3617 } 3618 3619 .search-form--page .search-form__input { 3620 font-size: 1.25rem; 3621 } 3622 } 3623 3624 product-list.product-list { 3625 column-gap: 20px; 3626 --product-list-card-width: calc(25% - 15px); 3627 row-gap: 40px; 3628 } 3629 product-card.product-card.product-card--info-outside { 3630 margin: 0 !important; 3631 } 3632 .collection__results { 3633 padding: 0; 3634 } 3635 3636 @media screen and (max-width: 500px) { 3637 .collection__results { 3638 padding: 0; 3639 } 3640 search-result-panel span.jdgm-prev-badge__stars svg { 3641 width: 8px; 3642 height: 8px; 3643 } 3644 3645 search-result-panel span.jdgm-prev-badge__text.subheading { 3646 font-size: 8px; 3647 margin-top: 3px; 3648 } 3649 search-result-panel .product-card compare-at-price.line-through { 3650 font-size: 10px !important; 3651 } 3652 search-result-panel price-list.price-list { 3653 gap: 5px; 3654 } 3655 search-result-panel .wishlist-engine[data-added='false'] .wishlist-icon, 3656 search-result-panel .wishlist-engine[data-added='true'] .wishlist-icon { 3657 width: 12px !important; 3658 height: 15px !important; 3659 } 3660 search-result-panel .product-card__quick-buy.product-card__quick-buy--mobile button .button__content, 3661 button.product-card__sold-out-button.button { 3662 font-size: 12px; 3663 padding: 6px 10px; 3664 } 3665 search-result-panel product-card.product-card.product-card--info-outside { 3666 padding: 6px !important; 3667 } 3668 search-result-panel product-list.product-list { 3669 grid-template-columns: 1fr 1fr; 3670 column-gap: 12px; 3671 row-gap: 20px; 3672 } 3673 .search-form--page .search-form__submit-svg {
3674 width: 20px; 3675 height: 20px; 3676 } 3677 search-result-panel .meta_sales_badge img { 3678 width: 50px; 3679 height: 50px; 3680 } 3681 search-result-panel product-card.product-card.product-card--info-outside { 3682 margin: 0 !important; 3683 } 3684 search-result-panel .product-card__figure on-sale-badge.badge.badge--on-sale { 3685 gap: 3px; 3686 } 3687 3688 search-result-panel .product-card .wishlist-engine-button, 3689 .product-card .wishlist-engine-button:hover { 3690 width: 25px !important; 3691 height: 25px !important; 3692 } 3693 search-result-panel span.off_span { 3694 margin-top: -5px !important; 3695 } 3696 search-result-panel span.off_span { 3697 font-size: 8px; 3698 margin-top: -3px; 3699 } 3700 3701 search-result-panel .product-card a.product-title.heading.h6 { 3702 font-size: 12px !important; 3703 } 3704 search-result-panel .product-description.text-subdued.line-clamp { 3705 font-size: 10px !important; 3706 margin-bottom: 0; 3707 } 3708 3709 search-result-panel .product-card .text-on-sale, 3710 search-result-panel price-list.price-list sale-price { 3711 font-size: 14px !important; 3712 } 3713 3714 search-result-panel .product-card__rating-overlay { 3715 border-radius: 3px; 3716 padding: 0 5px; 3717 bottom: 10px; 3718 background: #fff; 3719 box-shadow: none; 3720 left: 10px; 3721 } 3722 3723 search-result-panel .jdgm-prev-badge { 3724 display: flex !important; 3725 align-items: center; 3726 gap: 5px; 3727 } 3728 } 3729</style> 3730 3731</section> 3732 </main><!-- BEGIN sections: footer-group --> 3733<footer id="shopify-section-sections--17995989123141__footer" class="shopify-section shopify-section-group-footer-group shopify-section--footer"><div class="footer color-scheme color-scheme--scheme-d8b5dace-7d5a-4d09-bdcf-9900ea9133de"> 3734 <div class="container"><div class="footer__content"><div class="footer__block-list"> 3735 3736 3737 3738 <div class="footer__block ld_logo_footer"> 3739 3740<div class="footer_logo_wrapper"> 3741 <div class="ld_wrapper_inner"><a href="https://lovedepot.com/" title="Love Depot"><img src="//lovedepot.com/cdn/shop/files/LD_logo_-_Red_1.png?v=1768473285&width=160" alt="Love Depot" srcset="//lovedepot.com/cdn/shop/files/LD_logo_-_Red_1.png?v=1768473285&width=160 160w, //lovedepot.com/cdn/shop/files/LD_logo_-_Red_1.png?v=1768473285&width=160 160w" width="160" height="93" loading="lazy" title="Love Depot" sizes="160px" style="--image-max-width: 160px" class="constrained-image"></a><div class="footer_content"><div class="v-stack gap-4.5"><p class="subheading">India’s Largest Pleasure Superstore</p><div class="prose"><p>From the house of TTK makers of Skore Condoms, Prestige, and more. <br/>A TTK Healthcare Venture.</p></div></div></div> 3742 </div> 3743 3744<ul class="social-media unstyled-list" role="list"><li class="social-media__item branding-colors--facebook"> 3745 <a href="https://www.facebook.com/lovedepotofficial" class="tap-area" target="_blank" rel="noopener" aria-label="Follow on Facebook"> 3746 <svg xmlns="http://www.w3.org/2000/svg" width="9" height="16" class="icon icon-facebook" viewBox="0 0 9 16" fill="none"> 3747<path d="M8.09069 8.99552L8.5442 6.09864H5.73697V4.2287C5.73697 3.43497 6.127 2.66368 7.38777 2.66368H8.66212V0.192822C7.91195 0.0745465 7.15412 0.0101064 6.39455 0C4.08162 0 2.57145 1.38565 2.57145 3.89686V6.10313H0V9H2.57145V15.9955H5.74605V9L8.09069 8.99552Z" fill="white"/> 3748</svg></a> 3749 </li><li class="social-media__item branding-colors--instagram"> 3750 <a href="https://www.instagram.com/lovedepotofficial/" class="tap-area" target="_blank" rel="noopener" aria-label="Follow on Instagram"> 3751 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" class="icon icon-instagram" viewBox="0 0 16 16" fill="none" style=" "> 3752<g clip-path="url(#clip0_521_12802)"> 3753<path d="M12.2331 2.85548C12.0478 2.85548 11.8666 2.91045 11.7125 3.01343C11.5583 3.11641 11.4382 3.2628 11.3673 3.43405C11.2963 3.60531 11.2777 3.79374 11.3139 3.97554C11.3501 4.15735 11.4393 4.32435 11.5704 4.45542C11.7015 4.58649 11.8685 4.67574 12.0503 4.71191C12.2321 4.74807 12.4205 4.72953 12.5918 4.65859C12.7631 4.58765 12.9094 4.46752 13.0124 4.3134C13.1154 4.15927 13.1704 3.97808 13.1704 3.79271C13.1709 3.66947 13.1471 3.54732 13.1002 3.43334C13.0533 3.31937 12.9843 3.21581 12.8972 3.12866C12.8101 3.04151 12.7065 2.97249 12.5925 2.9256C12.4785 2.87871 12.3564 2.85489 12.2331 2.85548Z" fill="white"/> 3754<path d="M8.06279 4.05859C7.2832 4.05859 6.52112 4.28977 5.87291 4.72289C5.2247 5.15601 4.71949 5.77162 4.42115 6.49187C4.12282 7.21212 4.04474 8.00469 4.19683 8.7693C4.34892 9.53392 4.72433 10.2363 5.27559 10.7875C5.82685 11.3388 6.52919 11.7142 7.2938 11.8663C8.05842 12.0184 8.85096 11.9403 9.57121 11.642C10.2915 11.3436 10.9071 10.8384 11.3402 10.1902C11.7733 9.54198 12.0045 8.77991 12.0045 8.00032C12.0033 6.95527 11.5876 5.95336 10.8487 5.2144C10.1097 4.47545 9.10783 4.05978 8.06279 4.05859ZM8.06279 10.5205C7.56327 10.5205 7.07497 10.3723 6.65969 10.0947C6.24442 9.81708 5.92083 9.4225 5.72988 8.96092C5.53893 8.49934 5.48917 7.99149 5.58695 7.50163C5.68473 7.01177 5.92567 6.56193 6.2792 6.20903C6.63272 5.85613 7.083 5.61602 7.57303 5.51911C8.06306 5.42221 8.57083 5.47284 9.03207 5.66461C9.49332 5.85639 9.88728 6.18068 10.1642 6.59645C10.441 7.01222 10.5883 7.50079 10.5875 8.00032C10.5863 8.66912 10.3198 9.31013 9.84644 9.78262C9.3731 10.2551 8.7316 10.5205 8.06279 10.5205Z" fill="white"/> 3755<path d="M11.1928 15.9955H4.80267C3.52928 15.9943 2.30839 15.488 1.40797 14.5875C0.507547 13.6871 0.00118731 12.4662 0 11.1928V4.8027C0.00118731 3.52931 0.507547 2.30842 1.40797 1.408C2.30839 0.507574 3.52928 0.00118731 4.80267 0H11.1928C12.4658 0.00237063 13.686 0.509117 14.5862 1.40928C15.4864 2.30945 15.9932 3.52968 15.9955 4.8027V11.1928C15.9943 12.4662 15.4879 13.6871 14.5875 14.5875C13.6871 15.488 12.4662 15.9943 11.1928 15.9955ZM4.80267 1.50223C3.9277 1.50342 3.08895 1.85153 2.47025 2.47023C1.85156 3.08892 1.50342 3.92773 1.50223 4.8027V11.1928C1.50342 12.0678 1.85156 12.9066 2.47025 13.5253C3.08895 14.144 3.9277 14.4921 4.80267 14.4933H11.1928C12.0678 14.4921 12.9066 14.144 13.5253 13.5253C14.144 12.9066 14.4921 12.0678 14.4932 11.1928V4.8027C14.4909 3.9281 14.1424 3.08998 13.524 2.47154C12.9055 1.8531 12.0674 1.5046 11.1928 1.50223H4.80267Z" fill="white"/> 3756</g> 3757<defs> 3758<clipPath id="clip0_521_12802"> 3759<rect width="16" height="16" fill="white"/> 3760</clipPath> 3761</defs> 3762</svg></a> 3763 </li><li class="social-media__item branding-colors--linkedin"> 3764 <a href="https://www.linkedin.com/company/ttk-healthcare-limited" class="tap-area" target="_blank" rel="noopener" aria-label="Follow on LinkedIn"> 3765<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" class="icon icon-linkedin" viewB
3765ox="0 0 16 16" fill="none" style=" "> 3766<path fill-rule="evenodd" clip-rule="evenodd" d="M3.47185 1.66068C3.47185 2.56601 2.78251 3.29869 1.7045 3.29869C0.668488 3.29869 -0.020852 2.56601 0.000481543 1.66068C-0.020852 0.711336 0.668471 0 1.72515 0C2.78249 0 3.45118 0.711336 3.47185 1.66068ZM0.0871523 15.1381V4.59269H3.36451V15.1374H0.0871523V15.1381Z" fill="white"/> 3767<path fill-rule="evenodd" clip-rule="evenodd" d="M5.99683 7.96006C5.99683 6.64472 5.95349 5.52338 5.91016 4.59604H8.75684L8.90817 6.04072H8.97285C9.40418 5.37205 10.4822 4.35938 12.2289 4.35938C14.3849 4.35938 16.0022 5.78272 16.0022 8.88674V15.1414H12.7249V9.2974C12.7249 7.93806 12.2509 7.01139 11.0649 7.01139C10.1589 7.01139 9.62019 7.63673 9.40486 8.24007C9.31819 8.45607 9.27552 8.7574 9.27552 9.06007V15.1414H5.99815V7.96006H5.99683Z" fill="white"/> 3768</svg></a> 3769 </li><li class="social-media__item branding-colors--twitter"> 3770 <a href="https://x.com/lovedepot_com" class="tap-area" target="_blank" rel="noopener" aria-label="Follow on Twitter"> 3771 <svg xmlns="http://www.w3.org/2000/svg" width="17" height="16" class="icon icon-twitter" viewBox="0 0 17 16" fill="none"> 3772<path d="M0.0394832 0L6.2919 8.46126L0 15.3406H1.41605L6.9246 9.31763L11.3754 15.3406H16.1942L9.59004 6.40343L15.4465 0H14.0304L8.95733 5.54705L4.85837 0H0.0394832ZM2.1219 1.05569H4.3357L14.1115 14.2848H11.8977L2.1219 1.05569Z" fill="white"/> 3773</svg></a> 3774 </li><li class="social-media__item branding-colors--youtube"> 3775 <a href="https://www.youtube.com/@lovedepotofficial7498" class="tap-area" target="_blank" rel="noopener" aria-label="Follow on YouTube"> 3776 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="14" class="icon icon-youtube" viewBox="0 0 20 14" fill="none"> 3777<path d="M19.8008 3.02083C19.8008 3.02083 19.6055 1.64843 19.0039 1.04582C18.2422 0.252708 17.3906 0.24882 17 0.202166C14.2031 -1.11231e-07 10.0039 0 10.0039 0H9.99609C9.99609 0 5.79688 -1.11231e-07 3 0.202166C2.60938 0.24882 1.75781 0.252708 0.996094 1.04582C0.394531 1.64843 0.203125 3.02083 0.203125 3.02083C0.203125 3.02083 0 4.63427 0 6.24382V7.75229C0 9.36184 0.199219 10.9753 0.199219 10.9753C0.199219 10.9753 0.394531 12.3477 0.992187 12.9503C1.75391 13.7434 2.75391 13.7162 3.19922 13.8017C4.80078 13.9533 10 14 10 14C10 14 14.2031 13.9922 17 13.7939C17.3906 13.7473 18.2422 13.7434 19.0039 12.9503C19.6055 12.3477 19.8008 10.9753 19.8008 10.9753C19.8008 10.9753 20 9.36573 20 7.75229V6.24382C20 4.63427 19.8008 3.02083 19.8008 3.02083ZM7.93359 9.58345V3.98889L13.3359 6.79589L7.93359 9.58345Z" fill="white"/> 3778</svg></a> 3779 </li></ul> 3780 </div> 3781 3782 3783 </div> 3784 3785 3786 3787 3788 3789 <div class="footer__block footer__block--newsletter " ><div class="v-stack gap-4.5"><p class="subheading"><strong>Subscribe to our newsletter</strong></p><div class="v-stack gap-5.5"><div class="prose"><p>Join our community for exclusive offers <br/>and the latest updates.</p></div><div class="v-stack gap-4"><form method="post" action="/contact#newsletter-form-sections--17995989123141__footer" id="newsletter-form-sections--17995989123141__footer" accept-charset="UTF-8" class="form-row"><input type="hidden" name="form_type" value="customer" /><input type="hidden" name="utf8" value="✓" /><input type="hidden" name="contact[tags]" value="newsletter"><div class="form-control" ><input id="input--sections--17995989123141__footer--contactemail" class="input " type="email" dir="ltr" name="contact[email]" 3790 3791 3792 3793 3794 placeholder=" " 3795 autocomplete="email" 3796 3797 enterkeyhint="send" 3798 required 3799 3800 3801 3802><label for="input--sections--17995989123141__footer--contactemail" class="floating-label ">Enter your email</label></div> 3803<button type="submit" class="button" ><button-content class="button__content" up-text="Submit">Submit 3804 </button-content></button></form></div> 3805 </div> 3806 </div> 3807 <div class="v-stack gap-4.5 mobile_social_media"> 3808 <p class="subheading">Social Media</p><ul class="social-media unstyled-list" role="list"><li class="social-media__item branding-colors--facebook"> 3809 <a href="https://www.facebook.com/lovedepotofficial" class="tap-area" target="_blank" rel="noopener" aria-label="Follow on Facebook"> 3810 <svg xmlns="http://www.w3.org/2000/svg" width="9" height="16" class="icon icon-facebook" viewB
3810ox="0 0 9 16" fill="none"> 3811<path d="M8.09069 8.99552L8.5442 6.09864H5.73697V4.2287C5.73697 3.43497 6.127 2.66368 7.38777 2.66368H8.66212V0.192822C7.91195 0.0745465 7.15412 0.0101064 6.39455 0C4.08162 0 2.57145 1.38565 2.57145 3.89686V6.10313H0V9H2.57145V15.9955H5.74605V9L8.09069 8.99552Z" fill="white"/> 3812</svg></a> 3813 </li><li class="social-media__item branding-colors--instagram"> 3814 <a href="https://www.instagram.com/lovedepotofficial/" class="tap-area" target="_blank" rel="noopener" aria-label="Follow on Instagram"> 3815 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" class="icon icon-instagram" viewBox="0 0 16 16" fill="none" style=" "> 3816<g clip-path="url(#clip0_521_12802)"> 3817<path d="M12.2331 2.85548C12.0478 2.85548 11.8666 2.91045 11.7125 3.01343C11.5583 3.11641 11.4382 3.2628 11.3673 3.43405C11.2963 3.60531 11.2777 3.79374 11.3139 3.97554C11.3501 4.15735 11.4393 4.32435 11.5704 4.45542C11.7015 4.58649 11.8685 4.67574 12.0503 4.71191C12.2321 4.74807 12.4205 4.72953 12.5918 4.65859C12.7631 4.58765 12.9094 4.46752 13.0124 4.3134C13.1154 4.15927 13.1704 3.97808 13.1704 3.79271C13.1709 3.66947 13.1471 3.54732 13.1002 3.43334C13.0533 3.31937 12.9843 3.21581 12.8972 3.12866C12.8101 3.04151 12.7065 2.97249 12.5925 2.9256C12.4785 2.87871 12.3564 2.85489 12.2331 2.85548Z" fill="white"/> 3818<path d="M8.06279 4.05859C7.2832 4.05859 6.52112 4.28977 5.87291 4.72289C5.2247 5.15601 4.71949 5.77162 4.42115 6.49187C4.12282 7.21212 4.04474 8.00469 4.19683 8.7693C4.34892 9.53392 4.72433 10.2363 5.27559 10.7875C5.82685 11.3388 6.52919 11.7142 7.2938 11.8663C8.05842 12.0184 8.85096 11.9403 9.57121 11.642C10.2915 11.3436 10.9071 10.8384 11.3402 10.1902C11.7733 9.54198 12.0045 8.77991 12.0045 8.00032C12.0033 6.95527 11.5876 5.95336 10.8487 5.2144C10.1097 4.47545 9.10783 4.05978 8.06279 4.05859ZM8.06279 10.5205C7.56327 10.5205 7.07497 10.3723 6.65969 10.0947C6.24442 9.81708 5.92083 9.4225 5.72988 8.96092C5.53893 8.49934 5.48917 7.99149 5.58695 7.50163C5.68473 7.01177 5.92567 6.56193 6.2792 6.20903C6.63272 5.85613 7.083 5.61602 7.57303 5.51911C8.06306 5.42221 8.57083 5.47284 9.03207 5.66461C9.49332 5.85639 9.88728 6.18068 10.1642 6.59645C10.441 7.01222 10.5883 7.50079 10.5875 8.00032C10.5863 8.66912 10.3198 9.31013 9.84644 9.78262C9.3731 10.2551 8.7316 10.5205 8.06279 10.5205Z" fill="white"/> 3819<path d="M11.1928 15.9955H4.80267C3.52928 15.9943 2.30839 15.488 1.40797 14.5875C0.507547 13.6871 0.00118731 12.4662 0 11.1928V4.8027C0.00118731 3.52931 0.507547 2.30842 1.40797 1.408C2.30839 0.507574 3.52928 0.00118731 4.80267 0H11.1928C12.4658 0.00237063 13.686 0.509117 14.5862 1.40928C15.4864 2.30945 15.9932 3.52968 15.9955 4.8027V11.1928C15.9943 12.4662 15.4879 13.6871 14.5875 14.5875C13.6871 15.488 12.4662 15.9943 11.1928 15.9955ZM4.80267 1.50223C3.9277 1.50342 3.08895 1.85153 2.47025 2.47023C1.85156 3.08892 1.50342 3.92773 1.50223 4.8027V11.1928C1.50342 12.0678 1.85156 12.9066 2.47025 13.5253C3.08895 14.144 3.9277 14.4921 4.80267 14.4933H11.1928C12.0678 14.4921 12.9066 14.144 13.5253 13.5253C14.144 12.9066 14.4921 12.0678 14.4932 11.1928V4.8027C14.4909 3.9281 14.1424 3.08998 13.524 2.47154C12.9055 1.8531 12.0674 1.5046 11.1928 1.50223H4.80267Z" fill="white"/> 3820</g> 3821<defs> 3822<clipPath id="clip0_521_12802"> 3823<rect width="16" height="16" fill="white"/> 3824</clipPath> 3825</defs> 3826</svg></a> 3827 </li><li class="social-media__item branding-colors--linkedin"> 3828 <a href="https://www.linkedin.com/company/ttk-healthcare-limited" class="tap-area" target="_blank" rel="noopener" aria-label="Follow on LinkedIn"> 3829<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" class="icon icon-linkedin" viewBox="0 0 16 16" fill="none" style=" "> 3830<path fill-rule="evenodd" clip-rule="evenodd" d="M3.47185 1.66068C3.47185 2.56601 2.78251 3.29869 1.7045 3.29869C0.668488 3.29869 -0.020852 2.56601 0.000481543 1.66068C-0.020852 0.711336 0.668471 0 1.72515 0C2.78249 0 3.45118 0.711336 3.47185 1.66068ZM0.0871523 15.1381V4.59269H3.36451V15.1374H0.0871523V15.1381Z" fill="white"/> 3831<path fill-rule="evenodd" clip-rule="evenodd" d="M5.99683 7.96006C5.99683 6.64472 5.95349 5.52338 5.91016 4.59604H8.75684L8.90817 6.04072H8.97285C9.40418 5.37205 10.4822 4.35938 12.2289 4.35938C14.3849 4.35938 16.0022 5.78272 16.0022 8.88674V15.1414H12.7249V9.2974C12.7249 7.93806 12.2509 7.01139 11.0649 7.01139C10.1589 7.01139 9.62019 7.63673 9.40486 8.24007C9.3
38311819 8.45607 9.27552 8.7574 9.27552 9.06007V15.1414H5.99815V7.96006H5.99683Z" fill="white"/> 3832</svg></a> 3833 </li><li class="social-media__item branding-colors--twitter"> 3834 <a href="https://x.com/lovedepot_com" class="tap-area" target="_blank" rel="noopener" aria-label="Follow on Twitter"> 3835 <svg xmlns="http://www.w3.org/2000/svg" width="17" height="16" class="icon icon-twitter" viewBox="0 0 17 16" fill="none"> 3836<path d="M0.0394832 0L6.2919 8.46126L0 15.3406H1.41605L6.9246 9.31763L11.3754 15.3406H16.1942L9.59004 6.40343L15.4465 0H14.0304L8.95733 5.54705L4.85837 0H0.0394832ZM2.1219 1.05569H4.3357L14.1115 14.2848H11.8977L2.1219 1.05569Z" fill="white"/> 3837</svg></a> 3838 </li><li class="social-media__item branding-colors--youtube"> 3839 <a href="https://www.youtube.com/@lovedepotofficial7498" class="tap-area" target="_blank" rel="noopener" aria-label="Follow on YouTube"> 3840 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="14" class="icon icon-youtube" viewBox="0 0 20 14" fill="none"> 3841<path d="M19.8008 3.02083C19.8008 3.02083 19.6055 1.64843 19.0039 1.04582C18.2422 0.252708 17.3906 0.24882 17 0.202166C14.2031 -1.11231e-07 10.0039 0 10.0039 0H9.99609C9.99609 0 5.79688 -1.11231e-07 3 0.202166C2.60938 0.24882 1.75781 0.252708 0.996094 1.04582C0.394531 1.64843 0.203125 3.02083 0.203125 3.02083C0.203125 3.02083 0 4.63427 0 6.24382V7.75229C0 9.36184 0.199219 10.9753 0.199219 10.9753C0.199219 10.9753 0.394531 12.3477 0.992187 12.9503C1.75391 13.7434 2.75391 13.7162 3.19922 13.8017C4.80078 13.9533 10 14 10 14C10 14 14.2031 13.9922 17 13.7939C17.3906 13.7473 18.2422 13.7434 19.0039 12.9503C19.6055 12.3477 19.8008 10.9753 19.8008 10.9753C19.8008 10.9753 20 9.36573 20 7.75229V6.24382C20 4.63427 19.8008 3.02083 19.8008 3.02083ZM7.93359 9.58345V3.98889L13.3359 6.79589L7.93359 9.58345Z" fill="white"/> 3842</svg></a> 3843 </li></ul></div></div> 3844 3845 3846 3847 <div class="footer__block footer__block--links " ><div class="v-stack gap-4.5 "><p class="subheading">Product</p><ul class="v-stack gap-2.5 unstyled-list" role="list"><li> 3848 <a href="/collections/just-for-you" title="Just For You" class="link-reversed link-tap-area">Just For You</a> 3849 </li><li> 3850 <a href="/collections/for-two-more" title="For Two & More" class="link-reversed link-tap-area">For Two & More</a> 3851 </li><li> 3852 <a href="/collections/buy-condoms" title="Protection" class="link-reversed link-tap-area">Protection</a> 3853 </li><li> 3854 <a href="/collections/buy-lubes" title="Lubes" class="link-reversed link-tap-area">Lubes</a> 3855 </li><li> 3856 <a href="/collections/energisers-enhancers" title="Energisers & Enhancers" class="link-reversed link-tap-area">Energisers & Enhancers</a> 3857 </li><li> 3858 <a href="/collections/care-hygiene" title="Care & Hygiene" class="link-reversed link-tap-area">Care & Hygiene</a> 3859 </li><li> 3860 <a href="/collections/games-accessories" title="Games & Accessories" class="link-reversed link-tap-area">Games & Accessories</a> 3861 </li></ul> 3862 </div></div> 3863 3864 3865 3866 <div class="footer__block footer__block--links " ><div class="v-stack gap-4.5 "><p class="subheading">Company</p><ul class="v-stack gap-2.5 unstyled-list" role="list"><li> 3867 <a href="/pages/about-us" title="About Us" class="link-reversed link-tap-area">About Us</a> 3868 </li><li> 3869 <a href="https://ttkhealthcare.com/" title="TTK Healthcare" class="link-reversed link-tap-area">TTK Healthcare</a> 3870 </li><li> 3871 <a href="https://ttkprestige.com/corporate/our-brands/ttk-group/" title="TTK Group" class="link-reversed link-tap-area">TTK Group</a> 3872 </li><li> 3873 <a href="/pages/terms-and-conditions" title="Terms & Conditions" class="link-reversed link-tap-area">Terms & Conditions</a> 3874 </li><li> 3875 <a href="/pages/privacy-policy" title="Privacy Policy" class="link-reversed link-tap-area">Privacy Policy</a> 3876 </li><li> 3877 <a href="/pages/sitemap" title="Sitemap" class="link-reversed link-tap-area">Sitemap</a> 3878 </li></ul> 3879 </div></div> 3880 3881 3882 3883 <div class="footer__block footer__block--links " ><div class="v-stack gap-4.5 "><p class="subheading">Help & Support</p><ul class="v-stack gap-2.5 unstyled-list" role="list"><li> 3884 <a href="/pages/how-we-deliver" title="How we Deliver" class="link-reversed link-tap-area">How we Deliver</a> 3885 </li><li> 3886 <a href="/pages/returns-and-refunds" title="Returns & Refunds" class="link-reversed link-tap-area">Returns & Refunds</a> 3887 </li><li> 3888 <a href="/pages/faq" title="FAQ" class="link-reversed link-tap-area">FAQ</a> 3889 </li><li> 3890 <a href="/pages/contact" title="Contact us" class="link-reversed link-tap-area">Contact us</a> 3891 </li><li> 3892 <a href="/pages/shipping-policy" title="Shipping Policy" class="link-reversed link-tap-area">Shipping Policy</a> 3893 </li></ul> 3894 </div></div> 3895 3896 3897 3898 <div class="footer__block footer__block--text " ><div class="v-stack gap-4.5"><p class="subheading">Contact Details</p><div class="prose"><p>A venture of TTK HEALTHCARE LIMITED. 
Address: 6, Cathedral Road, Gopalapuram, <br/>Chennai, Tamil Nadu, 600086
GSTIN: 33AABCT3312J1ZP
<br/>Email: <a href="mailto:[email protected]" target="_blank" title="mailto:[email protected]">[email protected]</a></p></div></div></div> 3899 3900</div></div><hr class="separator full-bleed"> 3901 3902 <div class="footer__aside"><div class="v-stack gap-3"> 3903 <p class="text-sm">Copyright © 2026 - Love Depot | All Rights Reserved</p></div> 3904 </div> 3905 </div> 3906</div> 3907 3908</footer> 3909<!-- END sections: footer-group --><x-toast class="toast"> 3910 3911 </x-toast>
3911<script async crossorigin fetchpriority="high" src="/cdn/shopifycloud/importmap-polyfill/es-modules-shim.2.4.0.js"></script>
vendor: 1 bytes, line 3911
3911
3912<script type="importmap">{ 3913 "imports": { 3914 "vendor": "//lovedepot.com/cdn/shop/t/117/assets/vendor.min.js?v=30802987683311202721755591168", 3915 "theme": "//lovedepot.com/cdn/shop/t/117/assets/theme-min.js?v=160440473093243896911771433514","photoswipe": "//lovedepot.com/cdn/shop/t/117/assets/photoswipe.min.js?v=13374349288281597431755591167"} 3916 } 3917 </script>
3917 3918 3919
3919<script type="module" src="//lovedepot.com/cdn/shop/t/117/assets/vendor.min.js?v=30802987683311202721755591168" defer></script>
3919 3920
3920<script type="module" src="//lovedepot.com/cdn/shop/t/117/assets/theme-min.js?v=160440473093243896911771433514" defer></script>
3920 3921 3922
3922<script> 3923 // Auto-close quick-buy modal when product is added to cart 3924 document.addEventListener('DOMContentLoaded', function () { 3925 document.documentElement.addEventListener('cart:change', function (event) { 3926 // Find all open quick-buy modals 3927 const openModals = document.querySelectorAll('quick-buy-modal[open]'); 3928 if (openModals) { 3929 openModals.forEach(function (modal) { 3930 // Check if the event originated from within this modal 3931 const formInsideModal = modal.querySelector('product-form'); 3932 if (formInsideModal) { 3933 // Close the modal 3934 modal.hide(); 3935 } 3936 }); 3937 } 3938 }); 3939 }); 3940 </script>
3940<script> 3941 (function () { 3942 function useDropdownStyle(el) { 3943 return el && el.classList && el.classList.contains('popover--dropdown'); 3944 } 3945 function getDescriptor(obj, key) { 3946 while (obj) { 3947 var d = Object.getOwnPropertyDescriptor(obj, key); 3948 if (d) return d; 3949 obj = Object.getPrototypeOf(obj); 3950 } 3951 return null; 3952 } 3953 function patch() { 3954 var C = customElements.get('x-popover'); 3955 if (!C || C.__dropdownPatched) return; 3956 var p = C.prototype, 3957 dL = getDescriptor(p, 'shouldLock'), 3958 dA = getDescriptor(p, 'shouldAppendToBody'); 3959 if (dL && dL.get) 3960 Object.defineProperty(p, 'shouldLock', { 3961 get: function () { 3962 return useDropdownStyle(this) ? false : dL.get.call(this); 3963 }, 3964 configurable: !0, 3965 enumerable: !!dL.enumerable, 3966 }); 3967 if (dA && dA.get) 3968 Object.defineProperty(p, 'shouldAppendToBody', { 3969 get: function () { 3970 return useDropdownStyle(this) ? false : dA.get.call(this); 3971 }, 3972 configurable: !0, 3973 enumerable: !!dA.enumerable, 3974 }); 3975 C.__dropdownPatched = !0; 3976 } 3977 if (customElements.get('x-popover')) patch(); 3978 else customElements.whenDefined('x-popover').then(patch); 3979 window.addEventListener('load', function () { 3980 setTimeout(patch, 0); 3981 }); 3982 })(); 3983 </script>
3983 3984 3985 <div id="shopify-block-AT2plNGNVWC90bDk5e__13492175517568419881" class="shopify-block shopify-app-block"> 3986 3987 3988 3989 3990 3991 3992
3993<script> 3994(function() { 3995 /* ========================================================== 3996 BOOLEANMATHS PASSIVE BRIDGE v4.0 (ZERO INTERFERENCE) 3997 Strategy: Update cart attributes PROACTIVELY, never block anything 3998 - Monitors page for any cart/checkout activity 3999 - Ensures attributes are ALWAYS in cart before user acts 4000 - 100% passive - no blocking, no interception 4001 ========================================================== */ 4002 4003 const DEBUG = false; 4004 const ENDPOINT_IDENTITY = "https://api.booleanmaths.com/identity"; 4005 4006 // --- UTILITIES --- 4007 function log(msg, data) { 4008 if (DEBUG) console.log("BooleanMaths:", msg, data || ""); 4009 } 4010 4011function setDeviceData() { 4012 log("Requesting ultimate device specs..."); 4013 4014 // --- Helper to guess form factor if API fails --- 4015 const getFormFactorFallback = () => { 4016 const width = window.screen.width; 4017 if (width <= 480) return 'phone'; 4018 if (width <= 1024) return 'tablet'; 4019 return 'desktop'; 4020 }; 4021 4022 let dev = { 4023 os: 'Unknown', 4024 model: 'Unknown', 4025 os_ver: 'Unknown', 4026 arch: 'Unknown', 4027 bit: 'Unknown', 4028 form: getFormFactorFallback(), // Default to screen-based guess 4029 ram: navigator.deviceMemory || 'Unknown', 4030 cpu: navigator.hardwareConcurrency || 'Unknown', 4031 conn_type: navigator.connection ? navigator.connection.effectiveType : 'Unknown', 4032 conn_speed: navigator.connection ? navigator.connection.downlink : 'Unknown' 4033 }; 4034 4035 // 1. Basic OS Detection 4036 if (/iPhone|iPad/.test(navigator.userAgent)) { 4037 dev.os = 'iOS'; 4038 dev.form = /iPad/.test(navigator.userAgent) ? 'tablet' : 'phone'; 4039 } 4040 else if (/Android/.test(navigator.userAgent)) dev.os = 'Android'; 4041 else if (/Macintosh/.test(navigator.userAgent)) dev.os = 'macOS'; 4042 else if (/Windows/.test(navigator.userAgent)) dev.os = 'Windows'; 4043 4044 const save = (data) => { 4045 const val = [ 4046 data.os, data.model, data.os_ver, data.arch, 4047 data.bit, data.form, data.ram, data.cpu, 4048 data.conn_type, data.conn_speed 4049 ].join('|'); 4050 4051 const expiry = new Date(); 4052 expiry.setTime(expiry.getTime() + (30 * 24 * 60 * 60 * 1000)); 4053 document.cookie = "_bm_device_hint=" + encodeURIComponent(val) + 4054 ";expires=" + expiry.toUTCString() + ";path=/;SameSite=Lax"; 4055 }; 4056 4057 save(dev); 4058 4059 // 2. High Entropy Request (Refined for Form Factor) 4060 if (navigator.userAgentData && navigator.userAgentData.getHighEntropyValues) { 4061 navigator.userAgentData.getHighEntropyValues([ 4062 "model", "platform", "platformVersion", 4063 "architecture", "bitness", "formFactor" 4064 ]).then(ua => { 4065 dev.os = ua.platform || dev.os; 4066 dev.model = ua.model || 'Unknown'; 4067 dev.os_ver = ua.platformVersion || 'Unknown'; 4068 dev.arch = ua.architecture || 'Unknown'; 4069 dev.bit = ua.bitness || 'Unknown'; 4070 4071 // If the API gives us a specific form factor, use it (it returns an array) 4072 if (ua.formFactor && ua.formFactor.length > 0) { 4073 dev.form = ua.formFactor[0]; 4074 } 4075 4076 save(dev); 4077 }).catch(err => log("High entropy blocked", err)); 4078 } 4079} 4080 4081setDeviceData(); 4082 4083 // Returns EVERY value the cookie header carries for `name`, in header order. 4084 // 4085 // One name legitimately appears twice. Meta's fbevents.js writes _fbp on the registrable 4086 // domain (.brand.com) while our setCookie below writes host-only (www.brand.com), and the 4087 // browser sends both. Shopify's _shopify_y behaves the same way across a custom domain 4088 // and myshopify.com. 4089 function getAllCookieValues(name) { 4090 const target = name + '='; 4091 const out = []; 4092 const all = String(document.cookie || '').split(';'); 4093 for (let i = 0; i < all.length; i++) { 4094 const c = all[i].trim(); 4095 if (c.indexOf(target) === 0) out.push(c.substring(target.length)); 4096 } 4097 return out; 4098 } 4099 4100 // First value for `name`, or null. 4101 // 4102 // This used to read `const parts = value.split('; ' + name + '='); if (parts.length === 2)` 4103 // and return null whenever the name appeared MORE than once — the duplicate case above. 4104 // For _fbp that was catastrophic: getCookie said "no cookie", resolveFbp minted a fresh 4105 // id and wrote yet another duplicate, on every single page load. Measured before the fix: 4106 // 265,905 visitors churning a generated _fbp in three days, the worst holding 537 of them 4107 // across 1,098 events, while Meta's own _fbp churned for only 8,906. _bm_uuid churned the 4108 // same way for 14% of visitors through the _shopify_y lookup. 4109 function getCookie(name) { 4110 const all = getAllCookieValues(name); 4111 return all.length ? all[0] : null; 4112 } 4113 4114 // Deletes the HOST-ONLY cookie named `name`, leaving any domain-scoped one intact. 4115 // 4116 // This asymmetry is the whole point. A write with no `domain` attribute can only ever 4117 // address the host-only cookie, so expiring it here removes ours (www.brand.com) and 4118 // cannot touch Meta's (.brand.com). Once the duplicate is gone the browser sends one 4119 // value, which is what lets the web pixel agree with us — see resolveFbp. 4120 function deleteHostOnlyCookie(name) { 4121 document.cookie = name + "=;expires=Thu, 01 Jan 1970 00:00:00 GMT;path=/;SameSite=Lax"; 4122 } 4123 4124 async function hashValue(val) { 4125 try { 4126 const msgBuffer = new TextEncoder().encode(val); 4127 const hashBuffer = await crypto.subtle.digest('SHA-256', msgBuffer); 4128 return Array.from(new Uint8Array(hashBuffer)).map(b => b.toString(16).padStart(2, '0')).join(''); 4129 } catch (e) { return null; } 4130 } 4131 4132 // --- DEVICE FINGERPRINTING --- 4133 async function captureDeviceFingerprint() { 4134 let fingerprint = { 4135 screen: window.screen.width + "x" + window.screen.height, 4136 pixel_ratio: window.devicePixelRatio || 1, 4137 timezone: Intl.DateTimeFormat().resolvedOptions().timeZone, 4138 language: navigator.language, 4139 os: 'Unknown', model: 'Unknown' 4140 }; 4141 if (navigator.userAgentData) {
4142 try { 4143 const ua = await navigator.userAgentData.getHighEntropyValues(["model", "platform"]); 4144 fingerprint.os = ua.platform; fingerprint.model = ua.model; 4145 } catch (e) {} 4146 } else { 4147 if (/iPhone|iPad/.test(navigator.userAgent)) fingerprint.os = 'iOS'; 4148 else if (/Android/.test(navigator.userAgent)) fingerprint.os = 'Android'; 4149 } 4150 return fingerprint; 4151 } 4152 4153 // --- IDENTITY LISTENER --- 4154 const REGEX = { phone_in: /^(?:\+91|0)?([6-9]\d{9})$/, email: /@/ }; 4155 async function identifyUser(val) { 4156 if (!val || val.length < 5) return; 4157 let type = null; let clean = val.trim().toLowerCase(); 4158 4159 if (REGEX.email.test(clean)) type = 'email'; 4160 else { 4161 let p = clean.replace(/\D/g, ''); 4162 if (REGEX.phone_in.test(p)) { type = 'phone'; clean = '+91' + p.slice(-10); } 4163 } 4164 4165 if (type) { 4166 const hash = await hashValue(clean); 4167 const fp = await captureDeviceFingerprint(); 4168 const bmuuid = getCookie('_bm_uuid') || getCookie('_shopify_y'); 4169 4170 fetch(ENDPOINT_IDENTITY, { 4171 method: 'POST', 4172 headers: {'Content-Type': 'application/json'}, 4173 body: JSON.stringify({ bm_uuid: bmuuid, type, hash, device: fp }), 4174 keepalive: true 4175 }).catch(()=>{}); 4176 } 4177 } 4178 4179 // --- GET TRACKING DATA --- 4180 function newUUID() { 4181 if (window.crypto && window.crypto.randomUUID) return window.crypto.randomUUID(); 4182 return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) { 4183 const r = Math.random() * 16 | 0, v = c === 'x' ? r : (r & 0x3 | 0x8); 4184 return v.toString(16); 4185 }); 4186 } 4187 4188 function setCookie(name, value, days) { 4189 const expiry = new Date(); 4190 expiry.setTime(expiry.getTime() + (days * 24 * 60 * 60 * 1000)); 4191 document.cookie = name + "=" + value + 4192 ";expires=" + expiry.toUTCString() + ";path=/;SameSite=Lax"; 4193 } 4194 4195 // Meta's Browser ID. Format is fixed and documented: 4196 // fb.<subdomainIndex>.<creationTimeMs>.<random> 4197 // subdomainIndex is 1 for a normal shop domain. 4198 // 4199 // ONLY ever created when the cookie is absent. If the merchant has Meta's pixel on the 4200 // theme, fbevents.js reads an existing _fbp and only mints its own when there is none — 4201 // so writing first means their pixel adopts OUR value and browser + server events share 4202 // one Browser ID. Overwriting a value their pixel has already reported would give Meta 4203 // two ids for one person, which is worse than sending nothing. 4204 function resolveFbp() { 4205 // With duplicates possible, pick deliberately rather than taking whichever the browser 4206 // happened to send first. Meta's current pixel writes a 5-part _fbp 4207 // (fb.1.<ts>.<random>.<extra>); ours is 4-part. If Meta's is present it is the value 4208 // Meta already knows, so it wins — sending our own alongside it would give Meta two 4209 // Browser IDs for one person. 4210 const existing = getAllCookieValues('_fbp').filter(Boolean); 4211 if (existing.length) { 4212 const metas = existing.filter((v) => v.split('.').length >= 5); 4213 if (!metas.length) return existing[0]; 4214 4215 // Both kinds present. Picking Meta's here is not enough on its own: the web pixel 4216 // extension (extensions/boolean) reads cookies through Shopify's sandboxed 4217 // `browser.cookie.get('_fbp')`, which returns ONE value and offers no way to see or 4218 // choose between duplicates. It was returning our host-only id while cart 4219 // note_attributes carried Meta's, so trackevents and the order webhook described the 4220 // same person with two different Browser IDs. 4221 // 4222 // Removing our duplicate leaves exactly one _fbp in the header, so the sandboxed 4223 // lookup has nothing to get wrong. Safe to drop: a 4-part id we minted ourselves is 4224 // one Meta has never been told about, whereas theirs is already attached to their 4225 // browser-side events. 4226 if (existing.length > metas.length) { 4227 deleteHostOnlyCookie('_fbp'); 4228 log("Removed duplicate host-only _fbp in favour of Meta's", metas[0]); 4229 } 4230 return metas[0]; 4231 } 4232 4233 let fbp = 'fb.1.' + Date.now() + '.' + Math.floor(Math.random() * 1e10); 4234 // 90 days, matching the lifetime Meta's own pixel uses.
4235 setCookie('_fbp', fbp, 90); 4236 log("Generated _fbp", fbp); 4237 return fbp; 4238 } 4239 4240 function getTrackingData() { 4241 // Shopify's visitor ID (_shopify_y) is the preferred uuid - the web pixel 4242 // resolves the same value, so events and cart attributes stay joined. 4243 let bmuuid = getCookie('_shopify_y') || getCookie('_bm_uuid'); 4244 4245 if (!bmuuid) { 4246 // No visitor ID available - create one and persist it for the pixel 4247 bmuuid = newUUID(); 4248 const expiry = new Date(); 4249 expiry.setTime(expiry.getTime() + (365 * 24 * 60 * 60 * 1000)); 4250 document.cookie = "_bm_uuid=" + bmuuid + 4251 ";expires=" + expiry.toUTCString() + ";path=/;SameSite=Lax"; 4252 log("Generated fallback _bm_uuid", bmuuid); 4253 } 4254 4255 // Browser identifiers ride along into note_attributes so SERVER-side order events can 4256 // carry them. An order webhook never sees a cookie, so without this fbp coverage on 4257 // Purchase/*_Purchase_BM events is 0% — Meta's "low fbp coverage" warning. 4258 const data = { '_bm_uuid': bmuuid, '_fbp': resolveFbp() }; 4259 4260 // _fbc is only present when the visitor arrived from a Facebook ad (fbclid). Never 4261 // fabricated: a made-up click id would be wrong, and the server already rebuilds fbc 4262 // from a stored clickId when it can. 4263 const fbc = getCookie('_fbc'); 4264 if (fbc) data['_fbc'] = fbc; 4265 4266 // OpenAI (ChatGPT Ads) equivalents of _fbp / _fbc. Same reason they ride along here: 4267 // an order webhook never sees a cookie, so without these the Conversions API cannot 4268 // attribute a server-side purchase back to a ChatGPT ad click. 4269 // __obref — written by OpenAI's own pixel; we only read it 4270 // __oppref — the click identifier, captured from the landing URL below 4271 const obref = getCookie('__obref'); 4272 if (obref) data['__obref'] = obref; 4273 4274 const oppref = resolveOppref(); 4275 if (oppref) data['__oppref'] = oppref; 4276 4277 return data; 4278 } 4279 4280 // OpenAI passes the click identifier as `oppref` on the landing URL, the way Meta passes 4281 // fbclid. Persist it so it survives the rest of the session and reaches server-side 4282 // events long after the landing page is gone. 4283 // 4284 // Never overwrites an existing cookie: if OpenAI's own pixel already wrote __oppref, 4285 // theirs wins — a value we re-derived from a stale URL would be the wrong click. 4286 function resolveOppref() { 4287 const existing = getCookie('__oppref'); 4288 if (existing) return existing; 4289 4290 let fromUrl = null; 4291 try { 4292 fromUrl = new URLSearchParams(window.location.search).get('oppref'); 4293 } catch (e) { 4294 return null; 4295 } 4296 if (!fromUrl) return null; 4297 4298 // 90 days, matching how _fbp is persisted above. 4299 setCookie('__oppref', fromUrl, 90); 4300 log("Captured __oppref from landing URL", fromUrl); 4301 return fromUrl; 4302 } 4303 4304 // --- STATE MANAGEMENT --- 4305 let attributesInCart = false; 4306 let updateInProgress = false; 4307 4308 // --- ENSURE ATTRIBUTES ARE IN CART --- 4309 async function ensureAttributesInCart() { 4310 if (attributesInCart || updateInProgress) return; 4311 4312 const data = getTrackingData(); 4313 if (!data) return; 4314 4315 updateInProgress = true; 4316 4317 try { 4318 // First, check if attributes are already in cart 4319 const cartResponse = await fetch(window.Shopify.routes.root + 'cart.js'); 4320 const cart = await cartResponse.json(); 4321 4322 // Already-in-cart check must cover EVERY attribute we send, not just _bm_uuid. 4323 // Comparing only the uuid would short-circuit for any existing cart that predates a 4324 // newly added attribute (e.g. _fbp), so the new one would never be written and the 4325 // gap would look like the frontend change had not shipped. 4326 const upToDate = cart.attributes && Object.keys(data).every( 4327 (k) => cart.attributes[k] === data[k] 4328 ); 4329 if (upToDate) { 4330 log("✓ Attributes already in cart"); 4331 attributesInCart = true; 4332 updateInProgress = false; 4333 return; 4334 } 4335 4336 // Attributes not in cart, update them 4337 log("⟳ Updating cart attributes proactively"); 4338 const updateResponse = await fetch(window.Shopify.routes.root + 'cart/update.js', { 4339 method: 'POST', 4340 headers: { 'Content-Type': 'application/json' }, 4341 body: JSON.stringify({ attributes: data }), 4342 keepalive: true 4343 }); 4344 4345 const updatedCart = await updateResponse.json(); 4346 attributesInCart = true; 4347 log("✓ Cart attributes updated:", updatedCart.attributes); 4348 4349 } catch (err) { 4350 log("⚠Cart update failed:", err); 4351 } finally { 4352 updateInProgress = false;
4353 } 4354 } 4355 4356 // --- PROACTIVE MONITORING --- 4357 function startProactiveMonitoring() { 4358 // Strategy 1: Update attributes on page load if we have tracking data 4359 ensureAttributesInCart(); 4360 4361 // Strategy 2: Monitor for ANY interaction with checkout/cart buttons 4362 document.addEventListener('mouseover', (e) => { 4363 const target = e.target.closest('button, a, input[type="submit"]'); 4364 if (!target) return; 4365 4366 // Check if it's ANY button that might trigger checkout/cart 4367 const isCheckoutButton = 4368 target.name === 'checkout' || 4369 target.name === 'add' || 4370 target.classList.contains('shopify-payment-button__button') || 4371 target.classList.contains('checkout-btn') || 4372 target.classList.contains('product-form__submit') || 4373 target.href?.includes('/checkout') || 4374 target.getAttribute('onclick')?.includes('checkout'); 4375 4376 if (isCheckoutButton) { 4377 log("👆 Hovering checkout/cart button - ensuring attributes ready"); 4378 ensureAttributesInCart(); 4379 } 4380 }, { passive: true }); 4381 4382 // Strategy 3: Monitor for focus on checkout/cart buttons (keyboard users) 4383 document.addEventListener('focusin', (e) => { 4384 const target = e.target.closest('button, a, input[type="submit"]'); 4385 if (!target) return; 4386 4387 const isCheckoutButton = 4388 target.name === 'checkout' || 4389 target.name === 'add' || 4390 target.classList.contains('shopify-payment-button__button') || 4391 target.classList.contains('checkout-btn') || 4392 target.classList.contains('product-form__submit'); 4393 4394 if (isCheckoutButton) { 4395 log("⌨ Focusing checkout/cart button - ensuring attributes ready"); 4396 ensureAttributesInCart(); 4397 } 4398 }, { passive: true }); 4399 4400 // Strategy 4: Re-ensure attributes before ANY click (just in case) 4401 document.addEventListener('click', (e) => { 4402 const target = e.target.closest('button, a, input[type="submit"]'); 4403 if (!target) return; 4404 4405 const isCheckoutButton = 4406 target.name === 'checkout' || 4407 target.name === 'add' || 4408 target.classList.contains('shopify-payment-button__button') || 4409 target.classList.contains('checkout-btn') || 4410 target.classList.contains('product-form__submit') || 4411 target.href?.includes('/checkout'); 4412 4413 if (isCheckoutButton) { 4414 log("🖱 Clicked checkout/cart button - attributes should already be ready"); 4415 // Don't block - attributes should already be there from hover/focus 4416 // But fire one more update just to be safe (fire and forget) 4417 if (!attributesInCart && !updateInProgress) { 4418 const data = getTrackingData(); 4419 if (data) { 4420 fetch(window.Shopify.routes.root + 'cart/update.js', { 4421 method: 'POST', 4422 headers: { 'Content-Type': 'application/json' }, 4423 body: JSON.stringify({ attributes: data }), 4424 keepalive: true 4425 }).catch(() => {}); 4426 } 4427 } 4428 } 4429 }, { passive: true, capture: true }); 4430 4431 // Strategy 5: Periodic check (every 2 seconds) to ensure attributes stay in cart 4432 setInterval(() => { 4433 ensureAttributesInCart(); 4434 }, 2000); 4435 } 4436 4437 // --- INITIALIZATION --- 4438 function init() { 4439 // 1. Identity Listener 4440 document.addEventListener('blur', (e) => { 4441 if(e.target.tagName === 'INPUT') identifyUser(e.target.value); 4442 }, true); 4443 4444 // 2. Start Proactive Monitoring 4445 startProactiveMonitoring(); 4446 4447 log("BooleanMaths Passive Bridge v4.0 Loaded ✓"); 4448 log("100% passive - no blocking, no interference"); 4449 log("Attributes will be ready before any button click"); 4450 } 4451 4452 if (document.readyState === 'loading') { 4453 document.addEventListener('DOMContentLoaded', init); 4454 } else { 4455 init(); 4456 } 4457 4458})(); 4459</script>
4459 4460 4461</div><div id="shopify-block-Ac2RSNzNpR2YxZXhDa__10482958812443994587" class="shopify-block shopify-app-block">
4461<script 4462 id="bikScript" 4463 type="text/javascript" 4464> 4465 // Cart attribution runs regardless of the widget being enabled. 4466 (function () { 4467 const params = new URLSearchParams(window.location.search); 4468 if (params.get('utm_source') !== 'bik') return; 4469 4470 const attribution = {}; 4471 params.forEach((value, key) => { 4472 attribution[key] = value; 4473 }); 4474 4475 fetch('/cart/update.js', { 4476 method: 'POST', 4477 keepalive: true, 4478 headers: { 'Content-Type': 'application/json' }, 4479 body: JSON.stringify({ 4480 attributes: { 4481 bikCartAttribution: JSON.stringify(attribution), 4482 }, 4483 }), 4484 }).catch((e) => console.error('bik-logs cart attribution failed', e)); 4485 })(); 4486 4487 (async function () { 4488 const isProd = window.location.host !== 'icebreakerss.myshopify.com'; 4489 const host = isProd ? 'cdn.bikinfo.co/bap' : 'api.staging.bik.ai/bap/static-scr'; 4490 const storeUrl = Shopify.shop ?? window.location.origin; 4491 const lastModifiedAt = "1789478035812" || null; 4492 const isWidgetEnabled = "true" || "false"; 4493 4494 // Only proceed if widget is enabled (string "true") 4495 if (isWidgetEnabled === "true") { 4496 const response = await fetch( 4497 `https://${host}/storeFrontScriptsApiFunctions-getAllScriptSrc/?storeUrl=${storeUrl}&storeType=WHATSAPP&v=${lastModifiedAt}`, 4498 { 4499 method: "GET", 4500 mode: "cors", 4501 cache: "no-cache", 4502 credentials: "same-origin", 4503 headers: { 4504 "Content-Type": "application/json", 4505 }, 4506 redirect: "follow", 4507 referrerPolicy: "no-referrer", 4508 } 4509 ); 4510 4511 const sources = await response.json(); 4512 sources.data.forEach((src) => { 4513 const scriptTag = document.createElement("script"); 4514 scriptTag.setAttribute("src", src); 4515 document.body.appendChild(scriptTag); 4516 }); 4517 } 4518 4519 })(); 4520</script>
4520 4521<a href="https://bik.ai" style="z-index: -1; position: fixed; top: -100%; bottom: -100%;"></a> 4522 4523</div><div id="shopify-block-AdmdXU3VUQ3hMTm1rN__8764476057892802672" class="shopify-block shopify-app-block"><link rel="preconnect" href="https://app.restockrocket.io" crossorigin><link rel="preconnect" href="https://love-depot-india.myshopify.com" crossorigin><!-- Config and setup JS -->
4524<script id="RestockRocketConfig"> 4525 window._RestockRocketConfig = window._RestockRocketConfig || {} 4526 window._RestockRocket = window._RestockRocket || {} 4527 window._Stoq = window._RestockRocket 4528 window._StoqConfig = window._RestockRocketConfig 4529 try { window._RestockRocket.inlineRanAt = performance.now(); } catch (e) { } 4530 function normalizeLocale(locale) { 4531 if (!locale || locale.trim() === '') { 4532 return ''; 4533 } 4534 return locale.toString().toLowerCase().replace(/-/g, '_'); 4535 } 4536 4537 window._RestockRocketConfig.locale = 'en'; 4538 window._RestockRocketConfig.normalizedLocale = normalizeLocale('en'); 4539 window._RestockRocketConfig.shop = 'love-depot-india.myshopify.com'; 4540 window._RestockRocketConfig.pageType = 'search'; 4541 window._RestockRocketConfig.liquidRenderedAt = 1791335260;window._RestockRocketConfig.marketId = 7234977861;window._RestockRocketConfig.countryName = 'India'; 4542 window._RestockRocketConfig.countryIsoCode = 'IN';window._RestockRocketConfig.languageIsoCode = 'en';window._RestockRocketConfig.cartInventoryQuantity = {}; 4543 if (!window._RestockRocketConfig.cartToken) { 4544 try { 4545 const m = document.cookie.match(/(?:^|;\s*)cart=([^;]+)/); 4546 if (m && m[1]) window._RestockRocketConfig.cartToken = decodeURIComponent(m[1]); 4547 } catch (e) { } 4548 } 4549window._RestockRocketConfig.cachedSettings = {"id":64299,"shop_id":64279,"currency":"INR","created_at":"2026-06-01T14:45:13.631Z","updated_at":"2026-10-04T07:15:36.230Z","enable_app":true,"enable_signup_widget":true,"storefront_button_text":"NOTIFY ME","storefront_button_text_color":"inherit","storefront_button_background_color":"#FF003C","storefront_form_header":"Notify me","storefront_form_description":"Get a notification as soon as this product is back in stock by signing up below!","storefront_form_button_text":"Notify me when available","storefront_form_button_text_color":"#FFFFFF","storefront_form_button_background_color":"#202223","storefront_form_terms":"Promise we won't spam. You'll only receive notifications for this product.","storefront_form_error":"Please enter a valid email address","storefront_form_success":"Thank you! We will notify you when the product is available.","enable_powered_by":false,"show_button_on_preorder":false,"sms_enabled":false,"email_enabled":true,"storefront_button_disable_tag":"rocket-hide","theme_config":{},"storefront_form_email_placeholder":"Email address","storefront_form_phone_placeholder":"SMS","storefront_form_phone_label":"Phone number","storefront_form_email_label":"Email","storefront_form_phone_error":"Please enter a valid phone number","storefront_form_customer_name_placeholder":"Name","storefront_form_customer_name_error":"Please enter your name","storefront_form_did_you_mean_error":"Did you mean %{suggested_email}? Or use %{current_email}","form_customer_name_enabled":false,"form_customer_name_required":false,"css_config":"@media screen and (max-width:500px){\r\n button.restock-rocket-button.restock-rocket-button-product.restock-rocket-sticky-button {\r\n width: max-content !important;\r\n }\r\n}\r\n\r\n.product-card__sold-out-button.button:disabled{\r\n display: none !important;\r\n}\r\n\r\n.restock-rocket-button {\r\n min-height: 30px !important;\r\n}\r\n\r\n/* Notify Me, moved into the mobile Add to Cart slot — sized/shaped to match\r\n the real mobile Add to Cart button exactly (white pill, 30px radius,\r\n 1px orange-pink border, 15px uppercase text). */\r\n@media screen and (max-width: 699px) {\r\n .stoq-mobile-notify-slot { width: 100%; }\r\n .stoq-mobile-notify-slot .restock-rocket-button-collection {\r\n position: static !important;\r\n inset: auto !important;\r\n transform: none !important;\r\n opacity: 1 !important;\r\n visibility: visible !important;\r\n pointer-events: auto !important;\r\n display: flex !important;\r\n align-items: center;\r\n justify-content: center;\r\n width: 100% !important;\r\n height: auto !important;\r\n margin: 0 !important;\r\n padding: 12px 0 !important;\r\n font-size: 15px !important;\r\n font-weight: 500 !important;\r\n text-transform: uppercase !important;\r\n border-radius: 30px !important;\r\n background: #FF4B2B !important;\r\n border: 1px solid #FF4B2B !important;\r\n color: white !important;\r\n }\r\n}\r\n\r\nbutton.restock-rocket-button.restock-rocket-button-product {\r\n border-radius: 50px !important;\r\n color: white !important;\r\n font-weight: 800 !important;\r\n font-family: Poppins !important;\r\n font-size: 20px !important;\r\n}\r\n\r\n.featured-collections-products .product-card__sold-out.desktop_btn button.restock-rocket-button.restock-rocket-button-collection {\r\n height: 58px !important;\r\n max-height: unset !important;\r\n margin: 0 !important;\r\n border-radius: 25px !important;\r\n}\r\n\r\ndiv#collection .stoq-mobile-notify-slot:last-child {\r\n display: none !important;\r\n}\r\n\r\n.stoq-mobile-notify-slot button.restock-rocket-button.restock-rocket-button-collection {\r\n font-size: 12px !important;\r\n padding: 7px 10px !important;\r\n font-weight: 800 !important;\r\n}\r\n\r\n.stoq-mobile-notify-slot button.restock-rocket-button.restock-rocket-button-collection {\r\n padding: 5px 10px !important;\r\n font-size: 12px !important;\r\n font-weight: 600 !important;\r\n margin-top: 5px !important;\r\n}\r\n\r\nbutton.restock-rocket-button.restock-rocket-button-product.restock-rocket-sticky-button ~ button.sm\\:hidden.sticky_cart_btn.button {\r\n display: none !important;;\r\n}\r\n\r\n@media screen and (max-width: 699px) {\r\n button.restock-rocket-button.restock-rocket-button-product {\r\n max-height: 48px !important;\r\n line-height: 1 !important;\r\n font-size: 16px !important;\r\n }\r\n}\r\n\r\n@media screen and (max-width: 500px) {\r\n button.restock-rocket-button.restock-rocket-button-product {\r\n max-height: 37px !important;\r\n line-height: 0.5 !important;\r\n }\r\n}","js_config":"/**\r\n * STOQ - Sticky Notify Me Button Swapper (unchanged, PDP sticky bar only)\r\n * Target Source: .restock-rocket-button.restock-rocket-button-product\r\n * Target Replacement: .sticky_cart_btn.button--outline\r\n */\r\n(function () {\r\n const STOQ_PRODUCT_BUTTON_SELECTOR =\r\n \".restock-rocket-button.restock-rocket-button-product:not([data-stoq-sticky-notify])\";\r\n const STICKY_CART_BUTTON_SELECTOR = \".sticky_cart_btn.button--outline\";\r\n const PRODUCT_ROOT_SELECTOR =\r\n \"[x-ref='product_form_container'], .product-form, form[action*='/cart/add']\";\r\n const RETRY_DELAYS = [0, 150, 350, 700, 1200, 2000, 3500];\r\n\r\n let timers = [];\r\n let scrollQueued = false;\r\n\r\n if (typeof window.__stoqStickyNotifyCleanup === \"function\") {\r\n window.__stoqStickyNotifyCleanup();\r\n }\r\n\r\n function isVisible(element) {\r\n if (!element) return false;\r\n const style = window.getComputedStyle(element);\r\n return style.display !== \"none\" && style.visibility !== \"hidden\" && element.getClientRects().length > 0;\r\n }\r\n\r\n function getNativeStoqButton() {\r\n const buttons = Array.from(document.querySelectorAll(STOQ_PRODUCT_BUTTON_SELECTOR));\r\n return buttons.find(isVisible) || null;\r\n }\r\n\r\n function openNativeStoqModal() {\r\n const nativeButton = getNativeStoqButton();\r\n if (!nativeButton) return;\r\n const container = nativeButton.closest(\".restock-rocket-button-container\");\r\n const cover = container?.querySelector(\".restock-rocket-button-cover\");\r\n if (cover) { cover.click(); return; }\r\n nativeButton.click();\r\n }\r\n\r\n function createStickyNotifyButton(nativeButton) {\r\n const button = nativeButton.cloneNode(true);\r\n button.removeAttribute(\"id\");\r\n button.removeAttribute(\"form\");\r\n button.removeAttribute(\"disabled\");\r\n button.type = \"button\";\r\n button.dataset.stoqStickyNotify = \"true\";\r\n button.classList.add(\"restock-rocket-sticky-button\");\r\n button.style.width = \"100%\";\r\n button.style.margin = \"0\";\r\n button.addEventListener(\"click\", function (event) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n openNativeStoqModal();\r\n });\r\n return button;\r\n }\r\n\r\n function syncStickyButton() {\r\n const nativeStoqButton = getNativeStoqButton();\r\n const stickyButtons = Array.from(document.querySelectorAll(STICKY_CART_BUTTON_SELECTOR));\r\n if (!stickyButtons.length) return;\r\n\r\n stickyButtons.forEach(function (stickyButton) {\r\n let stickyNotifyButton = stickyButton.parentElement?.querySelector(\":scope > [data-stoq-sticky-notify='true']\");\r\n if (nativeStoqButton) {\r\n stickyButton.style.setProperty(\"display\", \"none\", \"important\");\r\n if (!stickyNotifyButton) {\r\n stickyNotifyButton = createStickyNotifyButton(nativeStoqButton);\r\n stickyButton.insertAdjacentElement(\"afterend\", stickyNotifyButton);\r\n }\r\n return;\r\n }\r\n stickyButton.style.removeProperty(\"display\");\r\n if (stickyNotifyButton) stickyNotifyButton.remove();\r\n });\r\n }
4549\r\n\r\n function scheduleSync() {\r\n timers.forEach(clearTimeout);\r\n timers = [];\r\n RETRY_DELAYS.forEach(function (delay) { timers.push(setTimeout(syncStickyButton, delay)); });\r\n }\r\n\r\n function handleProductChange(event) {\r\n const target = event.target;\r\n if (!(target instanceof Element)) return;\r\n if (target.matches(\"[name='id']\") || target.closest(PRODUCT_ROOT_SELECTOR)) scheduleSync();\r\n }\r\n\r\n function handleScroll() {\r\n if (scrollQueued) return;\r\n scrollQueued = true;\r\n requestAnimationFrame(function () { scrollQueued = false; syncStickyButton(); });\r\n }\r\n\r\n document.addEventListener(\"change\", handleProductChange, true);\r\n document.addEventListener(\"input\", handleProductChange, true);\r\n document.addEventListener(\"click\", handleProductChange, true);\r\n window.addEventListener(\"scroll\", handleScroll, { passive: true });\r\n\r\n window.__stoqStickyNotifyCleanup = function () {\r\n timers.forEach(clearTimeout);\r\n timers = [];\r\n document.removeEventListener(\"change\", handleProductChange, true);\r\n document.removeEventListener(\"input\", handleProductChange, true);\r\n document.removeEventListener(\"click\", handleProductChange, true);\r\n window.removeEventListener(\"scroll\", handleScroll);\r\n document.querySelectorAll(\"[data-stoq-sticky-notify='true']\").forEach(e => e.remove());\r\n document.querySelectorAll(STICKY_CART_BUTTON_SELECTOR).forEach(e => e.style.removeProperty(\"display\"));\r\n delete window.__stoqStickyNotifyCleanup;\r\n };\r\n\r\n scheduleSync();\r\n})();\r\n\r\n\r\n/**\r\n * STOQ Collection - Move (not clone) Notify Me into the SAME slot as the\r\n * mobile Add to Cart button (.product-card__quick-buy--mobile), which lives\r\n * inside .product-card__info — not the image. Moving the real node (instead\r\n * of cloning) keeps STOQ's own click/modal binding working with no extra glue.\r\n */\r\n(function () {\r\n const NATIVE_WRAP_SELECTOR = \".product-card__sold-out\";\r\n const STOQ_SOURCE_SELECTOR = \".restock-rocket-button-collection\";\r\n const ATTR = \"data-stoq-mobile-notify\";\r\n const RETRY_DELAYS = [0, 150, 350, 700, 1200, 2000, 3500];\r\n const MOBILE_BREAKPOINT = 700;\r\n\r\n let timers = [];\r\n\r\n function isMobile() {\r\n return window.innerWidth < MOBILE_BREAKPOINT;\r\n }\r\n\r\n function relocateNotify() {\r\n if (!isMobile()) {\r\n document.querySelectorAll(`[${ATTR}=\"true\"]`).forEach(function (holder) { holder.remove(); });\r\n document.querySelectorAll(NATIVE_WRAP_SELECTOR).forEach(function (wrap) { wrap.style.removeProperty(\"display\"); });\r\n return;\r\n }\r\n\r\n document.querySelectorAll(NATIVE_WRAP_SELECTOR).forEach(function (wrap) {\r\n const sourceBtn = wrap.querySelector(STOQ_SOURCE_SELECTOR);\r\n if (!sourceBtn || sourceBtn.dataset.stoqMoved === \"true\") return;\r\n\r\n const card = wrap.closest(\"product-card\") || wrap.closest(\".product-card\");\r\n if (!card) return;\r\n\r\n const mobileQuickBuy = card.querySelector(\".product-card__quick-buy--mobile\");\r\n const target = mobileQuickBuy ? mobileQuickBuy.parentElement : card.querySelector(\".product-card__info\");\r\n if (!target) return;\r\n\r\n const holder = document.createElement(\"div\");\r\n holder.setAttribute(ATTR, \"true\");\r\n holder.className = \"stoq-mobile-notify-slot\";\r\n holder.appendChild(sourceBtn);\r\n target.appendChild(holder);\r\n\r\n sourceBtn.dataset.stoqMoved = \"true\";\r\n wrap.style.setProperty(\"display\", \"none\", \"important\");\r\n });\r\n }\r\n\r\n function scheduleSync() {\r\n timers.forEach(clearTimeout);\r\n timers = [];\r\n RETRY_DELAYS.forEach(function (delay) { timers.push(setTimeout(relocateNotify, delay)); });\r\n }\r\n\r\n document.addEventListener(\"DOMContentLoaded\", scheduleSync);\r\n document.addEventListener(\"shopify:section:load\", scheduleSync);\r\n window.addEventListener(\"resize\", scheduleSync);\r\n\r\n scheduleSync();\r\n})();","collect_promotion_consent":false,"storefront_form_promotion_consent_label":"Notify me about other news, sales, discounts & offers too!","show_button_on_collection":true,"sms_default_country":"in","sms_allowed_countries":[],"sms_restrict_country":false,"sms_default_channel":true,"optin_required":false,"optin_custom_domain_enabled":false,"optin_success_text":"Registration confirmed! You'll receive an alert when the product is restocked.","storefront_button_border_radius":0,"storefront_button_disable_tag_hides_button":false,"storefront_button_disable_tag_enabled":false,"quantity_required":false,"storefront_form_quantity_label":"Quantity","enable_alerts":true,"sms_allowed":false,"email_allowed":true,"collect_promotion_consent_default":true,"insert_button_after_selector":".buy-buttons.buy-buttons--has-dynamic","insert_button_after_selector_type":"afterend","storefront_button_position_type":"specific","storefront_form_duplicate_error":"You've already subscribed for alerts to this product.","storefront_mixed_cart_error":"Preorders must be purchased
4549separately from regular items. Please complete your current order first, or clear your cart to continue.","storefront_error_heading":"Error","default_locale":"en","collection_page_button_text_color":"#FFFFFF","collection_page_button_background_color":"#FF003C","show_button_if_any_out_of_stock":false,"show_button_if_any_variant_out_of_stock_collection":false,"show_button_on_index":true,"insert_button_after_selector_collection":".product-card__sold-out-button.button","insert_button_after_selector_index":".product-card__sold-out-button.button","push_enabled":false,"push_allowed":true,"storefront_form_push_label":"Push","storefront_form_push_description":"Click 'Allow' to be notified via push notification","storefront_form_push_error":"Permission rejected! Please review notification settings and try again.","storefront_font_family":"Assistant, sans-serif","insert_button_after_selector_collection_type":"beforebegin","show_channel_selector":false,"storefront_form_empty_error":"Please fill in one or more of the options above","storefront_form_push_input":"Send push notification","insert_button_after_selector_page":".card__inner","show_button_on_page":false,"insert_button_after_selector_search":".product-card__sold-out-button.button","show_button_on_search":true,"app_proxy_path_prefix":"/apps/restockrocket-production","collection_link_selector":"","index_link_selector":".product-card__media","page_link_selector":"","search_link_selector":"","collection_check_link_visibility":false,"collection_buttons_container":"","index_buttons_container":"","page_buttons_container":"","search_buttons_container":"","extension_enable_url_variant_detection":true,"extension_enable_value_variant_detection":false,"extension_value_variant_selector":"[name='id']","resubscribe_text":"This product is out of stock. Get notified when it’s restocked again by entering your details below!","preorder_enabled":false,"preorder_buy_button_selector":".shopify-payment-button","preorder_add_to_cart_button_selector":".product-form__submit","preorder_badge_selector":".price__container","preorder_button_out_of_stock_text":"Out of stock","preorder_button_add_to_cart_text":"Add to cart","preorder_form_selector":"form[action*=\"/cart/add\"]","preorder_collection_enabled":false,"preorder_collection_form_selector":"form[action*=\"/cart/add\"]","preorder_collection_add_to_cart_button_selector":"form[action*=\"/cart/add\"] button","preorder_index_enabled":false,"preorder_index_form_selector":"form[action*=\"/cart/add\"]","preorder_index_add_to_cart_button_selector":"form[action*=\"/cart/add\"] button","preorder_page_enabled":false,"preorder_page_form_selector":"form[action*=\"/cart/add\"]","preorder_page_add_to_cart_button_selector":"form[action*=\"/cart/add\"] button","preorder_search_enabled":false,"preorder_search_form_selector":"form[action*=\"/cart/add\"]","preorder_search_add_to_cart_button_selector":"form[action*=\"/cart/add\"] button","preorder_collection_badge_selector":".card__inner","preorder_index_badge_selector":".card__inner","preorder_page_badge_selector":".card__inner","preorder_search_badge_selector":".card__inner","preorder_badge_selector_type":"afterend","preorder_collection_badge_selector_type":"afterend","preorder_button_child_selector":"span","preorder_button_disclaimer_insert_selector":".product-form__submit","preorder_button_disclaimer_insert_selector_type":"afterend","preorder_payment_insert_selector":".product-form__submit","preorder_payment_insert_selector_type":"beforebegin","preorder_price_container_selector":".price__container","preorder_price_container_selector_insert_type":"afterend","preorder_terms_insert_selector":"","preorder_terms_insert_selector_type":"afterend","preorder_original_price_selector":".price__regular .price-item--regular","preorder_price_format":"{{amount}} {{currency}}","show_badge_if_any_variant_is_preorder":false,"enable_console_debug":false,"inline_form_enabled":false,"inline_form_selector":".product-form__buttons","inline_form_selector_type":"afterend","storefront_form_prefill_customer":true,"storefront_form_show_image":false,"storefront_form_text_color":"#202223","storefront_form_background_color":"#FFFFFF","storefront_form_border_radius":10,"market_setup_type":"single_market","shopify_app_id":5940125,"preorder_progress_bar_insert_selector":"","preorder_progress_bar_insert_selector_type":"beforebegin","countdown_timer_insert_selector":"","countdown_timer_insert_selector_type":"afterend","configure_notify_me_enabled":false,"restock_note_insert_selector":"","restock_note_insert_selector_type":"afterend","restock_note_background_color":"#f3f4f6","restock_note_text_color":"#202223","restock_note_border_radius":4,"preorder_modal_continue_button_text":"Continue","preorder_modal_cancel_button_text":"Cancel","meta_pixel_enabled":false,"meta_pixel_id":null,"cache":true,"cached_at":"2026-10-04T07:15:36.350Z","multi_language_enabled":false,"translation_locale":"en","disable_refresh_on_stale_liquid":false,"api_host":"https://ext.stoqapp.com"};window._RestockRocketConfig.storefrontAccessToken = "80b9a86f7b816a72518a4ab2b3fd3c07"; 4550 window._RestockRocketConfig.metafieldNamespace = 'restockrocket_production'; 4551 window._RestockRocketConfig.storefrontApiVersion = '2026-07';window._RestockRocketConfig.cachedPreorderVariantIds = { preorder_variant_ids: [] };window._RestockRocketConfig.cachedInStockVariantIds = { in_stock_variant_ids: [] };window._RestockRocketConfig.cachedOutOfStockVariantIds = { out_of_stock_variant_ids: [] };window._RestockRocketConfig.cachedVariantPreorderLimits = { variant_preorder_limits: {} };window._RestockRocketConfig.cachedVariantShippingTexts = { variant_shipping_texts: {} }; 4552window._RestockRocketConfig.sellingPlans = [];(function() { 4553 const cachedData = {"plans":[],"disabled_plan_ids":[],"has_in_stock_offer":false,"has_preorder_offer":false,"read_flags":{"enable_storefront_product_reads":true,"enable_storefront_integrations_read":true,"enable_storefront_selling_plans_read":true},"cached_at":"2026-10-04T10:49:01Z"}; 4554 4555 if (cachedData && typeof cachedData === 'object' && cachedData.cached_at) { 4556 window._RestockRocketConfig.readFlags = cachedData.read_flags || {}; 4557 const oldPlans = window._RestockRocketConfig.sellingPlans; 4558 const maxUpdatedAt = Array.isArray(oldPlans) && oldPlans.length > 0 4559 ? oldPlans.reduce(function(max, plan) { 4560 if (plan.updated_at) { 4561 const planDate = new Date(plan.updated_at); 4562 const maxDate = max ? new Date(max) : null; 4563 return (!maxDate || (planDate && !isNaN(planDate) && planDate > maxDate)) ? plan.updated_at : max; 4564 } 4565 return max; 4566 }, '') 4567 : null; 4568 const cachedDate = new Date(cachedData.cached_at); 4569 const maxDate = maxUpdatedAt ? new Date(maxUpdatedAt) : null; 4570 const useCached = !maxUpdatedAt || (cachedDate && !isNaN(cachedDate) && (!maxDate || cachedDate > maxDate)); 4571 4572 if (useCached) { 4573 if (Array.isArray(cachedData.plans)) {
4574 window._RestockRocketConfig.sellingPlans = cachedData.plans; 4575 window._RestockRocketConfig.disabledSellingPlanIds = cachedData.disabled_plan_ids || []; 4576 console.debug('[RR] Using selling plans from cachedSellingPlans (cached_at: ' + cachedData.cached_at + ')'); 4577 } 4578 } else { 4579 window._RestockRocketConfig.disabledSellingPlanIds = []; 4580 console.debug('[RR] Using selling plans from old format (max updated_at: ' + maxUpdatedAt + ')'); 4581 } 4582 } 4583 })();window._RestockRocketConfig.enabledNotifyMeVariantIds = [];window._RestockRocketConfig.disabledNotifyMeVariantIds = [];window._RestockRocketConfig.backInStockTemplates = [];window._RestockRocketConfig.restockNotes = {};window._RestockRocketConfig.integrations = []; 4584 try { 4585 var _sqCfg = window._RestockRocketConfig; 4586 var _sqPlanEnabled = Array.isArray(_sqCfg.sellingPlans) && 4587 _sqCfg.sellingPlans.some(function (p) { return p && p.enabled; }); 4588 var _sqPreCount = ((_sqCfg.cachedPreorderVariantIds && 4589 _sqCfg.cachedPreorderVariantIds.preorder_variant_ids) || []).length; 4590 _sqCfg.preordersConfigured = !!(_sqPlanEnabled && _sqPreCount); 4591 } catch (e) { } 4592 try { 4593 var _sqc = window._RestockRocketConfig; 4594 var _sqOn = !(_sqc.cachedSettings && _sqc.cachedSettings.block_accelerated_checkout === false); 4595 var _sqPre = (_sqc.cachedPreorderVariantIds && 4596 _sqc.cachedPreorderVariantIds.preorder_variant_ids) || []; 4597 var _sqArm = false; 4598 if (_sqOn && _sqc.preordersConfigured) { 4599 if (_sqc.pageType === 'product' && _sqc.product && _sqc.product.variants) { 4600 _sqArm = _sqc.product.variants.some(function (v) { return _sqPre.indexOf(Number(v.id)) !== -1; }); 4601 } else { 4602 _sqArm = (_sqc.integrations || []).some(function (i) { 4603 return i && i.type === 'featured_product' && i.enabled && 4604 Array.isArray(i.page_types) && i.page_types.indexOf(_sqc.pageType) !== -1; 4605 }); 4606 } 4607 } 4608 if (_sqArm && document.documentElement) { 4609 _sqc.acceleratedGateArmed = true; 4610 document.documentElement.classList.add('stoq-buy-now-pending'); 4611 setTimeout(function () { 4612 document.documentElement.classList.remove('stoq-buy-now-pending'); 4613 }, 6000); 4614 } 4615 } catch (e) { } 4616 4617 window._RestockRocketConfig.scriptUrlProduct = 'https://cdn.shopify.com/extensions/01a10b23-799c-7a38-a052-ddf9175946a6/restockrocket-1-600/assets/restockrocket-product.js' 4618 window._RestockRocketConfig.scriptUrlCollection = 'https://cdn.shopify.com/extensions/01a10b23-799c-7a38-a052-ddf9175946a6/restockrocket-1-600/assets/restockrocket-collection.js' 4619 window._RestockRocketConfig.scriptUrlProductBis = 'https://cdn.shopify.com/extensions/01a10b23-799c-7a38-a052-ddf9175946a6/restockrocket-1-600/assets/restockrocket-product-bis.js' 4620 window._RestockRocketConfig.scriptUrlCollectionBis = 'https://cdn.shopify.com/extensions/01a10b23-799c-7a38-a052-ddf9175946a6/restockrocket-1-600/assets/restockrocket-collection-bis.js' 4621 window._RestockRocketConfig.scriptHost = window._RestockRocketConfig.scriptUrlProduct.substring(0, window._RestockRocketConfig.scriptUrlProduct.lastIndexOf('/') + 1) 4622 window._RestockRocketConfig.host = (window._RestockRocketConfig.cachedSettings && window._RestockRocketConfig.cachedSettings.api_host) || 'https://app.restockrocket.io' 4623 try { 4624 const _stoqVersionMatch = window._RestockRocketConfig.scriptHost.match(/(\d+)\/?(?:assets\/?)?$/); 4625 window._RestockRocketConfig.appVersion = (_stoqVersionMatch && _stoqVersionMatch[1]) || ''; 4626 } catch (e) { 4627 window._RestockRocketConfig.appVersion = ''; 4628 } 4629 const SETTINGS_CACHE_DURATION = 15 * 60 * 1000; 4630 const LIQUID_CACHE_MAX_AGE = 15 * 60; 4631 const liquidRenderedAt = window._RestockRocketConfig.liquidRenderedAt; 4632 if (!liquidRenderedAt || typeof liquidRenderedAt !== 'number' || isNaN(liquidRenderedAt)) { 4633 console.debug('STOQ - Invalid or missing liquidRenderedAt timestamp, assuming fresh'); 4634 window._RestockRocketConfig.isLiquidCacheFresh = true; 4635 window._RestockRocketConfig.liquidCacheAge = null; 4636 } else { 4637 const now = Math.floor(Date.now() / 1000);
4638 const liquidCacheAge = now - liquidRenderedAt; 4639 window._RestockRocketConfig.liquidCacheAge = Math.max(0, liquidCacheAge); 4640 if (liquidCacheAge < 0) { 4641 console.debug(`STOQ - Client clock appears ahead of server by ${Math.abs(Math.round(liquidCacheAge / 60))} minutes, assuming cache fresh`); 4642 window._RestockRocketConfig.isLiquidCacheFresh = true; 4643 } else if (liquidCacheAge <= LIQUID_CACHE_MAX_AGE) { 4644 console.debug(`STOQ - Liquid cache is fresh (${Math.round(liquidCacheAge / 60)} minutes old)`); 4645 window._RestockRocketConfig.isLiquidCacheFresh = true; 4646 } else { 4647 console.debug(`STOQ - Liquid cache is stale (${Math.round(liquidCacheAge / 60)} minutes old, max ${Math.round(LIQUID_CACHE_MAX_AGE / 60)} minutes)`); 4648 window._RestockRocketConfig.isLiquidCacheFresh = false; 4649 } 4650 } 4651 4652 function checkSettingsExpiry(settings) { 4653 try { 4654 if (!settings || !settings.updated_at) { 4655 console.debug('STOQ - Invalid settings data structure'); 4656 return null; 4657 } 4658 4659 if (!settings.cache) { 4660 console.debug('STOQ - settings caching disabled'); 4661 return null; 4662 } 4663 if (settings.multi_language_enabled) { 4664 if (!settings.translations) { 4665 console.debug('STOQ - multi-language enabled but no translation data in cache, fetching fresh'); 4666 return null; 4667 } 4668 if (window._RestockRocketConfig.normalizedLocale && 4669 !Object.prototype.hasOwnProperty.call(settings.translations, window._RestockRocketConfig.normalizedLocale)) { 4670 console.debug('STOQ - locale not explicitly translated, will use default language from cache'); 4671 } 4672 } 4673 4674 const updatedAt = new Date(settings.updated_at); 4675 if (isNaN(updatedAt.getTime())) { 4676 console.debug('STOQ - Invalid updated_at date format in settings'); 4677 return null; 4678 } 4679 4680 const age = Date.now() - updatedAt.getTime(); 4681 if (age < SETTINGS_CACHE_DURATION) { 4682 console.debug('STOQ - settings changed recently, skipping cache'); 4683 return null; 4684 } 4685 4686 return settings; 4687 } catch (error) { 4688 console.debug('STOQ - Error checking settings cache:', error); 4689 return null; 4690 } 4691 } 4692 4693 function createRestockRocketContainer() { 4694 const restockRocketContainer = document.createElement('div'); 4695 restockRocketContainer.id = 'restock-rocket'; 4696 document.body.appendChild(restockRocketContainer); 4697 } 4698 4699 function createRestockRocketScript(scriptUrl) { 4700 const restockRocketScriptElement = document.createElement('script'); 4701 restockRocketScriptElement.setAttribute('defer', 'defer'); 4702 restockRocketScriptElement.src = scriptUrl; 4703 document.body.appendChild(restockRocketScriptElement); 4704 } 4705 4706 createRestockRocketContainer() 4707 4708 console.debug('STOQ - extension activated') 4709 try { 4710 const _stoqInitConfig = window._RestockRocketConfig; 4711 const _stoqDetectedVariantIds = (_stoqInitConfig.product && Array.isArray(_stoqInitConfig.product.variants)
4711) 4712 ? _stoqInitConfig.product.variants.map(function(v) { return v.id }) 4713 : []; 4714 const _stoqSelectedVariantId = _stoqInitConfig.selected_variant_id; 4715 var _stoqPageSeq = 0; 4716 try { 4717 _stoqPageSeq = (parseInt(window.sessionStorage.getItem('_stoq_pls') || '0', 10) || 0) + 1; 4718 window.sessionStorage.setItem('_stoq_pls', String(_stoqPageSeq)); 4719 } catch (e) { } 4720 Shopify?.analytics?.publish?.('stoq_initialized', { 4721 cart_token: _stoqInitConfig.cartToken || '', 4722 page_url: window.location.href, 4723 page_type: _stoqInitConfig.pageType || '', 4724 shop_domain: _stoqInitConfig.shop || '', 4725 market_id: _stoqInitConfig.marketId || '', 4726 country_code: _stoqInitConfig.countryIsoCode || '', 4727 detected_variant_ids: _stoqDetectedVariantIds, 4728 selected_variant_id: _stoqSelectedVariantId || '', 4729 page_load_seq: _stoqPageSeq, 4730 liquid_rendered_at: _stoqInitConfig.liquidRenderedAt || 0, 4731 app_version: _stoqInitConfig.appVersion || '', 4732 liquid_cache_age: _stoqInitConfig.liquidCacheAge, 4733 inventory_policy: (_stoqInitConfig.variantsInventoryPolicy || {})[_stoqSelectedVariantId] || '', 4734 inventory_quantity: (_stoqInitConfig.variantsInventoryQuantity || {})[_stoqSelectedVariantId], 4735 }); 4736 } catch (e) { 4737 console.debug('STOQ - stoq_initialized publish failed:', e); 4738 } 4739 try { 4740 var _sqTrack = window._RestockRocketConfig; 4741 if (_sqTrack.preordersConfigured) { 4742 document.addEventListener('click', function (e) { 4743 try { 4744 var t = e.target; 4745 if (!t || !t.closest) return; 4746 var host = t.closest('.shopify-payment-button, shopify-payment-terms'); 4747 if (!host) return; 4748 var channel = host.matches && host.matches('shopify-payment-terms') 4749 ? 'shop_pay_installments' : 'buy_now'; 4750 var form = host.closest('form'); 4751 var vidEl = form && form.querySelector('[name="id"]'); 4752 var variantId = (vidEl && vidEl.value) || _sqTrack.selected_variant_id || ''; 4753 var _sqVidNum = Number(variantId); 4754 var _sqPlan = null; 4755 var _sqPlans = Array.isArray(_sqTrack.sellingPlans) ? _sqTrack.sellingPlans : []; 4756 var _sqMktId = Number(_sqTrack.marketId); 4757 var _sqForVariant = function (pl) { 4758 return pl && pl.enabled && Array.isArray(pl.variant_ids) && 4759 pl.variant_ids.indexOf(_sqVidNum) !== -1; 4760 }; 4761 _sqPlans.forEach(function (pl) { 4762 if (!_sqPlan && _sqForVariant(pl) && pl.markets_enabled && 4763 Array.isArray(pl.shopify_market_ids) && 4764 pl.shopify_market_ids.indexOf(_sqMktId) !== -1) { _sqPlan = pl; } 4765 }); 4766 if (!_sqPlan) { 4767 _sqPlans.forEach(function (pl) { 4768 if (!_sqPlan && _sqForVariant(pl) && !pl.markets_enabled) { _sqPlan = pl; } 4769 }); 4770 } 4771 Shopify?.analytics?.publish?.('stoq_accelerated_checkout_clicked', { 4772 variant_id: variantId, 4773 product_id: (_sqTrack.product && _sqTrack.product.id) || '', 4774 channel: channel, 4775 market_id: _sqTrack.marketId || '', 4776 country_code: _sqTrack.countryIsoCode || '', 4777 page_type: _sqTrack.pageType || '', 4778 cart_token: _sqTrack.cartToken || '', 4779 page_url: (window.location && window.location.href) || '', 4780 properties: { 4781 is_preorder_variant: (function () { 4782 var vid = Number(variantId); 4783 var has = function (a) { return Array.isArray(a) && a.indexOf(vid) !== -1; }; 4784 return has(_sqTrack.preorderVariantIds) || 4785 has(_sqTrack.cachedPreorderVariantIds && 4786 _sqTrack.cachedPreorderVariantIds.preorder_variant_ids); 4787 })(), 4788 in_enabled_plan: !!_sqPlan, 4789 is_instock_variant: (function () { 4790 var has = function (a) { return Array.isArray(a) && a.indexOf(_sqVidNum) !== -1; }; 4791 return has(_sqTrack.inStockVariantIds) || 4792 has(_sqTrack.cachedInStockVariantIds && 4793 _sqTrack.cachedInStockVariantIds.in_stock_variant_ids); 4794 })(), 4795 enrolled_plan_id: (_sqPlan && (_sqPlan.shopify_selling_plan_id || _sqPlan.shopify_selling_plan_group_id)) || '', 4796 enrolled_plan_provider: (_sqPlan && _sqPlan.inventory_provider) || '', 4797 block_enabled: !(_sqTrack.cachedSettings && _sqTrack.cachedSettings.block_accelerated_checkout === false), 4798 gate_armed: !!_sqTrack.acceleratedGateArmed, 4799 gate_active_at_click: !!(document.documentElement && 4800 document.documentElement.classList.contains('stoq-buy-now-pending')), 4801 blocked: (function () { 4802 try { 4803 var rr = window._RestockRocket; 4804 return !!(rr && typeof rr.willBlockAcceleratedCl
4804ick === 'function' && 4805 rr.willBlockAcceleratedClick(e)); 4806 } catch (err) { return false; } 4807 })(), 4808 }, 4809 }); 4810 } catch (err) { } 4811 }, true); 4812 } 4813 } catch (e) { } 4814 function applyTranslations(settings) { 4815 try { 4816 if (!settings || !settings.multi_language_enabled) { 4817 return settings; 4818 } 4819 4820 if (!settings.translations) { 4821 console.debug('STOQ - No translations found, skipping translation'); 4822 return settings; 4823 } 4824 4825 const normalizedLocale = window._RestockRocketConfig.normalizedLocale; 4826 const translations = settings.translations; 4827 4828 if (!normalizedLocale) { 4829 console.debug('STOQ - No matching locale for translations. Available:', Object.keys(translations || {})); 4830 delete settings.translations; 4831 return settings; 4832 } 4833 4834 console.debug(`STOQ - Applying translations for normalized locale: ${normalizedLocale} (original: ${window._RestockRocketConfig.locale})`); 4835 4836 const translatedFields = translations[normalizedLocale]; 4837 if (translatedFields && typeof translatedFields === 'object') { 4838 Object.keys(translatedFields).forEach(function(key) { 4839 const value = translatedFields[key]; 4840 if (value !== null && value !== undefined && value !== '') { 4841 settings[key] = value; 4842 } 4843 }); 4844 } else { 4845 console.debug('STOQ - No translated fields found for locale:', normalizedLocale); 4846 } 4847 4848 delete settings.translations; 4849 return settings; 4850 } catch (e) { 4851 console.debug('STOQ - error applying translations:', e); 4852 return settings; 4853 } 4854 } 4855 function setupCartSellingPlanUpdater(settings) { 4856 window.addEventListener('stoq:inventory-data-loaded', function(event) { 4857 console.debug('STOQ - Inventory data loaded, updating cart selling plans'); 4858 if (window._RestockRocket && window._RestockRocket.updateCartSellingPlans) { 4859 window._RestockRocket.updateCartSellingPlans() 4860 .then(hasUpdates => { 4861 if (hasUpdates) { 4862 console.debug('STOQ - cart selling plans updated successfully'); 4863 } else { 4864 console.debug('STOQ - no cart selling plan updates needed'); 4865 } 4866 }) 4867 .catch(error => { 4868 console.error('STOQ - error updating cart selling plans:', error); 4869 }); 4870 } 4871 }); 4872 } 4873 function storefrontGraphql(query, variables) { 4874 const cfg = window._RestockRocketConfig; 4875 if (!cfg.storefrontAccessToken || cfg.disableStorefrontApi === true) { 4876 return Promise.reject(new Error('Storefront API unavailable')); 4877 } 4878 return fetch( 4879 `https://${cfg.shop}/api/${cfg.storefrontApiVersion}/graphql.json`, 4880 { 4881 method: 'POST', 4882 headers: { 4883 'Content-Type': 'application/json', 4884 'X-Shopify-Storefront-Access-Token': cfg.storefrontAccessToken, 4885 }, 4886 body: JSON.stringify({ query: query, variables: variables }), 4887 } 4888 ) 4889 .then(function(response) { 4890 if (!response.ok) { throw new Error('Storefront API HTTP ' + response.status); } 4891 return response.json(); 4892 }) 4893 .then(function(body) { 4894 if (body && body.errors && body.errors.length) { 4895 throw new Error('Storefront API errors: ' + body.errors.map(function(e) { return e && e.message; }).join(', ')); 4896 } 4897 return body && body.data; 4898 }); 4899 } 4900 function fetchStorefrontShopMetafield(key) { 4901 const cfg = window._RestockRocketConfig; 4902 const query = 'query StoqShopMetafield($namespace: String!, $key: String!) { shop { metafield(namespace: $namespace, key: $key) { value } } }'; 4903 return storefrontGraphql(query, { namespace: cfg.metafieldNamespace, key: key }) 4904 .then(function(data) { 4905 const value = data && data.shop && data.shop.metafield && data.shop.metafield.value; 4906 if (!value) { throw new Error('Storefront API returned no ' + key + ' metafield value'); } 4907 return JSON.parse(value); 4908 }); 4909 } 4910 (function loadStorefrontSettings() { 4911 const cfg = window._RestockRocketConfig; 4912 if (!cfg.storefrontAccessToken || cfg.disableStorefrontApi === true) return; 4913 function run() { 4914 // The live-settings read is one more shop-level metafield fetch, so it 4915 // shares fetchStorefrontShopMetafield with the integrations/selling_plans 4916 // reads rather than re-issuing the same query + parse. 4917 fetchStorefrontShopMetafield('settings') 4918 .then(function(settings) { 4919 cfg.storefrontSettings = settings; 4920 console.debug('STOQ - stored live settings from Storefront API on config.storefrontSettings'); 4921 }) 4922 .catch(function(e) { 4923 console.debug('STOQ - Storefront settings fetch failed (non-fatal):', e && e.message); 4924 }); 4925 } 4926 4927 if (typeof window.requestIdleCallback === 'function') { 4928 window.requestIdleCallback(run, { timeout: 5000 }); 4929 } else { 4930 setTimeout(run, 0); 4931 } 4932 })(); 4933 const cachedSettings = window._RestockRocketConfig.cachedSettings; 4934 const validCachedSettings = cachedSettings ? checkSettingsExpiry(cachedSettings) : null; 4935 4936 if (validCachedSettings) { 4937 console.debug('STOQ - using cached settings'); 4938 initializeScripts(validCachedSettings); 4939 } else { 4940 console.debug('STOQ - fetching fresh settings'); 4941 const headers = { 4942 'X-Shopify-Shop-Domain': window._RestockRocketConfig.shop || window.Shopify.shop, 4943 'ngrok-skip-browser-warning': 'skip' 4944 }; 4945 4946 if (window.Shopify?.theme?.role === 'main') { 4947 headers['X-Shopify-Theme-Schema-Name'] = window.Shopify.theme.schema_name; 4948 headers['X-Shopify-Theme-Schema-Version'] = window.Shopify.theme.schema_version; 4949 headers['X-Shopify-Theme-Store-Id'] = window.Shopify.theme.theme_store_id; 4950 } 4951 4952 fetch( 4953 `${window._RestockRocketConfig.host}/api/v1/setting.json?translation_locale=${window._RestockRocketConfig.normalizedLocale}`, 4954 { headers } 4955 ) 4956 .then(function(response) { 4957 if (!response.ok) { 4958 throw new Error('Network response was not ok'); 4959 } 4960 return response.json(); 4961 }) 4962 .then(function(settings) { 4963 initializeScripts(settings); 4964 }) 4965 .catch(function(error) { 4966 if (cachedSettings) { 4967 console.debug('STOQ - using expired cached settings as fallback'); 4968 initializeScripts(cachedSettings); 4969 } else { 4970 console.error('STOQ - failed to load settings:', error); 4971 } 4972 }) 4973 .catch(function(e) { 4974 console.error(e) 4975 }) 4976 } 4977 4978 function fetchEmbedConfig(endpoint, apply) { 4979 return fetch( 4980 `${window._RestockRocketConfig.host}/api/v1/embed/${endpoint}.json`, 4981 { 4982 headers: { 4983 'X-Shopify-Shop-Domain': window._RestockRocketConfig.shop || window.Shopify.shop, 4984 'ngrok-skip-browser-warning': 'skip' 4985 } 4986 } 4987 ) 4988 .then(function(response) { 4989 if (!response.ok) throw new Error(`Failed to fetch ${endpoint}`); 4990 return response.json(); 4991 }) 4992 .then(function(data) {
4993 try { 4994 apply(data); 4995 } catch (applyError) { 4996 console.error('STOQ - apply failed for ' + endpoint + ':', applyError); 4997 throw applyError; 4998 } 4999 }) 5000 .catch(function(error) { 5001 console.debug(`STOQ - using cached ${endpoint}:`, error.message); 5002 }); 5003 } 5004 function refreshShopConfig(source) { 5005 const cfg = window._RestockRocketConfig; 5006 const viaEmbed = function() { return fetchEmbedConfig(source.endpoint, source.apply); }; 5007 const flagOn = !!cfg.readFlags && cfg.readFlags[source.flag] === true; 5008 if (!flagOn || source.embedOnly === true) { return viaEmbed(); } 5009 5010 return fetchStorefrontShopMetafield(source.metafieldKey) 5011 .then(function(value) { 5012 if (!source.isValid(value)) { throw new Error(source.metafieldKey + ' metafield is not a valid ' + source.endpoint + ' payload'); } 5013 source.apply(value); 5014 console.debug('STOQ - refreshed ' + source.endpoint + ' from the Storefront API'); 5015 }) 5016 .catch(function(error) { 5017 console.debug('STOQ - Storefront ' + source.endpoint + ' read failed, using embed:', error.message); 5018 return viaEmbed(); 5019 }); 5020 } 5021 function refreshIntegrations() { 5022 const cfg = window._RestockRocketConfig; 5023 return refreshShopConfig({ 5024 endpoint: 'integrations', 5025 metafieldKey: 'integrations', 5026 flag: 'enable_storefront_integrations_read', 5027 isValid: function(value) { return Array.isArray(value); }, 5028 apply: function(data) { 5029 cfg.integrations = data; 5030 } 5031 }); 5032 } 5033 function refreshSellingPlans(embedOnly) { 5034 const cfg = window._RestockRocketConfig; 5035 return refreshShopConfig({ 5036 embedOnly: embedOnly === true, 5037 endpoint: 'selling_plans', 5038 metafieldKey: 'cachedSellingPlans', 5039 flag: 'enable_storefront_selling_plans_read', 5040 isValid: function(value) { return !!value && Array.isArray(value.plans); }, 5041 apply: function(data) { 5042 cfg.sellingPlans = data.plans; 5043 cfg.disabledSellingPlanIds = data.disabled_plan_ids || []; 5044 if (data && data.read_flags && typeof data.read_flags === 'object' && !Array.isArray(data.read_flags)) { 5045 cfg.readFlags = data.read_flags; 5046 } 5047 } 5048 }); 5049 } 5050 5051 function initializeScripts(settings) { 5052 settings = applyTranslations(settings); 5053 window._RestockRocketConfig.settings = settings; 5054 console.debug(`STOQ - settings configured for ${window._RestockRocketConfig.pageType}`); 5055 const forceEmbedSellingPlans = settings.force_embed_selling_plans === true; 5056 const staleRefresh = !window._RestockRocketConfig.isLiquidCacheFresh && !settings.disable_refresh_on_stale_liquid; 5057 if (forceEmbedSellingPlans || staleRefresh) { 5058 console.debug('STOQ - refreshing selling_plans' + (staleRefresh ? ' + integrations (Liquid cache stale)' : ' (force_embed_selling_plans)')); 5059 const refreshes = [refreshSellingPlans(forceEmbedSellingPlans)]; 5060 if (staleRefresh) { refreshes.push(refreshIntegrations()); } 5061 Promise.race([ 5062 Promise.all(refreshes), 5063 new Promise(function(resolve) { setTimeout(resolve, 1000); }) 5064 ]).then(function() { loadScripts(settings); }); 5065 return; 5066 } 5067 5068 loadScripts(settings); 5069 } 5070 5071 function loadScripts(settings) { 5072 setupCartSellingPlanUpdater(settings); 5073 5074 if(settings.enable_app) { 5075 const hijackIntegration = window._RestockRocketConfig.integrations.find(function(integration) { 5076 return integration.type === 'hijack' && integration.enabled && integration.page_types.includes(window._RestockRocketConfig.pageType); 5077 }) 5078 const hasEnabledOffer = Array.isArray(window._RestockRocketConfig.sellingPlans) 5079 && window._RestockRocketConfig.sellingPlans.some(function(plan) { return plan && plan.enabled; }); 5080 const hasDisabledPlanIds = Array.isArray(window._RestockRocketConfig.disabledSellingPlanIds) 5081 && window._RestockRocketConfig.disabledSellingPlanIds.length > 0; 5082 const usePreorderBuild = settings.preorder_enabled || hasEnabledOffer || hasDisabledPlanIds; 5083 5084 const collectionScriptUrl = usePreorderBuild 5085 ? window._RestockRocketConfig.scriptUrlCollection 5086 : window._RestockRocketConfig.scriptUrlCollectionBis; 5087 const productScriptUrl = usePreorderBuild 5088 ? window._RestockRocketConfig.scriptUrlProduct 5089 : window._RestockRocketConfig.scriptUrlProductBis; 5090 5091 const pageType = window._RestockRocketConfig.pageType; 5092 const collectionPageTypes = ['collection', 'index', 'search', 'page']; 5093
5094 if(collectionPageTypes.indexOf(pageType) !== -1 && (settings[`show_button_on_${pageType}`] || settings[`preorder_${pageType}_enabled`])) { 5095 createRestockRocketScript(collectionScriptUrl); 5096 } else if(pageType === 'product') { 5097 createRestockRocketScript(productScriptUrl); 5098 } else if(hijackIntegration) { 5099 createRestockRocketScript(window._RestockRocketConfig.scriptUrlCollection); 5100 } else if(usePreorderBuild) { 5101 createRestockRocketScript(window._RestockRocketConfig.scriptUrlCollection); 5102 } else { 5103 console.debug(`STOQ - no scripts enabled for ${pageType}`); 5104 } 5105 const appLoadedEvent = new CustomEvent('stoq:loaded', { 5106 detail: { 5107 pageType: window._RestockRocketConfig.pageType, 5108 enabled: settings.enable_app, 5109 settings: settings, 5110 preorderEnabled: settings.preorder_enabled 5111 } 5112 }); 5113 console.debug('STOQ - dispatching app loaded event'); 5114 window.dispatchEvent(appLoadedEvent); 5115 } 5116 } 5117</script>
5117<style id="RestockRocketStyle">html.stoq-buy-now-pending .shopify-payment-button{pointer-events:none!important}</style> 5118 5119 5120</div>
5120<script src="https://cdn.shopify.com/storefront/standard-actions.js" type="module" data-source-attribution="shopify.standard_actions"></script>
5120 5121</body> 5122</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.