
/* MENU BUTTON */
#mobile_menu_button{
	display:inline-block !important;
	position:absolute;
	top: 50%;
	right:0;
	-webkit-transform: translate( 0, -50% );
	-moz-transform: translate( 0, -50% );
	transform: translate( 0, -50% );

	padding: 1em 7px;
	width: 70px;
	height: auto;

	cursor:pointer;
	z-index:2;
}
.menu_bars {
	position: relative;
	width: 100%;
	height: 0;
	padding-bottom: 70%;
	display: inline-block;
	-webkit-transition: -webkit-transform 0.3s ease;
	-webkit-transition: transform 0.3s ease;
	transition: transform 0.3s ease;
}
.menu_bars:before,
.menu_bars:after{
	content:'';
}
.menu_bars:before,
.menu_bars .menu_bar,
.menu_bars:after{
	position:absolute;
	background-color:rgb(255,255,255);
    background-color:currentColor;
	width:100%;
	height:1px;
	display:block;
	left:0;

	-webkit-transform-origin:50% 50%;
	transform-origin:50% 50%;

	-webkit-transition:-webkit-transform 0.3s ease;
	-webkit-transition:transform 0.3s ease;
	transition:transform 0.3s ease;
}
.menu_bars:before{
	top:0;
}
.menu_bars .menu_bar{
	top:50%;
	-webkit-transform:translate(0,-50%);
	-moz-transform:translate(0,-50%);
	-ms-transform:translate(0,-50%);
	transform:translate(0,-50%);
}
.menu_bars:after{
	bottom:0;
}

#mobile_menu_button:hover .menu_bars{
	-webkit-transform:rotate(180deg);
	-moz-transform:rotate(180deg);
	-ms-transform:rotate(180deg);
	transform:rotate(180deg);
}
#mobile_menu_button:hover .menu_bars:before,
#mobile_menu_button.menu_toggled .menu_bars:before{
	-webkit-transform:rotate(-90deg) translate(-35%, 0);
	-moz-transform:rotate(-90deg) translate(-35%, 0);
	-ms-transform:rotate(-90deg) translate(-35%, 0);
	transform:rotate(-90deg) translate(-35%, 0);
}
#mobile_menu_button:hover .menu_bars:after,
#mobile_menu_button.menu_toggled .menu_bars:after{
	-webkit-transform:rotate(-90deg) translate(35%, 0);
	-moz-transform:rotate(-90deg) translate(35%, 0);
	-ms-transform:rotate(-90deg) translate(35%, 0);
	transform:rotate(-90deg) translate(35%, 0);
}
#mobile_menu_button:active .menu_bars,
#mobile_menu_button.menu_toggled .menu_bars{
	-webkit-transform:rotate(225deg);
	-moz-transform:rotate(225deg);
	-ms-transform:rotate(225deg);
	transform:rotate(225deg);
}

/* Logo & header */
#header{
	z-index:9 /* > #header_obscure */
}
#header_inner{
	position:static;
}
#site_logo{
	display:block;
	float:none;
	width:100%;

	z-index:1;
}
#site_logo img{
	max-height:none;
	max-width:100%;
}
#menu-header{
	display:none;
}

/* Sidebar */
#sidebar_menu{
	display:block;
	position:fixed;
	top:0;
	right:0;
	width:80%;
	max-width:450px;
	height:100%;
	margin-top:150px;
	height:calc( 100% - 150px );
	overflow-y: scroll; /* has to be scroll, not auto */
	-webkit-overflow-scrolling: touch;
	overflow-scrolling: touch;
	background:#555555;
	color:#fff;
	text-align:left;

	-webkit-transform:translate( 100%, 0 );
	transform:translate3d( 100%, 0 );
	-webkit-transform:translate3d( 100%, 0, 0 );
	-moz-transform:translate3d( 100%, 0, 0 );
	transform:translate3d( 100%, 0, 0 );

	z-index:9;
}
.menu_sidebar_open #sidebar_menu{
	-webkit-transform:translate( 0, 0 );
	transform:translate( 0, 0 );
	-webkit-transform:translate3d( 0%, 0, 0 );
	-moz-transform:translate3d( 0%, 0, 0 );
	transform:translate3d( 0%, 0, 0 );
}
.admin-bar #sidebar_menu{
	padding-top:46px;
}
html.js #sidebar_menu{
	-webkit-transition: transform 0.5s ease;
	-moz-transition: transform 0.5s ease;
	transition: transform 0.5s ease;
	border-radius: 5px;
	box-shadow: rgba(0, 0, 0, 0.16) 0px 3px 6px, rgba(0, 0, 0, 0.23) 0px 3px 6px;
}

/* Menu items */
#sidebar_menu .menu_item_wrapper{
	display:block;
	clear:both;
	/* width:100%; */
	text-align:left;

	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
#sidebar_menu a.menu_item{
	color:#fff;

	display:block;
	clear:both;
	padding:12px 10px;
}
#sidebar_menu a.menu_item.menu-item-has-children:after,
#sidebar_menu a.menu_item.menu-item-has-children:before{
    top:20px;
}
#sidebar_menu .sub-menu a.menu_item{
	padding:8px 10px 8px 30px;
}
#sidebar_menu a.menu_item.button_menu_item{
    width: 100%;
    width: calc( 100% - 20px);
    box-sizing: border-box;
    margin: 0;
    margin-left: 10px;
	/* border-bottom:0;
	border-radius:0; */
}
#sidebar_menu .sub-menu{
    position:static;
	background-color:transparent !important;
	opacity: 1;
	margin:0;
	height:auto;
    max-height:0;
    width:100%;
    overflow:hidden;
	-webkit-transform: translate( 0, 0 );
	-moz-transform: translate( 0, 0 );
	transform: translate( 0, 0 );
	-webkit-pointer-events: all;
	-moz-pointer-events: all;
	pointer-events: all;
	background:transparent;

    transition:max-height 0.5s linear;
    transition: max-height 0.5s linear, padding 0.6s linear, opacity 0.9s linear;
}
#sidebar_menu .menu_item_wrapper:not(.focus) .sub-menu {
    opacity:0;
}
#sidebar_menu .menu_item_wrapper.focus>.sub-menu{
    max-height:600px;
    opacity:1;
}
#sidebar_menu .sub-menu:before,
#sidebar_menu .sub-menu:after{
	content:none;
}
#sidebar_menu .sub-menu .menu_item_wrapper{
	background:transparent;
}
#sidebar_menu .sub-menu a.menu_item{
	background:rgba(255,255,255,0.2);
}

/* Search menu item */
.menuitem-search.search-form .form-group input{
	/* padding-left:2em; */
}
.menuitem-search.search-form .form-group{
    position: absolute;
    left: 0;
    right: auto;
}

/* Mobile View Sidebar Menu Layout */
/* Mobile Main-Menu Container */
#sidebar_menu .menu_item_wrapper a.search_item {
    width: 100%;
    width: calc( 100% - 20px);
    box-sizing: border-box;
    margin: 0;
    margin-left: 10px;
	padding-bottom: 30px;
    padding-left: 0;
    padding-right: 0;
}
#sidebar_menu .menu_item_wrapper a.search_item > form{
    width: 100%;
}
#sidebar_menu .menu_item_wrapper a.search_item .form-group {
	width: calc( 100% - 40px );
}
#sidebar_menu .menu_item_wrapper a.search_item .title_hide{
    display: none !important;
}
#sidebar_menu .menu-main-menu-container .title_hide{
    display: inline;
    margin-left: 8px;
}

.menu_item_wrapper a.button_menu_item {
	width: 260px;
	margin-left: 10px;
}



/* Mobile Top Container */
.menu-top-menu-container {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
}

.menu-top-menu-container .nav-menu {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
}

.menu-top-menu-container .menu_item_wrapper:first-child{
    display: block;
    flex-basis: 100%;
    flex-grow: 1;
    text-align: center !important;
}

#sidebar_menu, html #sidebar_menu a.menu_item {
	font-size: 15px;
    font-weight: 600;
}

#sidebar_menu .menu_item_wrapper a[title='spacer']{
	display: none;
}

#sidebar_menu .menu_item_wrapper a[title='spacer']{
	display: none;
}
