{"product_id":"samantha-tote-bag","title":"Samantha Tote Bag","description":"\u003cdiv class=\"group-block\n    group-block--height-fit\n    group-block--width-fill\n    border-style\n    spacing-style\n    size-style\" style=\"--border-width: 1px; --border-style: none; --border-color: rgb(var(--color-border-rgb) \/ 1.0); --border-radius: 0px; --padding-block-start: 16px; --padding-block-end: 16px; --padding-inline-start: 12px; --padding-inline-end: 12px; --size-style-width: 100%; --size-style-height: fit; --size-style-width-mobile: 100%; --size-style-width-mobile-min: 5rem;\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"group-block\n    group-block--height-fit\n    group-block--width-fill\n    border-style\n    spacing-style\n    size-style\" style=\"--border-width: 1px; --border-style: none; --border-color: rgb(var(--color-border-rgb) \/ 1.0); --border-radius: 0px; --padding-block-start: 16px; --padding-block-end: 16px; --padding-inline-start: 12px; --padding-inline-end: 12px; --size-style-width: 100%; --size-style-height: fit; --size-style-width-mobile: 100%; --size-style-width-mobile-min: 5rem;\"\u003e\n\u003cdiv class=\"group-block-content\n      \n      layout-panel-flex\n      layout-panel-flex--column\" style=\"--flex-direction: column; --flex-wrap: nowrap; --flex-wrap-mobile: wrap; --gap: 12px;\"\u003e\n\u003cdiv class=\"shopify-block\"\u003e\n\u003cdiv class=\"kr-video-slider-azmtqdxbrmmz2mwnqavideotestimonialscustom\"\u003e\n\u003cdiv class=\"kr-testimonial-header\"\u003e\n\u003ch2\u003eJoin our community of 75,000+ happy customers\u003c\/h2\u003e\n\u003c\/div\u003e\n\u003cbutton class=\"kr-nav-button kr-nav-prev\" id=\"prev-azmtqdxbrmmz2mwnqavideotestimonialscustom\"\u003e \u003csvg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 50 50\"\u003e\n      \u003crect width=\"50\" height=\"50\" fill=\"#fff\" opacity=\"0\"\u003e\u003c\/rect\u003e\u003cpath d=\"M17.39,7.5A2.27,2.27,0,0,1,19,8.17L34.22,23.39a2.28,2.28,0,0,1,0,3.22L19,41.83a2.28,2.28,0,1,1-3.23-3.23L29.38,25,15.78,11.4a2.29,2.29,0,0,1,0-3.23A2.25,2.25,0,0,1,17.39,7.5Z\" transform=\"scale(-1, 1) translate(-50, 0)\"\u003e\u003c\/path\u003e\n    \u003c\/svg\u003e \u003c\/button\u003e\n\u003cdiv class=\"kr-video-carousel-azmtqdxbrmmz2mwnqavideotestimonialscustom\" id=\"carousel-azmtqdxbrmmz2mwnqavideotestimonialscustom\"\u003e\n\u003cdiv class=\"kr-video-slide\"\u003e\n\u003cimg src=\"https:\/\/noaloo.com\/cdn\/shop\/files\/preview_images\/d7c4b10aacd1446889b56aec7c35681a.thumbnail.0000000000.jpg?v=1789250385\u0026amp;width=300\" alt=\"\" srcset=\"\/\/noaloo.com\/cdn\/shop\/files\/preview_images\/d7c4b10aacd1446889b56aec7c35681a.thumbnail.0000000000.jpg?v=1789250385\u0026amp;width=300 300w\" width=\"300\" height=\"533\" loading=\"lazy\"\u003e\n\u003cdiv class=\"kr-video-play-icon\"\u003e\u003csvg viewbox=\"0 0 70 70\"\u003e\n                \u003cg opacity=\"0.55\"\u003e\u003crect x=\"1\" y=\"1\" width=\"68\" height=\"68\" rx=\"34\"\u003e\u003c\/rect\u003e\u003c\/g\u003e\u003cpath d=\"M35,1A34,34,0,1,1,1,35,34,34,0,0,1,35,1m0-1h0A35,35,0,0,0,0,35H0A35,35,0,0,0,35,70h0A35,35,0,0,0,70,35h0A35,35,0,0,0,35,0Z\" fill=\"#fff\"\u003e\u003c\/path\u003e\u003cpath d=\"M45.48,34.39,27.42,24a.7.7,0,0,0-1.05.6V45.43a.7.7,0,0,0,1.05.6L45.48,35.61A.7.7,0,0,0,45.48,34.39Z\" fill=\"#fff\"\u003e\u003c\/path\u003e\n              \u003c\/svg\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"kr-video-slide\"\u003e\n\u003cimg src=\"https:\/\/noaloo.com\/cdn\/shop\/files\/preview_images\/4c7b9243f29a4cd4a8320dbc8a72cbf8.thumbnail.0000000000.jpg?v=1764717641\u0026amp;width=300\" alt=\"\" srcset=\"\/\/noaloo.com\/cdn\/shop\/files\/preview_images\/4c7b9243f29a4cd4a8320dbc8a72cbf8.thumbnail.0000000000.jpg?v=1764717641\u0026amp;width=300 300w\" width=\"300\" height=\"533\" loading=\"lazy\"\u003e\n\u003cdiv class=\"kr-video-play-icon\"\u003e\u003csvg viewbox=\"0 0 70 70\"\u003e\n                \u003cg opacity=\"0.55\"\u003e\u003crect x=\"1\" y=\"1\" width=\"68\" height=\"68\" rx=\"34\"\u003e\u003c\/rect\u003e\u003c\/g\u003e\u003cpath d=\"M35,1A34,34,0,1,1,1,35,34,34,0,0,1,35,1m0-1h0A35,35,0,0,0,0,35H0A35,35,0,0,0,35,70h0A35,35,0,0,0,70,35h0A35,35,0,0,0,35,0Z\" fill=\"#fff\"\u003e\u003c\/path\u003e\u003cpath d=\"M45.48,34.39,27.42,24a.7.7,0,0,0-1.05.6V45.43a.7.7,0,0,0,1.05.6L45.48,35.61A.7.7,0,0,0,45.48,34.39Z\" fill=\"#fff\"\u003e\u003c\/path\u003e\n              \u003c\/svg\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"kr-video-slide\"\u003e\n\u003cimg src=\"https:\/\/noaloo.com\/cdn\/shop\/files\/preview_images\/27415fd017b14d7d9714948e266f0fc8.thumbnail.0000000000.jpg?v=1789250907\u0026amp;width=300\" alt=\"\" srcset=\"\/\/noaloo.com\/cdn\/shop\/files\/preview_images\/27415fd017b14d7d9714948e266f0fc8.thumbnail.0000000000.jpg?v=1789250907\u0026amp;width=300 300w\" width=\"300\" height=\"533\" loading=\"lazy\"\u003e\n\u003cdiv class=\"kr-video-play-icon\"\u003e\u003csvg viewbox=\"0 0 70 70\"\u003e\n                \u003cg opacity=\"0.55\"\u003e\u003crect x=\"1\" y=\"1\" width=\"68\" height=\"68\" rx=\"34\"\u003e\u003c\/rect\u003e\u003c\/g\u003e\u003cpath d=\"M35,1A34,34,0,1,1,1,35,34,34,0,0,1,35,1m0-1h0A35,35,0,0,0,0,35H0A35,35,0,0,0,35,70h0A35,35,0,0,0,70,35h0A35,35,0,0,0,35,0Z\" fill=\"#fff\"\u003e\u003c\/path\u003e\u003cpath d=\"M45.48,34.39,27.42,24a.7.7,0,0,0-1.05.6V45.43a.7.7,0,0,0,1.05.6L45.48,35.61A.7.7,0,0,0,45.48,34.39Z\" fill=\"#fff\"\u003e\u003c\/path\u003e\n              \u003c\/svg\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"kr-video-slide\"\u003e\n\u003cimg src=\"https:\/\/noaloo.com\/cdn\/shop\/files\/preview_images\/25d97f84f027404db7f2f7bb04a57dda.thumbnail.0000000000.jpg?v=1789250249\u0026amp;width=300\" alt=\"\" srcset=\"\/\/noaloo.com\/cdn\/shop\/files\/preview_images\/25d97f84f027404db7f2f7bb04a57dda.thumbnail.0000000000.jpg?v=1789250249\u0026amp;width=300 300w\" width=\"300\" height=\"533\" loading=\"lazy\"\u003e\n\u003cdiv class=\"kr-video-play-icon\"\u003e\u003csvg viewbox=\"0 0 70 70\"\u003e\n                \u003cg opacity=\"0.55\"\u003e\u003crect x=\"1\" y=\"1\" width=\"68\" height=\"68\" rx=\"34\"\u003e\u003c\/rect\u003e\u003c\/g\u003e\u003cpath d=\"M35,1A34,34,0,1,1,1,35,34,34,0,0,1,35,1m0-1h0A35,35,0,0,0,0,35H0A35,35,0,0,0,35,70h0A35,35,0,0,0,70,35h0A35,35,0,0,0,35,0Z\" fill=\"#fff\"\u003e\u003c\/path\u003e\u003cpath d=\"M45.48,34.39,27.42,24a.7.7,0,0,0-1.05.6V45.43a.7.7,0,0,0,1.05.6L45.48,35.61A.7.7,0,0,0,45.48,34.39Z\" fill=\"#fff\"\u003e\u003c\/path\u003e\n              \u003c\/svg\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"kr-video-slide\"\u003e\n\u003cimg src=\"https:\/\/noaloo.com\/cdn\/shop\/files\/preview_images\/beb578327ffe4a958f890c2550c5bea2.thumbnail.0000000000.jpg?v=1764717326\u0026amp;width=300\" alt=\"\" srcset=\"\/\/noaloo.com\/cdn\/shop\/files\/preview_images\/beb578327ffe4a958f890c2550c5bea2.thumbnail.0000000000.jpg?v=1764717326\u0026amp;width=300 300w\" width=\"300\" height=\"533\" loading=\"lazy\"\u003e\n\u003cdiv class=\"kr-video-play-icon\"\u003e\u003csvg viewbox=\"0 0 70 70\"\u003e\n                \u003cg opacity=\"0.55\"\u003e\u003crect x=\"1\" y=\"1\" width=\"68\" height=\"68\" rx=\"34\"\u003e\u003c\/rect\u003e\u003c\/g\u003e\u003cpath d=\"M35,1A34,34,0,1,1,1,35,34,34,0,0,1,35,1m0-1h0A35,35,0,0,0,0,35H0A35,35,0,0,0,35,70h0A35,35,0,0,0,70,35h0A35,35,0,0,0,35,0Z\" fill=\"#fff\"\u003e\u003c\/path\u003e\u003cpath d=\"M45.48,34.39,27.42,24a.7.7,0,0,0-1.05.6V45.43a.7.7,0,0,0,1.05.6L45.48,35.61A.7.7,0,0,0,45.48,34.39Z\" fill=\"#fff\"\u003e\u003c\/path\u003e\n              \u003c\/svg\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cbutton class=\"kr-nav-button kr-nav-next\" id=\"next-azmtqdxbrmmz2mwnqavideotestimonialscustom\"\u003e \u003csvg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 50 50\"\u003e\n      \u003crect width=\"50\" height=\"50\" fill=\"#fff\" opacity=\"0\"\u003e\u003c\/rect\u003e\u003cpath d=\"M17.39,7.5A2.27,2.27,0,0,1,19,8.17L34.22,23.39a2.28,2.28,0,0,1,0,3.22L19,41.83a2.28,2.28,0,1,1-3.23-3.23L29.38,25,15.78,11.4a2.29,2.29,0,0,1,0-3.23A2.25,2.25,0,0,1,17.39,7.5Z\"\u003e\u003c\/path\u003e\n    \u003c\/svg\u003e \u003c\/button\u003e\n\u003c\/div\u003e\n\u003cscript\u003e\n  document.addEventListener('DOMContentLoaded', function() {\n    const carousel = document.getElementById('carousel-azmtqdxbrmmz2mwnqavideotestimonialscustom');\n    const prevBtn = document.getElementById('prev-azmtqdxbrmmz2mwnqavideotestimonialscustom');\n    const nextBtn = document.getElementById('next-azmtqdxbrmmz2mwnqavideotestimonialscustom');\n    const modal = document.getElementById('kr-video-modal-azmtqdxbrmmz2mwnqavideotestimonialscustom');\n\n    if (modal) {\n      document.body.appendChild(modal);\n    }\n\n    if (prevBtn \u0026\u0026 nextBtn \u0026\u0026 carousel) {\n      prevBtn.addEventListener('click', () =\u003e {\n        carousel.scrollBy({ left: -156, behavior: 'smooth' });\n      });\n      nextBtn.addEventListener('click', () =\u003e {\n        carousel.scrollBy({ left: 156, behavior: 'smooth' });\n      });\n    }\n  });\n\n  function openVideoModal_azmtqdxbrmmz2mwnqavideotestimonialscustom(videoUrl) {\n    const modal = document.getElementById('kr-video-modal-azmtqdxbrmmz2mwnqavideotestimonialscustom');\n    const videoPlayer = document.getElementById('kr-video-player-azmtqdxbrmmz2mwnqavideotestimonialscustom');\n    \n    if (modal \u0026\u0026 videoPlayer) {\n      videoPlayer.src = videoUrl;\n      modal.style.display = 'flex';\n      videoPlayer.play();\n    }\n  }\n\n  function closeVideoModal_azmtqdxbrmmz2mwnqavideotestimonialscustom() {\n    const modal = document.getElementById('kr-video-modal-azmtqdxbrmmz2mwnqavideotestimonialscustom');\n    const videoPlayer = document.getElementById('kr-video-player-azmtqdxbrmmz2mwnqavideotestimonialscustom');\n    \n    if (modal \u0026\u0026 videoPlayer) {\n      modal.style.display = 'none';\n      videoPlayer.pause();\n      videoPlayer.src = '';\n    }\n  }\n\u003c\/script\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n  .kr-video-modal {\n    display: none;\n    position: fixed;\n    z-index: 999999;\n    left: 0;\n    top: 0;\n    width: 100%;\n    height: 100%;\n    background-color: rgba(0,0,0,0.85);\n    align-items: center;\n    justify-content: center;\n  }\n  .kr-video-modal-content {\n    position: relative;\n    width: 90%;\n    max-width: 420px;\n    height: 85%;\n    max-height: 800px;\n    background: transparent;\n    border-radius: 16px;\n    overflow: hidden;\n  }\n  .kr-video-modal-content video {\n    width: 100%;\n    height: 100%;\n    object-fit: cover;\n    border-radius: 16px;\n  }\n  .kr-video-modal-close {\n    position: absolute;\n    top: 20px;\n    right: 20px;\n    color: #fff;\n    font-size: 24px;\n    cursor: pointer;\n    z-index: 9999999;\n    background: rgba(255,255,255,0.2);\n    width: 40px;\n    height: 40px;\n    border-radius: 8px;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    line-height: 1;\n    backdrop-filter: blur(5px);\n  }\n\u003c\/style\u003e\n\u003cdiv class=\"group-block\n    group-block--height-fit\n    group-block--width-fill\n    border-style\n    spacing-style\n    size-style\" style=\"--border-width: 1px; --border-style: none; --border-color: rgb(var(--color-border-rgb) \/ 1.0); --border-radius: 0px; --padding-block-start: 16px; --padding-block-end: 16px; --padding-inline-start: 12px; --padding-inline-end: 12px; --size-style-width: 100%; --size-style-height: fit; --size-style-width-mobile: 100%; --size-style-width-mobile-min: 5rem;\"\u003e\n\u003cdiv class=\"group-block-content\n      \n      layout-panel-flex\n      layout-panel-flex--column\" style=\"--flex-direction: column; --flex-wrap: nowrap; --flex-wrap-mobile: wrap; --gap: 12px;\"\u003e\n\u003cdiv id=\"shopify-block-AZmtqdXBrMmZ2MWNQa__video_testimonials_custom\" class=\"shopify-block\"\u003e\n\u003cdiv id=\"kr-video-modal-azmtqdxbrmmz2mwnqavideotestimonialscustom\" class=\"kr-video-modal\"\u003e\n\u003cspan class=\"kr-video-modal-close\"\u003e \u003csvg width=\"24\" height=\"24\" viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"\u003e\u003cline x1=\"18\" y1=\"6\" x2=\"6\" y2=\"18\"\u003e\u003c\/line\u003e\u003cline x1=\"6\" y1=\"6\" x2=\"18\" y2=\"18\"\u003e\u003c\/line\u003e\u003c\/svg\u003e \u003c\/span\u003e\n\u003cdiv class=\"kr-video-modal-content\"\u003e\u003cvideo id=\"kr-video-player-azmtqdxbrmmz2mwnqavideotestimonialscustom\" controls=\"controls\" autoplay=\"autoplay\" playsinline=\"\" loop=\"loop\"\u003e\u003c\/video\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"group-block\n    group-block--height-fit\n    group-block--width-fill\n    border-style\n    spacing-style\n    size-style\" style=\"--border-width: 1px; --border-style: none; --border-color: rgb(var(--color-border-rgb) \/ 1.0); --border-radius: 0px; --padding-block-start: 16px; --padding-block-end: 16px; --padding-inline-start: 12px; --padding-inline-end: 12px; --size-style-width: 100%; --size-style-height: fit; --size-style-width-mobile: 100%; --size-style-width-mobile-min: 5rem;\"\u003e\n\u003cdiv class=\"group-block-content\n      \n      layout-panel-flex\n      layout-panel-flex--column\" style=\"--flex-direction: column; --flex-wrap: nowrap; --flex-wrap-mobile: wrap; --gap: 12px;\"\u003e\n\u003cdiv id=\"shopify-block-AcnlDLzhkZEFSNVZQR__product_upsell_bundle\" class=\"shopify-block\"\u003e\n\u003cdiv class=\"product-info__block-item aml-upsell-block-acnldlzhkzefsnvzqrproductupsellbundle\"\u003e\n\u003cdiv class=\"product-list\"\u003e\n\u003cdiv class=\"kr-product-card-list-acnldlzhkzefsnvzqrproductupsellbundle\"\u003e\n\u003cdiv class=\"kr-product-card-info-acnldlzhkzefsnvzqrproductupsellbundle\"\u003e\n\u003cdiv class=\"kr-product-card-footer-acnldlzhkzefsnvzqrproductupsellbundle\"\u003e\n\u003cform class=\"kr-add-form-acnldlzhkzefsnvzqrproductupsellbundle\"\u003e\u003c\/form\u003e\n\u003cbr\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cscript type=\"module\"\u003e\n  let CartLinesUpdateEvent;\n  let morphSection;\n  let sectionRenderer;\n\n  try {\n    const events = await import('@shopify\/events');\n    CartLinesUpdateEvent = events.CartLinesUpdateEvent;\n  } catch (e) {\n    console.debug('StandardEvents not available', e);\n  }\n\n  try {\n    const renderer = await import('@theme\/section-renderer');\n    morphSection = renderer.morphSection;\n    sectionRenderer = renderer.sectionRenderer;\n  } catch (e) {\n    console.debug('SectionRenderer not available', e);\n  }\n\n  const container = document.querySelector('.aml-upsell-block-acnldlzhkzefsnvzqrproductupsellbundle');\n  if (container) {\n    container.querySelectorAll('form[data-upsell-form]').forEach(form =\u003e {\n      form.addEventListener('submit', async function(e) {\n        e.preventDefault();\n        const submitBtn = form.querySelector('button[type=\"submit\"]');\n        const btnText = form.querySelector('.kr-btn-text');\n        const variantIdInput = form.querySelector('input[name=\"id\"]');\n        const variantId = variantIdInput ? variantIdInput.value : null;\n\n        if (!variantId || submitBtn.disabled) return;\n\n        const originalText = btnText ? btnText.textContent : 'Add';\n        submitBtn.disabled = true;\n        if (btnText) btnText.textContent = '...';\n\n        try {\n          const cartItemComponents = document.querySelectorAll('cart-items-component');\n          const sectionIds = [];\n          cartItemComponents.forEach(comp =\u003e {\n            if (comp.dataset.sectionId) sectionIds.push(comp.dataset.sectionId);\n          });\n\n          let deferredPromise = null;\n          if (CartLinesUpdateEvent \u0026\u0026 typeof CartLinesUpdateEvent.createPromise === 'function') {\n            deferredPromise = CartLinesUpdateEvent.createPromise();\n            document.dispatchEvent(\n              new CartLinesUpdateEvent({\n                action: 'add',\n                context: 'product',\n                lines: [{ merchandiseId: String(variantId), quantity: 1 }],\n                promise: deferredPromise.promise\n              })\n            );\n          }\n\n          const formData = new FormData();\n          formData.append('id', variantId);\n          formData.append('quantity', '1');\n          if (sectionIds.length \u003e 0) {\n            formData.append('sections', sectionIds.join(','));\n            formData.append('sections_url', window.location.pathname);\n          }\n\n          const addUrl = window.Shopify?.routes?.root ? window.Shopify.routes.root + 'cart\/add.js' : '\/cart\/add.js';\n          const res = await fetch(addUrl, {\n            method: 'POST',\n            headers: {\n              'Accept': 'application\/json'\n            },\n            body: formData\n          });\n\n          const responseData = await res.json();\n\n          if (responseData.status \u0026\u0026 responseData.status \u003e= 400) {\n            throw new Error(responseData.description || responseData.message || 'Error adding to cart');\n          }\n\n          const cartUrl = window.Shopify?.routes?.root ? window.Shopify.routes.root + 'cart.js' : '\/cart.js';\n          const ajaxCart = await fetch(cartUrl).then(r =\u003e r.json());\n\n          if (deferredPromise) {\n            deferredPromise.resolve({\n              cart: CartLinesUpdateEvent.createCartFromAjaxResponse(ajaxCart),\n              detail: {\n                items: ajaxCart.items,\n                sections: responseData.sections,\n                didError: false\n              }\n            });\n          }\n\n          \/\/ Directly morph cart sections if returned in response\n          if (responseData.sections) {\n            cartItemComponents.forEach(comp =\u003e {\n              const html = responseData.sections[comp.dataset.sectionId];\n              if (html \u0026\u0026 typeof morphSection === 'function') {\n                morphSection(comp.dataset.sectionId, html, { mode: 'hydration' });\n              }\n            });\n          } else if (typeof sectionRenderer?.renderSection === 'function') {\n            cartItemComponents.forEach(comp =\u003e {\n              if (comp.dataset.sectionId) {\n                sectionRenderer.renderSection(comp.dataset.sectionId, { cache: false, mode: 'hydration' });\n              }\n            });\n          }\n\n          \/\/ Update header cart count badges\n          document.querySelectorAll('[data-cart-count], .cart-count, .header-actions__cart-count').forEach(el =\u003e {\n            el.textContent = ajaxCart.item_count;\n          });\n\n          \/\/ Open cart drawer\n          const drawer = document.querySelector('theme-drawer#cart-drawer');\n          if (drawer) {\n            if (typeof drawer.open === 'function') {\n              drawer.open();\n            } else {\n              drawer.setAttribute('open', '');\n              const dialog = drawer.querySelector('dialog');\n              if (dialog) {\n                dialog.setAttribute('open', '');\n                if (typeof dialog.showModal === 'function') {\n                  try { dialog.showModal(); } catch (err) {}\n                }\n              }\n            }\n          } else if (window.Shopify?.actions?.openCart) {\n            window.Shopify.actions.openCart();\n          }\n\n          if (btnText) btnText.textContent = 'Added ✓';\n          setTimeout(() =\u003e {\n            if (btnText) btnText.textContent = originalText;\n            submitBtn.disabled = false;\n          }, 1500);\n\n        } catch (err) {\n          console.error('Error adding upsell product to cart:', err);\n          if (btnText) btnText.textContent = 'Error';\n          setTimeout(() =\u003e {\n            if (btnText) btnText.textContent = originalText;\n            submitBtn.disabled = false;\n          }, 2000);\n        }\n      });\n    });\n  }\n\u003c\/script\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e","brand":"Mirelle London","offers":[{"title":"Black","offer_id":55045508301143,"sku":"SKU_1789594209626_351","price":49.95,"currency_code":"GBP","in_stock":true},{"title":"Brown","offer_id":55045508333911,"sku":"SKU_1789594209626_352","price":49.95,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1021\/9110\/4343\/files\/1_51026626-884f-4e6e-aa86-e77aeb2ca2b3.webp?v=1789597403","url":"https:\/\/mirelle-london.com\/products\/samantha-tote-bag","provider":"Mirelle London","version":"1.0","type":"link"}