/************************************************
 Special Left Menu
 ************************************************/
.special-left-menu #main::after,
.special-right-menu #main::after {
	content: '';
	pointer-events: none;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	z-index:11;
	background: rgba(0,0,0,0.8);
	/* the transition delay of the height needs to be synced with the container transition time */
	transition: opacity 700ms cubic-bezier(0.645, 0.045, 0.355, 1), transform 700ms cubic-bezier(0.645, 0.045, 0.355, 1), height 700ms cubic-bezier(0.645, 0.045, 0.355, 1);
}

body.top-header.special-left-menu #main > *:not(#header),
body.top-header.special-left-menu #header-inner-wrap,
body.top-header.special-right-menu #main > *:not(#header),
body.top-header.special-right-menu #header-inner-wrap{
	left : 0px;
	-ms-transform: translatex(0px);
	transform: translatex(0px);
	transition: transform 700ms cubic-bezier(0.645, 0.045, 0.355, 1);
}

body.top-header.special-right-menu #main > *:not(#header),
body.top-header.special-right-menu #header-inner-wrap {
	right : 0px;
}

body.top-header.special-left-menu:not(.push-special-menu).side-menu-opened #main > *:not(#header), 
body.top-header.special-left-menu:not(.push-special-menu).side-menu-opened #header-inner-wrap,
body.top-header.special-right-menu:not(.push-special-menu).side-menu-opened #main > *:not(#header), 
body.top-header.special-right-menu:not(.push-special-menu).side-menu-opened #header-inner-wrap {
	-ms-transform: translatex(-280px);
	transform: translatex(-280px);	
}

.special-left-menu #back-to-top,
.special-right-menu #back-to-top{
	transition: z-index 700ms cubic-bezier(0.645, 0.045, 0.355, 1);
}

.special-left-menu.side-menu-opened #back-to-top,
.special-right-menu.side-menu-opened #back-to-top {
	z-index: 8;
	pointer-events: none;
}

body.special-left-menu #header-inner-wrap.no-transparent.top-animate,
body.special-right-menu #header-inner-wrap.no-transparent.top-animate{
	transition: background 700ms cubic-bezier(0.645, 0.045, 0.355, 1), top .50s ease , transform 700ms cubic-bezier(0.645, 0.045, 0.355, 1), opacity 700ms cubic-bezier(0.645, 0.045, 0.355, 1) !important;
}

body.special-left-menu.side-menu-opened #header-inner-wrap,
body.special-right-menu.side-menu-opened #header-inner-wrap{
	opacity: 0;
}

.special-left-menu.side-menu-opened #main::after,
.special-right-menu.side-menu-opened #main::after,
body.special-left-menu.header-solid.side-menu-opened #header-inner-wrap:not(.top-animate),
body.special-right-menu.header-solid.side-menu-opened #header-inner-wrap:not(.top-animate){
	opacity: 1;
}