1<!doctype html> 2<html class="no-js" lang="en"> 3 <head> 4 <meta charset="utf-8"> 5 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 6 <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=3.0, user-scalable=yes"> 7 <meta name="theme-color" content="#63A36E"> 8 <link rel="canonical" href="https://dharishahayurveda.com/cart"><link rel="preconnect" href="https://cdn.shopify.com" crossorigin> 9 <link rel="preconnect" href="https://www.googletagmanager.com" crossorigin> 10 <link rel="preconnect" href="https://shipway.in" crossorigin> 11 <link rel="preconnect" href="https://fastrr-boost-ui.pickrr.com" crossorigin><link rel="icon" type="image/png" href="//dharishahayurveda.com/cdn/shop/files/favicon.jpg?crop=center&height=32&v=1711978829&width=32">
11<script type="application/javascript"> 12checkoutBuyer = "https://fastrr-boost-ui.pickrr.com/"; 13</script>
13 14<input type="hidden" value="dharishahayurveda.com" id="sellerDomain"/> 15<link rel="stylesheet" href="https://fastrr-boost-ui.pickrr.com/assets/styles/shopify.css">
16<script src="https://fastrr-boost-ui.pickrr.com/assets/js/channels/shopify.js" defer></script>
vendor: 2 bytes, line 16
16
17<script src="https://fastrr-boost-ui.pickrr.com/assets/js/channels/shiprocketMarketing.js"></script>
17 18<input type="hidden" value="rz" id="template"/> 19<!-- <input type="hidden" value="percent" id="discountType"/> 20<input type="hidden" value="5" id="discValue"/> --> 21<style> 22 .sr-headless-checkout { 23 font-family: inherit; 24 font-size: 16px !important; 25 font-weight: 700; 26 border-radius: 10px; 27 height: 54px; 28 letter-spacing: 1px; 29 background-color:rgb(0, 140, 68) ; 30 } 31 .shiprocket-headless[data-type="product"] .sr-headless-checkout{ 32 margin-top:10px !important; 33 font-size: 16px !important; 34 } 35 .shiprocket-headless[data-type="mini-cart"] .sr-headless-checkout{ 36 border-radius:0px !important; 37 background-color:rgb(6, 38, 1) !important; 38 } 39 .shiprocket-headless[data-type="mini-cart"]{ 40 width:100% !important; 41 } 42 button[name="flo-buy-now-btn"]{ 43 display:none !important; 44 } 45 #flo-buy-now-btn{ 46 display:none !important; 47 } 48 .shiprocket-headles{ 49 width:100% !important; 50 } 51/* .sr-discount-label{ 52 font-size:0px !important; 53} 54 .sr-discount-label:before{ 55 content:"EXTRA 5% OFF on PERFUMES"; 56 font-size: 9px; 57 color: #000; 58 text-transform: none; 59 top: -8px; 60 left: 6px; 61 background-color: #53FF73; 62 border-radius: 3px; 63 padding: 0 10px; 64} */ 65</style> 66 67<link rel="preconnect" href="https://fonts.shopifycdn.com" crossorigin><!-- Google Tag Manager (B2 reverted 2026-05-02: defer caused homepage desktop CLS to spike from 0.02 to 0.80, both 'requestIdleCallback' AND 'DOMContentLoaded' variants. A GTM tag injects an above-fold element that shifts layout when it fires post-render. Reverting to sync GTM until B6 tag-drop audit identifies + neutralizes the offending tag. Sync GTM costs ~700ms TBT but keeps CLS clean.) --> 68
68<script>
vendor: 343 bytes, lines 68-72
68(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 69 new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 70 j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 71 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 72 })(window,document,'script','dataLayer','
72GTM-K8PPHSH
vendor: 3 bytes, line 72
72');
72</script>
72 73 <!-- End Google Tag Manager --> 74 75 <title> 76 Your Shopping Cart 77 – Dharishah Ayurveda</title> 78 79 80 81 82 83 <meta property="og:site_name" content="Dharishah Ayurveda"> 84<meta property="og:url" content="https://dharishahayurveda.com/cart"> 85<meta property="og:title" content="Your Shopping Cart"> 86<meta property="og:type" content="website"> 87<meta property="og:description" content="Dharishah Ayurveda offers premium Ayurvedic medicines online, backed by 135+ years of expertise in crafting natural and effective health remedies. Buy now!"><meta property="og:image" content="http://dharishahayurveda.com/cdn/shop/files/SCR-20260514-jq4.jpg?v=1778748146"> 88 <meta property="og:image:secure_url" content="https://dharishahayurveda.com/cdn/shop/files/SCR-20260514-jq4.jpg?v=1778748146"> 89 <meta property="og:image:width" content="2458"> 90 <meta property="og:image:height" content="1396"> 91 <meta property="og:image:alt" content="Your Shopping Cart"><meta name="twitter:card" content="summary_large_image"> 92<meta name="twitter:title" content="Your Shopping Cart"> 93<meta name="twitter:description" content="Dharishah Ayurveda offers premium Ayurvedic medicines online, backed by 135+ years of expertise in crafting natural and effective health remedies. Buy now!"><meta name="twitter:image" content="https://dharishahayurveda.com/cdn/shop/files/SCR-20260514-jq4.jpg?v=1778748146"> 94 <meta name="twitter:image:alt" content="Your Shopping Cart">
95<script src="//dharishahayurveda.com/cdn/shop/t/94/assets/constants.js?v=58251544750838685771786373485" defer="defer"></script>
95 96
96<script src="//dharishahayurveda.com/cdn/shop/t/94/assets/pubsub.js?v=158357773527763999511786373485" defer="defer"></script>
96 97
97<script src="//dharishahayurveda.com/cdn/shop/t/94/assets/global.js?v=27951988145631551981786373485" defer="defer"></script>
97<script src="//dharishahayurveda.com/cdn/shop/t/94/assets/c-slider.js?v=43128307626135541541786373487" defer="defer"></script>
97 98
98<script src="//dharishahayurveda.com/cdn/shop/t/94/assets/c-modal.js?v=48764162643111355341786373487" defer="defer"></script>
98 99
99<script src="//dharishahayurveda.com/cdn/shop/t/94/assets/c-tabs.js?v=100424048149587637061786373487" defer="defer"></script>
99 100
100<script src="//dharishahayurveda.com/cdn/shop/t/94/assets/swatch-active.js?v=76063234590686326271786373485" defer="defer"></script>
100 101
101<script src="//dharishahayurveda.com/cdn/shop/t/94/assets/c-disclosure.js?v=184136543624059014781786373487" defer="defer"></script>
101 102 <link href="//dharishahayurveda.com/cdn/shop/t/94/assets/c-slider.css?v=149469563648474836391786373487" rel="stylesheet" type="text/css" media="all" />
103<script src="//dharishahayurveda.com/cdn/shop/t/94/assets/custom.js?v=130767639258146345211786373485" defer="defer"></script>
103 104
104<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
104<meta name="google-site-verification" content="GKxG2AeRv0Gp4t8oOMb6BiPHb1wnm4a764wMA-slltQ"> 105<meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/61930078368/digital_wallets/dialog"> 106<link rel="ucp" href="/.well-known/ucp" version="2026-08-25"><link rel="alternate" hreflang="x-default" href="https://dharishahayurveda.com/cart"> 107<link rel="alternate" hreflang="en" href="https://dharishahayurveda.com/cart"> 108<link rel="alternate" hreflang="hi" href="https://dharishahayurveda.com/hi/cart"> 109<link rel="alternate" hreflang="kn" href="https://dharishahayurveda.com/kn/cart"> 110<link rel="alternate" hreflang="ta" href="https://dharishahayurveda.com/ta/cart">
111<script async="async" src="/checkouts/internal/preloads.js?locale=en-IN"></script>
vendor: 1 bytes, line 111
111
112<script id="shopify-features" type="application/json">{"accessToken":"86e0e9f8a222c59665d6d053363f2a80","betas":["rich-media-storefront-analytics"],"domain":"dharishahayurveda.com","predictiveSearch":true,"shopId":61930078368,"locale":"en"}</script>
vendor: 1 bytes, line 112
112
113<script>var Shopify = Shopify || {}; 114Shopify.shop = "dff598-2.myshopify.com"; 115Shopify.locale = "en"; 116Shopify.currency = {"active":"INR","rate":"1.0"}; 117Shopify.country = "IN"; 118Shopify.theme = {"name":"Tamil PDP 2026-08-10","id":198608453792,"schema_name":"Dawn","schema_version":"11.0.0","theme_store_id":null,"role":"main"}; 119Shopify.theme.handle = "null"; 120Shopify.theme.style = {"id":null,"handle":null}; 121Shopify.cdnHost = "dharishahayurveda.com/cdn"; 122Shopify.routes = Shopify.routes || {}; 123Shopify.routes.root = "/"; 124Shopify.shopJsCdnBaseUrl = "https://cdn.shopify.com/shopifycloud/shop-js"; 125Shopify.SignInWithShop = Shopify.SignInWithShop || {}; 126Shopify.SignInWithShop.User = Shopify.SignInWithShop.User || {}; 127Shopify.SignInWithShop.User.recognized = false;</script>
vendor: 1 bytes, line 127
127
128<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
vendor: 1 bytes, line 128
128
129<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 129
129
130<script> 131 window.Shopify = window.Shopify || {}; 132 window.Shopify.SignInWithShop = window.Shopify.SignInWithShop || {}; 133 window.Shopify.SignInWithShop.assetMetrics = { sampleRate: 0.25 }; 134 window.Shopify.SignInWithShop.eligible = true; 135</script>
vendor: 1 bytes, line 135
135
136<script id="shop-js-analytics" type="application/json">{"pageType":"cart"}</script>
vendor: 1 bytes, line 136
136
137<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 137
137
138<script type="module"> 139 await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js"); 140 141 window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true}); 142 143</script>
vendor: 1 bytes, line 143
143
144<script> 145 window.Shopify = window.Shopify || {}; 146 if (!window.Shopify.featureAssets) window.Shopify.featureAssets = {}; 147 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"]}; 148</script>
vendor: 1 bytes, line 148
148
149<script id="__st">var __st={"a":61930078368,"offset":19800,"reqid":"61a5782e-7f3c-4eb5-8df7-946c6b7aa577-1791480652","pageurl":"dharishahayurveda.com\/cart","u":"558cf57fddcb","p":"cart"};</script>
vendor: 1 bytes, line 149
149
150<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
vendor: 1 bytes, line 150
150
151<script id="form-persister">!function(){'use strict';const t='contact',e='new_comment',n=[[t,t],['blogs',e],['comments',e],[t,'customer']],o='password',r='form_key',c=['recaptcha-v3-token','g-recaptcha-response','h-captcha-response',o],s=()=>{try{return window.sessionStorage}catch{return}},i='__shopify_v',u=t=>t.elements[r],a=function(){const t=[...n].map((([t,e])=>`form[action*='/${t}']:not([data-nocaptcha='true']) input[name='form_type'][value='${e}']`)).join(',');var e;return e=t,()=>e?[...document.querySelectorAll(e)].map((t=>t.form)):[]}();function m(t){const e=u(t);a().includes(t)&&(!e||!e.value)&&function(t){try{if(!s())return;!function(t){const e=s();if(!e)return;const n=u(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){u(t)||t.append(Object.assign(document.createElement('input'),{type:'hidden',name:r})),t.elements[r].value=e}(t,e),function(t,e){const n=s();if(!n)return;const r=[...t.querySelectorAll(`input[type='${o}']`)].map((({name:t})=>t)),u=[...c,...r],a={};for(const[o,c]of new FormData(t).entries())u.includes(o)||(a[o]=c);n.setItem(e,JSON.stringify({[i]:1,action:t.action,data:a}))}(t,e)}catch(e){console.error('failed to persist form',e)}}(t)}const f=t=>{if('true'===t.dataset.persistBound)return;const e=function(t,e){const n=function(t){return'function'==typeof t.submit?t.submit:HTMLFormElement.prototype.submit}(t).bind(t);return function(){let t;return()=>{t||(t=!0,(()=>{try{e(),n()}catch(t){(t=>{console.error('form submit failed',t)})(t)}})(),setTimeout((()=>t=!1),250))}}()}(t,(()=>{m(t)}));!function(t,e){if('function'==typeof t.submit&&'function'==typeof e)try{t.submit=e}catch{}}(t,e),t.addEventListener('submit',(t=>{t.preventDefault(),e()})),t.dataset.persistBound='true'};!function(){function t(t){const e=(t=>{const e=t.target;return e instanceof HTMLFormElement?e:e&&e.form})(t);e&&m(e)}document.addEventListener('submit',t),document.addEventListener('DOMContentLoaded',(()=>{const e=a();for(const t of e)f(t);var n;n=document.body,new window.MutationObserver((t=>{for(const e of t)if('childList'===e.type&&e.addedNodes.length)for(const t of e.addedNodes)1===t.nodeType&&'FORM'===t.tagName&&a().includes(t)&&f(t)})).observe(n,{childList:!0,subtree:!0,attributes:!1}),document.removeEventListener('submit',t)}))}()}();</script>
vendor: 1 bytes, line 151
151
152<script integrity="sha256-JjoPp5ZfB1sSAs5SQaol1x1GgvveM+BgmRzyDexInEQ=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//dharishahayurveda.com/cdn/shopifycloud/storefront/assets/storefront/load_feature-1bd60354.js" crossorigin="anonymous"></script>
vendor: 1 bytes, line 152
152
153<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 = "//dharishahayurveda.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>
153<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 153
153
154<script> 155 window.Shopify = window.Shopify || {}; 156 window.Shopify.MCP = window.Shopify.MCP || {}; 157 window.Shopify.MCP.enabled = true; 158 window.Shopify.MCP.shop = "dff598-2.myshopify.com"; 159 window.Shopify.MCP.mcpEndpoint = "https:\/\/dharishahayurveda.com\/api\/mcp"; 160 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"]}}]; 161</script>
vendor: 1 bytes, line 161
161
162<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("\/\/dharishahayurveda.com\/cdn\/shopifycloud\/storefront\/assets\/storefront\/webmcp-c6b62ece.js","sha256-ke4DDuBjdvea3vxLWxHc9E9nq8zihuG4IfYEGbb77ys=");})(); 163</script>
vendor: 1 bytes, line 163
163
164<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://dharishahayurveda.com/cdn/shopifycloud/portable-wallets/latest/portable-wallets.en.js",t.type="module",document.head.appendChild(t)}}; 165</script>
vendor: 1 bytes, line 165
165
166<script data-source-attribution="shopify.dynamic_checkout.buyer_consent"> 167 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); 168</script>
vendor: 1 bytes, line 168
168
169<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})}})); 170</script>
vendor: 1 bytes, line 170
170
171<script id="sections-script" data-sections="header" defer="defer" src="//dharishahayurveda.com/cdn/shop/t/94/compiled_assets/scripts.js?v=184325197989695213571786373494"></script>
vendor: 1 bytes, line 171
171
172<script id="shopify-cfh-end">window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
172 173
174<script> 175</script>
175 176 177 <style data-shopify> 178 @font-face { 179 font-family: Inter; 180 font-weight: 400; 181 font-style: normal; 182 font-display: swap; 183 src: url("//dharishahayurveda.com/cdn/fonts/inter/inter_n4.b2a3f24c19b4de56e8871f609e73ca7f6d2e2bb9.woff2") format("woff2"), 184 url("//dharishahayurveda.com/cdn/fonts/inter/inter_n4.af8052d517e0c9ffac7b814872cecc27ae1fa132.woff") format("woff"); 185} 186 187 @font-face { 188 font-family: Inter; 189 font-weight: 700; 190 font-style: normal; 191 font-display: swap; 192 src: url("//dharishahayurveda.com/cdn/fonts/inter/inter_n7.02711e6b374660cfc7915d1afc1c204e633421e4.woff2") format("woff2"), 193 url("//dharishahayurveda.com/cdn/fonts/inter/inter_n7.6dab87426f6b8813070abd79972ceaf2f8d3b012.woff") format("woff"); 194} 195 196 @font-face { 197 font-family: Inter; 198 font-weight: 400; 199 font-style: italic; 200 font-display: swap; 201 src: url("//dharishahayurveda.com/cdn/fonts/inter/inter_i4.feae1981dda792ab80d117249d9c7e0f1017e5b3.woff2") format("woff2"), 202 url("//dharishahayurveda.com/cdn/fonts/inter/inter_i4.62773b7113d5e5f02c71486623cf828884c85c6e.woff") format("woff"); 203} 204 205 @font-face { 206 font-family: Inter; 207 font-weight: 700; 208 font-style: italic; 209 font-display: swap; 210 src: url("//dharishahayurveda.com/cdn/fonts/inter/inter_i7.b377bcd4cc0f160622a22d638ae7e2cd9b86ea4c.woff2") format("woff2"), 211 url("//dharishahayurveda.com/cdn/fonts/inter/inter_i7.7c69a6a34e3bb44fcf6f975857e13b9a9b25beb4.woff") format("woff"); 212} 213 214 @font-face { 215 font-family: "Nunito Sans"; 216 font-weight: 400; 217 font-style: normal; 218 font-display: swap; 219 src: url("//dharishahayurveda.com/cdn/fonts/nunito_sans/nunitosans_n4.0276fe080df0ca4e6a22d9cb55aed3ed5ba6b1da.woff2") format("woff2"), 220 url("//dharishahayurveda.com/cdn/fonts/nunito_sans/nunitosans_n4.b4964bee2f5e7fd9c3826447e73afe2baad607b7.woff") format("woff"); 221} 222 223 224 @font-face { font-family: Tienne; src: url('//dharishahayurveda.com/cdn/shop/t/94/assets/Tienne-Regular.woff2?v=63612657719247608411786373487') format('woff2'); font-weight: 400; font-style: normal; font-display: swap; } 225 @font-face { font-family: Tienne; src: url('//dharishahayurveda.com/cdn/shop/t/94/assets/Tienne-Bold.woff2?v=157087659940977993371786373486') format('woff2'); font-weight: 700; font-style: normal; font-display: swap; } 226 @font-face { font-family: Tienne; src: url('//dharishahayurveda.com/cdn/shop/t/94/assets/Tienne-Black.woff2?v=59227169890503241771786373486') format('woff2'); font-weight: 900; font-style: normal; font-display: swap; } 227 228 229 :root, 230 .color-background-1 { 231 --color-background: 254,250,244; 232 233 --gradient-background: #fefaf4; 234 235 --color-foreground: 18,18,18; 236 --color-shadow: 18,18,18; 237 --color-button: 14,35,4; 238 --color-button-text: 254,250,244; 239 --color-secondary-button: 254,250,244; 240 --color-secondary-button-text: 18,18,18; 241 --color-link: 18,18,18; 242 --color-badge-foreground: 18,18,18; 243 --color-badge-background: 254,250,244; 244 --color-badge-border: 18,18,18; 245 --payment-terms-background-color: rgb(254 250 244); 246 } 247 248 249 .color-background-2 { 250 --color-background: 243,243,243; 251 252 --gradient-background: #f3f3f3; 253 254 --color-foreground: 18,18,18; 255 --color-shadow: 18,18,18; 256 --color-button: 18,18,18; 257 --color-button-text: 243,243,243; 258 --color-secondary-button: 243,243,243; 259 --color-secondary-button-text: 18,18,18; 260 --color-link: 18,18,18; 261 --color-badge-foreground: 18,18,18; 262 --color-badge-background: 243,243,243; 263 --color-badge-border: 18,18,18; 264 --payment-terms-background-color: rgb(243 243 243); 265 } 266 267 268 .color-inverse { 269 --color-background: 36,40,51; 270 271 --gradient-background: #242833; 272 273 --color-foreground: 255,255,255; 274 --color-shadow: 18,18,18; 275 --color-button: 95,165,114; 276 --color-button-text: 0,0,0; 277 --color-secondary-button: 36,40,51; 278 --color-secondary-button-text: 255,255,255; 279 --color-link: 255,255,255; 280 --color-badge-foreground: 255,255,255;
281 --color-badge-background: 36,40,51; 282 --color-badge-border: 255,255,255; 283 --payment-terms-background-color: rgb(36 40 51); 284 } 285 286 287 .color-accent-1 { 288 --color-background: 18,18,18; 289 290 --gradient-background: #121212; 291 292 --color-foreground: 255,255,255; 293 --color-shadow: 18,18,18; 294 --color-button: 255,255,255; 295 --color-button-text: 18,18,18; 296 --color-secondary-button: 18,18,18; 297 --color-secondary-button-text: 255,255,255; 298 --color-link: 255,255,255; 299 --color-badge-foreground: 255,255,255; 300 --color-badge-background: 18,18,18; 301 --color-badge-border: 255,255,255; 302 --payment-terms-background-color: rgb(18 18 18); 303 } 304 305 306 .color-accent-2 { 307 --color-background: 5,36,0; 308 309 --gradient-background: #052400; 310 311 --color-foreground: 255,255,255; 312 --color-shadow: 18,18,18; 313 --color-button: 255,255,255; 314 --color-button-text: 5,36,0; 315 --color-secondary-button: 5,36,0; 316 --color-secondary-button-text: 255,255,255; 317 --color-link: 255,255,255; 318 --color-badge-foreground: 255,255,255; 319 --color-badge-background: 5,36,0; 320 --color-badge-border: 255,255,255; 321 --payment-terms-background-color: rgb(5 36 0); 322 } 323 324 325 .color-scheme-ce50ccc9-4c79-405e-ab57-f084ba013c15 { 326 --color-background: 95,165,114; 327 328 --gradient-background: #5fa572; 329 330 --color-foreground: 255,251,247; 331 --color-shadow: 18,18,18; 332 --color-button: 18,18,18; 333 --color-button-text: 255,255,255; 334 --color-secondary-button: 95,165,114; 335 --color-secondary-button-text: 18,18,18; 336 --color-link: 18,18,18; 337 --color-badge-foreground: 255,251,247; 338 --color-badge-background: 95,165,114; 339 --color-badge-border: 255,251,247; 340 --payment-terms-background-color: rgb(95 165 114); 341 } 342 343 344 body, .color-background-1, .color-background-2, .color-inverse, .color-accent-1, .color-accent-2, .color-scheme-ce50ccc9-4c79-405e-ab57-f084ba013c15 { 345 color: rgba(var(--color-foreground), 0.75); 346 background-color: rgb(var(--color-background)); 347 } 348 349 :root { 350 --font-body-family: Inter, sans-serif; 351 --font-body-style: normal; 352 --font-body-weight: 400; 353 --font-body-weight-bold: 700; 354 355 --font-heading-family: Tienne, "Nunito Sans", sans-serif; 356 --font-heading-style: normal; 357 --font-heading-weight: 400; 358 359 --font-body-scale: 1.0; 360 --font-heading-scale: 1.0; 361 362 --media-padding: px; 363 --media-border-opacity: 0.05; 364 --media-border-width: 1px; 365 --media-radius: 0px; 366 --media-shadow-opacity: 0.0; 367 --media-shadow-horizontal-offset: 0px; 368 --media-shadow-vertical-offset: 4px; 369 --media-shadow-blur-radius: 5px; 370 --media-shadow-visible: 0; 371 372 --page-width: 160rem; 373 --page-width-margin: 0rem; 374 375 --product-card-image-padding: 0.0rem; 376 --product-card-corner-radius: 0.0rem; 377 --product-card-text-alignment: left; 378 --product-card-border-width: 0.0rem; 379 --product-card-border-opacity: 0.1; 380 --product-card-shadow-opacity: 0.0; 381 --product-card-shadow-visible: 0; 382 --product-card-shadow-horizontal-offset: 0.0rem; 383 --product-card-shadow-vertical-offset: 0.4rem; 384 --product-card-shadow-blur-radius: 0.5rem; 385 386 --collection-card-image-padding: 0.0rem; 387 --collection-card-corner-radius: 0.0rem; 388 --collection-card-text-alignment: left; 389 --collection-card-border-width: 0.0rem; 390 --collection-card-border-opacity: 0.1; 391 --collection-card-shadow-opacity: 0.0; 392 --collection-card-shadow-visible: 0; 393 --collection-card-shadow-horizontal-offset: 0.0rem; 394 --collection-card-shadow-vertical-offset: 0.4rem; 395 --collection-card-shadow-blur-radius: 0.5rem; 396 397 --blog-card-image-padding: 0.0rem; 398 --blog-card-corner-radius: 0.0rem; 399 --blog-card-text-alignment: left; 400 --blog-card-border-width: 0.0rem; 401 --blog-card-border-opacity: 0.1; 402 --blog-card-shadow-opacity: 0.0; 403 --blog-card-shadow-visible: 0; 404 --blog-card-shadow-horizontal-offset: 0.0rem; 405 --blog-card-shadow-vertical-offset: 0.4rem; 406 --blog-card-shadow-blur-radius: 0.5rem; 407 408 --badge-corner-radius: 4.0rem; 409 410 --popup-border-width: 1px; 411 --popup-border-opacity: 0.1; 412 --popup-corner-radius: 0px; 413 --popup-shadow-opacity: 0.05; 414 --popup-shadow-horizontal-offset: 0px; 415 --popup-shadow-vertical-offset: 4px; 416 --popup-shadow-blur-radius: 5px; 417 418 --drawer-border-width: 1px; 419 --drawer-border-opacity: 0.1; 420 --drawer-shadow-opacity: 0.0; 421 --drawer-shadow-horizontal-offset: 0px; 422 --drawer-shadow-vertical-offset: 4px; 423 --drawer-shadow-blur-radius: 5px; 424 425 --spacing-sections-desktop: 0px; 426 --spacing-sections-mobile: 0px; 427 428 --grid-desktop-vertical-spacing: 20px; 429 --grid-desktop-horizontal-spacing: 20px; 430 --grid-mobile-vertical-spacing: 10px; 431 --grid-mobile-horizontal-spacing: 10px; 432 433 --text-boxes-border-opacity: 0.1; 434 --text-boxes-border-width: 0px; 435 --text-boxes-radius: 0px; 436 --text-boxes-shadow-opacity: 0.0; 437 --text-boxes-shadow-visible: 0; 438 --text-boxes-shadow-horizontal-offset: 0px; 439 --text-boxes-shadow-vertical-offset: 4px; 440 --text-boxes-shadow-blur-radius: 5px; 441 442 --buttons-radius: 0px; 443 --buttons-radius-outset: 0px; 444 --buttons-border-width: 1px; 445 --buttons-border-opacity: 1.0; 446 --buttons-shadow-opacity: 0.0; 447 --buttons-shadow-visible: 0; 448 --buttons-shadow-horizontal-offset: 0px; 449 --buttons-shadow-vertical-offset: 4px; 450 --buttons-shadow-blur-radius: 5px; 451 --buttons-border-offset: 0px; 452 453 --inputs-radius: 0px; 454 --inputs-border-width: 1px; 455 --inputs-border-opacity: 0.55; 456 --inputs-shadow-opacity: 0.0; 457 --inputs-shadow-horizontal-offset: 0px; 458 --inputs-margin-offset: 0px; 459 --inputs-shadow-vertical-offset: 4px; 460 --inputs-shadow-blur-radius: 5px; 461 --inputs-radius-outset: 0px; 462 463 --variant-pills-radius: 40px; 464 --variant-pills-border-width: 1px; 465 --variant-pills-border-opacity: 0.55; 466 --variant-pills-shadow-opacity: 0.0; 467 --variant-pills-shadow-horizontal-offset: 0px; 468 --variant-pills-shadow-vertical-offset: 4px; 469 --variant-pills-shadow-blur-radius: 5px; 470 } 471 472 *, 473 *::before, 474 *::after { 475 box-sizing: inherit; 476 } 477 478 html { 479 box-sizing: border-box; 480 font-size: calc(var(--font-body-scale) * 62.5%); 481 height: 100%; 482 } 483 484 body { 485 display: grid; 486 grid-template-rows: auto auto 1fr auto; 487 grid-template-columns: 100%; 488 min-height: 100%; 489 margin: 0; 490 font-size: 1.5rem; 491 letter-spacing: 0.06rem; 492 line-height: calc(1 + 0.8 / var(--font-body-scale)); 493 font-family: var(--font-body-family); 494 font-style: var(--font-body-style); 495 font-weight: var(--font-body-weight); 496 } 497 498 @media screen and (min-width: 750px) { 499 body { 500 font-size: 1.6rem; 501 } 502 } 503 504 /* T1.1 â defer paint of below-fold PDP sections. Targets every Shopify-section sibling after the first one inside <main>, scoped to product templates only. The first section (main-product info, ATC) renders normally; everything below (related products, reviews, FAQ, video testimonials, image banners) gets content-visibility:auto so the browser only paints them when they're scrolled into view. Stops late-paint elements from being claimed as LCP candidates by Lighthouse's allFrames LCP measurement, and frees main-thread budget during the LCP window. contain-intrinsic-size reserves a placeholder height to prevent CLS on first scroll-down. */ 505 body[class*="template-product"] #MainContent > .shopify-section:not(:first-child) { 506 content-visibility: auto; 507 contain-intrinsic-size: auto 800px; 508 } 509 </style> 510<link rel="preload" as="font" type="font/woff2" href="//dharishahayurveda.com/cdn/shop/t/94/assets/Tienne-Regular.woff2?v=63612657719247608411786373487" crossorigin> 511 <link rel="preload" as="font" type="font/woff2" href="//dharishahayurveda.com/cdn/shop/t/94/assets/Tienne-Bold.woff2?v=157087659940977993371786373486" crossorigin> 512 <link rel="preload" as="font" type="font/woff2" href="//dharishahayurveda.com/cdn/shop/t/94/assets/Tienne-Black.woff2?v=59227169890503241771786373486" crossorigin><link href="//dharishahayurveda.com/cdn/shop/t/94/assets/base.css?v=45758859921378670301786373487" rel="stylesheet" type="text/css" media="all" /> 513<link href="//dharishahayurveda.com/cdn/shop/t/94/assets/custom.css?v=7478512573042021981786373485" rel="stylesheet" type="text/css" media="all" /> 514 515 <link rel="preload" href="//dharishahayurveda.com/cdn/shop/t/94/assets/product.css?v=115482884230548049661786373485" as="style" onload="this.onload=null;this.rel='stylesheet';"> 516<noscript><link rel="stylesheet" href="//dharishahayurveda.com/cdn/shop/t/94/assets/product.css?v=115482884230548049661786373485"></noscript> 517 518 519 520<link rel="preload" href="//dharishahayurveda.com/cdn/shop/t/94/assets/new_collection.css?v=50071479433083598331786373485" as="style" onload="this.onload=null;this.rel='stylesheet';"> 521<noscript><link rel="stylesheet" href="//dharishahayurveda.com/cdn/shop/t/94/assets/new_collection.css?v=50071479433083598331786373485"></noscript><link rel="preload" as="font" href="//dharishahayurveda.com/cdn/fonts/inter/inter_n4.b2a3f24c19b4de56e8871f609e73ca7f6d2e2bb9.woff2" type="font/woff2" crossorigin><link rel="preload" as="font" href="//dharishahayurveda.com/cdn/fonts/nunito_sans/nu
521nitosans_n4.0276fe080df0ca4e6a22d9cb55aed3ed5ba6b1da.woff2" type="font/woff2" crossorigin><link href="//dharishahayurveda.com/cdn/shop/t/94/assets/component-localization-form.css?v=58635374666099146901786373484" rel="stylesheet" type="text/css" media="all" /> 522
522<script src="//dharishahayurveda.com/cdn/shop/t/94/assets/localization-form.js?v=161644695336821385561786373485" defer="defer"></script>
522<link 523 rel="stylesheet" 524 href="//dharishahayurveda.com/cdn/shop/t/94/assets/component-predictive-search.css?v=101390491953259533391786373485" 525 media="print" 526 onload="this.media='all'" 527 >
527<script> 528 document.documentElement.className = document.documentElement.className.replace('no-js', 'js'); 529 if (Shopify.designMode) { 530 document.documentElement.classList.add('shopify-design-mode'); 531 } 532 </script>
532 533 534<!-- BEGIN app block: shopify://apps/judge-me-reviews/blocks/judgeme_core/61ccd3b1-a9f2-4160-9fe9-4fec8413e5d8 --><!-- Start of Judge.me Core --> 535 536 537 538 539 540 541 542<link rel="dns-prefetch" href="https://cdn.judge.me"> 543<link rel="dns-prefetch" href="https://cdn1.judge.me"> 544<link rel="dns-prefetch" href="https://api.judge.me"> 545
546<script data-cfasync='false' class='jdgm-settings-script'>window.jdgmSettings={"pagination":5,"disable_web_reviews":false,"badge_no_review_text":"No reviews","badge_n_reviews_text":"{{ n }} review/reviews","badge_star_color":"#5FA572","hide_badge_preview_if_no_reviews":false,"badge_hide_text":false,"enforce_center_preview_badge":false,"widget_title":"Customer Reviews","widget_open_form_text":"Write a review","widget_close_form_text":"Cancel review","widget_refresh_page_text":"Refresh page","widget_summary_text":"Based on {{ number_of_reviews }} review/reviews","widget_no_review_text":"Be the first to write a review","widget_name_field_text":"Display name","widget_verified_name_field_text":"Verified Name (public)","widget_name_placeholder_text":"Display name","widget_required_field_error_text":"This field is required.","widget_email_field_text":"Email address","widget_verified_email_field_text":"Verified Email (private, can not be edited)","widget_email_placeholder_text":"Your email address","widget_email_field_error_text":"Please enter a valid email address.","widget_rating_field_text":"Rating","widget_review_title_field_text":"Review Title","widget_review_title_placeholder_text":"Give your review a title","widget_review_body_field_text":"Review content","widget_review_body_placeholder_text":"Start writing here...","widget_pictures_field_text":"Picture/Video (optional)","widget_submit_review_text":"Submit Review","widget_submit_verified_review_text":"Submit Verified Review","widget_submit_success_msg_with_auto_publish":"Thank y
546ou! 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":"","widget_rating_filter_color":"#fbcd0a","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":"#FBA90A","verified_badge_text":"Verified","verified_badge_bg_color":"","verified_badge_text_color":"","verified_badge_placement":"left-of-reviewer-name","widget_review_max_height":"","widget_hide_border":false,"widget_social_share":false,"widget_thumb":false,"widget_review_location_show":false,"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":"default","review_date_format":"dd/mm/yyyy","default_sort_method":"most-recent","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_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_other_languages_heading":"Reviews in Other Languages","widget_translate_review_text":"Translate review to {{ language }}","widget_translating_review_text":"Translating...","widget_show_original_translation_text":"Show original ({{ language }})","widget_translate_review_failed_text":"Review couldn't be translated.","widget_translate_review_retry_text":"Retry","widget_translate_review_try_again_later_text":"Try again later","show_product_url_for_grouped_product":false,"widget_sorting_pictures_first_text":"Pictures First","show_pictures_on_all_rev_page_mobile":false,"show_pictures_on_all_rev_page_desktop":false,"floating_tab_hide_mobile_install_preference":false,"floating_tab_button_name":"â
Reviews","floating_tab_title":"Let customers speak for us","floating_tab_button_color":"","floating_tab_button_background_color":"","floating_tab_url":"","floating_tab_url_enabled":false,"floating_tab_tab_style":"text","all_reviews_text_badge_text":"Customers rate us {{ shop.metafields.judgeme.all_reviews_rating | round: 1 }}/5 based on {{ shop.metafields.judgeme.all_reviews_count }} reviews.","all_reviews_text_badge_text_branded_style":"{{ shop.metafields.judgeme.all_reviews_rating | round: 1 }} out of 5 stars based on {{ shop.metafields.judgeme.all_reviews_count }} reviews","is_all_reviews_text_badge_a_link":false,"show_stars_for_all_reviews_text_badge":false,"all_reviews_text_badge_url":"","all_reviews_text_style":"branded","all_reviews_text_color_style":"judgeme_brand_color","all_reviews_text_color":"#108474","all_reviews_text_show_jm_brand":true,"featured_carousel_show_header":true,"featured_carousel_title":"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":true,"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":false,"enable_json_ld_products":false,"preview_badge_show_question_text":false,"preview_badge_no_question_text":"No questions","preview_badge_n_question_text":"{{ number_of_questions }} question/questions","qa_badge_show_icon":false,"qa_badge_position":"same-row","remove_judgeme_branding":true,"widget_add_search_bar":false,"widget_search_bar_placeholder":"Search","widget_sorting_verified_only_text":"Verified only","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_advanced_speed_features":5,"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
546itle":"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":"#70A376","widget_enable_secondary_color":false,"widget_secondary_color":"#edf5f5","widget_summary_average_rating_text":"{{ average_rating }} out of 5","widget_media_grid_title":"Customer photos \u0026 videos","widget_media_grid_see_more_text":"See more","widget_round_style":false,"widget_show_product_medals":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,"review_snippet_widget_round_border_style":true,"review_snippet_widget_card_color":"#FFFFFF","review_snippet_widget_slider_arrows_background_color":"#FFFFFF","review_snippet_widget_slider_arrows_color":"#000000","review_snippet_widget_star_color":"#108474","show_product_variant":false,"all_reviews_product_variant_label_text":"Variant: ","widget_show_verified_branding":false,"widget_ai_summary_title":"Customers say","widget_ai_summary_disclaimer":"AI-powered review summary based on recent customer reviews","widget_show_ai_summary":false,"widget_show_ai_summary_bg":false,"widget_show_review_title_input":true,"redirect_reviewers_invited_via_email":"external_form","request_store_review_after_product_review":false,"request_review_other_products_in_order":true,"review_form_color_scheme":"default","review_form_corner_style":"square","review_form_star_color":{},"review_form_text_color":"#333333","review_form_background_color":"#ffffff","review_form_field_background_color":"#fafafa","review_form_button_color":{},"review_form_button_text_color":"#ffffff","review_form_modal_overlay_color":"#000000","review_content_screen_title_text":"How would you rate this product?","review_content_introduction_text":"We would love it if you would share a bit about your experience.","store_review_form_title_text":"How would you rate this store?","store_review_form_introduction_text":"We would love it if you would share a bit about your experience.","show_review_guidance_text":true,"one_star_review_guidance_text":"Poor","five_star_review_guidance_text":"Great","customer_information_screen_title_text":"About you","customer_information_introduction_text":"Please tell us more about you.","custom_questions_screen_title_text":"Your experience in more detail","custom_questions_introduction_text":"Here are a few questions to help us understand more about your experience.","review_submitted_screen_title_text":"Thanks for your review!","review_submitted_screen_thank_you_text":"We are processing it and it will appear on the store soon.","review_submitted_screen_email_verification_text":"Please confirm your email by clicking the link we just sent you. This helps us keep reviews authentic.","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_
546youtube_url_text":"Paste your Youtube URL here","advanced_settings_next_step_button_text":"Next","advanced_settings_close_review_button_text":"Close","modal_write_review_flow":false,"write_review_flow_required_text":"Required","write_review_flow_privacy_message_text":"We respect your privacy.","write_review_flow_anonymous_text":"Post review as anonymous","write_review_flow_visibility_text":"This won't be visible to other customers.","write_review_flow_multiple_selection_help_text":"Select as many as you like","write_review_flow_single_selection_help_text":"Select one option","write_review_flow_required_field_error_text":"This field is required","write_review_flow_invalid_email_error_text":"Please enter a valid email address","write_review_flow_max_length_error_text":"Max. {{ max_length }} characters.","write_review_flow_media_upload_text":"\u003cb\u003eClick to upload\u003c/b\u003e or drag and drop","write_review_flow_gdpr_statement":"We'll only contact you about your review if necessary. By submitting your review, you agree to our \u003ca href='https://judge.me/terms' target='_blank' rel='nofollow noopener'\u003eterms and conditions\u003c/a\u003e and \u003ca href='https://judge.me/privacy' target='_blank' rel='nofollow noopener'\u003eprivacy policy\u003c/a\u003e.","rating_only_reviews_enabled":false,"show_negative_reviews_help_screen":false,"new_review_flow_help_screen_rating_threshold":3,"negative_review_resolution_screen_title_text":"Tell us more","negative_review_resolution_text":"Your experience matters to us. If there were issues with your purchase, we're here to help. Feel free to reach out to us, we'd love the opportunity to make things right.","negative_review_resolution_button_text":"Contact us","negative_review_resolution_proceed_with_review_text":"Leave a review","negative_review_resolution_subject":"Issue with purchase from {{ shop_name }}.{{ order_name }}","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":false,"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":10,"widget_store_review_label_text":"Review about the 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_header_theme":"minimal","review_widget_widget_title_enabled":true,"review_widget_header_text_size":"medium","review_widget_header_text_weight":"regular","review_widget_average_rating_style":"compact","review_widget_bar_chart_enabled":true,"review_widget_bar_chart_type":"numbers","review_widget_bar_chart_style":"standard","review_widget_expanded_media_gallery_enabled":false,"review_widget_reviews_section_theme":"standard","review_widget_image_style":"thumbnails","review_widget_review_image_ratio":"square","review_widget_stars_size":"medium","review_widget_verified_badge":"standard_text","review_widget_review_title_text_size":"medium","review_widget_review_text_size":"medium","review_widget_review_text_length":"medium","review_widget_number_of_columns_desktop":3,"review_widget_carousel_transition_speed":5,"review_widget_custom_questions_answers_display":"always","review_widget_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"
546:"reviews","review_widget_voting_label":"Helpful?","review_widget_shop_reply_label":"Reply from {{ shop_name }}:","review_widget_filters_title":"Filters","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_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":"bold_badge","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_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_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","platform":"shopify","branding_url":"https://app.judge.me/reviews","branding_text":"Powered by Judge.me","locale":"en","reply_name":"Dharishah Ayurveda","widget_version":"3.0","footer":true,"autopublish":false,"review_dates":false,"enable_custom_form":false,"shop_locale":"en","enable_multi_locales_translations":true,"show_review_title_input":true,"review_verification_email_status":"always","can_be_branded":false,"reply_name_text":"Dharishah Ayurveda"};</script>
546 <style class='jdgm-settings-style'>.jdgm-xx{left:0}:root{--jdgm-primary-color: #70A376;--jdgm-secondary-color: rgba(112,163,118,0.1);--jdgm-star-color: #FBA90A;--jdgm-write-review-text-color: white;--jdgm-write-review-bg-color: #70A376;--jdgm-paginate-color: #70A376;--jdgm-border-radius: 0;--jdgm-reviewer-name-color: #70A376}.jdgm-histogram__bar-content{background-color:#70A376}.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:#70A376}.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:#5FA572}.jdgm-rev .jdgm-rev__timestamp,.jdgm-quest .jdgm-rev__timestamp,.jdgm-carousel-item__timestamp{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_written_in_etsy"]{display:none !important}.jdgm-rev__transparency-badge[data-badge-type="review_written_in_google_business"]{display:none !important}.jdgm-rev__transparency-badge[data-badge-type="review_written_in_shop_app"]{display:none !important}.jdgm-rev__transparency-badge[data-badge-type="review_earned_for_future_purchase"]{display:none !important}.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:#108474}.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:'Dharishah Ayurveda'}.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev .jdgm-full-rev__product-button{border-radius:calc( 8px * 6 )} 547</style> <style class='jdgm-settings-style'></style> 548 549 550 551 552 <style class='jdgm-miracle-styles'> 553 @-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
553/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} 554 555</style> 556<style class='jdgm-miracle-styles'> 557 @font-face{font-family:'JudgemeStar';src:url("data:application/x-font-woff;charset=utf-8;base64,d09GRgABAAAAAA4wAA8AAAAAGFQAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABHU1VCAAABWAAAADsAAABUIIslek9TLzIAAAGUAAAARAAAAGA2I0I3Y21hcAAAAdgAAABVAAABjOEvI+NjdnQgAAACMAAAAAsAAAAOAAAAAGZwZ20AAAI8AAAG7QAADgxiLvl6Z2FzcAAACSwAAAAIAAAACAAAABBnbHlmAAAJNAAAAjcAAAJ6uVxc4GhlYWQAAAtsAAAAMAAAADYpQ9o2aGhlYQAAC5wAAAAdAAAAJAc9A0hobXR4AAALvAAAABAAAAAQDycAAGxvY2EAAAvMAAAACgAAAAoBfQC8bWF4cAAAC9gAAAAgAAAAIADdDnluYW1lAAAL+AAAAYgAAALx+NVoVHBvc3QAAA2AAAAANAAAAE0L/7O8cHJlcAAADbQAAAB6AAAAnH62O7Z4nGNgZGBg4GIwYLBjYHJx8wlh4MtJLMljkGJgYYAAkDwymzEnMz2RgQPGA8qxgGkOIGaDiAIAJjsFSAB4nGNgYT7FOIGBlYGBqYppDwMDQw+EZnzAYMjIBBRlYGVmwAoC0lxTGA48YHjAxBz0P4shinkNwzSgMCOKIiYAj6QMyHic7ZCxDYBADAMvn0CBmIOKkkmoGJ9NHif/Y2DpLNmKUhhYABenCLAHI3WrteqdrfrgqJvI/m29y0lXjvKWn2zl115+zeS51KC2m2gv7TjAP2ybDQ0AAAB4nGNgQAYAAA4AAQB4nK1Xa1sbxxWe1Q2MAQNC2M267ihjUZcdySRxHGIrDtllURwlqcC43XVuu0i4TZNekt7oNb1flD9zVrRPnW/5aXnPzEoBB9ynz1M+6Lwz886c65xZSGhJ4n4UxlJ2H4n5nS5V7j2I6IZL1+LkoRzej6jQSD+bFtOi31f7br1OIiYRqK2RcESQ+E1yNMnkYZMKWtVVvUlFLQdHxeWa8AOqBjJJ/KywHPhZoxhQIdg7lDSrAIJ0QKXe4ahQKOAYqh9crvPsaL7m+JcloPJHVaeKNUWiFx3EoxWnYBSWNBU9qgUR66OVIMgJrhxI+rxHpdUHo2vOXBD2Q6qEUZ2KjXj3rQhkdxhJ6vUwtQk2bTDaiGOZWTYsuoapfCRpndfXmfl5L5KIxjCVNNOLEsxIXpthdJPRzcRN4jh2ES2aDfokdiMSXSbXMXa7dIXRlW76aEH0mfGoLPbjeJDG5HhxnHsQywH8UX7cpLKWsKDUSOHTVNCLaEr5NK18ZABbkiZVTLgRCTnIpvZ9yYvsrmvN518SSdin8lodi4EcyiF0ZevlBiK0EyU9N92NIxXXY0mb9yKsuRyX3JQmTWk6F3gjUbBpnsZQ+QrlovyUCvsPyenDEJpaa9I5LdnaebhVEvuST6DNJGZKsmWsndGjc/MiCP21+qRwzuuThTRrT3E8mBDA9USGQ5VyUk2whcsJIenCyLGVSK1Kt6yKuTO201XsEu6Xrh3fNK+NQ0dzs6IYQour6vEaiviCzgqFkAbpVpMWNKhS0oXgNT4AABmiBR7tYrRg8rWIgxZMUCRi0IdmWgwSOUwkLSJsTVrS3b0oKw224qs0d6AOm1TV3Z2oe89OunXMV838ss7EUnA/ypaWAnJSnxY9vnIoLT+7wD8L+CFnBbkoNnpRxuGDv/4QGYbahbW6wrYxdu06b8FN5pkYnnRgfwezJ5N1RgozIaoK8UJB3Rk5jmOyVdMiE4VwL6Il5cuQ5lF+c4hw4svkP5cuOWJRVIXv+xyBZaw5abY87dGnnvs0wrUCH2teky7qzGF5CfFm+TWdFVk+pbMSS1dnZZaXdVZh+XWdTbG8orNplt/Q2TmWnlbj+FMlQaSVbJHzDt+WJuljiyuTxY/sYvPY4upk8WO7KLWgC96ZfsKpf1tX2c/j/tXhn4RdT8M/lgr+sbwK/1g24B/LVfjH8pvwj+U1+MfyW/CP5Rr8Y9nSsm0K9rqG2kuJRNNzksCkFJewxTW7rum6R9dxH5/BVejIM7Kp0g3Fjf2JDJe9f3ac4my+EnLF0TNrWdmphRGaInv53LHwnMW5oeXzxvLncZrlhF/ViWt7qi08L1b+Jfhv647ayG44Nfb1JuIBB063H5cl3WjSC7p1sd2kjf9GRWH3QX8RKRIrDdmSHW4JCO3d4bCjOughER4+dF28SBuOU1tGhG+hd63QRdBKaKcNQ8tmhU/nA+9g2FJStoc48/ZJmmzZ86ii/DFbUsI9ZXMnOirJsnSPSqvlp2KfO+0MmrYyO9R2QpXg8euacLezr1IpSAaKynhUsVwKUhc44U73+J4UpqH/q23kWEHDNr9YM4HRgvNOUaJsT62giSAZZRRc+Sun4kQ2osFGFPGbd9IvdaEQ2uNYSMyWV/NYqDbC9NJkiWbM+rbqsFLO4p1JCNkZG2kSe1FLtvGgs/X5pGS78lRQpYHR3ePfLjaJp1V7ni3FJf/yMUuCcboS/sB53OVxijfRP1ocxW26GEQ9F2+qbMetbN1
557Zxr195cTqrts7seqfuvdJOwJNt7wnKdzSdNsbwjauMTh1JhUJbdE6doTGZa7PVRv5FB9ovnWdC1Th+rRw8+z52zqbwVsz3vI/lnTn/1XF7BP3sbZCqzpWL/U4t7ODBnzLG0flVYxue3WVxyX3ZhKCuwhBzV57fI3ghldbdBO3/LUz5rs4zlmu0gvAr2t6EeINjmKIcMttPLzjaL2puaDpDcBv65EQ2wA9AIfBjh45ZmYXwMzcY04HYI85DO4zh8F3mMPgu/oIvTAAioAcg2J95Ni5B0B27i3mOYzeZp5B7zDPoHeZZ9B7rDMESFgng5R1MthnnQz6zHkVYMAcBgfMYfCQOQy+Z+zaAvq+sYvR+8YuRj8wdjH6wNjF6ENjF6MfGrsY/cjYxejHiHF7ksCfmBFtAn5k4SuAH3PQzcjH6Kd4a3POzyxkzs8Nx8k5v8Dmlyan/tKMzI5DC3nHryxk+q9xTk74jYVM+K2FTPgduHcm5/3ejAz9EwuZ/gcLmf5H7MwJf7KQCX+2kAl/AfflyXl/NSND/5uFTP+7hUz/B3bmhH9ayIShhUz4VI/Omy9bqrijUqEY4p8mtMHY92j6gIpXe4fjx7r5BSXaAUEAAAAAAQAB//8AD3icPVFPbxJBFJ83s+y2SKEgLKWlyL9dWqCUwsIWkGahQFcKqY00FFpTKakG26jVokkPDaSpmlgvHrzoFxAPHvRC/ABe/S7e0QGreZlkZn7v5f3+IEDo90PykzSQA5kUg8U4QVARIfTcZgWWD4CX4ViOtZh5qwOscTku0xfngGiEXuMm8nXwZfDhqSIKaoYZG/O/aH/sVmu6xcPYzvZWoSWTten8Sfbe3cOdXo5j2V7nrNJ+975nmRK9xSNo0D14tP8HqaBptIKCynzILxJMoEQxghFpIQyAawhj2g4YNpPLHlcwzLBTARA5PVA2erCYKTl+xGkF5LhPJCOAlk/0/SMdAukKl+NWnjOTb59edb7ns3K+sHa+W2/UtrfURMZgwHCqi82lVzK5cDi44C3kTs+bzXQgPDsT87U31g/22zpMVHq8giep9lu7n18KHlG4lTjbq7/pDPobx0LSPgug01lfPzs+yh80ulL3rZpP+VOTk4SMXzy6/193n+r2o1UUUgKKhAkDJaCBMAQxD6h6TGqIENxAmODNVCwacdiNtzVD5W6qS+TcBhiJHNlgMQ8T4q9sGFVMok787WA9RvoRjQwbrLyF51jS4wytUDlyUb0m2/x2Je6SjILgvKyE58OL5f26krjh1howeaKdMYeixYBkc1z35rw3lzQAGpqQChxghid6bkLvVFx3FprNcrNy6TSNawV3aTm9Wn180krsDdRsdikUFXj8iw7S0WR+bj0YcaE/UMBz/QB4nGNgZGBgAOKuGZkJ8fw2Xxn4mV8ARRgey3g7I+j/WcwvmBOBXA4GJpAoAC2xCmN4nGNgZGBgDvqfBSRfMDD8/wgkgSIogAUAhqcFiwAAAAPoAAADwQAAA8UAAAO5AAAAAAAAAEAAvAE9AAAAAQAAAAQARAACAAAAAAACAAoAJwCNAAAAPw4MAAAAAHicdZHNTsJAFIVP5ccIiQtN3LiZlYGYFGhww0YSEtmbyM7FANMfLB0ynZKw9Cnc+Q6+kG/gO3haJoYYaDOd7557Zu7MLYArfMPD/nng2LOHNqM9n+EcY8c16lPHdfKz4wb51XGTHDtu4R654zau8ckdvPoFoxW+HHu48W4dn+HSGziuUX90XCe/OG6Q3xw3ye+OW5h5H47buPN+JnqzM0kUW9GZdEXQD4ZivhOaUpLJVMjCxtrkYixCnVmVptpf6PWqWEZqrVIlw2cVFak0B8oBzpTJE52Jgd8/UKcqU0ZatSwr5dsosDYUodFr8eRqiI3RK7WwfmztZtTrHdbGBBob7GCQIGITLQQ6VLucA/Q5hqQ5HYLOvStBBomUikTBFXGVyRmPOUJGGVVFR0r2seB3zfYXWHK1Ipc5xdUhf6eiVjCW3OO457g641xWTap6AgNW6p/wTjlnlV9WJ1v+3SnHlu6AqqWvPL2pTivw9O8egn0qcysqC+p+1S1LdYQe3xP3/gWEY44veJxjYGKAAC4G7ICFkYmRmZGFkZWBKyc1MU23OD8nMwXCTM0tKKnkBDMzEnPSGBgA0+kLdHicY/DewXAiKGIjI2Nf5AbGnRwMHAzJBRsZ2J02MjBoQWguFHonAwMDNxJrJwMzA4PLRhXGjsCIDQ4dESB+istGDRB/BwcDRIDBJVJ6ozpIaBdHAwMji0NHcghMAgQ2MvBp7WD837qBpXcjE4PLZtYUNgYXFwCUHCoHAAA=") format("woff");font-weight:normal;font-style:normal} 558 559</style> 560 561 562 563 564 565 566 567 568
569<script data-cfasync='false' class='jdgm-script'> 570!function(e){window.jdgm=window.jdgm||{}; 571/* INF-1976 */ 572var _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;}(); 573if(_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;} 574jdgm.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/01a11b30-98d5-7ae3-b2f4-f79b3c6f32c4/judgeme-775/assets/",jdgm.CDN_API_HOST="https://cdn.judge.me/", 575jdgm.docReady=function(d){(e.attachEvent?"complete"===e.readyState:"loading"!==e.readyState)? 576setTimeout(d,0):e.addEventListener("DOMContentLoaded",d)},jdgm.loadCSS=function(d,t,o,a){ 577!o&&jdgm.loadCSS.requestedUrls.indexOf(d)>=0||(jdgm.loadCSS.requestedUrls.push(d), 578(a=e.createElement("link")).rel="stylesheet",a.class="jdgm-stylesheet",a.media="nope!", 579a.href=d,a.onload=function(){this.media="all",t&&setTimeout(t)},e.body.appendChild(a))}, 580jdgm.loadCSS.requestedUrls=[],jdgm.loadJS=function(e,d){var t=new XMLHttpRequest; 581t.onreadystatechange=function(){4===t.readyState&&t.status>=200&&t.status<300&&(Function(t.response)(),d&&d(t.response))}, 582t.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( 583".jdgm-widget, .jdgm-all-reviews-page").length>0)&&(jdgmSettings.widget_load_with_code_splitting? 584parseFloat(jdgmSettings.widget_version)>=3?jdgm.loadCSS(jdgm.CDN_BASE_URL+"widget_v3_base.css"): 585jdgm.loadCSS(jdgm.CDN_BASE_URL+"widget_base.css"):jdgm.loadCSS(jdgm.CDN_BASE_URL+"shopify_v2.css") 586)}))}(document); 587</script>
587 588<noscript><link rel="stylesheet" type="text/css" media="all" href="https://cdn.shopify.com/extensions/01a11b30-98d5-7ae3-b2f4-f79b3c6f32c4/judgeme-775/assets/shopify_v2.css"></noscript> 589 590<!-- BEGIN app snippet: theme_fix_tags -->
590<script> 591 (function() { 592 var jdgmThemeFixes = null; 593 if (!jdgmThemeFixes) return; 594 595 // "All themes" fix: CSS and JS applied on every theme. CSS is injected 596 // before the per-theme fix so the theme-specific CSS wins the cascade. 597 // HTML is never applied globally (too risky). 598 var allThemesFix = jdgmThemeFixes['all']; 599 if (allThemesFix && allThemesFix.css) { 600 var allStyleTag = document.createElement('style'); 601 allStyleTag.classList.add('jdgm-theme-fix-style-all'); 602 allStyleTag.innerHTML = allThemesFix.css; 603 document.head.append(allStyleTag); 604 }; 605 606 if (allThemesFix && allThemesFix.js) { 607 var allScriptTag = document.createElement('script'); 608 allScriptTag.classList.add('jdgm-theme-fix-script-all'); 609 allScriptTag.innerHTML = allThemesFix.js; 610 document.head.append(allScriptTag); 611 }; 612 613 var thisThemeFix = jdgmThemeFixes[Shopify.theme.id]; 614 if (!thisThemeFix) return; 615 616 if (thisThemeFix.html) { 617 document.addEventListener("DOMContentLoaded", function() { 618 var htmlDiv = document.createElement('div'); 619 htmlDiv.classList.add('jdgm-theme-fix-html'); 620 htmlDiv.innerHTML = thisThemeFix.html; 621 document.body.append(htmlDiv); 622 }); 623 }; 624 625 if (thisThemeFix.css) { 626 var styleTag = document.createElement('style'); 627 styleTag.classList.add('jdgm-theme-fix-style'); 628 styleTag.innerHTML = thisThemeFix.css; 629 document.head.append(styleTag); 630 }; 631 632 if (thisThemeFix.js) { 633 var scriptTag = document.createElement('script'); 634 scriptTag.classList.add('jdgm-theme-fix-script'); 635 scriptTag.innerHTML = thisThemeFix.js; 636 document.head.append(scriptTag); 637 }; 638 })(); 639</script>
639 640<!-- END app snippet --> 641<!-- End of Judge.me Core --> 642 643 644 645<!-- END app block --><!-- BEGIN app block: shopify://apps/bitespeed-whatsapp-marketing/blocks/app-embed/9efdb9ca-2d01-4a12-b1ac-02679fe0f6fc -->
645<script async src="https://cdnjs.cloudflare.com/ajax/libs/uuid/8.3.2/uuid.min.js"></script>
645 646 647<!-- BEGIN app snippet: user-id -->
647<script> 648 (() => { 649 const T = 1200; 650 const safe = (f, d = null) => { 651 try { 652 const v = f(); 653 return v === undefined ? d : v; 654 } catch { 655 return d; 656 } 657 }; 658 const race = (p, d = null) => 659 Promise.race([Promise.resolve(p).catch(() => d), new Promise((r) => setTimeout(() => r(d), T))]); 660 const sha256 = async (s) => { 661 const b = await crypto.subtle.digest('SHA-256', new TextEncoder().encode(s)); 662 return [...new Uint8Array(b)].map((x) => x.toString(16).padStart(2, '0')).join(''); 663 }; 664 665 const draw = () => { 666 const c = document.createElement('canvas'); 667 c.width = 280; 668 c.height = 80; 669 const x = c.getContext('2d'); 670 if (!x) return null; 671 const g = x.createLinearGradient(0, 0, 280, 0); 672 g.addColorStop(0, '#ff0080'); 673 g.addColorStop(0.5, '#00c8ff'); 674 g.addColorStop(1, '#ffe600'); 675 x.fillStyle = g; 676 x.fillRect(0, 0, 280, 80); 677 x.textBaseline = 'alphabetic'; 678 x.fillStyle = '#069'; 679 x.font = '11pt "Times New Roman"'; 680 x.fillText('Cwm fjordbank gly \u{1F603} \u0928\u092E\u0938\u094D\u0924\u0947', 2, 15); 681 x.fillStyle = 'rgba(102,204,0,0.4)'; 682 x.font = '18pt Arial'; 683 x.fillText('Cwm fjordbank gly \u{1F603}', 4, 45); 684 x.globalCompositeOperation = 'multiply'; 685 for (const [col, cx, cy] of [ 686 ['#f2f', 40, 50], 687 ['#2ff', 80, 50], 688 ['#ff2', 60, 70], 689 ]) { 690 x.fillStyle = col; 691 x.beginPath(); 692 x.arc(cx, cy, 30, 0, Math.PI * 2, true); 693 x.fill(); 694 } 695 x.globalCompositeOperation = 'source-over'; 696 x.shadowBlur = 6; 697 x.shadowColor = '#333'; 698 x.beginPath(); 699 x.moveTo(150, 70); 700 x.bezierCurveTo(180, 10, 230, 90, 270, 30); 701 x.strokeStyle = '#123456'; 702 x.lineWidth = 3; 703 x.stroke(); 704 return c.toDataURL(); 705 }; 706 707 const canvas = async () => { 708 const a = safe(draw); 709 const b = safe(draw); 710 if (!a || a !== b) return null; 711 return sha256(a); 712 }; 713 714 const webgl = () => { 715 const gl = safe(() => { 716 const c = document.createElement('canvas'); 717 return c.getContext('webgl') || c.getContext('experimental-webgl'); 718 }); 719 if (!gl) return null; 720 const p = (k) => safe(() => gl.getParameter(k)); 721 const dbg = safe(() => gl.getExtension('WEBGL_debug_renderer_info')); 722 const prec = (sh, t) => 723 safe(() => { 724 const f = gl.getShaderPrecisionFormat(sh, t); 725 return [f.rangeMin, f.rangeMax, f.precision]; 726 }); 727 const out = [ 728 dbg ? p(dbg.UNMASKED_VENDOR_WEBGL) : p(gl.VENDOR), 729 dbg ? p(dbg.UNMASKED_RENDERER_WEBGL) : p(gl.RENDERER), 730 p(gl.SHADING_LANGUAGE_VERSION), 731 p(gl.MAX_TEXTURE_SIZE), 732 p(gl.MAX_VERTEX_ATTRIBS), 733 safe(() => Array.from(gl.getParameter(gl.ALIASED_LINE_WIDTH_RANGE))), 734 prec(gl.FRAGMENT_SHADER, gl.HIGH_FLOAT), 735 safe(() => gl.getSupportedExtensions().slice().sort().join(',')), 736 ]; 737 safe(() => gl.getExtension('WEBGL_lose_context')?.loseContext()); 738 return out; 739 }; 740 741 const audio = () => { 742 const C = window.OfflineAudioContext || window.webkitOfflineAudioContext; 743 if (!C) return Promise.resolve(null); 744 return new Promise((resolve) => { 745 const ctx = new C(1, 5000, 44100); 746 const osc = ctx.createOscillator(); 747 osc.type = 'triangle'; 748 osc.frequency.value = 10000; 749 const comp = ctx.createDynamicsCompressor(); 750 comp.threshold.value = -50; 751 comp.knee.value = 40; 752 comp.ratio.value = 12; 753 comp.attack.value = 0; 754 comp.release.value = 0.25; 755 osc.connect(comp); 756 comp.connect(ctx.destination); 757 osc.start(0); 758 const done = (buf) => { 759 const d = buf.getChannelData(0).subarray(4500); 760 let s = 0; 761 for (let i = 0; i < d.length; i++) s += Math.abs(d[i]); 762 resolve(s.toFixed(3)); 763 }; 764 ctx.oncomplete = (e) => done(e.renderedBuffer); 765 const r = ctx.startRendering(); 766 if (r && typeof r.then === 'function') r.then(done).catch(() => resolve(null)); 767 }); 768 }; 769 770 const FONTS = 771 'Calibri,Cambria,Candara,Consolas,Constantia,Corbel,Segoe UI,Nirmala UI,Mangal,Bahnschrift,Franklin Gothic Medium,Futura,Optima,Menlo,Monaco,Geneva,Lucida Grande,SF Pro Text,Gill Sans,Palatino,Ubuntu,DejaVu Sans,Liberation Sans,Fira Sans,Noto Sans,Roboto,Source Code Pro,Century Gothic,Garamond,Helvetica Neue'.split( 772 ',', 773 ); 774 775 const fonts = () => { 776 const x = safe(() => document.createElement('canvas').getContext('2d')); 777 if (!x) return null; 778 const txt = 'mmmmmmmmmmlli10OQ@#\u0915'; 779 const bases = ['monospace', 'sans-serif', 'serif']; 780 const bw = bases.map((b) => { 781 x.font = `72px ${b}`; 782 return x.measureText(txt).width; 783 }); 784 return FONTS.filter((f) => 785 bases.some((b, i) => { 786 x.font = `72px "${f}", ${b}`; 787 return x.measureText(txt).width !== bw[i]; 788 }), 789 ); 790 }; 791 792 const maths = () => 793 [ 794 Math.acos(0.123), 795 Math.acosh(1e308), 796 Math.atanh(0.5), 797 Math.cbrt(100), 798 Math.expm1(1), 799 Math.sinh(1), 800 Math.tan(-1e300), 801 Math.pow(Math.PI, -100), 802 ].join(','); 803 804 const hints = async () => { 805 const u = navigator.userAgentData; 806 if (!u?.getHighEntropyValues) return null; 807 const v = await u.getHighEntropyValues(['architecture', 'bitness', 'model', 'platformVersion']); 808 return { 809 model: v.model || null, // Android device model - the single best Android discriminator 810 arch: v.architecture ? `${v.architecture}-${v.bitness}` : null, 811 }; 812 }; 813 814 const family = () => { 815 const ua = navigator.userAgent; 816 if (navigator.brave) return 'brave'; 817 if (/Edg\//.test(ua)) return 'edge'; 818 if (/OPR\//.test(ua)) return 'opera'; 819 if (/SamsungBrowser/.test(ua)) return 'samsung'; 820 if (/Firefox\/|FxiOS/.test(ua)) return 'firefox'; 821 if (/CriOS|Chrome\//.test(ua)) return 'chrome'; 822 if (/Safari\//.test(ua)) return 'safari'; 823 return 'other'; 824 }; 825 826 let inflight = null; 827 828 const build = async () => { 829 // const cp = window.Shopify?.customerPrivacy; 830 // if (cp?.analyticsProcessingAllowed && !safe(() => cp.analyticsProcessingAllowed(), true)) return null; 831 if (!window.crypto?.subtle) return null; 832 833 const nav = navigator; 834 const scr = screen; 835 const [au, ch, cv] = await Promise.all([race(audio()), race(hints()), race(canvas())]); 836 const intl = safe(() => Intl.DateTimeFormat().resolvedOptions(), {}); 837 const mq = (q) => safe(() => matchMedia(q).matches); 838 const fo = safe(fonts); 839 const gl = safe(webgl); 840 841 const stable = { 842 f: family(), 843 p: nav.platform ?? null, 844 c: nav.hardwareConcurrency ?? null, 845 m: nav.deviceMemory ?? null, 846 t: nav.maxTouchPoints ?? null, 847 s: [scr.width, scr.height].sort((a, b) => a - b).join('x'), // rotation safe 848 d: scr.colorDepth ?? null,
849 l: nav.languages ? [...nav.languages] : [nav.language], 850 z: intl.timeZone ?? null, 851 g: gl, 852 v: cv, 853 a: au, 854 o: fo, 855 h: maths(), 856 q: [mq('(color-gamut: p3)'), mq('(dynamic-range: high)'), mq('(pointer: coarse)'), mq('(hover: hover)')], 857 M: ch?.model ?? null, 858 A: ch?.arch ?? null, 859 }; 860 861 // Entropy gate 862 const confident = (fo?.length ?? 0) >= 3 || !!ch?.model || (!!cv && (gl?.[1] || '').length > 12); 863 864 // `stable` is returned alongside its digest, unmodified and in the same 865 // key order it was hashed in, so the backend row can be checked against 866 // its own key: sha256(JSON.stringify(payload)) must equal hash. It stays 867 // in memory like the hash does - callers send it, nothing writes it to a 868 // cookie or to storage. 869 return { hash: await sha256(JSON.stringify(stable)), confident, payload: stable }; 870 }; 871 872 window.bspdFingerprint = () => { 873 if (!inflight) inflight = build().catch(() => null); 874 return inflight; 875 }; 876 })(); 877</script>
877 878<!-- END app snippet --> 879<!-- BEGIN app snippet: optin-triggers-middleware -->
879<script 880 type="text/javascript" 881 name="BSPD-SHOPIFY-VARS" 882> 883 // prettier-ignore 884 var countryTimezoneMapping = [{ "country": "Afghanistan", "timezones": ["Asia/Kabul"] }, { "country": "Albania", "timezones": ["Europe/Tirane"] }, { "country": "Algeria", "timezones": ["Africa/Algiers"] }, { "country": "Argentina", "timezones": ["America/Argentina/Buenos_Aires", "America/Argentina/Cordoba", "America/Argentina/Salta", "America/Argentina/Jujuy", "America/Argentina/Tucuman", "America/Argentina/Catamarca", "America/Argentina/La_Rioja", "America/Argentina/San_Juan", "America/Argentina/Mendoza", "America/Argentina/San_Luis", "America/Argentina/Rio_Gallegos", "America/Argentina/Ushuaia"] }, { "country": "Armenia", "timezones": ["Asia/Yerevan"] }, { "country": "Australia", "timezones": ["Australia/Lord_Howe", "Antarctica/Macquarie", "Australia/Hobart", "Australia/Currie", "Australia/Melbourne", "Australia/Sydney", "Australia/Broken_Hill", "Australia/Brisbane", "Australia/Lindeman", "Australia/Adelaide", "Australia/Darwin", "Australia/Perth", "Australia/Eucla"] }, { "country": "Austria", "timezones": ["Europe/Vienna"] }, { "country": "Azerbaijan", "timezones": ["Asia/Baku"] }, { "country": "Bahrain", "timezones": ["Asia/Bahrain"] }, { "country": "Bangladesh", "timezones": ["Asia/Dhaka"] }, { "country": "Belarus", "timezones": ["Europe/Minsk"] }, { "country": "Belgium", "timezones": ["Europe/Brussels"] }, { "country": "Belize", "timezones": ["America/Belize"] }, { "country": "Bhutan", "timezones": ["Asia/Thimphu"] }, { "country": "Bolivia", "timezones": ["America/La_Paz"] }, { "country": "Bosnia and Herzegovina", "timezones": ["Europe/Sarajevo"] }, { "country": "Botswana", "timezones": ["Africa/Gaborone"] }, { "country": "Brazil", "timezones": ["America/Noronha", "America/Belem", "America/Fortaleza", "America/Recife", "America/Araguaina", "America/Maceio", "America/Bahia", "America/Sao_Paulo", "America/Campo_Grande", "America/Cuiaba", "America/Santarem", "America/Porto_Velho", "America/Boa_Vista", "America/Manaus", "America/Eirunepe", "America/Rio_Branco"] }, { "country": "Brunei", "timezones": ["Asia/Brunei"] }, { "country": "Bulgaria", "timezones": ["Europe/Sofia"] }, { "country": "Cambodia", "timezones": ["Asia/Phnom_Penh"] }, { "country": "Cameroon", "timezones": ["Africa/Douala"] }, { "country": "Canada", "timezones": ["America/St_Johns", "America/Halifax", "America/Glace_Bay", "America/Moncton", "America/Goose_Bay", "America/Blanc-Sablon", "America/Toronto", "America/Nipigon", "America/Thunder_Bay", "America/Iqaluit", "America/Pangnirtung", "America/Atikokan", "America/Winnipeg", "America/Rainy_River", "America/Resolute", "America/Rankin_Inlet", "America/Regina", "America/Swift_Current", "America/Edmonton", "America/Cambridge_Bay", "America/Yellowknife", "America/Inuvik", "America/Creston", "America/Dawson_Creek", "America/Fort_Nelson", "America/Vancouver", "America/Whitehorse", "America/Dawson"] }, { "country": "Chile", "timezones": ["America/Santiago", "Pacific/Easter"] }, { "country": "China", "timezones": ["Asia/Shanghai", "Asia/Urumqi"] }, { "country": "Colombia", "timezones": ["America/Bogota"] }, { "country": "Congo (DRC)", "timezones": ["Africa/Kinshasa", "Africa/Lubumbashi"] }, { "country": "Costa Rica", "timezones": ["America/Costa_Rica"] }, { "country": "Côte dâIvoire", "timezones": ["Africa/Abidjan"] }, { "country": "Croatia", "timezones": ["Europe/Zagreb"] }, { "country": "Cuba", "timezones": ["America/Havana"] }, { "country": "Czech Republic", "timezones": ["Europe/Prague"] }, { "country": "Denmark", "timezones": ["Europe/Copenhagen"] }, { "country": "Djibouti", "timezones": ["Africa/Djibouti"] }, { "country": "Dominican Republic", "timezones": ["America/Santo_Domingo"] }, { "country": "Ecuador", "timezones": ["America/Guayaquil", "Pacific/Galapagos"] }, { "country": "Egypt", "timezones": ["Africa/Cairo"] }, { "country": "El Salvador", "timezones": ["America/El_Salvador"] }, { "country": "Eritrea", "timezones": ["Africa/Asmara"] }, { "country": "Estonia", "timezones": ["Europe/Tallinn"] }, { "country": "Ethiopia", "timezones": ["Africa/Addis_Ababa"] }, { "country": "Faroe Islands", "timezones": ["Atlantic/Faroe"] }, { "country": "Finland", "timezones": ["Europe/Helsinki"] }, { "country": "France", "timezones": ["Europe/Paris"] }, { "country": "Georgia", "timezones": ["Asia/Tbilisi"] }, { "country": "Germany", "timezones": ["Europe/Berlin", "Europe/Busingen"] }, { "country": "Greece", "timezones": ["Europe/Athens"] }, { "country": "Greenland", "timezones": ["America/Godthab", "America/Danmarkshavn", "America/Scoresbysund", "America/Thule"] }, { "country": "Guatemala", "timezones": ["America/Guatemala"] }, { "country": "Haiti", "timezones": ["America/Port-au-Prince"] }, { "country": "Honduras", "timezones": ["America/Tegucigalpa"] }, { "country": "Hong Kong SAR", "timezones": ["Asia/Hong_Kong"] }, { "country": "Hungary", "timezones": ["Europe/Budapest"] }, { "country": "Iceland", "timezones": ["Atlantic/Reykjavik"] }, { "country": "India", "timezones": ["Asia/Kolkata", "Asia/Calcutta"] }, { "country": "Indonesia", "timezones": ["Asia/Jakarta", "Asia/Pontianak", "Asia/Makassar", "Asia/Jayapura"] }, { "country": "Iran", "timezones": ["Asia/Tehran"] }, { "country": "Iraq", "timezones": ["Asia/Baghdad"] }, { "country": "Ireland", "timezones": ["Europe/Dublin"] }, { "country": "Israel", "timezones": ["Asia/Jerusalem"] }, { "country": "Italy", "timezones": ["Europe/Rome"] }, { "country": "Jamaica", "timezones": ["America/Jamaica"] }, { "country": "Japan", "timezones": ["Asia/Tokyo"] }, { "country": "Jordan", "timezones": ["Asia/Amman"] }, { "country": "Kazakhstan", "timezones": ["Asia/Almaty", "Asia/Qyzylorda", "Asia/Aqtobe", "Asia/Aqtau", "Asia/Oral"] }, { "country": "Kenya", "timezones": ["Africa/Nairobi"] }, { "country": "Korea", "timezones": ["Asia/Seoul"] }, { "country": "Kuwait", "timezones": ["Asia/Kuwait"] }, { "country": "Kyrgyzstan", "timezones": ["Asia/Bishkek"] }, { "country": "Laos", "timezones": ["Asia/Vientiane"] }, { "country": "Latvia", "timezones": ["Europe/Riga"] }, { "country": "Lebanon", "timezones": ["Asia/Beirut"] }, { "country": "Libya", "timezones": ["Africa/Tripoli"] }, { "country": "Liechtenstein", "timezones": ["Europe/Vaduz"] }, { "country": "Lithuania", "timezones": ["Europe/Vilnius"] }, { "country": "Luxembourg", "timezones": ["Europe/Luxembourg"] }, { "country": "Macao SAR", "timezones": ["Asia/Macau"] }, { "country": "Macedonia, FYRO", "timezones": ["Europe/Skopje"] }, { "country": "Malaysia", "timezones": ["Asia/Kuala_Lumpur", "Asia/Kuching"] }, { "country": "Maldives", "timezones": ["Indian/Maldives"] }, { "country": "Mali", "timezones": ["Africa/Bamako"] }, { "country": "Malta", "timezones": ["Europe/Malta"] }, { "country": "Mexico", "timezones": ["America/Mexico_City", "America/Cancun", "America/Merida", "America/Monterrey", "America/Matamoros", "America/Mazatlan", "America/Chihuahua", "America/Ojinaga", "America/Hermosillo", "America/Tijuana", "America/Bahia_Banderas"] }, { "country": "Moldova", "timezones": ["Europe/Chisinau"] }, { "country": "Monaco", "timezones": ["Europe/Monaco"] }, { "country": "Mongolia", "timezones": ["Asia/Ulaanbaatar", "Asia/Hovd", "Asia/Choibalsan"] }, { "country": "Montenegro", "timezones": ["Europe/Podgorica"] }, { "country": "Morocco", "timezones": ["Africa/Casablanca"] }, { "country": "Myanmar", "timezones": ["Asia/Rangoon"] }, { "country": "Nepal", "timezones": ["Asia/Kathmandu"] }, { "country": "Netherlands", "timezones": ["Europe/Amsterdam"] }, { "country": "New Zealand", "timezones": ["Pacific/Auckland", "Pacific/Chatham"] }, { "country": "Nicaragua", "timezones": ["America/Managua"] }, { "country": "Nigeria", "timezones": ["Africa/Lagos"] }, { "country": "Norway", "timezones": ["Europe/Oslo"] }, { "country": "Oman", "timezones": ["Asia/Muscat"] }, { "country": "Pakistan", "timezones": ["Asia/Karachi"] }, { "country": "Panama", "timezones": ["America/Panama"] }, { "country": "Paraguay", "timezones": ["America/Asuncion"] }, { "country": "Peru", "timezones": ["America/Lima"] }, { "country": "Philippines", "timezones": ["Asia/Manila"] }, { "country": "Poland", "timezones": ["Europe/Warsaw"] }, { "country": "Portugal", "timezones": ["Europe/Lisbon", "Atlantic/Madeira", "Atlantic/Azores"] }, { "country": "Puerto Rico", "timezones": ["America/Puerto_Rico"] }, { "country": "Qatar", "timezones": ["Asia/Qatar"] }, { "country": "Réunion", "timezones": ["Indian/Reunion"] }, { "country": "Romania", "timezones": ["Europe/Bucharest"] }, { "country": "Russia", "timezones": ["Europe/Kaliningrad", "Europe/Moscow", "Europe/Simferopol", "Europe/Volgograd", "Europe/Astrakhan", "Europe/Samara", "Europe/Ulyanovsk", "Asia/Yekaterinburg", "Asia/Omsk", "Asia/Novosibirsk", "Asia/Barnaul", "Asia/Novokuznetsk", "Asia/Krasnoyarsk", "Asia/Irkutsk", "Asia/Chita", "Asia/Yakutsk", "Asia/Khandyga", "Asia/Vladivostok", "Asia/Ust-Nera", "Asia/Magadan", "Asia/Sakhalin", "Asia/Srednekolymsk", "Asia/Kamchatka", "Asia/Anadyr"] }
884, { "country": "Rwanda", "timezones": ["Africa/Kigali"] }, { "country": "Saudi Arabia", "timezones": ["Asia/Riyadh"] }, { "country": "Senegal", "timezones": ["Africa/Dakar"] }, { "country": "Serbia", "timezones": ["Europe/Belgrade"] }, { "country": "Singapore", "timezones": ["Asia/Singapore"] }, { "country": "Slovakia", "timezones": ["Europe/Bratislava"] }, { "country": "Slovenia", "timezones": ["Europe/Ljubljana"] }, { "country": "Somalia", "timezones": ["Africa/Mogadishu"] }, { "country": "South Africa", "timezones": ["Africa/Johannesburg"] }, { "country": "Spain", "timezones": ["Europe/Madrid", "Africa/Ceuta", "Atlantic/Canary"] }, { "country": "Sri Lanka", "timezones": ["Asia/Colombo"] }, { "country": "Sweden", "timezones": ["Europe/Stockholm"] }, { "country": "Switzerland", "timezones": ["Europe/Zurich"] }, { "country": "Syria", "timezones": ["Asia/Damascus"] }, { "country": "Taiwan", "timezones": ["Asia/Taipei"] }, { "country": "Tajikistan", "timezones": ["Asia/Dushanbe"] }, { "country": "Thailand", "timezones": ["Asia/Bangkok"] }, { "country": "Trinidad and Tobago", "timezones": ["America/Port_of_Spain"] }, { "country": "Tunisia", "timezones": ["Africa/Tunis"] }, { "country": "Turkey", "timezones": ["Europe/Istanbul"] }, { "country": "Turkmenistan", "timezones": ["Asia/Ashgabat"] }, { "country": "Ukraine", "timezones": ["Europe/Kiev", "Europe/Uzhgorod", "Europe/Zaporozhye"] }, { "country": "United Arab Emirates", "timezones": ["Asia/Dubai"] }, { "country": "United Kingdom", "timezones": ["Europe/London"] }, { "country": "United States of America", "timezones": ["America/New_York", "America/Detroit", "America/Kentucky/Louisville", "America/Kentucky/Monticello", "America/Indiana/Indianapolis", "America/Indiana/Vincennes", "America/Indiana/Winamac", "America/Indiana/Marengo", "America/Indiana/Petersburg", "America/Indiana/Vevay", "America/Chicago", "America/Indiana/Tell_City", "America/Indiana/Knox", "America/Menominee", "America/North_Dakota/Center", "America/North_Dakota/New_Salem", "America/North_Dakota/Beulah", "America/Denver", "America/Boise", "America/Phoenix", "America/Los_Angeles", "America/Anchorage", "America/Juneau", "America/Sitka", "America/Metlakatla", "America/Yakutat", "America/Nome", "America/Adak", "Pacific/Honolulu"] }, { "country": "Uruguay", "timezones": ["America/Montevideo"] }, { "country": "Uzbekistan", "timezones": ["Asia/Samarkand", "Asia/Tashkent"] }, { "country": "Venezuela", "timezones": ["America/Caracas"] }, { "country": "Vietnam", "timezones": ["Asia/Ho_Chi_Minh"] }, { "country": "Yemen", "timezones": ["Asia/Aden"] }, { "country": "Zimbabwe", "timezones": ["Africa/Harare"] }] 885 886 var TheCustomerID = ''; 887 var TheCustomerEmail = ''; 888 var TheCustomerPhone = ''; 889 var TheCustomerFN = ''; 890 var TheCustomerLN = ''; 891 892 var BspdCurrentCart = {"note":null,"attributes":{},"original_total_price":0,"total_price":0,"total_discount":0,"total_weight":0.0,"item_count":0,"items":[],"requires_shipping":false,"currency":"INR","items_subtotal_price":0,"cart_level_discount_applications":[],"checkout_charge_amount":0}; 893 var BspdCurrentProduct = null; 894 var BspdCurrentCollection = { id: null } 895 896 var BSPD_CART_DATA_LOCAL_KEY = 'bspdCartData'; 897 var BSPD_LAST_VISIT_COUNT_LOCAL_KEY = 'bspdLastUserVisitCount'; 898 var BSPD_LAST_VISITED_PRODUCT = 'bspdLastVisitedProduct'; 899 var BSPD_LAST_VISITED_COLLECTION = 'bspdLastVisitedCollection'; 900 var BspdLastVisitedProduct = null, 901 BspdLastVisitedCollection = null; 902 903 window.bspdStoreConfig = { 904 zIndexOverride: 999999999, 905 nonPopupZIndexOverride: 2147483647, 906 cspCustomZIndexOverride: 100000000, 907 startupDelay: 1, 908 disableInWebView: false, 909 ignoreCurrentDomainOnWaWidget: false, 910 includeFullUrlWithUtmOnWaWidget: false, 911 webPush: { enabled: false }, 912 vapidPublicKey: "BMSR8tXlLJOlANI7T5d2zhtzfBgW54OsaNX0K79JoOUlxSZz20vJE3cpmJAUtnpRIyAqEM-rp5h8AhxdyXOL3Ws", 913 }; 914 915 function bspdGetBarCookie(name) { 916 const value = "; " + document.cookie; 917 const parts = value.split("; " + name + "="); 918 if (parts.length === 2) { 919 return parts.pop().split(";").shift(); 920 } 921 return null; 922 } 923 function bspdSetBarCookie(name, value, days) { 924 const expires = new Date(); 925 926 expires.setTime(expires.getTime() + days * 24 * 60 * 60 * 1000); 927 document.cookie = name + "=" + value + ";expires=" + expires.toUTCString() + ";path=/"; 928 } 929 930 function trackLastVisitedProductAndCollection() { 931 if (BspdCurrentProduct) { 932 // check cookies for last visited product details (product id) 933 const lastVisitedProduct = bspdGetBarCookie(BSPD_LAST_VISITED_PRODUCT); 934 if (lastVisitedProduct) { 935 BspdLastVisitedProduct = lastVisitedProduct; 936 937 if (BspdCurrentProduct?.id !== BspdLastVisitedProduct) { 938 // set the cookie again 939 bspdSetBarCookie(BSPD_LAST_VISITED_PRODUCT, BspdCurrentProduct?.id, 300); 940 } 941 } else if (BspdCurrentProduct && BspdCurrentProduct?.id) { 942 // set the cookie 943 bspdSetBarCookie(BSPD_LAST_VISITED_PRODUCT, BspdCurrentProduct?.id, 300); 944 } 945 } 946 947 if (BspdCurrentCollection) { 948 // check cookies for last visited collection details (collection id) 949 const lastVisitedCollection = bspdGetBarCookie(BSPD_LAST_VISITED_COLLECTION); 950 if (lastVisitedCollection) { 951 BspdLastVisitedCollection = lastVisitedCollection; 952 953 if (BspdCurrentCollection?.id !== BspdLastVisitedCollection) { 954 // set the cookie again 955 bspdSetBarCookie(BSPD_LAST_VISITED_COLLECTION, BspdCurrentCollection?.id, 300); 956 } 957 } else if (BspdCurrentCollection && BspdCurrentCollection?.id) { 958 // set the cookie 959 bspdSetBarCookie(BSPD_LAST_VISITED_COLLECTION, BspdCurrentCollection?.id, 300); 960 } 961 } 962 } 963 964 /** 965 * method that stores a entry whenever the user visits any of the page 966 * and increments the count by 1 967 * the data schema looks like 968 * {[DATE]: {date: string; route: {[ROUTE]: number}; count: number}} 969 * this will be a json object whose key will be the date and value will be the object 970 * and will be stored in local-storage 971 */ 972 function trackLastVisitedCount() { 973 const date = new Date(); 974 const dateString = date.toISOString().split("T")[0]; 975 976 let lastVisitedCount = JSON.parse(localStorage.getItem(BSPD_LAST_VISIT_COUNT_LOCAL_KEY)) || {}; 977 978 if (lastVisitedCount[dateString]) { 979 lastVisitedCount[dateString].count += 1; 980 981 // also update route 982 const route = window.location.pathname; 983 984 if (lastVisitedCount[dateString].route[route]) { 985 lastVisitedCount[dateString].route[route] += 1; 986 } else { 987 lastVisitedCount[dateString].route[route] = 1; 988 } 989 } else { 990 const route = window.location.pathname; 991 992 lastVisitedCount[dateString] = { 993 date: dateString, 994 route: { 995 [route]: 1, 996 }, 997 count: 1, 998 }; 999 } 1000 1001 localStorage.setItem(BSPD_LAST_VISIT_COUNT_LOCAL_KEY, JSON.stringify(lastVisitedCount)); 1002 } 1003 1004 /** 1005 * this method keeps a track of the current cart activity 1006 * if there are any changes by the user, this will track those changes 1007 * and making changes on storing it safely 1008 */ 1009 const storeCartData = () => { 1010 function syncCart() { 1011 const oldCart = JSON.parse(localStorage.getItem(BSPD_CART_DATA_LOCAL_
1011KEY) || "{}"); 1012 1013 if (BspdCurrentCart?.item_count !== oldCart?.item_count) { 1014 localStorage.setItem(BSPD_CART_DATA_LOCAL_KEY, JSON.stringify(BspdCurrentCart)); 1015 } 1016 } 1017 syncCart(); 1018 1019 }; 1020 1021 function bspdCreateUUID() { 1022 let dt = Date.now(); 1023 return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, (c) => { 1024 const r = ((dt + Math.random() * 16) % 16) | 0; 1025 dt = Math.floor(dt / 16); 1026 return (c === "x" ? r : (r & 0x3) | 0x8).toString(16); 1027 }); 1028 } 1029 1030 /** 1031 * auto-registers a conversion for known/logged-in customers. 1032 * the heavy registerConversion logic lives in bitespeed-popups.js; here we 1033 * only lift the API request (the optin_conversion POST) and the bits needed 1034 * to fire it, so the popup script does not have to be loaded for this to run. 1035 */ 1036 const customBrandInitLogic = async (interval) => { 1037 var BSPD_CONTACT_ID_COOKIE_ID = 'contactIdBitespeed'; 1038 var BSPD_BROWSER_ID_COOKIE_ID = 'refb'; 1039 1040 // Skip if already identified 1041 if (bspdGetBarCookie(BSPD_CONTACT_ID_COOKIE_ID)) { 1042 return; 1043 } 1044 1045 let phone = "", 1046 email = "", 1047 name = ""; 1048 1049 // TheCustomerEmail / TheCustomerPhone / TheCustomerFN are server-set liquid 1050 // variables already defined at the top of this file. 1051 if (/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(TheCustomerEmail)) email = TheCustomerEmail; 1052 if (/^\+?[\d\s\-()]{7,30}$/.test(TheCustomerPhone)) phone = TheCustomerPhone.replace(/\+/g, ""); 1053 if (TheCustomerFN.length > 1 && TheCustomerFN.length <= 100 && !/[<>]/.test(TheCustomerFN)) name = TheCustomerFN; 1054 1055 if (!phone && !email) return; 1056 1057 try { 1058 let browserId = bspdGetBarCookie(BSPD_BROWSER_ID_COOKIE_ID); 1059 if (!browserId) { 1060 browserId = bspdCreateUUID(); 1061 bspdSetBarCookie(BSPD_BROWSER_ID_COOKIE_ID, browserId, 50); 1062 } 1063 1064 const nameSplit = typeof name === "string" ? name.trim().split(/\s+/) : []; 1065 const firstName = nameSplit.length > 0 ? nameSplit[0] : undefined; 1066 const lastName = nameSplit.length > 1 ? nameSplit.slice(1).join(" ") : undefined; 1067 1068 const requestBody = { 1069 shopUrl: window.Shopify?.shop || "", 1070 type: "conversion", 1071 source: "popup", 1072 browserId, 1073 phone, 1074 email, 1075 name, 1076 firstName, 1077 lastName, 1078 consentProvided: true, 1079 createdAt: new Date().toISOString(), 1080 impressionAndConversionId: bspdCreateUUID(), 1081 origin: window.location.href, 1082 }; 1083 1084 const response = await fetch("/apps/bitespeed?type=optin_conversion", { 1085 method: "POST", 1086 headers: { "Content-Type": "application/json" }, 1087 body: JSON.stringify(requestBody), 1088 }); 1089 const res = await response.json(); 1090 1091 const contactId = res?.results?.[1]?.value?.id ?? res?.results?.[1]?.id ?? res?.results?.contactId; 1092 1093 if (res && contactId) { 1094 bspdSetBarCookie(BSPD_CONTACT_ID_COOKIE_ID, contactId, 1000); 1095 if (interval) clearInterval(interval); 1096 } 1097 } catch (error) {} 1098 }; 1099 1100 function execute() { 1101 trackLastVisitedProductAndCollection(); 1102 trackLastVisitedCount(); 1103 1104 storeCartData(); 1105 } 1106 execute(); 1107 1108 customBrandInitLogic(); 1109</script>
1109 1110<!-- END app snippet --> 1111<!-- BEGIN app snippet: bitespeed-analytics -->
1111<script name="bitespeed-variable" type="text/javascript"> 1112 const dummyBitespeedVar = 'dummyBitespeedVar'; 1113</script>
1113 1114
1115<script 1116 name="bitespeed-analytics" 1117 type="text/javascript" 1118> 1119 const getCookieGlobalAnal = (cookie) => { 1120 let cookieJson = {}; 1121 document.cookie.split(';').forEach(function (el) { 1122 let [k, v] = el.split('='); 1123 cookieJson[k.trim()] = v; 1124 }); 1125 return cookieJson[cookie]; 1126 }; 1127 1128 const isTruecallerContact = (contactId) => 1129 !!contactId && getCookieGlobalAnal('bspdTruecallerContactId') === String(contactId); 1130 1131 const setCookieGlobalAnal = (cookie, value, days, hours) => { 1132 let expires = ''; 1133 if (days) { 1134 let date = new Date(); 1135 date.setTime(date.getTime() + days * hours * 60 * 60 * 1000); 1136 expires = '; expires=' + date.toUTCString(); 1137 } 1138 document.cookie = cookie + '=' + (value || '') + expires + '; path=/'; 1139 }; 1140 1141 document.addEventListener('DOMContentLoaded', function () { 1142 (async function () { 1143 let refb = String(getCookieGlobalAnal('refb')); 1144 let ssid = String(getCookieGlobalAnal('ssid')); 1145 if (refb === null || refb === '' || refb === undefined || refb === 'undefined') var refbnew = createRef(); 1146 if (ssid === null || ssid === '' || ssid === undefined || ssid === 'undefined') var ssidnew = await createSsid(); 1147 })(); 1148 }); 1149 1150 var indexOfwww = location.hostname.indexOf('www'); 1151 var shopDomainStripped = indexOfwww === -1 ? '.' + location.hostname : location.hostname.substr(indexOfwww + 3); 1152 function getCookie(name) { 1153 var value = '; ' + document.cookie; 1154 var parts = value.split('; ' + name + '='); 1155 if (parts.length == 2) return parts.pop().split(';').shift(); 1156 } 1157 1158 function createRef() { 1159 let uuid = create_UUID(); 1160 document.cookie = 1161 'refb=' + 1162 uuid + 1163 ';expires=' + 1164 new Date(new Date().setFullYear(new Date().getFullYear() + 10)) + 1165 ';domain=' + 1166 shopDomainStripped + 1167 '; path=/'; 1168 return uuid; 1169 } 1170 1171 async function createSsid() { 1172 let uuid = create_UUID(); 1173 document.cookie = 'ssid=' + uuid + ';domain=' + shopDomainStripped + '; path=/'; 1174 return uuid; 1175 } 1176 1177 function create_UUID() { 1178 var dt = new Date().getTime(); 1179 var uuid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) { 1180 var r = ((dt + Math.random() * 16) % 16) | 0; 1181 dt = Math.floor(dt / 16); 1182 return (c == 'x' ? r : (r & 0x3) | 0x8).toString(16); 1183 }); 1184 return uuid; 1185 } 1186 1187 var BSPD_LAST_SENT_CART_PRODUCTS_KEY = 'bspd_last_sent_cart_products'; 1188 1189 function getCartProductsSignature(lineItems) { 1190 return JSON.stringify( 1191 (lineItems || []) 1192 .map(function (item) { 1193 return item.variant_id + ':' + item.quantity; 1194 }) 1195 .sort() 1196 ); 1197 } 1198 1199 function hasSameCartProductsAsLastSent(lineItems) { 1200 try { 1201 var lastSentSignature = localStorage.getItem(BSPD_LAST_SENT_CART_PRODUCTS_KEY); 1202 return lastSentSignature !== null && lastSentSignature === getCartProductsSignature(lineItems); 1203 } catch (err) { 1204 return false; 1205 } 1206 } 1207 1208 function rememberSentCartProducts(lineItems) { 1209 try { 1210 localStorage.setItem(BSPD_LAST_SENT_CART_PRODUCTS_KEY, getCartProductsSignature(lineItems)); 1211 } catch (err) {} 1212 } 1213 1214 function clearSentCartProductsMemory() { 1215 try { 1216 localStorage.removeItem(BSPD_LAST_SENT_CART_PRODUCTS_KEY); 1217 } catch (err) {} 1218 } 1219 1220 async function lookForCart(cartData = {}, isCartSub = false) { 1221 let bspdContactId = getCookieGlobalAnal('contactIdBitespeed'); 1222 let rzpContactId = getCookieGlobalAnal('rzp_unified_session_id'); 1223 1224 var cartCookie = getCookieGlobalAnal('cart'); 1225 var cartConvertedCookie = getCookieGlobalAnal(`${cartCookie}`) 1226 1227 const recentlyCartCreatedAt = getCookieGlobalAnal('bspd_cart_created_at'); 1228 1229 if (cartCookie && !cartConvertedCookie && !recentlyCartCreatedAt) { 1230 document.cookie = `bspd_cart_created_at=${new Date().getTime()}` + ';domain=' + shopDomainStripped + '; path=/'; 1231 } else if (!cartCookie && recentlyCartCreatedAt) { 1232 // reseting the cart created at cookie if it exists 1233 document.cookie = 1234 `bspd_last_cart_created_at=${recentlyCartCreatedAt}` + ';domain=' + shopDomainStripped + '; path=/'; 1235 document.cookie = `bspd_cart_created_at=;domain=${shopDomainStripped}; path=/; expires=Thu, 01 Jan 1970 00:00:00 GMT`; 1236 // cart is gone (checkout may have completed) - forget the last sent 1237 // products so a future cart with the same contents gets sent again 1238 clearSentCartProductsMemory(); 1239 } 1240 1241 if (!bspdContactId && !rzpContactId) return; 1242 1243 if (cartCookie && shopDomainStripped.includes('.neonattack.com')) { 1244 let lastTrackedCart = getCookieGlobalAnal('last_tracked_cart_event'); 1245 let lastTrackedCartLineItemsCnt = getCookieGlobalAnal('last_tracked_cart_line_items_cnt'); 1246 1247 clearInterval(intervalId); 1248 1249 if (!recentlyCartCreatedAt) 1250 document.cookie = `bspd_cart_created_at=${new Date().getTime()}` + ';domain=' + shopDomainStripped + '; path=/'; 1251 1252 if (cartCookie !== lastTrackedCart || Number(lastTrackedCartLineItemsCnt) !== cartData.item_count) { 1253 document.cookie = `${cartCookie}
1253=true` + ';domain=' + shopDomainStripped + '; path=/'; 1254 1255 document.cookie = `last_tracked_cart_event=${cartCookie}` + ';domain=' + shopDomainStripped + '; path=/'; 1256 document.cookie = 1257 `last_tracked_cart_line_items_cnt=${cartData.item_count}` + ';domain=' + shopDomainStripped + '; path=/'; 1258 1259 sendToWebhook(cartCookie, cartData); 1260 } 1261 } else if (cartCookie) { 1262 clearInterval(intervalId); 1263 1264 if (!cartConvertedCookie || isCartSub) { 1265 if (!isCartSub && (cartData?.item_count <= 0 || !cartData?.item_count || !cartData)) { 1266 // if not sent from the sub, then there are chances of cartData not being synced 1267 try { 1268 await fetch('/cart.js') 1269 .then(res => res.json()) 1270 .then(res => { 1271 cartData = res 1272 return cartData 1273 }) 1274 } catch (err) {} 1275 } 1276 1277 if (cartData?.item_count <= 0) return 1278 1279 document.cookie = `${cartCookie}=true` + ';domain=' + shopDomainStripped + '; path=/'; 1280 1281 sendToWebhook(cartCookie, cartData); 1282 } 1283 } 1284 } 1285 1286 function sendToWebhook(cartToken, cartData = {}) { 1287 let refb = getCookieGlobalAnal('refb'); 1288 1289 if (refb === null || refb === '' || refb === undefined || refb === 'undefined') { 1290 } else { 1291 const userAgent = navigator.userAgent; 1292 1293 let lineItems = []; 1294 1295 if (cartData && cartData?.items) { 1296 lineItems = cartData.items?.map((item) => { 1297 return { 1298 product_id: item.product_id, 1299 variant_id: item.id, 1300 price: item.price, 1301 quantity: item.quantity, 1302 sku: item.sku, 1303 title: item.title, 1304 vendor: item.vendor, 1305 }; 1306 }); 1307 } 1308 1309 if (hasSameCartProductsAsLastSent(lineItems)) return; 1310 1311 var postData = { 1312 at: new Date(), 1313 type: 'cartCreated', 1314 event: { 1315 cartToken: cartToken, 1316 }, 1317 page_url: window.location.href, 1318 id: String(refb), 1319 shopifyShopDomain: 'dff598-2.myshopify.com', 1320 lineItems, 1321 ref: refb, 1322 ssid: getCookieGlobalAnal('ssid'), 1323 contactId: Number.parseInt(getCookieGlobalAnal('contactIdBitespeed')), 1324 rzp_unified_session_id: getCookieGlobalAnal('rzp_unified_session_id') || undefined, 1325 platformMobile: /iPad|iPhone|iPod/.test(userAgent) ? 'ios' : /Android/.test(userAgent) ? 'android' : '', 1326 platformDesktop: /Mac/.test(userAgent) ? 'mac' : /Windows/.test(userAgent) ? 'windows' : '', 1327 }; 1328 1329 if (isTruecallerContact(postData.contactId)) postData.source = 'truecaller'; 1330 1331 rememberSentCartProducts(lineItems); 1332 1333 fetch('/apps/bitespeed?type=browser_session', { 1334 method: 'POST', 1335 headers: { 1336 'Access-Control-Allow-Origin': '*', 1337 'Access-Control-Allow-Headers': '*', 1338 'Content-Type': 'application/json', 1339 }, 1340 body: JSON.stringify(postData), 1341 }).catch((err) => { 1342 console.log('API ERROR: ', err); 1343 }); 1344 } 1345 } 1346 1347 let intervalId = setInterval(() => { 1348 if (getCookieGlobalAnal('debug') === 'true') debugger; 1349 lookForCart(); 1350 }, 1000); 1351 1352 function analyticsPost(postData) { 1353 postData.shopifyShopDomain = "dff598-2.myshopify.com"; 1354 postData.ref = getCookieGlobalAnal("refb"); 1355 postData.ssid = getCookieGlobalAnal("ssid"); 1356 postData.contactId = Number.parseInt(getCookieGlobalAnal("contactIdBitespeed")); 1357 if (isTruecallerContact(postData.contactId)) postData.source = "truecaller"; 1358 postData.rzp_unified_session_id = getCookieGlobalAnal("rzp_unified_session_id") || undefined; 1359 1360 const userAgent = navigator.userAgent; 1361 postData.platformMobile = /iPad|iPhone|iPod/.test(userAgent) ? "ios" : /Android/.test(userAgent) ? "android" : ""; 1362 postData.platformDesktop = /Mac/.test(userAgent) ? "mac" : /Windows/.test(userAgent) ? "windows" : ""; 1363 1364 // don't send browser events on multichannel if contactId is not present 1365 if (!postData.contactId && !postData.rzp_unified_session_id) { 1366 console.log("No contactId found for multichannel analytics file. Returning"); 1367 return; 1368 } 1369 1370 fetch("/apps/bitespeed?type=browser_session", { 1371 method: "POST", 1372 headers: { 1373 "Access-Control-Allow-Origin": "*", 1374 "Content-Type": "application/json", 1375 }, 1376 body: JSON.stringify(postData), 1377 }).catch((err) => { 1378 console.log("API ERROR: ", err); 1379 }); 1380 } 1381(function() { 1382 var bitespeedLayer = { 1383 cartPollInterval: 2000 1384 } 1385 var config = { 1386 linker: { 1387 domains: ['shopify.com', 'rechargeapps.com', 'recurringcheckout.com', 'carthook.com', 'checkout.com'] 1388 }, 1389 anonymize_ip: true, 1390 allow_ad_personalization_signals: true, 1391 page_title: removePii(document.title), 1392 page_location: removePii(document.location.href) 1393 } 1394 var pageView = function() { 1395 1396 }; 1397 1398 // delay page firing until the page is visible 1399 if (document.hidden === true) { 1400 var triggeredPageView = false;
1401 document.addEventListener('visibilitychange', function() { 1402 if (!document.hidden && !triggeredPageView) { 1403 pageView(); 1404 triggeredPageView = true; 1405 } 1406 }); 1407 } else { 1408 pageView() 1409 } 1410 1411 var triggerPageViewEvent = function() { 1412 var postData = { 1413 "at" : new Date(), 1414 "type": "pageViewed", 1415 "event": { 1416 url: window.location.href, 1417 }, 1418 "contactId": Number.parseInt(getCookieGlobalAnal("contactIdBitespeed")), 1419 "source": 'shopify' 1420 } 1421 1422 analyticsPost(postData); 1423 } 1424 1425 document.addEventListener('DOMContentLoaded', function() { 1426 triggerPageViewEvent() 1427 }); 1428 1429 var hasLocalStorage = (function() { 1430 try { 1431 localStorage.setItem('bitespeed_test_storage', 'test'); 1432 localStorage.removeItem('bitespeed_test_storage'); 1433 return true; 1434 } catch (ex) { 1435 return false; 1436 } 1437 })(); 1438 bitespeedLayer.ecommerce = { 1439 'currencyCode' : 'INR', 1440 'impressions' : [] 1441 }; 1442 1443 1444 1445 1446 bitespeedLayer.ecommerce.impressions = getUniqueProducts(bitespeedLayer.ecommerce.impressions); 1447 function getUniqueProducts(array){ 1448 var u = {}, a = []; 1449 for(var i = 0, l = array.length; i < l; ++i){ 1450 if(u.hasOwnProperty(array[i].id)) { 1451 continue; 1452 } 1453 a.push(array[i]); 1454 u[array[i].id] = 1; 1455 } 1456 return a; 1457 }; 1458 var loadScript = function(url, callback){ 1459 var script = document.createElement("script") 1460 script.type = "text/javascript"; 1461 if (script.readyState){ /* IE */ 1462 script.onreadystatechange = function(){ 1463 if (script.readyState == "loaded" || 1464 script.readyState == "complete"){ 1465 script.onreadystatechange = null; 1466 callback(); 1467 } 1468 }; 1469 } else { /* Others */ 1470 script.onload = function(){ 1471 callback(); 1472 }; 1473 } 1474 script.src = url; 1475 document.getElementsByTagName("head")[0].appendChild(script); 1476 } 1477 var ldTracker = function(jQuery){ 1478 jQuery(document).ready(function(){ 1479 if(bitespeedLayer && bitespeedLayer.ecommerce){ 1480 /* run list, product, and clientID scripts everywhere */ 1481 listViewScript(); 1482 productPageScript(); 1483 } 1484 }) 1485 var ldTracker = function(){ 1486 document.addEventListener('DOMContentLoaded', function() { 1487 if (typeof bitespeedLayer !== 'undefined' && bitespeedLayer.ecommerce) { 1488 // run list, product, and clientID scripts everywhere 1489 listViewScript(); 1490 productPageScript(); 1491 } 1492 }); 1493 } 1494 function listViewScript(){ 1495 if (!bitespeedLayer.ecommerce.impressions || !bitespeedLayer.ecommerce.impressions.length) return; 1496 window.setTimeout(function(){ 1497 var postData = { 1498 "at" : new Date(), 1499 "type" : "productListViewed", 1500 "page_url": window.location.href, 1501 "event" : { 1502 list_id: bitespeedLayer.ecommerce.impressions[0].list, 1503 collection_id: bitespeedLayer.ecommerce.impressions[0].collection_id, 1504 products: bitespeedLayer.ecommerce.impressions 1505 } 1506 }; 1507 analyticsPost(postData); 1508 },500) /* wait for pageview to fire first */ 1509 /* product list clicks */ 1510 } 1511 async function productPageScript(){ 1512 var product = bitespeedLayer.ecommerce.detail 1513 && bitespeedLayer.ecommerce.detail.products 1514 && bitespeedLayer.ecommerce.detail.products[0] 1515 if (product) { 1516 if(hasLocalStorage) product.list_name = localStorage.list 1517 if(hasLocalStorage) product.list_id = localStorage.list 1518 var postData = { 1519 "at" : new Date(), 1520 "type" : "productViewed", 1521 "page_url": window.location.href, 1522 "event" : product 1523 } 1524 analyticsPost(postData); 1525 } 1526 } 1527} 1528if(typeof jQuery === 'undefined'){ 1529 loadScript('https://code.jquery.com/jquery-3.7.1.min.js', function(){ 1530 jQuery191 = jQuery.noConflict(true); 1531 ldTracker(jQuery191); 1532 }); 1533} else { 1534 ldTracker(jQuery); 1535} 1536 // ldTracker(); 1537 function removePii(string) { 1538 var piiRegex = { 1539 "email": /[s&/,=]([a-zA-Z0-9_.+-]+(@|%40)[a-zA-Z0-9-]+.[a-zA-Z0-9-.]+)($|[s&/,])/, 1540 "postcode": /[s&/,=]([A-Z]{1,2}[0-9][0-9A-Z]?(s|%20)[0-9][A-Z]{2})($|[s&/,])/, 1541 }; 1542 var dlRemoved = string; 1543 for (key in piiRegex) { 1544 dlRemoved = dlRemoved.replace(piiRegex[key], 'REMOVED'); 1545 } 1546 return dlRemoved; 1547 } 1548})() 1549</script>
1549 1550
1551<script 1552 type="text/javascript" 1553 name="NAMESPACED-NOTIFY_ME" 1554> 1555 // var popup_id = ""; 1556 // // var product = null; 1557 // // var product_variants = null; 1558 // var product_variants = BspdCurrentProduct?.variants || []; 1559 // var product_id = null || ""; 1560 // var current_variant = null || ""; 1561 // var is_current_variant_available = true; 1562 // var buyNowElement = null; 1563 // var mainNewButton = null; 1564 // var notify_me_text = "Notify Me"; 1565 // var shop_domain = ""; 1566 // var dont_show_notify_me_strict = false; 1567 1568 // var variants = product.variants 1569 1570 // // variables to build custom logic for different brands 1571 // var globalFormEle = null; 1572 // var globalPrimaryBtn = null; 1573 1574 // var getParameterByNameTemp = (str, url = window.location.href) => { 1575 // str = str.replace(/[\[\]]/g, "\\$&"); 1576 // let regex = new RegExp("[?&]" + str + "(=([^&#]*)|&|#|$)").exec(url); 1577 // return regex ? (regex[2] ? decodeURIComponent(regex[2].replace(/\+/g, " ")) : "") : null; 1578 // } 1579 1580 // var variantParam = getParameterByNameTemp("variant"); 1581 // if (variantParam && !isNaN(variantParam)) { 1582 // // getting variant param from the url and if it is a proper number set the current_variant as that 1583 // current_variant = Number(variantParam); 1584 // } else if (!current_variant && Array.isArray(variants) && variants.length > 0) { 1585 // // else set the first variant as the current variant 1586 // current_variant = variants[0].id; 1587 // } 1588 1589 // // console.log(product, product_id, current_variant, variants, "DATA IS HEREEE"); 1590 1591 // // var popup_id = ""; 1592 // // var product = {}; 1593 // // var product_id = ""; 1594 // // var current_variant = ""; 1595 // // var is_current_variant_available = false; 1596 // // var buyNowElement = null; 1597 // // var mainNewButton = null; 1598 1599 // // const variants = []; 1600 1601 // var CREATED_NOTIFY_ME_BUTTON_CLASS = "bitespeed-notify-me-button"; 1602 // var CREATED_NOTIFY_ME_BUTTON_CLASS_SELECTOR = `.${CREATED_NOTIFY_ME_BUTTON_CLASS}`; 1603 // var CREATED_NOTIFY_ME_BUTTON_PARENT_CLASS = "bitespeed-notify-me-button-parent"; 1604 // var CREATED_NOTIFY_ME_BUTTON_PARENT_CLASS_SELECTOR = `.${CREATED_NOTIFY_ME_BUTTON_PARENT_CLASS}`; 1605 1606 // var notifyMeTexts = ["notify me", "notify"]; 1607 // var soldOutTexts = ["sold out", "out of stock"]; 1608 1609 // var wordsToRemove = ["sold out", "out of stock"].concat(notifyMeTexts); 1610 // var buyButtonTexts = ["buy now", "buy it", "buy it now", "sold out"]; 1611 // 1612</script>
1612 1613<!-- END app snippet --> 1614<!-- BEGIN app snippet: bitespeed-back-in-stock -->
1614<script 1615 type="text/javascript" 1616 name="BITESPEED-BIS-NOTIFY_ME" 1617> 1618 var entityHandle = null; 1619 var popup_id = ""; 1620 // var product = null; 1621 // var product_variants = null; 1622 var product_variants = BspdCurrentProduct?.variants || []; 1623 var product_id = null; 1624 var current_variant = null; 1625 var is_current_variant_available = true; 1626 var buyNowElement = null; 1627 var mainNewButton = null; 1628 var notify_me_text = "Notify Me"; 1629 var shop_domain = ""; 1630 var dont_show_notify_me_strict = false; 1631 var always_show_notify_me = false; 1632 1633 var variants = BspdCurrentProduct?.variants 1634 var productCollections = BspdCurrentProduct?.collections 1635 1636 window.product_id = product_id; 1637 window.current_variant = current_variant; 1638 1639 // variables to build custom logic for different brands 1640 var globalFormEle = null; 1641 var globalPrimaryBtn = null; 1642 var globalParentElement = null; 1643 1644 var variantParam = getParameterByName("variant"); 1645 if (variantParam && !isNaN(variantParam)) { 1646 // getting variant param from the url and if it is a proper number set the current_variant as that 1647 current_variant = Number(variantParam); 1648 // } else if ( 1649 // !current_variant || 1650 // !product_variants || 1651 // (Array.isArray(product_variants) && product_variants.length <= 0) || 1652 // !Array.isArray(product_variants) 1653 // ) { 1654 // const productFetch = await fetch(`/products/${entityHandle}.js`, { 1655 // method: "GET", 1656 // headers: { 1657 // "Content-Type": "application/json", 1658 // }, 1659 // }).then((res) => res.json()); 1660 1661 // if (productFetch) { 1662 // console.log("Product fetched from /products/:handle.js", productFetch); 1663 1664 // product = productFetch; 1665 // variants = productFetch.variants; 1666 // } 1667 } else if (!current_variant && Array.isArray(BspdCurrentProduct?.variants) && BspdCurrentProduct?.variants.length > 0) { 1668 // change the current_variant to the first variant in the url 1669 1670 // window.history.replaceState( 1671 // {}, 1672 // document.title, 1673 // window.location.pathname + "?variant=" + product_variants[0].id 1674 // ); 1675 1676 // getting the first variant that is available 1677 // if no variant is available then set the current_variant to the first variant 1678 for (let i = 0; i < product_variants.length; i++) { 1679 if (product_variants[i].available) { 1680 current_variant = product_variants[i].id; 1681 break; 1682 } 1683 } 1684 1685 // else set the first variant as the current variant 1686 if (!current_variant) { 1687 current_variant = product_variants[0].id; 1688 } 1689 } 1690 1691 var CREATED_NOTIFY_ME_BUTTON_CLASS = "bitespeed-notify-me-button"; 1692 var CREATED_NOTIFY_ME_BUTTON_CLASS_SELECTOR = `.${CREATED_NOTIFY_ME_BUTTON_CLASS}`; 1693 var CREATED_NOTIFY_ME_BUTTON_PARENT_CLASS = "bitespeed-notify-me-button-parent"; 1694 var CREATED_NOTIFY_ME_BUTTON_PARENT_CLASS_SELECTOR = `.${CREATED_NOTIFY_ME_BUTTON_PARENT_CLASS}`; 1695 1696 var notifyMeTexts = ["notify me", "notify"]; 1697 var soldOutTexts = ["sold out", "out of stock"]; 1698 1699 var wordsToRemove = ["sold out", "out of stock"].concat(notifyMeTexts); 1700 var buyButtonTexts = ["buy now", "buy it", "buy it now", "sold out"]; 1701 1702 // Builds a selector array from a list of breakpoint rules plus a base list. 1703 // Each rule is { maxWidth, selectors }: its selectors are included only when 1704 // window.innerWidth < maxWidth. Matching rules are sorted by maxWidth ascending, 1705 // so selectors for smaller screens are given higher priority (placed first), 1706 // followed by the always-included base selectors. 1707 // 1708 // To target a new screen size in future, just add another rule, e.g. 1709 // { maxWidth: 480, selectors: ["#SomeSmallPhoneOnlySelector"] } 1710 function buildResponsiveSelectors(responsiveRules, baseSelectors) { 1711 var width = window.innerWidth; 1712 var responsiveSelectors = responsiveRules 1713 .slice() 1714 .sort(function (a, b) { 1715 return a.maxWidth - b.maxWidth; 1716 }) 1717 .filter(function (rule) { 1718 return width < rule.maxWidth; 1719 }) 1720 .reduce(function (acc, rule) { 1721 return acc.concat(rule.selectors); 1722 }, []); 1723 1724 return responsiveSelectors.concat(baseSelectors); 1725 } 1726 1727 var default_formSelector = buildResponsiveSelectors( 1728 [ 1729 // mobile-only custom store selectors 1730 { maxWidth: 750, selectors: [".custom-fixed-add-to-cart"] }, 1731 ], 1732 [ 1733 // custom store selectors 1734 ".custom-fixed-add-to-cart-desktop", 1735 1736 // shopify default selectors 1737 "form.product_form", 1738 "form.productForm", 1739 ".product-form", 1740 ".product_form", 1741 ".ProductForm", 1742 ".shopify-product-form", 1743 ".product-single__form", 1744 "form[action='/cart/add']", 1745 "form[action='/cart/add.js']", 1746 ] 1747 ); 1748 var default_buttonSelector = buildResponsiveSelectors( 1749 [ 1750 // mobile-only custom store selectors 1751 { maxWidth: 750, selectors: ["#ProductPageAddToCartMobile-"] }, 1752 ], 1753 [ 1754 // custom store selectors 1755 "#ProductPageAddToCartDesktop-", 1756 1757 // shopify default selectors 1758 "button[type='submit']", 1759 "input[name='add']", 1760 "button[name='add']", 1761 "input[type='submit']", 1762 "input[value='Sold out']", 1763 ] 1764 ); 1765 1766 const modifyDefaultSelectorsForBrands = () => { 1767 const shopUrl = window.Shopify.shop; 1768 1769 if (shopUrl === "vip-lhb2021.myshopify.com") { 1770 default_formSelector = [".product__form__wrapper"]; 1771 default_buttonSelector = [".wishlisthero-product-page-button-container"]; 1772 // soldOutTexts = soldOutTexts.concat(["add to wishlist"]) 1773 buyButtonTexts = buyButtonTexts.concat(["add to wishlist"]); 1774 } 1775 1776 if (shopUrl === "label-s4u.myshopify.com") { 1777 default_formSelector = [".js-prod-form-submit", "form.product__form-buttons"].concat(default_formSelector); 1778 // The Add to Cart is an input with ID addToCart 1779 default_buttonSelector = ["#addToCart", "input[type='submit']"].concat(default_buttonSelector); 1780 } 1781 }; 1782 modifyDefaultSelectorsForBrands(); 1783 1784 // UTILS 1785 function checkIfStringIncludes(string, words) { 1786 return words.some((word) => string.toLowerCase().includes(word.toLowerCase())); 1787 } 1788 function isDefined(value) { 1789 return null != value; 1790 } 1791 function getParameterByName(str, url = window.location.href) { 1792 str = str.replace(/[\[\]]/g, "\\$&"); 1793 let regex = new RegExp("[?&]" + str + "(=([^&#]*)|&|#|$)").exec(url); 1794 return regex ? (regex[2] ? decodeURIComponent(regex[2].replace(/\+/g, " ")) : "")
1794: null; 1795 } 1796 function addMargin(button) { 1797 // button.style.margin = "5px"; 1798 button.style.marginTop = "5px"; 1799 button.style.marginLeft = "5px"; 1800 button.style.marginRight = "5px"; 1801 button.style.marginBottom = "5px"; 1802 } 1803 1804 function getVariantIdToNotifyFor() { 1805 if (!always_show_notify_me) return current_variant; 1806 1807 const isCurrentOutOfStock = (product_variants || []).some(function (variant) { 1808 return Number(variant.id) === Number(current_variant) && variant.available === false; 1809 }); 1810 1811 return isCurrentOutOfStock ? current_variant : getFirstOutOfStockVariantId() || current_variant; 1812 } 1813 1814 function onNotifyButtonClicked() { 1815 // using global variable - bitespeed_popups 1816 // exact methods and constants from bitespeed-popup.js file 1817 // console.log(popup_id, "AAAAA", product_id, "VVVV", current_variant, `${(popup_id + "").trim()}:bitespeed_popup`); 1818 bitespeed_popups[`${(popup_id + "").trim()}:bitespeed_popup`].show("", true, { 1819 popupTrigger: "back_in_stock", 1820 productId: product_id, 1821 variantId: getVariantIdToNotifyFor(), 1822 }); 1823 } 1824 1825 function addCustomStylesBasedOnBrand(button, isParent) { 1826 if(isParent) { 1827 switch (window.Shopify.shop) { 1828 case 'belvish.myshopify.com': { 1829 button.style.marginTop = '10px'; 1830 button.style.width = '100%'; 1831 } 1832 case 'overlays-clothing.myshopify.com': { 1833 button.style.marginBottom = '16px'; 1834 } 1835 default: 1836 break; 1837 } 1838 return 1839 } 1840 1841 switch (window.Shopify.shop) { 1842 case "headphone-zone.myshopify.com": { 1843 button.style.width = "100%"; 1844 break; 1845 } 1846 case "the-indian-ethnic-company.myshopify.com": { 1847 button.style.margin = "8px 0px"; 1848 break; 1849 } 1850 default: 1851 break; 1852 } 1853 1854 return button; 1855 } 1856 1857 /** 1858 * method to add neccessary properties to the 1859 * new notify button... handling many edges cases as well... 1860 */ 1861 function addNeccessaryProperties(button) { 1862 // adding all the neccessary properties 1863 button.type = "button"; 1864 button.name = "notify_me"; 1865 button.disabled = false; 1866 button.ariaDisabled = false; // edge case, few websites are using aria-disabled 1867 // adding/overriding some styles 1868 button.style.display = "inline-block"; 1869 button.style.opacity = "1"; 1870 button.style.pointerEvents = "auto"; 1871 button.style.cursor = "pointer"; 1872 button.classList.remove("disabled"); // edge case: 1873 // removing the click events from 1874 button.click = () => {}; 1875 button.onclick = () => {}; 1876 1877 // some custom brand specific attributes or properties 1878 button.removeAttribute("data-notification-popup"); 1879 button.removeAttribute("data-add-to-cart"); 1880 1881 const customButton = addCustomStylesBasedOnBrand(button); 1882 1883 return customButton; 1884 } 1885 1886 function ifPassedNumberCondition(condition, conditionValue, actualValue) { 1887 if (condition === "greater than") { 1888 return actualValue > conditionValue; 1889 } else if (condition === "less than") { 1890 return actualValue < conditionValue; 1891 } else if (condition === "equals to") { 1892 return actualValue === conditionValue; 1893 } else if (condition === "not equals to") { 1894 return actualValue !== conditionValue; 1895 } else if (condition === "greater than or equals to") { 1896 return actualValue >= conditionValue; 1897 } else if (condition === "less than or equals to") { 1898 return actualValue <= conditionValue; 1899 } 1900 return false; 1901 } 1902 1903 function isVariantAvailableBasedOnPopupTriggers() { 1904 /** 1905 * this is a part of popup triggers only 1906 * but being handled here as there are no option for variant-wise trigger 1907 */ 1908 if ( 1909 window?.bspdPopupProductMetadata !== undefined && 1910 window?.bspdPopupProductMetadata !== null 1911 ) { 1912 const { 1913 popupId, 1914 value, 1915 condition, 1916 1917 ...variants 1918 } = window.bspdPopupProductMetadata || {}; 1919 console.log(variants, "variants asldfjas"); 1920 1921 if (variants[window.ShopifyAnalytics.meta.selectedVariantId]) { 1922 const inventoryQuantity = 1923 variants[window.ShopifyAnalytics.meta.selectedVariantId] 1924 ?.inventoryQuantity || null; 1925 1926 if (inventoryQuantity === null) return true; 1927 1928 return !ifPassedNumberCondition(condition, value, inventoryQuantity); 1929 } 1930 1931 return true; 1932 } 1933 1934 return true; 1935 } 1936 1937 function checkVariantIsAvailable() { 1938 if (!product_variants || product_variants.length <= 0) { 1939 is_current_variant_available = true; 1940 return true; 1941 } 1942 1943 for (let i = 0; i < product_variants.length; i++) { 1944 const variantId = Number(product_variants[i].id); 1945 const currentVariantId = Number(current_variant); 1946 1947 if (variantId === currentVariantId) { 1948 if (product_variants[i].available === null || product_variants[i].available === undefined) dont_show_notify_me_strict = true; 1949 1950 is_current_variant_available = product_variants[i].available; 1951 1952 const secondaryPopupTriggerCondition = isVariantAvailableBasedOnPopupTriggers(); 1953 1954 return is_current_variant_available && secondaryPopupTriggerCondition; 1955 } 1956 } 1957 1958 const secondaryPopupTriggerCondition = isVariantAvailableBasedOnPopupTriggers(); 1959 1960 return false && secondaryPopupTriggerCondition; 1961 } 1962 1963 function checkOneVariantIsAvailable() { 1964 let is_variant_available = true, 1965 is_variant_found = true; 1966 1967 if (!current_variant) return null; 1968 1969 if (!product_variants || product_variants.length <= 0) { 1970 is_vairant_available = true; 1971 return false;
1972 } 1973 1974 for (let i = 0; i < product_variants.length; i++) { 1975 let variant = product_variants[i]; 1976 1977 // Number(variant.id) === Number(current_variant) && (is_variant_found = variant.available), 1978 // (is_variant_available = is_variant_available || variant.available); 1979 if (Number(variant.id) === Number(current_variant)) { 1980 is_variant_found = variant.available; 1981 is_variant_available = is_variant_available || variant.available; 1982 } 1983 } 1984 1985 const secondaryPopupTriggerCondition = isVariantAvailableBasedOnPopupTriggers(); 1986 1987 return (is_variant_available && is_variant_found && product_variants.length >= 1) && secondaryPopupTriggerCondition; 1988 } 1989 1990 function hasAnyOutOfStockVariant() { 1991 if (!Array.isArray(product_variants) || product_variants.length <= 0) return false; 1992 1993 return product_variants.some(function (variant) { 1994 return variant.available === false; 1995 }); 1996 } 1997 1998 // retexts in place so the wrappers a theme animates against (fill overlay, text 1999 // span, loader) survive - wiping them leaves the button hovering to blank 2000 function bspdRetextClonedButton(button, text) { 2001 const walker = document.createTreeWalker(button, NodeFilter.SHOW_TEXT, null); 2002 let replaced = false; 2003 let node; 2004 2005 while ((node = walker.nextNode())) { 2006 if (!(node.nodeValue || "").trim()) continue; 2007 2008 node.nodeValue = replaced ? "" : text; 2009 replaced = true; 2010 } 2011 2012 if (!replaced) button.textContent = text; 2013 } 2014 2015 function getFirstOutOfStockVariantId() { 2016 if (!Array.isArray(product_variants)) return null; 2017 2018 for (let i = 0; i < product_variants.length; i++) { 2019 if (product_variants[i].available === false) return product_variants[i].id; 2020 } 2021 2022 return null; 2023 } 2024 2025 function refreshBackInStockButton() { 2026 if (always_show_notify_me) { 2027 bspdAddAlwaysVisibleNotifyButton(); 2028 return; 2029 } 2030 2031 if (is_current_variant_available) { 2032 let buttonParent = document.querySelector(CREATED_NOTIFY_ME_BUTTON_PARENT_CLASS_SELECTOR); 2033 2034 isDefined(buttonParent) && (buttonParent.innerHTML = ""), bspdAddBackInStockButton(); 2035 } else { 2036 bspdAddBackInStockButton(); 2037 } 2038 } 2039 2040 /** 2041 * This function is used to check if the variant is available and reload the button 2042 * if it is available. 2043 */ 2044 function delayedRefreshButton() { 2045 setTimeout(function () { 2046 const newVariant = getParameterByName("variant") || window.ShopifyAnalytics.meta.selectedVariantId; 2047 if (newVariant === null) { 2048 return; 2049 } 2050 2051 let tempVariant = current_variant; 2052 current_variant = Number(newVariant); 2053 2054 if (tempVariant !== current_variant) { 2055 checkVariantIsAvailable(); 2056 2057 refreshBackInStockButton(); 2058 } 2059 }, 2); 2060 } 2061 2062 // custom logic for different brands 2063 function showNotifyBTNOnCustomBrandLogicPass() { 2064 /** 2065 * this variable is a by pass mechanism 2066 * mostly made when safari is not getting enought variant availability data 2067 * so we are not showing notify me button 2068 * in that case... 2069 */ 2070 if (dont_show_notify_me_strict) return false; 2071 2072 // dependent on primary button 2073 if (globalPrimaryBtn) { 2074 if (shop_domain === "neeshperfumes.com") { 2075 if (String(globalPrimaryBtn.innerText).toLowerCase() === "validate") return false; 2076 } else if (shop_domain === "carrypro.in") { 2077 const getButtonAttributes = globalPrimaryBtn.attributes; 2078 const disabledAttribute = getButtonAttributes.getNamedItem("disabled"); 2079 2080 return true; 2081 return disabledAttribute && disabledAttribute.value === "disabled"; 2082 // } else if (shop_domain === 'theindianethnicco.com') { 2083 // // custom request of 'theindianethnicco' 2084 // // to only show when all the variants are out of stock 2085 // return product_variants.every(variant => !variant.available); 2086 } 2087 } 2088 2089 return true; 2090 } 2091 2092 /** 2093 * function to add custom logic for notify me button 2094 * for few brands the existing button criteria is not enough 2095 * or maybe the button is not getting rendered properly 2096 */ 2097 function addCustomLogicForNotifyMeButton() { 2098 // if(shop_domain === 'capresebags.com') { 2099 // const form = document.getElementById('wishlisthero-product-page-button-container'); 2100 // if(form) { 2101 // const button = form.getElementsByClassName('product__form--add-to-cart'); 2102 // // add the button at the beginning of the form 2103 // if(button && button.length > 0) { 2104 // console.log(111111) 2105 // createBackInStockButton(button[0], true); 2106 // } 2107 // } 2108 // } 2109 } 2110 2111 /** 2112 * this method renders the notify me button taking the reference from the 2113 * primary original button data 2114 */ 2115 function createBackInStockButton(buttonReference, dontDisableOgButton = false) { 2116 let button = document.querySelector(CREATED_NOTIFY_ME_BUTTON_CLASS_SELECTOR); 2117 2118 if (!isDefined(button)) { 2119 // For stores with reactive themes, create fresh button instead of cloning 2120 // to avoid theme framework overwriting button text/state via cloned attributes 2121 let newButton; 2122 if (window.Shopify.shop === 'hophead-apparels.myshopify.com') { 2123 newButton = document.createElement("button"); 2124 newButton.className = buttonReference.className; 2125 } else { 2126 newButton = buttonReference.cloneNode(true) || document.createElement("button"); 2127 } 2128 addNeccessaryProperties(newButton, buttonReference); 2129 2130 if (always_show_notify_me) newButton.removeAttribute("id"); 2131 2132 newButton.classList.add(CREATED_NOTIFY_ME_BUTTON_CLASS); 2133 2134 if (always_show_notify_me) { 2135 bspdRetextClonedButton(newButton, notify_me_text); 2136 newButton.onclick = () => {}; 2137 newButton.click = () => {}; 2138 newButton.setAttribute("aria-label", notify_me_text); 2139 } else { 2140 newButton.innerText = ""; 2141 newButton.onclick = () => {}; 2142 newButton.click = () => {}; 2143 newButton.removeEventListener("click", () => {}); 2144 2145 let textAddedInChild = false;
2146 2147 for (let child of buttonReference.childNodes) { 2148 let clonedChild = child.cloneNode(true); 2149 clonedChild.innerText = ""; 2150 clonedChild.onclick = () => {}; 2151 clonedChild.click = () => {}; 2152 clonedChild.removeEventListener("click", () => {}); 2153 2154 if (child.nodeType === 1) { 2155 if (checkIfStringIncludes((child.innerText + "").toLowerCase(), wordsToRemove) && !textAddedInChild) { 2156 textAddedInChild = true; 2157 clonedChild.innerText = notify_me_text; 2158 } 2159 2160 if (window.Shopify.shop === 'hophead-apparels.myshopify.com' && clonedChild.innerText === "") continue; 2161 2162 newButton.appendChild(clonedChild); 2163 } 2164 } 2165 2166 if (!textAddedInChild) { 2167 newButton.innerText = notify_me_text; 2168 } 2169 } 2170 2171 /** 2172 * removing the disabled class from the button 2173 */ 2174 if (!dontDisableOgButton) 2175 if (isDefined(buttonReference)) { 2176 for (let i = 0; i < newButton.classList.length; i++) { 2177 if ( 2178 "disabled" === newButton.classList[i] || 2179 "pe_none" === newButton.classList[i] || 2180 "product__submit__add" === newButton.classList[i] || 2181 newButton.classList[i].includes("disabled") 2182 ) 2183 newButton.classList.remove(newButton.classList[i]); 2184 } 2185 } 2186 2187 newButton.style = "cursor: pointer !important; visibility: visible; display: block !important; position: relative; overflow: hidden;"; 2188 2189 if (always_show_notify_me) newButton.style.width = "100%"; 2190 2191 if (window.Shopify.shop === '3b0520-2.myshopify.com') { 2192 newButton.style = `${newButton.style}; color: #ffffff !important; background-color: #0C1929 !important;`; 2193 } else if (window.Shopify.shop === 'angel-rocket-india.myshopify.com') { 2194 newButton.style = `${newButton.style}; color: #FF7E7C !important;`; 2195 } else if (window.Shopify.shop === 'sz80fm-5t.myshopify.com') { 2196 newButton.style = `${newButton.style}; display: flex !important;`; 2197 } else if (window.Shopify.shop === 'label-s4u.myshopify.com') { 2198 // Step 1: Fix input value (change "Sold Out" to "Notify me") 2199 if (newButton.tagName === 'INPUT') { 2200 newButton.value = notify_me_text; 2201 newButton.type = 'button'; 2202 } 2203 2204 // Step 2: Remove disabled state 2205 newButton.removeAttribute('disabled'); 2206 newButton.removeAttribute('aria-disabled'); 2207 newButton.classList.remove('disabled'); 2208 2209 // Step 3: Remove theme classes that trigger 2210 newButton.classList.remove('AddtoCart'); 2211 newButton.classList.remove('js-ajax-submit'); 2212 newButton.removeAttribute('name'); 2213 newButton.removeAttribute('id'); 2214 newButton.removeAttribute('onclick'); 2215 2216 // Step 4: Custom styling - Black background, White text 2217 newButton.style.cssText += `; 2218 background-color: #000000 !important; 2219 color: #ffffff !important; 2220 border: 2px solid #000000 !important; 2221 cursor: pointer !important; 2222 opacity: 1 !important; 2223 width: 100% !important; 2224 `; 2225 } 2226 2227 if (!buyNowElement) { 2228 addMargin(newButton); 2229 addMargin(buttonReference); 2230 } 2231 2232 let buttonParent = document.querySelector(CREATED_NOTIFY_ME_BUTTON_PARENT_CLASS_SELECTOR); 2233 addCustomStylesBasedOnBrand(buttonParent, true) 2234 2235 if (showNotifyBTNOnCustomBrandLogicPass()) { 2236 // isDefined(buttonParent) && 2237 buttonParent.appendChild(newButton), 2238 (newButton.onclick = () => { 2239 onNotifyButtonClicked(); 2240 }), 2241 (newButton.ontouchstart = () => { 2242 onNotifyButtonClicked(); 2243 }); 2244 2245 if (!always_show_notify_me && buyNowElement && window.Shopify.shop !== 'label-s4u.myshopify.com') { 2246 buyNowElement.style.display = "none"; 2247 } 2248 2249 buttonParent.style.display = "block"; 2250 if (!always_show_notify_me) globalParentElement.style.display = "block"; 2251 } 2252 } 2253 } 2254 2255 function createBackInStockButtonParent(form, buttonReference) { 2256 let parent = document.querySelector(CREATED_NOTIFY_ME_BUTTON_PARENT_CLASS_SELECTOR); 2257 mainNewButton = parent; 2258 2259 if (!isDefined(parent)) { 2260 let newParent = document.createElement("div"); 2261 newParent.classList.add(CREATED_NOTIFY_ME_BUTTON_PARENT_CLASS); 2262 2263 if (always_show_notify_me) newParent.style.width = "100%"; 2264 2265 globalParentElement = buttonReference.parentElement; 2266 2267 // forcing block here kills the theme's own grid/flex row and its gap 2268 if (!always_show_notify_me) globalParentElement.style.display = "block"; 2269 2270 if (buttonReference.nextSibling) { 2271 globalParentElement.insertBefore(newParent, buttonReference.nextSibling); 2272 } else { 2273 globalParentElement.appendChild(newParent); 2274 } 2275 mainNewButton = newParent; 2276 // form.appendChild(newParent); 2277 } 2278 createBackInStockButton(buttonReference); 2279 } 2280 2281 function bspdAddAlwaysVisibleNotifyButton() { 2282 const existingParent = document.querySelector(CREATED_NOTIFY_ME_BUTTON_PARENT_CLASS_SELECTOR); 2283 2284 if (!hasAnyOutOfStockVariant()) { 2285 if (isDefined(existingParent)) existingParent.style.display = "none"; 2286 return; 2287 } 2288 2289 if (isDefined(document.querySelector(CREATED_NOTIFY_ME_BUTTON_CLASS_SELECTOR))) { 2290 if (isDefined(existingParent)) existingParent.style.display = "block"; 2291 return; 2292 } 2293 2294 const formSelector = default_formSelector.find((e) => document.querySelector(e)); 2295 if (!formSelector) return false;
2296 2297 const formElement = document.querySelector(formSelector); 2298 if (!formElement) return false; 2299 globalFormEle = formElement; 2300 2301 const buttonSelector = default_buttonSelector.find((e) => 2302 document.querySelector(formSelector + " " + e), 2303 ); 2304 if (!buttonSelector) return false; 2305 2306 const primaryButton = document.querySelector(formSelector + " " + buttonSelector); 2307 if (!primaryButton) return false; 2308 globalPrimaryBtn = primaryButton; 2309 2310 return createBackInStockButtonParent(formElement, primaryButton); 2311 } 2312 2313 function bspdAddBackInStockButton() { 2314 if (always_show_notify_me) return bspdAddAlwaysVisibleNotifyButton(); 2315 2316 const is_one_variant_available = checkOneVariantIsAvailable(); 2317 2318 if (is_one_variant_available === null) { 2319 return; 2320 } 2321 2322 if (is_one_variant_available) { 2323 if (mainNewButton) mainNewButton.style.display = "none"; 2324 if (buyNowElement) { 2325 buyNowElement.style.display = "block"; 2326 } 2327 if (window.Shopify.shop === 'label-s4u.myshopify.com' && globalParentElement) { 2328 globalParentElement.style.display = ""; 2329 } 2330 return; 2331 } else { 2332 if (buyNowElement && window.Shopify.shop !== 'label-s4u.myshopify.com') { 2333 buyNowElement.style.display = "none"; 2334 } 2335 if (mainNewButton) mainNewButton.style.display = "block"; 2336 } 2337 2338 let formSelector = default_formSelector.find((e) => document.querySelector(e)); 2339 let formElement = document.querySelector(formSelector); 2340 globalFormEle = formElement; 2341 2342 let buttonSelector = default_buttonSelector.find((e) => document.querySelector(formSelector + " " + e)); 2343 let primaryButton = document.querySelector(formSelector + " " + buttonSelector); 2344 globalPrimaryBtn = primaryButton; 2345 2346 let siblingElements = Array.from(formElement.querySelectorAll("a, button, input")); 2347 2348 buyNowElement = siblingElements.find((el) => { 2349 // Skip Shopify payment buttons to prevent cloning the wrong button 2350 if (el.classList.contains('shopify-payment-button__button')) return false; 2351 2352 // Skip GoKwik button for label-s4u - only use #addToCart input 2353 if (window.Shopify.shop === 'label-s4u.myshopify.com' && el.id === 'gokwik-buy-now') return false; 2354 2355 let innerText = (el.innerText + "").toLowerCase(); 2356 let value = (el.value + "").toLowerCase(); 2357
2358 return checkIfStringIncludes(innerText, buyButtonTexts) || checkIfStringIncludes(value, buyButtonTexts); 2359 }); 2360 2361 const backInStockButtonParent = document.querySelector(CREATED_NOTIFY_ME_BUTTON_PARENT_CLASS_SELECTOR); 2362 const isPrimaryButtonOutOfStock = checkIfStringIncludes((primaryButton.innerText + "").toLowerCase(), soldOutTexts); 2363 2364 return primaryButton && 2365 (primaryButton.disabled || primaryButton.hidden || primaryButton.classList.contains("disabled")) 2366 ? createBackInStockButtonParent(formElement, buyNowElement || primaryButton) 2367 : !primaryButton && backInStockButtonParent 2368 ? createBackInStockButton(primaryButton) 2369 : !isPrimaryButtonOutOfStock || primaryButton || backInStockButtonParent 2370 ? createBackInStockButtonParent(formElement, buyNowElement || primaryButton) 2371 : false; 2372 } 2373 2374 const storeHaventSetupVariantChange = ['stylobug.myshopify.com'].includes(window.Shopify.shop) 2375 2376 function addPageChangeListenerEvents() { 2377 let timer = null; 2378 2379 document.addEventListener("popstate", (e) => { 2380 delayedRefreshButton(); 2381 2382 if (storeHaventSetupVariantChange) { 2383 if (timer) clearTimeout(timer); 2384 timer = setTimeout(() => { 2385 // doing this will take sometime, and check for manual variant change event/variable 2386 delayedRefreshButton(); 2387 }, 200); 2388 } 2389 }), 2390 document.addEventListener("change", (e) => { 2391 delayedRefreshButton(); 2392 2393 if (storeHaventSetupVariantChange) { 2394 if (timer) clearTimeout(timer); 2395 timer = setTimeout(() => { 2396 // doing this will take sometime, and check for manual variant change event/variable 2397 delayedRefreshButton(); 2398 }, 200); 2399 } 2400 }), 2401 (function () { 2402 let e = location.href; 2403 new MutationObserver(() => { 2404 const url = location.href; 2405 if (url !== e) { 2406 e = url; 2407 delayedRefreshButton(); 2408 2409 if (storeHaventSetupVariantChange) { 2410 if (timer) clearTimeout(timer); 2411 timer = setTimeout(() => { 2412 // doing this will take sometime, and check for manual variant change event/variable 2413 delayedRefreshButton(); 2414 }, 200); 2415 } 2416 } 2417 }).observe(document.body, { 2418 subtree: !0, 2419 childList: !0, 2420 }); 2421 2422 // new MutationObserver(() => { 2423 // delayedRefreshButton(); 2424 // }).observe(document.body, { 2425 // childList: true, 2426 // subtree: true, 2427 // // attributes: true, 2428 // // characterData: true 2429 // }); 2430 })(); 2431 } 2432 2433 function passedBrandInitLogic() { 2434 const shopUrl = window.Shopify.shop; 2435 2436 switch (shopUrl) { 2437 case "headphone-zone.myshopify.com": 2438 if ((BspdCurrentProduct?.tags || []).some(tag => tag.toLowerCase() === "hidenotify")) 2439 return false; 2440 break; 2441 default: 2442 return true; 2443 break; 2444 } 2445 2446 return true; 2447 } 2448 2449 function initNotifyFrontendService(popupid, notifyMeText, shopDomain = "", alwaysShow) { 2450 if (!passedBrandInitLogic()) { 2451 console.log("Notify Me Service is not initialized due to brand specific logic."); 2452 return; 2453 } 2454 2455 setTimeout(() => { 2456 popup_id = popupid; 2457 notify_me_text = notifyMeText || "Notify Me"; 2458 shop_domain = shopDomain || ""; 2459 always_show_notify_me = alwaysShow === true; 2460 2461 if (!window.location.pathname.startsWith("/products") && !window.location.pathname.startsWith("/collections")) { 2462 console.log("Notify Me Service is not available on this page"); 2463 return; 2464 } 2465 2466 const renderedNotifyMeButton = bspdAddBackInStockButton(); 2467 2468 console.log("Notify Me Service Initialized"); 2469 2470 if (renderedNotifyMeButton === false) { 2471 console.log('Cannot render "Notify Me" button due to CSS policies. Please contact support for assistance.'); 2472 addCustomLogicForNotifyMeButton(); 2473 } 2474 2475 addPageChangeListenerEvents(); 2476 }, 1); 2477 } 2478</script>
2478 2479<!-- END app snippet --> 2480 2481
2482<script defer src="https://cdn.shopify.com/extensions/01a11ad0-5214-7f11-94df-83da682faebf/bitespeed-whatsapp-marketing-1296/assets/bspd-fp-experiment.js"></script>
2482 2483 2484 2485
2485<script defer src="https://cdn.shopify.com/extensions/01a11ad0-5214-7f11-94df-83da682faebf/bitespeed-whatsapp-marketing-1296/assets/bitespeed-popups.js"></script>
2485 2486 2487 2488 2489<!-- END app block --><!-- BEGIN app block: shopify://apps/buywithamazon/blocks/bwa_widgets/019f939a-05fc-7521-bfb7-350cfc2a506a --> 2490
2491<script src="https://deliveredbyamazon.in/v2/assets/main.min.js?v=1784887631667" data-use-service-core defer></script>
vendor: 1 bytes, line 2491
2491
2492<script> 2493 window.storeId = "dff598-2"; 2494</script>
2494 2495 2496<!-- END app block -->
2496<script src="https://cdn.shopify.com/extensions/01a11b30-98d5-7ae3-b2f4-f79b3c6f32c4/judgeme-775/assets/loader.js" type="text/javascript" defer="defer"></script>
vendor: 1 bytes, line 2496
2496
2497<script src="https://cdn.shopify.com/extensions/01a0f78b-cf1f-7b9e-8fc1-e22a71387864/reelcart-1-244/assets/reelcart-loader.js" type="text/javascript" defer="defer"></script>
2497 2498<link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
2499<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: 61930078368,url: window.location.href,navigation_start,duration: currentMs - navigation_start,session_token,page_type: "cart"};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 2499
2499
2500<script> 2501 window.__TREKKIE_SHIM_QUEUE = window.__TREKKIE_SHIM_QUEUE || []; 2502</script>
vendor: 1 bytes, line 2502
2502
2503<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}
2503).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: 61930078368,storefrontBaseUrl: "https://dharishahayurveda.com",extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint: "https://dharishahayurveda.com/.well-known/shopify/monorail/unstable/produce_batch",surface: "storefront-renderer",enabledBetaFlags: ["4c64608a","16072cab","8450a54b"],webPixelsConfigList: [{"id":"4703879328","configuration":"{\"accountID\":\"7685e142-ae23-4ad8-af27-3463e4214945\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"391f26b162705aba0ea03aa59c590b72","type":"APP","apiClientId":258674589697,"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"}
2503,{"id":"1628569760","configuration":"{\"accountID\":\"7685e142-ae23-4ad8-af27-3463e4214945\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"87e26c382e3eac7cc21341be539322d1","type":"APP","apiClientId":38417629185,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"1055031456","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":"883884192","configuration":"{\"accountID\":\"dff598-2.myshopify.com\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"c81f623d7d5f51359734300e99a033c4","type":"APP","apiClientId":3128379,"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":"541360288","configuration":"{\"config\":\"{\\\"google_tag_ids\\\":[\\\"G-CTCCB2JP13\\\",\\\"AW-10877799719\\\",\\\"GT-NSL3JDVL\\\"],\\\"target_country\\\":\\\"IN\\\",\\\"gtag_events\\\":[{\\\"type\\\":\\\"begin_checkout\\\",\\\"action_label\\\":[\\\"G-CTCCB2JP13\\\",\\\"AW-10877799719\\\/KRbLCMaG1poaEKea-MIo\\\"]},{\\\"type\\\":\\\"search\\\",\\\"action_label\\\":[\\\"G-CTCCB2JP13\\\",\\\"AW-10877799719\\\/gQCECMCG1poaEKea-MIo\\\"]},{\\\"type\\\":\\\"remove_from_cart\\\",\\\"action_label\\\":\\\"G-CTCCB2JP13\\\"},{\\\"type\\\":\\\"view_item\\\",\\\"action_label\\\":[\\\"G-CTCCB2JP13\\\",\\\"AW-10877799719\\\/2puvCL2G1poaEKea-MIo\\\",\\\"MC-CG3XY488TH\\\"]},{\\\"type\\\":\\\"add_shipping_info\\\",\\\"action_label\\\":\\\"G-CTCCB2JP13\\\"},{\\\"type\\\":\\\"purchase\\\",\\\"action_label\\\":[\\\"G-CTCCB2JP13\\\",\\\"AW-10877799719\\\/XHqKCLeG1poaEKea-MIo\\\",\\\"MC-CG3XY488TH\\\"]},{\\\"type\\\":\\\"page_view\\\",\\\"action_label\\\":[\\\"G-CTCCB2JP13\\\",\\\"AW-10877799719\\\/4fkZCLqG1poaEKea-MIo\\\",\\\"MC-CG3XY488TH\\\"]},{\\\"type\\\":\\\"view_item_list\\\",\\\"action_label\\\":\\\"G-CTCCB2JP13\\\"},{\\\"type\\\":\\\"add_payment_info\\\",\\\"action_label\\\":[\\\"G-CTCCB2JP13\\\",\\\"AW-10877799719\\\/k31SCMmG1poaEKea-MIo\\\"]},{\\\"type\\\":\\\"add_to_cart\\\",\\\"action_label\\\":[\\\"G-CTCCB2JP13\\\",\\\"AW-10877799719\\\/RlVICMOG1poaEKea-MIo\\\"]},{\\\"type\\\":\\\"view_cart\\\",\\\"action_label\\\":\\\"G-CTCCB2JP13\\\"}],\\\"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":"230752416","configuration":"{\"pixel_id\":\"424195852020849\",\"pixel_type\":\"facebook_pixel\",\"metaapp_system_user_token\":\"-\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"bd2f978c17a94bbb8a74d43de2165dc5","type":"APP","apiClientId":2329312,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized","enabledFlags":["9a3ed68a"]},{"id":"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":"Dharishah Ayurveda","paymentSettings":{"currencyCode":"INR"}
2503,"myshopifyDomain":"dff598-2.myshopify.com","countryCode":"IN","storefrontUrl":"https:\/\/dharishahayurveda.com"},"customer":null,"cart":null,"checkout":null,"productVariants":[],"products":[],"purchasingCompany":null},},"https://dharishahayurveda.com/cdn","7ec887c8w14f9f074p854094e1m1370c602",{"modern":"","legacy":""},{"trekkieShim":true,"agentContext":true,"apiClientId":"580111","facebookCapiEnabled":"true","themeId":"198608453792","themePublished":"true","eventMetadataId":"55082aa0-b7d9-4262-847f-b29aceac40f0","pageType":"cart","shopId":"61930078368","storefrontBaseUrl":"https:\/\/dharishahayurveda.com","extensionBaseUrl":"https:\/\/extensions.shopifycdn.com\/cdn\/shopifycloud\/web-pixels-manager","surface":"storefront-renderer","enabledBetaFlags":"[\"4c64608a\", \"16072cab\", \"8450a54b\"]","isMerchantRequest":"false","hashVersion":"7ec887c8w14f9f074p854094e1m1370c602","publish":"custom","events":"[[\"page_viewed\",{}]]"});})();</script>
2503<script> 2504 window.ShopifyAnalytics = window.ShopifyAnalytics || {}; 2505 window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {}; 2506 window.ShopifyAnalytics.meta.currency = 'INR'; 2507 var meta = {"page":{"pageType":"cart","requestId":"61a5782e-7f3c-4eb5-8df7-946c6b7aa577-1791480652"}}; 2508 for (var attr in meta) { 2509 window.ShopifyAnalytics.meta[attr] = meta[attr]; 2510 } 2511</script>
vendor: 1 bytes, line 2511
2511
2512<script class="analytics"> 2513 (function () { 2514 var customDocumentWrite = function(content) { 2515 var jquery = null; 2516 2517 if (window.jQuery) { 2518 jquery = window.jQuery; 2519 } else if (window.Checkout && window.Checkout.$) { 2520 jquery = window.Checkout.$; 2521 } 2522 2523 if (jquery) { 2524 jquery('body').append(content); 2525 } 2526 }; 2527 2528 var hasLoggedConversion = function(token) { 2529 if (token) { 2530 return document.cookie.indexOf('loggedConversion=' + token) !== -1; 2531 } 2532 return false; 2533 } 2534 2535 var setCookieIfConversion = function(token) { 2536 if (token) { 2537 var twoMonthsFromNow = new Date(Date.now()); 2538 twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2); 2539 2540 document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow; 2541 } 2542 } 2543 2544 var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || []; 2545 window.ShopifyAnalytics.lib.trekkie = window.trekkie; 2546 if (trekkie.integrations) { 2547 return; 2548 } 2549 trekkie.methods = [ 2550 'identify', 2551 'page', 2552 'ready', 2553 'track', 2554 'trackForm', 2555 'trackLink' 2556 ]; 2557 trekkie.factory = function(method) { 2558 return function() { 2559 var args = Array.prototype.slice.call(arguments); 2560 args.unshift(method); 2561 trekkie.push(args); 2562 if (method == 'track' || method == 'page') { 2563 var pageUrl; 2564 try { 2565 pageUrl = window.location.href; 2566 } catch (e) {} 2567 var pageReferrer; 2568 try { 2569 pageReferrer = document.referrer; 2570 } catch (e) {} 2571 try { 2572 if (window.__TREKKIE_SHIM_QUEUE == null) { 2573 window.__TREKKIE_SHIM_QUEUE = []; 2574 } 2575 window.__TREKKIE_SHIM_QUEUE.push({ 2576 from: 'trekkie-stub', 2577 method: method, 2578 args: args.slice(1), 2579 pageContext: { 2580 url: pageUrl, 2581 referrer: pageReferrer 2582 } 2583 }); 2584 } catch (e) { 2585 // no-op 2586 } 2587 } 2588 return trekkie; 2589 }; 2590 }; 2591 for (var i = 0; i < trekkie.methods.length; i++) { 2592 var key = trekkie.methods[i]; 2593 trekkie[key] = trekkie.factory(key); 2594 } 2595 trekkie.load = function(config) { 2596 trekkie.config = config || {}; 2597 trekkie.config.initialDocumentCookie = document.cookie; 2598 var first = document.getElementsByTagName('script')[0]; 2599var script = document.createElement('script'); 2600script.type = 'text/javascript'; 2601script.onerror = function(e) { 2602 var scriptFallback = document.createElement('script'); 2603 scriptFallback.type = 'text/javascript'; 2604 scriptFallback.onerror = function(error) { 2605 var Monorail = { 2606 produce: function produce(monorailDomain, schemaId, payload) { 2607 var currentMs = new Date().getTime(); 2608 var event = { 2609 schema_id: schemaId, 2610 payload: payload, 2611 metadata: { 2612 event_created_at_ms: currentMs, 2613 event_sent_at_ms: currentMs 2614 } 2615 }; 2616 return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event)); 2617 }, 2618 sendRequest: function sendRequest(endpointUrl, payload) { 2619 // Try the sendBeacon API 2620 if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) { 2621 var blobData = new window.Blob([payload], { 2622 type: 'text/plain' 2623 }); 2624 2625 if (window.navigator.sendBeacon(endpointUrl, blobData)) { 2626 return true; 2627 } // sendBeacon was not successful 2628 2629 } // XHR beacon 2630 2631 var xhr = new XMLHttpRequest(); 2632 2633 try { 2634 xhr.open('POST', endpointUrl); 2635 xhr.setRequestHeader('Content-Type', 'text/plain'); 2636 xhr.send(payload); 2637 } catch (e) { 2638 console.log(e); 2639 } 2640 2641 return false; 2642 }, 2643 isIos12: function isIos12() { 2644 return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1; 2645 } 2646 }; 2647 Monorail.produce('monorail-edge.shopifysvc.com', 2648 'trekkie_storefront_load_errors/1.1', 2649 {shop_id: 61930078368, 2650 theme_id: 198608453792, 2651 app_name: "storefront", 2652 context_url: window.location.href, 2653 source_url: "//dharishahayurveda.com/cdn/s/trekkie.storefront.51e69540e15035ae012ec8cc42e8f9cd792233a0.min.js"}); 2654 2655 }; 2656 scriptFallback.async = true; 2657 scriptFallback.src = '//dharishahayurveda.com/cdn/s/trekkie.storefront.51e69540e15035ae012ec8cc42e8f9cd792233a0.min.js'; 2658 first.parentNode.insertBefore(scriptFallback, first); 2659}; 2660script.async = true; 2661script.src = '//dharishahayurveda.com/cdn/s/trekkie.storefront.51e69540e15035ae012ec8cc42e8f9cd792233a0.min.js'; 2662first.parentNode.insertBefore(script, first); 2663 2664 }; 2665 trekkie.load( 2666 {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":61930078368,"isMerchantRequest":null,"themeId":198608453792,"themeCityHash":"8760493086952447430","contentLanguage":"en","currency":"INR","eventMetadataId":"55082aa0-b7d9-4262-847f-b29aceac40f0"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain","enabledBetaFlags":["764d78cb","8450a54b","4c64608a"]},"Session Attribution":{},"S2S":{"facebookCapiEnabled":true,"source":"trekkie-storefront-renderer","apiClientId":580111}} 2667 ); 2668 2669 var loaded = false;
2670 trekkie.ready(function() { 2671 if (loaded) return; 2672 loaded = true; 2673 2674 window.ShopifyAnalytics.lib = window.trekkie; 2675 2676 var originalDocumentWrite = document.write; 2677 document.write = customDocumentWrite; 2678 try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {}; 2679 document.write = originalDocumentWrite; 2680 2681 var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/) 2682 var token = match? match[1]: undefined; 2683 if (!hasLoggedConversion(token)) { 2684 setCookieIfConversion(token); 2685 2686 } 2687 }); 2688 2689 window.ShopifyAnalytics.lib.page(null,{"pageType":"cart","requestId":"61a5782e-7f3c-4eb5-8df7-946c6b7aa577-1791480652","shopifyEmitted":true}); 2690 2691 var eventsListenerScript = document.createElement('script'); 2692 eventsListenerScript.async = true; 2693 eventsListenerScript.src = "//dharishahayurveda.com/cdn/shopifycloud/storefront/assets/shop_events_listener-4e26a9ce.js"; 2694 document.getElementsByTagName('head')[0].appendChild(eventsListenerScript); 2695})();</script>
vendor: 1 bytes, line 2695
2695
2696<script 2697 defer 2698 src="https://dharishahayurveda.com/cdn/shopifycloud/perf-kit/shopify-perf-kit-3.10.1.min.js" 2699 data-application="storefront-renderer" 2700 data-shop-id="61930078368" 2701 data-render-region="gcp-us-central1" 2702 data-page-type="cart" 2703 data-theme-instance-id="198608453792" 2704 data-theme-name="Dawn" 2705 data-theme-version="11.0.0" 2706 data-monorail-region="shop_domain" 2707 data-resource-timing-sampling-rate="10" 2708 data-shs="true" 2709 data-shs-beacon="true" 2710 data-shs-export-with-fetch="true" 2711 data-shs-logs-sample-rate="1" 2712 data-shs-beacon-endpoint="https://dharishahayurveda.com/api/collect" 2713></script>
2713 2714<meta name="shopify-y" content="bfa875c4-eca6-409a-a16e-a3842a06ae2a" data-expiration="1823038252000"><meta name="shopify-s" content="b1f581cb-977b-45e6-8140-7acb923c983c" data-expiration="1791482452000"><meta name="new-cookie-storage-activated" content="t"> 2715</head> 2716 2717 <body class="gradient template-cart "> 2718 2719 <!-- Google Tag Manager (noscript) -->
vendor: 70 bytes, lines 2719-2720
2719 2720 <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
2720GTM-K8PPHSH
vendor: 90 bytes, lines 2720-2722
2720" 2721 height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> 2722
2722<!-- End Google Tag Manager (noscript) --> 2723 2724 <a class="skip-to-content-link button visually-hidden" href="#MainContent"> 2725 Skip to content 2726 </a><!-- BEGIN sections: header-group --> 2727<section id="shopify-section-sections--29733385175200__custom_announcement_zQgMWi" class="shopify-section shopify-section-group-header-group"> 2728 2729<style> 2730.custom_page_speed_container { 2731 background: #052400; 2732 overflow: hidden; 2733 padding: 10px 0; 2734 font-size: 16px; 2735 font-weight: 600; 2736 color: #ffffff; 2737 position: relative; 2738} 2739.custom_page_speed_track { 2740 display: flex; 2741 width: max-content; 2742 animation: custom_page_speed_scroll 25s linear infinite; 2743 will-change: transform; 2744} 2745 2746.custom_page_speed_track span { 2747 display: inline-block; 2748 padding-right: 4rem; 2749 white-space: nowrap; 2750 font-size: 14px; 2751} 2752 2753.custom_page_speed_track a { 2754 color: #ffffff; 2755 text-decoration: none; 2756 transition: opacity 0.3s; 2757 font-size: 14px; 2758} 2759 2760.custom_page_speed_track a:hover { 2761 opacity: 0.8; 2762} 2763 2764@keyframes custom_page_speed_scroll { 2765 0% { transform: translateX(0%); } 2766 100% { transform: translateX(-50%); } 2767} 2768</style> 2769 2770<div class="custom_page_speed_container"> 2771 <div class="custom_page_speed_track"> 2772 2773 2774 2775 <span> 2776 2777 7% Off on Prepaid Orders 2778 2779 </span> 2780 <span> 2781 2782 7% Off on Prepaid Orders 2783 2784 </span> 2785 <span> 2786 2787 7% Off on Prepaid Orders 2788 2789 </span> 2790 <span> 2791 2792 7% Off on Prepaid Orders 2793 2794 </span> 2795 <span> 2796 2797 7% Off on Prepaid Orders 2798 2799 </span> 2800 <span> 2801 2802 7% Off on Prepaid Orders 2803 2804 </span> 2805 <span> 2806 2807 7% Off on Prepaid Orders 2808 2809 </span> 2810 <span> 2811 2812 7% Off on Prepaid Orders 2813 2814 </span> 2815 <span> 2816 2817 7% Off on Prepaid Orders 2818 2819 </span> 2820 </div> 2821</div> 2822 2823 2824</section><div id="shopify-section-sections--29733385175200__header" class="shopify-section shopify-section-group-header-group section-header"><link rel="stylesheet" href="//dharishahayurveda.com/cdn/shop/t/94/assets/component-list-menu.css?v=108004255603861305101786373485" media="print" onload="this.media='all'"> 2825<link rel="stylesheet" href="//dharishahayurveda.com/cdn/shop/t/94/assets/component-search.css?v=92541243337534023161786373485" media="print" onload="this.media='all'"> 2826<link rel="stylesheet" href="//dharishahayurveda.com/cdn/shop/t/94/assets/component-menu-drawer.css?v=136464879634347937601786373484" media="print" onload="this.media='all'"> 2827<link rel="stylesheet" href="//dharishahayurveda.com/cdn/shop/t/94/assets/component-cart-notification.css?v=93969228831983232001786373484" media="print" onload="this.media='all'"> 2828<link rel="stylesheet" href="//dharishahayurveda.com/cdn/shop/t/94/assets/component-cart-items.css?v=169186963146679461961786373484" media="print" onload="this.media='all'"><link rel="stylesheet" href="//dharishahayurveda.com/cdn/shop/t/94/assets/component-price.css?v=3169368407291405341786373484" media="print" onload="this.media='all'"> 2829 <link rel="stylesheet" href="//dharishahayurveda.com/cdn/shop/t/94/assets/component-loading-overlay.css?v=113748359493346323121786373485" media="print" onload="this.media='all'"><noscript><link href="//dharishahayurveda.com/cdn/shop/t/94/assets/component-list-menu.css?v=108004255603861305101786373485" rel="stylesheet" type="text/css" media="all" /></noscript> 2830<noscript><link href="//dharishahayurveda.com/cdn/shop/t/94/assets/component-search.css?v=92541243337534023161786373485" rel="stylesheet" type="text/css" media="all" /></noscript> 2831<noscript><link href="//dharishahayurveda.com/cdn/shop/t/94/assets/component-menu-drawer.css?v=136464879634347937601786373484" rel="stylesheet" type="text/css" media="all" /></noscript> 2832<noscript><link href="//dharishahayurveda.com/cdn/shop/t/94/assets/component-cart-notification.css?v=93969228831983232001786373484" rel="stylesheet" type="text/css" media="all" /></noscript> 2833<noscript><link href="//dharishahayurveda.com/cdn/shop/t/94/assets/component-cart-items.css?v=169186963146679461961786373484" rel="stylesheet" type="text/css" media="all" /></noscript> 2834 2835<style> 2836 header-drawer { 2837 justify-self: start; 2838 margin-left: 0;; 2839 }@media screen and (min-width: 990px) { 2840 header-drawer { 2841 display: none; 2842 } 2843 }.menu-drawer-container { 2844 display: flex; 2845 } 2846 2847 .list-menu { 2848 list-style: none; 2849 padding: 0; 2850 margin: 0; 2851 } 2852 2853 .list-menu--inline { 2854 display: inline-flex; 2855 flex-wrap: wrap; 2856 } 2857 2858 summary.list-menu__item { 2859 padding-right: 2.7rem; 2860 } 2861 2862 .list-menu__item { 2863 display: flex; 2864 align-items: center; 2865 line-height: calc(1 + 0.3 / var(--font-body-scale)); 2866 } 2867 2868 .list-menu__item--link { 2869 text-decoration: none; 2870 padding-bottom: 1rem; 2871 padding-top: 1rem; 2872 line-height: calc(1 + 0.8 / var(--font-body-scale)); 2873 } 2874 2875 @media screen and (min-width: 750px) { 2876 .list-menu__item--link { 2877 padding-bottom: 0.5rem; 2878 padding-top: 0.5rem; 2879 } 2880 } 2881</style><style data-shopify>/* .header { 2882 padding: 0px 3rem 0px 3rem; 2883 } */ 2884 2885 .section-header { 2886 position: sticky; /* This is for fixing a Safari z-index issue. PR #2147 */ 2887 margin-bottom: 0px; 2888 } 2889 2890 @media screen and (min-width: 750px) { 2891 .section-header { 2892 margin-bottom: 0px; 2893 } 2894 } 2895 2896 @media screen and (min-width: 990px) { 2897 .header { 2898 padding-top: 0px; 2899 padding-bottom: 0px; 2900 } 2901 }</style>
2901<script src="//dharishahayurveda.com/cdn/shop/t/94/assets/details-disclosure.js?v=13653116266235556501786373485" defer="defer"></script>
vendor: 1 bytes, line 2901
2901
2902<script src="//dharishahayurveda.com/cdn/shop/t/94/assets/details-modal.js?v=25581673532751508451786373485" defer="defer"></script>
vendor: 1 bytes, line 2902
2902
2903<script src="//dharishahayurveda.com/cdn/shop/t/94/assets/cart-notification.js?v=133508293167896966491786373487" defer="defer"></script>
vendor: 1 bytes, line 2903
2903
2904<script src="//dharishahayurveda.com/cdn/shop/t/94/assets/search-form.js?v=133129549252120666541786373485" defer="defer"></script>
2904<svg xmlns="http://www.w3.org/2000/svg" class="hidden"> 2905 <symbol id="icon-search" viewbox="0 0 18 19" fill="none"> 2906 <path fill-rule="evenodd" clip-rule="evenodd" d="M11.03 11.68A5.784 5.784 0 112.85 3.5a5.784 5.784 0 018.18 8.18zm.26 1.12a6.78 6.78 0 11.72-.7l5.4 5.4a.5.5 0 11-.71.7l-5.41-5.4z" fill="currentColor"/> 2907 </symbol> 2908 2909 <symbol id="icon-reset" class="icon icon-close" fill="none" viewBox="0 0 18 18" stroke="currentColor"> 2910 <circle r="8.5" cy="9" cx="9" stroke-opacity="0.2"/> 2911 <path d="M6.82972 6.82915L1.17193 1.17097" stroke-linecap="round" stroke-linejoin="round" transform="translate(5 5)"/> 2912 <path d="M1.22896 6.88502L6.77288 1.11523" stroke-linecap="round" stroke-linejoin="round" transform="translate(5 5)"/> 2913 </symbol> 2914 2915 <symbol id="icon-close" class="icon icon-close" fill="none" viewBox="0 0 18 17"> 2916 <path d="M.865 15.978a.5.5 0 00.707.707l7.433-7.431 7.579 7.282a.501.501 0 00.846-.37.5.5 0 00-.153-.351L9.712 8.546l7.417-7.416a.5.5 0 10-.707-.708L8.991 7.853 1.413.573a.5.5 0 10-.693.72l7.563 7.268-7.418 7.417z" fill="currentColor"> 2917 </symbol> 2918</svg><sticky-header data-sticky-type="always" class="header-wrapper color-background-1 gradient header-wrapper--border-bottom"><header class="header header--middle-left header--mobile-center page-width header--has-menu header--has-social header--has-account"> 2919 <div class="cust_mob_icon"> 2920 2921<header-drawer data-breakpoint="tablet"> 2922 <details id="Details-menu-drawer-container" class="menu-drawer-container"> 2923 <summary 2924 class="header__icon header__icon--menu header__icon--summary link focus-inset" 2925 aria-label="Menu" 2926 > 2927 <span> 2928 2929 2930 2931 2932<svg width="20" height="16" viewBox="0 0 20 16" fill="none" class="icon icon-hamburger" xmlns="http://www.w3.org/2000/svg"> 2933<line y1="1.25" x2="20" y2="1.25" stroke="#0A4F00" stroke-width="1.5"/> 2934<line y1="7.91675" x2="20" y2="7.91675" stroke="#0A4F00" stroke-width="1.5"/> 2935<line y1="14.5833" x2="20" y2="14.5833" stroke="#0A4F00" stroke-width="1.5"/> 2936</svg> 2937 2938 2939 2940 2941<svg width="16" height="17" viewBox="0 0 16 17" fill="none" class="icon icon-close" xmlns="http://www.w3.org/2000/svg"> 2942<line x1="0.53033" y1="1.46967" x2="14.6725" y2="15.6118" stroke="#0A4F00" stroke-width="1.5"/> 2943<line x1="0.611806" y1="15.6118" x2="14.7539" y2="1.46962" stroke="#0A4F00" stroke-width="1.5"/> 2944</svg> 2945 2946 2947 </span> 2948 </summary> 2949 <div id="menu-drawer" class="gradient menu-drawer motion-reduce color-background-1"> 2950 <div class="menu-drawer__inner-container"> 2951 <div class="menu-drawer__navigation-container"> 2952 <nav class="menu-drawer__navigation"> 2953 <section class="ayurvedic-grid-section"> 2954 <div class="page-width"> 2955 <h2 class="heading">Shop Trusted Ayurvedic Products</h2> 2956 <div class="grid-wrapper"> 2957 2958 <a href="/collections/prostate-health" class="item" > 2959 2960 <img src="//dharishahayurveda.com/cdn/shop/files/331c9c090ea1c3263a024c0d1b4ee0799d5c1f27_200x.png?v=1763561396" alt="Prostate Health" /> 2961 2962 <p>Prostate Health</p> 2963 </a> 2964 2965 <a href="/collections/mens" class="item" > 2966 2967 <img src="//dharishahayurveda.com/cdn/shop/files/702c01cf2877907c62458631c5ad75cb538be608_200x.png?v=1763561505" alt="Menâs Wellness" /> 2968 2969 <p>Menâs Wellness</p> 2970 </a> 2971 2972 <a href="/collections/women-health" class="item" > 2973 2974 <img src="//dharishahayurveda.com/cdn/shop/files/c1fbd84b690cb17b60e078892b582b6462ec9ec7_200x.png?v=1763561578" alt="Womenâs Wellness" /> 2975 2976 <p>Womenâs Wellness</p> 2977 </a> 2978 2979 <a href="/collections/healthy-heart" class="item" > 2980 2981 <img src="//dharishahayurveda.com/cdn/shop/files/8acc9811d5374b349bc74378f13f17ffe9f905dd_200x.png?v=1763568332" alt="Heart Health" /> 2982 2983 <p>Heart Health</p> 2984 </a> 2985 2986 <a href="/collections/brain-health" class="item" > 2987 2988 <img src="//dharishahayurveda.com/cdn/shop/files/4a97f478670d9f4af12bc9aceb92b09fd1d0f262_200x.png?v=1763568369" alt="Brain Support" /> 2989 2990 <p>
2990Brain Support</p> 2991 </a> 2992 2993 <a href="/collections/digestion" class="item" > 2994 2995 <img src="//dharishahayurveda.com/cdn/shop/files/c9398c6986517a9e553e642a3953ad4be9b21525_200x.png?v=1763568408" alt="Digestion Support" /> 2996 2997 <p>Digestion Support</p> 2998 </a> 2999 3000 <a href="/collections/kidney-health" class="item" > 3001 3002 <img src="//dharishahayurveda.com/cdn/shop/files/dced21b2840e1dc4c2069d15d3dc158f82a2082b_200x.png?v=1763568464" alt="Kidney Care" /> 3003 3004 <p>Kidney Care</p> 3005 </a> 3006 3007 <a href="/collections/joint-pain" class="item" > 3008 3009 <img src="//dharishahayurveda.com/cdn/shop/files/ba409996ed8803596d982849ccba3c421c21f748_200x.png?v=1763568523" alt="Joint Support" /> 3010 3011 <p>Joint Support</p> 3012 </a> 3013 3014 </div> 3015 </div> 3016</section> 3017 <div class="second_block_content_layout block_footer_custom"> 3018 <div class="maiubn_menu_custoim_footer"> 3019 <ul class="menu"> 3020 3021 3022 <li class="menu-link main_menu_links_custom"><details class="accordian footer-collapsible" name="header-drawer-sections--29733385175200__header"> 3023 <summary class="meain_custom_footer_meni"> 3024 Shop by Concern <span class="collapse_footer_menu">+</span> 3025 </summary> 3026 <ul class="menu dropdown-child"><li class="menu-link"> 3027 <a href="/collections/piles">Piles Care</a></li><li class="menu-link"> 3028 <a href="/collections/diabetes">Diabetes Care</a></li><li class="menu-link"> 3029 <a href="/collections/liver-health">Liver Care</a></li><li class="menu-link"> 3030 <a href="/collections/immunity-support">Immunity Support</a></li><li class="menu-link"> 3031 <a href="/collections/skin-health">Skin and Hair</a></li><li class="menu-link"> 3032 <a href="/collections/thyroid-support">Thyroid Support</a></li><li class="menu-link"> 3033 <a href="/collections/cough">Cough and Lungs</a></li><li class="menu-link"> 3034 <a href="/collections/weight-gain-loss">Weight Gain/Loss</a></li></ul> 3035 </details></li> 3036 3037 <li class="menu-link main_menu_links_custom"><details class="accordian footer-collapsible" name="header-drawer-sections--29733385175200__header"> 3038 <summary class="meain_custom_footer_meni"> 3039 Shop by Ingredients <span class="collapse_footer_menu">+</span> 3040 </summary> 3041 <ul class="menu dropdown-child"><li class="menu-link"> 3042 <a href="/collections/ashwagandha">Ashwagandha</a></li><li class="menu-link"> 3043 <a href="/collections/shilajit">Shilajit</a></li><li class="menu-link"> 3044 <a href="/collections/brahmi">Brahmi</a></li><li class="menu-link"> 3045 <a href="/collections/arjuna">Arjuna</a></li><li class="menu-link"> 3046 <a href="/collections/gokshura">Gokshura</a></li><li class="menu-link"> 3047 <a href="/collections/karela">Karela</a></li><li class="menu-link"> 3048 <a href="/collections/giloy">Giloy</a></li><li class="menu-link"> 3049 <a href="/collections/amla">Amla</a></li><li class="menu-link"> 3050 <a href="/collections/tulsi">Tulsi</a></li><li class="menu-link"> 3051 <a href="/collections/aloe-vera">Aloe Vera</a></li><li class="menu-link"> 3052 <a href="/collections/guggul">Guggul</a></li></ul> 3053 </details></li> 3054 3055 <li class="menu-link main_menu_links_custom"><a href="/collections/best-sellers" class="meain_custom_footer_meni">Best seller</a></li> 3056 3057 <li class="menu-link main_menu_links_custom"><a href="/collections/all" class="meain_custom_footer_meni">New Arrivals</a></li> 3058 3059 <li class="menu-link main_menu_links_custom"><a href="/collections/health-packages" class="meain_custom_footer_meni">Health Packages</a></li> 3060 3061 </ul> 3062 </div> 3063 </div> 3064 3065 3066 3067 <div class="third_block_content_layout block_footer_custom"> 3068 <div class="radius_box_for_alst_menu"> 3069 3070 <div class="maiubn_menu_custoim_footer"> 3071 <ul class="menu"> 3072 3073 3074 <li class="menu-link main_menu_links_custom"> 3075 <a href="javascript:void(0)" class="meain_custom_footer_meni"> 3076 Dharishah Loyalty Club 3077 </a> 3078 3079 </li> 3080 3081 <li class="menu-link main_menu_links_custom"> 3082 <a href="https://dharishahayurveda.com/apps/shipway_track" class="meain_custom_footer_meni"> 3083 Track Your Order 3084 </a> 3085 3086 </li> 3087 3088 <li class="menu-link main_menu_links_custom"> 3089 <a href="/pages/about-us" class="meain_custom_footer_meni"> 3090 Our Rich History 3091 </a> 3092 3093 </li> 3094 3095 <li class="menu-link main_menu_links_custom"> 3096 <a href="/pages/contact" class="meain_custom_footer_meni"> 3097 Contact Us/ Sell Our Products 3098 </a> 3099 3100 </li> 3101 3102 <li class="menu-link main_menu_links_custom"> 3103 <a href="/blogs/news" class="meain_custom_footer_meni"> 3104 Ayurveda Tips Blog 3105 </a> 3106 3107 </li> 3108 3109 <li class="menu-link main_menu_links_custom"> 3110 <a href="javascript:void(0)" class="meain_custom_footer_meni"> 3111 Quick Links <span class="collapse_footer_menu">+</span> 3112 </a> 3113 3114 <ul class="menu dropdown-child"> 3115 3116 <li class="menu-link"> 3117 <a href="/policies/privacy-policy">Privacy Policy</a> 3118 3119 3120 </li> 3121 3122 <li class="menu-link"> 3123 <a href="/policies/terms-of-service">Terms and Conditions</a> 3124 3125 3126 </li> 3127 3128 <li class="menu-link"> 3129 <a href="/policies/refund-policy">Refund and Cancellation</a> 3130 3131 3132 </li> 3133 3134 </ul> 3135 3136 </li> 3137 3138 </ul> 3139 </div> 3140 </div> 3141 </div> 3142 3143 </nav> 3144 3145 <div class="custom-footer-icons"> 3146 3147 3148 <a href="/account" class="custom-footer-login"> 3149 <div class="custom-footer-login-icon"> 3150 3151 <img src="https://cdn.shopify.com/s/files/1/0619/3007/8368/files/0d6ccc88658b0f877034bd6704d89544ce93c885.png?v=1763573489" alt="Login"> 3152 3153 </div> 3154 <div class="custom-footer-login-text"> 3155 3156 <strong>Login</strong>
3157 <span>to access offers</span> 3158 3159 </div> 3160 </a> 3161 3162 <!-- Social Icons --> 3163 <div class="custom-footer-social"> 3164 <a href="https://wa.me/917404344408/?text=Hello" class="custom-footer-social-item"> 3165 <img src="https://cdn.shopify.com/s/files/1/0619/3007/8368/files/whatsapp.png?v=1763573597" alt="WhatsApp"> 3166 </a> 3167 <a href="https://www.instagram.com/dharishah.ayurveda" class="custom-footer-social-item"> 3168 <img src="https://cdn.shopify.com/s/files/1/0619/3007/8368/files/instagram.png?v=1763573641" alt="Instagram"> 3169 </a> 3170 <a href="https://facebook.com/dharishahayurved/" class="custom-footer-social-item"> 3171 <img src="https://cdn.shopify.com/s/files/1/0619/3007/8368/files/facebook-app-symbol.png?v=1763573728" alt="Facebook"> 3172 </a> 3173 </div> 3174 3175</div> 3176 </div> 3177 3178 </div> 3179 </div> 3180 </details> 3181</header-drawer> 3182<style> 3183.ayurvedic-grid-section { 3184padding: 20px 0; 3185 text-align: center; 3186 background-color: #fff; 3187} 3188.ayurvedic-grid-section .heading { 3189 font-size: 32px; 3190 margin-bottom: 20px; 3191 font-weight: 500; 3192 font-family: inherit; 3193 margin-top: 0; 3194} 3195.grid-wrapper { 3196 display: flex; 3197 gap: 10px; 3198 justify-content: space-between; 3199 flex-wrap: wrap; 3200} 3201.grid-wrapper .item { 3202 background: #faf3eb; 3203 border: 1px solid #000; 3204 border-radius: 16px; 3205 padding: 20px; 3206 text-decoration: none; 3207 color: #000; 3208 display: flex; 3209 flex-direction: column; 3210 align-items: center; 3211 width: 11%; 3212} 3213.grid-wrapper .item img { 3214 width: 70px; 3215 margin-bottom: 12px; 3216} 3217.grid-wrapper .item p { 3218 font-size: 16px; 3219 font-weight: 600; 3220 margin: 0; 3221} 3222.custom-footer-icons { 3223 display: flex; 3224 align-items: center; 3225 gap: 40px; 3226 padding: 2rem 1.5rem; 3227 background-color: #EBDFCD; 3228 position: fixed; 3229 width: 100%; 3230 bottom: 0; 3231} 3232 3233.custom-footer-login { 3234 display: flex; 3235 align-items: center; 3236 gap: 12px; 3237 text-decoration: none; 3238 color: #000; 3239} 3240 3241.custom-footer-login-icon, 3242.custom-footer-social-item { 3243 width: 45px; 3244 height: 45px; 3245background-color: #fffaf3; 3246 border: 2px solid #000; 3247 border-radius: 50%; 3248 display: flex; 3249 align-items: center; 3250 justify-content: center; 3251} 3252 3253.custom-footer-login-icon img, 3254.custom-footer-social-item img { 3255 width: 28px; 3256 height: 28px; 3257} 3258 3259.custom-footer-login-text { 3260 display: flex; 3261 flex-direction: column; 3262 line-height: 1.1; 3263} 3264 3265.custom-footer-social { 3266 display: flex; 3267 gap: 30px; 3268 margin-left: auto; 3269} 3270 3271@media screen and (max-width: 768px) { 3272.menu-drawer__navigation .third_block_content_layout.block_footer_custom { 3273 padding-top: 20px; 3274 background-color: #EBDFCD; 3275 border-top-right-radius: 15px; 3276 border-top-left-radius: 15px; 3277 padding-bottom: 10rem; 3278} 3279.menu-drawer__navigation ul.menu.dropdown-child { 3280 background-color: #fffaf3 !important; 3281} 3282.menu-drawer__navigation .third_block_content_layout.block_footer_custom ul { 3283 background-color: #ebdfcd; 3284} 3285 .ayurvedic-grid-section .heading { 3286 font-size: 20px; 3287} 3288.grid-wrapper .item { 3289 width: 20%; 3290} 3291 3292.grid-wrapper .item p { 3293 font-size: 12px; 3294 line-height: 13px; 3295} 3296 3297.ayurvedic-grid-section { 3298 padding-bottom: 0px; 3299} 3300} 3301@media screen and (max-width: 425px) { 3302.grid-wrapper .item { 3303 width: 22%; 3304 padding: 8px 14px; 3305} 3306 3307.grid-wrapper .item img { 3308 width: 60px; 3309} 3310 3311} 3312</style> 3313 3314 3315<details-modal class="header__search"> 3316 <details> 3317 <summary class="header__icon header__icon--search header__icon--summary link focus-inset modal__toggle" aria-haspopup="dialog" aria-label="Search"> 3318 <span> 3319 <svg xmlns="http://www.w3.org/2000/svg" width="17" height="17" viewBox="0 0 17 17" fill="none"> 3320 <path d="M14.3697 13.4826L16.8236 15.9353C16.9381 16.0538 17.0014 16.2125 17 16.3772C16.9985 16.5419 16.9325 16.6995 16.816 16.816C16.6995 16.9325 16.5419 16.9985 16.3772 17C16.2125 17.0014 16.0538 16.9381 15.9353 16.8236L13.4813 14.3697C11.8777 15.7436 9.80423 16.443 7.69605 16.3211C5.58787 16.1993 3.60882 15.2656 2.17419 13.7161C0.739566 12.1665 -0.0391267 10.1215 0.00151443 8.01019C0.0421556 5.89888 0.898971 3.88537 2.39217 2.39217C3.88537 0.898971 5.89888 0.0421556 8.01019 0.00151443C10.1215 -0.0391267 12.1665 0.739566 13.7161 2.17419C15.2656 3.60882 16.1993 5.58787 16.3211 7.69605C16.443 9.80423 15.7436 11.8777 14.3697 13.4813V13.4826ZM8.16748 15.0783C10.0004 15.0783 11.7582 14.3502 13.0542 13.0542C14.3502 11.7582 15.0783 10.0004 15.0783 8.16748C15.0783 6.33461 14.3502 4.5768 13.0542 3.28076C11.7582 1.98473 10.0004 1.25662 8.16748 1.25662C6.33461 1.25662 4.5768 1.98473 3.28076 3.28076C1.98473 4.5768 1.25662 6.33461 1.25662 8.16748C1.25662 10.0004 1.98473 11.7582 3.28076 13.0542C4.5768 14.3502 6.33461 15.0783 8.16748 15.0783Z" fill="black"/> 3321</svg> 3322 <svg class="modal__toggle-close icon icon-close" aria-hidden="true" focusable="false"> 3323 <use href="#icon-close"> 3324 </svg> 3325 </span> 3326 </summary> 3327 <div class="search-modal modal__content gradient" role="dialog" aria-modal="true" aria-label="Search"> 3328 <div class="modal-overlay"></div> 3329 <div class="search-modal__content search-modal__content-bottom" tabindex="-1"><predictive-search class="search-modal__form" data-loading-text="Loading..."><form action="/search" method="get" role="search" class="search search-modal__form"> 3330 <div class="field"> 3331 <input class="search__input field__input" 3332 id="Search-In-Modal" 3333 type="search" 3334 name="q" 3335 value="" 3336 placeholder="Search"role="combobox" 3337 aria-expanded="false" 3338 aria-owns="predictive-search-results" 3339 aria-controls="predictive-search-results" 3340 aria-haspopup="listbox"
3341 aria-autocomplete="list" 3342 autocorrect="off" 3343 autocomplete="off" 3344 autocapitalize="off" 3345 spellcheck="false"> 3346 <!-- <label class="field__label" for="Search-In-Modal">Search</label> 3347 <input type="hidden" name="options[prefix]" value="last"> --> 3348 <button type="reset" class="reset__button field__button hidden" aria-label="Clear search term"> 3349 <svg class="icon icon-close" aria-hidden="true" focusable="false"> 3350 <use xlink:href="#icon-reset"> 3351 </svg> 3352 </button> 3353 <button class="search__button field__button" aria-label="Search"> 3354 <svg class="icon icon-search" aria-hidden="true" focusable="false"> 3355 <use href="#icon-search"> 3356 </svg> 3357 </button> 3358 </div><div class="predictive-search predictive-search--header" tabindex="-1" data-predictive-search> 3359 3360 <div class="predictive-search__loading-state"> 3361 <svg aria-hidden="true" focusable="false" class="spinner" viewBox="0 0 66 66" xmlns="http://www.w3.org/2000/svg"> 3362 <circle class="path" fill="none" stroke-width="6" cx="33" cy="33" r="30"></circle> 3363 </svg> 3364 </div> 3365 </div> 3366 3367 <span class="predictive-search-status visually-hidden" role="status" aria-hidden="true"></span></form></predictive-search><button type="button" class="search-modal__close-button modal__close-button link link--text focus-inset" aria-label="Close"> 3368 <svg class="icon icon-close" aria-hidden="true" focusable="false"> 3369 <use href="#icon-close"> 3370 </svg> 3371 </button> 3372 </div> 3373 </div> 3374 </details> 3375</details-modal> 3376 3377 </div><a href="/" class="header__heading-link link link--text focus-inset desktop-logo"><div class="header__heading-logo-wrapper"> 3378 3379 <img src="//dharishahayurveda.com/cdn/shop/files/dharishah-logo_1.svg?v=1705642253&width=600" alt="Dharishah Ayurveda" srcset="//dharishahayurveda.com/cdn/shop/files/dharishah-logo_1.svg?v=1705642253&width=100 100w, //dharishahayurveda.com/cdn/shop/files/dharishah-logo_1.svg?v=1705642253&width=150 150w, //dharishahayurveda.com/cdn/shop/files/dharishah-logo_1.svg?v=1705642253&width=200 200w" width="100" height="66.66666666666667" loading="eager" class="header__heading-logo motion-reduce" sizes="(max-width: 200px) 50vw, 100px"> 3380 </div></a> 3381 3382 3383 3384 3385<a href="/" class="header__heading-link link link--text focus-inset mobile-logo"><div class="header__heading-logo-wrapper"> 3386 3387 <img src="//dharishahayurveda.com/cdn/shop/files/dharishah-logo_1.svg?v=1705642253&width=200" alt="Dharishah Ayurveda" srcset="//dharishahayurveda.com/cdn/shop/files/dharishah-logo_1.svg?v=1705642253&width=100 100w, //dharishahayurveda.com/cdn/shop/files/dharishah-logo_1.svg?v=1705642253&width=150 150w, //dharishahayurveda.com/cdn/shop/files/dharishah-logo_1.svg?v=1705642253&width=200 200w" width="100" loading="eager" class="header__heading-logo motion-reduce" sizes="(max-width: 200px) 50vw, 100px"> 3388 </div></a> 3389 3390<nav class="header__inline-menu"> 3391 <ul class="list-menu list-menu--inline" role="list"><li><a 3392 id="HeaderMenu-about" 3393 href="/pages/about-us" 3394 class="header__menu-item list-menu__item link link--text focus-inset" 3395 3396 > 3397 <span 3398 >About</span> 3399 </a></li><li><a 3400 id="HeaderMenu-health-packages" 3401 href="/collections/health-packages" 3402 class="header__menu-item list-menu__item link link--text focus-inset" 3403 3404 > 3405 <span 3406 >Health Packages</span> 3407 </a></li><li><a 3408 id="HeaderMenu-supplements" 3409 href="/collections/supplements" 3410 class="header__menu-item list-menu__item link link--text focus-inset" 3411 3412 >
3413 <span 3414 >Supplements</span> 3415 </a></li><li><a 3416 id="HeaderMenu-health-solutions" 3417 href="/collections/health-solutions" 3418 class="header__menu-item list-menu__item link link--text focus-inset" 3419 3420 > 3421 <span 3422 >Health Solutions </span> 3423 </a></li><li><a 3424 id="HeaderMenu-personal-care" 3425 href="/collections/personal-care" 3426 class="header__menu-item list-menu__item link link--text focus-inset" 3427 3428 > 3429 <span 3430 >Personal Care</span> 3431 </a></li></ul> 3432</nav> 3433 3434<div class="header__icons header__icons--localization header-localization"> 3435 <div class="desktop-localization-wrapper"> 3436<noscript class="small-hide medium-hide"><form method="post" action="/localization" id="HeaderLanguageMobileFormNoScript" accept-charset="UTF-8" class="localization-form" enctype="multipart/form-data"><input type="hidden" name="form_type" value="localization" /><input type="hidden" name="utf8" value="â" /><input type="hidden" name="_method" value="put" /><input type="hidden" name="return_to" value="/cart" /><div class="localization-form__select"> 3437 <span class="visually-hidden" id="HeaderLanguageMobileLabelNoScript">Language</span> 3438 <select class="localization-selector link" name="locale_code" aria-labelledby="HeaderLanguageMobileLabelNoScript"><option value="en" lang="en" selected> 3439 English 3440 </option><option value="hi" lang="hi"> 3441 हिनà¥à¤¦à¥ 3442 </option><option value="kn" lang="kn"> 3443 à²à²¨à³à²¨à²¡ 3444 </option><option value="ta" lang="ta"> 3445 தமிழ௠3446 </option></select> 3447 <svg aria-hidden="true" focusable="false" class="icon icon-caret" viewBox="0 0 10 6"> 3448 <path fill-rule="evenodd" clip-rule="evenodd" d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z" fill="currentColor"> 3449</svg> 3450 3451 </div> 3452 <button class="button button--tertiary">Update language</button></form></noscript> 3453 3454 <localization-form class="small-hide medium-hide no-js-hidden"><form method="post" action="/localization" id="HeaderLanguageForm" accept-charset="UTF-8" class="localization-form" enctype="multipart/form-data"><input type="hidden" name="form_type" value="localization" /><input type="hidden" name="utf8" value="â" /><input type="hidden" name="_method" value="put" /><input type="hidden" name="return_to" value="/cart" /><div> 3455 <span class="visually-hidden" id="HeaderLanguageLabel">Language</span><div class="disclosure"> 3456 <button 3457 type="button" 3458 class="disclosure__button localization-form__select localization-selector link link--text caption-large" 3459 aria-expanded="false" 3460 aria-controls="HeaderLanguageList" 3461 aria-describedby="HeaderLanguageLabel" 3462 > 3463 <span>English</span> 3464 <svg aria-hidden="true" focusable="false" class="icon icon-caret" viewBox="0 0 10 6"> 3465 <path fill-rule="evenodd" clip-rule="evenodd" d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z" fill="currentColor"> 3466</svg> 3467 3468 </button> 3469 <div class="disclosure__list-wrapper" hidden> 3470 <ul id="HeaderLanguageList" role="list" class="disclosure__list list-unstyled"><li class="disclosure__item" tabindex="-1"> 3471 <a 3472 class="link link--text disclosure__link caption-large disclosure__link--active focus-inset" 3473 href="#" 3474 hreflang="en" 3475 lang="en" 3476 3477 aria-current="true" 3478 3479 data-value="en" 3480 > 3481 English 3482 </a> 3483 </li><li class="disclosure__item" tabindex="-1"> 3484 <a 3485 class="link link--text disclosure__link caption-large focus-inset" 3486 href="#" 3487 hreflang="hi" 3488 lang="hi" 3489 3490 data-value="hi" 3491 > 3492 हिनà¥à¤¦à¥ 3493 </a> 3494 </li><li class="disclosure__item" tabindex="-1"> 3495 <a 3496 class="link link--text disclosure__link caption-large focus-inset" 3497 href="#" 3498 hreflang="kn" 3499 lang="kn" 3500 3501 data-value="kn" 3502 > 3503 à²à²¨à³à²¨à²¡ 3504 </a> 3505 </li><li class="disclosure__item" tabindex="-1"> 3506 <a 3507 class="link link--text disclosure__link caption-large focus-inset" 3508 href="#" 3509 hreflang="ta" 3510 lang="ta" 3511 3512 data-value="ta" 3513 > 3514 தமிழ௠3515 </a> 3516 </li></ul> 3517 </div> 3518</div> 3519<input type="hidden" name="locale_code" value="en"> 3520</div></form></localization-form></div> 3521 3522 3523<details-modal class="header__search"> 3524 <details> 3525 <summary class="header__icon header__icon--search header__icon--summary link focus-inset modal__toggle" aria-haspopup="dialog" aria-label="Search">
3526 <span> 3527 <svg xmlns="http://www.w3.org/2000/svg" width="17" height="17" viewBox="0 0 17 17" fill="none"> 3528 <path d="M14.3697 13.4826L16.8236 15.9353C16.9381 16.0538 17.0014 16.2125 17 16.3772C16.9985 16.5419 16.9325 16.6995 16.816 16.816C16.6995 16.9325 16.5419 16.9985 16.3772 17C16.2125 17.0014 16.0538 16.9381 15.9353 16.8236L13.4813 14.3697C11.8777 15.7436 9.80423 16.443 7.69605 16.3211C5.58787 16.1993 3.60882 15.2656 2.17419 13.7161C0.739566 12.1665 -0.0391267 10.1215 0.00151443 8.01019C0.0421556 5.89888 0.898971 3.88537 2.39217 2.39217C3.88537 0.898971 5.89888 0.0421556 8.01019 0.00151443C10.1215 -0.0391267 12.1665 0.739566 13.7161 2.17419C15.2656 3.60882 16.1993 5.58787 16.3211 7.69605C16.443 9.80423 15.7436 11.8777 14.3697 13.4813V13.4826ZM8.16748 15.0783C10.0004 15.0783 11.7582 14.3502 13.0542 13.0542C14.3502 11.7582 15.0783 10.0004 15.0783 8.16748C15.0783 6.33461 14.3502 4.5768 13.0542 3.28076C11.7582 1.98473 10.0004 1.25662 8.16748 1.25662C6.33461 1.25662 4.5768 1.98473 3.28076 3.28076C1.98473 4.5768 1.25662 6.33461 1.25662 8.16748C1.25662 10.0004 1.98473 11.7582 3.28076 13.0542C4.5768 14.3502 6.33461 15.0783 8.16748 15.0783Z" fill="black"/> 3529</svg> 3530 <svg class="modal__toggle-close icon icon-close" aria-hidden="true" focusable="false"> 3531 <use href="#icon-close"> 3532 </svg> 3533 </span> 3534 </summary> 3535 <div class="search-modal modal__content gradient" role="dialog" aria-modal="true" aria-label="Search"> 3536 <div class="modal-overlay"></div> 3537 <div class="search-modal__content search-modal__content-bottom" tabindex="-1"><predictive-search class="search-modal__form" data-loading-text="Loading..."><form action="/search" method="get" role="search" class="search search-modal__form"> 3538 <div class="field"> 3539 <input class="search__input field__input" 3540 id="Search-In-Modal" 3541 type="search" 3542 name="q" 3543 value="" 3544 placeholder="Search"role="combobox" 3545 aria-expanded="false" 3546 aria-owns="predictive-search-results" 3547 aria-controls="predictive-search-results" 3548 aria-haspopup="listbox" 3549 aria-autocomplete="list" 3550 autocorrect="off" 3551 autocomplete="off" 3552 autocapitalize="off" 3553 spellcheck="false"> 3554 <!-- <label class="field__label" for="Search-In-Modal">Search</label> 3555 <input type="hidden" name="options[prefix]" value="last"> --> 3556 <button type="reset" class="reset__button field__button hidden" aria-label="Clear search term"> 3557 <svg class="icon icon-close" aria-hidden="true" focusable="false"> 3558 <use xlink:href="#icon-reset"> 3559 </svg> 3560 </button> 3561 <button class="search__button field__button" aria-label="Search"> 3562 <svg class="icon icon-search" aria-hidden="true" focusable="false"> 3563 <use href="#icon-search"> 3564 </svg> 3565 </button> 3566 </div><div class="predictive-search predictive-search--header" tabindex="-1" data-predictive-search> 3567 3568 <div class="predictive-search__loading-state"> 3569 <svg aria-hidden="true" focusable="false" class="spinner" viewBox="0 0 66 66" xmlns="http://www.w3.org/2000/svg"> 3570 <circle class="path" fill="none" stroke-width="6" cx="33" cy="33" r="30"></circle> 3571 </svg> 3572 </div> 3573 </div> 3574 3575 <span class="predictive-search-status visually-hidden" role="status" aria-hidden="true"></span></form></predictive-search><button type="button" class="search-modal__close-button modal__close-button link link--text focus-inset" aria-label="Close"> 3576 <svg class="icon icon-close" aria-hidden="true" focusable="false"> 3577 <use href="#icon-close"> 3578 </svg> 3579 </button> 3580 </div> 3581 </div> 3582 </details> 3583</details-modal> 3584 3585 3586 <a id="kp-account-default" 3587 href="#" 3588 class="header__icon header__icon--account link focus-inset small-hide "> 3589 3590 <svg xmlns="http://www.w3.org/2000/svg" width="17" height="18" viewBox="0 0 17 18" fill="none" class="icon icon-account"> 3591 <path d="M0.930054 14.9161C0.930054 13.7996 1.31022 12.7288 1.98693 11.9393C2.66363 11.1498 3.58144 10.7063 4.53845 10.7063H11.7552C12.7122 10.7063 13.63 11.1498 14.306
35917 11.9393C14.9835 12.7288 15.3636 13.7996 15.3636 14.9161C15.3636 15.4743 15.1735 16.0097 14.8352 16.4045C14.4968 16.7992 14.0379 17.021 13.5594 17.021H2.73425C2.25575 17.021 1.79684 16.7992 1.45849 16.4045C1.12014 16.0097 0.930054 15.4743 0.930054 14.9161Z" stroke="black" stroke-width="1.5" stroke-linejoin="round"/> 3592 <path d="M8.30518 7.8926C10.0193 7.8926 11.4088 6.50305 11.4088 4.78895C11.4088 3.07485 10.0193 1.6853 8.30518 1.6853C6.59109 1.6853 5.20154 3.07485 5.20154 4.78895C5.20154 6.50305 6.59109 7.8926 8.30518 7.8926Z" stroke="black" stroke-width="1.5"/> 3593</svg> 3594 3595 <span class="visually-hidden">Log in</span> 3596</a> 3597
3598<script> 3599document.addEventListener('DOMContentLoaded', function() { 3600 var defaultAccountLink = document.getElementById('kp-account-default'); 3601 3602 var isLoggedIn = false; 3603 3604 if (defaultAccountLink && !isLoggedIn) { 3605 3606 defaultAccountLink.addEventListener('click', function(e) { 3607 e.preventDefault(); // stop Shopify redirect 3608 3609 if (typeof shipRocketMarketingLogin === 'function') { 3610 shipRocketMarketingLogin(); // open Shiprocket popup 3611 } else { 3612 console.warn("Shiprocket login function not found"); 3613 } 3614 }); 3615 } 3616}); 3617</script>
3617<a href="/cart" class="header__icon header__icon--cart link focus-inset" id="cart-icon-bubble"><svg xmlns="http://www.w3.org/2000/svg" width="21" height="21" viewBox="0 0 21 21" fill="none"> 3618<path d="M13.33 7.04479L13.3426 7.20619H13.5045H16.5257C16.9201 7.20619 17.2998 7.36899 17.5808 7.66112C17.8621 7.95348 18.0213 8.3514 18.0213 8.76767V19.1866C18.0213 19.6028 17.8621 20.0008 17.5808 20.2931C17.2998 20.5853 16.9201 20.7481 16.5257 20.7481H1.82485C1.43044 20.7481 1.05074 20.5853 0.769705 20.2931C0.488444 20.0008 0.329297 19.6028 0.329297 19.1866V8.76767C0.329297 8.3514 0.488444 7.95348 0.769705 7.66112C1.05074 7.36899 1.43044 7.20619 1.82485 7.20619H4.84604H5.00793L5.02051 7.04479C5.10541 5.95612 5.58135 4.9419 6.35179 4.20334C7.12204 3.46497 8.13012 3.0561 9.17528 3.0561C10.2204 3.0561 11.2285 3.46497 11.9988 4.20334C12.7692 4.9419 13.2451 5.95612 13.33 7.04479ZM9.17529 4.77241H9.17526C8.56886 4.77247 7.98385 4.9997 7.52725 5.41078C7.07081 5.82171 6.77327 6.38866 6.68739 7.00712L6.65975 7.20619H6.86073H11.4898H11.6908L11.6632 7.00712C11.5773 6.38866 11.2797 5.82171 10.8233 5.41078C10.3667 4.9997 9.78169 4.77247 9.17529 4.77241ZM16.1916 19.0143H16.3666V18.8393V9.11497V8.93997H16.1916H13.5187H13.3437V9.11497V10.1569C13.3437 10.3889 13.255 10.6102 13.099 10.7723C12.9433 10.9341 12.7336 11.0237 12.5164 11.0237C12.2992 11.0237 12.0895 10.9341 11.9337 10.7723C11.7778 10.6102 11.689 10.3889 11.689 10.1569V9.11497V8.93997H11.514H6.8365H6.6615V9.11497V10.1569C6.6615 10.3889 6.57276 10.6102 6.41681 10.7723C6.26109 10.9341 6.05136 11.0237 5.83417 11.0237C5.61698 11.0237 5.40726 10.9341 5.25153 10.7723C5.09559 10.6102 5.00684 10.3889 5.00684 10.1569V9.11497V8.93997H4.83184H2.15896H1.98396V9.11497V18.8393V19.0143H2.15896H16.1916Z" fill="black" stroke="white" stroke-width="0.35"/> 3619<circle cx="15.0397" cy="6.03844" r="5.46154" fill="#FF0000" stroke="white"/> 3620</svg><span class="visually-hidden">Cart</span></a> 3621 </div> 3622 </header> 3623 3624 3625 <div class="custom_only_for_mobile_bhoops_search search-modal__content search-modal__content-bottom" tabindex="-1"><predictive-search class="search-modal__form" data-loading-text="Loading..."><form action="/search" method="get" role="search" class="search search-modal__form"> 3626 <div class="field"> 3627 <input class="search__input field__input" 3628 id="" 3629 type="search" 3630 name="q" 3631 value="" 3632 placeholder="Search"role="combobox" 3633 aria-expanded="false" 3634 aria-owns="predictive-search-results" 3635 aria-controls="predictive-search-results" 3636 aria-haspopup="listbox" 3637 aria-autocomplete="list" 3638 autocorrect="off" 3639 autocomplete="off" 3640 autocapitalize="off" 3641 spellcheck="false"> 3642 <!-- <label class="field__label" for="">Search</label> 3643 <input type="hidden" name="options[prefix]" value="last"> --> 3644 <button type="reset" class="reset__button field__button hidden" aria-label="Clear search term"> 3645 <svg class="icon icon-close" aria-hidden="true" focusable="false"> 3646 <use xlink:href="#icon-reset"> 3647 </svg> 3648 </button> 3649 <button class="search__button field__button" aria-label="Search"> 3650 <svg class="icon icon-search" aria-hidden="true" focusable="false"> 3651 <use href="#icon-search"> 3652 </svg> 3653 </button> 3654 </div><div class="predictive-search predictive-search--header" tabindex="-1" data-predictive-search> 3655 3656 <div class="predictive-search__loading-state"> 3657 <svg aria-hidden="true" focusable="false" class="spinner" viewBox="0 0 66 66" xmlns="http://www.w3.org/2000/svg"> 3658 <circle class="path" fill="none" stroke-width="6" cx="33" cy="33" r="30"></circle> 3659 </svg> 3660 </div> 3661 </div> 3662
3663 <span class="predictive-search-status visually-hidden" role="status" aria-hidden="true"></span></form></predictive-search> 3664 </div> 3665</sticky-header>
3666<script type="application/ld+json"> 3667 { 3668 "@context": "https://schema.org", 3669 "@type": "Organization", 3670 "name": "Dharishah Ayurveda", 3671 "legalName": "H. Dhari Shah Pharmacy", 3672 "foundingDate": "1889-01-01", 3673 "slogan": "Serving Humanity Through Ayurveda Since 1889", 3674 "url": "https:\/\/dharishahayurveda.com", 3675 3676 "logo": "https:\/\/dharishahayurveda.com\/cdn\/shop\/files\/dharishah-logo_1.svg?v=1705642253\u0026width=500", 3677 3678 "address": { 3679 "@type": "PostalAddress", 3680 "streetAddress": "9, Industrial Area, HSIIDC", 3681 "addressLocality": "Ambala Cantt", 3682 "addressRegion": "Haryana", 3683 "postalCode": "133001", 3684 "addressCountry": "IN" 3685 }, 3686 "hasCredential": [ 3687 { 3688 "@type": "EducationalOccupationalCredential", 3689 "name": "AYUSH License No. ISM 15(HR)", 3690 "credentialCategory": "license" 3691 }, 3692 { 3693 "@type": "EducationalOccupationalCredential", 3694 "name": "GMP Certified", 3695 "credentialCategory": "certification" 3696 }, 3697 { 3698 "@type": "EducationalOccupationalCredential", 3699 "name": "FSSAI Export Licence 10825999000216", 3700 "credentialCategory": "license" 3701 }, 3702 { 3703 "@type": "EducationalOccupationalCredential", 3704 "name": "US FDA Facility Registration", 3705 "credentialCategory": "registration" 3706 } 3707 ], 3708 "knowsAbout": ["Ayurveda", "Ayurvedic medicine", "men's wellness", "women's wellness", "prostate health", "liver health", "diabetes care", "Ayurvedic herbs"], 3709 "founder": { 3710 "@type": "Person", 3711 "name": "Hakim Dhari Shah", 3712 "alternateName": "Girdhari Lal Dhamija", 3713 "birthDate": "1869", 3714 "deathDate": "1943" 3715 }, 3716 "sameAs": ["https://www.facebook.com/dharishahayurved/","https://www.instagram.com/dharishah.ayurveda/","https://youtube.com/channel/UCWCQ1T9Bq8malXWG5vfb92w","https://www.wikidata.org/wiki/Q139591581"] 3717 } 3718</script>
3718<script type="application/ld+json"> 3719 { 3720 "@context": "https://schema.org", 3721 "@type": ["LocalBusiness", "Manufacturer"], 3722 "@id": "https:\/\/dharishahayurveda.com#localbusiness", 3723 "name": "Dharishah Ayurveda â Ambala Cantt Manufacturing", 3724 "legalName": "H. Dhari Shah Pharmacy", 3725 "url": "https:\/\/dharishahayurveda.com", 3726 3727 "logo": "https:\/\/dharishahayurveda.com\/cdn\/shop\/files\/dharishah-logo_1.svg?v=1705642253\u0026width=500", 3728 "image": "https:\/\/dharishahayurveda.com\/cdn\/shop\/files\/dharishah-logo_1.svg?v=1705642253\u0026width=500", 3729 3730 "address": { 3731 "@type": "PostalAddress", 3732 "streetAddress": "9, Industrial Area, HSIIDC", 3733 "addressLocality": "Ambala Cantt", 3734 "addressRegion": "Haryana", 3735 "postalCode": "133001", 3736 "addressCountry": "IN" 3737 }, 3738 "foundingDate": "1889-01-01" 3739 } 3740</script>
3740 3741</div> 3742<!-- END sections: header-group --> 3743 <main id="MainContent" class="content-for-layout focus-none " role="main" tabindex="-1"> 3744 <div id="shopify-section-template--29733385371808__cart-items" class="shopify-section"><link href="//dharishahayurveda.com/cdn/shop/t/94/assets/component-cart.css?v=121909270367388501481786373484" rel="stylesheet" type="text/css" media="all" /> 3745<link href="//dharishahayurveda.com/cdn/shop/t/94/assets/component-cart-items.css?v=169186963146679461961786373484" rel="stylesheet" type="text/css" media="all" /> 3746<link href="//dharishahayurveda.com/cdn/shop/t/94/assets/component-totals.css?v=15906652033866631521786373485" rel="stylesheet" type="text/css" media="all" /> 3747<link href="//dharishahayurveda.com/cdn/shop/t/94/assets/component-price.css?v=3169368407291405341786373484" rel="stylesheet" type="text/css" media="all" /> 3748<link href="//dharishahayurveda.com/cdn/shop/t/94/assets/component-discounts.css?v=61058650067499349141786373484" rel="stylesheet" type="text/css" media="all" /> 3749<link href="//dharishahayurveda.com/cdn/shop/t/94/assets/component-loading-overlay.css?v=113748359493346323121786373485" rel="stylesheet" type="text/css" media="all" /> 3750<link href="//dharishahayurveda.com/cdn/shop/t/94/assets/quantity-popover.css?v=167511804740778325791786373485" rel="stylesheet" type="text/css" media="all" /> 3751<style data-shopify>.section-template--29733385371808__cart-items-padding { 3752 padding-top: 27px; 3753 padding-bottom: 27px; 3754 } 3755 3756 @media screen and (min-width: 750px) { 3757 .section-template--29733385371808__cart-items-padding { 3758 padding-top: 36px; 3759 padding-bottom: 36px; 3760 } 3761 }</style>
3761<script src="//dharishahayurveda.com/cdn/shop/t/94/assets/cart.js?v=4193034376803868811786373487" defer="defer"></script>
3761<script src="//dharishahayurveda.com/cdn/shop/t/94/assets/quantity-popover.js?v=82513154315370490311786373485" defer="defer"></script>
3761 3762 3763<cart-items class="page-width is-empty"> 3764 <div class="title-wrapper-with-link"> 3765 <h1 class="title title--primary">Your cart</h1> 3766 <a href="/collections/all" class="underlined-link">Continue shopping</a> 3767 </div> 3768 3769 <div class="cart__warnings"> 3770 <h1 class="cart__empty-text">Your cart is empty</h1> 3771 <a href="/collections/all" class="button"> 3772 Continue shopping 3773 </a><h2 class="cart__login-title">Have an account?</h2> 3774 <p class="cart__login-paragraph"> 3775 <a href="/account/login" class="link underlined-link">Log in</a> to check out faster. 3776 </p></div> 3777 3778 <form action="/cart" class="cart__contents critical-hidden" method="post" id="cart"> 3779 <div class="cart__items" id="main-cart-items" data-id="template--29733385371808__cart-items"> 3780 <div class="js-contents"></div> 3781 </div> 3782 3783 <p class="visually-hidden" id="cart-live-region-text" aria-live="polite" role="status"></p> 3784 <p class="visually-hidden" id="shopping-cart-line-item-status" aria-live="polite" aria-hidden="true" role="status"> 3785 Loading... 3786 </p> 3787 </form> 3788</cart-items> 3789 3790 3791</div><div id="shopify-section-template--29733385371808__cart-footer" class="shopify-section cart__footer-wrapper"><link href="//dharishahayurveda.com/cdn/shop/t/94/assets/component-cart.css?v=121909270367388501481786373484" rel="stylesheet" type="text/css" media="all" /> 3792<link href="//dharishahayurveda.com/cdn/shop/t/94/assets/component-totals.css?v=15906652033866631521786373485" rel="stylesheet" type="text/css" media="all" /> 3793<link href="//dharishahayurveda.com/cdn/shop/t/94/assets/component-price.css?v=3169368407291405341786373484" rel="stylesheet" type="text/css" media="all" /> 3794<link href="//dharishahayurveda.com/cdn/shop/t/94/assets/component-discounts.css?v=61058650067499349141786373484" rel="stylesheet" type="text/css" media="all" /> 3795<style data-shopify>.section-template--29733385371808__cart-footer-padding { 3796 padding-top: 15px; 3797 padding-bottom: 30px; 3798 } 3799 3800 @media screen and (min-width: 750px) { 3801 .section-template--29733385371808__cart-footer-padding { 3802 padding-top: 20px; 3803 padding-bottom: 40px; 3804 } 3805 }</style><div class="page-width is-empty" id="main-cart-footer" data-id="template--29733385371808__cart-footer"> 3806 <div> 3807 <div class="cart__footer section-template--29733385371808__cart-footer-padding"><div class="cart__blocks"> 3808 3809<div class="js-contents" > 3810 <div></div> 3811 3812 <div class="totals"> 3813 <h2 class="totals__total">Estimated total</h2> 3814 <p class="totals__total-value">â¹ 0.00</p> 3815 </div> 3816 3817 <small class="tax-note caption-large rte">Tax included and shipping and discounts calculated at checkout 3818</small> 3819 </div> 3820<div class="cart__ctas" > 3821 <noscript> 3822 <button type="submit" class="cart__update-button button button--secondary" form="cart"> 3823 Update 3824 </button> 3825 </noscript> 3826 3827 <!-- <button 3828 type="submit" 3829 id="checkout" 3830 class="cart__checkout-button button" 3831 name="checkout" 3832 3833 disabled 3834 3835 form="cart" 3836 > 3837 Checkout 3838 </button> --> 3839 3840 3841 <div id="headless-button" class="shiprocket-headless" data-type="mini-cart"><button type="button" class="sr-headless-checkout" onclick="shiprocketCheckoutEvents.buyCart(event)" style="opacity: 1;"><div class="sr-d-flex flex-center"><div class="sr-d-flex full-width flex-center"><span class="sr-checkout-visible2" style="display: inline-block;">BUY NOW</span> <img src="https://fastrr-boost-ui.pickrr.com/assets/images/boost_button/upi_options.svg" alt="Google Pay | Phone Pay | UPI" class="sr-pl-15 sr-checkout-visible" style="display: inline-block;"><div class="loader5" style="display: none;"></div><img src="https://fastrr-boost-ui.pickrr.com/assets/images/boost_button/right_arrow.svg" class="sr-pl-15 sr-checkout-visible1" alt="right_arrow" style="display: inline-block;"></div><div><span class="sr-powered-by"><img src="https://fastrr-boost-ui.pickrr.com/assets/images/boost_button/powered_by.svg " alt=""></span></div></div></button></div> 3842 3843 </div> 3844 3845 <div id="cart-errors"></div> 3846 </div> 3847 </div> 3848 </div> 3849</div> 3850
3851<script> 3852 document.addEventListener('DOMContentLoaded', function () { 3853 function isIE() { 3854 const ua = window.navigator.userAgent; 3855 const msie = ua.indexOf('MSIE '); 3856 const trident = ua.indexOf('Trident/'); 3857 3858 return msie > 0 || trident > 0; 3859 } 3860 3861 if (!isIE()) return; 3862 const cartSubmitInput = document.createElement('input'); 3863 cartSubmitInput.setAttribute('name', 'checkout'); 3864 cartSubmitInput.setAttribute('type', 'hidden'); 3865 document.querySelector('#cart').appendChild(cartSubmitInput); 3866 document.querySelector('#checkout').addEventListener('click', function (event) { 3867 document.querySelector('#cart').submit(); 3868 }); 3869 }); 3870</script>
3870 3871 3872 3873</div> 3874 </main> 3875 3876 <!-- BEGIN sections: footer-group --> 3877<div id="shopify-section-sections--29733385109664__footer_custom_8gFxkm" class="shopify-section shopify-section-group-footer-group Custom Footer"> 3878 3879<div class="custom_footer_section_bs_custom"> 3880 <div class="custom_bs_inner_lauout"> 3881 <div class="custom_footer_inner_lauout_block_container"> 3882 <div class="custom_inner_footer_blocks_bs"> 3883 <div class="first_block_content_layout block_footer_custom"> 3884 <img class="desktop_image_footer_logo" src="//dharishahayurveda.com/cdn/shop/files/Group_1686551994.svg?v=1750075504" width="auto" height="auto" loading="lazy" /> 3885 <img class="mobile_image_footer_logo" src="https://cdn.shopify.com/s/files/1/0619/3007/8368/files/Group_1686551995.png?v=1750148372" width="auto" height="auto" loading="lazy" /> 3886 <div class="social_media_comns_custom_footer"> 3887 <a href="https://wa.me/917404344408/?text=Hello"><svg width="800px" height="800px" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 3888<path fill-rule="evenodd" clip-rule="evenodd" d="M3.50002 12C3.50002 7.30558 7.3056 3.5 12 3.5C16.6944 3.5 20.5 7.30558 20.5 12C20.5 16.6944 16.6944 20.5 12 20.5C10.3278 20.5 8.77127 20.0182 7.45798 19.1861C7.21357 19.0313 6.91408 18.9899 6.63684 19.0726L3.75769 19.9319L4.84173 17.3953C4.96986 17.0955 4.94379 16.7521 4.77187 16.4751C3.9657 15.176 3.50002 13.6439 3.50002 12ZM12 1.5C6.20103 1.5 1.50002 6.20101 1.50002 12C1.50002 13.8381 1.97316 15.5683 2.80465 17.0727L1.08047 21.107C0.928048 21.4637 0.99561 21.8763 1.25382 22.1657C1.51203 22.4552 1.91432 22.5692 2.28599 22.4582L6.78541 21.1155C8.32245 21.9965 10.1037 22.5 12 22.5C17.799 22.5 22.5 17.799 22.5 12C22.5 6.20101 17.799 1.5 12 1.5ZM14.2925 14.1824L12.9783 15.1081C12.3628 14.7575 11.6823 14.2681 10.9997 13.5855C10.2901 12.8759 9.76402 12.1433 9.37612 11.4713L10.2113 10.7624C10.5697 10.4582 10.6678 9.94533 10.447 9.53028L9.38284 7.53028C9.23954 7.26097 8.98116 7.0718 8.68115 7.01654C8.38113 6.96129 8.07231 7.046 7.84247 7.24659L7.52696 7.52195C6.76823 8.18414 6.3195 9.2723 6.69141 10.3741C7.07698 11.5163 7.89983 13.314 9.58552 14.9997C11.3991 16.8133 13.2413 17.5275 14.3186 17.8049C15.1866 18.0283 16.008 17.7288 16.5868 17.2572L17.1783 16.7752C17.4313 16.5691 17.5678 16.2524 17.544 15.9269C17.5201 15.6014 17.3389 15.308 17.0585 15.1409L15.3802 14.1409C15.0412 13.939 14.6152 13.9552 14.2925 14.1824Z" fill="#000000"/> 3889</svg></a> 3890 3891 <a class="insta_code_bhooops" href="https://www.instagram.com/dharishah.ayurveda"> 3892 <svg width="800px" height="800px" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 3893<path d="M3 11C3 7.22876 3 5.34315 4.17157 4.17157C5.34315 3 7.22876 3 11 3H13C16.7712 3 18.6569 3 19.8284 4.17157C21 5.34315 21 7.22876 21 11V13C21 16.7712 21 18.6569 19.8284 19.8284C18.6569 21 16.7712 21 13 21H11C7.22876 21 5.34315 21 4.17157 19.8284C3 18.6569 3 16.7712 3 13V11Z" stroke="#33363F" stroke-width="2"/> 3894<circle class="insta_code_bhooops1" cx="16.5" cy="7.5" r="1.5" fill="#33363F" style=" 3895 fill: #C59C46; 3896 stroke: none; 3897"></circle> 3898<circle class="insta_code_bhooops2" cx="12" cy="12" r="3" stroke="#33363F" stroke-width="2" style=" 3899 stroke: #C59C46; 3900"></circle> 3901</svg> 3902 </a> 3903 <a href="https://facebook.com/dharishahayurved/"> 3904 <svg width="800px" height="800px" viewBox="-5 0 20 20" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> 3905 3906 <title>facebook [#176]</title> 3907 <desc>Created with Sketch.</desc> 3908 <defs> 3909 3910</defs> 3911 <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"> 3912 <g id="Dribbble-Light-Preview" transform="translate(-385.000000, -7399.000000)" fill="#000000"> 3913 <g id="icons" transform="translate(56.000000, 160.000000)"> 3914 <path d="M335.821282,7259 L335.821282,7250 L338.553693,7250 L339,7246 L335.821282,7246 L335.821282,7244.052 C335.821282,7243.022 335.847593,7242 337.286884,7242 L338.744689,7242 L338.744689,7239.14 C338.744689,7239.097 337.492497,7239 336.225687,7239 C333.580004,7239 331.923407,7240.657 331.923407,7243.7 L331.923407,7246 L329,7246 L329,7250 L331.923407,7250 L331.923407,7259 L335.821282,7259 Z" id="facebook-[#176]"> 3915 3916</path> 3917 </g> 3918 </g> 3919 </g> 3920</svg> 3921 </a> 3922 3923 </div> 3924 </div> 3925 <div class="second_block_content_layout block_footer_custom"> 3926 <div class="maiubn_menu_custoim_footer"> 3927 <ul class="menu"> 3928 3929 3930 <li class="menu-link main_menu_links_custom"><details class="accordian footer-collapsible" name="footer-main-sections--29733385109664__footer_custom_8gFxkm"> 3931 <summary class="meain_custom_footer_meni"> 3932 Shop by Concern <span class="collapse_footer_menu">+</span> 3933 </summary> 3934 <ul class="menu dropdown-child"><li class="menu-link"> 3935 <a href="/collections/prostate-health">Prostate Health</a></li><li class="menu-link"> 3936 <a href="/collections/mens">Men's Wellness</a></li><li class="menu-link"> 3937 <a href="/collections/women-health">Women's Wellness</a></li><li class="menu-link"> 3938 <a href="/collections/healthy-heart">Heart Health</a></li><li class="menu-link"> 3939 <a href="/collections/diabetes">Diabetes Care</a></li><li class="menu-link"> 3940 <a href="/collections/joint-pain">Joint Support</a></li><li class="menu-link"> 3941 <a href="/collections/kidney-health">Kidney Care</a></li><li class="menu-link"> 3942 <a href="/collections/immunity-support">
3942Immunity Support</a></li><li class="menu-link"> 3943 <a href="/collections/thyroid-support">Thyroid Support</a></li><li class="menu-link"> 3944 <a href="/collections/cough">Cough and Lungs</a></li><li class="menu-link"> 3945 <a href="/collections/liver-health">Liver Care</a></li><li class="menu-link"> 3946 <a href="/collections/piles">Piles Care</a></li><li class="menu-link"> 3947 <a href="/collections/digestion">Digestion Support</a></li><li class="menu-link"> 3948 <a href="/collections/brain-health">Brain Support</a></li><li class="menu-link"> 3949 <a href="/collections/skin-health">Skin and Hair</a></li><li class="menu-link"> 3950 <a href="/collections/weight-gain-loss">Weight Gain/Loss</a></li></ul> 3951 </details></li> 3952 3953 <li class="menu-link main_menu_links_custom"><details class="accordian footer-collapsible" name="footer-main-sections--29733385109664__footer_custom_8gFxkm"> 3954 <summary class="meain_custom_footer_meni"> 3955 Shop by Ingredients <span class="collapse_footer_menu">+</span> 3956 </summary> 3957 <ul class="menu dropdown-child"><li class="menu-link"> 3958 <a href="/collections/brahmi">Brahmi</a></li><li class="menu-link"> 3959 <a href="/collections/aloe-vera">Aloe Vera</a></li><li class="menu-link"> 3960 <a href="/collections/arjuna">Arjuna</a></li><li class="menu-link"> 3961 <a href="/collections/ashwagandha">Ashwagandha</a></li><li class="menu-link"> 3962 <a href="/collections/amla">Amla</a></li><li class="menu-link"> 3963 <a href="/collections/giloy">Giloy</a></li><li class="menu-link"> 3964 <a href="/collections/karela">Karela</a></li><li class="menu-link"> 3965 <a href="/collections/gokshura">Gokshura</a></li><li class="menu-link"> 3966 <a href="/collections/guggul">Guggul</a></li><li class="menu-link"> 3967 <a href="/collections/tulsi">Tulsi</a></li><li class="menu-link"> 3968 <a href="/collections/shilajit">Shilajit</a></li></ul> 3969 </details></li> 3970 3971 <li class="menu-link main_menu_links_custom"><details class="accordian footer-collapsible" name="footer-main-sections--29733385109664__footer_custom_8gFxkm"> 3972 <summary class="meain_custom_footer_meni"> 3973 Shop by product type <span class="collapse_footer_menu">+</span> 3974 </summary> 3975 <ul class="menu dropdown-child"><li class="menu-link"> 3976 <a href="/collections/capsules">Capsule</a></li><li class="menu-link"> 3977 <a href="/collections/ointments">Ointment</a></li><li class="menu-link"> 3978 <a href="/collections/brain-health">Brain Support</a></li><li class="menu-link"> 3979 <a href="/collections/oil">Oil</a></li></ul> 3980 </details></li> 3981 3982 <li class="menu-link main_menu_links_custom"><a href="/collections/health-packages" class="meain_custom_footer_meni">Shop Health Packages</a></li> 3983 3984 <li class="menu-link main_menu_links_custom"><a href="/pages/about-us" class="meain_custom_footer_meni">Our Rich History</a></li> 3985 3986 <li class="menu-link main_menu_links_custom"><a href="/blogs/news" class="meain_custom_footer_meni">Blog Posts</a></li> 3987 3988 <li class="menu-link main_menu_links_custom"><a href="https://dharishahayurveda.com/apps/shipway_track" class="meain_custom_footer_meni">Track Your Order</a></li> 3989 3990 </ul> 3991 </div> 3992 </div> 3993 <div class="third_block_content_layout block_footer_custom"> 3994 <div class="radius_box_for_alst_menu"> 3995 3996 <div class="maiubn_menu_custoim_footer"> 3997 <ul class="menu"> 3998 3999 4000 <li class="menu-link main_menu_links_custom"><details class="accordian footer-collapsible" name="footer-quick-sections--29733385109664__footer_custom_8gFxkm" open> 4001 <summary class="meain_custom_footer_meni"> 4002 Quick Links <span class="collapse_footer_menu">+</span> 4003 </summary> 4004 <ul class="menu dropdown-child"><li class="menu-link"> 4005 <a href="/policies/privacy-policy">Privacy Policy</a></li><li class="menu-link"> 4006 <a href="/policies/terms-of-service">Terms and Conditions</a></li><li class="menu-link"> 4007 <a href="/policies/refund-policy">Refund and Cancellation</a></li><li class="menu-link"> 4008 <a href="/pages/contact">Contact Us</a></li></ul> 4009 </details></li> 4010 4011 </ul> 4012 </div> 4013 </div> 4014 </div> 4015 </div> 4016 </div> 4017 </div> 4018</div> 4019 <img class="desktop_image_footer_logo footer_boottyom_pay" src="https://cdn.shopify.com/s/files/1/0619/3007/8368/files/Frame_1686551954.png?v=1750148924" width="auto" height="auto" loading="lazy" /> 4020 <img class="mobile_image_footer_logo footer_boottyom_pay" src="https://cdn.shopify.com/s/files/1/0619/3007/8368/files/Group_1686551922.png?v=1750148924" width="auto" height="auto" loading="lazy" /><address class="footer__credentials" style="font-style:normal;text-align:center;padding:14px 16px;font-size:0.85em;opacity:0.85;line-height:1.7;"> 4021 <div style="margin-bottom:6px;"> 4022 <strong>Dharishah Ayurveda</strong> — a brand of H. Dhari Shah Pharmacy 4023 </div> 4024 <div style="margin-bottom:6px;"> 4025 9, Industrial Area, HSIIDC, Ambala Cantt, Haryana 133006, India 4026 </div> 4027 <div style="margin-bottom:6px;"> 4028 WhatsApp / Phone: 4029 <a href="tel:+917404344408" style="color:inherit;text-decoration:underline;">+91 74043 44408</a> 4030 · 4031 Email: 4032 <a href="mailto:[email protected]" style="color:inherit;text-decoration:underline;">[email protected]</a> 4033 </div> 4034 <div style="opacity:0.82;"> 4035 AYUSH Licence <strong>ISM 15(HR)</strong> 4036 · GMP Certified 4037 · FSSAI 10825999000216 4038 · GSTIN 06AGZPD4502H1ZE 4039 </div> 4040 </address> 4041 4042<style> 4043 .custom_footer_section_bs_custom { 4044 padding: 0 5rem; 4045} 4046.third_block_content_layout.block_footer_custom { 4047 width: 29%; 4048} 4049 .second_block_content_layout.block_footer_custom { 4050 width: 29%; 4051} 4052 .first_block_content_layout.block_footer_custom { 4053 width: 42%; 4054} 4055 .first_block_content_layout.block_footer_custom img { 4056 width: 100%; 4057 max-width: 100%; 4058 height: auto; 4059} 4060 .social_media_comns_custom_footer { 4061 display: flex 4062; 4063 justify-content: space-between; 4064 align-items: center; 4065 max-width: 80%; 4066 margin-top: 1.5rem; 4067} 4068 .first_block_content_layout.block_footer_custom .social_media_comns_custom_footer img { 4069 max-width: 60px; 4070} 4071 4072 4073 .block_footer_custom { 4074 background: #EBDFCD; 4075 padding: 5rem 2.5rem; 4076}
4077 .custom_inner_footer_blocks_bs { 4078 display: flex 4079; 4080 justify-content: space-between; 4081} 4082 .first_block_content_layout.block_footer_custom { 4083 background: transparent; 4084} 4085 .first_block_content_layout.block_footer_custom { 4086 background: transparent; 4087 padding: 5rem 2.5rem; 4088 padding-left: 0; 4089} 4090 .custom_footer_section_bs_custom { 4091 padding-right: 0; 4092 padding-left: 3rem; 4093} 4094 .maiubn_menu_custoim_footer li { 4095 display: block; 4096 width: 100%; 4097 background: #FFFAF3; 4098 padding: 1rem; 4099 4100 border-radius: 10px; 4101 border: 1px solid black; 4102 color: black; 4103 font-size: 16px; 4104 font-weight: 500; 4105} 4106 li.menu-link.main_menu_links_custom { 4107 margin: 1rem 0; 4108} 4109 4110 .maiubn_menu_custoim_footer a { 4111 color: black; 4112 font-size: 16px; 4113 font-weight: 500; 4114 display: block; 4115} 4116.meain_custom_footer_meni span.collapse_footer_menu { 4117 font-size: 22px; 4118 line-height: 1; 4119 display: inline-block; 4120 transition: transform 0.2s ease; 4121} 4122 details.footer-collapsible[open] > summary .collapse_footer_menu { 4123 transform: rotate(45deg); 4124} 4125 a.meain_custom_footer_meni, 4126 summary.meain_custom_footer_meni { 4127 display: flex 4128; 4129 align-items: center; 4130 justify-content: space-between; 4131 padding-right: 1rem; 4132 font-size: 16px; 4133 font-weight: 500; 4134 line-height: 1.5; 4135 color: black; 4136} 4137 details.footer-collapsible { 4138 list-style: none; 4139 margin: 0; 4140 padding: 0; 4141} 4142 details.footer-collapsible > summary { 4143 list-style: none; 4144 cursor: pointer; 4145 margin: 0; 4146 padding: 0; 4147 padding-right: 1rem; 4148} 4149 details.footer-collapsible > summary::-webkit-details-marker { 4150 display: none; 4151} 4152 details.footer-collapsible > summary::marker { 4153 display: none; 4154 content: ''; 4155} 4156 ul.menu.dropdown-child li.menu-link { 4157 background: #EBDFCD; 4158 margin: 1rem 0; 4159} 4160 p.quick_links_custom_footer { 4161 font-size: 16px; 4162 font-weight: 500; 4163 color: black; 4164 margin-top: 0; 4165} 4166 .maiubn_menu_custoim_footer { 4167 display: flex 4168; 4169 flex-direction: column; 4170 row-gap: 1.2rem; 4171} 4172 .radius_box_for_alst_menu { 4173 background: #FFFAF3; 4174 padding: 1.5rem; 4175 border-radius: 10px; 4176 border: 1px solid black; 4177} 4178 .maiubn_menu_custoim_footer ul.menu.dropdown-child li.menu-link:hover { 4179 background: black; 4180 color: white; 4181} 4182 .maiubn_menu_custoim_footer ul.menu.dropdown-child li.menu-link:hover a { 4183 4184 color: white; 4185} 4186 .maiubn_menu_custoim_footer a { 4187 4188 transition: 0.4s; 4189} 4190 img.mobile_image_footer_logo { 4191 display: none; 4192} 4193 img.desktop_image_footer_logo { 4194 4195 display: block; 4196} 4197 img.desktop_image_footer_logo.footer_boottyom_pay { 4198 max-width: 100%; 4199 4200} 4201 details.footer-collapsible > ul.menu.dropdown-child { 4202 display: block; 4203} 4204 .maiubn_menu_custoim_footer ul.menu li.menu-link.main_menu_links_custom { 4205 margin-top: 0; 4206} 4207 .maiubn_menu_custoim_footer ul.menu { 4208 margin-top: 0; 4209} 4210.social_media_comns_custom_footer { 4211 max-width: 90%; 4212 margin: auto; 4213 margin-top: 2.5rem; 4214 gap: 2rem; 4215 justify-content: flex-start; 4216 align-items: center; 4217} 4218 .social_media_comns_custom_footer svg path { 4219 fill: #C59C46; 4220} 4221 .social_media_comns_custom_footer svg { 4222 max-width: 100%; 4223 height: auto; 4224 width: 50px; 4225} 4226 .social_media_comns_custom_footer .insta_code_bhooops svg path { 4227 stroke: #C59C46; 4228 fill: none; 4229} 4230 4231@media screen and (max-width: 768px) { 4232 img.mobile_image_footer_logo.footer_boottyom_pay { 4233 max-width: 100%; 4234} 4235 .custom_footer_section_bs_custom { 4236 padding-right: 0; 4237 padding-left: 0; 4238} 4239 img.desktop_image_footer_logo { 4240 display: none; 4241} 4242 img.mobile_image_footer_logo { 4243 display: block; 4244} 4245 .first_block_content_layout.block_footer_custom { 4246 width: 100%; 4247} 4248 .custom_inner_footer_blocks_bs { 4249 display: flex 4250; 4251 justify-content: space-between; 4252 flex-wrap: wrap; 4253} 4254 .first_block_content_layout.block_footer_custom img { 4255 width: 100%; 4256 max-width: 100%; 4257 height: auto; 4258 scale: 1; 4259 overflow: hidden; 4260} 4261 .first_block_content_layout.block_footer_custom { 4262 width: 100%; 4263 background: #5FA572; 4264} 4265 .first_block_content_layout.block_footer_custom .social_media_comns_custom_footer img { 4266 max-width: 60px; 4267 filter: invert(1); 4268} 4269 .social_media_comns_custom_footer { 4270 display: flex 4271; 4272 justify-content: space-between; 4273 align-items: center; 4274 max-width: 96%; 4275 margin: auto; 4276 margin-top: 1.5rem; 4277} 4278 .second_block_content_layout.block_footer_custom { 4279 width: 100%; 4280} 4281 .third_block_content_layout.block_footer_custom { 4282 width: 100%; 4283} 4284 .block_footer_custom { 4285 background: #EBDFCD; 4286 padding: 3rem 2.5rem; 4287} 4288 .second_block_content_layout.block_footer_custom { 4289 padding-bottom: 0; 4290} 4291 .first_block_content_layout.block_footer_custom { 4292 4293 padding: 0; 4294 padding-left: 0; 4295} 4296 .block_footer_custom { 4297 background: #FFF; 4298 padding: 3rem 2.5rem; 4299 } 4300 .block_footer_custom { 4301 background: #FFF; 4302 padding: 3rem 1.5rem; 4303 } 4304 .block_footer_custom { 4305 background: #FFF; 4306 padding: 2rem 1.5rem; 4307 } 4308 .maiubn_menu_custoim_footer ul.menu { 4309 margin-top: 0; 4310} 4311 4312 .third_block_content_layout.block_footer_custom { 4313 padding-top: 0; 4314} 4315 .third_block_content_layout.block_footer_custom .maiubn_menu_custoim_footer ul.menu { 4316 margin-bottom: 0; 4317} 4318 .third_block_content_layout.block_footer_custom .radius_box_for_alst_menu { 4319 border: none; 4320 padding: 0; 4321} 4322 .second_block_content_layout.block_footer_custom .maiubn_menu_custoim_footer ul.menu { 4323 margin-bottom: 0; 4324} 4325 .social_media_comns_custom_footer svg path { 4326 fill: white; 4327} 4328 .social_media_comns_custom_footer .insta_code_bhooops svg path { 4329 stroke: white; 4330 fill: none; 4331} 4332 circle.insta_code_bhooops1 { 4333 fill: white !important; 4334} 4335 circle.insta_code_bhooops2 { 4336 stroke: white !important; 4337} 4338 .social_media_comns_custom_footer svg { 4339 max-width: 100%; 4340 height: auto; 4341 width: 32px; 4342} 4343 .social_media_comns_custom_footer { 4344 4345 max-width: 80%; 4346 4347 } 4348} 4349</style></div> 4350<!-- END sections: footer-group --> 4351 4352 <ul hidden> 4353 <li id="a11y-refresh-page-message">Choosing a selection results in a full page refresh.</li> 4354 <li id="a11y-new-window-message">Opens in a new window.</li> 4355 </ul> 4356 4357
4357<script> 4358 window.shopUrl = 'https://dharishahayurveda.com'; 4359 window.routes = { 4360 cart_add_url: '/cart/add', 4361 cart_change_url: '/cart/change', 4362 cart_update_url: '/cart/update', 4363 cart_url: '/cart', 4364 predictive_search_url: '/search/suggest', 4365 }; 4366 4367 window.cartStrings = { 4368 error: `There was an error while updating your cart. Please try again.`, 4369 quantityError: `You can only add [quantity] of this item to your cart.`, 4370 }; 4371 4372 window.variantStrings = { 4373 addToCart: `Add to cart <svg width="24" height="23" viewBox="0 0 24 23" fill="none" xmlns="http://www.w3.org/2000/svg"> 4374<path d="M1 1H5L7.68 14.39C7.77144 14.8504 8.02191 15.264 8.38755 15.5583C8.75318 15.8526 9.2107 16.009 9.68 16H19.4C19.8693 16.009 20.3268 15.8526 20.6925 15.5583C21.0581 15.264 21.3086 14.8504 21.4 14.39L23 6H6M10 21C10 21.5523 9.55228 22 9 22C8.44772 22 8 21.5523 8 21C8 20.4477 8.44772 20 9 20C9.55228 20 10 20.4477 10 21ZM21 21C21 21.5523 20.5523 22 20 22C19.4477 22 19 21.5523 19 21C19 20.4477 19.4477 20 20 20C20.5523 20 21 20.4477 21 21Z" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path> 4375</svg>`, 4376 soldOut: `Sold out`, 4377 unavailable: `Unavailable`, 4378 unavailable_with_option: `[value] - Unavailable`, 4379 }; 4380 4381 window.quickOrderListStrings = { 4382 itemsAdded: `[quantity] items added`, 4383 itemAdded: `[quantity] item added`, 4384 itemsRemoved: `[quantity] items removed`, 4385 itemRemoved: `[quantity] item removed`, 4386 viewCart: `View cart`, 4387 each: `[money]/ea`, 4388 }; 4389 4390 window.accessibilityStrings = { 4391 imageAvailable: `Image [index] is now available in gallery view`, 4392 shareSuccess: `Link copied to clipboard`, 4393 pauseSlideshow: `Pause slideshow`, 4394 playSlideshow: `Play slideshow`, 4395 recipientFormExpanded: `Gift card recipient form expanded`, 4396 recipientFormCollapsed: `Gift card recipient form collapsed`, 4397 }; 4398 </script>
4398<script src="//dharishahayurveda.com/cdn/shop/t/94/assets/predictive-search.js?v=162273246065392412141786373485" defer="defer"></script>
4398 4399 4400 4401 4402
4402<script src="//dharishahayurveda.com/cdn/shop/t/94/assets/product-ux.js?v=88064185058919206191786373485" defer="defer"></script>
4402<script src="//dharishahayurveda.com/cdn/shop/t/94/assets/collection-ux.js?v=95829164127391954851786373484" defer="defer"></script>
4402 4403 4404
4404<script> 4405 4406 async function sectionUpdate() { 4407 try { 4408 const res = await fetch('/cart.json'); 4409 const data = await res.json(); 4410 const total = (data.total_price / 100).toFixed(2); 4411 document.getElementById("fc_cart_total_amt").innerHTML = `â¹ ${total}`; 4412 const updatedSection = document.querySelector('#cart_coupon_code'); 4413 let html = ""; 4414 if (data.cart_level_discount_applications.length > 0) { 4415 data.cart_level_discount_applications.forEach(d => { 4416 html += `<li class="discounts__discount discounts__discount--end"><svg 4417 aria-hidden="true" 4418 focusable="false" 4419 class="icon icon-discount" 4420 viewBox="0 0 12 12" 4421> 4422 <path fill-rule="evenodd" clip-rule="evenodd" d="M7 0h3a2 2 0 012 2v3a1 1 0 01-.3.7l-6 6a1 1 0 01-1.4 0l-4-4a1 1 0 010-1.4l6-6A1 1 0 017 0zm2 2a1 1 0 102 0 1 1 0 00-2 0z" fill="currentColor"> 4423</svg> 4424${d.title} (-Rs. ${d.total_allocated_amount / 100}.00)</li>`; 4425 }); 4426 } 4427 updatedSection.innerHTML = `<ul class="discounts list-unstyled">${html}</ul>`; 4428 } catch (err) { 4429 console.error('Cart fetch failed:', err); 4430 } 4431 } 4432 4433 4434 </script>
4434 4435 4436 4437 4438 <style> 4439 @media screen and (max-width: 768px) { 4440 .custom_only_for_mobile_bhoops_search { 4441 display: none !important; 4442} 4443 4444 } 4445 </style> 4446 4447 4448<style> 4449 .autohide-float { transition: transform 0.32s cubic-bezier(0.4,0,0.2,1), opacity 0.32s ease; will-change: transform; } 4450 body.floats-scrolling .autohide-float { transform: translateX(150%); opacity: 0; pointer-events: none; } 4451 4452 /* Kannada A+ images render edge-to-edge â override the `page-width` horizontal padding that 4453 Cei9yG / fc3mep / MDNy4C / L4wweK use in their custnkn class. The English versions need 4454 padding because they're text+image cards inside a card chrome; the Kannada versions are 4455 single fullbleed infographics that bake their own padding into the artwork. */ 4456 .corosel_cardnkhnddkjhbk.kn-fullwidth, 4457 .corosel_cardnkhnddkjhbk.kn-fullwidth .nkjhnkjhkh, 4458 .corosel_cardnkhnddkjhbk.kn-fullwidth .bgjguyvggiutguyfgufgui, 4459 .corosel_cardnkhnddkjhbk.kn-fullwidth .bhkhkhgk { 4460 padding-left: 0 !important; 4461 padding-right: 0 !important; 4462 max-width: 100% !important; 4463 width: 100% !important; 4464 margin-left: 0 !important; 4465 margin-right: 0 !important; 4466 } 4467 /* The /kn-only single image class (only_image.liquid emits one of these instead of desk+mob pair). */ 4468 .corosel_cardnkhnddkjhbk.kn-fullwidth img.kn-only-image { 4469 width: 100% !important; 4470 max-width: 100% !important; 4471 display: block !important; 4472 margin: 0 !important; 4473 border-radius: 0 !important; 4474 } 4475 4476 /* image-text-video: when hide_on_kn is on AND we're on /kn, only the video renders. 4477 Make it full-width since the left-image column is suppressed. */ 4478 .text-video-image-bs-ss.kn-video-only .hhhkjhykyy.text-video { display: block !important; } 4479 .text-video-image-bs-ss.kn-video-only .right_video, 4480 .text-video-image-bs-ss.kn-video-only .right_video video, 4481 .text-video-image-bs-ss.kn-video-only .right_video iframe { 4482 width: 100% !important; 4483 max-width: 100% !important; 4484 display: block; 4485 } 4486 </style> 4487
4487<script> 4488 (function() { 4489 var KNOWN = ['#whtsapcontainer', '#chatbubble']; 4490 // Skip widgets that manage their own positioning/interactions â Voiceflow chatbot 4491 // disappears mid-click when scroll fires; reelcart video carousel was crashing under 4492 // sustained MutationObserver scans (we re-laid out hundreds of elements while it tried 4493 // to inject video cards). The carousel render races with our scan and never completes. 4494 var SKIP_SELECTOR = '#react-chatbot-container, [id^="voiceflow"], [class*="voiceflow"], [id*="reelcart"], [class*="reelcart"], [id^="rc-"], [class*="rc-standard"]'; 4495 4496 function tag(el) { 4497 if (!el || el.classList.contains('autohide-float')) return; 4498 if (el.closest && el.closest(SKIP_SELECTOR)) return; 4499 el.classList.add('autohide-float'); 4500 } 4501 4502 function scan() { 4503 KNOWN.forEach(function(sel) { document.querySelectorAll(sel).forEach(tag); }); 4504 // Limit the auto-scan to top-level body descendants â fixed-position widgets are almost 4505 // always direct children of <body> or one level deep. Walking `body *` was hundreds of 4506 // elements per pass à every DOM mutation = layout thrash that starved other widgets' JS. 4507 var vw = window.innerWidth; 4508 document.querySelectorAll('body > *, body > * > *').forEach(function(el) { 4509 if (el.classList.contains('autohide-float')) return; 4510 if (el.closest && el.closest(SKIP_SELECTOR)) return; 4511 var cs = getComputedStyle(el); 4512 if (cs.position !== 'fixed') return; 4513 var r = el.getBoundingClientRect(); 4514 if (r.width > 0 && r.width < 140 && r.height > 0 && r.height < 140 && r.right > vw * 0.55) tag(el); 4515 }); 4516 } 4517 4518 if (document.readyState !== 'loading') scan(); 4519 else document.addEventListener('DOMContentLoaded', scan); 4520 setTimeout(scan, 1500); 4521 setTimeout(scan, 3500); 4522 4523 // Debounce mutation-triggered scans â 3rd-party widgets fire bursts of mutations during 4524 // render; we only need to re-scan once when the burst settles. 4525 if (typeof MutationObserver !== 'undefined') { 4526 var moDebounce; 4527 new MutationObserver(function(m) { 4528 if (!m.some(function(x) { return x.addedNodes.length > 0; })) return; 4529 clearTimeout(moDebounce); 4530 moDebounce = setTimeout(scan, 400); 4531 }).observe(document.body, { childList: true, subtree: true }); 4532 } 4533 4534 var quiet, hiding = false; 4535 window.addEventListener('scroll', function() { 4536 if (!hiding) { document.body.classList.add('floats-scrolling'); hiding = true; } 4537 clearTimeout(quiet); 4538 quiet = setTimeout(function() { 4539 document.body.classList.remove('floats-scrolling'); 4540 hiding = false; 4541 }, 800); 4542 }, { passive: true }); 4543 })(); 4544 </script>
4544 4545 4546<style> .sticky-add-to-cart-bs {z-index: 899 !important;} .widget-button-div {top: 580px !important;} .rc-video-carousel-video-player {height: 380px !important; max-height: 380px !important; width: 240px !important; max-width: 240px !important;} .rc-carousel-video-player {width: 240px !important; max-width: 240px !important;} .yt-loyalty-floating-widget {right: 20px !important;} .yt-loyalty-page-banner {background-image: none !important;} .yt-loyalty-page-referrals-image {background-size: contain !important;} .yt-launcher-bubble img,.yt-launcher-ribbon img {width: 40px !important; height: 40px !important;} .yt-launcher-bubble {margin-right: 8px !important; bottom: 190px !important;} </style> 4547<div id="shopify-block-Adm5iMzZCM2ZidXNZN__5530246297231961265" class="shopify-block shopify-app-block"><div style='display: hidden;'> 4548
4548<script 4549 type='text/javascript' 4550 > 4551 async function initializeYourToken() { 4552 try { 4553 // Idempotency guard â initialize the widget at most once per page. 4554 // `window` persists across t4s/instant (AJAX) navigation, and this also 4555 // protects against the app embed being executed more than once or a 4556 // second extension version co-existing during a deploy. Without it, 4557 // each call appended another #yt001-loyalty-reward container and another 4558 // widget
4558<script>, producing multiple mounts (duplicate overlays/CSS). 4559 if (window.__ytLoyaltyInitialized) return; 4560 window.__ytLoyaltyInitialized = true; 4561 4562 if (document.getElementById('yt001-loyalty-reward')) return; 4563 4564 const appEmbedContainer = document.createElement('div'); 4565 appEmbedContainer.innerHTML = ` 4566 <link rel="preconnect" href="https://cdn.shopify.com" crossorigin> 4567 <link rel="dns-prefetch" href="https://cdn.shopify.com"> 4568 <div id="yt001-loyalty-reward"></div> 4569 `; 4570 document.body.appendChild(appEmbedContainer); 4571 4572 try { 4573 const data = { 4574 customerId: '', 4575 customerEmail: '', 4576 storeId: '61930078368', 4577 storeDomain: 'dff598-2.myshopify.com', 4578 storeEmail: '[email protected]', 4579 cartAmount: '0', 4580 cartQty: '0', 4581 enableLoyaltyTiers: null, 4582 tokenCreditPercentage: null, 4583 alternatePaymentRedemptionRate: null, 4584 loyaltyWidgetOpen: null, 4585 widgetThemeColor: null, 4586 brandLogoId: null, 4587 brandLogoPath: null, 4588 r2LogoPath: null, 4589 loyaltyPointsCapOnCartAmount: null, 4590 shopifyStoreTheme: null, 4591 enableRedeemInCartOffers: null, 4592 brandTokenName: null, 4593 widgetRegistrationType: null, 4594 showRegistrationNudge: null, 4595 maxTokensRedeemableAsDiscount: null, 4596 loyaltyRibbonTextColor: null, 4597 ytCustomCart: {"cartTitle":"Your Cart","cartBackgroundColor":"#fffaf4","exploreCtaColor":"#000000","enableCustomCart":true,"recommendedProductsList":{"productHandles":["ashwagandha-tablets-1","gokshura-powder","moringa-tablets-1-month","rumaaram-oil","amla-shikakai-shampoo-100ml","amla-shikakai-shampoo"]},"checkoutType":"shiprocket","showBackdrop":true,"discountInCheckoutButton":true,"ctaButtonBackgroundColor":"#008c45","ctaButtonTextColor":"#FFFFFF","primaryTextColor":"#000000","productRecsCtaButtonText":"Add to Cart","productRecsTitleText":"People Also Bought","emptyProductRecsTitleText":"You might also like","productRecsCardLayout":"vertical","productRecsCardListVariant":"vertical","secondaryTextColor":"#1A1A1A","showProductRecsOnDesktop":true,"showProductRecsOnMobile":true,"showEmptyCartRecommendations":true,"themeColor":"#062601","themeTextColor":"#ffffff","showGSTOption":false,"enableCustomCartOpenOnProductAdd":true,"showNoteOption":false,"showEditOptionOnProducts":false,"showVariantSelectionDropdownInProductRecs":false,"postalCodeList":[],"enableGeoLocationRestriction":false,"showStickyAddToCart":false,"cartGeoLocationValidatorData":{},"enableCustomCartOnCartPage":true,"showCartTimer":false,"cartTimerData":{},"cartComponentsCornerType":"sharp","cartComponentsCornerRadius":0,"giftWrapData":{},"stickyAddToCartProductBarData":{"showPrice":true,"productImage":{"id":"","path":""},"topRibbonText":"AVAIL OFFERS IN CART","buyNowCtaTitle":"Buy Now","desktopBarType":"stretch","excludeProducts":[],"showProductName":true,"showBarOnDesktop":false,"showBuyNowButton":false,"showProductImage":true,"addToCartCtaTitle":"Add to Cart","ctaButtonFontSize":18,"showAddToCartButton":true,"showVariantSelector":true,"fullyAppearsAtHeight":400,"showStickyProductBar":false,"productInfoVisibility":true,"startsAppearingAtHeight":200},"cartOffersCarousalData":{"enableCartOffersCarousel":true,"slidesCount":4,"pauseTimer":2,"backgroundColor":"#5fa571","primaryTextColor":"","secondaryTextColor":"","slides":[{"slideNumber":1,"slideType":"TextFieldOnly","textAlignment":"left","titleTextField":"TIME TESTED FORMULATION","descriptionTextField":"","imageUrl":"","campaignCode":"","criteriaCount":0,"criteria":[]},{"slideNumber":2,"slideType":"TextFieldOnly","textAlignment":"left","titleTextField":"135+ YEARS OF EXPERIENCE","descriptionTextField":"","imageUrl":"","campaignCode":"","criteriaCount":0,"criteria":[]},{"slideNumber":3,"slideType":"TextFieldOnly","textAlignment":"left","titleTextField":"TRUSTED BY LAKHS OF CUSTOMER","descriptionTextField":"","imageUrl":"","campaignCode":"","criteriaCount":0,"criteria":[]},{"slideNumber":4,"slideType":"TextFieldOnly","textAlignment":"left","titleTextField":"CALCULATED DOSAGES","descriptionTextField":"","
4597imageUrl":"","campaignCode":"","criteriaCount":0,"criteria":[]}]},"freebieMilestoneData":{},"trustedBadgeData":{},"freebieClaimData":{},"floatingCartData":{},"checkoutSectionData":{},"drawerLayoutData":{},"cartGstSectionData":{},"bxgyDiscountsEnabled":false}, 4598 ytConfigSource: 'app', 4599 signinCTAVisibility: true, 4600 currentProduct: null, 4601 loyaltyWidgetUrl: "https://cdn.shopify.com/extensions/01a11b3f-5281-7dc6-9d1a-e798979d6bf9/yourtoken-rewards-referral-505/assets/yt-loyalty-widget.js" 4602 }; 4603 window.ytapp = data; 4604 4605 const widgetScript = document.createElement('script'); 4606 widgetScript.src = data.loyaltyWidgetUrl; 4607 widgetScript.type = 'module'; 4608 document.body.appendChild(widgetScript); 4609 } catch (error) { 4610 console.error('Error in app-embed script:', error); 4611 } 4612 } catch (error) { 4613 console.error('Error initializing:', error); 4614 } 4615 } 4616 4617 initializeYourToken(); 4618 </script>
4618 4619</div> 4620 4621 4622</div><!-- Failed to render app block "15248664582119306304": app block path "shopify://apps/verifast-ai-sales-agent/blocks/chat_bot/e8318cdf-ff4f-416b-b090-1fb4ad1a937c" does not exist --><div id="shopify-block-AK2hxVEFwZUZIam9od__16274974966654683533" class="shopify-block shopify-app-block"> 4623<link rel='preconnect' href='https://cdn.shopify.com' crossorigin> 4624<link rel='dns-prefetch' href='https://cdn.shopify.com'> 4625<link rel='preconnect' href='https://yourtoken-widget.pages.dev' crossorigin> 4626<link rel='dns-prefetch' href='https://yourtoken-widget.pages.dev'> 4627<link 4628 rel='preload' 4629 as='script' 4630 href='https://cdn.shopify.com/extensions/01a11559-d6df-761a-8c0d-2e6f927fa0bc/yourtoken-2-1198/assets/index.js' 4631 crossorigin 4632> 4633<link rel='preconnect' href='https://websdk-yourtoken.pages.dev' crossorigin> 4634<link rel='dns-prefetch' href='https://websdk-yourtoken.pages.dev'> 4635 4636<div style='display: hidden;'> 4637
4637<script 4638 type='text/javascript' 4639 > 4640 4641 const currentStoreDomain = 'dff598-2.myshopify.com'; 4642 4643 // Cart Shell System 4644 4645 const ytCartShellIsCartPage = window.location.pathname === '/cart' || window.location.pathname.endsWith('/cart'); 4646 4647 let ytShellConfig = null; 4648 try { 4649 ytShellConfig = {"cartTitle":"Your Cart","cartBackgroundColor":"#fffaf4","exploreCtaColor":"#000000","enableCustomCart":true,"recommendedProductsList":{"productHandles":["ashwagandha-tablets-1","gokshura-powder","moringa-tablets-1-month","rumaaram-oil","amla-shikakai-shampoo-100ml","amla-shikakai-shampoo"]},"checkoutType":"shiprocket","showBackdrop":true,"discountInCheckoutButton":true,"ctaButtonBackgroundColor":"#008c45","ctaButtonTextColor":"#FFFFFF","primaryTextColor":"#000000","productRecsCtaButtonText":"Add to Cart","productRecsTitleText":"People Also Bought","emptyProductRecsTitleText":"You might also like","productRecsCardLayout":"vertical","productRecsCardListVariant":"vertical","secondaryTextColor":"#1A1A1A","showProductRecsOnDesktop":true,"showProductRecsOnMobile":true,"showEmptyCartRecommendations":true,"themeColor":"#062601","themeTextColor":"#ffffff","showGSTOption":false,"enableCustomCartOpenOnProductAdd":true,"showNoteOption":false,"showEditOptionOnProducts":false,"showVariantSelectionDropdownInProductRecs":false,"postalCodeList":[],"enableGeoLocationRestriction":false,"showStickyAddToCart":false,"cartGeoLocationValidatorData":{},"enableCustomCartOnCartPage":true,"showCartTimer":false,"cartTimerData":{},"cartComponentsCornerType":"sharp","cartComponentsCornerRadius":0,"giftWrapData":{},"stickyAddToCartProductBarData":{"showPrice":true,"productImage":{"id":"","path":""},"topRibbonText":"AVAIL OFFERS IN CART","buyNowCtaTitle":"Buy Now","desktopBarType":"stretch","excludeProducts":[],"showProductName":true,"showBarOnDesktop":false,"showBuyNowButton":false,"showProductImage":true,"addToCartCtaTitle":"Add to Cart","ctaButtonFontSize":18,"showAddToCartButton":true,"showVariantSelector":true,"fullyAppearsAtHeight":400,"showStickyProductBar":false,"productInfoVisibility":true,"startsAppearingAtHeight":200},"cartOffersCarousalData":{"enableCartOffersCarousel":true,"slidesCount":4,"pauseTimer":2,"backgroundColor":"#5fa571","primaryTextColor":"","secondaryTextColor":"","slides":[{"slideNumber":1,"slideType":"TextFieldOnly","textAlignment":"left","titleTextField":"TIME TESTED FORMULATION","descriptionTextField":"","imageUrl":"","campaignCode":"","criteriaCount":0,"criteria":[]},{"slideNumber":2,"slideType":"TextFieldOnly","textAlignment":"left","titleTextField":"135+ YEARS OF EXPERIENCE","descriptionTextField":"","imageUrl":"","campaignCode":"","criteriaCount":0,"criteria":[]},{"slideNumber":3,"slideType":"TextFieldOnly","textAlignment":"left","titleTextField":"TRUSTED BY LAKHS OF CUSTOMER","descriptionTextField":"","imageUrl":"","campaignCode":"","criteriaCount":0,"criteria":[]},{"slideNumber":4,"slideType":"TextFieldOnly","textAlignment":"left","titleTextField":"CALCULATED DOSAGES","descriptionTextField":"","imageUrl":"","campaignCode":"","criteriaCount":0,"criteria":[]}]},"freebieMilestoneData":{},"trustedBadgeData":{},"freebieClaimData":{},"floatingCartData":{},"checkoutSectionData":{},"drawerLayoutData":{},"cartGstSectionData":{},"bxgyDiscountsEnabled":false}; 4650 if (!ytShellConfig || typeof ytShellConfig !== 'object') { 4651 ytShellConfig = null; 4652 } 4653 } catch(e) {} 4654 4655 const ytShellCustomCartEnabled = ytShellConfig && 4656 ytShellConfig.enableCustomCart && 4657 ytShellConfig.enableCustomCart !== 'false'; 4658 4659 const ytShellCountryEligible = (window.Shopify && window.Shopify.country === 'IN') || 4660 (window.Shopify && window.Shopify.shop === 'jagat-pharma-global.myshopify.com'); 4661 4662 const ytShellShouldInit = ytShellCustomCartEnabled && !ytCartShellIsCartPage && ytShellCountryEligible; 4663 4664 const ytShellShouldAutoOpen = ytShellShouldInit && 4665 ytShellConfig.enableCustomCartOpenOnProductAdd !== false && 4666 ytShellConfig.enableCustomCartOpenOnProductAdd !== 'false'; 4667 4668 // Global shell state for widget synchronization 4669 window.ytCartShellState = { isOpen: false, takenOver: false }; 4670 4671 // Liquid-rendered cart data â available instantly, no AJAX needed 4672 var ytShellInitialCart = { 4673 items: [ 4674 4675 ], 4676 total: 0, 4677 count: 0,
4678 currency: "â¹" 4679 }; 4680 4681 if (ytShellShouldInit) { 4682 (function() { 4683 var shellBgColor = (ytShellConfig && ytShellConfig.cartBackgroundColor) || '#ffffff'; 4684 var shellTitle = (ytShellConfig && ytShellConfig.cartTitle) || 'My Cart'; 4685 var shellTextColor = (ytShellConfig && ytShellConfig.primaryTextColor) || '#000000'; 4686 var shellShowBackdrop = ytShellConfig.showBackdrop !== false && ytShellConfig.showBackdrop !== 'false'; 4687 var shellCheckoutType = (ytShellConfig && ytShellConfig.checkoutType) || 'shopify'; 4688 var shellThemeColor = (ytShellConfig && ytShellConfig.themeColor) || '#000000'; 4689 var shellThemeTextColor = (ytShellConfig && ytShellConfig.themeTextColor) || '#ffffff'; 4690 var shellCornerType = (ytShellConfig && ytShellConfig.cartComponentsCornerType) || ''; 4691 var shellCornerRadius = (ytShellConfig && ytShellConfig.cartComponentsCornerRadius) || 0; 4692 var shellBgSubdued = (ytShellConfig && ytShellConfig.backgroundSubdued) || '#e1e1e1'; 4693 var switchWidthVariantEnabled = (ytShellConfig && ytShellConfig.switchWidthVariant) || false; 4694 4695 // Mutable cart state â starts from Liquid, updated on ATC via /cart.js 4696 var shellCartData = { 4697 items: ytShellInitialCart.items.slice(), 4698 total: ytShellInitialCart.total, 4699 count: ytShellInitialCart.count, 4700 currency: ytShellInitialCart.currency 4701 }; 4702 4703 var cartSelectors = [ 4704 'a[href="/cart"]', 4705 'button.tt-dropdown-toggle', 4706 'a.area--cart', 4707 'a.hcart', 4708 'a.js-drawer-open-cart', 4709 'a.cart-icon-bubble', 4710 'a[title="Cart"]', 4711 '.site-header__link.site-header__cart.js-mini-cart.cardraw', 4712 'a#offcanvas-cart-icon', 4713 'span.js-toggle-cart', 4714 'div.single-icon.cart', 4715 'a#cart-icon-bubble', 4716 'a.cart-count', 4717 'button.qsc2-basic.qsc2-stickybtn', 4718 'svg.icon-bag', 4719 'a.icon-bubble[aria-label=cart]', 4720 'div.mini-cart-icon a.ltn__utilize-toggle', 4721 'button#CartButton', 4722 'span#cart-icon-bubble', 4723 'a[onclick="window.openCartCheckout()"]', 4724 'div.cart-fixed.cart-icon', 4725 'a[onclick="window.openCart()"]', 4726 'a.js-call-minicart', 4727 'button[data-sidebar-id="CartDrawer"]', 4728 'a.icon-cart-arrow', 4729 'a[data-js-sidebar-handle][title="Open cart"]', 4730 'button.js-mini-cart-trigger', 4731 'div.site-header__cart-icon', 4732 'a[onclick*="cart-drawer"]', 4733 'button.cart-icon', 4734 'xo-tooltip[xo-title="Cart"]', 4735 'a i.fa-shopping-bag', 4736 'cart-icon', 4737 'div#cart-icon-bubble', 4738 'a.flo-header-cart-btn', 4739 'a[onclick="window.handleFloCartBtn()"]' 4740 ]; 4741 4742 var formBasedATCSelectorList = [ 4743 'button.product-form__submit', 'button.btn-addtocart', 'button.tt-btn-addtocart', 4744 'button.m-add-to-cart', 'button.add-to-cart', 'button#bundleBtn.btn', 4745 'div.lc-product-button', 'button.add-to-cart-btn', 'button.stick-add', 4746 'button.btn.btn--large.add-to-cart', 'button.ProductForm__AddToCart', 4747 'a#atc-coll', 'button#AddToCart', 'button[data-pf-type=ProductATC2]', 4748 'button.js-product-button-add-to-cart', 'button.button-action--shadow', 4749 'button.add-cart-btn', 'input[value="Add to cart"]', 'div.cart-block-click', 4750 'button.pf-button-1', 'button.product-form--atc-button', 'button.addtocartqv', 4751 'button.btn--quick.pill', 'button[name=add]', 'button.add_to_cart_button', 4752 'button.product-item__quick-add', 'button.gp-button-atc', 'button.product-ATC-Button', 4753 'button.cbb-frequently-bought-add-button', 'button.single_add_to_cart_button' 4754 ]; 4755 4756 var quickAddToCartElements = [ 4757 '.t4s-svg-pr-icon', '.product-card__overlay-btn.js-grid-cart', 'button.product-ATC-Button', 4758 'button.quick-add__submit .span', 'button[x-html=atcBtnText]', 'button.product-item__quick-add',
4759 'a.add-to-cart', 'a[data-trigger=addtocart]', 'add-to-cart.button', 4760 'button.product-card--add-to-cart-button', 'div.pr_atc', 'button.enj-add-to-cart-btn', 4761 'div.product-button', 'button.product-grid-item__btn', 'input.product__add-button', 4762 'button.addtocart-btn', 'a.t4s-pr-item-btn', 'button.form__send__button', 4763 'quick-add', 'button.addtocart_button', 'button.qv-add-button', 'a.product-form__submit', 4764 'button.quick-add__submit', 'div.buttonz', 'button[class^="video-add"]' 4765 ]; 4766 4767 var allAtcSelectors = formBasedATCSelectorList.concat(quickAddToCartElements); 4768 4769 var shellOverlay = null; 4770 var shellDrawer = null; 4771 var shellObserver = null; 4772 var origAssign = null; 4773 var origReplace = null; 4774 var shellPrevHistoryState = null; 4775 var shellPrevUrl = null; 4776 4777 var closeSvg = '<svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="' + shellTextColor + '" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line></svg>'; 4778 4779 // ---- Helpers ---- 4780 function escapeShellHtml(str) { 4781 if (!str) return ''; 4782 return str.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>').replace(/"/g, '"'); 4783 } 4784 4785 function formatShellPrice(cents) { 4786 var amount = (cents / 100).toFixed(2); 4787 var parts = amount.split('.'); 4788 parts[0] = parts[0].replace(/\B(?=(\d{3})+(?!\d))/g, ','); 4789 return parts.join('.'); 4790 } 4791 4792 // ---- Render Shell Cart HTML ----
4793 function renderShellCartContent() { 4794 var items = shellCartData.items; 4795 var total = shellCartData.total; 4796 var count = shellCartData.count; 4797 var currency = shellCartData.currency; 4798 var btnRadius = shellCornerType === 'rounded' ? shellCornerRadius + 'px' : '0px'; 4799 4800 // Header 4801 var html = '<div>'; 4802 html += '<div class="yt-cart-title-container" style="display:flex;flex-direction:row;align-items:center;justify-content:space-between;margin:1rem 1rem 0px;gap:8px;">'; 4803 html += '<span style="font-weight:var(--yt-cart-font-weight,bold);color:' + shellTextColor + ';font-size:16px;white-space:nowrap;display:flex;align-items:center;gap:6px;">'; 4804 html += escapeShellHtml(shellTitle); 4805 if (count > 0) { 4806 html += ' <span style="background-color:' + shellBgSubdued + ';border-radius:50%;width:14px;height:14px;display:inline-flex;align-items:center;justify-content:center;font-size:9px;font-weight:400;min-width:14px;line-height:14px;">' + count + '</span>'; 4807 } 4808 html += '</span>'; 4809 html += '<div id="yt-cart-shell-close-btn" style="cursor:pointer;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#cacaca30;">'; 4810 html += closeSvg; 4811 html += '</div></div>'; 4812 html += '<div style="margin:12px 16px 0;"><div style="height:3px;background:#e0e0e0;border-radius:2px;"></div></div>'; 4813 html += '</div>'; 4814 4815 if (count === 0) { 4816 // Empty cart 4817 html += '<div style="display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;gap:12px;">'; 4818 html += '<p style="color:#666;font-size:14px;margin:0;">Your cart is empty</p>'; 4819 html += '</div>'; 4820 return html; 4821 } 4822 4823 // 12px grey separator (above items) 4824 html += '<div style="display:flex;height:12px;background:#87878717;"></div>'; 4825 4826 // Scrollable items area 4827 html += '<div style="display:flex;flex-direction:column;overflow-y:auto;flex:1;overflow-x:hidden;height:100%;scrollbar-width:none;">'; 4828 4829 for (var i = 0; i < items.length; i++) { 4830 var item = items[i]; 4831 var isLast = i === items.length - 1; 4832 4833 // Item wrapper (matches ProductCardWrapper with after-pseudo divider) 4834 html += '<div style="padding:5px 0;position:relative;">'; 4835 4836 // StyledDiv (matches ProductCard layout) 4837 html += '<div style="display:flex;gap:16px;padding:4px 0;background:' + shellBgColor + ';align-items:center;margin:0 1rem;">'; 4838 4839 // ProductImageWrapper 4840 html += '<div style="position:relative;display:inline-block;">'; 4841 4842 // ProductImage (matches yt-cart-product-image) 4843 html += '<div class="yt-cart-product-image" style="width:75px;aspect-ratio:1;border-radius:8px;flex-shrink:0;overflow:hidden;border:1.55px solid var(--base-border,#dedede);">'; 4844 if (item.image) { 4845 html += '<img src="' + escapeShellHtml(item.image) + '" alt="' + escapeShellHtml(item.title) + '" loading="lazy" style="width:100%;height:100%;object-fit:cover;" />'; 4846 } else { 4847 html += '<div style="width:100%;height:100%;background:#f0f0f0;"></div>'; 4848 } 4849 html += '</div>'; 4850 4851 // QuantityBadge 4852 html += '<div style="position:absolute;top:-8px;right:-8px;background-color:#ffffff;color:black;border:2px solid white;border-radius:50%;width:19px;height:19px;font-size:12px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px rgba(0,0,0,0.3);z-index:4;">' + item.quantity + '</div>'; 4853 4854 html += '</div>'; // end ProductImageWrapper 4855 4856 // Content column 4857 html += '<div style="display:flex;flex-direction:column;flex:1;padding:4px 0;">'; 4858 4859 // Title 4860 html += '<span class="yt-shell-item-title" style="font-size:14px;font-weight:500;line-height:1.4;color:' + shellTextColor + ';display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;">' + escapeShellHtml(item.title) + '</span>'; 4861 4862 // Price 4863 html += '<span style="color:' + shellTextColor + ';font-size:13px;font-weight:400;letter-spacing:0.2px;margin-top:2px;">' + currency + formatShellPrice(item.price) + '</span>'; 4864 4865 html += '</div>'; // end content column 4866 html += '</div>'; // end StyledDiv 4867 4868 html += '</div>'; // end item wrapper 4869 4870 // Divider between items+ 4871 if (!isLast) { 4872 html += '<div style="display:flex;border-bottom:0.8px solid rgb(135 135 135 / 50%);"></div>'; 4873 } 4874 } 4875 html += '<div style="display:flex;height:12px;background:#87878717;"></div>'; 4876 4877 html += '</div>'; // end scrollable 4878 4879 4880 4881 // Footer 4882 html += '<div class="yt-cart-footer-container" style="display:flex;flex-direction:column;padding-bottom:env(safe-area-inset-bottom,0px);background:white;z-index:999;width:100%;box-shadow:rgb(135 135 135 / 45%) 0px -2px 0px 0px;border-radius:17px 17px 0px 0px;
4882gap:10px;">'; 4883 4884 // Checkout summary 4885 html += '<div class="yt-cart-checkout-summary" style="display:flex;flex-direction:column;row-gap:5px;background-color:rgba(138,138,138,0.08);padding-top:10px;">'; 4886 4887 // Total row 4888 html += '<div style="display:flex;justify-content:space-between;align-items:center;margin:0 1rem;">'; 4889 html += '<span style="font-size:14px;font-weight:600;">Total</span>'; 4890 html += '<span style="font-size:16px;font-weight:var(--yt-cart-font-weight,bold);">' + currency + formatShellPrice(total) + '</span>'; 4891 html += '</div>'; 4892 4893 // Checkout button 4894 html += '<button id="yt-shell-checkout-btn" class="yt-checkout-button" style="display:flex;flex-direction:row;align-items:center;justify-content:center;height:45px;padding-top:10px;padding-bottom:10px;margin:4px 1rem 16px 1rem;background-color:' + shellThemeColor + ';border:0;color:' + shellThemeTextColor + ';text-transform:uppercase;font-size:16px;letter-spacing:1px;cursor:pointer;border-radius:' + btnRadius + ';box-shadow:none;column-gap:8px;">'; 4895 html += 'CHECKOUT'; 4896 html += '</button>'; 4897 4898 html += '</div>'; // end checkout summary 4899 html += '</div>'; // end footer 4900 4901 return html; 4902 } 4903 4904 // ---- Bind shell event listeners (called after every render) ---- 4905 function bindShellEvents() { 4906 var closeBtn = document.getElementById('yt-cart-shell-close-btn'); 4907 if (closeBtn) { 4908 closeBtn.addEventListener('click', function() { window.openYtCustomCart(false); }); 4909 } 4910 var checkoutBtn = document.getElementById('yt-shell-checkout-btn'); 4911 if (checkoutBtn) { 4912 checkoutBtn.addEventListener('click', handleShellCheckout); 4913 } 4914 } 4915 4916 // ---- Checkout handler (respects checkoutType from metafield) ---- 4917 function handleShellCheckout(e) { 4918 try { 4919 switch (shellCheckoutType) { 4920 case 'gokwik': 4921 if (window.gokwikSdk && window.gokwikSdk.initCheckout && window.merchantInfo) { 4922 window.gokwikSdk.initCheckout(window.merchantInfo); 4923 } else if (window.gokwikSdk && window.gokwikSdk.initCheckout) { 4924 window.gokwikSdk.initCheckout(e.target); 4925 } else { 4926 window.location.replace('/checkout'); 4927 } 4928 break; 4929 case 'razorpay': 4930 if (window.openRzpCheckout) { window.openRzpCheckout(); } 4931 else if (window.openRzpLogin) { window.openRzpLogin(); } 4932 else { window.location.replace('/checkout'); } 4933 break; 4934 case 'breeze': 4935 if (window.breeze && window.breeze.startCheckout) { window.breeze.startCheckout(); } 4936 else { window.location.replace('/checkout'); } 4937 break; 4938 case 'shopflo': 4939 if (window.handleFloCheckoutBtn) { window.handleFloCheckoutBtn(); } 4940 else { window.location.replace('/checkout'); } 4941 break; 4942 case 'shiprocket': 4943 if (window.HeadlessCheckout && window.HeadlessCheckout.checkout) { window.HeadlessCheckout.checkout(e); } 4944 else { window.location.replace('/checkout'); } 4945 break; 4946 case 'zecpay': 4947 if (window.handleOcc) { window.handleOcc(); } 4948 else { window.location.replace('/checkout'); } 4949 break; 4950 case 'flexype': 4951 if (window.openFlexyCheckout) { window.openFlexyCheckout(); } 4952 else { window.location.replace('/checkout'); } 4953 break; 4954 case 'nimbbl': 4955 if (window.nimbblOpenCheckout) { window.nimbblOpenCheckout(); } 4956 else { window.location.replace('/checkout'); } 4957 break; 4958 case 'shopify': 4959 default: 4960 window.location.replace('/checkout'); 4961 } 4962 } catch (err) { 4963 console.warn('Shell checkout failed, redirecting to Shopify checkout', err); 4964 window.location.replace('/checkout'); 4965 } 4966 } 4967 4968 // ---- Refresh shell from /cart.js (called after ATC) ---- 4969 function refreshShellCart() { 4970 return fetch('/cart.js', { credentials: 'same-origin' }) 4971 .then(function(r) { return r.json(); }) 4972 .then(function(data) { 4973 shellCartData.items = (data.items || []).map(function(item) { 4974 return { 4975 title: item.product_title || item.title || '', 4976 image: item.image || '', 4977 quantity: item.quantity || 1, 4978 price: item.final_line_price || 0, 4979 url: item.url || '' 4980 }; 4981 }); 4982 shellCartData.total = data.total_price || 0; 4983 shellCartData.count = data.item_count || 0; 4984 4985 var skeleton = document.getElementById('yt-cart-shell-skeleton'); 4986 if (skeleton && !window.ytCartShellState.takenOver) { 4987 skeleton.innerHTML = renderShellCartContent(); 4988 bindShellEvents(); 4989 } 4990 }) 4991 .catch(function() {}); 4992 } 4993 4994 // ---- Create Shell DOM ---- 4995 function createShell() { 4996 if (shellDrawer) return; 4997 4998 var style = document.createElement('style'); 4999 style.id = 'yt-cart-shell-styles'; 5000 style.textContent = 5001 '@media screen and (max-width: 720px) { #yt-cart-shell-drawer { width: 350px !important; } }' + 5002 '@media screen and (max-width: 450px) { #yt-cart-shell-drawer { width: ' + (switchWidthVariantEnabled ? '100%' : '91%') + ' !important; max-width: ' + (switchWidthVariantEnabled ? '100%' : '97%') + ' !important; } }' +
5003 '#yt-cart-shell-drawer * { box-sizing: border-box; }' + 5004 '#yt-cart-shell-drawer .yt-cart-product-image img { width: 100%; height: 100%; object-fit: cover; }' + 5005 '@media screen and (max-width: 480px) { #yt-cart-shell-drawer .yt-cart-product-image { width: 65px !important; } }' + 5006 '#yt-cart-shell-drawer .yt-shell-item-title { display: -webkit-box !important; -webkit-line-clamp: 2 !important; -webkit-box-orient: vertical !important; overflow: hidden !important; font-size: 14px !important; font-weight: 500 !important; line-height: 1.4 !important; }' + 5007 '.yt-shell-pulse { animation: ytShellPulse 1.5s ease-in-out infinite; }' + 5008 '@keyframes ytShellPulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.4; } }' + 5009 'button.yt-checkout-button { background-image: none !important; min-height: auto !important; line-height: normal !important; }'; 5010 document.head.appendChild(style); 5011 5012 shellOverlay = document.createElement('div'); 5013 shellOverlay.id = 'yt-cart-shell-overlay'; 5014 shellOverlay.setAttribute('style', 5015 'position:fixed !important;top:0 !important;left:0 !important;right:0 !important;bottom:0 !important;' + 5016 'z-index:10000 !important;background-color:rgba(0,0,0,0.5) !important;display:none;width:100% !important;height:100% !important;' 5017 ); 5018 shellOverlay.addEventListener('click', function() { window.openYtCustomCart(false); }); 5019 5020 shellDrawer = document.createElement('div'); 5021 shellDrawer.id = 'yt-cart-shell-drawer'; 5022 shellDrawer.setAttribute('style', 5023 'position:fixed !important;top:0 !important;right:0 !important;z-index:2147483643 !important;' + 5024 'height:100% !important;width:457px;max-width:457px;background-color:' + shellBgColor + ' !important;' + 5025 'transition:transform 0.3s ease !important;transform:translateX(100%) !important;' + 5026 'box-shadow:none;font-family:inherit;line-height:normal;overflow:hidden;' 5027 ); 5028 5029 shellDrawer.innerHTML = 5030 '<div id="yt-cart-shell-skeleton" class="yt-cart-drawer-content" style="display:flex;flex-direction:column;height:100%;justify-content:space-between;">' + 5031 renderShellCartContent() + 5032 '</div>' + 5033 '<div id="yt-cart-shell-content" style="display:none;position:absolute;top:0;left:0;width:100%;height:100%;"></div>'; 5034 5035 document.body.appendChild(shellOverlay); 5036 document.body.appendChild(shellDrawer); 5037 5038 bindShellEvents(); 5039 } 5040 5041 // ---- Open / Close Shell ---- 5042 function openShell() { 5043 if (!shellDrawer || window.ytCartShellState.isOpen) return; 5044 shellDrawer.style.setProperty('transform', 'translateX(0)', 'important'); 5045 shellDrawer.style.boxShadow = '-14px 8px 14.4px 0px rgba(0, 0, 0, 0.35)'; 5046 if (shellShowBackdrop && shellOverlay) shellOverlay.style.display = 'block'; 5047 document.body.classList.add('drawer-open'); 5048 shellPrevHistoryState = window.history.state; 5049 shellPrevUrl = window.location.href; 5050 window.history.pushState({ ytCustomCartDrawer: 'open' }, ''); 5051 window.ytCartShellState.isOpen = true; 5052 } 5053 5054 function closeShell() { 5055 if (!shellDrawer || !window.ytCartShellState.isOpen) return; 5056 shellDrawer.style.setProperty('transform', 'translateX(100%)', 'important'); 5057 shellDrawer.style.boxShadow = 'none'; 5058 if (shellOverlay) shellOverlay.style.display = 'none'; 5059 document.body.classList.remove('drawer-open'); 5060 if (window.history.state && window.history.state.ytCustomCartDrawer === 'open') { 5061 window.history.replaceState(shellPrevHistoryState, '', shellPrevUrl || window.location.href); 5062 } 5063 window.ytCartShellState.isOpen = false; 5064 } 5065 5066 // Back button closes shell 5067 window.addEventListener('popstate', function() { 5068 if (window.ytCartShellState.isOpen && !window.ytCartShellState.takenOver) { 5069 closeShell(); 5070 } 5071 }); 5072 5073 // Global cart opener â available immediately, before widget loads. 5074 // After widget takes over (takenOver=true), this becomes a no-op 5075 // and the widget's React setState is used instead. 5076 window.openYtCustomCart = function(open) { 5077 if (window.ytCartShellState.takenOver) return;
5078 if (open) openShell(); else closeShell(); 5079 }; 5080 5081 // Expose shell control API for the widget to manage the container 5082 window.ytCartShell = { 5083 open: openShell, 5084 close: closeShell, 5085 getDrawerElement: function() { return shellDrawer; }, 5086 getOverlayElement: function() { return shellOverlay; }, 5087 cleanup: function() { 5088 // Disconnect MutationObserver 5089 if (shellObserver) { shellObserver.disconnect(); shellObserver = null; } 5090 // Restore fetch 5091 if (origFetch) { window.fetch = origFetch; } 5092 // Restore XHR 5093 if (xhrProtoOpen) { OrigXHR.prototype.open = xhrProtoOpen; } 5094 if (xhrProtoSend) { OrigXHR.prototype.send = xhrProtoSend; } 5095 // Restore location methods 5096 if (origAssign) { window.location.assign = origAssign; } 5097 if (origReplace) { window.location.replace = origReplace; } 5098 // Restore jQuery ajax 5099 if (origJqAjax && window.jQuery) { window.jQuery.ajax = origJqAjax; } 5100 } 5101 }; 5102 5103 // ---- Universal Cart Icon Interception ---- 5104 function handleShellCartClick(e) { 5105 e.preventDefault(); 5106 e.stopPropagation(); 5107 e.stopImmediatePropagation(); 5108 window.openYtCustomCart(true); 5109 } 5110 5111 function interceptCartIcons() { 5112 var allSelectors = cartSelectors.join(', '); 5113 var atcSelectorsStr = allAtcSelectors.join(', '); 5114 5115 function handleAtcClick(e) { 5116 if (window.ytCartShellState.takenOver) return; 5117 5118 var currentCount = shellCartData.count; 5119 var attempts = 0; 5120 var maxAttempts = 30; 5121 5122 function checkCart() { 5123 fetch('/cart.js', { credentials: 'same-origin' }) 5124 .then(function(r) { return r.json(); }) 5125 .then(function(data) { 5126 if (data.item_count > currentCount) { 5127 shellCartData.items = (data.items || []).map(function(item) { 5128 return { 5129 title: item.product_title || item.title || '', 5130 image: item.image || '', 5131 quantity: item.quantity || 1, 5132 price: item.final_line_price || 0, 5133 url: item.url || '' 5134 }; 5135 }); 5136 shellCartData.total = data.total_price || 0; 5137 shellCartData.count = data.item_count || 0; 5138 5139 var skeleton = document.getElementById('yt-cart-shell-skeleton'); 5140 if (skeleton && !window.ytCartShellState.takenOver) { 5141 skeleton.innerHTML = renderShellCartContent(); 5142 bindShellEvents(); 5143 } 5144 if (ytShellShouldAutoOpen) window.openYtCustomCart(true); 5145 } else if (attempts < maxAttempts) { 5146 attempts++; 5147 setTimeout(checkCart, Math.min(50 + attempts * 25, 500)); 5148 } 5149 }).catch(function() { 5150 if (attempts < maxAttempts) { 5151 attempts++; 5152 setTimeout(checkCart, Math.min(50 + attempts * 25, 500)); 5153 } 5154 }); 5155 } 5156 setTimeout(checkCart, 100); 5157 } 5158 5159 try { 5160 var elements = document.querySelectorAll(allSelectors); 5161 elements.forEach(function(el) { 5162 el.addEventListener('click', handleShellCartClick, true); 5163 if (el.href && (el.href.includes('/cart') || el.href.endsWith('/cart')) && !el.href.includes('/cart/')) { 5164 el._ytOrigHref = el.getAttribute('href'); 5165 el.setAttribute('href', 'javascript:void(0)'); 5166 } 5167 }); 5168 5169 var atcElements = document.querySelectorAll(atcSelectorsStr); 5170 atcElements.forEach(function(el) { 5171 if (el.textContent && el.textContent.toLowerCase().includes('buy')) return; 5172 el.addEventListener('click', handleAtcClick, true); 5173 }); 5174 } catch(e) {} 5175 5176 // Delegated click handler catches any cart link, including dynamically added ones 5177 document.addEventListener('click', function(e) { 5178 var target = e.target.closest ? e.target.closest('a') : null; 5179 if (target && target.href) { 5180 try { 5181 var url = new URL(target.href, window.location.origin); 5182 if ((url.pathname === '/cart' || url.pathname.endsWith('/cart')) && !url.pathname.includes('/cart/')) { 5183 e.preventDefault(); 5184 e.stopPropagation(); 5185 window.openYtCustomCart(true); 5186 } 5187 } catch(err) {} 5188 } 5189 }, true); 5190 5191 // Intercept form submissions to /cart (not /cart/add) 5192 document.addEventListener('submit', function(e) { 5193 var form = e.target; 5194 if (form.action && form.action.includes('/cart') && !form.action.includes('cart/add')) { 5195 e.preventDefault(); 5196 e.stopPropagation(); 5197 window.openYtCustomCart(true); 5198 } 5199 }, true); 5200 5201 // Intercept programmatic location.assign / location.replace to /cart 5202 origAssign = location.assign.bind(location);
5203 origReplace = location.replace.bind(location); 5204 5205 window.location.assign = function(url) { 5206 if (typeof url === 'string' && (url === '/cart' || url.endsWith('/cart')) && !url.includes('/cart/')) { 5207 window.openYtCustomCart(true); 5208 return; 5209 } 5210 return origAssign(url); 5211 }; 5212 5213 window.location.replace = function(url) { 5214 if (typeof url === 'string' && (url === '/cart' || url.endsWith('/cart')) && !url.includes('/cart/')) { 5215 window.openYtCustomCart(true); 5216 return; 5217 } 5218 return origReplace(url); 5219 }; 5220 5221 // MutationObserver for dynamically added cart elements 5222 var cartTagNames = { A:1, BUTTON:1, DIV:1, SPAN:1, SVG:1, 'CART-ICON':1, 'XO-TOOLTIP':1 }; 5223 var atcTagNames = { A:1, BUTTON:1, INPUT:1, DIV:1, 'ADD-TO-CART':1, 'QUICK-ADD':1 }; 5224 var pendingNodes = []; 5225 var rafScheduled = false; 5226 5227 function processPendingNodes() { 5228 rafScheduled = false; 5229 var nodes = pendingNodes; 5230 pendingNodes = []; 5231 for (var i = 0; i < nodes.length; i++) { 5232 var node = nodes[i]; 5233 try { 5234 // Always search children (container may hold matching descendants) 5235 var newEls = node.querySelectorAll ? node.querySelectorAll(allSelectors) : []; 5236 // Short-circuit self-match by tagName 5237 var isSelf = cartTagNames[node.tagName] && node.matches && node.matches(allSelectors); 5238 var allNew = isSelf ? [node].concat(Array.from(newEls)) : Array.from(newEls); 5239 allNew.forEach(function(el) { 5240 el.addEventListener('click', handleShellCartClick, true); 5241 if (el.href && (el.href.includes('/cart') || el.href.endsWith('/cart')) && !el.href.includes('/cart/')) { 5242 el._ytOrigHref = el.getAttribute('href'); 5243 el.setAttribute('href', 'javascript:void(0)'); 5244 } 5245 }); 5246 5247 var newAtcEls = node.querySelectorAll ? node.querySelectorAll(atcSelectorsStr) : []; 5248 var isAtcSelf = atcTagNames[node.tagName] && node.matches && node.matches(atcSelectorsStr); 5249 var allNewAtc = isAtcSelf ? [node].concat(Array.from(newAtcEls)) : Array.from(newAtcEls); 5250 allNewAtc.forEach(function(el) { 5251 if (el.textContent && el.textContent.toLowerCase().includes('buy')) return; 5252 el.addEventListener('click', handleAtcClick, true); 5253 }); 5254 } catch(e) {} 5255 } 5256 } 5257 5258 shellObserver = new MutationObserver(function(mutations) { 5259 for (var i = 0; i < mutations.length; i++) { 5260 var addedNodes = mutations[i].addedNodes; 5261 for (var j = 0; j < addedNodes.length; j++) { 5262 if (addedNodes[j].nodeType === 1) pendingNodes.push(addedNodes[j]); 5263 } 5264 } 5265 if (pendingNodes.length && !rafScheduled) { 5266 rafScheduled = true; 5267 requestAnimationFrame(processPendingNodes); 5268 } 5269 }); 5270 5271 if (document.body) { 5272 shellObserver.observe(document.body, { childList: true, subtree: true }); 5273 } 5274 } 5275 5276 // ---- ATC Fetch Interception (lightweight, before widget loads) ---- 5277 var origFetch = window.fetch; 5278 window.fetch = function() { 5279 var url = typeof arguments[0] === 'string' ? arguments[0] : 5280 (arguments[0] && arguments[0].url ? arguments[0].url : ''); 5281 var isATC = url.includes('/cart/add.js') || (url.includes('/cart/add') && !url.includes('/cart/add_')); 5282 5283 if (isATC) { 5284 return origFetch.apply(this, arguments).then(function(response) { 5285 if (response.ok) { 5286 // Only handle cart opening before widget takes over. 5287 if (!window.ytCartShellState.takenOver && ytShellShouldAutoOpen) { 5288 refreshShellCart().then(function() { 5289 window.openYtCustomCart(true); 5290 }); 5291 } 5292 } 5293 return response; 5294 }); 5295 } 5296 return origFetch.apply(this, arguments); 5297 }; 5298 5299 // ---- Form Submit Interception for /cart/add ---- 5300 document.addEventListener('submit', function(e) { 5301 if (window.ytCartShellState.takenOver) return; 5302 var form = e.target; 5303 if (!form || !form.action) return; 5304 var isCartAdd = form.action.includes('/cart/add'); 5305 if (!isCartAdd) return; 5306
5307 // Skip Buy it Now forms , may need to enhance this 5308 var hasDynamicCheckoutBtn = form.querySelector && ( 5309 form.querySelector('[data-shopify="payment-button"]') || 5310 form.querySelector('.shopify-payment-button') || 5311 form.querySelector('button[name="goto_checkout"]') 5312 ); 5313 var hasCheckoutReturnTo = form.querySelector && 5314 form.querySelector('[name="return_to"][value*="/checkout"]'); 5315 if (hasDynamicCheckoutBtn || hasCheckoutReturnTo) return; 5316 5317 e.preventDefault(); 5318 e.stopPropagation(); 5319 5320 var formData = new FormData(form); 5321 origFetch('/cart/add', { 5322 method: 'POST', 5323 body: formData, 5324 headers: { 'Accept': 'application/json' }, 5325 credentials: 'same-origin' 5326 }).then(function(response) { 5327 if (response.ok) { 5328 refreshShellCart().then(function() { 5329 if (ytShellShouldAutoOpen) window.openYtCustomCart(true); 5330 }); 5331 } 5332 }).catch(function() {}); 5333 }, true); 5334 5335 // ---- jQuery AJAX Interception ---- 5336 var origJqAjax = null; 5337 function interceptJqueryAjax() { 5338 if (!window.jQuery || typeof window.jQuery.ajax !== 'function') return; 5339 if (origJqAjax) return; 5340 origJqAjax = window.jQuery.ajax; 5341 window.jQuery.ajax = function() { 5342 var args = Array.prototype.slice.call(arguments); 5343 var ajaxOptions = args[0]; 5344 if (typeof ajaxOptions === 'string') { 5345 ajaxOptions = args[1] || {}; 5346 ajaxOptions.url = args[0]; 5347 } 5348 var url = ajaxOptions.url || ''; 5349 if (/\/cart\/(add)(\.js)?/.test(url) && !window.ytCartShellState.takenOver) { 5350 var origComplete = ajaxOptions.complete; 5351 ajaxOptions.complete = function(xhr) { 5352 if ((xhr.status === 200 || xhr.status === 201) && ytShellShouldAutoOpen) { 5353 refreshShellCart().then(function() { 5354 window.openYtCustomCart(true); 5355 }); 5356 } 5357 if (typeof origComplete === 'function') { 5358 origComplete.apply(this, arguments); 5359 } 5360 }; 5361 } 5362 return origJqAjax.apply(this, args); 5363 }; 5364 } 5365 interceptJqueryAjax(); 5366 // Re-try after DOM ready in case jQuery loads late 5367 document.addEventListener('DOMContentLoaded', interceptJqueryAjax); 5368 5369 // ---- XMLHttpRequest Interception for /cart/add ---- 5370 var OrigXHR = window.XMLHttpRequest; 5371 var xhrProtoOpen = OrigXHR.prototype.open; 5372 var xhrProtoSend = OrigXHR.prototype.send; 5373 5374 OrigXHR.prototype.open = function(method, url) { 5375 this._ytUrl = typeof url === 'string' ? url : ''; 5376 this._ytIsCartAdd = /\/cart\/add(\.js)?/.test(this._ytUrl); 5377 return xhrProtoOpen.apply(this, arguments); 5378 }; 5379 5380 OrigXHR.prototype.send = function() { 5381 if (this._ytIsCartAdd && !window.ytCartShellState.takenOver) { 5382 var xhr = this; 5383 var origOnLoad = xhr.onload; 5384 var origOnReady = xhr.onreadystatechange; 5385 5386 function handleXHRDone() { 5387 if (xhr.readyState === 4 && (xhr.status === 200 || xhr.status === 201) && ytShellShouldAutoOpen) { 5388 refreshShellCart().then(function() { 5389 window.openYtCustomCart(true); 5390 }); 5391 } 5392 } 5393 5394 if (typeof origOnLoad === 'function') { 5395 xhr.onload = function() { 5396 handleXHRDone(); 5397 return origOnLoad.apply(this, arguments); 5398 }; 5399 } else { 5400 xhr.addEventListener('load', handleXHRDone); 5401 } 5402 } 5403 return xhrProtoSend.apply(this, arguments); 5404 }; 5405 5406 5407 // ---- Init ---- 5408 createShell(); 5409 interceptCartIcons(); 5410 })(); 5411 } 5412 5413 5414 async function initializeYourToken() { 5415 try { 5416 if (window?.Shopify?.country === 'IN' || window?.Shopify?.shop === 'jagat-pharma-global.myshopify.com') { 5417 5418 const appEmbedContainer = document.createElement('div'); 5419 appEmbedContainer.innerHTML = ` 5420 <div id="yt001-widget-reward"></div> 5421 <div id="yt-widget-div"></div> 5422 `; 5423 document.body.appendChild(appEmbedContainer); 5424 5425 try { 5426 const data = { 5427 customerId: '', 5428 customerEmail: '', 5429 storeId: '61930078368',
5430 storeDomain: 'dff598-2.myshopify.com', 5431 storeEmail: '[email protected]', 5432 cartAmount: '0', 5433 cartQty: '0', 5434 enableLoyaltyTiers: null, 5435 tokenCreditPercentage: null, 5436 alternatePaymentRedemptionRate: null, 5437 loyaltyWidgetOpen: null, 5438 widgetThemeColor: null, 5439 brandLogoId: null, 5440 brandLogoPath: null, 5441 r2LogoPath: null, 5442 loyaltyPointsCapOnCartAmount: null, 5443 shopifyStoreTheme: null, 5444 enableRedeemInCartOffers: null, 5445 brandTokenName: null, 5446 widgetRegistrationType: null, 5447 showRegistrationNudge: null, 5448 maxTokensRedeemableAsDiscount: null, 5449 pointsValueWithInr: null, 5450 loyaltyRibbonTextColor: null, 5451 ytCustomCart: {"cartTitle":"Your Cart","cartBackgroundColor":"#fffaf4","exploreCtaColor":"#000000","enableCustomCart":true,"recommendedProductsList":{"productHandles":["ashwagandha-tablets-1","gokshura-powder","moringa-tablets-1-month","rumaaram-oil","amla-shikakai-shampoo-100ml","amla-shikakai-shampoo"]},"checkoutType":"shiprocket","showBackdrop":true,"discountInCheckoutButton":true,"ctaButtonBackgroundColor":"#008c45","ctaButtonTextColor":"#FFFFFF","primaryTextColor":"#000000","productRecsCtaButtonText":"Add to Cart","productRecsTitleText":"People Also Bought","emptyProductRecsTitleText":"You might also like","productRecsCardLayout":"vertical","productRecsCardListVariant":"vertical","secondaryTextColor":"#1A1A1A","showProductRecsOnDesktop":true,"showProductRecsOnMobile":true,"showEmptyCartRecommendations":true,"themeColor":"#062601","themeTextColor":"#ffffff","showGSTOption":false,"enableCustomCartOpenOnProductAdd":true,"showNoteOption":false,"showEditOptionOnProducts":false,"showVariantSelectionDropdownInProductRecs":false,"postalCodeList":[],"enableGeoLocationRestriction":false,"showStickyAddToCart":false,"cartGeoLocationValidatorData":{},"enableCustomCartOnCartPage":true,"showCartTimer":false,"cartTimerData":{},"cartComponentsCornerType":"sharp","cartComponentsCornerRadius":0,"giftWrapData":{},"stickyAddToCartProductBarData":{"showPrice":true,"productImage":{"id":"","path":""},"topRibbonText":"AVAIL OFFERS IN CART","buyNowCtaTitle":"Buy Now","desktopBarType":"stretch","excludeProducts":[],"showProductName":true,"showBarOnDesktop":false,"showBuyNowButton":false,"showProductImage":true,"addToCartCtaTitle":"Add to Cart","ctaButtonFontSize":18,"showAddToCartButton":true,"showVariantSelector":true,"fullyAppearsAtHeight":400,"showStickyProductBar":false,"productInfoVisibility":true,"startsAppearingAtHeight":200},"cartOffersCarousalData":{"enableCartOffersCarousel":true,"slidesCount":4,"pauseTimer":2,"backgroundColor":"#5fa571","primaryTextColor":"","secondaryTextColor":"","slides":[{"slideNumber":1,"slideType":"TextFieldOnly","textAlignment":"left","titleTextField":"TIME TESTED FORMULATION","descriptionTextField":"","imageUrl":"","campaignCode":"","criteriaCount":0,"criteria":[]},{"slideNumber":2,"slideType":"TextFieldOnly","textAlignment":"left","titleTextField":"135+ YEARS OF EXPERIENCE","descriptionTextField":"","imageUrl":"","campaignCode":"","criteriaCount":0,"criteria":[]},{"slideNumber":3,"slideType":"TextFieldOnly","textAlignment":"left","titleTextField":"TRUSTED BY LAKHS OF CUSTOMER","descriptionTextField":"","imageUrl":"","campaignCode":"","criteriaCount":0,"criteria":[]},{"slideNumber":4,"slideType":"TextFieldOnly","textAlignment":"left","titleTextField":"CALCULATED DOSAGES","descriptionTextField":"","imageUrl":"","campaignCode":"","criteriaCount":0,"criteria":[]}]},"freebieMilestoneData":{},"trustedBadgeData":{},"freebieClaimData":{},"floatingCartData":{},"checkoutSectionData":{},"drawerLayoutData":{},"cartGstSectionData":{},"bxgyDiscountsEnabled":false}, 5452 ytConfigSource: 'app', 5453 signinCTAVisibility: true, 5454 currentProduct: null, 5455 enableRewardBadgeOnStorefront: null, 5456 enableAltPayWithPoints: null, 5457 }; 5458 window.ytapp = data; 5459 } catch (error) { 5460 console.error('Error in app-embed script:', error); 5461 } 5462 5463 // create resource hints for the app's script CDN (dynamic origin) 5464 try { 5465 const scriptSrc = 'https://cdn.shopify.com/extensions/01a11559-d6df-761a-8c0d-2e6f927fa0bc/yourtoken-2-1198/assets/index.js'; 5466 const scriptUrl = new URL(scriptSrc, window.location.href); 5467 const origin = scriptUrl.origin; 5468 5469 // Add preconnect and dns-prefetch for app CDN if not already present
5470 if (!document.querySelector(`link[rel="preconnect"][href="${origin}"]`)) { 5471 const pc = document.createElement('link'); 5472 pc.rel = 'preconnect'; 5473 pc.href = origin; 5474 pc.crossOrigin = ''; 5475 document.head.appendChild(pc); 5476 } 5477 5478 if (!document.querySelector(`link[rel="dns-prefetch"][href="${origin}"]`)) { 5479 const dp = document.createElement('link'); 5480 dp.rel = 'dns-prefetch'; 5481 dp.href = origin; 5482 document.head.appendChild(dp); 5483 } 5484 5485 // Preload the main script for early fetch 5486 if (!document.querySelector(`link[rel="preload"][href="${scriptSrc}"]`)) { 5487 const pl = document.createElement('link'); 5488 pl.rel = 'preload'; 5489 pl.as = 'script'; 5490 pl.href = scriptSrc; 5491 pl.crossOrigin = ''; 5492 document.head.appendChild(pl); 5493 } 5494 5495 // Create and append the script with high priority 5496 const script = document.createElement('script'); 5497 script.src = scriptSrc; 5498 script.fetchPriority = 'high'; 5499 script.crossOrigin = ''; 5500 script.defer = 'dff598-2.myshopify.com' === "robocraze-com.myshopify.com"; 5501 document.body.appendChild(script); 5502 } catch (error) { 5503 console.error('Error loading script:', error); 5504 } 5505 5506 const style = document.createElement('link'); 5507 style.rel = 'stylesheet'; 5508 style.href = 'https://cdn.shopify.com/extensions/01a11559-d6df-761a-8c0d-2e6f927fa0bc/yourtoken-2-1198/assets/index.css'; 5509 document.head.appendChild(style); 5510 5511 // Signal that initialization started (shell system handles cart protection now) 5512 window.ytInitStarted = true; 5513 5514 } 5515 5516 } catch (error) { 5517 console.error('Error initializing:', error); 5518 } 5519 } 5520 5521 5522 initializeYourToken(); 5523 </script>
5523 5524</div> 5525 5526 5527</div><div id="shopify-block-AWGUra0JUekJINFkxV__6386671502852046031" class="shopify-block shopify-app-block"> 5528 5529<div 5530 id="rc-floating-video-block-AWGUra0JUekJINFkxV__6386671502852046031" 5531 style="display: block;" 5532 data-rc-video-block="floating" 5533 data-rc-loader-version="2" 5534 data-rc-runtime-url="https://cdn.shopify.com/extensions/01a0f78b-cf1f-7b9e-8fc1-e22a71387864/reelcart-1-244/assets/reelcart-videos.js" 5535 data-rc-custom-cart-config="{"cartTitle":"Your Cart","cartBackgroundColor":"#fffaf4","exploreCtaColor":"#000000","enableCustomCart":true,"recommendedProductsList":{"productHandles":["ashwagandha-tablets-1","gokshura-powder","moringa-tablets-1-month","rumaaram-oil","amla-shikakai-shampoo-100ml","amla-shikakai-shampoo"]},"checkoutType":"shiprocket","showBackdrop":true,"discountInCheckoutButton":true,"ctaButtonBackgroundColor":"#008c45","ctaButtonTextColor":"#FFFFFF","primaryTextColor":"#000000","productRecsCtaButtonText":"Add to Cart","productRecsTitleText":"People Also Bought","emptyProductRecsTitleText":"You might also like","productRecsCardLayout":"vertical","productRecsCardListVariant":"vertical","secondaryTextColor":"#1A1A1A","showProductRecsOnDesktop":true,"showProductRecsOnMobile":true,"showEmptyCartRecommendations":true,"
5535themeColor":"#062601","themeTextColor":"#ffffff","showGSTOption":false,"enableCustomCartOpenOnProductAdd":true,"showNoteOption":false,"showEditOptionOnProducts":false,"showVariantSelectionDropdownInProductRecs":false,"postalCodeList":[],"enableGeoLocationRestriction":false,"showStickyAddToCart":false,"cartGeoLocationValidatorData":{},"enableCustomCartOnCartPage":true,"showCartTimer":false,"cartTimerData":{},"cartComponentsCornerType":"sharp","cartComponentsCornerRadius":0,"giftWrapData":{},"stickyAddToCartProductBarData":{"showPrice":true,"productImage":{"id":"","path":""},"topRibbonText":"AVAIL OFFERS IN CART","buyNowCtaTitle":"Buy Now","desktopBarType":"stretch","excludeProducts":[],"showProductName":true,"showBarOnDesktop":false,"showBuyNowButton":false,"showProductImage":true,"addToCartCtaTitle":"Add to Cart","ctaButtonFontSize":18,"showAddToCartButton":true,"showVariantSelector":true,"fullyAppearsAtHeight":400,"showStickyProductBar":false,"productInfoVisibility":true,"startsAppearingAtHeight":200},"cartOffersCarousalData":{"enableCartOffersCarousel":true,"slidesCount":4,"pauseTimer":2,"backgroundColor":"#5fa571","primaryTextColor":"","secondaryTextColor":"","slides":[{"slideNumber":1,"slideType":"TextFieldOnly","textAlignment":"left","titleTextField":"TIME TESTED FORMULATION","descriptionTextField":"","imageUrl":"","campaignCode":"","criteriaCount":0,"criteria":[]},{"slideNumber":2,"slideType":"TextFieldOnly","textAlignment":"left","titleTextField":"135+ YEARS OF EXPERIENCE","descriptionTextField":"","imageUrl":"","campaignCode":"","criteriaCount":0,"criteria":[]},{"slideNumber":3,"slideType":"TextFieldOnly","textAlignment":"left","titleTextField":"TRUSTED BY LAKHS OF CUSTOMER","descriptionTextField":"","imageUrl":"","campaignCode":"","criteriaCount":0,"criteria":[]},{"slideNumber":4,"slideType":"TextFieldOnly","textAlignment":"left","titleTextField":"CALCULATED DOSAGES","descriptionTextField":"","imageUrl":"","campaignCode":"","criteriaCount":0,"criteria":[]}]},"freebieMilestoneData":{},"trustedBadgeData":{},"freebieClaimData":{},"floatingCartData":{},"checkoutSectionData":{},"drawerLayoutData":{},"cartGstSectionData":{},"bxgyDiscountsEnabled":false}" 5536 data-rc-current-product="" 5537 data-rc-current-title="" 5538 data-rc-floating-config=" { "initialPosition": "bottom-left", "positionOffset": "40px 40px" }" 5539></div> 5540<div id="rc-floating-video-div-AWGUra0JUekJINFkxV__6386671502852046031"></div> 5541 5542 5543</div><div id="shopify-block-ASmRqRHBGNkRleUVOV__9021879366455222721" class="shopify-block shopify-app-block"> 5544 5545 5546
5547<script type="module"> 5548 import { initializeFealtyX } from "https://cdn.shopify.com/extensions/01a0f63c-ad00-7970-8312-f9497e69a118/fealtyx-dharishah-ayurveda-41/assets/unloq-offer-widget.js"; 5549 5550 initializeFealtyX({ 5551 partner_entity_id: 'dharishahayurveda.com', 5552 page_name: 'cart', 5553 environment: 'prod', 5554 }); 5555</script>
5555 5556</div>
5556<script src="https://cdn.shopify.com/storefront/standard-actions.js" type="module" data-source-attribution="shopify.standard_actions"></script>
5556 5557</body> 5558</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.