It looks like this is a web page, not a feed. I looked for a feed associated with this page, but couldn't find one. Please enter the address of your feed to validate.

Source: https://rafconduite.com

  1. <!doctype html>
  2. <html class="no-js" lang="fr" -%}dir="rtl" fontify-lang="fr">
  3. <head>
  4. <meta charset="utf-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0, height=device-height, minimum-scale=1.0, maximum-scale=1.0">
  7. <meta name="theme-color" content="">
  8. <title>Karmine Shop</title>
  9. <meta name="description" content="Boutique officielle de la #KCORP !">
  10. <link rel="canonical" href="https://karmineshop.com/">
  11. <link rel="preconnect" href="https://fonts.googleapis.com/">
  12. <link rel="preconnect" href="https://fonts.gstatic.com/" crossorigin>
  13. <link href="https://fonts.googleapis.com/css2?family=Bebas+Neue&amp;display=swap" rel="stylesheet">
  14. <link rel="shortcut icon" href="https://cdn.shopify.com/s/files/1/0533/5652/7801/files/logokarmine_96x.png?v=1613614943" type="image/png">
  15. <meta property="og:type" content="website">
  16. <meta property="og:title" content="Karmine Shop">
  17. <meta property="og:description" content="Boutique officielle de la #KCORP !">
  18. <meta property="og:url" content="https://karmineshop.com/">
  19. <meta property="og:site_name" content="Karmine Shop">
  20. <meta name="twitter:card" content="summary">
  21. <meta name="twitter:title" content="Karmine Shop">
  22. <meta name="twitter:description" content="Boutique officielle de la #KCORP !">
  23. <style>
  24.  @font-face {
  25.  font-family: Archivo;
  26.  font-weight: 400;
  27.  font-style: normal;
  28.  font-display: fallback;
  29.  src: url("https:https://fonts.shopifycdn.com/archivo/archivo_n4.abb5ec97705c33fe369ef678fc93b9cf87658330.woff2?h1=a2FybWluZXNob3AuY29t&h2=a2FybWluZXNob3AuYWNjb3VudC5teXNob3BpZnkuY29t&hmac=6e0eecbc8d6666197c6757d64413f5cf8f2b1b439fd91f95b88a72115b90f62e") format("woff2"),
  30.       url("https:https://fonts.shopifycdn.com/archivo/archivo_n4.0ae8e008abb455fbd654c11c5b30dc47b6849133.woff?h1=a2FybWluZXNob3AuY29t&h2=a2FybWluZXNob3AuYWNjb3VudC5teXNob3BpZnkuY29t&hmac=d4a134debd1f782e185a62f8689e512adaac7e7f6170a8e85732890bd2eb0479") format("woff");
  31. }
  32.  @font-face {
  33.  font-family: Archivo;
  34.  font-weight: 400;
  35.  font-style: normal;
  36.  font-display: fallback;
  37.  src: url("https:https://fonts.shopifycdn.com/archivo/archivo_n4.abb5ec97705c33fe369ef678fc93b9cf87658330.woff2?h1=a2FybWluZXNob3AuY29t&h2=a2FybWluZXNob3AuYWNjb3VudC5teXNob3BpZnkuY29t&hmac=6e0eecbc8d6666197c6757d64413f5cf8f2b1b439fd91f95b88a72115b90f62e") format("woff2"),
  38.       url("https:https://fonts.shopifycdn.com/archivo/archivo_n4.0ae8e008abb455fbd654c11c5b30dc47b6849133.woff?h1=a2FybWluZXNob3AuY29t&h2=a2FybWluZXNob3AuYWNjb3VudC5teXNob3BpZnkuY29t&hmac=d4a134debd1f782e185a62f8689e512adaac7e7f6170a8e85732890bd2eb0479") format("woff");
  39. }
  40.  @font-face {
  41.  font-family: Archivo;
  42.  font-weight: 700;
  43.  font-style: normal;
  44.  font-display: fallback;
  45.  src: url("https:https://fonts.shopifycdn.com/archivo/archivo_n7.6f363ab30b12ea00d5e6243ed0e977a11393a3ad.woff2?h1=a2FybWluZXNob3AuY29t&h2=a2FybWluZXNob3AuYWNjb3VudC5teXNob3BpZnkuY29t&hmac=5edb460b21ad41eb6800384300354949a32d2880057d1aa705f94edd1e753474") format("woff2"),
  46.       url("https:https://fonts.shopifycdn.com/archivo/archivo_n7.846b40a5735bbd149ad44b083a19c3e5d88d8fab.woff?h1=a2FybWluZXNob3AuY29t&h2=a2FybWluZXNob3AuYWNjb3VudC5teXNob3BpZnkuY29t&hmac=2561054d123b21893cefd6f07dedf5ba73468d6bd871f0fad7f08e2156b5c9c1") format("woff");
  47. }
  48.  @font-face {
  49.  font-family: Archivo;
  50.  font-weight: 400;
  51.  font-style: italic;
  52.  font-display: fallback;
  53.  src: url("https:https://fonts.shopifycdn.com/archivo/archivo_i4.a95feba2fc444cfedf1a05723e49fbee7d12512b.woff2?h1=a2FybWluZXNob3AuY29t&h2=a2FybWluZXNob3AuYWNjb3VudC5teXNob3BpZnkuY29t&hmac=aa2c8653bf3ec13a84f1b79b644caa8259ff7b6f797b8e453a76085c6b5f89ee") format("woff2"),
  54.       url("https:https://fonts.shopifycdn.com/archivo/archivo_i4.9734cbbe4db53e64fe62bb6fe5f4ef00f6bc0c85.woff?h1=a2FybWluZXNob3AuY29t&h2=a2FybWluZXNob3AuYWNjb3VudC5teXNob3BpZnkuY29t&hmac=268fb58ab8aa0a9ebe429773f31253645d9d7147f1149a63cbc376e647fd8572") format("woff");
  55. }
  56.  @font-face {
  57.  font-family: Archivo;
  58.  font-weight: 700;
  59.  font-style: italic;
  60.  font-display: fallback;
  61.  src: url("https:https://fonts.shopifycdn.com/archivo/archivo_i7.f132b18f71dd794aabbdb5631a7514bf5d5fa150.woff2?h1=a2FybWluZXNob3AuY29t&h2=a2FybWluZXNob3AuYWNjb3VudC5teXNob3BpZnkuY29t&hmac=a41507ae03da9ade7ca226ae9f935d13ac2828b4a15fb2ea6b9f9df5f5c4b2a9") format("woff2"),
  62.       url("https:https://fonts.shopifycdn.com/archivo/archivo_i7.030187938ee569c3b9c961b486ffa4c07d5a5205.woff?h1=a2FybWluZXNob3AuY29t&h2=a2FybWluZXNob3AuYWNjb3VudC5teXNob3BpZnkuY29t&hmac=4422f842854d8505b3271dbdc70685c9e44833a518202748c43154a5023d7e70") format("woff");
  63. }
  64.  :root {
  65.    --heading-font-family : 'EuropaGroteskSH-BolExt', Archivo, serif;
  66.    --heading-font-weight : 400;
  67.    --heading-font-style  : normal;
  68.    --text-font-family : 'Archivo zerance', Archivo, serif;
  69.    --text-font-weight : 400;
  70.    --text-font-style  : normal;
  71.    --base-text-font-size   : 14px;
  72.    --default-text-font-size: 14px;--background          : #ffffff;
  73.    --background-rgb      : 255, 255, 255;
  74.    --light-background    : #ffffff;
  75.    --light-background-rgb: 255, 255, 255;
  76.    --heading-color       : #ffffff;
  77.    --text-color          : #ffffff;
  78.    --text-color-rgb      : 255, 255, 255;
  79.    --text-color-light    : #dfdfdf;
  80.    --text-color-light-rgb: 223, 223, 223;
  81.    --link-color          : #a1a0a0;
  82.    --link-color-rgb      : 161, 160, 160;
  83.    --border-color        : #ffffff;
  84.    --border-color-rgb    : 255, 255, 255;
  85.    --button-background    : #002474;
  86.    --button-background-rgb: 0, 36, 116;
  87.    --button-text-color    : #ffffff;
  88.    --header-background       : #000000;
  89.    --header-heading-color    : #ffffff;
  90.    --header-light-text-color : #6a6a6a;
  91.    --header-border-color     : #262626;
  92.    --footer-background    : #000000;
  93.    --footer-text-color    : #ffffff;
  94.    --footer-heading-color : #ffffff;
  95.    --footer-border-color  : #262626;
  96.    --navigation-background      : #ffffff;
  97.    --navigation-background-rgb  : 255, 255, 255;
  98.    --navigation-text-color      : #002474;
  99.    --navigation-text-color-light: rgba(0, 36, 116, 0.5);
  100.    --navigation-border-color    : rgba(0, 36, 116, 0.25);
  101.    --newsletter-popup-background     : #ffffff;
  102.    --newsletter-popup-text-color     : #ffffff;
  103.    --newsletter-popup-text-color-rgb : 255, 255, 255;
  104.    --secondary-elements-background       : #1c1b1b;
  105.    --secondary-elements-background-rgb   : 28, 27, 27;
  106.    --secondary-elements-text-color       : #ffffff;
  107.    --secondary-elements-text-color-light : rgba(255, 255, 255, 0.5);
  108.    --secondary-elements-border-color     : rgba(255, 255, 255, 0.25);
  109.    --product-sale-price-color    : #f94c43;
  110.    --product-sale-price-color-rgb: 249, 76, 67;
  111.    --product-star-rating: #f6a429;
  112.    /* Shopify related variables */
  113.    --payment-terms-background-color: #ffffff;
  114.    /* Products */
  115.    --horizontal-spacing-four-products-per-row: 60px;
  116.        --horizontal-spacing-two-products-per-row : 60px;
  117.    --vertical-spacing-four-products-per-row: 60px;
  118.        --vertical-spacing-two-products-per-row : 75px;
  119.    /* Animation */
  120.    --drawer-transition-timing: cubic-bezier(0.645, 0.045, 0.355, 1);
  121.    --header-base-height: 80px; /* We set a default for browsers that do not support CSS variables */
  122.    /* Cursors */
  123.    --cursor-zoom-in-svg    : url(https://cdn.shopify.com/s/files/1/0533/5652/7801/t/35/assets/cursor-zoom-in.svg?v=24210280122913523811671109669);
  124.    --cursor-zoom-in-2x-svg : url(https://cdn.shopify.com/s/files/1/0533/5652/7801/t/35/assets/cursor-zoom-in-2x.svg?v=162892758134330631591671109669);
  125.  }
  126. </style>
  127. <script>
  128.  // IE11 does not have support for CSS variables, so we have to polyfill them
  129.  if (!(((window || {}).CSS || {}).supports && window.CSS.supports('(--a: 0)'))) {
  130.    const script = document.createElement('script');
  131.    script.type = 'text/javascript';
  132.    script.src = 'https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2';
  133.    script.onload = function() {
  134.      cssVars({});
  135.    };
  136.    document.getElementsByTagName('head')[0].appendChild(script);
  137.  }
  138. </script>
  139. <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
  140. <script>
  141.  window.botmindWidget = null;
  142.  function initBotmindChat() {
  143.    if (window.botmindWidget.works && window.botmindWidget.init) {
  144.      window.botmindWidget.init({
  145.        token: '59c1d9e8-72e1-4168-aaef-86404e29a167',
  146.        host: 'https://api.widget.botmind.io',
  147.        language: 'fr',
  148.      },
  149.      undefined,
  150.      {
  151.      setWidgetOnLeftSide: true,
  152.      refRem: true
  153.      }
  154.      );
  155.    }
  156.  }
  157.  function BCinitialize(i, t) { var n; i.getElementById(t) ? initBotmindChat() : ((n = i.createElement("script")).id = t, n.async = !0, n.src = 'https://api.widget.botmind.io' + "/public/widget.js", n.onload = initBotmindChat, i.head.appendChild(n)) } function BCinitiateCall() { BCinitialize(document, "botmind-webchat-js") } if (document.readyState === 'loading') { window.addEventListener ? window.addEventListener("load", BCinitiateCall, !1) : window.attachEvent("load", BCinitiateCall, !1) } else { BCinitiateCall() };
  158. </script>
  159. <script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
  160. <meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/53356527801/digital_wallets/dialog">
  161. <meta name="shopify-checkout-api-token" content="925b61710394b9fe47fe42a9b98d145b">
  162. <link rel="alternate" hreflang="x-default" href="https://karmineshop.com/">
  163. <link rel="alternate" hreflang="fr-FR" href="https://karmineshop.com/">
  164. <link rel="alternate" hreflang="en-FR" href="https://karmineshop.com/en">
  165. <script>
  166.  (function() {
  167.    var scripts = ["https://cdn.shopify.com/shopifycloud/checkout-web/assets/runtime.baseline.fr.f2ea6c5e2291bc21ff7f.js", "https://cdn.shopify.com/shopifycloud/checkout-web/assets/checkout-web-packages~Information~NoAddressLocation~Payment~PostPurchase~Review~Shipping~ShopPay~Sho~cf13f96e.baseline.fr.8d3a709bcf8c04f77ed7.js", "https://cdn.shopify.com/shopifycloud/checkout-web/assets/Information~Payment~ShopPay.baseline.fr.dc5317dfebae7fc61df8.js", "https://cdn.shopify.com/shopifycloud/checkout-web/assets/Information~Payment.baseline.fr.23a20cd88bcf104605f2.js", "https://cdn.shopify.com/shopifycloud/checkout-web/assets/Information.baseline.fr.4a2aa6242d0c2b13f941.js", "https://cdn.shopify.com/shopifycloud/checkout-web/assets/checkout-web-ui~app.baseline.fr.26a0342d355a675e2801.js", "https://cdn.shopify.com/shopifycloud/checkout-web/assets/vendors~app.baseline.fr.0f364a520df076f1f98b.js", "https://cdn.shopify.com/shopifycloud/checkout-web/assets/checkout-web-packages~app.baseline.fr.a3963092dc9378b95800.js", "https://cdn.shopify.com/shopifycloud/checkout-web/assets/app.baseline.fr.8c6e4df01e6e5018cb47.js"];
  168.    var styles = ["https://cdn.shopify.com/shopifycloud/checkout-web/assets/checkout-web-ui~app.baseline.fr.ba7746e3965877991bae.css", "https://cdn.shopify.com/shopifycloud/checkout-web/assets/vendors~app.baseline.fr.954db6995929b6f1f646.css", "https://cdn.shopify.com/shopifycloud/checkout-web/assets/app.baseline.fr.dd733f21b66b59afc26d.css", "https://cdn.shopify.com/shopifycloud/checkout-web/assets/Information~Payment~ShopPay.baseline.fr.9f248e42bf2a8151ea27.css", "https://cdn.shopify.com/shopifycloud/checkout-web/assets/Information.baseline.fr.6d08f77e3a864d9cf367.css"];
  169.    function prefetch(url, as, callback) {
  170.      var link = document.createElement('link');
  171.      if (link.relList.supports('prefetch')) {
  172.        link.rel = 'prefetch';
  173.        link.fetchPriority = 'low';
  174.        link.as = as;
  175.        link.href = url;
  176.        link.onload = link.onerror = callback;
  177.        document.head.appendChild(link);
  178.      } else {
  179.        var xhr = new XMLHttpRequest();
  180.        xhr.open('GET', url, true);
  181.        xhr.onloadend = callback;
  182.        xhr.send();
  183.      }
  184.    }
  185.    function prefetchAssets() {
  186.      var resources = [].concat(
  187.        scripts.map(function(url) { return [url, 'script']; }),
  188.        styles.map(function(url) { return [url, 'style']; })
  189.      );
  190.      var index = 0;
  191.      (function next() {
  192.        var res = resources[index++];
  193.        if (res) prefetch(res[0], res[1], next);
  194.      })();
  195.    }
  196.    addEventListener('load', prefetchAssets);
  197.   })();
  198. </script>
  199. <script id="apple-pay-shop-capabilities" type="application/json">{"shopId":53356527801,"countryCode":"FR","currencyCode":"EUR","merchantCapabilities":["supports3DS"],"merchantId":"gid:\/\/shopify\/Shop\/53356527801","merchantName":"Karmine Shop","requiredBillingContactFields":["postalAddress","email","phone"],"requiredShippingContactFields":["postalAddress","email","phone"],"shippingType":"shipping","supportedNetworks":["visa","masterCard","amex"],"total":{"type":"pending","label":"Karmine Shop","amount":"1.00"},"shopifyPaymentsEnabled":false,"supportsSubscriptions":false}</script>
  200. <script id="shopify-features" type="application/json">{"accessToken":"925b61710394b9fe47fe42a9b98d145b","betas":["rich-media-storefront-analytics"],"domain":"karmineshop.com","predictiveSearch":true,"shopId":53356527801,"smart_payment_buttons_url":"https:\/\/cdn.shopify.com\/shopifycloud\/payment-sheet\/assets\/latest\/spb.fr.js?v=2","dynamic_checkout_cart_url":"https:\/\/cdn.shopify.com\/shopifycloud\/payment-sheet\/assets\/latest\/dynamic-checkout-cart.fr.js?v=2","locale":"fr","optimusEnabled":false}</script>
  201. <script>var Shopify = Shopify || {};
  202. Shopify.shop = "karmineshop.myshopify.com";
  203. Shopify.locale = "fr";
  204. Shopify.currency = {"active":"EUR","rate":"1.0"};
  205. Shopify.country = "FR";
  206. Shopify.theme = {"name":"Copy of Prestige - Zerance","id":139857494320,"theme_store_id":855,"role":"main"};
  207. Shopify.theme.handle = "null";
  208. Shopify.theme.style = {"id":null,"handle":null};
  209. Shopify.cdnHost = "cdn.shopify.com";
  210. Shopify.routes = Shopify.routes || {};
  211. Shopify.routes.root = "/";</script>
  212. <script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
  213. <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>
  214. <script>(function() {
  215.  function asyncLoad() {
  216.    var urls = ["https:\/\/gdprcdn.b-cdn.net\/js\/gdpr_cookie_consent.min.js?shop=karmineshop.myshopify.com","https:\/\/cdn.hextom.com\/js\/eventpromotionbar.js?shop=karmineshop.myshopify.com","https:\/\/js.jilt.com\/storefront\/v1\/jilt.js?shop=karmineshop.myshopify.com","https:\/\/cdn.codeblackbelt.com\/js\/modules\/also-bought\/main.min.js?shop=karmineshop.myshopify.com","https:\/\/cdn.secomapp.com\/freegifts\/app\/karmineshop.myshopify.com_1631775058.js?shop=karmineshop.myshopify.com","https:\/\/shopifyorderlimits.s3.amazonaws.com\/limits\/load.js?shop=karmineshop.myshopify.com","https:\/\/instafeed.nfcube.com\/cdn\/f6b19c2f57ccdaf9c314f8ef5871c358.js?shop=karmineshop.myshopify.com","https:\/\/d3ithgl79uu5su.cloudfront.net\/section-feed.js?shop=karmineshop.myshopify.com","https:\/\/static.klaviyo.com\/onsite\/js\/klaviyo.js?company_id=T9USmY\u0026shop=karmineshop.myshopify.com","https:\/\/static.klaviyo.com\/onsite\/js\/klaviyo.js?company_id=T9USmY\u0026shop=karmineshop.myshopify.com"];
  217.    for (var i = 0; i < urls.length; i++) {
  218.      var s = document.createElement('script');
  219.      s.type = 'text/javascript';
  220.      s.async = true;
  221.      s.src = urls[i];
  222.      var x = document.getElementsByTagName('script')[0];
  223.      x.parentNode.insertBefore(s, x);
  224.    }
  225.  };
  226.  if(window.attachEvent) {
  227.    window.attachEvent('onload', asyncLoad);
  228.  } else {
  229.    window.addEventListener('load', asyncLoad, false);
  230.  }
  231. })();</script>
  232. <script id="__st">var __st={"a":53356527801,"offset":3600,"reqid":"a8b75ef5-9cfc-45a8-a553-6e4c901eeaae","pageurl":"karmineshop.com\/","u":"292dff0a778c","p":"home"};</script>
  233. <script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
  234. <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","https://cdn.shopify.com/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>
  235. <script integrity="" data-source-attribution="shopify.loadfeatures" defer="defer" src="https://cdn.shopify.com/shopifycloud/shopify/assets/storefront/load_feature-e154599399e6b8b29dcb1102cc76eb199fa33a09af4fa78d15e8f8544ee64fcd.js" crossorigin="anonymous"></script>
  236. <script integrity="" data-source-attribution="shopify.dynamic-checkout" defer="defer" src="https://cdn.shopify.com/shopifycloud/shopify/assets/storefront/features-87e8399988880142f2c62771b9d8f2ff6c290b3ff745dd426eb0dfe0db9d1dae.js" crossorigin="anonymous"></script>
  237. <style id="shopify-dynamic-checkout-cart">
  238. @media screen and (min-width: 750px) {
  239.  #dynamic-checkout-cart {
  240.    min-height: 50px;
  241.  }
  242. }
  243. @media screen and (max-width: 750px) {
  244.  #dynamic-checkout-cart {
  245.    min-height: 60px;
  246.  }
  247. }
  248. </style>
  249. <script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
  250. <link rel="stylesheet" href="https://cdn.shopify.com/s/files/1/0533/5652/7801/t/35/assets/theme.css?v=7543696454363778631671109669">
  251. <link rel="stylesheet" href="https://cdn.shopify.com/s/files/1/0533/5652/7801/t/35/assets/zerance.css?v=57408865775026402061671109669">
  252. <script>// This allows to expose several variables to the global scope, to be used in scripts
  253.      window.theme = {
  254.        pageType: "index",
  255.        moneyFormat: "{{amount_with_comma_separator}} €",
  256.        moneyWithCurrencyFormat: "{{amount_with_comma_separator}} € EUR",
  257.        currencyCodeEnabled: false,
  258.        productImageSize: "square",
  259.        searchMode: "product",
  260.        showPageTransition: false,
  261.        showElementStaggering: true,
  262.        showImageZooming: true
  263.      };
  264.      window.routes = {
  265.        rootUrl: "\/",
  266.        rootUrlWithoutSlash: '',
  267.        cartUrl: "\/cart",
  268.        cartAddUrl: "\/cart\/add",
  269.        cartChangeUrl: "\/cart\/change",
  270.        searchUrl: "\/search",
  271.        productRecommendationsUrl: "\/recommendations\/products"
  272.      };
  273.      window.languages = {
  274.        cartAddNote: "Ajouter une note",
  275.        cartEditNote: "Editer la note",
  276.        productImageLoadingError: "L\u0026#39;image n\u0026#39;a pas pu être chargée. Essayez de recharger la page.",
  277.        productFormAddToCart: "Ajouter au panier",
  278.        productFormUnavailable: "Indisponible",
  279.        productFormSoldOut: "Rupture",
  280.        shippingEstimatorOneResult: "1 option disponible :",
  281.        shippingEstimatorMoreResults: "{{count}} options disponibles :",
  282.        shippingEstimatorNoResults: "Nous ne livrons pas à cette adresse."
  283.      };
  284.      window.lazySizesConfig = {
  285.        loadHidden: false,
  286.        hFac: 0.5,
  287.        expFactor: 2,
  288.        ricTimeout: 150,
  289.        lazyClass: 'Image--lazyLoad',
  290.        loadingClass: 'Image--lazyLoading',
  291.        loadedClass: 'Image--lazyLoaded'
  292.      };
  293.      document.documentElement.className = document.documentElement.className.replace('no-js', 'js');
  294.      document.documentElement.style.setProperty('--window-height', window.innerHeight + 'px');
  295.      // We do a quick detection of some features (we could use Modernizr but for so little...)
  296.      (function() {
  297.        document.documentElement.className += ((window.CSS && window.CSS.supports('(position: sticky) or (position: -webkit-sticky)')) ? ' supports-sticky' : ' no-supports-sticky');
  298.        document.documentElement.className += (window.matchMedia('(-moz-touch-enabled: 1), (hover: none)')).matches ? ' no-supports-hover' : ' supports-hover';
  299.      }());
  300.    </script>
  301. <script src="https://cdn.shopify.com/s/files/1/0533/5652/7801/t/35/assets/lazysizes.min.js?v=174358363404432586981671109669" async></script>
  302. <script src="https://cdn.shopify.com/s/files/1/0533/5652/7801/t/35/assets/libs.min.js?v=26178543184394469741671109669" defer></script>
  303. <script src="https://cdn.shopify.com/s/files/1/0533/5652/7801/t/35/assets/theme.js?v=69766538163165777771671109669" defer></script>
  304. <script src="https://cdn.shopify.com/s/files/1/0533/5652/7801/t/35/assets/custom.js?v=184250672874076037661671109669" defer></script>
  305. <script>
  306.      (function () {
  307.        window.onpageshow = function() {
  308.          if (window.theme.showPageTransition) {
  309.            var pageTransition = document.querySelector('.PageTransition');
  310.            if (pageTransition) {
  311.              pageTransition.style.visibility = 'visible';
  312.              pageTransition.style.opacity = '0';
  313.            }
  314.          }
  315.          // When the page is loaded from the cache, we have to reload the cart content
  316.          document.documentElement.dispatchEvent(new CustomEvent('cart:refresh', {
  317.            bubbles: true
  318.          }));
  319.        };
  320.      })();
  321.    </script>
  322. <script type="application/ld+json">
  323.  {
  324.    "@context": "http://schema.org",
  325.    "@type": "BreadcrumbList",
  326.  "itemListElement": [{
  327.      "@type": "ListItem",
  328.      "position": 1,
  329.      "name": "Accueil",
  330.      "item": "https://karmineshop.com"
  331.    }]
  332.  }
  333.  </script>
  334. <script type="text/javascript">var jiltStorefrontParams = {"capture_email_on_add_to_cart":0,"platform":"shopify","popover_dismiss_message":"Your email and cart are saved so we can send you email reminders about this order.","shop_uuid":"fe602e4b-11f7-4f05-b603-5a53bb1cdd15","signup_form":{}}; </script>
  335. <script src="https://shopifyorderlimits.s3.amazonaws.com/limits/karmineshop.myshopify.com?v=86&amp;r=20211222164841&amp;shop=karmineshop.myshopify.com"></script>
  336. <script>
  337. var pplr_cart = {"note":null,"attributes":{},"original_total_price":0,"total_price":0,"total_discount":0,"total_weight":0.0,"item_count":0,"items":[],"requires_shipping":false,"currency":"EUR","items_subtotal_price":0,"cart_level_discount_applications":[]};
  338. var pplr_shop_currency = "EUR";
  339. var pplr_enabled_currencies_size = 1;
  340. var pplr_money_formate = "{{amount_with_comma_separator}} €";
  341. var pplr_manual_theme_selector=["CartCount span","tr:has([name*=updates])","tr img:first",".line-item__title, .meta span",".pplr_item_price",".pplr_item_line_price",".pplr_item_remove",".pplr_item_update",".pplr_subtotal_price","form[action*=cart] [name=checkout]","CLIQUE ICI !"];
  342. </script>
  343. <script async src="https://cdn-zeptoapps.com/product-personalizer/pplr_common.js?v=15"></script>
  344. <script id="sca_fg_cart_ShowGiftAsProductTemplate" type="text/template">
  345.  <div class="item not-sca-qv" id="sca-freegift-{{productID}}">
  346.    <a class="close_box" style="display: none;position: absolute;top:5px;right: 10px;font-size: 22px;font-weight: bold;cursor: pointer;text-decoration:none;color: #aaa;">×</a>
  347.    <a href="/products/{{productHandle}}" target="_blank"><img style="margin-left: auto; margin-right: auto; width: 50%;" class="lazyOwl" data-src="{{productImageURL}}"></a>
  348.    <div class="sca-product-shop">
  349.      <div class="review-summary3">
  350.        <div class="yotpo bottomLine" style="text-align:center"
  351.          data-product-id="{{productID}}"
  352.          data-product-models="{{productID}}"
  353.          data-name="{{productTitle}}"
  354.          data-url="/products/{{productHandle}}">
  355.        </div>
  356.      </div>
  357.      <div class="f-fix"><span class="sca-product-title" style="white-space: nowrap;color:#000;{{showfgTitle}}">{{productTitle}}</span>
  358.          <div id="product-variants-{{productID}}">
  359.            <div class="sca-price" id="price-field-{{productID}}">
  360.              <span class="sca-old-price">{{variant_compare_at_price}}</span>
  361.              <span class="sca-special-price">{{variant_price}}</span>
  362.            </div>
  363.            <div id="stay-content-sca-freegift-{{productID}}" class="sca-fg-cart-item">
  364.              <a class="close_box" style="display: none;position: absolute;top:5px;right: 10px;font-size: 22px;font-weight: bold;cursor: pointer;text-decoration:none;color: #aaa;">×</a>
  365.              <select id="product-select-{{productID}}" name="id" style="display: none">{{optionVariantData}}</select>
  366.            </div>
  367.          </div>
  368.          <button type='button' id="sca-btn-select-{{productID}}" class="sca-button" onclick="onclickSelect_{{productID}}();"><span>{{SelectButton}}</span></button>
  369.          <button type='button' id="sca-btn-{{productID}}" class="sca-button" style="display: none"><span>{{AddToCartButton}}</span></button>
  370.      </div>
  371.    </div>
  372.  </div>
  373. </script>
  374. <script id="sca_fg_cart_ShowGiftAsProductScriptTemplate" type="text/template">
  375.    var selectCallback_{{productID}}=function(t,a){if(t?(t.available?(SECOMAPP.jQuery("#sca-btn-{{productID}}").removeClass("disabled").removeAttr("disabled").html("<span>{{AddToCartButton}}</span>").fadeTo(200,1),SECOMAPP.jQuery("#sca-btn-{{productID}}").unbind("click"),SECOMAPP.jQuery("#sca-btn-{{productID}}").click(SECOMAPP.jQuery.proxy(function(){SECOMAPP.addGiftToCart(t.id,1)},t))):SECOMAPP.jQuery("#sca-btn-{{productID}}").html("<span>{{UnavailableButton}}</span>").addClass("disabled").attr("disabled","disabled").fadeTo(200,.5),t.compare_at_price>t.price?SECOMAPP.jQuery("#price-field-{{productID}}").html("<span class='sca-old-price'>"+SECOMAPP.formatMoney(t.compare_at_price)+"</span>&nbsp;<s class='sca-special-price'>"+SECOMAPP.formatMoney(t.price)+"</s>"):SECOMAPP.jQuery("#price-field-{{productID}}").html("<span class='sca-special-price'>"+SECOMAPP.formatMoney(t.price)+"</span>")):SECOMAPP.jQuery("#sca-btn-{{productID}}").html("<span>{{UnavailableButton}}</span>").addClass("disabled").attr("disabled","disabled").fadeTo(200,.5),t&&t.featured_image){var e=SECOMAPP.jQuery("#sca-freegift-{{productID}} img"),_=t.featured_image,c=e[0];Shopify.Image.switchImage(_,c,function(t,a,e){SECOMAPP.jQuery(e).parents("a").attr("href",t),SECOMAPP.jQuery(e).attr("src",t)})}},onclickSelect_{{productID}}=function(t){SECOMAPP.jQuery.getJSON("/products/{{productHandle}}.js",{_:(new Date).getTime()},function(t){SECOMAPP.jQuery(".owl-item #sca-freegift-{{productID}} span.sca-product-title").html(t.title);var e=[];SECOMAPP.jQuery.each(t.options,function(t,a){e[t]=a.name}),t.options=e;for(var a={{variantsGiftList}},_={{mainVariantsList}},c=t.variants.length-1;-1<c;c--)a.indexOf(t.variants[c].id)<0&&_.indexOf(t.variants[c].id)<0&&t.variants.splice(c,1);for(var o=_.length-1;-1<o;o--){var i=a[o],r=_[o],n=-1,s=-1;for(c=t.variants.length-1;-1<c;c--)t.variants[c].id==i?n=c:t.variants[c].id==r&&(s=c);-1<n&&-1<s&n!==s?("undefined"!=typeof SECOMAPP&&void 0!==SECOMAPP.fgsettings&&!0===SECOMAPP.fgsettings.sca_sync_gift&&void 0!==SECOMAPP.fgsettings.sca_fg_gift_variant_quantity_format&&"equal_original_inventory"===SECOMAPP.fgsettings.sca_fg_gift_variant_quantity_format&&(t.variants[n].available=t.variants[s].available,t.variants[n].inventory_management=t.variants[s].inventory_management),t.variants[n].option1=t.variants[s].option1,t.variants[n].options[0].name=t.variants[s].options[0].name,t.variants[n].options[1]&&(t.variants[n].options[1].name=t.variants[s].options[1].name,t.variants[n].option2=t.variants[s].option2),t.variants[n].options[2]&&(t.variants[n].options[2].name=t.variants[s].options[2].name,t.variants[n].option3=t.variants[s].option3),t.variants[n].title=t.variants[s].title,t.variants[n].name=t.variants[s].name,t.variants[n].public_title=t.variants[s].public_title,t.variants.splice(s,1)):(t.variants[s].id=i,t.variants[s].compare_at_price||(t.variants[s].compare_at_price=t.variants[s].price),t.variants[s].price=SECOMAPP.fgdata.giftid_price_mapping[i])}SECOMAPP.jQuery("#sca-btn-select-{{productID}}").hide(),SECOMAPP.jQuery("#product-select-{{productID}}").show(),SECOMAPP.jQuery("#sca-btn-{{productID}}").show(),SECOMAPP.jQuery("#stay-content-sca-freegift-{{productID}} .close_box").show(),SECOMAPP.jQuery("#stay-content-sca-freegift-{{productID}} .close_box").click(function(){SECOMAPP.jQuery("#stay-content-sca-freegift-{{productID}}").hide(),SECOMAPP.jQuery("#sca-btn-{{productID}}").hide(),SECOMAPP.jQuery("#sca-btn-select-{{productID}}").show()}),onclickSelect_{{productID}}=function(){SECOMAPP.jQuery("#stay-content-sca-freegift-{{productID}}").show(),SECOMAPP.jQuery("#sca-btn-{{productID}}").show(),SECOMAPP.jQuery("#sca-btn-select-{{productID}}").hide()},1==t.variants.length?(-1!==t.variants[0].title.indexOf("Default")&&SECOMAPP.jQuery("#sca-freegift-{{productID}} .selector-wrapper").hide(),1==t.variants[0].available&&(SECOMAPP.jQuery("#sca-btn-{{productID}}").show(),SECOMAPP.jQuery("#sca-btn-select-{{productID}}").hide(),SECOMAPP.jQuery("#sca-btn-{{productID}}").removeClass("disabled").removeAttr("disabled").html("<span>{{AddToCartButton}}</span>").fadeTo(200,1),SECOMAPP.jQuery("#sca-btn-{{productID}}").unbind("click"),SECOMAPP.jQuery("#sca-btn-{{productID}}").click(SECOMAPP.jQuery.proxy(function(){SECOMAPP.addGiftToCart(t.variants[0].id,1)},t)))):(new Shopify.OptionSelectors("product-select-{{productID}}",{product:t,onVariantSelected:selectCallback_{{productID}},enableHistoryState:!0}),SECOMAPP.jQuery("#stay-content-sca-freegift-{{productID}}").show(),SECOMAPP.jQuery("#stay-content-sca-freegift-{{productID}}").focus())})};1=={{variantsGiftList}}.length&&onclickSelect_{{productID}}();
  376. </script>
  377. <script id="sca_fg_cart_ShowGiftAsVariantTemplate" type="text/template">
  378.  <div class="item not-sca-qv" id="sca-freegift-{{variantID}}">
  379.    <a href="/products/{{productHandle}}?variant={{originalVariantID}}" target="_blank"><img style="margin-left: auto; margin-right: auto; width: 50%;" class="lazyOwl" data-src="{{variantImageURL}}"></a>
  380.    <div class="sca-product-shop">
  381.      <div class="review-summary3">
  382.        <div class="yotpo bottomLine" style="text-align:center"
  383.          data-product-id="{{productID}}"
  384.          data-product-models="{{productID}}"
  385.          data-name="{{productTitle}}"
  386.          data-url="/products/{{productHandle}}">
  387.        </div>
  388.      </div>
  389.      <div class="f-fix">
  390.        <span class="sca-product-title" style="white-space: nowrap;color:#000;">{{variantTitle}}</span>
  391.        <div class="sca-price">
  392.          <span class="sca-old-price">{{variant_compare_at_price}}</span>
  393.          <span class="sca-special-price">{{variant_price}}</span>
  394.        </div>
  395.        <button type="button" id="sca-btn{{variantID}}" class="sca-button" onclick="SECOMAPP.addGiftToCart({{variantID}},1);">
  396.          <span>{{AddToCartButton}}</span>
  397.        </button>
  398.      </div>
  399.    </div>
  400.  </div>
  401. </script>
  402. <script id="sca_fg_prod_GiftList" type="text/template">
  403.  <a style="text-decoration: none !important" id ="{{giftShowID}}" class="product-image freegif-product-image freegift-info-{{giftShowID}}"
  404.     title="{{giftTitle}}" href="/products/{{productsHandle}}"><img class="not-sca-qv" src="{{giftImgUrl}}" alt="{{giftTitle}}" /></a>
  405. </script>
  406. <script id="sca_fg_prod_Gift_PopupDetail" type="text/template">
  407.  <div class="sca-fg-item fg-info-{{giftShowID}}" style="display:none;z-index:2147483647;">
  408.    <div class="sca-fg-item-options">
  409.      <div class="sca-fg-item-option-title">
  410.        <em>{{freegiftRuleName}}</em>
  411.      </div>
  412.      <div class="sca-fg-item-option-ct">
  413.        <!--        <div class="sca-fg-image-item">
  414.                        <img src="{{giftImgUrl}}" /> -->
  415.        <div class="sca-fg-item-name">
  416.          <a href="#">{{giftTitle}}</a>
  417.        </div>
  418.        <!--        </div>--></div>
  419.    </div>
  420.  </div>
  421. </script>
  422. <script id="sca_fg_ajax_GiftListPopup" type="text/template">
  423.  <div id="freegift_popup" class="mfp-hide">
  424.    <div id="sca-fg-owl-carousel">
  425.      <div id="freegift_cart_container" class="sca-fg-cart-container" style="display: none;">
  426.        <div id="freegift_message" class="owl-carousel"></div>
  427.      </div>
  428.      <div id="sca-fg-slider-cart" style="display: none;">
  429.        <div class="sca-fg-cart-title">
  430.          <strong>{{popupTitle}}</strong>
  431.        </div>
  432.        <div id="sca_freegift_list" class="owl-carousel"></div>
  433.      </div>
  434.    </div>
  435.  </div>
  436. </script>
  437. <script id="sca_fg_checkout_confirm_popup" type="text/template">
  438.         <div class='sca-fg-checkout-confirm-popup' style='font-family: "Myriad","Cardo","Big Caslon","Bodoni MT",Georgia,serif; position: relative;background: #FFF;padding: 20px 20px 50px 20px;width: auto;max-width: 500px;margin: 20px auto;'>
  439.             <h1 style='font-family: "Oswald","Cardo","Big Caslon","Bodoni MT",Georgia,serif;'>YOU CAN STILL ADD MORE!</h1>
  440.             <p>You get 1 free item with every product purchased. It looks like you can still add more free item(s) to your cart. What would you like to do?</p>
  441.             <p class='sca-fg-checkout-confirm-buttons' style='float: right;'>
  442.                 <a class='btn popup-modal-dismiss action_button add_to_cart' href='#' style='width: 200px !important;margin-right: 20px;'>ADD MORE</a>
  443.                 <a class='btn checkout__button continue-checkout action_button add_to_cart' href='/checkout' style='width: 200px !important;'>CHECKOUT</a>
  444.             </p>
  445.         </div>
  446. </script>
  447. <link href="https://cdn.shopify.com/s/files/1/0533/5652/7801/t/35/assets/sca.freegift.css?v=165156737669823855401671109669" rel="stylesheet" type="text/css" media="all"/>
  448. <script src="https://cdn.shopify.com/shopifycloud/shopify/assets/themes_support/option_selection-9f517843f664ad329c689020fb1e45d03cac979f64b9eb1651ea32858b0ff452.js" type="text/javascript"></script>
  449. <script data-cfasync="false">
  450.    Shopify.money_format = "{{amount_with_comma_separator}} €";
  451.    //enable checking free gifts condition when checkout clicked
  452.    if ((typeof SECOMAPP) === 'undefined') { window.SECOMAPP = {}; };
  453.    SECOMAPP.enableOverrideCheckout = true;
  454.    SECOMAPP.add_offer_names_above_gift_list = true;
  455.    //    SECOMAPP.preStopAppCallback = function(cart){
  456.    //        if(typeof yotpo!=='undefined' && typeof yotpo.initWidgets==='function'){
  457.    //            yotpo.initWidgets();
  458.    //        }
  459.    //    }
  460. </script>
  461. <script data-cfasync="false" type="text/javascript">
  462.  /* Smart Ecommerce App (SEA Inc)
  463.  * http://www.secomapp.com
  464.  * Do not reuse those source codes if don't have permission of us.
  465.  * */
  466.  !function(){Array.isArray||(Array.isArray=function(e){return"[object Array]"===Object.prototype.toString.call(e)}),"function"!=typeof Object.create&&(Object.create=function(e){function t(){}return t.prototype=e,new t}),Object.keys||(Object.keys=function(e){var t,o=[];for(t in e)Object.prototype.hasOwnProperty.call(e,t)&&o.push(t);return o}),String.prototype.endsWith||Object.defineProperty(String.prototype,"endsWith",{value:function(e,t){var o=this.toString();(void 0===t||t>o.length)&&(t=o.length),t-=e.length;var r=o.indexOf(e,t);return-1!==r&&r===t},writable:!0,enumerable:!0,configurable:!0}),Array.prototype.indexOf||(Array.prototype.indexOf=function(e,t){var o;if(null==this)throw new TypeError('"this" is null or not defined');var r=Object(this),i=r.length>>>0;if(0===i)return-1;var n=+t||0;if(Math.abs(n)===1/0&&(n=0),n>=i)return-1;for(o=Math.max(n>=0?n:i-Math.abs(n),0);o<i;){if(o in r&&r[o]===e)return o;o++}return-1}),Array.prototype.forEach||(Array.prototype.forEach=function(e,t){var o,r;if(null==this)throw new TypeError(" this is null or not defined");var i=Object(this),n=i.length>>>0;if("function"!=typeof e)throw new TypeError(e+" is not a function");for(arguments.length>1&&(o=t),r=0;r<n;){var a;r in i&&(a=i[r],e.call(o,a,r,i)),r++}}),console=console||{},console.log=console.log||function(){},"undefined"==typeof Shopify&&(Shopify={}),"function"!=typeof Shopify.onError&&(Shopify.onError=function(){}),"undefined"==typeof SECOMAPP&&(SECOMAPP={}),SECOMAPP.removeGiftsVariant=function(e){setTimeout(function(){try{e("select option").not(".sca-fg-cart-item select option").filter(function(){var t=e(this).val(),o=e(this).text();-1!==o.indexOf(" - ")&&(o=o.slice(0,o.indexOf(" - ")));var r=[];return-1!==o.indexOf(" / ")&&(r=o.split(" / "),o=r[r.length-1]),!!(void 0!==SECOMAPP.gifts_list_avai&&void 0!==SECOMAPP.gifts_list_avai[t]||o.endsWith("% off)"))&&(e(this).parent("select").find("option").not(".sca-fg-cart-item select option").filter(function(){var r=e(this).val();return e(this).text().endsWith(o)||r==t}).remove(),e(".dropdown *,ul li,label,div").filter(function(){var r=e(this).html(),i=e(this).data("value");return r&&r.endsWith(o)||i==t}).remove(),!0)})}catch(e){console.log(e)}},500)},SECOMAPP.formatMoney=function(e,t){"string"==typeof e&&(e=e.replace(".",""));var o="",r="undefined"!=typeof Shopify&&void 0!==Shopify.money_format?Shopify.money_format:"{{amount}}",i=/\{\{\s*(\w+)\s*\}\}/,n=t||(void 0!==this.fgsettings&&"string"==typeof this.fgsettings.sca_currency_format&&this.fgsettings.sca_currency_format.indexOf("amount")>-1?this.fgsettings.sca_currency_format:null)||r;if(n.indexOf("amount_no_decimals_no_comma_separator")<0&&n.indexOf("amount_no_comma_separator_up_cents")<0&&n.indexOf("amount_up_cents")<0&&"function"==typeof Shopify.formatMoney)return Shopify.formatMoney(e,n);function a(e,t){return void 0===e?t:e}function s(e,t,o,r,i,n){if(t=a(t,2),o=a(o,","),r=a(r,"."),isNaN(e)||null==e)return 0;var s=(e=(e/100).toFixed(t)).split(".");return s[0].replace(/(\d)(?=(\d\d\d)+(?!\d))/g,"$1"+o)+(s[1]?i&&n?i+s[1]+n:r+s[1]:"")}switch(n.match(i)[1]){case"amount":o=s(e,2);break;case"amount_no_decimals":o=s(e,0);break;case"amount_with_comma_separator":o=s(e,2,",",".");break;case"amount_no_decimals_with_comma_separator":o=s(e,0,",",".");break;case"amount_no_decimals_no_comma_separator":o=s(e,0,"","");break;case"amount_up_cents":o=s(e,2,",","","<sup>","</sup>");break;case"amount_no_comma_separator_up_cents":o=s(e,2,"","","<sup>","</sup>")}return n.replace(i,o)},SECOMAPP.setCookie=function(e,t,o,r,i){var n=new Date;n.setTime(n.getTime()+24*o*60*60*1e3+60*r*1e3);var a="expires="+n.toUTCString();document.cookie=e+"="+t+";"+a+(i?";path="+i:";path=/")},SECOMAPP.deleteCookie=function(e,t){document.cookie=e+"=; expires=Thu, 01 Jan 1970 00:00:00 UTC; "+(t?";path="+t:";path=/")},SECOMAPP.getCookie=function(e){for(var t=e+"=",o=document.cookie.split(";"),r=0;r<o.length;r++){for(var i=o[r];" "==i.charAt(0);)i=i.substring(1);if(0==i.indexOf(t))return i.substring(t.length,i.length)}return""},SECOMAPP.getQueryString=function(){for(var e={},t=window.location.search.substring(1).split("&"),o=0;o<t.length;o++){var r=t[o].split("=");if(void 0===e[r[0]])e[r[0]]=decodeURIComponent(r[1]);else if("string"==typeof e[r[0]]){var i=[e[r[0]],decodeURIComponent(r[1])];e[r[0]]=i}else e[r[0]].push(decodeURIComponent(r[1]))}return e},SECOMAPP.freegifts_product_json=function(e){if(Array.isArray||(Array.isArray=function(e){return"[object Array]"===Object.prototype.toString.call(e)}),String.prototype.endsWith||Object.defineProperty(String.prototype,"endsWith",{value:function(e,t){var o=this.toString();(void 0===t||t>o.length)&&(t=o.length),t-=e.length;var r=o.indexOf(e,t);return-1!==r&&r===t}}),e){if(e.options&&Array.isArray(e.options))for(var t=0;t<e.options.length;t++){if(void 0!==e.options[t]&&void 0!==e.options[t].values)if((r=e.options[t]).values&&Array.isArray(r.values))for(var o=0;o<r.values.length;o++)(r.values[o].endsWith("(Freegifts)")||r.values[o].endsWith("% off)"))&&(r.values.splice(o,1),o--)}if(e.options_with_values&&Array.isArray(e.options_with_values))for(t=0;t<e.options_with_values.length;t++){var r;if(void 0!==e.options_with_values[t]&&void 0!==e.options_with_values[t].values)if((r=e.options_with_values[t]).values&&Array.isArray(r.values))for(o=0;o<r.values.length;o++)(r.values[o].title.endsWith("(Freegifts)")||r.values[o].title.endsWith("% off)"))&&(r.values.splice(o,1),o--)}var i=e.price,n=e.price_max,a=e.price_min,s=e.compare_at_price,c=e.compare_at_price_max,f=e.compare_at_price_min;if(e.variants&&Array.isArray(e.variants))for(var p=0;e.variants.length,void 0!==e.variants[p];p++){var l=e.variants[p],u=l.option3?l.option3:l.option2?l.option2:l.option1?l.option1:l.title?l.title:"";"undefined"!=typeof SECOMAPP&&void 0!==SECOMAPP.gifts_list_avai&&void 0!==SECOMAPP.gifts_list_avai[l.id]||u.endsWith("(Freegifts)")||u.endsWith("% off)")?(e.variants.splice(p,1),p-=1):((!n||n>=l.price)&&(n=l.price,i=l.price),(!a||a<=l.price)&&(a=l.price),l.compare_at_price&&((!c||c>=l.compare_at_price)&&(c=l.compare_at_price,s=l.compare_at_price),(!f||f<=l.compare_at_price)&&(f=l.compare_at_price)),void 0!==l.available&&1==l.available&&(e.available=!0))}e.price=i,e.price_max=a==n?null:a,e.price_min=n==a?null:n,e.compare_at_price=s,e.compare_at_price_max=f,e.compare_at_price_min=c,e.price_varies=n<a,e.compare_at_price_varies=c<f}return e},SECOMAPP.fg_codes=[],""!==SECOMAPP.getCookie("sca_fg_codes")&&(SECOMAPP.fg_codes=JSON.parse(SECOMAPP.getCookie("sca_fg_codes")));var e=SECOMAPP.getQueryString();e.freegifts_code&&-1===SECOMAPP.fg_codes.indexOf(e.freegifts_code)&&(void 0!==SECOMAPP.activateOnlyOnePromoCode&&!0===SECOMAPP.activateOnlyOnePromoCode&&(SECOMAPP.fg_codes=[]),SECOMAPP.fg_codes.push(e.freegifts_code),SECOMAPP.setCookie("sca_fg_codes",JSON.stringify(SECOMAPP.fg_codes)))}();
  467.  ;SECOMAPP.customer={};SECOMAPP.customer.orders=[];SECOMAPP.customer.freegifts=[];;SECOMAPP.customer.email=null;SECOMAPP.customer.first_name=null;SECOMAPP.customer.last_name=null;SECOMAPP.customer.tags=null;SECOMAPP.customer.orders_count=null;SECOMAPP.customer.total_spent=null;
  468. </script>
  469. <!-- BEGIN app block: shopify://apps/fontify-google-custom-fonts/blocks/app-embed/334490e2-2153-4a2e-a452-e90bdeffa3cc -->
  470. <meta name="fontify-picker" content="https://cdn.shopify.com/extensions/38665424-4c07-4c89-a74c-50c4c68d7092/0.13.0/assets/main.js">
  471. <link rel="preconnect" href="https://cdn.nitroapps.co/" crossorigin="">
  472. <!-- Shop metafields -->
  473. <style type="text/css" id="nitro-fontify">
  474. </style>
  475. <script type="text/javascript">
  476. !function(){if(window.opener){window.addEventListener("message",e,!1);let t=document.querySelector('meta[name="fontify-picker"]').getAttribute("content");function e(n){if("fontify_ready"==n.data.action){!function(){let e=setInterval((function(){window.opener&&!window.opener.closed||(clearInterval(e),window.close())}),1e3)}();let n=document.createElement("script");n.type="text/javascript",n.src=t,document.body.appendChild(n),window.removeEventListener("message",e)}}window.opener.postMessage({action:"init",data:JSON.parse(JSON.stringify({}))},"https://fontify.nitroapps.co")}}();
  477. </script>
  478. <!-- END app app block -->
  479. <script src="https://cdn.shopify.com/extensions/abeea160-8307-4fbb-8cb2-43f31466571d/0.7.0/assets/section-feed.min.js" type="text/javascript" defer="defer"></script>
  480. <meta property="og:image" content="https:https://cdn.shopify.com/s/files/1/0533/5652/7801/files/rocket_league_8230ec19-8ca9-4b07-b66b-bb4266b4ddc1.jpg?v=1640188190"/>
  481. <meta property="og:image:secure_url" content="https://cdn.shopify.com/s/files/1/0533/5652/7801/files/rocket_league_8230ec19-8ca9-4b07-b66b-bb4266b4ddc1.jpg?v=1640188190"/>
  482. <meta property="og:image:width" content="2048"/>
  483. <meta property="og:image:height" content="1152"/>
  484. <link href="https://monorail-edge.shopifysvc.com/" rel="dns-prefetch">
  485. <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: 53356527801,url: window.location.href,navigation_start,duration: currentMs - navigation_start,session_token: session_token && session_token.length === 2 ? session_token[1] : "",page_type: "index"};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>
  486. <script>window.ShopifyAnalytics = window.ShopifyAnalytics || {};
  487. window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {};
  488. window.ShopifyAnalytics.meta.currency = 'EUR';
  489. var meta = {"page":{"pageType":"home"}};
  490. for (var attr in meta) {
  491.  window.ShopifyAnalytics.meta[attr] = meta[attr];
  492. }</script>
  493. <script>window.ShopifyAnalytics.merchantGoogleAnalytics = function() {
  494. };
  495. </script>
  496. <script class="analytics">(function () {
  497.  var customDocumentWrite = function(content) {
  498.    var jquery = null;
  499.    if (window.jQuery) {
  500.      jquery = window.jQuery;
  501.    } else if (window.Checkout && window.Checkout.$) {
  502.      jquery = window.Checkout.$;
  503.    }
  504.    if (jquery) {
  505.      jquery('body').append(content);
  506.    }
  507.  };
  508.  var hasLoggedConversion = function(token) {
  509.    if (token) {
  510.      return document.cookie.indexOf('loggedConversion=' + token) !== -1;
  511.    }
  512.    return false;
  513.  }
  514.  var setCookieIfConversion = function(token) {
  515.    if (token) {
  516.      var twoMonthsFromNow = new Date(Date.now());
  517.      twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2);
  518.      document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow;
  519.    }
  520.  }
  521.  var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || [];
  522.  if (trekkie.integrations) {
  523.    return;
  524.  }
  525.  trekkie.methods = [
  526.    'identify',
  527.    'page',
  528.    'ready',
  529.    'track',
  530.    'trackForm',
  531.    'trackLink'
  532.  ];
  533.  trekkie.factory = function(method) {
  534.    return function() {
  535.      var args = Array.prototype.slice.call(arguments);
  536.      args.unshift(method);
  537.      trekkie.push(args);
  538.      return trekkie;
  539.    };
  540.  };
  541.  for (var i = 0; i < trekkie.methods.length; i++) {
  542.    var key = trekkie.methods[i];
  543.    trekkie[key] = trekkie.factory(key);
  544.  }
  545.  trekkie.load = function(config) {
  546.    trekkie.config = config || {};
  547.    trekkie.config.initialDocumentCookie = document.cookie;
  548.    var first = document.getElementsByTagName('script')[0];
  549.    var script = document.createElement('script');
  550.    script.type = 'text/javascript';
  551.    script.onerror = function(e) {
  552.      var scriptFallback = document.createElement('script');
  553.      scriptFallback.type = 'text/javascript';
  554.      scriptFallback.onerror = function(error) {
  555.              var Monorail = {
  556.      produce: function produce(monorailDomain, schemaId, payload) {
  557.        var currentMs = new Date().getTime();
  558.        var event = {
  559.          schema_id: schemaId,
  560.          payload: payload,
  561.          metadata: {
  562.            event_created_at_ms: currentMs,
  563.            event_sent_at_ms: currentMs
  564.          }
  565.        };
  566.        return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event));
  567.      },
  568.      sendRequest: function sendRequest(endpointUrl, payload) {
  569.        // Try the sendBeacon API
  570.        if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) {
  571.          var blobData = new window.Blob([payload], {
  572.            type: 'text/plain'
  573.          });
  574.          if (window.navigator.sendBeacon(endpointUrl, blobData)) {
  575.            return true;
  576.          } // sendBeacon was not successful
  577.        } // XHR beacon  
  578.        var xhr = new XMLHttpRequest();
  579.        try {
  580.          xhr.open('POST', endpointUrl);
  581.          xhr.setRequestHeader('Content-Type', 'text/plain');
  582.          xhr.send(payload);
  583.        } catch (e) {
  584.          console.log(e);
  585.        }
  586.        return false;
  587.      },
  588.      isIos12: function isIos12() {
  589.        return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1;
  590.      }
  591.    };
  592.    Monorail.produce('monorail-edge.shopifysvc.com',
  593.      'trekkie_storefront_load_errors/1.1',
  594.      {shop_id: 53356527801,
  595.      theme_id: 139857494320,
  596.      app_name: "storefront",
  597.      context_url: window.location.href,
  598.      source_url: "https://cdn.shopify.com/s/trekkie.storefront.7ed778e5a7ff3d1d376d4483949626bd0073511b.min.js"});
  599.      };
  600.      scriptFallback.async = true;
  601.      scriptFallback.src = 'https://cdn.shopify.com/s/trekkie.storefront.7ed778e5a7ff3d1d376d4483949626bd0073511b.min.js';
  602.      first.parentNode.insertBefore(scriptFallback, first);
  603.    };
  604.    script.async = true;
  605.    script.src = 'https://cdn.shopify.com/s/trekkie.storefront.7ed778e5a7ff3d1d376d4483949626bd0073511b.min.js';
  606.    first.parentNode.insertBefore(script, first);
  607.  };
  608.  trekkie.load(
  609.    {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":53356527801,"isMerchantRequest":null,"themeId":139857494320,"themeCityHash":"12983159557214651586","contentLanguage":"fr","currency":"EUR"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain"},"Session Attribution":{},"S2S":{"facebookCapiEnabled":false,"source":"trekkie-storefront-renderer"}}
  610.  );
  611.  var loaded = false;
  612.  trekkie.ready(function() {
  613.    if (loaded) return;
  614.    loaded = true;
  615.    window.ShopifyAnalytics.lib = window.trekkie;
  616.    var originalDocumentWrite = document.write;
  617.    document.write = customDocumentWrite;
  618.    try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {};
  619.    document.write = originalDocumentWrite;
  620.    window.ShopifyAnalytics.lib.page(null,{"pageType":"home"});
  621.    var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/)
  622.    var token = match? match[1]: undefined;
  623.    if (!hasLoggedConversion(token)) {
  624.      setCookieIfConversion(token);
  625.    }
  626.  });
  627.      var eventsListenerScript = document.createElement('script');
  628.      eventsListenerScript.async = true;
  629.      eventsListenerScript.src = "https://cdn.shopify.com/shopifycloud/shopify/assets/shop_events_listener-65cd0ba3fcd81a1df33f2510ec5bcf8c0e0958653b50e3965ec972dd638ee13f.js";
  630.      document.getElementsByTagName('head')[0].appendChild(eventsListenerScript);
  631. })();</script>
  632. <script class="boomerang">
  633. (function () {
  634.  if (window.BOOMR && (window.BOOMR.version || window.BOOMR.snippetExecuted)) {
  635.    return;
  636.  }
  637.  window.BOOMR = window.BOOMR || {};
  638.  window.BOOMR.snippetStart = new Date().getTime();
  639.  window.BOOMR.snippetExecuted = true;
  640.  window.BOOMR.snippetVersion = 12;
  641.  window.BOOMR.application = "storefront-renderer";
  642.  window.BOOMR.themeName = "Prestige";
  643.  window.BOOMR.themeVersion = "5.4.3";
  644.  window.BOOMR.shopId = 53356527801;
  645.  window.BOOMR.themeId = 139857494320;
  646.  window.BOOMR.renderRegion = "gcp-us-central1";
  647.  window.BOOMR.url =
  648.    "https://cdn.shopify.com/shopifycloud/boomerang/shopify-boomerang-1.0.0.min.js";
  649.  var where = document.currentScript || document.getElementsByTagName("script")[0];
  650.  var parentNode = where.parentNode;
  651.  var promoted = false;
  652.  var LOADER_TIMEOUT = 3000;
  653.  function promote() {
  654.    if (promoted) {
  655.      return;
  656.    }
  657.    var script = document.createElement("script");
  658.    script.id = "boomr-scr-as";
  659.    script.src = window.BOOMR.url;
  660.    script.async = true;
  661.    parentNode.appendChild(script);
  662.    promoted = true;
  663.  }
  664.  function iframeLoader(wasFallback) {
  665.    promoted = true;
  666.    var dom, bootstrap, iframe, iframeStyle;
  667.    var doc = document;
  668.    var win = window;
  669.    window.BOOMR.snippetMethod = wasFallback ? "if" : "i";
  670.    bootstrap = function(parent, scriptId) {
  671.      var script = doc.createElement("script");
  672.      script.id = scriptId || "boomr-if-as";
  673.      script.src = window.BOOMR.url;
  674.      BOOMR_lstart = new Date().getTime();
  675.      parent = parent || doc.body;
  676.      parent.appendChild(script);
  677.    };
  678.    if (!window.addEventListener && window.attachEvent && navigator.userAgent.match(/MSIE [67]./)) {
  679.      window.BOOMR.snippetMethod = "s";
  680.      bootstrap(parentNode, "boomr-async");
  681.      return;
  682.    }
  683.    iframe = document.createElement("IFRAME");
  684.    iframe.src = "about:blank";
  685.    iframe.title = "";
  686.    iframe.role = "presentation";
  687.    iframe.loading = "eager";
  688.    iframeStyle = (iframe.frameElement || iframe).style;
  689.    iframeStyle.width = 0;
  690.    iframeStyle.height = 0;
  691.    iframeStyle.border = 0;
  692.    iframeStyle.display = "none";
  693.    parentNode.appendChild(iframe);
  694.    try {
  695.      win = iframe.contentWindow;
  696.      doc = win.document.open();
  697.    } catch (e) {
  698.      dom = document.domain;
  699.      iframe.src = "javascript:var d=document.open();d.domain='" + dom + "';void(0);";
  700.      win = iframe.contentWindow;
  701.      doc = win.document.open();
  702.    }
  703.    if (dom) {
  704.      doc._boomrl = function() {
  705.        this.domain = dom;
  706.        bootstrap();
  707.      };
  708.      doc.write("<body onload='document._boomrl();'>");
  709.    } else {
  710.      win._boomrl = function() {
  711.        bootstrap();
  712.      };
  713.      if (win.addEventListener) {
  714.        win.addEventListener("load", win._boomrl, false);
  715.      } else if (win.attachEvent) {
  716.        win.attachEvent("onload", win._boomrl);
  717.      }
  718.    }
  719.    doc.close();
  720.  }
  721.  var link = document.createElement("link");
  722.  if (link.relList &&
  723.    typeof link.relList.supports === "function" &&
  724.    link.relList.supports("preload") &&
  725.    ("as" in link)) {
  726.    window.BOOMR.snippetMethod = "p";
  727.    link.href = window.BOOMR.url;
  728.    link.rel = "preload";
  729.    link.as = "script";
  730.    link.addEventListener("load", promote);
  731.    link.addEventListener("error", function() {
  732.      iframeLoader(true);
  733.    });
  734.    setTimeout(function() {
  735.      if (!promoted) {
  736.        iframeLoader(true);
  737.      }
  738.    }, LOADER_TIMEOUT);
  739.    BOOMR_lstart = new Date().getTime();
  740.    parentNode.appendChild(link);
  741.  } else {
  742.    iframeLoader(false);
  743.  }
  744.  function boomerangSaveLoadTime(e) {
  745.    window.BOOMR_onload = (e && e.timeStamp) || new Date().getTime();
  746.  }
  747.  if (window.addEventListener) {
  748.    window.addEventListener("load", boomerangSaveLoadTime, false);
  749.  } else if (window.attachEvent) {
  750.    window.attachEvent("onload", boomerangSaveLoadTime);
  751.  }
  752.  if (document.addEventListener) {
  753.    document.addEventListener("onBoomerangLoaded", function(e) {
  754.      e.detail.BOOMR.init({
  755.        ResourceTiming: {
  756.          enabled: true,
  757.          trackedResourceTypes: ["script", "img", "css"]
  758.        },
  759.      });
  760.      e.detail.BOOMR.t_end = new Date().getTime();
  761.    });
  762.  } else if (document.attachEvent) {
  763.    document.attachEvent("onpropertychange", function(e) {
  764.      if (!e) e=event;
  765.      if (e.propertyName === "onBoomerangLoaded") {
  766.        e.detail.BOOMR.init({
  767.          ResourceTiming: {
  768.            enabled: true,
  769.            trackedResourceTypes: ["script", "img", "css"]
  770.          },
  771.        });
  772.        e.detail.BOOMR.t_end = new Date().getTime();
  773.      }
  774.    });
  775.  }
  776. })();</script>
  777. <script id="web-pixels-manager-setup">(function e(e,n,a,o,t,r){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 i,s,l,d,c,u,p,f,h,y=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}();i="string"==typeof r&&r.length>0?a+"/"+o.substring(0,1)+r+y.substring(0,1)+".js":a+"/"+o+"."+y+".js",s={src:i,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:i+" 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}},l=document.createElement("script"),d=s.src,c=s.async||!0,u=s.onload,p=s.onerror,f=document.head,h=document.body,l.async=c,l.src=d,u&&l.addEventListener("load",u),p&&l.addEventListener("error",p),f?f.appendChild(l):h?h.appendChild(l):console.error("Did not find a head or body element to append the script")})({shopId: 53356527801,storefrontBaseUrl: "https://karmineshop.com",cdnBaseUrl: "https://cdn.shopify.com",surface: "storefront-renderer",enabledBetaFlags: ["web_pixels_use_shop_domain_monorail_endpoint","web_pixels_shopify_pixel_validation","web_pixels_use_hash_urls"],webPixelExtensionBaseUrl: "https://cdn.shopify.com",webPixelsConfigList: [{"id":"shopify-app-pixel","configuration":"{}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"0510","apiClientId":"shopify-pixel","type":"APP"},{"id":"shopify-custom-pixel","eventPayloadVersion":"v1","runtimeContext":"LAX","scriptVersion":"0510","apiClientId":"shopify-pixel","type":"CUSTOM"}],initData: {"cart":null,"checkout":null,"customer":null,"productVariants":[]},},function pageEvents(webPixelsManagerAPI) {webPixelsManagerAPI.publish("page_viewed");},"https://cdn.shopify.com","browser","0.0.252","8010ba21w7ac3043dpce24fec7ma50fa5f1");</script>
  778. </head>
  779. <body class="prestige--v4 features--heading-small features--heading-uppercase features--show-image-zooming features--show-element-staggering template-index"> <svg class="u-visually-hidden">
  780. <lineargradient id="rating-star-gradient-half">
  781. <stop offset="50%" stop-color="var(--product-star-rating)"/>
  782. <stop offset="50%" stop-color="var(--text-color-light)"/>
  783. </lineargradient>
  784. </svg>
  785. <a class="PageSkipLink u-visually-hidden" href="#main">Aller au contenu</a>
  786. <span class="LoadingBar"></span>
  787. <div class="PageOverlay"></div>
  788. <div id="shopify-section-popup" class="shopify-section"></div>
  789. <div id="shopify-section-sidebar-menu" class="shopify-section">
  790. <section id="sidebar-menu" class="SidebarMenu Drawer Drawer--small Drawer--fromLeft" aria-hidden="true" data-section-id="sidebar-menu" data-section-type="sidebar-menu">
  791. <header class="Drawer__Header" data-drawer-animated-left>
  792. <button class="Drawer__Close Icon-Wrapper--clickable" data-action="close-drawer" data-drawer-id="sidebar-menu" aria-label="Fermer la navigation"><svg class="Icon Icon--close " role="presentation" viewbox="0 0 16 14">
  793. <path d="M15 0L1 14m14 0L1 0" stroke="currentColor" fill="none" fill-rule="evenodd"></path>
  794. </svg></button>
  795. </header>
  796. <div class="Drawer__Content">
  797. <div class="Drawer__Main" data-drawer-animated-left data-scrollable>
  798. <div class="Drawer__Container">
  799. <nav class="SidebarMenu__Nav SidebarMenu__Nav--primary" aria-label="Navigation latérale">
  800. <div class="Collapsible">
  801. <a href="https://karmineshop.com/" class="Collapsible__Button Heading Link Link--primary u-h6">Home</a>
  802. </div>
  803. <div class="Collapsible">
  804. <a href="https://karmineshop.com/collections/the-one" class="Collapsible__Button Heading Link Link--primary u-h6">THE ONE</a>
  805. </div>
  806. <div class="Collapsible">
  807. <a href="https://karmineshop.com/collections/frontpage" class="Collapsible__Button Heading Link Link--primary u-h6">Maillots</a>
  808. </div>
  809. <div class="Collapsible">
  810. <a href="https://karmineshop.com/collections/ultra-kcorp" class="Collapsible__Button Heading Link Link--primary u-h6">Ultra Kcorp</a>
  811. </div>
  812. <div class="Collapsible">
  813. <a href="https://rhinoshield.fr/collections/artist-karmine-corp?device=iphone-12-pro-max&amp;type=solidsuit-classic&amp;limit=12&amp;dcolor=AppleGraphite" class="Collapsible__Button Heading Link Link--primary u-h6">Collab</a>
  814. </div>
  815. </nav><nav class="SidebarMenu__Nav SidebarMenu__Nav--secondary">
  816. <ul class="Linklist Linklist--spacingLoose">
  817. <li class="Linklist__Item">
  818. <a href="https://karmineshop.com/account" class="Text--subdued Link Link--primary">Compte</a>
  819. </li>
  820. </ul>
  821. </nav>
  822. </div>
  823. </div>
  824. <aside class="Drawer__Footer" data-drawer-animated-bottom>
  825. <ul class="SidebarMenu__Social HorizontalList HorizontalList--spacingFill">
  826. <li class="HorizontalList__Item">
  827. <a href="https://twitter.com/KarmineCorp" class="Link Link--primary" target="_blank" rel="noopener" aria-label="Twitter">
  828. <span class="Icon-Wrapper--clickable"><svg class="Icon Icon--twitter " role="presentation" viewbox="0 0 32 26">
  829. <path d="M32 3.077c-1.1748.525-2.4433.8748-3.768 1.031 1.356-.8123 2.3932-2.0995 2.887-3.6305-1.2686.7498-2.6746 1.2997-4.168 1.5934C25.751.796 24.045.0025 22.158.0025c-3.6242 0-6.561 2.937-6.561 6.5612 0 .5124.0562 1.0123.1686 1.4935C10.3104 7.7822 5.474 5.1702 2.237 1.196c-.5624.9687-.8873 2.0997-.8873 3.2994 0 2.2746 1.156 4.2867 2.9182 5.4615-1.075-.0314-2.0872-.3313-2.9745-.8187v.0812c0 3.1806 2.262 5.8363 5.2677 6.4362-.55.15-1.131.2312-1.731.2312-.4248 0-.831-.0438-1.2372-.1188.8374 2.6057 3.262 4.5054 6.13 4.5616-2.2495 1.7622-5.074 2.812-8.1546 2.812-.531 0-1.0498-.0313-1.5684-.0938 2.912 1.8684 6.3613 2.9494 10.0668 2.9494 12.0726 0 18.6776-10.0043 18.6776-18.6776 0-.2874-.0063-.5686-.0188-.8498C30.0066 5.5514 31.119 4.3954 32 3.077z"></path>
  830. </svg></span>
  831. </a>
  832. </li>
  833. <li class="HorizontalList__Item">
  834. <a href="https://www.instagram.com/karminecorp/" class="Link Link--primary" target="_blank" rel="noopener" aria-label="Instagram">
  835. <span class="Icon-Wrapper--clickable"><svg class="Icon Icon--instagram " role="presentation" viewbox="0 0 32 32">
  836. <path d="M15.994 2.886c4.273 0 4.775.019 6.464.095 1.562.07 2.406.33 2.971.552.749.292 1.283.635 1.841 1.194s.908 1.092 1.194 1.841c.216.565.483 1.41.552 2.971.076 1.689.095 2.19.095 6.464s-.019 4.775-.095 6.464c-.07 1.562-.33 2.406-.552 2.971-.292.749-.635 1.283-1.194 1.841s-1.092.908-1.841 1.194c-.565.216-1.41.483-2.971.552-1.689.076-2.19.095-6.464.095s-4.775-.019-6.464-.095c-1.562-.07-2.406-.33-2.971-.552-.749-.292-1.283-.635-1.841-1.194s-.908-1.092-1.194-1.841c-.216-.565-.483-1.41-.552-2.971-.076-1.689-.095-2.19-.095-6.464s.019-4.775.095-6.464c.07-1.562.33-2.406.552-2.971.292-.749.635-1.283 1.194-1.841s1.092-.908 1.841-1.194c.565-.216 1.41-.483 2.971-.552 1.689-.083 2.19-.095 6.464-.095zm0-2.883c-4.343 0-4.889.019-6.597.095-1.702.076-2.864.349-3.879.743-1.054.406-1.943.959-2.832 1.848S1.251 4.473.838 5.521C.444 6.537.171 7.699.095 9.407.019 11.109 0 11.655 0 15.997s.019 4.889.095 6.597c.076 1.702.349 2.864.743 3.886.406 1.054.959 1.943 1.848 2.832s1.784 1.435 2.832 1.848c1.016.394 2.178.667 3.886.743s2.248.095 6.597.095 4.889-.019 6.597-.095c1.702-.076 2.864-.349 3.886-.743 1.054-.406 1.943-.959 2.832-1.848s1.435-1.784 1.848-2.832c.394-1.016.667-2.178.743-3.886s.095-2.248.095-6.597-.019-4.889-.095-6.597c-.076-1.702-.349-2.864-.743-3.886-.406-1.054-.959-1.943-1.848-2.832S27.532 1.247 26.484.834C25.468.44 24.306.167 22.598.091c-1.714-.07-2.26-.089-6.603-.089zm0 7.778c-4.533 0-8.216 3.676-8.216 8.216s3.683 8.216 8.216 8.216 8.216-3.683 8.216-8.216-3.683-8.216-8.216-8.216zm0 13.549c-2.946 0-5.333-2.387-5.333-5.333s2.387-5.333 5.333-5.333 5.333 2.387 5.333 5.333-2.387 5.333-5.333 5.333zM26.451 7.457c0 1.059-.858 1.917-1.917 1.917s-1.917-.858-1.917-1.917c0-1.059.858-1.917 1.917-1.917s1.917.858 1.917 1.917z"></path>
  837. </svg></span>
  838. </a>
  839. </li>
  840. <li class="HorizontalList__Item">
  841. <a href="https://www.youtube.com/channel/UCW5Ma_xnAweFIXCGOAZECAA/videos" class="Link Link--primary" target="_blank" rel="noopener" aria-label="YouTube">
  842. <span class="Icon-Wrapper--clickable"><svg class="Icon Icon--youtube " role="presentation" viewbox="0 0 33 32">
  843. <path d="M0 25.693q0 1.997 1.318 3.395t3.209 1.398h24.259q1.891 0 3.209-1.398t1.318-3.395V6.387q0-1.997-1.331-3.435t-3.195-1.438H4.528q-1.864 0-3.195 1.438T.002 6.387v19.306zm12.116-3.488V9.876q0-.186.107-.293.08-.027.133-.027l.133.027 11.61 6.178q.107.107.107.266 0 .107-.107.213l-11.61 6.178q-.053.053-.107.053-.107 0-.16-.053-.107-.107-.107-.213z"></path>
  844. </svg></span>
  845. </a>
  846. </li>
  847. </ul>
  848. </aside>
  849. </div>
  850. </section>
  851. </div>
  852. <div id="sidebar-cart" class="Drawer Drawer--fromRight" aria-hidden="true" data-section-id="cart" data-section-type="cart" data-section-settings="{ &quot;type&quot;: &quot;page&quot;, &quot;itemCount&quot;: 0, &quot;drawer&quot;: true, &quot;hasShippingEstimator&quot;: false }">
  853. <div class="Drawer__Header Drawer__Header--bordered Drawer__Container">
  854. <span class="Drawer__Title Heading u-h4">Panier</span>
  855. <button class="Drawer__Close Icon-Wrapper--clickable" data-action="close-drawer" data-drawer-id="sidebar-cart" aria-label="Fermer le panier"><svg class="Icon Icon--close " role="presentation" viewbox="0 0 16 14">
  856. <path d="M15 0L1 14m14 0L1 0" stroke="currentColor" fill="none" fill-rule="evenodd"></path>
  857. </svg></button>
  858. </div>
  859. <form class="Cart Drawer__Content" action="https://karmineshop.com/cart" method="POST" novalidate>
  860. <div class="Drawer__Main" data-scrollable>
  861. <p class="Cart__Empty Heading u-h5">Votre panier est vide</p>
  862. </div>
  863. </form>
  864. </div>
  865. <div class="PageContainer">
  866. <div id="shopify-section-announcement" class="shopify-section"></div>
  867. <div id="shopify-section-header" class="shopify-section shopify-section--header">
  868. <div id="Search" class="Search" aria-hidden="true">
  869. <div class="Search__Inner">
  870. <div class="Search__SearchBar">
  871. <form action="https://karmineshop.com/search" name="GET" role="search" class="Search__Form">
  872. <div class="Search__InputIconWrapper">
  873. <span class="hidden-tablet-and-up"><svg class="Icon Icon--search " role="presentation" viewbox="0 0 18 17">
  874. <g transform="translate(1 1)" stroke="currentColor" fill="none" fill-rule="evenodd" stroke-linecap="square">
  875. <path d="M16 16l-5.0752-5.0752"></path>
  876. <circle cx="6.4" cy="6.4" r="6.4"></circle>
  877. </g>
  878. </svg></span>
  879. <span class="hidden-phone"><svg class="Icon Icon--search-desktop " role="presentation" viewbox="0 0 21 21">
  880. <g transform="translate(1 1)" stroke="currentColor" stroke-width="2" fill="none" fill-rule="evenodd" stroke-linecap="square">
  881. <path d="M18 18l-5.7096-5.7096"></path>
  882. <circle cx="7.2" cy="7.2" r="7.2"></circle>
  883. </g>
  884. </svg></span>
  885. </div>
  886. <input type="search" class="Search__Input Heading" name="q" autocomplete="off" autocorrect="off" autocapitalize="off" aria-label="Recherche..." placeholder="Recherche..." autofocus>
  887. <input type="hidden" name="type" value="product"></form>
  888. <button class="Search__Close Link Link--primary" data-action="close-search" aria-label="Fermer la recherche"><svg class="Icon Icon--close " role="presentation" viewbox="0 0 16 14">
  889. <path d="M15 0L1 14m14 0L1 0" stroke="currentColor" fill="none" fill-rule="evenodd"></path>
  890. </svg></button>
  891. </div>
  892. <div class="Search__Results" aria-hidden="true"></div>
  893. </div>
  894. </div>
  895. <header id="section-header" class="Header Header--logoLeft Header--transparent Header--withIcons" data-section-id="header" data-section-type="header" data-section-settings="{ &quot;navigationStyle&quot;: &quot;logoLeft&quot;, &quot;hasTransparentHeader&quot;: true, &quot;isSticky&quot;: true }" role="banner">
  896. <div class="Header__Wrapper">
  897. <div class="Header__FlexItem Header__FlexItem--fill">
  898. <button class="Header__Icon Icon-Wrapper Icon-Wrapper--clickable hidden-desk" aria-expanded="false" data-action="open-drawer" data-drawer-id="sidebar-menu" aria-label="Ouvrir la navigation">
  899. <span class="hidden-tablet-and-up"><svg class="Icon Icon--nav " role="presentation" viewbox="0 0 20 14">
  900. <path d="M0 14v-1h20v1H0zm0-7.5h20v1H0v-1zM0 0h20v1H0V0z" fill="currentColor"></path>
  901. </svg></span>
  902. <span class="hidden-phone"><svg class="Icon Icon--nav-desktop " role="presentation" viewbox="0 0 24 16">
  903. <path d="M0 15.985v-2h24v2H0zm0-9h24v2H0v-2zm0-7h24v2H0v-2z" fill="currentColor"></path>
  904. </svg></span>
  905. </button><nav class="Header__MainNav hidden-pocket hidden-lap" aria-label="Navigation principale">
  906. <ul class="HorizontalList HorizontalList--spacingExtraLoose">
  907. <li class="HorizontalList__Item is-active">
  908. <a href="https://karmineshop.com/" class="Heading u-h6">Home<span class="Header__LinkSpacer">Home</span></a>
  909. </li>
  910. <li class="HorizontalList__Item ">
  911. <a href="https://karmineshop.com/collections/the-one" class="Heading u-h6">THE ONE<span class="Header__LinkSpacer">THE ONE</span></a>
  912. </li>
  913. <li class="HorizontalList__Item ">
  914. <a href="https://karmineshop.com/collections/frontpage" class="Heading u-h6">Maillots<span class="Header__LinkSpacer">Maillots</span></a>
  915. </li>
  916. <li class="HorizontalList__Item ">
  917. <a href="https://karmineshop.com/collections/ultra-kcorp" class="Heading u-h6">Ultra Kcorp<span class="Header__LinkSpacer">Ultra Kcorp</span></a>
  918. </li>
  919. <li class="HorizontalList__Item ">
  920. <a href="https://rhinoshield.fr/collections/artist-karmine-corp?device=iphone-12-pro-max&amp;type=solidsuit-classic&amp;limit=12&amp;dcolor=AppleGraphite" class="Heading u-h6">Collab<span class="Header__LinkSpacer">Collab</span></a>
  921. </li>
  922. </ul>
  923. </nav>
  924. </div>
  925. <div class="Header__FlexItem Header__FlexItem--logo">
  926. <h1 class="Header__Logo"><a href="https://karmineshop.com/" class="Header__LogoLink"><img class="Header__LogoImage Header__LogoImage--primary" src="https://cdn.shopify.com/s/files/1/0533/5652/7801/files/logokarmine_205x.png?v=1613614943" srcset="https://cdn.shopify.com/s/files/1/0533/5652/7801/files/logokarmine_205x.png?v=1613614943 1x, https://cdn.shopify.com/s/files/1/0533/5652/7801/files/logokarmine_205x@2x.png?v=1613614943 2x" width="1080" height="1080" alt="Karmine Shop"><img class="Header__LogoImage Header__LogoImage--transparent" src="https://cdn.shopify.com/s/files/1/0533/5652/7801/files/logokarmine_205x.png?v=1613614943" srcset="https://cdn.shopify.com/s/files/1/0533/5652/7801/files/logokarmine_205x.png?v=1613614943 1x, https://cdn.shopify.com/s/files/1/0533/5652/7801/files/logokarmine_205x@2x.png?v=1613614943 2x" width="1080" height="1080" alt="Karmine Shop"></a></h1>
  927. </div>
  928. <div class="Header__FlexItem Header__FlexItem--fill">
  929. <a href="https://karmineshop.com/account" class="Header__Icon Icon-Wrapper Icon-Wrapper--clickable hidden-phone"><svg class="Icon Icon--account " role="presentation" viewbox="0 0 20 20">
  930. <g transform="translate(1 1)" stroke="currentColor" stroke-width="2" fill="none" fill-rule="evenodd" stroke-linecap="square">
  931. <path d="M0 18c0-4.5188182 3.663-8.18181818 8.18181818-8.18181818h1.63636364C14.337 9.81818182 18 13.4811818 18 18"></path>
  932. <circle cx="9" cy="4.90909091" r="4.90909091"></circle>
  933. </g>
  934. </svg></a><a href="https://karmineshop.com/search" class="Header__Icon Icon-Wrapper Icon-Wrapper--clickable " data-action="toggle-search" aria-label="Recherche">
  935. <span class="hidden-tablet-and-up"><svg class="Icon Icon--search " role="presentation" viewbox="0 0 18 17">
  936. <g transform="translate(1 1)" stroke="currentColor" fill="none" fill-rule="evenodd" stroke-linecap="square">
  937. <path d="M16 16l-5.0752-5.0752"></path>
  938. <circle cx="6.4" cy="6.4" r="6.4"></circle>
  939. </g>
  940. </svg></span>
  941. <span class="hidden-phone"><svg class="Icon Icon--search-desktop " role="presentation" viewbox="0 0 21 21">
  942. <g transform="translate(1 1)" stroke="currentColor" stroke-width="2" fill="none" fill-rule="evenodd" stroke-linecap="square">
  943. <path d="M18 18l-5.7096-5.7096"></path>
  944. <circle cx="7.2" cy="7.2" r="7.2"></circle>
  945. </g>
  946. </svg></span>
  947. </a>
  948. <a href="https://karmineshop.com/cart" class="Header__Icon Icon-Wrapper Icon-Wrapper--clickable ">
  949. <span class="hidden-tablet-and-up"><svg class="Icon Icon--cart " role="presentation" viewbox="0 0 17 20">
  950. <path d="M0 20V4.995l1 .006v.015l4-.002V4c0-2.484 1.274-4 3.5-4C10.518 0 12 1.48 12 4v1.012l5-.003v.985H1V19h15V6.005h1V20H0zM11 4.49C11 2.267 10.507 1 8.5 1 6.5 1 6 2.27 6 4.49V5l5-.002V4.49z" fill="currentColor"></path>
  951. </svg></span>
  952. <span class="hidden-phone"><svg class="Icon Icon--cart-desktop " role="presentation" viewbox="0 0 19 23">
  953. <path d="M0 22.985V5.995L2 6v.03l17-.014v16.968H0zm17-15H2v13h15v-13zm-5-2.882c0-2.04-.493-3.203-2.5-3.203-2 0-2.5 1.164-2.5 3.203v.912H5V4.647C5 1.19 7.274 0 9.5 0 11.517 0 14 1.354 14 4.647v1.368h-2v-.912z" fill="currentColor"></path>
  954. </svg></span>
  955. <span class="Header__CartDot "></span>
  956. </a>
  957. </div>
  958. </div>
  959. </header>
  960. <style>
  961. :root {
  962.      --use-sticky-header: 1;
  963.      --use-unsticky-header: 0;
  964.    }
  965.    .shopify-section--header {
  966.      position: -webkit-sticky;
  967.      position: sticky;
  968.    }.Header__LogoImage {
  969.      max-width: 205px;
  970.    }
  971.    @media screen and (max-width: 640px) {
  972.      .Header__LogoImage {
  973.        max-width: 130px;
  974.      }
  975.    }:root {
  976.      --header-is-not-transparent: 0;
  977.      --header-is-transparent: 1;
  978.    }
  979.    .shopify-section--header {
  980.      margin-bottom: calc(-1 * var(--header-height));
  981.    }
  982.    .supports-sticky .Search[aria-hidden="true"] + .Header--transparent {box-shadow: none;color: #ffffff;
  983.    }
  984. </style>
  985. <script>
  986.  document.documentElement.style.setProperty('--header-height', document.getElementById('shopify-section-header').offsetHeight + 'px');
  987. </script>
  988. </div>
  989. <main id="main" role="main">
  990. <div id="shopify-section-template--17246014570800__1650895907db871d83" class="shopify-section">
  991. <section id="section-template--17246014570800__1650895907db871d83" data-section-id="template--17246014570800__1650895907db871d83" data-section-type="zerance-collection-list">
  992. <div class="zerance-collection-list zerance-container">
  993. <a href="https://karmineshop.com/collections/the-one" class="zerance-collection-list__collection">
  994. <div class="zerance-collection-list__title"></div>
  995. <img src="https://cdn.shopify.com/s/files/1/0533/5652/7801/files/BANNER_SHOP.png?v=1671102854" sizes="(min-width: px) -50px, (min-width: 750px) calc((100vw - 130px) / 2), calc((100vw - 50px) / 2)" alt="" loading="lazy" width="1945" height="808" class="zerance-collection-list__image hide--pocket">
  996. <img src="https://cdn.shopify.com/s/files/1/0533/5652/7801/files/BANNER_SHOP.png?v=1671102854" sizes="(min-width: px) -50px, (min-width: 750px) calc((100vw - 130px) / 2), calc((100vw - 50px) / 2)" alt="" loading="lazy" width="1945" height="808" class="zerance-collection-list__image hide--lap-and-up">
  997. </a>
  998. </div>
  999. </section>
  1000. </div>
  1001. <div id="shopify-section-template--17246014570800__16508960705b25b0cb" class="shopify-section">
  1002. <section id="section-template--17246014570800__16508960705b25b0cb" data-section-id="template--17246014570800__16508960705b25b0cb" data-section-type="zerance-collection-list">
  1003. <div class="zerance-collection-list zerance-container">
  1004. <a href="https://karmineshop.com/collections/the-one" class="zerance-collection-list__collection">
  1005. <div class="zerance-collection-list__title">KIT ULTRA THE ONE</div>
  1006. <img src="https://cdn.shopify.com/s/files/1/0533/5652/7801/files/BANNER_1027x1284_ECHARPE_ITACHI.png?v=1671102945" sizes="(min-width: px) -50px, (min-width: 750px) calc((100vw - 130px) / 2), calc((100vw - 50px) / 2)" alt="" loading="lazy" width="1027" height="1284" class="zerance-collection-list__image hide--pocket">
  1007. <img src="https://cdn.shopify.com/s/files/1/0533/5652/7801/files/BANNER_1027x1284_ECHARPE_ITACHI.png?v=1671102945" sizes="(min-width: px) -50px, (min-width: 750px) calc((100vw - 130px) / 2), calc((100vw - 50px) / 2)" alt="" loading="lazy" width="1027" height="1284" class="zerance-collection-list__image hide--lap-and-up">
  1008. <span href="/collections/the-one" class="zerance-button zerance-collection-list__button">Découvrir</span>
  1009. </a>
  1010. <a href="https://karmineshop.com/products/maillot-the-one" class="zerance-collection-list__collection">
  1011. <div class="zerance-collection-list__title">MAILLOT THE ONE</div>
  1012. <img src="https://cdn.shopify.com/s/files/1/0533/5652/7801/files/BANNER_1840x1108_ITACHI_F.png?v=1671104310" sizes="(min-width: px) -50px, (min-width: 750px) calc((100vw - 130px) / 2), calc((100vw - 50px) / 2)" alt="" loading="lazy" width="1840" height="1108" class="zerance-collection-list__image hide--pocket">
  1013. <img src="https://cdn.shopify.com/s/files/1/0533/5652/7801/files/BANNER_1840x1108_ITACHI_F.png?v=1671104310" sizes="(min-width: px) -50px, (min-width: 750px) calc((100vw - 130px) / 2), calc((100vw - 50px) / 2)" alt="" loading="lazy" width="1840" height="1108" class="zerance-collection-list__image hide--lap-and-up">
  1014. <span href="/products/maillot-the-one" class="zerance-button zerance-collection-list__button">Découvrir</span>
  1015. </a>
  1016. </div>
  1017. </section>
  1018. </div>
  1019. <div id="shopify-section-template--17246014570800__165089606556dce540" class="shopify-section">
  1020. <style>
  1021.  #spacing--template--17246014570800__165089606556dce540 {
  1022.    margin-top: 30px;
  1023.    margin-bottom: 35px;
  1024.  }
  1025.  @media all and (max-width:800px) {
  1026.    #spacing--template--17246014570800__165089606556dce540 {
  1027.      margin-top: 15px;
  1028.      margin-bottom: 20px;
  1029.    }
  1030.  }/**/
  1031. </style>
  1032. <section id="section-template--17246014570800__165089606556dce540" data-section-id="template--17246014570800__165089606556dce540" data-section-type="spacing">
  1033. <div id="spacing--template--17246014570800__165089606556dce540" class="spacing spacing--border"></div>
  1034. </section>
  1035. </div>
  1036. <div id="shopify-section-template--17246014570800__1650897546227aa7c9" class="shopify-section">
  1037. <section id="section-template--17246014570800__1650897546227aa7c9" data-section-id="template--17246014570800__1650897546227aa7c9" data-section-type="zerance-featured-collection">
  1038. <div class="zerance-featured-collection zerance-container">
  1039. <h2 class="zerance-featured-collection__title">KIT ULTRA</h2>
  1040. <div class="zerance-featured-collection__container">
  1041. <div class="Grid Grid--middle">
  1042. <div class="Grid__Cell 1/2 1/5--lap-and-up">
  1043. <a href="https://karmineshop.com/products/ts-heritage-blanc-karmine" class="zerance-featured-collection__product align-center">
  1044. <img srcset="https://cdn.shopify.com/s/files/1/0533/5652/7801/products/WHITETEEKARMINETEXT_165x.png?v=1650621728 165w, https://cdn.shopify.com/s/files/1/0533/5652/7801/products/WHITETEEKARMINETEXT_360x.png?v=1650621728 360w, https://cdn.shopify.com/s/files/1/0533/5652/7801/products/WHITETEEKARMINETEXT_535x.png?v=1650621728 535w, https://cdn.shopify.com/s/files/1/0533/5652/7801/products/WHITETEEKARMINETEXT_750x.png?v=1650621728 750w, https://cdn.shopify.com/s/files/1/0533/5652/7801/products/WHITETEEKARMINETEXT_1070x.png?v=1650621728 1070w, https://cdn.shopify.com/s/files/1/0533/5652/7801/products/WHITETEEKARMINETEXT_1500x.png?v=1650621728 1500w" src="https://cdn.shopify.com/s/files/1/0533/5652/7801/products/WHITETEEKARMINETEXT_1500x.png?v=1650621728" sizes="(min-width: px) -50px, (min-width: 750px) calc((100vw - 130px) / 2), calc((100vw - 50px) / 2)" alt="T-shirt Héritage Karmine White" loading="lazy" width="2100" height="2100" class="zerance-featured-collection__product____image">
  1045. <h3 class="zerance-featured-collection__product__title">T-shirt Héritage Karmine White</h3>
  1046. <div class="zerance-featured-collection__product__price">
  1047. <div class="ProductItem__PriceList ">
  1048. <span class="ProductItem__Price Price Text--subdued">20,00 €</span>
  1049. </div>
  1050. </div>
  1051. </a>
  1052. </div>
  1053. <div class="Grid__Cell 1/2 1/5--lap-and-up">
  1054. <a href="https://karmineshop.com/products/ts-heritage-logo-k-blanc" class="zerance-featured-collection__product align-center">
  1055. <img srcset="https://cdn.shopify.com/s/files/1/0533/5652/7801/products/WHITETEEKARMINELOGO_1_165x.png?v=1650621769 165w, https://cdn.shopify.com/s/files/1/0533/5652/7801/products/WHITETEEKARMINELOGO_1_360x.png?v=1650621769 360w, https://cdn.shopify.com/s/files/1/0533/5652/7801/products/WHITETEEKARMINELOGO_1_535x.png?v=1650621769 535w, https://cdn.shopify.com/s/files/1/0533/5652/7801/products/WHITETEEKARMINELOGO_1_750x.png?v=1650621769 750w, https://cdn.shopify.com/s/files/1/0533/5652/7801/products/WHITETEEKARMINELOGO_1_1070x.png?v=1650621769 1070w, https://cdn.shopify.com/s/files/1/0533/5652/7801/products/WHITETEEKARMINELOGO_1_1500x.png?v=1650621769 1500w" src="https://cdn.shopify.com/s/files/1/0533/5652/7801/products/WHITETEEKARMINELOGO_1_1500x.png?v=1650621769" sizes="(min-width: px) -50px, (min-width: 750px) calc((100vw - 130px) / 2), calc((100vw - 50px) / 2)" alt="T-shirt Héritage Logo K White" loading="lazy" width="2100" height="2100" class="zerance-featured-collection__product____image">
  1056. <h3 class="zerance-featured-collection__product__title">T-shirt Héritage Logo K White</h3>
  1057. <div class="zerance-featured-collection__product__price">
  1058. <div class="ProductItem__PriceList ">
  1059. <span class="ProductItem__Price Price Text--subdued">20,00 €</span>
  1060. </div>
  1061. </div>
  1062. </a>
  1063. </div>
  1064. <div class="Grid__Cell 1/2 1/5--lap-and-up">
  1065. <a href="https://karmineshop.com/products/hoodie-heritage-karmine-noir" class="zerance-featured-collection__product align-center">
  1066. <img srcset="https://cdn.shopify.com/s/files/1/0533/5652/7801/products/HOODIENOIRKARMINETEXT_165x.png?v=1650621869 165w, https://cdn.shopify.com/s/files/1/0533/5652/7801/products/HOODIENOIRKARMINETEXT_360x.png?v=1650621869 360w, https://cdn.shopify.com/s/files/1/0533/5652/7801/products/HOODIENOIRKARMINETEXT_535x.png?v=1650621869 535w, https://cdn.shopify.com/s/files/1/0533/5652/7801/products/HOODIENOIRKARMINETEXT_750x.png?v=1650621869 750w, https://cdn.shopify.com/s/files/1/0533/5652/7801/products/HOODIENOIRKARMINETEXT_1070x.png?v=1650621869 1070w, https://cdn.shopify.com/s/files/1/0533/5652/7801/products/HOODIENOIRKARMINETEXT_1500x.png?v=1650621869 1500w" src="https://cdn.shopify.com/s/files/1/0533/5652/7801/products/HOODIENOIRKARMINETEXT_1500x.png?v=1650621869" sizes="(min-width: px) -50px, (min-width: 750px) calc((100vw - 130px) / 2), calc((100vw - 50px) / 2)" alt="Hoodie Héritage Karmine noir" loading="lazy" width="2100" height="2100" class="zerance-featured-collection__product____image">
  1067. <h3 class="zerance-featured-collection__product__title">Hoodie Héritage Karmine noir</h3>
  1068. <div class="zerance-featured-collection__product__price">
  1069. <div class="ProductItem__PriceList ">
  1070. <span class="ProductItem__Price Price Text--subdued">50,00 €</span>
  1071. </div>
  1072. </div>
  1073. </a>
  1074. </div>
  1075. <div class="Grid__Cell 1/2 1/5--lap-and-up">
  1076. <a href="https://karmineshop.com/products/ts-heritage-noir-karmine" class="zerance-featured-collection__product align-center">
  1077. <img srcset="https://cdn.shopify.com/s/files/1/0533/5652/7801/products/BLACKTEEKARMINETEXT_165x.png?v=1650621815 165w, https://cdn.shopify.com/s/files/1/0533/5652/7801/products/BLACKTEEKARMINETEXT_360x.png?v=1650621815 360w, https://cdn.shopify.com/s/files/1/0533/5652/7801/products/BLACKTEEKARMINETEXT_535x.png?v=1650621815 535w, https://cdn.shopify.com/s/files/1/0533/5652/7801/products/BLACKTEEKARMINETEXT_750x.png?v=1650621815 750w, https://cdn.shopify.com/s/files/1/0533/5652/7801/products/BLACKTEEKARMINETEXT_1070x.png?v=1650621815 1070w, https://cdn.shopify.com/s/files/1/0533/5652/7801/products/BLACKTEEKARMINETEXT_1500x.png?v=1650621815 1500w" src="https://cdn.shopify.com/s/files/1/0533/5652/7801/products/BLACKTEEKARMINETEXT_1500x.png?v=1650621815" sizes="(min-width: px) -50px, (min-width: 750px) calc((100vw - 130px) / 2), calc((100vw - 50px) / 2)" alt="T-shirt Héritage Karmine Black" loading="lazy" width="2100" height="2100" class="zerance-featured-collection__product____image">
  1078. <h3 class="zerance-featured-collection__product__title">T-shirt Héritage Karmine Black</h3>
  1079. <div class="zerance-featured-collection__product__price">
  1080. <div class="ProductItem__PriceList ">
  1081. <span class="ProductItem__Price Price Text--subdued">20,00 €</span>
  1082. </div>
  1083. </div>
  1084. </a>
  1085. </div>
  1086. <div class="Grid__Cell 1/2 1/5--lap-and-up">
  1087. <a href="https://karmineshop.com/products/casquette-karmine" class="zerance-featured-collection__product align-center">
  1088. <img srcset="https://cdn.shopify.com/s/files/1/0533/5652/7801/products/casquetteKcorp_165x.png?v=1627035216 165w, https://cdn.shopify.com/s/files/1/0533/5652/7801/products/casquetteKcorp_360x.png?v=1627035216 360w, https://cdn.shopify.com/s/files/1/0533/5652/7801/products/casquetteKcorp_535x.png?v=1627035216 535w, https://cdn.shopify.com/s/files/1/0533/5652/7801/products/casquetteKcorp_750x.png?v=1627035216 750w, https://cdn.shopify.com/s/files/1/0533/5652/7801/products/casquetteKcorp_1070x.png?v=1627035216 1070w" src="https://cdn.shopify.com/s/files/1/0533/5652/7801/products/casquetteKcorp_1500x.png?v=1627035216" sizes="(min-width: px) -50px, (min-width: 750px) calc((100vw - 130px) / 2), calc((100vw - 50px) / 2)" alt="Casquette Karmine" loading="lazy" width="1400" height="1400" class="zerance-featured-collection__product____image">
  1089. <h3 class="zerance-featured-collection__product__title">Casquette Karmine</h3>
  1090. <div class="zerance-featured-collection__product__price">
  1091. <div class="ProductItem__PriceList ">
  1092. <span class="ProductItem__Price Price Text--subdued">15,00 €</span>
  1093. </div>
  1094. </div>
  1095. </a>
  1096. </div>
  1097. </div>
  1098. </div>
  1099. <div class="align-center zerance-featured-collection__button">
  1100. <a class="zerance-button" href="https://karmineshop.com/collections/frontpage">Tout voir</a>
  1101. </div>
  1102. </div>
  1103. </section>
  1104. </div>
  1105. <div id="shopify-section-template--17246014570800__165090129942797da3" class="shopify-section">
  1106. <style>
  1107.  #spacing--template--17246014570800__165090129942797da3 {
  1108.    margin-top: 40px;
  1109.    margin-bottom: 0px;
  1110.  }
  1111.  @media all and (max-width:800px) {
  1112.    #spacing--template--17246014570800__165090129942797da3 {
  1113.      margin-top: 15px;
  1114.      margin-bottom: 0px;
  1115.    }
  1116.  }/**/
  1117. </style>
  1118. <section id="section-template--17246014570800__165090129942797da3" data-section-id="template--17246014570800__165090129942797da3" data-section-type="spacing">
  1119. <div id="spacing--template--17246014570800__165090129942797da3" class="spacing spacing--border"></div>
  1120. </section>
  1121. </div>
  1122. <div id="shopify-section-template--17246014570800__1641395113998431a9" class="shopify-section">
  1123. <div class="">
  1124. <div id="shopify-block-9abfa607-b158-4e70-8901-2caee649a9c7" class="shopify-block shopify-app-block">
  1125. <ooo-instagram-feed class="ooo-instagram" data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7" data-section-settings="{ &quot;feed&quot;: &quot;default&quot;, &quot;locale&quot;: &quot;fr&quot;, &quot;layout&quot;: &quot;grid&quot;, &quot;imageSize&quot;: &quot;large&quot;, &quot;imageCount&quot;: 4, &quot;showAuthor&quot;: false, &quot;showCaption&quot;: false, &quot;showDate&quot;: true, &quot;clickAction&quot;: &quot;open_instagram&quot; }">
  1126. <div class="ooo-instagram-container">
  1127. <div class="ooo-instagram-header">
  1128. <h2 class="ooo-instagram-header__title">COMMUNAUTÉ</h2>
  1129. </div>
  1130. <div class="ooo-instagram-feed">
  1131. <div class="ooo-instagram-feed__list">
  1132. <template data-media-template><a href="#" class="ooo-instagram-media" target="_blank" data-instagram-field="permalink"><img class="ooo-instagram-media__image" src="https://karmineshop.com/" loading="lazy" rel="noopener" height="400" width="400" alt="" data-instagram-field="media_url">
  1133. <div class="ooo-instagram-media__overlay">
  1134. <time class="ooo-instagram-media__date" data-instagram-field="timestamp"></time>
  1135. </div>
  1136. </a></template>
  1137. <div data-media-placeholder class="ooo-instagram-media">
  1138. <img width="400" height="400" class="ooo-instagram-media__image" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=" alt="">
  1139. </div>
  1140. <div data-media-placeholder class="ooo-instagram-media">
  1141. <img width="400" height="400" class="ooo-instagram-media__image" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=" alt="">
  1142. </div>
  1143. <div data-media-placeholder class="ooo-instagram-media">
  1144. <img width="400" height="400" class="ooo-instagram-media__image" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=" alt="">
  1145. </div>
  1146. <div data-media-placeholder class="ooo-instagram-media">
  1147. <img width="400" height="400" class="ooo-instagram-media__image" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=" alt="">
  1148. </div>
  1149. </div>
  1150. </div>
  1151. </div>
  1152. <style>
  1153.    /*
  1154.     Our JS have some detection for most popular themes from the theme store, and will replace CSS classes for things
  1155.     like heading and buttons. In addition, we expose some CSS variables that may be overwritten in JS to provide an
  1156.     even closer integration with each theme
  1157.     */
  1158.    /* Due to the fact that our app relies on CSS variables, we hide the section on IE11 and below */
  1159.    @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  1160.      #shopify-section-9abfa607-b158-4e70-8901-2caee649a9c7 {
  1161.        display: none !important;
  1162.      }
  1163.    }
  1164.    [data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] {
  1165.      --ooo-instagram-section-vertical-margin: 50px;
  1166.      --ooo-instagram-section-vertical-padding: 0;
  1167.      /*--ooo-instagram-container-max-width: 1480px;*/
  1168.      --ooo-instagram-external-gutter: 20px;
  1169.      --ooo-instagram-header-margin-bottom: 10px;
  1170.      --ooo-instagram-header-text-alignment: center;
  1171.      --ooo-instagram-grid-gutter: 20px;
  1172.      --ooo-instagram-footer-margin-top: 20px;
  1173.    }
  1174.    @media screen and (min-width: 768px) {
  1175.      [data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] {
  1176.        --ooo-instagram-section-vertical-margin: 60px;
  1177.        --ooo-instagram-external-gutter: 40px;
  1178.      }
  1179.    }
  1180.    /* Section and container */
  1181.    [data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] {
  1182.      display: block;
  1183.      margin: var(--ooo-instagram-section-vertical-margin) 0;
  1184.      padding: var(--ooo-instagram-section-vertical-padding) 0;
  1185.    }
  1186.    [data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] * {
  1187.      box-sizing: border-box; /* Some theme do not use this by default */
  1188.    }[data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] .ooo-instagram-container {
  1189.        /*max-width: var(--ooo-instagram-container-max-width); NOTE: on app block the exact space is brought by the theme itself */
  1190.        /*padding: 0 var(--ooo-instagram-external-gutter);*/
  1191.        margin-left: auto;
  1192.        margin-right: auto;
  1193.      }/* Header */
  1194.    [data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] .ooo-instagram-header {
  1195.      margin-bottom: var(--ooo-instagram-header-margin-bottom);
  1196.      padding: 0;
  1197.      text-align: var(--ooo-instagram-header-text-alignment);
  1198.    }
  1199.    [data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] .ooo-instagram-header__title {
  1200.      color: #000000;
  1201.    }
  1202.    [data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] .ooo-instagram-header__subheading {
  1203.      color: #000000;
  1204.    }
  1205.    [data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] .ooo-instagram-header__subheading a {
  1206.      text-decoration: underline;
  1207.      text-underline-position: under;
  1208.    }
  1209.    [data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] .ooo-instagram-feed {
  1210.      clear: both; /* We do this because some themes float the header and footer */
  1211.    }
  1212.    /* Feed (on mobile, we always show as scrollable list) */
  1213.    [data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] .ooo-instagram-feed__list {
  1214.      padding: var(--ooo-instagram-grid-gutter) var(--ooo-instagram-external-gutter);
  1215.      white-space: nowrap;
  1216.      overflow-x: auto;
  1217.      overflow-y: hidden;
  1218.      -webkit-overflow-scrolling: touch;
  1219.      scroll-snap-type: x mandatory;}
  1220.    [data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] .ooo-instagram-feed__list::-webkit-scrollbar {
  1221.      display: none;
  1222.    }
  1223.    [data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] .ooo-instagram-media {
  1224.      position: relative;
  1225.      display: inline-block;
  1226.      overflow: hidden;
  1227.      width: 75%;
  1228.      vertical-align: top;
  1229.      white-space: normal;
  1230.      scroll-snap-align: center;margin: 0 calc(var(--ooo-instagram-grid-gutter) / 2);}
  1231.    [data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] .ooo-instagram-media:first-child {
  1232.      margin-left: 0;
  1233.    }
  1234.    [data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] .ooo-instagram-media:last-child {
  1235.      margin-right: 0;
  1236.    }
  1237.    [data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] .ooo-instagram-media::before {
  1238.      content: '';
  1239.      display: block;
  1240.      padding-bottom: 100%; /* Force the image to be squared */
  1241.    }
  1242.    [data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] .ooo-instagram-media__image {
  1243.      position: absolute;
  1244.      top: 0;
  1245.      left: 0;
  1246.      width: 100%;
  1247.      height: 100%;
  1248.      object-fit: cover;
  1249.      object-position: center;
  1250.    }
  1251.    @media screen and (min-width: 450px) {
  1252.      [data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] .ooo-instagram-media {
  1253.        width: 60%;
  1254.      }
  1255.    }
  1256.    @media screen and (min-width: 600px) {
  1257.      [data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] .ooo-instagram-media {
  1258.        width: 50%;
  1259.      }
  1260.    }
  1261.    @media screen and (min-width: 750px) {
  1262.      [data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] .ooo-instagram-media {
  1263.        width: 40%;
  1264.      }
  1265.    }
  1266.    @media screen and (min-width: 900px) {
  1267.      [data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] .ooo-instagram-media {
  1268.        width: 32%;
  1269.      }
  1270.    }@media screen and (min-width: 1000px) {
  1271.      [data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] .ooo-instagram-feed__list {
  1272.        margin: 0;
  1273.        padding: var(--ooo-instagram-grid-gutter) 0;grid-gap: var(--ooo-instagram-grid-gutter);
  1274.          gap: var(--ooo-instagram-grid-gutter);}
  1275.      [data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] .ooo-instagram-media {
  1276.        display: block;
  1277.        width: auto;
  1278.        margin: 0;
  1279.      }[data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] .ooo-instagram-feed__list {
  1280.          display: grid;
  1281.          grid-template-columns: repeat(4, 1fr);
  1282.        }}
  1283.    /* Overlay */
  1284.    [data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] .ooo-instagram-media__overlay {position: absolute;
  1285.      display: flex;
  1286.      flex-direction: column;
  1287.      top: 0;
  1288.      left: 0;
  1289.      width: 100%;
  1290.      height: 100%;
  1291.      padding: 14px 20px;
  1292.      font-size: 0.9em;
  1293.      background: rgba(0, 0, 0, 0.65);
  1294.      color: #ffffff;
  1295.      opacity: 0;
  1296.      transition: opacity 0.2s ease-in-out;
  1297.    }
  1298.    @media (hover: hover) {
  1299.      [data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] .ooo-instagram-media:focus .ooo-instagram-media__overlay,
  1300.      [data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] .ooo-instagram-media:hover .ooo-instagram-media__overlay {
  1301.        opacity: 1;
  1302.      }
  1303.    }
  1304.    [data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] .ooo-instagram-media__author-container {
  1305.      display: flex;
  1306.      align-items: center;
  1307.      flex-shrink: 0;
  1308.      margin-bottom: 16px;
  1309.    }
  1310.    [data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] .ooo-instagram-media__author-icon {
  1311.      margin-right: 8px;
  1312.    }
  1313.    [data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] .ooo-instagram-media__caption {
  1314.      display: -webkit-box;
  1315.      -webkit-box-orient: vertical;
  1316.      -webkit-line-clamp: 3;
  1317.      overflow: hidden;
  1318.    }
  1319.    [data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] .ooo-instagram-media__caption:first-child {
  1320.      margin-top: 0;
  1321.    }
  1322.    [data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] .ooo-instagram-media__date {
  1323.      margin-top: auto;
  1324.      text-transform: uppercase;
  1325.      font-size: 0.9em;
  1326.      font-weight: 500;
  1327.      letter-spacing: 0.1em;
  1328.    }
  1329.    /* Footer */
  1330.    [data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] .ooo-instagram-footer {
  1331.      margin-top: var(--ooo-instagram-footer-margin-top);
  1332.      padding: 0 var(--ooo-instagram-external-gutter);
  1333.      text-align: center;
  1334.    }
  1335.    [data-section-id="9abfa607-b158-4e70-8901-2caee649a9c7"] .ooo-instagram-footer__button {
  1336.      display: inline-block;
  1337.      color: #ffffff;
  1338.      background: #000000;
  1339.      padding: 6px 24px;
  1340.      text-decoration: none;
  1341.    }
  1342. </style>
  1343. </ooo-instagram-feed>
  1344. </div>
  1345. </div>
  1346. </div>
  1347. </main>
  1348. <div id="shopify-section-footer-zerance" class="shopify-section"></div>
  1349. <div id="shopify-section-footer" class="shopify-section shopify-section--footer">
  1350. <footer id="section-footer" data-section-id="footer" data-section-type="footer" class="Footer " role="contentinfo">
  1351. <section class="footer-zerance">
  1352. <div class="newsletter-form">
  1353. <div class="Grid Grid--bottom Grid--large">
  1354. <div class="Grid__Cell 1/2--lap-and-up">
  1355. <div class="newsletter-form__title">REJOINS - NOUS</div>
  1356. <div class="newsletter-form__form">
  1357. <form method="post" action="https://karmineshop.com/contact#footer-newsletter" id="footer-newsletter" accept-charset="UTF-8" class="Footer__Newsletter Form">
  1358. <input type="hidden" name="form_type" value="customer"/><input type="hidden" name="utf8" value="✓"/><input type="hidden" name="contact[tags]" value="newsletter">
  1359. <input type="email" name="contact[email]" class="Form__Input" aria-label="Entrez votre email" placeholder="Entrez votre email" required>
  1360. <button type="submit" class="Form__Submit Button Button--primary">S&#39;inscrire</button>
  1361. </form>
  1362. </div>
  1363. </div>
  1364. <div class="Grid__Cell 1/2--lap-and-up newsletter-form__text">
  1365. Inscris-toi pour recevoir toutes nos nouveautés en avant-première !
  1366. </div>
  1367. </div>
  1368. </div>
  1369. <footer></footer>
  1370. </section>
  1371. <div class="Container">
  1372. <div class="Footer__Inner">
  1373. <div class="Footer__Block Footer__Block--links">
  1374. <h2 class="Footer__Title Heading u-h6">Informations</h2>
  1375. <ul class="Linklist">
  1376. <li class="Linklist__Item">
  1377. <a href="https://legal.difygroup.com/politique-de-confidentialite/?site=karmineshop.com&amp;sc=all&amp;societe=karmine" class="Link Link--primary">Politique de confidentialité</a>
  1378. </li>
  1379. <li class="Linklist__Item">
  1380. <a href="https://legal.difygroup.com/cgv/?sc=all&amp;autre=karmine" class="Link Link--primary">Conditions générales de vente</a>
  1381. </li>
  1382. <li class="Linklist__Item">
  1383. <a href="https://legal.difygroup.com/mentions-legales/" class="Link Link--primary">Mentions légales</a>
  1384. </li>
  1385. <li class="Linklist__Item">
  1386. <a href="https://legal.difygroup.com/service-client" class="Link Link--primary">Service client</a>
  1387. </li>
  1388. </ul>
  1389. </div>
  1390. <div class="Footer__Block Footer__Block--links"></div>
  1391. <div class="Footer__Block Footer__Block--text">
  1392. <h2 class="Footer__Title Heading u-h6">#KCORP sur les réseaux</h2>
  1393. <ul class="Footer__Social HorizontalList HorizontalList--spacingLoose">
  1394. <li class="HorizontalList__Item">
  1395. <a href="https://twitter.com/KarmineCorp" class="Link Link--primary" target="_blank" rel="noopener" aria-label="Twitter">
  1396. <span class="Icon-Wrapper--clickable"><svg class="Icon Icon--twitter " role="presentation" viewbox="0 0 32 26">
  1397. <path d="M32 3.077c-1.1748.525-2.4433.8748-3.768 1.031 1.356-.8123 2.3932-2.0995 2.887-3.6305-1.2686.7498-2.6746 1.2997-4.168 1.5934C25.751.796 24.045.0025 22.158.0025c-3.6242 0-6.561 2.937-6.561 6.5612 0 .5124.0562 1.0123.1686 1.4935C10.3104 7.7822 5.474 5.1702 2.237 1.196c-.5624.9687-.8873 2.0997-.8873 3.2994 0 2.2746 1.156 4.2867 2.9182 5.4615-1.075-.0314-2.0872-.3313-2.9745-.8187v.0812c0 3.1806 2.262 5.8363 5.2677 6.4362-.55.15-1.131.2312-1.731.2312-.4248 0-.831-.0438-1.2372-.1188.8374 2.6057 3.262 4.5054 6.13 4.5616-2.2495 1.7622-5.074 2.812-8.1546 2.812-.531 0-1.0498-.0313-1.5684-.0938 2.912 1.8684 6.3613 2.9494 10.0668 2.9494 12.0726 0 18.6776-10.0043 18.6776-18.6776 0-.2874-.0063-.5686-.0188-.8498C30.0066 5.5514 31.119 4.3954 32 3.077z"></path>
  1398. </svg></span>
  1399. </a>
  1400. </li>
  1401. <li class="HorizontalList__Item">
  1402. <a href="https://www.instagram.com/karminecorp/" class="Link Link--primary" target="_blank" rel="noopener" aria-label="Instagram">
  1403. <span class="Icon-Wrapper--clickable"><svg class="Icon Icon--instagram " role="presentation" viewbox="0 0 32 32">
  1404. <path d="M15.994 2.886c4.273 0 4.775.019 6.464.095 1.562.07 2.406.33 2.971.552.749.292 1.283.635 1.841 1.194s.908 1.092 1.194 1.841c.216.565.483 1.41.552 2.971.076 1.689.095 2.19.095 6.464s-.019 4.775-.095 6.464c-.07 1.562-.33 2.406-.552 2.971-.292.749-.635 1.283-1.194 1.841s-1.092.908-1.841 1.194c-.565.216-1.41.483-2.971.552-1.689.076-2.19.095-6.464.095s-4.775-.019-6.464-.095c-1.562-.07-2.406-.33-2.971-.552-.749-.292-1.283-.635-1.841-1.194s-.908-1.092-1.194-1.841c-.216-.565-.483-1.41-.552-2.971-.076-1.689-.095-2.19-.095-6.464s.019-4.775.095-6.464c.07-1.562.33-2.406.552-2.971.292-.749.635-1.283 1.194-1.841s1.092-.908 1.841-1.194c.565-.216 1.41-.483 2.971-.552 1.689-.083 2.19-.095 6.464-.095zm0-2.883c-4.343 0-4.889.019-6.597.095-1.702.076-2.864.349-3.879.743-1.054.406-1.943.959-2.832 1.848S1.251 4.473.838 5.521C.444 6.537.171 7.699.095 9.407.019 11.109 0 11.655 0 15.997s.019 4.889.095 6.597c.076 1.702.349 2.864.743 3.886.406 1.054.959 1.943 1.848 2.832s1.784 1.435 2.832 1.848c1.016.394 2.178.667 3.886.743s2.248.095 6.597.095 4.889-.019 6.597-.095c1.702-.076 2.864-.349 3.886-.743 1.054-.406 1.943-.959 2.832-1.848s1.435-1.784 1.848-2.832c.394-1.016.667-2.178.743-3.886s.095-2.248.095-6.597-.019-4.889-.095-6.597c-.076-1.702-.349-2.864-.743-3.886-.406-1.054-.959-1.943-1.848-2.832S27.532 1.247 26.484.834C25.468.44 24.306.167 22.598.091c-1.714-.07-2.26-.089-6.603-.089zm0 7.778c-4.533 0-8.216 3.676-8.216 8.216s3.683 8.216 8.216 8.216 8.216-3.683 8.216-8.216-3.683-8.216-8.216-8.216zm0 13.549c-2.946 0-5.333-2.387-5.333-5.333s2.387-5.333 5.333-5.333 5.333 2.387 5.333 5.333-2.387 5.333-5.333 5.333zM26.451 7.457c0 1.059-.858 1.917-1.917 1.917s-1.917-.858-1.917-1.917c0-1.059.858-1.917 1.917-1.917s1.917.858 1.917 1.917z"></path>
  1405. </svg></span>
  1406. </a>
  1407. </li>
  1408. <li class="HorizontalList__Item">
  1409. <a href="https://www.youtube.com/channel/UCW5Ma_xnAweFIXCGOAZECAA/videos" class="Link Link--primary" target="_blank" rel="noopener" aria-label="YouTube">
  1410. <span class="Icon-Wrapper--clickable"><svg class="Icon Icon--youtube " role="presentation" viewbox="0 0 33 32">
  1411. <path d="M0 25.693q0 1.997 1.318 3.395t3.209 1.398h24.259q1.891 0 3.209-1.398t1.318-3.395V6.387q0-1.997-1.331-3.435t-3.195-1.438H4.528q-1.864 0-3.195 1.438T.002 6.387v19.306zm12.116-3.488V9.876q0-.186.107-.293.08-.027.133-.027l.133.027 11.61 6.178q.107.107.107.266 0 .107-.107.213l-11.61 6.178q-.053.053-.107.053-.107 0-.16-.053-.107-.107-.107-.213z"></path>
  1412. </svg></span>
  1413. </a>
  1414. </li>
  1415. </ul>
  1416. </div>
  1417. </div>
  1418. <div class="Footer__Aside">
  1419. <div class="Footer__Copyright">
  1420. <a href="https://karmineshop.com/" class="Footer__StoreName Heading u-h7 Link Link--secondary">© Karmine Shop</a>
  1421. </div>
  1422. <ul class="Footer__PaymentList HorizontalList">
  1423. <li class="HorizontalList__Item">
  1424. <svg 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>
  1425. </li>
  1426. <li class="HorizontalList__Item">
  1427. <svg 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>
  1428. </li>
  1429. <li class="HorizontalList__Item">
  1430. <svg 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>
  1431. </li>
  1432. <li class="HorizontalList__Item">
  1433. <svg 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>
  1434. </li>
  1435. </ul>
  1436. </div>
  1437. </div>
  1438. </footer>
  1439. </div>
  1440. <script src="https://cdn.codeblackbelt.com/js/modules/also-bought/main.min.js?shop=karmineshop.myshopify.com" defer></script>
  1441. </div>
  1442. <!-- langify-v2-scripts-begin -->
  1443. <!-- ***** Load the polyfills ***** -->
  1444. <script src="https://polyfill.io/v3/polyfill.min.js?features=IntersectionObserver%2CIntersectionObserverEntry%2CMutationObserver"></script>
  1445. <!-- ****************************** -->
  1446. <script>
  1447.  var lyShopifyAPI = lyShopifyAPI || {};
  1448.  var langify = langify || {};
  1449.  var defaultSettings = {
  1450.    debug: false,               // BOOL : Enable/disable console logs
  1451.    observe: true,              // BOOL : Enable/disable the entire mutation observer (off switch)
  1452.    observeLinks: true,
  1453.    observeImages: true,
  1454.    observeCustomContents: true,
  1455.    maxMutations: 5,
  1456.    timeout: 100,               // INT : Milliseconds to wait after a mutation, before the next mutation event will be allowed for the element
  1457.    linksBlacklist: [],
  1458.  }
  1459.  if(langify.settings) { langify.settings = Object.assign(defaultSettings, langify.settings) } else { langify.settings = defaultSettings }
  1460.  langify.settings.theme = null;
  1461.  langify.settings.switcher = null;
  1462.  langify.helper = langify.helper || {
  1463.    ajax: function(params) {
  1464.      var data = params.data;
  1465.      fetch(params.url, {
  1466.        method: params.method,
  1467.        headers: {
  1468.          'Content-Type': 'application/json',
  1469.        },
  1470.        body: (data && params.method === 'POST') ? JSON.stringify(data) : null,
  1471.      })
  1472.      .then(response => response.json())
  1473.      .then(data => {
  1474.        params.success(data);
  1475.      })
  1476.      .catch((error) => {
  1477.        console.error('Error:', error);
  1478.      });
  1479.    },
  1480.    extractImageObject: function(val) {
  1481.      if(!val || val == '') return false;
  1482.      var val = val;
  1483.      // Handle src-sets
  1484.      if(val.search(/([0-9]+w?h?x?,)/gi) > -1) {
  1485.        val = val.split(/([0-9]+w?h?x?,)/gi)[0];
  1486.      }
  1487.      var url = val;
  1488.      var host = file = name = type = '';
  1489.      url = url.substring(0, (url.indexOf("#") == -1) ? url.length : url.indexOf("#"));
  1490.      url = url.substring(0, (url.indexOf("?") == -1) ? url.length : url.indexOf("?"));
  1491.      url = url.substring(url.lastIndexOf("/") + 1, url.length);
  1492.      var hostBegin = val.indexOf('//') ? val.indexOf('//') : 0;
  1493.      host = val.substring(hostBegin, val.lastIndexOf('/') + 1);
  1494.      name = url.replace(/(_[0-9]+x[0-9]*|_{width}x|_{size})?(_crop_(top|center|bottom|left|right))?(@[0-9]*x)?(\.progressive)?\.(jpe?g|png|gif|webp)/gi, "");
  1495.      type = url.substring(url.lastIndexOf('.')+1, url.length);
  1496.      file = url.replace(/(_[0-9]+x[0-9]*|_{width}x|_{size})?(_crop_(top|center|bottom|left|right))?(@[0-9]*x)?(\.progressive)?\.(jpe?g|png|gif|webp)/gi, '.'+type);
  1497.      return {
  1498.        host: host,
  1499.        name: name,
  1500.        type: type,
  1501.        file: file
  1502.      }
  1503.    },
  1504.    getCurrentLanguage: function() {
  1505.      return "fr";
  1506.    },
  1507.    setLanguage: function(code) {
  1508.      if(!langify.locale.languages.find(x => x.iso_code === code)) return false;
  1509.      var rootUrl = langify.locale.languages.find(x => x.iso_code === code).root_url;
  1510.      if(rootUrl == '/') {rootUrl = '';}
  1511.      var finalUrl = rootUrl + "";
  1512.      if(finalUrl == '') {finalUrl = '/';}
  1513.      window.location.href = finalUrl;
  1514.      return true;
  1515.    },
  1516.    getCookie: function(name) {
  1517.      var v = document.cookie.match('(^|;) ?' + name + '=([^;]*)(;|$)');
  1518.      if(v) return v[2];
  1519.      else return null;
  1520.    },
  1521.    setCookie: function(name, value, days) {
  1522.      var d = new Date;
  1523.      d.setTime(d.getTime() + 24*60*60*1000*days);
  1524.      document.cookie = name + "=" + value + ";path=/;expires=" + d.toGMTString();
  1525.    },
  1526.    getVersion: function() {
  1527.      return 2;
  1528.    },
  1529.    isOutOfViewport: function (elem) {
  1530.      var bounding = elem.getBoundingClientRect();
  1531.      var out = {};
  1532.      out.top = bounding.top < 0;
  1533.      out.left = bounding.left < 0;
  1534.      out.bottom = Math.ceil(bounding.bottom) >= (window.innerHeight || document.documentElement.clientHeight);
  1535.      out.right = bounding.right > (window.innerWidth || document.documentElement.clientWidth);
  1536.      out.any = out.top || out.left || out.bottom || out.right;
  1537.      out.inViewport = bounding.x > 0 && bounding.y > 0;
  1538.      return out;
  1539.    },
  1540.    isDomainFeatureEnabled: function() {
  1541.      return null;
  1542.    },
  1543.    getVal: function(str) {
  1544.      var v = window.location.search.match(new RegExp('(?:[?&]'+str+'=)([^&]+)'));
  1545.      return v ? v[1] : null;
  1546.    },
  1547.    inIframe: function() {
  1548.      try {
  1549.        return window.self !== window.top;
  1550.      } catch (e) {
  1551.        return true;
  1552.      }
  1553.    },
  1554.  };
  1555.  var customContents = {};
  1556.  var customContents_image = {};
  1557.  var customContents_html = {};
  1558.  var customContents_text = {};
  1559.  var customContents_attr = {};
  1560.  // Custom Contents Section
  1561.  // Images Section
  1562.  var languageUrls = [];languageUrls['fr'] = '/';languageUrls['en'] = '/en';langify.locale = langify.locale || {
  1563.    primary: true,
  1564.    iso_code: "fr",
  1565.    root_url: "\/",
  1566.    language_id: null,
  1567.    languages: [{
  1568.        iso_code: "fr",
  1569.        root_url: "\/",
  1570.        language_id: null,
  1571.        domain: "",
  1572.        },{
  1573.        iso_code: "en",
  1574.        root_url: "\/en",
  1575.        language_id: "ly158469",
  1576.        domain: "",
  1577.        },
  1578.    ]
  1579.  };
  1580.  function isIE() {
  1581.    ua = navigator.userAgent;
  1582.    var is_ie = ua.indexOf("MSIE ") > -1 || ua.indexOf("Trident/") > -1;
  1583.    return is_ie;
  1584.  }
  1585.  if (!isIE()){
  1586.    // Disable link correction ALWAYS on languages with mapped domains
  1587.    if(langify.locale.languages.find(x => x.iso_code === "fr" && x.domain !== '' )) {
  1588.      langify.settings.observeLinks = false;
  1589.    }
  1590.    var langifyObserverCore = function() {
  1591.      var observedNodes = [];
  1592.      var intersectionObs = null;
  1593.      var mutationObs = null;
  1594.      var mutationObsConfig = {
  1595.        characterData: true,
  1596.        characterDataOldValue: true,
  1597.        attributes: true,
  1598.        attributeOldValue: true,
  1599.        childList: true,
  1600.        subtree: true,
  1601.      };
  1602.      function init() {
  1603.        if(langify.settings.observe) {
  1604.          spreadCustomContents();
  1605.          if (window.MutationObserver) {
  1606.            if (langify.settings.lazyload && window.IntersectionObserver) {
  1607.              startIntersectionObserver();
  1608.            } else {
  1609.              startMutationObserver(null);
  1610.            }
  1611.          } else {
  1612.            startMutationEvents();
  1613.          }
  1614.        }
  1615.      }
  1616.      // Intersection Observer
  1617.      function startIntersectionObserver() {
  1618.        intersectionObs = new IntersectionObserver(callbackIntersectionChange);
  1619.        var elementNodes = document.getElementsByClassName('shopify-section');
  1620.        Array.prototype.slice.call(elementNodes).forEach(function(node) {
  1621.          intersectionObs.observe(node);
  1622.        });
  1623.      }
  1624.      function callbackIntersectionChange(intersections) {
  1625.        intersections.forEach(function(intersection) {
  1626.          var target = intersection.target;
  1627.          var targetIsIntersecting = Boolean(target.getAttribute('ly-is-intersecting') === "true" ? true : false);
  1628.          if(typeof targetIsIntersecting == 'undefined' || targetIsIntersecting == null) {
  1629.            target.setAttribute('ly-is-intersecting', intersection.isIntersecting);
  1630.            targetIsIntersecting = intersection.isIntersecting;
  1631.          }
  1632.          // On Screen
  1633.          if(targetIsIntersecting == false && intersection.isIntersecting == true) {
  1634.            if(!target.getAttribute('ly-is-observing')) {
  1635.              startMutationObserver(target);
  1636.              intersectionObs.unobserve(target);
  1637.              // As the mutation observer didn't see the "add" of the elememts, trigger the initial translation manually
  1638.              var elementNodes = getNodesUnder(target, 'SHOW_ELEMENT');
  1639.              var textNodes = getNodesUnder(target, 'SHOW_TEXT');
  1640.              var nodes = elementNodes.concat(textNodes);
  1641.              nodes.forEach(function(node) {
  1642.                translate(node, 'mutation -> childList');
  1643.              });
  1644.            }
  1645.          }
  1646.          // Off Screen
  1647.          //else if(targetIsIntersecting == true && intersection.isIntersecting == false) {
  1648.          //  stopMutationObserver(target);
  1649.          //}
  1650.          target.setAttribute('ly-is-intersecting', intersection.isIntersecting);
  1651.        });
  1652.      }
  1653.      // Mutation Observer
  1654.      function startMutationObserver(observerTarget) {
  1655.        if (!observerTarget) {
  1656.          var target = document.documentElement || document.body; // main window
  1657.        } else {
  1658.          if (observerTarget.nodeName  === 'IFRAME') {
  1659.            var target = observerTarget.contentDocument || observerTarget.contentWindow.document; // iframe
  1660.          } else {
  1661.            var target = observerTarget;
  1662.          }
  1663.        }
  1664.        mutationObs = new MutationObserver(callbackDomChange);
  1665.        mutationObs.observe(target, mutationObsConfig);
  1666.        observedNodes.push(target);
  1667.        try { target.setAttribute('ly-is-observing', 'true'); } catch(e) {}
  1668.      }
  1669.      function stopMutationObserver(target) {
  1670.        if(observedNodes.indexOf(target) > -1) {
  1671.          observedNodes.splice(observedNodes.indexOf(target), 1);
  1672.        }
  1673.        var mutations = mutationObs.takeRecords();
  1674.        mutationObs.disconnect();
  1675.        observedNodes.forEach(node => {
  1676.          mutationObs.observe(node, mutationObsConfig);
  1677.        });
  1678.        try { target.removeAttribute('ly-is-observing'); } catch(e) {}
  1679.      }
  1680.      function callbackDomChange(mutations, mutationObs) {
  1681.        for (var i = 0, length = mutations.length; i < length; i++) {
  1682.          var mutation = mutations[i];
  1683.          var target = mutation.target;
  1684.          // Links-Hook
  1685.          if (mutation.type === 'attributes' && (mutation.attributeName === 'href' || mutation.attributeName === 'action')) {
  1686.            var target = mutation.target;
  1687.            translateLink(target.getAttribute(mutation.attributeName), target);
  1688.          }
  1689.          // Images-Hook
  1690.          else if (mutation.type === 'attributes' && (mutation.attributeName === 'src' || mutation.attributeName === 'data-src' || mutation.attributeName === 'srcset' || mutation.attributeName === 'data-srcset')) {
  1691.            translateImage(target, mutation.attributeName);
  1692.          }
  1693.          else if (mutation.type === 'attributes' && mutation.attributeName === 'style') {
  1694.            translateCssImage(target);
  1695.          }
  1696.          // Subtree Events
  1697.          else if (mutation.type === 'childList') {
  1698.            // Added Nodes
  1699.            if(mutation.addedNodes.length > 0) {
  1700.              var elementNodes = getNodesUnder(mutation.target, 'SHOW_ELEMENT');
  1701.              var textNodes = getNodesUnder(mutation.target, 'SHOW_TEXT');
  1702.              var nodes = elementNodes.concat(textNodes);
  1703.              nodes.forEach(function(node) {
  1704.                translate(node, 'mutation -> childList');
  1705.              });
  1706.            }
  1707.          }
  1708.          // CharacterData Events
  1709.          else if (mutation.type === 'characterData') {
  1710.            var target = mutation.target;
  1711.            translate(target, 'mutation -> characterData');
  1712.          }
  1713.        }
  1714.      }
  1715.      function translate(node, info) {
  1716.        if((node.nodeType === 1 && node.hasAttribute('data-ly-locked')) || (node.nodeType === 3 && node.parentNode && node.parentNode.hasAttribute('data-ly-locked'))) {
  1717.          return;
  1718.        }
  1719.        // CC-Hook
  1720.        if (node.nodeName  !== 'SCRIPT' && node.nodeName  !== 'STYLE') {
  1721.          if (node.nodeType === 3) {
  1722.            translateTextNode(node, info);
  1723.          }
  1724.          translateNodeAttrs(node);
  1725.        }
  1726.        // Links-Hook
  1727.        if (node.nodeName  === 'A' || node.nodeName  === 'FORM') {
  1728.          if(node.hasAttribute('href')) var attrName = 'href';
  1729.          else var attrName = 'action';
  1730.          var url = node.getAttribute(attrName);
  1731.          translateLink(url, node);
  1732.        }
  1733.        // Images-Hook
  1734.        if (node.nodeName  === 'IMG' || node.nodeName  === 'SOURCE') {
  1735.          translateImage(node, ['src', 'data-src', 'srcset', 'data-srcset']);
  1736.        }
  1737.        if (node.attributes && node.getAttribute('style')) {
  1738.          translateCssImage(node);
  1739.        }
  1740.        // Iframe Observation
  1741.        if (node.nodeName  === 'IFRAME') {
  1742.          // Todo: handle srcdoc iframe content observing
  1743.          if (node.getAttribute('ly-is-observing') == null && node.getAttribute('src') == null && !node.hasAttribute('srcdoc')) {
  1744.            node.setAttribute('ly-is-observing', 'true');
  1745.            startMutationObserver(node);
  1746.          }
  1747.        }
  1748.      }
  1749.      function translateNodeAttrs(node) {
  1750.        if(Object.keys(customContents_attr).length > 0) {
  1751.        }
  1752.      }
  1753.      var mutationCount = 0;
  1754.      function translateTextNode(node, info) {
  1755.        if(langify.settings.observeCustomContents === false || !node.textContent || node.textContent.trim().length === 0) {
  1756.          return;
  1757.        }
  1758.        var src = node.textContent.trim().replace(/(\r\n|\n|\r)/gim,"").replace(/\s+/g," ").toLowerCase();
  1759.        if(customContents_text[src] && node.textContent !== customContents_text[src]) {
  1760.          var newContent = node.textContent.replace(node.textContent.trim(), customContents_text[src]);
  1761.          if (newContent != node.textContent) {
  1762.            if(!node.parentNode.hasAttribute('data-ly-mutation-count') || parseInt(node.parentNode.getAttribute('data-ly-mutation-count')) < langify.settings.maxMutations) {
  1763.              var count = node.parentNode.hasAttribute('data-ly-mutation-count') ? parseInt(node.parentNode.getAttribute('data-ly-mutation-count')) : 0;
  1764.              node.parentNode.setAttribute('data-ly-mutation-count', count+1);
  1765.              node.textContent = newContent;
  1766.              mutationCount = mutationCount + 1;
  1767.              log('REPLACED (TEXT)', {
  1768.                  oldValue: src,
  1769.                  newValue: customContents_text[src],
  1770.                  mutationCount,
  1771.                }, 'success'
  1772.              );
  1773.              var event = new CustomEvent('langify.observer.aftertranslatetext', {
  1774.                bubbles: true,
  1775.                detail: {
  1776.                  target: node,
  1777.                  original: src,
  1778.                  translation: customContents_text[src]
  1779.                }
  1780.              });
  1781.              node.dispatchEvent(event);
  1782.            }
  1783.          }
  1784.        }
  1785.      }
  1786.      function translateLink(url, node) {
  1787.        if(langify.settings.observeLinks === false || node.hasAttribute('data-ly-locked') || !url || (url.indexOf('mailto:') !== -1 || url.indexOf('javascript:') !== -1 || url.indexOf('tel:') !== -1 || url.indexOf('file:') !== -1 || url.indexOf('ftp:') !== -1 || url.indexOf('sms:') !== -1 || url.indexOf('market:') !== -1 || url.indexOf('fax:') !== -1 || url.indexOf('callto:') !== -1 || url.indexOf('ts3server:') !== -1)) {
  1788.          return;
  1789.        }
  1790.        var isLocalized = (url.indexOf('/'+"fr"+'/') === 0 || url === '/'+"fr" || url.indexOf('/'+"fr"+'/') === 0 || url === '/'+"fr");
  1791.        var link = url.replace("https:\/\/karmineshop.com", '').replace(/\/fr\//gi, '/');
  1792.        var isUrlAbsolute = (link.indexOf('://') > 0 || link.indexOf('//') === 0);
  1793.        var blacklist = ['#', '/fr#'].concat(langify.settings.linksBlacklist);
  1794.        var isUrlBlacklisted = blacklist.find(x => url.indexOf(x) === 0);
  1795.        if(!isLocalized && !isUrlAbsolute && !isUrlBlacklisted && "\/" != '/') {
  1796.          if(node.hasAttribute('href')) var attrName = 'href'; else var attrName = 'action';
  1797.          if(link === '/' || link == "\/") link = '';
  1798.          var newLink = "\/" + link;
  1799.          var timeStamp = Math.floor(Date.now());
  1800.          if(!node.hasAttribute('data-ly-processed') || timeStamp > parseInt(node.getAttribute('data-ly-processed')) + langify.settings.timeout) {
  1801.            node.setAttribute('data-ly-processed', timeStamp);
  1802.            node.setAttribute(attrName, newLink);
  1803.            if(node.hasAttribute('data-'+attrName)) node.setAttribute('data-'+attrName, newLink);
  1804.            mutationCount = mutationCount + 1;
  1805.            log('REPLACED (LINK)', {
  1806.                attrName,
  1807.                oldValue: url,
  1808.                newValue: newLink,
  1809.                mutationCount,
  1810.              }, 'success'
  1811.            );
  1812.            var event = new CustomEvent('langify.observer.aftertranslatelink', {
  1813.              bubbles: true,
  1814.              detail: {
  1815.                target: node,
  1816.                attribute: attrName,
  1817.                original: url,
  1818.                translation: newLink
  1819.              }
  1820.            });
  1821.            node.dispatchEvent(event);
  1822.          }
  1823.        }
  1824.      }
  1825.      function translateImage(node, attr) {
  1826.        if(langify.settings.observeImages === false || node.hasAttribute('data-ly-locked') || Object.keys(customContents_image).length === 0) {
  1827.          return
  1828.        }
  1829.        var attrs = [];
  1830.        if(typeof attr === 'string') attrs.push(attr);
  1831.        else if(typeof attr === 'object') attrs = attr;
  1832.        var timeStamp = Math.floor(Date.now());
  1833.        if(!node.hasAttribute('data-ly-processed') || timeStamp > parseInt(node.getAttribute('data-ly-processed')) + langify.settings.timeout) {
  1834.          node.setAttribute('data-ly-processed', timeStamp);
  1835.          attrs.forEach(function(attr) {
  1836.            if(node.hasAttribute(attr)) {
  1837.              var imgObject = langify.helper.extractImageObject(node.getAttribute(attr));
  1838.              var imgKey = imgObject ? imgObject.file.toLowerCase() : '';
  1839.              if(customContents_image[imgKey]) {
  1840.                // Replace
  1841.                var oldValue = node.getAttribute(attr);
  1842.                var translation = node.getAttribute(attr);
  1843.                translation = translation.replace(new RegExp(imgObject.host, 'g'), customContents_image[imgKey].host);
  1844.                translation = translation.replace(new RegExp(imgObject.name, 'g'), customContents_image[imgKey].name);
  1845.                translation = translation.replace(new RegExp(imgObject.type, 'g'), customContents_image[imgKey].type);
  1846.                // China Hook
  1847.                if(node.getAttribute(attr).indexOf('cdn.shopifycdn.net') >= 0) {
  1848.                  translation = translation.replace(new RegExp('cdn.shopify.com', 'g'), 'cdn.shopifycdn.net');
  1849.                }
  1850.                if(node.getAttribute(attr) != translation) {
  1851.                  node.setAttribute(attr, translation);
  1852.                  mutationCount = mutationCount + 1;
  1853.                  log('REPLACED (IMAGE)', {
  1854.                    attrName: attr,
  1855.                    oldValue: oldValue,
  1856.                    newValue: translation,
  1857.                    mutationCount,
  1858.                  }, 'success');
  1859.                  var event = new CustomEvent('langify.observer.aftertranslateimage', {
  1860.                    bubbles: true,
  1861.                    detail: {
  1862.                      target: node,
  1863.                      attribute: attr,
  1864.                      original: oldValue,
  1865.                      translation: translation
  1866.                    }
  1867.                  });
  1868.                  node.dispatchEvent(event);
  1869.                }
  1870.              }
  1871.            }
  1872.          });
  1873.        }
  1874.      }
  1875.      function translateCssImage(node) {
  1876.        if(langify.settings.observeImages === false || node.hasAttribute('data-ly-locked') || Object.keys(customContents_image).length === 0 || !node.getAttribute('style')) {
  1877.          return
  1878.        }
  1879.        var imgMatches = node.getAttribute('style').match(/url\(("|')?(.*)("|')?\)/gi);
  1880.        if(imgMatches !== null) {
  1881.          var imgSource = imgMatches[0].replace(/url\(("|')?|("|')?\)/, '');
  1882.          var imgObject = langify.helper.extractImageObject(imgSource);
  1883.          var imgKey = imgObject ? imgObject.file.toLowerCase() : '';
  1884.          var attr = 'style';
  1885.          if(customContents_image[imgKey]) {
  1886.            // Replace
  1887.            var translation = node.getAttribute(attr);
  1888.            translation = translation.replace(new RegExp(imgObject.host, 'g'), customContents_image[imgKey].host);
  1889.            translation = translation.replace(new RegExp(imgObject.name, 'g'), customContents_image[imgKey].name);
  1890.            translation = translation.replace(new RegExp(imgObject.type, 'g'), customContents_image[imgKey].type);
  1891.            // China Hook
  1892.            if(node.getAttribute(attr).indexOf('cdn.shopifycdn.net') >= 0) {
  1893.              translation = translation.replace(new RegExp('cdn.shopify.com', 'g'), 'cdn.shopifycdn.net');
  1894.            }
  1895.            if(node.getAttribute(attr) != translation) {
  1896.              var timeStamp = Math.floor(Date.now());
  1897.              if(!node.hasAttribute('data-ly-processed') || timeStamp > parseInt(node.getAttribute('data-ly-processed')) + langify.settings.timeout) {
  1898.                node.setAttribute('data-ly-processed', timeStamp);
  1899.                node.setAttribute(attr, translation);
  1900.                mutationCount = mutationCount + 1;
  1901.              }
  1902.            }
  1903.          }          
  1904.        }
  1905.      }
  1906.      function findAndLocalizeLinks(target, parent) {
  1907.        if(target.parentNode && parent) var allLinks = target.parentElement.querySelectorAll('[href],[action]');
  1908.        else var allLinks = target.querySelectorAll('[href],[action]');
  1909.        allLinks.forEach(link => {
  1910.          if(link.hasAttribute('href')) var attrName = 'href'; else var attrName = 'action';
  1911.          var url = link.getAttribute(attrName);
  1912.          translateLink(url, link);
  1913.        });
  1914.      }
  1915.      function getNodesUnder(el, show){
  1916.        var n, a=[], walk=document.createTreeWalker(el, NodeFilter[show] , null, false);
  1917.        while(n=walk.nextNode()) a.push(n);
  1918.        return a;
  1919.      }
  1920.      function log(title, data, type) {
  1921.        if(langify.settings.debug) {
  1922.          let css = 'color: green; font-weight: bold;';
  1923.          console.log(`%c ${title}: \n`, css, data);
  1924.        }
  1925.      }
  1926.      function spreadCustomContents() {
  1927.        var getFileName = function(url) {
  1928.          if(!url || url == '') return;
  1929.          url = url.substring(0, (url.indexOf("#") == -1) ? url.length : url.indexOf("#"));
  1930.          url = url.substring(0, (url.indexOf("?") == -1) ? url.length : url.indexOf("?"));
  1931.          url = url.substring(url.lastIndexOf("/") + 1, url.length);
  1932.          url = url.replace(/(_[0-9]+x[0-9]*|_{width}x)?(_crop_(top|center|bottom|left|right))?(@[0-9]*x)?(\.progressive)?\.(jpe?g|png|gif|webp)/gi, "");
  1933.          return '/' + url;
  1934.        }
  1935.        Object.entries(customContents).forEach(function(entry) {
  1936.          //if(/<\/?[a-z][\s\S]*>/i.test(entry[0])) customContents_html[entry[0]] = entry[1];
  1937.          //else if(/(http(s?):)?([/|.|\w|\s|-])*\.(?:jpe?g|gif|png)/.test(entry[0])) customContents_image[getFileName(entry[0])] = getFileName(entry[1]);
  1938.          if(/(http(s?):)?([/|.|\w|\s|-])*\.(?:jpe?g|gif|png|webp)/.test(entry[0])) customContents_image[langify.helper.extractImageObject(entry[0]).file] = langify.helper.extractImageObject(entry[1]);
  1939.          else customContents_text[entry[0]] = entry[1];
  1940.        });
  1941.        log('CUSTOM CONTENTS:', {customContents, customContents_text, customContents_image}, 'info')
  1942.      }
  1943.      // Polyfill for old browsers
  1944.      function startMutationEvents() {
  1945.        var target = document.querySelector('body');
  1946.        target.addEventListener("DOMAttrModified", function (event) {
  1947.          if(event.attrName === 'href' || event.attrName === 'action') {
  1948.            if(event.prevValue != event.newValue) {
  1949.              translateLink(event.newValue, event.target);
  1950.            }
  1951.          }
  1952.        }, false);
  1953.        target.addEventListener("DOMSubtreeModified", function (event) {
  1954.          //findAndLocalizeLinks(event.target, false);
  1955.          //matchCustomContent(event.target);
  1956.        }, false);
  1957.      }
  1958.      function triggerCustomContents() {
  1959.        var rootnode = document.getElementsByTagName('body')[0]
  1960.        var walker = document.createTreeWalker(rootnode, NodeFilter.SHOW_ALL, null, false)
  1961.        while (walker.nextNode()) {
  1962.          //console.log(walker.currentNode.tagName)
  1963.          translate(walker.currentNode, null);
  1964.        }
  1965.      }
  1966.      function stopObserver() {
  1967.        mutationObs.takeRecords();
  1968.        mutationObs.disconnect();
  1969.      }
  1970.      init();
  1971.      return {
  1972.        init: init,
  1973.        triggerCustomContents: triggerCustomContents,
  1974.        stopObserver: stopObserver,
  1975.      }
  1976.    };
  1977.    var langifyObserver = langifyObserverCore();
  1978.    langify.api = {
  1979.      observer: {
  1980.        start: langifyObserver.init,
  1981.        stop: langifyObserver.stopObserver,
  1982.        trigger: langifyObserver.triggerCustomContents
  1983.      }
  1984.    };
  1985.  }
  1986.  langify.tools = langify.tools || {
  1987.    compareJQueryVersion: function(a,b) {if (a === b) {return 0;}var a_components = a.split(".");var b_components = b.split(".");var len = Math.min(a_components.length, b_components.length);for (var i = 0; i < len; i++) {if (parseInt(a_components[i]) > parseInt(b_components[i])) {return 1;}if (parseInt(a_components[i]) < parseInt(b_components[i])) {return -1;}}if (a_components.length > b_components.length) {return 1;}if (a_components.length < b_components.length) {return -1;}return 0;}
  1988.  };
  1989.  langify.loader = langify.loader || {
  1990.    loadScript: function(url, callback) {
  1991.      var script = document.createElement('script');
  1992.      script.type = 'text/javascript';
  1993.      if(script.readyState) {
  1994.        script.onreadystatechange = function () {
  1995.          if(script.readyState == 'loaded' || script.readyState == 'complete') {
  1996.            script.onreadystatechange = null;
  1997.            callback();
  1998.          }
  1999.        };
  2000.      } else {
  2001.        script.onload = function () {
  2002.          callback();
  2003.        };
  2004.      }
  2005.      script.src = url;
  2006.      document.getElementsByTagName('head')[0].appendChild(script);
  2007.    },
  2008.    reload: function() {
  2009.      window.location.reload();
  2010.    }
  2011.  };
  2012.  langify.switcher = langify.switcher || {
  2013.    init: function() {
  2014.      var lyForceOff = location.search.split('ly-force-off=')[1];
  2015.      var switcherElements = Array.prototype.slice.call(document.getElementsByClassName('ly-switcher-wrapper'));
  2016.      if(!switcherElements.length) {
  2017.        switcherElements = Array.prototype.slice.call(document.getElementsByClassName('ly-languages-switcher'));
  2018.      }
  2019.      document.addEventListener('click', function(event) {
  2020.        if(!event.target.closest('.ly-languages-switcher')) {
  2021.          var openSwitchers = document.querySelectorAll('.ly-languages-switcher.ly-is-open')
  2022.          for(i = 0; i < openSwitchers.length; i++) {
  2023.            openSwitchers[i].classList.remove('ly-is-open');
  2024.          }
  2025.        }
  2026.      });
  2027.      // Custom positioning
  2028.      for(i = 0; i < switcherElements.length; i++) {
  2029.        if(lyForceOff !== 'true' && langify.locale.languages.length > 1) {
  2030.          switcherElements[i].classList.remove('ly-hide');
  2031.        }
  2032.        if(switcherElements[i].classList.contains('ly-custom') && (document.getElementById('ly-custom-'+switcherElements[i].getAttribute('data-breakpoint')) || document.getElementsByClassName('ly-custom-'+switcherElements[i].getAttribute('data-breakpoint')).length )) {
  2033.          var targets = Array.from(document.getElementsByClassName('ly-custom-'+switcherElements[i].getAttribute('data-breakpoint')));
  2034.          var target = document.getElementById('ly-custom-'+switcherElements[i].getAttribute('data-breakpoint'));
  2035.          if(target) targets.push(target);
  2036.          for(c = 0; c < targets.length; c++) {
  2037.            var clone = switcherElements[i].cloneNode(true);
  2038.            targets[c].innerHTML = clone.outerHTML;
  2039.          }
  2040.          switcherElements[i].classList.add('ly-hide');
  2041.        }
  2042.      }
  2043.      var links = document.getElementsByClassName('ly-languages-switcher-link');
  2044.      for(l = 0; l < links.length; l++) {
  2045.        if(links[l].getAttribute('href') !== '#') {
  2046.          links[l].setAttribute('href', links[l].getAttribute('href') + window.location.search);
  2047.          links[l].addEventListener('click', function(event) {
  2048.            langify.helper.setCookie('ly-lang-selected', this.getAttribute('data-ly-code'), 365);
  2049.          });          
  2050.        }
  2051.      }
  2052.      // Native select event handling
  2053.      var nativeLangifySelects = document.getElementsByClassName('ly-native-select');
  2054.      for(var i = 0; i < nativeLangifySelects.length; i++) {
  2055.        nativeLangifySelects[i].onchange = function() {
  2056.          var selectedLanguageCode = this[this.selectedIndex].getAttribute('key');
  2057.          var url = languageUrls[selectedLanguageCode];
  2058.          if(url) {
  2059.            langify.helper.setCookie('ly-lang-selected', selectedLanguageCode, 365);
  2060.            window.location.replace(url+window.location.search);
  2061.          }
  2062.        };
  2063.      }
  2064.      // Initial cart.attributes update
  2065.      lyShopifyAPI.getCart(function (cart) {
  2066.        var currentLanguage = langify.locale.iso_code;
  2067.        if(!cart.attributes.language || cart.attributes.language != currentLanguage) {
  2068.          lyShopifyAPI.updateCartAttributes({"language": currentLanguage}, function(data){});
  2069.        }
  2070.      });
  2071.      // Custom Dropdown
  2072.      var switcher = document.getElementsByClassName('ly-custom-dropdown-switcher');
  2073.      for(var a = 0; a < switcher.length; a++) {
  2074.       switcher[a].classList.toggle('ly-is-open');
  2075.        var isOut = langify.helper.isOutOfViewport(switcher[a]);
  2076.        if(isOut.bottom && isOut.inViewport) {
  2077.          switcher[a].classList.add('ly-is-dropup');
  2078.          var arrows = switcher[a].querySelectorAll('.ly-arrow');
  2079.          for(var b = 0; b < arrows.length; b++) {
  2080.            arrows[b].classList.add('ly-arrow-up');    
  2081.          }
  2082.        }
  2083.       switcher[a].classList.toggle('ly-is-open');
  2084.      }
  2085.      if(langify.locale.languages.length === 1) {
  2086.        console.info(`%c LANGIFY INFO:\n`, 'font-weight: bold;', 'The language switcher is hidden! This can have one the following reasons: \n * All additional languages are disabled in the "Langify -> Dashboard -> Languages" section. \n * If you are using different domains for your additional languages, ensure that "Cross Domain Links" are enabled inside the "Langify -> Dashboard -> Switcher Configurator -> Domains" section.');
  2087.      }
  2088.      this._currencySwitcherBindings();
  2089.      var event = new CustomEvent('langify.switcher.initialized', {
  2090.        bubbles: true,
  2091.        detail: {}
  2092.      });
  2093.    },
  2094.    _currencySwitcherBindings: function() {
  2095.      var currencySwitcherForm = document.getElementById('currency_switcher_form');
  2096.      // Switcher-factory backward compability version < 3.2
  2097.      if(currencySwitcherForm && currencySwitcherForm.querySelector('input[name="currency"]')) {
  2098.        currencySwitcherForm.querySelector('input[name="currency"]').setAttribute('name', 'currency_code');
  2099.      }
  2100.      if(currencySwitcherForm) {
  2101.        var countryCodeField = currencySwitcherForm.querySelector('input[name="country_code"]');
  2102.        var languageCodeField = currencySwitcherForm.querySelector('input[name="languageCodeField"]');
  2103.        var currencySelectSwitcher = document.querySelectorAll('select.ly-currency-switcher , select.ly-country-switcher');
  2104.        var currencyCustomSwitcher = document.querySelectorAll('div.ly-currency-switcher a, div.ly-country-switcher a');
  2105.        currencySwitcherForm.querySelector('input[name="return_to"]').value = window.location.pathname;
  2106.        for(var i=0; i<currencyCustomSwitcher.length; i++) {
  2107.          currencyCustomSwitcher[i].addEventListener('click', function(e) {
  2108.            var formType = 'currency_code';
  2109.            if(this.closest('.ly-custom-dropdown-switcher').getAttribute('class').indexOf('ly-country-switcher') >= 0) formType = 'country_code';
  2110.            if(countryCodeField && this.closest('.ly-currency-switcher')) {
  2111.              if(countryCodeField) countryCodeField.remove();
  2112.              if(languageCodeField) languageCodeField.remove();
  2113.            }
  2114.            currencySwitcherForm.querySelector('input[name="'+formType+'"]').value = this.getAttribute('data-'+ formType.replace('_code', '').replace('_', '-'));
  2115.            currencySwitcherForm.submit();
  2116.          });
  2117.        }
  2118.        for(var a=0; a<currencySelectSwitcher.length; a++) {
  2119.          currencySelectSwitcher[a].addEventListener('change', function(){
  2120.            var formType = 'currency_code';
  2121.            var theValue = this.value;
  2122.            if(this.getAttribute('class').indexOf('ly-country-switcher') >= 0) formType = 'country_code';
  2123.            if(countryCodeField && this.getAttribute('class').indexOf('ly-currency-switcher') >= 0) countryCodeField.remove();
  2124.            if(formType === 'currency_code') theValue = this.value.split(' ')[0];
  2125.            currencySwitcherForm.querySelector('input[name="'+formType+'"]').value = theValue;
  2126.            currencySwitcherForm.submit();
  2127.          });
  2128.        }
  2129.      }
  2130.    },
  2131.    toggleSwitcherOpen: function(e) {
  2132.      var target = e;
  2133.      if(!target.classList.contains('ly-is-open')) {
  2134.        var openSwitchers = document.querySelectorAll('.ly-custom-dropdown-switcher.ly-is-open')
  2135.        for(i = 0; i < openSwitchers.length; i++) {
  2136.          openSwitchers[i].classList.remove('ly-is-open');
  2137.        }
  2138.      }
  2139.      target.classList.toggle('ly-is-open');
  2140.      var isOut = langify.helper.isOutOfViewport(target);
  2141.      if(isOut.bottom) {
  2142.        target.classList.add('ly-is-dropup');
  2143.      }
  2144.    },
  2145.    togglePopupOpen: function(e) {
  2146.      e.closest('.ly-popup-switcher').classList.toggle('ly-is-open');
  2147.    },
  2148.  };
  2149.  langify.recommendation = langify.recommendation || {
  2150.    recommendated: null,
  2151.    el: null,
  2152.    init: function() {
  2153.      var _localizationForm = document.getElementById('currency_switcher_form')
  2154.      this.el = {
  2155.        localizationForm: _localizationForm,
  2156.        currencyCodeField: _localizationForm.querySelector('input[name="currency_code"]'),
  2157.        countryCodeField: _localizationForm.querySelector('input[name="country_code"]'),
  2158.        languageCodeField: _localizationForm.querySelector('input[name="language_code"]'),
  2159.      };
  2160.    var recommendated = this._findRecommendedLanguage();
  2161.      this.recommendated = recommendated;
  2162.      if(recommendated && recommendated !== langify.locale.iso_code && !langify.helper.getCookie('ly-lang-selected')) {
  2163.        this._translateStrings(recommendated);
  2164.        this._bindings();
  2165.      } else {
  2166.        return false;
  2167.      }
  2168.    },
  2169.    _findRecommendedLanguage: function() {
  2170.      var currentLang = langify.locale.iso_code;
  2171.      var browserLang = navigator.language || navigator.userLanguage;
  2172.      var match = languageUrls[browserLang];
  2173.      var recommendatedLang = false;
  2174.      if(!match) {
  2175.        browserLang = browserLang.substring(0, 2);
  2176.        match = languageUrls[browserLang];
  2177.      }
  2178.      if(!match) {
  2179.        for(var lang in languageUrls) {
  2180.          if(lang.substring(0, 2) === browserLang) {
  2181.            browserLang = lang;
  2182.            match = languageUrls[browserLang];
  2183.         recommendatedLang = browserLang;
  2184.          }
  2185.        }
  2186.      } else {
  2187.        recommendatedLang = browserLang;
  2188.      }
  2189.      return recommendatedLang;
  2190.    },
  2191.    _translateStrings: function(languageCode) {
  2192.      var recommendationElement = document.querySelectorAll('.ly-recommendation')[0];
  2193.      var strings = langify.settings.switcher.recommendation_strings[languageCode];
  2194.      var recommendationStr = 'Looks like your browser is set to English. Change the language?';
  2195.      var buttonStr = 'Change';
  2196.      var languageStr = 'English';
  2197.      if(strings) {
  2198.        recommendationStr = strings.recommendation ? strings.recommendation : 'Looks like your browser is set to English. Change the language?';
  2199.        buttonStr = strings.button ? strings.button : 'Change';
  2200.        languageStr = strings.language ? strings.language : 'English';
  2201.      }
  2202.      var newCode = recommendationElement.innerHTML;
  2203.      newCode = newCode.replaceAll('[[recommendation]]', recommendationStr).replaceAll('[[button]]', buttonStr);
  2204.      recommendationElement.innerHTML = newCode;    
  2205.    },
  2206.    _bindings: function() {
  2207.      var _this = this;
  2208.    var recommendated = this._findRecommendedLanguage();
  2209.      var currentLang = langify.locale.iso_code;
  2210.      var userLang = navigator.language || navigator.userLanguage;
  2211.      var lyForceOff = location.search.split('ly-force-off=')[1];
  2212.      var recommendationElement = document.querySelectorAll('.ly-recommendation')[0];
  2213.      var form = recommendationElement.querySelectorAll('.ly-recommendation-form')[0];
  2214.      var links = recommendationElement.getElementsByClassName('ly-custom-dropdown-list-element');
  2215.      var customDropdown = recommendationElement.querySelectorAll('.ly-custom-dropdown-switcher');
  2216.      var nativeSelects = recommendationElement.getElementsByClassName('ly-native-select');
  2217.      //form.setAttribute('action', languageUrls[this.recommendated]);
  2218.      if(!this.el.languageCodeField) {
  2219.        // Backwards compability
  2220.        this.el.languageCodeField = document.createElement('input');
  2221.        this.el.languageCodeField.type = 'hidden';
  2222.        this.el.languageCodeField.name = 'language_code';
  2223.        this.el.localizationForm.appendChild(this.el.languageCodeField)
  2224.      }
  2225.      this.el.languageCodeField.value = recommendated;
  2226.      form.addEventListener('submit', function(e) {
  2227.        e.preventDefault();
  2228.        langify.helper.setCookie('ly-lang-selected', recommendated, 365);
  2229.        _this.el.localizationForm.submit();
  2230.      });
  2231.      for(l = 0; l < links.length; l++) {
  2232.        links[l].addEventListener('click', function(event) {
  2233.          event.preventDefault();
  2234.          // When clicked from within a custom dropdown
  2235.          var parentCustomDropdown = event.currentTarget.closest('.ly-custom-dropdown-switcher');
  2236.          if(parentCustomDropdown) {
  2237.            _this._selectCustomDropdownEntry(parentCustomDropdown, this);
  2238.          } else {
  2239.            _this.el.languageCodeField.value = this.getAttribute('data-ly-code');
  2240.          }
  2241.        });
  2242.      }
  2243.      for(var i = 0; i < nativeSelects.length; i++) {
  2244.        nativeSelects[i].onchange = this._selectNativeDropdownEntry;//.bind(this);
  2245.        if(nativeSelects[i].classList.contains('ly-languages-switcher')) {
  2246.          nativeSelects[i].value = recommendated;
  2247.        }
  2248.      }
  2249.      for(i = 0; i < customDropdown.length; i++) {
  2250.       if(recommendationElement.className.indexOf('bottom') > -1) {
  2251.          customDropdown[i].classList.add('ly-is-dropup');      
  2252.       }
  2253.        if(customDropdown[i].classList.contains('ly-languages-switcher')) {
  2254.          this._selectCustomDropdownEntry(customDropdown[i], customDropdown[i].querySelector('.ly-custom-dropdown-list a[data-ly-code="'+ recommendated +'"]'));
  2255.        }
  2256.      }
  2257.      if(!lyForceOff) {
  2258.        recommendationElement.classList.add('ly-is-open');
  2259.      }
  2260.    },
  2261.    _selectNativeDropdownEntry: function(event) {
  2262.      event.preventDefault();
  2263.      var element = event.currentTarget;
  2264.      var _this = langify.recommendation;
  2265.      if(element.classList.contains('ly-languages-switcher')) {
  2266.        _this.el.languageCodeField.value = element[this.selectedIndex].getAttribute('key');
  2267.       //element.value = valueToSelect;  
  2268.      }
  2269.      if(element.classList.contains('ly-country-switcher') || element.classList.contains('ly-currency-switcher')) {
  2270.        _this.el.currencyCodeField.value = element[this.selectedIndex].getAttribute('data-currency');
  2271.        _this.el.countryCodeField.value = element[this.selectedIndex].getAttribute('data-country-code');
  2272.      }
  2273.  },
  2274.    _selectCustomDropdownEntry: function(element, entry) {
  2275.      var _this = langify.recommendation;
  2276.      var currentElem = element.querySelector('.ly-custom-dropdown-current');
  2277.      var currentIcon = currentElem.querySelector('.ly-icon');        
  2278.      var currentLabel = currentElem.querySelector('span');
  2279.      var valueToSelect = '';
  2280.      if(element.classList.contains('ly-languages-switcher')) {
  2281.        _this.el.languageCodeField.value = entry.getAttribute('data-ly-code');
  2282.        valueToSelect = entry.getAttribute('data-ly-code');
  2283.      }
  2284.      if(element.classList.contains('ly-country-switcher')) {
  2285.        _this.el.currencyCodeField.value = entry.getAttribute('data-currency');
  2286.        _this.el.countryCodeField.value = entry.getAttribute('data-country-code');
  2287.        valueToSelect = entry.getAttribute('data-country-code')+'-'+entry.getAttribute('data-currency');
  2288.      }
  2289.      if(element.classList.contains('ly-currency-switcher')) {
  2290.        _this.el.currencyCodeField.value = entry.getAttribute('data-currency');
  2291.        _this.el.countryCodeField.value = '';
  2292.        valueToSelect = entry.getAttribute('data-currency');
  2293.      }
  2294.      if(element.querySelector('.ly-custom-dropdown-list li.current')) {
  2295.        element.querySelector('.ly-custom-dropdown-list li.current').classList.remove('current');  
  2296.        element.querySelector('.ly-custom-dropdown-list li[key="'+ valueToSelect +'"]').classList.add('current');  
  2297.      }
  2298.      if(element.querySelector('.ly-custom-dropdown-list li.current span')) currentLabel.innerHTML = element.querySelector('.ly-custom-dropdown-list li.current span').innerHTML;
  2299.      if(element.querySelector('.ly-custom-dropdown-list li.current .ly-icon')) currentIcon.classList = element.querySelector('.ly-custom-dropdown-list li.current .ly-icon').classList;
  2300.    },
  2301.    toggleOpen: function(e) {
  2302.      e.closest('.ly-recommendation').classList.toggle('ly-is-open');
  2303.      if(!e.closest('.ly-recommendation').classList.contains('ly-is-open')) {
  2304.        langify.helper.setCookie('ly-lang-selected', this.recommendated, 365);
  2305.      }
  2306.    },
  2307.  };
  2308.  langify.languageDetection = langify.languageDetection || {
  2309.    init: function() {
  2310.      var currentLang = langify.locale.iso_code;
  2311.      if(langify.helper.getVal('redirected') === 'true') {
  2312.        langify.helper.setCookie('ly-lang-selected', "fr", 365);
  2313.        var _href = window.location.href;
  2314.        history.replaceState(null, '', _href.replace(/(\?|&)(redirected=true)/i, ''));
  2315.      }
  2316.      var userLang = navigator.language || navigator.userLanguage;
  2317.      var bot = /bot|google|baidu|bing|msn|duckduckbot|teoma|slurp|yandex|Chrome-Lighthouse/i.test(navigator.userAgent);
  2318.      var blockedRoutes = window.lyBlockedRoutesList || [];
  2319.      var blockedRoute = blockedRoutes.find(x => window.location.pathname.indexOf(x) === 0);
  2320.      var is404 = document.getElementsByClassName('template-404').length;
  2321.      if(!langify.helper.inIframe() && !is404 && !bot && !blockedRoute && langify.helper.getVal('ly-lang-detect') !== 'off') {
  2322.        if(userLang && !langify.helper.getCookie('ly-lang-selected')) {
  2323.          var rootUrl = languageUrls[userLang];
  2324.          if(!rootUrl) {
  2325.            userLang = userLang.substring(0, 2);
  2326.            rootUrl = languageUrls[userLang];
  2327.          }
  2328.          if(!rootUrl) {
  2329.            for(var lang in languageUrls) {
  2330.              if(lang.substring(0, 2) === userLang) {
  2331.                userLang = lang;
  2332.                rootUrl = languageUrls[userLang];
  2333.              }
  2334.            }
  2335.          }
  2336.          if(rootUrl) {
  2337.            if(currentLang !== userLang) {
  2338.              langify.helper.setCookie('ly-lang-selected', userLang, 365);
  2339.              this.redirect(rootUrl);
  2340.            }
  2341.          }
  2342.        } else {
  2343.          if(langify.helper.getCookie('ly-lang-selected') && langify.helper.getCookie('ly-lang-selected') !== currentLang) {
  2344.            if(languageUrls[langify.helper.getCookie('ly-lang-selected')]) {
  2345.              // Only save cookie when the domain feature is active
  2346.              if(langify.helper.isDomainFeatureEnabled()) {
  2347.                langify.helper.setCookie('ly-lang-selected', currentLang, 365);
  2348.              }
  2349.              this.redirect(languageUrls[langify.helper.getCookie('ly-lang-selected')]);
  2350.            }
  2351.          }
  2352.        }
  2353.      }
  2354.      this._fixDomainCookies();
  2355.      this._geolocationAppSupport();
  2356.    },
  2357.    redirect: function(url) {
  2358.      var params = window.location.search;
  2359.      var link = document.createElement("a");
  2360.      var append = '';
  2361.      // Only append when redirecting to another domain
  2362.      if(langify.helper.isDomainFeatureEnabled()) {
  2363.        append = '?redirected=true';
  2364.        if(params.indexOf('?') >= 0) {
  2365.          append = '&redirected=true';
  2366.        }
  2367.      }
  2368.      link.setAttribute('data-ly-locked', 'true');
  2369.      link.href = url + params + append;
  2370.      document.body.appendChild(link);
  2371.      link.click();
  2372.    },
  2373.    _fixDomainCookies: function() {
  2374.      // FIX: Language Detection + Domain Feature
  2375.      if(!langify.locale.languages.find(function(lang) {return (lang.iso_code === langify.locale.iso_code)}).domain) return false;
  2376.      function lyHandleLinkClick(e) {
  2377.        var target = e.currentTarget;
  2378.        if(target.href.indexOf('redirected=true') >= 0) return false;
  2379.        e.preventDefault();
  2380.        var append = '?redirected=true';
  2381.        if(target.href.indexOf('?') >= 0) {
  2382.          append = '&redirected=true';
  2383.        }
  2384.        target.href = target.href + append;
  2385.        target.removeEventListener('click', lyHandleLinkClick);
  2386.        target.click();
  2387.      }
  2388.      window.onload = function () {
  2389.        document.querySelectorAll('.ly-languages-switcher-link').forEach(item => {
  2390.          item.addEventListener('click', lyHandleLinkClick);
  2391.        });
  2392.      }  
  2393.    },
  2394.    _geolocationAppSupport: function() {
  2395.      var target = document.querySelector('body');
  2396.      var config = { childList: true, subtree: true };
  2397.      var geolocationObserver = new MutationObserver(function(mutations) {
  2398.        mutations.forEach(function(mutation) {
  2399.          if (mutation.type === 'childList' && mutation.addedNodes.length > 0) {
  2400.            var target = mutation.target.getElementsByClassName('locale-bar__form');
  2401.            if(target[0]) {
  2402.              target[0].onsubmit = function() {
  2403.                var locale_code = target[0].elements['locale_code'].value;
  2404.                var selector = target[0].getElementsByClassName('locale-bar__selector');
  2405.                if(selector.length >= 1) {
  2406.                  locale_code = selector[0].options[selector[0].selectedIndex].value;
  2407.                }
  2408.                langify.helper.setCookie('ly-lang-selected', locale_code, 365);
  2409.              };
  2410.            }
  2411.            var selectors = mutation.target.getElementsByClassName('locale-selectors__selector');
  2412.            if(selectors.length > 0) {
  2413.              for(var selector of selectors) {
  2414.                if(selector.getAttribute('name') === 'locale_code') {
  2415.                  selector.onchange = function() {
  2416.                    var locale_code = selector.options[selector.selectedIndex].value;
  2417.                    langify.helper.setCookie('ly-lang-selected', locale_code, 365);
  2418.                  };        
  2419.                }
  2420.              }
  2421.            }
  2422.          }
  2423.        });
  2424.      });
  2425.      geolocationObserver.observe(target, config);
  2426.      setTimeout(function() {
  2427.        geolocationObserver.disconnect();
  2428.      }, 10000);
  2429.    }
  2430.  };
  2431.  langify.core = langify.core || {
  2432.    onComplete: function() {
  2433.      var root_url = langify.locale.root_url != '/' ? langify.locale.root_url : '';
  2434.      lyShopifyAPI.attributeToString = function(attribute) {
  2435.        if((typeof attribute) !== 'string') {
  2436.          attribute += '';
  2437.          if(attribute === 'undefined') {attribute = '';}
  2438.        }
  2439.        return attribute.trim();
  2440.      };
  2441.      lyShopifyAPI.getCart = function(callback) {
  2442.        langify.helper.ajax({
  2443.          method: 'GET',
  2444.          url: root_url+'/cart.js',
  2445.          success: function (cart, textStatus) {
  2446.            if((typeof callback) === 'function') {
  2447.              callback(cart);
  2448.            }
  2449.          }
  2450.        });
  2451.      };
  2452.      lyShopifyAPI.updateCartNote = function(note, callback) {
  2453.        var params = {
  2454.          method: 'POST',
  2455.          url: root_url+'/cart/update.js',
  2456.          data: 'note=' + this.attributeToString(note),
  2457.          dataType: 'json',
  2458.          success: function(cart) {if((typeof callback) === 'function') {callback(cart);}},
  2459.          error: this.onError
  2460.        };
  2461.        langify.helper.ajax(params);
  2462.      };
  2463.      lyShopifyAPI.updateCartAttributes = function(attributes, callback) {
  2464.        var params = {
  2465.          method: 'POST',
  2466.          url: root_url+'/cart/update.js',
  2467.          data: {"attributes": attributes},
  2468.          dataType: 'json',
  2469.          success: function(cart) {
  2470.            if((typeof callback) === 'function') {
  2471.              callback(cart);
  2472.            }
  2473.          },
  2474.          error: this.onError
  2475.        };
  2476.        langify.helper.ajax(params);
  2477.      };
  2478.      lyShopifyAPI.onError = function(XMLHttpRequest, textStatus) {};
  2479.      langify.switcher.init();
  2480.      if(langify.settings.switcher) {
  2481.        if(langify.settings.switcher.recommendation && langify.settings.switcher.recommendation_enabled) {
  2482.          langify.recommendation.init();
  2483.        } else {
  2484.          if(langify.settings.switcher.languageDetection && parseInt(langify.settings.switcher.version.replaceAll('.', '')) >= 300) {
  2485.            langify.languageDetection.init();
  2486.          }        
  2487.        }
  2488.      }
  2489.    },
  2490.    init: function() {
  2491.      var lyForceOff = location.search.split('ly-force-off=')[1];
  2492.      if(lyForceOff == 'true') {
  2493.        document.getElementById('preview-bar-iframe').classList.add('ly-hide');
  2494.        return false;
  2495.      }
  2496.      langify.core.onComplete();
  2497.      if(langify.settings.theme && ((langify.settings.theme.loadJquery && langify.settings.theme.loadJquery === true) || typeof langify.settings.theme.loadJquery === 'undefined')) {
  2498.        if(typeof jQuery === 'undefined') {
  2499.          langify.loader.loadScript('https://cdn.jsdelivr.net/jquery/1.9.1/jquery.min.js', function() {});
  2500.        }
  2501.      }
  2502.    }
  2503.  };
  2504.  !function(e,t){typeof module!="undefined"?module.exports=t():typeof define=="function"&&typeof define.amd=="object"?define(t):this[e]=t()}("domready",function(){var e=[],t,n=typeof document=="object"&&document,r=n&&n.documentElement.doScroll,i="DOMContentLoaded",s=n&&(r?/^loaded|^c/:/^loaded|^i|^c/).test(n.readyState);return!s&&n&&n.addEventListener(i,t=function(){n.removeEventListener(i,t),s=1;while(t=e.shift())t()}),function(t){s?setTimeout(t,0):e.push(t)}})
  2505.  try { domready(langify.core.init); }
  2506.  catch(error) { langify.core.init(); }
  2507.  // Polyfills
  2508.  (function () {
  2509.    if ( typeof window.CustomEvent === "function" ) return false;
  2510.    function CustomEvent ( event, params ) {
  2511.      params = params || { bubbles: false, cancelable: false, detail: null };
  2512.      var evt = document.createEvent( 'CustomEvent' );
  2513.      evt.initCustomEvent( event, params.bubbles, params.cancelable, params.detail );
  2514.      return evt;
  2515.    }
  2516.    window.CustomEvent = CustomEvent;
  2517.  })();
  2518. </script>
  2519. <div data-breakpoint="" class="ly-switcher-wrapper ly-breakpoint-1 fixed bottom_right ly-hide" style="font-size: 14px; margin: 0px 0px; ">
  2520. <div data-dropup="false" onclick="langify.switcher.toggleSwitcherOpen(this)" class="ly-languages-switcher ly-custom-dropdown-switcher ly-bright-theme" style=" margin: 0px 0px;">
  2521. <span class="ly-custom-dropdown-current" style="background: #ffffff; color: #000000; "><i class="ly-icon ly-flag-icon ly-flag-icon-fr"></i><span class="ly-custom-dropdown-current-inner ly-custom-dropdown-current-inner-text">français</span>
  2522. <div class="ly-arrow ly-arrow-black stroke" style="vertical-align: middle; width: 14.0px; height: 14.0px;">
  2523. <svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 14.0 14.0" height="14.0px" width="14.0px" style="position: absolute;">
  2524. <path d="M1 4.5 L7.0 10.5 L13.0 4.5" fill="transparent" stroke="#000000" stroke-width="1px"/>
  2525. </svg>
  2526. </div>
  2527. </span>
  2528. <ul class="ly-custom-dropdown-list ly-is-open ly-bright-theme" style="background: #ffffff; color: #000000; ">
  2529. <li key="en" style="color: #000000; margin: 0px 0px;">
  2530. <a class="ly-custom-dropdown-list-element ly-languages-switcher-link ly-bright-theme" href="https://karmineshop.com/en" data-ly-code="en" data-ly-locked="true"><i class="ly-icon ly-flag-icon ly-flag-icon-en"></i><span class="ly-custom-dropdown-list-element-right">English</span></a>
  2531. </li>
  2532. <li key="fr" class="current" style="color: #000000; margin: 0px 0px;">
  2533. <a class="ly-custom-dropdown-list-element ly-languages-switcher-link ly-bright-theme current_lang" href="https://karmineshop.com/" data-ly-code="fr" data-ly-locked="true"><i class="ly-icon ly-flag-icon ly-flag-icon-fr"></i><span class="ly-custom-dropdown-list-element-right">French</span></a>
  2534. </li>
  2535. </ul>
  2536. </div>
  2537. </div>
  2538. <form method="post" action="https://karmineshop.com/localization" id="currency_switcher_form" accept-charset="UTF-8" class="shopify-localization-form" enctype="multipart/form-data">
  2539. <input type="hidden" name="form_type" value="localization"/><input type="hidden" name="utf8" value="✓"/><input type="hidden" name="_method" value="put"/><input type="hidden" name="return_to" value="/"/>
  2540. <input type="hidden" name="currency_code" value="EUR">
  2541. <input type="hidden" name="country_code" value="FR">
  2542. <input type="hidden" name="language_code" value="fr"></form>
  2543. <style>
  2544.    .ly-flag-icon-fr { background-image: url('https://cdn.shopify.com/s/files/1/0533/5652/7801/t/35/assets/ly-icon-fr.svg?v=49424167760593335881671109669'); }
  2545.    .ly-flag-icon-en { background-image: url('https://cdn.shopify.com/s/files/1/0533/5652/7801/t/35/assets/ly-icon-en.svg?v=168749326791323067301671109669'); }
  2546.  .ly-switcher-wrapper {
  2547.  }
  2548.  .ly-switcher-wrapper.fixed {
  2549.    position: fixed;
  2550.    z-index: 1000;
  2551.  }
  2552.  .ly-switcher-wrapper.absolute {
  2553.    position: absolute;
  2554.    z-index: 1000;
  2555.  }
  2556.  .ly-switcher-wrapper.fixed.top_left,
  2557.  .ly-switcher-wrapper.absolute.top_left {
  2558.    top: 0;
  2559.    left: 0;
  2560.  }
  2561.  .ly-switcher-wrapper.fixed.top_right,
  2562.  .ly-switcher-wrapper.absolute.top_right {
  2563.    top: 0;
  2564.    right: 0;
  2565.  }
  2566.  .ly-switcher-wrapper.fixed.bottom_left,
  2567.  .ly-switcher-wrapper.absolute.bottom_left {
  2568.    bottom: 0;
  2569.    left: 0;
  2570.  }
  2571.  .ly-switcher-wrapper.fixed.bottom_right,
  2572.  .ly-switcher-wrapper.absolute.bottom_right {
  2573.    bottom: 0;
  2574.    right: 0;
  2575.  }
  2576.  .ly-switcher-wrapper .shopify-currency-form {
  2577.    display: inline-block;
  2578.  }
  2579.  .ly-currency-switcher {
  2580.    font-size: 1em;
  2581.  }
  2582.  .ly-inner-text {
  2583.    margin: 0 0.2em;
  2584.    white-space: nowrap;
  2585.  }
  2586.  .ly-flag-icon {
  2587.    background-size: contain;
  2588.    background-position: 50%;
  2589.    background-repeat: no-repeat;
  2590.    position: relative;
  2591.    display: inline-block;
  2592.    width: 1.33333333em;
  2593.    line-height: 1em;
  2594.  }
  2595.  .ly-flag-icon:before {
  2596.    content: '';
  2597.    display: inline-block;
  2598.  }
  2599.  .ly-flag-icon.ly-flag-squared {
  2600.    width: 1em;
  2601.  }
  2602.  .ly-flag-icon.ly-flag-rounded {
  2603.    width: 1em;
  2604.    border-radius: 50%;
  2605.  }
  2606.  .ly-languages-switcher {
  2607.    white-space: nowrap;
  2608.    list-style-type: none;
  2609.    display: inline-block;
  2610.    font-size: 1em;
  2611.  }
  2612.  .ly-languages-switcher-link {
  2613.    margin: 0 0.2em;
  2614.    cursor: pointer;
  2615.    white-space: nowrap;
  2616.    text-decoration: none;
  2617.    display: inline-block;
  2618.  }
  2619.  .ly-languages-switcher.ly-list {
  2620.    margin: 0;
  2621.    padding: 0;
  2622.    display: block;
  2623.  }
  2624.  .ly-languages-switcher.ly-native-select {
  2625.  }
  2626.  .ly-icon {
  2627.    margin: 0 0.2em;
  2628.  }
  2629.  .ly-arrow {
  2630.    display: inline-block;
  2631.    position: relative;
  2632.    vertical-align: middle;
  2633.    direction: ltr !important;
  2634.    -webkit-transition: transform 0.25s;
  2635.    -moz-transition: transform 0.25s;
  2636.    transition: transform 0.25s;
  2637.    margin: 0 0.2em;
  2638.  }
  2639.  .ly-custom-dropdown-switcher.ly-is-open .ly-arrow {
  2640.    transform: rotate(180deg);
  2641.  }
  2642.  .ly-custom-dropdown-switcher.ly-arrow.ly-arrow-up {
  2643.    transform: rotate(180deg);
  2644.  }
  2645.  .ly-custom-dropdown-switcher.ly-is-open .ly-arrow.ly-arrow-up {
  2646.    transform: rotate(0deg);
  2647.  }
  2648.  .ly-custom-dropdown-switcher {
  2649.    text-align: left;
  2650.    display: inline-block;
  2651.    position: relative;
  2652.    user-select: none;
  2653.    cursor: pointer;
  2654.  }
  2655.  .ly-custom-dropdown-current {
  2656.    display: block;
  2657.    vertical-align: middle;
  2658.  }
  2659.  .ly-custom-dropdown-current-inner {
  2660.    display: inline-block;
  2661.    vertical-align: middle;
  2662.  }
  2663.  .ly-custom-dropdown-current-inner-image {
  2664.    margin-right: 0.25em;
  2665.  }
  2666.  .ly-custom-dropdown-current-inner-text {
  2667.    margin: 0 0.2em;
  2668.  }
  2669.  .ly-custom-dropdown-list {
  2670.    display: none !important;
  2671.    list-style: none;
  2672.    position: absolute;
  2673.    left: 0;
  2674.    padding: inherit !important;
  2675.    padding: 0 !important;
  2676.    margin: 0;
  2677.    z-index: 99999;
  2678.    text-align: left;
  2679.    width: 100%;
  2680.    font-size: 1em;
  2681.  }
  2682.  .ly-custom-dropdown-list-element {
  2683.    color: inherit !important;
  2684.    display: block;
  2685.  }
  2686.  .ly-custom-dropdown-list > li {
  2687.    margin: 0 !important;
  2688.    display: block;
  2689.  }
  2690.  .ly-custom-dropdown-list-element-left {
  2691.    margin-right: 0.5em;
  2692.  }
  2693.  .ly-custom-dropdown-list-element-right {
  2694.    text-align: left;
  2695.  }
  2696.  .ly-custom-dropdown-list-element-left,
  2697.  .ly-custom-dropdown-list-element-right {
  2698.    vertical-align: middle;
  2699.  }
  2700.  .ly-custom-dropdown-switcher .ly-languages-switcher-link {
  2701.    margin: 0;
  2702.  }
  2703.  .ly-languages-switcher-dropdown {
  2704.    display: inline-block;
  2705.  }
  2706.  .ly-languages-links-switcher {
  2707.    display: inline-block;
  2708.  }
  2709.  .ly-languages-links-switcher > .ly-languages-link {
  2710.    /*margin-right: 0.5em;*/
  2711.    padding: inherit !important;
  2712.    color: inherit !important;
  2713.  }
  2714.  .ly-custom-dropdown-list-element {
  2715.    /*padding: inherit !important;*/
  2716.    text-decoration: none;
  2717.  }
  2718.  .ly-is-uppercase {
  2719.    text-transform: uppercase;
  2720.  }
  2721.  .ly-is-transparent.ly-links,
  2722.  .ly-is-transparent.ly-list,
  2723.  .ly-is-transparent.ly-currency-switcher,
  2724.  .ly-is-transparent.ly-custom-dropdown-switcher,
  2725.  .ly-is-transparent.ly-custom-dropdown-switcher .ly-custom-dropdown-list {
  2726.    background: transparent !important;
  2727.  }
  2728.  .ly-arrow-up {
  2729.    transform: rotateZ(180deg);
  2730.  }
  2731.  .ly-custom-dropdown-switcher .ly-custom-dropdown-list li.current{
  2732.    display: none;
  2733.  }
  2734.  .ly-custom-dropdown-switcher.ly-is-open .ly-custom-dropdown-list {
  2735.    display: flex !important;
  2736.    min-width: 100%;
  2737.    width: auto;
  2738.    flex-direction: column-reverse;
  2739.    right: 0;
  2740.    left: auto;
  2741.    overflow: auto;
  2742.    max-height: 350px;
  2743.    max-height: 50vh;
  2744.  }
  2745.  .ly-is-dropup .ly-custom-dropdown-list {
  2746.    bottom: 100%;
  2747.  }
  2748.  .ly-hide {
  2749.    display: none !important;
  2750.  }
  2751.  body.ly-force-off #preview-bar-iframe,
  2752.  body.ly-force-off .ly-languages-switcher {
  2753.    display: none !important;
  2754.  }
  2755.  .ly-close {
  2756.    position: absolute;
  2757.    opacity: 0.3;
  2758.    width: 1em;
  2759.    height: 1em;
  2760.    right: 1em;
  2761.    top: 1em;
  2762.    transform: translateX(-50%);
  2763.  }
  2764.  .ly-close:hover {
  2765.    opacity: 1;
  2766.  }
  2767.  .ly-close:before, .ly-close:after {
  2768.    position: absolute;
  2769.    left: 1em;
  2770.    content: ' ';
  2771.    height: 1em;
  2772.    width: 2px;
  2773.    background-color: #333;
  2774.  }
  2775.  .ly-close:before {
  2776.    transform: rotate(45deg);
  2777.  }
  2778.  .ly-close:after {
  2779.    transform: rotate(-45deg);
  2780.  }
  2781.  .ly-popup-switcher {}
  2782.  .ly-popup-switcher .ly-popup-current {
  2783.    cursor: pointer;
  2784.    background: transparent;
  2785.  }
  2786.  .ly-popup-switcher .ly-popup-modal {
  2787.    position: fixed;
  2788.    z-index: 1000;
  2789.    top: 0;
  2790.    left: 0;
  2791.    width: 100%;
  2792.    height: 100%;
  2793.    display: none;
  2794.    justify-content: center;
  2795.    align-items: center;
  2796.  }
  2797.  .ly-popup-switcher.ly-is-open .ly-popup-modal {
  2798.    display: flex;
  2799.  }
  2800.  .ly-popup-switcher .ly-popup-modal-backdrop {
  2801.    position: fixed;
  2802.    width: 100%;
  2803.    height: 100%;
  2804.    z-index: 0;
  2805.    top: 0;
  2806.    left: 0;
  2807.    background:rgba(0, 0, 0, 0.38);
  2808.    cursor: pointer;
  2809.  }
  2810.  .ly-popup-switcher .ly-popup-modal .ly-popup-modal-content {
  2811.    padding: 1em;
  2812.    position: absolute;
  2813.    z-index: 1000;
  2814.  }
  2815.  .ly-popup-switcher .ly-popup-modal .ly-popup-modal-content ul {
  2816.    padding: 0;
  2817.    margin: 12px 0 0 0;
  2818.    list-style: none;
  2819.  }
  2820.  .ly-popup-switcher .ly-popup-modal .ly-popup-modal-content ul .ly-languages-switcher-link {
  2821.    margin: 0;
  2822.    border: solid 1px;
  2823.    padding: 1em;
  2824.    display: block;
  2825.    min-width: 225px;
  2826.    margin-top: 1em;
  2827.  }
  2828.  .ly-popup-switcher .ly-popup-modal .ly-popup-modal-content ul .ly-languages-switcher-link.current_lang {
  2829.    display: none;
  2830.  }
  2831.  /* Recommendation */
  2832.  .ly-recommendation {
  2833.    display: none;
  2834.  }
  2835.  .ly-recommendation.ly-is-open {
  2836.    display: inline-block;
  2837.  }
  2838.  .ly-recommendation form {
  2839.    display: inline-block;
  2840.  }
  2841.  .ly-recommendation .ly-arrow,
  2842.  .ly-arrow.recommendation {
  2843.    display: none;
  2844.  }
  2845.  .ly-recommendation .ly-arrow.recommendation {
  2846.    display: inline-block;
  2847.  }
  2848.  .ly-recommendation .ly-switcher-wrapper {
  2849.    font-size: 1em !important;
  2850.  }
  2851.  .ly-recommendation .ly-popup-modal .ly-popup-switcher .ly-popup-modal .ly-popup-modal-backdrop {
  2852.    display: none;
  2853.  }
  2854.  /* Recommendation Banner */
  2855.  .ly-recommendation .ly-banner {
  2856.    position: fixed;
  2857.    z-index: 100000;
  2858.    width: 100%;
  2859.  }
  2860.  .ly-recommendation .ly-banner .ly-banner-content {
  2861.    width: 100%;
  2862.    padding: 1em 30px 1em 1em;
  2863.    box-shadow: 0 0 20px rgba(0,0,0,.25);
  2864.  }
  2865.  .ly-recommendation .ly-banner.top {
  2866.    top: 0;
  2867.  }
  2868.  .ly-recommendation .ly-banner.bottom {
  2869.    bottom: 0;
  2870.  }
  2871.  .ly-recommendation .ly-banner .ly-banner-content .ly-switcher-wrapper {
  2872.    position: relative !important;
  2873.    margin: 0 !important;
  2874.    display: inline-block !important;
  2875.  }
  2876.  .ly-recommendation .ly-banner .ly-recommendation-form button[type="submit"] {
  2877.    margin-left: 10px;
  2878.  }
  2879.  /* Recommendation Popup */
  2880.  .ly-recommendation .ly-popup-modal {
  2881.    position: fixed;
  2882.    z-index: 10000;
  2883.  }
  2884.  .ly-recommendation .ly-popup-modal .ly-switcher-wrapper {
  2885.    position: relative !important;
  2886.    margin: 0 !important;
  2887.    display: inline-block !important;
  2888.  }
  2889.  .ly-recommendation .ly-popup-modal-backdrop {
  2890.    position: fixed;
  2891.    width: 100%;
  2892.    height: 100%;
  2893.    z-index: 1000;
  2894.    top: 0;
  2895.    left: 0;
  2896.    background:rgba(0, 0, 0, 0.38);
  2897.  }
  2898.  .ly-recommendation .ly-popup-modal .ly-popup-modal-content {
  2899.    padding: 1em 30px 1em 1em;
  2900.  }
  2901.  .ly-recommendation .ly-popup-modal .ly-popup-modal-content .ly-languages-switcher {
  2902.    position: relative !important;
  2903.    margin: 0 !important;
  2904.  }
  2905.  .ly-recommendation .ly-popup-modal .ly-popup-modal-content h3 {
  2906.    margin: 0 2em 1em 0;
  2907.    font-size: inherit;
  2908.    position: relative;
  2909.  }
  2910.  .ly-recommendation .ly-popup-modal.top_left { top: 0; left: 0; margin-right: 0 !important; margin-bottom: 0 !important; padding-right: 0 !important; padding-bottom: 0 !important;}
  2911.  .ly-recommendation .ly-popup-modal.top_center { top: 0; left: 50%; transform: translateX(-50%); margin-right: 0 !important; margin-bottom: 0 !important; margin-left: 0 !important; padding-right: 0 !important; padding-bottom: 0 !important; padding-left: 0 !important;}
  2912.  .ly-recommendation .ly-popup-modal.top_right { top: 0; right: 0; margin-left: 0 !important; margin-bottom: 0 !important; padding-left: 0 !important; padding-bottom: 0 !important; }
  2913.  .ly-recommendation .ly-popup-modal.center_center { top: 50%; left: 50%; transform: translateX(-50%) translateY(-50%); margin: 0 !important; padding: 0 !important; }
  2914.  .ly-recommendation .ly-popup-modal.bottom_left { bottom: 0; left: 0; margin-right: 0 !important; margin-top: 0 !important; padding-right: 0 !important; padding-top: 0 !important; }
  2915.  .ly-recommendation .ly-popup-modal.bottom_center { bottom: 0; left: 50%; transform: translateX(-50%); margin-right: 0 !important; margin-left: 0 !important; margin-top: 0 !important; padding-right: 0 !important; padding-left: 0 !important; padding-top: 0 !important; }
  2916.  .ly-recommendation .ly-popup-modal.bottom_right { bottom: 0; right: 0; margin-left: 0 !important; margin-top: 0 !important; padding-left: 0 !important; padding-top: 0 !important; }
  2917. </style>
  2918. <!-- langify-v2-scripts-end --></body>
  2919. </html>
  2920.  
Copyright © 2002-9 Sam Ruby, Mark Pilgrim, Joseph Walton, and Phil Ringnalda