.sidemenu-right{
	left:0;
}
.mobile-menu-visible #headerwrap{
	height:100vh;
	top:0;
	color:#fff;
	position:fixed;
	min-height:300px
}
.transparent-header .fixed-header,
.mobile-menu-visible #headerwrap{
	background-color:rgba(82,47,154,.85);
	-webkit-backdrop-filter:blur(10px);
	backdrop-filter:blur(10px)
}
#header{
	padding:1.225em 0
}
#slide-cart{
	font-size:1em; /* reset #header font-size */
}
.mobile-menu-visible #header,
.mobile-menu-visible #header a,
.mobile-menu-visible #site-description,
.mobile-menu-visible .sidemenu{
	color:#fff
}
.transparent-header #headerwrap .themify-widget-menu{
    color:inherit
}
#menu-icon{
    padding:10px
}
#site-logo{
	margin:10px 10px 10px 0;
	display:inline-block;
	vertical-align:middle
}
#site-logo,
#site-logo a{
	transition:none
}
#site-description{
	display:inline-block;
	margin:10px 0;
	vertical-align:middle
}
.social-links .icon-medium i{
	background-color:transparent;
	font-size:1.2em;
	padding:.3em;
}
.search-button{
	font-size:1.2em;
}
#headerwrap #searchform #s{
	background-color:transparent;
	padding: 10px 20px;
	height: 40px;
	right:0;
}
#headerwrap #searchform .tf_fa{
	background-color:transparent;
	color:#fff;
	border:1px solid #fff;
	padding: 9px;
	font-size: 18px;
}
#headerwrap #searchform #s:focus,
#headerwrap #searchform #s:hover{
	background-color:#fff;
	color:#000;
	width:240px
}
#headerwrap .header-icons{
	position:absolute;
	display:block;
	top:50%;
	right:2%;
	text-decoration:none;
	color:inherit;
	font-size:1.25em;
	z-index:2;
	transform:translateY(-50%)
}
.slide-cart-visible #headerwrap .header-icons,
.mobile-menu-visible #headerwrap .header-icons{
	z-index:2!important;
	transform:none;
	top:24px;
	right:26px
}
.mobile-menu-visible .menu-icon-inner{
	border:none;
	transform-origin:center;
	width:1.2em;
	height:1.2em
}
.mobile-menu-visible .menu-icon-inner:before{
	transform:rotateZ(-45deg);
	top:50%
}
.mobile-menu-visible .menu-icon-inner:after{
	transform:rotateZ(45deg);
	top:50%
}
.sidemenu{
	padding:50px 25px;
	display:none;
	position:fixed;
	left:0;
	top:0;
	width:100%;
	height:100%;
	overflow-y:auto;
	-webkit-overflow-scrolling:touch;
	z-index:11111;
	color:#000;
	transition:left .2s ease-in-out,right .2s ease-in-out,top .2s ease-in-out,bottom .2s ease-in-out,width .2s ease-in-out,transform .2s ease-in-out,opacity .2s ease-in-out;
	font-size:1.2em
}
#mobile-menu.sidemenu-on{
	display:block;
	text-align:center;
    padding:0;
	width:100%
}
.mobile-menu-visible .header-bar{
	position:relative;
	display:inline-block
}
.mobile-menu-visible #mobile-menu.sidemenu-on{
	padding-top:2em
}
.mobile-menu-visible #mobile-menu.sidemenu-on .overlay-menu-sticky{
	display:flex;
	flex-direction:column;
	justify-content:center;
	min-height:100%
}
.mobile-menu-visible #mobile-menu.sidemenu-on .overlay-menu-sticky .header-widget{
    min-height:20%;
    margin-top:auto;
    margin-bottom:0
}
.mobile-menu-visible.announcement-bar-collapsed .themify_announcement,
.mobile-menu-visible.announcement-bar-showing .themify_announcement{
	opacity:0;
	visibility:hidden
}
#headerwrap #main-nav{
	margin:1.5em auto 2em;
	width:360px;
	max-width:100%;
	text-align:left
}
#main-nav li{
	clear:both
}
#main-nav a{
	box-sizing:border-box;
	padding:.45em 0 .8em;
	width:100%
}
#main-nav li > a{
	border-bottom:1px solid rgba(180,180,180,.2);
	padding:.45em 0 0.775em
}
#main-nav li li > a{
	width:auto
}
#main-nav .child-arrow{
	display:inline-block;
	top:7px;
	margin:0
}
.menu-item .child-arrow:hover{
	background:rgba(200,200,200,.25)
}
.child-arrow:before,
.child-arrow:after{
	width:11px;
	left:8px;
}
.child-arrow:after{
	left: 15px
}
/* mega menu */
#main-nav li> .sub-menu{
	border:none;
	background:none;
	position:static;
	width:auto;	
	padding:0;
	margin:0 0 0 1em;
	letter-spacing:0;
	display:none;
	opacity:1;
	transform:none;
	transition:max-height .3s ease-in-out;
	overflow:hidden;
	color:inherit;
	box-shadow:none
}
#main-nav .has-mega-sub-menu .mega-sub-menu > ul a,
#main-nav .has-mega-column .widgettitle,
#main-nav .has-mega-column > .sub-menu > .columns-sub-item > a,
#main-nav .has-mega-column > .sub-menu a{
	border:none;
	color:inherit;
	font-weight:inherit;
	text-transform:none;
	margin:auto;
	width:auto
}
#pagewrap #menu-icon-close,
.body-overlay-on,
.mobile-menu-visible #site-description,
.slide-cart-visible #headerwrap .header-icons{
	display:none
}
#main-nav a:hover,
#main-nav ul a:hover,
#main-nav .has-mega-sub-menu .mega-sub-menu > ul a:hover{
	 color:#ffe831;
}
#main-nav .has-mega-column .widget{
	margin:1em 0;
}
#main-nav .has-mega-column .widgettitle{
	font-size:1.2em;
	padding:0;
	margin:0 0 .5em
}
.cart-wrap{
	max-width:390px;
	margin:auto;
	text-align:left;
	display:block
}
.slide-cart #main-nav{
	margin:.5em auto
}
.slide-cart #headerwrap .header-icons{
	display:flex;
	flex-direction:row-reverse;
	align-items:center
}
.slide-cart-visible #headerwrap .header-icons{
	display:none
}
.header-widget{
	height:auto;
	font-size:.75em
}
.header-widget .widget{
	margin:1em 0 2em;
}
.header-widget .widgettitle{
	margin:0 0 .5em
}
.fixed-header #header{
	padding-top:10px;
	padding-bottom:10px
}
.mobile-menu-visible .fixed-header #header{
	padding:1.225em 0
}
.mobile-menu-visible .cart-wrap{
	display:none
}
#main-nav li,
.fixed-header .header-bar,
.slide-cart-visible .body-overlay-on,
.mobile-menu-visible .fixed-header .header-widget{
    display:block
}
.mobile-menu-visible.fixed-header-on #headerwrap .social-widget,
.mobile-menu-visible .fixed-header .search-button{
	display:inline-block
}
.mobile-menu-visible.fixed-header-on #headerwrap #searchform-wrap{
	display:block;
	margin: 1em auto;
}
.fixed-header #main-nav{
	margin:.5em auto 1.3em
}
#headerwrap #searchform-wrap,
#header .social-widget,
#headerwrap .search-button,
#headerwrap #main-nav,
#headerwrap .header-widget{
	transition:transform .3s ease,opacity .3s ease,margin .3s ease
}
.mobile-menu-visible #headerwrap #searchform-wrap,
.mobile-menu-visible #header .social-widget,
.mobile-menu-visible #headerwrap .search-button{
	animation:menu_fadeInDown .3s alternate;
	animation-timing-function:linear
}
.mobile-menu-visible #headerwrap #main-nav,
.mobile-menu-visible #headerwrap .header-widget{
	animation:menu_fadeInDown 1s alternate;
	animation-timing-function:linear
}
@keyframes menu_fadeInDown{
	0%{
		transform:translate(0,-20px);
		opacity:0
	}
	100%{
		transform:translate(0,0);
		opacity:1
	}
}
@media screen and (max-width:760px){
	.sidemenu{
		font-size:1.2em;
	}
	.social-links .icon-medium i,
	.search-button{
		font-size:1.1em;
	}
	.header-widget{
		font-size:.9em;
	}
	.cart-wrap,
	#header .social-widget,
	#headerwrap #main-nav{
		max-width:290px;
		margin-left:auto;
		margin-right:auto
	}
	#site-description{
		display:none
	}
	.mobile-menu-visible #mobile-menu.sidemenu{
		padding-top:0;
		padding-bottom:180px;
		top:100px
	}
}