{"version":3,"sources":["main.js","partials/count.js","partials/header.js","partials/locationschools.js","partials/navigation.js"],"names":["COUNTER_ANIMATION_LENGTH","COUNTER_SELECTOR","counterElements","drawFrame","timestamp","let","runAgain","element","undefined","dataset","started","start","previousCount","previousTimestamp","targetCount","innerHTML","replace","parseInt","elapsed","easedProgress","easeOutQuint","Math","min","currentCount","round","formattedCount","formatNumber","window","requestAnimationFrame","number","toString","x","pow","addEventListener","observer","IntersectionObserver","entries","some","entry","intersectionRatio","target","forEach","el","threshold","document","querySelectorAll","observe","ready","$","not","slick","slidesToShow","dots","arrows","autoplay","autoplaySpeed","infinite","fade","asNavFor","locationsMap","purpleIcon","blueIcon","pinkIcon","clusterMarkers","locationData","getElementById","locations","L","icon","html","iconUrl","iconSize","iconAnchor","map","setView","tileLayer","attribution","minZoom","addTo","markerClusterGroup","iconCreateFunction","cluster","count","getAllChildMarkers","length","divIcon","className","disableClusteringAtZoom","JSON","parse","location","markerIcon","id","postalCode","name","toLowerCase","type","marker","lat","lng","popupContent","on","markerElement","getElement","street","city","logoUrl","photoUrl","bindPopup","addLayer","setTimeout","openPopup","markerId","this","_icon","locationsList","itemId","i","listItems","showPage","floor","itemsPerPage","listItem","querySelector","item","classList","remove","add","markerLatLng","getLatLng","bounds","latLngBounds","getPopup","extend","fitBounds","padding","invalidateSize","pagingNumberElement","nextButton","prevButton","currentPage","pageNumber","startIdx","endIdx","style","display","textContent","totalPages","ceil","event","clickedLIElement","targetElement","tagName","parentNode","idValue","longitude","li","toggle","latitude","getAttribute","split","animation","innerWidth","mapCanvas","scrollIntoView","behavior","click","$toggle","$wrapper","mediaQuery","matchMedia","hasClass","removeClass","slideUp","css","submenu","addClass","slideDown","addListener","showMainMenu","searchOuter","searchWrapper","searchButton","navItems","e","stopPropagation","searchWrapperInput","focus","closest","once","navItemsMobile","matches","navItem","navSubmenu","navItemToggle","key","submenuToggle","navItemMobile","navbarTransparent","scrollY","YoutubeImage","url","results","match","iframes","iframe","overlay","frame","src","onplay","upcomingDiv","upcomingDate","getElementsByTagName","Line1","Line2","Line3","Link","Target","Url","appendTo","speed","lazyload"],"mappings":"AAIA,IAAAA,yBAAA,ICJAC,iBAAA,+BAEAC,gB,SAoCAC,UAAAC,GAEAC,IAAAC,EAAA,CAAA,EAIA,IAAAD,IAAAE,KAAAL,gBAEA,GAAAM,KAAAA,IAAAD,EAAAE,QAAAC,QAAA,CAIAL,IAAAM,EAAAJ,EAAAE,QAAAE,MAEAN,IAAAO,EAAAL,EAAAE,QAAAG,cAEAC,EAAAN,EAAAE,QAAAI,kBAoBAC,GAhBAN,KAAAA,IAAAG,IAEAA,EAAAP,EAEAG,EAAAE,QAAAE,MAAAP,EAEAG,EAAAE,QAAAK,YAAAP,EAAAQ,UAAAC,QAAA,MAAA,EAAA,EAIAV,EAAA,CAAA,GAMAW,SAAAV,EAAAE,QAAAK,WAAA,GAEAI,EAAAd,EAAAO,EAIAE,IAAAT,IAIAe,EAAAC,aAFAC,KAAAC,IAAAJ,EAAAlB,yBAAA,CAAA,CAEA,GAEAuB,EAAAF,KAAAG,MAAAV,EAAAK,CAAA,KAIAP,IAEAa,EAAAC,aAAAH,CAAA,EAEAhB,EAAAQ,UAAAU,EAEAlB,EAAAE,QAAAG,cAAAW,GAMAL,GAAAlB,4BAEAM,EAAA,CAAA,GAQAY,EAAAlB,2BAEAO,EAAAE,QAAAI,kBAAAT,EApEA,CA4EAE,GAEAqB,OAAAC,sBAAAzB,SAAA,C,UAQAuB,aAAAG,GAEA,OAAAA,EAAAC,SAAA,EAAAd,QAAA,wBAAA,GAAA,C,UAQAI,aAAAW,GAEA,OAAA,IAAAA,EAAA,EAAA,EAAAV,KAAAW,IAAA,EAAAD,EAAA,CAAA,C,QA1IAE,iBAAA,OAAA,KAEA,IAAAC,EAAA,IAAAC,qBAAA,SAAAC,GAEAA,EAAAC,KAAAC,GAAA,IAAAA,EAAAC,mBAAA/B,KAAAA,IAAA8B,EAAAE,OAAA/B,QAAAC,OAAA,IAEA0B,EAAAK,QAAAC,IAEA,IAAAA,EAAAH,mBAAA/B,KAAAA,IAAAkC,EAAAF,OAAA/B,QAAAC,UAEAgC,EAAAF,OAAA/B,QAAAC,QAAA,CAAA,EAIA,CAAA,EAEAiB,OAAAC,sBAAAzB,SAAA,EAIA,EAAA,CAAAwC,UAAA,EAAA,CAAA,GAIAzC,gBAAA0C,SAAAC,iBAAA5C,gBAAA,GAEAwC,QAAAC,GAAAR,EAAAY,QAAAJ,CAAA,CAAA,C,EAEA,CAAA,CAAA,E,EC1BAE,QAAA,EAAAG,MAAA,WAQAC,EAAA,WAAA,EAAAC,IAAA,oBAAA,EAAAC,MAAA,CAEAC,aAAA,EAEAC,KAAA,CAAA,EAEAC,OAAA,CAAA,EAEAC,SAAA,CAAA,EAEAC,cAAA,IAEAC,SAAA,CAAA,EAEAC,KAAA,CAAA,CAEA,CAAA,EAIAT,EAAA,sBAAA,IAEAA,EAAA,WAAA,EAAAC,IAAA,oBAAA,EAAAC,MAAA,CAEAC,aAAA,EAEAC,KAAA,CAAA,EAEAC,OAAA,CAAA,EAEAC,SAAA,CAAA,EAEAC,cAAA,IAEAC,SAAA,CAAA,EAEAC,KAAA,CAAA,EAEAC,SAAA,sBAEA,CAAA,EAEAV,EAAA,sBAAA,EAAAC,IAAA,oBAAA,EAAAC,MAAA,CAEAC,aAAA,EAEAC,KAAA,CAAA,EAEAC,OAAA,CAAA,EAEAC,SAAA,CAAA,EAEAC,cAAA,IAEAC,SAAA,CAAA,EAEAC,KAAA,CAAA,EAEAC,SAAA,WAEA,CAAA,E,UC1EAzB,iBAAA,OAAA,KAIA5B,IAAAsD,EAIAtD,IAYAuD,EAcAC,EAcAC,EA4BAC,EApEAC,EAAApB,SAAAqB,eAAA,4BAAA,EAQAD,GAAAvD,SAAAyD,YAIAN,EAAAO,EAAAC,KAAA,CAEAC,KAAA,sCAEAC,QAAA,8CAEAC,SAAA,CAAA,GAAA,IAEAC,WAAA,CAAA,GAAA,GAEA,CAAA,EAIAX,EAAAM,EAAAC,KAAA,CAEAC,KAAA,sCAEAC,QAAA,4CAEAC,SAAA,CAAA,GAAA,IAEAC,WAAA,CAAA,GAAA,GAEA,CAAA,EAIAV,EAAAK,EAAAC,KAAA,CAEAC,KAAA,sCAEAC,QAAA,4CAEAC,SAAA,CAAA,GAAA,IAEAC,WAAA,CAAA,GAAA,GAEA,CAAA,EAMAb,EAAAQ,EAAAM,IAAA,YAAA,EAAAC,QAAA,CAAA,SAAA,UAAA,CAAA,EAEAP,EAAAQ,UAAA,oFAAA,CAEAC,YAAA,kEAEAC,QAAA,CAEA,CAAA,EAAAC,MAAAnB,CAAA,EAIAI,EAAAI,EAAAY,mBAAA,CAEAC,mBAAA,SAAAC,GAIAC,EAFAD,EAAAE,mBAAA,EAEAC,OAIA,OAAAjB,EAAAkB,QAAA,CAEAhB,KAAA,qCAAAa,EAAA,SAEAI,UAAA,sBAEAf,SAAA,CAAA,GAAA,GAEA,CAAA,CAEA,EAEAgB,wBAAA,EAEA,CAAA,EAkBAC,KAAAC,MAAAzB,EAAAvD,QAAAyD,SAAA,EAIAzB,QAAA,SAAAiD,GAEA,IAAAC,EAUA,OANAD,EAAAE,IAtBAC,EAsBAH,EAAAG,WAAAH,EAAAI,KApBA9E,QAAA,gBAAA,EAAA,EAAA+E,YAAA,EAIA,IAFAF,EAAA7E,QAAA,OAAA,GAAA,EAAA+E,YAAA,GAwBAL,EAAAM,MAEA,IAAA,eAEAL,EAAA9B,EAEA,MAEA,IAAA,8BAEA8B,EAAA7B,EAEA,MAEA,IAAA,0BAEA6B,EAAA/B,EAEA,MAEA,QAEA+B,EAAA9B,CAEA,CAIA,IAAAoC,EAAA9B,EAAA8B,OAAA,CAAAP,EAAAQ,IAAAR,EAAAS,KAAA,CAAA/B,KAAAuB,CAAA,CAAA,EAsBAS,GAhBAH,EAAAI,GAAA,MAAA,WAEA,IAAAC,EAAAL,EAAAM,WAAA,EAEAD,IAEAA,EAAAV,GAAAF,EAAAE,GAIA,CAAA;;0DAQAF,EAAAE;;iCAEAF,EAAAM,KAAAhF,QAAA,OAAA,GAAA,EAAA+E,YAAA;;uBAEAL,EAAAI;;;;;;0BAMA,iBAAAJ,EAAAM,KAAA,eAEA,gCAAAN,EAAAM,KAAA,8BAEA,4BAAAN,EAAAM,KAAA,0BAAAN,EAAAM;;;;;;;;0BAUAN,EAAAc;;0BAEAd,EAAAG,eAAAH,EAAAe;;;;;;;;sBAQAf,EAAAgB,2CAAAhB,EAAAgB,iBAAAhB,EAAAI,oDAAAJ,EAAAiB,kBAAAjB,EAAAI;;;;;;;;eAYAG,EAAAW,UAAAR,CAAA,EAMArC,EAAA8C,SAAAZ,CAAA,EAIAA,EAAAI,GAAA,QAAA,WAIA1C,EAAAe,QAAA,CAAAgB,EAAAQ,IAAAR,EAAAS,KAAA,EAAA,EAMAW,WAAA,KAEAb,EAAAc,UAAA,EAMA,IAAAC,EAAAC,KAAAC,MAAAtB,GAYAuB,IA8GAC,IAIA,IAAA/G,IAAAgH,EAAA,EAAAA,EAAAC,EAAAlC,OAAAiC,CAAA,GAMA,GAJAC,EAAAD,GAIAzB,KAAAwB,EAMA,OAFAG,EAAAlG,KAAAmG,MAAAH,EAAAI,CAAA,EAAA,CAAA,EAEApG,KAAAmG,MAAAH,EAAAI,CAAA,CAUA,GA9IAT,CAAA,EAMApE,SAAAqB,eAAA,gBAAA,GAEA,IAAAyD,EAAAP,EAAAQ,cAAA,IAAAX,CAAA,EAIAU,IAQAP,EAAAtE,iBAAA,IAAA,EAEAJ,QAAAmF,IAEAA,IAAAF,GAEAE,EAAAC,UAAAC,OAAA,QAAA,CAIA,CAAA,EAMAJ,EAAAG,UAAAE,IAAA,QAAA,GAQAC,EAAA/B,EAAAgC,UAAA,EAMAC,EAAA/D,EAAAgE,aAAA,CAAAH,EAAA,EAMA/B,EAAAmC,SAAA,GAEAF,EAAAG,OAAApC,EAAAmC,SAAA,EAAAH,UAAA,CAAA,EAQAtE,EAAA2E,UAAAJ,EAAA,CAAAK,QAAA,CAAA,GAAA,GAAA,CAAA,CAIA,EAAA,GAAA,CAEA,CAAA,CAMA,CAAA,EAIA5E,EAAAkD,SAAA9C,CAAA,EAMA+C,WAAA,KAEAnD,EAAA6E,eAAA,CAEA,EAAA,GAAA,GAQA,IAAAf,EAAA,EAEAH,EAAA1E,SAAAC,iBAAA,oBAAA,EAEA4F,EAAA7F,SAAAqB,eAAA,cAAA,EAEAyE,EAAA9F,SAAAqB,eAAA,YAAA,EAEA0E,EAAA/F,SAAAqB,eAAA,gBAAA,EAIA2E,EAAA,EAkCA,GAAAtB,EAAA,CAEA,SAAAC,EAAAsB,GAEA,IAAAC,GAAAD,EAAA,GAAApB,EAEAsB,EAAAD,EAAArB,EAMAH,EAAA7E,QAAAmF,IAEAA,EAAAoB,MAAAC,QAAA,MAEA,CAAA,EAMA,IAAA5I,IAAAgH,EAAAyB,EAAAzB,EAAA0B,EAAA1B,CAAA,GAEAC,EAAAD,KAEAC,EAAAD,GAAA2B,MAAAC,QAAA,QAUAR,IAEAA,EAAAS,YAAAL,EAAA,MAAAM,GAQAR,GAAAD,IAEAC,EAAAK,MAAAC,QAAA,IAAAJ,EAAA,OAAA,QAEAH,EAAAM,MAAAC,QAAAJ,IAAAM,EAAA,OAAA,QAIA,CAwBAT,GAAAzG,iBAAA,QApBA,WAIAsF,EAFAqB,EAAAA,CAEA,CAEA,CAcA,EAEAD,GAAA1G,iBAAA,QAZA,WAIAsF,EAFAqB,EAAAA,CAEA,CAEA,CAMA,EAMA,IAAAO,EAAA9H,KAAA+H,KAAA9B,EAAAlC,OAAAqC,CAAA,EAMAF,EAAAqB,CAAA,CAEA,CAIAhG,SAAAqB,eAAA,gBAAA,GAIAhC,iBAAA,QAsBA,SAAAoH,GAIAC,GAtBAC,IAIA,KAAA,OAAAA,GAAA,OAAAA,EAAAC,SAAA,mBAAAD,EAAA3D,IAEA2D,EAAAA,EAAAE,WAMA,OAAAF,CAEA,GAQAF,EAAA7G,MAAA,EAIA,CAAA,IAwBAkH,EAYAC,EApCAL,GAAA,OAAAA,EAAAE,UAMA5G,SAAAC,iBAAA,oBAAA,EAEAJ,QAAAmH,IAEAA,EAAA/B,UAAAC,OAAA,QAAA,CAEA,CAAA,EAMAwB,EAAAzB,UAAAgC,OAAA,QAAA,EAMAH,EAAAJ,EAAA1D,GAYA,CAAAkE,EAAAH,GANAL,EAAAS,aAAA,uBAAA,EAMAC,MAAA,GAAA,EAMArG,EAAAe,QAAA,CAAAoF,EAAAH,GAAA,GAAA,CAAAM,UAAA,CAAA,CAAA,CAAA,EAMAtI,OAAAuI,YAAA,KAQAC,EAAAvH,SAAA+E,cAAA,aAAA,KAIAwC,EAAAC,eAAA,CAAAC,SAAA,QAAA,CAAA,EAEAzH,SAAA+E,cAAA,gBAAA+B,CAAA,GAAAY,MAAA,GAQA1H,SAAA+E,cAAA,gBAAA+B,CAAA,GAAAY,MAAA,EAIA,CAEA,CA1GA,C,KC1fA,KAQA,IAAAC,EAAAvH,EAAA,yBAAA,EAEAwH,EAAAxH,EAAA,iBAAA,EAEAyH,EAAA9I,OAAA+I,WAAA,oBAAA,EAIAH,GAEAA,EAAAD,MAAA,WAEAC,EAAAI,SAAA,eAAA,GAEAJ,EAAAK,YAAA,eAAA,EA8MAJ,GAQAA,EAAAK,QAAA,IAAA,KAEAL,EAAAM,IAAA,WAAA,OAAA,EAEA9H,EAAA,MAAA,EAAA8H,IAAA,WAAA,OAAA,EAMAlI,SAAAC,iBAAA,UAAA,EAAAJ,QAAAsI,GAAAA,EAAAlD,UAAAC,OAAA,SAAA,CAAA,EAEAlF,SAAAC,iBAAA,kBAAA,EAAAJ,QAAAmF,GAAAA,EAAAC,UAAAC,OAAA,SAAA,CAAA,CAEA,CAAA,IA5NAyC,EAAAS,SAAA,eAAA,EAoOAR,GAQAA,EAAAS,UAAA,IAAA,KAEAT,EAAAM,IAAA,WAAA,QAAA,EAEA9H,EAAA,MAAA,EAAA8H,IAAA,WAAA,QAAA,CAEA,CAAA,EA5OA,CAAA,EAMAN,IAEAC,EAAAS,YAAAC,CAAA,EAEAA,EAAAV,CAAA,GAQA,IAAAW,EAAAxI,SAAA+E,cAAA,0BAAA,EAEA0D,EAAAD,EAAAzD,cAAA,0BAAA,EAEA,IAAA2D,EAAAF,EAAAzD,cAAA,SAAA,EAwCA4D,GApCAD,GAEAA,EAAArJ,iBAAA,QAAA,IAEAuJ,EAAAC,gBAAA,EAEAL,GAAAA,EAAAvD,UAAAE,IAAA,gBAAA,EAEAsD,IAEAK,EAAAL,EAAA1D,cAAA,OAAA,IAEA+D,EAAAC,MAAA,EAMA/I,SAAAX,iBAAA,QAAA,IAEAmJ,GAAA,CAAAI,EAAAhJ,OAAAoJ,QAAA,0BAAA,GAEAR,EAAAvD,UAAAC,OAAA,gBAAA,CAIA,EAAA,CAAA+D,KAAA,CAAA,CAAA,CAAA,CAEA,CAAA,EAQAjJ,SAAAC,iBAAA,WAAA,GAEAiJ,EAAAlJ,SAAAC,iBAAA,mBAAA,EAkLA,SAAAsI,EAAAK,GAEAA,GAAAhB,IAQAgB,EAAAO,QAEAvB,EAAAM,IAAA,UAAA,OAAA,EAIAN,EAAAM,IAAA,UAAA,MAAA,EAIA,CAlMAS,EAAA9I,QAAAuJ,IAEA,IAAAC,EAAAD,EAAArE,cAAA,UAAA,EAEAuE,EAAAF,EAAArE,cAAA,kBAAA,EAMAqE,EAAA/J,iBAAA,aAAA,KAEAW,SAAAC,iBAAA,UAAA,EAAAJ,QAAAsI,GAAAA,EAAAlD,UAAAC,OAAA,SAAA,CAAA,EAEAmE,GAAAA,EAAApE,UAAAE,IAAA,SAAA,EAEAmE,GAAAA,EAAArE,UAAAE,IAAA,SAAA,CAEA,CAAA,EAMAiE,EAAA/J,iBAAA,aAAA,KAEAgK,GAAAA,EAAApE,UAAAC,OAAA,SAAA,EAEAoE,GAAAA,EAAArE,UAAAC,OAAA,SAAA,CAEA,CAAA,EAMAoE,GAEAA,EAAAjK,iBAAA,QAAA,IAEA,UAAAuJ,EAAAW,MAEAF,GAAAA,EAAApE,UAAAgC,OAAA,SAAA,EAEAqC,EAAArE,UAAAgC,OAAA,SAAA,EAIA,CAAA,EAQAmC,EAAArE,cAAA,kCAAA,EAEA1F,iBAAA,QAAA,IAEA,QAAAuJ,EAAAW,MAEAvJ,SAAAC,iBAAA,UAAA,EAAAJ,QAAAsI,GAAAA,EAAAlD,UAAAC,OAAA,SAAA,CAAA,EAEAlF,SAAAC,iBAAA,kBAAA,EAAAJ,QAAAoH,GAAAA,EAAAhC,UAAAC,OAAA,SAAA,CAAA,EAIA,CAAA,EAIAsE,EAAAJ,EAAArE,cAAA,iBAAA,EAIAyE,GAEAA,EAAAnK,iBAAA,QAAA,KAEAgK,EAAApE,UAAAC,OAAA,SAAA,EAEAoE,EAAArE,UAAAgC,OAAA,SAAA,CAEA,CAAA,CAIA,CAAA,EAIAiC,EAAArJ,QAAA4J,IAEA,IAAAJ,EAAAI,EAAA1E,cAAA,UAAA,EAEAuE,EAAAG,EAAA1E,cAAA,kBAAA,EAMAuE,GAEAA,EAAAjK,iBAAA,QAAA,KAEAgK,GAAAA,EAAApE,UAAAgC,OAAA,SAAA,EAEAqC,EAAArE,UAAAgC,OAAA,SAAA,CAEA,CAAA,CAIA,CAAA,C,YAwFA5H,iBAAA,SAAA,KAEA,IAAAqK,EAAA1J,SAAA+E,cAAA,sBAAA,EAEA2E,GAEAA,EAAAzE,UAAAgC,OAAA,WAAA,EAAAlI,OAAA4K,OAAA,CJ1TA,CAAA,EAGAvJ,EAAAJ,QAAA,EAAAG,MAAA,WAIAC,EAAAqF,OAAA,CACAmE,aAAA,SAAAC,GACA,IAKAC,EALA,OAAAD,MAAAA,EAAA,GASA,4BAFA,QAFAC,EAAAD,EAAAE,MAAA,gBAAA,GAEAF,EAAAC,EAAA,IAEA,oBACA,CACA,CAAA,EAEA,IAAAE,EAAAhK,SAAAC,iBAAA,QAAA,EAEA+J,GACAA,EAAAnK,QAAAoK,IAEAxM,IAAAyM,EAAAD,EAAAlF,cAAA,gBAAA,EACAoF,EAAAF,EAAAlF,cAAA,QAAA,EAEAmF,GACAA,EAAA7K,iBAAA,QAAA,WACA8K,EAAAC,IAAAD,EAAAC,IAAA,cACAF,EAAA9D,MAAAC,QAAA,MACA,CAAA,EAGA8D,EAAAE,OAAA,IACAH,EAAA9D,MAAAC,QAAA,MACA,CACA,CAAA,CAEA,CAAA,EAUAjG,EAAAJ,QAAA,EAAAG,MAAA,WAGA,IAiBAP,EACA6B,EAlBA6I,EAAAlK,EAAA,SAAA,EAAAgI,SAAA,eAAA,EACAmC,EAAA3H,KAAAC,MAAA7C,SAAAwK,qBAAA,MAAA,EAAA,GAAArD,aAAA,mBAAA,CAAA,EAEAoD,MAAAA,IACA9I,EAAA,GAEA7D,KAAAA,IAAA2M,EAAAE,QACAhJ,GAAA,uBAAA8I,EAAAE,MAAA,WAEA7M,KAAAA,IAAA2M,EAAAG,QACAjJ,GAAA,uBAAA8I,EAAAG,MAAA,WAEA9M,KAAAA,IAAA2M,EAAAI,QACAlJ,GAAA,uBAAA8I,EAAAI,MAAA,WAGA/M,KAAAA,IAAA2M,EAAAK,OACAhL,EAAA,MAAA2K,EAAAK,KAAAC,OAAA,SAAA,GACApJ,EAAA,YAAA8I,EAAAK,KAAAE,IAAA,aAAAlL,EAAA,KAAA6B,EAAA,QAGA6I,EAAA7I,KAAAA,CAAA,EAEA6I,EAAAS,SAAA,0BAAA,GAGA3K,EAAA,aAAA,EAAAC,IAAA,oBAAA,EAAAC,MAAA,CACAC,aAAA,EACAC,KAAA,CAAA,EACAC,OAAA,CAAA,EACAC,SAAA,CAAA,EACAE,SAAA,CAAA,EACAC,KAAA,CAAA,EACAmK,MAAA,IACArK,cAAA,IACAsK,SAAA,UACA,CAAA,CACA,CAAA","file":"scripts.min.js","sourcesContent":[null,"const COUNTER_ANIMATION_LENGTH = 4000;\r\nconst COUNTER_SELECTOR = \".stats-wrapper .count-number\";\r\nlet counterElements;\r\n\r\nwindow.addEventListener(\"load\", () => {\r\n const observer = new IntersectionObserver(function (entries) {\r\n if (entries.some(entry => entry.intersectionRatio >= 0.9 && entry.target.dataset.started === undefined)) {\r\n entries.forEach(el => {\r\n if (el.intersectionRatio >= 0.9 && el.target.dataset.started === undefined) {\r\n el.target.dataset.started = true;\r\n }\r\n });\r\n window.requestAnimationFrame(drawFrame);\r\n }\r\n }, { threshold: 0.9 });\r\n\r\n counterElements = document.querySelectorAll(COUNTER_SELECTOR);\r\n counterElements.forEach(el => observer.observe(el));\r\n}, false);\r\n\r\nfunction drawFrame(timestamp) {\r\n let runAgain = false;\r\n\r\n for (let element of counterElements) {\r\n if (element.dataset.started === undefined) continue;\r\n\r\n let start = element.dataset.start;\r\n let previousCount = element.dataset.previousCount;\r\n let previousTimestamp = element.dataset.previousTimestamp;\r\n\r\n if (start === undefined) {\r\n start = timestamp;\r\n element.dataset.start = timestamp;\r\n element.dataset.targetCount = element.innerHTML.replace(/\\./g, \"\");\r\n\r\n runAgain = true;\r\n }\r\n\r\n const targetCount = parseInt(element.dataset.targetCount);\r\n const elapsed = timestamp - start;\r\n\r\n if (previousTimestamp !== timestamp) {\r\n const absoluteProgress = Math.min(elapsed / COUNTER_ANIMATION_LENGTH, 1);\r\n const easedProgress = easeOutQuint(absoluteProgress);\r\n const currentCount = Math.round(targetCount * easedProgress);\r\n\r\n if (currentCount !== previousCount) {\r\n const formattedCount = formatNumber(currentCount);\r\n element.innerHTML = formattedCount;\r\n element.dataset.previousCount = currentCount;\r\n }\r\n\r\n if (elapsed <= COUNTER_ANIMATION_LENGTH) {\r\n runAgain = true;\r\n }\r\n }\r\n\r\n if (elapsed < COUNTER_ANIMATION_LENGTH) {\r\n element.dataset.previousTimestamp = timestamp;\r\n }\r\n }\r\n\r\n if (runAgain) {\r\n window.requestAnimationFrame(drawFrame);\r\n }\r\n}\r\n\r\nfunction formatNumber(number) {\r\n return number.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \".\");\r\n}\r\n\r\n// https://easings.net\r\nfunction easeOutQuint(x) {\r\n return x === 1 ? 1 : 1 - Math.pow(1 - x, 5);\r\n}","// =============================================================================\r\n// header.js | Author: Nexwork\r\n// =============================================================================\r\n\r\n$(document).ready(function () {\r\n\r\n 'use strict';\r\n\r\n $('.big-hero').not('.slick-initialized').slick({\r\n slidesToShow: 1,\r\n dots: false,\r\n arrows: false,\r\n autoplay: true,\r\n autoplaySpeed: 4000,\r\n infinite: true,\r\n fade: true,\r\n });\r\n\r\n if ($('.stichtinglvo-slider')) {\r\n $('.big-hero').not('.slick-initialized').slick({\r\n slidesToShow: 1,\r\n dots: false,\r\n arrows: false,\r\n autoplay: true,\r\n autoplaySpeed: 4000,\r\n infinite: true,\r\n fade: true,\r\n asNavFor: '.stichtinglvo-slider'\r\n });\r\n $('.stichtinglvo-slider').not('.slick-initialized').slick({\r\n slidesToShow: 1,\r\n dots: false,\r\n arrows: false,\r\n autoplay: true,\r\n autoplaySpeed: 4000,\r\n infinite: true,\r\n fade: true,\r\n asNavFor: '.big-hero'\r\n });\r\n }\r\n});\r\n","window.addEventListener(\"load\", () => {\r\n\r\n let locationsMap; // Declare locationsMap variable outside the if block\r\n\r\n let locationData = document.getElementById(\"schooloverview-map-wrapper\");\r\n\r\n const key = 'i9JxDqECb2BDFbg3Audp';\r\n\r\n if (locationData?.dataset?.locations) {\r\n // Custom icons\r\n var purpleIcon = L.icon({\r\n html: '
I
',\r\n iconUrl: '/img/lvoscholen/icon-map-pointer-purple.svg',\r\n iconSize: [32, 32],\r\n iconAnchor: [16, 32],\r\n });\r\n\r\n var blueIcon = L.icon({\r\n html: '
I
',\r\n iconUrl: '/img/lvoscholen/icon-map-pointer-blue.svg',\r\n iconSize: [32, 32],\r\n iconAnchor: [16, 32],\r\n });\r\n\r\n var pinkIcon = L.icon({\r\n html: '
I
',\r\n iconUrl: '/img/lvoscholen/icon-map-pointer-pink.svg',\r\n iconSize: [32, 32],\r\n iconAnchor: [16, 32],\r\n });\r\n\r\n // Create map and set default view and zoom boundaries\r\n locationsMap = L.map('map_canvas').setView([51.19339, 5.988265], 9);\r\n L.tileLayer('https://api.maptiler.com/maps/streets-v2/{z}/{x}/{y}.png?key=' + key, {\r\n attribution: '© OpenMapTiles',\r\n minZoom: 9\r\n }).addTo(locationsMap);\r\n\r\n var clusterMarkers = L.markerClusterGroup({\r\n iconCreateFunction: function (cluster) {\r\n var markers = cluster.getAllChildMarkers();\r\n var count = markers.length;\r\n\r\n return L.divIcon({\r\n html: '
' + count + '
',\r\n className: 'custom-cluster-icon', // Add custom CSS class for styling the cluster icon\r\n iconSize: [32, 32], // Set the size of the icon\r\n });\r\n },\r\n disableClusteringAtZoom: 15, //\r\n });\r\n\r\n // Generate ID for markers based on name+postalcode\r\n function generateUniqueID(name, postalCode) {\r\n const formattedName = name.replace(/[^a-zA-Z0-9]/g, '').toLowerCase();\r\n const formattedPostalCode = postalCode.replace(/\\s+/g, '-').toLowerCase();\r\n return `${formattedName}-${formattedPostalCode}`;\r\n }\r\n\r\n const locations = JSON.parse(locationData.dataset.locations);\r\n\r\n locations.forEach(function (location) {\r\n var markerIcon;\r\n\r\n location.id = generateUniqueID(location.name, location.postalCode);\r\n\r\n // Translate school type to matching icons\r\n switch (location.type) {\r\n case 'onze-scholen':\r\n markerIcon = blueIcon;\r\n break;\r\n case 'eerste-opvang-anderstaligen':\r\n markerIcon = pinkIcon;\r\n break;\r\n case 'ondersteunende-diensten':\r\n markerIcon = purpleIcon;\r\n break;\r\n default:\r\n markerIcon = blueIcon; // Fallback icon\r\n }\r\n\r\n var marker = L.marker([location.lat, location.lng], { icon: markerIcon });\r\n\r\n // Set the id attribute of the marker's HTML element\r\n marker.on('add', function () {\r\n var markerElement = marker.getElement();\r\n if (markerElement) {\r\n markerElement.id = location.id;\r\n }\r\n });\r\n\r\n // Create marker popup\r\n var popupContent = `\r\n
\r\n

\r\n ${location.name}\r\n

\r\n
\r\n ${location.type === 'onze-scholen' ? 'Onze scholen' :\r\n location.type === 'eerste-opvang-anderstaligen' ? 'Eerste Opvang Anderstaligen' :\r\n location.type === 'ondersteunende-diensten' ? 'Ondersteunende Diensten' : location.type\r\n }\r\n
\r\n\r\n
\r\n ${location.street}
\r\n ${location.postalCode}, ${location.city}\r\n
\r\n\r\n
\r\n ${location.logoUrl ? `\"${location.name}` : `\"${location.name}`}\r\n \r\n
\r\n
\r\n `;\r\n\r\n marker.bindPopup(popupContent);\r\n\r\n // Add cluster marker to map\r\n clusterMarkers.addLayer(marker); // Add the marker directly to the cluster group\r\n\r\n marker.on('click', function () {\r\n // Set the view to the marker's location\r\n locationsMap.setView([location.lat, location.lng], 15);\r\n\r\n // Open the popup after a short delay\r\n setTimeout(() => {\r\n marker.openPopup();\r\n\r\n // Extract the ID from the clicked marker\r\n const markerId = this._icon.id;\r\n\r\n // Find the marker's page\r\n findItemPage(markerId);\r\n\r\n // Find the matching item in the list\r\n const locationsList = document.getElementById('locations-list');\r\n const listItem = locationsList.querySelector(`#${markerId}`);\r\n\r\n if (listItem) {\r\n // Log the ID of the matching item\r\n\r\n // Remove the 'active' class from all other sibling elements inside the