/* Northland College WordPress theme navigation menu CSS */

#main_nav {
	background: rgb(35,50,82); /* IE8 fallback */
	background: rgba(35,50,82,0.9);
	border-top: 26px solid rgb(120,120,120);
	display: block;
	font-family: 'Alright Sans', sans-serif;
	font-weight: bold;
	letter-spacing: 0.05em;
	overflow: visible;
	position: absolute; top: 45px; right: 0; bottom: auto; left: 0;
	text-transform: uppercase;
	z-index: 4;
}

body.mynorthland #main_nav {
	border-top-width: 36px;
}

body.in_iframe #main_nav { display: none !important; }

#main_nav.locked {
	box-shadow: 0 0 5px rgba(0,0,0,0.2);
	position: fixed; top: 0; right: 0; bottom: auto; left: 0;
	z-index: 9;
}

body.admin-bar #main_nav.locked { top: 32px; }

	#main_nav * {
		line-height: 1.75em;
		-moz-user-select: none;
		-webkit-user-select: none;
		user-select: none;
	}

	#main_nav .nav_handle { display: none; }

	#main_nav .nav_content {
		margin: 0 auto;
		max-width: 1000px;
		position: relative;
		width: 100%;
	}

	#auxiliary_navigation {
		position: absolute; top: -36px; right: 4%; bottom: auto; left: 400px;
	}
	
		#auxiliary_navigation a, #auxiliary_navigation a:visited {
			color: rgb(35,50,82);
		}

		#auxiliary_navigation a:hover, #auxiliary_navigation a:focus {
			color: rgb(171,171,171);
		}

		#auxiliary_navigation > .menu {
			display: inline-block;
			font-size: 65%;
			opacity: 1;
			position: absolute; top: 7px; right: 50px; bottom: 0; left: 0;
			text-align: right;
			transition: opacity 200ms;
			vertical-align: middle;
			width: auto;
			z-index: 1;
		}

		.search_open #auxiliary_navigation > .menu {
			opacity: 0;
		}

			#auxiliary_navigation > .menu > ul {
				display: block;
				list-style: none;
				margin: 0;
				padding: 0;
			}

				#auxiliary_navigation > .menu > ul > li {
					display: inline-block;
					margin: 0 0 0 1em;
					padding: 0;
				}

					#auxiliary_navigation > .menu > ul > li ul {
						display: none;
					}

		#auxiliary_navigation > .search {
			display: inline-block;
			margin-left: 1em;
			position: absolute; top: -2px; right: 0; bottom: 0; left: 0;
			text-align: right;
			z-index: 2;
		}

			#auxiliary_navigation > .search input[type=text] {
				background: transparent;
				border: 1px solid rgb(226,226,226);
				border-radius: 0;
				color: rgb(76,76,76);
				display: none;
				font-family: 'Alright Sans', sans-serif;
				font-size: 90%;
				height: 2em;
				line-height: 2em;
				margin: 0;
				padding: 0 0.5em;
				-moz-user-select: text;
				-webkit-user-select: text;
				user-select: text;
				width: 15em;
				-webkit-appearance: none;
			}

			.search_open #auxiliary_navigation > .search input[type=text] {
				display: inline-block;
			}

			#auxiliary_navigation > .search input[type=text]:focus {
				outline: none;
			}

			#auxiliary_navigation > .search input[type=submit] {
				background: transparent url('../images/search.png') center center no-repeat;
				background-size: 24px 24px;
				border: none;
				border-radius: 0;
				cursor: pointer;
				height: 32px;
				margin: 0;
				overflow: hidden;
				text-indent: -999px;
				width: 32px;
				-webkit-appearance: none;
			}

			#auxiliary_navigation > .search input[type=submit]:focus {
				outline: none;
			}

	#primary_navigation {
		display: block;
		margin-top: -25px;
		position: relative; top: auto; right: auto; bottom: auto; left: auto;
		z-index: 1;
	}

	body.mynorthland #primary_navigation {
		margin-top: -35px;
	}
	
		#primary_navigation a, #primary_navigation a:visited { }
		#primary_navigation a:hover, #primary_navigation a:focus { }
		
		#primary_navigation a[data-empty-node] {
			cursor: default !important;
		}

		#primary_navigation > .menu {
			display: block;
			margin: 0 auto;
			max-width: 1000px;
			width: 100%;
		}

			#primary_navigation > .menu > ul {
				display: table;
				margin: 0;
				padding: 0;
				table-layout: fixed;
				width: 100%;
			}

				/* Top level navigation */
				#primary_navigation > .menu > ul > li {
					display: table-cell;
					position: relative;
					text-align: center;
				}

					#primary_navigation > .menu > ul > li > a,
					#primary_navigation > .menu > ul > li > a:visited
					{
						background: rgb(120,120,120);
						color: rgb(255,255,255);
						display: block;
						font-size: 85%;
						height: 25px;
						line-height: 1.25em;
						padding: 6px 35px;
						text-align: center;
					}

					body.mynorthland #primary_navigation > .menu > ul > li > a,
					body.mynorthland #primary_navigation > .menu > ul > li > a:visited
					{
						font-size: 70%;
						height: 35px;
					}

					#primary_navigation > .menu > ul > li:hover > a:not('[data-empty-node=true]'),
					#primary_navigation > .menu > ul > li:hover > a:visited
					{
						color: rgb(245,132,38);
					}

					/* Second level navigation */
					#primary_navigation > .menu > ul > li > ul {
						display: none;
						max-width: 400px;
						min-height: 200px;
						padding: 10px 0 10px 10px;
						position: relative;
						text-align: left;
						z-index: 1;
					}

					#primary_navigation > .menu > ul > li:hover > ul {
						display: inline-block;
						/* Special "overhang" for improved mouse interaction */
						border-bottom: 20px solid transparent;
						border-left: 80px solid transparent;
						border-right: 80px solid transparent;
						margin: 0 -80px;
						z-index: 2;
					}

						#primary_navigation > .menu > ul ul a,
						#primary_navigation > .menu > ul ul a:visited
						{
							color: rgb(255,255,255);
							display: block;
							font-size: 65%;
							line-height: 1.333em;
							margin-right: 32px;
							padding: 0 0 0.667em 0;
						}

						#primary_navigation > .menu > ul ul a:hover, #primary_navigation > .menu > ul ul a:focus {
							color: rgb(245,132,38);
						}

						/* Third (and deeper) level navigation */
						#primary_navigation > .menu > ul ul > li {
							display: block;
							margin: 0;
							padding: 0;
							position: relative;
							width: 100%;
						}
						
							#primary_navigation > .menu > ul ul > li > .subnav-toggle {
								background: transparent url('../images/nav_toggle.png') center center no-repeat;
								background-size: 14px 14px;
								cursor: pointer;
								display: inline-block;
								height: 24px;
								position: absolute; top: -6px; right: 0;
								width: 24px;
							}
							
							#primary_navigation > .menu > ul ul > li.open > .subnav-toggle {
								-moz-transform: rotate(90deg);
								-webkit-transform: rotate(90deg);
								transform: rotate(90deg);
							}

							#primary_navigation > .menu > ul ul > li > ul {
								display: block;
								height: 0;
								margin: 0;
								max-width: 240px;
								overflow: hidden;
								padding-left: 1em;
								width: 100%;
							}

							#primary_navigation > .menu > ul ul > li.open > ul {
								height: auto;
							}

#page .logout_links {
	display: block;
	font-family: 'Alright Sans', sans-serif;
	font-size: 85%;
	margin: 0.5em 0;
}
#page .logout_links:after { clear: both; content: ''; display: table; /* Clearfix */ }

	#page .logout_links ul {
		list-style: none;
		margin: 0;
		padding: 0;	
	}
	
	#page .logout_links li {
		display: inline-block;
		margin: 0 1em 0 0;
	}

#footer_nav {
	float: right;
	max-width: 50%;
	position: relative;
	text-align: right;
	z-index: 2;
}

body.mynorthland #footer_nav { }

	#footer_nav .menu {
		margin-bottom: 0.5em;
	}
	
		#footer_nav .menu ul {
			list-style: none;
			margin: 0;
			padding: 0;
			white-space: normal;
		}

		#footer_nav .menu li {
			display: inline-block;
			margin: 0 0 0 0.5em;
		}
		
		#footer_nav .menu.quick_links { }

			#footer_nav .menu.quick_links li {
				border-left: 1px solid rgb(171,171,171);
				padding: 0 0 0 0.5em;
			}
			#footer_nav .menu.quick_links li.first_child_on_line { border-left: none; }

			#footer_nav .menu.quick_links a {
				display: block;
				line-height: 1.25em;
			}
		
		#footer_nav .menu.social { }
		
			#footer_nav .menu.social li {
				margin-left: 0.75em;
				text-align: left;
			}
		
			#footer_nav .menu.social a {
				background-color: transparent;
				background-image: url('../images/social_sprites.png');
				background-position: 0px 0px;
				background-repeat: no-repeat;
				background-size: 120px 50px;
				display: block;
				height: 25px;
				overflow: hidden;
				text-indent: -999px;
				width: 25px;
			}

			#footer_nav .menu.social a[href*=facebook] { background-position: 0px 0px; }
			#footer_nav .menu.social a[href*=twitter] { background-position: -40px 0px; }
			#footer_nav .menu.social a[href*=instagram] { background-position: -80px 0px; }

			#footer_nav .menu.social a[href*=facebook]:hover, #footer_nav .menu.social a[href*=facebook]:focus
			{ background-position: 0px -25px; }
			#footer_nav .menu.social a[href*=twitter]:hover, #footer_nav .menu.social a[href*=twitter]:focus
			{ background-position: -40px -25px; }
			#footer_nav .menu.social a[href*=instagram]:hover, #footer_nav .menu.social a[href*=instagram]:focus
			{ background-position: -80px -25px; }
			
			#footer_nav .menu.social a[href*=wrnc] {
				background: transparent url('../images/wrnc_sprites.png') 0px 0px no-repeat;
				background-size: 120px 50px;
				width: 120px;
			}
			#footer_nav .menu.social a[href*=wrnc]:hover, #footer_nav .menu.social a[href*=wrnc]:focus
			{ background-position: 0px -25px; }
			
			#footer_nav .menu.social a[href*=veteran],
			#footer_nav .menu.social a[href*=veteran]:hover,
			#footer_nav .menu.social a[href*=veteran]:focus
			{
				background: transparent url('../images/yellow_ribbon.png') center center no-repeat;
				background-size: 25px 25px;
			}



/* CSS3 MEDIA QUERIES */

/* PRINT */
@media print {

}


/* LARGE SCREENS (content area over 1280 pixels) */
@media screen and (min-width: 1280px) {

		#main_nav {
			border-top-width: 30px;
			top: 50px;
		}
		body.mynorthland #main_nav {
			border-top-width: 40px;
		}
		
			#main_nav .nav_content, #primary_navigation > .menu { max-width: 1280px; }
		
			#auxiliary_navigation { top: -41px; left: 500px; }
			
				#auxiliary_navigation > .search input[type=text] { width: 20em; }

			#primary_navigation { margin-top: -30px; }
			body.mynorthland #primary_navigation { margin-top: -40px; }

				#primary_navigation > .menu > ul > li > a,
				#primary_navigation > .menu > ul > li > a:visited
				{
					height: 30px;
					padding: 8px 25px;
				}

				body.mynorthland #primary_navigation > .menu > ul > li > a,
				body.mynorthland #primary_navigation > .menu > ul > li > a:visited
				{
					height: 40px;
					padding: 7px 25px;
				}

}


/* INTERMEDIATE SCREENS (content area between 1000 and 1279 pixels) */
@media screen and (min-width: 1000px) and (max-width: 1279px) {

	#primary_navigation > .menu > ul > li > ul {
		padding: 10px 20px;
	}

}


/* TABLETS (content area under 1000 pixels) */
@media screen and (max-width: 1000px) {

	#auxiliary_navigation > .menu {
		font-size: 8px;
		top: 8px;
	}

	#auxiliary_navigation > .menu > ul > li { margin-left: 0.667em; }

	#primary_navigation > .menu > ul > li > a,
	#primary_navigation > .menu > ul > li > a:visited
	{ padding: 6px 15px; }

}


/* PHONES (content area under 782 pixels) */
/* Matched to size where WP mobile admin bar appears */
@media screen and (max-width: 782px) {

	#main_nav {
		background: rgb(35,50,82);
		border: none !important;
		display: block;
		height: auto;
		margin: 0;
		min-height: 100%;
		overflow: visible;
		position: fixed; top: 0; right: auto; bottom: auto; left: 100%;
		transition: margin-left 300ms;
		width: 280px;
	}
	body.admin-bar #main_nav { top: 45px; }
	
	body.main_nav_open #main_nav {
		margin-left: -280px;
	}
	
		#main_nav .nav_handle {
			background: rgb(120,120,120);
			border-radius: 2px;
			color: rgb(255,255,255);
			cursor: pointer;
			display: inline-block;
			height: 30px;
			line-height: 32px;
			padding: 0 0.5em;
			position: fixed; top: 8px; right: 10px;
			text-align: center;
			transition: right 300ms;
			width: auto;
		}
		body.admin-bar #main_nav .nav_handle { top: 53px; }
		
		body.main_nav_open #main_nav .nav_handle {
			background: rgb(35,50,82);
			font-size: 200%;
			height: auto;
			padding: 0.25em 0.333em;
			right: 275px;
			border-top-right-radius: 0;
			border-bottom-right-radius: 0;
		}
		
		#main_nav .nav_content {
			overflow-x: hidden;
			overflow-y: scroll;
			padding: 1em;
			position: absolute; top: 0; right: 0; bottom: 0; left: 0;
		}
		
			#main_nav .nav_content * {
				color: rgb(255,255,255) !important;
				font-size: 13px !important;
				line-height: 1.75em !important;
			}
		
			#auxiliary_navigation {
				margin-bottom: 0.5em;
				position: relative; top: auto; right: auto; bottom: auto; left: auto;
			}
			
				#auxiliary_navigation > .menu {
					display: block;
					position: relative; top: 6px; right: auto; bottom: auto; left: auto;
					text-align: left;
				}
			
				.search_open #auxiliary_navigation > .menu {
					opacity: 1;
				}
				
					#auxiliary_navigation > .menu > ul { }
				
						#auxiliary_navigation > .menu > ul > li {
							display: inline-block;
							line-height: 1.75em !important;
							min-height: 40px;
							margin: 0 1.5em 0 0;
						}
						
						#auxiliary_navigation > .menu > ul > li.phone_only {
							display: inline-block !important;
						}
			
				#auxiliary_navigation > .search {
					display: block;
					margin: 0.5em 0;
					position: relative; top: auto; right: auto; bottom: auto; left: auto;
					text-align: left;
				}
			
					#auxiliary_navigation > .search input[type=text] {
						display: inline-block;
						font-size: 150%;
						padding: 0.1em 0.25em;
					}
				
					#auxiliary_navigation > .search input[type=submit] {
						background-image: url('../images/search_white_x2.png') !important; /* !important overrides blue button on high-res */
					}

			#primary_navigation, body.mynorthland #primary_navigation {
				margin-top: 0;
				margin-right: -1em;
				padding-bottom: 44px;
			}
			
				#primary_navigation > .menu {
					margin: 0;
					max-width: auto;
				}
				
					#primary_navigation > .menu > ul {
						display: block;
					}
					
						#primary_navigation > .menu > ul > li {
							display: block;
							text-align: left;
						}
						
							#primary_navigation a {
								background: transparent !important;
								font-size: 100% !important;
								height: auto !important;
								margin: 0 !important;
								min-height: 36px !important;
								padding: 6px 0 !important;
								text-align: left !important;
							}
							
							#primary_navigation > .menu > ul > li a {
								padding-right: 36px !important;
							}
							
							#primary_navigation > .menu > ul > li > .subnav-toggle,
							#primary_navigation > .menu > ul ul > li > .subnav-toggle
							{
								background: transparent url('../images/nav_toggle.png') center center no-repeat;
								background-size: 14px 14px;
								cursor: pointer;
								display: inline-block;
								height: 36px;
								position: absolute; top: 0; right: 0;
								width: 36px;
							}
							
							#primary_navigation > .menu > ul > li.open > .subnav-toggle {
								-moz-transform: rotate(90deg);
								-webkit-transform: rotate(90deg);
								transform: rotate(90deg);
							}
							
							#primary_navigation > .menu li > ul {
								display: none !important;
								height: auto !important;
								padding: 0 0 0 1em !important;
							}
							
							#primary_navigation > .menu > ul > li:hover > ul {
								/* Reset special "overhang" for improved mouse interaction */
								border-bottom: 0;
								border-left: 0;
								border-right: 0;
								margin: 0;							
							}
							
							#primary_navigation > .menu > ul > li > ul {
								border-bottom: 0 !important;
								min-height: 0 !important;
							}

							#primary_navigation > .menu li.open > ul {
								display: block !important;
							}

							#primary_navigation > .menu > ul ul > li > ul {
								max-width: none;
							}

	#footer_nav {
		float: none;
		margin-bottom: 1em;
		max-width: 100%;
		text-align: left;
	}

		#footer_nav .menu {
			margin-left: -1em; /* Compensates for left margin/padding on links without needing to rework logic for reflow JS */
		}
	
}


/* SMALL PHONES (content area under 600 pixels) */
@media screen and (max-width: 600px) {

}


/* HIGH RESOLUTION IMAGE REPLACEMENTS */
@media	only screen and (-moz-min-device-pixel-ratio: 1.5),
		only screen and (-o-min-device-pixel-ratio: 3/2),
		only screen and (-webkit-min-device-pixel-ratio: 1.5),
		only screen and (min-devicepixel-ratio: 1.5),
		only screen and (min-resolution: 1.5dppx)
{

	#auxiliary_navigation > .search input[type=submit] {
		background-image: url('../images/search_x2.png');
	}

	#primary_navigation > .menu > ul ul > li > .subnav-toggle,
	#primary_navigation > .menu > ul > li > .subnav-toggle
	{
		background-image: url('../images/nav_toggle_x2.png');
	}

	#footer_nav .menu.social a { background-image: url('../images/social_sprites_x2.png'); }
	#footer_nav .menu.social a[href*=wrnc] { background-image: url('../images/wrnc_sprites_x2.png'); }
	#footer_nav .menu.social a[href*=veteran] { background-image: url('../images/yellow_ribbon_x2.png'); }

}
