var blossomspa=blossomspa||{};function blossomspaDomReady(e){if("function"==typeof e)return"interactive"===document.readyState||"complete"===document.readyState?e():void document.addEventListener("DOMContentLoaded",e,!1)}function blossomspaToggleAttribute(e,t,o,s){void 0===o&&(o=!0),void 0===s&&(s=!1),e.getAttribute(t)!==o?e.setAttribute(t,o):e.setAttribute(t,s)}function blossomspaFindParents(e,t){var o=[];return function e(s){var n=s.parentNode;n instanceof HTMLElement&&(n.matches(t)&&o.push(n),e(n))}(e),o}blossomspa.createEvent=function(e){var t;return"function"==typeof window.Event?t=new Event(e):(t=document.createEvent("Event")).initEvent(e,!0,!1),t},blossomspa.coverModals={init:function(){document.querySelector(".cover-modal")&&(this.onToggle(),this.closeOnEscape(),this.hideAndShowModals(),this.keepFocusInModal())},onToggle:function(){document.querySelectorAll(".cover-modal").forEach(function(e){e.addEventListener("toggled",function(e){var t=e.target,o=document.body;t.classList.contains("active")?o.classList.add("showing-modal"):(o.classList.remove("showing-modal"),o.classList.add("hiding-modal"),setTimeout(function(){o.classList.remove("hiding-modal")},500))})})},closeOnEscape:function(){document.addEventListener("keydown",function(e){27===e.keyCode&&(e.preventDefault(),document.querySelectorAll(".cover-modal.active").forEach(function(e){this.untoggleModal(e)}.bind(this)))}.bind(this))},hideAndShowModals:function(){var e=document,t=window,o=e.querySelectorAll(".cover-modal"),s=e.documentElement.style,n=e.querySelector("#wpadminbar");function a(e){var o,s=t.pageYOffset;return n?(o=s+n.getBoundingClientRect().height,e?-o:o):0===s?0:-s}function l(){return{"overflow-y":t.innerHeight>e.documentElement.getBoundingClientRect().height?"hidden":"scroll",position:"fixed",width:"100%",top:a(!0)+"px",left:0}}o.forEach(function(o){o.addEventListener("toggle-target-before-inactive",function(i){var c=l(),r=t.pageYOffset,d=Math.abs(a())-r+"px",u=t.matchMedia("(max-width: 600px)");i.target===o&&(Object.keys(c).forEach(function(e){s.setProperty(e,c[e])}),t.blossomspa.scrolled=parseInt(c.top,10),n&&(e.body.style.setProperty("padding-top",d),u.matches&&(r>=a()?o.style.setProperty("top",0):o.style.setProperty("top",a()-r+"px"))),o.classList.add("show-modal"))}),o.addEventListener("toggle-target-after-inactive",function(i){i.target===o&&setTimeout(function(){var i=blossomspa.toggles.clickedEl;o.classList.remove("show-modal"),Object.keys(l()).forEach(function(e){s.removeProperty(e)}),n&&(e.body.style.removeProperty("padding-top"),o.style.removeProperty("top")),!1!==i&&(i.focus(),i=!1),t.scrollTo(0,Math.abs(t.blossomspa.scrolled+a())),t.blossomspa.scrolled=0},500)})})},untoggleModal:function(e){var t,o=!1;e.dataset.modalTargetString&&(t=e.dataset.modalTargetString,o=document.querySelector('*[data-toggle-target="'+t+'"]')),o?o.click():e.classList.remove("active")},keepFocusInModal:function(){var e=document;e.addEventListener("keydown",function(t){var o,s,n,a,l,i,c,r,d,u,g=blossomspa.toggles.clickedEl;g&&e.body.classList.contains("showing-modal")&&(o=g.dataset.toggleTarget,"input, a, button",s=e.querySelector(o),n=s.querySelectorAll("input, a, button"),n=Array.prototype.slice.call(n),".menu-modal"===o&&(a=(a=window.matchMedia("(min-width: 768px)").matches)?".expanded-menu":".mobile-menu",(n=n.filter(function(e){return null!==e.closest(a)&&null!==e.offsetParent})).unshift(e.querySelector(".close-nav-toggle")),(l=e.querySelector(".menu-bottom > nav"))&&l.querySelectorAll("input, a, button").forEach(function(e){n.push(e)})),".main-menu-modal"===o&&(a=(a=window.matchMedia("(min-width: 1025px)").matches)?".expanded-menu":".mobile-menu",(n=n.filter(function(e){return null!==e.closest(a)&&null!==e.offsetParent})).unshift(e.querySelector(".close-main-nav-toggle")),(l=e.querySelector(".menu-bottom > nav"))&&l.querySelectorAll("input, a, button").forEach(function(e){n.push(e)})),c=n[n.length-1],r=n[0],i=e.activeElement,d=9===t.keyCode,!(u=t.shiftKey)&&d&&c===i&&(t.preventDefault(),r.focus()),u&&d&&r===i&&(t.preventDefault(),c.focus()))})}},blossomspa.modalMenu={init:function(){this.expandLevel()},expandLevel:function(){document.querySelectorAll(".modal-menu").forEach(function(e){var t=e.querySelector(".current-menu-item");t&&blossomspaFindParents(t,"li").forEach(function(e){var t=e.querySelector(".submenu-toggle");t&&blossomspa.toggles.performToggle(t,!0)})})}},blossomspa.toggles={clickedEl:!1,init:function(){this.toggle()},performToggle:function(e,t){var o,s,n,a=this,l=document,i=e,c=i.dataset.toggleTarget;l.querySelectorAll(".show-modal").length||(a.clickedEl=l.activeElement),(o="next"===c?i.nextSibling:l.querySelector(c)).classList.contains("active")?o.dispatchEvent(blossomspa.createEvent("toggle-target-before-active")):o.dispatchEvent(blossomspa.createEvent("toggle-target-before-inactive")),n=i.dataset.classToToggle?i.dataset.classToToggle:"active",s=0,o.classList.contains("cover-modal")&&(s=10),setTimeout(function(){var e,s=o.classList.contains("sub-menu")?i.closest(".menu-item").querySelector(".sub-menu"):o,r=i.dataset.toggleDuration;"slidetoggle"!==i.dataset.toggleType||t||"0"===r?s.classList.toggle(n):blossomspaMenuToggle(s,r),"next"===c?i.classList.toggle("active"):o.classList.contains("sub-menu")?i.classList.toggle("active"):l.querySelector('*[data-toggle-target="'+c+'"]').classList.toggle("active"),blossomspaToggleAttribute(i,"aria-expanded","true","false"),a.clickedEl&&-1!==i.getAttribute("class").indexOf("close-")&&blossomspaToggleAttribute(a.clickedEl,"aria-expanded","true","false"),i.dataset.toggleBodyClass&&l.body.classList.toggle(i.dataset.toggleBodyClass),i.dataset.setFocus&&(e=l.querySelector(i.dataset.setFocus))&&(o.classList.contains("active")?e.focus():e.blur()),o.dispatchEvent(blossomspa.createEvent("toggled")),o.classList.contains("active")?o.dispatchEvent(blossomspa.createEvent("toggle-target-after-active")):o.dispatchEvent(blossomspa.createEvent("toggle-target-after-inactive"))},s)},toggle:function(){var e=this;document.querySelectorAll("*[data-toggle-target]").forEach(function(t){t.addEventListener("click",function(o){o.preventDefault(),e.performToggle(t)})})}},blossomspaDomReady(function(){blossomspa.toggles.init(),blossomspa.coverModals.init()});