(function() {
  var MutationObserver, Util, WeakMap, getComputedStyle, getComputedStyleRX,
    bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; },
    indexOf = [].indexOf || function(item) { for (var i = 0, l = this.length; i < l; i++) { if (i in this && this[i] === item) return i; } return -1; };

  Util = (function() {
    function Util() {}

    Util.prototype.extend = function(custom, defaults) {
      var key, value;
      for (key in defaults) {
        value = defaults[key];
        if (custom[key] == null) {
          custom[key] = value;
        }
      }
      return custom;
    };

    Util.prototype.isMobile = function(agent) {
      return /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(agent);
    };

    Util.prototype.createEvent = function(event, bubble, cancel, detail) {
      var customEvent;
      if (bubble == null) {
        bubble = false;
      }
      if (cancel == null) {
        cancel = false;
      }
      if (detail == null) {
        detail = null;
      }
      if (document.createEvent != null) {
        customEvent = document.createEvent('CustomEvent');
        customEvent.initCustomEvent(event, bubble, cancel, detail);
      } else if (document.createEventObject != null) {
        customEvent = document.createEventObject();
        customEvent.eventType = event;
      } else {
        customEvent.eventName = event;
      }
      return customEvent;
    };

    Util.prototype.emitEvent = function(elem, event) {
      if (elem.dispatchEvent != null) {
        return elem.dispatchEvent(event);
      } else if (event in (elem != null)) {
        return elem[event]();
      } else if (("on" + event) in (elem != null)) {
        return elem["on" + event]();
      }
    };

    Util.prototype.addEvent = function(elem, event, fn) {
      if (elem.addEventListener != null) {
        return elem.addEventListener(event, fn, false);
      } else if (elem.attachEvent != null) {
        return elem.attachEvent("on" + event, fn);
      } else {
        return elem[event] = fn;
      }
    };

    Util.prototype.removeEvent = function(elem, event, fn) {
      if (elem.removeEventListener != null) {
        return elem.removeEventListener(event, fn, false);
      } else if (elem.detachEvent != null) {
        return elem.detachEvent("on" + event, fn);
      } else {
        return delete elem[event];
      }
    };

    Util.prototype.innerHeight = function() {
      if ('innerHeight' in window) {
        return window.innerHeight;
      } else {
        return document.documentElement.clientHeight;
      }
    };

    return Util;

  })();

  WeakMap = this.WeakMap || this.MozWeakMap || (WeakMap = (function() {
    function WeakMap() {
      this.keys = [];
      this.values = [];
    }

    WeakMap.prototype.get = function(key) {
      var i, item, j, len, ref;
      ref = this.keys;
      for (i = j = 0, len = ref.length; j < len; i = ++j) {
        item = ref[i];
        if (item === key) {
          return this.values[i];
        }
      }
    };

    WeakMap.prototype.set = function(key, value) {
      var i, item, j, len, ref;
      ref = this.keys;
      for (i = j = 0, len = ref.length; j < len; i = ++j) {
        item = ref[i];
        if (item === key) {
          this.values[i] = value;
          return;
        }
      }
      this.keys.push(key);
      return this.values.push(value);
    };

    return WeakMap;

  })());

  MutationObserver = this.MutationObserver || this.WebkitMutationObserver || this.MozMutationObserver || (MutationObserver = (function() {
    function MutationObserver() {
      if (typeof console !== "undefined" && console !== null) {
        console.warn('MutationObserver is not supported by your browser.');
      }
      if (typeof console !== "undefined" && console !== null) {
        console.warn('WOW.js cannot detect dom mutations, please call .sync() after loading new content.');
      }
    }

    MutationObserver.notSupported = true;

    MutationObserver.prototype.observe = function() {};

    return MutationObserver;

  })());

  getComputedStyle = this.getComputedStyle || function(el, pseudo) {
    this.getPropertyValue = function(prop) {
      var ref;
      if (prop === 'float') {
        prop = 'styleFloat';
      }
      if (getComputedStyleRX.test(prop)) {
        prop.replace(getComputedStyleRX, function(_, _char) {
          return _char.toUpperCase();
        });
      }
      return ((ref = el.currentStyle) != null ? ref[prop] : void 0) || null;
    };
    return this;
  };

  getComputedStyleRX = /(\-([a-z]){1})/g;

  this.WOW = (function() {
    WOW.prototype.defaults = {
      boxClass: 'wow',
      animateClass: 'animated',
      offset: 0,
      mobile: true,
      live: true,
      callback: null
    };

    function WOW(options) {
      if (options == null) {
        options = {};
      }
      this.scrollCallback = bind(this.scrollCallback, this);
      this.scrollHandler = bind(this.scrollHandler, this);
      this.resetAnimation = bind(this.resetAnimation, this);
      this.start = bind(this.start, this);
      this.scrolled = true;
      this.config = this.util().extend(options, this.defaults);
      this.animationNameCache = new WeakMap();
      this.wowEvent = this.util().createEvent(this.config.boxClass);
    }

    WOW.prototype.init = function() {
      var ref;
      this.element = window.document.documentElement;
      if ((ref = document.readyState) === "interactive" || ref === "complete") {
        this.start();
      } else {
        this.util().addEvent(document, 'DOMContentLoaded', this.start);
      }
      return this.finished = [];
    };

    WOW.prototype.start = function() {
      var box, j, len, ref;
      this.stopped = false;
      this.boxes = (function() {
        var j, len, ref, results;
        ref = this.element.querySelectorAll("." + this.config.boxClass);
        results = [];
        for (j = 0, len = ref.length; j < len; j++) {
          box = ref[j];
          results.push(box);
        }
        return results;
      }).call(this);
      this.all = (function() {
        var j, len, ref, results;
        ref = this.boxes;
        results = [];
        for (j = 0, len = ref.length; j < len; j++) {
          box = ref[j];
          results.push(box);
        }
        return results;
      }).call(this);
      if (this.boxes.length) {
        if (this.disabled()) {
          this.resetStyle();
        } else {
          ref = this.boxes;
          for (j = 0, len = ref.length; j < len; j++) {
            box = ref[j];
            this.applyStyle(box, true);
          }
        }
      }
      if (!this.disabled()) {
        this.util().addEvent(window, 'scroll', this.scrollHandler);
        this.util().addEvent(window, 'resize', this.scrollHandler);
        this.interval = setInterval(this.scrollCallback, 50);
      }
      if (this.config.live) {
        return new MutationObserver((function(_this) {
          return function(records) {
            var k, len1, node, record, results;
            results = [];
            for (k = 0, len1 = records.length; k < len1; k++) {
              record = records[k];
              results.push((function() {
                var l, len2, ref1, results1;
                ref1 = record.addedNodes || [];
                results1 = [];
                for (l = 0, len2 = ref1.length; l < len2; l++) {
                  node = ref1[l];
                  results1.push(this.doSync(node));
                }
                return results1;
              }).call(_this));
            }
            return results;
          };
        })(this)).observe(document.body, {
          childList: true,
          subtree: true
        });
      }
    };

    WOW.prototype.stop = function() {
      this.stopped = true;
      this.util().removeEvent(window, 'scroll', this.scrollHandler);
      this.util().removeEvent(window, 'resize', this.scrollHandler);
      if (this.interval != null) {
        return clearInterval(this.interval);
      }
    };

    WOW.prototype.sync = function(element) {
      if (MutationObserver.notSupported) {
        return this.doSync(this.element);
      }
    };

    WOW.prototype.doSync = function(element) {
      var box, j, len, ref, results;
      if (element == null) {
        element = this.element;
      }
      if (element.nodeType !== 1) {
        return;
      }
      element = element.parentNode || element;
      ref = element.querySelectorAll("." + this.config.boxClass);
      results = [];
      for (j = 0, len = ref.length; j < len; j++) {
        box = ref[j];
        if (indexOf.call(this.all, box) < 0) {
          this.boxes.push(box);
          this.all.push(box);
          if (this.stopped || this.disabled()) {
            this.resetStyle();
          } else {
            this.applyStyle(box, true);
          }
          results.push(this.scrolled = true);
        } else {
          results.push(void 0);
        }
      }
      return results;
    };

    WOW.prototype.show = function(box) {
      this.applyStyle(box);
      box.className = box.className + " " + this.config.animateClass;
      if (this.config.callback != null) {
        this.config.callback(box);
      }
      this.util().emitEvent(box, this.wowEvent);
      this.util().addEvent(box, 'animationend', this.resetAnimation);
      this.util().addEvent(box, 'oanimationend', this.resetAnimation);
      this.util().addEvent(box, 'webkitAnimationEnd', this.resetAnimation);
      this.util().addEvent(box, 'MSAnimationEnd', this.resetAnimation);
      return box;
    };

    WOW.prototype.applyStyle = function(box, hidden) {
      var delay, duration, iteration;
      duration = box.getAttribute('data-wow-duration');
      delay = box.getAttribute('data-wow-delay');
      iteration = box.getAttribute('data-wow-iteration');
      return this.animate((function(_this) {
        return function() {
          return _this.customStyle(box, hidden, duration, delay, iteration);
        };
      })(this));
    };

    WOW.prototype.animate = (function() {
      if ('requestAnimationFrame' in window) {
        return function(callback) {
          return window.requestAnimationFrame(callback);
        };
      } else {
        return function(callback) {
          return callback();
        };
      }
    })();

    WOW.prototype.resetStyle = function() {
      var box, j, len, ref, results;
      ref = this.boxes;
      results = [];
      for (j = 0, len = ref.length; j < len; j++) {
        box = ref[j];
        results.push(box.style.visibility = 'visible');
      }
      return results;
    };

    WOW.prototype.resetAnimation = function(event) {
      var target;
      if (event.type.toLowerCase().indexOf('animationend') >= 0) {
        target = event.target || event.srcElement;
        return target.className = target.className.replace(this.config.animateClass, '').trim();
      }
    };

    WOW.prototype.customStyle = function(box, hidden, duration, delay, iteration) {
      if (hidden) {
        this.cacheAnimationName(box);
      }
      box.style.visibility = hidden ? 'hidden' : 'visible';
      if (duration) {
        this.vendorSet(box.style, {
          animationDuration: duration
        });
      }
      if (delay) {
        this.vendorSet(box.style, {
          animationDelay: delay
        });
      }
      if (iteration) {
        this.vendorSet(box.style, {
          animationIterationCount: iteration
        });
      }
      this.vendorSet(box.style, {
        animationName: hidden ? 'none' : this.cachedAnimationName(box)
      });
      return box;
    };

    WOW.prototype.vendors = ["moz", "webkit"];

    WOW.prototype.vendorSet = function(elem, properties) {
      var name, results, value, vendor;
      results = [];
      for (name in properties) {
        value = properties[name];
        elem["" + name] = value;
        results.push((function() {
          var j, len, ref, results1;
          ref = this.vendors;
          results1 = [];
          for (j = 0, len = ref.length; j < len; j++) {
            vendor = ref[j];
            results1.push(elem["" + vendor + (name.charAt(0).toUpperCase()) + (name.substr(1))] = value);
          }
          return results1;
        }).call(this));
      }
      return results;
    };

    WOW.prototype.vendorCSS = function(elem, property) {
      var j, len, ref, result, style, vendor;
      style = getComputedStyle(elem);
      result = style.getPropertyCSSValue(property);
      ref = this.vendors;
      for (j = 0, len = ref.length; j < len; j++) {
        vendor = ref[j];
        result = result || style.getPropertyCSSValue("-" + vendor + "-" + property);
      }
      return result;
    };

    WOW.prototype.animationName = function(box) {
      var animationName;
      try {
        animationName = this.vendorCSS(box, 'animation-name').cssText;
      } catch (_error) {
        animationName = getComputedStyle(box).getPropertyValue('animation-name');
      }
      if (animationName === 'none') {
        return '';
      } else {
        return animationName;
      }
    };

    WOW.prototype.cacheAnimationName = function(box) {
      return this.animationNameCache.set(box, this.animationName(box));
    };

    WOW.prototype.cachedAnimationName = function(box) {
      return this.animationNameCache.get(box);
    };

    WOW.prototype.scrollHandler = function() {
      return this.scrolled = true;
    };

    WOW.prototype.scrollCallback = function() {
      var box;
      if (this.scrolled) {
        this.scrolled = false;
        this.boxes = (function() {
          var j, len, ref, results;
          ref = this.boxes;
          results = [];
          for (j = 0, len = ref.length; j < len; j++) {
            box = ref[j];
            if (!(box)) {
              continue;
            }
            if (this.isVisible(box)) {
              this.show(box);
              continue;
            }
            results.push(box);
          }
          return results;
        }).call(this);
        if (!(this.boxes.length || this.config.live)) {
          return this.stop();
        }
      }
    };

    WOW.prototype.offsetTop = function(element) {
      var top;
      while (element.offsetTop === void 0) {
        element = element.parentNode;
      }
      top = element.offsetTop;
      while (element = element.offsetParent) {
        top += element.offsetTop;
      }
      return top;
    };

    WOW.prototype.isVisible = function(box) {
      var bottom, offset, top, viewBottom, viewTop;
      offset = box.getAttribute('data-wow-offset') || this.config.offset;
      viewTop = window.pageYOffset;
      viewBottom = viewTop + Math.min(this.element.clientHeight, this.util().innerHeight()) - offset;
      top = this.offsetTop(box);
      bottom = top + box.clientHeight;
      return top <= viewBottom && bottom >= viewTop;
    };

    WOW.prototype.util = function() {
      return this._util != null ? this._util : this._util = new Util();
    };

    WOW.prototype.disabled = function() {
      return !this.config.mobile && this.util().isMobile(navigator.userAgent);
    };

    return WOW;

  })();

}).call(this);










/*! ET et_shortcodes_frontend.js */ ! function($) {
    $.fn.et_shortcodes_switcher = function(options) {
        options = $.extend({
            slides: ">div",
            activeClass: "active",
            linksNav: "",
            findParent: !0,
            lengthElement: "li",
            useArrows: !1,
            arrowLeft: "a#prev-arrow",
            arrowRight: "a#next-arrow",
            auto: !1,
            autoSpeed: 5e3,
            slidePadding: "",
            pauseOnHover: !0,
            fx: "fade",
            sliderType: ""
        }, options);
        return this.each(function() {
            var $activeSlide, $nextSlide, $et_shortcodes_mobile_controls, slidesContainer = jQuery(this).parent().css("position", "relative"),
                $slides = jQuery(this).css({
                    overflow: "hidden",
                    position: "relative"
                }),
                $slides_wrapper_box = slidesContainer.find(".et-tabs-content-wrapper"),
                $slides_wrapper = $slides_wrapper_box.parent(),
                $slide = $slides.find(".et-tabs-content-wrapper" + options.slides),
                slidesNum = $slide.length,
                currentPosition = 1,
                slides_wrapper_width = $slides_wrapper.width();
            if ("slide" === options.fx && ($slides_wrapper_box.width(200 * (slidesNum + 2) + "%"), $slide.css({
                    width: slides_wrapper_width,
                    visibility: "visible"
                }), $slides_wrapper_box.append($slide.filter(":first").clone().removeClass().addClass("et_slidecontent_cloned")), $slides_wrapper_box.prepend($slide.filter(":last").clone().removeClass().addClass("et_slidecontent_cloned")), $slides_wrapper_box.css("left", -slides_wrapper_width)), $slide.filter(":first").css({
                    display: "block"
                }).addClass("et_shortcode_slide_active"), "" != options.slidePadding && $slide.css("padding", options.slidePadding), "" != options.linksNav) {
                var linkSwitcher = jQuery(options.linksNav),
                    linkSwitcherTab = "";
                (linkSwitcherTab = options.findParent ? linkSwitcher.parent() : linkSwitcher).filter(".active").length || linkSwitcherTab.filter(":first").addClass("active"), linkSwitcher.click(function() {
                    var orderNum;
                    return gotoSlide(orderNum = (options.findParent ? jQuery(this).parent() : jQuery(this)).prevAll(options.lengthElement).length + 1, currentPosition < orderNum ? 1 : -1), !1
                })
            }
            if (options.useArrows) {
                var $right_arrow = jQuery(options.arrowRight),
                    $left_arrow = jQuery(options.arrowLeft);
                $right_arrow.click(function() {
                    return et_shortcodes_go_to_next_slide(), !1
                }), $left_arrow.click(function() {
                    return et_shortcodes_go_to_previous_slide(), !1
                })
            }

            function changeTab() {
                "" != linkSwitcherTab && (linkSwitcherTab.siblings().removeClass("active"), linkSwitcherTab.filter(":eq(" + (currentPosition - 1) + ")").addClass("active"))
            }

            function gotoSlide(slideNumber, dir) {
                if (!$slide.filter(":animated").length && ($activeSlide = $slide.parent().find(".et_slidecontent").filter(":eq(" + (currentPosition - 1) + ")"), currentPosition !== slideNumber)) return $activeSlide.removeClass("et_shortcode_slide_active"), $nextSlide = $slide.parent().find(".et_slidecontent").filter(":eq(" + (slideNumber - 1) + ")").addClass("et_shortcode_slide_active"), (slideNumber < currentPosition || 1 === currentPosition) && -1 === dir ? "slide" === options.fx && function(speed) {
                    var next_slide_order = $nextSlide.prevAll(".et_slidecontent").length + 1,
                        go_to_last_slide = !1;
                    $activeSlide.prev(".et_slidecontent_cloned").length && (go_to_last_slide = !(next_slide_order = 0));
                    $slides_wrapper_box.animate({
                        left: -$slides_wrapper.width() * next_slide_order
                    }, 500, function() {
                        go_to_last_slide && $slides_wrapper_box.css("left", -$slides_wrapper.width() * slidesNum)
                    })
                }() : "slide" === options.fx && function(speed) {
                    var next_slide_order = $nextSlide.prevAll(".et_slidecontent").length + 1,
                        go_to_first_slide = !1;
                    $activeSlide.next(".et_slidecontent_cloned").length && (next_slide_order = $activeSlide.prevAll().length + 1, go_to_first_slide = !0);
                    $slides_wrapper_box.animate({
                        left: -$slides_wrapper.width() * next_slide_order
                    }, 500, function() {
                        go_to_first_slide && $slides_wrapper_box.css("left", -$slides_wrapper.width())
                    })
                }(), "fade" === options.fx && slideFade(500), currentPosition = $nextSlide.prevAll(".et_slidecontent").length + 1, "" != options.linksNav && changeTab(), "images" !== options.sliderType && "simple" !== options.sliderType || ($et_shortcodes_mobile_controls.find("li").removeClass("et_shortcodes_active_control"), $et_shortcodes_mobile_controls.find("li").eq(currentPosition - 1).addClass("et_shortcodes_active_control")), !1
            }
            if (options.auto) {
                interval_shortcodes = setInterval(function() {
                    pauseSlider || (gotoSlide(currentPosition === slidesNum ? 1 : currentPosition + 1, 1), "" != options.linksNav && changeTab())
                }, options.autoSpeed);
                var pauseSlider = !1
            }

            function slideFade(speed) {
                $activeSlide.css({
                    display: "none",
                    opacity: "0"
                }), $nextSlide.css({
                    opacity: "0",
                    display: "block"
                }).animate({
                    opacity: 1
                }, 700)
            }

            function et_shortcodes_go_to_next_slide() {
                currentPosition === slidesNum ? gotoSlide(1, 1) : gotoSlide(currentPosition + 1), "" != options.linksNav && changeTab()
            }

            function et_shortcodes_go_to_previous_slide() {
                gotoSlide(1 === currentPosition ? slidesNum : currentPosition - 1, -1), "" != options.linksNav && changeTab()
            }
            options.pauseOnHover && slidesContainer.hover(function() {
                    pauseSlider = !0
                }, function() {
                    pauseSlider = !1
                }), "slide" === options.fx && $(window).resize(function() {
                    $slides_wrapper_box.find(">div").css({
                        width: $slides_wrapper.width()
                    }), $slides_wrapper_box.css("left", -$slides_wrapper.width() * currentPosition)
                }),
                function() {
                    var et_shortcodes_slides_num = slidesContainer.find(".et_slidecontent").length,
                        et_shortcodes_controllers_html = "";
                    if (1 < et_shortcodes_slides_num && ("images" === options.sliderType || "simple" === options.sliderType)) {
                        slidesContainer.append('<div class="et_shortcodes_controller_nav"><ul class="et_shortcodes_controls"></ul><ul class="et_shortcodes_controls_arrows"><li><a href="#" class="et_sc_nav_next">' + et_shortcodes_strings.next + '<span></span></a></li><li><a href="#" class="et_sc_nav_prev">' + et_shortcodes_strings.previous + "<span></span></a></li></ul></div>"), $et_shortcodes_mobile_controls = slidesContainer.find(".et_shortcodes_controls");
                        for (var i = 0; i < et_shortcodes_slides_num; i++) et_shortcodes_controllers_html += '<li><a href="#"></a></li>';
                        $et_shortcodes_mobile_controls.prepend(et_shortcodes_controllers_html), $et_shortcodes_mobile_controls.find("li:first").addClass("et_shortcodes_active_control"), $et_shortcodes_mobile_controls.find("a").click(function() {
                            var $this_control = $(this),
                                $this_control_li = $this_control.parent("li"),
                                this_order = $this_control_li.prevAll().length + 1;
                            return this_order == currentPosition || gotoSlide(this_order, currentPosition < this_order ? 1 : -1), !1
                        }), slidesContainer.find(".et_shortcodes_controls_arrows").find("a").click(function() {
                            var et_active_slide_order, $this_link = jQuery(this);
                            return $this_link.hasClass("et_sc_nav_next") && et_shortcodes_go_to_next_slide(), $this_link.hasClass("et_sc_nav_prev") && et_shortcodes_go_to_previous_slide(), $et_shortcodes_mobile_controls.find("li").removeClass("et_shortcodes_active_control"), et_active_slide_order = currentPosition - 1, $et_shortcodes_mobile_controls.find("li").eq(et_active_slide_order).addClass("et_shortcodes_active_control"), !1
                        })
                    } else "images" !== options.sliderType && "simple" !== options.sliderType && (slidesContainer.prepend('<ul class="et_shortcodes_mobile_nav"><li><a href="#" class="et_sc_nav_next">' + et_shortcodes_strings.next + '<span></span></a></li><li><a href="#" class="et_sc_nav_prev">' + et_shortcodes_strings.previous + "<span></span></a></li></ul>"), slidesContainer.find(".et_shortcodes_mobile_nav").find("a").click(function() {
                        var $this_link = jQuery(this);
                        return $this_link.hasClass("et_sc_nav_next") && et_shortcodes_go_to_next_slide(), $this_link.hasClass("et_sc_nav_prev") && et_shortcodes_go_to_previous_slide(), !1
                    }))
                }()
        })
    }, window.et_shortcodes_init = function($container) {
        var $processed_container = void 0 !== $container ? $container : $("body"),
            $et_pricing_table_button = $processed_container.find(".pricing-table a.icon-button");
        $et_tooltip = $processed_container.find(".et-tooltip"), $et_tooltip.on("mouseover mouseout", function(event) {
            "mouseover" == event.type ? $(this).find(".et-tooltip-box").stop(!0, !0).animate({
                opacity: "show",
                bottom: "25px"
            }, 300) : $(this).find(".et-tooltip-box").delay(200).animate({
                opacity: "hide",
                bottom: "35px"
            }, 300)
        }), $et_learn_more = $processed_container.find(".et-learn-more .heading-more"), $et_learn_more.on("click", function() {
            $(this).hasClass("open") ? $(this).removeClass("open") : $(this).addClass("open"), $(this).parent(".et-learn-more").find(".learn-more-content").animate({
                opacity: "toggle",
                height: "toggle"
            }, 300)
        }), $processed_container.find(".et-learn-more").not(".et-open").find(".learn-more-content").css({
            visibility: "visible",
            display: "none"
        }), $et_pricing_table_button.each(function() {
            var $this_button = $(this),
                this_button_width = $this_button.width(),
                this_button_innerwidth = $this_button.innerWidth();
            $this_button.css({
                width: this_button_width,
                marginLeft: "-" + this_button_innerwidth / 2 + "px",
                visibility: "visible"
            })
        }), $processed_container.find(".et-tabs-container, .tabs-left, .et-simple-slider, .et-image-slider").each(function(i) {
            var et_shortcodes_tab_class = $(this).attr("class"),
                et_shortcodes_tab_autospeed = /et_sliderauto_speed_(\d+)/g.exec(et_shortcodes_tab_class),
                et_shortcodes_tab_auto = /et_sliderauto_(\w+)/g.exec(et_shortcodes_tab_class),
                et_shortcodes_tab_type = /et_slidertype_(\w+)/g.exec(et_shortcodes_tab_class),
                et_shortcodes_tab_fx = /et_sliderfx_(\w+)/g.exec(et_shortcodes_tab_class),
                et_shortcodes_tab_apply_to_element = ".et-tabs-content",
                et_shortcodes_tab_settings = {};
            et_shortcodes_tab_settings.linksNav = $(this).find(".et-tabs-control li a"), et_shortcodes_tab_settings.findParent = !0, et_shortcodes_tab_settings.fx = et_shortcodes_tab_fx[1], et_shortcodes_tab_settings.auto = "false" !== et_shortcodes_tab_auto[1], et_shortcodes_tab_settings.autoSpeed = et_shortcodes_tab_autospeed[1], "simple" === et_shortcodes_tab_type[1] ? ((et_shortcodes_tab_settings = {}).fx = et_shortcodes_tab_fx[1], et_shortcodes_tab_settings.auto = "false" !== et_shortcodes_tab_auto[1], et_shortcodes_tab_settings.autoSpeed = et_shortcodes_tab_autospeed[1], et_shortcodes_tab_settings.sliderType = "simple", et_shortcodes_tab_apply_to_element = ".et-simple-slides") : "images" === et_shortcodes_tab_type[1] && (et_shortcodes_tab_settings.sliderType = "images", et_shortcodes_tab_settings.linksNav = "#" + $(this).attr("id") + " .controllers a.switch", et_shortcodes_tab_settings.findParent = !1, et_shortcodes_tab_settings.lengthElement = "#" + $(this).attr("id") + " a.switch", et_shortcodes_tab_apply_to_element = ".et-image-slides"), $(this).find(et_shortcodes_tab_apply_to_element).et_shortcodes_switcher(et_shortcodes_tab_settings)
        })
    }
}(jQuery), jQuery(document).ready(function($) {
    window.et_shortcodes_init()
});
/*!
 * FitVids 1.1
 *
 * Copyright 2013, Chris Coyier - http://css-tricks.com + Dave Rupert - http://daverupert.com
 * Credit to Thierry Koblentz - http://www.alistapart.com/articles/creating-intrinsic-ratios-for-video/
 * Released under the WTFPL license - http://sam.zoy.org/wtfpl/
 *
 */
! function($) {
    "use strict";
    $.fn.fitVids = function(options) {
        var settings = {
            customSelector: null,
            ignore: null
        };
        if (!document.getElementById("fit-vids-style")) {
            var head = document.head || document.getElementsByTagName("head")[0],
                div = document.createElement("div");
            div.innerHTML = '<p>x</p><style id="fit-vids-style">.fluid-width-video-wrapper{width:100%;position:relative;padding:0;}.fluid-width-video-wrapper iframe,.fluid-width-video-wrapper object,.fluid-width-video-wrapper embed {position:absolute;top:0;left:0;width:100%;height:100%;}</style>', head.appendChild(div.childNodes[1])
        }
        return options && $.extend(settings, options), this.each(function() {
            var selectors = ['iframe[src*="player.vimeo.com"]', 'iframe[src*="youtube.com"]', 'iframe[src*="youtube-nocookie.com"]', 'iframe[src*="kickstarter.com"][src*="video.html"]', "object", "embed"];
            settings.customSelector && selectors.push(settings.customSelector);
            var ignoreList = ".fitvidsignore";
            settings.ignore && (ignoreList = ignoreList + ", " + settings.ignore);
            var $allVideos = $(this).find(selectors.join(","));
            ($allVideos = ($allVideos = $allVideos.not("object object")).not(ignoreList)).each(function() {
                var $this = $(this);
                if (!(0 < $this.parents(ignoreList).length || "embed" === this.tagName.toLowerCase() && $this.parent("object").length || $this.parent(".fluid-width-video-wrapper").length)) {
                    $this.css("height") || $this.css("width") || !isNaN($this.attr("height")) && !isNaN($this.attr("width")) || ($this.attr("height", 9), $this.attr("width", 16));
                    var aspectRatio = ("object" === this.tagName.toLowerCase() || $this.attr("height") && !isNaN(parseInt($this.attr("height"), 10)) ? parseInt($this.attr("height"), 10) : $this.height()) / (isNaN(parseInt($this.attr("width"), 10)) ? $this.width() : parseInt($this.attr("width"), 10));
                    if (!$this.attr("name")) {
                        var videoName = "fitvid" + $.fn.fitVids._count;
                        $this.attr("name", videoName), $.fn.fitVids._count++
                    }
                    $this.wrap('<div class="fluid-width-video-wrapper"></div>').parent(".fluid-width-video-wrapper").css("padding-top", 100 * aspectRatio + "%"), $this.removeAttr("height").removeAttr("width")
                }
            })
        })
    }, $.fn.fitVids._count = 0
}(window.jQuery || window.Zepto);
/*!
 * Waypoints - 4.0.0
 * Copyright Â© 2011-2015 Caleb Troughton
 * Licensed under the MIT license.
 * https://github.com/imakewebthings/waypoints/blog/master/licenses.txt
 */
! function() {
    "use strict";

    function t(o) {
        if (!o) throw new Error("No options passed to Waypoint constructor");
        if (!o.element) throw new Error("No element option passed to Waypoint constructor");
        if (!o.handler) throw new Error("No handler option passed to Waypoint constructor");
        this.key = "waypoint-" + e, this.options = t.Adapter.extend({}, t.defaults, o), this.element = this.options.element, this.adapter = new t.Adapter(this.element), this.callback = o.handler, this.axis = this.options.horizontal ? "horizontal" : "vertical", this.enabled = this.options.enabled, this.triggerPoint = null, this.group = t.Group.findOrCreate({
            name: this.options.group,
            axis: this.axis
        }), this.context = t.Context.findOrCreateByElement(this.options.context), t.offsetAliases[this.options.offset] && (this.options.offset = t.offsetAliases[this.options.offset]), this.group.add(this), this.context.add(this), i[this.key] = this, e += 1
    }
    var e = 0,
        i = {};
    t.prototype.queueTrigger = function(t) {
        this.group.queueTrigger(this, t)
    }, t.prototype.trigger = function(t) {
        this.enabled && this.callback && this.callback.apply(this, t)
    }, t.prototype.destroy = function() {
        this.context.remove(this), this.group.remove(this), delete i[this.key]
    }, t.prototype.disable = function() {
        return this.enabled = !1, this
    }, t.prototype.enable = function() {
        return this.context.refresh(), this.enabled = !0, this
    }, t.prototype.next = function() {
        return this.group.next(this)
    }, t.prototype.previous = function() {
        return this.group.previous(this)
    }, t.invokeAll = function(t) {
        var e = [];
        for (var o in i) e.push(i[o]);
        for (var n = 0, r = e.length; n < r; n++) e[n][t]()
    }, t.destroyAll = function() {
        t.invokeAll("destroy")
    }, t.disableAll = function() {
        t.invokeAll("disable")
    }, t.enableAll = function() {
        t.invokeAll("enable")
    }, t.refreshAll = function() {
        t.Context.refreshAll()
    }, t.viewportHeight = function() {
        return window.innerHeight || document.documentElement.clientHeight
    }, t.viewportWidth = function() {
        return document.documentElement.clientWidth
    }, t.adapters = [], t.defaults = {
        context: window,
        continuous: !0,
        enabled: !0,
        group: "default",
        horizontal: !1,
        offset: 0
    }, t.offsetAliases = {
        "bottom-in-view": function() {
            return this.context.innerHeight() - this.adapter.outerHeight()
        },
        "right-in-view": function() {
            return this.context.innerWidth() - this.adapter.outerWidth()
        }
    }, window.Waypoint = t
}(),
function() {
    "use strict";

    function t(t) {
        window.setTimeout(t, 1e3 / 60)
    }

    function e(t) {
        this.element = t, this.Adapter = n.Adapter, this.adapter = new this.Adapter(t), this.key = "waypoint-context-" + i, this.didScroll = !1, this.didResize = !1, this.oldScroll = {
            x: this.adapter.scrollLeft(),
            y: this.adapter.scrollTop()
        }, this.waypoints = {
            vertical: {},
            horizontal: {}
        }, t.waypointContextKey = this.key, o[t.waypointContextKey] = this, i += 1, this.createThrottledScrollHandler(), this.createThrottledResizeHandler()
    }
    var i = 0,
        o = {},
        n = window.Waypoint,
        r = window.onload;
    e.prototype.add = function(t) {
        var e = t.options.horizontal ? "horizontal" : "vertical";
        this.waypoints[e][t.key] = t, this.refresh()
    }, e.prototype.checkEmpty = function() {
        var t = this.Adapter.isEmptyObject(this.waypoints.horizontal),
            e = this.Adapter.isEmptyObject(this.waypoints.vertical);
        t && e && (this.adapter.off(".waypoints"), delete o[this.key])
    }, e.prototype.createThrottledResizeHandler = function() {
        function t() {
            e.handleResize(), e.didResize = !1
        }
        var e = this;
        this.adapter.on("resize.waypoints", function() {
            e.didResize || (e.didResize = !0, n.requestAnimationFrame(t))
        })
    }, e.prototype.createThrottledScrollHandler = function() {
        function t() {
            e.handleScroll(), e.didScroll = !1
        }
        var e = this;
        this.adapter.on("scroll.waypoints", function() {
            (!e.didScroll || n.isTouch) && (e.didScroll = !0, n.requestAnimationFrame(t))
        })
    }, e.prototype.handleResize = function() {
        n.Context.refreshAll()
    }, e.prototype.handleScroll = function() {
        var t = {},
            e = {
                horizontal: {
                    newScroll: this.adapter.scrollLeft(),
                    oldScroll: this.oldScroll.x,
                    forward: "right",
                    backward: "left"
                },
                vertical: {
                    newScroll: this.adapter.scrollTop(),
                    oldScroll: this.oldScroll.y,
                    forward: "down",
                    backward: "up"
                }
            };
        for (var i in e) {
            var o = e[i],
                r = o.newScroll > o.oldScroll ? o.forward : o.backward;
            for (var s in this.waypoints[i]) {
                var a = this.waypoints[i][s],
                    l = o.oldScroll < a.triggerPoint,
                    h = o.newScroll >= a.triggerPoint;
                (l && h || !l && !h) && (a.queueTrigger(r), t[a.group.id] = a.group)
            }
        }
        for (var c in t) t[c].flushTriggers();
        this.oldScroll = {
            x: e.horizontal.newScroll,
            y: e.vertical.newScroll
        }
    }, e.prototype.innerHeight = function() {
        return this.element == this.element.window ? n.viewportHeight() : this.adapter.innerHeight()
    }, e.prototype.remove = function(t) {
        delete this.waypoints[t.axis][t.key], this.checkEmpty()
    }, e.prototype.innerWidth = function() {
        return this.element == this.element.window ? n.viewportWidth() : this.adapter.innerWidth()
    }, e.prototype.destroy = function() {
        var t = [];
        for (var e in this.waypoints)
            for (var i in this.waypoints[e]) t.push(this.waypoints[e][i]);
        for (var o = 0, n = t.length; o < n; o++) t[o].destroy()
    }, e.prototype.refresh = function() {
        var t, e = this.element == this.element.window,
            i = e ? void 0 : this.adapter.offset(),
            o = {};
        for (var r in this.handleScroll(), t = {
                horizontal: {
                    contextOffset: e ? 0 : i.left,
                    contextScroll: e ? 0 : this.oldScroll.x,
                    contextDimension: this.innerWidth(),
                    oldScroll: this.oldScroll.x,
                    forward: "right",
                    backward: "left",
                    offsetProp: "left"
                },
                vertical: {
                    contextOffset: e ? 0 : i.top,
                    contextScroll: e ? 0 : this.oldScroll.y,
                    contextDimension: this.innerHeight(),
                    oldScroll: this.oldScroll.y,
                    forward: "down",
                    backward: "up",
                    offsetProp: "top"
                }
            }) {
            var s = t[r];
            for (var a in this.waypoints[r]) {
                var l, h, p, c, d = this.waypoints[r][a],
                    f = d.options.offset,
                    w = d.triggerPoint,
                    y = 0,
                    g = null == w;
                d.element !== d.element.window && (y = d.adapter.offset()[s.offsetProp]), "function" == typeof f ? f = f.apply(d) : "string" == typeof f && (f = parseFloat(f), -1 < d.options.offset.indexOf("%") && (f = Math.ceil(s.contextDimension * f / 100))), l = s.contextScroll - s.contextOffset, d.triggerPoint = y + l - f, h = w < s.oldScroll, p = d.triggerPoint >= s.oldScroll, c = !h && !p, !g && (h && p) ? (d.queueTrigger(s.backward), o[d.group.id] = d.group) : !g && c ? (d.queueTrigger(s.forward), o[d.group.id] = d.group) : g && s.oldScroll >= d.triggerPoint && (d.queueTrigger(s.forward), o[d.group.id] = d.group)
            }
        }
        return n.requestAnimationFrame(function() {
            for (var t in o) o[t].flushTriggers()
        }), this
    }, e.findOrCreateByElement = function(t) {
        return e.findByElement(t) || new e(t)
    }, e.refreshAll = function() {
        for (var t in o) o[t].refresh()
    }, e.findByElement = function(t) {
        return o[t.waypointContextKey]
    }, window.onload = function() {
        r && r(), e.refreshAll()
    }, n.requestAnimationFrame = function(e) {
        (window.requestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame || t).call(window, e)
    }, n.Context = e
}(),
function() {
    "use strict";

    function t(t, e) {
        return t.triggerPoint - e.triggerPoint
    }

    function e(t, e) {
        return e.triggerPoint - t.triggerPoint
    }

    function i(t) {
        this.name = t.name, this.axis = t.axis, this.id = this.name + "-" + this.axis, this.waypoints = [], this.clearTriggerQueues(), o[this.axis][this.name] = this
    }
    var o = {
            vertical: {},
            horizontal: {}
        },
        n = window.Waypoint;
    i.prototype.add = function(t) {
        this.waypoints.push(t)
    }, i.prototype.clearTriggerQueues = function() {
        this.triggerQueues = {
            up: [],
            down: [],
            left: [],
            right: []
        }
    }, i.prototype.flushTriggers = function() {
        for (var i in this.triggerQueues) {
            var o = this.triggerQueues[i],
                n = "up" === i || "left" === i;
            o.sort(n ? e : t);
            for (var r = 0, s = o.length; r < s; r += 1) {
                var a = o[r];
                (a.options.continuous || r === o.length - 1) && a.trigger([i])
            }
        }
        this.clearTriggerQueues()
    }, i.prototype.next = function(e) {
        this.waypoints.sort(t);
        var i = n.Adapter.inArray(e, this.waypoints);
        return i === this.waypoints.length - 1 ? null : this.waypoints[i + 1]
    }, i.prototype.previous = function(e) {
        this.waypoints.sort(t);
        var i = n.Adapter.inArray(e, this.waypoints);
        return i ? this.waypoints[i - 1] : null
    }, i.prototype.queueTrigger = function(t, e) {
        this.triggerQueues[e].push(t)
    }, i.prototype.remove = function(t) {
        var e = n.Adapter.inArray(t, this.waypoints); - 1 < e && this.waypoints.splice(e, 1)
    }, i.prototype.first = function() {
        return this.waypoints[0]
    }, i.prototype.last = function() {
        return this.waypoints[this.waypoints.length - 1]
    }, i.findOrCreate = function(t) {
        return o[t.axis][t.name] || new i(t)
    }, n.Group = i
}(),
function() {
    "use strict";

    function t(t) {
        this.$element = e(t)
    }
    var e = window.jQuery,
        i = window.Waypoint;
    e.each(["innerHeight", "innerWidth", "off", "offset", "on", "outerHeight", "outerWidth", "scrollLeft", "scrollTop"], function(e, i) {
        t.prototype[i] = function() {
            var t = Array.prototype.slice.call(arguments);
            return this.$element[i].apply(this.$element, t)
        }
    }), e.each(["extend", "inArray", "isEmptyObject"], function(i, o) {
        t[o] = e[o]
    }), i.adapters.push({
        name: "jquery",
        Adapter: t
    }), i.Adapter = t
}(),
function() {
    "use strict";

    function t(t) {
        return function() {
            var i = [],
                o = arguments[0];
            return t.isFunction(arguments[0]) && ((o = t.extend({}, arguments[1])).handler = arguments[0]), this.each(function() {
                var n = t.extend({}, o, {
                    element: this
                });
                "string" == typeof n.context && (n.context = t(this).closest(n.context)[0]), i.push(new e(n))
            }), i
        }
    }
    var e = window.Waypoint;
    window.jQuery && (window.jQuery.fn.waypoint = t(window.jQuery)), window.Zepto && (window.Zepto.fn.waypoint = t(window.Zepto))
}();
/*!
 * Magnific Popup v1.0.1 by Dmitry Semenov
 * The MIT License (MIT)
 * Copyright (c) 2014-2015 Dmitry Semenov, http://dimsemenov.com
 * http://bit.ly/magnific-popup#build=inline+image+ajax+iframe+gallery+retina+imagezoom+fastclick
 */
/*
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
! function(a) {
    "function" == typeof define && define.amd ? define(["jquery"], a) : a("object" == typeof exports ? require("jquery") : window.jQuery || window.Zepto)
}(function(a) {
    var b, c, d, e, f, g, h = "Close",
        i = "BeforeClose",
        l = "MarkupParse",
        m = "Open",
        n = "Change",
        o = "mfp",
        p = "." + o,
        q = "mfp-ready",
        r = "mfp-removing",
        s = "mfp-prevent-close",
        t = function() {},
        u = !!window.jQuery,
        v = a(window),
        w = function(a, c) {
            b.ev.on(o + a + p, c)
        },
        x = function(b, c, d, e) {
            var f = document.createElement("div");
            return f.className = "mfp-" + b, d && (f.innerHTML = d), e ? c && c.appendChild(f) : (f = a(f), c && f.appendTo(c)), f
        },
        y = function(c, d) {
            b.ev.triggerHandler(o + c, d), b.st.callbacks && (c = c.charAt(0).toLowerCase() + c.slice(1), b.st.callbacks[c] && b.st.callbacks[c].apply(b, a.isArray(d) ? d : [d]))
        },
        z = function(c) {
            return c === g && b.currTemplate.closeBtn || (b.currTemplate.closeBtn = a(b.st.closeMarkup.replace("%title%", b.st.tClose)), g = c), b.currTemplate.closeBtn
        },
        A = function() {
            a.magnificPopup.instance || ((b = new t).init(), a.magnificPopup.instance = b)
        };
    t.prototype = {
        constructor: t,
        init: function() {
            var c = navigator.appVersion;
            b.isIE7 = -1 !== c.indexOf("MSIE 7."), b.isIE8 = -1 !== c.indexOf("MSIE 8."), b.isLowIE = b.isIE7 || b.isIE8, b.isAndroid = /android/gi.test(c), b.isIOS = /iphone|ipad|ipod/gi.test(c), b.supportsTransition = function() {
                var a = document.createElement("p").style,
                    b = ["ms", "O", "Moz", "Webkit"];
                if (void 0 !== a.transition) return !0;
                for (; b.length;)
                    if (b.pop() + "Transition" in a) return !0;
                return !1
            }(), b.probablyMobile = b.isAndroid || b.isIOS || /(Opera Mini)|Kindle|webOS|BlackBerry|(Opera Mobi)|(Windows Phone)|IEMobile/i.test(navigator.userAgent), d = a(document), b.popupsCache = {}
        },
        open: function(c) {
            var e;
            if (!1 === c.isObj) {
                b.items = c.items.toArray(), b.index = 0;
                var g, h = c.items;
                for (e = 0; e < h.length; e++)
                    if ((g = h[e]).parsed && (g = g.el[0]), g === c.el[0]) {
                        b.index = e;
                        break
                    }
            } else b.items = a.isArray(c.items) ? c.items : [c.items], b.index = c.index || 0;
            if (!b.isOpen) {
                b.types = [], f = "", c.mainEl && c.mainEl.length ? b.ev = c.mainEl.eq(0) : b.ev = d, c.key ? (b.popupsCache[c.key] || (b.popupsCache[c.key] = {}), b.currTemplate = b.popupsCache[c.key]) : b.currTemplate = {}, b.st = a.extend(!0, {}, a.magnificPopup.defaults, c), b.fixedContentPos = "auto" === b.st.fixedContentPos ? !b.probablyMobile : b.st.fixedContentPos, b.st.modal && (b.st.closeOnContentClick = !1, b.st.closeOnBgClick = !1, b.st.showCloseBtn = !1, b.st.enableEscapeKey = !1), b.bgOverlay || (b.bgOverlay = x("bg").on("click" + p, function() {
                    b.close()
                }), b.wrap = x("wrap").attr("tabindex", -1).on("click" + p, function(a) {
                    b._checkIfClose(a.target) && b.close()
                }), b.container = x("container", b.wrap)), b.contentContainer = x("content"), b.st.preloader && (b.preloader = x("preloader", b.container, b.st.tLoading));
                var i = a.magnificPopup.modules;
                for (e = 0; e < i.length; e++) {
                    var j = i[e];
                    j = j.charAt(0).toUpperCase() + j.slice(1), b["init" + j].call(b)
                }
                y("BeforeOpen"), b.st.showCloseBtn && (b.st.closeBtnInside ? (w(l, function(a, b, c, d) {
                    c.close_replaceWith = z(d.type)
                }), f += " mfp-close-btn-in") : b.wrap.append(z())), b.st.alignTop && (f += " mfp-align-top"), b.fixedContentPos ? b.wrap.css({
                    overflow: b.st.overflowY,
                    overflowX: "hidden",
                    overflowY: b.st.overflowY
                }) : b.wrap.css({
                    top: v.scrollTop(),
                    position: "absolute"
                }), (!1 === b.st.fixedBgPos || "auto" === b.st.fixedBgPos && !b.fixedContentPos) && b.bgOverlay.css({
                    height: d.height(),
                    position: "absolute"
                }), b.st.enableEscapeKey && d.on("keyup" + p, function(a) {
                    27 === a.keyCode && b.close()
                }), v.on("resize" + p, function() {
                    b.updateSize()
                }), b.st.closeOnContentClick || (f += " mfp-auto-cursor"), f && b.wrap.addClass(f);
                var k = b.wH = v.height(),
                    n = {};
                if (b.fixedContentPos && b._hasScrollBar(k)) {
                    var o = b._getScrollbarSize();
                    o && (n.marginRight = o)
                }
                b.fixedContentPos && (b.isIE7 ? a("body, html").css("overflow", "hidden") : n.overflow = "hidden");
                var r = b.st.mainClass;
                return b.isIE7 && (r += " mfp-ie7"), r && b._addClassToMFP(r), b.updateItemHTML(), y("BuildControls"), a("html").css(n), b.bgOverlay.add(b.wrap).prependTo(b.st.prependTo || a(document.body)), b._lastFocusedEl = document.activeElement, setTimeout(function() {
                    b.content ? (b._addClassToMFP(q), b._setFocus()) : b.bgOverlay.addClass(q), d.on("focusin" + p, b._onFocusIn)
                }, 16), b.isOpen = !0, b.updateSize(k), y(m), c
            }
            b.updateItemHTML()
        },
        close: function() {
            b.isOpen && (y(i), b.isOpen = !1, b.st.removalDelay && !b.isLowIE && b.supportsTransition ? (b._addClassToMFP(r), setTimeout(function() {
                b._close()
            }, b.st.removalDelay)) : b._close())
        },
        _close: function() {
            y(h);
            var c = r + " " + q + " ";
            if (b.bgOverlay.detach(), b.wrap.detach(), b.container.empty(), b.st.mainClass && (c += b.st.mainClass + " "), b._removeClassFromMFP(c), b.fixedContentPos) {
                var e = {
                    marginRight: ""
                };
                b.isIE7 ? a("body, html").css("overflow", "") : e.overflow = "", a("html").css(e)
            }
            d.off("keyup.mfp focusin" + p), b.ev.off(p), b.wrap.attr("class", "mfp-wrap").removeAttr("style"), b.bgOverlay.attr("class", "mfp-bg"), b.container.attr("class", "mfp-container"), !b.st.showCloseBtn || b.st.closeBtnInside && !0 !== b.currTemplate[b.currItem.type] || b.currTemplate.closeBtn && b.currTemplate.closeBtn.detach(), b.st.autoFocusLast && b._lastFocusedEl && a(b._lastFocusedEl).focus(), b.currItem = null, b.content = null, b.currTemplate = null, b.prevHeight = 0, y("AfterClose")
        },
        updateSize: function(a) {
            if (b.isIOS) {
                var c = document.documentElement.clientWidth / window.innerWidth,
                    d = window.innerHeight * c;
                b.wrap.css("height", d), b.wH = d
            } else b.wH = a || v.height();
            b.fixedContentPos || b.wrap.css("height", b.wH), y("Resize")
        },
        updateItemHTML: function() {
            var c = b.items[b.index];
            b.contentContainer.detach(), b.content && b.content.detach(), c.parsed || (c = b.parseEl(b.index));
            var d = c.type;
            if (y("BeforeChange", [b.currItem ? b.currItem.type : "", d]), b.currItem = c, !b.currTemplate[d]) {
                var f = !!b.st[d] && b.st[d].markup;
                y("FirstMarkupParse", f), b.currTemplate[d] = !f || a(f)
            }
            e && e !== c.type && b.container.removeClass("mfp-" + e + "-holder");
            var g = b["get" + d.charAt(0).toUpperCase() + d.slice(1)](c, b.currTemplate[d]);
            b.appendContent(g, d), c.preloaded = !0, y(n, c), e = c.type, b.container.prepend(b.contentContainer), y("AfterChange")
        },
        appendContent: function(a, c) {
            (b.content = a) ? b.st.showCloseBtn && b.st.closeBtnInside && !0 === b.currTemplate[c] ? b.content.find(".mfp-close").length || b.content.append(z()) : b.content = a: b.content = "", y("BeforeAppend"), b.container.addClass("mfp-" + c + "-holder"), b.contentContainer.append(b.content)
        },
        parseEl: function(c) {
            var d, e = b.items[c];
            if ((e = e.tagName ? {
                    el: a(e)
                } : (d = e.type, {
                    data: e,
                    src: e.src
                })).el) {
                for (var f = b.types, g = 0; g < f.length; g++)
                    if (e.el.hasClass("mfp-" + f[g])) {
                        d = f[g];
                        break
                    } e.src = e.el.attr("data-mfp-src"), e.src || (e.src = e.el.attr("href"))
            }
            return e.type = d || b.st.type || "inline", e.index = c, e.parsed = !0, b.items[c] = e, y("ElementParse", e), b.items[c]
        },
        addGroup: function(a, c) {
            var d = function(d) {
                d.mfpEl = this, b._openClick(d, a, c)
            };
            c || (c = {});
            var e = "click.magnificPopup";
            c.mainEl = a, c.items ? (c.isObj = !0, a.off(e).on(e, d)) : (c.isObj = !1, c.delegate ? a.off(e).on(e, c.delegate, d) : (c.items = a).off(e).on(e, d))
        },
        _openClick: function(c, d, e) {
            if ((void 0 !== e.midClick ? e.midClick : a.magnificPopup.defaults.midClick) || !(2 === c.which || c.ctrlKey || c.metaKey || c.altKey || c.shiftKey)) {
                var g = void 0 !== e.disableOn ? e.disableOn : a.magnificPopup.defaults.disableOn;
                if (g)
                    if (a.isFunction(g)) {
                        if (!g.call(b)) return !0
                    } else if (v.width() < g) return !0;
                c.type && (c.preventDefault(), b.isOpen && c.stopPropagation()), e.el = a(c.mfpEl), e.delegate && (e.items = d.find(e.delegate)), b.open(e)
            }
        },
        updateStatus: function(a, d) {
            if (b.preloader) {
                c !== a && b.container.removeClass("mfp-s-" + c), d || "loading" !== a || (d = b.st.tLoading);
                var e = {
                    status: a,
                    text: d
                };
                y("UpdateStatus", e), a = e.status, d = e.text, b.preloader.html(d), b.preloader.find("a").on("click", function(a) {
                    a.stopImmediatePropagation()
                }), b.container.addClass("mfp-s-" + a), c = a
            }
        },
        _checkIfClose: function(c) {
            if (!a(c).hasClass(s)) {
                var d = b.st.closeOnContentClick,
                    e = b.st.closeOnBgClick;
                if (d && e) return !0;
                if (!b.content || a(c).hasClass("mfp-close") || b.preloader && c === b.preloader[0]) return !0;
                if (c === b.content[0] || a.contains(b.content[0], c)) {
                    if (d) return !0
                } else if (e && a.contains(document, c)) return !0;
                return !1
            }
        },
        _addClassToMFP: function(a) {
            b.bgOverlay.addClass(a), b.wrap.addClass(a)
        },
        _removeClassFromMFP: function(a) {
            this.bgOverlay.removeClass(a), b.wrap.removeClass(a)
        },
        _hasScrollBar: function(a) {
            return (b.isIE7 ? d.height() : document.body.scrollHeight) > (a || v.height())
        },
        _setFocus: function() {
            (b.st.focus ? b.content.find(b.st.focus).eq(0) : b.wrap).focus()
        },
        _onFocusIn: function(c) {
            return c.target === b.wrap[0] || a.contains(b.wrap[0], c.target) ? void 0 : (b._setFocus(), !1)
        },
        _parseMarkup: function(b, c, d) {
            var e;
            d.data && (c = a.extend(d.data, c)), y(l, [b, c, d]), a.each(c, function(a, c) {
                if (void 0 === c || !1 === c) return !0;
                if (1 < (e = a.split("_")).length) {
                    var d = b.find(p + "-" + e[0]);
                    if (0 < d.length) {
                        var f = e[1];
                        "replaceWith" === f ? d[0] !== c[0] && d.replaceWith(c) : "img" === f ? d.is("img") ? d.attr("src", c) : d.replaceWith('<img src="' + c + '" class="' + d.attr("class") + '" />') : d.attr(e[1], c)
                    }
                } else b.find(p + "-" + a).html(c)
            })
        },
        _getScrollbarSize: function() {
            if (void 0 === b.scrollbarSize) {
                var a = document.createElement("div");
                a.style.cssText = "width: 99px; height: 99px; overflow: scroll; position: absolute; top: -9999px;", document.body.appendChild(a), b.scrollbarSize = a.offsetWidth - a.clientWidth, document.body.removeChild(a)
            }
            return b.scrollbarSize
        }
    }, a.magnificPopup = {
        instance: null,
        proto: t.prototype,
        modules: [],
        open: function(b, c) {
            return A(), (b = b ? a.extend(!0, {}, b) : {}).isObj = !0, b.index = c || 0, this.instance.open(b)
        },
        close: function() {
            return a.magnificPopup.instance && a.magnificPopup.instance.close()
        },
        registerModule: function(b, c) {
            c.options && (a.magnificPopup.defaults[b] = c.options), a.extend(this.proto, c.proto), this.modules.push(b)
        },
        defaults: {
            disableOn: 0,
            key: null,
            midClick: !1,
            mainClass: "",
            preloader: !0,
            focus: "",
            closeOnContentClick: !1,
            closeOnBgClick: !0,
            closeBtnInside: !0,
            showCloseBtn: !0,
            enableEscapeKey: !0,
            modal: !1,
            alignTop: !1,
            removalDelay: 0,
            prependTo: null,
            fixedContentPos: "auto",
            fixedBgPos: "auto",
            overflowY: "auto",
            closeMarkup: '<button title="%title%" type="button" class="mfp-close">&#215;</button>',
            tClose: "Close (Esc)",
            tLoading: "Loading...",
            autoFocusLast: !0
        }
    }, a.fn.magnificPopup = function(c) {
        A();
        var d = a(this);
        if ("string" == typeof c)
            if ("open" === c) {
                var e, f = u ? d.data("magnificPopup") : d[0].magnificPopup,
                    g = parseInt(arguments[1], 10) || 0;
                e = f.items ? f.items[g] : (e = d, f.delegate && (e = e.find(f.delegate)), e.eq(g)), b._openClick({
                    mfpEl: e
                }, d, f)
            } else b.isOpen && b[c].apply(b, Array.prototype.slice.call(arguments, 1));
        else c = a.extend(!0, {}, c), u ? d.data("magnificPopup", c) : d[0].magnificPopup = c, b.addGroup(d, c);
        return d
    };
    var C, D, E, F = "inline",
        G = function() {
            E && (D.after(E.addClass(C)).detach(), E = null)
        };
    a.magnificPopup.registerModule(F, {
        options: {
            hiddenClass: "hide",
            markup: "",
            tNotFound: "Content not found"
        },
        proto: {
            initInline: function() {
                b.types.push(F), w(h + "." + F, function() {
                    G()
                })
            },
            getInline: function(c, d) {
                if (G(), c.src) {
                    var e = b.st.inline,
                        f = a(c.src);
                    if (f.length) {
                        var g = f[0].parentNode;
                        g && g.tagName && (D || (C = e.hiddenClass, D = x(C), C = "mfp-" + C), E = f.after(D).detach().removeClass(C)), b.updateStatus("ready")
                    } else b.updateStatus("error", e.tNotFound), f = a("<div>");
                    return c.inlineElement = f
                }
                return b.updateStatus("ready"), b._parseMarkup(d, {}, c), d
            }
        }
    });
    var H, I = "ajax",
        J = function() {
            H && a(document.body).removeClass(H)
        },
        K = function() {
            J(), b.req && b.req.abort()
        };
    a.magnificPopup.registerModule(I, {
        options: {
            settings: null,
            cursor: "mfp-ajax-cur",
            tError: '<a href="%url%">The content</a> could not be loaded.'
        },
        proto: {
            initAjax: function() {
                b.types.push(I), H = b.st.ajax.cursor, w(h + "." + I, K), w("BeforeChange." + I, K)
            },
            getAjax: function(c) {
                H && a(document.body).addClass(H), b.updateStatus("loading");
                var d = a.extend({
                    url: c.src,
                    success: function(d, e, f) {
                        var g = {
                            data: d,
                            xhr: f
                        };
                        y("ParseAjax", g), b.appendContent(a(g.data), I), c.finished = !0, J(), b._setFocus(), setTimeout(function() {
                            b.wrap.addClass(q)
                        }, 16), b.updateStatus("ready"), y("AjaxContentAdded")
                    },
                    error: function() {
                        J(), c.finished = c.loadError = !0, b.updateStatus("error", b.st.ajax.tError.replace("%url%", c.src))
                    }
                }, b.st.ajax.settings);
                return b.req = a.ajax(d), ""
            }
        }
    });
    var L;
    a.magnificPopup.registerModule("image", {
        options: {
            markup: '<div class="mfp-figure"><div class="mfp-close"></div><figure><div class="mfp-img"></div><figcaption><div class="mfp-bottom-bar"><div class="mfp-title"></div><div class="mfp-counter"></div></div></figcaption></figure></div>',
            cursor: "mfp-zoom-out-cur",
            titleSrc: "title",
            verticalFit: !0,
            tError: '<a href="%url%">The image</a> could not be loaded.'
        },
        proto: {
            initImage: function() {
                var c = b.st.image,
                    d = ".image";
                b.types.push("image"), w(m + d, function() {
                    "image" === b.currItem.type && c.cursor && a(document.body).addClass(c.cursor)
                }), w(h + d, function() {
                    c.cursor && a(document.body).removeClass(c.cursor), v.off("resize" + p)
                }), w("Resize" + d, b.resizeImage), b.isLowIE && w("AfterChange", b.resizeImage)
            },
            resizeImage: function() {
                var a = b.currItem;
                if (a && a.img && b.st.image.verticalFit) {
                    var c = 0;
                    b.isLowIE && (c = parseInt(a.img.css("padding-top"), 10) + parseInt(a.img.css("padding-bottom"), 10)), a.img.css("max-height", b.wH - c)
                }
            },
            _onImageHasSize: function(a) {
                a.img && (a.hasSize = !0, L && clearInterval(L), a.isCheckingImgSize = !1, y("ImageHasSize", a), a.imgHidden && (b.content && b.content.removeClass("mfp-loading"), a.imgHidden = !1))
            },
            findImageSize: function(a) {
                var c = 0,
                    d = a.img[0],
                    e = function(f) {
                        L && clearInterval(L), L = setInterval(function() {
                            return 0 < d.naturalWidth ? void b._onImageHasSize(a) : (200 < c && clearInterval(L), void(3 === ++c ? e(10) : 40 === c ? e(50) : 100 === c && e(500)))
                        }, f)
                    };
                e(1)
            },
            getImage: function(c, d) {
                var e = 0,
                    f = function() {
                        c && (c.img[0].complete ? (c.img.off(".mfploader"), c === b.currItem && (b._onImageHasSize(c), b.updateStatus("ready")), c.hasSize = !0, c.loaded = !0, y("ImageLoadComplete")) : ++e < 200 ? setTimeout(f, 100) : g())
                    },
                    g = function() {
                        c && (c.img.off(".mfploader"), c === b.currItem && (b._onImageHasSize(c), b.updateStatus("error", h.tError.replace("%url%", c.src))), c.hasSize = !0, c.loaded = !0, c.loadError = !0)
                    },
                    h = b.st.image,
                    i = d.find(".mfp-img");
                if (i.length) {
                    var j = document.createElement("img");
                    j.className = "mfp-img", c.el && c.el.find("img").length && (j.alt = c.el.find("img").attr("alt")), c.img = a(j).on("load.mfploader", f).on("error.mfploader", g), j.src = c.src, i.is("img") && (c.img = c.img.clone()), 0 < (j = c.img[0]).naturalWidth ? c.hasSize = !0 : j.width || (c.hasSize = !1)
                }
                return b._parseMarkup(d, {
                    title: function(c) {
                        if (c.data && void 0 !== c.data.title) return c.data.title;
                        var d = b.st.image.titleSrc;
                        if (d) {
                            if (a.isFunction(d)) return d.call(b, c);
                            if (c.el) return c.el.attr(d) || ""
                        }
                        return ""
                    }(c),
                    img_replaceWith: c.img
                }, c), b.resizeImage(), c.hasSize ? (L && clearInterval(L), c.loadError ? (d.addClass("mfp-loading"), b.updateStatus("error", h.tError.replace("%url%", c.src))) : (d.removeClass("mfp-loading"), b.updateStatus("ready"))) : (b.updateStatus("loading"), c.loading = !0, c.hasSize || (c.imgHidden = !0, d.addClass("mfp-loading"), b.findImageSize(c))), d
            }
        }
    });
    var N;
    a.magnificPopup.registerModule("zoom", {
        options: {
            enabled: !1,
            easing: "ease-in-out",
            duration: 300,
            opener: function(a) {
                return a.is("img") ? a : a.find("img")
            }
        },
        proto: {
            initZoom: function() {
                var a, c = b.st.zoom,
                    d = ".zoom";
                if (c.enabled && b.supportsTransition) {
                    var e, f, g = c.duration,
                        j = function(a) {
                            var b = a.clone().removeAttr("style").removeAttr("class").addClass("mfp-animated-image"),
                                d = "all " + c.duration / 1e3 + "s " + c.easing,
                                e = {
                                    position: "fixed",
                                    zIndex: 9999,
                                    left: 0,
                                    top: 0,
                                    "-webkit-backface-visibility": "hidden"
                                },
                                f = "transition";
                            return e["-webkit-" + f] = e["-moz-" + f] = e["-o-" + f] = e[f] = d, b.css(e), b
                        },
                        k = function() {
                            b.content.css("visibility", "visible")
                        };
                    w("BuildControls" + d, function() {
                        if (b._allowZoom()) {
                            if (clearTimeout(e), b.content.css("visibility", "hidden"), !(a = b._getItemToZoom())) return void k();
                            (f = j(a)).css(b._getOffset()), b.wrap.append(f), e = setTimeout(function() {
                                f.css(b._getOffset(!0)), e = setTimeout(function() {
                                    k(), setTimeout(function() {
                                        f.remove(), a = f = null, y("ZoomAnimationEnded")
                                    }, 16)
                                }, g)
                            }, 16)
                        }
                    }), w(i + d, function() {
                        if (b._allowZoom()) {
                            if (clearTimeout(e), b.st.removalDelay = g, !a) {
                                if (!(a = b._getItemToZoom())) return;
                                f = j(a)
                            }
                            f.css(b._getOffset(!0)), b.wrap.append(f), b.content.css("visibility", "hidden"), setTimeout(function() {
                                f.css(b._getOffset())
                            }, 16)
                        }
                    }), w(h + d, function() {
                        b._allowZoom() && (k(), f && f.remove(), a = null)
                    })
                }
            },
            _allowZoom: function() {
                return "image" === b.currItem.type
            },
            _getItemToZoom: function() {
                return !!b.currItem.hasSize && b.currItem.img
            },
            _getOffset: function(c) {
                var d, e = (d = c ? b.currItem.img : b.st.zoom.opener(b.currItem.el || b.currItem)).offset(),
                    f = parseInt(d.css("padding-top"), 10),
                    g = parseInt(d.css("padding-bottom"), 10);
                e.top -= a(window).scrollTop() - f;
                var h = {
                    width: d.width(),
                    height: (u ? d.innerHeight() : d[0].offsetHeight) - g - f
                };
                return void 0 === N && (N = void 0 !== document.createElement("p").style.MozTransform), N ? h["-moz-transform"] = h.transform = "translate(" + e.left + "px," + e.top + "px)" : (h.left = e.left, h.top = e.top), h
            }
        }
    });
    var P = "iframe",
        R = function(a) {
            if (b.currTemplate[P]) {
                var c = b.currTemplate[P].find("iframe");
                c.length && (a || (c[0].src = "//about:blank"), b.isIE8 && c.css("display", a ? "block" : "none"))
            }
        };
    a.magnificPopup.registerModule(P, {
        options: {
            markup: '<div class="mfp-iframe-scaler"><div class="mfp-close"></div><iframe class="mfp-iframe" src="//about:blank" frameborder="0" allowfullscreen></iframe></div>',
            srcAction: "iframe_src",
            patterns: {
                youtube: {
                    index: "youtube.com",
                    id: "v=",
                    src: "//www.youtube.com/embed/%id%?autoplay=1"
                },
                vimeo: {
                    index: "vimeo.com/",
                    id: "/",
                    src: "//player.vimeo.com/video/%id%?autoplay=1"
                },
                gmaps: {
                    index: "//maps.google.",
                    src: "%id%&output=embed"
                }
            }
        },
        proto: {
            initIframe: function() {
                b.types.push(P), w("BeforeChange", function(a, b, c) {
                    b !== c && (b === P ? R() : c === P && R(!0))
                }), w(h + "." + P, function() {
                    R()
                })
            },
            getIframe: function(c, d) {
                var e = c.src,
                    f = b.st.iframe;
                a.each(f.patterns, function() {
                    return -1 < e.indexOf(this.index) ? (this.id && (e = "string" == typeof this.id ? e.substr(e.lastIndexOf(this.id) + this.id.length, e.length) : this.id.call(this, e)), e = this.src.replace("%id%", e), !1) : void 0
                });
                var g = {};
                return f.srcAction && (g[f.srcAction] = e), b._parseMarkup(d, g, c), b.updateStatus("ready"), d
            }
        }
    });
    var S = function(a) {
            var c = b.items.length;
            return c - 1 < a ? a - c : a < 0 ? c + a : a
        },
        T = function(a, b, c) {
            return a.replace(/%curr%/gi, b + 1).replace(/%total%/gi, c)
        };
    a.magnificPopup.registerModule("gallery", {
        options: {
            enabled: !1,
            arrowMarkup: '<button title="%title%" type="button" class="mfp-arrow mfp-arrow-%dir%"></button>',
            preload: [0, 2],
            navigateByImgClick: !0,
            arrows: !0,
            tPrev: "Previous (Left arrow key)",
            tNext: "Next (Right arrow key)",
            tCounter: "%curr% of %total%"
        },
        proto: {
            initGallery: function() {
                var c = b.st.gallery,
                    e = ".mfp-gallery",
                    g = Boolean(a.fn.mfpFastClick);
                return b.direction = !0, !(!c || !c.enabled) && (f += " mfp-gallery", w(m + e, function() {
                    c.navigateByImgClick && b.wrap.on("click" + e, ".mfp-img", function() {
                        return 1 < b.items.length ? (b.next(), !1) : void 0
                    }), d.on("keydown" + e, function(a) {
                        37 === a.keyCode ? b.prev() : 39 === a.keyCode && b.next()
                    })
                }), w("UpdateStatus" + e, function(a, c) {
                    c.text && (c.text = T(c.text, b.currItem.index, b.items.length))
                }), w(l + e, function(a, d, e, f) {
                    var g = b.items.length;
                    e.counter = 1 < g ? T(c.tCounter, f.index, g) : ""
                }), w("BuildControls" + e, function() {
                    if (1 < b.items.length && c.arrows && !b.arrowLeft) {
                        var d = c.arrowMarkup,
                            e = b.arrowLeft = a(d.replace(/%title%/gi, c.tPrev).replace(/%dir%/gi, "left")).addClass(s),
                            f = b.arrowRight = a(d.replace(/%title%/gi, c.tNext).replace(/%dir%/gi, "right")).addClass(s),
                            h = g ? "mfpFastClick" : "click";
                        e[h](function() {
                            b.prev()
                        }), f[h](function() {
                            b.next()
                        }), b.isIE7 && (x("b", e[0], !1, !0), x("a", e[0], !1, !0), x("b", f[0], !1, !0), x("a", f[0], !1, !0)), b.container.append(e.add(f))
                    }
                }), w(n + e, function() {
                    b._preloadTimeout && clearTimeout(b._preloadTimeout), b._preloadTimeout = setTimeout(function() {
                        b.preloadNearbyImages(), b._preloadTimeout = null
                    }, 16)
                }), void w(h + e, function() {
                    d.off(e), b.wrap.off("click" + e), b.arrowLeft && g && b.arrowLeft.add(b.arrowRight).destroyMfpFastClick(), b.arrowRight = b.arrowLeft = null
                }))
            },
            next: function() {
                b.direction = !0, b.index = S(b.index + 1), b.updateItemHTML()
            },
            prev: function() {
                b.direction = !1, b.index = S(b.index - 1), b.updateItemHTML()
            },
            goTo: function(a) {
                b.direction = a >= b.index, b.index = a, b.updateItemHTML()
            },
            preloadNearbyImages: function() {
                var a, c = b.st.gallery.preload,
                    d = Math.min(c[0], b.items.length),
                    e = Math.min(c[1], b.items.length);
                for (a = 1; a <= (b.direction ? e : d); a++) b._preloadItem(b.index + a);
                for (a = 1; a <= (b.direction ? d : e); a++) b._preloadItem(b.index - a)
            },
            _preloadItem: function(c) {
                if (c = S(c), !b.items[c].preloaded) {
                    var d = b.items[c];
                    d.parsed || (d = b.parseEl(c)), y("LazyLoad", d), "image" === d.type && (d.img = a('<img class="mfp-img" />').on("load.mfploader", function() {
                        d.hasSize = !0
                    }).on("error.mfploader", function() {
                        d.hasSize = !0, d.loadError = !0, y("LazyLoadError", d)
                    }).attr("src", d.src)), d.preloaded = !0
                }
            }
        }
    });
    var U = "retina";
    a.magnificPopup.registerModule(U, {
            options: {
                replaceSrc: function(a) {
                    return a.src.replace(/\.\w+$/, function(a) {
                        return "@2x" + a
                    })
                },
                ratio: 1
            },
            proto: {
                initRetina: function() {
                    if (1 < window.devicePixelRatio) {
                        var a = b.st.retina,
                            c = a.ratio;
                        1 < (c = isNaN(c) ? c() : c) && (w("ImageHasSize." + U, function(a, b) {
                            b.img.css({
                                "max-width": b.img[0].naturalWidth / c,
                                width: "100%"
                            })
                        }), w("ElementParse." + U, function(b, d) {
                            d.src = a.replaceSrc(d, c)
                        }))
                    }
                }
            }
        }),
        function() {
            var c = "ontouchstart" in window,
                d = function() {
                    v.off("touchmove" + f + " touchend" + f)
                },
                f = ".mfpFastClick";
            a.fn.mfpFastClick = function(e) {
                return a(this).each(function() {
                    var g, i, j, k, l, m, n, h = a(this);
                    c && h.on("touchstart" + f, function(a) {
                        l = !1, n = 1, m = a.originalEvent ? a.originalEvent.touches[0] : a.touches[0], j = m.clientX, k = m.clientY, v.on("touchmove" + f, function(a) {
                            m = a.originalEvent ? a.originalEvent.touches : a.touches, n = m.length, m = m[0], (10 < Math.abs(m.clientX - j) || 10 < Math.abs(m.clientY - k)) && (l = !0, d())
                        }).on("touchend" + f, function(a) {
                            d(), l || 1 < n || (g = !0, a.preventDefault(), clearTimeout(i), i = setTimeout(function() {
                                g = !1
                            }, 1e3), e())
                        })
                    });
                    h.on("click" + f, function() {
                        g || e()
                    })
                })
            }, a.fn.destroyMfpFastClick = function() {
                a(this).off("touchstart" + f + " click" + f), c && v.off("touchmove" + f + " touchend" + f)
            }
        }(), A()
});
/*!
 * jQuery hashchange event - v1.3 - 7/21/2010
 * http://benalman.com/projects/jquery-hashchange-plugin/
 *
 * Copyright (c) 2010 "Cowboy" Ben Alman
 * Dual licensed under the MIT and GPL licenses.
 * http://benalman.com/about/license/
 */
// Dual licensed under the MIT and GPL licenses.
// http://benalman.com/about/license/
! function($, window, undefined) {
    var fake_onhashchange, doc = document,
        special = $.event.special,
        doc_mode = doc.documentMode,
        supports_onhashchange = "onhashchange" in window && (void 0 === doc_mode || 7 < doc_mode);

    function get_fragment(url) {
        return "#" + (url = url || location.href).replace(/^[^#]*#?(.*)$/, "$1")
    }
    $.fn.hashchange = function(fn) {
        return fn ? this.bind("hashchange", fn) : this.trigger("hashchange")
    }, $.fn.hashchange.delay = 50, special.hashchange = $.extend(special.hashchange, {
        setup: function() {
            if (supports_onhashchange) return !1;
            $(fake_onhashchange.start)
        },
        teardown: function() {
            if (supports_onhashchange) return !1;
            $(fake_onhashchange.stop)
        }
    }), fake_onhashchange = function() {
        var timeout_id, iframe, iframe_src, self = {},
            last_hash = get_fragment(),
            fn_retval = function(val) {
                return val
            },
            history_set = fn_retval,
            history_get = fn_retval;

        function poll() {
            var hash = get_fragment(),
                history_hash = history_get(last_hash);
            hash !== last_hash ? (history_set(last_hash = hash, history_hash), $(window).trigger("hashchange")) : history_hash !== last_hash && (location.href = location.href.replace(/#.*/, "") + history_hash), timeout_id = setTimeout(poll, $.fn.hashchange.delay)
        }
        return self.start = function() {
            timeout_id || poll()
        }, self.stop = function() {
            timeout_id && clearTimeout(timeout_id), timeout_id = void 0
        }, void 0 !== $.browser && $.browser.msie && !supports_onhashchange && (self.start = function() {
            iframe || (iframe_src = (iframe_src = $.fn.hashchange.src) && iframe_src + get_fragment(), iframe = $('<iframe tabindex="-1" title="empty"/>').hide().one("load", function() {
                iframe_src || history_set(get_fragment()), poll()
            }).attr("src", iframe_src || "javascript:0").insertAfter("body")[0].contentWindow, doc.onpropertychange = function() {
                try {
                    "title" === event.propertyName && (iframe.document.title = doc.title)
                } catch (e) {}
            })
        }, self.stop = fn_retval, history_get = function() {
            return get_fragment(iframe.location.href)
        }, history_set = function(hash, history_hash) {
            var iframe_doc = iframe.document,
                domain = $.fn.hashchange.domain;
            hash !== history_hash && (iframe_doc.title = doc.title, iframe_doc.open(), domain && iframe_doc.write('<script>document.domain="' + domain + '"<\/script>'), iframe_doc.close(), iframe.location.hash = hash)
        }), self
    }()
}(jQuery, this);
/*!
 * Salvattore 1.0.5 by @rnmp and @ppold
 * https://github.com/rnmp/salvattore
 * Licensed under the MIT license.
 * Copyright (c) 2013-2014 Rolando Murillo and Giorgio Leveroni
 */
/*
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

 */
! function(e, t) {
    "function" == typeof define && define.amd ? define([], t) : "object" == typeof exports ? module.exports = t() : e.salvattore = t()
}(this, function() {
    /*! matchMedia() polyfill - Test a CSS media type/query in JS. Authors & copyright (c) 2012: Scott Jehl, Paul Irish, Nicholas Zakas, David Knight. Dual MIT/BSD license */
    return window.matchMedia || (window.matchMedia = function() {
            "use strict";
            var e = window.styleMedia || window.media;
            if (!e) {
                var r, t = document.createElement("style"),
                    n = document.getElementsByTagName("script")[0];
                t.type = "text/css", t.id = "matchmediajs-test", n.parentNode.insertBefore(t, n), r = "getComputedStyle" in window && window.getComputedStyle(t, null) || t.currentStyle, e = {
                    matchMedium: function(e) {
                        var n = "@media " + e + "{ #matchmediajs-test { width: 1px; } }";
                        return t.styleSheet ? t.styleSheet.cssText = n : t.textContent = n, "1px" === r.width
                    }
                }
            }
            return function(t) {
                return {
                    matches: e.matchMedium(t || "all"),
                    media: t || "all"
                }
            }
        }()), /*! matchMedia() polyfill addListener/removeListener extension. Author & copyright (c) 2012: Scott Jehl. Dual MIT/BSD license */
        function() {
            "use strict";
            if (window.matchMedia && window.matchMedia("all").addListener) return;
            var e = window.matchMedia,
                t = e("only all").matches,
                n = !1,
                r = 0,
                a = [],
                i = function() {
                    clearTimeout(r), r = setTimeout(function() {
                        for (var t = 0, n = a.length; t < n; t++) {
                            var r = a[t].mql,
                                i = a[t].listeners || [],
                                o = e(r.media).matches;
                            if (o !== r.matches) {
                                r.matches = o;
                                for (var c = 0, l = i.length; c < l; c++) i[c].call(window, r)
                            }
                        }
                    }, 30)
                };
            window.matchMedia = function(r) {
                var o = e(r),
                    c = [],
                    l = 0;
                return o.addListener = function(e) {
                    t && (n || (n = !0, window.addEventListener("resize", i, !0)), 0 === l && (l = a.push({
                        mql: o,
                        listeners: c
                    })), c.push(e))
                }, o.removeListener = function(e) {
                    for (var t = 0, n = c.length; t < n; t++) c[t] === e && c.splice(t, 1)
                }, o
            }
        }(),
        function() {
            "use strict";
            for (var e = 0, t = ["ms", "moz", "webkit", "o"], n = 0; n < t.length && !window.requestAnimationFrame; ++n) window.requestAnimationFrame = window[t[n] + "RequestAnimationFrame"], window.cancelAnimationFrame = window[t[n] + "CancelAnimationFrame"] || window[t[n] + "CancelRequestAnimationFrame"];
            window.requestAnimationFrame || (window.requestAnimationFrame = function(t) {
                var n = (new Date).getTime(),
                    r = Math.max(0, 16 - (n - e)),
                    a = window.setTimeout(function() {
                        t(n + r)
                    }, r);
                return e = n + r, a
            }), window.cancelAnimationFrame || (window.cancelAnimationFrame = function(e) {
                clearTimeout(e)
            })
        }(), "function" != typeof window.CustomEvent && function() {
            "use strict";

            function e(e, t) {
                t = t || {
                    bubbles: !1,
                    cancelable: !1,
                    detail: void 0
                };
                var n = document.createEvent("CustomEvent");
                return n.initCustomEvent(e, t.bubbles, t.cancelable, t.detail), n
            }
            e.prototype = window.Event.prototype, window.CustomEvent = e
        }(),
        function(e, t) {
            "use strict";
            var n = {},
                r = [],
                a = [],
                i = [],
                o = function(e, t, n) {
                    e.dataset ? e.dataset[t] = n : e.setAttribute("data-" + t, n)
                };
            return n.obtainGridSettings = function(t) {
                var r = e.getComputedStyle(t, ":before").getPropertyValue("content").slice(1, -1),
                    a = r.match(/^\s*(\d+)(?:\s?\.(.+))?\s*$/),
                    i = 1,
                    o = [];
                return a ? (i = a[1], o = (o = a[2]) ? o.split(".") : ["column"]) : (a = r.match(/^\s*\.(.+)\s+(\d+)\s*$/)) && (o = a[1], (i = a[2]) && (i = i.split("."))), {
                    numberOfColumns: i,
                    columnClasses: o
                }
            }, n.addColumns = function(e, r) {
                for (var a, i = n.obtainGridSettings(e), c = i.numberOfColumns, l = i.columnClasses, s = new Array(+c), u = t.createDocumentFragment(), d = c; 0 != d--;) a = "[data-columns] > *:nth-child(" + c + "n-" + d + ")", s.push(r.querySelectorAll(a));
                s.forEach(function(e) {
                    var n = t.createElement("div"),
                        r = t.createDocumentFragment();
                    n.className = l.join(" "), Array.prototype.forEach.call(e, function(e) {
                        r.appendChild(e)
                    }), n.appendChild(r), u.appendChild(n)
                }), e.appendChild(u), o(e, "columns", c)
            }, n.removeColumns = function(n) {
                var r = t.createRange();
                r.selectNodeContents(n);
                var a = Array.prototype.filter.call(r.extractContents().childNodes, function(t) {
                        return t instanceof e.HTMLElement
                    }),
                    i = a.length,
                    c = a[0].childNodes.length,
                    l = new Array(c * i);
                Array.prototype.forEach.call(a, function(e, t) {
                    Array.prototype.forEach.call(e.children, function(e, n) {
                        l[n * i + t] = e
                    })
                });
                var s = t.createElement("div");
                return o(s, "columns", 0), l.filter(function(e) {
                    return !!e
                }).forEach(function(e) {
                    s.appendChild(e)
                }), s
            }, n.recreateColumns = function(t) {
                e.requestAnimationFrame(function() {
                    n.addColumns(t, n.removeColumns(t));
                    var e = new CustomEvent("columnsChange");
                    t.dispatchEvent(e)
                })
            }, n.mediaQueryChange = function(e) {
                e.matches && Array.prototype.forEach.call(r, n.recreateColumns)
            }, n.getCSSRules = function(e) {
                var t;
                try {
                    t = e.sheet.cssRules || e.sheet.rules
                } catch (n) {
                    return []
                }
                return t || []
            }, n.getStylesheets = function() {
                return Array.prototype.concat.call(Array.prototype.slice.call(t.querySelectorAll("style[type='text/css']")), Array.prototype.slice.call(t.querySelectorAll("link[rel='stylesheet']")))
            }, n.mediaRuleHasColumnsSelector = function(e) {
                var t, n;
                try {
                    t = e.length
                } catch (r) {
                    t = 0
                }
                for (; t--;)
                    if ((n = e[t]).selectorText && n.selectorText.match(/\[data-columns\](.*)::?before$/)) return !0;
                return !1
            }, n.scanMediaQueries = function() {
                var t = [];
                if (e.matchMedia) {
                    n.getStylesheets().forEach(function(e) {
                        Array.prototype.forEach.call(n.getCSSRules(e), function(e) {
                            e.media && e.cssRules && n.mediaRuleHasColumnsSelector(e.cssRules) && t.push(e)
                        })
                    });
                    var r = a.filter(function(e) {
                        return -1 === t.indexOf(e)
                    });
                    i.filter(function(e) {
                        return -1 !== r.indexOf(e.rule)
                    }).forEach(function(e) {
                        e.mql.removeListener(n.mediaQueryChange)
                    }), i = i.filter(function(e) {
                        return -1 === r.indexOf(e.rule)
                    }), t.filter(function(e) {
                        return -1 == a.indexOf(e)
                    }).forEach(function(t) {
                        var r = e.matchMedia(t.media.mediaText);
                        r.addListener(n.mediaQueryChange), i.push({
                            rule: t,
                            mql: r
                        })
                    }), a.length = 0, a = t
                }
            }, n.rescanMediaQueries = function() {
                n.scanMediaQueries(), Array.prototype.forEach.call(r, n.recreateColumns)
            }, n.nextElementColumnIndex = function(e, t) {
                var r, a, i = e.children,
                    o = i.length,
                    c = 0,
                    l = 0;
                for (a = 0; a < o; a++) r = i[a].children.length + (t[a].children || t[a].childNodes).length, 0 === c && (c = r), r < c && (l = a, c = r);
                return l
            }, n.createFragmentsList = function(e) {
                for (var n = new Array(e), r = 0; r !== e;) n[r] = t.createDocumentFragment(), r++;
                return n
            }, n.appendElements = function(e, t) {
                var r = e.children,
                    a = r.length,
                    i = n.createFragmentsList(a);
                Array.prototype.forEach.call(t, function(t) {
                    var r = n.nextElementColumnIndex(e, i);
                    i[r].appendChild(t)
                }), Array.prototype.forEach.call(r, function(e, t) {
                    e.appendChild(i[t])
                })
            }, n.prependElements = function(e, r) {
                var a = e.children,
                    i = a.length,
                    o = n.createFragmentsList(i),
                    c = i - 1;
                r.forEach(function(e) {
                    var t = o[c];
                    t.insertBefore(e, t.firstChild), 0 === c ? c = i - 1 : c--
                }), Array.prototype.forEach.call(a, function(e, t) {
                    e.insertBefore(o[t], e.firstChild)
                });
                for (var l = t.createDocumentFragment(), s = r.length % i; 0 != s--;) l.appendChild(e.lastChild);
                e.insertBefore(l, e.firstChild)
            }, n.registerGrid = function(a) {
                if ("none" !== e.getComputedStyle(a).display) {
                    var i = t.createRange();
                    i.selectNodeContents(a);
                    var c = t.createElement("div");
                    c.appendChild(i.extractContents()), o(c, "columns", 0), n.addColumns(a, c), r.push(a)
                }
            }, n.init = function() {
                var e = t.createElement("style");
                e.innerHTML = "[data-columns]::before{visibility:hidden;position:absolute;font-size:1px;}", t.head.appendChild(e);
                var r = t.querySelectorAll("[data-columns]");
                Array.prototype.forEach.call(r, n.registerGrid), n.scanMediaQueries()
            }, n.init(), {
                appendElements: n.appendElements,
                prependElements: n.prependElements,
                registerGrid: n.registerGrid,
                recreateColumns: n.recreateColumns,
                rescanMediaQueries: n.rescanMediaQueries,
                append_elements: n.appendElements,
                prepend_elements: n.prependElements,
                register_grid: n.registerGrid,
                recreate_columns: n.recreateColumns,
                rescan_media_queries: n.rescanMediaQueries
            }
        }(window, window.document)
});
/*!
 * easyPieChart
 * Lightweight plugin to render simple, animated and retina optimized pie charts
 *
 * @author Robert Fleischmann <rendro87@gmail.com> (http://robert-fleischmann.de)
 * @version 2.1.5
 */
! function(root, factory) {
    "object" == typeof exports ? module.exports = factory(require("jquery")) : "function" == typeof define && define.amd ? define(["jquery"], factory) : factory(root.jQuery)
}(this, function($) {
    var CanvasRenderer = function(el, options) {
            var cachedBackground, canvas = document.createElement("canvas");
            el.appendChild(canvas), "undefined" != typeof G_vmlCanvasManager && G_vmlCanvasManager.initElement(canvas);
            var ctx = canvas.getContext("2d");
            canvas.width = canvas.height = options.size;
            var scaleBy = 1;
            1 < window.devicePixelRatio && (scaleBy = window.devicePixelRatio, canvas.style.width = canvas.style.height = [options.size, "px"].join(""), canvas.width = canvas.height = options.size * scaleBy, ctx.scale(scaleBy, scaleBy)), ctx.translate(options.size / 2, options.size / 2), ctx.rotate((options.rotate / 180 - .5) * Math.PI);
            var radius = (options.size - options.lineWidth) / 2;
            options.scaleColor && options.scaleLength && (radius -= options.scaleLength + 2), Date.now = Date.now || function() {
                return +new Date
            };
            var drawCircle = function(color, lineWidth, percent, alpha) {
                    var isNegative = (percent = Math.min(Math.max(-1, percent || 0), 1)) <= 0;
                    ctx.beginPath(), ctx.arc(0, 0, radius, 0, 2 * Math.PI * percent, isNegative), ctx.strokeStyle = color, ctx.globalAlpha = alpha, ctx.lineWidth = lineWidth, ctx.stroke()
                },
                reqAnimationFrame = window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || function(callback) {
                    window.setTimeout(callback, 1e3 / 60)
                },
                drawBackground = function() {
                    options.scaleColor && function() {
                        var offset, length;
                        ctx.lineWidth = 1, ctx.fillStyle = options.scaleColor, ctx.save();
                        for (var i = 24; 0 < i; --i) offset = i % 6 == 0 ? (length = options.scaleLength, 0) : (length = .6 * options.scaleLength, options.scaleLength - length), ctx.fillRect(-options.size / 2 + offset, 0, length, 1), ctx.rotate(Math.PI / 12);
                        ctx.restore()
                    }(), options.trackColor && drawCircle(options.trackColor, options.lineWidth, 1, options.trackAlpha)
                };
            this.getCanvas = function() {
                return canvas
            }, this.getCtx = function() {
                return ctx
            }, this.clear = function() {
                ctx.clearRect(options.size / -2, options.size / -2, options.size, options.size)
            }, this.draw = function(percent) {
                var color;
                options.scaleColor || options.trackColor ? ctx.getImageData && ctx.putImageData ? cachedBackground ? ctx.putImageData(cachedBackground, 0, 0) : (drawBackground(), cachedBackground = ctx.getImageData(0, 0, options.size * scaleBy, options.size * scaleBy)) : (this.clear(), drawBackground()) : this.clear(), ctx.lineCap = options.lineCap, color = "function" == typeof options.barColor ? options.barColor(percent) : options.barColor, drawCircle(color, options.lineWidth, percent / 100, options.barAlpha)
            }.bind(this), this.animate = function(from, to) {
                var startTime = Date.now();
                options.onStart(from, to);
                var animation = function() {
                    var process = Math.min(Date.now() - startTime, options.animate.duration),
                        currentValue = options.easing(this, process, from, to - from, options.animate.duration);
                    this.draw(currentValue), options.onStep(from, to, currentValue), process >= options.animate.duration ? options.onStop(from, to) : reqAnimationFrame(animation)
                }.bind(this);
                reqAnimationFrame(animation)
            }.bind(this)
        },
        EasyPieChart = function(el, opts) {
            var defaultOptions = {
                barColor: "#ef1e25",
                barAlpha: 1,
                trackColor: "#f9f9f9",
                trackAlpha: 1,
                scaleColor: "#dfe0e0",
                scaleLength: 5,
                lineCap: "round",
                lineWidth: 3,
                size: 110,
                rotate: 0,
                render: !0,
                animate: {
                    duration: 1e3,
                    enabled: !0
                },
                easing: function(x, t, b, c, d) {
                    return (t /= d / 2) < 1 ? c / 2 * t * t + b : -c / 2 * (--t * (t - 2) - 1) + b
                },
                onStart: function(from, to) {},
                onStep: function(from, to, currentValue) {},
                onStop: function(from, to) {}
            };
            defaultOptions.renderer = CanvasRenderer;
            var options = {},
                currentValue = 0,
                init = function() {
                    for (var i in this.el = el, this.options = options, defaultOptions) defaultOptions.hasOwnProperty(i) && (options[i] = opts && void 0 !== opts[i] ? opts[i] : defaultOptions[i], "function" == typeof options[i] && (options[i] = options[i].bind(this)));
                    "string" == typeof options.easing && "undefined" != typeof jQuery && jQuery.isFunction(jQuery.easing[options.easing]) ? options.easing = jQuery.easing[options.easing] : options.easing = defaultOptions.easing, "number" == typeof options.animate && (options.animate = {
                        duration: options.animate,
                        enabled: !0
                    }), "boolean" != typeof options.animate || options.animate || (options.animate = {
                        duration: 1e3,
                        enabled: options.animate
                    }), this.renderer = new options.renderer(el, options), this.renderer.draw(currentValue), el.dataset && el.dataset.percent ? this.update(parseFloat(el.dataset.percent)) : el.getAttribute && el.getAttribute("data-percent") && this.update(parseFloat(el.getAttribute("data-percent")))
                }.bind(this);
            this.update = function(newValue) {
                return newValue = parseFloat(newValue), options.animate.enabled ? this.renderer.animate(currentValue, newValue) : this.renderer.draw(newValue), currentValue = newValue, this
            }.bind(this), this.disableAnimation = function() {
                return options.animate.enabled = !1, this
            }, this.enableAnimation = function() {
                return options.animate.enabled = !0, this
            }, init()
        };
    $.fn.easyPieChart = function(options) {
        return this.each(function() {
            var instanceOptions;
            $.data(this, "easyPieChart") || (instanceOptions = $.extend({}, options, $(this).data()), $.data(this, "easyPieChart", new EasyPieChart(this, instanceOptions)))
        })
    }
});
/*! ET frontend-builder-global-functions.js */
! function($) {
    var isBlockLayoutPreview = $("body").hasClass("et-block-layout-preview");
    // Underscore may be freely distributed under the MIT license.
    window.et_pb_debounce = function(func, wait, immediate) {
        var timeout, args, context, timestamp, result, now = Date.now || (new Date).getTime(),
            later = function() {
                var last = now - timestamp;
                last < wait && 0 <= last ? timeout = setTimeout(later, wait - last) : (timeout = null, immediate || (result = func.apply(context, args), timeout || (context = args = null)))
            };
        return function() {
            context = this, args = arguments, timestamp = now;
            var callNow = immediate && !timeout;
            return timeout || (timeout = setTimeout(later, wait)), callNow && (result = func.apply(context, args), context = args = null), result
        }
    }, window.et_pb_smooth_scroll = function($target, $top_section, speed, easing) {
        var $window_width = $(window).width();
        $("body").hasClass("et_fixed_nav") && 980 < $window_width ? $menu_offset = $("#top-header").outerHeight() + $("#main-header").outerHeight() - 1 : $menu_offset = -1, $("#wpadminbar").length && 600 < $window_width && ($menu_offset += $("#wpadminbar").outerHeight()), $scroll_position = $top_section ? 0 : $target.offset().top - $menu_offset, void 0 === easing && (easing = "swing"), $("html, body").animate({
            scrollTop: $scroll_position
        }, speed, easing)
    }, window.et_pb_form_placeholders_init = function($form) {
        $form.find('input:text, input[type="email"], input[type="url"], textarea').each(function(index, domEle) {
            var $et_current_input = jQuery(domEle),
                $et_comment_label = $et_current_input.siblings("label"),
                et_comment_label_value = $et_current_input.siblings("label").text();
            $et_comment_label.length && ($et_comment_label.hide(), $et_current_input.siblings("span.required") && (et_comment_label_value += $et_current_input.siblings("span.required").text(), $et_current_input.siblings("span.required").hide()), $et_current_input.val(et_comment_label_value))
        }).bind("focus", function() {
            var et_label_text = jQuery(this).siblings("label").text();
            jQuery(this).siblings("span.required").length && (et_label_text += jQuery(this).siblings("span.required").text()), jQuery(this).val() === et_label_text && jQuery(this).val("")
        }).bind("blur", function() {
            var et_label_text = jQuery(this).siblings("label").text();
            jQuery(this).siblings("span.required").length && (et_label_text += jQuery(this).siblings("span.required").text()), "" === jQuery(this).val() && jQuery(this).val(et_label_text)
        })
    }, window.et_duplicate_menu = function(menu, append_to, menu_id, menu_class, menu_click_event) {
        append_to.each(function() {
            var $cloned_nav, $this_menu = $(this);
            "" !== menu && menu.clone().attr("id", menu_id).removeClass().attr("class", menu_class).appendTo($this_menu), ($cloned_nav = $this_menu.find("> ul")).find(".menu_slide").remove(), $cloned_nav.find(".et_pb_menu__logo-slot").remove(), $cloned_nav.find("li:first").addClass("et_first_mobile_item"), $cloned_nav.find("a").on("click", function() {
                $(this).parents(".et_mobile_menu").siblings(".mobile_menu_bar").trigger("click")
            }), "no_click_event" !== menu_click_event && (isBuilder && $this_menu.off("click"), $this_menu.on("click", ".mobile_menu_bar", function() {
                return $(".mobile_nav.opened .mobile_menu_bar").not($(this)).trigger("click"), $this_menu.hasClass("closed") ? ($this_menu.removeClass("closed").addClass("opened"), $cloned_nav.stop().slideDown(500)) : ($this_menu.removeClass("opened").addClass("closed"), $cloned_nav.stop().slideUp(500)), !1
            }))
        }), $("#mobile_menu .centered-inline-logo-wrap").remove()
    }, window.et_pb_remove_placeholder_text = function($form) {
        $form.find("input:text, textarea").each(function(index, domEle) {
            var $et_current_input = jQuery(domEle),
                $et_label = $et_current_input.siblings("label");
            $et_current_input.siblings("label").text();
            $et_label.length && $et_label.is(":hidden") && $et_label.text() == $et_current_input.val() && $et_current_input.val("")
        })
    }, window.et_fix_fullscreen_section = function() {
        var $et_window = $(isBlockLayoutPreview ? window.top : window);
        $("section.et_pb_fullscreen").each(function() {
            var $this_section = $(this);
            $.proxy(et_calc_fullscreen_section, $this_section)(), $et_window.on("resize", $.proxy(et_calc_fullscreen_section, $this_section))
        })
    }, window.et_bar_counters_init = function($bar_item) {
        $bar_item.length && $bar_item.css({
            width: parseFloat($bar_item.attr("data-width")) + "%"
        })
    }, window.et_fix_pricing_currency_position = function($pricing_table) {
        setTimeout(function() {
            var $all_pricing_tables = void 0 !== $pricing_table ? $pricing_table : $(".et_pb_pricing_table");
            $all_pricing_tables.length && $all_pricing_tables.each(function() {
                var $price_container = $(this).find(".et_pb_et_price"),
                    $currency = !!$price_container.length && $price_container.find(".et_pb_dollar_sign"),
                    $price = !!$price_container.length && $price_container.find(".et_pb_sum");
                $currency && $price && $currency.css({
                    marginLeft: -$currency.width() + "px"
                })
            })
        }, 1)
    }, window.et_pb_set_responsive_grid = function($grid_items_container, single_item_selector) {
        setTimeout(function() {
            var container_width = $grid_items_container.innerWidth(),
                $grid_items = $grid_items_container.find(single_item_selector),
                item_width = $grid_items.outerWidth(!0),
                last_item_margin = item_width - $grid_items.outerWidth(),
                columns_count = Math.round((container_width + last_item_margin) / item_width),
                counter = 1,
                first_in_row = 1,
                $first_in_last_row = $();
            if ($grid_items.removeClass("last_in_row first_in_row on_last_row"), $grid_items.filter(":visible").each(function() {
                    var $this_element = $(this);
                    $this_element.hasClass("inactive") || (first_in_row === counter ? ($this_element.addClass("first_in_row"), $first_in_last_row = $this_element) : 0 == counter % columns_count && ($this_element.addClass("last_in_row"), first_in_row = counter + 1), counter++)
                }), $first_in_last_row.length) {
                var $module = $first_in_last_row.parents(".et_pb_module");
                if ($module.is(":last-child")) {
                    var column = $first_in_last_row.parents(".et_pb_column")[0];
                    $(column).find(".et_pb_grid_item").removeClass("on_last_row");
                    var pagination = $module.find(".et_pb_gallery_pagination");
                    0 === pagination.length && (pagination = $module.find(".et_pb_portofolio_pagination")), (0 === pagination.length || 0 < pagination.length && !pagination.is(":visible")) && ($first_in_last_row.addClass("on_last_row"), $first_in_last_row.nextAll().addClass("on_last_row"))
                }
            }
        }, 1)
    }, window.et_pb_set_tabs_height = function($tabs_module) {
        void 0 === $tabs_module && ($tabs_module = $(".et_pb_tabs")), $tabs_module.length && $tabs_module.each(function() {
            var $tab_controls = $(this).find(".et_pb_tabs_controls"),
                $all_tabs = $tab_controls.find("li"),
                max_height = 0,
                in_small_column = 0 < $(this).parents(".et_pb_column_1_3, .et_pb_column_1_4, .et_pb_column_3_8").length,
                on_small_screen = parseFloat($(window).width()) < 768,
                vertically_stacked = in_small_column || on_small_screen;
            vertically_stacked && $(this).addClass("et_pb_tabs_vertically_stacked"), $all_tabs.length && ($tab_controls.children("li").removeAttr("style"), $all_tabs.each(function() {
                var tab_height = $(this).outerHeight();
                vertically_stacked || max_height < tab_height && (max_height = tab_height)
            })), 0 !== max_height && $tab_controls.children("li").css("height", max_height)
        })
    }, window.et_pb_box_shadow_apply_overlay = function(el) {
        void 0 !== document.body.style.pointerEvents && (void 0 === document.documentMode || 11 <= document.documentMode) ? $(el).each(function() {
            $(this).children(".box-shadow-overlay").length || $(this).addClass("has-box-shadow-overlay").prepend('<div class="box-shadow-overlay"></div>')
        }) : $(el).addClass(".et-box-shadow-no-overlay")
    }, window.et_pb_init_nav_menu = function($et_menus) {
        $et_menus.each(function() {
            var $et_menu = $(this);
            $et_menu.data("et-is-menu-ready") || ($et_menu.find("li").hover(function() {
                window.et_pb_toggle_nav_menu($(this), "open")
            }, function() {
                window.et_pb_toggle_nav_menu($(this), "close")
            }), $("body").on("touchend", function(event) {
                $(event.target).closest("ul.nav, ul.menu").length < 1 && 0 < $(".et-hover").length && window.et_pb_toggle_nav_menu($(".et-hover"), "close")
            }), $et_menu.find("li.menu-item-has-children").on("touchend", function(event) {
                var $closest_li = $(event.target).closest(".menu-item");
                if ($closest_li.hasClass("menu-item-has-children")) {
                    var $this_el = $(this),
                        is_mega_menu_opened = 0 < $closest_li.closest(".mega-menu-parent.et-touch-hover").length;
                    if ($this_el.hasClass("et-touch-hover") || is_mega_menu_opened) {
                        void 0 !== $this_el.find(">a").attr("href") && (window.location = $this_el.find(">a").attr("href"))
                    } else {
                        var $opened_menu = $(event.target),
                            $already_opened_menus = $opened_menu.closest(".menu-item").siblings(".et-touch-hover");
                        if ($opened_menu.closest(".et-touch-hover").length < 1 && window.et_pb_toggle_nav_menu($(".et-hover"), "close", 0), $this_el.addClass("et-touch-hover"), 0 < $already_opened_menus.length) {
                            var $submenus_in_already_opened = $already_opened_menus.find(".et-touch-hover");
                            window.et_pb_toggle_nav_menu($already_opened_menus, "close"), window.et_pb_toggle_nav_menu($submenus_in_already_opened, "close")
                        }
                        window.et_pb_toggle_nav_menu($this_el, "open")
                    }
                    event.preventDefault(), event.stopPropagation()
                }
            }), $et_menu.find("li.mega-menu").each(function() {
                var $li_mega_menu = $(this),
                    li_mega_menu_item_count = $li_mega_menu.children("ul").children("li").length;
                li_mega_menu_item_count < 4 && $li_mega_menu.addClass("mega-menu-parent mega-menu-parent-" + li_mega_menu_item_count)
            }), $et_menu.data("et-is-menu-ready", "ready"))
        })
    }, window.et_pb_toggle_nav_menu = function($element, state, delay) {
        if ("open" === state) $element.closest("li.mega-menu").length && !$element.hasClass("mega-menu") || ($element.addClass("et-show-dropdown"), $element.removeClass("et-hover").addClass("et-hover"));
        else {
            var closeDelay = void 0 !== delay ? delay : 200;
            $element.removeClass("et-show-dropdown"), $element.removeClass("et-touch-hover"), setTimeout(function() {
                $element.hasClass("et-show-dropdown") || $element.removeClass("et-hover")
            }, closeDelay)
        }
    }, window.et_pb_apply_sticky_image_effect = function($sticky_image_el) {
        var $row = $sticky_image_el.closest(".et_pb_row"),
            $section = $row.closest(".et_pb_section"),
            $column = $sticky_image_el.closest(".et_pb_column"),
            $lastRowInSection = $section.children(".et_pb_row").last(),
            $lastColumnInRow = $row.children(".et_pb_column").last(),
            $lastModuleInColumn = $column.children(".et_pb_module").last();
        return !$row.is($lastRowInSection) || ($lastRowInSection.addClass("et-last-child"), !$sticky_image_el.is($lastModuleInColumn) || ($section.hasClass("et_pb_section_sticky") || $section.addClass("et_pb_section_sticky"), $column.addClass("et_pb_row_sticky"), void(!$section.hasClass("et_pb_section_sticky_mobile") && $column.is($lastColumnInRow) && $section.addClass("et_pb_section_sticky_mobile"))))
    }, window.et_pb_menu_inject_inline_centered_logo = function(menu) {
        var $listItems = $(menu).find("nav > ul > li"),
            index = Math.round($listItems.length / 2),
            li = window.et_pb_menu_inject_item(menu, index, !0);
        return li && $(li).addClass("et_pb_menu__logo-slot"), li
    }, window.et_pb_menu_inject_item = function(menu, index, fromTheBeginning) {
        fromTheBeginning = void 0 === fromTheBeginning || fromTheBeginning, index = Math.max(index, 0);
        var $list = $(menu).find("nav > ul:first");
        if (0 === $list.length) return null;
        var $listItems = $list.find("> li"),
            $li = $("<li></li>");
        if (0 === $listItems.length) $list.append($li);
        else {
            var action = fromTheBeginning ? "before" : "after",
                $sibling = fromTheBeginning ? $listItems.eq(index) : $listItems.eq($listItems.length - 1 - index);
            0 === $sibling.length && (action = fromTheBeginning ? "after" : "before", $sibling = fromTheBeginning ? $listItems.last() : $listItems.first()), $sibling[action]($li)
        }
        return $li.get(0)
    }, window.et_pb_reposition_menu_module_dropdowns = et_pb_debounce(function(menus) {
        $(menus || ".et_pb_menu, .et_pb_fullwidth_menu").each(function() {
            var $row = $(this).find(".et_pb_row:first");
            if (0 === $row.length) return !0;
            var offset = $row.offset().top,
                moduleClass = $(this).attr("class").replace(/^.*?(et_pb(?:_fullwidth)?_menu_\d+[^\s]*).*$/i, "$1"),
                isUpwards = $(this).find(".et_pb_menu__menu ul:first").hasClass("upwards"),
                css = "";
            $(this).find(".et_pb_menu__menu > nav > ul > li.mega-menu.menu-item-has-children").each(function() {
                var $li = $(this),
                    liId = $li.attr("class").replace(/^.*?(menu-item-\d+).*$/i, "$1"),
                    selector = "." + moduleClass + " li." + liId + " > .sub-menu";
                if (isUpwards) {
                    var linkOffset = Math.floor(offset + $row.outerHeight() - $li.offset().top) - 1;
                    css += selector + "{ bottom: " + linkOffset.toString() + "px !important; }"
                } else {
                    linkOffset = Math.floor($li.offset().top + $li.outerHeight() - offset) - 1;
                    css += selector + "{ top: " + linkOffset.toString() + "px !important; }"
                }
            });
            var $style = $("style.et-menu-style-" + moduleClass + ":first");
            0 === $style.length && (($style = $("<style></style>")).addClass("et-menu-style"), $style.addClass("et-menu-style-" + moduleClass), $style.appendTo($("head")));
            var oldCss = $style.html();
            css !== oldCss && $style.html(css)
        })
    }, 200)
}(jQuery);
/*!
 * jQuery Mobile v1.4.5
 * Copyright 2010, 2014 jQuery Foundation, Inc.
 * jquery.org/license
 */
! function(e, t, n) {
    "function" == typeof define && define.amd ? define(["jquery"], function(r) {
        return n(r, e, t), r.mobile
    }) : n(e.jQuery, e, t)
}(this, document, function(e, t, n, r) {
    (function(e, t, n, r) {
        function T(e) {
            for (; e && void 0 !== e.originalEvent;) e = e.originalEvent;
            return e
        }

        function N(t, n) {
            var s, o, a, l, c, h, p, d, v, i = t.type;
            if ((t = e.Event(t)).type = n, s = t.originalEvent, o = e.event.props, -1 < i.search(/^(mouse|click)/) && (o = f), s)
                for (p = o.length; p;) t[l = o[--p]] = s[l];
            if (-1 < i.search(/mouse(down|up)|click/) && !t.which && (t.which = 1), -1 !== i.search(/^touch/) && (i = (a = T(s)).touches, c = a.changedTouches, h = i && i.length ? i[0] : c && c.length ? c[0] : r))
                for (d = 0, v = u.length; d < v; d++) t[l = u[d]] = h[l];
            return t
        }

        function C(t) {
            for (var r, s, n = {}; t;) {
                for (s in r = e.data(t, i)) r[s] && (n[s] = n.hasVirtualBinding = !0);
                t = t.parentNode
            }
            return n
        }

        function k(t, n) {
            for (var r; t;) {
                if ((r = e.data(t, i)) && (!n || r[n])) return t;
                t = t.parentNode
            }
            return null
        }

        function A() {
            g = !0
        }

        function M() {
            g = !1
        }

        function _() {
            D(), c = setTimeout(function() {
                E = c = 0, v.length = 0, m = !1, A()
            }, e.vmouse.resetTimerDuration)
        }

        function D() {
            c && (clearTimeout(c), c = 0)
        }

        function P(t, n, r) {
            var i;
            return (r && r[t] || !r && k(n.target, t)) && (i = N(n, t), e(n.target).trigger(i)), i
        }

        function H(t) {
            var r, n = e.data(t.target, s);
            !m && (!E || E !== n) && ((r = P("v" + t.type, t)) && (r.isDefaultPrevented() && t.preventDefault(), r.isPropagationStopped() && t.stopPropagation(), r.isImmediatePropagationStopped() && t.stopImmediatePropagation()))
        }

        function B(t) {
            var r, i, o, n = T(t).touches;
            n && 1 === n.length && ((i = C(r = t.target)).hasVirtualBinding && (E = w++, e.data(r, s, E), D(), M(), d = !1, o = T(t).touches[0], h = o.pageX, p = o.pageY, P("vmouseover", t, i), P("vmousedown", t, i)))
        }

        function j(e) {
            g || (d || P("vmousecancel", e, C(e.target)), d = !0, _())
        }

        function F(t) {
            if (!g) {
                var n = T(t).touches[0],
                    r = d,
                    i = e.vmouse.moveDistanceThreshold,
                    s = C(t.target);
                (d = d || Math.abs(n.pageX - h) > i || Math.abs(n.pageY - p) > i) && !r && P("vmousecancel", t, s), P("vmousemove", t, s), _()
            }
        }

        function I(e) {
            if (!g) {
                A();
                var n, r, t = C(e.target);
                P("vmouseup", e, t), d || (n = P("vclick", e, t)) && n.isDefaultPrevented() && (r = T(e).changedTouches[0], v.push({
                    touchID: E,
                    x: r.clientX,
                    y: r.clientY
                }), m = !0), P("vmouseout", e, t), d = !1, _()
            }
        }

        function q(t) {
            var r, n = e.data(t, i);
            if (n)
                for (r in n)
                    if (n[r]) return !0;
            return !1
        }

        function R() {}

        function U(t) {
            var n = t.substr(1);
            return {
                setup: function() {
                    q(this) || e.data(this, i, {}), e.data(this, i)[t] = !0, l[t] = (l[t] || 0) + 1, 1 === l[t] && b.bind(n, H), e(this).bind(n, R), y && (l.touchstart = (l.touchstart || 0) + 1, 1 === l.touchstart && b.bind("touchstart", B).bind("touchend", I).bind("touchmove", F).bind("scroll", j))
                },
                teardown: function() {
                    --l[t], l[t] || b.unbind(n, H), y && (--l.touchstart, l.touchstart || b.unbind("touchstart", B).unbind("touchmove", F).unbind("touchend", I).unbind("scroll", j));
                    var r = e(this),
                        s = e.data(this, i);
                    s && (s[t] = !1), r.unbind(n, R), q(this) || r.removeData(i)
                }
            }
        }
        var S, x, i = "virtualMouseBindings",
            s = "virtualTouchID",
            o = "vmouseover vmousedown vmousemove vmouseup vclick vmouseout vmousecancel".split(" "),
            u = "clientX clientY pageX pageY screenX screenY".split(" "),
            a = e.event.mouseHooks ? e.event.mouseHooks.props : [],
            f = e.event.props.concat(a),
            l = {},
            c = 0,
            h = 0,
            p = 0,
            d = !1,
            v = [],
            m = !1,
            g = !1,
            y = "addEventListener" in n,
            b = e(n),
            w = 1,
            E = 0;
        for (e.vmouse = {
                moveDistanceThreshold: 10,
                clickDistanceThreshold: 10,
                resetTimerDuration: 1500
            }, x = 0; x < o.length; x++) e.event.special[o[x]] = U(o[x]);
        y && n.addEventListener("click", function(t) {
            var i, o, u, a, f, n = v.length,
                r = t.target;
            if (n)
                for (i = t.clientX, o = t.clientY, S = e.vmouse.clickDistanceThreshold, u = r; u;) {
                    for (a = 0; a < n; a++)
                        if (f = v[a], 0, u === r && Math.abs(f.x - i) < S && Math.abs(f.y - o) < S || e.data(u, s) === f.touchID) return t.preventDefault(), void t.stopPropagation();
                    u = u.parentNode
                }
        }, !0)
    })(e, 0, n),
    function(e) {
        e.mobile = {}
    }(e),
    function(e, t) {
        var r = {
            touch: "ontouchend" in n
        };
        e.mobile.support = e.mobile.support || {}, e.extend(e.support, r), e.extend(e.mobile.support, r)
    }(e),
    function(e, t, r) {
        function l(t, n, i, s) {
            var o = i.type;
            i.type = n, s ? e.event.trigger(i, r, t) : e.event.dispatch.call(t, i), i.type = o
        }
        var i = e(n),
            s = e.mobile.support.touch,
            o = "touchmove scroll",
            u = s ? "touchstart" : "mousedown",
            a = s ? "touchend" : "mouseup",
            f = s ? "touchmove" : "mousemove";
        e.each("touchstart touchmove touchend tap taphold swipe swipeleft swiperight scrollstart scrollstop".split(" "), function(t, n) {
            e.fn[n] = function(e) {
                return e ? this.bind(n, e) : this.trigger(n)
            }, e.attrFn && (e.attrFn[n] = !0)
        }), e.event.special.scrollstart = {
            enabled: !0,
            setup: function() {
                function s(e, n) {
                    l(t, (r = n) ? "scrollstart" : "scrollstop", e)
                }
                var r, i, t = this;
                e(t).bind(o, function(t) {
                    e.event.special.scrollstart.enabled && (r || s(t, !0), clearTimeout(i), i = setTimeout(function() {
                        s(t, !1)
                    }, 50))
                })
            },
            teardown: function() {
                e(this).unbind(o)
            }
        }, e.event.special.tap = {
            tapholdThreshold: 750,
            emitTapOnTaphold: !0,
            setup: function() {
                var t = this,
                    n = e(t),
                    r = !1;
                n.bind("vmousedown", function(s) {
                    function a() {
                        clearTimeout(u)
                    }

                    function f() {
                        a(), n.unbind("vclick", c).unbind("vmouseup", a), i.unbind("vmousecancel", f)
                    }

                    function c(e) {
                        f(), r || o !== e.target ? r && e.preventDefault() : l(t, "tap", e)
                    }
                    if (r = !1, s.which && 1 !== s.which) return !1;
                    var u, o = s.target;
                    n.bind("vmouseup", a).bind("vclick", c), i.bind("vmousecancel", f), u = setTimeout(function() {
                        e.event.special.tap.emitTapOnTaphold || (r = !0), l(t, "taphold", e.Event("taphold", {
                            target: o
                        }))
                    }, e.event.special.tap.tapholdThreshold)
                })
            },
            teardown: function() {
                e(this).unbind("vmousedown").unbind("vclick").unbind("vmouseup"), i.unbind("vmousecancel")
            }
        }, e.event.special.swipe = {
            scrollSupressionThreshold: 30,
            durationThreshold: 1e3,
            horizontalDistanceThreshold: 30,
            verticalDistanceThreshold: 30,
            getLocation: function(e) {
                var n = t.pageXOffset,
                    r = t.pageYOffset,
                    i = e.clientX,
                    s = e.clientY;
                return 0 === e.pageY && Math.floor(s) > Math.floor(e.pageY) || 0 === e.pageX && Math.floor(i) > Math.floor(e.pageX) ? (i -= n, s -= r) : (s < e.pageY - r || i < e.pageX - n) && (i = e.pageX - n, s = e.pageY - r), {
                    x: i,
                    y: s
                }
            },
            start: function(t) {
                var n = t.originalEvent.touches ? t.originalEvent.touches[0] : t,
                    r = e.event.special.swipe.getLocation(n);
                return {
                    time: (new Date).getTime(),
                    coords: [r.x, r.y],
                    origin: e(t.target)
                }
            },
            stop: function(t) {
                var n = t.originalEvent.touches ? t.originalEvent.touches[0] : t,
                    r = e.event.special.swipe.getLocation(n);
                return {
                    time: (new Date).getTime(),
                    coords: [r.x, r.y]
                }
            },
            handleSwipe: function(t, n, r, i) {
                if (n.time - t.time < e.event.special.swipe.durationThreshold && Math.abs(t.coords[0] - n.coords[0]) > e.event.special.swipe.horizontalDistanceThreshold && Math.abs(t.coords[1] - n.coords[1]) < e.event.special.swipe.verticalDistanceThreshold) {
                    var s = t.coords[0] > n.coords[0] ? "swipeleft" : "swiperight";
                    return l(r, "swipe", e.Event("swipe", {
                        target: i,
                        swipestart: t,
                        swipestop: n
                    }), !0), l(r, s, e.Event(s, {
                        target: i,
                        swipestart: t,
                        swipestop: n
                    }), !0), !0
                }
                return !1
            },
            eventInProgress: !1,
            setup: function() {
                var t, n = this,
                    r = e(n),
                    s = {};
                (t = e.data(this, "mobile-events")) || (t = {
                    length: 0
                }, e.data(this, "mobile-events", t)), t.length++, (t.swipe = s).start = function(t) {
                    if (!e.event.special.swipe.eventInProgress) {
                        e.event.special.swipe.eventInProgress = !0;
                        var r, o = e.event.special.swipe.start(t),
                            u = t.target,
                            l = !1;
                        s.move = function(t) {
                            o && !t.isDefaultPrevented() && (r = e.event.special.swipe.stop(t), l || (l = e.event.special.swipe.handleSwipe(o, r, n, u)) && (e.event.special.swipe.eventInProgress = !1), Math.abs(o.coords[0] - r.coords[0]) > e.event.special.swipe.scrollSupressionThreshold && t.preventDefault())
                        }, s.stop = function() {
                            l = !0, e.event.special.swipe.eventInProgress = !1, i.off(f, s.move), s.move = null
                        }, i.on(f, s.move).one(a, s.stop)
                    }
                }, r.on(u, s.start)
            },
            teardown: function() {
                var t, n;
                (t = e.data(this, "mobile-events")) && (n = t.swipe, delete t.swipe, t.length--, 0 === t.length && e.removeData(this, "mobile-events")), n && (n.start && e(this).off(u, n.start), n.move && i.off(f, n.move), n.stop && i.off(a, n.stop))
            }
        }, e.each({
            scrollstop: "scrollstart",
            taphold: "tap",
            swipeleft: "swipe.left",
            swiperight: "swipe.right"
        }, function(t, n) {
            e.event.special[t] = {
                setup: function() {
                    e(this).bind(n, e.noop)
                },
                teardown: function() {
                    e(this).unbind(n)
                }
            }
        })
    }(e, this)
});
var isBuilder = "object" == typeof window.ET_Builder;
/*! ET frontend-builder-scripts.js */
/*! ET frontend-builder-scripts.js */
! function($) {
    var top_window = isBuilder ? ET_Builder.Frames.top : window,
        $et_window = $(window),
        isBlockLayoutPreview = void 0 !== window.ETBlockLayoutPreview && $("body").hasClass("et-block-layout-preview"),
        $fullscreenSectionWindow = $(isBlockLayoutPreview ? window.top : window),
        $et_top_window = isBuilder ? top_window.jQuery(top_window) : $(window),
        isTB = $("body").hasClass("et-tb"),
        isBFB = $("body").hasClass("et-bfb"),
        isVB = isBuilder && !isBFB,
        isScrollOnAppWindow = function() {
            return !isBlockLayoutPreview && (isVB && ($("html").is(".et-fb-preview--wireframe") || $("html").is(".et-fb-preview--desktop")))
        },
        isBuilderModeZoom = function() {
            return isBuilder && $("html").is(".et-fb-preview--zoom")
        },
        isInsideVB = function($node) {
            return 0 < $node.closest("#et-fb-app").length
        };
    if (window.et_load_event_fired = !1, window.et_is_transparent_nav = $("body").hasClass("et_transparent_nav"), window.et_is_vertical_nav = $("body").hasClass("et_vertical_nav"), window.et_is_fixed_nav = $("body").hasClass("et_fixed_nav"), window.et_is_minified_js = $("body").hasClass("et_minified_js"), window.et_is_minified_css = $("body").hasClass("et_minified_css"), window.et_force_width_container_change = !1, jQuery.fn.reverse = [].reverse, jQuery.fn.closest_descendent = function(selector) {
            for (var $found, $current_children = this.children(); $current_children.length && !($found = $current_children.filter(selector)).length;) $current_children = $current_children.children();
            return $found
        }, window.et_pb_init_woo_star_rating = function($rating_selector) {
            var $existing_stars = $rating_selector.closest("div").find("p.stars");
            0 < $existing_stars.length && $existing_stars.remove(), $rating_selector.hide().before('<p class="stars">\t\t\t\t<span>\t\t\t\t\t<a class="star-1" href="#">1</a>\t\t\t\t\t<a class="star-2" href="#">2</a>\t\t\t\t\t<a class="star-3" href="#">3</a>\t\t\t\t\t<a class="star-4" href="#">4</a>\t\t\t\t\t<a class="star-5" href="#">5</a>\t\t\t\t</span>\t\t\t</p>')
        }, window.et_pb_init_modules = function() {
            $.et_pb_simple_slider = function(el, options) {
                var $et_slider_controls, $et_slider_carousel_controls, et_slider_timer, settings = $.extend({
                        slide: ".et-slide",
                        arrows: ".et-pb-slider-arrows",
                        prev_arrow: ".et-pb-arrow-prev",
                        next_arrow: ".et-pb-arrow-next",
                        controls: ".et-pb-controllers a",
                        carousel_controls: ".et_pb_carousel_item",
                        control_active_class: "et-pb-active-control",
                        previous_text: et_pb_custom.previous,
                        next_text: et_pb_custom.next,
                        fade_speed: 500,
                        use_arrows: !0,
                        use_controls: !0,
                        manual_arrows: "",
                        append_controls_to: "",
                        controls_below: !1,
                        controls_class: "et-pb-controllers",
                        slideshow: !1,
                        slideshow_speed: 7e3,
                        show_progress_bar: !1,
                        tabs_animation: !1,
                        use_carousel: !1,
                        active_slide: 0
                    }, options),
                    $et_slider = $(el),
                    $et_slide = $et_slider.closest_descendent(settings.slide),
                    et_slides_number = $et_slide.length,
                    et_fade_speed = settings.fade_speed,
                    et_active_slide = settings.active_slide,
                    controls_html = "",
                    carousel_html = "",
                    is_post_slider = ($et_slider.find(".et_pb_container").width(), $et_slider.hasClass("et_pb_post_slider")),
                    stop_slider = !1;
                if ($et_slider.et_animation_running = !1, $.data(el, "et_pb_simple_slider", $et_slider), $et_slide.eq(0).addClass("et-pb-active-slide"), $et_slider.attr("data-active-slide", $et_slide.data("slide-id")), settings.tabs_animation || $et_slider.hasClass("et_pb_bg_layout_dark") || $et_slider.hasClass("et_pb_bg_layout_light") || $et_slider.addClass(et_get_bg_layout_color($et_slide.eq(0))), settings.use_arrows && 1 < et_slides_number && ("" == settings.manual_arrows ? $et_slider.append('<div class="et-pb-slider-arrows"><a class="et-pb-arrow-prev" href="#"><span>' + settings.previous_text + '</span></a><a class="et-pb-arrow-next" href="#"><span>' + settings.next_text + "</span></a></div>") : $et_slider.append(settings.manual_arrows), $et_slider.find(settings.arrows), $et_slider.find(settings.prev_arrow), $et_slider.find(settings.next_arrow), $et_slider.on("click.et_pb_simple_slider", settings.next_arrow, function() {
                        return $et_slider.et_animation_running || $et_slider.et_slider_move_to("next"), !1
                    }), $et_slider.on("click.et_pb_simple_slider", settings.prev_arrow, function() {
                        return $et_slider.et_animation_running || $et_slider.et_slider_move_to("previous"), !1
                    }), $et_slider.on("swipeleft.et_pb_simple_slider", settings.slide, function(event) {
                        $(event.target).closest(".et-fb-popover-tinymce").length || $(event.target).closest(".et-fb-editable-element").length || $et_slider.et_slider_move_to("next")
                    }), $et_slider.on("swiperight.et_pb_simple_slider", settings.slide, function(event) {
                        $(event.target).closest(".et-fb-popover-tinymce").length || $(event.target).closest(".et-fb-editable-element").length || $et_slider.et_slider_move_to("previous")
                    })), settings.use_controls && 1 < et_slides_number) {
                    for (var i = 1; i <= et_slides_number; i++) controls_html += '<a href="#"' + (1 == i ? ' class="' + settings.control_active_class + '"' : "") + ">" + i + "</a>";
                    0 < $et_slider.find("video").length && (settings.controls_class += " et-pb-controllers-has-video-tag"), controls_html = '<div class="' + settings.controls_class + '">' + controls_html + "</div>", "" == settings.append_controls_to ? $et_slider.append(controls_html) : $(settings.append_controls_to).append(controls_html), ($et_slider_controls = settings.controls_below ? $et_slider.parent().find(settings.controls) : $et_slider.find(settings.controls)).on("click.et_pb_simple_slider", function() {
                        return $et_slider.et_animation_running || $et_slider.et_slider_move_to($(this).index()), !1
                    })
                }
                if (settings.use_carousel && 1 < et_slides_number) {
                    for (i = 1; i <= et_slides_number; i++) slide_id = i - 1, image_src = void 0 !== $et_slide.eq(slide_id).data("image") ? "url(" + $et_slide.eq(slide_id).data("image") + ")" : "none", carousel_html += '<div class="et_pb_carousel_item ' + (1 == i ? settings.control_active_class : "") + '" data-slide-id="' + slide_id + '"><div class="et_pb_video_overlay" href="#" style="background-image: ' + image_src + ';"><div class="et_pb_video_overlay_hover"><a href="#" class="et_pb_video_play"></a></div></div></div>';
                    carousel_html = '<div class="et_pb_carousel"><div class="et_pb_carousel_items">' + carousel_html + "</div></div>", $et_slider.after(carousel_html), ($et_slider_carousel_controls = $et_slider.siblings(".et_pb_carousel").find(settings.carousel_controls)).on("click.et_pb_simple_slider", function() {
                        if ($et_slider.et_animation_running) return !1;
                        var $this = $(this);
                        return $et_slider.et_slider_move_to($this.data("slide-id")), !1
                    })
                }

                function et_slider_auto_rotate() {
                    stop_slider || ($et_slider.hasClass("et_pb_pause_slider") ? setTimeout(function() {
                        et_slider_auto_rotate()
                    }, 2e3) : settings.slideshow && 1 < et_slides_number && !$et_slider.hasClass("et_slider_hovered") && (et_slider_timer = setTimeout(function() {
                        $et_slider.et_slider_move_to("next")
                    }, settings.slideshow_speed)))
                }

                function et_fix_slider_content_images() {
                    var $this_slider = $et_slider,
                        $slide_image_container = $this_slider.find(".et-pb-active-slide .et_pb_slide_image"),
                        $slide_video_container = $this_slider.find(".et-pb-active-slide .et_pb_slide_video"),
                        $slide = $slide_image_container.closest(".et_pb_slide"),
                        $slider = $slide.closest(".et_pb_slider"),
                        slide_height = parseFloat($slider.innerHeight()),
                        image_height = parseFloat(.8 * slide_height),
                        slide_image_container_height = parseFloat($slide_image_container.height()),
                        slide_video_container_height = parseFloat($slide_video_container.height());
                    isNaN(image_height) || ($slide_image_container.find("img").css("maxHeight", image_height + "px"), slide_image_container_height = parseInt($slide_image_container.height())), !isNaN(slide_image_container_height) && $slide.hasClass("et_pb_media_alignment_center") && $slide_image_container.css("marginTop", "-" + slide_image_container_height / 2 + "px"), isNaN(slide_video_container_height) || $slide_video_container.css("marginTop", "-" + slide_video_container_height / 2 + "px")
                }

                function et_get_bg_layout_color($slide) {
                    return $slide.hasClass("et_pb_bg_layout_light") ? "et_pb_bg_layout_light" : "et_pb_bg_layout_dark"
                }
                settings.slideshow && 1 < et_slides_number && $et_slider.on("mouseenter.et_pb_simple_slider", function() {
                    $et_slider.hasClass("et_slider_auto_ignore_hover") || ($et_slider.addClass("et_slider_hovered"), void 0 !== et_slider_timer && clearTimeout(et_slider_timer))
                }).on("mouseleave.et_pb_simple_slider", function() {
                    $et_slider.hasClass("et_slider_auto_ignore_hover") || ($et_slider.removeClass("et_slider_hovered"), et_slider_auto_rotate())
                }), et_slider_auto_rotate(), $et_slider.et_slider_destroy = function() {
                    void 0 !== et_slider_timer && clearTimeout(et_slider_timer), stop_slider = !0, $et_slider.off(".et_pb_simple_slider"), $et_slider.find(".et_pb_slide").css({
                        "z-index": "",
                        display: "",
                        opacity: ""
                    }), $et_slider.find(".et-pb-active-slide").removeClass("et-pb-active-slide"), $et_slider.find(".et-pb-moved-slide").removeClass("et-pb-moved-slide"), $et_slider.find(".et-pb-slider-arrows, .et-pb-controllers").remove(), $et_slider.siblings(".et_pb_carousel, .et-pb-controllers").remove(), $et_slider.removeData("et_pb_simple_slider")
                }, $et_slider.et_fix_slider_content_images = et_fix_slider_content_images, window.et_load_event_fired ? "function" == typeof et_fix_slider_height && et_fix_slider_height($et_slider) : $et_window.on("load", function() {
                    "function" == typeof et_fix_slider_height && et_fix_slider_height($et_slider)
                }), $et_window.on("resize.et_simple_slider", function() {
                    et_fix_slider_height($et_slider)
                }), $et_slider.et_slider_move_to = function(direction) {
                    var $active_slide = ($et_slide = $et_slider.closest_descendent(settings.slide)).eq(et_active_slide);
                    if ($et_slider.et_animation_running = !0, $et_slider.removeClass("et_slide_transition_to_next et_slide_transition_to_previous").addClass("et_slide_transition_to_" + direction), $et_slider.find(".et-pb-moved-slide").removeClass("et-pb-moved-slide"), "next" === direction || "previous" === direction) et_active_slide = "next" === direction ? et_active_slide + 1 < et_slides_number ? et_active_slide + 1 : 0 : 0 <= et_active_slide - 1 ? et_active_slide - 1 : et_slides_number - 1;
                    else {
                        if (et_active_slide === direction) return void($et_slider.et_animation_running = !1);
                        et_active_slide = direction
                    }
                    $et_slider.attr("data-active-slide", $et_slide.eq(et_active_slide).data("slide-id")), void 0 !== et_slider_timer && clearTimeout(et_slider_timer);
                    var $next_slide = $et_slide.eq(et_active_slide);
                    $et_slider.trigger("slide", {
                        current: $active_slide,
                        next: $next_slide
                    }), void 0 !== $active_slide.find("video")[0] && void 0 !== $active_slide.find("video")[0].player && $active_slide.find("video")[0].player.pause(), void 0 !== $next_slide.find("video")[0] && void 0 !== $next_slide.find("video")[0].player && $next_slide.find("video")[0].player.play();
                    var $active_slide_video = $active_slide.find(".et_pb_video_box iframe");
                    if ($active_slide_video.length) {
                        var active_slide_video_src = $active_slide_video.attr("src");
                        active_slide_video_src = (active_slide_video_src = (active_slide_video_src = active_slide_video_src.replace(/\?autoplay=1$/, "")).replace(/\?autoplay=1&(amp;)?/, "?")).replace(/&(amp;)?autoplay=1/, ""), setTimeout(function() {
                            $active_slide_video.attr({
                                src: active_slide_video_src
                            })
                        }, settings.fade_speed), $active_slide_video.parents(".et_pb_video_box").next(".et_pb_video_overlay").css({
                            display: "block",
                            opacity: 1
                        })
                    }
                    $et_slider.trigger("simple_slider_before_move_to", {
                        direction: direction,
                        next_slide: $next_slide
                    }), $et_slide.each(function() {
                        $(this).css("zIndex", 1)
                    }), $active_slide.css("zIndex", 2).removeClass("et-pb-active-slide").addClass("et-pb-moved-slide").data("slide-status", "inactive"), $next_slide.css({
                        display: "block",
                        opacity: 0
                    }).addClass("et-pb-active-slide").data("slide-status", "active"), et_fix_slider_content_images(), is_post_slider && setTimeout(function() {
                        var $et_pb_circle_counter = $(".et_pb_circle_counter"),
                            $et_pb_number_counter = $(".et_pb_number_counter");
                        window.et_fix_testimonial_inner_width(), $et_pb_circle_counter.length && window.et_pb_reinit_circle_counters($et_pb_circle_counter), $et_pb_number_counter.length && window.et_pb_reinit_number_counters($et_pb_number_counter), window.et_reinit_waypoint_modules()
                    }, 1e3), settings.use_controls && $et_slider_controls.removeClass(settings.control_active_class).eq(et_active_slide).addClass(settings.control_active_class), settings.use_carousel && $et_slider_carousel_controls && $et_slider_carousel_controls.removeClass(settings.control_active_class).eq(et_active_slide).addClass(settings.control_active_class), settings.tabs_animation ? ($next_slide.css({
                        display: "none",
                        opacity: 0
                    }), $active_slide.addClass("et_slide_transition").css({
                        display: "block",
                        opacity: 1
                    }).animate({
                        opacity: 0
                    }, et_fade_speed, function() {
                        $(this).css("display", "none").removeClass("et_slide_transition"), $next_slide.css({
                            display: "block",
                            opacity: 0
                        }).animate({
                            opacity: 1
                        }, et_fade_speed, function() {
                            $et_slider.et_animation_running = !1, $et_slider.trigger("simple_slider_after_move_to", {
                                next_slide: $next_slide
                            })
                        })
                    })) : ($next_slide.animate({
                        opacity: 1
                    }, et_fade_speed), $active_slide.addClass("et_slide_transition").css({
                        display: "list-item",
                        opacity: 1
                    }).animate({
                        opacity: 0
                    }, et_fade_speed, function() {
                        var active_slide, $et_video, et_video_src, active_slide_layout_bg_color = et_get_bg_layout_color($active_slide),
                            next_slide_layout_bg_color = et_get_bg_layout_color($next_slide);
                        isBuilder ? $(this).removeClass("et_slide_transition") : $(this).css("display", "none").removeClass("et_slide_transition"), (active_slide = $active_slide).has("iframe").length ? (et_video_src = ($et_video = active_slide.find("iframe")).attr("src"), $et_video.attr("src", ""), $et_video.attr("src", et_video_src)) : active_slide.has("video").length && (active_slide.find(".et_pb_section_video_bg").length || ($et_video = active_slide.find("video"))[0].pause()), $et_slider.removeClass(active_slide_layout_bg_color).addClass(next_slide_layout_bg_color), $et_slider.et_animation_running = !1, $et_slider.trigger("simple_slider_after_move_to", {
                            next_slide: $next_slide
                        })
                    })), $next_slide.find(".et_parallax_bg").length && window.et_pb_parallax_init($next_slide.find(".et_parallax_bg")), et_slider_auto_rotate()
                }
            }, $.fn.et_pb_simple_slider = function(options) {
                return this.each(function() {
                    var slider = $.data(this, "et_pb_simple_slider");
                    return slider || new $.et_pb_simple_slider(this, options)
                })
            };
            var et_hash_module_seperator = "||",
                et_hash_module_param_seperator = "|";

            function et_set_hash(module_state_hash) {
                if (module_id = module_state_hash.split(et_hash_module_param_seperator)[0], $("#" + module_id).length) {
                    if (window.location.hash) {
                        var hash = window.location.hash.substring(1),
                            new_hash = [];
                        if (-1 !== hash.indexOf(et_hash_module_seperator, 0)) {
                            modules = hash.split(et_hash_module_seperator);
                            for (var in_hash = !1, i = 0; i < modules.length; i++) {
                                modules[i].split(et_hash_module_param_seperator)[0] === module_id ? (new_hash.push(module_state_hash), in_hash = !0) : new_hash.push(modules[i])
                            }
                            in_hash || new_hash.push(module_state_hash)
                        } else {
                            module_params = hash.split(et_hash_module_param_seperator), module_params[0] !== module_id && new_hash.push(hash), new_hash.push(module_state_hash)
                        }
                        hash = new_hash.join(et_hash_module_seperator)
                    } else hash = module_state_hash;
                    var yScroll = document.body.scrollTop;
                    window.location.hash = hash, document.body.scrollTop = yScroll
                }
            }

            function et_init_audio_modules() {
                var $node;
                void 0 !== jQuery.fn.mediaelementplayer && ($node = ".et_audio_container", "string" == typeof $node && ($node = $($node)), $node.not("#et-fb-app *")).each(function() {
                    var $this = jQuery(this);
                    0 < $this.find(".mejs-container:first").length || $this.find("audio").mediaelementplayer(window._wpmejsSettings)
                })
            }
            $.et_pb_simple_carousel = function(el, options) {
                var settings = $.extend({
                        slide_duration: 500
                    }, options),
                    $et_carousel = $(el),
                    $carousel_items = $et_carousel.find(".et_pb_carousel_items"),
                    $the_carousel_items = $carousel_items.find(".et_pb_carousel_item");

                function set_carousel_height($the_carousel) {
                    $the_carousel_items.width();
                    var carousel_items_height = $the_carousel_items.height();
                    $the_carousel.parent().hasClass("et_pb_with_border") && (carousel_items_height = $the_carousel_items.outerHeight()), $carousel_items.css("height", carousel_items_height + "px")
                }

                function set_carousel_columns($the_carousel) {
                    var columns = 3,
                        $carousel_parent = $the_carousel.parents('.et_pb_column:not(".et_pb_specialty_column")');
                    if ($carousel_parent.hasClass("et_pb_column_4_4") || $carousel_parent.hasClass("et_pb_column_3_4") || $carousel_parent.hasClass("et_pb_column_2_3") ? 768 <= $et_window.width() && (columns = 4) : $carousel_parent.hasClass("et_pb_column_1_4") ? $et_window.width() <= 480 && 980 <= $et_window.width() && (columns = 2) : $carousel_parent.hasClass("et_pb_column_3_5") ? columns = 4 : ($carousel_parent.hasClass("et_pb_column_1_5") || $carousel_parent.hasClass("et_pb_column_1_6")) && (columns = 2), columns !== $carousel_items.data("portfolio-columns") && !$the_carousel.data("columns_setting_up")) {
                        $the_carousel.data("columns_setting_up", !0), $carousel_items.removeClass("columns-" + $carousel_items.data("portfolio-columns")), $carousel_items.addClass("columns-" + columns), $carousel_items.data("portfolio-columns", columns), $carousel_items.find(".et-carousel-group").length && ($the_carousel_items.appendTo($carousel_items), $carousel_items.find(".et-carousel-group").remove());
                        var the_carousel_items = $carousel_items.data("items"),
                            $carousel_group = $('<div class="et-carousel-group active">').appendTo($carousel_items);
                        for ($the_carousel_items.data("position", ""), the_carousel_items.length <= columns ? $carousel_items.find(".et-pb-slider-arrows").hide() : $carousel_items.find(".et-pb-slider-arrows").show(), position = 1, x = 0; x < the_carousel_items.length; x++, position++) x < columns ? ($(the_carousel_items[x]).show(), $(the_carousel_items[x]).appendTo($carousel_group), $(the_carousel_items[x]).data("position", position), $(the_carousel_items[x]).addClass("position_" + position)) : (position = $(the_carousel_items[x]).data("position"), $(the_carousel_items[x]).removeClass("position_" + position), $(the_carousel_items[x]).data("position", ""), $(the_carousel_items[x]).hide());
                        $the_carousel.data("columns_setting_up", !1)
                    }
                }
                $et_carousel.et_animation_running = !1, $et_carousel.addClass("container-width-change-notify").on("containerWidthChanged", function(event) {
                    set_carousel_columns($et_carousel), set_carousel_height($et_carousel)
                }), $carousel_items.data("items", $the_carousel_items.toArray()), $et_carousel.data("columns_setting_up", !1), $carousel_items.prepend('<div class="et-pb-slider-arrows"><a class="et-pb-slider-arrow et-pb-arrow-prev" href="#"><span>' + et_pb_custom.previous + '</span></a><a class="et-pb-slider-arrow et-pb-arrow-next" href="#"><span>' + et_pb_custom.next + "</span></a></div>"), set_carousel_columns($et_carousel), set_carousel_height($et_carousel), $et_carousel_next = $et_carousel.find(".et-pb-arrow-next"), $et_carousel_prev = $et_carousel.find(".et-pb-arrow-prev"), $et_carousel.on("click", ".et-pb-arrow-next", function() {
                    return $et_carousel.et_animation_running || $et_carousel.et_carousel_move_to("next"), !1
                }), $et_carousel.on("click", ".et-pb-arrow-prev", function() {
                    return $et_carousel.et_animation_running || $et_carousel.et_carousel_move_to("previous"), !1
                }), $et_carousel.on("swipeleft", function() {
                    $et_carousel.et_carousel_move_to("next")
                }), $et_carousel.on("swiperight", function() {
                    $et_carousel.et_carousel_move_to("previous")
                }), $et_carousel.et_carousel_move_to = function(direction) {
                    var $active_carousel_group = $carousel_items.find(".et-carousel-group.active"),
                        items = $carousel_items.data("items"),
                        columns = $carousel_items.data("portfolio-columns");
                    $et_carousel.et_animation_running = !0;
                    var left = 0;
                    $active_carousel_group.children().each(function() {
                        $(this).css({
                            position: "absolute",
                            left: left
                        }), left += $(this).outerWidth(!0)
                    }), $("body").addClass("et-pb-is-sliding-carousel");
                    var carousel_group_item_size = $active_carousel_group.find(".et_pb_carousel_item").size(),
                        carousel_group_item_progress = 0;
                    if ("next" == direction) {
                        var $next_carousel_group, current_position = 1,
                            next_position = 1,
                            next_items_start = active_items_end = (active_items_start = items.indexOf($active_carousel_group.children().first()[0])) + columns,
                            next_items_end = next_items_start + columns;
                        for (($next_carousel_group = $('<div class="et-carousel-group next" style="display: none;left: 100%;position: absolute;top: 0;">').insertAfter($active_carousel_group)).css({
                                width: $active_carousel_group.innerWidth()
                            }).show(), x = 0, total = 0; total >= active_items_start && total < active_items_end && ($(items[x]).addClass("changing_position current_position current_position_" + current_position), $(items[x]).data("current_position", current_position), current_position++), total >= next_items_start && total < next_items_end && ($(items[x]).data("next_position", next_position), $(items[x]).addClass("changing_position next_position next_position_" + next_position), $(items[x]).hasClass("current_position") ? ($(items[x]).clone(!0).appendTo($active_carousel_group).hide().addClass("delayed_container_append_dup").attr("id", $(items[x]).attr("id") + "-dup"), $(items[x]).addClass("delayed_container_append")) : $(items[x]).addClass("container_append"), next_position++), !(columns < next_position); x++, total++) x >= items.length - 1 && (x = -1);
                        var sorted = $carousel_items.find(".container_append, .delayed_container_append_dup").sort(function(a, b) {
                            var el_a_position = parseInt($(a).data("next_position")),
                                el_b_position = parseInt($(b).data("next_position"));
                            return el_a_position < el_b_position ? -1 : el_b_position < el_a_position ? 1 : 0
                        });
                        $(sorted).show().appendTo($next_carousel_group);
                        left = 0;
                        $next_carousel_group.children().each(function() {
                            $(this).css({
                                position: "absolute",
                                left: left
                            }), left += $(this).outerWidth(!0)
                        }), $active_carousel_group.animate({
                            left: "-100%"
                        }, {
                            duration: settings.slide_duration,
                            progress: function(animation, progress) {
                                carousel_group_item_progress / carousel_group_item_size < progress && (carousel_group_item_progress++, $active_carousel_group.find(".et_pb_carousel_item:nth-child(" + carousel_group_item_progress + ")").addClass("item-fade-out"), $next_carousel_group.find(".et_pb_carousel_item:nth-child(" + carousel_group_item_progress + ")").addClass("item-fade-in"))
                            },
                            complete: function() {
                                $carousel_items.find(".delayed_container_append").each(function() {
                                    left = $("#" + $(this).attr("id") + "-dup").css("left"), $(this).css({
                                        position: "absolute",
                                        left: left
                                    }), $(this).appendTo($next_carousel_group)
                                }), $active_carousel_group.removeClass("active"), $active_carousel_group.children().each(function() {
                                    position = $(this).data("position"), current_position = $(this).data("current_position"), $(this).removeClass("position_" + position + " changing_position current_position current_position_" + current_position), $(this).data("position", ""), $(this).data("current_position", ""), $(this).hide(), $(this).css({
                                        position: "",
                                        left: ""
                                    }), $(this).appendTo($carousel_items)
                                }), $carousel_items.find(".item-fade-out").removeClass("item-fade-out"), $next_carousel_group.find(".item-fade-in").removeClass("item-fade-in"), $("body").removeClass("et-pb-is-sliding-carousel"), $active_carousel_group.remove()
                            }
                        }), next_left = $active_carousel_group.width() + parseInt($the_carousel_items.first().css("marginRight").slice(0, -2)), $next_carousel_group.addClass("active").css({
                            position: "absolute",
                            top: 0,
                            left: next_left
                        }), $next_carousel_group.animate({
                            left: "0%"
                        }, {
                            duration: settings.slide_duration,
                            complete: function() {
                                $next_carousel_group.removeClass("next").addClass("active").css({
                                    position: "",
                                    width: "",
                                    top: "",
                                    left: ""
                                }), $next_carousel_group.find(".changing_position").each(function(index) {
                                    position = $(this).data("position"), current_position = $(this).data("current_position"), next_position = $(this).data("next_position"), $(this).removeClass("container_append delayed_container_append position_" + position + " changing_position current_position current_position_" + current_position + " next_position next_position_" + next_position), $(this).data("current_position", ""), $(this).data("next_position", ""), $(this).data("position", index + 1)
                                }), $next_carousel_group.children().css({
                                    position: "",
                                    left: ""
                                }), $next_carousel_group.find(".delayed_container_append_dup").remove(), $et_carousel.et_animation_running = !1
                            }
                        })
                    } else if ("previous" == direction) {
                        current_position = columns;
                        var $prev_carousel_group, active_items_start, active_items_end, prev_position = columns,
                            columns_span = columns - 1,
                            prev_items_start = (active_items_end = (active_items_start = items.indexOf($active_carousel_group.children().last()[0])) - columns_span) - 1,
                            prev_items_end = prev_items_start - columns_span;
                        for (($prev_carousel_group = $('<div class="et-carousel-group prev" style="display: none;left: 100%;position: absolute;top: 0;">').insertBefore($active_carousel_group)).css({
                                left: "-" + $active_carousel_group.innerWidth(),
                                width: $active_carousel_group.innerWidth()
                            }).show(), x = items.length - 1, total = items.length - 1; total <= active_items_start && total >= active_items_end && ($(items[x]).addClass("changing_position current_position current_position_" + current_position), $(items[x]).data("current_position", current_position), current_position--), total <= prev_items_start && total >= prev_items_end && ($(items[x]).data("prev_position", prev_position), $(items[x]).addClass("changing_position prev_position prev_position_" + prev_position), $(items[x]).hasClass("current_position") ? ($(items[x]).clone(!0).appendTo($active_carousel_group).addClass("delayed_container_append_dup").attr("id", $(items[x]).attr("id") + "-dup"), $(items[x]).addClass("delayed_container_append")) : $(items[x]).addClass("container_append"), prev_position--), !(prev_position <= 0); x--, total--) 0 == x && (x = items.length);
                        sorted = $carousel_items.find(".container_append, .delayed_container_append_dup").sort(function(a, b) {
                            var el_a_position = parseInt($(a).data("prev_position")),
                                el_b_position = parseInt($(b).data("prev_position"));
                            return el_a_position < el_b_position ? -1 : el_b_position < el_a_position ? 1 : 0
                        });
                        $(sorted).show().appendTo($prev_carousel_group);
                        left = 0;
                        $prev_carousel_group.children().each(function() {
                            $(this).css({
                                position: "absolute",
                                left: left
                            }), left += $(this).outerWidth(!0)
                        }), $active_carousel_group.animate({
                            left: "100%"
                        }, {
                            duration: settings.slide_duration,
                            progress: function(animation, progress) {
                                if (carousel_group_item_progress / carousel_group_item_size < progress) {
                                    var group_item_nth = carousel_group_item_size - carousel_group_item_progress;
                                    $active_carousel_group.find(".et_pb_carousel_item:nth-child(" + group_item_nth + ")").addClass("item-fade-out"), $prev_carousel_group.find(".et_pb_carousel_item:nth-child(" + group_item_nth + ")").addClass("item-fade-in"), carousel_group_item_progress++
                                }
                            },
                            complete: function() {
                                $carousel_items.find(".delayed_container_append").reverse().each(function() {
                                    left = $("#" + $(this).attr("id") + "-dup").css("left"), $(this).css({
                                        position: "absolute",
                                        left: left
                                    }), $(this).prependTo($prev_carousel_group)
                                }), $active_carousel_group.removeClass("active"), $active_carousel_group.children().each(function() {
                                    position = $(this).data("position"), current_position = $(this).data("current_position"), $(this).removeClass("position_" + position + " changing_position current_position current_position_" + current_position), $(this).data("position", ""), $(this).data("current_position", ""), $(this).hide(), $(this).css({
                                        position: "",
                                        left: ""
                                    }), $(this).appendTo($carousel_items)
                                }), $carousel_items.find(".item-fade-out").removeClass("item-fade-out"), $prev_carousel_group.find(".item-fade-in").removeClass("item-fade-in"), $("body").removeClass("et-pb-is-sliding-carousel"), $active_carousel_group.remove()
                            }
                        }), prev_left = -1 * $active_carousel_group.width() - parseInt($the_carousel_items.first().css("marginRight").slice(0, -2)), $prev_carousel_group.addClass("active").css({
                            position: "absolute",
                            top: 0,
                            left: prev_left
                        }), $prev_carousel_group.animate({
                            left: "0%"
                        }, {
                            duration: settings.slide_duration,
                            complete: function() {
                                $prev_carousel_group.removeClass("prev").addClass("active").css({
                                    position: "",
                                    width: "",
                                    top: "",
                                    left: ""
                                }), $prev_carousel_group.find(".delayed_container_append_dup").remove(), $prev_carousel_group.find(".changing_position").each(function(index) {
                                    position = $(this).data("position"), current_position = $(this).data("current_position"), prev_position = $(this).data("prev_position"), $(this).removeClass("container_append delayed_container_append position_" + position + " changing_position current_position current_position_" + current_position + " prev_position prev_position_" + prev_position), $(this).data("current_position", ""), $(this).data("prev_position", ""), position = index + 1, $(this).data("position", position), $(this).addClass("position_" + position)
                                }), $prev_carousel_group.children().css({
                                    position: "",
                                    left: ""
                                }), $et_carousel.et_animation_running = !1
                            }
                        })
                    }
                }
            }, $.fn.et_pb_simple_carousel = function(options) {
                return this.each(function() {
                    var carousel = $.data(this, "et_pb_simple_carousel");
                    return carousel || new $.et_pb_simple_carousel(this, options)
                })
            }, $(document).ready(function() {
                $(window).trigger("et_pb_before_init_modules");
                var $et_pb_slider = $(".et_pb_slider"),
                    $et_pb_tabs = $(".et_pb_tabs"),
                    $et_pb_video_section = $(".et_pb_section_video_bg"),
                    $et_pb_newsletter_button = $(".et_pb_newsletter_button"),
                    $et_pb_filterable_portfolio = $(".et_pb_filterable_portfolio"),
                    $et_pb_fullwidth_portfolio = $(".et_pb_fullwidth_portfolio"),
                    $et_pb_gallery = $(".et_pb_gallery"),
                    $et_pb_countdown_timer = $(".et_pb_countdown_timer"),
                    $et_post_gallery = $(".et_post_gallery"),
                    $et_lightbox_image = $(".et_pb_lightbox_image"),
                    $et_pb_map = $(".et_pb_map_container"),
                    $et_pb_circle_counter = $(".et_pb_circle_counter"),
                    $et_pb_number_counter = $(".et_pb_number_counter"),
                    $et_pb_parallax = $(".et_parallax_bg"),
                    $et_pb_background_layout_hoverable = ($(".et_pb_shop"), $(".single.et_pb_pagebuilder_layout.et_full_width_page"), $("[data-background-layout][data-background-layout-hover]")),
                    et_is_mobile_device = null !== navigator.userAgent.match(/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/),
                    et_is_ipad = navigator.userAgent.match(/iPad/),
                    et_is_ie9 = null !== navigator.userAgent.match(/MSIE 9.0/),
                    et_all_rows = $(".et_pb_row"),
                    $et_container = window.et_pb_custom && !window.et_pb_custom.is_builder_plugin_used ? $(".container") : et_all_rows,
                    et_container_width = $et_container.width(),
                    et_hide_nav = ($("body").hasClass("et_vertical_fixed"), $("body").hasClass("rtl"), $("body").hasClass("et_hide_nav")),
                    $top_header = ($("body").hasClass("et_header_style_left"), $("#top-header")),
                    $et_main_content_first_row = ($("#main-header"), $("#page-container"), $(".et_transparent_nav"), $("body.et_pb_pagebuilder_layout .et_pb_section:first-child"), $("#main-content .container:first-child")),
                    $et_sticky_image = ($et_main_content_first_row.find(".et_post_meta_wrapper:first").find("h1"), $et_main_content_first_row.find(".entry-content:first"), $("body.single-post"), $(".et_header_style_split"), $("#et-top-navigation"), $("#logo"), $(".et_pb_image_sticky")),
                    $et_pb_counter_amount = $(".et_pb_counter_amount"),
                    $et_pb_carousel = $(".et_pb_carousel"),
                    $et_menu_selector = window.et_pb_custom && window.et_pb_custom.is_divi_theme_used ? $("ul.nav") : $(".et_pb_fullwidth_menu ul.nav"),
                    et_pb_ab_bounce_rate = window.et_pb_custom && 1e3 * window.et_pb_custom.ab_bounce_rate,
                    et_pb_ab_logged_status = {},
                    et_animation_breakpoint = "";
                $.each(et_pb_custom.ab_tests, function(index, test) {
                    et_pb_ab_logged_status[test.post_id] = {
                        read_page: !1,
                        read_goal: !1,
                        view_goal: !1,
                        click_goal: !1,
                        con_goal: !1,
                        con_short: !1
                    }
                });
                var grid_containers = $(".et_pb_grid_item").parent().get(),
                    $hover_gutter_modules = $(".et_pb_gutter_hover"),
                    $et_top_menu = $et_menu_selector;
                window.et_pb_slider_init = function($this_slider) {
                    var et_slider_settings = {
                        fade_speed: 700,
                        slide: $this_slider.hasClass("et_pb_gallery") ? ".et_pb_gallery_item" : ".et_pb_slide"
                    };
                    if ($this_slider.hasClass("et_pb_slider_no_arrows") && (et_slider_settings.use_arrows = !1), $this_slider.hasClass("et_pb_slider_no_pagination") && (et_slider_settings.use_controls = !1), $this_slider.hasClass("et_slider_auto")) {
                        et_slider_settings.slideshow = !0;
                        var et_slider_autospeed = /et_slider_speed_(\d+)/g.exec($this_slider.attr("class"));
                        et_slider_settings.slideshow_speed = null === et_slider_autospeed ? 10 : et_slider_autospeed[1]
                    }
                    $this_slider.parent().hasClass("et_pb_video_slider") && (et_slider_settings.controls_below = !0, et_slider_settings.append_controls_to = $this_slider.parent(), setTimeout(function() {
                        $(".et_pb_preload").removeClass("et_pb_preload")
                    }, 500)), $this_slider.hasClass("et_pb_slider_carousel") && (et_slider_settings.use_carousel = !0), $this_slider.et_pb_simple_slider(et_slider_settings)
                };
                if ($(".et_pb_ab_shop_conversion").length && void 0 !== et_pb_get_cookie_value("et_pb_ab_shop_log") && "" !== et_pb_get_cookie_value("et_pb_ab_shop_log")) {
                    var shop_log_data = et_pb_get_cookie_value("et_pb_ab_shop_log").split("_");
                    page_id = shop_log_data[0], subject_id = shop_log_data[1], test_id = shop_log_data[2], et_pb_ab_update_stats("con_goal", page_id, subject_id, test_id), et_pb_set_cookie(0, "et_pb_ab_shop_log=true")
                }

                function et_get_column_types($columns) {
                    var row_class = "";
                    if ($columns.length)
                        if ($columns.each(function() {
                                var column_type = $(this).attr("class").split("et_pb_column_")[1],
                                    column_type_updated = (void 0 !== column_type ? column_type.split(" ", 1)[0] : "4_4").replace("_", "-").trim();
                                row_class += "_" + column_type_updated
                            }), -1 !== row_class.indexOf("1-4") || -1 !== row_class.indexOf("1-5_1-5") || -1 !== row_class.indexOf("1-6_1-6")) switch (row_class) {
                            case "_1-4_1-4_1-4_1-4":
                                row_class = "et_pb_row_4col";
                                break;
                            case "_1-5_1-5_1-5_1-5_1-5":
                                row_class = "et_pb_row_5col";
                                break;
                            case "_1-6_1-6_1-6_1-6_1-6_1-6":
                                row_class = "et_pb_row_6col";
                                break;
                            default:
                                row_class = "et_pb_row" + row_class
                        } else row_class = "";
                    return row_class
                }
                if ($(".et_pb_ab_split_track").length && $(".et_pb_ab_split_track").each(function() {
                        var cookies_name = "et_pb_ab_shortcode_track_" + $(this).data("test_id");
                        if (void 0 !== et_pb_get_cookie_value(cookies_name) && "" !== et_pb_get_cookie_value(cookies_name)) {
                            var track_data = et_pb_get_cookie_value(cookies_name).split("_");
                            page_id = track_data[0], subject_id = track_data[1], test_id = track_data[2], et_pb_ab_update_stats("con_short", page_id, subject_id, test_id), et_pb_set_cookie(0, cookies_name + "=true")
                        }
                    }), 0 < $hover_gutter_modules.length && $hover_gutter_modules.each(function() {
                        var $thisEl = $(this),
                            originalGutter = $thisEl.data("original_gutter"),
                            hoverGutter = $thisEl.data("hover_gutter");
                        $thisEl.hover(function() {
                            $thisEl.removeClass("et_pb_gutters" + originalGutter), $thisEl.addClass("et_pb_gutters" + hoverGutter)
                        }, function() {
                            $thisEl.removeClass("et_pb_gutters" + hoverGutter), $thisEl.addClass("et_pb_gutters" + originalGutter)
                        })
                    }), window.et_pb_custom && window.et_pb_custom.is_ab_testing_active && $.each(et_pb_custom.ab_tests, function(index, test) {
                        ! function(test) {
                            if (isBuilder) return;
                            var $et_pb_ab_goal = et_builder_ab_get_goal_node(test.post_id),
                                et_ab_subject_id = et_pb_get_subject_id(test.post_id);
                            $.each(et_pb_ab_logged_status[test.post_id], function(key) {
                                var cookie_subject = "click_goal" === key || "con_short" === key ? "" : et_ab_subject_id;
                                et_pb_ab_logged_status[test.post_id][key] = et_pb_check_cookie_value("et_pb_ab_" + key + "_" + test.post_id + test.test_id + cookie_subject, "true")
                            }), et_pb_ab_logged_status[test.post_id].read_page || setTimeout(function() {
                                et_pb_ab_update_stats("read_page", test.post_id, void 0, test.test_id)
                            }, et_pb_ab_bounce_rate);
                            "on" !== et_pb_custom.is_shortcode_tracking || et_pb_ab_logged_status[test.post_id].con_short || et_pb_set_cookie(365, "et_pb_ab_shortcode_track_" + test.post_id + "=" + test.post_id + "_" + et_ab_subject_id + "_" + test.test_id);
                            if ($et_pb_ab_goal.length)
                                if ($et_pb_ab_goal.hasClass("et_pb_module") && ($et_pb_ab_goal.hasClass("et_pb_button") || $et_pb_ab_goal.find(".et_pb_button").length)) {
                                    if (!$et_pb_ab_goal.hasClass("et_pb_contact_form_container") && !$et_pb_ab_goal.hasClass("et_pb_newsletter")) {
                                        var $goal_button = $et_pb_ab_goal.hasClass("et_pb_button") ? $et_pb_ab_goal : $et_pb_ab_goal.find(".et_pb_button");
                                        if ($et_pb_ab_goal.hasClass("et_pb_comments_module")) {
                                            var page_url = window.location.href,
                                                comment_submitted = -1 !== page_url.indexOf("#comment-"),
                                                log_conversion = et_pb_check_cookie_value("et_pb_ab_comment_log_" + test.post_id + test.test_id, "true");
                                            comment_submitted && log_conversion && (et_pb_ab_update_stats("con_goal", test.post_id, void 0, test.test_id), et_pb_set_cookie(0, "et_pb_ab_comment_log_" + test.post_id + test.test_id + "=true"))
                                        }
                                        $goal_button.click(function() {
                                            !$et_pb_ab_goal.hasClass("et_pb_comments_module") || et_pb_ab_logged_status[test.post_id].con_goal ? et_pb_maybe_log_event($et_pb_ab_goal, "click_goal") : et_pb_set_cookie(365, "et_pb_ab_comment_log_" + test.post_id + test.test_id + "=true")
                                        })
                                    }
                                } else $et_pb_ab_goal.click(function() {
                                    $et_pb_ab_goal.hasClass("et_pb_shop") && !et_pb_ab_logged_status[test.post_id].con_goal && et_pb_set_cookie(365, "et_pb_ab_shop_log=" + test.post_id + "_" + et_ab_subject_id + "_" + test.test_id), et_pb_maybe_log_event($et_pb_ab_goal, "click_goal")
                                })
                        }(test)
                    }), et_all_rows.length && et_all_rows.each(function() {
                        var $this_row = $(this),
                            row_class = "";
                        "" !== (row_class = et_get_column_types($this_row.find(">.et_pb_column"))) && $this_row.addClass(row_class), $this_row.find(".et_pb_row_inner").length && $this_row.find(".et_pb_row_inner").each(function() {
                            var $this_row_inner = $(this);
                            "" !== (row_class = et_get_column_types($this_row_inner.find(".et_pb_column"))) && $this_row_inner.addClass(row_class)
                        });
                        var zIndexIncreaseMax = $this_row.parents(".et_pb_section.section_has_divider").length ? 6 : 3,
                            zIndexShouldIncrease = isNaN($this_row.css("z-index")) || $this_row.css("z-index") < zIndexIncreaseMax;
                        $this_row.find(".et_pb_module.et_pb_menu").length && zIndexShouldIncrease && $this_row.css("z-index", zIndexIncreaseMax)
                    }), window.et_pb_init_nav_menu($et_top_menu), $et_sticky_image.each(function() {
                        window.et_pb_apply_sticky_image_effect($(this))
                    }), et_is_mobile_device && ($(".et_pb_section_video_bg").each(function() {
                        var $this_el = $(this);
                        $this_el.closest(".et_pb_preload").removeClass("et_pb_preload"), $this_el.hasClass("opened") && $this_el.remove()
                    }), $("body").addClass("et_mobile_device"), et_is_ipad || $("body").addClass("et_mobile_device_not_ipad")), et_is_ie9 && $("body").addClass("et_ie9"), ($et_pb_video_section.length || isBuilder) && (window.et_pb_video_section_init = function($et_pb_video_section) {
                        $et_pb_video_section.find("video").mediaelementplayer({
                            pauseOtherPlayers: !1,
                            success: function(mediaElement, domObject) {
                                mediaElement.addEventListener("loadeddata", function() {
                                    et_pb_resize_section_video_bg($(domObject)), et_pb_center_video($(domObject).closest(".mejs-video"))
                                }, !1), mediaElement.addEventListener("canplay", function() {
                                    $(domObject).closest(".et_pb_preload").removeClass("et_pb_preload")
                                }, !1)
                            }
                        })
                    }, 0 < $et_pb_video_section.length && et_pb_video_section_init($et_pb_video_section)), et_init_audio_modules(), !isBlockLayoutPreview && 0 < $et_post_gallery.length) {
                    var magnificPopup = $.magnificPopup.instance;
                    $("body").on("swiperight", ".mfp-container", function() {
                        magnificPopup.prev()
                    }), $("body").on("swipeleft", ".mfp-container", function() {
                        magnificPopup.next()
                    }), $et_post_gallery.each(function() {
                        $(this).magnificPopup({
                            delegate: ".et_pb_gallery_image a",
                            type: "image",
                            removalDelay: 500,
                            gallery: {
                                enabled: !0,
                                navigateByImgClick: !0
                            },
                            mainClass: "mfp-fade",
                            zoom: {
                                enabled: window.et_pb_custom && !window.et_pb_custom.is_builder_plugin_used,
                                duration: 500,
                                opener: function(element) {
                                    return element.find("img")
                                }
                            },
                            autoFocusLast: !1
                        })
                    }), $et_post_gallery.find("a").unbind("click")
                }
                if (!isBlockLayoutPreview && (0 < $et_lightbox_image.length || isBuilder) && ($et_lightbox_image.unbind("click"), $et_lightbox_image.bind("click"), window.et_pb_image_lightbox_init = function($et_lightbox_image) {
                        if (!$et_lightbox_image.magnificPopup) return jQuery(window).on("load", function() {
                            window.et_pb_image_lightbox_init($et_lightbox_image)
                        });
                        $et_lightbox_image.magnificPopup({
                            type: "image",
                            removalDelay: 500,
                            mainClass: "mfp-fade",
                            zoom: {
                                enabled: window.et_pb_custom && !window.et_pb_custom.is_builder_plugin_used,
                                duration: 500,
                                opener: function(element) {
                                    return element.find("img")
                                }
                            },
                            autoFocusLast: !1
                        })
                    }, et_pb_image_lightbox_init($et_lightbox_image)), ($et_pb_slider.length || isBuilder) && $et_pb_slider.each(function() {
                        $this_slider = $(this), et_pb_slider_init($this_slider)
                    }), (($et_pb_carousel = $(".et_pb_carousel")).length || isBuilder) && $et_pb_carousel.each(function() {
                        $(this).et_pb_simple_carousel({
                            slide_duration: 1e3
                        })
                    }), (grid_containers.length || isBuilder) && $(grid_containers).each(function() {
                        window.et_pb_set_responsive_grid($(this), ".et_pb_grid_item")
                    }), $et_pb_fullwidth_portfolio.length || isBuilder) {
                    function fullwidth_portfolio_carousel_slide($arrow) {
                        var $the_portfolio = $arrow.parents(".et_pb_fullwidth_portfolio"),
                            $portfolio_items = $the_portfolio.find(".et_pb_portfolio_items"),
                            $active_carousel_group = ($portfolio_items.find(".et_pb_portfolio_item"), $portfolio_items.find(".et_pb_carousel_group.active")),
                            items = $portfolio_items.data("items"),
                            columns = $portfolio_items.data("portfolio-columns"),
                            item_width = $active_carousel_group.innerWidth() / columns,
                            original_item_width = 100 / columns + "%";
                        if (void 0 !== items && !$the_portfolio.data("carouseling"))
                            if ($the_portfolio.data("carouseling", !0), $active_carousel_group.children().each(function() {
                                    $(this).css({
                                        width: item_width + 1,
                                        "max-width": item_width,
                                        position: "absolute",
                                        left: item_width * ($(this).data("position") - 1)
                                    })
                                }), $arrow.hasClass("et-pb-arrow-next")) {
                                var $next_carousel_group, current_position = 1,
                                    next_position = 1,
                                    next_items_start = active_items_end = (active_items_start = items.indexOf($active_carousel_group.children().first()[0])) + columns,
                                    next_items_end = next_items_start + columns,
                                    active_carousel_width = $active_carousel_group.innerWidth();
                                for (($next_carousel_group = $('<div class="et_pb_carousel_group next" style="display: none;left: 100%;position: absolute;top: 0;">').insertAfter($active_carousel_group)).css({
                                        width: active_carousel_width,
                                        "max-width": active_carousel_width
                                    }).show(), x = 0, total = 0; total >= active_items_start && total < active_items_end && ($(items[x]).addClass("changing_position current_position current_position_" + current_position), $(items[x]).data("current_position", current_position), current_position++), total >= next_items_start && total < next_items_end && ($(items[x]).data("next_position", next_position), $(items[x]).addClass("changing_position next_position next_position_" + next_position), $(items[x]).hasClass("current_position") ? ($(items[x]).clone(!0).appendTo($active_carousel_group).hide().addClass("delayed_container_append_dup").attr("id", $(items[x]).attr("id") + "-dup"), $(items[x]).addClass("delayed_container_append")) : $(items[x]).addClass("container_append"), next_position++), !(columns < next_position); x++, total++) x >= items.length - 1 && (x = -1);
                                sorted = $portfolio_items.find(".container_append, .delayed_container_append_dup").sort(function(a, b) {
                                    var el_a_position = parseInt($(a).data("next_position")),
                                        el_b_position = parseInt($(b).data("next_position"));
                                    return el_a_position < el_b_position ? -1 : el_b_position < el_a_position ? 1 : 0
                                }), $(sorted).show().appendTo($next_carousel_group), $next_carousel_group.children().each(function() {
                                    $(this).css({
                                        width: item_width,
                                        "max-width": item_width,
                                        position: "absolute",
                                        left: item_width * ($(this).data("next_position") - 1)
                                    })
                                }), $active_carousel_group.animate({
                                    left: "-100%"
                                }, {
                                    duration: 700,
                                    complete: function() {
                                        $portfolio_items.find(".delayed_container_append").each(function() {
                                            $(this).css({
                                                width: item_width,
                                                "max-width": item_width,
                                                position: "absolute",
                                                left: item_width * ($(this).data("next_position") - 1)
                                            }), $(this).appendTo($next_carousel_group)
                                        }), $active_carousel_group.removeClass("active"), $active_carousel_group.children().each(function() {
                                            position = $(this).data("position"), current_position = $(this).data("current_position"), $(this).removeClass("position_" + position + " changing_position current_position current_position_" + current_position), $(this).data("position", ""), $(this).data("current_position", ""), $(this).hide(), $(this).css({
                                                position: "",
                                                width: "",
                                                "max-width": "",
                                                left: ""
                                            }), $(this).appendTo($portfolio_items)
                                        }), $active_carousel_group.remove(), et_carousel_auto_rotate($the_portfolio)
                                    }
                                }), $next_carousel_group.addClass("active").css({
                                    position: "absolute",
                                    top: 0,
                                    left: "100%"
                                }), $next_carousel_group.animate({
                                    left: "0%"
                                }, {
                                    duration: 700,
                                    complete: function() {
                                        setTimeout(function() {
                                            $next_carousel_group.removeClass("next").addClass("active").css({
                                                position: "",
                                                width: "",
                                                "max-width": "",
                                                top: "",
                                                left: ""
                                            }), $next_carousel_group.find(".delayed_container_append_dup").remove(), $next_carousel_group.find(".changing_position").each(function(index) {
                                                position = $(this).data("position"), current_position = $(this).data("current_position"), next_position = $(this).data("next_position"), $(this).removeClass("container_append delayed_container_append position_" + position + " changing_position current_position current_position_" + current_position + " next_position next_position_" + next_position), $(this).data("current_position", ""), $(this).data("next_position", ""), $(this).data("position", index + 1)
                                            }), $portfolio_items.find(".et_pb_portfolio_item").removeClass("first_in_row last_in_row"), et_pb_set_responsive_grid($portfolio_items, ".et_pb_portfolio_item:visible"), $next_carousel_group.children().css({
                                                position: "",
                                                width: original_item_width,
                                                "max-width": original_item_width,
                                                left: ""
                                            }), $the_portfolio.data("carouseling", !1)
                                        }, 100)
                                    }
                                })
                            } else {
                                current_position = columns;
                                var $prev_carousel_group, active_items_start, active_items_end, prev_position = columns,
                                    columns_span = columns - 1,
                                    prev_items_start = (active_items_end = (active_items_start = items.indexOf($active_carousel_group.children().last()[0])) - columns_span) - 1,
                                    prev_items_end = prev_items_start - columns_span;
                                active_carousel_width = $active_carousel_group.innerWidth();
                                for (($prev_carousel_group = $('<div class="et_pb_carousel_group prev" style="display: none;left: 100%;position: absolute;top: 0;">').insertBefore($active_carousel_group)).css({
                                        left: "-" + active_carousel_width,
                                        width: active_carousel_width,
                                        "max-width": active_carousel_width
                                    }).show(), x = items.length - 1, total = items.length - 1; total <= active_items_start && total >= active_items_end && ($(items[x]).addClass("changing_position current_position current_position_" + current_position), $(items[x]).data("current_position", current_position), current_position--), total <= prev_items_start && total >= prev_items_end && ($(items[x]).data("prev_position", prev_position), $(items[x]).addClass("changing_position prev_position prev_position_" + prev_position), $(items[x]).hasClass("current_position") ? ($(items[x]).clone(!0).appendTo($active_carousel_group).addClass("delayed_container_append_dup").attr("id", $(items[x]).attr("id") + "-dup"), $(items[x]).addClass("delayed_container_append")) : $(items[x]).addClass("container_append"), prev_position--), !(prev_position <= 0); x--, total--) 0 == x && (x = items.length);
                                sorted = $portfolio_items.find(".container_append, .delayed_container_append_dup").sort(function(a, b) {
                                    var el_a_position = parseInt($(a).data("prev_position")),
                                        el_b_position = parseInt($(b).data("prev_position"));
                                    return el_a_position < el_b_position ? -1 : el_b_position < el_a_position ? 1 : 0
                                }), $(sorted).show().appendTo($prev_carousel_group), $prev_carousel_group.children().each(function() {
                                    $(this).css({
                                        width: item_width,
                                        "max-width": item_width,
                                        position: "absolute",
                                        left: item_width * ($(this).data("prev_position") - 1)
                                    })
                                }), $active_carousel_group.animate({
                                    left: "100%"
                                }, {
                                    duration: 700,
                                    complete: function() {
                                        $portfolio_items.find(".delayed_container_append").reverse().each(function() {
                                            $(this).css({
                                                width: item_width,
                                                "max-width": item_width,
                                                position: "absolute",
                                                left: item_width * ($(this).data("prev_position") - 1)
                                            }), $(this).prependTo($prev_carousel_group)
                                        }), $active_carousel_group.removeClass("active"), $active_carousel_group.children().each(function() {
                                            position = $(this).data("position"), current_position = $(this).data("current_position"), $(this).removeClass("position_" + position + " changing_position current_position current_position_" + current_position), $(this).data("position", ""), $(this).data("current_position", ""), $(this).hide(), $(this).css({
                                                position: "",
                                                width: "",
                                                "max-width": "",
                                                left: ""
                                            }), $(this).appendTo($portfolio_items)
                                        }), $active_carousel_group.remove()
                                    }
                                }), $prev_carousel_group.addClass("active").css({
                                    position: "absolute",
                                    top: 0,
                                    left: "-100%"
                                }), $prev_carousel_group.animate({
                                    left: "0%"
                                }, {
                                    duration: 700,
                                    complete: function() {
                                        setTimeout(function() {
                                            $prev_carousel_group.removeClass("prev").addClass("active").css({
                                                position: "",
                                                width: "",
                                                "max-width": "",
                                                top: "",
                                                left: ""
                                            }), $prev_carousel_group.find(".delayed_container_append_dup").remove(), $prev_carousel_group.find(".changing_position").each(function(index) {
                                                position = $(this).data("position"), current_position = $(this).data("current_position"), prev_position = $(this).data("prev_position"), $(this).removeClass("container_append delayed_container_append position_" + position + " changing_position current_position current_position_" + current_position + " prev_position prev_position_" + prev_position), $(this).data("current_position", ""), $(this).data("prev_position", ""), position = index + 1, $(this).data("position", position), $(this).addClass("position_" + position)
                                            }), $portfolio_items.find(".et_pb_portfolio_item").removeClass("first_in_row last_in_row"), et_pb_set_responsive_grid($portfolio_items, ".et_pb_portfolio_item:visible"), $prev_carousel_group.children().css({
                                                position: "",
                                                width: original_item_width,
                                                "max-width": original_item_width,
                                                left: ""
                                            }), $the_portfolio.data("carouseling", !1)
                                        }, 100)
                                    }
                                })
                            }
                    }

                    function set_fullwidth_portfolio_columns($the_portfolio, carousel_mode) {
                        var columns, $portfolio_items = $the_portfolio.find(".et_pb_portfolio_items"),
                            portfolio_items_width = $portfolio_items.width(),
                            $the_portfolio_items = $portfolio_items.find(".et_pb_portfolio_item");
                        $the_portfolio_items.length;
                        if (void 0 !== $the_portfolio_items && (columns = 1600 <= portfolio_items_width ? 5 : 1024 <= portfolio_items_width ? 4 : 768 <= portfolio_items_width ? 3 : 480 <= portfolio_items_width ? 2 : 1, portfolio_item_width = portfolio_items_width / columns, portfolio_item_height = .75 * portfolio_item_width, carousel_mode && $portfolio_items.css({
                                height: portfolio_item_height
                            }), $the_portfolio_items.css({
                                height: portfolio_item_height
                            }), columns !== $portfolio_items.data("portfolio-columns") && !$the_portfolio.data("columns_setting_up"))) {
                            $the_portfolio.data("columns_setting_up", !0);
                            var portfolio_item_width_percentage = 100 / columns + "%";
                            if ($the_portfolio_items.css({
                                    width: portfolio_item_width_percentage,
                                    "max-width": portfolio_item_width_percentage
                                }), $portfolio_items.removeClass("columns-" + $portfolio_items.data("portfolio-columns")), $portfolio_items.addClass("columns-" + columns), $portfolio_items.data("portfolio-columns", columns), !carousel_mode) return $the_portfolio.data("columns_setting_up", !1);
                            $portfolio_items.find(".et_pb_carousel_group").length && ($the_portfolio_items.appendTo($portfolio_items), $portfolio_items.find(".et_pb_carousel_group").remove());
                            var the_portfolio_items = $portfolio_items.data("items"),
                                $carousel_group = $('<div class="et_pb_carousel_group active">').appendTo($portfolio_items);
                            if (void 0 !== the_portfolio_items) {
                                for ($the_portfolio_items.data("position", ""), the_portfolio_items.length <= columns ? $portfolio_items.find(".et-pb-slider-arrows").hide() : $portfolio_items.find(".et-pb-slider-arrows").show(), position = 1, x = 0; x < the_portfolio_items.length; x++, position++) x < columns ? ($(the_portfolio_items[x]).show(), $(the_portfolio_items[x]).appendTo($carousel_group), $(the_portfolio_items[x]).data("position", position), $(the_portfolio_items[x]).addClass("position_" + position)) : (position = $(the_portfolio_items[x]).data("position"), $(the_portfolio_items[x]).removeClass("position_" + position), $(the_portfolio_items[x]).data("position", ""), $(the_portfolio_items[x]).hide());
                                $the_portfolio.data("columns_setting_up", !1)
                            }
                        }
                    }

                    function et_carousel_auto_rotate($carousel) {
                        "on" === $carousel.data("auto-rotate") && $carousel.find(".et_pb_portfolio_item").length > $carousel.find(".et_pb_carousel_group .et_pb_portfolio_item").length && !$carousel.hasClass("et_carousel_hovered") && (et_carousel_timer = setTimeout(function() {
                            fullwidth_portfolio_carousel_slide($carousel.find(".et-pb-arrow-next"))
                        }, $carousel.data("auto-rotate-speed")), $carousel.data("et_carousel_timer", et_carousel_timer))
                    }
                    window.et_fullwidth_portfolio_init = function($the_portfolio, $callback) {
                        var $portfolio_items = $the_portfolio.find(".et_pb_portfolio_items");
                        $portfolio_items.data("items", $portfolio_items.find(".et_pb_portfolio_item").toArray()), $the_portfolio.data("columns_setting_up", !1), $the_portfolio.hasClass("et_pb_fullwidth_portfolio_carousel") ? ($portfolio_items.prepend('<div class="et-pb-slider-arrows"><a class="et-pb-arrow-prev" href="#"><span>' + et_pb_custom.previous + '</span></a><a class="et-pb-arrow-next" href="#"><span>' + et_pb_custom.next + "</span></a></div>"), set_fullwidth_portfolio_columns($the_portfolio, !0), et_carousel_auto_rotate($the_portfolio), $the_portfolio.on("swiperight", function() {
                            $(this).find(".et-pb-arrow-prev").click()
                        }), $the_portfolio.on("swipeleft", function() {
                            $(this).find(".et-pb-arrow-next").click()
                        }), $the_portfolio.hover(function() {
                            $(this).addClass("et_carousel_hovered"), void 0 !== $(this).data("et_carousel_timer") && clearInterval($(this).data("et_carousel_timer"))
                        }, function() {
                            $(this).removeClass("et_carousel_hovered"), et_carousel_auto_rotate($(this))
                        }), $the_portfolio.data("carouseling", !1), $the_portfolio.on("click", ".et-pb-slider-arrows a", function(e) {
                            return fullwidth_portfolio_carousel_slide($(this)), e.preventDefault(), !1
                        })) : set_fullwidth_portfolio_columns($the_portfolio, !1), "function" == typeof $callback && $callback()
                    }, $et_pb_fullwidth_portfolio.each(function() {
                        et_fullwidth_portfolio_init($(this))
                    })
                }
                if ($(".et_pb_section_video").length && (window._wpmejsSettings.pauseOtherPlayers = !1), $et_pb_filterable_portfolio.length || isBuilder) {
                    function set_filterable_grid_items($the_portfolio) {
                        var active_category = $the_portfolio.find(".et_pb_portfolio_filter > a.active").data("category-slug");
                        window.et_pb_set_responsive_grid($the_portfolio.find(".et_pb_portfolio_items"), ".et_pb_portfolio_item"), $the_portfolio_visible_items = "all" === active_category ? $the_portfolio.find(".et_pb_portfolio_item") : $the_portfolio.find(".et_pb_portfolio_item.project_category_" + active_category);
                        var visible_grid_items = $the_portfolio_visible_items.length,
                            posts_number = $the_portfolio.data("posts-number");
                        ! function($the_portfolio, pages) {
                            if ($pagination = $the_portfolio.find(".et_pb_portofolio_pagination"), !$pagination.length) return;
                            if ($pagination.html("<ul></ul>"), pages <= 1) return;
                            $pagination_list = $pagination.children("ul"), $pagination_list.append('<li class="prev" style="display:none;"><a href="#" data-page="prev" class="page-prev">' + et_pb_custom.prev + "</a></li>");
                            for (var page = 1; page <= pages; page++) {
                                var first_page_class = 1 === page ? " active" : "",
                                    last_page_class = page === pages ? " last-page" : "",
                                    hidden_page_class = 5 <= page ? ' style="display:none;"' : "";
                                $pagination_list.append("<li" + hidden_page_class + ' class="page page-' + page + '"><a href="#" data-page="' + page + '" class="page-' + page + first_page_class + last_page_class + '">' + page + "</a></li>")
                            }
                            $pagination_list.append('<li class="next"><a href="#" data-page="next" class="page-next">' + et_pb_custom.next + "</a></li>")
                        }($the_portfolio, 0 === posts_number ? 1 : Math.ceil(visible_grid_items / posts_number));
                        visible_grid_items = 0;
                        var _page = 1;
                        $the_portfolio.find(".et_pb_portfolio_item").data("page", ""), $the_portfolio_visible_items.each(function(i) {
                            visible_grid_items++, 0 === parseInt(visible_grid_items % posts_number) ? ($(this).data("page", _page), _page++) : $(this).data("page", _page)
                        }), $the_portfolio_visible_items.filter(function() {
                            return 1 == $(this).data("page")
                        }).show(), $the_portfolio_visible_items.filter(function() {
                            return 1 != $(this).data("page")
                        }).hide()
                    }

                    function set_filterable_portfolio_hash($the_portfolio) {
                        if ($the_portfolio.attr("id")) {
                            var this_portfolio_state = [];
                            this_portfolio_state.push($the_portfolio.attr("id")), this_portfolio_state.push($the_portfolio.find(".et_pb_portfolio_filter > a.active").data("category-slug")), $the_portfolio.find(".et_pb_portofolio_pagination a.active").length ? this_portfolio_state.push($the_portfolio.find(".et_pb_portofolio_pagination a.active").data("page")) : this_portfolio_state.push(1), et_set_hash(this_portfolio_state = this_portfolio_state.join(et_hash_module_param_seperator))
                        }
                    }
                    window.et_pb_filterable_portfolio_init = function($selector) {
                        void 0 !== $selector ? set_filterable_portfolio_init($selector) : $et_pb_filterable_portfolio.each(function() {
                            set_filterable_portfolio_init($(this))
                        })
                    }, window.set_filterable_portfolio_init = function($the_portfolio, $callback) {
                        var all_portfolio_items = $the_portfolio.find(".et_pb_portfolio_items").clone();
                        $the_portfolio.show(), $the_portfolio.find(".et_pb_portfolio_item").addClass("active"), $the_portfolio.css("display", "block"), set_filterable_grid_items($the_portfolio), "function" == typeof $callback && $callback(), $the_portfolio.on("click", ".et_pb_portfolio_filter a", function(e) {
                            e.preventDefault();
                            var category_slug = $(this).data("category-slug"),
                                $the_portfolio = $(this).parents(".et_pb_filterable_portfolio"),
                                $the_portfolio_items = $the_portfolio.find(".et_pb_portfolio_items");
                            "all" == category_slug ? ($the_portfolio.find(".et_pb_portfolio_filter a").removeClass("active"), $the_portfolio.find(".et_pb_portfolio_filter_all a").addClass("active"), $the_portfolio_items.empty(), $the_portfolio_items.append(all_portfolio_items.find(".et_pb_portfolio_item").clone()), $the_portfolio.find(".et_pb_portfolio_item").addClass("active")) : ($the_portfolio.find(".et_pb_portfolio_filter_all").removeClass("active"), $the_portfolio.find(".et_pb_portfolio_filter a").removeClass("active"), $the_portfolio.find(".et_pb_portfolio_filter_all a").removeClass("active"), $(this).addClass("active"), $the_portfolio_items.empty(), $the_portfolio_items.append(all_portfolio_items.find(".et_pb_portfolio_item.project_category_" + $(this).data("category-slug")).clone()), $the_portfolio_items.find(".et_pb_portfolio_item").removeClass("active"), $the_portfolio_items.find(".et_pb_portfolio_item.project_category_" + $(this).data("category-slug")).addClass("active").removeClass("inactive")), set_filterable_grid_items($the_portfolio), setTimeout(function() {
                                set_filterable_portfolio_hash($the_portfolio)
                            }, 500), $the_portfolio.find(".et_pb_portfolio_item").removeClass("first_in_row last_in_row"), et_pb_set_responsive_grid($the_portfolio, ".et_pb_portfolio_item:visible")
                        }), $the_portfolio.on("click", ".et_pb_portofolio_pagination a", function(e) {
                            e.preventDefault();
                            var to_page = $(this).data("page"),
                                $the_portfolio = $(this).parents(".et_pb_filterable_portfolio");
                            $the_portfolio.find(".et_pb_portfolio_items");
                            et_pb_smooth_scroll($the_portfolio, !1, 800), $(this).hasClass("page-prev") ? to_page = parseInt($(this).parents("ul").find("a.active").data("page")) - 1 : $(this).hasClass("page-next") && (to_page = parseInt($(this).parents("ul").find("a.active").data("page")) + 1), $(this).parents("ul").find("a").removeClass("active"), $(this).parents("ul").find("a.page-" + to_page).addClass("active");
                            var current_index = $(this).parents("ul").find("a.page-" + to_page).parent().index(),
                                total_pages = $(this).parents("ul").find("li.page").length;
                            $(this).parent().nextUntil(".page-" + (current_index + 3)).show(), $(this).parent().prevUntil(".page-" + (current_index - 3)).show(), $(this).parents("ul").find("li.page").each(function(i) {
                                $(this).hasClass("prev") || $(this).hasClass("next") || (i < current_index - 3 ? $(this).hide() : current_index + 1 < i ? $(this).hide() : $(this).show(), total_pages - current_index <= 2 && total_pages - i <= 5 ? $(this).show() : current_index <= 3 && i <= 4 && $(this).show())
                            }), 1 < to_page ? $(this).parents("ul").find("li.prev").show() : $(this).parents("ul").find("li.prev").hide(), $(this).parents("ul").find("a.active").hasClass("last-page") ? $(this).parents("ul").find("li.next").hide() : $(this).parents("ul").find("li.next").show(), $the_portfolio.find(".et_pb_portfolio_item").hide(), $the_portfolio.find(".et_pb_portfolio_item").filter(function(index) {
                                return $(this).data("page") === to_page
                            }).show(), window.et_pb_set_responsive_grid($the_portfolio.find(".et_pb_portfolio_items"), ".et_pb_portfolio_item"), setTimeout(function() {
                                set_filterable_portfolio_hash($the_portfolio)
                            }, 500), $the_portfolio.find(".et_pb_portfolio_item").removeClass("first_in_row last_in_row"), et_pb_set_responsive_grid($the_portfolio, ".et_pb_portfolio_item:visible")
                        }), $(this).on("et_hashchange", function(event) {
                            var params = event.params;
                            ($the_portfolio = $("#" + event.target.id)).find('.et_pb_portfolio_filter a[data-category-slug="' + params[0] + '"]').hasClass("active") || $the_portfolio.find('.et_pb_portfolio_filter a[data-category-slug="' + params[0] + '"]').click(), params[1] && setTimeout(function() {
                                $the_portfolio.find(".et_pb_portofolio_pagination a.page-" + params[1]).hasClass("active") || $the_portfolio.find(".et_pb_portofolio_pagination a.page-" + params[1]).addClass("active").click()
                            }, 300)
                        })
                    }, window.et_load_event_fired ? et_pb_filterable_portfolio_init() : $(window).load(function() {
                        et_pb_filterable_portfolio_init()
                    })
                }
                if (($et_pb_gallery.length || isBuilder) && (window.set_gallery_grid_items = function($the_gallery) {
                        var $the_gallery_items_container = $the_gallery.find(".et_pb_gallery_items"),
                            $the_gallery_items = $the_gallery_items_container.find(".et_pb_gallery_item"),
                            total_grid_items = $the_gallery_items.length,
                            posts_number_original = parseInt($the_gallery_items_container.attr("data-per_page")),
                            posts_number = isNaN(posts_number_original) || 0 === posts_number_original ? 4 : posts_number_original,
                            pages = Math.ceil(total_grid_items / posts_number);
                        window.et_pb_set_responsive_grid($the_gallery_items_container, ".et_pb_gallery_item"), set_gallery_grid_pages($the_gallery, pages);
                        total_grid_items = 0;
                        var _page = 1;
                        $the_gallery_items.data("page", ""), $the_gallery_items.each(function(i) {
                            total_grid_items++;
                            var $this = $(this);
                            0 === parseInt(total_grid_items % posts_number) ? ($this.data("page", _page), _page++) : $this.data("page", _page)
                        });
                        $the_gallery_items.filter(function() {
                            return 1 == $(this).data("page")
                        }).show();
                        $the_gallery_items.filter(function() {
                            return 1 != $(this).data("page")
                        }).hide()
                    }, window.set_gallery_grid_pages = function($the_gallery, pages) {
                        if ($pagination = $the_gallery.find(".et_pb_gallery_pagination"), $pagination.length)
                            if ($pagination.html("<ul></ul>"), pages <= 1) $pagination.hide();
                            else {
                                $pagination_list = $pagination.children("ul"), $pagination_list.append('<li class="prev" style="display:none;"><a href="#" data-page="prev" class="page-prev">' + et_pb_custom.prev + "</a></li>");
                                for (var page = 1; page <= pages; page++) {
                                    var first_page_class = 1 === page ? " active" : "",
                                        last_page_class = page === pages ? " last-page" : "",
                                        hidden_page_class = 5 <= page ? ' style="display:none;"' : "";
                                    $pagination_list.append("<li" + hidden_page_class + ' class="page page-' + page + '"><a href="#" data-page="' + page + '" class="page-' + page + first_page_class + last_page_class + '">' + page + "</a></li>")
                                }
                                $pagination_list.append('<li class="next"><a href="#" data-page="next" class="page-next">' + et_pb_custom.next + "</a></li>")
                            }
                    }, window.set_gallery_hash = function($the_gallery) {
                        if ($the_gallery.attr("id")) {
                            var this_gallery_state = [];
                            this_gallery_state.push($the_gallery.attr("id")), $the_gallery.find(".et_pb_gallery_pagination a.active").length ? this_gallery_state.push($the_gallery.find(".et_pb_gallery_pagination a.active").data("page")) : this_gallery_state.push(1), et_set_hash(this_gallery_state = this_gallery_state.join(et_hash_module_param_seperator))
                        }
                    }, window.et_pb_gallery_init = function($the_gallery) {
                        $the_gallery.hasClass("et_pb_gallery_grid") && ($the_gallery.show(), set_gallery_grid_items($the_gallery), $the_gallery.on("et_hashchange", function(event) {
                            var params = event.params;
                            $the_gallery = $("#" + event.target.id), (page_to = params[0]) && ($the_gallery.find(".et_pb_gallery_pagination a.page-" + page_to).hasClass("active") || $the_gallery.find(".et_pb_gallery_pagination a.page-" + page_to).addClass("active").click())
                        }))
                    }, $et_pb_gallery.each(function() {
                        var $the_gallery = $(this);
                        et_pb_gallery_init($the_gallery)
                    }), $et_pb_gallery.data("paginating", !1), window.et_pb_gallery_pagination_nav = function($the_gallery) {
                        $the_gallery.on("click", ".et_pb_gallery_pagination a", function(e) {
                            e.preventDefault();
                            var to_page = $(this).data("page"),
                                $the_gallery = $(this).parents(".et_pb_gallery"),
                                $the_gallery_items_container = $the_gallery.find(".et_pb_gallery_items"),
                                $the_gallery_items = $the_gallery_items_container.find(".et_pb_gallery_item");
                            if (!$the_gallery.data("paginating")) {
                                $the_gallery.data("paginating", !0), $(this).hasClass("page-prev") ? to_page = parseInt($(this).parents("ul").find("a.active").data("page")) - 1 : $(this).hasClass("page-next") && (to_page = parseInt($(this).parents("ul").find("a.active").data("page")) + 1), $(this).parents("ul").find("a").removeClass("active"), $(this).parents("ul").find("a.page-" + to_page).addClass("active");
                                var current_index = $(this).parents("ul").find("a.page-" + to_page).parent().index(),
                                    total_pages = $(this).parents("ul").find("li.page").length;
                                $(this).parent().nextUntil(".page-" + (current_index + 3)).show(), $(this).parent().prevUntil(".page-" + (current_index - 3)).show(), $(this).parents("ul").find("li.page").each(function(i) {
                                    $(this).hasClass("prev") || $(this).hasClass("next") || (i < current_index - 3 ? $(this).hide() : current_index + 1 < i ? $(this).hide() : $(this).show(), total_pages - current_index <= 2 && total_pages - i <= 5 ? $(this).show() : current_index <= 3 && i <= 4 && $(this).show())
                                }), 1 < to_page ? $(this).parents("ul").find("li.prev").show() : $(this).parents("ul").find("li.prev").hide(), $(this).parents("ul").find("a.active").hasClass("last-page") ? $(this).parents("ul").find("li.next").hide() : $(this).parents("ul").find("li.next").show(), $the_gallery_items.hide();
                                $the_gallery_items.filter(function(index) {
                                    return $(this).data("page") === to_page
                                }).show();
                                $the_gallery.data("paginating", !1), window.et_pb_set_responsive_grid($the_gallery_items_container, ".et_pb_gallery_item"), setTimeout(function() {
                                    set_gallery_hash($the_gallery)
                                }, 100), $("html, body").animate({
                                    scrollTop: $the_gallery.offset().top - 200
                                }, 200)
                            }
                        })
                    }, et_pb_gallery_pagination_nav($et_pb_gallery), isBuilder && et_pb_gallery_pagination_nav($("#et-fb-app"))), $et_pb_counter_amount.length && $et_pb_counter_amount.each(function() {
                        window.et_bar_counters_init($(this))
                    }), window.et_countdown_timer = function(timer) {
                        var seconds_left = parseInt(timer.attr("data-end-timestamp")) - (new Date).getTime() / 1e3;
                        days = parseInt(seconds_left / 86400), days = 0 < days ? days : 0, seconds_left %= 86400, hours = parseInt(seconds_left / 3600), hours = 0 < hours ? hours : 0, seconds_left %= 3600, minutes = parseInt(seconds_left / 60), minutes = 0 < minutes ? minutes : 0, seconds = parseInt(seconds_left % 60), seconds = 0 < seconds ? seconds : 0;
                        var $days_section = timer.find(".days > .value").parent(".section"),
                            $hours_section = timer.find(".hours > .value").parent(".section"),
                            $minutes_section = timer.find(".minutes > .value").parent(".section"),
                            $seconds_section = timer.find(".seconds > .value").parent(".section");
                        0 == days ? $days_section.hasClass("zero") || timer.find(".days > .value").html("000").parent(".section").addClass("zero").next().addClass("zero") : (days_slice = 3 <= days.toString().length ? days.toString().length : 3, timer.find(".days > .value").html(("000" + days).slice(-days_slice)), $days_section.hasClass("zero") && $days_section.removeClass("zero").next().removeClass("zero")), 0 == days && 0 == hours ? $hours_section.hasClass("zero") || timer.find(".hours > .value").html("00").parent(".section").addClass("zero").next().addClass("zero") : (timer.find(".hours > .value").html(("0" + hours).slice(-2)), $hours_section.hasClass("zero") && $hours_section.removeClass("zero").next().removeClass("zero")), 0 == days && 0 == hours && 0 == minutes ? $minutes_section.hasClass("zero") || timer.find(".minutes > .value").html("00").parent(".section").addClass("zero").next().addClass("zero") : (timer.find(".minutes > .value").html(("0" + minutes).slice(-2)), $minutes_section.hasClass("zero") && $minutes_section.removeClass("zero").next().removeClass("zero")), 0 == days && 0 == hours && 0 == minutes && 0 == seconds ? $seconds_section.hasClass("zero") || timer.find(".seconds > .value").html("00").parent(".section").addClass("zero") : (timer.find(".seconds > .value").html(("0" + seconds).slice(-2)), $seconds_section.hasClass("zero") && $seconds_section.removeClass("zero").next().removeClass("zero"))
                    }, window.et_countdown_timer_labels = function(timer) {
                        timer.closest(".et_pb_column_3_8").length || timer.closest(".et_pb_column_1_4").length || timer.children(".et_pb_countdown_timer_container").width() <= 400 ? (timer.find(".days .label").html(timer.find(".days").data("short")), timer.find(".hours .label").html(timer.find(".hours").data("short")), timer.find(".minutes .label").html(timer.find(".minutes").data("short")), timer.find(".seconds .label").html(timer.find(".seconds").data("short"))) : (timer.find(".days .label").html(timer.find(".days").data("full")), timer.find(".hours .label").html(timer.find(".hours").data("full")), timer.find(".minutes .label").html(timer.find(".minutes").data("full")), timer.find(".seconds .label").html(timer.find(".seconds").data("full")))
                    }, ($et_pb_countdown_timer.length || isBuilder) && (window.et_pb_countdown_timer_init = function($et_pb_countdown_timer) {
                        $et_pb_countdown_timer.each(function() {
                            var timer = $(this);
                            et_countdown_timer_labels(timer), et_countdown_timer(timer), setInterval(function() {
                                et_countdown_timer(timer)
                            }, 1e3)
                        })
                    }, et_pb_countdown_timer_init($et_pb_countdown_timer)), window.et_pb_tabs_init = function($et_pb_tabs_all) {
                        $et_pb_tabs_all.each(function() {
                            var $et_pb_tabs = $(this),
                                $et_pb_tabs_li = $et_pb_tabs.find(".et_pb_tabs_controls li"),
                                active_slide = isTB || isBFB || isVB ? 0 : $et_pb_tabs.find(".et_pb_tab_active").index(),
                                slider_options = {
                                    use_controls: !1,
                                    use_arrows: !1,
                                    slide: ".et_pb_all_tabs > div",
                                    tabs_animation: !0
                                };
                            0 !== active_slide && (slider_options.active_slide = active_slide), $et_pb_tabs.et_pb_simple_slider(slider_options).on("et_hashchange", function(event) {
                                var params = event.params,
                                    $the_tabs = $("#" + event.target.id),
                                    active_tab = params[0];
                                $the_tabs.find(".et_pb_tabs_controls li").eq(active_tab).hasClass("et_pb_tab_active") || $the_tabs.find(".et_pb_tabs_controls li").eq(active_tab).click()
                            }), $et_pb_tabs_li.click(function() {
                                var $this_el = $(this),
                                    $tabs_container = $this_el.closest(".et_pb_tabs").data("et_pb_simple_slider");
                                if ($tabs_container.et_animation_running) return !1;
                                if ($this_el.addClass("et_pb_tab_active").siblings().removeClass("et_pb_tab_active"), $tabs_container.data("et_pb_simple_slider").et_slider_move_to($this_el.index()), $this_el.closest(".et_pb_tabs").attr("id")) {
                                    var tab_state = [];
                                    tab_state.push($this_el.closest(".et_pb_tabs").attr("id")), tab_state.push($this_el.index()), et_set_hash(tab_state = tab_state.join(et_hash_module_param_seperator))
                                }
                                return !1
                            }), window.et_pb_set_tabs_height()
                        })
                    }, ($et_pb_tabs.length || isBuilder) && window.et_pb_tabs_init($et_pb_tabs), $et_pb_map.length || isBuilder) {
                    function et_pb_init_maps() {
                        $et_pb_map.each(function() {
                            et_pb_map_init($(this))
                        })
                    }
                    window.et_pb_map_init = function($this_map_container) {
                        if ("undefined" != typeof google && void 0 !== google.maps) {
                            var current_mode = et_pb_get_current_window_mode(),
                                suffix = "desktop" !== (et_animation_breakpoint = current_mode) ? "-" + current_mode : "",
                                prev_suffix = "phone" === current_mode ? "-tablet" : "",
                                grayscale_value = $this_map_container.attr("data-grayscale" + suffix) || 0;
                            grayscale_value || (grayscale_value = $this_map_container.attr("data-grayscale" + prev_suffix) || $this_map_container.attr("data-grayscale") || 0);
                            var infowindow_active, $this_map = $this_map_container.children(".et_pb_map"),
                                this_map_grayscale = grayscale_value,
                                is_draggable = et_is_mobile_device && "off" !== $this_map.data("mobile-dragging") || !et_is_mobile_device;
                            0 !== this_map_grayscale && (this_map_grayscale = "-" + this_map_grayscale.toString());
                            var data_center_lat = parseFloat($this_map.attr("data-center-lat")) || 0,
                                data_center_lng = parseFloat($this_map.attr("data-center-lng")) || 0;
                            $this_map_container.data("map", new google.maps.Map($this_map[0], {
                                zoom: parseInt($this_map.attr("data-zoom")),
                                center: new google.maps.LatLng(data_center_lat, data_center_lng),
                                mapTypeId: google.maps.MapTypeId.ROADMAP,
                                scrollwheel: "on" == $this_map.attr("data-mouse-wheel"),
                                draggable: is_draggable,
                                panControlOptions: {
                                    position: $this_map_container.is(".et_beneath_transparent_nav") ? google.maps.ControlPosition.LEFT_BOTTOM : google.maps.ControlPosition.LEFT_TOP
                                },
                                zoomControlOptions: {
                                    position: $this_map_container.is(".et_beneath_transparent_nav") ? google.maps.ControlPosition.LEFT_BOTTOM : google.maps.ControlPosition.LEFT_TOP
                                },
                                styles: [{
                                    stylers: [{
                                        saturation: parseInt(this_map_grayscale)
                                    }]
                                }]
                            })), $this_map_container.find(".et_pb_map_pin").each(function() {
                                var $this_marker = $(this),
                                    marker = new google.maps.Marker({
                                        position: new google.maps.LatLng(parseFloat($this_marker.attr("data-lat")), parseFloat($this_marker.attr("data-lng"))),
                                        map: $this_map_container.data("map"),
                                        title: $this_marker.attr("data-title"),
                                        icon: {
                                            url: et_pb_custom.builder_images_uri + "/marker.png",
                                            size: new google.maps.Size(46, 43),
                                            anchor: new google.maps.Point(16, 43)
                                        },
                                        shape: {
                                            coord: [1, 1, 46, 43],
                                            type: "rect"
                                        },
                                        anchorPoint: new google.maps.Point(0, -45)
                                    });
                                if ($this_marker.find(".infowindow").length) {
                                    var infowindow = new google.maps.InfoWindow({
                                        content: $this_marker.html()
                                    });
                                    google.maps.event.addListener($this_map_container.data("map"), "click", function() {
                                        infowindow.close()
                                    }), google.maps.event.addListener(marker, "click", function() {
                                        infowindow_active && infowindow_active.close(), (infowindow_active = infowindow).open($this_map_container.data("map"), marker), $this_marker.closest(".et_pb_module").trigger("mouseleave"), setTimeout(function() {
                                            $this_marker.closest(".et_pb_module").trigger("mouseenter")
                                        }, 1)
                                    })
                                }
                            })
                        }
                    }, window.et_load_event_fired ? et_pb_init_maps() : "undefined" != typeof google && void 0 !== google.maps && google.maps.event.addDomListener(window, "load", function() {
                        et_pb_init_maps()
                    })
                }
                $(".et_pb_shop, .et_pb_wc_upsells, .et_pb_wc_related_products").each(function() {
                    var $this_el = $(this),
                        icon = $this_el.data("icon") || "",
                        icon_tablet = $this_el.data("icon-tablet") || "",
                        icon_phone = $this_el.data("icon-phone") || "",
                        $overlay = $this_el.find(".et_overlay");
                    !$overlay.length && $this_el.hasClass("et_pb_wc_related_products") && (icon = ($this_el = ($overlay = $this_el.find(".et_pb_extra_overlay")).closest(".et_pb_module_inner").parent()).attr("data-icon") || "", icon_tablet = $this_el.attr("data-icon-tablet") || "", icon_phone = $this_el.attr("data-icon-phone") || ""), "" !== icon && $overlay.attr("data-icon", icon).addClass("et_pb_inline_icon"), "" !== icon_tablet && $overlay.attr("data-icon-tablet", icon_tablet).addClass("et_pb_inline_icon_tablet"), "" !== icon_phone && $overlay.attr("data-icon-phone", icon_phone).addClass("et_pb_inline_icon_phone")
                }), $et_pb_background_layout_hoverable.each(function() {
                    var $this_el_item, $this_el_parent, $this_el = $(this),
                        background_layout = $this_el.data("background-layout"),
                        background_layout_hover = $this_el.data("background-layout-hover"),
                        background_layout_tablet = $this_el.data("background-layout-tablet"),
                        background_layout_phone = $this_el.data("background-layout-phone");
                    $this_el.hasClass("et_pb_button_module_wrapper") ? $this_el = $this_el.find("> .et_pb_button") : $this_el.hasClass("et_pb_gallery") ? ($this_el_item = $this_el.find(".et_pb_gallery_item"), $this_el = $this_el.add($this_el_item)) : $this_el.hasClass("et_pb_post_slider") ? ($this_el_item = $this_el.find(".et_pb_slide"), $this_el = $this_el.add($this_el_item)) : $this_el.hasClass("et_pb_slide") && ($this_el_parent = $this_el.closest(".et_pb_slider"), $this_el = $this_el.add($this_el_parent));
                    var layout_class_list = "et_pb_bg_layout_light et_pb_bg_layout_dark et_pb_text_color_dark",
                        layout_class = "et_pb_bg_layout_" + background_layout,
                        layout_class_hover = "et_pb_bg_layout_" + background_layout_hover,
                        text_color_class = "light" === background_layout ? "et_pb_text_color_dark" : "",
                        text_color_class_hover = "light" === background_layout_hover ? "et_pb_text_color_dark" : "";
                    background_layout_tablet && (layout_class_list += " et_pb_bg_layout_light_tablet et_pb_bg_layout_dark_tablet et_pb_text_color_dark_tablet", layout_class += " et_pb_bg_layout_" + background_layout_tablet + "_tablet", layout_class_hover += " et_pb_bg_layout_" + background_layout_hover + "_tablet", text_color_class += "light" === background_layout_tablet ? " et_pb_text_color_dark_tablet" : "", text_color_class_hover += "light" === background_layout_hover ? " et_pb_text_color_dark_tablet" : ""), background_layout_phone && (layout_class_list += " et_pb_bg_layout_light_phone et_pb_bg_layout_dark_phone et_pb_text_color_dark_phone", layout_class += " et_pb_bg_layout_" + background_layout_phone + "_phone", layout_class_hover += " et_pb_bg_layout_" + background_layout_hover + "_phone", text_color_class += "light" === background_layout_phone ? " et_pb_text_color_dark_phone" : "", text_color_class_hover += "light" === background_layout_hover ? " et_pb_text_color_dark_phone" : ""), $this_el.on("mouseenter", function() {
                        $this_el.removeClass(layout_class_list), $this_el.addClass(layout_class_hover), $this_el.hasClass("et_pb_audio_module") && "" !== text_color_class_hover && $this_el.addClass(text_color_class_hover)
                    }), $this_el.on("mouseleave", function() {
                        $this_el.removeClass(layout_class_list), $this_el.addClass(layout_class), $this_el.hasClass("et_pb_audio_module") && "" !== text_color_class && $this_el.addClass(text_color_class)
                    })
                }), ($et_pb_circle_counter.length || isBuilder || 0 < $(".et_pb_ajax_pagination_container").length) && (window.et_pb_circle_counter_init = function($the_counter, animate, custom_mode) {
                    if (!($the_counter.width() <= 0)) {
                        var current_mode = et_pb_get_current_window_mode();
                        et_animation_breakpoint = current_mode;
                        var suffix = "";
                        void 0 !== custom_mode && "" !== custom_mode ? suffix = "-" + custom_mode : "desktop" !== current_mode && (suffix = "-" + current_mode);
                        var bar_color = $the_counter.data("bar-bg-color"),
                            mode_bar_color = $the_counter.data("bar-bg-color" + suffix);
                        void 0 !== mode_bar_color && "" !== mode_bar_color && (bar_color = mode_bar_color);
                        var track_color = $the_counter.data("color") || "#000000",
                            mode_track_color = $the_counter.data("color" + suffix);
                        void 0 !== mode_track_color && "" !== mode_track_color && (track_color = mode_track_color);
                        var track_color_alpha = $the_counter.data("alpha") || "0.1",
                            mode_track_color_alpha = $the_counter.data("alpha" + suffix);
                        void 0 === mode_track_color_alpha || "" === mode_track_color_alpha || isNaN(mode_track_color_alpha) || (track_color_alpha = mode_track_color_alpha), $the_counter.easyPieChart({
                            animate: {
                                duration: 1800,
                                enabled: !0
                            },
                            size: 0 !== $the_counter.width() ? $the_counter.width() : 10,
                            barColor: bar_color,
                            trackColor: track_color,
                            trackAlpha: track_color_alpha,
                            scaleColor: !1,
                            lineWidth: 5,
                            onStart: function() {
                                $(this.el).find(".percent p").css({
                                    visibility: "visible"
                                })
                            },
                            onStep: function(from, to, percent) {
                                $(this.el).find(".percent-value").text(Math.round(parseInt(percent)))
                            },
                            onStop: function(from, to) {
                                $(this.el).find(".percent-value").text($(this.el).data("number-value"))
                            }
                        })
                    }
                }, window.et_pb_reinit_circle_counters = function($et_pb_circle_counter) {
                    $et_pb_circle_counter.each(function() {
                        var $the_counter = $(this).find(".et_pb_circle_counter_inner");
                        window.et_pb_circle_counter_init($the_counter, !1), $the_counter.on("mouseover", function(event) {
                            window.et_pb_circle_counter_update($the_counter, event, "hover")
                        }), $the_counter.on("mouseleave", function(event) {
                            window.et_pb_circle_counter_update($the_counter, event)
                        }), $the_counter.on("containerWidthChanged", function(event, custom_mode) {
                            ($the_counter = $(event.target)).find("canvas").remove(), $the_counter.removeData("easyPieChart"), window.et_pb_circle_counter_init($the_counter, !0, custom_mode)
                        })
                    })
                }, window.et_pb_reinit_circle_counters($et_pb_circle_counter)), window.et_pb_circle_counter_update = function($this_counter, event, custom_mode) {
                    if ($this_counter.is(":visible") && void 0 !== $this_counter.data("easyPieChart")) {
                        if (0 < $(event.target).length && ("mouseover" === event.type || "mouseleave" === event.type)) {
                            has_field_value = !1;
                            var mode_bar_color = $this_counter.data("bar-bg-color-hover"),
                                mode_track_color = $this_counter.data("color-hover"),
                                mode_track_color_alpha = $this_counter.data("alpha-hover");
                            if (void 0 !== mode_bar_color && "" !== mode_bar_color ? has_field_value = !0 : void 0 !== mode_track_color && "" !== mode_track_color ? has_field_value = !0 : void 0 !== mode_track_color_alpha && "" !== mode_track_color_alpha && (has_field_value = !0), !has_field_value) return
                        }
                        var container_param = [];
                        void 0 !== custom_mode && "" !== custom_mode && (container_param = [custom_mode]), $this_counter.trigger("containerWidthChanged", container_param), $this_counter.data("easyPieChart").disableAnimation(), $this_counter.data("easyPieChart").update($this_counter.data("number-value"))
                    }
                }, ($et_pb_number_counter.length || isBuilder || 0 < $(".et_pb_ajax_pagination_container").length) && (window.et_pb_reinit_number_counters = function($et_pb_number_counter) {
                    var is_firefox = $("body").hasClass("gecko");

                    function et_format_number(number_value, separator) {
                        return number_value.toString().replace(/\B(?=(\d{3})+(?!\d))/g, separator)
                    }
                    $.fn.fitText && $et_pb_number_counter.find(".percent p").fitText(.3), $et_pb_number_counter.each(function() {
                        var $this_counter = $(this),
                            separator = $this_counter.data("number-separator");
                        $this_counter.easyPieChart({
                            animate: {
                                duration: 1800,
                                enabled: !0
                            },
                            size: is_firefox ? 1 : 0,
                            trackColor: !1,
                            scaleColor: !1,
                            lineWidth: 0,
                            onStart: function(from, to) {
                                $(this.el).addClass("active"), from === to && $(this.el).find(".percent-value").text(et_format_number($(this.el).data("number-value"), separator))
                            },
                            onStep: function(from, to, percent) {
                                percent != to && $(this.el).find(".percent-value").text(et_format_number(Math.round(parseInt(percent)), separator))
                            },
                            onStop: function(from, to) {
                                $(this.el).find(".percent-value").text(et_format_number($(this.el).data("number-value"), separator))
                            }
                        })
                    })
                }, window.et_pb_reinit_number_counters($et_pb_number_counter)), window.et_apply_parallax = function() {
                    if ($(this).length && void 0 !== $(this) && void 0 !== $(this).offset()) {
                        var $parallaxWindow = $et_top_window;
                        isTB ? $parallaxWindow = top_window.jQuery("#et-fb-app") : isScrollOnAppWindow() && ($parallaxWindow = $(window));
                        var main_position, $this = $(this),
                            element_top = isBuilderModeZoom() ? $this.offset().top / 2 : $this.offset().top,
                            window_top = $parallaxWindow.scrollTop();
                        if (isBlockLayoutPreview) {
                            var blockPreviewId = "#divi-layout-iframe-" + ETBlockLayoutPreview.blockId;
                            element_top += window.top.jQuery(blockPreviewId).offset().top
                        }
                        main_position = "translate(0, " + .3 * (window_top + $et_top_window.height() - element_top) + "px)", (0 < $this.children(".et_parallax_bg_wrap").length ? $this.children(".et_parallax_bg_wrap").find(".et_parallax_bg") : $this.children(".et_parallax_bg")).css({
                            "-webkit-transform": main_position,
                            "-moz-transform": main_position,
                            "-ms-transform": main_position,
                            transform: main_position
                        })
                    }
                }, window.et_parallax_set_height = function() {
                    var $this = $(this),
                        parallaxHeight = isBuilder && $this.parent(".et_pb_fullscreen").length && $et_top_window.height() > $this.innerHeight() ? $et_top_window.height() : $this.innerHeight(),
                        bg_height = .3 * $et_top_window.height() + parallaxHeight;
                    isBFB && (bg_height += top_window.jQuery("#et_pb_layout .inside").offset().top), $this.find(".et_parallax_bg").css({
                        height: bg_height
                    })
                }, window.et_apply_builder_css_parallax = function() {
                    if (isBuilder || isBlockLayoutPreview) {
                        var $this_parent = $(this),
                            $this_parallax = $this_parent.children(".et_parallax_bg");
                        if ($this_parallax.css({
                                width: "",
                                height: "",
                                top: "",
                                left: "",
                                backgroundAttachment: ""
                            }), !isScrollOnAppWindow() || isTB) {
                            var isTopWindow = !!(isBuilder || isTB || isBlockLayoutPreview),
                                topWindow = isTopWindow ? window.top : window,
                                $parallaxWindow = isTopWindow ? top_window.jQuery("#et-fb-app") : $et_top_window,
                                parallaxWindowScrollTop = $parallaxWindow.scrollTop(),
                                backgroundOffset = isBFB ? topWindow.jQuery("#et_pb_layout .inside").offset().top : 0,
                                heightMultiplier = isBuilderModeZoom() ? 2 : 1,
                                parentOffset = $this_parent.offset(),
                                parentOffsetTop = isBuilderModeZoom() ? parentOffset.top / 2 : parentOffset.top;
                            isBlockLayoutPreview && ($parallaxWindow = topWindow.jQuery(".edit-post-layout__content"), backgroundOffset = topWindow.jQuery("#divi-layout-iframe-" + ETBlockLayoutPreview.blockId).offset().top, parallaxWindowScrollTop = $parallaxWindow.offset().top), $this_parallax.css({
                                width: $(window).width(),
                                height: $parallaxWindow.innerHeight() * heightMultiplier,
                                top: parallaxWindowScrollTop - backgroundOffset - parentOffsetTop,
                                left: 0 - parentOffset.left,
                                backgroundAttachment: "scroll"
                            })
                        }
                    }
                }, $(".et_pb_accordion").on("touchstart", function(e) {
                    if ("desktop" !== et_pb_get_current_window_mode()) {
                        var $target = $(e.target);
                        ($target.hasClass("et_pb_toggle_title") || $target.hasClass("et_fb_toggle_overlay")) && (e.preventDefault(), $target.trigger("click"))
                    }
                }), $("body").on("click", ".et_pb_toggle_title, .et_fb_toggle_overlay", function() {
                    var $accordion_active_toggle, module_offset, $module = $(this).closest(".et_pb_toggle"),
                        $section = $module.parents(".et_pb_section"),
                        $content = $module.find(".et_pb_toggle_content"),
                        $accordion = $module.closest(".et_pb_accordion"),
                        is_accordion = $accordion.length,
                        is_accordion_toggling = $accordion.hasClass("et_pb_accordion_toggling"),
                        window_offset_top = $(window).scrollTop(),
                        fixed_header_height = 0,
                        initial_toggle_state = $module.hasClass("et_pb_toggle_close") ? "closed" : "opened";
                    if (is_accordion) {
                        if ($module.hasClass("et_pb_toggle_open") || is_accordion_toggling) return !1;
                        $accordion.addClass("et_pb_accordion_toggling"), $accordion_active_toggle = $module.siblings(".et_pb_toggle_open")
                    }
                    if (!$content.is(":animated") && ($content.slideToggle(700, function() {
                            ! function(initial_toggle_state, $module, $section) {
                                "closed" === initial_toggle_state ? $module.removeClass("et_pb_toggle_close").addClass("et_pb_toggle_open") : $module.removeClass("et_pb_toggle_open").addClass("et_pb_toggle_close"), $section.hasClass("et_pb_section_parallax") && !$section.children().hasClass("et_pb_parallax_css") && $.proxy(et_parallax_set_height, $section)()
                            }(initial_toggle_state, $module, $section)
                        }), is_accordion)) {
                        var accordionCompleteTogglingCallback = function() {
                            $accordion_active_toggle.removeClass("et_pb_toggle_open").addClass("et_pb_toggle_close"), $accordion.removeClass("et_pb_accordion_toggling"), module_offset = $module.offset(), $("#wpadminbar").length && (fixed_header_height += $("#wpadminbar").height()), $("#top-header").length && (fixed_header_height += $("#top-header").height()), $("#main-header").length && !window.et_is_vertical_nav && (fixed_header_height += $("#main-header").height()), window_offset_top + fixed_header_height > module_offset.top && $("html, body").animate({
                                scrollTop: module_offset.top - fixed_header_height - 50
                            })
                        };
                        $accordion_active_toggle.find(".et_pb_toggle_content").is(":visible") ? $accordion_active_toggle.find(".et_pb_toggle_content").slideToggle(700, accordionCompleteTogglingCallback) : ($accordion_active_toggle.find(".et_pb_toggle_content").hide(), accordionCompleteTogglingCallback())
                    }
                });
                var et_email_reg_html5 = /^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,
                    $et_contact_container = $(".et_pb_contact_form_container");

                function et_fix_slider_height($slider) {
                    var $this_slider = $slider || $et_pb_slider;
                    $this_slider && $this_slider.length && $this_slider.each(function() {
                        var $slide_section = $(this).parent(".et_pb_section"),
                            $slides = $(this).find(".et_pb_slide"),
                            $slide_containers = $slides.find(".et_pb_container"),
                            max_height = 0,
                            image_margin = 0,
                            need_image_margin_top = $(this).hasClass("et_pb_post_slider_image_top"),
                            need_image_margin_bottom = $(this).hasClass("et_pb_post_slider_image_bottom");
                        if ($slide_section.is(".et_pb_section_first")) return !0;
                        $slide_containers.css("height", ""), $slides.addClass("et_pb_temp_slide"), "object" == typeof $(this).data("et_pb_simple_slider") && $(this).data("et_pb_simple_slider").et_fix_slider_content_images(), $slides.each(function() {
                            var height = parseFloat($(this).innerHeight()),
                                $slide_image = $(this).find(".et_pb_slide_image"),
                                adjustedHeight = parseFloat($(this).data("adjustedHeight")),
                                autoTopPadding = isNaN(adjustedHeight) ? 0 : adjustedHeight;
                            height = autoTopPadding && autoTopPadding < height ? height - autoTopPadding : height, (need_image_margin_top || need_image_margin_bottom) && ($slide_image.length ? (image_margin = need_image_margin_top ? parseFloat($slide_image.css("margin-top")) : parseFloat($slide_image.css("margin-bottom")), image_margin += 10) : $(this).find(".et_pb_container").addClass("et_pb_no_image")), 0 === Math.abs(parseInt($(this).find(".et_pb_slide_description").height())) && $(this).find(".et_pb_container").addClass("et_pb_empty_slide"), max_height < height && (max_height = height)
                        }), max_height + image_margin < 1 ? $slide_containers.css("height", "") : $slide_containers.css("height", max_height + image_margin), $slides.removeClass("et_pb_temp_slide"), $slides.filter(".et-pb-active-slide").find(".et_pb_slide_image").children("img").addClass("active")
                    })
                }!isBuilder && 0 < $(".et_pb_module.et_pb_recaptcha_enabled").length && etCore.api.spam.recaptcha.isEnabled() && $("body").addClass("et_pb_recaptcha_enabled"), $et_contact_container.length && $et_contact_container.each(function() {
                    var $this_contact_container = $(this),
                        $et_contact_form = $this_contact_container.find("form"),
                        redirect_url = void 0 !== $this_contact_container.data("redirect_url") ? $this_contact_container.data("redirect_url") : "";
                    $et_contact_form.find("input[type=checkbox]").on("change", function() {
                        var $checkbox = $(this),
                            $checkbox_field = $checkbox.siblings("input[type=text]:first"),
                            is_checked = $checkbox.prop("checked");
                        $checkbox_field.val(is_checked ? $checkbox_field.data("checked") : $checkbox_field.data("unchecked"))
                    }), $et_contact_form.submit(function(event) {
                        event.preventDefault();
                        var $this_contact_form = $(this);
                        if (!0 !== $this_contact_form.data("submitted")) {
                            var $this_inputs = $this_contact_form.find('input[type=text], .et_pb_checkbox_handle, .et_pb_contact_field[data-type="radio"], textarea, select'),
                                $captcha_field = $this_contact_form.find(".et_pb_contact_captcha"),
                                $et_contact_message = $this_contact_container.find(".et-pb-contact-message"),
                                form_unique_id = void 0 !== $this_contact_container.data("form_unique_num") ? $this_contact_container.data("form_unique_num") : 0,
                                this_et_contact_error = !1,
                                et_message = "",
                                et_fields_message = "",
                                inputs_list = [],
                                hidden_fields = [];
                            etCore.api.spam.recaptcha.interaction("Divi/Module/ContactForm/" + form_unique_id).then(function(token) {
                                if (et_message = "<ul>", $this_inputs.removeClass("et_contact_error"), $this_inputs.each(function() {
                                        var $this_el = $(this),
                                            $this_wrapper = !1;
                                        "checkbox" === $this_el.data("field_type") && ($this_wrapper = $this_el.parents(".et_pb_contact_field")).removeClass("et_contact_error"), "radio" === $this_el.data("type") && ($this_wrapper = ($this_el = $this_el.find('input[type="radio"]')).parents(".et_pb_contact_field"));
                                        var default_value, this_id = $this_el.attr("id"),
                                            this_val = $this_el.val(),
                                            this_label = $this_el.siblings("label:first").text(),
                                            field_type = void 0 !== $this_el.data("field_type") ? $this_el.data("field_type") : "text",
                                            required_mark = void 0 !== $this_el.data("required_mark") ? $this_el.data("required_mark") : "not_required",
                                            original_id = void 0 !== $this_el.data("original_id") ? $this_el.data("original_id") : "",
                                            unchecked = !1;
                                        if ("radio" === field_type) {
                                            if (0 !== $this_wrapper.find('input[type="radio"]').length) {
                                                field_type = "radio";
                                                var $firstRadio = $this_wrapper.find('input[type="radio"]:first');
                                                required_mark = void 0 !== $firstRadio.data("required_mark") ? $firstRadio.data("required_mark") : "not_required", this_val = "", $this_wrapper.find('input[type="radio"]:checked') && (this_val = $this_wrapper.find('input[type="radio"]:checked').val())
                                            }
                                            this_label = $this_wrapper.find(".et_pb_contact_form_label").text(), this_id = $this_wrapper.find('input[type="radio"]:first').attr("name"), original_id = $this_wrapper.attr("data-id"), 0 === $this_wrapper.find('input[type="radio"]:checked').length && (unchecked = !0)
                                        }
                                        if ("checkbox" === field_type) {
                                            if (this_val = "", 0 !== $this_wrapper.find('input[type="checkbox"]').length) {
                                                field_type = "checkbox";
                                                var $checkboxHandle = $this_wrapper.find(".et_pb_checkbox_handle");
                                                required_mark = void 0 !== $checkboxHandle.data("required_mark") ? $checkboxHandle.data("required_mark") : "not_required", $this_wrapper.find('input[type="checked"]:checked') && (this_val = [], $this_wrapper.find('input[type="checkbox"]:checked').each(function() {
                                                    this_val.push($(this).val())
                                                }), this_val = this_val.join(", "))
                                            }
                                            $this_wrapper.find(".et_pb_checkbox_handle").val(this_val), this_label = $this_wrapper.find(".et_pb_contact_form_label").text(), this_id = $this_wrapper.find(".et_pb_checkbox_handle").attr("name"), original_id = $this_wrapper.attr("data-id"), 0 === $this_wrapper.find('input[type="checkbox"]:checked').length && (unchecked = !0)
                                        }
                                        if (this_label = this_label.replace(/"/g, "&quot;"), $this_el.is(":visible") || !$this_el.parents("[data-conditional-logic]").length || "hidden" === $this_el.attr("type") || "radio" === $this_el.attr("type"))
                                            if ("hidden" !== $this_el.attr("type") && "radio" !== $this_el.attr("type") || $this_el.parents(".et_pb_contact_field").is(":visible")) {
                                                if (void 0 !== this_id && inputs_list.push({
                                                        field_id: this_id,
                                                        original_id: original_id,
                                                        required_mark: required_mark,
                                                        field_type: field_type,
                                                        field_label: this_label
                                                    }), "required" !== required_mark || "" !== this_val && !0 !== unchecked || $this_el.is('[id^="et_pb_contact_et_number_"]') || (!1 === $this_wrapper ? $this_el.addClass("et_contact_error") : $this_wrapper.addClass("et_contact_error"), this_et_contact_error = !0, "" === (default_value = this_label) && (default_value = et_pb_custom.captcha), et_fields_message += "<li>" + default_value + "</li>"), "email" === field_type) {
                                                    var processed_email = this_val.trim().toLowerCase(),
                                                        is_valid_email = et_email_reg_html5.test(processed_email);
                                                    "" === processed_email || this_label === processed_email || is_valid_email || ($this_el.addClass("et_contact_error"), this_et_contact_error = !0, is_valid_email || (et_message += "<li>" + et_pb_custom.invalid + "</li>"))
                                                }
                                            } else hidden_fields.push(original_id);
                                        else hidden_fields.push(original_id)
                                    }), $captcha_field.length && "" !== $captcha_field.val()) {
                                    var first_digit = parseInt($captcha_field.data("first_digit")),
                                        second_digit = parseInt($captcha_field.data("second_digit"));
                                    parseInt($captcha_field.val()) !== first_digit + second_digit && (et_message += "<li>" + et_pb_custom.wrong_captcha + "</li>", this_et_contact_error = !0, first_digit = Math.floor(15 * Math.random() + 1), second_digit = Math.floor(15 * Math.random() + 1), $captcha_field.data("first_digit", first_digit), $captcha_field.data("second_digit", second_digit), $this_contact_form.find(".et_pb_contact_captcha_question").empty().append(first_digit + " + " + second_digit))
                                }
                                if (!this_et_contact_error) {
                                    $this_contact_form.data("submitted", !0);
                                    var $href = $this_contact_form.attr("action"),
                                        form_data = $this_contact_form.serializeArray();
                                    form_data.push({
                                        name: "et_pb_contact_email_fields_" + form_unique_id,
                                        value: JSON.stringify(inputs_list)
                                    }), form_data.push({
                                        name: "token",
                                        value: token
                                    }), 0 < hidden_fields.length && form_data.push({
                                        name: "et_pb_contact_email_hidden_fields_" + form_unique_id,
                                        value: JSON.stringify(hidden_fields)
                                    }), $this_contact_container.removeClass("et_animated").removeAttr("style").fadeTo("fast", .2, function() {
                                        $this_contact_container.load($href + " #" + $this_contact_container.attr("id") + "> *", form_data, function(responseText) {
                                            $(responseText).find(".et_pb_contact_error_text").length || (et_pb_maybe_log_event($this_contact_container, "con_goal"), "" !== redirect_url && (window.location.href = redirect_url)), $this_contact_container.fadeTo("fast", 1)
                                        })
                                    })
                                }
                                et_message += "</ul>", "" !== et_fields_message && ("<ul></ul>" !== et_message && (et_message = '<p class="et_normal_padding">' + et_pb_custom.contact_error_message + "</p>" + et_message), et_fields_message = "<ul>" + et_fields_message + "</ul>", et_fields_message = "<p>" + et_pb_custom.fill_message + "</p>" + et_fields_message, et_message = et_fields_message + et_message), "<ul></ul>" !== et_message && ($et_contact_message.html(et_message), $this_contact_container.parents(".et_pb_section_parallax").length && $this_contact_container.parents(".et_pb_section_parallax").each(function() {
                                    !$(this).children(".et_parallax_bg").hasClass("et_pb_parallax_css") && $et_window.trigger("resize")
                                }))
                            })
                        }
                    })
                }), window.et_pb_play_overlayed_video = function($play_video) {
                    var video_iframe_src, video_iframe_src_splitted, video_iframe_src_autoplay, $this = $play_video,
                        $video_image = $this.closest(".et_pb_video_overlay"),
                        $wrapper = $this.closest(".et_pb_video, .et_main_video_container, .et_pb_video_wrap"),
                        $video_iframe = $wrapper.find("iframe"),
                        is_embedded = 0 < $video_iframe.length,
                        is_fb_video = $wrapper.find(".fb-video").length;
                    if (is_embedded) {
                        if (is_fb_video && void 0 !== $video_iframe[2] && ($video_iframe = $($video_iframe[2])), video_iframe_src_splitted = (video_iframe_src = $video_iframe.attr("src")).split("?"), -1 !== video_iframe_src.indexOf("autoplay=")) return;
                        video_iframe_src_autoplay = void 0 !== video_iframe_src_splitted[1] ? video_iframe_src_splitted[0] + "?autoplay=1&amp;" + video_iframe_src_splitted[1] : video_iframe_src_splitted[0] + "?autoplay=1", $video_iframe.attr({
                            src: video_iframe_src_autoplay
                        })
                    } else $wrapper.find("video").get(0).play();
                    $video_image.fadeTo(500, 0, function() {
                        $(this).css("display", "none")
                    })
                }, $(".et_pb_post .et_pb_video_overlay, .et_pb_video .et_pb_video_overlay, .et_pb_video_wrap .et_pb_video_overlay").click(function() {
                    var $this = $(this);
                    return et_pb_play_overlayed_video($this), !1
                }), window.et_pb_resize_section_video_bg = function($video) {
                    $element = void 0 !== $video ? $video.closest(".et_pb_section_video_bg") : $(".et_pb_section_video_bg"), $element.each(function() {
                        var $this_el = $(this);
                        isInsideVB($this_el) && ($this_el.removeAttr("data-ratio"), $this_el.find("video").removeAttr("style"));
                        var width, height, $video = $this_el.find("video"),
                            ratio = ($video.prop("videoWidth") || parseInt($video.width())) / ($video.prop("videoHeight") || parseInt($video.height())),
                            $video_elements = $this_el.find(".mejs-video, video, object").css("margin", 0),
                            $container = $this_el.closest(".et_pb_section_video").length ? $this_el.closest(".et_pb_section_video") : $this_el.closest(".et_pb_slides"),
                            body_width = $container.innerWidth(),
                            container_height = $container.innerHeight();
                        void 0 !== $this_el.attr("data-ratio") || isNaN(ratio) || $this_el.attr("data-ratio", ratio), height = body_width / container_height < ratio ? (width = container_height * ratio, container_height) : (width = body_width) / ratio, $video_elements.width(width).height(height), isBuilder && setTimeout(function() {
                            $video_elements.width(width).height(height)
                        }, 0)
                    })
                }, window.et_pb_center_video = function($video) {
                    $element = void 0 !== $video ? $video : $(".et_pb_section_video_bg .mejs-video"), $element.length && $element.each(function() {
                        var $this_el = $(this);
                        if (et_pb_adjust_video_margin($this_el), isInsideVB($this_el) && setTimeout(function() {
                                et_pb_adjust_video_margin($this_el)
                            }, 0), void 0 !== $video && $video.closest(".et_pb_slider").length && !$video.closest(".et_pb_first_video").length) return !1
                    })
                }, window.et_pb_adjust_video_margin = function($el) {
                    var $video_width_negative = 0 - $el.width() / 2;
                    $el.css("margin-left", $video_width_negative)
                };
                var debounced_et_fix_slider_height = {};

                function et_fix_nav_direction() {
                    window_width = $(window).width(), $(".nav li.et-reverse-direction-nav").removeClass("et-reverse-direction-nav"), $(".nav li li ul").each(function() {
                        var $dropdown = $(this),
                            dropdown_width = $dropdown.width(),
                            dropdown_offset = $dropdown.offset(),
                            $parents = $dropdown.parents(".nav > li");
                        dropdown_offset.left > window_width - dropdown_width && $parents.addClass("et-reverse-direction-nav")
                    })
                }

                function et_waypoint($element, options, max_instances) {
                    max_instances = max_instances || $element.data("et_waypoint_max_instances") || 1;
                    var current_instances = $element.data("et_waypoint") || [];
                    if (current_instances.length < max_instances) {
                        var new_instances = $element.waypoint(options);
                        new_instances && 0 < new_instances.length && (current_instances.push(new_instances[0]), $element.data("et_waypoint", current_instances))
                    } else
                        for (var i = 0; i < current_instances.length; i++) current_instances[i].context.refresh()
                }

                function et_get_offset(element, fallback) {
                    var section_index = element.parents(".et_pb_section").index(),
                        section_length = $(".et_pb_section").length - 1,
                        row_index = element.parents(".et_pb_row").index(),
                        row_length = element.parents(".et_pb_section").children().length - 1;
                    return section_index === section_length && row_index === row_length ? "bottom-in-view" : fallback
                }

                function et_animate_element($elementOriginal) {
                    var $element = $elementOriginal;
                    if (!$element.hasClass("et_had_animation")) {
                        var animation_style = $element.attr("data-animation-style"),
                            animation_repeat = $element.attr("data-animation-repeat"),
                            animation_duration = $element.attr("data-animation-duration"),
                            animation_delay = $element.attr("data-animation-delay"),
                            animation_intensity = $element.attr("data-animation-intensity"),
                            animation_starting_opacity = $element.attr("data-animation-starting-opacity"),
                            animation_speed_curve = $element.attr("data-animation-speed-curve"),
                            $buttonWrapper = $element.parent(".et_pb_button_module_wrapper"),
                            isEdge = $("body").hasClass("edge");
                        $element.is(".et_pb_section") && "roll" === animation_style && $(et_frontend_scripts.builderCssContainerPrefix + ", " + et_frontend_scripts.builderCssLayoutPrefix).css("overflow-x", "hidden"),
                            function($element) {
                                for (var data_attrs_to_remove = [], data_attrs = $element.get(0).attributes, i = 0; i < data_attrs.length; i++) "data-animation-" === data_attrs[i].name.substring(0, 15) && data_attrs_to_remove.push(data_attrs[i].name);
                                $.each(data_attrs_to_remove, function(index, attr_name) {
                                    $element.removeAttr(attr_name)
                                })
                            }($element);
                        var starting_opacity = isNaN(parseInt(animation_starting_opacity)) ? 0 : .01 * parseInt(animation_starting_opacity); - 1 === $.inArray(animation_speed_curve, ["linear", "ease", "ease-in", "ease-out", "ease-in-out"]) && (animation_speed_curve = "ease-in-out"), 0 < $buttonWrapper.length && ($element.removeClass("et_animated"), ($element = $buttonWrapper).addClass("et_animated")), $element.css({
                            "animation-duration": animation_duration,
                            "animation-delay": animation_delay,
                            opacity: starting_opacity,
                            "animation-timing-function": animation_speed_curve
                        });
                        for (var intensity_css = {}, intensity_percentage = isNaN(parseInt(animation_intensity)) ? 50 : parseInt(animation_intensity), intensity_animations = ["slide", "zoom", "flip", "fold", "roll"], original_animation = !1, original_direction = !1, i = 0; i < intensity_animations.length; i++) {
                            var animation = intensity_animations[i];
                            if (animation_style && animation_style.substr(0, animation.length) === animation) {
                                original_animation = animation, "" !== (original_direction = animation_style.substr(animation.length, animation_style.length)) && (original_direction = original_direction.toLowerCase());
                                break
                            }
                        }
                        if (!1 !== original_animation && !1 !== original_direction && (intensity_css = function(animation, direction, intensity) {
                                var intensity_css = {};
                                switch (animation) {
                                    case "slide":
                                        switch (direction) {
                                            case "top":
                                                var percentage = -2 * intensity;
                                                intensity_css = {
                                                    transform: "translate3d(0, " + percentage + "%, 0)"
                                                };
                                                break;
                                            case "right":
                                                var percentage = 2 * intensity;
                                                intensity_css = {
                                                    transform: "translate3d(" + percentage + "%, 0, 0)"
                                                };
                                                break;
                                            case "bottom":
                                                var percentage = 2 * intensity;
                                                intensity_css = {
                                                    transform: "translate3d(0, " + percentage + "%, 0)"
                                                };
                                                break;
                                            case "left":
                                                var percentage = -2 * intensity;
                                                intensity_css = {
                                                    transform: "translate3d(" + percentage + "%, 0, 0)"
                                                };
                                                break;
                                            default:
                                                var scale = .01 * (100 - intensity);
                                                intensity_css = {
                                                    transform: "scale3d(" + scale + ", " + scale + ", " + scale + ")"
                                                }
                                        }
                                        break;
                                    case "zoom":
                                        var scale = .01 * (100 - intensity);
                                        switch (direction) {
                                            case "top":
                                            case "right":
                                            case "bottom":
                                            case "left":
                                            default:
                                                intensity_css = {
                                                    transform: "scale3d(" + scale + ", " + scale + ", " + scale + ")"
                                                }
                                        }
                                        break;
                                    case "flip":
                                        switch (direction) {
                                            case "right":
                                                var degree = Math.ceil(.9 * intensity);
                                                intensity_css = {
                                                    transform: "perspective(2000px) rotateY(" + degree + "deg)"
                                                };
                                                break;
                                            case "left":
                                                var degree = -1 * Math.ceil(.9 * intensity);
                                                intensity_css = {
                                                    transform: "perspective(2000px) rotateY(" + degree + "deg)"
                                                };
                                                break;
                                            case "top":
                                            default:
                                                var degree = Math.ceil(.9 * intensity);
                                                intensity_css = {
                                                    transform: "perspective(2000px) rotateX(" + degree + "deg)"
                                                };
                                                break;
                                            case "bottom":
                                                var degree = -1 * Math.ceil(.9 * intensity);
                                                intensity_css = {
                                                    transform: "perspective(2000px) rotateX(" + degree + "deg)"
                                                }
                                        }
                                        break;
                                    case "fold":
                                        switch (direction) {
                                            case "top":
                                                var degree = -1 * Math.ceil(.9 * intensity);
                                                intensity_css = {
                                                    transform: "perspective(2000px) rotateX(" + degree + "deg)"
                                                };
                                                break;
                                            case "bottom":
                                                var degree = Math.ceil(.9 * intensity);
                                                intensity_css = {
                                                    transform: "perspective(2000px) rotateX(" + degree + "deg)"
                                                };
                                                break;
                                            case "left":
                                                var degree = Math.ceil(.9 * intensity);
                                                intensity_css = {
                                                    transform: "perspective(2000px) rotateY(" + degree + "deg)"
                                                };
                                                break;
                                            case "right":
                                            default:
                                                var degree = -1 * Math.ceil(.9 * intensity);
                                                intensity_css = {
                                                    transform: "perspective(2000px) rotateY(" + degree + "deg)"
                                                }
                                        }
                                        break;
                                    case "roll":
                                        switch (direction) {
                                            case "right":
                                            case "bottom":
                                                var degree = -1 * Math.ceil(3.6 * intensity);
                                                intensity_css = {
                                                    transform: "rotateZ(" + degree + "deg)"
                                                };
                                                break;
                                            case "top":
                                            case "left":
                                            default:
                                                var degree = Math.ceil(3.6 * intensity);
                                                intensity_css = {
                                                    transform: "rotateZ(" + degree + "deg)"
                                                }
                                        }
                                }
                                return intensity_css
                            }(original_animation, original_direction, intensity_percentage)), $.isEmptyObject(intensity_css) || $element.css(isEdge ? $.extend(intensity_css, {
                                transition: "transform 0s ease-in"
                            }) : intensity_css), $element.addClass("et_animated"), $element.addClass(animation_style), $element.addClass(animation_repeat), !animation_repeat) {
                            var animation_duration_ms = parseInt(animation_duration),
                                animation_delay_ms = parseInt(animation_delay);
                            setTimeout(function() {
                                et_remove_animation($element)
                            }, animation_duration_ms + animation_delay_ms), isEdge && !$.isEmptyObject(intensity_css) && setTimeout(function() {
                                $element.css("transition", "")
                            }, animation_duration_ms + animation_delay_ms + 50)
                        }
                    }
                }

                function et_process_animation_data(waypoints_enabled) {
                    if ("undefined" != typeof et_animation_data && 0 < et_animation_data.length) {
                        $("body").css("overflow-x", "hidden"), $("#page-container").css("overflow-y", "hidden");
                        for (var i = 0; i < et_animation_data.length; i++) {
                            var animation_entry = et_animation_data[i];
                            if (animation_entry.class && animation_entry.style && animation_entry.repeat && animation_entry.duration && animation_entry.delay && animation_entry.intensity && animation_entry.starting_opacity && animation_entry.speed_curve) {
                                var $animated = $("." + animation_entry.class),
                                    current_mode = et_pb_get_current_window_mode(),
                                    is_desktop_view = "desktop" === current_mode;
                                et_animation_breakpoint = current_mode;
                                var suffix = "";
                                is_desktop_view || (suffix += "_" + current_mode);
                                var data_style = is_desktop_view || void 0 === animation_entry["style" + suffix] ? animation_entry.style : animation_entry["style" + suffix],
                                    data_repeat = is_desktop_view || void 0 === animation_entry["repeat" + suffix] ? animation_entry.repeat : animation_entry["repeat" + suffix],
                                    data_duration = is_desktop_view || void 0 === animation_entry["duration" + suffix] ? animation_entry.duration : animation_entry["duration" + suffix],
                                    data_delay = is_desktop_view || void 0 === animation_entry["delay" + suffix] ? animation_entry.delay : animation_entry["delay" + suffix],
                                    data_intensity = is_desktop_view || void 0 === animation_entry["intensity" + suffix] ? animation_entry.intensity : animation_entry["intensity" + suffix],
                                    data_starting_opacity = is_desktop_view || void 0 === animation_entry["starting_opacity" + suffix] ? animation_entry.starting_opacity : animation_entry["starting_opacity" + suffix],
                                    data_speed_curve = is_desktop_view || void 0 === animation_entry["speed_curve" + suffix] ? animation_entry.speed_curve : animation_entry["speed_curve" + suffix];
                                $animated.attr({
                                    "data-animation-style": data_style,
                                    "data-animation-repeat": "once" === data_repeat ? "" : "infinite",
                                    "data-animation-duration": data_duration,
                                    "data-animation-delay": data_delay,
                                    "data-animation-intensity": data_intensity,
                                    "data-animation-starting-opacity": data_starting_opacity,
                                    "data-animation-speed-curve": data_speed_curve
                                }), !0 === waypoints_enabled ? $animated.hasClass("et_pb_circle_counter") ? (et_waypoint($animated, {
                                    offset: "100%",
                                    handler: function() {
                                        var $this_counter = $(this.element).find(".et_pb_circle_counter_inner");
                                        $this_counter.data("PieChartHasLoaded") || void 0 === $this_counter.data("easyPieChart") || ($this_counter.data("easyPieChart").update($this_counter.data("number-value")), $this_counter.data("PieChartHasLoaded", !0), et_animate_element($(this.element)))
                                    }
                                }), et_waypoint($animated, {
                                    offset: "bottom-in-view",
                                    handler: function() {
                                        var $this_counter = $(this.element).find(".et_pb_circle_counter_inner");
                                        $this_counter.data("PieChartHasLoaded") || void 0 === $this_counter.data("easyPieChart") || ($this_counter.data("easyPieChart").update($this_counter.data("number-value")), $this_counter.data("PieChartHasLoaded", !0), et_animate_element($(this.element)))
                                    }
                                })) : $animated.hasClass("et_pb_number_counter") ? (et_waypoint($animated, {
                                    offset: "100%",
                                    handler: function() {
                                        $(this.element).data("easyPieChart").update($(this.element).data("number-value")), et_animate_element($(this.element))
                                    }
                                }), et_waypoint($animated, {
                                    offset: "bottom-in-view",
                                    handler: function() {
                                        $(this.element).data("easyPieChart").update($(this.element).data("number-value")), et_animate_element($(this.element))
                                    }
                                })) : et_waypoint($animated, {
                                    offset: "100%",
                                    handler: function() {
                                        et_animate_element($(this.element))
                                    }
                                }) : et_animate_element($animated)
                            }
                        }
                    }
                }

                function et_has_animation_data($element) {
                    var has_animation = !1;
                    if ("undefined" != typeof et_animation_data && 0 < et_animation_data.length)
                        for (var i = 0; i < et_animation_data.length; i++) {
                            var animation_entry = et_animation_data[i];
                            if (animation_entry.class && $element.hasClass(animation_entry.class)) {
                                has_animation = !0;
                                break
                            }
                        }
                    return has_animation
                }

                function et_remove_animation($element) {
                    var animation_classes = ["et_animated", "infinite", "et-waypoint", "fade", "fadeTop", "fadeRight", "fadeBottom", "fadeLeft", "slide", "slideTop", "slideRight", "slideBottom", "slideLeft", "bounce", "bounceTop", "bounceRight", "bounceBottom", "bounceLeft", "zoom", "zoomTop", "zoomRight", "zoomBottom", "zoomLeft", "flip", "flipTop", "flipRight", "flipBottom", "flipLeft", "fold", "foldTop", "foldRight", "foldBottom", "foldLeft", "roll", "rollTop", "rollRight", "rollBottom", "rollLeft", "transformAnim"];
                    $element.is(".et_pb_section") && $element.is(".roll") && $(et_frontend_scripts.builderCssContainerPrefix + ", " + et_frontend_scripts.builderCssLayoutPrefix).css("overflow-x", ""), $element.removeClass(animation_classes.join(" ")), $element.css({
                        "animation-delay": "",
                        "animation-duration": "",
                        "animation-timing-function": "",
                        opacity: "",
                        transform: ""
                    }), $element.addClass("et_had_animation")
                }

                function et_is_click_exception($element) {
                    for (var is_exception = !1, click_exceptions = [".et_pb_toggle_title", ".mejs-container *", ".et_pb_contact_field input", ".et_pb_contact_field textarea", ".et_pb_contact_field_checkbox *", ".et_pb_contact_field_radio *", ".et_pb_contact_captcha", ".et_pb_tabs_controls a", ".flex-control-nav *", ".et_pb_menu__search-button", ".et_pb_menu__close-search-button", ".et_pb_menu__search-container *", ".et_pb_fullwidth_header_scroll *"], i = 0; i < click_exceptions.length; i++)
                        if ($element.is(click_exceptions[i])) {
                            is_exception = !0;
                            break
                        } return is_exception
                }

                function et_pb_maybe_log_event($goal_container, event, callback) {
                    if (!isBuilder) {
                        var postId = function($goal) {
                                var className = $goal.attr("class"),
                                    postId = parseInt(className.replace(/^.*et_pb_ab_goal_id-(\d+).*$/, "$1"));
                                return isNaN(postId) ? 0 : postId
                            }($goal_container),
                            log_event = void 0 === event ? "con_goal" : event;
                        $goal_container.hasClass("et_pb_ab_goal") && !et_pb_ab_logged_status[postId][log_event] ? et_pb_ab_update_stats(log_event, postId) : void 0 !== callback && callback()
                    }
                }

                function et_pb_ab_update_stats(record_type, set_page_id, set_subject_id, set_test_id, callback) {
                    var page_id = void 0 === set_page_id ? et_pb_custom.page_id : set_page_id,
                        subject_id = void 0 === set_subject_id ? et_pb_get_subject_id(page_id) : set_subject_id,
                        test_id = void 0 === set_test_id ? function(postId) {
                            for (var i = 0; i < et_pb_custom.ab_tests; i++)
                                if (et_pb_custom.ab_tests[i].post_id === postId) return et_pb_custom.ab_tests[i].test_id;
                            return et_pb_custom.unique_test_id
                        }(page_id) : set_test_id,
                        stats_data = JSON.stringify({
                            test_id: page_id,
                            subject_id: subject_id,
                            record_type: record_type
                        });
                    et_pb_set_cookie(365, "et_pb_ab_" + record_type + "_" + page_id + test_id + ("click_goal" === record_type || "con_short" === record_type ? "" : subject_id) + "=true"), et_pb_ab_logged_status[page_id][record_type] = !0, $.ajax({
                        type: "POST",
                        url: et_pb_custom.ajaxurl,
                        data: {
                            action: "et_pb_update_stats_table",
                            stats_data_array: stats_data,
                            et_ab_log_nonce: et_pb_custom.et_ab_log_nonce
                        }
                    }).always(function() {
                        void 0 !== callback && callback()
                    })
                }

                function et_pb_get_subject_id(postId) {
                    var $subject = $("*[class*=et_pb_ab_subject_id-" + postId + "_]");
                    return !($subject.length <= 0 || $("html").is(".et_fb_preview_active--wireframe_preview")) && $subject.attr("class").split("et_pb_ab_subject_id-")[1].split(" ")[0].split("_")[1]
                }

                function et_builder_ab_get_goal_node(postId) {
                    return $(".et_pb_ab_goal_id-" + postId)
                }

                function et_pb_get_current_window_mode() {
                    var window_width = $et_window.width(),
                        current_mode = "desktop";
                    return window_width <= 980 && 479 < window_width ? current_mode = "tablet" : window_width <= 479 && (current_mode = "phone"), current_mode
                }

                function et_pb_check_cookie_value(cookie_name, value) {
                    return et_pb_get_cookie_value(cookie_name) == value
                }

                function et_pb_get_cookie_value(cookie_name) {
                    return function() {
                        for (var cookies = document.cookie.split("; "), ret = {}, i = cookies.length - 1; 0 <= i; i--) {
                            var el = cookies[i].split("=");
                            ret[el[0]] = el[1]
                        }
                        return ret
                    }()[cookie_name]
                }

                function et_pb_set_cookie(expire, cookie_content) {
                    var ms, date;
                    cookie_expire = (ms = 24 * expire * 60 * 60 * 1e3, (date = new Date).setTime(date.getTime() + ms), "; expires=" + date.toUTCString()), document.cookie = cookie_content + cookie_expire + "; path=/"
                }

                function et_pb_get_fixed_main_header_height() {
                    if (!window.et_is_fixed_nav) return 0;
                    var fixed_height_onload = void 0 === $("#main-header").attr("data-fixed-height-onload") ? 0 : $("#main-header").attr("data-fixed-height-onload");
                    return window.et_is_fixed_nav ? parseFloat(fixed_height_onload) : 0
                }
                window.et_fix_slider_height = isBuilder ? function($slider) {
                    var $this_slider = $slider || $et_pb_slider;
                    if ($this_slider && $this_slider.length) {
                        var address = $this_slider.data("address");
                        debounced_et_fix_slider_height[address] || (debounced_et_fix_slider_height[address] = window.et_pb_debounce(et_fix_slider_height, 100)), debounced_et_fix_slider_height[address]($slider)
                    }
                } : et_fix_slider_height, et_fix_nav_direction(), et_pb_form_placeholders_init($(".et_pb_comments_module #commentform")), $(".et-menu-nav ul.nav").each(function(i) {
                    et_duplicate_menu($(this), $(this).closest(".et_pb_module").find("div .mobile_nav"), "mobile_menu" + (i + 1), "et_mobile_menu")
                }), $(".et_pb_menu, .et_pb_fullwidth_menu").each(function() {
                    var this_menu = $(this),
                        bg_color = this_menu.data("bg_color");
                    bg_color && this_menu.find("ul").css({
                        "background-color": bg_color
                    })
                }), $et_pb_newsletter_button.click(function(event) {
                    et_pb_submit_newsletter($(this), event)
                }), $et_pb_newsletter_button.closest(".et_pb_newsletter").find("input[type=checkbox]").on("change", function() {
                    var $checkbox = $(this),
                        $checkbox_field = $checkbox.siblings("input[type=text]:first"),
                        is_checked = $checkbox.prop("checked");
                    $checkbox_field.val(is_checked ? $checkbox_field.data("checked") : $checkbox_field.data("unchecked"))
                }), window.et_pb_submit_newsletter = function($submit, event) {
                    if ($submit.closest(".et_pb_login_form").length) et_pb_maybe_log_event($submit.closest(".et_pb_newsletter"), "con_goal");
                    else {
                        if (void 0 !== event && event.preventDefault(), 0 < $(".et_pb_feedburner_form").length) return $feed_name = $(".et_pb_feedburner_form input[name=uri]").val(), window.open("https://feedburner.google.com/fb/a/mailverify?uri=" + $feed_name, "et-feedburner-subscribe", "scrollbars=yes,width=550,height=520"), !0;
                        var $newsletter_container = $submit.closest(".et_pb_newsletter"),
                            $name = $newsletter_container.find('input[name="et_pb_signup_firstname"]'),
                            $lastname = $newsletter_container.find('input[name="et_pb_signup_lastname"]'),
                            $email = $newsletter_container.find('input[name="et_pb_signup_email"]'),
                            list_id = $newsletter_container.find('input[name="et_pb_signup_list_id"]').val(),
                            $error_message = $newsletter_container.find(".et_pb_newsletter_error").hide(),
                            provider = $newsletter_container.find('input[name="et_pb_signup_provider"]').val(),
                            account = $newsletter_container.find('input[name="et_pb_signup_account_name"]').val(),
                            ip_address = $newsletter_container.find('input[name="et_pb_signup_ip_address"]').val(),
                            $fields_container = $newsletter_container.find(".et_pb_newsletter_fields"),
                            $success_message = $newsletter_container.find(".et_pb_newsletter_success"),
                            redirect_url = $newsletter_container.data("redirect_url"),
                            redirect_query = $newsletter_container.data("redirect_query"),
                            custom_fields = {},
                            hidden_fields = [],
                            et_message = "<ul>",
                            et_fields_message = "",
                            $custom_fields = $fields_container.find('input[type=text], .et_pb_checkbox_handle, .et_pb_contact_field[data-type="radio"], textarea, select').filter(".et_pb_signup_custom_field, .et_pb_signup_custom_field *");
                        $name.removeClass("et_pb_signup_error"), $lastname.removeClass("et_pb_signup_error"), $email.removeClass("et_pb_signup_error"), $custom_fields.removeClass("et_contact_error"), $error_message.html("");
                        var is_valid = !0,
                            form = $submit.closest(".et_pb_newsletter_form form");
                        if (0 < form.length && "function" == typeof form[0].reportValidity && (is_valid = form[0].reportValidity()), 0 < $name.length && !$name.val() && ($name.addClass("et_pb_signup_error"), is_valid = !1), 0 < $lastname.length && !$lastname.val() && ($lastname.addClass("et_pb_signup_error"), is_valid = !1), et_email_reg_html5.test($email.val()) || ($email.addClass("et_pb_signup_error"), is_valid = !1), is_valid) {
                            if ($custom_fields.each(function() {
                                    var $this_el = $(this),
                                        $this_wrapper = !1;
                                    "checkbox" === $this_el.data("field_type") && ($this_wrapper = $this_el.parents(".et_pb_contact_field")).removeClass("et_contact_error"), "radio" === $this_el.data("type") && ($this_wrapper = ($this_el = $this_el.find('input[type="radio"]')).parents(".et_pb_contact_field"));
                                    var default_value, this_id = $this_el.data("id"),
                                        this_val = $this_el.val(),
                                        this_label = $this_el.siblings("label:first").text(),
                                        field_type = void 0 !== $this_el.data("field_type") ? $this_el.data("field_type") : "text",
                                        required_mark = void 0 !== $this_el.data("required_mark") ? $this_el.data("required_mark") : "not_required",
                                        original_id = void 0 !== $this_el.data("original_id") ? $this_el.data("original_id") : "",
                                        unchecked = !1;
                                    if (this_id || (this_id = $this_el.data("original_id")), "radio" === field_type) {
                                        if (0 !== $this_wrapper.find('input[type="radio"]').length) {
                                            var $firstRadio = $this_wrapper.find('input[type="radio"]:first');
                                            required_mark = void 0 !== $firstRadio.data("required_mark") ? $firstRadio.data("required_mark") : "not_required", this_val = "", $this_wrapper.find('input[type="radio"]:checked') && (this_val = $this_wrapper.find('input[type="radio"]:checked').val())
                                        }
                                        this_label = $this_wrapper.find(".et_pb_contact_form_label").text(), this_id = $this_el.data("original_id"), $.isEmptyObject(this_val) || (custom_fields[this_id] = this_val), 0 === $this_wrapper.find('input[type="radio"]:checked').length && (unchecked = !0), this_val && (custom_fields[this_id] = this_val)
                                    } else if ("checkbox" === field_type) {
                                        if (this_val = {}, 0 !== $this_wrapper.find('input[type="checkbox"]').length) {
                                            var $checkboxHandle = $this_wrapper.find(".et_pb_checkbox_handle");
                                            required_mark = void 0 !== $checkboxHandle.data("required_mark") ? $checkboxHandle.data("required_mark") : "not_required", $this_wrapper.find('input[type="checked"]:checked') && $this_wrapper.find('input[type="checkbox"]:checked').each(function() {
                                                var field_id = $(this).data("id");
                                                this_val[field_id] = $(this).val()
                                            })
                                        }
                                        this_label = $this_wrapper.find(".et_pb_contact_form_label").text(), this_id = $this_wrapper.attr("data-id"), $.isEmptyObject(this_val) || (custom_fields[this_id] = this_val), 0 === $this_wrapper.find('input[type="checkbox"]:checked').length && (unchecked = !0)
                                    } else if ("ontraport" === provider && "select" === field_type) {
                                        var $selected_option = $this_el.find(":selected");
                                        custom_fields[this_id] = 0 < $selected_option.length ? $selected_option.data("id") : this_val
                                    } else custom_fields[this_id] = this_val;
                                    if (this_label = this_label.replace(/"/g, "&quot;"), $this_el.is(":visible") || "hidden" === $this_el.attr("type") || "radio" === $this_el.attr("type"))
                                        if ("hidden" !== $this_el.attr("type") && "radio" !== $this_el.attr("type") || $this_el.parents(".et_pb_contact_field").is(":visible")) {
                                            if ("required" !== required_mark || "" !== this_val && !0 !== unchecked || (!1 === $this_wrapper ? $this_el.addClass("et_contact_error") : $this_wrapper.addClass("et_contact_error"), is_valid = !1, "" === (default_value = this_label) && (default_value = et_pb_custom.captcha), et_fields_message += "<li>" + default_value + "</li>"), "email" === field_type) {
                                                var processed_email = this_val.trim().toLowerCase(),
                                                    is_valid_email = et_email_reg_html5.test(processed_email);
                                                "" === processed_email || this_label === processed_email || is_valid_email || ($this_el.addClass("et_contact_error"), is_valid = !1, is_valid_email || (et_message += "<li>" + et_pb_custom.invalid + "</li>"))
                                            }
                                        } else hidden_fields.push(this_id);
                                    else hidden_fields.push(original_id)
                                }), et_message += "</ul>", "" !== et_fields_message && ("<ul></ul>" !== et_message && (et_message = '<p class="et_normal_padding">' + et_pb_custom.contact_error_message + "</p>" + et_message), et_fields_message = "<ul>" + et_fields_message + "</ul>", et_fields_message = "<p>" + et_pb_custom.fill_message + "</p>" + et_fields_message, et_message = et_fields_message + et_message), "<ul></ul>" !== et_message) return $error_message.html(et_message).show(), void($newsletter_container.parents(".et_pb_section_parallax").length && $newsletter_container.parents(".et_pb_section_parallax").each(function() {
                                !$(this).children(".et_parallax_bg").hasClass("et_pb_parallax_css") && $et_window.trigger("resize")
                            }));
                            etCore.api.spam.recaptcha.interaction("Divi/Module/EmailOptin/List/" + list_id).then(function(token) {
                                $.ajax({
                                    type: "POST",
                                    url: et_pb_custom.ajaxurl,
                                    dataType: "json",
                                    data: {
                                        action: "et_pb_submit_subscribe_form",
                                        et_frontend_nonce: et_pb_custom.et_frontend_nonce,
                                        et_list_id: list_id,
                                        et_firstname: $name.val(),
                                        et_lastname: $lastname.val(),
                                        et_email: $email.val(),
                                        et_provider: provider,
                                        et_account: account,
                                        et_ip_address: ip_address,
                                        et_custom_fields: custom_fields,
                                        et_hidden_fields: hidden_fields,
                                        token: token
                                    },
                                    beforeSend: function() {
                                        $newsletter_container.find(".et_pb_newsletter_button").addClass("et_pb_button_text_loading").find(".et_subscribe_loader").show()
                                    },
                                    complete: function() {
                                        $newsletter_container.find(".et_pb_newsletter_button").removeClass("et_pb_button_text_loading").find(".et_subscribe_loader").hide()
                                    },
                                    success: function(data) {
                                        data ? (data.error && $error_message.show().append("<h2>").text(data.error), data.success && (redirect_url ? et_pb_maybe_log_event($newsletter_container, "con_goal", function() {
                                            var query = function() {
                                                var query = {};
                                                return redirect_query ? (0 < $name.length && -1 < redirect_query.indexOf("name") && (query.first_name = $name.val()), 0 < $lastname.length && -1 < redirect_query.indexOf("last_name") && (query.last_name = $lastname.val()), -1 < redirect_query.indexOf("email") && (query.email = $email.val()), -1 < redirect_query.indexOf("ip_address") && (query.ip_address = $newsletter_container.data("ip_address")), -1 < redirect_query.indexOf("css_id") && (query.form_id = $newsletter_container.attr("id")), decodeURIComponent($.param(query))) : ""
                                            }();
                                            query.length && (-1 < redirect_url.indexOf("?") ? redirect_url += "&" : redirect_url += "?"), window.location = redirect_url + query
                                        }) : (et_pb_maybe_log_event($newsletter_container, "con_goal"), $newsletter_container.find(".et_pb_newsletter_fields").hide(), $success_message.show()))) : $error_message.html(et_pb_custom.subscription_failed).show()
                                    }
                                })
                            })
                        }
                    }
                }, window.et_fix_testimonial_inner_width = function() {
                    var window_width = $(window).width();
                    959 < window_width ? $(".et_pb_testimonial").each(function() {
                        if ($(this).is(":visible")) {
                            var $testimonial = $(this),
                                $portrait = $testimonial.find(".et_pb_testimonial_portrait"),
                                portrait_width = $portrait.outerWidth(!0),
                                $testimonial_descr = $testimonial.find(".et_pb_testimonial_description"),
                                $outer_column = $testimonial.closest(".et_pb_column");
                            90 < portrait_width && ($portrait.css("padding-bottom", "0"), $portrait.width("90px"), $portrait.height("90px"));
                            var testimonial_indent = $outer_column.hasClass("et_pb_column_1_3") || $outer_column.hasClass("et_pb_column_1_4") || $outer_column.hasClass("et_pb_column_1_5") || $outer_column.hasClass("et_pb_column_1_6") || $outer_column.hasClass("et_pb_column_2_5") || $outer_column.hasClass("et_pb_column_3_8") ? 0 : portrait_width;
                            $testimonial_descr.css("margin-left", testimonial_indent)
                        }
                    }) : 767 < window_width ? $(".et_pb_testimonial").each(function() {
                        if ($(this).is(":visible")) {
                            var $testimonial = $(this),
                                portrait_width = $testimonial.find(".et_pb_testimonial_portrait").outerWidth(!0),
                                $testimonial_descr = $testimonial.find(".et_pb_testimonial_description"),
                                $outer_column = $testimonial.closest(".et_pb_column"),
                                testimonial_indent = $outer_column.hasClass("et_pb_column_1_4") || $outer_column.hasClass("et_pb_column_1_5") || $outer_column.hasClass("et_pb_column_1_6") || $outer_column.hasClass("et_pb_column_2_5") || $outer_column.hasClass("et_pb_column_3_8") ? 0 : portrait_width;
                            $testimonial_descr.css("margin-left", testimonial_indent)
                        }
                    }) : $(".et_pb_testimonial_description").removeAttr("style")
                }, window.et_fix_testimonial_inner_width(), window.et_pb_video_background_init = function($this_video_background, this_video_background) {
                    var $video_background_wrapper = $this_video_background.closest(".et_pb_section_video_bg"),
                        onplaying = !1,
                        onpause = !0;
                    this_video_background.onplaying = function() {
                        onpause = !(onplaying = !0)
                    }, this_video_background.onpause = function() {
                        onpause = !(onplaying = !1)
                    }, et_waypoint($video_background_wrapper, {
                        offset: "100%",
                        handler: function(direction) {
                            var is_play_outside_viewport = $video_background_wrapper.hasClass("et_pb_video_play_outside_viewport");
                            $this_video_background.is(":visible") && "down" === direction ? this_video_background.paused && !onplaying && this_video_background.play() : $this_video_background.is(":visible") && "up" === direction && (this_video_background.paused || onpause || is_play_outside_viewport || this_video_background.pause())
                        }
                    }, 2), et_waypoint($video_background_wrapper, {
                        offset: function() {
                            var video_height = this.element.clientHeight,
                                toggle_offset = Math.ceil(window.innerHeight / 2);
                            return toggle_offset < video_height && (toggle_offset = video_height), -1 * toggle_offset
                        },
                        handler: function(direction) {
                            var is_play_outside_viewport = $video_background_wrapper.hasClass("et_pb_video_play_outside_viewport");
                            $this_video_background.is(":visible") && "up" === direction ? this_video_background.paused && !onplaying && this_video_background.play() : $this_video_background.is(":visible") && "down" === direction && (this_video_background.paused || onpause || is_play_outside_viewport || this_video_background.pause())
                        }
                    }, 2)
                }, window.et_reinit_waypoint_modules = et_pb_debounce(function() {
                    var $et_pb_circle_counter = $(".et_pb_circle_counter"),
                        $et_pb_number_counter = $(".et_pb_number_counter"),
                        $et_pb_video_background = $(".et_pb_section_video_bg video");
                    if ($.fn.waypoint && window.et_pb_custom && "yes" !== window.et_pb_custom.ignore_waypoints && !isBuilder) {
                        et_process_animation_data(!0), $(".et-waypoint").each(function() {
                            et_waypoint($(this), {
                                offset: et_get_offset($(this), "100%"),
                                handler: function() {
                                    $(this.element).addClass("et-animated")
                                }
                            }, 2)
                        }), $et_pb_circle_counter.length && $et_pb_circle_counter.each(function() {
                            var $this_counter = $(this).find(".et_pb_circle_counter_inner");
                            $this_counter.is(":visible") && !et_has_animation_data($this_counter) && et_waypoint($this_counter, {
                                offset: et_get_offset($(this), "100%"),
                                handler: function() {
                                    $this_counter.data("PieChartHasLoaded") || void 0 === $this_counter.data("easyPieChart") || isBlockLayoutPreview || ($this_counter.data("easyPieChart").update($this_counter.data("number-value")), $this_counter.data("PieChartHasLoaded", !0))
                                }
                            }, 2)
                        }), $et_pb_number_counter.length && $et_pb_number_counter.each(function() {
                            var $this_counter = $(this);
                            et_has_animation_data($this_counter) || et_waypoint($this_counter, {
                                offset: et_get_offset($(this), "100%"),
                                handler: function() {
                                    $this_counter.data("easyPieChart").update($this_counter.data("number-value"))
                                }
                            })
                        }), isBuilder || $.each(et_pb_custom.ab_tests, function(index, test) {
                            var $et_pb_ab_goal = et_builder_ab_get_goal_node(test.post_id);
                            if (0 === $et_pb_ab_goal.length) return !0;
                            et_waypoint($et_pb_ab_goal, {
                                offset: et_get_offset($(this), "80%"),
                                handler: function() {
                                    !et_pb_ab_logged_status[test.post_id].read_goal && $et_pb_ab_goal.length && $et_pb_ab_goal.visible(!0) && (setTimeout(function() {
                                        $et_pb_ab_goal.length && $et_pb_ab_goal.visible(!0) && !et_pb_ab_logged_status[test.post_id].read_goal && et_pb_ab_update_stats("read_goal", test.post_id, void 0, test.test_id)
                                    }, 3e3), et_pb_maybe_log_event($et_pb_ab_goal, "view_goal"))
                                }
                            })
                        })
                    } else {
                        et_process_animation_data(!1);
                        var animated_class = isBuilder ? "et-animated--vb" : "et-animated";
                        $(".et-waypoint").addClass(animated_class), $(".et-waypoint").each(function() {
                            et_animate_element($(this))
                        }), $et_pb_circle_counter.length && $et_pb_circle_counter.each(function() {
                            var $this_counter = $(this).find(".et_pb_circle_counter_inner");
                            $this_counter.is(":visible") && ($this_counter.data("PieChartHasLoaded") || void 0 === $this_counter.data("easyPieChart") || ($this_counter.data("easyPieChart").update($this_counter.data("number-value")), $this_counter.data("PieChartHasLoaded", !0)))
                        }), $et_pb_number_counter.length && $et_pb_number_counter.each(function() {
                            var $this_counter = $(this);
                            $this_counter.data("easyPieChart").update($this_counter.data("number-value"))
                        }), $.each(et_pb_custom.ab_tests, function(index, test) {
                            var $et_pb_ab_goal = et_builder_ab_get_goal_node(test.post_id);
                            return 0 === $et_pb_ab_goal.length || (!(!et_pb_ab_logged_status[test.post_id].read_goal && $et_pb_ab_goal.length && $et_pb_ab_goal.visible(!0)) || (setTimeout(function() {
                                $et_pb_ab_goal.length && $et_pb_ab_goal.visible(!0) && !et_pb_ab_logged_status[test.post_id].read_goal && et_pb_ab_update_stats("read_goal", test.post_id, void 0, test.test_id)
                            }, 3e3), void et_pb_maybe_log_event($et_pb_ab_goal, "view_goal")))
                        })
                    }
                    $et_pb_video_background.length && $et_pb_video_background.each(function() {
                        var $this_video_background = $(this);
                        et_pb_video_background_init($this_video_background, this)
                    })
                }, 100), "undefined" != typeof et_link_options_data && 0 < et_link_options_data.length && $.each(et_link_options_data, function(index, link_option_entry) {
                    if (link_option_entry.class && link_option_entry.url && link_option_entry.target) {
                        var $clickable = $("." + link_option_entry.class);
                        $clickable.on("click", function(event) {
                            if (event.target !== event.currentTarget && !et_is_click_exception($(event.target)) || event.target === event.currentTarget) {
                                event.stopPropagation();
                                var url = link_option_entry.url;
                                if (url = (url = url.replace(/&#91;/g, "[")).replace(/&#93;/g, "]"), "_blank" === link_option_entry.target) return void window.open(url);
                                if ("#product_reviews_tab" === url) {
                                    var $reviewsTabLink = $(".reviews_tab a");
                                    0 < $reviewsTabLink.length && ($reviewsTabLink.trigger("click"), et_pb_smooth_scroll($reviewsTabLink, void 0, 800), history.pushState(null, "", url))
                                } else url && "#" === url[0] && $(url).length ? (et_pb_smooth_scroll($(url), void 0, 800), history.pushState(null, "", url)) : window.location = url
                            }
                        }), $clickable.on("click", "a, button", function(event) {
                            et_is_click_exception($(this)) || event.stopPropagation()
                        })
                    }
                });
                var fullscreen_section_width = {},
                    fullscreen_section_timeout = {};

                function fitvids_slider_fullscreen_init() {
                    $.fn.fitVids && ($(".et_pb_slide_video").fitVids(), $(".et_pb_module").fitVids({
                        customSelector: "iframe[src^='http://www.hulu.com'], iframe[src^='http://www.dailymotion.com'], iframe[src^='http://www.funnyordie.com'], iframe[src^='https://embed-ssl.ted.com'], iframe[src^='http://embed.revision3.com'], iframe[src^='https://flickr.com'], iframe[src^='http://blip.tv'], iframe[src^='http://www.collegehumor.com']"
                    })), et_fix_slider_height(), et_calculate_fullscreen_section_size()
                }

                function et_pb_window_load_scripts() {
                    et_fix_fullscreen_section(), et_calculate_fullscreen_section_size(), $(document).on("click", ".et_pb_fullwidth_header_scroll a", et_pb_fullwidth_header_scroll), setTimeout(function() {
                        $(".et_pb_preload").removeClass("et_pb_preload")
                    }, 500), $.fn.hashchange && ($(window).hashchange(function() {
                        ! function(hash) {
                            var modules, module_params, element;
                            if (hash.length)
                                if (-1 !== hash.indexOf(et_hash_module_seperator, 0)) {
                                    modules = hash.split(et_hash_module_seperator);
                                    for (var i = 0; i < modules.length; i++) element = (module_params = modules[i].split(et_hash_module_param_seperator))[0], module_params.shift(), element.length && $("#" + element).length && $("#" + element).trigger({
                                        type: "et_hashchange",
                                        params: module_params
                                    })
                                } else element = (module_params = hash.split(et_hash_module_param_seperator))[0], module_params.shift(), element.length && $("#" + element).length && $("#" + element).trigger({
                                    type: "et_hashchange",
                                    params: module_params
                                })
                        }(window.location.hash.replace(/[^a-zA-Z0-9-_|]/g, ""))
                    }), $(window).hashchange()), $et_pb_parallax.length && !et_is_mobile_device && $et_pb_parallax.each(function() {
                        et_pb_parallax_init($(this))
                    }), window.et_reinit_waypoint_modules(), $(".et_audio_content").length && $(window).trigger("resize")
                }

                function et_pb_set_paginated_content($current_module, is_cache) {
                    void 0 !== $current_module.find(".et_pb_salvattore_content").attr("data-columns") && (is_cache || salvattore.registerGrid($current_module.find(".et_pb_salvattore_content")[0]), salvattore.recreateColumns($current_module.find(".et_pb_salvattore_content")[0]), $current_module.find(".et_pb_post").css({
                        opacity: "1"
                    })), 0 < $current_module.find(".et_audio_container").length && "undefined" != typeof wp && void 0 !== wp.mediaelement && "function" == typeof wp.mediaelement.initialize && (wp.mediaelement.initialize(), $(window).trigger("resize")), 0 < $current_module.find(".et-waypoint, .et_pb_circle_counter, .et_pb_number_counter").length && $current_module.find(".et-waypoint, .et_pb_circle_counter, .et_pb_number_counter").each(function() {
                        var $waypoint_module = $(this);
                        $waypoint_module.hasClass("et_pb_circle_counter") && window.et_pb_reinit_circle_counters($waypoint_module), $waypoint_module.hasClass("et_pb_number_counter") && window.et_pb_reinit_number_counters($waypoint_module), 0 < $waypoint_module.find(".et_pb_counter_amount").length && $waypoint_module.find(".et_pb_counter_amount").each(function() {
                            window.et_bar_counters_init($(this))
                        }), $(this).css({
                            opacity: "1"
                        }), window.et_reinit_waypoint_modules()
                    }), 0 < $current_module.find(".et_pb_slider").length && $current_module.find(".et_pb_slider").each(function() {
                        et_pb_slider_init($(this))
                    }), $current_module.on("click", ".et_pb_video_overlay", function(e) {
                        e.preventDefault(), et_pb_play_overlayed_video($(this))
                    }), $current_module.fitVids({
                        customSelector: "iframe[src^='http://www.hulu.com'], iframe[src^='http://www.dailymotion.com'], iframe[src^='http://www.funnyordie.com'], iframe[src^='https://embed-ssl.ted.com'], iframe[src^='http://embed.revision3.com'], iframe[src^='https://flickr.com'], iframe[src^='http://blip.tv'], iframe[src^='http://www.collegehumor.com']"
                    }), $current_module.fadeTo("slow", 1), "function" == typeof window.et_shortcodes_init && window.et_shortcodes_init($current_module), et_init_audio_modules(), $("html, body").animate({
                        scrollTop: $current_module.offset().top - ($("#main-header").innerHeight() + $("#top-header").innerHeight() + 50)
                    });
                    var grid_items = $current_module.find(".et_pb_grid_item");
                    grid_items.length && et_pb_set_responsive_grid($(grid_items.parent().get(0)), ".et_pb_grid_item")
                }
                window.et_calc_fullscreen_section = function(event, section) {
                    var isResizing = "object" == typeof event && "resize" === event.type,
                        topWindow = isBuilder || isBlockLayoutPreview ? window.top : window,
                        $et_window = $(topWindow),
                        $this_section = section || $(this),
                        section_index = $this_section.index(".et_pb_fullscreen"),
                        timeout = isResizing && void 0 !== fullscreen_section_width[section_index] && event.target.window_width > fullscreen_section_width[section_index] ? 800 : 0;
                    fullscreen_section_width[section_index] = $et_window.width(), void 0 !== fullscreen_section_timeout[section_index] && clearTimeout(fullscreen_section_timeout[section_index]), fullscreen_section_timeout[section_index] = setTimeout(function() {
                        var $body = $("body"),
                            $tb_header = $(".et-l--header:first"),
                            tb_header_height = 0 < $tb_header.length ? $tb_header.height() : 0,
                            has_section = $this_section.length,
                            this_section_index = $this_section.index(".et_pb_fullwidth_header"),
                            this_section_offset = has_section ? $this_section.offset() : {},
                            $header = $this_section.children(".et_pb_fullwidth_header_container"),
                            $header_content = $header.children(".header-content-container"),
                            $header_image = $header.children(".header-image-container"),
                            sectionHeight = topWindow.innerHeight || $et_window.height(),
                            $wpadminbar = topWindow.jQuery("#wpadminbar"),
                            has_wpadminbar = $wpadminbar.length,
                            wpadminbar_height = has_wpadminbar ? $wpadminbar.height() : 0,
                            $top_header = $("#top-header"),
                            has_top_header = $top_header.length,
                            top_header_height = has_top_header ? $top_header.height() : 0,
                            $main_header = $("#main-header"),
                            has_main_header = $main_header.length,
                            main_header_height = has_main_header ? $main_header.outerHeight() : 0,
                            fixed_main_header_height = et_pb_get_fixed_main_header_height(),
                            is_wp_relative_admin_bar = $et_window.width() < 782,
                            is_desktop_view = 980 < $et_window.width(),
                            overall_header_height = ($et_window.width() <= 980 && $et_window.width(), $et_window.width(), wpadminbar_height + tb_header_height + top_header_height + (window.et_is_vertical_nav && is_desktop_view ? 0 : main_header_height)),
                            is_first_module = void 0 !== this_section_offset.top && this_section_offset.top <= overall_header_height;
                        $main_header.attr("data-height-onload") && (main_header_height = parseFloat($main_header.attr("data-height-onload"))), has_wpadminbar && (is_wp_relative_admin_bar ? is_first_module && (sectionHeight -= wpadminbar_height) : sectionHeight -= wpadminbar_height), has_top_header && is_desktop_view && (et_hide_nav && !window.et_is_vertical_nav ? is_first_module || (sectionHeight -= top_header_height) : !window.et_is_fixed_nav || window.et_is_vertical_nav ? is_first_module && (sectionHeight -= top_header_height) : sectionHeight -= top_header_height), has_main_header && (is_desktop_view ? et_hide_nav && !window.et_is_vertical_nav ? is_first_module || (sectionHeight -= fixed_main_header_height) : window.et_is_fixed_nav && !window.et_is_vertical_nav ? sectionHeight -= is_first_module ? main_header_height : fixed_main_header_height : window.et_is_fixed_nav || window.et_is_vertical_nav || is_first_module && (sectionHeight -= main_header_height) : is_first_module && (sectionHeight -= main_header_height)), $body.hasClass("et_transparent_nav") && $body.hasClass("et_hide_nav") && 0 === this_section_index && $this_section.css("padding-top", "");
                        var section_border_top_width = parseInt($this_section.css("borderTopWidth"));
                        section_border_top_width && (sectionHeight -= section_border_top_width);
                        var section_border_bottom_width = parseInt($this_section.css("borderBottomWidth"));
                        if (section_border_bottom_width && (sectionHeight -= section_border_bottom_width), 0 < tb_header_height && 0 === this_section_index && (sectionHeight -= tb_header_height), $this_section.css("min-height", sectionHeight + "px"), $header.css("min-height", sectionHeight + "px"), $header.hasClass("center") && $header_content.hasClass("bottom") && $header_image.hasClass("bottom") && $header.addClass("bottom-bottom"), $header.hasClass("center") && $header_content.hasClass("center") && $header_image.hasClass("center") && $header.addClass("center-center"), $header.hasClass("center") && $header_content.hasClass("center") && $header_image.hasClass("bottom")) {
                            $header.addClass("center-bottom");
                            var contentHeight = sectionHeight - $header_image.outerHeight(!0);
                            0 < contentHeight && $header_content.css("min-height", contentHeight + "px").css("height", "10px")
                        }
                        $header.hasClass("center") && $header_content.hasClass("bottom") && $header_image.hasClass("center") && $header.addClass("bottom-center"), ($header.hasClass("left") || $header.hasClass("right")) && !$header_content.length && $header_image.length && $header.css("justify-content", "flex-end"), $header.hasClass("center") && $header_content.hasClass("bottom") && !$header_image.length && $header_content.find(".header-content").css("margin-bottom", "80px"), $header_content.hasClass("bottom") && $header_image.hasClass("center") && ($header_image.find(".header-image").css("margin-bottom", "80px"), $header_image.css("align-self", "flex-end"));
                        var headerContentHeight = 0;
                        $header_content.length && (headerContentHeight += $header_content.outerHeight()), $header_image.length && (headerContentHeight += $header_image.outerHeight()), sectionHeight < headerContentHeight && ($this_section.css("min-height", headerContentHeight + "px"), $header.css("min-height", headerContentHeight + "px")), $header_image.hasClass("bottom") && (headerContentHeight < sectionHeight && ($this_section.css("min-height", headerContentHeight + 80 + "px"), $header.css("min-height", headerContentHeight + 80 + "px")), $header.css("justify-content", "flex-end"))
                    }, timeout)
                }, window.et_calculate_fullscreen_section_size = function() {
                    $("section.et_pb_fullscreen").each(function() {
                        $.proxy(et_calc_fullscreen_section, $(this))()
                    }), isBuilder || (clearTimeout(et_calc_fullscreen_section.timeout), et_calc_fullscreen_section.timeout = setTimeout(function() {
                        $fullscreenSectionWindow.off("resize", et_calculate_fullscreen_section_size), $fullscreenSectionWindow.off("et-pb-header-height-calculated", et_calculate_fullscreen_section_size), $fullscreenSectionWindow.trigger("resize"), $fullscreenSectionWindow.on("resize", et_calculate_fullscreen_section_size), $fullscreenSectionWindow.on("et-pb-header-height-calculated", et_calculate_fullscreen_section_size)
                    }))
                }, isBuilder || ($fullscreenSectionWindow.on("resize", et_calculate_fullscreen_section_size), $fullscreenSectionWindow.on("et-pb-header-height-calculated", et_calculate_fullscreen_section_size)), window.debounced_et_apply_builder_css_parallax = et_pb_debounce(et_apply_builder_css_parallax, 100), window.et_pb_parallax_init = function($this_parallax) {
                    var $this_parent = $this_parallax.parent();
                    isBuilder || isBlockLayoutPreview ? window.top : window;
                    $this_parent.hasClass("et_parallax_bg_wrap") && ($this_parent = $this_parent.parent()), $this_parallax.hasClass("et_pb_parallax_css") ? ($("body").hasClass("et-fb") || isTB || isBlockLayoutPreview) && ($.proxy(et_apply_builder_css_parallax, $this_parent)(), isTB ? top_window.jQuery("#et-fb-app").on("scroll.etCssParallaxBackground", $.proxy(et_apply_builder_css_parallax, $this_parent)).on("resize.etCssParallaxBackground", $.proxy(window.debounced_et_apply_builder_css_parallax, $this_parent)) : $(window).on("scroll.etCssParallaxBackground", $.proxy(et_apply_builder_css_parallax, $this_parent)).on("resize.etCssParallaxBackground", $.proxy(window.debounced_et_apply_builder_css_parallax, $this_parent))) : ($.proxy(et_parallax_set_height, $this_parent)(), $.proxy(et_apply_parallax, $this_parent)(), isTB ? top_window.jQuery("#et-fb-app").on("scroll.etTrueParallaxBackground", $.proxy(et_apply_parallax, $this_parent)) : $(window).on("scroll.etTrueParallaxBackground", $.proxy(et_apply_parallax, $this_parent)), $(window).on("resize.etTrueParallaxBackground", $.proxy(et_pb_debounce(et_parallax_set_height, 100), $this_parent)), $(window).on("resize.etTrueParallaxBackground", $.proxy(et_pb_debounce(et_apply_parallax, 100), $this_parent)), $this_parent.find(".et-learn-more .heading-more").click(function() {
                        setTimeout(function() {
                            $.proxy(et_parallax_set_height, $this_parent)()
                        }, 300)
                    }))
                }, $(window).resize(function() {
                    var window_width = $et_window.width(),
                        et_container_css_width = $et_container.css("width"),
                        et_container_actual_width = (void 0 !== et_container_css_width ? "%" !== et_container_css_width.substr(-1, 1) : "") ? $et_container.width() : $et_container.width() / 100 * window_width,
                        containerWidthChanged = et_container_width !== et_container_actual_width,
                        $dividers = $(".et_pb_top_inside_divider, .et_pb_bottom_inside_divider");
                    if (et_pb_resize_section_video_bg(), et_pb_center_video(), et_fix_slider_height(), et_fix_nav_direction(), et_fix_html_margin(), $et_pb_fullwidth_portfolio.each(function() {
                            set_container_height = !!$(this).hasClass("et_pb_fullwidth_portfolio_carousel"), set_fullwidth_portfolio_columns($(this), set_container_height)
                        }), containerWidthChanged || window.et_force_width_container_change) {
                        $(".container-width-change-notify").trigger("containerWidthChanged"), setTimeout(function() {
                            $et_pb_filterable_portfolio.each(function() {
                                set_filterable_grid_items($(this))
                            }), $et_pb_gallery.each(function() {
                                $(this).hasClass("et_pb_gallery_grid") && set_gallery_grid_items($(this))
                            })
                        }, 100), et_container_width = et_container_actual_width, !0;
                        var $et_pb_circle_counter = $(".et_pb_circle_counter");
                        $et_pb_circle_counter.length && $et_pb_circle_counter.each(function() {
                            var $this_counter = $(this).find(".et_pb_circle_counter_inner");
                            if ($this_counter.is(":visible")) {
                                void 0 === $this_counter.data("easyPieChart") && window.et_pb_circle_counter_init($this_counter);
                                var current_mode = et_pb_get_current_window_mode(),
                                    suffix = "desktop" !== (et_animation_breakpoint = current_mode) ? "-" + current_mode : "",
                                    bar_color = $this_counter.data("bar-bg-color" + suffix);
                                void 0 !== bar_color && "" !== bar_color && ($this_counter.data("easyPieChart").options.barColor = bar_color);
                                var track_color = $this_counter.data("color" + suffix);
                                void 0 !== track_color && "" !== track_color && ($this_counter.data("easyPieChart").options.trackColor = track_color, $this_counter.trigger("containerWidthChanged"));
                                var track_color_alpha = $this_counter.data("alpha" + suffix);
                                void 0 !== track_color_alpha && "" !== track_color_alpha && ($this_counter.data("easyPieChart").options.trackAlpha = track_color_alpha, $this_counter.trigger("containerWidthChanged")), $this_counter.data("easyPieChart").update($this_counter.data("number-value"))
                            }
                        }), $et_pb_countdown_timer.length && $et_pb_countdown_timer.each(function() {
                            var timer = $(this);
                            et_countdown_timer_labels(timer)
                        }), window.et_force_width_container_change = !1
                    }
                    window.et_fix_testimonial_inner_width(), $et_pb_counter_amount.length && $et_pb_counter_amount.each(function() {
                        window.et_bar_counters_init($(this))
                    }), isBuilder && et_pb_get_current_window_mode() !== et_animation_breakpoint && et_process_animation_data(!1), ($et_pb_map.length || isBuilder) && function($et_pb_map) {
                        if (et_pb_get_current_window_mode() === et_animation_breakpoint) return;
                        $et_pb_map.each(function() {
                            var $this_map = $(this),
                                this_map = $this_map.data("map");
                            if (void 0 !== this_map) {
                                var current_mode = et_pb_get_current_window_mode(),
                                    suffix = "desktop" !== (et_animation_breakpoint = current_mode) ? "-" + current_mode : "",
                                    prev_suffix = "phone" === current_mode ? "-tablet" : "",
                                    grayscale_value = $this_map.attr("data-grayscale" + suffix) || 0;
                                grayscale_value || (grayscale_value = $this_map.attr("data-grayscale" + prev_suffix) || $this_map.attr("data-grayscale") || 0), 0 !== grayscale_value && (grayscale_value = "-" + grayscale_value.toString()), this_map.setOptions({
                                    styles: [{
                                        stylers: [{
                                            saturation: parseInt(grayscale_value)
                                        }]
                                    }]
                                })
                            }
                        })
                    }($et_pb_map), (grid_containers.length || isBuilder) && $(grid_containers).each(function() {
                        window.et_pb_set_responsive_grid($(this), ".et_pb_grid_item")
                    }), !isBuilder && $dividers.length && $dividers.each(function() {
                        etFixDividerSpacing($(this))
                    })
                }), isBuilder ? $(window).one("et_fb_init_app_after", fitvids_slider_fullscreen_init) : fitvids_slider_fullscreen_init(), window.et_pb_fullwidth_header_scroll = function(event) {
                    event.preventDefault();
                    var window_width = $et_window.width(),
                        $body = $("body"),
                        is_wp_relative_admin_bar = window_width < 782,
                        is_transparent_main_header = $body.hasClass("et_transparent_nav"),
                        is_hide_nav = $body.hasClass("et_hide_nav"),
                        is_desktop_view = 980 < window_width,
                        $this_section = $(this).parents("section"),
                        this_section_offset = $this_section.offset(),
                        $wpadminbar = $("#wpadminbar"),
                        $main_header = $("#main-header"),
                        wpadminbar_height = $wpadminbar.length && !is_wp_relative_admin_bar ? $wpadminbar.height() : 0,
                        top_header_height = window.et_is_fixed_nav && is_desktop_view ? $top_header.height() : 0,
                        data_height_onload = void 0 === $main_header.attr("data-height-onload") ? 0 : $main_header.attr("data-height-onload"),
                        initial_fixed_difference = $main_header.height() === et_pb_get_fixed_main_header_height() || !is_desktop_view || !window.et_is_fixed_nav || is_transparent_main_header || is_hide_nav ? 0 : et_pb_get_fixed_main_header_height() - parseFloat(data_height_onload),
                        section_bottom = this_section_offset.top + $this_section.outerHeight(!0) + initial_fixed_difference - (wpadminbar_height + top_header_height + et_pb_get_fixed_main_header_height());
                    if (!isVB && window.et_is_fixed_nav && is_transparent_main_header) {
                        var clone = $main_header.clone().addClass("et-disabled-animations et-fixed-header").css("visibility", "hidden").appendTo($body);
                        section_bottom += et_pb_get_fixed_main_header_height() - clone.height(), clone.remove()
                    }
                    if ($this_section.length) {
                        $("html, body").animate({
                            scrollTop: section_bottom
                        }, {
                            duration: 800
                        })
                    }
                }, window.et_load_event_fired ? et_pb_window_load_scripts() : $(window).load(function() {
                    et_pb_window_load_scripts()
                }), $(".et_section_specialty").length && $(".et_section_specialty").each(function() {
                    $(this).find(".et_pb_row").find(">.et_pb_column:not(.et_pb_specialty_column)").addClass("et_pb_column_single")
                }), $(".et_pb_section_parallax").length && $(".et_pb_map").length && $("body").addClass("parallax-map-support"), window.et_pb_custom && $(".et_pb_widget_area " + window.et_pb_custom.widget_search_selector).each(function() {
                    var $search_wrap = $(this),
                        $search_input_submit = $search_wrap.find('input[type="submit"]'),
                        search_input_submit_text = $search_input_submit.attr("value"),
                        $search_button = $search_wrap.find("button"),
                        search_button_text = $search_button.text(),
                        has_submit_button = !(!$search_input_submit.length && !$search_button.length);
                    ($search_wrap.find('input[type="text"]').length || $search_wrap.find('input[type="search"]').length) && (has_submit_button || $search_wrap.addClass("et-no-submit-button"), $search_wrap.width() < 150 && $search_wrap.addClass("et-narrow-wrapper"), !$search_input_submit.length || void 0 !== search_input_submit_text && "" !== search_input_submit_text || ($search_input_submit.remove(), $search_wrap.addClass("et-no-submit-button")), !$search_button.length || void 0 !== search_button_text && "" !== search_button_text || ($search_button.remove(), $search_wrap.addClass("et-no-submit-button")))
                }), $("body").on("click", ".et_pb_ajax_pagination_container .wp-pagenavi a,.et_pb_ajax_pagination_container .pagination a", function() {
                    var $current_module, this_link = $(this),
                        href = this_link.attr("href"),
                        current_href = window.location.href,
                        module_classes = this_link.closest(".et_pb_module").attr("class").split(" "),
                        module_class_processed = "",
                        animation_classes = ["et_animated", "infinite", "et-waypoint", "fade", "fadeTop", "fadeRight", "fadeBottom", "fadeLeft", "slide", "slideTop", "slideRight", "slideBottom", "slideLeft", "bounce", "bounceTop", "bounceRight", "bounceBottom", "bounceLeft", "zoom", "zoomTop", "zoomRight", "zoomBottom", "zoomLeft", "flip", "flipTop", "flipRight", "flipBottom", "flipLeft", "fold", "foldTop", "foldRight", "foldBottom", "foldLeft", "roll", "rollTop", "rollRight", "rollBottom", "rollLeft", "transformAnim"];
                    return window.et_pb_ajax_pagination_cache = window.et_pb_ajax_pagination_cache || [], $.each(module_classes, function(index, value) {
                        -1 === $.inArray(value, animation_classes) && "et_had_animation" !== value && "" !== value.trim() && (module_class_processed += "." + value)
                    }), et_remove_animation($current_module = $(module_class_processed)), void 0 !== window.et_pb_ajax_pagination_cache[href + module_class_processed] ? $current_module.fadeTo("slow", .2, function() {
                        $current_module.find(".et_pb_ajax_pagination_container").replaceWith(window.et_pb_ajax_pagination_cache[href + module_class_processed]), et_pb_set_paginated_content($current_module, !0), $(".et_pb_tabs").length && window.et_pb_tabs_init($(".et_pb_tabs"))
                    }) : (void 0 === window.et_pb_ajax_pagination_cache[current_href + module_class_processed] && (window.et_pb_ajax_pagination_cache[current_href + module_class_processed] = $current_module.find(".et_pb_ajax_pagination_container")), $current_module.fadeTo("slow", .2, function() {
                        var paginate = function(page) {
                                var $page = jQuery(page),
                                    $style = $page.filter("#et-builder-module-design-cached-inline-styles"),
                                    $content = $page.find(module_class_processed + " .et_pb_ajax_pagination_container").prepend($style);
                                et_remove_animation($content.find(".et_animated")), $current_module.find(".et_pb_ajax_pagination_container").replaceWith($content), window.et_pb_ajax_pagination_cache[href + module_class_processed] = $content, et_pb_set_paginated_content($current_module, !1), $(".et_pb_tabs").length && window.et_pb_tabs_init($(".et_pb_tabs"))
                            },
                            ajaxSettings = {
                                url: href,
                                success: paginate,
                                error: function(page) {
                                    404 === page.status && 0 < jQuery("body.error404").length && paginate(page.responseText)
                                }
                            };
                        isBlockLayoutPreview && (ajaxSettings.data = {
                            et_layout_block_layout_content: ETBlockLayoutPreview.layoutContent
                        }, ajaxSettings.method = "POST"), jQuery.ajax(ajaxSettings)
                    })), !1
                }), window.et_pb_search_init = function($search) {
                    var current_mode = et_pb_get_current_window_mode(),
                        suffix = "desktop" !== (et_animation_breakpoint = current_mode) ? "-" + current_mode : "",
                        $input_field = $search.find(".et_pb_s"),
                        $button = $search.find(".et_pb_searchsubmit"),
                        input_padding = $search.hasClass("et_pb_text_align_right" + suffix) ? "paddingLeft" : "paddingRight",
                        reverse_input_padding = "paddingLeft" === input_padding ? "paddingRight" : "paddingLeft",
                        disabled_button = $search.hasClass("et_pb_hide_search_button"),
                        buttonHeight = $button.outerHeight(),
                        buttonWidth = $button.outerWidth(),
                        inputHeight = $input_field.innerHeight();
                    $button.css({
                        position: "relative"
                    }), inputHeight < buttonHeight && $input_field.innerHeight(buttonHeight), disabled_button || ($input_field.css(reverse_input_padding, ""), $input_field.css(input_padding, buttonWidth + 10)), $button.css({
                        position: ""
                    })
                }, window.et_pb_search_percentage_custom_margin_fix = function($search) {
                    var inputMargin = $search.find(".et_pb_s").css("margin").split(" "),
                        inputMarginObj = {};
                    switch (inputMargin.length) {
                        case 4:
                            inputMarginObj = {
                                top: inputMargin[0],
                                right: inputMargin[1],
                                bottom: inputMargin[2],
                                left: inputMargin[3]
                            };
                            break;
                        case 2:
                            inputMarginObj = {
                                top: inputMargin[0],
                                right: inputMargin[1],
                                bottom: inputMargin[0],
                                left: inputMargin[1]
                            };
                            break;
                        default:
                            inputMarginObj = {
                                top: inputMargin[0],
                                right: inputMargin[0],
                                bottom: inputMargin[0],
                                left: inputMargin[0]
                            }
                    }
                    var inputRight = 0 - parseFloat(inputMarginObj.left) + "px";
                    $search.find(".et_pb_searchsubmit").css({
                        top: inputMarginObj.top,
                        right: inputRight,
                        bottom: inputMarginObj.bottom
                    })
                }, $(".et_pb_search").length && $(".et_pb_search").each(function() {
                    var $search = $(this);
                    $search.is(".et_pb_search_percentage_custom_margin") && et_pb_search_percentage_custom_margin_fix($search), et_pb_search_init($search)
                }), window.et_pb_comments_init = function($comments_module) {
                    var $comments_module_button = $comments_module.find(".comment-reply-link, .submit");
                    $comments_module_button.length && ($comments_module_button.addClass("et_pb_button"), void 0 !== $comments_module.attr("data-icon") && "" !== $comments_module.attr("data-icon") && ($comments_module_button.attr("data-icon", $comments_module.attr("data-icon")), $comments_module_button.addClass("et_pb_custom_button_icon")), void 0 !== $comments_module.attr("data-icon-tablet") && "" !== $comments_module.attr("data-icon-tablet") && ($comments_module_button.attr("data-icon-tablet", $comments_module.attr("data-icon-tablet")), $comments_module_button.addClass("et_pb_custom_button_icon")), void 0 !== $comments_module.attr("data-icon-phone") && "" !== $comments_module.attr("data-icon-phone") && ($comments_module_button.attr("data-icon-phone", $comments_module.attr("data-icon-phone")), $comments_module_button.addClass("et_pb_custom_button_icon")))
                }, $(".et_pb_comments_module").length && $(".et_pb_comments_module").each(function() {
                    var $comments_module = $(this);
                    et_pb_comments_init($comments_module)
                });
                var previousCallback = document.onreadystatechange || function() {};

                function et_conditional_check($form) {
                    $form.find("[data-conditional-logic]").each(function() {
                        for (var $conditional = $(this), rules = $conditional.data("conditional-logic"), relation = $conditional.data("conditional-relation"), matched_rules = [], i = 0; i < rules.length; i++) {
                            var field_value, ruleset = rules[i],
                                check_id = ruleset[0],
                                check_type = ruleset[1],
                                check_value = ruleset[2],
                                $wrapper = $form.find('.et_pb_contact_field[data-id="' + check_id + '"]'),
                                field_type = ($wrapper.data("id"), $wrapper.data("type"));
                            if ($wrapper.is(":visible")) {
                                switch (field_type) {
                                    case "input":
                                    case "email":
                                        field_value = $wrapper.find("input").val();
                                        break;
                                    case "text":
                                        field_value = $wrapper.find("textarea").val();
                                        break;
                                    case "radio":
                                        field_value = $wrapper.find("input:checked").val() || "";
                                        break;
                                    case "checkbox":
                                        var $checkbox = $wrapper.find(":checkbox:checked");
                                        field_value = !1, $checkbox.each(function() {
                                            if (check_value === $(this).val()) return !(field_value = !0)
                                        }), check_value = !0;
                                        break;
                                    case "select":
                                        field_value = $wrapper.find("select").val()
                                }
                                if ("is empty" !== check_type && "is not empty" !== check_type || (check_type = "is empty" === check_type ? "is" : "is not", check_value = "", "checkbox" === field_type && !1 === field_value && (field_value = "")), field_value && "string" == typeof field_value && (field_value = field_value.replace(/\\(.)/g, "$1")), !("is" === check_type && field_value !== check_value || "is not" === check_type && field_value === check_value)) {
                                    var containsRegExp = new RegExp(check_value, "i");
                                    if ("string" == typeof check_value && (containsRegExp = new RegExp(check_value.replace(/[\\^$*+?.()|[\]{}]/g, "\\$&"), "i")), ("contains" !== check_type || field_value.match(containsRegExp)) && ("does not contain" !== check_type || !field_value.match(containsRegExp))) {
                                        var maybeNumericValue = parseInt(field_value),
                                            maybeNumbericCheckValue = parseInt(check_value);
                                        ("is greater" !== check_type && "is less" !== check_type || !isNaN(maybeNumericValue) && !isNaN(maybeNumbericCheckValue)) && ("is greater" === check_type && maybeNumericValue <= maybeNumbericCheckValue || "is less" === check_type && maybeNumbericCheckValue <= maybeNumericValue || matched_rules.push(!0))
                                    }
                                }
                            }
                        }
                        $conditional.hide();
                        var $conditional_input = $conditional.find('input[type="text"]'),
                            conditional_pattern = $conditional_input.attr("pattern");
                        $conditional_input.attr("novalidate", "novalidate"), $conditional_input.attr("data-pattern", conditional_pattern), $conditional_input.removeAttr("pattern"), "all" === relation && rules.length === matched_rules.length && ($conditional.show(), $conditional_input.removeAttr("novalidate"), $conditional_input.attr("pattern", $conditional_input.data("pattern"))), "any" === relation && 0 < matched_rules.length && ($conditional.show(), $conditional_input.removeAttr("novalidate"), $conditional_input.attr("pattern", $conditional_input.data("pattern")))
                    })
                }
                if (document.onreadystatechange = function() {
                        "complete" === document.readyState && window.et_fix_pricing_currency_position(), previousCallback()
                    }, $(".et_pb_contact_form_container, .et_pb_newsletter_custom_fields").each(function() {
                        var $form = $(this),
                            condition_check = function() {
                                et_conditional_check($form)
                            },
                            debounced_condition_check = et_pb_debounce(condition_check, 250);
                        $form.on("change", "input, textarea, select", condition_check), $form.on("keydown", "input, textarea, select", debounced_condition_check), et_conditional_check($form)
                    }), "undefined" != typeof et_animation_data && 0 < et_animation_data.length) {
                    for (var maxMenuIndex = 0, i = 0; i < et_animation_data.length; i++) {
                        var animation_entry = et_animation_data[i];
                        if (animation_entry.class) {
                            var $animationEntry = $("." + animation_entry.class);
                            ($animationEntry.hasClass("et_pb_menu") || $animationEntry.hasClass("et_pb_fullwidth_menu")) && maxMenuIndex++
                        }
                    }
                    $(".et_pb_menu, .et_pb_fullwidth_menu").each(function() {
                        var $menu = $(this);
                        $menu.on("webkitAnimationEnd oanimationend msAnimationEnd animationend", function() {
                            $menu.css("z-index", maxMenuIndex - $menu.index(".et_pb_menu, .et_pb_fullwidth_menu"))
                        })
                    })
                }
                $(document).trigger("et_pb_after_init_modules")
            })
        }, window.etFixDividerSpacing = function($divider) {
            $divider.attr("style", "");
            var backgroundSize = $divider.css("backgroundSize").split(" "),
                horizontalSize = backgroundSize[0],
                verticalSize = backgroundSize[1];
            if ("string" == typeof horizontalSize && "string" == typeof verticalSize && "100%" !== horizontalSize && "%" === horizontalSize.substr(-1, 1)) {
                var dividerWidth = parseFloat($divider.outerWidth()),
                    imageWidth = parseFloat(horizontalSize) / 100 * dividerWidth,
                    backgroundSizePx = parseInt(imageWidth) + "px " + verticalSize;
                $divider.css("backgroundSize", backgroundSizePx)
            }
        }, window.et_pb_custom && window.et_pb_custom.is_ab_testing_active && "yes" === window.et_pb_custom.is_cache_plugin_active) {
        $(window).load(function() {
            window.et_load_event_fired = !0
        });
        var pendingRequests = et_pb_custom.ab_tests.length;
        $.each(et_pb_custom.ab_tests, function(index, test) {
            $.ajax({
                type: "POST",
                url: et_pb_custom.ajaxurl,
                dataType: "json",
                data: {
                    action: "et_pb_ab_get_subject_id",
                    et_frontend_nonce: et_pb_custom.et_frontend_nonce,
                    et_pb_ab_test_id: test.post_id
                },
                success: function(subject_data) {
                    if (subject_data) {
                        var $placeholder = $(".et_pb_subject_placeholder_id_" + test.post_id + "_" + subject_data.id);
                        $placeholder.after(subject_data.content), $placeholder.remove()
                    }(pendingRequests -= 1) <= 0 && ($(".et_pb_subject_placeholder").remove(), window.et_pb_init_modules(), $("body").trigger("et_pb_ab_subject_ready"))
                }
            })
        })
    } else window.et_pb_init_modules();

    function et_fix_html_margin() {
        $("body").is(".et-fb") && (0 < $("#wpadminbar").length && setTimeout(function() {
            $("#et_fix_html_margin").remove(), $("<style />", {
                id: "et_fix_html_margin",
                text: "html.js.et-fb-top-html { margin-top: 0px !important; }"
            }).appendTo("head")
        }, 0))
    }

    function menuModuleCloseSearch($module) {
        var $menu = $module.find(".et_pb_menu__wrap:first"),
            $search = $module.find(".et_pb_menu__search-container:first"),
            $input = $module.find(".et_pb_menu__search-input:first");
        $search.hasClass("et_pb_is_animating") || ($menu.removeClass("et_pb_menu__wrap--hidden").addClass("et_pb_menu__wrap--visible"), $search.removeClass("et_pb_menu__search-container--visible").addClass("et_pb_menu__search-container--hidden et_pb_is_animating"), $input.blur(), setTimeout(function() {
            $search.removeClass("et_pb_is_animating").addClass("et_pb_menu__search-container--disabled")
        }, 1e3))
    }
    $(document).ready(function() {
        $(".et_pb_top_inside_divider.et-no-transition, .et_pb_bottom_inside_divider.et-no-transition").removeClass("et-no-transition").each(function() {
            etFixDividerSpacing($(this))
        }), setTimeout(function() {
            (window.et_pb_box_shadow_elements || []).map(et_pb_box_shadow_apply_overlay)
        }, 0)
    }), $(window).load(function() {
        var $body = $("body");
        if (window.et_load_event_fired = !0, $body.hasClass("safari")) {
            var original_display_value = $body.css("display"),
                different_display_value = "initial" === original_display_value ? "block" : "initial";
            if ($body.css({
                    display: different_display_value
                }), setTimeout(function() {
                    $body.css({
                        display: original_display_value
                    })
                }, 0), $body.hasClass("woocommerce-page") && $body.hasClass("single-product")) {
                var $wc = $(".woocommerce div.product div.images.woocommerce-product-gallery");
                if (0 === $wc.length) return;
                var opacity = parseInt($wc[0].style.opacity);
                if (!opacity) return;
                $wc.css({
                    opacity: opacity - .09
                }), setTimeout(function() {
                    $wc.css({
                        opacity: opacity
                    })
                }, 0)
            }
        }
        0 < $(".et_pb_module #rating").length && $(".et_pb_module #rating").each(function() {
            window.et_pb_init_woo_star_rating($(this))
        }), 0 < $(".et_pb_woo_custom_button_icon").length && $(".et_pb_woo_custom_button_icon").each(function() {
            var $thisModule = $(this),
                buttonClass = $thisModule.data("button-class"),
                $buttonEl = $thisModule.find("." + buttonClass),
                buttonIcon = $thisModule.attr("data-button-icon"),
                buttonIconTablet = $thisModule.attr("data-button-icon-tablet"),
                buttonIconPhone = $thisModule.attr("data-button-icon-phone");
            $buttonEl.addClass("et_pb_promo_button et_pb_button"), (buttonIcon || buttonIconTablet || buttonIconPhone) && ($buttonEl.addClass("et_pb_custom_button_icon"), $buttonEl.attr("data-icon", buttonIcon), $buttonEl.attr("data-icon-tablet", buttonIconTablet), $buttonEl.attr("data-icon-phone", buttonIconPhone))
        }), 0 < $(".et_pb_wc_meta").length && $(".et_pb_wc_meta").each(function() {
            var $thisModule = $(this);
            "" === $thisModule.find(".product_meta span:visible").text() && $thisModule.addClass("et_pb_wc_meta_empty")
        })
    }), $(document).ready(function() {
        if (void 0 !== MutationObserver)
            for (var getInvisibleNodes = function($sections) {
                    return $sections.filter(function() {
                        return !$(this).is(":visible")
                    }).length
                }, $sections = $(".et_pb_section"), sectionParents = function($sections) {
                    var filterMethod = void 0 !== $.uniqueSort ? $.uniqueSort : $.unique,
                        $sectionParents = $([]);
                    return $sections.each(function() {
                        $sectionParents = $sectionParents.add($(this).parents())
                    }), filterMethod($sectionParents.get())
                }($sections), invisibleSections = getInvisibleNodes($sections), observer = new MutationObserver(window.et_pb_debounce(function() {
                    var newInvisibleSections = getInvisibleNodes($sections);
                    newInvisibleSections < invisibleSections && $(window).trigger("resize"), invisibleSections = newInvisibleSections
                }, 200)), i = 0; i < sectionParents.length; i++) observer.observe(sectionParents[i], {
                childList: !0,
                attributes: !0,
                attributeFilter: ["class", "style"],
                attributeOldValue: !1,
                characterData: !1,
                characterDataOldValue: !1,
                subtree: !1
            })
    }), et_fix_html_margin(), $(document).on("click", ".et_pb_menu__search-button", function() {
        ! function($module) {
            var $menu = $module.find(".et_pb_menu__wrap:first"),
                $search = $module.find(".et_pb_menu__search-container:first"),
                $input = $module.find(".et_pb_menu__search-input:first"),
                $logo = $module.find(".et_pb_row > .et_pb_menu__logo-wrap:first, .et_pb_menu_inner_container > .et_pb_menu__logo-wrap:first"),
                isMobile = $(window).width() <= 980;
            if (!$search.hasClass("et_pb_is_animating")) {
                if ($menu.find(".mobile_nav.opened").removeClass("opened").addClass("closed"), $menu.find(".et_mobile_menu").hide(), $menu.removeClass("et_pb_menu__wrap--visible").addClass("et_pb_menu__wrap--hidden"), $search.removeClass("et_pb_menu__search-container--hidden et_pb_menu__search-container--disabled").addClass("et_pb_menu__search-container--visible et_pb_is_animating"), $search.css("padding-top", 0), $module.hasClass("et_pb_menu--style-left_aligned") || $module.hasClass("et_pb_fullwidth_menu--style-left_aligned")) $search.css("padding-left", $logo.width());
                else {
                    var logoHeight = $logo.height();
                    $search.css("padding-left", 0), (isMobile || $module.hasClass("et_pb_menu--style-centered") || $module.hasClass("et_pb_fullwidth_menu--style-centered")) && $search.css("padding-top", 0 < logoHeight ? logoHeight + 30 : 0)
                }
                $input.css("font-size", $module.find(".et-menu-nav li a:first").css("font-size")), $input.focus(), setTimeout(function() {
                    $menu.addClass("et_pb_no_animation"), $search.addClass("et_pb_no_animation").removeClass("et_pb_is_animating")
                }, 1e3)
            }
        }($(this).closest(".et_pb_module"))
    }), $(document).on("click", ".et_pb_menu__close-search-button", function() {
        menuModuleCloseSearch($(this).closest(".et_pb_module"))
    }), $(document).on("blur", ".et_pb_menu__search-input", function() {
        menuModuleCloseSearch($(this).closest(".et_pb_module"))
    }), $(document).ready(function() {
        $(".et_pb_menu--style-inline_centered_logo, .et_pb_fullwidth_menu--style-inline_centered_logo").each(function() {
            ! function($module) {
                var $logo = $module.find(".et_pb_menu__logo-wrap:first");
                if (0 !== $logo.length) {
                    var $menu = $module.find(".et_pb_menu__menu:first");
                    if (!(0 === $menu.length || 0 < $menu.find(".et_pb_menu__logo").length)) {
                        var li = window.et_pb_menu_inject_inline_centered_logo($menu.get(0));
                        null !== li && $(li).empty().append($logo.clone())
                    }
                }
            }($(this))
        })
    }), $(document).on("ready", window.et_pb_reposition_menu_module_dropdowns), $(window).on("resize", window.et_pb_reposition_menu_module_dropdowns);
    var et_multi_view = {
        contexts: ["content", "attrs", "styles", "classes", "visibility"],
        screenMode: void 0,
        windowWidth: void 0,
        init: function(screenMode, windowWidth) {
            et_multi_view.screenMode = screenMode, et_multi_view.windowWidth = windowWidth, $("#main-header, #main-footer").off("mouseenter", et_multi_view.resetHoverStateHandler), $("#main-header, #main-footer").on("mouseenter", et_multi_view.resetHoverStateHandler), et_multi_view.getElements().each(function() {
                var $multiView = $(this);
                if (!et_multi_view.isBuilderElement($multiView)) {
                    var data = et_multi_view.getData($multiView);
                    et_multi_view.normalStateHandler(data), data.$hoverSelector && data.$hoverSelector.length && (data.$hoverSelector.off("touchstart touchend", et_multi_view.touchStateHandler), data.$hoverSelector.on("touchstart touchend", et_multi_view.touchStateHandler), data.$hoverSelector.off("mouseenter mouseleave", et_multi_view.hoverStateHandler), data.$hoverSelector.on("mouseenter mouseleave", et_multi_view.hoverStateHandler))
                }
            })
        },
        normalStateHandler: function(data) {
            data && !et_multi_view.isEmptyObject(data.normalState) && et_multi_view.callbackHandlerDefault(data.normalState, data.$target, data.$source, data.slug)
        },
        touchStateHandler: function(event) {
            var $hoverSelector = $(this);
            "touchend" === event.type ? setTimeout(function() {
                $hoverSelector.on("mouseenter mouseleave", et_multi_view.hoverStateHandler)
            }, 1) : "touchstart" === event.type && $hoverSelector.off("mouseenter mouseleave", et_multi_view.hoverStateHandler)
        },
        hoverStateHandler: function(event) {
            var $hoverSelector = $(this),
                datas = [];
            if ($hoverSelector.data("etMultiView") && datas.push(et_multi_view.getData($hoverSelector)), $hoverSelector.find("[data-et-multi-view]").each(function() {
                    var $multiView = $(this);
                    et_multi_view.isBuilderElement($multiView) || datas.push(et_multi_view.getData($multiView))
                }), "mouseenter" !== event.type || $hoverSelector.hasClass("et_multi_view__hovered")) {
                if ("mouseleave" === event.type && $hoverSelector.hasClass("et_multi_view__hovered")) {
                    for (index = 0; index < datas.length; index++) {
                        !(data = datas[index]) || et_multi_view.isEmptyObject(data.normalState) || et_multi_view.isEmptyObject(data.hoverState) || et_multi_view.callbackHandlerDefault(data.normalState, data.$target, data.$source, data.slug)
                    }
                    $hoverSelector.removeClass("et_multi_view__hovered")
                }
            } else {
                et_multi_view.resetHoverStateHandler($hoverSelector), $hoverSelector.addClass("et_multi_view__hovered");
                for (var index = 0; index < datas.length; index++) {
                    var data;
                    !(data = datas[index]) || et_multi_view.isEmptyObject(data.normalState) || et_multi_view.isEmptyObject(data.hoverState) || et_multi_view.callbackHandlerDefault(data.hoverState, data.$target, data.$source, data.slug)
                }
            }
        },
        resetHoverStateHandler: function($exclude) {
            et_multi_view.getElements().each(function() {
                var $multiView = $(this);
                if (!et_multi_view.isBuilderElement($multiView)) {
                    var data = et_multi_view.getData($multiView);
                    data && data.$hoverSelector && data.$hoverSelector.length && data.$hoverSelector.hasClass("et_multi_view__hovered") && !data.$hoverSelector.is($exclude) && data.$hoverSelector.trigger("mouseleave")
                }
            })
        },
        getData: function($source) {
            if (!$source || !$source.length) return !1;
            var screenMode = et_multi_view.getScreenMode(),
                data = $source.data("etMultiView");
            if (!data) return !1;
            if ("string" == typeof data && (data = et_multi_view.tryParseJSON(data)), !data || !data.schema || !data.slug) return !1;
            var $target = data.target ? $(data.target) : $source;
            if (!$target || !$target.length) return !1;
            for (var normalState = {}, hoverState = {}, i = 0; i < et_multi_view.contexts.length; i++) {
                var context = et_multi_view.contexts[i];
                data.schema && data.schema.hasOwnProperty(context) && (data.schema[context].hasOwnProperty(screenMode) ? normalState[context] = data.schema[context][screenMode] : "tablet" === screenMode && data.schema[context].hasOwnProperty("desktop") ? normalState[context] = data.schema[context].desktop : "phone" === screenMode && data.schema[context].hasOwnProperty("tablet") ? normalState[context] = data.schema[context].tablet : "phone" === screenMode && data.schema[context].hasOwnProperty("desktop") && (normalState[context] = data.schema[context].desktop), data.schema[context].hasOwnProperty("hover") && (hoverState[context] = data.schema[context].hover))
            }
            var $hoverSelector = !!data.hover_selector && $(data.hover_selector);
            return $hoverSelector && $hoverSelector.length || ($hoverSelector = $source.hasClass(".et_pb_module") ? $source : $source.closest(".et_pb_module")), {
                normalState: normalState,
                hoverState: hoverState,
                $target: $target,
                $source: $source,
                $hoverSelector: $hoverSelector,
                slug: data.slug,
                screenMode: screenMode
            }
        },
        callbackHandlerDefault: function(data, $target, $source, slug) {
            if (slug) {
                var callbackHandlerCustom = et_multi_view.getCallbackHandlerCustom(slug);
                if (callbackHandlerCustom && "function" == typeof callbackHandlerCustom) return callbackHandlerCustom(data, $target, $source, slug)
            }
            var updated = {};
            return data.hasOwnProperty("content") && (updated.content = et_multi_view.updateContent(data.content, $target, $source)), data.hasOwnProperty("attrs") && (updated.attrs = et_multi_view.updateAttrs(data.attrs, $target, $source)), data.hasOwnProperty("styles") && (updated.styles = et_multi_view.updateStyles(data.styles, $target, $source)), data.hasOwnProperty("classes") && (updated.classes = et_multi_view.updateClasses(data.classes, $target, $source)), data.hasOwnProperty("visibility") && (updated.visibility = et_multi_view.updateVisibility(data.visibility, $target, $source)), !et_multi_view.isEmptyObject(updated) && updated
        },
        callbackHandlerCounter: function(data, $target, $source) {
            var updated = et_multi_view.callbackHandlerDefault(data, $target, $source);
            updated && updated.attrs && updated.attrs.hasOwnProperty("data-width") && window.et_bar_counters_init($target)
        },
        callbackHandlerNumberCounter: function(data, $target, $source) {
            if ($target.hasClass("title")) return et_multi_view.callbackHandlerDefault(data, $target, $source);
            var attrs = data.attrs || !1;
            if (attrs && (attrs.hasOwnProperty("data-percent-sign") && et_multi_view.updateContent(attrs["data-percent-sign"], $target.find(".percent-sign"), $source), attrs.hasOwnProperty("data-number-value"))) {
                var $the_counter = $target.closest(".et_pb_number_counter"),
                    numberValue = attrs["data-number-value"] || 50,
                    numberSeparator = attrs["data-number-separator"] || "";
                et_multi_view.updateAttrs({
                    "data-number-value": numberValue,
                    "data-number-separator": numberSeparator
                }, $the_counter, $source) && $the_counter.data("easyPieChart") && $the_counter.data("easyPieChart").update(numberValue)
            }
        },
        callbackHandlerCircleCounter: function(data, $target, $source) {
            if (!$target.hasClass("et_pb_circle_counter_inner")) return et_multi_view.callbackHandlerDefault(data, $target, $source);
            var attrs = data.attrs || !1;
            if (attrs && (attrs.hasOwnProperty("data-percent-sign") && et_multi_view.updateContent(attrs["data-percent-sign"], $target.find(".percent-sign"), $source), attrs.hasOwnProperty("data-number-value"))) {
                var $the_counter = $target.closest(".et_pb_circle_counter_inner"),
                    numberValue = attrs["data-number-value"];
                et_multi_view.updateAttrs({
                    "data-number-value": numberValue
                }, $the_counter, $source) && $the_counter.data("easyPieChart") && (window.et_pb_circle_counter_init($the_counter), $the_counter.data("easyPieChart").update(numberValue))
            }
        },
        callbackHandlerSlider: function(data, $target, $source) {
            var updated = et_multi_view.callbackHandlerDefault(data, $target, $source);
            $target.hasClass("et_pb_module") && updated && updated.classes && (updated.classes.add && -1 !== updated.classes.add.indexOf("et_pb_slider_no_arrows") && $target.find(".et-pb-slider-arrows").addClass("et_multi_view_hidden"), updated.classes.remove && -1 !== updated.classes.remove.indexOf("et_pb_slider_no_arrows") && $target.find(".et-pb-slider-arrows").removeClass("et_multi_view_hidden"), updated.classes.add && -1 !== updated.classes.add.indexOf("et_pb_slider_no_pagination") && $target.find(".et-pb-controllers").addClass("et_multi_view_hidden"), updated.classes.remove && -1 !== updated.classes.remove.indexOf("et_pb_slider_no_pagination") && $target.find(".et-pb-controllers").removeClass("et_multi_view_hidden"))
        },
        callbackHandlerPostSlider: function(data, $target, $source) {
            var updated = et_multi_view.callbackHandlerDefault(data, $target, $source);
            $target.hasClass("et_pb_module") && updated && updated.classes && (updated.classes.add && -1 !== updated.classes.add.indexOf("et_pb_slider_no_arrows") && $target.find(".et-pb-slider-arrows").addClass("et_multi_view_hidden"), updated.classes.remove && -1 !== updated.classes.remove.indexOf("et_pb_slider_no_arrows") && $target.find(".et-pb-slider-arrows").removeClass("et_multi_view_hidden"), updated.classes.add && -1 !== updated.classes.add.indexOf("et_pb_slider_no_pagination") && $target.find(".et-pb-controllers").addClass("et_multi_view_hidden"), updated.classes.remove && -1 !== updated.classes.remove.indexOf("et_pb_slider_no_pagination") && $target.find(".et-pb-controllers").removeClass("et_multi_view_hidden"))
        },
        callbackHandlerVideoSlider: function(data, $target, $source) {
            var updated = et_multi_view.callbackHandlerDefault(data, $target, $source);
            if ($target.hasClass("et_pb_slider") && updated && updated.classes) {
                updated.classes.add && -1 !== updated.classes.add.indexOf("et_pb_slider_no_arrows") && $target.find(".et-pb-slider-arrows").addClass("et_multi_view_hidden"), updated.classes.remove && -1 !== updated.classes.remove.indexOf("et_pb_slider_no_arrows") && $target.find(".et-pb-slider-arrows").removeClass("et_multi_view_hidden");
                var sliderControl = updated.classes.add && -1 !== updated.classes.add.indexOf("et_pb_slider_dots") ? "et_pb_slider_dots" : !(!updated.classes.add || -1 === updated.classes.add.indexOf("et_pb_slider_carousel")) && "et_pb_slider_carousel";
                if (sliderControl) {
                    var sliderApi = $target.data("et_pb_simple_slider");
                    "object" == typeof sliderApi && sliderApi.et_slider_destroy(), et_pb_slider_init($target), "et_pb_slider_carousel" === sliderControl && $target.siblings(".et_pb_carousel").et_pb_simple_carousel({
                        slide_duration: 1e3
                    })
                }
            }
        },
        callbackHandlerSliderItem: function(data, $target, $source) {
            if (!$target.hasClass("et_pb_slide_video") && !$target.is("img")) return et_multi_view.callbackHandlerDefault(data, $target, $source);
            if ($target.hasClass("et_pb_slide_video")) {
                var $contentNew = !(!data || !data.content) && $(data.content),
                    $contentOld = -1 !== $target.html().indexOf("fluid-width-video-wrapper") ? $($target.find(".fluid-width-video-wrapper").html()) : $($target.html());
                if (!$contentNew || !$contentOld) return;
                var updated = !1;
                if ($contentNew.hasClass("wp-video") && $contentOld.hasClass("wp-video")) {
                    (function() {
                        if ($contentNew.find("source").length !== $contentOld.find("source").length) return !0;
                        var isDifferentAttr = !1;
                        return $contentNew.find("source").each(function(index) {
                            var $contentOldSource = $contentOld.find("source").eq(index);
                            $(this).attr("src") !== $contentOldSource.attr("src") && (isDifferentAttr = !0)
                        }), isDifferentAttr
                    })() && (updated = et_multi_view.callbackHandlerDefault(data, $target, $source))
                } else $contentNew.is("iframe") && $contentOld.is("iframe") && $contentNew.attr("src") !== $contentOld.attr("src") ? updated = et_multi_view.callbackHandlerDefault(data, $target, $source) : ($contentNew.hasClass("wp-video") && $contentOld.is("iframe") || $contentNew.is("iframe") && $contentOld.hasClass("wp-video")) && (updated = et_multi_view.callbackHandlerDefault(data, $target, $source));
                if (updated && updated.content)
                    if ($contentNew.is("iframe")) $target.closest(".et_pb_module").fitVids();
                    else {
                        var videoWidth = $contentNew.find("video").attr("width"),
                            videoHeight = $contentNew.find("video").attr("height"),
                            videContainerWidth = $target.width(),
                            videContainerHeight = videContainerWidth / videoWidth * videoHeight;
                        $target.find("video").mediaelementplayer({
                            videoWidth: parseInt(videContainerWidth),
                            videoHeight: parseInt(videContainerHeight),
                            autosizeProgress: !1,
                            success: function(mediaElement, domObject) {
                                var $domObject = $(domObject),
                                    videoMarginTop = videContainerHeight - $domObject.height() + $(mediaElement).height();
                                $domObject.css("margin-top", videoMarginTop + "px")
                            }
                        })
                    }
            } else if ($target.is("img")) {
                if ((updated = et_multi_view.callbackHandlerDefault(data, $target, $source)) && updated.attrs && updated.attrs.src) {
                    var $slider = $target.closest(".et_pb_module");
                    $target.css("visibility", "hidden"), et_fix_slider_height($slider), setTimeout(function() {
                        et_fix_slider_height($slider), $target.css("visibility", "visible")
                    }, 100)
                }
            }
        },
        callbackHandlerVideo: function(data, $target, $source) {
            if ($target.hasClass("et_pb_video_overlay")) return et_multi_view.callbackHandlerDefault(data, $target, $source);
            var updated = !1,
                $contentNew = !(!data || !data.content) && $(data.content),
                $contentOld = -1 !== $target.html().indexOf("fluid-width-video-wrapper") ? $($target.find(".fluid-width-video-wrapper").html()) : $($target.html());
            if ($contentNew && $contentOld) {
                if ($contentNew.is("video") && $contentOld.is("video")) {
                    (function() {
                        if ($contentNew.find("source").length !== $contentOld.find("source").length) return !0;
                        var isDifferentAttr = !1;
                        return $contentNew.find("source").each(function(index) {
                            var $contentOldSource = $contentOld.find("source").eq(index);
                            $(this).attr("src") !== $contentOldSource.attr("src") && (isDifferentAttr = !0)
                        }), isDifferentAttr
                    })() && (updated = et_multi_view.callbackHandlerDefault(data, $target, $source))
                } else $contentNew.is("iframe") && $contentOld.is("iframe") && $contentNew.attr("src") !== $contentOld.attr("src") ? updated = et_multi_view.callbackHandlerDefault(data, $target, $source) : ($contentNew.is("video") && $contentOld.is("iframe") || $contentNew.is("iframe") && $contentOld.is("video")) && (updated = et_multi_view.callbackHandlerDefault(data, $target, $source));
                return updated && updated.content && $contentNew.is("iframe") && $.fn.fitVids && $target.fitVids(), updated
            }
        },
        callbackHandlerBlog: function(data, $target, $source) {
            var updated = et_multi_view.callbackHandlerDefault(data, $target, $source),
                classesAdded = et_multi_view.getObjectValue(updated, "classes.add");
            classesAdded && -1 !== classesAdded.indexOf("et_pb_blog_show_content") && et_reinit_waypoint_modules()
        },
        callbackHandlerWooCommerceBreadcrumb: function(data, $target, $source) {
            if (data.content) return et_multi_view.callbackHandlerDefault(data, $target, $source);
            if (data.attrs && data.attrs.hasOwnProperty("href")) {
                var hrefValue = data.attrs.href;
                return et_multi_view.updateAttrs({
                    href: hrefValue
                }, $target, $source)
            }
        },
        callbackHandlerWooCommerceTabs: function(data, $target, $source) {
            var updated = et_multi_view.callbackHandlerDefault(data, $target, $source);
            if (updated && updated.attrs && updated.attrs.hasOwnProperty("data-include_tabs")) {
                $target.find("li").hide(), $target.find("li").removeClass("et_pb_tab_active");
                var tabClasses = [];
                updated.attrs["data-include_tabs"].split("|").forEach(function(elem) {
                    "" !== elem.trim() && tabClasses.push(elem + "_tab")
                }), tabClasses.forEach(function(elemClass, idx) {
                    0 === idx && $("." + elemClass).addClass("et_pb_tab_active"), $("." + elemClass).show()
                })
            }
        },
        getCallbackHandlerCustom: function(slug) {
            switch (slug) {
                case "et_pb_counter":
                    return et_multi_view.callbackHandlerCounter;
                case "et_pb_number_counter":
                    return et_multi_view.callbackHandlerNumberCounter;
                case "et_pb_circle_counter":
                    return et_multi_view.callbackHandlerCircleCounter;
                case "et_pb_slider":
                case "et_pb_fullwidth_slider":
                    return et_multi_view.callbackHandlerSlider;
                case "et_pb_post_slider":
                case "et_pb_fullwidth_post_slider":
                    return et_multi_view.callbackHandlerPostSlider;
                case "et_pb_video_slider":
                    return et_multi_view.callbackHandlerVideoSlider;
                case "et_pb_slide":
                    return et_multi_view.callbackHandlerSliderItem;
                case "et_pb_video":
                    return et_multi_view.callbackHandlerVideo;
                case "et_pb_blog":
                    return et_multi_view.callbackHandlerBlog;
                case "et_pb_wc_breadcrumb":
                    return et_multi_view.callbackHandlerWooCommerceBreadcrumb;
                case "et_pb_wc_tabs":
                    return et_multi_view.callbackHandlerWooCommerceTabs;
                default:
                    return !1
            }
        },
        updateContent: function(content, $target, $source) {
            if (void 0 === content) return !1;
            var updated = !1;
            return $target.html() !== content && ($target.empty().html(content), updated = !0), updated && !$source.hasClass("et_multi_view_swapped") && $source.addClass("et_multi_view_swapped"), updated
        },
        updateAttrs: function(attrs, $target, $source) {
            if (!attrs) return !1;
            var updated = {};
            return $.each(attrs, function(key, value) {
                switch (key) {
                    case "class":
                    case "style":
                        break;
                    case "srcset":
                    case "sizes":
                        break;
                    default:
                        $target.attr(key) !== value && ($target.attr(key, value), 0 === key.indexOf("data-") && $target.data(key.replace("data-", ""), value), "src" === key && (value ? ($target.removeClass("et_multi_view_hidden_image"), attrs.srcset && attrs.sizes ? ($target.attr("srcset", attrs.srcset), $target.attr("sizes", attrs.sizes)) : ($target.removeAttr("srcset"), $target.removeAttr("sizes"))) : ($target.addClass("et_multi_view_hidden_image"), $target.removeAttr("srcset"), $target.removeAttr("sizes"))), updated[key] = value)
                }
            }), !et_multi_view.isEmptyObject(updated) && ($source.hasClass("et_multi_view_swapped") || $source.addClass("et_multi_view_swapped"), updated)
        },
        updateStyles: function(styles, $target, $source) {
            if (!styles) return !1;
            var updated = {};
            return $.each(styles, function(key, value) {
                $target.css(key) !== value && ($target.css(key, value), updated[key] = value)
            }), !et_multi_view.isEmptyObject(updated) && ($source.hasClass("et_multi_view_swapped") || $source.addClass("et_multi_view_swapped"), updated)
        },
        updateClasses: function(classes, $target, $source) {
            if (!classes) return !1;
            var updated = {};
            if (classes.add)
                for (var i = 0; i < classes.add.length; i++) $target.hasClass(classes.add[i]) || ($target.addClass(classes.add[i]), updated.hasOwnProperty("add") || (updated.add = []), updated.add.push(classes.add[i]));
            if (classes.remove)
                for (i = 0; i < classes.remove.length; i++) $target.hasClass(classes.remove[i]) && ($target.removeClass(classes.remove[i]), updated.hasOwnProperty("remove") || (updated.remove = []), updated.remove.push(classes.remove[i]));
            return !et_multi_view.isEmptyObject(updated) && ($source.hasClass("et_multi_view_swapped") || $source.addClass("et_multi_view_swapped"), updated)
        },
        updateVisibility: function(isVisible, $target, $source) {
            var updated = {};
            return isVisible && $target.hasClass("et_multi_view_hidden") && ($target.removeClass("et_multi_view_hidden"), updated.isVisible = !0), isVisible || $target.hasClass("et_multi_view_hidden") || ($target.addClass("et_multi_view_hidden"), updated.isHidden = !0), !et_multi_view.isEmptyObject(updated) && ($source.hasClass("et_multi_view_swapped") || $source.addClass("et_multi_view_swapped"), updated)
        },
        isEmptyObject: function(obj) {
            if (!obj) return !0;
            var isEmpty = !0;
            for (var key in obj) obj.hasOwnProperty(key) && (isEmpty = !1);
            return isEmpty
        },
        getObjectValue: function(object, path, defaultValue) {
            try {
                var value = $.extend({}, object),
                    paths = path.split(".");
                for (i = 0; i < paths.length; ++i) value = value[paths[i]];
                return value
            } catch (error) {
                return defaultValue
            }
        },
        tryParseJSON: function(string) {
            try {
                return JSON.parse(string)
            } catch (e) {
                return !1
            }
        },
        getScreenMode: function() {
            if (isBuilder && et_multi_view.screenMode) return et_multi_view.screenMode;
            var windowWidth = et_multi_view.getWindowWidth();
            return 980 < windowWidth ? "desktop" : 767 < windowWidth ? "tablet" : "phone"
        },
        getWindowWidth: function() {
            return et_multi_view.windowWidth ? et_multi_view.windowWidth : isBuilder ? $(".et-core-frame").width() : $(window).width()
        },
        getElements: function() {
            return isBuilder ? $(".et-core-frame").contents().find("[data-et-multi-view]") : $("[data-et-multi-view]")
        },
        isBuilderElement: function($element) {
            return 0 < $element.closest("#et-fb-app").length
        }
    };
    ! function() {
        if (isBuilder) $(window).on("et_fb_preview_mode_changed", function(event, screenMode) {
            "et_fb_preview_mode_changed" === event.type && et_multi_view.init(screenMode)
        });
        else {
            $(document).ready(function() {
                et_multi_view.init()
            });
            var et_multi_view_window_resize_timer = null;
            $(window).on("resize", function(event) {
                event.originalEvent && event.originalEvent.isTrusted && (clearTimeout(et_multi_view_window_resize_timer), et_multi_view_window_resize_timer = setTimeout(function() {
                    et_multi_view.init(void 0, $(window).width())
                }, 200))
            })
        }
    }(), isBuilder && $(document).ready(function() {
        $(document).on("submit", ".et-fb-root-ancestor-sibling form", function(event) {
            event.preventDefault()
        }), $(document).on("click", '.et-fb-root-ancestor-sibling a, .et-fb-root-ancestor-sibling button, .et-fb-root-ancestor-sibling input[type="submit"]', function(event) {
            event.preventDefault()
        })
    }), window.etInitWooReviewsRatingStars = function() {
        $('select[name="rating"]').each(function() {
            $(this).prev(".stars").remove(), $(this).hide().before('<p class="stars">\t\t\t\t\t\t<span>\t\t\t\t\t\t\t<a class="star-1" href="#">1</a>\t\t\t\t\t\t\t<a class="star-2" href="#">2</a>\t\t\t\t\t\t\t<a class="star-3" href="#">3</a>\t\t\t\t\t\t\t<a class="star-4" href="#">4</a>\t\t\t\t\t\t\t<a class="star-5" href="#">5</a>\t\t\t\t\t\t</span>\t\t\t\t\t</p>')
        })
    }
}(jQuery);
/*!
 * SmoothScroll for websites v1.2.1
 * Licensed under the terms of the MIT license.
 *
 * People involved
 * - Balazs Galambosi (maintainer)
 * - Michael Herf     (Pulse Algorithm)
 */
! function() {
    var activeElement, defaultOptions = {
            frameRate: 150,
            animationTime: 400,
            stepSize: 80,
            pulseAlgorithm: !0,
            pulseScale: 8,
            pulseNormalize: 1,
            accelerationDelta: 20,
            accelerationMax: 1,
            keyboardSupport: !0,
            arrowScroll: 50,
            touchpadSupport: !0,
            fixedBackground: !0,
            excluded: ""
        },
        options = defaultOptions,
        isExcluded = !1,
        isFrame = !1,
        direction = {
            x: 0,
            y: 0
        },
        initDone = !1,
        root = document.documentElement,
        deltaBuffer = [120, 120, 120],
        key = {
            left: 37,
            up: 38,
            right: 39,
            down: 40,
            spacebar: 32,
            pageup: 33,
            pagedown: 34,
            end: 35,
            home: 36
        };
    options = defaultOptions;

    function init() {
        if (document.body) {
            var disableKeyboard, body = document.body,
                html = document.documentElement,
                windowHeight = window.innerHeight,
                scrollHeight = body.scrollHeight;
            if (root = 0 <= document.compatMode.indexOf("CSS") ? html : body, activeElement = body, (disableKeyboard = document.body.classList.contains("et-fb")) && removeEvent("keydown", keydown), options.keyboardSupport && !disableKeyboard && addEvent("keydown", keydown), initDone = !0, top != self) isFrame = !0;
            else if (windowHeight < scrollHeight && (body.offsetHeight <= windowHeight || html.offsetHeight <= windowHeight)) {
                var pending = !1;
                if (html.style.height = "auto", setTimeout(function() {
                        pending || html.scrollHeight == document.height || (pending = !0, setTimeout(function() {
                            html.style.height = document.height + "px", pending = !1
                        }, 500))
                    }, 10), root.offsetHeight <= windowHeight) {
                    var underlay = document.createElement("div");
                    underlay.style.clear = "both", body.appendChild(underlay)
                }
            }
            options.fixedBackground || isExcluded || (body.style.backgroundAttachment = "scroll", html.style.backgroundAttachment = "scroll")
        }
    }
    var que = [],
        pending = !1,
        lastScroll = +new Date;

    function scrollArray(elem, left, top, delay) {
        var x, y;
        if (delay || (delay = 1e3), x = 0 < (x = left) ? 1 : -1, y = 0 < (y = top) ? 1 : -1, (direction.x !== x || direction.y !== y) && (direction.x = x, direction.y = y, que = [], lastScroll = 0), 1 != options.accelerationMax) {
            var elapsed = +new Date - lastScroll;
            if (elapsed < options.accelerationDelta) {
                var factor = (1 + 30 / elapsed) / 2;
                1 < factor && (factor = Math.min(factor, options.accelerationMax), left *= factor, top *= factor)
            }
            lastScroll = +new Date
        }
        if (que.push({
                x: left,
                y: top,
                lastX: left < 0 ? .99 : -.99,
                lastY: top < 0 ? .99 : -.99,
                start: +new Date
            }), !pending) {
            var scrollWindow = elem === document.body,
                step = function(time) {
                    for (var now = +new Date, scrollX = 0, scrollY = 0, i = 0; i < que.length; i++) {
                        var item = que[i],
                            elapsed = now - item.start,
                            finished = elapsed >= options.animationTime,
                            position = finished ? 1 : elapsed / options.animationTime;
                        options.pulseAlgorithm && (position = pulse(position));
                        var x = item.x * position - item.lastX >> 0,
                            y = item.y * position - item.lastY >> 0;
                        scrollX += x, scrollY += y, item.lastX += x, item.lastY += y, finished && (que.splice(i, 1), i--)
                    }
                    scrollWindow ? window.scrollBy(scrollX, scrollY) : (scrollX && (elem.scrollLeft += scrollX), scrollY && (elem.scrollTop += scrollY)), left || top || (que = []), que.length ? requestFrame(step, elem, delay / options.frameRate + 1) : pending = !1
                };
            requestFrame(step, elem, 0), pending = !0
        }
    }

    function keydown(event) {
        var target = event.target,
            modifier = event.ctrlKey || event.altKey || event.metaKey || event.shiftKey && event.keyCode !== key.spacebar;
        if (/input|textarea|select|embed/i.test(target.nodeName) || target.isContentEditable || event.defaultPrevented || modifier) return !0;
        if (isNodeName(target, "button") && event.keyCode === key.spacebar) return !0;
        var x = 0,
            y = 0,
            elem = overflowingAncestor(activeElement),
            clientHeight = elem.clientHeight;
        switch (elem == document.body && (clientHeight = window.innerHeight), event.keyCode) {
            case key.up:
                y = -options.arrowScroll;
                break;
            case key.down:
                y = options.arrowScroll;
                break;
            case key.spacebar:
                y = -(event.shiftKey ? 1 : -1) * clientHeight * .9;
                break;
            case key.pageup:
                y = .9 * -clientHeight;
                break;
            case key.pagedown:
                y = .9 * clientHeight;
                break;
            case key.home:
                y = -window.pageYOffset;
                break;
            case key.end:
                var damt = elem.scrollHeight - elem.scrollTop - clientHeight;
                y = 0 < damt ? damt + 10 : 0;
                break;
            case key.left:
                x = -options.arrowScroll;
                break;
            case key.right:
                x = options.arrowScroll;
                break;
            default:
                return !0
        }
        scrollArray(elem, x, y), event.preventDefault()
    }
    var cache = {};
    setInterval(function() {
        cache = {}
    }, 1e4);
    var i, deltaBufferTimer, uniqueID = (i = 0, function(el) {
        return el.uniqueID || (el.uniqueID = i++)
    });

    function setCache(elems, overflowing) {
        for (var i = elems.length; i--;) cache[uniqueID(elems[i])] = overflowing;
        return overflowing
    }

    function overflowingAncestor(el) {
        var elems = [],
            rootScrollHeight = root.scrollHeight;
        do {
            var cached = cache[uniqueID(el)];
            if (cached) return setCache(elems, cached);
            if (elems.push(el), rootScrollHeight === el.scrollHeight) {
                if (!isFrame || root.clientHeight + 10 < rootScrollHeight) return setCache(elems, document.body)
            } else if (el.clientHeight + 10 < el.scrollHeight && (overflow = getComputedStyle(el, "").getPropertyValue("overflow-y"), "scroll" === overflow || "auto" === overflow)) return setCache(elems, el)
        } while (el = el.parentNode)
    }

    function addEvent(type, fn, bubble) {
        window.addEventListener(type, fn, bubble || !1)
    }

    function removeEvent(type, fn, bubble) {
        window.removeEventListener(type, fn, bubble || !1)
    }

    function isNodeName(el, tag) {
        return (el.nodeName || "").toLowerCase() === tag.toLowerCase()
    }

    function isDivisible(n, divisor) {
        return Math.floor(n / divisor) == n / divisor
    }
    var requestFrame = window.requestAnimationFrame || window.webkitRequestAnimationFrame || function(callback, element, delay) {
        window.setTimeout(callback, delay || 1e3 / 60)
    };

    function pulse_(x) {
        var start;
        return ((x *= options.pulseScale) < 1 ? x - (1 - Math.exp(-x)) : (x -= 1, (start = Math.exp(-1)) + (1 - Math.exp(-x)) * (1 - start))) * options.pulseNormalize
    }

    function pulse(x) {
        return 1 <= x ? 1 : x <= 0 ? 0 : (1 == options.pulseNormalize && (options.pulseNormalize /= pulse_(1)), pulse_(x))
    }
    var isChrome = /chrome/i.test(window.navigator.userAgent),
        wheelEvent = null;
    "onwheel" in document.createElement("div") ? wheelEvent = "wheel" : "onmousewheel" in document.createElement("div") && (wheelEvent = "mousewheel");
    var isSmoothScrollActive = 0 < document.body.className.split(" ").filter(function(className) {
        return "et_smooth_scroll" === className
    }).length;
    wheelEvent && isChrome && isSmoothScrollActive && (window.addEventListener(wheelEvent, function(event) {
        initDone || init();
        var target = event.target,
            overflowing = overflowingAncestor(target),
            isVBTopWindowScroll = 0 < document.documentElement.className.split(" ").filter(function(className) {
                return "et-fb-preview--tablet" === className || "et-fb-preview--phone" === className || "et-fb-preview--zoom" === className
            }).length;
        if (!overflowing || event.defaultPrevented || isNodeName(activeElement, "embed") || isNodeName(target, "embed") && /\.pdf/i.test(target.src) || isVBTopWindowScroll) return !0;
        var deltaX = event.wheelDeltaX || 0,
            deltaY = event.wheelDeltaY || 0;
        if (deltaX || deltaY || (deltaY = event.wheelDelta || 0), !options.touchpadSupport && function(deltaY) {
                if (deltaY) return deltaY = Math.abs(deltaY), deltaBuffer.push(deltaY), deltaBuffer.shift(), clearTimeout(deltaBufferTimer), !(isDivisible(deltaBuffer[0], 120) && isDivisible(deltaBuffer[1], 120) && isDivisible(deltaBuffer[2], 120))
            }(deltaY)) return !0;
        1.2 < Math.abs(deltaX) && (deltaX *= options.stepSize / 120), 1.2 < Math.abs(deltaY) && (deltaY *= options.stepSize / 120), scrollArray(overflowing, -deltaX, -deltaY), event.preventDefault()
    }, {
        passive: !1
    }), addEvent("mousedown", function(event) {
        activeElement = event.target
    }), addEvent("load", init)), window.ET_SmoothScroll = {
        toggleKeydown: function(enable) {
            enable ? addEvent("keydown", keydown) : removeEvent("keydown", keydown)
        }
    }
}();
var isBuilder = "object" == typeof window.ET_Builder;
/*! ET custom.js */
/*! ET custom.js */
! function($) {
    window.et_calculating_scroll_position = !1, window.et_side_nav_links_initialized = !1;
    var et_header_offset, top_window = isBuilder ? ET_Builder.Frames.top : window,
        $et_pb_post_fullwidth = $(".single.et_pb_pagebuilder_layout.et_full_width_page"),
        $et_container = (navigator.userAgent.match(/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/), navigator.userAgent.match(/iPad/), $(".container")),
        et_is_fixed_nav = ($et_container.width(), $("body").hasClass("et_fixed_nav") || $("body").hasClass("et_vertical_fixed")),
        et_is_vertical_fixed_nav = $("body").hasClass("et_vertical_fixed"),
        et_is_rtl = $("body").hasClass("rtl"),
        et_hide_nav = $("body").hasClass("et_hide_nav"),
        et_header_style_left = $("body").hasClass("et_header_style_left"),
        $top_header = $("#top-header"),
        $main_header = $("#main-header"),
        $main_container_wrapper = $("#page-container"),
        $et_main_content_first_row = $("#main-content .container:first-child"),
        $et_main_content_first_row_meta_wrapper = $et_main_content_first_row.find(".et_post_meta_wrapper:first"),
        $et_main_content_first_row_meta_wrapper_title = $et_main_content_first_row_meta_wrapper.find("h1.entry-title"),
        $et_single_post = ($et_main_content_first_row.find(".entry-content:first"), $("body.single")),
        $et_window = $(window),
        etRecalculateOffset = !1,
        et_header_height = 0,
        $et_header_style_split = $(".et_header_style_split"),
        $et_top_navigation = $("#et-top-navigation"),
        $et_pb_first_row = ($("#logo"), $("body.et_pb_pagebuilder_layout .et_pb_section:visible:first")),
        et_is_touch_device = "ontouchstart" in window || navigator.maxTouchPoints,
        $et_top_cart = $("#et-secondary-menu a.et-cart-info");
    // Underscore may be freely distributed under the MIT license.
    function et_debounce(func, wait, immediate) {
        var timeout, args, context, timestamp, result, now = Date.now || (new Date).getTime(),
            later = function() {
                var last = now - timestamp;
                last < wait && 0 <= last ? timeout = setTimeout(later, wait - last) : (timeout = null, immediate || (result = func.apply(context, args), timeout || (context = args = null)))
            };
        return function() {
            context = this, args = arguments, timestamp = now;
            var callNow = immediate && !timeout;
            return timeout || (timeout = setTimeout(later, wait)), callNow && (result = func.apply(context, args), context = args = null), result
        }
    }
    if (0 < $(".woocommerce .woocommerce-product-gallery").length) {
        var gal = $(".woocommerce-product-gallery")[0],
            newstr = gal.outerHTML.replace("data-columns", "data-cols");
        gal.outerHTML = newstr
    }

    function et_fix_logo_transition(is_onload) {
        var logo_wrapper_width, $body = $("body"),
            $logo = $("#logo"),
            logo_actual_width = parseInt($logo.attr("data-actual-width")),
            logo_actual_height = parseInt($logo.attr("data-actual-height")),
            logo_height_percentage = parseInt($logo.attr("data-height-percentage")),
            $top_nav = $("#et-top-navigation"),
            top_nav_height = parseInt($top_nav.attr("data-height")),
            top_nav_fixed_height = parseInt($top_nav.attr("data-fixed-height")),
            $main_header = $("#main-header"),
            is_header_split = $body.hasClass("et_header_style_split"),
            is_fixed_nav = $main_header.hasClass("et-fixed-header"),
            is_hide_primary_logo = $body.hasClass("et_hide_primary_logo"),
            is_hide_fixed_logo = $body.hasClass("et_hide_fixed_logo"),
            logo_height_base = is_fixed_nav ? top_nav_height : top_nav_fixed_height;
        is_onload = void 0 !== is_onload && is_onload, is_header_split && !window.et_is_vertical_nav && (is_onload && (logo_height_base = top_nav_height), logo_wrapper_width = logo_actual_width * ((logo_height_base * (logo_height_percentage / 100) + 22) / logo_actual_height), is_hide_primary_logo && (is_fixed_nav || is_onload) && (logo_wrapper_width = 0), !is_hide_fixed_logo || is_fixed_nav || is_onload || (logo_wrapper_width = 0), $(".et_header_style_split .centered-inline-logo-wrap").css({
            width: logo_wrapper_width
        }))
    }

    function et_toggle_slide_menu(force_state) {
        var $slide_menu_container = $(".et_header_style_slide .et_slide_in_menu_container"),
            $page_container = $(".et_header_style_slide #page-container, .et_header_style_slide.et_fixed_nav #main-header"),
            $header_container = $(".et_header_style_slide #main-header"),
            is_menu_opened = $slide_menu_container.hasClass("et_pb_slide_menu_opened"),
            set_to = void 0 !== force_state ? force_state : "auto",
            is_boxed_layout = $("body").hasClass("et_boxed_layout"),
            page_container_margin = is_boxed_layout ? parseFloat($("#page-container").css("margin-left")) : 0,
            slide_container_width = $slide_menu_container.innerWidth(),
            is_rtl = $("body").hasClass("rtl");
        "auto" !== set_to && (is_menu_opened && "open" === set_to || !is_menu_opened && "close" === set_to) || (is_menu_opened ? (is_rtl ? ($slide_menu_container.css({
            left: "-" + slide_container_width + "px"
        }), $page_container.css({
            right: "0"
        })) : ($slide_menu_container.css({
            right: "-" + slide_container_width + "px"
        }), $page_container.css({
            left: "0"
        })), is_boxed_layout && et_is_fixed_nav && (is_rtl ? $header_container.css({
            right: page_container_margin + "px"
        }) : $header_container.css({
            left: page_container_margin + "px"
        })), setTimeout(function() {
            $slide_menu_container.css({
                display: "none"
            })
        }, 700)) : ($slide_menu_container.css({
            display: "block"
        }), setTimeout(function() {
            if (is_rtl ? ($slide_menu_container.css({
                    left: "0"
                }), $page_container.css({
                    right: "-" + (slide_container_width - page_container_margin) + "px"
                })) : ($slide_menu_container.css({
                    right: "0"
                }), $page_container.css({
                    left: "-" + (slide_container_width - page_container_margin) + "px"
                })), is_boxed_layout && et_is_fixed_nav) {
                var left_position = slide_container_width - 2 * page_container_margin < 0 ? Math.abs(slide_container_width - 2 * page_container_margin) : "-" + (slide_container_width - 2 * page_container_margin);
                left_position < slide_container_width && (is_rtl ? $header_container.css({
                    right: left_position + "px"
                }) : $header_container.css({
                    left: left_position + "px"
                }))
            }
        }, 50)), $("body").toggleClass("et_pb_slide_menu_active"), $slide_menu_container.toggleClass("et_pb_slide_menu_opened"))
    }

    function et_adjust_woocommerce_checkout_scroll() {
        if (et_is_fixed_nav && !(parseInt($et_window.width()) <= 980)) {
            var headerHeight = parseInt($("#main-header").innerHeight());
            $("html, body").animate({
                scrollTop: $("form.checkout").offset().top - 100 - headerHeight
            }, 1e3)
        }
    }

    function et_pb_toggle_fullscreen_menu() {
        var $menu_container = $(".et_header_style_fullscreen .et_slide_in_menu_container"),
            top_bar_height = $menu_container.find(".et_slide_menu_top").innerHeight();
        $menu_container.toggleClass("et_pb_fullscreen_menu_opened"), $("body").toggleClass("et_pb_fullscreen_menu_active"), et_pb_resize_fullscreen_menu(), $menu_container.hasClass("et_pb_fullscreen_menu_opened") ? ($menu_container.addClass("et_pb_fullscreen_menu_animated"), $menu_container.css({
            "padding-top": top_bar_height + 20
        })) : setTimeout(function() {
            $menu_container.removeClass("et_pb_fullscreen_menu_animated")
        }, 1e3)
    }

    function et_pb_resize_fullscreen_menu(e) {
        if (isBuilder) {
            var $menu = jQuery(".et_header_style_fullscreen .et_slide_in_menu_container.et_pb_fullscreen_menu_opened");
            if (0 < $menu.length) {
                var height = jQuery(top_window).height();
                height -= parseInt($menu.css("padding-top"), 10), 0 < $menu.closest(".admin-bar").length && (height -= 32), $menu.find(".et_pb_fullscreen_nav_container").css("max-height", height)
            }
        }
    }
    if (0 < $et_top_cart.length && 0 < $(".shop_table.cart").length && $(document.body).on("updated_wc_div", function() {
            var new_text, new_total = 0;
            $(".shop_table.cart").find(".product-quantity input").each(function() {
                new_total += parseInt($(this).val())
            }), new_text = (new_text = 1 === new_total ? DIVI.item_count : DIVI.items_count).replace("%d", new_total), $et_top_cart.find("span").text(new_text)
        }), $(document).ready(function() {
            var $et_top_menu = $("ul.nav, ul.menu"),
                is_customize_preview = ($("#et_search_icon"), $("body").hasClass("et_is_customize_preview"));

            function et_header_menu_split() {
                var $logo_container = $("#main-header > .container > .logo_container"),
                    $logo_container_splitted = $(".centered-inline-logo-wrap > .logo_container"),
                    et_top_navigation_li_size = $et_top_navigation.children("nav").children("ul").children("li").size(),
                    et_top_navigation_li_break_index = Math.round(et_top_navigation_li_size / 2) - 1,
                    window_width = window.innerWidth || $et_window.width();
                980 < window_width && $logo_container.length && $("body").hasClass("et_header_style_split") && ($('<li class="centered-inline-logo-wrap"></li>').insertAfter($et_top_navigation.find("nav > ul >li:nth(" + et_top_navigation_li_break_index + ")")), $logo_container.appendTo($et_top_navigation.find(".centered-inline-logo-wrap"))), window_width <= 980 && $logo_container_splitted.length && ($logo_container_splitted.prependTo("#main-header > .container"), $("#main-header .centered-inline-logo-wrap").remove())
            }

            function et_set_right_vertical_menu() {
                var $body = $("body");
                if ($body.hasClass("et_boxed_layout") && $body.hasClass("et_vertical_fixed") && $body.hasClass("et_vertical_right")) {
                    var header_offset = parseFloat($("#page-container").css("margin-right"));
                    header_offset = (header_offset += parseFloat($("#et-main-area").css("margin-right")) - 225) < 0 ? 0 : header_offset, $("#main-header").addClass("et_vertical_menu_set").css({
                        left: "",
                        right: header_offset
                    })
                }
            }
            window.et_pb_init_nav_menu($et_top_menu), ($et_header_style_split.length && !window.et_is_vertical_nav || is_customize_preview) && (et_header_menu_split(), $(window).resize(function() {
                et_header_menu_split()
            })), window.et_is_vertical_nav && ($("#main-header").height() < $("#et-top-navigation").height() && $("#main-header").height($("#et-top-navigation").height() + $("#logo").height() + 100), et_set_right_vertical_menu()), window.et_calculate_header_values = function() {
                var $top_header = $("#top-header"),
                    secondary_nav_height = $top_header.length && $top_header.is(":visible") ? parseInt($top_header.innerHeight()) : 0,
                    admin_bar_height = $("#wpadminbar").length ? parseInt($("#wpadminbar").innerHeight()) : 0,
                    $slide_menu_container = $(".et_header_style_slide .et_slide_in_menu_container"),
                    is_rtl = $("body").hasClass("rtl");
                if (et_header_height = parseInt($("#main-header").innerHeight()) + secondary_nav_height, et_header_offset = (et_header_height <= 90 ? et_header_height - 29 : et_header_height - 56) + admin_bar_height, secondary_nav_height + admin_bar_height, $slide_menu_container.length && !$("body").hasClass("et_pb_slide_menu_active") && (is_rtl ? $slide_menu_container.css({
                        left: "-" + parseInt($slide_menu_container.innerWidth()) + "px",
                        display: "none"
                    }) : $slide_menu_container.css({
                        right: "-" + parseInt($slide_menu_container.innerWidth()) + "px",
                        display: "none"
                    }), $("body").hasClass("et_boxed_layout")))
                    if (is_rtl) {
                        var page_container_margin = $main_container_wrapper.css("margin-right");
                        $main_header.css({
                            right: page_container_margin
                        })
                    } else {
                        page_container_margin = $main_container_wrapper.css("margin-left");
                        $main_header.css({
                            left: page_container_margin
                        })
                    }
            };
            var $comment_form = $("#commentform");
            if (et_pb_form_placeholders_init($comment_form), $comment_form.submit(function() {
                    et_pb_remove_placeholder_text($comment_form)
                }), et_duplicate_menu($("#et-top-navigation ul.nav"), $("#et-top-navigation .mobile_nav"), "mobile_menu", "et_mobile_menu"), et_duplicate_menu("", $(".et_pb_fullscreen_nav_container"), "mobile_menu_slide", "et_mobile_menu", "no_click_event"), $("ul.et_disable_top_tier").length && ($disbaled_top_tier_links = $("ul.et_disable_top_tier > li > ul").prev("a"), $disbaled_top_tier_links.attr("href", "#"), $disbaled_top_tier_links.on("click", function(e) {
                    e.preventDefault()
                }), $disbaled_top_tier_links_mobile = $("ul#mobile_menu > li > ul").prev("a"), $disbaled_top_tier_links_mobile.attr("href", "#"), $disbaled_top_tier_links_mobile.on("click", function(e) {
                    e.preventDefault()
                })), $("#et-secondary-nav").length && $("#et-top-navigation #mobile_menu").append($("#et-secondary-nav").clone().html()), $(".et_slide_in_menu_container").length) {
                var $item_with_sub = $(".et_slide_in_menu_container").find(".menu-item-has-children > a");
                $item_with_sub.length && $item_with_sub.append('<span class="et_mobile_menu_arrow"></span>')
            }

            function et_change_primary_nav_position(delay) {
                setTimeout(function() {
                    var $body = $("body"),
                        $wpadminbar = isBuilder ? top_window.jQuery("#wpadminbar") : $("#wpadminbar"),
                        $top_header = $("#top-header"),
                        et_primary_header_top = 0;
                    if ($wpadminbar.length) {
                        var adminbarHeight = $wpadminbar.innerHeight();
                        isBuilder && top_window.jQuery("html").is(".et-fb-preview--zoom:not(.et-fb-preview--desktop)") && (adminbarHeight *= 2), et_primary_header_top += adminbarHeight
                    }
                    $top_header.length && $top_header.is(":visible") && (et_primary_header_top += $top_header.innerHeight());
                    var isFixedNav = $body.hasClass("et_fixed_nav"),
                        isAbsolutePrimaryNav = !isFixedNav && $body.hasClass("et_transparent_nav") && $body.hasClass("et_secondary_nav_enabled");
                    window.et_is_vertical_nav || !isFixedNav && !isAbsolutePrimaryNav || $("#main-header").css("top", et_primary_header_top)
                }, delay)
            }

            function et_hide_nav_transform() {
                var $body = $("body"),
                    $body_height = $(document).height(),
                    $viewport_height = $(window).height() + et_header_height + 200;
                $body.hasClass("et_vertical_nav") || ($body.hasClass("et_hide_nav") || $body.hasClass("et_hide_nav_disabled") && $body.hasClass("et_fixed_nav")) && ($viewport_height < $body_height ? ($body.hasClass("et_hide_nav_disabled") && ($body.addClass("et_hide_nav"), $body.removeClass("et_hide_nav_disabled")), $("#main-header").css("transform", "translateY(-" + et_header_height + "px)"), $("#top-header").css("transform", "translateY(-" + et_header_height + "px)")) : ($("#main-header").css({
                    transform: "translateY(0)",
                    opacity: "1"
                }), $("#top-header").css({
                    transform: "translateY(0)",
                    opacity: "1"
                }), $body.removeClass("et_hide_nav"), $body.addClass("et_hide_nav_disabled")), et_fix_page_container_position())
            }

            function et_save_initial_page_container_style($selector, property) {
                var styling = {};
                styling[property] = $selector.css(property), $selector.attr({
                    "data-fix-page-container": "on"
                }).data({
                    fix_page_container_style: styling
                })
            }

            function et_get_saved_padding_margin_value(saved_value, order) {
                if (void 0 === saved_value) return !1;
                var values = saved_value.split("|");
                return void 0 !== values[order] && values[order]
            }

            function et_fix_page_container_position() {
                var header_height, et_pb_first_row_padding_top, et_window_width = parseInt($et_window.width()),
                    $top_header = $("#top-header"),
                    $et_pb_first_row = $("body.et_pb_pagebuilder_layout .et_pb_section:visible:first"),
                    secondary_nav_height = $top_header.length && $top_header.is(":visible") ? parseInt($top_header.innerHeight()) : 0,
                    main_header_fixed_height = 0,
                    $mainHeaderClone = $main_header.clone().addClass("et-disabled-animations main-header-clone").css({
                        opacity: 0,
                        position: "fixed",
                        top: "auto",
                        right: 0,
                        bottom: 0,
                        left: 0
                    }).appendTo($("body"));
                if ($("body").hasClass("et-bfb") || $('*[data-fix-page-container="on"]').each(function() {
                        var $adjusted_element = $(this),
                            styling = $adjusted_element.data();
                        styling && styling.fix_page_container_style && $adjusted_element.css(styling.fix_page_container_style)
                    }), 980 < et_window_width && (!$main_header.attr("data-height-loaded") || $("body").is(".et-fb"))) {
                    var mainHeaderHeight = 0;
                    $main_header.hasClass("et-fixed-header") ? ($mainHeaderClone.removeClass("et-fixed-header"), mainHeaderHeight = $mainHeaderClone.height(), $mainHeaderClone.addClass("et-fixed-header")) : mainHeaderHeight = $main_header.height(), $main_header.attr({
                        "data-height-onload": parseInt(mainHeaderHeight),
                        "data-height-loaded": !0
                    })
                }
                et_window_width <= 980 ? (header_height = parseInt($main_header.innerHeight()) + secondary_nav_height - ($("body").hasClass("et-fb") ? 0 : 1), window.et_is_transparent_nav && !$et_pb_first_row.length && (header_height += 58)) : (header_height = parseInt($main_header.attr("data-height-onload")) + secondary_nav_height, window.et_is_transparent_nav && !window.et_is_vertical_nav && $et_main_content_first_row.length && (header_height += 58), main_header_fixed_height = $mainHeaderClone.height()), $main_header.attr({
                    "data-fixed-height-onload": main_header_fixed_height
                });
                var $wooCommerceNotice = $(".et_fixed_nav.et_transparent_nav.et-db.et_full_width_page #left-area > .woocommerce-notices-wrapper");
                if (0 < $wooCommerceNotice.length && "yes" !== $wooCommerceNotice.attr("data-position-set")) {
                    var wooNoticeMargin = main_header_fixed_height;
                    0 === wooNoticeMargin && $main_header.attr("data-height-onload") && (wooNoticeMargin = $main_header.attr("data-height-onload")), $wooCommerceNotice.css("marginTop", parseFloat(wooNoticeMargin)), $wooCommerceNotice.animate({
                        opacity: "1"
                    }), $wooCommerceNotice.attr("data-position-set", "yes")
                }
                var isBodyShorterThanViewport = $(document).height() < $(window).height() + et_header_height + 200,
                    isHideNavDesktop = 980 < parseInt($(window).width()) && et_hide_nav;
                if (!window.et_is_transparent_nav || window.et_is_vertical_nav || isHideNavDesktop && !isBodyShorterThanViewport) et_is_fixed_nav && $main_container_wrapper.css("paddingTop", header_height);
                else {
                    $("body").hasClass("et-bfb") || $et_pb_first_row.addClass("et_pb_section_first");
                    var is_pb = $et_pb_first_row.length,
                        is_post_pb = is_pb && $et_single_post.length,
                        is_post_pb_full_layout_has_title = $et_pb_post_fullwidth.length && $et_main_content_first_row_meta_wrapper_title.length,
                        is_post_pb_full_layout_no_title = $et_pb_post_fullwidth.length && 0 === $et_main_content_first_row_meta_wrapper_title.length,
                        is_pb_fullwidth_section_first = $et_pb_first_row.is(".et_pb_fullwidth_section"),
                        is_no_pb_mobile = et_window_width <= 980 && $et_main_content_first_row.length,
                        isProject = $("body").hasClass("single-project");
                    if (!is_post_pb || is_post_pb_full_layout_no_title && is_pb_fullwidth_section_first || isProject)
                        if (is_pb_fullwidth_section_first) {
                            var $et_pb_first_row_first_module = $et_pb_first_row.children(".et_pb_module:visible:first");
                            if (is_post_pb_full_layout_no_title && is_pb_fullwidth_section_first && 980 < et_window_width && (header_height -= 58), $et_pb_first_row_first_module.is(".et_pb_slider")) {
                                var $et_pb_first_row_first_module_slide_image = $et_pb_first_row_first_module.find(".et_pb_slide_image"),
                                    $et_pb_first_row_first_module_slide = $et_pb_first_row_first_module.find(".et_pb_slide"),
                                    $et_pb_first_row_first_module_slide_container = $et_pb_first_row_first_module.find(".et_pb_slide .et_pb_container"),
                                    et_pb_slide_image_margin_top = 0 - parseInt($et_pb_first_row_first_module_slide_image.height()) / 2,
                                    $et_pb_first_row_first_module_slider_arrow = $et_pb_first_row_first_module.find(".et-pb-slider-arrows a"),
                                    et_pb_first_row_slider_arrow_height = $et_pb_first_row_first_module_slider_arrow.height();
                                et_save_initial_page_container_style($et_pb_first_row_first_module_slide, "paddingTop"), $et_pb_first_row_first_module_slide.css({
                                    paddingTop: header_height
                                }), $et_pb_first_row_first_module_slide_container.css({
                                    "min-height": ""
                                }), et_save_initial_page_container_style($et_pb_first_row_first_module_slide_image, "marginTop"), $et_pb_first_row_first_module_slide_image.css({
                                    marginTop: et_pb_slide_image_margin_top
                                }), et_save_initial_page_container_style($et_pb_first_row_first_module_slider_arrow, "marginTop"), $et_pb_first_row_first_module_slider_arrow.css({
                                    marginTop: header_height / 2 - et_pb_first_row_slider_arrow_height / 2
                                });
                                var et_pb_first_row_slide_container_height_new = 0;
                                $et_pb_first_row_first_module.find(".et_pb_slide").each(function() {
                                    var $et_pb_first_row_first_module_slide_item = $(this),
                                        $et_pb_first_row_first_module_slide_container = $et_pb_first_row_first_module_slide_item.find(".et_pb_container");
                                    $et_pb_first_row_first_module_slide_item.show(), $et_pb_first_row_first_module_slide_container.css({
                                        "min-height": ""
                                    });
                                    var et_pb_first_row_slide_container_height = $et_pb_first_row_first_module_slide_container.innerHeight();
                                    et_pb_first_row_slide_container_height_new < et_pb_first_row_slide_container_height && (et_pb_first_row_slide_container_height_new = et_pb_first_row_slide_container_height), $et_pb_first_row_first_module_slide_item.is(':not(".et-pb-active-slide")') && $et_pb_first_row_first_module_slide_item.hide()
                                }), et_save_initial_page_container_style($et_pb_first_row_first_module_slide_container, "min-height"), $et_pb_first_row_first_module_slide_container.css({
                                    "min-height": et_pb_first_row_slide_container_height_new
                                })
                            } else if ($et_pb_first_row_first_module.is(".et_pb_fullwidth_header")) {
                                $et_pb_first_row_first_module.removeAttr("style");
                                var et_pb_first_row_first_module_fullwidth_header_padding_top = parseInt($et_pb_first_row_first_module.css("paddingTop"));
                                et_save_initial_page_container_style($et_pb_first_row_first_module, "paddingTop"), $et_pb_first_row_first_module.css({
                                    paddingTop: header_height + et_pb_first_row_first_module_fullwidth_header_padding_top
                                })
                            } else if ($et_pb_first_row_first_module.is(".et_pb_fullwidth_portfolio")) et_save_initial_page_container_style($et_pb_first_row_first_module, "paddingTop"), $et_pb_first_row_first_module.css({
                                paddingTop: header_height
                            });
                            else if ($et_pb_first_row_first_module.is(".et_pb_map_container")) {
                                var $et_pb_first_row_map = $et_pb_first_row_first_module.find(".et_pb_map");
                                $et_pb_first_row_map.css({
                                    height: ""
                                }), $et_pb_first_row_first_module.find(".et_pb_map").css({
                                    height: header_height + parseInt($et_pb_first_row_map.css("height"))
                                }), $et_pb_first_row_first_module.addClass("et_beneath_transparent_nav")
                            } else if ($et_pb_first_row_first_module.is(".et_pb_menu") || $et_pb_first_row_first_module.is(".et_pb_fullwidth_menu")) et_save_initial_page_container_style($et_pb_first_row_first_module, "marginTop"), $et_pb_first_row_first_module.css({
                                marginTop: header_height
                            });
                            else if ($et_pb_first_row_first_module.is(".et_pb_fullwidth_code")) {
                                var $et_pb_first_row_first_module_code = $et_pb_first_row_first_module;
                                $et_pb_first_row_first_module_code.css({
                                    paddingTop: ""
                                });
                                var et_pb_first_row_first_module_code_padding_top = parseInt($et_pb_first_row_first_module_code.css("paddingTop"));
                                et_save_initial_page_container_style($et_pb_first_row_first_module_code, "paddingTop"), $et_pb_first_row_first_module_code.css({
                                    paddingTop: header_height + et_pb_first_row_first_module_code_padding_top
                                })
                            } else if ($et_pb_first_row_first_module.is(".et_pb_post_title")) {
                                et_save_initial_page_container_style($et_pb_first_row_first_module, "paddingTop"), $et_pb_first_row_first_module.css({
                                    paddingTop: header_height + 50
                                })
                            } else $et_pb_first_row_first_module.length || (et_pb_first_row_padding_top = parseFloat($et_pb_first_row.css("paddingTop")), et_save_initial_page_container_style($et_pb_first_row, "paddingTop"), $et_pb_first_row.data("is_hide_nav") || $et_pb_first_row.css({
                                paddingTop: et_pb_first_row_padding_top + header_height
                            }), clearTimeout(window.et_fallback_transparent_adjustment_timeout), window.et_fallback_transparent_adjustment_timeout = setTimeout(function() {
                                var is_hide_nav = $("body").hasClass("et_hide_nav") && "matrix(1, 0, 0, 1, 0, 0)" !== $("#main-header").css("transform");
                                is_hide_nav ? $et_pb_first_row.css({
                                    paddingTop: ""
                                }) : $et_pb_first_row.css({
                                    paddingTop: et_pb_first_row_padding_top + header_height
                                }), $et_pb_first_row.data("is_hide_nav", is_hide_nav)
                            }, 300))
                        } else if (is_pb) {
                        $et_pb_first_row.css({
                            paddingTop: ""
                        });
                        var applied_saved_custom_padding, saved_custom_padding_top = et_get_saved_padding_margin_value($et_pb_first_row.attr("data-padding"), 0),
                            saved_custom_padding_tablet_top = et_get_saved_padding_margin_value($et_pb_first_row.attr("data-padding-tablet"), 0),
                            saved_custom_padding_phone_top = et_get_saved_padding_margin_value($et_pb_first_row.attr("data-padding-phone"), 0);
                        saved_custom_padding_top || saved_custom_padding_tablet_top || saved_custom_padding_phone_top ? (980 < et_window_width && saved_custom_padding_top ? $et_pb_first_row.css({
                            paddingTop: saved_custom_padding_top
                        }) : 767 < et_window_width && saved_custom_padding_tablet_top ? $et_pb_first_row.css({
                            paddingTop: saved_custom_padding_tablet_top
                        }) : saved_custom_padding_phone_top && $et_pb_first_row.css({
                            paddingTop: saved_custom_padding_phone_top
                        }), applied_saved_custom_padding = parseInt($et_pb_first_row.css("paddingTop")), $et_pb_first_row.css({
                            paddingTop: header_height + applied_saved_custom_padding
                        })) : (et_pb_first_row_padding_top = header_height + parseInt($et_pb_first_row.css("paddingTop")), et_save_initial_page_container_style($et_pb_first_row, "paddingTop"), $et_pb_first_row.css({
                            paddingTop: et_pb_first_row_padding_top
                        }))
                    } else is_no_pb_mobile ? $et_main_content_first_row.css({
                        paddingTop: header_height
                    }) : $("#main-content .container:first-child").css({
                        paddingTop: header_height
                    });
                    else $et_main_content_first_row.css({
                        paddingTop: ""
                    }), et_window_width < 980 && (header_height += 40), is_pb_fullwidth_section_first && $et_pb_first_row.css({
                        paddingTop: "0"
                    }), is_post_pb_full_layout_has_title ? $et_main_content_first_row_meta_wrapper.css({
                        paddingTop: header_height
                    }) : is_post_pb_full_layout_no_title ? (et_save_initial_page_container_style($et_pb_first_row, "paddingTop"), $et_pb_first_row.css({
                        paddingTop: ""
                    }), $et_pb_first_row.css({
                        paddingTop: "calc(" + (header_height - 58) + "px + " + $et_pb_first_row.css("paddingTop") + ")"
                    })) : (et_save_initial_page_container_style($et_main_content_first_row, "paddingTop"), $et_main_content_first_row.css({
                        paddingTop: header_height
                    }));
                    $("#et_fix_page_container_position").length || $("<style />", {
                        id: "et_fix_page_container_position",
                        text: "#page-container{ padding-top: 0 !important;}"
                    }).appendTo("head");
                    var $firstSection = $(".et_pb_section:visible:first"),
                        $firstRow = $firstSection.find(".et_pb_row:visible:first"),
                        $firstModule = $firstSection.find(".et_pb_module:visible:first"),
                        firstSectionHasParallax = $firstSection.hasClass("et_pb_section_parallax"),
                        firstRowHasParallax = $firstRow.hasClass("et_pb_section_parallax"),
                        firstModuleHasParallax = $firstModule.hasClass("et_pb_section_parallax");
                    (firstSectionHasParallax || firstRowHasParallax || firstModuleHasParallax) && $(window).trigger("resize.etTrueParallaxBackground")
                }
                $mainHeaderClone.remove(), et_change_primary_nav_position(0), $(document).trigger("et-pb-header-height-calculated")
            }
            window.et_change_primary_nav_position = et_change_primary_nav_position, window.et_fix_page_container_position = et_fix_page_container_position, $et_container.data("previous-width", parseInt($et_container.width()));
            var update_page_container_position = et_debounce(function() {
                et_fix_page_container_position(), "function" == typeof et_fix_fullscreen_section && et_fix_fullscreen_section()
            }, 200);

            function et_all_elements_loaded() {
                if (et_is_fixed_nav && et_calculate_header_values(), setTimeout(function() {
                        et_fix_page_container_position()
                    }, 0), window.et_is_minified_js && window.et_is_transparent_nav && !window.et_is_vertical_nav && $(window).trigger("resize"), window.hasOwnProperty("et_location_hash") && "" !== window.et_location_hash && function() {
                        var location_hash = window.et_location_hash.replace(/(\|)/g, "\\$1");
                        if (0 !== $(location_hash).length) {
                            var $map_container = $(location_hash + " .et_pb_map_container"),
                                $map = $map_container.children(".et_pb_map"),
                                $target = $(location_hash);
                            void 0 !== window.et_location_hash_style && $target.css("display", window.et_location_hash_style);
                            var speed = 4e3 < (void 0 !== $target.offset().top ? $target.offset().top : 0) ? 1600 : 800;
                            $map_container.length && google.maps.event.trigger($map[0], "resize"), setTimeout(function() {
                                et_pb_smooth_scroll($target, !1, speed, "swing"), setTimeout(function() {
                                    et_pb_smooth_scroll($target, !1, 150, "linear")
                                }, speed + 25)
                            }, 700)
                        }
                    }(), et_header_style_left && !window.et_is_vertical_nav && ($logo_width = parseInt($("#logo").width()), et_is_rtl ? $et_top_navigation.css("padding-right", $logo_width + 30) : $et_top_navigation.css("padding-left", $logo_width + 30)), $("p.demo_store").length && $("p.demo_store").is(":visible") && ($("#footer-bottom").css("margin-bottom", $("p.demo_store").innerHeight()), $(".woocommerce-store-notice__dismiss-link").click(function() {
                        $("#footer-bottom").css("margin-bottom", "")
                    })), $.fn.waypoint) {
                    var $waypoint_selector;
                    if (et_is_vertical_fixed_nav && ($waypoint_selector = $("#main-content")).waypoint({
                            handler: function(direction) {
                                et_fix_logo_transition(), "down" === direction ? $("#main-header").addClass("et-fixed-header") : $("#main-header").removeClass("et-fixed-header")
                            }
                        }), et_is_fixed_nav) {
                        var isFirstRowOnTop = (0 < $et_pb_first_row.length ? $et_pb_first_row.offset().top : 0) <= ($("#wpadminbar").length ? $("#wpadminbar").height() : 0);
                        isFirstRowOnTop && window.et_is_transparent_nav && !window.et_is_vertical_nav && $et_pb_first_row.length ? ($waypoint_selector = $et_pb_first_row.is(".et_pb_fullwidth_section") ? $et_pb_first_row.children(".et_pb_module:visible:first") : $et_pb_first_row.find(".et_pb_row:visible:first")).length || ($waypoint_selector = $("body.et_pb_pagebuilder_layout .et_pb_module:visible:first")) : $waypoint_selector = isFirstRowOnTop && window.et_is_transparent_nav && !window.et_is_vertical_nav && $et_main_content_first_row.length ? $("#content-area") : $("#main-content");
                        var checkIfScrolled = !0;
                        setTimeout(function() {
                            checkIfScrolled = !1
                        }, 0), $waypoint_selector.waypoint({
                            offset: function() {
                                if (etRecalculateOffset && (setTimeout(function() {
                                        et_calculate_header_values()
                                    }, 200), etRecalculateOffset = !1), et_hide_nav) return et_header_offset - et_header_height - 200;
                                var waypoint_selector_offset = $waypoint_selector.offset();
                                return waypoint_selector_offset.top < et_header_offset && (et_header_offset = 0 - (et_header_offset - waypoint_selector_offset.top)), et_header_offset
                            },
                            handler: function(direction) {
                                if (et_fix_logo_transition(), "down" === direction) {
                                    if (checkIfScrolled && 0 === $et_window.scrollTop()) return;
                                    if ($main_header.addClass("et-fixed-header"), $main_container_wrapper.addClass("et-animated-content"), $top_header.addClass("et-fixed-header"), !et_hide_nav && !window.et_is_transparent_nav && !$(".mobile_menu_bar_toggle").is(":visible")) {
                                        var $clone_header, clone_header_height, fix_padding, secondary_nav_height = $top_header.length ? parseInt($top_header.height()) : 0;
                                        $clone_header = $main_header.clone().addClass("et-fixed-header, et_header_clone").css({
                                            transition: "none",
                                            display: "none"
                                        }), clone_header_height = parseInt($clone_header.prependTo("body").height()), window.et_is_vertical_nav || (fix_padding = parseInt($main_container_wrapper.css("padding-top")) - clone_header_height - secondary_nav_height + 1, $main_container_wrapper.css("margin-top", -fix_padding)), $(".et_header_clone").remove()
                                    }
                                } else $main_header.removeClass("et-fixed-header"), $top_header.removeClass("et-fixed-header"), $main_container_wrapper.css("margin-top", "-1px");
                                setTimeout(function() {
                                    et_set_search_form_css()
                                }, 400)
                            }
                        })
                    }
                    et_hide_nav && et_hide_nav_transform()
                }
            }
            $(window).resize(function() {
                var page_container_margin, left_position, window_width = parseInt($et_window.width()),
                    has_container = 0 < $et_container.length,
                    et_container_previous_width = has_container && parseInt($et_container.data("previous-width")) || 0,
                    et_container_css_width = $et_container.css("width"),
                    et_container_width_in_pixel = void 0 !== et_container_css_width ? "%" !== et_container_css_width.substr(-1, 1) : "",
                    et_container_actual_width = has_container ? et_container_width_in_pixel ? parseInt($et_container.width()) : parseInt((parseInt($et_container.width()) / 100).toFixed(0)) * window_width : 0,
                    containerWidthChanged = $et_container.length && et_container_previous_width !== et_container_actual_width,
                    $slide_menu_container = $(".et_slide_in_menu_container"),
                    $adminbar = isBuilder ? top_window.jQuery("#wpadminbar") : $("#wpadminbar"),
                    is_rtl = $("body").hasClass("rtl");
                (et_is_fixed_nav && containerWidthChanged && (update_page_container_position(), $et_container.data("previous-width", et_container_actual_width)), et_hide_nav && et_hide_nav_transform(), ($adminbar.length && et_is_fixed_nav && 740 <= window_width && window_width <= 782 || isBuilder) && (et_calculate_header_values(), et_change_primary_nav_position(0)), et_set_search_form_css(), $slide_menu_container.length && !$("body").hasClass("et_pb_slide_menu_active") && (is_rtl ? $slide_menu_container.css({
                    left: "-" + parseInt($slide_menu_container.innerWidth()) + "px"
                }) : $slide_menu_container.css({
                    right: "-" + parseInt($slide_menu_container.innerWidth()) + "px"
                }), $("body").hasClass("et_boxed_layout") && et_is_fixed_nav && (is_rtl ? (page_container_margin = $main_container_wrapper.css("margin-right"), $main_header.css({
                    right: page_container_margin
                })) : (page_container_margin = $main_container_wrapper.css("margin-left"), $main_header.css({
                    left: page_container_margin
                })))), $slide_menu_container.length && $("body").hasClass("et_pb_slide_menu_active")) && ($("body").hasClass("et_boxed_layout") ? (page_container_margin = parseFloat($main_container_wrapper.css("margin-left")), $main_container_wrapper.css({
                    left: "-" + (parseInt($slide_menu_container.innerWidth()) - page_container_margin) + "px"
                }), et_is_fixed_nav && (left_position = parseInt($slide_menu_container.innerWidth()) - 2 * page_container_margin < 0 ? Math.abs($slide_menu_container.innerWidth() - 2 * page_container_margin) : "-" + ($slide_menu_container.innerWidth() - 2 * page_container_margin)) < parseInt($slide_menu_container.innerWidth()) && $main_header.css({
                    left: left_position + "px"
                })) : is_rtl ? $("#page-container, .et_fixed_nav #main-header").css({
                    right: "-" + parseInt($slide_menu_container.innerWidth()) + "px"
                }) : $("#page-container, .et_fixed_nav #main-header").css({
                    left: "-" + parseInt($slide_menu_container.innerWidth()) + "px"
                }));
                if ($slide_menu_container.length && $("body").hasClass("et_header_style_fullscreen")) {
                    var top_bar_height = parseInt($slide_menu_container.find(".et_slide_menu_top").innerHeight());
                    $slide_menu_container.css({
                        "padding-top": top_bar_height + 20
                    })
                }
                et_set_right_vertical_menu()
            }), isBuilder && 0 < jQuery(".et_header_style_fullscreen .et_slide_in_menu_container").length && jQuery(window).resize(et_pb_resize_fullscreen_menu), $(window).ready(function() {
                $.fn.fitVids && $("#main-content").fitVids({
                    customSelector: "iframe[src^='http://www.hulu.com'], iframe[src^='http://www.dailymotion.com'], iframe[src^='http://www.funnyordie.com'], iframe[src^='https://embed-ssl.ted.com'], iframe[src^='http://embed.revision3.com'], iframe[src^='https://flickr.com'], iframe[src^='http://blip.tv'], iframe[src^='http://www.collegehumor.com']"
                })
            }), $('a[href*="#"]:not([href="#"])').click(function() {
                var $this_link = $(this),
                    has_closest_smooth_scroll_disabled = $this_link.closest(".et_smooth_scroll_disabled").length,
                    has_closest_woocommerce_tabs = $this_link.closest(".woocommerce-tabs").length && $this_link.closest(".tabs").length,
                    has_closest_timetable_tab = $this_link.closest(".tt_tabs_navigation").length,
                    has_closest_eab_cal_link = $this_link.closest(".eab-shortcode_calendar-navigation-link").length,
                    has_closest_ee_cart_link = $this_link.closest(".view-cart-lnk").length,
                    has_acomment_reply = $this_link.hasClass("acomment-reply"),
                    is_woocommerce_review_link = $this_link.hasClass("woocommerce-review-link"),
                    disable_scroll = has_closest_smooth_scroll_disabled || has_closest_ee_cart_link || has_closest_woocommerce_tabs || has_closest_eab_cal_link || has_acomment_reply || is_woocommerce_review_link || has_closest_timetable_tab;
                if (location.pathname.replace(/^\//, "") == this.pathname.replace(/^\//, "") && location.hostname == this.hostname && !disable_scroll) {
                    var target = $(this.hash);
                    if ((target = target.length ? target : $("[name=" + this.hash.slice(1) + "]")).length) return 0 < $this_link.closest(".et_pb_fullscreen_menu_opened").length && et_pb_toggle_fullscreen_menu(), setTimeout(function() {
                        et_pb_smooth_scroll(target, !1, 800)
                    }, 0), !$("#main-header").hasClass("et-fixed-header") && $("body").hasClass("et_fixed_nav") && 980 < $(window).width() && setTimeout(function() {
                        et_pb_smooth_scroll(target, !1, 40, "linear")
                    }, 780), !1
                }
            });
            var src, callback, img, et_pb_window_side_nav_get_sections = function() {
                var $inPost = $(".et-l--post .et_pb_section"),
                    $inTBBody = $(".et-l--body .et_pb_section").not(".et-l--post .et_pb_section");
                return 0 === $inTBBody.length || 1 < $inPost.length ? $inPost : $inTBBody
            };

            function et_hide_search() {
                $(".et_search_form_container").hasClass("et_pb_is_animating") || ($(".et_menu_container").removeClass("et_pb_menu_hidden et_pb_no_animation").addClass("et_pb_menu_visible"), $(".et_search_form_container").removeClass("et_pb_search_visible et_pb_no_animation").addClass("et_pb_search_form_hidden et_pb_is_animating"), setTimeout(function() {
                    $(".et_menu_container").addClass("et_pb_no_animation"), $(".et_search_form_container").addClass("et_pb_no_animation").removeClass("et_pb_is_animating")
                }, 1e3))
            }

            function et_set_search_form_css() {
                var $search_container = $(".et_search_form_container"),
                    $body = $("body");
                if ($search_container.hasClass("et_pb_search_visible")) {
                    var header_height = $("#main-header").innerHeight(),
                        menu_width = $("#top-menu").width(),
                        font_size = $("#top-menu li a").css("font-size");
                    $search_container.css({
                        height: header_height + "px"
                    }), $search_container.find("input").css("font-size", font_size), $body.hasClass("et_header_style_left") ? $search_container.find("form").css("max-width", menu_width + 60) : $search_container.css("max-width", menu_width + 60)
                }
            }

            function et_fb_side_nav_page_init() {
                $(window).off("scroll", window.et_pb_window_side_nav_scroll_init), $("#main-content .et_pb_side_nav").off("click", ".et_pb_side_nav a"), $("#main-content .et_pb_side_nav").remove(), et_pb_side_nav_page_init()
            }
            window.et_pb_window_side_nav_scroll_init = function() {
                if (!0 !== window.et_calculating_scroll_position && !1 !== window.et_side_nav_links_initialized) {
                    var $sections = et_pb_window_side_nav_get_sections();
                    window.et_calculating_scroll_position = !0;
                    var side_offset, add_offset_default = $(".et-l--header").length || $(".et-l--body").length || !$("#main-header").length ? 0 : -90,
                        add_offset = $("body").hasClass("et_fixed_nav") ? 20 : add_offset_default,
                        top_header_height = 0 < $("#top-header").length ? parseInt($("#top-header").height()) : 0,
                        main_header_height = 0 < $("#main-header").length ? parseInt($("#main-header").height()) : 0;
                    0 < $("#wpadminbar").length && 600 < parseInt($(window).width()) && (add_offset += parseInt($("#wpadminbar").outerHeight())), side_offset = window.et_is_vertical_nav ? top_header_height + add_offset + 60 : top_header_height + main_header_height + add_offset;
                    for (var window_height = parseInt($(window).height()), scroll_position = parseInt($(window).scrollTop()), at_bottom_of_page = window_height + scroll_position === parseInt($(document).height()), total_links = $(".side_nav_item a").length - 1, link = 0; link <= total_links; link++) {
                        var $target_section = $sections.eq(link),
                            at_top_of_page = void 0 === $target_section.offset(),
                            current_active = $(".side_nav_item a.active").parent().index(),
                            next_active = null,
                            target_offset = !1 === at_top_of_page ? $target_section.offset().top - side_offset : 0;
                        at_top_of_page ? next_active = 0 : at_bottom_of_page ? next_active = total_links : target_offset <= scroll_position && (next_active = link), null !== next_active && next_active !== current_active && ($(".side_nav_item a").removeClass("active"), $("a#side_nav_item_id_" + next_active).addClass("active"))
                    }
                    window.et_calculating_scroll_position = !1
                }
            }, window.et_pb_side_nav_page_init = function() {
                var $sections = et_pb_window_side_nav_get_sections(),
                    total_sections = $sections.length,
                    side_nav_offset = parseInt((20 * total_sections + 40) / 2);
                window.et_side_nav_links_initialized = !1, window.et_calculating_scroll_position = !1, 1 < total_sections && $(".et_pb_side_nav_page").length && ($("#main-content").append('<ul class="et_pb_side_nav"></ul>'), $sections.each(function(index, element) {
                    var active_class = 0 === index ? "active" : "";
                    $(".et_pb_side_nav").append('<li class="side_nav_item"><a href="#" id="side_nav_item_id_' + index + '" class= "' + active_class + '">' + index + "</a></li>"), total_sections - 1 === index && (window.et_side_nav_links_initialized = !0)
                }), $("ul.et_pb_side_nav").css("marginTop", "-" + side_nav_offset + "px"), $(".et_pb_side_nav").addClass("et-visible"), $(".et_pb_side_nav a").click(function() {
                    var index = parseInt($(this).text()),
                        $target = $sections.eq(index),
                        top_section = "0" == $(this).text() && !$(".et-l--body").length;
                    return et_pb_smooth_scroll($target, top_section, 800), !$("#main-header").hasClass("et-fixed-header") && $("body").hasClass("et_fixed_nav") && 980 < parseInt($(window).width()) && setTimeout(function() {
                        et_pb_smooth_scroll($target, top_section, 200)
                    }, 500), !1
                }), $(window).on("scroll", et_pb_window_side_nav_scroll_init))
            }, $("body").is(".et-fb, .et-bfb") && (window.et_pb_side_nav_page_init = et_debounce(window.et_pb_side_nav_page_init, 200)), et_pb_side_nav_page_init(), $(".et_pb_scroll_top").length && ($(window).scroll(function() {
                800 < $(this).scrollTop() ? $(".et_pb_scroll_top").show().removeClass("et-hidden").addClass("et-visible") : $(".et_pb_scroll_top").removeClass("et-visible").addClass("et-hidden")
            }), $(".et_pb_scroll_top").click(function() {
                $("html, body").animate({
                    scrollTop: 0
                }, 800)
            })), $(".comment-reply-link").length && $(".comment-reply-link").addClass("et_pb_button"), $("#et_top_search").click(function() {
                var $search_container = $(".et_search_form_container");
                $search_container.hasClass("et_pb_is_animating") || ($(".et_menu_container").removeClass("et_pb_menu_visible et_pb_no_animation").addClass("et_pb_menu_hidden"), $search_container.removeClass("et_pb_search_form_hidden et_pb_no_animation").addClass("et_pb_search_visible et_pb_is_animating"), setTimeout(function() {
                    $(".et_menu_container").addClass("et_pb_no_animation"), $search_container.addClass("et_pb_no_animation").removeClass("et_pb_is_animating")
                }, 1e3), $search_container.find("input").focus(), et_set_search_form_css())
            }), $(".et_close_search_field").click(function() {
                et_hide_search()
            }), $(document).mouseup(function(e) {
                var $header = $("#main-header");
                $(".et_menu_container").hasClass("et_pb_menu_hidden") && ($header.is(e.target) || 0 !== $header.has(e.target).length || et_hide_search())
            }), $("#logo").length && (src = $("#logo").attr("src"), callback = function() {
                var $logo_wrap, logo_width, logo_height, $logo = $("#logo"),
                    is_svg = "svg" === $logo.attr("src").substr(-3, 3);
                $("body").append($("<div />", {
                    id: "et-define-logo-wrap",
                    style: "position: fixed; bottom: 0; opacity: 0;"
                })), $logo_wrap = $("#et-define-logo-wrap"), is_svg && $logo_wrap.addClass("svg-logo"), $logo_wrap.html($logo.clone().css({
                    display: "block"
                }).removeAttr("id")), logo_width = $logo_wrap.find("img").width(), logo_height = $logo_wrap.find("img").height(), $logo.attr({
                    "data-actual-width": logo_width,
                    "data-actual-height": logo_height
                }), $logo_wrap.remove(), et_fix_logo_transition(!0)
            }, (img = new Image).onLoad = callback, img.onload = callback, img.src = src), $(".footer-widget").each(function() {
                var $footer_widget = $(this),
                    footer_widget_width = $footer_widget.width(),
                    $adsense_ins = $footer_widget.find(".widget_adsensewidget ins");
                $adsense_ins.length && $adsense_ins.width(footer_widget_width)
            }), $("body").is(".et-fb") ? ($(window).on("et_fb_root_did_mount", function() {
                et_fb_side_nav_page_init(), et_all_elements_loaded()
            }), $(window).on("et_fb_section_content_change", et_fb_side_nav_page_init)) : $(window).load(et_all_elements_loaded)
        }), $("#main-header").on("click", ".et_toggle_slide_menu", function() {
            et_toggle_slide_menu()
        }), et_is_touch_device && ($et_window.on("swipeleft", function(event) {
            parseInt($et_window.width()) - parseInt(event.swipestart.coords[0]) <= 30 && et_toggle_slide_menu("open")
        }), $et_window.on("swiperight", function(event) {
            $("body").hasClass("et_pb_slide_menu_active") && et_toggle_slide_menu("close")
        })), $("#page-container").on("click", ".et_toggle_fullscreen_menu", function() {
            et_pb_toggle_fullscreen_menu()
        }), $(window).unload(function() {
            $("body").hasClass("et_pb_fullscreen_menu_active") && $(".et_toggle_fullscreen_menu").trigger("click")
        }), $(".et_pb_fullscreen_nav_container").on("click", "li.menu-item-has-children > a", function() {
            var $this_parent = $(this).closest("li"),
                $this_arrow = $this_parent.find(">a .et_mobile_menu_arrow"),
                $closest_submenu = $this_parent.find(">ul"),
                is_opened_submenu = $this_arrow.hasClass("et_pb_submenu_opened");
            return $this_arrow.toggleClass("et_pb_submenu_opened"), is_opened_submenu ? ($closest_submenu.removeClass("et_pb_slide_dropdown_opened"), $closest_submenu.slideToggle(700, "easeInOutCubic")) : ($closest_submenu.slideToggle(700, "easeInOutCubic"), $closest_submenu.addClass("et_pb_slide_dropdown_opened")), !1
        }), $("body").hasClass("et_header_style_fullscreen")) {
        var $menu_container = $(".et_header_style_fullscreen .et_slide_in_menu_container");
        if ($menu_container.length) {
            var top_bar_height = $menu_container.find(".et_slide_menu_top").innerHeight();
            $menu_container.css({
                "padding-top": top_bar_height + 20
            })
        }
    }
    $(document.body).on("checkout_error", function() {
        et_adjust_woocommerce_checkout_scroll()
    }), $(document.body).on("updated_checkout", function(data) {
        "failure" === data.result && et_adjust_woocommerce_checkout_scroll()
    }), $et_window.on("et_fb_init", function() {
        var wp = top_window.wp;
        if (wp && wp.hooks && wp.hooks.addFilter) {
            var replacement = window.DIVI.row_selector;
            wp.hooks.addFilter("et.pb.row.css.selector", "divi.et.pb.row.css.selector", function(selector) {
                return selector.replace("%%row_selector%%", replacement)
            })
        }
    })
}(jQuery);