/* include fonts */
@font-face {
	font-family: 'ysm-fontello';
	src: url('../../fonts/fontello.eot?45550639');
	src: url('../../fonts/fontello.eot?45550639#iefix') format('embedded-opentype'),
	url('../../fonts/fontello.woff2?45550639') format('woff2'),
	url('../../fonts/fontello.woff?45550639') format('woff'),
	url('../../fonts/fontello.ttf?45550639') format('truetype'),
	url('../../fonts/fontello.svg?45550639#fontello') format('svg');
	font-weight: normal;
	font-style: normal;
}

/* search input */
.ysm_search_widget .ysm-active,
.widget_product_search .ysm-active,
.widget_search .ysm-active {
	overflow: visible;
}

.ysm-smart-search-input-holder {
	width: 100%;
	position: relative;
	display: block;
	z-index: 2;
}

.ysm-search-widget .screen-reader-text {
	display: none;
}

.ysm-search-widget .search-field[type="search"] {
	font-style: italic;
	font-size: 14px;
	text-indent: 3px;
	display: inline-block;
	padding: 10px 40px 10px 10px;
	margin: 0;
	width: 100% !important;
	height: initial;
	outline: none;
	border: 1px solid #d6d6d6;
	background-color: transparent;
	background-position: 50% 50% !important;
	color: #aeaeae;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	-o-box-shadow: none;
	box-shadow: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;

	@media (max-width: 767px) {
		font-size: 16px;
	}
}

.ysm-search-widget .search-field::-webkit-input-placeholder {color: inherit;}
.ysm-search-widget .search-field::-moz-placeholder          {color: inherit;}/* Firefox 19+ */
.ysm-search-widget .search-field:-moz-placeholder           {color: inherit;}/* Firefox 18- */
.ysm-search-widget .search-field:-ms-input-placeholder      {color: inherit;}

.ysm-search-widget .search-field:focus::-webkit-input-placeholder {color: transparent;}
.ysm-search-widget .search-field:focus::-moz-placeholder          {color: transparent;}/* Firefox 19+ */
.ysm-search-widget .search-field:focus:-moz-placeholder           {color: transparent;}/* Firefox 18- */
.ysm-search-widget .search-field:focus:-ms-input-placeholder      {color: transparent;}

.ysm-search-widget.bordered .search-field {
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-o-border-radius: 10px;
	border-radius: 10px;
}

.ysm-search-widget .search-submit {
	display: block;
	position: absolute;
	top: 1px;
	right: 1px;
	bottom: 1px;
	padding: 0;
	margin: 0;
	width: 40px;
	text-align: center;
	font-size: 0;
	color: #aaa;
	background: none;
	border: none;
	cursor: pointer;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	-o-box-shadow: none;
	box-shadow: none;
	outline: none;
}

.ysm-search-widget .search-submit:before {
	display: block;
	color: inherit;
	text-align: center;
	font-size: 17px;
	font-family: 'ysm-fontello';
	line-height: 38px;
	content: '\e800';
	-webkit-transition: color .25s ease;
	transition: color .25s ease;
}

.smart-search-post {
	padding: 12px 8px;
	display: block;
	color: #333;
}

.smart-search-post:focus {
	outline: none;
}

.smart-search-post-icon {
	max-width: 100%;
	margin-bottom: 10px;
	float: left;
	margin-right: 10px;
	line-height: 1;
}

.smart-search-post-category {
	text-transform: uppercase;
	font-size: 10px;
	margin-bottom: 3px;
}

.smart-search-post-title,
.smart-search-post-excerpt {
	margin: 0 0 7px;
	padding: 0;
	color: #333;
	line-height: 1.25em;
	word-wrap: normal;
}

.smart-search-post-title {
	font-size: 16px;
	margin-bottom: 20px;

	strong {
		display: inline-block;
	}
}

.smart-search-post-excerpt {
	margin-top: 20px;
	font-size: 12px;
}

.smart-search-post-date {
	font-size: 12px;
	color: #333;
}

.smart-search-post-price-holder {
	overflow: hidden;
}

.smart-search-post-price {
	float: left;
	font-size: 16px;
}

.smart-search-post-sku {
	float: right;
	font-size: 12px;
	line-height: 24px;
}


.smart-search-add_to_cart-holder {
	float: right;
	margin: 0 12px;
	padding-bottom: 10px;
}

/* Labels */
.smart-search-featured-label,
.smart-search-out-of-stock-label,
.smart-search-sale-label {
	padding: 5px;
	margin-top: 5px;
	color: #fff;
	z-index: 99;
	font-size: 12px;
	line-height: 1em;
}

.smart-search-sale-label {
	background-color: #FF1C21;
	position: absolute;
	top: 0px;
	left: 0px;
}

.smart-search-featured-label {
	background-color: #0014ff;
	position: absolute;
	top: 0px;
	right: 0px;
}

.smart-search-out-of-stock-label {
	background-color: #808085;
	margin-top: 10px;
	display: inline-block;
}

/* post status */
.smart-search-featured .smart-search-post-title,
.smart-search-featured.smart-search-no-thumbnail .smart-search-post-title,
.smart-search-on_sale.smart-search-no-thumbnail .smart-search-post-title {
	margin-top: 15px;
}

.smart-search-popup {
	position: absolute;
	border: 1px solid #d6d6d6;
	background: #fff;
	z-index: 9999;
	box-sizing: border-box;
	overflow: hidden;

	&.has-viewall-button {

	}


}
.smart-search-view-all-holder {
	width: 100%;
	z-index: 9999;

	a {
		display: block !important;
		height: 40px;
		line-height: 40px;
		background: #ccc;
		text-align: center;
		text-decoration: none;
	}
}
.smart-search-results {
	position : relative;
	overflow: hidden;
	max-width: 100%;
	width: 100%;

	.smart-search-results-inner {
		position : absolute;
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
		top: 0;
		left: 0;
		bottom: 0;
		right: 0;
	}

	&.smart-search-results--column_mod .smart-search-results-inner {
		left: 200px;

		@media (max-width: 767px) {
			left: 0;
		}
	}

	.added_to_cart {
		display: none !important;
	}

	.nano-pane {
		background : rgba(0,0,0,.25);
		position   : absolute;
		width      : 10px;
		right      : 0;
		top        : 0;
		bottom     : 0;
		visibility : hidden\9; /* Target only IE7 and IE8 with this hack */
		opacity    : .01;
		-webkit-transition    : .2s;
		-moz-transition       : .2s;
		-o-transition         : .2s;
		transition            : .2s;
		-moz-border-radius    : 5px;
		-webkit-border-radius : 5px;
		border-radius         : 5px;
		z-index: 9999;

		.nano-slider {
			background: #444;
			background: rgba(0,0,0,.5);
			position              : relative;
			margin                : 0 1px;
			-moz-border-radius    : 3px;
			-webkit-border-radius : 3px;
			border-radius         : 3px;
		}
	}

	.smart-search-suggestions {
		display: grid !important;
		max-width: 100% !important;
		width: 100% !important;
		box-sizing: border-box;

		&::-webkit-scrollbar {
			display: none;
		}

		.autocomplete-suggestion {
			-webkit-box-sizing: border-box;
			-moz-box-sizing: border-box;
			box-sizing: border-box;
			padding: 5px;
			background: transparent;
			position: relative;

			&.autocomplete-selected {
				opacity: 0.75;
				background: #f6f6f6;
			}

			.smart-search-post-icon > img {
				width: 100%;
				height: auto;
			}
		}

		.autocomplete-suggestion > a {
			text-decoration: none;
		}
	}

	&[data-columns="1"] {

		.smart-search-suggestions {
			display: block !important;
			padding: 0;

			.autocomplete-suggestion {
				border-bottom: 1px solid #d6d6d6;
				padding: 5px;

				&:last-child {
					border-bottom: none;
				}
			}
		}
	}

	&[data-columns="2"] {

		.smart-search-suggestions {
			grid-template-columns: 1fr 1fr;
			grid-gap: 40px 30px;
			padding: 15px;
		}

		.smart-search-post-title {
			font-size: 18px;
		}
	}

	&[data-columns="3"] {

		.smart-search-suggestions {
			grid-template-columns: 1fr 1fr 1fr;
			grid-gap: 40px 30px;
			padding: 15px;
		}

		.smart-search-post-title {
			font-size: 18px;
		}
	}

	&[data-columns="4"] {

		.smart-search-suggestions {
			grid-template-columns: 1fr 1fr 1fr 1fr;
			grid-gap: 40px 30px;
			padding: 15px;
		}

		.smart-search-post-title {

		}
	}

	&[data-columns="5"] {

		.smart-search-suggestions {
			grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
			grid-gap: 40px 30px;
			padding: 15px;
		}

		.smart-search-post-title {

		}
	}

	&:hover > .nano-pane,
	.nano-pane.active,
	.nano-pane.flashed {
		opacity    : 0.99;
	}

	&.has-scrollbar {
		padding-right: 10px;

		&.smart-search-firefox {
			.autocomplete-suggestion {
				border-left: 1px solid #d6d6d6;
				border-right: 1px solid #d6d6d6;
			}

			.smart-search-suggestions {
				border-left: none;
				border-right: none;
				width: calc(100% + 17px) !important;
				right: 0 !important;
			}
		}

		.smart-search-suggestions {
			position      : absolute;
			overflow    : auto;
			overflow-x  : hidden;
			-ms-overflow-style: none;
		}
	}

}

.smart-search-clear {
	clear: both;
}

@media only screen and (max-width: 1024px) {
	[data-columns="2"],
	[data-columns="3"],
	[data-columns="4"],
	[data-columns="5"] {
		grid-template-columns: 1fr 1fr;
		grid-gap: 20px 30px;
	}
}

@media only screen and (max-width: 768px) {
	.smart-search-suggestions {
		display: block !important;
	}
}

.woocommerce-loop-product__title > strong {
	display: inline !important;
}

.ysm-hide {
	.smart-search-popup {
		display: none !important;
	}
}

.sws-no-results {
	.smart-search-results {
		height: 40px !important;

		max-height: 40px !important;

		.smart-search-suggestions {
			display: block !important;
		}
	}

	[data-columns="2"],
	[data-columns="3"],
	[data-columns="4"],
	[data-columns="5"] {
		.smart-search-suggestions {
			padding: 0 !important;
		}
	}

	.smart-search-view-all-holder {
		display: none !important;
	}

	.autocomplete-no-suggestion {
		line-height: 40px;
		text-align: center;
	}
}

.ysm-search-widget input[type="search"]::-webkit-search-decoration,
.ysm-search-widget input[type="search"]::-webkit-search-cancel-button,
.ysm-search-widget input[type="search"]::-webkit-search-results-button,
.ysm-search-widget input[type="search"]::-webkit-search-results-decoration {
	-webkit-appearance: none;
	display: none;
}


.smart-search-fullscreen {
	display: none;
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;

	&.ssf-active {
		display: block;
		z-index: 9999;
	}

	&-backdrop {
		display: block !important;
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: -1;
		background-color: #000;
		opacity: 0;
		transition: opacity .4s cubic-bezier(0.25, 0.46, 0.45, 0.94);


		.ssf-animated & {
			opacity: 0.75;
		}

	}

	&-inner {
		background-color: #fff;
		z-index: 1;
		border-radius: 5px;
		padding: 20px;
		margin: 40px 20px;
		position: relative;
		top: 0;
	}

	.smart-search-view-all-holder {
		margin-top: 20px;
	}
}

.ssf-search {
	&-input {
		order: 2;
		width: 100%;
		height: 40px;
		border: none;
		border-bottom: 1px solid #d6d6d6;
		appearance: none;
		transition: border-color .2s ease;

		&:focus,
		&:active {
			outline: none;
			border-bottom-color: #2727ce;

			+ .ssf-search-icon-search {
				color: #2727ce;
			}
		}
	}
	&-icon-search {
		margin-right: 12px;
		order: 1;
	}
	&-icon-close {
		margin-left: 12px;
		order: 3;
		cursor: pointer;
	}
}
.smart-search-input-wrapper {
	display: flex;
	align-items: flex-end;

	position: relative;

}

.smart-search-fullscreen-results {
	.ysm-hide & {
		display: none;
	}
}

.sws-search-recent-list,
.smart-search-keywords-list{
	display: flex !important;
	align-items: center;
	flex-wrap: wrap;
	list-style: none;
	padding: 0;
	margin: 0;
}

.sws-search-recent-wrapper,
.smart-search-keywords-wrapper{
	display: flex !important;
	align-items: center;
	flex-wrap: wrap;
	width: 100%;

	margin: 15px 0;

	.ysm-hide & {
		//margin-bottom: 5px;
	}

	.smart-search-popup & {
		padding-left: 12px;
	}

	&--hidden_mod,
	&--hidden_by_keywords{
		display: none !important;
	}
}

.hidden-searches .sws-search-recent-wrapper {
	display: none !important;
}

.sws-search-recent-title,
.smart-search-keywords-title{
	margin: 0 20px 0 0 !important;
	font-size: 14px !important;
}

.sws-search-recent-list,
.smart-search-keywords-list{
	margin: 0 !important;
	padding: 0 !important;
}

.sws-search-recent-list-item {
	display: flex;
	align-items: center;
	border: 1px solid #d6d6d6;
	padding: 2px 0;
	margin: 5px 0;
	border-radius: 20px;
	font-size: 13px;
	overflow: hidden;
	color: #222;

	.sws-search-recent-wrapper & {
		padding-right: 8px;
	}

	cursor: pointer;

	&-delete {
		cursor: pointer;
		width: 14px;
		height: 14px;
		transition: color .2s ease;

		svg {
			display: block;
		}

		&:hover {
			color: #2727ce;
		}
	}

	&-trigger {
		padding: 4px 12px 4px 12px;
		margin: 0;
		transition: color .2s ease;

		.sws-search-recent-wrapper & {
			padding-right: 6px;
		}

		&:hover {
			color: #2727ce;
		}
	}


	&:not(:last-child) {
		margin-right: 12px;
	}
}

.smart-search-popup-backdrop {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;

	.ysm-hide & {
		display: none;
	}
}

// Divi theme fix
.ysm-widget-opened .et_builder_inner_content{
	z-index: 99999;
}

.ssf-search-input {
	background-position: 50% 50% !important;

	@media (max-width: 767px) {
		font-size: 16px !important;
	}
}


.smart-search-results-main.sws-hiding-results {
	.smart-search-results,
	.smart-search-view-all-holder,
	.sws-selected-categories {
		display: none;
	}
}

.smart-search-results-main--column_mod {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	
	@media (max-width: 767px) {
		.sws-search-recent-wrapper {
			order: 1;
		}
		.smart-search-keywords-wrapper {
			order: 2;
		}
		.sws-sidebar {
			order: 3;
		}
		.smart-search-results {
			order: 4;
		}
		.smart-search-view-all-holder {
			order: 5;
		}
	}
}

.ysm-hide .smart-search-results-main--on_open_mod .sws-selected-categories {
	display: block;
}

.smart-search-results-main--hidden_mobile_mod {
	.sws-selected-categories  {
		@media (max-width: 767px) {
			display: none !important;
		}
	}
}

.sws-sidebar-widget {
	display: flex;
	flex-direction: column;
}

.sws-sidebar--first-slot:empty,
.sws-sidebar--second-slot:empty {
	display: none;
}

.sws-sidebar-widget .sws-selected-categories:not(:last-child) {
	order: 1;
}

.sws-sidebar-widget .sws-promo-banner:not(:last-child) {
	order: 2;
	margin-top: 20px;
}

.sws-sidebar-widget:not(:empty) {
	margin-top: 20px;
}

.sws-sidebar-widget:first-child {
	margin-top: 0;
}



.smart-search-results-main--column_mod .smart-search-results,
.smart-search-results-main--column_mod .sws-recent-products-wrapper{
	width: calc(100% - 400px);

	@media (max-width: 767px) {
		width: 100%;
	}
}

.smart-search-results-main--widgets-on-left--mod .sws-sidebar--right-mod {
	display: none !important;
}

.smart-search-results-main--widgets-on-right--mod .sws-sidebar--left-mod {
	display: none !important;
}

.smart-search-results-main--widgets-on-left--mod .sws-recent-products-wrapper,
.smart-search-results-main--widgets-on-right--mod .sws-recent-products-wrapper {
	width: calc(100% - 200px);

	@media (max-width: 767px) {
		width: 100%;
	}
}

.smart-search-results-main--widgets-on-left--mod .smart-search-results,
.smart-search-results-main--widgets-on-right--mod .smart-search-results {

	@media (min-width: 768px) {
		width: calc(100% - 200px);
	}
}

.ysm-hide .sws-selected-categories {
	display: none;
}

.sws-sidebar {
	box-sizing: border-box;
}

.sws-sidebar:not(:empty) {
	width: 200px;

	@media (max-width: 767px) {
		width: 100%;
		padding-left: 0 !important;
	}

}

.sws-sidebar-holder {
	width: calc(100% - 400px);
	height: 1px;

	@media (max-width: 767px) {
		display: none;
	}
}



.sws-sidebar--left-mod:not(:empty) {
	padding-right: 20px;
}

.sws-sidebar--right-mod:not(:empty) {
	padding-left: 20px;
}

.sws-selected-categories {
	width: 100%;

	&-title {
		margin-bottom: 10px !important;
		flex-shrink: 0;
		font-size: 14px !important;
	}

	&-list {
		margin: 0 !important;
		padding: 0 !important;
	}

	&-item {
		list-style: none;

		&:not(:last-child) {
			margin-bottom: 5px;
		}
	}

	&-link {
		font-size: 12px;
		color: #000;
	}

	@media (max-width: 767px) {
		width: 100%;

		&-list {
			display: flex;
			column-gap: 10px;
			flex-wrap: wrap;
		}
	}
}

.sws-promo-banner {
	img {
		max-width: 100%;
		height: auto;
	}

	@media (max-width: 767px) {
		&.sws-promo-banner--hidden_mobile_mod {
			display: none !important;
		}
	}
}

.ysm-hide .sws-promo-banner {
	display: none;
}

.ysm-hide .smart-search-results-main--banner_on_open_mod .sws-promo-banner {
	display: block;
}

@media (max-width: 767px) {
	.smart-search-results-main--banner_on_open_mod .sws-promo-banner {
		display: none;
	}

	.smart-search-results[data-columns="2"] .smart-search-suggestions {
		padding: 0;
	}
}

.sws-recent-products-wrapper {
	width: 100%;
	position: relative;
	padding: 0 20px;
	box-sizing: border-box;

	@media (max-width: 767px) {
		width: 100%;
		order: 5;
		margin-top: 20px;

		&.sws-recent-products-wrapper--hidden_mobile_mod {
			display: none !important;
		}
	}
}

.sws-no-results .sws-recent-products-wrapper {
	display: none !important;
}

.sws-recent-products-heading {
	margin-bottom: 10px !important;
	margin-left: 5px !important;
	font-size: 14px !important;
}

.sws-selected-products-item {
	border: 1px solid #ddd;
	border-radius: 8px;
	padding: 15px;
	margin: 0 10px;

	&:hover {
		border-color: #444;
	}
}

.sws-selected-products-category {
	margin-bottom: 5px;
	line-height: 1;
}

.sws-selected-products-category a {
	font-size: 13px !important;
	text-decoration: none !important;
	color: #000;
	opacity: 0.8;
	transition: 0.2s ease;
}

.sws-selected-products-category a:hover {
	opacity: 0.6;
}

.sws-selected-products-title {
	display: block;
	margin-bottom: 10px !important;
	min-height: 36px;
	padding: 0 !important;
	font-size: 16px !important;
	line-height: 1.1 !important;

	color: #000 !important;
	text-decoration: none !important;
}

.sws-recent-products .swiper-slide {
	width: 20%;

	@media (max-width: 1200px) {
		width: 25%;
	}

	@media (max-width: 960px) {
		width: 50%;
	}

	@media (max-width: 560px) {
		width: 100%;
	}
}

.sws-selected-products-picture {
	display: block;
	margin: 0 auto 10px !important;
	text-align: center;

	img {
		max-width: 100% !important;
		object-fit: contain !important;
		height: auto;
	}
}

.sws-selected-products-meta {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}

.sws-product-rating {
	width: 100%;
}

.sws-selected-products-item .button{
	padding: 8px 10px !important;
	text-decoration: none !important;
}

.sws-selected-products-item .button img{
	width:  20px;
}

.sws-recent-products-wrapper .swiper-button-next:after,
.sws-recent-products-wrapper .swiper-button-prev:after {
	font-size: 30px !important;
	color: #000 !important;
}

.sws-recent-products-wrapper .swiper-button-next {
	right: 0 !important;
}

.sws-recent-products-wrapper .swiper-button-prev {
	left: 0 !important;
}

.smart-search-results-hidden {
	max-width: 0 !important;
	max-height: 0;
	padding-right: 0 !important;
}

.sws-recent-products-wrapper .wc-forward {
	display: none;
}

.smart-search-add_to_cart-holder a.button {
	font-size: 0.8rem !important;
}
.product_type_variable .smart-search-add_to_cart-holder a.button:after{
	content:"";
	display: inline-block;
	vertical-align: middle;
	width: 24px;
	height: 10px;
	margin-left: 3px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	will-change: transform;
	transition: all .2s ease;
	background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAQCAQAAACmLXceAAAAQUlEQVR42mPAB/5v/3/mvxgD8QCo/P//yyRo+S/6/xJQy/X/ksNOy/+D/4kFp0nWQKqTJIa9cqCGs6QmvpOYyRsAkwK7iR4cwaUAAAAASUVORK5CYII=")
}

.product_type_variable .smart-search-add_to_cart-holder a.button:hover:after{
	transform: translateX(3px);
}

.sws-loader-image {
	display: none !important;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	max-width: 100%;
	max-height: 75%;
	width: auto;
	&--visible {
		display: block !important;
	}

}