{"version":3,"sources":["node_modules/browserify/node_modules/browser-pack/_prelude.js","assets/js/scripts.js"],"names":[],"mappings":"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","file":"scripts.min.js","sourcesContent":["(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require==\"function\"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error(\"Cannot find module '\"+o+\"'\");throw f.code=\"MODULE_NOT_FOUND\",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require==\"function\"&&require;for(var o=0;o 1) {\n jQuery(body).addClass(\"sticky\");\n }\n\n\tjQuery(window).scroll(function () {\n\t if (jQuery(this).scrollTop() === 0) {\n\t jQuery(body).removeClass(\"sticky\");\n\t }\n\t else if (jQuery(this).scrollTop() > 1) {\n\t jQuery(body).addClass(\"sticky\");\n\t }\n\t});\n\n\tjQuery('.detail-toggle').click(function(){\n\t\tjQuery(this).toggleClass('active').siblings('.detail-content').slideToggle('fast');\n\t});\n\n\tjQuery('.product-gallery, .testimonials').flickity({\n\t\twrapAround: true,\t \n\t\tpageDots: false,\n\t percentPosition: true,\n\t prevNextButtons: true,\n\t autoPlay: 5000,\n\t imagesLoaded: true,\n\t});\n\n\tjQuery('.programs-slider').flickity({\n\t\tautoPlay: 3000,\n\t\tpageDots: false,\n\t percentPosition: true,\n\t prevNextButtons: true,\n\t cellAlign: 'left',\n\t contain: true,\n\t wrapAround: true,\n\t});\n\n\tjQuery('.slider').each(function() {\n\t\n\t\tvar sliderOptions = {\n\t\t\tpageDots: false,\n\t\t percentPosition: true,\n\t\t prevNextButtons: false,\n\t\t imagesLoaded: true,\n\t\t contain: true,\n\t\t wrapAround: false,\n\t\t continuousScroll: true,\n\t\t \tfreeScrollFriction: 10,\n\t\t}\n\n\t\tif(jQuery(this).children().length > 5) {\n\t\t\tsliderOptions.autoPlay = 2500;\n\t\t\t// sliderOptions.draggable = false;\n\t\t\tsliderOptions.wrapAround = true;\n\t\t\tsliderOptions.freeScrollFriction = 0.001;\n\t \tsliderOptions.selectedAttraction = .01;\n\t \t// sliderOptions.friction = 50;\n\t\t}\n\n\t\tjQuery(this).flickity(\n\t\t\tsliderOptions\n\t\t);\n\t});\n\n\tjQuery('.tags-slider').each(function(){\n\t\tif(jQuery(this).children('a').length > 1) {\n\t\t\tjQuery(this).flickity({\n\t\t\t\tpageDots: false,\n\t\t\t\tprevNextButtons: false,\n\t\t\t\tautoPlay: 3000,\n\t\t\t\timagesLoaded: true,\n\t\t\t});\n\t\t}\n\t});\n\n\n if(jQuery('.product-video').length > 0) {\n plyr.setup({\n controls: ['play-large', 'progress'],\n });\n }\n\n jQuery('select').select2({ \n \tminimumResultsForSearch: -1, \n\t templateResult: function (data, container) {\n\t\t if (data.element) {\n\t\t jQuery(container).addClass(jQuery(data.element).attr(\"class\"));\n\t\t }\n\t\t return data.text;\n\t \t} \n\t});\n\n\n jQuery('.home-steps-expand').click(function(){\n \tjQuery('.home-steps .container').toggleClass('active');\n\n });\n\n\n jQuery('p').html(function(_, text) {\n return text.replace('', 'Read more' );\n });\n\n\n var parent = jQuery('span.read-more').parent();\n var clone = parent.clone();\n\n jQuery('span.read-more').parent().nextAll().wrapAll('
');\n\n jQuery(parent).hide().parent().append(clone);\n\n jQuery(clone).find('span').click(function() {\n\n \tvar readMore = jQuery(this).find('span');\n \t\n \treadMore.html() == \"Read less\" ? readMore.html('Read more') : readMore.html('Read less');\n \tjQuery(this).parent().parent().children('.read-more-content').slideToggle();\n });\n\n\n});\n\n\njQuery(window).load(function () {\n\tjQuery('.feature-products, .category-feature-products').each(function () {\n\n\t var highestBox = 0;\n\n\t jQuery('.feature-product', this).each(function () {\n\n\t if (jQuery(this).outerHeight() > highestBox) {\n\t highestBox = jQuery(this).outerHeight();\n\t }\n\t });\n\n\t jQuery('.feature-product', this).css('min-height', highestBox);\n\t});\n});\n\n\t\n"],"preExistingComment":"//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm5vZGVfbW9kdWxlcy9icm93c2VyaWZ5L25vZGVfbW9kdWxlcy9icm93c2VyLXBhY2svX3ByZWx1ZGUuanMiLCJhc3NldHMvanMvc2NyaXB0cy5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0FDQUEsT0FBTyxRQUFQLEVBQWlCLEtBQWpCLENBQXVCLFlBQVU7O0FBRWhDLFFBQU8sY0FBUCxFQUF1QixLQUF2QixDQUE2QixZQUFVOztBQUV0QyxTQUFPLFFBQVAsRUFBaUIsV0FBakIsQ0FBNkIsZUFBN0I7O0FBRUEsTUFBRyxPQUFPLFFBQVAsRUFBaUIsUUFBakIsQ0FBMEIsZUFBMUIsQ0FBSCxFQUErQztBQUM5QyxVQUFPLFlBQVAsRUFBcUIsR0FBckIsQ0FBeUIsWUFBekIsRUFBdUMsUUFBdkM7QUFDQSxHQUZELE1BRU87QUFDTixVQUFPLFlBQVAsRUFBcUIsR0FBckIsQ0FBeUIsWUFBekIsRUFBdUMsTUFBdkM7QUFDQTtBQUNELEVBVEQ7O0FBV0EsS0FBSSxrQkFBa0IsT0FBTyx5QkFBUCxDQUF0Qjs7QUFFQSxpQkFBZ0IsS0FBaEIsQ0FBc0IsWUFBWTtBQUNqQyxTQUFPLElBQVAsRUFBYSxXQUFiLENBQXlCLFFBQXpCO0FBQ0EsRUFGRDs7QUFJQSxLQUFJLE9BQU8sT0FBTyxRQUFQLENBQVg7O0FBRUEsS0FBSSxPQUFPLE1BQVAsRUFBZSxTQUFmLEtBQTZCLENBQWpDLEVBQW9DO0FBQzdCLFNBQU8sSUFBUCxFQUFhLFFBQWIsQ0FBc0IsUUFBdEI7QUFDSDs7QUFFSixRQUFPLE1BQVAsRUFBZSxNQUFmLENBQXNCLFlBQVk7QUFDOUIsTUFBSSxPQUFPLElBQVAsRUFBYSxTQUFiLE9BQTZCLENBQWpDLEVBQW9DO0FBQ2hDLFVBQU8sSUFBUCxFQUFhLFdBQWIsQ0FBeUIsUUFBekI7QUFDSCxHQUZELE1BR0ssSUFBSSxPQUFPLElBQVAsRUFBYSxTQUFiLEtBQTJCLENBQS9CLEVBQWtDO0FBQ25DLFVBQU8sSUFBUCxFQUFhLFFBQWIsQ0FBc0Is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QUFQLEVBQXlCLE1BQXpCLEdBQWtDLE9BQWxDLEdBQTRDLE9BQTVDLENBQW9ELHVDQUFwRDs7QUFFQSxRQUFPLE1BQVAsRUFBZSxJQUFmLEdBQXNCLE1BQXRCLEdBQStCLE1BQS9CLENBQXNDLEtBQXRDOztBQUVBLFFBQU8sS0FBUCxFQUFjLElBQWQsQ0FBbUIsTUFBbkIsRUFBMkIsS0FBM0IsQ0FBaUMsWUFBVzs7QUFFM0MsTUFBSSxXQUFXLE9BQU8sSUFBUCxFQUFhLElBQWIsQ0FBa0IsTUFBbEIsQ0FBZjs7QUFFQSxXQUFTLElBQVQsTUFBbUIsV0FBbkIsR0FBaUMsU0FBUyxJQUFULENBQWMsV0FBZCxDQUFqQyxHQUE4RCxTQUFTLElBQVQsQ0FBYyxXQUFkLENBQTlEO0FBQ0EsU0FBTyxJQUFQLEVBQWEsTUFBYixHQUFzQixNQUF0QixHQUErQixRQUEvQixDQUF3QyxvQkFBeEMsRUFBOEQsV0FBOUQ7QUFDQSxFQU5EO0FBU0gsQ0E1SUQ7O0FBK0lBLE9BQU8sTUFBUCxFQUFlLElBQWYsQ0FBb0IsWUFBWTtBQUMvQixRQUFPLCtDQUFQLEVBQXdELElBQXhELENBQTZELFlBQVk7O0FBRXZFLE1BQUksYUFBYSxDQUFqQjs7QUFFQSxTQUFPLGtCQUFQLEVBQTJCLElBQTNCLEVBQWlDLElBQWpDLENBQXNDLFlBQVk7O0FBRWhELE9BQUksT0FBTyxJQUFQLEVBQWEsV0FBYixLQUE2QixVQUFqQyxFQUE2QztBQUMzQyxpQkFBYSxPQUFPLElBQVAsRUFBYSxXQUFiLEVBQWI7QUFDRDtBQUNGLEdBTEQ7O0FBT0EsU0FBTyxrQkFBUCxFQUEyQixJQUEzQixFQUFpQyxHQUFqQyxDQUFxQyxZQUFyQyxFQUFtRCxVQUFuRDtBQUNELEVBWkQ7QUFhQSxDQWREIiwiZmlsZSI6ImdlbmVyYXRlZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIoZnVuY3Rpb24gZSh0LG4scil7ZnVuY3Rpb24gcyhvLHUpe2lmKCFuW29dKXtpZighdFtvXSl7dmFyIGE9dHlwZW9mIHJlcXVpcmU9PVwiZnVuY3Rpb25cIiYmcmVxdWlyZTtpZighdSYmYSlyZXR1cm4gYShvLCEwKTtpZihpKXJldHVybiBpKG8sITApO3ZhciBmPW5ldyBFcnJvcihcIkNhbm5vdCBmaW5kIG1vZHVsZSAnXCIrbytcIidcIik7dGhyb3cgZi5jb2RlPVwiTU9EVUxFX05PVF9GT1VORFwiLGZ9dmFyIGw9bltvXT17ZXhwb3J0czp7fX07dFtvXVswXS5jYWxsKGwuZXhwb3J0cyxmdW5jdGlvbihlKXt2YXIgbj10W29dWzFdW2VdO3JldHVybiBzKG4/bjplKX0sbCxsLmV4cG9ydHMsZSx0LG4scil9cmV0dXJuIG5bb10uZXhwb3J0c312YXIgaT10eXBlb2YgcmVxdWlyZT09XCJmdW5jdGlvblwiJiZyZXF1aXJlO2Zvcih2YXIgbz0wO288ci5sZW5ndGg7bysrKXMocltvXSk7cmV0dXJuIHN9KSIsImpRdWVyeShkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oKXtcblxuXHRqUXVlcnkoJyNtb2JpbGUtbWVudScpLmNsaWNrKGZ1bmN0aW9uKCl7XG5cdFx0XG5cdFx0alF1ZXJ5KCdoZWFkZXInKS50b2dnbGVDbGFzcygnbW9iaWxlLWFjdGl2ZScpO1xuXG5cdFx0aWYoalF1ZXJ5KCdoZWFkZXInKS5oYXNDbGFzcygnbW9iaWxlLWFjdGl2ZScpKSB7XG5cdFx0XHRqUXVlcnkoJ2JvZHksIGh0bWwnKS5jc3MoJ292ZXJmbG93LXknLCAnaGlkZGVuJyk7XG5cdFx0fSBlbHNlIHtcblx0XHRcdGpRdWVyeSgnYm9keSwgaHRtbCcpLmNzcygnb3ZlcmZsb3cteScsICdhdXRvJyk7XG5cdFx0fVxuXHR9KTtcblxuXHR2YXIgaXRlbUhhc0NoaWxkcmVuID0galF1ZXJ5KCcubWVudS1pdGVtLWhhcy1jaGlsZHJlbicpO1xuXG5cdGl0ZW1IYXNDaGlsZHJlbi5jbGljayhmdW5jdGlvbiAoKSB7XG5cdFx0alF1ZXJ5KHRoaXMpLnRvZ2dsZUNsYXNzKCdhY3RpdmUnKTtcblx0fSk7XG5cdFxuXHR2YXIgYm9keSA9IGpRdWVyeSgnaGVhZGVyJyk7XG5cblx0aWYgKGpRdWVyeSh3aW5kb3cpLnNjcm9sbFRvcCgpID4gMSkge1xuICAgICAgICBqUXVlcnkoYm9keSkuYWRkQ2xhc3MoXCJzdGlja3lcIik7XG4gICAgfVxuXG5cdGpRdWVyeSh3aW5kb3cpLnNjcm9sbChmdW5jdGlvbiAoKSB7XG5cdCAgICBpZiAoalF1ZXJ5KHRoaXMpLnNjcm9sbFRvcCgpID09PSAwKSB7XG5cdCAgICAgICAgalF1ZXJ5KGJvZHkpLnJlbW92ZUNsYXNzKFwic3RpY2t5XCIpO1xuXHQgICAgfVxuXHQgICAgZWxzZSBpZiAoalF1ZXJ5KHRoaXMpLnNjcm9sbFRvcCgpID4gMSkge1xuXHQgICAgICAgIGpRdWVyeShib2R5KS5hZGRDbGFzcyhcInN0aWNreVwiKTtcblx0ICAgIH1cblx0fSk7XG5cblx0alF1ZXJ5KCcuZGV0YWlsLXRvZ2dsZScpLmNsaWNrKGZ1bmN0aW9uKCl7XG5cdFx0alF1ZXJ5KHRoaXMpLnRvZ2dsZUNsYXNzKCdhY3RpdmUnKS5zaWJsaW5ncygnLmRldGFpbC1jb250ZW50Jykuc2xpZGVUb2dnbGUoJ2Zhc3QnKTtcblx0fSk7XG5cblx0alF1ZXJ5KCcucHJvZHVjdC1nYWxsZXJ5LCAudGVzdGltb25pYWxzJykuZmxpY2tpdHkoe1xuXHRcdHdyYXBBcm91bmQ6IHRydWUsXHQgICAgXG5cdFx0cGFnZURvdHM6IGZhbHNlLFxuXHQgICAgcGVyY2VudFBvc2l0aW9uOiB0cnVlLFxuXHQgICAgcHJldk5leHRCdXR0b25zOiB0cnVlLFxuXHQgICAgYXV0b1BsYXk6IDUwMDAsXG5cdCAgICBpbWFnZXNMb2FkZWQ6IHRydWUsXG5cdH0pO1xuXG5cdGpRdWVyeSgnLnByb2dyYW1zLXNsaWRlcicpLmZsaWNraXR5KHtcblx0XHRhdXRvUGxheTogMzAwMCxcblx0XHRwYWdlRG90czogZmFsc2UsXG5cdCAgICBwZXJjZW50UG9zaXRpb246IHRydWUsXG5cdCAgICBwcmV2TmV4dEJ1dHRvbnM6IHRydWUsXG5cdCAgICBjZWxsQWxpZ246ICdsZWZ0Jyxcblx0ICAgIGNvbnRhaW46IHRydWUsXG5cdCAgICB3cmFwQXJvdW5kOiB0cnVlLFxuXHR9KTtcblxuXHRqUXVlcnkoJy5zbGlkZXInKS5lYWNoKGZ1bmN0aW9uKCkge1xuXHRcblx0XHR2YXIgc2xpZGVyT3B0aW9ucyA9IHtcblx0XHRcdHBhZ2VEb3RzOiBmYWxzZSxcblx0XHQgICAgcGVyY2VudFBvc2l0aW9uOiB0cnVlLFxuXHRcdCAgICBwcmV2TmV4dEJ1dHRvbnM6IGZhbHNlLFxuXHRcdCAgICBpbWFnZXNMb2FkZWQ6IHRydWUsXG5cdFx0ICAgIGNvbnRhaW46IHRydWUsXG5cdFx0ICAgIHdyYXBBcm91bmQ6IGZhbHNlLFxuXHRcdCAgICBjb250aW51b3VzU2Nyb2xsOiB0cnVlLFxuXHRcdCAgIFx0ZnJlZVNjcm9sbEZyaWN0aW9uOiAxMCxcblx0XHR9XG5cblx0XHRpZihqUXVlcnkodGhpcykuY2hpbGRyZW4oKS5sZW5ndGggPiA1KSB7XG5cdFx0XHRzbGlkZXJPcHRpb25zLmF1dG9QbGF5ID0gMjUwMDtcblx0XHRcdC8vIHNsaWRlck9wdGlvbnMuZHJhZ2dhYmxlID0gZmFsc2U7XG5cdFx0XHRzbGlkZXJPcHRpb25zLndyYXBBcm91bmQgPSB0cnVlO1xuXHRcdFx0c2xpZGVyT3B0aW9ucy5mcmVlU2Nyb2xsRnJpY3Rpb24gPSAwLjAwMTtcblx0ICAgICBcdHNsaWRlck9wdGlvbnMuc2VsZWN0ZWRBdHRyYWN0aW9uID0gLjAxO1xuXHQgICAgIFx0Ly8gc2xpZGVyT3B0aW9ucy5mcmljdGlvbiA9IDUwO1xuXHRcdH1cblxuXHRcdGpRdWVyeSh0aGlzKS5mbGlja2l0eShcblx0XHRcdHNsaWRlck9wdGlvbnNcblx0XHQpO1xuXHR9KTtcblxuXHRqUXVlcnkoJy50YWdzLXNsaWRlcicpLmVhY2goZnVuY3Rpb24oKXtcblx0XHRpZihqUXVlcnkodGhpcykuY2hpbGRyZW4oJ2EnKS5sZW5ndGggPiAxKSB7XG5cdFx0XHRqUXVlcnkodGhpcykuZmxpY2tpdHkoe1xuXHRcdFx0XHRwYWdlRG90czogZmFsc2UsXG5cdFx0XHRcdHByZXZOZXh0QnV0dG9uczogZmFsc2UsXG5cdFx0XHRcdGF1dG9QbGF5OiAzMDAwLFxuXHRcdFx0XHRpbWFnZXNMb2FkZWQ6IHRydWUsXG5cdFx0XHR9KTtcblx0XHR9XG5cdH0pO1xuXG5cbiAgICBpZihqUXVlcnkoJy5wcm9kdWN0LXZpZGVvJykubGVuZ3RoID4gMCkge1xuICAgICAgICBwbHlyLnNldHVwKHtcbiAgICAgICAgICAgIGNvbnRyb2xzOiBbJ3BsYXktbGFyZ2UnLCAncHJvZ3Jlc3MnXSxcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgalF1ZXJ5KCdzZWxlY3QnKS5zZWxlY3QyKHsgXG4gICAgXHRtaW5pbXVtUmVzdWx0c0ZvclNlYXJjaDogLTEsICAgXG5cdCAgICB0ZW1wbGF0ZVJlc3VsdDogZnVuY3Rpb24gKGRhdGEsIGNvbnRhaW5lcikge1xuXHRcdCAgICBpZiAoZGF0YS5lbGVtZW50KSB7XG5cdFx0ICAgICAgalF1ZXJ5KGNvbnRhaW5lcikuYWRkQ2xhc3MoalF1ZXJ5KGRhdGEuZWxlbWVudCkuYXR0cihcImNsYXNzXCIpKTtcblx0XHQgICAgfVxuXHRcdCAgICByZXR1cm4gZGF0YS50ZXh0O1xuXHQgXHR9IFxuXHR9KTtcblxuXG4gICAgalF1ZXJ5KCcuaG9tZS1zdGVwcy1leHBhbmQnKS5jbGljayhmdW5jdGlvbigpe1xuICAgIFx0alF1ZXJ5KCcuaG9tZS1zdGVwcyAuY29udGFpbmVyJykudG9nZ2xlQ2xhc3MoJ2FjdGl2ZScpO1xuXG4gICAgfSk7XG5cblxuICAgIGpRdWVyeSgncCcpLmh0bWwoZnVuY3Rpb24oXywgdGV4dCkge1xuICAgICAgICByZXR1cm4gdGV4dC5yZXBsYWNlKCc8IS0tbW9yZS0tPicsICc8c3BhbiBjbGFzcz1cInJlYWQtbW9yZVwiPlJlYWQgbW9yZTwvc3Bhbj4nICk7XG4gICAgfSk7XG5cblxuICAgIHZhciBwYXJlbnQgPSBqUXVlcnkoJ3NwYW4ucmVhZC1tb3JlJykucGFyZW50KCk7XG4gICAgdmFyIGNsb25lID0gcGFyZW50LmNsb25lKCk7XG5cbiAgICBqUXVlcnkoJ3NwYW4ucmVhZC1tb3JlJykucGFyZW50KCkubmV4dEFsbCgpLndyYXBBbGwoJzxkaXYgY2xhc3M9XCJyZWFkLW1vcmUtY29udGVudFwiPjwvZGl2PicpO1xuXG4gICAgalF1ZXJ5KHBhcmVudCkuaGlkZSgpLnBhcmVudCgpLmFwcGVuZChjbG9uZSk7XG5cbiAgICBqUXVlcnkoY2xvbmUpLmZpbmQoJ3NwYW4nKS5jbGljayhmdW5jdGlvbigpIHtcblxuICAgIFx0dmFyIHJlYWRNb3JlID0galF1ZXJ5KHRoaXMpLmZpbmQoJ3NwYW4nKTtcbiAgICBcdFxuICAgIFx0cmVhZE1vcmUuaHRtbCgpID09IFwiUmVhZCBsZXNzXCIgPyByZWFkTW9yZS5odG1sKCdSZWFkIG1vcmUnKSA6IHJlYWRNb3JlLmh0bWwoJ1JlYWQgbGVzcycpO1xuICAgIFx0alF1ZXJ5KHRoaXMpLnBhcmVudCgpLnBhcmVudCgpLmNoaWxkcmVuKCcucmVhZC1tb3JlLWNvbnRlbnQnKS5zbGlkZVRvZ2dsZSgpO1xuICAgIH0pO1xuXG5cbn0pO1xuXG5cbmpRdWVyeSh3aW5kb3cpLmxvYWQoZnVuY3Rpb24gKCkge1xuXHRqUXVlcnkoJy5mZWF0dXJlLXByb2R1Y3RzLCAuY2F0ZWdvcnktZmVhdHVyZS1wcm9kdWN0cycpLmVhY2goZnVuY3Rpb24gKCkge1xuXG5cdCAgdmFyIGhpZ2hlc3RCb3ggPSAwO1xuXG5cdCAgalF1ZXJ5KCcuZmVhdHVyZS1wcm9kdWN0JywgdGhpcykuZWFjaChmdW5jdGlvbiAoKSB7XG5cblx0ICAgIGlmIChqUXVlcnkodGhpcykub3V0ZXJIZWlnaHQoKSA+IGhpZ2hlc3RCb3gpIHtcblx0ICAgICAgaGlnaGVzdEJveCA9IGpRdWVyeSh0aGlzKS5vdXRlckhlaWdodCgpO1xuXHQgICAgfVxuXHQgIH0pO1xuXG5cdCAgalF1ZXJ5KCcuZmVhdHVyZS1wcm9kdWN0JywgdGhpcykuY3NzKCdtaW4taGVpZ2h0JywgaGlnaGVzdEJveCk7XG5cdH0pO1xufSk7XG5cblx0XG4iXX0="}