* { 
-webkit-box-sizing: border-box; 
-moz-box-sizing: border-box; 
-o-box-sizing: border-box; 
box-sizing: border-box; 
/* adds animation for all transitions */ 
-webkit-transition: .25s ease-in-out; 
-moz-transition: .25s ease-in-out; 
-o-transition: .25s ease-in-out; 
transition: .25s ease-in-out; 
margin: 0; 
padding: 0; 
-webkit-text-size-adjust: none; 
} 


/* gets the actual input out of the way; 
we're going to style the label instead */ 

#drawer-toggle { 
position: absolute; 
opacity: 0; 
}

#drawer-toggle-label, header {
	display:none;
}

#drawer-toggle-label { 
-webkit-touch-callout: none; 
-webkit-user-select: none; 
-khtml-user-select: none; 
-moz-user-select: none; 
-ms-user-select: none; 
user-select: none; 
right: 0px; 
height:50px; 
width: 1000px; 
position: absolute; 
background: rgba(255,255,255,.0); 
z-index: 1; 
} 

/* adds our "hamburger" menu icon */ 

#drawer-toggle-label:before { 
content: ''; 
display: block; 
position: absolute; 
height: 2px; 
width: 24px; 
background: #8d8d8d; 
right: 35px; 
top: 35px; 
box-shadow: 0 6px 0 #8d8d8d, 0 12px 0 #8d8d8d; 
} 

header { 
width: 100%; 
position: fixed; 
right: 50px;
top:30px; 
background: transparent; 
padding: 10px 10px 10px 50px; 
font-size: 30px; 
line-height: 30px; 
z-index: 0; 
}

/* drawer menu pane - note the 0px width */ 

#drawer { 
position: fixed; 
top: 0; 
right:-300px; 
height: 100%; 
width: 300px; 
background: #2f2f2f; 
overflow: hidden; 
padding: 20px; 
z-index:5000 !important;
-webkit-overflow-scrolling: touch; 
} 

/* actual page content pane */ 

.page-wrapper { 
margin-left: 0px; 
width: 100%; 
overflow-x:hidden; 
-webkit-overflow-scrolling: touch; 
}

/* checked styles (menu open state) */ 


#drawer-toggle:checked ~ #drawer-toggle-label, 
#drawer-toggle:checked ~ header { 
right: 300px; 
} 

#drawer-toggle:checked ~ #drawer-toggle-label {
	height:1000px;
}

#drawer-toggle:checked ~ #drawer { 
right: 0px; 
} 

#drawer-toggle:checked ~ .page-wrapper { 
opacity:.3;

}


/* Menu item styles */ 

#drawer ul { 
list-style-type:none; 
} 

#drawer ul a { 
display:block; 
padding:10px; 
color:#c7c7c7; 
text-decoration:none; 
} 

#drawer ul a:hover { 
color:white; 
} 

/* Responsive MQ */ 

@media screen and (max-width:767px) {
	#drawer-toggle-label, header {
		display:block !important;
	}
	.header-nav {
		display:none !important;
	}
#drawer-toggle-label {
    background:#303030 url(/img/header-logo@2x.png) top 15px left 25px no-repeat;
    background-size:150px;
    border-bottom:1px solid #3e3e3e;
    height:80px !important;
}

.page-wrapper {
    margin-top:80px;
}	
}

@media all and (max-width:350px) { 

#drawer-toggle:checked ~ #drawer-toggle-label { 
height: 100%; 
width: 50px; 
} 

#drawer-toggle:checked ~ #drawer-toggle-label, 
#drawer-toggle:checked ~ header { 
right: calc(100% - 50px); 
} 

#drawer-toggle:checked ~ #drawer { 
width: calc(100% - 50px); 
padding: 20px; 
} 


}