var screenSize={xs:480,sm:768,md:992,lg:1360};
function ImgSwapper(){"use strict";var r=this;if(void 0===jQuery)throw new Error("ImgSwapper requires jQuery");if(void 0===screenSize)throw new Error("ImgSwapper requires screenSize breakpoint object to be defined");this.Init=function(){var a=$("img[data-src-sm], img[data-src-md], img[data-src-lg]");$.each(a,function(r,a){$(a).attr("data-src-og",a.src)}),$(window).on("load resize orientationchange",function(){var e=$(window).width();$.each(a,function(a,t){e>=screenSize.lg?r.Swap(t,"lg"):e>=screenSize.md?r.Swap(t,"md"):e>=screenSize.sm?r.Swap(t,"sm"):r.Swap(t,"og")})})},this.Swap=function(r,a){var e=$(r),t={og:e.attr("data-src-og"),sm:e.attr("data-src-sm"),md:e.attr("data-src-md"),lg:e.attr("data-src-lg")},i=null;switch(a){case"lg":i="md";break;case"md":i="sm";break;case"sm":i="og"}void 0!==t[a]?e.attr("src",t[a]):null!==i&&this.Swap(r,i)},this.Init()}var Swapper=new ImgSwapper;
function Slider(e){"use strict";var i=this;if(void 0===jQuery)throw new Error("Slider requires jQuery");this.$element=$(e),this.$slides=this.$element.children(),this.currentIndex=0,this.goToEvent=null,this.players=[],this.opts={slideDelay:5e3,transitionDelay:600},this.Init=function(){window.onYouTubePlayerAPIReady=function(){var e=$("iframe.slide_video");$.each(e,function(e,t){var s=new YT.Player(t.id,{events:{onReady:function(){s.playVideo(),s.mute()}}});i.players[t.id]=s})},$.extend(this.opts,this.$element.data()),$(window).on("load resize orientationchange",function(){i.UpdateFullscreen()}),this.AddNavigation(),this.GoTo(this.currentIndex)},this.AddNavigation=function(){for(var e='<ul class="slider-nav">',t=1;t<=this.$slides.length;t+=1)e+="<li>"+t+"</li>";e+="</ul>",this.$element.append($(e)),this.$element.children(".slider-nav").children().click(function(){i.GoTo($(this).index())})},this.UpdateFullscreen=function(){var e=$("img",this.$slides.eq(this.currentIndex)),i=$(window);if(e.hasClass("slider-video-img")){var t=$("iframe",this.$slides.eq(this.currentIndex)),s=t.height()/t.width(),n=$(window).height()/$(window).width();if(t.removeAttr("height"),t.removeAttr("width"),n>s){var o=$(window).height();t.height(o),t.width(o/s)}else{var d=$(window).width();console.log(d),console.log(d*s),t.width(d),t.height(d*s)}}"fixed"===e.css("position")||"fixed"===e.parent().css("position")?(e.height()<i.height()?"auto"!==e.css("width")&&e.css({width:"auto",height:"100%"}):e.width()<i.width()&&"auto"!==e.css("height")&&e.css({width:"100%",height:"auto"}),e.height()<=i.height()?e.css("marginLeft","-"+(e.width()-i.width())+"px"):e.css("marginLeft","auto")):void 0!==e.attr("style")&&e.removeAttr("style")},this.GoTo=function(e){$("> .hiding",this.$element).length<1&&$("> .active",this.$element).index()!==e&&(null!==this.goToEvent&&window.clearTimeout(this.goToEvent),this.currentIndex=e,$(".slider-nav > li.active",this.$element).removeClass("active"),$(".slider-nav > li:eq("+e+")",this.$element).addClass("active"),this.$element.children(".active").removeClass("active").addClass("hiding"),this.$slides.eq(e).addClass("showing"),this.UpdateFullscreen(),setTimeout(function(){$("> .showing",i.$element).removeClass("showing").addClass("active"),i.$slides.removeClass("hiding");var t=i.opts.slideDelay,s=i.$slides.eq(e).data("slide-delay"),n=i.$slides.eq(e).data("video");""!==n&&i.players[n]&&(i.players[n].stopVideo(),i.players[n].seekTo(0,!1),i.players[n].playVideo()),""!=s&&0!=s&&(t=1e3*s),i.goToEvent=setTimeout(function(){i.Next()},t)},this.opts.transitionDelay))},this.Prev=function(){i.GoTo(i.currentIndex>0?i.currentIndex-1:i.$slides.length-1)},this.Next=function(){i.GoTo(i.currentIndex<i.$slides.length-1?this.currentIndex+1:0)},this.Init()}jQuery(function(e){"use strict";var i=e(".slider"),t=[];e.each(i,function(e,i){t[e]=new Slider(i)});var s=document.createElement("script");s.src="//www.youtube.com/player_api";var n=document.getElementsByTagName("script")[0];n.parentNode.insertBefore(s,n)});
function Swiper(e){"use strict";var t=this;if(void 0===jQuery)throw new Error("Swiper requires jQuery");if(void 0===Hammer)throw new Error("Swiper requires hammer.js");if(void 0===Modernizr)throw new Error("Swiper requires Modernizr");if(void 0===screenSize)throw new Error("Swiper requires screenSize breakpoint object to be defined");this.$element=$(e),this.$wrapper=$(".items",this.$element),this.$items=this.$wrapper.children(),this.initialised=!1,this.currentIndex=0,this.currentOffset=0,this.padding=0,this.opts={maxWidth:null},this.Init=function(){$.extend(this.opts,this.$element.data()),$(window).on("load resize orientationchange",this.Setup),this.Setup()},this.Setup=function(){var e=null===t.opts.maxWidth||$(window).width()<screenSize[t.opts.maxWidth];e===!0?(t.DefinePadding(),t.initialised===!1&&(t.$element.css("overflow","hidden"),t.$element.hammer({drag_lock_to_axis:!0}).on("release dragleft dragright swipeleft swiperight",t.Hammer),t.initialised=!0),t.GoTo(t.currentIndex)):t.initialised===!0&&(t.currentIndex=0,t.currentOffset=0,t.padding=0,t.$wrapper.removeAttr("style"),t.$element.removeAttr("style").hammer().off("release dragleft dragright swipeleft swiperight"),t.initialised=!1)},this.DefinePadding=function(){var e=t.$items.eq(t.currentIndex);t.padding=(t.$element.outerWidth()-e.outerWidth())/2},this.MoveWrapper=function(e,r){t.$element.removeClass("transition-on"),r===!1&&t.$element.addClass("transition-on"),Modernizr.csstransforms3d?t.$wrapper.css("transform","translate3d("+e+"px, 0, 0) scale3d(1, 1, 1)"):Modernizr.csstransforms?t.$wrapper.css("transform","translate("+e+"px, 0)"):t.$wrapper.css("left",e+"px")},this.Hammer=function(e){var r=t.$items.eq(t.currentIndex),i=0,n=Math.abs(e.gesture.deltaX);switch(e.type){case"dragright":case"dragleft":e.gesture.preventDefault(),t.$element.addClass("dragging"),"right"===e.gesture.direction?(i=t.currentOffset+n,0===t.currentIndex&&(i-=n/1.5)):(i=t.currentOffset-n,t.currentIndex===t.$items.length-1&&(i+=n/1.5)),t.MoveWrapper(i,!0);break;case"swipeleft":t.Next(),e.gesture.stopDetect();break;case"swiperight":t.Prev(),e.gesture.stopDetect();break;case"release":t.$element.removeClass("dragging"),n>r.outerWidth()/2?"right"===e.gesture.direction?t.Prev():t.Next():t.GoTo(t.currentIndex)}},this.GoTo=function(e){var r=t.$items.eq(e),i=r.position().left-t.padding;t.$items.removeClass("active"),t.currentIndex=e,e===t.$items.length-1?i-=t.padding:0===e&&(i=0),i=-Math.abs(i),t.MoveWrapper(i,!1),t.currentOffset=i,r.addClass("active")},this.Prev=function(){t.GoTo(t.currentIndex>0?t.currentIndex-1:t.currentIndex)},this.Next=function(){t.GoTo(t.currentIndex<t.$items.length-1?t.currentIndex+1:t.currentIndex)},this.Init()}jQuery(function(e){"use strict";var t=e(".swiper"),r=[];e.each(t,function(e,t){r[e]=new Swiper(t)})});
function Toggler(t){"use strict";var e=this;if(void 0===jQuery)throw new Error("Toggler requires jQuery");if(void 0===screenSize)throw new Error("Toggler requires screenSize breakpoint object to be defined");this.$element=$(t),this.$target=null,this.opts={"class":"active",minWidth:null,maxWidth:null,target:null,group:null},this.Init=function(){$.extend(this.opts,this.$element.data()),this.$target=null!==this.opts.target?"parent"===this.opts.target?this.$element.parent():$(this.opts.target):this.$element,$(window).on("load resize orientationchange",function(){var t=$(window).width();e.$element.off("click").on("click",function(i){(null===e.opts.minWidth&&null===e.opts.maxWidth||null!==e.opts.minWidth&&null!==e.opts.maxWidth&&t>screenSize[e.opts.minWidth]&&t<screenSize[e.opts.maxWidth]||null!==e.opts.minWidth&&t>screenSize[e.opts.minWidth]||null!==e.opts.maxWidth&&t<screenSize[e.opts.maxWidth])&&(i.preventDefault(),i.stopPropagation(),e.Toggle())})})},this.Toggle=function(){if(null!==e.opts.group){var t=e.$target.hasClass(e.opts.class);$('[data-group="'+e.opts.group+'"]').each(function(t,e){var i=$(e),s=null,n="active";void 0!==i.data().class&&(n=i.data().class),s=void 0!==i.data().target?"parent"===i.data().target?i.parent():$(i.data().target):i,s.removeClass(n),s.trigger("toggle")}),t===!1&&(e.$target.addClass(e.opts.class),e.$target.trigger("toggle"))}else e.$target.toggleClass(e.opts.class),e.$target.trigger("toggle")},this.Init()}jQuery(function(t){"use strict";var e=t(".toggle"),i=[];t.each(e,function(t,e){i[t]=new Toggler(e)})});
function Gallery(t){"use strict";var i=this;if(void 0===jQuery)throw new Error("Gallery requires jQuery");this.$items=$(t),this.currentIndex=0,this.$lightbox=null,this.$nav=null,this.hashPrefix="#gallery-item-",this.Init=function(){this.CreateLightbox(),this.UpdateNav(),$.each(this.$items,function(t){$(this).on("click",function(e){e.preventDefault(),location.hash=i.hashPrefix+t})}),$(window).on("hashchange",function(){var t;location.hash.indexOf(i.hashPrefix)>=0&&(t=parseInt(location.hash.replace(i.hashPrefix,"")),t>=0&&t<=i.$items.length-1&&i.GoTo(t))}),$(window).trigger("hashchange")},this.CreateLightbox=function(){this.$lightbox=$('<div class="gallery-lightbox"></div>'),this.$nav=$('<ul class="gallery-nav"></ul>'),this.$nav.append($('<li class="previous disabled"><span>Previous</span></li>')),this.$nav.append($('<li class="next disabled"><span>Next</span></li>')),this.$lightbox.append(this.$nav),this.$lightbox.append($('<button class="gallery-close" type="button"><span>Close</span></button>')),$("body").append(this.$lightbox),$("> li.previous",this.$nav).on("click",i.Prev),$("> li.next",this.$nav).on("click",i.Next),$("> button.gallery-close",this.$lightbox).on("click",i.Close)},this.UpdateNav=function(){i.$items.length>1?(i.$nav.removeClass("disabled"),i.currentIndex>0?$(".previous",i.$nav).removeClass("disabled"):$(".previous",i.$nav).addClass("disabled"),i.currentIndex<i.$items.length-1?$(".next",i.$nav).removeClass("disabled"):$(".next",i.$nav).addClass("disabled")):i.$nav.addClass("disabled")},this.GoTo=function(e){var a=i.$items.eq(e),s=a.clone().removeAttr("style");i.currentIndex=e,$(t,i.$lightbox).remove(),i.$lightbox.addClass("active loading"),i.UpdateNav(),s.children("a").each(function(){$(this).replaceWith(this.childNodes)}),i.$lightbox.prepend(s),$("img, iframe",i.$lightbox).on("load",function(){i.$lightbox.removeClass("loading")}),void 0!==$("img",a).data().srcFull&&$("img",i.$lightbox).attr("src",$("img",a).data().srcFull).removeAttr("data-src-xs data-src-sm data-src-md data-src-lg data-src-og data-src-full"),void 0!==window.addthis&&($(".addthis-gallery").attr("addthis:url",location.href),window.addthis.toolbox(".addthis-gallery"))},this.Prev=function(){i.currentIndex>0&&(location.hash=i.hashPrefix+(i.currentIndex-1))},this.Next=function(){i.currentIndex<i.$items.length-1&&(location.hash=i.hashPrefix+(i.currentIndex+1))},this.Close=function(){void 0!==history.pushState?history.pushState("",document.title,location.pathname+location.search):location.hash="",i.currentIndex=0,i.$lightbox.removeClass("active"),$(t,i.$lightbox).remove()},this.Init()}jQuery(function(){"use strict";new Gallery(".gallery-item")});
function FormSelect(e){"use strict";var t=this;if(void 0===jQuery)throw new Error("FormSelect requires jQuery");this.$element=$(e),this.$select=$("select",this.$element),this.$jsContainer=null,this.$jsValue=null,this.$jsSelect=null,this.$jsOptions=null,this.hasFocus=!1,this.currentIndex=0,this.keys={tab:9,enter:13,up:38,down:40},this.Init=function(){this.Build(),this.Bind(),this.currentIndex=$(".selected",this.$jsSelect).index()},this.Build=function(){this.$jsContainer=$('<div class="js-input"></div>'),this.$jsValue=$('<div class="js-value"></div>'),this.$jsSelect=$('<ul class="js-options"></ul>'),$("option",this.$select).each(function(){var e=$('<li data-value="'+this.value+'">'+this.innerHTML+"</li>");this.disabled===!0&&e.addClass("disabled"),this.selected===!0&&(e.addClass("selected"),t.$jsValue.html(this.innerHTML)),t.$jsSelect.append(e)}),this.$jsContainer.append(this.$select),this.$jsContainer.append(this.$jsValue),this.$jsContainer.append(this.$jsSelect),this.$element.append(this.$jsContainer),this.$jsOptions=this.$jsSelect.children()},this.Bind=function(){this.$jsValue.on("mousedown",function(e){t.hasFocus===!0?(t.Blur(e),t.$select.blur()):(t.Focus(e),t.$select.focus())}),$("li",this.$jsSelect).on("mousedown",function(e){var s=$(this);e.stopPropagation(),s.hasClass("disabled")||s.hasClass("selected")||t.Value(s.data("value"))}),this.$jsSelect.on("mousedown",function(e){e.stopPropagation()}),this.$select.on("change",function(){t.Value(this.value,!1)}).on("focus",t.Focus).on("keydown",t.KeyHandler),$(document).mousedown(t.Blur)},this.KeyHandler=function(e){switch(e.preventDefault(),e.keyCode){case t.keys.up:e.preventDefault(),t.Prev();break;case t.keys.down:e.preventDefault(),t.Next();break;case t.keys.enter:e.preventDefault(),t.Value(t.$jsOptions.eq(t.currentIndex).data("value")),t.$select.blur();break;case t.keys.tab:t.Value(t.$jsOptions.eq(t.currentIndex).data("value"))}},this.Focus=function(e){null!==e&&(e.preventDefault(),e.stopPropagation()),$(".js-input select").not(t.$select).trigger("blur"),t.$jsContainer.addClass("active"),t.hasFocus=!0},this.Blur=function(e){null!==e&&e.stopPropagation(),t.$jsContainer.removeClass("active"),t.hasFocus=!1},this.Value=function(e,s){var i=$('[data-value="'+e+'"]',t.$jsSelect);t.currentIndex=i.index(),t.GoTo(t.currentIndex),t.$jsValue.html(i.html()),t.$select.val(e),s!==!1&&t.$select.change(),t.Blur(null)},this.GoTo=function(e){var s=t.$jsOptions.eq(e);$(".selected",t.$jsSelect).removeClass("selected"),s.addClass("selected"),t.currentIndex=e},this.Prev=function(){if(t.currentIndex>0){t.GoTo(t.currentIndex-1);var e=Math.floor(t.$jsSelect.children(".selected").position().top),s=Math.floor(t.$jsSelect.children(".selected").outerHeight(!0)),i=t.$jsSelect.height(),a=t.$jsSelect.scrollTop();0>e&&t.$jsSelect.scrollTop(e+a),e+s>i&&t.$jsSelect.scrollTop(e+s-i+a),t.$jsOptions.eq(t.currentIndex).hasClass("disabled")&&(t.currentIndex>0?t.Prev():t.Next())}},this.Next=function(){if(t.currentIndex<t.$jsOptions.length-1){t.GoTo(t.currentIndex+1);var e=Math.floor(t.$jsSelect.children(".selected").position().top),s=Math.floor(t.$jsSelect.children(".selected").outerHeight(!0)),i=t.$jsSelect.height(),a=t.$jsSelect.scrollTop();0>e&&t.$jsSelect.scrollTop(e+a),e+s>i&&t.$jsSelect.scrollTop(e+s-i+a),t.$jsOptions.eq(t.currentIndex).hasClass("disabled")&&(t.currentIndex<t.$jsOptions.length-1?t.Next():t.Prev())}},this.Init()}function Filter(e){"use strict";var t=this;if(void 0===jQuery)throw new Error("Toggler requires jQuery");this.$element=$(e),this.$content=null,this.formData={},this.opts={disabledClass:"disabled",filterTarget:null},this.Init=function(){if($.extend(this.opts,this.$element.data()),null===this.opts.filterTarget)throw new Error("data-filter-target HTML attribute is missing.");this.$content=$(this.opts.filterTarget),$("input, select, textarea",this.$element).on("change",t.Update),this.Update()},this.Update=function(){t.UpdateFormData(),t.FilterContent()},this.UpdateFormData=function(){var e=t.$element.serializeArray();t.formData={},$.each(e,function(){void 0!==t.formData[this.name]||this.name.indexOf("[")>=0?(void 0===t.formData[this.name]&&(t.formData[this.name]=[]),t.formData[this.name].push||(t.formData[this.name]=[t.formData[this.name]]),this.value.length>0&&t.formData[this.name].push(this.value)):this.value.length>0&&(t.formData[this.name]=this.value)})},this.FilterContent=function(){t.$content.each(function(){var e=$(this),s=e.data("value")+"",i={},a=0,n=0,l=!0;void 0!==e.data("value")&&(s=s.indexOf(",")>=0?s.split(","):[s],$.each(s,function(e,t){var a;if(s[e]=t.trim(),!(s[e].indexOf(":")>=0))throw new Error('Field name was not specified on item data-value. Format value using data-value="fieldname: value" syntax.');a=s[e].split(":"),$.each(a,function(e,t){a[e]=t.trim()}),a[1].indexOf("[")>=0&&(a[1]=a[1].replace(/[\[\]]+/g,""),a[1]=a[1].indexOf(" ")>=0?a[1].split(" "):[a[1]]),i[a[0]]=a[1]}),$.each(t.formData,function(e,t){a+=1,void 0!==i[e]&&t.length>0?"string"==typeof i[e]?""!==t&&t!==i[e]?l=!1:n+=1:$.each(i[e],function(){return l=t.indexOf(this)>=0,l===!0&&(n+=1),l!==!0}):n+=1})),n!==a?e.addClass(t.opts.disabledClass):e.removeClass(t.opts.disabledClass)})},this.Init()}function Form(e){"use strict";var t=this;if(void 0===jQuery)throw new Error("Forms plugin requires jQuery");this.$element=$(e),this.fields=[],this.types=["text","email","textarea","select","radio","checkbox","recaptcha"],this.errorCount=0,this.validate=!0,this.ajaxSubmit=!1,this.method="GET",this.$target=null,this.submitEvent=null,this.opts={action:null,autoSubmit:!1,submitDelay:600,target:null},this.Init=function(){if($.extend(this.opts,this.$element.data()),this.ajaxSubmit=this.$element.hasClass("ajax-form"),null===this.opts.action&&void 0!==this.$element.attr("action")&&(this.opts.action=this.$element.attr("action")),void 0!==this.$element.attr("method")&&(this.method=this.$element.attr("method").toUpperCase()),this.ajaxSubmit===!0){if(null===this.opts.target)throw new Error("data-target attribute not defined on .ajax-form element.");this.$target="parent"===this.opts.target?this.$element.parent():$(this.opts.target),$("input, select, textarea",t.$element).on("change",this.AutoSubmit),$("input, textarea",t.$element).on("keyup",function(){$(this).change()})}this.$element.attr("novalidate","novalidate"),this.DefineFields(),this.$element.on("submit",function(){if(t.validate===!0?t.Validate():t.validate=!0,t.errorCount<1){if(t.ajaxSubmit!==!0)return;t.AjaxSubmit()}return!1})},this.DefineFields=function(){$(".field",this.$element).each(function(){var e=$(this);$.each(this.className.split(" "),function(){t.types.indexOf(this)>=0&&(e.fieldType=this)}),t.fields.push(e)})},this.Validate=function(){this.errorCount=0,this.$element.find(".error-message").remove(),this.$element.find(".error").removeClass("error"),$.each(this.fields,function(){var e=this.children("label"),s=null,i=!0;["text","email","textarea"].indexOf(this.fieldType)>=0?s=e.next():"select"===this.fieldType?s=$("select",this):["radio","checkbox"].indexOf(this.fieldType)>=0?s=$("input",this):"recaptcha"===this.fieldType&&(s=$("#recaptcha_response_field",this)),null!==s&&(void 0===s.attr("required")||""!==s.val()&&null!==s.val()?void 0!==t.Handler[this.fieldType]&&(i=t.Handler[this.fieldType](s)):i="Please fill in this field",i!==!0&&t.AddError(s,i))})},this.AddError=function(e,s){var i=$('<div class="error-message"></div>');t.errorCount+=1,s!==!1&&(i.html(s),e.parent().hasClass("js-input")?e.parent().after(i):e.after(i),e.closest(".field").addClass("error"))},this.Handler={email:function(e){var t=!0,s=/^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;return s.test(e.val())===!1&&(t="Please enter a valid email address"),t},recaptcha:function(e){var s=!0;return e.closest(".field").addClass("loading"),$.ajax({url:$(".field.recaptcha",t.$element).data("validationUrl"),cache:!1,timeout:1e4,data:{challenge:Recaptcha.get_challenge(),response:Recaptcha.get_response()}}).fail(function(){e.closest(".field").removeClass("loading"),e.closest(".field").removeClass("loading"),s="Could not connect to reCAPTCHA, please try again",t.AddError(e,s),Recaptcha.reload()}).done(function(i){i=i.replace(/\{!.*?\}/,""),i=$.parseJSON(i),i.is_valid===!1?(e.closest(".field").removeClass("loading"),s="image"===Recaptcha.type?"Please enter the words you see in the image correctly":"Please enter the numbers you hear correctly",t.AddError(e,s),Recaptcha.reload()):(e.closest(".field").removeClass("loading"),t.errorCount-=1,t.validate=!1,t.$element.submit())}),!1}},this.AutoSubmit=function(){null!==t.submitEvent&&window.clearTimeout(t.submitEvent),t.submitEvent=setTimeout(t.AjaxSubmit,t.opts.submitDelay)},this.AjaxSubmit=function(){null!==t.submitEvent&&window.clearTimeout(this.submitEvent),t.$target.addClass("loading");var e={data:t.$element.serialize(),type:t.method,dataType:"html",crossDomain:!0};null!==t.opts.action&&(e.url=t.opts.action),$.ajax(e).done(function(e){t.$target.html(e)}).fail(function(){throw new Error("Could not complete AJAX request.")}).always(function(){t.$target.removeClass("loading")})},this.Init()}jQuery(function(e){"use strict";var t=e(".field.select"),s=[],i=e("form[data-filter-target]"),a=[],n=e("form"),l=[];e.each(t,function(e,t){s[e]=new FormSelect(t)}),e.each(i,function(e,t){a[e]=new Filter(t)}),e.each(n,function(e,t){l[e]=new Form(t)})});
function AjaxLink(t){"use strict";var e=this;if(void 0===jQuery)throw new Error("Toggler requires jQuery");this.$element=$(t),this.opts=this.$element.data(),this.$target=null,this.Init=function(){var t=this.$element.attr("id");if(null===this.opts.target)throw new Error("data-target attribute not defined on AjaxLink element.");if(this.$target="parent"===this.opts.target?this.$element.parent():$(this.opts.target),void 0!==this.opts.delegateBase){if(void 0===t)throw new Error("id attribute not defined on AjaxLink element - required when using event delegation.");$(this.opts.delegateBase).on("mousedown","#"+t,this.AjaxLoad)}else this.$element.on("mousedown",this.AjaxLoad)},this.AjaxLoad=function(t){var a=$(this);e.$target.addClass("loading"),$.ajax({url:a.data("ajaxUrl"),dataType:"html",crossDomain:!0}).done(function(t){e.$target.html(t)}).fail(function(){throw new Error("Could not complete AJAX request.")}).always(function(){e.$target.removeClass("loading")}),t.stopPropagation(),t.preventDefault()},this.Init()}jQuery(function(t){"use strict";var e=t("[data-ajax-url]"),a=[];t.each(e,function(t,e){a[t]=new AjaxLink(e)})});
jQuery(function(e){"use strict";function a(){var a=e('form[role="search"]'),t=a.attr("action");t+="self.opts.action".indexOf("?")>=0?"&":"?",t+=a.find(":input[value!='']").serialize(),_gaq.push(["_trackPageview",t])}var t=e('nav[aria-label="primary-nav"] .nav-primary ul > li'),n=null;if(e.each(t,function(a,i){var s=e(window);e(i).find(".sub-navigation").length>0&&(e(i).hoverIntent(function(){s.width()>=screenSize.sm&&(null!==n&&window.clearTimeout(n),t.removeClass("hover"),e(this).addClass("hover"))},function(){i=this,s.width()>=screenSize.sm&&(n=setTimeout(function(){e(i).removeClass("hover")},500))}),e(i).find("> a").click(function(a){var t=e(this);s.width()<screenSize.md&&a.preventDefault(),s.width()<screenSize.sm&&(t.hasClass("active")?t.removeClass("active"):t.addClass("active"))}).parent().addClass("sub"))}),e('header[role="banner"] .btn.search').on("click",function(){var t=e('form[role="search"] input#q');t.focus(),e(this).hasClass("active")&&""!==t.val()&&a()}),e('form[role="search"] .search-results').on("click","a",function(){a()}),e("body").hasClass("event-list")){var i=e(".events > .filter input#events-date"),s=i.next(),o=s.find("[data-date]").data("date");i.focus(function(){s.addClass("active")}).blur(function(){s.removeClass("active")}),s.on("mousedown","[data-value]",function(e){e.preventDefault()}).on("click","[data-value]",function(a){var t=e(this),n=s.find("[data-date]").attr("data-date");n===o&&(i.val(t.data("value")).change(),a.preventDefault()),i.blur()})}e("video").on("contextmenu",function(e){return e.preventDefault(),!1}),e(".js-masonry img, .js-masonry iframe").on("load",function(){e(".js-masonry").masonry("layout")});var r=e(".nav-actions > button[data-toggle=button]").first();r.on("toggle",function(){setTimeout(function(){r.hasClass("active")?Cookie.remove("dismiss-popup"):Cookie.set("dismiss-popup",!0,3)},200)}),r.toggleClass("active",!Cookie.get("dismiss-popup"))});