{
  "version": 3,
  "sources": ["/cdn/shop/t/50/assets/theme.js?enable_js_minification=1"],
  "sourcesContent": ["\n\n (function($) {\n      $.fn.hoverIntent = function(handlerIn, handlerOut, selector) {\n        var cfg = {\n          interval: 100,\n          sensitivity: 6,\n          timeout: 50\n        };\n        if (typeof handlerIn === \"object\") {\n          cfg = $.extend(cfg, handlerIn)\n        } else {\n          if ($.isFunction(handlerOut)) {\n            cfg = $.extend(cfg, {\n              over: handlerIn,\n              out: handlerOut,\n              selector: selector\n            })\n          } else {\n            cfg = $.extend(cfg, {\n              over: handlerIn,\n              out: handlerIn,\n              selector: handlerOut\n            })\n          }\n        }\n        var cX, cY, pX, pY;\n        var track = function(ev) {\n          cX = ev.pageX;\n          cY = ev.pageY\n        };\n        var compare = function(ev, ob) {\n          ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t);\n          if (Math.sqrt((pX - cX) * (pX - cX) + (pY - cY) * (pY - cY)) < cfg.sensitivity) {\n            $(ob).off(\"mousemove.hoverIntent\", track);\n            ob.hoverIntent_s = true;\n            return cfg.over.apply(ob, [ev])\n          } else {\n            pX = cX;\n            pY = cY;\n            ob.hoverIntent_t = setTimeout(function() {\n              compare(ev, ob)\n            }, cfg.interval)\n          }\n        };\n        var delay = function(ev, ob) {\n          ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t);\n          ob.hoverIntent_s = false;\n          return cfg.out.apply(ob, [ev])\n        };\n        var handleHover = function(e) {\n          var ev = $.extend({}, e);\n          var ob = this;\n          if (ob.hoverIntent_t) {\n            ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t)\n          }\n          if (e.type === \"mouseenter\") {\n            pX = ev.pageX;\n            pY = ev.pageY;\n            $(ob).on(\"mousemove.hoverIntent\", track);\n            if (!ob.hoverIntent_s) {\n              ob.hoverIntent_t = setTimeout(function() {\n                compare(ev, ob)\n              }, cfg.interval)\n            }\n          } else {\n            $(ob).off(\"mousemove.hoverIntent\", track);\n            if (ob.hoverIntent_s) {\n              ob.hoverIntent_t = setTimeout(function() {\n                delay(ev, ob)\n              }, cfg.timeout)\n            }\n          }\n        };\n        return this.on({\n          \"mouseenter.hoverIntent\": handleHover,\n          \"mouseleave.hoverIntent\": handleHover\n        }, cfg.selector)\n      }\n    })(jQuery);\n\n// ---------------------------------------------------------------------------\n// Image.switchImage\n// helps to switch variant images on variant selection\n// ---------------------------------------------------------------------------\nShopify.Image = {\n  preload: function (images, size) {\n    for (var i=0; i < images.length; i++) {\n      var image = images[i];\n\n      this.loadImage(this.getSizedImageUrl(image, size));\n    }\n  },\n\n  loadImage: function (path) {\n    new Image().src = path;\n  },\n\n  switchImage: function (image, element, callback) {\n    if (!image || !element) {\n      return;\n    }\n\n    var size = this.imageSize(element.src)\n    var imageUrl = this.getSizedImageUrl(image.src, size);\n\n    if (callback) {\n      callback(imageUrl, image, element);\n    } else {\n      element.src = imageUrl;\n    }\n  },\n\n  imageSize: function (src) {\n    var match = src.match(/_(1024x1024|2048x2048|pico|icon|thumb|small|compact|medium|large|grande)\\./);\n\n    if (match != null) {\n      return match[1];\n    } else {\n      return null;\n    }\n  },\n\n  getSizedImageUrl: function (src, size) {\n    if (size == null) {\n      return src;\n    }\n\n    if (size == 'master') {\n      return this.removeProtocol(src);\n    }\n\n    var match  = src.match(/\\.(jpg|jpeg|gif|png|bmp|bitmap|tiff|tif)(\\?v=\\d+)?$/i);\n\n    if (match != null) {\n      var prefix = src.split(match[0]);\n      var suffix = match[0];\n\n      return this.removeProtocol(prefix[0] + \"_\" + size + suffix);\n    } else {\n      return null;\n    }\n  },\n\n  removeProtocol: function (path) {\n    return path.replace(/http(s)?:/, \"\");\n  }\n};\n\n\n/*! @vimeo/player v2.8.1 | (c) 2019 Vimeo | MIT License | https://github.com/vimeo/player.js */\n!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):((e=e||self).Vimeo=e.Vimeo||{},e.Vimeo.Player=t())}(this,function(){\"use strict\";function r(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,\"value\"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}var e=\"undefined\"!=typeof global&&\"[object global]\"==={}.toString.call(global);function i(e,t){return 0===e.indexOf(t.toLowerCase())?e:\"\".concat(t.toLowerCase()).concat(e.substr(0,1).toUpperCase()).concat(e.substr(1))}function s(e){return/^(https?:)?\\/\\/((player|www)\\.)?vimeo\\.com(?=$|\\/)/.test(e)}function l(){var e,t=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},n=t.id,r=t.url,o=n||r;if(!o)throw new Error(\"An id or url must be passed, either in an options object or as a data-vimeo-id or data-vimeo-url attribute.\");if(e=o,!isNaN(parseFloat(e))&&isFinite(e)&&Math.floor(e)==e)return\"https://vimeo.com/\".concat(o);if(s(o))return o.replace(\"http:\",\"https:\");if(n)throw new TypeError(\"\u201C\".concat(n,\"\u201D is not a valid video id.\"));throw new TypeError(\"\u201C\".concat(o,\"\u201D is not a vimeo.com url.\"))}var t=void 0!==Array.prototype.indexOf,n=\"undefined\"!=typeof window&&void 0!==window.postMessage;if(!(e||t&&n))throw new Error(\"Sorry, the Vimeo Player API is not available in this browser.\");var o=\"undefined\"!=typeof window?window:\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:{};!function(e){if(!e.WeakMap){var n=Object.prototype.hasOwnProperty,o=function(e,t,n){Object.defineProperty?Object.defineProperty(e,t,{configurable:!0,writable:!0,value:n}):e[t]=n};e.WeakMap=function(){function e(){if(void 0===this)throw new TypeError(\"Constructor WeakMap requires 'new'\");if(o(this,\"_id\",\"_WeakMap\"+\"_\"+t()+\".\"+t()),0<arguments.length)throw new TypeError(\"WeakMap iterable is not supported\")}function r(e,t){if(!i(e)||!n.call(e,\"_id\"))throw new TypeError(t+\" method called on incompatible receiver \"+typeof e)}function t(){return Math.random().toString().substring(2)}return o(e.prototype,\"delete\",function(e){if(r(this,\"delete\"),!i(e))return!1;var t=e[this._id];return!(!t||t[0]!==e)&&(delete e[this._id],!0)}),o(e.prototype,\"get\",function(e){if(r(this,\"get\"),i(e)){var t=e[this._id];return t&&t[0]===e?t[1]:void 0}}),o(e.prototype,\"has\",function(e){if(r(this,\"has\"),!i(e))return!1;var t=e[this._id];return!(!t||t[0]!==e)}),o(e.prototype,\"set\",function(e,t){if(r(this,\"set\"),!i(e))throw new TypeError(\"Invalid value used as weak map key\");var n=e[this._id];return n&&n[0]===e?n[1]=t:o(e,this._id,[e,t]),this}),o(e,\"_polyfill\",!0),e}()}function i(e){return Object(e)===e}}(\"undefined\"!=typeof self?self:\"undefined\"!=typeof window?window:o);var a,f=(function(e){var t,n,r;r=function(){var t,a,n,e=Object.prototype.toString,r=\"undefined\"!=typeof setImmediate?function(e){return setImmediate(e)}:setTimeout;try{Object.defineProperty({},\"x\",{}),t=function(e,t,n,r){return Object.defineProperty(e,t,{value:n,writable:!0,configurable:!1!==r})}}catch(e){t=function(e,t,n){return e[t]=n,e}}function i(e,t){n.add(e,t),a||(a=r(n.drain))}function u(e){var t,n=typeof e;return null==e||\"object\"!=n&&\"function\"!=n||(t=e.then),\"function\"==typeof t&&t}function c(){for(var e=0;e<this.chain.length;e++)o(this,1===this.state?this.chain[e].success:this.chain[e].failure,this.chain[e]);this.chain.length=0}function o(e,t,n){var r,o;try{!1===t?n.reject(e.msg):(r=!0===t?e.msg:t.call(void 0,e.msg))===n.promise?n.reject(TypeError(\"Promise-chain cycle\")):(o=u(r))?o.call(r,n.resolve,n.reject):n.resolve(r)}catch(e){n.reject(e)}}function s(e){var t=this;t.triggered||(t.triggered=!0,t.def&&(t=t.def),t.msg=e,t.state=2,0<t.chain.length&&i(c,t))}function l(e,n,r,o){for(var t=0;t<n.length;t++)!function(t){e.resolve(n[t]).then(function(e){r(t,e)},o)}(t)}function f(e){this.def=e,this.triggered=!1}function d(e){this.promise=e,this.state=0,this.triggered=!1,this.chain=[],this.msg=void 0}function h(e){if(\"function\"!=typeof e)throw TypeError(\"Not a function\");if(0!==this.__NPO__)throw TypeError(\"Not a promise\");this.__NPO__=1;var r=new d(this);this.then=function(e,t){var n={success:\"function\"!=typeof e||e,failure:\"function\"==typeof t&&t};return n.promise=new this.constructor(function(e,t){if(\"function\"!=typeof e||\"function\"!=typeof t)throw TypeError(\"Not a function\");n.resolve=e,n.reject=t}),r.chain.push(n),0!==r.state&&i(c,r),n.promise},this.catch=function(e){return this.then(void 0,e)};try{e.call(void 0,function(e){(function e(n){var r,o=this;if(!o.triggered){o.triggered=!0,o.def&&(o=o.def);try{(r=u(n))?i(function(){var t=new f(o);try{r.call(n,function(){e.apply(t,arguments)},function(){s.apply(t,arguments)})}catch(e){s.call(t,e)}}):(o.msg=n,o.state=1,0<o.chain.length&&i(c,o))}catch(e){s.call(new f(o),e)}}}).call(r,e)},function(e){s.call(r,e)})}catch(e){s.call(r,e)}}n=function(){var n,r,o;function i(e,t){this.fn=e,this.self=t,this.next=void 0}return{add:function(e,t){o=new i(e,t),r?r.next=o:n=o,r=o,o=void 0},drain:function(){var e=n;for(n=r=a=void 0;e;)e.fn.call(e.self),e=e.next}}}();var v=t({},\"constructor\",h,!1);return t(h.prototype=v,\"__NPO__\",0,!1),t(h,\"resolve\",function(n){return n&&\"object\"==typeof n&&1===n.__NPO__?n:new this(function(e,t){if(\"function\"!=typeof e||\"function\"!=typeof t)throw TypeError(\"Not a function\");e(n)})}),t(h,\"reject\",function(n){return new this(function(e,t){if(\"function\"!=typeof e||\"function\"!=typeof t)throw TypeError(\"Not a function\");t(n)})}),t(h,\"all\",function(t){var a=this;return\"[object Array]\"!=e.call(t)?a.reject(TypeError(\"Not an array\")):0===t.length?a.resolve([]):new a(function(n,e){if(\"function\"!=typeof n||\"function\"!=typeof e)throw TypeError(\"Not a function\");var r=t.length,o=Array(r),i=0;l(a,t,function(e,t){o[e]=t,++i===r&&n(o)},e)})}),t(h,\"race\",function(t){var r=this;return\"[object Array]\"!=e.call(t)?r.reject(TypeError(\"Not an array\")):new r(function(n,e){if(\"function\"!=typeof n||\"function\"!=typeof e)throw TypeError(\"Not a function\");l(r,t,function(e,t){n(t)},e)})}),h},(n=o)[t=\"Promise\"]=n[t]||r(),e.exports&&(e.exports=n[t])}(a={exports:{}},a.exports),a.exports),d=new WeakMap;function u(e,t,n){var r=d.get(e.element)||{};t in r||(r[t]=[]),r[t].push(n),d.set(e.element,r)}function c(e,t){return(d.get(e.element)||{})[t]||[]}function h(e,t,n){var r=d.get(e.element)||{};if(!r[t])return!0;if(!n)return r[t]=[],d.set(e.element,r),!0;var o=r[t].indexOf(n);return-1!==o&&r[t].splice(o,1),d.set(e.element,r),r[t]&&0===r[t].length}var v=[\"autopause\",\"autoplay\",\"background\",\"byline\",\"color\",\"height\",\"id\",\"loop\",\"maxheight\",\"maxwidth\",\"muted\",\"playsinline\",\"portrait\",\"responsive\",\"speed\",\"title\",\"transparent\",\"url\",\"width\"];function p(r){var e=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{};return v.reduce(function(e,t){var n=r.getAttribute(\"data-vimeo-\".concat(t));return(n||\"\"===n)&&(e[t]=\"\"===n?1:n),e},e)}function y(e,t){var n=e.html;if(!t)throw new TypeError(\"An element must be provided\");if(null!==t.getAttribute(\"data-vimeo-initialized\"))return t.querySelector(\"iframe\");var r=document.createElement(\"div\");return r.innerHTML=n,t.appendChild(r.firstChild),t.setAttribute(\"data-vimeo-initialized\",\"true\"),t.querySelector(\"iframe\")}function m(i){var a=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{},u=2<arguments.length?arguments[2]:void 0;return new Promise(function(t,n){if(!s(i))throw new TypeError(\"\u201C\".concat(i,\"\u201D is not a vimeo.com url.\"));var e=\"https://vimeo.com/api/oembed.json?url=\".concat(encodeURIComponent(i),\"&domain=\").concat(window.location.hostname);for(var r in a)a.hasOwnProperty(r)&&(e+=\"&\".concat(r,\"=\").concat(encodeURIComponent(a[r])));var o=\"XDomainRequest\"in window?new XDomainRequest:new XMLHttpRequest;o.open(\"GET\",e,!0),o.onload=function(){if(404!==o.status)if(403!==o.status)try{var e=JSON.parse(o.responseText);if(403===e.domain_status_code)return y(e,u),void n(new Error(\"\u201C\".concat(i,\"\u201D is not embeddable.\")));t(e)}catch(e){n(e)}else n(new Error(\"\u201C\".concat(i,\"\u201D is not embeddable.\")));else n(new Error(\"\u201C\".concat(i,\"\u201D was not found.\")))},o.onerror=function(){var e=o.status?\" (\".concat(o.status,\")\"):\"\";n(new Error(\"There was an error fetching the embed code from Vimeo\".concat(e,\".\")))},o.send()})}function g(e){if(\"string\"==typeof e)try{e=JSON.parse(e)}catch(e){return console.warn(e),{}}return e}function w(e,t,n){if(e.element.contentWindow&&e.element.contentWindow.postMessage){var r={method:t};void 0!==n&&(r.value=n);var o=parseFloat(navigator.userAgent.toLowerCase().replace(/^.*msie (\\d+).*$/,\"$1\"));8<=o&&o<10&&(r=JSON.stringify(r)),e.element.contentWindow.postMessage(r,e.origin)}}function b(n,r){var t,e=[];if((r=g(r)).event){if(\"error\"===r.event)c(n,r.data.method).forEach(function(e){var t=new Error(r.data.message);t.name=r.data.name,e.reject(t),h(n,r.data.method,e)});e=c(n,\"event:\".concat(r.event)),t=r.data}else if(r.method){var o=function(e,t){var n=c(e,t);if(n.length<1)return!1;var r=n.shift();return h(e,t,r),r}(n,r.method);o&&(e.push(o),t=r.value)}e.forEach(function(e){try{if(\"function\"==typeof e)return void e.call(n,t);e.resolve(t)}catch(e){}})}var k=new WeakMap,E=new WeakMap,Player=function(){function Player(u){var e,c=this,n=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{};if(function(e,t){if(!(e instanceof t))throw new TypeError(\"Cannot call a class as a function\")}(this,Player),window.jQuery&&u instanceof jQuery&&(1<u.length&&window.console&&console.warn&&console.warn(\"A jQuery object with multiple elements was passed, using the first element.\"),u=u[0]),\"undefined\"!=typeof document&&\"string\"==typeof u&&(u=document.getElementById(u)),e=u,!Boolean(e&&1===e.nodeType&&\"nodeName\"in e&&e.ownerDocument&&e.ownerDocument.defaultView))throw new TypeError(\"You must pass either a valid element or a valid id.\");var r=u.ownerDocument.defaultView;if(\"IFRAME\"!==u.nodeName){var t=u.querySelector(\"iframe\");t&&(u=t)}if(\"IFRAME\"===u.nodeName&&!s(u.getAttribute(\"src\")||\"\"))throw new Error(\"The player element passed isn\u2019t a Vimeo embed.\");if(k.has(u))return k.get(u);this.element=u,this.origin=\"*\";var o=new f(function(i,a){var e=function(e){if(s(e.origin)&&c.element.contentWindow===e.source){\"*\"===c.origin&&(c.origin=e.origin);var t=g(e.data);if(t&&\"error\"===t.event&&t.data&&\"ready\"===t.data.method){var n=new Error(t.data.message);return n.name=t.data.name,void a(n)}var r=t&&\"ready\"===t.event,o=t&&\"ping\"===t.method;if(r||o)return c.element.setAttribute(\"data-ready\",\"true\"),void i();b(c,t)}};if(r.addEventListener?r.addEventListener(\"message\",e,!1):r.attachEvent&&r.attachEvent(\"onmessage\",e),\"IFRAME\"!==c.element.nodeName){var t=p(u,n);m(l(t),t,u).then(function(e){var t,n,r,o=y(e,u);return c.element=o,c._originalElement=u,t=u,n=o,r=d.get(t),d.set(n,r),d.delete(t),k.set(c.element,c),e}).catch(a)}});return E.set(this,o),k.set(this.element,this),\"IFRAME\"===this.element.nodeName&&w(this,\"ping\"),this}var e,t,n;return e=Player,(t=[{key:\"callMethod\",value:function(n){var r=this,o=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{};return new f(function(e,t){return r.ready().then(function(){u(r,n,{resolve:e,reject:t}),w(r,n,o)}).catch(t)})}},{key:\"get\",value:function(n){var r=this;return new f(function(e,t){return n=i(n,\"get\"),r.ready().then(function(){u(r,n,{resolve:e,reject:t}),w(r,n)}).catch(t)})}},{key:\"set\",value:function(n,r){var o=this;return new f(function(e,t){if(n=i(n,\"set\"),null==r)throw new TypeError(\"There must be a value to set.\");return o.ready().then(function(){u(o,n,{resolve:e,reject:t}),w(o,n,r)}).catch(t)})}},{key:\"on\",value:function(e,t){if(!e)throw new TypeError(\"You must pass an event name.\");if(!t)throw new TypeError(\"You must pass a callback function.\");if(\"function\"!=typeof t)throw new TypeError(\"The callback must be a function.\");0===c(this,\"event:\".concat(e)).length&&this.callMethod(\"addEventListener\",e).catch(function(){}),u(this,\"event:\".concat(e),t)}},{key:\"off\",value:function(e,t){if(!e)throw new TypeError(\"You must pass an event name.\");if(t&&\"function\"!=typeof t)throw new TypeError(\"The callback must be a function.\");h(this,\"event:\".concat(e),t)&&this.callMethod(\"removeEventListener\",e).catch(function(e){})}},{key:\"loadVideo\",value:function(e){return this.callMethod(\"loadVideo\",e)}},{key:\"ready\",value:function(){var e=E.get(this)||new f(function(e,t){t(new Error(\"Unknown player. Probably unloaded.\"))});return f.resolve(e)}},{key:\"addCuePoint\",value:function(e){var t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{};return this.callMethod(\"addCuePoint\",{time:e,data:t})}},{key:\"removeCuePoint\",value:function(e){return this.callMethod(\"removeCuePoint\",e)}},{key:\"enableTextTrack\",value:function(e,t){if(!e)throw new TypeError(\"You must pass a language.\");return this.callMethod(\"enableTextTrack\",{language:e,kind:t})}},{key:\"disableTextTrack\",value:function(){return this.callMethod(\"disableTextTrack\")}},{key:\"pause\",value:function(){return this.callMethod(\"pause\")}},{key:\"play\",value:function(){return this.callMethod(\"play\")}},{key:\"unload\",value:function(){return this.callMethod(\"unload\")}},{key:\"destroy\",value:function(){var t=this;return new f(function(e){E.delete(t),k.delete(t.element),t._originalElement&&(k.delete(t._originalElement),t._originalElement.removeAttribute(\"data-vimeo-initialized\")),t.element&&\"IFRAME\"===t.element.nodeName&&t.element.parentNode&&t.element.parentNode.removeChild(t.element),e()})}},{key:\"getAutopause\",value:function(){return this.get(\"autopause\")}},{key:\"setAutopause\",value:function(e){return this.set(\"autopause\",e)}},{key:\"getBuffered\",value:function(){return this.get(\"buffered\")}},{key:\"getColor\",value:function(){return this.get(\"color\")}},{key:\"setColor\",value:function(e){return this.set(\"color\",e)}},{key:\"getCuePoints\",value:function(){return this.get(\"cuePoints\")}},{key:\"getCurrentTime\",value:function(){return this.get(\"currentTime\")}},{key:\"setCurrentTime\",value:function(e){return this.set(\"currentTime\",e)}},{key:\"getDuration\",value:function(){return this.get(\"duration\")}},{key:\"getEnded\",value:function(){return this.get(\"ended\")}},{key:\"getLoop\",value:function(){return this.get(\"loop\")}},{key:\"setLoop\",value:function(e){return this.set(\"loop\",e)}},{key:\"getPaused\",value:function(){return this.get(\"paused\")}},{key:\"getPlaybackRate\",value:function(){return this.get(\"playbackRate\")}},{key:\"setPlaybackRate\",value:function(e){return this.set(\"playbackRate\",e)}},{key:\"getPlayed\",value:function(){return this.get(\"played\")}},{key:\"getSeekable\",value:function(){return this.get(\"seekable\")}},{key:\"getSeeking\",value:function(){return this.get(\"seeking\")}},{key:\"getTextTracks\",value:function(){return this.get(\"textTracks\")}},{key:\"getVideoEmbedCode\",value:function(){return this.get(\"videoEmbedCode\")}},{key:\"getVideoId\",value:function(){return this.get(\"videoId\")}},{key:\"getVideoTitle\",value:function(){return this.get(\"videoTitle\")}},{key:\"getVideoWidth\",value:function(){return this.get(\"videoWidth\")}},{key:\"getVideoHeight\",value:function(){return this.get(\"videoHeight\")}},{key:\"getVideoUrl\",value:function(){return this.get(\"videoUrl\")}},{key:\"getVolume\",value:function(){return this.get(\"volume\")}},{key:\"setVolume\",value:function(e){return this.set(\"volume\",e)}}])&&r(e.prototype,t),n&&r(e,n),Player}();return e||(function(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:document,t=[].slice.call(e.querySelectorAll(\"[data-vimeo-id], [data-vimeo-url]\")),n=function(e){\"console\"in window&&console.error&&console.error(\"There was an error creating an embed: \".concat(e))};t.forEach(function(t){try{if(null!==t.getAttribute(\"data-vimeo-defer\"))return;var e=p(t);m(l(e),e,t).then(function(e){return y(e,t)}).catch(n)}catch(e){n(e)}})}(),function(){var r=0<arguments.length&&void 0!==arguments[0]?arguments[0]:document;if(!window.VimeoPlayerResizeEmbeds_){window.VimeoPlayerResizeEmbeds_=!0;var e=function(e){if(s(e.origin)&&e.data&&\"spacechange\"===e.data.event)for(var t=r.querySelectorAll(\"iframe\"),n=0;n<t.length;n++)if(t[n].contentWindow===e.source){t[n].parentElement.style.paddingBottom=\"\".concat(e.data.data[0].bottom,\"px\");break}};window.addEventListener?window.addEventListener(\"message\",e,!1):window.attachEvent&&window.attachEvent(\"onmessage\",e)}}()),Player});\n  \n/*\n * Cookie plugin\n *\n * Copyright (c) 2006 Klaus Hartl (stilbuero.de)\n * Dual licensed under the MIT and GPL licenses:\n * http://www.opensource.org/licenses/mit-license.php\n * http://www.gnu.org/licenses/gpl.html\n *\n */\n\njQuery.cookie=function(b,j,m){if(typeof j!=\"undefined\"){m=m||{};if(j===null){j=\"\";m.expires=-1}var e=\"\";if(m.expires&&(typeof m.expires==\"number\"||m.expires.toUTCString)){var f;if(typeof m.expires==\"number\"){f=new Date();f.setTime(f.getTime()+(m.expires*24*60*60*1000))}else{f=m.expires}e=\"; expires=\"+f.toUTCString()}var l=m.path?\"; path=\"+(m.path):\"\";var g=m.domain?\"; domain=\"+(m.domain):\"\";var a=m.secure?\"; secure\":\"\";document.cookie=[b,\"=\",encodeURIComponent(j),e,l,g,a].join(\"\")}else{var d=null;if(document.cookie&&document.cookie!=\"\"){var k=document.cookie.split(\";\");for(var h=0;h<k.length;h++){var c=jQuery.trim(k[h]);if(c.substring(0,b.length+1)==(b+\"=\")){d=decodeURIComponent(c.substring(b.length+1));break}}}return d}};\n\n/**\n* jquery-match-height master by @liabru\n* http://brm.io/jquery-match-height/\n* License: MIT\n*/\n\n;(function(factory) { // eslint-disable-line no-extra-semi\n  'use strict';\n  if (typeof define === 'function' && define.amd) {\n    // AMD\n    define(['jquery'], factory);\n  } else if (typeof module !== 'undefined' && module.exports) {\n    // CommonJS\n    module.exports = factory(require('jquery'));\n  } else {\n    // Global\n    factory(jQuery);\n  }\n})(function($) {\n  /*\n    *  internal\n    */\n\n  var _previousResizeWidth = -1,\n      _updateTimeout = -1;\n\n  /*\n    *  _parse\n    *  value parse utility function\n    */\n\n  var _parse = function(value) {\n    // parse value and convert NaN to 0\n    return parseFloat(value) || 0;\n  };\n\n  /*\n    *  _rows\n    *  utility function returns array of jQuery selections representing each row\n    *  (as displayed after float wrapping applied by browser)\n    */\n\n  var _rows = function(elements) {\n    var tolerance = 1,\n        $elements = $(elements),\n        lastTop = null,\n        rows = [];\n\n    // group elements by their top position\n    $elements.each(function(){\n      var $that = $(this),\n          top = $that.offset().top - _parse($that.css('margin-top')),\n          lastRow = rows.length > 0 ? rows[rows.length - 1] : null;\n\n      if (lastRow === null) {\n        // first item on the row, so just push it\n        rows.push($that);\n      } else {\n        // if the row top is the same, add to the row group\n        if (Math.floor(Math.abs(lastTop - top)) <= tolerance) {\n          rows[rows.length - 1] = lastRow.add($that);\n        } else {\n          // otherwise start a new row group\n          rows.push($that);\n        }\n      }\n\n      // keep track of the last row top\n      lastTop = top;\n    });\n\n    return rows;\n  };\n\n  /*\n    *  _parseOptions\n    *  handle plugin options\n    */\n\n  var _parseOptions = function(options) {\n    var opts = {\n      byRow: true,\n      property: 'height',\n      target: null,\n      remove: false\n    };\n\n    if (typeof options === 'object') {\n      return $.extend(opts, options);\n    }\n\n    if (typeof options === 'boolean') {\n      opts.byRow = options;\n    } else if (options === 'remove') {\n      opts.remove = true;\n    }\n\n    return opts;\n  };\n\n  /*\n    *  matchHeight\n    *  plugin definition\n    */\n\n  var matchHeight = $.fn.matchHeight = function(options) {\n    var opts = _parseOptions(options);\n\n    // handle remove\n    if (opts.remove) {\n      var that = this;\n\n      // remove fixed height from all selected elements\n      this.css(opts.property, '');\n\n      // remove selected elements from all groups\n      $.each(matchHeight._groups, function(key, group) {\n        group.elements = group.elements.not(that);\n      });\n\n      // TODO: cleanup empty groups\n\n      return this;\n    }\n\n    if (this.length <= 1 && !opts.target) {\n      return this;\n    }\n\n    // keep track of this group so we can re-apply later on load and resize events\n    matchHeight._groups.push({\n      elements: this,\n      options: opts\n    });\n\n    // match each element's height to the tallest element in the selection\n    matchHeight._apply(this, opts);\n\n    return this;\n  };\n\n  /*\n    *  plugin global options\n    */\n\n  matchHeight.version = 'master';\n  matchHeight._groups = [];\n  matchHeight._throttle = 80;\n  matchHeight._maintainScroll = true;\n  matchHeight._beforeUpdate = null;\n  matchHeight._afterUpdate = null;\n  matchHeight._rows = _rows;\n  matchHeight._parse = _parse;\n  matchHeight._parseOptions = _parseOptions;\n\n  /*\n    *  matchHeight._apply\n    *  apply matchHeight to given elements\n    */\n\n  matchHeight._apply = function(elements, options) {\n    var opts = _parseOptions(options),\n        $elements = $(elements),\n        rows = [$elements];\n\n    // take note of scroll position\n    var scrollTop = $(window).scrollTop(),\n        htmlHeight = $('html').outerHeight(true);\n\n    // get hidden parents\n    var $hiddenParents = $elements.parents().filter(':hidden');\n\n    // cache the original inline style\n    $hiddenParents.each(function() {\n      var $that = $(this);\n      $that.data('style-cache', $that.attr('style'));\n    });\n\n    // temporarily must force hidden parents visible\n    $hiddenParents.css('display', 'block');\n\n    // get rows if using byRow, otherwise assume one row\n    if (opts.byRow && !opts.target) {\n\n      // must first force an arbitrary equal height so floating elements break evenly\n      $elements.each(function() {\n        var $that = $(this),\n            display = $that.css('display');\n\n        // temporarily force a usable display value\n        if (display !== 'inline-block' && display !== 'flex' && display !== 'inline-flex') {\n          display = 'block';\n        }\n\n        // cache the original inline style\n        $that.data('style-cache', $that.attr('style'));\n\n        $that.css({\n          'display': display,\n          'padding-top': '0',\n          'padding-bottom': '0',\n          'margin-top': '0',\n          'margin-bottom': '0',\n          'border-top-width': '0',\n          'border-bottom-width': '0',\n          'height': '100px',\n          'overflow': 'hidden'\n        });\n      });\n\n      // get the array of rows (based on element top position)\n      rows = _rows($elements);\n\n      // revert original inline styles\n      $elements.each(function() {\n        var $that = $(this);\n        $that.attr('style', $that.data('style-cache') || '');\n      });\n    }\n\n    $.each(rows, function(key, row) {\n      var $row = $(row),\n          targetHeight = 0;\n\n      if (!opts.target) {\n        // skip apply to rows with only one item\n        if (opts.byRow && $row.length <= 1) {\n          $row.css(opts.property, '');\n          return;\n        }\n\n        // iterate the row and find the max height\n        $row.each(function(){\n          var $that = $(this),\n              style = $that.attr('style'),\n              display = $that.css('display');\n\n          // temporarily force a usable display value\n          if (display !== 'inline-block' && display !== 'flex' && display !== 'inline-flex') {\n            display = 'block';\n          }\n\n          // ensure we get the correct actual height (and not a previously set height value)\n          var css = { 'display': display };\n          css[opts.property] = '';\n          $that.css(css);\n\n          // find the max height (including padding, but not margin)\n          if ($that.outerHeight(false) > targetHeight) {\n            targetHeight = $that.outerHeight(false);\n          }\n\n          // revert styles\n          if (style) {\n            $that.attr('style', style);\n          } else {\n            $that.css('display', '');\n          }\n        });\n      } else {\n        // if target set, use the height of the target element\n        targetHeight = opts.target.outerHeight(false);\n      }\n\n      // iterate the row and apply the height to all elements\n      $row.each(function(){\n        var $that = $(this),\n            verticalPadding = 0;\n\n        // don't apply to a target\n        if (opts.target && $that.is(opts.target)) {\n          return;\n        }\n\n        // handle padding and border correctly (required when not using border-box)\n        if ($that.css('box-sizing') !== 'border-box') {\n          verticalPadding += _parse($that.css('border-top-width')) + _parse($that.css('border-bottom-width'));\n          verticalPadding += _parse($that.css('padding-top')) + _parse($that.css('padding-bottom'));\n        }\n\n        // set the height (accounting for padding and border)\n        $that.css(opts.property, (targetHeight - verticalPadding) + 'px');\n      });\n    });\n\n    // revert hidden parents\n    $hiddenParents.each(function() {\n      var $that = $(this);\n      $that.attr('style', $that.data('style-cache') || null);\n    });\n\n    // restore scroll position if enabled\n    if (matchHeight._maintainScroll) {\n      $(window).scrollTop((scrollTop / htmlHeight) * $('html').outerHeight(true));\n    }\n\n    return this;\n  };\n\n  /*\n    *  matchHeight._applyDataApi\n    *  applies matchHeight to all elements with a data-match-height attribute\n    */\n\n  matchHeight._applyDataApi = function() {\n    var groups = {};\n\n    // generate groups by their groupId set by elements using data-match-height\n    $('[data-match-height], [data-mh]').each(function() {\n      var $this = $(this),\n          groupId = $this.attr('data-mh') || $this.attr('data-match-height');\n\n      if (groupId in groups) {\n        groups[groupId] = groups[groupId].add($this);\n      } else {\n        groups[groupId] = $this;\n      }\n    });\n\n    // apply matchHeight to each group\n    $.each(groups, function() {\n      this.matchHeight(true);\n    });\n  };\n\n  /*\n    *  matchHeight._update\n    *  updates matchHeight on all current groups with their correct options\n    */\n\n   var _update = function(event) {\n    if (matchHeight._beforeUpdate) {\n      matchHeight._beforeUpdate(event, matchHeight._groups);\n    }\n\n    $.each(matchHeight._groups, function(index ) {\n      var thisElement = this;\n      var timerVal = 0;\n\n      if(thisElement.elements.length){\n         timerVal += 500;\n        setTimeout(function () {\n           matchHeight._apply(thisElement.elements, thisElement.options);\n      }, timerVal);\n    }\n    });\n\n    if (matchHeight._afterUpdate) {\n      matchHeight._afterUpdate(event, matchHeight._groups);\n    }\n  };\n\n  matchHeight._update = function(throttle, event) {\n    // prevent update if fired from a resize event\n    // where the viewport width hasn't actually changed\n    // fixes an event looping bug in IE8\n    if (event && event.type === 'resize') {\n      var windowWidth = $(window).width();\n      if (windowWidth === _previousResizeWidth) {\n        return;\n      }\n      _previousResizeWidth = windowWidth;\n    }\n\n    // throttle updates\n    if (!throttle) {\n      _update(event);\n    } else if (_updateTimeout === -1) {\n      _updateTimeout = setTimeout(function() {\n        _update(event);\n        _updateTimeout = -1;\n      }, matchHeight._throttle);\n    }\n  };\n\n  /*\n    *  bind events\n    */\n\n  // apply on DOM ready event\n  $(matchHeight._applyDataApi);\n\n  // update heights on load and resize events\n  $(window).bind('load', function(event) {\n    matchHeight._update(false, event);\n  });\n\n  // throttled update heights on resize events\n  $(window).bind('resize orientationchange', function(event) {\n    matchHeight._update(true, event);\n  });\n\n});\n/**\n* jquery-match-height master by @liabru\n* http://brm.io/jquery-match-height/\n* License: MIT\n*/\n\n//!function(t){\"use strict\";\"function\"==typeof define&&define.amd?define([\"jquery\"],t):\"undefined\"!=typeof module&&module.exports?module.exports=t(require(\"jquery\")):t(jQuery)}(function(t){var e=-1,o=-1,a=function(t){return parseFloat(t)||0},i=function(e){var o=1,i=t(e),n=null,r=[];return i.each(function(){var e=t(this),i=e.offset().top-a(e.css(\"margin-top\")),s=r.length>0?r[r.length-1]:null;null===s?r.push(e):Math.floor(Math.abs(n-i))<=o?r[r.length-1]=s.add(e):r.push(e),n=i}),r},n=function(e){var o={byRow:!0,property:\"height\",target:null,remove:!1};return\"object\"==typeof e?t.extend(o,e):(\"boolean\"==typeof e?o.byRow=e:\"remove\"===e&&(o.remove=!0),o)},r=t.fn.matchHeight=function(e){var o=n(e);if(o.remove){var a=this;return this.css(o.property,\"\"),t.each(r._groups,function(t,e){e.elements=e.elements.not(a)}),this}return this.length<=1&&!o.target?this:(r._groups.push({elements:this,options:o}),r._apply(this,o),this)};r.version=\"master\",r._groups=[],r._throttle=80,r._maintainScroll=!1,r._beforeUpdate=null,r._afterUpdate=null,r._rows=i,r._parse=a,r._parseOptions=n,r._apply=function(e,o){var s=n(o),h=t(e),l=[h],c=t(window).scrollTop(),p=t(\"html\").outerHeight(!0),d=h.parents().filter(\":hidden\");return d.each(function(){var e=t(this);e.data(\"style-cache\",e.attr(\"style\"))}),d.css(\"display\",\"block\"),s.byRow&&!s.target&&(h.each(function(){var e=t(this),o=e.css(\"display\");\"inline-block\"!==o&&\"flex\"!==o&&\"inline-flex\"!==o&&(o=\"block\"),e.data(\"style-cache\",e.attr(\"style\")),e.css({display:o,\"padding-top\":\"0\",\"padding-bottom\":\"0\",\"margin-top\":\"0\",\"margin-bottom\":\"0\",\"border-top-width\":\"0\",\"border-bottom-width\":\"0\",height:\"100px\",overflow:\"hidden\"})}),l=i(h),h.each(function(){var e=t(this);e.attr(\"style\",e.data(\"style-cache\")||\"\")})),t.each(l,function(e,o){var i=t(o),n=0;if(s.target)n=s.target.outerHeight(!1);else{if(s.byRow&&i.length<=1)return void i.css(s.property,\"\");i.each(function(){var e=t(this),o=e.attr(\"style\"),a=e.css(\"display\");\"inline-block\"!==a&&\"flex\"!==a&&\"inline-flex\"!==a&&(a=\"block\");var i={display:a};i[s.property]=\"\",e.css(i),e.outerHeight(!1)>n&&(n=e.outerHeight(!1)),o?e.attr(\"style\",o):e.css(\"display\",\"\")})}i.each(function(){var e=t(this),o=0;s.target&&e.is(s.target)||(\"border-box\"!==e.css(\"box-sizing\")&&(o+=a(e.css(\"border-top-width\"))+a(e.css(\"border-bottom-width\")),o+=a(e.css(\"padding-top\"))+a(e.css(\"padding-bottom\"))),e.css(s.property,n-o+\"px\"))})}),d.each(function(){var e=t(this);e.attr(\"style\",e.data(\"style-cache\")||null)}),r._maintainScroll&&t(window).scrollTop(c/p*t(\"html\").outerHeight(!0)),this},r._applyDataApi=function(){var e={};t(\"[data-match-height], [data-mh]\").each(function(){var o=t(this),a=o.attr(\"data-mh\")||o.attr(\"data-match-height\");a in e?e[a]=e[a].add(o):e[a]=o}),t.each(e,function(){this.matchHeight(!0)})};var s=function(e){r._beforeUpdate&&r._beforeUpdate(e,r._groups),t.each(r._groups,function(){r._apply(this.elements,this.options)}),r._afterUpdate&&r._afterUpdate(e,r._groups)};r._update=function(a,i){if(i&&\"resize\"===i.type){var n=t(window).width();if(n===e)return;e=n}a?-1===o&&(o=setTimeout(function(){s(i),o=-1},r._throttle)):s(i)},t(r._applyDataApi),t(window).bind(\"load\",function(t){r._update(!1,t)}),t(window).bind(\"resize orientationchange\",function(t){r._update(!0,t)})});\n\n/*!\n * instafeed.js v1.4.1 - A simple Instagram javascript plugin\n * http://instafeedjs.com\n * repo: https://github.com/stevenschobert/instafeed.js\n * License: MIT (https://github.com/stevenschobert/instafeed.js/blob/master/LICENSE)\n */\n\n(function(){var a;a=function(){function a(a,b){var c,d;if(this.options={target:\"instafeed\",get:\"popular\",resolution:\"thumbnail\",sortBy:\"none\",links:!0,mock:!1,useHttp:!1},\"object\"==typeof a)for(c in a)d=a[c],this.options[c]=d;this.context=null!=b?b:this,this.unique=this._genKey()}return a.prototype.hasNext=function(){return\"string\"==typeof this.context.nextUrl&&this.context.nextUrl.length>0},a.prototype.next=function(){return!!this.hasNext()&&this.run(this.context.nextUrl)},a.prototype.run=function(b){var c,d,e;if(\"string\"!=typeof this.options.clientId&&\"string\"!=typeof this.options.accessToken)throw new Error(\"Missing clientId or accessToken.\");if(\"string\"!=typeof this.options.accessToken&&\"string\"!=typeof this.options.clientId)throw new Error(\"Missing clientId or accessToken.\");return null!=this.options.before&&\"function\"==typeof this.options.before&&this.options.before.call(this),\"undefined\"!=typeof document&&null!==document&&(e=document.createElement(\"script\"),e.id=\"instafeed-fetcher\",e.src=b||this._buildUrl(),c=document.getElementsByTagName(\"head\"),c[0].appendChild(e),d=\"instafeedCache\"+this.unique,window[d]=new a(this.options,this),window[d].unique=this.unique),!0},a.prototype.parse=function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H;if(\"object\"!=typeof a){if(null!=this.options.error&&\"function\"==typeof this.options.error)return this.options.error.call(this,\"Invalid JSON data\"),!1;throw new Error(\"Invalid JSON response\")}if(200!==a.meta.code){if(null!=this.options.error&&\"function\"==typeof this.options.error)return this.options.error.call(this,a.meta.error_message),!1;throw new Error(\"Error from Instagram: \"+a.meta.error_message)}if(0===a.data.length){if(null!=this.options.error&&\"function\"==typeof this.options.error)return this.options.error.call(this,\"No images were returned from Instagram\"),!1;throw new Error(\"No images were returned from Instagram\")}if(null!=this.options.success&&\"function\"==typeof this.options.success&&this.options.success.call(this,a),this.context.nextUrl=\"\",null!=a.pagination&&(this.context.nextUrl=a.pagination.next_url),\"none\"!==this.options.sortBy)switch(F=\"random\"===this.options.sortBy?[\"\",\"random\"]:this.options.sortBy.split(\"-\"),E=\"least\"===F[0],F[1]){case\"random\":a.data.sort(function(){return.5-Math.random()});break;case\"recent\":a.data=this._sortBy(a.data,\"created_time\",E);break;case\"liked\":a.data=this._sortBy(a.data,\"likes.count\",E);break;case\"commented\":a.data=this._sortBy(a.data,\"comments.count\",E);break;default:throw new Error(\"Invalid option for sortBy: '\"+this.options.sortBy+\"'.\")}if(\"undefined\"!=typeof document&&null!==document&&this.options.mock===!1){if(q=a.data,D=parseInt(this.options.limit,10),null!=this.options.limit&&q.length>D&&(q=q.slice(0,D)),h=document.createDocumentFragment(),null!=this.options.filter&&\"function\"==typeof this.options.filter&&(q=this._filter(q,this.options.filter)),null!=this.options.template&&\"string\"==typeof this.options.template){for(j=\"\",o=\"\",u=\"\",H=document.createElement(\"div\"),l=0,z=q.length;l<z;l++){if(m=q[l],n=m.images[this.options.resolution],\"object\"!=typeof n)throw g=\"No image found for resolution: \"+this.options.resolution+\".\",new Error(g);v=n.width,s=n.height,t=\"square\",v>s&&(t=\"landscape\"),v<s&&(t=\"portrait\"),p=n.url,k=window.location.protocol.indexOf(\"http\")>=0,k&&!this.options.useHttp&&(p=p.replace(/https?:\\/\\//,\"//\")),o=this._makeTemplate(this.options.template,{model:m,id:m.id,link:m.link,type:m.type,image:p,width:v,height:s,orientation:t,caption:this._getObjectProperty(m,\"caption.text\"),likes:m.likes.count,comments:m.comments.count,location:this._getObjectProperty(m,\"location.name\")}),j+=o}for(H.innerHTML=j,e=[],d=0,c=H.childNodes.length;d<c;)e.push(H.childNodes[d]),d+=1;for(x=0,A=e.length;x<A;x++)C=e[x],h.appendChild(C)}else for(y=0,B=q.length;y<B;y++){if(m=q[y],r=document.createElement(\"img\"),n=m.images[this.options.resolution],\"object\"!=typeof n)throw g=\"No image found for resolution: \"+this.options.resolution+\".\",new Error(g);p=n.url,k=window.location.protocol.indexOf(\"http\")>=0,k&&!this.options.useHttp&&(p=p.replace(/https?:\\/\\//,\"//\")),r.src=p,this.options.links===!0?(b=document.createElement(\"a\"),b.href=m.link,b.appendChild(r),h.appendChild(b)):h.appendChild(r)}if(G=this.options.target,\"string\"==typeof G&&(G=document.getElementById(G)),null==G)throw g='No element with id=\"'+this.options.target+'\" on page.',new Error(g);G.appendChild(h),i=document.getElementsByTagName(\"head\")[0],i.removeChild(document.getElementById(\"instafeed-fetcher\")),w=\"instafeedCache\"+this.unique,window[w]=void 0;try{delete window[w]}catch(a){f=a}}return null!=this.options.after&&\"function\"==typeof this.options.after&&this.options.after.call(this),!0},a.prototype._buildUrl=function(){var a,b,c;switch(a=\"https://api.instagram.com/v1\",this.options.get){case\"popular\":b=\"media/popular\";break;case\"tagged\":if(!this.options.tagName)throw new Error(\"No tag name specified. Use the 'tagName' option.\");b=\"tags/\"+this.options.tagName+\"/media/recent\";break;case\"location\":if(!this.options.locationId)throw new Error(\"No location specified. Use the 'locationId' option.\");b=\"locations/\"+this.options.locationId+\"/media/recent\";break;case\"user\":if(!this.options.userId)throw new Error(\"No user specified. Use the 'userId' option.\");b=\"users/\"+this.options.userId+\"/media/recent\";break;default:throw new Error(\"Invalid option for get: '\"+this.options.get+\"'.\")}return c=a+\"/\"+b,c+=null!=this.options.accessToken?\"?access_token=\"+this.options.accessToken:\"?client_id=\"+this.options.clientId,null!=this.options.limit&&(c+=\"&count=\"+this.options.limit),c+=\"&callback=instafeedCache\"+this.unique+\".parse\"},a.prototype._genKey=function(){var a;return a=function(){return(65536*(1+Math.random())|0).toString(16).substring(1)},\"\"+a()+a()+a()+a()},a.prototype._makeTemplate=function(a,b){var c,d,e,f,g;for(d=/(?:\\{{2})([\\w\\[\\]\\.]+)(?:\\}{2})/,c=a;d.test(c);)f=c.match(d)[1],g=null!=(e=this._getObjectProperty(b,f))?e:\"\",c=c.replace(d,function(){return\"\"+g});return c},a.prototype._getObjectProperty=function(a,b){var c,d;for(b=b.replace(/\\[(\\w+)\\]/g,\".$1\"),d=b.split(\".\");d.length;){if(c=d.shift(),!(null!=a&&c in a))return null;a=a[c]}return a},a.prototype._sortBy=function(a,b,c){var d;return d=function(a,d){var e,f;return e=this._getObjectProperty(a,b),f=this._getObjectProperty(d,b),c?e>f?1:-1:e<f?1:-1},a.sort(d.bind(this)),a},a.prototype._filter=function(a,b){var c,d,e,f,g;for(c=[],d=function(a){if(b(a))return c.push(a)},e=0,g=a.length;e<g;e++)f=a[e],d(f);return c},a}(),function(a,b){return\"function\"==typeof define&&define.amd?define([],b):\"object\"==typeof module&&module.exports?module.exports=b():a.Instafeed=b()}(this,function(){return a})}).call(this);\n \n\n /*\n  * YoutubeBackground - A wrapper for the Youtube API - Great for fullscreen background videos or just regular videos.\n  *\n  * Licensed under the MIT license:\n  *   http://www.opensource.org/licenses/mit-license.php\n  *\n  *\n  * Version:  1.0.5\n  *\n  */\n\"function\"!=typeof Object.create&&(Object.create=function(e){function t(){}return t.prototype=e,new t}),function(e,t,o){var a=function(o){\"undefined\"==typeof YT&&void 0===t.loadingPlayer?(t.loadingPlayer=!0,t.dfd=e.Deferred(),t.onYouTubeIframeAPIReady=function(){t.onYouTubeIframeAPIReady=null,t.dfd.resolve(\"done\"),o()}):\"object\"==typeof YT?o():t.dfd.done(function(e){o()})};YTPlayer={player:null,defaults:{ratio:16/9,videoId:\"LSmgKRx5pBo\",mute:!0,repeat:!0,width:e(t).width(),playButtonClass:\"YTPlayer-play\",pauseButtonClass:\"YTPlayer-pause\",muteButtonClass:\"YTPlayer-mute\",volumeUpClass:\"YTPlayer-volume-up\",volumeDownClass:\"YTPlayer-volume-down\",start:0,pauseOnScroll:!1,fitToBackground:!0,playerVars:{iv_load_policy:3,modestbranding:1,autoplay:1,controls:0,showinfo:0,wmode:\"opaque\",branding:0,autohide:0},events:null},init:function(n,i){var l,r,d,s=this;return s.userOptions=i,s.$body=e(\"body\"),s.$node=e(n),s.$window=e(t),s.defaults.events={onReady:function(e){s.onPlayerReady(e),s.options.pauseOnScroll&&s.pauseOnScroll(),\"function\"==typeof s.options.callback&&s.options.callback.call(this)},onStateChange:function(e){1===e.data?(s.$node.find(\"img\").fadeOut(400),s.$node.addClass(\"loaded\")):0===e.data&&s.options.repeat&&s.player.seekTo(s.options.start)}},s.options=e.extend(!0,{},s.defaults,s.userOptions),s.options.height=Math.ceil(s.options.width/s.options.ratio),s.ID=(new Date).getTime(),s.holderID=\"YTPlayer-ID-\"+s.ID,s.options.fitToBackground?s.createBackgroundVideo():s.createContainerVideo(),s.$window.on(\"resize.YTplayer\"+s.ID,function(){s.resize(s)}),l=s.onYouTubeIframeAPIReady.bind(s),r=o.createElement(\"script\"),d=o.getElementsByTagName(\"head\")[0],\"file://\"==t.location.origin?r.src=\"http://www.youtube.com/iframe_api\":r.src=\"//www.youtube.com/iframe_api\",d.appendChild(r),d=null,r=null,a(l),s.resize(s),s},pauseOnScroll:function(){var e=this;e.$window.on(\"scroll.YTplayer\"+e.ID,function(){1===e.player.getPlayerState()&&e.player.pauseVideo()}),e.$window.scrollStopped(function(){2===e.player.getPlayerState()&&e.player.playVideo()})},createContainerVideo:function(){var t=this,o=e('<div id=\"ytplayer-container'+t.ID+'\" >                                    <div id=\"'+t.holderID+'\" class=\"ytplayer-player-inline\"></div>                                     </div>                                     <div id=\"ytplayer-shield\" class=\"ytplayer-shield\"></div>');t.$node.append(o),t.$YTPlayerString=o,o=null},createBackgroundVideo:function(){var t=this,o=e('<div id=\"ytplayer-container'+t.ID+'\" class=\"ytplayer-container background\">                                    <div id=\"'+t.holderID+'\" class=\"ytplayer-player\"></div>                                    </div>                                    <div id=\"ytplayer-shield\" class=\"ytplayer-shield\"></div>');t.$node.append(o),t.$YTPlayerString=o,o=null},resize:function(o){var a=e(t);o.options.fitToBackground||(a=o.$node);var n,i,l=a.width(),r=a.height(),d=e(\"#\"+o.holderID);l/o.options.ratio<r?(n=Math.ceil(r*o.options.ratio),d.width(n).height(r).css({left:(l-n)/2,top:0})):(i=Math.ceil(l/o.options.ratio),d.width(l).height(i).css({left:0,top:(r-i)/2})),d=null,a=null},onYouTubeIframeAPIReady:function(){var e=this;e.player=new t.YT.Player(e.holderID,e.options)},onPlayerReady:function(e){this.options.mute&&e.target.mute()},getPlayer:function(){return this.player},destroy:function(){var o=this;o.$node.removeData(\"yt-init\").removeData(\"ytPlayer\").removeClass(\"loaded\"),o.$YTPlayerString.remove(),e(t).off(\"resize.YTplayer\"+o.ID),e(t).off(\"scroll.YTplayer\"+o.ID),o.$body=null,o.$node=null,o.$YTPlayerString=null,o.player.destroy(),o.player=null}},e.fn.scrollStopped=function(t){var o=e(this),a=this;o.scroll(function(){o.data(\"scrollTimeout\")&&clearTimeout(o.data(\"scrollTimeout\")),o.data(\"scrollTimeout\",setTimeout(t,250,a))})},e.fn.YTPlayer=function(t){return this.each(function(){var o=this;e(o).data(\"yt-init\",!0);var a=Object.create(YTPlayer);a.init(o,t),e.data(o,\"ytPlayer\",a)})}}(jQuery,window,document);\n\n\n/*! Pushy - v0.9.2 - 2014-9-13\n* Pushy is a responsive off-canvas navigation menu using CSS transforms & transitions.\n* https://github.com/christophery/pushy/\n* by Christopher Yee */\n\nvar initPushyMenu = function() {\n  var nav = $('#pushy-menu'), //menu css class\n      navBtn = $('.pushy-menu-btn'),\n      filters = $('#pushy-filters'),\n      filtersBnt = $('#pushy-filters-btn'),\n      body = $('body,html'),\n      container = $('#container, .notification-bar, .nav-main-logo, .nav-container-float'), //container css class\n      filterContainer = $('.container-pushy-main, .page-header, #shopify-section-footer, .notification-bar, .nav-main-logo, .nav-standard, .nav-container-float'), //container css class\n      push = $('.push'), //css class to add pushy capability\n      siteOverlay = $('.site-overlay'), //site overlay\n      pushyActiveClass = \"pushy-active\", //css class to toggle site overlay\n      containerClass = \"container-push\", //container open class\n      pushClass = \"push-push\", //css class to add pushy capability\n      menuSpeed = 200, //jQuery fallback menu speed\n      navState = true,\n      closeNav = $('#pushy-close, .mobile-menu-close-icon'),\n      closeFilters = $('#pushy-close-filters, .mobile-menu-close-icon'),\n      filtersState = true,\n      mp = $.magnificPopup.instance;\n\n  function openPushyNav() {\n    if(!filtersState) {\n      closePushyFilters();\n      filtersState = true;\n    }\n    $(\".left_nav_icons_accordion\").addClass(\"nav_icons_accordion_open\");\n    nav.addClass(\"pushy-open\");\n    body.addClass(pushyActiveClass);\n    container.addClass(containerClass);\n    push.addClass(pushClass);\n    navBtn.addClass('tcon-transform');\n    mp.close();\n\n    $('a, button, input, select, textarea, object, area, iframe').each(function(index, el){\n      if ($(el).attr('tabindex') != '-1') {\n        $(el).attr('tabindex', '-2');\n      }\n    });\n    $('.header-nav-pushy a, .header-nav-pushy button').each(function(index, el){\n      $(el).attr('tabindex', 0);\n    });\n    $('.left_nav_icons_accordion a, .left_nav_icons_accordion select, .left_nav_icons_accordion button').each(function(index, el){\n      $(el).attr('tabindex', 0);\n    });\n  }\n\n  function closePushyNav() {\n    nav.removeClass(\"pushy-open\");\n    $(\".left_nav_icons_accordion\").removeClass(\"nav_icons_accordion_open\");\n    body.removeClass(pushyActiveClass);\n    container.removeClass(containerClass);\n    push.removeClass(pushClass);\n    navBtn.removeClass('tcon-transform')\n\n    $('.header-nav-pushy a, .header-nav-pushy button').each(function(index, el){\n      $(el).attr('tabindex', -1);\n    });\n    $('.left_nav_icons_accordion a, .left_nav_icons_accordion select').each(function(index, el){\n      $(el).attr('tabindex', -1);\n    });\n    $('[tabindex]').each(function(index, el){\n      if ($(el).attr('tabindex') == '-2') {\n        $(el).attr('tabindex', '0');\n      }\n    });\n    if ($('.minimal-top-nav').length > 0) {\n      setTimeout(function(){\n        $('.nav-container-actions > li:eq(0)').children().focus();\n      },10);\n    }\n  }\n\n  function openPushyFilters()\n  {\n    if(!navState) {\n      closePushyNav();\n      navState = true;\n    }\n    filters.addClass(\"pushy-open\");\n    body.addClass(pushyActiveClass);\n    filterContainer.addClass(containerClass);\n    push.addClass(pushClass);\n    mp.close();\n  }\n\n  function closePushyFilters() {\n    filters.removeClass(\"pushy-open\");\n    body.removeClass(pushyActiveClass);\n    filterContainer.removeClass(containerClass);\n    push.removeClass(pushClass);\n  }\n\n  navBtn.on('click', function(e) {\n    e.preventDefault();\n    if (navState) {\n      openPushyNav();\n      navState = false;\n    } else {\n      closePushyNav();\n      navState = true;\n    }\n  });\n\n  closeNav.on('click', function(e) {\n    e.preventDefault();\n    closePushyNav();\n    navState = true;\n  });\n\n  closeFilters.on('click', function(e) {\n    e.preventDefault();\n    closePushyFilters();\n    filtersState = true;\n  });\n\n  filtersBnt.on('click', function(e) {\n    e.preventDefault();\n    if (filtersState) {\n      openPushyFilters();\n      filtersState = false;\n    } else {\n      closePushyFilters();\n      filtersState = true;\n    }\n  });\n\n  siteOverlay.on('click', function(){\n    closePushyNav();\n    navState = true;\n    closePushyFilters();\n    filtersState = true;\n  });\n\n\n  return {\n    close: function() {\n      return closePushyFilters();\n    }\n  }\n};\n\nfunction inlineSwiper($container) {\n  var id = $container.attr('data-section-id');\n  var blocksPerView = +$container.attr('data-blocks-per-view');\n  var blocksMax = +$container.attr('data-blocks-limit');\n  var blocksCount = +$container.attr('data-blocks-count');\n  var blockAutoplay = +$container.attr('data-autoplay') * 1000;\n  var setAutoplay = blockAutoplay ? {delay: blockAutoplay} : false;\n  var mobileSlides = +$container.attr('data-mobile-items') || 1;\n  var spaceBetweenBlocks;\n\n  switch (blocksPerView) {\n    case 2:\n      spaceBetweenBlocks = 30;\n      break;\n    case 3:\n      spaceBetweenBlocks = 25;\n      break;\n    case 4:\n      spaceBetweenBlocks = 15;\n      break;\n    case 5 || 6:\n      spaceBetweenBlocks = 10;\n      break;\n    default:\n      spaceBetweenBlocks = 15;\n  }\n\n  return new Swiper ('#inline-swiper-'+id, {\n    direction: 'horizontal',\n     pagination: {\n        el: '#swiper-pagination-'+id,\n        clickable: true\n      },\n      loop: !!blockAutoplay,\n      slidesPerView: blocksPerView,\n      slidesPerGroup: 1,\n      spaceBetween: spaceBetweenBlocks,\n      // simulateTouch: ($(window).width() <= 768) || (blocksPerView < blocksMax && blocksPerView < blocksCount),\n      simulateTouch: true,\n      breakpoints: {\n        768: {\n          slidesPerView: mobileSlides,\n          slidesPerGroup: 1,\n          spaceBetween: 15\n        }\n      },\n      autoplay: setAutoplay\n    });\n}\n\n\nwindow.theme = window.theme || {};\n\ntheme.Sections = function Sections() {\n  this.constructors = {};\n  this.instances = [];\n\n  $(document)\n  .on('shopify:section:load', this._onSectionLoad.bind(this))\n  .on('shopify:section:unload', this._onSectionUnload.bind(this))\n  .on('shopify:section:select', this._onSelect.bind(this))\n  .on('shopify:section:deselect', this._onDeselect.bind(this))\n  .on('shopify:section:reorder', this._onReorder.bind(this))\n  .on('shopify:block:select', this._onBlockSelect.bind(this))\n  .on('shopify:block:deselect', this._onBlockDeselect.bind(this));\n};\n\ntheme.Sections.prototype = _.assignIn({}, theme.Sections.prototype, {\n  _createInstance: function(container, constructor) {\n    var $container = $(container);\n    var id = $container.attr('data-section-id');\n    var type = $container.attr('data-section-type');\n\n    constructor = constructor || this.constructors[type];\n\n    if (_.isUndefined(constructor)) {\n      return;\n    }\n\n    var instance = _.assignIn(new constructor(container), {\n      id: id,\n      type: type,\n      container: container\n    });\n\n    this.instances.push(instance);\n  },\n  _onSectionLoad: function(evt) {\n    var container = $('[data-section-id]', evt.target)[0];\n    if (container) {\n      this._createInstance(container);\n    }\n  },\n\n  _onSectionUnload: function(evt) {\n    this.instances = _.filter(this.instances, function(instance) {\n      var isEventInstance = (instance.id === evt.originalEvent.detail.sectionId);\n\n      if (isEventInstance) {\n        if (_.isFunction(instance.onUnload)) {\n          instance.onUnload(evt);\n        }\n      }\n\n      return !isEventInstance;\n    });\n  },\n\n  _onSelect: function(evt) {\n\n    // eslint-disable-next-line no-shadow\n    var instance = _.find(this.instances, function(instance) {\n      return instance.id === evt.originalEvent.detail.sectionId;\n    });\n\n    if (!_.isUndefined(instance) && _.isFunction(instance.onSelect)) {\n      instance.onSelect(evt);\n    }\n  },\n\n  _onDeselect: function(evt) {\n    // eslint-disable-next-line no-shadow\n    var instance = _.find(this.instances, function(instance) {\n      return instance.id === evt.originalEvent.detail.sectionId;\n    });\n\n    if (!_.isUndefined(instance) && _.isFunction(instance.onDeselect)) {\n      instance.onDeselect(evt);\n    }\n  },\n  _onReorder: function(evt) {\n    var isSlideshow = $(\"#container\").find(\".shopify-section\").first().hasClass(\"home-slideshow-section\");\n    var isOverlap = $(\"#top-header-section\").data(\"index-overlap\"),\n        bgColor = $(\"#top-header-section\").data(\"bg-color\"),\n        imgWidth = $(\"#top-header-section\").data(\"logo-width\")+\"px\";\n    if(isSlideshow && isOverlap){\n       $(\".nav-standard-float, .nav-container, .nav-main-logo\").css({\"position\":\"absolute\", \"background\": \"none\"});\n       $(\".nav-main-logo img\").css(\"width\", imgWidth);\n    }\n    else{\n     $(\".nav-main-logo, .nav-container, .nav-standard-float\").css({\"position\":\"relative\", \"background\": bgColor, \"width\" : \"100%\"});\n    }\n\n     // eslint-disable-next-line no-shadow\n    var instance = _.find(this.instances, function(instance) {\n      return instance.id === evt.originalEvent.detail.sectionId;\n    });\n\n    if (!_.isUndefined(instance) && _.isFunction(instance.onReorder)) {\n      instance.onReorder(evt);\n    }\n\n  },\n\n  _onBlockSelect: function(evt) {\n    // eslint-disable-next-line no-shadow\n    var instance = _.find(this.instances, function(instance) {\n      return instance.id === evt.originalEvent.detail.sectionId;\n    });\n\n    if (!_.isUndefined(instance) && _.isFunction(instance.onBlockSelect)) {\n      instance.onBlockSelect(evt);\n    }\n  },\n\n  _onBlockDeselect: function(evt) {\n    // eslint-disable-next-line no-shadow\n    var instance = _.find(this.instances, function(instance) {\n      return instance.id === evt.originalEvent.detail.sectionId;\n    });\n\n    if (!_.isUndefined(instance) && _.isFunction(instance.onBlockDeselect)) {\n      instance.onBlockDeselect(evt);\n    }\n  },\n\n  register: function(type, constructor) {\n    this.constructors[type] = constructor;\n    $('[data-section-type=' + type + ']').each(function(index, container) {\n      this._createInstance(container, constructor);\n    }.bind(this));\n  }\n});\n\n  // theme.VideoSection = (function(){\n  //   function VideoSection(container) {\n  //     console.log('init video');\n  //     var $container = this.$container = $(container);\n  //     var sectionId = this.sectionId = $container.attr('data-section-id');\n  //     var videoId = this.videoId = $container.attr('data-video-id');\n  //     var $video = $('#video-' + sectionId);\n  //     if($(window).width() > 992 && $video.length) {\n  //       $video.YTPlayer({\n  //           fitToBackground: true,\n  //           videoId: videoId,\n  //           playerVars: {\n  //             modestbranding: 1,\n  //             autoplay: 1,\n  //             controls: 0,\n  //             showinfo: 0,\n  //             branding: 0,\n  //             rel: 0,\n  //             iv_load_policy: 3,\n  //             autohide: 1,\n  //             wmode: \"transparent\",\n  //             frameborder: 0\n  //           }\n  //       });\n  //     }\n  //   }\n  //\n  //   return VideoSection;\n  // })();\n\ntheme.VideoSection = (function() {\n  // console.log('video section');\n  function isOnScreen($el) {\n    var elementTop = $el.offset().top;\n    var elementBottom = elementTop + $(this).outerHeight();\n\n    var viewportTop = $(window).scrollTop();\n    var viewportBottom = viewportTop + $(window).height();\n\n    return elementBottom > viewportTop && elementTop < viewportBottom;\n  }\n\n  function VideoSection(container) {\n    var $container = this.$container = $(container);\n    var sectionId = this.sectionId = $container.attr('data-section-id');\n    var videoId = this.videoId = $container.attr('data-video-id');\n    var videoLink = this.videoLink = $container.attr('data-video-link');\n    var $video = $('#video-' + sectionId);\n    var $playBtn = $('#video-play-' + sectionId);\n    var videoType = this.videoType = $container.attr('data-video-type');\n\n\n    if($(window).width() > 992 && $video.length) {\n      if(videoType == 'vimeo'){\n        var options = {\n          id: videoId,\n          muted: true,\n          autoplay: true,\n          loop: true,\n          autopause: false\n        };\n        var video01Player = new Vimeo.Player('iframe-'+sectionId, options);\n        \n        video01Player.on('loaded', function() {\n          if($(\"#video-\"+sectionId+\" iframe\").length){\n            $(\"#video-\"+sectionId)\n            .prepend('<div class=\"vidcover\"></div>');\n\n            $(window).resize( function(){\n              var theWidth = $(window).width();\n              var theHeight = $(window).height();\n              var newWidth = (theHeight*1.77777778);\n              var newHeight = (theWidth/1.77777778);\n\n              if ( (theWidth > 1280) && (newHeight > theHeight )) {\n                $('#video-'+sectionId+' iframe').css({'width':theWidth, 'height':newHeight});\n              }\n\n              if ( (theHeight > 720) && (newWidth > theWidth )) {\n                $('#video-'+sectionId+' iframe').css({'height':theHeight, 'width':newWidth});\n              }\n\n              $('#video-'+sectionId+' .vidcover').css({'height':theHeight, 'width':theWidth});\n            }).resize();\n            \n            if(!isOnScreen($video)) {\n              video01Player.pause();\n            }\n            $(window).on('scroll', function(){\n                if(!isOnScreen($video)) {\n                  console.log(\"Video \"+ videoId +\" stopped\");\n                  video01Player.pause();\n                } else {\n                  console.log(\"Video \"+ videoId +\" playing\");\n                  video01Player.play();\n                }\n            });\n\n          }\n        });\n                        \n      }else{\n      $video.YTPlayer({\n          fitToBackground: true,\n          videoId: videoId,\n          playerVars: {\n            modestbranding: 1,\n            autoplay: 1,\n            controls: 0,\n            showinfo: 0,\n            branding: 0,\n            rel: 0,\n            iv_load_policy: 3,\n            autohide: 1,\n            wmode: \"transparent\",\n            frameborder: 0\n          },\n          callback: function(){\n            var player = $video.data('ytPlayer').player;\n            console.log(\"Video \"+ videoId +\" loaded\");\n            if(!isOnScreen($video)) {\n              player.pauseVideo();\n            }\n            $(window).on('scroll', function(){\n              if(!player.neverPlay) {\n                if(!isOnScreen($video)) {\n                  console.log(\"Video \"+ videoId +\" stopped\");\n                  player.pauseVideo();\n                } else {\n                  console.log(\"Video \"+ videoId +\" playing\");\n                  player.playVideo();\n                }\n              }\n            });\n          }\n       });\n      }\n    }else{\n      $(\"#vimeo_iframe_wrapper-\"+sectionId).remove();\n    }\n    \n    function playerStop() {\n      if($video.data('ytPlayer')) {\n        var player = $video.data('ytPlayer').player;\n        $video.hide();\n        player.pauseVideo();\n        player.neverPlay = true;\n      }else{\n         $video.hide(); \n      }\n    }\n\n    $playBtn.on('click', function(e){\n      e.preventDefault();\n      $.magnificPopup.open({\n        items: {\n          src: videoLink,\n          type: 'iframe'\n        },\n        callbacks: {\n          open: playerStop,\n          close: playerStop\n        }\n      })\n    });\n\n      \n  }\n\n  return VideoSection;\n})();\n// theme.VideoSection\n// theme.VideoSection = (function() {\n//   function VideoSection(container) {\n\n//     var $container = this.$container = $(container);\n//     var sectionId = this.sectionId = $container.attr('data-section-id');\n//     var $currentVideo = $container.find('.popupVideo'),\n//         videoType = $container.data(\"videotype\");\n//\n//\n//   //console.log($container.find(\".videoWrapper\").hasClass(\"hidden\"));\n// //     if($container.find(\".videoWrapper\").hasClass(\"hidden\")){\n//       var itemMinHeight = $container.find(\".video__inner\").outerHeight();\n//       $container.find(\".video-overlay\").css(\"min-height\", itemMinHeight);\n//       $container.find(\".centered-video-content\").css(\"min-height\", itemMinHeight);\n//\n//       $( window ).resize(function() {\n//         var itemMinHeight = $container.find(\".video__inner\").outerHeight();\n//         $container.find(\".video-overlay\").css(\"min-height\", itemMinHeight);\n//         $container.find(\".centered-video-content\").css(\"min-height\", itemMinHeight);\n//       });\n// //     }\n//     window.onYouTubeIframeAPIReady = function() {\n//     console.log(\"YouTube API Ready\");\n//     };\n//     if ( /Android|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)){\n//\n//    if(videoType == 'youtube' && YT){\n//     var player;\n//     player = new YT.Player('video-iframe-'+sectionId, {\n//         events: {\n//           'onStateChange': onPlayerChange\n//         }\n//     });\n//\n//     function onPlayerChange(evt) {\n//\n//     switch (evt.data) {\n//       case 0: // ended\n//         setAsFinished();\n//         break;\n//     }\n//   }\n//\n// function setAsFinished() {\n//      $('#video-iframe-'+sectionId).closest(\".videoWrapper\").hide();\n//      $('#video-iframe-'+sectionId).closest(\".video__inner\").removeClass(\"showEmbeddedVideo\").find(\".text-center\").show();\n//   }\n//\n//\n//  $(\".play-video-btn-\"+sectionId).on(\"touchend\", function(ev){\n//\n//      $(this).closest(\".text-center\").hide();\n//      $(this).closest(\".video__inner\").addClass(\"showEmbeddedVideo\").find(\".videoWrapper\").show();\n//\n//      });\n//\n//   $(\".close-video-btn-\"+sectionId).on(\"touchend\", function(ev){\n//      $(this).closest(\".videoWrapper\").hide();\n//      $(this).closest(\".video__inner\").removeClass(\"showEmbeddedVideo\").find(\".text-center\").show();\n//      player.stopVideo();\n//\n//      });\n//\n//\n//     }else if(videoType == 'vimeo'){\n//\n//       var player = new Vimeo.Player('video-iframe-'+sectionId);\n//      $(\".play-video-btn-\"+sectionId).on(\"touchend\", function(ev){\n//      $(this).closest(\".text-center\").hide();\n//      $(this).closest(\".video__inner\").addClass(\"showEmbeddedVideo\").find(\".videoWrapper\").show();\n//      player.play();\n//\n//      });\n//\n//   $(\".close-video-btn-\"+sectionId).on(\"touchend\", function(ev){\n//      $(this).closest(\".videoWrapper\").hide();\n//      $(this).closest(\".video__inner\").removeClass(\"showEmbeddedVideo\").find(\".text-center\").show();\n//      player.unload();\n//\n//      });\n//\n//       player.on('ended', function() {\n//          $('#video-iframe-'+sectionId).closest(\".videoWrapper\").hide();\n//          $('#video-iframe-'+sectionId).closest(\".video__inner\").removeClass(\"showEmbeddedVideo\").find(\".text-center\").show();\n//     });\n//\n//     }\n//\n//     }else{\n//     if(videoType == 'youtube' && typeof(YT) !== 'undefined'){\n//     var player;\n//     player = new YT.Player('video-iframe-'+sectionId, {\n//         events: {\n//           'onReady': onPlayerReady,\n//           'onStateChange': onPlayerChange\n//         }\n//     });\n//\n//     function onPlayerChange(evt) {\n//\n//     switch (evt.data) {\n//       case 0: // ended\n//         setAsFinished();\n//         break;\n//     }\n//   }\n//     function onPlayerReady(event) {\n//       setupListener();\n//     }\n// function setAsFinished() {\n//      $('#video-iframe-'+sectionId).closest(\".videoWrapper\").hide();\n//      $('#video-iframe-'+sectionId).closest(\".video__inner\").removeClass(\"showEmbeddedVideo\").find(\".text-center\").show();\n//   }\n//\n//\n// function setupListener(){\n//  $(\".play-video-btn-\"+sectionId).on(\"click touchend\", function(ev){\n//\n//      $(this).closest(\".text-center\").hide();\n//      $(this).closest(\".video__inner\").addClass(\"showEmbeddedVideo\").find(\".videoWrapper\").show();\n//      player.playVideo();\n//\n//      });\n//\n//   $(\".close-video-btn-\"+sectionId).on(\"click\", function(ev){\n//      $(this).closest(\".videoWrapper\").hide();\n//      $(this).closest(\".video__inner\").removeClass(\"showEmbeddedVideo\").find(\".text-center\").show();\n//      player.stopVideo();\n//\n//      });\n// }\n//\n//     }else if(videoType == 'vimeo'){\n//\n//       var player = new Vimeo.Player('video-iframe-'+sectionId);\n//      $(\".play-video-btn-\"+sectionId).on(\"click\", function(ev){\n//      $(this).closest(\".text-center\").hide();\n//      $(this).closest(\".video__inner\").addClass(\"showEmbeddedVideo\").find(\".videoWrapper\").show();\n//      player.play();\n//\n//      });\n//\n//   $(\".close-video-btn-\"+sectionId).on(\"click\", function(ev){\n//      $(this).closest(\".videoWrapper\").hide();\n//      $(this).closest(\".video__inner\").removeClass(\"showEmbeddedVideo\").find(\".text-center\").show();\n//      player.unload();\n//\n//      });\n//\n//       player.on('ended', function() {\n//          $('#video-iframe-'+sectionId).closest(\".videoWrapper\").hide();\n//          $('#video-iframe-'+sectionId).closest(\".video__inner\").removeClass(\"showEmbeddedVideo\").find(\".text-center\").show();\n//     });\n//\n//     }\n//     }\n//\n//      smoothScroll();\n//\n//       if($(\"#hero-video-\"+sectionId+\" .fullvid\").length){\n//\n//     $(\"#hero-video-\"+sectionId)\n//     .prepend('<div class=\"vidcover\"></div>');\n//\n//     $(window).resize( function(){\n//       var theWidth = $(window).width();\n//       var theHeight = $(window).height();\n//       var newWidth = (theHeight*1.77777778);\n//       var newHeight = (theWidth/1.77777778);\n//\n//       if ( (theWidth > 1280) && (newHeight > theHeight )) {\n//         $('#hero-video-'+sectionId+'  .fullvid').css({'width':theWidth, 'height':newHeight});\n//       }\n//\n//       if ( (theHeight > 720) && (newWidth > theWidth )) {\n//         $('#hero-video-'+sectionId+'  .fullvid').css({'height':theHeight, 'width':newWidth});\n//       }\n//\n//       $('#hero-video-'+sectionId+' .vidcover').css({'height':theHeight, 'width':theWidth});\n//     }).resize();\n//   }\n//\n//   }\n//\n//   return VideoSection;\n// })();\n\n// // theme.InstagramFeedSection\n// theme.InstagramFeedSection = (function() {\n//   function InstagramFeedSection(container) {\n//     var $container = this.$container = $(container);\n//     var id = $container.attr('data-section-id');\n//     var instafeedEl = this.instagram = $('#Instafeed-' + id);\n//     var instafeedId = this.instagram = 'Instafeed-' + id;\n//\n//     var userFeed = new Instafeed({\n//       get: 'user',\n//       userId: 'self',\n//       target: instafeedId,\n//       accessToken: instafeedEl.attr('data-access-token'),\n//       sortBy: 'most-recent',\n//       resolution: 'standard_resolution',\n//       limit: instafeedEl.attr('data-count'),\n//       template: (\n//         \n//           '<a href=\"{{link}}\" target=\"_blank\" style=\"background-image: url({{image}});\" class=\"'+instafeedEl.attr('data-grid')+'\">'\n//             + '<i class=\"lin lin-social-instagram\"></i>'\n//           + '</a>'\n//         \n//       )\n//     });\n//\n//     if( !_.isUndefined( userFeed.options.accessToken) ){\n//       userFeed.run();\n//     }\n//   }\n//\n//\n//   return InstagramFeedSection;\n// })();\n//\n// theme.InstagramFeedSection.prototype = _.assignIn({}, theme.InstagramFeedSection.prototype, {\n//\n//   onSelect: function(){\n//     $(\".animated\").addClass(\"animation-done\");\n//   }\n// });\n\n/*********************************************************************\n*  #### Twitter Post Fetcher v17.0.2 ####\n*  Coded by Jason Mayes 2015. A present to all the developers out there.\n*  www.jasonmayes.com\n*  Please keep this disclaimer with my code if you use it. Thanks. :-)\n*  Got feedback or questions, ask here:\n*  http://www.jasonmayes.com/projects/twitterApi/\n*  Github: https://github.com/jasonmayes/Twitter-Post-Fetcher\n*  Updates will be posted to this site.\n*********************************************************************/\n(function(root,factory){if(typeof define==='function'&&define.amd){define([],factory);}else if(typeof exports==='object'){module.exports=factory();}else{factory();}}(this,function(){var domNode='';var maxTweets=20;var parseLinks=true;var queue=[];var inProgress=false;var printTime=true;var printUser=true;var formatterFunction=null;var supportsClassName=true;var showRts=true;var customCallbackFunction=null;var showInteractionLinks=true;var showImages=false;var useEmoji=false;var targetBlank=true;var lang='en';var permalinks=true;var dataOnly=false;var script=null;var scriptAdded=false;function handleTweets(tweets){if(customCallbackFunction===null){var x=tweets.length;var n=0;var element=document.getElementById(domNode);var html='<ul>';while(n<x){html+='<li>'+tweets[n]+'</li>';n++;}\nhtml+='</ul>';element.innerHTML=html;}else{customCallbackFunction(tweets);}}\nfunction strip(data){return data.replace(/<b[^>]*>(.*?)<\\/b>/gi,function(a,s){return s;}).replace(/class=\"(?!(tco-hidden|tco-display|tco-ellipsis))+.*?\"|data-query-source=\".*?\"|dir=\".*?\"|rel=\".*?\"/gi,'');}\nfunction targetLinksToNewWindow(el){var links=el.getElementsByTagName('a');for(var i=links.length-1;i>=0;i--){links[i].setAttribute('target','_blank');}}\nfunction getElementsByClassName(node,classname){var a=[];var regex=new RegExp('(^| )'+classname+'( |$)');var elems=node.getElementsByTagName('*');for(var i=0,j=elems.length;i<j;i++){if(regex.test(elems[i].className)){a.push(elems[i]);}}\nreturn a;}\nfunction extractAuthor(el) {\n      var $el = $(el);\n      var link = $el.find('a').attr('href');\n      return link;\n    }\nfunction extractImageUrl(image_data){if(image_data!==undefined&&image_data.innerHTML.indexOf('data-srcset')>=0){var data_src=image_data.innerHTML.match(/data-srcset=\"([A-z0-9%_\\.-]+)/i)[0];return decodeURIComponent(data_src).split('\"')[1];}}\nvar twitterFetcher={fetch:function(config){if(config.maxTweets===undefined){config.maxTweets=20;}\nif(config.enableLinks===undefined){config.enableLinks=true;}\nif(config.showUser===undefined){config.showUser=true;}\nif(config.showTime===undefined){config.showTime=true;}\nif(config.dateFunction===undefined){config.dateFunction='default';}\nif(config.showRetweet===undefined){config.showRetweet=true;}\nif(config.customCallback===undefined){config.customCallback=null;}\nif(config.showInteraction===undefined){config.showInteraction=true;}\nif(config.showImages===undefined){config.showImages=false;}\nif(config.useEmoji===undefined){config.useEmoji=false;}\nif(config.linksInNewWindow===undefined){config.linksInNewWindow=true;}\nif(config.showPermalinks===undefined){config.showPermalinks=true;}\nif(config.dataOnly===undefined){config.dataOnly=false;}\nif(inProgress){queue.push(config);}else{inProgress=true;domNode=config.domId;maxTweets=config.maxTweets;parseLinks=config.enableLinks;printUser=config.showUser;printTime=config.showTime;showRts=config.showRetweet;formatterFunction=config.dateFunction;customCallbackFunction=config.customCallback;showInteractionLinks=config.showInteraction;showImages=config.showImages;useEmoji=config.useEmoji;targetBlank=config.linksInNewWindow;permalinks=config.showPermalinks;dataOnly=config.dataOnly;var head=document.getElementsByTagName('head')[0];if(script!==null){head.removeChild(script);}\nscript=document.createElement('script');script.type='text/javascript';if(config.list!==undefined){script.src='https://syndication.twitter.com/timeline/list?'+'callback=__twttrf.callback&dnt=false&list_slug='+\nconfig.list.listSlug+'&screen_name='+config.list.screenName+'&suppress_response_codes=true&lang='+(config.lang||lang)+'&rnd='+Math.random();}else if(config.profile!==undefined){script.src='https://syndication.twitter.com/timeline/profile?'+'callback=__twttrf.callback&dnt=false'+'&screen_name='+config.profile.screenName+'&suppress_response_codes=true&lang='+(config.lang||lang)+'&rnd='+Math.random();}else if(config.likes!==undefined){script.src='https://syndication.twitter.com/timeline/likes?'+'callback=__twttrf.callback&dnt=false'+'&screen_name='+config.likes.screenName+'&suppress_response_codes=true&lang='+(config.lang||lang)+'&rnd='+Math.random();}else{script.src='https://cdn.syndication.twimg.com/widgets/timelines/'+\nconfig.id+'?&lang='+(config.lang||lang)+'&callback=__twttrf.callback&'+'suppress_response_codes=true&rnd='+Math.random();}\nhead.appendChild(script);}},callback:function(data){if(data===undefined||data.body===undefined){inProgress=false;if(queue.length>0){twitterFetcher.fetch(queue[0]);queue.splice(0,1);}\nreturn;}\nif(!useEmoji){data.body=data.body.replace(/(<img[^c]*class=\"Emoji[^>]*>)|(<img[^c]*class=\"u-block[^>]*>)/g,'');}\nif(!showImages){data.body=data.body.replace(/(<img[^c]*class=\"NaturalImage-image[^>]*>|(<img[^c]*class=\"CroppedImage-image[^>]*>))/g,'');}\nif(!printUser){data.body=data.body.replace(/(<img[^c]*class=\"Avatar\"[^>]*>)/g,'');}\nvar div=document.createElement('div');div.innerHTML=data.body;if(typeof(div.getElementsByClassName)==='undefined'){supportsClassName=false;}\nfunction swapDataSrc(element){var avatarImg=element.getElementsByTagName('img')[0];avatarImg.src=avatarImg.getAttribute('data-src-2x');return element;}\nvar tweets=[];var authors=[];var times=[];var images=[];var rts=[];var tids=[];var permalinksURL=[];var x=0;if(supportsClassName){var tmp=div.getElementsByClassName('timeline-Tweet');while(x<tmp.length){if(tmp[x].getElementsByClassName('timeline-Tweet-retweetCredit').length>0){rts.push(true);}else{rts.push(false);}\nif(!rts[x]||rts[x]&&showRts){tweets.push(tmp[x].getElementsByClassName('timeline-Tweet-text')[0]);tids.push(tmp[x].getAttribute('data-tweet-id'));if(printUser){authors.push(swapDataSrc(tmp[x].getElementsByClassName('timeline-Tweet-author')[0]));}\ntimes.push(tmp[x].getElementsByClassName('dt-updated')[0]);permalinksURL.push(tmp[x].getElementsByClassName('timeline-Tweet-timestamp')[0]);if(tmp[x].getElementsByClassName('timeline-Tweet-media')[0]!==undefined){images.push(tmp[x].getElementsByClassName('timeline-Tweet-media')[0]);}else{images.push(undefined);}}\nx++;}}else{var tmp=getElementsByClassName(div,'timeline-Tweet');while(x<tmp.length){if(getElementsByClassName(tmp[x],'timeline-Tweet-retweetCredit').length>0){rts.push(true);}else{rts.push(false);}\nif(!rts[x]||rts[x]&&showRts){tweets.push(getElementsByClassName(tmp[x],'timeline-Tweet-text')[0]);tids.push(tmp[x].getAttribute('data-tweet-id'));if(printUser){authors.push(swapDataSrc(getElementsByClassName(tmp[x],'timeline-Tweet-author')[0]));}\ntimes.push(getElementsByClassName(tmp[x],'dt-updated')[0]);permalinksURL.push(getElementsByClassName(tmp[x],'timeline-Tweet-timestamp')[0]);if(getElementsByClassName(tmp[x],'timeline-Tweet-media')[0]!==undefined){images.push(getElementsByClassName(tmp[x],'timeline-Tweet-media')[0]);}else{images.push(undefined);}}\nx++;}}\nif(tweets.length>maxTweets){tweets.splice(maxTweets,(tweets.length-maxTweets));authors.splice(maxTweets,(authors.length-maxTweets));times.splice(maxTweets,(times.length-maxTweets));rts.splice(maxTweets,(rts.length-maxTweets));images.splice(maxTweets,(images.length-maxTweets));permalinksURL.splice(maxTweets,(permalinksURL.length-maxTweets));}\nvar arrayTweets=[];var x=tweets.length;var n=0;if(dataOnly){while(n<x){arrayTweets.push({tweet:tweets[n].innerHTML,author:authors[n]?authors[n].innerHTML:'Unknown Author',author_data:{profile_url:authors[n]?authors[n].querySelector('[data-scribe=\"element:user_link\"]').href:null,profile_image:authors[n]?authors[n].querySelector('[data-scribe=\"element:avatar\"]').getAttribute('data-src-1x'):null,profile_image_2x:authors[n]?authors[n].querySelector('[data-scribe=\"element:avatar\"]').getAttribute('data-src-2x'):null,screen_name:authors[n]?authors[n].querySelector('[data-scribe=\"element:screen_name\"]').title:null,name:authors[n]?authors[n].querySelector('[data-scribe=\"element:name\"]').title:null},time:times[n].textContent,timestamp:times[n].getAttribute('datetime').replace('+0000','Z').replace(/([\\+\\-])(\\d\\d)(\\d\\d)/,'$1$2:$3'),image:extractImageUrl(images[n]),rt:rts[n],tid:tids[n],permalinkURL:(permalinksURL[n]===undefined)?'':permalinksURL[n].href});n++;}}else{while(n<x){if(typeof(formatterFunction)!=='string'){var datetimeText=times[n].getAttribute('datetime');var newDate=new Date(times[n].getAttribute('datetime').replace(/-/g,'/').replace('T',' ').split('+')[0]);var dateString=formatterFunction(newDate,datetimeText);times[n].setAttribute('aria-label',dateString);if(tweets[n].textContent){if(supportsClassName){times[n].textContent=dateString;}else{var h=document.createElement('p');var t=document.createTextNode(dateString);h.appendChild(t);h.setAttribute('aria-label',dateString);times[n]=h;}}else{times[n].textContent=dateString;}}\nvar op='';if(parseLinks){if(targetBlank){targetLinksToNewWindow(tweets[n]);if(printUser){targetLinksToNewWindow(authors[n]);}}\nif(printUser){op+='<div class=\"swiper-slide\"><div class=\"tweet-wrapper\"><div class=\"user\">'+strip(authors[n].innerHTML)+'</div>';}\nop+='<p class=\"tweet\">'+strip(tweets[n].innerHTML)+'</p>';if(printTime){if(permalinks){op+='<p class=\"timePosted\"><a href=\"'+permalinksURL[n]+'\">'+times[n].getAttribute('aria-label')+'</a></p>';}else{op+='<p class=\"timePosted\">'+\ntimes[n].getAttribute('aria-label')+'</p>';}}}else{if(tweets[n].textContent){if(printUser){op+='<p class=\"user\">'+authors[n].textContent+'</p>';}\nop+='<p class=\"tweet\">'+tweets[n].textContent+'</p>';if(printTime){op+='<p class=\"timePosted\">'+times[n].textContent+'</p>';}}else{if(printUser){op+='<p class=\"user\">'+authors[n].textContent+'</p>';}\nop+='<p class=\"tweet\">'+tweets[n].textContent+'</p>';if(printTime){op+='<p class=\"timePosted\">'+times[n].textContent+'</p>';}}}\nif(showInteractionLinks){op+='<p class=\"interact\"><a href=\"https://twitter.com/intent/'+'tweet?in_reply_to='+tids[n]+'\" class=\"twitter_reply_icon\"'+\n(targetBlank?' target=\"_blank\">':'>')+'</a><a href=\"https://twitter.com/intent/retweet?'+'tweet_id='+tids[n]+'\" class=\"twitter_retweet_icon\"'+\n(targetBlank?' target=\"_blank\">':'>')+'</a>'+'<a href=\"https://twitter.com/intent/favorite?tweet_id='+\ntids[n]+'\" class=\"twitter_fav_icon\"'+\n(targetBlank?' target=\"_blank\">':'>')+'</a></p></div></div>';}\nif(showImages&&images[n]!==undefined&&extractImageUrl(images[n])!==undefined){op+='<div class=\"media\">'+'<img src=\"'+extractImageUrl(images[n])+'\" alt=\"Image from tweet\" />'+'</div>';}\nif(showImages){arrayTweets.push(op);}else if(!showImages&&tweets[n].textContent.length){arrayTweets.push(op);}\nn++;}}\nhandleTweets(arrayTweets);inProgress=false;if(queue.length>0){twitterFetcher.fetch(queue[0]);queue.splice(0,1);}}};window.__twttrf=twitterFetcher;window.twitterFetcher=twitterFetcher;return twitterFetcher;}));\n\n/**\n * ### HOW TO CREATE A VALID ID TO USE: ###\n * Go to www.twitter.com and sign in as normal, go to your settings page.\n * Go to \"Widgets\" on the left hand side.\n * Create a new widget for what you need eg \"user time line\" or \"search\" etc.\n * Feel free to check \"exclude replies\" if you don't want replies in results.\n * Now go back to settings page, and then go back to widgets page and\n * you should see the widget you just created. Click edit.\n * Look at the URL in your web browser, you will see a long number like this:\n * 345735908357048478\n * Use this as your ID below instead!\n */\n\n/**\n * How to use TwitterFetcher's fetch function:\n *\n * @function fetch(object) Fetches the Twitter content according to\n *     the parameters specified in object.\n *\n * @param object {Object} An object containing case sensitive key-value pairs\n *     of properties below.\n *\n * You may specify at minimum the following two required properties:\n *\n * @param object.id {string} The ID of the Twitter widget you wish\n *     to grab data from (see above for how to generate this number).\n * @param object.domId {string} The ID of the DOM element you want\n *     to write results to.\n *\n * You may also specify one or more of the following optional properties\n *     if you desire:\n *\n * @param object.maxTweets [int] The maximum number of tweets you want\n *     to return. Must be a number between 1 and 20. Default value is 20.\n * @param object.enableLinks [boolean] Set false if you don't want\n *     urls and hashtags to be hyperlinked.\n * @param object.showUser [boolean] Set false if you don't want user\n *     photo / name for tweet to show.\n * @param object.showTime [boolean] Set false if you don't want time of tweet\n *     to show.\n * @param object.dateFunction [function] A function you can specify\n *     to format date/time of tweet however you like. This function takes\n *     a JavaScript date as a parameter and returns a String representation\n *     of that date.\n * @param object.showRetweet [boolean] Set false if you don't want retweets\n *     to show.\n * @param object.customCallback [function] A function you can specify\n *     to call when data are ready. It also passes data to this function\n *     to manipulate them yourself before outputting. If you specify\n *     this parameter you must output data yourself!\n * @param object.showInteraction [boolean] Set false if you don't want links\n *     for reply, retweet and favourite to show.\n * @param object.showImages [boolean] Set true if you want images from tweet\n *     to show.\n * @param object.lang [string] The abbreviation of the language you want to use\n *     for Twitter phrases like \"posted on\" or \"time ago\". Default value\n *     is \"en\" (English).\n */\n\n\ntheme.TwitterSection = (function() {\n\n  function TwitterSection(container) {\n    var $container = this.$container = $(container),\n        id = $container.attr('data-section-id'),\n        username = $container.attr('data-username') || \"Shopify\";\n\n    function renderTweets(tweets) {\n      if(!tweets || !tweets.length) {\n        return;\n      }\n\n      tweets.forEach(function (tweet) {\n        $(\"#inline-swiper-\"+id).find('.swiper-wrapper').append(tweet);\n      });\n\n      inlineSwiper($container);\n\n      twttr.widgets.load();\n    }\n\n    function dateFormat(date, dateString) {\n      return '<span class=\"tweet-date-title\">Posted</span>' + '<span class=\"tweet-date\">' + moment(dateString).fromNow() + '</span>';\n    }\n\n    twitterFetcher.fetch({\n      'profile': { 'screenName': username },\n      'maxTweets': +$container.attr('data-blocks-limit'),\n      'enableLinks': true,\n      'showUser': true,\n      'showTime': true,\n      'dataOnly': false,\n      'showImages': false,\n      'showRetweet': true,\n      'lang': 'en',\n      'customCallback': renderTweets,\n      'showInteraction': true,\n      'dateFunction': dateFormat\n    });\n  }\n  return TwitterSection;\n})();\n\n// theme.SocialMediaSection\n// theme.SocialMediaSection = (function() {\n//   function SocialMediaSection(container) {\n//\n//     var $container = this.$container = $(container);\n//     var id = $container.attr('data-section-id');\n//     var instafeedEl = this.instagram = $('#Instafeed-' + id);\n//     var instafeedId = this.instagram = 'Instafeed-' + id;\n//   var username = $container.find(\".tweeter-container\").data(\"username\") || null;\n//     var maxTweets = $container.find(\".tweeter-container\").data(\"max_tweets\") || 1;\n//     var sectionSize = $container.find(\".tweeter-container\").data(\"section_size\") || null;\n//\n//\n//     var userFeed = new Instafeed({\n//       get: 'user',\n//       userId: 'self',\n//       target: instafeedId,\n//       accessToken: instafeedEl.attr('data-access-token'),\n//       sortBy: 'most-recent',\n//       resolution: 'standard_resolution',\n//       limit: instafeedEl.attr('data-count'),\n//       template: (\n//         \n//           ''\n//           + '<div class=\"col-'+instafeedEl.attr('data-col')+'\">'\n//             + '<a href=\"{{link}}\" target=\"_blank\" style=\"background-image: url({{image}});\" class=\"'+instafeedEl.attr('data-grid-item')+'\">'\n//               + '<i class=\"lin lin-social-instagram\"></i>'\n//             + '</a>'\n//           + '</div>'\n//         \n//       )\n//     });\n//\n//     if( !_.isUndefined( userFeed.options.accessToken) ){\n//       userFeed.run();\n//     }\n//\n//\n//    var tweeterCarousel;\n//   function _extractAuthor(el) {\n//       var $el = jquery$1(el);\n//\n//       var link = $el.find('a').attr('href');\n//       var name = $el.find('[data-scribe=\"element:name\"]').text();\n//       var screenName = $el.find('[data-scribe=\"element:screen_name\"]').text();\n//       var $avatar = $el.find('img');\n//\n//       return { $avatar: $avatar, link: link, name: name, screenName: screenName };\n//     }\n//\n//   function renderTweets(tweets) {\n//       var tweetsLength = tweets.length;\n//\n//       if (!tweets || !tweetsLength) return;\n//\n//       tweets.forEach(function (tweet) {\n//         $(\"#tweeter-container-\"+id).append(tweet);\n//       });\n//\n//\n//\n//     if($('.swiper-tweeter-'+id+' .swiper-wrapper .swiper-slide').length > 1){\n//        var useLoop = true;\n//       }else{\n//        var useLoop = false;\n//       }\n//\n//     if(sectionSize == 1){\n//       if(maxTweets >= 6){\n//         var slidesPerGroupSetting = 3;\n//       }else{\n//         var slidesPerGroupSetting = 1;\n//         var useLoop = false;\n//       }\n//       var slidesPerViewSettings = 3;\n//     }else{\n//       var slidesPerViewSettings = 1;\n//       var slidesPerGroupSetting = 1;\n//     }\n//          tweeterCarousel = new Swiper ('.swiper-tweeter-'+id, {\n//         // Optional parameters\n//         direction: 'horizontal',\n//          pagination: {\n//             el: '.swiper-pagination-'+id,\n//             clickable: true\n//           },\n//         loop: useLoop,\n//            slidesPerGroup: slidesPerGroupSetting,\n//           slidesPerView: slidesPerViewSettings,\n//           breakpoints: {\n//             768: {\n//               slidesPerView: 1,\n//               slidesPerGroup: 1,\n//               loop: true\n//             }\n//           },\n//         autoplay: 3000\n//       });\n//\n//      twttr.widgets.load();\n//     $(window).off(\"resize.swipperSwipe\");\n//     $(window).on('resize.swipperSwipe', function (){\n//\n//       tweeterCarousel.destroy();\n//       tweeterCarousel = new Swiper ('.swiper-tweeter-'+id, {\n//         // Optional parameters\n//         direction: 'horizontal',\n//         pagination: {\n//             el: '.swiper-pagination-'+id,\n//             clickable: true\n//           },\n//         loop: useLoop,\n//         slidesPerGroup: slidesPerGroupSetting,\n//          slidesPerView: slidesPerViewSettings,\n//           breakpoints: {\n//             768: {\n//               slidesPerView: 1,\n//               slidesPerGroup: 1,\n//               loop: true\n//             }\n//           }\n//       });\n//\n//      twttr.widgets.load();\n//     });\n//\n//     }\n//\n//     if(username != null){\n//       twitterFetcher.fetch({\n//         'profile': { 'screenName': username },\n//         'maxTweets': maxTweets,\n//         'enableLinks': true,\n//         'showUser': true,\n//         'showTime': true,\n//         'dataOnly': false,\n//         'showImages': false,\n//         'showRetweet': true,\n//         'lang': 'en',\n//         'customCallback': function customCallback(tweets) {\n//           return renderTweets(tweets);\n//         },\n//         'showInteraction': true\n//       });\n//     }\n//   }\n//   return SocialMediaSection;\n// })();\n//\n// theme.SocialMediaSection.prototype = _.assignIn({}, theme.SocialMediaSection.prototype, {\n//\n//   onSelect: function(){\n//     $(\".animated\").addClass(\"animation-done\");\n//   }\n// });\n\n\ntheme.InstagramSection = (function() {\n  function InstagramSection(container) {\n\n    var $container = this.$container = $(container);\n    var id = $container.attr('data-section-id');\n    var instafeedEl = this.instagram = $('#Instafeed-' + id);\n    var instafeedId = this.instagram = 'Instafeed-' + id;\n\n    var userFeed = new Instafeed({\n      get: 'user',\n      userId: 'self',\n      target: instafeedId,\n      accessToken: instafeedEl.attr('data-access-token'),\n      sortBy: 'most-recent',\n      resolution: 'standard_resolution',\n      limit: instafeedEl.attr('data-count'),\n      template: (\n        \n          ''\n          + '<div class=\"col-'+instafeedEl.attr('data-col')+'\">'\n            + '<a href=\"{{link}}\" target=\"_blank\" style=\"background-image: url({{image}});\" class=\"'+instafeedEl.attr('data-grid-item')+'\">'\n              + '<i class=\"lin lin-social-instagram\"></i>'\n            + '</a>'\n          + '</div>'\n        \n      )\n    });\n\n    if( !_.isUndefined( userFeed.options.accessToken) ){\n      userFeed.run();\n    }\n  }\n  return InstagramSection;\n})();\n\n// theme.LogoSection\ntheme.LogoSection = (function() {\n\n  function LogoSection(container) {\n    var $container = this.$container = $(container);\n    inlineSwiper($container);\n  }\n\n  return LogoSection;\n})();\n\ntheme.Quotes = (function() {\n  function Quotes(container) {\n\n    var $container = this.$container = $(container);\n\n    inlineSwiper($container);\n\n\n  }\n\n  return Quotes;\n})();\n// theme.ImageBarSection\nfunction hexToRGB(hex, alpha) {\n  var r = parseInt(hex.slice(1, 3), 16),\n      g = parseInt(hex.slice(3, 5), 16),\n      b = parseInt(hex.slice(5, 7), 16);\n\n//   if (alpha) {\n//     return \"rgba(\" + r + \", \" + g + \", \" + b + \", \" + alpha + \")\";\n//   } else {\n//     return \"rgb(\" + r + \", \" + g + \", \" + b + \")\";\n//   }\n\n  return \"rgba(\" + r + \", \" + g + \", \" + b + \", \" + alpha + \")\";\n}\ntheme.ImageBarSection = (function() {\n  function ImageBarSection(container) {\n\n    var $container = this.$container = $(container);\n    var id = $container.attr('data-section-id');\n    var isLightbox = $container.attr('data-section-lighbox');\n    // var heightArr = [];\n    // $container.find(\".grid__item\").each(function(){\n    //   var blockId = $(this).data('id'),\n    //       color = $(this).data('color'),\n    //       opacity = $(this).data('opacity')/100,\n    //       rgba = hexToRGB(color, opacity),\n    //       itemMinHeight = $(this).find(\".title-image-text\").outerHeight();\n    //   heightArr.push(itemMinHeight);\n    //   $(\".gallery-text-\"+blockId).css(\"background-color\", rgba);\n    // });\n    //\n    // var maxHeight = Math.max.apply(null, heightArr);\n    // $container.find(\".grid__item\").css(\"min-height\", maxHeight);\n    // $container.find(\".image-bar__content\").css(\"min-height\", maxHeight);\n    // $( window ).resize(function() {\n    //   var newHeightArr = [];\n    //   $container.find(\".grid__item\").each(function(){\n    //     var itemMinHeight = $(this).find(\".title-image-text\").outerHeight();\n    //     newHeightArr.push(itemMinHeight);\n    //   });\n    //\n    //   var maxHeight = Math.max.apply(null, newHeightArr);\n    //   $container.find(\".grid__item\").css(\"min-height\", maxHeight);\n    //   $container.find(\".image-bar__content\").css(\"min-height\", maxHeight);\n    // });\n    if(isLightbox === \"true\") {\n      $container.magnificPopup({\n        delegate: '.gallery-item-link',\n        mainClass: '-image-gallery my-mfp-zoom-in',\n        type: 'image',\n        gallery: {\n          enabled: true\n        },\n        image: {\n          titleSrc: function(item) {\n    \t\t\t\treturn '' +\n            '<h4 class=\"gallery-item_lighbox-title\">' + item.el.attr('title') + '</h4>' +\n            '<p class=\"gallery-item_lighbox-subtitle\">' + item.el.attr('data-subtitle') + '</p>';\n    \t\t\t}\n        }\n      })\n    }\n  }\n\n  return ImageBarSection;\n})();\n\ntheme.ImageBarSection.prototype = _.assignIn({}, theme.ImageBarSection.prototype, {\n  onBlockSelect: function(evt) {\n    var blockId = $(evt.target).data('id'),\n        color = $(evt.target).data('color'),\n        opacity = $(evt.target).data('opacity')/100,\n        rgba = hexToRGB(color, opacity);\n\n    $(\".gallery-text-\"+blockId).css(\"background-color\", rgba);\n  }\n});\n\n// theme.RichTextSection\ntheme.RichTextSection = (function() {\n  function RichTextSection(container) {\n\n    var $container = this.$container = $(container);\n    var id = $container.attr('data-section-id');\n    var itemMinHeight = $container.find(\".hero__inner\").outerHeight() -80;\n    $container.find(\".hero\").css(\"min-height\", itemMinHeight);\n    $( window ).resize(function() {\n      var itemMinHeight = $container.find(\".hero__inner\").outerHeight() -80;\n      $container.find(\".hero\").css(\"min-height\", itemMinHeight);\n    });\n  }\n\n  return RichTextSection;\n})();\n\n// theme.NewsletterSection\ntheme.NewsletterSection = (function() {\n  function NewsletterSection(container) {\n\n    var $container = this.$container = $(container);\n    var id = $container.attr('data-section-id');\n    var itemMinHeight = $container.find(\".hero__inner\").outerHeight() -80;\n    $container.find(\".hero\").css(\"min-height\", itemMinHeight);\n    $( window ).resize(function() {\n      var itemMinHeight = $container.find(\".hero__inner\").outerHeight() -80;\n      $container.find(\".hero\").css(\"min-height\", itemMinHeight);\n    });\n\n\n     $container.find(\"form\").on(\"submit\", function(){\n       event.preventDefault();\n\t   var cookieTime = 2000;\n       $.cookie('newsletter_confirm', 'newsletter', { expires: cookieTime });\n       $(this).off('submit').submit();\n    });\n\n    if($.cookie('newsletter_confirm') != null && (window.location.search == \"?customer_posted=true\" || window.location.hash == \"#contact_form\" || $container.find(\"form .errors\").length) && window.location.href.indexOf(\"challenge\") < 0){\n      $.cookie('newsletter_confirm', null);\n      window.history.replaceState(null, null, window.location.pathname);\n      $(\"#shopify-section-footer .errors\").hide();\n      if(!$container.find(\"form .errors\").length){\n      \t$container.find(\"form\").html('<div class=\"alert alert-success\">Thanks for subscribing to our newsletter!</div>');\n       }\n       var target_offset =  $container.find(\"form\").closest(\".shopify-section\").offset().top;\n       var animation_durration = target_offset/1000*150;\n\n       $('html, body').animate({\n          scrollTop: $container.find(\"form\").closest(\".shopify-section\").offset().top\n        }, animation_durration, function() {\n\n          if(($container.find(\"form\").closest(\".shopify-section\").offset().top > $(window).scrollTop()) && ($(window).scrollTop() + $(window).height() < $(document).height())){\n            var target_offset =  $container.find(\"form\").closest(\".shopify-section\").offset().top - $(window).scrollTop();\n            var animation_durration = target_offset/1000*150;\n            $('html, body').animate({\n              scrollTop: $container.find(\"form\").closest(\".shopify-section\").offset().top\n            }, animation_durration);\n          }\n  \t\t});\n    }\n\n  }\n\n  return NewsletterSection;\n})();\n\n\n\n\n// theme.Cart\ntheme.Cart = (function() {\n  function Cart(container) {\n    bindEventsInCart();\n  }\n\n  return Cart;\n})();\n\ntheme.Cart.prototype = _.assignIn({}, theme.Cart.prototype, {\n\n  onSelect: function(){\n    updatePageHeaderView();\n  }\n});\n\nvar handleizeStr = function (str) {\n  return str.toLowerCase().replace(/[^\\w\\u00C0-\\u024f]+/g, \"-\").replace(/^-+|-+$/g, \"\");\n};\n// theme.Product Page\nvar changeUrl = false;\nvar index_featured_product_image = false;\ntheme.ProductPage = (function() {\n  var defaults = {\n    // Breakpoints from src/stylesheets/global/variables.scss.liquid\n    mediaQuerySmall: 'screen and (max-width: 749px)',\n    mediaQueryMediumUp: 'screen and (min-width: 750px)',\n    bpSmall: false,\n    sliderActive: false,\n    zoomEnabled: false,\n    imageSize: null,\n    imageZoomSize: null,\n    selectors: {\n      addToCart: '#AddToCart',\n      addToCartText: '#AddToCartText',\n      productFeaturedImage: '#FeaturedImage',\n      productThumbImages: '.swiper-slide',\n      productThumbs: '.product-item-img',\n      optionSelector: 'ProductSelect',\n      saleLabel: '.product-price__sale-label',\n      saleClasses: 'product-price__sale product-price__sale--single'\n    }\n  };\n\n  function swapNodes(a, b) {\n    a.replaceWith(b.clone());\n    b.replaceWith(a);\n  }\n  var desktop_title = $('.desktop_caption_header').find('h1.product-item-caption-title');\n  var mobile_title = $('.mobile_caption_header').find('p.product-item-caption-title');\n  if($(window).width() < 768) {\n    swapNodes(mobile_title,desktop_title);\n  } \n  $(window).resize(function () {\n    if($(window).width() < 768) {\n      var desktop_title = $('.desktop_caption_header').find('h1.product-item-caption-title');\n      var mobile_title = $('.mobile_caption_header').find('p.product-item-caption-title');\n      swapNodes(mobile_title,desktop_title);\n    } else {   \n\n      var desktop_title = $('.desktop_caption_header').find('p.product-item-caption-title');\n      var mobile_title = $('.mobile_caption_header').find('h1.product-item-caption-title');\n      swapNodes(desktop_title,mobile_title);\n    }\n  });\n\n\n\n   $(\"#shopify-product-reviews\").on(\"click\",\".spr-summary-actions-newreview\", function(){\n     $.fn.matchHeight._update();\n  });\n\n\n  function Product(container) {\n    var $container = this.$container = $(container);\n    var sectionId = $container.attr('data-section-id');\n\n\n    this.settings = $.extend({}, defaults, {\n      sectionId: sectionId,\n      swiperObjects: {},\n      selectors: {\n        originalSelectorId: 'ProductSelect-' + sectionId,\n        addToCart: '#AddToCart-' + sectionId,\n        productPrice: '#ProductPrice-' + sectionId + ' span',\n        comparePrice: '#ComparePrice-' + sectionId + ' span',\n        addToCartText: '#AddToCartText-' + sectionId,\n        productFeaturedImage: '#FeaturedImage-' + sectionId,\n        productImageWrap: '#FeaturedImageZoom-' + sectionId,\n        productThumbImages: '.product-single__thumbnail--' + sectionId,\n        productThumbs: '.product-single__thumbnails-' + sectionId,\n        saleLabel: '.product-price__sale-label-' + sectionId,\n        saleClasses: 'product-price__sale product-price__sale--single',\n        price: '.product-price__price-' + sectionId,\n        PP_zoomEnabled:'.zoom-link',\n        variantSkuRow: '.sku-table-row-' + sectionId,\n        variantSku: '.variant-sku-' + sectionId,\n        variantInventoryRow: '.inventory-product-row-' + sectionId,\n        variantInventory: '.variant-inventory-' + sectionId\n      }\n    });\n\n    $container.find('form[action*=\"/cart/add\"]').submit(function(e) {\n      \n    });\n\n    var videoInRTE = $container.find(\".prodyct-rte-description iframe\").length || false;\n\n    if(videoInRTE){\n      $container.find(\".prodyct-rte-description iframe\").wrap(\"<div class='videoWrapperRTE'></div>\");\n    }\n\n    initQuantityEvents(sectionId);\n\n    // Stop parsing if we don't have the product json script tag when loading\n    // section in the Theme Editor\n    if (!$('#ProductJson-' + sectionId).html()) {\n      if($(window).width() > 767) {\n        $(\".equal-columns-\"+sectionId).matchHeight();\n      }\n      return;\n    }\n\n    this.productSingleObject = JSON.parse(document.getElementById('ProductJson-' + sectionId).innerHTML);\n\n    this.init();\n\n    $.fn.matchHeight._update();\n  }\n\n  Product.prototype = _.assignIn({}, Product.prototype, {\n    init: function() {\n      this.initSwiper();\n      this.stringOverrides();\n      this.initProductVariant();\n      this.initImageZoom();\n      this.initSelectDropdowns();\n      this.initSwatches();\n      this.initStickSlider();\n      this.initTabs();\n    },\n    initTabs: function(){\n      var sectionId = this.settings.sectionId;\n    var prodDesc = $('.main-product-description-'+sectionId);\n        var prodDescHtml = prodDesc.html();\n  if (typeof prodDescHtml != 'undefined') {\n    var matchs = prodDescHtml.match(/\\<\\!\\-\\- TABS \\-\\-\\>((.|[\\r\\n])+)\\<\\!\\-\\- \\/TABS \\-\\-\\>/m);\n    \n    if(matchs!==null && matchs.length>1) {\n      $('.product-description-tabs-'+sectionId).html('<ul class=\"resp-tabs-list pr-tab-'+sectionId+'\"></ul><div class=\"resp-tabs-container pr-tab-'+sectionId+'\"></div>');\n      prodDesc.html(prodDescHtml.replace(/\\<\\!\\-\\- TABS \\-\\-\\>((.|[\\r\\n])+)\\<\\!\\-\\- \\/TABS \\-\\-\\>/m, ''));\n      var tabs = matchs[1].split('<h5>');\n//       var imgClosed = \u2018<img class=\u201Cmobile_tab_icons mobile_tab_icon_closed\u201D src=\u201C\u201C/>\u2018;\n//       var imgOpen = \u2018<img class=\u201Cmobile_tab_icons mobile_tab_icon_open\u201D src=\u201C\u2018;\n      $.each(tabs, function(i,v){\n        if(i!=0) {\n\n         info = v.split('</h5>');\n\n         $('.resp-tabs-list.pr-tab-'+sectionId).append('<li id=\"'+handleizeStr(info[0])+'\">'+info[0]+'</li>');\n          $('.resp-tabs-container.pr-tab-'+sectionId).append('<div>'+info[1]+'</div>');\n\n       }\n      });\n\n\n      $('.product-description-tabs-'+sectionId).easyResponsiveTabs({\n            type: 'default', //Types: default, vertical, accordion\n            width: 'auto', //auto or any width like 600px\n            fit: true, // 100% fit in a container\n            tabidentify: 'pr-tab-'+sectionId, // The tab groups identifier\n          activate: function() {\n              $.fn.matchHeight._maintainScroll = true;\n              $.fn.matchHeight._update();\n            }\n        });\n\n      if (window.location.hash !== '') {\n      var thisUrlHash = window.location.hash;\n      var selectedHash = '#'+thisUrlHash.split('#tab=')[1];\n      $('.product-description-tabs-'+sectionId).find(selectedHash).click();\n    }\n\n   }\n  }\n    },\n    initStickSlider: function(){\n      var sectionId = this.settings.sectionId;\n\n\n        if($(window).width() > 767) {\n\n        var descriptionHeight = $(\".product-description-\"+sectionId).outerHeight();\n        var galleryHeight = $(\".product-gallery-\"+sectionId).outerHeight();\n        if(galleryHeight > descriptionHeight){\n          $(\".equal-columns-\"+sectionId).matchHeight();\n        }else{\n    $(\"#ProductSection-\"+sectionId+\" #parent > div\").matchHeight();\n          $('.slider-'+ sectionId).stick_in_parent({\n            parent: '#parent'\n          });\n        }\n      }\n      $( window ).resize(function() {\n\n        if($(window).width() > 767) {\n          var descriptionHeight = $(\".product-description-\"+sectionId).outerHeight();\n          var galleryHeight = $(\".product-gallery-\"+sectionId).outerHeight();\n          if(galleryHeight > descriptionHeight){\n            $(\".equal-columns-\"+sectionId).matchHeight();\n          }else{\n            if((typeof $._data($(\".slider-\"+sectionId)[0]).events) == 'undefined'){\n                $('.slider-'+ sectionId).stick_in_parent({\n              parent: '#parent'\n            });\n            }\n          }\n        }\n        else{\n          $('.slider-'+ sectionId).trigger(\"sticky_kit:detach\");\n        }\n      });\n    },\n\n    stringOverrides: function() {\n      // Override defaults in theme.strings with potential\n      // template overrides\n\n      theme.productStrings = theme.productStrings || {};\n      $.extend(theme.strings, theme.productStrings);\n    },\n    initImageZoom: function() {\n      if(typeof $.zoom === 'function' && this.settings.selectors.PP_zoomEnabled.length){\n        if($(window).width() > 767) {\n          var imageBlock = $('#slider');\n          if(imageBlock.length){\n            var imageSlideLinks = imageBlock.find('.zoom-img-wrap');\n            if(imageSlideLinks.length){\n              imageSlideLinks.each(function(){\n                var t = $(this);\n                var url = t.find(\"img.zoom-img\").data('srczoom');\n                t.find(\".zoom-img-container\").zoom({ url:url,touch:false });\n              });\n            }\n          }\n        }\n\n        $( window ).resize(function() {\n          if($(window).width() > 767) {\n            var imageBlock = $('#slider');\n            if(imageBlock.length){\n              var imageSlideLinks = imageBlock.find('.zoom-img-wrap');\n              if(imageSlideLinks.length){\n                imageSlideLinks.each(function(){\n                  var t = $(this);\n                  var url = t.find(\"img.zoom-img\").data('srczoom');\n                  t.find(\".zoom-img-container\").zoom({ url:url,touch:false });\n                });\n              }\n            }\n          }else{\n            var imageBlock = $('#slider');\n            if(imageBlock.length){\n              var imageSlideLinks = imageBlock.find('.zoom-img-wrap');\n              if(imageSlideLinks.length){\n                imageSlideLinks.each(function(){\n                  var t = $(this);\n                  t.find(\".zoom-img-container\").trigger('zoom.destroy');\n                });\n              }\n            }\n          }\n\n        });\n      }\n      else{\n        return false;\n      }\n    },\n    initSwatches: function() {\n      this.$container.find('.swatch :radio').change(function() {\n        var optionIndex = jQuery(this).closest('.swatch').attr('data-option-index');\n        var optionValue = jQuery(this).val().replace(/\\s{2,}/g, ' ');\n        jQuery(this)\n        .closest('form')\n        .find('.single-option-selector')\n        .eq(optionIndex)\n        .val(optionValue)\n        .trigger('change');\n      });\n\n      var productJSON = this.productSingleObject;\n      for (var i=0,length=productJSON.variants.length; i<length; i++) {\n        var productVariants = productJSON.variants[i];\n        if(productVariants.available){\n          for (var j=0,optlength=productVariants.options.length; j<optlength; j++) {\n            var variantOption = productVariants.options[j];\n            variantOption = handleizeStr(variantOption);\n            this.$container.find('.swatch[data-option-index=\"'+j+'\"] .'+variantOption+'').removeClass('soldout').addClass('available').find(':radio').removeAttr('disabled');\n          }\n\n        }\n      }\n\n    },\n    initSelectDropdowns: function(){\n      var $container = this.$container;\n      setTimeout(function(){\n        $container.find(\".single-option-selector\").select2({\n          theme: \"classic\",\n          minimumResultsForSearch: Infinity\n        });\n      }, 100);\n    },\n    initSwiper: function(){\n      var windowResizeFunc = function(){\n        $(window).trigger('resize');\n      }\n      //initialize swiper when document ready\n      if($('.swiper-main-'+this.settings.sectionId+' .swiper-wrapper').length > 1){\n         var useLoop = true;\n      }else{\n       var useLoop = false;\n      }\n      this.settings.swiperObjects.mySwiper = new Swiper ('.swiper-main-'+this.settings.sectionId, {\n        // Optional parameters\n        direction: 'horizontal',\n        pagination: {\n            el: '.swiper-pagination-'+this.settings.sectionId,\n            clickable: true\n          },\n        loop: useLoop,\n        autoplay: 3000,\n        updateOnImagesReady :true,\n        onImagesReady: windowResizeFunc,\n         on: {\n            slideChange: function(){\n\t\t\t  var active_index = this.activeIndex;\n              var iframe = this.$el.find('iframe');\n              if (iframe.length) {\n                iframe.each(function(){\n                  if($(this).closest(\".swiper-slide\").index() != active_index ){\n\t\t\t\t\tvar iframeSrc = this.src;\n                    this.src = iframeSrc;\n                  }\n                });\n\n              }\n            }\n         }\n      });\n\n\n      this.settings.swiperObjects.gallerySwiper = new Swiper('#swiper-gallery-'+this.settings.sectionId, {\n        direction: 'horizontal',\n        onImagesReady: windowResizeFunc\n      });\n\n      this.settings.swiperObjects.gallerySwiperVert = new Swiper('#swiper-gallery-vert-'+this.settings.sectionId, {\n        direction: 'horizontal',\n        onImagesReady: windowResizeFunc\n      });\n\n      this.settings.swiperObjects.gallerySwiperThumbs = new Swiper('#swiper-gallery-thumbs-'+this.settings.sectionId, {\n        spaceBetween: 0,\n        centeredSlides: true,\n        slidesPerView: 'auto',\n        touchRatio: 0.2,\n        slideToClickedSlide: true,\n        updateOnImagesReady :true,\n        onImagesReady: windowResizeFunc,\n        disableAutoResize: true,\n    resizeEvent: 'auto',\n        loopedSlides: $('#swiper-gallery-'+this.settings.sectionId+' .swiper-wrapper .swiper-slide').length,\n         on: {\n            slideChange: function(){\n\t\t\t  var active_index = this.activeIndex;\n              var iframe = this.$el.find('iframe');\n              if (iframe.length) {\n                iframe.each(function(){\n                  if($(this).closest(\".swiper-slide\").index() != active_index ){\n\t\t\t\t\tvar iframeSrc = this.src;\n                    this.src = iframeSrc;\n                  }\n                });\n\n              }\n            }\n         }\n      })\n\n      this.settings.swiperObjects.gallerySwiperThumbsVert = new Swiper('#swiper-gallery-thumbs-vert-'+this.settings.sectionId, {\n        spaceBetween: 0,\n        centeredSlides: true,\n        slidesPerView: 'auto',\n        touchRatio: 0.2,\n        slideToClickedSlide: true,\n        direction: 'vertical',\n        updateOnImagesReady :true,\n        onImagesReady: windowResizeFunc,\n         on: {\n            slideChange: function(){\n\t\t\t  var active_index = this.activeIndex;\n              var iframe = this.$el.find('iframe');\n              if (iframe.length) {\n                iframe.each(function(){\n                  if($(this).closest(\".swiper-slide\").index() != active_index ){\n\t\t\t\t\tvar iframeSrc = this.src;\n                    this.src = iframeSrc;\n                  }\n                });\n\n              }\n            }\n         }\n      })\n\n      if(typeof this.settings.swiperObjects.gallerySwiper.controller != \"undefined\"){\n      this.settings.swiperObjects.gallerySwiper.controller.control = this.settings.swiperObjects.gallerySwiperThumbs;\n      this.settings.swiperObjects.gallerySwiperThumbs.controller.control = this.settings.swiperObjects.gallerySwiper;\n      }\n      if(typeof this.settings.swiperObjects.gallerySwiperVert.controller != \"undefined\"){\n      this.settings.swiperObjects.gallerySwiperVert.controller.control = this.settings.swiperObjects.gallerySwiperThumbsVert;\n      this.settings.swiperObjects.gallerySwiperThumbsVert.controller.control = this.settings.swiperObjects.gallerySwiperVert;\n      }\n    },\n\n    initProductVariant: function() {\n      // this.productSingleObject is a global JSON object defined in theme.liquid\n      if (!this.productSingleObject) {\n        return;\n      }\n\n      var self = this;\n\n      var productJSON = this.productSingleObject\n      var productVariantObj = productJSON.variants;\n\n      $(\".main-product-select-\"+productJSON.id+\" .single-option-selector\").on(\"change\", function(){\n\n\n        var option1 = $(\".main-product-select-\"+productJSON.id+\" #SingleOptionSelector-0\").val() || null,\n            option2 = $(\".main-product-select-\"+productJSON.id+\" #SingleOptionSelector-1\").val() || null,\n            option3 = $(\".main-product-select-\"+productJSON.id+\" #SingleOptionSelector-2\").val() || null,\n            flag = true;\n        for (var i=0,length=productVariantObj.length; i<length; i++) {\n          var productVar = productVariantObj[i];\n           if(productVar.option1 != null){productVar.option1 = productVar.option1.replace(/\\s{2,}/g, ' ');}\n          if(productVar.option2 != null){productVar.option2 = productVar.option2.replace(/\\s{2,}/g, ' ');}\n          if(productVar.option3 != null){productVar.option3 = productVar.option3.replace(/\\s{2,}/g, ' ');}\n\n          if(option1==productVar.option1 && option2==productVar.option2 && option3==productVar.option3){\n            flag = false;\n            $('#ProductSelect-' + productJSON.id ).val(productVar.id);\n            self.productVariantCallback(productVar, productJSON.id);\n            break;\n          }\n        }\n        if(flag){\n          self.productVariantCallback(null, productJSON.id);\n        }\n\n      });\n\n      var selectedOptionsLength = $('#ProductSelect-' + productJSON.id + ' option[selected]').length;\n      var optionsLength = $('#ProductSelect-' + productJSON.id).length;\n      if(!selectedOptionsLength || optionsLength == 1){\n        self.productVariantCallback(productJSON.variants[0], productJSON.id);\n      }\n\n      // Add label if only one product option and it isn't 'Title'. Could be 'Size'.\n      if(productJSON.options.size == 1 && productJSON.options[0] != 'Title'){\n        $('.selector-wrapper:eq(0)').prepend('<label>'+productJSON.options[0]+'</label>');\n      }\n\n      // Hide selectors if we only have 1 variant and its title contains 'Default'.\n      if(productJSON.variants.size == 1 && (productJSON.variants[0].title.indexOf('Default') + 1)){\n        $('.selector-wrapper').hide();\n      }\n\n      var str = window.location.href;\n      if(!(str.indexOf('?variant=') + 1)) {\n        // Auto-select first available variant on page load. Otherwise the product looks sold out.\n        var found_one_in_stock = false;\n        for(variant in productJSON.variants){\n          if(productJSON.variants[variant].available && found_one_in_stock == false){\n            found_one_in_stock = true;\n            for(option in productJSON.options){\n              var i = Object.keys(productJSON.options).indexOf(option);\n              if(i >= 0){\n                $('.main-product-select-'+productJSON.id+' .single-option-selector:eq('+i+')').val(productJSON.variants[variant].options[i].replace(/\\s{2,}/g, ' ')).trigger(\"change\");\n              }\n            }\n\n            if ($('#ProductTemplate-' + productJSON.id).html()) {\n              changeUrl = true;\n            }\n            if ($('#FeaturedProductTemplate').html()) {\n              index_featured_product_image = true;\n            }\n\n          }\n        }\n      }\n      else{\n        if ($('#ProductTemplate-' + productJSON.id).html()) {\n          changeUrl = true;\n        }\n        if ($('#FeaturedProductTemplate').html()) {\n          index_featured_product_image = true;\n        }\n        $('.main-product-select-'+productJSON.id+' .single-option-selector').first().trigger(\"change\");\n\n      }\n\n      this.productVariantStyles();\n    },\n\n    productVariantStyles: function() {\n      $('.selector-wrapper').addClass('product-form__item');\n      $('.single-option-selector').addClass('product-form__input');\n    },\n\n    // **WARNING** This function actually inherits `this` from `this.optionSelector` not\n    // from `product` when passed in as a callback for `option_selection.js`\n    productVariantCallback: function(variant, selector) {\n      if(variant && changeUrl){\n        var newurl = window.location.protocol + '//' + window.location.host + window.location.pathname + '?variant=' + variant.id;\n        window.history.replaceState({path: newurl}, '', newurl);\n      }\n\n \t  var smart_checkout_btn = $(this.settings.selectors.addToCart).closest(\"form\").find(\".shopify-payment-button\"),\n          sizedImgUrl,\n          zoomSizedImgUrl;\n\n      if (variant) {\n        var indexArray=[];\n        $(\".main-product-select-\"+selector+\" .single-option-selector option:selected\").each(function() {\n          indexArray.push($(this).index());\n        });\n        var form = jQuery('#ProductSelect-'+selector).closest('form');\n        for (var i=0,length=variant.options.length; i<length; i++) {\n          var num = indexArray[i];\n          var radioButtonDiv = form.find('.swatch[data-option-index=\"' + i + '\"] div.swatch-element')[num];\n          var radioButton = $(radioButtonDiv).find(\":radio\");\n          if (radioButton.size()) {\n            radioButton.get(0).checked = true;\n          }\n        }\n      }\n      // END SWATCHES\n\n      if (variant) {\n\n        // Update variant image, if one is set\n        if (variant.featured_image && (changeUrl || index_featured_product_image)) {\n          var slideId = variant.featured_image.id;\n          if(typeof this.settings.swiperObjects.gallerySwiper.controller != \"undefined\"){\n            this.settings.swiperObjects.gallerySwiper.slideTo($(\"#\"+slideId).index());\n          }\n          else if(typeof this.settings.swiperObjects.gallerySwiperVert.controller != \"undefined\"){\n            this.settings.swiperObjects.gallerySwiperVert.slideTo($(\"#\"+slideId).index());\n          }\n          else{\n            this.settings.swiperObjects.mySwiper.slideTo($(\"#\"+slideId).index());\n          }\n\n        }\n\n        // Update the product price\n        \n        $(this.settings.selectors.productPrice).html(Shopify.formatMoney(variant.price, theme.moneyFormat));\n        \n\n        // Update and show the product's compare price if necessary\n        if (variant.compare_at_price > variant.price) {\n          \n          $(this.settings.selectors.comparePrice)\n          .html(Shopify.formatMoney(variant.compare_at_price, theme.moneyFormat))\n          .removeClass('hide');\n\n          $(this.settings.selectors.price).addClass(this.settings.selectors.saleClasses);\n          $(this.settings.selectors.saleLabel).removeClass('hide');\n          $(this.settings.selectors.comparePrice).closest(\"li\").removeClass('hide');\n          \n        } else {\n          $(this.settings.selectors.comparePrice).addClass('hide');\n          $(this.settings.selectors.comparePrice).closest(\"li\").addClass('hide');\n          $(this.settings.selectors.saleLabel).addClass('hide');\n          $(this.settings.selectors.price).removeClass(this.settings.selectors.saleClasses);\n        }\n\n        // Select a valid variant if available\n        if (variant.available) {\n          // We have a valid product variant, so enable the submit button\n          $(this.settings.selectors.addToCart).prop('disabled', false);\n          $(this.settings.selectors.addToCartText).text(theme.strings.addToCart);\n          smart_checkout_btn.show();\n        } else {\n          // Variant is sold out, disable the submit button and change the text\n          $(this.settings.selectors.addToCart).prop('disabled', true);\n          $(this.settings.selectors.addToCartText).text(theme.strings.soldOut);\n          smart_checkout_btn.hide();\n        }\n\n        // Show sku and inventory status if needed\n        if (jQuery.type( variant ) === \"null\") {\n          console.log(\"woring\")\n        }\n        else {\n          variantSkuRow = $(this.settings.selectors.variantSkuRow);\n          variantSku = $(this.settings.selectors.variantSku);\n          variantInventoryRow = $(this.settings.selectors.variantInventoryRow);\n          variantInventory = $(this.settings.selectors.variantInventory);\n\n          if (variant.sku && variantSkuRow ) {\n            variantSkuRow.css(\"display\", \"block\");\n            variantSku.html(variant.sku);\n            if(variantSkuRow.is(\":last-child\")){\n       variantSkuRow.prev('li').removeAttr(\"style\");\n            }\n          }\n          else{\n            variantSkuRow.css(\"display\", \"none\");\n            variantSku.html('');\n            if(variantSkuRow.is(\":last-child\")){\n            variantSkuRow.prev('li').css(\"padding-bottom\", \"0\");\n            }\n          }\n\n          if(variantInventoryRow) {\n            variantInventoryRow.css(\"display\", \"block\");\n\n\n      var main_product_select = $(\"#ProductSelect-\"+selector),\n          optionsLength = main_product_select.find(\"option\").length;\n      for(var i=0;i<=optionsLength;i++){\n        var currentOption = main_product_select.find(\"option:nth-child(\"+i+\")\");\n        if(currentOption.val() == variant.id){\n        var variant_inventory_management = currentOption.attr(\"data-inventory_management\");\n      var variant_inventory_policy = currentOption.attr(\"data-inventory_policy\" );\n      var variant_inventory_quantity = currentOption.attr(\"data-inventory_quantity\");\n      break;\n        }else{\n      var variant_inventory_management = \"\";\n      var variant_inventory_policy = \"\";\n      var variant_inventory_quantity = \"\";\n      }\n      }\n      if (variant_inventory_management == \"shopify\" && variant_inventory_policy != \"continue\") {\n        if (variant_inventory_quantity >0) {\n          variantInventory.html('<span class=in-stock>In stock! Usually ships within 24 hours.</span>');\n        } else {\n          variantInventory.html(\"<span class=out-of-stock>Sorry!  This product is currently out of stock.</span>\");\n        }\n      } else {\n        variantInventory.html(\"<span class=in-stock>In stock! Usually ships within 24 hours.</span>\");\n      }\n    }\n   }\n\n\n      } else {\n        // The variant doesn't exist, disable submit button and change the text.\n        // This may be an error or notice that a specific variant is not available.\n        $(this.settings.selectors.addToCart).prop('disabled', true);\n        $(this.settings.selectors.addToCartText).text(theme.strings.unavailable);\n        $(this.settings.selectors.comparePrice).addClass('hide');\n        $(this.settings.selectors.comparePrice).closest(\"li\").addClass('hide');\n        $(this.settings.selectors.saleLabel).addClass('hide');\n        $(this.settings.selectors.price).removeClass(this.settings.selectors.saleClasses);\n        $(this.settings.selectors.productPrice).html('Unavailable');\n        smart_checkout_btn.hide();\n        if(variantInventoryRow) {\n        variantInventory.html(\"<span class=out-of-stock>Sorry!  This product is currently out of stock.</span>\");\n        }\n      }\n    }\n  });\n\n  return Product;\n})();\n\n\n\n// theme.CollectionPage\nvar swiperArr = [],\n    container = $('#container');\ntheme.CollectionPage = (function() {\n  function CollectionPage(container) {\n\n    var $container = this.$container = $(container),\n        sectionId = this.sectionId = $container.attr('data-section-id'),\n        container = $('#container'),\n        mp = $.magnificPopup.instance,\n        swiperCarousel,\n        swiperCarouselThumbs;\n    function hideSpinner() {\n      $container.find(\".spinner-cube\").hide();\n    }\n\n    $container.find(\".product-thumb-caption-title\").on(\"click\", function(){\n      var product_url = $(this).closest(\".product-thumb\").find(\".product-thumb-href\").attr(\"href\");\n      window.location.href = product_url;\n    });\n\n\n    var pushy = initPushyMenu();\n\n    $(window).scroll(function() {\n      if($(window).scrollTop() + $(window).height() > $(\"#shopify-section-collection-template\").height()+50) {\n        $('#pushy-filters-btn').css({\n          position: 'absolute',\n          bottom: 'auto',\n          marginTop: $(\"#shopify-section-collection-template\").height() - 80,\n          left: 0\n        });\n      }else{\n        if($(\".nav-main\").length){\n         // var left = 30;\n        }else{\n          var left = 0;\n        }\n        $('#pushy-filters-btn').css({\n          position: 'fixed',\n          marginTop: 0,\n          bottom: 0,\n          left: left\n        });\n      }\n    });\n\n\n    if($(window).width() > 800) {\n      var animationOnHoverBlock = $(\".showInfoOnHover .animationOnHoverBlock\");\n      animationOnHoverBlock.each(function(){\n\n        var animationOnHoverBlockHeight = $(this).outerHeight();\n        var animationOnHoverBlockTitleHeight = $(this).find(\"h5\").outerHeight() - 32;\n        var transformValue = animationOnHoverBlockHeight - animationOnHoverBlockTitleHeight - 20;\n        $(this).css(\"transform\", \"translateY(\"+transformValue+\"px)\");\n      });\n\n    }\n\n    $(window).resize(function() {\n    if($(window).width() > 800) {\n      var animationOnHoverBlock = $(\".showInfoOnHover .animationOnHoverBlock\");\n      animationOnHoverBlock.each(function(){\n\n        var animationOnHoverBlockHeight = $(this).outerHeight();\n        var animationOnHoverBlockTitleHeight = $(this).find(\"h5\").outerHeight() - 32;\n        var transformValue = animationOnHoverBlockHeight - animationOnHoverBlockTitleHeight -20;\n        $(this).css(\"transform\", \"translateY(\"+transformValue+\"px)\");\n      });\n\n    }else{\n       var animationOnHoverBlock = $(\".showInfoOnHover .animationOnHoverBlock\");\n      animationOnHoverBlock.each(function(){\n        $(this).removeAttr(\"style\");\n      });\n    }\n    });\n\n    $(\".same-height-blocks\").matchHeight();\n    if($(window).width() > 992) {\n\n\n      $('#category-sticky-filters').stick_in_parent({\n        parent: '#category-sticky-parent'\n      });\n    }\n\n    Shopify.queryParams = {};\n    if (location.search.length) {\n      for (var aKeyValue, i = 0, aCouples = location.search.substr(1).split('&'); i < aCouples.length; i++) {\n        aKeyValue = aCouples[i].split('=');\n        if (aKeyValue.length > 1) {\n          Shopify.queryParams[decodeURIComponent(aKeyValue[0])] = decodeURIComponent(aKeyValue[1]);\n        }\n      }\n    }\n\n    $('#sortBy')\n    // select the current sort order\n    .val($('#sortBy').data(\"sort\"))\n    .bind('change', function() {\n      Shopify.queryParams.sort_by = jQuery(this).val();\n      location.search = jQuery.param(Shopify.queryParams);\n    });\n  setTimeout(function(){\n        $container.find(\"#sortBy\").select2({\n          theme: \"classic\",\n          minimumResultsForSearch: Infinity\n        });\n      }, 100);\n\n\n   //initQuantityEvents(sectionId);\n     initQuickView(sectionId);\n\n    var popped = false;\n    window.onpopstate = function (event) {\n      if(popped){\n        location.href = $(\".category-filters-area\").data(\"url\");\n      }\n    };\n\n    var filters = $('.advanced-filter'),\n        activeTag,\n        activeHandle;\n\n    $('.advanced-filter a').on('click', function(evt) {\n      evt.preventDefault();\n    });\n\n    filters.on('click', function(e) {\n\n      var el = $(this),\n          group = el.data('group'),\n          url = el.find('a').attr('href');\n\n      // Continue as normal if we're clicking on the active link\n      if ( el.hasClass('active-filter') ) {\n        return window.location = url;\n      }\n\n      // Get active group link (unidentified if there isn't one)\n      activeTag = $('.active-filter[data-group=\"'+ group +'\"]');\n\n      // If a tag from this group is already selected, remove it from the new tag's URL and continue\n      if ( activeTag && activeTag.data('group') === group ) {\n        e.preventDefault();\n        activeHandle = activeTag.data('handle') + '+';\n\n        // Create new URL without the currently active handle\n        url = url.replace(activeHandle, '');\n        window.location = url;\n      }else{\n        window.location = url;\n      }\n\n    });\n\n    // filters.on('click', function(e) {\n    //\n    //   var el = $(this),\n    //       group = el.data('group'),\n    //       url = el.find('a').attr('href');\n    //\n    //   // Continue as normal if we're clicking on the active link\n    //   if ( el.hasClass('active-filter') ) {\n    //     return ajaxLoadFilterPage(url);\n    //   }\n    //\n    //   // Get active group link (unidentified if there isn't one)\n    //   activeTag = $('.active-filter[data-group=\"'+ group +'\"]');\n    //\n    //   // If a tag from this group is already selected, remove it from the new tag's URL and continue\n    //   if ( activeTag && activeTag.data('group') === group ) {\n    //     e.preventDefault();\n    //     activeHandle = activeTag.data('handle') + '+';\n    //\n    //     // Create new URL without the currently active handle\n    //     url = url.replace(activeHandle, '');\n    //     ajaxLoadFilterPage(url);\n    //   }else{\n    //     ajaxLoadFilterPage(url);\n    //   }\n    //\n    //   pushy.close();\n    // });\n\n    (function doCheck(){\n      setTimeout(function(){\n        if ($(\".collection-products-wrapper:last-child .product-thumb-img\").hasClass(\"lazyloaded\")) {\n          $.fn.matchHeight._maintainScroll = true;\n          $.fn.matchHeight._update();\n        }else{\n          doCheck();\n        }\n      }, 100);\n    })();\n\n\n    var ajaxLoadFilterPage = function (url) {\n      $.ajax({\n        type: 'GET',\n        url: url,\n        data: {},\n        complete: function (data) {\n          $(\".product-thumb\").matchHeight({ remove: true });\n          $('#category-sticky-products, #category-sticky-filters').trigger(\"sticky_kit:detach\");\n          $('#category-sticky-products').html($(\"#category-sticky-products\", data.responseText).html());\n          if($(\"#category-sticky-filters\").length){\n            $('#category-sticky-filters').html($(\"#category-sticky-filters\", data.responseText).html());\n            $('.pushy_left_sidebar_content').html($(\".pushy_left_sidebar_content\", data.responseText).html());\n          }else{\n            $('.category-filters-area').html($(\".category-filters-area\", data.responseText).html());\n          }\n          $('.page-header').html($(\".page-header\", data.responseText).html());\n          $('.pagination-buttons').html($(\".pagination-buttons\", data.responseText).html());\n\n          //window.history.pushState(stateObj, url, url);\n          history.pushState({\n            page: url\n          }, url, url);\n\n          popped = true;\n\n          $('img.lazyload').addClass('lazypreload');\n\n          if($('[name=currencies]').length){\n          $('[name=currencies]').val(Currency.currentCurrency).trigger(\"change\");\n          }\n          $('#sortBy')\n          // select the current sort order\n          .val($('#sortBy').data(\"sort\"))\n          .bind('change', function() {\n            Shopify.queryParams.sort_by = jQuery(this).val();\n            location.search = jQuery.param(Shopify.queryParams);\n          });\n\n          setTimeout(function(){\n            $container.find(\"#sortBy\").select2({\n              theme: \"classic\",\n              minimumResultsForSearch: Infinity\n            });\n          }, 200);\n\n           setTimeout(function(){\n            // $(\".product-thumb\").matchHeight();\n             $container.find(\".product-thumb-caption-title\").on(\"click\", function(){\n               var product_url = $(this).closest(\".product-thumb\").find(\".product-thumb-href\").attr(\"href\");\n               window.location.href = product_url;\n             });\n          }, 500);\n\n\n\n    $(window).scrollTop(0);\n        $('#pushy-filters-btn').css({\n          position: 'fixed',\n          marginTop: 0,\n          bottom: 0,\n          left: 0\n        });\n\n          setTimeout(function(){\n            $(\".same-height-blocks\").matchHeight({ remove: true });\n            $(\".same-height-blocks\").matchHeight();\n            setTimeout(function(){\n              if($(window).width() > 992) {\n                $('#category-sticky-filters').stick_in_parent({\n                  parent: '#category-sticky-parent'\n                });\n              }\n            },200);\n\n          }, 2000);\n\n\n       //initQuantityEvents(sectionId);\n         initQuickView(sectionId);\n\n\n\n          var filters = $('.advanced-filter'),\n              activeTag,\n              activeHandle;\n\n          $('.advanced-filter a').on('click', function(evt) {\n            evt.preventDefault();\n          });\n           if($(window).width() > 800) {\n      var animationOnHoverBlock = $(\".showInfoOnHover .animationOnHoverBlock\");\n      animationOnHoverBlock.each(function(){\n        var animationOnHoverBlockHeight = $(this).outerHeight();\n        var animationOnHoverBlockTitleHeight = $(this).find(\"h5\").outerHeight() - 32;\n        var transformValue = animationOnHoverBlockHeight - animationOnHoverBlockTitleHeight - 20;\n        $(this).css(\"transform\", \"translateY(\"+transformValue+\"px)\");\n      });\n\n    }\n\n    $(window).resize(function() {\n    if($(window).width() > 800) {\n      var animationOnHoverBlock = $(\".showInfoOnHover .animationOnHoverBlock\");\n      animationOnHoverBlock.each(function(){\n        var animationOnHoverBlockHeight = $(this).outerHeight();\n        var animationOnHoverBlockTitleHeight = $(this).find(\"h5\").outerHeight() - 32;\n        var transformValue = animationOnHoverBlockHeight - animationOnHoverBlockTitleHeight - 20;\n        $(this).css(\"transform\", \"translateY(\"+transformValue+\"px)\");\n      });\n\n    }else{\n       var animationOnHoverBlock = $(\".showInfoOnHover .animationOnHoverBlock\");\n      animationOnHoverBlock.each(function(){\n        $(this).removeAttr(\"style\");\n      });\n    }\n    });\n\n           function hideSpinner() {\n      $container.find(\".spinner-cube\").hide();\n    }\n\n          filters.on('click', function(e) {\n            var el = $(this),\n                group = el.data('group'),\n                url = el.find('a').attr('href');\n\n            // Continue as normal if we're clicking on the active link\n            if ( el.hasClass('active-filter') ) {\n          $('#category-sticky-products').trigger(\"sticky_kit:detach\");\n          $('#category-sticky-filters').trigger(\"sticky_kit:detach\");\n              return ajaxLoadFilterPage(url);\n            }\n\n            // Get active group link (unidentified if there isn't one)\n            activeTag = $('.active-filter[data-group=\"'+ group +'\"]');\n\n            // If a tag from this group is already selected, remove it from the new tag's URL and continue\n            if ( activeTag && activeTag.data('group') === group ) {\n              e.preventDefault();\n              activeHandle = activeTag.data('handle') + '+';\n\n              // Create new URL without the currently active handle\n              url = url.replace(activeHandle, '');\n              $('#category-sticky-products').trigger(\"sticky_kit:detach\");\n          $('#category-sticky-filters').trigger(\"sticky_kit:detach\");\n              ajaxLoadFilterPage(url);\n            }else{\n              $('#category-sticky-products').trigger(\"sticky_kit:detach\");\n          $('#category-sticky-filters').trigger(\"sticky_kit:detach\");\n              ajaxLoadFilterPage(url);\n            }\n          });\n\n\n        (function doCheck(){\n            setTimeout(function(){\n              if ($(\".collection-products-wrapper:last-child .product-thumb-img\").hasClass(\"lazyloaded\")) {\n                $.fn.matchHeight._maintainScroll = true;\n                $.fn.matchHeight._update();\n              }else{\n                doCheck();\n              }\n            }, 100);\n          })();\n        }\n      });\n      \n    };\n\tenabledQuickView();\n  }\n\n  return CollectionPage;\n})();\ntheme.CollectionPage.prototype = _.assignIn({}, theme.CollectionPage.prototype, {\n\n  onSelect: function(){\n    var mp = $.magnificPopup.instance;\n    if(typeof mp !== 'undefined'){\n      mp.close();\n    }\n    updatePageHeaderView();\n  }\n});\n\n\nfunction quickViewSelectCallback(variant, selector){\n  // find the matching product panel\n  var productPanel = $('div.quick-view-panel[data-id=\"'+selector+'\"]');\n\n  // check that the panel exists\n  if(productPanel.length === 0){\n    console.log('Can not find product panel');\n    return;\n  }\n\n  //check that data is what we expect, and if the panel is open\n//   if (variant && variant.featured_image && productPanel.is(\":visible\")) {\n//     var original_image = $(\".swiper-slide img\", productPanel), new_image = variant.featured_image;\n//     Shopify.Image.switchImage(new_image, original_image[0]);\n//   }\n\n      if (variant) {\n        if (variant.featured_image) {\n          var slideId = variant.featured_image.id;\n          var slide = $(\"#\"+slideId);\n          var slideIndex =  slide.index();\n          swiperCarousel.slideTo(slideIndex);\n//           var slideImg = slide.find('img'),\n//               src = slideImg.attr(\"data-original\");\n//             slideImg.attr(\"src\", src).removeClass(\"lazyload\");\n        }\n      }\n\n  // BEGIN SWATCHES\n  if (variant) {\n    var indexArray=[];\n    $(\"[data-id='\"+selector+ \"'] .single-option-selector option:selected\").each(function() {\n      indexArray.push($(this).index());\n    });\n    var form = jQuery('#VQProductSelect-'+selector).closest('form');\n    for (var i=0,length=variant.options.length; i<length; i++) {\n      var num = indexArray[i];\n      var radioButtonDiv = form.find('.swatch[data-option-index=\"' + i + '\"] div.swatch-element')[num];\n      var radioButton = $(radioButtonDiv).find(\":radio\");\n      if (radioButton.size()) {\n        radioButton.get(0).checked = true;\n      }\n    }\n  }\n  // END SWATCHES\n\n  var addToCart = productPanel.find('.AddToCartQV'), // find the add to cart button\n      addtoCartText = addToCart.find('span');// find the add to cart text\n  var productPrice = productPanel.find('.product-item-caption-price-current span'); // find the price\n  var comparePrice = productPanel.find('.product-item-caption-price-list span'); // find the compare price (not currently used in quick view)\n  var smart_checkout_btn = productPanel.find(\".shopify-payment-button\");\n  if (variant) {\n    if (variant.available) {\n      // We have a valid product variant, so enable the submit button\n      addToCart.removeClass('disabled').prop('disabled', false).val('Add to cart');\n      addtoCartText.text('Add to cart');\n      smart_checkout_btn.show();\n    } else {\n      // Variant is sold out, disable the submit button\n      addToCart.val('Sold Out').addClass('disabled').prop('disabled', true);\n      addtoCartText.html('Sold Out');\n      smart_checkout_btn.hide();\n     }\n\n     \n      // Regardless of stock, update the product price\n      if(productPrice.length){\n        productPrice.html(Shopify.formatMoney(variant.price, theme.moneyFormat));\n      }\n      \n\n      // Also update and show the product's compare price if necessary\n      if(comparePrice.length){\n        if ( variant.compare_at_price > variant.price ) {\n          \n          comparePrice.html(Shopify.formatMoney(variant.compare_at_price, theme.moneyFormat)).show();\n          comparePrice.closest(\"li\").show();\n          \n        }else{\n          comparePrice.html(\"\");\n          comparePrice.closest(\"li\").hide();\n          comparePrice.hide();\n        }\n      }\n    } else {\n      addToCart.val('Unavailable').addClass('disabled').prop('disabled', true);\n         addtoCartText.html('Sold Out');\n      comparePrice.html(\"\");\n      comparePrice.closest(\"li\").hide();\n      comparePrice.hide();\n      smart_checkout_btn.hide();\n      productPrice.html(\"Unavailable\");\n       }\n   }; // END quickViewSelectCallback()\n\n\n// theme.HeaderSection\ntheme.HeaderSection = (function() {\n function HeaderSection(container) {\n   var $container = this.$container = $(container);\n   var sectionId = this.sectionId = $container.attr('data-section-id');\n   var menuType = $container.data(\"menu-type\");\n   var heroSize = $container.data(\"hero-size\");\n   var showBreadcrumbs = $container.data(\"show-breadcrumbs\");\n\n   if(showBreadcrumbs){\n     $(\"body\").addClass(\"show_breadcrumbs\");\n   }else{\n     $(\"body\").removeClass(\"show_breadcrumbs\");\n   }\n\n  updatePageHeaderView();\n\n    $('.header-nav-pushy a, .header-nav-pushy button').each(function(index, el){\n      $(el).attr('tabindex', -1);\n    });\n\n    if ($('.left_nav_icons_accordion').length > 0) {\n      $('.left_nav_icons_accordion a, .left_nav_icons_accordion select').each(function(index, el){\n        $(el).attr('tabindex', -1);\n      });\n    }\n\n\n  $('.close-pushy-menu').on('focus', function(){\n    $('.pushy-menu-btn:eq(0)').trigger(\"click\");\n  });\n\n  // $('.pushy-menu-btn').on(\"focus\", function(){\n  //   $(this).trigger(\"click\");\n  // });\n\n  // $('[data-toggle=\"collapse\"]').on(\"focus\", function(e){\n    // $(this).trigger(\"click\");\n  // });\n\n  $('.pushy-menu-btn').keypress(function(e){\n    if (e.keyCode == 32) {\n      // $(this).trigger(\"click\");\n    }\n  });\n\n  $('[data-toggle=\"collapse\"]').keypress(function(e){\n    if (e.keyCode == 32) {\n        $(this).trigger(\"click\");\n    }\n  });\n\n     $(\".second_level_drop_link\").on(\"click\", function(e){\n     var el = $(this);\n\n     var data_collapsed = el.hasClass(\"collapsed\");\n     var data_url = el.data(\"link-url\");\n     if(e.target == this && !data_collapsed){\n       window.location.href = data_url;\n     }else{\n\n       el.addClass(\"second_level_drop_link_active\");\n       setTimeout(function(){\n         $(\".second_level_drop_link\").not(\".second_level_drop_link_active\").each(function(){\n           $(this).addClass(\"collapsed\").attr(\"aria-expanded\", \"false\").closest(\".panel-heading\").next(\".panel-collapse\").attr(\"aria-expanded\", false).animate({\n             height: \"0px\",\n           }, 400, function() { $(this).removeClass(\"in\") });\n         });\n         el.removeClass(\"second_level_drop_link_active\");\n       },100);\n\n     }\n   });\n\n    $(\".third_level_drop_link\").on(\"click\", function(e){\n     var el = $(this);\n\n     var data_collapsed = el.hasClass(\"collapsed\");\n     var data_url = el.data(\"link-url\");\n\n     if(e.target == this && !data_collapsed){\n       window.location.href = data_url;\n     }\n   });\n\n\n   $('.header-nav-pushy [aria-expanded]').on('focusin', function(){\n    $(this).attr('aria-expanded', true);\n   });\n   $('.header-nav-pushy [aria-expanded]').on('focusout', function(){\n    $(this).attr('aria-expanded', false);\n   });\n\n   if($(\"body\").hasClass(\"template-index\")){\n     var isOverlapped = $(\"#container\").find(\".shopify-section\").first().hasClass(\"overlapped_content\");\n     var isOverlap = $(\"#top-header-section\").data(\"index-overlap\"),\n         bgColor = $(\"#top-header-section\").data(\"bg-color\"),\n         imgWidth = $(\"#top-header-section\").data(\"logo-width\")+\"px\",\n         notificationbarEnabled = $(\"#top-header-section\").data(\"notificationbar\");\n     \n     if(isOverlapped && isOverlap){\n       $(\".nav-standard-float, .nav-container, .nav-main-logo\").css({\"position\":\"absolute\", \"background\": \"none\"});\n       $(\".nav-main-logo img\").css(\"width\", imgWidth);\n       $(\"#shopify-section-header\").addClass(\"white_icons_header\");\n\n\n       if(notificationbarEnabled == true){\n         var headerHeight = $(\".notification-bar\").outerHeight();\n           var slider_height =  $(\"#container\").find(\".shopify-section>*\").first().data(\"height\");\n           $(\"#container\").find(\".shopify-section\").first().find(\".hero--full_screen, .hero-background-wrapper, .hero-item\").css(\"height\", \"calc(\"+slider_height+\" - \"+headerHeight+\"px\");\n           $( window ).resize(function() {\n             var headerHeight = $(\"#top-header-section\").outerHeight();\n              var slider_height =  $(\"#container\").find(\".shopify-section>*\").first().data(\"height\");\n             $(\"#container\").find(\".shopify-section\").first().find(\".hero--full_screen, .hero-background-wrapper, .hero-item\").css(\"height\", \"calc(\"+slider_height+\" - \"+headerHeight+\"px\");\n         });\n       }\n     }\n     else if(isOverlapped && !isOverlap){\n       var headerHeight = $(\"#top-header-section\").outerHeight();\n       var slider_height =  $(\"#container\").find(\".shopify-section>*\").first().data(\"height\");\n       if(slider_height == \"100vh\"){\n          $(\"#container\").find(\".shopify-section\").first().find(\".hero--full_screen, .hero-background-wrapper, .hero-item, .swiper-slide\").css(\"height\", \"calc(\"+slider_height+\" - \"+headerHeight+\"px\");\n       }else{\n          $(\"#container\").find(\".shopify-section\").first().find(\".hero--full_screen, .hero-background-wrapper, .hero-item, .swiper-slide\").css(\"height\", slider_height);\n       }\n      \n        $( window ).resize(function() {\n             var headerHeight = $(\"#top-header-section\").outerHeight();\n           var slider_height =  $(\"#container\").find(\".shopify-section>*\").first().data(\"height\");\n                if(slider_height == \"100vh\"){\n          $(\"#container\").find(\".shopify-section\").first().find(\".hero--full_screen, .hero-background-wrapper, .hero-item, .swiper-slide\").css(\"height\", \"calc(\"+slider_height+\" - \"+headerHeight+\"px\");\n       }else{\n          $(\"#container\").find(\".shopify-section\").first().find(\".hero--full_screen, .hero-background-wrapper, .hero-item, .swiper-slide\").css(\"height\", slider_height);\n       }\n          });\n     }\n     else{\n       $(\".nav-main-logo, .nav-container, .nav-standard-float\").css({\"position\":\"relative\", \"background\": bgColor, \"width\" : \"100%\"}).addClass('nav-standard-dark');\n     }\n   }\n\n   \n   if(menuType == 'left'){\n//      $(\".main-content\").css(\"margin-left\",\"60px\");\n//      $(window).trigger('resize');\n   }\n   else{\n     $(\".main-content\").css(\"margin-left\",\"0\");\n   }\n\n   var $window = $(window),\n       winHeightPadded = $window.height() * 0.5,\n       // $navSticky = $('.nav-to-sticky'),\n       $navSticky = $('#navbarStickyDesktop'),\n       navStickyHeight = $navSticky.height(),\n       $navStickyMobile = $('#navbarStickyMobile'),\n       navStickyMobileHeight = $navStickyMobile.height(),\n       desktopScroll = function() {\n         return navStickyScroll($navSticky, navStickyHeight);\n       },\n       mobileScroll = function() {\n         return navStickyScroll($navStickyMobile, navStickyMobileHeight)\n       };\n       // navStickyHieght = $navSticky.height();\n\n\n   if($navSticky.length && $(window).width() > 992) {\n     $window.on('scroll', desktopScroll);\n   } else if($navStickyMobile.length && $(window).width() <= 992) {\n     console.log('scrolling on mobile');\n     $window.on('scroll', mobileScroll);\n   }\n\n\n   function navStickyScroll($el, elHeight) {\n\n     var scrolled = $window.scrollTop(),\n        navStickyHieght = elHeight;\n     if(scrolled > winHeightPadded) {\n\n       // var $navStickyNew = $('.nav-to-sticky:not(.nav-sticky):visible');\n       // if($navStickyNew.length){\n       //   navStickyHieght = $navStickyNew.height();\n       // }\n\n       if($(window).width() <= 992 || !$container.data(\"index-overlap\")) {\n         var indexOverlap = false;\n       } else if($('body').hasClass('template-index') && $(\"#container\").find(\".shopify-section\").first().hasClass(\"home-slideshow-section\")) {\n         var indexOverlap = true;\n       } else if($('#page-header').length) {\n         var indexOverlap = true;\n       }\n\n\n       $el.addClass('nav-sticky');\n       if(!indexOverlap){\n         $('#container').css({\n           marginTop: navStickyHieght\n         });\n       }\n     }\n     if(scrolled < winHeightPadded) {\n       $el.removeClass('nav-sticky');\n       // vague.unblur();\n       $('#container').css({\n         marginTop: 0\n       });\n\n     }\n   }\n\n       $('.dropdown.yamm-fw').hoverIntent(function() {\n         $(this).attr('aria-expanded', true);\n       }, function() {\n         $(this).attr('aria-expanded', false);\n       });\n\n       $(\".mega-menu-simple .dropdown\").hoverIntent(function() {\n         $(this).attr('aria-expanded', true);\n       }, function() {\n         $(this).attr('aria-expanded', false);\n       });\n\n        $(\".mega-simple-menu-column-with-list\").hoverIntent(function() {\n         $(this).attr('aria-expanded', true);\n       }, function() {\n         $(this).attr('aria-expanded', false);\n       });\n\n       $('.mega-menu-simple .dropdown').on('focusin', function(){\n         $(this).attr('aria-expanded', true);\n       });\n       $('.mega-menu-simple .dropdown').on('focusout', function(){\n         $(this).attr('aria-expanded', false);\n       });\n\n   $(function ()\n     {\n     $(\".mega-yamm-menu > li\").each(function (e) {\n       if ($('ul', this).length && $('ul', this).hasClass(\"lr_auto\"))\n       {\n         $(this).children().removeClass('l_auto');\n         var elm = $('ul:first', this); //ul.wsmenu-sub-list\n         var off = elm.offset();\n         var l = off.left;\n         var w = elm.width();\n         var docH = $(window).height();\n         var docW = $(window).width()-2;\n         var isEntirelyVisible = (l + w <= docW);\n         if (!isEntirelyVisible && docW > 992 )\n         {\n           elm.addClass('l_auto');\n         } else {\n           elm.removeClass('l_auto');\n         }\n       }\n       $( window ).resize(function() {\n         $(\".mega-yamm-menu > li\").each(function (e) {\n           if ($('ul', this).length && $('ul', this).hasClass(\"lr_auto\"))\n           {\n             $(this).children().removeClass('l_auto');\n             var elm = $('ul:first', this);\n             var off = elm.offset();\n             var l = off.left;\n             var w = elm.width();\n             var docH = $(window).height();\n             var docW = $(window).width()-2;\n             var isEntirelyVisible = (l + w <= docW);\n             if (!isEntirelyVisible && docW > 992 )\n             {\n               elm.addClass('l_auto');\n             } else {\n               elm.removeClass('l_auto');\n             }}\n         });\n       });\n     });\n   });\n\n    if (/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent) && $(window).width() >= 768) {\n      $(document).on(\"click\", \".dropdown.yamm-fw > a\", function(e) {\n        if(!$(this).closest(\"li\").hasClass(\"opened_mega_menu\") && $(this).closest(\"li\").attr(\"aria-haspopup\") == 'true'){\n           $(\".opened_mega_menu\").each(function(){\n            $(this).removeClass(\"opened_mega_menu\");\n           });\n           $(this).closest(\"li\").addClass(\"opened_mega_menu\");\n\n                  $('html').on(\"touchend\", function(event) {\n                    //check up the tree of the click target to check whether user has clicked outside of menu\n                    if ($(event.target).parents('.mega-yamm-menu').length==0) {\n\n                      $(\".opened_mega_menu\").each(function(){\n                        $(this).removeClass('opened_mega_menu');\n                      });\n\n\n                      //this event listener has done its job so we can unbind it.\n                      $(this).unbind(event);\n                    }\n\n                  })\n\n           e.preventDefault();\n           return false;\n        }\n\n      });\n\n      $(document).on(\"click\", \".mega-menu-simple .dropdown > a\", function(e) {\n        if(!$(this).closest(\"li\").hasClass(\"opened_mega_menu\") && $(this).closest(\"li\").attr(\"aria-haspopup\") == 'true'){\n           $(\".opened_mega_menu\").each(function(){\n            $(this).removeClass(\"opened_mega_menu\");\n           });\n           $(this).closest(\"li\").addClass(\"opened_mega_menu\");\n\n                  $('html').on(\"touchend\", function(event) {\n                    //check up the tree of the click target to check whether user has clicked outside of menu\n                    if ($(event.target).parents('.mega-menu-simple').length==0) {\n\n                      $(\".opened_mega_menu\").each(function(){\n                        $(this).removeClass('opened_mega_menu');\n                      });\n\n\n                      //this event listener has done its job so we can unbind it.\n                      $(this).unbind(event);\n                    }\n\n                  })\n\n           e.preventDefault();\n           return false;\n        }\n\n      });\n\n      $(document).on(\"click\", \".mega-simple-menu-column-with-list >.nav-mega-section-title > a\", function(e) {\n        if(!$(this).closest(\"div\").hasClass(\"opened_mega_menu\") && $(this).closest(\"div\").attr(\"aria-haspopup\") == 'true'){\n           $(\".mega-simple-menu-column-with-list.opened_mega_menu\").each(function(){\n            $(this).removeClass(\"opened_mega_menu\");\n           });\n           $(this).closest(\"div\").addClass(\"opened_mega_menu\");\n\n                  $('html').on(\"touchend\", function(event) {\n                    //check up the tree of the click target to check whether user has clicked outside of menu\n                    if ($(event.target).parents('.mega-menu-simple').length==0) {\n\n                      $(\".mega-simple-menu-column-with-list.opened_mega_menu\").each(function(){\n                        $(this).removeClass('opened_mega_menu');\n                      });\n\n\n                      //this event listener has done its job so we can unbind it.\n                      $(this).unbind(event);\n                    }\n\n                  })\n\n           e.preventDefault();\n           return false;\n        }\n\n      });\n\n\n\n    }\n\n   initPushyMenu();\n   bindEventsInModalCart();\n   $('.search-modal-popup').on(\"click\", function(){\n     Shopify.showSearchModal();\n   });\n   $('.cart-modal-popup').on(\"click\", function(){\n     // \n     // window.location = '/cart';\n     // \n\n     if (\"page\" == \"modal\" && $(window).width() > 768) {\n       Shopify.showModal();\n     } else {\n       window.location = '/cart';\n     }\n   });\n }\n\n return HeaderSection;\n })();\n\n Shopify.showSearchModal = function() {\n   $.magnificPopup.open({\n     items: {\n       src: '#nav-search-dialog',\n       type: 'inline'\n     },\n     mainClass: 'mfp-move-from-top',\n     removalDelay: 500,\n     callbacks: {\n       beforeOpen: function() {\n         container.addClass('blured');\n         $('body').addClass('y-hid');\n       },\n       open: function() {\n         container.addClass('blured')\n       },\n       beforeClose: function() {\n         container.removeClass('blured');\n       },\n       close: function() {\n       },\n       afterClose: function() {\n         $('body').removeClass('y-hid');\n       }\n     },\n     midClick: true\n   });\n };\n\n // theme.PopupSection\ntheme.PopupSection = (function() {\n        function PopupSection(container) {\n\n          var $container = this.$container = $(container);\n          var sectionId = this.sectionId = $container.attr('data-section-id');\n          var delay = $container.attr('data-delay')*1000,\n              cookie = $container.attr('data-cookie'),\n              enabledPopup = $container.attr('data-enabled'),\n              sumbitted_form = false;\n\n          $container.find(\"form\").on(\"submit\", function(){\n            event.preventDefault();\n            var cookieTime = cookie*1;\n            $.cookie('pop_confirm', 'pop_newsletter', { expires: cookieTime });\n            $(this).off('submit').submit();\n          });\n\n          $container.click(function (e) {\n            var container = $container.find('.modal-content');\n            if (container.has(e.target).length === 0){\n              $('#myModal').modal('hide');\n            }\n          });\n\n\n          if($.cookie('pop_confirm') != null && (window.location.search == \"?customer_posted=true\" || window.location.hash == \"#contact_form\" || $container.find(\"form .errors\").length)){\n            var sumbitted_form = true;\n          }\n\n\n\n          if(enabledPopup == \"true\" && window.location.href.indexOf(\"challenge\") < 0){\n            function show_modal(){\n              $('#myModal').modal();\n              $('#myModal').on('hidden.bs.modal', function () {\n                var cookieTime = cookie*1;\n                $.cookie('pop', 'modal', { expires: cookieTime });\n                $.cookie(\"pop_confirm\", null);\n              });\n            }\n            $('#myModal').on('hidden.bs.modal', function () {\n              $('body').attr('tabindex', '0');\n              $('body').focus();\n            });\n\n\n\n            if ($.cookie('pop') == null || cookie  == \"use_test_popup\" || sumbitted_form) {\n              window.setTimeout(show_modal, delay); // delay before it calls the modal function\n              if (cookie  != \"use_test_popup\" || !sumbitted_form) {\n                var cookieTime = cookie*1;\n                $.cookie('pop', 'modal', { expires: cookieTime });\n              }\n              if(sumbitted_form){\n                $.cookie(\"pop_confirm\", null);\n                $(\"#shopify-section-footer .errors\").hide();\n                $(\".newsletter_hero__inner .errors\").hide();\n\n                if(!$container.find(\"form .errors\").length){\n                  $container.find(\"form\").html('<div class=\"alert alert-success\">Thanks for subscribing to our newsletter!</div>');\n                                               }\n                                               window.setTimeout(show_modal, delay);\n                  window.history.replaceState(null, null, window.location.pathname);\n                }\n\n              }\n            }\n          }\n          return PopupSection;\n        })();\n\n  theme.PopupSection.prototype = _.assignIn({}, theme.PopupSection.prototype, {\n\n  onUnload: function(){\n     $('#myModal').modal('hide');\n  }\n});\n\n// theme.FeturedCollectionSection\ntheme.FeturedCollectionSection = (function() {\n  function FeturedCollectionSection(container) {\n\n    var $container = this.$container = $(container),\n        container = $('#container'),\n        sectionId = this.sectionId = $container.attr('data-section-id'),\n        mp = $.magnificPopup.instance;\n\n     if($(window).width() > 800) {\n      var animationOnHoverBlock = $container.find(\".showInfoOnHover .animationOnHoverBlock\");\n      animationOnHoverBlock.each(function(){\n        var animationOnHoverBlockHeight = $(this).outerHeight();\n        var animationOnHoverBlockTitleHeight = $(this).find(\"h5\").outerHeight() - 32;\n        var transformValue = animationOnHoverBlockHeight - animationOnHoverBlockTitleHeight -20;\n        $(this).css(\"transform\", \"translateY(\"+transformValue+\"px)\");\n      });\n\n    }\n\n    $(window).resize(function() {\n    if($(window).width() > 800) {\n      var animationOnHoverBlock = $container.find(\".showInfoOnHover .animationOnHoverBlock\");\n      animationOnHoverBlock.each(function(){\n        var animationOnHoverBlockHeight = $(this).outerHeight();\n        var animationOnHoverBlockTitleHeight = $(this).find(\"h5\").outerHeight() - 32;\n        var transformValue = animationOnHoverBlockHeight - animationOnHoverBlockTitleHeight -20;\n        $(this).css(\"transform\", \"translateY(\"+transformValue+\"px)\");\n      });\n\n    }else{\n       var animationOnHoverBlock = $container.find(\".showInfoOnHover .animationOnHoverBlock\");\n      animationOnHoverBlock.each(function(){\n        $(this).removeAttr(\"style\");\n      });\n    }\n    });\n\n function hideSpinner() {\n      $container.find(\".spinner-cube\").hide();\n    }\n//     $container.find(\".product-thumb\").matchHeight();\n\n\n    //initQuantityEvents(sectionId);\n     initQuickView(sectionId);\n\n    $container.find(\".product-thumb-caption-title\").on(\"click\", function(){\n      var product_url = $(this).closest(\".product-thumb\").find(\".product-thumb-href\").attr(\"href\");\n      window.location.href = product_url;\n    });\n\tenabledQuickView();\n  }\n\n  return FeturedCollectionSection;\n})();\n\ntheme.FeturedCollectionSection.prototype = _.assignIn({}, theme.FeturedCollectionSection.prototype, {\n        onSelect: function(){\n          var mp = $.magnificPopup.instance;\n          if(typeof mp !== 'undefined'){\n            mp.close();\n          }\n        }\n      });\n\n// theme.SearchSection\n      theme.SearchSection = (function() {\n        function SearchSection(container) {\n          var $container = this.$container = $(container);\n          var sectionId = this.sectionId = $container.attr('data-section-id');\n function hideSpinner() {\n      $container.find(\".spinner-cube\").hide();\n    }\n\n          // $container.find(\".product-thumb\").matchHeight();\n        }\n\n        return SearchSection;\n      })();\n\n      theme.SearchSection.prototype = _.assignIn({}, theme.SearchSection.prototype, {\n\n        onSelect: function(){\n          updatePageHeaderView();\n        }\n      });\n\n\n// theme.CollectionsListSection\n      theme.CollectionsListSection = (function() {\n        function CollectionsListSection(container) {\n\n          var $container = this.$container = $(container);\n          var sectionId = this.sectionId = $container.attr('data-section-id');\n function hideSpinner() {\n      $container.find(\".spinner-cube\").hide();\n    }\n      $container.find(\".product-thumb\").matchHeight();\n\n          $container.find(\".product-thumb-caption-title\").on(\"click\", function(){\n            var product_url = $(this).closest(\".product-thumb\").find(\".product-thumb-href\").attr(\"href\");\n            window.location.href = product_url;\n          });\n        }\n\n        return CollectionsListSection;\n      })();\n\n      theme.CollectionsListSection.prototype = _.assignIn({}, theme.CollectionsListSection.prototype, {\n\n        onSelect: function(){\n          updatePageHeaderView();\n        }\n      });\n\n// theme.BlogPostsSection\n//       theme.BlogPostsSection = (function() {\n//         function BlogPostsSection(container) {\n//\n//           var $container = this.$container = $(container);\n//           var sectionId = this.sectionId = $container.attr('data-section-id');\n//\n// //           $container.find(\".blog-thumb-img\").matchHeight();\n//           // $container.find(\".blog-thumb-caption\").matchHeight();\n//           // $container.find(\".blog-thumb\").matchHeight();\n//\n//\n//           var useBottomPadding = $container.closest(\".index-section\").next().find(\".block-title\").length;\n//           if(!useBottomPadding){\n//             $container.css(\"padding-bottom\",\"50px\");\n//           }else{\n//             $container.css(\"padding-bottom\",\"0\");\n//           }\n//         }\n//\n//         return BlogPostsSection;\n//       })();\n\ntheme.BlogPostsSection = (function() {\n\n  function BlogPostsSection(container) {\n    var $container = this.$container = $(container);\n    inlineSwiper($container);\n  }\n\n  return BlogPostsSection;\n})();\n\n      //  theme.BlogPostsSection.prototype = _.assignIn({}, theme.BlogPostsSection.prototype, {\n      //   onReorder: function(evt){\n      // var container = $(evt.target).find(\".blog-posts-row\");\n      //      var useBottomPadding = container.closest(\".index-section\").next().find(\".block-title\").length;\n      //     if(!useBottomPadding){\n      //       container.css(\"padding-bottom\",\"50px\");\n      //     }else{\n      //       container.css(\"padding-bottom\",\"0\");\n      //     }\n      //   }\n      // });\n// theme.BlogPageSection\n      theme.BlogPageSection = (function() {\n        function BlogPageSection(container) {\n\n          var $container = this.$container = $(container);\n          var sectionId = this.sectionId = $container.attr('data-section-id');\n\n          $container.find(\".blog_text_wrapper\").matchHeight();\n          $container.find(\".blog-post\").matchHeight();\n        }\n\n        return BlogPageSection;\n      })();\n\n       theme.BlogPageSection.prototype = _.assignIn({}, theme.BlogPageSection.prototype, {\n\n        onSelect: function(){\n          updatePageHeaderView();\n        }\n      });\n\n\n      // theme.ArticlePageSection\n      theme.ArticlePageSection = (function() {\n        function ArticlePageSection(container) {\n\n          var $container = this.$container = $(container);\n          var sectionId = this.sectionId = $container.attr('data-section-id');\n\n          var videoInRTE = $container.find(\".blog-post-body iframe\").length || false;\n          if(videoInRTE){\n            $container.find(\".blog-post-body iframe\").wrap(\"<div class='videoWrapperRTE'></div>\");\n          }\n        }\n\n        return ArticlePageSection;\n      })();\n\n       theme.ArticlePageSection.prototype = _.assignIn({}, theme.ArticlePageSection.prototype, {\n\n        onSelect: function(){\n          updatePageHeaderView();\n        }\n      });\n\n\n// theme.FeaturedCollectiosSection\n      theme.FeaturedCollectionsSection = (function() {\n        function FeaturedCollectionsSection(container) {\n\n          var $container = this.$container = $(container);\n          var sectionId = this.sectionId = $container.attr('data-section-id');\n function hideSpinner() {\n      $container.find(\".spinner-cube\").hide();\n    }\n\n          $container.find(\".product-thumb\").matchHeight();\n\n          $container.find(\".product-thumb-caption-title\").on(\"click\", function(){\n            var product_url = $(this).closest(\".product-thumb\").find(\".product-thumb-href\").attr(\"href\");\n            window.location.href = product_url;\n          });\n\n        }\n\n        return FeaturedCollectionsSection;\n      })();\n// theme.Maps\n     theme.Maps = (function() {\n  var config = {\n    zoom: 14\n  };\n  var apiStatus = null;\n  var mapsToLoad = [];\n       if(theme.strings != undefined){\n  var errors = {\n    addressNoResults: theme.strings.addressNoResults,\n    addressQueryLimit: theme.strings.addressQueryLimit,\n    addressError: theme.strings.addressError,\n    authError: theme.strings.authError\n  };\n       }\n  var selectors = {\n    section: '[data-section-type=\"map\"]',\n    map: '[data-map]',\n    mapOverlay: '[data-map-overlay]'\n  };\n\n  var classes = {\n    mapError: 'map-section--load-error',\n    errorMsg: 'map-section__error errors text-center'\n  };\n\n  // Global function called by Google on auth errors.\n  // Show an auto error message on all map instances.\n  // eslint-disable-next-line camelcase, no-unused-vars\n  window.gm_authFailure = function() {\n    if (Shopify.designMode) {\n      $(selectors.section).addClass(classes.mapError);\n      $(selectors.map).remove();\n      $(selectors.mapOverlay).after('<div class=\"' + classes.errorMsg + '\">' + theme.strings.authError + '</div>');\n    }\n  }\n\n  function Map(container) {\n    this.$container = $(container);\n    this.$map = this.$container.find(selectors.map);\n    this.key = this.$map.data('api-key');\n\n    if (typeof this.key === 'object') {\n      return;\n    }\n\n    if (apiStatus === 'loaded') {\n      this.createMap();\n    } else {\n      mapsToLoad.push(this);\n\n      if (apiStatus !== 'loading') {\n        apiStatus = 'loading';\n        if (typeof window.google === 'undefined') {\n          $.getScript('https://maps.googleapis.com/maps/api/js?key=' + this.key)\n            .then(function() {\n              apiStatus = 'loaded';\n              initAllMaps();\n            });\n        }\n      }\n    }\n  }\n\n  function initAllMaps() {\n    // API has loaded, load all Map instances in queue\n    $.each(mapsToLoad, function(index, instance) {\n      instance.createMap();\n    });\n  }\n\n  function geolocate($map) {\n    var deferred = $.Deferred();\n    var geocoder = new google.maps.Geocoder();\n    var address = $map.data('address-setting');\n\n    geocoder.geocode({address: address}, function(results, status) {\n      if (status !== google.maps.GeocoderStatus.OK) {\n        deferred.reject(status);\n      }\n\n      deferred.resolve(results);\n    });\n\n    return deferred;\n  }\n\n  Map.prototype = _.assignIn({}, Map.prototype, {\n    createMap: function() {\n      var $map = this.$map;\n\n      return geolocate($map)\n        .then(function(results) {\n          var mapOptions = {\n            zoom: config.zoom,\n            center: results[0].geometry.location,\n            draggable: false,\n            clickableIcons: false,\n            scrollwheel: false,\n            disableDoubleClickZoom: true,\n            disableDefaultUI: true\n          };\n\n          var mapStyle = this.mapStyle = new google.maps.StyledMapType(\n\n            [\n    {\n        \"featureType\": \"all\",\n        \"elementType\": \"labels.text.fill\",\n        \"stylers\": [\n            {\n                \"saturation\": 36\n            },\n            {\n                \"color\": \"#333333\"\n            },\n            {\n                \"lightness\": 40\n            }\n        ]\n    },\n    {\n        \"featureType\": \"all\",\n        \"elementType\": \"labels.text.stroke\",\n        \"stylers\": [\n            {\n                \"visibility\": \"on\"\n            },\n            {\n                \"color\": \"#ffffff\"\n            },\n            {\n                \"lightness\": 16\n            }\n        ]\n    },\n    {\n        \"featureType\": \"all\",\n        \"elementType\": \"labels.icon\",\n        \"stylers\": [\n            {\n                \"visibility\": \"off\"\n            }\n        ]\n    },\n    {\n        \"featureType\": \"administrative\",\n        \"elementType\": \"geometry\",\n        \"stylers\": [\n            {\n                \"hue\": \"#0072ff\"\n            }\n        ]\n    },\n    {\n        \"featureType\": \"administrative\",\n        \"elementType\": \"geometry.fill\",\n        \"stylers\": [\n            {\n                \"color\": \"#fefefe\"\n            },\n            {\n                \"lightness\": 20\n            }\n        ]\n    },\n    {\n        \"featureType\": \"administrative\",\n        \"elementType\": \"geometry.stroke\",\n        \"stylers\": [\n            {\n                \"color\": \"#fefefe\"\n            },\n            {\n                \"lightness\": 17\n            },\n            {\n                \"weight\": 1.2\n            }\n        ]\n    },\n    {\n        \"featureType\": \"administrative\",\n        \"elementType\": \"labels\",\n        \"stylers\": [\n            {\n                \"lightness\": \"0\"\n            }\n        ]\n    },\n    {\n        \"featureType\": \"administrative.country\",\n        \"elementType\": \"labels\",\n        \"stylers\": [\n            {\n                \"visibility\": \"on\"\n            }\n        ]\n    },\n    {\n        \"featureType\": \"administrative.neighborhood\",\n        \"elementType\": \"all\",\n        \"stylers\": [\n            {\n                \"visibility\": \"simplified\"\n            }\n        ]\n    },\n    {\n        \"featureType\": \"administrative.neighborhood\",\n        \"elementType\": \"labels\",\n        \"stylers\": [\n            {\n                \"lightness\": \"50\"\n            }\n        ]\n    },\n    {\n        \"featureType\": \"landscape\",\n        \"elementType\": \"geometry\",\n        \"stylers\": [\n            {\n                \"color\": \"#f5f5f5\"\n            },\n            {\n                \"lightness\": 20\n            }\n        ]\n    },\n    {\n        \"featureType\": \"landscape.man_made\",\n        \"elementType\": \"all\",\n        \"stylers\": [\n            {\n                \"color\": \"#f2f2f2\"\n            }\n        ]\n    },\n    {\n        \"featureType\": \"landscape.natural.landcover\",\n        \"elementType\": \"geometry\",\n        \"stylers\": [\n            {\n                \"visibility\": \"on\"\n            }\n        ]\n    },\n    {\n        \"featureType\": \"poi\",\n        \"elementType\": \"all\",\n        \"stylers\": [\n            {\n                \"visibility\": \"on\"\n            },\n            {\n                \"saturation\": \"16\"\n            }\n        ]\n    },\n    {\n        \"featureType\": \"poi\",\n        \"elementType\": \"geometry\",\n        \"stylers\": [\n            {\n                \"color\": \"#e3e3e3\"\n            },\n            {\n                \"lightness\": 21\n            },\n            {\n                \"visibility\": \"on\"\n            }\n        ]\n    },\n    {\n        \"featureType\": \"poi\",\n        \"elementType\": \"labels.text\",\n        \"stylers\": [\n            {\n                \"visibility\": \"simplified\"\n            },\n            {\n                \"saturation\": \"-81\"\n            },\n            {\n                \"lightness\": \"27\"\n            }\n        ]\n    },\n    {\n        \"featureType\": \"poi\",\n        \"elementType\": \"labels.icon\",\n        \"stylers\": [\n            {\n                \"visibility\": \"simplified\"\n            },\n            {\n                \"saturation\": \"-64\"\n            }\n        ]\n    },\n    {\n        \"featureType\": \"poi.park\",\n        \"elementType\": \"geometry\",\n        \"stylers\": [\n            {\n                \"color\": \"#b0d5b9\"\n            },\n            {\n                \"lightness\": 21\n            }\n        ]\n    },\n    {\n        \"featureType\": \"road.highway\",\n        \"elementType\": \"geometry.fill\",\n        \"stylers\": [\n            {\n                \"color\": \"#ffffff\"\n            },\n            {\n                \"lightness\": 17\n            }\n        ]\n    },\n    {\n        \"featureType\": \"road.highway\",\n        \"elementType\": \"geometry.stroke\",\n        \"stylers\": [\n            {\n                \"color\": \"#ffffff\"\n            },\n            {\n                \"lightness\": 29\n            },\n            {\n                \"weight\": 0.2\n            }\n        ]\n    },\n    {\n        \"featureType\": \"road.arterial\",\n        \"elementType\": \"geometry\",\n        \"stylers\": [\n            {\n                \"color\": \"#ffffff\"\n            },\n            {\n                \"lightness\": 18\n            }\n        ]\n    },\n    {\n        \"featureType\": \"road.local\",\n        \"elementType\": \"geometry\",\n        \"stylers\": [\n            {\n                \"color\": \"#ffffff\"\n            },\n            {\n                \"lightness\": 16\n            }\n        ]\n    },\n    {\n        \"featureType\": \"transit\",\n        \"elementType\": \"geometry\",\n        \"stylers\": [\n            {\n                \"color\": \"#f2f2f2\"\n            },\n            {\n                \"lightness\": 19\n            }\n        ]\n    },\n    {\n        \"featureType\": \"water\",\n        \"elementType\": \"geometry\",\n        \"stylers\": [\n            {\n                \"color\": \"#a3c6d8\"\n            },\n            {\n                \"lightness\": 17\n            }\n        ]\n    }\n],\n            {name: 'Styled Map'});\n          var map = this.map = new google.maps.Map($map[0], mapOptions);\n          var center = this.center = map.getCenter();\n\n          //eslint-disable-next-line no-unused-vars\n          var marker = new google.maps.Marker({\n            map: map,\n            position: map.getCenter()\n          });\n\n          map.mapTypes.set('styled_map', mapStyle);\n          map.setMapTypeId('styled_map');\n\n          google.maps.event.addDomListener(window, 'resize', $.debounce(250, function() {\n            google.maps.event.trigger(map, 'resize');\n            map.setCenter(center);\n            $map.removeAttr('style');\n          }));\n        }.bind(this))\n        .fail(function() {\n          var errorMessage;\n\n          switch (status) {\n            case 'ZERO_RESULTS':\n              errorMessage = errors.addressNoResults;\n              break;\n            case 'OVER_QUERY_LIMIT':\n              errorMessage = errors.addressQueryLimit;\n              break;\n            case 'REQUEST_DENIED':\n              errorMessage = errors.authError;\n              break;\n            default:\n              errorMessage = errors.addressError;\n              break;\n          }\n\n          // Show errors only to merchant in the editor.\n          if (Shopify.designMode) {\n            $map\n              .parent()\n              .addClass(classes.mapError)\n              .html('<div class=\"' + classes.errorMsg + '\">' + errorMessage + '</div>');\n          }\n        });\n    },\n\n    onUnload: function() {\n      if (this.$map.length === 0) {\n        return;\n      }\n      google.maps.event.clearListeners(this.map, 'resize');\n    },\n     onSelect: function() {\n      updatePageHeaderView();\n    }\n\n  });\n\n  return Map;\n})();\n\n\n// theme.PasswordSection\n      theme.PasswordSection = (function() {\n        function PasswordSection(container) {\n          $('.js-toggle-login-modal').magnificPopup({\n            type: 'inline',\n            mainClass: 'mfp-fade',\n            closeOnBgClick: false,\n            closeBtnInside: false,\n            closeOnContentClick: false,\n            tClose: \"Translation missing: en.general.password_page.close\",\n            removalDelay: 500,\n            callbacks: {\n            open: function() {\n            window.setTimeout( function() { document.getElementById('password').focus(); }, 50 );\n        },\n          close: function() {\n            window.setTimeout( function() { document.getElementById('email').focus(); }, 50 );\n          }\n      }\n                               });\n      if ( $('.storefront-password-form .errors').size() ) {\n        $('.js-toggle-login-modal').click();\n      }\n    }\n\n    return PasswordSection;\n  })();\n\n  // theme.FooterSection\n  theme.FooterSection = (function() {\n    function FooterSection(container) {\n      var $container = this.$container = $(container);\n\n      function wrapped() {\n        var footer_bottom_flex_row_item_height =  $('.footer-bottom-flex-row .col-md-6').first().outerHeight();\n        var footer_bottom_flex_row_height = $('.footer-bottom-flex-row').first().outerHeight();\n\n        if(footer_bottom_flex_row_item_height != footer_bottom_flex_row_height){\n          $('.footer-bottom-flex-row').addClass(\"wrapped\");\n        }else{\n          $('.footer-bottom-flex-row').removeClass(\"wrapped\");\n        }\n      }\n\n      wrapped();\n      $(window).resize(function() {\n        wrapped();\n      });\n\n       $container.find(\"form\").on(\"submit\", function(){\n       event.preventDefault();\n\t   var cookieTime = 2000;\n       $.cookie('footer_confirm', 'newsletter', { expires: cookieTime });\n       $(this).off('submit').submit();\n    });\n\n\n    if($.cookie('footer_confirm') != null && (window.location.search == \"?customer_posted=true\" || window.location.hash == \"#contact_form\" || $container.find(\"form .errors\").length) && window.location.href.indexOf(\"challenge\") < 0){\n      $.cookie('footer_confirm', null);\n      window.history.replaceState(null, null, window.location.pathname);\n      $(\".newsletter_hero__inner .errors\").hide();\n      if(!$container.find(\"form .errors\").length){\n      \t$container.find(\"form\").html('<div class=\"alert alert-success\">Thanks for subscribing to our newsletter!</div>');\n       }\n\n       var target_offset =  $container.find(\"form\").closest(\".footer-col\").offset().top;\n       var animation_durration = target_offset/1000*150;\n\n       $('html, body').animate({\n          scrollTop: $container.find(\"form\").closest(\".footer-col\").offset().top\n        }, animation_durration, function() {\n\n          if(($container.find(\"form\").closest(\".footer-col\").offset().top > $(window).scrollTop()) && ($(window).scrollTop() + $(window).height() < $(document).height())){\n            var target_offset =  $container.find(\"form\").closest(\".footer-col\").offset().top - $(window).scrollTop();\n            var animation_durration = target_offset/1000*150;\n            $('html, body').animate({\n              scrollTop: $container.find(\"form\").closest(\".footer-col\").offset().top\n            }, animation_durration);\n          }\n  \t\t});\n    }\n\n\n\n\n    }\n    return FooterSection;\n  })();\n\n// theme.SlidshowSection\ntheme.ColumnsSliderSection = (function(){\n  return function(container) {\n    var $container = this.$container = $(container);\n    var sectionId = this.sectionId = $(container).attr('data-section-id');\n    var autoplay = +$(container).attr('data-slidesSpeed');\n\n    var swiperSettings = {\n      direction: 'horizontal',\n      loop: true,\n      simulateTouch: true,\n      pagination: {\n        el: '#swiper-pagination-'+sectionId,\n        clickable: true\n      },\n      autoplay: autoplay ? {delay: autoplay*1000} : false,\n      autoHeight: true,\n      init: false\n    };\n    var swiper = new Swiper ('#swiper-'+sectionId, swiperSettings);\n\n    function initColumns() {\n    if($(window).width() > 992) {\n      $('.hero-item-'+sectionId).hover(function(){\n        var $self = $(this),\n            id = $self.attr('data-hero-item'),\n            $bg = $(id);\n        $('.hero-item-'+sectionId).each(function(){\n          $(this).removeClass('active');\n          $(this).removeClass('hover');\n        });\n        $('.hero-item-bg-'+sectionId).each(function(){\n          $(this).removeClass('active');\n        });\n        $bg.addClass('active');\n        $self.addClass('active');\n      });\n    } else {\n        swiper.init();\n      }\n    }\n    initColumns();\n    $( window ).resize(initColumns);\n  };\n})();\n\n  theme.SlideshowSection = (function() {\n    function SlideshowSection(container) {\n\n      var $container = this.$container = $(container);\n      var sectionId = this.sectionId = $container.attr('data-section-id');\n      var swiperEnabled = this.swiperEnabled= $('#swiper-main-'+sectionId).length;\n      var slidesSpeed = $container.attr('data-slidesSpeed')*1000;\n      var autoplay = slidesSpeed > 0 ? { delay: +slidesSpeed } : false;\n      // smoothScroll();\n\n      var slidesLength = $('#swiper-main-'+sectionId+' .swiper-slide').length;\n      if(slidesLength>1){\n        var use_loop = true;\n        var simulate_touch = true;\n        }else{\n        var use_loop = false;\n        var simulate_touch = false;\n        }\n      var mySwiper = this.mySwiper = new Swiper ('#swiper-main-'+sectionId, {\n        // Optional parameters\n        navigation: {\n          nextEl: '#swiper-button-next-'+sectionId,\n          prevEl: '#swiper-button-prev-'+sectionId\n        },\n        direction: 'horizontal',\n        loop: use_loop,\n        simulateTouch: simulate_touch,\n        pagination: {\n          el: '#swiper-pagination-'+sectionId,\n          clickable: true\n        },\n        autoplay: autoplay,\n        autoHeight: true\n      });\n    }\n\n    return SlideshowSection;\n  })();\n//  theme.HeaderSection.prototype = _.assignIn({}, theme.HeaderSection.prototype, {\n//         onReorder: function(){\n//           console.log(\"---------\");\n//         }\n//       });\n  theme.SlideshowSection.prototype = _.assignIn({}, theme.SlideshowSection.prototype, {\n\n    onBlockSelect: function(evt) {\n\n      var sectionId = this.sectionId\n      var slideIndex = $(evt.target).data('index');\n      var videoEnabled = this.swiperEnabled;\n      var mySwiper = this.mySwiper;\n      var mySwiperMobile = this.mySwiperMobile;\n      mySwiper.slideTo(slideIndex, 1500, false);\n      mySwiper.autoplay.stop();\n    },\n    onBlockDeselect: function() {\n      var sectionId = this.sectionId\n      var mySwiper = this.mySwiper;\n      var mySwiperMobile = this.mySwiperMobile;\n      mySwiper.autoplay.start();\n    }\n  });\n\n  // theme.customerTemplates\n  theme.customerTemplates = (function() {\n\n    function initEventListeners() {\n      // Show reset password form\n      $('#RecoverPassword').on('click', function(evt) {\n        evt.preventDefault();\n        toggleRecoverPasswordForm();\n      });\n\n      // Hide reset password form\n      $('#HideRecoverPasswordLink').on('click', function(evt) {\n        evt.preventDefault();\n        toggleRecoverPasswordForm();\n      });\n    }\n\n    /**\n   *\n   *  Show/Hide recover password form\n   *\n   */\n    function toggleRecoverPasswordForm() {\n      $('#RecoverPasswordForm').toggleClass('hide');\n      $('#CustomerLoginForm').toggleClass('hide');\n    }\n\n    /**\n   *\n   *  Show reset password success message\n   *\n   */\n    function resetPasswordSuccess() {\n      var $formState = $('.reset-password-success');\n\n      // check if reset password form was successfully submited.\n      if (!$formState.length) {\n        return;\n      }\n\n      // show success message\n      $('#ResetSuccess').removeClass('hide');\n    }\n\n    /**\n   *\n   *  Check URL for reset password hash\n   *\n   */\n    function checkUrlHash() {\n      var hash = window.location.hash;\n\n      // Allow deep linking to recover password form\n      if (hash === '#recover') {\n        toggleRecoverPasswordForm();\n      }\n    }\n\n    return {\n      init: function() {\n        checkUrlHash();\n        initEventListeners();\n        resetPasswordSuccess();\n        //customerAddressForm();\n      }\n    };\n  })();\n\n  // function smoothScroll() {\n  //   //   $('a[href*=\"#\"]:not([href=\"#\"]:not([href=\"#\"])').each(function(){\n  //   $('a.smoothScroll').each(function(){\n  //     $(this).click(function() {\n  //       if (location.pathname.replace(/^\\//,'') == this.pathname.replace(/^\\//,'') || location.hostname == this.hostname) {\n  //         var target = $(this.hash);\n  //         target = target.length ? target : $('[name=' + this.hash.slice(1) +']');\n  //         if (target.length) {\n  //           $('html,body').animate({\n  //             scrollTop: target.offset().top\n  //           }, 1000);\n  //           return false;\n  //         }\n  //       }\n  //     });\n  //   });\n  // };\n\n\n function initQuickView(sectionId){\n var sectionContainer = $(\"[data-section-id='\"+sectionId+\"']\");\n\n    if($(window).width() >= 768) {\n    sectionContainer.find('.quick-view-btn').on('click', function (e) {\n      if($(this).hasClass('quick-view-btn-opened')){\n\n      setTimeout(function(){\n        swiperCarousel.destroy(true, true);\n           if(typeof swiperCarouselThumbs == 'object'){\n             swiperCarouselThumbs.destroy(true, true);\n           }\n          }, 400);\n        $(this).removeClass('quick-view-btn-opened');\n\n        var windowWidth = $(this).closest('.collection-row').width();\n        var parentRow = $(this).closest('.collection-row');\n        var collectionProdWrapper = $(this).closest('.collection-products-wrapper');\n        var boxWidth = collectionProdWrapper.outerWidth()-1;\n        var boxesPerRow = ~~(windowWidth / boxWidth);\n\n        // get the index of the clicked element\n        var index = collectionProdWrapper.index();\n        // get the column of the clicked element\n        var col = (index % boxesPerRow) + 1;\n        // calculate how far it is to the end of this row,\n        // and select that element\n        var $endOfRow = parentRow.find('.collection-products-wrapper').eq(index + boxesPerRow - col);\n        if (!$endOfRow.length) $endOfRow = parentRow.find('.collection-products-wrapper').last();\n\n    var quickViewPanel = collectionProdWrapper.find(\".quick-view-panel\"),\n            quickViewPanelHeight = quickViewPanel.find(\".row-col-norsp\").outerHeight() +24,\n            endOfRowPrevHeight = $endOfRow.outerHeight() - quickViewPanelHeight;\n\n\n//         var target = $endOfRow;\n         var target = quickViewPanel;\n        setTimeout(function(){\n          $endOfRow.css('height', endOfRowPrevHeight).removeClass(\"quickViewColumnOpened\");\n        }, 100);\n\n\n        setTimeout(function(){\n         $(\".showTriangle\").removeClass(\"showTriangle\");\n         }, 400);\n         setTimeout(function(){\n      $(window).trigger('scroll');\n      },500);\n      }else{\n        var productId = $(this).attr(\"data-product-id\"),\n            sliderType = $(this).attr(\"data-slider-type\"),\n            quick_view_url = $(this).data(\"url\"),\n            btn=$(this);\n\n        $(\"#quick-view-panel-inner-\"+productId).load(quick_view_url, function(resp) {\n//           \topenQuickViewPanel(btn,sliderType, productId);\n//             prepareQuickViewPanel(productId,sectionId);\n        });\n\n\n      }\n    });     \n  }\n  }\n\n\n    function enabledQuickView(){\n      \n        // check to make sure the popup script is available\n        if(typeof $().magnificPopup !== 'function'){ return }\n\n\n        // check that we are on the right kind of template\n        var $quickViewBtns = $('a.quick-view-btn'); /* find all the the quick view launch buttons */     \n\n        if($quickViewBtns.length){\n         $quickViewBtns.each(function () {\n            var prod_id = $(this).data('product-id');\n            var productId = $(this).attr(\"data-product-id\"),\n                sliderType = $(this).attr(\"data-slider-type\"),\n                quick_view_url = $(this).data(\"url\"),\n                btn=$(this);\n            // setup the quickview popup action\n           $(this).magnificPopup({\n              type: 'ajax',\n              closeOnContentClick: false,\n              mainClass:'mfp-move-from-top',\n              removalDelay: 1000,\n              callbacks : {\n                elementParse: function(item) {\n                  if(item.src.indexOf(\"nav-shopping-cart-dialog\") == -1){\n                  item.src = item.src + \"?view=quickview\";\n                  }\n                },\n                ajaxContentAdded : function(){\n                  var mp = $.magnificPopup.instance;                \n                  var cur = mp.st.el;\n                  var href = $(cur).attr('href');\n                  var select = $(\".mfp-move-from-top\").find(\"#SingleOptionSelector-0\");\n                  if(select.length){\n                    select.trigger(\"change\");\n                  } \n                 if(typeof SPR != \"undefined\"){    \n                    SPR.$(document).ready(function() {\n                      return SPR.registerCallbacks(),\n                        SPR.initRatingHandler(),\n                        SPR.initDomEls(),\n                        SPR.loadProducts(),\n                        SPR.loadBadges()\n                    })\n                  }     \n                  openQuickViewPanel(btn,sliderType, productId);\n                  prepareQuickViewPanel(productId,prod_id);\n                }\n \n              }\n           });\n\n          });\n\n        }\n    }\n    \n    function prepareQuickViewPanel(productId,sectionId){\n\n      var quickViewPanel = $(\"#product-quickview-\"+productId);\n\n\n      if (!$('#ProductQuickViewJson-' + productId).html()) {\n        return;\n      }\n\n\n\n      quickViewPanel.find(\".swatch :radio\").on(\"change\", function() {\n        var optionIndex = jQuery(this).closest('.swatch').attr('data-option-index');\n        var optionValue = jQuery(this).val().replace(/\\s{2,}/g, ' ');\n        jQuery(this)\n        .closest('form')\n        .find('.single-option-selector')\n        .eq(optionIndex)\n        .val(optionValue)\n        .trigger('change');\n      });\n\n      quickViewPanel.find(\"form[action*='/cart/add']\").on(\"submit\", function(e) {\n        \n      });\n\n\n      var product = JSON.parse(document.getElementById('ProductQuickViewJson-' + productId).innerHTML);\n\n      $(\".quick-view-selector-\"+product.id).on(\"change\", function(){\n        var $form = $(this).closest(\"form\"),\n            productVariantObj = product.variants;\n\n        var option1 = $form.find(\".SingleOptionSelector-0\").val() || null,\n            option2 = $form.find(\".SingleOptionSelector-1\").val() || null,\n            option3 = $form.find(\".SingleOptionSelector-2\").val() || null,\n            flag = true;\n        for (var i=0,length=productVariantObj.length; i<length; i++) {\n          var productVar = productVariantObj[i];\n          if(productVar.option1 != null){productVar.option1 = productVar.option1.replace(/\\s{2,}/g, ' ');}\n          if(productVar.option2 != null){productVar.option2 = productVar.option2.replace(/\\s{2,}/g, ' ');}\n          if(productVar.option3 != null){productVar.option3 = productVar.option3.replace(/\\s{2,}/g, ' ');}\n\n          if(option1==productVar.option1 && option2==productVar.option2 && option3==productVar.option3){\n            flag = false;\n            $('#VQProductSelect-'+product.id).val(productVar.id);\n            quickViewSelectCallback(productVar, product.id);\n            break;\n          }\n        }\n        if(flag){\n          quickViewSelectCallback(null, product.id);\n        }\n\n      });\n\n      var select = quickViewPanel.find(\".single-option-selector\");\n      setTimeout(function(){\n        select.select2({\n          theme: \"classic\",\n          minimumResultsForSearch: Infinity\n        });\n      },100);\n\n      \n\n\n      // Hide variant dropdown if only one exists and title contains 'Default'\n      if (product.variants.length && product.variants[0].title.indexOf('Default') >= 0) {\n        quickViewPanel.find('.selector-wrapper').hide();\n      }\n\n      var productJSON = product;\n      for (var i=0,length=productJSON.variants.length; i<length; i++) {\n        var productVariants = productJSON.variants[i];\n\n        if(productVariants.available){\n          for (var j=0,optlength=productVariants.options.length; j<optlength; j++) {\n            var variantOption = productVariants.options[j];\n            variantOption = handleizeStr(variantOption);\n            quickViewPanel.find('.swatch[data-option-index=\"'+j+'\"] .'+variantOption+'').removeClass('soldout').addClass('available').find(':radio').removeAttr('disabled');\n          }\n\n        }\n      }\n\n      // BEGIN SWATCHES\n\n      var indexArray=[];\n      var productVariantOptions = product.variants;\n      $(\"[data-id=\"+product.id+\"] .single-option-selector option:selected\").each(function() {\n        indexArray.push($(this).index());\n      });\n      var form = jQuery('#VQProductSelect-'+product.id).closest('form');\n      var variantIndex = jQuery('#VQProductSelect-'+product.id+' option:selected').index();\n      if(variantIndex>=0){\n        var variant = productVariantOptions[variantIndex];\n        for (var i=0,length=variant.options.length; i<length; i++) {\n          var num = indexArray[i];\n          var radioButtonDiv = form.find('.swatch[data-option-index=\"' + i + '\"] div.swatch-element')[num];\n          var radioButton = $(radioButtonDiv).find(\":radio\");\n          if (radioButton.size()) {\n            radioButton.get(0).checked = true;\n          }\n        }\n      }\n\n      // END SWATCHES\n      initQuantityEvents(productId);\n    }\n\n    function openQuickViewPanel(btn,sliderType, productId){\n\n      var PanelResizeFunc = function(){\n        $(window).trigger('scroll');\n      }\n\n      setTimeout(function(){\n          //initialize swiper when document ready\n          if($('.swiper-main-'+productId+' .swiper-wrapper').length > 1){\n            var useLoop = true;\n          }else{\n            var useLoop = false;\n          }\n        \n           swiperCarousel = new Swiper ('.swiper-main-'+productId, {\n            // Optional parameters\n            direction: 'horizontal',\n            pagination: {\n              el: '.swiper-pagination-'+productId,\n              clickable: true\n            },\n            loop: useLoop,\n            autoplay: 3000,\n            updateOnImagesReady :true,\n            onSlideChangeStart:  PanelResizeFunc,\n            on: {\n              slideChange: function(){\n                var active_index = this.activeIndex;\n                var iframe = this.$el.find('iframe');\n                if (iframe.length) {\n                  iframe.each(function(){\n                    if($(this).closest(\".swiper-slide\").index() != active_index ){\n                      var iframeSrc = this.src;\n                      this.src = iframeSrc;\n                    }\n                  });\n\n                }\n              },\n              beforeDestroy: function(){\n                var iframe = this.$el.find('iframe');\n                if (iframe.length) {\n                  iframe.each(function(){\n                    var iframeSrc = this.src;\n                    this.src = iframeSrc;\n                  });\n                }\n              }\n            }\n          });\n      }, 500);\n\n    }\n\n\n  function initQuantityEvents(sectionId){\n    $('.btn-number-'+sectionId).click(function(e){\n      e.preventDefault();\n      fieldName = $(this).attr('data-field');\n      type      = $(this).attr('data-type');\n      var input = $(this).closest(\".product-form__item--quantity\").find(\"input[name='quantity']\");\n      var currentVal = parseInt(input.val());\n      if (!isNaN(currentVal)) {\n        if(type == 'minus') {\n          if(currentVal > 0) {\n            input.val(currentVal - 1).change();\n          }\n        } else if(type == 'plus') {\n            input.val(currentVal + 1).change();\n        }\n      } else {\n        input.val(0);\n      }\n    });\n\n    $('.input-number-'+sectionId).focusin(function(){\n      $(this).data('oldValue', $(this).val());\n    });\n\n    $('.input-number-'+sectionId).change(function() {\n\n      minValue =  0;\n      maxValue =  999;\n      valueCurrent = parseInt($(this).val());\n\n      name = $(this).attr('name');\n      if(valueCurrent >= minValue) {\n        $(\".btn-number[data-type='minus'][data-field='\"+name+\"']\").removeAttr('disabled')\n      } else {\n        $(this).val($(this).data('oldValue'));\n      }\n      if(valueCurrent <= maxValue) {\n        $(\".btn-number[data-type='plus'][data-field='\"+name+\"']\").removeAttr('disabled')\n      } else {\n        $(this).val($(this).data('oldValue'));\n      }\n\n    });\n    $(\".input-number-\" +sectionId).keydown(function (e) {\n      // Allow: backspace, delete, tab, escape, enter and .\n      if ($.inArray(e.keyCode, [46, 8, 9, 27, 13, 190]) !== -1 ||\n          // Allow: Ctrl+A\n          (e.keyCode == 65 && e.ctrlKey === true) ||\n          // Allow: home, end, left, right\n          (e.keyCode >= 35 && e.keyCode <= 39)) {\n        // let it happen, don't do anything\n        return;\n      }\n      // Ensure that it is a number and stop the keypress\n      if ((e.shiftKey || (e.keyCode < 48 || e.keyCode > 57)) && (e.keyCode < 96 || e.keyCode > 105)) {\n        e.preventDefault();\n      }\n    });\n  }\n\n\n  function updatePageHeaderView(){\n    var titleHeader = $(\"header.page-header\");\n    var heroSize = $(\"#top-header-section\").data(\"hero-size\");\n    var menuType = $(\"#top-header-section\").data(\"menu-type\");\n    var isOverlapHeader = $(\"#top-header-section\").data(\"index-overlap\");\n   if(titleHeader.length){\n     titleHeader.removeClass(\"hero--xs-small\");\n     titleHeader.removeClass(\"hero--l-small\");\n     titleHeader.removeClass(\"hero--l-medium\");\n     titleHeader.addClass(heroSize);\n   }else{\n    return;\n   }\n\n   if(isOverlapHeader){\n\n   if(menuType == \"mega\" || menuType == \"mega_simple\" ){\n     var pageHeaderHeight = $(\".collection-page-header-title\").outerHeight();\n\n     if($(window).width() > 992) {\n       var navMenuHeight = $(\".nav-standard\").outerHeight(),\n           totalMinHeight = pageHeaderHeight+navMenuHeight + 175;\n\n       if($(\".page-header-nav\").length){\n         var pageCollHeaderNav = $(\".page-header-nav\").outerHeight(),\n             titlePaddingBottom = pageCollHeaderNav + 35;\n         totalMinHeight += pageCollHeaderNav;\n         titleHeader.css(\"padding-bottom\", titlePaddingBottom+\"px\");\n       }\n\n       titleHeader.css(\"min-height\", totalMinHeight+\"px\");\n\n     }else if($(window).width() > 767) {\n       var navMenuHeight = $(\".nav-standard-middle\").outerHeight(),\n           totalMinHeight = pageHeaderHeight+navMenuHeight+55;\n       if($(\".page-header-nav\").length){\n         var pageCollHeaderNav = $(\".page-header-nav\").outerHeight(),\n             titlePaddingBottom = pageCollHeaderNav;\n         totalMinHeight += pageCollHeaderNav;\n         titleHeader.css(\"padding-bottom\", titlePaddingBottom+\"px\");\n       }\n\n       titleHeader.css(\"min-height\", totalMinHeight+\"px\");\n     }else{\n       if($(\".page-header-nav\").length){\n         var pageCollHeaderNav = $(\".page-header-nav\").outerHeight(),\n             titlePaddingBottom = pageCollHeaderNav + 50;\n         titleHeader.css(\"padding-bottom\", titlePaddingBottom+\"px\");\n       }\n     }\n   }else if(menuType == \"left\"){\n      var pageHeaderHeight = $(\".collection-page-header-title\").outerHeight();\n     if($(window).width() > 767) {\n       var navMenuHeight = $(\" .nav-main-logo\").outerHeight(),\n           totalMinHeight = pageHeaderHeight+navMenuHeight+85;\n\n       if($(\".page-header-nav\").length){\n         var pageCollHeaderNav = $(\".page-header-nav\").outerHeight(),\n             titlePaddingBottom = pageCollHeaderNav;\n         totalMinHeight += pageCollHeaderNav;\n         titleHeader.css(\"padding-bottom\", titlePaddingBottom+\"px\");\n         titleHeader.css(\"justify-content\", \"center\");\n       }\n\n       titleHeader.css(\"min-height\", totalMinHeight+\"px\");\n     }else{\n       if($(\".page-header-nav\").length){\n         var pageCollHeaderNav = $(\".page-header-nav\").outerHeight(),\n             titlePaddingBottom = pageCollHeaderNav + 50;\n         titleHeader.css(\"padding-bottom\", titlePaddingBottom+\"px\");\n       }\n     }\n   }else{\n       var pageHeaderHeight = $(\".collection-page-header-title\").outerHeight();\n     if($(window).width() > 767) {\n       var navMenuHeight = $(\".minimal-top-nav\").outerHeight(),\n           totalMinHeight = pageHeaderHeight+navMenuHeight+85;\n\n        if($(\".page-header-nav\").length){\n         var pageCollHeaderNav = $(\".page-header-nav\").outerHeight(),\n             titlePaddingBottom = pageCollHeaderNav;\n         totalMinHeight += pageCollHeaderNav;\n         titleHeader.css(\"padding-bottom\", titlePaddingBottom+\"px\");\n         titleHeader.css(\"justify-content\", \"center\");\n       }\n\n\n       titleHeader.css(\"min-height\", totalMinHeight+\"px\");\n     }else{\n       if($(\".page-header-nav\").length){\n         var pageCollHeaderNav = $(\".page-header-nav\").outerHeight(),\n             titlePaddingBottom = pageCollHeaderNav + 50;\n         titleHeader.css(\"padding-bottom\", titlePaddingBottom+\"px\");\n       }\n     }\n  }\n\n\n    $( window ).resize(function() {\n      if(menuType == \"mega\" || menuType == \"mega_simple\"){\n     var pageHeaderHeight = $(\".collection-page-header-title\").outerHeight();\n\n     if($(window).width() > 992) {\n\n       var navMenuHeight = $(\".nav-standard\").outerHeight(),\n           totalMinHeight = pageHeaderHeight+navMenuHeight + 55;\n\n       if($(\".page-header-nav\").length){\n         var pageCollHeaderNav = $(\".page-header-nav\").outerHeight(),\n             titlePaddingBottom = pageCollHeaderNav + 35;\n         totalMinHeight += pageCollHeaderNav;\n         titleHeader.css(\"padding-bottom\", titlePaddingBottom+\"px\");\n         titleHeader.css(\"justify-content\", \"flex-end\");\n       }\n\n       titleHeader.css(\"min-height\", totalMinHeight+\"px\");\n\n     }else if($(window).width() > 767) {\n       var navMenuHeight = $(\".nav-standard-middle\").outerHeight(),\n           totalMinHeight = pageHeaderHeight+navMenuHeight+55;\n\n       if($(\".page-header-nav\").length){\n         var pageCollHeaderNav = $(\".page-header-nav\").outerHeight(),\n             titlePaddingBottom = pageCollHeaderNav;\n         totalMinHeight += pageCollHeaderNav;\n         titleHeader.css(\"padding-bottom\", titlePaddingBottom+\"px\");\n         titleHeader.css(\"justify-content\", \"center\");\n       }\n\n       titleHeader.css(\"min-height\", totalMinHeight+\"px\");\n     }else{\n\n        if($(\".page-header-nav\").length){\n         var pageCollHeaderNav = $(\".page-header-nav\").outerHeight(),\n             titlePaddingBottom = pageCollHeaderNav + 50;\n         titleHeader.css(\"padding-bottom\", titlePaddingBottom+\"px\");\n       }\n\n       titleHeader.css(\"min-height\", 0);\n     }\n   }else if(menuType == \"left\"){\n      var pageHeaderHeight = $(\".collection-page-header-title\").outerHeight();\n     if($(window).width() > 767) {\n       var navMenuHeight = $(\" .nav-main-logo\").outerHeight(),\n           totalMinHeight = pageHeaderHeight+navMenuHeight+85;\n\n         if($(\".page-header-nav\").length){\n           var pageCollHeaderNav = $(\".page-header-nav\").outerHeight(),\n               titlePaddingBottom = pageCollHeaderNav;\n           totalMinHeight += pageCollHeaderNav;\n           titleHeader.css(\"padding-bottom\", titlePaddingBottom+\"px\");\n           titleHeader.css(\"justify-content\", \"center\");\n         }\n\n       titleHeader.css(\"min-height\", totalMinHeight+\"px\");\n     }else{\n        if($(\".page-header-nav\").length){\n         var pageCollHeaderNav = $(\".page-header-nav\").outerHeight(),\n             titlePaddingBottom = pageCollHeaderNav + 50;\n         titleHeader.css(\"padding-bottom\", titlePaddingBottom+\"px\");\n       }\n       titleHeader.css(\"min-height\", 0);\n     }\n   }else{\n     var pageHeaderHeight = $(\".collection-page-header-title\").outerHeight();\n     if($(window).width() > 767) {\n       var navMenuHeight = $(\".minimal-top-nav\").outerHeight(),\n           totalMinHeight = pageHeaderHeight+navMenuHeight+85;\n\n           if($(\".page-header-nav\").length){\n             var pageCollHeaderNav = $(\".page-header-nav\").outerHeight(),\n                 titlePaddingBottom = pageCollHeaderNav;\n             totalMinHeight += pageCollHeaderNav;\n             titleHeader.css(\"padding-bottom\", titlePaddingBottom+\"px\");\n             titleHeader.css(\"justify-content\", \"center\");\n           }\n\n       titleHeader.css(\"min-height\", totalMinHeight+\"px\");\n     }else{\n\n        if($(\".page-header-nav\").length){\n         var pageCollHeaderNav = $(\".page-header-nav\").outerHeight(),\n             titlePaddingBottom = pageCollHeaderNav + 50;\n         titleHeader.css(\"padding-bottom\", titlePaddingBottom+\"px\");\n       }\n\n       titleHeader.css(\"min-height\", 0);\n     }\n   }\n    });\n\n   }\n  }\n\n\n\n    // /**\n//  * Shopify Ajaxify Shop.\n//  */\n\njQuery(document).ready(function() {\n  var selectors = {\n    TOTAL_ITEMS: '.count-items',\n    TOTAL_ITEMS_PRICE: '.total-items-price',\n    QUICK_CART_TABLE: '#modal-cart-table',\n    QUICK_CART_FORM: '.modal-cart-form',\n    QUICK_CART_MENU:'.nav-dialog-inner-cart',\n    CART_MENU: '.main-cart-form'\n  };\n\n  Shopify.afterCartUpdate = function(cart) {\n    // Total Items Update\n    var message = cart.item_count;\n\n    \n      var totalPriceConverted = Shopify.formatMoney(cart.total_price, theme.moneyFormat);\n    \n       var total_discount_PriceConverted = Shopify.formatMoney(cart.total_discount, theme.moneyFormat);\n    \n    \n\n    if(cart.item_count > 0){\n      $(selectors.TOTAL_ITEMS).text(message).removeClass('hidden');\n      $(\".nav-cart-dialog-total-amount\").html(totalPriceConverted);\n      $(\".order-discount--cart-total\").find('.money').html(total_discount_PriceConverted);\n      $(selectors.TOTAL_ITEMS_PRICE).html(totalPriceConverted).removeClass('hidden');\n\n      // SEB QUICKFIX !!!\n      Shopify.updateExpressPayments()\n\n\n\n    }else{\n      $(selectors.TOTAL_ITEMS).text('').addClass('hidden');\n      $(selectors.TOTAL_ITEMS_PRICE).text('').addClass('hidden');\n    }\n\n  };\n\n  Shopify.updateExpressPayments = function(timeout = 1500) {\n    if(window.location.pathname === '/cart') {\n      if (window.Shopify && Shopify.StorefrontExpressButtons) {\n        setTimeout(Shopify.StorefrontExpressButtons.initialize, timeout);\n      }\n    } else {\n      var modalForm = $(\".nav-dialog-inner-cart\");\n      if(modalForm.length) {\n        $additionCheckoutBlock = modalForm.find(\"#additional-checkout-block\");\n        $additionCheckoutBlock.load('/cart #addCheckoutBtn', function() {\n          if (window.Shopify && Shopify.StorefrontExpressButtons) {\n            setTimeout(Shopify.StorefrontExpressButtons.initialize, timeout);\n          }\n        });\n      }\n    }\n  };\n\n  Shopify.showModal = function() {\n//     var magnificPopup = $.magnificPopup.instance;\n//     if(typeof magnificPopup !== 'undefined'){\n//       magnificPopup.close();\n//     }\n    \n    $.magnificPopup.open({\n      items: {\n        src: '#nav-shopping-cart-dialog',\n        type: 'inline'\n      },\n      mainClass: 'mfp-move-from-top',\n      removalDelay: 500,\n      fixedContentPos: true,\n      fixedBgPos: true,\n      callbacks: {\n        beforeOpen: function() {\n          container.addClass('blured');\n          $('body').addClass('y-hid');\n        },\n        open: function() {\n          container.addClass('blured');\n          Shopify.updateExpressPayments(30);\n        },\n        beforeClose: function() {\n          container.removeClass('blured');\n        },\n        close: function() {\n        },\n        afterClose: function() {\n          $('body').removeClass('y-hid');\n        }\n      },\n      midClick: true\n    });\n  };\n\n  Shopify.updateQuickCart = function(cart){\n    var formIsExist = $('.modal-cart-form').length;\n    \n     var totalPriceConverted = Shopify.formatMoney(cart.total_price, theme.moneyFormat);\n    \n\n    if(cart.items.length && formIsExist){\n      $(selectors.QUICK_CART_TABLE).load('/cart?'+(new Date()).getTime()+' #cart-page-table', function() {\n        $(this).find(\"#cart-page-table\").children(':first').unwrap();\n        changeCurrensyAfterUpdate();\n      });\n    }\n    else if(cart.items.length && !formIsExist){\n\n      //  \n      // \tvar cartNoteContent = '<textarea name=\"note\" id=\"CartSpecialInstructionsModal\" class=\"cart-notes\" rows=\"6\" placeholder=\"Add a note to your order\">'+cart.note+'</textarea>';\n      // \n \n      var cartNoteContent = '';\n      var cartNoteClass = '';\n      var cart_level_discount_applications = '';\n      if (true) {\n        var cartNote = cart.note;\n        if(cartNote == null){\n          cartNote = \"\";\n        }\n        cartNoteClass = '-with-notes';\n        cartNoteContent = (\n          '<a role=\"button\" data-toggle=\"collapse\" href=\"#cartNotesCollapse\" aria-expanded=\"false\" aria-controls=\"cartNotesCollapse\" class=\"cart-notes-title\">Add order notes</a>' +\n          '<div class=\"collapse\" id=\"cartNotesCollapse\">' +\n            '<textarea name=\"note\" id=\"CartSpecialInstructions\" class=\"cart-notes\" rows=\"6\" placeholder=\"Add a note to your order\">'+cartNote+'</textarea>' +\n          '</div>'\n        );\n      }\n\n      if(cart.cart_level_discount_applications.length){\n\n        for(var k=0;k<cart.cart_level_discount_applications.length;k++){\n          var total_allocated_amount_val = cart.cart_level_discount_applications[k].total_allocated_amount;\n          \n          var total_allocated_amount_converted = Shopify.formatMoney(total_allocated_amount_val, app.data.money_format);              \n          \n\n\n          var cart_level_discount_applications = '<p class=\"order-discount-cart-wrapper\"><span class=\"order-discount--cart total_val\">'+\n            '<svg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" class=\"icon icon-saletag\"><path d=\"M10 3a1 1 0 1 1 0-2 1 1 0 0 1 0 2zm0-3H7a1 1 0 0 0-.71.29l-6 6a1 1 0 0 0 0 1.42l4 4a1 1 0 0 0 1.42 0c.19-.2 5.8-5.81 6-6A1 1 0 0 0 12 5V2a2 2 0 0 0-2-2z\"/></svg>'+\n              cart.cart_level_discount_applications[k].title +':</span><span class=\"order-discount--cart-total\"> (-<span class=\"money\">'+total_allocated_amount_converted+'</span>)</span></p>';\n \n        }             \n\n      }\n\n      \n\n      var title = '<h2 class=\"nav-cart-dialog-title\">My shopping cart</h2>',\n      form = '<form action=\"/cart\" method=\"post\" novalidate class=\"modal-cart-form\"></form>',\n        _checkOutRow = '<div class=\"nav-cart-dialog-total\">'+\n        '<span class=\"nav-cart-dialog-total-sign\">Subtotal</span>'+\n      '<span class=\"nav-cart-dialog-total-amount money\">'+totalPriceConverted+'</span>'+\n        '</div>'+cartNoteContent+\n        '<ul class=\"nav-cart-dialog-actions\">'+\n        '<li><a href=\"javascript:void(0);\" class=\"btn_close btn btn-white btn-ghost btn-lg\">Continue Shopping</a></li>'+\n        '<li><button type=\"submit\" name=\"checkout\" value=\"Checkout\" class=\"btn btn-primary btn-lg\">Checkout</button></li>'+\n        '</ul>'+\n          '<div id=\"additional-checkout-block\"></div>';\n\n\n          checkOutRow = (\n          '<div class=\"cart-total-wrapper\">'+\n            '<div class=\"row\">' +\n              '<div class=\"col-sm-6\">' + cart_level_discount_applications + \n                '<p class=\"cart-total ' + cartNoteClass + '\"> <span class=\"sign\">Subtotal</span>  <span class=\"money nav-cart-dialog-total-amount\">' +totalPriceConverted+ '</span></p>' +\n                cartNoteContent +\n              '</div>' +\n              '<div class=\"col-sm-6\">' +\n                '<div class=\"cart-checkout-bts\">' +\n                  '<div class=\"clearfix\">' +\n                    '<button type=\"submit\" name=\"checkout\" class=\"cart-checkout-btn checkout-btn btn btn-primary btn-lg\">Checkout</button>' +\n                  '</div>' +\n                '</div>' +\n              '</div>' +\n            '</div>' +\n        '</div>' +\n        '<div id=\"additional-checkout-block\"></div>');\n\n      $(selectors.QUICK_CART_MENU).html(\"\").append(title).append(form);\n      $('.modal-cart-form').load('/cart?'+(new Date()).getTime()+' #cart-page-table', function() {\n        $(this).find(\"#cart-page-table\").attr(\"id\", \"modal-cart-table\")\n        $(this).append(checkOutRow);\n        changeCurrensyAfterUpdate();\n        Shopify.updateExpressPayments(0);\n      });\n    }\n    else{\n      $(selectors.QUICK_CART_FORM).hide().load('/cart .empty-page-content', function() {\n        $(this).children(':first').unwrap();\n      }).fadeIn();\n    }\n\n\n    console.log('from modal update');\n  };\n\n  Shopify.loadQuickCart = function(cart){\n    Shopify.updateQuickCart(cart);\n    Shopify.afterCartUpdate(cart);\n    Shopify.showModal();\n  };\n\n  Shopify.updateCart = function(cart){\n\n    if(cart.items.length){\n      $(selectors.CART_MENU).load('/cart?'+(new Date()).getTime()+' .main-cart-form', function() {\n        $(this).children(':first').unwrap();\n        \n      });\n    }\n    else{\n      $(selectors.CART_MENU).hide().load('/cart .empty-page-content', function() {\n        $(this).children(':first').unwrap();\n      }).fadeIn();\n    }\n\n    Shopify.afterCartUpdate(cart);\n  };\n\n  Shopify.increaseQty = function(el){\n    var inputEl = el.closest(\".table-shopping-qty\").find(\"input\"),\n        qty = inputEl.val();\n    qty++;\n    var quantity = qty,\n        id = inputEl.data(\"id\");\n\n    \n     inputEl.val(quantity);\n     inputEl.closest(\"form\").submit();\n     return;\n    \n\n    Shopify.changeItem(id, quantity, function(cart){\n      var updatedItem = cart.items.filter(function(item){ return item.variant_id == id });\n      if(updatedItem.length && updatedItem[0].quantity == quantity){\n        inputEl.val(quantity);\n        Shopify.updateCart(cart);\n        Shopify.updateQuickCart(cart);\n      }\n      else{\n        jQuery('.ajaxcart__item__' + id + '__errors').show().delay(3000).fadeOut();\n      }\n    });\n  }\n\n\n  Shopify.changeInputQty = function(el){\n    var inputEl = el,\n        $itemRow = inputEl.closest(\"tr\"),\n        qty = inputEl.val();\n\n    var quantity = qty,\n        id = inputEl.data(\"id\");\n if(quantity == 0){\n   Shopify.removeItem(id, function(cart){\n        $itemRow.fadeOut( \"slow\", function() {\n          Shopify.updateCart(cart);\n          Shopify.updateQuickCart(cart);\n        });\n      });\n }else{\n    \n     inputEl.val(qty);\n     inputEl.closest(\"form\").submit();\n     return;\n    \n\n    Shopify.changeItem(id, quantity, function(cart){\n      var updatedItem = cart.items.filter(function(item){ return item.variant_id == id });\n      if(updatedItem.length && updatedItem[0].quantity == quantity){\n        Shopify.updateCart(cart);\n        Shopify.updateQuickCart(cart);\n      }\n      else{\n        jQuery('.ajaxcart__item__' + id + '__errors').show().delay(3000).fadeOut();\n      }\n    });\n }\n  }\n\n  Shopify.decreaseQty = function(el){\n    var inputEl = el.closest(\".table-shopping-qty\").find(\"input\"),\n        $itemRow = el.closest(\"tr\"),\n        qty = inputEl.val();\n    qty--;\n    if (qty < 0)\n      qty = 0;\n\n    var quantity = qty,\n        id = inputEl.data(\"id\");\n\n    \n     inputEl.val(qty);\n     inputEl.closest(\"form\").submit();\n     return;\n    \n\n    if(quantity != 0){\n      inputEl.val(qty);\n      Shopify.changeItem(id, quantity, function(cart){\n        Shopify.updateCart(cart);\n        Shopify.updateQuickCart(cart);\n      });\n    }\n    else{\n      Shopify.removeItem(id, function(cart){\n        $itemRow.fadeOut( \"slow\", function() {\n          Shopify.updateCart(cart);\n          Shopify.updateQuickCart(cart);\n        });\n      });\n    }\n  }\n  Shopify.removeItemFromCart = function(el){\n    var id = el.data('id') || null,\n        $itemRow = el.closest(\"tr\");\n\n    Shopify.removeItem(id, function(cart){\n      $itemRow.fadeOut( \"slow\", function() {\n        Shopify.updateCart(cart);\n        Shopify.updateQuickCart(cart);\n      });\n    });\n  }\n});\n\nvar  bindEventsInModalCart = function(){\n  var modalSelectors = {\n    CART_PLUS_BTN: \".table-shopping-qty-plus\",\n    CART_MINUS_BTN: \".table-shopping-qty-minus\",\n    CART_INPUT_FIELD: \".cart__qty-input\",\n    CART_MENU: '.main-cart-form',\n    CART_PAGE_MENU: '.modal-cart-form',\n    TOTAL_ITEMS: '.count-items',\n    TOTAL_ITEMS_PRICE: '.total-items-price',\n    CART_REMOVE_BTN: '.cart-remove-btn',\n    QUICK_CART_MENU:'.nav-dialog-inner-cart'\n  };\n  var modalForm = $(\".nav-dialog-inner-cart\");\n  $additionCheckoutBlock = modalForm.find(\"#additional-checkout-block\");\n  $additionCheckoutBlock.load('/cart #addCheckoutBtn', function() {\n    if (window.Shopify && Shopify.StorefrontExpressButtons) {\n      Shopify.StorefrontExpressButtons.initialize();\n    }\n  });\n   \n  $(modalSelectors.QUICK_CART_MENU).on(\"click\",modalSelectors.CART_PLUS_BTN, function () {\n    Shopify.increaseQty($(this));\n  })\n  $(modalSelectors.QUICK_CART_MENU).on(\"click\", modalSelectors.CART_MINUS_BTN, function () {\n    Shopify.decreaseQty($(this));\n  });\n  $(modalSelectors.QUICK_CART_MENU).on(\"click\",modalSelectors.CART_REMOVE_BTN, function(e){\n    e.preventDefault();\n    Shopify.removeItemFromCart($(this));\n  });\n  $(modalSelectors.QUICK_CART_MENU).on(\"click\",\".btn_close\", function(){\n    var magnificPopup = $.magnificPopup.instance;\n    if(typeof magnificPopup !== 'undefined'){\n      magnificPopup.close();\n    }\n  });\n\n  $(modalSelectors.QUICK_CART_MENU).on(\"focusout\",\"textarea\", function(){\n    var note = $(this).val(),\n     textareas = $(\".cart-notes\");\n\n    Shopify.updateCartNote(note, function(){\n      $(textareas).each(function () {\n        $(this).val(note);\n        $(this).text(note);\n      });\n    });\n  });\n\n};\nvar  bindEventsInCart = function(){\n  var cartSelectors = {\n    CART_PLUS_BTN: \".table-shopping-qty-plus\",\n    CART_MINUS_BTN: \".table-shopping-qty-minus\",\n    CART_INPUT_FIELD: \".cart__qty-input\",\n    CART_CONTENT: \".cart-content\",\n    CART_REMOVE_BTN: '.cart-remove-btn'\n  };\n   \n  $(cartSelectors.CART_CONTENT).on(\"click\",cartSelectors.CART_PLUS_BTN, function () {\n    Shopify.increaseQty($(this));\n  })\n  $(cartSelectors.CART_CONTENT).on(\"click\", cartSelectors.CART_MINUS_BTN, function () {\n    Shopify.decreaseQty($(this));\n  });\n  $(cartSelectors.CART_CONTENT).on(\"click\",cartSelectors.CART_REMOVE_BTN, function(e){\n    e.preventDefault();\n    Shopify.removeItemFromCart($(this));\n  });\n   $(cartSelectors.CART_CONTENT).on(\"click\",\".btn_close\", function(){\n    window.location.href = \"/collections/all\";\n  });\n   $(cartSelectors.CART_CONTENT).on(\"focusout\",\"textarea\", function(){\n    var note = $(this).val(),\n     textareas = $(\".cart-notes\");\n\n    Shopify.updateCartNote(note, function(){\n      $(textareas).each(function () {\n        $(this).val(note);\n        $(this).text(note);\n      });\n    });\n  });\n};\n\nvar changeCurrensyAfterUpdate = function(){\n  \n    return;\n  \n}\n\n theme.RelatedProductSection = (function() {\n  function RelatedProductSection(container) {\n\n    var $container = this.$container = $(container);\n    var id = $container.attr('data-section-id');\n    var productsPerRow = $container.attr('data-productsPerRow');\n    \n    \n    \n    var productRecommendationsSection = document.querySelector(\".product-recommendations\");\n    if (productRecommendationsSection != null) {\n      // Read product id from data attribute   \n      var productId = productRecommendationsSection.dataset.productId;\n      // Read limit from data attribute\n      var limit = productRecommendationsSection.dataset.limit;\n      // Build request URL\n      var requestUrl = \"/recommendations/products?section_id=product-recommendations&limit=\"+limit+\"&product_id=\"+productId;\n      // Create request and submit it using Ajax\n      var request = new XMLHttpRequest();\n      request.open(\"GET\", requestUrl);\n      request.onload = function() {\n        if (request.status >= 200 && request.status < 300) {\n\n          var container = document.createElement(\"div\");\n          container.innerHTML = request.response;\n          productRecommendationsSection.innerHTML = container.querySelector('.product-recommendations').innerHTML;\n\n          var  relatedProductsCarousel = new Swiper ('.swiper-products-'+id, {\n            // Optional parameters\n            direction: 'horizontal',\n            pagination: false,\n            loop: false,\n            slidesPerView: productsPerRow,\n            navigation: {\n              nextEl: '.swiper-button-next',\n              prevEl: '.swiper-button-prev'\n            },\n            breakpoints: {\n              992: {\n                slidesPerView: 3,\n                loop: false\n              },\n              768: {\n                slidesPerView: 2,\n                loop: false\n              }\n            },\n            autoplay: 3000\n          });\n\n          $container.find(\".product-thumb-caption-title\").on(\"click\", function(){\n            var product_url = $(this).closest(\".product-thumb\").find(\".product-thumb-href\").attr(\"href\");\n            window.location.href = product_url;\n          });\n\n            \n        }else{\n          $(\".recommendation_content\").hide();\n        }\n      };\n      request.send();\n}                          \n\n  }\n\n  return RelatedProductSection;\n})();\n\n\n  theme.init = function() {\n    $('a[href=\"#\"]').on('click', function(evt) {\n      evt.preventDefault();\n    });\n\n    theme.customerTemplates.init();\n  };\n\n  $(theme.init);\n\n  $(document).ready(function() {\n    var sections = new theme.Sections();\n\n    sections.register('cart-template', theme.Cart);\n    sections.register('product-page', theme.ProductPage);\n    sections.register('collection-template', theme.CollectionPage);\n    sections.register('header-section', theme.HeaderSection);\n    sections.register('popup-section', theme.PopupSection);\n    sections.register('map', theme.Maps);\n    sections.register('slideshow-section', theme.SlideshowSection);\n    sections.register('columns-slider-section', theme.ColumnsSliderSection);\n    sections.register('fetured-collection-section', theme.FeturedCollectionSection);\n    sections.register('search-section', theme.SearchSection);\n    sections.register('collections-list-section', theme.CollectionsListSection);\n    sections.register('featured-collections-section', theme.FeaturedCollectionsSection);\n    // sections.register('instagram-feed-section', theme.InstagramFeedSection);\n    // sections.register('social-media-section', theme.SocialMediaSection);\n    sections.register('instagram-section', theme.InstagramSection);\n    sections.register('twitter-section', theme.TwitterSection);\n    sections.register('image-bar-section', theme.ImageBarSection);\n    sections.register('logo-section', theme.LogoSection);\n    sections.register('quotes-section', theme.Quotes);\n    sections.register('rich-text-section', theme.RichTextSection);\n    sections.register('video-section', theme.VideoSection);\n    sections.register('blog-posts-section', theme.BlogPostsSection);\n    sections.register('blog-page-section', theme.BlogPageSection);\n    sections.register('article-page-section', theme.ArticlePageSection);\n    sections.register('footer-section', theme.FooterSection);\n    sections.register('password-section', theme.PasswordSection);\n    sections.register('related-products', theme.RelatedProductSection);\n    sections.register('newsletter-section', theme.NewsletterSection);\n\n\n\n    $(document)\n     .on('shopify:section:select', function(e) {\n        var $target = $(e.target),\n          sectionID = e.originalEvent.detail.sectionId,\n          $handle = $('#shopify-section-handle-' + sectionID),\n          handle_class = $handle.length ? $handle.attr('data-bg-type') : null;\n\n        if(handle_class) {\n          $target.addClass(handle_class);\n        }\n     });\n\n  });\n\n   var SPRCallbacks = {};\n    SPRCallbacks.onReviewsLoad = function(){\n      $.fn.matchHeight._update();\n    }\n"],
  "mappings": "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f,YAAe,SACf,QAAW,CACP,CACI,WAAc,IAClB,CACJ,CACJ,EACA,CACI,YAAe,8BACf,YAAe,MACf,QAAW,CACP,CACI,WAAc,YAClB,CACJ,CACJ,EACA,CACI,YAAe,8BACf,YAAe,SACf,QAAW,CACP,CACI,UAAa,IACjB,CACJ,CACJ,EACA,CACI,YAAe,YACf,YAAe,WACf,QAAW,CACP,CACI,MAAS,SACb,EACA,CACI,UAAa,EACjB,CACJ,CACJ,EACA,CACI,YAAe,qBACf,YAAe,MACf,QAAW,CACP,CACI,MAAS,SACb,CACJ,CACJ,EACA,CACI,YAAe,8BACf,YAAe,WACf,QAAW,CACP,CACI,WAAc,IAClB,CACJ,CACJ,EACA,CACI,YAAe,MACf,YAAe,MACf,QAAW,CACP,CACI,WAAc,IAClB,EACA,CACI,WAAc,IAClB,CACJ,CACJ,EACA,CACI,YAAe,MACf,YAAe,WACf,QAAW,CACP,CACI,MAAS,SACb,EACA,CACI,UAAa,EACjB,EACA,CACI,WAAc,IAClB,CACJ,CACJ,EACA,CACI,YAAe,MACf,YAAe,cACf,QAAW,CACP,CACI,WAAc,YAClB,EACA,CACI,WAAc,KAClB,EACA,CACI,UAAa,IACjB,CACJ,CACJ,EACA,CACI,YAAe,MACf,YAAe,cACf,QAAW,CACP,CACI,WAAc,YAClB,EACA,CACI,WAAc,KAClB,CACJ,CACJ,EACA,CACI,YAAe,WACf,YAAe,WACf,QAAW,CACP,CACI,MAAS,SACb,EACA,CACI,UAAa,EACjB,CACJ,CACJ,EACA,CACI,YAAe,eACf,YAAe,gBACf,QAAW,CACP,CACI,MAAS,SACb,EACA,CACI,UAAa,EACjB,CACJ,CACJ,EACA,CACI,YAAe,eACf,YAAe,kBACf,QAAW,CACP,CACI,MAAS,SACb,EACA,CACI,UAAa,EACjB,EACA,CACI,OAAU,EACd,CACJ,CACJ,EACA,CACI,YAAe,gBACf,YAAe,WACf,QAAW,CACP,CACI,MAAS,SACb,EACA,CACI,UAAa,EACjB,CACJ,CACJ,EACA,CACI,YAAe,aACf,YAAe,WACf,QAAW,CACP,CAC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",
  "names": ["$", "e", "t", "n", "r", "o", "i", "a", "u", "c", "s", "l", "f", "d", "h", "v", "Player", "event", "container", "type", "instance", "twitterFetcher", "itemMinHeight", "target_offset", "animation_durration", "desktop_title", "mobile_title", "descriptionHeight", "galleryHeight", "imageBlock", "imageSlideLinks", "self", "variant", "swiperCarousel", "swiperCarouselThumbs", "animationOnHoverBlock", "filters", "activeTag", "activeHandle", "hideSpinner", "url", "headerHeight", "slider_height", "elm", "off", "w", "docH", "docW", "isEntirelyVisible", "cookieTime", "show_modal", "status", "length", "pageHeaderHeight", "navMenuHeight", "totalMinHeight", "pageCollHeaderNav", "titlePaddingBottom"]
}
