(()=>{"use strict";var t={857:t=>{var e=function(t){var e;return!!t&&"object"==typeof t&&"[object RegExp]"!==(e=Object.prototype.toString.call(t))&&"[object Date]"!==e&&t.$$typeof!==r},r="function"==typeof Symbol&&Symbol.for?Symbol.for("react.element"):60103;function s(t,e){return!1!==e.clone&&e.isMergeableObject(t)?o(Array.isArray(t)?[]:{},t,e):t}function i(t,e,r){return t.concat(e).map(function(t){return s(t,r)})}function n(t){return Object.keys(t).concat(Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(t).filter(function(e){return Object.propertyIsEnumerable.call(t,e)}):[])}function a(t,e){try{return e in t}catch(t){return!1}}function o(t,r,c){(c=c||{}).arrayMerge=c.arrayMerge||i,c.isMergeableObject=c.isMergeableObject||e,c.cloneUnlessOtherwiseSpecified=s;var l,d,u=Array.isArray(r);return u!==Array.isArray(t)?s(r,c):u?c.arrayMerge(t,r,c):(d={},(l=c).isMergeableObject(t)&&n(t).forEach(function(e){d[e]=s(t[e],l)}),n(r).forEach(function(e){(!a(t,e)||Object.hasOwnProperty.call(t,e)&&Object.propertyIsEnumerable.call(t,e))&&(a(t,e)&&l.isMergeableObject(r[e])?d[e]=(function(t,e){if(!e.customMerge)return o;var r=e.customMerge(t);return"function"==typeof r?r:o})(e,l)(t[e],r[e],l):d[e]=s(r[e],l))}),d)}o.all=function(t,e){if(!Array.isArray(t))throw Error("first argument should be an array");return t.reduce(function(t,r){return o(t,r,e)},{})},t.exports=o}},e={};function r(s){var i=e[s];if(void 0!==i)return i.exports;var n=e[s]={exports:{}};return t[s](n,n.exports,r),n.exports}(()=>{r.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return r.d(e,{a:e}),e}})(),(()=>{r.d=(t,e)=>{for(var s in e)r.o(e,s)&&!r.o(t,s)&&Object.defineProperty(t,s,{enumerable:!0,get:e[s]})}})(),(()=>{r.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e)})(),(()=>{var t=r(857),e=r.n(t);class s{static ucFirst(t){return t.charAt(0).toUpperCase()+t.slice(1)}static lcFirst(t){return t.charAt(0).toLowerCase()+t.slice(1)}static toDashCase(t){return t.replace(/([A-Z])/g,"-$1").replace(/^-/,"").toLowerCase()}static toLowerCamelCase(t,e){let r=s.toUpperCamelCase(t,e);return s.lcFirst(r)}static toUpperCamelCase(t,e){return e?t.split(e).map(t=>s.ucFirst(t.toLowerCase())).join(""):s.ucFirst(t.toLowerCase())}static parsePrimitive(t){try{return/^\d+(.|,)\d+$/.test(t)&&(t=t.replace(",",".")),JSON.parse(t)}catch(e){return t.toString()}}}class i{static isNode(t){return"object"==typeof t&&null!==t&&(t===document||t===window||t instanceof Node)}static hasAttribute(t,e){if(!i.isNode(t))throw Error("The element must be a valid HTML Node!");return"function"==typeof t.hasAttribute&&t.hasAttribute(e)}static getAttribute(t,e){let r=!(arguments.length>2)||void 0===arguments[2]||arguments[2];if(r&&!1===i.hasAttribute(t,e))throw Error('The required property "'.concat(e,'" does not exist!'));if("function"!=typeof t.getAttribute){if(r)throw Error("This node doesn't support the getAttribute function!");return}return t.getAttribute(e)}static getDataAttribute(t,e){let r=!(arguments.length>2)||void 0===arguments[2]||arguments[2],n=e.replace(/^data(|-)/,""),a=s.toLowerCamelCase(n,"-");if(!i.isNode(t)){if(r)throw Error("The passed node is not a valid HTML Node!");return}if(void 0===t.dataset){if(r)throw Error("This node doesn't support the dataset attribute!");return}let o=t.dataset[a];if(void 0===o){if(r)throw Error('The required data attribute "'.concat(e,'" does not exist on ').concat(t,"!"));return o}return s.parsePrimitive(o)}static querySelector(t,e){let r=!(arguments.length>2)||void 0===arguments[2]||arguments[2];if(r&&!i.isNode(t))throw Error("The parent node is not a valid HTML Node!");let s=t.querySelector(e)||!1;if(r&&!1===s)throw Error('The required element "'.concat(e,'" does not exist in parent node!'));return s}static querySelectorAll(t,e){let r=!(arguments.length>2)||void 0===arguments[2]||arguments[2];if(r&&!i.isNode(t))throw Error("The parent node is not a valid HTML Node!");let s=t.querySelectorAll(e);if(0===s.length&&(s=!1),r&&!1===s)throw Error('At least one item of "'.concat(e,'" must exist in parent node!'));return s}}class n{publish(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],s=new CustomEvent(t,{detail:e,cancelable:r});return this.el.dispatchEvent(s),s}subscribe(t,e){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},s=this,i=t.split("."),n=r.scope?e.bind(r.scope):e;if(r.once&&!0===r.once){let e=n;n=function(r){s.unsubscribe(t),e(r)}}return this.el.addEventListener(i[0],n),this.listeners.push({splitEventName:i,opts:r,cb:n}),!0}unsubscribe(t){let e=t.split(".");return this.listeners=this.listeners.reduce((t,r)=>([...r.splitEventName].sort().toString()===e.sort().toString()?this.el.removeEventListener(r.splitEventName[0],r.cb):t.push(r),t),[]),!0}reset(){return this.listeners.forEach(t=>{this.el.removeEventListener(t.splitEventName[0],t.cb)}),this.listeners=[],!0}get el(){return this._el}set el(t){this._el=t}get listeners(){return this._listeners}set listeners(t){this._listeners=t}constructor(t=document){this._el=t,t.$emitter=this,this._listeners=[]}}class a{init(){throw Error('The "init" method for the plugin "'.concat(this._pluginName,'" is not defined.'))}update(){}_init(){this._initialized||(this.init(),this._initialized=!0)}_update(){this._initialized&&this.update()}_mergeOptions(t){let r=s.toDashCase(this._pluginName),n=i.getDataAttribute(this.el,"data-".concat(r,"-config"),!1),a=i.getAttribute(this.el,"data-".concat(r,"-options"),!1),o=[this.constructor.options,this.options,t];n&&o.push(window.PluginConfigManager.get(this._pluginName,n));try{a&&o.push(JSON.parse(a))}catch(t){throw console.error(this.el),Error('The data attribute "data-'.concat(r,'-options" could not be parsed to json: ').concat(t.message))}return e().all(o.filter(t=>t instanceof Object&&!(t instanceof Array)).map(t=>t||{}))}_registerInstance(){window.PluginManager.getPluginInstancesFromElement(this.el).set(this._pluginName,this),window.PluginManager.getPlugin(this._pluginName,!1).get("instances").push(this)}_getPluginName(t){return t||(t=this.constructor.name),t}constructor(t,e={},r=!1){if(!i.isNode(t))throw Error("There is no valid element given.");this.el=t,this.$emitter=new n(this.el),this._pluginName=this._getPluginName(r),this.options=this._mergeOptions(e),this._initialized=!1,this._registerInstance(),this._init()}}class o{static isSupported(){return"undefined"!==document.cookie}static setItem(t,e,r){if(null==t)throw Error("You must specify a key to set a cookie");let s=new Date;s.setTime(s.getTime()+864e5*r);let i="";"https:"===location.protocol&&(i="secure"),document.cookie="".concat(t,"=").concat(e,";expires=").concat(s.toUTCString(),";path=/;sameSite=lax;").concat(i)}static getItem(t){if(!t)return!1;let e=t+"=",r=document.cookie.split(";");for(let t=0;t<r.length;t++){let s=r[t];for(;" "===s.charAt(0);)s=s.substring(1);if(0===s.indexOf(e))return s.substring(e.length,s.length)}return!1}static removeItem(t){document.cookie="".concat(t,"= ; expires = Thu, 01 Jan 1970 00:00:00 GMT;path=/")}static key(){return""}static clear(){}}class c{static isTouchDevice(){return"ontouchstart"in document.documentElement}static isIOSDevice(){return c.isIPhoneDevice()||c.isIPadDevice()}static isNativeWindowsBrowser(){return c.isIEBrowser()||c.isEdgeBrowser()}static isIPhoneDevice(){return!!navigator.userAgent.match(/iPhone/i)}static isIPadDevice(){return!!navigator.userAgent.match(/iPad/i)}static isIEBrowser(){return -1!==navigator.userAgent.toLowerCase().indexOf("msie")||!!navigator.userAgent.match(/Trident.*rv:\d+\./)}static isEdgeBrowser(){return!!navigator.userAgent.match(/Edge\/\d+/i)}static getList(){return{"is-touch":c.isTouchDevice(),"is-ios":c.isIOSDevice(),"is-native-windows":c.isNativeWindowsBrowser(),"is-iphone":c.isIPhoneDevice(),"is-ipad":c.isIPadDevice(),"is-ie":c.isIEBrowser(),"is-edge":c.isEdgeBrowser()}}}class l{static iterate(t,e){if(t instanceof Map||Array.isArray(t))return t.forEach(e);if(t instanceof FormData){for(var r of t.entries())e(r[1],r[0]);return}if(t instanceof NodeList)return t.forEach(e);if(t instanceof HTMLCollection)return Array.from(t).forEach(e);if(t instanceof Object)return Object.keys(t).forEach(r=>{e(t[r],r)});throw Error("The element type ".concat(typeof t," is not iterable!"))}}let d="offcanvas";class u{open(t,e,r,s,i,n,a){this._removeExistingOffCanvas();let o=this._createOffCanvas(r,n,a,s);this.setContent(t,s,i),this._openOffcanvas(o,e)}setContent(t,e){let r=this.getOffCanvas();r[0]&&(r[0].innerHTML=t,this._registerEvents(e))}setAdditionalClassName(t){this.getOffCanvas()[0].classList.add(t)}getOffCanvas(){return document.querySelectorAll(".".concat(d))}close(t){let e=this.getOffCanvas();l.iterate(e,t=>{bootstrap.Offcanvas.getInstance(t).hide()}),setTimeout(()=>{this.$emitter.publish("onCloseOffcanvas",{offCanvasContent:e})},t)}goBackInHistory(){window.history.back()}exists(){return this.getOffCanvas().length>0}_openOffcanvas(t,e){u.bsOffcanvas.show(),window.history.pushState("offcanvas-open",""),"function"==typeof e&&e()}_registerEvents(t){let e=c.isTouchDevice()?"touchend":"click",r=this.getOffCanvas();l.iterate(r,e=>{let s=()=>{setTimeout(()=>{e.remove(),this.$emitter.publish("onCloseOffcanvas",{offCanvasContent:r})},t),e.removeEventListener("hide.bs.offcanvas",s)};e.addEventListener("hide.bs.offcanvas",s)}),window.addEventListener("popstate",this.close.bind(this,t),{once:!0});let s=document.querySelectorAll(".".concat("js-offcanvas-close"));l.iterate(s,r=>r.addEventListener(e,this.close.bind(this,t)))}_removeExistingOffCanvas(){u.bsOffcanvas=null;let t=this.getOffCanvas();return l.iterate(t,t=>t.remove())}_getPositionClass(t){return"left"===t?"offcanvas-start":"right"===t?"offcanvas-end":"offcanvas-".concat(t)}_createOffCanvas(t,e,r,s){let i=document.createElement("div");if(i.classList.add(d),i.classList.add(this._getPositionClass(t)),!0===e&&i.classList.add("is-fullwidth"),r){let t=typeof r;if("string"===t)i.classList.add(r);else if(Array.isArray(r))r.forEach(t=>{i.classList.add(t)});else throw Error('The type "'.concat(t,'" is not supported. Please pass an array or a string.'))}return document.body.appendChild(i),u.bsOffcanvas=new bootstrap.Offcanvas(i,{backdrop:!1!==s||"static"}),i}constructor(){this.$emitter=new n}}let h=Object.freeze(new u);class f{static open(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"left",s=!(arguments.length>3)||void 0===arguments[3]||arguments[3],i=arguments.length>4&&void 0!==arguments[4]?arguments[4]:350,n=arguments.length>5&&void 0!==arguments[5]&&arguments[5],a=arguments.length>6&&void 0!==arguments[6]?arguments[6]:"";h.open(t,e,r,s,i,n,a)}static setContent(t){let e=!(arguments.length>1)||void 0===arguments[1]||arguments[1],r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:350;h.setContent(t,e,r)}static setAdditionalClassName(t){h.setAdditionalClassName(t)}static close(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:350;h.close(t)}static exists(){return h.exists()}static getOffCanvas(){return h.getOffCanvas()}static REMOVE_OFF_CANVAS_DELAY(){return 350}}class p{get(t,e){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"application/json",s=this._createPreparedRequest("GET",t,r);return this._sendRequest(s,null,e)}post(t,e,r){let s=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"application/json";s=this._getContentType(e,s);let i=this._createPreparedRequest("POST",t,s);return this._sendRequest(i,e,r)}delete(t,e,r){let s=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"application/json";s=this._getContentType(e,s);let i=this._createPreparedRequest("DELETE",t,s);return this._sendRequest(i,e,r)}patch(t,e,r){let s=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"application/json";s=this._getContentType(e,s);let i=this._createPreparedRequest("PATCH",t,s);return this._sendRequest(i,e,r)}abort(){if(this._request)return this._request.abort()}_registerOnLoaded(t,e){e&&t.addEventListener("loadend",()=>{e(t.responseText,t)})}_sendRequest(t,e,r){return this._registerOnLoaded(t,r),t.send(e),t}_getContentType(t,e){return t instanceof FormData&&(e=!1),e}_createPreparedRequest(t,e,r){return this._request=new XMLHttpRequest,this._request.open(t,e),this._request.setRequestHeader("X-Requested-With","XMLHttpRequest"),r&&this._request.setRequestHeader("Content-type",r),this._request}constructor(){this._request=null}}let g="loader",v={BEFORE:"before",INNER:"inner"};class m{create(){if(!this.exists()){if(this.position===v.INNER){this.parent.innerHTML=m.getTemplate();return}this.parent.insertAdjacentHTML(this._getPosition(),m.getTemplate())}}remove(){let t=this.parent.querySelectorAll(".".concat(g));l.iterate(t,t=>t.remove())}exists(){return this.parent.querySelectorAll(".".concat(g)).length>0}_getPosition(){return this.position===v.BEFORE?"afterbegin":"beforeend"}static getTemplate(){return'<div class="'.concat(g,'" role="status">\n                    <span class="').concat("visually-hidden",'">Loading...</span>\n                </div>')}static SELECTOR_CLASS(){return g}constructor(t,e=v.BEFORE){this.parent=t instanceof Element?t:document.body.querySelector(t),this.position=e}}let _=null;class y extends f{static open(){let t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,s=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"left",i=!(arguments.length>4)||void 0===arguments[4]||arguments[4],n=arguments.length>5&&void 0!==arguments[5]?arguments[5]:f.REMOVE_OFF_CANVAS_DELAY(),a=arguments.length>6&&void 0!==arguments[6]&&arguments[6],o=arguments.length>7&&void 0!==arguments[7]?arguments[7]:"";if(!t)throw Error("A url must be given!");h._removeExistingOffCanvas();let c=h._createOffCanvas(s,a,o,i);this.setContent(t,e,r,i,n),h._openOffcanvas(c)}static setContent(t,e,r,s,i){let n=new p;super.setContent('<div class="offcanvas-body">'.concat(m.getTemplate(),"</div>"),s,i),_&&_.abort();let a=t=>{super.setContent(t,s,i),"function"==typeof r&&r(t)};_=e?n.post(t,e,y.executeCallback.bind(this,a)):n.get(t,y.executeCallback.bind(this,a))}static executeCallback(t,e){"function"==typeof t&&t(e),window.PluginManager.initializePlugins()}}let b="element-loader-backdrop";class E extends m{static create(t){t.classList.add("has-element-loader"),E.exists(t)||(E.appendLoader(t),setTimeout(()=>{let e=t.querySelector(".".concat(b));e&&e.classList.add("element-loader-backdrop-open")},1))}static remove(t){t.classList.remove("has-element-loader");let e=t.querySelector(".".concat(b));e&&e.remove()}static exists(t){return t.querySelectorAll(".".concat(b)).length>0}static getTemplate(){return'\n        <div class="'.concat(b,'">\n            <div class="loader" role="status">\n                <span class="').concat("visually-hidden",'">Loading...</span>\n            </div>\n        </div>\n        ')}static appendLoader(t){t.insertAdjacentHTML("beforeend",E.getTemplate())}}window.router["frontend.cookie.offcanvas"],window.PluginManager.register("IronMatomo",class extends a{init(){window.ironMatomoDataLayer&&(this.isInitAndTracked=!1,this._dataLayer=window.ironMatomoDataLayer||{},this.startMatomo(),this._registerEvents())}_registerEvents(){document.$emitter.subscribe("CookieConfiguration_Update",t=>{void 0!==t.detail.ironMatomo&&t.detail.ironMatomo&&this.startMatomo()})}startMatomo(){this.ready()&&this._initAndTrack()}ready(){return this._dataLayer&&window._paq&&this._isTrackAllowed()}_isTrackAllowed(){let t=!1;return"0"==this._dataLayer.startTracking&&(t="active"===o.getItem("ironMatomo")),"1"==this._dataLayer.startTracking&&(t=this._isEnabled()),t&&"1"==this._dataLayer.requireCookieConsent&&this._dataLayer.track.push(["setCookieConsentGiven"]),"3"==this._dataLayer.startTracking&&(t=!0),"1"==this._dataLayer.requireCookieConsent||t}_isEnabled(){if(""===this._dataLayer.cookieName.trim())return!1;let t=o.getItem(this._dataLayer.cookieName);if("1"==this._dataLayer.cookieValueAsRegex){let e=this._dataLayer.cookieValue.replace(/&quot;/gi,'"');if(t.match(e))return!0}return t===this._dataLayer.cookieValue}_initAndTrack(){this.isInitAndTracked||(this._collectStandardEvents(),this._loadMatomoScript(),this.isInitAndTracked=!0)}_collectStandardEvents(){this._dataLayer.track.forEach(function(t){window._paq.push(t)}),this._dataLayer.trackLast.forEach(function(t){window._paq.push(t)})}_loadMatomoScript(){var t=this;(function(){var e=t._dataLayer.matomoUrl,r=document,s=r.createElement("script"),i=r.getElementsByTagName("script")[0];s.type="text/javascript",s.async=!0,s.defer=!0,s.src=e+t._dataLayer.matomoScript,i.parentNode.insertBefore(s,i)})()}})})()})();