/*
 * 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)
---------------------------------*/

.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: 768px){
	.menu { display: none; opacity: 0; width: 100%; position: absolute; right: 0; }
	.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; }
	#toggle:checked + div .menu { display: block; opacity: 1;}
}

/*--------------------------------
 Presentation Styles (Editable)
---------------------------------*/
.header{
	min-height: 100px;
	height: 100%;
	padding: 0 20px;
	background: #FFFFFF;
	max-width: 960px;
	margin: 0 auto;
}

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

.nav{
	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-weight: normal;
	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:hover, .menu > li > a:focus{
	background: #F2F2F2;
	box-shadow: inset 0px 5px #51C1F1;
	color: #51C1F1;
	padding: 50px 20px 34px;
}

.toggle{ 
	z-index: 2; 
}

@media only screen and (max-width: 768px){
	.menu{
		background: #FFFFFF;
		border-top: 1px solid #51C1F1;
		z-index: 500;
	}

	.menu, .menu > li, .menu > li > a{
		height: auto;
	}

	.menu > li > a{
		padding: 15px 15px;
	}

	.menu > li > a:hover, .menu > li > a:focus{
		background: #F2F2F2;
		box-shadow: inset 5px 0px #51C1F1;
		padding: 15px 15px 15px 25px;
	}

	.toggle:after {
		content: attr(data-open);
		display: block;
		width: 200px;
		margin: 33px 0;
		padding: 10px 50px;
		background: #51C1F1;
		-webkit-border-radius: 2px;
		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: #45ABD6;
	}

	#toggle:checked + div .toggle:after{
		content: attr(data-close);
	}
}

@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%; 
	}
}