(function ($) {
	"use strict";

	var windowOn = $(window);


	///////////////////////////////////////////////////
	// 01.  z-index to top
	var democol = $('.tpproduct__shop-item .col');
	democol.on({
		mouseenter: function () {
			$(this).siblings().stop().css('z-index', '-1');
		},
		mouseleave: function () {
			$(this).siblings().stop().css('z-index', '1');
		}
	});


	///////////////////////////////////////////////////
	// 02.  z-index to top
	var democol = $('.sidebar-product-hover .tpproduct');
	democol.on({
		mouseenter: function () {
			$(this).siblings().stop().css('z-index', '-1');
		},
		mouseleave: function () {
			$(this).siblings().stop().css('z-index', '1');
		}
	});

	
	////////////////////////////////////////////////////
	// 03. Swiper Js
	$('.cart-minus').on('click', function () {
		var $input = $(this).parent().find('input');
		var count = parseInt($input.val()) - 1;
		count = count < 1 ? 1 : count;
		$input.val(count);
		$input.change();
		return false;
	});

	$('.cart-plus').on('click', function () {
		var $input = $(this).parent().find('input');
		$input.val(parseInt($input.val()) + 1);
		$input.change();
		return false;
	});


	////////////////////////////////////////////////////
	// 04. Show Login Toggle Js
	$('#showlogin').on('click', function () {
		$('#checkout-login').slideToggle(900);
	});

	////////////////////////////////////////////////////
	// 05. Show Coupon Toggle Js
	$('#showcoupon').on('click', function () {
		$('#checkout_coupon').slideToggle(900);
	});

	////////////////////////////////////////////////////
	// 06. Create An Account Toggle Js
	$('#cbox').on('click', function () {
		$('#cbox_info').slideToggle(900);
	});

	////////////////////////////////////////////////////
	// 07. Shipping Box Toggle Js
	$('#ship-box').on('click', function () {
		$('#ship-box-info').slideToggle(1000);
	});

	
	///////////////////////////////////////////////////
	// 08.  Scroll to top
	windowOn.on('scroll', function () {
		var scroll = windowOn.scrollTop();
		if (scroll < 245) {
			$('.scroll-to-target').removeClass('open');

		} else {
			$('.scroll-to-target').addClass('open');
		}
	});


	///////////////////////////////////////////////////
	// 09. Scroll Up Js
	if ($('.scroll-to-target').length) {
		$(".scroll-to-target").on('click', function () {
		var target = $(this).attr('data-target');
		// animate
		$('html, body').animate({
			scrollTop: $(target).offset().top
		}, 1000);
	
		});
	}


	////////////////////////////////////////////////////
	// 10. Nice Select Js
	$('select').niceSelect();


	////////////////////////////////////////////////////
	// 11. Data CSS Js
	$("[data-background").each(function () {
		$(this).css("background-image", "url( " + $(this).attr("data-background") + "  )");
	});


	///////////////////////////////////////////////////
	// 12. Sticky Header Js
	windowOn.on('scroll', function () {
		var scroll = windowOn.scrollTop();
		if (scroll < 250) {
			$("#header-sticky").removeClass("header-sticky");
		} else {
			$("#header-sticky").addClass("header-sticky");
		}
	});


	///////////////////////////////////////////////////
	// 13. Sticky Header Js
	windowOn.on('scroll', function () {
		var scroll = windowOn.scrollTop();
		if (scroll < 250) {
			$("#header-sticky-2").removeClass("header-sticky");
		} else {
			$("#header-sticky-2").addClass("header-sticky");
		}
	});


	////////////////////////////////////////////////////
	// 14. Parallax pera
	if ($(".pera").length) {
	var pera = $('.pera').get(0);
	var parallaxInstance = new Parallax(pera);
	}
	if ($(".pera2").length) {
		var pera = $('.pera2').get(0);
		var parallaxInstance = new Parallax(pera);
	}
	if ($(".pera3").length) {
		var pera = $('.pera3').get(0);
		var parallaxInstance = new Parallax(pera);
	}
	if ($(".pera4").length) {
		var pera = $('.pera4').get(0);
		var parallaxInstance = new Parallax(pera);
	}
	if ($(".pera5").length) {
		var pera = $('.pera5').get(0);
		var parallaxInstance = new Parallax(pera);
	}
	if ($(".pera6").length) {
		var pera = $('.pera6').get(0);
		var parallaxInstance = new Parallax(pera);
	}


	////////////////////////////////////////////////////
	// 15. Header Search
	$(".header-search").on('click', function () {
		$(".search-popup-wrap").slideToggle();
		return false;
	});

	$(".search-close").on('click', function () {
		$(".search-popup-wrap").slideUp(500);
	});


	////////////////////////////////////////////////////
	// 16. Sidebar Js
	$(".tp-search-toggle").on("click", function () {
		$(".tp-sidebar-area").addClass("tp-searchbar-opened");
		$(".search-body-overlay").addClass("opened");
	});
	$(".tpsearchbar__close").on("click", function () {
		$(".tp-sidebar-area").removeClass("tp-searchbar-opened");
		$(".search-body-overlay").removeClass("opened");
	});
	$(".search-body-overlay").on("click", function () {
		$(".tp-sidebar-area").removeClass("tp-searchbar-opened");
		$(".search-body-overlay").removeClass("opened");
	});


	////////////////////////////////////////////////////
	// 17. Sidebar Js
	$(".tp-cart-toggle").on("click", function () {
		$(".tp-cart-info-area").addClass("tp-sidebar-opened");
		$(".cartbody-overlay").addClass("opened");
	});
	$(".tpcart__close").on("click", function () {
		$(".tp-cart-info-area").removeClass("tp-sidebar-opened");
		$(".cartbody-overlay").removeClass("opened");
	});
	$(".cartbody-overlay").on("click", function () {
		$(".tp-cart-info-area").removeClass("tp-sidebar-opened");
		$(".cartbody-overlay").removeClass("opened");
	});


	////////////////////////////////////////////////////
	// 18. Mobile Menu Js
	$('#mobile-menu').meanmenu({
		meanMenuContainer: '.mobile-menu',
		meanScreenWidth: "1199",
		meanExpand: ['<i class="fal fa-plus"></i>'],
	});


	////////////////////////////////////////////////////
	// 19. Sidebar Js
	$(".tp-menu-toggle").on("click", function () {
		$(".tpsideinfo").addClass("tp-sidebar-opened");
		$(".body-overlay").addClass("opened");
	});
	$(".tpsideinfo__close").on("click", function () {
		$(".tpsideinfo").removeClass("tp-sidebar-opened");
		$(".body-overlay").removeClass("opened");
	});
	$(".body-overlay").on("click", function () {
		$(".tpsideinfo").removeClass("tp-sidebar-opened");
		$(".body-overlay").removeClass("opened");
	});


	////////////////////////////////////////////////////
	// 20. Data Countdown Js
	$('[data-countdown]').each(function () {
		var $this = $(this),
			finalDate = $(this).data('countdown');
		$this.countdown(finalDate, function (event) {
			$this.html(event.strftime('<span class="cdown days"><span class="time-count">%-D</span> <p>Days</p></span> <span class="cdown hour"><span class="time-count">%-H</span> <p>Hour</p></span> <span class="cdown minutes"><span class="time-count">%M</span> <p>Minute</p></span> <span class="cdown second"> <span><span class="time-count">%S</span> <p>Second</p></span>'));
		});
	});

	///////////////////////////////////////////////////
	// 21. Magnific Js
	$(".popup-video").magnificPopup({
		type: "iframe",
	});


	////////////////////////////////////////////////////
	// 22. magnificPopup Js
	$('.popup-image').magnificPopup({
		type: 'image',
		gallery: {
			enabled: true
		}
	});

	////////////////////////////////////////////////////
	// 23. Slider Js
	var categoryswiper = new Swiper('.category-active', {
		// Optional parameters
		loop: false,
		slidesPerView: 8,
		spaceBetween: 20,
		autoplay: {
			delay: 3500,
			disableOnInteraction: true,
		},
		breakpoints: {
			'1400': {
				slidesPerView: 8,
			},
			'1200': {
				slidesPerView: 6,
			},
			'992': {
				slidesPerView: 5,
			},
			'768': {
				slidesPerView: 4,
			},
			'576': {
				slidesPerView: 3,
			},
			'0': {
				slidesPerView: 2,
			},
		},
	});


	////////////////////////////////////////////////////
	// 24. Slider Js
	var categoryswiper = new Swiper('.inner-category-active', {
		// Optional parameters
		loop: false,
		slidesPerView: 7,
		spaceBetween: 20,
		autoplay: {
			delay: 3500,
			disableOnInteraction: true,
		},
		breakpoints: {
			'1400': {
				slidesPerView: 7,
			},
			'1200': {
				slidesPerView: 6,
			},
			'992': {
				slidesPerView: 5,
			},
			'768': {
				slidesPerView: 4,
			},
			'576': {
				slidesPerView: 3,
			},
			'0': {
				slidesPerView: 2,
			},
		},
	});



	////////////////////////////////////////////////////
	// 25. Slider Js
	var categoryswiper = new Swiper('.inner-category-two', {
		// Optional parameters
		loop: false,
		slidesPerView: 9,
		spaceBetween: 20,
		autoplay: {
			delay: 3500,
			disableOnInteraction: true,
		},
		breakpoints: {
			'1400': {
				slidesPerView: 9,
			},
			'1200': {
				slidesPerView: 6,
			},
			'992': {
				slidesPerView: 5,
			},
			'768': {
				slidesPerView: 4,
			},
			'576': {
				slidesPerView: 3,
			},
			'0': {
				slidesPerView: 2,
			},
		},
	});


	////////////////////////////////////////////////////
	// 26. Slider Js
	var categoryswiper = new Swiper('.inner-category-three', {
		// Optional parameters
		loop: false,
		slidesPerView: 9,
		spaceBetween: 20,
		autoplay: {
			delay: 3500,
			disableOnInteraction: true,
		},
		breakpoints: {
			'1400': {
				slidesPerView: 9,
			},
			'1200': {
				slidesPerView: 6,
			},
			'992': {
				slidesPerView: 5,
			},
			'768': {
				slidesPerView: 4,
			},
			'576': {
				slidesPerView: 3,
			},
			'0': {
				slidesPerView: 2,
			},
		},
	});


	////////////////////////////////////////////////////
	// 27. Slider Js
	var tpproductswiper = new Swiper('.tpproduct-active', {
		// Optional parameters
		loop: true,
		slidesPerView: 6,
		spaceBetween: 20,
		observer: true,
		observeParents: true,
		autoplay: {
			delay: 5000,
			disableOnInteraction: true,
		},
		breakpoints: {
			'1200': {
				slidesPerView: 6,
			},
			'992': {
				slidesPerView: 4,
			},
			'768': {
				slidesPerView: 3,
			},
			'576': {
				slidesPerView: 1,
			},
			'0': {
				slidesPerView: 1,
			},
		},
		// Navigation arrows
		navigation: {
			nextEl: '.tpproduct-btn__nxt',
			prevEl: '.tpproduct-btn__prv',
		},
	});


	////////////////////////////////////////////////////
	// 28. Slider Js
	var tpblogswiper = new Swiper('.tpblog-active', {
		// Optional parameters
		loop: false,
		slidesPerView: 4,
		spaceBetween: 20,
		autoplay: {
			delay: 5000,
			disableOnInteraction: true,
		},
		breakpoints: {
			'1200': {
				slidesPerView: 4,
			},
			'992': {
				slidesPerView: 3,
			},
			'768': {
				slidesPerView: 2,
			},
			'576': {
				slidesPerView: 2,
			},
			'0': {
				slidesPerView: 1,
			},
		},
	});


	////////////////////////////////////////////////////
	// 29. Slider Js
	var tpblogswiper = new Swiper('.tpblog-active-2', {
		// Optional parameters
		loop: false,
		slidesPerView: 3,
		spaceBetween: 20,
		autoplay: {
			delay: 5000,
			disableOnInteraction: true,
		},
		breakpoints: {
			'1200': {
				slidesPerView: 3,
			},
			'992': {
				slidesPerView: 3,
			},
			'768': {
				slidesPerView: 2,
			},
			'576': {
				slidesPerView: 2,
			},
			'0': {
				slidesPerView: 1,
			},
		},
	});


	
	////////////////////////////////////////////////////
	// 30. Slider Js
	var categoryswiper = new Swiper('.blog-active-3', {
		// Optional parameters
		loop: false,
		slidesPerView: 3,
		spaceBetween: 30,
		autoplay: {
			delay: 3500,
			disableOnInteraction: true,
		},
		breakpoints: {
			'1400': {
				slidesPerView: 3,
			},
			'1200': {
				slidesPerView: 3,
			},
			'992': {
				slidesPerView: 3,
			},
			'768': {
				slidesPerView: 2,
			},
			'576': {
				slidesPerView: 2,
			},
			'0': {
				slidesPerView: 1,
			},
		},
	});


	////////////////////////////////////////////////////
	// 31. Slider Js
	var sliderswiper = new Swiper('.slider-active', {
		// Optional parameters
		loop: true,
		slidesPerView: 1,
		fade: true,
		effect: "fade",
		autoplay: {
			delay: 3500,
			disableOnInteraction: true,
		},
		// Navigation arrows
		navigation: {
			nextEl: '.tpslider__arrow-prv',
			prevEl: '.tpslider__arrow-nxt',
		},
		pagination: {
			el: ".slider-pagination",
			clickable: true,
		},
	});


	////////////////////////////////////////////////////
	// 32. Slider Js
	var tpproductswiper = new Swiper('.tpproduct-active-2', {
		// Optional parameters
		loop: false,
		slidesPerView: 5,
		spaceBetween: 20,
		observer: true,
		observeParents: true,
		autoplay: {
			delay: 5000,
			disableOnInteraction: true,
		},
		breakpoints: {
			'1200': {
				slidesPerView: 5,
			},
			'992': {
				slidesPerView: 4,
			},
			'768': {
				slidesPerView: 2,
			},
			'576': {
				slidesPerView: 1,
			},
			'0': {
				slidesPerView: 1,
			},
		},
		// Navigation arrows
		navigation: {
			nextEl: '.tpproduct-arrow-left',
			prevEl: '.tpproduct-arrow-right',
		},
	});


	////////////////////////////////////////////////////
	// 33. Slider Js
	var tpproductswiper = new Swiper('.tpproduct-active-3', {
		// Optional parameters
		loop: false,
		slidesPerView: 5,
		spaceBetween: 20,
		observer: true,
		observeParents: true,
		autoplay: {
			delay: 5000,
			disableOnInteraction: true,
		},
		breakpoints: {
			'1200': {
				slidesPerView: 5,
			},
			'992': {
				slidesPerView: 4,
			},
			'768': {
				slidesPerView: 2,
			},
			'576': {
				slidesPerView: 1,
			},
			'0': {
				slidesPerView: 1,
			},
		},
		// Navigation arrows
		navigation: {
			nextEl: '.tpproduct-arrow-left-2',
			prevEl: '.tpproduct-arrow-right-2',
		},
	});

	////////////////////////////////////////////////////
	// 34. Slider Js
	var tpproductswiper = new Swiper('.tpproduct-active-4', {
		// Optional parameters
		loop: true,
		slidesPerView: 7,
		spaceBetween: 20,
		observer: true,
		observeParents: true,
		autoplay: {
			delay: 5000,
			disableOnInteraction: true,
		},
		breakpoints: {
			'1600': {
				slidesPerView: 7,
			},
			'1400': {
				slidesPerView: 5,
			},
			'1200': {
				slidesPerView: 5,
			},
			'992': {
				slidesPerView: 4,
			},
			'768': {
				slidesPerView: 2,
			},
			'576': {
				slidesPerView: 1,
			},
			'0': {
				slidesPerView: 1,
			},
		},
		// Navigation arrows
		navigation: {
			nextEl: '.tpproduct-btn__nxt4',
			prevEl: '.tpproduct-btn__prv4',
		},
	});

	////////////////////////////////////////////////////
	// 35. Slider Js
	var tpproductswiper = new Swiper('.tpproduct-active-5', {
		// Optional parameters
		loop: true,
		slidesPerView: 4,
		spaceBetween: 20,
		observer: true,
		observeParents: true,
		autoplay: {
			delay: 5000,
			disableOnInteraction: true,
		},
		breakpoints: {
			'1600': {
				slidesPerView: 4,
			},
			'1400': {
				slidesPerView: 4,
			},
			'1200': {
				slidesPerView: 4,
			},
			'992': {
				slidesPerView: 4,
			},
			'768': {
				slidesPerView: 3,
			},
			'576': {
				slidesPerView: 1,
			},
			'0': {
				slidesPerView: 1,
			},
		},
	});


	////////////////////////////////////////////////////
	// 36. Slider Js
	var tpproductswiper = new Swiper('.tpproduct-active-6', {
		// Optional parameters
		loop: true,
		slidesPerView: 1,
		spaceBetween: 20,
		observer: true,
		observeParents: true,
		autoplay: {
			delay: 5000,
			disableOnInteraction: true,
		},
		breakpoints: {
			'1600': {
				slidesPerView: 1,
			},
			'1400': {
				slidesPerView: 1,
			},
			'1200': {
				slidesPerView: 1,
			},
			'992': {
				slidesPerView: 2,
			},
			'768': {
				slidesPerView: 2,
			},
			'576': {
				slidesPerView: 1,
			},
			'0': {
				slidesPerView: 1,
			},
		},
	});


	////////////////////////////////////////////////////
	// 37. Slider Js
	var tpproductswiper = new Swiper('.highlights-active', {
		// Optional parameters
		loop: true,
		slidesPerView: 3,
		spaceBetween: 20,
		observer: true,
		observeParents: true,
		autoplay: {
			delay: 5000,
			disableOnInteraction: true,
		},
		breakpoints: {
			'1200': {
				slidesPerView: 3,
			},
			'992': {
				slidesPerView: 2,
			},
			'768': {
				slidesPerView: 2,
			},
			'576': {
				slidesPerView: 1,
			},
			'0': {
				slidesPerView: 1,
			},
		},
	});


	////////////////////////////////////////////////////
	// 38. Slider Js
	var tptestimonial = new Swiper('.tptestimonial-active', {
		// Optional parameters
		loop: true,
		slidesPerView: 1,
		observer: true,
		observeParents: true,
		fade: true,
		autoplay: {
			delay: 3500,
			disableOnInteraction: true,
		},
		breakpoints: {
			'1200': {
				slidesPerView: 1,
			},
			'992': {
				slidesPerView: 1,
			},
			'768': {
				slidesPerView: 1,
			},
			'576': {
				slidesPerView: 1,
			},
			'0': {
				slidesPerView: 1,
			},
		},
		// Navigation arrows
		navigation: {
			nextEl: '.tptestimonial-arrow-right',
			prevEl: '.tptestimonial-arrow-left',
		},
	});


	////////////////////////////////////////////////////
	// 39. Slider Js
	var tptestimonial = new Swiper('.product-details-active', {
		// Optional parameters
		loop: false,
		slidesPerView: 6,
		observer: true,
		observeParents: true,
		spaceBetween: 40,
		autoplay: {
			delay: 3500,
			disableOnInteraction: true,
		},
		breakpoints: {
			'1200': {
				slidesPerView: 6,
			},
			'992': {
				slidesPerView: 4,
			},
			'768': {
				slidesPerView: 3,
			},
			'576': {
				slidesPerView: 1,
			},
			'0': {
				slidesPerView: 1,
			},
		},
		// Navigation arrows
		navigation: {
			nextEl: '.tptestimonial-arrow-right',
			prevEl: '.tptestimonial-arrow-left',
		},
	});


	////////////////////////////////////////////////////
	// 40. Slider Js
	var tptestimonial = new Swiper('.tptestimonial-active2', {
		// Optional parameters
		loop: true,
		slidesPerView: 3,
		observer: true,
		observeParents: true,
		autoplay: {
			delay: 3500,
			disableOnInteraction: true,
		},
		breakpoints: {
			'1400': {
				slidesPerView: 3,
			},
			'1200': {
				slidesPerView: 3,
			},
			'992': {
				slidesPerView: 1,
			},
			'768': {
				slidesPerView: 1,
			},
			'576': {
				slidesPerView: 1,
			},
			'0': {
				slidesPerView: 1,
			},
		},
		// Navigation arrows
		navigation: {
			nextEl: '.tptestimonial__nxt',
			prevEl: '.tptestimonial__prv',
		},
	});


	////////////////////////////////////////////////////
	// 41. Slider Js
	var tptestimonial = new Swiper('.tptestimonial-active3', {
		// Optional parameters
		loop: true,
		slidesPerView: 3,
		observer: true,
		observeParents: true,
		spaceBetween: 30,
		autoplay: {
			delay: 3500,
			disableOnInteraction: true,
		},
		breakpoints: {
			'1400': {
				slidesPerView: 3,
			},
			'1200': {
				slidesPerView: 3,
			},
			'992': {
				slidesPerView: 2,
			},
			'768': {
				slidesPerView: 1,
			},
			'576': {
				slidesPerView: 1,
			},
			'0': {
				slidesPerView: 1,
			},
		},
		// Navigation arrows
		navigation: {
			nextEl: '.tptestimonial__nxt',
			prevEl: '.tptestimonial__prv',
		},
	});


	////////////////////////////////////////////////////
	// 42. Slider Js
	var tptestimonial = new Swiper('.tpinsta-active', {
		// Optional parameters
		loop: false,
		slidesPerView: 6,
		spaceBetween: 10,
		observer: true,
		observeParents: true,
		autoplay: {
			delay: 3500,
			disableOnInteraction: true,
		},
		breakpoints: {
			'1400': {
				slidesPerView: 6,
			},
			'1200': {
				slidesPerView: 5,
			},
			'992': {
				slidesPerView: 4,
			},
			'768': {
				slidesPerView: 3,
			},
			'576': {
				slidesPerView: 2,
			},
			'0': {
				slidesPerView: 1,
			},
		},
	});


	////////////////////////////////////////////////////
	// 43. Slider Js
	var tptestimonial = new Swiper('.tp-slider6', {
		// Optional parameters
		loop: true,
		slidesPerView: 1,
		observer: true,
		observeParents: true,
		fade: true,
		effect: "fade",
		autoplay: {
			delay: 3500,
			disableOnInteraction: true,
		},
		// Navigation arrows
		navigation: {
			nextEl: '.tpslider__nxt6',
			prevEl: '.tpslider__prv6',
		},
		pagination: {
			el: ".slider-pagination-6",
			clickable: true,
		},
	});

	
	////////////////////////////////////////////////////
	// 44. Price Filter Js
	if ($("#slider-range").length) {

		$("#slider-range").slider({

			range: true,

			min: 0,

			max: 1000,

			values: [0, 500],

			slide: function (event, ui) {

				$("#amount").val("$" + ui.values[0] + " - $" + ui.values[1]);

			}

		});

		$("#amount").val("$" + $("#slider-range").slider("values", 0) +

			" - $" + $("#slider-range").slider("values", 1));

		$('#filter-btn').on('click', function () {

			$('.filter-widget').slideToggle(1000);

		});

	}
	

})(jQuery);