/* --------------------------------------------
DOCUMENT.READY
--------------------------------------------- */
$(document).ready(function(){
'use strict';
/* --------------------------------------------
SEARCH
--------------------------------------------- */
//if you change this breakpoint in the style.css file (or _layout.scss if you use SASS), don't forget to update this value as well
var MqL = 1170;
//move nav element position according to window width
//open search form
$('.cd-search-trigger').on('click', function(event){
event.preventDefault();
toggleSearch();
});
function toggleSearch(type) {
if(type=="close") {
//close serach
$('.cd-search').removeClass('is-visible');
$('.cd-search-trigger').removeClass('search-is-visible');
$('.cd-overlay').removeClass('search-is-visible');
} else {
//toggle search visibility
$('.cd-search').toggleClass('is-visible');
$('.cd-search-trigger').toggleClass('search-is-visible');
$('.cd-overlay').toggleClass('search-is-visible');
if(windowT.width() > MqL && $('.cd-search').hasClass('is-visible')) $('.cd-search').find('input[type="search"]').focus();
($('.cd-search').hasClass('is-visible')) ? $('.cd-overlay').addClass('is-visible') : $('.cd-overlay').removeClass('is-visible') ;
}
}
/* --------------------------------------------
EQUAL HEIGHTS
--------------------------------------------- */
//init equal height
$('.equal-height').equalHeights();
/* --------------------------------------------
SCROLL TO TOP
--------------------------------------------- */
// hide #back-top first
$("#back-top").hide();
// fade in #back-top
$(function () {
windowT.scroll(function () {
if ($(this).scrollTop() > 100) {
$('#back-top').fadeIn();
} else {
$('#back-top').fadeOut();
}
});
// scroll body to 0px on click
$('#back-top a').click(function () {
$('body,html').animate({
scrollTop: 0
}, 600);
return false;
});
});
/* --------------------------------------------
TOGGLE
--------------------------------------------- */
$('.toggle-view-custom li').click(function () {
var text = $(this).children('div.panel');
if (text.is(':hidden')) {
text.slideDown('10');
$(this).children('.ui-accordion-header').addClass('ui-accordion-header-active');
} else {
text.slideUp('10');
$(this).children('.ui-accordion-header').removeClass('ui-accordion-header-active');
}
});
/* --------------------------------------------
SMOOTH SCROLL TO
--------------------------------------------- */
$('a.smooth-scroll[href^="#"]').on('click', function(event) {
var target = $( $(this).attr('href') );
if( target.length ) {
event.preventDefault();
$('html, body').animate({
scrollTop: target.offset().top
}, 600);
}
});
/* --------------------------------------------
JS NOT FOR MOBILE (PARALLAX, OPACITY SCROLL)
--------------------------------------------- */
if( mobileDetect == false ) {
/* --------------------------------------------
OPACITY SCROLL
--------------------------------------------- */
if ( $('.opacity-scroll2').length ){
windowT.on('scroll', function() {
$('.opacity-scroll2').css('opacity', function() {
return 1 - ((windowT.scrollTop() / windowT.height())*1.5);
});
});
};
/* --------------------------------------------
PARALLAX
--------------------------------------------- */
if ( $('.parallax-section').length ){
$.stellar({
horizontalScrolling: false,
responsive: true
});
};
}//END JS NOT FOR MOBILE
/* --------------------------------------------
SKILL BAR ANIMATION
--------------------------------------------- */
$('.skillbar').appear(function(){
$('.skillbar').each(function(){
$(this).find('.skillbar-bar').animate({
width:$(this).attr('data-percent')
},2000);
});
});
/* --------------------------------------------
BOOTSTRAP JS
--------------------------------------------- */
//TOOLOTIPS INITIALIZE
$(function () {
$('[data-toggle="tooltip"]').tooltip()
});
//POPOVER INITIALIZE
$(function () {
$('[data-toggle="popover"]').popover()
});
// ACCORDION
var accordPanels = $(".accordion > dd").hide();
accordPanels.first().slideDown("easeOutExpo");
$(".accordion > dt > a").first().addClass("active");
$(".accordion > dt > a").click(function(){
var current = $(this).parent().next("dd");
$(".accordion > dt > a").removeClass("active");
$(this).addClass("active");
accordPanels.not(current).slideUp("easeInExpo");
$(this).parent().next().slideDown("easeOutExpo");
return false;
});
// TOGGLE
$(".toggle > dd").hide();
$(".toggle > dt > a").click(function(){
if ($(this).hasClass("active")) {
$(this).parent().next().slideUp("easeOutExpo");
$(this).removeClass("active");
}
else {
var current = $(this).parent().next("dd");
$(this).addClass("active");
$(this).parent().next().slideDown("easeOutExpo");
}
return false;
});
/* --------------------------------------------
FUNCTIONS
--------------------------------------------- */
initMenu();
initMagnPopup();
initCounters();
initMap();
initPageSliders();
initImgHeight();
initLeftMenu();
if ( $('#flickr-feeds').length ){
initFlickrFeeds();
};
if ( $('#twitter-feeds').length ){
initTwitterFeeds();
};
if ( $('#nav').length ){
initAffixCheck();
};
if ( $('#items-grid').length ){
initWorkFilter();
};
if ( $('.masonry').length ){
initMasonry();
};
if ( $('.wow').length ){
initWow();
};
//WINDOW RESIZE
windowT.resize(function() {
$('.equal-height').css('height','auto').equalHeights();
if ( $('#nav').length ){
initAffixCheck();
};
initImgHeight();
initLeftMenu();
});
//WINDOW WIDTH CHANGE
var widthWin = windowT.width();
windowT.resize(function(){
if($(this).width() != widthWin){
widthWin = $(this).width();
initLeftMenu();
}
});
var idx = getParams();
if (idx["id"] == "about") {
$(".navbar-nav > li").removeClass("current");
$("#about").addClass("current");
} else if(idx["id"] == "service"){
$(".navbar-nav > li").removeClass("current");
$("#service").addClass("current");
} else if(idx["id"] == "work"){
$(".navbar-nav > li").removeClass("current");
$("#work").addClass("current");
} else if(idx["id"] == "portfolio"){
$(".navbar-nav > li").removeClass("current");
$("#work").addClass("current");
} else if(idx["id"] == "business"){
$(".navbar-nav > li").removeClass("current");
$("#business").addClass("current");
} else {
$(".navbar-nav > li").removeClass("current");
$("#home").addClass("current");
}
if (idx["tab"] == "mobile") {
$(".filter").removeClass("active");
$("#mobile").addClass("active");
} else if(idx["tab"] == "web"){
$(".filter").removeClass("active");
$("#web").addClass("active");
} else if(idx["tab"] == "app"){
$(".filter").removeClass("active");
$("#app").addClass("active");
} else if(idx["tab"] == "design"){
$(".filter").removeClass("active");
$("#design").addClass("active");
} else {
$(".filter").removeClass("active");
$("#all").addClass("active");
}
});
$(window).load(function() {
var sort = getParams();
console.log(sort["tab"]);
if (sort["tab"] == "all") {
$("#WorkList #items-grid").isotope({
itemSelector: '.mix',
layoutMode: 'fitRows',
filter: 0
});
} else {
var Ft = "." + sort["tab"];
$("#WorkList #items-grid").isotope({
itemSelector: '.mix',
layoutMode: 'fitRows',
filter: Ft
});
}
$("#WorkList #items-grid").isotope();
});
function getParams() {
// 파라미터가 담길 배열
var param = new Array();
// 현재 페이지의 url
var url = decodeURIComponent(location.href);
// url이 encodeURIComponent 로 인코딩 되었을때는 다시 디코딩 해준다.
url = decodeURIComponent(url);
var params;
// url에서 '?' 문자 이후의 파라미터 문자열까지 자르기
params = url.substring( url.indexOf('?')+1, url.length );
// 파라미터 구분자("&") 로 분리
params = params.split("&");
// params 배열을 다시 "=" 구분자로 분리하여 param 배열에 key = value 로 담는다.
var size = params.length;
var key, value;
for(var i=0 ; i < size ; i++) {
key = params[i].split("=")[0];
value = params[i].split("=")[1];
param[key] = value;
}
return param;
}
/* --------------------------------------------
HEADER MENU
--------------------------------------------- */
function initMenu() {
'use strict';
var $ = jQuery,
body = $('body'),
primary = '#main-menu';
$(primary).find('.parent > a .open-sub, .megamenu .title .open-sub').remove();
$(primary).find('.parent > a, .megamenu .title').append('');
$(primary).on('click','.open-sub', function(event){
event.preventDefault();
var item = $(this).closest('li, .box');
if ($(item).hasClass('active')) {
$(item).children().last().slideUp(150);
$(item).removeClass('active');
} else {
var li = $(this).closest('li, .box').parent('ul, .sub-list').children('li, .box');
if ($(li).is('.active')) {
$(li).removeClass('active').children('ul').slideUp(150);
}
$(item).children().last().slideDown(150);
$(item).addClass('active');
}
});
$(primary).find('.parent > a').click(function(event){
if ((body.width() > 979) && (navigator.userAgent.match(/iPad|iPhone|Android/i))) {
var link = $(this);
if (link.parent().hasClass('open')) {
link.parent().removeClass('open'),
event.preventDefault();
} else {
event.preventDefault();
link.parent().addClass('open')
}
}
});
}
/* --------------------------------------------
PLATFORM DETECT
--------------------------------------------- */
var htmlT = $('html'),
windowT = $(window),
ieDetect = false,
mobileDetect = false,
ua = window.navigator.userAgent,
old_ie = ua.indexOf('MSIE '),
new_ie = ua.indexOf('Trident/');
if (/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|ipad|iris|kindle|Android|Silk|lge |maemo|midp|mmp|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i.test(navigator.userAgent)) {
mobileDetect = true;
htmlT.addClass('mobile');
} else {
htmlT.addClass('no-mobile');
};
//IE Detect
if ((old_ie > -1) || (new_ie > -1)) {
ieDetect = true;
};
/* --------------------------------------------
PAGE LOADER
--------------------------------------------- */
$("body").imagesLoaded(function(){
$("#loader3").fadeOut();
// $("#loader-overflow").delay(200).fadeOut(700);
$("#loader-overflow").fadeOut(700);
});
/* --------------------------------------------
MAGNIFIC POPUP SETTINGS
--------------------------------------------- */
function initMagnPopup() {
//Inline popups
$('#inline-popups').magnificPopup({
delegate: 'a',
removalDelay: 500, //delay removal by X to allow out-animation
callbacks: {
beforeOpen: function() {
this.st.mainClass = this.st.el.attr('data-effect');
}
},
midClick: true // allow opening popup on middle mouse click. Always set it to true if you don't provide alternative source.
});
//Image popups
$('.lightbox').magnificPopup({
// delegate: 'a',
type: 'image',
mainClass: 'mfp-3d-unfold',
removalDelay: 500, //delay removal by X to allow out-animation
callbacks: {
beforeOpen: function() {
// just a hack that adds mfp-anim class to markup
this.st.image.markup = this.st.image.markup.replace('mfp-figure', 'mfp-figure mfp-with-anim');
// this.st.mainClass = this.st.el.attr('data-effect');
}
},
closeOnContentClick: true,
midClick: true // allow opening popup on middle mouse click. Always set it to true if you don't provide alternative source.
});
//Hinge effect popup
$('a.hinge').magnificPopup({
mainClass: 'mfp-with-fade',
removalDelay: 1000, //delay removal by X to allow out-animation
callbacks: {
beforeClose: function() {
this.content.addClass('hinge');
},
close: function() {
this.content.removeClass('hinge');
}
},
midClick: true
});
//GALERY
$('.popup-gallery').magnificPopup({
delegate: 'a',
type: 'image',
tLoading: 'Loading image #%curr%...',
mainClass: 'mfp-3d-unfold',
removalDelay: 500, //delay removal by X to allow out-animation
callbacks: {
beforeOpen: function() {
// just a hack that adds mfp-anim class to markup
this.st.image.markup = this.st.image.markup.replace('mfp-figure', 'mfp-figure mfp-with-anim');
// this.st.mainClass = this.st.el.attr('data-effect');
}
},
gallery: {
enabled: true,
navigateByImgClick: true,
preload: [0,1] // Will preload 0 - before current, and 1 after the current image
},
image: {
tError: 'The image #%curr% could not be loaded.',
/*titleSrc: function(item) {
return item.el.attr('title') + 'by Marsel Van Oosten';
}*/
}
});
//GALERY 2
$('.popup-gallery2').magnificPopup({
delegate: 'a',
type: 'image',
tLoading: 'Loading image #%curr%...',
mainClass: 'mfp-3d-unfold',
removalDelay: 500, //delay removal by X to allow out-animation
callbacks: {
beforeOpen: function() {
// just a hack that adds mfp-anim class to markup
this.st.image.markup = this.st.image.markup.replace('mfp-figure', 'mfp-figure mfp-with-anim');
// this.st.mainClass = this.st.el.attr('data-effect');
}
},
gallery: {
enabled: true,
navigateByImgClick: true,
preload: [0,1] // Will preload 0 - before current, and 1 after the current image
},
image: {
tError: 'The image #%curr% could not be loaded.',
/*titleSrc: function(item) {
return item.el.attr('title') + 'by Marsel Van Oosten';
}*/
}
});
//MULTI GALERY
$('.popup-multi-gallery').each(function() { // the containers for all your galleries
$(this).magnificPopup({
delegate: 'a', // the selector for gallery item
type: 'image',
gallery: {
enabled:true
}
});
});
//VIDEO GMAPS POPUP
$('.popup-youtube, .popup-vimeo, .popup-gmaps').magnificPopup({
//disableOn: 700,
type: 'iframe',
mainClass: 'mfp-fade',
removalDelay: 160,
preloader: false,
fixedContentPos: false
});
};
/* --------------------------------------------
FIXED HEADER ON - OFF
--------------------------------------------- */
function initAffixCheck(){
'use strict';
var navAffix = $('#nav');
//FIXED HEADER ON
navAffix.affix({
offset: { top: 1, }
});
if((windowT.width() < 1025) ) {
//FIXED HEADER OFF
windowT.off('.affix');
navAffix.removeData('bs.affix').removeClass('affix affix-top affix-bottom');
}
};
/* --------------------------------------------
TWITTER FEEDS
--------------------------------------------- */
function initTwitterFeeds(){
$("#twitter-feeds").tweet({
// join_text: false,
username: "abcgomel", // Change username here
modpath: './js/twitter/', // Twitter files path
avatar_size: false, // you can active avatar
count: 2, // number of tweets
loading_text: "loading tweets..."
});
};
/* --------------------------------------------
FLICKR FEEDS
--------------------------------------------- */
function initFlickrFeeds(){
$('#flickr-feeds').jflickrfeed({
limit: 6,
qstrings: {
id: '91212552@N07'
},
itemTemplate:
'
' +
'' +
'' +
'' +
''
});
};
/* --------------------------------------------
HEADER LEFT MENU
--------------------------------------------- */
function initLeftMenu(){
var hlNav = $('#header-left-nav');
if((windowT.width() < 1025) ) {
hlNav.removeClass('in')
}
if((windowT.width() > 1024) && (!hlNav.hasClass('in')) ) {
hlNav.addClass('in')
}
};
/* --------------------------------------------
WOW ANIMATE
--------------------------------------------- */
function initWow(){
var wow = new WOW( { mobile: false, } );
wow.init();
}
/* ---------------------------------------------
COUNTER
--------------------------------------------- */
function initCounters(){
$(".count-number").appear(function(){
var count = $(this);
count.countTo({
from: 0,
to: count.html(),
speed: 1300,
refreshInterval: 60,
});
});
}
/* ---------------------------------------------
PORTFOLIO
--------------------------------------------- */
function initWorkFilter(){
// Projects filtering
var fselector = 0,
itemsGrid = $("#items-grid");
(function($){
"use strict";
var isotopeMode;
if (itemsGrid.hasClass("masonry")){
isotopeMode = "masonry";
} else{
isotopeMode = "fitRows"
}
itemsGrid.imagesLoaded(function(){
itemsGrid.isotope({
itemSelector: '.mix',
layoutMode: isotopeMode,
filter: fselector
});
});
$(".filter").click(function(){
$(".filter").removeClass("active");
$(this).addClass("active");
fselector = $(this).attr('data-filter');
itemsGrid.isotope({
itemSelector: '.mix',
layoutMode: isotopeMode,
filter: fselector
});
return false;
});
})(jQuery);
}
/* ---------------------------------------------
Height 100%
--------------------------------------------- */
function initImgHeight(){
(function($){
$(".js-height-fullscr").height($(window).height());
})(jQuery);
}
/* ---------------------------------------------
MASONRY
--------------------------------------------- */
function initMasonry(){
(function($){
$(".masonry").imagesLoaded(function(){
$(".masonry").masonry();
});
})(jQuery);
}
/* ---------------------------------------------
GOOGLE MAP
--------------------------------------------- */
var gmMapDiv = $("#google-map");
function initMap(){
(function($){
if (gmMapDiv.length) {
var gmCenterAddress = gmMapDiv.attr("data-address");
var gmMarkerAddress = gmMapDiv.attr("data-address");
gmMapDiv.gmap3({
action: "init",
marker: {
address: gmMarkerAddress,
options: {
icon: "images/loc-marker.png"
}
},
map: {
options: {
zoom: 18,
zoomControl: true,
zoomControlOptions: {
style: google.maps.ZoomControlStyle.SMALL
},
mapTypeControl: false,
scaleControl: false,
scrollwheel: false,
streetViewControl: false,
draggable: true,
styles:[ { stylers: [{ invert_lightness: true }, { saturation: -100 }, { lightness: 10 }] } ]
}
}
});
}
})(jQuery);
}
/* --------------------------------------------
Local Hosted Video Player
-------------------------------------------- */
if ( $( ".date-picker" ).length !== 0 ) {
$(function () {
$('.date-picker').datetimepicker({
format: 'DD/MM/YYYY'
});
});
};
if ( $( ".time-picker" ).length !== 0 ) {
$(function () {
$('.time-picker').datetimepicker({
format: 'LT'
});
});
};
/* ---------------------------------------------
OWL Sliders
--------------------------------------------- */
function initPageSliders(){
(function($){
"use strict";
// FULLWIDTH SLIDER
$(".fullwidth-slider").owlCarousel({
slideSpeed: 350,
singleItem: true,
// autoHeight: true,
navigation: true,
navigationText: ["", ""]
});
// FULLWIDTH SLIDER AUTOPLAY
$(".fullwidth-slider-auto").owlCarousel({
autoPlay : 4000,
// slideSpeed: 350,
singleItem: true,
// autoHeight: true,
navigation: true,
navigationText: ["", ""],
// pagination : false,
//paginationNumbers: false,
});
// CAROUSEL CLIENTS ITEMS
$("#owl-clients").owlCarousel({
//Set AutoPlay to 3 seconds
autoPlay : 6000,
items : 5,
itemsDesktop : [1199, 4], //5 items between 1000px and 901px
itemsDesktopSmall : [768, 3], // betweem 900px and 601px
itemsTablet: [480, 2], //2 items between 600 and 0
itemsMobile : false, // itemsMobile disabled - inherit from itemsTablet option
pagination : false,
paginationNumbers: false,
});
// CAROUSEL CLIENTS AUTO PLAY
$(".owl-clients-auto").owlCarousel({
//Set AutoPlay to 3 seconds
autoPlay : 5000,
items : 5,
itemsDesktop : [1000,4],
itemsDesktopSmall : [900,3],
itemsTablet: [470,1],
itemsMobile : false,
//Pagination
pagination : false,
paginationNumbers: false,
});
// CAROUSEL CLIENTS NO AUTO PLAY
$(".owl-clients-no-auto").owlCarousel({
//Set AutoPlay to 3 seconds
//autoPlay : 5000,
items : 5,
itemsDesktop : [1000,4],
itemsDesktopSmall : [900,3],
itemsTablet: [470,1],
itemsMobile : false,
//Pagination
pagination : true,
paginationNumbers: false,
});
// CAROUSEL 3 ITEMS NAV NO AUTO PLAY
$(".owl-3items-nav").owlCarousel({
//Set AutoPlay to 3 seconds
//autoPlay : 5000,
items : 4,
itemsDesktop : [1000,3],
itemsDesktopSmall : [900,2],
itemsTablet: [470,1],
itemsMobile : false,
//Pagination
pagination : false,
paginationNumbers: false,
// Navigation
navigation : true,
navigationText : ["", ""],
rewindNav : true,
scrollPerPage : false,
});
// CAROUSEL CLIENTS NAV NO AUTO PLAY
$(".owl-clients-nav").owlCarousel({
//Set AutoPlay to 3 seconds
//autoPlay : 5000,
items : 5,
itemsDesktop : [1000,4],
itemsDesktopSmall : [900,3],
itemsTablet: [470,1],
itemsMobile : false,
//Pagination
pagination : false,
paginationNumbers: false,
// Navigation
navigation : true,
navigationText : ["", ""],
rewindNav : true,
scrollPerPage : false,
});
// CAROUSEL ONE ITEM INLINE, NO CONTROLS, NO AUTO PLAY, WITH PAGINATION
$(".owl-1-pag").owlCarousel({
//Set AutoPlay to 3 seconds
//autoPlay : 5000,
items : 1,
itemsDesktop : [1000,1],
itemsDesktopSmall : [900,1],
itemsTablet: [470,1],
itemsMobile : false,
//Pagination
pagination : true,
paginationNumbers: false,
});
// CAROUSEL ONE ITEM INLINE, NO CONTROLS, AUTO PLAY, WITH PAGINATION
$(".owl-1-pag-auto").owlCarousel({
//Set AutoPlay to 3 seconds
autoPlay : 5000,
items : 1,
itemsDesktop : [1000,1],
itemsDesktopSmall : [900,1],
itemsTablet: [470,1],
itemsMobile : false,
//Pagination
pagination : true,
paginationNumbers: false,
});
function center(number){
var sync2visible = sync2.data("owlCarousel").owl.visibleItems;
var num = number;
var found = false;
for (var i in sync2visible) {
if (num === sync2visible[i]) {
var found = true;
}
}
if (found === false) {
if (num > sync2visible[sync2visible.length - 1]) {
sync2.trigger("owl.goTo", num - sync2visible.length + 2)
}
else {
if (num - 1 === -1) {
num = 0;
}
sync2.trigger("owl.goTo", num);
}
}
else
if (num === sync2visible[sync2visible.length - 1]) {
sync2.trigger("owl.goTo", sync2visible[1])
}
else
if (num === sync2visible[0]) {
sync2.trigger("owl.goTo", num - 1)
}
}
var owl = $(".fullwidth-slideshow").data("owlCarousel");
$(document.documentElement).keyup(function(event){
// handle cursor keys
if (event.keyCode == 37) {
owl.prev();
}
else
if (event.keyCode == 39) {
owl.next();
}
});
if ($(".owl-carousel").lenth) {
var owl = $(".owl-carousel").data('owlCarousel');
owl.reinit();
}
})(jQuery);
};
/* --------------------------------------------
NEWSLETTER
--------------------------------------------- */
$(function () {
'use strict';
var $form = $('#mc-embedded-subscribe-form');
$('#mc-embedded-subscribe').on('click', function(event) {
if(event) event.preventDefault();
register($form);
});
});
function register($form) {
$.ajax({
type: $form.attr('method'),
url: $form.attr('action'),
data: $form.serialize(),
cache : false,
dataType : 'json',
contentType: "application/json; charset=utf-8",
error : function(err) { $('#notification_container').html('Could not connect to server. Please try again later.
'); },
success : function(data) {
if (data.result != "success") {
var message = data.msg;
$('#notification_container').html(''+message+'
');
}
else {
var message = data.msg;
$('#notification_container').html(''+message+'
');
}
}
});
}
//END NEWSLETTER -------------------------------------------------------------------
//WOW ANIMATE PLUGIN-------------------------------------------------------------------
/*! WOW - v1.1.2 - 2015-04-07
* Copyright (c) 2015 Matthieu Aussaguel; Licensed MIT */(function(){var a,b,c,d,e,f=function(a,b){return function(){return a.apply(b,arguments)}},g=[].indexOf||function(a){for(var b=0,c=this.length;c>b;b++)if(b in this&&this[b]===a)return b;return-1};b=function(){function a(){}return a.prototype.extend=function(a,b){var c,d;for(c in b)d=b[c],null==a[c]&&(a[c]=d);return a},a.prototype.isMobile=function(a){return/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(a)},a.prototype.createEvent=function(a,b,c,d){var e;return null==b&&(b=!1),null==c&&(c=!1),null==d&&(d=null),null!=document.createEvent?(e=document.createEvent("CustomEvent"),e.initCustomEvent(a,b,c,d)):null!=document.createEventObject?(e=document.createEventObject(),e.eventType=a):e.eventName=a,e},a.prototype.emitEvent=function(a,b){return null!=a.dispatchEvent?a.dispatchEvent(b):b in(null!=a)?a[b]():"on"+b in(null!=a)?a["on"+b]():void 0},a.prototype.addEvent=function(a,b,c){return null!=a.addEventListener?a.addEventListener(b,c,!1):null!=a.attachEvent?a.attachEvent("on"+b,c):a[b]=c},a.prototype.removeEvent=function(a,b,c){return null!=a.removeEventListener?a.removeEventListener(b,c,!1):null!=a.detachEvent?a.detachEvent("on"+b,c):delete a[b]},a.prototype.innerHeight=function(){return"innerHeight"in window?window.innerHeight:document.documentElement.clientHeight},a}(),c=this.WeakMap||this.MozWeakMap||(c=function(){function a(){this.keys=[],this.values=[]}return a.prototype.get=function(a){var b,c,d,e,f;for(f=this.keys,b=d=0,e=f.length;e>d;b=++d)if(c=f[b],c===a)return this.values[b]},a.prototype.set=function(a,b){var c,d,e,f,g;for(g=this.keys,c=e=0,f=g.length;f>e;c=++e)if(d=g[c],d===a)return void(this.values[c]=b);return this.keys.push(a),this.values.push(b)},a}()),a=this.MutationObserver||this.WebkitMutationObserver||this.MozMutationObserver||(a=function(){function a(){"undefined"!=typeof console&&null!==console&&console.warn("MutationObserver is not supported by your browser."),"undefined"!=typeof console&&null!==console&&console.warn("WOW.js cannot detect dom mutations, please call .sync() after loading new content.")}return a.notSupported=!0,a.prototype.observe=function(){},a}()),d=this.getComputedStyle||function(a){return this.getPropertyValue=function(b){var c;return"float"===b&&(b="styleFloat"),e.test(b)&&b.replace(e,function(a,b){return b.toUpperCase()}),(null!=(c=a.currentStyle)?c[b]:void 0)||null},this},e=/(\-([a-z]){1})/g,this.WOW=function(){function e(a){null==a&&(a={}),this.scrollCallback=f(this.scrollCallback,this),this.scrollHandler=f(this.scrollHandler,this),this.resetAnimation=f(this.resetAnimation,this),this.start=f(this.start,this),this.scrolled=!0,this.config=this.util().extend(a,this.defaults),this.animationNameCache=new c,this.wowEvent=this.util().createEvent(this.config.boxClass)}return e.prototype.defaults={boxClass:"wow",animateClass:"animated",offset:0,mobile:!0,live:!0,callback:null},e.prototype.init=function(){var a;return this.element=window.document.documentElement,"interactive"===(a=document.readyState)||"complete"===a?this.start():this.util().addEvent(document,"DOMContentLoaded",this.start),this.finished=[]},e.prototype.start=function(){var b,c,d,e;if(this.stopped=!1,this.boxes=function(){var a,c,d,e;for(d=this.element.querySelectorAll("."+this.config.boxClass),e=[],a=0,c=d.length;c>a;a++)b=d[a],e.push(b);return e}.call(this),this.all=function(){var a,c,d,e;for(d=this.boxes,e=[],a=0,c=d.length;c>a;a++)b=d[a],e.push(b);return e}.call(this),this.boxes.length)if(this.disabled())this.resetStyle();else for(e=this.boxes,c=0,d=e.length;d>c;c++)b=e[c],this.applyStyle(b,!0);return this.disabled()||(this.util().addEvent(window,"scroll",this.scrollHandler),this.util().addEvent(window,"resize",this.scrollHandler),this.interval=setInterval(this.scrollCallback,50)),this.config.live?new a(function(a){return function(b){var c,d,e,f,g;for(g=[],c=0,d=b.length;d>c;c++)f=b[c],g.push(function(){var a,b,c,d;for(c=f.addedNodes||[],d=[],a=0,b=c.length;b>a;a++)e=c[a],d.push(this.doSync(e));return d}.call(a));return g}}(this)).observe(document.body,{childList:!0,subtree:!0}):void 0},e.prototype.stop=function(){return this.stopped=!0,this.util().removeEvent(window,"scroll",this.scrollHandler),this.util().removeEvent(window,"resize",this.scrollHandler),null!=this.interval?clearInterval(this.interval):void 0},e.prototype.sync=function(){return a.notSupported?this.doSync(this.element):void 0},e.prototype.doSync=function(a){var b,c,d,e,f;if(null==a&&(a=this.element),1===a.nodeType){for(a=a.parentNode||a,e=a.querySelectorAll("."+this.config.boxClass),f=[],c=0,d=e.length;d>c;c++)b=e[c],g.call(this.all,b)<0?(this.boxes.push(b),this.all.push(b),this.stopped||this.disabled()?this.resetStyle():this.applyStyle(b,!0),f.push(this.scrolled=!0)):f.push(void 0);return f}},e.prototype.show=function(a){return this.applyStyle(a),a.className=a.className+" "+this.config.animateClass,null!=this.config.callback&&this.config.callback(a),this.util().emitEvent(a,this.wowEvent),this.util().addEvent(a,"animationend",this.resetAnimation),this.util().addEvent(a,"oanimationend",this.resetAnimation),this.util().addEvent(a,"webkitAnimationEnd",this.resetAnimation),this.util().addEvent(a,"MSAnimationEnd",this.resetAnimation),a},e.prototype.applyStyle=function(a,b){var c,d,e;return d=a.getAttribute("data-wow-duration"),c=a.getAttribute("data-wow-delay"),e=a.getAttribute("data-wow-iteration"),this.animate(function(f){return function(){return f.customStyle(a,b,d,c,e)}}(this))},e.prototype.animate=function(){return"requestAnimationFrame"in window?function(a){return window.requestAnimationFrame(a)}:function(a){return a()}}(),e.prototype.resetStyle=function(){var a,b,c,d,e;for(d=this.boxes,e=[],b=0,c=d.length;c>b;b++)a=d[b],e.push(a.style.visibility="visible");return e},e.prototype.resetAnimation=function(a){var b;return a.type.toLowerCase().indexOf("animationend")>=0?(b=a.target||a.srcElement,b.className=b.className.replace(this.config.animateClass,"").trim()):void 0},e.prototype.customStyle=function(a,b,c,d,e){return b&&this.cacheAnimationName(a),a.style.visibility=b?"hidden":"visible",c&&this.vendorSet(a.style,{animationDuration:c}),d&&this.vendorSet(a.style,{animationDelay:d}),e&&this.vendorSet(a.style,{animationIterationCount:e}),this.vendorSet(a.style,{animationName:b?"none":this.cachedAnimationName(a)}),a},e.prototype.vendors=["moz","webkit"],e.prototype.vendorSet=function(a,b){var c,d,e,f;d=[];for(c in b)e=b[c],a[""+c]=e,d.push(function(){var b,d,g,h;for(g=this.vendors,h=[],b=0,d=g.length;d>b;b++)f=g[b],h.push(a[""+f+c.charAt(0).toUpperCase()+c.substr(1)]=e);return h}.call(this));return d},e.prototype.vendorCSS=function(a,b){var c,e,f,g,h,i;for(h=d(a),g=h.getPropertyCSSValue(b),f=this.vendors,c=0,e=f.length;e>c;c++)i=f[c],g=g||h.getPropertyCSSValue("-"+i+"-"+b);return g},e.prototype.animationName=function(a){var b;try{b=this.vendorCSS(a,"animation-name").cssText}catch(c){b=d(a).getPropertyValue("animation-name")}return"none"===b?"":b},e.prototype.cacheAnimationName=function(a){return this.animationNameCache.set(a,this.animationName(a))},e.prototype.cachedAnimationName=function(a){return this.animationNameCache.get(a)},e.prototype.scrollHandler=function(){return this.scrolled=!0},e.prototype.scrollCallback=function(){var a;return!this.scrolled||(this.scrolled=!1,this.boxes=function(){var b,c,d,e;for(d=this.boxes,e=[],b=0,c=d.length;c>b;b++)a=d[b],a&&(this.isVisible(a)?this.show(a):e.push(a));return e}.call(this),this.boxes.length||this.config.live)?void 0:this.stop()},e.prototype.offsetTop=function(a){for(var b;void 0===a.offsetTop;)a=a.parentNode;for(b=a.offsetTop;a=a.offsetParent;)b+=a.offsetTop;return b},e.prototype.isVisible=function(a){var b,c,d,e,f;return c=a.getAttribute("data-wow-offset")||this.config.offset,f=window.pageYOffset,e=f+Math.min(this.element.clientHeight,this.util().innerHeight())-c,d=this.offsetTop(a),b=d+a.clientHeight,e>=d&&b>=f},e.prototype.util=function(){return null!=this._util?this._util:this._util=new b},e.prototype.disabled=function(){return!this.config.mobile&&this.util().isMobile(navigator.userAgent)},e}()}).call(this);
//EQUAL HEIGHTS PLUGIN-------------------------------------------------------------------
/*!
* Simple jQuery Equal Heights
*
* Copyright (c) 2013 Matt Banks
* Dual licensed under the MIT and GPL licenses.
* Uses the same license as jQuery, see:
* http://docs.jquery.com/License
*
* @version 1.6.0
*/
!function(a){a.fn.equalHeights=function(){var b=0,c=a(this);return c.each(function(){var c=a(this).innerHeight();c>b&&(b=c)}),c.css("height",b)},a("[data-equal]").each(function(){var b=a(this),c=b.data("equal");b.find(c).equalHeights()})}(jQuery);
//SMOOTHSCROLL PLUGIN-------------------------------------------------------------------
if (navigator.appVersion.indexOf("Win")!=-1) {
// SmoothScroll for websites v1.2.1
// Licensed under the terms of the MIT license.
// People involved
// - Balazs Galambosi (maintainer)
// - Michael Herf (Pulse Algorithm)
!function(){function e(){var e=!1;e&&c("keydown",o),g.keyboardSupport&&!e&&u("keydown",o)}function t(){if(document.body){var t=document.body,r=document.documentElement,a=window.innerHeight,o=t.scrollHeight;if(x=document.compatMode.indexOf("CSS")>=0?r:t,w=t,e(),S=!0,top!=self)y=!0;else if(o>a&&(t.offsetHeight<=a||r.offsetHeight<=a)&&(r.style.height="auto",x.offsetHeight<=a)){var n=document.createElement("div");n.style.clear="both",t.appendChild(n)}g.fixedBackground||b||(t.style.backgroundAttachment="scroll",r.style.backgroundAttachment="scroll")}}function r(e,t,r,a){if(a||(a=1e3),d(t,r),1!=g.accelerationMax){var o=+new Date,n=o-T;if(n1&&(i=Math.min(i,g.accelerationMax),t*=i,r*=i)}T=+new Date}if(M.push({x:t,y:r,lastX:0>t?.99:-.99,lastY:0>r?.99:-.99,start:+new Date}),!C){var l=e===document.body,u=function(){for(var o=+new Date,n=0,i=0,c=0;c=g.animationTime,p=f?1:d/g.animationTime;g.pulseAlgorithm&&(p=h(p));var m=s.x*p-s.lastX>>0,w=s.y*p-s.lastY>>0;n+=m,i+=w,s.lastX+=m,s.lastY+=w,f&&(M.splice(c,1),c--)}l?window.scrollBy(n,i):(n&&(e.scrollLeft+=n),i&&(e.scrollTop+=i)),t||r||(M=[]),M.length?E(u,e,a/g.frameRate+1):C=!1};E(u,e,0),C=!0}}function a(e){S||t();var a=e.target,o=l(a);if(!o||e.defaultPrevented||s(w,"embed")||s(a,"embed")&&/\.pdf/i.test(a.src))return!0;var n=e.wheelDeltaX||0,i=e.wheelDeltaY||0;return n||i||(i=e.wheelDelta||0),!g.touchpadSupport&&f(i)?!0:(Math.abs(n)>1.2&&(n*=g.stepSize/120),Math.abs(i)>1.2&&(i*=g.stepSize/120),r(o,-n,-i),void e.preventDefault())}function o(e){var t=e.target,a=e.ctrlKey||e.altKey||e.metaKey||e.shiftKey&&e.keyCode!==H.spacebar;if(/input|textarea|select|embed/i.test(t.nodeName)||t.isContentEditable||e.defaultPrevented||a)return!0;if(s(t,"button")&&e.keyCode===H.spacebar)return!0;var o,n=0,i=0,u=l(w),c=u.clientHeight;switch(u==document.body&&(c=window.innerHeight),e.keyCode){case H.up:i=-g.arrowScroll;break;case H.down:i=g.arrowScroll;break;case H.spacebar:o=e.shiftKey?1:-1,i=-o*c*.9;break;case H.pageup:i=.9*-c;break;case H.pagedown:i=.9*c;break;case H.home:i=-u.scrollTop;break;case H.end:var d=u.scrollHeight-u.scrollTop-c;i=d>0?d+10:0;break;case H.left:n=-g.arrowScroll;break;case H.right:n=g.arrowScroll;break;default:return!0}r(u,n,i),e.preventDefault()}function n(e){w=e.target}function i(e,t){for(var r=e.length;r--;)z[N(e[r])]=t;return t}function l(e){var t=[],r=x.scrollHeight;do{var a=z[N(e)];if(a)return i(t,a);if(t.push(e),r===e.scrollHeight){if(!y||x.clientHeight+100?1:-1,t=t>0?1:-1,(k.x!==e||k.y!==t)&&(k.x=e,k.y=t,M=[],T=0)}function f(e){if(e){e=Math.abs(e),D.push(e),D.shift(),clearTimeout(A);var t=D[0]==D[1]&&D[1]==D[2],r=p(D[0],120)&&p(D[1],120)&&p(D[2],120);return!(t||r)}}function p(e,t){return Math.floor(e/t)==e/t}function m(e){var t,r,a;return e*=g.pulseScale,1>e?t=e-(1-Math.exp(-e)):(r=Math.exp(-1),e-=1,a=1-Math.exp(-e),t=r+a*(1-r)),t*g.pulseNormalize}function h(e){return e>=1?1:0>=e?0:(1==g.pulseNormalize&&(g.pulseNormalize/=m(1)),m(e))}var w,v={frameRate:150,animationTime:500,stepSize:150,pulseAlgorithm:!0,pulseScale:6,pulseNormalize:1,accelerationDelta:20,accelerationMax:1,keyboardSupport:!0,arrowScroll:50,touchpadSupport:!0,fixedBackground:!0,excluded:""},g=v,b=!1,y=!1,k={x:0,y:0},S=!1,x=document.documentElement,D=[120,120,120],H={left:37,up:38,right:39,down:40,spacebar:32,pageup:33,pagedown:34,end:35,home:36},g=v,M=[],C=!1,T=+new Date,z={};setInterval(function(){z={}},1e4);var A,N=function(){var e=0;return function(t){return t.uniqueID||(t.uniqueID=e++)}}(),E=function(){return window.requestAnimationFrame||window.webkitRequestAnimationFrame||function(e,t,r){window.setTimeout(e,r||1e3/60)}}(),K=/chrome/i.test(window.navigator.userAgent),L="onmousewheel"in document;L&&K&&(u("mousedown",n),u("mousewheel",a),u("load",t))}();
};
//SMOOTHSCROLL END-------------------------------------------------