/*
 * Navigataur: A pure CSS responsive navigation menu
 * Author: Mike King (@micjamking)
 */

/*
 	Notes:
 
 	- Media queries should be edited in both style sections if you require 
	  a different breakpoint for your navigation.
	  
	- Toggle class & menu anchor tags in list items have box-sizing: border-box 
	  style property to allow padding inside the container without conflicting with layout.	

*/


/*--------------------------------
 Functional Styles (Required)
---------------------------------*/
/* Tim Pietrusky advanced checkbox hack (Android <= 4.1.2) */
body{ -webkit-animation: bugfix infinite 1s; }
@-webkit-keyframes bugfix { from {padding:0;} to {padding:0;} }

.header { position: relative; }
#toggle, .toggle { display: none; }
.menu > li { list-style: none; float:left;	}

/* Nicolas Gallagher micro clearfix */
.clearfix:before, .clearfix:after { display: table; content: ""; }
.clearfix:after { clear: both; }

@media only screen and (max-width: 690px){
	.menu { opacity: 0; width: 100%; position: absolute; right: 0; visibility: hidden; }
	.menu > li { display: block; width: 100%; margin: 0; }
	.menu > li > a { display: block; width: 100%; text-decoration: none; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
	.toggle { display: block; position: relative; cursor: pointer; -webkit-touch-callout: none; -webkit-user-select: none; user-select: none; margin-right: 0px; }
	#toggle:checked .toggle { background: #FFA238; }
	#toggle:checked ~ .menu 
	{
		z-index: 1;
		opacity: 1; visibility: visible; 
	    -webkit-transition: opacity 0.5s ease-in-out;
	    -moz-transition: opacity 0.5s ease-in-out;
	    transition: opacity 0.5s ease-in-out;
	}
}


/*--------------------------------
 Presentation Styles (Editable)
---------------------------------*/
.header{
	min-height: 100px;
	padding: 0 20px;
}

.header > h1 {
	float: left;
	padding: 30px 0 0;		
	font-style: italic;
	font-family: Georgia;
	font-size: 28px;
	color: #DFDFDF;
	}

.nav{ 
	display: inline-block;
	*display: inline;
	*zoom: 1;
	vertical-align: top;
	/*display: block; */
	/*float: right; */
}

.nav, .menu, .menu > li, .menu > li > a{ 
	height: 100%; 
}
.menu > li > a{
	display: block;
	padding: 42px 20px;
	text-decoration: none;
	font-size: 16px;
	line-height: 1;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box; 
	box-sizing: border-box;
	-webkit-transition: all 0.25s linear;
	-moz-transition: all 0.25s linear;
	-o-transition: all 0.25s linear;
	transition: all 0.25s linear;
}

.menu > li > a::before,
.menu > li > a::after {
	display: inline-block;
	opacity: 0;
	-webkit-transition: -webkit-transform 0.3s, opacity 0.2s;
	-moz-transition: -moz-transform 0.3s, opacity 0.2s;
	transition: transform 0.3s, opacity 0.2s;
}

.menu > li > a::before {
	margin-right: 3px;
	content: '[';
	-webkit-transform: translateX(20px);
	-moz-transform: translateX(20px);
	transform: translateX(20px);
}

.menu > li > a::after {
	margin-left: 3px;
	content: ']';
	-webkit-transform: translateX(-20px);
	-moz-transform: translateX(-20px);
	transform: translateX(-20px);
}

.menu > li > a:hover::before,
.menu > li > a:hover::after,
.menu > li > a:focus::before,
.menu > li > a:focus::after {
	opacity: 1;
	-webkit-transform: translateX(0px);
	-moz-transform: translateX(0px);
	transform: translateX(0px);
}

.menu > li.active > a::before,
.menu > li.active > a::after   {
  	opacity: 1;
	-webkit-transform: translateX(0px);
	-moz-transform: translateX(0px);
	transform: translateX(0px);	
}

.toggle{ 
	z-index: 2; 
}

@media only screen and (max-width: 960px){
	.menu{
		
	}
	
	.menu, .menu > li, .menu > li > a{
		height: auto;
	}
	.menu > li {
		border-right: none;  
	}
	.menu > li > a{
		padding: 15px 15px;
		border-right: none;  
	}
	
	.menu > li > a:hover, .menu > li > a:focus{
		
		padding: 15px 15px 15px 25px;
	}
	
	.toggle:after {
		content: 'Menu';
		display: block;
		width: 200px;
		margin: 33px 0;
		padding: 10px 50px;
		line-height: 20px;
		background: rgba(0,0,0,.4);
		-webkit-border-radius: 2px;
		border: 1px solid #ffffff;
		border-radius: 2px;
		text-align: center;
		font-size: 12px;
		color: #FFFFFF;
		-webkit-transition: all 0.5s linear;
		-moz-transition: all 0.5s linear;
		-o-transition: all 0.5s linear;
		transition: all 0.5s linear;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box; 
	}
	
	.toggle:hover:after{
		background: #000000;
	}
	
	#toggle:checked + .toggle:after{
		content: 'X Close';
		background: #000000;
	}
}

@media only screen and (max-width: 479px){
	.header > h1 { 
		text-align: center;
	}
	.header > h1, .nav, .toggle:after{ 
		float: none; 
	}
	.toggle:after { 
		text-align: center; width: 100%; 
	}
}