// source --> https://www.reisswolf.ch/wp-content/plugins/so-widgets-bundle/js/slider/jquery.slider.min.js?ver=1.70.1 
var sowb=window.sowb||{};sowb.SiteOriginSlider=function(e){return{playSlideVideo:function(i){e(i).find("video").each(function(){void 0!==this.play&&this.play()});var t=e(i).find("iframe");t.length&&(t[0].contentWindow.postMessage('{"method":"play"}',"*"),t[0].contentWindow.postMessage('{"event":"command","func":"playVideo","args":""}',"*"))},pauseSlideVideo:function(i){e(i).find("video").each(function(){void 0!==this.pause&&this.pause()});var t=e(i).find("iframe");t.length&&(t[0].contentWindow.postMessage('{"method":"pause"}',"*"),t[0].contentWindow.postMessage('{"event":"command","func":"pauseVideo","args":""}',"*"))},enableBackground:function(e,i){e.css("background-image",i),e.removeAttr("data-background")},setupActiveSlide:function(i,t,s){var o=e(i).find(".cycle-sentinel"),a=e(t),n=a.find("video.sow-background-element"),d=e(i).prev(),l=a.attr("data-background");void 0!==l&&this.enableBackground(a,l);var r=a.find(".sow-slider-image-overlay");if(r){var c=r.attr("data-background");void 0!==c&&this.enableBackground(r,c)}if(void 0===s?o.css("height",a.outerHeight()+"px"):o.animate({height:a.outerHeight()},s),d.length){var u;e(i).find(".sow-slider-image > video").prop("muted",!0);var w=e(i).find(".sow-slide-video-oembed iframe");if((u=w.length?w:a.find("> video")).length){d.clearQueue().fadeIn(s);var f=d.siblings(".sow-slider-images").data("settings");u.hasClass("sow-player-unmuted")?(w.length?w.contentWindow.postMessage('{"event":"command","func":"unMute","args":""}',"*"):u.prop("muted",!1),d.addClass("sow-player-unmuted"),d.attr("aria-label",f.muteLoc)):(d.removeClass("sow-player-unmuted"),d.attr("aria-label",f.unmuteLoc))}else d.clearQueue().fadeOut(s)}n.length&&(a.outerWidth()/a.outerHeight()>n.outerWidth()/n.outerHeight()?n.css({width:"100%",height:"auto"}):n.css({width:"auto",height:"100%"}),n.css({"margin-left":-Math.ceil(n.width()/2),"margin-top":-Math.ceil(n.height()/2)}))}}},jQuery(function(e){sowb.setupSliders=sowb.setupSlider=function(){var i=new sowb.SiteOriginSlider(e);e(".sow-slider-images").each(function(){var t=e(this);if(t.data("initialized"))return t;var s=t.siblings(".sow-slider-pagination"),o=t.closest(".sow-slider-base"),a=o.find(".sow-slide-nav"),n=t.find(".sow-slider-image"),d=t.data("settings");d.breakpoint&&e(window).on("load resize",function(){window.matchMedia("(max-width: "+d.breakpoint+")").matches?o.addClass("sow-slider-is-mobile"):o.removeClass("sow-slider-is-mobile")}),n.each(function(i,t){var s=e(t);let o=s.data("url");(function(e){if(!e||!e.hasOwnProperty("url"))return!1;let i;try{i=decodeURIComponent(e.url).toLowerCase()}catch(e){return!1}if(-1!==i.indexOf("javascript:"))return!1;if(i.startsWith("//")||i.startsWith("/")&&!i.startsWith("//")||i.startsWith("#"))return!0;if("undefined"!=typeof sowb_slider_allowed_protocols)try{const i=new URL(e.url,window.location.origin).protocol.toLowerCase().replace(":","");return sowb_slider_allowed_protocols.includes(i)}catch(e){return!1}return/^https?:/.test(i)})(o)&&(s.on("click",function(e){e.preventDefault(),window.open(o.url,o.hasOwnProperty("new_window")&&o.new_window?"_blank":"_self").opener=null}),s.find("a").on("click",function(e){e.stopPropagation()}))});var l=function(){var r=t.closest(".so-widget-fittext-wrapper");if(r.length>0&&!r.data("fitTextDone"))r.on("fitTextDone",function(){l()});else{var c=t.find(".sow-slider-image-parallax[data-siteorigin-parallax]").length,u=!1;if(!c){var w=t.find(".sow-slider-image-parallax:not([data-siteorigin-parallax])");!w.length||"undefined"==typeof parallaxStyles||parallaxStyles["disable-parallax-mobile"]&&window.matchMedia("(max-width: "+parallaxStyles["mobile-breakpoint"]+")").matches||(u=!0,o.css("opacity",0))}o.show();var f=function(){t.find(".sow-slider-image").each(function(){var i=e(this);i.css("height",i.find(".sow-slider-image-wrapper").outerHeight()+"px")})};if(e(window).on("resize panelsStretchRows",f).trigger("resize"),e(sowb).on("setup_widgets",f),!c&&u){if(!w.find(".simpleParallax").length)return void setTimeout(l,50);window.dispatchEvent(new Event("resize")),setTimeout(function(){o.css("opacity",1)},425)}if(t.trigger("slider_setup_before"),t.on({"cycle-after":function(t,s,o,a,n){var d=e(this);i.playSlideVideo(a),i.setupActiveSlide(d,a),e(a).trigger("sowSlideCycleAfter")},"cycle-before":function(t,o,a,n,d){var l=e(this);s.find("> li").removeClass("sow-active").eq(o.slideNum-1).addClass("sow-active"),i.pauseSlideVideo(a),i.setupActiveSlide(l,n,o.speed),e(n).trigger("sowSlideCycleBefore")},"cycle-initialized":function(o,n){i.playSlideVideo(e(this).find(".cycle-slide-active")),i.setupActiveSlide(t,n.slides[0]),s.find(">li").removeClass("sow-active").eq(0).addClass("sow-active"),e(this).find(".cycle-slide-active").trigger("sowSlideInitial"),n.slideCount<=1&&(s.hide(),a.hide()),e(window).trigger("resize"),setTimeout(function(){f(),i.setupActiveSlide(t,n.slides[0]),t.find(".cycle-sentinel").empty()},200)}}).cycle({slides:"> .sow-slider-image",speed:d.speed,timeout:d.timeout,swipe:d.swipe,paused:d.paused,pauseOnHover:d.pause_on_hover,"swipe-fx":"scrollHorz",log:!1}),t.find("video.sow-background-element").on("loadeddata",function(){i.setupActiveSlide(t,t.find(".cycle-slide-active"))}),s.add(a).hide(),n.length>1)if(o.hasClass("sow-slider-is-mobile"))d.nav_always_show_mobile&&window.matchMedia("(max-width: "+d.breakpoint+")").matches&&(s.show(),a.show());else if(d.nav_always_show_desktop&&window.matchMedia("(min-width: "+d.breakpoint+")").matches)s.show(),a.show();else{var p=!1;o.on("mouseenter",function(){s.add(a).clearQueue().fadeIn(150),p=!1}).on("mouseleave",function(){p=!0,setTimeout(function(){p&&s.add(a).clearQueue().fadeOut(150),p=!1},750)})}var h=function(){i.setupActiveSlide(t,t.find(".cycle-slide-active"))};e(window).on("resize",h),e(sowb).on("setup_widgets",h),s.find("> li > a").on("click",function(i){i.preventDefault(),t.cycle("goto",e(this).data("goto"))}),a.find("> a").on("click",function(i){i.preventDefault(),t.cycle(e(this).data("action"))}),o.on("keyup",function(e){if("ArrowLeft"===e.key)t.cycle("prev");else{if("ArrowRight"!==e.key)return;t.cycle("next")}o.trigger("focus")}),d.unmute&&o.find(".sow-player-controls-sound").on("click",function(){var i,t=e(this),s=t.next().find(".cycle-slide-active .sow-slide-video-oembed iframe");i=s.length?s:t.next().find(".cycle-slide-active > video"),t.hasClass("sow-player-unmuted")?(t.removeClass("sow-player-unmuted"),i.removeClass("sow-player-muted"),t.attr("aria-label",d.unmuteLoc),s.length?s[0].contentWindow.postMessage('{"event":"command","func":"mute","args":""}',"*"):i.prop("muted",!0)):(t.addClass("sow-player-unmuted"),i.addClass("sow-player-unmuted"),t.attr("aria-label",d.muteLoc),s.length?s[0].contentWindow.postMessage('{"event":"command","func":"unMute","args":""}',"*"):i.prop("muted",!1))})}};t.trigger("slider_setup_after"),l(),"function"==typeof e.fn.fitVids&&t.find(".sow-slide-video-oembed").fitVids(),t.data("initialized",!0)})},sowb.setupSliders(),e(sowb).on("setup_widgets",sowb.setupSliders)}),window.sowb=sowb;
// source --> https://www.reisswolf.ch/wp-content/plugins/siteorigin-premium/js/animate.min.js?ver=1.73.4 
window.SiteOriginPremium=window.SiteOriginPremium||{},SiteOriginPremium.setupAnimations=function(i){const e="webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend",n=function(i,e=0){const t=i.$el.outerHeight();if(0===t)return void setTimeout((function(){n(i,e)}),100);const s=document.querySelector(i.selector),o=parseInt(e,10),m=Math.min(Math.max(o/t,0),1);new IntersectionObserver((function([e],n){e.isIntersecting&&(a(i,!1),n.unobserve(s))}),{threshold:m}).observe(s)},a=function(i,n){if(i.disableAnimationMobile&&window.matchMedia("(max-width: "+i.breakpoint+")").matches)return i.hide&&i.$el.css("opacity",1),void i.$el.addClass("animate__animated");var a=function(){i.hide&&i.$el.css("opacity",1),n?i.$el.removeClass("animate__animated animate__"+i.animation).addClass("animate__animated animate__"+i.animation):i.$el.addClass("animate__animated animate__"+i.animation),i.$el.one(e,(function(){i.$el.removeClass("animate__animated animate__"+i.animation),"hidden"===i.finalState?i.$el.css("opacity",0):"removed"===i.finalState&&i.$el.css("display","none")}))},t=parseFloat(i.delay);!isNaN(t)&&t>0?setTimeout((function(){a()}),1e3*t):a()};i("[data-so-animation]").each((function(){var t=i(this),s=t.data("so-animation");s.$el=t;let o=parseFloat(s.duration)||1;const m=t.closest(".sow-slider-images");let d=!1;m.length&&s.animation&&"slide_display"===s.event&&(d=parseInt(m.data("settings").speed)/100||1,o=Math.min(o,d)),isNaN(o)||t.css({"-webkit-animation-duration":o+"s","animation-duration":o+"s"});s.debounce;if(s.animation)switch(s.event){case"enter":n(s,s.offset);break;case"in":n(s,parseInt(s.offset)+t.outerHeight());break;case"hover":s.repeat?t.on("mouseenter",(function(){a(s,!0),t.addClass("animate__infinite")})).on("mouseleave",(function(){t.removeClass("animate__infinite")})):t.on("mouseenter",(function(){a(s,!0)}));break;case"slide_display":var l=t.closest(".sow-slider-image");l.hasClass("cycle-slide")&&0===l.index()&&a(s,!0),l.on("sowSlideCycleAfter sowSlideInitial",(function(i){a(s,!0)})),s.hide&&!s.animation_type_slide_out&&l.on("sowSlideCycleBefore",(function(i){t.css("opacity",0)}));break;case"load":a(s,!1)}s.animation_type_slide_out&&(t.closest(".sow-slider-images").on("cycle-before",(function(n){if(s.animation_type_slide_out){const n=t.closest(".sow-slider-image");n.hasClass("cycle-slide-active")&&(n.siblings(".sow-slider-image").find('[data-so-animation][class*="animate_"]').filter((function(){const e=i(this).data("so-animation");return e&&"slide_display"===e.event})).each((function(){stopSlideAnimation.call(this,null,s.hide)})),t.addClass("animate__animated animate__"+s.animation_type_slide_out).one(e,(function(){t.removeClass("animate__animated animate__"+s.animation_type_slide_out),s.hide&&t.css("opacity",0)})))}else s.hide&&t.css("opacity",0)})),s.animation&&s.hide&&t.closest(".sow-slider-images").one("cycle-after",(function(i){t.css("opacity",1)})))})),stopSlideAnimation=function(e,n){i(this).removeClass("animate__animated").removeClass((i,e)=>(e.match(/(^|\s)animate__\S+/g)||[]).join(" ")).css("opacity",n?0:1)}},jQuery((function(i){SiteOriginPremium.setupAnimations(i),window.sowb&&i(window.sowb).on("setup_widgets",(function(e,n){n&&n.preview&&SiteOriginPremium.setupAnimations(i)}))}));
// source --> https://www.reisswolf.ch/wp-content/plugins/siteorigin-premium/addons/plugin/image-overlay/js/lib/anime.min.js?ver=1.73.4 
"use strict";var defaultInstanceSettings={update:null,begin:null,loopBegin:null,changeBegin:null,change:null,changeComplete:null,loopComplete:null,complete:null,loop:1,direction:"normal",autoplay:!0,timelineOffset:0},defaultTweenSettings={duration:1e3,delay:0,endDelay:0,easing:"easeOutElastic(1, .5)",round:0},validTransforms=["translateX","translateY","translateZ","rotate","rotateX","rotateY","rotateZ","scale","scaleX","scaleY","scaleZ","skew","skewX","skewY","perspective"],cache={CSS:{},springs:{}};function minMax(e,t,n){return Math.min(Math.max(e,t),n)}function stringContains(e,t){return e.indexOf(t)>-1}function applyArguments(e,t){return e.apply(null,t)}var is={arr:function(e){return Array.isArray(e)},obj:function(e){return stringContains(Object.prototype.toString.call(e),"Object")},pth:function(e){return is.obj(e)&&e.hasOwnProperty("totalLength")},svg:function(e){return e instanceof SVGElement},inp:function(e){return e instanceof HTMLInputElement},dom:function(e){return e.nodeType||is.svg(e)},str:function(e){return"string"==typeof e},fnc:function(e){return"function"==typeof e},und:function(e){return void 0===e},hex:function(e){return/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(e)},rgb:function(e){return/^rgb/.test(e)},hsl:function(e){return/^hsl/.test(e)},col:function(e){return is.hex(e)||is.rgb(e)||is.hsl(e)},key:function(e){return!defaultInstanceSettings.hasOwnProperty(e)&&!defaultTweenSettings.hasOwnProperty(e)&&"targets"!==e&&"keyframes"!==e}};function parseEasingParameters(e){var t=/\(([^)]+)\)/.exec(e);return t?t[1].split(",").map((function(e){return parseFloat(e)})):[]}function spring(e,t){var n=parseEasingParameters(e),r=minMax(is.und(n[0])?1:n[0],.1,100),a=minMax(is.und(n[1])?100:n[1],.1,100),i=minMax(is.und(n[2])?10:n[2],.1,100),s=minMax(is.und(n[3])?0:n[3],.1,100),o=Math.sqrt(a/r),u=i/(2*Math.sqrt(a*r)),c=u<1?o*Math.sqrt(1-u*u):0,l=u<1?(u*o-s)/c:-s+o;function g(e){var n=t?t*e/1e3:e;return n=u<1?Math.exp(-n*u*o)*(1*Math.cos(c*n)+l*Math.sin(c*n)):(1+l*n)*Math.exp(-n*o),0===e||1===e?e:1-n}return t?g:function(){var t=cache.springs[e];if(t)return t;for(var n=0,r=0;;)if(1===g(n+=1/6)){if(++r>=16)break}else r=0;var a=n*(1/6)*1e3;return cache.springs[e]=a,a}}function elastic(e,t){void 0===e&&(e=1),void 0===t&&(t=.5);var n=minMax(e,1,10),r=minMax(t,.1,2);return function(e){return 0===e||1===e?e:-n*Math.pow(2,10*(e-1))*Math.sin((e-1-r/(2*Math.PI)*Math.asin(1/n))*(2*Math.PI)/r)}}function steps(e){return void 0===e&&(e=10),function(t){return Math.round(t*e)*(1/e)}}var bezier=function(){function e(e,t){return 1-3*t+3*e}function t(e,t){return 3*t-6*e}function n(e){return 3*e}function r(r,a,i){return((e(a,i)*r+t(a,i))*r+n(a))*r}function a(r,a,i){return 3*e(a,i)*r*r+2*t(a,i)*r+n(a)}return function(e,t,n,i){if(0<=e&&e<=1&&0<=n&&n<=1){var s=new Float32Array(11);if(e!==t||n!==i)for(var o=0;o<11;++o)s[o]=r(.1*o,e,n);return function(a){return e===t&&n===i||0===a||1===a?a:r(u(a),t,i)}}function u(t){for(var i=0,o=1;10!==o&&s[o]<=t;++o)i+=.1;--o;var u=i+.1*((t-s[o])/(s[o+1]-s[o])),c=a(u,e,n);return c>=.001?function(e,t,n,i){for(var s=0;s<4;++s){var o=a(t,n,i);if(0===o)return t;t-=(r(t,n,i)-e)/o}return t}(t,u,e,n):0===c?u:function(e,t,n,a,i){var s,o,u=0;do{(s=r(o=t+(n-t)/2,a,i)-e)>0?n=o:t=o}while(Math.abs(s)>1e-7&&++u<10);return o}(t,i,i+.1,e,n)}}}(),penner=function(){var e=["Quad","Cubic","Quart","Quint","Sine","Expo","Circ","Back","Elastic"],t={In:[[.55,.085,.68,.53],[.55,.055,.675,.19],[.895,.03,.685,.22],[.755,.05,.855,.06],[.47,0,.745,.715],[.95,.05,.795,.035],[.6,.04,.98,.335],[.6,-.28,.735,.045],elastic],Out:[[.25,.46,.45,.94],[.215,.61,.355,1],[.165,.84,.44,1],[.23,1,.32,1],[.39,.575,.565,1],[.19,1,.22,1],[.075,.82,.165,1],[.175,.885,.32,1.275],function(e,t){return function(n){return 1-elastic(e,t)(1-n)}}],InOut:[[.455,.03,.515,.955],[.645,.045,.355,1],[.77,0,.175,1],[.86,0,.07,1],[.445,.05,.55,.95],[1,0,0,1],[.785,.135,.15,.86],[.68,-.55,.265,1.55],function(e,t){return function(n){return n<.5?elastic(e,t)(2*n)/2:1-elastic(e,t)(-2*n+2)/2}}]},n={linear:[.25,.25,.75,.75]},r=function(r){t[r].forEach((function(t,a){n["ease"+r+e[a]]=t}))};for(var a in t)r(a);return n}();function parseEasings(e,t){if(is.fnc(e))return e;var n=e.split("(")[0],r=penner[n],a=parseEasingParameters(e);switch(n){case"spring":return spring(e,t);case"cubicBezier":return applyArguments(bezier,a);case"steps":return applyArguments(steps,a);default:return is.fnc(r)?applyArguments(r,a):applyArguments(bezier,r)}}function selectString(e){try{return document.querySelectorAll(e)}catch(e){return}}function filterArray(e,t){for(var n=e.length,r=arguments.length>=2?arguments[1]:void 0,a=[],i=0;i<n;i++)if(i in e){var s=e[i];t.call(r,s,i,e)&&a.push(s)}return a}function flattenArray(e){return e.reduce((function(e,t){return e.concat(is.arr(t)?flattenArray(t):t)}),[])}function toArray(e){return is.arr(e)?e:(is.str(e)&&(e=selectString(e)||e),e instanceof NodeList||e instanceof HTMLCollection?[].slice.call(e):[e])}function arrayContains(e,t){return e.some((function(e){return e===t}))}function cloneObject(e){var t={};for(var n in e)t[n]=e[n];return t}function replaceObjectProps(e,t){var n=cloneObject(e);for(var r in e)n[r]=t.hasOwnProperty(r)?t[r]:e[r];return n}function mergeObjects(e,t){var n=cloneObject(e);for(var r in t)n[r]=is.und(e[r])?t[r]:e[r];return n}function rgbToRgba(e){var t=/rgb\((\d+,\s*[\d]+,\s*[\d]+)\)/g.exec(e);return t?"rgba("+t[1]+",1)":e}function hexToRgba(e){var t=e.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i,(function(e,t,n,r){return t+t+n+n+r+r})),n=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(t);return"rgba("+parseInt(n[1],16)+","+parseInt(n[2],16)+","+parseInt(n[3],16)+",1)"}function hslToRgba(e){var t,n,r,a=/hsl\((\d+),\s*([\d.]+)%,\s*([\d.]+)%\)/g.exec(e)||/hsla\((\d+),\s*([\d.]+)%,\s*([\d.]+)%,\s*([\d.]+)\)/g.exec(e),i=parseInt(a[1],10)/360,s=parseInt(a[2],10)/100,o=parseInt(a[3],10)/100,u=a[4]||1;function c(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+6*(t-e)*n:n<.5?t:n<2/3?e+(t-e)*(2/3-n)*6:e}if(0==s)t=n=r=o;else{var l=o<.5?o*(1+s):o+s-o*s,g=2*o-l;t=c(g,l,i+1/3),n=c(g,l,i),r=c(g,l,i-1/3)}return"rgba("+255*t+","+255*n+","+255*r+","+u+")"}function colorToRgb(e){return is.rgb(e)?rgbToRgba(e):is.hex(e)?hexToRgba(e):is.hsl(e)?hslToRgba(e):void 0}function getUnit(e){var t=/([\+\-]?[0-9#\.]+)(%|px|pt|em|rem|in|cm|mm|ex|ch|pc|vw|vh|vmin|vmax|deg|rad|turn)?$/.exec(e);if(t)return t[2]}function getTransformUnit(e){return stringContains(e,"translate")||"perspective"===e?"px":stringContains(e,"rotate")||stringContains(e,"skew")?"deg":void 0}function getFunctionValue(e,t){return is.fnc(e)?e(t.target,t.id,t.total):e}function getAttribute(e,t){return e.getAttribute(t)}function convertPxToUnit(e,t,n){if(arrayContains([n,"deg","rad","turn"],getUnit(t)))return t;var r=cache.CSS[t+n];if(!is.und(r))return r;var a=document.createElement(e.tagName),i=e.parentNode&&e.parentNode!==document?e.parentNode:document.body;i.appendChild(a),a.style.position="absolute",a.style.width=100+n;var s=100/a.offsetWidth;i.removeChild(a);var o=s*parseFloat(t);return cache.CSS[t+n]=o,o}function getCSSValue(e,t,n){if(t in e.style){var r=t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase(),a=e.style[t]||getComputedStyle(e).getPropertyValue(r)||"0";return n?convertPxToUnit(e,a,n):a}}function getAnimationType(e,t){return is.dom(e)&&!is.inp(e)&&(getAttribute(e,t)||is.svg(e)&&e[t])?"attribute":is.dom(e)&&arrayContains(validTransforms,t)?"transform":is.dom(e)&&"transform"!==t&&getCSSValue(e,t)?"css":null!=e[t]?"object":void 0}function getElementTransforms(e){if(is.dom(e)){for(var t,n=e.style.transform||"",r=/(\w+)\(([^)]*)\)/g,a=new Map;t=r.exec(n);)a.set(t[1],t[2]);return a}}function getTransformValue(e,t,n,r){var a=stringContains(t,"scale")?1:0+getTransformUnit(t),i=getElementTransforms(e).get(t)||a;return n&&(n.transforms.list.set(t,i),n.transforms.last=t),r?convertPxToUnit(e,i,r):i}function getOriginalTargetValue(e,t,n,r){switch(getAnimationType(e,t)){case"transform":return getTransformValue(e,t,r,n);case"css":return getCSSValue(e,t,n);case"attribute":return getAttribute(e,t);default:return e[t]||0}}function getRelativeValue(e,t){var n=/^(\*=|\+=|-=)/.exec(e);if(!n)return e;var r=getUnit(e)||0,a=parseFloat(t),i=parseFloat(e.replace(n[0],""));switch(n[0][0]){case"+":return a+i+r;case"-":return a-i+r;case"*":return a*i+r}}function validateValue(e,t){if(is.col(e))return colorToRgb(e);var n=getUnit(e),r=n?e.substr(0,e.length-n.length):e;return t&&!/\s/g.test(e)?r+t:r}function getDistance(e,t){return Math.sqrt(Math.pow(t.x-e.x,2)+Math.pow(t.y-e.y,2))}function getCircleLength(e){return 2*Math.PI*getAttribute(e,"r")}function getRectLength(e){return 2*getAttribute(e,"width")+2*getAttribute(e,"height")}function getLineLength(e){return getDistance({x:getAttribute(e,"x1"),y:getAttribute(e,"y1")},{x:getAttribute(e,"x2"),y:getAttribute(e,"y2")})}function getPolylineLength(e){for(var t,n=e.points,r=0,a=0;a<n.numberOfItems;a++){var i=n.getItem(a);a>0&&(r+=getDistance(t,i)),t=i}return r}function getPolygonLength(e){var t=e.points;return getPolylineLength(e)+getDistance(t.getItem(t.numberOfItems-1),t.getItem(0))}function getTotalLength(e){if(e.getTotalLength)return e.getTotalLength();switch(e.tagName.toLowerCase()){case"circle":return getCircleLength(e);case"rect":return getRectLength(e);case"line":return getLineLength(e);case"polyline":return getPolylineLength(e);case"polygon":return getPolygonLength(e)}}function setDashoffset(e){var t=getTotalLength(e);return e.setAttribute("stroke-dasharray",t),t}function getParentSvgEl(e){for(var t=e.parentNode;is.svg(t)&&(t=t.parentNode,is.svg(t.parentNode)););return t}function getParentSvg(e,t){var n=t||{},r=n.el||getParentSvgEl(e),a=r.getBoundingClientRect(),i=getAttribute(r,"viewBox"),s=a.width,o=a.height,u=n.viewBox||(i?i.split(" "):[0,0,s,o]);return{el:r,viewBox:u,x:u[0]/1,y:u[1]/1,w:s/u[2],h:o/u[3]}}function getPath(e,t){var n=is.str(e)?selectString(e)[0]:e,r=t||100;return function(e){return{property:e,el:n,svg:getParentSvg(n),totalLength:getTotalLength(n)*(r/100)}}}function getPathProgress(e,t){function n(n){void 0===n&&(n=0);var r=t+n>=1?t+n:0;return e.el.getPointAtLength(r)}var r=getParentSvg(e.el,e.svg),a=n(),i=n(-1),s=n(1);switch(e.property){case"x":return(a.x-r.x)*r.w;case"y":return(a.y-r.y)*r.h;case"angle":return 180*Math.atan2(s.y-i.y,s.x-i.x)/Math.PI}}function decomposeValue(e,t){var n=/-?\d*\.?\d+/g,r=validateValue(is.pth(e)?e.totalLength:e,t)+"";return{original:r,numbers:r.match(n)?r.match(n).map(Number):[0],strings:is.str(e)||t?r.split(n):[]}}function parseTargets(e){return filterArray(e?flattenArray(is.arr(e)?e.map(toArray):toArray(e)):[],(function(e,t,n){return n.indexOf(e)===t}))}function getAnimatables(e){var t=parseTargets(e);return t.map((function(e,n){return{target:e,id:n,total:t.length,transforms:{list:getElementTransforms(e)}}}))}function normalizePropertyTweens(e,t){var n=cloneObject(t);if(/^spring/.test(n.easing)&&(n.duration=spring(n.easing)),is.arr(e)){var r=e.length;2===r&&!is.obj(e[0])?e={value:e}:is.fnc(t.duration)||(n.duration=t.duration/r)}var a=is.arr(e)?e:[e];return a.map((function(e,n){var r=is.obj(e)&&!is.pth(e)?e:{value:e};return is.und(r.delay)&&(r.delay=n?0:t.delay),is.und(r.endDelay)&&(r.endDelay=n===a.length-1?t.endDelay:0),r})).map((function(e){return mergeObjects(e,n)}))}function flattenKeyframes(e){for(var t=filterArray(flattenArray(e.map((function(e){return Object.keys(e)}))),(function(e){return is.key(e)})).reduce((function(e,t){return e.indexOf(t)<0&&e.push(t),e}),[]),n={},r=function(r){var a=t[r];n[a]=e.map((function(e){var t={};for(var n in e)is.key(n)?n==a&&(t.value=e[n]):t[n]=e[n];return t}))},a=0;a<t.length;a++)r(a);return n}function getProperties(e,t){var n=[],r=t.keyframes;for(var a in r&&(t=mergeObjects(flattenKeyframes(r),t)),t)is.key(a)&&n.push({name:a,tweens:normalizePropertyTweens(t[a],e)});return n}function normalizeTweenValues(e,t){var n={};for(var r in e){var a=getFunctionValue(e[r],t);is.arr(a)&&1===(a=a.map((function(e){return getFunctionValue(e,t)}))).length&&(a=a[0]),n[r]=a}return n.duration=parseFloat(n.duration),n.delay=parseFloat(n.delay),n}function normalizeTweens(e,t){var n;return e.tweens.map((function(r){var a=normalizeTweenValues(r,t),i=a.value,s=is.arr(i)?i[1]:i,o=getUnit(s),u=getOriginalTargetValue(t.target,e.name,o,t),c=n?n.to.original:u,l=is.arr(i)?i[0]:c,g=getUnit(l)||getUnit(u),f=o||g;return is.und(s)&&(s=c),a.from=decomposeValue(l,f),a.to=decomposeValue(getRelativeValue(s,l),f),a.start=n?n.end:0,a.end=a.start+a.delay+a.duration+a.endDelay,a.easing=parseEasings(a.easing,a.duration),a.isPath=is.pth(i),a.isColor=is.col(a.from.original),a.isColor&&(a.round=1),n=a,a}))}var setProgressValue={css:function(e,t,n){return e.style[t]=n},attribute:function(e,t,n){return e.setAttribute(t,n)},object:function(e,t,n){return e[t]=n},transform:function(e,t,n,r,a){if(r.list.set(t,n),t===r.last||a){var i="";r.list.forEach((function(e,t){i+=t+"("+e+") "})),e.style.transform=i}}};function setTargetsValue(e,t){getAnimatables(e).forEach((function(e){for(var n in t){var r=getFunctionValue(t[n],e),a=e.target,i=getUnit(r),s=getOriginalTargetValue(a,n,i,e),o=getRelativeValue(validateValue(r,i||getUnit(s)),s),u=getAnimationType(a,n);setProgressValue[u](a,n,o,e.transforms,!0)}}))}function createAnimation(e,t){var n=getAnimationType(e.target,t.name);if(n){var r=normalizeTweens(t,e),a=r[r.length-1];return{type:n,property:t.name,animatable:e,tweens:r,duration:a.end,delay:r[0].delay,endDelay:a.endDelay}}}function getAnimations(e,t){return filterArray(flattenArray(e.map((function(e){return t.map((function(t){return createAnimation(e,t)}))}))),(function(e){return!is.und(e)}))}function getInstanceTimings(e,t){var n=e.length,r=function(e){return e.timelineOffset?e.timelineOffset:0},a={};return a.duration=n?Math.max.apply(Math,e.map((function(e){return r(e)+e.duration}))):t.duration,a.delay=n?Math.min.apply(Math,e.map((function(e){return r(e)+e.delay}))):t.delay,a.endDelay=n?a.duration-Math.max.apply(Math,e.map((function(e){return r(e)+e.duration-e.endDelay}))):t.endDelay,a}var instanceID=0;function createNewInstance(e){var t=replaceObjectProps(defaultInstanceSettings,e),n=replaceObjectProps(defaultTweenSettings,e),r=getProperties(n,e),a=getAnimatables(e.targets),i=getAnimations(a,r),s=getInstanceTimings(i,n),o=instanceID;return instanceID++,mergeObjects(t,{id:o,children:[],animatables:a,animations:i,duration:s.duration,delay:s.delay,endDelay:s.endDelay})}var raf,activeInstances=[],pausedInstances=[],engine=function(){function e(){raf=requestAnimationFrame(t)}function t(t){var n=activeInstances.length;if(n){for(var r=0;r<n;){var a=activeInstances[r];if(a.paused){var i=activeInstances.indexOf(a);i>-1&&(activeInstances.splice(i,1),n=activeInstances.length)}else a.tick(t);r++}e()}else raf=cancelAnimationFrame(raf)}return e}();function handleVisibilityChange(){document.hidden?(activeInstances.forEach((function(e){return e.pause()})),pausedInstances=activeInstances.slice(0),activeInstances=[]):pausedInstances.forEach((function(e){return e.play()}))}function anime(e){void 0===e&&(e={});var t,n=0,r=0,a=0,i=0,s=null;function o(e){var t=window.Promise&&new Promise((function(e){return s=e}));return e.finished=t,t}var u=createNewInstance(e);o(u);function c(){var e=u.direction;"alternate"!==e&&(u.direction="normal"!==e?"normal":"reverse"),u.reversed=!u.reversed,t.forEach((function(e){return e.reversed=u.reversed}))}function l(e){return u.reversed?u.duration-e:e}function g(){n=0,r=l(u.currentTime)*(1/anime.speed)}function f(e,t){t&&t.seek(e-t.timelineOffset)}function d(e){for(var t=0,n=u.animations,r=n.length;t<r;){var a=n[t],i=a.animatable,s=a.tweens,o=s.length-1,c=s[o];o&&(c=filterArray(s,(function(t){return e<t.end}))[0]||c);for(var l=minMax(e-c.start-c.delay,0,c.duration)/c.duration,g=isNaN(l)?1:c.easing(l),f=c.to.strings,d=c.round,m=[],p=c.to.numbers.length,v=void 0,h=0;h<p;h++){var y=void 0,b=c.to.numbers[h],T=c.from.numbers[h]||0;y=c.isPath?getPathProgress(c.value,g*b):T+g*(b-T),d&&(c.isColor&&h>2||(y=Math.round(y*d)/d)),m.push(y)}var x=f.length;if(x){v=f[0];for(var A=0;A<x;A++){f[A];var P=f[A+1],w=m[A];isNaN(w)||(v+=P?w+P:w+" ")}}else v=m[0];setProgressValue[a.type](i.target,a.property,v,i.transforms),a.currentValue=v,t++}}function m(e){u[e]&&!u.passThrough&&u[e](u)}function p(e){var g=u.duration,p=u.delay,v=g-u.endDelay,h=l(e);u.progress=minMax(h/g*100,0,100),u.reversePlayback=h<u.currentTime,t&&function(e){if(u.reversePlayback)for(var n=i;n--;)f(e,t[n]);else for(var r=0;r<i;r++)f(e,t[r])}(h),!u.began&&u.currentTime>0&&(u.began=!0,m("begin"),m("loopBegin")),h<=p&&0!==u.currentTime&&d(0),(h>=v&&u.currentTime!==g||!g)&&d(g),h>p&&h<v?(u.changeBegan||(u.changeBegan=!0,u.changeCompleted=!1,m("changeBegin")),m("change"),d(h)):u.changeBegan&&(u.changeCompleted=!0,u.changeBegan=!1,m("changeComplete")),u.currentTime=minMax(h,0,g),u.began&&m("update"),e>=g&&(r=0,u.remaining&&!0!==u.remaining&&u.remaining--,u.remaining?(n=a,m("loopComplete"),m("loopBegin"),"alternate"===u.direction&&c()):(u.paused=!0,u.completed||(u.completed=!0,m("loopComplete"),m("complete"),!u.passThrough&&"Promise"in window&&(s(),o(u)))))}return u.reset=function(){var e=u.direction;u.passThrough=!1,u.currentTime=0,u.progress=0,u.paused=!0,u.began=!1,u.changeBegan=!1,u.completed=!1,u.changeCompleted=!1,u.reversePlayback=!1,u.reversed="reverse"===e,u.remaining=u.loop,t=u.children;for(var n=i=t.length;n--;)u.children[n].reset();(u.reversed&&!0!==u.loop||"alternate"===e&&1===u.loop)&&u.remaining++,d(0)},u.set=function(e,t){return setTargetsValue(e,t),u},u.tick=function(e){a=e,n||(n=a),p((a+(r-n))*anime.speed)},u.seek=function(e){p(l(e))},u.pause=function(){u.paused=!0,g()},u.play=function(){u.paused&&(u.completed&&u.reset(),u.paused=!1,activeInstances.push(u),g(),raf||engine())},u.reverse=function(){c(),g()},u.restart=function(){u.reset(),u.play()},u.reset(),u.autoplay&&u.play(),u}function removeTargetsFromAnimations(e,t){for(var n=t.length;n--;)arrayContains(e,t[n].animatable.target)&&t.splice(n,1)}function removeTargets(e){for(var t=parseTargets(e),n=activeInstances.length;n--;){var r=activeInstances[n],a=r.animations,i=r.children;removeTargetsFromAnimations(t,a);for(var s=i.length;s--;){var o=i[s],u=o.animations;removeTargetsFromAnimations(t,u),u.length||o.children.length||i.splice(s,1)}a.length||i.length||r.pause()}}function stagger(e,t){void 0===t&&(t={});var n=t.direction||"normal",r=t.easing?parseEasings(t.easing):null,a=t.grid,i=t.axis,s=t.from||0,o="first"===s,u="center"===s,c="last"===s,l=is.arr(e),g=l?parseFloat(e[0]):parseFloat(e),f=l?parseFloat(e[1]):0,d=getUnit(l?e[1]:e)||0,m=t.start||0+(l?g:0),p=[],v=0;return function(e,t,h){if(o&&(s=0),u&&(s=(h-1)/2),c&&(s=h-1),!p.length){for(var y=0;y<h;y++){if(a){var b=u?(a[0]-1)/2:s%a[0],T=u?(a[1]-1)/2:Math.floor(s/a[0]),x=b-y%a[0],A=T-Math.floor(y/a[0]),P=Math.sqrt(x*x+A*A);"x"===i&&(P=-x),"y"===i&&(P=-A),p.push(P)}else p.push(Math.abs(s-y));v=Math.max.apply(Math,p)}r&&(p=p.map((function(e){return r(e/v)*v}))),"reverse"===n&&(p=p.map((function(e){return i?e<0?-1*e:-e:Math.abs(v-e)})))}return m+(l?(f-g)/v:g)*(Math.round(100*p[t])/100)+d}}function timeline(e){void 0===e&&(e={});var t=anime(e);return t.duration=0,t.add=function(n,r){var a=activeInstances.indexOf(t),i=t.children;function s(e){e.passThrough=!0}a>-1&&activeInstances.splice(a,1);for(var o=0;o<i.length;o++)s(i[o]);var u=mergeObjects(n,replaceObjectProps(defaultTweenSettings,e));u.targets=u.targets||e.targets;var c=t.duration;u.autoplay=!1,u.direction=t.direction,u.timelineOffset=is.und(r)?c:getRelativeValue(r,c),s(t),t.seek(u.timelineOffset);var l=anime(u);s(l),i.push(l);var g=getInstanceTimings(i,e);return t.delay=g.delay,t.endDelay=g.endDelay,t.duration=g.duration,t.seek(0),t.reset(),t.autoplay&&t.play(),t},t}"undefined"!=typeof document&&document.addEventListener("visibilitychange",handleVisibilityChange),anime.version="3.0.1",anime.speed=1,anime.running=activeInstances,anime.remove=removeTargets,anime.get=getOriginalTargetValue,anime.set=setTargetsValue,anime.convertPx=convertPxToUnit,anime.path=getPath,anime.setDashoffset=setDashoffset,anime.stagger=stagger,anime.timeline=timeline,anime.easing=parseEasings,anime.penner=penner,anime.random=function(e,t){return Math.floor(Math.random()*(t-e+1))+e};
// source --> https://www.reisswolf.ch/wp-content/plugins/siteorigin-premium/addons/plugin/image-overlay/js/so-premium-image-overlay.min.js?ver=1.73.4 
window.SiteOriginPremium=window.SiteOriginPremium||{},SiteOriginPremium.ImageOverlay=function(i,t,e){var o=jQuery;this.image=i,this.options=t,this.init=function(){this.imageContainer||(this.imageContainer=o(i).parent().closest("div"),this.createChildren(),this.addEventListeners()),setTimeout(this.layoutChildren.bind(this),150)},this.createChildren=function(){if(this.overlayContainer=o('<div class="so-premium-image-overlay-container"></div>'),this.overlay=o('<div class="so-premium-image-overlay"></div>'),this.overlayBackground=o('<div class="so-premium-image-overlay-background"></div>'),this.overlayBackground.css({backgroundColor:t.overlay_color,opacity:t.overlay_opacity}),this.overlay.append(this.overlayBackground),void 0===this.options.overlay_text)var i=this.image.title;else if("object"==typeof this.options.overlay_text)i=void 0===this.options.overlay_text[e]?this.image.title:this.options.overlay_text[e];else i=this.options.overlay_text;this.overlayText=o('<div class="so-premium-image-overlay-text">'+i+"</div>"),o(this.image).css("pointerEvents","none");var s={margin:"0",padding:this.options.text_padding};t.hasOwnProperty("font")&&t.font&&(s.fontFamily=t.font.family,t.font.hasOwnProperty("weight")&&(s.fontWeight=t.font.weight),t.font.hasOwnProperty("url")&&o("head").append('<link rel="stylesheet" media="all" href="'+t.font.url+'"/>')),t.hasOwnProperty("text_size")&&(s.fontSize=t.text_size),t.hasOwnProperty("text_color")&&(s.color=t.text_color),s.textAlign=t.text_align,this.overlayText.css(s),this.overlay.append(this.overlayText),this.overlay.css("opacity",0),this.overlayContainer.append(this.overlay),t.widget_id&&this.overlayContainer.addClass("so-premium-"+t.widget_id),this.overlayContainer.css({overflow:"hidden"}),this.imageContainer.find("> a").length?this.imageContainer.find("> a").append(this.overlayContainer):this.imageContainer.append(this.overlayContainer)},this.layoutChildren=function(){var i=o(this.image),e=this.imageContainer.position();e.width=Math.min(this.imageContainer.width(),i.width()),e.height=Math.min(this.imageContainer.height(),i.height());var s={top:Math.max(0,i.position().top)+"px",left:Math.max(0,i.position().left)+"px",width:e.width+"px",height:e.height+"px",maxWidth:this.imageContainer.css("maxWidth"),maxHeight:this.imageContainer.css("maxHeight")};this.overlayContainer.css(s),"boolean"==typeof this.options.responsive_breakpoint&&(this.options.responsive_breakpoint="1024px"),this.isDesktop=window.matchMedia("(min-width: "+this.options.responsive_breakpoint+" )").matches;var a={top:0,left:0,width:e.width,height:e.height,maxWidth:i.css("maxWidth"),maxHeight:i.css("maxHeight")},n=this.options.overlay_size;switch(this.options.overlay_position){case"top":a.height=e.height*n;break;case"right":a.width=e.width*n,a.left=e.width-a.width;break;case"bottom":a.height=e.height*n,a.top=e.height-a.height;break;case"left":a.width=e.width*n}a.top+="px",a.width+="px",a.height+="px",a.left+="px",this.overlay.css(a);var r=this.overlay.outerHeight(),h=this.overlayText.outerHeight(),l={};switch(this.options.text_position){case"top":l.top=0;break;case"middle":l.top=.5*(r-h)+"px";break;case"bottom":l.top=r-h+"px"}if(this.overlayText.css(l),!this.options.overlay_animation_onscreen&&(this.isDesktop&&"always"===this.options.desktop_show_trigger||!this.isDesktop&&"always"===this.options.touch_show_trigger))this.overlay.css("opacity",1),this.overlayText.css("opacity",1);else if(this.options.overlay_animation&&"none"!==this.options.overlay_animation&&(this.animationTimeline=anime.timeline({autoplay:!1}),this.animationTimeline.add(this.getAnimationOptions(this.overlay.get(0),this.options.overlay_animation,{position:this.options.overlay_position}))),this.isDesktop?this.overlayText.css("opacity",1):this.options.text_animation&&"none"!==this.options.text_animation&&(this.animationTimeline||(this.animationTimeline=anime.timeline({autoplay:!1})),this.animationTimeline.add(this.getAnimationOptions(this.overlayText.get(0),this.options.text_animation))),this.isDesktop&&"hover_hide"===this.options.desktop_show_trigger&&(this.animationTimeline.play(),this.showOverlay(),this.overlay.css("opacity",1),this.overlayText.css("opacity",1),this.showingOverlay=!0,this.animationTimeline.completed=!0),"function"==typeof OnScreen&&this.options.overlay_animation_onscreen&&(this.isDesktop&&"always"===this.options.desktop_show_trigger||!this.isDesktop&&"always"===this.options.touch_show_trigger)){const i=document.querySelector(".so-premium-"+t.widget_id);var m=new IntersectionObserver((function(t){t&&t[0].isIntersecting&&(this.toggleOverlay(),m.unobserve(i))}),{threshold:.25});m.observe(i)}this.isDesktop?"hover"===this.options.desktop_show_trigger?(this.imageContainer.on("mouseenter",function(){this.showOverlay()}.bind(this)),this.imageContainer.on("mouseleave",function(){this.hideOverlay()}.bind(this))):"hover_hide"===this.options.desktop_show_trigger&&(this.imageContainer.on("mouseenter",function(){this.hideOverlay()}.bind(this)),this.imageContainer.on("mouseleave",function(){this.showOverlay()}.bind(this))):"touch"===this.options.touch_show_trigger&&this.imageContainer.on("touchend",function(){this.toggleOverlay()}.bind(this))},this.getAnimationOptions=function(i,t,e){var s={targets:i,changeBegin:function(){this.overlayContainer.css("overflow","hidden")}.bind(this)},a=o(i);switch(t){case"fade":s.easing="linear",s.duration=250,s.opacity=[0,1];break;case"slide":switch(s.easing="easeOutExpo",s.duration=500,a.css("opacity",1),e.hasOwnProperty("position")?e.position:"top"){case"top":s.translateY=[-a.outerHeight(),0];break;case"right":s.translateX=[a.parent().outerWidth(),0];break;case"bottom":s.translateY=[a.parent().outerHeight(),0];break;case"left":s.translateX=[-a.outerWidth(),0]}break;case"slide_left":s.easing="easeOutExpo",s.duration=500,s.opacity=[0,1],s.translateX=[20,0];break;case"slide_right":s.easing="easeOutExpo",s.duration=500,s.opacity=[0,1],s.translateX=[-20,0];break;case"slide_up":s.easing="easeOutExpo",s.duration=500,s.opacity=[0,1],s.translateY=[10,0];break;case"slide_down":s.easing="easeOutExpo",s.duration=500,s.opacity=[0,1],s.translateY=[-10,0];break;case"drop":s.easing="linear",s.duration=250,s.opacity=[0,1],s.scale=[1.1,1],s.changeBegin=function(){this.overlayContainer.css("overflow","visible")}.bind(this)}return s},this.addEventListeners=function(){this.imageContainer.is(".sow-masonry-grid-item,.sow-image-grid-image")&&this.imageContainer.closest(".sow-masonry-grid,.sow-image-grid-wrapper").on("layoutComplete",this.layoutChildren.bind(this)),o(window).on("resize",this.layoutChildren.bind(this))},this.showOverlay=function(){this.showingOverlay||(this.showingOverlay=!0,this.animationTimeline?("reverse"===this.animationTimeline.direction&&this.animationTimeline.reverse(),this.animationTimeline.began&&!this.animationTimeline.completed||this.animationTimeline.play()):this.overlay.css("opacity",1))},this.hideOverlay=function(){this.showingOverlay&&(this.showingOverlay=!1,this.animationTimeline?("normal"===this.animationTimeline.direction&&this.animationTimeline.reverse(),this.animationTimeline.completed&&(this.animationTimeline.completed=!1,this.animationTimeline.play())):this.overlay.css("opacity",0))},this.toggleOverlay=function(){if(this.animationTimeline)this.animationTimeline.began&&"normal"===this.animationTimeline.direction?this.hideOverlay():this.showOverlay();else{var i=1===this.overlay.css("opacity")?0:1;this.overlay.css("opacity",i)}},i.complete?this.init():(i.addEventListener("load",function(){this.init()}.bind(this)),i.addEventListener("error",(function(){console.log("Could not setup Image Overlay. Image loading failed.")})))},SiteOriginPremium.createImageOverlays=function(i){i(".so-widget-sow-image, .so-widget-sow-image-grid, .so-widget-sow-simple-masonry").each((function(t,e){var o=i(e);if(o.data("overlay-enabled")){var s=o.data("overlay-settings");i(e).find("img").each((function(t,e){e.title&&(e.classList.contains("jetpack-lazy-image")?i(e).on("jetpack-lazy-loaded-image",(function(i){new SiteOriginPremium.ImageOverlay(i.target,s,t)})):new SiteOriginPremium.ImageOverlay(e,s,t))}))}}))},jQuery((function(i){SiteOriginPremium.createImageOverlays(i),window.sowb&&i(window.sowb).on("setup_widgets",(function(){SiteOriginPremium.createImageOverlays(i)}))}));
// source --> https://www.reisswolf.ch/wp-content/themes/reisswolf/js/reisswolf-base.js?ver=1761682092 

/*----------------------------------------------------------------------
header function
----------------------------------------------------------------------*/

window.onscroll = stickyHeader;

function stickyHeader() {
    var header = document.getElementById("is-header");
    if (window.pageYOffset > 0) {
        header.classList.add("get-sticky");
        if(typeof(document.getElementById('scrollprogress')) != 'undefined')
        {
          if (jQuery('#scrollprogress').length) {
            document.getElementById('scrollprogress').classList.add("progress-container-show");
          }
        }
    } else {
        header.classList.remove("get-sticky");
        if(typeof(document.getElementById('scrollprogress')) != 'undefined')
        {
          if (jQuery('#scrollprogress').length) {
            document.getElementById('scrollprogress').classList.remove("progress-container-show");
          }        }
    }

    var winScroll = document.body.scrollTop || document.documentElement.scrollTop;
    var height = document.documentElement.scrollHeight - document.documentElement.clientHeight;
    var scrolled = (winScroll / height) * 100;

    if (jQuery('#progress-line-bar').length) {
      document.getElementById("progress-line-bar").style.width = scrolled + "%";
    }
}




/*********************************************
Contact Widget Controls
*********************************************/

jQuery(document).ready(function () {

  /* Check if URL GET param set and change directly contact person */
      const queryString = window.location.search;
      const urlParams = new URLSearchParams(queryString);
      const product = urlParams.get('sales');

      if (urlParams.get('sales') && urlParams.get('sales').length > 1 && urlParams.get('sales').length < 200) {
          find_salesperson(urlParams.get('sales'), 0, 0, false);
      }
      else {


        /* Check if Cookie set and change directly contact person */
          var cookieset = getCookie('salesteam');

          if (cookieset)
          {
            find_salesperson((cookieset.split('#'))[0], (cookieset.split('#'))[1], (cookieset.split('#'))[2], false);
          }
          else
          {
          //  console.log('cookie sales not exists');

          /*--------- auto show Contact Widget -------*/
          if ((window.matchMedia('(min-width: 600px)').matches))
            {
              jQuery('.is-contact-widget').addClass('show-contact');
              //jQuery('.is-contact-widget .widget_custom_html').addClass('active');
            }
          }

      }








  var firsttime=true;

    jQuery(window).scroll(function () {
        var addClassOnOffset = window.innerHeight * 0.0001;
        if (window.pageYOffset > addClassOnOffset) {
            jQuery('.is-contact-widget').addClass('show-contact');

            if (cookieset)
            {
            //  set_salesarea_person((cookieset.split('#'))[0], (cookieset.split('#'))[1], (cookieset.split('#'))[2], false)
            }
            else {
            //  console.log('cookie sales not exists');
            /*--------- auto show Contact Widget Card complete-------*/
              if(firsttime==true)
              {
                if ((window.matchMedia('(min-width: 800px)').matches))
                  {
                    jQuery('.is-contact-widget .widget_custom_html').addClass('active');
                  }
              }
            }
        }/* else {

          if(firsttime==true)
          {
            jQuery('.is-contact-widget').removeClass('show-contact');
            jQuery('.is-contact-widget .widget_custom_html').removeClass('active');

            firsttime=false;
          }
        }
*/

        jQuery('.is-contact-widget').mouseout(function() {
          jQuery('.is-contact-widget .widget_custom_html').removeClass('active');

          firsttime=false;
        });



/*********************************************
Scroll to top button
*********************************************/

        var addClassOnOffset = window.innerHeight * 0.8;
        if (window.pageYOffset > addClassOnOffset) {
            jQuery('.is-scrolltop-widget').addClass('show-scrolltop');
        } else {
            jQuery('.is-scrolltop-widget').removeClass('show-scrolltop');
            //jQuery('.is-scrolltop-widget .widget_custom_html').removeClass('active');
        }

        jQuery('.is-scrolltop-widget').on('click', function (evt) {
            jQuery(window).scrollTop(0);
        });
/*
        if (window.pageYOffset > window.innerHeight) {
            if(firsttime=='yes')
            {
              jQuery('.is-contact-widget .widget_custom_html').addClass('active');
              //console.log('click');
              firsttime='no';

              /*--------- auto hide Contact Widget -------
              setTimeout(function(){
                jQuery('.is-contact-widget .widget_custom_html').removeClass('active');
              },8000);
            }
          }
*/
    });


    /* image onclick for show and hide */
    jQuery( ".is-contact-widget .widget_media_image" ).click(function() {
        jQuery('.is-contact-widget .widget_custom_html').toggleClass('active');
    });





/*********************************************
Select Contact for Widget from Contact Page
*********************************************/

jQuery( ".set-contact" ).click(function() {
  var contact = jQuery(this).attr('id');
    find_salesperson(''+contact+'', 0, 0, true);
});


/* Add Button to image overlay */
jQuery( ".set-contact" ).each(function() {
    var contact = jQuery(this).attr('id');

    if (wpml_current_language  == "de") {
        var salesbuttonaddtext = "als meinen<br>Kontakt festlegen";
    }
    else
    {
        var salesbuttonaddtext = "set as<br>my contact";
    }

    jQuery(this).find('.sow-image-container').append(jQuery('<div class="set-contact-overlay"><div id="location-button" class="so-widget-sow-button so-widget-sow-button-suloredsimple-26d68955a680-6111"><div class="ow-button-base ow-button-align-left"><a class="ow-icon-placement-right ow-button-hover button-small"><span><span class="sow-icon-fontawesome sow-fas" data-sow-icon="" aria-hidden="true"></span>'+salesbuttonaddtext+'</span></a></div></div></div></div>'));
});




/*********************************************
Before-header
*********************************************/

jQuery('.mobile-hide').parent('div').addClass('mobile-hide');



});

/*----------------------------------------------------------------------
language menu
----------------------------------------------------------------------*/

jQuery(document).ready(function () {
    jQuery('.current-site-language').on('click', function (evt) {
        jQuery('#language-overlay').show();
    });

    jQuery('#language-overlay .menu-close button').on('click', function (evt) {
        jQuery('div#language-overlay').hide();
    });

    jQuery('ul.languages-column > li > span').on('click', function () {
        jQuery('.show-language').hide();
        jQuery(this)
            .parent()
            .find('ul.country-languages > li')
            .addClass('show-language')
            .show();
    });

    jQuery('ul.country-languages > li.language')
        .hide();

    jQuery('ul.languages-column .active-country li').show();


});

function showlanguage() {
    // placeholder to prevent js error
}

function hidelanguage() {
    // placeholder to prevent js error
}

/*----------------------------------------------------------------------
solutions menu
----------------------------------------------------------------------*/

jQuery(document).ready(function () {


    //  jQuery('div.solutions-menu ul.sub-menu:first-child').addClass('TESTCLASS');     old: > ul:not(.sub-menu)
// jQuery('div.solutions-menu ul.sub-menu:first-child > li > a').on('click', function (evt) {
//div.solutions-menu ul.sub-menu:first-child > li > a

    jQuery('div.solutions-menu ul.sub-menu:first-child > li > a').on('click', function (evt) {
        evt.preventDefault();

        if (jQuery(jQuery(this).parent().children('ul.sub-menu').children('li')[0]).hasClass('activeMenu')) {
            jQuery(this).parent().children('ul.sub-menu').each(function() {

            // Hide Double-Click Error on Desktop
              if ((window.matchMedia('(max-width: 1024px)').matches))
                    {
                jQuery(this)
                    .children('li')
                    .addClass('activeMenu')
                    // .hide()
                    .removeClass('activeMenu');
                    }
                    else
                    {
                jQuery(this)
                    .children('li')
                    .addClass('activeMenu')
                    // .hide()
                    //.removeClass('activeMenu');
              }
            });
            jQuery(this).parent().removeClass('firstlevel-active');
        } else {
            if (jQuery('.activeMenu')) {
                jQuery('.activeMenu')
                    // .hide()
                    .removeClass('activeMenu');
                jQuery('.firstlevel-active').removeClass('firstlevel-active');
            }
            jQuery(this).parent().children('ul.sub-menu').each(function() {
                jQuery(this).children('li').addClass('activeMenu');
                    // .show();
            });
            jQuery(this).parent().addClass('firstlevel-active');
        }
    });

    if (jQuery('.activeMenu')) {
        jQuery('.activeMenu')
            // .hide()
            .removeClass('activeMenu');
    }


    // Set click active state if current post is product
    /* Fallback: first Solution */

    var solutions_menu_exists = document.getElementsByClassName('solutions-menu');
    if (solutions_menu_exists.length > 0) {


        //you can now reuse  $myDiv here, without having to select it again.
        if (jQuery('div.solutions-menu ul > li.current-menu-ancestor').length){
            jQuery('div.solutions-menu ul > li.current-menu-ancestor > a')[0].click();
        } else {
            jQuery('div.solutions-menu ul > li > a')[0].click();
        }
    }



/* If menu open and window resize open mobile menu
jQuery(window).resize(function() {

        if ((window.matchMedia('(max-width: 1024px)').matches))
        {
            if (jQuery('header').is('.menu-main-active','.menu-solutions-active'))
            {
              console.log('showmainmenu from resize');
              jQuery('header').removeClass('menu-main-active');
              hidedropdowns();
            }
            else {

            }
        }
});
*/



/* Mobile Menu */

if ((window.matchMedia('(max-width: 1024px)').matches))
  {

        jQuery('.main-navigation > li.menu-item-has-children > a').on('click', function (evt) {
            evt.preventDefault();

            jQuery(this).parent('.menu-item-has-children')
                .toggleClass('firstlevel-active');

            jQuery(this).parent('.menu-item-has-children')
                .find('> .sub-menu')
                .toggleClass('active');

          });


        jQuery('.main-navigation > li.menu-item-has-children > .sub-menu > li.menu-item-has-children > a').on('click', function (evt) {
            evt.preventDefault();

            jQuery(this).parent('.menu-item-has-children')
                .toggleClass('firstlevel-active');

            jQuery(this).parent('.menu-item-has-children')
                .find('> .sub-menu')
                .toggleClass('active');

          });


   }
   else {


          /* Click for Dropdown li - Blocking hover */

          jQuery('.main-navigation > .menu-dropdown.menu-item-has-children > a').on('click', function (evt) {
              evt.preventDefault();

                  hidemainmenu();
                  hidesolutions();

                  // Open or close the clicked submenu
                  var submenu = jQuery(this).parent().find('> .sub-menu');
                  if (submenu.hasClass('visible')) {
                    submenu.removeClass('visible');
                    submenu.parent().removeClass('visible');

                    if (submenu.parent().hasClass('menu-item-has-children'))
                    {
                      submenu.parent().find('.sub-menu').removeClass('visible');
                    }

                    jQuery('header').removeClass('menu-main-active');
                  } else {
                    // Close any open submenus
                    hidedropdowns();

                    // Open the clicked submenu
                    submenu.addClass('visible');
                    submenu.parent().addClass('visible');
                    jQuery('header').addClass('menu-main-active');
                  }


          });


          /* Click for Dropdown li > ul li > ul  - Blocking hover */
          jQuery('.main-navigation > .menu-dropdown.menu-item-has-children > .sub-menu > li.menu-item-has-children > a').on('click', function (evt) {
              evt.preventDefault();

                  // Open or close the clicked submenu
                  var submenu = jQuery(this).parent().find('> .sub-menu');
                  if (submenu.hasClass('visible')) {
                    submenu.removeClass('visible');
                    // submenu.parent().removeClass('visible');
                    // jQuery('header').removeClass('menu-main-active');
                  } else {
                    // Close any open submenus of current li.submenu
                    jQuery(this).parent().parent().find('.sub-menu').removeClass('visible');
                    // jQuery('ul.main-navigation li').removeClass('visible');

                    // Open the clicked submenu
                    submenu.addClass('visible');
                    submenu.parent().addClass('visible');
                    jQuery('header').addClass('menu-main-active');
                  }


          });



    }


});





var menustatus;

function showmenu() {



    jQuery('#menu-overlay')
        .addClass('overlay-active');
        // .show();

    jQuery('header')
        .addClass('menu-main-active');

    jQuery('body')
        .addClass('menu-overflow');

    menustatus = 1;
}




function hidemenu() {

    jQuery('#menu-overlay.overlay-active')
        .removeClass('overlay-active');
        // .hide();

    jQuery('header')
        .removeClass('menu-main-active');

    jQuery('body')
        .removeClass('menu-overflow');

    jQuery('#language-overlay')
        .hide();

      menustatus = 0;
}



/* Outside click to close Menu */

jQuery('body').on('click', function(e) {

  if (!jQuery(e.target).closest('li.menu-dropdown').length) {
      /* Hide dropdowns */
      hidedropdowns();
  }


  if (jQuery(e.target).hasClass('overlay-active')) {

          if(menustatus > 1) {
                 //console.log('Menu-close');
                 hidemenu();
          }
      }
    menustatus = menustatus+1;
});



function showmainmenu() {


    if(!jQuery('header').hasClass('menu-main-active')) {
        window.setTimeout(function() {
            jQuery('header').addClass('menu-main-active');
        }, 400);
    }
    else {
      jQuery('header').removeClass('menu-main-active');
    }


    jQuery('.main-navigation')
        .toggleClass('mainmenu-active mobile-menu-active');
        // .show();

    jQuery('.nav-menu-toggle')
        .toggleClass('mainmenu-active');
        // .show();

    jQuery('body')
        .toggleClass('menu-overflow');

    menustatus = 1;
}



function hidemainmenu() {

    jQuery('.main-navigation')
        .removeClass('overlay-active');
        // .show();

    jQuery('header')
        .removeClass('menu-main-active');

    jQuery('body')
        .removeClass('menu-overflow');

    menustatus = 1;
}



/*----------------------------------------------------------------------
solutions menu show / hide
----------------------------------------------------------------------*/

var solutionsstatus;

function showsolutions() {
    jQuery('#solutions-overlay')
        .toggleClass('solution-active');
        // .show();

    jQuery('header')
        .toggleClass('menu-solutions-active');

    jQuery('body')
        .toggleClass('menu-overflow');

    solutionsstatus = 1;
}





function hidesolutions() {

    jQuery('.main-navigation li > a')
        .removeClass('active');

    jQuery('#solutions-overlay.solution-active')
        .removeClass('solution-active');
        // .hide();

    jQuery('header')
        .removeClass('menu-solutions-active');

    jQuery('body')
        .removeClass('menu-overflow');

    solutionsstatus = 0;
}



function hidedropdowns() {

  var dropdown_menu_exists = document.getElementsByClassName('menu-dropdown');
  if (dropdown_menu_exists.length > 0) {

    //console.log('dropdown exists');
    // Close any open submenus
    jQuery('ul.main-navigation .sub-menu').removeClass('visible');
    jQuery('ul.main-navigation li').removeClass('visible');

    // Close any submenus > submenus
    jQuery('ul.main-navigation .sub-menu li .sub-menu').removeClass('visible');

  }

}


/* Outside click to close Menu */

jQuery('body').on('click', function(e) {
  if (jQuery(e.target).hasClass('solution-active')) {

          if(solutionsstatus > 1) {
                 //console.log('Menu-close');
                 hidesolutions();
          }
      }
    solutionsstatus = solutionsstatus+1;
});








/* All in one Menu */

/* Side */
jQuery('.main-navigation li.menu-side > a').on('click', function (evt) {
    evt.preventDefault();


    hidedropdowns();
    hidemenu();

    var menu_item_id = jQuery(this).parent().attr('id').match(/\d+/);

    jQuery(this).parent().find('.menu-side-overlay-'+menu_item_id)
        .toggleClass('overlay-active');

    jQuery('header')
        .addClass('menu-main-active');

    jQuery('body')
        .addClass('menu-overflow');

    menustatus = 1;

  });



/* Products */
jQuery('.main-navigation li.menu-products > a').on('click', function (evt) {
    evt.preventDefault();

    if(jQuery(this).hasClass('active')) {
      jQuery(this)
          .toggleClass('active');
      hidesolutions();

    }
    else {

    hidedropdowns();
    hidesolutions();

    var menu_item_id = jQuery(this).parent().attr('id').match(/\d+/);

    jQuery(this)
        .toggleClass('active');

    jQuery(this).parent().find('.menu-product-overlay-'+menu_item_id)
        .toggleClass('solution-active');

    jQuery('header')
        .toggleClass('menu-solutions-active');

    jQuery('body')
        .toggleClass('menu-overflow');


    solutionsstatus = 1;
    }
  });




/*----------------------------------------------------------------------
solutions productfamily span to link element
----------------------------------------------------------------------*/

jQuery(document).ready(function () {

    jQuery('.sub-menu .menu-item-is-productfamily').each(function(evt){
      //jQuery(evt).preventDefault();
        var productfamilylink = jQuery(this).find('a').attr('href');

        if (jQuery(this).hasClass('ext-link'))
        {
          //jQuery(evt).preventDefault();
        }
        else
        {
          jQuery(this).find('span').on('click', function (evt) {
            window.location = productfamilylink;
          });
        }
    });
});


/*----------------------------------------------------------------------
Download Button clicked
----------------------------------------------------------------------*/

jQuery(document).ready(function () {
    jQuery('.is-download-item a').on('click', function (evt) {
    evt.preventDefault();

    /*--------- Get Download Title and URL -------*/
    var file = jQuery(this).closest('.textwidget').find("h4").first().html().replace(/\s|&nbsp;|<br>/g, ' ');
    var fileurl = jQuery(this).attr('href');


    /*--------- Create Chat Message Time -------*/
    function addZero(i) {
      if (i < 10) {i = "0" + i}
      return i;
    }

    var now = new Date();
    var time = addZero(now.getHours()) + ":" + addZero(now.getMinutes()) + ":" + addZero(now.getSeconds());


    /*--------- Create Message for language -------*/

    if (wpml_current_language  == "de") {
        var messagetitle = "Download gestartet";
        var messagedownload = "Danke, dass Sie <a href='"+fileurl+"'>"+file+"</a> heruntergeladen haben. Wenn Sie weitere Hilfe ben&ouml;tigen, kontaktieren Sie mich gerne direkt!";
    }
    else if (wpml_current_language  == "es") {
        var messagetitle = "Descarga iniciada";
        var messagedownload = "Gracias por descargar <a href='"+fileurl+"'>"+file+"</a>. Si necesita más ayuda, no dude en ponerse en contacto conmigo directamente.";
    }
    else if (wpml_current_language  == "fr") {
        var messagetitle = "Téléchargement commencé";
        var messagedownload = "Merci d'avoir téléchargé <a href='"+fileurl+"'>"+file+"</a>. Si vous avez besoin d'aide supplémentaire, n'hésitez pas à me contacter directement !";
    }
    else if (wpml_current_language  == "nl") {
        var messagetitle = "Download gestart";
        var messagedownload = "Dank u voor het downloaden <a href='"+fileurl+"'>"+file+"</a>. Als u nog meer hulp nodig heeft, neem dan gerust direct contact met me op!";
    }
    else
    {
        var messagetitle = "Download started";
        var messagedownload = "Thank you for downloading <a href='"+fileurl+"'>"+file+"</a>. If you need further help, feel free to contact me directly!";
    }


    /*---------------------------------------*/


    var numMessages = jQuery('.download-message').length;

    if (numMessages < 1) {
        var message = messagedownload;
    }
    else
    {
        var message = "<a href='"+fileurl+"'>"+file+"</a>";
    }

    /*--------- write Message to Contact Widget -------*/
    jQuery('.is-contact-widget .widget_custom_html .textwidget').before("<div class='download-message'><small>"+time+" <strong>"+messagetitle+"</strong></small><p>"+message+"</p></div>");
    //jQuery('.download-message').last().delay(16000).fadeOut();

    /*--------- auto show Contact Widget -------*/
    jQuery('.is-contact-widget .widget_custom_html').addClass('active');

    /*--------- set normal Behaviour for Contact Widget when Mouse in - out -------*/
    jQuery('.is-contact-widget').mouseleave(function(){
      jQuery('.is-contact-widget .widget_custom_html').removeClass('active');
    });

    /*--------- auto hide Contact Widget -------*/
    setTimeout(function(){
      jQuery('.is-contact-widget .widget_custom_html').removeClass('active');
    },15000);

     setTimeout(function(){
      window.open(fileurl, '_blank');
    },1500);




    });

    /// Vielleicht auch was f�r Videoclicks usw. einbauen....

    /*
    jQuery('#player').on('click', function (evt) {
    evt.preventDefault();
    console.log('video played');
  });*/

});



/*----------------------------------------------------------------------
Add special Message to NL Langueage Download Section
until Downloads in NL are available
----------------------------------------------------------------------*/

//De datasheets / catalogi zullen zeer binnenkort beschikbaar zijn in het Nederlands! Neem contact met ons op voor meer informatie.

if (wpml_current_language  == "nl") {

    var download_nl_msg = '<div id="pg-w62a834676b899-1" class="panel-grid panel-no-style"><div id="pgc-w62a834676b899-1-0" class="panel-grid-cell"><div id="panel-w62a834676b899-1-0-0" class="so-panel widget widget_sow-editor panel-first-child panel-last-child" data-index="5"><div class="so-widget-sow-editor so-widget-sow-editor-base"><div class="siteorigin-widget-tinymce textwidget"><p><br/>* De datasheets / catalogi zullen zeer binnenkort beschikbaar zijn in het Nederlands! Neem contact met ons op voor meer informatie.<br/></p></div></div></div></div></div>';

    jQuery(download_nl_msg).insertAfter(jQuery('.is-download-item').last().parent().parent().parent());

}



/* Remove loading lazy for product picture */
jQuery('.is-product-title').find('.widget_media_image').find('img').removeAttr( "loading" );



/* check if element is visble in viewport */

function isOnScreen(elem) {
	// if the element doesn't exist, abort
	if( elem.length == 0 ) {
		return;
	}


	var $window = jQuery(window)
	var viewport_top = $window.scrollTop()
	var viewport_height = $window.height()
	var viewport_bottom = viewport_top + viewport_height
	var $elem = jQuery(elem)
	var top = ($elem.offset().top)-(0.5*viewport_height) // shorten to fire earlier
	var height = $elem.height()
	var bottom = top + height

	return (top >= viewport_top && top < viewport_bottom) ||
	(bottom > viewport_top && bottom <= viewport_bottom) ||
	(height > viewport_height && top <= viewport_top && bottom >= viewport_bottom)
}





/* Filter Product Configurator to lazy load */

jQuery(document).ready(function () {

//if(jQuery('object').parent('.custom-html-widget').html(jQuery('object').parent('.custom-html-widget').html()).search( 'products.sulo.com' ))
//{

if (jQuery('object').parent('.custom-html-widget').length) // if object element is on page
{

    if(jQuery('object').parent('.custom-html-widget').html().includes('products.sulo.com'))  //if object embed target contains url products.sulo.com
    {

        console.log('Start...');


        if (jQuery('object').parent('.custom-html-widget').html().indexOf("products.sulo.com") >= 0)
        {

        //  jQuery('object').parent('.custom-html-widget').prepend('<div class="loadcircle"><div class="lds-ring"><div></div><div></div><div></div><div></div></div></div>');

          jQuery('object').parent('.custom-html-widget').html(jQuery('object').parent('.custom-html-widget').html().replace("data", "data-src"));
          console.log('Configurator found...');
        }


      var configurator_visible = false;


      /* Check on Configurator if not scrolled */
      if (!configurator_visible) {

            if( isOnScreen( jQuery( jQuery('object').parent('.custom-html-widget') ) ) ) { /* Pass element id/class you want to check */

              jQuery('object').parent('.custom-html-widget').html(jQuery('object').parent('.custom-html-widget').html().replace("data-src", "data"));
              console.log( 'Configurator loading ...' );

            configurator_visible = true;
            }
      }

      /* Check on Configurator during scroll */
      window.addEventListener('scroll', function(e) {

        if (!configurator_visible) {

          		if( isOnScreen( jQuery( jQuery('object').parent('.custom-html-widget') ) ) ) { /* Pass element id/class you want to check */

                jQuery('object').parent('.custom-html-widget').html(jQuery('object').parent('.custom-html-widget').html().replace("data-src", "data"));
          			console.log( 'Configurator loading ...' );

              configurator_visible = true;
           		}
        }

    	});

    }

  }

});






/* Check if E-Mails clicked */


function track_contact_lead(media)
{
  if(media == 'mail')
  {
    _paq.push(['trackGoal', 2]);
  //  console.log('email clicked');
  }
  else if(media == 'phone')
  {
    _paq.push(['trackGoal', 3]);
  //  console.log('telefon clicked');
  }
}



  jQuery('.mail-link').on('click', function (evt) {
    track_contact_lead('mail');
  });


  jQuery("[href*='mailto:']").on('click', function (evt) {
    track_contact_lead('mail');
  });


  jQuery("[href*='tel:']").on('click', function (evt) {
    track_contact_lead('phone');
  });



/* COPY function */
  function copylink(url) {
     /* Copy the text inside the text field */
    navigator.clipboard.writeText(url);
alert(url);
  }









  /*----------------------------------------------------------------------
  GET position for Sales Area Germany Selection
  ----------------------------------------------------------------------*/



  function getLocation() {

    if (navigator.geolocation) {
      navigator.geolocation.getCurrentPosition(showPosition);
      jQuery('.is-contact-widget .widget_custom_html').addClass('active-search');
        //jQuery('#select2-mySelect2-results').trigger('click');
    }
  }



  function showPosition(position) {
      jQuery.ajax({
        url: "https://nominatim.openstreetmap.org/reverse",
        data: {
          lat: position.coords.latitude,
          lon: position.coords.longitude,
          format: "json"
        },
        beforeSend: function (xhr) {
          xhr.setRequestHeader(
            'User-Agent',
            'ID of your APP/service/website/etc. v0.1'
          )
        },
        dataType: "json",
        type: "GET",
        async: true,
        crossDomain: true
      }).done(function (res) {
        //console.log(res.address.postcode);
        //jQuery('.select2-search__field').val(res.address.postcode).trigger("change");
        jQuery('.postcodecitysalesarea').select2('open');
        jQuery('.select2-search__field').val(res.address.postcode).trigger('keyup');
        jQuery(document).on('select2:open', () => {
        document.querySelector('.select2-search__field').focus();
        });

      }).fail(function (error) {
        //console.error(error)
      })
  }


  /*----------------------------------------------------------------------
  Cookie Handling
  ----------------------------------------------------------------------*/

  function getCookie(cookieName) {
    let cookie = {};
    document.cookie.split(';').forEach(function(el) {
      let [key,value] = el.split('=');
      cookie[key.trim()] = value;
    })
    return cookie[cookieName];
  };