.mobile-menu-visible{
    overflow-x:hidden
}
#body{
	margin-right:72px;
	padding-left:4%;
	padding-right:4%
}
.full_width #body{
	padding-left:0;
	padding-right:0
}
.slide-cart-visible #body,
.mobile-menu-visible #body{
	margin-right:0;
	padding-right:0
}
.full_width .module_row.fullwidth .row_inner{
	max-width:100%
}
.sidemenu-right,
.sidemenu-right #headerwrap{
	left:-320px
}
#headerwrap{
	border:none;
	box-shadow:-6px 0 20px 0 rgba(0,0,0,.12);
	position:fixed;
	left:auto;
	right:0;
	width:72px;
	height:100%;
	text-align:inherit;
	transition:right .2s linear
}
#header{
	width:auto;
	margin:0;
	height:100%
}
.mobile-menu-visible #headerwrap{
	right:-72px
}
.sidemenu-active #headerwrap{
	left:auto
}
.logo-wrap{
	display:block;
	transform-origin:left;
	transform:rotate(-90deg) translateY(50%);
	position:fixed;
	bottom:0;
	z-index:10000;
	-webkit-backface-visibility:hidden;
	backface-visibility:hidden
}
.sidemenu-off .header-icons{
	flex-direction:column;
	width:72px;
	position:fixed;
	top:65px;
	left:auto;
	right:0
}
#site-logo{
	white-space:nowrap;
	vertical-align:middle;
	margin-top:10px
}
#site-description{
	margin:0;
	margin-left:1.5em;
	left:115%;
	top:54%;
	white-space:nowrap;
	z-index:9;
	transform:translateY(-50%);
	transition:left .2s linear
}
#site-description:before{
	left:0;
	bottom:50%;
	z-index:-1;
	margin-left:-3px;
	margin-bottom:-6px
}
#site-logo:hover + #site-description{
	left:100%
}
.mobile-menu-visible .logo-wrap{
	visibility:hidden
}
.sidemenu{
	background-color:rgba(255,255,255,.95);
	color:inherit;
	display:block; /* required for header-icons visible */
	position:fixed;
	padding:initial;
	width:320px;
	height:100%;
	left:auto;
	right:-320px;
	top:0;
	z-index:9999;
	transition:left .2s ease-in-out;
	overflow:visible /* To fix Chrome Flickering Bug */
}
.mobile-menu-visible .sidemenu-on{
	right:0;
	overflow:hidden; /* To fix Chrome Flickering Bug */
	overflow-y:auto;
	-webkit-overflow-scrolling:touch;
	box-shadow:-6px 0 20px 0 rgba(0,0,0,.25)
}
#pagewrap .back-top.back-top-float{
	right:80px
}
.mobile-menu-visible #pagewrap .back-top.back-top-float{
	right:360px
}
/* menu icon */
#headerwrap #menu-icon{
	position:absolute;
	top:22px;
	right:0;
	left:0;
	z-index:1;
	line-height:1em;
	margin:0;
	width:72px;
	text-align:center;
	background:none;
	padding:0
}
.menu-icon-inner{
	width:28px;
	height:18px
}
.menu-icon-inner:before,
.menu-icon-inner:after{
	content:'';
	display:block;
	position:absolute;
	left:0;
	width:100%;
	transition:transform .7s ease;
	box-sizing:border-box
}
.menu-icon-inner:before{
	top:0;
	height:100%
}
.menu-icon-inner:after{
	top:50%;
	transform:translateY(-50%)
}
#menu-icon-close{
    display:block;
    position:absolute;
    text-decoration:none;
    border-radius:100%;
    top:14px;
    right:12px;
    min-width:36px;
    min-height:36px;
    transform-origin:center;
    transition:all .3s linear;
    transition-property:transform
}
#menu-icon-close:before,
#menu-icon-close:after{
	height:60%
}
#menu-icon-close:hover{
	background-color:rgba(200,200,200,.25)
}
#headerwrap .search-button{
    order:1;
    width:100%;
    margin:0;
    border:none;
    border-top:1px solid rgba(180,180,180,.2);
}
.search-button:before{
	display:inline-block;
	font-size:1.65em;
	padding:.6em 0
}
.mobile-menu-visible #headerwrap .search-button{
	border-right:1px solid rgba(180,180,180,.2);
	width:71px;
}
.top-icon-wrap{
	order:2;
    width:100%;
    flex-direction:column-reverse;
    font-size:1.3em;
}
.search-button + .top-icon-wrap{
	right:0; /* reset main style */
	top:120px
}
.top-icon-wrap li{
	display:block;
	width:auto;
	margin:0 0 10px;
	padding:0
}
#headerwrap .top-icon-wrap li a{
	max-width:none;
	padding:0;
	margin:3px 0;
	display:block;
	text-align:center
}
.sidemenu-on .top-icon-wrap li a .tooltip{
	background-color:transparent;
	color:#787878;
	display:block;
	font-size:.6em;
	position:static;
	padding:0;
	margin:.4em 0 0;
	opacity:1;
	visibility:visible;
	transform:none;
	transition:none
}
.sidemenu-off .icon-menu li > a .tooltip:before{
	border-bottom-color:transparent;
	border-left-color:#000;
	margin-top:-5px;
	margin-left:-1px;
	display:block;
	left:100%;
	top:50%
}
.sidemenu-on .icon-menu li > a .tooltip:before{
	display:none
}
.cart-style-dropdown .sidemenu-on .icon-menu .cart a .tooltip{
	display:block
}
.sidemenu-on .top-icon-wrap li a:hover .tooltip{
	color:var(--theme_accent)
}
#headerwrap .sidemenu-off .top-icon-wrap li a .tooltip{
	background-color:#000;
	color:#fff;
	font-size:14px;
	margin-top:0;
	padding:.6em 1em;
	position:absolute;
	left:auto;
	right:130%;
	top:50%;
	opacity:1;
	visibility:hidden;
	transform:translateY(-50%);
	transition-property:right
}
#headerwrap .sidemenu-off .top-icon-wrap li a:hover .tooltip{	
	visibility:visible;
	right:100%
}
#headerwrap .icon-menu{
	width:100%;
	margin:0;
}
.icon-menu + .icon-menu{
	margin-right:0
}
.icon-menu{
	float:none;
	display:inline
}
.icon-menu i{
	transition:none
}
.icon-menu .icon-menu-count{
	font-size:45%;
	right:auto;
	left:50%;
	margin-left:4px;
	margin-top:-4px;
	bottom:auto;
	top:18px
}
.sidemenu-off .icon-menu-count{
	position:absolute;
	top:50%;
	left:50%;
}
.mobile-menu-visible .header-icons{
	width:100%;
	position:relative;
	top:0;
	flex-direction:row;
	z-index:auto;
}
.mobile-menu-visible .top-icon-wrap{
	border-top:1px solid rgba(180,180,180,.2);
	padding:1em 0;
	box-sizing:border-box;
	background:rgba(180,180,180,.2);
	flex-direction:row-reverse;
}
.mobile-menu-visible .top-icon-wrap li{
	width:33%;
	margin:0 -1px;
	display:inline-block
}
.mobile-menu-visible .top-icon-wrap li{
	padding:.65em 0 .15em
}
/* cart wrap */
#cart-wrap{
	left:auto;
	right:0;
	top:0;
	margin-top:-11px;
	display:none
}
#headerwrap .top-icon-wrap li #cart-wrap a{
	text-align:inherit
}
.sidemenu-off .top-icon-wrap li:hover #cart-wrap{
	right:100%;
	margin-top:-11px;
	display:block
}
.sidemenu-on #cart-wrap{
	left:50%;
	top:100%;
	margin-top:5px;
	transform:translateX(-50%);
	display:block
}
/* menu navigation */
#main-nav{
    margin:0 0 1em;
}
#main-nav a{
	padding:.7em 2em;
	margin:auto
}
#main-nav ul li:first-child > a,
#main-nav a{
	border-top:1px solid rgba(180,180,180,.2)
}
#main-nav ul a{
	padding:.65em 0;
	width:auto
}
#main-nav ul{
	width:100%;
}
#main-nav .has-mega-column .product-categories .count{
	right:2em
}
#main-nav .has-mega > .sub-menu{
	margin:auto;
	padding:0;
	background:0;
	visibility:visible;
}
#headerwrap #main-nav ul{
    margin:0;
    padding:0 0 0 2.8em;
	box-sizing:border-box;
	background:0
}
#headerwrap #main-nav ul ul{
	padding-left: 1.25em
}
#headerwrap #main-nav ul a{
	font-size:.95em;
	padding:.6em 1.8em .6em 0
}
.top-bar-widgets{
	background-color:rgba(0,0,0,.12);
	position:fixed;
	right:72px;
	width:100vh;
	transform:rotate(-90deg);
	transform-origin:bottom right;
	bottom:100%
}
.top-bar-widgets .widget{
	margin-bottom:4px;
	margin-top:4px;
}
#footerwrap{
	margin-right:72px
}
.admin-bar .sidemenu-off .header-icons {
	top: 95px;
}
@media screen and (min-width:1201px){
	/* builder row */
	.full_width .module_row .row_inner{
		 max-width:92%
	}
}
@media screen and (max-width:760px){
	.top-bar-widgets{
		right:46px;
	}
	#footerwrap,
	#body{
		padding-left:0;
		padding-right:0;
		margin-right:45px
	}
	#headerwrap,
	.sidemenu-off .header-icons{
		width:45px
	}
	.admin-bar .sidemenu-off .header-icons,
	.sidemenu-off .header-icons{
		top:45px
	}
	.sidemenu-off .search-button .tf_fa{
		font-size:1.3em;
		padding:.4em
	}
	#headerwrap #site-logo{
		font-size:1.2em;
		margin-top:2px
	}
	#headerwrap #menu-icon{
		width:46px;
		top:2px;
		padding:12px
	}
	#headerwrap #menu-icon:hover{
		background:none;
	}
	#headerwrap .sidemenu-off .top-icon-wrap{
		font-size:.9em;
		margin:0;
		position:static
	}
	#pagewrap .back-top.back-top-float{
		right:65px
	}
}