// Menus 
function immigration_consulting_menu_open_nav() {
  jQuery(".sidenav").addClass('show');
}
function immigration_consulting_menu_close_nav() {
  jQuery(".sidenav").removeClass('show');
}

( function( window, document ) {
  function immigration_consulting_keepFocusInMenu() {
    document.addEventListener( 'keydown', function( e ) {
      const immigration_consulting_nav = document.querySelector( '.sidenav' );

      if ( ! immigration_consulting_nav || ! immigration_consulting_nav.classList.contains( 'show' ) ) {
        return;
      }
      const elements = [...immigration_consulting_nav.querySelectorAll( 'input, a, button' )],
        immigration_consulting_lastEl = elements[ elements.length - 1 ],
        immigration_consulting_firstEl = elements[0],
        immigration_consulting_activeEl = document.activeElement,
        tabKey = e.keyCode === 9,
        shiftKey = e.shiftKey;

      if ( ! shiftKey && tabKey && immigration_consulting_lastEl === immigration_consulting_activeEl ) {
        e.preventDefault();
        immigration_consulting_firstEl.focus();
      }

      if ( shiftKey && tabKey && immigration_consulting_firstEl === immigration_consulting_activeEl ) {
        e.preventDefault();
        immigration_consulting_lastEl.focus();
      }
    } );
  }
  immigration_consulting_keepFocusInMenu();
} )( window, document );

jQuery('document').ready(function($){
	// preloader
  setTimeout(function () {
		jQuery("#preloader").fadeOut("slow");
  },1000);

  // Sticky Header
  $(window).scroll(function(){
		var sticky = $('.header-sticky'),
			scroll = $(window).scrollTop();

		if (scroll >= 100) sticky.addClass('header-fixed');
		else sticky.removeClass('header-fixed');
	});
});

/*sticky sidebar*/
window.addEventListener('scroll', function() {
  var sticky = document.querySelector('.sidebar-sticky');
  if (!sticky) return;

  var scrollTop = window.scrollY || document.documentElement.scrollTop;
  var windowHeight = window.innerHeight;
  var documentHeight = document.documentElement.scrollHeight;

  var isBottom = scrollTop + windowHeight >= documentHeight-100;

  if (scrollTop >= 100 && !isBottom) {
    sticky.classList.add('sidebar-fixed');
  } else {
    sticky.classList.remove('sidebar-fixed');
  }
});
 
/*sticky copyright*/
window.addEventListener('scroll', function() {
  var sticky = document.querySelector('.copyright-sticky');
  if (!sticky) return;

  var scrollTop = window.scrollY || document.documentElement.scrollTop;
  var windowHeight = window.innerHeight;
  var documentHeight = document.documentElement.scrollHeight;

  var isBottom = scrollTop + windowHeight >= documentHeight-100;

  if (scrollTop >= 100 && !isBottom) {
    sticky.classList.add('copyright-fixed');
  } else {
    sticky.classList.remove('copyright-fixed');
  }
});

// Scroller
jQuery(document).ready(function () {
	jQuery(window).scroll(function () {
    if (jQuery(this).scrollTop() > 100) {
      jQuery('.scrollup i').fadeIn();
    } else {
      jQuery('.scrollup i').fadeOut();
    }
	});
	jQuery('.scrollup i').click(function () {
    jQuery("html, body").animate({
      scrollTop: 0
    }, 600);
    return false;
	});
});

// search
jQuery(document).ready(function () {
  function immigration_consulting_search_loop_focus(element) {
    var immigration_consulting_focus = element.find('select, input, textarea, button, a[href]');
    var immigration_consulting_firstFocus = immigration_consulting_focus[0];  
    var immigration_consulting_lastFocus = immigration_consulting_focus[immigration_consulting_focus.length - 1];
    var KEYCODE_TAB = 9;

    element.on('keydown', function immigration_consulting_search_loop_focus(e) {
      var isTabPressed = (e.key === 'Tab' || e.keyCode === KEYCODE_TAB);

      if (!isTabPressed) { 
        return; 
      }

      if ( e.shiftKey ) /* shift + tab */ {
        if (document.activeElement === immigration_consulting_firstFocus) {
          immigration_consulting_lastFocus.focus();
            e.preventDefault();
          }
        } else /* tab */ {
        if (document.activeElement === immigration_consulting_lastFocus) {
          immigration_consulting_firstFocus.focus();
            e.preventDefault();
          }
        }
    });
  }
  jQuery('.search-box span a').click(function(){
      jQuery(".serach_outer").slideDown(1000);
      immigration_consulting_search_loop_focus(jQuery('.serach_outer'));
  });

  jQuery('.closepop a').click(function(){
      jQuery(".serach_outer").slideUp(1000);
  });
});

/*sticky sidebar*/
window.addEventListener('scroll', function() {
  var sticky = document.querySelector('.sidebar-sticky');
  if (!sticky) return;

  var scrollTop = window.scrollY || document.documentElement.scrollTop;
  var windowHeight = window.innerHeight;
  var documentHeight = document.documentElement.scrollHeight;

  var isBottom = scrollTop + windowHeight >= documentHeight-100;

  if (scrollTop >= 100 && !isBottom) {
    sticky.classList.add('sidebar-fixed');
  } else {
    sticky.classList.remove('sidebar-fixed');
  }
});
/* Progress Bar */
document.addEventListener("DOMContentLoaded", function () {
    const immigration_consulting_progressBar =
        document.getElementById("immigration_consulting_elemento_progress_bar");
    if (!immigration_consulting_progressBar) return;
    window.addEventListener("scroll", function () {
        const immigration_consulting_scrollTop =
            document.documentElement.scrollTop || document.body.scrollTop;
        const immigration_consulting_height =
            document.documentElement.scrollHeight -
            document.documentElement.clientHeight;
        const immigration_consulting_scrolled =
            (immigration_consulting_scrollTop / immigration_consulting_height) * 100;
        immigration_consulting_progressBar.style.width =
            immigration_consulting_scrolled + "%";
    });
});